[
  {
    "path": ".dockerignore",
    "content": "Dockerfile\nbuild/\nvendor/"
  },
  {
    "path": ".gitattributes",
    "content": "lite/swagger-ui/* linguist-vendored"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "content": "---\nname: Bug report\nabout: Create a report to help us improve\ntitle: ''\nlabels: bug\nassignees: haifengxi\n\n---\n\n**Describe the bug**\nA clear and concise description of what the bug is.\n\n**To Reproduce**\nSteps to reproduce the behavior:\n1. Go to '...'\n2. Click on '....'\n3. Scroll down to '....'\n4. See error\n\n**Expected behavior**\nA clear and concise description of what you expected to happen.\n\n**Screenshots**\nIf applicable, add screenshots to help explain your problem.\n\n**Desktop (please complete the following information):**\n - OS: [e.g. iOS]\n - Browser [e.g. chrome, safari]\n - Version [e.g. 22]\n\n**Smartphone (please complete the following information):**\n - Device: [e.g. iPhone6]\n - OS: [e.g. iOS8.1]\n - Browser [e.g. stock browser, safari]\n - Version [e.g. 22]\n\n**Additional context**\nAdd any other context about the problem here.\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/custom.md",
    "content": "---\nname: Custom issue template\nabout: Describe this issue template's purpose here.\ntitle: ''\nlabels: ''\nassignees: haifengxi\n\n---\n\n\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "content": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: ''\nlabels: ''\nassignees: haifengxi\n\n---\n\n**Is your feature request related to a problem? Please describe.**\nA clear and concise description of what the problem is. Ex. I'm always frustrated when [...]\n\n**Describe the solution you'd like**\nA clear and concise description of what you want to happen.\n\n**Describe alternatives you've considered**\nA clear and concise description of any alternative solutions or features you've considered.\n\n**Additional context**\nAdd any other context or screenshots about the feature request here.\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/release.md",
    "content": "---\nname: Release\nabout: Release a new version\ntitle: Release \"$(replace by version)\"\nlabels: release\nassignees: haifengxi\n\n---\n\n**Check List**\n\n- [ ] CI Passed\n- [ ] CHANGELOG Updated\n- [ ] Documents Updated\n- [ ] Application Versions Updated\n"
  },
  {
    "path": ".github/workflows/codeql-analysis.yml",
    "content": "# For most projects, this workflow file will not need changing; you simply need\n# to commit it to your repository.\n#\n# You may wish to alter this file to override the set of languages analyzed,\n# or to provide custom queries or build logic.\n#\n# ******** NOTE ********\n# We have attempted to detect the languages in your repository. Please check\n# the `language` matrix defined below to confirm you have the correct set of\n# supported CodeQL languages.\n#\nname: \"CodeQL\"\n\non:\n  push:\n    branches: [ master, develop, hotfix/*, release/* ]\n  pull_request:\n    # The branches below must be a subset of the branches above\n    branches: [ master ]\n  schedule:\n    - cron: '45 3 * * 3'\n\njobs:\n  analyze:\n    name: Analyze\n    runs-on: ubuntu-latest\n    permissions:\n      actions: read\n      contents: read\n      security-events: write\n\n    strategy:\n      fail-fast: false\n      matrix:\n        language: [ 'go' ]\n        # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]\n        # Learn more:\n        # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed\n\n    steps:\n    - name: Checkout repository\n      uses: actions/checkout@v4\n\n    # Initializes the CodeQL tools for scanning.\n    - name: Initialize CodeQL\n      uses: github/codeql-action/init@v3\n      with:\n        languages: ${{ matrix.language }}\n        # If you wish to specify custom queries, you can do so here or in a config file.\n        # By default, queries listed here will override any specified in a config file.\n        # Prefix the list here with \"+\" to use these queries and those in the config file.\n        # queries: ./path/to/local/query, your-org/your-repo/queries@main\n\n    # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java).\n    # If this step fails, then you should remove it and run the build manually (see below)\n    - name: Autobuild\n      uses: github/codeql-action/autobuild@v3\n\n    # ℹ️ Command-line programs to run using the OS shell.\n    # 📚 https://git.io/JvXDl\n\n    # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines\n    #    and modify them (or add more) to build your code if your project\n    #    uses a compiled language\n\n    #- run: |\n    #   make bootstrap\n    #   make release\n\n    - name: Perform CodeQL Analysis\n      uses: github/codeql-action/analyze@v3\n"
  },
  {
    "path": ".github/workflows/deploy-docs.yml",
    "content": "name: Build and Deploy Docs\n\non:\n  push:\n    branches: [ \"master\" ]\n    paths: [ \"docs/**\" ]\n\njobs:\n  setup-build-publish:\n    name: Setup, Build and Publish\n    runs-on: ubuntu-latest\n    environment: production\n\n    steps:\n    - name: Checkout\n      uses: actions/checkout@v4\n      with:\n        sparse-checkout: 'docs/'\n        sparse-checkout-cone-mode: false\n\n    - name: Login to DockerHub\n      uses: docker/login-action@v1\n      with:\n        username: ${{ secrets.DOCKER_USERNAME }}\n        password: ${{ secrets.DOCKER_PASSWORD }}\n\n    - name: Build and Push Docker Image\n      uses: docker/build-push-action@v2\n      with:\n        file: ./docs/Dockerfile\n        push: true\n        tags: irisnet/docs:${{ github.sha }}\n        \n  deploy:\n    name: Deploy\n    runs-on: default-runner-set\n    environment: production\n\n    permissions:\n      contents: 'read'\n      id-token: 'write'\n      \n    steps:      \n    - name: 'Set up Google Cloud SDK'\n      uses: 'google-github-actions/setup-gcloud@v2'\n      with:\n        version: '>= 363.0.0'\n        install_components: \"gke-gcloud-auth-plugin\"\n\n    - name: Set up Kubectl\n      uses: azure/setup-kubectl@v3\n      with:\n        version: 'v1.21.0'\n\n    - name: Authenticate to Google Cloud\n      uses: google-github-actions/auth@v2\n      with:\n        project_id: ${{ secrets.GKE_PROJECT }}\n        workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENDITY_PROVIDER }}\n        service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}\n        token_format: 'access_token'\n        \n    - name: Set up GKE credentials\n      uses: google-github-actions/get-gke-credentials@v2\n      with:\n        cluster_name: ${{ secrets.GKE_CLUSTER }}\n        location: ${{ secrets.GKE_REGION }}\n        \n    - name: Deploy to GKE\n      run: |\n        gcloud container clusters get-credentials app --region ${{ secrets.GKE_REGION }} --project ${{ secrets.GKE_PROJECT }}\n        kubectl set image -n irisnet deployment/irisnet-docs frontend=irisnet/docs:${{ github.sha }} \n        kubectl rollout status -n irisnet deployment/irisnet-docs\n"
  },
  {
    "path": ".github/workflows/publish-docker-image.yml",
    "content": "name: Build and Publish Docker Image\non:\n  push:\n    branches:\n      - master\n    tags:\n      - \"v[0-9]+.[0-9]+.[0-9]+\"     # Push events to matching v*, i.e. v1.0, v20.15.10\n      - \"v[0-9]+.[0-9]+.[0-9]+-rc*\" # Push events to matching v*, i.e. v1.0-rc1, v20.15.10-rc5\n\njobs:\n  setup-build-publish:\n    name: Setup, Build and Publish\n    runs-on: ubuntu-latest\n    environment: production\n\n    steps:\n    - name: Checkout\n      uses: actions/checkout@v4\n\n    - name: Login to DockerHub\n      uses: docker/login-action@v1\n      with:\n        username: ${{ secrets.DOCKER_USERNAME }}\n        password: ${{ secrets.DOCKER_PASSWORD }}\n\n    - name: Build and Push Docker Image\n      uses: docker/build-push-action@v2\n      with:\n        build-args: |\n          EVM_CHAIN_ID=6688\n        push: true\n        tags: irisnet/irishub:${{ github.ref_type == 'tag' && github.ref_name || github.sha }}-6688\n"
  },
  {
    "path": ".github/workflows/releases.yml",
    "content": "name: Release\non:\n  push:\n    tags:\n      - \"v[0-9]+.[0-9]+.[0-9]+\"\n    \njobs:\n  setup-build-publish:\n    name: Setup, Build and Publish\n    runs-on: ubuntu-22.04\n    steps:\n      - name: Checkout Codes\n        uses: actions/checkout@v4\n        \n      - name: Setup Golang\n        uses: actions/setup-go@v5\n        with:\n          go-version: '^1.21.0' # The Go version to download (if necessary) and use.\n          \n      - name: Build Binaries\n        run: |\n          sudo apt-get install -y gcc-aarch64-linux-gnu\n          make build-all-binaries\n\n      - name: Publish Release\n        uses: softprops/action-gh-release@v2\n        with:\n          body_path: RELEASE.md\n          files: |\n            build/iris-linux-amd64\n            build/iris-linux-arm64\n"
  },
  {
    "path": ".github/workflows/run-unit-tests.yml",
    "content": "name: Run Unit Tests\non: [pull_request]\n\njobs:\n  test-unit:\n    name: Run Unit Tests\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout\n        uses: actions/checkout@v4\n      - name: Setup Go\n        uses: actions/setup-go@v3\n        with:\n          go-version: '^1.21' # The Go version to download (if necessary) and use.\n      - run: make test-unit\n"
  },
  {
    "path": ".gitignore",
    "content": "vendor\n.DS_Store\n.idea\n.vscode\nbuild/\n.out\ndocs/.vuepress/dist/\nnode_modules/\ndependency-graph.png\nmytestnet\nbuf-stamp\ntestnet\n"
  },
  {
    "path": ".golangci.yml",
    "content": "linters:\n  disable-all: true\n  enable:\n    - errcheck\n    - golint\n    - ineffassign\n    - unconvert\n    - misspell\nlinters-settings:\n  gocyclo:\n    min-complexity: 11\n  errcheck:\n    ignore: fmt:.*,io/ioutil:^Read.*,github.com/spf13/cobra:MarkFlagRequired,github.com/spf13/viper:BindPFlag,./lite/statik\n  golint:\n    min-confidence: 1.1\nrun:\n  tests: false\n"
  },
  {
    "path": "CHANGELOG.md",
    "content": "# Changelog\n\n## 3.1.0\n\n### State Machine Breaking\n\n* (IRISHub) [\\#2944](https://github.com/irisnet/irishub/pull/2944) Bump cosmos-sdk to v0.47.15-ics-lsm\n\n## 3.0.0\n\n### Features\n\n* (IRISHub) [\\#2908](https://github.com/irisnet/irishub/pull/2908) Add ICA module.\n* (IRISHub) [\\#2909](https://github.com/irisnet/irishub/pull/2909) Add Cosmos LSM module.\n* (IRISHub) [\\#2925](https://github.com/irisnet/irishub/pull/2925) Enhance token module.\n* (IRISHub) [\\#2938](https://github.com/irisnet/irishub/pull/2938) Reduce `MinGasPrice` of EVM to 50Gwei.\n\n### Improvements\n\n* (IRISHub) [\\#2910](https://github.com/irisnet/irishub/pull/2910) Improve code.\n* (IRISHub) [\\#2912](https://github.com/irisnet/irishub/pull/2912) Change go path from v2 to v3.\n* (IRISHub) [\\#2914](https://github.com/irisnet/irishub/pull/2914) Improve unit test.\n* (IRISHub) [\\#2918](https://github.com/irisnet/irishub/pull/2918) Adjusting the parameters of the ica module.\n* (IRISHub) [\\#2919](https://github.com/irisnet/irishub/pull/2919) Adjusting gov config.\n* (IRISHub) [\\#2924](https://github.com/irisnet/irishub/pull/2924) Update evm `AllowUnprotectedTxs` params.\n* (IRISHub) [\\#2928](https://github.com/irisnet/irishub/pull/2928) Initialize gov `MinDepositRatio` params.\n* (IRISMod) [\\#385](https://github.com/irisnet/irismod/pull/385) Bump cosmos-sdk to v0.47.9-ics-lsm.\n\n## 2.1.0\n\n### API Breaking\n\n* (NFT) [irismod \\#378](https://github.com/irisnet/irismod/pull/378) Support x/nft API query.\n* (NFT) [irismod \\#378](https://github.com/irisnet/irismod/pull/378) Support irismod/nft API query on IBC denom.\n\n### State Machine Breaking\n\n* (IRISHub) [\\#2884](https://github.com/irisnet/irishub/pull/2884) Add nft-transfer module with version v1.1.3-ibc-v7.3.0\n* (IRISHub) [\\#2884](https://github.com/irisnet/irishub/pull/2884) Bump up tibc-go version to v0.5.0\n* (IRISHub) [\\#2884](https://github.com/irisnet/irishub/pull/2884) Bump up irismod version to v1.8.0\n* (IRISHub) [\\#2863](https://github.com/irisnet/irishub/pull/2863) Add consensus module.\n* (IRISHub) [\\#2863](https://github.com/irisnet/irishub/pull/2863) Bump up ethermint version to v0.22.0\n* (IRISHub) [\\#2863](https://github.com/irisnet/irishub/pull/2863) Bump up ibc-go version to v7.3.0\n* (IRISHub) [\\#2863](https://github.com/irisnet/irishub/pull/2863) Bump up cosmos-sdk to v0.47.4\n* (IRISHub) [\\#2863](https://github.com/irisnet/irishub/pull/2863) Bump up cometbft to v0.37.2\n\n### Features\n\n* (NFT-Transfer) [\\#2863](https://github.com/irisnet/irishub/pull/2863) IRISHub now integrates the functionality of interchain nft-transfer, allowing you to transfer NFTs to other chains.\n\n### Improvements\n\n* (IRISHub) [\\#2858](https://github.com/irisnet/irishub/pull/2858) Migrate mint params.\n* (IRISHub) [irismod \\#381](https://github.com/irisnet/irismod/pull/381) Forbidden to mint nft under ibc class.\n* (IRISMod) [irismod \\#364](https://github.com/irisnet/irismod/pull/364) Migrate token params.\n* (IRISMod) [irismod \\#363](https://github.com/irisnet/irismod/pull/363) Migrate service params.\n* (IRISMod) [irismod \\#362](https://github.com/irisnet/irismod/pull/362) Migrate htlc params.\n* (IRISMod) [irismod \\#361](https://github.com/irisnet/irismod/pull/361) Migrate farm params.\n* (IRISMod) [irismod \\#360](https://github.com/irisnet/irismod/pull/360) Migrate coinswap params.\n\n### Bug Fixes\n\n* (IRISHub) [\\#2863](https://github.com/irisnet/irishub/pull/2863) Fix collect-gentxs command.\n* (IRISHub) [\\#2852](https://github.com/irisnet/irishub/pull/2852) Fix eip712 signature and inject ParseChainID method\n* (IRISMod) [irismod \\#380](https://github.com/irisnet/irismod/pull/380) Fix farm genesis validation.\n* (IRISMod) [irismod \\#367](https://github.com/irisnet/irismod/pull/367) Fix mt module rest url conflict.\n* (IRISMod) [irismod \\#356](https://github.com/irisnet/irismod/pull/356) Replace base64.StdEncoding with base64.RawStdEncoding.\n* (IRISMod) [irismod \\#351](https://github.com/irisnet/irismod/pull/351) Fix wrong addr length of the service module.\n\n### Security\n\n* (IRISHub) [\\#2865](https://github.com/irisnet/irishub/pull/2865) Disable the vesting account creation to prevent contract address front-running.\n\n## 2.0.0\n\n### State Machine Breaking\n\n* (IRISHub) [\\#2831](https://github.com/irisnet/irishub/pull/2831) Bump up tibc-go version to v0.4.3\n* (IRISHub) [\\#2831](https://github.com/irisnet/irishub/pull/2831) Bump up irismod version to v1.7.3\n* (IRISHub) [\\#2766](https://github.com/irisnet/irishub/pull/2766) Bump up cosmos sdk to v0.46.9\n* (IRISHub) [\\#2822](https://github.com/irisnet/irishub/pull/2822) Remove ICA module\n\n### Features\n\n* (IRISHub) [\\#2776](https://github.com/irisnet/irishub/pull/2776) Feat: support evm\n\n### Improvements\n\n* (IRISHub) [\\#2824](https://github.com/irisnet/irishub/pull/2824) Feat: update swagger docs & evm configuration\n* (IRISMod) [irismod \\#340](https://github.com/irisnet/irismod/pull/340) The token module supports the exchange of two tokens.\n* (IRISMod) [irismod \\#342](https://github.com/irisnet/irismod/pull/342) Refactor token module.\n* (IRISMod) [irismod \\#348](https://github.com/irisnet/irismod/pull/348) Adjust the length limit of classID and nftID in nft.\n\n### Bug Fixes\n\n* (IRISHub) [\\#2828](https://github.com/irisnet/irishub/pull/2828) Fix solve proposal handler route conflict\n* (IRISHub) [\\#2827](https://github.com/irisnet/irishub/pull/2827) Fix add ibc client proposal for command\n* (IRISHub) [\\#2794](https://github.com/irisnet/irishub/pull/2794) Fix auth bech32 account prefix\n* (IRISMod) [irismod \\#336](https://github.com/irisnet/irismod/pull/336) Fix farm genesis validate failed.\n* (IRISMod) [irismod \\#327](https://github.com/irisnet/irismod/pull/327) Only export htlc with state=open.\n* (IRISMod) [irismod \\#347](https://github.com/irisnet/irismod/pull/347) Fix service refund address parse error.\n* (IRISMod) [irismod \\#350](https://github.com/irisnet/irismod/pull/350) Fix address parse errors caused by service rest api conflicts.\n\n## 1.4.1\n\n*November 28, 2022*\n\n### Application\n\n* [\\#2780](https://github.com/irisnet/irishub/pull/2780) Bump tibc-go version to v0.4.2\n* [\\#2779](https://github.com/irisnet/irishub/pull/2779) Bump up irismod version to v1.7.2\n* [\\#2777](https://github.com/irisnet/irishub/pull/2777) Add SetIAVLCacheSize and SetIAVLDisableFastNode\n* [\\#2775](https://github.com/irisnet/irishub/pull/2775) Remove group module\n\n## 1.4.0\n\n*November 15, 2022*\n\n### Application\n\n* [\\#2759](https://github.com/irisnet/irishub/pull/2759) Fix export error when with flag `--for-zero-height`\n* [\\#2766](https://github.com/irisnet/irishub/pull/2766) Bump up cosmos sdk to v0.46.4\n* [\\#2768](https://github.com/irisnet/irishub/pull/2768) Bump up ibc-go to v5.0.1\n* [\\#2770](https://github.com/irisnet/irishub/pull/2770) Bump up irismod to v1.7.0 & Bump up tibc-go to v0.4.0\n* [irismod \\#309](https://github.com/irisnet/irismod/pull/309) Refactor nft with cosmos-sdk nft module.\n* [irismod \\#308](https://github.com/irisnet/irismod/pull/308) Coinswap module adds unilateral injection liquidity function.\n\n### API Breaking Changes\n\n* [irismod \\#309](https://github.com/irisnet/irismod/pull/309) GRPC method `Owner` rename to `NFTsOfOwner`, Remove deprecated `Queries` api\n\n### Bug Fixes\n\n* [irismod \\#304](https://github.com/irisnet/irismod/pull/304) Fix nft module import error.\n* [irismod \\#314](https://github.com/irisnet/irismod/pull/314) Fix `addLiquidity` panic error.\n\n## 1.3.0\n\n*March 19, 2022*\n\n### Application\n\n* [\\#2735](https://github.com/irisnet/irishub/pull/2735) Bump up irismod\n* [\\#2734](https://github.com/irisnet/irishub/pull/2734) Bump up TIBC-Go\n* [TIBC-Go \\#247](https://github.com/bianjieai/tibc-go/pull/103) Support cross chain MT transfer via TIBC\n* [irismod \\#247](https://github.com/irisnet/irismod/pull/247) Added the Farm Proposal function, allowing users to submit on-chain proposals to apply for a specified amount of IRIS in IRISnet’s community pool as farming rewards.\n* [irismod \\#249](https://github.com/irisnet/irismod/pull/249) An added gas fee of 5,000 IRIS, with a tax rate of 40%, for the creation of new liquidity pools.\n* [irismod \\#245](https://github.com/irisnet/irismod/pull/245) Compatibilized & expanded the functions of the NFT module to match ERC-721 spec, and to support application requirements in a more flexible manner.\n* [irismod \\#269](https://github.com/irisnet/irismod/pull/269) Introduced ERC-1155 compatible MT (Multi Token) module\n\n## 1.2.0\n\n*November 03th, 2021*\n\n### Application\n\n* [\\#2681](https://github.com/irisnet/irishub/pull/2681) Bump cosmos-sdk version to [v0.44.2](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.44.2)\n* [\\#2668](https://github.com/irisnet/irishub/pull/2668) Integrated tibc protocol\n* [\\#2623](https://github.com/irisnet/irishub/pull/2623) Import farm module\n* [irismod \\#219](https://github.com/irisnet/irismod/pull/219) Refactor coinswap module\n* [irismod \\#189](https://github.com/irisnet/irismod/pull/189) Enhance nft module\n\n### Breaking Changes\n\n* [irismod \\#219](https://github.com/irisnet/irismod/pull/219) Liquidity tokens are named as *lpt-{number}*, and the existing liquidity will be automatically modified during the upgrade\n* [cosmos-sdk \\#10041](https://github.com/cosmos/cosmos-sdk/pull/10041) Remove broadcast & encode legacy REST endpoints. Please see the [REST Endpoints Migration guide](https://docs.cosmos.network/master/migrations/rest.html) to migrate to the new REST endpoints.\n\n## 1.1.1\n\n*April 21th, 2021*\n\n### Application\n\n* [\\#2611](https://github.com/irisnet/irishub/pull/2611) Bump cosmos-sdk version to [v0.42.4](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.42.4)\n* [\\#2611](https://github.com/irisnet/irishub/pull/2611) Bump tendermint version to [v0.34.9](https://github.com/tendermint/tendermint/releases/tag/v0.34.9)\n\n## 1.1.0\n\n*March 26th, 2021*\n\n### CLI\n\n* [\\#2592](https://github.com/irisnet/irishub/pull/2592) Bump irismod version to [v1.4.0](https://github.com/irisnet/irismod/releases/tag/v1.4.0)\n\n### Application\n\n* [\\#2602](https://github.com/irisnet/irishub/pull/2602) Bump cosmos-sdk version to [v0.42.2](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.42.3)\n* [\\#2588](https://github.com/irisnet/irishub/pull/2588) Bump tendermint verion to [v0.34.8](https://github.com/tendermint/tendermint/releases/tag/v0.34.8)\n* [\\#2592](https://github.com/irisnet/irishub/pull/2592) Bump irismod version to [v1.4.0](https://github.com/irisnet/irismod/releases/tag/v1.4.0)\n* [\\#2589](https://github.com/irisnet/irishub/issues/2589) Migrate irishub from v1.0 to v1.1\n\n## 1.0.1\n\n*February 18th, 2021*\n\n### Application\n\nThis release fixes a downstream security issue which impacts Cosmos SDK users.\nSee the [Tendermint v0.34.7 SDK changelog](https://github.com/tendermint/tendermint/blob/v0.34.x/CHANGELOG.md#v0347) for details.\n\n* [\\#2573](https://github.com/irisnet/irishub/pull/2573) Bump cosmos-sdk version to [v0.41.3](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.41.3)\n* [\\#2571](https://github.com/irisnet/irishub/pull/2571) Bump tendermint verion to [v0.34.7](https://github.com/tendermint/tendermint/releases/tag/v0.34.7)\n\n## 1.0.0\n\n*February 9th, 2021*\n\n### CLI\n\n* [\\#2541](https://github.com/irisnet/irishub/pull/2541) Bump cosmos-sdk version to [v0.41.0](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.41.0)\n* [\\#2515](https://github.com/irisnet/irishub/pull/2515) Bump tendermint verion to [v0.34.3](https://github.com/tendermint/tendermint/releases/tag/v0.34.3)\n* [\\#2567](https://github.com/irisnet/irishub/pull/2567) Bump irismod version to [v1.3.1](https://github.com/irisnet/irismod/releases/tag/v1.3.1)\n* [\\#2505](https://github.com/irisnet/irishub/pull/2505) Remove duplicate cmd\n* [\\#2154](https://github.com/irisnet/irishub/issues/2154) Support native token unit conversion in command\n\n### Application\n\n* [\\#2541](https://github.com/irisnet/irishub/pull/2541) Bump cosmos-sdk version to [v0.41.0](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.41.0)\n* [\\#2515](https://github.com/irisnet/irishub/pull/2515) Bump tendermint verion to [v0.34.3](https://github.com/tendermint/tendermint/releases/tag/v0.34.3)\n* [\\#2567](https://github.com/irisnet/irishub/pull/2567) Bump irismod version to [v1.3.1](https://github.com/irisnet/irismod/releases/tag/v1.3.1)\n* [\\#2551](https://github.com/irisnet/irishub/pull/2551) Disable repeated service invocation\n* [\\#2542](https://github.com/irisnet/irishub/pull/2542) Migrate withdraw infos\n* [\\#2524](https://github.com/irisnet/irishub/pull/2524) Fix proto package and path\n* [\\#2518](https://github.com/irisnet/irishub/pull/2518) Move abandoned tokens to communityTax\n* [\\#2512](https://github.com/irisnet/irishub/pull/2512) Normalize msg and genesis validation\n* [\\#2484](https://github.com/irisnet/irishub/pull/2484) Bump cosmos-sdk version to [v0.40.0](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.40.0)\n* [\\#2484](https://github.com/irisnet/irishub/pull/2484) Bump tendermint verion to [v0.34.1](https://github.com/tendermint/tendermint/releases/tag/v0.34.1)\n* [\\#2502](https://github.com/irisnet/irishub/pull/2502) Bump irismod version to [v1.2.0](https://github.com/irisnet/irismod/releases/tag/v1.2.0)\n* [\\#2501](https://github.com/irisnet/irishub/issues/2501) Merge the swagger docs of cosmos-sdk and irismod\n* [\\#2485](https://github.com/irisnet/irishub/pull/2485) Support key import 0.16.3 and earlier version keystore file\n* [\\#2488](https://github.com/irisnet/irishub/pull/2488) Restrict the use of certain token for specified Msg\n* [\\#2098](https://github.com/irisnet/irishub/issues/2098) Migrate iriscli test\n* [\\#2097](https://github.com/irisnet/irishub/issues/2097) Add scripts to migrate genesis data from v0.16.3\n* [\\#2090](https://github.com/irisnet/irishub/issues/2090) Refactor guardian module\n* [\\#2089](https://github.com/irisnet/irishub/issues/2089) Overwrite mint module\n* [\\#2500](https://github.com/irisnet/irishub/issues/2500) Migrate IRIShub modules to irismod\n* [\\#2381](https://github.com/irisnet/irishub/pull/2381) Rebuild irishub v1.0 using cosmos-sdk v0.40\n\n## 0.16.3\n\n*Aug 25th, 2020*\n\n### Application\n\n* [\\#4d4c06](https://github.com/irisnet/irishub/commit/4d4c06a6dfdccc4271734ef6eef95960f000384f) Bump ledger-cosmos-go to support cosmos ledger 2.0\n\n## 0.16.2\n\n*Apr 9th, 2020*\n\n### Tendermint\n\n* [\\#110](https://github.com/irisnet/tendermint/pull/110) Defend against DoS attacks\n\n## 0.16.1\n\n*Jan 9th, 2020*\n\n### CLI\n\n* [\\#2109](https://github.com/irisnet/irishub/issues/2109) Fix the bug that the hash lock can not be specified in the CLI\n\n### Application\n\n* [\\#2118](https://github.com/irisnet/irishub/pull/2118) Improve the UX of snapshot\n* [\\#2119](https://github.com/irisnet/irishub/issues/2119) Prune iavlstore version using rootstore version\n\n## 0.16.0\n\n*Nov 22th, 2019*\n\n### Breaking Changes\n\n* [API Breaking Changes](./docs/light-client/CHANGELOG.md#v0160)\n* [\\#1912](https://github.com/irisnet/irishub/issues/1912) Update prometheus metrics\n\n### LCD (REST API)\n\n* [\\#1858](https://github.com/irisnet/irishub/issues/1858) Add new function - AddLiquidity\n* [\\#1859](https://github.com/irisnet/irishub/issues/1859) Add new function - RemoveLiquidity\n* [\\#1860](https://github.com/irisnet/irishub/issues/1860) Add new function - Swap Coin\n* [\\#1861](https://github.com/irisnet/irishub/issues/1861) Add new function - Query Exchange\n* [\\#1948](https://github.com/irisnet/irishub/issues/1948) Add client for HTLC\n\n### CLI\n\n* [\\#1948](https://github.com/irisnet/irishub/issues/1948) Add client for HTLC\n* [\\#2030](https://github.com/irisnet/irishub/issues/2030) Fix CLI test for HTLC\n\n### Application\n\n* [\\#1858](https://github.com/irisnet/irishub/issues/1858) Add new function - AddLiquidity\n* [\\#1859](https://github.com/irisnet/irishub/issues/1859) Add new function - RemoveLiquidity\n* [\\#1860](https://github.com/irisnet/irishub/issues/1860) Add new function - Swap Coin\n* [\\#1861](https://github.com/irisnet/irishub/issues/1861) Add new function - Query Exchange\n* [\\#1872](https://github.com/irisnet/irishub/issues/1872) Replace time.Time with uint64 in coinswap msgs\n* [\\#1811](https://github.com/irisnet/irishub/issues/1811) Add docs for coin-swap\n* [\\#1879](https://github.com/irisnet/irishub/issues/1879) Add tags for coinswap module\n* [\\#1910](https://github.com/irisnet/irishub/issues/1910) Add coin-flow for coin-swap module\n* [\\#1912](https://github.com/irisnet/irishub/issues/1912) Update prometheus metrics\n* [\\#1936](https://github.com/irisnet/irishub/issues/1936) Update denom's specification\n* [\\#1941](https://github.com/irisnet/irishub/issues/1941) Refactor document website documentation\n* [\\#1946](https://github.com/irisnet/irishub/issues/1946) Add new function - Create HTLC\n* [\\#1949](https://github.com/irisnet/irishub/issues/1949) Add new function - Claim and Refund in HTLC\n* [\\#1965](https://github.com/irisnet/irishub/issues/1965) Add user docs and specification for HTLC\n* [\\#1984](https://github.com/irisnet/irishub/issues/1984) Update HTLC docs\n* [\\#1985](https://github.com/irisnet/irishub/issues/1985) Code formatting and cleaning\n* [\\#1988](https://github.com/irisnet/irishub/issues/1988) Add HTLC genesis\n* [\\#1991](https://github.com/irisnet/irishub/issues/1991) Add Coinswap feature doc\n* [\\#1995](https://github.com/irisnet/irishub/issues/1995) Improve HTLC\n* [\\#2008](https://github.com/irisnet/irishub/issues/2008) Enhance HTLC genesis test\n* [\\#2013](https://github.com/irisnet/irishub/issues/2013) Modify timestamp type in LCD\n* [\\#2015](https://github.com/irisnet/irishub/issues/2015) Add HTLC feature docs\n\n### Tendermint\n\n* [\\#1880](https://github.com/irisnet/irishub/issues/1880) Ensure generated private keys are valid\n* [\\#1885](https://github.com/irisnet/irishub/issues/1885) tendermint use Go modules instead of dep\n* [\\#1908](https://github.com/irisnet/irishub/issues/1908) Update p2p to v0.32\n* [\\#1909](https://github.com/irisnet/irishub/issues/1909) Support boltdb\n* [\\#1913](https://github.com/irisnet/irishub/issues/1913) Remove db from in favor of tendermint/tm-db\n* [\\#1917](https://github.com/irisnet/irishub/issues/1917) Create a peer state in consensus reactor before the peer is started\n* [\\#1918](https://github.com/irisnet/irishub/issues/1918) Improve error message returned from AddSignatureFromPubKey\n* [\\#1919](https://github.com/irisnet/irishub/issues/1919) Self node in addrbook.json and node tries to dial itself\n* [\\#1920](https://github.com/irisnet/irishub/issues/1920) Fix profiler blocking the entire node\n* [\\#1921](https://github.com/irisnet/irishub/issues/1921) Exit if SwitchToConsensus fails\n* [\\#1922](https://github.com/irisnet/irishub/issues/1922) Improve transaction search\n\n## 0.15.5\n\n*Oct 30th, 2019*\n\n### Tendermint\n\nBump Tendermint version to irisnet/tendermint [v0.31.3](https://github.com/irisnet/tendermint/releases/tag/v0.31.3) to fix the consensus security bug.\n\n## 0.15.4\n\n*Oct 14th, 2019*\n\n### Tendermint\n\nBump Tendermint version to irisnet/tendermint [v0.31.2](https://github.com/irisnet/tendermint/releases/tag/v0.31.2) to fix the p2p panic error.\n\n## 0.15.3\n\n*Oct 2th, 2019*\n\n### Tendermint\n\nBump Tendermint version to irisnet/tendermint [v0.31.1](https://github.com/irisnet/tendermint/releases/tag/v0.31.1) to fix the p2p panic error.\n\n## 0.15.2\n\n*Sep 11th, 2019*\n\n### Application\n\n* [\\#1940](https://github.com/irisnet/irishub/pull/1940) Do not update gov params when network not equal mainnet\n* [\\#1945](https://github.com/irisnet/irishub/pull/1945) Fix protocol loading on replay-last-block\n\n## 0.15.1\n\n*Aug 22th, 2019*\n\n### Application\n\n* [\\#1895](https://github.com/irisnet/irishub/issues/1895) Run tendermint cleanupFunc before Exit\n* [\\#1897](https://github.com/irisnet/irishub/issues/1897) Fix possible panic on exporting genesis file\n\n## 0.15.0\n\n*Aug 20th, 2019*\n\n### LCD (REST API)\n\n* [\\#1473](https://github.com/irisnet/irishub/issues/1473) Add APIs for Tokens\n* [\\#1521](https://github.com/irisnet/irishub/issues/1521) Add APIs for Gateways\n* [\\#1745](https://github.com/irisnet/irishub/issues/1745) POST APIs only generate transactions, not broadcast transactions\n* [\\#1750](https://github.com/irisnet/irishub/issues/1750) Move params query from `/gov/params` to `/params`\n* [\\#1802](https://github.com/irisnet/irishub/issues/1802) Remove key-related APIs and enhance API `tx/broadcast`\n\n### CLI\n\n* [\\#1750](https://github.com/irisnet/irishub/issues/1750) Replace `iriscli gov query-params` by `iriscli params`\n\n### Application\n\n* [\\#1336](https://github.com/irisnet/irishub/issues/1336) Ensure field length checking in the service module\n* [\\#1466](https://github.com/irisnet/irishub/issues/1466) Support multi-signature account\n* [\\#1468](https://github.com/irisnet/irishub/issues/1468) Add asset module\n* [\\#1493](https://github.com/irisnet/irishub/issues/1493) Back up keys using keystore file\n* [\\#1511](https://github.com/irisnet/irishub/issues/1511) Split the export command into reset and export\n* [\\#1544](https://github.com/irisnet/irishub/issues/1544) Refactor CommunityPool and BurnedCoins into AccAddresses\n* [\\#1568](https://github.com/irisnet/irishub/issues/1568) Optimize Dockerfile\n* [\\#1603](https://github.com/irisnet/irishub/issues/1603) Refactor total supply to support multiple tokens\n* [\\#1604](https://github.com/irisnet/irishub/issues/1604) Enhance gov TallyResult\n* [\\#1677](https://github.com/irisnet/irishub/issues/1677) Refactor coin_type to support multiple tokens\n* [\\#1728](https://github.com/irisnet/irishub/issues/1728) Refactor gov module and add proposal types `PlainText` and `TokenAddition`\n* [\\#1757](https://github.com/irisnet/irishub/issues/1757) Add a random number generator\n* [\\#1783](https://github.com/irisnet/irishub/issues/1783) Optimize error messages\n* [\\#1643](https://github.com/irisnet/irishub/issues/1643) Fix tx search by tx.height\n* [\\#1854](https://github.com/irisnet/irishub/issues/1854) Enforce unbonding_time for redelegation\n* [\\#1867](https://github.com/irisnet/irishub/issues/1867) Enable memo validation for \"flagged\" accounts\n* [\\#1851](https://github.com/irisnet/irishub/issues/1851) Reduce gas consumption to support larger data storage\n\n### Tendermint\n\n* Update to irisnet/tendermint [v0.31.0](https://github.com/irisnet/tendermint/releases/tag/v0.31.0)\n  * [\\#1379](https://github.com/irisnet/irishub/issues/1379) [p2p] Simplify GetSelectionWithBias for addressbook\n  * [\\#1432](https://github.com/irisnet/irishub/issues/1432) [crypto] Allow PubKeyMultisigThreshold to unmarshal into crypto.PubKey\n  * [\\#1451](https://github.com/irisnet/irishub/issues/1451) [db] Close WriteBatch to prevent memory leak\n  * [\\#1460](https://github.com/irisnet/irishub/issues/1460) [kms] Shut down tmkms when a validator enters proposal round crashes the app\n  * [\\#1554](https://github.com/irisnet/irishub/issues/1554) [consensus] Log block status on replay block\n  * [\\#1646](https://github.com/irisnet/irishub/issues/1646) [consensus] Fix possible halt by resetting TriggeredTimeoutPrecommit before starting the next height\n  * [\\#1647](https://github.com/irisnet/irishub/issues/1647) [consensus] Flush WAL on stop to prevent data corruption during a graceful shutdown\n  * [\\#1648](https://github.com/irisnet/irishub/issues/1648) [p2p] Fix reconnecting report duplicate ID error due to race condition between adding peer to peerSet and starting it\n  * [\\#1649](https://github.com/irisnet/irishub/issues/1649) [p2p] Do not panic when filter times out\n  * [\\#1650](https://github.com/irisnet/irishub/issues/1650) [p2p] Reject all-zero shared secrets in the Diffie-Hellman step of secret-connection\n  * [\\#1660](https://github.com/irisnet/irishub/issues/1660) [instrumentation] Add chain_id label for all metrics\n  * [\\#1665](https://github.com/irisnet/irishub/issues/1665) [rpc] Return maxPerPage if per_page is greater than max\n  * [\\#1679](https://github.com/irisnet/irishub/issues/1679) [p2p] Fix nil pointer deference on DNS resolution failure\n  * [\\#1692](https://github.com/irisnet/irishub/issues/1692) [blockchain] Fix pool timer leak bug\n  * [\\#1693](https://github.com/irisnet/irishub/issues/1693) [db] Close Iterator in RemoteDB\n  * [\\#1697](https://github.com/irisnet/irishub/issues/1697) [lite] Fix error proxy endpoints `validators` in lite client\n  * [\\#1702](https://github.com/irisnet/irishub/issues/1702) [blockchain] Update the maxHeight when a peer is removed\n  * [\\#1703](https://github.com/irisnet/irishub/issues/1703) [mempool] Stop gossiping tx's back to where they come from\n  * [\\#1704](https://github.com/irisnet/irishub/issues/1704) [rpc] Disable compression for HTTP client to prevent GZIP-bomb DoS attacks\n  * [\\#1714](https://github.com/irisnet/irishub/issues/1714) [mempool] Bound mempool memory usage\n\n## 0.14.1\n\n*May 31th, 2019*\n\n### LCD (REST API)\n\n* [\\#1486](https://github.com/irisnet/irishub/issues/1486) Ensure `/bank/account/{address}` has consistent json output\n* [\\#1495](https://github.com/irisnet/irishub/issues/1495) Improve error handling for query parameters\n\n### Application\n\n* [\\#1506](https://github.com/irisnet/irishub/issues/1506) Enforce `unbonding_time` regardless of validator status\n\n## 0.14.0\n\n*May 27th, 2019*\n\n### LCD (REST API)\n\n* [\\#1245](https://github.com/irisnet/irishub/issues/1245) Follow best-practice URI naming guide -- API BREAKING!\n* [\\#1416](https://github.com/irisnet/irishub/issues/1416) Drop three useless distribution queries -- API BREAKING!\n* [\\#1444](https://github.com/irisnet/irishub/pull/1444) Fix `/bank/token-stats` output format -- API BREAKING!\n* [\\#1374](https://github.com/irisnet/irishub/issues/1374) Use `Querier` pattern to improve query implementation\n* [\\#1426](https://github.com/irisnet/irishub/issues/1426) Add query for community tax\n* [\\#1386](https://github.com/irisnet/irishub/issues/1386) Fix `memo` support bug in LCD\n\n### CLI\n\n* [\\#1245](https://github.com/irisnet/irishub/issues/1245) Move `sign` and `broadcast` subcmd under `tx` cmd\n* [\\#1375](https://github.com/irisnet/irishub/issues/1375) Unify the output formats of return data\n* [\\#1411](https://github.com/irisnet/irishub/issues/1411) Fix incorrect json indent output for `keys` commands\n* [\\#1419](https://github.com/irisnet/irishub/pull/1419) Fix incorrect decimal output in plain-text format\n* [\\#1443](https://github.com/irisnet/irishub/issues/1443) Allow users to generate send tx offline\n\n### Application\n\n* [\\#1383](https://github.com/irisnet/irishub/issues/1383) Improve result tags for unbond and redelegate\n* [\\#1409](https://github.com/irisnet/irishub/issues/1409) Fix validation bug for `community_tax` parameter\n* [\\#1422](https://github.com/irisnet/irishub/issues/1422) Replace dep with Go Module\n\n### Tendermint\n\n* Update to irisnet/tendermint [v0.28.0](https://github.com/irisnet/tendermint/releases/tag/v0.28.0)\n  * [\\#1408](https://github.com/irisnet/irishub/issues/1408) [mempool] Fix `broadcastTxRoutine` leak\n  * [\\#1428](https://github.com/irisnet/irishub/issues/1428) [rpc] Fix `/tx_search` bug when results are empty\n  * [\\#1429](https://github.com/irisnet/irishub/issues/1429) [privval] Retry `RemoteSigner` connections on error\n  * [\\#1430](https://github.com/irisnet/irishub/issues/1430) [privval] Memorize pubkey on startup\n  * [\\#1431](https://github.com/irisnet/irishub/issues/1431) [p2p] Make `SecretConnection` thread safe\n  * [\\#1434](https://github.com/irisnet/irishub/issues/1434) [consensus] Log `peerID` on ignored votes\n  * [\\#1435](https://github.com/irisnet/irishub/issues/1435) [rpc] Include peer's remote IP in `/net_info`\n  * [\\#1436](https://github.com/irisnet/irishub/issues/1436) [crypto] Update btcd fork for rare signRFC6979 bug\n  * [\\#1438](https://github.com/irisnet/irishub/issues/1438) [privval] Fix race between sign and ping requests\n  * [\\#1439](https://github.com/irisnet/irishub/issues/1439) [p2p] Fix MITM bug on `SecretConnection`\n  * [\\#1440](https://github.com/irisnet/irishub/issues/1440) [node] Start `EventBus` and `IndexerService` before first block\n\n### Documentation\n\n* [\\#1376](https://github.com/irisnet/irishub/issues/1376) Improve v0.13.1 docs\n\n## 0.13.1\n\n*Mar 22th, 2019*\n\n### LCD (REST API)\n\n* [\\#1339](https://github.com/irisnet/irishub/pull/1339) Add pagination params for lcd validators query\n* [\\#1355](https://github.com/irisnet/irishub/pull/1355) Fix pagination error message\n* [\\#1360](https://github.com/irisnet/irishub/pull/1360) Add query API for delegator rewards\n\n### CLI\n\n* [\\#1360](https://github.com/irisnet/irishub/pull/1360) Add query command for delegator rewards\n\n### Application\n\n* [\\#1329](https://github.com/irisnet/irishub/pull/1329) Improve error message for insufficient balance\n* [\\#1340](https://github.com/irisnet/irishub/pull/1340) Remove coin flow tags if tx is out of gas\n* [\\#1341](https://github.com/irisnet/irishub/pull/1341) Check validator existence and status before getting its pubkey\n* [\\#1344](https://github.com/irisnet/irishub/pull/1344) Reset the init value for metrics\n* [\\#1354](https://github.com/irisnet/irishub/pull/1354) Fix the bug of metric data accumulation\n* [\\#1362](https://github.com/irisnet/irishub/pull/1362) Fix testnet build for Docker\n* [\\#1370](https://github.com/irisnet/irishub/pull/1370) Add more tags for Redelgate TxResult\n\n### Tendermint\n\n* [\\#51](https://github.com/irisnet/tendermint/pull/51) Update to irisnet/Tendermint **v0.27.4**\n  * [\\#44](https://github.com/irisnet/tendermint/pull/44) [p2p] Cleanup rejected inbound connections\n  * [\\#45](https://github.com/irisnet/tendermint/pull/45) [consensus] Fix consensus round issue\n  * [\\#46](https://github.com/irisnet/tendermint/pull/46) [mempool] Check max msg size in `CheckTx()`\n  * [\\#47](https://github.com/irisnet/tendermint/pull/47) [mempool] Fix the bug of LRU cache update\n  * [\\#48](https://github.com/irisnet/tendermint/pull/48) [p2p] Fix infinite loop in `AddrBook`\n  * [\\#50](https://github.com/irisnet/tendermint/pull/50) [p2p] Fix FlushStop() in `MConnection`\n\n## 0.12.3\n\n*February 27th, 2019*\n\n* Fix issue of build config for Ledger Nano\n* Fix Dockerfile to be compatible with Ledger build\n* Improve documents about address prefix/fee/chain-id for the mainnet\n\n## 0.12.2\n\n*February 26th, 2019*\n\n* Fix the document issue\n\n## 0.12.2-rc0\n\n*February 26th, 2019*\n\n* Set max commission rate and max commission change rate to 100%\n* Implement coin flow record feature for \"internal transactions\"\n* Support Ledger Nano S and KMS\n* Update the default gas_price_threshold to be 6000iris-nano\n* No slashing for Censorship or Downtime\n* No slashing for non-voting for proposals\n* Configure the default build environment as mainnet\n* Set the default gas limit to be 50000\n* Fix wrong withdraw address\n* Fix gas simulate issue\n* Display correct validator consensus pubkey\n* Improve the documents\n\n## 0.12.1\n\n*February 14th, 2019*\n\n* Fix the bug of repeatability check about evidence in the tendermint\n* Change the invariant level for mainnet\n\n## 0.12.0\n\n*February 11th, 2019*\n\n* [iris] Refactor and add more promethus metrics for monitor\n* [iris] Enrich log message for all modules\n* [iris] Close all unclosed iterators\n* [iris] Add invariant check level configuration in iris.toml\n* [iriscli] Add share percent in lcd unbond and redelegate\n* [iriscli] Fix tx search bug by page and size query parameter name\n* [iriscli] Improve error message for gov module\n* [irislcd] Upgrade swagger-ui to 3.0 which can support dynamic query parameters\n* [iristool] Remove monitor command\n* [tendermint] Fix DynamicVerifier for large validator set changes\n* [tendermint] Optimize txs search to handle huge search result\n* [doc] Improve slashing document\n\n## 0.11.0\n\n*January 25th, 2019*\n\n* [iris] Handle the expected abort during replay last block\n* [iris] Go through and make sure all panic are reasonable\n* [iris] Add the set-withdraw-address feature\n* [iris] Update default param value of Upgrade Threshold and Critical Proposal\n* [iris] Fix bug that evidence age doesn't take effect\n\n* [iriscli] Improve the upgrade query-signals cmd\n\n* [tendermint] Avoid one evidence be committed multiple times\n\n## 0.11.0-rc0\n\n*January 21th, 2019*\n\n* [iris] Move the upgrade tally threshold into the software upgrade proposal\n* [iris] Limit the size of transaction\n* [iris] Tendermint's blockstore also needs to consume gas when storing transactions\n* [iris] Proposer censorship slashing to prevent the proposer from submitting block containing garbage tx data\n* [iris] The proposer must deposit 30% of the mindeposit when submitting the proposal\n* [iris] Make more check about every msg's ValidateBasic()\n* [iris] Add flag --output-file to save export result and ensure result is consistent\n* [iris] Add new param service/TxSizeLimit to limit the service tx size\n* [iris] Block mint doesn't depend on BFT time\n* [iris] Fix infinite gas meter utilization during aborted ante handler executions\n* [iris] Auto-config bech32 prefixes based on network type\n* [iris] Improve the system logs\n\n* [iriscli] Make the result of `iriscli tendermint tx` readable\n* [iriscli] Improve the output format of the query proposals\n* [iriscli] Enhance the query-signals cmd to print the accumulated signal voting power percent\n\n* [iristool] Add support for consensus address and pubkey\n\n## 0.10.2\n\n*January 17th, 2019*\n\n* [iris] The proposer must deposit 30% of the mindeposit when submitting the proposal\n\n## 0.10.1\n\n*January 17th, 2019*\n\n* [iriscli] Fix issue about query validator information\n* [iriscli] Fix cli query proposals error\n\n## 0.10.0\n\n*January 16th, 2019*\n\n* [iris] Add flag --output-file to save export result and ensure result is consistent\n* [iris] Improve invariant checking coverage and fix distribution bugs\n* [iriscli] Make the result of `iriscli tendermint tx` readable\n* [iriscli] Query cmd return details about software upgrade and tax usage proposal\n* [tendermint] Fix the inconformity of too many evidences check\n* [tendermint] Fix replay bug of `iris export`\n\n## 0.10.0-rc0\n\n*January 8th, 2019*\n\nFEATURES:\n\n* [iris] Make more validation about the `MsgCreateValidator` in CollectStdTxs\n* [iris] Remove loosen token in stake pool, use bank to calculate the total loosen token\n* [iris] Implement the block mint token-economics\n* [iris] Add the service slash feature\n* [iris] Redesign and implement the governance module to setup the new voting, tally, and penalty rules for each level of proposals\n* [iris] Refactor and redefined all the gov/slashing/service/stake/distribution and gasPrice params\n* [iris] Make gov data types codec wires usable across different protocol versions\n* [iris] Don't export the unfinished proposals and refund the deposits of these proposals before export snapshot\n* [iris] Refund service fee and deposit before export service state\n* [iris] Add invariant checking level into makefile\n* [iris] Only the genesis type profiler/trustee can initiate the addition or deletion (rather than prohibiting) transactions of the minor type profiler/trustee record. Everyone can view the profiler/trustee list\n* [iris] Make sure the destination address is a trustee when the TaxUsage proposal execute\n* [iris] Remove the record module\n* [iris] Add `iris start --replay-last-block` to reset the app state by replay the last block\n* [iris] Add `iris export --height` to export the snapshot of any block height even beyond the maximum cached historical version\n\n* [iriscli] Add cli cmd to query the software upgrade signal status\n* [iriscli] Make flag deposit not be required in the gov submit-proposal cmd\n* [iriscli] Add token stats query cmd and lcd interface\n* [iriscli] Replace decimal with int coins in distribution withdraw tags\n* [iriscli] Add the sync tx broadcast type as the default mode in iriscli\n* [iriscli] Add burn token cmd and lcd api\n* [iriscli] Remove set-withdraw-addr sub-command\n\n* [tendermint] Update tendermint to v0.27.3\n* [test] Run cli test suite in parallel\n\nBUG FIXES:\n\n* Withdraw commission on self bond removal\n* Use address instead of bond height / intratxcounter for deduplication\n* Removal of mandatory self-delegation reward\n* Fix bug of the tx result tags\n* Fix absence proof verification\n* Avoid to export account with no coin\n* Correctly reset jailed-validator bond height / unbonding height on export-for-zero-height\n* If a validator is jailed, distribute no reward to it\n* Fix issue that miss checking the first one in Coins\n\n## 0.9.1-patch01\n\n*January 7th, 2019*\n\n* Hotfix bug of software upgrade\n\n## 0.9.1\n\n*January 4th, 2019*\n\n* Add cli cmd to query the software upgrade signal status\n* Remove the text proposal\n\n## 0.9.0\n\n*December 27th, 2018*\n\n* Refactor the gov types\n* Make the deposit flag not be required in the gov submit-proposal cmd\n* Add withdraw address into the withdraw tags list\n* Fix the monitor bug\n\n## 0.9.0-rc0\n\n*December 19th, 2018*\n\nBREAKING CHANGES:\n\n* Use `iristool` to replace the original `irisdebug` and `irismon`\n* `iris init` must specify moniker\n\nFEATURES:\n\n* [iriscli] Optimize the way tags are displayed\n* [iriscli] Add `iriscli stake delegations-to [validator-addr]` and `/stake/validators/{validatorAddr}/delegations` interfaces\n* [iris] Application framework code refactoring\n* [iris] Add a new mechanism to distribute service fee tax\n* [iris] Slashing module supports querying slashing history\n* [iris] Gov module adds TxTaxUsageProposal/SoftwareHaltProposal proposals\n* [iris] Export and import blockchain snapshot at any block height\n* [iris] Redesigned to implement class 2 software upgrade\n* [iris] Restrict the block gas limit\n* [iris] Improve tx search to support multiple tags\n* [iris] Improve the default behavior of iris --home\n* [iris] `iris tendermint show-address` output begins with `fca`\n* [iris] Restrict the number of signatures on the transaction\n* [iris] Add a check for the validator private key type and reject the unsupported private key type\n* [tendermint] Update tendermint to v0.27.0\n\nBUG FIXES:\n\n* Add chain-id value checking for sign command\n* Specify the required flags for cmds `query-proposal`, `query-deposit` and `query-vote`\n\n## 0.8.0\n\n*December 13th, 2018*\n\n* Upgrade tendermint to v0.27.0-dev1\n\n## 0.8.0-rc0\n\n*December 3rd, 2018*\n\nBREAKING CHANGES:\n\n* Genesis.json supports any unit format of IRIS CoinType\n* The configuration information of the bech32 prefix is dynamically specified by the environment variable\n* Improvement of File/directory path specification and the exception handler\n\nFEATURES:\n\n* Upgrade cosmos-sdk to v0.26.1-rc1 and remove the cosmos-sdk dependency\n* Upgrade tendermint denpendency to v0.26.1-rc3\n* View the current available withdraw balance by simulation mode\n* Command line and LCD interface for service invocation request and query\n* Implement guardian module for some governance proposal\n* Added command add-genesis-account to configure account for genesis.json\n* New proposal TerminatorProposal to terminate network consensus\n\n## 0.7.0\n\n*November 27th, 2018*\n\n* Add broadcast command in bank\n* Impose upgrade proposal with restrictions\n* Fix bech32 prefix error in irismon\n* Improve user documents\n\n## 0.7.0-rc0\n\n*November 19th, 2018*\n\nBREAKING CHANGES:\n\n* [iris] New genesis workflow\n* [iris] Validator.Owner renamed to Validator. Validator operator type has now changed to sdk.ValAddress\n* [iris] unsafe_reset_all, show_validator, and show_node_id have been renamed to unsafe-reset-all, show-validator, and show-node-id\n* [iris]Rename \"revoked\" to \"jailed\"\n* [iris]Removed CompleteUnbonding and CompleteRedelegation Msg types, and instead added unbonding/redelegation queues to endblocker\n* [iris]Removed slashing for governance non-voting validators\n* [iris]Validators are no longer deleted until they can no longer possibly be slashed\n* [iris]Remove ibc module\n* [iris]Validator set updates delayed by one block\n* [iris]Drop GenesisTx in favor of a signed StdTx with only one MsgCreateValidator message\n\nFEATURES:\n\n* Upgrade cosmos-sdk denpendency to v0.26.0\n* Upgrade tendermint denpendency to v0.26.1-rc0\n* [docs]Improve docs\n* [iris]Add token inflation\n* [iris]Add distribution module to distribute inflation token and collected transaction fee\n* [iriscli] --from can now be either an address or a key name\n* [iriscli] Passing --gas=simulate triggers a simulation of the tx before the actual execution. The gas estimate obtained via the simulation will be used as gas limit in the actual execution.\n* [iriscli]Add --bech to iriscli keys show and respective REST endpoint to\n* [iriscli]Introduced new commission flags for validator commands create-validator and edit-validator\n* [iriscli]Add commands to query validator unbondings and redelegations\n* [iriscli]Add rest apis and commands for distribution\n\nBUG FIXES:\n\n* [iriscli]Mark --to and --amount as required flags for iriscli bank send\n* [iris]Add general merkle absence proof (also for empty substores)\n* [iris]Fix issue about consumed gas increasing rapidly\n* [iris]Return correct Tendermint validator update set on EndBlocker by not including non previously bonded validators that have zero power\n* [iris]Add commission data to MsgCreateValidator signature bytes\n\n## 0.6.0\n\n*November 1st, 2018*\n\n* Use --def-chain-id flag to reference the blockchain defined of the iService\n* Fix some bugs about iservice definition and record\n* Add cli and lcd test for record module\n* Update the user doc of iservice definition and record\n\n## 0.6.0-rc0\n\n*October 24th, 2018*\n\nBREAKING CHANGES:\n\n* [monitor] Use new executable binary in monitor\n\nFEATURES:\n\n* [record] Add the record module of the data certification on blockchain\n* [iservice] Add the feature of iService definition\n* [cli] Add the example description in the cli help\n* [test] Add Cli/LCD/Sim auto-test\n\nBUG FIXES:\n\n* Fix software upgrade issue caused by tx fee\n* Report Panic when building the lcd proof\n* Fix bugs in converting validator power to byte array\n* Fix panic bug in wrong account number\n\n## 0.5.0-rc1\n\n*October 11th, 2018*\n\nFEATURES:\n\n* Make all the gov and upgrade parameters can be configured in the genesis.json\n\nBUG FIXES\n\n* Add check for iavl proof and value before building multistore proof\n\n## 0.5.0-rc0\n\n*September 30th, 2018*\n\nBREAKING CHANGES:\n\n* [cointype] Introduce the cointype of iris:\n  * 1 iris = 10^18 iris-atto\n  * 1 iris-milli = 10^15 iris-atto\n  * 1 iris-micro = 10^12 iris-atto\n  * 1 iris-nano = 10^9 iris-atto\n  * 1 iris-pico = 10^6 iris-atto\n  * 1 iris-femto = 10^3 iris-atto\n\nFEATURES:\n\n* [tendermint] Upgrade to Tendermint v0.23.1-rc0\n* [cosmos-sdk] Upgrade to cosmos-sdk v0.24.2\n  * Move the previous irisnet changeset about cosmos-sdk into irishub\n* [irisdebug] Add irisdebug tool\n* [LCD/cli] Add the proof verification to the LCD and CLI\n* [iparam] Support the modification of governance parameters of complex data type through governance, and the submission of modified proposals through json config files\n* [software-upgrade] Software upgrade solutions of the irisnet\n\n## 0.4.2\n\n*September 22th, 2018*\n\nBUG FIXES\n\n* Fix consensus failure due to the double sign evidence be broadcasted before the genesis block\n\n## 0.4.1\n\n*September 12th, 2018*\n\nBUG FIXES\n\n* Missing to set validator intraTxCount in stake genesis init\n\n## 0.4.0\n\n*September 6th, 2018*\n\nBREAKING CHANGES:\n\n* [cosmos-sdk] Upgrade to cosmos-sdk v0.23.0\n  * Change the address prefix format:\n    * cosmosaccaddr --> faa\n    * cosmosaccpub --> fap\n    * cosmosvaladdr --> fva\n    * cosmosvalpub --> fvp\n  * Adjust the Route & rootMultiStore Commit for software upgrade\n  * Must specify gas and fee in both command line and rest api\n  * The fee should be iris token and the token amount should be no less than 2*(10^10)*gas\n\nFEATURES:\n\n* [tendermint] Upgrade to Tendermint v0.22.6\n  * Store the pre-state to support the replay function\n* [cosmos-sdk] Upgrade to cosmos-sdk v0.23.0\n  * Add the paramProposal and softwareUpgradeProposal in gov module\n  * Improve fee token mechanism to more reasonably deduct transaction fee and achieve more ability to defent DDOS attack.\n  * Introduce the global parameter module\n\nBUG FIXES\n\n* Default account balance in genesis\n* Fix iris version issue\n* Fix the unit conflict issue in slashing\n* Check the voting power when create validator\n* Fix evidence amimo register issue\n\n## 0.4.0-rc2\n\n*Sep 5th, 2018*\n\nBUG FIXES\n\n* Fix evidence amimo register issue\n\n## 0.4.0-rc1\n\n*Aug 27th, 2018*\n\nBUG FIXES\n\n* Default account balance in genesis\n* iris version issue\n* Fix the unit conflict issue in slashing\n* Check the voting power when create validator\n\n## 0.3.0\n\n*July 30th, 2018*\n\nBREAKING CHANGES:\n\n* [tendermint] Upgrade to Tendermint v0.22.2\n  * Default ports changed from 466xx to 266xx\n  * ED25519 addresses are the first 20-bytes of the SHA256 of the raw 32-byte pubkey (Instead of RIPEMD160)\n* [cosmos-sdk] Upgrade to cosmos-sdk v0.22.0\n* [monitor] Move `iriscli monitor` subcommand to `iris monitor`\n\nFEATURES:\n\n* [lcd] /tx/send is now the only endpoint for posing transaction to irishub; aminofied all transaction messages\n* [monitor] Improve the metrics for iris-monitor\n\nBUG FIXES\n\n* [cli] solve the issue of iriscli stake sign-info\n\n##\n\n## 0.2.0\n\n*July 19th, 2018*\n\nBREAKING CHANGES:\n\n* [tendermint] Upgrade to Tendermint v0.21.0\n* [cosmos-sdk] Upgrade to cosmos-sdk v0.19.1-rc1\n\nFEATURES:\n\n* [lcd] code refactor\n\n* [cli] improve sendingand querying the  transactions\n\n* [monitor]export data which is collected by Prometheus Server\n\n  ​\n\n##  \n"
  },
  {
    "path": "CONTRIBUTING.md",
    "content": "# Contributing\n\nThank you for considering making contributions to irishub!\n\nContributing to this repo can mean many things such as participated in\ndiscussion or proposing code changes. To ensure a smooth workflow for all\ncontributors, the general procedure for contributing has been established:\n\n  1. either [open](https://github.com/irisnet/irishub/issues/new) or\n     [find](https://github.com/irisnet/irishub/issues) an issue you'd like to help with,\n  2. participate in thoughtful discussion on that issue,\n  3. if you would then like to contribute code:\n     1. if the issue is a proposal, ensure that the proposal has been accepted,\n     2. ensure that nobody else has already begun working on this issue, if they have\n       make sure to contact them to collaborate,\n     3. if nobody has been assigned the issue and you would like to work on it\n       make a comment on the issue to inform the community of your intentions\n       to begin work,\n     4. follow standard github best practices: fork the repo,\n       if the issue if a bug fix, branch from the\n       tip of `develop`, make some commits, and submit a PR to `develop`; if the issue is a new feature,  branch from the tip of `feature/XXX`, make some commits, and submit a PR to `feature/XXX`\n     5. include `WIP:` in the PR-title to and submit your PR early, even if it's\n       incomplete, this indicates to the community you're working on something and\n       allows them to provide comments early in the development process. When the code\n       is complete it can be marked as ready-for-review by replacing `WIP:` with\n       `R4R:` in the PR-title.\n\nNote that for very small or blatantly obvious problems (such as typos) it is \nnot required to an open issue to submit a PR, but be aware that for more complex\nproblems/features, if a PR is opened before an adequate design discussion has\ntaken place in a github issue, that PR runs a high likelihood of being rejected. \n\nNote, we use `make\nget_dev_tools` and `make update_dev_tools` for installing the linting tools.Please make sure to use `gofmt` before every commit - the easiest way to do this is have your editor run it for you upon saving a file.\n\n## Pull Requests\n\nTo accommodate review process we suggest that PRs are categorically broken up.\nIdeally each PR addresses only a single issue. Additionally, as much as possible\ncode refactoring and cleanup should be submitted as a separate PRs. And the feature branch `feature/XXX` should be synced with `develop` regularly.\n\n## Dependencies\n\nWe use [dep](https://github.com/golang/dep) to manage dependencies.\n\nSince some dependencies are not under our control, a third party may break our\nbuild, in which case we can fall back on `dep ensure` (or `make\nget_vendor_deps`).\n\n## Testing\n\nThe `Makefile` defines `make test` and includes its continuous integration. For any new comming feature, the `test_unit` / `test_cli` and `test_lcd` must be provided.\n\nWe expect tests to use `require` or `assert` rather than `t.Skip` or `t.Fail`,unless there is a reason to do otherwise.\n\n### PR Targeting\n\nEnsure that you base and target your PR on the correct branch:\n\n- `release/vxx.yy` for a merge into a release candidate\n- `master` for a merge of a release\n- `develop` in the usual case\n\nAll feature additions should be targeted against `feature/XXX`. Bug fixes for an outstanding release candidate\nshould be targeted against the release candidate branch. Release candidate branches themselves should be the\nonly pull requests targeted directly against master.\n\n### Development Procedure\n\n- the latest state of development is on `develop`\n- `develop` must never fail `make test`\n- no --force onto `develop` (except when reverting a broken commit, which should seldom happen)\n\n### Pull Merge Procedure\n\n- ensure `feature/XXX` is rebased on `develop`\n- ensure pull branch is rebased on `feature/XXX`\n- run `make test` to ensure that all tests pass\n- merge pull request\n- push `feature/XXX` into `develop` regularly\n\n### Release Procedure\n\n- start on `develop`\n- prepare changelog/release issue\n- bump versions\n- push to `release-vX.X.X` to run CI\n- merge to master\n- merge master back to develop\n\n### Hotfix Procedure\n\n- start on `release-vX.X.X`\n- make the required changes\n  - these changes should be small and an absolute necessity\n  - add a note to CHANGELOG.md\n- bump versions\n- merge `release-vX.X.X` to master if necessary\n- merge `release-vX.X.X` to develop if necessary\n"
  },
  {
    "path": "Dockerfile",
    "content": "#\n# Build image: docker build -t irisnet/irishub:v2.1.0 --build-arg EVM_CHAIN_ID=6688 .\n#\nFROM golang:1.22-alpine as builder\n\nARG EVM_CHAIN_ID\n\n# Set up dependencies\nENV PACKAGES make gcc git libc-dev bash linux-headers eudev-dev build-base\n\nWORKDIR /irishub\n\n# Add source files\nCOPY . .\n\n# Install minimum necessary dependencies\nRUN apk add --no-cache $PACKAGES\n\nRUN EVM_CHAIN_ID=$EVM_CHAIN_ID make build\n\n# ----------------------------\n\nFROM alpine:3.18\n\n# p2p port\nEXPOSE 26656\n# rpc port\nEXPOSE 26657\n# metrics port\nEXPOSE 26660\n\nCOPY --from=builder /irishub/build/ /usr/local/bin/"
  },
  {
    "path": "LICENSE",
    "content": "                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2017 IRIS Foundation Ltd.\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Makefile",
    "content": "#!/usr/bin/make -f\n\nPACKAGES_SIMTEST=$(shell go list ./... | grep '/simulation')\nPACKAGES_UNITTEST=$(shell go list ./... | grep -v '/simulation' | grep -v '/cli_test')\nVERSION := $(shell echo $(shell git describe --tags) | sed 's/^v//')\nCOMMIT := $(shell git log -1 --format='%H')\nLEDGER_ENABLED ?= true\nBINDIR ?= $(GOPATH)/bin\nSDK_PACK := $(shell go list -m github.com/cosmos/cosmos-sdk | sed  's/ /\\@/g')\nNetworkType := $(shell if [ -z ${NetworkType} ]; then echo \"mainnet\"; else echo ${NetworkType}; fi)\nCURRENT_DIR = $(shell pwd)\nPROJECT_NAME = $(shell git remote get-url origin | xargs basename -s .git)\nDOCKER := $(shell which docker)\n\n# default mainnet EVM_CHAIN_ID\nEVM_CHAIN_ID ?= 6688\n\nexport GO111MODULE = on\n\n# process build tags\n\nbuild_tags = netgo\nifeq ($(LEDGER_ENABLED),true)\n  ifeq ($(OS),Windows_NT)\n    GCCEXE = $(shell where gcc.exe 2> NUL)\n    ifeq ($(GCCEXE),)\n      $(error gcc.exe not installed for ledger support, please install or set LEDGER_ENABLED=false)\n    else\n      build_tags += ledger\n    endif\n  else\n    UNAME_S = $(shell uname -s)\n    ifeq ($(UNAME_S),OpenBSD)\n      $(warning OpenBSD detected, disabling ledger support (https://github.com/cosmos/cosmos-sdk/issues/1988))\n    else\n      GCC = $(shell command -v gcc 2> /dev/null)\n      ifeq ($(GCC),)\n        $(error gcc not installed for ledger support, please install or set LEDGER_ENABLED=false)\n      else\n        build_tags += ledger\n      endif\n    endif\n  endif\nendif\n\nifeq ($(WITH_CLEVELDB),yes)\n  build_tags += gcc\nendif\nbuild_tags += $(BUILD_TAGS)\nbuild_tags := $(strip $(build_tags))\n\nwhitespace :=\nwhitespace += $(whitespace)\ncomma := ,\nbuild_tags_comma_sep := $(subst $(whitespace),$(comma),$(build_tags))\n\n# process linker flags\n\nldflags = -X github.com/cosmos/cosmos-sdk/version.Name=iris \\\n\t\t  -X github.com/cosmos/cosmos-sdk/version.AppName=iris \\\n\t\t  -X github.com/cosmos/cosmos-sdk/version.Version=$(VERSION) \\\n\t\t  -X github.com/cosmos/cosmos-sdk/version.Commit=$(COMMIT) \\\n\t\t  -X github.com/irisnet/irishub/v4/types.EIP155ChainID=$(EVM_CHAIN_ID) \\\n\t\t  -X \"github.com/cosmos/cosmos-sdk/version.BuildTags=$(build_tags_comma_sep)\"\n\nifeq ($(WITH_CLEVELDB),yes)\n  ldflags += -X github.com/cosmos/cosmos-sdk/types.DBBackend=cleveldb\nendif\nldflags += $(LDFLAGS)\nldflags := $(strip $(ldflags))\n\nBUILD_FLAGS := -tags \"$(build_tags)\" -ldflags '$(ldflags)'\n\n# The below include contains the tools target.\n\nall: tools install lint\n\n# The below include contains the tools.\ninclude contrib/devtools/Makefile\n\nbuild: check-evm-chain-id go.sum\nifeq ($(OS),Windows_NT)\n\t@go build $(BUILD_FLAGS) -o build/iris.exe ./cmd/iris\nelse\n\t@go build $(BUILD_FLAGS) -o build/iris ./cmd/iris\nendif\n\nbuild-linux: check-evm-chain-id go.sum\n\tLEDGER_ENABLED=false GOOS=linux GOARCH=amd64 $(MAKE) build\n\nbuild-all-binaries: check-evm-chain-id go.sum\n\tLEDGER_ENABLED=false GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build $(BUILD_FLAGS) -o build/iris-linux-amd64 ./cmd/iris\n\tLEDGER_ENABLED=false GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc go build $(BUILD_FLAGS) -o build/iris-linux-arm64 ./cmd/iris\n\nbuild-contract-tests-hooks:\nifeq ($(OS),Windows_NT)\n\tgo build -mod=readonly $(BUILD_FLAGS) -o build/contract_tests.exe ./cmd/contract_tests\nelse\n\tgo build -mod=readonly $(BUILD_FLAGS) -o build/contract_tests ./cmd/contract_tests\nendif\n\ninstall: check-evm-chain-id go.sum\n\t@go install $(BUILD_FLAGS) ./cmd/iris\n\ncheck-evm-chain-id:\n\t@echo \"note: EVM_CHAIN_ID is $(EVM_CHAIN_ID)\"\n\nupdate-swagger-docs: statik proto-swagger-gen\n\t$(BINDIR)/statik -src=client/lite/swagger-ui -dest=lite -f -m\n\t@if [ -n \"$(git status --porcelain)\" ]; then \\\n        echo \"\\033[91mSwagger docs are out of sync!!!\\033[0m\";\\\n        exit 1;\\\n    else \\\n    \techo \"\\033[92mSwagger docs are in sync\\033[0m\";\\\n    fi\n.PHONY: update-swagger-docs\n\n########################################\n### Tools & dependencies\n\ngo-mod-cache: go.sum\n\t@echo \"--> Download go modules to local cache\"\n\t@go mod download\n\ngo.sum: go.mod\n\t@echo \"--> Ensure dependencies have not been modified\"\n\t@go mod verify\n\ndraw-deps:\n\t@# requires brew install graphviz or apt-get install graphviz\n\tgo get github.com/RobotsAndPencils/goviz\n\t@goviz -i ./cmd/iris -d 2 | dot -Tpng -o dependency-graph.png\n\nclean:\n\trm -rf snapcraft-local.yaml build/ tmp-swagger-gen/\n\ndistclean: clean\n\trm -rf vendor/\n\n###############################################################################\n###                                Protobuf                                 ###\n###############################################################################\n\nprotoVer=0.13.0\nprotoImageName=ghcr.io/cosmos/proto-builder:$(protoVer)\nprotoImage=$(DOCKER) run --rm -v $(CURDIR):/workspace --workdir /workspace $(protoImageName)\n\nproto-all: proto-format proto-lint proto-gen\n\nproto-gen:\n\t@echo \"Generating Protobuf files\"\n\t@$(protoImage) sh ./scripts/protocgen.sh\n\nproto-swagger-gen:\n\t@echo \"Generating Protobuf Swagger\"\n\t@$(protoImage) sh ./scripts/protoc-swagger-gen.sh\n\nproto-format:\n\t@$(protoImage) find ./ -name \"*.proto\" -exec clang-format -i {} \\;\n\nproto-lint:\n\t@$(protoImage) buf lint --error-format=json\n\n########################################\n### Testing\n\n\ntest: test-unit\ntest-all: test-race test-cover\n\ntest-unit:\n\t@VERSION=$(VERSION) go test -mod=readonly -tags='ledger test_ledger_mock' ${PACKAGES_UNITTEST}\n\ntest-sim-nondeterminism-fast:\n\t@echo \"Running non-determinism test...\"\n\t@cd ${CURRENT_DIR}/app && go test -mod=readonly -run TestAppStateDeterminism -Enabled=true \\\n\t\t-NumBlocks=10 -BlockSize=200 -Commit=true -Period=0 -v -timeout 24h\n\ntest-sim-import-export: runsim\n\t@echo \"Running application import/export simulation. This may take several minutes...\"\n\t@cd ${CURRENT_DIR}/app && $(BINDIR)/runsim -Jobs=4 -SimAppPkg=. -ExitOnFail 50 5 TestAppImportExport\n\ntest-sim-after-import: runsim\n\t@echo \"Running application simulation-after-import. This may take several minutes...\"\n\t@cd ${CURRENT_DIR}/app && $(BINDIR)/runsim -Jobs=4 -SimAppPkg=. -ExitOnFail 50 5 TestAppSimulationAfterImport\n\ntest-race:\n\t@VERSION=$(VERSION) go test -mod=readonly -race -tags='ledger test_ledger_mock' ./...\n\ntest-cover:\n\t@go test -mod=readonly -timeout 30m -race -coverprofile=coverage.txt -covermode=atomic -tags='ledger test_ledger_mock' ./...\n\nlint: golangci-lint\n\tgolangci-lint run\n\tfind . -name '*.go' -type f -not -path \"./vendor*\" -not -path \"*.git*\" -not -path \"./client/lite/statik/statik.go\" -not -path \"*.pb.go\" | xargs gofmt -d -s\n\tgo mod verify\n\nformat:\n\tfind . -name '*.go' -type f -not -path \"./vendor*\" -not -path \"*.git*\" -not -path \"./client/lite/statik/statik.go\" -not -path \"*.pb.go\" | xargs gofmt -w -s\n\tfind . -name '*.go' -type f -not -path \"./vendor*\" -not -path \"*.git*\" -not -path \"./client/lite/statik/statik.go\" -not -path \"*.pb.go\" | xargs misspell -w\n\tfind . -name '*.go' -type f -not -path \"./vendor*\" -not -path \"*.git*\" -not -path \"./client/lite/statik/statik.go\" -not -path \"*.pb.go\" | xargs goimports -w -local github.com/irisnet/irishub/v4\n\nbenchmark:\n\t@go test -mod=readonly -bench=. ./...\n\n\n########################################\n### Local validator nodes using docker and docker-compose\n\ntestnet-init:\n\t@if ! [ -f build/nodecluster/node0/iris/config/genesis.json ]; then docker run --rm -v $(CURDIR)/build:/home irisnet/irishub iris testnet --v 4 --output-dir /home/nodecluster --chain-id irishub-test --keyring-backend test --starting-ip-address 192.168.10.2 ; fi\n\t@echo \"To install jq command, please refer to this page: https://stedolan.github.io/jq/download/\"\n\t@jq '.app_state.auth.accounts+= [{\"@type\":\"/cosmos.auth.v1beta1.BaseAccount\",\"address\":\"iaa1ljemm0yznz58qxxs8xyak7fashcfxf5lgl4zjx\",\"pub_key\":null,\"account_number\":\"0\",\"sequence\":\"0\"}] | .app_state.bank.balances+= [{\"address\":\"iaa1ljemm0yznz58qxxs8xyak7fashcfxf5lgl4zjx\",\"coins\":[{\"denom\":\"uiris\",\"amount\":\"1000000000000\"}]}]' build/nodecluster/node0/iris/config/genesis.json > build/genesis_temp.json ;\n\t@sudo cp build/genesis_temp.json build/nodecluster/node0/iris/config/genesis.json\n\t@sudo cp build/genesis_temp.json build/nodecluster/node1/iris/config/genesis.json\n\t@sudo cp build/genesis_temp.json build/nodecluster/node2/iris/config/genesis.json\n\t@sudo cp build/genesis_temp.json build/nodecluster/node3/iris/config/genesis.json\n\t@rm build/genesis_temp.json\n\t@echo \"Faucet address: iaa1ljemm0yznz58qxxs8xyak7fashcfxf5lgl4zjx\" ;\n\t@echo \"Faucet coin amount: 1000000000000uiris\"\n\t@echo \"Faucet key seed: tube lonely pause spring gym veteran know want grid tired taxi such same mesh charge orient bracket ozone concert once good quick dry boss\"\n\ntestnet-start:\n\tdocker-compose up -d\n\ntestnet-stop:\n\tdocker-compose down\n\ntestnet-clean:\n\tdocker-compose down\n\tsudo rm -rf build/*\n\n\n########################################\n### Test ibc nft-transfer\ninit-golang-rly: kill-dev install\n\t@echo \"Initializing both blockchains...\"\n\t./network/init.sh\n\t./network/start.sh\n\t@echo \"Initializing relayer...\"\n\t./network/relayer/interchain-nft-config/rly.sh\n\nstart: \n\t@echo \"Starting up test network\"\n\t./network/start.sh\n\nstart-rly:\n\t./network/hermes/start.sh\n\nkill-dev:\n\t@echo \"Killing nftd and removing previous data\"\n\t-@rm -rf ./data\n\t-@killall nftd 2>/dev/null\n"
  },
  {
    "path": "README.md",
    "content": "# IRIShub\n\n![Banner](https://raw.githubusercontent.com/irisnet/irishub/master/docs/pics/iris.jpg)\n\n[![License](https://img.shields.io/github/license/irisnet/irishub.svg)](https://github.com/irisnet/irishub/blob/master/LICENSE)\n[![Version](https://img.shields.io/github/tag/irisnet/irishub.svg)](https://github.com/irisnet/irishub/releases)\n[![Go Report Card](https://goreportcard.com/badge/github.com/irisnet/irishub)](https://goreportcard.com/report/github.com/irisnet/irishub)\n[![Forum](https://img.shields.io/discourse/https/forum.irisnet.org/topics.svg)](https://forum.irisnet.org/)\n\nIRIS network (a.k.a. IRISnet) aims to establish a technology foundation to facilitate construction of next-generation distributed applications. By incorporating a comprehensive service infrastructure and an enhanced IBC protocol into the Tendermint & Cosmos stack, IRISnet enables service interoperability as well as token transfers across an internet of blockchains.\nAs the centerpiece of IRISnet, IRIS Hub (a.k.a. IRIShub) will be the first regional hub connecting to the main Cosmos Hub, thus making IRISnet an inseparable part of the whole Cosmos network.\n\n## IRIS Hub Mainnet\n\nTo join the mainnet, follow [this guide](https://www.irisnet.org/docs/get-started/mainnet.html).\n\n## Install\n\nSee the [install instructions](https://www.irisnet.org/docs/get-started/install.html).\n\n## Resources\n\n* Explorer: <https://irishub.iobscan.io/>\n* Discord: <https://discord.gg/rUVw3RWfKp>\n\n## How To Contribute\n\nSee the [contributing](./CONTRIBUTING.md).\n"
  },
  {
    "path": "RELEASE.md",
    "content": "# v4.0.3\n\n## What's Changed\n* bump cometbft from v0.38.15 to v0.38.21 by @oncloudit in https://github.com/irisnet/irishub/pull/2999\n* bump ubuntu in GitHub Actions from 20.04 to 22.04 by @oncloudit in https://github.com/irisnet/irishub/pull/3007\n\n**Full Changelog**: https://github.com/irisnet/irishub/compare/v4.0.1...v4.0.3\n"
  },
  {
    "path": "app/ante/ante.go",
    "content": "package ante\n\nimport (\n\terrorsmod \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\terrortypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n\tauthante \"github.com/cosmos/cosmos-sdk/x/auth/ante\"\n\n\tethante \"github.com/evmos/ethermint/app/ante\"\n)\n\n// NewAnteHandler returns an ante handler responsible for attempting to route an\n// Ethereum or SDK transaction to an internal ante handler for performing\n// transaction-level processing (e.g. fee payment, signature verification) before\n// being passed onto it's respective handler.\nfunc NewAnteHandler(options HandlerOptions) sdk.AnteHandler {\n\treturn func(\n\t\tctx sdk.Context, tx sdk.Tx, sim bool,\n\t) (newCtx sdk.Context, err error) {\n\t\tvar anteHandler sdk.AnteHandler\n\n\t\tdefer ethante.Recover(ctx.Logger(), &err)\n\n\t\ttxWithExtensions, ok := tx.(authante.HasExtensionOptionsTx)\n\t\tif ok {\n\t\t\topts := txWithExtensions.GetExtensionOptions()\n\t\t\tif len(opts) > 0 {\n\t\t\t\tswitch typeURL := opts[0].GetTypeUrl(); typeURL {\n\t\t\t\tcase \"/ethermint.evm.v1.ExtensionOptionsEthereumTx\":\n\t\t\t\t\t// handle as *evmtypes.MsgEthereumTx\n\t\t\t\t\tanteHandler = newEthAnteHandler(options)\n\t\t\t\tcase \"/ethermint.types.v1.ExtensionOptionsWeb3Tx\":\n\t\t\t\t\t// handle as normal Cosmos SDK tx, except signature is checked for EIP712 representation\n\t\t\t\t\tanteHandler = newCosmosAnteHandlerEip712(options)\n\t\t\t\tdefault:\n\t\t\t\t\treturn ctx, errorsmod.Wrapf(\n\t\t\t\t\t\terrortypes.ErrUnknownExtensionOptions,\n\t\t\t\t\t\t\"rejecting tx with unsupported extension option: %s\", typeURL,\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\treturn anteHandler(ctx, tx, sim)\n\t\t\t}\n\t\t}\n\n\t\t// handle as totally normal Cosmos SDK tx\n\t\tswitch tx.(type) {\n\t\tcase sdk.Tx:\n\t\t\tanteHandler = newCosmosAnteHandler(options)\n\t\tdefault:\n\t\t\treturn ctx, errorsmod.Wrapf(errortypes.ErrUnknownRequest, \"invalid transaction type: %T\", tx)\n\t\t}\n\n\t\treturn anteHandler(ctx, tx, sim)\n\t}\n}\n"
  },
  {
    "path": "app/ante/decorators.go",
    "content": "package ante\n\nimport (\n\t\"strings\"\n\n\tsdkerrors \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\terrortypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n\tgovv1 \"github.com/cosmos/cosmos-sdk/x/gov/types/v1\"\n\tibctransfertypes \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/types\"\n\n\tcoinswaptypes \"mods.irisnet.org/modules/coinswap/types\"\n\tservicetypes \"mods.irisnet.org/modules/service/types\"\n\ttokenkeeper \"mods.irisnet.org/modules/token/keeper\"\n\ttokentypesv1 \"mods.irisnet.org/modules/token/types/v1\"\n\ttokentypesv1beta1 \"mods.irisnet.org/modules/token/types/v1beta1\"\n)\n\n// ValidateTokenDecorator is responsible for restricting the token participation of the swap prefix\ntype ValidateTokenDecorator struct {\n\ttk tokenkeeper.Keeper\n}\n\n// NewValidateTokenDecorator returns an instance of ValidateTokenDecorator\nfunc NewValidateTokenDecorator(tk tokenkeeper.Keeper) ValidateTokenDecorator {\n\treturn ValidateTokenDecorator{\n\t\ttk: tk,\n\t}\n}\n\n// AnteHandle checks the transaction\nfunc (vtd ValidateTokenDecorator) AnteHandle(\n\tctx sdk.Context,\n\ttx sdk.Tx,\n\tsimulate bool,\n\tnext sdk.AnteHandler,\n) (sdk.Context, error) {\n\tfor _, msg := range tx.GetMsgs() {\n\t\tswitch msg := msg.(type) {\n\t\tcase *ibctransfertypes.MsgTransfer:\n\t\t\tif containSwapCoin(msg.Token) {\n\t\t\t\treturn ctx, sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"can't transfer coinswap liquidity tokens through the IBC module\")\n\t\t\t}\n\t\tcase *tokentypesv1.MsgBurnToken:\n\t\t\tif _, err := vtd.tk.GetToken(ctx, msg.Coin.Denom); err != nil {\n\t\t\t\treturn ctx, sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"burnt failed, only native tokens can be burnt\")\n\t\t\t}\n\t\tcase *tokentypesv1beta1.MsgBurnToken:\n\t\t\tif _, err := vtd.tk.GetToken(ctx, msg.Symbol); err != nil {\n\t\t\t\treturn ctx, sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"burnt failed, only native tokens can be burnt\")\n\t\t\t}\n\t\tcase *govv1.MsgSubmitProposal:\n\t\t\tif containSwapCoin(msg.InitialDeposit...) {\n\t\t\t\treturn ctx, sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"can't deposit coinswap liquidity token for proposal\")\n\t\t\t}\n\t\tcase *govv1.MsgDeposit:\n\t\t\tif containSwapCoin(msg.Amount...) {\n\t\t\t\treturn ctx, sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"can't deposit coinswap liquidity token for proposal\")\n\t\t\t}\n\t\t}\n\t}\n\treturn next(ctx, tx, simulate)\n}\n\n// ValidateServiceDecorator is responsible for checking the permission to execute MsgCallService\ntype ValidateServiceDecorator struct {\n\tSimulateTest bool\n}\n\n// NewValidateServiceDecorator returns an instance of ServiceAuthDecorator\nfunc NewValidateServiceDecorator(simulateTest bool) ValidateServiceDecorator {\n\treturn ValidateServiceDecorator{\n\t\tSimulateTest: simulateTest,\n\t}\n}\n\n// AnteHandle checks the transaction\nfunc (vsd ValidateServiceDecorator) AnteHandle(\n\tctx sdk.Context,\n\ttx sdk.Tx,\n\tsimulate bool,\n\tnext sdk.AnteHandler,\n) (sdk.Context, error) {\n\tif vsd.SimulateTest {\n\t\treturn next(ctx, tx, simulate)\n\t}\n\n\tfor _, msg := range tx.GetMsgs() {\n\t\tswitch msg := msg.(type) {\n\t\tcase *servicetypes.MsgCallService:\n\t\t\tif msg.Repeated {\n\t\t\t\treturn ctx, sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"currently does not support to create repeatable service invocation\")\n\t\t\t}\n\t\t}\n\t}\n\n\treturn next(ctx, tx, simulate)\n}\n\nfunc containSwapCoin(coins ...sdk.Coin) bool {\n\tfor _, coin := range coins {\n\t\tif strings.HasPrefix(coin.Denom, coinswaptypes.LptTokenPrefix) {\n\t\t\treturn true\n\t\t}\n\t}\n\treturn false\n}\n"
  },
  {
    "path": "app/ante/handler_options.go",
    "content": "package ante\n\nimport (\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth/ante\"\n\tauthkeeper \"github.com/cosmos/cosmos-sdk/x/auth/keeper\"\n\tbankkeeper \"github.com/cosmos/cosmos-sdk/x/bank/keeper\"\n\n\tibcante \"github.com/cosmos/ibc-go/v8/modules/core/ante\"\n\tibckeeper \"github.com/cosmos/ibc-go/v8/modules/core/keeper\"\n\n\tethante \"github.com/evmos/ethermint/app/ante\"\n\n\toraclekeeper \"mods.irisnet.org/modules/oracle/keeper\"\n\ttokenkeeper \"mods.irisnet.org/modules/token/keeper\"\n\n\tguardiankeeper \"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n)\n\n// HandlerOptions extend the SDK's AnteHandler options by requiring the IBC\n// channel keeper.\ntype HandlerOptions struct {\n\tante.HandlerOptions\n\tBankKeeper           bankkeeper.Keeper\n\tAccountKeeper        authkeeper.AccountKeeper\n\tIBCKeeper            *ibckeeper.Keeper\n\tTokenKeeper          tokenkeeper.Keeper\n\tOracleKeeper         oraclekeeper.Keeper\n\tGuardianKeeper       guardiankeeper.Keeper\n\tEvmKeeper            ethante.EVMKeeper\n\tFeeMarketKeeper      ethante.FeeMarketKeeper\n\tBypassMinFeeMsgTypes []string\n\tMaxTxGasWanted       uint64\n\tSimulationTest       bool\n}\n\n// newCosmosAnteHandler creates the default ante handler for Ethereum transactions\nfunc newEthAnteHandler(options HandlerOptions) sdk.AnteHandler {\n\treturn sdk.ChainAnteDecorators(\n\t\tethante.NewEthSetUpContextDecorator(\n\t\t\toptions.EvmKeeper,\n\t\t), // outermost AnteDecorator. SetUpContext must be called first\n\t\tethante.NewEthMempoolFeeDecorator(\n\t\t\toptions.EvmKeeper,\n\t\t), // Check eth effective gas price against the node's minimal-gas-prices config\n\t\tethante.NewEthMinGasPriceDecorator(\n\t\t\toptions.FeeMarketKeeper,\n\t\t\toptions.EvmKeeper,\n\t\t), // Check eth effective gas price against the global MinGasPrice\n\t\tethante.NewEthValidateBasicDecorator(options.EvmKeeper),\n\t\tethante.NewEthSigVerificationDecorator(options.EvmKeeper),\n\t\tethante.NewEthAccountVerificationDecorator(options.AccountKeeper, options.EvmKeeper),\n\t\tethante.NewEthFeeGrantValidator(options.EvmKeeper, options.FeegrantKeeper),\n\t\tethante.NewCanTransferDecorator(options.EvmKeeper),\n\t\tethante.NewEthGasConsumeDecorator(options.EvmKeeper, options.MaxTxGasWanted),\n\t\tethante.NewEthIncrementSenderSequenceDecorator(options.AccountKeeper),\n\t\tethante.NewGasWantedDecorator(options.EvmKeeper, options.FeeMarketKeeper),\n\t\tethante.NewEthEmitEventDecorator(\n\t\t\toptions.EvmKeeper,\n\t\t), // emit eth tx hash and index at the very last ante handler.\n\t)\n}\n\n// newCosmosAnteHandler creates the default ante handler for Cosmos transactions\nfunc newCosmosAnteHandler(options HandlerOptions) sdk.AnteHandler {\n\treturn sdk.ChainAnteDecorators(\n\t\tRejectMessagesDecorator{},\n\t\tante.NewSetUpContextDecorator(), // outermost AnteDecorator. SetUpContext must be called first\n\t\tante.NewExtensionOptionsDecorator(options.ExtensionOptionChecker),\n\t\tante.NewValidateBasicDecorator(),\n\t\tante.NewTxTimeoutHeightDecorator(),\n\t\tante.NewValidateMemoDecorator(options.AccountKeeper),\n\t\tante.NewConsumeGasForTxSizeDecorator(options.AccountKeeper),\n\t\tante.NewDeductFeeDecorator(\n\t\t\toptions.AccountKeeper,\n\t\t\toptions.BankKeeper,\n\t\t\toptions.FeegrantKeeper,\n\t\t\toptions.TxFeeChecker,\n\t\t),\n\t\tante.NewSetPubKeyDecorator(\n\t\t\toptions.AccountKeeper,\n\t\t), // SetPubKeyDecorator must be called before all signature verification decorators\n\t\tante.NewValidateSigCountDecorator(options.AccountKeeper),\n\t\tante.NewSigGasConsumeDecorator(options.AccountKeeper, DefaultSigVerificationGasConsumer),\n\t\tante.NewSigVerificationDecorator(options.AccountKeeper, options.SignModeHandler),\n\t\tNewValidateTokenDecorator(options.TokenKeeper),\n\t\ttokenkeeper.NewValidateTokenFeeDecorator(options.TokenKeeper, options.BankKeeper),\n\t\toraclekeeper.NewValidateOracleAuthDecorator(options.OracleKeeper, options.GuardianKeeper),\n\t\tNewValidateServiceDecorator(options.SimulationTest),\n\t\tante.NewIncrementSequenceDecorator(options.AccountKeeper),\n\t\tibcante.NewRedundantRelayDecorator(options.IBCKeeper),\n\t)\n}\n\n// newCosmosAnteHandlerEip712 creates the ante handler for transactions signed with EIP712\nfunc newCosmosAnteHandlerEip712(options HandlerOptions) sdk.AnteHandler {\n\treturn sdk.ChainAnteDecorators(\n\t\tethante.RejectMessagesDecorator{}, // reject MsgEthereumTxs\n\t\tante.NewSetUpContextDecorator(),\n\t\tante.NewValidateBasicDecorator(),\n\t\tante.NewTxTimeoutHeightDecorator(),\n\t\tethante.NewMinGasPriceDecorator(options.FeeMarketKeeper, options.EvmKeeper),\n\t\tante.NewValidateMemoDecorator(options.AccountKeeper),\n\t\tante.NewConsumeGasForTxSizeDecorator(options.AccountKeeper),\n\t\tante.NewDeductFeeDecorator(\n\t\t\toptions.AccountKeeper,\n\t\t\toptions.BankKeeper,\n\t\t\toptions.FeegrantKeeper,\n\t\t\toptions.TxFeeChecker,\n\t\t),\n\t\t// SetPubKeyDecorator must be called before all signature verification decorators\n\t\tante.NewSetPubKeyDecorator(options.AccountKeeper),\n\t\tante.NewValidateSigCountDecorator(options.AccountKeeper),\n\t\tante.NewSigGasConsumeDecorator(options.AccountKeeper, options.SigGasConsumer),\n\t\t// Note: signature verification uses EIP instead of the cosmos signature validator\n\t\tethante.NewLegacyEip712SigVerificationDecorator(\n\t\t\toptions.AccountKeeper,\n\t\t\toptions.SignModeHandler,\n\t\t),\n\t\tante.NewIncrementSequenceDecorator(options.AccountKeeper),\n\t\tibcante.NewRedundantRelayDecorator(options.IBCKeeper),\n\t\tethante.NewGasWantedDecorator(options.EvmKeeper, options.FeeMarketKeeper),\n\t)\n}\n"
  },
  {
    "path": "app/ante/reject_msgs.go",
    "content": "package ante\n\nimport (\n\terrorsmod \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\terrortypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n\tvestingtypes \"github.com/cosmos/cosmos-sdk/x/auth/vesting/types\"\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n)\n\n// RejectMessagesDecorator prevents invalid msg types from being executed\ntype RejectMessagesDecorator struct{}\n\n// AnteHandle rejects the following messages:\n// 1. Messages that requires ethereum-specific authentication.\n// For example `MsgEthereumTx` requires fee to be deducted in the antehandler in\n// order to perform the refund.\n// 2. Messages that creates vesting accounts.\nfunc (rmd RejectMessagesDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (newCtx sdk.Context, err error) {\n\tfor _, msg := range tx.GetMsgs() {\n\t\tswitch msg.(type) {\n\t\tcase *evmtypes.MsgEthereumTx:\n\t\t\treturn ctx, errorsmod.Wrapf(\n\t\t\t\terrortypes.ErrInvalidType,\n\t\t\t\t\"MsgEthereumTx needs to be contained within a tx with 'ExtensionOptionsEthereumTx' option\",\n\t\t\t)\n\n\t\tcase *vestingtypes.MsgCreateVestingAccount,\n\t\t\t*vestingtypes.MsgCreatePermanentLockedAccount,\n\t\t\t*vestingtypes.MsgCreatePeriodicVestingAccount:\n\t\t\treturn ctx, errorsmod.Wrap(\n\t\t\t\terrortypes.ErrInvalidType,\n\t\t\t\t\"currently doesn't support creating vesting account\")\n\t\t}\n\t}\n\treturn next(ctx, tx, simulate)\n}\n"
  },
  {
    "path": "app/ante/sigverify.go",
    "content": "package ante\n\nimport (\n\t\"fmt\"\n\n\tstoretypes \"cosmossdk.io/store/types\"\n\t\"github.com/cosmos/cosmos-sdk/crypto/types/multisig\"\n\t\"github.com/cosmos/cosmos-sdk/types/tx/signing\"\n\tauthante \"github.com/cosmos/cosmos-sdk/x/auth/ante\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\n\t\"github.com/evmos/ethermint/crypto/ethsecp256k1\"\n)\n\nconst (\n\tsecp256k1VerifyCost uint64 = 21000\n)\n\n// DefaultSigVerificationGasConsumer is the default implementation of SignatureVerificationGasConsumer. It consumes gas\n// for signature verification based upon the public key type. The cost is fetched from the given params and is matched\n// by the concrete type.\nfunc DefaultSigVerificationGasConsumer(\n\tmeter storetypes.GasMeter, sig signing.SignatureV2, params authtypes.Params,\n) error {\n\tpubkey := sig.PubKey\n\tswitch pubkey := pubkey.(type) {\n\tcase *ethsecp256k1.PubKey:\n\t\tmeter.ConsumeGas(secp256k1VerifyCost, \"ante verify: eth_secp256k1\")\n\t\treturn nil\n\n\tcase multisig.PubKey:\n\t\t// Multisig keys\n\t\tmultisignature, ok := sig.Data.(*signing.MultiSignatureData)\n\t\tif !ok {\n\t\t\treturn fmt.Errorf(\"expected %T, got, %T\", &signing.MultiSignatureData{}, sig.Data)\n\t\t}\n\t\treturn ConsumeMultisignatureVerificationGas(meter, multisignature, pubkey, params, sig.Sequence)\n\n\tdefault:\n\t\treturn authante.DefaultSigVerificationGasConsumer(meter, sig, params)\n\t}\n}\n\n// ConsumeMultisignatureVerificationGas consumes gas from a GasMeter for verifying a multisig pubkey signature\nfunc ConsumeMultisignatureVerificationGas(\n\tmeter storetypes.GasMeter, sig *signing.MultiSignatureData, pubkey multisig.PubKey,\n\tparams authtypes.Params, accSeq uint64,\n) error {\n\tsize := sig.BitArray.Count()\n\tsigIndex := 0\n\n\tfor i := 0; i < size; i++ {\n\t\tif !sig.BitArray.GetIndex(i) {\n\t\t\tcontinue\n\t\t}\n\t\tsigV2 := signing.SignatureV2{\n\t\t\tPubKey:   pubkey.GetPubKeys()[i],\n\t\t\tData:     sig.Signatures[sigIndex],\n\t\t\tSequence: accSeq,\n\t\t}\n\t\terr := DefaultSigVerificationGasConsumer(meter, sigV2, params)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsigIndex++\n\t}\n\n\treturn nil\n}\n"
  },
  {
    "path": "app/app.go",
    "content": "package app\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io\"\n\t\"os\"\n\n\tabci \"github.com/cometbft/cometbft/abci/types\"\n\ttmjson \"github.com/cometbft/cometbft/libs/json\"\n\ttmos \"github.com/cometbft/cometbft/libs/os\"\n\t\"github.com/spf13/cast\"\n\n\t\"cosmossdk.io/client/v2/autocli\"\n\t\"cosmossdk.io/core/appmodule\"\n\t\"cosmossdk.io/log\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\tdbm \"github.com/cosmos/cosmos-db\"\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/client/grpc/cmtservice\"\n\tnodeservice \"github.com/cosmos/cosmos-sdk/client/grpc/node\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/codec/types\"\n\t\"github.com/cosmos/cosmos-sdk/runtime\"\n\t\"github.com/cosmos/cosmos-sdk/server\"\n\t\"github.com/cosmos/cosmos-sdk/server/api\"\n\t\"github.com/cosmos/cosmos-sdk/server/config\"\n\tservertypes \"github.com/cosmos/cosmos-sdk/server/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/mempool\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\t\"github.com/cosmos/cosmos-sdk/types/msgservice\"\n\tsigtypes \"github.com/cosmos/cosmos-sdk/types/tx/signing\"\n\t\"github.com/cosmos/cosmos-sdk/version\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth/ante\"\n\tauthcodec \"github.com/cosmos/cosmos-sdk/x/auth/codec\"\n\tauthtx \"github.com/cosmos/cosmos-sdk/x/auth/tx\"\n\ttxmodule \"github.com/cosmos/cosmos-sdk/x/auth/tx/config\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/crisis\"\n\tgovtypes \"github.com/cosmos/cosmos-sdk/x/gov/types\"\n\t\"github.com/cosmos/gogoproto/proto\"\n\n\tsrvflags \"github.com/evmos/ethermint/server/flags\"\n\n\tirishubante \"github.com/irisnet/irishub/v4/app/ante\"\n\t\"github.com/irisnet/irishub/v4/app/keepers\"\n\t\"github.com/irisnet/irishub/v4/app/params\"\n\t\"github.com/irisnet/irishub/v4/app/rpc\"\n\t\"github.com/irisnet/irishub/v4/client/lite\"\n\tiristypes \"github.com/irisnet/irishub/v4/types\"\n)\n\nvar (\n\t_ runtime.AppI            = (*IrisApp)(nil)\n\t_ servertypes.Application = (*IrisApp)(nil)\n)\n\n// IrisApp extends an ABCI application, but with most of its parameters exported.\n// They are exported for convenience in creating helper functions, as object\n// capabilities aren't needed for testing.\ntype IrisApp struct {\n\t*baseapp.BaseApp\n\tkeepers.AppKeepers\n\n\tconfigurator      module.Configurator\n\tinterfaceRegistry types.InterfaceRegistry\n\tcodec             codec.Codec\n\ttxConfig          client.TxConfig\n\tlegacyAmino       *codec.LegacyAmino\n\n\t// the module manager\n\tmm *module.Manager\n\tbm module.BasicManager\n\n\t// simulation manager\n\tsm *module.SimulationManager\n}\n\n// NewIrisApp returns a reference to an initialized IrisApp.\nfunc NewIrisApp(\n\tlogger log.Logger,\n\tdb dbm.DB,\n\ttraceStore io.Writer,\n\tloadLatest bool,\n\tappOpts servertypes.AppOptions,\n\tbaseAppOptions ...func(*baseapp.BaseApp),\n) *IrisApp {\n\tencodingConfig := params.MakeEncodingConfig()\n\n\tappCodec := encodingConfig.Codec\n\tlegacyAmino := encodingConfig.LegacyAmino\n\tinterfaceRegistry := encodingConfig.InterfaceRegistry\n\ttxConfig := encodingConfig.TxConfig\n\n\t// Setup Mempool\n\tbaseAppOptions = append(baseAppOptions, NoOpMempoolOption())\n\n\tbApp := baseapp.NewBaseApp(\n\t\tiristypes.AppName,\n\t\tlogger,\n\t\tdb,\n\t\ttxConfig.TxDecoder(),\n\t\tbaseAppOptions...,\n\t)\n\tbApp.SetCommitMultiStoreTracer(traceStore)\n\tbApp.SetVersion(version.Version)\n\tbApp.SetInterfaceRegistry(interfaceRegistry)\n\n\tapp := &IrisApp{\n\t\tBaseApp:           bApp,\n\t\tcodec:             appCodec,\n\t\tinterfaceRegistry: interfaceRegistry,\n\t\ttxConfig:          txConfig,\n\t\tlegacyAmino:       legacyAmino,\n\t}\n\n\t// get skipUpgradeHeights from the app options\n\tskipUpgradeHeights := map[int64]bool{}\n\tfor _, h := range cast.ToIntSlice(appOpts.Get(server.FlagUnsafeSkipUpgrades)) {\n\t\tskipUpgradeHeights[int64(h)] = true\n\t}\n\n\t// Setup keepers\n\tapp.AppKeepers = keepers.New(\n\t\tappCodec,\n\t\tbApp,\n\t\tlegacyAmino,\n\t\tmaccPerms,\n\t\tapp.ModuleAccountAddrs(),\n\t\tapp.BlockedModuleAccountAddrs(),\n\t\tskipUpgradeHeights,\n\t\tcast.ToString(appOpts.Get(flags.FlagHome)),\n\t\tcast.ToUint(appOpts.Get(server.FlagInvCheckPeriod)),\n\t\tlogger,\n\t\tappOpts,\n\t)\n\n\t/****  Module Options ****/\n\tskipGenesisInvariants := false\n\topt := appOpts.Get(crisis.FlagSkipGenesisInvariants)\n\tif opt, ok := opt.(bool); ok {\n\t\tskipGenesisInvariants = opt\n\t}\n\n\t// NOTE: Any module instantiated in the module manager that is later modified\n\t// must be passed by reference here.\n\tapp.mm = module.NewManager(appModules(app, encodingConfig, skipGenesisInvariants)...)\n\tapp.bm = newBasicManagerFromManager(app)\n\n\tenabledSignModes := append([]sigtypes.SignMode(nil), authtx.DefaultSignModes...)\n\tenabledSignModes = append(enabledSignModes, sigtypes.SignMode_SIGN_MODE_TEXTUAL)\n\n\ttxConfigOpts := authtx.ConfigOptions{\n\t\tEnabledSignModes:           enabledSignModes,\n\t\tTextualCoinMetadataQueryFn: txmodule.NewBankKeeperCoinMetadataQueryFn(app.BankKeeper),\n\t}\n\n\ttxConfig, err := authtx.NewTxConfigWithOptions(\n\t\tappCodec,\n\t\ttxConfigOpts,\n\t)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tapp.txConfig = txConfig\n\n\t// NOTE: upgrade module is required to be prioritized\n\tapp.mm.SetOrderPreBlockers(\n\t\tupgradetypes.ModuleName,\n\t)\n\n\t// During begin block slashing happens after distr.BeginBlocker so that\n\t// there is nothing left over in the validator fee pool, so as to keep the\n\t// CanWithdrawInvariant invariant.\n\t// NOTE: staking module is required if HistoricalEntries param > 0\n\tapp.mm.SetOrderBeginBlockers(orderBeginBlockers()...)\n\tapp.mm.SetOrderEndBlockers(orderEndBlockers()...)\n\t// NOTE: The genutils module must occur after staking so that pools are\n\t// properly initialized with tokens from genesis accounts.\n\t// NOTE: The genutils module must also occur after auth so that it can access the params from auth.\n\t// NOTE: Capability module must occur first so that it can initialize any capabilities\n\t// so that other modules that want to create or claim capabilities afterwards in InitChain\n\t// can do so safely.\n\tapp.mm.SetOrderInitGenesis(orderInitBlockers()...)\n\tapp.mm.SetOrderExportGenesis(orderInitBlockers()...)\n\n\tapp.configurator = module.NewConfigurator(\n\t\tappCodec,\n\t\tapp.MsgServiceRouter(),\n\t\tapp.GRPCQueryRouter(),\n\t)\n\tapp.mm.RegisterInvariants(app.CrisisKeeper)\n\t// app.mm.RegisterRoutes(app.Router(), app.QueryRouter(), encodingConfig.Amino)\n\t// app.mm.RegisterServices(app.configurator)\n\tapp.RegisterServices()\n\n\t// create the simulation manager and define the order of the modules for deterministic simulations\n\t//\n\t// NOTE: this is not required apps that don't use the simulator for fuzz testing\n\t// transactions\n\tapp.sm = module.NewSimulationManager(\n\t\tsimulationModules(app, encodingConfig, skipGenesisInvariants)...)\n\n\tapp.sm.RegisterStoreDecoders()\n\n\t// initialize stores\n\tapp.MountKVStores(app.KvStoreKeys())\n\tapp.MountTransientStores(app.TransientStoreKeys())\n\tapp.MountMemoryStores(app.MemoryStoreKeys())\n\n\tmaxGasWanted := cast.ToUint64(appOpts.Get(srvflags.EVMMaxTxGasWanted))\n\n\tsimulationTest := false\n\topt = appOpts.Get(params.SimulationTest)\n\tif opt, ok := opt.(bool); ok {\n\t\tsimulationTest = opt\n\t}\n\n\tanteHandler := irishubante.NewAnteHandler(\n\t\tirishubante.HandlerOptions{\n\t\t\tHandlerOptions: ante.HandlerOptions{\n\t\t\t\tAccountKeeper:   app.AccountKeeper,\n\t\t\t\tBankKeeper:      app.BankKeeper,\n\t\t\t\tFeegrantKeeper:  app.FeeGrantKeeper,\n\t\t\t\tSignModeHandler: txConfig.SignModeHandler(),\n\t\t\t},\n\t\t\tAccountKeeper:        app.AccountKeeper,\n\t\t\tBankKeeper:           app.BankKeeper,\n\t\t\tIBCKeeper:            app.IBCKeeper,\n\t\t\tTokenKeeper:          app.TokenKeeper,\n\t\t\tOracleKeeper:         app.OracleKeeper,\n\t\t\tGuardianKeeper:       app.GuardianKeeper,\n\t\t\tEvmKeeper:            app.EvmKeeper,\n\t\t\tFeeMarketKeeper:      app.FeeMarketKeeper,\n\t\t\tBypassMinFeeMsgTypes: []string{},\n\t\t\tMaxTxGasWanted:       maxGasWanted,\n\t\t\tSimulationTest:       simulationTest,\n\t\t},\n\t)\n\n\tapp.Init()\n\tapp.SetAnteHandler(anteHandler)\n\tapp.SetInitChainer(app.InitChainer)\n\tapp.SetPreBlocker(app.PreBlocker)\n\tapp.SetBeginBlocker(app.BeginBlocker)\n\tapp.SetEndBlocker(app.EndBlocker)\n\tapp.RegisterUpgradePlans()\n\n\t// At startup, after all modules have been registered, check that all prot\n\t// annotations are correct.\n\tprotoFiles, err := proto.MergedRegistry()\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\terr = msgservice.ValidateProtoAnnotations(protoFiles)\n\tif err != nil {\n\t\t// Once we switch to using protoreflect-based antehandlers, we might\n\t\t// want to panic here instead of logging a warning.\n\t\tfmt.Fprintln(os.Stderr, err.Error())\n\t}\n\t\n\tif loadLatest {\n\t\tif err := app.LoadLatestVersion(); err != nil {\n\t\t\ttmos.Exit(err.Error())\n\t\t}\n\n\t\t// Initialize and seal the capability keeper so all persistent capabilities\n\t\t// are loaded in-memory and prevent any further modules from creating scoped\n\t\t// sub-keepers.\n\t\t// This must be done during creation of baseapp rather than in InitChain so\n\t\t// that in-memory capabilities get regenerated on app restart.\n\t\t// Note that since this reads from the store, we can only perform it when\n\t\t// `loadLatest` is set to true.\n\t\tapp.CapabilityKeeper.Seal()\n\t}\n\treturn app\n}\n\n// Name returns the name of the App\nfunc (app *IrisApp) Name() string { return app.BaseApp.Name() }\n\n// PreBlocker application updates every pre block\nfunc (app *IrisApp) PreBlocker(ctx sdk.Context, _ *abci.RequestFinalizeBlock) (*sdk.ResponsePreBlock, error) {\n\treturn app.mm.PreBlock(ctx)\n}\n\n// BeginBlocker application updates every begin block\nfunc (app *IrisApp) BeginBlocker(ctx sdk.Context) (sdk.BeginBlock, error) {\n\treturn app.mm.BeginBlock(ctx)\n}\n\n// EndBlocker application updates every end block\nfunc (app *IrisApp) EndBlocker(ctx sdk.Context) (sdk.EndBlock, error) {\n\treturn app.mm.EndBlock(ctx)\n}\n\n// InitChainer application update at chain initialization\nfunc (app *IrisApp) InitChainer(ctx sdk.Context, req *abci.RequestInitChain) (*abci.ResponseInitChain, error) {\n\tvar genesisState iristypes.GenesisState\n\tif err := tmjson.Unmarshal(req.AppStateBytes, &genesisState); err != nil {\n\t\treturn nil, err\n\t}\n\tif err := app.UpgradeKeeper.SetModuleVersionMap(ctx, app.mm.GetVersionMap()); err != nil {\n\t\treturn nil, err\n\t}\n\treturn app.mm.InitGenesis(ctx, app.codec, genesisState)\n}\n\n// LoadHeight loads a particular height\nfunc (app *IrisApp) LoadHeight(height int64) error {\n\treturn app.LoadVersion(height)\n}\n\n// ModuleAccountAddrs returns all the app's module account addresses.\nfunc (app *IrisApp) ModuleAccountAddrs() map[string]bool {\n\tmodAccAddrs := make(map[string]bool)\n\tfor acc := range maccPerms {\n\t\tmodAccAddrs[authtypes.NewModuleAddress(acc).String()] = true\n\t}\n\n\treturn modAccAddrs\n}\n\n// BlockedModuleAccountAddrs returns all the app's blocked module account\n// addresses.\nfunc (app *IrisApp) BlockedModuleAccountAddrs() map[string]bool {\n\tmodAccAddrs := app.ModuleAccountAddrs()\n\n\t// remove module accounts that are ALLOWED to received funds\n\tdelete(modAccAddrs, authtypes.NewModuleAddress(govtypes.ModuleName).String())\n\n\treturn modAccAddrs\n}\n\n// LegacyAmino returns SimApp's amino codec.\n//\n// NOTE: This is solely to be used for testing purposes as it may be desirable\n// for modules to register their own custom testing types.\nfunc (app *IrisApp) LegacyAmino() *codec.LegacyAmino {\n\treturn app.legacyAmino\n}\n\n// AppCodec returns IrisApp's app codec.\n//\n// NOTE: This is solely to be used for testing purposes as it may be desirable\n// for modules to register their own custom testing types.\nfunc (app *IrisApp) AppCodec() codec.Codec {\n\treturn app.codec\n}\n\n// InterfaceRegistry returns IrisApp's InterfaceRegistry\nfunc (app *IrisApp) InterfaceRegistry() types.InterfaceRegistry {\n\treturn app.interfaceRegistry\n}\n\n// EncodingConfig returns IrisApp's EncodingConfig\nfunc (app *IrisApp) EncodingConfig() params.EncodingConfig {\n\treturn params.EncodingConfig{\n\t\tInterfaceRegistry: app.interfaceRegistry,\n\t\tLegacyAmino:       app.legacyAmino,\n\t\tCodec:             app.codec,\n\t\tTxConfig:          app.txConfig,\n\t}\n}\n\n// SimulationManager implements the SimulationApp interface\nfunc (app *IrisApp) SimulationManager() *module.SimulationManager {\n\treturn app.sm\n}\n\n// BasicManager return the basic manager\nfunc (app *IrisApp) BasicManager() module.BasicManager {\n\treturn app.bm\n}\n\n// RegisterAPIRoutes registers all application module routes with the provided API server.\nfunc (app *IrisApp) RegisterAPIRoutes(apiSvr *api.Server, apiConfig config.APIConfig) {\n\tclientCtx := apiSvr.ClientCtx\n\t// Register new tx routes from grpc-gateway.\n\tauthtx.RegisterGRPCGatewayRoutes(clientCtx, apiSvr.GRPCGatewayRouter)\n\t// Register new tendermint queries routes from grpc-gateway.\n\tcmtservice.RegisterGRPCGatewayRoutes(clientCtx, apiSvr.GRPCGatewayRouter)\n\t// Register node gRPC service for grpc-gateway.\n\tnodeservice.RegisterGRPCGatewayRoutes(clientCtx, apiSvr.GRPCGatewayRouter)\n\t// Register grpc-gateway routes for all modules.\n\tapp.bm.RegisterGRPCGatewayRoutes(clientCtx, apiSvr.GRPCGatewayRouter)\n\n\t// register swagger API from root so that other applications can override easily\n\tif apiConfig.Swagger {\n\t\tlite.RegisterSwaggerAPI(clientCtx, apiSvr.Router)\n\t}\n}\n\n// RegisterServices implements the Application.RegisterTxService method.\nfunc (app *IrisApp) RegisterServices() {\n\tfor _, mod := range app.mm.Modules {\n\t\tm, ok := mod.(module.AppModule)\n\t\tif !ok {\n\t\t\tpanic(\"unable to cast mod into AppModule\")\n\t\t}\n\t\trpc.RegisterService(app.codec, m, app.configurator, app.AppKeepers)\n\t}\n}\n\n// RegisterTxService implements the Application.RegisterTxService method.\nfunc (app *IrisApp) RegisterTxService(clientCtx client.Context) {\n\tauthtx.RegisterTxService(\n\t\tapp.BaseApp.GRPCQueryRouter(),\n\t\tclientCtx,\n\t\tapp.BaseApp.Simulate,\n\t\tapp.interfaceRegistry,\n\t)\n}\n\n// RegisterTendermintService implements the Application.RegisterTendermintService method.\nfunc (app *IrisApp) RegisterTendermintService(clientCtx client.Context) {\n\tcmtservice.RegisterTendermintService(\n\t\tclientCtx,\n\t\tapp.BaseApp.GRPCQueryRouter(),\n\t\tapp.interfaceRegistry,\n\t\tapp.Query,\n\t)\n}\n\n// RegisterNodeService registers the node service.\n//\n// It takes a client context as a parameter and does not return anything.\nfunc (app *IrisApp) RegisterNodeService(clientCtx client.Context, c config.Config) {\n\tnodeservice.RegisterNodeService(clientCtx, app.GRPCQueryRouter(), c)\n}\n\n// DefaultGenesis returns a default genesis from the registered AppModuleBasic's.\nfunc (app *IrisApp) DefaultGenesis() map[string]json.RawMessage {\n\treturn app.bm.DefaultGenesis(app.AppCodec())\n}\n\n// Init initializes the IrisApp.\nfunc (app *IrisApp) Init() {\n\tiristypes.InjectCodec(app.legacyAmino, app.interfaceRegistry)\n}\n\n// AutoCliOpts returns the autocli options for the app.\nfunc (app *IrisApp) AutoCliOpts() autocli.AppOptions {\n\tmodules := make(map[string]appmodule.AppModule, 0)\n\tfor _, m := range app.mm.Modules {\n\t\tif moduleWithName, ok := m.(module.HasName); ok {\n\t\t\tmoduleName := moduleWithName.Name()\n\t\t\tif appModule, ok := moduleWithName.(appmodule.AppModule); ok {\n\t\t\t\tmodules[moduleName] = appModule\n\t\t\t}\n\t\t}\n\t}\n\n\treturn autocli.AppOptions{\n\t\tModules:               modules,\n\t\tAddressCodec:          authcodec.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix()),\n\t\tValidatorAddressCodec: authcodec.NewBech32Codec(sdk.GetConfig().GetBech32ValidatorAddrPrefix()),\n\t\tConsensusAddressCodec: authcodec.NewBech32Codec(sdk.GetConfig().GetBech32ConsensusAddrPrefix()),\n\t}\n}\n\n// NoOpMempoolOption returns a function that sets up a no-op mempool for the given BaseApp.\n//\n// The function takes a pointer to a BaseApp as a parameter and returns nothing.\nfunc NoOpMempoolOption() func(*baseapp.BaseApp) {\n\treturn func(app *baseapp.BaseApp) {\n\t\tmemPool := mempool.NoOpMempool{}\n\t\tapp.SetMempool(memPool)\n\t\thandler := baseapp.NewDefaultProposalHandler(memPool, app)\n\t\tapp.SetPrepareProposal(handler.PrepareProposalHandler())\n\t\tapp.SetProcessProposal(handler.ProcessProposalHandler())\n\t}\n}\n"
  },
  {
    "path": "app/encoding.go",
    "content": "package app\n\n// RegisterEncodingConfig registers concrete types on codec\n// func RegisterEncodingConfig() params.EncodingConfig {\n// \tencodingConfig := params.MakeEncodingConfig()\n// \tenccodec.RegisterLegacyAminoCodec(encodingConfig.Amino)\n// \tenccodec.RegisterInterfaces(encodingConfig.InterfaceRegistry)\n// \treturn encodingConfig\n// }\n"
  },
  {
    "path": "app/export.go",
    "content": "package app\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\tstoretypes \"cosmossdk.io/store/types\"\n\tservertypes \"github.com/cosmos/cosmos-sdk/server/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tslashingtypes \"github.com/cosmos/cosmos-sdk/x/slashing/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/staking\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\n\t\"mods.irisnet.org/modules/htlc\"\n\t\"mods.irisnet.org/modules/oracle\"\n\t\"mods.irisnet.org/modules/random\"\n\t\"mods.irisnet.org/modules/service\"\n)\n\n// ExportAppStateAndValidators exports the state of the application for a genesis file.\nfunc (app *IrisApp) ExportAppStateAndValidators(\n\tforZeroHeight bool, jailAllowedAddrs []string,\n\tmodulesToExport []string,\n) (servertypes.ExportedApp, error) {\n\t// as if they could withdraw from the start of the next block\n\tctx := app.NewContextLegacy(true, tmproto.Header{Height: app.LastBlockHeight()})\n\n\t// We export at last height + 1, because that's the height at which\n\t// Tendermint will start InitChain.\n\theight := app.LastBlockHeight() + 1\n\tif forZeroHeight {\n\t\theight = 0\n\t\tapp.prepForZeroHeightGenesis(ctx, jailAllowedAddrs)\n\t} else {\n\t\t// NOTE: service currently does not support non-ZeroHeight export\n\t\tservice.PrepForZeroHeightGenesis(ctx, app.ServiceKeeper)\n\t}\n\n\tgenState, err := app.mm.ExportGenesisForModules(ctx, app.codec, modulesToExport)\n\tif err != nil {\n\t\treturn servertypes.ExportedApp{}, err\n\t}\n\tappState, err := json.MarshalIndent(genState, \"\", \"  \")\n\tif err != nil {\n\t\treturn servertypes.ExportedApp{}, err\n\t}\n\n\tvalidators, err := staking.WriteValidators(ctx, app.StakingKeeper)\n\treturn servertypes.ExportedApp{\n\t\tAppState:        appState,\n\t\tValidators:      validators,\n\t\tHeight:          height,\n\t\tConsensusParams: app.BaseApp.GetConsensusParams(ctx),\n\t}, err\n}\n\n// prepare for fresh start at zero height\n// NOTE zero height genesis is a temporary feature which will be deprecated\n//\n//\tin favour of export at a block height\nfunc (app *IrisApp) prepForZeroHeightGenesis(ctx sdk.Context, jailAllowedAddrs []string) {\n\tapplyAllowedAddrs := false\n\n\t// check if there is a allowed address list\n\tif len(jailAllowedAddrs) > 0 {\n\t\tapplyAllowedAddrs = true\n\t}\n\n\tallowedAddrsMap := make(map[string]bool)\n\n\tfor _, addr := range jailAllowedAddrs {\n\t\t_, err := app.InterfaceRegistry().SigningContext().ValidatorAddressCodec().StringToBytes(addr)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\tallowedAddrsMap[addr] = true\n\t}\n\n\t/* Just to be safe, assert the invariants on current state. */\n\tapp.CrisisKeeper.AssertInvariants(ctx)\n\n\t/* Handle fee distribution state. */\n\n\t// withdraw all validator commission\n\terr := app.StakingKeeper.IterateValidators(ctx, func(_ int64, val stakingtypes.ValidatorI) (stop bool) {\n\t\tvalBz, err := app.StakingKeeper.ValidatorAddressCodec().StringToBytes(val.GetOperator())\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\t_, _ = app.DistrKeeper.WithdrawValidatorCommission(ctx, valBz)\n\t\treturn false\n\t})\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\t// withdraw all delegator rewards\n\tdels, err := app.StakingKeeper.GetAllDelegations(ctx)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\tfor _, delegation := range dels {\n\t\tvalAddr, err := sdk.ValAddressFromBech32(delegation.ValidatorAddress)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\n\t\tdelAddr := sdk.MustAccAddressFromBech32(delegation.DelegatorAddress)\n\n\t\t_, _ = app.DistrKeeper.WithdrawDelegationRewards(ctx, delAddr, valAddr)\n\t}\n\n\t// clear validator slash events\n\tapp.DistrKeeper.DeleteAllValidatorSlashEvents(ctx)\n\n\t// clear validator historical rewards\n\tapp.DistrKeeper.DeleteAllValidatorHistoricalRewards(ctx)\n\n\t// set context height to zero\n\theight := ctx.BlockHeight()\n\tctx = ctx.WithBlockHeight(0)\n\n\t// reinitialize all validators\n\terr = app.StakingKeeper.IterateValidators(\n\t\tctx,\n\t\tfunc(_ int64, val stakingtypes.ValidatorI) (stop bool) {\n\t\t\tvalBz, err := app.StakingKeeper.ValidatorAddressCodec().StringToBytes(val.GetOperator())\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\t// donate any unwithdrawn outstanding reward fraction tokens to the community pool\n\t\t\tscraps, err := app.DistrKeeper.GetValidatorOutstandingRewardsCoins(ctx, valBz)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\tfeePool, err := app.DistrKeeper.FeePool.Get(ctx)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\tfeePool.CommunityPool = feePool.CommunityPool.Add(scraps...)\n\t\t\tif err := app.DistrKeeper.FeePool.Set(ctx, feePool); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\n\t\t\tif err := app.DistrKeeper.Hooks().AfterValidatorCreated(ctx, valBz); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\t// reinitialize all delegations\n\tfor _, del := range dels {\n\t\tvalAddr, err := sdk.ValAddressFromBech32(del.ValidatorAddress)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\tdelAddr := sdk.MustAccAddressFromBech32(del.DelegatorAddress)\n\n\t\tif err := app.DistrKeeper.Hooks().BeforeDelegationCreated(ctx, delAddr, valAddr); err != nil {\n\t\t\t// never called as BeforeDelegationCreated always returns nil\n\t\t\tpanic(fmt.Errorf(\"error while incrementing period: %w\", err))\n\t\t}\n\n\t\tif err := app.DistrKeeper.Hooks().AfterDelegationModified(ctx, delAddr, valAddr); err != nil {\n\t\t\t// never called as AfterDelegationModified always returns nil\n\t\t\tpanic(fmt.Errorf(\"error while creating a new delegation period record: %w\", err))\n\t\t}\n\t}\n\n\t// reset context height\n\tctx = ctx.WithBlockHeight(height)\n\n\t/* Handle staking state. */\n\n\t// iterate through redelegations, reset creation height\n\terr = app.StakingKeeper.IterateRedelegations(ctx, func(_ int64, red stakingtypes.Redelegation) (stop bool) {\n\t\tfor i := range red.Entries {\n\t\t\tred.Entries[i].CreationHeight = 0\n\t\t}\n\t\terr = app.StakingKeeper.SetRedelegation(ctx, red)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn false\n\t})\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\t// iterate through unbonding delegations, reset creation height\n\tapp.StakingKeeper.IterateUnbondingDelegations(ctx, func(_ int64, ubd stakingtypes.UnbondingDelegation) (stop bool) {\n\t\tfor i := range ubd.Entries {\n\t\t\tubd.Entries[i].CreationHeight = 0\n\t\t}\n\t\terr = app.StakingKeeper.SetUnbondingDelegation(ctx, ubd)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn false\n\t})\n\n\t// Iterate through validators by power descending, reset bond heights, and\n\t// update bond intra-tx counters.\n\tstore := ctx.KVStore(app.GetKey(stakingtypes.StoreKey))\n\titer := storetypes.KVStoreReversePrefixIterator(store, stakingtypes.ValidatorsKey)\n\tcounter := int16(0)\n\n\tfor ; iter.Valid(); iter.Next() {\n\t\taddr := sdk.ValAddress(stakingtypes.AddressFromValidatorsKey(iter.Key()))\n\t\tvalidator, err := app.StakingKeeper.GetValidator(ctx, addr)\n\t\tif err != nil {\n\t\t\tpanic(\"expected validator, not found\")\n\t\t}\n\n\t\tvalidator.UnbondingHeight = 0\n\t\tif applyAllowedAddrs && !allowedAddrsMap[addr.String()] {\n\t\t\tvalidator.Jailed = true\n\t\t}\n\n\t\terr = app.StakingKeeper.SetValidator(ctx, validator)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\tcounter++\n\t}\n\n\tif err := iter.Close(); err != nil {\n\t\tapp.Logger().Error(\"error while closing the key-value store reverse prefix iterator: \", err)\n\t\treturn\n\t}\n\n\t_, err = app.StakingKeeper.ApplyAndReturnValidatorSetUpdates(ctx)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\t/* Handle slashing state. */\n\n\t// reset start height on signing infos\n\tapp.SlashingKeeper.IterateValidatorSigningInfos(\n\t\tctx,\n\t\tfunc(addr sdk.ConsAddress, info slashingtypes.ValidatorSigningInfo) (stop bool) {\n\t\t\tinfo.StartHeight = 0\n\t\t\tapp.SlashingKeeper.SetValidatorSigningInfo(ctx, addr, info)\n\t\t\treturn false\n\t\t},\n\t)\n\n\thtlc.PrepForZeroHeightGenesis(ctx, app.HTLCKeeper)\n\trandom.PrepForZeroHeightGenesis(ctx, app.RandomKeeper)\n\toracle.PrepForZeroHeightGenesis(ctx, app.OracleKeeper)\n\tservice.PrepForZeroHeightGenesis(ctx, app.ServiceKeeper)\n}\n\n// ExportGenesis returns the KVStoreKey for the provided store key.\n//\n// NOTE: This is solely to be used for testing purposes.\nfunc (app *IrisApp) ExportGenesis(ctx sdk.Context) (map[string]json.RawMessage, error) {\n\treturn app.mm.ExportGenesis(ctx, app.AppCodec())\n}\n"
  },
  {
    "path": "app/keepers/keepers.go",
    "content": "package keepers\n\nimport (\n\t\"github.com/spf13/cast\"\n\n\t\"cosmossdk.io/log\"\n\t\"cosmossdk.io/math\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\tevidencekeeper \"cosmossdk.io/x/evidence/keeper\"\n\tevidencetypes \"cosmossdk.io/x/evidence/types\"\n\t\"cosmossdk.io/x/feegrant\"\n\tfeegrantkeeper \"cosmossdk.io/x/feegrant/keeper\"\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/runtime\"\n\tservertypes \"github.com/cosmos/cosmos-sdk/server/types\"\n\tauthcodec \"github.com/cosmos/cosmos-sdk/x/auth/codec\"\n\n\tupgradekeeper \"cosmossdk.io/x/upgrade/keeper\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\tauthkeeper \"github.com/cosmos/cosmos-sdk/x/auth/keeper\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tauthzkeeper \"github.com/cosmos/cosmos-sdk/x/authz/keeper\"\n\tbankkeeper \"github.com/cosmos/cosmos-sdk/x/bank/keeper\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\tconsensuskeeper \"github.com/cosmos/cosmos-sdk/x/consensus/keeper\"\n\tconsensustypes \"github.com/cosmos/cosmos-sdk/x/consensus/types\"\n\tcrisiskeeper \"github.com/cosmos/cosmos-sdk/x/crisis/keeper\"\n\tcrisistypes \"github.com/cosmos/cosmos-sdk/x/crisis/types\"\n\tdistrkeeper \"github.com/cosmos/cosmos-sdk/x/distribution/keeper\"\n\tdistrtypes \"github.com/cosmos/cosmos-sdk/x/distribution/types\"\n\tgovkeeper \"github.com/cosmos/cosmos-sdk/x/gov/keeper\"\n\tgovtypes \"github.com/cosmos/cosmos-sdk/x/gov/types\"\n\tgovv1 \"github.com/cosmos/cosmos-sdk/x/gov/types/v1\"\n\tgovv1beta1 \"github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1\"\n\t\"github.com/cosmos/cosmos-sdk/x/params\"\n\tparamskeeper \"github.com/cosmos/cosmos-sdk/x/params/keeper\"\n\tparamstypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n\tparamproposal \"github.com/cosmos/cosmos-sdk/x/params/types/proposal\"\n\tslashingkeeper \"github.com/cosmos/cosmos-sdk/x/slashing/keeper\"\n\tslashingtypes \"github.com/cosmos/cosmos-sdk/x/slashing/types\"\n\tstakingkeeper \"github.com/cosmos/cosmos-sdk/x/staking/keeper\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\tcapabilitykeeper \"github.com/cosmos/ibc-go/modules/capability/keeper\"\n\tcapabilitytypes \"github.com/cosmos/ibc-go/modules/capability/types\"\n\n\ticahost \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host\"\n\ticahosttypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/types\"\n\tibctransfertypes \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/types\"\n\tibcclient \"github.com/cosmos/ibc-go/v8/modules/core/02-client\"\n\tibcclienttypes \"github.com/cosmos/ibc-go/v8/modules/core/02-client/types\"\n\tporttypes \"github.com/cosmos/ibc-go/v8/modules/core/05-port/types\"\n\tibcexported \"github.com/cosmos/ibc-go/v8/modules/core/exported\"\n\n\tsrvflags \"github.com/evmos/ethermint/server/flags\"\n\tethermint \"github.com/evmos/ethermint/types\"\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n\t\"github.com/evmos/ethermint/x/evm/vm/geth\"\n\tfeemarkettypes \"github.com/evmos/ethermint/x/feemarket/types\"\n\n\tica \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts\"\n\ticahostkeeper \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/keeper\"\n\t\"github.com/cosmos/ibc-go/v8/modules/apps/transfer\"\n\tibctransferkeeper \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/keeper\"\n\tibcconnectiontypes \"github.com/cosmos/ibc-go/v8/modules/core/03-connection/types\"\n\tibckeeper \"github.com/cosmos/ibc-go/v8/modules/core/keeper\"\n\n\tevmkeeper \"github.com/evmos/ethermint/x/evm/keeper\"\n\tfeemarketkeeper \"github.com/evmos/ethermint/x/feemarket/keeper\"\n\n\tnfttransfer \"github.com/bianjieai/nft-transfer\"\n\tibcnfttransferkeeper \"github.com/bianjieai/nft-transfer/keeper\"\n\tibcnfttransfertypes \"github.com/bianjieai/nft-transfer/types\"\n\ttibcmttransfer \"github.com/bianjieai/tibc-go/modules/tibc/apps/mt_transfer\"\n\ttibcmttransferkeeper \"github.com/bianjieai/tibc-go/modules/tibc/apps/mt_transfer/keeper\"\n\ttibcmttypes \"github.com/bianjieai/tibc-go/modules/tibc/apps/mt_transfer/types\"\n\ttibcnfttransfer \"github.com/bianjieai/tibc-go/modules/tibc/apps/nft_transfer\"\n\ttibcnfttransferkeeper \"github.com/bianjieai/tibc-go/modules/tibc/apps/nft_transfer/keeper\"\n\ttibcnfttypes \"github.com/bianjieai/tibc-go/modules/tibc/apps/nft_transfer/types\"\n\ttibchost \"github.com/bianjieai/tibc-go/modules/tibc/core/24-host\"\n\ttibcroutingtypes \"github.com/bianjieai/tibc-go/modules/tibc/core/26-routing/types\"\n\ttibccli \"github.com/bianjieai/tibc-go/modules/tibc/core/client/cli\"\n\ttibckeeper \"github.com/bianjieai/tibc-go/modules/tibc/core/keeper\"\n\n\tcoinswapkeeper \"mods.irisnet.org/modules/coinswap/keeper\"\n\tcoinswaptypes \"mods.irisnet.org/modules/coinswap/types\"\n\t\"mods.irisnet.org/modules/farm\"\n\tfarmkeeper \"mods.irisnet.org/modules/farm/keeper\"\n\tfarmtypes \"mods.irisnet.org/modules/farm/types\"\n\thtlckeeper \"mods.irisnet.org/modules/htlc/keeper\"\n\thtlctypes \"mods.irisnet.org/modules/htlc/types\"\n\tmtkeeper \"mods.irisnet.org/modules/mt/keeper\"\n\tmttypes \"mods.irisnet.org/modules/mt/types\"\n\tnftkeeper \"mods.irisnet.org/modules/nft/keeper\"\n\tnfttypes \"mods.irisnet.org/modules/nft/types\"\n\toraclekeeper \"mods.irisnet.org/modules/oracle/keeper\"\n\toracletypes \"mods.irisnet.org/modules/oracle/types\"\n\trandomkeeper \"mods.irisnet.org/modules/random/keeper\"\n\trandomtypes \"mods.irisnet.org/modules/random/types\"\n\trecordkeeper \"mods.irisnet.org/modules/record/keeper\"\n\trecordtypes \"mods.irisnet.org/modules/record/types\"\n\tservicekeeper \"mods.irisnet.org/modules/service/keeper\"\n\tservicetypes \"mods.irisnet.org/modules/service/types\"\n\ttokenkeeper \"mods.irisnet.org/modules/token/keeper\"\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\ttokenv1 \"mods.irisnet.org/modules/token/types/v1\"\n\n\tguardiankeeper \"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n\tguardiantypes \"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\t\"github.com/irisnet/irishub/v4/modules/internft\"\n\tmintkeeper \"github.com/irisnet/irishub/v4/modules/mint/keeper\"\n\tminttypes \"github.com/irisnet/irishub/v4/modules/mint/types\"\n\tiristypes \"github.com/irisnet/irishub/v4/types\"\n\t\"github.com/irisnet/irishub/v4/wrapper\"\n)\n\n// AppKeepers defines a structure used to consolidate all\n// the keepers needed to run an iris app.\ntype AppKeepers struct {\n\t// keys to access the substores\n\tkeys    map[string]*storetypes.KVStoreKey\n\ttkeys   map[string]*storetypes.TransientStoreKey\n\tmemKeys map[string]*storetypes.MemoryStoreKey\n\n\tscopedIBCKeeper         capabilitykeeper.ScopedKeeper\n\tscopedTransferKeeper    capabilitykeeper.ScopedKeeper\n\tscopedIBCMockKeeper     capabilitykeeper.ScopedKeeper\n\tscopedNFTTransferKeeper capabilitykeeper.ScopedKeeper\n\tscopedICAHostKeeper     capabilitykeeper.ScopedKeeper\n\tscopedTIBCKeeper        capabilitykeeper.ScopedKeeper\n\tscopedTIBCMockKeeper    capabilitykeeper.ScopedKeeper\n\n\tFeeGrantKeeper        feegrantkeeper.Keeper\n\tAccountKeeper         authkeeper.AccountKeeper\n\tBankKeeper            bankkeeper.Keeper\n\tCapabilityKeeper      *capabilitykeeper.Keeper\n\tStakingKeeper         *stakingkeeper.Keeper\n\tSlashingKeeper        slashingkeeper.Keeper\n\tMintKeeper            mintkeeper.Keeper\n\tDistrKeeper           distrkeeper.Keeper\n\tGovKeeper             *govkeeper.Keeper\n\tCrisisKeeper          *crisiskeeper.Keeper\n\tUpgradeKeeper         *upgradekeeper.Keeper\n\tParamsKeeper          paramskeeper.Keeper\n\tEvidenceKeeper        *evidencekeeper.Keeper\n\tAuthzKeeper           authzkeeper.Keeper\n\tConsensusParamsKeeper consensuskeeper.Keeper\n\tIBCKeeper             *ibckeeper.Keeper // IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly\n\tIBCTransferKeeper     ibctransferkeeper.Keeper\n\tIBCNFTTransferKeeper  ibcnfttransferkeeper.Keeper\n\tICAHostKeeper         icahostkeeper.Keeper\n\tGuardianKeeper        guardiankeeper.Keeper\n\tTokenKeeper           tokenkeeper.Keeper\n\tRecordKeeper          recordkeeper.Keeper\n\tNFTKeeper             nftkeeper.Keeper\n\tMTKeeper              mtkeeper.Keeper\n\tHTLCKeeper            htlckeeper.Keeper\n\tCoinswapKeeper        coinswapkeeper.Keeper\n\tServiceKeeper         servicekeeper.Keeper\n\tOracleKeeper          oraclekeeper.Keeper\n\tRandomKeeper          randomkeeper.Keeper\n\tFarmKeeper            farmkeeper.Keeper\n\tTIBCKeeper            *tibckeeper.Keeper\n\tTIBCNFTTransferKeeper tibcnfttransferkeeper.Keeper\n\tTIBCMTTransferKeeper  tibcmttransferkeeper.Keeper\n\tEvmKeeper             *evmkeeper.Keeper\n\tFeeMarketKeeper       feemarketkeeper.Keeper\n\n\tTransferModule       transfer.AppModule\n\tICAModule            ica.AppModule\n\tNftTransferModule    tibcnfttransfer.AppModule\n\tMtTransferModule     tibcmttransfer.AppModule\n\tIBCNftTransferModule nfttransfer.AppModule\n}\n\n// New initializes a new instance of AppKeepers.\n//\n// It takes in various parameters including appCodec, bApp, legacyAmino, maccPerms, modAccAddrs, blockedAddress, skipUpgradeHeights, homePath, invCheckPeriod, logger, and appOpts.\n// It returns an instance of AppKeepers.\nfunc New(\n\tappCodec codec.Codec,\n\tbApp *baseapp.BaseApp,\n\tlegacyAmino *codec.LegacyAmino,\n\tmaccPerms map[string][]string,\n\tmodAccAddrs map[string]bool,\n\tblockedAddress map[string]bool,\n\tskipUpgradeHeights map[int64]bool,\n\thomePath string,\n\tinvCheckPeriod uint,\n\tlogger log.Logger,\n\tappOpts servertypes.AppOptions,\n) AppKeepers {\n\tappKeepers := AppKeepers{}\n\t// Set keys KVStoreKey, TransientStoreKey, MemoryStoreKey\n\tappKeepers.genStoreKeys()\n\n\t// configure state listening capabilities using AppOptions\n\t// we are doing nothing with the returned streamingServices and waitGroup in this case\n\tif err := bApp.RegisterStreamingServices(appOpts, appKeepers.keys); err != nil {\n\t\tpanic(err)\n\t}\n\n\tappKeepers.ParamsKeeper = initParamsKeeper(\n\t\tappCodec,\n\t\tlegacyAmino,\n\t\tappKeepers.keys[paramstypes.StoreKey],\n\t\tappKeepers.tkeys[paramstypes.TStoreKey],\n\t)\n\tappKeepers.ConsensusParamsKeeper = consensuskeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[consensustypes.StoreKey]),\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t\truntime.EventService{},\n\t)\n\n\t// set the BaseApp's parameter store\n\tbApp.SetParamStore(&appKeepers.ConsensusParamsKeeper.ParamsStore)\n\n\t// add capability keeper and ScopeToModule for ibc module\n\tappKeepers.CapabilityKeeper = capabilitykeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[capabilitytypes.StoreKey],\n\t\tappKeepers.memKeys[capabilitytypes.MemStoreKey],\n\t)\n\tappKeepers.scopedIBCKeeper = appKeepers.CapabilityKeeper.ScopeToModule(ibcexported.ModuleName)\n\tappKeepers.scopedTransferKeeper = appKeepers.CapabilityKeeper.ScopeToModule(ibctransfertypes.ModuleName)\n\tappKeepers.scopedNFTTransferKeeper = appKeepers.CapabilityKeeper.ScopeToModule(ibcnfttransfertypes.ModuleName)\n\tappKeepers.scopedICAHostKeeper = appKeepers.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName)\n\n\tappKeepers.AccountKeeper = authkeeper.NewAccountKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[authtypes.StoreKey]),\n\t\tethermint.ProtoAccount,\n\t\tmaccPerms,\n\t\tauthcodec.NewBech32Codec(iristypes.Bech32PrefixAccAddr),\n\t\tiristypes.Bech32PrefixAccAddr,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.FeeGrantKeeper = feegrantkeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[feegrant.StoreKey]),\n\t\tappKeepers.AccountKeeper,\n\t)\n\n\tappKeepers.BankKeeper = bankkeeper.NewBaseKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[banktypes.StoreKey]),\n\t\tappKeepers.AccountKeeper,\n\t\tblockedAddress,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t\tlogger,\n\t)\n\n\tappKeepers.StakingKeeper = stakingkeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[stakingtypes.StoreKey]),\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t\tauthcodec.NewBech32Codec(iristypes.Bech32PrefixValAddr),\n\t\tauthcodec.NewBech32Codec(iristypes.Bech32PrefixConsAddr),\n\t)\n\n\tappKeepers.MintKeeper = mintkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[minttypes.StoreKey],\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tauthtypes.FeeCollectorName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.DistrKeeper = distrkeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[distrtypes.StoreKey]),\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.StakingKeeper,\n\t\tauthtypes.FeeCollectorName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.SlashingKeeper = slashingkeeper.NewKeeper(\n\t\tappCodec,\n\t\tlegacyAmino,\n\t\truntime.NewKVStoreService(appKeepers.keys[slashingtypes.StoreKey]),\n\t\tappKeepers.StakingKeeper,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.CrisisKeeper = crisiskeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[crisistypes.StoreKey]),\n\t\tinvCheckPeriod,\n\t\tappKeepers.BankKeeper,\n\t\tauthtypes.FeeCollectorName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t\tauthcodec.NewBech32Codec(iristypes.Bech32PrefixAccAddr),\n\t)\n\n\t// register the staking hooks\n\t// NOTE: stakingKeeper above is passed by reference, so that it will contain these hooks\n\tappKeepers.StakingKeeper.SetHooks(\n\t\tstakingtypes.NewMultiStakingHooks(\n\t\t\tappKeepers.DistrKeeper.Hooks(),\n\t\t\tappKeepers.SlashingKeeper.Hooks(),\n\t\t),\n\t)\n\n\t// set the governance module account as the authority for conducting upgrades\n\t// UpgradeKeeper must be created before IBCKeeper\n\tappKeepers.UpgradeKeeper = upgradekeeper.NewKeeper(\n\t\tskipUpgradeHeights,\n\t\truntime.NewKVStoreService(appKeepers.keys[upgradetypes.StoreKey]),\n\t\tappCodec,\n\t\thomePath,\n\t\tbApp,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.AuthzKeeper = authzkeeper.NewKeeper(\n\t\truntime.NewKVStoreService(appKeepers.keys[authzkeeper.StoreKey]),\n\t\tappCodec,\n\t\tbApp.MsgServiceRouter(),\n\t\tappKeepers.AccountKeeper,\n\t)\n\n\tappKeepers.scopedTIBCKeeper = appKeepers.CapabilityKeeper.ScopeToModule(tibchost.ModuleName)\n\t// UpgradeKeeper must be created before IBCKeeper\n\tappKeepers.IBCKeeper = ibckeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[ibcexported.StoreKey],\n\t\tappKeepers.GetSubspace(ibcexported.ModuleName),\n\t\tappKeepers.StakingKeeper,\n\t\tappKeepers.UpgradeKeeper,\n\t\tappKeepers.scopedIBCKeeper,\n\t\tauthtypes.NewModuleAddress(ibcexported.ModuleName).String(),\n\t)\n\n\tappKeepers.ICAHostKeeper = icahostkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[icahosttypes.StoreKey],\n\t\tappKeepers.GetSubspace(icahosttypes.SubModuleName),\n\t\tappKeepers.IBCKeeper.ChannelKeeper,\n\t\tappKeepers.IBCKeeper.ChannelKeeper,\n\t\tappKeepers.IBCKeeper.PortKeeper,\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.scopedICAHostKeeper,\n\t\tbApp.MsgServiceRouter(),\n\t\tauthtypes.NewModuleAddress(icahosttypes.SubModuleName).String(),\n\t)\n\tappKeepers.ICAHostKeeper.WithQueryRouter(bApp.GRPCQueryRouter())\n\n\tappKeepers.ICAModule = ica.NewAppModule(nil, &appKeepers.ICAHostKeeper)\n\ticaHostIBCModule := icahost.NewIBCModule(appKeepers.ICAHostKeeper)\n\n\t// register the proposal types\n\tappKeepers.TIBCKeeper = tibckeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[tibchost.StoreKey],\n\t\tappKeepers.StakingKeeper,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.NFTKeeper = nftkeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[nfttypes.StoreKey]),\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t)\n\n\tappKeepers.TIBCNFTTransferKeeper = tibcnfttransferkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[tibcnfttypes.StoreKey],\n\t\tappKeepers.AccountKeeper,\n\t\tnftkeeper.NewLegacyKeeper(appKeepers.NFTKeeper),\n\t\tappKeepers.TIBCKeeper.PacketKeeper,\n\t\tappKeepers.TIBCKeeper.ClientKeeper,\n\t)\n\n\tappKeepers.MTKeeper = mtkeeper.NewKeeper(\n\t\tappCodec, appKeepers.keys[mttypes.StoreKey],\n\t)\n\n\tappKeepers.TIBCMTTransferKeeper = tibcmttransferkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[tibcnfttypes.StoreKey],\n\t\tappKeepers.AccountKeeper, appKeepers.MTKeeper,\n\t\tappKeepers.TIBCKeeper.PacketKeeper,\n\t\tappKeepers.TIBCKeeper.ClientKeeper,\n\t)\n\n\tappKeepers.IBCTransferKeeper = ibctransferkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[ibctransfertypes.StoreKey],\n\t\tappKeepers.GetSubspace(ibctransfertypes.ModuleName),\n\t\tappKeepers.IBCKeeper.ChannelKeeper,\n\t\tappKeepers.IBCKeeper.ChannelKeeper,\n\t\tappKeepers.IBCKeeper.PortKeeper,\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.scopedTransferKeeper,\n\t\tauthtypes.NewModuleAddress(ibctransfertypes.ModuleName).String(),\n\t)\n\tappKeepers.TransferModule = transfer.NewAppModule(appKeepers.IBCTransferKeeper)\n\ttransferIBCModule := transfer.NewIBCModule(appKeepers.IBCTransferKeeper)\n\n\tappKeepers.IBCNFTTransferKeeper = ibcnfttransferkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[ibcnfttransfertypes.StoreKey],\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t\tappKeepers.IBCKeeper.ChannelKeeper,\n\t\tappKeepers.IBCKeeper.ChannelKeeper,\n\t\tappKeepers.IBCKeeper.PortKeeper,\n\t\tappKeepers.AccountKeeper,\n\t\tinternft.NewInterNftKeeper(appCodec, appKeepers.NFTKeeper, appKeepers.AccountKeeper),\n\t\tappKeepers.scopedNFTTransferKeeper,\n\t)\n\tappKeepers.IBCNftTransferModule = nfttransfer.NewAppModule(appKeepers.IBCNFTTransferKeeper)\n\tnfttransferIBCModule := nfttransfer.NewIBCModule(appKeepers.IBCNFTTransferKeeper)\n\n\t// routerModule := router.NewAppModule(app.RouterKeeper, transferIBCModule)\n\t// create static IBC router, add transfer route, then set and seal it\n\tibcRouter := porttypes.NewRouter().\n\t\tAddRoute(ibctransfertypes.ModuleName, transferIBCModule).\n\t\tAddRoute(ibcnfttransfertypes.ModuleName, nfttransferIBCModule).\n\t\tAddRoute(icahosttypes.SubModuleName, icaHostIBCModule)\n\tappKeepers.IBCKeeper.SetRouter(ibcRouter)\n\n\tappKeepers.NftTransferModule = tibcnfttransfer.NewAppModule(appKeepers.TIBCNFTTransferKeeper)\n\tappKeepers.MtTransferModule = tibcmttransfer.NewAppModule(appKeepers.TIBCMTTransferKeeper)\n\n\ttibcRouter := tibcroutingtypes.NewRouter()\n\ttibcRouter.AddRoute(tibcnfttypes.ModuleName, appKeepers.NftTransferModule).\n\t\tAddRoute(tibcmttypes.ModuleName, appKeepers.MtTransferModule)\n\tappKeepers.TIBCKeeper.SetRouter(tibcRouter)\n\n\t// create evidence keeper with router\n\tappKeepers.EvidenceKeeper = evidencekeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[evidencetypes.StoreKey]),\n\t\tappKeepers.StakingKeeper,\n\t\tappKeepers.SlashingKeeper,\n\t\tauthcodec.NewBech32Codec(iristypes.Bech32PrefixAccAddr),\n\t\truntime.ProvideCometInfoService(),\n\t)\n\n\tappKeepers.GuardianKeeper = guardiankeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[guardiantypes.StoreKey],\n\t)\n\n\tappKeepers.RecordKeeper = recordkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[recordtypes.StoreKey],\n\t)\n\n\tappKeepers.HTLCKeeper = htlckeeper.NewKeeper(\n\t\tappCodec, appKeepers.keys[htlctypes.StoreKey],\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.CoinswapKeeper = coinswapkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[coinswaptypes.StoreKey],\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.AccountKeeper,\n\t\tauthtypes.FeeCollectorName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.ServiceKeeper = servicekeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[servicetypes.StoreKey],\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tservicetypes.FeeCollectorName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.OracleKeeper = oraclekeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[oracletypes.StoreKey],\n\t\tappKeepers.ServiceKeeper,\n\t)\n\n\tappKeepers.RandomKeeper = randomkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[randomtypes.StoreKey],\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.ServiceKeeper,\n\t)\n\n\tgovConfig := govtypes.Config{MaxMetadataLen: 10000}\n\tappKeepers.GovKeeper = govkeeper.NewKeeper(\n\t\tappCodec,\n\t\truntime.NewKVStoreService(appKeepers.keys[govtypes.StoreKey]),\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.StakingKeeper,\n\t\tappKeepers.DistrKeeper,\n\t\tbApp.MsgServiceRouter(),\n\t\tgovConfig,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\tappKeepers.FarmKeeper = farmkeeper.NewKeeper(appCodec,\n\t\tappKeepers.keys[farmtypes.StoreKey],\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.AccountKeeper,\n\t\tNewDistrKeeperAdapter(appKeepers.DistrKeeper),\n\t\tNewGovKeeperAdapter(appKeepers.GovKeeper),\n\t\tappKeepers.CoinswapKeeper,\n\t\tauthtypes.FeeCollectorName,\n\t\tdistrtypes.ModuleName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t)\n\n\t// register the proposal types\n\tgovRouter := govv1beta1.NewRouter()\n\tgovRouter.AddRoute(govtypes.RouterKey, govv1beta1.ProposalHandler).\n\t\tAddRoute(paramproposal.RouterKey, params.NewParamChangeProposalHandler(appKeepers.ParamsKeeper)).\n\t\tAddRoute(ibcclienttypes.RouterKey, ibcclient.NewClientProposalHandler(appKeepers.IBCKeeper.ClientKeeper)).\n\t\tAddRoute(tibchost.RouterKey, tibccli.NewProposalHandler(appKeepers.TIBCKeeper)).\n\t\tAddRoute(farmtypes.RouterKey, farm.NewProposalHandler(appKeepers.FarmKeeper))\n\n\tappKeepers.GovKeeper.SetHooks(govtypes.NewMultiGovHooks(\n\t\twrapper.NewFarmGovHook(farmkeeper.NewGovHook(appKeepers.FarmKeeper)),\n\t))\n\n\tappKeepers.GovKeeper.SetLegacyRouter(govRouter)\n\n\t// Create Ethermint keepers\n\tappKeepers.FeeMarketKeeper = feemarketkeeper.NewKeeper(\n\t\tappCodec,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName),\n\t\tappKeepers.keys[feemarkettypes.StoreKey],\n\t\tappKeepers.tkeys[feemarkettypes.TransientKey],\n\t\tappKeepers.GetSubspace(feemarkettypes.ModuleName),\n\t)\n\tappKeepers.EvmKeeper = evmkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[evmtypes.StoreKey],\n\t\tappKeepers.tkeys[evmtypes.TransientKey],\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName),\n\t\tappKeepers.AccountKeeper,\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.StakingKeeper,\n\t\tappKeepers.FeeMarketKeeper,\n\t\tnil,\n\t\tgeth.NewEVM,\n\t\tcast.ToString(appOpts.Get(srvflags.EVMTracer)),\n\t\tappKeepers.GetSubspace(evmtypes.ModuleName),\n\t)\n\n\tappKeepers.TokenKeeper = tokenkeeper.NewKeeper(\n\t\tappCodec,\n\t\tappKeepers.keys[tokentypes.StoreKey],\n\t\tappKeepers.BankKeeper,\n\t\tappKeepers.AccountKeeper,\n\t\twrapper.NewEVMKeeper(appKeepers.EvmKeeper),\n\t\twrapper.NewICS20Keeper(appKeepers.IBCTransferKeeper),\n\t\tauthtypes.FeeCollectorName,\n\t\tauthtypes.NewModuleAddress(govtypes.ModuleName).String(),\n\t).WithSwapRegistry(tokenv1.SwapRegistry{\n\t\tiristypes.NativeToken.MinUnit: tokenv1.SwapParams{\n\t\t\tMinUnit: iristypes.EvmToken.MinUnit,\n\t\t\tRatio:   math.LegacyOneDec(),\n\t\t},\n\t\tiristypes.EvmToken.MinUnit: tokenv1.SwapParams{\n\t\t\tMinUnit: iristypes.NativeToken.MinUnit,\n\t\t\tRatio:   math.LegacyOneDec(),\n\t\t},\n\t})\n\tappKeepers.EvmKeeper = appKeepers.EvmKeeper.SetHooks(appKeepers.TokenKeeper.Hooks())\n\treturn appKeepers\n}\n\n// initParamsKeeper init params keeper and its subspaces\nfunc initParamsKeeper(\n\tappCodec codec.BinaryCodec,\n\tlegacyAmino *codec.LegacyAmino,\n\tkey, tkey storetypes.StoreKey,\n) paramskeeper.Keeper {\n\tparamsKeeper := paramskeeper.NewKeeper(appCodec, legacyAmino, key, tkey)\n\n\t// register the key tables for legacy param subspaces\n\tkeyTable := ibcclienttypes.ParamKeyTable()\n\tkeyTable.RegisterParamSet(&ibcconnectiontypes.Params{})\n\n\tparamsKeeper.Subspace(authtypes.ModuleName).WithKeyTable(authtypes.ParamKeyTable())\n\tparamsKeeper.Subspace(banktypes.ModuleName).WithKeyTable(banktypes.ParamKeyTable())\n\tparamsKeeper.Subspace(stakingtypes.ModuleName).WithKeyTable(stakingtypes.ParamKeyTable())\n\tparamsKeeper.Subspace(minttypes.ModuleName).WithKeyTable(minttypes.ParamKeyTable())\n\tparamsKeeper.Subspace(distrtypes.ModuleName).WithKeyTable(distrtypes.ParamKeyTable())\n\tparamsKeeper.Subspace(slashingtypes.ModuleName).WithKeyTable(slashingtypes.ParamKeyTable())\n\tparamsKeeper.Subspace(govtypes.ModuleName).WithKeyTable(govv1.ParamKeyTable())\n\tparamsKeeper.Subspace(crisistypes.ModuleName).WithKeyTable(crisistypes.ParamKeyTable())\n\tparamsKeeper.Subspace(tokentypes.ModuleName).WithKeyTable(tokenv1.ParamKeyTable())\n\tparamsKeeper.Subspace(recordtypes.ModuleName)\n\tparamsKeeper.Subspace(htlctypes.ModuleName).WithKeyTable(htlctypes.ParamKeyTable())\n\tparamsKeeper.Subspace(coinswaptypes.ModuleName).WithKeyTable(coinswaptypes.ParamKeyTable())\n\tparamsKeeper.Subspace(servicetypes.ModuleName).WithKeyTable(servicetypes.ParamKeyTable())\n\tparamsKeeper.Subspace(farmtypes.ModuleName).WithKeyTable(farmtypes.ParamKeyTable())\n\tparamsKeeper.Subspace(tibchost.ModuleName)\n\tparamsKeeper.Subspace(ibcexported.ModuleName).WithKeyTable(keyTable)\n\tparamsKeeper.Subspace(ibctransfertypes.ModuleName).WithKeyTable(ibctransfertypes.ParamKeyTable())\n\tparamsKeeper.Subspace(icahosttypes.SubModuleName).WithKeyTable(icahosttypes.ParamKeyTable())\n\n\t// ethermint subspaces\n\tparamsKeeper.Subspace(evmtypes.ModuleName).WithKeyTable(evmtypes.ParamKeyTable())\n\tparamsKeeper.Subspace(feemarkettypes.ModuleName).WithKeyTable(feemarkettypes.ParamKeyTable())\n\n\treturn paramsKeeper\n}\n"
  },
  {
    "path": "app/keepers/keys.go",
    "content": "package keepers\n\nimport (\n\tstoretypes \"cosmossdk.io/store/types\"\n\tevidencetypes \"cosmossdk.io/x/evidence/types\"\n\t\"cosmossdk.io/x/feegrant\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tauthzkeeper \"github.com/cosmos/cosmos-sdk/x/authz/keeper\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\tconsensustypes \"github.com/cosmos/cosmos-sdk/x/consensus/types\"\n\tcrisistypes \"github.com/cosmos/cosmos-sdk/x/crisis/types\"\n\tdistrtypes \"github.com/cosmos/cosmos-sdk/x/distribution/types\"\n\tgovtypes \"github.com/cosmos/cosmos-sdk/x/gov/types\"\n\tparamstypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n\tslashingtypes \"github.com/cosmos/cosmos-sdk/x/slashing/types\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\tcapabilitytypes \"github.com/cosmos/ibc-go/modules/capability/types\"\n\n\ticahosttypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/types\"\n\tibctransfertypes \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/types\"\n\tibcexported \"github.com/cosmos/ibc-go/v8/modules/core/exported\"\n\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n\tfeemarkettypes \"github.com/evmos/ethermint/x/feemarket/types\"\n\n\tcoinswaptypes \"mods.irisnet.org/modules/coinswap/types\"\n\tfarmtypes \"mods.irisnet.org/modules/farm/types\"\n\thtlctypes \"mods.irisnet.org/modules/htlc/types\"\n\tmttypes \"mods.irisnet.org/modules/mt/types\"\n\tnfttypes \"mods.irisnet.org/modules/nft/types\"\n\toracletypes \"mods.irisnet.org/modules/oracle/types\"\n\trandomtypes \"mods.irisnet.org/modules/random/types\"\n\trecordtypes \"mods.irisnet.org/modules/record/types\"\n\tservicetypes \"mods.irisnet.org/modules/service/types\"\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\n\tibcnfttransfertypes \"github.com/bianjieai/nft-transfer/types\"\n\ttibcmttypes \"github.com/bianjieai/tibc-go/modules/tibc/apps/mt_transfer/types\"\n\ttibcnfttypes \"github.com/bianjieai/tibc-go/modules/tibc/apps/nft_transfer/types\"\n\ttibchost \"github.com/bianjieai/tibc-go/modules/tibc/core/24-host\"\n\n\tguardiantypes \"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\tminttypes \"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\nfunc (appKeepers *AppKeepers) genStoreKeys() {\n\t// Define what keys will be used in the cosmos-sdk key/value store.\n\t// Cosmos-SDK modules each have a \"key\" that allows the application to reference what they've stored on the chain.\n\tappKeepers.keys = storetypes.NewKVStoreKeys(\n\t\tauthtypes.StoreKey,\n\t\tbanktypes.StoreKey,\n\t\tstakingtypes.StoreKey,\n\t\tminttypes.StoreKey,\n\t\tdistrtypes.StoreKey,\n\t\tslashingtypes.StoreKey,\n\t\tcrisistypes.StoreKey,\n\t\tgovtypes.StoreKey,\n\t\tparamstypes.StoreKey,\n\t\tibcexported.StoreKey,\n\t\tupgradetypes.StoreKey,\n\t\tconsensustypes.StoreKey,\n\t\tevidencetypes.StoreKey,\n\t\tibctransfertypes.StoreKey,\n\t\tibcnfttransfertypes.StoreKey,\n\t\ticahosttypes.StoreKey,\n\t\tcapabilitytypes.StoreKey,\n\t\tguardiantypes.StoreKey,\n\t\ttokentypes.StoreKey,\n\t\tnfttypes.StoreKey,\n\t\thtlctypes.StoreKey,\n\t\trecordtypes.StoreKey,\n\t\tcoinswaptypes.StoreKey,\n\t\tservicetypes.StoreKey,\n\t\toracletypes.StoreKey,\n\t\trandomtypes.StoreKey,\n\t\tfarmtypes.StoreKey,\n\t\tfeegrant.StoreKey,\n\t\ttibchost.StoreKey,\n\t\ttibcnfttypes.StoreKey,\n\t\ttibcmttypes.StoreKey,\n\t\tmttypes.StoreKey,\n\t\tauthzkeeper.StoreKey,\n\t\t// ethermint keys\n\t\tevmtypes.StoreKey,\n\t\tfeemarkettypes.StoreKey,\n\t)\n\n\t// Define transient store keys\n\tappKeepers.tkeys = storetypes.NewTransientStoreKeys(\n\t\tparamstypes.TStoreKey,\n\t\tevmtypes.TransientKey,\n\t\tfeemarkettypes.TransientKey,\n\t)\n\n\t// MemKeys are for information that is stored only in RAM.\n\tappKeepers.memKeys = storetypes.NewMemoryStoreKeys(capabilitytypes.MemStoreKey)\n\n}\n\n// KvStoreKeys returns the map of string to KVStoreKey.\n//\n// None.\n// map[string]*storetypes.KVStoreKey.\nfunc (appKeepers *AppKeepers) KvStoreKeys() map[string]*storetypes.KVStoreKey {\n\treturn appKeepers.keys\n}\n\n// TransientStoreKeys returns the map of transient store keys.\n//\n// No parameters.\n// Returns a map[string]*storetypes.TransientStoreKey.\nfunc (appKeepers *AppKeepers) TransientStoreKeys() map[string]*storetypes.TransientStoreKey {\n\treturn appKeepers.tkeys\n}\n\n// MemoryStoreKeys returns the map of type map[string]*storetypes.MemoryStoreKey.\n//\n// No parameters.\n// Returns a map of type map[string]*storetypes.MemoryStoreKey.\nfunc (appKeepers *AppKeepers) MemoryStoreKeys() map[string]*storetypes.MemoryStoreKey {\n\treturn appKeepers.memKeys\n}\n\n// GetKey returns the KVStoreKey for the provided store key.\n//\n// NOTE: This is solely to be used for testing purposes.\nfunc (appKeepers *AppKeepers) GetKey(storeKey string) *storetypes.KVStoreKey {\n\treturn appKeepers.keys[storeKey]\n}\n\n// GetTKey returns the TransientStoreKey for the provided store key.\n//\n// NOTE: This is solely to be used for testing purposes.\nfunc (appKeepers *AppKeepers) GetTKey(storeKey string) *storetypes.TransientStoreKey {\n\treturn appKeepers.tkeys[storeKey]\n}\n\n// GetMemKey returns the MemStoreKey for the provided mem key.\n//\n// NOTE: This is solely used for testing purposes.\nfunc (appKeepers *AppKeepers) GetMemKey(storeKey string) *storetypes.MemoryStoreKey {\n\treturn appKeepers.memKeys[storeKey]\n}\n\n// GetSubspace returns a param subspace for a given module name.\n//\n// NOTE: This is solely to be used for testing purposes.\nfunc (appKeepers *AppKeepers) GetSubspace(moduleName string) paramstypes.Subspace {\n\tsubspace, _ := appKeepers.ParamsKeeper.GetSubspace(moduleName)\n\treturn subspace\n}\n"
  },
  {
    "path": "app/keepers/types.go",
    "content": "package keepers\n\nimport (\n\t\"context\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tdistrkeeper \"github.com/cosmos/cosmos-sdk/x/distribution/keeper\"\n\tdistrtypes \"github.com/cosmos/cosmos-sdk/x/distribution/types\"\n\tgovkeeper \"github.com/cosmos/cosmos-sdk/x/gov/keeper\"\n\tv1 \"github.com/cosmos/cosmos-sdk/x/gov/types/v1\"\n)\n\ntype DistrKeeperAdapter struct {\n\tkeeper distrkeeper.Keeper\n}\n\nfunc NewDistrKeeperAdapter(keeper distrkeeper.Keeper) DistrKeeperAdapter {\n\treturn DistrKeeperAdapter{keeper: keeper}\n}\n\nfunc (a DistrKeeperAdapter) GetFeePool(ctx context.Context) (distrtypes.FeePool, error) {\n\treturn a.keeper.FeePool.Get(ctx)\n}\n\nfunc (a DistrKeeperAdapter) SetFeePool(ctx context.Context, feePool distrtypes.FeePool) error {\n\treturn a.keeper.FeePool.Set(ctx, feePool)\n}\n\ntype GovKeeperAdapter struct {\n\tkeeper *govkeeper.Keeper\n}\n\nfunc NewGovKeeperAdapter(keeper *govkeeper.Keeper) GovKeeperAdapter {\n\treturn GovKeeperAdapter{keeper: keeper}\n}\n\nfunc (a GovKeeperAdapter) SubmitProposal(ctx context.Context, messages []sdk.Msg, metadata, title, summary string, proposer sdk.AccAddress, expedited bool) (v1.Proposal, error) {\n\treturn a.keeper.SubmitProposal(ctx, messages, metadata, title, summary, proposer, expedited)\n}\n\nfunc (a GovKeeperAdapter) AddDeposit(ctx context.Context, proposalID uint64, depositorAddr sdk.AccAddress, depositAmount sdk.Coins) (bool, error) {\n\treturn a.keeper.AddDeposit(ctx, proposalID, depositorAddr, depositAmount)\n}\n\nfunc (a GovKeeperAdapter) GetProposal(ctx context.Context, proposalID uint64) (v1.Proposal, error) {\n\treturn a.keeper.Proposals.Get(ctx, proposalID)\n}\n\nfunc (a GovKeeperAdapter) GetGovernanceAccount(ctx context.Context) sdk.ModuleAccountI {\n\treturn a.keeper.GetGovernanceAccount(ctx)\n}\n"
  },
  {
    "path": "app/modules.go",
    "content": "package app\n\nimport (\n\t\"cosmossdk.io/x/evidence\"\n\tevidencetypes \"cosmossdk.io/x/evidence/types\"\n\t\"cosmossdk.io/x/feegrant\"\n\tfeegrantmodule \"cosmossdk.io/x/feegrant/module\"\n\t\"cosmossdk.io/x/upgrade\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\taddresscodec \"github.com/cosmos/cosmos-sdk/codec/address\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth\"\n\tauthsims \"github.com/cosmos/cosmos-sdk/x/auth/simulation\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth/vesting\"\n\tvestingtypes \"github.com/cosmos/cosmos-sdk/x/auth/vesting/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/authz\"\n\tauthzmodule \"github.com/cosmos/cosmos-sdk/x/authz/module\"\n\t\"github.com/cosmos/cosmos-sdk/x/bank\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/consensus\"\n\tconsensustypes \"github.com/cosmos/cosmos-sdk/x/consensus/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/crisis\"\n\tcrisistypes \"github.com/cosmos/cosmos-sdk/x/crisis/types\"\n\tdistr \"github.com/cosmos/cosmos-sdk/x/distribution\"\n\tdistrtypes \"github.com/cosmos/cosmos-sdk/x/distribution/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/genutil\"\n\tgenutiltypes \"github.com/cosmos/cosmos-sdk/x/genutil/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/gov\"\n\tgovclient \"github.com/cosmos/cosmos-sdk/x/gov/client\"\n\tgovtypes \"github.com/cosmos/cosmos-sdk/x/gov/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/params\"\n\tparamsclient \"github.com/cosmos/cosmos-sdk/x/params/client\"\n\tparamstypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/slashing\"\n\tslashingtypes \"github.com/cosmos/cosmos-sdk/x/slashing/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/staking\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\t\"github.com/cosmos/ibc-go/modules/capability\"\n\tcapabilitytypes \"github.com/cosmos/ibc-go/modules/capability/types\"\n\tiristypes \"github.com/irisnet/irishub/v4/types\"\n\n\ticatypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/types\"\n\tibctransfertypes \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/types\"\n\tibc \"github.com/cosmos/ibc-go/v8/modules/core\"\n\n\tibcexported \"github.com/cosmos/ibc-go/v8/modules/core/exported\"\n\tibctm \"github.com/cosmos/ibc-go/v8/modules/light-clients/07-tendermint\"\n\n\t\"mods.irisnet.org/modules/coinswap\"\n\tcoinswaptypes \"mods.irisnet.org/modules/coinswap/types\"\n\t\"mods.irisnet.org/modules/farm\"\n\tfarmtypes \"mods.irisnet.org/modules/farm/types\"\n\t\"mods.irisnet.org/modules/htlc\"\n\thtlctypes \"mods.irisnet.org/modules/htlc/types\"\n\t\"mods.irisnet.org/modules/mt\"\n\tmttypes \"mods.irisnet.org/modules/mt/types\"\n\t\"mods.irisnet.org/modules/nft\"\n\tnfttypes \"mods.irisnet.org/modules/nft/types\"\n\t\"mods.irisnet.org/modules/oracle\"\n\toracletypes \"mods.irisnet.org/modules/oracle/types\"\n\t\"mods.irisnet.org/modules/random\"\n\trandomtypes \"mods.irisnet.org/modules/random/types\"\n\t\"mods.irisnet.org/modules/record\"\n\trecordtypes \"mods.irisnet.org/modules/record/types\"\n\t\"mods.irisnet.org/modules/service\"\n\tservicetypes \"mods.irisnet.org/modules/service/types\"\n\t\"mods.irisnet.org/modules/token\"\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\n\ttibcmttypes \"github.com/bianjieai/tibc-go/modules/tibc/apps/mt_transfer/types\"\n\ttibcnfttypes \"github.com/bianjieai/tibc-go/modules/tibc/apps/nft_transfer/types\"\n\ttibc \"github.com/bianjieai/tibc-go/modules/tibc/core\"\n\ttibchost \"github.com/bianjieai/tibc-go/modules/tibc/core/24-host\"\n\ttibccli \"github.com/bianjieai/tibc-go/modules/tibc/core/client/cli\"\n\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n\t\"github.com/evmos/ethermint/x/feemarket\"\n\tfeemarkettypes \"github.com/evmos/ethermint/x/feemarket/types\"\n\n\tibcnfttransfertypes \"github.com/bianjieai/nft-transfer/types\"\n\n\tirisappparams \"github.com/irisnet/irishub/v4/app/params\"\n\tirisevm \"github.com/irisnet/irishub/v4/modules/evm\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian\"\n\tguardiantypes \"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\t\"github.com/irisnet/irishub/v4/modules/mint\"\n\tminttypes \"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\nvar (\n\tlegacyProposalHandlers = []govclient.ProposalHandler{\n\t\tparamsclient.ProposalHandler,\n\t}\n\n\t// module account permissions\n\tmaccPerms = map[string][]string{\n\t\tauthtypes.FeeCollectorName:     {authtypes.Burner},\n\t\tdistrtypes.ModuleName:          nil,\n\t\tminttypes.ModuleName:           {authtypes.Minter},\n\t\tstakingtypes.BondedPoolName:    {authtypes.Burner, authtypes.Staking},\n\t\tstakingtypes.NotBondedPoolName: {authtypes.Burner, authtypes.Staking},\n\t\tgovtypes.ModuleName:            {authtypes.Burner},\n\t\tibctransfertypes.ModuleName:    {authtypes.Minter, authtypes.Burner},\n\t\ttokentypes.ModuleName:          {authtypes.Minter, authtypes.Burner},\n\t\thtlctypes.ModuleName:           {authtypes.Minter, authtypes.Burner},\n\t\tcoinswaptypes.ModuleName:       {authtypes.Minter, authtypes.Burner},\n\t\tservicetypes.DepositAccName:    {authtypes.Burner},\n\t\tservicetypes.RequestAccName:    nil,\n\t\tservicetypes.FeeCollectorName:  {authtypes.Burner},\n\t\tfarmtypes.ModuleName:           {authtypes.Burner},\n\t\tfarmtypes.RewardCollector:      nil,\n\t\tfarmtypes.EscrowCollector:      nil,\n\t\ttibcnfttypes.ModuleName:        nil,\n\t\ttibcmttypes.ModuleName:         nil,\n\t\tnfttypes.ModuleName:            nil,\n\t\ticatypes.ModuleName:            nil,\n\t\tevmtypes.ModuleName: {\n\t\t\tauthtypes.Minter,\n\t\t\tauthtypes.Burner,\n\t\t}, // used for secure addition and subtraction of balance using module account\n\t}\n)\n\n// ModuleBasics defines the module BasicManager that is in charge of setting up basic,\n// non-dependant module elements, such as codec registration\n// and genesis verification.\nfunc newBasicManagerFromManager(app *IrisApp) module.BasicManager {\n\tbasicManager := module.NewBasicManagerFromManager(\n\t\tapp.mm,\n\t\tmap[string]module.AppModuleBasic{\n\t\t\tgenutiltypes.ModuleName: genutil.NewAppModuleBasic(genutiltypes.DefaultMessageValidator),\n\t\t\tgovtypes.ModuleName:     gov.NewAppModuleBasic(append(legacyProposalHandlers, tibccli.GovHandlers...)),\n\t\t})\n\tbasicManager.RegisterLegacyAminoCodec(app.legacyAmino)\n\tbasicManager.RegisterInterfaces(app.interfaceRegistry)\n\treturn basicManager\n}\n\nfunc appModules(\n\tapp *IrisApp,\n\tencodingConfig irisappparams.EncodingConfig,\n\tskipGenesisInvariants bool,\n) []module.AppModule {\n\tappCodec := encodingConfig.Codec\n\n\treturn []module.AppModule{\n\t\tgenutil.NewAppModule(\n\t\t\tapp.AccountKeeper, app.StakingKeeper, app.BaseApp,\n\t\t\tencodingConfig.TxConfig,\n\t\t),\n\t\tauth.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.AccountKeeper,\n\t\t\tauthsims.RandomGenesisAccounts,\n\t\t\tapp.GetSubspace(authtypes.ModuleName),\n\t\t),\n\t\tvesting.NewAppModule(app.AccountKeeper, app.BankKeeper),\n\t\tbank.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.GetSubspace(banktypes.ModuleName),\n\t\t),\n\t\tcapability.NewAppModule(appCodec, *app.CapabilityKeeper, false),\n\t\tcrisis.NewAppModule(\n\t\t\tapp.CrisisKeeper,\n\t\t\tskipGenesisInvariants,\n\t\t\tapp.GetSubspace(crisistypes.ModuleName),\n\t\t),\n\t\tgov.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.GovKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(govtypes.ModuleName),\n\t\t),\n\t\tmint.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.MintKeeper,\n\t\t\tapp.GetSubspace(minttypes.ModuleName),\n\t\t),\n\t\tslashing.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.SlashingKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.StakingKeeper,\n\t\t\tapp.GetSubspace(slashingtypes.ModuleName),\n\t\t\tapp.interfaceRegistry,\n\t\t),\n\t\tdistr.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.DistrKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.StakingKeeper,\n\t\t\tapp.GetSubspace(distrtypes.ModuleName),\n\t\t),\n\t\tstaking.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.StakingKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(stakingtypes.ModuleName),\n\t\t),\n\t\tupgrade.NewAppModule(app.UpgradeKeeper, addresscodec.NewBech32Codec(iristypes.Bech32PrefixAccAddr)),\n\t\tevidence.NewAppModule(*app.EvidenceKeeper),\n\t\tfeegrantmodule.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.FeeGrantKeeper,\n\t\t\tapp.interfaceRegistry,\n\t\t),\n\t\tauthzmodule.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.AuthzKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.interfaceRegistry,\n\t\t),\n\t\tconsensus.NewAppModule(appCodec, app.ConsensusParamsKeeper),\n\t\tibc.NewAppModule(app.IBCKeeper), \n\t\tibctm.NewAppModule(),\n\t\ttibc.NewAppModule(app.TIBCKeeper),\n\t\tparams.NewAppModule(app.ParamsKeeper),\n\t\tapp.TransferModule,\n\t\tapp.IBCNftTransferModule,\n\t\tapp.ICAModule,\n\t\tapp.NftTransferModule,\n\t\tapp.MtTransferModule,\n\t\tguardian.NewAppModule(appCodec, app.GuardianKeeper),\n\t\ttoken.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.TokenKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(tokentypes.ModuleName),\n\t\t),\n\t\trecord.NewAppModule(appCodec, app.RecordKeeper, app.AccountKeeper, app.BankKeeper),\n\t\tnft.NewAppModule(appCodec, app.NFTKeeper, app.AccountKeeper, app.BankKeeper),\n\t\tmt.NewAppModule(appCodec, app.MTKeeper, app.AccountKeeper, app.BankKeeper),\n\t\thtlc.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.HTLCKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(htlctypes.ModuleName),\n\t\t),\n\t\tcoinswap.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.CoinswapKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(coinswaptypes.ModuleName),\n\t\t),\n\t\tservice.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.ServiceKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(servicetypes.ModuleName),\n\t\t),\n\t\toracle.NewAppModule(appCodec, app.OracleKeeper, app.AccountKeeper, app.BankKeeper),\n\t\trandom.NewAppModule(appCodec, app.RandomKeeper, app.AccountKeeper, app.BankKeeper),\n\t\tfarm.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.FarmKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(farmtypes.ModuleName),\n\t\t),\n\n\t\t// Ethermint app modules\n\t\tirisevm.NewAppModule(\n\t\t\tapp.EvmKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(evmtypes.ModuleName),\n\t\t),\n\t\tfeemarket.NewAppModule(app.FeeMarketKeeper, app.GetSubspace(feemarkettypes.ModuleName)),\n\t}\n}\n\n// simulationModules returns modules for simulation manager\n// define the order of the modules for deterministic simulations\nfunc simulationModules(\n\tapp *IrisApp,\n\tencodingConfig irisappparams.EncodingConfig,\n\t_ bool,\n) []module.AppModuleSimulation {\n\tappCodec := encodingConfig.Codec\n\n\treturn []module.AppModuleSimulation{\n\t\tauth.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.AccountKeeper,\n\t\t\tauthsims.RandomGenesisAccounts,\n\t\t\tapp.GetSubspace(authtypes.ModuleName),\n\t\t),\n\t\tbank.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.GetSubspace(banktypes.ModuleName),\n\t\t),\n\t\tcapability.NewAppModule(appCodec, *app.CapabilityKeeper, false),\n\t\tgov.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.GovKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(govtypes.ModuleName),\n\t\t),\n\t\tmint.NewAppModule(appCodec, app.MintKeeper, app.GetSubspace(minttypes.ModuleName)),\n\t\tfeegrantmodule.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.FeeGrantKeeper,\n\t\t\tapp.interfaceRegistry,\n\t\t),\n\t\tstaking.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.StakingKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(stakingtypes.ModuleName),\n\t\t),\n\t\tdistr.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.DistrKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.StakingKeeper,\n\t\t\tapp.GetSubspace(distrtypes.ModuleName),\n\t\t),\n\t\tslashing.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.SlashingKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.StakingKeeper,\n\t\t\tapp.GetSubspace(slashingtypes.ModuleName),\n\t\t\tapp.interfaceRegistry,\n\t\t),\n\t\tparams.NewAppModule(app.ParamsKeeper),\n\t\tevidence.NewAppModule(*app.EvidenceKeeper),\n\t\tauthzmodule.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.AuthzKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.interfaceRegistry,\n\t\t),\n\t\tibc.NewAppModule(app.IBCKeeper),\n\t\tapp.TransferModule,\n\t\tapp.IBCNftTransferModule,\n\t\tguardian.NewAppModule(appCodec, app.GuardianKeeper),\n\t\ttoken.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.TokenKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(tokentypes.ModuleName),\n\t\t),\n\t\trecord.NewAppModule(appCodec, app.RecordKeeper, app.AccountKeeper, app.BankKeeper),\n\t\tnft.NewAppModule(appCodec, app.NFTKeeper, app.AccountKeeper, app.BankKeeper),\n\t\thtlc.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.HTLCKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(htlctypes.ModuleName),\n\t\t),\n\t\tcoinswap.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.CoinswapKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(coinswaptypes.ModuleName),\n\t\t),\n\t\tservice.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.ServiceKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(servicetypes.ModuleName),\n\t\t),\n\t\toracle.NewAppModule(appCodec, app.OracleKeeper, app.AccountKeeper, app.BankKeeper),\n\t\trandom.NewAppModule(appCodec, app.RandomKeeper, app.AccountKeeper, app.BankKeeper),\n\t\tfarm.NewAppModule(\n\t\t\tappCodec,\n\t\t\tapp.FarmKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(farmtypes.ModuleName),\n\t\t),\n\t\ttibc.NewAppModule(app.TIBCKeeper),\n\n\t\t// Ethermint app modules\n\t\tirisevm.NewAppModule(\n\t\t\tapp.EvmKeeper,\n\t\t\tapp.AccountKeeper,\n\t\t\tapp.BankKeeper,\n\t\t\tapp.GetSubspace(evmtypes.ModuleName),\n\t\t),\n\t\tfeemarket.NewAppModule(app.FeeMarketKeeper, app.GetSubspace(feemarkettypes.ModuleName)),\n\t}\n}\n\n/*\norderBeginBlockers tells the app's module manager how to set the order of\nBeginBlockers, which are run at the beginning of every block.\nInterchain Security Requirements:\nDuring begin block slashing happens after distr.BeginBlocker so that\nthere is nothing left over in the validator fee pool, so as to keep the\nCanWithdrawInvariant invariant.\nNOTE: staking module is required if HistoricalEntries param > 0\nNOTE: capability module's beginblocker must come before any modules using capabilities (e.g. IBC)\n*/\n\nfunc orderBeginBlockers() []string {\n\treturn []string{\n\t\tcapabilitytypes.ModuleName,\n\t\tminttypes.ModuleName,\n\t\tfeemarkettypes.ModuleName,\n\t\tevmtypes.ModuleName,\n\t\tdistrtypes.ModuleName,\n\t\tslashingtypes.ModuleName,\n\t\tevidencetypes.ModuleName,\n\t\tstakingtypes.ModuleName,\n\t\tauthtypes.ModuleName,\n\t\tbanktypes.ModuleName,\n\t\tgovtypes.ModuleName,\n\t\tcrisistypes.ModuleName,\n\t\tibctransfertypes.ModuleName,\n\t\tibcexported.ModuleName,\n\t\tgenutiltypes.ModuleName,\n\t\tauthz.ModuleName,\n\t\tfeegrant.ModuleName,\n\t\tparamstypes.ModuleName,\n\t\tvestingtypes.ModuleName,\n\t\ticatypes.ModuleName,\n\t\tconsensustypes.ModuleName,\n\n\t\t// self module\n\t\ttokentypes.ModuleName,\n\t\ttibchost.ModuleName,\n\t\tnfttypes.ModuleName,\n\t\thtlctypes.ModuleName,\n\t\trecordtypes.ModuleName,\n\t\tcoinswaptypes.ModuleName,\n\t\tservicetypes.ModuleName,\n\t\toracletypes.ModuleName,\n\t\trandomtypes.ModuleName,\n\t\tfarmtypes.ModuleName,\n\t\tmttypes.ModuleName,\n\t\ttibcnfttypes.ModuleName,\n\t\ttibcmttypes.ModuleName,\n\t\tguardiantypes.ModuleName,\n\n\t\tibcnfttransfertypes.ModuleName,\n\t}\n}\n\n/*\nInterchain Security Requirements:\n- provider.EndBlock gets validator updates from the staking module;\nthus, staking.EndBlock must be executed before provider.EndBlock;\n- creating a new consumer chain requires the following order,\nCreateChildClient(), staking.EndBlock, provider.EndBlock;\nthus, gov.EndBlock must be executed before staking.EndBlock\n*/\nfunc orderEndBlockers() []string {\n\treturn []string{\n\t\tcrisistypes.ModuleName,\n\t\tgovtypes.ModuleName,\n\t\tstakingtypes.ModuleName,\n\t\tevmtypes.ModuleName,\n\t\tfeemarkettypes.ModuleName,\n\t\tibctransfertypes.ModuleName,\n\t\tibcexported.ModuleName,\n\t\tcapabilitytypes.ModuleName,\n\t\tauthtypes.ModuleName,\n\t\tbanktypes.ModuleName,\n\t\tdistrtypes.ModuleName,\n\t\tslashingtypes.ModuleName,\n\t\tminttypes.ModuleName,\n\t\tgenutiltypes.ModuleName,\n\t\tevidencetypes.ModuleName,\n\t\tauthz.ModuleName,\n\t\tfeegrant.ModuleName,\n\t\tparamstypes.ModuleName,\n\t\tupgradetypes.ModuleName,\n\t\tvestingtypes.ModuleName,\n\t\ticatypes.ModuleName,\n\t\tconsensustypes.ModuleName,\n\n\t\t// self module\n\t\ttokentypes.ModuleName,\n\t\ttibchost.ModuleName,\n\t\tnfttypes.ModuleName,\n\t\thtlctypes.ModuleName,\n\t\trecordtypes.ModuleName,\n\t\tcoinswaptypes.ModuleName,\n\t\tservicetypes.ModuleName,\n\t\toracletypes.ModuleName,\n\t\trandomtypes.ModuleName,\n\t\tfarmtypes.ModuleName,\n\t\tmttypes.ModuleName,\n\t\ttibcnfttypes.ModuleName,\n\t\ttibcmttypes.ModuleName,\n\t\tguardiantypes.ModuleName,\n\n\t\tibcnfttransfertypes.ModuleName,\n\t}\n}\n\n/*\nNOTE: The genutils module must occur after staking so that pools are\nproperly initialized with tokens from genesis accounts.\nNOTE: The genutils module must also occur after auth so that it can access the params from auth.\nNOTE: Capability module must occur first so that it can initialize any capabilities\nso that other modules that want to create or claim capabilities afterwards in InitChain\ncan do so safely.\n*/\nfunc orderInitBlockers() []string {\n\treturn []string{\n\t\tcapabilitytypes.ModuleName,\n\t\tauthtypes.ModuleName,\n\t\tbanktypes.ModuleName,\n\t\tdistrtypes.ModuleName,\n\t\tgovtypes.ModuleName,\n\t\tstakingtypes.ModuleName,\n\t\tslashingtypes.ModuleName,\n\t\tminttypes.ModuleName,\n\t\tibctransfertypes.ModuleName,\n\t\tibcexported.ModuleName,\n\t\tauthz.ModuleName,\n\t\tfeegrant.ModuleName,\n\t\tparamstypes.ModuleName,\n\t\tupgradetypes.ModuleName,\n\t\tvestingtypes.ModuleName,\n\t\tevmtypes.ModuleName,\n\t\t// NOTE: feemarket module needs to be initialized before genutil module:\n\t\t// gentx transactions use MinGasPriceDecorator.AnteHandle\n\t\tfeemarkettypes.ModuleName,\n\t\tgenutiltypes.ModuleName,\n\t\tevidencetypes.ModuleName,\n\t\ticatypes.ModuleName,\n\t\tconsensustypes.ModuleName,\n\n\t\t// self module\n\t\ttokentypes.ModuleName,\n\t\ttibchost.ModuleName,\n\t\tnfttypes.ModuleName,\n\t\thtlctypes.ModuleName,\n\t\trecordtypes.ModuleName,\n\t\t// NOTE: coinswap module needs to be initialized before farm module:\n\t\tcoinswaptypes.ModuleName,\n\t\tfarmtypes.ModuleName,\n\t\trandomtypes.ModuleName,\n\t\tservicetypes.ModuleName,\n\t\toracletypes.ModuleName,\n\t\tmttypes.ModuleName,\n\t\ttibcnfttypes.ModuleName,\n\t\ttibcmttypes.ModuleName,\n\t\tguardiantypes.ModuleName,\n\t\t// NOTE: crisis module must go at the end to check for invariants on each module\n\t\tcrisistypes.ModuleName,\n\n\t\tibcnfttransfertypes.ModuleName,\n\t}\n}\n"
  },
  {
    "path": "app/params/encoding.go",
    "content": "package params\n\nimport (\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/codec/types\"\n)\n\n// EncodingConfig specifies the concrete encoding types to use for a given app.\n// This is provided for compatibility between protobuf and amino implementations.\ntype EncodingConfig struct {\n\tInterfaceRegistry types.InterfaceRegistry\n\tCodec             codec.Codec\n\tTxConfig          client.TxConfig\n\tLegacyAmino       *codec.LegacyAmino\n}\n"
  },
  {
    "path": "app/params/params.go",
    "content": "package params\n\n// Simulation parameter constants\nconst (\n\tSimulationTest            = \"simulation_test\"\n)\n"
  },
  {
    "path": "app/params/proto.go",
    "content": "package params\n\nimport (\n\t\"cosmossdk.io/x/tx/signing\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/codec/address\"\n\t\"github.com/cosmos/cosmos-sdk/codec/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth/tx\"\n\t\"github.com/cosmos/gogoproto/proto\"\n\t\"google.golang.org/protobuf/reflect/protoreflect\"\n\n\tenccodec \"github.com/evmos/ethermint/encoding/codec\"\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n)\n\n// MakeEncodingConfig creates an EncodingConfig for an amino based test configuration.\nfunc MakeEncodingConfig() EncodingConfig {\n\tamino := codec.NewLegacyAmino()\n\tsigningOptions := signing.Options{\n\t\tAddressCodec: address.Bech32Codec{\n\t\t\tBech32Prefix: sdk.GetConfig().GetBech32AccountAddrPrefix(),\n\t\t},\n\t\tValidatorAddressCodec: address.Bech32Codec{\n\t\t\tBech32Prefix: sdk.GetConfig().GetBech32ValidatorAddrPrefix(),\n\t\t},\n\t\tCustomGetSigners: map[protoreflect.FullName]signing.GetSignersFunc{\n\t\t\tevmtypes.MsgEthereumTxCustomGetSigner.MsgType: evmtypes.MsgEthereumTxCustomGetSigner.Fn,\n\t\t},\n\t}\n\tinterfaceRegistry, _ := types.NewInterfaceRegistryWithOptions(types.InterfaceRegistryOptions{\n\t\tProtoFiles:     proto.HybridResolver,\n\t\tSigningOptions: signingOptions,\n\t})\n\tmarshaler := codec.NewProtoCodec(interfaceRegistry)\n\ttxCfg := tx.NewTxConfig(marshaler, tx.DefaultSignModes)\n\n\t// Register the evm types\n\tenccodec.RegisterLegacyAminoCodec(amino)\n\tenccodec.RegisterInterfaces(interfaceRegistry)\n\n\treturn EncodingConfig{\n\t\tInterfaceRegistry: interfaceRegistry,\n\t\tCodec:         marshaler,\n\t\tTxConfig:          txCfg,\n\t\tLegacyAmino:             amino,\n\t}\n}"
  },
  {
    "path": "app/rpc/auth.go",
    "content": "package rpc\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"google.golang.org/grpc/codes\"\n\t\"google.golang.org/grpc/status\"\n\n\t\"cosmossdk.io/store/prefix\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tcodectypes \"github.com/cosmos/cosmos-sdk/codec/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\t\"github.com/cosmos/cosmos-sdk/types/query\"\n\tauthkeeper \"github.com/cosmos/cosmos-sdk/x/auth/keeper\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\n\tethermint \"github.com/evmos/ethermint/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/keepers\"\n)\n\nvar _ authtypes.QueryServer = authQueryServer{}\n\ntype authQueryServer struct {\n\tkey storetypes.StoreKey\n\tcdc codec.Codec\n\tauthtypes.QueryServer\n}\n\n// overrideAuthServices overrides auth query service\nfunc overrideAuthServices(cdc codec.Codec, cfg module.Configurator, appKeepers keepers.AppKeepers) {\n\tk := appKeepers.AccountKeeper\n\tkey := appKeepers.GetKey(authtypes.StoreKey)\n\tss := appKeepers.GetSubspace(authtypes.ModuleName)\n\n\ttypes.RegisterMsgServer(cfg.MsgServer(), authkeeper.NewMsgServerImpl(k))\n\ttypes.RegisterQueryServer(cfg.QueryServer(), authQueryServer{key: key, cdc: cdc, QueryServer: authkeeper.NewQueryServer(k)})\n\n\tm := authkeeper.NewMigrator(k, cfg.QueryServer(), ss)\n\tif err := cfg.RegisterMigration(types.ModuleName, 3, m.Migrate3to4); err != nil {\n\t\tpanic(fmt.Sprintf(\"failed to migrate x/%s from version 3 to 4: %v\", types.ModuleName, err))\n\t}\n\n\tif err := cfg.RegisterMigration(types.ModuleName, 4, m.Migrate4To5); err != nil {\n\t\tpanic(fmt.Sprintf(\"failed to migrate x/%s from version 4 to 5\", types.ModuleName))\n\t}\n}\n\n// Since: cosmos-sdk 0.43\n// Accounts returns all the existing accounts\nfunc (a authQueryServer) Accounts(c context.Context, req *types.QueryAccountsRequest) (*types.QueryAccountsResponse, error) {\n\tif req == nil {\n\t\treturn nil, status.Error(codes.InvalidArgument, \"empty request\")\n\t}\n\n\tctx := sdk.UnwrapSDKContext(c)\n\tstore := ctx.KVStore(a.key)\n\taccountsStore := prefix.NewStore(store, types.AddressStoreKeyPrefix)\n\n\tvar accounts []*codectypes.Any\n\tpageRes, err := query.Paginate(accountsStore, req.Pagination, func(key, value []byte) error {\n\t\taccount, err := a.decodeAccount(value)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tany, err := codectypes.NewAnyWithValue(account)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\taccounts = append(accounts, any)\n\t\treturn nil\n\t})\n\tif err != nil {\n\t\treturn nil, status.Errorf(codes.Internal, \"paginate: %v\", err)\n\t}\n\n\treturn &types.QueryAccountsResponse{Accounts: accounts, Pagination: pageRes}, err\n}\n\n// Account returns account details based on address.\nfunc (a authQueryServer) Account(c context.Context, req *types.QueryAccountRequest) (*types.QueryAccountResponse, error) {\n\tres, err := a.AccountInfo(c, &authtypes.QueryAccountInfoRequest{\n\t\tAddress: req.Address,\n\t})\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tany, err := codectypes.NewAnyWithValue(res.Info)\n\tif err != nil {\n\t\treturn nil, status.Errorf(codes.Internal, err.Error())\n\t}\n\treturn &types.QueryAccountResponse{Account: any}, nil\n}\n\nfunc (a authQueryServer) decodeAccount(bz []byte) (sdk.AccountI, error) {\n\tvar acc sdk.AccountI\n\tif err := a.cdc.UnmarshalInterface(bz, &acc); err != nil {\n\t\treturn nil, err\n\t}\n\tethAcc, ok := acc.(*ethermint.EthAccount)\n\tif ok {\n\t\treturn ethAcc.BaseAccount, nil\n\t}\n\treturn acc, nil\n}\n"
  },
  {
    "path": "app/rpc/override.go",
    "content": "package rpc\n\nimport (\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/keepers\"\n)\n\nvar overrideModules = map[string]overrideHandler{\n\tauthtypes.ModuleName: overrideAuthServices,\n}\n\ntype overrideHandler func(cdc codec.Codec, configurator module.Configurator, appKeepers keepers.AppKeepers)\n\n// RegisterService allows a module to register services.\nfunc RegisterService(cdc codec.Codec, mod module.AppModule, configurator module.Configurator, appKeepers keepers.AppKeepers) {\n\thandler, has := overrideModules[mod.Name()]\n\tif has {\n\t\thandler(cdc, configurator, appKeepers)\n\t\treturn\n\t}\n\n\tm, ok := mod.(module.HasServices)\n\tif ok {\n\t\tm.RegisterServices(configurator)\n\t}\n}\n"
  },
  {
    "path": "app/sim_bench_test.go",
    "content": "package app\n\nimport (\n\t\"fmt\"\n\t\"os\"\n\t\"testing\"\n\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\tsimtestutil \"github.com/cosmos/cosmos-sdk/testutil/sims\"\n\tsimtypes \"github.com/cosmos/cosmos-sdk/types/simulation\"\n\t\"github.com/cosmos/cosmos-sdk/x/simulation\"\n\tsimcli \"github.com/cosmos/cosmos-sdk/x/simulation/client/cli\"\n\n\t\"github.com/irisnet/irishub/v4/app/params\"\n)\n\n// Profile with:\n// /usr/local/go/bin/go test -benchmem -run=^$ github.com/irisnet/app -bench ^BenchmarkFullAppSimulation$ -Commit=true -cpuprofile cpu.out\nfunc BenchmarkFullAppSimulation(b *testing.B) {\n\tb.ReportAllocs()\n\n\tconfig := simcli.NewConfigFromFlags()\n\tconfig.ChainID = AppChainID\n\n\tdb, dir, logger, skip, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim\",\n\t\t\"Simulation\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\tif err != nil {\n\t\tb.Fatalf(\"simulation setup failed: %s\", err.Error())\n\t}\n\tif skip {\n\t\tb.Skip(\"skipping benchmark application simulation\")\n\t}\n\n\tdefer func() {\n\t\tdb.Close()\n\t\terr = os.RemoveAll(dir)\n\t\tif err != nil {\n\t\t\tb.Fatal(err)\n\t\t}\n\t}()\n\n\n\tapp := NewIrisApp(\n\t\tlogger,\n\t\tdb,\n\t\tnil,\n\t\ttrue,\n\t\tSimTestAppOptions{\n\t\t\toptions: map[string]interface{}{params.SimulationTest: true},\n\t\t},\n\t\tinterBlockCacheOpt(),\n\t)\n\n\t// run randomized simulation\n\t_, simParams, simErr := simulation.SimulateFromSeed(\n\t\tb,\n\t\tos.Stdout,\n\t\tapp.BaseApp,\n\t\tsimtestutil.AppStateFn(app.AppCodec(), app.SimulationManager(), app.DefaultGenesis()),\n\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\tsimtestutil.SimulationOperations(app, app.AppCodec(), config),\n\t\tapp.ModuleAccountAddrs(),\n\t\tconfig,\n\t\tapp.AppCodec(),\n\t)\n\n\t// export state and simParams before the simulation error is checked\n\tif err = simtestutil.CheckExportSimulation(app, config, simParams); err != nil {\n\t\tb.Fatal(err)\n\t}\n\n\tif simErr != nil {\n\t\tb.Fatal(simErr)\n\t}\n\n\tif config.Commit {\n\t\tsimtestutil.PrintStats(db)\n\t}\n}\n\nfunc BenchmarkInvariants(b *testing.B) {\n\tconfig := simcli.NewConfigFromFlags()\n\tconfig.ChainID = AppChainID\n\n\tdb, dir, logger, skip, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim\",\n\t\t\"Simulation\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\tif err != nil {\n\t\tb.Fatalf(\"simulation setup failed: %s\", err.Error())\n\t}\n\tif skip {\n\t\tb.Skip(\"skipping benchmark application simulation\")\n\t}\n\n\tconfig.AllInvariants = false\n\n\tdefer func() {\n\t\tdb.Close()\n\t\terr = os.RemoveAll(dir)\n\t\tif err != nil {\n\t\t\tb.Fatal(err)\n\t\t}\n\t}()\n\n\tapp := NewIrisApp(\n\t\tlogger,\n\t\tdb,\n\t\tnil,\n\t\ttrue,\n\t\tSimTestAppOptions{\n\t\t\toptions: map[string]interface{}{params.SimulationTest: true},\n\t\t},\n\t\tinterBlockCacheOpt(),\n\t)\n\n\t// run randomized simulation\n\t_, simParams, simErr := simulation.SimulateFromSeed(\n\t\tb,\n\t\tos.Stdout,\n\t\tapp.BaseApp,\n\t\tsimtestutil.AppStateFn(app.AppCodec(), app.SimulationManager(), app.DefaultGenesis()),\n\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\tsimtestutil.SimulationOperations(app, app.AppCodec(), config),\n\t\tapp.ModuleAccountAddrs(),\n\t\tconfig,\n\t\tapp.AppCodec(),\n\t)\n\n\t// export state and simParams before the simulation error is checked\n\tif err = simtestutil.CheckExportSimulation(app, config, simParams); err != nil {\n\t\tb.Fatal(err)\n\t}\n\n\tif simErr != nil {\n\t\tb.Fatal(simErr)\n\t}\n\n\tif config.Commit {\n\t\tsimtestutil.PrintStats(db)\n\t}\n\n\tctx := app.NewContextLegacy(true, tmproto.Header{Height: app.LastBlockHeight() + 1})\n\n\t// 3. Benchmark each invariant separately\n\t//\n\t// NOTE: We use the crisis keeper as it has all the invariants registered with\n\t// their respective metadata which makes it useful for testing/benchmarking.\n\tfor _, cr := range app.CrisisKeeper.Routes() {\n\t\tcr := cr\n\t\tb.Run(fmt.Sprintf(\"%s/%s\", cr.ModuleName, cr.Route), func(b *testing.B) {\n\t\t\tif res, stop := cr.Invar(ctx); stop {\n\t\t\t\tb.Fatalf(\n\t\t\t\t\t\"broken invariant at block %d of %d\\n%s\",\n\t\t\t\t\tctx.BlockHeight()-1, config.NumBlocks, res,\n\t\t\t\t)\n\t\t\t}\n\t\t})\n\t}\n}\n"
  },
  {
    "path": "app/sim_test.go",
    "content": "package app\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"math/rand\"\n\t\"os\"\n\t\"runtime/debug\"\n\t\"strings\"\n\t\"testing\"\n\n\tcapabilitytypes \"github.com/cosmos/ibc-go/modules/capability/types\"\n\t\"github.com/stretchr/testify/assert\"\n\t\"github.com/stretchr/testify/require\"\n\tcoinswaptypes \"mods.irisnet.org/modules/coinswap/types\"\n\thtlctypes \"mods.irisnet.org/modules/htlc/types\"\n\tmttypes \"mods.irisnet.org/modules/mt/types\"\n\tnfttypes \"mods.irisnet.org/modules/nft/types\"\n\toracletypes \"mods.irisnet.org/modules/oracle/types\"\n\trandomtypes \"mods.irisnet.org/modules/random/types\"\n\tservicetypes \"mods.irisnet.org/modules/service/types\"\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/params\"\n\tiristypes \"github.com/irisnet/irishub/v4/types\"\n\n\tabci \"github.com/cometbft/cometbft/abci/types\"\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\t\"cosmossdk.io/log\"\n\t\"cosmossdk.io/store\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\tevidencetypes \"cosmossdk.io/x/evidence/types\"\n\tdbm \"github.com/cosmos/cosmos-db\"\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\tsimtestutil \"github.com/cosmos/cosmos-sdk/testutil/sims\"\n\tsimtypes \"github.com/cosmos/cosmos-sdk/types/simulation\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\tdistrtypes \"github.com/cosmos/cosmos-sdk/x/distribution/types\"\n\tgovtypes \"github.com/cosmos/cosmos-sdk/x/gov/types\"\n\tminttypes \"github.com/cosmos/cosmos-sdk/x/mint/types\"\n\tparamtypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/simulation\"\n\tsimcli \"github.com/cosmos/cosmos-sdk/x/simulation/client/cli\"\n\tslashingtypes \"github.com/cosmos/cosmos-sdk/x/slashing/types\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\tibctransfertypes \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/types\"\n)\n\n// AppChainID hardcoded chainID for simulation\nconst AppChainID = \"irishub-1\"\n\n// Get flags every time the simulator is run\nfunc init() {\n\tsimcli.GetSimulatorFlags()\n}\n\ntype StoreKeysPrefixes struct {\n\tA        storetypes.StoreKey\n\tB        storetypes.StoreKey\n\tPrefixes [][]byte\n}\n\n// fauxMerkleModeOpt returns a BaseApp option to use a dbStoreAdapter instead of\n// an IAVLStore for faster simulation speed.\nfunc fauxMerkleModeOpt(bapp *baseapp.BaseApp) {\n\tbapp.SetFauxMerkleMode()\n}\n\n// interBlockCacheOpt returns a BaseApp option function that sets the persistent\n// inter-block write-through cache.\nfunc interBlockCacheOpt() func(*baseapp.BaseApp) {\n\treturn baseapp.SetInterBlockCache(store.NewCommitKVStoreCacheManager())\n}\n\nfunc TestFullAppSimulation(t *testing.T) {\n\tconfig := simcli.NewConfigFromFlags()\n\tconfig.ChainID = AppChainID\n\n\tdb, dir, logger, skip, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim\",\n\t\t\"Simulation\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\n\tif skip {\n\t\tt.Skip(\"skipping benchmark application simulation\")\n\t}\n\trequire.NoError(t, err, \"simulation setup failed\")\n\n\tdefer func() {\n\t\tdb.Close()\n\t\trequire.NoError(t, os.RemoveAll(dir))\n\t}()\n\n\n\tapp := createApp(logger, db, fauxMerkleModeOpt)\n\trequire.Equal(t, \"IrisApp\", app.Name())\n\n\t// run randomized simulation\n\t_, simParams, simErr := simulation.SimulateFromSeed(\n\t\tt,\n\t\tos.Stdout,\n\t\tapp.BaseApp,\n\t\tsimtestutil.AppStateFn(app.AppCodec(), app.SimulationManager(), app.DefaultGenesis()),\n\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\tsimtestutil.SimulationOperations(app, app.AppCodec(), config),\n\t\tapp.ModuleAccountAddrs(),\n\t\tconfig,\n\t\tapp.AppCodec(),\n\t)\n\n\t// export state and simParams before the simulation error is checked\n\terr = simtestutil.CheckExportSimulation(app, config, simParams)\n\trequire.NoError(t, err)\n\trequire.NoError(t, simErr)\n\n\tif config.Commit {\n\t\tsimtestutil.PrintStats(db)\n\t}\n}\n\nfunc TestAppImportExport(t *testing.T) {\n\tconfig := simcli.NewConfigFromFlags()\n\tconfig.ChainID = AppChainID\n\n\tdb, dir, logger, skip, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim\",\n\t\t\"Simulation\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\n\tif skip {\n\t\tt.Skip(\"skipping benchmark application simulation\")\n\t}\n\trequire.NoError(t, err, \"simulation setup failed\")\n\n\tdefer func() {\n\t\tdb.Close()\n\t\trequire.NoError(t, os.RemoveAll(dir))\n\t}()\n\n\tapp := createApp(logger, db, fauxMerkleModeOpt)\n\trequire.Equal(t, \"IrisApp\", app.Name())\n\n\t// Run randomized simulation\n\t_, simParams, simErr := simulation.SimulateFromSeed(\n\t\tt,\n\t\tos.Stdout,\n\t\tapp.BaseApp,\n\t\tsimtestutil.AppStateFn(app.AppCodec(), app.SimulationManager(), app.DefaultGenesis()),\n\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\tsimtestutil.SimulationOperations(app, app.AppCodec(), config),\n\t\tapp.ModuleAccountAddrs(),\n\t\tconfig,\n\t\tapp.AppCodec(),\n\t)\n\n\t// export state and simParams before the simulation error is checked\n\terr = simtestutil.CheckExportSimulation(app, config, simParams)\n\trequire.NoError(t, err)\n\trequire.NoError(t, simErr)\n\n\tif config.Commit {\n\t\tsimtestutil.PrintStats(db)\n\t}\n\n\tfmt.Printf(\"exporting genesis...\\n\")\n\n\texported, err := app.ExportAppStateAndValidators(false, []string{}, []string{})\n\trequire.NoError(t, err)\n\n\tfmt.Printf(\"importing genesis...\\n\")\n\n\tnewDB, newDir, _, _, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim-2\",\n\t\t\"Simulation-2\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\trequire.NoError(t, err, \"simulation setup failed\")\n\n\tdefer func() {\n\t\tnewDB.Close()\n\t\trequire.NoError(t, os.RemoveAll(newDir))\n\t}()\n\n\tnewApp := createApp(logger, newDB, fauxMerkleModeOpt)\n\trequire.Equal(t, \"IrisApp\", newApp.Name())\n\n\tvar genesisState iristypes.GenesisState\n\terr = json.Unmarshal(exported.AppState, &genesisState)\n\trequire.NoError(t, err)\n\n\tdefer func() {\n\t\tif r := recover(); r != nil {\n\t\t\terr := fmt.Sprintf(\"%v\", r)\n\t\t\tif !strings.Contains(err, \"validator set is empty after InitGenesis\") {\n\t\t\t\tpanic(r)\n\t\t\t}\n\t\t\tlogger.Info(\"Skipping simulation as all validators have been unbonded\")\n\t\t\tlogger.Info(\"err\", err, \"stacktrace\", string(debug.Stack()))\n\t\t}\n\t}()\n\n\tctxA := app.NewContextLegacy(true, tmproto.Header{Height: app.LastBlockHeight()})\n\tctxB := newApp.NewContextLegacy(true, tmproto.Header{Height: app.LastBlockHeight()})\n\t_, err = newApp.mm.InitGenesis(ctxB, app.AppCodec(), genesisState)\n\tif err != nil {\n\t\tif strings.Contains(err.Error(), \"validator set is empty after InitGenesis\") {\n\t\t\tlogger.Info(\"Skipping simulation as all validators have been unbonded\")\n\t\t\tlogger.Info(\"err\", err, \"stacktrace\", string(debug.Stack()))\n\t\t\treturn\n\t\t}\n\t}\n\trequire.NoError(t, err)\n\terr = newApp.StoreConsensusParams(ctxB, exported.ConsensusParams)\n\trequire.NoError(t, err)\n\n\tfmt.Printf(\"comparing stores...\\n\")\n\n\tstoreKeysPrefixes := []StoreKeysPrefixes{\n\t\t{app.AppKeepers.KvStoreKeys()[authtypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[authtypes.StoreKey], [][]byte{}},\n\t\t{\n\t\t\tapp.AppKeepers.KvStoreKeys()[stakingtypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[stakingtypes.StoreKey],\n\t\t\t[][]byte{\n\t\t\t\tstakingtypes.UnbondingQueueKey, stakingtypes.RedelegationQueueKey, stakingtypes.ValidatorQueueKey,\n\t\t\t\tstakingtypes.HistoricalInfoKey, stakingtypes.UnbondingIDKey, stakingtypes.UnbondingIndexKey,\n\t\t\t\tstakingtypes.UnbondingTypeKey, stakingtypes.ValidatorUpdatesKey,\n\t\t\t},\n\t\t}, // ordering may change but it doesn't matter\n\t\t{app.AppKeepers.KvStoreKeys()[slashingtypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[slashingtypes.StoreKey], [][]byte{slashingtypes.ValidatorMissedBlockBitmapKeyPrefix}},\n\t\t{app.AppKeepers.KvStoreKeys()[minttypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[minttypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[distrtypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[distrtypes.StoreKey], [][]byte{}},\n\t\t{\n\t\t\tapp.AppKeepers.KvStoreKeys()[banktypes.StoreKey],\n\t\t\tnewApp.AppKeepers.KvStoreKeys()[banktypes.StoreKey],\n\t\t\t[][]byte{banktypes.BalancesPrefix},\n\t\t},\n\t\t{app.AppKeepers.KvStoreKeys()[paramtypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[paramtypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[govtypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[govtypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[evidencetypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[evidencetypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[capabilitytypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[capabilitytypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[ibctransfertypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[ibctransfertypes.StoreKey], [][]byte{}},\n\n\t\t// check irismod module\n\t\t{app.AppKeepers.KvStoreKeys()[tokentypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[tokentypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[oracletypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[oracletypes.StoreKey], [][]byte{}},\n\t\t// mt.Supply is InitSupply, can be not equal to TotalSupply\n\t\t{app.AppKeepers.KvStoreKeys()[mttypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[mttypes.StoreKey], [][]byte{mttypes.PrefixMT}},\n\t\t{app.AppKeepers.KvStoreKeys()[nfttypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[nfttypes.StoreKey], [][]byte{{0x05}}},\n\t\t{\n\t\t\tapp.AppKeepers.KvStoreKeys()[servicetypes.StoreKey],\n\t\t\tnewApp.AppKeepers.KvStoreKeys()[servicetypes.StoreKey],\n\t\t\t[][]byte{servicetypes.InternalCounterKey},\n\t\t},\n\t\t{\n\t\t\tapp.AppKeepers.KvStoreKeys()[randomtypes.StoreKey],\n\t\t\tnewApp.AppKeepers.KvStoreKeys()[randomtypes.StoreKey],\n\t\t\t[][]byte{randomtypes.RandomKey},\n\t\t},\n\t\t{app.AppKeepers.KvStoreKeys()[htlctypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[htlctypes.StoreKey], [][]byte{}},\n\t\t{app.AppKeepers.KvStoreKeys()[coinswaptypes.StoreKey], newApp.AppKeepers.KvStoreKeys()[coinswaptypes.StoreKey], [][]byte{}},\n\t}\n\n\tfor _, skp := range storeKeysPrefixes {\n\t\tstoreA := ctxA.KVStore(skp.A)\n\t\tstoreB := ctxB.KVStore(skp.B)\n\n\t\tfailedKVAs, failedKVBs := simtestutil.DiffKVStores(storeA, storeB, skp.Prefixes)\n\t\trequire.Equal(t, len(failedKVAs), len(failedKVBs), \"unequal sets of key-values to compare\")\n\n\t\tfmt.Printf(\n\t\t\t\"compared %d different key/value pairs between %s and %s\\n\",\n\t\t\tlen(failedKVAs),\n\t\t\tskp.A,\n\t\t\tskp.B,\n\t\t)\n\t\tif !assert.Equal(t, 0, len(failedKVAs), simtestutil.GetSimulationLog(skp.A.Name(), app.SimulationManager().StoreDecoders, failedKVAs, failedKVBs)) {\n\t\t\tfor _, v := range failedKVAs {\n\t\t\t\tt.Logf(\"store missmatch: %q\\n\", v)\n\t\t\t}\n\t\t\tt.FailNow()\n\t\t}\n\t}\n}\n\nfunc TestAppSimulationAfterImport(t *testing.T) {\n\tconfig := simcli.NewConfigFromFlags()\n\tconfig.ChainID = AppChainID\n\n\tdb, dir, logger, skip, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim\",\n\t\t\"Simulation\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\n\tif skip {\n\t\tt.Skip(\"skipping benchmark application simulation\")\n\t}\n\trequire.NoError(t, err, \"simulation setup failed\")\n\n\tdefer func() {\n\t\tdb.Close()\n\t\trequire.NoError(t, os.RemoveAll(dir))\n\t}()\n\n\tapp := createApp(logger, db, fauxMerkleModeOpt)\n\trequire.Equal(t, \"IrisApp\", app.Name())\n\n\t// Run randomized simulation\n\tstopEarly, simParams, simErr := simulation.SimulateFromSeed(\n\t\tt,\n\t\tos.Stdout,\n\t\tapp.BaseApp,\n\t\tsimtestutil.AppStateFn(app.AppCodec(), app.SimulationManager(), app.DefaultGenesis()),\n\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\tsimtestutil.SimulationOperations(app, app.AppCodec(), config),\n\t\tapp.ModuleAccountAddrs(),\n\t\tconfig,\n\t\tapp.AppCodec(),\n\t)\n\n\t// export state and simParams before the simulation error is checked\n\terr = simtestutil.CheckExportSimulation(app, config, simParams)\n\trequire.NoError(t, err)\n\trequire.NoError(t, simErr)\n\n\tif config.Commit {\n\t\tsimtestutil.PrintStats(db)\n\t}\n\n\tif stopEarly {\n\t\tfmt.Println(\"can't export or import a zero-validator genesis, exiting test...\")\n\t\treturn\n\t}\n\n\tfmt.Printf(\"exporting genesis...\\n\")\n\n\texported, err := app.ExportAppStateAndValidators(true, []string{}, []string{})\n\trequire.NoError(t, err)\n\n\tfmt.Printf(\"importing genesis...\\n\")\n\n\tnewDB, newDir, _, _, err := simtestutil.SetupSimulation(\n\t\tconfig,\n\t\t\"goleveldb-app-sim-2\",\n\t\t\"Simulation-2\",\n\t\tsimcli.FlagVerboseValue,\n\t\tsimcli.FlagEnabledValue,\n\t)\n\trequire.NoError(t, err, \"simulation setup failed\")\n\n\tdefer func() {\n\t\tnewDB.Close()\n\t\trequire.NoError(t, os.RemoveAll(newDir))\n\t}()\n\n\tnewApp := createApp(logger, newDB, fauxMerkleModeOpt)\n\trequire.Equal(t, \"IrisApp\", newApp.Name())\n\n\t_, err = newApp.InitChain(&abci.RequestInitChain{\n\t\tAppStateBytes: exported.AppState,\n\t\tChainId:       AppChainID,\n\t})\n\n\trequire.NoError(t, err)\n\n\t_, _, err = simulation.SimulateFromSeed(\n\t\tt,\n\t\tos.Stdout,\n\t\tnewApp.BaseApp,\n\t\tsimtestutil.AppStateFn(app.AppCodec(), app.SimulationManager(), app.DefaultGenesis()),\n\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\tsimtestutil.SimulationOperations(newApp, newApp.AppCodec(), config),\n\t\tapp.ModuleAccountAddrs(),\n\t\tconfig,\n\t\tnewApp.AppCodec(),\n\t)\n\trequire.NoError(t, err)\n}\n\n// TODO: Make another test for the fuzzer itself, which just has noOp txs\n// and doesn't depend on the application.\nfunc TestAppStateDeterminism(t *testing.T) {\n\tif !simcli.FlagEnabledValue {\n\t\tt.Skip(\"skipping application simulation\")\n\t}\n\n\tconfig := simcli.NewConfigFromFlags()\n\tconfig.InitialBlockHeight = 1\n\tconfig.ExportParamsPath = \"\"\n\tconfig.OnOperation = false\n\tconfig.AllInvariants = false\n\tconfig.ChainID = AppChainID\n\n\tnumSeeds := 3\n\tnumTimesToRunPerSeed := 5\n\tappHashList := make([]json.RawMessage, numTimesToRunPerSeed)\n\n\tfor i := 0; i < numSeeds; i++ {\n\t\tconfig.Seed = rand.Int63()\n\n\t\tfor j := 0; j < numTimesToRunPerSeed; j++ {\n\t\t\tvar logger log.Logger\n\t\t\tif simcli.FlagVerboseValue {\n\t\t\t\tlogger = log.NewTestLogger(t)\n\t\t\t} else {\n\t\t\t\tlogger = log.NewNopLogger()\n\t\t\t}\n\n\t\t\tdb := dbm.NewMemDB()\n\t\t\tapp := createApp(logger, db, interBlockCacheOpt())\n\n\t\t\tfmt.Printf(\n\t\t\t\t\"running non-determinism simulation; seed %d: %d/%d, attempt: %d/%d\\n\",\n\t\t\t\tconfig.Seed, i+1, numSeeds, j+1, numTimesToRunPerSeed,\n\t\t\t)\n\n\t\t\t_, _, err := simulation.SimulateFromSeed(\n\t\t\t\tt,\n\t\t\t\tos.Stdout,\n\t\t\t\tapp.BaseApp,\n\t\t\t\tsimtestutil.AppStateFn(\n\t\t\t\t\tapp.AppCodec(),\n\t\t\t\t\tapp.SimulationManager(),\n\t\t\t\t\tapp.DefaultGenesis(),\n\t\t\t\t),\n\t\t\t\tsimtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1\n\t\t\t\tsimtestutil.SimulationOperations(app, app.AppCodec(), config),\n\t\t\t\tapp.ModuleAccountAddrs(),\n\t\t\t\tconfig,\n\t\t\t\tapp.AppCodec(),\n\t\t\t)\n\t\t\trequire.NoError(t, err)\n\n\t\t\tif config.Commit {\n\t\t\t\tsimtestutil.PrintStats(db)\n\t\t\t}\n\n\t\t\tappHash := app.LastCommitID().Hash\n\t\t\tappHashList[j] = appHash\n\n\t\t\tif j != 0 {\n\t\t\t\trequire.Equal(\n\t\t\t\t\tt,\n\t\t\t\t\tstring(appHashList[0]),\n\t\t\t\t\tstring(appHashList[j]),\n\t\t\t\t\t\"non-determinism in seed %d: %d/%d, attempt: %d/%d\\n\",\n\t\t\t\t\tconfig.Seed,\n\t\t\t\t\ti+1,\n\t\t\t\t\tnumSeeds,\n\t\t\t\t\tj+1,\n\t\t\t\t\tnumTimesToRunPerSeed,\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}\n}\n\n// EmptyAppOptions is a stub implementing AppOptions\ntype EmptyAppOptions struct{}\n\n// Get implements AppOptions\nfunc (ao EmptyAppOptions) Get(o string) interface{} {\n\treturn nil\n}\n\n// SimTestAppOptions is a stub implementing AppOptions\ntype SimTestAppOptions struct {\n\toptions map[string]interface{}\n}\n\n// Get implements AppOptions\nfunc (o SimTestAppOptions) Get(key string) interface{} {\n\treturn o.options[key]\n}\n\nfunc createApp(\n\tlogger log.Logger,\n\tdb dbm.DB,\n\tbaseAppOptions ...func(*baseapp.BaseApp),\n) *IrisApp {\n\tif baseAppOptions == nil {\n\t\tbaseAppOptions = []func(*baseapp.BaseApp){}\n\t}\n\tbaseAppOptions = append(baseAppOptions, baseapp.SetChainID(AppChainID))\n\treturn NewIrisApp(\n\t\tlogger,\n\t\tdb,\n\t\tnil,\n\t\ttrue,\n\t\tSimTestAppOptions{\n\t\t\toptions: map[string]interface{}{params.SimulationTest: true},\n\t\t},\n\t\tbaseAppOptions...,\n\t)\n}\n"
  },
  {
    "path": "app/upgrade.go",
    "content": "package app\n\nimport (\n\t\"fmt\"\n\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/upgrades\"\n\tv200 \"github.com/irisnet/irishub/v4/app/upgrades/v200\"\n\tv210 \"github.com/irisnet/irishub/v4/app/upgrades/v210\"\n\tv300 \"github.com/irisnet/irishub/v4/app/upgrades/v300\"\n\tv400 \"github.com/irisnet/irishub/v4/app/upgrades/v400\"\n)\n\nvar (\n\trouter = upgrades.NewUpgradeRouter().\n\t\tRegister(v200.Upgrade).\n\t\tRegister(v210.Upgrade).\n\t\tRegister(v300.Upgrade).\n\t\tRegister(v400.Upgrade)\n)\n\n// RegisterUpgradePlans register a handler of upgrade plan\nfunc (app *IrisApp) RegisterUpgradePlans() {\n\tapp.setupUpgradeStoreLoaders()\n\tapp.setupUpgradeHandlers()\n}\n\nfunc (app *IrisApp) toolbox() upgrades.Toolbox {\n\treturn upgrades.Toolbox{\n\t\tAppCodec:      app.AppCodec(),\n\t\tModuleManager: app.mm,\n\t\tReaderWriter:  app,\n\t\tAppKeepers:    app.AppKeepers,\n\t}\n}\n\n// configure store loader that checks if version == upgradeHeight and applies store upgrades\nfunc (app *IrisApp) setupUpgradeStoreLoaders() {\n\tupgradeInfo, err := app.UpgradeKeeper.ReadUpgradeInfoFromDisk()\n\tif err != nil {\n\t\tpanic(fmt.Sprintf(\"failed to read upgrade info from disk %s\", err))\n\t}\n\n\tif app.UpgradeKeeper.IsSkipHeight(upgradeInfo.Height) {\n\t\treturn\n\t}\n\n\tapp.SetStoreLoader(\n\t\tupgradetypes.UpgradeStoreLoader(\n\t\t\tupgradeInfo.Height,\n\t\t\trouter.UpgradeInfo(upgradeInfo.Name).StoreUpgrades,\n\t\t),\n\t)\n}\n\nfunc (app *IrisApp) setupUpgradeHandlers() {\n\tbox := app.toolbox()\n\tfor upgradeName, upgrade := range router.Routers() {\n\t\tapp.UpgradeKeeper.SetUpgradeHandler(\n\t\t\tupgradeName,\n\t\t\tupgrade.UpgradeHandlerConstructor(\n\t\t\t\tapp.mm,\n\t\t\t\tapp.configurator,\n\t\t\t\tbox,\n\t\t\t),\n\t\t)\n\t}\n}\n"
  },
  {
    "path": "app/upgrades/types.go",
    "content": "package upgrades\n\nimport (\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\tstore \"cosmossdk.io/store/types\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\n\t\"github.com/irisnet/irishub/v4/app/keepers\"\n)\n\n// Upgrade defines a struct containing necessary fields that a SoftwareUpgradeProposal\n// must have written, in order for the state migration to go smoothly.\n// An upgrade must implement this struct, and then set it in the app.go.\n// The app.go will then define the handler.\ntype Upgrade struct {\n\t// Upgrade version name, for the upgrade handler, e.g. `v7`\n\tUpgradeName string\n\n\t// UpgradeHandlerConstructor defines the function that creates an upgrade handler\n\tUpgradeHandlerConstructor func(*module.Manager, module.Configurator, Toolbox) upgradetypes.UpgradeHandler\n\n\t// Store upgrades, should be used for any new modules introduced, new modules deleted, or store names renamed.\n\tStoreUpgrades *store.StoreUpgrades\n}\n\n// ConsensusParamsReaderWriter defines the interface for reading and writing consensus params\ntype ConsensusParamsReaderWriter interface {\n\tStoreConsensusParams(ctx sdk.Context, cp tmproto.ConsensusParams) error\n\tGetConsensusParams(ctx sdk.Context) tmproto.ConsensusParams\n}\n\n// Toolbox contains all the modules necessary for an upgrade\ntype Toolbox struct {\n\tAppCodec      codec.Codec\n\tModuleManager *module.Manager\n\tReaderWriter  ConsensusParamsReaderWriter\n\tkeepers.AppKeepers\n}\n\ntype upgradeRouter struct {\n\tmu map[string]Upgrade\n}\n\n// NewUpgradeRouter creates a new upgrade router.\n//\n// No parameters.\n// Returns a pointer to upgradeRouter.\nfunc NewUpgradeRouter() *upgradeRouter {\n\treturn &upgradeRouter{make(map[string]Upgrade)}\n}\n\nfunc (r *upgradeRouter) Register(u Upgrade) *upgradeRouter {\n\tif _, has := r.mu[u.UpgradeName]; has {\n\t\tpanic(u.UpgradeName + \" already registered\")\n\t}\n\tr.mu[u.UpgradeName] = u\n\treturn r\n}\n\nfunc (r *upgradeRouter) Routers() map[string]Upgrade {\n\treturn r.mu\n}\n\nfunc (r *upgradeRouter) UpgradeInfo(planName string) Upgrade {\n\treturn r.mu[planName]\n}\n"
  },
  {
    "path": "app/upgrades/v200/config.go",
    "content": "package v200\n\nimport (\n\t\"cosmossdk.io/math\"\n\tetherminttypes \"github.com/evmos/ethermint/x/evm/types\"\n\tfeemarkettypes \"github.com/evmos/ethermint/x/feemarket/types\"\n\n\t\"github.com/irisnet/irishub/v4/types\"\n)\n\n// NOTE: Before the release of irishub 2.0.0, the configuration in this file must be modified\n\nconst (\n\tmaxBlockGas = 40000000\n)\n\nvar (\n\tevmToken  = types.EvmToken\n\tevmParams = etherminttypes.Params{\n\t\tEvmDenom:            evmToken.MinUnit,\n\t\tEnableCreate:        true,\n\t\tEnableCall:          true,\n\t\tChainConfig:         etherminttypes.DefaultChainConfig(),\n\t\tExtraEIPs:           nil,\n\t\tAllowUnprotectedTxs: etherminttypes.DefaultAllowUnprotectedTxs,\n\t}\n\n\tfeemarketParams = feemarkettypes.Params{\n\t\tNoBaseFee:                false,\n\t\tBaseFeeChangeDenominator: 8,\n\t\tElasticityMultiplier:     4,\n\t\tBaseFee:                  math.NewInt(500000000000),\n\t\tMinGasPrice:              math.LegacyNewDecFromInt(math.NewInt(500000000000)),\n\t\tMinGasMultiplier:         math.LegacyNewDecWithPrec(5, 1),\n\t}\n)\n\nfunc generateFeemarketParams(enableHeight int64) feemarkettypes.Params {\n\tfeemarketParams.EnableHeight = enableHeight\n\treturn feemarketParams\n}\n"
  },
  {
    "path": "app/upgrades/v200/upgrades.go",
    "content": "package v200\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"cosmossdk.io/store/prefix\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\t\"cosmossdk.io/x/upgrade/types\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\n\ticahosttypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/types\"\n\ticatypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/types\"\n\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n\t\"github.com/evmos/ethermint/x/feemarket\"\n\tfeemarkettypes \"github.com/evmos/ethermint/x/feemarket/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/upgrades\"\n\tirisevm \"github.com/irisnet/irishub/v4/modules/evm\"\n)\n\n// Upgrade defines a struct containing necessary fields that a SoftwareUpgradeProposal\nvar Upgrade = upgrades.Upgrade{\n\tUpgradeName:               \"v2.0\",\n\tUpgradeHandlerConstructor: upgradeHandlerConstructor,\n\tStoreUpgrades: &storetypes.StoreUpgrades{\n\t\tAdded:   []string{evmtypes.StoreKey, feemarkettypes.StoreKey},\n\t\tDeleted: []string{icahosttypes.StoreKey},\n\t},\n}\n\nfunc upgradeHandlerConstructor(\n\tm *module.Manager,\n\tc module.Configurator,\n\tbox upgrades.Toolbox,\n) upgradetypes.UpgradeHandler {\n\treturn func(context context.Context, _ upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) {\n\t\tctx := sdk.UnwrapSDKContext(context)\n\t\tfromVM[evmtypes.ModuleName] = irisevm.AppModule{}.ConsensusVersion()\n\t\tfromVM[feemarkettypes.ModuleName] = feemarket.AppModule{}.ConsensusVersion()\n\n\t\tif err := box.EvmKeeper.SetParams(ctx, evmParams); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\tif err := box.FeeMarketKeeper.SetParams(ctx, generateFeemarketParams(ctx.BlockHeight())); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\t//transfer token ownership\n\t\towner, err := sdk.AccAddressFromBech32(evmToken.Owner)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\tif err := box.TokenKeeper.UnsafeTransferTokenOwner(ctx, evmToken.Symbol, owner); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\t//update consensusParams.Block.MaxGas\n\t\tconsensusParams := box.ReaderWriter.GetConsensusParams(ctx)\n\t\tconsensusParams.Block.MaxGas = maxBlockGas\n\t\tbox.ReaderWriter.StoreConsensusParams(ctx, consensusParams)\n\n\t\t//add Burner Permission for authtypes.FeeCollectorName\n\t\tfeeModuleAccount := box.AccountKeeper.GetModuleAccount(ctx, authtypes.FeeCollectorName)\n\t\taccount, ok := feeModuleAccount.(*authtypes.ModuleAccount)\n\t\tif !ok {\n\t\t\treturn nil, fmt.Errorf(\"feeCollector accountis not *authtypes.ModuleAccount\")\n\t\t}\n\t\taccount.Permissions = append(account.Permissions, authtypes.Burner)\n\t\tbox.AccountKeeper.SetModuleAccount(ctx, account)\n\n\t\t// delete ica moudule version from upgrade moudule\n\t\tstore := ctx.KVStore(box.GetKey(upgradetypes.StoreKey))\n\t\tversionStore := prefix.NewStore(store, []byte{types.VersionMapByte})\n\t\tversionStore.Delete([]byte(icatypes.ModuleName))\n\n\t\treturn box.ModuleManager.RunMigrations(ctx, c, fromVM)\n\t}\n}\n"
  },
  {
    "path": "app/upgrades/v210/upgrades.go",
    "content": "package v210\n\nimport (\n\t\"context\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tconsensustypes \"github.com/cosmos/cosmos-sdk/x/consensus/types\"\n\tcrisistypes \"github.com/cosmos/cosmos-sdk/x/crisis/types\"\n\tparamstypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n\t\"github.com/cosmos/ibc-go/v8/modules/core/exported\"\n\n\tibcnfttransfertypes \"github.com/bianjieai/nft-transfer/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/upgrades\"\n)\n\n// Upgrade defines a struct containing necessary fields that a SoftwareUpgradeProposal\nvar Upgrade = upgrades.Upgrade{\n\tUpgradeName:               \"v2.1\",\n\tUpgradeHandlerConstructor: upgradeHandlerConstructor,\n\tStoreUpgrades: &storetypes.StoreUpgrades{\n\t\tAdded: []string{crisistypes.StoreKey, consensustypes.StoreKey, ibcnfttransfertypes.StoreKey},\n\t},\n}\n\nfunc upgradeHandlerConstructor(\n\tm *module.Manager,\n\tc module.Configurator,\n\tbox upgrades.Toolbox,\n) upgradetypes.UpgradeHandler {\n\treturn func(context context.Context, _ upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) {\n\t\tctx := sdk.UnwrapSDKContext(context)\n\t\t// Enable 09-localhost type in allowed clients according to\n\t\t// https://github.com/cosmos/ibc-go/blob/v7.3.0/docs/migrations/v7-to-v7_1.md\n\t\tparams := box.IBCKeeper.ClientKeeper.GetParams(ctx)\n\t\tparams.AllowedClients = append(params.AllowedClients, exported.Localhost)\n\t\tbox.IBCKeeper.ClientKeeper.SetParams(ctx, params)\n\n\t\t// Migrate Tendermint consensus parameters from x/params module to a\n\t\t// dedicated x/consensus module.\n\t\tbaseAppLegacySS := box.ParamsKeeper.Subspace(baseapp.Paramspace).\n\t\t\tWithKeyTable(paramstypes.ConsensusParamsKeyTable())\n\t\tbaseapp.MigrateParams(ctx, baseAppLegacySS, &box.ConsensusParamsKeeper.ParamsStore)\n\t\treturn box.ModuleManager.RunMigrations(ctx, c, fromVM)\n\t}\n}\n"
  },
  {
    "path": "app/upgrades/v300/constants.go",
    "content": "package v300\n\nimport (\n\t\"cosmossdk.io/math\"\n)\n\nvar (\n\t// ValidatorBondFactor dictates the cap on the liquid shares\n\t// for a validator - determined as a multiple to their validator bond\n\t// (e.g. ValidatorBondShares = 1000, BondFactor = 250 -> LiquidSharesCap: 250,000)\n\tValidatorBondFactor = math.LegacyNewDec(250)\n\t// ValidatorLiquidStakingCap represents a cap on the portion of stake that\n\t// comes from liquid staking providers for a specific validator\n\tValidatorLiquidStakingCap = math.LegacyMustNewDecFromStr(\"1\") // 100%\n\t// GlobalLiquidStakingCap represents the percentage cap on\n\t// the portion of a chain's total stake can be liquid\n\tGlobalLiquidStakingCap = math.LegacyMustNewDecFromStr(\"0.25\") // 25%\n\n\t// BeaconContractAddress is the address of the beacon contract\n\tBeaconContractAddress = \"0xce3d3e91a49ff35b316e7eb84d9fecb067611150\"\n\n\t// MinDepositRatio is the minimum deposit ratio\n\tMinDepositRatio = math.LegacyMustNewDecFromStr(\"0.01\")\n\n\t// EvmMinGasPrice is the minimum gas price for the EVM\n\tEvmMinGasPrice = math.LegacyNewDec(50000000000)\n\n\tallowMessages = []string{\"*\"}\n)\n"
  },
  {
    "path": "app/upgrades/v300/lsm.go",
    "content": "package v300\n\nimport (\n\t\"context\"\n\t\"sort\"\n\n\t\"cosmossdk.io/math\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/staking/types\"\n)\n\n// keeper contains the staking keeper functions required\n// for the migration\ntype keeper interface {\n\tGetAllDelegations(ctx context.Context) ([]types.Delegation, error)\n\tGetAllValidators(ctx context.Context) ([]types.Validator, error)\n\tSetDelegation(ctx context.Context, delegation types.Delegation) error\n\tSetValidator(ctx context.Context, validator types.Validator) error\n\tRefreshTotalLiquidStaked(ctx context.Context) error\n\tGetParams(ctx context.Context) (params types.Params, err error)\n\tSetParams(ctx context.Context, params types.Params) error\n}\n\n// migrateParamsStore migrates the params store to the latest version.\n//\n// ctx - sdk context\n// k - keeper\nfunc migrateParamsStore(ctx sdk.Context, k keeper) error {\n\tparams, err := k.GetParams(ctx)\n\tif err != nil {\n\t\treturn err\n\t}\n\tparams.ValidatorBondFactor = ValidatorBondFactor\n\tparams.ValidatorLiquidStakingCap = ValidatorLiquidStakingCap\n\tparams.GlobalLiquidStakingCap = GlobalLiquidStakingCap\n\treturn k.SetParams(ctx, params)\n}\n\n// migrateValidators Set each validator's ValidatorBondShares and LiquidShares to 0\nfunc migrateValidators(ctx sdk.Context, k keeper) error {\n\tvalidators, err := k.GetAllValidators(ctx)\n\tif err != nil {\n\t\treturn err\n\t}\n\tfor _, validator := range validators {\n\t\tvalidator.ValidatorBondShares = math.LegacyZeroDec()\n\t\tvalidator.LiquidShares = math.LegacyZeroDec()\n\t\tif err := k.SetValidator(ctx, validator); err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\treturn nil\n}\n\n// migrateDelegations Set each delegation's ValidatorBond field to false\nfunc migrateDelegations(ctx sdk.Context, k keeper) error {\n\tdelegations, err := k.GetAllDelegations(ctx)\n\tif err != nil {\n\t\treturn err\n\t}\n\tfor _, delegation := range delegations {\n\t\tdelegation.ValidatorBond = false\n\t\tif err := k.SetDelegation(ctx, delegation); err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\treturn nil\n}\n\n// MigrateUBDEntries will remove the ubdEntries with same creation_height\n// and create a new ubdEntry with updated balance and initial_balance\nfunc migrateUBDEntries(ctx sdk.Context, store storetypes.KVStore, cdc codec.BinaryCodec) error {\n\titerator := storetypes.KVStorePrefixIterator(store, types.UnbondingDelegationKey)\n\tdefer iterator.Close()\n\n\tfor ; iterator.Valid(); iterator.Next() {\n\t\tubd := types.MustUnmarshalUBD(cdc, iterator.Value())\n\n\t\tentriesAtSameCreationHeight := make(map[int64][]types.UnbondingDelegationEntry)\n\t\tfor _, ubdEntry := range ubd.Entries {\n\t\t\tentriesAtSameCreationHeight[ubdEntry.CreationHeight] = append(entriesAtSameCreationHeight[ubdEntry.CreationHeight], ubdEntry)\n\t\t}\n\n\t\tcreationHeights := make([]int64, 0, len(entriesAtSameCreationHeight))\n\t\tfor k := range entriesAtSameCreationHeight {\n\t\t\tcreationHeights = append(creationHeights, k)\n\t\t}\n\n\t\tsort.Slice(creationHeights, func(i, j int) bool { return creationHeights[i] < creationHeights[j] })\n\n\t\tubd.Entries = make([]types.UnbondingDelegationEntry, 0, len(creationHeights))\n\n\t\tfor _, h := range creationHeights {\n\t\t\tubdEntry := types.UnbondingDelegationEntry{\n\t\t\t\tBalance:        math.ZeroInt(),\n\t\t\t\tInitialBalance: math.ZeroInt(),\n\t\t\t}\n\t\t\tfor _, entry := range entriesAtSameCreationHeight[h] {\n\t\t\t\tubdEntry.Balance = ubdEntry.Balance.Add(entry.Balance)\n\t\t\t\tubdEntry.InitialBalance = ubdEntry.InitialBalance.Add(entry.InitialBalance)\n\t\t\t\tubdEntry.CreationHeight = entry.CreationHeight\n\t\t\t\tubdEntry.CompletionTime = entry.CompletionTime\n\t\t\t}\n\t\t\tubd.Entries = append(ubd.Entries, ubdEntry)\n\t\t}\n\n\t\t// set the new ubd to the store\n\t\tsetUBDToStore(ctx, store, cdc, ubd)\n\t}\n\treturn nil\n}\n\nfunc setUBDToStore(_ sdk.Context, store storetypes.KVStore, cdc codec.BinaryCodec, ubd types.UnbondingDelegation) {\n\tdelegatorAddress := sdk.MustAccAddressFromBech32(ubd.DelegatorAddress)\n\n\tbz := types.MustMarshalUBD(cdc, ubd)\n\n\taddr, err := sdk.ValAddressFromBech32(ubd.ValidatorAddress)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\tkey := types.GetUBDKey(delegatorAddress, addr)\n\n\tstore.Set(key, bz)\n}\n\n// migrateStore performs the in-place store migration for adding LSM support to v0.45.16-ics, including:\n//   - Adding params ValidatorBondFactor, GlobalLiquidStakingCap, ValidatorLiquidStakingCap\n//   - Setting each validator's ValidatorBondShares and LiquidShares to 0\n//   - Setting each delegation's ValidatorBond field to false\n//   - Calculating the total liquid staked by summing the delegations from ICA accounts\nfunc migrateStore(ctx sdk.Context, storeKey storetypes.StoreKey, cdc codec.BinaryCodec, k keeper) error {\n\tstore := ctx.KVStore(storeKey)\n\n\tctx.Logger().Info(\"Staking LSM Migration: Migrating param store\")\n\tif err := migrateParamsStore(ctx, k); err != nil {\n\t\treturn err\n\t}\n\n\tctx.Logger().Info(\"Staking LSM Migration: Migrating validators\")\n\tif err := migrateValidators(ctx, k); err != nil {\n\t\treturn err\n\t}\n\n\tctx.Logger().Info(\"Staking LSM Migration: Migrating delegations\")\n\tif err := migrateDelegations(ctx, k); err != nil {\n\t\treturn err\n\t}\n\n\tctx.Logger().Info(\"Staking LSM Migration: Migrating UBD entries\")\n\tif err := migrateUBDEntries(ctx, store, cdc); err != nil {\n\t\treturn err\n\t}\n\n\tctx.Logger().Info(\"Staking LSM Migration: Calculating total liquid staked\")\n\treturn k.RefreshTotalLiquidStaked(ctx)\n}\n"
  },
  {
    "path": "app/upgrades/v300/upgrades.go",
    "content": "package v300\n\nimport (\n\t\"context\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\n\tica \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts\"\n\ticacontrollertypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/controller/types\"\n\ticahosttypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/types\"\n\ticatypes \"github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/types\"\n\n\t\"github.com/irisnet/irishub/v4/app/upgrades\"\n)\n\n// Upgrade defines a struct containing necessary fields that a SoftwareUpgradeProposal\nvar Upgrade = upgrades.Upgrade{\n\tUpgradeName:               \"v3\",\n\tUpgradeHandlerConstructor: upgradeHandlerConstructor,\n\tStoreUpgrades: &storetypes.StoreUpgrades{\n\t\tAdded: []string{icahosttypes.StoreKey},\n\t},\n}\n\nfunc upgradeHandlerConstructor(\n\tm *module.Manager,\n\tc module.Configurator,\n\tbox upgrades.Toolbox,\n) upgradetypes.UpgradeHandler {\n\treturn func(context context.Context, _ upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) {\n\t\tctx := sdk.UnwrapSDKContext(context)\n\t\tif err := mergeEVM(ctx, box); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\tif err := mergeFeeMarket(ctx, box); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\tif err := mergeToken(ctx, box); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\tif err := mergeGov(ctx, box); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\t// initialize ICS27 module\n\t\tinitICAModule(ctx, m, fromVM)\n\n\t\t// merge liquid staking module\n\t\tif err := mergeLSModule(ctx, box); err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn box.ModuleManager.RunMigrations(ctx, c, fromVM)\n\t}\n}\n\nfunc initICAModule(ctx sdk.Context, m *module.Manager, fromVM module.VersionMap) {\n\ticaModule := m.Modules[icatypes.ModuleName].(ica.AppModule)\n\tfromVM[icatypes.ModuleName] = icaModule.ConsensusVersion()\n\tcontrollerParams := icacontrollertypes.Params{}\n\thostParams := icahosttypes.Params{\n\t\tHostEnabled:   true,\n\t\tAllowMessages: allowMessages,\n\t}\n\n\tctx.Logger().Info(\"start to run ica migrations...\")\n\ticaModule.InitModule(ctx, controllerParams, hostParams)\n}\n\nfunc mergeLSModule(ctx sdk.Context, box upgrades.Toolbox) error {\n\tctx.Logger().Info(\"start to run lsm module migrations...\")\n\n\tstoreKey := box.GetKey(stakingtypes.StoreKey)\n\treturn migrateStore(ctx, storeKey, box.AppCodec, box.StakingKeeper)\n}\n\nfunc mergeEVM(ctx sdk.Context, box upgrades.Toolbox) error {\n\tctx.Logger().Info(\"start to run evm module migrations...\")\n\n\tparams := box.EvmKeeper.GetParams(ctx)\n\tparams.AllowUnprotectedTxs = true\n\treturn box.EvmKeeper.SetParams(ctx, params)\n}\n\nfunc mergeFeeMarket(ctx sdk.Context, box upgrades.Toolbox) error {\n\tctx.Logger().Info(\"start to run feeMarket module migrations...\")\n\n\tparams := box.FeeMarketKeeper.GetParams(ctx)\n\tparams.MinGasPrice = EvmMinGasPrice\n\treturn box.FeeMarketKeeper.SetParams(ctx, params)\n}\n\nfunc mergeToken(ctx sdk.Context, box upgrades.Toolbox) error {\n\tctx.Logger().Info(\"start to run token module migrations...\")\n\n\tparams := box.TokenKeeper.GetParams(ctx)\n\tparams.EnableErc20 = true\n\tparams.Beacon = BeaconContractAddress\n\treturn box.TokenKeeper.SetParams(ctx, params)\n}\n\nfunc mergeGov(ctx sdk.Context, box upgrades.Toolbox) error {\n\tctx.Logger().Info(\"start to run gov module migrations...\")\n\n\tparams, err := box.GovKeeper.Params.Get(ctx)\n\tif err != nil {\n\t\treturn err\n\t}\n\tparams.MinDepositRatio = MinDepositRatio.String()\n\treturn box.GovKeeper.Params.Set(ctx, params)\n}\n"
  },
  {
    "path": "app/upgrades/v400/upgrades.go",
    "content": "package v400\n\nimport (\n\t\"context\"\n\n\tstoretypes \"cosmossdk.io/store/types\"\n\tupgradetypes \"cosmossdk.io/x/upgrade/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\n\t\"github.com/irisnet/irishub/v4/app/upgrades\"\n)\n\n// Upgrade defines a struct containing necessary fields that a SoftwareUpgradeProposal\nvar Upgrade = upgrades.Upgrade{\n\tUpgradeName:               \"v4.0.0\",\n\tUpgradeHandlerConstructor: upgradeHandlerConstructor,\n\tStoreUpgrades: &storetypes.StoreUpgrades{},\n}\n\nfunc upgradeHandlerConstructor(\n\tm *module.Manager,\n\tc module.Configurator,\n\tbox upgrades.Toolbox,\n) upgradetypes.UpgradeHandler {\n\treturn func(context context.Context, _ upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) {\n\t\tctx := sdk.UnwrapSDKContext(context)\n\t\tctx.Logger().Info(\"execute a upgrade plan...\")\n\t\treturn box.ModuleManager.RunMigrations(ctx, c, fromVM)\n\t}\n}\n"
  },
  {
    "path": "buf.gen.swagger.yaml",
    "content": "version: v1\n\nplugins:\n\n  - name: gocosmos\n    out: .\n    opt:\n      - plugins=grpc\n\n  - name: grpc-gateway\n    out: .\n    opt:\n      - logtostderr=true\n\n  - name: swagger\n    out: ./tmp-swagger-gen\n    opt:\n      - logtostderr=true\n      - fqn_for_swagger_name=true\n      - simple_operation_ids=true\n    strategy: all"
  },
  {
    "path": "buf.work.yaml",
    "content": "# Generated by \"buf config migrate-v1beta1\". Edit as necessary, and\n# remove this comment when you're finished.\n#\n# This workspace file points to the roots found in your\n# previous \"buf.yaml\" configuration.\nversion: v1\ndirectories:\n  - proto"
  },
  {
    "path": "client/keystore/keys.go",
    "content": "package keystore\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\ttmcrypto \"github.com/cometbft/cometbft/crypto\"\n\t\"github.com/cometbft/cometbft/crypto/secp256k1\"\n\n\t\"github.com/cosmos/cosmos-sdk/crypto\"\n\tsdksecp256k1 \"github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1\"\n)\n\n// RecoveryAndExportPrivKeyArmor return the new private key armor from a old keystoreFile\nfunc RecoveryAndExportPrivKeyArmor(keystore []byte, password string) (armor string, err error) {\n\tpriv, err := recoveryFromKeyStore(keystore, password)\n\tif err != nil {\n\t\treturn \"\", err\n\t}\n\treturn exportPrivKeyArmor(priv, password)\n}\n\nfunc recoveryFromKeyStore(keystore []byte, auth string) (tmcrypto.PrivKey, error) {\n\tif auth == \"\" {\n\t\treturn nil, fmt.Errorf(\"Password is missing \")\n\t}\n\n\tvar encryptedKey EncryptedKeyJSON\n\tif err := json.Unmarshal(keystore, &encryptedKey); err != nil {\n\t\treturn nil, err\n\t}\n\n\tkeyBytes, err := decryptKey(&encryptedKey, auth)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tif len(keyBytes) != 32 {\n\t\treturn nil, fmt.Errorf(\"Len of Keybytes is not equal to 32 \")\n\t}\n\n\treturn secp256k1.PrivKey(keyBytes), nil\n}\n\nfunc exportPrivKeyArmor(privKey tmcrypto.PrivKey, password string) (armor string, err error) {\n\tpriv := sdksecp256k1.PrivKey{\n\t\tKey: privKey.Bytes(),\n\t}\n\treturn crypto.EncryptArmorPrivKey(&priv, password, \"secp256k1\"), nil\n}\n"
  },
  {
    "path": "client/keystore/keys_test.go",
    "content": "package keystore\n\nimport (\n\t\"testing\"\n\n\t\"github.com/stretchr/testify/require\"\n)\n\nfunc TestRecoveryAndExportPrivKeyArmor(t *testing.T) {\n\tkeystore := `{\"version\":\"1\",\"id\":\"65177bc2-8240-4024-8180-dd0b2d888903\",\"address\":\"faa1ljemm0yznz58qxxs8xyak7fashcfxf5lssn6jm\",\"crypto\":{\"ciphertext\":\"793acc81ed7d3f8aead7872f81cc7297e0527ab9ee87a24f8aa7de6a6b4072e9\",\"cipherparams\":{\"iv\":\"7ebe22befa6b278f0f348fe9e3f7c524\"},\"cipher\":\"aes-128-ctr\",\"kdf\":\"pbkdf2\",\"kdfparams\":{\"dklen\":32,\"salt\":\"0fa96f07f73d3dfe2bff410b708de347080a326c898e2d5631af4d598e851401\",\"c\":262144,\"prf\":\"hmac-sha256\"},\"mac\":\"15467c52ade57fd59200544612cccd2310825f8378d3f52228b52d07b56fbdba\"}}`\n\t_, err := RecoveryAndExportPrivKeyArmor([]byte(keystore), \"1234567890\")\n\trequire.NoError(t, err)\n}\n"
  },
  {
    "path": "client/keystore/keystore.go",
    "content": "package keystore\n\nimport (\n\t\"bytes\"\n\t\"crypto/aes\"\n\t\"crypto/cipher\"\n\t\"crypto/sha256\"\n\t\"encoding/hex\"\n\t\"errors\"\n\t\"fmt\"\n\n\t\"golang.org/x/crypto/pbkdf2\"\n)\n\nvar (\n\terrDecrypt = errors.New(\"could not decrypt key with given passphrase\")\n)\n\n// PlainKeyJSON define a struct TODO\ntype PlainKeyJSON struct {\n\tAddress    string `json:\"address\"`\n\tPrivateKey string `json:\"privatekey\"`\n\tID         string `json:\"id\"`\n\tVersion    int    `json:\"version\"`\n}\n\n// EncryptedKeyJSON define a struct TODO\ntype EncryptedKeyJSON struct {\n\tAddress string     `json:\"address\"`\n\tCrypto  CryptoJSON `json:\"crypto\"`\n\tID      string     `json:\"id\"`\n\tVersion string     `json:\"version\"`\n}\n\n// CryptoJSON define a struct TODO\ntype CryptoJSON struct {\n\tCipher       string                 `json:\"cipher\"`\n\tCipherText   string                 `json:\"ciphertext\"`\n\tCipherParams cipherparamsJSON       `json:\"cipherparams\"`\n\tKDF          string                 `json:\"kdf\"`\n\tKDFParams    map[string]interface{} `json:\"kdfparams\"`\n\tMAC          string                 `json:\"mac\"`\n}\n\ntype cipherparamsJSON struct {\n\tIV string `json:\"iv\"`\n}\n\nfunc decryptKey(keyProtected *EncryptedKeyJSON, auth string) ([]byte, error) {\n\tmac, err := hex.DecodeString(keyProtected.Crypto.MAC)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tiv, err := hex.DecodeString(keyProtected.Crypto.CipherParams.IV)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tcipherText, err := hex.DecodeString(keyProtected.Crypto.CipherText)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tderivedKey, err := getKDFKey(keyProtected.Crypto, auth)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tbufferValue := make([]byte, len(cipherText)+16)\n\tcopy(bufferValue[0:16], derivedKey[16:32])\n\tcopy(bufferValue[16:], cipherText[:])\n\tcalculatedMAC := sha256.Sum256((bufferValue))\n\tif !bytes.Equal(calculatedMAC[:], mac) {\n\t\treturn nil, errDecrypt\n\t}\n\n\tplainText, err := aesCTRXOR(derivedKey[:16], cipherText, iv)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn plainText, err\n}\n\nfunc getKDFKey(cryptoJSON CryptoJSON, auth string) ([]byte, error) {\n\tauthArray := []byte(auth)\n\tif cryptoJSON.KDFParams[\"salt\"] == nil || cryptoJSON.KDFParams[\"dklen\"] == nil ||\n\t\tcryptoJSON.KDFParams[\"c\"] == nil || cryptoJSON.KDFParams[\"prf\"] == nil {\n\t\treturn nil, errors.New(\"invalid KDF params, must contains c, dklen, prf and salt\")\n\t}\n\tsalt, err := hex.DecodeString(cryptoJSON.KDFParams[\"salt\"].(string))\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\tdkLen := ensureInt(cryptoJSON.KDFParams[\"dklen\"])\n\n\tif cryptoJSON.KDF == \"pbkdf2\" {\n\t\tc := ensureInt(cryptoJSON.KDFParams[\"c\"])\n\t\tprf := cryptoJSON.KDFParams[\"prf\"].(string)\n\t\tif prf != \"hmac-sha256\" {\n\t\t\treturn nil, fmt.Errorf(\"Unsupported PBKDF2 PRF: %s\", prf)\n\t\t}\n\t\tkey := pbkdf2.Key(authArray, salt, c, dkLen, sha256.New)\n\t\treturn key, nil\n\t}\n\treturn nil, fmt.Errorf(\"Unsupported KDF: %s\", cryptoJSON.KDF)\n}\n\nfunc ensureInt(x interface{}) int {\n\tres, ok := x.(int)\n\tif !ok {\n\t\tres = int(x.(float64))\n\t}\n\treturn res\n}\n\nfunc aesCTRXOR(key, inText, iv []byte) ([]byte, error) {\n\t// AES-128 is selected due to size of encryptKey.\n\taesBlock, err := aes.NewCipher(key)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\tstream := cipher.NewCTR(aesBlock, iv)\n\toutText := make([]byte, len(inText))\n\tstream.XORKeyStream(outText, inText)\n\treturn outText, err\n}\n"
  },
  {
    "path": "client/lite/config.json",
    "content": "{\n  \"swagger\": \"2.0\",\n  \"info\": {\n    \"title\": \"IRIShub - REST and gRPC Gateway docs\",\n    \"description\": \"A REST interface for state queries, legacy transactions\",\n    \"version\": \"2.0.0\"\n  },\n  \"apis\": [\n    {\n      \"url\": \"./tmp-swagger-gen/token/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"TokenParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"TokenV1\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/token/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"LegacyTokenParams\",\n          \"Tokens\": \"LegacyTokens\",\n          \"Token\": \"LegacyToken\",\n          \"Fees\": \"LegacyFees\",\n          \"TotalBurn\": \"LegacyTotalBurn\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"TokenV1beta1\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/htlc/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"HTLCParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"HTLC\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/coinswap/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"CoinswapParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Coinswap\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/farm/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"FarmParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Farm\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/nft/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"NFTParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"NFT\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/service/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"ServiceParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Service\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/oracle/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"OracleParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Oracle\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/random/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"RandomParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Random\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/record/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"RecordParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Record\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/mint/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"MintParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Mint\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/guardian/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"GuardianParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Guardian\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/ethermint/evm/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"EvmParams\",\n          \"Account\": \"EvmAccount\",\n          \"Balance\": \"EvmBalance\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Evm\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/ethermint/feemarket/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"FeeMarketParams\",\n          \"BaseFee\": \"FeeMarketBaseFee\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Feemarket\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/ibc/applications/transfer/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"TransferParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"IBC\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/ibc/core/client/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"ClientParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"IBC\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/ibc/core/connection/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"ConnectionParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"IBC\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/ibc/core/channel/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"ChannelParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"IBC\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/auth/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"AuthParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Auth\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/bank/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"BankParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Bank\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/base/tendermint/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"BaseParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Tendermint\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/distribution/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"DistributionParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Distribution\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/evidence/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"EvidenceParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Evidence\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/gov/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"GovParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"GovV1beta1\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/gov/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"GovV1Params\",\n          \"Proposal\": \"GovV1Proposal\",\n          \"Proposals\": \"GovV1Proposal\",\n          \"Vote\": \"GovV1Vote\",\n          \"Votes\": \"GovV1Votes\",\n          \"Deposit\": \"GovV1Deposit\",\n          \"Deposits\": \"GovV1Deposit\",\n          \"TallyResult\": \"GovV1TallyResult\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"GovV1\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/params/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"Params\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Params\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/slashing/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"SlashingParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Slashing\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/staking/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"StakingParams\",\n          \"DelegatorValidators\": \"StakingDelegatorValidators\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Staking\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/tx/v1beta1/service.swagger.json\",\n      \"dereference\": {\n        \"circular\": \"ignore\"\n      },\n      \"tags\": {\n        \"add\": [\n          \"Tx\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/upgrade/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"UpgradeParams\",\n          \"UpgradedConsensusState\": \"CosmosUpgradedConsensusState\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Upgrade\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/authz/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"AuthzParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Authz\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/feegrant/v1beta1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"FeegrantParams\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Feegrant\"\n        ]\n      }\n    },\n    {\n      \"url\": \"./tmp-swagger-gen/cosmos/group/v1/query.swagger.json\",\n      \"operationIds\": {\n        \"rename\": {\n          \"Params\": \"GroupParams\",\n          \"Proposal\": \"GroupProposal\",\n          \"TallyResult\": \"GroupTallyResult\"\n        }\n      },\n      \"tags\": {\n        \"add\": [\n          \"Group\"\n        ]\n      }\n    }\n  ]\n}"
  },
  {
    "path": "client/lite/statik/statik.go",
    "content": "// Code generated by statik. DO NOT EDIT.\n\n// Package statik contains static assets.\npackage statik\n\nimport (\n\t\"github.com/rakyll/statik/fs\"\n)\n\nfunc init() {\n\tdata := \"PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x11\\x00\t\\x00favicon-16x16.pngUT\\x05\\x00\\x01\\x80Cm8\\x00\\xbd\\x01B\\xfe\\x89PNG\\x0d\\n\\x1a\\n\\x00\\x00\\x00\\x0dIHDR\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\x10\\x08\\x06\\x00\\x00\\x00\\x1f\\xf3\\xffa\\x00\\x00\\x01\\x84IDATx\\x01\\x95S\\x03Luq\\x1c\\xfd\\x8c\\xf1\\xc3\\xec0\\xa7)\\xcda\\xb6k6\\xb2\\x9b\\xf9\\xb2k\\xc85/\\xdb\\x8dqx\\xc6\\x94m\\xcc{\\xef\\x7fO\\xff\\xf3l\\xdc\\xed\\xf2\\xe0\\xfe\\xf8\\xc9\\xffP\\x14\\x11/\\x14[\\xa3P\\xc4\\xa1\\xbc?\\xf1t>7\\x12s\\x13\\x03\\x85\\xca7IR\ta\\xb5j\\x8f\\xa71\\xbe]\\x88\\xf6\\xb9L\\xf0\\x1c\\x93\\xcf\\xda\\xe3)\\x10\\x93f\\x8d\\xe4\\x06\\x13\\xcf\\xde<\\x9b\\xd14\\x95\\x8a\\x92\\x81OA\\xcfF\\x89\\xdd<\\x9b M\\xe6}L\\xe4\\x07\\x15\\xc5\\xf5\\xe3\\xffI\\x0c{\\xd6\\x8d\\xffs\\x994\\xbasfh\\xae?\\xafk\\x1aprw\\x10 <\\xb9\\xdb\\xc7\\x86\\xa6\\xd1\\x19I\\n\\xa8\\xb1\\xd7\\x84y3g\\x171T$\\xb5c\\x7fq\\xfbbq\\xbfk\\x8e'\\x1dQ\\xb0\\xc2,\\x92\\x0bx|;F\\xe5\\xf0\\xef\\x00\\x83\\xf2\\xa1\\x1fx|?q\\xbd\\xcb\\xc2\\x16\\x80ZF\\xf0\\xc4J\\xf3\\xe3\\xe4n1\\xcc\\x17k`:}\\xcby\\xe8\\x98\\xcbB\\xc7|6z\\x97r\\xd14\\x9d\\x06\\xd3\\xf9\\x8a\\xe4\\x94\\x90\\x8b\\xb6\\xd9\\x0cP\\xebc@\\xd0|\\xbe*\\xc94\\xc8\\xa7\\x98'\\xcdh\\x00\\xe3\\xd92\\xa6vK}\\x0cB\\xa4\\xf0+D\\n\\xc7\\x81)\\xb0\\x10\\x9a\\xe3\\xa9\\xd8\\x8bx\\xe4(\\xa2\\xbb\\x8dl\\x0d\\x01\\xb6\\x8a-\\xf378\\xbe\\xdd\\xc7\\xa6\\xb6\\xc9\\xd9\\xc6d\\xd8\\\\m\\xf4\\x0c\\x92\tuQ\\x0e\\xd2\\xf5\\xb3\\xd1\\xf1w\\xdfQ\\x16\\xb34a$\\xa1\\xc4\\xc4(V\\xbcF\\xd9\\xdf\\xa4\\x91\\xe9\\xb0&,\\x12+\\xcd\\x93\\xcf\\x1c\\x1cb\\xdc\\xca\\x00qt\\xeb\\xcc-\\x14\\x89\\xfe\\xfc\\x0fm2j\\x88\\xec\\xccs\\x18\\x00\\x00\\x00\\x00IEND\\xaeB`\\x82\\x01\\x00\\x00\\xff\\xffPK\\x07\\x08\\xd4`4t\\xc7\\x01\\x00\\x00\\xbd\\x01\\x00\\x00PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x11\\x00\t\\x00favicon-32x32.pngUT\\x05\\x00\\x01\\x80Cm8\\x00u\\x04\\x8a\\xfb\\x89PNG\\x0d\\n\\x1a\\n\\x00\\x00\\x00\\x0dIHDR\\x00\\x00\\x00 \\x00\\x00\\x00 \\x08\\x06\\x00\\x00\\x00szz\\xf4\\x00\\x00\\x04<IDATx\\x01\\xbdW\\x03\\xcceY\\x0c~k\\xdb\\xb6m\\xc4^\\xc7^\\xdb\\xb6=F\\xf0\\xdb\\xb6m\\xdb\\xb6m\\xf3\\xa2\\xd3o\\xf2\\xce3\\x7f5i\\xeea\\xdb[\\x1f\\x8d\\xa3\\xa0\\xaa\\xea\\xa9\\xb2\\xb2\\xf9\\xa4\\xacH?\\xf27B\\x92\\xd7\\xabx<\\x02\\x94\\xe4\\x8d\\x1a\\xfeFa\\x0fgpV\\xb3S\\xa0\\xa8\\xf2\\x85L\\xf8{E\\x91\\xfa\\x88Tr\\x04p\\x96\\x05\\xf9\\x91\\xef^l\\x8f\\xbe\\x9d?\\x96\\xdef\\\"S\\x820\\xaf\\xd1\\xf0t\\x03\\x95\\xb4zRb\\xe5\\xcf\\x14^\\xf4!\\x90\\xc7?Qq\\xab\\x07\\xef\\xd5\\x13\\xce\\x08\\xc0]\\xa6\\xf1.h9\\xc9\\\\\\xb9\\x98\\xff N\\x10[\\xdf\\\\\\xa6\\xbc\\xa6\\xe3\\xf4o\\xc4\\xdd\\xf4\\x99\\xa7\\xc6&\\xfe\\x13q\\x17\\xe56\\x1e\\xe3;K:\\xa1Y\\x88\\x04\\xd0t\\x94\\xf9\\xd5|\\xa1A\\\\\\xae\\xea\\n\\xa1_\\x82\\xaf\\x01q\\xa7\\xf0\\x97\\xa0\\xab\\xa9\\xb23\\x084\\x84Y\\x9a\\x98\\xf6\\xb5v\\xff\\\\0g\\xc7\\xa2\\x90\\xfc\\xb7Al[\\x18\\x9c\\xff&\\xb1\\xc3\\x1a\\x08\\xa1^l\\xcb\\xe6q\\x82\\xb9G\\xc6+ \\xb0#\\xe8\\x9e\\xf6\\xa2\\xa1\\x10\t\\x16}\\x02\\x0e\\x07u\\x01C\\xf2\\xdf\\xc2\\xc5\\x1d\\xc5\\xa0\\xbc7H\\xd0\\x87c\\x9a\\xaa\\xfeB\\xf6\\xd8\tb\\xa8\\xea\\n6\\xba\\xf8\\xb5\\xcf9T\\xd1\\x11@\\xab\\xebs44Uk\\x97\\xd1\\xe0T\\x0d\\xadn\\xcc\\xc3\\xfe\\xf4\\xb5\\xef\\xb9F{\\x15\\x9d\\x01\\xba\\xe80\\nQ\\xc4\\xb9\\xf0vS\\x87\\x8b.\\xfd\\x82\\x00\\xe3sm\\x94\\xddp\\xc8\\xae\\x00\\xd9\\xf5\\x07il\\xb6\\x85\\x00\\xb1e_\\x1b\\xed\\xfd\\x1ct\\x95.:\\x90\\xb4t\\xb6g\\xbb\\xf4`1\\x8f\\xc3\\xc7\\x94 \\xa2\\x00\\xb0?\\xfa!\\x87\\xd5\\xfd_\\xd4}\\x04\\xa8\\xed\\x890\\xdb\\xcbi8\\xa2\\xf5\\x05\\xb9\\xef\\xa4/ u\\x8a\\x90C\\x0c\\x9b^h\\x19L!\\xc0\\xef\\xa179,\\x00\\xb4\\x08h\\x1dL3\\xdb\\xfb;\\xfc\\x0e]h2\\xef\\xa75P\\x05&\\xc8b8`.@\\x1a\\x01~\\x0b\\xb9\\xdea\\x01~\\x0c\\xbc\\x1cL\\xa8u(\\xdd\\xd2>|ID\\xc4\\xcf\\xd0@\\x04&%\\xad\\x1e\\x16\\x0f\\xf7\\x8d\\x97AR\\xfa\\xca\\xe7l\\x87\\x05\\xf8\\xd2\\xfb\\x0c\\x84\\x1d\\x0dLVY\\xdc/ju\\x13\\x1a\\x88\\xd2\\xa0\\xaaa\\x82|nzp_\\xf4\\x03\\xc8\t\\xd4;^\\x8a9}\\xeeu\\x9a\\x91 `\\x04\\x14s\\xec\\xe1\\x0c\\xc6]\\xa3\\x05``\\xd1w\\x12*~ \\x00\\xf3\\xae\\xd3\\xa0\\x9cb\\x82\\xa2bx(\\xb3n\\x1fqx\\xd2\\xf2\\xda4\\x1d\\x8a}\\x1ck\\xd4>\\x9cI+\\xeb\\xb3\\xf4k\\xc8u`L\\x93\\xf3]4\\xb5\\xd0\\xc3\\xe33\\xd9\\xee\\xd7\\xf2\\xd9\\x19\\xea\\x18\\xc9\\xc1Y:\\x18\\xfb(-\\xadN\\x82\\x06e\\xd5\\x1f0\\xa2\\x1dV\\xf8\\xbe0\\xc1\\x985\\x01\\xf8\\xd2~\\\\\\xa6\\xa5\\xb5)&\\xf6\\x98V\\x80l\\xe4\\x03\\xf8\\x03\\x04\\x00s\\x9a^\\xec\\x85\\x00\\xf4+\\x0b\\x00\\xe1:G\\xf2p\\x96\\x0e\\xc4<B\\x8b\\xab\\x13\\xa0\\x81\\xd0\\xb4.\\x00\\xab\\xd8\\xaa\t\\xf6\\xc7<\\xac5A\t\\xe6\\xf4\\x05\\xab\\xf7k#\\x13\\x9c\t42\\xc1\\x17:\\x13\\xe4\\xc3\\x04\\x10\\xde\\xae\t\\\"0)\\xb6\\xe6\\x84\\x13\\xc2\t\\xcfr\\xda\t\\xfb'+-;a\\x8bpB)fw\\xc20\\xc0f\\x18\\\"]\\x0b\\x01\\x10\\x86\\x92A\\\"\\xbas\\x0f\\x12\\xd1\\xed\\x06\\x89HzZ\\x9b\\x8a\\xe5>,\\xe46\\x1e5\\xbbP\\xdd\\x15J\\x80}\\xce\\xa4\\xe2\\xc8{m\\xa4\\xe2\\xc3\\xc2\\x01\\x07\\xc0\\xdb\\xa4\\x18-\\xa1\\x931\\xba\\x10S\\xfa%\\xb6P`\\x10\\x19v\\x99#|Gg\\x9b\t\\x10W\\xf6\\x8dI1\\xba\\x92\\xd66\\x17E\\x12\\xfa\\xd9\\xa8\\xf3UTe\\n\\x1b\\x95\\x9d\\x81f\\xe5\\x18\\xa5umc\\x81\\x86\\xa6\\xeb\\xec\t\\x804\\xcbg\\x17\\xa19\\xfa\\xc6\\xf7<\\xa3\\xbd\\xf2\\x0e\\x7f\\x02\\x80\\x97Y\\xc7\\xac\\x184$h\\xa3v\\xba!\t\\xcc{\\xcd\\xb4!\\xb1\\xd8\\x92%h\\xe3\\x93\\xdc\\xd3_\\xda1\\xe6\\xaei\\xcf\\x83\\xa6p\\xbc$\\xf0\\xb2\\xda\\x94\\xa2q\\x14B@\\x13\\xdb\\xff\\xf3\\xd7\\x0d\\xfaA\\xb9\\xc5n{\\x8e\\xd6Y\\x08\\x01u\\xc1'~\\x16\\x8e\\xe9\\x04\\xa2\\xfbA+\\xc74\\x0c\\x98\\xab\\xd7:\\xfc0\\xd1v\\xaf$\\xa2#\\xb7\\xf1\\x08\\xfdm!OXh8\\x10j|g\\xd1\\xe0a\\xb2\\x99\\x04\\x9a[y\\x9a\\xbdk\\xf24C$\\xa0\\x9e#\\x9f\\xa3\\xa8\\x001\\xc6\\x1a\\\"\\xc0\\xe4i\\xa6\\xcc0\\xf3\\xf7\\xb7\\xf5XE\\xb8\\xe0\\xa1\\xc9\\xc2\\x0c\\x90\\x83\\x80$\\x838\\xdf\\xd6\\xe3\\xd4\\x82FNG\\x0f\\x876\\x8a\\xbf1\\xa8d(\\xa7@\\x8cQX\\x90\\xdb\\x19\\x9f\\xc5YG\\xe9\\x9e\\x00\\xa5y3]\\x9aJ\\xe1\\\"\\x00\\x00\\x00\\x00IEND\\xaeB`\\x82\\x01\\x00\\x00\\xff\\xffPK\\x07\\x086B\\xc8\\xd7\\x7f\\x04\\x00\\x00u\\x04\\x00\\x00PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\n\\x00\t\\x00index.htmlUT\\x05\\x00\\x01\\x80Cm8\\x9cT]k\\xdc:\\x10}\\xdf_1Q\\x1e\\x92\\\\\\\"\\xfb&\\x81p\\xf1\\xb5\\xfd\\x90\\xa6\\xa5\\x81\\x94\\x06\\x92}(\\xa5\\x14\\xd9\\x1a{\\xa7\\x91\\xa5E\\x92\\xf7#!\\xff\\xbdX\\xf6\\xae\\xb7\\xdd\\x90BYX\\x8f\\xe7\\x9c9\\x1a\\x1d\\x8d\\x9c\\x1ep\\x0e\\x1f\\x1f>\\xddBe,8/<\\x95 \\xc9yKE\\xeb\\xc9h(Z-\\x15B\\xd1\\x92\\x92\\xc0y>I\\x0f\\xae?\\xbf{\\xf8r\\xf7\\x1ef\\xbeQ\\xf9$\\xed\\x1e\\xa0\\x84\\xae3\\x86\\x9a\\xe5\\x13\\x80t\\x86Bv\\x01@\\xda\\xa0\\x17P\\xce\\x84u\\xe836}\\xf8\\xc0\\xffc\\x03\\xe4\\xc9+\\xcc\\xef\\x97\\xa2\\xae\\xd1\\xc2\\xf4&\\x8d\\xfbL\\x8f*\\xd2\\x8f`Qe\\xcc\\xf9\\xb5B7C\\xf4\\x0c\\xfcz\\x8e\\x19\\xf3\\xb8\\xf2q\\xe9\\x1c\\x83\\x99\\xc5*c\\xae\\xd7\\xe0-E!\\xbb'A\\xa5\\xd1\\x9bbjD\\x8d\\xf1\\\\\\xd7\\x9b\\xeaJ,:\\x9c_\\x9c\\xaf.\\xce\\xa3\\x008zB\\x97\\xb1\\x90a\\x10\\xff\\x9d\\xde\\xd9\\xe5\\xea\\xec\\xf2\\x17\\xbd\\x90\\x19\\xf5\\xc2\\xc6\\xfa\\x18\\x82\\x9bC\\xf8<<\\x01\\n\\xb3\\xe2\\x8e\\x9eH\\xd7\t\\x14\\xc6J\\xb4\\xbc0\\xab\\xff\\xb7\\xb8Y\\xa0\\xad\\x94Y&\\xc0\\x1b\\xf3\\xc4]i\\x8dR\\x85\\xb0\\x8e/\\xd0z*\\x85\\xda\\xe7\\xf2u\\x02=q\\x83\\xbdL\\x86\\xe0\\x9f\\xd3M\\x90\\x14X\\x19\\x8b\\xe3\\xbb\\xa8<\\xda7\\xfb#=CK~O\\xb40r\\xbdW\\xd8\\x08[\\x93N\\xfe\\x1d\\xdb+D\\xf9X[\\xd3j\\x99\\xc0a%\\xba\\xdf(\\xd5\\xfd\\xa7\\xf1\\xd6\\xaf4\\xee'\\xac\\x0b;\\xf9\\xc1OI\\x0b \\xb9;\\x0e,OcI\\x8b|2\\x18^Z\\x9a{p\\xb6\\xdc%\\xf1~\\xc6\\xa3\\x1f\\x8e\\xe5\\xdd*\\x81\\x94\\xbfY\\xe1\\xbc\\xd0R(\\xa3\\x91\\xcf-:\\xf4o\\x14\\xf7/K\\xd2\\xd2,#\\xa3\\x95\\x11\\x122\\xa8Z]v\\x17\\xec\\xf8\\x04\\x9e7N\\xc51\\\\\\x85{&\\xc0\\xad\\x9d\\xc7f\\xc8\\x97F;\\x0f-A\\x06\\xc3m\\x99\\xde\\\\\\x85\\x9e\\x8fGG[\\xab\\x12`Q<t\\x19\\xadE\\xa3\\xd8\\xe9\\x16\\x96\\xa6\\xf9N2\\x81\\xa3\\xc3q\\x1bG;0\\xe2\\xfc\\x96\\xf4c8Io[\\x1c\\xa1~\\x83.\\x81\\xaf\\xdb\\x14\\xfc\\xdeG4\\x90\\\"1'w\\xfa\\x1a\\xef~\\xeb\\xd8]\\xa0n9\\xdfvVRmM\\xfaO+\\xf5\\xa4\\xe8\\xda,\\x83\\x97S\\xab^\\xd3RbmZ\\x9f\\x00\\x1b\\x17\\xbe\\x0d)\\xb6\\x19\\xaa\\x93\\x8d\\xed\\xc3\\xd1\\x04\\x7f[\\n\\xc9\\x970d\\xe3\\xf9\\xa5q?fi\\xdc\\x7f\\xf4~\\x06\\x00\\x00\\xff\\xffPK\\x07\\x08\\xb9\\xb1\\xf1mT\\x02\\x00\\x008\\x05\\x00\\x00PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x14\\x00\t\\x00swagger-ui-bundle.jsUT\\x05\\x00\\x01\\x80Cm8\\xec\\xfdyw\\xdb6\\xf68\\x8c\\xff\\xffy\\x15\\xd7\\xfa\\xf6\\x9b!kZ\\xb1\\x9d\\xa5\\xad\\x13\\xc5\\x93\\xc5m\\xb3g\\xe2\\xa4\\xcb\\xa8\\x1a\\x1fZ\\x82,6\\x14\\xa8\\x90\\x90m\\xb5\\xf2\\xef\\xb5\\xff\\x0e.\\x00\\x12$\\x01\\x10r\\xdc\\x99\\xf9<\\xcf\\xc3s\\xdaX\\\\\\xb0\\\\\\\\\\\\\\xdc\\xfdn\\xc1tI\\xc7,\\xc9h@\\\"`!\\xfc\\xf9?\\x00\\x00\\xbd\\xec\\xf4w2f=\\x18\\x0c\\x80\\xad\\x16$\\x9b\\x02\\xb9\\\\d9+\\xe0\\xd6-\\xd3\\xd3y6Y\\xa6\\x04\\x0e\\xe5\\x1f}\\xf5\\xf6\\x00X\\x10\\xc2\\x01\\xf4T7\\xfaG\\x132M(\\xe1-\\x8a\\xbf\\xfa\\xf1|\\x02\\x87\\xf2G0\\x1c\\xe1\\x80\\x0e\\\\\\x839T\\x7f\\xf5\\x8f/\\xe2\\xb33\\x92\\x7f|\\xfedI'));&\\xe6'\\xffs\\x15\\xb0YRD\\xd5\\xf4\\xd5\\xd4s\\xc2\\x969\\xd5\\xc0\\xa2\\x1e\\xf0\\xeb<\\xce\\x81\\xc1\\x00\\xfe\\xbcz\\xf0?\\xe5M\\xf5*\\xd0 \\xd7_\\xe6W2\\x85\\x80\\x0d\\xf3Q\\xa8\\xda\\xe5?\\x14t\\x1e\\xd4^\\xe5mg|t\\xc3|\\xc4\\xbb\\xa8=\\xc4\\xb6\\x0e \\x8fZw\\xd3\\x03\\xd8\\xdak\\xdf\\x96]\\x1c\\xc0\\x9fW\\xb5gW\\xf5N\\xe5\\xa8\\x08\\x1f\\xd58N\\xd3 S\\x83\\x8b \\x8b@\\xfbEC\\xfe3\\x85\\x01l\\xedj\\x0f\\xca\\xd6\\xaand\\x9b\\xb4?\\x87\\x01\\x90\\x08h\\x7f\\xcc\\xa7\\xc5\\xff\\x98\\xc0\\xa0\\x8ep\\x11\\xb4@F\\xfb\\x99\\xc4\\xc5\\xf5\\x1a\\xde\\xe2\\xd2\\xf7\\x05J\\xbc\\xcb\\xb3\\x05\\xc9\\xd9J~\\xd9\\x86\\xd08\\xa3\\xd3\\xe4l\\x99\\xc7\\xa7)\\xb1\\x80\\x85.\\xe7D=\\xdfm??#\\xec\\x00\\xf2:\\xc4\\xc2j\\x8e|\\x0e\\xb46\\x87\\xe6\\xe8\\x15\\x86 Z\\x93\\xfe\\xc9\t)^\\xab\\xbd\\xd1\\xc25\\xfdR+\\xc1\\xe7\\x1a/SV\\x1f\\x03\\x1c\\xf8}\\xed\\xb1\\xd6\\xb4?\tX\\x04\\xbd\\xb8\\xc7\\x81\\x1c\\x01\\xabO/k.Q\\xb3;\\xd9\\x8c\\\\\\x99E\\x9e\\xb1\\x8c\\xef\\xca\\xfe,.\\xde^P\\xb5F\\x02\\x9b\\xf0\\xfbz\\xfb\\x0b\\x18@\\xef\\xf6$)X/\\x02\\x1a\\xd0>'\\x12w\\xef\\xde\\x13\\xaf]\\x05\\xc3\\x06~P\\xbd\\xff\\xde\\xb2 P\\xb0<\\x19\\xb3^59\\x9d\\xdc\\xd0\\xe0\\x1b\\xd5T\\xd4D\\xb5ZS\\xf5\\x8f\\xbe\\xbdw'\\x0c\\xbc\\xbe3\\x0f\\x81\\xe9+-\\xb6\\x08S+\\xd9\\x05PN#\\xb6\\x02\\x02\t-XL\\xc7\\x9c\\xbe\\xb10\\x046\\xcb\\xb3\\x0b\\xa0\\xe4\\x02>\\xac\\x16\\xe4(\\xcf\\xb3<\\xe8=\\x8d)\\xcd\\x18p\\xe0B\\x0c\\xe34.\\n\\x88\\x0b\\x88\\xcb\\x1ezacG\\xde\\xcct\\xaaG\\x1c\\xc1\\xf3\\x08)\\x15\\x0d\\xf6\\xef\\xef\\x87\\xf5M\\x94\\xc0\\x00\\x82\\x1c\\x06\\x90\\x85|\\x07\\xe4\\xf5\\x1d\\x90\\xc3\\x81\\x01y%\\x9cZ\\x1bO\\x1f\\x8f\\x01\\x96M8\\x96t\\x98\\x18\\xc1\\x8c\\xafd9\\x04|\\x06|\\x13\\xef>\\x00\\n\\x0f\\x81\\xf5SB\\xcf\\xd8\\xec\\x01\\xd0\\xedm\\xd3G\\xa0f\\x8d\\xc4\\x99\\x8e\\x1e\\x18\\xdf\\xc8\\xfb\\x15m\\x81A\\xfd\\xe7z\\xcd\\x89\\x11\\xe4}\\x9d@I4\\xe9\\x9d\\xc7\\xe9\\x92\\xf4 \\xa1\\x90s\\x88\\x05y\\xff\\\"OX\\xf9F\\x18A\\xb0\\x1bA\\xa2 \\x10\\xf2\\xc9\\xe5\\xfdOd\\xc5igk(\\x0djo\\xda\\xb9%\\x009.\\x18\\x08\\xb0\\xf6*E*\\x16h\\xdb\\\\\\x1c\\x04\\xb9\\xbc\\xcf\\xbf\\xd6)H\\xbd\\xcf+\\xbf\\x1d\\xa5\\xef\\xc4\\xfaHJ\\xc4\\xa0\\xc17\\xf7\\xef70\\xadB,N\\xca\\xff\\x9dX\\x7f\\xf7\\xde\\x7f\\x0e\\xe9\\xad\\x04\\x84\\xe8\\x14\\xe3=\\x99\\x92\\x9c\\xd0\\xb1\\\"\\x1b\\x9c\\xd7\\x81Y\\\\\\xd0\\xbf18%\\x84BB\\x13\\x96\\xc4iR\\x90\t\\xec@\\xb1\\\\\\x90<\\x08kop\\x12C&\\xbd\\xd0x\\x86l1\\x8e\\xd3%c\\xb65\\x18@p\\x9e%\\x13\\xd8\\x85\\x01\\xe7\\xd2\\xe0\\x10zK*N\\xedI\\x0f\\x0e\\x9a(\\xcc\\xe9\\x1bg$+\\xaep\\xab\\xe4\\xed\\xf8\\xc7\\x04\\x0e\\xf4s\\xe9\\xaf[R\\x18@\\x1cp\\xec\\xfa6l\\xaci&\\x1f\\xdd\\xb9\\xfb]\\xf3Q\\\"\\x1f\\xdd\\xbd\\x17\\x86&>0n\\xb3\\x05\\xea|6p\\x05\\xc4\\x8d\\x1e\\xc4\\xb6\\xb9\\xae\\x87'\\x16\\x90\\xdf\\xba\\x05t\\x99\\xa6\\xb8\\x92\\xccr\\xf6\\x1cs,\\xe1\\x8ceN\\x8a\\x82\\xcfs\\xbe,\\x18\\x90\\x84\\xcdH\\x0e\\xa7D4\\x90\\xe5\\xdaa\\x14\\x01?\\xacz\\xb0\\xbd1v4\\xd0\\x8eT\\x04\\x88o5d@\\xab\\xd7\\xf9\\xe8k$\\xca\\xc8\\x19\\x16,_\\x8eY\\x96\\x9b\\xa0\\x0d\\x88\\x0f\\xe9\\x92\\x1c\\x00i3\\x85\\xd0d\\x1c\\x0d\\x8c%\\xbf\\x14\\xdd6\\xb3\\x96\\xd0fPw[/5\\xc87'\\xae\\xf2PPk|\\x88\\xd3\\xcfk\\xc7\\x01\\x13\\x92\\xce\\xc9\t\\xc2\\xe0\\xe4\\x84\\x1fT\\x1b\\xf2\\x01\\xb8\\x1b*\\xa0\\xe7\\xae\\x83\\xd6\\xbc\\xd5T+|\\x85\\x1e\\xe7y\\xbc\\xd2x\\xc3\\\"M\\xc6D\\xdb*\\xa0o\\x17f=\\xae\\xc5\\xdc\\xeb\\x8b/\\xf9\\xceqNbV;\\x99\\xc20\\xd2\\xf1\\xa4\\xaf-9\\xe7\\xc7\\x1b\\xdb\\xc8<\\x14\\x03C\\x0f\\xd5\\xee\\xc5}-6\\xec\\x8b\\x80\\x84^-\\xe6\\xce\\x16\\x97U\\x8b\\xbf\\xfa\\xb6\\x989[,\\xaa\\x16_\\xfa\\xb6\\x98t\\xcf\\xfa\\xd6-\\xd8J\\xab\\xa6\\x7f\\xf0m\\xda@\\n\\xb5\\xa6\\xb7\\x82-\\xc1\\x1c\\x91\\xe1t\\xe4\\xd7\\xe0\\xd2\\xb7\\xc1\\x85g\\x83\\x85o\\x83\\x13\\xcf\\x06\\xd3\\xee\\x15_\\xaf\\xb1[\\xaf\\xe6\\xc6\\xbe\\xe3\\x9b\\xb5\\xc6\\xa7\\xffbA.X7\\x16d\\xea\\x8fD\\xfcA\\xfbI\\xf1\\x9c\\x95\\x9ck,\\xee\\xbc$+\\xc2\\xc5\\xf5\\xa5|\\x81N\\xc8%\\xde(\\xc4\\x8d\\xc7E\\x91\\x8d\\x93\\x98%\\xe7\\xfc\\xa3T\\xdc|\\x9bOH\\x8eo\\x8d\\xf9\\x0d\\xd5\\x06\\xef\\xba_\\xb5\\xc0\\x07\\xd0?&\\xfc\\xbcJ\\xda\\xf4c\\xca\\x05\\xc4\\xbf\\xff\\xfd\\xe4\\xe4\\xf9\\xeb\\xd7\\x1f?<~\\xf2\\xea\\xe8\\xe4\\xf9\\x87\\xa3\\xf7\\xf8\\xc7\\xc9\\xdf\\xff\\xdekS\\xd6E\\xfb\\x8b\\x97G\\xbf\\x1e=\\xb3\\xbc>1t\\xf0\\xe6\\xd9\\xd1/\\xd6\\x0ff\\xed\\x0f\\xde\\xbe\\x7fv\\xf4\\xde\\xfa\\xc19\\x0c\\xe0^\\xfb\\xf6\\x1c\\x06\\xb0\\x07\\x0f\\x1f\\xc2\\xb9A\\xf1\\x00\\x03\\x98\\xc3\\x0e\\x18\\x8e\\x96\\x15*\\x9c\\xda\\xf7O\\x8dZ\\\"\\xa8\\x8e\\xb2\\xad\\xbd\\xd6SC3'\\xd7i\\xc6F\\xcb/\\x9c\\xd8J\\xfa\\xd8$g\\xc4\\xf6\\\"O\\x92|dn\\x91\\xc8\\xa3\\xa1lp\\xd7o;]\\xf2\\xd3\\xcc\\xf6\\xf0\\xd8q\\x12q\\xbee\\xbd\\x86\\xdd\\xb6\\xf4W\\x13*_\\xc7l\\xd6\\x9f\\xc7\\x97\\xfc\\x90&R\\xb2\\x84\\x1dT\\xb4\\xf0c\\x88\\xb3Tx8\\x06\\xa8O\\x13Rh\\x06\\x0f\\x81>\\x80\\x8c\\x8b\\x9f\\xf90\\x1b\\xf1\\xe3j\\x98\\xc160\\x83\\xac)A\\x99{\\xcd\\xf6\\xa9s94\\x9e\\x8c\\xf4\\x8b\\xe4\\x0f\\x05S\\xfcs\\x80\\x0cE\\xc2\\xe9\\x02#\\xc1cq\\xba\\xf2'^\\x1d\\x7f\\xb2B\\x12\\x99P\\xba\\x9c\\x9f\\x92\\xbc\\xc6\\x82\\xba$o\\x8a\\xd0\\x7f\\xf4\\xe8\\x91\t\\xfc\\xa0\\x1a\\xe5|&\\x15\\x1c,_\\xa9\\xbb\\xfb\\xdf\\xdd\\xfd\\xee\\xfe7\\xfb\\xdf\\xdd\\xc3\\x19\\xd2R\\x05\\xfb&~cn\\x85/2m\\xe3\\xba\\x0d|\\x0c\\x1e\\xc2.\\x1c\\n o\\x03\\xab\\xc9,\\xe0\\x00\\xcec\\x97\\n\\xaf\\xc1\\x14\\xda\\xdaxkb\\xe2\\x1aM\\x05rm94\\xe4Zs\\xe8\\x08\\xa1\\x1e\\x1e\\x0e`\\x87\\xe2\\xc9^g\\xce\\x0d/3x\\xc4\\x01\\xe85\\xb0w\\xd6\\x95\\x97\\xa3z-G\\xee\\xb9a?\\xf8\\xb6\\xc7\\xfc\\xda{\\xed\\x018}c\\xc0!P\\xce]\\xcb\\xc5\\xd6\\xf77\\x83m \\x9c\\xf5n\\x087\\x9cC\\x12\\xef%\\xa8di\\x9d\\xf4\\xfa/\\x8e\\xdf\\xcf9\\x1dhS\\xe6\\xdf\\xf9y\\xd1\\xbe\\xfd\\x06\\x06\\xb0\\xdf\\xbe\\xfd\\x9e\\x9fR\\x95tW\\x19K\\x8eW\\xf3\\xd3,\\xe5\\xeb(\\xfe\\xea\\x8bM\\x9d\\x19\\x8c\t\\xcf\\xc4I\\xa7^0\\x1cm\\xaf`\\x00\\xef9\\x8e<\\xb3\\x1d\\x01\\x1f\\xcd4\\x87\\xcd\\x92\\xa2O\\xc9%\\xf3f\\xc6?\\xab\\x95\\xb2\\xe8\\xa8\\x94\\xc1\\xa4Z(\\xbe\\x05\\xf7j\\xcb6\\xe4\\xdf;\\xa8(\\x1cB^\\x9e!\\x19\\x1c \\x91v\\x9e\\x86\\x99Y\\xb2\\x9bd\\xd4v\\xe2z\\xd2\\xea\\xef]T\\xc19$\\x81~\\xcequJ\\x9a\\x96A\\xfd\\xe1\\xe6>\\xb7~\\xf4ec\\x9f\\xb8\\x19\\x83\\x866H\\xb3\\xf4!\\xcexu\\xf1\\x93\\xb9\\x0be\\x91\\xe1C\\xb5\\\"\\x82\\xd4!\\x08\\xa3\\x85\\xdf\\x8c~tw'\\x0e\\xd3\\xf7Hk\\x87\\xefG|\\xcb\\x90\\xe1\\xb3\\x91a\\x08\\x0d\\xb5\\xcc@?\\x13\\xd5\\xf0\\xbcF\\xf4\\xb3\\x07\\x8c\\xd5\\xc9\\xabCXp)^]\\xbcpv\\x81\\x1a\\xa0\\xe6\\x91\\xa3\\xb6cB\\xd0 \\xab\\x84\\xe8>\\xcb\\x8e\\xc9g\\xbc\\xa5Z7\\xb7\\x0d\\x1aP\\x0b\\\"\\xc5'\\x93M\\x18\\x95X\\xe4\\x02\\x181\\xae4(M\\xa9M\\xbfut\\xb9 cF&\\x82A\\x83,\\x87DIE\\xa27\\xc8\\xa6b\\xcb\\x15\\x11\\x7f\\xfa\t\\xa5\\x1b\\xf1\\xe8\\x00\\xb5\\\\\\xb6n\\x8d\\xab\\xc8\\xaf+_d\\xfb\\xf5\\xcb\\xe0\\xdeg\\x19\\xcab\\n\\xe2r\\x11\\x96\\xed\\xb5 \\xfdi\\x9e\\xcd\\x8f(\\xcbW\\xe5\\xcb\\xc4w\\x94/\\xbfl\\x94\\x86\\x81\\x11} |\\x9cR\\x8aT\\xb7\\x96\\xdec\\xfb\\xc19\\xb6\\xe0\\xcb\\x07\\xa7F\\x13\\\"4\\x19\\xdeo\\x8cL\\xff\\xf5QSU\\xb1\\xec\\x98\\xe5\t=s)\\xdd\\xb4\\xc1\\xf6\\x86\\xcf\\xe5\\x01=\\xea\\xd5{\\x88\\xe0c\\xff\\xe5\\xd1\\xaf\\xc70\\x80\\xe7\\xfc\\xef\\x9f\\x1e\\xbf\\xfax\\xc4\\x7f\\xfd\\xce\\x7f\\x1d\\xbd\\xf9\\xf0\\xfe9\\xfe|\\x13\\xd5\\xfaOh\\xc1Q\\x1f\\x06\\xcdQe\\xcb|L<G\\x85\\x07\\xbc\\x9aIs\\xea\\xb5\\xfe\\x86\\xafF\\x1b\\xb4\\xd9l\\x88\\x05/\\x84\\xde\\xe2E?\\x9bz\\xb6\\xf3\\\"\\x88\\xf3\\xb3\\xe5\\x9cPV\\xb4\\x06\\xf6\\xa2>e\\xf2\\xd9\\xb3M\\xd3\\xd8^\\\\\\x7fQ\\x11|''%\\x00{|$\\x7f\\xf6\\\"\\xe8]\\xf5\\x9cc\\x1e\\xc7\\xe3\\x19yO\\x8a\\x0e\\xeb\\xa8\\xd6\\xd5\\x96\\xe8\\x0b?\\xc4sOt-e\\xbd\\x8f\\x14\\x1fL\\xf0\\xfc\\xd2\\xdf\\x1c\\x88\\x17+\\xac\\xef\\xb3L\\xc8\\xb2a$\\x1eI\\xc1Q\\xfbH\\x9e-\\xf2\\x05\\xd74\\xca\\xfe\\xbb\\xac\\x18\\xdaDR\\\"\\xbdx\\x04\\xa3\\xd8\\xd2\\x01\\x98{\\xc8\\xf2\\x0d\\xba\\x18wv\\xc1\\x82_#x\\x11F\\xf0km\\xf1\\x15\\xbd\\xf5\\\\\\x133\\xa6\\xbf\\x14-\\xbf\\xf4\\xc7\\xf4\\x97\\x0eL\\x7fY\\x1b`EI=\\x9b6\\x0d\\xf1\\xe5\\x0d#\\xfc\\x90#\\xfc\\xa8\\x8d\\xf0/o\\x18S\\xf6\\xbcz\\xf8\\\"Liw\\xc1\\x82\\x1f\\xc4z\\xfe\\xe0\\xbf\\x9e?8\\xd6\\xf3\\x87\\x06\\xe5b_\\xb6\\x96/\\xfaI!Z\\xc8\\x08\\xff\\xa5\\xb4\\xb7\\x1c\\xbd\\xa5\\xba\\x96\\x8f_S\\xe4\\xbelko\\xbf\\x8a\\xe0\\x9f\\x11\\xfc\\x12\\xc1?\\xdaJ\\xd3\\xe3\\xa3\\x7f\\xa0\\xc2\\xd4&9\\x12\\xe2\\x10\\x1dOb\\xe4\\xca\\xd0\\xa3L'6\\x1b\\xb1\\xaf\\xcc\\xd2\\x83\\xe2/\\xa5q\\xe9\\x13Y\\x15F\\x1eR\\x8cDr\\x83\\xd5PN\\xf8\\x07\\xc2\\xc7\\xadF\\x077\\x19\\x1auN>\\xa9\\xf4\\xf3\\x96\\xf9\\xa3\\x80\\xe1\\xaf\\xa0\\xcb\\xbb\\xbb\\x93\\x86\\xb3\\xa8q\\xef\\xa9<\\x0c\\x86#\\xaf\\x8e2KG\\xea,\\xaa\\x0c\\x18\\xff\\xf04\\xb0 7fm\\xf0+\\xdeZ\\xf0\\x95\\xd4\\xb5\\x12\\x12\\x0cG\\xa1_\\xbbq\\x07r\\x08\\xa3fR\\x883\\x0fy@\\xd9\\x05\t\\xdb\\\\\\xf3\\x93\\xea\\x8d\\xdc\\xfc\\xc6\\x1f\\xd5\\x1b\\xd4\\xfc\\x86Q\\xca9\\xac\\x84\\x9cR\\xf5d\\x16*\\xbfL\\xd2\\x19~\\x8a\\xe0|\\x04\\xfc\\xb8O6\\x92x6\\x92Y\\x97\\x1d@/\\xcc\\xc2\\xdc\\x97OO\\x08r74\\x8b\\xc2\\x8d\\xe4?7\\xb0\\xc5\\x80\\x1e\\x06|(W\\xd7k\\x08)\\xf1T\\x97\\x11\\xc9\\x9a\\x99\\x81\\x9a\\xd9D\\xf0\\xd2\\xca\\x91\\xf0\\x03\\xa2\\xb2l\\xecE\\x10\\x0b3F\\x0c\\x0f\\x07\\x90<\\x80\\xd8\\xeeF\\x07r\\x1cK\\xde\\xc6\\x90r\\xd1\\nv \\xe6\\xb2\\x95\\xc5\\xad\\x0e\\xd4b\\x0b\\xbd\\x1e\\x0b\\x96\\xc3\\xbdQ\\x84\\x8a\\xbb\\xe5pw\\xc4\\xbf\\x8c\\x80\\x84\\xa5\\xa6$\\x86mh+\\xe1\\xa0%~\\xa9K}\\xd6zhU\\xfb\\x936\\xab\\x8c\\x9et~Df\\xfc\\x17/\\x93q\\x85\\xac\\x90\\x15+\\xe7\\x02\\x0c\\xc7\\xc6\\x8f\\x81\\x93\\xa5P\\x97r\\xfe\\xf0_X\\x05\\xfc\\xedmx\\x04\t\\x1c:\\x1a\\x07?u\\xa7\\xba\\xacjOu]\\xc1\\x01|F\\x07F.\\xcaKL\\x12\\xe8L\\x86{\\x8d\\x93\\xa8\\xfc\\xa8}\\xdb\\x03M\\xb2\\xfc\\x1ax2\\xb5;\\xb1*\\xca\\xa4y\\x94\\x0b_L\\x8eR\\x11XQ\\x83\\xe3M\\xfd\\x0c\\xa3\\xd5\\xbe\\x91\\xba\\xcf\\x0c\\x9bx\\x19\\xd0\\xb0?\\x8f\\x17\\xd5\\xba\\xbb\\xda\\x05m\\xd2\\x08Q\\x0c\\x1d\\xa06\\x10:Ts\\x13b\\x1d\\xd2\\xaf\\xff\\x81!\\xa9-\\xd0^t\\xb4\\xeaD\\xd0\\xeb\\x99|\\xcd\\xf8\\xd5\\xeb5=\\xf7\\xf0;N\\xd3\\x17\\xde*\\xab\\x85\\xfbT1\\xf0#/9\\x1b\\xc1\\xa1\\xb4 \\\\:\\x7f\\x95\\x14\\\"\\nfB\\xc4\\xf3_\\xeb\\xcf_\\xc7\\x0b\\xa1\\xbb\\xf2\\x1a\\xce\\xc4=\\x1ce=\\xae\\xf9]\\x0d\\x14O\\xdd\\xd4\\xaa\\xe9\\xaf\\xf9Acf\\xdf\\x11\\x1cwHe\\xbe$\\xb0%\\xf5\\xef\\x0c-\\xcc%Fm\\xd9\\x18%\\xc1\\x82j/\\xeem\\xa0\\xa6\\x97N\\x08o\\xa7V#\\x06So\\xb8\\xb6f \\xb8y\\xf9f\\x10\\x868\\xa1\\x00=\\x0f\\xf4\\xbb\\x9bN\\x10\\xec\\x93\\xf4\\xa7f[f\\xc7Q\\xd2'\\x9f\\x97qZ\\xa0J\\xde\\xf4\\x02\\xd3^\\xd8Ro\\x07\\xcc\\x93#?\\xf7Z\\xf2\\xee\\xe5\\x8d\\x03\\x11M\\xa4\\xd9\\xb5+\\x87\\x07\\xed&+o\\xca\\xc7\\xda\\xcd\\xe6\\xe7''\\xb3\\xb8\\x98\\xb5\\x1a\\xa8n\\x97\\xaf\\xd4\\x1e\\xac\\xd7B\\x7f\\xcco.\\xe5\\xb0\\nu\\xa3\\x907\\xc6\\xea\\xc6\\x18=\\xa5;\\x90\\xb2\\xe9\\xc1!\\x0d\\xd1\\xf8\\xdb\t\\x1b\\xe5Z\\x81\\x9e}\\xe6\\xb6\\xf9H\\\\\\xac\\x06J\\x88})#\\x04\\x1d\\xe6\\x8f>9'\\xf9*\\xe8T\\xa8\\xa8K\\xb1B9\\xda\\x00\\x83P\\xec\\x82Nv\\\"\\xe3@\\x98\\x91 CNQ8/\\x06\\x94\\xc3\\x15o\\xeeb\\\\\\xa1\\xed(\\x00\\xf4\\xdf\\x97\\xfdq.\\xc2c\\x8f\\xa8q\\xda\\x16\\xa8\\xe5gc\\xee\\xbc\\xf1\\xaaZ@\\x0b\\xcd\\xd1\\xd5\\xbe\\x88m\\xda\\x0d\\xdbB\\x90\\xb4 \\x0exg\\x0d\\x0f\\xf9\\xe6\\xa5xK\\xc7\\x12\\x10\\xa9\\x05\\x81\\x01$f\\x08\\x1b\\xa17\\x15\\xc10\\xc6/\\x16 \\xb6\\x8frE*\\xd1\\xc7\\x14<\\xa8_\\x1c\\x9e\\x9c\\x13\\xdd\\xc2\\xd8\\xb4\\x00\\x9d\\xa43\\xfe{\\x86<\\x01\\xe9\\x9f\\x11\\xf4\\x8a\\\\\\x85\\xfc\t\\xbf\\xab\\xddB\\x1cQ\\x185\\x95\\x1ek\\x06\\x8a\t\\x885V\\xf1q\\xaa\\x11\\x13\\xbe\\xa8\\x0b/\\xba7w\\xd3\\xbd-T4\\xea\\xf1bsM\\x02\\xe2\\x1c\\xbbj\\xc0\\x8c\\x8fB\\x9f\\xa3\\xbc\\x1e\\x1a\\xfa\\xa4\\x86/\\xcb\\x1e\\xdc\\x86\\xdd\\xd2\\x9fE\\xfa\\xbd\\x84\\x91zC}\\xe8:\\xd8\\xfeY\\x0e\\xed\\x9ff\\xc4\\xf9\\xa7\\xb4\\x19tl5\\x1b\\xb4\\xce:\\xa0U\\x8b\\x8c\\x11*\\x02O_\\xa1\\x15q9\\x0b\\x99\\x97b\\xd5X\\n\\xad\\x0d\\xf3j\\x9c\\x91@\\xbaZE\\xa0\\xe2\\xfb\\nF\\x16\\x10\\xc3\\xfb\\x98\\x9e\\x118]\\xc1n/\\x8cpo\\xe19\\xb4\\x1b\\xd5W\t\\x0d5\\xe8[z\\x1bv\\xc3\\x08i\\xba\\xf6\\x02\\xc5e\\x94K\\x18\\x9f\\x16\\xe8z\\xc8\\xe0\\xa1\\xe4\\xd8\\xf8\\xdb;T\\x99pN\\n\\x16\\xe75\\xdd&\\xa1\\x13M\\xb5y\\x82C\\xc3\\xc1\\xeaX\\xa3\\xa3\\x07\\xfe=&I\\x1a\\x04\\x0cv8\\x01\\xbe\\x0d\\x94\\x8bV!\\x97\\xcd7\\xc3\\x9d_JX\\xfeb\\xc6\\x9d_\\xbe\\x0cwN\\xcd\\xbaD\\x81/\\x9aJ\\xe9\\xf1i\\xc1\\xf2x\\xcc\\x9a\\x96\tK\\xb3'\\xc4\\xe5fz\\xe1|z$\\x9f\\xea\\x0f53\\xd6\\xf0\\x1f#\\x15`\\x1a\\x10\\x12\\xc1K\\x8e\\x19z\\xdc\\xc3\\x19\\xe9\\x0c\\x04\\x82\\x86\\x15\\x86\\x93G\\x94\\x0f4M\\xfb\\xf0\\x932g\\x84\\xa3\\xb6gc\\xa3\\xcf\\x8dL25\\x7fY\\xadG\\xe9![S-U\\x1e\\xb2\\x03\\xc8\\x85\\x8b\\xac\\x15W\\xa4\\x8a\\x88\\x04t\\xc80\\xecn\\x07=\\xba\\xb2\\x11\\n\\x7f\\xbc\\xa3jgf\\x1c\\x15\\xadT;\\xf3\\x9a\\xac\\x9fu\\xc84Q\\xe3\\x14Z\\x937\\xbe\\x95\\x9956\\x9bikJ <B\\xf5\\x87\\x8b\\x03\\xf3\\xd2\\xb88\\xb5-B\\xd3B\\x84\\x04^\\xad\\xcc\\xf66_\\x9b\\xedm\\x83\\xaa\\xe5\\xca`9c$\\x82_9\\x91\\xba>\\xaa7\\xbd\\\\M\\xa8/\\xf4\\xc3CbD\\xf9Z\\xdf\\xb3\\xb8p&\\x02\\x80\\xa6\\xa5S4\\xdd\\x08\\x93o\\xa9\\x02\\x1a\\xbd|\\xe9\\xc6\\x12\\x9d\\x8a\\x9dU\\x99\\xaa\\\"\\xc9V\\xeb;-\\x11;-\\xe1;-{\\x00\\x89;\\x16:\\xe6\\xdf\\xe3bf\\xb0\\x03\t\\x1c@b\\xd1\\xf35vf<\\x8a n\\xee\\xc6\\xc4\\xa8\\xb4\\xb5\\n\\xa3\\x89\\x17\\xc8\\xae\\xb3=%\\xb8\\xac\\xfbS\\x03\\xa1uw\\xe6\\x9d{8\\xb9\\x89=\\xbc\\xd9*(\\xc8\\xa1\\xa65\\xfb\\xf7\\xed\\xf9\\x98\\xef\\xf9\\xd8o\\x8fk\\x8b8\\x9cU\\x87\\x1c\\x95\\x87\\x1c5\\xee\\x8b\\xd2[\\xc5c\\xad\\x91\\xf7\\x0dk\\xbb\\xb2&4iB\\x86\\x85{V\\xd8\\xf2SP7\\xcb\\x86v\\x94\\xb1\\xe8$\\x9e\\x04\\xd4\\\"\\x83\\x96\\xbb8{\\x00[\\x01F\\x9cKyT\\x08\\xa4\\x18\\x8b\\xb7'\\xb4\\x10A&d\\xe2\\x08\\xf2\\xedm\\xb9\\xab\\x1e\\xd8\\xa5\\x91\\xbc\ts#L+}\\xf5\\x8d\\x025\\xcb7\\x86\\xaaE\\x9d\\xf3D\\xd7\\x12\\x8b\\xed\\xf2\\xbd\\xa5Y\\xcb\\nl\\xbe\\xd5\\x98\\xb6\\x0e\\x1dZ\\x0e\\\\$\\xe1\\x8c\\x8e{@,\\x8dX(\\xaf\\x8d\\x10\\xe4\\x12\\xe5\\xf3\\xff\\x02\\x94\\xaf\\x0e\\x15\\xfd\\x14)C\\x08D\\xca\\xa2\\xb6\\x83\\x80~\\xa0\\x94\\xc6\\xa8\\x07\\x1e\\xcc[6LF\\x11'T\\xadC\\xc226\\xbeK\\xa8\\xa6%\\x12\\xbb\\xe4A\\x17\\xdd\\xa4.m\\x12\\x9a\\xd8\\x86\\xc9H\\x84C\\x96c\\x8b\\xeb\\x03;\\xcdI\\xfc\\xa9\\xbd\\xa06lk\\x1d[\\xc6\\xe5\\xfd\\x8f\\xed\\xbe\\xc6\\xc2Z\t\\x9ai\\xb1\\x8d/\\xdf\\x08\\xab\\x8a+\\x01\\x8f\\xaac\\xb5Ka\\xd8\\xbdQA\\xc1\\x0d\\x11\\xa5\\x02\\x9eC\\xb1(\\x82\\xf2\\xe4\\x1e6\\xbe\\xe6\\xb4.+\\xf67\\x1f\\xfa3\\xbcsI\\x03\\xe6\\xe4\\xfa.v\\x0dA\\x1b\\x0e\\xa1\\xf7\\x9e,H\\xcc`8\\xea\\xc1A\\xf5\\x0b\\xbd \\x98\\xa6\\x16\\xda\\x86^u\\x0f\\xbf\\xe5wX2'\\x05\\xb4\\x9d\\x8e\\xe7\\xd7g\\xcaML\\xb8\\x18\\x82\\x81\\x01\\xaf\\xf5\\x93\\xd0q\\xba\\x9c\\x10o.|Ft\\xc5W;*\\xab\\xd1<\\xa6,\\xf0\\x99Hm\\xffpPYQ^\\x8b\\xd9\\x13S\\x85\\x03\\xa5\\xad\\xab\\x8d\\xec\\x83\\xb0\\x13\\xc3\\x8e\\x08\\xa6k2\\n\\xcd\\x91\\xe6\\xe4\\x9c\\xe4\\xc5&n\\xda\\x1dp\\x9d\\x90\\xcb\\xb7\\xd3\\xeb\\x83\\x15\\x0eQc\\xb8\\xb3\\xe7\\xec&\\x8d\\x0b\\xf6\\xfc\\x06\\xba\\xaa0\\xb4\\xb3\\xcb\\xeb\\x0bS*UT\\xb9\\xc4\\x98+\\xcaJ\\xb0\\xca\\x03\\xa36\\\\\\xda<\\xd1\\xa8S\tA\\xbd\\xe6\\xb2\\xb9\\x94\\xb3\\x11\\xab\\xba\\x19\\xb1Vl&<\\x04\\xaa(N\\xc5\\x02Q\t\\x89\\xd0\\x98\\xf0F]7\\\"~xP\\xd8\\x1a4\\xa5\\x91\\xd2\\x13\\x0fI]\\xf5\\x0e\\x87m\\xcc\\xd4\\xa6z\\xde\\xb6\\xf7s\\xfa\\xbe\\x92\\xf4}u\\xc3\\xf4\\x1dU\\xc6\\x8a\\xbc\\x8b\\x1f\\x1au\\x17\\xda\\xddm\\xe8\\xf5\\xfb\\xfd\\xea.\\xa1\\x13\\xd8\\x86@\\x08\\x15\\xeaE\\xb2\\xe0\\xed\\xc1\\xe9\\xaa\\xf69Y\\xf0\\x86{!\\x9e\\x07\\xed\\x93`u\\xb3'\\x81\\x1an\\xa5\\x8b\\x84\\xaf\\xebCi\\x9d\\x11\\xabk\\x9d\\x11\\x8as\\x08\\x08\\xec\\xe8}\\x87p[\\xeb\\xcf\\xba?0@zW\\x18\\xe452!n\\xf05B\\x9d\\xf84\\xcd\\x0c\\xb6\\x87\\xc6\\x90\\xbd\\xcf\\x9d\\xc6\\xa1Rv\\xaa\\x1d.\\xe8R \\x02\\xb2\\xcb\\xa7\\x91\\xb0\\x15\\xe0\\x19S\\xdd\\x0d\\xe1\\xe1\\xa0\\xf4-]\\x91`7\\x82\\xddP\\x1eO+\\x89\\xdcg\\x84\\x05\\xbaU@\\x99\\x0c\\xf8}f\\xb8\\x8f k\\x9f]\\xab\\xeb\\x1c6\\xe7eTemy,\\xf6-\\xf8\\xbf:\\x92\\x0c\\x06|.vi@d\\x17p\\xaf3\\x94\\xf6D\\xb5\\xd0\\xb5\\xf3 4\\x13mp\\x89\\x03\\xed\\xc3j\\xf5\\x85\\xe7#\\x0eGB\\xd4@sV7s\\x16V\\xd8\\x8dz\\xc3J$\\xe0\\x90\\x93\\xf2`k\\x03S\\xf8\\x1a\\xf3\\xe0iw\\xeb*G\\xeaT9\\xd6%\\xc4\\x08\\x12\\xa3\\x06\\xd1\\xbcl\\x19l\\x8b\\x11\\xed\\xf0\\x01\\xe4\\xfe\\x0b\\xd4\\x92\\xd7\\x8c\\x00\\xdc\\xfc\\x00\\xae\\x80g\\x1co\\x03\\xa0\\x969\\xf9\\x02\\xd9\\x0c\\xce\\x9b8\\xec\\x95 \\x9d9\\xd5!\\x0d\\xe8\\xf3E\\x7f\\x84\\x16\\xc9\\xbf\\x98\\x03P\\xca\\x17\\x94\\xd7c\\x1f\\x91kuC\\x0c\\xc1\\x8a4\\x16F\\xf8}\\xc8\\x1fe\\xb8\\x1d\\x9aU\\xc5\\x13\\xfegy_\\x92,\\xf9\t\\x9eq\\xe7ed\\x91\\x81\\x8f8%*\\x9d\\xd3\t\\x89\\xe0\\x94\\xe0\\x9f\\x17\\xd5\\x9fG\\xea\\xcfSRF\\xf4\\x887\\xb5@\\x1e\\xf1\\xbe\\x0c\\xf29jH0|\\xa1/\\x89-\\xbb\\x04\\x9el\\xc9|\\x89\t&v\\xf6\\xab\\xd3\\x8e\\xdf\\x0b\\xaa$,\\x11\\xec\\x87*\\x7f\\x06\\xbe~\\xe0\\xbfk\\xee\\xdf\\xbbw\\xe7\\x1e\\xdc\\xe2\\xe7\\xd9\\x9a\\x13s\\xfb\\xc6)\\xdfd\\xe2M;\\x92\\xe3^\\xd9F\\xb7\\xbbG\\x8f\\x1e\\xc1\\xde\\xfdP\\xde\\xe1O\\x02V\\xde|\\xf8\\x10\\xf6\\xee\\x8b\\xdc3!\\xac\\x9b\\xce\\xf8\\xb6P\\xa6\\xe3._Il\\x1en\\xc1\\xde\\xee7w\\xbe\\xb9\\xbb\\xf7\\xed\\xfe]X\\xc3\\x9d\\xfd\\xfd\\xbd\\xfd\\xfd{w\\xbf\\xe1O\\xfc\\x9c2\\x9fZ:\\xd2)&\\xac\\xd7\\x8e\\xe0\\xeb\\x92\\x86Z4\\xd5\\xdd>\\x8f\\xaa\\xa3\\xb6\\x07\\xa3\\xbb\\xe3\\xae\\x9e\\xb7\\x9a#4Px\\xc5\\x18\\xa8qY\\xe6P\\xa5=\\x18\\xd8}\\xce\\x12\\xf4)\\xdc\\x92C\\x15\\x0e;\\xc2\\xa7\\xc21P\\xd0\\xf0t\\x17\\xd66\\xe7(<BEv\\\"\\xe5v\\xf1\\xaf\\x81\\x9e\\xa3\\xe8k \\xe1\\x03\\x8e\\x18\\xda\\xcd\\x07!\\xe0k\\x04n\\xeb\\xef:\t\\xee1\t\\x0c~\\xce\\xedC\\x0e\\xc1R\\xa0\\xb4Q\\x82Ea\\xa7\\xb2`=\\x82\\xdfky\\xcb;\\xf33<#Cb\\xb1@\\x19=V>q\\xec\\x8d\\xe0\\xbd\\x80\\xf5\\x1b\\x993\\x83`:\\x1cxF0\\xf1\\x19>\\xe7T\\x1c\\x1b\\xe7K}\\x9d,\\x0bp :\\xdb\\x08\\xc7gq1{\\x9aM\\x88\\x06\\x19u\\xcb\\xa4\\\\\\xc4\\x96\\xaa\\x90-\\x1d\\xa4\\x9e \\xb43\\x9e\\x1f\\x9a\\xbe\\xaa\\x08\\xbfw\\xc2c\\x8d\\x84a\\x97\\x1a3\\xa9\\x9c\\x0b\\xcb\\xaf\\xc9\\xf09\\x19y}\\xb9\\xf5\\xd6:n\\xb05\\xceOS\\xb4q?/\\x8e\\xaaT\\xd8\\xe8\\x0egz\\xe25\\x16[g\\xdd\\xe0\\xd5\\xbf\\x96\\xa3\\xa0\\xd9\\x84|X-\\xf8\\x96\\xdb\\x0d\\xa1\\xb8H\\xd8x\\x06Au\\xbf\\xab)~\\x8d\\xe3\\x82\\xc0\\xdeA\\xe7{\\xa0\\xd1\\xfe\\xfe\\x92&\\x9f\\x97\\xe4\\xf93\\xfb\\x1c\\xd5\\x85\\xcd\\x7f\\xb7a\\xf3\\x93l\\x8c\\x01\\xc3G)\\xe1\\xff\\x88\\xc96n\\x96cp6mVj\\x83\\xdcR\\xdaj\\x19\\xdf3\\x7f\\xcd\\x97k{\\xfb5\\x89\\xf4\\xa3\\xef\\x16\\xbc\\x16{\\xff5\\xee}G\\x88\\xc8\\x07\\x12r\\xac/\\xa4,z=G\\xd7\\x06\\n=V6\\xd5\\x01\\xfe@\\x97\\xe7\\xa6\\xc7`\\xefMFw\\xc8%#\\xb4H\\xaa@\\xc2\\x02\\xe2\\x9c`\\x92\\xe38M\\xb3\\x0b2\\x81\\xb8\\x80OdU\\xf4\\x9b\\x89\\xb3\\x9b\\xdd\\xf3\\x0de-n\\xf1\\xdc\\x98\\xc3X\\xbf|\\xd2\\x11\\xab\\xab\\xbb*\\x86~iI\\x8c;\\xde\\x94|\\xbay\\xf1\\x01\\xcc~\\xb1\\xea\\xc2\\x15j\\xac\\xc3\\xa6$C\\xb2\\xc9Z$\\x89\\xc6\\xc1\\x9b>\\x08\\xad\\x0d\\xb9\\xd5m\\xfa\\xa5\\xcb\\xda\\xfe=\\xf7\\xe3\\xc5\\\"]I6\\xde\\x12\\xd1\\xaf_W\\x91\\x83L\\xf23\\xb0\\x03\\xb2\\xddD\\xb0\\xe6\\x94^\\x91\\xbc\\x16\\xde\\x7f\\xa4\\x08!\\x96AA\\x18\\xc4@\\xf9>\\xa8 \\xa7\\xc6\\x08\\x19\\x95{\\xc2\\x89\\xfa\\xfc*\\xe7`\\x9f\\xfd\\x06\\xf4\\xc4y\\xeaot\\xda+\\xe5kI\\xd68\\xc3\\xa0e\\xb41\\xe6\\x03h@\\xeb'4]\\xf1&\\x85\\xd6\\x14\\xd5\\xa4c\\xe1\\xd4{J\\x80s\\x0fd\\xd2\\xf7\\xf4\\\"\\xfdd\\xe1\\xedKu\\x0c\\x13\\x8c\\x92f\\xa1 \\xf5b\\x16\\xfc\\x85;{\\xf0\\xb5HU\\xd8\\x1f\\xcf\\xe2\\x9c3/\\x8fY@Q\\x98\\xb1\\x8aG\\xc7\\xa4\\xed#\\xad\\xff\\xe2\\xbd?&U\\xc6\\x84\\xa48*ic\\x9bj\\xbc\\xf5\\xdaa,_9\\xf0V\\xa9;\\x8d4\\xf3\\xcf\\xab\\x08z\\x7f\\xefE\\x82]\\xb4\\xea\\x04\\xc6\\xb18\\xe2]{\\\\\\xf6cs\\xf57\\xa0Y\\xd8\\x16\\x97\\xdf\\x91\\x08>XE\\xe6\\x9fI\\xfc\\xe9u\\xdc\\xd02\\n\\x06/xGd\\xe6\\x02\\xf9\\x92\\xa1qqF\\xb6\\xa1\\xfc\\x1c;<9I\\xe6\\xf3%\\x92p\\x8em''\\x8d\\x14\\xed\\x1d)\\\"\\x03lE\\xfc\\x0e\\x9e\\x93&\\xd2\\xf3\\xfe\\x7f\\xe7o\\xec\\xdd7$\\xa6\\xe4\\x0f\\xf6\\xef\\x192\\x1f\\xbf\\xb7\\x0cY\\xb2\\xf86)\\xfa\\x95e\\x03\\x9c\\x91@\\xc4f\\xa1tV\\xb9\\xcd/H>\\xcd\\xf2\\xb9P\\x7f\\xc7\\xa2\\x8d\\x8b\\x84\\xcd \\xa6\\x90\\xd0iB\\x13F\\xa0H\\xfe \\xbe;\\xf0\\xa3[\\x8cw&\\x0d\\xfbE$\\x0d\\xfb\\x8cMp\\xfeb\\x1c\\x94\\xf9\\xd3\\xf9\\xb3>\\x1f\\xd9\\xeb%\\x8byO\\x85\\x16\\xd6\\xd2\\xa5\\xab\\xce\\xad\\xe9\\xed^\\x91\\x80*-?\\xedO\\xb3\\xfc(\\x1e\\xcfj\\xf1V\\xc6@\\x06u)R\\x8a\\xdc\\x15m\\xa9\\x9b\\xd4e\\x8a\\x82\\xf6\\x03\\xe7g\\xef\\\\ \\x7f\\x90\\x8el\\xe6\\x1fI\\x04'|\\x9e\\x1f\\x89G2\\x9d\\xd2| B\\x8a\\xcb\\x038r\\xa9\\x88\\\\\\x8bd%!\\x1d\\x15\\x86`{\\x00\\xfb]\\xa2\\x14\\xda\\x85\\xe1Q\\x95@\\xc6p,\\xbfN\\x8a\\\"\\xa1g\\x82\t\\xc3^?\\x91\\x95\\xc8f\\xc1\\x86\\xd4\\x94fR]\\x82y\\xe6/E\\xfcU\\xde\\x97-\\xdc\\xbds\\x9d\\x11\\xfc\\xd76_\\n\\x85\\xa7\\x96\\x01\\xeau\\xbc\\xb0\\xa6<\\xfb\\xf8\\x85\\x96\\xc5\\x93<\\xcb*\\x959\\xff\\x81\\xa2s\\x19K#\\xf26\\x85&\\x93b\\xad\\xebb\\xa3\\xae\\xff\\xa1'\\x85r\\xcf\\xa9 \\xec9\\xdd\\xa0i\\x9c\\xc8r1\\x89\\x19y\\x8e/\\xaf\\x0c\\xd5\\x0cm\\xdfn\\xba\\xb29\\x99g\\xe7\\xa4S\\xd26\\xccz\\xe5nxBR\\xc2'\\xe0\\xdbtk\\xd6\\xbeS^m:e\\xd1IsA\\xdc\\x89\\xa3\\x85\\x08Y\\x92\\x17\\xa5G;\\x94\\xae \\xa12\\xce\\x94\\x13\\x18\\x92\\x91l\\xd4c,m\\xf4\\xb0\\x8c\\x06\\x83]\\xd1)R\\xc6b\\n\\x14w\\xf8\\xc8\\x96$\\xda'\\x91\\xc4\\xb9\\x8c\\x03\\x15\\xa6\\x8d\\x95]'\\x1aw\\xfa\\xe2qr\\x17K?<;Q<\\x97)c\\x12YM\\xcbb\\xd6RW\\x01\\x03\\xc8\\x82\\xa5\\x83\\x06\\xca\\xe5*p\\x02K\\xe9\\xac\\xdb\\x8e!\\x03\\xab\\xd4qF\\x82\\x04cH\\xd0p\\xc3\\xf7n\\x04\\xbd\\x84\\x9e\\xc7i2\\xe1\\x94\\xf8]\\xccf69\\x88\\xcf&\\x85\\x01\\xc4.\\x0fT\\xfe\\xd2XNy\\xc5\\xa7\\x8c\\xd4*\\xe5\\xfb\\xc9\\xfe\\x01?\\x07I0\\xae\\x16\\xd0\\xa9(\\x9d\\xe2\\xec\\xc7r\\xf6\\xe2\\xd7\\x8a\\xff\\x92\\xbb=H9\\xbe\\x06I\\xc5\\xcb\\xb0\\x10\\xcf\\x8e4\\x82\\xa9\\x81\\x07\\x90{\\x9eR\\xd4\\xe9Z\\\"\\x1ee\\xdfy\\xd9\\x9b\\xe4\\x9aZu\\xd0\\x1a;`\\x9c\\x92\\xd8Y\\x94Hk\\xbc\\xed\\x16\\xc3\\x84?\\x84<p\\xb2\\x0bJ\\xf2\\xe7\\xcf\\xe0P\\x86\\xc2\\xca\\x18\\xc6\\xddH?)\\x06\\xc8\\xdd\\xa9[\\\"x\\x7fP\\x9e\\x15\\xf2n\\x9c2Y\\xefdK\\xde\\x0c%w\\xe7\\x9c\\xcc\\x9c\\xe4g\\x9d\\\"\\x91\\x82\\x14\\x93pU]\\xdb\\xf3\\x01\\xb6\\xfb\\xf8\\x993\\xbfZ?\\xae\\xf3\\xa4\\xec\\x08c\\xa3\\x9b|\\xd2^\\xdb\\x91\\xa3\\xdd]\\x9d@9Mz\\xa6\\x1e\\xac\\xd8R\\xa7\\x99,B\\x08G\\x1eZ_\\xf9\\xbdE\\xe0\\x17\\xcbp\\xa8\\xfe\\x92:\\x1a\\xc1%\\x1f\\x00\\x1d\\xea\\xd1x\\xa3M\\x8f\\x0fl\\xf2\\x19\\xc1`\\xd9\\x8d\\xd69c\\x9b\\xad1\\xef\\xc3k\\x9d\\xaf\\x05\\xfarX\t\\x0bX\\xd8yP\\x95#\\xfa\\xdf\\x88\\n\\xb8Z\\x87\\xfa\\xaf\\x9bE\\x89\\\"\\xcb\\xbb\\x8d\\x15r\\x9c\\xefX\\xf03+\\xcd\\xfe\\xdd\\xed>Ym\\xc0:\\xea\\x8d\\xb3\\xee\\xf6k2P\\xe7\\x04J\\x8b,_\\xa9\\xb8x-t\\x11&\\x06@\\x8e\\x86 b\\xb1\\xfeE\\\\<\\x16\\xf44@\\x1f\\xb6\\xfe\\xc9\t\\xa1\\xc52'o9\\xbd\\x0e\\xea\\xc4[\\xb1R\\xce\\x81\\x97\\xbd{\\xee\\xc1\\xd6\\xf9P?7\\xf4\\xd1pQ\\xec\\xd2\\x0d\\xb6\\xb8x\\xae41\\x9b\\xf5\\xaf\\xf7\\xd3\\xb12%\\xc86\\xebA\\x9e[\\xce\\xb67spR\\x1a\\x11r\\x01/\\xfde\\x9e\\x8d\\xbc\\xd0\\xbe\\xd4\\x89Y;\\xdcKo\\x1b\\x94\\x03\\xdb\\x99E:\\x88\\x08\\xba3\\x93\\x80a\\x82\\x19\\x86\\x19eL6\\xf7H\\x94}\\xea\\x80\\x80\\xb6\\xda\\x9d{K\\xed\\x98\\x8a\\xc11`+?\\xd2\\xfeI*\\xd6Fgk\\xa2*\\xaf\\x03\\xb24\\xc8\\xe15\\x1a\\xd2r?\\xe8\\x0c\\xce\\x9edp\\x0c\\xd3I\\n.\\xb9\\x0f\\xe0\\xb3\\xc1s\\xe8{\\x12\\x01\\xb2W\\x8dd\\xc0\\xaf\\x1f\\xbf\\xb3TO{\\xc2\\xdf\\xd6\\x81dS\\x0f\\xfedO\\xfc\\x81\\xc3oOH&*j\\x19\\x1f\\xac5>\\x9c\t@,\\x9d\\x9c&l\\x8e\\xe0PN\\xb14\\x13.\\xc8\\xd4\\xab\\xcf\\x9f\\xaf\\xd3\\xe78[Rv\\xed._\\\\\\xa7\\xcbOd\\xf5\\xa3`\\x8aY\\x0b\\xba~\\xdd\\xfezs\\xdd\\xae\\xbc;}\\xd9\\xdd\\xe9\t\\x13\\xa5FK\\xa7\\xe6*\\xc2\\x86V\\xbe\\xcd\\xf1\\xf8\\x93H\\xd3\\xa9(\\xcaW$\\x90\\xbf\\xfc\\xb4\\xa1?t\\xa6x\\x14\\x15\\x90D\\xc6\\xaaVRJ[\\xb3_u6k\\xa6m\\x1ce\\xac\\xe5o\\xd1\\xab\\xf8\\xc0\\xe6\\x8eyr\\xb2\\xc8\\xc9\\xb9\\xc9\\x14\\xec\\x97\\x85\\xe5\\x9f\\xbeIQ\\xeb\\xc5_\\x9f8\\xf2\\xf6fJ\\xaa#\\x11d\\xa5H\\xc7\\xf0\\x87F\\xe9\\xa8\\xb8!\\xa5\\xbb\\\\\\xfc\\xaa\\x13\\xbd\\xcck\\n\\xbf8\\x93R\\x7f\\x8fz\\xed\\xe0{>\\xa0\\x7f\\x92`\\xd73\\xff\\xdd?\\x9c\\xb8z.k\\x92\\x9b\\x8d\\x9c\\n\\x15-\\xab\\xadt8\\x17\\xc1\\xa9\\xc5\\x9d\\x12d~\\xd8\\x8b\\xe0\\xc4\\xa1\\xbc\\xc1\\x04pL\\xf5\\x86\\x91/\\n\\xbc\\x11h\\xcaU\\xb1\\xb8I\\x04q\\x18\\xc1\\x96T}T~U\\xe6\\x0eD\\x1e\\\\\\x19~\\x18$\\xb2P\\xd7!\\xe7\\x02\\xa4\\xf6`g\\x0fK~\\x1d4\\xab\\xc9\\xf1\\xeb\\xcae\\n\\x17zvl\\xc6g\\x14{U\\xf9\\xc6\\x9fp\\x9bW\\x93\\x1cZ\\xa1'\\x8a\\x8f\\x19\\x1f\\x9b\\x82@m\\xc8C\\xea*\\x8b\\xb2>c\\x16\\x95\\xd4\\x07Q\\x97\\xb4\\xd5\\x14\\xa4\\xa5\\xa3@O\\xb8\\\\p\\x08\\x19\\xee6\\x93\\xbe\\xc2\\x82\\x8f\\xd2\\xe9\\xa6\\xd4/\\x89\\x05\\x8d`\\xe9\\xe4U\\xb8D%$\\xb6\\xc0\\xf8\\xe9\\x01GD\\xb9\\x9e\\x84\\xf3#G\\xc12\\x8c\\xe0(\\x881\\xeb\\xc3\\x05?'D\\x0e\\xd7!\\xff\\xcc7\\x9d;cn\\x1e\\xaa\\x95\\xa8\\xf4W\\xe1\\xf6\\xd9\\xba\\xff\\xc2\\xcf\\x13\\x976\\x80c\\xea[l\\xcc\\xf2\\x08\\x1b\\x0c\\xf8\\x02h\\xac\\xf3\\x8br\\xa6\\xb2\\xbaP\\x04\\x99\\xc9\\x96\\x83\\xbbW$\\xde\\x0e\\xaa$_U\\xcb\\x07\\xda\\xdf\\x8f\\x1e=\\xe2\\xf4\\xe3\\x16\\x9c\\x99\\xf7\\xf9\\xb2\\xde\\x08\\xba\\xe9k\\x1fY),\\x1f\\xef\\x8f8^\\xaci\\x1b\\xc3Z\\xfc\\xb1\\xc4qI\\xbd\\xea\\xb0\\x82\\nl\\xc3\\xb9\\x84\\xccH\\xe8\\x15\\x07\\xf5\\xd5\\xcdB\\xfe\\xe5C\\xf1\\x1d\\xe1+\\x0d\\x070L\\\" \\xbeK\\x9e3\\x17\\xbd\\xac\\x12k`\\xf5\\x82Z\\x86\\x02Z\\x9a\\xe8:\\x12\\xdfph\\xd1a2\\xb2\\xd3\\xcc\\x02M\\xb46\\xeds\\x1c,\\xd1-:\\xe0\\xaf\\x15\\xf5\\x8c\\xc6>~\t\\xd3V4\\xa1\\xba\\xae\\xc2\\x90\\x1f_\\x8be1\\x0b\\x0c\\x9eEV\\xf2\\x12+\\xa0e~@\\xce\\x9c@.w=zmUj\\x95[\\xb7\\x00\\xb3\\xb0\\xd6\\xd4+\\\"'c\\x99\\xd8Wl\\x7f?\\xce<q\\xef\\xeeJ\\x94\\xb33\\x15P\\x86\\x8b\\xa1\\x0e\\xbf\\xaeL\\xc3\\xf1\\xd6\\x92Q\\xd7\\x9e\\x0b\\x95\\x90]\\x13\\x8f'W\\xd9\\xb9S\\x0d/\\xb2Qf\\xa1\\xd4\\xc3g\\x1d+g\\x03H\\xec\\xb3,b\\x9b\\xa3e\\x88\\xf6\\xa7\t?\\x19<\\xd0\\xaf\\xfc\\xb8J\\x9c\\xdb\\x1ed\\x18j\\xd6.~ \\xebiv\\x91\\xaeV\\xa7\\xd8\\x9a\\x93\\nLy\\xa8}s}S{.\\xa3\\xa1\\xcaO\\\\+\\x0eh\\x02\\x97\\xe7Q^\\xb7\\x9av\\xba\\xfc\\xd6\\xe4\\xef\\x95\\xac1\\x8a\\x80\\xc7.\\xad\\xdf\\x1a\\\\&\\xf0\\xb6\\x1e\\x04c[:u\\x11\\xe5\\x96\\xc1,\\x8d\\xd5\\xebI\\x97\\x04\\x0d\\xcbJ\\xd3a6*\\x1dB\\x0c\\x03\\xc5\\xcc\\xe4\\xb5\\xa3/\\xa0\\xc3]O\\x89c\\xd9q\\xd2\\x82\\x0c\\x0d\t\\xbe\\xbd\\xf7\\xedw\\xdf\\xdd\\xb9{\\xef;\\x11\\xcb\\xb33\\xc0@\\x18\\x11\\x07s\\xf7\\xce\\xde\\xfd{\\xf7\\xbe\\xb9\\x7f/\\x0c9\\xb3\\x87\\x0f\\xf6\\xe1\\x16\\x94\\xdfh\\xf7\\xef\\xf2\\x93i\\xff\\xde\\xfe\\xfd\\xbb\\xf7\\xf6\\xee\\xdc\\x8b\\x80\\xc0\\xb6l\\xea\\xdb\\x08\\xf6\\xf6\\xbf\\x11\\xcd\\xab{{\\xf7\\xfd\\xa6Q0O)$\\x97(~\\xec\\xaa(\\x9a\\x0d\\xd9H\\n\\x18\\x8d\\xde\\xf5_O\\xd0\\xd5E\\xf2fO\\x949\\x1c\\x06\\xfcoa\\x85\\x8b\\xaa?Q\\xa7\\xfe\\xa4\\xb2\\x99G\\xf0S\\x87S\\x84}.\\xb5\\xc3P\\x97\\xde\\xe5\\xb1(\\x98\\x8b\\xac:\\x16\\xe1!\\xc4\\xe2t\\xb4\\x12\\xd2\\x19\\xe1\\xe8\\x99\\x0d\\x93\\x11G\\x9d*\\xd7\\\"\\xbf\\xb1\\xe7]\\xca\\xbc1+\\xab\\x19^\\xe7#\\x9d3\\xc4b#b\\xc7Fx:\\xd7\\xa7\\x9b\\x8a\\xe9\\x8e\\xf1<V\\xd3M\\xe1!\\x8c\\xd1kk\\x86T\\xa2\\x18\\xa68\\xa9\\x07\\x90no[\\x18\\xb2)\\x0c\\xc4wf\\x81l\\n\\x87\\xa2\\x99\\xbd\\x11\\x0e&\\x83\\x03\\xce\\xfdj\\xcaI\\xf3w\\x82\\x0f\\x0e\\x96\\xe8\\x195EW\\xb2\\xa3 \\xe1R\\xd4\\xb2\\\"\\xa4EGv\\x1c\\x0c\\xe2\\xc0`\\xad\\xad%\\xff\\x7f\\xe9\\x9a\\xf0h\\x00\\xa9)L\\xc5\\x89<\\xea\\x12R\\xad\\xf2X\\xbct\\x18\\xdck\\xe8&\\xb9>\\x12\\xc1S\\x82\\xc9h\\x87\\xbc\\xa3QX\\xe3\\xc8\\x98\\x0fG\\xa6.\\xe5l\\xc0\\x86\\xb6\\x04x\\xea\\xca\\x10\\xab%\\xf9'5\\x115FEKl\\xad\\xfe\\x01F.J]\\n\\xd9\\xcd\\xb4\\x99wU8\\x8d\\xf2|\\n\\x0b\\x90\\xd1a\\x9a\\x82W\\xc9\\x99\\xd6\\x8e\\xb9d\\xb7\\xe0\\xb8\\x85\\x14\\xa9\\xe8\\xb2\\xf9\\x1f\\\"\\x7f\\x9dJ\\xdb\\xff\\x0e\\xec\\xc1!L\\xfa\\x8bLT\\x82\\x98\\x0cSN\\x8dZ7\\x86|\\xe4\\x9c\\x1f\\x9f\\x08\\x06S\\xfc\\x0e#\\xec9hh\\xff&\\x95)\\\\\t\\xcc\\x11L\\xbaX\\xd2\\xab\\x08~\\xbc693F\\x97!vY6+\\n\\xf5\\\\\\\\\t\\x82z\\xfdp\\x11\\xf9IP\\xf6\\xb1hF\\x12EC\\x84\\xa6\\xd7J\\xd8x\\xc3\\\\\\xce\\xb9%\\xb8\\xbb24\\x1b\\x95\\xb3\\xc3%\\x13\\x8f03\\xf2H\\xc4q\t\\x19\\x89\\x99\\xd8\\x89&x\\xaeM\\x17k\\x99\\xa1U\\x02\\xe8\\xa7$\\xc8m\\xa0\\xd2\\x04D&Y\\x1e\\x8a@b\\x0e\\xa9\\xb2P\\xf0]\\x9a\\x9f\\xa7u\\x18\\x9a_\\x1acL\\xe5\\xd6\\x00\\x82\\x14n\\x81\t\\xb5\\x91\\xae!\\xa1\\xce\\x1a\\xca\\x1c3AUtz\\xc9D\\x93\\x08|s\\xe7\\x0b5B\\\\.\\xf3;|\\xef\\x8d\\xe1\\x10\\x16\\xc3\\xe9\\x08\\xdc!\\xeb3\\xa1(\\x9b\\x08\\x0b\\x8cX\\xe8\\xfaZ\\x99g'\\xd4\\x04\\x13\\x8f\\x83B\\xc0\\x01E\\x97\\x85F\\xde\\xc7N\\xf2\\xeep\\xf3\\xaaU\\xfc\\x92\\x0c\\x01\\xdf\\xcf\\xa2\\xde\\xcc<\\x8c\\x103v\\x1fHV\\x9f>\\x80%\\xa6\\xf9\\xe1\\xb81\\x80\\xbd\\x10\\xe2\\xe1r\\x84hp\\x0b5\\x0bl\\x98lo\\x8f\\x1c5\\xeb@\\x13J\\x87\\xf9H\\xa8\\xb8\\x84/|\\x80\t\\x05\\xb7\\xb1\\xda\\x98\\x81\\x90\\xf0\\xc7\\x8b\\x08\\xd2\\x08\\x96\\x11\\xcc,\\x90\\x94\\xe79\\xff\\xbf\\x08S/\\xa1\\xc4\\xe5?\\x16,\\x86{\\xf0/\\x98j\\x9c\\x8b\\xba\\xe3h\\x0f?\\xde357\\xab\\xda\\x99\\x99\\x11\\xf1tSr\\x7f\\\"\\xd1m\\x86\\x14\\xfc\\x00R\\xf8\\x17\\x92\\xfd\\x14\\xd6`\\xc1\\xd0\\x0b\\xed\\x93\\x82\\x05\\x8b\\x08\\xa6\\x11\\xcc\\\"8\\x0d\\x9b\\x01\\xf8\\x1d\\xe2\\xc7yY\\xed\\xa3\\xf2\\x80\\xb0\\x1f\\xb5B\\xbdZ\\xa6\\xbf\\xc9\\xb5\\x08Z<Y\\\"W\\x11\\x89\\x16\\xb3 0.\\x0fk\\xbc\\xa9\\xa88\\x07\\xb9,8\\x17k\\xc4\\x9f\\xbf\\xb5\\x17rV4\\x1ea\\x9ck\\x0c\\xdb\\xd6\\xd4\\xb8\\xd0}x\\x0b\\xa8\\x19A\\xd6\\xc1!\\x95\\xba\\x00\\x055k\\x9a\\x12(\\x15\\xea\\x08\\xb5m\\x89TY\\x05\\xb9R\\xa0\\xf0\\x01]R\\x03\\x9dP\\xad!\\xe8\\xe4\\x9e]\\xc2C\\xc8p\\xc7\\x86\\xfc\\x96\\xa4\\xedA\\\"\\xb6,\\x15\\xaf\\xef\\xec\\xa1vV\\xdc#\\xc3%l\\xfb\\x94s\\xb3\\x14\\xfe\\xd0q\\xcfzd\\x9e\\x96\\xecDiE=i\\x984/\\xea\\xdc\\x850\\xd1\\x9eDp\\xd1:/\\x7f\\xfe\\xf7\\xb2\\x13\\x0eF\\xa2\\x83\\x8f\\x10\\x0cAf\\x17\\x91\\x128\\x84\\xc4\\xc4\\\"\\x98\\xfc&\\x7f\\xfe_\\xc6&(\\xd9\\xcc\\xf8B\\xeaq\\ns6!\\x1d.-d\\xba\\x10\\xc17\\x9e\\x8c\\x01a\\xc1x\\xd3#Z:\\xd2z\\xf4P\\xf2\\x14h\\xaf\\xb7\\x1c+\\xdd2\\xdc\\xce\\xce\\x02\\x1e\\xc2\\xf4\\xdar[\\x8d\\xc0\\xeeF\\xe6\\x03\\x9e\\xaa\\x03^\\x08\\xcd{BR\\xae\\xc42NARy\\xe6\\x17\\xf0\\xf0!\\x1e\\xf9\\xddb\\xda\\x18\\xc54\\xd3b\\xd5\\xde\\xac\\xa2\\x82\\xf1\\x98]\\xe2\\x9fH\\x1b\\x83\\x0c\\xd6\\x03.L\\xc5\\x82\\x9f\\xe0\\x90\\xb7\\xb6\\xd5)\\xafU$$3\\xb2\\x16\\xa0\\xd8\\x8b\\x149\\x8c\\xa5\\xd5\\xcc\\xb8\\xd8\\xde6\\xaf\\xf9d\\xd3S\\x9es\\x8a\\x05zY/\\x91bN\\xec\\xe4rR\\x92K\\xe5\\x00\\xb2hP\\xcbY\\x9dZ\\nNj\\xc1\\x99\\xa4&\\xd9xqmj\\xf9\\xdf\\xacKz\\xf1\\x9f#\\x86\\x92\\xae\\x99w9\\xadr-JC]9\\xc7\\xa5\\x96\\xc0O(\\x7f\\x84\\xbe\\x872\\xcd\\xaf\\x0e\\x07-\\xa5p\\xc3\\x18\\xca%\\xf9\\x7f\\x90\\xbekYq\\xee\\xe3\\x9a\\xd5T\\xfa\\x11i\\xb0\\xe4\\x13\\xe0\\xac{j3\\x9en\\xaci\\xe9\\xd6\\xb2\\xfc\\x075,/\\x0c\\x00\\x98\\xb46\\xf8\\xaf\\xd7\\xde\\xe0J\\x8c\\xc1=Y\\x0ee\\xc5\\x11DE\\xd4\\x89\\x1b{#\\x13C\\xf2\\xeb\\xcd\\xec\\xc1\\x86*\\xd7\\xb8LH\\xf2\\x10\\x83\\xeb\\xc3\\xb4.WP`\\xf5\\x8c\\x12\t\\xb4y,\\xc3\\xd6F\\\\\\xaa\\x80\\x15\\x8e\\x91p\\x00\\x05Z\\x02\\x8chT[5lqP\\x96!\\x92\\xcbf\\xc2[\\xb9\\xec\\xa2K\\xc3\\xaeG\\xa2S\\xed\\xfc\\xd6\\\"\\xd7t\\xe7\\x95s\\xed\\x0b\\xf3\\xed\\xda\\x1a8I;m\\xd1\\x91\\\\\\xd0\\x91\\xacQ\\xb6\\xe8\\x01\\xe4\\xb2\\x84L\\xee\\x95\\\"\\x99\\x96\\xf5K\\xd0\\xf3`\\xa4\\xd7\\xbblN\\xeeG\\xf3,~\\xbe\\xb1\\xc9\t&\\xd3oj\\x16^\\xa7\\x14\\xbe\\x1a\\xf32\\xf3;\\x1c\\x14\tT\\xd9g\\x92~\\xad\\x1c\\x83\\x0d\\x16`\\xd2\\x9e\\xfezM0(\\xf9RC\\xd7\\x16Z\\xb1\\xe0%\\x89\\xe0c\\x18\\xc1K\\xbd\\x17J.Y\\x97\\xe7y\te\\xa2\\xa0\\x8c\\xfe\\x95Q\\x15$ \\x9c)\\x1f\\x00s\\x16mP\\xf5'p\\x91\\xec\\xeap\\xe4AD\\x16T\\x13G\\x06J\\xcc\\x96\\x13up\\xacIY[\\xb5\\x12\\xc2\\x85\\xcffn\\x82\\x92\\xba\\xae\\xaa\\xdc6\\xb9\\xda-]\\xdd`}3Y\\xc5B~\\xa2\\xe1]h\\xec>!\\xc5P\\x80O\\xb9\\xa7\\x1eb\\x99=Q\\xf3\\xacslz\\x97\\x88\\xf6\\xf5\\x0e\\xdd*\\x8d\\xa4\\xfa\\xcc1\\x06\\xb7\\xa2#\\xe9\\x92\\x16\\xf0%\\xb5L5\\x00\\xa8\\xbbn\\x19\\xa2\\x81_0\\x80\\xafH\\x90X\\xed\\xe7\\xe0\\x14\\x17\\xc6\\x19e\t\\xdd\\xa8\\xf8C\\xbb\\x7f\\xedW_\\xf8\\xccv\\xecj\\xa8\\xb6\\xa7mct\\xe6J\\xb5\\xe6Im\\x10\\x90:0\\xf9*\\xa7|\\x06s\\xb8\\x0dw\\xdb-\\x8f\\xd5\\xb3\\xfd\\xf6\\xb3i\\xf9\\x9d\\xcds\\x7fa\\xf1\\x188\\x97\\xb1CG\\xc6\\x80a\\xe4\\x9b\\xbb\\xf3XZ\\xe4\\xea\t\\xe6\\xc9+\\xa9\\x9d\\x99/\\xa4\\x18:\\xec\\xaa\\xe7D\\xdd5\\x1e\\xc4`r\\xa9\\x03\\n^\\x89\\xe3:\\x87G\\\"kt\\x0e\\x0fa\\x0e\\x87p\\x81\\x99\\x07\\xf2\\x08U\\x0c\\x18g\\x8a\\x85 X@\\xfb,\\x13\\xf2w\\x88ei\\xd9\\xc6n1\\xe8'r\\x9c\\xfc!z6\\xa4\\x01\\xe9\\xd2\\xf4\\x96\\x9a\\xda\\x0e\\x7f\\x13\\x93\\x17\\x89\\x9f\\xa7\\xc5\\xc4\\xed0\\xa2\\xe5\\x01\\x99\\xb1\\x8e< \\x0b\\x16\\xc1\\x05\\xe1l2\\xf3\\xc8\\x03\\xa2\t\\x1f\\x81=\\xc6r\\xc1\\xb4#\\xeeKsZ\\xbcJ\\n\\x06\\xc3^\\x04\\xbdQ;\\xa9E\\xad'\\xcf\\xa4\\x16\\x89\\xaa\\x15_%\\xc5\\x0f\\xcb\\xac\\xe4\\xa4\\x9e\\x95\\xdcq\\x9ar\\x01\\xb6d-1I3\\x8e<\\xcb\\x93\\xb3\\xc4\\xe6\\xd9\\xa6d.\\xde\\x13\\xed\\x8b2\\xa1\\x04n\\xc1\\x99!\\x14\\xd2\\n '\\x0c6\\xcb\\xae\\xe1k\\xbf@\\x901\\x04\\x99d\\xabjU\\xf3\\x1dE\\xa00\\xb1\\x7f\\xe5\\xc4\\xc6\\xe0\\xa1\\x96\\x0dvs\\x975\\xc0c\\xe1!\\xec\\xc2!|\\x92\\x19\\x0cq\\x9b\\xed\\xca\\x08SqsW\\xa8\\x1f\\xf7\\xc43f\\x8c.\\x03\\xb0'\\xd8c\\xe8\\xfb\\xa4\\x16\\xd3\\xfcNe\\xcf9aq\\x92\\xba\\x19*\\xe5\\xdeo})q\\x06\\n \\x14\\xdfb\\x94\\xc08^\\xc4\\xe3\\x84\\xad\\x84A|\\x00\\x97Xo\\xbb\\x195 \\xe4A\\x14\\xb12\\xf1R\\xd6x\\x89\\xf4ORrN\\xd2\\xea]\\xfb\\\"n%~\\xe1\\x06\\x89\\x08\\x9b\\xa8BL\\xcbuV^\\xf6b\\x14\\x1c^\\x9b\\xb8\\xdc;7\\xd3\\x05\\x82E\\xac\\x14~\\xad \\xa4\\xcf13z\\x17^\\xb9\\xe2,k\\xdbj\\xb3\\xf4-H\t\\xcaJ\\x1c\\x9aU\\x03\t\\xcb,\\x992T\\\\h2\\xaf\\xcah\\xaf^R\\xba\\x0d\\xf1p\\x91&c\\xe4\\xdb\\xf6lQ\\xbb\\xb5\\xc1&\\xb4 \\xf9&d\\xa0\\xd1\\xcbn'8\\xfe\\x0d\\xc9$tjZ\\xfeTK\\xab'\\x9b\\xc0\\x15\\xe6\\xf8\\xd3\\xc8>!%%\\x81j\\xd7NE\\xc1\\x19)'(\\x16\\xcbb\\xd6\\x05\t%\\xbcU\\x11\\xfa\\x96]\\xae\\xc1\\xc9\\xca \\xe1\\x1b\\x16\\xbai%\\xe0\\x9f\\x90\\x11\\x91dQ\\xd9R-;\\xbe\\xe6\\x16\\xbc\\x8b2\\xbb\\x96\\x16\\x11%w*\\xe8*l\\xe3\\x1e\\x1e\\xe6^%\\xd9\\xea`\\xcb|\\xf3:|R\\x87\\xecn\\x04;{\\xeeV\\x97\\x14wWW\\xcb\\xad\\xf5\\xb8\\x16\\xb0\\xad\\xa1a\\x9f\\xf0\\xc8\\xd9\\xf1\\x05\\xb3#\\xfbd\\x99HnH7\\x07\\xb1\\x17(\\x9a@\\xee\\x00\\xf0&\\x89W\\x1e\\xfb'^i\\xf7\\xe1\\x95\\x90\\xa3\\xd9\\x91o\\xe2\\x95vw\\x1b\\xe4\\x19y\\xec\\x97g\\xc4\\xdc\\x87\\xd7\\xb4\\xce\\xaf\\x93\\xd7\\xe3qg\\x9e\\x91&\\x9fx,\\x08\\xad\\xd7\\x89\\xa6o\\xc2v\\x11\\x8dz\\xcb\\xbe\\xf5\\x97\\xce\\xbf\\xa8\\xee_9\\\"Y\\xe2\\xaf\\xac\\xfa\\xe7\\x1e\\xddfI\\x19\\xca\\xedi\\x17gOJ\\xe4\\xb3\\xaf\\xcd\\x06\\x05a0\\x14\\xb1\\xabB.\\x9e\\xa8\\xa7\\xec\\xdfW\\x04\\x86b\\xd1\\xd6\\x8d)\\xd0F\\xd9)\\x9aur\\xa5\\xfe\\xd8\t_\\xbc\\x02\\xa1s@\\xa1\\x04\\xc1\\xa2\\xd7w\\xa6\\xd7\\xad\\xec\\xdc\\x98\\xc8_\\x92d\\xe2\\x82\\x05:\\x9b\\x135\\xb8\\x9c\\x1a\\x87\\xa3s7\\x91\\xc6\\xdcl\\x94\\x90\\xc2\\xb4\\\\I\\x81\\x12\\xf6\\x00&\\xac\\xad\\xc1\\x9a\\xb1v\\xe2\\x89W\\xcf\\x8f?X2O\\x9c\\xa3\\x05]\\x83\\x9cM\\x7f5gV<\\xc0\\xb1\\xa3h\\xac%-\\xa8f\\xd2\\x8cn\\xd3\\x7f\\x9d\\xb3\\xe1\\x8c\\xa9`\\x90sV\\x05\\x83\\x9c\\xb32\\x18\\xe4\\x9c\\x95\\x89\\\"\\x9f\\xc8\\x9c\\x91\\xda\\xbbx\\xbf|[\\xbd\\xa5~\\xe1\\x8b\\xa5\\xfd\\xed\\x89\\xb2\\xc5i\\xb7\\xd5\\x17\\xea\\x17>\\xaaR{=)\\xf3|U\\x0f\\xcadOOj\\xd9\\x9f\\xf0\\x85f\\xe2\\xa0'\\x0d\\x89\\x19_\\xd2\\x93\\xf4<\\xd1r\\xf6\\xc8\\x87z\\x0e\\x9d'\\xb5\\xa4:\\xa2\\x0b=\\x03\\xce\\x13=#N\\x04\\xf3\\xb6\\x08\\xf4\\x84L\\xb3\\xdcd}\\xb4iZh\\xe9\\xd0\\x84\\xde\\xcc\\x0c#\\xdb\\xca\\x8d\\x81\\xeb\\\\\\x86^hL\\x97Y\\xbb\\x88\\xfaC\\xe1\\x13e\\x0e\\xad\\x15\\x0e\\x80\\x8f\\\\\\xadK=\\xe1p\\xc4O2s7\\x99\\xf4\\xbb\\x10\\xaaHs/LT\\xbd\\xb0S\\xf2\\x18\\xf4Q\\x0c]\\x06,,R\\x1fs\\xba\\x15\\xd7\\xc0\\x8c\\xb0\\x85\\x1d\\xd4q\\x86!\\x8e\\x06\\xdfJj\\xa0jSe\\xe3\\x80\\x85\\x95,\\xf3\\x80\\xf2\\x12\\x06p\\\\\\xe5\\xce2\\xcf\\x7f+1\\xabTj\\x8e\\x13\\xbb\\x0f\\xa0\\x10.\\xa6\\x05\\xfaIJX\\x14\\xa3R\\xfc\\xb2\\x12\\xe4\\x0c\\xddD\\x96%\\xf48\\x8d\\x0f#X6)\\x98\\x01G\\x1fO\\x19i\\x1d\\xef\\x9d(\\x1a\\xd4q\\x14\\x83\\x8c\\xbf\\x00S\\xa5\\xf5\\x13\\x85\\xfa\\x0e\\x84\\xcd\\xdc\\x08k\\xee\\xc4\\x0b\\x07\\x93:\\x0e\\xda,J\\x88\\x839&\\xcb\\xe4\\xd8\\xa5\\x83\\xd1\\x80\\x82\\xf8Rf\\x86\\x0c\\x1a\\xbf6DN\\xb5Y\\x9c('\\x9b\\x8ceoRY\\x91\\xa1\\x92/\\x92~mq9M\\xceD\\x85\\x11\\xc4udi\\x1fog,\\x82\\x15\\x8b8\\xd3\\xe0J\\xa3~b?\\xad*^]\\x1d\\xe2F\\x08KEay\\xb2\\x1b_\\xc2\\x04-,\\xc8\\x1dQ3Ryf\\x87O-\\x91\\x88d\\x1cv\\xc3\\xc6\\xc4\\xa0\\x16\\xf7\\xcc\\xe7\\xb6\\x8c\\xc0jc\\xad\\xe9q\\x96\\xb5rV\\x16O\\x13u)b\\x12K\\xff\\xa5C\\x85`\\xe2x?PQ\\xee\\xf8\\xd3\\xce\\xa3\\x82\\xf4K\\x89e\\xe5\\xc3]\\xf4\\x8c\\xdd\\x81\\xd8\\xfd\t\\xaa\\x18\\xf9k\\x16\\xbe\\x11_y\\x04s\\xc4\\x1d\\xfe\\xf2\\xdca\\x0f\\x95@\\xe8\\xe4\\xe1\\xd5\\x95\\xa0\\xe3,\\x9fvZ\\xee\\x87SG\\xd1\\x11\\xd0\\xd4\\x12X\\xedq'\\x85\\x03N5\\xdd\\x9f\\xc8\\x96\\xd1\\xb3k9$\\xe6\\\\)`\\xdcvx\\x97/a\\xd1t\\xcb\\xcfPs\\xdc\\xb1\\xac\\xc2\\xa9\\xd5\\x7f\\x01S$/\\xf5\\x05L\\xe0\\xd1#\\xc8\\xdc\\xdf\\x8d1\\x00f\\x9b\\x1f\\xeb\\xea\\x03\\xc72\\x8d\\xcb\\x05\\x1d\\xdf\\xf0\\x82\\xe2\\xb9\\xf6\\xc0\\xea`\\xa1_|\\xed\\x8d\\x19]L\\x97Z\\xf4\\xa5M\\xe8k^\\x89,\\xb2\\xc7E\\x9d.\\x85|\\xf3ZJUh\\xe7\\xcbv;\\xbe\\xba\\xf80\\xd2\\x86/a\\x17\\x82\\x83.\\xf5#\\x92\\x8f\\xe1\\x00\\xd2.$\\x079\\xf2X\\xb8\\xa2\\x17\\x98y?\\x13\\x87R\\xc2Q\\x83\\xf2S;\\x0b\\xedn\t\\xe0\\x9c\\x92co ]l=\\xf6K(qaL\\xf6c;D\\x96\\xad\\xec\\\\\\xe7\\x0e\\x8d\\xc2\\xb2T\\x93\\xc3\\x0e\\x17\\x92\\x96\\x9a\\xaa\\\\\\xfc\\xd4T\\xe5\\x0co(=9\\xc5_U\\xd6\\xa3e\\xa9$\\xcf\\xf0\\x87&5&\\xe2\\x86\\xd4\\x97\\xc7\\xe2W=\\xb9\\xd7\\xd2\\x0b\\x14G\\xcc\\xa5Q;c\\x18\\x06}\\xc6\\x07$\\xec\\xfa\\\\|\\xf34\\x85_\\xb6\\xa1l\\x03q,\\xfc\\xf1er\\x1ewL\\x05\\x11N\\xf3\\x0f\\x15qS\\x8a\\xd9\\xd6\\x07\\xc8\\x0b#^j\\xbe\\x14\\x99kc\\n\\x96\\xb3\\x83sK\\x1b\\xc4u\\xb8td\\xcc\\x19\\x0b\\x13\\x9f\\xb4\\xe5\\x89\\x8d\\xa1`\\xe1\\xd4$\\x8d\\xc5\t\\xa5\\xf2F\\x05\\x92\\x0d\\x136\\xde\\xb2c\\x18\\xc0\\xd8\\x1c6h[\\xd1\\xa2>\\xf2\\xf2\\xf8'\\x95[\\xa6\\xdeUT\\x83\\x9d\\x80<\\n;-\\xde\\x12\\x0e\\xcb\\x9b\\xcaD\\x16\\xeb\\xe3l\\xc7 \\xd8\\xf0\\xe6\\xd8\\xce\\xd3\\x95j6\\xf4\\x07(c\\xf0\\x88\\xe6\\x99J\\xa4\\x07\\xea\\x9c\\x05\\\"?\\x97dK\\x91+\\xe5\\xa3\\xe2\\xe2\\xa5g\\x1a\\xc3\\xa7\\xf6\\x91\\x94\\x16\\xf4\\x86\\xedW\\xb7\\xac\\x9a\\xf9A\\xf1\\xe5C!\\xd0(V\\x10\\xb6\\xe1\\xdc\\x86t5sD\\xc9DJ\\xbe\\x15\\xbf~ \\xfc\\x16\\xd0\\x15\\x07\\x0b\\xab\\x0eJ\\x1f\\x06\\x11\\xaa\\x95\\xa3'\\x03\\xffhg\\x00\\xe7N\\xc4\\xeb*\\xf3n\\xad\\xe8\\xe5L\\xd2\\xa3\\x05\\xbd\\xa8\\xa83Q\\xeeX\\x7f\\xa2\\xe2\\x0f,\\xe5\\x8d5\\xb3\\xbe\\x9en\\x07\\xf33\\xd8\\xd9\\xf6\\x0e\\xf6?\\xf1a\\xff1\\xc6\\x03\\xb6m\\xc5\\x19\\x96\\xa5\\xcc\\x8c\\xd8H\\x91\\x9b>@\\xb3\\xd1.\\xfe\\xbd\\x8d!c\\xbc\\x05\\x83\\xc7\\x02\\xc7\\x87\\xb8\\xb9\\xbf\\x92.2\\x15s\\xdc[j\\xd8\\x86\\x86_\\x13\\xa7R\\x13\\xfb+\\xd1#\\xd5\\x91i\\xac\\x82N\\xb7a\\xccG\\xfd \\xc4\\xe7r\\x1fa\\xf5\\xac\\xb4\\xbe\\xe3\\x0fa\\xa8\\x8cG\\xe9H\\xee*.\\xd8\\x8da[e\\x1f(\\xf8\\x9f\\xe7\\x86\\x11\\x8d\\x85L\\xc8\\x1f\\x8f#QF}\\xcc\\x0f\\x00\\xf1o\\x82\\xff\\xba&2\\x15\\xd2X\\x82\\x11\\x04\\xf8\\xe72|\\x00\\x0b\\x0e\\x11\\xec\\xb9\\xe0\\xbb\\xc9k\\n\\xb5\\xa1\\x8b\\xf1\\x9a\\xf1n\\xd2\\xe5N2\\xc3 \\x8a\\x87\\x18#!\\xc8\\xc6RH\\xdc\\x07|`x[Soat\\xe3\\xc4\\xbc\\xb2X0]|s\\xeb\\x16\\xc6\\x01\\xa3h6i\\xa8 :h\\xc5\\x1c#X\\x90\\x90\\xa7bz\\x9c\\xdf(\\x1e\\xc0\\n\\x1e\\xc19\\xff\\x87S\\x82.Y\\xe2\\x14\\x060E\\n\\xb22+I\\xd4\\xc5\\xbb\\x9bK\\x92s:\\x12\\xfdV\\xbf\\xad\t\\xa4\\xcc\\xfc\\x9d\\xfaP\\xf4|\\x8e\\xb4\\x0b\\x060\\xe9\\xa0L\\xa0\\x18|\\x05\\xb2\\x80/\\n\\xc6\\xac\\xcfj\\x8a\\x93\\x1c\\xd9\\x98e\\x88g\\xdd\\xa3\\x01,B\\x8898\\x16\\xb8h\\xf8o!\\xdc\\x16*\\x07\\x85VSR\\x0f(\\xda2\\x85O\\x96\\xee\\xc8\\\\8\\xce8\\xa5B\\xfcp\\xae\\x9c\\xdc\\x87\\xa9S\\x98\\xe1\\x0bs\\\"\\x84\\xeeG\\x8f\\xf8\\x81\\xeeZ\\x18>\\x80\\x13\\xa4\\xae\\x8b\\xea\\xf5\\x10Ns\\x12\\x7f\\xb2\\x7fu\\\"\\x05\\xb5\\xed\\x01\\x04bK\\x85\\xf05\\x9c\\xe0&\\xd9)!#\\xf7\\xd3\\xf0\\xc4,\\xdc\\x9a\\x177\\x15X\\xfdH\\xaa\\x11E;M\\x90\\x16|ev`\\xcc\\x97(\\x15\\xfb\\xe1\\xa1\\xd8\\x0f\\xb5\\x0f\\xca\\xe5,8%\\x90\\xef+\\xea\\xb2#\\xa9\\xca\\x8e1\\x8ar\\xe3\\x94\\xa4KTkT\\xc7\\x89`\\xbbI\\x8d\\x9d_V\\xba\\x1d\\xc08\\xce\\xca\\xbd*\\xd5\\xdd\\xabf\\xbe\\xeeU\\x9cL\\\\\\xb0 \\x16\\xe2\\x0eFj6\\xa3\\x1b-\\xc7\\xf1c\\xbf|\\x91\\xb9\\x9e/\\xb2\\x16A_eY[\\xba#B0)\\xb6\\x93\tF\t\\xc6\\x9a\\xbe'\\x15\\x10~$\\xf7l\\x82\\xeb++\\xfd\\xc5A!RJ\\x8aU\\xbf\\xe9\\x94\\x92\\xb9\\x88GK7@\\x8f\\x04\\x1e)\\xa7\\xc9[\\xb7D\\x82\\xa8\\xca+9A\\x92\\xa2 \\xdf\\xccrcY\\xa9\\xb7])\\xe6\\x84[\\xf5.*\\xe5\\x94\\xce\\xfa\\x9co\\xcas\\xaf\\xf6\\xdf\\xb9\\xdbw\\x16z|.\\xdc\\xe1>\\xb0\\xaa\\xbe#\\xbf\\xb5\\xb1\\xdf\\xcd\\xf9\\xff\\xfa\\xfa\\x8e\\x1f\\xdcP,Ka\\x8e\\x9b\\x08gk\\xf0\\xb5oJ\\xbe\\xba\\xea\\xe1\\x9dfT\\xb1+!\\xaa\\x14\\xe1(\\x02\\xe1\\x8f\\x03\\xb4\\xdb\\xf7OD\\xea\t\\x91;<\\x15\\xf6e\\x8f\\xdc\\xe1^sz\\xeeT&\\xac\\x842a\\xc5{|\\xcd\\x02Q\\xdd\\xe6\\x88\\x05\\xadP?K\\xeb\\xbf\\xbb%\\x0ci\\xda\\x89\\x14KoM\\xbd\\x14K>8)\\x1c\\xfc\\xbcHI\\xc1,\\n\\xff\\xa2\\xe2\\xf8\\xf9\\xd1\\xba\\xb4\\xa9\\x12\\x06\\\"o\\x93\\x19o\\x85~\\xa2KQ\\x18K\\xf28\\x10\\xda\\xd3\\xea\\xe7>|\\x0d\\x89r\\xdcD\\x1b\\x910V\\xb6\\x93\\x9fZDXu\\xc9\\xfe\\xb5\\xf9H\\x15\\x0bJk\\x96}\\x14\\xf6Y\\xf6\\x92\\xac\\xc8\\xe4\\x98|\\x0e\\xc2\\xcd)3\\x19\\xeeZ\\xb8\\x86\\xb0?M\\x93E\\xc0;x\\x1d\\x8b|:\\x1anr\\xa2\\x9b\\xd7p\\xb5\\x8e\\xb9\\xba\\x933:\\\\\\xa0\\xf1L\\x95}c\\xa10\\xfe)%\\x86\\xe6\\xdc\\x1bkj\\x0bND\\x96J45(/\\xb5X3\\xabm\\xa6B\\x80\\x18Qi\\x19\\x0e\\xf7F]\\x8b\\x9d\\x0b\\xd5\\x9eXG9\\n\\x91j\\xdd:\\x081?\\xe9L\\x1f+\\x12Z\\xb5\\x10\\xcbB)\\xb2\\x19+\\xc9\\xb0\\xf1=\\xb9\\xfc\\x9e(\\xca!|\\xc3%\\xe5\\xc8\\xcc\\x9c\\x0c\\x07\\xe3kt\\x7f\\xf7\\xcc\\xbc\\xfc\\xa6\\xc3\\xeb\\x04\\xdd\\x954\\xaf\\x93\\x93eA^\\x92U\\x01U)\\x0bE\\xf1\\xdaI|m\\x9d\\xbe\\xb7\\xd0tc\\x8f\\x9b7\\xff\\xec\\xafm\\xfe\\xd5_\\xdb\\xfc\\xc7\\x8e8\\xb6\\x7f0W\\x8aXV\\x1bA\\xbd{~\\x83o\\xf1.\\xafN\\xad9CR\\xe6\\x08\\x8b9\\xaa\\xe2%\\x9d\\x0d\\x9d\\x97e\\x92\\xe5G\\xb2\\xfe\\x19\\xfa^9\\x15b\\xfe\\x83\\x05}7\\xc9n\\x02\\x0b#\\x12\\x99*\\x8a\\xf09\\xcd\\xe2\\xa2\\xd3\\x0d\\x15\\xf4\\x8e\\x12:N\\x97\\x13R4\\xab\\xda\\x97-\\xaa\\x176kv\\x16\\xdb[\\x1c\\xc7\\xe3\\x19yO\\x8a%\\x86Q\\x12\\x1aaE3\\xe9Q\\xf8\\x91\\xe2\\xe3Z\\xd9.W\\x04\\x93\\x12C\\xcc\\xce\\x14P\\xa7P\\xadzV\\x9e\\x8c\\xa1\\xf4:\\x14\\xbc\\xa1]\\x1da-v\\xa5y\\xa7n:?\\xa1\\xef\\xe5\\x07\\xc1\\x9b.\\xa9^i7UW\\xa2]\\xbb\\x98\\xaeXx?'Vu)\\xbbf\\xee,_\\xab.\\xe4RHg\\x1d[uU\\xfb\\x0c\\xdd\\\\\\x87\\xbb\\x1d\\xd9\\x90\\x00\\xc3:\\xd5\\xbb\\xda\\x87{\\xa3H\\xfb\\xbb\\xe5^\\xd8\\xbc\\xdcfQ+\\x19Q\\x97-\\x8b\\xb9\\x1f>\\xf2\\x95\\xc2\\x15\\xfe\\x9d\\xcbLp\\x00\\xbf[\\x11\\xa9v\\xd3F{?ws\\xba\\x9d\\x148o\\x12\\xdd|s\\xd2b\\xa7\\x01y3\\xa4\\xd3\\xa7\\xa82\\xc6\\x81bbz7\\xc5\\xadj\\xa6d\\x18&\\x8c\\xbe\\xf6\\xa2\\xc4Nn\\x14\\xedp@N\\x02\\xe43\\xbck\\x13\\xa0\\xac\\xc3\\xd9\\xa6N\\x83\\xf2\\xa0\\x9a\\x91\\xfaXZ\\x04mD)\\xeb\\x98\\xb2\\x99(\\xf9\\xcc\\xb9\\x86\\xc3o:\\xeb*o@i\\x94\\xf8\\x9atR\\x19t\\xb4\\x93\\x04F\\xc9\\xaf\\xf6\\xb7\\xcf\\xa5OZ&h\\x83\\xdbE\\x05}\\x13\\x9c4H\\xc9\\xef\\x1cZ\\xcbHC\\xb6\\x18)\\xd0\\x92\\xe3\\x9bq\\x01\\xc0\\xa2NhUE\\xb4\\xec\\xf1\\xef\\xbb=\\xd7\\xdc\\x1b\\x9c\\xea,\\x16m\\xeev\\xba\ts\\xe4\\xe2\\xb2\\x88`\\x7f\\xd02\\xe7\\xcd\t\\xa9S\\xe0\\xa3y\\x06\\xa0sW\\x1b\\x8c\\x13\\xf4\\xbd(\\xa4D\\xdb\\x961pW\\xa8Yj\\x90-W:\\xc1\\xb2'\\xd4\\x04\\xc8\\xbc\\x8f;{\\xb0cHa\\x0d\\x92{h\\xd2X+WP\\xa7\\xb1\\xb5\\xc6--_\\x8f\\x8d\\xeb\\xe0\\x0e\\xa9\\x81\\x97\\xa3\\xe6\\xe8\\x90\\xff8\\x0f\\xd7Q\\x8c\\xe4*\\x82-\\x1b\\xec\\xcc\\xb1E\\xae\\x19\\x19\\xcfx{\\x0f^[\\xfe\\x0f_\\x95_\\xc7\\xc9\\x8e\\x9b1k\\xa2\\x9a\\x15\\x8f\\xcf\\xcbD\\xbd~\\xc7o\\x86\\xc7\\xd4\\x8a\\xf7\\xb2\\xb5U\\x11\\xc4\\xccq\\xfaf\\x7f-;P\\x8e\\xa7\\xcd\\x0bH[\\xbb\\xa1\\xb4P(t\\x98\\x0e\\xa6\\xc0\\xe5My\\xae\\xc5\t\\xd8\\xcf\\x98\\xa5\\xb9*/t#|\\xe2p\\xeb\\x05%5\\xe8|\\x02~P%R\\xdc\\xde\\x8e \\xe3\\x0d\\xe5\\x12\\x02hn\\xb6\\xe7\\xf9\\xe4Sm\\xfa\\x84\\x81Z<7\\x1f\\xe1\\x03\\xa6&\\x1f\\x918*/v\\x03m\\x036\\xc3\\xd3\\xf9S\\xe1\\\\\\xdc\\xc9\\x8d\\x80\\n\\xca\\xa8s$\\x89\\xfb\\x0be\\x08K|\\xb8\\x12\\x906\\xb1b\\xb8\\xeb\\xb0\\x9a\\xa9\\x0b\\xb3Y\\x1a\\x13\\x83\\xeaW\\x1d_\\xc6h*\\xd4r\\x02}\\xc6\\x8a\\x882\\xb7:\\\"\\xcf\\xd8\\xcap\\x82U\\xf01\\xf3;~\\xb6\\x81'\\xbe\\xc4\\x8fX\\\"N\\xf9\\x0c7r#\\xe2B\\xc4\\x1e\\xdcF\\x1f\\x1c\\x0cDD\\x9f\\x1c\\xf9\\xfe[Y\\xc1,\\xeb\\xcc\\x9b\\xc4\\xd1\\xe6\\x9d\\xa8cf\\xb7'|@\\ni\t\\xc8\\xe1\\x04\\x0c\\x12X\\xaf!\\xe6\\x7f\\xc5e\\x8f\\x1c&}\\x96\t\\x15\\xbav\\x10\\x07a\\x05)\\xf3\\xa0\\xa4\\x93w\\x0c;&\\xcc,`0\\x10\\x9e~\\x01\\xdfl\\x85tD\\xda\\x85\\x03c\\xa5\\x89s\\xe9\\xd5\\xe8>vR\\xc5bV\\xe1\\x06K\\xac\\xac\\xa5\\x8c\\xa1\\xcb\\xca\\x80\\x18\\xc1\\x16\\x9eR\\x992\\x8b-\\xcb4>A\\xda<+<\\x8ea\\x99\\xe1\\x86\\xc9p\\xd3*)\\x10\\x93E\\x15\\x15\\x93\\xb6\\xcd\\xe9$\\xa6\\x9b1\\xf8\\xb1\\x85\\x11\\xa4_\\xa6\\xa7\\xca\\x9c<NRf\\xd5\\xab\\x1c\\xb3,\\x84\\x0e\\xad\\x03\\xb5p\\x9c\\xfa\\xfak\\xa7\\x86C\\x07\\xa4\\xa8\\xaf#\\x8a\\xb8\\x10\\xae\\x04\\xd6\\xe7i'1\\xbe\\x16\\xcb&}o\\xd7k\\xd8\\xc2r\\x90\\xf1\\xf66<\\x84\\xa4\\xdal)\\xa7A\\xa5VN\\x9ec\\x14\\x0b>\\xe09\\x96!\\xda\\xa4\\xc2\\xbcf!F\\x11\\xb4\\xdd\\xe5\\xaf\\xf45\\xbe\\x9e\\xb2N\\xda\\xf4x\\xff^K\\xe4\\xd6\\xd3)\\xb4\\xd1Zm\\xab\\xf8\\xec\\xeb\\xe3\\xb1\\xbc7|\\x96\\xaa\\xb5z\\x10B\\xd6yZrxmo\\x17\\xf0HC\\xf9\\xae\\x93\\xd8+\\xfa\\x1d\\xba\\\"\\xe0\\xf9u\\xe5V\\x13\\x10T\\x13tM\\xa1\\xe4\\xaa1\t\\x96\\xd2\\xe2\\x11\\x0c\\xb0g\\x91\\xa8\\xa3\\x13\\xc9'\\xcfU\\x92\\\\\\xf4\\xc6\\xd05\\x95\\x9b(\\x08\\xeaXk;0\\x7f\\xf2=0\\xddd\\xfb\\x86x`;\\x19K|\\xf6\\x08\t\\x1c.\\xef\\xe72\\xc8\\xc2E\\xa7\\xba\\x11\\xdd\\xc1i\\xa7\\x9d\\xa4J\\xa4\\xe4\\xc6\\xd3\\xb2\\xc9u\\xa7aE\\xb5\\x8a\\x16\\xdb]\\xb8\\xd9\\xee0\\x02C\\xa0\\xe5\\xcd\\xf0\\xdc7\\xb0,Y\\xee\\xb3.\\x9b0\\xf7_~\\xdel@\\xb0p\\x93\\xe3\\\"\\x19\\x12\\xb5\\xabk\\x92uP\\xa4De\\x1d\\\\JZ\\x11\\xd6Y\\x7f\\xa4\\x0cY\\x832d\\x918\\xc2\\xb2.\\xba\\xd0-7L+\\xabG\\x07\\x8f\\xcf1\\x04+\\xf9\\x8d\\xf1/\\xde\\x81\\xe0\\xf2\\x8a\\x1a\\xde\\x8ee<\\x93\\x83\\xbd\\x87\\x8bY\\x92\\x12\\xb0:\\xe5\\x81\\xae\\x0e@\\xdb\\x95>\\xf3\\x04\\xfb\\xd8\\x88\\xe6\\xf9\t\t?\\xde\\x88\\xe1\\xe3\\x8b-\\x01\\x0e\\xfcE:e\\xa9s$\\x07P\\xce\\x86\\x04E\\x07\\xed9WUC\\xac[\\x99_\\x85\\x89\\xb2e\\x1d\\n\\x04\\xd0\\xb8\\xe7-\\xf4\\xbcJ\\xe1!\\x16\\xac\\xb9\\x05q\\x80U\\xfb\\x90(\\xa7\\x18\\xa8\\x0d\\x07*M7R\\x04*\\xcb\\x01$()\\x86\\xa5$\\xb1\\xb5\\x8b\\xc59\\xedxeW\\x95\\xf3\\x85\\xe5_\\xb7K(\\xfd\\x15\\xa6\\x8c\\xdc.\\xae\\x81\\\\\\xc5aG\\xa1\\xf3\\x1b\\xa3R\\x92\\xadJ\\xbc\\x94\\x14\\xc4\\xcbd\\x02\\xea\\xdc\\x92\\xa9\\xe672\\xcf\\xa6\\xbe\\xf4\\x06d/\\xb9\\xa4\\x00\\xa5\\xfb\\xf5po\\xc4%T\\xd4\\x10\\x06K\\x15O\\x81\\xd8\\xc5\\x8f\\xd18H\\xab#\\x93\\x96\\x84#\\x8f\\xc4\\xf9\\x99v\\x93E~-\\x85sn\\\"K\\xa3\\xa5\\xad\\xe5u\\xb6\\xa0\\\\\\xb4\\x90\\xac\\xa3g\\x97\\x1di\\xbb(`\\xd7\\xaa\\xdd C\\xbb\\x01E\\xf533\\xfd\\xec\\xa4\\xa8\\xc2#\\x13]@M\\xf2\\x8b\\\"\\xb8Kk\\xda\\xe8\\xccN-\\xc5\\x9eT\\xda\\x8d\\x9a\\x83 \\xeb(\\xe2$\\xe1>\\xccq\\xe4\\x99(\\xbdx\\x08\\xe2C\\xe9^\\xc6\\xac\\xee\\x83e\\x96i\\xeb\\x11\\x91\\xf4\\x8b,g~\\xd2\\xacb\\xa2\\x022\\xbc3\\x8a\\x80\\x0e\\xef\\x8c\\x10\\xcb\\xc9p\\x7f\\x04;@\\x87\\xfb\\x86\\x0c\\xc1aU\\x90\\xbc\\x91\\x95\\xc1j\\xb1I\\x86l\\xa4v\\xd2\\x00\\xf6\\xdbm6+\\xf4\\xb9\\x1a\\xe2\\xa0\\x1f\\xee\\x99\\x06&8\\xd7_e\\x8d\\x0f\\xe1\\xd6\\xfdR\\xfc\\xfa!h(\\x04m8\\xf5\\xc2\\x89S\\xc2\\xdfE\\xc3+\\x0f\\xbb\\xd1\\x17\\xe2\t\\x1fJ\\x89\\x1bV\\xbc\\xc8\\xc9d9\\xde@\\x87![\\xff\\x15=+\\x05;G\\xd1\\x87S(*,\\xf9\\xf2\\xdd\\xb6\\x0c\\xd4\\x8a\\xe5&\\xdfWG@\\xca&\\x03\\xaf\\x0f:\\x12\\x89\\xf9\\xcc\\xc3\\xf5\\xf4|\\xff\\xd5\\x8b'\\x13\\xf5s\\xec[N%\\x8f\\xbfu\\x0b\\xa8\\xa6\\xbf\\xad\\x85M\\xae\\xd7U4\\x82\\xf8\\x05[\\x03\\xde\\xedz-b[\\xbd\\xc6\\xfb\\xb2\\x8a\\xbf\\xf8\\x02\\xa1Y\\xea:\\xf91OH\\x90\\xfbz8\\x97k\\xd6\\xf2\\xb3\\x04\\x81\\x84\\xf3\\x84\\x06u\\xcb\\x14\\x0c\\xfc\\xf6u3\\x0b\\x9f\\xf0\\xf3\\xac\\xce\\xc4\\xdfE\\xbcv&Bx\\xb6T\\xfd\\x0bM\\xa2\\x81Z\\xfa=i\\xa9\\x10\\xe4\\x95\\xd9\\x92\\xf0\\x81\\x06\\x94\\xf6|\\xba\\x05Y\\xe2\\xc1\\xb9\\xe5\\x9e\\xc0U\\x97\\x022_\\x1f~2\\xc1O\\x01\\x86\\xb0W>\\x97\\x1c\\xdf\\x1d\\x07\\xfe\\xf5\\xf5m\\x1e\\xec\\xff\\x06\\x9c!\\xaef\\xa7\\x00\\x86\\xba\t\\\\\\xce\\xe4\\x9a\\x80\\x92X\\xe0\\x02\\x88H@\\xd2/\\xb29\\xb9N\\x07\\x1c\\xbd\\x1c\\xcd\\xcb\\xfaR\\xffFFJ\\xe5\\xc7\\x8c\\x11\\xbb\\xa5\\xb3\\xaf,Gq](\\xe2\\x00]\\xb3\\xbcy\\x81\\xf8\\x87\\xce\\\\\\x08\\xc2\\xc4\\\"jr\\x90\\xfe8\\xa3\\x05\\xcb\\x97c\\xd4,\\xfb\\xd1\\xf7\\xaf,\\x8e\\xdeI\\x99\\xcdFD a\\x89\\x116\\xcb\\xb3\\x0bD\\xf1\\x0f\\xab\\x059\\xca\\xf3,\\x0fzG\\x97\\x0b2fd\\x02\\xc3\\x97\\x11\\xfc4\\x02\\xb6\\\\\\xa4\\xe4\\x00z\\xb0\\xdd\\xcaHk\\x19\\xc3?\\xdd\\xd1U\\xaf\\x88\\x8cG\\x08#x\\xea\\x1b`\\xf5\\x8b\\xbb\\xcd\\xa5\\x00[^\\xb1A\\x19\\x17x\\xbd\\x9a\\xfe\\x87\\xbb\\xe9z\\xc4V {\\xfaUc\\xb88\\xb7\\x15j\\x81\\\\^\\xbd\\x12\\x8f\\xea\\x1c\\x9c\\x14\\xd7\\\\zT\\xee\\xf6\\xd6\\x13\\xb41\\xce\\x9aY\\xdd\\xf1-\\xe9\\xa4/\\xf3\\xac\\xbf\\xd0\\xb3\\xcbW\\xdf\\x0bm\\x13k\\xa7.\\xb5\\x8c\\x9eu\\xe6\\xba'\\xf0Hf\\xa3<\\x10\\xc5>\\xe0\\x10v\\xf8\\x0f\\xbfs\\x9fZ\\xb6\\xf2\\xb9\\xf4E\\xfb\\xc9x\\xe0\\xa3\\x14m\\xe7\\xa5\\xf9\\xd3\\x9f=0\\x1f\\x8f\\xc0\\xd3\\x94@\\x96\\x03\\x06E\\xef\\xa4\\xc9\\xa7r\\x0f\\x98I\\xbc\\x18\\x14\\x1f\\xb5\\x81@X\\x97\\xd9\\x0b\\x16yG\\xe2d\\xc1A\\x94$\\xd0\\x99SLX\\xb0\\x13Z\\xb0\\x98\\x8eI6\\xd5*\\x9e;\\x9c\\\"\\x10r\\x88\\x1e\\xf5Ok\\xc9>\\xf3\\xc0\\xa6z.\\x9bpr\\xe8\\xfc\\xa2\\xa8\\x96\\xea\\xd6\\xb2\\xc6U(\\xe5'\\xb2*\\xac~\\x89\\xea\\xda\\xf2\\xe3\\xca\\xf4\\x8b\\xe5+\\x8f\\xb7\\xf8\\xc5\\x8c\\x11\\xae^\\x9d\\xa8K\\xceeB\\xa6\t%\\xef\\xf2lAr\\xb6\\x92\\x9c\\xaf\\x7f+\\xfc:#L\\x13-7\\x19\\x83\\xbat\\x12$\\xc2&7j\\xe2\\xaa\\xdb\tF\\xbf\\x8a\\xdax;\\x8fo\\xd3uF\\x1a\\x89\\x98#\\xe8=\\x8d)\\xcd\\x18o\\x1d2\\n1\\x85\\xa4L\\xcf\\x9b\\x93q\\x96O\\xfa\\xbd\\x92d\\x8ah;\\x07\\x8bi\\xba\\xba3\\xb7\\xa9\\xcb\\x12\\x8d\\xd0\\xbc\\xae\\xfa\\xa7\t\\x9d\\x04U\\xd4]\\xf7gW0\\x8e\\xd9x\\x06\\x086\\xf7\\x80\\xae\\x02\\xe5\\x9a\\xae\\x8e\\x88X\\xea'\\x90\\xeb\\xa7\\xf1\\x9c\\x94\\xa1\\xc3\\x9fD(^\\x8c?&d\\x1a/S\\xf6\\x13\\xe7\\x960\\xe7\\x8c\\xb5\\x1b\\xfb\\x00\\xc4\\xea\\x88\\x80\\xc3\\x8f\\xa4\\xa9\\x98P\\x97\\x05q2\\x94)\\xcaS\\xab\\x15C\\x9d\\x99t]\\xa5\\xe4\\xa7\\xb1P\\\"\\xda\\xb1\\xa9h\\xd3\\x7f\\xb1\\xe0\\x1d\\x8b\\xe0#gL\\xde\\xdd\\\\\\x95\\xaew7Y\\xa5\\xebm>!9\\x99\\xbc\\x8e\\x17\\xf0g/\\x82\\xdeU\\xbbV\\xd7\\xbbk\\xd4\\xea:\\xd7k\\x04\\xf0\\x95\\x125\\xfc\\xed\\x90\\xadyh\\xc9b:\\x18F\\x8a\\x1f\\xd2PT\\xa6m\\xd5\\xd0z\\xf7o\\xaenS\\x96\\x9d\\xe1S\\x92I\\x95\\\"}\\xb4\\xb5{\\xa1\\xcc\\x88\\xe0\\x1c\\xf5f\\x95\\xbf~g\\xae\\xdaG\\xef\\xae_\\xfbHo\\xb8]\\x06\\xb5\\xd6p-\\xf5\\xb8\\x0f\\xb0+\\x90U\\x9f\\x06\\xa8\\xb8\\xd1 \\xa7?rv\\xbf\\x91nDGD+\\xf2i\\xa30\\xd8\\xd2\\xba\\xdc\\xe8E\\xbe\\xb9\\x80\\xa1\\x0e\\x90\\xa1\\x05\\xd6\\x12\\xde\\xe57/\\xbf\\x12\\x17\\xed\\xa1O\\xf3l~DY\\xbe\\x12\\xbaRM\\xf9\\xd3\\x8d+\\x9b\\x15J\\x10\\xc2\\xdf\\xa0U%\\xc1#\\xbf6\\xab\\x11\\x85Z\\xb7V3BEH\\xe4\\x12\\xd5?\\xb2.+\\xdf\\xd5\\xaf\\x99t\\xe5$\\xfe\\xd5\\x16\\xd4\\xd1\\xc2\\xf4\\x9d-\\xf2^\\x18$\\x1a\\x84dRh\\x84t\\x00\\x1fX\\x1d\\xbe\\xc3\\x99\\xaanP\\x83zY\\xe7\\xc0\\xb0o#`\\xc1\\x1b\\x16\\xc1\\xafa\\x04o\\xaeA\\x81\\xdb\\x82\\x1fR`\\x13&\\xd4\\x9ao\\xc4\\x0dt\\x96K\\x13m\\x8b\\xa2i\\xce\\x86Q?rL>oD3\\xb0q\\xf5e\\x9b.\\xbc\\xa9\\xc3\\xcd+T\\xe8\\\\\\xab\\xc8l\\xc67\\x0e\\xdf\\xef\\x159\\xdc2%\\x1b\\xac\\x8dQ%\\x1b@\\xa3\\x86\\xf74A\\xd7\\x1d\\x89y*+\\x87=8\\xfc*l\\x05\\x896\\x80 0\\xb7\\x13;t\\xb2h\\x06\\x02\\xa7\\x02\\x9fk\\x87\\xcd\\x06`\\xc8\\xaf\\x03\\x06\\xda\\x00\\xc3<^\\x18\\xf0\\x15$\\x18Z\\x85_\\xde|\\xd9\\x19\\x119B\\x94\\xda(\\xa99\\xe0\\xd6&\\xaf\\x99\\xf3<\\x1c\\x97I\\xc0l1KW\\x9c@\\xa9|\\xcb\\xff\\x14\\xeb\\x10\\x8a,=e\\x0fV\\xd5y\\xd9|\\x16\\xc9|\\xcd\\x14\\x0eD1 SWa'Q\\xd8\\xechB\\x1b\\x9f\\x0e\\x96\\xd0\\x01Au<\\x99\\x8f\\x0bZ\\xd7=\\xb5\\x0c\\x1aV\\xd4m\\x82\\xcd\\xba\\xa8\\x9e\\nye\\x19\\xa2N\\xef\\x8bRL@\\x83\\x8aP\\x1a\\xa2\\xa2Y\\xac\\x02\\x16\\xc4G\\xbf\\xb0\\xd2\\xbcbZ\\x0e\\xd7RT'\t\\x0b\\xde\\xb3\\x08^\\x86\\x11\\xbc\\xd7\\x97\\xca\\x14\\x08\\xe8I\\xc4\\xcbh\\xc06%\\x7f\\xffe\\x9b\\xab\\x93\\xd2\\xd8\\xd7\\xc7\\xb8\\xe9\\xbcy3\\xdca\\x08r_\\x96\\xcc8S?\\xbc\\xff\\\"\\x84\\xbd\\x11\\x0ce\\xbe\\x18\\xca\\x14\\x862\\x85\\xa1\\xa2\\xda\\x96\\xc2K\\xaf\\x9aa,x\\xc6\\\"\\xf8!\\x8c\\xe0\\xd9\\x97s\\x10\\x0e\\xe4{v#\\xc8\\xf7Wb\\x18\\xf3\\xc7/\\xe3dn\\x0c\\xbf\\xfe\\xc3HT\\xe1\\xcf\\x86\\x88\\xf4Jr\\xba\\xaft\\xe8\\x10)\\xcct\\xf1\\x10\\xedu\\x94,D\\xb3\\x9fW\\xff\\x95\\x88\\x84\\xc7\\xa5\\xed!\\xbf\\xbeb\\x81\\xb5\\x88\\x9e\\xe6d\\x11;\\xdf*\\xd1\\x15K\\xf4\\xa30 \\xaa\\x12\\xa3\\xd8Z\\xdd\\xdc\\x157-R,\\xbf\\xdaz9#\\xa2\\x1b\\x81\\xfd_\\x83\\xe8\\x1e\\x91\\xa1~{\\x01\\xca\\xf0\\xca\\x9a[\\xb8\\xa3\\xa2\\x86Z/\\xd6\\xe5e\\x89\\xde\\x95\\xae\\x11\\x82@\\x0eS\\x18\\xa0~)\\xde%\\xee|S\\x0e\\x1e\\xf7r\\x06\\x87\\\"\\x91\\x8b@\\x89\\x1cQ\\xa2\\xba\\xb9'n\\xee\\xb5\\xf3\\xe5\\xeb\\x97\\xc5e\\xd1\\x83&\\xd4\\xce\\xe1z\\x1a\\x827\\xf6G\\xcf\\xec\\x8f^\\xd9\\x1fa\\x8e\\xaa \\xa7\\x11\\x9c\\x10.ZP\\xed\\xcd/T\\xb0.\\xa9\\xe4A\\xb7\\xa1g\\xd5\\xb0\\xd6:\\xdc\\xf8\\xf8\\xaci\\xd4\\xf9\\xe7o/he\\xf2qw\\xe6\\xa9L\\x10v\\xd0YY\\x1d\\xdd\\x85\\xe6\\xf5\\xcd[\\x1b\\xdc\\x90\\x18\\xe2\\x94ks\\xe1\\xe2\\xeba\\xf5\\xb7\\xd2Y\\x18b6\\x9b3\\xf1R\\xfeV\\x92\\x89Qe%\\xfa\\xbfuK\\x1b@M\\x9fk\\x9eli\\x1f\\xd7l\\x03v\\x9dT\\xff\\x84\\xcc\\x17l\\x85br\\xf9c\\x001\\x95\\xa2\\xf6/\\xa4\\x9d\\xf2\\xb41UO\\x8dq{\\xd1*+\\xb5\\xb0P\\xffM\\xb3j-\\xe9'\\x9a]P\\xf8DV\\xd0\\xfb\\x1bl\\x03\\x81m\\xf8[\\x0f2\\n\\xfc\\x97\\xc2c\\x8b\\x91\\xbc\\x06\\xbd\\xad\\n|\\xb2\\x98~Y\\x8b\\xc3\\x8c\\x14\\x1ez\\xc3\\x9a1\\xa1\\xbeD\\x85\\xd2ku\\xe0V\\xad,\\x846\\x9a\\n\\xe7\\xe0\\xa0Z\\x87v\\x1d\\xe6\\xda\\x1ax*\\xd7\\xed\\x1b\\xc7OCZ\\x9f\\xa9\\xccS\\xea\\xca\\xac\\xd8\\x9a)\\xeb\\x9ci\\xfb\\xe8\\xae\\xcd\\xf4\\x86\\xb4\\xfd\\xce>\\xae\\xcf\\x1eX!\\x91\\x07\\x06\\\\k:jZ:\\x00])e1Y_uk\\xd8\\x8dS\\xbc9v\\xf3\\xdf8C\\xe25\\xc1\\xff\\x84\t\\xa1\\xbeA62\\x0dT\\x1b@\\x06\\x0d\\xf8\\x1a\\x04\\x1ap\\xa8w\\x82\\xcc\\x16z\\xd7j\\xc0\\xb1\\x15\\xa8\\x8c\\xc5\\nuxO\\xd7\\xed\\xd3\\xf2\\xd7\\x19a\\xefT\\xf3o\\xa7\\x9c\\xb4\\xd8\\x11E\\x1b\\x7f\\xde\\xcc\\xe4\\xed\\x17(\\xb2\\xec(\\x99--\\xfe\\xebu\\xdd\\xcb\\xb0\\xaf\\xee\\xf6\\xde\\xa3\\x93D\\xcf\\xab\\xb3\\xc2\\xdd\\x993'\\xfd9E\\xff\\xde\\x94\\xcacgk\\x1c\\x94\\xc9\\xe9\\xf9\\xb3k'\\xa7O\\xae\\x9d\\x9c\\xde\\xc5\\xc1\\x97\\x92t<\\x99\\xd8\\x8b\\x11\\x18\\xb6\\xa6\\x17 S7 \\xb7\\x82-\\x04\\xe1\\x16\\x19N\\x9b9\\xa4\\xeb,zF+[UFK\\x0bUy\\x1b\\xeb`\\x97\\x0f\\xda\\xe5\\xb73*Jdk\\xd5\\xb2\\xab\\x9b?'\\x18\\xd4\\xa2\\x1e\\xf0\\x9f\\xd5\\xc3V\\xf9m\\xf5\\xe0\\x19!\\x8bF\\xf1\\xed\\xfa\\xc3F\\xb3\\xeaV\\xfd%c\\x01\\xef\\x8c\\x1aJ\\x8dg\\xd4XA\\xbc\\xbc\\xdd\\xae \\x9eQ\\x8f:\\xe0\\x19\\xed\\xdb\\xeb\\x80\\xe3CW\\x1dp\\x16\\x144\\x82#\\x8ey\\x05\\xbd1\\x07\\x93\\x82\\xa2-Yf\\xd0\\xf6\\x96D\\x02Nq\\xfb\\x9f\\x88\\xb0?\\x9bZ\\xbd1\\xa9\\xaawL\\x98U\\x9a*\\xbeH\\x9a\\xaa\\xb8Vg\\xbb\\xf1d\\xe2\\xdb\\xee\\xa4<g\\x9a,\\xebV3}|\\xb3\\x17O.\\xd3\\xdeQ\\xc91\\xba\\xfb\\xf1\\x12\\x9e\\xec\\xbdH!\\xc9\\xdd\\xc7\\x92&x.:\\xfb8/\\x13\\x04\\xa3\\x03q\\x89\\xa3\\x91\\xb1\\xe6\\x9b\\x1c\\x91\\xa0\\xfe\\\"\\xa0\\xac]\\xdf\\xa0\\x83\\xfd\\x915\\x0dl!9aU\\x0fL\\xf2\\xcd2\\xc1\\xd4L9\\x05\\x95^,:\\xd7-S\\xd7\\xd4?\\xb6\\x9d=\\xd6!\\xd6j\\xfb\\xed>\\xc0\\x9aq\\xac\\xac\\xbcC\\xb7\\xb7CH\\x026\\xa4\\xa3\\xb0}\\xec85\\x8a\\xe5\\xb1\\xcd\\x8f\\x1d\\x8b\\xfa\\xc6x\\xec(\\x07\\xa9Z$\\xc1p\\xb7yx4\\x96>\\xa1\\x8c\\xe4\\x05\\x19\\xb3\\x9b]\\xfe*\\xa3\\x12\\xf3\\xab\\xbd.0\\xc4/\\xbeC6\\x94\\x98NeS\\x18\\x9f\\x17\\xcb~-,0\\xf0\\x14N\\xbfg\\xd6'\\xe7$_y\\xb4\\xac\\xae\\x12\\x1dJ#\\x8cE\\xf5\\x0b\\x02\t\\x90\\xcd\\x93\\xa4\\xc5\\xa6$\\xeefZ\\x1aHR,OY\\x1e\\xff\\x7f8\\xf2o\\xc2\\x91\\xeb\\xc6ry\\xa2\\x08&\\xb2\\xbai\\x14Q<\\xa4\\xcf1\\x85`\\xc43G\\xab\\xe5\\x10\\x81\\x93\\xebi\\xf4$9H7I=/K\\xaf6\\xd1q\\xafCM\\xd3\\x1e\\\\[\\xe7T\\xdf!Y\\xce|y\\x819\\x0d~.\\xbdw:Nf\\xde\\xee\\x93\\x95\\x8f^\\xc2\\xd08\\xebn\\xff/\\xd2 \\x15\\x7f\\xadz\\x85iZ\\x85\\xb61\\xcf#3t\\x90c\\xcc\\xb9\\xafa\\xd88\\x1d?\\x85Xk\\xc4\\x9b\\xea\\x80L\\xf9\\xb0;\\xd5[\\xc5\\x7f^\\xfb\\xb3\\x99\\xc2G\\xf65\\x8f?\\x91\\xe0\\x0bu>8\\xfb\\xa48FM|J\\xdb*\\xa01\\x8d`\\xcaq\\xac\\xf7\\xf7\\xbf\\x9f\\x9c<\\x7f\\xfd\\xfa\\xe3\\x87\\xc7O^\\x1d\\x9d\\x1c\\x1f}89\\xf9\\xfb\\xdf{mG\\x90\\x05\\x7f\\xbb\\xf0P\\x1aM:\\x11\\x81X\\xaa5\\xb1f\\xb5&\\x05\\x05U([j\\x88\\xb1\\x1c\\x9c<4\\xa5w<\\xae\\xf0|\\xc1V\\\"|\\xba\\x04\\xa3\\x9f\\\"b\\xd6\\xbd\\x17\\xebJ\\xae\\x85#\\x08\\xa3\\xcaf\\xdf(_G\\xd5\\xb4\\x88\\xc8\\xea]\\xad)\\xf3M\\xc2}\\xee\\xa4Kc\\xcc;\\x10\\x8c\\xf9xg40\\x99j,\\xed\\xce\\xbf@\\xa5u!TZg\\xb4\\xd2d]\\xfc\\xbfM\\x93u\\xe6\\x86_\\xa9\\xee3\\x14X\\xd4\\x7f-\\xe8pJ\\x95\\x03\\xddBSj-*\\xa5\\xd6\\xa2\\xae`R?\\xeb\\x0f$k\\xb0\\xa0\\xba\\xcej\\xe1\\xa3\\xf0Y\\xb8\\x14>\\x8b.\\x85\\xcf\\x82\\xaa}\\x08\\x038\\xa7\\xf2\\x06\\xdf\\x8a\\x88\\x92\\x11\\xb0`N9q\\n#\\x98\\xdf\\x9cFh\\xfe\\x97h\\x84\\xe67\\xa9\\x11\\x92\\xfe\\xf7.\\xc5\\xd0\\x9cV~\\xfa\\x82r\\x9f\\x19(\\xf7\\x8aFp\\xca\\xf7\\xc9\\xdc\\x83\\x16\\x9flJ\\xd8N\\xffC\\x84\\xed\\xc2\t\\xcd\\x95 l+>\\xde\\x13\\x1a<\\xf7/\\xbby\\xf4\\x05\\x84\\xed\\xad l\\x97\\x1aa\\xe3\\xb7\\xfaKZ\\xcc\\x92){\\x9c\\xa6\\xbe\\xd1\\xfc\\x97\\xde\\x8a\\xee\\xa7nE\\xf7)\\xad\\x1clO\\xf5\\xbdvA\\xe5\\x0d\\xb9\\xd7Np\\xaf\\x1d\\xd1\\x08.8\\xb5<\\xba\\xb9\\xbdvt\\x93\\xbb\\xe2\\x98\\xc5\\xe3O0\\xe4\\x1bb\\xd4\\xde\\x10G\\xd7p\\x05\\xa9\\x1b\\xe3g$6\\x14\\xaaG\\xbd\\x15\\xd1\\x92r\\x93\\xf0\\x81H\\xbcNvv\\x1e\\x84\\xf8\\xbd\\xf0\\xaa\\xb2\\xef\\x058\\x04\\x99\\x84\\xc6\\x14\\xf7W\\x1b\\xf9\\x82\\x90O\\x1b\\x01\\x88\\x8f\\xba2\\x1c\\xf2_\\x86\\xec\\x1d\\xad^\\x96\\xc5\\xac\\xab\\x97J\\xdbP\\xae\\xaf\\x9f\\xd6\\xa1\\xd4\\xf4\\x95\\xce$\\xb8\\xfb\\xb7[\\xedD\\x1a\\x03\\xcc\\x07\\x1e!0\\x9bo\\xc1\\x0e\\xecq\\x88?\\x12j\\xc3\\x9d\\x9d\\x10?\\xb3\\xf1\\x05\\x98Y\\xa5lcH-\\xb9\\x0f\\xf9\\x825\\xd7\\x82_\\x86D\\xcbu|\\xb4\\x04S\\x96\\x9c6\\xae\\x87\\x16o\\xd5\\xac\\x18*\\xef\\xd6\\xcb\\x9f3\\xe9\\xda\\xff\\x98\\x9a\\xc5\\x93\\xd6\\xe2=\\xe6\\xa4\\xc8C0\\x91\\xead\\xb4u\\x05$\\x0c\\x05G\\xe4^\\xbf*\\x07I\\x87\\xd4\\x82\\x0c\\xb8\\x19\\xba\\x1d\\x9b\\xaa\\xe4\\xed\\xcb\\xf0\\xa0\\x0d84&\\xb2\\xe4\\xd9P\\x00*4pT\\xa7\\x10\\xeb\\xdfN\\x9d\\x0f-2\\x8aw\\xca\\xc0X\\xdb\\xfa\\xb3\\xc6\\xfa\\xd3\\xeb\\xae\\x7f\\xdb\\xfd\\xba\\xb5\\xfeYge*\\x1de\\x8b4\\x19\\x93`\\xcf\\xdd\\xa6<\\xa66i\\x97\\xa3\\xa1\\xa7:\\xca\\xd4\\x95\\x0f\\x067\\xbb3\\x9d\\xa2\\x8d\\xd67\\x9fF\\xb6\\xb8\\xce,6\\xb12}i|\\xb6D\\xa9\\x06\\x06m\\x82W\\x9c\\x15q\\x83\\x8d#\\x89\\xcf\\x91\\xc9\\x89\\xca[\\xe9\\xe8Q\\x0e\\xd6\\xc7\\x15\\x8cbq\\x11\\xa2\\x7fe\\xd6p\\x7f\\x08jM\\xd7-TeG\\x17\\xa49\\xfa*M\\x8f5\\xc6\\xaf<\\x99\\xf2\\xda\\xc9\\x84e\\xce\\xb2:\\xc9\\xe2\\x07\\xcd\\x83\\x10\\xeff\\xee\\xd3\\xdd\\xbd\\x88yc\\x11\\xb3k\\xad\\xdfcj\\xaa0\\xddX\\xc3\\xcd\\xd4V\\xa5.\\xa9\\xad\\xb9\\xaa\\x10\\x94\\xe3\\xeacZMH\\x9f\\xcc\\x86a\\xc8\\xfa\\xcc\\xf6,z\\xa8\\xa3kkAe\\xdc\\x81\\xbe$\\xd5\\xd1\\xa2y~\\xb9\\x90\\x82\\x8a=\\x977\\x10!\\xaf%\\x13\\xccU0\\x08\\xd5\\x92\t\\xe27y\\x07\\x13\\xe85Y?\\x1d\\xa9\\xd7l3\\xb3\\x0e\\xb1\\x9a\\xa9\\xf1\\xec\\xcb\\xfdNn\\xcf\\xc8\\x84N\\xaf\\x7f\\xc5O\\xe4]\\xf1\\x03\\xb2\\xdf\\n\\xd0\\x91\\xf0\\xec\\x17\\xcb`Q\\xd1\\x98g(Z\\xead\\x1e\\xba\\xb2\\xf393\\xf3\\xf9D\\x05\\x1c\\xa1\\xd6\\x15\\x85\\x9a\\x01\\\\\\x1a\\xa4\\xf7c\\x1a\\xc1S\\x93\\xde\\xf5\\xc3\\xe3\\xa7/-\\x9a\\xd7O\\xfc\\xfd#\\x0fi\\xffq\\xe9\\xae\\xd7\\x91?\\xb4.\\xf3\\x7frf\\x94\\xa9\\x98\\xe1L\\xe7\\x84\\xb3\\xa6\\xa3^V\\xd1\\xbf\\\\\\xfc\\xaaS\\x07\\xbf\\x94\\x81o\\x9d\\xa7\\xee\\xb1\\xd0\\x03\\x1cs\\x80<\\xa6A\\xcb=\\xc5\\xd2\\xe8\\xbbnq\\xb1D{\\xabYR;\\x9c\\x86\\xa8\\xa3cCjH\\x84k\\x85\\xa4\\x9e\\xbe\\x8bU\\xbc1\\x0d#\\xa8\\\\&\\xb5\\xd0\\x88\\xe3\\xd5\\xfc4K\\xb1B\\x82\\xeby\\xb3\\xadf}|\\xfd\\xd7':|Z\\xaa\\x17?\\xf9h\\x03?\\xb9\\xb4\\x81\\x9f\\xba\\xb4\\x81\\xbc\\x0b\\xdd\\xb6\\xf6D\\xb7\\xb5E@\\xfb\\xcf+\\x02\\xf91\\xe2\\xcbDM\\xe9\\xbfdJl\\x8f4_\\xafH\\xe0bE@.8\\x91\\xb9qE\\xa6\\xed\\xeah_\\xaf\\x8d6zh0\\x06U\\xbe\\x07\\x8b\\xe9\\xcdi\\xdaV\\xd8c\\xa61\\xad\\x15\\xc4\\xbbm\\x9a\\xc0\\xb2\\xe7tB.\\xc9\\xe4\\x98|\\xf6\\x00\\x8cF\\xe2\\xdf\\xcb\\xa8s\\xbf^^\\x1c\\xfb\\xb7\\x8e\\xc01\\xa6\\xc2\\xf6\\xd1\\xccc\\x82\\xdf\\x9e\\xfa\\xa4\\x07\\x9c\\x85Y-H6\\xc5\\xfc\\xda/\\x8eQ\\xe7\\xc8\\xff\\x10\\x16\\x1e\\x0b\\xf8P\\xbb\\xc4\\xdf\\xf1\\x9d\\xde\\xdb7\\xff-\\x13|\\xfb\\xa6\\x9c\\xe2\\xdb779\\xc9\\x97du\\x0d<y\\xa3e\\x18\\xf1\\xeb\\xe7u\\xbc\\xf0\\xef\\xe2\\xa3\\xdc\\xaa\\xd5\\xf0\\x9a\\x1ax\\xb0\\xf5#\\xc8\\xa1GW\\x1b\\x90\\x83?-\\xd5\\xb8\\xea\\x02\\xc1\\x7fl\\xb3W\\xd9{<\\xa6-\\xc7\\xfc\\x8e]\\x1f\\xc2\\xa5\\x11\\xc2\\xbf\\xbb9\\x0d\\x96\\x82\\xb2(SvE'\\xa5\\\\\\xec\\xd9\\xfbF\\xdd\\x167\\xd9\\xed\\xc6\\x9b\\xe4\\xd9F\\xc4t\\xa3\\xe6\\x8b\\xfa\\xact\\x82\\x8f3[6\\x9fW\\xab\\xac\\xd4\\x10jN\\xbe\\x84\\x02\\x19W\\xff\\x11\\x1e\\xdd\\x18\\xe8_%\\xc5\\x06K\\xbe`7\\xd5\\xaf0C\\xf8\\xf7\\xdc\\x1b\\\"\\xc7r\\x9a\\x92Q\\xcf\\xa7\\x87\\xca\\xd4\\xe1Y\\xfe\\xc2\\xaa]\\\"\\xb0-\\x92dc\\xa0n\\x8f\\xffj\\x1eF\\x92F\\xa9\\x1e_\\xc7\\x8b\\x05\\xc9\\xc3\\xfe\\xefYB\\x83^\\x04\\xbd\\xb0\\xfa\\xd4g\\xec\\xe3\\x8c\\x8e\\xe3\\x0dV\\xe5\\x07u^xM\\x144\\xde\\xdb^\\xa0E]\\\\f\\x19\\x92Q_\\x8c\\x89\\xb3\\xbc\\xfe\\xa7\\xaf\\xba\\xe40ca\\xcc\\x13evQ\\x9b\\x83a\\x8f\\x07\\x82)\\x84C\\x881%\\xf9\\x01,I\\x80\\xfca?)\\x04\\x9fX\\x1a\\x01\\x87dd\\xa4\\xdc\\xfau\\x15\\xfa{z\\xebW\\x89\\x00\\x0e\\xafo\\xfd\\xb2U\\xec\\x80\\x9a\\xb1 kZy:\\xa2\\xfa\\xf7\\x1a_\\xb9\\xc7}.+!d\\xc3]\\x8f:\\xcfIeo\\xc5EX\\x06\tz\\xec\\xaa@\\xdc\\\"\\xd0\\n\\xad\\xb6\\xebm\\xa9\\xcb\\x9e}\\xf5\\\\V\\x89\\x92\\xd5/Lu\\x8d\\xd5\\xa5(9\\x96\\x96\\x1e@\\xda\\xa4\\xa28&.q\\xaa\\xa7\\x8a\\x9e\\x86\\x91\\xba7Mc\\xc6\\x08\\x0d\\xb6v\\xa5%\\x06\\xb5\\x8b\\x86\\xa2'\\xce\\xad\\x00\\x128Z\\x9aQ/t)\\xad\\x9d\\xd8\\xb5\\x1b\\xf8\\xd0\\xee\\xa3\\xaa\\x10\\xcb\\xe9\\x8a\\xd9r\\xa2.;\\xc0\\xafDm\\xb4v9[|\\xa8\\xd4\\xb7\\x06wh?vDy\\xf4\\xfa\\xa4M\\xd6\\xd9\\xb5\\xba\\x07\\xb1O\\xbc\\xc1\\x8c8\\x12#\\x1b\\x0b!\\xb4n\\x11\\xca\\xf2\\xa46V\\x9f\\xa1j\\xfa\\xbd7~\\xdd\\x9c\\x93|\\xe5y\\xa6xr\\xc1\\xd4\\x91\\x8a\\xbc\\x83\\x0b\\xce#p\\x95\\xfc\\x04\\x15h\\xae\\xf4\\xf9\\xe8w\\x8a_h\\x85\\xd6\\x84\\x96hk\\xcf\\x02\\xfc\\xa6#\t\\x98\\x01#\\x88\\xae'd\\x9a'\\xd7\\x1fz>AC\\xf8\\x13\\xd8\\xfa\\xa4\\x93F\\x8f\\x1eU\\xa3\\x10\\x98\\xfcS\\xcc\\x89\\x1aX\\xcc\\x1b\\xa0\\xebI\\x0f1\\xa1\\x89\\xb9<\\xb8aXB+\\xb4\\x19,j\\xc8\\x125W\\x9c\\xa1\\x84\\x8ay\\xbbYh.Sc\\x18\\x08\\xe7@|6o\\xa3oRZR\\x04=\\x84C\\xe8aE\\x028\\x80^\\xd4\\xb3c2\\x83\\x01\\xf4\\x0czTu}\t\\xa6\\xbbp\\x9c\\xcaR\\xfd[{\\xe8\\xb2\\xba-,%\\xfc_t3\\xdaR%\\xa4\\xb4I\\xe1\\x9a\\x96^4x\\xe6\\xf4\\xda\\x9c%\\xc8\\x1d\\xe0\\xc5\\xb7}\\\"\\xab/ ?\\xcf\\xbdVt^\\x93C=\\xd0\\xaa\\xdcb\\xf5\\x94\\x9d^\\x9d\\x89\\xb3t\\xc3\\x0d\\x16A\\xe6\\\\\\xe0\\x06\\xae\\xb5\\x1cT\\x1e\\xc2>\\xe6G\\xe4\\x98\\x02\\x07b\\xc3\\xb6\\xb6\\x83\\xae\\x06\\xc0\\x9a\\xb5\\x0e\\xe4\\xc8\\xe0\\x10\\x82LR9l.\\x94\\xed\\x92\\xb2\\xf4\\xad\\xa8\\x18\\x988\\x0b2\\xe7\\xfe {\\x9f\\x9c\\xcd\\xd8\\x86pS\\x84Ig\\x84*C\\x94\\x9b>I\\xaeG\\x9a\\xdes\\xab\\xdd\\x1dl\\x83\\xc6^\\xfcq\\xb7D*=\\x19\\xaeWWh\\\\\\xbe&\\x06?\\xb9\\xde!\\xc1\\xb9\\x91\\xcdz\\x14yYD\\xac\\xdc\\x1b\\x8a\\xa5\\xc2LY0L]\\xe5^5&\\x9a3\\xb3\\x06\\xe4\\x80\\xb9\\x1f\\x94\\xba\\xbf\\x80\\xd6\\xfc\\xee\\xd5\\xcb\\xe9\\x92\\xbd\\x8a7Q\\x0f\\x88}\\x8d\\x1e2\\xbb\\x11\\xec\\xecy\\xf5\\x92\\x14G\\xf3\\x05\\xf3\\xb11\\xc8^4\\\"\\xae\\xcb\\xe9M\\xc9\\xfd@.c\\x9d\\x19\\xf5\\xe0EmFH\\xaf\\xd9\\x8c\\xb3%m\\xee\\xfc\\x8e\\xf9<\\x0dH\\xa5J\\x12\\xdb^\\n\\xb0\\xe2\\xe3\\x0d\\xf4*\\xd8\\xfb\\x13_\\xf6T\\xf6\\xefK\\xa5@\\xa3T\\x1fI\\x10V\\x06)W\\x06<%\\xe5\\x98\\x88w\\x17\\xeb\\x8a\\xdf\\xcb\\xbc\tAU\\xa7\\\\T\\x12\\xe7\\xbbR\\xcfy\\xec%\\xb5i2\\x97\\x99\\xddU\\x97\\xa3\\x94\\n\\x9e\\x05\\xba\\xb9\\xcdR!\\xefJ?o}V\\x8f|^\\xc6\\xe9&\\xc2\\xd69)\\xc9\\x86W\\xfb2k\\xa6\\xc7V\\xd3\\x1dN\\xcdk\\x8b\\x81Z\\xfd\\x13L\\x97W+\\xceDHu\\xdf\\xcd)\\xd6\\xab\\xb7\\xfeN\\xc3\\x86\\xaa\\xd5\\xcd'\\xd6\\xaa\\x1at\\xf9\\x8e5>&\\xc6<\\xa0\\xea\\xba\\xf2\\xe4\\xf7\\xc4.}\\x93m\\xb8\\xdf\\xa5\\xf8\\x81;|\\xa3\\xd3\\xa5\\x14Y6\\xe7,,\\xd5\\\";xn\\xea']V\\xc2%m\\n\\x97\\xbc\\xefa\\x16\\x01\\x1d9\\x05L/\\xd6\\x8aO\\xff%\\xf1%n5o\\xf4M\\x84=T\\x8dQc\\xa9]\\xf3\\x98\\x1agd\\xc7\\x8a\\xe8 7\\xb3z8\\xda\\xb2\\x99MF\\xb1!rx\\x0e\\xa5\\x02\\xdc\\xa6\\xe3\\xf1_-\\xcf\\xa1\\xbc$r\\x05\\xfdF\\x91o\\xcc\\xbc \\xe8\\x1f\\xfb5\\x9f\\xc6\\xec\\xf5\\xb5\\xa51\\xdf5\\x02m\\x13\\xffb\\xae\\x93\\xa4\\xae&m\\xabk\\xea\\xbb6\\xb2\\xd6Bn8k]\\xc7\\xa1\\xae\\x895o\\xf1\\x8d%O\\xd9\\xe2\\x06ga\t\\xd9\\x1f5)\\xc1WD\\xd0\\x8f\\x12\\x7f\\x8c\\xe1\\xa7\\xdd\\xab\\x0d\\xcc\\x90\\xf5\\x82y\\x1e\\xd8R\\xa1\\xa4.\\xef\\xfa\\x14\\x1f\\x9fa]m\\x9b>5\\xaa\\xfcd}\\x07\\xfe\\x9cz\\x0e\\xddTnZ\\xf8\\x03c\\xa1MUa:\\xabU\\x98\\xee\\xcc\\xb6\\x9c`\\\\\\x90GV\\xe4\\x00}\\x1a\\xb1Z:\\xc6-\\xa9\\xa4\\xc4I\\x04+\\xceJ\\xafB\\x14\\x13V\\x95\\xbf\\xa7\\x19D\\xaee\\xf1:\\xad\\xce\\xf2l\\xb9\\xf8w\\xb0\\xe2~6\\xbc@f\\xbb{\\xc7P\\xd5\\xc5\\xf9wO\\x06\\xde\\xc8\\xb9w\\xe9\\\\\\xf8\\x95\\xb59w\\xfe\\x99\\xe0\\xdc\\xbb\\xf7\\xb5~I\\xf0\\x04\\\"\\x04r\\xbd\\x86\\xe1(\\xc4\\x18\\x06\\xccY>\\x8c#HFp\\x00\\x89\\x87q\\xd0A\\xc7\\xec0P(\\xe8G\\x81\\xb3:\\xe5\\xed4?U\\x14\\x8cD\\x90\\x04&\\x12\\xa9.\\xcb\\xf87\\x165f\\xf1&r\\x06\\xd2!\\x99py%b\\x08V\\x9e\\xbd<\\xdf\\x84\\x86\\xab~\\x9e\\xd3M{J\\x8a\\xe3\\xe5\\xa9g\\x81\\xcfR\\x06\\x1c\\xd8|\\xc2\\xcaJ)\\xc2\\xea,y\\xf4J'\\xe4\\xb7\\xb4\\xe5y\\\\&\\xc6\\xd9 \\x9f\\x96y\\x8a\\x0b\\xce\\x0bm2\\xc9\\xc05K\t3m\\x96ay\\xd3\\xffT\\xfbDVo\\xa7\\x1b\\x0c\\xa9<\\xd483\\xb7\\x11$o\\xc0H(\\\"\\xce\\xfd\\x8f\\xf8\\x9aV\\x86\\xef\\xea\\xe7-)\\xd5\\xa7\\xdbts5Z\\xab\\xe4W\\x1f\\xf9Y\\xff\\xfe^^g],\\xbc7\\xae\\xb11\\x97U\\xbb\\xefy|\\xb9A\\xaf/\\xd8F*\\x8cy|\\xb9\\xe9\\x99\\xfa\\xa2\\x96\\x8f\\xc8\\xab\\x13?\\xa3Yk\\x06p\\x08\\xef\\xa9pa\\xf9\\xe8'(\\xcd\\x13z\\xfd\\xe9\\x88\\xee\\x98\\xe8\\xcewn9\\xd9\\x18\\x13\\x8d!\\x8f`n\\xbe\\xf8\\x94,6\\x80\\x9d\\xd6\\xfe\\xeb\\x98\\xcd\\xfa\\xf3\\xf82\\xb0T$\\xb6t\\xd6\\x14\\xbe}\\xa5\\x04\\xcb\\x1e\\xe3M\\x06D\\xbb\\xe3=\\x90\\x9fgI\\xba\\xa1\\x99\\xa1\\x1c\\xccO\\xd74l|J\\x16\\x1f)K\\xd2\\xcd\\xba\\x15@WC\\xdeL\\x05%\\x12\\x82m\\xd6_\\xdb\\xcaa\\xc8\\x0c\\x06\\xe6\\xfeX\\xfc\\x89l\\xb0\\xbc\\xacf\\x80\\xb8\\x06J\\xf1\\xfen\\x18\\xa5x\\x93\\x9b\\xa3\\x14\\xff\\xeaKP\\xea:\\x92\\xc4?\\xbc\\xb8[\\xad\\x84\\xd1G\\x8aj\\xdeZ\\xf26\\x8c\\xac\\xec`x\\x15;\\xcd\\xac\\xdaeuq\\x91.\\xab\\xc7\\xe6i\\x05Zja \\xd8\\xb1\\xbb\\xb5sY\\xcf\\xbf\\xa3\\xec\\x7f\\xc9\\xb8\\x19\\x04\\x1f\\x82*\\x91e\\xd7\\x0c\\xb5f*\\xe9\\xa7\\xfc\\xf6\\xd6-\\xd8\\xde\\x8eQH\\x95\\x0dZ\\n\\x95\\xab\\xeb*\\x8c \\xb6\\xbeq\\x15\\x81^\\x06\\xe9\\xbfhU\\xb2|\\x93e!5o,\\xfe\\x9d[\\xae\\xe5\\xd7\\xd2\\xe1Q\\xa2.9N\\xcf(K\\xfdB\\xdf\\xa9e9\\xd3\\xee\\x0f\\xc0?\\xe2Q\\xbf\\x9c\\xd1\\x8f\\xfae\\x89\\x95\\xd0/e\\xba\\x89;\\x8bS\\xa9K\\xe8\\xf0kE\\xaa<\\x1c\\x1aUD\\xa3\\xac\\xdf\\xeb7\\xd1B:\\xab\\xfa\\xbd\\x9d\\xe2\\xdb{\\x1d\\xae\\xad`\\xdaki\\x04\\x05j<\\x0f9i\\x1b\\x0c\\xe0\\x8d\\x14s>s\\x8c,\\xf0\\x05\\x91\\xe6o)=C\\xfe\\x0b\\x16\\xb7\\x8b\\x088)\\x80\\xf1\\xe1\\xe6\\x9aW~\\xf0\\\\\\x97\\xa9(\\x0f\\xad\\xcd\\x98\\n\\x15C\\xb0!_\\xba\\xb9\\x186\\x8b\\x8b\\xd9\\xd3l\\xb2\\x81\\xa3\\x0b\\x9bU\\xd9\\x05\\xb0\\x8a\\xf3L\\xcf6\\xd0\\xcd#@\\xb9\\xbd\\x84\\x83\\xf2`\\x00{p\\x1bv\\xcb\\x8d\\xe6 ]\\xcaL:\\xeeT\\xf0\\xf9\\xb9\\xf2\\xa36\\x16\\x0ea\\xcf\\\\\\xf5\\xb6|M\\x0c\\xcck\\xf1\\x1b\\xdf\\xf0\\xd1^\\xa2\\x90~\\xe7\\xee\\x9d\\xfd\\xef\\xf6\\xbe\\xbds\\xefN\\x18\\x95\\xb7\\xe1\\xe1C\\xd8\\xbb\\x07k`\\xf0\\xe8\\xd1#\\xd8\\xd9\\xbb\\x17\\xc1\\xdd\\xfb{\\xdf\\xde\\xbd\\xf7\\xdd\\xee7\\xcd\\xf7\\xeeh\\xef\\xdd\\x89\\xe0^\\xf5\\x1c\\xd3\\xb9\\x07\\x0c\\xb6\\xe1\\xce\\xb7\\xf7\\xef\\xee\\x7f\\xb7\\xbf\\xf7\\xdd}Xs\\x98\\xfe\\x8bo\\xe9\\x7f\\xc9\\xcf\\xf6\\xeeG\\xb0\\xbf\\x7f\\xf7\\xfe\\xb7\\xfb\\xfb\\xf7\\xca\\xe6\\x8f\\xe5\\xe7\\xd8M\\xf9\\xe6\\x9d\\x08\\xee\\xec\\xdf\\xbf\\x7f\\xf7\\xdb\\xef\\xbe\\xdb\\xfd.\\xd4\\x9bpl\\xb9@\\xe7\\x0f(\\xd6\\xba<\\xdc\\x10j0\\x80;{\\xf05\\xe4\\xb0\\x0d\\x9fi\\xf0\\x94\\xe0\\xa6yJ\\x02\\x16\\x86|F\\xf6\\xce\\xc1sw\\xaaKh\\xc5\\xaf\\xd1K}R>\\xdd\\x943\\xc2\\x8e:;\\xd8\\xacq\\xcfvCc9k(\t\\xa2\\x89\\x14\\xd6\\xee4\\x95\\xc1|/~\\x10\\xc9\\xc9\\xb4\\\\\\x00\\xfa\\x1b\\x1f\\xe8p\\xaa\\x02\\xbc?\\xd0\\xe1+\\xfe\\xf7\\x07i\\xb2(\\xf8-\\x19:*n\\xcb\\xc0\\xea\\xf2\\xbe\\x1e8\\x04\\x03xF\\xf1IB\\x8b\\x85\\xc8\\x8d\\x8f\\x9f\\x1cg\\xcb\\xbc\\x9eW\\xc6\\x04\\xb2\\x86\\x12I\\xba\\xb7\\xd6g\\x87\\xad\\x8fgqBE\\xdb\\xd2\\x96)ng\\x94\\xc5\tF\\xa5\\xe3\\x10\\x84\\xee\\x12c\\xc4s\\xd3)9M\\x93\\x0dB#K\\x01\\xe5#\\xb3\\xae\\x84I\\xed\\xb38j\\xb9\\xf7\\xfbZ\\xff\\xedT1\\xb7\\xcb\\x02N\\xe1n#\\xc3j)M('\\x89a\\x12A6\\xb2\\x17\\x9f\\x06\\x10FU\\xcd&\\xe9)4\\xce\\xe3\\xc5\\xcb\\xba\\x0f\\xb2/\\x8c\\xae\\x01\\x04\\xbe\\xeeMXt\\x89\\x19-X\\x88h\\x04\\x07\\x10\\xb0\\x93\\xeb\\xec\\xd6\\xd7\\x14\\x93\\x9btf\\xeexn\\x07\\x92\\xdaI\\xf5\\xbe,\\xed\\xfc\\xde\\xd9\\xce\\x90E@F^\\x8d\\xbd\\xb1\\x90\\xc3\\xe6\\xd9\\xdc\\xb1\\xd9\\xb6\\x88O2.h\\xc3\\xd32\\xac\\xf773\\xac\\x9d\\x1b\\x1e\\xd63\\xf7\\xb0z\\x05\\xd2\\xc0\\x9a\\xf1\\x03\\x0e\\xe1\\xc5\\xf1\\xdb7}\\xf1(\\x99\\xae\\x84\\xdaVRK\\xcf\\xdc\\xa2\\xaf\\x9c\\x04\\xf8\\xd8\\x9a\\xc9\\xd3\\xd2\\xdc\\xc7N\\x0c\\\"\\xf0\\xb0\\xe4\\xe0\\x08<\\xc2\\xbfw\\x90\\x9d\\xf3\\xea\\xe0\\xb3G\\x07\\x9c\\xf5\\xd9\\x86\\xfd\\xfb\\xf7\\xee\\xde\\xbds\\xef\\x9b\\xfb\\xdf\\xc16\\x04\\x843d\\xf7C\\xf1\\xe7\\xa3G\\xb0\\xdf>}\\xeb\\x0b%[{M\\x87\\x0bu$\\xbe\\xae\\x8eD\\x19\\xa8\\xc5\\xef5\\xceD\\x91^\\xa0|\\xd08\\x14;\\x89\\x9a\\xec\\xb6\\xb1\\xb0\\x0c\\xa3o\\x0f0\\xfc\\x161\\xa5>p<\\xd82s\\xf2\\x93/M\\xdf\\xe0\\xa73\\xbf\\xd1\\xc0\\xa9=\\xbf\\x93b\\x9a\\xd0\tJO\\x9e\\xdd~\\x817\\xdd!:\\xd3\\xc1\\x01\\xec\\xb4\\xfd\\xffLfN>*?\\xc3\\xd5\\xb9\\x9e>S\\x99\\xa8\\x9c\\xa3\\xd1\\xd2\\x0c\\x97{\\xc7\\xcb\\xd53\\x8d\\x0b\\xf6\\xfc\\x9a#+\\x8dq\\x7f\\xd9\\xe8n\\\"~\\xc3\\x13qn2~\\xc3\\xb7\\xcb\\xc5\\x06}*Dm\\x86\\x15\\xd9\\x9d\\x98\\xf9:U\\x96\\x02.u\\x8a\\xa0Z\\xb1\\x10\\x98\\xf6j_\\xfe\\x89\\x15\\x8c;\\xb23\\xf2\\x8b\\xa8\\xec\\x8c\\x9c`\\xef*\\xe7~t\\xce\\xafRDt\\x04\\x85VI\\x15\\x959\\xa3\\x03{J0\\xef\\xc9\\xd1\\x1eB\\x0e\\x07\\x90\\xab\\xd0\\xfdc=\\x02x_94\\x88\\xd61\\xc7\\x81gP\\xb0r\\xee\\xfc\\\"\\xf2Qz\\xab\\xfe\\x15$\\xe4:\\x8e\\x9f\\xa2\\x9a\\xbdW\\xeb7\\xe4\\x9a\\xe8\\x89\\xfd\\x1b;\\x0d6\\xd2k\\x87\\x88\\x82\\xaa\\x14]]\\x0b\\xa5e^\\xafG\\xd3\\xdc\\xba%\\xf8\\x8b\\x99\\x96dU\\xe1\\xed\\xb5\\xfc\\x11EUmKV\\xa5M\\xdd\\x117s^j\\xc1\\xe3\\xd1\\x00v1\\x07\\x85%\\x90\\xc8\\x02(d\\xbefUt\\xd1\\xce^\\xf5\\xa5<\\xb4Z\\xd5\\x14\\xc1v\\xc61\\x92/\\xb2b\\x13\\xd3\\xe6\\xf5\\x93|\\xf8\\x99\\xf5\\xaa\\x12\\x03%\\n\\xec\\xc3\\xd7\\xea\\xd7\\x0e\\xec\\x89\\x02\\x03\\x0e\\xcb\\x9f-\\xf5\\xa1~)\\xa3\\x01s\\xca\\xe5\\xeaJ\\xbe\\xd8V\\xd79 \\xad\\x8d`+\\xc1R\\x00b]Eh)\\x17\\xd1\\xb30\\xd4\\x92\\x96b\\xb3\\xf2\\xbe\\xb3\\xe5+\\xde{\\xe4\\xca\\xa3\\xa1C\\xd4l\\xb6\\xf3\\x06i\\x84\\xb0\\xaa\\x19\\xd0~\\xc7\\xfe;'\\xefo\\x0f\\xbd\\x86\\xfd\\xac\\x84l\\xc6!\\x1b\\xc3\\xff\\xe5\\xb2\\x03\\xdfz\\x1c\\x07\\x92\\x9a\\x0b0\\xc6\\xfc\\x1e\\x88w\\xe0\\x10>\\xf3\\xb9\\xc7\\\"\\x1d)Zm\\xd4\\xcfL\\xa5\\x8c\\xed\\x02\\xbf\\xd3ZbIU^Q\t\\xefm\\x9c\\x92\\xf8\\xdc\\x87\\xf3Rf\\xb9!\\xefbd8\\x94C\\xc7bq\\x1e\\xe5\\xa5 \\x00J\\xff\\x12\\xc1\\xcb~6EgZ\\xebg\\\"?\\x89\\xe6\\x9d\\xef<gY\\xb9\\xf1\\x83\\x92\\x18\\xc8{\\x9c\\x0e\\xc8\\x8c4QE\\x89\\xfc|\\x9c6u\\xb9[!\\xb3S\\xb1H>}\\\\\\xc3\\xbf\\x8e\\x1f\\xf8\\x9e\\x11\\xaa7\\xed\\xde\\xe3y\\xf2\\xffq-\\xbd\\xeaK\\xf5\\xc7+\\x1a\\xb9\\x90\\xcd{\\x0c?'l\\xe6sN)\\x99G\\xef\\xc5\\x8do\\x9c\\xa7S\\x01\\x02\\xed\\xf1\\xdbL\\x96\\xb5;W!\\xa7\\x08Uz\\xd8\\x89\\xd27\\xe87\\xcb\\xba-\\xef\\xd0q\\xbd=\\xfc\\x8dy,\\xc4 Q\\x0bZ\\x9a\\x95\\xbd\\xe4\\xb4\\xeb\\xe6\\xd31T\\x9d\\x86\\x9b\\xd9l\\xd8|\\x95\\xc3\\xcd\\x03\\xda\\x89\\x96g[\\x94\\xd0\\xaeY\t\\xf4\\xc7\\x9a%A\\xbf]3)\\xfc\\x1a\\xe9J\\xda\\x10\\xef\\xbd\\xac-\\x9f\\xb8\\xf7C\\xadiq\\xef\\x84\\x18>\\xbe \\x86\\xaf\\x8fH\\xf3\\xf36TT~\\xb9\\x03\\xa0m\\xb8\\\"P_\\xb4\\xef?\\xcd\\xd2\\x94 \\xa4\\x0f\\xe0\\xd4\\xe0\\x03\\x81\\x01b\\x1f\\x0d\\x0f\\xf4\\xb4\\x92\\xefX\\xfb\\xb9\\xc8\\xcb\\xb70<\\x91\\xa9\\x02\\x8f\\x8c\\xa3d\\x07P\\x18\\x1e\\xe8Y%\\xe7\\x86\\xe7\\xef\\xc98\\xcb'\\x07\\x90\\x9b\\x9e\\xc5\\xf4\\x8c\\x1c\\xc0\\xca0\\x89\\xf7dAb\\xde\\xa4\\xe1YR\\x1c\\xc0\\xccp\\x7f\\x9agsLmkK\\x97|\\x15\\x01\\xe9\\x93\\xcbE\\x96\\xb3\\x02\\x93\\xc4\t\\xac\\xbcr\\xfb\\xb4\\xf5\\x96\\x05\\x81\\x82\\xe5\\xc9\\x98i\\xf9i\\x94 ]\\xdbn\\x9a\\x0f\\x8d\\xdeQ\\xb3u\\x15\\xfb\\x16G\\xb0\\x8c\\xa0hn$L\\xc6\\x1e\\xb00\\x82-\\xe3\\x1e\\xe6]\\xa7m\\xfa\\xa7\\xa5\\x01C=OX&L;\\xca\\xf3,\\x0fz\\xaf\\x13\\x9aL\\x132\\x01r9&\\x0b> \\xc8\\xc6\\xe3e\\x9e\\x93\\xc9\\x03\\xe0\\x93d3\\x024\\xa3;s\\xf5\\xe2\\x84\\x9c\\x03\\xa1\\xe7I\\x9eQNu1\\x02\\x8b\\xbf4]\\xa6)\\x10\\xde*\\xccIQ\\xc4g\\x04b:\\x81x2Ix\\xb3q\\n3\\x92.\\xa6\\xcb\\x14.\\xe2\\x9c&\\xf4\\xac\\xe8\\xf7\\x0c\\x14\\x9b\\xa4\\x05q\\x90\\xfc1\\xe7i\\x9a\\xc0r\\xf8\\xf7L\\xed\\xfcfP\\x07\\x05\\xeb\\xe7d\\x91\\xc6c\\x12\\xdc\\xfe\\xbf\\xc5\\xed\\xb3\\xa8\\x9b\\xa8AE\\xd8\\xc6\\xc3\\xe9\\xf6v;\\x84\\x17\\x90\\x8a\\x85a\\x9f\\xc6s\\x0c\\x8dxN\\xcf\\xe3<\\x89)\\x83\\x9f\\x92,\\xc5\\xe4\\xdb\\x86\\xfc\\x92\\xad;l\\x96g\\x17\\x90\\xf6\\xa7y<'\\xc5\\x87\\xec\\x1dV\\x91\\xd9k\\xa6b\\xd3\\xb0\\xfa\\xcb\\x91\\x98\\x06w\\xee\\x86f\\xdc\\xcd\\xaf\\xdf\\xba#K\\xa2L~>!\\xd3\\x84\\x12\\x95\\xfc\\x9c\\x8bE\\xbd\\x93\\x13R\\xbc\\xce&\\xcb\\x94\\xf4L\\xa4T:I5\\\\\\x9e0\\x8f\\x12\\xe7\\xbb\\x9ef\\xf3yF\\x8f.\\x19\\xa1\\x85\\xcc\\x7f\\x8e\\xf7\\x1bwH1\\x8e\\x17XS\\xf1UB?\\xbd\\x8b\\xb1\\xae\\xa2J\\x9d\\xdf\\xba]\\xcc\\xe24\\xcd.\\x8e>/\\xe3TV#d\\xfd\\xd3e\\x92N\\xbe\\xcf\\xf2\\xf9\\xb3\\x98\\xc5\\xe2\\xb5,g$\\x97OY&o\\x92<\\x89\\xd3\\xe4\\x0frL\\xe2|,\\xda[\\xc4y\\xa1\\xff>#\\xec8\\x9e/Rr<\\x9e\\x91\\xb9\\xf8\\xee<N\\x93I\\xcc\\xc8\\xbb8\\x8f\\xe7\\x8d;\\x8c\\x91\\x9c\\xd6\\xee\\xbdN\\xe8+\\x91\\xe2\\xa8v7\\xbe4\\xdc\\xfda\\x99Lj7\\x9e\\xc5\\x8c|H\\xe6\\xa4v\\xb3\\xac\\x00W\\xddz\\x92e)\\x89\\xeb\\x1d\\x7f\\x9f\\xa4\\xf5\\xef\\x9eSF\\xce\\xd0\\xa6R\\xdd{\\xb3\\x9c\\x9f6nqR4_\\xce\\x9b\\xc3-\\xef-\\xf2l\\xf1tF\\xc6\\x9f\\xe4ws2\\xcf\\x94\\xd8\\x90\\xd4\\xd2\\xd3\\x0b\\x8a\\xd76\\xd2\\xf2\\xefN\\x02\\x1a\\xdc\\xdd3I?\\x99|\\xba\\xf7\\xad\\xe9i\\\"\\x9f~g\\xfc6\\x96O\\xf7\\xef\\x98\\x9e.U\\xbf\\xfb\\xa6\\xa7\\x85zz/l\\xd0C>\\xaf\\x17\\xc7o\\xdf\\x88\\x9d\\xd1\\xe9\\x01\\xc6\\xf2U\\x07\\xb3\\x8c\\xb6*D5\\xab\\x8eF\\xe8\\xa8o\\xdd\\x82^\\x86\\xbd\\xf6D\\x11\\xb2\\x86\\xb1\\xa0\\xb7\\xa4b\\x9fNzp\\x00\\\\\\x82*\\xf8\\xc6\\x8d\\x97)\\x0b\\x03\\x16\\x86\\x8ex\\xd7+\\x18\\xc7l<\\x03q8\\xb6\\x1e\\xcb\\xef\\x1a\\xd9\\x1b\\xae\\xf8^\\x16\\x03J\\xa6\\xabNH\\xc8F\\x8e\\x05\\xc3|$\\xf9f-\\xa9<\\x1c4\\xfb\\xc6\\x1e\\xe2<\\x8fW\\x1bt@d\\xb3\\xe8]\\xa3\\xff-\\xeaI\\n+\\xefp\\xd4\\xeeH\\xb0%\\x92O\\xd2z\\x03b\\x0eM\\xe3\\xabr\\x84\\x1eT\\n\\xae\\xe6\\xb3\\x9eAB\\x0b\\x16\\xd31\\xc9\\xa6\\xb0RK\\xd2\\xe7[\\xd2\\xf5i\t/\\xc6\\x01U\\xcf\\x86\\x8b\\xb7\\xd2\\xb2)\\xce\\xb8\\xcb\\xb4\\xbc$\\xec\\x8b\\x8c\\xce8\\xdb\\xea\\x95\\x8a\\xd9\\xac\\xde4\\xd5Nd\\x98`\\xf0Cv\\xcc<\\x0b\\x05)\\x15\\xa3)\\x87\\xbb\\xd2\\xfd\\xecF\\xb0\\xacP\\x91\\xb4\\xb3\\xf3v\t[\\xe6\\xf0\\xc5!3$\\xe80\\x14\\xbe\\xeb*\\xc6N\\x879\\x17\\x0f\\xc90\\x1f\\x89\\xf4\\x8at\\x99\\xa6fMt+\\x13&\\x82\\x8cf\\xf9\\x1c\\x0f\\x0f\\x81s\\x03\\xb8\\x8c\\x90N|O}\\x91\\xd6<\\xc1vOIQ\\xd2\\x9dc\\xd9\\xc7\\x92\\x8eo\\xbe\\x175\\x11\\xaff\\x9b\\x99\\x9a\\x8dT\\xe2u\\xbc\\xf0A'+\\xca4\\x93\\xfa\\xba\\xf4\\xa2\\xf5ue\\x01_Y\\xa1\\x8a5\\xe5\\xee\\x84?\\xdb\\xa5\\x84p\\xc8\\xef\\xb1\\xcb\\x7f\\xdb\\xa8K\\xc5x9^\\xa7\\xee$s\\x1e\\x08Y\\xd7\\x81 U\\xda\\xfcn\\\\\\xdd\\xa5\\x18r\\xb1\\x01\\x98\\x8aU\\xc1\\xc8\\xfc\\xc3lI?\\xbdN&\\x93\\x94\\\\\\xc49\\xf1E\\x9c\\xee\\xfd\\xcf\\xfa\\x93\\xa4X\\xf0\\xb3I2\\x8eH\\x97\\x9cp\\xe9n\\xd4\\xf4\\xb2\\xd3\\x82\\x05\\x1d[\\x08\\xcd\\x93\\x01\t0\\x959\\x0b,\\xbel`\\x14#\\xccw\\x0d\\xe7\\xa0\\\\#\\x0e\\x80e\\xf14\\x9btC\\xf9\\xbcL\\xb2\\xa5\\xaal[I4+55\\xc1\\x05?[.\\xf8D\\xfc\\x93\\xa8+\\xe0\\xec\\xf7Ty\\xd4m\\xe8\\xf5Bc\\x06\\xa5\\x10\\x19pK0\\xf3\\x95\\\\f~\\x82\\xf9l<\\x8c\\xce\\xa9N9\\xa5\\xc0\\xe1\\xbc\\xa7\\xfc3\\xd0\\x8a)V/\\x8a\\x13\\xb2\\x0d\\x0eu\\x9a\\x11\\x99\\x83\\xc0p\\xec2\\xce>\\xb0\\x91\\x1d\\x96\\xf5^\\xfaI\\x81\\x9dQ\\x91\\xf8\\xfe\\xa05\\x88\\xf6\\xfcg\\xc9\\xd9,M\\xcef\\xdd\\xdc\\xa5Z\\xe1I6Fu\\xab\\x99\\x01\\xd9\\xaa\\xf8\\x8c\\x9e!s\\xaf\\x08N`\\xe4\\x92=\\xcd(#\\x94\\xa94\\xac\\x8f\\xe0\\x1e\\xb9S\\xc5\\x03\\xe9\\xafX'\\xdf\\x8d+\\xb5\\xec0\\xba\\xd2@\\xa4\\x83\\xab\\xfa\\x88\\x90\\x0b\\xdf\\x8dP=\\xb2\\x1c\\xee\\x8e\\\"\\xd44\\xecE\\xa8@ \\xfd\\x84R\\x92\\xff\\xf8\\xe1\\xf5+\\x91q\\x18\\x16\\xa8V\\x10r\\xb2\\xa8g\\xbb\\x80\\x87\\xf0\\x0d\\x92\\xc9\\xdf~\\xc3\\xfdJ\\xa5\\xe7\\xdc\\xd8\\x99m\\x86\\x03\\x84\\xf7\\x94\\xaa\\xae\\xb7\\xb7\\x8b\\x910\\xafM+\\xd8\\xecE\\xb05\\x86\\xf5\\x1a\\x16\\xf0\\x08\\xbe\\x15\\xbd\\x08\\xaa\\x80w\\x87\\xb7\\x7f;\\xbe\\xddg\\xa4`\\xc18\\x8c\\xf8\\xdb\\xfc\\x83\\xdb\\xc3\\xaf~\\xbb\\x18i\\xf7\\x83\\xdem9\\xb2\\xf5\\xbal\\x80\\\"iN\\\"\\xf8[\\xefo\\xa0\\xdcN\\x92\\x08z\\x7f\\xeb\\xe9?\\x97\\xc3\\x02v\\xe0\\xee\\x08\\xb6\\xd1)\\x9e\\xf2g\\xbd\\x9d\\x9d\\xdf.\\xefp\\x99\\xbc\\xba\\xf5\\xf5\\xed\\xdeh\\xb8\\x18\\xb9\\x8de\\xb8,SQ\\x98\\xa1\\x1f/\\x16\\x84N\\x9e\\xce\\x92t\\x12\\xc4\\x9a\\xc8}\\x94\\x12\\x8efA\\xafX\\xc4\\xb4\\x17\\x86\\xfd\\x82\\xb0\\xc7\\x8c\\xe5\\xc9\\xe9\\x92\\x91\\xa0W\\xb0\\x15\\xaa\\x03\\x86\\xbdq\\x96f\\xf9\\x01\\xfc\\x9f{\\xf7\\xee=\\x80iF\\xd9\\xce\\x05\\x11\tqO\\xb3t\\xf2\\xa0\\x17\\xe1\\x8a\\xe1\\x7f\\xfa\\xabxo4\\\\\\xc0!\\xae\\xdd\\x1d8\\x84}8@\\x08\\xdf\\x87C\\xb8+\\xff\\xe6\\xf7\\xef\\xc0\\x01l\\xdf\\xfeW\\x10\\x07\\xa7\\x05\\xcb\\xe31[\\xa7I\\\\\\xac\\xe9d\\xadL\\x0fk\\xbeg\\xd7E0_\\x17$g\\xe1\\xe1z\\xc9\\xb2p}\\x1a\\xc4\\x05Y\\x93\\xb3\\x84\\xae\\xb3,\\x0dHL\\xc3\\xc3uN\\xe2O\\xeb\\x15#\\xe1z\\x8c\\x8f\\xf9\\x81\\xb3\\x9e\\xc5\\xf9\\x1aE\\xdb\\xc9:\\x8d\\x8bb\\x9df\\x94\\xac\\xb3\\xf9\\\"]g\\xb4`\\xeb\\x8c\\xb2\\x84.I\\xb8\\x9e\\x90\\xe0tyvF\\xf2\\xf58\\x99\\xc7\\xe9z\\x9c\\xc69YO\\x03\\xbe\\xc7\\xd7$\\x0f\\x0f\\xd7\tM\\xd8:\\x0d\\xc8Y\\xcc\\xc8\\x9a0\\x12\\x1e\\x86\\xebI\\xb6\\x9ed\\xcb\\xd3\\x94\\xacI0\\x9ee\\xeb\\xb48L\\xa6\\xeb\\xb4 A2\\x0d\\x0f\\xf9<\\xb0\\xf6\\xe8\\x9a.\\xe7\\xebsB\\xd9\\xfa2\\x18\\x93\\x05[\\x93\\xf1z\\x11\\xa4\\xc98a\\xeb,g\\xe1\\x9a\\x91\\x80N\\x8a5*M\\xd69\\x0d\\xc3\\x90w\\x9d\\xa6l\\x96g\\xcb\\xb3\\xd9:N\\x0b\\xb2Nh\\x9c\\x06\\xe9\\x8a\\x0f\\xe5\\x92O'\\x8b\\xf9\\xd7\\x01\\x89\\xc73>\\xfb\\x84p\\xb0e\\xf3\\xf5\\x92\\x8e\\x03\\xbe{\\xf9\\x00\\xcf\\xd2\\xec4N\\xd7g\\x19\\xcb\\xd6g\\xcb8\\x9f\\xac\\x93`\\xba\\x9e/\\x02\\x81\\x03\\xc5Z\\x1b\\x04\\x0d\\x12\\xb6F\\x95~p\\x92\\xd11\t\\x0f\\xd7i\\xc2\\xa1\\xb5dk%\\xfa\\xacY@\\xf2i<&k\\x92\\xd38\\x0d\\x0f\\xc3\\xc3u\\x11\\xae\\xd3 \\x9e\\x9fN\\xe25a\\xebl\\xfci\\x9d\\xd1\\xb3p=\\x0f\\x92q\\x9e!\t\\\\\\xa3\\x8ai-\\xd4\\x08\\xe1\\xfaM\\xfcfM\\x83xN\\x8a\\x05o)f\\xc99Y\\x93K\\xb6&\\x17\\xeb$]gl\\xbdL\\xd3p\\x9d\\x05\\xc8\\x16\\xad\\x17\\xc2\\x10\\xbe\\xce\\xd7K\\xb6>'y\\x9eLH\\xb8^\\x04\\xf1\\xf8S|F\\xd6q\\x1e\\xcf\\x8bu\\x9e\\x9c\\xf3u\\xc93F\\xc6\\x8cp@\\xb0l\\x9c\\xa5\\xeb\\xe5i\\x9a\\x8c\\xc3u\\x1e\\xc4\t\\xc7\\x98 \\x9ed4]\\xf1\\x85\\x9b\\xae\\xcf\\x92\\x82\\x91|\\xbd 1[\\x7f^&y5\\xefb\\xbc$k\\xa1b[\\xb3|\\xb5\\xe6T1\\x0c\\xd7Ep\\xba\\xe2\\x8b\\x1f\\xa7d\\xb2&\\xe9t=\\xcbr\\xb6N\\xce(\\x99\\xac\\x93?\\x10<1K\\xc6kT\\xe7\\xacY\\xbe\\x1c\\xb3\\xf5\\xf2\\xb4\\x18\\xe7\\xc9\\x82\\xad\\x97\\x0b\\x92\\xafWt<\\xcb3\\x9a\\xfcA&\\xeb\\x8b\\x84\\x8dg!\\x87\\xe8|\\x91\\xf2\\xc1\\xcf\\x08]\\xcf\\x92b=\\xcb\\xb3\\x8b\\xe2p\\x9d\\xc7\\xb4H8\\xd2\\xe4K\\xb2\\xceW\\xeb\\xd5\\x82\\x041\\xee\\x8f\t\\x99\\xae\\x93\\xc9\\x9a\\xc6s\\xb2\\xce\\xa6a\\xb8^\\x064\\x18K4\\x9f\\x90i\\xc0\\xd9E\\x8e'\\x19]\\xa7\\xa4(\\xd6\\x85\\x18#K\\xd2p]\\x90u\\x91\\xf0\\x05:\\x0f\\xe2|\\x9d\\xe4l\\x19\\xa7\\xeb,\\x99\\xacQm\\xca\\xd7\\xe7\\\"\\x18\\xcf\\xe2\\xfc\\x84\\x89\\x01\\x91\\x9c\\xacgIJ\\xd6\t\\x9b\\x85\\xeb\\xcb,_\\xaf\\x12\\x92N\\xc2\\xaf$\\x01\\x9cr~iw\\x14r\\x16T'9\\x8a\\xdc| \\x97\\xecM6!\\xc14\\x0cC\\x91Al\\xc1)\\x94\\xa0\\xeb\\x9cF\\x1c\\xf0\\xf3c\\xaa\\x1d\\x00{{\\x0f`k\\xb8\\x17\\xc1\\xed\\xe1o\\xb7\\xff\\xbc\\x1a\\x06\\xbf\\xedl\\x7f=x\\xf8\\xe8\\xe0\\xc1\\xfa\\xb7\\xdf\\xfa\\xd1\\xe1\\xd6\\xad\\xbf\\xff\\xfft\\xfa{{\\xf8\\xdb(\\xac\\xdfhPhI\\xa0\\xc7\\xbc\\xe3\\x0cS\\x93sR\\xff\\xb0\\x07[x\\xceH\\x12=.\\xa9\\xf3\\x98\\x1fS\\xdb\\x90\\xc26\\x12\\xe8m\\xd8\\x1b\\x95\\x7f\\xee\\x8f\\x90 \\xffvyg\\xbc\\xb5\\xb3\\xd3So\\xf2{\\xb7\\xbf\\xae\\xff\\xbc\\xcdi\\xe1\\xff\\x11-\\x8e\\x86;;\\x8b\\xd1\\x03\\x87\\x07\\xcf\\x14\\xb6\\x070\\xf6e.\\x8d2\\xda<^|\\xc8\\x1a|\\x97M\\xf5as\\xb1\\xe4\\xc7b#\\xc9~\\xf9\\xcapo\\x04\\x87\\xf5\\x9f\\x07\\xd0\\xfbDV\\x06\\x96D)\\x06\\x0d\\xed\\xef[\\xdb\\xdf\\xaf\\xb7\\xbf?\\xaa1[\\xaf\\xe3\\x85\\x89\\xe1k0\\x90\\xaf\\xe3E?)\\x84\\x96\\x04=\\x81\\x84\\xf7\\xc3\\x06\\x1cd\\x9dc\\xa4\\xa2\\x82\\x0dE\\x0b\\x89\\x89g\\xe4\\xfd\\xd3*\\xef\\xfd^\\xa5\\x11\\xea\\xcfI~F\\x02\\x93\\x14x.\\xa3\\xe5\\xbbG\\xc3\\xdf\\xe4\\x8c\\x155V\\x07\\xe2O\\x0bK\\xf4\\xbc2\\xecl\\xed\\x99\\x9fM-:]p*=K\\xe6o\\x11\\xc1\\x04\\x06(~&\\x9a\\x96RE\\x06\\x04!\\xa6\t\\xe4\\x83\\x0b\\xf8\\xb6\\x9e\\xd4\\x1c\\x85\\xc2\\x07r\\xd8..\\x8e\\xf72\\xe3\\x14\\xc3'8\\xfd\\\\\\x8e%\\xab\\xc62C\\x17Y\\xe7Ws\\x0e\\x83\\xceP\\xf63|k\\xaf\\xe3\\xad\\x15\\xe7i\\x83\\xb3\\x08h\\x99m'\\x82\\x9c3X\\xc12\\x82yS\\x0d\\xad_mTPB\\xc7\\x8a\\x0b\\x1d\\xb1r\\xfe\\xc0\\xec\\x87\\xb1H\\x9a\\xb72s\\x83\\x06b\\xa1\\xab\\x86\\x8d\\xdf\\x8c\\xa5k\\x05r\\xe5\\x86\\xef\\xa7\\x9c\\xfbHm\\x18a\\xc7\\x15~ma\t\\xdeI_n\\n\\xedo[\\xe2\\xe6\\x8e\\xee@\\xf1\\xf7\\xa14\\xe0M}\\xe1\\xd0\\xba#\\xc7\\x14\\xb7I)\\xb9D\\x8e\\xf4\\xfb$%o\\xe29\\xf9>\\xcf\\xe6R\\xa6y\\x96\\x14\\x8b\\xac@\\xe3\\xeb\\x8f$\\x9ex\\x94\\x95W\\\"\\xde\\xedi\\x92\\x12~l\\x0fz\\xc1\\xf0_\\x0fF_\\x87\\x0f\\x0e{\\xb7\\x93>\\xb9$c\\xa3\\xe1\\x00\\xcb\\x9e\\x08\\xdb\\x00g\\xea\\xebm\\x94MT-\\xd8\\x88\\x93\\xaa\\x9e\\x82\\xcdh\\xb2\\xa1F\\xaa\\x8c\\xf9\\x19\\x94\\x12n\\x99\\xa6m\\x08-\\xe2b\\x1c\\xa7O\\xe3\\x82\\xc0\\x00\\x9e\\xd6\\xef|/\\x07\\xd9\t\\x1a\\xd9\\xc3\\xd3\\x80Tf\\xe2\\xdf\\xfa\\xc3\\x7f\\xf5o\\x8f\\xbe\\xfe\\xea6\\x17%B\\x93\\xc6*\\xa6\tK\\xfe \\x1f\\xf3\\xb4\\xb3\\x07\\x0e\\x802vlK\\x8b\\x1d\\xe3\\xc2\\x9a\\xd0u\\xb8ekM18\\xd6{\\x0e\\x8dG\\xf0\\x19a\\x8f\\xc7\\x9c\\xcb\\xe7\\xd8\\x92gi\\x9a\\xd0\\xb3\\xf7\\xa4Xd\\xb4\\xe8\\x86F\\xe3$\\xab\\x14\\xfe\\xfd\\xa4\\xd0\\xb4\\xff\\x9a:\\x84/\\x8dMcP?\\xf6\\xccoV\\xfa\\xa5\\xbaCx\\x97Wry\\xc2\\x15,\\xceY\\xf1s\\xc2fAo\\xbfW\\xea#u\\x15*:\\xe9\\xf5\\xc6b\\xf7\\xf4\\xf04\\xfd\\xf3*\\xac\\xb0\\xd0V\\xa8\\xc1LlK\\xd5N\\xd0\\x93]\\x88&\\x8dv\\x12K\\x1b|\\xcb\\x06\\xd40.s#a\\xa9|\\x93\\xa6.5v\\xa1\\x0d2CVA\\x887\\x9b\\xb7\\xf1dB\\xc8\\\"]\\x1d\\xb3<Y\\xbc$\\xab\\x06\\xbff\\xf1\\xc6\\xbf1\\x96\\xaa\\\\\\xe6\\x0ee\\xa0!\\xdb\\x89\\xc1D\\x84;L)\\xb1\\xb7\\xaea\\xd5\\xe4 ji\\xe9\\xd6k\\x9d\\xfcq>\\x8e\\xbaLmJ\\xf3\\xdeP\\x86\\xffye\\x0eLi\\xe0hf09\\xd9\\x15\\xdaU\\x1cQ\\x1edC6\\xc2\\xbdr\\x08\\x13\\x92\\x12F\\x80\\xdf\\xe1B\\x0d\\xff\\x87\\xf3\\x03\\xe2\\x0dj\\xcce`\\xcaV\\xabl\\x03\\x06\\xb2\\xa7\\xa2!\\xbd\\x08\\x89)`\\xd6\\x95\\x19HV\tWe=\\x95Y\\xd7r\\xa6X\\xad\\x16\\xa4k\\xc1\\x89\\xb0Z\\x94\\x87\\x12\t\\x1d\\x0c\\x84F|s\\xad\\x89\\x08\\x84}o\\xdf\\x00R\\xc5\\xect\\x19$\\xcdQ\\xc2\\xe0\\xe2\\x13\\x88#\\x15\\x03\\xebS\\xf4\\xbd\\xf8\\x90\\x95\\xfe\\x1c\\x1ek$\\xbe\\xb1\\xac\\x91\\xd6\\x9b\\x15M\\x1a\\xa6\\xbf\\xfa{\\xe7\\xb2\\x92\\xe7I@\\x83oL>\\x12ctH\\xba\\xf7\\xcd\\x9e\\xe1\\xd9T~x\\xef\\x1b\\xa3{\\xc5B\\xb9f|\\xbbkz<)\\x1f\\xdf5=\\x9e\\x95\\x8f\\x8d\\xe3:\\x97\\x8f\\xef\\xdf36>W.%\\xbb\\xf7L\\x8f\\xcfpV{\\xdf\\x99x\\xff\\x95\\xfc\\xf4\\x8eqR\\xa7\\nX\\xfbw8\\xe2\\xd7\\x9e\\x97\\x04\\xfa\\xa4\\xc3w\\xe1\\xd6-\\x0c\\xe1P\\xbeU\\xd2\\xb5\\xd8\\x8c\\x8b\\x12\\xa5M\\xa5\\xea\\x9bQ\\xf3\\xfa/\\xbe\\xb0\\x170\\x80\\xf2\\x08lO\\xe5\\xc8\\xe0\\xc0\\xd3\\xad\\xd9o\\xc9\\xc8fsL{\\xb06`]ndv\\xae\\n\\x047&on\\xfc\\xd8\\xd9\\xf8\\xd6\\x16q\\xdaW}(\\x95c\\x0dtO\\xa9\\x89\\xfa\\xc8\\x06\\x86\\xa7\\xce\\x91\\xf2~\\x17U\\xbf\\xfc\\xe7\\xd4\\x7f\\x18u\\x07\\xaeN\\x16\\xce\\xa1\\xf8\\xd9\\x8c\\x8b\\x18Z\\xc4a\\x0b\\x8br\\xc7\\xda\\xf8\\x9dz\\xe3wD\\xe3NN\\xbcn\\xa2\\x97} \\xefQ\\x7f\\xc8\\xca\\x87\\xeb5 `\\xcfk\\xc7\\x88\\x0e-\\xab\\xfd\\x18\\x9d\\x84\\xab\\xfc\\xdf\\xb4b\\xbfM\\x9a\\x15\\xd0\\xfd\\x00\\x86\\xd4\\x92\\xf6\\xces\\xa3\\xc1!h\\x02AR\\x04\\x182\\xc5Q\\xd5\\xcaq\\xf9\\xa05\\n?\\xb6\\x06|\\xfc\\x0e\\xf0\\x08'\\xf8i\\xd6&\\x06\\x82{k\\xd4l\\xeb*`\\xb3\\xc5{\\x99k\\xc3\\x1cR\\xceY\\x0d\\xa9\\xc1\\xeau\\xd5\\xdc\\x12\\xeds\\xef\\x93\\xc5\\xe1\\xb1s\\x7f\\x80\\xb2\\xa7\\xc2#\\xa8\\xc2\\xc4{?\\xc5\\xe9\\x92\\xc0|Y08%\\x90\\x92\\xa2\\x006\\x8b)\\xc8\\x96\\xbd\\xca\\xd9?\\xb68fn0\\xa6\\x87\\xf61\\x9d\\xa1\\xc2=\\x97\\xc3\\x12\\x8d{\\x0d\\xeb\\xad\\xd9\\x85\\xb4\\xfb\\xb4@9\\xf3\\xf6\\xbfv\\x0e\\x7f\\x9bl\\x07\\xbf\\xf5\\xf9?\\xe1\\xa1\\xb2\\x0chRjc\\xa01H\\xb6\\xc7gp\\xef,>\\xaf\\x9b\\x8d\\xcecP\\x14#\\x01\\xcf<\\x87\\xf5\\xc1\\xe4\\x9b\\xeb7&<\\x95\\xb6\\x02\\xe2\\xf0)\\xb4Cn\\x9a\\xa4\\xc4k\\x80\\xaf-\\x0e\\xc5~c\\xec\\xb1|Iz\\xb2n0?D\\xa7qZ\\xe87\\xb6v\\xb5\\xbf\\xf7\\x14#o\\x1b\\xf5\\xa9\\xe8\\xdek\\xe0\\xcf\\xcd\\xce\\xd1~\\xe3\\x16\\x835\\xa8{\\xecc\\x93/\\xfb\\x0c\\xedw\\x9b3\\xb7\\xdf\\xe0\\x92\\xe2M\\xfc&\\xe0\\x9f\\x95\\xce\\xc2\\x8e\\x95V\\xcd{\\x8d\\xec\\x8d\\xc9\\xef\\xdcoTJ\\xd8S\\xa2F\\x9fe\\xaf\\xb2\\x0b\\x92?\\x8d\\x0b\\x12\\x84\\x11l\\xdd\\xfe\\xd7\\xf0\\xcf`t8\\xdc\\xdd\\xf9.\\xde\\x99\\x8e\\xfe\\xfc\\xf6j\\xa7\\xfc\\xfb\\xae\\xc7\\xdf{\\xfbW\\xc3\\xf0j\\xe4E\\x18\\xf8\\xc8\\xbd&\\xfc\\xde\\xea~\\xefOL+\\xde\\xc4\\x8f\\xce\\x8b.\\xbc\\x86\\xf7\\xcc\\x1a3\\xb0\\xf9\\xf06 \\xf9\\x1b\\x8c\\xf0\\x95%\\xd2\\xc1{|[\\x94\\\\\\xc0{rvt\\x89\\xfe\\xc8\\xae\\xa5\\x9dfi\\x9a]\\xc0Bv\\xd2\\x83m\\x93\\x03{\\xfd\\x0co\\xc7et\\x8e\\xec\\xba\\x9c\\xed\\xad[\\xb5\\xdfv\\xae\\xd6\\xc6\\xf1\\\"\\xab\\x87\\x94\\xe74\\x9b\\xac\\xa4RY\\xa8\\x17\\x13\\xda\\x13N\\xf2\\xf8\\x0b\\xcdX'\\x97\\xf3\\xb4\\x87\\xee\\xf2\\xda\\xcd\\x9eEU\\x99T\\xea\\xce\\x9c\\xa0\\x9b\\xc2\\xc4\\xf6j\\x0c\\xc2;J\\xbe^`\\x84\\x8b\\xe8\\xc8\\xa2\\\"\\x8e\\xcb\\xd5\\xca\\xedv\\xc7X47\\x97|\\x8e\\xa5\\xf3\\xb1\\xf6\\xa6d=,oN\\xab79q\\xb6\\xbd\\xb6\\xa8^\\x9bf\\xf9<f\\xb6\\x17'\\xb51\\xca\\x1d`ywV\\x1b\\xa5\\xfb\\xdd\\xf3\\xea]\\x89\\xb8\\xa6\\xb8:\\x0eG\\xe1r\\x85i'\\xb2\\xd0\\xb6e889\\x16kj\\xb9\\x01\\xe0\\x97\\x99\\xb9\\x7f\\x90\\x9a\\x8c\\x1eFOh\\xef\\xd7\\x85\\xe6\\x0cY\\xf1L\\xa2\\xba\\xbd\\xa9SSSf\\x93\\xa3jR\\xa6:\\xb2\\xb7y\\x82e\\x898G\\xa2\\xcd\\xc6\\xce\\xd6\\xd8\\x1bB]\\x86b\\x12\\xaa\\xb6\\x82L\\xa6\\xf2@\\xb1\\xc41\\x90#\\xfe}\\xa5K\\xab}\\xbe\\xdb\\xf9\\xf5%\\xffZ1\\x7f\\x9b\\x7f~l1\\xb1\\x832\\xbf\\xb5\\xb4\\x10S\\xbb\\x1f\\x9fS\\xb7\\xea'\\x99\\x1dw$\\xd3\\xc7PP\\x8b\\x868s)c\\xd5\\xa5\\x85;ea$\\xfb\\xb3~\\xd1m}V\\x97\\xa2E\\xc2\\xbc\\xddC\\xbaO\\xf8\\xf1&\\xc6)\\x02\\x12\\xcb\\xb3\\x0f\\x8f\\x07\\x1cK\\xcfX{V]f\\x7fm\\xbe\\x1d\\x9fr\\x92>\\x8f\\xe0,\\x82\\xd3\\x08N\\\"\\xb8\\x88\\xe0(\\x82\\xcb\\x08\\x8eG\\x0d\\xe1\\xd59\\xf6J\\xdfd|\\xc5V\\x92\\x0eYB\\xe4\\x9f\\x9f\\x86\\xcd\\xb9\\xbf\\x97\\xb4\\x1e\\xa6\tI'\\x90\\x14@3\\x06\\x8b<;O&x\\x02\\x98(\\xb6j\\xf4\\xdc5X>\\xf1\\x8f0\\x80WA\\x16\\xc1\\xb9\\xc3%\\xe1#\\x1a8\\xc4x>\\xfa\\xba\\x1a\\x80\\x1c\\xc2\\xa4\\xda:\\x93\\xae\\xd1|\\x86\\x01\\xbc\\xe7\\xa3\\x998F\\xf3Y\\x1b\\xcd\\xe7MG3\\xeb\\x1a\\xc2\\xf70\\x80g|\\x083\\xc7\\x10\\xbe\\xd7\\x86\\xf0\\xfd\\xa6CXV\\x00q\\x96\\x1d\\xe1\\xa3\\xf9\\x03S]a\\x91\\x11\\xfbh\\xfe\\xd0F\\xf3\\xc7\\xa6\\xa3\\x19W\\xa3\\x19w\\x8d\\xe6\t\\x0c\\xe01\\x1f\\xcd\\xd81\\x9a'\\xdah\\x9el:\\x9a\\xfa\\x91\\xd85\\x9e\\x9f\\x1c^K\\xeaB\\xee&\\xf8\t5\\xe41#;\\x8c\\xcbQ\\xd8\\xfc\\x02\\x0e\\xe1\\xf7\\x00Uh\\xbd%\\x176\\xca\\xbbo\\xc4\\xdd\\xe7\\x82\\x88\\xda\\xf9\\\"u\\xc9\\xd9\\xfedsb\\xa9\\xc8l\\xfd`\\xeb\\x9a\\xdf\\x8f0\\x80\\xd7\\x81\\xab\\xda\\n\\xce\\xee\\xc7\\x0d\\xc6\\xf8c\\xf7\\x18k\\x87g\\xd7\\x10\\x7f\\x86\\x01\\xbc\\xed\\x1e\\xe2\\xcf\\x1b\\x0c\\xf1\\xe7\\xee!\\xd6O\\xe8\\xae1\\xbe\\xc0\\xec\\x8d\\x9dc|\\xb1\\xc1\\x18_t\\x8fQg\\xb0\\xbaF\\xf8k\\xc7\\xd0N\\x91\\xf9)\\xd90\\x9f\\x81\\xfe\\xaax\\xd6\\xe74\\x18\\xf6\\x12F\\xe6E/\\x02\\xc1g\\x8f0\\xc9N\\xcb\\xcc\\xdd\\xe5\\xe9\\x01\\x9a`\\xd5\\xb5\\xed\\xf8U\\xc3\\xa4_\\xd1E\\x82#\\x0b\\x86\\xaa\\xd6\\x97P=|'\\x1f\\xeaT\\xe0Wd\\xc0\\xf8\\xd3\\xe7\\\\\\xa8\\x8c\\xa4\\xb9]\\xac\\x83{\\xb0\\xfcJDVKC\\xde\\x95\\xe6\\x85\\x995\\x0e,\\x99\\xc4\\xd4\\xe5\\xac7\\xdb\\x89\\x13\\x1a\\x83\\xdc\\x85\\x12/a\\x00\\x1f\\xba\\x91\\xf6\\xa5\\x0f.H`\\xbd\\xf4\\xa5\\xc6V\\xab\\xb7\\xc1{\\xa5\\x9dF\\xc1\\xcd))7\\xa3/w66X:Az\\x05m*\\xf6\\xb7\\x0cZ\\xa6\\xf8g\\x0e\\xef\\xdb\\x97\\xf3T\\xea\\xae\\x98U\\xbeK\\x84\\xcf\\xd5\\xe5<\\xc5m\\x8b\\x7fa~\\x12\\xd7\\x9a\\x0b=\\x0f\\xff\\x86K\\xf9\\xf2\\xdb?\\xaf\\\"\\xfe\\xfdW_\\xe5d\\xaa;\\x03\\xac\\x16\\xe8\\xb4F\\xfa\\xb8\\xaf\\xc5\\x9f\\x0b\\x91\\xcf#!\\xf2w\\x95\\x16\\xe6]\\xf5\\xe4\\x10\\xfe\\xf6\\xf0\\x907~N\\xf2\\\"\\xc9\\xe8\\xa0\\xb7\\xd7\\xdf\\xed\\x01\\xa1\\xe3l\\x92\\xd0\\xb3A\\xef\\xe3\\x87\\xefw\\xbe\\xed\\x1d>\\xfa\\x8dJ\\xb7v\\xf8\\xe5\\xf5+ \\x97\\xb8\\xc40\\x8e)g>O\t\\x9c\\x11\\x8a\\xc9\\x19' B\\x94\\xfef\\xf5~R\\xd7yY^\\n\\xa7\\xd3\\x9fsQ \\xb8\\xfd\\xdb\\xf1\\xd7\\xbf\\xdd\\x0e~;\\xde\\x0e\\xbf\\xba\\xed@\\xf6\\n\\x88\\xb2\\x84\\x94'*C\\xddXx\\xa6,\\xb5\\x93\\xa7\\xa8/\\xfb\\xe5\\xf5\\xab#17\\xe1J\\xe2\\xe3\\x01r.\\xcb\\xaa\\xd5\\xdb\\x13\\x9b\\xe0\\xfb<\\x9b\\x8b\\x8d \\xdbk\\xcfH)\\xc5l\\x92]\\xd2%\\xd9%a\\x08\\x87M?\\x98\\xa4\\xf2\\x83\\x81\\x83F\\x8eJ\\xe9\\xa3\\xa9\\xa7?q\\xba}\\x9d\\xcb\\xcc\\x86\\x7f\\x1at\\x85 \\x93\\x17V\\xe2|\\x9a\\x8d1\\xcbN\\xbf\\xc0\\xc6-\\xfa\\xa5Joi\\xdbZ=\\xa1\\xa4w)MD\\x16\\x94byZ\\xb0<\\xd8\\x0b\\xfb\\xc5\\\"MX\\xd0\\xbbe\\xd2\\xc6\\x80\\xee\\x9f\\x9eCB\\x81\\x86@\\xfb\\xb3\\xb8x{A\\xcb\\xdc7\\xb9pS\\xc4(\\xc3a>R-\\x0e\\xb8XE\\x86\\x132\\xce&\\xe4\\xe3\\xfb\\xe7O\\xb3\\xf9\\\"\\xa3\\x84\\xb2 \\x1f\\xee\\x8e\\xc2\\x11\\x0c \\xe7T\\xe8\\xd6-0\\xbe\\xb37\\x12v\\xd5\\x9e\\x0f>\\xa9m\\xdd^\\xb3v\\x1a\\x1b7m\\xb5Z\\xc5\\xfd\\xca\\x97\\xab\\x81\\xd0\\xd6\\x8cD\\xca\\xfdA\\x0f\\xb6MO\\xc9\\x90\\x19\\x0d\\xb3\\xfd\\xdf\\xb3\\x84\\xe2\\xf2\\xb4\\xa7&S\\xf5\\xb8\\x07\\xa5\\xe6S\\xcb\\xb9\\xa1r\\x17Sr\\x01$`\\x9a\\xb9\\\"\\x82\\xde\\x92Mw\\xbe\\xed\\x85au\\xb7w\\x1a\\x17\\xe4\\xfe]\\xd3\\x18\\xaa\\xd4A\\xed\\xae3\\x0c6K2Z\\x1c\\xe3[6\\xaf\\x9d8]\\xccb\\xcf\\\\\\x83\\xa0\\xbb\\x8f)m\\xe2\\xac\\x17\\xe2\\x16J\t\\x07h\\x9c\\xf3)i\\xcf,G\\xb6yc\\xce\t\\x9be\\x93k\\x8fF|n\\x1b\\x8fz\\xea\\xcdD\\xb4\\xc7\\xc8\\xe2\\xb3\\xbf\\n\\x9c\\x8d!{\\x0f\\xd2\\x80\\x99\\x8d\\x14S~\\xec\\x8c\\xc9I\\xa5\\x8a\\x8d\\xe6\\xe4\\xc7z\\xfa+_^b\\xf5\\x10\\xd1\\xd8\\x96\\x1c5\\x88\\xbd\\xeao&x\\xbb!\\x8d\\xf8\\x06\\x8dL\\xfb3\\x0f\\xb5\\xc4k\\xfb\\xbb\\xb7\\xcf\\\"\\xe8m\\xf7\\xc2\\x91\\xdc\\x9f\\xa6%\\xb5R)\\xe6\\xda\\xd4\\x86\\x94]\\xb5\\x95\\xb48\\xd6\\x94J3N\\xb8f\\x15\\xe1\\xa2\\x9aSN\\x97\\xcb\\xc8F\\x1e#\\xf5\\x91\\xd7a\\xae\\x94b\\x96\\xbcd^\\x04\\xd8X\\xa0\\x063\\x8ektL\\x9a\\xb31\\xa5Q\\x9e\\xcc\\x03m\\x91~\\xc3\\xecx\\xbd\\x13\\xb4\\xd8\\xf4z\\xae\\xe1Z\\xb2\\xaay\\x0d\\x93\\xc3\\xec\\xb4\\x82\\xd9\\xc7\\xb6{Yd\\xc8\\xe3\\xe6\\xd54ig\\x9b\\xe8N\\xc2z\\xfb_\\x97;%s\\xdd\\xb9l\\x915\\xf7\\xdc_9Bi\\xffY\\x97\\xf6\\xa5ui=ZK\\xbb\\xd8ZZ\\xbd\\xfc\\xa7\\xf2?\\xd5\\x83\\xb2\\x90\\x16\\x0d\\xee\\xdd\\x0d\\xfbO\\x96\\xd3)\\x91\\xde\\xe2\\xd7\\xca\\x06hN\\x88\\xd9\\x9cfI\\xa9\\x8c\\x92\\x99\\xc8\\x15\\x0f\\xff\\x7f\\xf2\\xde\\xbc\\xbbm\\x1cK\\x14\\xff\\xbf?\\xc55\\xa7_\\x8a,\\xd3\\xb4$\\xaf\\x91\\xedx\\xb28\\xdd\\x99\\xc9\\xf6b\\xa7\\xea\\xd7\\xa3\\xf2xh\\n\\x92\\xd8\\xa1H\\x15\\x17;\\xae\\xb2\\xe7\\xb3\\xff\\x0e.\\x00\\x12\\x04\\x01\\x92rR\\xd3\\xfd\\xde\\xe3\\xc9\\x89E\\x12\\xc4r\\x01\\\\\\xdc\\xfd\\x9e@\\x15\\xcb\\xf2\\x13\\xf1\\x83\\x9c\\xc7\\xa2\\xfc\\x17$\\x0b(\\x81p\\x047a\\x16\\xe6\\xb0\\xc8\\xf3\\xd5x{{\\xe6\\x07\\xe4:I\\xbex\\xf30_\\x14\\xd7^\\x98l\\xa7\\xf4\\xbb\\xedi\\x12d\\xdb\\xf8\\xf1\\x16#\\x9fRo\\x91/\\xa3\\xd3P\\xc4nd\\x94\\x86\\xcb\\xf3\\xb9A\\n\\xc7\\x90\\x1fA\\xba\\xb9\\xe9@\\x0c\\x9b'`=\\xf1\\xd3y6\\xb94Q$\\x157\\x97\\xa2\\xcb\\xaeB\\x1f\\xb2:\\xeaq5ED\\xcd$\\xed\\x1f\\x94\\xb3\\n\\xc8\\x99uG\\xe2l\\xa2\\x99\\xa4\\x16\\x1dS\\xe5\\x15\\x98C[\\xd2\\x1a\\xd8\\x12\\xc58j\\xc4\\xca\\xca\\n\\xef\\xbb\\xc4\\xa8<P\\xf4]\\xb4\\xd7\\xd6\\xf1\\xb1\\x1f'\\xf1\\xdd2)\\xb2g\\xcf\\x14F<\\xd4\\x12TQ\\x98\\xe5\\xfdr\\xed\\xf0\\xbd\\x16\\xd1\\xceZo\\xc3,\\xb7(\\xa7#i%5\\x1b\\xaaIk,\\xfdU\\xbd\\xb9\\xee\\xdd\\x1dp\\xf0X\\xef\\xfc\\x15\\xb6Y\\xfa\\x0f\\xf7j1)\\xfd\\x84\\x1e\\xddp\\xe5j\\x84\\xed\\x1b\\xbc\\xbez\\xf5&#\\x8f\\x01\\xf79a\\xd0>'\\x14\\xd8\\xe7\\xa4\\x1f\\xac\\x932\\x1a\\xf1#\\x9a\\xacB\\x19\\xcbcf\\x1d\\xa8nz\\xf5#\\xcb\\xfd\\xe0\\xcb#\\xba\\x80\\x11\\x98\\xd9\\xb8\\xe9/:r\\xfa\\xb7W\\x9b!\\xb7\\xd0}D\\xb3\\xc2\\xb8\\x17[\\xd6\\x18\\xfd\\xf6j?\\xc5H\\xcfk\\xb5^\\xd4\\xb3\\xbd\\x88\\xa8=\\xad\\xca\\xa8\\xf2\\x84\\xc84'\\x04\\x8b\\xac\\xc3\\x8c\\x102x\\x06{p\\n\\x19l\\xc1\\x1e\\x8c1\\xf3R\\x00'\\xb0w\\x04\\x01\\x1cCv\\x04\\x01E\\xe3\\xd1$\\xa0\\x05.\\xe5\\xda&AKb\\xf0\\x1b\\xee\\xa5n\\xb6\\xa3\\x86R\\xdb3\\x93\\xe9\\xac\\xd4c\\xc1\\xb0\\x8d\\xe2:q\\xd1\\x16\\xd0\\xd4\\xc4\\x9eux\\x8a\\x03\\xb75\t\\xdb\\xe5\\xdf\\x1c\\xdcR,h\\x8a\\xc3\\xa3p\\x8afOSzb\\xc2\\x7f\\xd1\\x9f\\x05\\xfd\\xf9_\\x90\\xcc\\x90Zd\\xcfV\\xecYV\\xacV\\x11=\\x7f\\xf2\\x84=O\\xf0\\xb9\\x0b\\xe4\\xeb\\n\\x03\\x9c\\x80\\x1fC\\xe9\\xd8\\xe1\\xfd=\\xe3\\xa1\\xbf=\\x8d\\xe8A\\\\z)\\x19\\xc8\\xb3\\xbch\\xe5X\\xc4EK\\xde \\xe7\\xb2\\xe8H\\xe9\\xde\\xa9\\x8b\\x16\\x97\\xb0\\x8d\\x99\\x95\\xd9\\x03\\xdb\\xacN\\xe4\\x0b\\x1d\\xf3y\\x1eJ\\x91~h\\xb2taQ\\xaeo\\n9\\x8f\\xc2pQfP\\x88\\xda<\\xf1\\xc5E;?/\\xe5W\\xf3\\xd6\\xf2f\\xd8\\x1a\\x82\\xc5\\xf5\\xda\\xe4\\xd9\\xc2_\\x911\\xac\\x9aoD\\xa07\\xed\\xcb\\xa5\\xbfzY\\xbe\\xef\\x8d\\x1ef\\x88\\x9c\\x1ew\\x06F\\x18\\xe5>\\xb3\\xf5\\xe7\\xb6\\xb6\\x87X\\xbc\\xd9Z\\xdb\\xf9\\x8a\\x9f\\xf4<+\\xb5'#V\\xd0<\\xeb\\xdaN6\\xb9\\xcd\\xae\\xb3\\xcap2\\xb1V\\x0dg\\x8d\\xae\\x9f\\xbf\\xf2~\\xfe\\xca\\xfb\\xf9+\\xf6\\xf3WM\\xd9\\x94\\xc7\\xfb\\xcfl\\x8b\\xed\\x7f\\xcb\\xed?\\xe1D\\x87.\\x9b\\xb3\\xadi6,S,d\\xf6\\x9a\\xc7\\x99\\xec&&z\\n~\\xb3\\xaf\\x82+\\x11|t}\\xbb\\xf2\\x11h\\x9c\\xc7\\x84\\xfeu\\\\\\x1f\\x1e\\xb3R\\xa5\\xef\\x85\\xfc}\\xac\\x8e_\\xf4\\x97\\x16\\xaa0+r\\x1ae\\xcen\\xbb\\x14>\\x03\\x06F\\xac\\x05\\xdf}\\xd0\\x8c\\xac\\xd00]\\xe2]\\xce\\x8f\\xe1\\xb4\\x0c\\x9e\\xa7\\x9b\\xb0\\xb5N\\xe0}~\\x02\\xefK'\\xf0\\xbe\\xee\\x04\\xde\\xef>\\x81\\x05\\xd5\\x00'\\x80\\xa6+)\\x0b\\x9e\\xc7\\x8c\\x1c]\\xe1\\xbd\\xcb\\xe2\\xb3\\x9e\\x02QQpm`2\\xe2\\xe5\\xc9\\xe8\\xa5\\xe3\\xb14u\\xa2\\xc0\\xf6\\x1b\\xe7\\xe3\\xad\\xcfl\\x9f\\xb2\\x15\t\\x18S\\x16\\xc6\\xac@\\x88\\x05<\\x94\\x97\\xb0\\x86\\xebk\\xad\\xb1\\xa2\\x98&A\\n\\x0f\\xbc1t\\xb4++\\xf6\\xc2\\xac\\xec\\x96\\xfa\\xcd\\xa0\\x16\\\\U7\\xed\\x99\\x96\\xfco\\xd2ar\\xf4D\\xed\\xec\\x8b\\x89\\xa7P6\\xa9X\\xec\\xac\\xd5\\xe44B\\xda\\xa6#\\x87\\x8f\\x81X\t\\xdb\\x89\\x95\\xa8/\\xb1\\xf2_\\xa5\\xac\\xe0\\xbft\\x14\\x8aQ\\xec\\xd8\\x8c;\\xe2\\xb4\\xc2=2\\xc9\\x1b\\x9b\\xa0\\xaf\\xe0\\xaeI\\n\\x02\\xf2\\xc6\\x8b\\xb4\\x1b/(7^\\xc4I\\xdfH\\\"}g\\x8c\\xf4\\x9d\\xc11DG0\\xa3\\x1b/\\x98\\xcc\\x9a\\xa4\\xef\\xcc\\x10\\xd0i\\x85\\xaa\\xa6\\xc44\\xe7\\xb1\\xbdj\\x9ds\\xbaf\\x0b3\\xfd\\x84F\\xd0\\xf6\\xeaQKB\\xa2_3\\xcd\\x92X\\x18\\x96D\\xd8E\\xbf\\xa2K\\x00#\\xd5\\xfa,\\x10fW\\xc1'S\\xef\\xe7\\xa3\\x19\\x00-#\\x1ce\\x0d]\\xc4y_\\xa5\\xc9\\xea\\xa2\\x1cS\\xd6\\xe8{\\xb9\\xe2\\xb4\\x99V\\xca\\x95s\\x83\\x91\\xab\\xca\\xc8\\xf5.\\x92\\xb8\\x03\\x97\\xd3\\xac<\\xa1-,\\xe1\\x18\\xe6G\\xb0\\xa4\\x8b\\xc4<\\xa5\\x18ZJE\\xb27.,\\xcbEL{9\\xa1\\xfd]\\xd2_\\x97V\\x89t\\x03\\x13\\xb5K\\x81x'\\x9f\\x82\\x08\\xae\\x12\\x80w\\x1d\\xf3\\xd0\\xb1\\x19\\x85xC\\x17.\\xbb\\xb9\\x1f[\\xb7`\\xa2\\xdd\\x82a\\xb9\\x05\\x13\\xc7\\xe5\t\\x10\\xc1\\x87cH\\x8e\\xc0\\xa7\\xd0\\x0c'~}\\xbb\\xf9\\xe6s\\x0eQ\\x07vU\\x01r\\x88:]\\x16\\x7f\t\\xf3\\x8d\\xb8r\\xb7\\xab!\\xa2[\\xae~\\xfe\\xcaq\\x84\\xdaq\\xf8\\xe58B\\x8eJB\t\\x95\\x14\\x0c\\x95\\x14p\\x0c\\xe1\\x11\\x14t\\\\\\xfe\\xa4h\\xa2\\x92\\xc2\\xa4E\\xe2(\\x8cLrC\t\\xe3^\\xca\\xda\\xf6\\xd2\\x17r\\x97]H\\xfb\\xc9NV\\\\\\x08\\x9a\\x91 \\x89\\xa7e\\xd7\\x9c\\xe6V\\x8bM[\\xad\\xc9\\xe6\\xb6o5\\x90\\xa1\\x8b\\xe1~\\xe5H=\\xe5\\xbe\\x9b\\xb1}G\\xb1jP\\xee;\\x8a\\x9cW\\x1c9\\x9b9T\\x81N3u\\xef\\x05.\\xcc\\xca\\x99G\\xa4\\xb8\\xf5\\x8c\\x02\\xc5\\xa6\\xe3\\x08&\\xb3K\\xfa\\xcc\\xa9v\\xa1\\xdf\\xc6s2\\x8bi\\xe3Nl\\x92\\xe5\\xa0\\xc5\\x8a\\x0fNs\\xf5\\xea\\x0f\\x98l\\x9d\\x9d<3\\xd3\\xe7\\x92\\x05\\x8bb\\xb7U1\\x060\\xae\\xbdk\\x9eK\\xb1\\xa9\\\"\\xb4\\xd1\\xd2r\\x15\\xb5:G\\x97Z\\\"\\xee\\xff\\xa5\\xd3\\xfe\\xb1\\xc7y\\xd1~\\x9cO\\xff\\x87\\x8e\\xf3\\x9b2\\xcec%\\xffi=X\\xbb4\\xebK\\xc4x7-\\x18o\\xd9\\xb5\\xeb\\xe9)\\xbdTw\\xfd\\xc2\\x85\\x9b\\xda\\x89\\x8b\\x1c\\xe2M\\xf7Y\\x0b=%J\\x9d\\xc6\\n\\xed[u\\xd5\\xdc\\xaa\\x95|G\\xfeT\\xfc\\x925\\x85\\xcc~\\xecQ\\x8a\\xa3\\xed\\x1f\\xcb\\x9f\\x8c\\xc3\\xde\\xf2\\xb3,\\x9cWl\\x92\\x1d8p\\x1e\\xc6\\xd3\\x94\\xc0y\\x92.\\x8a\\n\\x01\\xfdk\\x14\\x06$\\xce\\x08\\xbc{sQ>\\xfcq\\xbb\\xfc)tR<\\x8d\\xd9\\x9c\\xe4\\x92)\\xd7\\xf9\\xdd\\xf2:\\x89\\xb2\\xa6\\xae\\x8a\\x97\\xae%\\xb9\\x94\\xbek\\xea\\xae\\x1a\\x1fp\\xcb\\xca\\xbb7\\xd9Y\\\\,\\x19\\xda9\\xd2\\xc2\\xcdH\\xc4\\xe8=\\xa9pS\\xf3\\xe6\\x18\\x94Z\\xc3\\x89\\xdcp\\xbb<\\xba\\x83\\x85u\\x93\\x7f\\x1d\\x98|\\x11\\xc9\\x04\\xb1\\x8e5%\\x96\\x0b\\xd6\\x1e\\xb34\\xd4\\xc2\\xee\\xbd\\xbf$\\x99M\\x9c\\xc9\\xe0\\xb2\\xb5\\x0355\\xf1\\xef\\x0fL)<8\\x82\\x18\\x8eaH\\xffR\\x84\\x97O\\xac+\\xba\\x15X\\x0f1\\x0f\\xd3\\xcb\\x85\\x9f\\xbeL\\xa6\\xc4\\x8e\\xd1t.\\xd6\\xf7\\xd7\\x1a\\x0cG;\\xbb{\\xfb\\x07\\x87O\\x99}KK_s\\xc5\\xa6\\xadK\\xc4\\x95\\xabq\\x84\\x00$\\x0b5\\xab=\\x8c\\x8bXw-I\\x91\\xe8<L\\xc9l\\xbe\\x08\\xff\\xfe%Z\\xc6\\xc9\\xea\\xd74\\xcb-!#\\xb241\\xe5\\xcc=\\x9e\\x90K}\\xecU\\xc75\\xb4#\\xcf,\\xa5\\xc6\\xec\\xda\\x9a\\xc2\\xc8w\\xa9S\\x0d\\xb6\\x8eFZ}\\xf2J\\xa8\\xd4\\xbf\\xa9\\xd0\\x87\\xed\\xc0)\\xd4\\x9a\\x83\\x0e\\xdd\\xa7\\x9c1\\x82'\\x8ah\\x07J(\\xe2\\x96\\x9e`\\x94\\x89\\xfb{\\x99D \\\"\\xf2+\\xdd\\x14\\x94|\\xe4G[\\xbdK\\x95\\xddr\\xe0G\\x11\\x99\\xc2m\\x98/\\x98\\xe4*I\\xa12\\xb65\\x9b\\xeb\\xf2\\xb3H\\x15b\\xda\\xc4a\\x89-\\x86G\\x90\\xc1q\\x83`8\\x82LOUJdF\\x183\\xc7\\x08\\xd6BE$d\\x97\\x8e\\x03\t3\\x08\\x89]\\x88\\x98\\xa9j1\\x89p\\x0fM\\\"S\\x00jcJ\\\"\\x1f\\xb3\\xaf\\xeal\\x92A\\xa5\\x9e\\x07LV\\xe8\\x97\\xc3@\\x91aXv\\xc6\\x9f\\x04\\x97\\xa2?\\xf47\\xeb\\x12\\xfe\\xea:\\xe5\\xebw\\x82B\\xfbS\\xfd\\xf5\\xa3\\x8e\\x9e\\x9b\\xd2fa\\xa8F\\xb1CS\\x0b\\xfbP\\xb5e\\x08Y\\x16\\xce\\xbd\\x81\\xf2\\xdc\\xc7\\xa8\\xa0\\xf6!\\xfa\\xc9\\xbcyu\\xf5\\xfc\\xe2\\xe2\\xd3\\x9b\\x17\\x9f/\\xce\\xae\\xde?\\x7fw\\xa6\\x14\\xa6+8\\xac?\\xa2+\\xc2\\xba\\xbaBk\\x977q\\x8e)\\x12\\xdep\\x9a\\xfe\\xcf\\x149\\xbe\\xf3\\xf3\\x85\\x97\\xfa\\xf14Y\\xda\\x92\\xb1\\xea\\xce\\xbe\\xc3\\xe3E\\x8f\\x1c\\x9d|<j\\x13'2\\xdfh\\xe2\\xc5\\xc9\\x94 #\\x85\\xd1\\xe7\\xe6rN\\x0f\\xdf\\xc12\\xbc5\\x16Z\\xf3P\\xfb\\x19\\xbdca\\x1b\\xe8[\\x0bp([9\\xf9\\x9a\\x8f+\\x92\\x0e\\xacu+ \\xcbU~W\\xabA\\x9a\\xf8\\xe6x\\x836S\\xa5#\\x1e\\xae\\xf6*%1\\xaa^J\\xfb\\x9f#\\x07\\xcf\\xc9\\\\\\xcb\\x0c\\x90\\xd6\\x16gZ\\x08\\x0b\\x91q36s\\xec]-\\x92\\x0c\\xf3\\x1a0\\x91@>\\xc9p3\\xb4\\xb6\\xb2\\xd2\\xb6\\xc2\\x94\\xd7\\xc4\\xbb\\x9aE\\xfe<\\x83'PPZ\\xe5\\xa5\\x1f,\\x08K\\xa5@[\\xd1\\xcbxo\\xcaLG\\x154\\xe8\\x17)\\xd1$\\x80\\x06\\x11\\xa7\\x82%m\\xc2\\x82M\\x9c@\\xc6\\xb2\\xb8\\x02\\xed\\xe7\\xb55!zV\\xed\\xea\\xc3Vm\\xfb\\x0d\\x8fx\\x1fO\\xc2\\x8e8\\xea\\x19\\x02\\xddw\\xbc\\xabi\\xb2|\\xf3\\xaa\\x9d\\xa2f\\x16\\xb2Z\\xaeN\\xbepTGU\\xd4\\xd1\\xe4\\x08\\xa1\\x91`P\\xfa\\xf3\\xf0:\\n\\xe3\\xb9Yy..\\xda`d'\\x94\\x8b\\xecjP\\\\3\\xdbw\\xa1\\xcd\\xa3K\\xbe\\x02\\x9e\\x91FC\\x08\\xa8\\x97Y\\xe7L\\xaf\\xd4\\xb6vF\\x16\\xed\\xa7\\xb1\\x98A5\\xdd\\\\\\x12bi\\xde\\x9f\\xe8\\xd7\\xe6\\x9f\\xf4\\xdf\\xeb\\xb6\\xc0\\xb4\\xb9\\xb5\\x19\\xd1\\x9aU4(\\xbd92\\xec~&qa\\x96\\xd7\\xb0\\x81%M\\xc4\\x03w\\x7f#\\x98\\xda\\xdb[\\xf9)\\x89q\\xc3:\\xb2vA\\xb3\\x01p?U\\xc5\\x0d\\x83\\x83jI\\x91\\xd2U\\x11\\x87q\\x84U\\xa4\\xde*Y\\xd9\\x8e\\x83\\xd8\\x8a\\xf6Y\\x98U>y\\x02+z\\x96\\xaa(E\\x90\\xac\\x7fj\\xb6%\\xb8\\xe3\\xfa8\\xe7$\\x7f\\x19%\\x19\\xc9rq\\xc6\\xbcN\\x93%\\xed\\xf2\\x18\\xa6\\xaeZ\\xb4Y\\xa6\\x9d\\xfc\\x12\\xf4\\xfeT\\x1b\\x97^\\x82 \\xca\\x0b\\x99I\\xba\\x84\\x13y\\x18\\xc2\\x9c\\xfb\\x87\\xd5\\x81\\xd8\\xe8\\x1c\\xfd\\x86vLt\\xb2\\xabsa=\\xfb:\\x91Z\\xc6\\x98\\xcc\\xd6\\xce\\x0e\\xba\\xf2T\\xcf%7\\xba\\xf2Y\\x07\\xa7\\xc3V\\x98T\\xdc\\x11V\\xf7\\xa4\\xaa\\xfb#\\xae\\x13\\xd4\\x8f\\xda\\xd6\\xce.\\xb6\\n'\\xf5\\xb7\\x86v\\x8e\\xca@\\xfcl\\xc5\\xe4b\\xc5\\xe01!\\xf7\\xdd\\x08\\x7f\\xa9P\\x1b\\x84W)\t\\xe8\\x96\\xadvl\\xc3nD\\x14\\xe1KC!ub\\xf9]\\xafe\\xd3\\nf&L\\xe7\\xd1\\xb2\\xe9\\xc9Y\\x1b.\\xdd/E\\x14\\x19\\x8d\\xa5\\xf5<\\xf8\\x02\\x9f\\xaa\\x04\\xa4\\xdc\\xc5\\xea\\xb0\\xac\\xbeR\\xce{\\xe6\\x1d9\\x06k\\xe4\\xedy{\\x96\\xaeMM\\xc0\\xe6\\xab+\\x86\\x01\\xe8\\xdf\\x13q^~+);\\xd0\\x19\\xe0N\\xac/a<\\xa5|}J\\xb2$\\xba!,\\xf7Z\\x9ca\\xae)z#D\\xc8\\x1ff\\xf4n\\x95\\x92i\\x18\\xf89a\\x9f\\xacR\\x92\\x91\\x18\\xcbq\\xf3\\xffs\\x9e\\xec\\x8de}{\\x1e\\x85~F2\\xeb\\xb2I.O\\xac,\\xf0#?\\xc5\\xb2\\xe4\\xd7\\x82\\xc4\\x01~\\xb7\\xf4W\\xab0\\x9e[\\x97\\x1d\\x92\\x11#y\\xe5\\x82__ \\xe1\\x8c\\xe5\\xb9\\xc8\\x85'\\xac\\xcc\\xe1\\xe6}\\xc3\\xb4\\xd3Z\\xb6x\\xd8 \\x0f\\x9d\\xc1?\\xcc\\xd0w\\xb7b\\x1bS\\xfb\\x87\\xcf\\xf1\\x978\\xb9\\x8d\\x81\\xa9.\\xc0\\xfa\\x81\\x13\\xa8?X\\x10f\\xb0$9%\\x80\\x90KD\\x03oHf\\xac\\x0cae\\xfe\\xf6\\xfc\\xdd[\\\\\\x04\\xde\\x0f\\xcaju\\\\\\xc8\\x17a\\xe6\\xe5\\xfe\\x9c\\xae8~G'\\x0f7:\\xfe\\xe0\\xf1\\xed\\xf9;>\\xa1\\xf8Z\\xfc\\xbe\\xbf7\\x8b\\x96@b\\xd3\\x15\\xb3\\x07^c\\xb9.\\x98[Ky'\\xd7\\xda\\xea*\\xa1\\xad\\xb5Z`,\\xbctu[\\x1fO\\xb9\\xf4\\x18f+\\xef\\xd4Q\\xf35\\xc9\\xc7-\\xee\\xea\\xa5\\xe4\\xc5\\x8a\\x05k\\x0f\\xeae\\xe5\\x85\\x8c\\xec\\x1cs\\x1e\\x95\\x9f\\x96\\x1f\\xf8B\\x9e%hB\\x8c1 \\xaf\\xb7\\xb8\\xaf\\x08'\\x9e\\x90\\xcb\\x9eK\\x93^\\xfe\\xa4d\\xc6LR\\x9f\\xc6\\x82\\xf2\\x1d\\x17\\xf8\\x92\\x0e\\xab%-\\xd6\\x95ii\\xe3Rc\\x0b\\xbb\\\\\\x82b\\x81W\\x165\\xf4@\\xea\\\\\\xd9\\xbdx\\xf4\\n\\x85\\x8dvG\\x8em\\xdd~\\xc9\\xd4\\xf8j\\x8c+\\x1f\\xee\\x1b\\xd8\\xf2\\x1d\\xc7cR\\xdd&s\\xaeM\\xdc+\\x99\\xe3\\xda\\xfd\\xfc^\\xf8\\x02G\\x91\\xdb\\xfd=\\xd8\\\\\\xf6\\xe6\\xd3\\xd9\\x0f\\xc5C\\x1f\\xf5\\xb0cH\\x1c\\xdbb\\xfda\\xc6`\\x92\\xb3\\xd4\\x83\\xe3ey\\x82\\xa9\\x92\\xd3>\\xb0\\xd1#\\xfd\\\\\\x0e\\x15_\\x0f\\xdc%\\x80\\x19\\xda\\xb1\\xbd\\xb7\\x7f\\xa8\\x06\\xacO\\xf8\\xab\\xa7CG+7\\x08\\x8dC\\xef\\x1f\\xa3\\xde\\x10\\x9f\\xfe\\xe1O\\xcd_\\xe5\\xbel\\x13\\x89\\x0bmD\\xdb\\xc1\\x00\\x1c\\x81\\xab\\xf6}\\x15\\x11\\xa7\\x17\\x81)\\xce\\xf1\\xa5\\xf0\\xae\\xfa\\xb0\\xb3Y\\x90\\x08\\x05S\\xb0Gz\\xa5,_\\x96\\xf1}\\x88!\\xe1\\xcc\\xef\\xfd\\x8e`*\\xed1\\xd8J:\\xb5`bH%\\xeb\\x19\\xc1\\xbck\\x98\\xe3\\xa6@\\xd5u-\\xef\\x1a\\xe3V\\x18%[\\xb0\\xbcj\\x94EbHW\\x8e\\xa4\\x9e;G|\\x9c\\x06\\xe6\\xb5_`\\xb7\\x90\\xa7\\x16\\xf3\\xb5\\x88\\x0e\\xa0_\\xbe\\xaf\\xee\\xa0t\\x1b\\xe8\\x18\\x9bIi\\xc6\\xb2\\xf64c\\xd0\\xb3i\\xe0\\xcb+\\x14(\\xd67W\\xa7\\x1f\\x9f\\xf6\\xa9\\xe0\\xa1\\x1a/\\x1f\\xd8\\xea\\xd4\\xd0\\xcd:\\x91\\xb7\\xd0\\xe6\\xfayN\\x96\\xab\\x1c\\xf2\\x04\\xa6\\x84\\x1d\\xf5E\\xca\\xbc\\xd9\\x84\\xbdni`\\xa0*\\x03\\xaa\\xcdl\\xf7\\xa2^%:u\\xbf\\x1d\\xc9\\x0f\\xf7\\xb5H~4\\xfc\\xbf\\x16\\xc9K\\x07\\xa0^\\x1c=\\xdc\\xd3\\x82d\\xf7\\xa9F\\x1a\\x1d\\xdb\\x0d!u\\xc1\\x1e\\xab\\xa9M\\xfaz]\\xa3\\xf2\\xc1\\x05f\\xbd\\xb2\\x02\\x0c\\xe0\\x0d\\x99\\xf7Z\\x8f\\xaa\\xa6e\\x81\\xbf\\xe8\\x0b,\\xca\\x02\\xe7\\xfa\\x027e\\x81\\x8f\\xfa\\x02\\xcb\\xb2\\xc0\\x0b}\\x81yY\\xe0g}\\x81;8\\x81)\\x9cB\\\"\\x92.\\xd1\\x99\\xe5\\xd9\\x97~7e\\x11\\xbb\\xc6h&\\xa5\\xb6W_\\xe8\\x8a\\xd7\\x9c\\xc2\\x18\\x16\\xf4/\\xcb\\xecd\\xa7\\xbc\\x95\\xdf\\x1f\\x9c\\xaa\\n\\x03\\x9b\\x8f\\x9a\\x9ei)\\\"\\xca\\x1d:1\\x98\\x9a|\\x03\\xf3\\xe0^)\\x11\\x8a\\xae&\\x11\\xd3\\xb1\\x14\\xf6\\x1d\\xaa\\x7f\\xe8h(\\xb1\\x1d\\xc0)\\xbe\\x841\\xaa\\x81\\\\\\xb8c:!\\xac[k\\xbf\\x85\\xa5O\\xb14\\x8caI\\xcb\\xd1JB{\\x86&yc\\x98c\\x07\\xb0\\x9a\\x13\\x98\\xc1i\\x07c\\x00\\x12\\x83_\\xd1\\xb8z\\x0b?\\xf9B\\x96n\\x11f\\xb5x\\x1e]\\xe2\\xd3\\x0c\\xf3#\\x83\\xad\\xea\\xd6\\xba\\xbe\\xa3W\\xe0g\\x04\\x06\\xe3\\xcerP\\xb7\\x8f\\xd1L\\xa1za\\xcd\\xc3\\xf5k\\xb6u\\xf8\\\\\\xbd\\xb0\\xf2\\xd1c*\\xd7\\xc60\\x92\\xaf\\x0ea\\xb1Z\\x996W\\x99\\xb8\\xccu\\x95b)f5C\\xe7\\xdc\\xad\\x94\\xa3\\xfa\\x1a5\\xdau\\x90\\xc4\\xa1\\xd5\\xfebr\\xd9r\\xc3\\xea\\x02\\x88\\xb3d\\xd47\\xca\\x86\\xa8N\\x91\\x19\\xae\\xfe\\xd7\\xfc\\x0d\\xaa5]\\xc0of.\\xfb\\xcc\\xb6\\xef\\xbc\\x1b\\x96\\x14\\x1b7^u\\x87\\xb8\\xc4a[n\\xe6r\\x8c\\xf4\\x89~sM\\xff\\xdb\\xb8\\xa6\\xaf\\x9e<\\x01\\xdf\\xbev\\x01\\xab5\\xa7(\\xc9\\xbc\\xd7\\xcci;\\xf3\\xfe\\x02'0\\xa2?\\xce\\xe1\\x04v\\xe9\\x8f\\x8fp\\x02\\x87\\xf4\\xc7\\x0bZf\\x9f\\xfe\\xfa\\x19N`\\x07K}\\x86\\x13\\xd8\\xc7b\\x9f\\xe8\\xdb\\xd1\\xa1[\\x93\\xb70Q\\xfc\\xbaR09\\xeeT\\x85=n\\xc3x\\x9a\\xdc\\xd2!\\xb1_\\xde;\\x0c2q\\x82ZL8\\x15\\xef\\xc7\\x86\\xcf3\\x12a\\x10e\\xfaW\\xfd\\x14\\xdf\\x8dAL\\x84m\\x89\\xd9^\\x84\\x99\\xe5\\xc8\\xa6_Zq\\xdb\\x9c\\x8b\\xdb\\xe6\\xdf(n\\xeb\\xe2\\xbc\\\\~b\\x8f\\xf6\\xd5\\xd3\\x16\\x03\\x81\\xd1S\\x9eE\\xcaN\\xeb\\x9cT\\xda\\xceI\\xa5\\xa6e\\xa1e\\xa0\\xda=\\x1aPBEx`\\xb0\\xb0\\x96\\xd9(w\\xb5\\xc7\\x7fT\\x901h\\xd4\\x83\\xa44r\\x1ak9\\x9b \\x89g\\xe1\\xbch)q\\x9b\\x86\\xb9x[\\x1f\\\"\\x86\\xa0g\\x07r\\xec\\xd6T\\xb1\\xd0=wfym\t\\xd1\\xd8\\xde\\xdb\\xd9Q\\xa6\\xa8\\x9a\\x91Z\\x7f\\xf4M\\xeavH\\x8d\\xfb\\xd4\\x8b7\\xe3>\\xfd\\xff\\xc6\\xb5\\xa7\\x8e\\xeb\\x8f_z\\xe52j\\x17\\x15\\xd6\\x94%\\xc3#\\xc8\\xb5\\x860\\xb9\\xde\\x10\\xe6F\\xcd\\xd4\\xa0\\xb5NoDr\\xeb\\xb0\\xea+\\x0dUx\\x8072I/\\xb9\\xf7\\x94\\x89\\xe3\\x01\\xbd\\x89\\x00<v^\\x05\\xf9\\xbfa\\xcbh\\xf1D\\xc5\\xaa\\xf7\\xf7\\xb0\\xc1\\xd1\\xea4\t\\x10\\x04\\xbag<\\x1a\\xd1YD\\xd0\\x92\\xbe\\xc9N4!\\x1b\\xf8\\xf1\\xe7\\x8c\\xbc\\xfa\\xf0n\\x0c\\xa9f\\x17\\xe3\\xdb\\x9f\\x93\\xf4\\x0bI3\\x13\\xeaf\\xafM\\x1f\\x9f\\xdd\\x908\\x7f\\x1bf9\\x89\\xb1\\x0ed\\xbb7l\\xd1u\\x7f:\\xad\\x95\\xc0\\xb7\\xe2]\\x9e\\xfb\\xc1\\x02_k\\xc8rV\\xfdO!\\xb9\\xa5\\xfbKT,\\xbe\\xcd\\x82\\x94\\xe8\\xcc\\x1a\\xc2\\xecM\\xcc:<\\x86\\x0d\\xe3\\xfa\\x96wm\\xf2\\xed\\xb3\\xdb\\xb1\\x0eu\\xc2\\xb8\\xa4\\xcd\\x88\\x87g*L\\xd9\\x02\\xc6\\x82\\xcab\\x14\\xad\\xd3\\xed\\xbf\\xfd\\xcb/\\xf6\\xe4\\x97_6\\xac\\x7f\\xf9\\xf3\\xffz\\xf2\\x83\\xed\\xfc\\xb8\\xe9z\\xbfl\\x8f\\x8f\\x8eO\\x9e\\x9d\\xfe\\xeb\\xe4\\x97\\xcb\\xff\\xbc\\xfa\\xaf\\xdf\\xef\\x1f\\xfe{\\xeb\\xd2\\xd9\\x9e\\xf7\\xf4\\xb7\\x15\\xfd\\xb0\t<;\\x81\\xbd\\xbd\\xd1\\xd3}\\x14\\x11\\xc2\\xf1\t\\xec\\x1d\\xec\\xec\\xee\\xb0\\x0d\\xc5\\xdf\\xef\\xef>=\\xa8\\xde\\xef\\xef\\x0d\\x06\\x07\\xec\\xfd\\xfe\\xde\\xde\\xce\\x1e]I\\xfc\\xd7\\x13`\\xf2&z\\xb7\\xaby.*\\x1c\\x94\\x95\\x1d\\xb2\\xe7\\xc3a\\x95]J\\x14\\x1a\\xee\\x96\\xa5v\\x86\\xb5\\xcf\\x87\\xa3\\x83\\xf2\\xd5p\\xef\\xa9\\x03<\\xbf\\xd63\\x18\\x0e\\x87\\xbb\\xc3\\xe1\\xd0a\\x97\\x04\\xd3&T4\\xbe\\xba!\\xcf\\x02\\x87\\x9d6\\xa11\\x8a\\xfe\\x18\\xc06\\xc1\\xb6\tl\\x9d`\\xf9}\\x07\\x9e=\\x83\\xa1\\xca\\xbe\\x8b\\x8b\\\"\\xbf\\xbd\\xfd\\x9d\\xd1\\x80~5\\x1c\\x8cv\\x10&FM\\xaf\\xce\\xac\\xb6I\\xf5k\\xd1\\x9a\\xeeS\\xad)\\xf8\\x0dw6\\xdd~bO\\xfc\\xad\\xdf\\xfe\\xe5\\x92\\xfe?\\xd8zz\\xf9\\xfb\\xd0\\xdd\\x19>8G\\xdbs\\xc5\\xe0\\x8dR\\xc5\\xdb\\xff\\xf9/\\xb6}:\\xfe:\\xf1\\xb7f\\xbc\\xf0\\xe1\\xc3\\xfd\\xa4\\xfc\\xe98\\xdb\\xcaW,\\xe7\\xec\\xeep_+\\xb4n7\\xc5R\\xc4\\xa5|\\x88\\x89\\x1d\\xf0\\x14\\xcc\\x01\\xe3\\xd0w\\xf6PO\\x92{\\x01\\x1f\\xf1\\xf3\\xdc\\x1e\\xe0\\xb2\\x88Dx.F\\xabc|\\xab\\xaf\\xcc\\x946\\x9f\\x0c/\\xeb\\xb9\\xaf\\xe0\\x140\\x80\\xea\\x9b8\\xb7\\xf3\\xd2D\\xcf\\x85\\xe1>\\xa5h\\x1a\\xaf\\x86\\xf4\\xd5\\x00\\xe3\\xb4\\x16v\\x8cD\\x8f\\x01\\xcc+\\n\\xb8\\xc9\\x93\\xe3g\\xd6\\xe5v\\x1d8S\\xe9\\xcd\\xbc\\xfe\\xaai\\x02B/\\xeb\\x895\\x06\\xeb\\x89\\xbf\\\\\\x1diB#[\\xc7\\xf86\\xca\\xb5/\\x9f\\xe1\\xcb\\xb9\\xf6\\xe5\\x0f\\xd6\\x0f\\xf4\\xe5\\xafE\\x92\\x1f5b\\xd15\\xa7\\xed\\xc6\\x88S\\x16\\xb2\\x11\\xb6\\xac-\\xe0V\\xba=\\x84x\\x93K\\x06a\\x86\\x1eK\\x9a\\xc1\\x85\\xe1:\\xfa\\xe0\\xd6dVR2Lq\\x0c\\xe6z#c\\xb4`\\x149H\\xf8W\\x06\\xe6\\xbeKum\\x0coH/2\\x89/y\\xe4\\x1bm\\x19]\\x0c\\x91\\xfa<95Z\\xdb\\xc5l\\xc0=\\xd2\\xe9q\\xa0[\\x1368\\x8e@.y\\x04\\xf3V\t\\x11\\xff\\xb4q<\\nSW~\\xbe5\\xcd\\xa9\\xeb\\xdd\\\\\\xf8xN\\xd3\\x9fE\\xcc\\\"\\x1d\\xbek\\xcfgWJ\\x1e\\x84b\\xd4\\xfa\\xe5\\x17\\xcb\\x81c\\x18p\\xcd\\x16)\\xe3,\\x86.X\\x7f\\x1eZ\\x8e\\n\\x99\\x9f\\xfc(\\x9c\\x9e\\xc5y\\x98\\xdf\\xbddf(>}\\x81x3\\x99\\x92\\x8fI\\x88j\\xea\\xc2e\\x9ajZ\\x17\\x96\\x0eI/A\\xb4\\xd4\\xb5'\\x86\\x9ee\\xae\\x9c\\x18\\x08\\xbb\\xc5\\x06\\xff\\xd7\\x1c\\x03\\x84w\\xb6\\xb1\\x12I\\xd80\\\"\\x83\\xa8v\\xea\\xc2\\x8d\\x0e\\x19\\xb51Ak\\xc9\\xd8\\xa5\\xa0\\xd6U\\xe0\\xcbS)\\xc1;\\x8c\\xf5\\xf2\\x98\\xae\\x1e\\x19E\\xeb\\x0dn\\x8f1K\\xfb\\xeai\\xcbD\\xeb{\\x87Z\\xd1\\xfa\\x81Z\t\\x13\\xad\\x0fGj-\\x8f\\x93\\xad\\xbb\\x92\\xf4\\xdc ^_t\\x89\\xd7o\\xba\\xc4\\xeb\\xcb.\\xf1\\xfa\\xbcK\\xbc~\\x07'L\\xb6\\x8d\\x923.\\xe3f\\n\\x13!A7\\x8a\\xbc\\xcd\\xa2\\xf5\\xc5\\xba\\xf2\\xf8+8\\x81kI\\xd8G\\xbf\\xb9\\xae\t\\xff~\\xd7\\xa5Q\\xaaD\\xechY)\\x89\\xd8\\xd1+\\xd3f\\x82v\\x14\\x91\\xdfA]\\xd0~\\x87\\x82\\xf6S\\xb8\\x831\\xc4\\x0eJ\\xd4\\xe9\\xb1\\x8c\\xc2\\xa5\\x00\\x8fp!&G\\xc9\\xb9Q\\xa0X\\x98\\x04\\x8aw\\x8c\\xc4\\xb8c\\xe2@!2\\xfc\\xec\\xb8\\x80\\xb2\\xc2\\x0d\\x9ee,\\xe4\\x02\\xc3\\x15\\x06\\x08\\x10\\x02y\\xf1\\xd6\\xbe\\xe2\\\"G\\xa301\\xf5\\x02\\xa6\\x9eJ\\xdc\\xffi\\xc1\\xa2Y\\xf5\\xa5*\\xb3\\xb8\\xeak\\xa0\\xaa\\xc4\\xf8\\x06Uw\\\"\\xdd\\xa0\\xdb\\x96J\\x00\\x15\\x9a}hP=\\xdc\\xf0\\xa8\\x01\\xdc\\xcc&\\xc4\\x1c\\\"\\xda\\x85W``KtM0R\\xdf<\\xf22*\\x95\\xed\\x82\\x85\\x11\\x15~\\xec?\\x9c\\xa0\\xe1\\x0coH\\n\\xba\\xec\\xbb%\\xf9\\xe4\\xa0U\\xcd\\x0f\\x0e\\x8fF\\xf6\\xactu?\\xde.}\\\"\\x9e\\x19\\x03\\xfe\\xaegP\\xa7\\xf1X\\x8b\\x99\\xea3\\xb7\\x0b\\xc7\\x85\\xd4N\\xbd\\x8f\\xb0\t\\xa9\\xf7\\x1a~\\x84\\xa4=\\x02\\x83\\xe0o,\\x0b&\\xe4\\xd2\\xa6c0\\x02)gF\\x03\\n\\x05}\\x7f\\x0f9w\\x88\\xa3_K\\xd9\\xe0\\xeb\\xc3u0 #\\xc6O\\xae\\xb15\\xddG\\x15\\x8e\\xba\\xeaU\\xdc\\xc3\\xfa$_\\x84\\x95\\xd1\\xfa\\x83,on\\x9a\\x19\\xd0\\xfab:\\x0c\\xa3\\xb4\\x1aq\\xd5\\xc0\\x05r\\xe3G\\x8em\\xb1\\xc7U\\xf5F#\t\\xcd\\xb1Y\\xc9\\xdc\\x11\\x93\\xb1[\\x1d\\xaf\\xf6\\x9d\\xa4\\x905Q\\xe3S\\xdd\\xe6\\xfc\\xfe\\xa2\\xc6^\\x9e\\xb37\\\"\\x19E\\xa3\\x01\\x91xb\\xacMT\\xb1\\x08\\xb3<I\\xef\\xf4/\\x93\\x15\\x89\\xc7\\xb565\\x85\\x82(\\xc9Hg\\xa9\\xd7a\\xa4\\x162\\x8d\\x17\\x04\\x87\\xd1\\\"\\x0f4Y6\\xe9\\xad^H\\xb94\\x9a\\x9bQ\\xecX\\x93qR\\xdcb\\x98\\x94\\xb6\\x18%\\x99\\xedo\\xaa(-\\xcc\\xc6G\\xd1DL,\\n+\\xcb\\x05\\xebE\\x94\\\\\\xd3\\xbf\\\"\\xca\\xbeu\\x89vJ\\xb4\\xb76Fx\\xa9\\xdb)\\x1d\\xf1q\\xb4\\xf1H7<Em\\xc2\\xec\\x98\\xcc*\\xd6\\x82\\x92\\x08\\xd2\\xee\\\"\\x93\\xe2\\xb2\\x84\\xe2\\xa4\\xd0\\xb8/B\\x83\\x9f\\x82\\xd6\\xdd,\\xae\\x98\\x9b;\\xa5z\\xbb\\xce\\x0e{\\xa3v3\\xa7\\x0d\\xb4\\x9c\\xf7%\\x13'\\xbf\\xdd\\xc4\\xa9\\xab9\\x10\\x9e\\\\\\x82\\xd5\\xd5g\\xd1\\xd4\\xc0\\xa1\\xbe\\xda[\\xa1\\x12$q\\x96D\\xc4\\xc3\\x90\\xd9\\x0d\\xe6\\xafv\\xd7\\x94\\xc4\\x1b\\x0c\\x92\\x1a\\x07\\xc0\\xff\\xe3*\\xcd\\xf2q)\\x90I\\xcd\\x91 \\xdaN\\xfc\\xc6\\x0c\\x00\\xe8\\xad=\\x05\\x85U\\xc3\\x81\\xd5(\\x13/_\\xf8\\xf9'\\xac\\x8dN\\x08=e\\xe4G\\xaf\\xfd(C\\x9b*{c\\xe8(\\xef.\\xd2\\x82\\xbf\\x1a\\xa8\\xaf\\xde\\xa3G8\\xa4\\xe8\\x1a\\xde\\xf8n\\x11\\xb6\\x1e*\\xda\\xd3_\\xa9\\xe39\\x17.\\xf5\\xe1{k\\xc2\\x95\\xef\\xa4a\\xe0\\xa2\\x13\\xb6\\xfaJ\\xc7\\xca\\xdc\\x05\\xab:|-U\\xb3\\xcb\\xb5\\xba\\xb2\\x9a\\xd3i*-B;\\xb6G{r\\x80\\x12\\x0c`\\xfa\\xfc|G\\xc8:\\xc2\\xec\\xfc\\xd6\\x9f\\xcfI:j\\x1d\\xfeM\\xe9\\xe4\\xc3\\xf2\\x8c\\xb3oT!X('\\xf6\\xacI\\xd5\\x84\\xb2a\\xa8\\x15\\xe6\\xe6^\\x96\\xfbi\\x9e\\xfd\\x1c\\xe6\\x0b\\xdb\\x1ay\\x03UTC{\\\\:\\xfd\\xfe\\x9c\\xfa\\xab\\xd7~@\\x0f\\xfd>SV\\x160\\xf1\\xf0j\\xb9\\xd0\\x84\\xe7C\\x91\\xd89\\xf6\\xb2\\x15\t\\xceIDh/2\\xcd#\\xbc\\xfb\\xb7,i\\x15\\xf7\\x89\\xa3\\xcc\\xf4\\xad. \\x8e\\xb8x\\xa7}\\xbb\\xa0\\x0cmi\t\\\\\\xd7\\x1e\\xd25\\xa8XH\\xff\\xfe\\x80\\xb1lb\\x9d\\xa5\\x80|}H\\xc3\\xb1\\xc6\\xdeF\\\\\\x0f\\x18\\xd5\\xd3\\xd4l\\xeeB\\xd8\\xf7x\\x85j0\\xe2\\xd4\\xb8\\xf5\\xd3\\xd8\\xb6p\\x95\\xde\\xa6\\xfejE\\xd21\\x04I\\x11M\\xe3\\x1fr\\x98\\x13\\x16\\x17\\xd4r\\xdc\\xa6\\x9fa\\xb3\t\\xad\\x17\\x99@dt{\\x0c\\xfe\\xa1\\x86\\xf4\\xcd\\x86[\\\"\\xe3\\xf2\\xcdGiZ\\x7f\\x15\\xaa\\x9bO0\\xae\\xcd\\x944\\xcc\\xf9\\xae\\xbe\\xc9v\\xbc\\x81g!\\x8d\\x9fW\\x0c\\xdan\\x17\\x13f\\xe6\\xfe\\x0f\\x9d.\\xeeU\\x1d\\x15:\\xc1\\xa7h\\xe3\\xcf\\x08\\x91J\\xde\\x8eqCE\\x02l?\\xe6\\\"\\xf7\\x0d\\xc3\\x88\\x1f-R\\x1c\\x1d\\xa8RBLy\\xd1\\xe4\\xd1d*\\xa0\\xa4\\x06\\x18\\xda\\x96\\\"\\xb2\\x887M\\x8e*\\xa5\\xfcb\\xd2\\xcaQ\\xea\\xa1\\xa7\\x0f\\xcf$\\x8f\\xa6\\x1f\\xaco\\xfa\\xc4V\\x16\\xae\\xbdL\\x03[\\x03\\x03\\xed\\xba\\\"\\x0d[s\\xa9tx?\\xd6\\xfc\\xb2\\xdb\\xcc\\x7f\\xae\\x8b\\xf9E\\x92D2\\xb3\\xd9\\xab}I\\x90\\xac\\xda\\xa7\\x0b\\xab\\x1bu1\\x84\\xdcv[uZ\\xf2+k\\x80\\xfa\\x99-\\x9f\\xb23\\xa6\\xf1\\xdc\\x95\\xa2\\xe6\\xd4\\x0b\\xab\\xd1s4\\x87\\x13\\xba\\xb4\\xa3\\xeb1\\xda\\xe8P\\xb4\\x8a\\xe4Qj\\xc7\\x8ekN\\xdb_\\x1e\\x0d\\xa2\\xdaZ\\x89\\x1a\\xe1\\xfe\\xd0h\\xcf\\x9a\\x93\\xdcb\\x91j\\xe8\\x9cg\\xe2\\xae\\xb9I\\xad\\xe7A@\\xb2\\x8c\\x9e\\x7f\\x18\\xab\\xb9X\\xd19#S\\xd36\\xb5\\x90d\\xe1u3\\x86\\x8c\\x99\\x87\\x95\\x0e)kn\\xe4~Vb\\x0dw\\x84\\xb5\\xac\\xc4\\x1e\\xd7\\xa4\\xbab\\xbe\\xa5\\xc9N\\xb7a\\x83\\xcb\\x81\\xce\\x88,\\xb6w\\xf6v\\xb5\\x8a\\x91}Uz[\\xf0\\xe2\\xaa\\xe7\\x02J\\x9f\\xecCu\\xafD\\xac\\xd1]u\\xe4L\\xf1\\xaf\\x96\\x9ei\\\\\\xadV\\x18\\xb0\\xb3\\x0eS\\xb4L\\x9b\\x93\\xfcc\\x92Dd\\xaa\\xe6\\x87Xh\\xe4\\x1a7%2)\\x1f\\x97'\\xeb\\xb2\\xc1\\x1d\\x9cy\\x98\\xde\\xea\\x13\t\\x928\\x08#r\\x91\\xfaq\\xe6\\xb3\\xd2O\\x9e\\xc0\\x0d0'\\xff\\xe1h\\xc72YOP\\xeem\\xa2l\\xdb8\\xccY6\\xcfq;\\xe3\\xc5<]\\xc34\\xbf+i\\xdb\\x8ce\\x18\\xc3\\xbc\\x18\\xecX\\xae}\\xa5\\x88\\xa54\\x82\\xabu\\x1a\\xd98\\xa9\\x9a\\x81S\\xb0g(\\xb5\\x0d\\x08%\\x19\\xcd\\x9f9.\\xdc\\xdaH\\xfe\\x95\\xdf\\x9e\\x18\\xc3\\xb0?\\xa8t\\xe6z\\xc0\t\\xfc(\\xba\\xf6\\x83/\\xff\\xbb \\x05\\xf1R\\x92\\x91\\\\\\x11{<\\x16\\\"\\xf5\\x9a\\xe3$\\x0fgw\\xcf\\xa3H\\xad\\xbd\\x1a\\xc8\\xa5nI\\xdd5\\xe3\\xff1\\x1f\\xe7j\\x98\\xd2\\x9a\\xb2\\x9d6\\xb8\\xf2\\x95\\xebj\\xfa\\xd7\\xd8\\x07\\xa2\\x19\\xcd\\xba=i[\\xd5R%\\x1b\\x83v\\xdb\\xa8\\xeb6\\xe35\\xe2]-\\x93\\\"\\xce1\\x15\\x06lA.\\xdf\\xb7V{\\xd5F\\xdej\\xe1\\xa2\\x88G\\xeb\\xab\\x96\\xc5\\xfe\\x18\\x8ev-\\xc4\\x9c\\xe2\\xb9C\\x7ffI\\x9a\\xdb\\xd7\\x8e\\x0b\\xab\\xcd\\xcdz%Ud\\xba*\\xaca\\xce\\xa3\\x1a6\\xd7\\x0b\\x17tR\\x04:\\x9b\\xc4\\x06\\x0fQ\\x1f\\xe7\\xe8jE\\xe2i\\x18\\xcf_\\xf2\\xd9\\xcb\\x9a\\x0c\\x1c\\xba\\x156\\x0b\\x96\\xb3_xQ2\\xbfHVo\\xc9\\x0d\\x89>a\\x88'c\\xa0\\xa3\\x1b\\x1e\\xbd\\xd6\\x90\\x9e(\\xf4\\xae\\x82\\\"MI\\x9cs\\xc6\\x0c\\xf3\\x89c\\x9e\\x03?\\xc8E\\x1b?3\\x16\\x0b\\x8f\\xe4\\x88\\x8d\\xa2\\x11g\\xcba\\n\\x03\\x8be\\x03,VS?',\\xb8WD\\x97\\xd4{\\x7fI\\xe8\\xaa\\x14\\x0c\\\\\\x1e.\\x89\\x9dt\\x19\\xab\\x00\\x87F\\xe6\\xadH:K\\xd2\\xe5g\\xac\\xf7\\xcd\\xec=\\xa1\\x84\\x85\\x9f\\xde\\xd9\\xa1\\x8bF\\x0d\\xcd\\x85\\xcct\\xa7\t*n\\xa5F\\xcf\\xe2)\\x8b\\x0c\\xae\\xe7>{D\\xbe#\\nf \\xf1\\xaf\\xf4\\xaf\\xedO\\x82K\\x97\\xef\\xc2\\xe2:\\n\\x03\\x11\\xb8\\xc6V}>\\xfe\\xd4\\xfc\\x95\\xd8\\xb2\\xdf\\x19D*R\\x9c\\x93\\\\\\x1a\\x1b\\x9f\\x90\\xac\\x03\\x8d\\xf1\\xad8oC\\x87\\xc2-4I\\xfb\\xe0\\xc4v\\xb4\\x14z)\\x89\\x88\\x9f\\x11\\xbb\\x89\\xa0\\x1c\\x03\\xd6b_\\xb6!\\xa4Z\\x9d\\xba\\x99\\xee@v]\\xa1\\x86\\xf8\\xd2\\xea&\\xb6\\xa1\\x02i$\\x16$\\xcf\\xd1\\x89>M\\xc6N\\x88\\xc2-E\\\\\\xd0\\x93\\xe2\\xd5R\\xa1k\\xd6\\xf3\\xa7S\\x8a\\x9c\\xc3x~\\x91\\xd8w\\x8a8\\xef\\xb6M\\xcc\\xc9\\xa3\\x0b\\x95h\\xf1\\xfe\\x1e\\x16\\xc6(Y\\xb3\\x0e\\xb7:\\xa1\\x88\\xbb\\x93\\x8f\\x1c=\\x86!b\\xf0\\xf6\\x95HKO\\xd7\\xc2]9\\xad\\xba\\xd4v\\xdaN\\x19{\\xc3\\xa8<}\\xf3\\xe2\\xe4\\xd0\\x04\\xb5\\x03-\\xfd\\x08\\xb9|\\xd4\\xd7\\xd6tWG\\x8d\\x82\\xa4\\xb3\\x06/`\\\\\\xed,2V}\\x81^Sn\\x8cL\\x19\\xee\\xcb\\x9a\\xeb\\xb4\\xcc\\x17\\xd3\\xb2`\\x97t,7^\\xbd\\xaaf\\x05m\\xfb\\x84\\xe3\\xb9\\xcf\\x1c\\xb5\\x97\\xe75\\xd1\\xdbP\\xf2\\x16\\xc3\\xec\\x05m3\\x8c\\xe7\\xbcQFFb\\xa0\\x81\\x9c\\x0b\\xe8PZ\\xe0]\\xb1C\\x03\\x8b\\xbfGm\\x08\\x17Ji^\\x9c`N\\xbc!\\xd2\\x98\\xdaQ\\xb5\\x8ed\\x16\\x15\\xd9\\xe2\\x85\\x02\\xd5[\\x85\\x19\\x8a)G\\xceT\\xca\\xcd\\xe5\\x88/\\xf5\\xf3g\\x16\\xb1\\x88\\x8b\\x94L\\xc3\\xbe\\xe5\\xb4\\xe2>\\xbd\\xb6\\xb0I^\\xb0\\xfe\\x08@\\x9f\\xe7\\xa9\\x9f\\x93\\xf9\\xddz}9\\xa0}\\xd1gOQ\\x00\\\\\\x92T\\x87\\xf8\\xc95\\xdd:\\xbe\\xf2Es\\xda\\xc5GO\\xe9G7\\xfa\\x91\\xb5M\\x9a\\x9f\\xf9\\xab\\x1e\\xa9T\\x03[\\xb3\\xe6\\\\N\\x97\\xf0[\\x8f\\xd5\\xf5\\xd2\\x8f\\x7f\\xc8\\xc5\\xb2\\x06?\\xc6&@\\x1cP\\x10\\xc6\\xe0c\\xe8E\\xf25\\x87\\xdb\\x05II\\xc1\\x87\\xe2c\\x08\\x85\\x1c\\xaeI\\x18\\xcf\\xc5\\xf6\\xf4\\xe8\\xb8\\xa6%5\\x80\\xfds\\x19n2\\xb2>z\\x81\\xd6\\x19>]C\\xce\\xb0\\x11\\xdb{C\\xc7l\\xb4\\xc3q\\xc0\\x01\\x9d!\\xbd*\\xe9\\xf7\\x07\\x17,\\xbf\\xa1B\\x02FytP\\x06r\\x13]s\\xeaxU\\x9c\\x8c\\x87G\\xa84\\xc5\\xd3.O9\\xcc~@\\xc1\\xf2T\\x17\\x1f\\x07_\\x8d\\x86\\xea\\xab\\xd0\\x14h\\xa2\\xd4b\\xa0\\xcd_\\x861!\\xe4\\xf7\\xa5\\xf6\\xa4\\xd3[^\\xc8tUSWz=@\\xd7\\x8e\\x95\\xf5\\x0b\\xdd\\x1d%U|\\xaf$\\xe5Q\\xcf\\xe4\\xd7,\\xe2i\\xa9\\xa0\\xa9\\xcc*O\\xab1\\x8e\\x0d]]\\xcf\\x83\\xe8\\xbb*D\\xc4/\\xd9;\\xb1\\x1b\\x18\\xd2\\xac\\x9d@hW\\xfa\\xae\\xd6)\\xe3\\xfd\\x97\\xc3JR\\xe8H\\x86\\x00c\\xd4\\x03U\\xddk\\x9d\\xc3\\x7f\\xc4\\xfc\\xad\\xd1\\xf7\\xc7oG\\xb3\\xd4\\x93\\xb3\\x97J\\xc4O}S&\\xfc\\xd6\t\\xd0\\x9a^Bgx\\xfe=\\xc6(\tT\\x0d\\x86\\xe6\\xaa\\x84\\x94\\x0bTu\\xf2T;\\xb6\\x9f:.L\\xaci\\x98\\xad\\xe8\\x01\\xf2\\x12=\\xa9-\\x17\\xac\\xab\\xdcOylVz\\x1b\\xfbyx\\xc3\\xfc+1\\x96c\\xf6\\x8a\\xcd\\xf7\\xc7\\x94\\xd0gd\\xca\\x9eRT\\xee\\xcf\\xd1\\x08\\xee<OV+\\xf6\\xfcJT_\\xbaf\\xd6\\x9e\\n\\x0e5\\xb3.5\\xc2]\\x0d\\x0fx\\xb7\\\":\\n\\x15\\xdfa\\xafMo\\xf92\\xb8\\xe0\\x85B\\xd5|\\xa3\\xf9\\x05\\x8e\\xee\\xe3\\xc2\\xcf\\x8c-^\\x17\\xd7\\xd7\\x11%\\xdd\\x0cM\\xd2\\x91E\\xcc\\xf7\\xdc\\xd0\\xe5pI\\xces\\x7f\\xb9\\xea\\xc2\\xbb \\xcb\\xb5\\xca\\xaf(\\xe9\\xf4\\xca\\xcf\\x89\\x17'\\xb7\\x1aS+\\x0d\\x9d6U\\xa6\\xce\\xd4\\xb10\\xbbH\\x8b\\xac,P{\\xafE\\xbdY\\x8b\\xe53g\\xdc\\xe5e&\\x85\\x9f\\x94V\\x1b\\x0fZN\\x9fJ\\x8b\\x0e\\x1aI:\\x84n<\\xaf\\x05\\x94LR\\x0f\\xc3\\xdb\\xcf\\xfc\\x80\\x18di>\\xa5\\xa94B\\x1f\\xca\\xdd%j\\xd8p\\xdf\\x18K\\xdb\\x10\\x1d\\xad4\\xfb\\xd3ft\\x03\\\\\\xd4\\xa7\\xd8i\\x96\\x01\\x8e{\\xe3Y\\x0c\\x00\\xec`\\xf0y\t\\x8f=D\\xc5\\xecX\\xfa&\\x9e\\xf8\\x9a\\xdc!\\x0d\\xe8\\x08Y\\x1d\\xe6B\\xf5\\xd4Y\\x87S\\xdd\\xc31l\\xb08\\x8e1\\xb7\\xde\\xfb\\xa9i\\xbc(i\\x84\\xbd&\\\"\\x80\\x13\\xa0\\xdcU\\xd8\\xb0\\x9aR\\xf6\\x1bZY\\x89\\xc8\\x9d\\x1a\\xc4\\x81<\\xb1\\xbe\\xfc\\x9f\\x9acN\\xedL\\x96\\\\\\xd5\\xa7l\\xc5\\xfa\\xf6J\\x9c\\xea=$L\\xcdAmh&\\\\H \\xd4\\xd5\\xda,\\xc9t\\xd5\\xc4\\xabw\\x05}\\xa1\\xea\\x8fl\\x87\\xd9\\xf8a\\x88\\xcc:7#M\\x08\\xafM~r\\x02h\\xadf\\x9e\\x95\\xc6\\x8c\\xb4r\\xa7Y\\x9e\\xac\\xa4I\\xe9\\x00\\xda\\xfa\\x80P\\xeaGH(\\xcfZ@\\xc1\\xb0\\xea\\x0bD\\xbd\\xbc\\xc2\\xda\\xa3\\x13\\xa6\\x80\\xee\\xbd\\xb8:\\xc1\\xb1\\\"i\\x86\\x99\\xc4\\xbb\\xd7N\\x98}d\\x85\\x19\\xdaj\\xb4\\xd3\\xd6\\x8c\\xfc\\xadv\\xbf\\xd4J\\xf7\\x96\\x9a\\xd6\\xa6\\xa7\\x07\\xae\\x84z\\x0c\\x0d\\x96\\xd1\\x0c\\xf1\\x0f\\xd3\\x84k\\xa3\\xd3\\xeb\\x94\\x15\\x95\\xd0\\x9aebB\\x146\\x89//\\xb5\\x12\\xd1j_;.dU\\xe7\\x98kc\\xe6\\xf9\\xc5|I\\xe2\\xfce\\xe4g\\xbd\\x1dNd\\xb8\\xa8\\xbe'5\\x1f.\\x84\\x8d!b\\xda\\x0d\\x8fn\\x10\\x93[\\xf5\\x18J\\x99\\xec\\xbf\\xfc\\xd0\\xa9\\xdda\\\"\\x16\\xf9A\\x9d\\x98\\x06\\x8c\\xa6.\\x8f3E&\\x18\\xfbR>f<<Q\\x87\\x8f\\x85\\xe4g.$u\\xd1,\\xa1OfI\\x91\\n\\xcbQ\\x94/\\xa65\\x9bE\\xe5\\x93\\xcc\\xf0\\xc97\\xb9\\\\=\\xdd\\xed4\\xba\\xea2,\\x91\\xf8\\x87\\xdc\\xe4\\x91 \\xc2\\xb2iE\\xe6m\\xd1\\xd1T\\xc3\\xcaVc\\xc8\\x92\\x02c2\\xf7\\x86\\xb0\\\\\\\\\\x9a\\xe0amA\\xd4\\x1a}\\xe8\\x08\\\\\\xd7\\xec\\x8610\\x9a\\xa9';\\xfd{\\xd2\\x92A\\x16L\\x9dquD\\x164\\x851\\xf5\\xed\\xa44\\xde&\\x7f\\x10\\xa1\\xdc\\x8cq\\xdcT~\\xbd\\xf7\\x82\\xddU\\xddl\\xb9\\x17\\xd2\\x9ea\\x1d\\x0b\\x03\\xaa\\xae\\xf5\\xcc{\\x9ez3^\\\"\\xb1\\x87\\xb4\\x98\\x89so\\xad\\xa5\\x7f\\xd4\\xaa\\xf59\\xdaV\\x83\\xad\\x8d\\x0d\\xa2\\x9a\\x1f\\xf4J\\xd9f\\x14@vv\\xfa\\xa6\\xf4\\x1elD\\xb3\\x11Ez{\\\"\\nf\\xdd\\x1c\\xcf\\xe6\\xdb\\xc1WK\\x02Re\\x84\\x93l\\xd2\\x98\\xd4\\x97v\\x01\\x96$_$SHb\\x00\\x16\\xe0UKmw\\xcdq/\\xe1AK\\xa4\\xf8\\xed\\x1f7\\xea\\x13\\xf7#\\\\,\\x08\\\\\\x17\\xb3\\x19Ia\\xc9\\xe4e\\xb34YB\\x9cL\\x89\\xf7\\xf7\\xcc\\xc5\\x03?\\xa7e\\xd2\\xe46#\\xa9\\xa7|\\xafV\\xf7\\xaf~\\x91/\\x92\\x14\\x00^\\x934\\xc92x~\\x9d\\x14_\\x16\\xfe4\\xfc;Y\\xc0\\xf1\\x0c\\x1f\\xfe+\\xfb\\xe3%\\xe9\\xfc\\x19\\x1c/\\xf2|5\\xde\\xde\\x96\\x9e5*\\x15\\x19:k):\\xd9\\xcb\\xed\\xda}\\xb5\\xbb\\xf7F\\xaa\\x9d\\x17\\x94[|\\xaf\\xe1\\x1e\\x0c\\xa5\\x08e\\xb4?\\x94M\\xb0\\xa1.ulY\\xf9\\x99w\\xf1\\xb7\\x8fg\\xaf\\xae\\x9e\\x7f\\xfa\\xf4\\xfcoW\\xe7\\x9f?~\\xfc\\xf0\\xe9\\x02Na4\\xdc=\\xd8=\\xdc\\xd9\\xdf=\\x801\\x0c\\x07\\x07;\\x07\\xbb\\xc3\\xc3\\x91\\xe2}jh\\xb00\\xea\\x1e\\xe8\\xe2\\xa3\\xdd9\\xaeG\t\\xf9\\xe4\\xc7s503\\xa5H\\xa6\\xe0\\xa7\\xa9\\x7f\\x07\\x8cPkI8h\\x1a\\x85M8e\\xf49\\x8c\\xf3C\\x16\\x10=w\\x1c\\xef\\xea\\n\\xa9\\x9e\\xab+\\x8c\\xf3]\\x91D\\xe3Z\\xf2D$\\xdey\\x05\\x19\\xfd\\x8eR\\x1a\\xa5\\xb9V^\\xb3\\xb6\\x84\\x16xdm\\xfar\\x96\\xc7L?\\x80\\xfb{\\xa4\\xa4\\xe4\\x00\\xb0\\x99S\\xcb.^U\\xdd\\x84\\x0d\\x9a\\xa26\\xbd\\xa6\\x8c\\xf2\\x9b\\x9a\\xe7\\xc9\\x89>\\x9e\\x8b\\x98\\xa4\\x19\\x908H\\xa6a<\\xafgD\\xc8\\x17$\\xc6\\x8d\\x87\\xc9\\xd2\\xca\\xc3\\x0fD\\xe0\\x17\\x1fx\\x03\\x06e\\xb88c\\xb9\\xc1@/\\xd57\\xffF\\x18\\x19\\x18\\xcc\\x04\\xf4S\\x13\\xb5\\x88\\x85\\xc0\\x0cCC\\x8c\\x9b\\x1f\\x84}n}\\xdc<\\x9b\\xa6\\x0f\\xac\\xa2\\x16gp\\xbd\\x03\\x1d\\xae\\xdb\\x17\\x0c\\xdb=y\\x82LO\\xb9\\x1e\\xe4w\\xcdC\\xbe\\x85P\\xc3\\xd0>\\xde\\xf5]N\\xde\\xf2l\\xdd1FWA\\xcf\\xf3\\xea1\\x1cWv\\xcb\\xeaV\\xfd!\\x99\\xcd2\\x92\\xff@\\x97@R\\xe4\\x90\\xcc\\xe0:)\\xe2if\\x9a]\\xb5MZ9l\\x82\\x8d\\xb6\\xfd\\x03\\xc7\\xd8\\x0e\\xdbs\\xfd\\xdb\\xc9\\xeb\\x99\\xd1\\x99!juO!\\xd5@\\nuE\\x80\\xae\\x08n\\xe0\\xb1\\xee1\\x05\\xb3\\xbe'\\xad\\x88)oCD\\xb4\\x00\\xcf|\\xd8\\xbaU4J\\xe2\\xda\\xec\\x8f\\xf5\\xde,\\xdd\\x04\\xa1\\xb84\\x9f#@\\xcb\\xe8\\x0e\\xf7\\xf7\\xcc\\xed\\xde*\\xf2\\xd9a\\xdb\\xd4od^\\x98\\x9dq\\xbca\\xc7\\x8ei\\x13\t\\xd4bIh\\x83\\x1d\\n\\xac+%\\xee\\xd1\\xed$\\x90\\xce\\xd3\\x01\\xdc\\xc3\\x82M\\x9c\\xde\\xe2\\x10\\xf8\\xe1\\x8a\\xd3\\x81\\xc7V\\xea8\\xdem\\x1a\\xe6<N\\x9c\\xbe\\xfe\\x04G\\x9e\\x96\\x07\\x04\\xe1\\x91\\xcc\\x06\\x94\\xafx\\xf4t9]\\xc9\\x80\\xc5\\xc5\\x0c\\xfe\\xc2\\x8cm{\\xcc\\xcfd\\xe6\\x7fJ\\xa9\\x07\\xdc\\xc3\\xd4\\x16\\x8eJ\\xdd^ql\\x1fT\\x80\\x89\\x1d\\xa72s\\xc6\\x932\\xf7\\x82duG\\xdf\\x0d\\xf0_\\xech\\x116h\\x916@Gt1Q\\xa0\\x1fJ\\xf481h\\xc0\\x8c\\xf7\\xf7`q\\\"\\x02\\xc2Xb\\xd3K\\xdc.yZJ\\x06`\\x18\\xc6\\xa1\\x84\\x19-\\x94b\\xe8\\x1a:f\\x8ce\\xd7\\xb6A\\xcb\\x11\\xb0N\\xf0hyh?\\n\\x18\\xc0&\\xf7\\xa6~\\xeeW\\x07:\\xab\\x8d=\\\\\\x03\\x8c\\xb8\\xda\\x0d\\x88P\\x97\\xfa\\xe2u\\xfb\\xd1\\xec\\x02\\xeb\\xaf+C\\x90\\xdf\\xb8\\x90\\xa4\\x8c&\\xdb\\x8a\\xc2/\\\"\\x8e\\x9bgi\\x8ei\\x85}\\x81\\x96CX\\x93\\xb8\\x16\\xd4\\xb3wC\\xa6_\\xf4h#\\x0b\\x7fk\\x1c\\xbd\\x1d\\xc7.\\x8bTyL'S{\\xf4\\xe8+\\xe5\\xe7yL\\xe6(MV\\xb3\\x98\\x19F\\xa9\\x8f\\xd0(z\\x11\\xa0\\xadW\\xb9\\xdbr\\x1e\\xe9l\\x00c\\xb1s)\\xf9\\xb9\\xa1=O:\\x0cu\\xeb\\x06\\xda\\x9b\\x9b\\xb1#\\x82\\xe4i\\xd4\\x06Z4e\\x1a\\x92>3/HX\\xa7\\xdcL\\x8d\\xe1\\x98\\x11\\x91\\x84rZ$\\xb9)\\x1bUJi\\x08\\xfag\\xf3\\x04\\x86t`\\x18\\xbax\\xb4\\xb7\\x07O \\x9f\\xa4\\x1a=\\xd7Z#\\xd4$^\\x85r\\xdd<;\\xa1\\xbc\\x95\\x89jy^e\\x96\\xf1#\\x0c\\xbfB\\xf8\\xce\\x82\\xc8O\\xe7\\x842\\xa8~\\x0cK\\xffk\\xb8,\\x96\\x90\\xa1;\\xc7\\xe0+\\xe5\\xb3}9\\xcd\\xf5p\\xdfAWNJ6i)\\x9e\\x12a\\xdf\\xf7\\x1c\\xd4\\xa2u%J'\\x8b\\x9c;JH\\xcb\\xf5\\xdb\\xb4\\x0f\\x92\\xd6\\xdasHe\\xbc0\\xfb)$,\\xd0H\\xf31\\x9d\\x88\\xfb{ \\x06\\x14/\\xf7\\xb4\\\"0\\x9b\\xbd\\xd5\\xb8\\xd6W\\x8c\\x9e\\xa5\\x13r\\x80\\xb4\\x9c\\xdb\\xa1\\xc0\\xa9\\xcd\\xb2'\\x9a\\xedU[\\xbe\\x1b\\xc3\\xa3#\\xa7\\x14\\x0d\\x1bOB\\x14\\x88Z~\\x16\\x84\\xa1\\xa5\\x17\\x8b\\xb2\\x12\\x91\\x9f\\x87\\xf1\\xb0\\xb5\\xc8u\\x18\\xfb\\xe9\\x9d\\xa1\\x08H\\x12(\\xfdq\\xc2*A2\\xaf\\xad\\x95\\\"\\x9fm\\xb5\\x96`\\x84vg/^\\xdb\\xc41\\x02\\x1c\\xaa\\xe6\\x82l\\xd4\\xde\\x9f \\xdb\\xea(\\x91\\xcf\\x86\\xfb\\x11\\xe9*\\xb3\\xd5R\\x08\\xaa~\\x8f\\xe0\\xc7v\\x08.\\xc8\\xd7\\xeeZbx\\xf6\\xec\\x19\\x18\\xac\\xb6\\xf9t\\xfa\\x19\\xd9\\xdf\\xed\\xae\\xea\\xb7.@\\n\\xa32cE\\xa8\\xedpzO\\x0cp&\\xcc\\xc6\\x1d\\x95;\\xf5\\xe8f.\\xcf\\x8f\\xd6\\xf8T\\x95\\xbe\\xeb\\xd1\\xd7M\\x1b\\xc7\\\"\\xf6\\x16\\xd1F\\xc6\\xe7riz\\xfc\\xb9\\xe2\\x10L{5\\xba\\x94\\x98*\\x83\\xc6\\xa1B\\x01\\xa4\\xa4\\x189\\xc0\\xb64\\xd3h\\x10\\xb7\\xc4\\x94;L\\x99\\xf0\\x1cOn\\xe49\\xe1\\x99,\\x91;\\xc575\\x11\\x1d=\\xdd\\xb7\\xca'\\x87 b\\xa1I\\xcf\\x1cV\\xe1f\\xecB\\x98\\xbd\\xf7\\xdf\\xdb\\xb1S\\x16K\\xf8\\xe1\\\\\\xca\\xb7\\xb6`\\xe8\\x08\\x91\\x80(T\\xbe\\xdcDZ?\\xa6\\x07 \\xe9p\\x84@\\xcb\\x95V8\\x00\\x8f\\xfe$7\\xdd\\\\\\x19@\\xa2\\x8c`m1\\xa3\\xd7\\xcc\\xcdm\\xf4k\\xafk\\xf9A\\x8bH\\x8c\\xd9\\xdd#\\xcf>K\\x93%\\xe5\\x15S\\x07\\x15\\xc35\\xae\\xac\\xc6J\\xe5\\x15\\xfb\\xb45\\x841\\xcc\\x95\\x15eX!Z\\xe1\\x13\\xaf8\\x87'H\\xeb\\xb8\\x069\\x83\\xe9\\xd0\\xad\\xc4\\x17\\x92\\xf6\\x97\\xc7\\xd9\\xc5\\x08\\xa4\\xa7\\xadE*\\xf5\\x04\\xe7Z\\xb5\\x85#?\\xcb\\xdf\\x18>\\xc0\\xb1O\\xf2\\xcb\\xb6\\xd1ky\\x97\\x1b?*\t{\\xc1\\xae0\\x08Q\\xce\\x843Z\\xfd\\xe8q\\x15\\xfe\\x06d\\x12\\xb2\\xf0l\\x86\\xd8o\\x85\\xb4p\\xf5%2\\x89\\n\\xd6O\\xb1\\x14\\\\\\x95\\x89\\x14\\xd8\\x89\\xc6\\xf8\\xef\\xb4\\x8a\\xc6\\x99*h\\x14\\xe9!~\\xb8q\\xa1\\x15>\\xe0gY\\xfd\\xd1\\x96\\xf4\\xcc(/@\\xb2\\xb6\\xa2\\xd8GL\\x18X\\xddw\\xee+\\x9fEO-`\\x9bEQ\\xe5\\x7fc\\xfc\\xab\\xd9o\\x8dG\\x8a`\\xd6\\xd4Q\\xde\\x8dai\\x92FX\\x00{\\xe2\\xa5\\xc4\\x9f~~\\x13\\xe7\\xc3\\xfd\\x17gv\\x0e?\\xea\\xdc\\x18\\xf5\\xfb\\xdc\\xa8E\\x16\\xce\\x8e\\xa6A#M\\x87j\\x98#\\x08\\xe1\\x18\\x8a#\\x0877\\xf5L\\x19\\xf0\\xc6px\\xa1\\x83\\xfdG\\xad4OQ\\x1cp<\\x1c\\xc2\\x16\\x04\\xadr\\x1dQS\\xf9!]9\\xb4\\x9b\\xa1\\xe3\\xb2\\xcfa\\x93\\x03(+\\xe7-\\xa0\\x001V\\xc9\\x91\\xec\\x16K\\\"\\xc1j\\x0ca\\xeb\\x84\\xf7\\xc6\\xe5P0 g3lb\\xd8\\x84\\x0c\\x9eAQ\\x9e$\\x05lA\\xe60\\x7f`\\x84\\xda3d\\xe6\\xc2\\xad\\xad\\xb6!\\x97\\xc4\\xf3\\x8c\\x07\\x0b\\\\1\\x1ep\\x05\\xc7\\x90\\x1d\\xc1\\xaa\\x0d\\xe8P\\x03<l\\xc2\\xca\\xc1Q\\\"\\xf0W\\x9d\\x90\\xa6\\xd7\\xac\\xc5\\x8bN\\xbe\\xaeS\\xe2\\x7fi-\\xa5\\x97\\xe3\\x00\\xef\\xe2\\xac\\x9c\\xaeP[\\xce\\xa8\\x01Q\\xa6\\xc6\\x84\\xf8\\xee:\\xb4\\x03t\\x82\\x98\\x17\\x19\\xa5\\x10\\xee\\xefu|\\x8c\\xb0p\\x95\\x0em\\x0d\\xc5\\x9b\\nZ\\x86WG1\\xcf3\\xe6q,\\x02\\xa4\\x8e\\x91ZK\\xf4-\\x84\\x9d\\xb83\\x84\\xff\\x05#\\xca\\xcb\\x0d\\xf4R\\xa1R\\x9d\\xb8 _[TO)<\\x83\\x10\\xb6aTv\\x0d\\xef\\xda\\xe4\\x0f>[{>\\x1cCz\\x04\\x9b\\x9b~\\x1b\\xfa\\xa0\\xc7\\x84\\x9c\\xf7\\xa2\\xb8\\xce\\xf2\\xd4\\xa6|\\x82\\xef\\x02O\\x8d\\xa1_X8H\\xa4\\xd6\\x8a\\x8a\\xa0\\xf0\\xf5e\\xc9\\x84\\xee4f\\xba\\xdb\\x03\\xe9\\x89\\xcaz-\\x9a\\xeb\\x8eE\\xc3+{a\\xbf\\xa6\\x1bJ^\\x16\\x0e\\xaa\\xe4\\x9a&@\\xa6\\x96\\xae\\xfa\\xb6d6\\x18(\\xeb\\x94smM.]Y\\x14V\\xb2\\xf2L\\\"\\x963\\x87K&8\\\"r\\x02\\x94\\xb8C\\xa2\\xafK\\xa8\\x98\\xaf;\\xe8\\xdb~\\x83\\xae\\xc1\\xa6W\\xc5g\\xfd*~a\\xff\\xb6~\\xa7\\xbf\\xf6\\xad\\xbb\\x97V\\xa3\\x92W\\x96\\xde\\xb6|\\xd6\\xa4\\xadF\\xa4\\xa0\\x15\\x1b\\xb6\\x9d\\xd3\\xd3i\\x84i!\\x1c\\xbe\t\\x19+!\\xcd\\x9f\\xcf\\xf9M\\xcaO\\xc3!\\x8f\\xdaL\\xd1\\xc6\\xde\\xbe\\x0b!\\x9b\\xf6\\xc4)\\x7f\\x9a4yF\\x94\\xfc\\xf0\\xad\\x0b\\xfe\\xbc\\x8d\\x9f\\xad\\xb3\\x10t\\xd8q\\x8d\\xc5\\x84SH\\x91\\x07yq\\x97\\x13\\x91\\xf1\\x9dbU\\xf5!WQ\\xe5u\\x9b\\xae\\xb6~\\xbdl\\xeb\\x17\\x05\\xf3;?_x\\xcb0.i\\xc6\\x1e\\\"[:\\x9f\\xe8\\x1aq\\x04\t\\x8an\\xdb\\xd0&\\xa5\\xbd]\\xb4\\xafu1F\\x07\\x99$-\\xc9\\xe5\\x03\\x11,\\xc1X\\x82\\x9e\\xe0\\x11e\\xa5w\\x9e\\xc2)\\xec\\xc2\\x98\\xdd\\x8dv\\xe0\\x14v\\xf8\\xdd\\xf0\\xe9\\x10Na\\x04c\\x93\\xe8\\x05iE\\xd8\\x84\\x19\\x1c\\xa3\\xb0O\\xc8\\xeffm4D\\x9f\\x04\\xb8\\x11\\x1c\\xc3ptX\\x12rQ\\x8b^\t\\x04\\x9da.\\xd2'-.m\\x8er\\x19\\xc3\\xa7#x\\xc2\\x88X2\\xa1\\x83\\x1b^:L8@\\xd9\\x17{g\\x08O r\\xe0\\xf8\\x18\\xf6\\xe1\\x1e\\xf6w\\xe0\t%^\\x9f\\x89\\x0cb\\xd8\\xdd\\xec;t\\xd7`\\xf6).\\xb9\\x7f<3>\\xde\\x8d.]e(!\\xf6\\xbe\\xfe\\xcc\\x97F4\\xdc+G4\\x1c\\xc1=\\xd8bL\\xf2\\x10}:\\xc4\\xd1`\\xf7\\x80\\x7fw\\xcc\\x13\\x96\\xdd\\xdf#9+%x\\xfb^\\xe3\\xdf}\\xfc\\xf8\\x8b\\xf2ng\\x0dh\\xd4\\x9f\\x15\\x06\\x08\\x1d*\\x10\\x92@\\xe6\\xd7AV8\\\"\\xef\\x1b\\xad\\x89\\x82\\x8c\\xa5\\x92\\x1bI`\\xd2\\x0eQO\\x12\\x97\\xc6X\\x94/\\xc2\\xcfi\\xdd;.\\xee\\xe4!\\xc5s\\x81\\xdc\\x9e\\x1d\\x94i\\xe4\\\\H\\x19>\\x0f\\x98\\x18u\\x00O\\x00\\xf3\\xc5\\xdd\\xb3I\\xe4\\xdc\\x0c\\xcb%w\\x0f<\\x95\\x1cer\\xc4w\\x18\\x1bg\\xf3\\x04fM\\x8co\\xc2\\xd2\\xdd\\x14\\xc9M\\x19\\xa7\\xa9M|\\x8a\\x8aq\\x8a^\\xbe\\x94$\\x9f&\\x1d\\x1d\\xb71>\\xe7b\\x10\\x9d\\xde\\x02$\\xdd\\x85\\xa5\\xc9V&\\xaeT\\xaf\\x0c\\x04(\\xc3\\xa2\\xa4\\xa8=\\xa4\\xc7\\xeb\\xe6I\\x9f\\xce\\xf0\\xe3&u\\x99j\\xeeK\\x07\\x11\\x157\\x81l7\\x8eO\\xf9.\\xf7\\xb8b\\xe9\\x84\\x1e\\x0e\\xb9w\\x1e%\\xb7\\xe5\\x93\\xf6y\\xd8$U\\x84N\\x82\\x12V\\x0dC\\xc0\\xba\\x95y\\xa8\\xba\\xb37\\x1b\\x1e8\\x90{o\\xde\\x9f\\x7f<{yq\\xf5\\xee\\xf9\\xffw\\xf5\\xe2o\\x17g\\xe7t=\\x0dL\\xb2\\xb8\\x139\\x89\\x0e1\\x98\\x05\\xe9\\x9fwy\\xf6\\x18\\x83\\xdf\\x0b\\xdf\\x1a\\xc5di\\xd8a\\xa2R\\xb3J2\\x9fie)\\xbd\\x00\\xb0\\xe5\\x18N\\x92\\x1e\\x01\\x13\\xc4\\xc5{\\xb5\\xdb\\x94\\x1f\\x89K\\x8f;\\x1e\\\\\\xd8\\x1dqZi\\x96$\\xb6c\\x14\\x87\\x12\\xca\\x901K\\xd3'O\\x84'x\\xf9\\xcc\\x1eb\\xc2\\xbcJ\\xa9\\xd8\\\\\\xaa\\x9d\\xd9\\x0d\\xf8\\x1864\\xb2\\x93\\xfa\\xbab\\xf1u\\xbe\\xbc\\xf3\\xbf\\x96\\x91\\xa3|\\x1b\\x05\\xcb\\xab$\\x89\\xce\\xc3\\xdf\\xe8t\\x1e\\x0e\\x9fb\\xf2\\xa1+\\xeea\\xd3\\xb9\\xe2\\xb5\\x13[sJT=\\xbf\\xb8`\\xbb\\x87\\x1f\\x8cT\\x7fd\\xf3\\xf0EZ\\x0b\\xcc\\x16!\\xb5\\xec Y\\xeb\\xa3v]\\xd1\\x91k\\xcb\\xb8\\x06\\xfb\\xc9st\\xf5\\xa7\\x0d\\xb1_\\x18\\x1c<d\\x11W\\xb2I\\xfd\\xd9%\\x93\\x98\\xd1W\\xfa@ \\x99\\xab\\xd4\\xd2\\x96/\\\\\\xefv\\xad\\xa4\\x04\\xaf\\x83\\x89\\xa9\\x11\\x10\\xed\\xac\\x07\\xfd5l?\\x854\\x10Y><h\\x06\\xc2\\xacI6\\x84d\\xe6}\\xa7:\\x0b\\xc0\\xb4*\\xef\\xcd\\xc22{\\xf4Xy(=\\xd1 \\xf8\\xae\\xd5\\x82@\\xf8\\x1cg\\xfe\\x8c\\xf4]\\xe23Qi{u\\xf4\\xb4\\xf8\\x1eU\\nmO\\xdf\\xba6\\x84y9\\x0b+\\xb4A\\xbc+Q\\x85\\xa6\\xf6 Y\\xae\\xfc\\x94ty\\x8d\\x80l^YZn`\\xfd\\x8a>J+!\\x13\\xdetY\\xa9Xa_hmM\\x98\\xe1K\\xdd\\xd5\\xad\\xcd\\xccAV\\xec16</\\xef\\x12\\x8cV\\x8bDm\\xc9I2SZd\\x0dC\\xca\\xd0\\x1b\\xdc\\xb4\\xb0\\x1b\\x93\\xe4\\x92\\xe5\\xce\\x9a$\\x97m\\x87H,8G\\xd6\\xfe$18\\xbfC\\xab\\xec\\xd6H\\xf4\\xc5p\\x8c\\xdb\\x01\\x95zh\\x8e\\x04\\xa7@\\x7f\\x0ft\\xebE\\x98\\xbfv\\xae\\x18\\xc1Vr\\xe5\\x0fi(\\x7f\\xf4\\x03\\xee20\\xf8^&\\x1c\\xff\\x03\\xf6(=l\\x1c\\xfeI\\x0d@t\\xfe\\xf8\\xd0\\xc7\\xcc\\xa27\\x9d\\xc0\\xd0C\\x1c\\xf8yo\\xec\\x10Ji\\x02T\\xd3\\xc9(\\xccr\\x9d\\xe9d\\xccL\\xac \\x99\t\\xa4`\\xb2\\xa24\\x18>\\x08\\x02ZGc\\xdf\\xd43\\xd0\\xc9\\xb5\\xd5\\\\j\\xb5\\xd0B\\x0c\\x933\\x0c\\xd2\\\"\\xd5\\xa5\\xbc\\x07\\x99\\xc4\\x97FvK\\xc8\\xa5j\\xc7\\x83\\xad\\xcb\\xb3\\x0f\\xdcV\\xdc\\x84\\xee\\xcc\\xbd0\\x13\\xe7>7F1\\xb3\\x812\\n\\xf7\\xff\\xa0\\xf9\\xa3\\x97\\xcf\\x8c\\xb9Q\\x13\\xce\\x19_\\xe1 \\xdf\\xb1\\x16\\xa1Z\\xb7is\\x91J\\xce\\x1e'\\xb0p\\xa1F\\xe9I\\xc7\\xe7\\xc6\\xa0\\xfe.\\xbb\\xf5W\\xc3\\xfd\\xb6x\\x9d\\xa0\\x06\\x0fh\\xd3\\x13\\x11\\xad\\x9eH6\\xd7\\xe4=\\xc9(\\x89]\\x99\\x0e/\\x8b(\\x0fW\\x11\\xa1\\x10\\x1c\\xeeo]\\x87\\xb9\\xf6X\\xac)\\x1a\\x06Gh\\xbeK\\x8e\\xd8\\xf2\\x1b9p#\\xe2\\x9f\\xba\\x98\\xb4R\\xc7\\x7f\te\\x82\\x1cB\\x04\\x04\\x10\\xeb`\\xd9\\x19}W\\xb0\\xec~#XvF\\x8f\\x02\\xcbn\\x03,;\\x8e[=\\xa2`b\\x7ftZ\\xb85\\xa0\\xb5\\xbf\\xfb]\\xa1u\\xf8\\x8d\\xd0\\xda\\xdf}\\x14\\xb4\\x0e\\x1b\\xd0:\\xd0Ck_y<b\\x7f\\xf6\\x94\\xc7;\\xec\\xcf\\xee\\xe3a+\\xec\\x93\\xfbBw\\x00\\xf7\\xed\\x10\\xaei:0\\x10\\x9b\\x85\\xd6\\xe2h\\xe2!h\\xd4J\\xeb\\xf1\\x92\\x8ff@)\\xf3\\x1e\\x9e\\xe9r\\x7f\\xd2\\x16M>\\x9d\\xe8\\xda\\xf9\\x83F0\\xcc\\xe6LX}a\\xfc\\x16x&\\x8f\\xa7\\xf2(\\xb1\\xfa\\xd5\\x8b~S\\xb1Z\\x890\\x90\\x90\\x1f\\xa2\\x19\\x1e.\\xba>M\\xa0\\xd9(\\x96>>\\xa1\\xbd\\xe5w\\x9d\\x1f\\xe3\\xeac\t\\xa4\\x89\\xe4\\xcc%\\x19(\\x1b\\xa5\\x1b\\xd0\\x83\\xee\\x14\\x17\\xef\\xc5\\xc7j1\\x9b\\x9c\\xac\\xa0\\x0f\\xb5\\n\\xbd(Vq\\xf1\\xc6_\\xae\\xd3x\\x1b\\x9d+.^\\xef\\xf3u\\xeam\\xa5\\x8e\\xa1\\x1f\\x85,.\\xde\\xfe\\x87u\\xda\\xef\\xb4\\x1d\\x86\\xaa\\xe2\\xf3u*n\\xa1\\xc6\\xa1\\x17E\\x0e=\\xa9rX\\x872\\x87j4\\x17\\xfdF\\xd3I\\xac\\x03\\x94v\\xd1Z\\xc6\\xfa3\\x8b\\x0eUz+\\x8e\\xb51\\x14\\xd4\\x8b0w\\xc4M\\xb0\\xac\\xbef\\xd3\\xa0\\xa5\\xc9\\x1eD\\x0c\\x12\\x1c\\xac)\\x0cI\\x1d\\xa9\\x93_\\x0b?j\\x8f\\x1f\\x01ZiC\\x87lA:\\x0c\\x85\\x8df\\xeb\\xc1\\xc3\\xcf\\x80\\xfb{\\x8e,KY\\x88\\xde/\\\\\\x19E\\x18g+L+\\xd6\\xefd2)F\\x98\\xffRC\\xca\\xdf\\xdaqq>=\\xe3f\\xd3%]Q\\xba\\xf3 \\x8e\\xe4\\xfe\\x92\\xde\\xd2\\xcf\\x83\\x85\\xbd\\xed\\xfd>z\\xd8\\x9e;\\xde\\xdf\\x930\\xb6-\\xb0Dx\\xb0\\xb22\\x9e\\xec\\x89\\xa5P\\xf7<\\x0f,\\xc7q\\xc1:\\xe6\\xf4\\x06\\xae+]6\\xf4:\\\\\\x0c\\xf2\\xa4N\\xa3\\xf6\\xef?\\xd5*\\x8fW;YU\\xcfmf{\\x8e\\xda\\x11\\x0e\\x90\\xb1Z.-\\xed\\xb6\\x94\\x17\\xcc\\xd6,i\\x9c\\xa8\\xb9\\xf0u\\xa7'pY\\xef\\xfd=\\np\\x06,\\xd5\\x9cr4\\xeb)>\\xee\\x8f\\x9e\\xd2G\\x80\\xf6\\xd1\\xa6\\xf1\\xa6\\xf0\\x8c\\xf7'\\xa7\\xbfZ\\xdd\\x84\\xaa\\xf2\\x9d.\\x04Je\\xe6RH\\x07\\xb8\\x10\\x97\\xbf\\xd2\\xf2WR\\xfe\\xaa6_/\\xf1^\\x88\\xae\\x03[t\\xf5`\\x0e,\\xd8\\xa2\\xcb\\xa9\\x90%z\\xa1\\x0b\\xbe\\xc3\\xcc7\\x10\\x9c\\xa5^0\\xe1*\\xd8\\x9ae\\n\\xd3\\xec\\x0e\\x8e`\\xc6\\x0ci77gf\t`4\\x991\t`0\\x99\\xb5J\\x00i7ia\\xd6KZ\\xda\\x8c\\x83\\x1f!\\x01\\x0c\\xe1\\x18\\x8d\\x90Q\\x02\\xe8\\xc31\\x84f\t\\xa0\\x8c\\xa5\\x82\\xa8\\x98\\x92>\\xb1\\xc6\\xa4\\xb6\\xb8q.\\x82\\x92\\x9b\\xe3\\xdbf\tz\\xd3\\xba\\x7f\\xad\\xc6\\x96\\xf5\\x90\\x1a\\x98:\\xaf\\xad\\x11\\xc9\\xe4\\xff[\\x1b\\x1a\\xb66\\x84\\x1e\\xfaz<fBbJ\\x94\\xb6\\x92\\xc4e\\xe2#i\\xa7\\xbb\\x9c\\xffj\\xd4Rz\\xa0\\xa8\\x08J\\x1f4%e\\xd1b\\xd7\\xaa]\\xbf\\x84\\x99\\xf8.{\\x1d\\xc6\\x18\\x97\\xc0\\xd1\\x04d\\xe1\\xae\\x92,r\\x81p\\x8c\\x10\\x84\\x87\\x0b,P\\xc7\\xc4\\xe5\\x91t.\\x1d\\x96\\x18\\x14\\xa2$\\x9eS~U\\xe4\\x1d4\\x07\\xd4\\xb8g\\xb2z\\xd1\\x89\\xd8\\x81S\\x8a\\x98\\xd9c-&\\xe6\\x1c\\x04\\xe5\\xcdd\\x7f&V\\xb6\\x8fQ\\xfe\\x8d\\x1cE\\xb74\\xaf\\xd3\\xc4\\xed4\\xb2V\\x89\\xe4\\xe0$\\x07\\xefyV:5\\x89\\x88'\\x8c\\xbf\\xc3_\\xbd\\xd0\\xbe\\xe4\\xdc\\xcb\\xd6bR\\xe4Y8-\\x83R\\x99\\xe3\\x93\\xa4e\\\\\\x01c\\xbc\\x8c\\x1az\\xad;\\x89\\x1aUz}\\xf8/\\xbe\\xd9\\xee\\x94@9\\xfa)\\xefd\\xbd\\xfa\\xb1]\\xbc\\xcd\\xeb5\\xda\\xec\\xe2\\xb8x\\x95WkT\\xf9\\xad\\xaa\\x08\\xa8\\x9a\\xbd]\\xa3\\xd9N\\x1e\\x8b\\xd7y\\xb6F\\x9d\\xfft\\xca\\x8e\\xaf\\xbd:\\xdf\\xc9M\\xa1\\xa1\\xfbZ\\x9c\\x94\\xc9R\\x17\\x80\\x1941\\xe7S\\xd5k\\x8a)\\x1c\\xbb\\x9dOUi\\xd7\\xbf\\x9d\\x7fx\\xdf\\xc5Qp\\x88\\xe8wh\\x8e\\xa1\\xe1E0\\x10=\\xcb1\\xf5s\\x7f\\x0c\\xaa'\\x1d\\xd2GU\\x1e-\\xef\\xcaOS\\x11\\x1b\\xcc\\xed\\xc6\\xa5J\\x8cM\\x8aX\\xbe\\xc0\t\\xec\\x0e\\x9e\\xee\\x9bB\\xc6=o;\\xb3\\x85\\x04M'Iz\\x8cYp\\xcd\\x1c\\x18u\\xbe\\xccfLcef\\xa3\\xc1)js\\xcd\\x0cd?\\x87\\xde\\x0f\\xff\\xacC\\xfc\\x1e\\x83\\xfb\\xd8gpf\\x1bD{\\xc3$\\xf5\\xb47\\xf8\\xe1*\\xb1Oiu\\xca\\xea\\xb6d\\x0d\\x08\\x96\\xc5\\xf6_\\xce\\\\\\xe5\\x10\\x18\\xa1\\xc3\\xf4M\\xbf\\xdad\\x12\\xb6\\x0c=\\xe95\\xf4\\x8b\\xb6\\xa1\\xd7L\\xd1\\x15\\xc6C\\xee\\xde\\x80u/-\\xf5x!\\xd7\\xe4$\\xa6YK'\\xe1%l\\xc2ho\\x1f~\\x84t\\x122\\x1b\\xeao\\x1c\\xcb\\xbb\\xb6\\xb1\\x08\\x8d\\xc4\\x105\\x12,6\\x869\\x92\\x8d\\xc5H@\\x91\\x10\\xbe\\x08\\xe3\\xdcl\\xdf\\xb1\\x89d\\x901\\xee\\xdbEz\\x17\\xc6s\\x0cl\\x82\\xe9\\xab\\xe1\\x9a\\xdc%\\xf1T\\xd0>\\x0cf=\\xbdp\\xdf\\xd4E\\x10\\x86\\x1cm}\\xa5\\x10?X\\xac\\x0f\\xda0@\\\\X\\\"\\xe2\\x87\\x984\\xd99\\xba\\xa8\\xf1\\xe5\\x1f\\x1a\\x03\\x03\\xa9\\x91\\xfe\\xd4\\xd8t\\xa6\\xeacz&IB\\x07s\\x1c\\xcc)\\xf9\\n\\xb2x\\xa1'D\\xff\\xde\\xc1\\x0c\\xe5\\xa5O\\x7f\\xce\\xed\\xa9\\xf7p\\xc2\\xf5z\\xc9\\xda\\xeeU\\xadud\\xaf\\x17\\x17Fu\\xc3\\x1d\\xee\\x8e\\x96\\\\\\x02\\xea!\\x9e`P\\x9e\\xe3c8\\x84\\x1f)\\xfd{\\n\t\\x8ca\\x08[\\x908\\x0e\\xdahk^\\xf4\\x1a\\xf0\\xfb\\xb5\\x06\\xbc;z\\xba\\xfbt\\xff`\\xf4\\xf4;\\x8dz\\xd7<\\xea\\xbc9\\xac\\x1d\\x1c\\x16\\x03F\\xaf\\xc1}\\xea\\xbd?\\xbeea\\x99\\x96j\\x0b>y\\xf4\\xfa|U\\x1bQ[J\\xc6\\x90\\xeeB\\x04\\xc0\\xc0e\\xa0v!\\xe1<\\xae\\\\\\xc7h\\x87\\xbd\\xa3\\x10\\xd8\\xed\\xd5\\x87\\xb7\\x8f\\xee\\xc3\\xa1\\xa1\\x0f{#\\xf6\\x8e\\xf6\\xe1P\\xe9\\x83|\\x97\\xa9t]\\x1f\\xfb\\x1d\\xe1\\x15\\xd7OI}\\x02\\xff\\xfd\\xdf\\xc4U\\x83`\\xe6p\\x8a\\xa9Z\\xfe\\xfb\\xbfs\\x97\\x9d\\x14,\\x0c\\xe5&=\\xb5\\xcb\\x1dBD\\xc4\\x11B\\x0f\\xf6\\xf2Q\\xeaT!\\xc9\\xec\\\\\\xf9&\\x17\\xdf\\xe4\\xe57\\xb9\\xf4\\x0d)\\x9f\\x10\\xc7`\\x03\\xecT:\\xcf\\xd2\\xea\\x1aaa\\x0c\\x90\\xb9\\x96\\xfc\\xa4\\xa4\\xc0`K\\x8d\\xcb/\\xae\\xb8\\x0c\\xf3\\x9b\\x08q\\x86\\x81\\xbb\\xa81\\xe7\\x9cNH8\\x19\\x13S\\\"\\x80\\x0d\\x04)\\x00\\xd2\\x95\\n\\x07\\xaa\\x85V\\xf7\\x80P\\xd8\\x0f\\x11\\xd5\\xe0\\xedYO\\xb9\\x1a\\xe1\\x92\\x19!\\xb8A\\xaaM\\x90\\x13\\xb2|\\xa3\\x05\\xf7\\x89\\xe56!\\xdcgoX\\x12G\\x9b\\x9bt\\xd89\\x17\\xae\\xffxB\\xe9\\x1e\\xe7\\x88\\x13\\xb5\\xec\\x1b\\xd8\\x84\\xf0\\x12~\\xd4\\xb9v\\xebIY\\xfd\\x88_\\xfccF\\x0c\\x9b\\xb0\\xb5\\x95\\x8bq\\x1f\\xe1\\xd2\\x1et\\x0c\\x97~\\xf0\\xed\\x03>\\xec\\x83\\x10\\x84\\xc6\\xa9\\x1c\\xe3\\xd0U\\x15\\x1cl\\xe2\\xfa\\xb48\\xdco.\\xab^\\x8d\\x8e\\x0c\\x8drK\\x0f\\x04\\xca\\xf0\\x12\\xcf\\xfc~\\xfdhN\\xf6\\xb7\\xf5\\x03\\xa9\\x8dZg\\xfa\\xf4cg\\xf4Hx\\xec\\xaa\\xfd\\xb0\\xcd\\x00\\x91\\x1f\\x8d\\xf0\\x11\\x8b\\xf37\\xdc?88\\x18\\x0d)\\x17Q\\xbe\\xdf\\xe9\\xd9\\xedG\\x82\\xaf\\xd1\\xedF\\x1f(gc+#\\x18\\xee7\\x87P\\x1b\\xd5\\xcee\\xab\\x08\\x9fv\\xfb\\xff:\\x8c\\x06\\xcfN\\xf8\\xe7\\xc3\\xd1\\xa1\\xc3E\\xe1[\\x9cv\\\\%\\xb76\\xa5\\x12(X\\x1d\\xc7\\xedF\\x07\\xff\\x10\\xf4W\\x03\\x8c\\x84\\xdb\\xd2\\xcb#$/\\x9bX0T\\xb0`\\xda\\x0e\\xa4P\\x03\\xa4\\xd0\\x08\\xa4\\xb0\\x07\\x90\\xbe\\x13\\xcaD\\xdf\\xebr\\xc5\\xa3:\\xefG\\xc0\\x88\\x10[\\xd2>@\\xaf\\xd3\\x9e\\xd8u\\x0d\\xe4j\\xc4fM8\\xde\\x88\\xd8\\xaaF\\xe4b\\x84\\xfd\\xce\\xe8`\\x9f\\x0e2\\x86S\\xc6\\x08\\x0d\\x86\\x07\\xfb\\x03\\xb8\\x87\\x18\\xc6\\xdd\\x14\\xc8\\x1a8\\xfa\\xd1\\xc3a\\x83\\xb8\\xaf\\xa1\\xf0?n8\\xdf\\x0f\\xd5\\xaf\\x87\\xe9\\xebx\\x92>\\x1b\\xed\\xf6\\xean?\\xe8\\xf7\\xef.\\xb6\\xdc\\xect\\x0f\\xe4\\xde\\xd5\\xdd\\xd7Q\\xe2k\\xb0\\xfb\\xe3\\xba\\x9b`\\x95\\x95\\xa2ac \\xb8\\xbe^\\xdd\\xf8^Pktc\\xd8\\xb7\\x1b\\xaf\\x92\\xe2:\\\"\\x8f\\x04\\xc7ag?\\x06\\x82\\x01\\xed\\xd7\\x8fG\\xc2\\xa3\\xbb\\x1f\\xc3>\\xfd@\\xe6\\xd9\\xc8\\xcd\\x18\\x848\\xc8\\x86n\\x92\\xda\\x01\\xc7\\xacXPm\\xfbF5 P\\x0f\\x93\\xd8\\x81-\\x8a\\xf2M\\x8e(\\x899\\xc6_\\xd8\\xe2\\xf4\\x81\\x1b\\\"\\xafBN\\x13AI\\xc4\\x8dc\\x92\\x15eD\\xc4\t\\x10\\xd8\\x86\\x84\\xc9\\x81\\x8c\\xe8\\x8d\\x16n\\xc5b%$\\xb5d\\xc2?\\x10\\x921\\x161BSc\\xa4$AS\\x88\\xcfJ\\x88nm%\\x18 \\x8e\\x93\\n\\x1a\\x90&\\x02\\xa4\\xe1w\\x03i\\x83\\xa8h\\xb7`\\xd1\\x00U\\x85%E\\x16{{.\\xeaQ\\x8c\\xf9~pv\\x10\\xe4\\xb3(IP\\xd2\\xcd\\xb1\\xb5\\xbc\\xca\\xb8\\xc9\\x7f\\xaf\\x81\\xe8(\\x90o\\x1e\\xcb\\xc8e\\x92\\xe3\\xb6\\xd1\\x9cj\\xb6\\x87[\\xcd\\xd9\\x90\\xcd\\x19\\x8aH)M\\xf5\\xf7Z\\x03,G*=|z\\x0e\\xb27\\xa5\\xfc\\x07\\x0e\\x92\\x8fF\\x1d$\\x1f\\xbbf\\x90\\xc3\\xb5\\x06\\xa9\\xa3V\\xbey\\x90\\xbb\\xae$\\x12\\xef5RF\\xb3\\x88\\xd1\\x8ev\\xa5\\xe1\\x8e\\xaa\\xe7\\xc3}\\xc3\\\\k\\x963\\x85\\xcc{\\xfd\\xf4\\xb7\\x92E\\x12d\\xfe\\x80\\xe9_\\x1f2\\x06\\xa8\\x0c\\x0dP\\x19\\xe9\\xd7\\xccN;d\\x86\\xbd!\\xb3\\xe6\\x11+\\xa4\\xc72X6\\x8c\\x06G\\x02\\xd57\\x8e\\x07\\x0c\\x1d\\xad\\x97\\x9d6\\xce\\x96\\x84\\x1d%[\\x1a7o\\xbd=\\x18\\x9e\\xc5\\xfa\\x83\\xa5#J\\xef#Op_:n\\x88\\x10y3\\x89z\\xc1~\\nsLv\\xb6\\xd3\\x01]\\xe2\\x97\\x05\\x86(r\\x95s\\xdf\\xa6\\xa7\\x94\\x0f\\xcf\\x9e\\xc1\\x80\\x9e\\xa3\\xc5w9\\xaf\\xd6\\xa4\\x00\\xfeO\\x99\\xe8\\x16*\\xe2\\x9b&[\\xcc\\x85D`\\x84\\x15\\x81\\xb1\\xf6\\x8co\\xfecf\\xfc\\x0f!P\\x86\\xa3\\x03\\x17\\xb6\\x86\\xa3\\xc3\\xb5i\\x14R\\xd3!Q\\xd02\\x9f\\x84\\xe1\\xb7\\xd0/\\x7f \\xf9\\xb23:\\xd8\\xa7cE\\x19B?\\xd4\\xfe\\x07\\xd20\\x7f \t\\xf3\\x88\\x81\\xfe\\x81t\\xcc\\x1fH\\xc6T\\xf9\\x10\\\\%\\xedA\\x8f!\\xb7\\xcfm\\x0f\\x12\\xa7F\\x12}\\x13A\\xf3\\x07\\xd23f\\x10\\xd5\\xb7o\\xcdHB\\xec\\xe2\\x1eP\\xfc'\\\"~\\x0c\\xf2\\xa7v(\\xbeR\\xe6\\xac\\xcb\\xab\\xa2ji\\xdd\\xf9RZ\\x1a\\xf6j\\xc9$Ejo\\xea\\xedc\\x06e\\x12\\x14\\xad\\xd5T\\xe7\\xa8\\x82du\\xb7\\x1e\\xddR\\xa5\\x9b\\x1c\\xa0Cd\\xe9\\\"X\\xd9\\xd5\\xe7\\x8a\\xa7\\x97\\x94\\xa5\\xa42E\\x90\\x0b\\xd0\\x0f\\xf3\\xb2F\\xae\\xe2HK\\x12\\x10\\x9d\\x17\\x98\\xf7eWz\\xa7\\xb0\\x11\t\\xa5\\xea\\xa0\\xdc\\xad\\x8e*\\xf26\\xc3\\x9b\\xdcO\\xe7$?\\xcf\\xfd4\\xef\\xce\\x86Z\\x9a\\xf1\\x003\\xd6T\\xba\\xa1o!K\\x8a4 k\\xb4\\x90\\xb6\\xf5\\x97\\xd5v\\x16O\\xbb\\xebJ\\xeb\\xce\\x17%\\xf4\\xeb3*\\xd9_\\xe5\\x18{iK\\x9a\\xa8\\xda\\xcbM\\xadU.\\x12\\xb4L\\xbf\\x95\\xea\\xe3\\xd6\\xe3\\x1cTn\\xa8\\x18t\\x99+\\x07\\xb1\\xc5\\x96\\x904\t\\xb0t\t\\xc3#HxV\\x83\\xad-4\\x0bK`\\x13\\x10I\\\"\\xae\\xa3w\\xba\\xb8/\\xa5\\x93\\x11eA\\x86d\\x07X\\x18\\xaf\\xf5\\xb2\\xfe\\xb105\\x8aY\\xda\\x1a\\xedk\\xf3\\xb9d$\\xaf\\xf2\\xb8\\xd4Lubf\\xf6\\x14:\\xfa\\\\\\x98B\\xef\\xd7\\x86\\x08fa\\x14\\xad\\x87\\x084NWkg\\xb6\\x16\\xe9\t0\\xa4\\x06?6\\x95\\x1d\\xa2M\\x9f+\\xe1\\x85\\xe6'.\\xcf\\xba\\xd1\\x95\\x19\t$\\xde\\xaa\\x16\\xb0\\xdcdy\\x04\\x18\\x80\\xe8\\x18m\\x8c\\xc5Am\\x88\\x8ff\\xce\\xb7\\xaa&\\x9b\\xd1\\xe4\\xc33\\xf9\\xb3\\x97\\x19\\xbf\\xfb&\\xf36\\x80\\x1d\\xdb\\xad\\xe7\\x02NM^\\xc5&\\xcf\\x8fF{<w\\x89.\\xdf9\\x07\\x16K\\x95d4\\xfa\\x15\\x9e`\\x12\\xfa9fgC\\xfd\\x91\\xd1*\\xfaCoO`\\x0c\\xe7!eqZ\\x84\\x99\\x1eK\\x85\\xa6\\xceV\\xce\\xbcJ\\xa2\\xeb\\xd3Zo\\xc7<\\x89\\xdc\\xc0\\x85*\\xb2\\x07=\\xe5\\xb4i\\xe1\\xcd\\xf8Dc\\xb1\\x8fH\\x84i2\\x0cH\\xc4,M\\xf0\\xd1\\x96O\\x8eU\\xc82\\n\\xbf\\xb6c\\x91\\xd2>\\x95\\x12`:-\\xc9\\x9b)\\xcb-\\xe2T\\xe9\\x17a9\\x00n\\xab\\x87>\\xca\\xb5A\\x08\\xbc\\xe8OB\\xf8_P\\xaca\\xb3\\x977b\\xe4\\xd4\\xfb@\\x07\\xfb\\x19N`{\\xf2\\x9f\\x9b\\xbfl\\x0f\\xb6\\x9e>\\xdf\\xfa\\x0f\\x7f\\xeb\\xb7\\xad\\xab\\xcb\\xed\\xb9\\xc9\\xf5\\xe6\\xd7\\xf6\\x10\\xae\\x80\\xca\\xd9S\\xb0\\x06\\xe8\\xf4_O\\x13:V\\x1e\\xd4\\xfbfh\\xf0\\xb5Q\\x01x\\xa3\\x0f\\xd0\\x96\\x03\\x8f\\x8a3\\x84\\xed\\xce\\x1c\\x97\\x95\\x83L\\\"\\xc2\\xf3\\xeb\\xf2:\\xb4\\xa7P\tY`\\x9bFb\\x07\\x07\\x9ea4\\xef=qD\\xef\\x1d\\xec\\xec\\xee\\xb6!\\xdc\\x90\\xe7\\x873\\x97\\x80r\\x93>\\x83\\xbd\\xfd\\x9d\\xe1\\xd3\\xae\\xc2\\xf4b\\x89(vh\\x7f\\xb6\\x86\\xb43<\\x99\\xc4h\\xe7\\xa9\\x0b\\xc3\\xa7C\\x17\\x86\\x87O[\\xd0\\xba\\xb8\\x82$\\xce\\xc3\\xb8\\xd0\\xe7R\\x12\\x979{\\x10\\xf0\\xbe\\xfb R?\\x19\\xa5z\\xf2\\xf5O\\xd4{\\\\$\\xed-u\\xb6\\xd2\\x9e]\t\\x97\\xc9\\xfe\\xce\\xc8\\x98BP\\\\\\xfd\\xa0\\xe2\\xfe\\xc1]\\x8e\\xb9\\x8f\\xc6>lR\\xban\\x8b\\xa7 8>\\x86!3t\\xd9\\xe2\\xa3\\xd1\\xd6\\xc0O\\xc5\\x84\\xf3==\\xc6c>\\xc9\\xab\\xfd\\x1b\\xb3D\\x15]\\xfb\\x8c58d\\xd9Y\\xba\\xd2\\x1f\\xf0\\xce\\xc4\\xad\\xe3\\x10\\xf37\\x1a\\xec\\xf6l}\\xb4^\\xeb\\xf0\\xec\\x19\\xe62\\xc0\\x00\\xdb\\x98\\xd0 \\xa6w\\xa3\\xc3^\\xdd\\xc2y\\xea\\xd7\\xaf\\x9d\\xf5\\xfb\\x85I\\x17F\\xa3]\\x16\\xc2\\x03\\xf6\\xe1\t\\xed!\\xf6n\\x8d\\xbev\\xa0F\\x1c\\x07O\\xd9\\xa0\\x8b3 \\xd2i\\x05\\xc9\\x94\\xc0*1x\\x91\\xc9U\\xb2\\xf1\\xee>b\\xbc\\x87t\\xbc\\xbb<d\t\\x1d\\xbe<\\xe0\\xc7\\xc1\\xa0\\xf1\\xd4\\x1c\\xd3\\xe3O\\xf5b\\xb5\\xdb\\xf2\\xec\\xfc\\xad\\xf5\\xb0N\\xbd<\\xa92\\xf0T\\xbcM\\xeb1Ww\\x08i[M\\x82$\\xf0\\xf24\\\\bx\\x1c\\xfa\\xc3vx\\x1e\\xc4U\\xe4\\x07\\xc4\\xde\\xfe\\xcf_\\xb2\\xcd\\xfb_\\xb2\\xcd?o\\xcf]\\xb04\\x99\\xfa\\xe9\\xf5`\\x13\\xa7\\xfc\\xe43\\x96s*\\x92w\\xd4/x\\xdcQ\\xc5|\\x8b\\xa8\\x92\\xa8B\\xd9<\\x01\\xeb\\xc4\\xf0\\xa1\\x18Csbl\\xd23M\\xd1\\x8b\\x0ef\\xb1\\xee\\xcb\\xc5\\xb8b\\xc6\\x82`\\x1a\\x1f&\\x14\\x91\\xa45I-\\xad-g\\x9fs\\xce0\\xf3P\\xd2F&W\\xf5\\xeb,\\x7f9\\xdc\\x7f\\xdb\\x85\\xd8\\xde\\x19\\xf2\\xa1=\\xb8f+\\xac\\x9b*\\x13\\x16\\x12>\\xe4\\xeb*I\\xf3\\x0cN\\xe0\\xf7\\x07\\x89v,\\xc1\\x106<\\xd2\\x1b\\x9b7#\\xf9E\\xb8$I\\x91\\xc3\\xc2g~\\xa0\\xd7\\x84\\xc4 B\\xe6W\\xf0~\\xd04\\xe0w7\\x10D\\xc4O\\xbf\\xa1\\x89\\xa2\\xb9\\xe0\\x19n\\xc5\\x18`e\\xef\\xab\\xe8\\xc2\\xe5#\\n>\\x95o\\x16T\\xe3\\xc9\t\\xf3\\xe2\\xda`\\xf9\\x8e5\\xf5\\xd0C\\xb6z\\xecv\\xd4\\xab\\xcf\\xb7!\\xaab_\\xd4\\x97\\x81\\xc8\\x0f\\xa17\\x955\\xa6\\xef\\x10U\\xb2\\xa5SF\\xcb\\xd79\\xfc\\xb7\\xb6\\xd0\\xac\\xab\\x94\\xd2v\\x07\\x0f\\xa8&l\\xa3Z\\xac\\x8d\\x95\\xa0\\x1d\\x03f\\x9d\\x11\\xdf\\xc8\\xbc\\xa6\\xb4\\x10O\\xe5\\x9b\\xb1\\x8av[\\x13k\\xd0\\xeaU4-\\xdf\\x19\\xe6\\xc9\\xd4\\xa9\\xda\\xe2=\\xad\\xdf\\x8e\\xd5,\\x89\\xad\\x1d\\xa3M\\xa8Y\\x15\\xcb_\\xb6\\xb4\\x9a\\xe8\\x1e\\xe7\\xa9\\xcd&Jb\\xb3\\x00C\\xbf\\xd4\\x9f\\xcdx\\x12\\xda\\xe6\\xc6Y5f\\x04\\xb3\\xb7b\\x1a\\x0b\\x9bW\\x05\\xa5X\\xe0\\x14[\\x14\\x01\\xc4\\xed\\x08\\xc3\\xa7b\\xdd.D\\x92\\xecuj;\\xed\\xfbu\\xdah\\x16\\x89\\x88\\xc0\\xc4L\\xd2\\xb3\\xad\\xb0W\\x1a\\x8a\\x01\\xfb\\xd8\\xc6KR\\xa6S\\xf4\\xed\\x083\\x11\\xe9\\xd79~@\\xb1d$\\xe0\\x8aA\\xc4x\\xf6\\\"\\x9e\\xf2cv\\xe9\\xa5El\\x9b<\\xfc8(\\xe4&;v\t\\xf0D\\xcfl\\x8f\\xea\\xe6N\\\\\\xfd\\x8ev&T\\xa7\\x98K^\\x86U\\x1a_\\xe9\\xa1\\xdd\\x16P\\x12Q \\xab\\xc8G\\x14\\xc8b5h+\\xa5\\xabV~\\xe1\\xf6o\\xc6\\x8c\\xc2\\xc4\\x95\\xda\\x06\\xf9\\x12\\xf4\\xc2^\\xe2\\xean\\x08d\\xf2K\\xc6\\x9b\\xe6\\xe6a\\xad.@\\xa3\\x01\\x8eL;\\x1a0\\x8f^\\xfb\\xe6A\\x05\\xd8C\\xebN\\\\h\\x858(\\x0b\\x9c\\x15(9\\xe1B{\\x96\\xe6\\xe8D\\xcaZ\\xaa\\xab\\xee\\x86n\\xec\\xaa\\xc5\\xc4\\x8b\\xc9\\xd7\\xfc\\\"\\x0c\\xbe\\xb4\\x12\\xa7b\\x9fR\\x8a\\x80\\xd1\\xbc\\x8d\\xb8\\xcdM\\x93!\\x94W\\xa8\\xc5\\x9e\\xc1\\xb0\t\\xce\\x12\\x17\\xc4\\xcc'\\x93\\xb2*\\xea\\x97G\\x10onRr-f\\x86XR\\xe8\\xe8F\\x98\\xfd\\x883\\x1b\\xe4V\\x80\\x0fe\\xf7\\x98\\x15Z\\xa2\\x07\\x03\\xfa_aO%T\\xe8\\xc2B\\xb6\\xabG\\x00\\x9b\\xcfF>\t<\\x1c+[\\x8e\\xd5\\\\\\xd4\\xaaM\\xbc<\\xcc#\\x0cJz\\x9d&\\xb7\\x19I-\\xfa\\x90\\xff\\xe6a\\xf2\\x13\\x8f\\xc47H\\x07\\xd2\\xdf~:\\xbf\\x11y5\\xbd\\x1b\\x92ft\\xfeX$\\x93\\xf2>+K\\xe3\\xbb\\x1b\\xfcn:}\\x1bf9\\x89\\xb1\\xde\\x1b\\xf6\\x12\\xdd\\xd1\\xd9\\xef\\xd9L\\xfcL\\xc92\\xb9!ja\\xf6\\xf4y\\x14\\x89\\x17\\x99xC\\x96a.~\\xafR\\xb2\\\"q\\xa3%\\xfe\\xf8C\\x1c4\\xea\\x8d\\xa4\\xea\\xccK\\x8d\\xef\\xc0\\xc9e\\x1dz\\xd7a\\xdc\\x99\\\\\\xa5A\\xb5\\xae\\xd2$ YV~\\xccC\\xa4HA\\xf1\\xea\\x8d\\x04\\xb7\\xd3\\xb6\\xf9\\x16\\xac\\xd2\\xb6\\xa5|\\xb6\\x98\\x86\\xe9\\xe3z\\xc6>\\xed\\xeaW\\xb1\\xf4\\xb3/=z6\\x90\\xb6>h\\xb8\\x10E\\xc5o\\x15\\x19AEO\\x90KL\\x9c\\xcc\\x90\\x98G\\x84\\x1a\\xa0\\x8a\\xd8\\xda\\x90Uu:}\\x0f\\x06\\xb1\\x15\\x03\\xf5\\xcb\\x8aU\\x19C\\x83k|\\xc4@\\x9aH/\\xd5\\xe2\\xd0\\xca\\xbe\\xe6\\xa4\\x0bk&f\\x94\\xd8\\xc0p\\xc7'0\\xa4\\x88E\\xd2\\xdeT\\x98jx\\xc9\\x835\\xc8\\x8f\\x9a\\xf4DlLx+duZ\\xb0\\x19\\xd7\\x07\\xa8\\xc2{\\xb5\\xd7Lt\\xcfP{\\xea\\xa8\\x02|\\x9fb\\xdep\\xe2\\xd7\\xb1\\xaeof\\x961\\x17\\xd6\\x86\\x88\\xa2\\x19\\x0b\\xd0 \\xc3&\\x91\\xa1\\xa1GnHzW\\xcb\\\"\\xdd\\x95\\xda\\x0c\\x19\\xb7x\\x92^j\\xf8\\x1bts\\xb1\\x19W\\xcdp2\\x9b\\x04\\x17B\\xc7a:\\xb5\\xd05s\\xf2Z\\xde\\xbb1\\xf15\\xc2\\xb5\t\\xc7\\xb8\\x84cN\\x0f;8\\xc5\\xe0\\x14C\\x1e\\xd98e\\x07\\x1c\\xcb\\xb9\t)\\x85k<I\\x9b'Zz\\xf9\\x0d\\x13\\xac\\xefXZu\\x8c\\xcb\\xb6\\xb9\\xc8$?\\x82\\x84v$\\x9d$\\xf5N\\xe8\\xa4!=L\\xb5So\\x95\\xacl\\x83j\\xaf\\xe8-\\x04\\x13#a\\xd6\\na\\xc6\\xb3]O\\x06\\x97\\xa8U\\x9c\\x0c.al\\n\\xfa\\x01\\x82a\\xc9\\x1b+\\xac\\x8b\\n\\x14H^\\xc7H\\xb6\\x88\\xf9\\x8di\\xbb\\xc4U:\\xc3zK\\x7f\\xb5F\\x7f@Z\\xfa]\\xbd\\x00\\xec\t\\x0f6\\xeeB\\x9b\\x00\\x17t\\xa7\\xd29\\x89H\\x90')\\x04)\\xf1\\xf3$\\xcd\\x80|\\xc5x\\xeb~\\x14A\\x18\\xaf\\x8a|+\\xe3E2\\xc8\\x13\\xb8&\\xe5\\\\f.\\x86\\xdf\\\"\\xfe\\x14R\\x12\\x90\\xf0\\x86L!_\\x10\\x98%Q\\x94\\xdcbP\\xb1\\xbb\\x15\\xc9\\xc60\\xb1P4\\xb7\t\\xd6\\xa5Ad\t\\xadD\\xb5\\x80\\x85\\xb6\\xc0\\x03E^\\xda7\\x99\\x06)LZ\\xb7\\x93\\xb8\\x84\\xd8xs\\xd3\\x05_\\xa9\\xc1\\x10{_\\\\\\x0f\\x97\\x82\\x13\\x8fM\\xaa\\xee\\x86mL[Wjtr\\xdb\\x0e\\x8f\\xe1\\x19\\x8c\\xe0\\x14\\x95H#\\x8ez\\xe8\\x8e\\x1f\\x95\\x91\\n\\xc5\\x8e\\xa7\\x05\\xbaw\\xbd\\xb8\\xc4\\xee/\\xea\\x8bXk8(_\\xa5\\x8cJ\\x99\\x00:\\xe0\\x12F\\xa9\\xd3\\xb2\\x1eZ\\x96\\xb2\\x10\\x19*\\x95\\xf7\\xdfb\\x14S(X\\xa6s;\\x83\\x8ap\\x072\\xea\\x97\\x84\\xccy-kX\\xce0>3\\xa9\\x9d\\xe4-\\xa0\\x16\\x97\\x00]\\xfb\\xa6\\xef\\x03}6\\xc4Y\\x9a,[Yv;4\\xcc\\xc3\\x83\\xf1\\xb8\\x8f\\xbc\\x94dE\\x94\\xbf.\\xe2\\x80\\xae%\\x17\\x9f\\x04\\xc9rU\\xe4~\\xce\\xd9\\x94\\xce\\xcd&6Z\\xe3\\xe5\\x03\\xab/#\\xf9\\xa7GWJgH[q\\xed\\xa1L\\x0c\\x88_\\xb9wuE\\xb2w\\xc9\\xb4@\\xf6\\x8d\\xf2i\\x98:\\xd6/\\xa2\\xfc\\x1dY&,soB\\x9f\\\"\\xda$\\x02\\x8b\\xbedH\\x94\\x11\\x1d\\xe5\\xcb<-\\x82\\xbcH\\xc9\\xb4D\\xb6}\\x18\\xefGP\\x99\\xbeBe6\\x99s+\\xc1<\\xb8F\\xea]\\xc8\\xfeM\\x1dg\\x87C\\x06\\xb30\\xcd\\xf2*^\\\";\\x18\\xfc\\x18X\\xf5p\\xbb )\\x01\\xe2\\x07\\x0bX\\xf1\\\\\\xbb\\x94\\x11\\xf0A\\x9c%\\x9a\\xa3\\xc3Gk\\xb0\\xb2SG\\x0d\\xa0\\xd0\\xbd\\xc6\\xd3\\xf8~!wYC\\x88UR\\x8bq\\x1dU\\xb5\\xf9\\xc3\\xd3\\x0dY_\\x0e\\x8e\\xdb\\x93\\xe4\\\"Z\\x84\\x9cW\\x08\\x81\\xd3~\\x03F\\xfb\\x11N\\xfb\\xe5\\x93\\xb4\\x9d\\xee\\x03i(^J\\xa6E@l\\x85\\x13\\xea\\\"\\x98\\xc9\\x84R\\xcb\\x97\\xcc\\x18R\\xa3\\x8es\\xe1\\xf7\\x07E %\\xb1\\x9fu\\x91\\xb6\\x8f\\x04L}\\x99\\xd3\\xf5m'z\\xb5\\x97\\xc2\\xa7\t\\xee#\\xb6\\x87\\xc3\\x03\\xe5@D\\xc6\\xc6\\x1e\\xed\\xee8zV4\\xb6\\x87\\x83\\x01\\xa5\\xfc\\xda\\x1a\\x00Y\\x84'\\xd2'$6Z\\xabK\\x83\\xea\\x91TLZ\\x12\\xcc\\x18tM\\x96\\xb4\\x1a\\xea\\xc1\\xaeaD\\xed\\xcc\\xf5\\x86\\x1c\\x0b\\xd5\\xc4G\\x8b=\\xb6\\xf1H>Z\\xedq\\xac*$\\xeb\\xfb\\x8e\\xc9\\x9c\\xc6`\\x8d\\xbc=o\\xcf\\xd2\\xad\\x12\\x8d\\xfd\\xe1\\xd5\\x153\\xd4\\xa4\\x7fO\\x84\\xdb@o\\xf0\\x8d\\x0e\\x0e\\xd6\\x86\\x9f\\xcc\\x85\\xca)\\xe7j\\xb2\\xeau\\xa7Q\\xbf`\\xf7\\x0ev\\x95\\xe7!\\x7f\\xbe\\xa7<\\xa7{\\xc7\\x9ap\\x9c\\xf8\\xbe\\x88\\xa2K%Tx!\\x17\\xf8,\\xd2\\x9d\\xab\\xa524n?E\\x13\\x04f\\x0fx\\xe1\\xcf\\xcb\\xcc\\xde\\xdf\\x01R\\xd2\\x89Bo\\x0b\\xcc|2\\xe6\\n\\x16\\x08c\\x8ev\\x99q'\\nF\\xc6\\xc8&?\\x16\\xb0{OGz\\xc8>\\xdd\\xeb\\x9cx\\x0d\\xbd,\\x96q\\xc2\\xdej\\xb7E\\xca\\xb2\\\\\\xc4%\\xd8\\x1e\\xdb\\xf7\\xd1Su\\x96Y\\xdf\\xf7w\\xd41\\xb1Uqp\\xd89$\\xc3\\x0c\\x85\\x0c\\xde)\\x83w\\xb26\\xbc\\xf5\\xb2>\t!\\xef\\x0e4#\\x91NXJl\\xb4\\x93\\xd4\\x82V\\x99h\\xce0\\x89s\tc\\xa42\\x84U\\x98\\xf9\\xbc\\xab\\xbdx0\\xc0\\xad>\\x96\\x90\\x1f\\x14\\xfbR\\xb5\\xa1\\x17\\xc6\\x0b\\x92\\x86\\xfc\\x149\\x1c:\\xcd3-\\xb6w\\x06\\xeaL\\x16\\xac\\xae\\xda*\\xac\\xea\\xb2g.\\xf8\\xd2\\x9br\\x80\\x19\\xae\\xbd\\xa2\\xd2\\\"\\xf0\\x14I\\x83#\\x88\\xe0\\x18*uFD\t\\x80\\xe6\\xda\\xa5\\x04t6\\x89\\x14\\x18\\xce\\xaa\\xfa&\\xc1%\\x8a\\xb9\\x94G\\x94)\\x93\\x1f\\xb4\\xebwg\\x86C\\x879\\xc7\\x88@\\xda\\xc9\\x0cfU~IJ\\x12\\xce\\x1a\\x84\\x96_W\\x95\\xb9P\\xa8\\x0f\\x10\\xfbo\\x08\\xd7\\x89\\x94\\xf8S\\xff:\\xe2\\xb1c\\x17aV=9a^\\x80\\xf5\\xf2\\xb7i\\x98\\xd7\\xcb\\x97Oxy\\xa6q\\x89\\xa2\\xe4\\xf6\\xaf~4\\xfb\\xb0\\\"1'\\xd3\\xeb\\x15\\xd5K\\x94\\xb55>,\\xabL\\xe2\\x80\\xd8\\x16\\x89\\xa7\\x96\\x0b\\xabvp6\\xb5\\xf4\\x9a\\xba\\x85\\xc3\\xc1\\x95\\x18\\xc0y\\xee\\xe7\\xc4#\\xf1\\x94L\\xe9\\xcb\\xb4\\xd4\\xc5\\xd9S\\xd6\\x85.\\x1d}c\\x0e\\xb16[E\\x0d\\xf4\\xe2;\\x99\\x1d*\\x1f9\\x19.\\xaf!\\x17,\\xd1\\xaf\\xbf\\x86\\xf3\\xc5\\xcf~N\\xd2w~\\xfa\\xc5r\\xd56\\xe2bIRZn\\xdc\\xd0\\x85\\xcfI>n\\xa7\\x98\\xc5\\xe6\\xd6\\x00b!7[\\xdf\\xfc\\xd5\\x80\\x1c\\xb7\\xd7P\\xa6$\\xcb\\xd3\\xe4\\x8eL\\x1b\\xdd\\xef\\xddE\\xc9\\x9f\\x86\\xf5V\\xacS\\xec-]@\\x8d\\x12\\xb5\\xf1TK\\xac\\xfe\\xa5W\\xf6\\x0d\\xbd\\xce4\\x80(\\x0b(d\\xb9B\\x08\\xd4\\x06\\xa2\\xc7\\xc8\\x7f\\xfc\\x10*\\xfd\\xb3i\\x10\\xb4\\x88Q\\xe1M\\x19,I\\xe1z\\xc5\\xbf\\xea:\\xe4\\xb1Av\\x80\\x14Q$6,\\xae}W\\xdeGyM{\\xff]\\x0e\\xca\\x9d\\xe1\\xc8\\xb1\\x1f{\\x8a\\x93\\xca=\\xabT\\x91t\\xd1\\xe8k\\xf6o\\xff@w\\x90\\xb3\\x10\\xf7\\xfe\\xd7G\\xf6;\\xb1\\x07.\\xd2\\x1e\\xdf\\x00\\xccu\\xcbk\\xa9\\x94\\xa1flvl\\x1f:]\\xf2\\xbe\\x90;~z\\xe2l\\xfb\\x98$\\xc2\\x16\\xc0\\xc4@\\x0b\\x82\\xa6\\xf9\\x1d*8\\xf4\\xb2;\\x19\\xc1\t\\xc3Pz\\n6\\x05\\xd6F\\x0bez\\xd0\\xd2\\xef\\x1b\\x86\\\"\\x1a\\x9a\\xb2}\\xd4D>\\xca\\xf1h\\xa7\\xe7\\x8cm\\x8d\\xf6,t\\xb7\\xc5\\xedVP.\\xde\\x16\\x9bH\\x03\\x1f8\\xe6\\x1b.I\\xa2\\xf3\\xf07R\\xe2\\xad:L\\xe8vl\\xa4o\\xad\\xdd\\xfa((\\xab=*\\x1a\\\\&\\x16\\x9cNi\\x9d\\x94\\xb9I\\xc6\\xed\\xa8@\\\\%\\xfb\\xda:-q\\xad\\xcf\\xdc\\xba\\\"\\xf6\\xe6$\\xa7\\xf7\\x88\\xac\\xd0\\x01\\xca\\xa7O\\xcb\\xf1\\xa2czu{\\x02\\xc3\\x81C\\x0b\\xa4$\\\"~F\\x98\\x84\\xaf)\\xa1}\\xd0\\xa8oc\\\"\\xd2\\xa9b\\x83\\xe9X\\x05\\x08\\xbd\\xf2\\xdbD-\\xd5\\x0b\\x06\\x8fY\\xe4 \\xeb\\xa6\\xd6Y\\xe8\\xa0[\\xec1\\x8b\\x10\\xe0\\xe8\\xc0\\x01\\xda5\\x0f\\xbauO\\xab\\xe8\\x03\\xce|\\x91\\x92\\x06@\\xbbD;\\xe2\\xfa\\x16h\\xa5\\xdf\\x05Zi\\x19G\\xa9\\x114Z\\\\\\xfd\\x01\\xd6\\x88\\xc8\\x00z\\x98\\xcd\\x92\\\"\\xed\\x02Y\\x8bT\\xf1[\\xa0\\x96|\\x17\\xa8%R\\xf4\\xa9\\xd4Q\\xf5\\xf9\\xe2Z\\x0bp\\xae\\xd6\\xf1\\xb8\\x8e\\xca\\xf4Gg\\x81O\\xdb\\xe4ju\\x03\\x7fmq\\xb3\\x98tO\\x95.%\\xfcy\\xb7l\\xc4p\\x94\\xa7v\\xb2\\xfe9.\\xf7\\xe8\\xd1-s\\xb9\\xd1#\\xc8\\x08\\x89\\xfa\\xda\\xd1\\xcb\\x8a\\x0e\\xb5\\xe2\\x96\\xe1P}\\xce\\x98\\xfd\\xe1\\xfe\\x81c[Y\\x1aX\\x1a\\x9e\\xff5\\xefH)_k\\xca\\xdfX\\xfe\\xc1\\xc2\\xf1\\xb2U\\x14\\xe6\\xb6%J\\xcaR\\xd8\\xd8\\xde\\x1f8\\\"a\\xf99F\\xca\\xe8\\x03$\\xce=\\x93\\x9a\\x05\\x98m\\x94~\\xe1\\xda-tr\\x84\\xc8d\\x0d\\xafx4FH\\xe4\\x87\\x14s[\\xb1\\xbf$\\x16\\x1a\\xd1$\\xd5=7\\x9fDIxi\\xd2cK\\x9f\\xf9\\xd5\\x17>/\\x87\\xf2\\xd6M\\xf6{\\x0c\\x19\\xb3H\\xe0\\xde\\xcb\\xb9\\xe3\\xb0\\xa8b,\\xb6\\xcbi)c\\x871\\x14\\xe2\\xb6\\xf64\\xa9\\xd6\\xc4\\x18\\xec)\\x89HN\\xf0\\xbd+\\xbd\\x92\\xd7\\x94c\\x97\\x93(3\\x85\\xe54\\xb5hu\\xf84h!\\x87\\x04\\x14\\xa7}&>Ja$a\\x87\\xdc\\xfeZH\\xa1sM\\x94z:9\\xf4\\xc1\\xa9\\xc4A\\xc0\\xb8\\xcb^\\xa5\\xd76\\xeb\\xa4\\xbe\\xf5\\x9bo\\xb4o\\x10\\x81\\xef\\xeckw\\xdf\\xde\\xaeJ\\xc53Q\\xdb\\x81Z<\\xe3\\xc5UYj\\xc4\\x9f\\xab\\x12\\xbb\\x80?W\\xeb\\x99\\xf1\\xe7*2X\\xa1\\xd0\\x8ci\\xb3\\xce\\\"B\\x0f\\xc4z\\x81\\xa9T\\xe0\\xb5O\\xc9\\xe4\\xbbz\\x81\\x05+\\x10%\\xb1\\xbe\\x82\\x1b8\\x81\\xb4\\xfeh\\xd9I\\xb47t7\\xd0<\\xc8\\xe7Z\\xb2\\xf9\\xe5\\\"\\x8c\\xa6)\\x89\\xc7\\x86sx\\xe9\\xaf\\xc6\\x10zK\\x7f\\xd5$\\x0b\\x80\t1\\xcf\\xfc`A\\xcb\\xf0\\x9f\\xfarAR\\xc49-\\x85?\\xf4e\\xf2\\x045\\x9f\\xb4\\x14\\xff\\xa9/\\x97\\xc4\\xd1\\xdd\\x18f\\x8dw\\x1a\\xca\\xe5e\\xb2\\\\%1\\xa1M'^y\\xd3,\\xf7\\xb1HI\\xadl\\xedA\\xb3|m\\x05\\x8cA\\x03\\x1cy\\x86\\xc7\\xa0\\x81J\\x98\\xfd\\xe4G\\xe1\\xb4,Rx\\xf5'\\x9aN\\xa6\\xc9\\xea\\x82\\x99De\\xa6.\\xbd\\x8c\\xfc,\\x1bC`z\\xcf\\xd7\\xe4\\x18\\xa6\\xa6\\x12\\xef\\xc2\\xafa<\\x86e\\xf3\\xfd\\xab\\x0f\\xef\\xc6\\xe07\\x9f\\x97J>\\x8d\\xf1\\xe9\\xd5U\\xb6J\\x89?\\x1d\\xc3M}q\\xea)\\x829>\\xfdc\\x90Nc\\x93\\x87L\\x12\\xf0\\x94\\xb2\\x1e\\xf6h\\x7f\\xbf\\x12\\x14V\\xe2\\xa5\\x85\\x9f}\\xb8\\x8d\\x85\\xc8P\\x8b\\x9cF\\xfb\\xaa\\x9eO\\xcf\\xa1~!wc\\xd8\\xd0XA\\xa6d\\xa6\\x7fqu\\x95\\x91\\xc8\\xfc\\x0e)\\x84\\xb1\\x9a\\xbeX\\xeb\\x10\\x9a\\x19O\\nI\\x9cG\\xbc\\x94T\\xbbJ'?\\x8e\\xfaU\\xf3\\x85\\xdcI\\xd5\\x88_BU\\xa1\\xe1\\x1cX2C\\x03Y\\xd2\\xd4*\\xd3\\xeb\\xcf\\x7ff'\\x96vE\\xe6\\x98^\\x994_\\xe0\\x1ch\\xb6\\x16NA\\xdc|\\xbeJ\\x93U6\\x86B\\x03\\xff\\xe46\\xa6|PhZ\\xd6P\\x01\\xa7\\x8a\\x0b#\\xbd\\x0f\\xea\\xc7\\x88\\x060:`\\xa4\\xcc\\xd0\\xfaw\\x1d\\x97\\x06&\\x0b\\xf0\\x15\\xe8,\\xc0\\xd1\\x9b\\x96\\x11\\x04:\\xde\\x19\\xd5S)\\x84t\\xf1\\xe4,3\\xcf\\nm9R2s\\\\\\x88\\xc4\\xc3\\x19:\\x98\\xc0&\\xa0\\xd2\\xcfqky\\x06=\\xb6\\x84\\x05\\xe91.\\x9f4\\x8b1z\\xb7^\\x10\\x9f!\\x1d\\x14\\x96\\x921\\xe6\\xb5\\xb6Q([\\xd3\\xe6\\x99\\x87}f\\x1f\\x93OR5\\xe3.\\x05\\xdfTg\\x18\\xb5\\x05\\xa3&d\\x98\\x0eh\\xea\\x80\\xef\\x05\\xfc\\x8c\\x84Fl\\x8f2\\xe2\\xc3\\x14\\xbd\\x944\\xcb\\xb4T\\xf2-J\\xc3\\x9e)\\x85\\x11S\\xef\\xdd\\xc01L\\x8f\\xe0fs\\xd3\\x81\\xc5\\xe4\\xa6n\\xd8s\\x83\\x811\\x9b\\\\\\xee\\xc0\\xad\\xf7\\xa9\\xee\\x8f\\xf8\\xd0\\x18\t\\n\\xdf\\x88\\xb0?\\xa3\\xf0\\xcat=\\xa5\\x9d\\\\\\xa21\\x87\\\\\\xb2\\xd9|\\xb5.\\x96N\\xcd\\x96\\x8c\\x02^\\x9a\\x81e\\xc3\\xe0\\xfeA\\xb77\\x02\\xba\\xdag.\\xac0\\xa9&z4\\x05E\\x9a\\xd2\\x03\\x10\\xfc\\x1aK\\x13\\xd4\\xc9\\xaa^Fp\\xca&C\\xb7\\x9e\\xd2\tP\\xbbWs\\x8f\\\"\\x0f\\xae\\xa4P\\x9a\\xa7G\\xfa\\xf3x\\xfa\\x89\\xc5F\\xf8w\\xd2\\xa9t\\xa8\\xc6\\xe81\\x86\\\"w\\x19\\x96\\xa5\\x7f\\xf8>\\xa0?\\xf8:'\\x1e\\xc3*\\xf4\\x17b\\x1eu\\xfc\\x12M\\xd1\\x13_\\xf8\\x0c\\xb8\\x94\\xa8\\xb4\\x7f\\x7f\\xa8*n\\\"\t\\xd4\\xba\\xd0-\\xdc|\\xb5\\x00~8h\\xce~\\x0cj\\xdd2\\x16\\x8d\\x87_\\x17\\xd2\\xf1kHg!\\x90\\x0e\\xdb5\\xe5\\xf2\\x90q\\xd0T\\xc5A\\x0c\\xdel\\xe1\\xe39.\\xaf\\xe9\\x12mi\\xde9\\n\\xb6\\xf1\\x0d\\xd8\\x86=\\xb7e$F\\xf9\\xbb\\xba~\\x8c\\xe2\\xbd\\x15\\xf3\\x81\\x99\\xd1?cqG\\xcbj\\xb0\\xd3rM\\xec\\xb4t`\\xd5\\x07;-;\\xb1\\xd3\\xbc\\xc4NK\\xc7\\x85;\\x86\\x9d\\xee\\xe0\\x18\\x96GpG\\xb1\\xd3|rW\\xc7Nw\\x06\\xecT\\xeb\\xd0\\xbc\\xd7\\xfe\\xe7{c\\xea\\xc2B \\x81\\x9b\\xba\\xfe\\x9c.\\xfe:u\\xfch&\\xb8\\xa6Gc\\x0bD\\x90\\x12\\x0c\\x8d\\xc9\\xad\\xca\\xa4i\\xf0'\\xe8&M%\\xb1\\xd3\\x81\\xe3\\x9d\\xdf-\\xaf\\x93HO\\xe9\\xa6\\xebU7:\\xd4\\x9b\\x0d\\x0d\\x0f\\xbf\\xcd\\xd6m\\x83C!\\xa9\\x0c\\xd0q\\xc1\\x7f\\x8b\\xdd\\xdb\\xc8 \\x81|\\xaa\\xaa\\x19\\x19\\xd3\\xbf\\xdf\\xb0#bt\\xf5\\xfe\\xb0sdf\\x94+E\\x12\\xe4f]p\\n\\x13r\\x89\\x96g\\xfe\\xb7\\xc8\\x131\\x1e~cxJ\\xf8\\xbb~\\x13\\x11\\x1aB\\x972\\x95\\x1b\\xa9\\xechH\\x13W`\\xe0b\\xd8lD\\xe1\\x11k\\x7f\\xc0j\\xa4\\x93I\\xfbF\\xe8\\xddV\\x02\\xa7`m\\x0d,J_u\\x8c\\xbf\\xc6p\\xe9$E\\x9cUb\\xe7+F\\x1c\\xea9C\\xc4\\xcb\\x8a\\x15I\\xaf\\xb8yq\\xc5lU\\xd6c\\xacR;\\x97eqM\\xec\\x15$\\xb1\\xd0E\\x9a\\xc4\\x17\\x98\\x98_\\xcb\t@\\x87]\\x8a\\xb8\\x84\\x89\\x82\\x9e\\x0b\\x03\\xd6\\x8dY8/D=\\x1a\\x9f\\x81\\xda\\x93\\x87\\xbaU\\xf1\\xa3\\xc0\\xd6\\\\\\x0e\\xaa\\xd7\\xb9\\xc2\\x88\\xc45(\\xd7\\xe0Z\\x9f\\x80\\x98\\xdc\\xa2\\xe9r-.w\tf\\xf8\\xfe\\xb6\\x07\\xfb\\x9d\\x9b\\\\\\xb7kj\\xa6\\xceJ\\x98\\xd8\\x97~\\x1c'9\\xd0\\x86\\x11\\xc5%)\\x14q\\x19sH\\xbb[\\xbe\\xcb\\xa0\\x1a^\\x1f\\xcaxyt@\\xfb\\xa0\\x81@P\\x10\\x91b\\x04_\\xba_S\\xb9\\\"\\xe6\\xfb\\xdb\\\\\\xdd\\x9ch\\x19\\xab\\x99c\\xe5\\xfe\\xf02\\x9d\\xd0\\xec\\xe3\\xc9\\xf4\\x87x.\\x89\\x93\\xa8>\\x04\\xdd\\x0c\\xd9\\x03\\x17B1 g\\xed\\xc3\\xa9\\xe7\\x8c\\xb9\\x06\\xa0\\xb5\\x18\\x0d\\xab;M\\xf2\\x99\\x16f\\xab\\x18\\xff\\xf7\\xc3\\x8cr\\xa8\\x98X\\xe6\\xfe\\xbeK\\xceT\\xc6\\xd6\\xe6Lm\\xccX*\\xd2dj\\x1b\\x10|\\x048\\xca\\xc7\\xa5\\x9c'\\xed\\x92\\xf30S\\xef\\xfb{a\\x06\\xde\\xc4\\x0b \\xefg/\\xcc\\xde'\\xf9\\x82EcH\\xdd\\xda\\x0b\\x06\\x8a>\\x04K7=W\\xf5An\\x83\\x0b\\x93\\xfb4\\xa1\\xee\\x04NBpjbB\\xc9\\x079\\xd5o\\xad\\x99\\x94\\xac\\x88\\xdfo\\xdd0\\xcf\\x1e\\xf5\\xe8\\xc6\\xa5\\x133\\xda;f^\\xd61lb\\xd4L\\xcc<M\\xb4S\\x9f\\xea{\\x13f\\xef\\xc9\\xdc\\xcf\\xc3\\x1b\\xf2\\x1f$M\\xfa\\x8c}PE\\xb8\\x7f\\x8f\\x1e\\x19\\xde\\xfb\\xb3\\xbf<\\xbfx\\xf3\\xd3\\xd9\\xd5\\x9b\\xf7\\xaf\\xdf\\xbc\\x7fs\\xf17,\\x81\\xe4\\x84\\xbeQ\\xf25'\\xf1\\xb4/\\x08\\x98\\xd4\\xaf\\xc9\\xdc\\x98\\xf8\\xc2\\x98a\\x1e\\n:\\x0c\\xe2,;s\\xe5e\\x8cB\\x06\\xbb\\xb4\\x82\\x1d\\x99`\\x1c\\xfeI\\xcc<\\x9a\\x1a\\xde\\xaa\\xdf\\xf3\\x0c\\xa8\\x0e6\\x13\\xbd>P\\x85\\xc5\\\\\\xefL\\xcf\\xc1\\xe6F\\xf4[e\\x81\\x1a\\xcby1\\x18/\\x8c\\x83\\xa8\\x98\\x12\\xa1\\x95\\xe9p\\x1fG\\xef\\xe0\\xb2\\xad\\xda\\xeb\\x07\\xae\\xc9\\xed[S\\xb3\\\\\\x9bEM\\xee\\xe5\\xfe\\x9c\\x9b[\\xd3_O\\x9eP\\x1e>\\xa4\\x8b\\x88\\x89\\x92\\xe9O<\\x13M!a\\x1f\\xd0\\xaeJkJ\\x86ofa\\x94\\x93\\xd4n]\\x91PAn\\x8b\\xc7J.\\xb1v\\xaeV*\\xad\\x93\\xe6\\x84i\\xa2\\x16r\\xf3\\x15\\x9c\\x0e\\x14:\\x88\\xdf\\xf7\\xf7hK\\xc6\\xde/WQ\\x18\\x84,\\x1dIy#\\x97 _\\xa5\\x12\\xe5\\x8d\\xae\\x8e\\x9e3\\x85\\xb2A/J\\xfc\\xe9\\xbfs [Y\\xe0G~jq1\\xbex%\\xd3Y\\x89m]\\xa0s&\\xbac\\xc6I\\xbc\\xc5\\xbeA\\x84LO\\xbc|A\\xa0\\xec\\x7f\\x14f\\x18\\x07\\xdf\\x87,X\\x90\\xa5\\xef\\xc1\\x1b\\xf1*%Y\\x12\\xdd\\xd0\\x13!\\x99AV\\x04\\x0b\\xe6\\xed\\xdf\\x08l\\xe3Y\\xcdIe\\x86=\\xc9r\\x15Fd\\xfa\\xa6\\x82\\x9c\\xcf]\\x08,\\xd1\\x01\\xcb\\x85\\xc9\\xa5\\xfa\\xc1\\xd9\\xd7\\xe6\\x07\\x02\\x9e\\xda\\x0f(m\\xf9\\xce_)\\x14v\\x03\\x9etK\\xf2\\x1d\\xa4\\xd5X\\xd0\\x8b\\x01k\\xac\\x95\\xdf\\xe3{\\xf2kA\\xe2\\x80\\x98K,\\xfd\\xd5\\ns\\x1f\\x98\\n\\xcc\\xfc(\\xba\\xf6\\x83/c9h\\x97\\xb8\\x1e\\x94H\\xf3\\xd0q\\xea\\x8b+\\x9e\\xb0\\xadx9\\xc1m\\x8af\\x16\\x9eh\\xa9z\\xa6\\xf1\\x15m6GQ9a\\xa8\\\\\\xe7\\xa7|\\x84q\\xed\\xf3#\\x16,v\\xe8H2'R!!U\\xae\\x08Fj\\xd2\\xd6\\xae\\x16\\xc3\\x9aP\\xc9Jz\\x15\\xde\\xab\\xb3\\xd7\\xcf?\\xbf\\xbd\\x10\\xfa\\x95R\\xc1\\xdf\\xb6\\\"\\xc4j\\xa8w3\\xbb\\x0d1\\xb2\\x9c:h\\x1d\\xdc\\x03?#0\\x1ck\\xe7\\x03\\x83'\\x8a~)p\\x9c\\x0c\\x0c1\\x02\\x0c\\xf1\\x96\\xb1\\x9d\\x91\\xb9\\x1d\\xb9b\\xb5)\\xd5G\\\\\\\\\\x86\\xa6\\x04\\xd3\\xa2\\xfd\\xa6\\x86d~N\\x93x\\x0e\\xcc3\\x141\\x88h\\x12\\xd7\\xcf9\\xc3&|\\x16J\\xe9D\\x9b\\xba!\\xe4y.SA\\x0e\\xa2\\x83u^{\\x92;.l\\x90^\\xf1_\\xc49+[K\\x17\\n\\xa2R\\xf0\\xe6\\xf9\\x8a\\x04\\xe1,$\\xd3\\x12-\\\"C\\xcfQc\\x06v\\x92RD\\x19\\xc6\\xf3\\x88\\xf0\\x11r_]\\x07\\x83\\xc6\\xfba,pn\\xed\\xad\\xa72\\xb5k\\x84\\xb1\\xd1\\x0d#\\\\w\\x18\\x7f{\\xfe\\xee-\\xc7\\xde\\xb51P\\xbci\\x1a\\x81\\xf4\\xae\\xd1\\x7f\\xb1\\x8f\\xc9-\\x14\\xb6\\xe6\\xdcb\\xc7\\xa7V\\xaa#\\xf0\\xf8X\\xf5\\x05\\xac\t\\x93\\xbb\\xad1\\xd7$\\xf6\\x86\\xc3\\x9a\\x19\\xdf\\xa1\\x96\\x96K\\xda\\xe4\\x956\\x81'\\xf4\\xa5\\x1aXLn+\\xd4\\x1e+\\xef>\\x9f_\\\\}>?\\xbb\\xfa\\xf8\\xe9\\xc3\\xc7\\xb3O\\x17\\x7f\\x1b\\xeb\\x92\\xa1\\xfe\\xf5\\xf9\\xf9\\xd5\\x8b\\x0f\\x1f\\xde\\x9e=\\x7f\\x7f\\xf5\\xd3\\xf3\\xb7\\x9f\\xcf\\xc6\\xb0\\xab/\\xf5\\xfe\\xf3\\xbb\\xb3Oo^\\x8aR\\x87\\xfaR\\x1f?\\x9c\\xbfA\\xd6@)>2\\xd4\\xfa\\xe1\\xa7\\xb3Oo?<\\x7fu\\xf6J\\xed\\xc6\\xce\\xa8\\xf9E\\x18\\xd3\\x85\\xf1\\xea\\xc3;\\xc1\\x10\\xbfD\\x19[\\x97\\xf3\\x12H\\xb2\\xd1P\\x7f:\\x02'v\\x89\\xc7\\xab\\x0e\tz8\\x98NS\\xe0\\xe2h\\xe2\\xbd\\xfa\\xf0\\xeey\\x9e\\xa7\\xe1u\\x91\\x93\\xf7\\xfe\\x92d+?\\xe8\\xfe6\\xd3\\x7f\\xdb\\xf5Y$>\\x13\\x00\\xe8\\xf5U \\xbez\\xc7\\xe3\\x9d\\xbc#\\xf9\\\"\\x99\\xf2\\xef\\xf4\\x98\\xba\\x94W\\xccP^\\xe1\\x85\\xd9\\xcb\\\"\\xcb\\x93e\\xd9_J\\x18\\x16\\xdeU\\xe3\\xb9\\xb0\\x97\\xe4^U\\x9a/\\x9d\\x16\\xba\\x1f\\xf0`]\\x95s\\xa0\\xea\\xd7fL\\x12f[\\xbb\\x87\\x96\\x0b\\xb3\\x16co\\xdaw\\xa4\\xcd\\xbc<y\\x9b\\xdc\\x92\\xf4\\xa5\\x9f\\x11S,1qQ\\x1e5\\x9e\\xcc4q\\xf4\\xe4ka\\xa4\\xe3\\xe4\\xcb\\x97gVk\\x0b\\xd6\\xfa\\x05\\xae\\xa3\\xb1\\xc1rC\\xbdV\\xd2r\\x18\\x83F\\x1f\\xab^\\xcb\\xdaJ\\xe8\\xdb\\xcc\\xb2\\xc8\\xf2\\xcfY\\xe9)9\\x86\\x04\\xfdK\\xbd\\x06\\xae\\xe9\\x003\\xbd\\x16~\\xf6\\\"I\\\"\\xe2\\xc7?1a<\\xaf\\xab\\x81\\x91\\xfa\\xd5\\xf5\\xbeX\\x924\\x0c\\x9au\\xd5\\x10Q\\xbf\\xba>&Y\\x98\\x877\\xc4X\\xa7\\x1e\\xcb\\xf5\\xab\\xfc\\xc3\\x0dI)\\x07E\\xa6\\xc6\\xe1\\x9b\\x90b\\x93\\xc9\\x95/\\xc3F\\x06~\\xf2/<\\x05\\xe2\\xb0\t\\xf8L\\x1e\\xa5x\\xa6\\xefd\\x19*(\\xb5\\xad\\xbd\\x01\\xee?\\x174[\\xb4ms\\x03\\xdf\\x9a7\\xe8\\x9c>\\xeb\\x08[\\xb5\\xf0j{\\x02N\\x14sA\\xf9\\xd2\\xbbi\\x00:\\x96k\\xb1\\x88\\xad\\xd4\\x8e;\\x0es|\\xcd(\\xaf\\x17\\x19\\xbf\\x92w\\x1b\\x9c@\\xc4\\xca\\x07\\xc6\\xf2\\xf5\\xcd\\x06'\\x10\\xb0/dD7\\x99]6lv\\xc4\\xa5\\xe1\\xd7jO4\\xbeq\\xd6\\xf8\\xf9\\xd6\\x7f\\\\\\xf9[\\xbf\\xfd\\xf2K1\\x18\\xbc\\x1cl\\xe1\\xdfW\\xfb\\xec\\xcf!\\xbb}\\xcdn_\\xb3\\xdb\\xd1\\xeb\\xd7\\xf4\\xcf\\xce\\x01+\\xbcs\\xf0\\x8a\\xfdyMo\\x87\\xaf\\xf1\\xedh0x\\xb9\\xc5\\xfe\\xbe\\xc2?\\xac\\xf0hx\\x88o_\\x0e\\xd8\\xed\\xeb3z\\xbb3\\x18\\x0c\\xe9\\xed\\xab\\x03\\xfc\\xf6\\xf5S\\xf6\\xf6\\xf5\\xab\\x97x\\xfb\\xea5\\xbb}\\xfd\\xfa\\x95&|Is\\x05\\xbdyu\\xf5\\xfc\\xe2\\xe2\\xd3\\x9b\\x17\\x9f/\\xce\\xae\\xde?\\x7fw6\\x06k\\xea\\xe7\\xfeVJ\\xfc \\x0f\\xa7Vs\\xfb}\\xfa\\xf0\\xe1\\xa2\\xed\\xa34Ir\\xcdg\\xf5/\\xae\\xce/\\x9e\\x7f\\xba\\xb8z\\xf9\\xd7\\xe7\\x9f\\xb4F\\x85Ji^\\x0e6\\xc1\\xfa\\xe5\\x97-o\\xb0\\xf5\\x14\\x81\\xfc\\xe2\\x00\\xa19\\xe0\\xc0\\xddg\\xd0\\xdcy\\xcd\\xa0\\xb9;\\xd0t\\xa3Z\\x1cz\\xae\\x1e]\\x0d\\xb3,d\\x8e\\xd2\\xf1\\xd4O\\xa7\\x0c\\xff\\xeb\\x91y\\xcbQ=n\\xa4\\x16\\x00\\xb4DV\\xca\\xf7\\xa1\\xb3\\xea\\xfa \\xa6\\xfai'\\x13jj!3\\xe2\\xc00\\xf5\\x03\\xb7\\xbd\\xb2I~\\xe9\\xc8\\nr\\x8d\\xd6\\x15\\x8c\\xa8B|3ln7\\x13)\\x8a\\xe6\\xcdFS\\xcf\\xef\\xceO\\x1c\\x1c\\xee\\xd4\\x18\\x8a\\x1df\\xa3\\xfc\\xd4\\xc0W4x\\n\\x8a\\xef\\xfc`\\xf1\\x89\\xcc2.\\xe1Bi\\xc7\\x157\\x9d\\xe264:a\\x87\\x9e\\xcfX&E\\x9cK\\xf6\\xf1\\xea\\xd8P\\x98\\x1f\\xa2\\xb5\\x94^.V eZ\\xaf\\xc6\\xae\\x7fi\\x94\\xe7\\x10\\xb5\\xdf\\x92\\xce\\xa7\\xf9\\xd2K\\xc9\\x8cI\\x91\\xe7$\\xffD7\\xff;\\xda\\xea'\\xe2O\\xefl\\xc7#\\xf1\\xaf\\x05)\\x08z\\x04R\\xcc\\xdc\\x86_\\xe7$\\xffk\\x92\\xe5\\xef\\x93i\\xe7\\x8e(\\xbb*}c\\xb7:6\\x17q+P\\xb5\\x8dxSRN+3\\xb1S&\\x94>S+n\\x08\\xb0\\xeb\\xfd\\xe0\\xf1\\xf3Z'74M+\\xe3\\x8c\\x94^4'\\x12\\x95:(T\\xc6\\xc4\\x13!\\x97/_\\x05I\\x9c\\x93\\xafF\\xdfdM\\n\\x10\\x90\\xd6S\\xeae\\x8b\\xa4\\x88\\xa6\\x9fWS?'\\x08\\x14_\\x9ft\\x18\\xf0\\xacA-B\\x1d\\x82\\xbe\\xc3\\xec1\\xeb \\xb0\\xc5\\xa8]\\xf6\\xd5\\xe3\\x16`\\xdcc\\x016\\x11P\\xdbT\\xadH:K\\xd2%\\x1b\\xef\\x9b\\xd9{\\x12\\x90,\\xf3\\xd3\\xbb~\\xfe\\xcb\\xc4\\xbb*\\xf0\\xcb\\x17~\\x1e,\\x98\\x86\\x8f'\\x8a\\xc51\\x9ajo\\xac\\x9f\\nk\\xe81`\\xf8=0\\xe0\\xc8\\x10\\xedo\\xb8\\xfbT\\xab?\\x1b\\x19\\xfc6w\\xf6\\xd4\\xf2\\x183\\xad2\\x08\\x91\\\"YN\\x93\\xa0\\x10\\xd3\\xab\tJ'^{\\xe2\\xc7\\xbb\\x84)q\\xf4\\xb5\\xc5\\xfeM8\\xc7h\\x9erf\\xe5\\x93\\xe6{\\xaf\\xc8H\\xfa|\\xce\\x1b\\xde\\xfe\\xe5\\xfal:'\\xbfl\\xff2\\xdd\\xf6r\\x92\\xe5\\xb6\\xa6\\xa0\\xf6\\x1c\\xd0\\xf8x\\xd0\\x8d\\xd7\\xf0\\xa9\\x00\\xd9\\x82\\xcc\\x8b\\x93\\xa9\\xc1:*\\xe69V\\x995\\xa7~W\\x8b8\\xedz\\x8e\\xa5\\x16?\\x9e\\xc7\\xb1\\x8cK:\\x00\\xc3Y\\xb2,h\\x93\\xf4\\xd2\\xc5\\x1d\\xa5\\xd9\\xbch\\xc5Z\\xed\\xb6E\\xbe\\x8c0\\x8a\\x1c\\xda\\x8e\\xd1;\\x07\\xc6\\xd2{\\x8aP(\\x1c}V\\x00\\xf1\\x8bi\\xfd\\xd6\\xd6]\\x84Q)\\xbbv\\xd2p\\xc8=\\x16(\\xdc\\xf0?\\x94db\\x02\\\\\\xdd\\x0b:\\xf7\\x95\\xd9B\\xed=\\xa5\\xe1\\xea2\\x0bf\\xeb\\xc1\\x03\\xeb\\x89\\x92\\x82a\\xf9\\xfc\\xe9\\x0d\\xc6\\x83\\xd2<f\\nK\\x06\\x8bS\\xb03\\x9b\\x9d\\x04a\\x9c\\x914\\x7fAfIJl\\xf6\\x1d\\xba\\xbd\\xc2\\x18l\\xe3[\\x17-\\xafe\\xcfT\\xddZ\\x0bL^\\xb0Hg\\xd4\\x86(\\x81\\xbbY\\x8f&\\xa8\\x18\\xaf\\xa8\\xb9f\\xe3\\xc4 \\xf4\\x0dJ\\x1fF\\x1duK\\xc1b\\\"\\x95\\xe9\\xea0\\xbe\\xe3\\xae\\xbfcn\\xf9+.\\xdd\\xfa\\x99qh^\\xa4\\x840\\x88\\xb2\\xa4S3\\x91G\\x11\\xdd,\\x7f\\x0e\\xf3\\x05-\\xd1e\\x1fA\\xbc\\x95O\\x0f\\x14JD\\xd4*(\\xa7\\x89\\xf0i\\xaa\\xbaB\\xdb\\xc2\\x83\\x05\\x0bv\\xb5\\x80N\\xd3\\xe5\\xd6f\\x02\\xbc\\x9c\\xe5\\x8a\\xc4\\xb9\\xf3W+\\x12O\\xe56uM\\xfd\\xf5\\xe2\\xdd\\xdb~-\\xe1\\xa6=\\x81\\x9cY\\xe3\\xf2Ah\\xbb\\x7fA\\xb7o\\xaf:sV\\x12\\xf3\\xb1\\x19\\xea\\xac\\xd9\\x13\\xfe\t\\xbaO%I\\xa2\\xdf\\xf0\\x16d\\xe7\\xcf\\xcenwlV#\\xd9$H\\xa6\\x0d\\x05\\x9b\\xc6,\\\\\\x0cZ\\x93)\\x18\\xb0D\\xa1\\x05OD\\x96A\\x95\\xa1\\xf2\\x0867\\x0b8\\x86L\\x9b\\x01M \\xb5|R\\x18\\xe4\\x9c\\x01Eyp\\n\\xa1\\x1dO\\xa2K\\x17\\x08\\xfe\\x1fa\\xe71h\\xa4\\x1a!\\xb4\\xac\\xba\\xb2\\x02\\xc3\\xdcr\\x98V\\x8e~\\x8dy@N\\x99g\\x7f\\xe4B\\xe0\\xa0\\xf1\\x94\\xb81\\xec#x\\xb4\\x1d[-PF\\xad\\xbe\\xd2<2\\xb6wwUR\\xa2\\xb2\\xfa\\xab\\xd9\\xeb\\xf6j\\x92\\xd6w\\xa8\\x8b\\xe2(\\xe8\\x16\\x91\\x05\\xda\\xde\\x1b8\\xae\\x08\\xe29\\xe0\tRb{\\xf8\\xd4\\xa9\\xa2?\\\\\\xf8s\\x0b\\xa9\\xcc\\x13\\xb0^\\x9e\\x9f\\x7f*\\\"L\\x81\\xe4\\xbe<??\\xcf\\xef\\\"\\xf2\\x8a\\x04\\x91\\x9f\\xa2L\\x89>C\\xe1\\x1c+\\x10\\x85\\x84\\xd2\\x94A\\x8e\\xb7\\xaf>\\xbc\\x93\\x7f\\xb3\\xca\\xc5\\xddE\\xf2\\x85\\xc4\\xec\\xc6\\xcf\\xfd\\x8b\\xd4\\x8f\\xb3\\x19I\\xdf\\xe4d\\x89\\x0f_\\x87\\xbcQ\\xba\\x9d\\x9fG\\xd1\\xcb$\\x8a\\x18\\xc7\\x8bO\\x94\\xdb\\xd7I\\xba\\x14\\x0e\\xca\\xf4\\x9e\\x85t\\x16O\\xde\\x91i\\xe8ce\\xef\\xc2%\\x1e\\x80\\xcc\\x8d\\x9b\\x9e\\x03S\\x8a\\xce\\xde\\xf9+\\x97\\xfe\\xc52\\x1f\\xfd\\x90\\x8e\\xe1\\xd7\\x82d\\xac\\xeb\\x1f\\xa3b\\x1e\\xc6\\xfc\\x0f\\xfb\\xf2\\xfc\\xa7\\xbf\\xbc\\xc5\\xb5\\x8e\\x05\\xce\\x7f\\xfa\\x0b#\\\\\\xc5\\xddG?_\\x9c\\x93yy\\x9b\\x84q.n$(\\x9c\\xff\\xf4\\x176\\xee$e\\x83f\\xd15^\\x14\\xb3\\x99\\xa8\\x8b\\x82\\xfb|A\\x08\\xfb\\x9c\\xa2\\xa1\\x8b\\xd4\\x0f\\xbe\\xbc\\xe4\\x00/\\x1f\\xb0\\xbb\\xa4\\x08\\xb0G\\x96\\x88\\xe7\\xe1\\xd2y\\xcc\\x18\\x99\\x93\\xa1(Dl\\xd1L\\x1f\\xb4\\x93\\xee\\xccb\\x92iv&\\xddK)\\xdd\\x89\\x8d73\\xe0\\xfb-\\xa8,G\\x15t\\x81\\xce\\x1b3\\xee\\x8a\\x94`\\xc8Q\\x17\\\"\\xba\\x10'\\xd1%\\xdd\\xee\\x1e\\xc2\\xb5c\\xcd\\xab8\\x91\\xa1\\xa62\\xbcI\\x17\\x024\\x1c\\xe9\\xb1\\x08T\\xe2eQ\\x18\\x10\\xfb\\xd0\\x85\\xada\\x97!\\xafi\\xbb\\x9b[\\xeb\\xce3\\xd5\\x99c\\xea{\\x04\\xc7\\xeem\\xd8o$xj\\xee\t\\xf6\\x10\\x9e\\xd0s\\xbf\\xb9\\\\\\xea\\xee\\x07\\xf6\\xc8PNrd\\xb0w\\x0de\\xb8\\xbb\\x84\\xa2;_\\x0fAJ\\xb8pG\\xe5\\xbd8\\x0f\\xb7o\\x8a\\xd8\\xde;xp\\xe5\\xe5\\xe3B\\xd2\\xb5\\x84\\x8c\\x1d\\xdc\\x1d8\\xdeL\\xd7\\xc3=},\\xe6&\\xee\\xee\\xda\tz&\\x82E\\x99M\\xd0\\x1e%\\xe6&\\xc6D\\xf6\\xc9\\x08\\xb9\\xf6\\x93\\xa0l\\xac\\xb92T\\x97\\x93\\xbe3\\xb9&\\xa4\\xba\\x98\\xf4\\xdd\\xbd=\\xc7\\xde\\x18\\xd4D\\x95\\xa3\\x9d\\x03\\x87\\xc7\\xedq\\xc1jF\\xcf\\xd1\\x9bG^QR\\x8eG\\xfb!\\xc2\\xfe\\xee\\xaa\\x9e\\x82\\xe3\\xa1%\\x06\\x8f\\xb0\\xb6\\x12\\xd1\\xc2\\xae4>\\xfee\\xb8\\xba\\xabPooRK\\xfe}\\xaa\\xa5\\xa8\\x10\\xa8<]L\\xe3\\xf54\\x895\\xe1\\x18\\x90\\xdbB\\xff\\xdb\\x9c\\xf1Wbl\\x9b'\\xa5\\xaf\\x84n\\x8e\\xcd\\xaeK\\xbc\\x9d\\xa1qn\\x1d\\xed\\xe4\\xfe\\x13!\\xf5\\x162n#\\xb6\\x87\\x83\\xa1c\\x1b\\xa7\\x9a\\xb7{@\\x11\\xbb>\\xae\\xef\\xef\\x0f.X~#\\x8c/\\xf4\\n\\xe5+7\\xd1x\\xa9\\x88\\xe7\\x1c\\xcf_\\x07\\xe8\\xfd\\xe0\\xda\\x9aQ|c\\xa3!Vn\\xcf>\\xadU\\x8ftat#\\x89\\xddk6e\\xb3(\\xdd\\x01\\xc0\\x02\\xcb\\x86\\xf1#\\x17\\x1c\\x81g0@\\x1e#ET\\xf1t08\\x18>}:\\xda\\xdb=\\xd8\\x1d<}:\\xa4,\\xc7\\x9a4\\xfd\\xb7d\\xb5lM\\xa1\\x07[0d\\xe6\\xc0\\xd6\\xbb0fVs(\\x12\\x06B\\xc9\\x0f\\xf8\\x17\\x0cyFi\\x90#\\xb8\t\\xb30\\x87E\\x9e\\xaf\\xc6\\xdb\\xdb3? \\xd7I\\xf2\\xc5\\x9b\\x87\\xf9\\xa2\\xb8\\xf6\\xc2d\\x1b\\x15\\x99\\xdb\\xd3$\\xc8\\xb6\\xf1\\xe3\\xad)\t\\x92)ar\\x9f\\xd30\\xbe\\xf1\\xd3\\xd0\\x8f\\xf3\\x13\\xac\\xb2\\x96:\\xa6L\\x1bHQ\\x8e\\xf5\\xc4O\\xe7\\xd9\\xe4\\x92\\x95\\x8bi\\x15\\x9f?\\xbd\\xa9d\\xdfRb\\x19\\xd8\\x84\\xa1\\xeao\\xc4\\xea\\xc0Qc\\xae\\xb6\\\"\\x8a`I\\xb2\\xcc\\x9f\\x13t\\xb4\\xcb\\x08>\\x8f\\x93xk)F<%7@\\xe2\\x9b0Mb\\x14\\xaf\\xd2\\x8f\\xf1C\\x1cG\\x06~<\\x05\\x7f:\\x0d)\\x80\\xfd\\x08\\x16$Z\\xcd\\x8a\\x08n\\xfd4\\x0e\\xe3y\\xe6)n27<,d\\x95oHM\t\\xc0\\xa8\\xbc\\x04\\x85d\\x14\\xf6o\\x04p\\xe0\\xa70\\x89\\x90\\x9d\\xc2\\x8c\\xb8\\xb3\\xd4_\\x92\\xec\\\"\\xf9\\x98\\xac\\xe0\\x84\\xceT\\xf2\\xc8\\x8d\\xd1\\x87\\xbe\\xe3IC)]CJ\\xb7\\xeb\\x1c\\xc9\\xd3\\xf5Vk\\x8bI\\xa7x\\x03\\xedj\\xaa\\x86\\xf7\\x998\\x03\\x1a\\x91\\x04\\xa1\\x81\\xf4r\\xe1\\x1d\\xd5\\xba+\\xa4\\xc6j.Up\\xdat\\xb1\\x1aW)L\\xf0\\xd9%\\x93\\x94\\xc6\\xcd\\xc8\\xc0\\xd887T\\xe9\\xdb\\xbcu\\xcd\\xca\\x9b\\x932\\xf2z\\xdf\\xa3\\xdc\\xb5_\\xa5\\x1a\\xaf7\\xa5\\xa6\\x0fi\\x99\\x8ee\\xcdJMu2}M\\xbf\\xaa4\\xda\\x0bm\\xadl\\xd6{\\xd7\\xaaqU\\xd7\\xd6\\x8aa\\x0f\\xfa\\xd7\\x8a\\xc5;k]\\x1b\\x9e\\xb2\\xab\\xa2\\xae\\xc2Od~\\xf6u\\xd5\\xb7\\xb6r\\x8d\\xb2\\xcf:\\x16i\\x0f\\xa7F\\xb9\\xee\\xfe\\x8e\\x8dR\\x1b\\xaf\\x14\\x0f\\x84^\\xbd\\xa7\\x1fu\\xf4\\x1dq\\xea\\xda\\x15\\xe3WR\\xcd\\x0c\\xcfIf\\xe5X@\\xd7\\x9e0\\xea\\xe8\\xdd\\xa4(\\xd5\\xb9d>\\xa6\\xe1\\x12\\x0d\\xfc\\xfaV]\\xedk\\xd4\\xeb\\xe9P\\x07\\xbe\\xd0l/|n\\x88\\xe5\\xa0[\\xe2P\\xcf\\xc4\\xa7\\xed?\\x93O1\\x970~S\\x16{p\\xca\\x185\\xb1\\xbd\\xb7\\xebx\\xec\\xbd\\x9e\\n]\\xdf\\xfdWs\\x8e\\xe1\\x04J\\xc1K9'#\\x0e\\xd9\\xbf=\\x7f\\xf7\\xf6\\xeck@V\\xfcx\\xc5\\x97)\\xf13\\x9cY\\xc2\\x1f,\\xfd\\xf4\\x0b\\x0b\\xfc\\xc0n9\\xe9pR%v\\xa1\\xe5)\\xcc\\xec\\\"\\xfe\\x12'\\xb71\\xb0g\\x8e\\xe5\\xc0&/\\x85\\x95\\x9c\\x82\\xc52\\xfe\\x89'\\xe5)f\\xe3\\x99b9n\\xd9\\xe5U^\\xa4\\xe4<\\xf7\\x83/\\x17\\xa9\\x8fQ\\xc6\\x0codk\\x19)\\xee\\x01\\xad\\x10\\x9fe\\xb4$\\x86\\x0d\\x14\\xc4\\x87\\xc3\\x9f\\xd1.K\\xe9\\xcd\\xca_iK|\\x0b\\xd6\t9\\xedOj\\x8c\\xbb\\x90\\xd6_\\x8a\\xb1\\xb6\\xae\\xec\\x1b9\\x1b\\x01\\xce\\xd3&Xc\\xd0G\\x0c\\xc9)e\\xd79\t.lT\\xc1\\xfcq\\x1e0\\xe1\\x07\\xa3\\nM\\xd3\\xe1(\\xa1\\xb4\\xd6\\x8e\\x83\\xd3%\\x8884E\\x91\\xa0\\xd3\\x94*>$\\xa5\\xff\\xc8$\\xb6wv\\x07\\x8e\\\"h\\x15\\xbe\\x83\\xf8\\xfe`o\\x88\\x96W\\x07{#\\xb5\\\\\\xe5j\\x82\\xe5vx\\xb9]\\xfew\\x8f\\xff\\xddw$w\\xf1G\\xecN\\xf1T\\xe6\\xaat\\xe9:b{\\xd4Hu\\x11r\\x13\\x08\\xf5\\xb90\\x8dP\\xa5\\\\E\\x15\\x103\\xf5\\xe6L\\x14NX\\x0c\\xaf&\\x92\\xc8L\\xd2-\\xd1\\xd3\\xb61\\xaaeso\\x1af+\\xca\\xc82O\\x0fo\\xb5\\xf032\\xfdD\\xe6a\\x963\\x05\\x08Z\\xeeNbs\\x14\\x89\\xc2&\\x8d\\xa0\\xec\\x0f\\xf4Y\\xdc\\xb4\\nJ\\x99\\xaa\\xdd\\xbb\\x12\\xcd\\x8a\\xa1\\xa2\\x01\\x8b\\xf6\\x05\\x8b\\x1c/\\xbdy\\xc3\\xcf\\xb6\\xc6'\\xe5\\x0b\\x17\\xeaq\\x86\\x9a@\\xd4\\x04\\xd4\\x14\\xe1\\xfaz\\xc1\\x03\\xa5\\xfc^\\x9e\\xfa7$\\xcd\\xc8\\xc5m\\xf2\\x91\\x96\\xb3\\x89w\\x95\\xfb\\xe9\\x9c\\xe4\\xb4+.dJN\\x9bf?\\x02\\xbd\\x18}\\xad\\xbe\\x98\\xe6\\x97\\xd9\\x99\\xc8\\x1dj\\x14\\x03!\\x9e\\xa3|=\\xa6\\xd6@\\x05\\xb8\\x00$\\xd3M7#X\\xd2K3\\xfaX\\x1d1@]\\xe6\\xd1\\x1c\\xff\\xcc\\xb4H\\xd1\\xc8\\x85\\x99s)PH\\x95\\xf1\\xb7-\\xef\\xce\\x8f\\xf5 \\xa1\\xfb\\x9a\\xafj\\xcd\\xc0\\x1f\\xb3\\x84\\x93o[\\xc2\\xd0\t\\xc8U\\xdf\\x05\\xadB\\x80\\x16\\x9a\\xa9\\x0bw\\xa0I\\xc6\\x04\\x1c\\xae\\xd3\\x86\\xce\\xd7\\x0f\\x82bYD~^.\\x85W\\xbcM\\x92u\\x19pb\\xf0\\x83\\xa8\\xd5R\\xb2\\xad\\xfa\\xf3/\\xe1\\xea\\x02;\\xde\\xab!U\\x15nj\\xe8U\\x98\\x92 _s\\x14\\xab\\x9e\\x95\\x9f\\xc59I\\xdf\\x12\\xff\\xc6\\x00\\xa6\\xd2\\xb4W\\xd7R\\xb5\\xed\\xaajlf\\xcd;\\xe3\t]L\\xabF\\x7fRO\\xf1\\xe97\\x1f\\x8d\\x86\\x93Q\\x1fy\\xaeyb\\xf2\\x88\\xceC\\xdd\\xc9\\xa8;I3\\xc3I\\x1aUI\\xa6~Ws0a\\xcc\\xf9\\x86\\xc9\\xd1\\xacK\\x8c\\x04b+\\xd9\\xa1G\\xbe\\x92\\xa0\\xc8\\xa5y{\\x13\\x7fH\\xa7\\x84\\xd3\\xedh\\xfb\\x95}$i\\x86\\x1b?\\xb7\\x193&\\x13\\x94\\\"\\x0f\\x91\\xdd\\xd8\\xdd\\xf5^\\xf5f\\x8f\\x11\\x81n\\x0cZ+\\xeb\\xcd\\xb9\\xb3\\xca\\x86\\xad\\x95-\\xfaVfy(\\xe9\\xf4\\xae\\xd2$A\\x93\\xaa7\\xaf\\xea\\xf5\\xd6\\x17\\xd2M\\x03\\xadH\\x1e\\x00\\xcdF\\xd8\\xcb\\xb3\\x1b\\x12\\xe7\\xccl\\x01\\xe7a\\x0c\\x89\\xa7\\x7f\\xd3D\\xf4\\x8dr\\xd9\\x0b\\xee\\xde\\xa7\\xa9\\x83\\xbfk\\x9d\\xb2\\xa2\\xa4\\xdb\\xfa\\x19\\x06ku\\xe51S@ZOw-\\xfcR<\\xd6\\x1cD7\\xdce`\\xd1H\\xf4I/;\\x9a\\xe4,\\xfbh\\xc4\\\"\\x81\\xfd\\xfe\\xe08\\x93\\x10#H\\xe8\\xeb\\xc2\\x94_\\x8d\\xf3\\x81\\xd9\\xebd\\xda0b>\\x1a|z\\xd3p\\xfa\\xb1\\x1a\\xbc\\xeeY\t\\x866\\x00J\\x84o\\x0f\\xa3|\\xa1I\\x8b\\xb4=\\xa3\\xe4C\\x9f9\\x00)6\\x84v1\\x8b\\x0b\\x835XI\\xfc2\\n\\x83/\\x96>\\x90B\\xa3\\xdcK\\xc6\\xe6\\xf6(\\xfe*)\\xae#\\xd2\\xb7r\\xa9t\\xff&\\xde%EF^%\\xb7\\xf1:e\\xd7\\xac\\xfe]r\\xb3V\\xd95\\xab\\xff\\xbc\\xea_\\xb2\\xbbj\\x90\\xf4t\\xf6\\x06\\x92\\x8a\\xfeu\\xc4\\x12\\xbcbT\\xc0\\xdc\\x05\\xeb\\xba\\xc8s\\xb6Cy2H+\\x8cWE.?\\xc8\\xd0\\x14K~\\x92\\x93\\xaf\\xb9\\x9f\\x12\\x9f?sZ\\xbc\\xa8[#s\\x88K\\xf4\\xb2\\xe98\\x05\\xa0\\xea\t\\xc4\\x85\\x87s\\xe3\\xcd\\x03\\xb3\\xceV]'DDJ\\xf59\\x8bY\\xed\\xc8b:=\\xeeH\\x8dx\\xa8T\\xf2SZ~\\x92^\\xb6a\\x00\\x96/\\xe8\\x11H`=\\xb4\\xc5\\xf9\\x8a\\xdb0\\x8a^\\xd5Z4=g\\xed\\x9bG\\xae\\xc7AX\\x1dO\\x81\\x94N(tz\\x0c\\xfey\\x14\\x95lC\\x17\\xd5)\\x98<=\\xe0\\xeby\\xbc\\x15\\x12[\\\\\\x14O6\\xfcpc\\xb4\\x82\\x89&\\xf1\\xe5$\\xbflC\\x8ab\\xfcf\\xf0\\xeb\\xc4\\x06\\xe2B\\xf8\\xa4\\x86i\\xd0=\\xb7\\xb9\\xa1<\\x87)\\xef`\\x8f=\\xf1\\xa0J\\x90\\xf2\\xd4\\xe7\\xc7{\\x7f\\xca\\xbb\\x84g\\xe8\\xf2\\xa3r\\xc5H\\x83\\x9a\\xfd\\xa1\\xdff\\x7f(.a\\x87\\xe8O2\\x03|p^\\xba@O\t\\xda\\xc8\\xab\\x8dF\\x1e\\x83\\x19\\xf2\\xccv8D.7\\xa4\\\\\\x91~q4\\x11K\\xf3\t\\xdf\\xdea+\\xbc\\x99\\xebU\\x13\\xdefR;\\xc0\\xbe\\x05\\x1a.X!\\xba\\xd2$ Y\\x86U\\xffo\\xdaHW\\xf5b\\xcf\\x04M\\xe8\\x94\\xfc\\x01d\\x88%\\xe1\\x14V0\\x86\\xa9\\xe32\\x80Q\\xaa\\x0c\\x93\\xb1\\xfa^JP\\xd5\\xfd\\xd2/\\xe6\\x8b\\x9c\\xe9\\xc2[\\xbbyu\\xb5*\\xd29\\xe90\\x81\\x89*S\\x0fc=\\x12\\x91\\xf4\\xc2\\x8f\\xbf\\xf4\\xcb\\x8f\\x1d\\xd5\\xeb,\\xef\\x0c,!\\x0b\\x01\\xf0\\x8d,a#\\x85\\x97`\t\\xd5$A\\xfa\\xe8:7!\\xb9\\xed\\x9aK(\\x83\\xe9\\xd1\\xd2U\\xd0n\\xbc\\xd5\\xaf~1\\xfd\\x89\\x16e\\x82\\xf0\\x99\\xf4n\\xc3x\\x9a\\xdc2\\xcb\\x81\\xb2b\\x8d\\x87%H\\x87P\\xeea\\xe2\\x85W\\xdcKM_\\xb8<\\x0eO!\\x16!o\\x7f\\n\\xc9-\\xc6t\\xe5\\xfe'?\\xb3\\xc6\\xc7\\xc0z\\xd1\\xdc\\x85MffJr?\\x8c\\xfa\\x00\\xac\\x04\\x12\\xfb\\x84\\xb6\\xdb\\x199\\xbb5B\\xa6\\x0b\\x89\\xda\\x16oCRZIy@\\x1bf\\xa3\\xf8\\x85\\xe7\\x17s\\n5\\xcc\\xa3e\\xfb\\xcc\\x0bT^\\x94\\xfe\\xb7/J\\xb5\\x93\\xcb\\xe4\\xa6\\x13_\\x10\\xcc\\xa7\\x1e\\xe4o\\xe2\\x9c\\xa4\\xb1\\x1f\t\\x01\\x1d\\xdd&\\xa8El\\xdb\\xae=\\xc4R\\xe5t\\xe8\\x9bi\\xab}\\xe1w\\\"\\xd3\\xbaF\\x9e{\\xff\\xae\\xdd\\x90\\x92\\xbe\\xde$#1C\\xcah\\xd7\\xac\\xc7?\\xbdTS8\\xa9\\xd5\\xf7\\xdb?nH\\x8d\\xbcLVwi8_\\xe4`\\x07\\x0e\\x8c\\x06\\xc3}\\xf872\\x85\\x9f\\xfd<KbO*\\xf86\\x0cH\\x9c\\x91)F*g\\xa6U\\xef\\xde\\\\\\x88\\xc7`\\xbf{s\\xe1\\xb8\\x90\\x11\\x19>\\xdcT\\xec\\xefdz\\xcb\\xea\\xabl\\xc5\\x02\\xbaz\\xd1E\\xb0,\\xff\\xe3\\xf6\\xffQ}\\xdc0\\x1f(\\xfa\\xcd\\x05u\\xab\\xd6:)\\xa9D\\xbd,\\x91G3t\\x02\\xc8\\x14\\x16\\xe1\\xd9\\xbe\\xa5\\x10\\x17\\xcdh\\x95-\\xe1,\\xc4\\x86\\xafl\\xeat\\xf49plo\\xcc\\x9f\\x0c\\x92\\x90\\x85\\xcbaR3Q\\xa5$\\x958\\x81P1Y8\\x81\\xd0\\x01\\xc2\\x9c\\xfe\\xda\\xa8\\xb32}L\\xddb+u\\xca\\xaf\\x13\\xcf_\\xad\\xa2;\\x9eP\\xa9\\x95\\xbf,+\\xaby\\xc3\\x86z\\x82O\\\\\\xe5D`F\\xa0\\xd4\\x11\\xc6\\xc6\\xa9\\xc8\\xcb\\x93rG\\x17\\xde\\x1f\\xff\\x9b\\xe9G\\xc2\\xf2\\xceZ\\xd0\\x1aKR\\xc6c\\xacy\\x814\\xeai0\\x92\\xd2\\x85\\x0eGk\\xd7\\xb4\\xa2-x\\xb2\\x9e\\x9e\\xfa\\x81C9\\xc7\\xd8\\xb4(\\xcb\\xade\\xf7\\x95T\\x9e\\x0f\\xf6zV\\xc8\\xdc.\\xb8\\x0f\\x8a\\xe3\\x9e\\x1b:\\xd5\\xf3?\\x81A\\xaf\\xda]\\x16*\\xbc\\xde\\x9a\\xe8i\\xea\\xc7\\xd3diw\\xfan\\x18\\xbak1\\xf36\\xdb\\xf2\\x82$\\x0e\\xfc\\xdc\\xae\\x85\\xc4\\xc74\\xc6cJeX\\xce\\x95\\xe5\\x82\\xbd\\xb9\\x19\\xc3&\\xa4Ne\\x0e\\xb1\\xb3\\xff\\xf8\\xe43\\x8dh\\x06<\\xb5e\\xe39Sp\\xec6\\xe6\\xcb\\x07\\x83\\xd5|\\x05\\x8d\\xdcc\\xd9o\\x87\\x83\\x81\\x03\\xa7\\xfa\\xd2\\xd0-ZF\\x94V\\x06Y\\x0d\\xe9\\xf2\\xdd\\x188.\\xa46\\xe5\\x9d\\x13\\xa7\\xdd\\xd0\\xdd\\x14\\x8c\\\\\\xb6v\\x7fh\\xb4g\\xcdInQ\\\\\\xc1\\xacW2q\\xd7t\\xfc\\xb2\\x9e\\x07\\x94aKR%\\xdc\\xb4\\xc9\\xf3\\xcbBw\\x0c^7\\xe5\\x0cE\\xb2i\\x0f_P\\\"\\xf1\\x11KTsP\\x89\\\"\\xeb\\x9a\\x17\\xc7e\\xce\\x88F\\\\\\x9f>=\\xc1\\x9d\\x11\\x9002l\\x9aY\\x94$iW\\xef\\x0c]\\x0b\\xb3\\xf7\\xfe{\\xf4\\x81\\xd9\\xc44\\n\\x03\\xe6\\x12\\xc3v}\\nc\\x88\\xd7O\\xe8!\\xe1\\xa4Q\\xaf<Q\\xad+TN\\xe3fJ\\xba$\\xc4\\xf3Z\\xf9}[\\xacf\\xa1\\xd4\\x12\\xbd1*\\x00@>\\x87J\\xe3>\\xc3\\x99\\xa6\\x91\\x1b\\xb4\\xc4qn\\xf4\\xc1 \\\\R\\xcaK\\xddh\\x98\\xd6\\x88\\xcb\\xd4\\x93\\x9d\\xfe=\\xd1\\xb0n\\x9aO\\xea\\x9d\\xa91p\\xf2\\xa5\\xf0\\x8c\\xba\\x05\\xd9\\xe7\\x0c&\\xd5\\xa9[\\x92ofC\\x08X\\xe3\\xd05\\xef\\x97\\x7f\\xa0\\xe7\\xaa\\xd9Gr_\\x9f\\xc8b\\xcf\\xe4\\xc3\\xd9\\x89\\x0eR;Y?\\xffZ\\x97\\x98gO/\\xe69\\xd0Iy\\x98\\x87Y\\xf3\\\\\\xc4A\\xd5\\x1f3\\xbd\\xff\\xb0;\\xc7\\x9e\\xd9\\x14.cF<\\x1ao[\\x96\\x94\\xdeGk%\\xcb\\x82\t\\xb9\\xd4\\xb9\\xf7\\xa2\\\\\\x7f`\\xf0\\x06\\x8f\\x1a\\x11\\xd8C\\xb3\\xe7\\x1cH\\x82']8`!^\\x9ad\\x97]\\x84\\xaaT\\\\\\xe3%\\xe72\\xef<6\\xa6f\\x02\\x0d<?\\x13\\xee$ZKE\\xe6B\\x80\\x14\\x02\\xb3\\xb1\\x97_e.\\x8cXB\\xbb\\xd3n\\x11\\x80\\xd8\\xe6\\xd5\\x91\\xc8\\xaczUZ\\xa2\\xa7\\xd8\\xa2^\\x8f:\\x9a5\\x17\\xb2tp\\x0d\\xf7\\x1d\\xdbZ\\x92\\xdc\\xb7\\xf4\\\"J]\\x9a0\\x8do2[\\xba\\x1a_\\xe6\\xa2I\\x04g\\x15\\xf9\\x17fg_s\\x12cX\\xc9\\x9a\\xb3u\\x0b$T?\\xc2z\\xe5\\x11s\\xdf\\xdck\\xf3\\xde\\x94*\\xcb\\xec\\xd2\\x0f\\x89\\xdc\\x908\\xe7\\xddI\\xe2\\xcc\\xfe\\xfdA\\x15\\xb7klh\\xda\\xe7\\x0e\t\\xc8T\\xe7\\x03\\n8\\x0b\\xe8\\\\k>s\\xc21X\\x1f,\\xd8\\x84\\xcdMM\\xf2oq\\xddj\\x93l@\\xe3\\xdc\\xc1'\\xad\\x92\\xf9\\x99H\\xeb\\xa2\\x8dfB\\xaf\\x7f?\\xfb\\xdb\\x184\\xf6#\\xef\\xcf\\xce^\\xe9\\xd3\\x17\\xce\\xfc,\\xffw\\xa2\\x86\\x873mg\\xcc\\x1a\\x90\\xc8A5\\xb5n\\x0b\\xcc[]\\x9f\\xb6\\xf2\\x14\\xacs\\xca\\xfdX\\x1f\\xd1X\\x9f\\x98e\\x1d\\x1b!NOk\\x04a,\\x97\\xd5:\\xf4\\xdaj\\x97{lT\\xd4\\x9bu\\xd6R6P]_\\xc4\\xa5\\x9fLq\\x86N\\xd2K/lNl\\x13\\xf2s\\x92\\xffL\\xfc/\\xeb@\\xfeQ\\x00\\xd90\\x84H\\x84&<6\\x86\\x7f\\x088zi\\x05\\x92\\xf8uJ\\xc8o\\x9dBn\\xa8*\\x8f\\xd0\\x1e\\xd4\\xa3\\x8b\\x9b\\xfe\\xc2\\xd8vO\\x9e\\x80\\x00\\x13\\xfd\\x1d\\xd8u\\xb6K\\\\:\\x02\\xb0\\x8d6c\\xfc\\xee\\xef\\x0fe\\xb8\\xe77\\xd9Y\\x19yC\\xfb\\xf5Z\\xb4\\xc9\\xef\\xdf\\\"]\\xd6W\\xadw{\\xcf]\\xb0\\xaa\\xc8F\\x0d\\xf7w\\x8e\\xf2\\xe4xG\\x947\\xf7^\\xbe={\\xfe\\xe9\\xea\\xc5\\xdfPs\\x847\\xf8\\xeb\\xfd\\xd9\\xcfW\\xcf?_\\xfc\\xf5\\xea\\xecS\\xf5\\xe0\\xfc\\xe3\\xd9K\\xfa\\xe0\\xea\\xc5\\xf3\\x8b\\x97\\x7fm<.\\x1f\\\\\\xfc\\xf5\\xd3\\x87\\x9f\\xdfkJV/J\\xc5\\x05\\xedCLn/(}\\x1b\\x9f\\xa5\\xed\\x9eg|u4\\x97\\x0e\\xc5A\\xda\\xa8\\xcd+\\xff.J\\xfc\\xe9\\xb8%\\x83$\\xd4\\x89y\\xb5C\\x18/\\xf3[z\\xa59@\\xca^\\x91\\x8e^\\x9c\\xafH\\xf0\\x8d@\\xc9\\xbe\\xbd\\xf9o\\x06\\x81&\\xbe^\\xef></\\xf2\\xc57\\x82 xl\\xf3AD\\xfcV\\xa9\\xadP\\x134<\\xff\\x9f\\xc1\\x00\\xea\\xd9\\xe0\\xe5<JpZ\\xbf\\x1d7\\x08\\xf2\\x8e\\x11iR?\\xac1\\xa2\\x17w\\xff#c\\xeaC\\x05\\xaa$\\xe5ZP\\xd0\\xe4\\xda\\xe8\\x86\\x82\\x82\\xa2E\\xb8\\xb6\\xe1\\x81N\\x86\\xfa\\xfd\\xd3\\xf2\\xdep\\x13W\\x0dB\\xb4H\\x9a^\\xc5\\xe4\\xf6\\n\\x99\\xfd\\xf8\\x8a\\xa4\\xa9&b\\xbe\\x11\\xc5j>\\xbf\\xba\\xa6;\\xd7j2\\x01\\x0d\\xc4]~\\x9c\\xadH\\xa0i92\\x1f\\x02\\x8dO\\xb5\\xad\\x06\\xbac\\xa5\\xfc\\xd4/\\xf2\\x85\\xa6\\xd5Y\\xedT\\xc2\\xd2\\xb8\\x80\\x95b\\xab\\xaa\\x18;\\xc9\\xaa\\x92W\\xd7w\\xcc-\\xb37_\\xb6\\xaf2X\\\\\\xc6\\xaeK\\xdcY\\xba?3\\xa5\\xc0\\xe5\\xda\\xe1C\\xdaH\\xed\\xfb{\\xb4\\x0fa6?\\xc4\\xa1\\xef*\\xeasMfs\\x7f\\xc7\\xe1\\xec\\x96\\x0b\\x16s?5E\\xaf\\xeaE\\x98H5\\x0f\\xf4\\xee\\x88\\xfb\\x0d\\x19\\x0bO\\xf7?\\xd03\\xb0\\xfb\\x03\\xbd\\xf0e\\x7f\\xb0\\xdb7\\xdc\\xb1\\x10nli\\x98\\xa1\\x98[U\\x01W\\xd3\\x0c0\\xe6\\x16W\\xe2\\xd6\\xd7\\\\\\x92r?c\\\\@\\xb6s\\x04\\x9b\\x9b9\\x1cCl\\x0c\\xb3\\x99\\x1a3\\\\3\\xafa\\x92\\xdb)f\\xcfK'\\xc3\\xcbv)\\\"\\xbd2\\xd9\\x0b\\x98\\x9f@\\xa9[{\\xccm\\x0fO \\xa9?\\x9f\\x13\\x96\\xfc\\xaa\\xf6p\\xe1\\xa3\\xe5J\\xfda\\x86%\\x8b\\xbauK\\xb6\\xde\\xdc\\x0f\\x07{}$c*\\xd8$\\x93\\xd0\\x13)_x\\xbc\\xb5u\\xd4\\xe4C\\xb8\\x94~\\x12_\\xb2\\xfc\\x83\\x92\\x19\\xb0\\xf6\\xac\\xd8\\x1a>z\\x8f\\x0c\\xba\\x93\\xd1kFS\\x0d\\xe4\\xeaj\\xea\\xe7\\xfe\\xd5\\x95\\xb6_\\xa9\\x9d;p\\n\\xf1D\\xc3:\\xe7\\x94u\\x16\\x8f\\xc7`-\\xfcla\\xd1\\x134\\xf6\\x96\\xfe\\xea\\xd1\\xe31\\xb8C\\xed7\\xe2\\xf2\\x89\\xf0v\\x06w\\xa8]\\xfd\\xc6\\xec\\x11\\n\\xd7\\x84\\xeeD\t\\x9dlA\\xde\\xa5!\\x85\\x86.:\\xc6)\\xf86*\\x93\\x12\\x9b\\xe0\\xba tg\\x89T\\xddc\\x94\\xb8v\\xc0M\\xee\\xdbZ\\xbd'\\xde-\\xb9^\\xf9\\xc1\\x97\\x8fIt7\\x0b\\xa3\\x88\\xab\\xe4\\xa7d\\x95\\x92\\xa0\\x99\\x17\\x14=\\xdeW~\\xbe\\xc8\\xb8=I\\x15z\\x99\\x7fY\\xde\\x9e\\xb0\\xf4\\xb3z\\x06\\x8f\\xb8`\\xb1dM\\xda\\xd8f\\xb5p\\x91\\x9a\\xf0tk\\xc5>#^\\xd4x\\xad0\\xd6\\xad\\xfd\\x0c\\xffG\\xfa\\xa8\\x11\\xc64\\xfa\\xd8\\x9c\\xad\\x13\\x18>R_\\xab\\x9a&\\xd4\\x07@w\\xdd\\xf6\\x7f\\xda\\xa7\\xe3\\xc1\\xfdd\\xb8\\xf5\\xf4\\xf2\\x97\\xe9\\x8f\\xce\\x9f\\xb7\\xbb\\xb6\\x88\\x01\\xa3$\\x95\\xb1\\x8f>\\xef\\xfb\\xc6\\x86\\xfd\\xff\\xb3\\xf7\\xef}q\\xe3\\xc8\\xe20\\xfe\\xff\\xbe\\x8a\\xc2\\xe7\\x9c\\xac=\\x18\\x03I&\\x97\\xce\\xb0,\\x03\\x9d\\x1d\\xce\\x06\\xc8\\x0f\\xc8\\xcc\\xce\\xaf\\xc3\\x971\\xb6\\xba\\xdb\\x1b\\xb7\\xddk\\xab\\x9b\\xb0\\x9b<\\xaf\\xfd\\xf9\\xa8$\\xd9\\xb2,\\xd9\\x86\\xb0{.\\xcf\\xd7\\x7f@[\\xd6]\\xa5RU\\xa9.T9\\xd3\\x18\\n\\xc9`\\xc4*{\\xf2\\x04\\\\\\xd5EI\\xde\\xf0A\\xb2\\xb1\\xc7M\\x87\\x0b\\x1e]\\x80xX\\x80\\xc0\\x1f`k\\x97\\xff\\xfa\\x0f\\xf4e\\xcfi}\\x8c\\xc5\\xfb\\x80\\x99\\xd2]L\\xf5\\xcd\\x82\\xed(\\x17\\xfa5\\x8a\\xe9\\xa2\\xf9z\\x8b+\\xd8\\x18\\xf1\\n\\x86\\x03P\\xba\\x82*\\xae}\\xc8\\xa1\\x83\\x90\\xd2\\xb1\\xa1`\\x1f^Y\\xc8\\x9dg\\xfa\\xfd\\x99 w\\x9e\\xe9\\x0e\\xc6\\x05V}\\xa6\\xd3\\x99\\xa5\\x99*M\\xc5%\\x81^\\x0d^\\x18\\xb9\\x85\\xd7&\\xa4S7\\xf7\\xdats\\xea&Zj\\x8c\\xa9\\xa1\\x96:\\xc7\\xd4\\x95\\x96\\x8a\\xe1\\xdd\\xea%q\\xb9\\xe1\\x91\\xe2m(\\xfc9!\\xb7W\\x08vk\\x97\\xbb\\xe3`\\x7fQ\\x97\\x8c\\xbb\\xacqw=\\xae\\xd5\\x947\\xca\\x9e\\x84K\\xb5X\\xee\\xf1\\xd01j\\x96\\xf7E\\xbeHJ\\\"\\xb3%\\x01\\x0f*N\\\\^_\\xd8\\xc8|A\\xa8Z_\\x88YV\\x8d,\\xbf\\x90\\xf0\\x93\\xd6\\xec\\x8ao\\x0fw=\\x08ZK\\xe3=_\\xa62\\n|c\\\\9r\\xcf6\\xfd\\xbc\\xd8\\x9d\\x8b\\\"\\xf4\\xc1>\\xa4n\\xc6\\xdd\\xdbh\\xd7~\\\\\\x81P*)\\x18/\\xf7\\xf1Z>\\xea\\xbc\\x967\\xac\\\\\\x9b\\xa6\\xc5z\\xa6\\xc3\\xea\\xc1\\xe9\\xb4T\\xb1\\x1cVE\\xb5\\xca\\x96j\\xe2a\\xd5\\xe0\\xfa[\\xaa\\x98\\x0f\\xab\\xa2\\x82\\x8fFn\\xa3\\x8a\\x81\\x8235\\x05\\xf2AV\\x0d\\n\\x89\\xfd\\xecu/\\x95e\\xbf|\\xce5\\xaeG\\x88nF`\\xb4%\\x13}W\\xb4arq\\xaa\\xf49F\\xb4v\\xbf%T\\xe1\\xd8\\xf2\\xd5\\xce\\x90Au\\xf2\\x0d;\\xdc\\xb9>\\x1e\\x82\\xe8[\\x97x^\\xcdJ\\xc8x0l\\xf3f\\xf0\\x03$o<\\x94i\\x91I\\xee\\xd2I\\xb6\\xb9y\\xe5]\\x19\\x07\\xcf\\x8d\\xf2\\x90\\xd7\\x16\\xf4\\xa8\\xa6_?h\\x02\\xccr\\xfb\\xfaZ\\xb45\\xb4\\x0d\\x1a\\xacIQ&\\xdc\\xef\\x92PE\\x92IA\\x92\\xc5\\xe4\\xf3\\xd9\\xd4u\\xd6;\\x81\\xe3u\\xe7\\xd8e9\\x9e<\\x11\\x02:s\\x8eW,\\xcf~\\xcf\\x85cF>\\xd3\\xcb$\\xd2n\\xb1z\\xf4u\\xfaUX\\x18V\\xad\\xd5X~\\xefDa\\x9a\\xde\\x84\\xd1'\\xa7\\x92\\x1eb\\xf8Y\\xb8!\\x8aZ\\xcb\\xef-\\xaa\\xc5ka\\x07\\xc7c(\\xb4\\x94\\xb3\\x8de$\\x8e4\\x06F\\x92\\x0f\\xa2\\x85\\x9d\\x1e+_\\x8b\\xc2\\x97|$*\\x08\\xe4LZ\\x8d}\\xa0G}K>\\xed\\x1a{ie\\xf5\\x11\\x1aT\\\\]\\xdb\\xa2X&\\x1f=\\x10\\x89\\xfat\\xe9w\\xc9\\xe7Q\\xbbjU>\\x93Ooo\\x9f\\xffk{k\\xd5N\\x93OW\\x87\\x07\\xd9b#.D\\x12SRS\\xee\\n\\xb6\\x90\\xb3\t\\xb9\\xb9B\\xc8\\xd0\\x9e\\xdc\t\\x1e$\\x93ps\\xf3\\xaaa\\x8d\\x10\\xf6D\\xe5\\xfd\\xe6YQ\\xcd\\x03zt\\xfd\\xbf\\x0e\\xbd\\x81\\xd68<\\x14\\xe3\\xd5hL=wU\\x07\\x89\\xdf{f\\xcdx\\xbb\\xa6\\xb5\\x89\\xcc/\\x84\\x97E\\x93<2\\xe9;\\xb2\\x92\\x0c\\x91\\xe0$\\xbb\\xc2s(S\\xfc\\xc2u\\xd9\\xb5Y\\x84\\x10y\\xf5]\\xa9F\\xfe\\xca\\x83i\\x91/\\x00\\x9d\\x83\\x85i\\x9aG\\xca\\xcf\\x0fY\\x19NI+\\xe1\\\"\\xcdo\\xb5#\\x81\\x91\\xa3n\\xe2\\x16\\xdc\\xa7\\x0c\\x0d*w\\x94\\xa1\\xe7C\\xe2\\xe6<~b\\xc8\\xdb\\xea\\xa7G\\xf0h0x\\xce4\\x1f\\x0c\\xceA\\xe34\\xc8rq\\\"\\x88\\n\\xcc\\x94\\x8biRX\\x0f\\xf9\\x1c\\xdc\\xb3\\x8b\\xbdg\\x97\\xd6\\xc5\\x8e\\xeeI\\xb0j\\x9b{6I\\xae\\x0d\\xc1\\x14\\x98\\xc2\\x05\\xc2>\\x14\\xc14\\x91Z\\xc1\\x8c\\x86\\x13\\xaf\\xcaoT\\xb07\\x8c],z\\xaf\\xf2\\xe9?a\\xec\\xf5\\xd2\\x98\\x16E\\x01\\xbe\\xff\\xc2\\xce\\x15\\x01\\xeb\\x81`G{\\x05\\x87\\x83h=u#e\\xee\\x8b\\x97\\xdf{\\xae3\\xcd\\x8bq\\x18\\xcd\\x9dA\\xa8\\xa8O\\xe3\\xf5\\xd9\\xaeY\\x10\\xf1\\xcc\\xe2\\x06r\\xf7\\xb5.)\\x10\\x82\\x88W\\xaa\\x18\\xd7\\x1dL\\x8c#R\\xc3\\xf8$+T\\xcfL\\x8d3\\xdb\\xbaC\\xfe\\x01\\x9e6\\\\\\xe5n4\\x84\\xban)\\x9c\\xc3r\\x97\\xb1D\\xb0/\\x0c\\xc2\\xcb\\xc6\\xd1\\xf5T\\x04\\x8c\\x94\\x8c\\x0dFO[\\xa1I\\x13\\xe7\\x0b6\\xd0n\\x08\\x93\\xc3J\\x7f\\xd3\\x89\\x1c\\x11\\x93KI#2\\x04\\x97\\x92v\\xebx\\x9e\\xcf\\x0d\\xe1\\x1b\\xa3\\x82Z\\x91\\xc6\\xe0\\xc6\\xb0\\x19\\x96%kgP\\xc5\\x9fI\\xfbs\\x1d\\xa2G\\x8fK\\x0c%\\xdb\\xfen\\xee\\x96\\xac[ld\\xb5x\\xf6\\xab\\x17\\xcc\\x86\\xf2\\x83b\\xa9|\\xdd\\xef@u\\x0di^\\x15\\x945\\xf1@\\x06\\xe6\\xc5I\\x1b\\x8b\\xf3LY\\x1c\\x86\\xceh\\xa5\\xec\\x03#H\\xc4=\\x88\\xf8\\x8e\\x16\\xe8\\xcd\\xef\\x19\\xb7qS\\x1a\\xe5\\x1fqA\\xd3\\xba\\x0f\\xca\\x17\\x0d\\x18$ \\x945 \\xac\\x0c\\x80P\\xb6\\x00\\x01},\\x98\\x16\\x1d\\x05\\xd3\\x86%G\\x9bd\\xc3J7A\\xc1\\xa0\\x01\\xa4\\x82B\\xa9\\xafv*V;\\xf5D\\x0c\\xbd\\xe8~(\\xa9\\xc6\\x12\\xadp\\xb9\\x02I<5_\\x01={f2\\x18\\xcb\\\\\\x8b\\xb0rwW\\x17nrt\\xb7\\xfbB\\xc7M\\xdc\\xa7D[R\\xa9\\xaa\\xbd\\xb8TS\\x82\\xd5\\x87\\x88\\xbe\\x05\\x97&\\xb8\\x8e}\\x98\\xfb\\xb0\\xf6a\\xe1\\xc3\\x0c\\xf6`\\xa9\\xaa\\x89\\xdbhU);n}dD\\xa5Y\\x94w\\x87\\xc2\\x06\\xde\\x11\\x06\\xd9Oa\\x04:\\xbae\\xcf\\x0d\\x92\\xe0\\xcd\t\\xb6q\\xc6\\xb3\\x1e\\xe3\\x8e\\x84r8i\\x99v\\xb0\\x1a\\x13wf\\xd4\\x19E\\xba3\\xe6\\xa6\\x072F\\xef\\x1b\\x88\\xe1\\x0fp\\xf3\\x06n67\\xcd\\xd46\\xab\\xd1]\\x08G\\xacwn\\xe8\\xce\\x91T\\xbd\\xb9\\xf2\\xf0\\x8em.\\xee\\xd8\\xee\\\\L\\xf3P\\x06\\x81\\xb7_\\x0b\\x1e\\x0b\\xb2\\xba\\x9a]4!\\x1a\\xcd\\x7f\\xcd}\\\\\\xc3\\x1eTq'\\xde\\xc0\\x066\\xb9F\\x8e\\xc3\\xf5\\xbc \\xce3b\\xb8\\x14\\x06\\xb5\\xb3\\xb9\\xbb\\xf6\\xe1\\xce\\x879\\xb7\\xc5\\xe3w\\xc4\\x03\\xba\\xf6\\xd5\\x0b~<\\x1f\\x1f\\xfc\\x99\\xc7j\\xa5\\xc1\\xf9\\xf8\\xf2\\xc3\\xf9)\\xec\\x89\\xdd\\xf6\\x8d\\xe7\\xb3\\xd5'u\\x11\\x1c\\x8d\\xdf\\x1e|xw\t\\xfd\\xfe\\xa9ww^\\xf5\\xf8\\x9d~)\\xfcL\\xbf\\x12\\xff_\\xdf\\xdb\\xdf\\xb4BR<\\xb7\\xdcm\\xec\\xe8\\xdb<1\\\\\\xf1\\xdc\\xdf\\x94\\xd1rH\\x85Fm\\x8aD1pD\\xee\\xc5\\x0d\\xb1<J\\xe7k\\xf2\\x19\\xe5gT0[_\\xbe\\x80\\xc1\\xe7\\xdf \\x14\\xda\\xb7\\xbc\\xc6\\xbbu\\x9b\\xcbO\\xb3o\\x99\\x82$YB\\x930M\\xfeN0<e\\x88\\xbd\\x19p\\x01\\x8aZ%\\xb4.\\xf2K\\x11.\\x97\\xdc\\xf3/~\\x9a\\x11z\\xd9\\xfe\\xeaJ\\x97\\xfd\\xb7<\\xe18K\\xe8QHCvB\\x1b\\x92%\\xc5\\xb6\\x87\\xc7\\xb2\\xb1\\xa0p\\x8f\\xc0\\x03\\x9a\\x95\\xc7\\x99\\xd2(\\x9e\\xbc\\xad\\xce\\x1b\\x94\\xc3\\xf5\\x82f[\\x06\\xf3\\x88l\\xb1\\x9b[U\\xf6\\xcehu\\xa9j\\x1c\\xcc\\x90q\\x88\\xf8\\xf9&?^\\xb9/\\x85\\x94>\\x18\\xddd\\x83\\x00\\xad6a&\\x1f\\xec\\x96\\xd6+W\\xa8\\x869O_\\xeaGCU\\xcchc]}\\xb5-\\xdc\\x0e\\xa7}\\xd9\\x7f\\xdep\\x05\\xa7\\x07\\x82\\xc9\\x8cxp\\xf8\\xda \\xb39FQ\\xde\\xe2(\\x10\\xa6I\\x16\\xa6ig\\xd7:;\\x0eP\\xb9&\\xeb\\xcf\\x08r\\xa4Q\\x9a\\x97b\\x00\\x9d\\x05\\x9aF\\xe6\\xdcu\\xc5\\xe0\\n\\x86\\x0c\\x0e\\xba\\xe6\\xde<g`\\x94\\x85\\xd9S\\x05<GC \\xb7\\xb1\\xbaCl4\\x1a1\\xcfl\\xb8\\x88S\\xee\\xe4\\x0d^\\xbf\\xd4\\x11\\xab3\\xbb\\xbb\\x14P\\x10,\\xedt\\xd9\\xd7\\xbf\\xe8&t\\xc5%o\\xb9\\x19\t\\xf2\\x8f\\x85\\x02\\xea(p\\xa9_\\x95\\xc8'BI\\xe9\\x9ba\\x00}|\\xd9\\xfa\\xb2\\xb7gw\\x92\\xa0?\\x86M\\x9a\\xc1&\\xec\\xde\\x07\\xce\\xbf\\x19\\xec\\x0c\\x90%7\\xcc\\x10\\xa0\\xb2`8<\\xc2\\x9d\\xa7\\xafl\\x18\\xee\\x9f\\x0c\\x8b\\xc2\\xc9\\\"\\x03\\xc7\\xf6\\xf0\\xd4g%\\x9bo\\xaf\\xe5\\xb7\\xc0q\\\"\\xd0\\xf0\\n\\x89\\x1b\\xd4\\x90\\x089\\x1eR~\\xaa\\xfe\\xcdV\\x9e\\x94\\x7f<\\nx&\\xf7\\x02\\xc1\\nA\\xfe\\xeb\\xa1\\x0f,\\x9b^\\xa1b\\xda\\x10\\xdbH\\xb1\\xd8iq\\x1d\\xb3o\\xa6\\x16\\xcd\\xaa\\x98\\xcfZv\\xebfR\\xb1\\x8c\\nB\\xb2\\xbf\\xd8\\xe8\\x1d\\xfe\\xf9W\\xdb\\xe7\\x08\\xa3\\xc5[K\\xf3\\xcf\\xf6\\xd2\\xb4H\\xd1\\x8c\\xd4\\xd2\\xf6<\\x99\\xd2\\x8e\\xefa\\xda\\xf5uAh\\xd8\\xf1yF\\xe8I\\x1e'\\xd3\\x84\\x14\\x174\\xa4d\\x84\\xae\\x1bun\\x84=\\xdcA\\xf2\\x10DS\\xa9\\x96\\x05\\xbc\\x8cy{J\\x89\\xd8\\xed<\\x89\\xe6\\xe8\\xf7\\x85\\xa0$k\\x84v\\xe8{\\x15\\xf7\\xff\\xbcz\\xdbm\\xf8)\\x92\\x8f\\x01+\\xf2f\\xad\\xc4kA\\xd2\\x90\\x92xX8\tP\\xd5!\\x1b%\\x85j\\xe9\\xb4\\xc8e\\xc0~\\xee\\xa2((\\x8bH&\\xec\\x03\th.\\xdfF\\xd0\\xc8\\xde\\xde\\xbe&\\xaa7\\x9c\\x91\\xbf\\xdc\\xa3\\x93\\x0e\\x16\\xa8\\xe6\\x93\\x04\\xf8\\x8eM\\x0b(\\x85M\\xc8\\x03\\xe1\\xff\\xf9\\\"*\\xf24}G\\xa6th_~\\xbdo_~\\xd5\\xfa\\xf2\\xab\\xd2\\x97_\\xdb}\\xb9\\xcc\\x97\\xfdh\\xa4zo\\xdf\\xe6\\xfd\\x0f\\xf1R)\\x8d\\xa2\\x9e\\xear?\\x198CWR\\x0cQ\\xf7u\\x02\\x1f\\x8b\\x8f\\xd9G\\xfaqz\\xb5\\xdd\\xfc\\xce\\x8e\\xc7\\xed\\x1f\\xdc\\x8d\\xad\\xad/i\\x92}\\xfa\\x92\\xe5eT$K\\xfa\\x85!\\x80/\\xe2wI\\xefR\\xe2\\xd5\\x95|\\xdc\\xfe\\x83^O)\\xda\\x7f\\xe5\\xb9\\x9d\\xb7\\x13\\x00\\xd2'+\\xba\\x18\\\\\\x86\\x11\\xf9p~\\x8c\\x87h\\x12\\x94\\xeb\\x19\\xdeA$YF\\x8a\\x9f.O\\xde9B^@\\x82*\\x89\\x1d\\xe7m\\xcc\\x80\\xbc\\x80\\x19\\xa8\\xd0R\\xac`\\xf5\\xc6\\xc2\\xf3\\xaa\\x08\\xf3&\\xb6\\x93\\xeb\\xc4\\xc9\\xda\\xf1\\xbcF\\x13\\xce\\x0f\\xe5z\\xf6\\x07\\x8c\\x9b\\x06\\x9b\\xe0\\xfc\\xb0\\x8d\\xaf=\\x94N\\x86\\x84\\xea4)Jz8O\\xd2\\xf8\\x0dd\\xea\\x9b\\xc7/\\xdeI\\x16\\xe3\\xbb\\xab~4\\xec\\xe9&\\xf0*T\\x16\\x9b\\xbe<\\x88\\xc2\\xecCI\\x8e\\xceNL\\x92\\x1a\\xc6\\xe4u\\x8e\\xb69\\x92\\xb49vp\\xd0\\xef\tJ\\xea\\x94/O\\x9e\\xf0k\\xa0\\x81\\xeb\\xcb}\\xd5\\x9e\\xe6\\xb1P\\x15\\xae\\xdf\\x83\\x82,\\xd30\\\"|\\x1a\\x88\\x0f\\x04\\xaf\\xabQ\\xed\\x99\\\"e\\xe9\\xfc\\xc0\\x9b\\xa7\\x93\\x1d\\xf4#\\xb8\\x92\\x1fm\\x98\\xa3\t \\xc2\\x83\t\\xc3\\x99\\x87\\xf3\\xb08\\xccc\\xe2\\xbe\\xf8\\xfe\\xe9\\xcb\\xd7\\x1e[P\\xf3*\\xae+k\\x11e\\xc9\\x8c9wy,\\xcd V\\xa8\\x98}\\xc4\\xf2\\x8b|-\\x06\\x85\\xf7\\xc0\\x99\\xb0\\x06b\\xe4\\x8e\\xbb\\xe3\\x9b\\x08/\\xc1\\xc5j\\xf0\\xad-=g\\xda\\x1b\\x9cM\\x0d\\x1d\\xf7\\xb6\\x12\\xea&\\x89\\xb6'\\xce\\xef\\x9f\\xfc\\xf0\\x87\\xab^\\xf5x\\x0b\\xb6\\xbc_lN\\xf4\\xca\\xb7\\x89\\xda|\\xdd\\xa7\\x03\\xd2\\x06\\\"b7\\x0f\\xa4m\\\\\\x1a\\xae\\x0bB>\\x93\\xa8\\x15{\\x1a@\\xba\\xd2\\xb0\\xd9)\\x81d-\\xb0\\x11s\\x03a\\xdbu\\x8b|V\\xed\\xab\\x05\\x90\\xd8\\x81\\xfb\\x83GM?\\xae\\xff\\x93U\\xbcNh\\xe7u*\\xcffA$\\xa0\\xf8\\x80\\xbaa\\xa7+\\n\\xae\\x01\\xd6\\xa3T\\xc5\\x88,\\xe7\\xc9\\xdfV9}\\xd3\\xe1\\x8b\\x83=7\\x05\t?\\xd9\\xb3\\xf0\\xd6^\\x0di-\\\\,\\x1f\\xa5\\xb1\\xd7C\\x1a\\xfb\\xb7\\xcfO_>Fk/:\\x14\\x0d\\xa1j-}\\x94i|\\xd1\\xa3b\\xc8\\xdb\\x9a}k[\\x83t\\xd8\\xa2<\\xa3I\\xb6j\\xdf\\x0c\\x81\\x95\\xc5\\xe3|0j\\xf6\\xbb\tl2\\xfcX\\xaen\\xf8\\xb5\\xb5\\xbb\\xf2!\\xf4\\xe4e>\\xe3@\\x19+\\xbc\\xa9#:s\\xe5b\\xaf\\xca\\xfa\\xf7Y\\xc9v\\xe50\\xd2C\\x0c<\\x92\\xbaH\\x83\\xea2\\xfa\\xa67\\x851\\x0b\\x852\\xb5\\xd9@\\xaf\\xcd\\\\\\x96\\\"\\xbf\\xce@\t[\\x92\\x96FId\\xb8\\xb5\\x9d\\xa2p\\xa1\\x99\\xb6l\\xa3\\xabvx>\\xf6\\xd0|yp\\x93\\x17t\\x04N\\xc8\\xfe\\x1b\\xd0\\x1f\\xcb\\x92%\\x0b\\x0c\\xe11\\xce\\xe2\\x11\\x94\\xae\\x13\\xca\\x04\\x92\\xc5\\\\\\xff\\xb9\\x99\\xd4]\\xcb1%<\\\"H\\xb3\\xaeD&\\xeb5\\xd6\\x1f\\xba\\xeb\\xbd\\xa0!\\x1b\\x89Zg\\xc9\\x92\\xf4\\xfax\\xa2\\xb1\\xae\\x1f\\xd3U1\\x02\\xe7&]\\xe9&\\xed\\\"\\xc3a\\x98\\xbdO\\xc3\\xbb\\x118Q\\x98-\\xd3\\xf0\\xae3\\xdb\\xe5\\xbc\\xc8W\\xb3y\\x9d\\x9b\\xf2\\x04K\\xa1y\\x98\\xcd\\x08\\xcb\\x8c?,\\x99RT\\x01w\\\"\\x8c\te\\xce\\x92/\\x96y\\x99T\\x0b\\xe6Du\\x82uu\\x94Bb\\x1e\\xd5b\\x1dS\\xa6\\x14\\xfc\\xb0\\x8cQ&\\xa0\\x96\\\\a\\x9a\\xadhF\\xc9gzB\\xb2\\x15\\x16\\xc2\\xb7\\x05\\xc9V\\xb6\\xecK\\x9c\\xf8|i\\x9b\\xf5\\x15v{e\\xe9\\xa9\\x12\\x1ek\\x04N|\\x93v\\xcc\\xe1Q\\x11\\xceX\\xa6\\\"\\x9c\\xd93\\xf0\\xd9ey\\xac\\xd3\\xca\\xb3QRT\\x19)\\xb1\\x80\\x16f\\xfd\\x9cP\\x99\\xf3sb\\x1bG\\x11\\xce0\\xc0\\xa3\\xc8\\x99\\xb2\\xdf\\xf6\\xacg\\xeb\\xaa\\xf5|\\xdd\\xd5\\xb8\\\\w\\x96\\xb3c\\xc1\\x8f\\x8a|\\x89\\xb9\\xf2\\xa5%\\xc3\\x8ao\\xd7\\n\\x9ec\\x91\\xd0\\x05\\xd7\\xe3\\xc5\\x92&\\x84\\xcd'\\xe1\\xbf,\\xd9\\xb2\\xa8\\xb8[R\\x9eQ\\xfe\\xb6e\\x8dE\\xb6\\xd8\\x9a\\xa5(r67\\x84\\xfd7gy\\x9bG\\xabr\\x04\\xce\\x94\\xfd7g9\\xce\\x96\\x08x<\\x02\\x981\\xcb\\x9f\\xc9\\xddQ~\\x9b\\x8d\\xc0\\xf9D\\xee\\xe2\\xfc\\xd6\\x82\\xca\\xfeL\\xee\\xde\\x17\\xa4,y\\xbe%\\xfbi\\xcd\\xf8a\\xc9s\\xad,\\xab\\xf0\\x0e-\\x93\\x19\\x0f2\\x92f\\xca\\x8cs\\xe9\\xca|Bh\\x18\\xab\\x05\\x16\\\"\\xc1^H\\xc2\\x0c\\xcb\\xdf\\x013U\\xe0\\xb8\\x118\\x0b\\xf6\\xdb>\\x07U\\x108\\x99\\x95qW\\x1dY\\xcfp\\xee1gn\\x9b~\\x9e\\x91\\xef\\x03\\x9e\\xd3\\xba\\x11D\\x988\\x99\\xd16\\xbb\\xef\\xc3\\x121\\xdd\\x92\\xfd\\xb7eY\\x95<\\xcb\\xaa\\xb4e\\xe1G\\x89\\xfd\\x1ca\\x19\\x92l&\\xf2$\\x99\\x05\\x19\\xbd/\\xf2\\x99\\x80\\x9b\\xa5\\xf8i\\xcex\\x1eRRm\\xcb\\\"\\xa4\\xa4kKr\t\\xdb\\x08\\x9c\\x12\\x7fX2\\x11\\xf2\t\\xb7Y\\x89?\\xec\\x99\\xf80J\\xfe\\xcb\\x96-\\xe5\\x91=\\xab.\\x962\\xa5\\xb3\\x9f4LS\\xde\\x07\\xfe\\xcb\\x92mU.\tb\\xec\\x92\\xff2g\\xbb$\\x9f\\xa9\\xdc\\xd1T\\xfe\\xb6dM\\x16\\xa4:\\xf3h\\xb2 ]\\x87\\xdde\\xbe\\x8a\\xe6\\x87a\\x16\\x116\\xa5\\x94\\xbdE\\xf8\\xd6\\x91\\x9d\\x1f0\\x98\\xd7\\xde_\\xf6U\\xec\\x17\\xcci\\xdf/\\x98U\\xeeX\\xcc\\xdb\\xb1e\\xf1\\xda/Q\\xa9>Z\\xa5\\xd4d_3\\xcdX\\xd1\\xcfy\\xbaZ\\xd4P\\xb7\\xc6\\xd7\\xae\\xf5\\xfc%L(\\x87\\x96[\\xfe\\xcb\\x92mNp*o\\xd9\\x7f\\xcd\\x04\\xb4Y`\\xcex(\\x1e\\x85\\xa6\\n\\xa2w|\\xe4\\xc0\\xa6\\x90\\x18\\xb9\\x8d8\\x04^P\\xa6ID\\xdc\\xa7^\\x93\\x1dX\\xa3j\\xdb?\\xbe\\xa2VE\\x93\\x94>'2\\xd2Z\\x1d\\xa4\\xb0}\\x990 p\\xad\\xa9\\xa2~\\xf99:\\x8f\\xf9)\\xcc\\xe2\\x94\\\\\\xe6\\xcbwdMRw\\x1d\\xcc\\x1b\t\\x9e\\x0f\\xeb\\xa0]=\\xec\\xf5{ll\\x8e\\xa2$t\\x9ca@\\xcc\\xbe\\xae\\x19\\xdb{\\xf2\\xc4\\x98\\x1e\\xd4\\xd5\\xb6\\\\\\x01j\\xb3X\\xb6\\x9b7\\xb5.5\\x88\\xdc\\x0dc?\\xbe|\\x01\\xe3\\x87\\xa0\\xaa\\xdf\\xed\\x0e1\\x97b\\x81\\xcb|\\x80S\\xd1\\x86\\xa4\\x98\\xfa\\xd0\\xed;O>b\\x00=j}\\x95\\x16\\xde\\\\D\\\"\\x99\\xcc\\xaf`\\x0f\\x96\\x9b\\x9b>D\\x13\\xf6&\\x82\\xfcV\\xaf\\xed\\xe5\\xe6\\x11 `\\x0f\\x92V\\xc0\\xc6#\\xc20%\\xc9\\xa2\\x84\\x94\\x13r\\xd50f\\xcb\\x87\\x08\\xb3P\\xcb\\x9d\\xed\\x1c\\xabu[\\xa1\\xc7\\x99\\\\\\x89X2+\\x1e\\xa7\\xd8\\x91{\\x9d\\xcb\\x86Wht/v\\xbd\\x07\\xfbfp\\xa2E\\xb8\\xfcqu\\xc3\\xd6\\x11?(\\xb5\\xf8\\x12e\\x08\\xb3\\x9d\\xd4\\xe5G\\xfd7\\xd5\\xa8\\xd4 \\xaa}@%Gg'H~\\\\\\x88\\xf3\\x96W\\xe4TGqc\\x02\\xe4\\xa1\\x0c\\x1b;\\x9d}\\x16\\x01o\\x95\\xf6\\xaa\\xea\\xeb:\\xee\\xd9cC\\x0d\\xc6\\xc2\\xbf\\x1c\\x9f\\x1e\\x9d\\xfdr\\xfd\\xd3\\xc1\\xe9\\xd1\\xbb\\xb1\\x1c\\x0bR\\xd4r(x\\x86p\\xbe\\xbb\\x1e\\x9d\\x9b\\xba\\x92\\xde\\x16\\xa3s\\xef1\\xbc\\xb7\\xa2dUEf\\xc1}\\x96\\xf2\\xd8\\x17_\\n\\x01 \\xf3\\x04\\x90`uI\\xe6\\x08\\x15\\xd7\\xc1\\x93\\xd5\\xecO\\x92\\xf5\\xf5\\xa8U\\x81\\xec\\x10\\x96G\\x1a\\x97u\\xca\\x87\\\"\\x10\\x1f\\x85N\\n\\xbeck\\x98\\xc0\\xba\\x1d\\x9b\\xf7\\xd6\\xb0\\xb6W>\\xc4\\x93\\xd5\\x15\\xef.n\\xc7\\xbdVHy\\xe8;.\\xf4Z\\xfb\\x03\\xd5\\x80b\\x867\\xa8\\x9f-\\x85bK7\\x1aK\\xfd8\\xfdhB\\xcf\\x90\\x8e\\x88\\xc86<4\\xe9\\xfbpF\\xfe\\xf2k\\xcfA\\x86\\xb7\\x17\\xfa\\xad\\x1e+\\xdd\\xe9Kz-\\x9c\\x86\\x9a\\n\\xba\\x0e\\xa2\\x19\\xfcm\\xd2\\xe3\\x92\\xf7$\\xaa\\xd3\\x06UQ\\xa0k|$+W\\x85\\xc0`?\\x87\\xe9\\x8a\\x9c\\xe4YB\\xf3\\x02\t\\xba\\xdeq*\\xae.\\x90T\\xc0K\\xdcu`\\x984\\x97\\xed\\x80\\x0d\\xcc\\xb41\\xed:|\\xd8$\\xac\\x82\\x82L\\x0bR\\xce\\x95~\\x95\\x96\\xfb@\\xd3R/\\xf8\\x18\\x94\\xd2\\xe8\\xebzZ\\x87\\xecR\\x1fm?To_-\\x06\\x08\\x83<\\x904\\xc5\\xd4Ur\\xa5\\xd1P\\xb4\\xe6\\x94k\\xb4^\\x17\\xab\\x94\\x94\\xd7\\xd7\\x0d\\xdd\\xf0\\xeb(\\x8c\\xe6\\x04\\x13-\\xd7\\x8b\\x85Bp\\\\_O\\x93,\\xc6\\xdcv\\xaa\\xa5\\xad\\xf7W5-\\xc8\\x04~\\x8d\\xb7\\xb5\\xfb\\x06\\xa8\\xd5\\xb1`\\xb3\\xe0ds3\\xbbB\\x85\\x01\\xae*s\\x0fO\\x83\\xbe6\\x82(_,\\x93\\x944\\x07a\\xbaB'\\xa2\\xfb\\x06\\x96\\x83M\\xa1\\xe3hT\\x0cQ\\xc6)\\xecI\\xddn\\xda\\x8e\\x04\\x84\\x13\\x98\\xfc~<L\\xe9\\xc0\\x82\\xec\\xa1\\x95\\xdf\\x10\\xe2\\xc1\\x0f\\xdc'\\x18\\xe5\\xd1\\xf6\\x0c>\\xe3\\xf5\\x18\\x07\\xa8\\x95\\xa2\\xae\\xfe?\\xd0\\x07q\\xaby[ OY\\x92\\xc7\\xda\\xe2\\xae\\xf3:\\x86oD\\xa9\\xec\\xc9\\xd4)p\\xd1!X\\x86\\x13!\\x07G\\xf9\\xe0\\xbe|\\xd1Z\\xe5#\\xcd\\x82if\\x88M\\xdd\\x1a\\xad\\x0d\\x1cB:\\xd0\\xf2\\xa5\\xa8a\\x99o\\x01\\xa3\\x11\\x1a^\\x12\\xb1\\xbe\\xea>\\xa3\\x19Doq\\xb5\\x81B\\xb5\\x8c\\x16V\\xd1\\xef\\xc3\\xa2$\\x05\\xb0\\xe9C\\xc3\\xb2i\\xbeB~\\x1f6A7K\\xd7\\xf6Eq\\x15L\\xa5\\xf1g\\xebK\\x98b$c\\xfc\\xff\\xe5\\xcb\\x90]\\xdf\\x9c\\x9d\\x1b2\\xcd\\x0bb4\\xf7k\\xb9\\xb1ZK\\xcfx\\xbd\\x93\\x94Hm\\x9c\\x8eI\\xca\\x1fs\\x92\\x82r\\x89l|\\xee\\xc3\\x8e\\xc9\\xf5!C+F\\x13R\\\"\\xd9K\\x93C\\xc4if4/\\x0dS:\\x82\\xa4\\x9e\\xf2\\xd6\\xb6\\xbb\\xd7\\n\\x84SJ\\x8a\\xff=\\x0b\\xc0o~\\xff\\xa7-\\x02\\xc34\\xf7@\\x13F\\x04\\xa0M\\x08\\\"/\\xdb$\\x18T[z'\\xc10q8\t\\xc5cM\\x02\\xefA\\x9f\\xf2\\x17\\xcb\\xd0\\x0cJ\\x8b\\xae`\t\\x8c\\x00e\\x06\\xdc\\xe3cs.\\x86\\x1dy\\xf5Y\\xd9\\xd2\\xa0\\xe7\\x87\\xd9\\xb0j4\\xba\\xa4\\xda%fU!\\xca\\xce\\x1e\\xc3N8g]\\x87E\\x98\\x853R\\x8c \\xc9\\xd6a\\x9a\\xc4bg0\\\"\\xc5\\xb4'\\xa0\\x8d\\xbd\\xe9\\x95:*=\\x84\\x13\\xe6\\xbe\\xef:\\xc5I\\xd9Z(}\\\"\\xdc\\xeee\\xf2\\xfe\\x17\\xcc\\xe5\\xeec\\xcc\\xe5\\x8cP\\xde\\xbb\\x01jo\\xc2\\xcb\\xc1\\x9e\\xdeB\\x0d\\xef\\x15\\xe1\\xe9\\xb6\\xfa1!W\\xda\\x1e\\xfd\\xea\\xdf\\xdf\\xf3{\\xbf\\xbb\\x93\\xce\\xbd\\xbb\\xe6nC\\nn1hq\\xd6\\x8e\\x16\\xc0\\xc12/O\\xc2\\xcf\\xed\\xaf+\\xf9\\xb5\\xfd\\xa9\\xc4OIy\\x9c\\xbd\\x0boH\\xda>x\\x94\\x8f^M\\xc7\\x9b\\xf2\\xa5,\\xcf\\x87l\\x11\\xd2hN\\xe2\\x8b(_\\x92\\xb2\\x8e\\x0dj\\xfc\\xbc\\xb5\\xe5\\xb7*C>\\x05{\\x8bf\\xf5x4)\\x9d\\x10\\xa2\\x14F\\\\\\xed\\xbe\\xe1\\xa3\\x82\\x1f 4z\\x9ag\\xfdz\\xcd\\x0fN7\\x07\\xa1\\xca\\xaf\\xea\\xecaq\\xcf\\xf3 \\xdb\\xdclCr\\x15\\x82\\xfb\\xf53\\xe1\\xdb\\x11\\xbd\\x04\\xb2\\x9f[[V\\xd2\\x99\\x0b{\\xcc\\xbc+\\xea\\x80\\xb5\\xbe\\xb4u\\xabP)\\xb7$EP~J\\x96\\x97\\xf9'\\x92\\xd9\\xc3\\xef\\x80\\xa2\\x11\\x0f\\xfb\\xdc\\xc5\\x19_l\\xcb\\xa4\\xc3\\x1e\\xf7\\x0cb\\xfd\\x9a\\xc1\\x16\\x9ft\\xbe\\x06+}\\xfeK\\xff\\xe1a\\x15^\\xdb\\xa2`r)\\xba\\xeb\\xfc\\xdd\\xf1\\x8cq\\xa5\\\\%\\xb6r\\xa7V\\xaa\\xd4w\\xbd\\xa8=B\\x15\\x02\\x8f\\\"\\xc1C]\\xc7a\\xc3\\x17\\x0d\\xf6j\\xa3\\xa9\\xf5\\x0f\\xd3\\xb8m\\xc8IL\\xa1H\\x9d\\xc30\\xfb=\\x85(LSX\\x10:\\xcfc\\xc830b\\xd4\\x96\\xcb\\x8d{\\xcew+&\\xa20S\\xd8\\xf5\\x02)x\\xd2no\\xd0a\\x87\\x08\\xe0\\xe2\\xe6M%\\xf5^\\x1f\\xa4\\x96\\xc5H`\\x1f\\xb4\\xaa\\\\\\xf4:\\xaf\\xd8\\xb1\\xdd\\x7f`}\\x9d1 S\\x14\\xd5\\x15jD8\\xcdW\\xb8\\xc0\\xb6y\\x1b\\xc1!\\x8dd\\xf2\\x97\\xedr\\xedt\\x19\\xae\\x9c\\x87]+\\x10\\xe1\\xc8\\x18\\xd3^\\xdd\\x9e\\xa1\\xe6\\x8eJ\\xd1?\\xc7\\xd9\\xf4\\xfeun\\xfcs\\xbak\\x83\\xe4<[\\x93\\x82\\x82p\\xfbKsX\\x16\\xc9\\\"\\xa1\\xc9\\x9ap\\xefON\\xdf.\\xd3\\xd6\\xb9\\xe9\\x0c\\xec\\xfb\\x9d\\xfb\\xfa\\xe5\\xd0\\xadpd\\xd4w\\xdd'\\xb8\\xf0\\xf4\\xf5B\\xd7\\x1f\\x0dE\\xfa\\xae\\xe7:\\xc7\\xe3\\xeb\\xf7\\xe7g\\x97gz\\xd0\\xd1U+jA\\xe3s\\xd9%\\xc8\\x02)\\xcc\\x12\\x8e\\x99\\xdc\\xdd\\xef_x\\xae\\x93L\\x8bpA\\xf4\\x86\\xe4S\\xe0\\x05\\xa0\\xcdS+\\x8f\\xc2\\x12\\xa0I\\x10#7\\x97ix\\x07{\\xe0dyF\\x1c\\x1f\\xa3R\\xecx\\x0d;\\x17\\xee\\xa4\\xb0,\\\"\\x96\\xed\\xaf\\xe1:\\xe4VE#\\xc7\\xe7\\xa4(\\x0dP\\xe3/\\xa3\\xbf$Y\\x9c\\xdfV\\x08\\xc3\\x0b\\xf2%\\xc9\\\\\\x1e*\\xa0H(q\\x9d\\x1fx\\xd1?T\\xc2\\xec\\xb7{\\x1c\\xbf\\xfe\\xf0q[|r0?\\x1a\\xbc\\xba\\xc2\\x95\\x14\t\\xde\\xbe\\x81bk\\xeb\\x8d\\x07\\\"<\\x8b\\x12oe\\x92L\\x8a+\\xc3\\x8d\\xa4\\x00\\xcc\\xd2\\xd5\\x0e\\xc4\\xaecE\\xa0\\x1eP\\xa3\\xb6Zi-#\\x02\\x16\\xa2v\\xe9.Kq\\x8e\\xcf\\x8f\\x17N\\x91\\xa0\\x03t\\x1f\\x9a\\x9f\\x85\\x93\\xd3I\\x88n,\\xd1\\xfe\\x04=\\x9fka\\xd4\\xa5\\xe3h7\\xfb\\xff^D\\xfa\\x17O=\\xd7\\xf9D\\xeeJs`\\xdf\\xdd\\xdd\\xfe83\\x96\\x8e\\x17\\x82\\x86w\\xf1\\x07w(\\xf9\\xe0~>5\\xd9$\\x17\\x13\\x871\\x11\\x05\\xd9\\xfaky]\\xce\\xc3\\x82\\xc4\\xd7\\xd7\\x8el\\xd4\\xfc\\x0d\\xef\\xfb\\x1f8\\xa2\\\\\\x8e(\\xe7#\\xfa\\xc7\\xd7\\xbe\\xf1\\xd8\\x10\\xab\\xa38\\xd2\\xf7\\x9b\\xd7\\x90~R\\xbe\\x97 |6\\xf5M\\x04\\x99O\\xf3wy\\x14\\xa6\\x84\\x9f#\\xbe<P|qf9\\x92\\xda\\xf2\\x87\\xb9oT\\xc1\\xc1\\x1cA}\\xf75C\\x91\\xa8k\\x9e\\x17:\\xa4pL\\xfe\\xd2\\xe6&\\x9daX\\x8fq\\x8e\\xc7\\xa2\\xfc\t\\xa7\\xbb\\x06\\xd2q\\x1b\\xea\\xe5\\x06\\x99\\xe4\\xb8\\x02d\\xe2\\xfc\\xf1\\x8fU\\x7f0)\\x990dp\\xf5P\\x00{\\xad\\x9fC\\xca\\xc0\\xe5\\xfc^\\x863\\xd3\\xd8+\\x17\\x9e\\xa5 y;\\xcf\\x1e1\\x92\\xca\\x03a#\\xc3W\\xd7\\xbb7pJ;0\\x1fB#\\xfeT0\\x1dZ\\x97}\\xc8x\\x0c\\x9c\\xd8\\xa9\\x03\\x18\\x89O\\xa7\\xab4\\xc5\\xa0N-\\x9f\\xaeH\\xbat\\\"p\\x80.\\x1f\\x11\\xd5\\xfaQ\\x83\\x8e\\x8d\\xdd\\xbb\\xc2W\\xf4\\xb3W\\xf1\\x0b>\\xe4\\x9e'\\xb0u\\x82~\\x07\\xd1\\xa1\\xacsVG]B\\xbb\\xb2\\x02\\xcd\\\"-T\\x18;\\\\\\xc34%8be\\xe9F\\xc2\\x12\\x19\\x1e\\x00<f\\xcf\\x85\\xbb/\\xff/\\xf0\\xfc_\\xe0\\xe9\\xa0\\x1bv,\\xf4\\x82T\\xb7\\xbc\\xefjV\\x0c8\\xc6Or\\x1dFEF!u\\xf5Ud\\xfd%>8\\xde5#8773\\xd8\\x84\\xc2\\xab\\x18\\x13F\\xc4\\xf7\\x9dl\\xd6\\xbd\\xf0\\xd2\\xe2\\xea\\xf7\\xd9\\xffx\\xb6\\xf7y\\x0f\\xa9\\xf4\\xe2\\xe5C{\\xfb\\xa8\\xa4\\xd2\\xee\\xeeK/\\x98\\x9a\\x899\\x93\\x07\\x17\\x13\\x9e\\xea\\x1b\\x87\\xf9\\xbe\\x07\\x95a6r$V3!='5A\\xeeC\\\"\\x03\\x84\\xa2\\x03\\xb6\\xf6foz\\xa25\\xdd\\xecH\\x87\\xc6\\xcd\\x8d~\\xcf\\xb9\\xea\\xf5\\x80\\xf3t\\xd74\\x03\\x18{\\xbdw-\\x19#b\\xcf\\x04\\n\\xcem3X(\\x03_\\xf2\\x18B\\x82\\xa7!\\x0d\\xdf\\x11\\xc6XI\\xa0\\x13L\\x8c\\xa5\\xf9\\xf2Eu\\xd4\\x9e\\x19$a?\\x86\\xb1\\x8cW\\x04\\n9ju\\xcf\\xc7=)g\\x95\\xec]}\\xaa\\xcb3\\x11\\xd5J\\xa0\\xd1*\\x11e\\x13\\xe8\\x8eVc\\x1d\\xbf\\x81uy\\xfa\\xbdY\\xd4\\xf0\\xbdM\\xce\\xd9\\x07\\xbe\tF\\xefd\\xc8\\xbf5W|k\\xfc\\x9b\\x03\\x9b\\x90\\xa1\\xbf\\xdb8'e\\xf6{\\na\\x14\\x91%\\x85\\x82\\xcc\\xc8\\xe7\\x96\\xd3[\\x01\\x11\\x02\\xa9~\\xdb\\xa6f[\\x14\\xa5\\xc5\\xfd\\x9b\\xd3x\\xc6\\xc3\\x1el\\x07\\xdb\\x9aH\\xc9x\\xe2:\\xdb\\xc1\\xb6\\x03\\x13r\\xe5jnu\\xaa\\xa3\\xd6(\\x80\\xef=\\xbe\\xe9\\xa4\\xb8\\xe2\\xf6\\xb8\\xb0am\\x03z\\x8et\\xd3\\xfcn\\xdc3\\xe0\\x11\\xc5\\x8d\\x8c\\xb4\\xfd\\x90\\xec=L(\\xb27F\\xac\\xda2Q\\x16\\xa2\\xad\\xd6\t\\xc9M\\xa0\\x9f\\xefx\\xc1\\xf4\\xa1k\\x9b\\x07\\xfc\\xcc\\xe7\\xec\\xa9|\\xe1\\x81\\xa1\\xfe\\xf1\\x15\\x83.\\xd4\\x19\\xfe\\xa1Gtq\\xae\\x91\\xc4!xAs@\\xdd\\x1d\\xd4\\x97'\\x90d\\x1c\\x93\\xac0f\\x95\tc\\x0b|\\x1c\\x06\\xd3\\xd65I\\x1f\\xac\\xb7\\x97DH\\x8cf\\x84*\\xfc0\\xef\\xb6\\xd9\\x8d\\x07\\x0fXz\\x7fT\\xdf\\xa1\\xcd\\xb5\\xfd\\xddFs\\x90\\xdf\\xc1\\x1fc\\xc2\\x05iI\\x9e\\xc19\\x89VE\\x99\\xac\\x89\\x94\\xb8\\x92\\xcf\\x94dq\\x92\\xcdZ\\xc5\\xc2\\x15\\x9d\\xe7\\x05\\xfc\\x9c\\x84\\xd1\\x9c\\x94i\\xb8\\x86w9-\\x17a\\x96\\xaf\\xe1\\x87T\\xfe|\\xf5\\xfa\\x8f\\xb3E\\x98\\xa4A\\x94/\\xfe\\xd0\\xaa#M\\\"\\x92\\x95\\x04N\\x8e/\\xb5oz\\xd6\\xcb9\\xe6\\x82w\\xa2\\x84{r|\\xe9\\xf5\\x949\\xcc\\x97wE2\\x9bSp#\\x0f\\x9e\\xee\\xec>\\xdbz\\xba\\xb3\\xfb\\xca\\xd8\\xe5\\x9e\\xaa\\xde\\x93b\\x91\\x94\\x18\\x14,)aN\\nrs\\x07\\xb3\\\"\\xcc(\\x89}\\x98\\x16\\x84@>\\x05\\x06_3\\xb6L9\\x84\\xd9\\x1d,IQ\\xe6\\x19\\xe474L\\xb2$\\x9bA\\x08Q\\xbe\\xbc\\x83|\\xaaW\\xcf\\xce\\x11(\\xf3)\\xbd\\x0d\\x0b\\x02a\\x16CX\\x96y\\x94\\x84\\x94\\xc4\\x95\\x1e/Zf\\xc04II\t.\\x9d\\x13p.D\t\\xc7\\xc36c\\x12\\xa6\\x90d\\xed\\xca\t\\xc8\\x9cp\\x9b\\xd0y\\xbeb(\\x9d\\x83M\\x92g\\xbe\\xf0s\\xcdz(?\\xa7\\xc9\\\"\\x11\\x0d\\xb2\\xe28\\x8b%\\xd0\\\\\\xaf{U\\x12\\x1f\\x07\\xe5\\xc3\\\"\\x8f\\x93)\\xfbOp\\x0e\\x96\\xab\\x9b4)\\xe7>\\xc4\tk\\xe9fE\\x89\\x0f%K\\xc4\\x05\\xf4\\xd9(\\xb7\\xf3\\x02J\\x92\\xa6\\xac\\x86\\x84\\x94\\xc6\\x89\\xa9\\xfb\\x8eE\\xf0\\n\\x80-\\x06\\x15\\xd3\\xcbz\\x05\\xb7\\xf3|\\xd1\\x1cgR\\xc2tUdI9'X&\\xce\\xa1\\xcc}\\xbd\\xfarU\\xdd+\\xb0\\xd2\\xd3<M\\xf3[6\\x0fQ\\x9e\\xc5\\xdc\\xfc}4\\x000\\xc3\\x9b|Mp\\x1a8\\xb8e9M\\\"\\xbe\\x8e\\xb8\\xb2\\xcb\\x1az\\xc4\\xa7r\\x1e\\xa6)\\xdc\\x10\\xe9b<f\\xc8(\\xd4\\x1d\\x99~WML\\x01\\xe8\\xfe\\\"\\xcch\\x12\\xa6\\xc0\\x10'\\xeb\\x1b\\x839u\\xd4A__\\x7f\\x1a\\xc3\\xc5\\xd9\\xdb\\xcb_\\x0e\\xce\\xc7p|\\x01\\xef\\xcf\\xcf~>>\\x1a\\x1f\\x81sp\\x01\\xc7\\x17\\x8e\\x0f\\xbf\\x1c_\\xfet\\xf6\\xe1\\x12~98??8\\xbd\\xfc\\x15\\xce\\xde\\xc2\\xc1\\xe9\\xaf\\xf0\\xe7\\xe3\\xd3#\\x1f\\xc6\\x7fy\\x7f>\\xbe\\xb8\\x80\\xb3s\\xbd\\xe6\\xe3\\x93\\xf7\\xef\\x8e\\xc7G>\\x1c\\x9f\\x1e\\xbe\\xfbpt|\\xfa'\\xf8\\xf1\\xc3%\\x9c\\x9e]\\xc2\\xbb\\xe3\\x93\\xe3\\xcb\\xf1\\x11\\\\\\x9ea\\xfb\\xa2\\xe6\\xe3\\xf1\\x05\\xab\\xfbd|~\\xf8\\xd3\\xc1\\xe9\\xe5\\xc1\\x8f\\xc7\\xef\\x8e/\\x7f\\xf5\\xe1\\xed\\xf1\\xe5\\xe9\\xf8\\xe2B\\xaf\\xff\\xed\\xd99\\x1c\\xc0\\xfb\\x83\\xf3\\xcb\\xe3\\xc3\\x0f\\xef\\x0e\\xce\\xe1\\xfd\\x87\\xf3\\xf7g\\x17c88=\\x82\\xd3\\xb3\\xd3\\xe3\\xd3\\xb7\\xe7\\xc7\\xa7\\x7f\\x1a\\x9f\\x8cO/\\x038>\\x85\\xd33\\x18\\xff<>\\xbd\\x84\\x8b\\x9f\\x0e\\xde\\xbd\\xc3\\x96\\x0f>\\\\\\xfetvn\\xea\\xfd\\xe1\\xd9\\xfb_\\xcf\\x8f\\xff\\xf4\\xd3%\\xfct\\xf6\\xeeh|~\\x01?\\x8e\\xe1\\xdd\\xf1\\xc1\\x8f\\xef\\xc6\\xbc\\xe5\\xd3_\\xe1\\xf0\\xdd\\xc1\\xf1\\x89\\x0fG\\x07'\\x07\\x7fb}?\\x87\\xb3\\xcb\\x9f\\xc6\\xe7\\x98M\\xf4\\xfd\\x97\\x9f\\xc6,\\xa957\\xa7pp\\n\\x07\\x87\\x97\\xc7g\\xa7l\\xcc\\x87g\\xa7\\x97\\xe7\\x07\\x87\\x97>\\\\\\x9e\\x9d_V5\\xfdr|1\\xf6\\xe1\\xe0\\xfc\\xf8\\x82\\xcd\\xde\\xdb\\xf3\\xb3\\x13\\x1f\\xd8R\\x9c\\xbdeY\\x8eO\\xdb\\x9d>=\\x1d\\xf3J\\xd9\\xaa5\\x17\\xf7\\xec\\x1c\\xdf?\\\\\\x8c\\xeb\\x9e\\x1e\\x8d\\x0f\\xde\\x1d\\x9f\\xfe\\xe9\\x82uH\\xcd\\xacC\\xcdv\\xe3]\\x9e%`!\\xf7\\xa5\\xf4\\x02\\x92\\x8c\\xc1g\\xc4\\xe3\\xfc\\x8a\\xf3\\xb5J9\\x12\\x97$\\x8d\\xc4s2\\x1b\\x7fn:\\xf1S\\xe2oAS\\xc7\\xdd\\xd88\\xea\\x874Z\\xb6q\\x10R&AE\\x04\\xaa}\\xf9\\xab\\x0e\\xca\\x00#dI\\xa8\\x12\\xa6\\xc1XU\\xa5x\\xc26<\\x1a\\xd0\\x19\\xbc\\x92\\xf7w\\x95M\\x89\\xa7\\xb2U,\\xc1E%\\xa4\\xcbdA\\x1a\\xd2.k%|\\n\\x1b\\xd5\\xf0$\\xa3ZVK\\x17\\xebCF>/I\\xc4N\\x992\\xa1+\\xe1\\x83e\\xd0\\x8a\\xe4VI\\x97\\x14\\xd3\\\\_#o|}\\xedT\\xf7PUh\\x99\\x96\\xb0\\xab9ak\\xe1\\x94\\xcbH%\\xda\\x00\\xc1\\x10\\xe0h\\x17\\xad\\xccd\\xd4\\xfa:\\xd0G\\x1d g\\xe7\\xaa\\xd3\\x96\\xc6R\\xefS\\xaf%\\xab\\x9c\\xec\\x18\\xae\\x14\\xe5M,7\\x9e\\xec\\xce+*\\xe4jz\\xb5N\\x1aZ$\\xf3\\xeb\\xf3\\xaa\\xbc\\x0f\\xbb\\x06\\x9d=k\\x14M\\xc3\\x04\\xa0\\xf9]%\\xe0\\xc4\\xb7\\xa6~\\xe0\\nidA\\xb2~\\\"w\\xa5\\xbb24iu\\xa1\\x0f\\nc\\x84\\x12\\x9f\\x90\\xfb\\xa2G\\xe1I\\xee\\xa2gz\\x1e\\x19$T\\xc1\\xc2\\xd0S\\xd2\\xe8\\xa9\\x8c\\x9c\\xeb\\x86\\x93\\xb2\\xba\\xf54h6\\xaay*\\x90%f\\xeb\\x06\\xf5Y\\x0b\\xa5\\xea\\xc9\\xd0x\\x8cm\\x03\\ntN\\xd5\\xdd\\n\\xa8\\x8b\\xa2\\x85G\\xaf\\xee\\x83\\xd9~i\\x8e\\x0c\\xa35\\xe5\\xe2\\xba\\x97\\x8bw\\xb3F\\xa2\\x90\\xf9\\x8a\\xb7\\x04-\\xd6\\xd5\\x94\\xb6\\xf7-\\xf5\\xf9\\xea\\xf9\\x90[s|E\\xdd\\x96\\x11?\\x06\\x9a\\x13\\\\\\x88O\\x86\\xd5\\xa3\\x8d\\xd5\\xa3m8\\xa3ze\\xbc\\xd7\\xbc\\xc2f:\\x0f,l\\xec\\xa0!d%\\x1bMhA1\\xcd\\x80\\x94\\xcf=\\x11Oq\\x10\\xbf|\\x1f\\xa5K\\x9b\\x00\\xbb\\xbd\\xf4D\\x89\\x92\\xc4\\xd6\\xd6b\\x94\\x88\\xcc\\xba\\x01u\\xb4\\xd4{qZ'W(\\x11n\\xe7\\xcf\\xb8>\\xba\\x1et\\x9a=\\xea\\x8e\\xa7\\x86\\x1do\\x0d7,Q6\\x9d\\xe4\\x96\\xbdc\\x0c\\xb9\\x94\\x08\\xffqO\\x9e\\x98\\xa6\\x85\\xf1\\xf7[\\xbb\\\\\\xc6W[\\x08M\\xf2+6\\xbcb\\x92_a<\\xf7\\xc3\\xa4\\x88ViX\\\\90\\x92\\xa9\\x04\\xb3\\xf9\\x90\t\\x97\\x0e;\\x08P\\xe2\\xa3!\\x00\\xaa)\\n\\xac!\\xf6#\\xe56ih\\x9f(\\xcc\\xd3D\\xda\\xd0\\xf2\\x0bR\\x96\\xe1LV!\\xdf\\xf6\\xea/C+*i\\x18}\\x12\\xd5\\xf0\\xdf{2\\xd5P\\x85\\x14\\xc57w\\x04\\x03\\xf0\t\\x06\\x922\\xde\\x06\\xe1m\\xca\\xe4\\xad\\xf8\\xc2-?\\x84\\x1f_\\xe0~\\xd5\\xf2\\xecn\\x91\\xafJ\\xc7\\x83Mpp\\xfe\\x1f\\xacP\\xf8\\xfd+\\xf35\\xe3\\x0bc\\xc8#\\x96n\\xf2|\\xcc\\xd2\\xf5k\\x80\\x95H\\x7f\\xed\\x99\\xcc'K\\xbb\\xd8\\xc9\\xa4\\x10\\x8d\\xda8J\\x84\\xbb\\x1d\\xae\\xf0j\\xd0\\x9d\\xe2zS\\xdc\\x19?\t\\x0b\\xd7{\\x03\\x9b\\x9b\\x14~\\x80\\xcc\\xa8S,g\\xa2\\x1do\t\\xa4\\xec\\xbc$\\xd4-0\\xfeW1\\xd9\\xbd\\xb2\\xe9\\xed\\xd6\\xbf\\x14\\xa5'\\xde\\x07\\x86\\xac\\xfdF\\xb2P\\x8f\\xc2`\\x1ceS\\x15\\x9em\\x94f\\xe2<d\\xf8-l&\\x96\\x98s\\xe5\\xdf\\xdf/m\\xbd\\xf6/\\x9eyn\\xe6>{\\xe9\\xf9\\xe0\\x9c\\x84K\\x9b\\x10x\\x90V\\xbc\\\"Un\\x85\\xd0\\x13\\x10e\\xf1\\xea\\xf8\\xc2\\\"\\xd2|\\xd1\\x12\\x81\\n\\x88\\xda\\xd5E\\xf4\\xa5H\\x7fi\\x84\\xb4\\xd4\\x0ei\\xc2< \\x0ei\\xc8\\xad\\x140\\x1a\\x99\\xd1\\xca\\xaaL\\xfe\\xce\\xf1\\x05\\xfbaX\\xf4\\xd4\\xb0\\xe8\\xb9\\xdfH\\xae\\x16=i\\xa6\\xf3E\\x0f\\x9b\\x89|\\xd1W\\xcdD\\xbe\\xe8es\\xd1S\\xe3\\xf2\\xa8C\\x1e\\xacN\\xdb\\xf0\\x9b\\xb2\\xb5\\xcb\\x1d\\xa7\\xd0\\xca\\x9c\\x98\\xeb\\xdcK\\x1f$\\x9b\\x9b\\x19\\xfc\\x00\\xc5\\x1b\\x0f\\xc8$\\x87M\\xc0\\xf81\\xed\\xb05\\x92o\\xd3\\xe6l08\\xbdx\\xaa#\\x1c\\xa1\\xf2\\xfcZ\\x07\\x1bcL6\\xa3\\xaaS\\x0b\\xda\\xba\\x84\\xc4m\\x18\\x0c\\xd5\\xe0\\x8a]\\xec\\xb9\\x8a\\xb1\\x90,@B\\\\Q\\x1e(\\xdc\\x90\\x1b\\xb6[E\\xc7Z\\x8dj\\x10\\xb8V\\xbe\\xaf\\xba\\x03\\x1dF\\x83\\x9a\\xf7\\xf4\\xea\\xbe\\x8b`>%\\x9e\\xebkcZ\\x83\\xf6t'\\x9a\\x97\\x8c\\xf6\\x14'\\x03\\x16\\x0eq\\xd37\\xaa\\xb6\\x08u\\xc7A\\xab\\x99\\xb3\\xaf<\\xe8L\\x15E\\x15\\xd56\\xb8\\x87\\x92\\x8dU;\\xbd\\xd9\\x9ey)\\x06!\\xed\\x0e\\x1b\\xb1z\\x95\\x9e\\xe9\\xab\\x015\\xf2m!e\\x90\\xbaB\\x16\\x8e\\x08\\xffl\\xd0 \\xcbcry\\xb7D\\xd2\\xc9d\\xfe\\x88\\xf7Af:\\x92;\\xa4\\xc7zH\\xa3\\x1e\\x83\\xe9%\\xdfW8\\xbb\\xd5\\xd4\\xec\\xf1\\xab&\\x19t^\\xb0&&\\xbf\\xe0l\\x1e\\xdd\\x15\\xec\\xc3*HJ-7\\xb2\\xd4\\x9a\\xde{{\\xfeAgPv\\x9f=\\xf7\\xaa\\xcb\\xd5!z7\\xafwv^\\xee\\xbe~\\xfd\\xf4\\xfb\\xe7/\\x9f\\xef\\xbc~\\xbd\\xfbP6\\xc5\\xe4\\xbf\\x1d\\xe7\\xf1\\x0f\\x8c(\\xc7_\\xff\\x81\\xbe\\xf1\\xb93\\x02\\x02?\\xec)\\xa2\\xb0\\xfek\\xb1{\\xf5\\xa6\\x1b1I\\xdc\\xde\\xba\\xd4\\xed\\xe9\\xceC\\x80\\xfb\\xe9K\\x9d\\xc0\\x04\\x01\\xdd\\xdf\\x08\\xc1l\\x13\\xe4\\x8f\\x00\\xc1\\xd5NH\\x1a\\x10\\x8cU\\xa3\\xb9cDJ\\x83\\xc5\\x9env\\xd0\\xca\\x00\\x9d\\xf7\\xe0 \\xe5]u\\xeb\\x05\\xf9\\xdb*)H\\xe3\\xc5uV4I\\x1d/`\\x03\\xb3xb\\x01U\\xae\\xfc\\xe5\\x8b\\xdc\\x8e7\t\\xdeD6^du\\xc6zz\\x02[}u=\\xfbf\\\\=`3v(W\\x99\\xaf\\xd6[FT\\x0c\\x04\\xb6?\\x06_>N\\xdc\\xfd\\xd1\\xe4\\xffL>^]}\\xf7\\xc5\\x9d8\\xbf\\xbf\\xf2\\xdc\\xfd\\x91\\xbb\\xbf\\xf1q\\xd7\\x9b\\xfc\\x9f\\x8f\\x1f\\xaf\\xbe|\\xfc\\x18x\\xdf\\xed\\x7f\\xdc\\xf5>\\xea\\x81Yx\\x00\\x98\\x8f\\xb7\\xdf\\xfd{oH\\x07\\x8b!S\\xc3\\x8eI\\x17\\x8bV\\x92t\\x01\\x98F\\\"k\\xc3\\xad\\xb0\\xc7\\xc6\\x1ed\\x08\\xd4%R1JB\\x158B\\xa64\\xdc\\x0em\\xa0F\t.?\\x8f\\x05\\xc2\\xa3\\xc8n$\\xea\\x9b,A\\xf9\\xf6H\\xa4\\xd3<\\xf7^\\x86\\x0e\\xf7BD\\xf7\\xa4\\x1f\\xcd\\xf2\\\"A\\x99pm\\xd3\\xcaE\\x17\\xf5\\xc1\\xb9\\xbe&\\xe5I\\x1e\\xafR\\xe2\\xe8\\x1a\tB\\x1bAU\\x08AC\\x9b\\x05Y\\xe4\\xc9\\xdfI|\\x11.\\x96)y[\\xe4\\x8b\\x8bhN\\x16\\xa1\\x90*\\xf0\\x8f\\x87\\xa8,\\xf8\\x97\\x93w\\xe3\\xcf\\x98\\x8d\\xb3\\x10\\xf8\\xf3/\\x8bT+\\x94dSR(\\xefe\\xbbfq\\x00\\x824\\x81i\\xd4\\xac(z(\\xec\\x98\\x89\\x1b\\x0b\\xdd\\xcc}\\xf1\\xfd\\x0b\\xcf\\xb0\\x0f\\xf0\\xd3\\x8b\\xd7\\x9e\\x91\\x97\\n\\xed\\xeb\\x83\\xa0\\x10\\xd4\\xf3(T\\xf5\\xdaXKFF\\xd0\\xddZ\\xfd\\xae\\xfdk-|\\x19\\xb6+\\xe1\\xa2\\x99\\xe1qm\\xa5,\\xa7\\x95\\xc7\\x10F\\x8bg\\xbd&\\x8b0I\\xef\\xd1\\xc2\\xaa$\\xc5\\x1f\t_\\x8c \\xca\\x17\\x83\\xda\\x12\\xfdb,(\\xd9\\xa2\\xc9\\x828\\xc3[t\\xe5\\xf5\\x95\\x17\\xd0\\xfc\\xf8\\xe2L\\xa8\\x84\\x19\\xf8\\x02\\x83<\\x05\\xd1\\xc4\\xf0\\xb6\\x06\\xc5u\\xe3\\x95^O\\xd3<\\xa4\\x8f\\\\u\\x92Q2{\\xf4\\x0e\\x0bT\\xd8G\\xff\\x83\\xb2\\xca*\\xf6\\x94\\xb88\\x10 \\x8dW\\xad\\xf2\\xa5\\xdd~\\x13\\xdc\\xdb\\xbcLw'\\xa4\\xcc\\x82mt\\x17\\x9d\\x0frr%\\x99\\xdeyF\\xff3 \\xc4f4h3a\\xf2AO6\\xc14/\\x16\\xa1\\x812\\x02\\x81\\x12V\\x13\\xd4O\\xbcv`\\x13\\xb8\\xa9\\xcc\\xca\\x18\\xd5S\\xc2%\\xf6.)\\xdf\\xae\\xb2\\xc8s\\x13\\xc6c%\\\\O\\xda\\xf9\\x90}\\xca\\xf2\\xdb\\x0c\\xb5 \\x85K\\x1b\\xec]\\xd7\\xd4\\xa46\\\\Xa%\\xcb\\x0d\\x93<2[7\\x89\\x7f\\x00\\xa4\\xa3\\x15U\\xd6\\xfa\\x8ep\\xf7\\n\\xf6\\x9b\\xaf\\xa3\\x96)\\xa8|r\\xd3RP\\xcbR \\x99\\xd9\\xb1\\x14<t\\x91\\xc0\\x1f\\xe6,\\xe8\\xd6U2\\xc6\t1\\x10\\x93 \\xe6+\\x0f\\xc2\\x98k\\xd2\\x84\\xe9\\xfb\\x9e\\xfc\\x11\\x8f\\x99D\\xc9\\xc2\\x92\\x01\\x15\\x1b\\x03\\xa12sN\\xc2\\xf8,K\\xef\\xccY\\x97j\\xd6_\\x8a\\x84\\x12\\x96\\xd7|\\xc1\\xabN\\xbf\\xd7\\x84\\x9d\\x98\\x90ez\\xc7\\xf0\\xd9\\xf2\\xcf\\xe4\\xcesC\\x1f\\x9c\\x7f\\xff\\xf7\\x82L\\x1d\\xff\\x1e[\\xb5-\\xbe\\x17\\x87\\x94\\xbc\\xd2p\\xfe\\xcd\\xf1\\x90\\xabj\\xefU\\x8b\\x16\\xc0\\x86\\xe1\\x0eC~[y\\x0d~\\xdaLcw\\xc4\\xcf\\x03\\xd9F$g\\xc3N\\xa6cCaQ\\x84w\\xedS\\x06Z\\xb8\\x06D\\xcd\\n\\x83\\xb3\\x07\\x89m\\xfa\\xd8\\xb6\\x89M\\x90\\xbd\\xb2@6\\x08\\x8f\\xdf\\xa6;/P\\xa5\\x8akF)\\xc6\\x1e\\xc4\\x935F\\x9bc\\xff\\x83\\x98,\\x0b\\x12\\xa1\\xca\\xdd\\x97/\\xcdO\\x85\\x805\\xa4K\\xa7\\xad\\xcf\\xb7\\x12\\xbe\\xf0\\xfb\\x12\\xb5T\\xe7,\\xc3\\x1e\\x10\\x97\\xe5`4\\xa1E\\x9b\\x04'\\x9a\\x1b\\xaf\\xa4\\x1e\\xcc\\xb5\\xed\\xb2\\xdb1\\x9a\\xca\\x8bHj\\x06\\x05PG\\xbc0\\xcdc\\xea\\xf90\\xc3N.|t\\xf5z\\xc7\\x9d\\x9f\\xdc\\xc1\\x0f\\xf0\\xfc\\x0d\\xdcmnz0\\x9f8\\xcd.1\\\\y\\xc7\\x8663wK\\x00\\xfd\\xbc\\x0d\\xca64-\\xe0\\xa7\\x12\\xb34\\xaf2\\xa3 \\xcc\\xee\\xce\\xa6\\x0cy\\x8b\\x9f\\xc1\\\"\\\\\\xf6x,\\x84\\x86L\\xc0\\xd7=\\xb3\\x02\\xee\\xac\\x96\\xea@\\x14\\xe4\\x19\\x91M\\xe1\\xcfGljB\\xdc\\x88}ex\\x9c\\x06$[-P\tI\\x9e\\xd8\\xea\\xef\\x91X\\xaa\\x8c\\x1d\\x87\\x18F\\x9cu\\xcfsy1o\\xb2s\\x857vIJ\\x1c\\x1eG\\x13\\xf6\\xa1\\xe4w\\xff\\x1c\\x975z\\xa0\\x9d\\x19\\x0c\\xcb\\xba:\\x89?H\\xecH\\x82\\x92\\xe7\\x7f\\xf2\\x84\\xcb\\x8fe\\x02\\x1a\\xe0\\xd7\\xa7\\x01\\xff\\x8e'\\x8c\\x82\\x86X&\\xad_V\\x0ed\\xd0\\x81\\xca\\xaf\\x01\\xfeigjr\\x9f3\\x95\\xcb\\x92\\xedgjC\\x92\\xdcy`&\\xf7<0\\x93\\xbe\\x033\\xe9>\\xca\\x97\\\"P\\xe1\\x8035V\\xb3Vg\\xaa9\\xef\\x1c[\\x16\\x00m\\xce\\xb26\\x844\\x93\\xcf\\xa2\\xe3\\xdb\\x0c\\xc9\\xb0\\xcf\\x0bC\\xc0f\\xf60\\x1c6\\xc3;j\\xf3\\xf7\\x1b\\xfc\\xbe,\\xc841x\\xb4b\\xcfuU\\x03F\\xab5g\\xba\\xe5S\\x9b\\xad\\x16\\xe6\\xef\\xe3\\x8aG\\xb6\\x1c\\xe0a\\xc7\\x01\\xceN\\x90\\xd4C\\xa8\\xfa\\x97\\x9c\\xe2a\\xdf)\\xee\\xb2Y\\xbd\\xc3K\\xff,\\xa7\\xe1\\x8cM\\x8e\\xc3\\xcd\\xa5\\xdc\\x1b\\xd8\\x87\\x1bF\\x96\\x8f\\xd0>\\x16u\\x01\\xee|\\xb8\\xe6\\xde\\xd2\\x17\\x13\\xf6\\xdd\\xf9\\xbcH\\xb3r\\xc4\\xce\\x8e\\x1b\\x96\t_\\xd1_\\xc1\\xb5\\x85\\xc0Q\\x0f\\x05\\xc48\\x91\\x0d\\xf9\\xb2\\xdc\\x11\\x83\\x07\\xd8\\x03\\xfe\\xff\\xcb\\x17\\x98qK\\x10\\x9f\\xa7HU\\x0d\\xe5\\x85\\xe5\\xe1P\\x023\\x11\\xa9>\\xae\\x88\\xbf\\xf5$\\x93nn\\x9b'\\x04\\x9e\\x0d\\xd3\\x81ns\\xe5\\x13\\xc9\\x1d\\xc8\\xfd\\xb6\\xb2\\xca\\x85\\xdf^v\\\"\\xe4V\\x9d\\xa6\\xd6\\xf94g\\xad\\xcf\\xef\\xdd\\xba<V\\xee\\xdd\\xba\\x9c\\x06\\x91\\xf3\\xca\\x87\\x05\\xa2\\xd6\\xaa\\n{\\xab\\xd7!\\xa5\\xc5\\x08\\x16\\x96\\xca}X\\x9b\\xa1\\x91a\\xf6\\xcf\\x1d\\nxb\\x81\\x0c\\xab\\xe2~\\xe3\\xb2|\\x1e4+>|\\xb6\\xac\\x8b\\xfb\\x8d\\x0bs\\xaf\\xf6E\\xaeV\\xa6\\x01\\xe4\\xb6U;\\x91M\\xfd\\x85\\x99\\xdc\\xee!\\xa7\\x0f\\x199\\xad\\xec\\x19\\xb4$\\x95\\x1b\\xf0\\xc2N\\x9d\\xb2\\xbe]\\xe8q\\n\\x0e9\\xde\\xd8\\xb8\\x98\\x1c*\\x84\\xf7\\x97/\\xb0T?\\xd4$7#\\xc6-\\xd3\\xd5h\\x87\\x95\\xe2H\\xa2\\xfa){(\\xde\\x03\\x06\\xb3h\\xa9\\xd2\\xb5l\\xf2a\\x03\\xff\\xd4R\\xbc\\xc3\\xba\\x90Jc\\x9d\\xad\\xde&;Wv\\x96E}\\x0ed\\xff:\\x0fm\\xfd9\\x93\\xa5\\x04D\\xd91\\xbd|\\x16\\x93j\\xd4\\x12\\x1d\\x1e^UG\\x16\\x92M\\x07l\\x04\\x07\\xd04\\xb5\\x9dN\\x0e\\x91\\xef\\xc1\\xff\\xcdOg,\\xfd\\x8c%~b\\x7fJ\\x9c\\x8b\\xee\\x85\\xf9\\xdaw\\x80\\xc9\\xa7\\xd9\\xd9=hw\\xbe\\xe1\\xf3H\\x9dA\\x8d\\x18\\x94\\x03p\\x1byx\\xba\\x05\\xce\\xd5\\x87\\xad\\xfa{d\\x99.\\x86\\x15h\\x82\\xc7{Tw\\xe5;\\x05\\xd1\\xa8pa\\xf0^\\xa2[\\x8e\\x04\\xde\\xf7L[\\x17j\\x94\\xcc\\xa4h\\xa8\\x0fQ7\\xa9\\xcd\\x118\\x07\\xd9\\x1d\\x9d\\xa3\\x0dT\\x98\\xc1\\x0dAc7\\x0bU\\x80\\xe1Q\\x86\\x9e\\x08zC\\xa5\\x8doeH\\xee\\x11\\xcf\\x99\\x018R\\xcc\\xdc\\xb8\t\\xffSv\\xd4W,\\x15&\\xcd\\xd9\\xf9\\xdbB\\xff\\xb7lQo9WV\\xa2]\\xb8Xa\\xc6\\xe1M\\xcc}\\xb7\\xf6\\xfb\\xab\\x0fcV\\xd1X\\xef\\xfaW\\xe3=\\xc8\\xd4x\\x89'\\x05\\x8e\\x11\\xff\\xda\\x84R\\x86\\x0d\\xb3\\x86\\x9c+\\x97x\\xc3s3\\x93\\x19lL\\xa24\\x94\\x81{M~\\x0b\\x92,\\xc6\\xc0*\\xceG\\xaa\\x85c\\xd3\\xaf\\xe1\\x00\\xcda;.\\xa5X\\x7f\\x92\\xba?\\xd3\\xbe\\x1b.-\\x7f\\xda\\xaf&Q\\xcd][t\\xcf\\xd5\\xf0\\xc8\\x9aq\\x87\\x95V\\x9ex\\x15\\x87\\x05O[\\x84\\x9f\\xabxrU\\xc6Fb\\x85\\x1b\\x95\thw\\xc1`\\xd7$\\x85\\\"2OCl\\xd8YY~?\\x8ds\\xd5\\xd8\\xa0\\xbb\\xe2\\xc4Z\\xb1\\xeaz\\xc5\\xb0\\xd2\\x0dGY>d\\x01\\x06W\\x19/\\x12\\xca\\xdd\\xdcc\\x9a\\x12\\xac\\xa3\\x9ayy\\xbb\\xd8\\xf8\\xaaMz\\x9dG\\xac\\xfeI\\xf3\\xfb\\xaeV\\xbe$z\\x0e\\xbb\\xd4\\x03\\xa9&\\xe5\\x06\\x9b*\\xc6(D\\x06\\xa8\\x10\\xbe\\xebL\\x1e\\x152X\\xacJ\\xca\\xd0g\\x08<\\x1e\\xf2\\x9a\\x88[)\\x8b\\x1b\\x05#\\\\\\x11\\x0eo\\xf5\\xcc6GD\\x16\t\\xed\\xb7\\x9f\\xe7\\xfe\\x8f|X\\xf9P\\xfa`\\xf0\\xc4\\xac\\x83\\xb9\\xabm\\x03\\x0c!'\\\"\\xe5\\n+\\x1c$\\xc4\\xd4l\\x01~F\\x05'\\xb7\\x9d\\xce\\xd5\\xd2\\xda\\xe9\\xd2\\xd0\\xceDo\\xb1\\x9e\\xa1\\x8b#U^\\xe3\\xa9\\xc6oc^5\\x9f|\\x03\\xcd\\xc3F\\x1f\teZ\\xbe.\\xbf\\xff\\x90E\\xe1j6\\xa7>\\xac\\xb2rI\\xa2d\\x9a\\x90\\xb8\\x1a\\x1bv-\\x00\\xf7\\xf7\\xb0\\x89\\x0e\\xa2\\x1d\\xcf\\xe4.\\x84\\xb7\\x17\\x05\\\"j5\\xa7\\xde\\xa3&\\xdak\\xcdq\\x82^\\xa2\\xd4\\x19\\x98\\x90+\\xbb\\x92\\x05\\xd7\\xc2\\xc8<\\x0f\\xca\\xdb\\x04UXt9\\x97i\\xca\\xa2\\xb0$\\xb0k\\x8e\\xf4/\\\\\\xb0\\xa2[t3\\xd5\\x82>\\xa4\\xdb\\x9f\\xb0\\xd2\\xa7\\xbd\\x95\\xfa\\xcdu\\xba\\x7f\\x13\\xcf\\xee\\xd9\\x84\\xfa\\xf6\\xf4\\x9e\\x0d\\xca\\x9b\\x7fc\\x99UE\\xd4\\xf7[\\xe1\\xb1\\xfd\\x18.\\x97\\xe9\\x9d\\xe8\\xe0J\\xd7{\\xad\\x84\\xf4\\xb9k\\n\\\\\\x83,\\xd4\\xfd\\x1a\\xc4C/\\xc5\\xeb-n\\xda\\xe2y\\x95^t\\xc9C4r\\xc7\\xe5Pnnz\\x90N\\xca+\\xad\\x8bF\\xfc\\xa3j\\x954\\xb1L\\x18\\xc7J\\xcc\\xd0N\\xe5!\\xb6\\xe3\\xc26$oX\\xfc\\xce\\xa4\\xb2\\xda\\x1aYV\\xa7^\\x17\\x96\\xecAU\\x0d<\\x93\\x91[5\\x02)~cx\\xd3u\\x94/\\x0e\\xfa\\xff(\\\\\\x1a\\xc8.y(\\x90\\xaf:8\\x02\\xaaU<!W\\xb0\\xaf!;\\xb6\\xa5Y\\xb9f\\x924\\xb6b\\x95h\\x15\\xec\\xc1DK\\xf2\\x81^\\x193R\\xdf\\xd4\\x98\\x8eVYs\\xb7a\\x91\\x89\\xf8J!7\\x9ck\\x1d-\\xe8(\\xcexl\\x8e\\x0c\\x07\\x11\\xd75F\\x9f\\xacUt\\x83\\xba\\xb9J\\xec\\xce\\xef\\x05,\\xbd\\xe1\\xce\\xf5\\xa3<+\\xf3\\x94p\\xe4\\xef:n\\x96\\xc7\\xc4\\x03\\x96\\x05uh\\x96yY&7)\\x81\\x06\\x99\\xc0\\x88\\xbf\\xe2\\x0eR\\x12~\\x82\\x98P4W\\x0e\\xe0?bH\\xab^\\x87q\\xcc\\xd2>\\x94\\x04\\x08/\\xa5\\x9f\\xf6\\xae\\x074\\x87$\\x8b\\n\\xc2\\x90\\x0d\\xfa\\xb7\\x08\\x9c\\xd6\\x92J\\xe4\\xea\\x9b\\xe9/\\xd9\\x7fZ\\x84\\x11\\x1e\\x82\\x8d\\x04\\x0cL\\xd7u^\\xe7h<d\\xdeZz\\xce\\xa87\\xf6\\xca#\\xed,\\xc9+\\xb0#\\xa8\\xf1A\\xa1+M\\x87\\x0d\\xce\\\\\\x811\\xda\\xe5\\x18X7s\\xf4X\\xcc\\xb6f&\\x16\\x9d6\\xd0O\\x85\\xcdt\\x13\\x01\\xd3v\\xcf\\xeb\\x1dX\\x87\\xbc\\xe2\\xd3\\x91\\xf7\\xccu\\xb3g}s).\\x94\\x12N(\\xfdS0\\x18V\\xa3\\xe3/}\\xf3z*\\xa2k\\x97G\\xdco\\\"$\\xaa\\x13@\\xc4\\xf1`+*\\x0dn\\x0b7S\\xd0\\x1a\\x06\\\\\\xabg\\x95e\\xaa\\x9cd\\xb7q\\x91\\x8aI\\xb5\\x19m\\\"\\xd3\\xe6G\\x8eOu\\xc6\\xb3y\\x16\\x1a@\\xaa:\\x0d\\xc37\\xb0\\xda\\xdab\\x18\\xc7\\x10-\\x10$\\x0f\\x8bqI\\xe5(\\xd9[=.6\\xcaF\\x82\\x18h\\xc7U\t\\xec\\xe9\\x0b\\xaf>\\xe6\\x00\\x1b`\\x15\\xb9&<\\xfa\\x8du5\\xd9\\xc3\\x03\\x88d\\x12\\x83\\xee\\x83[\\xfd\\xdec\\x8c\\x8dyU\\xd0\\x08[F\\xd8J8M\\xf0\\xad\\xeb\\xd4\\xbf\\x13\\xfb\\xb7\\xdaA\\x9a\\x0e\\xe3\\xad\\xd6F\\x07\\x81\\xad\\xed\\xd1\\xb3\\x156:\\xc6\\\\\\x15\\xe5\\x9ci\\xeb\\x8ax_g\\xf4\\xd1\\x87\\x98~\\xe6>y\\xd2\\xb9/\\xda]2\\xb7f\\x05t\\x8a\\x0e\\xc8\\x1a#\\xd6\\x97G8\\x02\\x90K\\xd8\\x9eh\\xa3\\x0d\\xb7J+\\x19\\x8a\\xe8\\x8dh\\xf0#cC\\xaa\\x0b\\x0eF\\x9e\\xa6\\xb0\\xf04\\x96\\x93!\\xb3\\xa1\\x03\\x83\\xc6\\x04N\\xd0\\x9bjo\\xbc\\xb1W:\\xa9\\xf6\\xcc\\x16\\xb4\\xf8\\x0e1\\x13]\\xcbh\\x03\\xeat\\x10,\\x9b\\xc8\\xd26\\x8d\\xc4\\xdd\\xf1\\xea\\xdbx\\xbfE\\xfc\\x19(?I\\xe3\\xc3H\\x8b\\x16e\\xea\\xeba\\xbe\\xca\\xba\\x05\\x02:\\xbboS\\xae\\xa0\\xed\\x85m\\xc3YRy\\x94\\x14\\xd3`q\\xa0R\\x87+\\x96\\x16\\x9c\\xfd\\xf8F\\xe3F\\xec#4\\x1c\\xe6\\x95\\xbaJ\\xa3T\\xbfI\\x80n\\x0cD5\\x0f4\\x99\\xfbl\\xe7{\\xcf\\x0b.hA\\xc2\\x85\\xa0H\\x82s\\x12\\xc6\\\"\\x02\\x1b\\xbe\\xffR$T\\xbcg\\xee\\xee\\xeb\\xefQ\\x80y\\xb4Z\\xa6\\xe437\\x80\\xe3)\\x97E\\x98\\x95\\xd3\\xbcX\\xf0\\x8aww0\\xf5}X\\x96\\x97\\xf3\\\"_\\xcd\\xe6<\\xf3\\x8b\\xe7\\x83LMz\\x1d\\x01\\xf28_&T,\\xdc9>\\xdf\\xf1l\\xf4\\x9fA\\xd7\\x1e481II\\x12\\xc6|\\xa1|\\x84\\x07\\xaa\\xe0\\xa7PF\\x8b\\xbbf\\xd24\\xc9\\x92f\\xc0E\\xdb9\\xbd\\xd19\\x07\\xfa#-\\x0f\\x08o\\xd4~\\xb6\\x93F\\xaf\\xec\\xf9\\x04R*\\x8c\\xe6\\xfb\\xea\\xb3\\x16^d\\nd\\xe0o\\xc2\\xc8 \\x82P\\x1f\\x1a,\\xb9\\x93\\xc5\\xe8fk\\x8b\\xf1y\\x18v\\x1d+`3h-k\\xbe\\x07\\x02\\xac1\\xca\\x8bO$>'\\x7f[\\x91\\x92\\x96o\\x0b\\xf4\\xe9mJ\\x96\\x8bDP/\\xcdPlO\\xd3\\xdb\\x92\\xcfW\\xee\\x91\\xa5\\xf5\\xedk\\xc7\\xeeV\\xb7\\xd3]\\x9b\\x0fYq\\x11\\xc6\\x06\\x0dn\\x8a\\xfc\\xb6\\xe4\\xd4\\xcb\\xc4Y\\xef\\x04\\xbb;\\x8e\\x0f\\xec\\xc7\\xeb\\xc0\\xb9\\xaa]\\x81\\x04kR\\x94I^y\\xf9\\xf0\\xe1{\\x8fk\\xd2\\n{\\xda\\x04\\x87w\\x99\\xe8KpW\\xed\\xd3\\x0b\\x1a\\xa2-\\xfc\\xac\\xdd\\x9dT\\xd8\\xad\\xbc\\xd0\\x8e\\x954H\\xb29)\\x12\\x81\\x15^\\xed\\x1aX\\xaa\\xc8h-\\x02(|\\x12z\\xa6#\\xdc\\xe0\\xcf\\x06\\x99IL\\x05\\xfe\\xd1=\\x0e\\x80\\xd4uvw\\x9f\\xefJG6\\xed,\\\\u\\xebC\\x92\\xd1W(i\\x025`\\x8d\\xd7R1e\\x03\\x98\\xfb\\xa8\\xa1\\xc5\\x1a}iE\\x0d\\x0b,l\\xf983bg\\x10\\\"6\\xee\\x82\\x8a\\xa3C\\x0420\\x84Q\\x05e\\x1fSU\\xf6k \\xd5\\x11\\x99\\xf0\\x8b\\x8e\\x93<fUnl\\x10%\\xc1\\x17\\x81\\xe5\\xdb\\xf9\\xf4\\x14\\xc6\\x98m\\xf0\\x10D\\x0cB\\xce\\xaa/\\x06bK\\xeeu\\x12\\xcc\\x93\\xd9\\xfc\\x97\\x90\\x92\\xe2$,>\\xd9\\x15\\xfc\\xeaz\\x7f\\xea/\\x10\\x19z\\xb7\\x0f\\xbb/`\\x04\\xbb/\\x9e\\xbdzn\\x99\\x85FW\\xd0\\xaa\\xf4\\xcb\\x17A\\x0c\\xe7\\xb0\\x0f9\\x8c\\xc4\\\\\\xa4\\xf5\\x87\\x94Q$)\\x8c \\xf2\\xcd\\x95\\xd4\\xb1~\\xdc\\xf6w\\xafF\\xe6az\\x18\\xa62,\\xa7/\\x0f\\x02\\x12\\x1f\\x15a\\x92\\xa9\\x89\\x1c\\xe7i)\\xcdr\\xfclh\\xa6\\xc5\\xa4\\xa4E~'\\x12\\xcd+\\x82\\xf1\\xf99\\x7fE\\x82\\x98Dy,\\xa2\\xc9\\xd8N\\xaaF\\x1eVxZ\\xb5\\x86B\\xb2q\\x16\\xe5\\xa2\\xb7\\xa4\\x95\\xf6\\xe5\\x0b8+:}%\\xe5I*\\x13\\x87\tl\\xc5\\xb5\\xa1rD\\xab\\xe4)\\xef\\xb2HJL\\xd8\\xfb\\x0dn\\xe5\\xf7\\xdcZW+\\x9cg\\xa8\\xff\\xd2\\xab\\xb8\\x0b\\xedC\\xb3\\xef\\xc4\\xe4A\\xdc\\xaeoU\\xec\\xd8\\xad\\x84RpY\\xf4]\\x16u\\xe7\\xe3\\x81\\xe0\\xb0\\xe3\\xd1\\x8d\\xfd@d\\x14c\\xff\\xa8\\xe4C\\xb4\\xb9%\\xb2\\x81\\x8a\\xc6 \\x15\\x7f \\xf7\\x1eII\\xe6+\\xbf\\xd9\\\"X\\x1b\\xf9\\x8a\\x871\\xf5\\x0c\\xc4\\x87\\x99\\xa6\\xd2\\x9f\\xad-\\xe5x\\xf71r\\x80[\\x9fJn\\xeeC\\xe1\\xf9\\xca9\\xe5^\\x08\\xa6\\xdco\\xad\\x03\\x97\\x9br\\xb9\\xa8\\x14\\xa9\\x12\\xc1\\xd8\\xf3+,V\\x19\\xe3\\x15\\xdc\\xdc-\\x1e\\\\\\x81\\x0f\\x17\\x1cT\\xecZ(\\xe89\\x8aO\\x00es\\xd0A\\\\\\xf5+\\xf8\\xe0\\xad\\x01\\xec\\xc1\\xd8\\xd5YD\\xfd\t\\xf1\\xcc\\x90{\\x07\\x7f\\xb7\\xb6\tC\\xde2\\xb9\\xa2dX\\xea-gB}\\x8cfZ\\xba\\xd78\\xcd\\xfcj4gsv\\xed*\\xef\\xf6\\x91\\x1b\\xbfXi!\\x05\\x01\\xa8@Y'\\n\\xf8kl\\xfa\\xba\\xdb\\x8d\\xfciX\\xd2\\x1f\\xbb2T`\\xa6\\xd4\\x88\\x8a\\xcem$\\xaa\\x03\\xc2\\xae\\xb9\\x03\\x92\\xdf\\xdai`-\\x8d<\\xcc\\xc8-\\x84\\xfcf\\xb11\\x016\\xba\\xe0\\xce\\xbc\\xad\\xb9\\xe6s\\x930\\xd8p\\xe7\\xfc\\x12\\xec\\x8ew\\x00\\x8d\\xbe\\xd9\\x8f\\x06-\\xe05\\x1c\\xa0\\xdeY|\\x9f2n\\xf6V#\\xfaX~N\\xa6(\\xe1\\xa2ok\\x0e\\x0e7\\x08\\x9e\\x94f}\\x0c\\xbe\\x86\\xca\\xc5\\x87\\xc4\\xcb\\xe2\\x8b\\xed\\\"A|^\\xeb%\\xd7u\\xd1\\xb5\\xbd\\xac8\\x01\\x95\\xc22e\\xaf\\xfej/\\x8eg\\xb4R\\x98\\xbf\\xef\\xc9/\\x9e\\xe7\\xc3T\\xb9-\\x1e\\xb4\\xa67M\\xa4\\xc8E\\xe9\\xc6k\\x03\\x15\\xec\\x19\\xfaP\\xf6F(_\\x05>\\xc7\\xcb\\x03\\xe5\\\\\\xc4\\xa8+r\\xa6\\x18\\xe6\\xa4\\xf2$\\xe4a\\x87\\xf9\\x17\\x97\\xb7^\\x7fSk\\xd9\\x1d4\\x9ake4\\xa6Ad\\xd0\\x17\\xf0Q>\\\"\\x06\\xa3<\\x83\\x9e<\\x01\\xaa\\x10C\\xb8\\x06-\\xe2Hb\\xe4\\x98\\xa59\\x06,\\xfc\\xd5\\x15\\x07\\x84\\xc68\\x16n\\x8d\\xbb\\x07\\x8d\\xf3\\xd6\\xdawj\\xa4?\\x0c\\xb6\\x0c\\xeb\\xca\\xb1\\xb2\\x86:\\xcc\\xb2\\xa0j\\xf9PD\\xcfo#\\xd8\\xc9g\\x9b\\xbf\\x8a\\xf87b&;\\xc1\\x91\\x8b\\xcd\\xcd5\\xf4\\x8a\\x0e\\x83AtZi@l\\xe6\\x93(\\xa9e\\x05\\xe6\\x0c\\x95R\\xf4\\x8a\\xa3\\xcd\\x92\\xcf\\x1b:\\xfd\\xcb\\xf1\\xc6\\x82k=\\xa1w \\xbc'\\xc3\\x1c\\xbb2\\xd0'\\xce\\x86\\x0f+\\xd8\\xdc3\\xc9\\xd3\\xd8\\x93\\x07a\\x9a\\xf2\\x83\\xa0\\xe4^\\xd8\\xe4\\xee\\xe3;\\xa6\\xf2\\x92\\xe6\\x83\\xe30\\xd2\\x82\\x1f\\x00Mx\\xd9\\xdc\\xc4\\xac\\x1dG\\n'I\\x18\\xb9b\\x11\\x0b$\\xa2\\xaf\\x89*\\xe7\\xf1\\xecb\\x04qN`?l\\xe7L\\x1b\\xd6\\xbb(\\x08)&\\xee\\x94\\xc8T\\x9c|\\x10\\xcdW\\x99\\x85\\xd1\\x92\\x0f\\xea\\x0b\\x05DP\\xf6\\xddy\\xb99r\\xbf\\x88\\x87\\xc1}\\xb5B\\xbb\\x88\\x99\\x1a\\xdc\\x1c\\x8c \\xad\\x16-\\xf5\\x19\\x036\\xd5\\xc0\\xc1<al\\xcfW\\x08\\xd3\\xbb\\xd7\\x1d\\x15\\xa0\\x97\\x04\\xe1\\x97W\\\"\\\";4\\xf4Iy@A\\x19\\x8d\\xb2\\xbe\\x05\\x93\\x0c\\xc3\\xc3\\xe3\\x1e{DR9\\x04\\x12:\\x88\\n\\x9e\\xad}F\\xb7\\xfa\\xc5\\xbd(Ud\\x11\\x7f\\x15\\xd38\\xa8_\\x9f\\xadx\\x93\\x88\\xe3\\xb4fa\\xac2J\\x0dy\\xe3\\\"\\xe8\\xc4x\\xc67m\\x93\\x86S\\x88\\xf6\\xea\\x8bc\\xc1\\xfc\\xec\\xf9:\\xec0\\xb8\\xb0\\x0eJ\\xe2\\xf8q\\xd7u\\x13\\x07\\xa2\\x81\\xdcfsL\\x8c\\xa6kH\\x0e\\x18Z\\xb4\\x10/\\x82ZA\\xac\\xa4!3M\\xf6\\xb0\\xd3\\xe0\\xaa>\\x0b\\xae\\n\\xb9\\xa3\\x81S\\xdau\\xf4\\xca\\x83\\xbd\\xa6\\xb9\\xf9\\x1e\\xb2\\xd4ZW\\xa9\\x87\\x0bhn\\xa4Z\\xb4\\xc8H^\\x86\\x06fM\\x07\\x9d\\xc2\\xa7\\\\\\x8f\\xb4\\xbc:\\x85*\\xf1\\x96\\xb6\\x07xx\\xf0\\xc9\\xd5\\x1b o<6\\x0c\\xb4=\\x92\\xa28\\x9c6\\xebJk\\xe1\\xe9\\x0c\\xc2\\xca>A~\\xb7\\x171\\xb3s$e\\x1e|p\\xf8pZ.\\x92\\xf4gF\\xe8\\x08\\x0d\\xad\\x84\\xc8\\xb5\\xdbI\\xa3\\xfe\\xa8\\xb7{\\xd5\\xd4\\x1b\\xdc\\xda\\xa8\\xcfW\\x1f\\x1c\\x8d\\xe9\\xe6}\\x85\\xa4\\xacE\\xbfBYI\\xcbX//\\xe3nH\\x18\\x07\\x8e\\x0f\\xce\\xd1\\xf8\\xfd\\xce\\xce\\xce3\\x8b\\x8f3ho\\xf0*\\xb9\\xd7\\xfd\\x99\\x85E\\x10\\xb1\\xb4\\x9e<\\x11\\xbf\\x82yX\\x1e\\x0b~\\x0bl\\xa1C\\xa5\\x9b\\xe8z\\x99&\\xed\\xd2Wh(\\x07{\\x03s\\xfb\\x16X\\xb8\\xf3\\x0d=\\xeb\\x08\\xe0\\xd5/O\\x92Z\\x90\\x1bsU\\xdf\\x94\\xd4\\xfc&\\xdb\\xed\\x9c\\xe3\\x92\\x0e\\xa6\\x9a\\xbc\\xa4\\xc2\\x8f\\xce\\xfaN\\xcb\\xaf\\x88\\x85\\xe6\\xbd\\xe2;y\\xce5\\\"\\x9c\\xb4\\xee\\xe5}P\\x15G\\x97\\xc9\\x92\\xf4a\\x07.\\x01h\\x1e4uP\\x90\\xc30\\xcbr\\n\\xac\\\"\\x1f\\xd8\\xafB\\xdcp\\xea\\xac\\x88\\xd6r[$i\\xbf\\xa3C\\xb2\\x9e\\x1b\\xf0\\x1b\\x18s\\xbb\\x8d\\xfd\\x86\\xc1#7\\x88\\x0b\\x85\\x8d\\\\\\xa5\\xab\\xd01:W\\xa1_V\\xae8\\xdd\\x02\\x17\\xb4P'4\\xb6\\x1fi+$\\x0d\\x94\\xe2\\xdc\\xed\\xaa;L\\xf0**Y\\x06\\xd3\\\"_\\xe8\\xf1\\xe3\\x00DH\\x05\\xcb\\x16D\\\"\\x85\\xebWpT\\x8dT\\x18\\xe3\\x0b\\xf6\\xf1U\\\"@FmsEX\\xbc\\xe1\\xd1$\\xd3\\xcd\\xdak;\\x86\\xac\\xaa}\\xe1\\xf9\\x90\\x0b\\xb9\\xfb\\xfe\\xb0\\xb3[R\\x03\\n\\xc8\\xf0\\xa5\\x0f\\xa7\\x94\\x14@\\xb2\\xd8\\x16d\\xd3D\\xdd(G\\xb4\\xc5y\\x86\\xd8\\x8b\\x19\\x9e\\xdc\\xab\\x16\\xe7m\\xe7\\xd2A\\xb9\\x9e1Y-\\xc9'\\xb4\\\\$\\x80B\\xdc\\xd4\\xa4\\xf2>\\xf7\\nN\\x1az\\x80'\\xe1\\x1dn\\x15>\\x11\\x98\\x1bQ\\x0fF'+Q_\\xc0\\xf1\\x8c\\xd1\\xa3\\xb9,A\\xb1\\xa3\\xc989\\xd4\\xbc\\x8er\\x0dm\\x1eg\\xeb0Mb\\xc8\\xf2l\\x8bW\\xbb-N\\x1a\\xe4s\\x1c\\x0f\\x95\\xc5\\xb9/\\x8e\\xe6\\xbc\\x87\\xcdy/xJ.\\xf9\\xd0v\\x10\\x10\\xb9\\x069\\x97\\x99\\xf2\\x00\\xd2n\\xde$\\xc0B\\xc3\\xde\\xaf\\xa4A\\xb6\\xf5AU\\xae\\xdek|S\\xd5}\\x078\\xd1o\\xf4\\x8c\\xd7Axw#\\x17E\\x8b[\\x82{Jl_\\xda\\xe1\\xc2G>F\\xf2H}\\xbeVz\\x18\\xf6\\x8a\\n\\xee\\xb2\\xa4\\xda\\xa0\\x8c\\x88\\xcc\\x95\\x0d\\xcf\\x15\\x03,\\xce#\\xcc|\\x9e\\x94F\\x18\\xf8\\xce\\xc2\\x18\\xb9@>\\x95\\xd8j\\xd3\\xaa\\x1b\\xc9\\xeaF\\x0b\\xb8:8\\x12m\\xde\\x0c\\x9a\\xcb\t\\xed\\xfd\\xa6\\xeck\\xa7\\xc3GR-\\x18\\xc4\\xed\\xc1\\x05\\x0c}p\\xc3=\\xb6\\x19\\xd8Z\\xfb\\xfc\\xdb\\xb8\\xe0n`\\xc3\\x1d7\\x02\\xc3\\xcd\\xbb\\xfaH\\xb1\\xc2\\x08\\xf4P\\x84\\xda\\x83\\x07\\xce\\x08\\xb2\\x1eY\\x85\\x90<\\x8c \\xe9\\xce\\xc8v:\\x8fgo\\x07M\\x1f-\\x86S)\\xca1O\\xc3\\xc8\\xc8\\xe4\\x1b\\xf3Z\\x85<\\x9b{\\xd0vs\\x06\\xb5\\xa4G\\x95\\x94\\xacj\\xfc\\xd1\\x89\\x9e\\xcb.\\x8c\\xb5\\xf2A\\xa2\\x8cvL\\xa0&\t\\xc3\\xa0j\\x10\\xf1\\xa4\\x11\\xee\\x1c\\x1a77\\xbb\\xea^eCjo\\xf0l\\xcdV\\xda3 \\x1b\\x16H\\x9e\\xbflm\\xf9\\xca\\xad(:\\x82\\xac\\xef\\xcb\\x14\\xa9\\x07\\xbe\\x19o\\xcf\\xda\\x02\\x13\\xbc=\\x93$q'\\x11X\\x12z\\xd4\\xba1\\xef\\xa6\\x95\\xd0\\xd6\\xd2\\xe2\\\"O\\xb8\\x99\\xa2\\xf9\\xbb\\xfc\\x96\\x14\\x87a\\xc9\\x8d,6\\xdc\\x893'\\x9f\\x19w$\\xee\\xdd\\xd9\\xff-\\xfc\\x11\\x96Q\\x92\\xb0\\x1f7I\\x16\\x16w\\xf8+,\\xc9\\x8b\\xe7\\x98+*\\x9f\\x8a\\xff[OE\\xb1\\xdd\\x17\\xe8k\\x17k\\x90\\xbf\\x8b\\xf0VQ3r\tl\\x82\\xe3xZ?P\\xcf\\xa8\\xb2\\n\\xd0Ng\\xe9`\\xb2\\xde\\xf3\\xe8d\\xb2G]W\\x83+\\x83\\xf2\\x81I3\\xd7\\xca&5X\\xe6[\\x93\\xda\\x89\\x91\\x83&U\\x9c\\x83\\x91\\x91\\xe2F\\xae\\xba\\x97\\x93\\xee\\x18W\\xe3\\x80h\\xef\\xdd\\xe6\\xe8\\xbc&\\x84]\\xdf\\x87\\xcf\\xc8\\\\\\x85J\\x15\\xd7C\\x1e\\xe3\\xc4\\x19\\xb1\\x96,\\x96)Y\\x90\\x8c\\x92\\xb8\\x87\\xb5\\xa9/\\xe7\\xb8h\\\\\\xfdF\\xb2x`g\\xaa\\xbb\\x8c!{\\xdb\\x1a\\x90\t\\xa9\\x02\\xc2\\x055\\xe2\\xeeW\\x11\\xbd\\xdf\\x8b\\x99\\xa8\\xcd\\xbf\\xa1\\xe9$\\x83{\\xa8\\xaf\\xee\\xa8\\xa5\\xcc\\xabP\\xf1MQ\\xab\\xb0\\xc8\\xcbc\\x8e\\xe2p\\x87\\x16R6\\xcb\\xd8\\xad\\x06\\xd2\\x192S\\x80\\x07q\\xad\\x1f\\xb4S\t7\\xfdJX]\\xd5\\xb9\\xaf\\xd2\\xb2\\x19\\xbf\t\\xcc\\xb3\\x88TB\\xb7\\x0e\\xd2\\x8d\\xd6*G;\\xbe\\xa2\\x9a\\xd5\\x16Q\\x83r\\xa8\\x14-Fe\\xe0\\x16\\xacT\\x97\\x8c\\xdb\\xee^\\xdbJY-\\xd3\\xd5v\\xa5\\x84\\xae#\\x14\\xd1\\x81\\xf6\\xd8\\xda\\xdb\\xbcl\\xf4\\xc7\\xca\\xe7Z\\x9aw;\\xdb\\xc7\\xd8\\x8d\\xf7\\xdc\\xf9\\xf5%\\xf7Z\\xfe\\xd6\\xb6\\xe9*S\\xf3ToZ\\xae:O/\\xbf\\xcb%%Y\\xecz>\\xd0V\\x0c\\xf8\\xdf\\xd5=U\\x03\\n~\\xcf\\xa0\\xd4}\\xb6\\xf3\\xcac\\xc7\\xe1\\xf1bA\\xe2$\\xa4\\x04\\x13w\\x87\\x85\\x0ex\\x8c(\\x83F\\x04\\xf2\\xbbf\\xe7\\xbf\\xb9\\x1b\\x99\\xfb\\xe2\\xf5\\x8e\\xe7z\\x95\\xdbN\\xc6-a\\x98\\xc8\\x17\\xafw\\xbfa\\xa8\\xeb\\xcam\\xfc\\xcb\\x1ds\\xf0\\x84\\x17\\xa6\\x88?\\x99\\xfb\\xea\\xa9!\\x86\\x97n]-\\x0e\\xf6f\\xc6\\x95)jSWx\\xa0R*E\\x867\\x9a\\xff\\xc5\\xb4\\xa1.y\\xdf\\x05\\\\W^\\x1b\\\"_u\\xa5\\x0f\\xb51\\xa2\\x12\\x9f!\\xb4\\x98W6\\xcb\\xe1\\x85@\\x86\\xc1W\\xb9A\\xb0W\\x9b\\xbaF\\x9a\\x93\\x05~F\\xa0sI\\xf4p\\x11y\\\"\\xce]\\x04\\x7f\\xd8\\x83\\x1d\\xc6&\\xb0\\xb4\\x914H\\x96vN[\\x90\\xba\\xa5\\x1by\\xde\\x1b\\xe0a\\xee`s\\xd3p\\x1d\\x85z>\\xaa\\x94\\x95rq\\xc2T\\x1c\\x8d\\x13z\\xe5C\\xe1N\\xbdz\\x8c\\x1a\\xbf&R\\x15w\\xc9\\xdf\\x00\\xcd\\x0d#\\x89\\xd6i$\\x05\\x95Z\\x07\\x86\\x11\\xb5&\\xd1\\x1b1\\xd3\\x8bHaJ\\xc2\\xc4nD\\n\\x8aT\\xb8\\xf1\\xe1+\\x97\\x12tw\\xaa\\x06,\\x967\\xce#\\\\r\\x11\\xc0\\xe1\\x92|\\xa6\\xa7yL\\\\\\xc7\\xe9p\\x1cn\\xd0\\x00QT\\xaf\\x06\\xdc\\xaf \\x83\\xd3\\xc1\\xe6{\\xf2\\x80\\xe7\\x97\\xeb\\xdc=\\x16\\xb5\\x9d\\xdfC\\xfc_f\\xfd\\xfe/\\xb11\\xe3W\\xb3D\\x05\\xad\\xd6\\x9a\\xe4\\x94E\\x8e[;Z\\\"B\\xf3\\xa3\\xca\\x8f'8\\xd1c\\xd0\\xc8\\x077l\\x1e\\xc4!\\xe5\\xe1|\\xf6`s3\\x81\\xff\\x80\\xa7\\\\\\xdd\\x01k\\x0b\\xcay2\\xa5.z\\xa1\\x10\\xe2\\x17ix-(<b\\n\\xc2\\xe0\\x05\\xf9MI\\x8a5jJ\\x99'/\\x9a\\x87E\\x18QR\\x1c\\x854l\\x84\\x1c\\xa9k1\\x03I?\\xbd\\xc0\\x9e\\x02\\xef\\x1a)\\xec\\xdb\\x08V.\\xe5\\x9eP\\x1f\\x08w\\x98,.(\\xf1\\xf6\\x96\\x13\\xc0\\xa6\\xc9\\x19\\\"\\x16\\xfb\\xea\\xdf/\\xaexgT's\\xf7+zT\\xb1|3\\xdb\\xa1t4\\\"\\xf7'kF\\xfe\\xee\\x12\\xa3\\x1a\\xbbr\\xb2\\xa2\\xe8\\xb7\\xeb\\x8c\\xafxm\\x1a\\x9b\\xbb\\xadO\\xf6]i\\xac\\xfa\\x17r\\xf3\\xe7\\x84v4`\\xc9\\xd0\\x06%\\x1bJ1\\xef\\xa8\\xde\\x98\\x87\\x80\\x8c_\\xe1\\x9a\\xa2E\\x7f\\xb5\\xf1H%\\x0f\\xbb\\x9f\\xafP\\xdaaX\\x0e%\\xc3\\x90\\x0e\\xd4\\xd9]\\x0e\\xec;\\xe6\\xce\\xb4\\xa4r_\\x95-;\\x88\\xae\\xfc\\x06*\\xebQ\\xc3\\x10]\\xfct\\xf6\\x0bJ\\x03?\\xbc?:\\xb8\\x1c_\\x9f\\x9c\\x1d\\x8d\\xd5\\xf7\\xb7\\xc7\\xef.\\xc7\\xe7j\\xca\\xbb\\x83_\\xcf>\\\\6\\x82\t\\xad\\x96qH\\xc9\\xbb\\xf0\\x8e\\xcd\\xf3\\x00*\\xd7@\\xb2cD\\x0f\\x83\\x80u\\x19\\xde\\xa5y\\x18w\\x84\\xfb\\xa9;\\xf06I)\\xe9>\\xe5{:`\\x10\\xc9\\x0e\\xeb@9\\xcfo\\xfb\\xc9C\\xc6\\xa0\\xb6|B\\xf5\\xf8>\\xe7\\xc1\\xb4\\x94\\x04#UE*\\x17\\xb0\\xba\\xfby\\x06\\xc5\\xb6\\xe1\\xae:\\x86ke\\x1b\\xb3\\xd9\\xc8\\x14\\xbf\\x8e=l\\x16\\xb2\\x91\\xe1.\\xc5f]\\x88s\\x17\\xcd\\xc3lF\\x84UW\\xff\\x0c\\xdes\\xfe\\xda\\xbe\\xe3\\x1d\\xe7\\x11\\xa70|\\xe4)\\\\\\xe41\\xb9\\xd7\\x0c\\x9a\\xb8/c\\xd0\\xae\\xf6\\x06vR\\xdc\\xb1\\xd7|\\xf7\\\\\\xf37\\xa7\\xcd\\x9f\\xb5\\x91\\x81Vr\\x8a\\x1b\\xcfi\\xb3p:Z\\xd1\\xca\\xb1\\xc1:m~\\xae\\xc2J2;\\x83+\\xee\\xa2\\xf2\\xbf\\x1ea\\xe2\\xf5mH\\xc9\\x8fd\\x9a\\x17d\\xfc\\x99D+\\x14l\\xd2 \\n3\\xf1\\x8a~.y\\\"k\\x0cOR%m\\x1e\\x96?\\xe5\\xe2\\x12\\xa6\\xfa\\xfeKB\\xe7'\\x84\\xf2Y[\\x86E\\xb8 \\x94\\x14\\xe6\\xd4\\xe3,JW%\\xab\\x94P\\x9ad\\xb3\\xb7ya.\\xf6\\xe3\\xddqL2\\x9a\\xd0;\\xfc\\x1e\\xa6i~{Y\\xdc\\x1d\\xd3\\xb3\\x15\\x95\\x85\\x16\\xec\\xa8\\xafn\\x0ddj\\xa1\\xbf\\x96\\xcb<+\\x89\\xb9P\\xa9\\x16)\\x1b\\x05\\xf8\\x1b\\x0dg3\\x12\\x9f\\xc9\\xb1\\x96\\xcd\\xa1\\x97\\xac\\xbb\\x97\\xe1\\xac\\xca{Dh\\x98\\xa4\\xd5\\xab)\\xfby\\x9e\\xd3c\\xaet\\x87r)\\xca\\xa3Z\\x88\\xf6\\xe6rzo\\xc2\\x92\\xbc\\x0f\\xd1\\xacO\\x00@Rw`\\x9ad\\xf1Q\\x95\\xc6+!\\xd1\\xaaH\\xe8\\xdd\\x91\\x96U\\xa6\\xf3i.\\xf2x\\x15\\x89\\xa6\\xa2<+W\\xb2\\xdd\\xbc9\\xc2eH\\xe7\\xb2\\xfcb\\xcd\\xfd!I\\xe3g\\xfcM>SRdaz\\x94G<_\\x92M\\xf9^M\\xca\\xb3\\x83\\x8bg\\xbc\\xec\\x92D\\xd5\\x8f\\xff,9\\xa8\\x9c\\x932O\\xd7$\\xbeX\\xdd\\xd0\\x82\\x88\\xe6Y\\x06\\xedC+\\xbdQS\\xf5r\\x91\\xaf\\x8a\\xa8\\xce|Ay_WE}\\x19\\x8b,\\xaf!>\\x82\\xa2\\x15\\x94\\xb9\\xafLA\\xdaQ\\xa5'GyA\\xd1\\x0c\\xf1Wt\\x87\\xf8+\\x9aH\\xafn\\x13cm\\xbf\\x97\\xd0nVa\\xb0\\x1c\\xfd\\x08\\x17\\xecL\\x9d\\\\1\\x96bF\\xe8q\\xe6N\\x9c\\x05\\xa1\\xa1\\xe3\\x83\\x83K\\xe6T.\\x9e5G\\xb5\\xd4\\xf3a\\xe2T\\xdb\\xact\\xae<\\x1f\\x0f\\x8d\\x12Eh\\xffy\\xe1\\xb9\\x93+\\xcfC\\xc8\\xea\\xb1\\x87\\x94\\x97\\xa0\\xc1I\\xb8\\x0c\\x92\\xf2$\\\\\\nE%\\xec\\x93\\xeb`\\xb0\\x06\\xaf\\xd6\\xf4\\x16\\xc9I&\\x12\\xb5\\xb9A2\\x81\\xf7\\xe4$\\\\z*9\\xea\\xab\\x98\\xe1g\\xae\\xe0\\xd2\\x7f\\xf7a\\x9a\\xae\\xf7Bj%)\\xbf\t\\xb1O\\x94\\xe7\\xf1\\x0e+\\x93%\\xa7\\xea]RR\\xcf\\xf5\\xbc\\xa0 l\\x1f\\xb9\\x8d\\xaet\\xdd\\xc1\\xc8\\x08\\xa4\\xb1\\x081A\\x959\\xd9\\x97o\\x88\\xb8\\xaf?/R\\x87[5\\xd4\\x89]r\\x19F\\x9c\\xbbj}\\x9b\\xe0\\x04\\x0el\\xca\\n\\xf8r0\\xb0j\\xce\\xbb\\xbe\\xfc\\xffP\\xa3\\xa87\\xa7\\xbe<\\xe6AX\\x8e\\xb3\\xff\\x1a:\\x87\\xf1\\x84|\\xf2\\x83\\xa4d\\xffT\\x81$\t\\xca|A\\xbe\\x11f+\\xe0\\xd4\\x94\\x8d\\xfbf\\xe4\\x92\\x07\\x1d\\xba\\xf49>\\xa5$\\xa3,\\xc9\\x0c\\xabz\\xc7\\x14\\x08}\\xd3\\x9aH6\\xd5\\xb1K\\xbcj\\x9f\\xf7\\xed\\xef\\xd6~f\\x0b\\xda&\\xd5\\xb8\\x8b\\x92\\xfb\\\"\\x8f\\x81\\x953Tz\\\"n\\xceZ\\x1fQ\\xa7\\xac\\xb5\\xb5x\\\\]r+vW\\xbb\\xd8\\n\\x1d\\x93`1yb]\\x8bM\\x811\\xd2\\xcd_Fp\\x89\\xd1\\xf30j\\x15\\xcb\\xe8,V)M\\x96aA\\xb7\\xa7y\\xb1\\xd8\\x8aC\\x1a:u\\xb6\\xbcX\\x1c\\xb1\\x14\\xcc\\xcapE\\x12\\xe1q\\xb8\\xfdy\\xeb\\xf6\\xf6v\\x0b\\x8b\\xac\\x8a\\x14\\xaf\\xd7I\\xecT~\\xda\\x8d\\x04\\xb96U\\x06h\\x14\\n*\\x15\\xc0\\x189\\x1aI\\x894\\xf2\\xe5\\x9d\\x00Z\\x1d\\xe3\\x87\\xf5\\xe1\\xde\t\\x83&dy/\\xb0c\\xc7\\x8a\\x9c}\\xc3\\xa1\\xd2\\xc6*\\xd1\\xaa(HF\\xdf\\x0bR\\x84\\xd3e'\\xcdS\\x19A\\xc5\\xfd^\\xbfrY\\x99y\\x04~1\\xf4\\xd2k\\xd6\\xc1\\xce\\xff\\x893#\\x14\\xe1{\\xc5\\xff\\xe5%\\xfe\\xe7\\x1e\\xba\\xd8\\xaf|\\x89D\\x0f\\xfb9'a,\\xf6B4g?\\xd0\\xcb\\xa6\\xa3E\\xd2\\x88z\\xc5\\xde\\x15Wf;\\xd7\\x00Z\\xf7\\x9fS\\x1e%M\\xa5VX\\xd1P\\x08\\xcb/HJ\\\"\\x9a\\x17\\x9e\\x1b\\xf5\\x05\\x82\\xac\\xb0\\\"\\xee\\x8b\\xaaBM\\x9d\\x9fs\\x04\\x9cHz\\x94\\x86V\\x85\\x1e\\x15\\x9d7Q\\xd3d\\x8f\\xd2\\x0c\\xab\\x8e\\xa3\\x0cG\\xf7\\xfc\\xef\\xeb\\x04\\xe1\\xa35\\xc8k\\x14\\xcdf9\\xdd\\\"qB\\xf3\\xc2\\xd6\\x01A\\x9e>J\\xf3\\x7f-\\xf3\\xac\\xa2>8\\x18\\xe9\\xb3\\xacm\\x86%\\x87$\\x8dp~\\x94\\xce\\x14\\xa2\\xbe\\x9e\\x0e\\xf9Vz\\xbe\\x97\\\\R\\xdbC\\xecSh\\xccB\\xf7\\x11\\xc5Qr\\x8b\\xce\\x91\\xcd\\xca\\x80\\x89\\xc3\\xe8\\x03~M\\xa8\\xa6d\\xdc\\x8f1\\xce\\x05\\x8f\\xca\\x8a\t\\\"~b\\x19\\x9c\\x151)H\\xccg%X\\x90bF\\x18\\xc3S\\xd3\\xa9#\\xdd\\x16K[\\xbbx\\x08\\xb3\\xf4mK\\xd9\\xdd\\xd3\\xa5\\xdf\\x00<\\xcf\\xd7\\x97\\xbeZ\\x87\\xf6\\xaa7\\xde\\xe7*\\xff7\\xa8c\\xd3\\x96\\xbaC\\xb3\\xc6\\xb5\\x88#)\\xb9K\\xf34\\xcc\\xfd\\xee\\x0b\\x16\\xd1\\x98n\\x0f\\x8a0+8\\xd8\\xfe\\x8a\\xbb\\x86\\xf1Wi\\xaf#\\xc8\\xcai\\xde\\x9e*m\\xae\\x16|d\\x1aG\\xfd\\x98\\xddP\\xab6\\xac\\\\\\x83\\xb57\\xb7\\xbb\\x1e\\xd8\\xae\\xda\\xaa\\xa8\\xb3u,h\\xc3\\x9f\t\\x84%\\xe5\\x0c\\xe6\\x0e,\\x06v`{\\xbd\\xefNv\\xb6^_}\\xe7}\\x0c\\xda\\xbf\\xb6\\x93\\x80|&\\x11#p\\xb8\\x0b\\xb7]\\xd3lH\\xe9\\x87\\xb9+\\xf1\\xc0\\xae\\x10I\\xeb2\\x02\\xaag\\x12\\xee\\xdaB\\x18s\\xe3\\xb3\\xbe\\xc6\\xf1\\x0e\\x9a\\x07\\x0e\t\\xca\\xe4\\xef\\x04~\\x80]\\xaf\\xb9\\xfb\\x05\\x17\\xdbf)%\\x03\\xd7\\x93\\xad\\xb9\\xd6\\\"\\n\\x1d\\xec\\x83K\\xda!\\xe9H\\x87\\xca]\\xdd\\xd5\\x8d\\xaad\\xd5Uk\\x18bc\\x1bV\\x83\\x1c\\x10F\\xae\\\\\\xb3\\xb6\\xf0d0\\x15\\x97K\\xd9\\xf0\\x9a\\xb7\\x8f\\\\W\\x1f\\xb6\\x9a\\xbd\\x9a\\xf2\\x0bB\\xe7y\\xdc\\xab\\x9f_-\\xb7U\\xa6.\\x9f\\x84U\\xc6\\x18\\xfb-\\xc6\\xd8\\x9bU\\x07\\x80\\xc3\\x95\\xe5J\\xdat/\\x8f\\x87\\xf0\\xa8\\xb9\\xda\\xfanh\\xbc\\xdf\\xe8r\\xc3oCR\\xbc\\xe1\\x0bB=\\x974\\xd9\\xb8\\xbe\\xe3\\xe5Z\\x97f>vGd\\xd5}\\x1d\\xb9\\x95\\xc8\\xab\\x12\\xb2~[O$\\xd5)\\xeak\t\\x9e\\x0c\\xc8\\xca,\\xf8}\\xd4n(U\\x1b\\x89\\xfc\\x968\\xba\\x97\\xd0\\xab]\\xbfY)=d\\xd3\\xeav}\\xa0W\\xbe\\xd031\\x82xS\\xb0!\\x08g[\\x15v\\xb5\\\"\\xd4 F\\x99D\\xeb\\xa6\\xdcoI\\xe2\\x1fe\\x96\\xd5.\\xda\\x85\\xa1P\\xcd\\xb6r3\\xf0(\\xed\\xcb\\xfa\\x8cK+\\xee#\\x1e\\xa5!V\\x97\\x99I\\xac.@\\x1e\\xa5\\x1dQ\\xdd\\x006\\xa5\\xfbf\\xc6\\xdc\\x99;\\x1fn|\\xb8\\xee\\xbe\\xceku\\xac\\x11\\xd8\\xdd\\xaa\\xc5Qe\\xe7\\xd7\\x8c\\xaeSu\\xd0\\xe9\\x9b\\x02\\xf9\\xa0\\xd7\\xa3\\xae\\x0c2\\xd3FS\\x18\\xda\\xaf\\xb5\\x06j\\x07o\\x13:\\x97\\xaa6\\xe5\\x80\\x91\\x19+\\xd1p>'Z\\xe4\\xd0\\xab\\xf4\\xa1#W\\x1f\\x03b\\x17|\\x8ekP\\x11\\xd5\\x9f\\xaf5\\xe3S\\x1f\\x04\\xcd\\xdeU\\xe9\\x8f\\xdc;\\x83E\\xb2\\xfe|m\\x85\\xb6o\\xe7\\xb0~\\xb6\\xfbpnt\\xca\\x80|\\xe4c$%\\xb4\\xbd\\xa5\\xa1h\\xae\\x97#\\xeeC\\x1fe\\x8b\\xb3\\xbaz\\x0f\\xc7\\xc6\\xfbg\\xd9\\x87\\xfa\\x8a\\xb6\\xf7\\x94\\x92S\\x82~\\x81*\\xc4\\\\]\\x02q\\xe5\\x01W\\xd9G\\x83\\xee\\xcf\\xa05\\x1a\\xe5\\xc6\\xcc\\xa0?\\xd1\\x89\\xc6\\x9a\\x83\\xbc\\xd0\\xd8\\x08\\xe5z\\xda<\\xed\\xb7>\\x8c\\xfd\\xc1\\x13A\\x06\\xdf{\\x81r\\xc6+`N\\xab\\xf3YEl|5\\xaflJ\\xb7\\xf2d\\x0e\\\"\\xf4\\xab\\xcfH\\xf8]\\xf4\\xcc'\\xf7\\xa2\\x10\\x02\\xe9\\xf0\\xd0\\x07QZ\\xfdD\\x06\\xce\\xb2@=\\xc6A1\\x8c\\xbf\\xd32\\\\G\\xe8\\xd9\\x03\\xfb\\x08C\\xfb\t\\xf6\\xed\\xff\\xd5\\xea2\\xf4^\\xcbZuC\\xb9w\\x94w\\x8c\\x1d\\xfb\\x11TPn\\xc8\\x9fz6\\xee!'\\xb1\\x0d\\x8a\\x18\\x83\\x10F\\x95i\\x10\\x9c\\xe2x\\x0e\\xf3l\\x9a\\xccJ\\xb6<\\xf6\\x85\\xc5\\xcb,\\x06\\xb8\\x17yAM>\\xd0\\xe5\\xc3\\xfd\\x10\\xd7{\\x92\\xe7\\xef\\x04\\xf5\\x0b\\x94O\\xe4\\x05\\xfd\\xf1n\\xd8\\x9a(e\\xcd\\xee\\x00\\xba\\x02\\xd4\\xea\\x8f\\x9c\\x0f\\xa3\\xdej!t\\x1fV\\xd8?R\\x94\\xca\\x1cL\\nK\\x14}P\\xe9\\xeb}\\x90]\\xe8\\xb0\\x11\\xff\\xea5)\\xa6>\\x0f\\x0c\\xf2\\x9e\\xdd\\xd8g\\xe9\\x83\\xbc\\xee\\xb3\\xbe\\x1a\\x93\\xbc'^z\\x02{8t\\x8aU\\xb8\\x05^\\xd0\\xf7\\x0eV\\xc1\\xdb\\xdd[\\xbb>\\x96F\\xdc\\xd9[\\xd6\\x01z\\xa0\\x8a\\x0e\\xca\\x11$\\xf7F\\x04\\x86\\x9d\\xd9\\xdc\\x82\\xbe\\xa6\\x07e><\\x86\\xca\\x9ck\\x192\\xaf\\xf0~\\x17\\x1a\\x9f\\xf0LST\\xb4\\x1e\\xa93\\xbc\\xbe>&\\xa1\\xf1~\\x80]ik\\x90=J\\x8f\\xb4j\\xef\\xd5\\xb13\\x8e#\\x9b\\xban\\xf7\\xe0O\\x0e\\x95\\x1b_\\x96U\\xb2\\xc9&\\xa8P\\xb4\\xeb\\xee\\xd1\\xc2\\xa7\\xc1-\\x98\\xb4\\xfa\\xee\\xd1\\xd0\\xc1\\xe0\\x86\\x0c:\\x85U;\\x1d\\x0dh\\xc6)M\\xbd\\x10\\xa3\\xfa\\xe2\\x90\\xdeK\\x04v\\xef\\xbbw\\xa3JW\\xf3|5\\xa3\\x92\\xfcA\\x8a \\x03\\x9b\\xb4\\xcaW\\x8a\\x81\\x9c\\xb0\\x14E\\xe7\\xb89\\xb2\\x06\\x9d,\\x15\\x9c2y\\xc9\\xe2\\xd8\\xc6\\x08\\xe2\\xa4\\x1eX\\x0b\\xa6\\xcd\\xc3r\\xce\\xc5\\xac\\xf8\\xf30\\x8f\\x89q@\\xa0\\xe3y\\xc3\\xa5\\x9aXq\\x93\\x11\\xca\\x03Y\\x85JQI\\xed\\xb6Y\\xf7NMi\\xb7o^\\xb7N,\\xf3\\x9ec\\x99\\x1ee^\\x1d\\xda-\\xc2y\\xe9)+\\xab\\x16\\xc2@\\x13\\xa9c\\x7f8\\x98^'\\xb2\\xa3\\x0c\\xab\\xe6\\x0cf7\\xf4{\\x1f\\xe3.\\xbe\\xffh\\xfe\\x19\\xdb\\xf7\\x1b\\x01\\xa5\\xb0\\x80\\xc7P\\x90\\xb0\\xae\\xca\\x99\\x98\\x93\\xdc0\\x95&\\xe5\\xf0oD\\x83\\xbc\\xd0\\xd5c\\xa1\\xb8\\x07T\\x97\\xd4\\x9ah]\\xba\\xa1\\x0d\\x04\\xd7y1\\xa5N\\xa4<\\xac\\x0c\\xb8\\x02p/Z\\xd7\\xc1\\x8e}\\xd0\\xf7\\x17\\xf2i\\xcd\\x0e'\\xfa>W\\xf5\\x93k\\x1d\\xff\\x07Hj$\\xdanH|\\x8d:r\\x06\\x17<\\xdc\\xcc\\xb1V\\x1a\\xc5\\xf8\\xcf\\xce\\xb6\\x08K9\\xd9Q\\x02\\x12\\xaa\\x11\\xa2do\\xe0\\xd2\\xde\\x9f\\xff\\x81*\\xa9lRz\\x95R\\x0d\\xb3p\\xf2\\xaf\\xd155\\\\\\xa3\\xa0\\x99\\xb2\\xf4\\xf1\\xd2\\xb9\\xbd\\x1f\\x88\\xd0\\x85\\xccU(y^y\\x9d\\xf7A\\xb9T7\\xe5#\\xaa\\xe5\\xb5;\\xbd\\x97@x\\xff\\x83A\\xac\\x1a\\xaa\\xa0x\\xa7\\xd4\\\\\\x8a\\xdf\\xb5\\x7f\\xb11\\x1e7\\xe5p\\x95\\x05M\\x1f\\nl\\xcc\\x8fP\\xaa\\x0b\\x16!\\x8d\\xe6\\xee\\xf6\\xffq'\\xe1\\xd6\\xdf\\xaf\\xd8\\x9f\\x9d\\xad\\xd7\\x9b\\x1f\\xb7\\x82\\xab\\xef\\xbc\\xd1\\xb6E\\x0b\\x97\\xbb\\xa0HJ\\x19\\x90\\x80\\xb1\\xed\\x1c\\x92\\xb3V\\xd0\\xc1\\xd6)\\xcb/P$\\x8a\\x14\\x92\\xef\\xd6G\\xe7Z\\xac\\x0f\\x1f\\x9e\\xc33\\xe6\\x9ar^\\xc3\\xf6\\xc1`h\\xd47%\\xa2s\\x13gN\\xe9\\x12\\xd54)]\\x96\\x8a\\xb7\\xac\\xe3\\xaa$\\xf7\\x90U\\xb7\\xdce\\xf4\\xd4)\\x0d\\xe9\\xdd,zd\\x8a\\xc7\\xa1S\\xecF\\x19-\\x8d\\x07\\xdb\\xe6Rp/z\\xdf,M\\x96\\x03\\x02\\xcfJqj\\xe5\\xfa\\xd1\\xa0\\x0b\\x93\\xa9\\xeb\\xd8\\xc65\\x7fm\\xf7\\xc4\\x8c\\xd6\\xf61\\xde#W\\xf3>\t\\x97\\xda\\xb6\\xf9\\xaf\\xb7\\x8d#\\x8a5\\x9c\\xf8\\xddp8\\x98\\xcf\\xd4\\xd7\\x92p3\\xf3\\xa6W\\xc2\\x92\\xd0\\xd6+\\xe7\\xc7\\xb9E\\x12J\\x80\\xc7\\x8b%\\xbdC\\xfb\\x9f\\x8az\\xc6\\xaf\\x12N\\xf1\\x93\\xb4\\xa8\\x92\\x89\\x9a\\x16\\xe0a\\x18\\xcd\\xd5:M\\x86S\\x82O7\\x7f\\xc2\\xb4\\x0bi\\x9c\\xb5\\x0c\\x8b\\x92\\\\\\xe6\\x95U\\xd5\\xc5\\xf8\\xf2\\xfa\\xe2\\xf0\\xa7\\xf1I\\xc3\\x9c\\xfa||q\\xf6\\xee\\xe7\\xf1\\xd1\\xf5\\xc5\\x87\\x1f/\\xcf\\xc7\\xc6oj\\xda\\xd9\\xfb\\xf1\\xf9\\xc1\\xe5\\xf1\\xd9\\xe9\\xf5\\xc9\\xf8\\xf2\\xe0\\xfa\\xe7\\x83w\\x1fx\\x99\\xc3w\\xe3\\x83s\\xf6~\\x8c\\xf9\\xde\\x1f\\x9c\\x1f\\x9c\\\\(_\\xce\\xc7\\xff\\xbf\\x0f\\xe3\\x8b\\xcbF\\xca\\xc5\\xfb\\xb3\\xd3\\x0b^\\xfc\\xdd\\xd9\\x9f\\x1aYXoO>\\\\\\x1e\\\\\\x8e\\x8fZ\\xe9\\xedw\\xa5\\\"S\\x0fD\\xdf\\xc7'\\xef/\\x7f\\xe5\\xe9\\xd7\\xc7\\xa7\\x87\\xef>\\\\\\x1c\\x9f\\x9d\\xaa\\x19\\xf0\\x93\\x9a\\xf0\\x9f\\x17\\xcd\\x0c\\x1f\\xce\\xdf\\xa9\\xaf\\x17\\xef\\xc7\\x876\\x034\\xd8\\x83\\x1b7s\\x9f~\\xaf\\x93\\x9d\\xb9\\xf8\\xf2\\xea\\xb9\\xfe%\\x91e\\x9e\\xe9_B\\xf1\\xe5\\xf9S\\xfd\\xcbJ\\x96\\xd9i\\x15*\\xc5\\xa7g\\xcf^\\xe9\\x9f\\xd2\\xea\\xd3k\\xfdS$\\x9b\\xfa\\xdek\\xd0\\x8f\\x1c&/\\xfaT?%\\xb6z\\xc7\\xe8\\x8e\\x82,\\xd30\\\"\\xee\\xf6G\\xba=\\xf3\\xc1\\x01\\xd0\\xf1\\x96\\xcdkc\\xad/\\xd6Fsh/q\\xdd>\\x1f+3g\\x8d\\xaej\\x9e\\x1c\\xcd\\xbd\\xf5-\\xb6\\xf9\\xa7\\x1d]\\x18\\xe0\\x1c\\xe0\\x03j\\xe9?\\xb8\\xf5\\xdbok\\x9d\\xa1\\x85\\xde\\xc5\\xec\\xe9\\xc2\\xf8\\xa1]\\xe0\\x06\\xf6\\x88\\x13\\xcd\\xbc\\xb8! bO_>w\\xf4\\xc5\\xcc\\xa9q\\x95?\\x8b\\x86\\x9e8P,\\xf7?x\\xb4\\x9f\\x86\\x0b2\\x02K\\xf0\\xa8%?\\n\\xac*\\x85I\\xf9\\x97E\\xaa[\\xfd\\x00\\x0crL\\x80\\xf3\\xd6)\\x89\\xb4\\x1b\\x9b\\xfe\\x8b\\xa6\\x0f\\x87o\\x9d\\x1c1\\xb9\\xddSS\\xdcsjR\\x12\\x16?\\xeb\\xa7\\xed\\x83A\\xfb\\xf8A\\xf3q\\\"\\x14D\\xdbj\\x1c\\x03\\x96U\\x9av\\xa1\\x91a\\x1f)\\xdb\\xd3\\xfd\\xbf>\\xa8\\xfb}\\xbb\\xc1\\xb2\\x9c\\x9f\\xc8\\xdd\\x08tS\\xbd\\x87\\xcc\\x80\\xb4\\x1d\\xfb\\x1f:\\x03\\x1a\\x1f{\\xcf\\x19`\\xf0\\xab\\x10\\x96\\xdf2\\xf6\\xcb\\xc7\\x1d\\xbbT{\\xbe\\x87\\x0f\\x10eD\\x92r\\xfe\\x96\\x01\\x9d\\xfc\\xb7\\x18PI\\xe8}\\xd9[\\xdb\\x80\\x8e\\xee= \\xce\\x9ew \\\\6^\\x0bx\\xca\\xf1\\x1ad\\xc3\\xb6\\xf16\\x89\\xd9iEd\\xbe4\\xd9\\xa5e\\xaen\\xd1\\x19W\\x05Z\\xf4\\xe5\\\\|\\xda}\\xd9\\xfa\\xb4\\x96Ti\\x9b\\xcc]\\x88O/_\\xb4\\xc8\\xdcY\\xf5\\xa9Ej\\xdfI\\xc3R\\x13\\x93{c=\\x14dh\\x1e\\xd51\\x04\\xe9v\\x0ca%w\\x1a\\xf3xm`\\x1e\\xd0\\x14Q\\xfa\\x9fA;\\xc8\\xe6\\x18n\\xdb\\xfcG\\xa3\\xc8\\xaaH\\xb5\\x12c\\x03\\x07\\xd3(\\xc2\\x95\\xa8\\x1be>\\x9b\\xd8\\xa0F!<\\xd2\\xb5R\\x83\\xb8\\xabF-\\x84\\xf1\\xc9\\xbc\\xae\\xfa\\xfaF\\xab\\xf5\\xd0\\xc2\\xc7\\xf1\\x8a$\\xf3l\\xec\\xd0'\\x13O\\xc8\\xcb\\x95\\x84^\\xcb\\x8bt\\xad\\xd4\\x81\\x81\\xb3T\\x0b!\\n\\xd3\\xca\\x9cup\\xa9uYq\\xe9m\\xa9\\xe3\\xbd\\x81\\xf3\\xe5e\\xd3|f)ca\\xa0y1D\\xb9\\xb6Q\\x9e\\x18\\x99\\xf1fAS\\x8b\\xc7\\x9d\\xec\\xbdZ\\xbesi\\xfe:@\\x8a\\xd0\\x00\\x95J\\xccz\\xbd 4\\x14\\x87j\\xb3\\xceS\\x8b\\xb4\\xa2QOm\\xde\\xda({\\xde#\\x051\\xd6q]r\\x81\\x8bV\\xd7Q\\x05\\x0c\\x95\\x80\\xc5a\\xcb/e\\xaa\\x8d\\xcc\\xef\\x86\\xaa\\xb8\\xb9;>\\xba\\xa8\\x16R\\xc5J\\xdc\\xa6\\x9bH\\xab\\\\zS\\xe8\\xd3K\\xfeV\\x19:\\xad9\\xb8\\xc5\\xe7\\x01\\xe6,\\xcdGLQe\\x937J\\x96\\x8c\\xdc\\x99\\x10)\\x8a\\xce\\xea\\xf8\\x95\\x9c027g\t\\x85{R\\x83\\x1c\\xd4\\x1a\\x16\\x10\\xc3@\\xc0\\x97/\\x90\\xb8\\x18\\xb0\\n\\xc1\\xb6C\\x87\\xabD\\x0bqF\\xda\\xb1i-\\xda$\\x1d{\\xbez\\\"h\\x91\\\\\\xaa\\xa0\\x0c\\xa7\\xe4]\\x1e\\xc6\\xc6h]j4=\\xf3T\\xf2\\xa5a\\xf4t\\x9e\\x8aX\\xfb\\xe8\\xf1-\\x0f2r\\xcbx\\xf6qq\\x9fN\\x9b\\xa7\\x8f=)Y\\x93t\\x042\\xa0\\x935\\xdf\\x82\\x94e8c\\xc4GP\\x90\\xb0\\xcc;\\xcc\\xe4\\xd2$\\xc3|\\x8b\\xb0\\xf8\\xc4OQ\\xf6+`\\xc9\\xa8\\xdb[\\xbfmb\\xe4 .:\\xb3\\xcck{\\xf2l[\\x05\\x03\\x1d)\\xde6\\xf7\\xc0Uba\\x85\\xb0\\x0f\\xce*\\xe3\\\"et\\xf2\\xc1\\xb6VTo\\xad\\xd0\\xe3&\\xe0M\\xd1\\x88\\x1bz\\xec\\xd0\\x1fH#}0\\xc4\\x95\\xfb[\\xa5\\xbf\\xa5Hf;\ta0\\xecM\\xab\\x86d\\xe5\\x85\\xa8\\x7f\\x7fBus6`\\x8f\\x82t\\x83\\xde\\xbbO\\xa1\\xf2\\xff2\\xed\\x00\\x8a\\x15\\xecA\\x18L\t\\x8d\\xe6\\xf6L%f\\x12S\\xd5\\x01`\\x98\\xed\\xe0\\xc2\\xc0\\xe3\\xc8'\\xaaD\\xb2\\xb8\\xfa)\\xec\\xc3?\\xbe\\xc2\\x08R{\\x91\\xa9\\xbcT\\x14:\\xc2f\\xb5\\xa0\\x0fh, 7\\xe6mXd\\xdc\\x91\\x84\\x98\\xa2\\xc6:7\\xc2tB\\x99d\\x11\\x81\\xf5\\xb3`w'\\xd8\\x810\\x8b\\xe16IS\\xb8!P\\x90E\\xbe&1$\\x19\\xac\\x9f\\x07;\\xc1\\xce\\x1bX\\x95\\x04,r~\\x11\\xd0s\\xc3\\xf1|\\x0ep\\xb6XW\\x0c4\\x18i>\\xedRv\\x8e10\\xd9\\\"\\x8fI*/ZN\\xc2\\xa8\\xe8\\x88*5\\xc7\\x12\\xd5\\xcdVO\\xee5\\xe6\\x16C9\\xce()\\\"\\xb2\\xa4y\\x87R\\xf5B\\x94\\xe0\\x04\\x8cR\\xc42\\xcaz\\x95\\xeb8?y\\xe5i\\xc1\\xad\\x9dG\\xf0\\xfb\\xf6\\xca%x\\x1e\\xac\\x8a\\xd4\\xaa\\xfe\\xc5&\\x8fq\\x15\\x11\\x83\\x88wIFNW\\x8b\\x1bR\\xbc\\xcd\\x0b\\xb4\\xcf\\xdb\\xb7}h\\x86\\xdd0\\x84\\xc2\\x90\\xcf]\\xd5\\xcd\\x0bZ\\xd8\\\\w\\xcb\\x1b\\xb7\\x0eT\\x8f[\\xca\\xe8cH>\\xac\\x8dN3\\xe4\\x9b\\xb0$Gyd\\xe5\\x1dA\\xb8\\x00mB\\xc8\\x08b{\\xf6&x\\x8c\\xa0c\\xd3\\xb7ac\\x04\\xeb\\xae\\xec-\\xc0\\x18\\xc1\\xc2\\x98\\xfd\\xab\\x17\\xd09\\xc9\\x06\\xe8WA\\xe3\\x8e\\x95M\\x98\\xbd\\x03\\xec\\xe1\\xf6\\xad\\xfc\\x1a\\xd6\\xae*\\x9eL\\xc1Mz\t\\x0c\\xa8$\\x02\\x0e\\xba\\xf3\\xcf\\xcc$\\x06\\x082\\xa3y\\xfb\\x9f\\xe1\\x1do\\xa6(\\xd6t\\x0d\\x11T\\xe5\\xbc\\x81\\xda\\x9a\\xeac%K\\x08?\\xcf\\xd9\\xa4LWi*\\xb6\\xc8\\xcc\\xbd\\xf3\\x95\\x14i\\x15\\xc0\\xd2\\x96\\xdc\\xc8\\xb5\\x91\\xbd~\t\\xfe\\x9a'\\x99\\xeb\\x04\\x8eZ\\x04)\\x15FU\\xcb\\xd8\\x93$\\xa0\\xdcE\\x9b\\x9c7\\x1f\\xb5s\\x84\\x8b iu\\xccr\\x9a\\xef\\x93\\x89\\x0f\\x8e kz\\xa3?\\xcb\\xa7\\x11\\xcf\\xaa#\\x10\\xa8\\xfa\\x08\\xb9!\tDc\\xbd\\x85\\x86X\\x01\\xda\\xa1\\x8e=\t#\\x13/qV\\xc6E\\xf1#j\\x99\\xe4\\xdf`9XhWfvS\\xaaVr\\xcb\\xfc`r\\xa5\\x1dGo\\x85>\\xda\\xa2&\\xc6\\xd8kZ\\xbf\\x96\\x15Y\\xcdh\\xc7\\nh\\x81X\\x03\\xdfQ5b\\xa8\\x0f!\\x0f\\x80\\xe2C\\xec\\xc3\\xdc\\x87\\xb5\\x0f\\x0b\\x1f*k\\xdf[\\x1f\\xc6V\\x85\\xa1\\xba\\xed\\xdbb\\xd0\\x86\\xc1p\\x0bo\\xdexP\\xde&\\x9c\\xca\\x0f\\x96\\x05F\\xfc\\xe2\\xc1\\xd0\\xbb6Z\\x14\\x96\\x04vF\\xddk;\\xe5\\xe7\\xd7\\xdf\\x82\\xf2\\xae\\xa4d1d\\xe3\\x12\\x19\\x8c\\xf1y7\\xdc\\xb0\\xe7\\xa6 a;\\x92\\x9a\\xfa\\xd8\\xc1\\x05lH\\xc2\\x89\\xc9\\x8d\\x00\\x1e\\xe9\\x05`\\x04q\\x9e\\xfd\\x9e\\xc2<\\\\\\x13\\x08\\x81\\x0f\\x06h.\\x0c`\\x08\\xe4\\x99\\x0f\\xe1M^\\xd0$\\x9b\\x05\\xdcaQxS\\xac\\x96h\\xe2\\xc1\\xda\\xb0\\x05\\x07\\x069\\x93\\xcf\\xfbg2\\xd3yQ\\xc1\\xc6\\x92\\xa2\\xa8)d\\xc1\\xb1N3\\x1fi\\xe2\\xbc\\xa2\\xf2\\xf8P8\\xef\\x97#E\\xaaS\\x9e\\xa1\\xa4<C\\x1f)L\\x9dAV\\x1cCU=\\xb0\\x86\\xb8U\\x9fjI_\\xfdW-):\\x9f\\x1b\\xc1\\xc5m8\\x9b\\x91b\\xeb0MHF!\\xc68\\xc2\\x14\\x96E\\xbeNb\\xb6\\xb2\\xbf5g\\xeb7!\\x8b\\xf6!\\xce\\x93l\\xc62\\xcf\\x1f\\xbc\\xc2\\xaf\\xbaWXt|\\xfe\\x08\\x84\\x1cR\\xb2\\xd3\\x9a`\\xf3\\x91PU\\x8d\\nY\\x1a\\xa3\\xea\\x16&r\\x1a\\x1d\\xac,t\\xb2\\x19\\xa5\\xc1\\x0b\\x13y\\x8c2\\xdf\\x85\\x89\\x0c\\xc6\\xe3\\x93#\\x94\\xdd]\\xbf\\x86\\x83\\xdd\\xe7>\\xfc\\xade\\xee9\\x04\\x94\\xd6\\\"R\\xe8`\\xacK\\x0dw\\xf3\\xb6\\x87U\\x1eb\\xe8\\xd4\\x14\\x91\\xf0\\x12\\x91\\xf0\\xa2\\x1fh\\xe1\\x1bp\\xb0\\xe9\\xf9\\x16\\xbclz\\x86\\xe0j\\xd3S)\\x14\\x8au{\\xeaw\\x99\\x1b\\x9a\\x1el\\xf9\\xe9\\x83[\\x0e9\\x91K2\\xea\\x0b\\xb6\\xbc \\xe5*\\xa5'\\xe1\\xd2\\x17\\xbc5\\x83\\xf2_\\x12:?\\xe4\\x0e=%\\xcaV\\xa0\\xed\\xa5\\x0f\\x89\\x9b\\xe2\\xf9z\\xbfi\\x93O\\xc5tL9\\x1f6\\x8c\\x96\\xd2\\x1f\\x13[r\\xf7\\xb0\\xaat\\x96\\xe5\\xe6a\\xd5\\x98\\xd8\\x19\\x83\\xa2\\xd2\\x90\\xc7\\xc8\\xea\\xdc\\xde\\xbb\\xaa>bQ\\x7f\\x10\\xbc^>\\x18\\xbc\\\"\\x05\\xbc\\x96\\x88x9\\x9f\\xc4\\x8f\\xba\\x88sWP\\x04a\\x9a\\xe2\tR\\xba\\x1e\\xf7f\\x86\\x8c\\xcc\\x10n\\xc9\\xf6\\x0c\\xe4\\xa2lO\\x9b\\xbbZ\\\"w\\xb5\\xd4\\xcc\\x16\\\\.\\xa1\\xb8?\\xfbdz*l`b\\xa0\\xe6\\xee\\xfa\\x7f\\x1b\\x03ez\\x1e\\xc2T\\x99\\x9e{3Z\\xa6\\xa7\\x9f\\xf92=\\xa8Pm`\\xba\\x16\\xd2\\xbd\\xf6\\xac>WW\\x885\\xe3\\xf6\\x87\\xb4\\xfa\\xd0\\xa2\\x83\\x1e:\\xbd\\x15f\\xef\\x94\\x10u=\\x96\\xa3`\\x04\\xf6\\x08\\xf0\\xb6\\xe7A\\x88h\\xf7\\xfb\\xfba\\\",\\xe4\\x90,v\\xeeW\\x0e\\xd4\\xcdX\\xd2|i\\xf1\\x91cz\\xba\\xa9g\\xf9|\\xc5\\xe8\\xf1&G\\xb6\\xc6\\xdc6\\xc9\\xa4\\xfa\\xb4\\xae\\xf0z|)\\xa8O5Xs\\xd0\\xcf\\xde:\\xba\\x07\\xfd\\x95Q\\xc3\\xab\\x8an\\x13\\xb8d\\x00bW \\xd6\\x9d\\x9a\\x9c\\x0d\\xbb\\x93\\xab\\xcac\\xcfR\\x9a\\xd0\\x074\\xff\\xcf\\x8b!D\\x84\\x15\\x9c\\xa7\\x8a\\xc8X\\xd4\\xd6=\\xc0\\xae\\xf5\\xe1\\x90\\xdb\\xc3~\\x8e\\x95\\x83\\x92{-\\xafxz\\x1f\\xaf\\x8dx0\\x10I&>\\xed\\x06\\x07\\xe4\\xf1\\xfaz\\xf4\\xba\\xbbG5c\\xf1\\x1aO\\x87\\x1d\\xec!^V\\xba\\xbb\\xbb\\x9e\\xafK\\xfe\\x02j\\xbb{\\x80\\x8aL\\xed\\xa1Sc\\xb3\\xa1\\x83\\xcb\\xc6>\\xae\t\\xd3\\xdef\\x9e\\xd9\\x9b\\x19\\x8a\\x11\\x86\\xec\\xfe6\\xd0\\xab\\xbb\\xda\\x87\\x89\\xb1\\xd4\\x841j\\xbb\\xaf\\xafZ\\x1f\\xaf\\xda\\x0e2\\xe0\\xd9\\xf7\\x0d\\x9d{\\xab\\xb5\\xc77^\\xec\\xffM\\xc6\\xc1\\xf4+\\xa8\\x03\\x0cC\\xfaV\\xf7LX\\xbd}m\\xdb\\x02\\xdc\\xd3\\x11x\\x8fJ\\xdcy{\\xff~\\x8b\\x8e\\x9fT\\xd8l\\xaf\\x99m\\x80\\xfe\\x10\\xdb\\x1c+o\\xfdO\\x1a\\xdd\\xc4\\xe2\\xc0F\\x0cO\\xc5\\x83\\xf7\\x1bi\\xcb0\\xe9[\\xd6\\xee\\xf0A\\xa3\\xab\\xb4\\xa5\\xcdC\\xe4.\\xc1\\xef\\xbd\\x84]\\xf6X\\xdf\\xae'\\x7f\\xf1\\xcf\\x18\\xe9#\\x98\\x13\\xf0\\xb058\\xea\\x9f\\x85\\xe9\\xc2\\xf0iS\\xb7v\\xd3\\xbc\\xed\\xc1j\\xae\\x03&\\xa5_=\\xd7\\xfc\\xb9`'\\xb6\\xc9\\xcd\\x81e\\xc9>uAK\\xc3\\xb8\\xef\\xbf\\xe7h\\xffv\\xaf\\xd1\\x1e\\xf4\\x8c\\xb6e\\xe0\\xf8\\xbfa\\xd0g]\\x83n\\x18y\\xf6\\x1e\\x9c\\x1d\\xe34\\x8c\\x857\\xff\\xbe\\xab\\xf9\\x96\\xd9io\\x17\\x86*\\xe5\\xd9Tn\\x8aa*{\\xf9P\\x95\\xbd\\x95&\\xeb6\\xe7\\x12\\xf1\\x06\\xc3\\xf2YOu)\\x12\\x96\\x0c<\\x18\\xca3\\xe7\\xe1r$qW`\\xcc1\\xc5\\x1c\\x95\\x8e\\xa8\\x05m\\xc2\\x1e\\xacl\\x9c\\xc1\\xfd\\xb4S\\xac\\x9a)\\xe6\\xec3\\xbc0\\xe0\\xacD\\x9b|M\\xa6\\xe0\\xce\\xe0\\xc9\\x13\\x98)\\xa1\\xc7\\xf4w)y\\xd2\\x93\\x85{\\xd2~\\xf1\\x93\\xa4iY\\x0d\\x1bBK\\x86{\\xc7\\xaa\\xcf\\x89\\xf6\\x1e3\\x98\\xa5w\\xc6\\x0b\\xcf;\\x1d\\x07\\xb9\\x93\\xd4\\x87\\xe8\\x8am\\x84\\x8c\\xad6\\xd2X^\\x17\\x9bJ\\xd4)\\xd9k\\xbe~\\xf9b\\x8d\\x1f\\x00\\xca\\xd6P\\xcbLx\\xc3\\x1d\\x1e\\x0c\\xdd\\x0dt\\x0e\\x8e\\xa1\\xfcv\\x84\\x8b\\xa52\\xf9;w\\xda\\xe1\\x9a\\xea\\x82=p\\x0c\\xbe\\x97\\xc0\\xcc#\\xa0H\\x07\\x83\\xc8}\\xa6\\x1f\\xaa\\xc8Lq-\\xfa\\x91\\xcaH\\x01\\xcd/\\xd0\\x12\\x96\\xb1\\xcf\\x02<*\\x00?\\x8eQ\\xc8\\xa7\\xbe\\xefi\\xdfG\\xbcP\\xca\\xfeD\\xa2\\xf3\\xcd\\xfcY\\x90/\\x8fcw\\xc6\\xefc<\\xd4)\\xe5d\\x96k]\\x136\\xa97\\xb0\\x07)l\\x823r`\\x13\\\"\\xf3\\\\2v\\xb6\\xe0\\xb1>\\xca\\xa0D\\x1c@\\xe2\\x0bLro\\x90ko%w\\xe8_]\\x8bjX\\xbe\\x9f\\xc3\\\"\toR\\xd2\\xa5\\n\\x05\\x18,\\x9d\\xe5\\x1eU=\\xe9\\x96\\x08\\xb0\\xa5,\\x97aDFpc\\xcd\\xf8\\xb5_\\xbap\\xfb\\x08=\\xedo\\xbf{\\xce\\xabv+\\xf7>\\x15t]{\\x12\\x91\\xec\\xc35\\x8c\\xe0\\xd6G5^=R\\x1d\\x0e\\xa2\\x9d\\xec\\\"\\xa0\\xf0\\\"\\xad\\xa8u\\xa2L+\\x9d\\x17B\\x87!\\xdfm\\x7f\\xe7\\xd8\\x17y\\xac\\xb6\\xfac\\x1es\\x9c\\xc4\\x8b\\x9bK\\xb1\\xc1\\xdd\\x05I\\xf9\\x9f\\x17g\\xa7\\\\0\\xed\\xb9cT\\x8cW\\xab\\x81=`\\x19\\xb86\\xbc;\\xf6F0f\\xfba\\x8csi\\xc8<\\x16\\x93\\x0c\\xa3\\xf6\\xa7\\xf6\\x86n\\xa5\\xb0\\xa1|\\x163\\xaf\\xb8\\x01\\xf9\\x07z\\xe6m\\x8f\\xe33\\xee\\xc4\\x9bU\\x92J2\\xcc\\xfd\\xec\\xf9P(\\xc4\\xa8\\xab\\x1c\\x90\\xf5A\\x08\\x9f\\x0d\\xb5\\x11\\xc3\\x11\\xa6R\\x19\\xbd\\xfeq\\xd7\\x0d!\\xe0\\x84\\xea*:\\xea\\x93\\x9bG\\x99u\\xab0\\x16m\\xc2\\xd32\\xc0\\xbc\\xe1\\x9bD>_U\\xf8k\\x0e\\xd3p\\x97\\xcc\\xc6u\\x01{p\\x14R\\x12d\\xf9mG\\xa8\\x9bLRg.\\xd1\\xd5\\x05\\xad\\xd3F\\x83x\\xc5Qj\\xa3\\x0d\\xd8\\x82\\x8bj\\x0dyO-c4\\xa8O}\\xf5\\x84\\xa0\\xad\\xbfyuJ{\\x1a\\xea8c\\xb9\\xf6F\\xd7}\\x0b)\\n.^\\x98\\xab~m\\xccg\\x9ei@\\x8d$\\x0b\\xafI\\xdan{\\xf4aK\\xf5\\x04\\x83\\xa3\\xaf\\x1d\\xab\\xa3\\xaf\\x9d\\xa6\\xa3\\xaf\\x9d+T\\xe37P\\xef\\x15%\\xda\\xfe\\x96uR\\xa0\\x89\\xd8\\x07\\xb9b\\x9e\\xc3}\\xfeP\\x0c1\\xc9\\xcb9Wf\\x1fi\\xdd\\xa4\\x9bT\\xd2$\\xc14\\xebR\\x9a\\x0f+}\\xd5\\x01\\xf4;\\xe9\\xe7\\x07\\xca\\xea\\xf6\\xdf\\x16\\xa5\\xce\\xed>\\x0c\\xb9\\xfa\\x80\\xe6\\x1d\\x8b_K\\xd8\\xa9\\xfc\\xb0\\x1d_W8x\\xednl\\x8a\\xf7\\xc9\\xed\\x03\\xcb\\xce\\x08D\\xa6\\xa3\\xca\\x9c\\x9d\\xd1J\\xdb\\x9f\\x17\\xe9v\\x12P\\x86\\xac\\xa6\\x96N\\xccq\\x00\\x15\\x81\\xd8\\xe8\\xbe\\x0f\\xb1\\xfd\\xec\\x16\\x80\\xb0\\xd2\\xb8C\\xd4},\\x9a\\xb85\\xb1md\\xa1\\xfcm\\xd1\\xbf\\xe7\\x8a\\xdf\\x96\\xa5\\x96\\xd8\\xa2\\xdfb\\xd8V^\\x92\\xc4V\\xednS,\\xdc\\xa9\\xa5\\xab\\xc2\\xb4\\xd9b\\x9fa\\x0c\\x97\\xbb4\\xa0\\x1c+\\xce\\xc1_=\\xce\\xa8H@>/\\xf3\\x02\\xfd>7\\xe7\\xbb\\xb2\\xf1\\xcd\\xdc\\x97\\xcf\\x9ej\\x90P\\xdb\\x087\\xbdO\\x19\\x9b\\xb4\\xb57@,\\x89\\x91]\\\\n\\x00\\x12f\\x11\\xbaUD\\nKA\\x80\\xe8\\x11\\xb4\\x80$\\x03\\xe2\\x01\\xde\\xea\\x03\\x9b,T\\xb4p\\xd1\\x1f\\xeb\\x08\\x92,\\xca\\x8b\\x82D\\x14\\x92l\\x9ds\\x07x\\x1b\\x16W\\x8e\\xe4~3hv\\xe7U\\xd9(\\xb9\\xaf\\x9f+\\xcdT\\xc3\\x0f\\xa6CD\\\"\\x19\\xb9\\x1d\\x805Y\\x8f\\xda{\\x8d\\xd15\\xc1\\xb2\\xc8\\x17\t\\x8a4YUdX\\x9096\\xe9\\xca\\xfcRm\\xbe\\xb3\\xf6,;?\\x861\\xbc\\x17mEyV\\xd2b\\xc50\\xb3M\\x97\\x11O \\x1f\\x0f\\x1b\\x83\\xbc\\xd6\\xf3y\\xe7\\xc5\\x05*\\xcb\\x84\\xbe\\xe5D\\\"\\xa3~1M\\x0b.\\xf3U\\xb5;\\x1c\\xb4t\\xf5\\\"}\\xbfcZ\\xa4\\x01bB\\xd4\\xb0\\xe3GW\\x921\\xd8D~\\x9aLrv\\x16\\xe3\\xbf=\\xa0\\xec\\xdf\\x08\\nVG\\xee\\xe3\\xeb\\xbf\\x04\\xf2^>\\xdf\\xb5\\x8c\\xaax\\x8c\\xea_\\xbd\\xb0\\xd4\\xce@M\\xd7g\\\"\\x9f\\x97i\\x12%t\\x04\\x13\\xd6\\xb1\\xe7\\x8c\\xe0u_>\\xff^\\xfc\\x7f\\xe1\\xa9\\xdeP\\x1f\\xde\\xbb\\x0eJR\\x99\\x97\\x17\\xbb\\x167\\x93\\xec\\x9b\\x8e\\xea@\\xd0=\\x9a\\xc7\\xca`s\\xeb\\xea\\xbb\\x91\\xb7\\xef~\\xdc\\xfe\\xb8\\xed\\xed\\xbb\\x93\\x8f\\x17\\x1fK\\x0c\\xc9\\xd9.\\x1eb\\xf1\\xc9\\xc1\\xd6\\xff\\x1f+\\xe0\\xffw\\xb6^on\\x05W\\xdf\\x8dX\\x05\\xdb\\xedB\\x8c|\\xb1\\\\\\xad:\\xff\\x86\\x9e#\\xc3r\\xae\\x87\\xf3\\xae\\xb3\\xec\\xb3,\\x7f[\\x91\\xe2\\xce\\x9eg[\\xfatDG\\xca\\xd6l\\x7fd\\xd9\\xc2\\x15\\x92x\\xbb\\xb6\\\\\\xa7\\xe1)\\xeb\\x13\\x8fH.\\xaf\\x86w;\\nl\\x8f\\xdc\\x8f\\xf1\\xa6\\xf7\\xef\\xdb\\x18\\xc8\\xbch\\x14\\xebo\\x04{\\xac5\\xd4*c\\xa8\\xa6}\\xce\\xc9\\x87M\\xe7\\x08v\\xcd-\\xe3D\\x8e`\\xb7\\xf5Q\\xf5#\t\\xaa\\x9b\\x8d\\xd4\\x8e\\xaf3\\xaepo\\xb3\\x94C\\x015\\xfa\\x83s+\\xc3m\\x1a\\xa4\\xe2\\xd4\\xe2\\xc2@\\x8bp\\xd5\\xb9I\\xf3\\x9b\\x91#d\\x9e\\xcb\\\"\\xa7y\\x94\\xa7\\x1e\\x87{v\\x96\\xb8\\xab\\x8c\\x94Q\\xb8\\x94\\xbc\\x13\\x9bF\\xcf7WH\\xd2\\x92\\xe8\\x8e\\xea\\xf6t\\xf7\\xd8\\xf2A<\\x981\\x1cX\\xb7E\\xb0b\\x1fJO\\xeaz\\x14\\x93\\xcc \\x91\\xac\\x1bR-\\x99\\xad\\xda\\xd6uS\\x84\\xa1\\xdb$\\x03\\x94\\x90\\xba\\xacr6_\\x93LG\\xaf\\xf2Ql\\x14\\x8a\\xa0L\\xc3rNP\\xfc\\xec\\xd6o\\x8c\\xb0\\xa5\\x9cQ\\x9f\\x17dj\\x8a\\xfa\\xd3J\\x91\\xbc\\xe9\\xef\\x9a\\xd9\\xccp\\x11u{;\\xad\\x02\\xfaZ\\x89g\\xf3\\xa4\\xc8\\xb5\\x1e\\x01\\xe5\\x0e\\x9f\\xd9\\xbf\\x80\\xe6\\xef\\xf2[R\\x1c\\x86%A)\\x8fc\\xb1v\\x17\\xa3\\x1f\\xc1\\xc6\\x06\\x9d<\\xb5\\xec\\xbe\\x82\\x94\\x94U\\xff\\xac\\xbd\\xd1\\xf4+V\\xf3\\xd0\\xa7\\xb6C\\x14*J\\x8f\\x1d\\xf1*\\xb17\\xad\\xbdPW0E\\xcd\\x82\\x176\\x83\\xdc\\xec\\xa9\\x94\\x1a\\xf7sn\\xc1\\xb0\\x12\\xc1\\x91-\\xdc\\xcc\\x02j\\x97\\xdd\\xe6\\x1c3\\x96c\\x9eX\\xb8\\x8a;\\xd8\\x83\\x9dv\\x7f\\x10L+\\x88f\\x84\\xd3\\x02\\xad\\xf5\\xe5f\\xaaR\\xb8=\\x8e\\x8f\\xcb\\xcf\\x1d@s\\\"B\t\\xfe\\xb3Q\\xf50\\xabJ\\xe4\\\\\\xcc\\xe7\\xf1\\x82)RH\\xec\\x9c\\xdap\\xd9q\\x13\\xb9\\x84{.\\xf6\\xbc\\n\\x0f\\xe0\\x85H(A\\xdd\\x87Y\\x03\\xea\\xe5\\xef/_ \\xe1\\x1eu\\x95\\x8cU\\x15\\xc8\\xf8\\xc9\\x17DL\\xea\\x9b\\xe3\\xf8\\\\l\\xc1h7\\xea7ku\\xd7\\x93\\xa7l\\x83N\\xb6\\xdd\\xe0;o\\xbbq\\xf4xo\\xe0\\x0e~\\x80\\xb5\\x10s\\xbc\\x81\\xbb\\xcdM\\x0f\\x91\\xb5\\xcbx\\xd8\\xf5\\xe4\\xee\\xca\\x9b\\xec\\\\\\xf9\\xdc\\x12{\\xb2{\\xe5C\\xc9f\\xa5\\x84}\\x98M\\xe6\\xb8\\xef\\x19|\\xb7]j\\xb2\\x1c\\xff\\x8f\\x1b\\xa3,@\\xfaX.=~\\xc9\\xe1dh\\xfe\\xa2f_\\xb2>\\xee\\x83++\\x15\\xa0\\xb3#tT\\x95\\xa4\\x1861\\xb7\\x87A\\x87\\xb5\\xfczf,\\xcfs\\xc6(\\xfc\\x15\\xbb\\x9c\\xf7C\\x14\\x8eq\\\\z1\\xdek\\xcf\\xf3\\xe5@\\xf1\\x9f\\\\\\xa5\\xe5\\xe4\\xd9\\x15\\xae\\x96Hd+\\xb0\\x9c<\\xbfR\\xebe\\xff\\x9a\\xa8\\xc0\\xb0}8`\\xcd\\x02<\\xe9\\x90\\x14\\x12\\xbf=\\x84+\\x15 @\\xf1c?\\xab\\x8e\\x91 \\x9a\\x87\\xc5\\x01uw\\xc4\\xdc\\xea\\xdfy\\xef8GQ\\x9f=\\xa2\\xd5*\\xd3\\x00?\\x11\\xa0\\x92\\xdd\\x18\\xe9\\x0c9\\x14g\\xdb\\xf1\\x82r\\x99&\\xd4\\xe5?\\xe5\\x0cn\\xedz\\xd2a5Q2x\\xbep\\\"\\xc1A\\x8e\\x1b\\xbce\\x93\\x02\\xb6\\x18\\xfd\\xc1\\xb7\\xd2.7s\\xdby\\x03\\xc5\\xd6\\xd6\\x1b\\x0f#{\\xe0M\\xd9\\xa4\\xb8B\\xcf\\x19\\xac\\xba\\x08#\\x13\\xec\\\"~\\x0d\\x9a\\x19\\xdcf\\x0e\\x1fB\\x06\\xd6#\\xee\\xb7\\xc3\\xdd\\xa9\\x03Z\\xb8\t\\xf7j\\xe0C\\xab\\xc4\\xd6V\\xb7\\x94\\x19\\xd7&\\x0bVY9O\\xa6\\xd4u\\x1c\\xcf\\xc7~\\xb2\\x89\\xceq\\xa9\\x82\\xea\\xed\\xcb\\x17\\xc8\\xb8\\x0e\\x1cf\\xcb\\x84\\xce\\xfc\\xb6)\\xa2\\x8a\\xb2*\\xbe\\xbabl\\xde\\xd8\\xb7\\xbc\\xa0*f\\xe0\\xfa\\xa93\\x19a\\x97\\xff\\xe0\\x85yf~{\\xc8\\xdeV%)\\xc4b\\xb36\\xca\\xf26/b\\xfc\\xcc\\xbe2B\\x13\\xa7d\\x89\\xdf\\xd9\\xab\\\\\\xb5Q\\xab\\xfcr\\xb2S\\x81}\\xa3.\\x86#\\x04\\x02d_\\xf2\\\"\\x99%\\x19oP\\xc1\\x86\\xa2\\xbb\\x88l\\x93\\x94\\x8c*\\x98\\x95y\\xf6\\xd5\\x97Mp\\xb6\\xb7\\x1d\\xd8\\x94\\xc5F\\xe00|\\x8dM3b\\x01\\xab\\xaf/3\\xb53Q}\\x9b\\xf2J\\x85)B\\x1b\\xc4KBG\\xbd\\xac\\xa7|\\xf0\\xe0\\x13'\\x94\\x19R*\\xeb\\xaf\\xae\\x0bh\\xae2\\xca9\\x86n\\xa5\\xd1\\xdeX\\x17\\xd2\\xdd\\x84\\x8b\\xd4\\xaa<\\xa8x\\xa0\\x85d\\x82\\x17\\xc9=\\xe6_C4{9\\xd7\\xd0c\\xee*Zc0K}H\\x14p\\xdd\\x17~1\\x12\t\\xb2I\\x05\\xb2\\xd5\\x95/\\x0f(o\\xc8Q\\x8d\\xc3\\xe92\\xd7\\x84\\xa1#\\xa98\\x9a\\xa1\\xa3I\\xf8\\x96\\xe2\\x13\\xbd\\xb9'\\xba\\xcbS\\xd9$\\xcb\\x1e?\\xc64#O7\\xb4c\\xdb\\xa3\\x8f\\xf1\\xe6\\xbfos\\x1a\\x9a\\xb2Yv\\x85\\xffxe\\x0b'\\x12!\\xd0`\\x99/\\xdd\\xaa\\xc3bSS\\x81\\x96F\\x8e\\xa7\\xcc\\xbf\\xfc\\xa8\\x14\\x7f\\x9c\\xc9\\x97 \\xd17F\\x95\\x08\\xa2\\xcd\\xf3\\x94\\xf5\\xa9\\xa6\\xa56z\\xa2N\\x0f\\xeb\\x95\\xa4\\x8d\\xfa\\x94\\xbcQ\\x0c\\xd0o\\xf4=\\xc8\\xd6\\x13\\x0dW\\xd9\\xc4V\\xad\\x0b'3\\xfbx\\xe0\\x8f\\xc0\\xf97\\xcb\\xb5\\xb6\\xfaHhP(\\x82\\x0da\\x16\\x1e\\xb2M\\x05&\\xe5V\\xf5\\xf9*X\\xc2\\xc7@\\x15R\\x8c=\\x08~\\x8d\\x99\\xccF\\x1f\\x15\\x05Rr\\x02\\xa1\\x84\\x1f`U\\x91\\xaf%;\\xe7\\xed\\xf3\\xcd\\xca10ZM\\xca\\x0e\\x0d\\x9dT\\xd2q\\xc9$\\x9d\\xec^\\xb1\\x1e\\x8a_\\x1a5w\\x8fnK\\xa2\\xa1>\\x11\\x93\\xc6\\x89\\x98\\x18O\\xc4D=\\x11\\x13\\xc3\\x89\\x98\\xe8'b\\\"O\\xc4\\xa4\\xa1\\xde\\xd3\\x0e\\xeei\\xba\\x9f\\x14\\x05F=\\xb2o@\\xd7vMNI\\xf1\\xa5\\x8f\\x04\\x89\\xf0\\x8c\\x84\\xf5%\\xd3\\xbb\\x0e\\xcd\\x1b\\xca\\xe5\\xd1v>\\x0f@\\xc6\\xc9\\x95\\xe3\\xb7\\xd0e\\xd8%1s\\x85\\xdc\\x04\\x85<\\x1c\\xb7\\x18\\xa9\\x88B\\x07\\x81\\xb8;\\xfa\\xc4\\xe3\\xb4n\\\"\\x1d)\\xd0\\xcb>\\x9f\\xf2\\x91\\x1d\\xf9U\\x97\\xfc\\x15\\x9d\\xc4\t\\xcc\\xcd=%\\x8d\\x11\\x7f\\x15\\xb9T}\\xe7\\xc7H\\xfd\\x05I\\x7f\\x96\\xfeGG\\xfe\\xcc\\xf8J\\xf3\\\\\\x92<D\\x1c\\xafHo*nU\\xb0\\x13\\xfb@\\\\\\xf1\\x9b\\x07\\x9e\\x16?\\xeb\\x86\\xf7%gP\\xe3\\x8c}L\\x15\\xf8\\x02\\xa9U\\x86\\xea\\xd4\\xc1\\xb0w3P5R\\xbe\\xfa0\\x0d\\xc8gZ\\x84\\x11}_\\xe3\\xf0\\x88%Wb\\xb5=H\\xd9\\xfb\\xdf\\xd8v\\xce\\xfd\\xe6\\x1d@U\\x1b*,\\xa4)^\\xee\\xba\\xcfv\\xbdo\\x90T\\xd7\\xe2\\xe8]]\\x1a\\x8d\\xda&\\x99\\xfb\\xca\\x1c\\x10*A\\xd1\\xa1\\xc9\\xb3o\\xd8R#@E\\xc56z\\xa8p\\x17\\x81$\\xb3\\xbb\\xde\\xa8dR\\x13\\xd2\\x11O\\x98\\xcb\\\"$km\\x12\\\\A\\xe5w\\xe4\\x0f\\xb0\\xb5\\xcb\\xb6e\\xe1:\\xaf_8>\\x10\\xcf\\x87\\x8d4X\\xa6\\xabY\\x92\\x95\\x93\\xec\\xaa\\x0biR\\xb9\\x86\\xe35\\xc9h)\\xeby)\\xeaQ\\xab\\xe9>5\\xe4)G\\x03\\xb2\\x167\\xab\\x1d\\x1e\\xad\\x14D\\x9fd\\x10z\\xb0r\\xc3Iy\\x85\\xeb\\\\z\\xb2\\x17\\xaf\\x1c\\x94;\\x19<_\\x82\\x11\\x17\\xab\\xd7\\xb4\\xed\\x95\\\\\\xd9h\\xfe\\x94w\\xf94\\\\\\x90\\xa3\\xa4\\\\\\x864\\x9a\\x0b\\xedd\\xb6\\x19\\xcen\\xb3\\xcaP\\x99{\\xc9b]{\\xed\\xa0*BGY!8m\\xceA\\xad\\x8f\\xb1\\x9c\\x87%\\x89\\xcf\\xc9,))\\xd7q`uhS\\xc6A\\xcd\\xb0|\\xd5\\xfc%l\\xfe\\xacR]\\xaeS\\xab\\x0d\\\"\\xf1<(\\xdd|\\x92\\\\\\x89\\xe9\\xe8\\xd9\\xe9P\\xa3?=\\xae\\xed\\xefLy6HPh\\xc3B\\xfcR\\xba\\xed\\x0f\\xa2\\x07>c\\xd3;\\x17\\xaf\\xb4/\\x9e^'\\xbfB/\\x19\\xf5\\xc1\\x17kwg\\xa7\\x02\\xe7\\x8e\\xccH\\x06\\xb7s\\x1c\\x91%\\xc9b\\x92EI\\x95M\\x01\\xf1Iv\\x15\\xc4J\\x0ee\\x10\\xf2\\x97\\xa4K\\x9a\\xfd\\x16\\xfb\\xaam\\x95e\\x83\\xa7\\xb6\\xda\\x91e,\\xfd\\x19\\xd5!\\xb5s/\\xf3\\xb2LnR\\xd2\\x82M\\xe1\\x01\\xa0\t\\xa1\\x19;\\x9e\\x10y\\xbc\\xc7\\x11a\\x8c\\xc9>\\\"#\\xafVf\\x97\\x9d\\x81u0\\xba\\x8a\\x83\\xe7\\x92&~0\\xb0\\x95\\x0bu\\xd6\\xbf\\xa7\\x1b\\xe5\\x8fw\\\\)e\\xc0M?\\n\\xa5,\\xb2f.\\x0e\\xc3k\\x11\\xeb\\x0e#m4\\xd1G\\xa7\\xe6\\xe2N\\xc5\\x8e!\\x133\\xeeI\\x10\\xadH\\xb9\\x93\\x8b\\xafr.\\x9f\\n\\x9c\\xc4\\xf3\\xe0\\xad8\\x17\\x80\\x0dD\\x9fH\\xa1\\xf6L\\xf4\\x8c\\x88\t\\xe6\\xc0\\xf66/p\\xd2\\x87\\xce3\t\\xe2\\x06T\\xb7\\xc7\\x8flUk\\x13V\\x17\\x16\\xf6\\x1d\\xdc.\\x84\\xb2*\\xb3[g]\\x1b\\xc3\\x86\\x8e\\xbbNqn83\\x08\\x8f\\xcb\\xa7\\x02)\\xd4\\xac1`^\\xf9\\xe0\\xc9\\xaeC@\\xd1\tV\\xa0\\x80\\x96}\\x96\\xb2Iq\\xd5\\x01uP\\x1f:b\\xc2\\xdbQ\\x85\\xe4\\xd3u\\xfe\\xcaG\\x92\\xcd\\xab4\\xed\\x82\\xaa\\xeb\\x82\\x94\\xa4\\xb1}Gv5Nh\\x11[\\xb9\\xb8\\xe4A\\x8fg\\xad\\x8d\\xc3\\xe5\\xe1\\xe2\\xb2\\x94\\x91]\\xed\\xe1Wd\\x8e\\xe4'\\x8c\\x97O\\x12\\x88\\xedg~\\x1f\\x12\\xa1\\x1e\\x0f\\x9e\\xdb\\xde\\xd7\\xa2{\\xd4\\x88\\x13$Yk]\\xd6\\x8evC\\xbc>\\xf6\\xa0\\xd0\\xdb\\x0d\\xd5v\\x8bI\\xd8\\xbc\\x804j\\xd9\\xaa\\xf4;_\\xcf\\x87S\\xe9\\xdc\\xa3\\xa2\\x99VG/\\xd0\\xee\\xd3\\xdd\\xa7\\n\\xdd+Hw\\xf7\\xb51\\xfe\\xc6\\xaaC\\xdd\\xad\\xa6\\xb9P4\\xfc\\xe5\\x0b8\\xab\\xecS\\x96\\xdff[\\xb8\\x8e\\x9a\\xf0\\x85\\x04\\x11w\\xe9p\\x19\\x163B\\xf1biF\\xe8i\\x1e\\x93\\xb7E\\xbe8\\x16\\xf7\\xa8n\\x81\\x97\\x84\\xfb\\x10\\x06I\\xb6\\xce?\\x91?\\xad\\xc2\\\"&\\xf1a\\x98\\xa67a\\xf4\t}Cp\\x7f\\x99\\xd8-\\x82W\\x14\\xe6\\xbcU\\x16\\xdf\\xd0zc\\xef4\\xa9\\x8a\\xb6\\xdeER\\x8e\\xb38)\\xe7}\\xf8X\\xecK\\x87\\xe6\\xcb\\x93|U\\x92\\x0fK)\\x94b\\xd3C\\xf3\\xe5e\\xbe\\x8a\\xe6\\xe3,6%\\x1f\\xb2\\xf1\\xa7\\xe2K\\xd7\\xb6N\\xca\\x93|M\\x1e\\xd0\\x1dV\\xcc\\xd4\\xb2\\x92\\xde\\xdd\\xee\\x05\\x0d\\x0b\\xfa\\x80\\x86\\x8f\\xf2\\xdb\\xcc\\xd40\\xd67\\xa0e\\xa1\\x82{\\x94\\x14$\\xa2\\x129\\xf4u\\xa2>\\x1c\\xaf\\xe5\\xe9\\xf8.))\\xc9\\x88M\\x0b;k\\xe6\\x960i\\xc0\\x03M?T\\x94\\xd3\\x10\\x8cXx\\xe6\\x18\\xa1\\x8dA\\xb4\\x19\\xde3\\xcf\\x18\\x18\\x18\\x14\\xfc\\xc4\\nS\\x97\\xd83J\\x95<#\\x90\\xfb\\xc6\t0}\\xac\\xc6[},\\x06-\\n/M\\xca\\xe36\\x95j\\xb9\\x16]WV\\x80C\\x97\\xa6\\x18\\xbc4\\xec\\x9c\\xd5\\x9d0w\\xe8\\x01I4\\xb6\\xf3\\x06r\\xf8\\xa1v\\xd5\\xfc\\xe4\tl\\x90 )\\x19b\\x0fg\\\\[\\x9e\\xe6\\xcb%\\x89]\\xef\\x0d\\xe4\\x9b\\x9b^\\x8d\\x1d'\\xf9\\x95\\x0fE[U\\x12\\xa4\\xc2\\x10^X7\\x90\\xa9!\\xe3\\x03W\\xe9!K\\xc4Fr@/\\x8b\\xd5`J\\xbe_\\xbay\\xff\\xed\\x06\\xf7\\xdar`\\\\[\\xdaI\\xbc)\\x84!\\xbf\\x19\\x87\\x1f\\x1a7\\x7f\\x1d+\\\\lnv;\\x18B\\x8azR\\\\\\xb1Ue\\xe4\\x9f\\xa2\\xfd3)\\xdajG\\xa0\\xdc\\x15\\xa0\\x87\\xe0'O\\xd8\\xa6\\xe6\\xc1\\xb3e\\xc1n!\\xa9\\xbe\\xd8Xe\\x97\\xfaU\\xe7\\xde\\xee\\x847\\xda\\x05U\\xf3\\xb0\\xac!\\xaa\\x0f\\x80\\x14\\xf1E\\xbb\\xbd\\xaeV0\\x9e7\\xef4C\\x98\\x0cq\\x0el\\xab\\x08\\x0ce\\xf5@/\\xed\\xd6t\\xd4|\\x9f\\xd6Zh\\xbd\\xbb\\xb5\\xa4<`k\\x81\\x0e#{\\x91\\xa5\\xe4\\x18\\x82\\xba\\x14\\xcf\\xdb3\\x9ew\\xf9-Zw,\\x16y\\xf6\\x90\\xe6,U\\x0cj\\xfb}\\xc8\\xce\\xa1{\\xce$6\\xd9,\\xd93\\x8f\\xb4\\x08\\xd7\\xa4(\\xc9\\xe5m\\xfe\\x9e1\\x8c\\xc3\\x14\\x11\\xaa\\xe6\\xf4\\xe2U\\xa1!m\\x8e3J\\x8aw$\\\\\\x1bZE\\xd7\\xe6FYu\\xab\\xed\\xba\\x1a\\xadp'\\xfc\\xa0\\\\&\\xc93\\x93g\\x0f\\xfe\\xf10_,\\xf3\\x8c\\x11\\x03\\x05\\xe9]\\x00\\x90'l\\x1b\\xbf\\xb4Q7\\xaf\\x9fU{\\xc9\\xc7\\x10\\xa6C\\xea\\xcf\\xcd\\xf5\\xff\\xce\\xfcfa\\x8f8\\xc6x8{\\x042 U\\x95\\\\\\xf1:\\xb9\\x0dd\\xcc\\xb1\\xaah\\xcb\\xa4\\xa33j\\x14kUQ\\xa1\\xc2\\xc9\\xee6\\x86\\x02\\xe5^M\\xe3FL\\xccN\\xcb\\xca\\xac\\x9b}je/\\x08\\x1a\\xca\\x1c\\x86\\xab\\xd9\\x9c\\n\\xd7\\xe1\\x9d\\xb2\\x02v\\x8aY\\xcdr\\xd6\\xc2&\\xd4\\x12\\x14\\x86\\xdb\\xe4\\x14\\xf5Y\\xf4\\xadp\\x91<\\x1c.\\xcc\\x164&n\\x97S7\\x94\\x13\\xd7_\\xbe\\x00\t\\xca\\\"\\x1a\\xa7dA2|\\xbfM\\xb28\\xbf}\\xa3O+\\xdb\\xef4@\\x9b\\xaer\\x99gq\\x92\\xcd>\\x94D\\x96\\x93\\xfaG\\xd6\\x1c\\x9e\\x0f\\xcfxh\\x9c \\xcbc\\x82F\\xfd\\xfb<\\x8c\\x1c\\xc9\\xf0\\xe0i\\xe8(|\\xab5\\x8e\\xd0-t\\x9f\\xaa\\x163y\\x10\\x85\\xd9\\x87\\x92\\x1c\\x9d\\x9dT\\xe0\\x1b\\xe7\\x11\\x1a\\xef\\x06\\xc9b\\xc9{\\xca/'\\x9f<\\xb1}\\n\\xe6a\\xf9\\x96\\x84tUH\\x7f'\\x1b{\\xd6z\\x94\\xcc\\xae\\xe3\\xf8\\xa8\\x1d\\xdc\\x98\\xd9\\xed\\xef\\xbekB\\xcdwp8'\\xd1\\xa7\\x92Af\\x98q\\x81?$%\\x94\\xab%[_\\x1e\\xc0\\x89\\xce\t\\x08.IP\\xc7\\xe82=['E\\x9ea7\\xb4J\\xf56N\\xcf.\\xc7#\\xb8\\x9c'%\\x8f\\x0f\\x95\\xe5\\x14n\\xf3\\xe2\\x13\\x08\\xa3\\xbd\\xf4\\x0e\\xa9\\xce,\\xcf\\xb6f\\x8c\\xc6I\\\"\\xde\\x13\\xd6\\x8fh\\x0ea\t\\xbf\\xf1H\\xca\\xbf\\xf9z\\xd5\\xbf\\xa1\\xb8\\xee7\\x1f~K\\xf30f\\xff\\xd1\\x08\\xfc7\\x1f\\xa3Q\\xfd\\xc6\\x1ds\\xfc\\xd6\\xd7\\xc1\\x1f\\xf3\\xa2\\xc8oK\\x98\\x16\\xf9\\x02N\\xf2\\x98\\x14Y\\xf2\\xf7\\xa2\\xaf\\xd4\\x1f\\xd1^\\x14\\xfe\\xc1\\xb5\\x0f\\xbe\\xd6\\xd7%\\x17\\xab\\xe94\\xf9\\x0c(D\\x84L\\x98\\xaf\\xcf\\x02p\\xa24\\x89>9z\\xbdUE\\xfb7y\\x9e\\x920chq\\x89K\\x8e\\xab\\xc3\\x16\\x07\\xd7@$\\xa2\\x9c\\xb7\\xb1J\\xed\\x1a\\xa51AU#c\\\\dE\\xedenW\\x90\\xb036\\x0b\\xd3\\xd6\\x874\\x89HV\\x92z\\x9a\\xe0Y\\xb0\\x13\\xec,\\x0b\\x02\\xee\\xe1\\xaa\\xa4\\xf9\\x02~\\\\%i\\xec\\xc1\\x1789\\xbe\\xd4\\xcao7\\xde}\\xbb-\\x9e\\x8eL\\xd0~@\\xddS_\\xbe\\xf0[\\x82\\x0d\\xd7\t\\xe3\\x18\\xe7Z\\xd2\\xc8\\x0e\\x83Z\\xb9GjVA\\xbfY\\x91\\x1c\\xb5\\x93g\\x0el\\x9a\\xfc`\\xa1PP\\xad\\xecM\\xbbOF\\x92e-\\xae\\xa0\\xab\\x8d\\x1a\\x15$\\xa4\\x12=\\xb9N\\x9c\\xacM\\xea\\x1daP\\x12z@i\\x91\\xdc\\xac(q3\\x1f\\x84\\xb3\\xe47\\x8e\\xd0\\xfe7\\xaa\\xc2\\x84\\x93\\xcc&2\\x05\\x85\\x9d@Mb\\xae\\xbdr;'\\x95\\xd8\\x0c\\xa4~\\xf2\\x10\\xac\\xc2\\xef\\xe6\\x03^\\xde\\x07\\xe7Y\\xb0\\x83\\xaa\\xd6\\xc9\\xa3!\\xd3\\xd6\\xd1}\\x90\\xd2\\x118aJ\\xffL\\xee\\xf4\\x90\\xbayF\\x8b<\\x1d\\x81\\x13\\xd1\\\"m\\x7f?!4\\x1c\\xa1\\xdb\\x82\\xb0\\xfd\\xf1b\\x9eLY\\xcd\\xa8W\\xcd>\\xd7C\\xb0\\xd0:\\xb6\\x03\\x0e\\x0dW\\xb3\\x90&k\\x82\\xf3\\xd3\\x86\\x12\\xf43v\\x92\\xc7\\xc94!\\xc5\\x05\\x0di}\\x8d\\xd4\\xfe\\xd4bO%\\xa0\\x16\\xad\\x1b\\x83\\x8aS\\xc43dc\\x83\\xaa\\x90PC\\xc1\\xb0\\xf3\\xbau\\xcd\\xf2\\x08K\\x99\\xb9\\xaf^\\x1b\\xd4_2\\xf7e+=\\xe1j1\\xbb\\xdcv\\xf4\\xd9k\\xfc\\xf7t\\xf7\\x95\\x1e\\xfd\\x9a\\x8b\\xe4w\\x9f\\xeb\\xe5W\\x98\\xfe\\xec{\\xb3X\\xbe4b\\x151d\\x93h\\x92S\\x18\\x93\\xdd+!\\\\\\xa7\\xe8\\xb5\\xf8\\\"\\xb9I\\x93l\\x86\\x1eu\\xa6IQ\\xd2\\xc3y\\x92\\xc6\\x86)_\\x8b\\xab\\xf6\\xc4\\xedc\\xafH\\x90d%)\\xe8\\x8fd\\x9a\\x17\\xc2\\xb1D]\\xa1q0\\x91\\xad\\xaeB\\xd4\\xc58\\x0dQ_\\x8b?3\\xe94XM\\xb7Z3\\xb3ob\\xdcl(07+\\xeaTaK\\xec\\x840\\x8fI\\xa4\\xcc\\xb8]\\xb8\\x95\\xba\\xdc\\xee\\xba\\xe0\\xd7\\xf7\\xdc\\x82\\xbdCk4\\xafh_\\xf5\\xd1\\x88g\\x1c\\x1cZ$Q\\xb4\\xdaA\\x91s:l2\\x97\\xd6\\x03l\\x88\\x1c\\xae\\xba\\xcf\\x9d\\xec\\x1a\\xee\\xdfb\\xac\\x1b?\\xef\\\\\\xf1;v\\x12\\xf0`\\x9b\\x08\\x89-\\x0eK\\x0355+\\xed\\x1eFl\\x83\\x89\\x8e\\xe5\\xab\\xc4\\xef\\xddK\\x87|P\\xcfR5\\xfbZ\\x0cc\\xfc\\xe6\\x0861\\xa3\\x15\\x8b|U\\xa6w\\xe7d\\x99\\x86\\x11a$?\\xe3\\xe3N\\xc2\\xe2\\xd3j\\xd9DS\\xeb\\xb6k\\x8c\\x9e\\xf2-\\xef \\x05\\xcfuD\\xd2d\\x91P\\x12_\\x92\\xcf\\x03\\x0d<\\xe4\\x84\\x11\\x8571K~\\xf9\\xbda\\xe7\\xb4\\xe6\\\"\\x1c\\xe8>\\x17\\x9e\\xa7n\\xe1\\xeb\\x14\\x08\\xeb\\x19\\x8a\\xf6\\x18\\xe4\\xe4x=\\x02\\xfb\\xe0\\xae\\xf0\\xde\\xcf\\xf3!v\\xf9u(E\\xd5||\\xeb\\x95]-\\x8b<\\\"e\\xf9\\x01=\\x14\\x97\\x03\\xc4e\\x0d\\xeb\\xae\\x9d7\\x90)\\\"\\xe67\\x90\\xd9u\\xab+\\xf0\\xb2\\xea\\xabHS\\x98\\x02oXm\\xf5@\\xa5]\\x7f|z1>\\xbf\\xbc>98\\xff\\xf3\\x87\\xf7=j\\xf6\\x88u\\x0b\\xe9\\xd8\\xc7\\xe7GJ\\x11\\x84SJ\\n6\\xa7}\\xd1\\x0d\\x06\\xd9\\x05\\x9c\\x9c\\xfd<\\xbe\\x1e\\xff\\xe5\\xf8\\xe2\\xf2\\xf8\\xf4O=\\x1d\\x9a\\xf2\\x0eL\\x85\\xb8\\xf6\\x9f\\xd4\\xa3\\x8b\\xf1\\xc0\\xf9\t\\x1b\\xf3\\xf3\\x18M_\\x8e\\xffry}xvz9>\\xbd\\xeci|\\xf5\\xe8\\x8d\\x9f\\x8fq-N\\xcf\\x8e\\xc6=m/\\x9b\\xeb0T\\xc9\\xe9\\x9e\\xf2\\x9a5\\xa6>\\x88\\x1a\\xb3{\\x01\\x9a\\xd3\\x05#\\x9f\\xe7\\x94.G\\xdb\\xdb\\xb7\\xb7\\xb7\\xc1\\xed\\xb3 /f\\xdb\\xbb\\xaf_\\xbf\\xde\\xfe\\xcc>kd\\xf3\\\"\\xa4s{\\x99W\\xdb'!\\x9d\\xe3\\x9f\\x93wZ\\xc9r=3\\x16{\\xba\\xb3\\xb3\\xb3]\\xaeg\\n\\x01\\xfe8C\\xed%u\\xd5\\xe8\\xe9\\xb5\\x0d\\xf6\\xc9\\xc5\\xc1r\\xc9\\x10(\\xfe@S\\xde\\x0f\\x19\\x0f~\\x1f\\x85\\xe9[y>*\\x94P%\\x826\\xaa\\xbfvV\\xd3\\x1f\\xd6N^L\\xa9\\xad\\xb4aI\\x17\\xac\\x8e\\x1e\\xdb\\xdb\\x8cQ\\x8d=s_\\xed\\xbc4\\xd0\\xf1\\x99\\xfb\\xf4\\xc5+\\xcf\\xcd\\xdc\\x97\\xdf{AR\\xfe\\x1c\\xa6I\\\\\\xc9\\xe6\\x1a\\xb9CE\\x19\\xdee4\\x7f{\\x12nV\\x94\\xe6\\x99\\xd9\\xaf_4'\\xd1\\xa7\\x9b\\xfc\\xb3\\xf9k\\xb2\\xc0\\xf8\\xfe\\xa6O\\xf3$\\x8e\\x89\\xa5\\xd2\\\"\\x8c\\x93\\xdc\\xf2\\x89\\xa0\\xed\\xa6\\xe9S\\xb9\\xbaY$t\\xd4\\xd2L\\xb6i\t\\xe9\\xeb\\x8d\\xe2\\xee\\x0dv\\xc8\\xe3\\xa0H\\xfc.\\xc9>10\\xac?`x\\x04\\x99\\\\\\xb8\\xce\\xab\\x97N\\xaf\\xae\\xb2\\xde\\xcc\\n\\x95X]\\xadR\\xa9\\x9f\\xc8\\x93\\xf2\\xec\\x10\\xe5mR\\xc7\\xfc\\xd5\\xab\\x9ev\\x0c\\xdePZ\\xed\\x88Q\\xf5\\xb4\\xf4\\xba\\xd1\\x92\\xfc\\xc5\\xc002\\x9a\\xd2\\x8a\\x88\\x11Ch-P\\x18f2\\xa1\\xa8\\x93\\x19N\\xb8.\\xd6\\x15\\x17N\\xcb\\xee\\xf0\\xb7\\x82\\x84\\xf1Y\\x96\\xde\\xf1\\xb78)\\xc3\\x9b\\x94\\xc4\\x8c\\xbcb\\xfd\\x1f\\xa1\\xcb\\n\\xe1 \\xeb\\xd7|%\\xc3\\x83\\xc6\\x10\\xc2o\\xd8\\xad\\xdfX\\xd2\\x12h\\x0e!\\xa3y\\x160MH\\x1a\\xc3mB\\xe7\\xf9\\x8aB\\x98\\xc1o\\xb2\\xc1\\xdf`\\x1efqJ\\x8a@\\x91\\x93\\x16$\\x8bI\\x01!\\xb0\\x8el\\xe5\\xac'XC\\x00\\xc7\\\\\\x90\\xc7\\xeb+\\xe7\\xf9*\\x8d\\xe1\\x86\\xc0bEY\\x171\\xd4\\xfeo\\xc22\\x0e\\xbd\\xf7\\xfd\\x16\\xc0\\x19\\x9d\\x93\\xe26)\\x19\\x99@(\\x90\\x84\\xbd\\xab\\x1d\\xc8\\x0b\\xf8M\\x8e\\xf8\\xb7\\xc0d2n\\xd9~$~\\xf8\\xfc?\\xe2\\x94\\x8b\\xbe\\xfc\\xb7\\x98\\xf4C\\xd1\\x97\\x7f\\xd2\\xb4\\xcb\\xd2#H\\x026\\xf3\\xbf\\xeb\\xc8?\\xb5\\xda\\x13-\\xdb\\x9b\\x16u\\xc8m|\\n\\xbf\\xcb\\x99\\x11\\x94q\\xdb\\xfc\\xbf\\xd3J\\xb0\\xe5\\x08\\xe95\\x9b31\\xa9\\xdc\\xff\\\"\\xe4S\\xf8\\x8d[~m\\x82\\xf3[\\xd0\\x0ckh\\x94]::m\\x00\\xa2Oq\\x0b) \\x18\\xbc/\\xf2%\\x1aE\\x0c\\x83\\xcc\\xa62td\\x03^6\\xbe\\xc8\\xa4\\n-%\\x16\\xd1\\xa4\\xb8b\\xc74\\xe7\\x9a\\x1c\\x06\\x88\\x8e/\\xee\\xeb\\xf2\\x0e\\xcb\\xa9D\\xf5\\x89\\x83\\xe0\\xcd%\\xdb\\x89\\x0c\\xfb\\xc7\\xba5\\xedV\\xdb\\x99T\\x99\\xafP\\xd5\\xdeN\\xde.u!\\x81|zI\\xd4&d\\xcd\\x08\\xfdY\\xc7\\xbe\\xa6.V\\x9a5\\xf5\\xf1\\xb5\\x8f68(\\xbc\\xa8\\x12\\xff_\\xf6\\xfew\\xbdm\\x1cY\\x18\\xc4\\xbf\\xf7U\\x94\\xf9;\\xa7\\x0f9\\xa6\\x15\\xc9v\\x9cD\\x89\\xe3\\xe3v\\xdc\\xd3\\x997\\x89sbg\\xfa\\x9d\\x9f\\xc6G\\x0f-A\\x16'\\x12\\xa9CRv<\\x93\\x9c\\xeb\\xd8o{\\x0d{\\x01\\xfb\\xec%\\xed^\\xc2>(\\x00$\\x08\\x14H\\xcaq\\xf7\\xf4\\xec;\\xfc\\x90X\\x04\\x88?\\x85B\\xa1\\xaaP\\x7f\\xc4_\\\"X\\xf5\\x8d\\x15\\xc4\\xdf\\xee\\xfb\\xc4\\xa6=\\x8d\\xbd\\xeb\\xa7\\xea\\x11\\xaa\\x8d\\x84\\xd9a\\xf5Z\\x1f\\x81|\\xdd4\\x06i)vVn\\xc6V\\xc1\\xb7+$T\\x94Ql\\xd7/\\xe4\\xfd\\xa9\\x1c^m|M\\xb3q\\xb4\\\"\\xab\\xc8vJ\\xf2{\\xa4\\xfd\\x10\\xce.*\\xf8\\x1aFI\\x10?\\x1c;\\xd5!\\xb1\\x08\\xe8\\xfd\\x12|\\xa7\\xe4\\x18\\xb7\\xcc2\\xfb\\xe2\\x1f*\\xf5\\x8c\\xa9\\xc4\\xb1]\\x88\\xa0\\xd2f\\xa0\\xda)cI\\xa9\\xd5\\xa0k7Z\\x95T\\x15N\\xab\\xcb\\xd26|UO\\xe5\\x98\\xb4/b*\\x90\\xb3@\\x92L\\x96\\xc8h\\x18\\xc4\\\\@\\x06\\x8f#\\x8a\\xc4M\\xb6\\xc1\\xc1\\xaa\\xa7\\x95<\\xd0X\\xf0\\x0dv\\x06\\n\\x0bd\\xae\\xd6\\xca%\\xabN\\x83\\xdd\\xa6)\\x0e\\xb9\\x8f\\x95\\x8a2q\\x9f\\x8e\\xcc\\x87\\x16\\x0du\\x00\\x8f\\xb0\\x0e\\xfeQ\\xf0}\\x82\\xdc*\\xda\\x1f\\xa2\\xa0Xa>9\\xe5FB\\x80N-\\xa2\\xa4\\xba\\x9a\\xec\\xdbwFZl\\xb1\\x9a\\xcf{i\\x16#\\xec\\xc2\\xedZE\\xadV\\xd1z\\xff)\\xa1\\xfb\\x89\\xdd!%\\xb2q\\xdc\\xa8cjW\\x84\\x87\\x90\\xb4\\x10\\x15\\xe1\\x04\\xc4\\x0fg\\xcf\\x9aK\\x08*\\x00#\\xcd\\x8a\\xf89\\x06Q\\xb2\\x071\\x03\\x7f+\\xab\\xdc\\xb3G\\x91H\\x99\\xb9\\x95\\xfal\\xc4\\x7f\\xa1\\xaa\\x1e\\xffp\\xdf\\xf8\\x96\\xd06\\xd6\\xef^\\xc8\\xd9y\\xc1\\x15\\x9c\\xeb\\x0b\\xb75\\x10\\x7f\\x132\\xa6^\\xb7\\xd0\\xea\\x12\\x17\\x8b\\x18\\x81'\\xab\\xaca\\x85\\xbd\\x94\\xbd\\xceU\\xd0I\\xd7=\\xb7B\\x1e\\x12b\\xf5\\x10\\x91\\x88wUl5\\xfe\\xe6\\xa8^%\\xb6\\xaa\\xc40\\x84Z\\xfcG\\xbc\\x8dV\\xe9\\x9a\\xd1T\\x07\\xff\\xc4\\x97\\x9f\\xd8\\x9d|\\xf7\\x89\\xdd=\\xc4Z\\xd17\\xcb\\\"Tf\\x1bAV\\xac/M\\xaa\\xbdCo\\x08\\xdea\\xdf\\x11y\\xd1\\x1bb\\xf1\\xae\\x9d\\xba\\x9bH\\xf8\\xa3\\x80\\xfd/\\x9c9\\xf6=4J\\x08\\x14u\\xf7\\x1f\\x8d\\x0e\\x87\\x97\\x8f\\xae\\xc3\\x0e\\xe7\\x87\\xbaZ\\x1e1\\\"\\x96c\\xa3._\\xc5\\x0f\\xfdV\\xa0\\xf4q\\xda.\\xa0\\x1c\\xee\\xf2\\xe2\\xe1&@\\x11\\xe0\\xf0U\\x8466\\xea\\xa3\\xb7)\\x87\\x95\\xf8\\x8dQ1Y/__\tD\\xf4w\\x05\\x83S\\xbd\\x18\\x04\\x81\\x06M\\xff\\xb0\\xff\\xe5p7xx\\x80V\\xf8J\\xd3\\x8a\\x07\t\\xce\\xec\\xe2\\x8a\\xf6\\x0fP\\x916\\x18\\xec\\x9a\\xd7\\xe6\\xf2z]\\xde\\xab\\xef\\xef\\x05\\x9d=\\xda\\\"BN\\xec\\xb1\\xe4\\xbf\\xd6l\\xcd\\x04\\xdfP\\x8f\\xccm\\xb7@h\\xbbJ\\xdb\tI\\x94\\x1a\\xcf?\\xfd\\x14+\\xe8C\\x0csQ\\xa9\\xb8\\xe4\\x82\\x8ah/z*B!\\x11\\x014\\xb3\\x8e@\\x92\\x04fF\\x8a\\x8e\\xf2\\xf7\\x0b\\xd8\\xed\\xe3\\x95\\xdb6x\\xe0\\xf3&\\x86\\xc0q5\\x93a\\xaeB\\xf0\\x02^\\x16x\\xa0g\\xffs\\x87\\x16p\\x9d\\x1fh\\xeb\\xed\\x1a^\\xa2\\x0e}\\xad\\x03\\xbd\\x01\\xdb\\xed?\\xce\\xdf\\xa6\\xeb\\xa4h\\x97\\xa0\\xd4R\\xd1\\xfd\\x83n\\x86RH3\\x94\\xdeXH\\xfclZ\\xdaT\\xd77\\x89!I\td\\xaa\\xecr\\xbb\\x08\\xed\\x8b2\\xd9k\\xe9\\xbc\\x88U\\xed\\xe1\\xa9mc\\xaf-\\x94\\x9cEu\\x84\\xd2\\xeeb\\xbd\\xf1\\x8a\\xa1\\x95\\xa9\\xea,\\x87#\\xea\\xad\\x08\\xbf\\x88\\\"\\x13\\xf5\\xcd!\\x8c\\x8a\\xcb\\x10\\\"\\xebB\\xbb\\x11 \\xaf\\xa51^\\x07\\x11\\x93\\x91\\x03%\\xdej\\x03\\xa5\\xbe)\\x07\\xda\\xecM \\x07\\xfac\\x9aM$-\\xe8\\x8aM\\xf4bH\\xe3\\xder@Z\\xc3(\\x98\\xf0\\x11\\x15fJ\\x0crH\\xf2\\xe6\\x1e-\\xaa\\xba!T3\\x9aH#\\xf4rd\\xd8\\xf0\\x7f\\xf0\\x9e\\x14\\xac\\xaa2\\xbdo9l=\\xc1\\x82\\xa6\\xd4\\x97\\xbf|\\x02\\x99\\x85\\xf5_\\xd5\\x90\\x17\\x84\\x9b\\xa2a\\xd2\\x80\\x86\\xc9e \\xf0\\xb0\\x0b0\\xcfYA\\x01\\xd2\\x05\\xc5\\xc4\tE1[?\\xa1\\xc0\\xf8\\xe5\\x0b\\xd0\\x05\\x870\\xba\\x0c\\x02\\x85\\xb0|\\xd4\\xa6{\\\"=jy\\xe3\\xe4\\xd8=\\x0e,\\xa86\\x8327\\xc7h,\\xac7\\x96\\xc9\\x0e\\xf9\\xf9\\xdb\\xbe1\\xcc\\xe5\\xec\\x0093\\xd6\\x99.\\xf7I]\\xc0\\xee\\xae\\x87#\\xe7\\x07\\xea\\x86l\\xc77x\\xc9'\\xfe`/\\xa0\\xb8\\x90\\xbd}\\x9a\\x0b\\xe1<\\x86\\xee\\xaf\\xa9\\x8f#\\xbd\\xff8\\xba\\xdd\\xed\\xdeT\\xc1\\xdeP\\x928I\\xa7\\x8c\\x16j&\\xf3(\\xe3\\xa5h/\\xccP\\x1b\\xc0yI_(\\xbaU)^M\\x0d\\x84?ARZ\\x06\\x0e\\xf6\\xf8\\xde\\x92\\xc8P\\xc0\\xcbC\\xd8\\xdbE\\xd5\\xc1^\\xa9[(`\\x08\\x1bJ\\x9a\\x15h\\xad<\\x15\\xd2\\xc5`\\xf7)y\\xdd\\xbao\\xde\\xc2b\\x98\\xc7\\x91`\\xa1${si\\xb0\\xe3k8\\x04u\\x0d]\\xe9V\\xeaurB\\xfbR\\xaf\\x81q\\x0e\\xcb \\x80\\xf5\\xb2\t\\x86,\\xa8+k\\xec\\xdb\\x89\\x85\\x90\\xeae\\xde\\xc3M\\x97[\\x18a\\xf3\\xf7\\x18\\xaa\\x8b\\x05|\\xdfD\\x8dJ\\x0fdf,\\xf2\\x84\\xe24\\xa15\\xe9\\xd3\\x0c\\xe7\\xa4\\xd4Ex\\xb5\\x8c8\\xa8$\\xd2yO\\x1a\\xf7\\xaam~X\\x0f\\xfe\\x9e\\xe8w\\x01\\xc2\\x8eK\\xf4\\x94\\x04\\xbc\\xea\\xec\\xbe\\x08\\xb5\\xfb\\xecI a\\x8c>\\x83j5\\xcff!4\\x82\\xbe\\x93\\xbc\\xa2\\xf7\\xe3\\xcaJ\\xd3\\xb2eA&1\\xd2a\\xe7\\xb3\\xde\\xd5]\\xc1\\xde\\x08u\\x12\\xcd\\xf8b6\\x9a\\\"\\xe8\\xe5\\xac\\xf0\\xc5\\x0f\\x0cb\\xdd\\xe6\\xdec\\x8e^\\x05\\x87\\xc4\\xf5\\x9b\\xc7yo<f\\x9f\\x0b\\x96L1\\x12]+\\xf1\\xee\\x1a]\\xc5g2~\\x9dHca\\xb7\\xa3d\\x81\\xcci\\x10\\x82\\xa3\\xd3\\xa5\\x9dv'A\\xc0\\xa5\\xd0\\x83Rk\\n\\xa6#\\xb5\\xc3\\x85\\x89\\xa0\\xe0\t\\xfd\\xacV]\\xdf\\xfe\\x02\\xe4\\x8d\\xa7_'\\xa5\\xad\\xaa\\xfc\\xe8w[\\xd5\\xc7\\xbf\\x83yQ\\xac\\xf2\\xe1\\xa3G\\xd7q1__\\xf5&\\xe9\\xf2\\xd1y\\x11e\\x13\\x14V\\xb2\\x9d?D\\x93O\\x8f\\xfep~\\xf6n\\xe7}TL\\xe6\\xfa\\x97\\xfe$\\x80\\xdd\\xfe\\xe0\t\\xfc!\\x8d&\\xf3x\t?\\xb3\\xbc\\xd0\\xb3\\xd0\\xfe\\x0e\\xde\\xbe\\xbe\\x00\\xe9\\xc1\\xa2\\xbd\\xae\\xbcRJ\\xf07\\xea\\x8f\\xa5\\x1e\\x92\\xd5,#)\\x81.\\xa6\\xe9U\\xdd\\x0e\\x98\\x91\\x17{%B\\xa9\\x8d!++\\xddj\\xd8`=Y\\x08\\x1cC\\x95\t\\xe1 \\xaf$\\xe9\\xfa\\nZ\\xa3\\xd4\\x84\\xe2\\x92\\x1a6\t\\xca\\x052j\\xf5w\\xf5\\x9bU\\x16\\x08\\xb8f\\x92J\\\"Gg\\x06v\\xb0FG\\x01\\x96\\xd0I\\xc8\\xefv\\xa4^\\xb5\\x0cY\\xe9=\\x12D\\xd9.\\xf8o\\x0fS\\xec\\xca\\xf4\\xb8R/\\xf4\\xdf\\x8f\\xaeC\\xf0\\xfe\\xbb\\xefi\\xba\\xa2??\\x12/\\x07-f0k\\xb7\\xfc\\xde\\x0c\\x16k\\x89\\xcaK\\x02w\\xa4-\\xbc\\xab\\x1fe\\x97\\xc6y\\xc5Yz\\x0c\\xdc\\xeb\\x88\\xe4\\x1c\\xd7\\x13\\xf1\\x94,&o\\x89\\xf3\\x9f\\xc8wb\\x06\\x9256\\x8f\\xf7\\x14D\\xeb\\x1c\\xb5Z\\xa8\\x8e:\\xeb\\xa8\\xcb{\\x93<\\xca(q\\xbd\\xb1\\x18\\xda\\xff`wxw\\x84\\xaf\\xa6\\x8c\\xadN\\x16i\\xc2\\x1a\\x0f\\x11e\\xfa\\xab&D\\xc1MXv\\xca\\xd9\\xd3F\\x9dr\\xd0Z\\xa2e\\xfc\\xb3\\x0c1\\xec\\x93V\\xb5\\xa2\\xe1\\xca\\x9c\\xb0\\xb1mZ\\xc5\\xd0\\x18\\xc9Z]\\\\9\\xb6\\xecW\\xcc@\\x9fsI\\xe7\\x1aS\\x95\\xbb\\xc1T\\xd1\\x15IABi\\x80^R\\x10x\\x01\\x19i\\xdd\\x8f\\xac\\x96o\\xb0\\xc7\\xc7\\x05\\x06\\x19|y\\x08\\xfbO\\xc5\\x05\\xd9\\x8bCx\\xfc\\xc4}\t\\xc3\\x9fd{\\xbb\\x81\\xf8\\x10\\xd74|~B3\\xfd>*\\xe6\\xa5R\t\\x0e!\\xe2EJmm\\x16\\xba\\xc1\\xa0\\x00\\xaam\\xfc\\x01n\\xf2G\\xfa\\xc6\\xff\\xef\\xbe\\xd8\\xf8\\xfa\\xbeG\\x94\\xc4\\xa8\\x0b\\xc5\\xfc\\x03\\x9b\\xac\\xb3<\\xc6$\\x86\\xebP\\xf8r\\xf1\\xf7mWB\\xb8w\\x8d\\x8dk\\xedX\\xc5\\x95H\\xaabs\\xab\\x9e\\xa7|(\\x84s\\xb8f\\x1c%\\xe84z\\xda\\xce\\xd2u\\x82~\\xbcY\\x9a\\x16\\x8e\\x9c\\x98\\xe6~\\xc6I\\xce\\xa3\\xfc\\xa3BhmB\\xc0\\xec`\\xf3q\\x15\\xc4\\xb0\\x99{\\x16&B$fuq\\x8e\\x01\\xcb{ \\x94\\xfe&u\\xec\\xc5c\\x90\\xfc\\x1a\\x14\\xf4}\\xe4\\xc0\\x02\\x02\\xd9\\xd4\\xf3\\x95\\xcc\\\\V^\\x94\\xb9\\xc6\\xa7\\xae\\xdbb\\xdf\\xb4u\\xd5\\x9f\\x08\\x15\\xaar\\xd4\\xeeyjg|\\xd4qV\\xe9(\\xb9l\\x99\\x18\\xb9\\xdb\\xaa\\xe4w_\\xeb\\xb2~3\\xef^\\xa2E\\xa1\\x19(;\\\"yH\\xc3\\x12\\x91\\x92\\xbdL\\xf9\\xa9l\\x9cD\\x96,\\xe1K\\x89\\xb9 \\x12\\xf9\\x13\\x0fl.\\x89\\xc8\\xdfe.fyh\\xf0wE\\xc6\\x98\\xe5\\xd8EN\\x14\\xcd\\xb5Y]B\\xf0q\\xdbh{\\xa3\\xe8!w)l\\xb1:\\xc6\\xd0\\xa8d \\xcb7Q\\x08\\xef\\x83\\xc7\\xa6\\xbeD\\x08\\xefOLY_\\xba8\\x0e\\x1e\\x93.\\x8e\\xcf\\x06OZ%\\xac\\x86k\\x04\\xce\\x06Q\\x97\\xc0\\xbc\\x81]G\\x19\\x17\\xf2\\xf7\\x1ce\\\\\\xc8\\xdfw\\x94q\\xf1\\xfe\\xc0Q\\xb6\\x82Cx\\x0c\\xea:\\x9cH\\xa2<\\x05y\\xfd\\xbd&iV9\\xd9\\\"\\xe4\\xb4w\\xde\\xc8D\\xdf\\x84\\xb0\\x0c1\\xd1\\x1bnKL\\xea\\x96\\xfa\\xd7A\\x08W\\x98kv\\x8d\\xd9\\xe4\\xf6\\x82\\x10\\xc6\\xfcL\\xf1\\xef*6\\xfbV\\x90\\x99S\\xf4\\x05?\\x82)\\xefo\\xccE\\xa4\\\\\\xfd\\xeaW\\x06R\\xcfa\\x0c/\\xe1\\xf69\\xdc\\xba\\xb6*\\xdf\\xa6\\xfe\\nc_p\\xa2,\\xa3\\xe4/\\xe1\\x10\\xae\\xfc\\x1b8\\x84\\xbb\\xd1\\xede\\x08\\xb7!\\xf0\\xc1\\x99Z>\\xb3\\xa1$\\x80\\xd3\\xd1-\\xe7\\xf5\\x974\\x11\\xe1OI\\xc5\\x96A\\xb7TA\\xa0\\x18\\x9a\\xbdf\\xbf\\x17\\xd0\\xcfjw\\xff\\xa0\\x9a{\\xdc\\xb9\\xb9\\x9b\\x0e\\xad\\x1dtn\\xed\\xb6Ck\\xbb\\xed\\xad\\x9d\\ny\\xe5\\xc6\\xbd$\\xda\\x891i\\xe4\\x7f\\x14\\n\\xc3\\x11\\x17K\\x86\\x80\\xd9\\xf5&p\\x04\\x13\\x18\\xc2i\\xad\\xba\\xe9\\xeax/\\xcd\\xa9\\x14\\xdb\\xc4a^j$\\x8a\\x10\\xbc*\\xd3\\xb7g\\xfa^H\\xd3z\\x9d\\x0d\\xe3T\\x13Sv\\xa5Y\\xfcW\\x95\\xde\\x1d\\xcf\\xdf\\xf2\\xe5\\xf1\\x04\\xed\\xca\\xa4-\\xda\\x0fQ\\x1eO\\x8e\\xd7\\xc5\\x9c%E\\\\\\xa6bpV\\xff1\\xcd\\x96\\xef\\xa3,Z\\xe6F\\xad\\xd5jA~\\xfe\\xbeJ\tV\\xf4V\\x19;V\\x05\\xaf\\x97\\\"!1\\x16\\x9c\\x9c\\xbd\\xfb\\xf1\\xf5\\xef?~8\\x1d\\x1f\\x7f\\xbc\\xf8\t_\\xfd\\xf1\\xf8\\xcd\\xebW\\xc7\\x17\\xa7\\xf8\\x83\\xbf=\\xfb\\xf0\\xfa\\xff\\x7f:>\\xe3\\x7f\\xee\\xe2\\xcb\\xf7\\xb2\\xbaU\\xf0\\xe6\\xec\\xf7g\\x1f/\\xea\\x1f\\xe2\\xaf\\xf3\\x9f\\xce~\\xc6O\\xc6\\xef\\xcf\\xde\\x7f|\\x0f\\x87\\x8a(|W\\x81T\\x86\\xcf\\xf5\\x13\\x7f\\xff\\xb1yE\\x9f\\xca\\x92\\xdd=\\xea\\xf2\\x1e\\xbf\\x19\\x04\\xb5C*\\x9f\\xa7\\xb7\\xaf\\xf8\\xa2\\xc6\\x1c4\\x9d|\\x9e\\xecm_`\\xea\\xf9\tA\\xa1\\xa3\\xbbE\\x1aM\\x87\\xcdbG\\xb9\\x16\\xdf\\xd2;A\\xfe\\xbb\\xf5\\xbeH\\xaf\\xd3u'V\\xdf\\xd5\\xf5\\xea\\xbe]\\x97\\x13?\\xe3\\x7f\\xed~\\xcb\\x18\\xa6\\xf7\\x1d\\xc3\\x04\\xa3=\\xaf\\x05\\xe2\\x7f\\xcb\\x08\\xe6\\xf7\\x19A\\x1d\\xb1#\\x85\\xbe\\xfdg&\\xfe\\xaee\\xd1\\x9ee\\x96\\x92\\x0bV\\xa7OZ\\x9e\\x10nEJn\\x13&\\x1e\\x15\\xf5\\x92\\x8a\\x1c{zJ\\xacv\\xcf\\xa26\\x89\\x89c'{|\\xab\\x8dW\\xe9j\\xbd\\xf2\\xec+\\x8c:%\\xf0J\\xcc0\\xaa\\xae\\xea\\xf4\\xc3\\x13\\xc8kT\\x9ab\\xcaK\\x17\\xf9\\xf1V\\x19\\x1b\\x97\\xed\\x8fSD=/\\xa4\\x89\\x98gU4\\xa0?\\x17}i\\xc4\\xd0S\\x17\\x97\\xd8\\xa6E8\\xbd\\x12\\xe1p\\x10^\\x8d\\x1a9\\xe8o+NV\\x9c\\x1c\\xc5\\x95\\x94\\xcay\\xdcp\\xc7X\\xb3!\\xe2m\\xd1cY\\xd6XKx\\xd2\\xf3\\xc6\\xe8\\xf2H\\xc4,K?\\xb1\\x84\\xae ,\\xa8\\xa5[#]e!\\xf2RM\\xe6l\\x19\\xd15&\\\"\\xc2E\\xb4t\\xf8\\xfb\\x8b\\x9b\\xb1kV\\xf8\\xdel\\x91\\xdeR\\xe1\\x82d\\xc4\\xf4uO\\xe2x/\\xbf\\x8d\\xae\\xafY\\xf6\\xf1\\xf5\\x076\\xc5\\xb8\\xcf\\x822\\x85\\xe0E\\xe51+t\\x063\\xcep\\x88\\x1c;\\xbd\\x84\\xdd\\xf2e;\\xcd\\xcc\\xa4\\xfe\\xea\\xe1\\x8d\\xbc\\x9e\\x92G\\x04\\x7f\\xf2t\\x9dM\\xd8P\\xe5\\x90\\xa7\\xe1\\xc1n\\xd8b\\x08\\xdem\\x94%qr\\xed\\xa8%%\\xc1!x\\n\\x8f\\xc4\\x91\\xbf\\x8c\\xee\\xe0\\x8a\\xc1\\x1a\\xddgCXEy\\xce\\xa6\\x90\\xa3y\\xc5m\\x94\\x83\\x88\\x0e\\x86J\\x8e\\x9ce7,\\x83\\xf7F\\x95\\xe4\\xdf\\n\\x89ml*\\xc2|a\\x1eRQ\\x9b\\xb0C\\x0cB\\x88z\\x18J\\x0c\\xed+~M\\x10a\\xafm\\x00\\xf2\\xfb!\\xc4j\\xdd\\x03?\\xa2<\\x821\\x13\\x97qH5\\x0c\\xdf\\no\\xa8\\x1e\\xdc\tC\\x88\\x88.\\\\$U\\xa7\\n\\x14\\xaf\\xf6\\xeb\\x92\\x04\\xd6\\xb8\\x11c\\x11X\\xc3\\xb9\\x11\\x059(\\x13\\xab\\x91u\\xd62\\x84\\x87\\x98\\xa0\\x9b$Tu.\\xac\\x8bt\\xf5L\\x84zu\\x11\\xb3\\xa4x\\xedhk\\xa6\\xd59g\\x93\\x8c92\\x9b\\xaf\\x9c&\\xba\\xfc\\xb9\\xce\\xa2\\xa4\\x18\\x8b\\xf3\\xdfS\\x03s`\\x1e\\x7f\\xf2I\\xca\\xabrp\\xa6+\\x96K\\xfbF |\\x16\\x01\\xac+A\\xf5\\xa0\\xc7\\x9e\\xa3l.}\\x15\\xcd\\xf7JKy\\xc5\\xa5\tA\\xc0\\x16p\\x04\\xf3^\\x9dL\\x1c\\x82\\x87\\xf2\\x06\\x9a_\\xf2\\x1d\\x92\\xf7\\xae\\x8a4\\n\\xfc\\xa8\\xcc\\xf8\\xba\\xc6\\xbbM^\\x96V\\xbbgEy\\x9d\\xf3G-:\\x89\\xfc\\xae\\x8f\\x14 \\x87\\xb0&\\xe9\\x8a\\xcc\\xc1[\\xce\\xc2\\x9f\\xa0\\x06`*\\x97s\\x1cs\\x08M\\x82\\x10f\\xf5\\xf79\\xae3\\xdf<\\xe8\\xba\\xd5y\\xf2\\x93r\\xf2\\xb3\\x00\\xd3\\xec\\x99\\xf2\\x9b\\x83&\\\\\\xa5\\xd3\\xbb\\xa1ji\\x1d/\\xa6\\\\8{\\x15\\x15Q\\xe0\\xaf\\x1c\\x8a\\xcdu\\xb6\\x18\\x8a\\xe0\\xce\\xbe\\x87T\\xe3c\\xb60Y\\x0e\\xf5\\x08\\xb8\\xc6\\x0eD`\\xd1\\x94e9\\xc9\\x96\\xf2\\x07AH\\xb2\\xcdPR3\\xe2N\\xdcI\\xafB\\xb7\\xb0\\xf9[\\\"U\\xa9\\xac\\xc1w\\xdf\\xb7\\x10\\xb3f\\xe2\\xb2\\xeeH\\\\l\\x93b\\xfd\\xa9a\\xe7\\xb0\\xcb\\xce\\xdc\\x84\\x8a\\xd0\\xc1\\x00\\xd4S#lr\\xfbL26eI\\x11G\\x8b\\xbc\\x9d\\xc4\\xa5m\\xb4\\xcdI\\xa3\\x1eb{M\\xee\\xb3e6\\xd9{r\\x83\\xb4\\xec=\\\"r~\\xc7\\x0d\\xe4\\xd6\\xe9\\xb4\\xdb\\x00\\xb98\\xf3D\\xba:\\n\\xc6\\xf6c\\xb6hV\\n;m\\x8f\\xb3\\xb2\\x8fV!\\xa1h\\xe5\\x1b\\x8a\\x96\\xadVt\\xd8j\\xc57o\\xb5\\x1a\\xbaG\\xfa\\xbe\\x1bO8\\xc7\\xefF\\xf7\tf\\x08(z\\x13g\\xd81\\xac\\xa5\\x0e\\xa6!8`\\xa1\\xd5\\x12\\xc7\\xd4\\x10\\xd6\\xee\\x9aj\\x11\\xc7\\xeb,\\x1e\\x12V\\x04\\xd0\\xb8\\xc3\\xb2\\x07\\xd8af\\xd2U\\xf5\\xb4\\xef\\xb0t\\x93\\x1df'\\x9c\\xbe\\xd7\\x0e\\xa2\\x95\\xa8\\xff\\xdcJ\\xb5\\xe7a\\xb6\\xd2o\\xe6\\xd4\\xfa\\xbbm\\xe3\\xbf\\xff\\xe6\\xbc\\xff\\xf1\\xb7\\xd9\\xe6\\xfc\\xa5\\x8e\\xbf\\xeaZ\\xe4\\xc1x\\xc7\\x99C\\x13%\\x90\\xfe\\x9a\\x152\\xeb\\x1f]+\\xef\\xc6\\x7f.:i\\xcf\\x84\\x824\\x8d\\xf2\\xbds\\x0c\\xae\\x9e\\xbaR\\x15\t\\xbdh\\xbeb\\x93\\x96\\x8a\\xabrx-\\x15\\xa7Ho8\\xe68\\x96\\x0e\\xcbQ6\\xa0+\\xdc\\x94W2(}\\xcd\\xe1\\x08\\xfe\\xf6\\x15\\x9cR\\xc6\\x12\\xdb\\x93\\x08AW\\xb9\\xae\\xb7\\xb8T-.\\xe9\\xeaw-\\xec\\xf9\\x95\\xd05dD\\xa4\t\\xfe\\x8c[4\\x97\\xb7p\\x08\\xfeJ\\xc3\\x07\\x1f\\xad\\xe2\\xff\\xf65\\xe8E\\xd3)\\xde\\x11E\\x8b\\xff\\xe0\\xf0\\x11\\xd6\\xfa\\x82-\\xa3\\xdb:%\\xae\\xaf\\xf4\\xb2Y/\\xce\\xcf\\x8e\\xcf\\xf7\\xfc\\x80\\xcb\\xb0\\xfd\\x10\\xa2J\\xa0\\xbe\\na\\xd2\\x13\\xb1\\xf7\\xd9\\xf4\\x1cul\\xbe\\xc8\\xac\\x0cC\\xa2\\xee\\x8c\\xcfXV\\x08\\xeb^\\xe2\\xbaU\\xd1-\\x1c\\xd5\\\"\\xf6\\x89\\xa6\\xb2\\xaa\\xa9\\xdb@\\\\\\xa6\\x9f\\xca\\xb4\\xf4\\x87`\\x08\\xfa\\x7f\\xfb\\x1a\\x82,\\x0c\\xe1\\x96\\xb2\\xe3\\xe3[\\xee3\\x1c\\xc2i\\xe9\\xd1\\xe0;\\x88\\xc89\\xd1\\xbc\\x93\\xa8\\xf2\\xf3|\\x85a\\xcc+\\xd9\\xf2\\xd1_\\xf24\t\\xa1`\\x9f\\x8bG\\xabE\\x14'!\\xfc\\xee\\xd1\\xef\\x1a\\xa8\\xbcw\\\"\\x82[\\xee\\\\\\xdc\\xad\\x98g4\\xf6y\\xe7\\xf6\\xf6vg\\x96f\\xcb\\x9du\\xb6`\t?\\n\\xa6\\xb6b\\x13\\x04\\xb5\\xba\\xa6\\\\\\xb3z3VL\\xe6\\x8eY }\\xfd\\xec\\xd8'\\x18\\xd6i\\x08\\xde*\\xcd\\xcd\\xdb\\x0c\\xf5\\x94d\\xf5\\x9c.\\x97\\x12\\xfd\\x8dc_\\xe0i\\xe18\\xf9e\\x9c\\x1bt\\xf3\\xe2`N\\xb3!\\xac\\xfd\\xa0g\\xbfw}\\x9f\\xaf\\xd2$gD\\x03V\\x81\\xd5\\xc0\\xd7\\xa0\\xc7\\xf92\\xbf\\x99[\\x02\\x8d+\\xd3,KYo\\xcaO<\\xf7\\x92#\\xf5\\x97.\\x91B\\x1b\\xfd\\xe5\\x0bx\\xaes\\x0d\\xd4\\x15\\x88\\xfc\\x02;9\\xd5>\\xa3\\xed X/\\xfd\\x84\\x0e\\xcc_\\xbe@\\x06G\\xb0hWw\\x83\\xa6\\xf2v\\xd0Z\\xe8\\xa8\\xd2\\x86\\x8e\\xeaqhP\\x7f\\x13\\x16\\x85\\xa0T\\xe0yG\\x158\\x94\\x8c\\xc1\\xd8=\\x00\\xa9\\n\\xb7\\xf9zP\\xdd\\xfd\\x03\\x00\\x8f\\xf5\\xf2\\\"*\\xd6\\xf9\\x05\\xfb\\xec\\x9a\\x08\\x85\\xe6\\x98\\xaai\\x03<\\xaf\\xacQY\\xa0l\\xfch\\x04D\\xcb\\xc5r\\xb7\\x89\\x9b]\\xf5K\\xec\\x90\\x06\\xae\\xf9\\xa6\\x0c\\x00P\\xfb\\xc4m\\xf2C\\xe7\\xa6\\xd2\\x1f%\\xdbh!M*\\x17\\xad#}\\x03\\x8bL\\xa4\\xcd\\xe6E\\x99\\xdc\\xb9\\xc2sp\\xfb\\x10\\xbc\\x10\\x98H\\x16%\\xc2\\x04\\xe0\\x0ft\\xee\\xc5\\xbf\\xc6S\\x96O\\xb2x\\x85b\\x9e\\xfe\\x91\\xf6\\xbe\\xf6\\xa9\\xfeA\\x93m\\x92\\x96k\\xcb\\xf6\\x0e\\x02\\xa0|\\x86\\x00\\xfd\\xec\\x7f\\xf3\\x18\\xbd\\x01\\x1a\\xd7^\\xfd\\xf6l\\xab\\x10\\xad\\xfe\\x14-\\x17\\x82\\x81s\\x99\\x10\\x95\\x19\\xa7\\xc8\\xe8\\xbb\\x98k*\\x15!U\\xeb&\\x12Y\\xb3\\x89\\x84\\x91\\xbb\\xb6v\\xb7o\\x0d\\xac\\xd1\\xd8\\x94\\xdedR\\xea\\x89\\xab\\x0bk\\x0c\\x87\\x1cM-g\\xea\\xc6\\xc4p\\xb2\\x19\\x91\\x0fT\\x13X8\\xa2^\\xcc\\xb3\\xf46\\xe1\\xa8\\xaa\\xd3\\x9f 4q\\xfe\\xb7\\xb7\\xf4\\x8b4\\x9a2a\\xc8vq\\xf6\\xfb\\xdf\\xbf9\\x1d\\x0b\\xeb\\x8bs|\\xf5\\xf1\\xfd\\xab\\xe3\\x0b\\xfdU3^\\x98\\x16\\xc5\\xbf\\x14Z\\xacUh\\x86Flh\\xb1=\\\"\\xb4\\x11\\xa5\\xed\\x91q\\xd2s\\x0e\\x9e\\xd9\t\t*PrH\\x16\\xe9\\xf5\\xf5\\xe2\\x9b\\xcc\\xd1\\x08\\xe5\\xe5}\\xac\\xa1\\x88e\\x93\\x064\\xf9X@\\x8ep\\xc9&\\x96\\xbf\\xfcH\\xcc\\xcc\\xd3W\\xa0D\\x9br\\xb2m\\xba\\x86\\x1a\\xfd\\xbf\\x07\\xf6\\x97\\xafK;\\xadL}D\\x07AG\\x03\\xfd<\\xc3\\x8bmi\\xae\\xcf\\x92\\x9b\\x9aA\\x7f!\\xcd\\x17\\x95\\xc9?\\x92\\x1b\\xe4e\\x95}?\\xe7\\xbcr\\xcd\\xe0\\x7f\\x95\\xe6\\xc20[\\xfdz\\x1bq\\xc1M\\xf5%\\xed\\xb7e1\\x9e<zu\\x11\\xe1\\x01}$\\xeb\\xaf\\xde\\x185'\\xd1d.\\\"P(g\\x84\\xfcu\\xf2&\\xba\\xc2J[\\x03\\xd5~\\x9c|2\\xbf\\xe4\\xef\\xa4\\xc4\\xa6\\xf7\\xb3\\xe0\\xdf~L\\x96\\x98\\nxz\\x8ewy\\xfc+cE\\x009\\x87\\xcayv\\xb5\\xce\\xe7\\xef\\xcbQ;\\xd7Z\\x83\\x95\\xb0Vva\\xb8\\xc7\\xe5N\\xe2l\\x95\t\\x14\\x865\\xa0\\xd8\\xd5\\xe4QnA\\xae\\xbe7\\x02\\x02\\xdc\\xfaV5'\\xd8\\xb8ek-)'m\\x0d,~\\x10\\xda\\xd3g\\x01\\xbd\\xbc\\x15V\\xb8\\xc6\\x83\\x0b\\x7f\\xce\\x8a6\\xdaVsG\\xaaPFwH:\\x04\\xa6\\x1cs\\xabr\\x1c^\\xdft\\xa1-\\xcbG\\x18\\xc6\\xb7h\\x1c\\xdd\\xefY'%#\\x83\\x17\\xf6\\xc0\\xe0\\xc8\\xe8\\xac\\x16\\xab\\\"\\xdc<\\x02\\xc0\\xafpB\\xe6\\xac8\\xaf)\\x95\\xda\\xd6\\xa6\\x85\\xca\\x13\\xfa\\x80\\x92\\xca\\xd3\\x8cn]\\xa7\\xf51[8oQ\\x93h\\xc9\\xf2U4!\\xb9S'+\\\"g)5\\xc8?\\xa4\\xd3;\\x8c\\xb0\\xdc\\xf1\\xb6\\x07\\xe1f\\x0f'\\x91\\x86G\\xc5\\xfc-*j\\xc8\\xdb\\x1e\\x17\\x8c\\x08\\x9b\\xb0\\x16\\x18\\xc9\\xd5sY$\\x95\\xc3\\xa0.\\x17:\\x02F\\x92\\xd5\\x0b\\x11\\x9b\\xe0\\xef\\x05\\x1a\\xe2&\\xe2\\xef\\n\\x1a!\\xfd\\xfe\\x02\\xb0\\xb1\\xcb\\xc4\\xcd\\xdfrs\\x985\\xb1z\\xf7\\x85\\xd9\\x10\\x1c\\xb7#J/Ih\\xedZ\\x80)\\xf6\\xf7\\x1f\\xa3,\\x8e\\xae\\x16l\\x93=(,J]\\xd0,\\xa9\\x82\\x0b\\xa4\\x9f\\x18!?\\xa7j\\x996\\x02u\\x13\\x0f\\xeb\\xa2n|\\xecNXk$\\xcd\\x01\\xf0O\\xec\\x8e\\xa4\\xaa \\xd6q\\xa8\\xe5\\x96T\\x8fs%\\x0c\\xc9F\\xe7\\xa6\\xcfO\\xdf\\x9c\\x9e\\\\\\x9c\\xbe\\x1a\\x9f\\x9f~\\xf8\\xe3\\xe9\\x07L\\xe1\\x1a\\xe5{\\xe3\\x9c\\x15c1\\x07\\xd3\\xc4'\\xd5?\\xffp\\xfa\\x1f\\x1fO\\xcf/\\xc6?\\x9c\\xbd\\xfa\\xd3\\xf8\\x8f\\xc7o>\\x9e\\xd6Z\\x90j\\xe3\\xf1U:\\xbd\\x1b#\\xf6y\\xb6,e5&\\xb3T\\x8d/\\xfe\\xf4\\x9enN2Vx\\xbfk4\\x18\\xd5\\x1b<\\x7f\\x7f\\xf6\\xee\\xfc\\xb4\\xa9E\\xb1\\xd3\\x9b\\x9a\\\\\\xd7\\xe1\\xc5\\xc14\\xfe\\xe3\\xf1\\x87\\xd7\\xc7?\\xbc9%\\xe6,\\xa06\\xbe\\x91\\x08/\\xa7\\x8d-\\xde\\xeb\\xd8\\xbf\\xd1\\x02\\x95R1\\xc2\\x12\\x7f\\xb7O\\xba\\xc2\\x0e\\x1e\\x9b\\xf1\\xad\\x84/\\xecc\\xb3\\xbap\\x85}b\\xbe\\x16\\xee$\\xfb\\x8f\\xcd\\xf0\\xa8\\x0b\\xe19kjK&b,\\xfbf\\xf5\\x99\\x18\\xcc\\xb3\\xc0\\xf7\\xe2\\x82e\\x11Fv\\xaaWYq\\xfe\\xdf\\x1f]b,\\x14\\x8c\\x9c\\x91p\\x8e\\x1a\\xe2\\x04\\xe4K\\xdf\\xf4ui\\x94\\xd2@Sl\\xcc\\xe3\\xbc\\xbe-*\\xc8:\\xdd}Q\\xfa\\x9a\\x87\\xca\\xd3\\xd5l>\\xf7\\x13\\xacdFQ\\xe2+u\\x17\\xc2U\\x08c\\xe1\\xea\\xda\\xae\\xe0\\xc50\\x10\\x98 \\x0b\\xf3R\\x9c\\x94\\x9e\\x8e'V~Z\\xf5tr;\\x15148\\xe4\\x1a\\xf2\\xad\\x89J\\x88\\x9fM\\xd5\\x80\\x96{\\x1b\\xebk\\xdf$\\xec\\x16\\x12\\xe9\\xa7\\xee\\xc8\\xe7\\xa6\\x9eMT\\xa9\\x9b\\x8c\\xa8\\xfbH\\xec\\xbe\\x08\\xf3\\x13\\xf4P\\xc4\\x10\\xb5\\xaf\\x15B\\xdb\\x95>K\\x07 \\x0e[8<\\xa4n\\xe3\\xce\\x85\\xd8k\\xbd?\\x11\\xdc\\x02\\x1d#\\x8e?\\x9f\\xe0\\x10NF3\\xcc\\xfas2\\xf2\\xfe\\xfd\\xdf\\xcb\\x8d\\x85\\xafn8>\\x9d\\x8cn.\\xed/\\x8f\\xe1\\x10>\\xa1\\xc3\\xb4\\x7fC\\xdc|\\x9d\\xc1!\\xdc\\xc0\\x11|\\x86#\\xb8\\xf5=\\x96\\x14Y\\xccr/\\x80!\\x1c\\x97~\\xd9\\xf6g\\xe8\\xd4\\x85\\xb1&\\x84~\\x1f\\xfb\\xef\\xc9\\xafyoF\\x82@\\x8e\\xf5\\xefQ\\x1f?\\x86C\\x98\\xf8\\xefeT6v\\x0b,\\x08\\x02\\x8c\\xe5i\\x86\\xbc\\xe2\\xd5\\xc7\\x98\\xb3\\x13?\\\\\\xf8\\xe3\\x10N\\xe55\\xb7\\xb8\\x93S\\xa8\\xa0\\xdf1\\x8c%\\x94\\\"^}\\x16\\xc24\\x08B\\xf8\\xcc[\\xc0\\xbc_\\xe5\\x02\\xf1\\x1e?\\x89X\t\\xbc\\xf5s\\x19i\\xf4\\xb8#\\x95\\xf9T\\x05c0\\xb4i8\\xba\\xef\\xbf\\x87\\xadk\\x0c>\\x8f[}\\xeb\\\\,\\x90\\x1a\\xda\t\\x0e\\xed8\\x08a=*\\xb8\\xa8z\\xcc\\xff:\\xe5\\x7fMC |\\xa49\\xfc\\xee\\x9c\\xf6ObNC\\\\D\\xbej\\xb7\\xbe\\x9a\\xa6\\xe3\\xaeS\\xc4Y^V\\xd5\\x91n8*\\xcbU\\x1d\\xc2\\x19\\xb1U\\xe0\\x9a\\xdeV(\\xd8_I\\x1f}\\xfc\\xff\\x84O=\\xe6S\\xbf\\n\\xe1ntuI\\\\\\xa8\\xa2\\x03x\\xea\\xa7\\xbd\\xf7\\xb0\\x0di\\xefG\\xf8\\x1d\\x08o\\xff\\xf3\\x00\\xe9\\xef\\x1d\\x1d\\x80e\\xc3(\\xf7\\xfa)\\xb0\\x95\\xf8\\xfb\\xfb\\xa8\\xd5\\xddJ\\xfc\\xc7\\x83\\xc0\\x9dQP\\xf6\\xf5\\x04\\xb6\\x0e\\x1d\\x829?\\x80\\x0f\\x02\\x99\\x9f>\\x04/\\xb2ds\\x10\\xc9w\\x86\\xedDL\\xf5f\\x83\\xdc\\xc0\\xb6^\\xe5\\\\!\\xefg:\\x07\\xdaxLG\\xc9|B\\xe5\\x85\\xe1l\\xc1^\\xe0[9cd\\xb0\\x8d\\x83A\\xe0{\\xafO\\xc7\\xef?\\x9c]\\x9cy\\xf7\\x0e\\xb0\\x11\\\"g\\x92\\x92\\x894\\x84\\xc2\\xd2z\\xbdp\\xc5M\\xc3P\\x82\\xeb\\x00\\x12\\x0ci\\x89z{\\x7f\\x8d\\xb0\\xc0\\xa8\\x902\\xc4/\\xf1\\xe1\\xf32 \\x0e\\xbc\\x84\\xfcy \\xbf\\xe3G\\xc0(\\xdf\\xde\\xbe\\x14f2\\xff\\x1d\\xfb\\x0bl\\xed\\xcb\\x97\\xaa5\\x1a=\\xcd\\xa8\\xe2\\x9d\\x17hw\\x10\\xf4T\\nb\\x1a\\xa4\\x99\\xb8\\x8fP\\x95d\\xd0\\xdd\\xcdzq\\xa1\\x01u\\x0bb/\\xb5\\x8d\\x0e&\\x1d\\xa7GN\\x06\\xd3\\xac\\x07\\x8btj\\xe4$\\x8a\\x08\\xcdy\\x8ca\\xe8F\\xf1%\\x0c\\xe9\\x13\\xc1\\x0en\\xaf\\x07\t\\xad\\x97\\x1e\\x19\\x91\\xef\\xab\\xc3hX\\xffL\\x86\\x88:\\x82\\x08\\x86T\\xe4\\xf8\\xce\\xd0\\xdf\\xdb#\\xa0\\x9f\\x8d\\xbc\\xf1x\\x92fl\\xe7/\\xf98\\x9fG\\x19\\x9b\\x8e\\xc7\\xe2\\xa8\\xf7]e\\x87\\xf0\\xb7\\xaf\\xad\\x1b\\xcf\\x01\\xd2t$r8\\xfa\\xa9\\xd0\\x9c\\xfe\\xedk\\xd02\\x1f\\x17=\\xbd\\x9fF\\x91%\\xeb%\\xcb\\xb8\\xf04\\x84-\\x7f\\x00\\xdf\\x03E\\x01\\x94\\xf7\\xb4\\xaa\\xb7\\xeb\\xa8w\\x9b\\xc5\\x85\\xaa\\xb3\\xef\\xa8\\xa3\\x14#\\xb5\\x82o\\xba\\xd8\\xa9Z.\\xb7\\xef\\xfe\\xe3\\xc0\\xdf\\xd2\\xb5\\xd4\\xfc\\xddA\\xe0\\xcbh\\xbf\\xe0\\x89?\\xbc\\xa6$\\x1a\\xa8g\\x1e\\x17p\\x08\\xd2\\xa2\\xaeT\\xca\\x8f\\xe3\\xfa\\xcdG\\xe8>U\\xf8\\x98\\x98L}/\\xda\\xb3!Rj\\xe0\\xc71I\\xc5\\x12xyXQ\\xc6#b\\x15%L]<\\xe34M\\x98\\x9d\\xe0\\x15\\x86\\x18\\xcc\\x0d2\\x91\\x7f\\xa0\\x9a\\xdb\\xf6a\\x19V\\x8f:Feg\\x04\\xaf,\\xfb\\x19\\xd4\\xfb\\xd1\\x10z\\xc3cr0\\xa0\\x03R=\\xde\\xbb\\xefv++4\\x05\\xd3\\x8fC\\x88\\xc4y(\\x17>\\xf5\\x0bS&V\\x0f\\x1e\\x05~\\xe2(\\x15A\\xa6]\\xd1\\xd2\\xe4\\x98rx\\x01}\\xe1\\xd7\\xfeR\\xb8V28\\x02\\xcf+\\x85\\x00\\xbeP1\\xb6\\xa4\\x05/\\xcc\\x83\\x00^\\xc0\\xe3\\xc7\\xbb\\xcf\\x0e\\x90\\xbd\\x83\\x97\\xf0\\xf8`o\\xf0L4\\xb4\\x0d\\x03\\xe9\\xa8\\xc9iKd}\\xcc+\\x88\\x06\\x0e\\xf6v\\xb1\\xf3\\x887\\xf0do\\x7fO\\xf6/\\xeacG0\\xc44H\\xe2m\\xbe\\x88'\\xcc\\xcfC\\xec\\x04s\\xd5D\\xb0#\\x9b\\xd9\\xe6\\xe3\\xdc\\x91\\x83z\\xf1\\x02\\x06\\xfd\\x00\\xb6\\xe1\\xe0\\xf1\\xe3\\xbd\\x83_v\\xb7\\x9b\\xfa\\x11\\xa9\\xab1\\xb1G\\x86-3\\xe9\\xbeT\\xd5\\x98\\x1a\\x9c\\xb5\\x0c\\xf1a\\x9e\\xc6RWs@\\xebj\\x06\\x96ng\\\"\\xeb\\x9b\\x83\\x94\\xca\\x9a'\\xffT\\xd6\\x10\\xcf?\\x955\\xfa\\xf3Oe\\x0d>\\xffT\\xd6\\xfcSY\\xf3Oe\\xcd/\\xa6\\xacqjj\\x06duw\\x18\\xd1\\x03\\xc7\\xdd\\xc9\\xe3\\xbe\\x83o\\xd3\\xc2\\xb3w\\x12DQ\\xfcL\\xdb$\\xa5\\x0d\\xf9\\xca\\xb7Q1\\xef-\\xa3\\xcf6\\xcf J\\xe2\\xa4\\xc3\t\\xe9\\x18\\xb0d\\xb4\\x19\\xf2\\\\}8\\xe2b4l\\x83\\n\\xc2\\x19\\xfb\\xcc\\x88\\xc9\\x0f\\x1b\\xac\\x8f\\x9e\\xc8#4\\xb2\\x96\\xc4\\xb9\\x9e1c%_\\xbf\\xceOK\\xb9/,\\xd27\\xe9$Z0)\\x1b\\x95)Qpo\\x9c\\xcd\\xbc^\\xbeZ\\xc4\\x85\\xef\\x85\\xde\\x86\\xec\\xfb\\xde\\xde\\xaf\\xa2Dq\\x04\\xad\\xdd\\xa5\\x95i\\xc8o\\xe5+6A\\xfa}\\x8f\\x15\\x95\\xea\\xb2H.hk\\xca\\x14\\xcd\\x13,\\xc2CH\\xfd\\x16Q\\x923?\\nF\\xf1e \\x13\\xef\\xa4z\\x92\\xf3\\xeeh-b\\x17\\x87J)h\\xddR\\n^v\\xff\\x89\t\\xab\\\\nL\\x07/{`\\xf2\\xc4\\x13Zs\\xc2Y\\xd9\\x89\\xca\\xcdl\\xb3\\xb0\\x93^\\xce\\x8a\\xd7\\xcb%\\x9b\\xc6Q\\xc1l~u\\xd2\\x9b,X\\x949j\\xcc\\xb1\\xc6[a4\\x7f2\\x8f\\x92\\x84\\x19~\\x867X\\xe3U\\x9c\\xaf\\xa2bb\\x98},m\\xe5\\xe55\\x11\\xca\\xe7\\xae\\xed@CA\\x1e\\x0ea\\x9b\\x9fe6I\\xe6'\\xcf\\xb5\\x99:\\x85\\xce\\x90\\x01\\x9a\\xe1\\xc5\\xb5\\x93\\x9b\\x95A\\xd2x\\x85\\x10\\n\\x9f\\xf0\t\\xa8\\xbd1\\xa6s\\xd5\\xcad\\xdf\\xc9\\\\ \\xc2Q\\xa5\\xdeV5\\\"<\\x96\\xa7(D\\xae\\x1a\\x9b\\xac\\xa5\\xfd\\x18]\\n\\xad\\xed\\xe09D\\xd95n\\xed\\xbcR\\xec&\\xcf\\x03\\x95C\\xa3,\\x1d%\\xdb\\xdb\\xe6I'\\xf7\\xcf\\xf5h{{y\\xd9\\xb6<k\\x9f\\xd6@\\xca\\xf8\\x8a?V\\x03\\xb7\\xad\\xb0C\\xc8\\xfce\\x10\\xc2\\xf2;\\xedUs\\xb8/mu\\xf4\\x8f<\\xb9\\x05p\\x08\\x89\\xff\\xecY\\xe0\\xcf\\x024To\\x84\\x1dro\\x17\\xf1\\xe4\\x93\\x1f\\xf9wh(>\\xd0\\x02(\\x7f\\xe5\\x0c&_\\x87\\x9b^\\x92\\xde\\xb6\\xb6\\x86\\xb5\\x9c\\x0d\\xcd\\xe1H(\\x13|$\\x93\\xec\\x16\\xe6A\\x8f\\xd3\\xbd\\xdd\\x10R\\xfcc\\xd0K\\x93*\\xb4\\xf9\\x95\\x08T\\x1f\\xf9qo\\x95\\xe6\\x85\\xdc\\x85Hk\\x06\\x18\\xcfi\\xd2\\x8b\\xa6\\xd3\\xd3\\x1b\\x96\\x14o\\xe2\\xbc`\tC\\x9aN.\\x86\\xd6\\x00r{\\x93^\\xbc\\xe4=\\x9e\\xa3\\x17P\\xceG\\xd6<\\xb5\\x89>\\x06<@=/\\x04\\xefw\\xf54\\x07\\xf6\\x88|ON\\xc8C\\xaejK\\x8c\\x1c]\\xa5\\xd2$c\\xd1\\xf4\\x0e\\x03\\xee\\x89p|(]/|O\\xf8&a\\xaa\\x15\\xf7\\x88\\xf2^\\xb4Z\\xb1d\\x8a\\xf9\\xe8}\\xed\\xab\\xa0g\\xb7\\xdc\\x86\\xc3y/c\\xcb\\xf4\\x86\\x89\\xc6\\x90g\\x0e\\xcb}\\xea\\xf4\\x1c\\x80\\xa6\\xcc\\x959+.\\xe2%K\\xd7\\x85\\x86\\x11\\x9c\\xe9\\xa8\\xbe\\x0f\\xeaF\\xb3\\xd6\\xf7V\\xa4Y\\xa4\\xd5C\\x98VM\\xe0_]\\xb9\\x15\\xf7`\\x1b\\x9doh:\\x8a\\xeaF\\x9a\\x1f\\xbf\\x19\\x02k'\\x9b]\\x1cv\\xdc]\\x13\\\"\\x1f\\xc8\\xae\\xdb:n\\x81\\xde\\xa6\\xec\\xce\\x13:D\\xff\\xe0I{V3G\\x9e\\x8f\\x0cie\\xea\\x17vj8\\x91\\x90\\xa8-\\xb5q\\xdc\\x9b\\xb9\\xb2\\xfe\\xfa\\xfd\\x10\\x92^\\xc6\\xf2tq\\xc3\\x02\\x8cl\\x8f\\xa9\\xfc\\x96\\xb1\\x96\\xdfjC\\xc0X\\x10\\x10\\x80yF+\\x01\\x91\\x0dDg\\x86v&\\x90\\xe2\\x00\\xe9|\\xf3\\x98\\xc7\\x8f\\xcb\\xc9Z\\xdaT\\x91wF\\xb2x[[\\x9c\\xc9\\xf3>\\xb0\\xeb\\xd3\\xcf+\\xa4\\x8di-%\\xe6\\x86s\\xb6\\xf8<\\x95\\xb0\\x81\\x9c\\xf3\\xe3{\\xe1\\x82ZN?\\xed\\xc9\\xab7\\x11\\x9aA^\\\\\\x89w\\x9cK\\xb10>\\\"\\xc2\\\"F\\xd2A\\xc0O\\xf0\\x161\\xeb\\x9d\\xa3C(\\x17ac\\xb7\\x05\\x00\\x88l\\x9e\\xb6\\nA&\\x8c\\xf1B\\x88\\xee\\x0d\\xc4g\\xae\\xdb\\x84Zf\\x97Nr\\xa9\\xa6\\xeb\\xc9\\xea\\xc9\\xc57\\x1a\\xd1\\xee\\x9eC\\xa69\\xd8Cyc\\x12\\x15\\xbe'\\xf8)O0\\x1dB\\xc2\\xab\\x875\\x9e\\xd5\\xeez5\\xbe\\xf4]\\xb4d\\xbf\\x8e\\x9c\\xbdk\\\"\\xa2\\xdc\\x934~Z\\xe6\\x0fR\\x9aylj\\xce\\x854c\\xdd\\x9eKaf\\xcf\\x14Z\\x16.@\\xbc\\x92\\x0e\\xc8\\xba\\xe4&\\xe0&lS\\x8e`\\x01-\tpeF$\\xcc\\x98'\\xae\\xf9\\\"\\xbf\\x90\\xda\\xb7<h>\\xd2\\xccL|`\\x1eH_\\xad\\xaedN\\xa5\\x92\\xf4\\xa6\\xfeV\\xd6\\x9bii\\xfdB`\\xa3\\xe2\\xb2m\\xc5\\xcc\\xe5Jp\\xa7\\x96\\xb1C\\x1el;\\xa8D\\xae\\xf8\\xc9\\xa5\\xe0\\x8a-~\\xa6\\x13R\\xb9Y\\x94\\xd2\\xdd3\\xf1\\x1f\\xef\\x99\\x18Ty\\xeb\\xd4\\xfdr\\xbat\\xd9v\\xed\\xf4\\xec\\x80\\xde\\xa4O\\xcc\\xf7\\xb1c3\\x08\\xf4\\xb6\\xac=\\xe4\\xbd\\x93\\x95tGS\\x94Ey\\x1e_;\\xd4Q[\\xb8\\xb5[L\\xaa\\x944KE\\xb4-\\x1c\\xef9\\x92\\x9c\\xdf-\\xaf\\xd2\\x05\\x15[\\x06\\xb9\\xe9\\xe8j2e\\xb3\\xeby\\xfc\\x97O\\x8be\\x92\\xae\\xfe+\\xcb\\x0b\\x8f<)e:\\xd1'!dJ\\xbf\\xe4\\x05\\xbdY\\x9a\\x9dF\\xad\\xd1\\x1a\\nq\\x86\\x18\\x0e\\xadA(,\\xc4r\\xe1l\\x1b\\xf0\\x0e\\xca\\xf3I\\xdc\\x95\\x89\\xa2\\\"\\x08d\\x98L\\x0f\\x93\\xeeVn\\x16_\\xeb\\xcc~\\x9b\\xd7\\\\\\x84{\\x9e\\xc3\\xdc\\x94rC\\xa49\\x83PFK\\x9f\\x85\\xa8!\\x89{\\xb3\\xe7\\x90\\xc3KX<\\xb7\\xf9\\xd2\\xb2\\xe5\\x95\\x90=\\xd7\\x9ap\\xbc\\xe0\\xc2q(\\x14!\\\\\\xfe\\xf3\\xa7\\xe510\\xf1\\xa7B\\x98\\xf1\\xa7A\\x88\\x8a\\x90y9\\x86\\xa5H\\xc2u\\x03/a\\xf9<\\x00I&\\xa6!\\xead\\xe6\\xa3eiQ\\x95\\x8cV\\xa8S\\x1f\\xad\\x1c2\\xb8\\x96a\\x0d\\x86\\xdd\\xb2J\\xb5\\xed\\x9eA\\x9f\\xe6\\xd7\\x06\\xa6nI\\xec\\x9e\\xdd\\x03j\\xf7\\xf8\\xbc\\xe0\\x80s\\x8f\\xfe`\\xf7 \\xa8\\xd9{<\\xc5\\xd7\\x8f\\xf7\\x1e\\x93)\\x1a\\xd6\\xd4\\x98\\xa1t\\xd7\\xcc\\xd2U\\xae\\xb9\\xfdV)\\xd4\\x95_o\\xc6f\\xb9\\xcc\\xe2\\xc7\\x7f\\n\\xafh\\x9c\\x19\\xea\\xef5Jc\\xf7\\x9d\\xff\\x1d\\xfb^\\xd4\\xdd\\xa8\\xd7\\x9aof\\x9c\\x7f`\\xd1\\xa4\\xd0\\xf3\\x10\\xf2\\xed\\xa2W\\xc9e>\\xfd6\\x9e\\xb1\\x8c\\x85e\\xe4\\x82wg\\x89\\xc7\\xbc\\xbe[\\x87e\\xca\\xf8\\xa7\\x8f\\xbd\\xa0>\\xbf\\x9e\\x91\\xd3\\xbf\\xbc\\xaf\\x0ceD\\x05\\xa2\\xae\\xcab\\xafR\\xb7\\x85\\xe0\\xa9)\\xd4u\\x06\\xfa$gi6a\\x1f\\xed\\x00\\x01\\xe4j\\x19\\x1d\\xfeX}\\xab\\x04x\\xd6qp,\\x04O\\xeb\\xba>\\xbeE-\\xab\\xf1Z\\xcfj\\x9c\\xd7\\xf3#\\xb3[X\\xd4^\\x1a)\\x97s.\\xd3\\xe5z\\x03ZkA\\xfd\\xcb8\\x7f\\xbf\\xce\\x98\\x85\\x15[\\xfd&\\x95AY\\xd3r\\xe5\\xe2\\x8di\\xa5\\xb9\\x86\\xa8p_\\x82\\x92\\xf8\\xcf\\x02\\x9b\\xbc\\x18<Z\\xfe\\x16\\x930O\\x9b4%PQ;\\xd3\\x80\\xa9>\\x0bc\\xf5l\\xfe\\x90\\xae\\xafa\\x861\\x0c\\xba\\xfe\\x07\\x91\\xcb\\x13q\\xb5k\\x1fjk\\x10\\xf5+X;nb\\xee\\xbf\\x04\\n\\xe8z\\xc2\\xb0\\x07n\\x9aT'\\n^\\x84\\xef.\\xf1\\x17\\xdf\\xb8\\xf5_\\xbe\\x97q\\xdc\\xed1q\\xaf\\xe4\\xa1\\xc9\\xf0A\\x7f\\xd0\\xdf\\xfb\\xc5F\\x9a\\xf8\\x8f\\xf7\\xefm\\x9d\\x86\\xe2\\xd6\\xd6`C\\xd6\\x98\\x1eP\\xed\\x82\\xf0\\xfc\\xf4\\xe4\\xc3\\xe9\\xc5\\xf8\\xd5\\xd9\\xf8\\xdd\\xd9\\xc5\\xf8\\xfd\\xf1\\xf9\\xf9\\xf8\\xe2\\xa7\\xd7\\xe7\\xe3\\xb3\\x0f\\xe3?\\x9d}\\x1c\\xff\\xfc\\xfa\\xcd\\x9b\\xf1\\x0f\\xa7\\xe3\\x1f_\\x7f8}\\xf5\\x0d\\xees\\x0f\\xe65O\\xc1u\\xd7\\x12\\x0f\\xa51\\xe0\\x01\\xed\\x92\\xf7\\xd82\\xd0\\x92v^\\x074\\xc3\\xbd\\xfb\\xe4q\\xdd^\\xf4\\xc9\\xbe\\xfe\\xbb\\x87)\\x13=\\x91k\\xfe\\xbcH3\\xe65\\x98}\\xaa\\x05\\xed]i\\xb3\\n\\xabV\\xd2\\xe5U\\x9c\\xb0\\x0fl\\xba\\x9e\\xa0\\xd7gkKi\\xcd\\xdb\\xa0j\\xe9*N\\xa6\\\"\\x8c\\xd0\t\\x1fY\\xda\\xa9\\xb1\\xd8\\xd1X\\xb4Z-\\xee\\xde\\xc6\\xd3\\xe9\\x82\\xddF\\x9d&\\x189Z\\x9ap2\\x9fwia\\xbd\\xb1\\x1b\\x85\\xe3 Ps\\xe8\\xd0g\\\\\\x1bs\\xd1\\xd3o\\xcb\\x80\\xc9|\\xb0V\\xf46\\x8e\\x8aFJO\\x92.a\\xf4\\xb3\\xda\\xad/\\xe7\\xb1\\x11\\xf9\\xc4\\xb5\\x98(38m-\\x15\\xf1\\x16\\xff\\x88:\\x9f0\\xa5/\\xc5BED*\\xe5\\xd3\\xcf+\\x8c\\xf9\\x00\\xc5\\x9c\\x01K\\xe6Q2a\\x19\\x14)\\\\1\\x88\\xca\\xe9\\xf6\\xa8\\xe8\\x8ajq}\\x16\\x08C\\xd9Z\\x0d[+A\\x8e\\xa9h\\x1bS&\\xb0\\xbf}H72\\x99/\\xa1g\\xc6{j\\xfb\\xf5\\x84pM\\xe1\\xef\\xf1\\x9e\\xda~\\xbd\\x92\\xa7W\\xad\\xa0D\\x88)\\xa9\\x8e\\x9c\\xe1\\xda\\x8a\\x1c(\\xe2\\xfa[X\\xc6\\x06&\\xb0\\xe8F\\xe7MVS\\x8bNM\\xdc\\xd0L\\x8csAX\\xd3\\x82,\\xd4\\xe5]\\xebj\\x80v}M\\xa5O\\x95s\\x98\\xfaA\\x08\\xb32\\x9a\\x8dU\\x0d\\xb4\\xa94\\xda(\\x8a\\xd4\\xdb\\x0d\\x15@\\xea,\\xb6\\x06!\\xef\\xd5\\x1e\\x91\\xfe(\\xd9}&\\xb23\\x9f\\xd9W\\x14\\xe63C\\xfd\\xc4\\x84\\xf9I\\x08\\x03\\xda\\x8a\\x0b\\xac]A\\xbfu\\xad\\xe4\\xd2\\xbd\\x92[Y/B;\\x02k\\xe9d\\xf08X\\xae\\xf3\\x82/\\x19\\xc6\\xe2\\x05!x\\xe5=\\xf8\\x983\\x98\\xac\\xf3\\\"]\\xc2\\xb2\\xa4\\xe8\\xa8e\\x88\\xf2\\xbbd\\x02\\x91\\xf8\\x9c\\\\^#-:\\xeb\\xa1l`\\x0d\\xe1\\xdf\\xca!Dw\\x98\\xb2}\\x1e\\xdd0\\x88\\x12(\\x83\\x1d\\x83\\x87jiPvG=\\xf8\\x89W\\xb9K\\xd7\\xb0\\x8c\\xf3|\\xc5\\x16\\x0b6\\x85\\x08PD\\x89\\x92\\xe2\\xe8\\xdf\\x1c\\xa3Y\\x11\\x00P\\xa7g\\xd9\\xfdT\\x1a\\x804\\xce\\xcd\\x1dFs%E\\x1bNSr\\x7fA\\x9a\\xc2~\\x85Y\\x9cD\\x8bEc\\x1b\\x03\\xfb3\\x9b|\\xe8\\xf6\\x12\\x9c\\\\\\xcd\\xc4\\xd9 \\x93\\xa6k\\x89\\xe1\\xb7\\xb7]\\xc8\\x7f#3\\xb6\\x17\\xa3\\xc4aD\\x92\\xb6^\\x80\\x82\\xa6\\x92\\xfb\\xce]m\\xe9\\x0c\\xc8\\x15\\xf7^\\xbf{}Q\\xff\\x94V\\\"\\xadI\\xc3L\\xb5hd\\xec\\xf1|}\\x95O\\xb2\\xf8\\x8a\\x91\\x11\\x96\\xafKq\\x87\\n\\xf5\\\"\\xe4'\\x89$m\\x92\\x1f\\xdc\\x9bp\\xf2\\x93,a\\x9f\\x8b\\x0f]O3\\xf5H\\x1d\\x0f\\x05Y\\xf58!\\xac\\x1e*Th})BX\\x8f\\xd2^\\xd4j?sS\\xf9)\\x11I\\xacu+Fz\\xb8\\xdaJ\\xb5C\\x1a\\x14\\xb4\t5\\x91\\x0e\\xeb\\x8b\\xbb\\x15\\xa3\\xe0\\x9d^\\xc9t\\x89\\x12\\xd8\\x8a\\xec!\\xac\\x9d=\\x96\\xe4\\xb6\\xddJ\\x9f\\x95\\xf6\\xd4\\xe2/\\x7fn\\x9e\\xeb\\xfaC\\x93~@)\\xa2\\xe1pQ\\xa2Ma9\\xc3\\xeaO\\xa3\\x0d\\x82z\\xd6\\x89\\x06\\x7f;l\\x90z\\xba\\x9cQ\\xf8&\\xe8\\x843P\\x0d\\xcf\\xf2&\\x01\\x81|\\xcc\\xc2\\xc6\\xf2\\x05\\x11)\\x87\\x0b]\\xb4K\\xecc\\xeb\\x0e0&Q\\x91\\xef\\x94!x\\xff\\xfe\\xef\\x9c\\xb9\\xfc\\xfc\\x88\\xff\\xac\\x07\\x93\\xff\\x06\\x89Z\\x17\\xf1\\x1d~i\\xd6\\x9d\\x8d\\x14E\\x1f\\x9bWB\\\\\\x1a(o\\xc7\\x84\\xd8|I\\x84\\xc2Qfk.\\x9f\\x87\\x9cp\\xfa\\xad\\xd7\\x10\\x1eh\\xa5Mo\\xad\\x8c\\x1f;\\xb9a\\xb3X\\xaf!\\x92\\xb9\\xe2\\xb5\\x81\\xe8\\xa6v\\xc1\\x1c5\\xea4\\x90{\\x89\\x91{\\x01\\xcc\\xd7\\x8a\\x7fm\\xa1hS*\\xdal^\\xbc\\xc0\\x1b\\x93\\xc8b\\xcbxs\\xa8$\\xe6\\x1cIQ5\\xd1\\xb7\\x9bH\\x90\\x1d\\x17\\x8e\\x07a\\xcd:\\xda\\xb3mY\\xc8\\xa3\\xca-\\xd7%\\xba+2\\xbe\\x91\\xf0I\\x02^uV\\xa1\\xf7\\x83 \\xda\\xe3~\\xd0\\x8bzB\\xa3e\\x82~cm\\xd5\\xa6\\xf5\\x9dkm.u\\xc9\\xcc0\\xf2.\\xacP\\x97\\xc7x_\\xa6q9exIq\\x19\\xa8Y\\x83^\\xda\\x8b/xQ\\xc5\\x18\\x95\\x08\\xd0|\\xda\\xd0\\xac\\x8d\\xdd\\xf8\\x80n\\xbc\\x18\\xf5/I\\x04)zBz\\xf5k\\xb0l\\x18AWB\\xca\\xfc\\xa2\\x87j\\x18\\xc9\\x80\\x87\\x15T\\x88\\x13\\xc88\\xec\\x1fDq\\xf8`J\\xbc\\x10\\n\\x15\\x00\\xb9\\x8b\\xf2S\\\\\\x10\\xd5(\\xb7&}\\xc0\\x11xq\\x12\\x17q\\xb4\\x107P\\n,*\\xabr\\x91\\x82\\xae\\x9b\\x83!\\xa6\\x1c\\xbf\\x89\\xd3u.\\xd3)gl\\xc2\\xe2\\x1b6\\x85\\xab;]\\xffP\\x8b\\xec\\xaakM\\xcb\\xd1w\\x81e\\xb5g\\x9f8\\x9cQ-\\xdb{y\\xb1i\\x1e\\x19\\xca\\x84\\x9frG\\x1d\\xc0#\\xd3\\x98]\\xb8Q\\x1cA=b\\x02\\xe5\\x90\\x86r\\x0d\\x1cA^\\x1e\\x07e\\xc5j\\xf5)}5GJ\\x8a\\xba\\x13y\\x06\\n\\x97Q \\xaf\\x1f\\xfb5\\xcb\\x95\\x82KXh\\xc3kW\\x8d\\xf4\\xaa\\x0bL\\xee!\\xe8y\\xc0\\x17\\xd6\\xa3i~A4\\xa6\\x08z_\\x18\\x9fp\\x1c\\xe3@,\\xf8\\xaf\\x9d5\\xc7\\xaa\\x9d>G\\x96d\\xb3\\xadS\\xed{\\xa7\\xbd\\x9c\\x96\\x0f\\xa8\\x84\\x0e\\x9e>\\xe2\\x08\\x92\\xb6t\\x87\\xa5G\\x1f\\xbe\\xae\\x0f^_\\x0cm\\x80Ay\\xb6%\\xfe\\x9e2\\xf0\\xde\\xdc\\xfc\\xb6\\xcd\\xbcag l\\xbf\\xe5\\xa9\\x8b\\xb6\\xf4}\\x18j\\xb1\\x01\\xd2\\x92\\xb0g\\xc1s\\xd8\\xde\\xe64={\\x1e@*\\xe8y\\xe1\\xb3Qr\\x89\\xcaT\\x87\\x1dh\\xba\\x19\\xd4\\xb5\\x83\\xf1\\xc9A\\xe0{E\\xfaq\\xb5b\\xd9I\\x943\\x97\\x15'}Hv\\x02\\x0eqA\\xaf\\x06\\xb0C\\xd8\\x1c\\x8bh\\x97\\x94\\xaf\\x7f\\x81>_\\\"%\\xc6!\\xec\\x14\\xf0\\x12R\t\\xcb\\x14\\xb6\\xd1h\\x0b]\\x81\\x12Y\\x90r|\\x0c\\xca\\x8f\\x12\\xd8>\\x844\\x10\\xe0\\xe6\\x1f'\\xf2\\xe3\\x04v\\xf8\\xef\\x97/1v7\\xff\\xe3\\xd0\\xcczU.h\\\\.U\\x8aK\\x95\\xc1\\x0bH\\x9f\\x07\\x10\\x8f2\\xb4\\xa5\\x19e|$\\xf4a\\x17\\xb7\\xac\\x92\\xb9D|.\\xc2\\xc2\\xd5\\xf7F\\x7f\\xfe\\xf3z\\xb7\\xdf\\x9f\\xfe\\xf9\\xcf\\xeb\\xe9\\xd3~\\x7f\\x87\\xff?\\x9b\\xcd\\xfe\\xfc\\xe7u\\x7fO\\xfc\\xec\\xef\\x1d\\xf0\\x9f3\\xb6\\x8b?glw\\x86\\xdfL\\xf1\\xe7n\\x7f&J\\xfbL\\xfc7\\xbb\\xdc\\xdc`W\\xce#\\xe9\\x15,/\\xdaM\\xcf\\xbabG\\x08\\x19\\x85 \\xa9\\x03A\\xe2\\x86\\xbdD\\xac\\x1a\\xdee\\xc6\\x12\\x03\\xf8\\nmo\\xa7\\x97\\xb8v)\\xbc\\x80\\xf8y h\\x9e\\xcfw\\xd7(\\xbdD\\x0f0\\xc76\\xdb\\x90\\xb8U\\xdbl\\xf0\\x9420\\xae\\x84\\xf1J\\xcdA\\xc6\\xd7\\x8fI\\\"\\xe3\\xd6\\xb3\\xa0\\xe1\\x9a4\\x04)\\x9c\\xf6\\\"\\x05\\xad\\\"H\\x89[\\x83\\xa4M\\x84US-\\x99,ZQ-v\\xde\\x11(\\xdeLXldhx5\\xea\\x13\\xa6\\xcf\\xa0\\xd6[\\x04*\\xb7\\xc5{<\\x0f\\xb9\\xec\\xe5\\xa7\\xd5A\\x17c\\x1eHs\\\" \\xc7)r`\\xd7\\x07`\\xd7,q]e\\x00\\x88{9o\\x14/\\xb4\\xbe|A'\\xc1\\xdaG_i\\x94)\\xbfO\\xd8\\xad\\x1f\\xf7N\\xf0\\x17\\x97\\xe38\\x0bo\\xe0\\x13\\x7fT\\x15\\xcc\\x8e\\xa0\\xef\\x9ax3\\x94\\xb3ng\\x05\\xfbd\\x19\\xf5\\xc6\\xba\\x04}\\x9c\\xdf%\\x13%,\\x9b\\x82tM\\xd6vUZ\\xeb\\x95~\\xcf\\x12\\x116\\xc0U;\\xd7k\\xbf\\xcf\\xd2\\xcfw\\x97\\x8e\\xab\\xf7\\x16\\xf9\\x18\\xad\\xff\\xdb\\xc4\\xe1\\xcc\\xe5F\\x81\\\\\\x0c:\\x95\\xe2_\\xeb\\xf2\\xaf\\xb8\\xfc\\xab\\xcd\\xc8\\x86\\xa2\\xdd\\xb6\\xd6\\xa1\\xc52\\xb8y\\x92\\xa5i\\x17\\xb5\\x01\\xdd\\xeax\\x0d\\x11m\\xff'\\xfe\\xb4d\\x86jmY\\xf8\\x8fm\\xd2\\xecWj\\x11\\xf4\\xd4\\x10\\x1b\\xa2\\xfa\\xa0\\x1f\\xf8\\x89\\x7f\\xb0\\xff$\\xd8\\x88{ih\\xd0\\xdc%b\\xf3\\xec?i92\\xcbKo\\x19\\xfa\\xc8q\\x80\\nv\\x15\\xad\\x0c\\x95.\\x06\\x8a\\x92h\\xab\\xa2-\\xe53\\xb4\\x95\\xfa\\x89\\xf0kV\\xf4\\x1c#\\x02&h\\xae\\xaa\\xf7\\xc7x\\x97m\\xa7r\\xc3\\xacim\\xdc\\xee3\\xda0\\xe4\\xc0\\xca2\\x14\\xa1\\xb1n\\xed\\x15\\xa7\\x07\\xbbm\\xd8\\xae\\xd8\\x80<\\x84E\\x08\\x13\\x8a\\x19@g\\x02\\xf8\\x9e\\x0c \\xaf1\\x8cv\\xa9\\xc8\\xa8Dq\\x07x\\x1f\\xc6\\x019E \\xfb3@\\x1f\\xdd\\x97\\xb0j&%\\xc2\\x8f\\x9a\\x9f0\\x94nm\\xce[\\x11\\xc5\\x9a\\xe85\\xc7%\\xb6\\xdb\\xbaq\\xf08Kq\\x87f\\xbd\\xbf\\x96`\\xe0\\x12\\x17?\\xb63B\\xf4\\x04\\xc5\\xf9\\xa0\\xbb\\xb8\\xa0N\\\"!k!dE\\xce\\xfb\\xdc\\xc0\\x0bX=w\\x1d\\xe5\\x98\\xa7\\x96\\x8c\\xef\\x02\\xd2)\\xba\\x18\\xdd\\x10we\\x1c\\x00y\\x80M\\x8c\\xf9\\ns)\\xd9\\xbf\\n\\xe1\\x0eC\\x1d\\x15\\x88\\xa1\\x13\\xcc\\xca\\xe8\\x8b8F7\\\"\\x9d\\x13\\x7fK\\xb7\\xa6\\x99r\\x8c]*\\x1f^o\\x1c`\\xea\\x9a8Y;\\x92\\x0c.\\x0d\\xcb:\\xfd\\xb9\\xcaX\\xf4\\xc9*\\xb1I!:\\xa77\\x8db\\x0b\\xa5\\xf1V]V\\xed\\x93\\xd8\\xbf\\xc6j\\x9cA\\xbd\\x13\\x9a\\x1a\\xbe\\xfb\\x17\\xd2\\xcdTl\\x8bIP\\xe1\\xd2\\xb50\\x06p&\\xbdl\\xea\\xb1\t\\n\\xe0\\x84\\x04\\x90\\xd0\\xf8*\\xe2\\xa7\\xc4\\x18+\\x86/\\xd0\\x15\\xee\\xa3\\x85\\\\\\xdar\\xe0\\x8e\\xe1|\\xeb\\x82\\x90\\x87\\xc8\\xa4'<\\xcaQCZ\\xfe(\\xeaN\\xe9\\xf8\\xd7\\xbd\\x84\\x95o\\x92\\xf35\\xc9\\x9e\\xc4\\xac\\x9a\\x98\\xefT\\xcc\\x97\\x84\\xa9e>N2\\xbf\\xf7$\\xe8}\\x8c\\x93\\xe2)\\x8a\\xb1\\x0fr^\\xee>\\xa3B\\x80r\\xb1\\x87\\xbe\\xc79\\xd8\\xbf\\xaf\\xe8)\\xe2\\xa5~\\x93/\\xddSz\\xac\\xbb\\xedcr\\xeb2b\\xa1\\xa5q(g\\xf8l\\x8e0\\xf4_\\xe6\\xc7!$\\x1d<U[\\xb1\\xd1\\x01\\x9f\\xd1\\xe5}\\xe1r`)J\\xd5\\x1a\\xd2N\\x86.}\\xebS\\xf3\\x8aN\\xbaa\\xed\\x99\\xcd\\xe4\\x12u\\xcc\\xfa\\x0b\\xe2.\\xce\\xb8\\\\\\xeb\\xb0P\\xd4*%\\xca\\xbf\\xb0V\\x02\\xf2\\x06o\\x0b\\x95\\x9at\\xe4\\xe6YY\\xbe\\x85\\x96j\\x11Yke\\xd4\\xdaB\\x8e\\\"'\\xebNAry\\x13\\xf4\\x00\\xe4\\xff\\xac\\xecZ\\x9c\\xd5\\x98\\xa2\\xa7R\\xa5,\\x14\\x02\\x04?DG\\xc4\\xf9\\xac{.\\x11,\\x01\\x07\\xc3\\x12\\xe2\\x84\\x0b\\x11[\\x85\\xa0\\xd7\\xa5\\xd7\\xe3\\x12\\x05[\\xe4\\x86J\\xb7X\\xc0\\xac\\xf68D|\\x9d\\xcef9+\\xaa\\xd7\\xde*\\xcaX\\\"_\\xe0\\xf7+Q\\xf1j=\\x9b\\xb1L\\xabxuW\\xb07F\\xa3\\xf8\\xf2Lk\\x12[X\\xfb\\xcb\\x10n\\x02\\xfc{.\\x0e\\xbb%\\xbd\\xb5\\xe6\\xf7\\xc6v\\xcb\\xc3Qa;%\\x1f\\xf3\\xf7&o\\xcc\\xd1\\x1d\\xb5Jq/\\xce/\\xeeVl\\x8a\\xf4\\xd4\\xc6\\xfd\\x08\\xa3TE\\xa8\\xe3\\xa0\\x11w}?\\x12@\\xa1\\xb9yKfQ+\\xa8]\\x91\\xf9\\x89efY\\xff\\xab3@\\xf7\\x9e\\xb6\\x92O\\xc7X\\x998+9*v\\xf0\\xf5\\xfe\\xc5\\xa1\\xa2\\xa4lqK\\x8d\\x1e\\x92*\\xe2\\xa0\\xce\\x8c\\xa2\\xb8\\x86!5\\x05\\xadz8H\\x1e\\xec\\xd3\\x9a\\x9b\\x83\\x0e\\xfe\\x10\\xee\\xb9\\xd7\\xfc\\xc2R9\\x82\\xac\\x0d\\xda\\x0d\\x83|\\xd6:\\x18\\x8a\\x04+5\\x8cM\\xb8\\xc4\\xc5\\xd3\\xbf\\xc2\\xc0\\xad\\xa1)0K=\\x97\\x83wP\\xf8-\\xeaI\\x0b7\\x9b\\x81\\xa5\\x08S\\xe1\\xce(\\x02\\xf0.zg\\xef\\xfeG\\xff\\xf9\\xe7|\\xfb\\xcb\\x9f\\xf3\\xed\\x7fytmo\\xfbG\\xff9\\xda\\xd9\\xbe\\xec\\x7f\\x1e\\xf5w\\x9eE;\\xb3\\xcb\\xed\\x7fy\\x14\\xdb\\x07\\xe0\\xa3\\xff\\xec_\\x8d\\xfa\\x03\\xa2t!J\\xd3Q\\x7f\\xe7\tQ\\xccO,L\\x92\\xfa\\xda\\x15\\x13\\xaeY\\x99\\xe4%\\xeb\\xe5\\x95\\xa4\\xcf\\x95\\xc9\\x98\\xda\\x92\\xb6X[S\\xb0\\xc5vy\\xe6\\x08\\xd2\\xa5\\x16\\xdd\\x11\\xd7^\\xc6\\xc6\\xc3\\xa8\\xf5\\xf2o\\x9fSJB\\x88\\x93!\\xb6\\x85\\\"d[\\xc4uv\\x05?\\x07\\xf3fu\\x8b\\x98\\xa54\\xca\\x95\\x91\\xad\\xb6\\x8d.\\x99\\xcc)\\x8f\\xd6\\x8f~\\x14\\x82G\\x99\\xd3'h\\xfa#\\xafCH\\xcc\\xc5C~\\xa1\\xaa\\xc0\\x11L|&M\\xdcw\\xd1\\x8a\\xe3\\x08va\\x08O\\xf9\\xac\\xd7Z\\xb5\\x18\\xc7t_\\xec>p\\xa4D8x\\xfc8\\xf03\\xc7\\xd6M7\\xebc\\xd0\\xa7\\xa3R<q\\x1c\\xa1\\x16\\x07\\x18u=9h\\xc6\\x1b\\xa5\\xe7\\x88\\x13\\xde&m\\x0dfB\\x93\\x17\\x1e\\xb4$\\xb5U\\xdb\\x0ck<\\xaeE\\x8e\\x8d\\x18\\xb5k\\xa51\\xcb\\x10\\xf4\\x9b\\xfa\\xb5\\xb8\\x84\\x8e\\x13\\x10\\x953?\\x19\\x15\\x975k\\xe7N\\x8bF[\\x8fh\\x17\\xe3\\x0d\\xd7c\\x89?\\xd87\\x1d`t\\x10^\\xd9\\xf0(\\x83\\x1b\\xee\\x1e\\x0c\\x8c/\\xafz\\x1fX4\\x8d\\xae\\x16L9'\\xdf\\xd5+$\\xfe\\xe0\\xd9^\\xd0\\xc3\\x98`\\xa7\\xcb\\xb8(XF\\x03\\xbc\\xf1DR\\x8f\\\"6=\\xe53\\x91\\xfbE \\x81m}@\\xc4Q\\x10\\x02\\xc4^\\xdf\\x14 \\xa0\\x8a\\xbb\\xb8?\\x08z? #J\\xf3\\xfc\\x85&\t\\xd7\\\"q\\x04V\\xc0\\x9dR\t\\xe9\\x0f\\xfa\\x07\\x06\\xe0f\\xbd8\\x99\\xb3,\\x16\\x06\\x06\\xfeS\\x13\\xb07\\xd27\\x86\\xef?\\x93\\x8f\\x04)\\x0cPZ<\\xfe\\x1e\\xd9\\xe9Uo\\xca\\xae\\xd6\\xd7\\x8b\\xf4\\x1a\\x8e\\xb4\\x1fH\\xdfX\\xb4\\xc4\\xf8\\xc9-c\\x9f\\x8b\\xa8\\x06\\x89\\x7f`\\xf9\\xf9\\x81\\xd4\\xc6p`>qN\\xcd\\xbf\\n!'&v\\x0d\\x870\\xf2X\\x96\\xa5\\x99\\x17\\x827Y\\x08\\x7f5o\\xca\\xf2\\\"K\\xef0\\xb0N\\xb4\\x16\\xef2\\x96\\xaf\\x97\\xcc\\xbbt\\xb9\\x08\\xdd9\\x11&\\x06y\\x1b\\xc3a\\x88\\xde\\xe0ROf\\xce\\x154\\x1aU\\xe8F\\x86\\xb1]\\x0f\\xbd\\xc9\\xc5\\xed\\xd3\\xdbt\\xca\\x9b\\xdc\\xdab\\xda\\x0b\\x19Z\\xd9\\xb7\\xeb\\x99o\\xbe|\\xc1O3\\xb9\\x7f\\xce\\xca\\x12\\xc7\\x1d\\xa40r\\x98\\xc7\\xd7\\xf3\\x9f\\xa3\\x82eo\\xa3\\xec\\x93\\xbd& id\\xd5\\xeeO\\xed\\x1f\\xac\\x89\\xd1\\x1d\\xc1\\xe0\\x00\\x8608\\xd8{\\xba\\xef\\x80Bm(\\xfc,\\xe0S\\x12'\\xa42\\xa5\\x10\\xb0\\x88\\xaa\\x82(\\x90\\xd9c\\xd6!\\xdd\\x08\\xc6\\xfb\\x9d-\\xd24\\xf3\\xedr\\x15\\x96@\\x08\\x8a \\\\\\xeeo\\xca\\x84\\xed\\x18\\xe4R\\xcb\\xd8\\x1e\\x8b<\\xe9\\x9c\\x8f\\xd5_\\x9d\\xa4k\\xf4\\xa5W\\xf5f\\x8b\\xf4V\\xa4\\x1a\\xd7j\\xb2D\\xa4\\xc8/\\xf3\\xb5\\xb3d*\\xe8W\\xed-\\x87\\xb2\\xf8\\xb6|\\x85.>\\xc2\\x9d\\x05\\x7f'\\x8cM\\x15\\x91\\xac5(Z\\xa3\\x8a\\xd4\\xda\\x89 \\x8aF\\xfbbC\\x9cO\\xe6l\\xba^\\xd4G#\\xf7\\x8f\\xf9\\x12-\\xe9N\\x93I*\\x87\\xca\\xacw\\\\\\xae^\\x17\\xb3\\xa7*\\xe3|t\\x1b\\xc5\\xc5\\xab,\\x8a\\x13\\x0dNr\\xaeo\\xd3\\x8c\\xd5\\xdb\\x9f\\xa4S\\x96\\x99\\xe0+{\\x13oY\\xf5\\x8a\\xa3\\xc4\\x1c/\\xb2\\xe6\\x92\\x82<\\x0bzBE\\xf1J\\xb4\\x15\\xd8M\\xb3[\\x98\\xfbU#\\x81\\xdd\\x8fVX\\xc3W\\x97\\xe7\\xd7\\x95\\xdb\\xf3\\xcb\\xa4\\x1c[\\x88\\x8b:e\\xb8\\xaa8\\x08>\\xb4+\\xd2\\x95\\x0dG8\\xce\\x8c\\x03\\x92\\xd7\\x17DK\\x04\\xa9\\xa8\\xad\\xb8\\n\\xf1 \\x14\\\"4\\x03\\xcc\\xebV4\\x06\\xdb/w|\\x10\\xba\\xd8f\\x89\\x1b\\xda\\x87\\xea\\xcdaU\\x1a`\\x14\\nW\\xdcx\\x07 \\xc7\\xd5m\\\\\\x16B\\xeab\\xe9%\\x17\\xc1\\x0c\\x88\\xd8`\\xabL\\xcd\\xe1\\x08\\xfc\\xc8\\xd8c\\x9d\\xf8\\x04\\xd4\\x8d\\x8b=\\xac\\xd6\\xc9\\xee\\xa7\\xaa(\\xf1\\xcc\\xd5\\x1ah\\x9c{Y\\x99\\xb7\\xde\\xe4b\\\"\\x94\\x01\\x8a*!\\xd4%\\xddRy\\xd3\\xc2*\\xb1\\xd06o\\xb8N}aX\\xb1\\x91d'\\xf6\\xed\\n\\xa0\\xb9xI\\xb9\\xfa!\\x9c\\x93\\x97\\xf7\\x1ct\\x11\\x86.\\xf2\\x91f#\\xbew\\x82+B\\x81\\x9es&\\xa2\\xe4,zq.\\xd8'?\\x13\\xce\\x07\\xfa\\xb6A\\xcd%e\\xbb\\nztn\\xa5*1NKa\\xa8W\\xf7Mz\\x9d\\xdcD\\x8bx\\nI\\x9a\\xec\\x88f\\x1f\\xc9\\xc3a2_'\\x9f<39\\x9dz\\xf0\\xb8wLDnk\\x02n\\x11F\\xb0\\n!F\\xe1\\x93\\x13p\\xbf\\xe4bb\\xcc\\xc7c\\x0cY\\x1a\\x9c\\x96\\xf1\\x97\\xfb\\x1c\\xa3]\\xf37?&\\x93\\xc5qi\\x16\\xb3\\x0bi6\\xc7\\x1c6\\xcdv\\xde\\xc6\\xdc\\x16\\xbdY\\x96.i\\xdc\\xc0\tf\\xfc\\x94\\xd6\\x8f<{\\xbe\\x9aC\\x9e\\xe0({\\xeb$\\x9f\\xc7\\xb3\\xc2\\x0f \\x9a\\x15,\\x03\\x96L\\x81\\xdd`\\xf0\\x8f\\x00s80\\xb48\\x10!\\xfa\\x10X\\x02U\\xbb\\xb4\\x8d[F5|z\\xf6\\xa3h\\xd2\\\"\\x0eQyd`nK\\x0em\\x8c\\x0bXn\\xda\\xdb,\\x96\\x97{&\\xb4\\xa5\\x8e\\xaeJ\\xf5\\xa5\\x8fw\\xc0{\\xfbT\\xed\\x9bz\\x99\\x0ci\\x8c\\xe9\\x9ej\\x03\\xa2\\xb0\\xcfT,\\xb6\\xad\\xd5\\x16\\x93`\\xe2$\\x84\\xd5\\xb9\t\\xdc$r\\xc0/L\\xe6\\xb0b\\xba\\x98\\x93\\x8e|\\xf5\\xcd\\xf8\\xe3\\x0e\\x1a\\x7f\\xab\\xd1xj\\xc0E\\xc9E}\\xff=\\xd4\\xddEp)\\n\\xc1\\x16\\x1d\\xf1)\\x88\\xb5\\x9eFE\\xc4\\x97\\x1ac s\\xa0\\xf9}\\xb1\\xa6\\x1d\\x89\\xa2@\\xd2\\x92\\xa6*\\xe4Kx\\x1b\\x14\\xa5\\xad\\x01\\xee\\xfb\\xef\\x914\\x06\\xa1XT3\\x10d\\xed\\x17\\xed\\x94q\\xa5\\x87q\\xf2J\\xc6\\xeb\\xdb\\x93\\x9f\\xea\\nc\\x82\\x7fP\\x01\\xad\\xea\\xaf+\\xce\\xcf^bB\\n\\xae\\x8d\\xc7\\x89\\x80\\x8e\\xee\\xfd\\xc6\\xfe\\xf9\t\\xdf\\xee,\\x13\\x82\\x06\\xbf^\\xc5\\x88,\\xd5\\xdf\\xf5\\n\\xe3u\\xa2\\xd7)\\x7f\\x19\\xb5\\xaa:\\xad\\x87\\x99\\x90\\x06\\x10;\\xd6\\x8b\\x05G\\x10+\\xccw\\xbdq^\\xb7K\\xc37\\\"EE\\x06\\xe4\\xf29\\xc9AVG\\xf4\\x04\\xcfoC{Th1\\xdb|\\xa4kxld&7/r\\x15eu\\x86\\x9b\\xa1;\\xa1 \\xfb\\xc2\\xba\\x07U\\xac\\x9e\\xf4\\n\\xc3\\xa0\\xa9\\xe3*\\x1c\\x1a\\x126;\\xfcH\\x1d&r\\xcf\\xb5\\x9e<r\\x8eZ\\xf3B&\\xe0\\x1c\\xca\\x96\\x19Y\\xb8\\xdeE\\x9c\\xbf\\x8f\\xd69\\xeb\\x9aYmK:\\x93\\x11\\x18*\\xe9SSg9\\xd3\\xa5\\xa4Ns\\xea&\\xc7X\\x9b\\xc5\\x10k\\x1c\\xf5t\\xe1F\\xd4\\xa8\\x8f\\xdeV\\xac\\x9c\\xc2!<\\xdd{\\xfa\\xf4\\xa0\\xff\\xd4\\xa5/\\xf9\\xecD\\xdd\\xf2r\\xed\\xc5\\xa1H\\x8ah\\xd3\\xf1\\xa2<\\xb2\\xfbHf-\\xea\\xcc\\xc4\\x85\\xd1Q\\xfd@\\xd0N\\xd5\\x924\\xcfY4\\xc5\\x04\\x18\\xaalXU\\xc3\\xec\\x98/\\xa10\\x0e4\\xc1D\\x9b\\x1a\\x83vBVN\\xec\\xe5!\\x9c\\xa2\\xee\\x9e\\xff\\xcf;\\xd9\\xd9\\xe1\\xb2\\xd6\\x17>\\xe4\\x97/_\\xc2\\xa0\\xf6k\\xb7\\xf6k\\xbf\\xf6\\xebi\\xfd\\xbb\\x83\\x10\\xd8\\xf6v`:]\\x83\\xe0\\xb6\\x03T>\\xbd\\xa8q\\x17\\x0c\\xe7\\xab\\xa0\\xa9\\xcf\\xbc\\xb04\\x06\\xfd\\x10\\xfa\\x1dc\\xdb\\x9c\\xd3PPW*\\xed\\xc2\\x97\\xdd;\\x97\\xf3-e\\x05\\xc7\\xfa\\xa9\\xef\\xf1\\xd7\\xea\\x9d\\x17V\\x8b\\x1eP\\xdfH\\x9d\\x88\\xe2\\x04\\xd2*\\xf5\\xc6\t\\xba\\xa3\\x0d\\xe1\\xa4f\\xe6\\x02\\x0d\\xf3<\\xa1\\xe7)\\x87\\x04j\\x92\\x9e\\xc8\\xb0\\x80\\x0c\\x87\\xfe\\xee\\xc2N\\xea@\\xf7\\xf3\\xc9}\\x82\\xd4\\xf4!\\xc8\\x82\\x9b\\x1a\\x92~\\xa8O\\xf2X\\x10\\xd6\\x8e\\x13<vv\\\\3 \\xab\\x82\\x95l\\x95\\xddK\\x86K\\xdb\\x7f[E\\xc5C\\x16\\x15\\xc3H\\xed\\xaf\\xa9\\xef-\\xa3\\xbb+\\xc6W\\x0d\\xe7\\x81\\xea\\x85\\xbe\\xa7\\xb3i!\\x1a\\x13k>\\xbb\\xca!\\x864\\\"\\x01\\x0bXV\\x9c\\x16\\x17\\x10\\xce\\x9c\\xab\\\\\\xeaK8x\\x8bx\\xf2\\x89\\x1ag\\xa7>\\xde\\xb7\\xaf\\xb0\\xc2v\\xa1y\\xa3zB|w(\\xe6,eZ\\x85\\x90\\xa8\\xd9\\x96\\xe8\\x18\\x82\\xb9d\\xdarn6\\xa5\\x8bo%\\x02\\x88bS\\xdf\\xe3\\xe3\\xa9m\\xeb\\xe7\\xf5AJ\\x0b\\x01\\xa5|\\xf2\\x83\\xe7\\x86\\xc0\\xe3\\x1a\\xe1\\xdb\\xb6C\\xc88z\\x8eDWH\\x1d-F\\xa9<R\\x94\\xf89\\x84-!\\x1b\\x19\\xc9\\x9b\\xfd\\x9a\\x02G?\\x8c\\xca\\x98\\xd4CP\\xee\\xe8\\xb2\\xa4\\xe1\\xe0\\xd2\\x05\\x0d\\x19\\x12\\xba\\xdc\\x11\\xa1V\\xb4`Q\\xe6\\xa3l\\x93t\\xb8\\xa2TO\\x83\\x86\\x82\\x89\\xbdk\\x1e\\xa02\\x87\\x8f^\\\".\\x8d\\xfb2T\\xaf6t\\xaa\\x1a+S\\xf30\t\\x03\\xa2\\x8bB\\x83r\\xd2\\x16\\xb2[\\x7f*\\x8a\\xc5[\\xa5/\\\"\\xd4\\x93\\xd9N\\x01\\xe6\\x83W\\x9986\\xb7\\n\\x8e\\xc1\\xce!\\xa4N\\xa2\\xa4\\x1e\\xc4\\xf6\\xe78\\xb8\\x04\\xc95i\\xe3\\xae?7\\xd2~S\\x0c\\xa0y\\xa0\\xa0nd\\xe0%\\xc4\\x15\\x1c\\xe3\\xea\\xc4wX\\x9f\\xab\\x07}\\xb2qA\\xb4\\xcfS.\\x1d\\xc7\\xc2\\x8b\\x15\\xfd\\xcc\\xf4\\x85\\x16\\x9b\\xc7\\xc7\\xe9G\\x8d\\xb6\\xdd\\xea\\xb1\\xda\\xf7\\xb7\\xb7\\xb3P\\x82\\x03W}.\\xb4\\xcc\\xf2\\xcd\\xb0zS\\xf4\\x8a(^H=\\xbf\\x14\\xe0U\\xe5PB\\x08\\xaa!F.\\x8d\\x9c\\xfe\\xb8M\\xca\\xd5\\xf3u{{\\xd3X;\\xa0\\x99\\x06\\xa9\\x89\\xee\\xa0\\xcb\\\\J\\xd6\\xff*Q\\xba%\\x0b\\x85\\xfe(\\x1c_\\xf4\\xa2\\xc5\\\"\\x9d|L\\xf2h\\xc6\\x9c!\\xf8\\xd4\\x93u\\xdc\\x15)\\xa6us\\xcfM\\xec\\xd4I\\xba\\xbaC\\x95\\x07.\\x7f\\xa6o\\xdf\\xd6-\\xc0G\\x92m\\xb6\\x05\\xb2_k\\x0b\\xc4rf\\x95u\\x05\\xecp\\x86\\xaa\\x1fB\\xf4`8\\x9f\\x86r\\xfe:\\xceg\\x9b\\xe0|\\x16J\\x90\\xfc\\\"8Oc*l\\x8a\\xf3iH\\xa8\\xb7\\xa1\\xc2\\xf9F\\xc5\\xb8\\xbd\\xef\\xc4W\\xf2\\xbc\\x0b\\xab\\x13\\x963\\x8a\\x8e\\xcb\\xecz\\xf7.6\\xe1\\xf5\\xb722\\xe2zGN\\xfc%\\xf4\\x89@\\x8a\\x1eKJ\\x11\\xc5\\x0f<\\x98D\\x18\\x181M\\xf0N\\x81-W\\xc5\\x1d\\x08%4\\x15 \\xb1\\xd0\\x95\\xe4B\\x08\\xd0\\xef_4\\xf6\\xff/\\xc2\\x99\\xa9#\\xfb\\xff\\x17'\\xadaF\\x8f}\\xc9\\x80\\xc9I\\xf210\\xe3\\xb2\\xba\\x1fJ^\\xd6\\x12\\xe9|>{\\xaf\\xe3\\x98\\xdeu\\x13I\\xfaB\\xfbU\\xb9\\xb0\\x08\\x07\\x16\\x0c7D\\xe2\\x15_$\\x91\\x93\\xa4\\x16^\\x8a\\xb8g\\x92%;\\xa6\\xf4\\xa0\\xff\\xd2\\x15:\\x99\\xd8\\x93\\xcd\\x1a\\x02)Mx\\xe2\\xecd\\x9a\\x91$\\x9f\\xef\\xc0\\xb4\\x95\\x02\\x0d\\x01\t\\xa5\\x0dM\t1\\x8a\\x00\\x8d\\x9er\\xfd\\xa4r\\x832\\n(\\xa9\\x9b\\xd0\\xfeZ\\x9al\\x0d\\xc3\\x0f-\\x99\\xee\\xcb\\x17\\xa5f\\xa8n\\xac\\xe5\\x8c\\x87`\\x89\\xef\\xa2\\x9d\\xb0\\xfc$l\\xd4\\x01\\xbd\\x16\\x97\\xc40\\x84s\\x95q\\x81\\x13D\\xd7<%\\x81>T*\\xa8@k-p0\\xfe\\xdf\\x7f\\xafzq\\xb5\\x8d|\\xb2\\x0c\\xd0Q\\x03\\x8d\\x13}\\xa6\\xbe\\xc7\\xebUJ\\x82\\x10C|\\x18Q\\xae\\x04\\xe4\\xaa\\x93\\xc6\\x96\\x97q\\xfcS\\xe5\\xf6\\x00\\x0b\\x96\\xe7P\\xcc\\xa3\\x04ny\\x8de\\x94}\\xf2\\xc4\\xb8P\\xb9\\xaa\\xc0\\x86\\xcd*\\xd1\\xeeH\\xad\\x05\\xff\\x91\\xe2\\x95\\x19\\xde!\\xa4b\\xe1\\x91\\xbf\\x93R\\xf94\\xc5\\x01{A\\xa8}_S\\xa9HM\\x91\\x05@J\\xa3T\\xd38\\x9aJ\\xb5@or\\x10\\x1a\\x82\\xb0X\\xc1\\x04WP\\xae\\x8aX\\xdaL\\x1e\\xf1}8*\\x05\\xbc\\xa1<\\\"\\x8f\\x1cz-\\xfe\\x7f?\\xd0u\\x7f;\\xa8\\xec$gQ\\x02\\xd01\\xa3\\xa4\\xdaJ\\x9a\\xc2C\\xe2\\x8f\\x1a*\\xea\\xc6\\xcbk\\x94\\xda]\\x14?\\xb0\\xea\\xa7\\x9b\\xa1 \\x1ew\\\"(Z\\xc3\\xc4\\x85\\xa6\\x80x\\x00q\\x8e\\x81s\\xe3\\xe5JdH`6\\x1d6n b\\xcc2\\xd2\\xca\\x8c\\x96\\x82\\xd6<v\\x84\\xd4\\x88\\xbb^N\\xe4\\xb71\\xba\\xe3\\xc7\\x9a\\xe1\\x94\\x8b\\xb5\\x9aD9\\x83\\xfe\\x90,\\xe3O\\\\\\xdac50{\\xc8\\x04\\xd1\\xc5\\xd8\\xfe\\xa0K\\xfb#\\xf9g\\x08\\xae\\x04\\xcf\\xd0\\xdc\\x95Jk\\xd6\\xd6\\x97\\x8a\\xb0m\\xd5#\\xdc\\x80u\\xd3\\xb3m\\xccO5\\xf5=\\\\\\xd2\t\\x7fw\\xf8\\xafSHWE~\\xf8\\xaf\\x7f\\xf1\\xc2Zm\\x9a\\x1f\\xbb\\x91q\\xd9\\xfd-\\xbc\\x03\\xda\\x1aH\\x85\\x1cK\\xa6H\\x96\\x98\\xbc\\x03\\xca\\x8bi\\xba.\\x8c7,\\xcb\\xe0\\x08&0\\x84+\\\"fky\\xde/H;b\\xf5L}/M\\xd6\t\\x1f\\xa8'n\\x93T\\x90/q\\xf9.\\xf4(Yo\\x1e\\xe5\\x1f\\xb1\\x96\\xb8\\xc1\\xae\\xbd\\x104`\\xea{\\x93\\x05\\x8b\\x92\\xf5J\\xe9\\xd4\\x96\\xe9\\x0d\\xab\\x12\\x08+\\xf3\\xd0k\\xb2t\\x16'q>\\xf7B\\xb8#\\x8b\\xa7Y\\x14'^\\x083\\xb2T\\xed\\xcf%Y*g\\x17\\xc2\\\"\\x109S\\x8d\\x8f\\x13N\\xaa'\\x0deWd\\x99\\xa467AX\\xc6\\xbd\\xde\\x8au-!^\\xeb\\x8fo\\xb3\\xb8\\xa8]\\xbcn\\x99/\\x91\\x08\\x96\\x9f\\xcc\\xa88\\xb9_\\x1b\\xd6w\\xe2\\xbc\\x8a\\xc6\\xb5E\\xceP\\x18\\xeeM;\\xc5\\xb2\\x8e\\xeb\\x06#\\x1a\\xef\\x8b<B\\xd2K\\x93\tS\\xa0\\xc1\\xf4L\\xbd4\\xa9A\\x99\\xc6\\xf3Y+\\xc5\\x05\\xc2\\xae\\xa2MN\\xef&@\\xa8Gn\\xd6\\xb3\\xe4\\x95\\xc4']\\xad\\x1b\\x18Z^<\\x7f\\xaa\\xdf;;\\xd5yV\\xaf\\x85\\x99\\xd0\\x04>\\x04\\xf2\\x8c\\xab\\x8cQ9^\\\\X\\x17\\\"\\xea!|\\xeb\\xc9X\\xc6\\x02\\xc6\\xd5.\\xa0A\\xac\\xb20Pes 24\\x00\\xd4\\xb2!8O\\x05\\xc4$1\\xc1P\\xb6\\x14*j\\xc5Jk\\x1c\\x8e\\xbeBt\\x91\\xd1@k\\xe4\\x12\\x1d&%qW\\xa1\\x0ej\\x15^\\xc2\\x80W\\xda\\x11\\xcd\\xbe\\xf3+\\xfa/x\\xcc\\xad\\x95b\\xa2f\\xd1\\\"g\\x80\\xddB\\xc6\\xf2U\\x9a\\xe4,\\x04ek\\x9e\\x98\\x17\\xb0\\xb5%n(\\xdd\\xde\\x96\\x93\\xeb\\x8bl\\xca\\xbc\\xbdMw\\xe3\\xb2\\x05\\x88\\x8aT\\x15A\\x08W~+5\\x13\\x08'\\x10L\\xbc\\x17\\xe7\\x82\\xc1\\x98\\x10\\x11!\\x9a\\x06y\\xed\\xdcV-\\x84\\xf9\\x8a\\xa4 \\xee\\x8e\\xee\\x9ai\\x93l\\xbb\\xf5\\xb8\\xd8\\xb4\\xdb\\xab\\xa6n\\xab\\xc3.\\xe9\\x89\\xbf\\xbb\\x9d\\xfdJ\\x9e\\x15;\\xb1$\\xfed7]o\\x07\\x00\\xac`n\\xba\\xb1\\xef*c+\\x96L\\x15P*/=\\xb3D\\xe4\\x98iP\\xa1\\xf7\\xc6h\\xc2\\x97\\x0b\\xe4\\x91?F\\xc5%\\x1cA\\xe4\\xeb/\\x02\\xb4\\xe3\\xab~\\xd7-\\xb2j\\x9f\\x1e\\xc2(\tk\\xaf.\\xb1\\x8a\\xf0\\\\J\\x1c\\x04OCeu`\\x8b\\x03\\xa5\\xce\\x1f\\x88w\\x06W \\x90^\\x9e3|3\\xc7%\\xa1\\x95w{\\xc8\\x8aU7r\\x89\\xbc\\xcd\\xf3\\x03\\xebR\\xdf2\\x82\\xb1\\x18\\xf3&\\x9d\\xd5F*\\x03\\xf7\\xdaWL\\xd4\\x90Jz\\xc1\\x1f\\xc2\\xc9%\\xd6b9\\xeb\\x1c\\xbdR\\x11\\xce\\xe3\\x9c\\xfeh\\xe0\\xfe\\x88U\\xcc\\xa5,\\x87#lIXq(\\x89Q\\x96\\xe1Qi8f\\xd8^\\x19\\xfa)8\\x90\\xd6\\xf0j\\x11KvA\\x18\\x13%R\\x92%p\\x18\\x9d\\xfd\\x9c\\xfcB\\xe9\\xf0#\\x0f\\x0b'\\xa8S\\xa8\\xcf\\x9c\\xde,\\x9b\\xce\\x8an\\xa5\\x163\\xb4\\xff\\x1cb\\x0c\\x15\\n\\xf1\\xf6v\\x00\\xd9(\\xbet\\xc1\\xa0Qak\\x19\\x0e\\x01I\\xa6nd\\x9c\\xc3w~Q\\x9d\\x9f\\x0d:8D\\x89H[l\\xf9\\x99\\xca\\xd9\\x13\\x850\\x08\\x0c@\\xec\\xa0\\xe4cc\\x93d~\\x14\\x08\\xe5_\\xa3\\xfe\\xa5\\xb6{]\\x0b\\xdf\\xb49S\\xeb\\xc6\\xb5Ib\\xcek_Vn\\x10\\xd2p\\x83\\xc60A\\xd1\\x05g\\x12\\x94\\x82\\x98\\xdb\\x00\\xadT=(\\x02C\\xf0l*FRe\\xb3\\xa2\\xdao\\xc1\\xe5.B=\\xe0]Q]\\x89\\x9c\\x11.G|\\xe7R\\xef\\xc5\\x85\\x88\\xa5\\xc9\\xc9\\x1c\\x0eM\\x99\\xa6\\xec\\xca4}\\xcey\\xa9<\\xd4\\x04\\x853\\xb9\\xa6\\x9b\\x1c\\xabM\\xeb\\x1fM\\xcb\\x93\\x0e\\x0e\\x0d\\xcc\\x08\\x0dU1\\xdav\\xb4\\x98\\x19\\xde\\xc8@\\xfb\\x9d\\x00]\\x9e\\xb9\\xc6QS\\x9d2\\xcc`\\xf7[1\\x15\\xa4YJ\\xdd\\xd0D\\x19\\x1fY\\xe6'\\xf5\\x1b\\x88\\xf7\\xa4\\x01\\x12\\xe0\\xd9*\\xd1<\\x08(;CC\\x0f\\xc5\\xb9\\xdb6@U\\xaaV\\xbe\\x8b\\x04\\x87\\x0dr\\xb2B\\xc7\\xd1\\xb0E\\x82\\xb0\\xe3>\\xc2\\x83\\x1b\\x99w\\x87\\x05e\\xfd\\x1c\\xd1\\x14s\\xf2\\xab\\x0e\\xd3\\xbd\\xcd\\xa2\\xd5F\\xa7\\xbb\\xfb8\\xef|\\xf6g\\x8e#\\xa2<\\x1eR\\x8c\\xc7\\x83\\x0c\\xa5\\x10\\xa7[\\xc5^NN\\xa6\\xbe\\xc7g\\xb3bS\\x90\\xc2}R\\xf7\\x97P\\xba\\xf8f\\xc9\\x99\t\\xcb\\x87nnP\\xf2\\xec\\xd6\\xaf\\x0f\\\\Z3p^c\\x16\\x9a\\xa9\\xb6\\x8d\\xbc\\xa5&A\\xf2\\xd6%,HW4\\xfe\\xe8\\x90P\\xc2i\\x0d\\x14~Z\\x9b\\xa3\\x90SS\\x8e.[\\x89\\xe17R*\\x95QS\\xafY\\xef\\xa7B\\xa4\\xf7\\xcd\\x0f\\xb0\\x9e\\xb2JQb?\\xce/\\x0d\\x04\\xd1U\\xba\\xf1R\\x90\\xa4\\xb6l\\x806\\x93\\xba\\xcf\\xd4<\\xceG\\xe9%\\xd4c7kR\\x81,\\xf4UE\\x0d\\xa9\\xdb\\x1c\\xee[\\xd1K\\xab\\xcb8\\xf3/B%3=\\x85F\\xc7\\xf5\\xfe\\xca\\xe1\\xdc\\x80\\xfa\\x1agt]^1\\\"\\x83\\x84Hp=\\x8a/\\xb5\\x9d\\xde\\xbb\\x8a\\x93\\xa9\\xa4n\\xbc\\xa8\\xc1#\\xa7\\xd0\\xbd)\\xdb!\\xa3\\xa1\\xd0X\\xde\\x1f\\x16\\x81\\xf2\\xfe\\xce\\x14\\xe7Z\\x89\\x11\\xf6Di\\xda\\xd3\\xc5\\xddD\\x91\\x90\\x9ao7\\xe9z\\xc2\\x92\\xf5\\x92e\\xbc.\\x97\\x13lj\\xb3\\x91k\\nEak\\x17G\\xf6\\x1c\\xeb\\xb3C\\xbf\\x8f\\xf1,K\\x97\\xfcT\\x86Cx\\xfb]UV\\xcf\\xac\\x10b\\n\\x1eG\\x82\\x05C0\\xae\\xe5j\\xb0\\xe3Mti\\xa2-\\x1b\\x90\\x88\\x99Q\\x16\\x94\\n\\x83\\x94<\\xaa\\x1b\\xb4,_\\xc9Q\\xd7?\\x97~,\\x1d\\x0c\\x8f\\xee}\\xd7\\x03m~D\\xee\\xd0\\x02\\xe23K;M\\xbc\\xaeZsn:\\xf4\\xb2\\x8e\\x84\\x9f\\xde\\x11:\\xe1\\x94\\xd6\\x9b\\x1b\\xf4\\x83p\\xae\\xb1\\xb3%\\xd3\\x93*yA9Y\\x08s\\x9d{\\xba6i\\x17\\xa7\\xd6\\xc0\\xfcF\\x08\\xd4?\\x96\\xaf\\xfd\\xf2\\x04\t;h\\xb8\\xb7\\xe4=\\xce\\x11\\xe7\\xcb\\xf5\t&bv\t5(\\xf3e\\x1dV8(\\xbc~E\\xd0\\x92\\xfa,\\x87\\x9cU\\xfbYzd\\xb5\\x10\\x93{\\xc3}@\\xf3w\\x99\\x1d~\\xc1\\xf2\\xa1\\x996\\xb6`\\x84u\\xf8\\x96\\xe5\\x1d\\x90\\xdf\\x12#\\xb0\\xca\\xcd)\\xd4+\\x08]Vs\\x1b\\xc6\\xa2\\x9aNU\\x06\\xf9\\xe9\\x9ca\\x87\\x0c\\xc8\\x96\\x95\\xa1g\\xaa\\xfbvDd\\xafL>\\xabG\\xcf\\xca\\xd9B\\x04\\xb5\\xe4\\xff\\x7f\\xf9\\x02\\xb7q2Mom\\xfa\\x92\\xd2\\xe1\\xef\\x91\\x93p93\\xd1Y.\\xa0\\xc4\\xb4xZ\\xf9N\\xf5\\xc6h\\x89\\xfd#\\xd2K\\x07x\\xf0\\xcb^\\xce\\x8a\\x8bx\\xc9\\xd2u\\xd1Q\\xccI\\xd8-\\xc4~*N\\xb0\\xeak\\x8c\\x87P1@!\\xe0\\x00d\\xa1\\xa5\\xb7\\xc0~_'\\x05\\xcbn\\xa2\\xc5=;V\\x9f\\xd3=\\xabR\\xa2k}d\\xa8\\x80\\xa9}\\xd0*\\xffH.\\x1f5\\xb1\\xbe\\xd5|\\\\S\\x97fl\\x86\\xb6\\x91\\xba\\xec=3\\xe6k|\\x84\\xed\\xb6\\x81\\xa4\\xb6\\xc6\\x02\\\"YX\\xe2\\x011g\\x96d\\xe9b\\xd1EA\\xa4C\\xc7g\\xbc\\xb9\\x05\\x93?_OQ\\xfc\\xd0_\\xd9\\xf8\\xc5{['D\\x7f\\x0f\\xd2\\x99i\\x0e\\xc7{\\x1b#\\x9c\\x8f'E|#\\xb4\\xaf\\x91\\xfa\\xf3[:\\xa7/\\x08\\xe5M\\xaaV\\xd5\\xaeW\\xc0\\xcbC\\x99S\\xc9l\\x15\\x0e\\xa1\\xda2~+/\\xcaz\\xe34Q\\x93\\x17\\x97\\x12\\xe5o\\xea\\xb6\\x87p\\xb9\\n1\\xa4\\xd5n\\xa0\\xf6\\xdcr\\xc9\\xa6\\xb1\\x08\\xce\\xd2N\\xc2\\xea_Ta+*Rh\\xd5\\xe08X\\xb2.za\\xb9\\xf36\\x1c\\x82\\xf1\\x0d9\\x08\\xbbNm\\x18\\xf5\\xe2\\xea|\\xe8\\x94\\xe0lc\\xe6\\xd9\\x11S-Eeb\\x9c\\xebq\\x88\\x9a\\xf1SY$\\xe1\\x9d\\x82\\xe7\\xc16\\x17\\x82q\\xbeE\\xfa&\\xbd\\x15\t\\xc9|\\xa7\\xfd7\\x1a\\x11ys\\xf6\\xd9\\xa3\\x8d{D9FBj\\xa9\\xb0\\xd3\\\\#\\xca'q\\xdcX\\xe3*N\\xa2\\xec\\xae\\xb9J\\x94\\xb3\\x83\\xfd\\xe6\\x91L\\xf2\\xdd\\xb6\\n;-5\\x8a\\xd9\\xe0`\\xc1\\xda\\xea\\xec\\xb4V\\xca\\xa2[G9h\\x1e\\xda\\xfd{\\xda\\\\\\x95\\x1e\\xde\\xf6\\x16\\xaf\\xefnG6,\\x8a\\x931\\x08\\x95B.\\xdc \\xac\\xab'\\xb8\\\"\\x81\\xed\\x0c\\xbc\\xba\\x90\\x92S\\x11x\\xd6r\\x11T<\\x7f\\x1e\\x94\\x03s\\xb6\\x0c]p\\x17:\\xe1\\xafz:\\x0c\\x12\\xba\\xa0!tBE\\xe8\\x88\\x8e\\xd0\\x15%\\xd5\\xa3M\\x03k\\xb7\\xcdd\\x11\\x15q2h\\xed\\xbdq\\xf7\\xaaG\\xf5-\\xdbl\\xeb\\xbaq\\xbbC'\\xd2\\x02\\x1dh\\x9cz\\x94\\xba\\xae\\xc1\\xe8\\xa9mO\\x82r\\xb1h\\x0e\\xb2\\xa5\\x1eN\\xb3}I\\xb4\\xeb\\xf4ZD\\xa3\\xd0R\\xd8\\xea\\x0f\\xa5#\\xa4n&\\x1d\\xd1{\\xc5\\xe5b\\xed\\x989<\\x94\\xd1\\nE\\x120\\xdb+\\xc4\\xfb\\x98|J\\xd2\\xdb\\x04\\x14\\x15\\x18\\x82\\x18\\xb6[{\\x88V{uJT\\x05v(#\\xd3Q,W\\x07\\xb4\\xc7F\\n\\xf6\\x99C)/\\xdb\\xe4\\xac\\xd3B\\x80\\x8e\\x88\\xd1\\x08n#\\xd7VR\\x81\\x1d\\xcc\\xe2\\xc5\\xe2M\\x84z\\xba\\xf5\\xfd{i\\xc4j}^\\x93\\xda\\xbcf\\xa2\\xc7\\xbd\\x8dzlDX]\\x89),\\xc0\\x0ea\\x15\\\"\\xe7\\xe4k\\x1d\\x9b\\x92B\\xed\\x17\\xd6[Dy\\xf1\\x8e\\xa1\\xa0\\xadB#\\xf2W\\x17i\\x81\\x92\\x92\\xfe\\xeed\\x1e\t\\x9f:\\xdd\\x1f\\xb0\\xa6\\x0d,\\xff,\\xcf\\xaa\\xc8&\\xf3\\xa5\\xa9\\xc5\\x8bC\\x18\\xec>QIb\\xe0\\xe5Kx\\x0c\\x87\\x87p #B\\xe3\\x9b}\\xfef\\xb0\\x0fG\\xb0\\xa7^\\xed\\xf1W{}8\\x82}\\xf5\\xea\\x80\\xbf\\xda\\x85#\\xd8\\x19\\xc0\\x10vv\\x1b\\x87\\xb4v\\x1c\\x9fJ\\x1bXM\\x7f\\xa7\\x0e\\\"[\\xca\\xdf\\xc4\\x05\\x1a-Ov\\x9f\\xf2\\xbd\\xec\\x0f\\x9e\\xed\\xc2\\xf7\\x98\\x14<\\xd0\\xac\\x99\\xeaK\\xe1\\xfd\\xdf\\xff\\xd7\\xff\\xe9\\xa0\\xb2\\xe8cTU\\x97\\x16\\x83\\x9ak\\xd8\\xa0\\xe9h\\xa5\\x062p\\x0dd\\xd08\\x10\\xa0\\x06\\xb3k\\x0c\\x06\\x7f\\x9b\\x1d\\xee\\xba:\\xdc\\x95\\x1dv&\\x9e\\x85T\\x88>\\xa7\\x90L\\x93$\\x12t\\xb0\\x1f\\x1aX\\xffB\\xf36\\xc3x^\\xe8\\x97YCy\\\\V}\\x1f\\xf0\\x0f\\x03c_\\x94\\x89\\x0d\\xeb\\xfcVho*\\x11\\x17\\xac\\xa9\\xa32\\xc2\\x99\\xbe\\x9f\\xcb\\x11\\xefh!\\xd0\\x9a\\xf7^N\\xaa\\x00\\xf8z\\x95\\xd9T8\\x8a\\x07\\xf0\\xaf\\xb0\\xcb7P\\xbfI)_\\xa5n\\xf4K\\xf2\\xee\\xb6#i\\x0e\\x04\\x80\\xd7\\x91\\x93y\\x94\\x9d\\xa4Sv\\\\\\xf8\\x9a\\x0f\\xac\\x199Z=\\x18b\\x9f\\x8b\\xdd\\x8f\\x1f\\xef>;\\x004\\xcc\\x7fq\\x08\\x8f\\x0f\\xf6\\x06\\xcfj&_\\x06.Y\\x04m\\xdfX\\xb8Q_\\xa4-\\xd6 \\xb2{i\\xd6\\x19Xu\\x06\\x97!$\\x95\\xa3\\xfa\\xce\\xe0\\xfeF\\x1e\\x14\\xde\\x9a3\\x19\\x103\\xd9m\\x9f\t\\x1f\\xa5c\\xe1*4C\\xa87\\\"\\xd2\\xc2M1\\xeb7\\xe2G\\xda\\x81$n?\\xa8\\x9c\\xec\\xf5\\x8d\\xd4r\\x11\\xe4&\\xc7\\x0d\\xdc\\xcb\\xb6ksj\\x10\\xe8\\xdb\\x01\\xc1\\xc8\\x95h\\x84\\xcc\\x84\\xdcbj\\xfc\\xd66\\xdb#\\x89T_z\\x9b\\x1c\\xd5\\xd6J\\xb2\\x1a\\xd2\\xf1\\xcc71b\\x0fv !\\xb0bOY\\xa4%j5\\x1a\\xf1\\xa3\\xd6\\xf47\\xed\\x87 t\\x0c\\xbf\\x86iI\\x0b\\xcd\\x9a=\\x1c\\xaa\\x91[\\xe9\\xa8\\x11;\\xcaA\\xf7C\\x04\\xb0\\x81\\xa9\\xc3\\x16lX\\xb9\\x99\\x1d\\xc7\\xf9\\xd0\\x0c\\x8ci\\x03\\xf3\\xd4\\x06\\x0b\\xada\\xf5WQ\\x8f\\xe7\\x06\\x87\\x10\\xd75\\xd3\\x8a\\x91t\\x0b\\xff\\x95\\xcdmy\\x06\\x95\\x82\\xa1\\x01~\\\\\\xb6\\xd0t|\\xee\\xb4\\xff\\xe3*\\xef%\\xfab\\x96\\xac\\x99b\\xe2\\x85\\x9c\\xe3\\xe8\\x18t\\x03%\\xd5Mhs\\xbb\\xf5\\xbd/\\xec\\x14\\xd1\\xe5\\x9bD\\xa3\\x04c\\x92V\\x00\\xd71\\x89\\xf3\\xfc\\x9c\\x10$\\x81\\xe2/\\xeao\\xf0:I[\\x91:\\xd4\\xa5\\x88\\xd0xK\\xf5\\xc0\\xf8\\x8f\\x1cV\\x1d\\x9d\\xebc\\x92RL\\xe3]\\xc2\\x8d\\x99\\x17\\xbd\\x81\\x01\\xae\\xec\\x93+\\x8aAs\\x0e\\x19\\xbc\\xe0M(\\xd2hW\\xba\\x91\\xd9\\x03\\\"\\xbf\\x18e\\x97\\x0e\\xfe#E\\x0d}\\xd9L\\x8a\\x8e\\xbcB_\\xaf\\xa1@\\x8aG_\\x08)\\xdd\\xc8\\xce\\x0e\\x0e\\x86\\xaf\\xde\\xce\\xae\\x10\\xb3\\x9b\\x06\\x86\\x8c\\x956\\xb2\\xa0\\xf3\\x18v\\x7f\\xfd1\\xc8\\xb60\\xf8\\xce\\xa1\\xca\\xd2Y\\x1f\\xd5\\x1e=*\\xd5y}\\xfb\\xb8M\\x8bQOhly\\x9b*\\x96\\x01\\xfb\\x8d\\xaf\\xad\\xf3-\\xb1\\xa9\\x8c\\x1e\\xa0\\x01v\\xc0O,\\xcaMn\\x0c\\x9a\\x05\\xef\\x0b\\xcfijh\\xf5|a\\xf5\\x0d\\xa3\\xa9\\x17\\x9a\\xa9g};\\xbe \\x08\\xa9C4h\\xe4\\x85\\x1eT@\\xa9C\\xeb\\xde\\xc3\\xd1\\xc4\\x98\\xfa\\xa45\t\\xc68\\xa5\\xeeu5\\xa3\\x9b\\x1ei9Nn\\xb4\\\\Pt\\xa63LcS\\x164\\xa9\\xd7\\x11\\x87\\x11\\x04\\xb5\\x84*\\xf5\\xb4\t\\xb1\\x9d\\x01\\xabfu_Zc\\x14Y\\x94\\xe4\\xb34[\\ns\\x0c\\xca3\\x06C\\x83_\\xa8z\\x1dl\\xa7\\xc0d\\x9b\\x8d^h\\xa9*\\xe9\\x95\\xb5\\x9a]9*\\xb1\\x0d\\x0f\\x9c\\xc9\\x95[J\\xdb\\xca\\xea\\xf2\\x983v\\x80\\xe068\\x84\\xae\\xa2\\xc9'\\x15\\xaaf\\xb9^\\x14\\xf1j\\xc1\\xa0\\x88\\x97,w\\x86\\xbcW\\x03\\x99\\xaf\\x93O\\xa5\\x9bJ9\\xba\\xea\\x8d\\xcc\\xfaW\\x94W\\x852ut\\x88Y\\xf8\\xdc\\x93M\\xbb\\xda\\xc5\\xf3'5Lw\\xfc\\xd4\\x8al\\xaeLd\\xe1\\x05\\xa4D\\xe0\\x8d\\xaa+\\xdf,\\xb6z\\xfcZ\\x99\\x81Ri\\x04\\x19\\x9bj\\x88C\\x99I\\xeakN\\xd7\\x90`\\x14\\xf1.\\\\\\xc5\\x1c\\xf4\\x8d5*u3\\xafT?/h\\xfb%\\xc2\\x13\\x83\\xaa\\xa6E\\xf3h\\xcc-RNT3y\\xaa\\xde\\x1d\\xea5\\xdc\\xa9Ff\\x8bu>\\xd7\\x1a\\x10\\xbf\\x0fU\\x89\\xb2\\xbaG\\x9b\\xedU\\xc6J_\\xbd\\xa8M1J\\xf1S\\xca\\x1d\\xa3\\x8eg\\xe4\\xc8\\xf4\\xd1\\x1c\\xe9\\xbfj\\x99\\xd3Hnl]\\x12\\xd7\\xfa\\xa2p.r-\\xc9U\\xb5\\x7f\\x9a\\xe7\\xb1v\\xb1}\\xb5\\xab\\x14\\xc2\\x88\\xd4\\xe6\\x12j\\x99GY\\x15\\xee\\xde\\x8a\\x14\\xa0\\x0eL\\xeb\\xa2\\xe3$Z,\\xf86\\xac\\x16y\\x9a&\\x0cn\\xe7,\\x81\\xdb2\\xa9\\xd2\\xd6!\\xf4\\xcd\\\\\\x86B\\x8bi\\x10\\xcd\\x1au\\xdc\\xb0\\xbb\\xbc\\x88\\x17\\x8b\\xdaV3\\xbb,!C\\xb8\\x03TB[j\\xa5V\\x0b\\xb5w~,\\xd8\\x95x\\xc3\\xe0\\xee:\\x816']\\xa3 \\xa5\\xdfS\\xbd}\\xcb\\x9d\\xac\\x1ay}0\\xb5\\xfd\\xd6&)X\\x00\\xae\\xbev\\xc4\\x98qvk\\x8b\\xb2t\\x97ug\\xb3\\xa63\\x13\\x85\\x13\\xfd\\x80\\xe1P\\xa9\\x1dB\\xac|\\xa3]\\xb7\\x17!le\\x06\\\"\\xd1\\xf2Q\\xe7#\\xc7\\xcf\\x8c5\\xc2\\xf3\\xe5\\x17:q\\xbe:Al:\\x174\\xdf\\xaa4\\xc2\\xb6t;)t\\x88\\xe25\\x82\\x02\\xb8\\x88\\\"\\\\cW0\\x0c\\x93\\xc9\\xc0\\xf4-.\\xcb\\xd7\\x1b\\x0dU\\x93\\x15\\x03\\\\\\xf4\\xea\\xdc\\x960!\\xb6\\xb7A\\xdf\t\\x89\\x8e\\xa9\\x1at\\xfe\\xccd\\x14\\xed\\xd6\\x8c-\\xd6l\\x90Q\\xf8\\xc2fZ\\x10Y\\xe1Cn\\x12w\\x83\\xb8\\xdc\\x8b\\xd7\\xd6\\x98j3\\xeb$G_\\xcc#\\xa9KEiv\\x1aM\\xe6\\xf5\\x8aq\\x95\\xdf~\\x92\\xb1\\x1a.tK\\xdf\\xab\\xf0*\\x16D\\x93\\xa4\\xaa\\xd2\\x8a\\xb4\\xb4\\x1am\\x03 \\xe7\\x069\\x8eug\\xb4iV\\x10M]\\x12\\x99`\\xbe\\xc08\\x80\\xc0F\\xc9\\xa5U\\xf9\\xab/\\xf3f\\xa3\\\\`\\xaeUX\\xd34\\xc2}\\x97\\x8b\\x84g\\x00\\x7f\\xfb\\x86&5\\x0c\\xd0Sen\\x92\\xb7\\x16\\x89\\x1d\\xb9jq\\xfe.z\\xe7c\\xfa_\\xd4b\\x14B\\x7f\\x817w\\xdf\\x7f/\\xd5\\x15;\\x98\\x9b!\\xc5\\xe8\\xd6\\xc32\\xfc\\n^\t\\xb5\\xa7O\\xef4\\xc7\\xba\\x0b\\xce\\xc1\\x93\\xa7\\x81\\xcf\\x87$\\x916\\xca\\xf3\\xf8:\\x81!\\x16=\\xfbV\\x9b\\xc2\\x10\\xd2\\x10\\xb3\\xc9\\x85\\xb0\\x0eA\\xf5h\\xec\\xadNv\\xbd\\xd6\\x85\\x05\\x7f\\xb4\\xb8\tEvg|E{g-B\\x90Q\\x00I'\\xacI\\x9a\\xcc\\xe2\\xeb\\xb5r\\xc3\\xea\\xd3\\xcc\\x7f\\xe4t\\xd2js\\xe2\\xc2,\\xd8C0\\xcc\\x80\\xb5u\\x85IT\\xda\\x8fU\\xa7\\x93\\xb8\\xf4Xhw\\xb9\\x99%Y7\\x0f\\xdd=\\xec\\xfa\\x90\\xab\\x91\\x88\\xd0\\x86$\\x14\\xc3\\x8d\\x13\\xd4\\xa35\\x0cJ\\xa6\\xa5.\\x0b\\x1d!ez\\x0d?\\x13\\xf9\\xc1\\x05K\\x81\\x9eZ\\xd5*e\\xfa\\xad\\n^\\x17\\xc9\\xd4\\xd2\\x83\\x83 \\xc4\\x8c\\xa8\\xa3\\xcb\\x10\\xe2v\\xaa\\x1aR\\x1ap\\xce\\xf9\\xacG\\xec\\xb2d\\xe6\\xf9\\x8fz\\x15${\\x05\\xf6\\xf3\\x1c\\xd8\\xce\\xce\\xf3@\\xb9\\xb9z\\x91\\x07\\xdb\\xe0oo'A\\xa5\\x82\\xda;0\\xe5zM\\x8f\\xa2\\xdc&|o\\x96\\x88\\x9c\\xb9XTJ\\x1c>o\\xb0\\x90Q\\xeeC\\xf0\\x02\\xd8\\xe6\\xff\\xfcM\\xb51K\\xa4\\xc3\\xa68;+\\xc7\\x81\\xe7\\xf0\\xf5y\\x9de\\xec\\xbcF\\x04\\xc5G\\xf9\\xc6\\xb1f\\xaeD\\xf2\t\\x9eZE`\\xa9\\x1e\\xec\\xbd\\xc9\\x9f\\xc8OB3\\x01\\x95\\x03\\xfd\\x81\\xba^\\xfe\\xfa\\xad\\xc4I\\x88\\x1cT&u\\x1a\\xe9\\xeb\\x00\\xaa\\xaa]\\xb3\\xe2\\xec6Q\\xd5^\\xb1|\\x92\\xc5\\xab\\\"5\\x0c\\xa8#\\xd7\\x07\\xef\\xa2\\xa5\\x19\\xd3d\\xed\\xaa{~\\xb7\\xbcJ\\x17y\\x87\\x93\\x89\\\\cA\\x82\\xe5\\xd1\\x9c\\xf9\\x85\\x89\\xa7('\\xea50\\xca@\\xe4\\xe7\\x81bv*\\xf1\\x9b\\xce-G\\xae4\\x7fpOg\\xa1H\\xba\\x9eQ>\\xb6\\xfa\\xd2\\x93M\\xa0\\xa1\\x86\\xfd]\\x1d\\x81\\\\\\xaa\\x0e\\xcc\\xe7\\xbe\\xfe\\x07\\x9b\\x89n\\xe0SJ\\xe8\\xb4\\x9c\\xfd]\\xbd\\x95o\\xdc\\x15\\x8f)\\xfe7\\xf1\\x07\\xfb\\xe6n\\x89iO0\\xce\\x9e\\xde\\x17I\\xf9\\xc1Fd\\xc2\\xe3\\xfb\\xa7\\xa4v\\xa3\\xddK\\x12\\x0c\\x19\\x92+\\\\!\\xbd#\\xc1\\x87\\xac\\xa9\\xe5HF\\xd9%\\xfa8)_\\x8a\\x08\\x05\\x12\\xf5\\x85\\xb5$I\\x0b\\xa0\\xf5>\\xba1\\xfcr\\xe8[[R\\xdb'B\\x10\\xd4\\xd3\\xc8}\\xf9\\xe2P\\xe0![\\xefR\\x10\\xceY\\xdbh;\\xa1\\x05\\xcdH\\x15!x\\xe31\\xcb\\xdf\\xa6\\xd35\\x9a\\x9c\\x98K\\x89\\x8c\\x8e.W\\x06\\\"\\xde<\\xda}v\\x81\\x88\\xbdX9\\x17\\xae\\xdf/\\xd6\\xd7q\\x92\\x0f\\x1d{\\x8be\\x99\\xab\\x08\\xb0\\xed\\xe9z\\xc2\\xb2|\\x08~\\x9f\\x0b\\xbar<Ac\\xea\\x87\\x08\\x07\\x9a\\x0f\\xa1!{B\\xce\\x16lR\\xa4\\xbc\\xe55Y\\x890\\xef\\xfb\\x8e\\xfe\\xf5\\xd5\\xe6\\xa2\\x05\\xc3\\xb3k\\xe6\\xf6\\xe7\\xdb\\x0fYA\\x11\\xc1\\\"\\xebU+\\x02G\\x90\\x01\\x05\teyk\\xc5O\\xae\\xfd\\x8c\\xf0\\xf0O\\xfc\\xc1\\xee\\x93 \\xb0O'^\\xb4\\xb7\\xfb8 \\xef\\x98r\\xfa\\x8eI^\\xf1WCt1\\x12J\\x046\\x93\\xff\\xebjT\\xc2\\xfdY\\x0bm/$T\\x89\\xb8\\x15Y\\x9aG\\xb9v\\x98\\x8a-/\\xec\\x18P\\x03^\t\\xb44\\xff\\xa6c/{ !\\xf6\\xc16\\x97M\\xc6\\xf9\\x1a\\xed\\xee\\x9a\\xab\\x97\\xaa\\x92=\\xfd\\xf4\\xef\\xb61olG\\x1c\\x8d\\xbf\\xff\\xdb\\xd7\\x107UVm\\xaa\\x82o\\xb1w\\xa7?\\x8f/~\\xfap\\xf6\\xf3\\xbb\\xf1\\xe9\\x87\\x0f\\x1a\\x90\\xda\\xec)\\x92\\xde*\\xba[\\xa4\\xaed+\\x88\\xfc\\x187\\xa9\\xecOx\\xd3\\xbaw?\\xc7\\x82!xx\\x92&\\x0e+\\xdc\\x06\\xc7\\x81\\xdez5\\x8d\\n&\\x15\\xfd\\xb9\\xd7\\xa6w\\xd1\\xbe\\x95\\xf1\\xf5\\xfa!D\\xbd7q^\\x04~\\x10\\x08\\x19B\\xbc\\x9be\\xe9\\xf2\\x0f\\xe7\\x81\\x1f\\x93\\x01d\\x1a:n\\x8b\\x07\\xc3\\x9b_\\xd7V\\x84q\\xa6\\xf2\\xfc./\\xd8\\x92\\x0cvb\\x1fz\\xed\\xab:\\xfe\\xe1\\xf8\\xe2\\xe4\\xa7\\xfb\\xac\\xad\\x13\\xda\\xc2\\x1a\\x7f\\x19\\xad\\x1a|\\xdc\\x8dO\\xea\\xa0\\xb4q\\x83}3nP\\xe0\\n\\x1f\\x1e1d\\x8e\\xb2\\xfa|H^\\xf3\\xb7\\x8a\\x1a\\xe7\\xefOO\\x1ev\\xbb\\xa7r\\xbb\\xeb\\x00q\\\"\\x0f\\xaf\\x9c\\xf6rV\\xf8\\x1e_W.I\\xe7+6\\xf1~\\x89\\xc5\\\"vq\\x1a\\x04\\xbd<\\xcd\\x8a\\x1f\\xee: /\\xe8\\xd7e\\xd7|\\xc8\\x8b815\\xdc\\xea\\xf9\\xfa\\x0f\\x88\\x03\\xff\\xdf!\\x0e\\x88C\\xff$\\x0d\\xdf\\x86\\x16\\xc7\\x1f/~zX\\xd2\\x10[\\xa4\\xc1X^\\xce\\x9ad\\x0d\\x01\\xc5b\\x91\\x02L'\\x17\\xd1\\xba\\x98\\xffZ\\xe4\\xe2\\x1f\\xe6\\xd0?ysz\\xfc\\xa1A\\xe2UOy\\x19\\xe8\\xde\\xc8hM\\x85\\xa6\\x9f[\\x92\\xea\\xc9i\\x06.\\xb1\\x004\\x840>\\xe9\\xcd\\xe2E\\xc1\\xb2\\xee\\xc4\\x80\\xf5>\\xb1\\xbbs\\xf6_~\\xd0c7,\\xd3\\xc8\\xb4\\x13\\xb4`u_\\xb4d\\x0bD\\xa9mT4d6Q\\xb2?z\\xb8f\\\"\\x16aw\\xb2\\xefDg\\xd6[\\xb2\\xec\\x9a\\xf9N\t\\x19\\xc5T\\\";\\xdc\\x06X0\\xfe\\xe1O\\x0f\\x8d\\x08\\x9a\\x1e\\xa3\\xf2\tN~\\x0dtH\\xe8pZ\\xbf\\x06\\x805)\\xb2.\\xc2\\xc5B\\xe5\\xb6k^\\x97\\x89\\xcb\\x0f\\xf3m%\\x94\\x0f:\\x0b\\xe5j2\\xa6\\\\./e\\xec\\xc9\\x95\\xaa\\x03\\xc3{\\xfa;\\xfb/>\\x83\\x85uG\\xc5\\x19\\x9b!\\x18WS\\x0bv\\xc3\\x16\\xc32`|\\xadl\\xc9\\xf2<\\xba\\xe6Go\\xe9\\xe6\\x8d\\xb5\\x8c\\x1e\\xff\\xbe\\xa2\\xb7K\\xaf\\xd5\\xa4\\xe1\\xb4`\\xfb\\x97\\xfc|\\xc5&C(z\\x9c\\xc98W\\xda$\\xfc\\xf5\\x87<M\\xfc\\xa0W\\xa4\\x7f87C6\\x91\\xd2\\xb8\\xa1\\xdaZw\\xd8\\xa8n}\\xf7M\\xe9\\xddP\\x19\\x9d\\xa0\\xd2\\x84&k\\x8aA\\xeb\\xbe\\x07\\xa1\\xa6\\x04%\\xabP\\xe4Oi\\xd9\\xdb\\xce\\xc2I\\x9a\\xe4\\xe9B\\x06^\\xf3\\xbd\\xd2\\xea\\x85e\\x02\\x97\\x862\\x1ch\\xabB>\\x04\\xd6\\x91\\xb28f\\xf35\\xe8\\xc0\\xb1\\xaaok\\xa2\\x80\\xd8\\xa1\\xf8b\\x15\t\\xbe\\xc4l\\xba\\xc2G\\x87\\xf6\\xf0\\xc9\\xae\\xa9\\xd4\\x7fH\\xed!Er\\x08\\xf7\\xf8\\xff\\x15\\xf4\\x80 \\x87\\x8e7\\xd3\\x11\\xd2\\xe4]q\\x8f\\xc6\\xff\\xdc\\xab\\xfe\\xdc\\x0f\\x02a:\\xf3\\xf7'_\\xb4!\\xa3\\xeb\\xc0\\xe8\\x80\\xc67e\\xb41\\xc4ZI\\xc7\\xbd\\xa0\\x17'S\\xf6\\xf9l\\xe6{\\xd2\\xe21\\x9dA\\x84g\\xbd\\x9f\\x07\\xa6\\x11)\\x947\\xd1/a\\xc7\\xe9\\xf6\\x7fS:q\\x1b]\t\\x07ft\t\\xa3:S\\x96\\xb6\\x98\\x05\\xa1\\xf0\\xbd\\x90\\xea\\x1e\\xf4i\\xe7z\\xfb\\xa1\\xab\\xc3>\\x92\\xd8\\xed\\x0ebB\\xadqq3\\xe1\\x9b\\x88\\xd0\\x90\\xd7\\xcdh\\\"\\x91i\\xdc*'4\\xb1\\xab\\xe5\\xef\\x970\\xc0\\x83}\\x1b\\xbc4\\xc3\\x18)\\x05\\x0c!\\x1b%\\xb0\\x0d\\x83K\\xa3\\xea\\xae\\xac\\x8a\\xc0\\x0b\\xc1\\xd3kj%X\\x80\\xbf\\x9c\\x03\\xfc\\x1a\\x82\\x97\\xcf\\xd3\\xf5b\\nW\\x0c\\\"\\x97Z\\xc3O6\\xc9$\\xe0&~\\xbf\\xe9\\xfdD\\x9c\\xbdEO\\x1c\\xfc$\\xa1\\xd1nu\\x1dD}\\xb0\\xf7TCZ\\x071\\x0f\\x91_\\xfcMC\\xe6\\x1b(\\x8dkw\\xfa\\x14\\xf9\\x11&@\\x9e\\xf2s\\xeay\\\"e\\xeaj\\x11M\\x98\\x9f\\xb0[\\xf8\\xc0\\xaeO?\\xaf\\xfc$\\x04\\xef\\x9aW\\xf7\\xbc\\x80\\xd2\\x1b({\\xa2\\xdf:\\x1e.\\xa2\\xbc@ss\\x11Yr\\xb1\\xc0\\x1fy\\x19\\x16\\xd6@+R\\xb4\\x10\\x98\\xf6\\xd8|\\x1d[M\\n\\xa5\\x8b0{U\\x0cl\\xd0q\\xf5\\xea\\x80l\\xd3\\xb1\\x94k\\xae\\x8b}JXU\\x9a\\x16cm\\xaa\\xa9\\xd6\\xc1B\\x8f:n\\x1aB\\xd9=oG\\xe3\\xc8\\xbf\\xc5$\\xe9A\\x97\\x9d\\x90F\\x1cs\\xb0a\\xdb\\xe5\\x92}\\x11\\xdd\\xa5\\xeb\\xa2\\xdb={)\\x88\\xfc\\x03\\xdc\\xafS8\\xfeP\\x1c2}\\xbf\\xbe\\xdb\\xef\\xbb\\xef\\xd7\\x9fv\\x16\\xe5\\xffW\\xe0\\xab\\xff\\xbe\\xdb\\xca\\xc6\\x99P\\xaahvM\\xa3\\xa8HaM\\xfc\\xd0X\\xb3&\t\\xb4\\xb0\\xab\\xe6\\x98\\xa4\\xd3\\xb8\\n\\x96hm\\xaen\\xe7\\xa3J/\\x90\\x86\\x90\\xf7>\\xbe\\x7fu|q:~s\\xfc\\xa7\\xb3\\x8f\\x17-\\x8a\\x82\\xfaQ+\\x88\\x00\\x9e\\xa0R\\xb9\\xa7S\\xc2\\xc6\\xde~|\\xfd\\xe6\\xe2\\xb4M\\x91\\\\\\xefM\\x08\\xde\\x9b\\xf5v\\xfe\\xd3\\xd9\\xcf-\\x9dX\\n\\xca^>Oo\\x13\\x9b\\x0e\\xa9\\xa3b]j\\xed\\xabO\\x8ay\\x9c\\\\\\xbb\\x1c\\xe0\\x94\\x16\\x1f\\xdb\\x95\\x87T\\xd5\\xc8\\xdf\\xf8\\xd8;\\x1ev\\x1c\\x0e\\x19\\xe1\\xd8\\xd8\\n\\x07\t\\xf5\\xb7g\\xafN7\\x06\\x07\\xce\\x8d\\x06GUi\\x99N\\x99c\\xfa\\x18\\xea\\xdc\\x1fy\\xbcJ\\xee]\\xaa\\xfb\\xab\\x84\\x0f5\\x13\\xb1C\\xd0\\xc6\\xd9\\xabO#\\xfd\\xad\\x1c\\xa5|\\xd9\\xce\\xd7\\xcbe\\x94\\xdd\\xe1\\x94o\\xe7\\x91\\xc8\\x0f\\xc4\\x7f\\xc4\\xf99_U\\x11\\x86}\\x9de,)~D<\\xd5\\xdf\\xb8\\x98-u\\xec<\\xdd\\xfbUO\\x1d\\x82\\x95\\x13de`Z\\x97\\xe5\\x92\\xda\\xe8T\\xa5\\x9aS\\x07\\xf6\\xe8Z#\\x13\\xda\\xf2\\x86\\x04\\xb4\\xba\\xb6&\\xc9\\x80S\\xdd\\xb50\\xd6\\xa5\t{\\xb4\\xd6\\x8brw'i\\xb6\\x8c\\x16\\xf1_\\x19\\xba{\\x05\\xd2\\xfe\\x1d\\xfb\\xd6wp\\xae\\xef\\xe0\\x00\\xcb\\xeb\\xaf\\xf9w\t9\\xcc\\x1a\\x0eu\\xda\\x8d\\xa5\\xdd\\xab.\\xa0\\xd7SX\\xe9\\xa6\\xb1pT\\xff\\xe9\\x8e\\x9e\\xd3>kj\\xef\\x1a\\xea\\xe5\\\"0\\xa6jo\\x1bA\\x94\\xbaK\\x06\\xb6\\xfc\\xdb\\x81\\x1d\\xdfBf\\xc3c\\xd3\\xb8Hk\\x18\\xd2\\x89\\x94T\\xf2\\xcf\\xdeAG\\xd7/N\\xa5\\x8c\\xa1\\xd0jt9\\xc0\\x14\\xf3\\xe6d~\\x12\\x8c\\xfa\\x97!$\\xa3\\xc1%zc\\xfa&EoTm\\xab\\xbb!\\xd6\\x13\\xcd\\xda\\xc2\\xa90\\x14\\xd7\\x90#\\x16\\xfec\\xd2\\xc8Y\\xa4\\x0e\\xac\\xf7\\xf8]\\xfd\\xaf\\xce\\xb0zb\\xd2\\x0c\\xa9\\x96x\\x16\\xf8^\\\\\\xb0,\\xc2\\xa5\\xb0\\xc9\\x9b\\xe1K\\xd9\\x06o\\xc7\\x8a\\x9b\\xa1\\xf4\\xfd\\xac\\x87\\x0dk\\xc9\\xc71{\\xdaa\\x8d\\x9f\\xddp\\x8a\\x8dsI\\x8d\\xb0\\\"\\xf6\\xfa\\xab\\xe5\\x1a=\\xb9\\x1ce\\x97f\\xfe\\xbdX.b\\x93\\xa4\\x06\\xaa\\x1f#*Q(\\xa1\\xc8)NM^\\xa5\\x1a\\x108\\xb1[oA\\x83\t\\xedx\\xd3\\xd9r_\\xc4AB?\\xe6*\\x84\\x93\\x19oE\\x913\\xf3=\\xbdi4\\xc0\\xd1R!?\\xccb\\x02\\xa6X\\x86Y\\x97\\xda\\xa0\\nMr\\xb0z\\xa6i\\xc2\\x86b\\xdc\\x9d\\x83^\\x878\\xb0\\x0d\\xba\\x8f\\xa86\\x98\\x1f;\\x08\\x03\\xeb\\xe0\\x1e\\xd5\\x05\\xcb\\x7f\\x05\\xfe\\xe9\\x97VE\\xe4xk\\xea^\\xbe\\xdb,Z\\x1d+\\xfdBC\\xee\\xe8\\x7fH\\x85\\xc5\\xde\\xaf\\xcb:.Paa\\x99\\x94\\xaf\\xcb\\xa2\\x81Y\\x94\\xcb\\xa2\\xbd\\xfd\\x03Z\\x97AD_\\xfd\\xa7.\\xe3\\x97\\xde\\x97$:\\xadHw\\x81X\\x95\\xec\\x99%\\x91,yj\\x954i),!c!\\x9b\\xd9\\xb3\\xba\\x9eH\\xb5\\xc6\\xc0x?\\x93\\xefwI\\x84j\\x08S\\xfaK\\xd8\\xb9\\xd4\\xf4,\\x99\\xa6g\\xd1\\xac\\x0f\\xb3\\x10fJ\\x06?\\x7f\\x7fz\\xd2M\\xefQ\\xe6G\\xd0\\xa2\\\")\\x81\\x1b\\xa3\\xe9\\xa2Z\\x04-Ru\\xa5\\x08\\xe8\\xa3V\\n\\x01\\xc7`>~x\\xd3m,\\xb2\\xb3u\\xb6\\xd0\\xfb\\\"\\xc4\\xf6\\x86\\xce\\xfep~\\xf6n\\xa3\\xde\\xfe\\x92\\xa7\\xa6\\xb4u\\x96MY\\xc6\\xa6\\x9a\\xee%\\xe8\\xdc\\xff\\x87\\xd3\\xf3\\xb37\\x7f<}\\xb5\\xc1\\x18P\\xf8\\xc9X\\x9e.n\\xd8\\xd4\\xbb|\\xf8\\xb1\\x8c\\xcf?\\xfep\\xf1\\xe1tc\\xad\\x0c\\xad\\x8fI\\x84\\x13\\xbd]\\x98J\\x13\\xdab\\xde\\xa2\\xa4Qs=__\\x15\\x193e>]\\xad\\x14\\x04\\x0ehd\\xdd\\xa1\\xf0\\xfe\\xf8\\xc3\\xf1\\xdb\\x87\\x9a:\\x9f\\x9d{\\xe6Y\\xb4|\\x17-\t\\xd0\\xc4U\\x85\\xd7\\x84\\xd6o]\\x15\\xdb\\x85y\\x13\\xcc1\\x9cg/\\xce\\xff\\xe7\\x92\\x88 7!tB\\xea\\xbd\\xf0T\\xe6\\xe7\\xcf\\xfc$\\x9d\\\"\\xd1\\xda\\x8a\\x05g\\x0dG\\xb0\\x16\\xaa\\x88$Z2\\xa17\\xeby\\xb0\\xad\\xde\\xc6\\x89|\\xc7?\\xde\\x11\\x05\\xaa\\x1d\\x1f\\xf3\\xf7\\x97_\\xc4\\xf61\\xca\\xe9\\xea\\x02\\x8e\\xc0\\xc3\\x19\\x8d?/\\x17\\x1e\\x0c\\xe5/Z\\x7f\\xa0i\\xf7\\x18\\xe6\\xf3F\\xeb$7\\xd6dA\\x08#\\x0f\\xa1\\xc9\\n\\x86Wv\\x93\\x10f\\x97A\\x08yg\\xac9}\\xfb\\xfe\\xe2O\\x02w\\xc6\\xaf\\xdf\\x9d\\xbc\\xf9x\\xfe\\xba\\x95\\xb0l\\x84EoY1O\\x89\\x1a\\x0f\\x83Kq2Y\\xac\\xa7\\xect\\xb9*\\xee\\xfe\\xc8Ak\\xf3-\\xc2\\x1cx+.y\\x1ee\\xc2v\\x1be\\x89\\xef\\xfd\\x1ce\t\\x06\\x1el\\x02\\x08L\\xd0\\xe4\\\"I\\x0b\\xb8f\t\\x17^\\x19D\\x80c\\xfb\\x1f\\xec\\xae\\x87\\x16d6\\n\\xe4\\x18\\x1d\\xd7\\x81#\\x0f\\xb3\\xe8c\\x04@\\xce\\xd9g/\\x84\\x9c\\xaf\\xfd\\xba}\\xed\\xffx\\xfc\\xe6uE3\\xce\\x7f\\xbd\\xe5\\x8e\\xf3\\xb3\\xe3\\xf3=z\\xad5\\x05YGH\\x04\\x84\\xfa\\x9f0\\\"\\xe7\\xb4\\xe3\\xd1\\xe7\\xe5\\xe2Q\\xdc+X^\\xf8\\xb1\\xd8\\xde\\x1c\\x0d\\xd6K\\x96\\x8f\\xc5\\x96\\xa4\\xbe\\xe4{x\\xd2\\xe3\\x9ca\\xc4\\xa1\\xf3s\\x8c\\xf3\\x8bd\\xcc\\x10ArB\\x18\\xb1\\x86!6\\xdfcl4]c\\xb7_R\\xd3\\xefx\\xfb1S\\xd6\\x8f\\x1a\\xed\\x10m\\x95\\x8e\\x15\\x94\\x01\\x95K\\xecV\\x18\\\"\\x8e\\xb0\\x9bh\\x11\\xf3\\xc9\\xbd\\xe7\\xad\\xa3\\x91\\xfb\\\"\\x84\\xb4\\x835\\x18\\x87FAR\\xe4\\xa2\\xa2\\xc8!(\\x0b\\x85Ks\\xfe\\xa4\\xd1\\x93\\x1d\\x15\\xa5}\\x7f\\x08\\x93\\xfco\\xdc%\\xdavx(\\x1cH\\xdaq`t\\xd9\\x15\\x07\\xbaX\\x03\\x81\\xc5F\\xd6\\xacCj\\xdd\\x12\\xb0\\xdf\\x18\\xf0\\xe7\\xa7\\x17\\x9c\\x9b{\\x7f\\xf6\\xee\\xfc\\xc1\\xb8\\xb8\\xcc\\x8c\\x07\\x035\\x1e\\xce.\\xc3k\\x9d\\xde\\xd2A\\xc8\\xd6\\x0ef\\xc3_\\xa3\\x13\\x1d\\xc2\\x07\\x8e\\xc0\\xd0\\xea\\xdb\\xa0\\x15\\xd6\\xd2dP,\\x8e\\xfcC\\xd1V/!\\xcf\\xc6\\xd2\\x90_T\\x92?\t\\x9e\\xaa\\x88\\x8au\\xce\\x19\\x16U\\xb5zS_\\x9bP\\x96g,_\\xa5I\\x8eY\\x02\\xb2\\xa07g\\xd1\\x94\\xa19\\xd2\\xba\\xfc\\xfb\\xcb\\x17K?\\xc0\\x17c\\x824\\\\\\xe3}\\xb1\\x1d\\x8e*i\\x08\\x91\\x8b\\xdd_;(\\xe4B\\xc1\\xae\\xf7\\xc3\\\"\\xbd\\x12\\xda\\x97iTDzPm\\xbb\\x8e?A\\x8a\\xed\\x1aD\\x08^\\xc1>\\x17\\x9cr\\x88\\xd6\\xf8\\x112\\xe9\\x88\\x95\\xff\\xf1\\xf1\\xf4\\xbc\\xedJ\\x7f\\x03\\xa4\\xfc\\xaf\\xcd\\x902\\xd6\\x90\\xb2U\\xec\\xf8\\xaf5\\xcb\\x0b9\\xe9\\xd8\\x05\\xf9.\\xa2\\x05\\x9f\\xf9\\xdb\\x8f\\x17\\xc7\\x17\\xa7\\xaf\\xfe\\x91 \\xb0\\\\\\x17Q\\xc1\\xa6\\x1f\\x1e\\x0e\\x10\\x929<{\\x7f\\xfa\\xe1\\xf8\\xe2\\xf5\\xd9\\xbb\\xf1\\xdb\\xd3\\x8bc~B||0:\\xd5$r9\\xa4\\\"\\x01\\x92O\\xec\\x8e\\x96\\xa6F\\xad,\\x85\\x83[\\xeaz\\x1eYN\\xa0\\xe5J(V\\x0e\\xb5\\x0e\\xae\\xcf\\xf3 \\x080{dY\\xbd\\xd2\\x0el\\xfcI\\xab\\x90\\x8d\\x9f\\x1eUX\\xe2\\xaa\\xb7\\xe0\\x87ll\\x9f\\xaci\\xd0M\\x1b$\\x98\\x87\\x87>\\xc5\\x9a\\xb0\\xa3qOL\\xd9\\x82I&C'\\x87Y\\x08\\xe9e;\\xde\\xab\\xc9<\\xe8\\xd6\\x7f\\x98\\xb9\\x94{\\xbb\\xe3T8-;?\\xf9\\xe9\\xf4\\xed\\x83\\xadI>\\x993\\xeat\\xfe&*\\x96\\xf2s,\\xd6\\x11\\xd5\\x13\\xfdTT,\\x13\\xca\\x87/_\\xb0\\x9e\\xbc\\xb6\\x1dR\\x1fxc\t\\x83s\\xf1\\xe6\\xb2\\x9e\\x97$(\\x7fv\\xbe\\xbf\\xdd\\xa3c\\x99=\\xdb'4\\xdd\\xf2\\xb67_\\xb1I\\xccr\\xaf\\x8b\\x1d\\x00\\xb9\\x16!\\xb2d\\x99\\xcf\\xd0_?/\\xb2\\xf5\\xa4H3\\x12zZ*\\xa8HK\\x0f\\x7fx\\x08~\\x82mD\\x01\\xdf\\xdb\\x98\\xdbh\\x08\\xa9n+\\xd0\\xe9*\\xe1\\xa6\\x16\\x87\\x15\\xe7\\xb8\\xff\\x8cV\\xd8\\xef\\x99 \\x91\\x86\\x85\\xfb\\x94\\xce>\\xf1\\x07V\\x948\\xa9\\xb1\\xa7\\x14\\xf6\\x93\\xde*K',78\\xdbU\\xc9\\xfd\\x94\\x89\\xf6k\\xe5S,\\xafg\\xc0\\xaf\\xd7\\x98c\\x8d\\xb7\\x82\\x9f<\\x99GI\\xc2\\x0c\\x85\\xdb\\x0d\\xd6x\\x15\\xe7\\xab\\xa80\\xc35/1\\x1di\\xed\\xd55\\x11\\x80\\xee\\xae\\xed*\\xf7F\\xa67\\xd8\\xb6\\xc3_\\x83\\xd4\\xea\\\\\\x1bWJ>s\\xe6\\xbeW\\x97Z\\xd7V(R\\xf5\\x08\\xba\\x82\\x15B(|B\\x92\\xa9\\xbd1\\xa6s\\xd5h\\\\\\xc1\\x1fu\\xe1%x\\xcez[\\xd5\\x88V|\\xe7O1\\xc6\\xc1\\xaa\\xb1\\xc9*G\\xba\\x8c\\xd6\\xcaQ{\\xf0\\x9c2lJ\\xaa\\xe8\\xaa\\x95\\x11S\\xb2\\xbd\\xed\\xb8g\\xbb\\x1emo/[o\\xda\\xd7\\x8e$\\x1a\\xf2\\x06\\xe8\\xc7j\\xe0\\xa1\\x15\\xae:\\x84\\xcc_\\x06!,\\xbf\\xd3^5\\xc7\\x86\\xd7VG\\xff\\xc8\\x93[\\x00\\x87\\x90\\xf8\\xcf\\xf6\\x02\\x7f\\x16\\xe0\\xb5l#\\xec\\xd0\\x94\\xe1\\\"\\x9e|\\xf2#\\xff\\x0e\\xe3\\x94\\x0ct\\xfe\\x0f\\x86p\\x83\\xc6`\\xbd$\\xbdmm\\x0dk9\\x1b\\xc2\\xd0\\xc2\\xb12\\x19N\\xd8-\\xcc\\x83\\x1e'{\\xbb\\xfct\\xe2\\x7f\\x0czi\\\"\\x8578\\x84\\xab\\x10\\xbb\\x8b\\xfc\\xb8\\xb7J\\xf3B\\xeeB$5\\x03d>&\\xbdh:=\\xbdaI\\xf1&\\xce\\x0b\\x96\\xb0\\x0c\\\\\\x01\\x0b\\xb5\\x06P\\xdb=\\xe9\\xc5K\\xde\\xe39\\x86S\\xcdU\\xd0c\\xf7\\xd4&\\xfa\\x18|tt\\xe3\\x07\\xca\\xef\\xea\\xa6\\x87\\xf6\\x88t\\xa7\\xa1\\xab\\x10\\xb6\\xc4\\xc8y_^\\x9ad,\\x9a\\xde\\xa1\\x1d\\xc2d\\x1e%\\xd7\\xcc\\x838\\x81\\x85\\xef\\x89 \\xaf\\x1e_>\\xf7\\x88\\xf2^\\xb4Z\\xb1dz2\\x8f\\x17S_\\xfb*\\xe8\\xd9-\\xb7\\xe1p\\xde\\xcb\\xd82\\xbda\\xa21\\x91 \\xa7\\xdc\\xa7\\x06\\xce\\xd6\\x16\\xb5a|\\xac\\xb8\\x88\\x97,]\\x17\\x1aF\\x84\\xd0\\xaf\\x1f\\xb8\\xfa\\xd1g}?\\x84\\x95q\\x06pZ=\\x84i\\xd5\\x04\\xfe\\xf5\\xedq2\\x1bM\\xebh:\\xea\\x08\\xc2\\xcd\\x9f\\x9b!\\xb0v\\xb2\\xd9\\x18\\xc9\\xb5\\xb5kBQ\\x02\\xb2\\xeb\\xb6\\x8e[\\xa0\\xb7)\\xb3\\xb3\\xfb\\x94dvv\\xfb\\x8f\\xef\\xc3\\xe2`\\xb2\\x10\\xa4\\x95\\xa9_\\x88|\\x1b:\\x9b#\\xed\\xedJK\\x08[\\xf1\\x82\\x91\\xa2{3;\\xa5\\x98\\xf8\\x82\\xf3\\xc2\\xa8\\x05\\xe3b\\x92\\xb4\\xa4\\xe5\\xec\\xc32\\xce7\\x8cs[\\x8fu\\xffd\\xef[\\x02\\xda\\x17\\xba\\xe5\\xc0!l\\xb9\\xcc\\xb9w\\xfb\\xbf\\xa4Q\\x8e>\\x1eY\\xa7\\x8b\\xa5d+\\xf3\\\"\\x9c%\\x1d\\xa1\\xc5]\\xa8\\x8f\\x89\\xe1\\xd40j\\x8aw2\\x9a\\x13\\xd8\\xe3\\x81\\xccOC\\x88\\\\\\xb5\\xa112\\x85zn\\xa4\\xb3}1J/\\xfd\\x88\\xd0\\x10\\x98\\x8f\\xd0\\x0e\\xa2\\x8a\\xc2Y\\xb7=\\x8a\\xb3ztF\\x9e\\x0c$\\xa3\\x1e\\xdb\\xe0K=x\\xeb\\xb7\\xeeM\\xd3\\xa4\\xda7%`\\xd5N\\xf0\\xf3\\x00c\\xfav\\xd0\\x80\\xab'\\xf3=\\xce<x\\xd6\\x95\\x82\\xfe\\xb4z[\\xeaO\\xe6\\x8b\\x08\\x89-M:\\xeeN\\xf8\\xc3\\xe7A\\x16~\\x95\\x83mW\\xcboF\\x04\\xda\\x82]?u\\xd9{s\\xf4\\xce\\x0cE\\xb8\\xbc\\xbe\\x1d\\xc2(\\xf1\\xf7\\xf6\\x07\\x81\\xc6\\xe0}\\x03my\\x80\\xc1\\xec\\xf6\\x9f\\x06\\x86\\xa1l\\xbc\\\\-\\xe2I\\\\`\\xf9\\x93\\xfd'\\x01:\\x82\\xef?\\x95\\xff?\\x13\\xff?\\xeeo<\\x89j\\xb8\\x07T\\xf8|.2\\x92\\xe7\\xcd>\\x15\\xcb\\xc8\\x1b\\x89\\x88\\xd7 \\xd2'\\\\\\xb6exq\\x918\\xc2^\\nM\\xc0\\xb7R_\\x84\\xc9\\x8e\\xe5\\xff\\x98\\x0d\\x87\\x8b\\xdb\\x9b\\xa1Q5\\xe9\\xc1>}\\xca>1\\xe5j\\xa9R\\xd83St\\xca\\xfc\\x15\\xe6\\xa1,\\xc4\\xf0\\xa7\\xfd.g2\\xba\\x1f\\xe4\\xd4\\xc9\\xbc\\x15\\xa1d\\xa9TP\\xf5\\x8dX\\nb\\\\\\x84\\xdf\\x19\\x84(\\xb2\\xa3\\xa7|\\x8aQ\\xe2\\x82@Jb\\xa1\\x90\\xdaa\\x07\\x06!J\\xe9\\xecy\\x99o\\x12\\xc5\\xbe\\xed\\xed\\x05\\xbc\\x80\\xc9s\\xd7\\x81\\xc2%\\xa4\\xb5_\\x8c\\x16\\x97\\x0e\\x82\\xcc\\x05w\\xc2y\\x81O\\x01{\\x995I\\xc7\\\\\\xa6_\\x8d\\xa6\\x0e\\xe9XO\\xaf\\xcd\\xbb\\xe1\\xc2C\\xee\\xdf\\x840\\x0da\\xc5\\x99{QA\\x98r\\xceQ\\x80\\xb9\\xe1\\x9c\\xfc\\x0d\\x0c!\\xe6c\\xc6@\\x17\\xfc\\xcd\\xe8\\x92\\x9f\\xceT\\xf8!\\xebM\\xe6\\xaf\\xb0\\x83y \\x00\\xc6\\x87\\xf7\\x9d\\xfb\\x13\\xb5>\\xf7E\\xc2\\xbd\\xfdN\\xbc\\x1bq\\x14{\\xe31\\x9a\\xb9\\x8e\\xc7b\\xaf\\xe0\\x9e\\xe0\\x8c\\x88\\xfc\\xc0\\x86z{V\\x9cZ\\x12\\x19\\xa2\\\\Z\\xa1\\x12V1Zb\\x1a\\xc3\\xbf\\x01\\x95\\xd7\\xa3\\x82\\x0b\\xf7\\x1b\\x9a\\xb5k\\xf4\\xc9\\xe4\\xc5\\xd261\\xab9\\x10\\x16C\\x95\\x9c0\\xc4\\x0d\\xc1\\xab\\x9b\\xe2\\xb6\\xc5\\x8f\\xc10\\x94\\\\&E\\xb3\\x07B\\x06p\\x9b\\xf7\\x7f\\xf5\\x1d\\x8b\\x9dv\\x81\\xc7/lN\\x1cBQ7\\xa1\\xc8Q\\x17\\xcd>\\xb3\\xc9\\xba`\\xf2N\\x0b_\t\\xfb\\x81?\\xe4ir\\xbeb\\x13\\xed\\x95\\xfc\\xe9\\nJ\\x11\\xfb\\x89\\xbfO\\x862\\xe7%\\x83=\\x87\\xa3<\\x91\\xecX\\xad\\xc5/c\\x0b\\\\\\x9bL\\xa3\\x0cU\\xa9\\xec\\xf3\\x15\\x9bH\\x07\\x05R\\x1aj\\xc4VfX\\xf6TL{(L\\xd1rv\\x91rx\\xcbz\\x89^\\xc55\\xa1\\x90Z\\xa9_c655\\xa1\\xa9\\x1b\\x0c+\\xc71\\x14\t#\\xcc\\xe5\\x04\\x11\\xbc\\x80\\xe29D\\xdb\\xdb\\x01\\xc4\\xa3\\xe8\\xb2\\x96&$\\\"\\x0e\\x08\\x13d1\\x82*N\\x14\\x06\\x7f\\xa8_\\xcf\\x9dD\\x939\\xa3\\\\\\x8c\\x94\\xd4\\x11\\x8f\\xfa\\x0e\\x07\\xa5\\xdc\\x0eP\\xbf\\x0e\\xab;\\xce\\x80\\xb2K\\xe0\\x8f_\\x8f\\xb9I\\xe5\\xacq\\xf2\\xe9F\\x7f9\\x1a{\\x05\\xbd\\x7f\\xc9\\xd8\\x8c\\xa3<\\xdeb\\xf3\\xedh\\xcc\\xd2W\\xa3\\n\\x81]n\\xc2\\x80\\x87\\xd4F\\x7fh\\\\!\\xcd\\xb8\\x94\\x0c\\xda[\\xa4\\xd7\\xb2k\\xe1\\xb6\\xea\\x9b\\x1a\\xdc\\xfah-J\\xb5\\xc1h\\xcb\\xb0\\x8c\\xf7\\x1f/\\xc3`\\xc7\\xd2\\xae\\xd0\\x8aRcP\\x95\\xbf?]\\xef\\xa2c\\xb8\\xd1c\\xbd\\x9d\\xa4\\xcbU\\x9a`VJ\\x0b\\x04e\\x94\\xb6\\xf3\\\"\\xcd\\x1c\\xd6\\x01Z\\xa0b\\xbb\\x02\\xde\\xaa\\xd5z\\xb1\\xeb\\x08\\xab\\xa6\\x8c%S\\x96\\xd9\\xa5\\xb9\\x0c\\x1c\\xfe\\x89\\xbd\\x8dV+6=I\\x93\\\"\\x8a\\x13\\xaa\\xea\\xa2\\xdc\\xbeK\\xb6L\\xe3\\xbf\\xb2\\xc0\\x8fDvr\\x91>:F\\x1e\\xdcJ\\xa2\\xe5T\\x0bfiZ\\xbcN\\xf8\\xda8\\x9d\\xd9\\xf4\\x99\\x0d\\x810\\x1c\\xe7\\x0f1\\xf8\\xa19\\xd0\\xdc\\x1e\\xe8\\x02\\xc7J7)\\xa05\\x84\\xb5\\xfdYd\\xdd\\x88\\x80\\xc5\\xcb\\xba=\\xd5Z/\\x9a6r\\xf6\\x02\\x0d\\xd9(\\xc2\\xd9\\xe2\\xf4\\x05\\xbf\\xa8\\xe3\\x17Tk\\xeft\\xfe\\x02d\\xe58\\xf3\\xfe\\x94bf\\xd0=\\xea7\\xb2\\xf1uTD\\xfa'p\\x04\\xff$0\\xb0\\x81y\\xbb\\xe6\\xcc\\xdbcj\\xbe\\xd7$[\\x17\\xcb\\x12\\xda\\xe5\\x0cK\\xac\\xd6\\xd6\\xaa5\\xca\\x01\\x11?1\\x0b\\x16\\xb2\\xc0\\xead\\\"\\x0b\\xac>f\\xb2\\xe0\\xc0,X\\xe1\\xd2\\x99\\x97\\xe4S\\xac\\xbe2\\xde\\xcee#O\\x9eXC\\xbd\\x11\\xe2\\xffc\\xf3\\xfa|)?y\\xfa\\xf8\\x19\\xcd\\xe6^\\xff\\xbal._W+\\x1d\\xb4C\\xe5k\\x13\\x81\\x06\\xa3l \\x8eR\\xa7\\\"Y=\\x9a&\\xb9\\xad*\\xd4\\xaf\\x18\\xf2\\x8aM\\x12\\x1a\\xefL\\xda\\xe1L\\xcc\\x02?\\xeb\\x952\\xb3\\x8a\\xe8\\xbf\\xae\\x19\\x9594\\xe7n\\x0d)\\x90:\\x04\\xfd\\xd1F:\\xab\\x19\\x06%r\\x98\\x8b\\xda\\xdbQ\\xfb\\xdc?\\xb1\\xbb!xb\\x1f{\\xf4A\\xa0?\\x9224r\\xec\\xd4#\\x07>-\\xf5\\xd7\\\"\\xee\\xc7\\xa9Hl\\xcf\\xe9\\x91a\\xbf\\xf67\\xf4u\\x0fdn\\xf3U\\x96\\xaer\\xf9\\xf7$M\\n\\xf6\\xb9h\\x81#\\xb4\\xc2\\xf2\\xebe\\x10\\x12\\xe1\\xd8\\xcbb\\x7f\\xd5+\\x89\\x9dK9\\x8d\\x98KC-\\x95\\x9c\\xc2\\x0d\\x1fp\\xc2&\\x85\\x16\\xdb\\xa4-\\x80\\xeb\\x8dL\\x8eo\\x9a_\\x7fE31\\xe6S\\xd1'\\xd5\\xa3PD?\\xbe\\x96\\xd1\\ns\\xd0_\\xa4\\xfc\\x04@\\xdb\\xe7v\\xa9\\xc1h\\xb0}\\x9d\\xf1\\xde\\x9a\\xba\\xc7\\xd4\\x1f\\xf7\\x9a|\\x0d\\xfc\\xa4\\x8c\\xf1D\\x146d\\xf6Ij7\\xee\\x0d\\xd4d#J\\xb2\\x01\\x15\\xf9\\xadP\\x107t\\x1f\\x96rl@5\\xeeC1Z\\xa8\\xc5M\\xef}\\x96\\xde\\xc4\\x9c\\x97\\xef\\xd0\\x18 j\\xa6Y+j\\x82\\xe0\\xb16\\xa3Qn\\xf2t_:\\xdf@\\x97Zh\\xd2W\\xb1\\x81`h$\\x0ci\\xb4\\xf4j\\x8c(]r\\xc6)\\xe7\\x8c\\x1b=\\xa7by\\xd9JS&\\xd2\\xba'\\x1670\\xc9(\\xbd\\x0c!\\xc3\\x7f\\x19\\x99\\x88\\xa6i6c\\xbc\\xacp\\xb0\\x9f\\xc44\\x85\\xcdc\\x830\\xde,\\xb1C\\x9d0\\xb8x\\x1c\\xf58(\\x82\\x9b|\\xeb\\xa4\\xff>\\x14C\\xa4\\xac\\xc5\\xda8\\xb6\\xf6\\x93\\xe2\\x8a\\x03'\\x12Z~\\x8c\\xb2G\\xa3^\\x13=\\xb5\\xa9J\\xb1)U\\x11\\x14e\\xa2\\x90\\xfb\\xe7x\\xb1\\xf8\\xc0&,\\xbeA\\xa1%o 2&\\x81id%\\xf9\\xa3M\\xb8\\xda\\xbd\\x9b\\xd2\\xd4\\xafM\\xa4\\xa7#y\\xdc\\x944\\xaa\\xcb\\x06\\x0e\\xd8e\\x1d7\\x14\t\\x8a\\xa4\\xd3\\x96\\xa6\\xee\\x8b8A\\x18\\xb9n\\xdc\\xf4\\xa7@a#\\x0e\\xc1\\xcb\\xd2\\xb4p\\xdd\\\\\\xa8\\xa7\\x9d\\xa5\\xdb\\xd8\\xec\\xc1A\\xfa\\x1a\\xc8\\xde\\xd7P\\x97B\\xc9\\xedn\\xc5c\\x03\\x8db\\xa9\\xaaY\\x08\\xde\\xf1j\\xe55\\xcc}\\xde\\xabl/x\\x7f\\xbek\\xe6q\\x88\\xb7\\xa2\\x81\\xc5\\xcc\\xb4\\x1aUTJ\\xb3$Z\\x12z\\x8e\\x16\\x90{\\xd3\\xf8\\xc6\\x92\\xe5\\xd5\\x93\\x17w\\x0b\\xd6\\x14\\x14i\\x15M\\xa7\\xe8B\\xee\\x0d\\xd8\\xb2\\x01k'\\xe9\\\"\\xcd\\x86\\xe0\\xfd\\xff\\xa2(r\\xe4\\xbd\\xb3W0\\x04\\xef\\xff\\xf9\\xdf\\xff\\xb7\\xff\\x03<\\xf7\\xf9\\xea\\xc5\\x9e\\x00\\\\\\x08\\xdeI\\xe9\\xa8.\\xd7\\x96/\\x0c\\xe6\\xbf>\\x84\\x02\\x8e\\xc0\\xe38\\x0f%\\xb5\\xf0`\\xc8\\x17\\xd1\\x0b!g\\x0c\\x8a9+\\xbd\\xe3=+\\xe4w}b\\xb7\\xad\\xca(\\xb5&\\xdd\\x18f\\xb9B[>\\xab\\xd8o!oW\\xdcx\\x9c\\x7f`\\xd1\\xa4h\\x17.\\x9a\\x0dI\\xf5\\xa7\\xf3\\xd1\\xa5\\x9e\\xf2\\x08k\\xa7:\\xd0\\xc2\\xdf&N\\xfe6i<\\xad\\x92{\\xf0\\xb7\\xd0*\\xd5\\xd1'RB\\x9eHI+\\x9f\\x0b\\xdd\\x89\\xb9z6%\\xea\\xea\\xa9\\xae\\x02:\\x9cI\\xea\\xe9 \\xe1&n\\x1a\\xdcI\\xc2\\xc5\\x1bwz\\xda\\xd2\\xbd\\xa8Dl\\x01\\xa3\\x06\\x0d\\xa8Y\\xb5\\xed\\xde\\x1dZM\\xfdJ\\x06\\x95\\x91\\xb7\\x83Yy;\\x88\\x96\\xa9\\xe2v0\\x85\\x17\\xc0\\x9eC\\xba\\xbd\\x1d \\xd7Y\\xbb\\x1dt1\\xb0\\xa0\\xdf.\\xe9h\\x9b9 \\xd7\\xc9TP\\xb6XOG\\xc5\\x87\\xea\\\"\\x92\\xe36\\x89G:d;VL=\\xc27\\xbb\\xc0c\\xc6\\x8d\\x1f\\x8e\\x99Q\\xd4\\xddPgW0\\xb4\\x94\\xc6\\xf6\\x19\\x9d\\x86\\x10\\x9b@\\x8ag\\xe0\\x97\\xc6[U\\xe2\\xbf4\\x90A+\\x13v\\x0b\\x17w+v*\\x12x\\xbdcl\\n\\x11\\x88\\x0fB(R\\x981\\x0e\\xfd\\xa8:#z\\xf0s\\x94\\xc3u|\\xc3\\x12\\x880\\xd5\\x8d\\xaf\\x99\\x04\\xa5\\xfcPY'BM>\\xe5\\xe7\\x89q\\xe1\\x9aZA08\\xd6\t\\xa3-3*\\x84\\\\U\\xce\\x8b\\xc5\\xbc]\\xe4(\\xb0\\x1b\\xfe\\xf3N\\xb1\\x9f>\\xfa\\x14\\xe0\\xcf[?\\xc2\\x1f\\xb7\\x82[\\xf3\\x99\\x1f\\xf4\\x16\\xe9\\xb5\\x0c\\xeeR\\x9d\\x86\\xb38\\x99j\\xc7\\x1e\\xe70$\\xb3Q\\x0e\\xa0\\xd3%\\xa1\\xdb|_Nx\\x08\\x89\\xff\\xe4\\x89i\\xc8W\\xe9\\x8c\\xeb\\x97\\x03]\\xba\\xa4\\xaf'\\xdc\\x03\\x99G9^\\xb3\\x0bG\\x89w\\xe9\\x94\\xe5C\\x18<D\\x9f\\x9a\\xd1\\xde@[\\xb9\\xc4\\x7f\\xda\\xc5x\\xca\\xc4TE\\x14\\xd6\\x8bEe9\\xe5{{}O.\\x0d`\\xdcY\\xe1\\xaa'\\x82\\xb3\\xc6\\xb9\\xa2Ipd\\xbc*\\xf8+\\xce<\\xac\\xf3\\xb9$3B\\xc7\\x08L \\x86\\xf0\\x82*_\\x10_k\\x81\\\\\\nd\\xfdy\\x03\\x97\\x0f\\x01\\xb8M\\x0c\\xca\\x88\\x99\\xb2\\xd2dA|0\\x14W\\x11\\x85\\x90Y\\x93p\\xe3x\\xbcm\\xcbk%\\xb7\\xc3\\xfb\\xb4\\xf5b\\xd12%\\xc7\\x12o\\xa5\\xc2R\\x7f\\x12%\\x1fs\\xf6\\xea\\xec-^\\xfe\\xf161\\x1e\\xc3I\\x9a\\x14\\xc8\\x8b\\xc6\tL\\xd3\t\\x9e'=\\xf5\\x87\\xa4\\xdf\\xc8\\xba\\xeau\\x87\\xe0\\xc5I\\xc2\\xb2\\x0b4r\\xd6\\x85\\xef\\x07\\x81@\\x0d\\xc1\\x95j!\\xf1\\x0f(\\xa3T\\x9fo\\x80\\xb0\\xf9@.\\xd9F\\xe6f1\\xb7\\xba\\xa9bA\\x99\\xa6\\xfaL\\x8f\\x86Q\\x04\\x0e\\x12\\x7f\\x12%\\x9c\\x02r\\\\\\xe1d}\\x11\\xe59D9Deo\\xce,b\\xe2\\x9cf\\xea.a\\xcc\\x9b\\xb8\\x8a&\\x9fr\\x89\\x0d\\xe5{\\xa1\\xb93_G\\xd95\\xe7s\\xac\\xc6\\xedsP\\xb1p\\x1a\\x9f\\xc3\\x92\\xffZ\\xb3ukPw\\xf5\\xd8\\x034\\xdf|\\xf9\\x82\\xbe\\x92\\xc6kA\\x15\\xb4)VS1^\\xd4\\xbf\\x97o\\x15Q\\xb1\\xe7\\x18\\xd6f\\x93\\xa4E<\\xbb;\\xe64\\xad\\x9dqS\\\\\\x991T7cRX\\xa3u\\xd7M\\xca\\xbaQvMsl\\xa5\\x15A#\\n2\\xe5e\\xba\\xc5\\x89\\xb7\\xfa!h\\xf8\\xee\\xbe\\xb7)\\xd2\\xb8\\x99GM\\x95Zq\\xa1\\xb2?\\xc9\\x8c\\xb2Qz)\\x15x\\xa8\\x0cu\\xa5S\\x05}\\xdc\\x87\\xd0\\x0f\\xab\\x81\\x1f\\xc2\\x06\\xf1\\xa8\\xf5\\xa5\\x9d\\xcc\\xd9\\xe4\\xd3*\\x8d\\x93M\\x02d\\x9b\\xa09\\xb2\\xf0R\\x0ekH\\x0c\\xcb\\x18@\\x96\\x8ao:\\x89\\xdaf\\xc7|\\x95\\xeb\\xcb\\x81v\\x19\\xf4`\\x84\\xfdE}\\x03TE\\xad\\x9b c9\\xeb\\x04\\xa4\\x8d\\x10\\xa7\\xad\\xd7)\\xab\\\\\\xe9:v\\x8d\\x03\\xa5\\xfc\\x19\\xadD\\xb1\\xb5\\x0b\\xc5\\x9a%q/\\x9aN\\xdf\\xa7\\xe9\\\"N\\xae/R\\x15z\\xfc^\\x87\\x92\\x9b\\xd3[\\xa4\\xd7\\x17\\xe9\\xea\\x0d\\xbba\\x8b\\x0f(\\x16\\xe6C\\xd8zhNo\\x9f\\xb4\\x92H\\x9b\\x0c\\xd78\\xdcm\\n$\\xec\\xd5\\x92t\\xca\\xdeY:\\xba\\xf2:\\xf2\\xfb\\xef\\xf9\\xb9\\xbeZK\\xb6?\\xe9\\x15\\xe9\\x9b\\xf4\\x96e'Q\\xce|a4\\xe4\\xe1\\x8e\\xbbJ?+\\xad\\xd6\\x97/\\xe0e\\xd14N\\xe5\\x0b\\x9d\\x19\\xb2G\\xde`\\xc6\\xdc\\x1b\\xdff\\xd1j\\xc52\\xbc\\xf3\\x15.m\\x17Y4\\xf9\\xc42\\x03\\xa8\\xa0\\x891\\xf5\\xb6\\xc6\\xd7\\xac\\x90\\xdf\\xfc\\x98\\xa5\\xcbw\\x18{\\xaby_\\xca\\xeec?\\x13Qm\\xc4\\x91\\xae\\xbe\\xf6\\x99\\xa9\\x89\\xab\\x83\\xb6\\xe0\\x9d\\xb5u\\x81\\xfcB\\xdc!H\\x02\\x0e\\x81w\\xcb\\xbbWC\\xe1\\xe7#\\xf9\\x15\\xc8eM\\x05\\x03-VFH\\x812\\xd2\\xa9\\xfb;\\x0e:icu\\xcd\\n\\xcdH\\xec\\x15\\x13\\x8e\\xddi\\xe6\\xd7<a\\xab=\\x8d\\xaa3g\\xc3k\\xceWb\\xd4\\xc0Q\\xe2\\xd0I\\x14f\\xf4\\x88$p\\xa6\\xcc\\x8f\\xf8\\xf0\\x1aJsQ\\xea;\\xed\\xc5\\x92&\\xcd\\x83\\xee\\xea\\x11\\xf5\\xaa_MZ\\xe46\\xf7\\x11\\xf5\\\\\\xb3b\\x03u\\x9a\\x92\\xbd\\xf9t\\xab\\xcb\\xb0\\x86\\x8b\\x08w\\xc7y\\xad\\xe3V;\\x89r\\xc1\\xb8x\\xcf\\xe1\\xa9\\xdf\\xc5m~\\x15\\x12\\xb4\\xc4\\xf7\\xd1\\x9f\\xa6-O\\xf2\\xae\\x00\\xd2z\\xc5\\xdd\\xe65+\\xfe\\xb8\\xa1*S\\xc2\\x9e\\xcel\\x00\\xad\\xc06\\xbb\\xdb\\x00\\xe2\\xf7\\xea\\xb1HW\\x08#\\xbc\\xf4\\xe8<\\xc9\\xad\\x0d\\x06\\x08\\xedkC\\x9e\\xfd\\xfa\\xf3U\\xe8\\x03E\\xf4\\x10N\\x0b6F\\xa4\\x0d/\\xd4\\x85\\x97\\x07.\\xc6\\xeb\\xd9\t\\x86\\xa1\\x98\\xb6\\xad\\n\\x12f\\xe6L\\xf2\\x02\\x1ai\\x8e-\\x0f\\xff\\xb2\\x81\\\"\\xa8\\xb6/\\x9e\\x078\\xf5\\xad>\\xddX\\x12\\xc2:\\x04\\xe1V\\xa4\\x90\\xd5w\\x10T4\\xdb\\x16\\xb1\\x93\\x1c'\\x838\\x94\\xd7x\\n$x\\np\\xc4Jz\\xf2,\\x80\\xa1\\x8a_\\x87\\xb1\\x89\\x9d:\\xee\\x05\\xca\\x11\\x92\\xfd\\xec)\\xa4\\xc6hl[\\xfd\\xc6\\x03\\xd0\\x81\\x8e\\x8dwR4,\\x0b\\xa1U\\xd1\\x1b4\\xb8@\\xd26[g\\xd0\\x84\\x1b\\xec7\\xf1\\\\\\xf5Q\\xcbKC\\x93\\xceO\\xd1b\\x8cz[\\xc4K\\xa2\\xc4SE;\\x8bt\\x12-<\\xbb\\x06[F\\xf1\\xc2~\\xbdL\\x93bn\\xbfN\\xd6\\xcb+F\\x8ck\\x15\\xe5\\xf9m\\x9aM\\xed\\x92\\x8c\\xef\\x07\\xfbu\\xce\\xa2lBtP0b0\\x9c\\xef'\\xde\\x923^gD\\x03\\xb7\\x8c}\\xaak`\\xdb\\x94tN.W\\\\N*v\\xb6\\xfe\\xab\\xce\\xb5\\x92\\xac\\xae\\xce\\xe5\\x16p\\x04[[\\xd9Hp\\xce\\x98b\\x8e\\xcf4\\xcaX$+T\\xe3}p\\xfc\\x12\\xa9\\x03\\xcf'\\\\\\x8c|\\xc3f\\xc5\\xd0\\x0c\\xe1U\\xabq\\x91\\xae\\xac\\n\\x19\\x9be,\\x9f\\x8b\\n\\xb8m\\xf3\\xb6}\\x98\\xf5\\xac~Q:\\xf8\\x1c\\x9aE\\x17)\\xfaK\\xf7\\xeejm\\xb4\\xee\\xc3\\xec\\xdb\\xe1\\xe4R\\x83\\xfa\\x83\\xc7\\xa6u\\xbatM\\xb7B\\xc1E]\\xd4W\\x9c\\x82\\xb7\\x86\\xd6f\\xbdY\\x9c\\xe5\\x05\\xaa\\xf4\\xddZ\\x1b\\x94\\x9f\\x12\\x112\\x06\\xd3ic}\\xferO\\x8aS\\x1cC/\\xeeV\\xd5\\x89s\\x93\\xc6S_\\xbc\\xc7\\xa5\\x83\\xc3v\\x0f\\x15@`k\\xeaX\\x8bU\\xd2V\\xc5T\\xfbvW\\xf9r\\xae\\xba\\x15\\x82{\\\"a]918\\xe2\\xc4]\\x04\\xd3AMy}j\\x15\\xde\\x04F0\\xa6o\\xa0\\xdc\\xdd(\\x07}\\x1f\\xcbz\\xb3t\\xb2\\xce\\xcds\\x86v^~\\xf0\\xdd\\x1f%\\xf1\\x12c\\xdb\\xbf.d\\x90\\xfb\\x93t\\x9d\\x104\\xf6*\\xcd\\xa6,{\\xbd\\x8c\\xae\\xd9\\xd9\\xba@\\x06\\xbf\\xa1\\xca\\xf9\\\"\\x9e\\x10$Y\\xab\\xf1s<\\xa5\\x8e\\x95\\xab\\xf4\\xf3\\x8f\\x0b\\xf6\\xd9Y\\xf0\\xfb,]\\xaf\\xc8\\xd2\\xb3l\\x1a'\\xd1\\xc2Qa\\x92.\\xd6K\\xd7\\xdcDan\\x17\\xcc\\xc8\\xa1\\xcc\\xc48n\\xe9\\x92\\xf7i\\x1e\\x17\\xf1\\x0d1{^z>\\xcf\\xe2\\xe4\\x13]\\xf6\\x8e]G\\xee/1\\\\\\xb1]t\\x9d\\xc5\\xd3\\x0f\\xd4Xd\\xc1iB\\x1c\\xc5\\xb2\\xec|\\x15%\\xee\\xc2\\\"\\xca\\x08X\\xf1\\xd2\\x13\\x84WS\\x99\\xb3WQ\\xec\\xeeX\\x96\\xd3}\\xcf\\xd2\\xa4\\xf8\\x99\\xc5\\xd7s\\xa2l\\x11'\\xecd\\x11-\\x89\\xb5\\xe7E?9>KW\\xd1$.\\xee\\x88\\x02\\x1a\\xdci\\xb6\\x9aG\\x14\\xaa\\x14\\xd1\\xd5y\\xfcWb\\xedn\\xe3izK|\\xf0\\xd7\\xd7\\xc9\\x94\\xc2\\xae\\xbf\\xa6\\xe9\\x92\\x98z\\xbcX\\x9c\\xb9\\xc6:[\\xa4\\xe9\\xd4Y\\xca\\xb9\\xd9\\x86\\xc2,\\xfd\\xc4^E\\xf9<\\xca\\xb2\\xa8\\xb1B:\\x9b\\x91\\xdb^\\xd4x\\x1b\\x17,[\\xc4\\xcb\\xd8Y\\xa3e\\x0c%A(\\xcb\\xbe\\xda\\x17p#\\xefgv\\xf5).\\xbc\\x10\\xbce\\xce\\xff}\\x9b\\xfe\\x95\\xffw\\xe6i\\x9a\\x1e\\xa9\\x89\\xf9\\xc4\\xeer?\\xeb\\xe2\\xee\\x9d\\xdauh\\xa7\\xe3Q\\xeba\\x0e\\x9a:\\x11\\x13WL\\xe6Qv\\\\\\xf8\\xfd\\xa0W\\xa4\\x1f\\xb90+5\\x99\\xbc,__\t\\xc3\\x0b\\x7f@\\xd9\\xa4\\xa3!\\xe8%gf\\xf4\\xd0\\x97X\\xa6\\xa98\\x8d{\\xca\\xd8\\xa2\\xf1q\\xfe1\\x89\\x8b\\x05\\xcb\\xf3w\\x92i7\\xdcs\\xf3y\\x9a\\x15\\xf3(\\x99*\\xad\\xd5\\xe9\\xe7U\\x94\\xe4\\\"'\\xa3=\\xc5\\xabh\\xf2\\xe9:K\\xd7|\\x8f\\xd3\\x00\\xa8j\\x1c\\x17E4\\x99/\\x19Ev\\xed\\xda'\\xb4\\xaccW\\xc4#\\xa4KEA\\x8d\\xd3\\xe4\\x7fnR\\xf9O]*\\x7f`+\\x16\\x15C*\\x8d)\\xa1:\\xb1;i\\x87\\xdd\\xfd\\xc7\\xdeiD\\x92\\xc29F\\x81\\xa5\\x8eC\\xba^\\xe9\\\\\\x98\\xc76W*W\\xb6\\xfb\\xd0~H\\x8b\\x82\\x93\\xc2\\xa6\\x01\\x8a:\\x9d\\x86)\\xaav\\x1a\\xac\\xa8z\\x8f!\\x0b\\xf1\\xa9i\\xc0\\xbcF\\xa7\\xe1\\xf2\\x8a\\x9d\\x06\\xcb+\\xdec\\xa8\\x1f\\xc4y\\xd84V\\xac\\xd2i\\xb0X\\xb3\\xd3h\\xb1\\xe6=\\x86\\x8bbg\\xd3`/\\xd2U\\xa7\\xa1^\\xa4\\xabN\\x03\\xbdHW\\x1b\\x0d\\x93\\xf3&\\xae\\x11\\xf2\\xb2\\x96Ny\\x95?FY\\x1c5\\x11\\xca&\\xfeG\\xafC3\\\"\\xeaib\\x87\\xd4\\xc3[\\xf91Z\\xc6\\x8b\\xbb\\xae\\xf3O\\xd7\\x05o\\xd8\\x05\\x02Y\\xdc\\xb2D\\xb2V\\x0b\\xacd\\xad\\x86\\xe5\\xf9\\x8e\\xfe\\xe5P\\x15\\xc4\\xf8\\xf6\\x9b\\x84\\xaa\\xc4\\x7fj\\x06\\xe3K\\x85a\\xd0`\\x1f\\xe3\\x02\\xee\\x89\\xf0\\x80O\\xfb\\x96\\x83\\xbc4 \\xc2rv\\x0b\\x1f\\xd8\\xf5\\xe9\\xe7\\x95\\xef\\xfd\\xe7\\xc8\\x83m\\xc8z\\xc7\\x17\\x17\\x1f^\\xff\\xf0\\xf1\\xe2t\\xfc\\xee\\xf8\\xed\\xe9\\xf8\\xfc\\xe2\\xf8\\xc3\\xc5\\xf8\\xe4\\xa7\\xe3\\x0f\\xb0\\x0d\\xde%]\\xa9,\\xfe\\xdd\\xbfXi\\xcd\\\"\\\"\\x1e\\xfbZ\\x06\\x80(_\\x96w\\xa5\\xb9\\xf3\\xaetkkmG`\\xc7\\x00\\x81\\x11\\xf1\\x9e\\xcb\\xfd2\\xfb\\x1a\\x1a\\xb4\\xf9\\xeb\\x11\\xbb\\xc4\\xb0\\xaf\\xa8\\xdd\\x85!\\xf8\\x91\\xf6\\xa6\\x16H\\x9bNs\\xdc\\xc5\\x9e\\x10\\xf3\\x84\\xcc\\xa3\\xfc\\x874]\\xb0(\\x11:\\x80\\xef\\xbf\\x87\\xad\\xaa\\xe8\\xddz\\xc9\\xb2xR\\x16\\xc5\\xf9\\xbb\\xe8\\x1dg\\xfeT\\x05%\\xce\\x99\\x15\\x0bx\\x01\\x83\\xb2\\xd6\\xd9\\x0d\\xcb\\x16i4eS\\xab\\xaf\\x01\\xa9\\xc0\\x03\\x89<\\x13[\\x1f\\x87V\\xcbo\\xa3\\xec\\xd3z\\xf5c\\x9a\\xbd~\\xd5\\xaaJ\\x13\\xd3\\xcez\\xaf_\\x8d\\xeb\\x88\\xc0q\\xe0\\x90cHj\\x85\\xb4\\xae#@\\xce\\x8a\\xe3\\xa2\\xc8\\xe2\\xabu\\xc1\\xac>\\x1d\\x8c.f\\x9b(\\xbf\\xf2\\x89\\xee\\x89\\xe0\\xefM3\\xfd\\x90\\xa6m\\xd7\\x95\\xe5T?\\x9c\\x9d]\\xd8\\x93\\xfd\\xb7C\\xcf\\xfb\\xb7\\x0d\\xe6i\\xf4HB\\xd7\\x9a&\\xd1uXK\\xdcK\\xf4k\\xccT\\xed\\x8c\\x0ePV\\xea?\\xbc\\xfc\\xe6\\x1f\\xc5,'\\xf6\\xd7Q\\xad\\xc2\\x08U\\xc8\\xb4Q\\x15j\t]\\x82\\x0bF\\x8b\\x14.\\x1f\\xa5~\\xd0\\xf3huc\\xe9\\x07\\xd6\\x8b\\x14tl\\xb3\\x0e\\xf5\\x94\\xf6\\xff\\xe6n\\xfc\\xf2E\\xbcl\\xd8@\\xfdRE\\x1e\\xab5\\x86!\\xfe\\xad\\x90\\xbb\\x93\\xbe\\xb2\\xc4\\x9d8?Y\\xe7E\\xba\\xac\\x16\\x15\\x01X\\x91\\x0d\\xbc\\xc1\\x1a\\xa2\\xf8V\\xf5 \\x01\\xba\\xc1*\\x1b\\xbdtXl9\\xc4\\\\RL\\x15{\\xa7\\xc00#\\xc6`<\\xaf\\x05\\xd1\\x11\\x80ndk\\x880\\x92\\xb6\\xe0[a\\xe1[\\xd1\\x8co\\xa4\\x1f!h8\\x94\\xf60cW\\x9c&T\\xbeD\\xf5\\xf0\\xa6\\xe2@hw]\\x06~l\\x913GgP\\\"x\\x8a\\xee\\xbd\\xba\\x02\\\\\\x98}\\x89\\xabb\\x13pb\\xb9\\xe8\\xeeT\\x9b|\\x02y\\xf11/\\xed>\\xd0$Q\\x81\\xe8\\x8eo\\x8cK:@\\xabzZ\\x06\\x0e\\x9a\\xbdQZ\\xdfq4\\x93\\xa4?k\\xfb\\xa3|\\x15M\\x1c{\\xb5\\xfa\\xea\\xc8\\xa0~\\xef\\xce\\xfd\\xb5\\xc8\\xa2\\x877\\xbc\\xe8.O\\xed\\xe8\\xb4\\xd3\\x8eN\\xac\\xf6}l:P\\xa9\\x8c\\x8c\\xf7\\xd8\\xa5s\\xc4\\x8e+|\\x9b0\\x08Hc\\xd0}\\x82\\x14\\x14\\x06^Lz\\xdaV\\xd2(\\x86\\xdcA\\x1d\\xf7\\xa0\\x8b\\x0886a.\\xf3\\x00\\xf8\\x8a&\tP\\x89\\x84\\x15\\xfaXmH\\x15%\\xa4\\x1a\\xc7V\\xc7\\xf4Mh\\x145\\x8c\\xee==\\xf0\\xc9\\xb71%r\\x9e|\\xa5\\x85\\x7fgJ\\x94\\x06\\x9c\\xad\\nU\\xf0\\xe3\\x06r\\x84\\x1d\\xdb\\x04\\xc2\\xbd\\xd9\\xab\\xa3U' \\xee\\xddj\\x1f\\xabG\\xc0F1\\xb2\\xd3\\x03\\x0c\\xfb\\x8b\\x7f{\\x0e\\x9fc1J{a\\x8d\\x93\\x9d8d\\xc5\\x97\\xf4>\\x12\\x17\\xe2m\\xc8R\\xfer\\xc8f\\\"9\\xe77\\xcaf\\x03*lq\\xe2\\xef\\x0e\\x1c\\x11\\xc6\\xcdp\\xeb2\\xcf\\x97\\xd9\\xca\\xba\\x92\\xdc\\xb6\\x06\\xa4\\x91lnq\\xb1x\\xd7\\x8bV\\xccY\\x9a\\xa25\\xcd\\xebW\\x95\\x0dv\\xcd\\xdci\\xc5\\x92i\\x9c\\\\\\x7fD\\xa3\\\"\\n]\\xda\\xbe\\xc1\\xe5\\xb7\\xb1\\xc6\\xf0.\\x10w\\xed\\xf2\\xcaU\\x06C \\xf1\\x04\\xc3\\x9aW\\xf6B\\x94\\xfdL\\xc5\\xb1|\\xff=(\\x03>\\x89\\x98>\\xeb-\\xd7\\x8b\\\"^-\\xa8\\xb4P\\x15\\x1e8\\xc5=\\x82X\\xde\\x94\\xd9\\xd8\\\"\\xcc\\x81B\\x1b(\\xf5\\xd2UaGEu\\xde\\xba\\xa3\\xbbA&\\xc4d\\xdd\\xe5 \\xa9\\xbb\\x1cd#AhG\\xe9\\xe5\\xff\\xcb\\xde\\xbbv\\xc7\\x8d\\x1b\\x0d\\xc2\\xdf\\xf3+J\\xcc\\xacCF4\\xad\\x8b\\xc7c\\xb7G\\xd1\\xeb\\xb1\\xe5\\x8d\\xb3\\xe3\\xcbZ\\x9e\\xe4\\xeci+Z\\xaa\\x1b\\xdd\\xcd\\x11\\x9bdH\\xb6de\\xac\\xe7\\xb7\\xbf\\x07\\x85\\x0bA\\x12 \\xc0\\xb6<\\x93d\\x1f|\\xb0\\xd5$\\x88K\\xa1P\\xa8*\\xd4\\xe5\\xac\\x93\\xc0\\xa4\\xd5\\x92\\xd2B\\xdcn\\xc1L\\x89X\\xd0\\xcd\\x0e\\xb1\\x8b\\xa7\\xf9\\x197\\xa4\\xd2\\x93\\x02\\xacPaLU2\\xc7[\\xf1\\x0d\\x9e\\\"\\xed\\xe7Gj\\x82xQ:\\x1a\\x13\\x137\\\"A\\xc3\\xa6\\xde\\x02O{r\\xda\\x01R\\x907\\xb3@&\\xa0l\\xdb!t\\x87\\xba\\xa3#\\xac\\xb1\\xe2k\\xe2\\xc7\\xd3\\xbd\\xee\\x17F\\xcc\\x12\\x7f\\xe9\\x05\\xef%\\xa9\\xff\\x9cW5\\x06Mq8\\x9f\\x84<\\xc1b\\x19\\x99\\xecA\\xf3\\x8c\\xd9\\x01Nz\\xd6\\x8c\\xe2\\x8d~\\xb3q_xv\\xb8\\xf4\\x97k\\xf0\\xc8]\\xe7\\x9b\\xac\\xfe\\x1b\\xeb\\xcba\\\"\\xe2\\xa0U\\xf6\\xb6\\x8e\\xdd\\xed\\x8c\\xbf\\x07>QZ$\\xc8\\x9c1*\\xc9\\x92:\\x89Sn\\xb9*\\x08\\x07et2\\x984!?\\xf1\\xbdI\\x8f\\xc9\\x12\\x8eU\\xecs\\x83\\xaeP\\xc2\\x7fX\\xcc\\x17EXw\\x8d%\\x8e\\xa20@\\xf2\\x10\\xceoy\\xe7\\xec\\\"\\xcf|~\\xeb\\x0e\\x04\\xdf\\x85\\xba\\x9b\\xd8\\x0eP\\xcd\\xb9\\xe3*.|\\x1ec\\xcb\\x18\\xd5\\xe0\\x96\\x85\\xaa5\\xd9\\xf9_\\xc7\\xd5kN\\xbc'\\x92\\xa0\\xd7\\x0dA\\xefch\\xa8\\xa6\\x8d\\xa8\\xf9\\x8eW\\x13r\\x1eu\\x16\\x99\\xbe\\xdc\\xa0\\xc9\\xcfF\\xb7\\x8d\\xc3\\xee^e\\xc1\\xa3\\xf1\\xd3\\xe7\\xcc!\\xc8\\xb6\\xc6\\x06/\\x0f\\x15\\x13\\x87\\xfa,\\xf2\\xaaf\\xa0\\xd7\\xec-\\xd3\\xc6bVmZD\\xb2n\\xb1\\xd6\\xc8\\x0cY\\xe7\\xa1e\\\"\\xd6\\xfe\\\\Y4{_Je8\\xd2-\\xb1\\xbe\\xdf\\xd2N8\\xc4\\xde.\\x99\\x7f\\xb6\\x8da\t\\xd9q\\xaf\\x19A\\x08%Ztex\\xb6i*42\\xd3N\\x0f\\xbb\\x8e\\x07\\x9amW\\xa5]\\x0c\\xd5\\x15?D>\\x13\\xaf\\x17)G\\xfe\\xfa\\xaaLm7\\xb0m\\xae\\xe7u\\x19O\\xfbx\\xbf\\x1b\\x91\\x80g\\xcdy\\xd45q\\xdc\\xf0\\xe7\\xdd\\xfb\\x8c\\x8a;:\\xd3\\x0e\\x809<3\\xdewx\\x13 \\x19\\x93N<==\\xb4\\x96m\\xd6\\xab\\xf7\\x11\\xcd\\xfb<\\x1c\\x97\\x91\\x8fxz\\xa2}\\x91/\\x8f\\xee\\x88\\x98\\xc7\\x00\\xf1\\xd3\\x0e^J\\xb9\\xccc\\xd9\\x92Zi\\x8e\\x86\\xf4b\\x86\\xb3\\x88)\\xb1h\\x03z\\xb9S\\xeb:\\x84A\\xfc4\\xa1:z!=D\\x11|\\x8bI%\\xbb\\x17\\xc2\\x0cv]\\xbc@Ax\\xf9\\x0eU\\x80\\x16\\x0d\\xa3\\xbcu\\xbc\\xd6\\xe6nP\\x0bg\\xab\\x85\\xf2\\x18\\x9e\\xaf\\xc8\\xec\\x12\\x03K\\xf1\\xc05,\\xf55\\xe4\\x0b\\xf8\\xbf\\xe8\\xa3\\x05\\xbb\\xe0\\xfd\\xdfH/\\x9a\\x82Q\\xb1\\x03\\x8a!\\xb5A\\xac\\xf5\\xf3\\xe8<\\xbf\\xceHI\t\\x87\\xef\\xed\\x1f\\xeeyMX\\x89\\x04\\xd5\\xc9\\x13\t\\xf2\\x10f6\\xae\\x98\\x16MV,\\xb6\\xec\\xc8\\xb7\\x1c\\xc1\\x86#\\xdc\\xab\\xac&e\\x16\\xa72|\\x8b\\x8f\\xc1%]<`\\xc4\\xac\\x1a\\x8cQ3p\\xdd\\xbb'NPf\\xf5\\xda\\n\\x95\\xa5\\xffF\\x8dfK9\\xc3&\\xa4\\x8c\\xcb'%\\x0b%(?\\xea\\x03\\xc9g\\x10\\x088\\x082r\\x0d\\x15\\x9b\\xae/~\\xb3\\x1a~\\x1e\\x04\\x11\\xe7\\xb2)\\xa3\\x83\\x87}\\xd6zr\\x04\\x19C4\\xbcr\\xcb\\xe7]r\\xc16\\xae)7\\x99\\xc7\\x9c\\x12\\xba9\\x89\\xdb\\x0b\\xc3\\x9d+s\\x0c\\x1c\\xe1#\\xb5G\\xec\\xd8\\xf7\\xc2\\x86\\x02\\xb4q\\\\\\xde^\\x9c#\\x00\\xd1p\\x8fy\\x8f\\xcbGk\\x96\\xc1\\x97\\xb9)w\\xf3+\\xd1\\x92\\xfb\\x95\\xea\\xbf\\x98t\\x05\\x86s\\x16\\xc9\\xa1N0g\\x8a\\x1a\\xe4l\\x02\\xcd\\xadC7\\x81,{\\xf3uN\\x92\\xef\\xbay\\xd6\\x94P\\x17}\\xd4\\xfd\\xf3\\xdb\\xd3\\x0f=\\xc7\\x00Z\\x9e\\xbf}\\xfd\\xee\\xed\\xe9\\xab\\x0f'\\x13\\xd0\\x88\\x02'\\xaf\\xdf}\\xf8?\\x138\\xe8\\xbfY\\x92\\xfa\\xc3M\\xe1\\xc4\\xb8\\xb7/~;'\\x01\\xdd\\xe8\\x11v\\x83\\xea\\xea\\xa4\\xfak\\x9c&s\\x11\\x15\\n\\xd1\\xd6\\xb0\t\\xf8\\xbeN\\\"9\\x05\\x98@\\x12\\xd1\\x99\\x8a\\xa4g\\xa5\\xef\\x1d<\\xd2'o\\xec\\x88\\xd4\\x067\\xf1/\\xb5=`\\\"x\\x1f,\tf\\xc68Y\\x17\\xf5\\x8dD\\xa4\\x97\\xf1\\xac\\xce\\xcb\\x1b'\\x88R\\x92o\\x9bR\\x1f;\\xfa\\x8d\\xb1]\\xe7\\xd4\\xa5\\x90\\xa7\\xed\\xb0l`\\x90Dl\\xa2\\x94k8\\x82<\\xbcS\\xd8\\x9a7\\x07\\xdf\\x05,Ve\\x0f\\nm\\xf5\\xf3\\x95\\xd6K\\xdcpL\\xd8\\x00\\xc5\\x81\\x94S\\x04\\xa7Tk\\x9fR-\\x86\\xa9\\xdc~\\xc4v\\xd5\\xaf%\\x83\\x8e\\xddb\\x82ZK\\xfbI\\xf5\\x01\\xdd;\\xc6M\\xa8\\x15\\xc8&\\x19l_\\xac\\xb7\\xce\\xd2\\x88\\xbd\\xfc\\x9f$#e2\\x93cx\\x9e\\xc6\\x95\\xd5!\t\\xf8\\xd2j\\xb0\\xbeO\\x9bX?\\xad\\x89:w\\x92\\xb8l-\\xf9\\xeb\\xeby\\x19\\x9aQ\\xfb\\xe1#\\xc6\\xe1\\xef\\xf7rj\\x08YB\\x97\\x81S\\xec\t\\xff\\xa0\\x9fiD\\xd1\\x94{\\x91\\xa7\\x11,\\xbc\\x89\\xe7.\\x08H\\x9c\\xa1\\xfc\\x8b\\x86\\x7fW\\xef\\xceItIn\\xe0\\x18\\xe2\\x88T\\xb3\\xb8 >>\\x08P\\xc5T\\xe7,G\\xaa\\x7f\\xf8H57\\x12\\x7f\\x8d\\x89\\xd9\\xd51=\\xa2\\xc7\\xc6\\x9e\\x92+\\x9e\\xa7\\xa9\\na\\x16\\xea\\x13q\\xd2E)BLr\\xc2gQ\\x1b\\x04\t%\\xd2\\x1e\\xe5\\x00\\xd1\\xb7\\xcb\\xbb`\\x92\\xaaxD\\xf9\\xaa\\x9a\\x13\\xa2&\\x94\\x9a\\x88\\x94\\xd10O\\xbc\\xae\\xc26\\x89'\\x0dTy\\x17u\\xf4\\xcd7|d\\x18\\xf4Or\\xf83\\x7f\\x81 \\xf1<y\\xa9\\xbb\\x81]H\\xe9\\x84\\xd1\\xb0+\\x0bB0\\xdcB\\xb0\\x10<\\xda]r\\xc5\\x94\\xccM\\x93T\\xec\\xdf\\x05\\x8d\\xd2\\x84B\\xa5\\x1b\\xcbM\\xaf~\\x96q\\x84\\xd6Lk\\xbd\\x86\\xefe\\xf8\\x9f\\xa7\\xb0\\xde\\xdd\\x0d`E\\xc5'\\xe2\\x17\\x18\\x91}}\\x16\\xc2\\x15\\xce\\xa5\\x08a\\x1d\\xf0\\xd5\\xd3\\xa8R\\xccW\\xf7\\xb4\\xb7%\\xba\\x1b\\x9b,\\x08\\xe8\\xf0\\x976\\x8d\\xe4M\\x88\\xa1\\xe7\\x97<.\\x82\\xc5\\x18a\\xc9#2\\x91\\xac.\\x13b\\x89\\x85*\\x81r\\xce\\x80\\xb2\\xe3\\xdf\\xc0\\x11\\\\D\\x19\\xe5\\x8e\\x83\\x00\\x93h?m\\x01\\xe6\\x86)\\xf3\\x14\\xd8\\x9c\\xef\\xee\\x9a\\xa1#\\n\\x85\\x92}$\\xc6\\x01\\x0c\\x8b\\xa9\\xc0\\x01u\\xdd\\x8coXL\\x05\\x8c`\\xcc\\x12\\xd6\\xca\\x99]O\\xf7\\xf9\\x92Krq=\\xdd;\\x0b(\\xe2\\x89\\xb9\\xee\\x89\\x99\\x0e\\x83\\xd5`\\x8e\\xa0U<\\x1c\\xc1\\xdc\\x86\\x00'\\xb8\\x1d\\x86U\\xcfT$\\xe1\\x04m\\x08CJ\\xdfCYG&\\x8af\\xde2gl$\\x9f(;\\xcc_\\\\'\\xf5\\n.\\xc9M\\x05\\xbfPI]\\xf5\\xaa\\xa9\\x83\\xe8\\xe7<\\xc9|\\xda\\x0e\\x05\\x8fw\\xeb\\xc1\\x04>\\x85p\\xa2\\x07\\x8b\\xc6\\x0e\\xa3\\xf7\\x84\\x13\\x94U\\xeb\\x05\\x86\\xda\\xf0\\xbc\\xae\\xb9\\xc5\\x97\\xfaA\\xb2\\xd0\\xa9h\\xcb\\xb2\t\\xa1\\xc2tn3v(\\xeeuo\\x7f\\x17\\xec\\xf6\\xf7Q'\\xe0%S\\x7f\\xe9N\\xad\\xc2\\xec4\\xfe\\x92\\xd7Q\\x04lq\\n\\xf5\\x177k\\x02\\xe4\\x98\\xf2\\xa9\\xf5?\\xa2G\\xbb\\xb4!\\xf6\\x98\\x07\\x12\\x06\\x89\\x0c\\xa2\\x92\\x14i<#\\xfe\\x83\\xe9\\xc7\\x8f\\x7f\\xff&\\xfa\\xe3\\xee\\xb1\\x1fL?\\x9e\\xfdr\\xfb\\xf9\\xec\\xc12\\x04\\xef\\xe3\\xc7o\\xeeyJ\\xb5vW\\x9f\\xa5oT\\x10\\xfd\\xf1\\xd8?>\\xfa\\xf8\\xf1\\xa3\\x1f|\\xc6m\\x1b\\xed\\xf2\\x07g\\x01\\xb6\\xf4\\xcd~\\xf4\\xc7c\\x86\\x18\\xdft\\x03\\xc2\\xeb\\xbd`\\x85~\\x8d\\x8fV\\xa7n\\x96\\x06|hF\\xdc\\x0d\\x10?\\x184X\\xd8,\\xef\\xb7\\xbf\\xf9]\\xff\\xaf\\x8e\\xb2\\xae\\xe1*\\xd8\\x11\\xb3(\\xf3\\xb5Qm\\xf2:\\xc6T\\xde\\x85\\xff:.Z\\x06|\\xaf\\xe3\\xc2AQ\\xd3\\xaa\\x85\\xdbL\\xb6\\xd6y\\x1e\\x18\\xdb8%5\\xfb\\xe8\\x94\\xd4\\xad!\\x9c\\x92\\xdaa\\x08\\xadZ\\xca\\x10\\xfa\\xcf{q\\xa4\\xaex\\x92r*#\\xbc\\x8e\\x8b>b\\xae\\xf8\\xcbS\\xd2am\\x9c\\x12\\x9a\\xcd\\xa3\\x8a\\xd4\\xecm{\\x0d\\xc3v\\x0e\\xea\\xa1\\xe5\\x9fGK\\xd2\\xd7@\\xb3D\\xb8\\xc3\\x0d\\xcc\\xb9i\\xa0\\xe6\\xe3\\xd8\\x16T\\x8ew\\xde\\xe0\\x8f?g4\\xb4g\\xa1\\x85l\\xf2\\xf0@VQ<\\x9fkF1\\xecx\\x0e<\\x07\\x83a\\n\\xd6\\x98\\x94\\xfd)\\xac\\xf4Sh6\\x94\\x8e)\\xba\\xe2\\x99\\xe6\\xbb\\xee\\x07\\xc0\\xb3\\xf2\\xe9\\x9e/\\xad\\x13\\x03Eg\\x1a\\xe9C\\x1ai\\xda\\xbd\\x19\\xd3.&~~\\x95\\xd5>\\xe1\\x1e\\x9b\\xfe>ej\\xf74\\x8a\\x8a-P[\\\\\\xdf-\\xb5T\\xef\\x8ae\\xc8\\xac\\xc7c\\xbd8s\\xf4\\xed\\n\\xab\\x8bi}6~?\\x0c7\\xcd#.\\xe9\\x9av\\xdd-*\\xafq\\x15D\\xeb\\xb8\\xf0o\\xb6\\xd8.\\xc3\\xe3\\\\\\xb3l\\xf8\\xddD\\xf9.\\xbb\\xc9\t\\x00k\\x0d\\x00\\\\\\xf7\\x9a\\n\\x80\\xb5\\x1e\\x00\\xbf\\xeb\\xffE\\x87E\\x05\\x85\\xe9\\x99\\x8e/97\\xf3%yo\\x1eF\\xf3\\xa8+\\x99\\xc2y\\xb6J\\xd2\\xf9\\xab\\x17:\\x99\\x0c\\xc3Oe\\xd2\\xab\\xfa|\\x8c\\xb5\\xd7\\xb5E\\xc8\\xf6>f\\xd8G\\xc6B\\xd13\\xcd\\xffO\\xd9e\\x96_g\\xc8s\\xf8h\\xc2\\x0f~\\\\\\x03c\\x80\\x16I\\xca\\xa2\\xf2H\\xd6\\xe6\\xef\\xd1\\x1f\\xa7\\x1f?~|p\\xf6\\x80Y\\x1c\\xef\\x827au\\xd3$#\\xccM\\x9a>\\x0c<\\x14<\\xb19\\xa69\\x9b\\xc3\\xc5\\x0d6\\x9b\\xc9\\xf7\\xaa\\xf3\\x87nB'}\\xb8k\\xf4\\x05\\xde\\xef\\xc9\\xba\\xa8o\\xb0\\xc1q\\xf7\\x1b\\xde\\xefk\\xf2\\xa96}(\\xd4\\xd8\\xfc\\x8f\t\\xff#\\x9a'U\\x91\\xc6hY\\xca\\xdc\\x98\\xf0i\\xc6\\x7fJ\\x80\\x0e\\xce\\xec\\x93\\x01\\xa3B\\xc4\\x90Sz\\xde\\xbeh\\xba\\xd1Z\\x97\\x94\\xa2b\\xa3\\x91\\xefW\\xcaE\\xa5\\xb7\\xd7\\x19)_\\xbd\\xe8a\\xab\\xd4\\x8b\\xa2\\xe5\\x8c\\xae\\xef<\\x08B\\xb8\\xc6\\xfc\\x91\\x80\\xb1\\xc8\\xcf\\xab|S\\xce\\xda\\x1cE{'\\x9d\\xf6\\xb4\\xb6yvJXH\\x9d\\x92dcL\\xab\\xf4\\xd6\\x92\\x14\\xd03\\xdf\\xdb\\x7f\\x88\\xd1\\x923\\xb9\\xa1\\xe8\\xee\\xeaW\\x97\\x92z\\xc9$\\xf5\\xb2\\xa5\\xbe(\\x87-\\nY\\x8e\\xb9\\xd2\\x90Z\\x1f\\xb8\\x0e/\\xf7\\x13\\x93m\\xa1\\x1ck+:\\x7f\\xdc\\x8cY\\xaf\\x8c\\x8b#\\xc2\\x83\\xf9(\\xcch\\xeb!6\\xbaO\\x1b\\x8d\\xa3\\xa4z\\x9do2\\xba\\xc9Xo\\xdf\\xed\\xb7;+\\xe2\\x92d57\\x90R~\\x1ea\\x8cr\\xe5\\x01^\\x8e\\xca\\xd6\\x0f<&\\xec\\xc9\\xf7.\\x176\\x1d\\xd5h\\xf6\\x03Y\\xe4%y\\xdd\\xbaAu3\\xe7/}c\\xb8H\\x0e\\x87\th2\\xaf\\x03FSc\\x03\\x9e@\\xa6\\xaf\\xc0\\xec\\x9e\\xcc\\xf6oby&05\\xac\\xbd\\x84\\xb9\\xd9V\\x8f\\xc55\\xe4\\xc1s\\xc6Z#\\n\\xc8\\xfd\\xc4\\x1b\\xd1\\x83n\\x9b\\xddC1JA\\x194\\xfe\\x91\\x98\\xd5\\x8bb\\xd5\\x1b\\x96y)\\x87N|\\xfd`\\xea\\xf6V\\xae\\x95a1\\x97Va\\xf1\\xa6b\\xf0\\xc6r\\x95\\x92g\\x030\\xdbf\\x8c\\xa8\\xc7m\\x01\\xac\\x8e\\x94\\xb5\\xdd\\xdd\\xb5\\x8c&[\\xdf)\\xc8X\\xa4\\xc7\\x16\\xa4\\xf6\\xf5\\x90\\xaa|\\xa2K\\xc7x!\\x82\\xf7\\x0f\\x8d\\xbb\\xd8\\x94K\\xc2\\x87N\\xe6r\\xf0\\x95\\xc5\\xd5\\x14\\xc3j\\x9eF\\xe7EI\\xaeHV\\xbf\\xdb\\x94\\xcb$3*j[\\xc9\\x94\\xf6\\x9e\\x02\\x81\\xef\\xe1B\\xd2fb\\xa6\\xcd\\xb4\\x9c\\xfb\\x17Sr\\xe6\\xaa8\\x03\\x9c\\xf8@\\xd0\\xfa\\xe1[\\xdaf\\xb7\\x7f\\xc9\\xe2\t\\x85\\xcaN\\x17\\xa9\\x86\\xfa^\\x92\\xfa9\\x8f\\xecW\\xc7\\xb3\\xcbg\\xf39\\xc9\\xe6\\x9b\\xb5\\xebHtVO\\x836L\\x82~\\x9c\\x0c\\x86\\xaf.\\x99\\xe5$Z\\n\\xe9\\xcf\\xbe\\x1av\\x8f\\x18\\xeb@\\x1a\\xae\\x81s\\x11\\xd2*\\xcav\\x9e\\x80\\xa2\\xe4Z\\x88\\x08\\x87\\x06\\x8aL\\xc1N\\x9b\\xcf\\xa3\\xf39\\xb9\\xd8,_\\xbd0\\xae\\x00\\x8e\\x0d\\x99\\x9d\\x16L\\x7f\\xb8y\\xf5B\\xc4\\x9c\\x17EcB\\xdb\\xfd\\xc4\\xb6\\x14\\x12\\xcd\\xf9z\\x00y\\x1a\\xb0!|B\\x8e\\x9f\\x08\\xce\\xeb\\x1d\\xdf\\xbcC\\xc8\\xd3\\x15i{\\xb8\\\"\\x8f.7\\xfc\\x18\\xc4T*\\x124\\x12\\x0b\\xa6\\xf5\\xb4t\\xaf0\\x8f\\xae#\\xe8\\xf0\\xb1\\x83\\x839q\\xf3)n\\x1at\\x1d\\x84\\x03\\x18\\xc4\\x19\\xe9\\xd4=g\\xb9]\\xbbw\\x87\\x01\\x12\\x0e\\xb6\\xefpT\\xecO\\x89\\xf2n\\xa3{'\\x19$\\xb7\\xe19@G\\x1e<N\\x038Ez0\\xa6{\\xfd\\xa6G\\x91Z\\xb3:\\xc6\\xc1\\xb6\\\\&\\x04]r\\x1b\\xb3\\x8b\\xc9\\xc7\\xd8\\xf5\\xd4\\x88\\x9e5O\\xdd\\xa5\\x11[k\\x11&\\xda\\x11\t\\x7fR9P\\xb7\\x81;\\xac\\xb4\\xc2\\xfb\\xf4\\xf2\\xac\\xf4\\xc7\\xf0>\\xcfk$Gi\\xff\\x15Y&UMJ\\xc2\\xe8U\\xdc\\xe5@\\xaa\\xd5\\x9b<;\\xad\\xe3l\\x1e\\x97\\xf3\\xbf\\xc5e\\x96dK$\\xbe\\x0e\\\\\\xb0\\xf1FB\\xa4>,I<c\\xa4\\xdcv\\x10\\x9aD\\x00\\x10\\xaa\\xca\\xe1s\t\\xb8$.\\x04h\\xe3\\xd9\\x04n\\xc9'\\x99\\xa1\\x06\\xe3\\xe1\\xccUA&]\\xcc\\xe1X'\\xd7\\xc3\\x90\\xfc#\\x8aP\\x01M\\xf8\\xd2\\x8b\\xdfN\\x1f7:!\\xf1\\xb9\\xa2%\\xd2\\xe0\\xafZn\\x83\\xa7\\x90[\\xef\\xaf\\x85\\x88\\xde\\xdam\\xf9\\x00\\xd7\\\"J\\xdc;q]\\xbe\\xdat\\xf5).\\x1fUp\\x841\\x01zK\\xb0q[\\x02\\xe0\\xd1\\xe4Y\\xeezA\\xb1\\xf4\\xd8#\\x8a\\x13v\\x80\\xc4\\x10\\x8bs\\x16\\xb4\\x10!\\x85cH\\xc7!\\x02t\\x90\\x815\\xe1\\x8e\\x0c\\x00\\xcc\\x847\\x97&\\\\\\xda\\x1a\\xda7\\x86\\x88\\xc0j\\xe9S\\x04_\\x131aP>(\\xf2\\xc2N\\xaat\\xd8\\xecH\\xa2N2\\x94;\\xb5/\\xc6\\x86\\xda?\\xc5\\xa7\\xdb\\x1b\\x010G\\x97\\xeeu\\xbf\\xde\\x9e\\x969\\x1b\\xba\\xe9{\\xa09gH\\x14\\xcf\\xe7'T\\x80\\xfc\\x91{+2'\\xa8\\xeeSn\\x1e\\xb6\\xb3\\xaf\\xb5\\xadn\\x1a]\\xe7Wc\\xd2\\x8a\\x08\\xff{C_c1\\x90\\xc5\\x9b\\x881\\xa4'6\\xc9'\\xd3<\\xf0=\\x8a\\x00\\xbb\\x0c4w<\\x959\\xd1w\\xb3\\xcd,L~\\xb5\\xfd\\xed?\\x8b\\x8bzS:\\x06\\xee\\x80\\xedW~\\xef\\xae\\xc15\\xb0\\xf2\\x9a\\x8bKQ\\x06`f\\x1f]\\xa9\\xff\\xd8\\x05\\xcc%\\xe7\\xa0^\\x88$\\xba\\xeaL\\x8d\\xe6\\xdf\\xad\\x84kwA\\x0d\\x1e\\x1f\\xe8\\xc2\\xf8\\xd1\\xe7\\xfaP\\x11\\x87\\x8f\\xba\\x99\\x00\\xb8[\\xddw\\x07A\\xbb\\xfd\\x8d.M/\\xf3aM\\xf2\\xecy\\\\\\xc4\\x17I\\x9a\\xd4\\x89=u\\xc2\\xd5\\x97&\\xa0\\x80\\x8e\\x14\\xe6\\xb7SQ\\xdc\\xbb\\xc7\\xb2Ox<\\x8d\\x00^\\x1b}\\xfe\\xdcKI\\xc1\\x9e\\x95\\x1b\\\"*\\xceXL\\xff\\x93yR\\xc7\\x17]\\xa7`\\x93\\x03o\\x92g\\xaf\\xb2E^\\xb2(\\xf4\\x16\\x0c\\x17\\x1a\\xb6x`Jz4\\xc5\\x18\\xfb\\x04\\xdd>\\x8c)\\xbe+1\\xa0\\xf7\\xccc\\x1c\\x03\\x1cj\\x97\\xc8G\\xb7\\x91M\\xa4\\xce\\xc2'Zy\\x1el'nI\\xaa:/\\x89l\\xc7i\\xf9\\xd9\\x05[lJ\\xda\\xc3tZ\\xca\\x9c\\x0d\\x13\\xc6j\\xedi\\xeb\\x14\\xed;G\\x9c\\xe9\\xc7\\xab\\xb52\\x84\\xdc7\\xe5l`\\xa1\\xe30!\\x90\\x19z%\\xd6\\xd8D\\x95\\n\\xbe2\\x84*\\x08!\\xf1\\xcb\\xe1\\xd0E*\\xcc\\x9d`\\xa5\\xd7\\x1azr\\xda\\x18l\\x1e\\x13Q\\x90\\x007\\x96\\x1e\\x83*\\x16\\x93^\\x81\\x17~\\xa8\\x87,\\xc9\\xe6\\xad\\xaa'\\xd9\\xbc\\x8f\\x15\\xfd\\x81I\\xebP\t^\\xd9B\\x7f\\xb3\\xab\\xbb\\xd6\\xb4\\xf1m\\x12a\\xbf\\x1f\\xee'\\x87\\xb8`\\xf2\\xf5\\xcc\\xb8\\x8eD\\x08*\\x01\\xf7\\xb4\\x12\\x18b>)8\\x10\\xefg\\x11=1\\x10\\x80\\xbe7[\\xc5e<\\xabI\\xe9\\x85p\\x9f\\xa7\\xf9\\xe2\\n\\xee\\x01\\xb1\\x04A\\xcc\\x1b\\xa2\\xcc\\xe3`3\\xdaV4Y\\xfa\\xb9\\xddR-\\xd2]\\xbd\\xc5\\x98\\xf7\\xd5\\xb0*\\xe1\\xf3\\xe7a\\x941\\x98\\xb8\\xe3\\x04F\\xaa\\xef+\\x03\\xf2[n\\xd0\\xea\\xa82\\xe3*3\\xbb$\\x99&\\xd6\\x15E\\xc5V\\xaa\\x7f\\x91\\xb6\\x9b2w\\x86\\x1d\\xd4\\xdd \\xb4v\\xd8\\xd9\\x0bp\\x04\\xaf\\xe3z\\x15\\xad\\x93\\xccG\\xa7\\xad\\xd6b\\xfd\\xc6\\xfb\\x02\\x1dt\\xf86\\xf8@>\\xd5\\x83[!\\x89fy\\x9a\\xc6EE|d\\xe1\\x12\\x13bg\\xf2e\\x0fYs\\xb8\\xcf_\\xb3Y\\xe9\\x12\\xcf\\x8aH[\\x95\\x82\\x93CQ\\x94\\xf4<\\x12\\xcb/\\xb8\\x15\\x8f\\xe4\\x96\\xe2\\xa6\\x830>\\x01\\xee\\x8d\\xd9q\\\\\\x11\\x02\\xa2XO8n\\xfe\\x14\\xdcy\\xd0\\x84\\xe2\\xeb+B\\xf5\\xea\\xa5\\x86\\xf7\\x9e\\xd5\\xc9\\x15Q\\xf2\\x08\\x91\\xe8\\\"\\x9fwRH\t\\x81z(\\xbc\\x8f\\xee\\xbb\\xdf\\xb5\\xff\\xda\\n\\x9cW6\\xef\\xdb\\xc7z\\x86\\xb3\\x17f:\\xd6\\xfb\\xea\\xb2(\\x0e\\xfb\\xdfv\\x1b\\xafZ.^}\\x0f\\xaf\\x94\\xf5\\xf2\\xb0+\\x15\\xcf\\xf8\\xf3n?\\xcc8\\xfe\\xf0\\xdb\\xee\\xf3\\x82\\xcf\\xad\\x1bub\\xce\\xfa\\x17\\xe1\\xb0\\x1f>\\xea\\x0e`\\xc5:z\\xdcy|\\x85\\x8f\\x0f\\x0e\\xba\\xe3Z\\x8364\\xdb\\x92u\\xdf\\xcb\\xdfu\\xc3\\xb9\\xf6n3\\x17\\xaa\\x03\\xdb\\xfe\\xc3'\\xddQ\\x9d\\xf3\\xee\\xbb\\xd3\\xb9n\\x1c\\xdb\\x92~\\x00\\xe4N\\xe5\\x13\\x8cQ\\xa6\\x8b\\x1f\\xdc\\xaa\\xf6\t\\x8e\\xba\\x9e\\xd2\\xa7p\\x04O\\xda\\x8f\\x9e\\xd3Z\\x9dj\\x97\\xc68\\xde\\xcf\\x8c&h\\xcc4L&\\xcf\\xa2\\xbb\\xf6\\x14\\x1fu\\x93qMZ)\\xc8\\xba\\xac\\xae\\xce:\\xec\\xad\\xb9Sz\\xb6\\xca\\xa0\\x80\\x8c\\x84\\xabO\\xfck\\x96\\x8ew\\xd8\\xfa\\xec\\x9d\\xd8n!\\xf2\\xa4\\xdd\\xbe\\x90\\x96\\xb7\\xa9\\x06%O\\x8b\\xa8\\x9f5\\xdbtv\\xc6\\xe6\\xe8=\\xec.\\xd1\\x14\\xf2\\x03\\x8e\\xc0C/~\\x16\\x8ck\\xc2L\\x155w$1\\x1cC\\x0c\\x13\\x88\\xbb\\xf6x1\\x9a\\xe2\\x05\\xa1T\\x95\\xd5\\xc9\\x9a\\xf4\\xaet{\\x13\\xa6\\xfb~\\xd5\\x89\\xf3@\\xc1\\x94\\x85<6\\x01w\\xa9D\\x07\\x98n\\xf8\\xa8DU\\xcd\\xd1\\xfe\\xe8Q\\x95`\\xc8\\x81s\\x16\\xbdC1\\xa0\\x88\\xcek\\x0eD\\x1e\\x0e\\x89e\\x87\\xffQ\\x8d\\x88\\xf0*\\xabsLa\\xbd\\xc1\\x85\\\"\\xb8P\\xd9\\xb0\\xb5\\xe4\\x07eUuKJ\\xc9\\xe3:B\\xe0\\xbe'\\xb3<\\x9b%)\\xf9P\\xc6Y\\x153\\xfeuI\\xeawy\\x9e\\x92\\xb9\\xbf\\x83\\xcc\\xc1,\\xdaT\\xe49\\x9e\\xe6|\\x01;\\xb3\\xce\\xa3\\x82\\x94T\\x02\\xf5\\xdf\t \\xb1\\x11\\xe4|\\x10\\xe1`\\x7f%I\t\\xe5)\\xf2\\xe1i\\xbd6\\xe9\\x8d\\xf0*d/\\x84U\\xb4\\xc94\\xeb\\x86\\xd6D\\x9d\\xed)\\xf8\\xec\\x9e\\xf4\\x15<\\x85\\xbaI\\xfb\\xf74\\x80\\x9a\\xab\\x81\\xf0\\xb7\\xaf\\xbc\\x1b\\x1e\\xec+\\xb3\\xa5\\xf0\\xb3\\xf1\\x96\\xc2U\\xa4\\xcbj\\xae\\xf3Q\\x13f%t\\xe9>\\x7f\\x86\\x9d,:_\\xe5\\x15\\xbf\\xdb\\x18cC\\xfc\\xb3\\x91\\xf4\\xec\\xf8;\\xdc\\xdeU\\x02u\\x07\\xfd\\xde$\\x1f)\\x9f\\x9dj\\x9e=\\x1f\\x06\\xdc\\x1b3\\xe0\\x1c$U\\x0e^=\\x9b\\xce.\\x88\\xef\\xdd\\x1b\\x0fN\\xdc\\x06mX\\xf20{\\xfd\\x9bW\\x93e-\\xbb\\xf6\\xc2\\x16\\x9e\\xe7Y\\x1d'\\x19)_e\\x8b\\xbcO\\x05z\\x07\\x83\\xf8\\x8bN\\xf1}\\xffl{a\\xb3\\x88\\xc7\\x08R%^\\xbe\\xc2\\x11\\xbc\\xefZ\\xa95\\xc3}\\xa1\\xf8(%U;\\x88\\n\\x0f\\xe7\\xf9\\xa2\\x15\\xd9\\x06\\xe3\\x11\\x0d\\xf4.\\xe6N\\x07\\xa0\\x10\\xfdfn\\xb4A\\xde\\xd3\\x87\\x1e1T#\\x82\\xd2\\xb9\\xff\\xd8\\x93\\x8c;\\xdfL\\xe0E\\x87\\xeb\\x10A\\x11\\xaa\\x1fn\\x18\\x01B(L\\xe0\\xb2\\xc3\\xd4a\\xa2\\xd4\\xd7y\\x96\\xd4\\xb9K\\xc4\\xc7\\xae\\x84\\xd1\\x112\\xcf\\xd9\\xbd8\\xedl\\xc0\\xd2U\\x7f\\xe8B\\x03\\xb6\\x1f\\xa3\\xd6\\xb8\\xfc2\\xb4\\xab\\xaf\\xaf\\\"\\x92\\xfdcC6\\x82T\\x8b\\x00\\x19\\x92x\\x86L\\x08\\x95\\xf5\\x9e\\xc7iz\\x11\\xcf.\\xd5\\x8a\\xb9F~\\xa2\\x87\\xd8\\xe0\\x9c\\x196\\xbc!\\xd7\\xd6ik\\xe7\\xfc3\\xcf\\x19R\\xfa\\xde\\xe1w^\\x10\\xc2&\\\"Y\\xb5)\\x89\\x92\\x14\\x97\\x03\\x02\\x93J\\xf77\\xab\\x10=1\\xde<\\xc6\\x13\\xee\\xd6XG\\x17T`!sf\\x0dQ\\xf9\\x1f\\xd0\\xacY\\x8cJ\\xdf$\\x0b\\x8c+1\\x89o$#\\xad\\xb8\\x9c\\xc6g\\xf4\\x8bp8\\n\\x07\\x83\\xd6\\xe9\\xe6\\xa2.\t\\x9e\\xf2\\x92(8C\\xacc\\xc6\\x82\\\\`\\x11\\xadbT\\xaerH>\\xa6\\x90\\xfcQ0\\x1f\\xba\\xee\\xd4N\\x1c\\xd6\\xf7\\x8bF|\\x15]\\xc5i\\x82&#\\x1c\\xeb\\xfc<\\xe4|\\xde\\x8b\\xb7\\xaf9A\\x11\\x96\\xec\\xad0C\\x0dr<\\xf1B\\x93\\xad\\x8c\\x07\\x94\\xaa\\x93\\x18\\x83\\xa3\\x15qU%\\xd9\\x12b`\\x95!M.\t\\xfca\\x9e\\\\\\xfd!\\xc4\\x97\\x80\\xfdr=\\x85\\xe8\\x07\\xdf\\x07\\x90\\x97\\xf0\\xfd<\\xb9\\x82\\x07\\x7f\\x8a\\xd0-DL\\xd0\\xb1\\xc7YJ\\xdb\\xc7\\x0e_\\xe6\\xf9@w/\\xf3\\x9cu\\xf62\\xcfEg\\x99\\x1a\\x03Z\\x89U\\xc6\\xf9f\\xec\\xf5\\xc3*\\xa9`\\x1d\\xdf\\xc0\\x05\\x81Y\\xbc\\xa9\\x98W\\xcd&K\\xf0\\x02!\\xc9\\xb38Mo \\xcd\\xe39\\x1dP}\\x9dC\\x92\\xcdIA\\xe1\\x9b\\xd50\\xcb\\x8b\\x84Tt\\xc8lL\\xdc\\x07\\xc7\\xb0\\xa5\\x98\\x9fX\\xdc\\x19\\xf9\\x0b\\xd3m\\x1bR\\xf8\th\\xe2\\x9ci:\\xb0\\x9a\\x9fRq\\xbb\\xe0n\\xa7\\x06\\x05\\x122H\\xe7E\\x99\\xcfHU!o\\xc6\\xc3\\x99\\xfaUt>c\\x7f\\x1a\\x15B\\xf4\\xeb\\xa5~\\xe2T\\x92\\x7f\\xe3\\xeb\\xf2d`\\x12\\x8c\\xa1QSa?\\x1d\\x12{\\x0cSY\\x80\\x7f\\xee\\xcf\\xd8\\x15\\x80Y\\x07L{X\\xb0\\x1e\\xfaB\\x05\\xe5\\xde7\\x17i2\\x93\\xf1\\xbb-\\x96)sa,k=[\\xd4\\x9237\\xf3\\x85\\xf9\\\"\\x14@\\xab\\xa1\\x17E\\x9eq\\xba\\xc3\\xd2O1\\xac@\\x82\\xa4d\\x1e\\x84\\xb0\\xd0\\xb6\\xa3\\xbfk\\xfd\\xb1'\\x07<\\xc3\\xd8xvS\\x0e\\xe0\\xc0]!\\x1f\\x99\\x19\\x00\\xb7\\xa6\\x12\\\"r\\x84;o}\\x93\\x82\\xfd\\x06\\x8e\\xe0\\x95\\xb1\\x89\\x0b*\\x82a\\x13)\\xfe\\xab\tC\\x00\\\\9\\\"\\x89w\\xf7d\\xa5\\\"a\\x16\\xc2E\\x08I\\xe0\\x88\\x08\\xc6C\\x8b\\x1bK\\xe3\\x92^\\x07!\\\\\\xdb\\x8f.\\xb7\\xfb\\xfcf\\x95\\x07N Ud\\x1c\\xce\\x08\\xa2_X\\xdb%\\xd6\\xcf\\xcd\\x81\\xf8p\\xcfD\\xe6j\\xdc\\xed:\\\"\\x83\\x8e\\x0c\\xc6T\\xb5\\xaf\\xd0n{_Q\\x96\\x7f\\xe0\\x01\\x020\\xd4D\\xa3\\x9191\\xd0/!V\\xed; '\\xaf\\xcb\\xddc/\\xa7u\\x8f/9\\x0b\\xfb\\\\\\xcek\\xa1;@\\xeb\\x98\\x9e\\xb7n\\xeb\\xa7F\\xf7\\xa0;\\xde\\x93\\x10b\\x1dD(\\xac\\x14N\\x8e\\xb9\\xa5\\x0d\\x86c\\xdd\\xe0^\\x1b\\n\\xee3\\x8ffq\\xf6\\x9el*\\x9e\\x19\\x8a\\x8eb\\xd3\\xc92C\\xc5\\x0b2\\x8bg+\\xc2v:\\xad\\xa1oQP\\xf6M[_6\\x8f\\x9e\\xff\\xf9\\xe4\\xf9\\xff:\\xfd\\xe95\\xaa\\x16\\x99\\xf6Q\\xdf\\xc2\\xa6\\x97\\x93c\\xc4\\xc7\\xe2t\\xd8D\\xf9\\xa6&\\xe5\\x9f?\\xbc\\xfe\\xd1\\xd4Ke\\x1b_\\x08\\xdd\\xa8\\xbc\\xa2\\x88\\x13b \\xb5Q\\xe1\\xe2Y\\xaf\\x16\\xe9\\xba\\x90\\xa9\\x97O\\xe2\\xce)\\x94\\x9e\\x94A\\xa8\\xfaWf\\xcc\\xb1r\\xb0e\\x10\\x8c\\x80H\\xf5\\\\\\x06\\x9c\\xe1\\x91\\xbf\\xe5j\\x1b<LD\\x91\\xeaQ\\xe1\\xde\\x83\\xcd\\xf0\\x1f\\xc7p\\x7f\\x9f\\xf2W\\xc6\\x16n\\xfdE\\x08\\xb3\\x81\\xf3\\x92\\x1e\\x0c\\x1e\\xf8\\xb34!Y\\x1d\\xa0Nr\\xa1\\xe4\\xa0.\\xe0>\\x1c\\xec\\x85P\\xc0.\\x1c\\xec\\xa1S\\xf4\\xc7\\x0c\\xfc\\x8a\\x94W\\xa4d\\xd5g\\xe6\\xea\\xfa\\x99\\xe9tWtg\\x1dx!h\\xaee\\xfb4\\x03\\xb5K\\x86F\\x0e\\x19\\xaf\\xdd\\xd3\\xef\\x19P\\x81\\x07\\x98r\\xd5\\x90\\xe9'\\x94GIV\\x91\\xb2\\xfeP\\x12\\xc2\\x1c\\x1b}F\\x9d\\xe81`\\xe4\\xd3.X\\n\\x80P\\xb3\\xd3kE\\xab>\\xf2:\\xefG|\\xfa\\x85\\xf7O\\x87\\x8f\\xbe\\x0d\\xf4\\xcd\\x9b\\x8f\\xa5\\xc6\\x0fH\\x03$TM*\\x1a\\xe37|\\xed\\x98\\x95@\\xd9DS}\\x1a\\xa01\\x8fN\\xb9l\\xd0A\\xb1\\x060\\x00\\xeb\\xb1\\xf6;\\x98\\xc8Z,\\xe4+\\xcf\\xeb\\xd7\\xb3\\xf8\\xfb\\x82\\xab\\xbb::?'\\xd5\\xeb|\\xbeI\\x89F\\xcd\\xc3C\\xb2f~\\xf7\\xea\\x0d\\xc3\\xe7b\\xbc|4\\x7f)\\xd5f\\x8e\\xa1\\xd4Z\\xd8\\xcd\\x859\\\\\\xdb\\xb4\\xeeV\\x1d\\x0d\\xaf\\x83r>\\xff;\\xaaVqA:f\\xd3t\\xe7\\xce\\xca\\xe4\\x82L\\x94\\x8at\\xfa\\xa8\\xc2\\xfa\\xc7&)\\xc9\\xbc=\\xe2yR\\x15\\xf4,v\\xfe\\x80\\xf9\\x94\\xd5C=4+\\x10\\xdc\\xe1\\x12\\x84-8\\x98\\x11W\\x7f\\x0b\\xcd\\xaf<\\xc0\\x14\\x16I\\\\\\x89\\x90\\xb2\\xccK\\xf5\\x8e\\x04\\x1f\\xf4\\xb8.\\xfd\\xddt\\xbd*\\xf3k\\x8c\\x80t\\xc2\\xbfj/\\xa9\\xde\\xbc\\xdb\tO\\x95\\xcb\\xe4\\xc7\\xdd\\x1bJ~\\x9b\\xdc\\xb3S\\x14\\xa9\\xae\\xba7\\xa41\\xaf\\xdf\\xc5\\xde\\x0d\\x7f\\xdem\\xbf\\xe2\\xcf\\xbb\\x17\\xc0\\xfc\\\"\\xb9\\x97^\\x80_$\\xf7\\xd2\\x0b,\\xf8\\xf3\\xee\\xc5/\\xbbH>x\\xa2\\xbbH\\xce\\xfc\\xc3\\xc7\\xddy\\xb1\\xfb\\xe3\\xfd\\xc3n\\xfbW\\xbc\\xfd\\xee\\xb5\\xfa\\x9a_\\xabw\\xdbY\\xf2\\xe7\\xddy\\xb1\\x1b\\xe4\\xde=\\xf4\\x05\\x07\\x7fw\\xba\\xe7\\xbc\\x99\\xeep\\xae\\xf9\\xf05W\\xc4\\xb4zw\\x94\\x9f\\xf0y\\xef\\xda\\xfa\\xb4\\xafN\\x7f\\x0eG\\xddh\\xda\\x97p\\x04\\x0f\\xdb\\x8f\\x9eQN@\\x04\\x00|V.\\xf1\\x12\\xa9:\\xebD\\x18|\\xab\\xd6\\x12\\xa1\\xeb\\xba\\x95\\xde\\xa9\\x950\\xf4n\\\\\\xe7\\xa5\\xa9\\xf6\\x07\\xb5\\xb6\\x88<\\xd8\\xae\\xf2\\x9a\\xdfb\\xcb\\xdf\\xd3gg\\x94g\\x9b*\\x03.\\xe3\\x9b3O\\xf7\\xf4\\x87\\xcdbA\\xca\\xde\\xbb\\x17q\\x1d\\xff5!\\xd7\\xbd\\x17<\\xc7\\x87\\xee\\x03\\xd2{\\xf82\\xcd\\xe3\\xfa\\xf0@\\xdf=\\xbe|\\xf4P\\xff\\xf2UV?6\\xbe\\xd9\\x7fd|e\\xea\\xecu\\\\\\xf4\\x9e1\\x17\\x14\\xf1\\xf8C\\xe7-\\x8b\t\\xd8\\xfb\\xe8\\x94\\xd4\\xfdg\\xc8\\xdf\\xf5\\x1f\\xdf\\xac/\\xf2\\xb4\\xf7\\xf8\\xa7\\xc487|\\xf5<\\x8d\\xd7\\x05\\x99\\x9bk\\x98\\xa6O\\xdf\\xb5\\xe6O\\xc9\\xbc\\xf2\\x1e\\xc9\\xa8\\xf8\\xeam\\xe7\\xe3\\xbf\\x91\\xf8R\\x02ig?\\xd4262,\\xef\\xab\\x10~\\x0e\\xe1M\\x08\\xefu\\xb7w/B\\xbc\\xbb\\xc9\\xe0\\x1e\\x9c\\xf6\\x99\\xeb\\x9f\\xf8\\xab\\xe7\\xfdW\\xff\\xe0\\xaf.\\xdb\\xe7\\x03ei_\\xe1%\\xee\\x0b*\\xb5\\xc31\\xbc\\xa2\\xe3\\x90#\\x98\\xd0\\xdfA\\x10\\xaa\\xda\\xd3\\x17R\\x84x\\xd1ol\\xe7Z\\xcd[\\xdaa\\x9e\\xe8\\x0c^\\xe2\\xbdBWJ\\xa5\\x9f\\xbe4\\x89\\xc1thW~M%\\xee\\x1fe\\xd3\\x18\\xd5\\xf7E\\xf7\\xe02\\xc4\\xbf\\xa5\\x1d\\xff\\x13\\x8e`E[\\xe9\\xbd\\xa5\\xe5\\x078\\xa25\\x8e\\xe0-\\x15\\xb8\\xf1\\xafwz\\x05\\xc6\\x85:\\xc1\\x8a\\x8e\\xe2G\\x83\\xaa\\x03[\\xf9 \\xdb{F\\xff\\xfa\\x01\\xb5ToLr\\x81\\x98\\xeeO\\xac\\xee1\\xfcr\\x0b\\x13Xv'\\xff\\x13\\x1c\\xc3\\x82v\\xbd\\xf1_0\\x1d\\xe7\\x04f\\xf4w\\xcc\\x7f\\xf7\\x1a7\\x82F\\xf4\\xba\\xf3z\\xfa\\xcf3\\xd9\\xc1\\x1b\\xee/\\xfb\\x8bA\\xefH\\xc7\\xb8\\xa6\\x1d\\xfe\\x93N\\xbf\\xdf\\xdb\\xef\\xcc\\xbf\\xde\\xa3\\x0d\\xde{`!\\x18\\xcb\\xa0\\x8f\\\"\\x7f\\x85#x\\x8f\\x9aj\\x1d\\x9a\\xfcU\\x0e\\xf2\\xaf\\xfd\\x97\\xef16#bF\\x88~\\xed\\x0d*\\xca\\x08`\\x92}\\xe9\\xd9t\\x00\\xde\\xdcbXC\\xbf\\x14\\xbb\\xb1D&\\xe7}\\xd7\\x12<\\x08u\\xe8\\x7fn\\xeb\\xd2p\\x9f\\xf3\\x02\\xc7\\x9d\\x87\\xa0t\\x9c\\xbbvLa\\xf6g8\\x82\\x7f\\xc01b\\xc6\\x1c&P\\xc0\\x04\\xff\\xbe$7\\xd5\\xab\\x0c\\x03\\xe2\\xf6:\\xfd\\x1b\\x1c\\xc1K8\\x16{{\\x02\\x7f\\xee\\x01\\\\h5\\xfd\\xbf\\xd1U\\xab\\x15\\xde\\xcf4\\x93\\xbf!5)1\\xc6\\x13z\\xe8\\x9e\\xa1%\\xfd\\x0b\\x9c\\x8f\\xdb\\xec\\xe4\\x93\\x91\\x1c\\xe7\\xc1\\x93.\\x87$8N}\\\"\\xaa\\xef\\x1e\\x8f\\x9669<\\x12\\xe6u\\x81W~;\\x18Z\\xbc\\x95\\xeb`\\xe4\\xb8\\xf7\\x1f\\x1b\\x92\\xc2\\x1ety2\\xce)?\\xd6g\\x85=x\\xd2}\\xbei\\xc2\\xf62\\x0f[\\x11A\\x97\\x1d\\xa0\\x15%#\\x83\\n\\xdfV\\x94\\x8d\\xe9\\x19\\x8b\\xb2\\x81\\xce[\\x14\\x04<\\xcc\\xc6\\xb0{{{}a\\x02\\xb1\\x1e\\xe8N\\x06\\xc1\\xeab\\xeb\\x81v\\xd8cX\\xb9{\\xd4\\xf6\\xab\\x8d\\xcb\\x9c\\xb4\\xaeuG\\xae\\xf0\\xe3\\xc7z\\xcc<\\xec\\xc9H|\\xb0\\x8f\\x0f\\xb7\\x1dl\\xe2+\\xa9\\xa0\\x99\\xc9\\x18&\\xec\\xf7\\xbe`\\xf0]4\\xcc\\xa5\\xde2\\xfed\\x1b\\xa6\\xfeF\\xa3Q\\xa3@\\xaeZi\\xd7\\xa8L\\xe1Z\\xc6\\xfb\\xb0\\x0f\\x13\\xc0\\xe0\\xfd}\\xe2e\\xbdc\\x93\\xa8KA\\x1a\\x0b\\xb9\\x82\\xc5\\xfd\\xbc\\xbf\\xcf\\xaebs?i:c\\x1d\\xa1\\x14\\xc9\\x82\\xf7o\\x82\\xa7\\xb0\\xbb\\x1b\\xc3\\xf7\\xb0y\\x1a@\\xc5\\xcd\\x11\\xa65\\xecB|\\xa6?\\x17Y\\xe3\\xfawr@\\xa9\\xec\\x816\\xb5/{\\xa9\\x9f\\x06\\x90\\x8a^L=\\x08\\xf6\\x87\\x05\\x0c\\xcd\\xfc\\nS\\x8a\\x11\\x96S3\\x04\\x9d\\xdeo\\xfb\\x85\\xefn%a\\x0f\\xbe\\x1f\\xf8\\xa5\\x01A\\xbf\\xc0\\xf7\\x91S*\\xa6\\x15i\\x12\\xab\\x87\\xe05*\\x16\\xaf{Y\\xce\\xb3\\xd3*w1\\xb7\\x81A\\x05c@B\\x0d\\xd5\\xcbzZ\\xae\\xa6\\xf5\\xa7=H\\x99\\xf7$\\xea\\xe2\\xd9\\x0dV3\\x05\\xc9\\x1f\\x90\\xfe1^w\\x04N\\xd1\\x884M\\xe9/\\xafr\\x9b\\xc0\\xbc^,q\\xdayTs\\\\\\x11\\xb4\\xdedQ}\\xc94;3\\xd8\\xdb)\\xb0\\xa4k\\xd9\\x80\\xc2\\xcf\\xfc\\xfd'\\x07\\xc1\\x17h\\xcf\\xbe\\xf6\\x92\\x1bM \\xf54\\x03\\xc3\\x88\\x18\\xbd\\xa4\\x92l\\x91k3\\x87\\xd1\\x92\\xe6Km\\xee0\\xc0\\x94\\xb5e6\\x81C\\xfdKT\\xdcM\\xe0a\\xef\\xa5\\xc659\\xb3\\x1ao\\x82\\xb2nSrF\\xb9\\xb6\\xfb\\x9a\\xfb\\xd0~\\xd3\\xccOs\\x96g\\x8bdYEi\\xbeDs\\xc0~=F\\x02J5\\xdb\\x00\\xa8f\\xa7\\x89\\x8d\\x91`\\x97Z\\x92 \\xcb[\\xafDR\\xc5\\x12\\xfe\\x04\\xfb\\xa8\\x87f'\\x00\\xa5\\xca\\x94\\xb0\\xee?\\x05J&\\xcb\\xa7\\x10\\xef\\xee\\x06\\x94F\\xd2\\ngjkZ\\xb2\\x89\\xa0\\xfa\\xd3\\x91\\x12\\x92\\x95+M\\x83)9\\x8b\\xe2\\xa2H\\x11\\xe5\\x06\\x0d\\xda\\xc5\\xe9\\x1a\\xd1\\xb5D\\xfd6&)f\\x17\\xee\\x1e}\\x88\\xf7\\xb3\\\\/\\xdb}\\x8fOY\\x05\\x8aD\\xbd\\xf7\\xf4!{\\x8d\\x18\\xd8{\\x8fO=\\xad[>^Vc\\x0e\\xa8\\xca\\xe4\\x17\\x8f\\xa8\\x99\\xf4\\x91\\xc00]\\xa7S\\xc2\\x9a\\x07\\x8e21]M\\xe3\\xd7\\xb9vpc\\x8f\\xc4\\xc6\\x978\\xae\\xa5u\\xfa\\xb3\\xc0\\xc0`\\x90\\xce}\\xc4:\\xbe$\\x7f\\xae\\xeb\\xc2\\xa7\\xc4\\x97\\xbc\\xa4\\xaf)Y*\\xf2\\xaa\\xc6\\x1f\\x06\\xd5\\xc3\\xc5&I\\xe7\\xef\\xc9?6\\xa4\\xaa\\xd5\\xe6\\xd4\\xe7\\x06\\xd2\\xc1r{\\xab\\x1f\\xf1G\\xfa\\xfa%\\xa9\\xf2\\xf4\\xaaU\\x9f?\\x1a\\xac\\xcfMM4\\x9f\\xf17\\xfa\\xaf+R&q\\x9a\\xfc\\x93\\xbc'\\x95\\xfa\\xad\\xfa\\\\\\xffe^\\xbc\\x9a\\xab_\\xacHZ\\x90\\xb2\\x8a\\xe8\\xf3\\xbbEc7\\xdc\\x91\\xc4\\xad\\xd6\\xeb\\x0c\\xf0\\x84\\x9e\\x96\\x8d\\xfa\\x84\\xfe\\x10-\\xf7\\xe9\\xd1\\x15w\\x1d\\xa1\\xb5\\x8cGQ2\\x81\\xd2p\\xd2\\x98\\xa3\\xe3\\xf2.'\\xba\\xa8<\\x1aM\\x8e\\xe0C\\xe8h\\x91+\\xc8\\xc5\\xa0Q>W~\\xa1\\x97N\\x94r\\xcd\\xa7|a\\x00=\\xf0If\\x1anF2\\x15k\\xceNDx\\x0d\\x83\\xe7wGp\\xd0\\xb9\\xdd\\x00^\\xb9\\xe5\\x9c\\x7f\\xf9\\xfc\\xd9\\xc0A\\xb0\\xaf\\xf5\\x90e\\xfb\\x7fS\\xc6\\x17)\\x19\\x00e\\xb6Y\\x13Q\\xc7\\xc0\\x10,I\\x8f.\\x01h\\x82\\x10C\\x1d\\xd9On\\x01\\xb0\\x1e\\xbf\\xa8\\n\\xe9\\x96#\\x9f\\x88-\\xd3\\x1f\\x138Dl\\x11\\xad\\x8c\\xc0\\x9d:\\x9a\\xfbY\\x08^\\xcc\\xfd\\x8a\\xb3\\xfe\\xd4s\\x17\\xfb\\x18\\xde\\x9c+\\xef\\xdaO\\xbdRG\\x05KL\\x05\\xb5_Gt?\\x1f\\x1c*\\\"\\xaf?\\x1d\\x1c\\x82J\\x072\\xff\\xe1\\x81\\xf2e8<\\xf8\\xce\\x97\\xdfn\\xfbek\\xb4\\xe3\\xbe\\xdc\\xba\\xcf\\xc3\\xc3\\xc7\\xe6O5R{\\xfb\\xd0o\\xbd\\x92$\\xb2\\xd4c\\xb7@-\\x0dr\\x13c@\\x1fy\\xf6\\xdb\\x93T\\xea\\x07\\x93\\x1b\\xf1M\\xec\\xb6.\\x1f\\n\\x7f\\x82\\x83\\x8e\\xb5x\\xc3\\\\\\x1e\\x9c\\xc1q\\xfb\\xe7\\xc4\\x98\\n\\x8d\\xb29\\xbe\\xa6\\xf5Cc\\xeb\\x87\\xed\\xd6\\x0f\\xcfP\\xff\\x1eDW\\x07o\\x0bRbL\\x9aWh^\\x12\\xd7\t\\xc6/\\xb9y\\x9d\\xcf5\\x1e\\x9f*\\xa8[\\xa9\\xddTE\\x0b&kP,\\x10&\\xe8\\xf87\\x13\\xf4#\\xf0I\\x10\\xb0(Qy\\xd39s\\x84U\\xd2r}\\xac0\\xc7\\x96\\x174\\x86a\\xab\\xf6'\\x01L \\xe1W[\\xfaE\\x1e\\x9e\\x9e\\x9e\\xbej\\xfd\\xc5\\xcc\\x02\\xc9@8K\\xdd\\x12\\x8dC\\x00\\xfb\\x12\\x99\\xc8\\xad\\xc0A\\xbfnG\\x84\\x80]\\xf0\\xce1}P+QZ\\xb5\\xf3\\xff\\xfd\\xfe\\x9b\\xff\\xf1\\xf7{\\x7f\\xf4\\x83\\xf3\\xdd\\xa3\\xe9/\\x1f\\xcfn\\x9fN\\xbe\\xff\\xd3\\xe7\\xe8\\xe3\\x83\\xe3\\xf0\\xe3\\xc7?x\\xde}\\x96<\\xed\\\\g\\x99\\x0b\\x0df\\xb0\\\\\\xe8\\xcc\\xf3\\xb0\\xb1\\xa1\\xdbo\\xfa\\xad\\x95~}\\xff<\\xf8\\xe5 \\xbc\\x0dD\\xd3J\\xe6\\x12\\xff<\\xf8\\xa3@\\x80\\xe6\\x83\\xe9\\xf9Y\\xf0\\xc7o\\xf8s\\xcb\\xc6UF\\x851X\\xe7~M\\x87\\xd1\\x0f\\xa4nX\\xdc\\xd8v\\xa0\\xf0\\x06\\xbd\\xfb\\xfdtL\\xa667\\xb66+N\\x1fw\\xf6\\x90\\x03q\\xc6\\xc4\\xcaDWA\\xdc\\xc1\\xb1\\xe0Vb\\xcf\\xeel\\xb3g?\\x7f\\x86\\x1d\\x12\\x15q\\xbd\\xaa\\xfa\\x8du\\xaa\\xb3jC\\xb1-@Qs\\xf1\\xea\\xfd\\nR\\xb6\\xcf!\\xc9\\xa0\\xd4\\x9b\\xa8*\\xeaXZi\\x9a\\x1b\\xa2\\xcc\\x03\\x87\\x85\\xf7\\xee\\xd9\\xfbg\\xafO>\\x9c\\xbc?e\\x83O\\xa2:\\xff\\xa9(laSD\\xb9\\xe2\\x0eg\\xb4\\xa7ibP\\xa6\\x8aB;\\x8c\\x07\\xe9el\\x83}\\x1cX\\x87\\x04\\xd0\\x18j\\xdbk\\x8aR\\x15df\\x8c\\x13\\xa6+t\\x95XX\\xd1\\xdc\\xfd\\xa35\\xa9W9\\n]-(\\xbb7 i\\xfed \\x9c\\xa8Z4:(]\\xc1\\x0c4\\xbe\\xc9\\x06]-(\\x85\\xa1W\\xb2D\\xe8\\xcd\\xe0Gz\\xa7\\x97\\xfe\\x9b\\xf6\\xaf\\xadT\\x96\\xa0U[b\\xe3\\x9a\\x0bp*g\\x95~\\xe6\\xef?\\xee\\x06\\xff\\x00n\\xb6\\x86o\\xbby(\\xea(\\xa9\\xde>;=t\\x125\\x98.$/H\\x16\\x17\\x89\\x91\\x89\\xe0Y\\x15(\\xae\\x17\\x0d\\xae\\xd3\\xc9\\x1ez\\x1a\\x16<\\xa9N\\xaf\\xe3\\xe5\\x92\\x94\\x07#\\xc6P\\xb1O\\xb6\\x18\\xc3\\x81n\\x0cy\\xf1j\\xce\\x12\\xf0\\xd7Q2\\x7fY\\xe6\\xebwq\\xbdz\\x8d\\xf8\\xcd\\xdcI\\xeb(%\\xcbxv\\xf3\\xaa\\xff6\\xa6o\\x97\\xa4\\x96\\xc7\\xf9\\xfb\\xf8z\\x84\\xf8\\xc2\\xd9[F}\\x8f\\xd9Ib\\xd7\\xd7J\\xc9/\\x12[\\xd7\\xbc5\\x18!f\\xbb\\xd5\\\\+\\x11\\x8b\\xcb&\\xa1\\xdf;x\\xe2$\\x83'Nb\\xa3z\\x89\\x12\\x19i\\xc7p\\xef%H^\\xa2\\xf2\\x85\\x83\\x0c\\xca4\\xf7\\x13\\x19\\xf0\\\"\\xf6\\xf9\\x1f\\x9b\\xb3\\xa8\\xca\\xd7\\xc4\\xb7\\x03\\x14\\xba+\\xc2\\xee\\x16\\xb5uu\\x91\\xd7\\x0c\\xd9\\x10\\xd0>>\\x9bK\\xdc\\x80#\\xd8\\xd0\\x87$\\x9e\\xad\\xd4\\x87\\x15\\x8b\\x93Q\\xaeQ\\xcb\\xc5w\\xc4\\x98\\x0dQ\\x90\\x99~mY\\x005D/\\xb3\\xd4\\xa1\\xb3\\xd9\\xc1\\xb5F\\x96\\xaf\\x8e\\xbe\\xf9F\\x8emn\\xba\\x8b\\x82\\xde\\x89m\\x0c2+\\x0e\\xda\\xccx\\xca\\\"\\x9f\\xbd\\x17\\xc2\\xa2uZ\\x0e\\xac\\x9d\\xc0\\x18\\xcc\\x92\\x15\\xafIMJ\\x0d\\xdb!\\x8a\\x1cgE\\xc7\\x19\\x07\\xb0\\xe3\\xb0\\xe7D\\x91r\\xe0\\x948\\xf0\\x08;\\x9did\\x0d\\xf6{\\xb3<\\xab\\x93lC4\\xa9a\\xd4r\\xc5]qs\\x9f9\\x7f\\x99\\x9cqE\\xa1\\xddj\\x83\\x02uK9\\xad\\xa8tB\\xffc\\x91\\xca3\\x8a\\xc6\\xf8\\xf4\\x08\\xa6\\x99ev\\xc0\\x87\\x86\\x87\\xcb\\xb4r\\xa8M\\x076k\\x84\\xa6\\xfd\\x00f}{'\\x13\\xbd\\xd4\\x15\\x12\\x9d\\x9f\\xe7e\\xb2L\\xb28U\\xc4)\\xe6\\x96\\xa1}\\x83\\x12\\x8cBT\\xc2\\xf6O\\x96\\xb7\\x9f%L\\xe7W\\xed\\xd6\\x81\\xe8\\\\\\xab\\xbbE\\x86\\x00Td\\xc4\\xac-\\xf4\\xba\\xcd\\x98\\x02\\xbc\\x80#\\x98M\\xf7\\x1c\\x00NKa\\x84\\x91\\xe9\\x0d\\x15P\\xda0*:0\\xaa\\xac=\\x9b\\x19%\\xfb[\\xe4\\xe5\\x9bm\\xcc\\xce\\x18\\xeb\\xb6\\x04\\x0e\\x9d\\xb9%U\\x84ZV\\x06\\xda\\xd7-\\x92^\\\\QzQ\\x07\\xe0\\x15e>\\xdf\\xcc\\x08\\x1f\\xdc\\x15\\n\\x02\\xb3<\\xab6\\xeb\\xf6\\xb3\\x8a\\xcc6eR\\xdf\\x88g\\x9f?\\x83\\xbf\\x9a^\\x9d\\xa1\\xb1\\xdb\\xd5Y\\x08s\\xb6\\xf3V\\xba\\x0ca\\xddB\\x01\\xb3A\\xc6f\\xa5\\x909v\\xa64\\xed\\xd0\\xbf\\xb97\\xa0\\x03\\xc8\\x80\\x83m\\xcd\\x14\\xf5N\\xf5\\x81{\\x18\\x98\\x14\\xe1\\xbar\\x03G\\\\Ab\\x9f'X3pt\\x8b\\\\\\xa0\\x8b\\x10\\x9d\\x16(\\xd1M\\x1b\\xa2;\\x0f\\x9e\\xc2\\x8eO\\xa7\\xe8_\\xc0\\x11\\x9cG\\x19\\xf9T\\xfbA\\x10\\xcd\\xf3\\x8c\\x04O\\xf9\\xe4]\\xc1%\\n\\xed\\x8f\\xb2z\\x17,\\x00\\xa8\\xdb\\xbcD\\x91#>\\xa1(um'3\\xdd\\xc2n\\x90N\\xce\\xc6\\x8eZ\\x94\\xde.\\xa3\\x0c\\xcf\\xc9\\xb6\\xad\\x01\\x87\\xc7\\xa7\\x91h\\xa4+\\xa7#QKW\\x9e\\x8fD7]\\x19\\x87\\x82\\xba\\\"\\x17\\xf92D\\xa7\\x95\\x0eZ^\\xd3\\xe5\\xa3\\x98I\\xa1\\xe6_\\xc2\\x11<\\xebb\\xe6'\\x8e\\x99;\\xf6\\xab\\x981\\xe5\\x8a\\x87\\\"\\xbf\\xdc\\x06uu\\x85bb\\x87\\xd7v>\\xc5mE\\xde\\x1be<F.\\xff\\x8b{\\xfd\\xf3\\x90\\x83u\\xf4MI\\x16\\xec5\\xfe\\xc5^\\xe3\\x9f\\x9c\\x89m\\xde\\xab\\x15d\\x0d\\xf6\\xe0\\x8b\\x87|\\xcbT|\\x14 \\xba\\x04\\x8fc\\xcb\\xad&\\xa0\\xaeki\\xb9\\xe5m\\xdd\\n\\x88=\\xb9\\x17\\xe2\\xbe\\xda\\x1eD\\xb7\\xb0HXt\\x9c/\\x1b\\xcd\\x97\\xefLZv0l\\xde\\xb3\\x88\\xe3\\x97\\xf2\\xf7\\x17\\x80\\x1c\\xeep\\x9a\\xc0\\xc9\\xf4i\\xc0\\xfd/\\x9f\\x7fQs\\xc3\\\\\\xd7P\\xd9\\xee\\xcb\\xf1_q\\x97\\x13\\xbaw\\xe0\\x08(ytn\\xc2\\xad\\xb3\\xed6\\xc4\\x92#\\xff\\x8d3\\xf2o\\x83\\x01\\xe3\\x91z\\x07\\xc3\\xd8\\x9c+\\x08|>\\x1e\\x81\\xb7\\x19*p\\xc4\\\\\\n\\xc4\\xbcq\\xfe\\xd4q\\x9d\\xac\\xb5\\xb6\\x150n\\xfdJ\\x0f\\x1b\\x8d\\xf9K\\xef\\x89<\\x89T\\x85\\x08G\\x8e\\xceMQ_E\\xbb\\xe0J\\xd8\\x87\\xdf\\xe9T\\xb4\\x85P\\xd1\\xf6\\x82Z\\x03\\xf7\\x17\\xb6k(\\xf8\\xf0\\x98\\x07\\xa4b\\x11\\xa1\\\\\\x15rs\\x08\\x8d\\x06\\xab\\xdf\\xe9jL\\xa7D\\xb9w\\xfc\\xfb\\xc7\\xeb\\xb3\\x07\\xcb\\x84]\\xfe\\x0d\\x80u\\x9c\\xe9\\xc1\\xe3'\\x036\\x16\\xffo\\x98\\x1e\\xdc\\xcd\\xd5s\\x9a\\xc7\\xf3S\\xa3\\xc2\\xb0\\x94\\x9c3\\xd3R\\xd0\\xe6\\x0d\\xe9\\xdb\\xf5\\xc9\\xc6\\xe4\\xdb\\xcb\t\\x90(\\xbf43\\xf2\\x9b2\\xa5U6e\\xca\\\\\\xc5\\x8c\\x15\\xab:\\xae7\\x15\\xe6$\\xc1\\xbfl5Y\\x8aPQ\\x9b\\xfe2\\x7f\\xb1\\\"\\xf1\\x9c\\x94\\xd5\\x04\\x12\\x9fD\\xfc\\x87\\x81B\\xe8\\x1b\\x89\\xe1\\x08r\\xf1\\xe5\\xd4\\xe3y\\x84\\xee\\xd3\\x9d\\xe7\\x19\\xf4\\x10\\x1b\\xccC\\xf9\\xf93\\x9c\\xfb\\xb1\\xd9\\x0f\\xca\\xdf\\xa0kKM>\\xb1\\xf8\\xe5\\x17i~\\xc1\\x14X\\x17\\xe8'\\x1e\\x88\\xcd\\x1c\\xd5+\\x929(\\xb9)\\xc9\\xceY{hH\\x97G\\xf3\\xb8\\x8e\\xd9\\xdf\\x9b\\xc0r\\x00]\\xf5\\\"\\x01;(\\xea\\x84\\xa63.\\x8a4\\x99\\xa1\\x02\\xe9\\xc1\\xcf\\x15\\x8bO\\xc1\\\\w\\xfer\\xfa\\xf6MT\\xc4eE|LA\\xb4l\\x8c>\\xe3\\x05\\xf91\\x8f\\xe7C\\x0c\\xf4-\\x1d\\x85\\x0e\\x84\\xa2\\xe4\\x98\\x01\\x01\\x8e(\\x85\\xc8\\xa3\\xfc\\xe2g0j\\xf5\\x9dX\\x83\\x9c\\x8d\\xf5\\x84\\xdbl\\xeb\\xb9\\x01\\xfd\\xe9\\xc3a\\x91\\xf7\\xa9\\x83\\x9b\\xe1B2\\x9cT\\xaaO\\x19\\xf6\\x8c\\x94a\\xafM\\x19\\xf6\\x18e\\xd0\\xe3\\xaa\\xce\\xbf\\x04\\x94\\xa5\\x15\\xe3SC\\x8e\\x10\\xa1\\xd6e\\xf6@:\\x1d\\xaf\\xf9r@\t\\xba9\\xcd\\xe8@\\x85\\xbf\t\\x9a\\xfaGI\\xc5\\x1d\\xa1\\xa6\\xd9Y\\x00\\xc7\\xac\\xd2\\x04\\xa6\\xf4\\xff\\xb3\\x10\\x7f\\n\\xb9\\x8b\\xe2\\x93\\xf0U\\xd1@\\x1d\\xf1\\xb7\\x1b,s\\xc0ld\\xe0\\xa4\\xd0Gfy\\x99\\xf0#C\\xc4\\x89\\x13\\xcfd\\x9c\\xd1\\xa3\\xadl\\xaeVm\\xfb\\x0dS\\xe0\\x17\\x12\\x15I\\xf1\\xa5\\x06,\\xcdM\\xe3,Oy\\xd6\\x9a\\x97\\x98\\xf0\\xcc||\\x90(N\\xd3\\xfc\\xfad]\\xd47\\x18;\\xd8|||\\xd9\\xcc\\x8fE\\xf2\\x1dJ\\x1f\\xf5WX\\xdd\\x04@es\\xfdb\\xc8\\xc8\\x1f\\xfb9\\xcb\\xdfp\\xc1\\xa2k\\xa8 \\xcd\\xe5\\xd7y\\xff\\xe3+\\x91~'\\x9b\\xe5s\\xf2\\xd3\\xfbW\\x86\\x80P\\xa0p\\x92\\xa8\\xcdM\\xb8j\\xe8\\xa6\\x99]\\x1eX\\x1dma\\xd0\\xfc\\x16l\\x81\\x19\\x95\\xcf;\\xf7\\xe4:\\xee0\\x08\\xcdW\\xbe\\xb9m\\xa9rfd\\xd4\\xde\\xbf8C\\x97G\\x18\\xfe\\x1d\\x8e!\\x8f\\xd6q\\xe1'A\\xf4s\\x9ed\\xbe\\x17zt\\xf3z\\xebMZ'\\x0c}\\xd4J0\\xe9\\xd4\\xd7\\x03`V]M\\xc0\\x0b\\x0d\\x06\\x99\\x15\\xbe\\xfd\\x1f\\x07{\\x86\\xf75{\\xbf\\xf7\\xc4\\xf0\\x9en\\xbfj\\x02\\xdeg\\xaf\\x0fP\\xa4^\\x94\\xe9\\xc0\\x14\\xd0\\x9e\\xe7\\xb4M\\xab\\xe1{\\xe0\\xceU#\\xda\\x02\\xce73U'7Dx\\x85\\xd1\\xd64\\x1b\\xb8>\\xa1\\x9bvg\\xa7\\x8c\\xaa\\xcb\\xa48\\xa1\\x88\\x9ed\\xcba\\xab\\x82\\x9c\\x87\\xeb\\xefo\\x0bc\\x88V\\xe0l\\x95\\x1d\\x83EQ9\\xf6/\\xa2)\\xc6^ny\\xe2\\xbf\\x9d6\\x82v\\xa3Q\\x88\\\"6\\xf84\\xa1\\xc7\\xcf\\xc6\\x8f\\x8d\\xeeJ\\xa2pc\\x1fC\\x1a\\xd2\\x10\\xf2 \\xd4\\x05v\\x0e)Oo$0\\xeb\\x86\\x9dB\\xa90Y\\xa0\\xe1\\x91~\\x14l\\x85\\xcc\\x0e\\x0eI6Of\\x14\\xa3u\\xf1R\\xbb9o`\\x00\\x8f\\xd3\\xdf\\x8e\\x95Aq\\xc3*\\xf9\\x08\\xee\\xd4\\xf3\\xd0\\x9d\\\\[=\\xc7\\xd6\\xfe\\xb1!\\xa5!\\x8203\\xa9Y\\xe4\\xe5Z\\x7f\\xd0\\x0c\\x86fM\\xfb\\xfb9\t\\xc6X\\xb3@\\x83\\x04\\xb1\\x9fL\\xc9\\x19;)\\x07\\x10|`3\\x168\\x15\\x83\\x8c\\xc3d\\x12\\xf9\\xf29\\x7f\\xf9\\x01_\\x9a\\xed;P\\xe8{\\x80\\xf4\\xbb\\x88\\xcb\\xfa\\xe3\\x03\\n\\xa9\\xfbT\\\"y\\x90D5\\xa9j\\xbf\\xb0\\x9a|\\xf08j\\xa6\\xf8\\x9d\\x80J\\x04.\\x01d\\xe4\\x1a\\xe6\\xa1\\x06\\xa8=\\xf6\\xd4*\\xd6\\xb06\\xa3\\xb8(H6gAu\\x92i}\\x86\\xf6\\xbdC\\x00\\xd6om\\xa6\\xf4\\x94\\xe3\\xac\\xfc\\xc40\\x1d\\x1ez\\x98\\xe1T\\x7f\\x07j\\x91L\\x1bq\\x058\\xf8V\\x98)\\xb2*\\xd2\\xa4\\xf6\\xbdco\\x00\\x01\\xae\\xa0g\\x0b\\xbc\\n\\xa1\\x1b\\x8aB-K\\xba\\x9b\\xa6{\\x03G\t^\tO\\xf7\\x07j\\\\\\xa0=\\x86\\x19\\x85nl\\xf8q\\x8e\\xe9\\x96\\x04\tdb\\xe6\\xcd\\x00\\xb2t\\x90#\\xd7 \\x87\\xeb\\xa6\\xe3\\x8bu>%f%6e\\xab.ZCl\\xa8\\xf4\\xf9PFmP\\xa9u?\\x0b\\xa7(&\\x8c3\\\"\\xc4\\xb5-\\x9d\\x8d(\\xf2fSG\\xb0C\\x96\\x0c\\x08\\xcfG\\x12\\xb0l\\xbf{O!\\x83\\xef\\x81<\\x85lw7\\x10bYC\\xb8\\x87\\xac\\x8d\\x04gRG\\x8b$\\xadI9~1\\xccZ\\xfb[\\xc1O\\xde3\\xb9@@\\xd3LI\\x8f\\x84c\\x0fv\\xf1(\\xf7\\xfal\\x1d \\xa3p\\x11BE\\x99^}{L\\xe1u\\x04K\\xd8\\x85\\xeb\\xb0\\xd9\\xd4x\\x928\\xecj\\xed\\x94\\xbe\\xb2\\xc1q\\x08uT\\xad\\xf2M:\\x7f\\x91_gi\\x1e\\xcf\\x9f\\xa1Z\\x8deg%\\xe9\\xc2p\\xdd.\\xed\\xc3\\xfc\\xcc?\\xe8eK\\xa4Eh\\xc5\\xf7\\x86\\x94\\xe2Z\\xa3\\xe6\\xb9\\xd0\\xa7\\xeb^\\xae\\x1a\\x8b\\xe7\\xfe\\xcb+\\xf1Rc\\x0f\\xad\\xba\\x1a\\x0b\\x9b`\\xf9\\xec\\xcf\\xec\\x8c\\x136\\xc1l\\x07Ri\\xf8m\\xf9\\xbf\\xe9\\xea\tK\\xce5)\\x97\\xe4U\\x86\\xcf\\xde\\x96\\xb4\\x02\\x1cA\\x8ao\\xb8\\xc3\\xb7C\\xc0\\x1bh\\xd6Zz\\xdf\\xd8\\x11\\xdf,\\x11\\xb2]Y\\x7fq3\\xda\\xfa\\xb2E\\xad\\xfb\\xad(B\\xf2\\xeeg\\x90a\t\\xbaK\\xab\\x9b\\x03\\xaa\\x8c\\xf5,2\\x08\\x82\\xaa\\x01\\xbf_\\xf2\\xc8\\xe85\\xfe\\x95\\xf9\\xa4\\x97\\xa8[6\\xd1F}Z\\xf9\\xe0;\\x8d\\xc5\\xfdZ\\xa0\\xb5\\x169\\x97\\x02\\xc5\\xbe\\xd5\\xbd\\xbd\\x11\\xdf\\xf6Ru\\x02?\\xf5\\xe4\\xae\\xd2\\x83\\xa3\\xed(op\\xda\\xe8\\x83a\\x02\\x9a\\xf4\\xee\\xdd\\x1d\\xc0\\x8f\\\"\\xdbI \\x88?=2\\xaf\\x14S+y\\x94\\xad\\xe3\\xf2RRj f\\xae\\nUL,!\\x17Kn\\xa0\\x97\\x01\\xf6\\x8d2\\xc0~[\\x06\\xd8?\\x1b\\x08C(Ng9\\xcc\\xeb2.\\x1c\\x0f\\x14\\x16\\x82\\xfdi\\x00\\xd5u\\xc2T\\xc5QQ\\x92+\\xe4\\x8d3\\xf2\\xc9\\xca6\\xce\\xe2\\x8a\\xc0\\xded\\xb0\\x0e\\x08\\xd3,\\x93\\x10[\\xdb\\x84X\\x91\\xc2\\x1e5\\x02\\x14\\x96u@O\\x1c\\x0c6\\xbf\\x92\\x04\\xac\\xf9\\xfb\\xf3gL.\\xa7\\xdd6q\\x10\\xc2N\\x1c\\x95,\\xa4\\x04\\xa6)\\x9b\\x91\\xa2\\xce\\x07w\\xb9Z\\x18`\\xe0\\x08\\xf6\\x1d\\x0d\\xb1.J\\x12_Zk\\xda\\xef\\x87\\xe5\\xb5$\\xef\\xff\\x11\\x9d~\\x7f\\x1e\\xda\\xfb\\x17\\xb5\\xe0\\x9a=r[3\\x12\\xd5{\\xcc\\x1c\\x9fdu\\x08\\xf4\\xe7h8=\\xf9u\\xc1\\xc4\\x87\\x1c;\\x00\\xe1\\x89\\x1d\\x08,\\xe3lmYjlm\\xdfa\\x1f(\\xa7_<$|\\xc6&\\xe13\\x1c\\x96/y8+\\xce\\x81\\x19\\xbb\\x90<\\x9a\\xb1\\x1f~\\xb8\\x88\\x08z\\x92,\\xec\\x1f\\x86\\xca\\x0ex\\x14\\x82\\x8f\\xf9\\x1eJ\\x8c\\xed\\x82\\x071\\x06y\\xa1O\\xcbt\\xf8\\\"\\x0b$\\xe0\\x1c\\x90Q\\xb2\\xab*2\\x8aa<\\xa1{]=@|\\x16\\xaf\\xd4\\xadw\\x07,\\xa0[A\\xed\\x1a\tHU\\xe4YE\\xbe\\x84\\x82\\x1c|\\xf7\\xebn\\x8d.\\x0598d$\\xa47\\x13\\xa3\\x0eP\\x14\\x84\\xdc\\xc1\\xa1\\x1b\\xe4HT\\xef\\xb7\\x89\\xc8\\xfexP=\\xfauA\\xc5\\xc7l\\xc9\\x0f\\xc3\\xc0\\xe0\\x82\\xbe\\x8c\\x8c\\x18\\x9c\\xc3Da\\xcd}goN\\x82\\xe5\\xd0\\x01\\x83\\x10$.\\x1d;n\\x04I\\x0b\\x0e\\x9e\\xe0b\\x1e\\xb0\\xbb\\xb4\\xb8\\x9e\\xad\\xfc\\xfd\\xc3\\xc0\\x10\\xafFW\\x9ai\\x1c\\xda\\xa7\\x01w\\xb8\\xba\\xcc\\xc4\\x8b\\x8e\\xdd\\x01.\\x87\\x0eh\\xce\\x1a\\xf4s\\xae\\x94c\\x19%J\\xc5Z#\\x08\\xf8\\x8f\\xe7\\xf9\\x1c\\xc3\\xc5\\xf2\\x9fL]\\xc5L@ \\x97{Q\\xde\\xc6G\\xf5A\\xa8\\xbb\\x99S\\x0b\\x1b\\xa5\\x03\\xda \\x19\\x8b\\xf2\\xcb\\xd1\\xeb\\xf3\\xd0\\x02'Q\\xeev}\\xf0\\x16\\xd1\\x0d\\x9c\\x89\\x0e\\x9c\\x89\\x04'}\\x1cv\\x93\\xcfw\\x0b\\x82\\xf1\\xe1\\x81\\x1d\\x8c\\x92\\x8c\\xc6\\x17\\xe5\\xa6\\xa8}\\x8f=\\xf0\\xc2^ \\xefna]X\\xf0\t+y$\\x9b{#\\x86R\\xd5y1`\\\"\\xa9\\x07\\xf9-K\\x93\\x871S\\xa7\\xc6o\\xa7\\xf4\\xcc?x\\xa2\\xd7\\xf9i\\x02\\x18\\xdc\\xea\\xd4D|\\xa0v\\x85t\\x03\\\\\\x16\\x92\\x10\\x07'%![(\\x8d\\xdbnVB\\xa125*{\\x06%B>\\x98\\x07\\xfe\\xcfU\\x9e}\\xfe\\xb4N?\\xdf\\xc4\\xeb\\xf43\\xa6\\x00\\xfdx\\xf1\\x80\\xf1\\\\_|\\xb9\\xd3\\x8d\\x10\\xb2\\xad9\\xe1\\xc3\\xfd\\xffxk\\xc2\\x81\\xc1\\xb4/1I\\xa0\\x06Q\\xfe\\x1eCi\\xe2\\xd5\\x97\\xf7\\x00\\x83\\xa0\\xe0M\\xba]F\\x16\\xe6\\x04<ztc\\x11\\xfa_\\x18\\xda\\xe5\\xbf\\xf6Z\\x81\\x80\\x1e\\xb0\\x87\\xfb:\\x13Q\\xa1\\x94}\\x80\\x97\\xfcn6,\\x89\\x83\\\"M?\\xee\\xbc\\x98\\x80\\xc7\\x07f\\xba\\xca\\x8f\\xeb\\x951\\xa4\\x06\\xd7\\x9a\\x1a\\xee\t\\xd7\\xa4\\x8eu\\x89\\xef\\xdc\\x961v\\x98\\xd5\\xc2\\x9f\\xf9D\\xe8\\xc6\\xd7\\xc1\\xb8\\xd5\\xaa}nC\\x83\\xee\\xf3,\\xa0\\x80\\xd6\\xc1\\xfd\\xf3g\\x98\\x9eu\\x83\\xef\\x0f\\xda\\x139*5\\xa7g\\xa1\\x1e\\x1f\\xdb\\xf3\\x18`\\x95x\\x8b\\xb2\\xd7h\\x96g\\xb3\\xb8\\xd6\\xea\\xf8\\xd0U\\xbf`]\\xf8{!\\\\\\xb7\\x0c&Z]:\\xf47-\\xcf\\x1c\\xbb\\xac\\xd1\\xeam\\x9a)\\xa1\\xca\\xcf\\xfa)W\\xb7\\x89\\x03$\\xaeG\\xa6\\x9a+\\x14t\\xa4W \\x1d(dwH\\x1f\\x97\\xa3\\xaeT?b\\xfd\\xa9\\x9dK\\x0dn)`\\x91\\xeb`\\xa1\\x1dbw\\xf9\\x87\\x86\\xc6\\xae\\xd5\\x9dq\\x03\\x9a\\xf5\\xaa\\\\\\xf0\\x03\\xc0\\xec\\xd2\\x9d\\xf4\\xe7\\x98\\x983\\xa7\\xd0\\x89\\x15\\x96\\xc9\\xc4\\\\\\x83\\xba\\x0d\\x16BkfN\\x98\\x08\\x03\\x93\\x8b\\xfb\\x93\\x8b\\x9d\\x16\\x90\\x8fa\\xe6\\x97n\\xc8\\x9c\\x8e>\\x99`\\x02\\xddkTS\\xe3\\xb3\\x01\\x13)#\\xa3\\x85\\xbaR\\xba9\\xd8\\xbc\\x9b\\x00\\xcfti\\xce\\x95\\xa5\\x19GZ5S\\x991+g\\x9d9\\xaa#i]\\x0c3\\x19\\xeeW\\xa4\\xfc\\x0b\\x85\\xf1\\xd2\\x8d\\xcaiL\\x85\\x9d\\xf1\\x19i\\x94ua6\\xca2\\x0db\\xee0\\x08Q\\xb9e&\\xeb\\xd4\\xfaJ\\xdf:zAY\\xf6\\xb8\\x88\\x9b4x!\\xe1\\xc5\\xf3\\xb9\\xb0\\x8a\\xff\\xfc\\x99\\xb2#\\xeb\\xfc\\x8a\\xb4\\x9f0\\x06\\xc5\\x10\\x99\\xc6\\xb8/;\\xc6Z\\xa6\t^\\x0d\\x82\\x0f\\xa7\\xff\\xf93\\xd0\\xb9\\\"$\\xd7\\x9b:\\x16\\x90D\\xc9\\xfb\\xc6\\xd1\\xd4x=\\xd8\\xcf\\x15o\\xdfo\\xe0AA\\xd7\\x07\\x80|\\x8a\\xb7\\x16\\xbag/\\x08)\\x9a\\xe7n8\\xb4t\\xc0\\xa1\\xaf\\x8e\\xc87Fcl\\xb3\\x87\\x06\\x1f\\xe1\\xa9\\xbc\\xd6Z\\x92\\x1aM\\xaf\\x7f\\xb8y\\x97'\\x19\\xa5\\x08\\xfd\\x18\\xb8\\x00.n\\x0f\\x82\\xbcw\\xb2\\x86\\x86\\xda\\x88\\xd1\\xbf3\\xff\\xbas\\xa3\\x84\\xbe\\xecz1t\\xeb\\x7f\\xce_\\x1ej\\x0d\\x06\\xae\\x87\\xec\\x10N\\xc4\\xa7\\xda\\xdb\\xdcO\\xe26W\\xf7\\xf2T|\\xaa\\xb5~x>d\\xc3p)>\\xd5:\\x0c>\\x13o\\x1f\\xf7\\x8d\\x18\\x9a+\\xdc>4\\xe3\\xf9|2,'\\x8b2(3\\x81\\x90\\x9b\\xe8>\\x1d0\\x1c\\x1c\\x92\\x9b@\\x91\\x9d\\xb4\\x154\\x08\\xd6o\\x89\\x93\\x85\t$\\xbaw\\x94\\x8a\\xde\\xe9|9a\\xb6Ny\\xfb\t!\\xf5\\xba\\xab1S\\xba<Q\\xc8\\xb5y\\xdc8;FM\\xad\\x93\\xfb\\x9a\\xeb)\\x89\\xf7o\t\\x02<<~S0\\xe0\\x1d\\xe4\\xa7\\xfa\\x8e\\x81\\xc0[\\xfdm\\xa7\\xb6$\\xf5\\xabl\\xdc\\xc4\\xea\\x9e+\\x83\\xcd\\xfd\\xb0\\xcf\\xde\\xa2\\xb3\\x0dj\\xdd\\xa6\\xf5\\x99\\x96\t\\x07`j^\\xcd1\\xd9\\x9f\\x05\\n\t\\xefX\\x86\\xf1\\xd6\\xa8\\x06|,X\\xc0Q.\\x8d\\xffr\\x1b\\xb6\\xd8\\x17_\\xf8p|jx\\x06Z\\xc7h\\xaf\\x0fr\\xb9X\\x84?:\\xbf\\xdc\\xaf\\x0d*\\x1c`R\\x06\\xe5\\x85\\x06\\xda\\x13\\xca\\x04\\xc6\\x84\\xb0\\xa6\\xccj\\xfa\\xcehK\\xfa\t33\\x0f\\x15^\\xa4\\x81\\x14mt\\x9a\\xf0!R\\xa1\\xdd\\x10\\xd2W\\x91\\xa0\\xbb\\xcc\\\\\\xed0\\x81\\xd8y\\x02\\xd2\\x8eu\\x83\\x91\\xbd\\xf8\\xe0\\x07\\x9a\\x07\\xde\\x05\\x06\\x99e\\xd5\\xa7\\x1b\\x87pci\\xcf\\x81\\xb1r\\x08\\xe3\\x97\\xda\\x86\\x02\\x8a\\x91e<\\xdd\\x9c1-\\x8f\\xfd\\xfe\t\\xeb\\x1e\\xc1LH\\xfa\\x06\\x97gQZ\\x1a\\x8d\\x8a\\xf9\\xc18\\x8fm\\xa1Gk:\\x04\\x87\\xa0gr\\x85\\xe6t\\x85\\x9c\\xe2\\x1a\\x02\\x87\\x9eSj\\x88E\\x08s\\xa78\\xcc\\xa2\\x88\\xe9\\\\6\\xd3\\xa1?\\x9f\\xb5g\\xb7\\x08B\\xb0\\xad\\xb0Z\\xdc.\\x03i\\xb9\\xed\\xc0r\\xc1\\xd4\\x14'\\xed\\xfe\\xe7!T\\xd3yW_\\xabm\\xcfZ\\x83#\\xcb\\xc2\\x05Ex]s\\x84@\\xc3\\xe5\\x9a\\xb2\\xe1\\x1bI\\x98\\xcasT\\xe4\\x12?\\x05\\x91+|\\xb1Sm\\x94`\\xd5\\xd7\\xaf\\x89Ou'\\x8a\\x91p\\x8b\\\"\\xd5,\\xe8blG\\x1a\\x07\\x16Y\\x14F\\xc9\\xd9\\x8dK>\\xe8\\x1a'\\x8a8\\x899\\x19\\xca\\x86\\xa3\\xe5\\xdc\\x06\\xdd %\\xad\\xb7!L\\x87\\xb6\\xa3\\x89\\x9a\\x9b\\x0e\\x1ae=\\xdb\\x8a\\x0b\\xdd\\x9a\\xdaV\\xf1\\xaa!\\xb6\\xe6\\x11f\\xcc\\xeb\\xf85\\xa9c\\x1c\\x1d\\xa9\\x00\\x83}\\xadI\\x8d\\xaa\\xcd\\xb5_3\\xd5B\\xc7\\x8f\\\\\\xd0\\xfc\\xcf\\x9f[xEk^\\xe9)\\xd7U\\xc8\\x9b\\x15\\xe9l\\xafl00\\x9e\\x85\\xf5Y\\x10\\xde\\xf1\\xc8m\\xc0\\\\v\\x0e\\xc7a<\\xbb\\xd0\\x83`)A0\\x1ee\\x14\\x06\\xe0\\xc2\\xc8\\x00h\\x9f\\x8a\\xdd\\xd7{\\xa9a\\xcf\\x8a\\xb8$Y\\x8d\\xa1\\xba5<\\xda\\x10\\x83\\xd6\\xf1\\xf0\\xac\\xed\\xf1\\xaa\\x95\\x84\\x9aG\\x98B\\x17\\xf1\\x95]\\x9b0\\xbf\\x97\\x92\\xf9\\xbd\\x18aE\\xfbE\\x9f\\x18\\xd4\\xc3\\xa2s\\xb0\\xa5O\\xf1\\xba\\xef\\xfd\\xa3\\x01\\xc6\\\"\\x8d\\xeb\\x9ad\\x13\\xd0\\x04}Yl\\xd2\\xf4\\xe6\\x8d\\x08g\\x84s\\x1e\\xe1;\\xbe\\xf0g~\\xea\\x93\\xae\\xf6\\x1a\\xf4\\xe3\\xc8:\\xddh<1\\x93\\xea]\\x99\\xaf\\x93\\x8a\\x8c\\x18D\\xc1\\xb5\\x86s\\x9f`,\\x14\\xa7\\xb1p\\xcf\\xae7\\xe4\\xda\\x117\\x86\\xe3\\xa3\\xf0\\xa1\\xe0}m\\xa5U\\xb5\\x01\\xb8\\xa8\\xdb`\\x08\\xcf\\xc1U\\xc4j&\\xf7\\xaeL\\xd6I\\x9d8kA\\xdcg\\xb9\\xf9\\xcdg\\x99T\\x7f\\xa9\\xf2\\x8c\\xcb`+\\xdd\\xfb\\xe7L\\xde\\xed\\x89i\\x16\\x84\\x92jn!/\\x9b\\xb4\\xdc`\\x1a\\x18\\xefQ\\xe3\\x1b\\x9fT\\xaf\\xb9&b\\x02W\\xba\\xd7\\xcf\\xe6s\\\\\\xb0\\xa6\\xdaZW\\xed\\x7f\\x92\\x8c\\x94q\\x9d\\x97#\\xe6\\xf5\\\\\\x92d\\xe5\\xfb\\x97\\xcd\\xd7ns\\x13\\x1fL@\\x93P \\xa9\\x18\\xdb=\\x81B\\xf7\\xf2\\x84\\xe5\\xaeu\\x1eq+x\\n~\\xdc\\x1fc\\xeb\t\\x95\\xdf\\x15C\\x1f\\xa9\\x0c\\xfd\\x9dRap#t\\xa3\\x8e}A\\xae\\xb4'\\xdb~\\xba?\\x94fm\\xf8\\xd3'{\\x03\\x86M\\xb6O\\xb7\\xcebw\\xb0\\xf7\\x9d\\xf9\\xd3\\xff`s*q\\xbfw\\x07\\xfeJz>\\x8c\\xe5o\\xe8;\\xae\\xe8k\\x97\\xbcv\\xcfF]_\\x9d\\x850\\xb8N\\xea\\xd5\\xf3\\x92\\xccIV'qZ\\xc11xI6K7s\\x82&`U\\xbc&\\xf7Y\\x9cx\\x8d+\\xb6`\\x03\\xc4z\\xdb\\x14yd@hB\\xe7\\xbe\\x81Pm\\\"p\\x9d9\\xbd&`G]XML\\x01\\xecX\\xf5\\x1e\\xb0\\x8cyTA\\x8d\\x177,\\xfc=\\x9b\\xd1\\xb6&\\x9a\\xd0g\\xc6\\xcf\\x06\\xd2\\x1b\\xcd\\x9a\\xe5\\x99h\\\"\\x88\\x01\\x8aw\\xaea\\xe0@\\x95c/\\xf2\\xb9>x\\xa7.\\xcb\\xc9\\xef\\xcc\\xbf~\\x85\\xdb\\xbdd\\xe8\\xb2,\\x1e\\xf0\\xe9]\\xc7\\x97,\\xb7\\xf2_N\\xdf\\xbe\\x11N\\xbd\\xb3\\x94\\xc4\\xe5\\xf3x\\xb6\\\"6\\xbb\\xd6**\\xd2\\xcd2\\xc9\\xaa\\xa8$\\x8bJ\\xf9\\xb0cB|\\xeb\\x9aQ\\x1eT\\xc2R\\x9b\\x17J\\x10\\x97z\\x95\\x18\\x92\\x99\\x9c\\xa0X\\xd8\\x19\\xe0<\\x9f\\xe1\\xf0X\\x14]\\x12\\x84\\xdd\\x19,TX\\xf8\\xd7C\\xeae\\xddf2\\x84;\\x01\\xd3f\\xba0\\xe0\\x97~JB\\x8c\\x9a\\xb6\\x07m\\xd0i\\n\\xeb\t\\x01N\\xd5\\xb0cI\\x81\\x931MM\\xd3X\\x13\\xf2>\\x08\\xf5\\xdf\\xad\\xf5\\xdf1\\x9cN\\x08~\\xc7\\x8f.$\\xec\\x85\\xb6~\\x9c\\xa6o\\x17A\\xd8\\x8d\\xf9n\\x06\\xb55k\\x9b\\xbc\\x11\\x1a\\xa6<\\x17qE^\\xe4\\xb3\t\\x9clCi\\xf8\\xf0\\x07IfW[\\xa1\\xe5\\xbdE\\xa1\\x82\\xfe\\x8b\\xa4\\x9aQ1$c\\xec\\xaa\\x86\\xebmj\\xf3\\xd5y\\x1d\\xcf\\xca\\\\\\xcb?\\x8b\\xb2\\xce\\xe7$\\x15\\x94\\x86W\\xefGE\\x01\\x854\\x9e\\xbb\\xe4E\\x86\\x8eos\\xdc\\xac]b\\xf4mv\\xd5\\x1b&\\xdb\\xb8\\x1d\\x8b\\xf2\\xa5\\xee\\xc7\\xa2\\xb8\\xba!\\x8b\\\"\\xcf\\x8a\\x9e\\x07\\x87\\xc9\\x16\\xb4[\\x98\\xeb\\xa0[\\x8fc\\x1c:D\\x91#\\xb48v\\x882\\xac\\xf2\\xe6\\x8e\\x1e\\xe6f\\xb4>\\x1b\\xa283D\\x9d\\x0f\\x9c}8D1(\\xd2\\xfd\\x00&0\\xeb%\\x13\\xb3\\x9d\\xe6\\xa0\\x90^\\xc2N\\x083\\x8b9\\x94pl1\\x1cd\\x8bE\\x92\\xa2{W\\xff~\\xde\\xc4\\x8fT(\\x8c\\xbe\\xee\\xaa\\x1d\\xb0\\x0b3\\x17\\x19R\\xdc\\xb1]\\xd2\\xa3E\\xfa\\xcak9\\xc66}\\xd1\\xd7^\\xf2\\xa6U\\xc2\\xa5\\xaf\\x89\\xf1\\xe3\\x9dy\\xf9\\x0b^\\xdb\\x91\\x97?g\\xebr\\x99\\x14B\\x97\\x87<\\xa7\\xbe\\xf25\\x8b\\xe7U\\xd7\\x1a\\x19\\x1d\\xb8\\xc1\\x13\\x89\\xf8Ibd\\xfai\\xad\\x13tc\\x0e\\xb1E\\xbc\\xd5\\xbe\\xa6\\xffl\\x04\\x9d\\x0b1fN\\xed\\x97\\x18\\x91\\xd1\\xcck\\x8c\\xe03\\x1cy\\x8c\\xdb\\xc0?\\xe1t\\xbf\\x9b\\xfa\\xbd\\xcfZn8\\xf7\\xa8\\xb5\\xb4\\xe2\\xd2\\xfc\\xbe\\xe6\\x15K\\xbbY\\x19Rnf\\xfe\\xd6\\xba\\x83\\x83\\xbd\\xad\\x93\\xbb?\\xd9Z\\xfe\\xdfZ\\xfa\\x1f\\x18\\xabU\\xf6W\\xdf\\xdc\\xb9\\x10a\\xe2\\xc8\\x0d\\xfaOy\\xa2\\x9b\\xd9\\x03TAE\\xb3\\xb8\\xa87%9\\xad\\xe3\\xd9\\xe5\\x872\\x9e\\x1186\\xbd\\xe1\\x04\\x9d\\xfe\\x1b\\xcd\\xf2\\xac\\xaa\\xcb\\xcd\\x0c\\xdd\\xdf'\\xecYEkR^C\\xfan\\x06\\xec\\x99\\xe5\\xaaA\\x1fx+k\\x05\\xde*Y\\xe0\\xad\\x92\\x05\\xde*ww\\x03\\xc8\\xa6e;\\xf0Vi\\xe0\\xacqpkRU\\xf1\\x92`\\xae\\xc6\\xbd\\xb3\\x90\\x99\\xd0\\xd4\\xad\\x93J\\xa7l7\\x11\\x8c\\xac\\xb9\\x8bW\\x9dUC\\xf5\\x05\\xcf\\xedC\\x8f`\\xf5\\xa9\\x02:\\xfai\\xd8q\\xa8\\x1a\\xad\\xf5\\xfb\\xed\\xf12\\xa9^\\x96\\x84\\xa47o\\xe25\\xb1\\xe7w\\x90\\x86\\xe4S\\xd2\\xf2\\xc7\\xd1\\xae\\x1d;\\xc4\\xa5\\x0b\\x9d\\x91\\x80\\x97Q\\x92\\xcd\\xc9\\xa7\\xb7\\x0b\\xca\\xa5\\xfc\t\\xee\\xefS\\xda\\x9d\\xcb\\x87Y\\xf30q\\x0d=)WZ4BX#}$\\xb1\\x12e\\xf4i\\xf2\\x1a\\xb9K\\x17M?\\xc7:\\xb80\t\\x1dX\\xe5\\x85\\xa0f5\\x0b\\xc1\\x13\\xe7\\x05\\xfe\\x10\\xf9\\xf8^\\xb4\\xbf\\x98\\x89\\x90\\xb4\\xd5\\x83j\\xb6\\\"\\xeb\\xb8\\xfb\\xb4\\xd5\\x88\\xf2\\xbc\\xdd\\x95\\xda\\x0c\\xef\\xe8\\x946\\xa7\\x1f{\\x82cg\\xfd= \\x9f\\xe2u\\x91\\x12\\xefl\\x0c\\xc6v\\xc8\\xf7\\xc3/ \\xc3\\xadW\\xff\\x96*X$G\\xc6\\xedp\\x07\\n\\xda\\xfe6B\\xf3\\x86~03\\n\\x87\\x8cG\\xf9\\xc3`\\xef\\x8c\\x9c\\xed \\xc5T\\xef3r%\\x91>\\xb9F\\xab\\x8f~'\\x1d!TP\\xdd~E\\xb1g\\x90r\\x97\\xa4\\xca\\xd3+\\xe2w\\xb5\\x82\\x96}[G\\xf3\\xa4\\x8a/R\\xc6]-\\xe2\\x19\\xc1\\x00Q\\xdd1\\x84\\x18]\\xfb\\x92<+\\x92\\xeaC\\xbc\\x94\\xd9C\\xfd:\\xd0G)\\x1e\\xa2A\\xb34!\\x99\\\\\\xc1Nt\\xb7\\xdfL\\xcbxh\\xd62\\xfah\\xed\\xffm\\x80\\x91\\xe4\\x1e\\x05\\xba\\x8a\\x82\\xa1\\xd4\\xa7\\xf3\\xa9\\xc4[\\xad\\xb7A\\x8a\\xbb\\xf9;\\x03SY\\xfa\\xa9!\\x8cb\\xe6\\xef?2\\x06Q\\\\\\x0cEP\\xd4\\x86\\xb0[17\\xf9'\\x86\\x00\\x8a\\x99\\xff\\xad\\x8e#^s\\xbe\\xb7\\x0d\\xd8\\x1ce\\x0d48\\x94\\x82A\\xae\\x06CL\\xe5\\x8f\\xe8\\\"\\xc9\\xe6~\\xb6I\\xd3\\x90\\x7f\\x16\\xf0X\\x1f\\x14\\x9f1m\\xad\\xd2\\x04\\x7f|\\xba\\xb9\\xa8KB\\xdf\\xce\\xd5\\xb7\\xe4\\x13\\x99mj\\xb4\\xd0\\x11\\x7f\\xd3\\xc7\\x9d\\x18\\x8fi\\xebA\\xabB\\x13\\xf01\\xed=\\xa4\\x15\\xdbJd\\xe5g\\xc82\\x85\\xb0\\xb3\\xe1\\x87M\\x92\\xf2f\\xae\\xa2w\\xcf\\xde?{}\\xf2\\xe1\\xe4\\xfd\\xf9\\x0f?\\xbd\\xfa\\xf1\\xc5\\xc9\\xfbS\\xd3f\\x82#Xi_\\xd0\\x0f.h\\x9b\\xef\\x99\\xd4\\x84\\xed\\xaa\\x0f\\x10r$-X\\x9f\\xfd\\xdd\\x90\\x17\\xaf\\xe6\\x13Xc\\xe2\\xfb\\xf6\\x86\\xc0q+<Z\\xff[\\xba\\\"\\x13e\\x1d{\\x158\\xa0G\\xdc\\xf1\\\"\\xc1B\\x9e\\xf2\\x05k\\xb4\\xf2\\x03e\\xf9\\xd0\\xbc2qW\\xa12\\xb6\\xda\\xa8\\xa0\\x009\t\\xach\\x16\\x82\\x01\\x03-\\xe21\\x9e\\x10\\xeb\\x85O\\xbc\\xa9Wy\\x99\\xfc\\x93\\xccy\\xc3\\xe2\\x01.\\xd9\\x80=\\xa4\\xb9s\\xae\\xf0\\xfd\\xa9L'\\xba\\x98\\x99\\xd8\\x0b=e\\x8e\\x9b?'\\xfc@\\xd3\\xb6\\x89\\xa6\\xedNw\\xfc|[M\\xec\\xeaR!\\x8a\\x98\\xef(\\xf8\\\"\\xcb\\xbdz\\x17\\xeb\\xc7n\\n\\xf9\\xa4\\xcd\\xd5\\xfa\\x8aj\\xb62N\\xda%0\\xa8%\\xf8\\xf1\\xda}A\\x8fI\\xa4Z\\x03\\x8di\\x14\\x17\\xe2\\xb0\\xee\\xbe\\x11\\xcd\\xe9\\x17\\xb2{\\xaa\\xbbxB\\x90H$\\xfb>-\\xc8\\xac\\xd1\\xe2\\xf1\\xffY\\xd8\\x17\\xfe\\x00\\x9d\\xfc\\x98 \\xc5\\xfe4\\x99\\x8e\\xdao\t[\\x14\\xa5\\xbd\\xcbm\\x17o*n\\x0d \\x84`\\x1d(.\\xe8y4\\x96fe/l\\xf4R\\xc8\\xc3xt\\xef{\\x83\\xbe\\xbb\\x94\\x08WRi\\xcf\\x02\\x88\\xd7\\x06\\xed/\\x89Vy\\x85\\xbe\\xba>\\xff\\xf3\\x082\\xfc#@ 3I\\x80\\xbf\\x17\\xbf\\x8e`\\xca\\xc5\\xdcY\\x9e\\xca\\xe8(\\xde\\x84\\x8a\\x13^p\\x86_^\\xc4\\x15y\\x17\\xd7+\\xfe\\xa9\\xfcy\\x04T\\xba\\xb3/\\x80\\xaa\\x03\\xc9\\xc7\\n\\xca\\x16e\\xd3\\xde\\x80\\xd01\\xfc\\xe9\\xfe\\x17\\x98\\xb8l\\xadW{\\xb2\\xf7h\\xdbO\\x0f\\x1fn\\xad\\x1f{\\xb27`\t\\xf4\\xef%\\x9a\\xa9\\xbf\\xee\\x9c\\x1bG\\x9bdv\\x01\\x89\\xb8I\t\\xd5\\xeb\\xb8\\x18\\x08.\\x9e\\xc3@\\x84\\xf0d\\xc8\\x1dX\\x1a\\x0chu\\xbe\\x9b![\\x83j\\xc8W8\\x15\\xedj\\x87$\\x82\\xa1\\x1fj\\x9d\\x85\\x17C\\x9e\\xc42C\\xa86h\\xb4\\xe0\\xe5\\x0f\\xf6\\x86\\xdc\\x81\\x87Y2E\\x14\\xbd\\xf6I@E\\xc1\\x02\\x8d\\xb6\\xad\\xaa\\x1a\\x11n\\xfdP+5\\x89x\\xeb\\xda\\x81\\x8b8\\xda\\x87\\xda\\xb7\\\"\\x8e\\xf6Cm\\xc3\\\"\\x8e\\xf6C\\xed2\to\\xf0\\x87Z\\xafm\\xe1\\x0e\\xfeP\\xeb\\x98\\xed\\x94\\x08A\\xb9\\x00\\x1e<\\x80;\\xf9\\xb5\\x98\\x98K\\x82^.\\x12\\xf6b\\x98\\xcdd,\\x92g\\xf1'\\x99\\x93\\x8b\\xcd\\xf2GrE(\\xe7\\x98d\\x8b\\xdcR_\\xde\\xfaO-\\xael\\xac\\xe2\\x9f\\x93\\xaa\\xce\\xcb\\x1b\\xb3\\xd5\\x9a(\\x8cy\\xb07+|s\\x1d\\xaa\\x16\\xcc:|.Y:\\xdb\\x07U\\x1dSi\\xc46\\xd4\\xc2\\xb5\\xbd\\xc6\\x0c\\xc3\\xd2\\\"\\xaf\\xf8\\xa1$d\\x82\\x9b\\xea\\xdc,4\\xa9\\xa5Z\\xe5\\xd7/\\xe8\\x02\\x9a31\\x89\\x12\\xa7\\xa93\\x1c\\xd8\\xd2Q2M\\xa5\tFY-h\\x91&\\x17\\xafI\\xbd\\xca\\xe7\\xd5\\xa4\\x8b\\xab\\x9dd0\\x14u\\x035\\x10\\xbcu\\xdc\\x1d\\xc6\\\\\\x93RJ\\x14\\xca\\xc1\\x04\\xfc\\x06eI$\\xb7w\\xbe$5S\\x16\\xf0\\xceE\\x05n\\xf3\\xad\\xd6\\xe3\\x8f\\xfa\\xd5Wq\\xf5~\\x93\\xc9\\xaa\\xecg\\xbf\\xdau\\x19\\x17\\x05\\x99\\xbfk\\xce&\\xfaT\\x98\\xfa\\xac\\xe3\\xc2\\x97\\xd5X\\x1d\\xa5\\x89@\\x84\\xe4\\x91\\xc0\\x89\\x1a\\x13j\\xd1\\x01\\xc7>fD\\xd4T\\x8c\\xe7s\\x7fz\\x166\\x1cp`\\xf9\\x80\\xe3\\\\\\xf3\\x11\\x7f \\xbf\\xdb\\x14\\xf3\\xb8&\\x1c\\xec\\xbe\\xda\\x94\\xde\\xd2`\\xd0\\x11\\x87\\\"\\xc1\\xbcA\\x02\\x12\\xc2\\xd4L\\xbd.\\xc9\\xcd\\x04<\\xa4L\\x03h\\xc7Y\\x03\\xbb\\xee@\\x14\\xe4\\xef\\xe94\\x1a\\x9a\\xc7\\x8c\\xf5m\\x1f\\x82z\\x9bV\\x87Z-1\\xbbBc\\x17j\\x19\\xaa\\x8c\\x8f!\\x83\\xfb\\xb0\\x0f\\x13\\xd8\\x0bBd?\\xf6\\x9fB\\x0e\\xdfC\\xf6\\x14\\xf2\\xdd\\xdd\\x00\\xcai\\x8e73\\xadK\\xb6\\xdc\\xc1%\\x17\\xdd\\xbfy\\x94\\x95 J\\xf3e\\x13\\x86Jc\\xbd\\xa1\\x16\\xb39\\x8b\\xc1Fd\\xe8\\x90a\\xcbtE\\xca\\x8b\\xbc\\x1a\\x8a\\x04\\xb1\\xd5B\\xc9v\\x99\\xf3_{\\xd9l\\x0d\\xc0\\xbf\\xcf\\x82M\\xbd)\\x06\\xce\\x84]\\xf0\\xce(C\\x7ff\\x8b\\xca&\\xcaWX\\xcb\\x86*\\x8dYNKx\\x05P\\x04dAE\\\\lk\\xd4\\x827\\xb9\\x83*\\x13Qr\\x83\\x08\\xd0-B\\xfa\\x99*\\xf4\\x99\\x9ex\\x98F\\xb8d\\xd70h\\xf4\\xde\\xab\\x10\\xc0\\x04t\\x04\\xda\\xc7\\xb0m9\\xbf\\xc9Qk0\\xe9G\\xc4\\xab\\xca\\xad\\xdcu\\xb7\\\\m\\x93P[\\x14>\\xd1\\x9d^\\x889\\xcc\\xc5G\\xaeHy3\\xce\\xb1Y-R\\x86<\\xe2I\\x98\\x9d\\xbe4$\\x1bkU\\xb1o*\\xde\\xb7T\\xd4tL-K?\\x0f\\xc1\\x988\\xb1[0\\x16D\\x08\\xb3\\x10\\x16!\\x14\\xe8\\x14\\xbf\\na\\x8d\\xee\\xab7\\xf6\\xb1\\x80n<m\\xc3M\\xe7\\xe8\\xed\\xa03\\xe0,\\x85\\x01g9\\xca\\x80S\\x94\\xb1\\x86\\x9c\\xa2\\xdc(X\\xc7 J\\xc13\\xb6wQ06\\x83\\n\\xd8\\x10.B8\\x0f\\xe1:\\x84\\x93\\x10>\\x85p\\x1a\\xc2\\xf3\\x10.Cx\\x16\\xc2\\xdb\\x10\\xde\\xb9A\\xbe[,+\\x11o;~\\xd0\\xadL,V&\\xdeje\\xbae\\xdb\\x95\\xea\\x16\\xcch\\xdd\\xa7A\\xf9\\xa8\\x00\\x16C%\\x96\\xf9r\\xb6[\\xa4nq\\x0fk1T\\xec!*l\\x85\\xa5b\\xb8$7x\\xd3\\xbf\\x98.T#\\x9a;\\x07\\xde\\xc3\\xff,\\xe0\\xf1\\x9d\\xd7L\\x0f\\xe3D\\xe3\\xd9\\xe9\\xa3>\\xf9\\x92\\xdc \\x0d1%.u-,\\xe2\\xff\\x97o\\x93f\\xa4\\x8f\\xbfl@\\xe0\\x96\\x11\\xc4V\\\\\\x93H\\xd9\\n\\x9a\\x89)\\x98\\x1b\\xa2\\xe2m1\\x9d\\x9f\\x85\\xa8G[H\\xab+\\xd5l*\\x08Q\\x8d\\xa6>\\xc2\\x93\\x1dC\\xa9\\xcc\\xf1\\xcfu\\x88\\x87B\\xa2\\x0dD1\\x9b\\xe6\\xd17\\xdf\\x94dq\\xc6\\xb2\\x95\\xee\\xec\\x85\\xa8=\\xdb\\xd9gf\\xbf\\\"\\xed\\x91\\xa4\\x99\\xfb\\x0fC\\xb4\\x0d\\xee\\xb8\\xbe\\xd0\\x9fU\\xf3\\xd3\\x98 \\xd3\\xb58\\xa7C\\xb2\\x15J\\x1c0\\xce\\xc5'8\\x82\\x13\\xc4\\x1d?\\x08\\xa2y\\x9e91r.Eb\\xe4\\xe1\\x7f\\x18m\\xc0\\xe8&p\\x04\\x9fD\\x10\\xf9\\xe7p\\x04\\xf9\\xf4\\xf4,\\xc4\\xf8\\x95\\x0b!\\xf7\\x9c\\x06!\\x86\\xac\\xd4\\x9c^\\xcf\\x83\\x10\\xdeb\\x96\\x17\\xc4\\xb2\\x10\\x06\\xd3\\xfa\\x8e)\\xf1\\xd8\\x84H\\xb6\\xf2\\xaf\\x04\\xf5\\x9dg\\xff\\x0d&K\\x91^W:\\xb2\\xf6\\x16\\xe5\\xb6\\xd9\\xf4\\xed\\x19\\xd2\\xb4\\x80Y\\xb8\\xa5d\\x19\\xd7\\xe4\\xff$$\\x9d\\xfb\\xa5\\xcf\\xd8\\xd6\\\"\\x08\\xc1\\xab\\xf7\\xbc\\x10\\x0e\\x1e\\xdd\\x05\\xcdr\\xc9\\x81e+\\x18x\\x9aJ{\\xa7,d\\x0c=\\x83\\xef\\x1c\\x1f\\x0e-)\\xb8\\\\\\xcb\\xbf\\n>P\\xa0\\xbd\\xc3\\xcc\\x06\\x19\\x8b\\xd0\\x96a$\\xbbw\\xff\\x0d8K\\xe9r\\x80\\x87\\xfb\\n\\x0b\\xf8\\x1c%\\xbcK\\xcc\\xddZ\\xdc\\xc5\\xfe8tt\\x15\\x1c*\\x82Q\\x89\\x9b\\xf4\\x8b_62\\xb8CV\\xf0\\xf0Ny\\\\\\xc7\\xcc\\xaaC\\xe5\\xce&v\\x07\\x94M\\xb2\\x91\\x87\\x98\\xb3\\x153\\x0b\\xc6\\\"c\\xde\\xc3\\x80\\xf3\\x9e{\\x8c\\xf7\\x8c\\xadi\\x02m\\x85\\xc9\\x1cw \\x9b\\xcbq?Ty\\xe1\\x87\\xfb!\\xec\\\\P2s\\x12\\xf1]\\xa4\\xfc\\xddM\\xc05\\xb68\\xa5Hs)\\x9426c>\\x0ca\\xe7\\xfc\\xce\\x89\\xe2\\xc3;\\xd8\\x81\\xf0/D\\x14Y\\xde\\xbd\\xeb/\\x9b\\x14[\\xc1;\\xd86\\x92D/\\x92,\\xa9V\\xfe\\xc3\\xc3;\\xc1-\\x87D\\x89\\xb6\\xd2\\x1b\\xd9\\xde\\x9d\\x8c\\xec\\xf1\\x97\\x8dl\\x1b?sS\\x913t\\xf4?7\\x95\\xedp\\xf26\\x84\\xd8\\x9e\\x98\\xd0V\\xa6Tj\\xa7$\\x97\\x92\\xaf\\x87\\x8f\\x1dB\\x1a\\x9b\\xca\\x94\\xd2\\xbc\\x10\\xa9\\xc8\\xc3\\xef\\xdc\\xee\\x0e\\xba\\xc5\\x10\\x15r\\xa8\\xdc\\xb2\\xc4\\xf1\\x9d\\x8b\\x83\\x9b D\\x9b+\\x0c\\xc9\\xcb\\xcf\\x8d\\x82\\xeb.\\xe6\\x8a\\xeeBj\\xe2\\x1f\\x852f\\xac\\xa2\\xba\\xc8uw\\xf8\\xdd8mc\\xf5\\x19\\x88\\x81[`1\\xa5\\xd5\\x18\\x84x\\x8d\\x1e\\x02w\\xa1\\xae(%\\x97\\xb4\\xa5zb;\\x9a<\\x1e\\xdf\\xf9N[\\xc2\\x11\\xac\\x85\\xc6\\xa1\\xec\\x88m7\\xfeR\\xbcZ\\xf28\\xa3K)\\xc1\\xed\\xefo\\xb3J\\xfb[p\\xa4\\x02\\xdd$l\\xb7\\xd0En\\xc1\\x97\\xb1\\xf1n\\xc1`\\xcaq\\x1el\\xc1Pn=\\xd0-N>\\xb9W\\xf7\\x1fQ\\xe8\\xb2\\xd4\\xd3\\x9cA|\\x14\\xf0\\xfd\\xbd\\xc7\\xf6w9\\x9a?d\\x12\\xfa\\x16\\xfc\\xa0\\x1c\\xd6\\x81JO\\x0e(\\xff\\xb7\\xa0<\\xdfJ\\xe1\\xffV[\\xf2\\x7f\\xce\\x99\\xc4\\xbb\\x85%3\\x16c\\xa2\\xfc\\xdd\\xd6\\xf7}\\xe5\\x97j\\x8b~-Z\\xc1\\xf8\\xb3\\xf9\\xb8An\\xad\\xa0\\x91\\xee\\x8c\\x9c\\xcb9\\x18\\xcb\\x7f9\\xe73\\xef\\x96^\\xcfc\\xf9+\\xd6\\xf3\\xc8\\x93\\xe8K\\xf8'9\\xe2\\x91\\xfc\\x92\\x1b\\x0e\\xdc\\x86P\\x8e\\xe7\\x87\\xa6\\x8fB$(t\\xf7\\x1e\\x8ca\\x7f\\xa6\\x07\\xc8\\xee\\xd0Mu\\xe0\\xc8\\xee8\\xb07\\x16k\\x8a[\\x9f\\x04}\\x03\\xe2\\x9c\\x99\\x1d\\x96\\x81\\xcd\\x8a\\x18\\xa4=\\xe8\\x9bxM&\\xc0\\xa3.|\\xfe<\\x14~Q\\x94V\\xe8Y\\x95!\\x92\\x8f\\xfd\\xdc2\\xfa\\xd1Q\\x8d\\xecVN\\x94(\\x8d\\xb6r\\xb2\\xd1@\\xbbw\\x9b(\\x8aE\\xe4\\xaam\\x16\\xdb1\\x1eU\\xbc?\\x9c\\xcc\\n\\xa4\\xf7\\xd6\\x92\\xd4\\x82\\xd3\\xac^\\xe6%k\\xce\\xaf\\xd5\\x8c\\xae\\xbf\\x0d\\xd0U\\x83\\xec;\\x84\\xbd4\\xec\\xecX|\\xb72\\xd8J\\xc9K`\\xa1\\x0c\\xb9\\xd2\\xfb\\xcc-u\\xa7Z$\\xe8q\\xe8\\x16\\xe0~\\x05\\xe8.\t\\xc7hno?\\x02\\xb8\\xd6\\xf9\\xa9Q\\x13\\\"\\xd9\\x11\\xa5\\x06>\\xb1\\x1c\\x1f\\xaa\\xd7n\\xcb\\x1f`Z\\xf3\\xfc3_\\x11\\x14\\xef7\\xd9\\xf3|\\x93\\x0de\\xb0\\x1a\\x0d\\x0buB]\\x98\\xfbDl\\xb0\\xaf8)\\xde\\xd7\\x87d\\xc8 \\x7f\\xf4\\xb4\\xf4K\\xdc\\xcc\\xcbm\\x951\\xe2\\xcf\\xb4V\\xedeX\\xf2\\xaa\\xaf\\x08\\x0fA\\xe7^es\\xf2\\xe9W\\x03\\xc9\\x87\\xa4\\xc0\\xe4\\xcbj\\xe7N0\\xf2\\xb2\\xcd\\xfa\\x82\\x94\\x1e\\xec4\\xbe\\xd9p\\x0c\\xf7\\xf7\\xc1\\x94&\\x0d\\xee\\x04Lt\\xb7\\xde%t$\\xbdkX\\x83\\xbb\\x1f=w@\\xd8\\x96\\xae9\\xd8\\xc8\\xb6\\xcc\\x92\\xc7\\x916_C\\xd4\\xb2\\xb3\\xb6\\xbf\\x87\\xf2\\x9c\\xa7TG\\x1f\\x8c\\xa1x\\x91_\\x08+v\\x80}E(\\x0d\\x03\\xa5a\\xf1\\xda\\xe9;\\xe8f\\xe1y&F\\x1e\\xach\\x8d\\xd7\\x0b\\xec\\x1f@\\xc6\\xbd\\xcd\\x19Dm\\x8bE\\x0bf\\xd8\\x19NY\\xa1\\x16\\xb4\\x9b\\xd0\\x1aqKV\\x025\\x82\\x19sK\\xf0\\xbb+\\x00\\xde\\xff\\xcck\\x88!\\xcb\\xb3\\xfb,\\x0f0\\xf3\\x1b\\xf3Bp\\x19-\\xf0!d\\x91\\xf4\\xf1b\\xb1\\x83\\x1b?.1\\xf5\\xb0\\xc5Ys\\x1e\\xcb'2=\\x91\\xf0\\xd5\\xec\\xb19\\xcd\\xf7l\\\"\\xad\\xf7\\x1fV$s\\x82+h\\x8cM\\xd5\\\\\\x1a\\x1a\\x88U\\xd2\\xcd\\xca'\\\\\\xed&\\x86\\xbb]\\x7f\\xe2\\x14\\xd0\\xf4\\xc5\\x96E\\xb2\\xc3\\xba\\xcc\\x15\\xdd\\xe2\\x96\\x93D-\\xfd\\x8c\\xc7]\\xfc\\xb463,\\xb0~\\x0d\\x8e\\xbc\\x03\\x991D\\xc3\\x06\\x97v\\xe6\\xebvL\\x16\\xb1\\xd2hO\\xd1qJP^!\\x19\\xd5\\x19\\xe3\\x88Z\\\\\\xf5\\xae\\xc8\\xb4\\xbf\\xdc6xdA$q\\xba+\\xfesM\\xe2)\\xe6BW\\xc75\\xc1\\xf0\\xbev\\x14p\\x0c\\x1ebY\\xe1\\xe1\\x11\\xb3\\xc0\\x14\\xd8\\xaet\\x81mvp3dJ\\xa7\\xbf\\x02\\xb2\\xb0\\\\\\xc6\\xdb\\npV\\x84iq[]:\\xd5\\xc4\\x07\\xb4\\x81\\xe8{\\xd8\\x13!n8U\\xfeP&d\\x0eu\\xce\\xf3;C\\xdc\\xf6\\n\\x86z\\x15\\xd7\\x90T\\xd9\\x1fj\\xa8W\\xa4$;\\x9e\\x0c\\xb7\\xd9\\x1dFU\\xa4\t\\x95\\x18C\\xd8\\xff\\n\\x00\\xee\\x11\\xdf\\xaf\\x05^'>\\xb5\\xd9c\\xfc\\xafN\\x14\\x19''!\\x11eN\\xb7M]\\xb6\\x154S\\xcd\\xac\\x95m\\xfb\\x070\\xbe\\x81\\x06\\x8d\\xd9\\xfe\\xe9x\\xbb\\xda\\xdc(\\x03~\\x890\\x0e \\xee\\xfdkB\\xa5\\xaa\\xe5k\\x1c\\x07\\xaa\\xd2h\\x0c\\xee90\\x90\\x8d\\x97\\x18\\xa0\\xe6p/\\xd4\\x0bBH\\xe1\\x04\\x15h\\xa8\\x1c\\x93'\\x05\\x95k\\x9eW\\xb8\\x1f-\\x01\\xd8\\xbf\\x00\\x1c\\xcf7eI\\xb2\\xad\\xa0\\xe2\\x08\\x11!w\\xe8\\xb4u\\xfc\\x15\\x1f\\x04\\x7f\\xfa\\x95tG\\xfd\\xfeG\\xccu\\x14\\xf5\\x89\\xf4\\x92\\xbb\\x95\\xb6\\x9b\\x00\\xe6\\xd7\\xb0\\xfbU\\xe8q\\x17\\xf4#\\x00b\\x83\\x87:\\x97\\x99\\xda\\xc7W\\x99\\x05')o\\x17\\x1fn\\x8aQ:\\x80\\x11\\x1b[\\xd8<|\\xa5\\x8d\\xf8cr1b\\xe0\\x8e\\x83F\\xf07a+\\xee~\\xe0\\xe7K\\xf25t\\x8f\\x0d\\xcb\\x8a\\xc9\\xf1\\xdb\\xdc\\xeaW\\x80\\xbf\\x12\\x14\\xe3+\\xcc\\x86m\\x82&\\xfc\t\\x9d\\xd4\\x90\\xb8\\xb4\\xf54\\xaa\\xadf\\xe1\\xbe\\x07z\\x13\\xa9\\xe8D\\xbe\\xce\\xd9\\xc4\\x83\\x8f\\x8c\\x99\\xc8\\x98Y\\xf44\\xe8\\xc6\\xc3\\x08\\xfe\\x04>;\\xd1\\xbf\\xc6,gi\\x9e\\x8d\\xa2X\\x8e\\x93\\xfc\\xcb\\xe9\\xdb7<@\\x1feMsE6\\xfd\\x1a\\xe7\\xab\\x88\\x8d5b&\\xb6\\x89H\\x97lb\\x9f4-\\x84\t\\xce-\\x81W\\x93\\xcc\\x97k.\\xda\\xac(\ta\\xfbH\\x14\\xd09\\xfe\\xedW\\xc6\\x99sM\\x19\\xc0\\xba\\xb9\\xcf\\xb5\\x19\\xc9\\xa0R\\xcf\\xc9\\x11_D\\x8ck:h\\xf1\\xec\\x0e\\xc2\\x06\\xed+\\x97\\xda\\xa8\\xdc1\\xb8v\\xb7\\x88}i\\x8a\\xb0\\xa6+}\\xe9\\xe4\\xeb\\xf6f\\x87\\x85\\x88\\x96\\xed6\\n5\\xb6+\\x9ekN_\\x89\\x00b\\xf8\\x1d\\xfba\\xfd\\xce=\\xca\\x04\\x1b\\x8d\\xaa\\x8a\\xf5\\x13\\x11\\x0eI\\xa0I\\xa3\\x9a\\x0dB\\xf5\\x9e\\x99\\x07\\xb3M\\xbed\\x131]0\\xbbV@\\x9a\\x8c\\x11C\\xd5\\xdfx\\xd3\\x16\\xb6\\x1f\\xb2\\x0c\\x1e~\\xef\\x19Rl\\xca8k\\xea\\xff\t\\xf6\\xf7\\xb4\\xd7\\xe5\\xd6\\x98\\xbc\\xa2\\xb0\\xf5\\xcb\\\\\\x17O,\\x9cT\\x99r?P\\x99\\xf4\\xc3\\xf7\\xfeF\\xfepE\\xa0$\\xf1lE\\xe6\\x10\\xc3*.\\xe7\\x90&\\xeb\\xa4\\x86|A\\xc7\\xcbMT\\xa0\\xdcd\\x95g\\xa3V\\x0eD\\xa2DW\\xb9>\\x87.5\\x93zK\\x03\\x97}&\\x92\\x08i\\x9b\\x19oy\\x00\\xe3\\xac\\x0f\\xc0\\x01\\x00\\x00\\xd0_\\xfe8M\\xfd\\xcd\\x97\\x8e\\x0fi\\xa0\\x88\\x97\\x13\\x82\\x0cmfm\\xe56p\\xcdN\\xd0-\\xdb\\x91\\xb4/\\xd8\\xa9\\xbc\\xc3Q\\x03\\xcd:Xv\\x04\\xa5}\\x89\\xc4\\xb9\\x9aE\\x1a]\\x85o\t\\xab'J\\x8e\\x0dtu-p\\x1f\\x1cla\\xc7]\\xa6\\x95\\xaa\\xd9\\x97\\x0bPD\\x11\\x87\\xc7P&_]\\x89\\x99\\xf1\\xfe\\xa8o6\\x8e\\xd1\\xa3\\xd4\\xe2\\x0e\\x06Qdh\\xb2\\x8a\\x99 w\\\\\\x08J\\xbf\\x0e\\xd9\\xaa\\xfe\\x98\\\\\\xf8A\\x10<\\x85\\x1d\\x9fB\\xc0\\xaf0\\xa9A\\xcb\\x8c\\xff)\\x87M\\x00\\xc4\\xaf\\xf8\\xe5\\x87\\xf3`\\xc6\\xdft\\x89\\x12s\\xcbi\\n0;\\xc5\\x11\\xe5\\x16\\x16I\\x16\\xa7\\xe9X\\x80\\x8d\\x071-;\t%\\xd7\\x85bL]Hc\\xeaQ\\x8dm;l\\x10\\xeer\\x01\\xb70\\xde\\x8c\\xfa\\xdc\\xcd\\x86\\x15\\x9ck\\xde\\xb2;p\\xd2G0\\xeb\\xe7\\x12Q\\xac\\xe2\\xb0(\\xed+Q\\x8ck\\xeeO-\\x91A\\x9d\\x8cQEa'\\xfe\\x04\\xfaY\\xfeu\\xe56p\\xb1\\xa4\\x1d\\xb9\\xceRTj\\x99K\\x95cf\\xd12!2%\\xec\\xee\\x16\\x97\\xf8i\\xd6\\x1a\\xd2,\\xc0\\xf1`\\xbc\\x1dxo\\x90\\x8d1&}\\xef\\xd5\\xad\\xeel:1J\\x07%YT\\x13X\\x0b4\\xd1\\xd3sL\\xa1<\\x81\\xe5p\\xad&\\x05\\xd7\\x04n,Ue\\x04\\x9c\t\\\\\\x88\\xaa\\xfd\\xa9\\xb4O\t5\\x0c\\xf9u;By\\x93ay\\\\<\\xf8\\xc3\\x87\\x03\\xf1\\xe0\\x87?=x\\xfc\\xdd\\xb6\\x9f>\\xde:\\xa5\\xe4\\xc1\\xf6\\x91\\xef\\xf7\\xf7\\xb6\\xfdt\\xff\\xbb\\xed\\x13\\x04\\xec\\x7fIF\\xca\\xd6+\\xa9\\x94\\xf9\\x8d\\xe2\\xed\\xeb\\x07\\x93\\x1b\\x95\\x98,2LT\\x93\\x8aY5\\xe9\\x07\\x80\\xb5jq\\x80Q\\x99\\xecm\\xebV\\x9d\\xe5Z\\x8a\\xa1$i\\\\'W\\x04~z\\xffc\\x08\\xd7I\\xbd\\xca75\\xac\\xe2\\xab$[B\\x0c\\\"\\x13E\\x84Y\\xbe'\\xf0\\x07\\x19\\xf4\\xf4\\x0f\\xf2\\x1d\\x7fZ\\xe3S].Bh\\xa0\\xf8\\xa9'\\x97\\xd6Z\\xf5w\\x9f2\\x89ep\\x82^b\\x84\\x9e \\x9f\\x0c \\xcf\\xf3M:\\x87,\\xaf%DJ\\xb2 %\\xc9f\\x04.\\xc8,\\xa6X\\x93/&\\x80\\xb3\\x16\\xb92\\x11\\xc3:c6\\x0d$\\x1e\\xc4)\\x1f!\\xe9\\x05h\\xa3P\\xfb\\xde\\xef=\\xb7V7\\xc6\\xe9\t\\x9b\\xbfwS\\xa2\\x89o\\x8b\\xda\\x084\\xe09\\xd5\\x98\\x9eeA0\\xc0\\xb1\t\\xab\\x80\\x14\\x99\\x90\\xe1U\\xa6\\x0c\\xc2E\\xc3 ,{\\x8b>\\xec\\xbfr~\\xce\\x15\\xabz\\x1eA\\x97\\x91\\xc6\\xca\\x10\\xf3\\x91\\xa9C\\xe1v\\x81\\xee\\xb8W\\xf9\\xa4+\\xce\\xda\\xfaKM\\xf8\\xed\\xb6\\xd0\\x95\\xbe\\x03!B\\xeaWY\\x88\\xcep\\x0c\\xbae\\xae\\x038\\x86\\x1a&\\xd0_\\x96:\\x80\t\\xf8\\xb4U8\\x82W,G\\xf8_N\\xdf\\xbe\\xe9\\xcf\\xdb\\xc8O\\xf2\\xcey\\x1b\\xb5>U`\\x88\\xef\\xdd@\\x90Zq}\\xa6\\xbd\\x85f\\x9a7.\\x17\\x7f\\x0f\\xfbR5V\\xf7\\xeb\\n\\xdc>\\xed\\xde\\xd1\\xe91\\x1d\\xcd\\x18\\x9b\\xac\\xe4e\\x87\\xca\\xf6\\x89J\\x91'YMJNG\\xe8\\x9e\\x87yN*\\xacC>%U\\x0dI\\x06\\xf3|\\x86\\xa1\\xa9\\xb5\\xf9Th\\x91\\xadh\\xce\\x14\\xcd(\\xf9t\\xbb\\xc9\\x16\\xf5P\\x9e\\xe9\\x11\\xad\\x95\\xfe\\xb21\\xf9 \\xea\\x8c?\\xdc\\x14\\x84\\xeb\\xfbN>\\x15dV\\xa3\\xaa\\x8f}\\x14\\xc2\\x12\\xadi\\xe9\\xbcU\\x90\\xd1\\xc3\\xd3\\xdbd,\\xaf\\xcc\\xdc\\x03\\x96|\\xe0\\xaau\\xa3c\\x9e\\x92\\xf7\\x80Y(\\x92\\xe9\\xde\\x99\\xbc!!Q\\xb5\\xb9\\xa8\\xea\\x12s\\xc1\\x80\\xe7\\xc9~\\xa6g0\\xc1\\x0cXHb\\x1fx\\x01\\xd3\\x86\\xb9a\\xdfb\\x90~\\xeb@\\xc3\\xd9\\x82\\x13\\x89J\\x9b\\x8cT\\xb3\\xb8 >\\x91\\xc9\\x9f\\x1e\\xfc\\xd7\\xfe\\x83e\\x88\\xb9\\x9d\\x94g{\\xf8\\xec\\xbf\\xbazP\\xd3\\xd0\\x8a\\xc1\\xa15\\xfdkzg\\x1d\\xed\\xa9\\xbd\\x7f|\\xc0\\x1e\\xee\\xbbv?\\x1fdP~\\xf6\\xeb\\xc6\\xa4wG\\xa3\\x95\\x11\\x9b\\x97D\\xb3U\\\\>\\xab\\xfdZ\\xda\\x0b\\xe9\\xe9\\n\\xcb^\\x86\\xa6C\\xf7u\\x1e\\xfe\\xbc/\\x8e_j\\xdac\\x8a!;\\x98\\xb9^ \\x0e\\xfb\\xf1{\\xfe\\x03k\\xd0_;t3;M~%\\xf8\\xcc\\x10\\xb4:1q\\x0d\\xf5\\x01\\xef\\xc5K\\xcdpsL\\xf5\\x95\\xf3\\xc0\\x15\\x1f\\xf0\\xda\\xb9\\x0cA\\x1b2Sh\\xd2\\xec\\xa7\\x0e\\xf4\\x01\\xc1)\\xe01\\xdd\\x12\\x13\\x84\\x00\\xb22q\\xe1\\x17A\\x93@Z\\xdb\\xda\\xad\\x9f\\x19V#\\x86#\\xf0\\xf1\\xee\\xc2\\xfb\\xbe*\\xc8l\\x1d\\x17\\xf7);\\xf8'/\\xa0\\xd4\\xed\\xf7\\xd8\\x89\\x9ep\\xd6p\\x84\\xce\\xfc\\x1d\\xdb\\x81\\xe9Y\\x80i\\xcf^\\xe43\\x0cZ\\xea'\\x98\\xca\\xd0\\x86B\\x1b8\\x02\\xcf3Q\\xffq\\x19\\xadi[\\x1b:|\\x84Q\\x81\\xb7\\xaa\\xf9t\\x83$\\x86\\xfe\\xef\\xda\\x9c\\xd2$n\\x92\\x18c\\xb6\\xcf\\xfd\\xd8h\\xe8\\xa1\\xe3h\\x86\\xe7\\x9eO\\x13\\xbc\\\"\\xc2\\xff\\xb9\\x93\\n\\xbf\\x7f\\x89\\xbb\\xfbW\\xfdu\\xe7\t\\xbd\\xdaC\\xa3Kr5\\x94\\x93k=\\x94Xk9\\x98\\xb0K\\xa6\\x82\\xd2~{1\\x94X\\xeb\\x9c%\\xba\\xd5e\\xb3\\xbd\\x16}jSH\\x9d\\x88>\\xb5\\xcd~\\x1aL\\xf2{:\\x94\\x13\\xeb\\xb9\\x18\\xae\\x16J\\x97B&\\xef\\xbfz\\xc6\\xd3\\xea\\xbf'\\xcb\\x93O\\x85\\xef\\xfd\\xdd\\x9f\\xc6\\xf7\\xffy\\xb6;y\\xf0\\xe0\\xf3\\x83\\x07\\x81\\x17\\x82\\x97x\\x9a\\xef\\xder}\\xf5\\xf3\\xe6\\x8c\\xf5(k\\xf7\\x9e,\\xf0\\xf0\\xf6\\xec2\\xb4(x\\x03&2M\\xe2\\xc7,_\\x7f\\x87\\xebGk\\x00\\xe0\\x17\\x9c:\\x04\\xef\\x0f\\xf2\\x1d#\\x87\\xbd\\xe7\\x1f\\xf8\\xa4\\x07\\x94?\\xaf\\x8d\\x8a(f\\xcd\\xf1MI\\x16\\x06K\\x0e\\xa1\\x91\\xec\\xce\\xdf@\\xdbE\\xc1\\x8b\\x00\\xbc\\x86a\\xa7\\xd2^\\x08\\xda\\x83I\\x14\\x94\\xc8i\\xad\\xcb(\\xa9^\\x96\\x84\\xa47o\\xe25\\x99\\x07~e\\x0d\\xeeN\\xfb\\xc2\\xb4sJ\\xf6#?\\x93\\x14\\xd3~1\\xaag\\xe2\\xda\\xc20\\x05\\xd1\\x04\\xd6\\x9b\\xaa\\x86\\x0b\\\"Y8\\xf0)\\x9a\\xdc\\x7fO\\x16\\x81\\x913U\\x0bk\\xc5\\xe1\\xfe\\x98\\x8f}\\x02\\x0e\\xd9A\\x16\\x1b\\xbc\\xa3_\\xd9,\\xcamW\\xa4\\x14\\x8e\\x0b8B\\xb1\\xdc\\xdek\\x81\\xa1\\xb7\\xf7\\x1c\\\"E`\\xd8\\xee)\\xf3\\x9b\\xb5en\\xa3\\xe5\\xca\\xf1\\xbe\\xca\\xed\\x02\\x85\\xb6\\x96\\xd2\\xae\\x0b8\\x86\\xdc/BH\\xa9 gL.+\\xca\\xb8\\xdb\\x01\\x8e,\t=-\\xec\\xb5A\\x15X\\xe6v\\x88\\xc0\\x18\\xd4\\x01\\x8e>\\x0c%\\xae\\xdc>p\\xc5!\\xd0\\x1f\\xc8\\xad\\xd7V$[6\\x91\\xc7\\xac\\x9d\\xdd8\\\"\\x03\\x12\\x90\\x95?\\x0f\\xe1*\\x84\\n\\xcd\\xbb\\x1c\\x16\\x029\\xa1M\\x9aR\\xb6\\xeb\\n\\x8e\\xc1\\xbfA\\x91y.\\xfc\\x07\\x19\\x9f\\xe8/\\x05u\\xf1o\\x02\\xc62/9\\xd1\\x1dV\\x93q\\x99\\xf6_\\x06%\\\\)\\n\\x8c\\xc6\\x88\\x80\\xee\\xa9%OhD\\xe9(Bh\\xe3_\\x850\\x0f\\x82\\x88+\\xad\\xe0\\x18\\x96\\xf2\\xef\t,\\xbb&]N[\\x0ddl\\xa3\\x11\\xbb\\x0d\\xb6\\x00/\\x8c\\x051l\\x01f\\x18\tj\\xb0o@\\xe0j\\xa4\\xa5\\xc6\\xc5\\x98\\xd3\\xa9\\xe9\\xa9\\xa2\\xdeZ\\xe7W\\x84\\n3\\xb0t\\xc8\\xfaE\\xf7\\xefEK\\x1b$\\xa4\\xe4\\n\\xd3\\xdf\\xb8-\\xc77\\x1c\\xae\\xd6\\xca\\xb63\\x0b\\x84\\xc6\\x89\\xee\\xca+\\x14R\\xd3f\\x96\\x17\\xa12N\\x91\\x1b\\xd0\\x9acT\\x14\\xb9\\x94W\\xd6\\xea\\xb7\\x81\\x03\\xe8\\xdc\\xce+\\x10\\xc4l\\x9c\\xc5\\xb6Z\\x84\\xfa@\\xab\\x005\\x15iST\\xc4\\xf5**\\xc9|3#\\xfe\\xd6C\\x00\\xf52\\x96ytNk\\xbc:\\x9d\\xd6nA\\xa2h\\xc1\\x8c\\xfd\\xee\\xfb\\x08F$\\xa55\\x15>hU7\\xcc\\x9d\\xe4\\xb9\\xb2$S\\xb5'\\x7f:\\x82=\\xd4U\\xec\\x85\\xcdmn\\xe0\\xd7AG\\x1cv\\xf2\\xa4\\xd3\\x15q\\xb1\\xe3\\xd7\\xd3\\xcc\\xe1\\xb2\\xbf[\\x86\\xe2\\xf2\\xe8\\xca\\xad_\\x8f1\\xb7\\xb9\\xf5K\\xe1\\xa5q\\xd1\\x88\\xe4\\x17\\xd6o\\xed7\\x12\\xdd\\\"p\\xc9\\xc6\\xb5\\x81\\x95\\x011\\xbf5\\\\\\xf8\\xf7\\x9ejd\\xb0W\\\\\\x80T$\\xbc\\xd7&23\\xcfg\\xcf\\xe3\\xd9\\x8aL\\xe0\\x9d\\x1e\\xb5\\xe3\\x8b*O75I\\x167\\x13\\xc8\\xf5uf)\\x89K\\xde\\x8c\\x9b\\xd2\\x85\\xf33;\\\\\\xf1;')\\xa9\t\\xbb\\x8a\\x98t\\xf1\\xf7\\xdd6\\x91-\\x94\\x16\\xcd 6\\xa8x\\xf4\\x93TE\\xf0\t\\xbc\\xd5W\\xba.\\xe3\\x82\\xd7H\\xf45\\x96\\xa4F2n0\\xbfG\\xdd\\xf7\\x04b\\xfd[\\xf2\\xa9.\\xe3Y\\xfd\\xb2\\xcc\\xd7\\xd8\\xc8F_M\\xde\\x06\\xb9.\\x87r\\x19x\\xce\\xee\\x920\\x81\\xec0\\x88W$\\x9e\\xa3\\xa1\\x87}\\xd3<\\x9b\\xcdHQO\\xc0\\x8b\\x8b\\\"Mfh\\x8f\\xf3\\xe0\\xe7*\\xcfBP\\x9f\\xdc\\xc4\\xeb\\xd4\\x1b\\xde/\\xc3\\xf47\\xcd\\xe3\\xf9)\\xdaF\\xef\\x98\\xe3\\xaf\\xdd:\\xdf\\x0c\\x8a\\\"\\xe8^\\x84G\\xf6\\x80\\x91\\xce\\xb6-_K\\x02_\\xc5\\x0b\\xf2c\\x1e\\xcf\\x07=\\xb4F\\xe1-\\xc7\\x19#\\x0fH\\x97\\xe1\\x1dcF?\\xe4\\xe8\\xa42\\x81\\x99\\xbe\\xaa\\xb8\\x1f\\xf9\\x8b\\xfa\\xc9%\\xc9&\\xb0\\xe8\\xd3\\xa5\\xa0k\\xb9\\xc3\\xa7\\x08G\\xf0\\xaa\\xaf\\x8a\\xfc\\xd9\\xaa4\\x17*V\\xa2^\\x0f\\x10\\xf5z\\xa0cp\\xd0\\xeeD5J\\xa9{\\xe6FcMZ\\x1enm\\x0ds\\xf0\\xed\\xf6\\x9f>\\xfa\\x02C\\x1a\\xf5\\xcd\\xaf\\xa0Z.\\xad\\xeb\t\\xdb\\x1a\\xec\\xc0\\xb0\\xd1\\x0e\\xe8\\x8fI\\x93\\xc29\\x17\\n\\\\3\\xba\\xf6\\x87\\xc1\\x14\\x95h\\x12\\xa7Q!\\x99\\xb5\\x94\t^1\\xe8\\xa7\\x85lv\\x1c\\xadI\\x1dS\\xa4\\xe6\\x7f\\xb24\\\\6\\xe5\\xe6f\\x1b\\xe5f\\xdeUnn\\xacZ\\nf\\xd0\\xd4Isk\\xfb\\x08T\\x0dl\\xfb\\x16\\x1a!\\xd8\\xe813\\x88i\\x9b&\\xc3$\\xb5\\x08;\\x8fH\\x88\\xabL\\xb1m\\x89\\x003\\xf8Vhn],\\xdag\\x98\\xee\\x04\\xb7\\xc3\\xf0X7[\\xf0.\\x80\\x1d`B,8\\x82Y\\xcf\\xfe\\xa2[\\xa8x\\xcd\\xf8\\x1d\\xfc\\xc0\\xdfca\\xd89\\xfb\\xf4\\xcbm\\x08\\xb3 \\x88\\x10\\xd6n:\\xd7i\\\"\\xe5\\xe8M\\x08\\xbf\\xdc\\x062c6\\xe9\\xf8\\xa78\\nb\\x887I;\\xc4\\x97\\xfd+\\xe0_624\\xe5\\xb8\\xed\\xb8A\\x0b.\\xa4\\xa3\\x8b\\x81\\xa0W]\\x13\\x89\\x94`\\xfeqH2h#*\\x8b\\xbdT\\xb9\\xe0)(\\xe6\\x1d\\x1d\\\\\\xb5\\x9bU;\\x9b\\x18'\\xd1\\x9a\\x94K\\xf2\\x82\\x90\\x82\\xae\\x98E`\\xba\\xb5\\xc5n\\xe2\\xad.\\x98\\xac\\xdci|\\x16\\x04!\\xcc\\x18]\\xa2\\x84J\\xd6\\xe2\\xba\\x9b\\xa9D\\x96M\\x08\\x1eV\\xf3\\x02\\xfaM\\x9fG\\x10\\xc5Y\\xd6i=\\xc1XTc\\x0eu\\xeb\\x19\\xd9z%e\\xf7\\xdf\\xc8\\xd8T\\xfd\\xf5+\\x1c\\xd8\\xf9\\xd0\\xadl\\xd2\\\\\\x90\\x8e?&\\x1b\\x9b\\xf0Qgei9+{\\xd9\\xd6q\\x1d\\xec^\\x82\\xe2\\xbc\\xec8\\xa6O\\xcf\\xec\\xea\\x9d\\xfe\\x1d\\xa2E\\x1c\\xe9wC\\xa9q\\xd2\\xb1]+\\xa3\\xaa \\xb3\\x10\\xaa\\xa1})e\\x90\\xfey\\xe2@\\x84\\xdd\\xb4}\\x9bi}\\xa6,h\\x19\\xc9\\xa5{\\x1d\\xcf\\xca\\xdcO\\xed\\xa4e\\x94.E\\xe0]\\xe3\\x87j\\x0bR\\x03\\x0d$\\xf2\\x0e9\\x1dv\\xec\\x18P\\xb4\\x04\\xea\\x8a\\x88s/\\x0bac\\x10\\xb3\\xb4O%!\\xd64d5\\\\\\xfdoJ\\xf6oB\\xc9\\x9a\\xa4\\xcd\\xa3(\\x99i/\\xd0\\xd1\\xc6z\\x1aa\\xda\\x08\\xd2\\xb1qC\\xd9\\x122d\\x06NK<\\xdd\\xb4w\\xf4:\\x9f\\x93T\\xc0\\x9d\\xedjZ\\xc7\\x80\\xeaN\\xbbY\\xe5\\xed\\xed\\xbbx\\x14\\xe3>~\\xaf\\xc5\\xff\\x8f\\xef5\\xfd`\\xcc.*\\xd2T@\\xdf\\xf3l\\x95\\xa4\\xf3\\x92d\\x13]\\x8cq\\x16e\\xb0v3BM\\x86l\\x95\\xe4\\xe1&b\\\"\\xca`\\x0b$*\\xca\\xbc\\xce\\xff\\xca\\x9fgp\\x8c\\xbbe\\xd3\\xde-\\x99R\\xab\\x89P\\x8a\\xc6\\xc4W\\xec\\x99\\xbf\\xa7\\x04\\x8c\\x08|\\x12\\x89\\x99i\\x94\\xcb\\xc6\\xd3T\\xb5\\x84e_Ok\\xc3\\xa5V\\xab\\n\\x1cAB\\x913\\x13\\xa3\\xd1\\xba\\x19t=\\xf9~u\\xc2\\x19\\x0fY\\xfcm\\xf8\\xcbC\\xdd\\xcbJ\\x98\\xd7i-\\xe8RA\\x90\\xb5\\x0d\\xcfTM\\x91\t\\xf2\\xae\\x17i\\x9d\\xb4\\xf6\\xcc\\xb0M\\x86o-\\xf3\\x9cR\\xc1\\xdc7\\x9a\\xba\\x81\\x8d\\xe8t\\x1c\\xc9I\\x08S\\xf3hd\\\\\\xac\\x11\\x81\\x89\\\\\\xb8\\xb9\\xabnP\\xf5\\xb8$\\x19\\xc6\\xc2\\xda\\xb1\\xa5\\x1bB\\x1b\\x13[\\xfb\\xa0\\x08\\xc5dJ\\xd4t\\x03v\\xd5\\x08p\\xa3\\xe3L\\xee\\x00;K\\x17O\\xcb38\\x86\\xc4\\xa7\\x7f\\x0821a\\x8fq\\xbd\\xe8\\x83\\xc1V\\xb8\\xe7u\\xe2\\xcb\\x85f\\xcdl\\xd2t@\\x91\\xae_\\x7f{\\xc0\\xa9;\\x8e;G\\x17\\xc5\\x97\\xb1;\\xa7g\\x81\\xd6\\x19FL\\xccE\\xed$\\xd9\\x04\\x19\\x15\\x92\\x81$S\\xd3,*\\x7fS\\x9ei\\xef)\\xe4\\xf0}c\\x87~\\xef\\x1e\\xf8\\x0c\\x03\\xf2\\xb3\\x10|D\\xb8\\x86lN\\xcb\\xb3\\xe0)\\xe4\\xbb\\xbb\\x01\\x0b\\x911--\\xd7\\xfbb\\x1a\\x18\\xe0E\\xa1\\xd7_eu\\xd8\\x8e\\x18\\xb3F\\x0e\\xdb\\xaeu\\x03A\\x945\\x82cfi4Q\\x9f\\x1e\\x888\\xc9Hu\\xd0\\xafE\\x11\\x1cu6\\x0dN\\xfb\\x12Ui\\x8dA\\xa8\\x05\\x0f@\\xdd\\xc9#6\\xa4\\x98j9\\xcd\\xd0\\xa8\\x9eE\\x8e-Y\\xfe\\x85\\x1c\\xad\\xd4\\xd0\\xe8?\\x04\\xfalxg*\\xc4w\\xf4V4\\xfa\\xb7\\x9b\\x99\\xf7\\xd9X\\x06o\\xf8\\xd6\\xe5p\\xc0\\xf1\\xf9\\xdf\\x8b5T\\x7f\\xfd\\n\\xdc\\x84\\x10\\xc3\\x1e\\x0e\\x89aZnB\\xf0!\\xfbZ\\x8b{\\xc1\\x88\\xeck\\xe5;\\xc9\\x89<2q\\\"\\x99\\xff\\xed\\x00\\xf6\\x0cr\\\"W<\\x03Y\\x87\\x99\\x94\\xa2\\x1bKs\\xab\\xf2*\\x03\\x9b\\x1a\\xb7%f\\x0b\\x9e\\x85\\xb0\\x08\\xa1\\x08a\\x1e\\xc2\\nMF\\xd7h\\xbdv\\x03G\\x10\\x97Kt5T2m\\x1d\\xa0uYc@!\\xabL\\x0f\\xe8!\\xda\\xfaI\\xf9v\\xfdn\\x97Z\\x141\\xf6\\xeb\\xd29\\xf2\\x14\\x9e.O\\x9f\\x06P]'L>\\x14\\xd9,\t\\x86\\xce\\xb1\\xd11LW\\xe8\\x90\\xd5S(\\xce\\xe1\\x08nx\\\\\\x99\\x93\\xacNJ\\xf2\\xa1$\\x84\\xa5\\x18\\xbe\\x11\\x86\\xf5,\\xb50\\xad\\xf6\\x8f\\x0d\\xa9\\xeaWYM\\xca\\x19)\\xea\\xbcd\\xc9\\x86\\xe9\\x9b\\xaa\\xc8\\xb3\\x8a\\xb4^\\x15\\xf8\\xaa\\xad\\xe7b\\xd9Jo4\\xb22\\xcbGl'\\xd2\\x80\\xa10\\xea\\xd5\\x8b\\xa4\\x9a\\x95\\xc9:\\xc9X~\\xbe\\xcc\\x8d{\\x92\\xa6~\\x06+\\x90n\\xe9O\\xd9x\\x83\\xdf-\\x1a\\x98L`\\xe1\\xf6m\\x1bh\\x13(\\xdc>\\xebCu\\x02s\\xeb\\x97\\xb7!\\xda\\xce3\\xf6[\\xa6\\xbe9\\xbd\\x8e\\x97KR\\x06\\x0e!\\xf3\\xa0\t{h\\xadKe\\xb15\\x86\\xf2d\\x8aY\\\"\\xb2\\xac~\\x1bv%\\x8cN\\xea\\x0d*\\x8c\\xael\\x863\\xa2\\xb0\\xe1\\xac\\xdd\\xc0\\xd6\\xcf\\x80\\xe1\\x1a\\xad\\xab\\xbaL\\n\\x11\\x85\\x14\\xedl\\x06\\xadcD\\xb1^\\x12\\xe1&\\xfe\\xd6y\\x13/\\x99\\xe3/\\xc9\\xea\\x10vJJ\\xc2\\xda\\n|\\xe6\\xdb\\x99\\xa9\\xcc\\xe7\\x12\\xc1\\xcfW]\\x91\\xf8\\x97|Y2\\xf4\\xd6C\\x16\\x9f\\xaeQ|Qn\\x8a\\xda\\xf7X\\x87^\\x08K\\x97\\x19X2\\xad\\x8e\\xc9\\xac*\\xb5\\x18\\x96L\\xaaF\\xc6\\x960VI\\xebb\\xd8\\x9f\\x8a\\xb8\\xa5\\x93j\\x8b\\x81\\xc3F\\x0e\\x0d\\x93\\xb0p\\xb9X\\x9e\\x14V\\x9d\\x99\\x1f\\x8ce\\xaa\\xfe\\xbdX#\\xfd`\\xf2A&@s2\\xef\\x19O\\xe6\\xbd\\xf6\\xc9\\xbcg:\\x99{kjSE1\\x0b\\xe97\\xf1z\\xc0+\\x809d\\xaf1\\n\\xbb\\xb9\\x16\\xc6\\xe2\\x8d(Yf\\xe1\\xb2\\x0c\\xb9\\x9a\\x9dG\\x08|\\x94\\x89\\x1eV\\xfbFX\\xed\\xb7a\\xb5?\\xc4\\xc5\\x80\\x8a\\xdb\\xe4\\x13\\x99mj\\x16rZa\\xcf\\x86\\x891#\\xc2\\x04I\\x8ay\\xc7\\x86]\\x1aDB\\xf0\\xfa\\xe7\\xae\\x87O{G*}\\xbc\\xa9H\\xf9\\x92\\xd4\\xb3\\x95g\\x8d\\xc1&V\\xd4\\xca0\\xb0%\\x9d@9\\\\M\\x0d\\xcaeI)\\xac,\\xffP\\xa8\\xb4\\xdb\\x10\\x12\\x831\\xb7\\xf5\\xd6\\xde\\xac\\x1f6\\xed\\xb6\\x9a\\x1d\\x1d\\x94\\xe6k\\xbb\\xe4*\\xd9\\x0b\\xfd\\xdbF\\xcd\\xc1\\x03\\n\\x1c\\x03\\x95\\xd4\\x0d\\xa0\\xcd\\xb1-\\xbe\\xcc\\x1f\\xe2\\xa5\\xbeV\\xd2n3\\x87c\\xf0\\xf87\\x1e\\x18\\xcd\\xa4c\\x96\\xec\\xe7\\xe0m\\x03\\xe4\\xe7\\xf9\\xba\\x88\\xeb\\xe4\\\"I\\x93\\xfa\\xe6u>7\\xec\\xe2\\x8d\\xc1\\xdb\\x96\\x96\\x05\\xbe3\\x92\\x12\\xc6\\xaf\\x90x\\xb6\\x92\\xdd\\x06\\xf4\\xa8\\xb0s\\xfa\\x8d\\xb6\\xdbNb\\x18\\xd8l$&\\xc5Z\\x12\\xc7\\xf4[\\xdaO\\xa3:^Vp\\x0c3\\xfeg\\x00\\x13\\x98&gc\\xcd\\xc0[\\xce\\xb4G\\xaa3\\xad]\\xbb\\x8a1\\x1cX`\\x1c\\xfc\\x8f\\xddF\\x0c~\\x06\\\\\\x97\\xcd\\x00\\x9e\\x17\\xaf\\xe6\\x81\\x9f\\xe2\\xfd_n\\xdb\\xf0\\xa2\\x0c\\xa3\\xc6\\x04bk+:W\\xedn)PDv\\x1b\\x11\\xe7\\x98\\xed\\x8d\\xc2\\x18\\xba%\\x8a\\xa0_\\x86\\xfd\\xd2-\\x12q\\x9c\\xfd\\xd9Z\\xe4\\xccL\\xdeE\\xb1\\xf9wQ\\x8c\\xdaLgg\\x01\\xd0\\x7fwwCH\\xa6\\x9e\\x07\\xbb0\\x83]|D\\xf1\\xa5\\x18n\\x83\\xa9\\xa9\\x9b\\xb0D\\xf4\\xecK\\xb0M\\xfb\\x8aP\\xcc\\xa4\\xa2)\\xed\\x8a\\xa2\\xa4C\\x04a\\xacz\\x04s\\x16\\x8a|\\xfcp\\x81wK\\xe5^:L{m\\xeeyA+\\xb7:\\x9c\\xd3\\xde\\xcc\\x89\\x9bAQ\\xe2\\xb31\\x17\\xc6\\xba\\x06\\x06Z\\x7f\\xa9\\xd66;\\xfb\\xcaj\\xb0\\x10\\xea\\xa8\\\"\\xe9\\xc2\\xe0'\\xac\\xde\\xb2\\x1d\\xf6-\\x10\\xd6\\xf1%9aL\\x0c\\x1cQ\\xb2\\xc1\\x1e=+\\x92\\xeaC\\xbc\\x94\\xb4\\xa1\\x92\\x7f5\\x95\\x9d\\xf4Vw\\xc0\\xb2\\xea\\xf7\\x1dj\\xce\\xd4\\xe1\\x1b\\x9d\\xf63^\\xb3hMh\\x80\\x1a\\xd9h\\xe2v\\x07*t8?s\\xad\\xd9\\x85Ic`\\xa2\\xb5\\xa5\\xe1@\\x96w29$\\x99\\xe9>KVJh\\xa5r\\x9a\\x9f\\x0d*\\x9c$\\x81\\xab\\xb47\\xf4\\xc0x\\xb5l\\x9a\\x9f\\x05\\xd8Xs\\xf8V,,\\x8d\\xb9i\\xceMO\\xf0\\xebi\\xa2W\\xf2\\x9b\\xf9\\x0e}\\xc3q\\x91T\\xba`\\x81=\\x1b\\x0d=\\xe6\\xffK\\\"\\xfaV \\xf8\\x8f\\xd9\\x03nK\\xd9\\x9e*=K\\xfa\\x84Q(\\xf6\\xbf\\xd5\\x9a\tT\\\\u\\xdf\\x7f\\x93\\xda\\xb0\\x02\\x9a%\\xd1\\xbalj\\xd6z6\\xc6}\\xa5g\\x89\\xca\\xb4\\x12:\\xd7CMW\\x0b\\x16.\\x8d\\x1d\\x1a\\xfa~\\xba\\xf03:\\x17*\\x88\\xa9\\x13\\xdf\\x9a\\xa5\\x19w\\x07\\xf6\\xe4` \\xce\\xf1\\x7f\\x86\\xa6\\xe7\\x0b\\x85O\\x85\\xd14\\x1f\\n>\\x89*2\\xdb\\x94I\\x9d\\x90*\\x04\\\"\\xee*0JPV\\x7f\\xb8)\\x08{\\xca\\x14\\x08\\xcac\\xc3I\\xc3\\xa4\\xaej\\xb6\\\"&\\xd9\\x8c\\x89\\x9c\\x9a;\\x11m\\xed\\x8a\\xd7\\xee\\xdf\\x93h\\xab\\xcf\\x98\\xdc\\xcd\\\"\\x19\\xfcT\\x1ax\\xf2\\x05\\xd6\\x92\\xea\\x0f}\\xa5\\x82\\x81\\x87\\x0f\\xf4\\x87|~\\x13\\xa2\\xb6\\xb8\\xbc\\\"\\xa5a\\xf2s\\xaeP\\xa6U\\xfe\\x1a\\x97I|\\x91\\x12\\x83S\\xed\\n\\xab\\xae\\xea\\xdapE\\xb1\\xe4R\\xaeP\\x93\\xe8k\\xdd\\xb4k\\xfd\\xb0I\\xd2\\xb9\\xb1\\xb2\\x08\\xe2\\xf5)J\\xaa\\xb7\\xcfN\\x0f\\x03\\xbf\\xd6\\x1c\\x147\\xe8\\xaeO\\x1b~\\x0b\\xc7p.\\xef!\\x95\\x88\\xe8\\x86 \\x83\\xef\\x8c\\xc4bS\\xa6\\x13cd\\xa3YI\\xe6$\\xab\\x938\\xad&\\x80Z\\xf6Ut\\x9d\\xd4\\xab\\xe7\\xcds8\\x06/\\xc9f\\xe9fN0\\x0ca\\x15\\xaf\\xc9}\\x16C\\xcc\\xd0h\\xe3\\x08l85gy~\\x89q\\xdeuF\\x84\\xfd\\xf9\\xc5\\xa8\\xfd\\x7f\\xa7A[z\\xb4\\x07!T\\xb2B\\x0fS\\xe1\\x08*\\xca\\xf4\\xf3\\x1a\\x12\\xed(=7\\x80\\xf2\\x83\\\\\\xaa%\\xa9%\\x91}\\x1f_\\x07CQew>\\xa8\\x91U\\x9f\\xfb^\\xc3\\xa4P\\x89'\\xc3\\xd0\\xb1Y^\\xc3\\\"\\xdfds\\x9d\\xab\\x10\\xed\\xfb5F\\x9e\\x94\\xd4C\\x0f\\xbeWmm\\xd3k8\\x86_na\\x02\\xaf\\xf5\\xd5\\x7f\\xc66\\x87t1o\\xb0\\x86\\x10\\xd7\\xf5\\xf3{\\x17m\\xca\\x14v\\x8f\\x8c\\xa6\\xa1\\x83\\xaa\\x01F\\x93\\xcc\\x01\\x03$\\xcd0\\xdeT\\xb2\\x8dm\\xbcU\\xec\\xec{c\\x18\\x9dF'\\xf1\\xc6pdr\\x1d\\xc4\\xcf}\\xcc\\x0cB\\xd8\\xc9\\xa4\\xa5\\x8d\\x88(\\x10ql\\x0e\\xe1]\\x1fr\\x12joBx\\xc7\\xd7\\x80\\xa2\\x17J\\xc1?\\x07Q\\x9d\\xffT\\x14\\xa4|\\x1eW\\xc4\\xc7\\xa08G\\xb0d\\xca%=~\\xbc\\x97*\\xfej\\xfa\\xe6\\xccT\\xb3\\xe4\\xd8\\xce7b\\x14\\xa3\\xbb=e\\xa7\\x0ch\\xf7\\x02\\x8e\\xe0\\x99\\xe2\\xa9u\\xea\\xbfR\\xc8_\\x104\\xcf\\xdf\\xb7\\x9ek\\x9a{1B+'4\\x8a7S\\x12%\\xd9\\x80-ai\\x89\\xb3\\x85\\xaa\\xbd\\x8b|~\\xe3\\xc9\\x18\\xb2\\x8ca@\\xbc\\x8b\\xd5\\xbf\\xa3\\xc6h_Z\\xb4-;\\x11\\xb5\\xd0:\\x8a}\\x94\\xc5k\\xfck9e\\x7f\\x9fQn\\xce\\xf0>\\xc1M\\x1e\\xb10\\xadX\\x19&p\\xe9\\xb3\\xbfCx\\x11tn;D\\xc2\\x96\\xeb\\xb8\\xcc|\\xef\\x9d\\x80+\\x8f\\xd4\\xcf\\x9a\\xc6p\\xfdI\\x05\\xf1\\xfa\\\"Yn\\xf2M%\\x83\\xdb\\xd7+\\x02<\\n3\\xee=X\\xc5\\x15\\xac\\xf3\\x92\\xbe\\x893\\xc83\\xd2(\\xfa1;\\x00~\\x91!\\xee\\xf7z\\x88\\xb39\\xbe.\\xe2\\xaa\\\"\\xf3\\xfbI\\xa6|\\x8b\\xba\\x8d\\n\\xe6\t\\x8b#\\xc6\\xfa\\x848\\x83?$\\xd9\\x1f\\xd8\\xdb\\xc8\\x0bB\\x11\\\\\\xebh8\\xf6bG\\xd5%u\\xeb\\x8a8\\x86\\x91\\xb9\\x1bsCy\\xf2\\x85\\xbd\\n\\x8cCHJ2\\xa7\\xbfvH\\x84\\xb7\\xe2'\\xeb\\xa2\\xbe\\xf9+3\\xf9nH2\\xf7\\xe2|/>h&\\xd8\\x06\\x06\\x856\\x9dgQ\\xe6W\\xc9\\x9chI\\xb5:\\x99\\xb7]L\\xf3\\x98;\\xa8@E\\x8ev\\xf5M\\x81\\x88\\xa2\\xd1@\\x976\\xaf\\x0d\\xe0[@I\\xa3:\\x90.\\xdf\\xcdK\\x03d\\xa02\\x058M\\xb48\\xec\\x85;\\xb6vqA\\x84\\x97\\x8c+\\x1c\\x91!\\x041\\x18\\x15s\\x80l\\xf2\\xbd{\\x90Y\\xb4\\xce%\\xf9\\x871\\x0e\\x8d(rl\\xd6@h\\\"3\\xc1p-E\\xa9\\xfcj\\xb8\\xa6\\xcdz\\xc4\\xd9\\x9c\\\\\\xa7f\\xa6\\xa4\\xf1\\xc7\\xbe\\xa9\\xc3/\\xcc*@\\x0f6u\\xe8N\\x9d\\xa0\\x9d\\xf1;\\xcem\\xd2\\x9e\\xae\\x9b\\x9e~\\x0c\\xe1]\\xc0\\x83\\xef\\x9ct\\x1e\\x07\\xe2\\xcc\\xc3M\\xda\\xb6\\x80\\x97\\xe7a`\\xf1\\xbd\\xa43\\xfc\\xa9\\x9f\\x8aM\\xf9~l\\x98/q\\x9c\\xc8&\\x8c\\xde\\x18\\xa0J\\x96\\xbb\\xe0cP\\xfb{\\xc8\\xdeb\\x18\\xec&goE\\xca\\x04M\\x8b\\x06l\\xceoC\\xfa\\x99\\xbe\\xa7\\xe6\\x10~\\x8ec\\x82#\\xf8\\xa9\\xbf6\\xfd\\x13\\x9c\\x0d\\xee\\x9d\\n\\xe8>\\xc3\\xc1\\x02#\\xa17\\xf6\\xab\\xec\\x7foHy\\xf3\\xb6|\\x99\\x97\\xeb\\xc0\\x7f\\x17\\x84\\xf0\\xeew\\xed>Z?m\\xf7\\xac\\xcama#\\xb20\\xb9\\x97\\x9e\\x80ng\\xbbMV\\x06)/\\xdbo\\x14K\\xa7\\x1b\\xc5\\\\\\x11\\x02\\xcd\\xb5\\x12'A\\x15\\xa4\\xbc\\xec$TB+\\x99!\\x12\\xffXp\\xe6\\x03\\x86{\\x15\\xdf\\x02J\\x92\\xb6:\\x84\\xa9\\x87<\\x9e\\x87\\xf7\\x85~\\xc9\\x82\\xd3Rv\\xf1\\xc7\\xfc\\xbaa\\x17=6\\xb0\\xca;\\x0bD\\x9c\\xb7\\x81f\\x1cj75\\xcc\\x03N1n\\xbb\\xf9\\xfd\\x8c\\xc7\\xd94sj9\\xc5fDi\\x97,\\xae\\x14\\x91\\n*\\xc6\\x8dL\\x85*\\xcd@6\\xa59*\\xdb\\xd0\\x0d_!c\\xe9\\xe5\\x01\\xfc\t\\xee#\\xcf\\xe6\\xa7\\xec&\\x86\\xce\\xb2\\x9a\\xaaUL>\\x93;io\\xba\\xb2\\xa1j\\xbawF\\xc7'\\xda\\xdb;\\x0b(1\\x14\\x8dz\\xbfxM\\xcfn3o9zL\\xcf\\x98\\x87\\xc7\\x83_\\xfc\\xe9\\xdfo\\xcfv\\x83\\xdb\\x07K\\xd5\\xcf\\xe3)\\x0bs\\x81\\x862>\t\\x9e\\x06T\\xb6\\xd8T+\\xbf\\x9c\\xee\\x9f\\xd9}6\\x0d*`?\\xdd\\xe6f~\\x16]\\x89\\xfd\\x85\\xbcq\\xf3sJ\\xac\\x97\\xa1b\\xc2\\xed\\xaf\\x86\\x8fo\\xe0\\xc4g\\xc3\\xef\\xf3\\xa5\\x0d\\x9b\\xfd\\xb3\\xb2\\x13\\xc9\\xfd\\x17\\x99\\x1c\\xe6\\xd6\\x0b\\xc1[\\xda\\x02\\x81\\xd0\\xa5O\\xa5\\x97j9\\xe8\\xccd\\xba\\xdb\\xd4\\xf7\\xd0\\xb5\\xc6\\xb2m\\xac;\\xb9\\x1c\\xb1\\x85\\xcd\\xae\\xef\\xc2\\xe2\\xcb\\xd6\t]\\xca\\x95<\\xb6\\x19\\x93l\\x8b\\xdfPj\\xbe\\xa9-\\xdf\\xd0\\x13\\xe6\\x9d\\xcf\\x1dLgy\\x8a\\xb4\\xf4\\x9d_\\xb6\\x1f\\xd8F\\x9b\\xe0\\xbe[\\xe5\\x15z\\x1e\\x96\\xf8\\xd7\\xf0\\x17\\xcc\\x85\\x8e\\x92s\\x14T\\x1c\\xfap\\xc9\\xac\\xcb\\xf1E\\x84O\\xf3\\xe97H\\x9e\\x138\\x86\\x9cb\\xf4\\xe4\\x01\\xe6\\xd4\\xf0\\x13\\xd8\\x85\\x18\\x9d\\xf0\\x82\\xe9F\\xf5\\x00\\x84c\\xd8\\xb4\\\\\\x99`b\\xc8\\xbaz\\xeb\\xa7!hr\\xb2\\xdf\\xfa\\xe8\\x9bk\\xa7\\x15\\xe3x\\x8a!=8H\\x8e\\xc2\\x85\\x0b\\xc8\\xdb\\xc7z)R\\xb2XX\\x8c.j\\xe5\\x03\\xa8E\\x97\\xb7}oT\\xf3\tT\\x98\\xf4K\\xfc`;\\x0e\\xfd\\xad\\x8cma\\xf4/\\x8a!1\\xc3\\xcd\\xa4\\x83\\x9b\\xab\\xba.\\x06p\\x87\\x19\\xf4\\n\\xdcL\\xe4_C\\xf8\\x96\\xe27\\\"\\xb0\\xbb\\xad\\xf6\\xcc\\x82\\x99]\\xac\\x9caz\\x17<E\\x8fY\\x9e\\x17\\x81\\x95\\x15\\xec\\xb2\\x88\\xf9i0\\x9du\\xb0r\\xd6\\xc5\\xca\\xbe\\xc1\\xcfm7\\xac\\xe2\\xbf\\x8e9\\xc8\\xe3\\xad\\x9d\\xae\\xbf\\xd5:B\\xa5C\\xce\\xdc\\xb3&DF\\xd7\\x06\\x85\\xf4MJ,wc\\xe6{\\x15\\xb6/\\x17\\xe6k\\x9f\\xd2\\xb2\\xb9s\\xb7\\xcb\\xb5\\xc4A\\xa6H\\xad\\xf2\\xc4\\xcc\\xe9\\x16h\\xc1%\\x04y\\x8f\\xa7\\xad\\xb5\\x92\\x86\\x80\\xaa\\xc5\\xf0\\x94oE\\xf0\\x10&\\xf4\\x0f:w\\xfa\\xbf2G\\xfaS\\xcc\\x85\\xfe\\xcd\\xc6\\xcc\\x9e6\\x91\\x94({/\\xc6`\\xe4\\xdf\\xafD(\\x05$\\x0f2\\x8b\\xa0F3@w\\x1b2\\xae;x\\x1c`\\xba+&\\x0c\\xa6d\\x19\\xcfn^\\xcd_\\x96\\xf9\\x9an\\xf6\\xd78\\x9c\\xc0OBHM)\\xb0\\xd6p\\x04o\\xa3\\x8bM\\x92\\xce\\xdf\\xb3K\\x1c\\xbf\\xab\\xd8\\xd0\\x8e\\x97\\xa9X\\x0cd\\xb6m\\x9b\\xac\\xaf\\xa3\\x9a:\\x1b/\\x16\\x04\\xd8\\x8c\\x9eNt\\x95t\\x81\\xd6oCX\\x0dxb\\xac\\xa3\\x8b|~\\x83\\xe0\\xa3\\xb3-\\x9a\\xd9\\xb27R\\x0c\\x9b\\xf7\\xde\\xb0h\\xde\\xbc\\x81\\x9e\\x83\\xa1\\xa8\\x14\\xc2\\x95\\xbf\\xee\\x100JbT@\\x0b\\xc31J\\x9b\\x7f*S\\xbd\\xa9\\xc5\\x02\\xf7\\xbfOI\\xc0#\\xda,\\xf3\\xa6\\xd4 Q!h\\x8c\\x96\\x02\\xcd\\xc5[\\xad\\x8f\\xe7\\xaa\\xe9d\\xff\\x90\\xf7\\xb2\\xa7\\xedE\\xe4\\xa1\\xfaV\\x9b\\xd9i\\x8d6\\x08\\xdfi\\xde\\xb0,Tk\\xcd\\x1b\\x91\\x81J\\x9f\\xb4Id\\xa0\\xfaV\\xeb$z.\\xdejs[\\x89,T\\x8f\\xb4TWd\\xa1z\\xa4\\x85\\xc8'\\xa3\\x0d\\xcb\\xa9\\x95\\xde\\x82\\xdd\\xde\\xc4\\xc9\\xdc\\xe49G\\xaf\\x9b\\x06\\xbd\\x9a\\xab\\xcb7y\\xfd2\\xdfd\\xf3\\xbb\\xcc3\\xa5\\xa6\\x9f\\x1f\\x9fg\\xea\\xb2\\x05\\x98\\x01\\x85\\xa0\\x90Q\\xa3E\\x92\\xd6\\xa4t\\x88\\xe6\\xd2\\xfa\\n\\x99\\xec~\\x10aQt\\xa3\\xed\\x0f\\xf6\\x99\\xd3*\\x8a\\x93\\xd3\\xe4\\xd3\\xa2\\x0b\\xf164\\x87\\x9a\\xdd\\xa6!q\\x11\\x7f\\xd3\\xd6)\\xf7\\xc1~\\x8a\\xbb,0OO?\\x14\\xa1a\\x9d\\x1a\\xf4\\xaa\\x8a\\xd6PQ\\xe9\\xd6c\\xf5\\x01\\xdd\\xef\\xa7Dg\\xec?x\\xcdD\\x0b\\xcf\\xed@?\\x9f\\x96\\x031SM\\x8azJ\\xa2\\\\\\x96\\xf9\\xad\\xddbK\\xa5\\xc8ZK\\xac~\\xab\\xef\\x9c\\x90Gj\\xb1\\x8fAI\\x13\\xfa\\xf1o\\x98\\x12\\xd43\\xe6\\x92\\xda\\xd6\\xf2\\xeb\\xf1\\xd6\\x81\\xae\\x0f\\x86l\\xc6,\\x9fn\\xdd\\xe9\\x93\\xc3\\x81\\x0c\\xf7VC5\\xf5\\xcdW\\x11\\x05\\xc4\\xd5\\xa7\\x0ek\\xe8\t?N&.\\xc9?\\xf4\\xec\\x0bH\\xd6{ RL-x\\x0d'\\x94g\\x97\\x1aw>>\\xc9\\xae\\x99+\\x96\\xf6\\x89\\xf0\\x1b\\x17&\\xc6\\xf2\\xbfy\\xf80E\\xdd\\xc4n\\x98e\\x8di&i\\xa2\\xe6nU\\x03\\x82\\x7flH\\xf9\\x95V\\xc86{\t&\\xb3\\x8e\\xbd\\x8ep|\\x08\\x03\\xf6\\x17\\x87\\xc0\\xce>w{\\xbbw\\x0f\\xbc\\x8b<OI\\x9c11\\xbb\\x94w\\xd4\\x18\\xdb\\xc7[\\xc4iE\\xbc \\x94\\x8er\\xf7\\xee\\xc1\\xd4\\xcb6\\xeb\\x0b\\x82\\x1e\\x8cIV\\x93%)\\xbd3\\xa9\\xaff-(\\xcarlg\\x0f\\x8d\\x03\\x021\\x90i)\\x01m&\\xdf\\xb3<M\t\\xc2\\xf5e^\\xae\\xe3z\\x82yg\\xdb\\xcf\\xccP\\xe2{N\\x9f\\xaf\\xcat\\xca\\n?\\x9c\\xb2kD\\xd0QS\\x0eF\\xe5\\xb9\\x12\\x81Np\\x8ef\\xbd\\x9b\\x80\\x05\\x9a\\xf3+?\\xf8\\\"5Oz\\x83929\\xeb\\xeb\\xe2\\xf1\\xf5\\x1e\\x15\\x98\\xc8\\xeb_\\x10gk4\\x94:b\\xff\\xcb\\x83\\x8ci\\xd6Ki\\x9bq\\xeb\\x85@\\xb2Y>'?\\xbd\\x7f\\xf5<_\\x17yF\\xb2\\xda\\xcf4\\xbe\\xa7:\\xcb\\xea\\xbc\\\\\\xbf\\x88\\xeb\\xf8_\\x12\\x00~\\xc64\\xc1=\\x0b\\x16F\\xa5\\xe8\\xd8\\x11<\\xf8\\x87D\\x13\\xfa\\xcbiC\\x89-a\\x1ee\\xa7\\xe3I\\x7f,\\xe6o]\\xb6\\xab\\x1ei\\x1d\\xfc\\x05\\xfe\\x93\\x03\\x0d\\xa8\\xbf\\xee\\x9c\\xc5\\xe8\\xcb\\xf9\\xf9\\x90\\x12P\\xc4`\\xd2\\x8a\\xc8B-\\xf9\\xed\\xe3q\\x81r\\xff\\x05\\x08\\x8e\\xb9bC\\xa9\\xcdu\\x10*QU\\xdf\\xa4\\x03\\x95P/K\\xd14\\x1d\\xf6\\xae\\xe9\\xabr\\x86%\\x18\\x8c_g\\x1b!8moZp\\x16\\x13HP?_%\\xeb\\x82\\\"\\xd4\\xe0\\x17|J\\x13\\xd8\\xd0ol\\x990X6\\xa0\t\\xec\\xec\\x1b\\xab\\x99$\\xcb!\\xfa\\x9f\\x0b\\xd2\\xaf\\x0bL\\xf2\\x1f\\xc9\\x98\\x99\\x19\\xb06K5\\xcc\\x88l\\xfa\\x91\\x0e\\xbcM\\xc6mF=n\\xdb\\xa5\\x04+\\xd2\\x99\\xb6\\x8b\\xe2\\xcd\t)\\xde*\\x86\\x8d|Op\\xc3\\xb1\\\\me\\xa4\\xb4\\x0f\\nq\\xca\\xacY!\\xdb\\\\$\\xc5\\x8c\\xa9\\xbc}?\\xf3\\x86\\x0fAQ\\xf8n\\x19\\xb5\\x15E\\xc1-\\xe9\\x98r\\x95\\xf7\\xe3\\xe8\\xce\\xcew\\xa7\\ni\\xb7\\x0f\\xc5\\xb6\\xe3\\x07\\xf6{\\x82f<s\\xb6\\xdcU\\xbc`~\\x1b%\\x7f<\\x9cP\\x0d\\x0cz\\xb7n\\xa9.\\x93\\xe2\\x84rbI\\xb6\\xb4\\xc6\\x8f2\\x9b\\x81\\xde\\x06th\\xc2`\\x96\\xb2\\xd7Hhz\\xa1\\xa0(\\xc1\\xa2\\xbc\\x0e\\xab#p\\xef\\xde=\\xf9'\\xa5N\\x92\\x02w8\\xf6\\xe6\\xf9\\xf1(!\\x04\\xbe\\x00U\\x9c)78SohpD\\x995\\x03\\x8b\\xfdKI\\xc9\\xd5\\x8bl\t\\x18d=\\xad\\xe7\\x97l\\xeb\\x0e\\x11\\xce\\x86l\\xce\\x88v\\xcb\t\\xda\\xafO\\x8a\\x1c\\xd0\\x08\\xbe\\x00\\x95\\xe0\\xd7\\xa0:[`\\x14\\xdc1&\\x80\\x036\\xc0\\x18\\x8c\\x00\\x0b\\xe9\\xd1\\xbe\\xba\\xbdCM@5B\\x13P\\xa9\\x9a\\x80\\xaa\\xa7\t\\xa8\\xeeZ\\x13\\xf0\\xef\\xaa\\xc1\\xdbHm\\x13S\\xd8\\xb5mb\\xb9\\xee\\xe9\\xf3g7M\\x9f\\xf3^\\xc4\\xfd\\x97Y\\xc8\\xb9\\xdd\\xc1\\x80o\\xb6L\\xd9lV6\\xbcK\\xb8\\x11\\xf3\\xd4\\x93.\\xb3\\x13n\\x0bc\\xaeK\\xc4\\xacs\\x82G\\xbb\\xf3\\x7f7\\x941\\xdfd\\xe9\\xcc\\xba\\x86\\xf8c\\x9d\\xf7\\x1c\\x08\\xef3\\xe5C\\xbaB\\xb9\\x8d6P\\xe6\\xbc\\xe5)\\x84v\\x16\\x9dd\\x8ae\\xd0Z`aw\\x96I\\xde\\xf7\\xc8\\x1b\\xa2,=\\xd7\\x83\\x0d\\xec\\xba\\xe3<\\xb8\\xe2=8\\xe1>\\xb4\\xf0\\xd0IP\\xcd\\xc6\\x1dJ\\xee;e\\xf4\\xa1\\xd0\\xdf\\x1e\\xad'\\xb7}U\\x0b]\\xdf\\xa9\\xc7</\\xbd\\x10\\xbcxS\\xaf\\xf2\\x92G\\\\\\xa5\\x0ff\\xcc\\x9d\\xff~}S\\x10\\xaf\\xc3i\\xfc'\\xab\\xbc\\xf4\\x83\\xb1D\\\\\\xf0\\xbf\\xd8~\\xf8\\x97\\xdb b\\xe8\\xa7G\\xa2\\x0c\\xda\\x91\\xb3\\x8dV=\\xe2\\x06D\\x0d!\\x87\\x07\\x0c&l\\x88\\xea\\xfc\\x14\\xbd\\xe3\\xfc\\x00\\x1d4\\xfa\\xe1\\xe6@\\xc9K\\x07\\x18J\\xff\\x18Es\\xc5\\xb9\\x8f\\x08\\xc7\\xab*b\\x0d|\\xc8\\x9f\\xaf\\xe2\\x12iB\\xe0\\x93\\xc0\\xd1\\x13\\x82\\x0fx\\xd6\\x98\\x84\\xa4>S(K\\xe6\\x8c\\x12\\x9e\\x9a\\xbf\\xec\\x9ad\\x11\\x14\\xbb\\xa6g\\xae\\xdd\\x81\\xeat!\\xc1\\xb0\\xff\\xa8\\xe3\\xe5\\xac\\xdf`[t\\xe2\\xfd\\x0f\\x14\\xfcM\\xed\\xfd\\x9c'\\x99\\xefi\\x9c\\x13\\x95w\\xd0E\\xd8_]#\\x9b\\x0cid\\xe3F#\\xdb\\xd5\\xb9\\xb2[\\x90\\x17I\\x85\\\\!\\x99S\\xfc\\x88g5;\\x01\\xf3P\\x1f\\xc3\\xdeb\\xb8i8_\\xb5VF\\xf5X/\\xb0Krcc\\x04\\x9cTl\\x16M,3\\xfd\\xb42D\\xcc\\xafk\\x88\\x1e\\x00W\\xeb\\xda\\xe7(\\n\\x87\\x13\\xe6\\xd6\\xb2Ku\\xe2(\\x1c\\x8e\\xe1h8\\x8f\\xa0\\x7f\\xe6\\x88\\xc2\\xa2\\\\2\\xa6\\x92\\xb15M\\xb6\\xdc\\xf1{lc\\xca;/7Qhrv\\xc1\\x81\\xa4\\xf1\\x05I\\xbb\\xe3`.\\xf2_e4\\xd1\\xe0h\\xd6q]&\\x9f\\xbe2X\\xc6&r\\xe1M\\xb2,2\t\\x1c\\xd3\\x83\\x84\\xb9\\xfbQ\\x06\\xef)\\x05U\\xcdX=\\x0c#2a\\xaa\\xce\\x10\\x7f\\xe9\\xc70\\xe0\\x8e\\x8a``\\x8a\\xb4#\\x9b\\xa7\\xbe\\x90`\\x13\\xee\\x1c\\xdb\\x8ccB\\xfb73\\x9e[\\xc0\\x15\\x1c`\\x0b\\xcaBkn\\x02\\xc0(\\xed\\xb3-Q\\xc43\\xf2\\x82\\xa4\\xc9:\\xa9)\\x93\\xee4\\xfd\\x94O_\\x99\\xf8o;o\\x0f\\x83\\x15\\x18RX\\x0d\\xcc\\xbeH\\x8a\\xd1\\x93\\x9f\\xfd\\xcbM\\xfe3\\xc6\\x0eu\\x9d<w+j\tY\\xbe\\\"\\xef\\xd5Zy/V\\xed\\x16\\xffE\\x0f\\xb9\\xd8\\xed\\x90\\xdb8\\x1dr\\xd5\\xafp\\xc8\\xe9\\xfd\\xc1D\\x19:\\xe4\\xcc\\xe3\\x16\\xc9\\x94\\x1d.\\xb0\\xc4\\xb9\\xd3:\\x16\\xe1\\x18}0\\xc7\\x87\\x18\\xc0\\x98R~6\\xad\\x1d\\\\d}&61\\x82-\\xa2\\x0b\\xd0\\x0d\\xe5\\xc7\\x14\\xfb\\x04-\\xa5O\\xf5\\xe9\\xdfo\\x85\\x19g\\xeb(\\xfd\\x95\\xc7\\x1e\\xe10#\\xed\\xe0#\\xa7\\xc1\\xb7N^*\\x81\\xc4\\xbf\\xf2\\x14\\x9e\\xe2`\\x9f\\xca)\\xb0\\xe3t\\xdc\\xb0\\x0d#\\xb6\\x12\\xd2\\x9c\\x8f\\xb8\\x1c5\\xe2\\x90\\x8f\\xb8\\x190\\x02Z\\x1e\\xfe\\xfah\\xfc\\xcd\\xd8\\x95S\\xfe\\xd7\\x855\\xc3\\x8e{\\x12\\xb5\\xbf\\x08\\xed\\x19\\xbd6\\xd1v;\\xdd\\xfa\\xd5is\\xe2Dt\\xe3_\\x81\\xe8&[\\x13\\xddqT4\\xf63\\x1d\\x81b\\\\\\xbex\\xd9\\xddI]\\xc6V\\xd4kc\\xadx\\xda3>h\\xde\\x0d H\\xeb\\xa1AE\\xc7\\x1d\\x92\\xbe}\\xc2\\x1c\\x92\\x1e\\xe9\\x1d\\x92\\x985\\xf9#]~\\xff\\xd4i%\\x05\\xec&\\x0f\\x8e\\x7f?=\\xfb\\xffv\\xbe\\xb9\\xf7\\x07?\\xf8\\xe3n\\xf8\\xf4\\xc8\\x93\\xf7\\x19\\xdcp\\xb6?\\x15\\x8d&~L\\xa7\\x0f\\xfe>\\x8d\\xef\\xffs\\xef\\xfe\\x93\\x8f\\xf7\\xa3\\xf3\\xff:\\xdb\\xfd\\xe6A\\x12\\xd5\\xa4\\xaau,\\xd7\\xb6~\\x01O\\x0e\\xf7\\xb7\\xb7\\xd1?\\xd8\\xfe\\xd3\\xc3/0\\xefo\\xbd\\xfa\\xb7\\xd4\\x8a\\xca\\x00\\xa9f\\x95\\xa6\\xdd5\\xb5\\xec[\ta\\xcc\\x9a\\xc1\\x84(\\x96\\x08\\x95\\x9a|(\\xd8\\xe6`\\\"\\x14\\xb3\\xdb\\xef\\xa2\\xef=\\x8bw\\xa3\\x86\\xcbbtR\\x8c\\x84\\xc2\\x9d\\x18\\xdc{\\xe7\\xed1\\x16b\\x8c\\x06\\xdfeLx \\x80\\x89F[q\\xeb\\xd7\\xd4\\x10n\\xe4\\n\\xb3-\\xdc\\xbb\\x07;;\\x1d\\xfd\\xea\\\\D\\xc8\\xd2\\x7f\\xb8\\xee\\xc7\\xc6\\x8aC\\x98z3a\\xf6\\xac:\\xfd\\xde\\x9c\\xb2\\xf0\\x00<\\xb6\\xcfP*)\\xe5\\xa6l\\xd1\\xbd\\\\]H\\xe3\\xb4E\\xdb8\\xad3\\xf42P\\x14\\xd8W\\xf4\\x1f\\x16\\xd3\\xa6s}\\xd5\\xc0\\x0bG\\xd5\\xfc\\x94a\\x7f\\x8e\\xc1_il4\\x06X\\x13\\x19\\xe0&\\x83$\\x1bN\\xde\\\"8\\x98\\xf9t(\\xb6$p\\xa4^O\\xb3\\x01{\\x0f\\xb4\\x07\\xb0\\x9d\\xd3R\\xa1\\xcb\\xf3\\xd6\\x7f\\xfel\\xbb\\x10\\x03\\x8e\\xfd9zN\\x0c\\x9b\\x9b\\xb0!X\\x9bCy?.\\x92\\xffEx4\\xcc8\\x00\\x0f\\x17\\x93\\xdf3\\xf2\\xe0\\x98\\xfeB8\\x19\\xc8\\xeb\\xf0$\\x08\\xc1c(\\xd1\\xab+.\\xcf;\\xb5\\xd9\\x9dp\\xaf\\xb6\\x08\\xc0\\xa6\\xd6\\x1e\\x9e\\x1d\\xa8>\\x18\\xcc/^\\x8c\\xde\\xce\\xf2\\x80\\x8c\\x01\\x1aW\\xc9L\\x8c\\x86\\x85\\xccp\\xfd\\x1e\\x14\\xae \\xc1@\\xc1\\xf6[\\xcfnAuYT\\xc4Uu\\x9d\\x97\\x03a\\xcatE\\xc8\\xb3\\x8a\\x7f,\\x0buA\\xd9\\xa3\\xca\\x01z\\xa2\\xc8\\xb5\\x8a\\x9e\\xa9w\\x8ep\\x04\\xde\\x0f\\x14<L\\x85\\xe4\\xd4\\x9c\\xd9zF-\\xde\\x05\\x89\\xcb\\x06e\\x18\\xd8\\xdbh\\xa3\\x19\\n~\\x83c\\xd1\\x84\\x84\\xe9\\x16\\xc5*\\xc7\\xcb)e?\\x18\\x89\\x1dW<\\x8aX\\x19\\xd5\\xf9%\\xc9\\xc01\\x81\\x93(\\x94\\xfa\\x17\\x18G\\xb7\\xaa\\xce\\xb1\\x05\\xf7o\\xaf\\xf0[\\xfc\\xe8\\xdc\\xbe\\xcbEA\\xaa*!\\xbbst\\x04WmS\\x17\\xf4\\xef\\xbdj@\\xe9\\x05\\xe1\\xc0\\xd2_ahS\\n\\xed\\xe1\\x94;0\\xb8\\xea\\x86`T\\xbd\\xa7\\x98g\\x87r\\xe7m\\xaf\\x8f\\xdf\\xecvM\\x1bL%\\x1e\\xf2w\\xd84\\xf7r\\xdd\\xab7\\xdd\\xc5\\x9a\\xe1\\xc0\\xba\\x92)\\xd3,\\x0cS\\xa9rs\\x18\\xee^[\\xadr\\xe2\\xe8R\\x0b;\\xc5\\x02\\x9b\\xc4u\\x1d\\xcfVJR\\x81\\x97y\\x89\\xd6e\\xef\\xe2\\x9b4\\x8fM\\xf1\\xb3\\xd5\\x81*\\x1f\\xf7\\x91\\x1a#O\\x18\\xccKJ\\xe1\tm\\n\\x17\\xae\\xc4\\xe40LR\tvj\\x80)\\x0b\\x1e\\xa2\\xf1}6\\x04)\\x99c\\x84-e\\x0d\\x86\\x88\\xc4\\xaa\\x1f\\x9bu\\x1eq\\x93\\x0e\\xf6\\xdd@\\x08\\x96\\x029&)\\xf8\\x15L\\xf0\\xeb\\x8f\\nO|\\xda\\xda\\xccD\\xe6h\\x0dl\\xed*h\\xec}\\xa6\\x1e_\\x98\\xfb\\x1f\\xd0\\xb6\\xc4\\x9c\\xd5K\\x12\\xd5\\x9d\\xc2\\xc6HQvt5\\xdd\\x1b`\\x91\\xd6\\x1d3\\xbb\\xfe(\\xd6,\\xbf\\xf6\\xdaY\\x83\\xcf\\x06XH.s\\xb0\\xf5\\xc2\\x1c\\x89\\x85Y\\x00R\\x16\\xbf\\x07u|\\xe3\\xc5E\\x91&3\\xc4\\xa7\\x07\\x9f\\xee___\\xdf_\\xe4\\xe5\\xfa\\xfe\\xa6L\\xd9E;\\xbf3)\\xe8bpy\\xa1\\x89\\xd2\\xb8\\xde\\xa4uR\\xc4e\\xfd\\xc0\\xa3\\x1c\\xad\\xf1\\xc2Ao`\\x16\\xabl5r\\xc4\\xd2\\xdbO\\xcfy\\xbb\\x9b4#\\xf9\t\\x99\\x9b\\xd3`<D[\\xa8\\xb8\\xb6u\\x9b0ey\\x990\\x1b|\\x1e5.\\xc9\\xaa:\\xcef\\xe2\\x0d\\xe5\\x0e\\xb5\\x9f\\xfd\\x90\\xe6\\x17\\xf234\\xf7o}K_\\x07-O\\xedE\\xf4\\xc3f\\xb1 e\\xfb#\\xf14J*\\xf6\\x87\\x9f\\xa3\\x0eG\\xb5\\xab\\xdb\\xe9\\xac@n[\\x81<\\xc0su\\x83\\xd1\\xef&\\x1d\\x9b\\x87\\x9c\\xaeN\\xaeX\\xf8\\xf4M\\x04\\xf3@ze::d\\xban\\x85\\x00\\x8fS\\x81\\x19%\\xfe\\xe0\\x1e\\xfbe\\xd0\\xfe\\x15v\\x8f]:&L\\xf4|*\\xe9*]\\xb1\\xfey)B\\x88i\\xe3\\xe0\\x88\\x08b\\xfb\\xdaH7\\\"\\x84\\xd8\\xbe62\\xd0\\x82)\\xd0\\x06\\xd45\\xc3\\x9a\\x9eo\\x07B@\\xfc\\xb7\\xa2\\xe7\\xb7S\\xf4T\\xe3\\x14=.\\x9cI70\\xd8\\x80\\xa2g\\xe1\\xa4\\xe8)\\xdac\\\\\\x881\\x1a\\x82}\\xcd\\x99\\xc3gAf|\\xb7\\x18x\\xb1U\\xbb\\xd99\\x1c\\xc3\\xf4\\x0c\\x8c\\x89G\\xae0\\x84\\xb1\\xaa1\\x1a\\xd0\\xfb\\x14\\x8d\\xc2H!.\\xc5\\xb0\\xc2h\\x89QeE\\x0f/(\\x8dK\\xe8\\xcaU\\xc6cq\\xa6\\xe8\\x82f]]\\xd0L\\xea\\x82f}]Pb\\xd0\\x05\\xad\\x9b\\xa3\\xba\\xa3\\x0b\\xaa\\xda\\xba\\xa0J\\xab\\x0b\\xba\\xfa\\xea\\xba\\xa0\\xe2n\\xb4<y#J\\xda\\x05\\xc1\\xf1*!z\\xc8-\\xadZ+\\xe0\\x1bp\\x83\\xca#{\\xddT\\x04w\\xcdGJ\\xb2\\x8b\\xe6CW1v[eUe\\x83\\xbe(\\x82cWU[\\x9b(A'W\\xfeh\\\"\\x94Y\\xd5\\x80\\xdd\\x8aZfSLJ\\x8b\\xff\\x89]0\\x9d\\x9fM7\\x8d\\x16\\xcb\\xda\\x0e\\xe7YUMT\\x05\\xc7\\x90\\xf0\\xed\\x85qIe^\\x9e\\x8e\\x90.+M\\xc0O0b\\xdf\\xa3\\x87}/\\x95F9%\\xd5C\\x8d\\xce)\\x08\\x07\\xdaW\\xf4?\\xa2yf!\\xa3hT0\\xfav\\xca\\xb47T\\xc4\\xed\\xa9!\\x16\\x1d5\\xc41,h\\x1b\\\\\t1\\xd4\\xfdB\\xea \\x0c\\x06L0R\\xc50\\xfb\\x17R1\\xdc\\x95\\xa2\\xc0|8\\x96.\\x07r\\xe2\\xc4\\n\\xc4\\x06)^_{\\xe3\\xa4/\\xd0\\x8b\\xaf\\xfe]\\xa9\\x01\\x0c\\x19.\\x155\\x80)\\x89!\\xaa\\x014Q\\xad\\x82\\x80\\xb1\\xcc\\x18\\xfb]\\x84U\\xd9\\x04h\\x9a2$g\\xc6=\\xc1\\xa0\\xa4\\x92\\x7f\\xb5\\x91\\xb1\\x9a\\xcd\\xdf65Y \\xe7\\x8e\\xa3\\xb3s;Y\\xa7\\x9dR\\x89S\\x0b\\xe8\\x16\\xdd\\xfc\\xeeE@\\xb4]\\x18{\\x8bD\\xdc\\xef\\x13<Z4\\xb0\\x13g\\xfe\\xf00\\x15\\xd1\\x18\\xe5\\xe9y\\\\\\xc7\\xde\\xdd\\x0f\\x97\\xc7\\xf5\\x11CNt\\x8b\\xad\\xa6^\\x18\\x1c\\xb2]\\x15\\xa0\\xd13HE\\x8aQ!-\\xc5\\xab;\\x99\\xba(\\x02\\x04\\xed\\xdcgf\\xe2\\xaa\\xa4 \\xdb3\\x9f\\xfb\\xe9W\\x1b\\xa7\\xc3R\\x89\\xd2\\x1a\\xab\\xfe\\xfc\\xf6\\x91YM\\x03\\xeb\\xa2\\xc6\\xb60C\\xd0\\x8cq[\\xd99\\x1e\\x14\\x807\\x8dd\\xdd\\xfe\\x94>\\xfcN\\xf1\\xbf\\xbc\\xe5\\x81*-R\\xae>R\\xa1\\xe0r\\xf9\\xb9\\x87a\\xdf\\xe9\\x06\\x8eVq\\xf5\\xf6:\\x13'`{x\\xb9-_\\xb2d\\xb3\t\\xcf)Bi\\xfa\\xdeS\\xa8\\xe1{8\\xf8\\xf6\\xd1S\\xd8\\xdd\\xad\\x03 ,\\xda&\\xf3\\xca\\xa1t\\xff{\\xd8\\x7fD\\xb9\\xb1=\\xc5\\xf2\\xb1\\xe5\\x17\\xd4q\\x0c2\\xab\\xef:>:\\xbeR\\xb3\\x8ebJ:?\\xe4l\\xca\\xb6\\xb3V\\x91\\x18\\x8e\\x00s\\xce\\xd5Q\\x91\\xc6I\\xc6>\\xa7\\x9c\\x1a\\x87\\xdd\\xac$qM\\xfcl\\x93b|y\\xca\\x0b\\x96l\\xda%|/\\x1d\\xb8\\xe8\\xdc\\xcb@UV\\x91iy\\x86\\xf8\\x98\\xd1?\\xd8\\xef\\xee\\x92sS\\xe9f\\xcd1)6)\\x97\\xa43\\xfe,\\xec;\\x92\\xa2\\xba\\xb6IC\\xd9\\xe1\\xc3\\xd9\\x0d\\x99T\\x7f\t\\x9d\\x9b\\xd6\\x03\\x81\\xd6\\xed\\xc6\\x0e\\x96\\xeb\\xa8\\xb3\\xa5E*gVDk\\xfa%r\\x9cS:\\x1d\\x83\\xe8\\xe5\\xe7\\xedE\\xf8\\xfc\\x99\\x8a(i\\x9a_\\xbf\\x13\\x18\\x8c\\x0fw\\xcah\\x16\\xa7\\xa9\\xdfEo\\xba7\\x18\\x11 S\\x0cv\\xbb\\xb37b\\xc3\\x0fy\\x809LK&\\xcd\\xecBLp\\x87D\\xbb\\xfa\\xbd\\xa0\\xcd}\\xef\\xdf\\x8c\\xcd)A'\\xd0\\x16\\x9aS\\xdc@m\\xa7\\xae\\x95^#\\xc7\\xe0g}\\xc1:\\x0b!\\xd1*\\xc0\\x18\\x8c\t\\xbe>\\x062M\\x10\\x9f\\x15\\xad\\xb6\\x84\\x02}\\xc5k\\xfc\\xff\\xec\\xbdk\\x97\\x1c\\xc7\\x95 \\xf6]\\xbf\\\"P3KU\\x0d\\n\\x8d\\xee\\x06@\\x11MAt\\xa3\\xbb\\x014\\xd4\\xe8n\\xf6\\x03 \\x00a\\xa0\\xac\\xcc\\xa8\\xaaDge&\\xf2Q\\xdd\\x8d\\x11\\xe6\\x90#\\x8a\\xc2\\x83;\\xb3\\xde\\x91\\xa8\\x91=cy\\xd6$H\\x00\\xb3^\\xdb\\xeb\\xb5\\xd7\\xf6\\x8e\\xf7\\x1c>\\xd6>Gs\\xa8\\x99\\xbf\\x80?\\xb0\\xfe\t>\\x117\\\"2\\xf3\\xde\\xc8\\xac\\x02\tR\\x9c\\x1d\\xd59\\x12\\x1by\\xe3\\x1d7\\xee+\\xee\\xbdqFcp[\\xfcSc\\xeeB\\x81M\\xe2o(X%\\xf9B\\x8e\\x97\\xbe\\x9cjS\\xf7\\xf8a\\xda\\x0e\\xada4\\xd6\\xe1j\\xd2\\x1b^\\xf7\\xebc6ms\\xc2#v\\xf4\\x88\\x01\\xe8t1bT\\xde.\\x01\\xbe\\x90\\xa6\\xfe \\x9cDs\\xd4\\x18\\xca\\xf3\\xcb\\xa6\\x0f\\x13\\xd2H\\n\\x88\\x9d]\\x0foX\\x06\\xc6\\xd1\\xc0<.$\\x95F'A\\xfb\\x8b\\x93\\xaa7\\xa8_\\xc9\\xb1X\\xce.|Tf\\x17f-\\x946\\xc0<<iUq&\\x9c69n\\x90\\xb0\\x1a\\xc7-N\\xe4\\xac\\x92\\x1e\\xb4\\xe5\\xc8N\\n+OaY#q\\xc1\\xa4\\xab\\x18\\x12\\xd7\\x97\\x07\\xad\\n\\xa5\\xcf\\xaa\\x94\\xde\\x8e\\x80pD\\xdd\\xa1\\x93,E\\x1e_\\xcc\\xac\\xa9\\x02N\\x9e\\x92\\xc3\\x96\\xd9\\xd7N\\xbe\\\\\\xfc}\\xba\\xf4}n\\xbe\\x04\\xf0\\xd9\\xf7\\xce\\xb0\\x93\\xaf0\\xf9\\x1c\\xcfw\\xcf\\xb0S\\xdf1__>e\\xbe\\x9e\\x9e5_O\\x7f\\xc7|\\x9d\\x9b\\x9f\\x97q\\xc5G\\xf5\\xc0\\xe4\\xa0\\xd8\\x82\\x80\\xb2\\xb9\\xf9W40\\x12\\xd8\\x0e_\\xe7gO\\x96>\\xcf\\x9d\\x9eg\\xb2\\xd9\\xef\\xb1\\x97o\\xb0\\xa3\\xe2\\xcb\\xfc+\\xecG\\xec\\xe5\\x13\\xec%f\\xea\\x9c:5\\x7f\\xfae\\xd3\\xff\\xa9\\xef\\x9c8y\\xb2hb~\\xfe\\xa4nbn\\xbe\\xdc\\x06\\xb4\\xca^b/\\x9f\\xb07\\xddND\\x0bs]\\xb9\\xb0/\\x9f:u\\xe2e)S\\xcc\\xcd\\xce\\xcb\\\"\\x1d\\xf6\\xdd\\xef\\xb2\\xb9Y\\xf6#\\xa6\\xbe\\xa0\\xb5\\x97;\tC89k\\x86\\xf0\\n\\x19\\xc2\\xdc<\\x19C\\xf3\\xd0:\\x0d\\xac\\xc2\\xce\\xd5\\xddh\\x14;ns\\x14n\\xf5\\xcd6\\x8aaQ\\xefV\\xdd\\xc5Cd\\xbdr\\xa0\\xe2g\\x9cD\\xf1\\x02kE\\xd5\\x0c<w\\xd5\\xfbpB\\xa6\\xabEy\\xd2\\x96\\x19n$\tRr\\x03\\xb6)\\x9a\\x89z\\xb7\\xaeG\\xf2}eAN\\x0b1T\\x92<\\xbf\\xd3\\x95B\\xf0\\xec\\xab,g\\xdfeN\\xa9\\x8f|\\x92\\xce\\xe4\\\\\\xcf\\x1bL\\xa12H\\xefzZ#[X\\xf8\\x96\\xb4n\\x99\\xd7\\x8a\\xe5\\xbf\\x8e\\xa9\\xe4{\\xe6R\\xd7(\\x15\\x92}\\xd5+7rojl\\x13\\xcc,|j\\x85\\xcb\\x04\\xf3\\xd0A`\\xcb\\xc0bC\\xaff\\x95\\xab\\xc0\\xa4W\\x0b\\x11\\xb5\\xf1vX\\x9av\\xe2(n7\\x04\\x8cf\\xd2\\xe0 v7\\xd4\\xbb\\x8b\\x83\\xc1\\x9b\\xf4?3\\xa8D\\xa1Z\\x04h\\x10!T\\x8b*rtv=\\xba\\xa1\\xf4NH\\xe2\\x1f5\\xc5\\xa0T\\x86'T-\\xfb\\x82OXcV\\xab\\x05\\xb63\\xc4a\\xfd\\x14\\x1e\\xffk<\\xd8Z\\xeb\\xbd\\xae\\xdeQ\\x86*7@\\xf9%:\\x9aV\\x8d\\x94\\xacB:T\\x97\\xe0Sthp\\x1bg\\xac\\xe2\\xea^I>{\\x96fI\\xeef\\x91zH\\xbb\\xf4\\xa1\\xe8\\xab\\x16\\\"4\\x85b|\\xdfb_VaU3/\\x16C\t\\x1bTS=\\xfe\\xcf\\xe6g\\x8f\\x0f\\x8a\\x16\\xca\\xf7\\xc4\\xd5\\xc50\\x97\\xb2\\xad\\xadsK'N\\xbf\\xf22J\\x1f\\xd3\\x97i\\x89\\xe1m \\x8a\\xbd[\\xe7\\x96\\xe6\\xbes\\xe2\\x95ib\\x8c\\x88\\x90\\x19uY\\xeb\\xa8-\\xf3\\x04\\xa5\\x13jh\\xcf\\xd1\\xcd\\xc4+\\xe6j'f\\x1e-\\xf5W\\x8b\\xc0a\\x00f\\x95\\x9eo_\\xf5\\x0e\\x02E(6P\\xbe\\xbdF\\xb7/l\\x9f\\x9e\\xc3a4\\xbe\\xfa>\\x8f\\xbe\\x9b0W\\xb5\\xbd\\x93n\\xfdY\\xe9\\x04H\\xef\\xc8P\\xbf{\\x02O\\xb9H\\xc7\\xac6/;\\x9b,;\\x99<\\x13\\x19\\xf9\\xf8\\x1a\\xe33\\x03\\x9e\\xed\\xf8#\\xde\\xee@\\xf5\\xd2\\xbf\\x17T\\xbc\\xfe\\x11x\\x19\\xcf\\xa2!Vt\\xa6\\xe2\\xbb\\xcc\\xf62\\x03\\xe7@\\xca\\x9f0\\xb0\\x05\\xf9\\x97\\xfcc\\x9aY2\\xb5\\xf0A\\x97\\xb9\\xf5t;oC\\n\\x97\\\\\\x12h\\xb52G,~f\\xba\\x02/\\xf6\\x0fhp\\xf1\\xef\\xa9\\xea\\xfb\\xd2\\x80\\xa0\\x0b\\x1e\\xf1\\x85\\\"\\xa03\\xe3\\xe8\\xd3\\xd1\\x01\\xf3\\x91\\xfag\\xd6\\xe92\\xc7\\xcc\\xb4\\x81\\x07\\xa5\\xb2\\xe9z&#\\xad\\\"\\xe94\\x13ef\\xb2\\xca\\xbc\\x083E\\xbaDSm\\xc9\\xd0\\x02`bA\\xc5\\x18\\x14\\x1c=\\xda|\\xe7);\\xbe\\x1e\\xdcP,.\\xb81U\\x87\\xba\\xc8\\xb4\\xe9\\xfeX\\xad~\\xa7\\x7fc\\xf5\\xe8W4\\xf1\\x8d\\xd4X\\x96\\xcaj\\\\\\xf6\\xb4\\xc67M\\xd2\\x8c\\xba\\xe4s\\xb5{\\xde/v\\x88\\xc5\\xd3n\\x90\\xdc\\x9c\\xfeL\\x1a%Y\\xbb\\xd3e\\xb1\\xf9K\\x06\\xea\\x95\\x9e\\x88\\x14{\\xf7=\\xd8\\xc3c\\xc7\\xeawM\\x0e\\x04v\\x8c\\xc5\\xd3l\\x98\\xc1\\x8e/\\xd8\\x99\\x8c\\xed\\xbb\\x1e\\xdc\\xe8\\xb2#N\\x9b_wotY&\\xff?\\x9c\\x8c\\xdbZx\\xd14\\xa8\\x90yi\\xfa\\xfd\\xbb\\xc5\\xb1\\xab\\xc0\\xee\\x96\\x1c\\xa6\\x8c\\x7fR\\xde,kHu\\x9c\\x15Y\\x17\\xcfT\\x1e\\xce\\xbaki0\\xadm\\xf0H\\x1bH\\xab\\x95\\xa8\\x8a\\xef:\\xffV\\xe9\\xbbA\\x0e\\xe9\\xcc\\xa9;\\xa9(\\xfb3n\\x14\\xcb\\xb7\\xf8j\\xc0\\x92_I\\xf1\\xa8\\xa0\\x0c\\xea!d[\\x8f\\xd7go<\\xaf\\x04\\xa49%=(\\xc0\\x0e\\xe8u\\xb3\\x8d}\\x9e8=ka\\x9f\\x13/\\x98\\xd5\\xe2Fj`H\\xad\\xbbK\\x19o\\xd8\\x9e?1[1\\xb4_L\\xa3pS\\x1cw\\xfd\\xa0\\x9b3S\\xfc\\x13\\xacN<^\\n\\xa2P>*=s\\xd3\\xfc\\xb3*\\xee\\xe5\\xd6%p<oz\\xd6glb\\x99\\xb4\\x89\\x0d\\xfdT\\x85n7\\x10\\xa1\\x90\\xef/G\\xaeL\\xef\\xf6\\x1c^\\x97\\x946&|\\x14\\x8d\\xf9\\xf4c\\xd5\\xbb.\\x06\\xdbxh=\\x1e\\xf0\\x8c\\xcbr\\xd3\\xcf\\xa3\\x9ev\\xc38\\xbd\\x85\\xe9U!\\xdb\\\\\\xa5\\x10\\xfe\\x15L\\xf6Kl\\xddW;\\xe5/\\xb6\\xb9A;\\xec\\xc2db'\\x1b\\xd6e!\\x91\\xd4)A\\x87\\xa3\\x9d\\xd4\\x89=\\xda\\xc4\\xe2\\x8a\\xc6\\x1b,\\x10\\xb1\\xcc\\xb0,\\x06\\xde\\x90\\x1f\\x13\\xde\\xe1\\x90C\\xec'\\xd1\\xc8\\xbe@\\x9d\\x19\\xb5\\x84\\x8d{7\\xcdx\\x1c\\xcf\\x9bn0\\xe2\\xcf\\xfa\\x82:\\x95u\\xcdp\\xbf)H#X\\xcb\\x97A\\x1a\\xb1#\\xcd\\xa9k\\xbe\\xfe5G8\\xfa\\xa5w\\xe0\\x8b\\xafn&]\\x84\\xa6]]\\xb5`\\xd3\\x0e\\xab~\\x1d\\xa0[\\xbf\\x0d\\x04\\xb9\\xa0TS\\x07\\xaf\\xd0\\xa6o\\x0e\\xf8\\xf3\\xcf\\xa4\\xe8Y\\x11\\xd6\\x17\\xbf\\xe6\\x95/h\\xdc\\xd4\\xae\\xc2\\xbe \\xbbvf\\xfct\\x15\\xde\\x8c\\x83\\xf4\\x91|&\\x8d\\xe5\\x0b\\xedY\\x97\\xcdV\\x96X^\\xc3}\\x05\\x1cBZw\\xb1\\xcb\\xa0\\xfeM\\xb5\\x85\\xcf\\xcb\\xfe_\\x18:\\x1a:U^\\xb5\\xb9\\xce\\xf5Y\\xfa\\xca/\\x9b~2\\xffD\\xf9{>#\\xfe[G\\xc8s\\xa9+\\xd4\\x11\\xa2\\\\&O\\xa9;\\xdc\\xf9\\x8c\\xf8o\\xf5@\\xd9\\x14\\xaa\\xc0*\\xa9Kw\\x03\\xd0K\\xean5\\xb5\\xd5\\x9e.\\xa7d\\x02\\xa2w\\x0b\\x17P\\xd4\\x1f\\x8f\\xab\\xfcO\\xc3i\\xe4Mt\\x97\\x85\\xb0q\\xa6\\x8cM\\x8bs\\x95\\x93JR\\xe3\\xa7R\t~\\xd3\\xd2\\xcf\\x91\\xb9\\\"\\xbc\\xeb\\x8cN|.\\x1f\\x98?2\\xdb\\xe9\\xaa\\x82V--a\\xaf\\xb1Dp\\xc2\\xd9.\\xe3\\xf2\\xeeDH[l\\x81\\xc5\\xf2\\xa3\\xcc\\xb8\\xdcR\\x179\\x00\\xa2\\xab4V\\x99\\x0d\\xed\\xe8XAE\\x8b\\xa5\\x95\\\"=x\\xb0{\\x9e\\xee7\\x8a\\xcd\\xce\\xb93\\xa5\\xe6\\xe4\\x1d\\x8a:\\n\\x16\\x9b\\x9dlF\\x9d\\xc7\\xe7jJ\\x8bl\\xe2T\\xd6\\xb7,\\xa5C\\xd3\\xacT\\xa3\\x05\\x8eO\\xd1\\x93D\\xd4\\x10D\\x94.\\xc3\\x0d\\x89\\xad\\xaa\\x0c\\xa1S?\\x06ql\\xca\\x1d\\xdaw@\\x9a@\\xe4\\x11cg\\x04\\xf75\\x88\\xd81Od\\x01\\xb8\\xc3\\xb2a\\x12\\xed\\x8b-#\\xcai\\xbb\\xb5#\\x1a0\\xce\\xc1\\xac\\xef\\xf8\\x01\\xf7Z]\\xd6\\xdaY\\xd9\\xde\\xb9\\xb9\\xb1\\xb9\\xb2\\xb5\\xb8\\xb3\\xba\\xb1~\\xf3\\xdc\\xe2\\xea\\xda\\xcarK\\xa2T\\xd8e|\\x82\\x18\\x86\\x16G\\xac8E\\x92\\xba\\xcd\\xad\\xae]i\\xc5\\xab[\\x88\\xb7:\\x0f\\xecf^\\xd9\\xaa<\\xef\\xb4\\xcd\\xb0\\x90\\x18j\\xeb&\\xcd+h\\x1e\\x81g?\\x8c\\xe2\\x1f\\xca\\x8bL\\x9ed\\x87\\xccOY\\x18eL\\xa8\\xf9Q\\xbfX\\xe2\\x94\\xa9\\xa8J\\xe6\\x87l\\xeb\\xdc\\xd2\\xb1\\x97O\\xcf\\xce\\x8b\\x05/\\xd6zc\\xf3\\xe6\\xea\\xfa\\xe5\\xc5\\xb5\\xd5\\xe6\\xf5\\xd6\\xcbR%V\\x95\\x7fE\\xca\\x92\\x8fT)\\x8eU)m\\xe6l\\x03=`\\x90WW2\\xd0\\xac\\xdd:\\xde\\xb2\\xd8>a\\x17\\xc8\\xe7!;\\xc3,\\x8f\\x16\\x8cKv>\\x0b\\xb31!b\\x146h\\x80\\x1d\\xd6\\x84\\xe3J\\xd3\\xe2\\xa1|\\x1a\\xae\\x8e:\\nb\\xf8\\xaa\\xf5\\xcaWl\\xf9@\\xda\\x16\\x877\\x14\\x95-\\x11a\\x08\\xde.\\xc7\\xb3]\\x1f\\xdc`\\xaf\\xc9)\\xf4\\xc18\\xd6\\x9e\\xed\\xb2\\xa1N\\xc5z\\\\f\\xe7\\x1b\\x8a\\xee\\xc7\\xec\\x18\\xe4\\xe2o\\x8f\\x98\\xa1\\xbc\\x95\\x00^\\xd9\\xf8aA\\xb8G\\x82R\\x0f\\x8f\\x1e\\xc5\\xf7\\xc8^\\xad\\x89_\\xe2\\xfa1@\\xf4AG.\\x9e\\xa7\\xad\\xee\\xd6\\n\\x0d\\xae\\x8aL\\xe3\\xbf\\xb4\\xf6\\x95\\xa5\\xd2A\\xa7\\xf9H\\xac\\x1c\\xc4\\xdc\\xcd\\xb8\\xc7\\x9c\\x90\\xe5a\\xea\\x0f\\x04\\xba\\xf7\\x9c\\x94\\x1f\\x9b\\x9be\\xea9d\\xa6\\x08\\xf3\\xc8\\xd9\\xf3\\xc3\\x01\\xcb\\x86\\\\6\\x96\\xf0>Ox\\xe8r\\x0f\\nH\\x80\\xf4\\xe9c<\\xe0\\xf2\\xa8\\xef\\xfb\\xd9P~\\xbe\\xc3\\x93\\xe8\\x98h\\xd6\\x03\\x81\\xb5z\\x8a6\\x17w.\\xdc\\\\][[9\\xbf\\xb8vsqkk\\xf1\\xea\\xcd\\xd5\\xf5\\xe5\\x957\\xd4\\x99\\x02\\xed\\x8e5\\xbd\\xe5W\\x9d\\xb2\\xdc9\\xb1\\xa0\\x7f\\xfc\\xc7\\x83iu\\x1b\\xa6\\x96p\\xc8\\xbew\\x86\\x8d'\\xdd\\xcb\\xc8\\x85\\xae\\xf2H\\xf1e\\xc0\\xbeg6q\\x021\\x1fr\\x19\\xc6\\xe1\\xf7}\\xbd&\\xec\\xd2\\xee\\xf6\\x0e[\\xdf\\xd8a=\\xce\\x06\\xd2W7a\\xd9\\xd0\ta\\xc5\\xa5\\xc1V\\xd0'\\xb5\\xb8\\xa9\\xa0Jf\\xc9\\xab\\x0bzyqmw\\xe5\\xe6\\xc6\\xee\\xce\\xcd\\x8ds7\\xcfn\\xec\\xae/oO\\xbf\\x96\\xf2\\xde\t\\xd8\\x92\\xb4\\xdc\\xa7\\xd7\\xc5\\xf4n\\xc0\\xedV\\xd8e^\\x97\\x0d\\x04\\x99\\xeb|\\xfd<\\x8b\\xd5\\xd1R\\xfd\\xb3\\x08\\xccE \\xc3@\\xb9\\xc5\\x1c9\\xc3\\x06E\\xaa\\x83?n\\x15\\xf8\\xe2\\xcc\\xe4!\\xe4\\x9a\\xdct\\xb2a\\xe1)8\\x90\\xa7\\xbb\\x113\\xf0\\xaa\\xe5\\xdf\\x9cU\\xab]1\\xbaZ\\x1e\\x032Y\\xc3\\xa8l\\x02s\\x7fz\\x81\\xd9&\\x16\\x13\\x07\\xe1\\xe6\\xa5\\x91\\x7f\\xb3\\x94\\xdf\\xce\\x05\\xe5a\\xa3<\\xcd\\xc4qq\\xc2\\xe2\\x18l\\xaf\\xbc\\xbe\\xbb\\xb2\\xbe\\xb4rs}c\\xe7\\xe6\\xe2:\\x10\\x14\\x1c\\xe12-\\xbb5\\x9e>\\xf2F\\x9f\\xef3\\x1d\\xd6\\xa4\\x0e\\xb9\\xf2\\x00\\xebB>Msk\\x9a\\xb3\\xef\\xb2\\xf4U\\x96\\x1f=\\xdaa\\xfe\\xf5\\\\\\x86`\\xcau\\xba\\x9e\\x0bN\\x05\\xf7\\xf7\\x12R\\x16\\x8d\\xac\\xda\\x8bO\\x054\\xbfqC\\xe2\t\\x1bRw\\x0bU\\xbd\\xf6\\xa2^\\xf4\\xd3IVJ\\x96rB\\xa6\\xba\\xa9\\x10&\\xb5%\\x1bg/\\xae,\\xed\\xb4\\x00k\\xc5z\\xbcJFy$\\xbf\\xce\\xc5\\x01\\x9a\\xb6\\xdf\\xafD\\xa2\\xab\\x1f\\x9eq\\xbe-_\\xd9\\x81\\x826\\xe5xEa:b\\x87\\xa9\\x86-\\x0cr\\x8aa)\\x9f(9\\x92\\x82\\xc4\\x1d\\x07\\x12\\xa7>\\x177\\x81\\x8dc\\xfdv\\xfdX\\xe5\\xa9K3'Q\\x1c\\xbeu\\xbc\\xf5\\xed/6\\xde\\xb2\\x1a\\xc7\\xa9\\x1a\\xc7\\xa5\\x02 X\\xadm\\xb9\\xa5\\x027\\xedr\\x8b\\xc2t\\xb9\\xe3\\x84\\xa7\\xe2X\\xb5U\\x88\\\\/\\xe0\\x025~(F\\xf5C\\xe6\\x84\\x1e\\xfb\\xa1\\x18\\xcd\\x0fK(\\xd4\\xa9n\\xcd\\xb9\\xad\\x8dK7\\xb7V^\\xdf]\\xddZ\\x994W#/\\x98\\xa9V\\xd4c\\xf3\\xb5P+\\xcd\\x02\\x94o\\xa1\\xb5Eq\\xca\\x99\\xcb\\xd2\\xd3O\\xdd\\xf1\\xbc\\x1fv\\xd9\\x0f\\xd5\\xc8\\xd4\\\"\\x88\\x115,\\x02\\xc8\\x1b_\\xfd*83C'\\xdd\\xd5\\xc9n\\xdaz%\\xbeyK\\xb1\\xb4\\xb8.H\\xdd\\xd2\\xc6\\xfa\\xce\\xe2\\xea\\xfa\\xcd\\xdd\\xf5\\xe5\\x95s\\xab\\xeb\\x13\\x96\\xc6r%Q6\\xc5\\xa8e\\xa87cB\\xa0\\xb4<\\xe3\\x85:\\xd8\\x98_\\x83)kxD+\\xd8E\t1\\x1e_\\xd2\\x98\\x94\\x1d\\x05\\x15I\\xfd\\xb3y\\x0f\\x96\\x9cP.4OdT\\xb2\\xa3\\x16\\xb7$\\xe48\\x99\\x14f=\\x9e\\xfa\t\\xf7\\xa4u\\xcfB\\x03\\xd5\\xba..\\x97W\\xb2I\\xe6\\xab\\xc1\\xad\\xb2\\xe5\\xc2|,\\x0c\\x0fM+\\xed\\x83W\\x99\\xa3\\xdc\\xac\\xa2\\xe7\\x9a\\xb8\\x98be\\xce\\x8e\\x9c\\xa9\\x10\\xf33\\xe6E\\x1c\\xf0\\x91\\x1f\\xf8if\\x99\\xfd\\xee\\xfa\\xd6\\xca\\xf6\\xc6\\xda\\xe5\\xc5\\xb3k+\\xd3\\xce\\x7f\\n\\xfaZ\\x8fQ\\x81\\x10\\x07\\xdb\\x16\\xff}\\xfdk2\\xd0\\xea\\x1f\\x18j\\x81\\\\O\\xbc\\xa3\\xab\\xc9}.~wo\\xd0c\\xa3\\x7fb\\xaa\\xd2\\xeb\\xbdq\\xc9\\xe4\\x9c\\x03\\x99\\xf9\\xe2K\\xec\\x9a\\x98\\xc7\\xd4\\xfb&\\xd9\\xc3\\xd4\\xfb\\xd6(\\xd7yZ\\xae\\xc3;f\\xf7\\x8b\\x93B\\xd4\\xf3Iq/J\\xb8\\xd6\\xdd\\x87\\x1d\\xd6oW\\xe4\\xeb\\xb0\\xd3\\xc5\\x02\\xb7\\xd0\\x03~\\xf4#\\xa1\\x11\\xd0F\\x1aL\\x1e\\x89L\\x19\\xf6\\xa3\\x1f\\xd5\\xe5\\x01\\xac\\x84t(\\xd7\\xfc\\xc2\\xab1\\x12\\x82y\\xd2\\xe6\\xd7\\xa3\\x1b\\xd2\\xb79\\xd4\\xc6\\x9dI1\\x0b\\xcd\\xee\\x81\\x926\\x94\\xfdn\\xf1\\x1a\\xd7]\\x81\\x88\\x1f\\xecLm0\\x99\\xf9K:\\xed\\xca\\xf7\\x92\\xcf\\x1enF~\\x98I\\x0f\\xfa\\xc0Du\\x17\\xfc\\xee\\x0cs\\xcdW\\xd8\\xdb3\\xaco\\xbel\\xc9p\\xbd\\x04\\xc7\\xe7\\xe2y\\xe9\\x0b2u\\x8bb\\x91\\xd4A\\xebM\\xbe>\\xc5V\\xadaR\\xd6\\x8c\\x8a\\x85\\x12\\x13\\x1c;\\x81\\xef9\\x99\\xf4\\xe9\\x8aK\\x1f\\x84\\xd6\\xe5}K\\x15\\x9b\\xc6\\xb3-l\\xcf\\xbfR\\xea\\xbd\\xd6w\\xdb\\xa6h\\x1dI\\x94\\xb72\\x9f\\xb9\\x99\\x81{\\xac^\\x9e\\x9d\\xc3\\x98\\xab5Y\\x0de@U\\xe6\\x0b\\xa9#\\xe1.\\xf7\\xc7<\\xe92\\xf3\\x96\\x84L)\\\"x\\xe2\\x11|\\xcc4*!\\x1c\\xf9BQ\\x0b_(\\xad\\x0cM)SN'Sr\\ni\\xcf\\xcfw*\\x8ew\\x96<25\\xbe\\x93\\xf4\\x909\\xfd\\x8c'k\\x91\\xe3M\\x13a \\xafk\\x93(\\xcaVC\\x08\\xc4>C?\\xe9w\\xc9\\xd1\\xf7\\x19?\\xf4\\xb3\\x8d\\xc5<\\x1bB\\xb2\\x98<\\x1b.\\xca\\xde\\xd2\\x197\\n\\xfb\\xfe O\\xb8\\x80Zj\\xc6\t7)\\xdc\\x16e*(is\\xee\\xf9\\xa1\\xd7\\x86\\xcb\\x0f\\xe94\\xdeT\\x0d\\xf2\\x1a\\x9dan\\xb5\\x16%O\\x94\\xa5\\xa6\\x99\\x93\\xf1\\xcd \\x1f\\xf8\\xa15\\x0eD\\xfcD?u0&W_\\x12\\x87t\\x81Ez\\xb3\\xeay\\xb7\\x03\\xcb\\xd2\\x185\\x96\\xf2\\x80\\xbbY$Z\\xb4\\xbf\\x0fY\\x93\\x95\\x16r\\xdd\\xd4\\x0ft?q\\xe2E\\xdd\\xbf\\xfdQ\\xae\\x89\\xee!U\\xdaa\\xdd\\x05\\x0c(v\\xb5\\x8a\\xf0\\x91B\\xf8\\x13\\xa7O\\xe2\\x9c\\x19>\\xbc<\\xd4\\x9e?A\\xb2M:\\nt\\xe2\\xf4)\\x0c\\xca\\x0dH\\xe6\\xd90\\xb0&\\xb7c`C(\\xdbc\\xd3\\xed{&\\xa3J(iWQW6\\xbc#\\x89\\xea&$\\xe80\\x91D*\\x05@\\x06\\xd1\\xdf\\xfczX\\x93K\\xa2L$x9\\xff\\xa7M6\\nj}\\xaf\\xa7\\xcfzY\\x93\\xf1\\xb2Y(s5\\x89\\xb5\\x18\\xdb\\n\\x9d\\xacL;\\x0c\\nQ|/\\x1e\\x0d\\xd9\\xd6\\xa7\\x85\\x16\\xca\\xa5\\xcdR\\x14\\x12\\xdc\\xd5r\\xfaMz5?\\xddX\\xdc>\\xd1\\x91\t\\xcd&>\\xb2\\xc1\\x16\\xd8\\xf5\\x96%\\xd3b\\xcb\\x12\\xa6*\\xd4\\x82\\xbc\\xdd\\x11r\\xc8j\\xd8\\xben\\xd2E\\xa4]v=\\xbbA\\xd2\\xc1\\xc0F\\x04\\xec5\\xe6\\xcb\\x07\\x99\\x13\\x94\\n\\xb3![\\x99\\xfd\\xdc\\xebdq\\xb5\\xae5:u\\x9c\\xcd\\xcf\\xd2F0\\xc5\\\"8\\x0b,\\x98\\xc9\\xa2\\x8b\\xdb\\xe8=gHS+NB#\\\"\\xf4\\xeb\\x1c\\x8d4U\\x98\\x1a\\x0b\\xfci\\xb0\\xc0\\x81\\xb7[j\\xb1 7O\t~eX \\xc3\\x98-X\\x907aA\\xca^c\\xd1\\xf3b\\x81\\x0d\\xcb\\xd5\\x96\\xa5So\\x19\\xfb\\xa6\\x89F]\\xed\\n-\\xa5#\\xca+$\\x84d^r\\x14d\\x8e<\\x00\\x90Kq\\xf5;\\xe8+$\\x1b\\x9e\\xc3\\x11\\x16\\x81\\x8a\\x87\\x98\\xb7\\xf2\\x14\\xf7\\xeb!\\xa7\\xfa\\xaf2\\xa9\\x97\\xfeT:'kT\\xca\\xc9\\xdae\\xc1\\xcc\\xf6\\x85\\x8d+7\\x17ww.\\xdc\\xdc\\xdc\\xd8\\xdc\\xdd\\x9c\\x90oY\\xfb\\x95e3\\xb1-\\x9f\\x9f\\x9e\\xd1L\\xca\\xb3v+\\x1dF\\xfbe\\x84\\x17\\xa8Q\\xda;\\xfbx\\xc4P6\\xb6V\\xaf\\xad<\\xefH(B'&Op?\\x89F\\x17\\xb7;BW&\\xa5\\x80\\x90\\x0c\\xc4\\x80\\x8b\\x1c\\xc1-x8CV\\xbe\\xe4\\xc4\\x1d\\x1c\\xf8n\\xd4%\\x1ef\\xc9\\xe16\\xbf\\xdd\\x9e6\\xe3\\xba\\x96\\x0dP\\xbaN\\xdee8\\xb0U\\xff\\xe4,\\xaf\\xcf\\xd6\\xe46H$t\\xae\\x06\\nIe\\x159i\\xc1\t\\x17T*\\x939\\xcfjl\\x0c\\x95T\\xab2\\xc7H\\xe9\\xa5\\x1d\\xbf#W,\\x92[\\x1c\\xda\\xcdG\\x85\\xa9\\xac\\x94\\xdf\\xd4\\x9a\\x97\\x87\\x95\\xc2}\\x8aq\\xca\\x93.\\x86\\xa9\\xb9R\\xebFC\\xfca`\\xaf\\xab\\x19\\x96u\\x9aLm|\\xdb\\xccET\\x0e\\xbbL\\xd5ot\\x9f.xe^?*H3\\xb7P\\xce\\xa6\\n\\x8f\\x93\\xf5\\xb2\\xc8)?\\xdaS\\xf7Ls\\xa7S\\x1e\\x96\\xda\\xba\\x1b]\\x98j[\\x7f\\x98\\x98\\x11B\\x066\\xc3y,\\xa1\\xb7\\x10\\xad\\xa6?\\x8a77\\xc4\\x9f\\xf3/\\xe6D\\x86\\x92Q\\xdb\\xcfaX\\x97,\\xd9\\xa9\\xf1u2\\xe7\\x10\\xde\\xeb!o\\xfd\\n\\xaa\\x17u \\xcfH\\x95\\x14$z]$\\xd6T\\x96\\xc6\\x81\\x15\\x96\\x88\\xd7\\xb9\\xd1-\\xe7\\x05\\xac[\\xaa\\xb5\\x8d\\xf3\\x1b\\xbb;/f\\x81,\\xc4hf\\xdf\\xcf\\x86\\x97\\xf2\\x0c\\xaeG\\xa6\\xc8\\xa8h\\xc9\\xe4\\xd5\\xf8\\x8c+\\x9f\\x81\\xc0\\xb2\\xda\\x10^\\x0b\\x9a\\xd5\\x98N,\\xb8\\x96L^\\xc0\\xa5\\x8d\\xf5s\\xab\\xe7w\\xb7V$/z\\xde\\x85l\\x1a\t\\x18\\x16,\\xdcG\\x8d\\xea\\xb7+\\xc0t\\xc1\\xf6\\xb8\\x04\\x83\\x94s\\xf2\\xd3E\\xb3x\\x90\\xd4\\xad\\xfaO\\xaf`\\xa9\\xe7\\xa2d\\x0bLY\\xe0\\xbe\\xa4\\xd2\\x0f\\x94\\x98\\xee\\xd9\\xc3ug\\xc4S\\\\q'2}H\\x90`\\xd5a\\xa9\\x9a\\xe5\\xb8i\\xdbS\\xde\\x0e\\xdb'\\x89t\\x15)\\x08\\x95\\xa1 o\\xc3),D9J\\xb4z\\xbe8\\xe2\\xafDV\\x1a\\xab\\x04B\\xf5\\xc7\\x8a\\x9a\\x05\\xcb\\x967\\xcb\\xe2\\x01\\x19\\x82\\xec\\x90Z\\xe5\\xe8\\x08enr\\x1f\\x8a\\xbc#\\xd9\\xa9\\x83p\\xa6v/'\\xf7\\\\\\xd3\\xf1tb\\x0b\\xd2\\xa2l\\x0f\t\\xb4\\x8d\\xec\\xe4\\x80\\xecT\\xfb\\xcaQh\\xe4\\xa05?\\xcd\\x88\\x90\\xc5\\xca\\x96\\x8b\\xe7\\x16\\xb4\\x18\\x12\\xb6\\xa2\\xa9\\x84-fD\\xaa:\\x81\\x8b)\\x9c\\xae\\x17\\xbaXIYt\\xac\\xe2c\\xb9T.\\xc9T\\xd2\\x95/%\\x86\\xe0\\x1b\\x9b\\xa7\\xc3vn#\\xb9]\\x9c\\x17\\x91\\x92\\x12\\xeb\\xe1o$\\xa7S#@H\\x11\\x80\\xce\\xcb\\x8d\\xc24\\n\\xf8\\xcc\\xbe\\x93\\x84\\xed\\xd6\\x95\\xc5\\xad\\xf5\\xd5\\xf5\\xf3\\x0b\\xcc>2?e\\x1e\\x8f\\x13\\xee:\\xe00\\xeb\\xb1}?\\x08X\\x8f\\xeb0\\x1e\\xed\\x91\\x19\\xf2\\x83\\x8c\\x8d\\x9c[Q\\xc2\\xc6<I\\xfd(\\x9c\\xb1]\\x91\\x99;\\x06;b\\xd6\\x0b\\xc9\\xd3\\xa2\\xa1\\xa4\\xe1_\\x06\\x0d\\x9b\\x11\\x82\\x7f1<g\\xa5\\x0dz>\\\\g\\x9aB7\\xe2;\\xd3\\x04\\xbb\\x11\\xe7\\x99\\xce`,I\\x98?\\xa1W\\x1b\\x8f\\xc1\\xbf\\xca\\x9b\\x039PF\\xa9\\xba(\\xd7\\x95T\\xd0\\xbc\\x97^b\\xed6\\xbcp\\xa1$\\xe3(\\xe6i\\xab\\xd3\\x99\\xd9\\xe3_h%\\x99\\xf4~v\\xa30s\\xfc0U\\x17N\\xb2\\x87T\\x8bI\\xdc\\\"w\\xeb\\xdf]\\xe5\\xc1\\x98+I(\\x08\\xa2}\\xeem\\xc3\\xa8\\xba,\\xed\\xa8\\xe46\\x99\\x84\\xfb]f9\\xe9\\xba\\x1d\\x1f\\x9e\\n\\x95\\xb9\\xcd\\xec\\xf4\\xc0\\xaf\\xa3\\x07\\xddI\\xa2B\\xfdbh|u\\x92\\x81\\xbc\\x08L\\x0b\\x07\\xb79V\\xcd\\x15f\\x8a\\\\\\x9f\\xbb\\xc1^\\xab\\xfes\\xa1\\xe9TMEtT\\xa16\\x18\\xfa\\n\\xaec\\xe7~e\\xc6\\xa3\\xfa\\xecL\\x9f\\x84\\xdc\\x1c\\xf14\\x1a\\xf1)\\xc5fSG \\x1e/\\xe1\\x9b\\x9f\\xa4Y\\xbb\\x06G\\xac\\xb2t\\xd3.V\\xe4\\xbf\\xc9\\xfc}\\x82da3rh\\xa2\\x84\\xb8\t\\x92D_$\\x13\\xa9\\xeeg1\\xa6\\x06\\xe2\\x0b\\x9b:\\xe3\\xa7\\xe2?\\x10\\x1b|\\xe4H\\xa6\\x8c\\x95\\xcf\\xbd\\xcf*\\x97#2\\x9b\\xf2\\xce\\xcc\\xc8\\x89\\xa7h\\xa5\\xd4\\xd2\\x91#!\\xec\\x7f\\xddv\\x1b\\xaf\\xd1#s\\xb6\\xad\\xd7\\x87\\x0b\\x99W\\x19E\\x84\\x8a\\xa2\\xf0\\xa5\\x11A+F\\xe5]\\xff\\x16\\xfbFhD\\xfc\\x80\\xbb\\xb9\\xf4,\\xb0j!]\\x95\\xe5f\\xfe\\x94E\\xd7\\x90\\xd6\\xceH2\\x88\\xa4\\xaa($\\xcd\\x8aB5^\\xb8\\\"\\xe1\\x17\\xe3\\x99R/\\xad\\xa0\\xb7]\\xcd\\xcf\\x9a\\x04)|\\x9aj\\x9f\\x83\\x89\\x94\\x1a\\\\\\xe7\\x8e\\xe8\\xa8\\x0c\\xd6\\xd90\\xaayr,\\x97%\\xa6x\\xc1M,C\\x968\\x0d\\xcf\\xc9\\xd6\\x1f\\x95\\xe2\\x80/(\\x03\\x90>\\xeeb\\x9f\\xaa_\\xd4\\x89\\xae\\x97\\x1eJ\\xd4\\x7f\\x81%5*\\x88\\xdc~+hb\\xfb\\xe5W\\xdd\\xca\\x1d\\xe0VMS\\xf6s_K\\xc8x\\x1b[\\xa9\\xac\\x0d\\x80\\x93_\\xcd\\x1by\\xb0\\xa3\\x0b\\xcc\\xb1\\x83K\\x0f\\xde\\xd4\\xd8(\\xcb\\xaf\\xe6X^\\xbf\\x95rJ\\x1d-\\xfa\\x86P\\x89/\\xe3\\xf1\\xd2\\x0f\\xebnB\\xd3\\xa1\\x94\\xd8Vn\\xe7N\\xf0}~\\x08(\\x86\\xbe\\xd1\\xf5\\xaa[*j?\\x917G\\xdf\\x80\\x15\\xa4#K\\xdba\\xfb$y\\xe7:2>\\x16\\x13\\xfd\\x8dj\\x05I>\\xd3\\xb7\\x10\\x16{\\x82\\x02\\xf1\\xf3\\xa2\\xfd0\\x98\\xd2\\x1d\\x89Y\\xc8emj\\n\\xfd+\\xf4D\\x9e$\\xea\\x02\\xb9Y]aZQ\\x9at\\x8d\\x8c\\x7f\\x8e\\xa94u?\\x10\\xf8Tp\\xfb\\xc95\\x02I\\x9f\\xfb<s\\x1b\\xdc\\xd2\\xf5OF \\xb6;\\xe8\\xc9S\\xfc3\\xd6\\xb8~\\xb3\\x0c\\xac\\x7f\\xbe\\xcc\\x01]r\\xd4\\x84\\x04p\\xf2\\xdd\\xac4s\\xb2<\\x95\\x89\\xeagg;\\x85@\\x97\\xc7\\x9e\\x93\\xf1\\xb5\\xc8\\xf1\\xfcp\\xb0-\\x0b\\xb5[\\xca\\x85\\xb1\\xd3\\x05o\\xc4\\x9da\\x12\\xed\\x87+I\\xd2F\\x9am\\xc8\\xf7\\xa1\\x8fv[p\\xb84u\\x06\\xbc\\xdc\\xdd\\x0e?\\xc8:\\xe619\\xde\\x98\\x85\\xa8\\xfcK\\xa3<q\\xf9\\x02k\\xc9\\xe5lM\\xacs\\xb7\\xa3\\xe2\\x98\\xdbG\\xccLq\\xb2XX\\x8b\\x97^\\xaa\\xa7Tu\\xbf\\xe6\\x0c\\x9d\\xf8\\xa7\\x0f\\xdc$\\xc5\\x1a\\xff\\xe4e\\xdd\\xee\\xd6Z\\x8b\\xf9a\\xf1\\xae*{M6&\\x16zwk\\xad-3\\xee\\xc8<\\xdf\\x9e\\xf2\\x10U\\xe2\\xe7\\n\\x84\\xcf\\xb6[\\x8e\\xd0\\xba\\x87\t\\xef\\x83\\x83\\x91\\xbc6L\\x17Z\\xe54\\xb1n\\x04N\\xe5\\x1a\\x04\\x9a\\xbd\\xeap&\\x88\\xe0M-Sv\\xdae\\xd2\\xbf\\x1a+H\\x81+\\xad\\xcd(M\\xa5c\\xe8\\xc8?\\xe0\\xde1\\xfd\\x1a\\xbb\\x9f\\xa69\\x7f\\x8d\\xed\\x0c9\\x8b\\x05\\\"\\xed;)\\x13$\\x88{,\\x1a\\xf3\\x84\\xc1x\\x8f\\x1fg\\xbd<c\\x0e\\xf8\\x92\\x163:\\xcaZ\\xc7\\x8f\\x8bE\\x92\\xf5L\\x14\\xf2\\x0c[\\x1arw\\x0f|\\xda\\x0f\\xa3\\x9c9\t\\x87\\x98\\xb4,\\xe3\\xa38\\x93\\xb1\\xdf\\x91\\xec\\x07\\x86\\xc3\\xd4pfZS\\xa3k\\xf9\\xf7\\xbc\\xa8[\\xfe\\xd9\\x1e\\xbco\\xfa\\xa9C,1\\x0d\\x1d\\xd4\\xb0\\xde8\\x82\\x7f\\xf6\\xa8q\\xdbO\\xd2\\x97\\x99(\\xf1\\x07~(\\x11\\xca\\x825\\x00\\xfd\\\"8\\xe3O\\x873n\\x12\\xa5\\xe915\\x88\\xf6\\xd2\\xc6\\xd6v\\xa7\\x8c9\\x02\\x014\\x100D\\xfd\\xeb(ku\\x8a\\xa0\\x86\\x91t\\x1c\\xcf4\\xaa\\xc9\\xa2\\xb5\\xb3\\x91u\\x0bD\\xe2,\\xe5\\x89@HX\\xffT~r\\xa3$\\xe1n\\xc6\\xbe\\xbd(_l=\\xb6\\x14\\x85Y\\x12\\x05\\xc7\\x16\\x85\\xd4r\\xec\\x0f\\xbe\\xcd\\xf4c\\x9b\\xff\\x08\\xd0\\xaa\\x8aJ\\xfe\\x8bF\\xa5\\xe9\\x92\\x11\\xe3\\x1f,\\xf6T\\xc5'\\x0f\\xe3\\xae\\xf5\\x153\\xfc\\xab\\xe1\\x8ei.\\xb7\\xb8%\\xa3>\\xa0\\xc4v\\xcc\\xddv6\\x93\t~'\\xf4\\x8a<\t\\xda\\x9d\\\"\\x93\\xbf.\\xb6\\x9b\\x04u6\\n\\xfdk\\x1e\\xbbL\\x14#8\\xac\\xea\\xa2[7\\xc6\\x00\\xfe\t,\\xdc\\x0d\\xb8\\x934\\xbc\\x8d\\xa1\\x7f\\xcf\\x83dB\\xfe\\x0f\\xa6h3O\\x82\\x05[\\x9e\\x16\\xfc\\x13\\x03\\xde\\x96^\\xd1G\\x1a\\x1e<\\xd4?\\xf5 \\xe9j\\x98\\xf1\\xc4\\xe5q\\x16%\\x0b2=\\x0f\\xfe*\\x96j:\\xf9\\xb5\\xfc#w\\x8du\\xbf\\x1a\\xef\\xee\\xf2/\\xe1i\\x1c\\x85)'C%\\x9f\\x7f\\xfbcu\\x13\\xee\\xf10\\xf3\\x9d ]`\\xad\\xd4\\x19qEg\\x1b\\xe2\\xe0\\xf4O\\x91\\xb7&\\xa7\\xf6\\xf2OP\\xc98[\\xa8\\xbe\\xe2y+\\x8d\\xc2\\xee\\x1f\\x1c\\xff\\x83\\xc9\\xe4\\xad\\xf9\\x94\\xdc\\xed\\xccdC\\x1e\\xb6\\xfb]\\xd6o\\xb8$\\xb0Bj\\x96\\xc9r\\xc8\\xa6\\xd5\\x8c\\xb4@x\\x1d\\xa2\\x1d\\xcc\\xd1\\xec\\xb2V\\x11*\\xa4i\\x8a\\xf9\\x08zG\\xab\\xe1\\x0d\\xf4\\xaa\\x1553&Nx\\\\N\\xdf\\x01r\\x95\\x11G\\xfcg\\x01\\xc4p)\\x90Ws\th\\xdf\\xa8\\x92\\x1d6\\xebLdT\\xd9a,\\xa8\\x85\\x90\\xb5n\\xc2\\x02\\xddT\\x93\\xbb\tB\\xf8\\x04\\xbcQ\\xae#\\xb6\\x04n\\xfaW\\xb3I\\xe4\\xab\\xcd\\xff\\xb9V\\xb7\\x0d\\xaa\\xdbh7\\xe3N\\xb7\\xb9\\xc6)\\xa2\\xce\\x8c_\\xfe\\xddm\\xb2\\x0c\\x97\\x7fU+qe\\xb8pc@\\xcc\\xd4\\xfag\\xbb\\xd9\\xb0\\xda5i\\xe7\\xd3\\x04\\xd8L\\x8a[113\\x8d\\xd9!u\\x10N3v\\xd5\\xa3\\xd5B\\xb3\\x0d\\xd8\\xf6S\\xb3\\xb6\\xbc.g<\\x98 \\xd1)]\\xf0nQD\\xe6;m&=\\xf5\\x98\\xdc`\\xed,\\xa2\\x88j\\x1e\\xa0\\xa2\\x9b\\xfa-\\xfb\\xbf\\x90\\xb5k\\x82\\xe7O\\xf5\\xab\t\\xca\\x99\\x9f:&\\xe7\\xab\\xf2\t\\xfa\\xed\\xda\\xe5\\xbe\\xace\\xf3\\x85\\x9e\\xa4\\x1a\\xf32\\xab\\xe2M\\xdf\\x8e7\\xf6\\xba\\xea\\xdai\\xbaH\\xb9t\\xe6EG\\xca}\\xe9x6j7u\\xdba\\xfb\\xf4\t\\x12\\x9c\\xa6\\xee\\xa8N\\x9c\\xb0\\\\R\\xc9\\x00NZ\\xc5Q\\xa0\\x93\\xb3\\xb3\\xb6P\\x04\\x00\\x11\\x0bm\\xaa\\xc6pr\\xb6\\xe6\\xecXB\\xb9\\xfe\\xe9\\xc5\\xb3}\\xcd\\x01\\x18c\\x95T\\xb2\\xda\\xc8\\x80gk\\x91\\xeb\\x04 `-4\\x9b\\x03\\xb5\\xf7\\x834K\\xc4N\\x92\\xf2\\xab\\xceHU\\xed\\xb4\\x0bi\\xa9q,\\xbf}bf\\xec\\xd8g\\x0fw\\x130Tk\\xfb>|op6\\x85\\xf3S\\xb9v\\xc0U'^w7_\\xa2\\x96\\x169\\x9b\\xe9\\x87`C\\xef`E\\xb9\\xee\\\"^O\\xe9\\xb9\\\\#\\xac\\x06*}\\x99[\\xb9*\\xa0\\xf2\\xb7<\\xb7\\xe6\\x9cFh9\\xda\\\\)\\x1f~\\x97\\xf96\\x03\\xbf9\\x0d~\\xfd\\x1dIh5\\xe2\\x87U#>{\\x8d\\xb5\\xa3&\\xfb\\xbdR!:\\x02w\\x9f\\xab\\xd8n\\x12\\xb4[\\xe2CU\\x89\\x08KV\\xfd\\xc2\\xa8?\\x93'\\x81@2x\\x81]HH\\x99\\x8a\\x84#\\xe7%\\x04\\x03\\x89ED\\xfd\\x06\\x9f\\x9f2\\xe6\\x0fx6%\\xa6q\\x15\\x0d\\x83\\xdf\\xdf\\x94\\xf6\\xfc\\x05\\x19J\\xf8\\x0d\\x9d\\xa5v\\xef\\xe8*\\xe1q\\xde\\xf6\\xda\\x9f\\xf4\\xf0\\xf0\\xbf\\xbc\\x87\\x07e\\xb0u\\xb1~\\x82U\\xdb\\xef>e\\x00\\x91\\x8e\\xad+\\xc5sE]\\x96\\xce\\xecn./\\xee\\xac\\xdc\\x84\\xd8\\x86\\xed\tA\\x0df\\xef\\xe0\\xb9\\xf1j\\xb4J\\xa1\\x04\\xd0P\\n\\xdc\\xeb\\xce\\xc6\\xf9\\xf3k\\xd3\\xf6\\xfa\\\\1)8U\\x89\\x19\\xb2\\x8a\\x05;\\x82\\x02=\\xa2o\\xc2=\\xf7\\xf3\\xc9\\xd3\\xd7\\x0d[\\xb5\\xd9\\x1f\\xa6\\x91\\xad\\xa7\\x90o+\t\\x16\\xea\\x8b1e-\\xe0\\xf8\\x15\\x8d\\xe7\\xd09\\x9f\\xfb\\xbe\\x91C&\\x1b\\x95c\\xb4[xtNa\\xb2f%\\x84\\xda\\xf7C/\\xda/.3\\x86NZ\\x93\\x00\\x0d\\xff\\xb2\\x99\\xc09\\x8c\\xf2L\\xc7uKJ\\xbe\\xccy\\xbc\\xe6\\x87{\\x17\\x9ct8\\xcd\\xfd\\xd2\\x04\\x1b]-\\xf4K\\x98|\\xc4\\xae\\x9a\\xfc\\xb6\\xb5\\x1b[\\xf2\\xcc\\x99\\x90\\x06\\xc4$\\x1d\\xdaq\\x06\\x0b\\x85\\xbb\\x10\\x1dJ\\xe5\\xcb\\xdd\\\"\\xd1\\xacEUq\\xa4\\x9a`UU\\x00\\xf4\\xb2-|\\x07@\\xdf\\xb1+\\x17\\xce\\xd7'W\\xff\\xf6\t\\x89\\xbc\\xcc\\xd8v\\x93(\\x08v\\xc0\\xf5.U\\xffPw\\xe0\\xf2[\\xc2\\x1d\\xefp'\\x82r\\x8a\\xb8\\\"\\x1c\\xae\\xd45!X\\xcd\\x0e\\x8f\\xfd\\xda\\xb8\\xf6\\xbe5\\xf2\\n\\x0c-'g\\xb1\\x97d\\xaej\\x9c>AR\\xa34\\x86\\xb6c\\xde(\\xdf\\xa0l\\x07V\\xac\\xe8\\x7f}X\\xc1\\xd4*\\xc5\\xe5e\\x9cH/\\x0b\\xc67\\xc9\\xcf\\x06\\x9c5\\x81&5\\xc4\\xbdLKp+\\xef\\xf8c\\x0f{\\xd8h-\\xafU\\xde\\xc2\\xcfT\\xee\\xe3\\x08r\\x1f\\x17\\x9e\\xf6y\\x8d\\x99\\x1e\\xb2*V\\xa9y\\xd4\\xe9\\xb2\\xb0\\xdd\\x91\\x8f0\\nT\\xf4\\xc3Ag\\x8aG`\\xc5\\xfeG\\x13#D\\\\Yj\\xae\\xe1\\xd6 0O@k\\xa14\\x10Bi \\x84\\xd2\\xa0\\xa1\\x9eV\\xa6\\x13!\\xef\\x8b\\xe3#+\\x9fK\\xa2\\xd1j\\xba=\\x8c\\xf6\\xc3\\xef\\xf3C\\x89\\x88u\\x0d\\xc8\\xdca}\\xf4:ls\\x7f1\\x8d&\\xeeO\\x8e\\xa5\\xf1\\xd8\\x19\\x16O\\\\\\xa9\\xa1,\\xd5\\xb4Rr\\xc0n\\xa7\\xac\\x9e:B\\xcc\\x12\\x93\\xef\\xc8\\xa4\\xa2\\xf5u\\xe7\\xe5\\x9d\\x8cyX\\xf65\\\\\\xbb-\\xe3\\xd0\\xe1\\xcaA\\xd3\\xa4M'\\x83v\\xd9Q\\xe6Iw\\x16\\xf1\\xd7P\\xaaTs\\xd5\\xf6^z\\xe9\\xb9\\x1b\\xac\\x8b\\x84\\x98\\xea.\\xbe\\xaa\\x07N\\xff\\xb2Z\\x95hT7\\xc4\\xc3\\xf4\\xb7\\xf9j\\xa4\\xd6\\xd8\\xca\\x8a\\x8b( \\x107\\xa1\\xcd\\x9bYTs\\xfdd\\xae\\x9dp\\x1eIE\\x06\\xafs\\xfaTW\\xe3T\\x86\\xb5\\x0cf\\xaa95[GX\\x85RV\\xe4\\xb2z\\x0c\\x9f\\x92`2\\x85\\xe6`z)\\xa8p\\xa7J\\x9f$\\xbbh\\xc2\\x8f\\xb1\\xc9\\x06\\x04\\x0f\\x90\\xcc5\\x1c\\x8d\\xd6\\x11\\xf08\\x13\\xc4\\x8c\\xe9\\xcc\\xf9\\x91\\xa9\\xd8\\xe9J\\xc4o*\\xd1L4|\\x9c\\xf9w\\xfah\\x12\\xfd\\xd3'\\x9e\\xebwhT\\xba\\xdd\\xf6\\xf1\\x9b\\xc7\\x07]\\xd6b\\xad\t>\\x1c\\x13(\\x94#\\xe9\\xa8o\\xe8\\xa6\\xa0\\xa2\\xbb%\\xaa\\xda\\xf6\\x1b\\xe6\\x18J\\xfe\\xdav\\xba\\xf0\\xdc@h\\x8eP\\xdby!\\xe7rl\\x95\\x9f&2\\xf3\\xa9,l\\xac\\xe2\\xf7\\x8b\\xd0S\\xe0\\x9f\\x96\\xeb\\x043\\xa9Y\\x03\\xd7xi\\xf9i;\\x01\\xfd;0Z:\\xef\\x80\\xe1:D\\x1a\\x0c\\x92\\x11%g\\xc7e*\\x92\\xa5-t\\xacq\\xddF5\\xb2\\xe8\\x8b[\\xb9f!A\\xca\\xbd`&\\xec\\x87\\xc5Zn:\\x89\\x98/\\x17\\x92\\x8cY9u\\xd7-\\x0b\\xc8G\\x1eg\\xb2\\xa8\\x96\\xac\\xff\\xd68\\xc4@\\xae(\\x96\\xf7\\xa7\\xb1\\xd7O\\xc3%d\\xbb\\x8aWP\\x87\\x1340\\xbb\\xe5\\xa9\\xda\\x8d=\\x9e\\x01m\\xc4\\x94f\\x04M\\xf0\\x8d\\x97\\xaf\\xfeC\\xe1U3\\xe5\\x97\\x84|\\x14\\xe7\\x19\\xf7\\xb6\\xb3\\xc3@\\xe6#\\xae\\xad \\xd6\\xb4\\xe5\\xf4\\xd2(\\xc83\\x95S;\\x99\\x89\\xa3T\\xc6\\xea\\xd4W\\x93\\xf1\\xf7\\xec5v\\xbc\\xed\\xe4Y\\xf4#X\\xc7\\x1f\\x0d}\\xcf\\xe3a\\xe78[\\xa8\\x02:\\xc7\\xeb\\x99O\\xab\\xef\\x1fp\\x0f\\xf7\\\\\\xbc\\x90f\\xafidx\\x99^\\xf0U\\xf9\\x1fG\\xf0\\xe0b\\x91^\\xad\\xa7\\xd221\\xbdm\\xa5\\x9cN\\x97\\xb5\\x8f\\xc8wTZi\\xe6d\\xbe\\x0b\\xae\\xd3\\xe5\\x81\\xbd\\xf4\\x12\\xf3eZ\\xe0v2\\x13\\x8dy\\xd2\\x0f\\xa2}v\\x94\\x15\\xff\\xb8Z\\xf9\\xd7\\x1b\\x9d\\xc2\\xdd\\xde>\\x17=\\xd3IX\\x88\\x14\\xc5\t\\x960\\xc0\\xf3\\xdaT\\xa9\\x93\\x8d_\\x88\\x96-\\xb0\\x86D\\xe7\\xba\\xec\\x02\\xab\\x89q\\x13\\xbf\\xcaQ^`\\x83\\x06,.\\xb3\\x9f\\x056\\xae/I\\xa4\\xae\\x056\\xb4\\x13\\x1f{\\x1b\\xa5{\\xe9\\xfa\\x95\\xa8r\\xa6i\\x1d\\xbf\\x18\\xc3\\x9e<i\\xd1H\\x83\\x08\\xd1\\xe0)R/3LIX\\xf4\\xaf\\xec\\xa4_R\\xaf\\xb2\\xc9\\xea\\x15SDfr\\xba\\x02\\xa6o\\xe0\\x1b\\xd5,V\\xacR$\\x939\\x16\\x8fP\\xb4\\xe0\\xb9\\x9f\\x1blA\\xbe\\x99W\\x06\\x1d\\xcb\\x9c\\x81\\x00\\xcb\\xdc\\x8e\\xf6\\x97uY\\xf3R\\xd6\\xab\\xb1/l)\\xb1\\xdb\\x81\\xed\\xf7\\xfcK9\\xb9$\\xe4\\x89\\x98\\x9fn\\xd1\\xcb\\xeb\\xcd\\xe4\\xfb\\xaf\\xaf\\xb1\\xebQ\\x979bi\\xf1\\x8a\\x17\\x05&-\\xfc\\xf3\\x9c\\xc1\\xc2\\xd9\\xa4!O\\xa2E\\xbb\\x9b~\\x9f*\\xd7$\\x95c\\xd8-\t\\x94 DZoz\\xca?{\\x02-\\xab\\\\\\xf1\\xdc\\x0e\\x7f*\\xb9\\xc5\\x14\\x94\\x02\\xf2g\\xd9\\x17t\\xca\\xdb\\x0d\\xa1H,\\xb0\\xd8\\xde<\\xf9\\xfa\\x8f\\xe5\\x92V\\xd9D\\xa6\\xf1K\\xe0\\xec56\\xf4\\xd3,J\\x0ee\\x86\\x8fm\\xc1RUVr\\xe5\\xad\\xfb{\\x10\\xb9\\xc6\\x16\\xac\\xd7)Bvj}CWb\\\\\\xcaTo\\xbdn\\x90\\x1eP6[\\xb6L\\xf5]\\xe7\\x18e\\xcd\\xe5-\\x00\\xe4\\xde\\\"U\\x80\\xd9\\xb2\\xca.>\\xccM\\xef$\\xf5UZ\\xac\\xed\\x01\\xb4_\\xd4{\\xa44\\x8b&\\xa9\\x1e^;\\xf1\\xbb,\\xb7SgDX\\xb2\\xa1\\x9fvY\\x9d]\\xd5\\x08\\xc1\\xa9\\xd5\\x90\\xed\\x1aCv\\xda\\xe9J\\xeb\\xed\\xec\\xab\\xac\\x0f\\x8f\\xf8\\xf5\\x8f\\x1e\\xed0\\xf7z\\xbfj\\xc8\\xee7\\xbf\\x16/\\xd8\\x9cO3\\xa7\\xc2 \\xe5\\xbb\\x83\\xc1\\xcc\\xcd\\x9b\\xd2\\xb9\\xec\\xe6M\\xed\\x12]\\xf2)\\x0f:\\x1d\\xe9a\\xa6L\\xe2\\xbc\\xcb\\xae\\x8b\\xba&\\xc9\\xb2\\xdb\\xe9\\xc8\\xf0\\x99(\\\\\\x8b\\x1co\\xa2\\xfdL\\xff4\\x07\\xf6g\\xe2$\\x8a\\xd3\\\"\\x93\\xc2L\\x16\\xc1\\xc1j\\xca5\\xc0\\x14\\x17F\\x92G8\\x939\\x83\\xae|\\x04U}]\\xf5\\x1a8*\\xbe2\\xadH\\xb0\\x82?\\xd4\\xe9\\xc4p\\xc3\\x10\\x12G\\x02{V\\\"J\\x96K\\xe6\\xe9\\xbc\\xb4\\xd2\\xf06<\\x92I\\x82.\\xaby\\xf6hO\\x88=\\xad\\x84\\x87\\x1eOj\\xcc\\xa6\\x8a\\xdaL\\xbc]a\\xc5\\xa0Rdq0Q\\xaai\\xec\\x84\\x84\\x9c\\xd1F\\xfa\\x0b\\xf0\\x9c\\x04\\xe0Cm\\xe1\\xbb\\xdd\\xda\\x9e\\xb8z\\x90B\\\"F\\x1d?\\xa7\\xab|\\xa3\\xd3E)\\x19\\xee\\xb6\\x8b.\\xcc\\x15\\xf37\\xda\\x87\\xe7\\x1bG\\xfaCi\\x176\\xff\\xfc\\x1d\\xd9/\\xfd~G\\xf6\\xbf8\\xd9\\xb7\\xe8\\x85\\x9a\\x13d\\xce\\xe0\\x0b\\xd3\\xec\\xf0w4\\xfbw4\\xfb\\xab\\xa6\\xd9\\xcf\\xe7\\x1ag!?\\xb5It\\xa28='\\x13\\xb2=\\x87\\xe3R10\\xc4Kt\\xba\\xaf\\x93\\xb3\\xa7-L\\xe3E\\xe5\\xfb\\xfa\\xe6\\xeeG\\xa3\\xb7(\\xc9{gy/\\xa5TA\\xbe\\xd5~\\x86\\x85&`\\x13\\x87\\x0f\\xfc\\x97\\x85\\xa1\\x93\\xcc\\xd4l\\x8a`\\xa8)\\xed\\x19\\xcc\\x04\\xeaB$\\xf9tlD\\xff\\xa6\\xf5\\x1e\\xc2?U/\\x91\\x0f\\xc0w\\x1b\\xbc7'\\xb6f7\\x9a\\x19h\\xb3\\n\\x03\\x13\\xbf\\x98F!\\x9e\\xfc\\x146L\\xf6%\\xe6os\\xe3jwf\\xa2P\\x90\\xdc\\x80g\\x96G!m?\\xb3\\x8c/\\xbd\\xc4Zz\\x10\\xe5@\\xcdP^\\xec\\xa6<\\xdb\\xf1G<\\xca\\xa5\\xbb3<\\xb8\\x7f\\x86\\x1d\\x99\\xeb|\\x95+_\\x0b\\xad1s\\x92\\xaf\\xd3\\xd2Y9\\x15\\xeb\\xa1/\\xefF\\xf9\\xbd\\xc6\\x96\\xe7d\\xce\\x82?r\\x06\\xfcx:\\x1e\\x1c=\\x18\\x05\\xaf\\xf6\\x9c\\x94\\xbf|\\xb2\\xbbya}\\xfe\\xda\\xe1\\xd9\\x13\\xce\\x95\\xadYgy\\xd6\\xbftkq\\xdf\\xbd0\\xf0W\\x97\\xceF\\xd7\\xae\\x04\\xa1s\\xe1\\xf5\\xd3\\xab\\xb7V\\xf7/]8{r\\xd5_\\x1c\\xf0\\xf3si/\\xbctzu4\\x9c\\xf5.,\\xbe\\xbcvx\\xfa\\x84w\\xc2\\xcd\\xbd;\\x97\\xf2\\xde\\x89\\x8b\\xe1\\xda\\x9d\\xd5\\xfdK\\xcb\\x8bc\\xf7\\xc4\\xb5p\\xd5?;\\xef\\\\\\xb9|\\xe2\\xf5\\xd1\\xe9\\x93\\x9b\\xdb\\xab\\xfb\\xab\\xcb\\x8b\\x83K;\\x8b\\xfb\\xab\\xcb+\\xfb\\x97\\x96V\\x07\\xee\\x85\\x8b\\x81;\\x7f\\xf9\\xd0\\x1b]>\\xeb\\x9e8\\x1b\\\\=\\xb1\\xb5}\\xf5\\x8d\\xad\\xb8wg\\xd6\\xe7+s\\xf1\\xb5s\\xc1\\xbas\\xe5u\\x7f\\xf5\\xfczz\\xf5\\x8d\\xf5;\\x9b\\xdb\\x17\\xd3k\\x17.e\\xee\\xe8t\\xda;\\x1f\\xe4\\xd7\\x0eW\\x07\\xee\\x89\\xadS\\xbd\\xf3\\xbb\\xa7WG\\x17\\x87W\\xe7\\xb3\\xd0\\x1d\\x9d\\x9e\\xeb\\x8d^\\xcf\\x9c+s\\xc3k\\xf3\\xbb/\\xaf\\x9e?5\\xee\\x8dv\\xbf\\xb3z\\xbe\\nw\\xcf\\x9f\\xbe\\xe3\\x88\\xbe\\xe6O\\xbe\\xbcz>\\xc8\\xc5\\xdfW\\xaf\\xec\\x0f\\x9c+\\xa7b\\xef|0\\xec-\\xa7\\x83\\xab\\xa3s\\xb7\\x9cy\\xef\\xb0w\\xe2r~mi\\xee\\xf0\\xda\\x1bg\\x83\\xabo\\xbc^W\\xde\\xdf\\xbcup\\xcby\\xe3\\xe2\\xad\\xde\\xf9\\xdd\\xc1\\xd5\\x13\\x83\\xd3\\xab\\xb7v\\xf7W\\xfd\\xb3\\xb7\\xf8\\xce\\xac\\xbf\\xbe\\xb3\\xe8\\xaf\\x9e\\xbf\\x16\\xf7\\xce\\xef\\x9f^\\x1d\\xc91\\xf9\\xab\\xe7O\\x85kW\\xce\\xcdz\\x17V3\\xf7\\xc4\\xd6ao>\\x0b6\\xb7/~\\x87\\xcf\\xaf\\x8f{\\xa3k\\xf1\\xb5\\xc3S\\xb7z\\xf3\\x07c7\\x9c;\\xbd\\xea\\x9f\\xcd\\xaf\\x1d\\xce\\x0d\\xbd\\x0b[\\x87ko\\xac\\xcf\\xba\\xa3\\xd3\\xc9\\xb5\\xed9\\xb3o\\xfcDv\\xab7\\x7fj\\xe4\\\\qso>\\xd8\\xf3\\xce\\x0fO\\xf7\\xb7W\\x07\\xbd\\x91\\x9b]}ck\\xd6\\xf5\\xe7\\x0eQ\\xdb\\x87W\\xafl\\xc5\\xde\\x1b\\xeb\\xb8\\xdc\\x1d\\xef\\xc2\\xc5\\xb13\\xbf\\x9b];\\x7f\\xee\\x8es\\xfe\\xdc\\xa1;:w\\n\\xd5\\xdd\\xbb\\xfa\\xc6zt\\xf5\\x8d\\x8b\\x87W\\xdf\\x08d\\xfdb\\xfc\\xab\\xb7\\xd6wv\\xe7\\xc4\\xffV\\xfd\\xb3\\xa6-\\x18\\x93X\\x93\\x15\\xb1&\\x87\\x9b\\xdb\\xabw\\xd6K\\xf5\\xd6\\xael\\x0d\\xdd\\xf9\\xe1\\xd0\\x0d/\\x0e\\xc5z]\\xda\\xb9:\\xbbvk\\xef\\xce\\xa5;W\\x0f\\xd6\\x97/\\x1d\\\\\\xba\\xf3\\xfa\\xfc\\xfa\\xf2\\xca\\xdc\\xea\\xf2\\xee\\xfc\\xda\\xad\\xbd\\x13\\xebw\\x06'.\\xed\\xbc~g\\xfd\\xce\\xe0\\xf0\\xd2\\xce\\xa5\\x93\\xab\\xb7N\\xber\\xf5\\xca\\xa9\\xb8w\\xe5\\xdc\\xec\\xb5\\xcb[\\x87W\\xaf\\x9c\\xbasmt\\xfa\\xb0\\xb7}V\\xae\\x99s\\xe5\\xe2\\x9cw\\xfe\\xf2\\xc6\\xd5+sb\\x8dg\\xdd\\xd1\\xb9\\xdc\\x9d\\xbf6vG\\xb3\\xfe\\xea\\x85\\xadS\\xae\\xc0\\xa1\\xf0\\xe2\\xd8;\\x7fn\\xf6\\xda\\xf6\\xea\\xe0\\xea\\xfc\\xb9\\xf4\\xea\\xec\\xdc\\xf8\\x9a\\xc4\\xad\\x83\\xb87\\xba<t\\xfd\\xd5\\x817:\\x97zW.\\xdf\\x01|\\xde\\x95\\xff\\xdb\\xb8si\\xfe\\xd2\\xd2\\xe2\\x1c\\xfcou\\xe0\\xcc_>u\\xf9|\\x90]{\\xe3\\xd2\\xe9\\xd5[\\x8b\\xdf\\xb9\\xb4\\xbd:\\xb8v\\xe1\\xb2\\x98\\xf3\\x81{\\xb8:\\xb8:\\xba\\x1c:WN\\x9e^\\xbdu\\xf6\\x8eX\\x0b\\xc0\\xab\\xade\\x81g\\xde\\xf2\\xac\\xef\\\\9\\xb5w\\xed\\xca\\xb5\\xb87\\n\\xc4X\\x8en.\\x9d\\x1e\\xf6F\\x81\\xd8\\x9f\\xe0\\xf2\\x85\\x8b\\xc3^\\xb8>\\xea\\x9d\\xb8\\x98m\\xde\\xda\\x1f_\\x9d\\x0f\\x0e\\xaf\\xce\\x1f\\x04\\xe2oq\\xe66\\x07\\xd1\\x99\\xd67D\\\"X\\x8a\\x82\\xc0\\x89Sx\\xbab\\xcd\\x0f\\xf7\\xe4\\x1f\\xe0\\xcb#\\xff\\\\\\x0d\\xe3\\x1c\\xfe\\xda\\xe1\\x07\\xd9b\\xc2!\\x0d\\xea\\xd9<\\xcb\\\"\\xe0\\x16[\\xd2KX6\\xa5\\xfe+\\xb3}\\xcb\\xb7{\\xeb\\x82\\x11\\xa5\\xff51Ch\\xcf\\xecW\\xac\\xafS\\xf6mF\\x10G7f3i\\xf4mF\\x90T\\x01H\\xef\\x81\\x02\\x10#\\x88\\xab\\x00\\x15#\\x88\\xf4\\x13\\xb7\\x9b\\xbf\\xbf&\\x87m\\xdaqLx\\xbd\\xb10p\\xab\\x85!3\\x16\\x06\\xae^L\\x98}\\x95\\x85\\xec\\xbb\\x8c\\xbf\\xca\\xc2\\xa3G;L\\xc5\\x0d\\x17\\x16\\x86\\x10\\xa9\\xe1jb\\xd9tI\\xa3U\\xe9#G\\xd0\\xac:3\\xb7\\\"?l\\xb7X\\xab3\\x93%\\xfe\\xa8\\x8dEg&\\xb5\\xfc2f\\xd5wd\\x96#\\x9b\\x14\\nLl \\x99R\\xdbSb\\x1c\\xc9\\xa8a\\xa4|G\\xdc\\xe9(\\x99\\x05\\x8a\\x17\\x12K]\\xec+\\x1aIPj\\x0b\\x9e\\xdfE6\\x85\\xccj=\\x98`9\\x98\\xd6j\\xa0\\x11\\xa4\\xd0\\xd6\\xebET\\x95\\x834\\x0f\\x82\\xd4M\\xb8\\xed\\x81)\\xfd\\x0bM\\xc9\\xfa2\\x96\\\\q\\xbc\\xcb\\xae\\xb7\\x8a\\xf6e&\\x9d<\\x08j\\xdf\\x1e\\x93\\xc9\\xec\\x8cg\\x8e[k\\xf5\\xe0 \\x88B4\\xaf\\xad!\\xed\\x84\\xd4J\\xf7\\x9d\\xc1\\x80'\\xc7\\\\\\x8dn2\\xabN\\xc8^c\\xadcr(l\\x81\\xb5\\xea\\xbc\\xc6\\xa7\\x1fG\\x9b>3\\xe97\\x99e\\xdc\\xc0I\\xd3u\\xf9XZ\\xdc\\xf6g\\xcc?+\\xafj\\x95\\x7fw'\\xbb>\\xde\\xe8Tb\\xfd\\xdb\\xae\\xc5\\xceR\\xa5\\xde\\x1e\\xf1\\x97\\x1bE=?\\xe0bI\\xaa\\xfb\\x9c9\\xbd\\x80g\\x0b\\xacu\\x0c\\xfeB`\\x8f\\xa7{Y\\x14\\x0b\\xb8\\xfa\\x13\\x15\\x08\\x9cd \\x9a=6\\xf4JW\\xb3\\xafV\\xe8A\\xf0;J\\x00\\xbf\\xdf\\x1a%\\x18\\xfa^CV8\\xa0\\x01{\\x9c\\xc7K\\x90\\x8d\\xb3\\xa1=I\\x0b\\xf8\\x0c\\xa0\\x93\\xd0\\x02\\x01m\\xba\\xd2\\x9bB\\\"\\x88\\xf8Sb\\x05\\xf1\\xdb\\x90DC\\x0cE\\x90\\x8brw\\xe2\\xdf\\xd0\\xa2|\\xabQ!\\\"k\\x19\\x94c-\\xd9b\\x8b<\tk\\x86%\\x93\\xf1\\xbe\\xf4\\x12;\\x12NAe\\xc0\\xb6*C\\xe8\\x9b\\xa9\\xcc\\xf5\\x1a{\\xb6\\xe1\\xd89\\xf3C\\xe65\\xbb>z(\\xedG;\\xefL\\xd2\\xf6\\xf5u\\x83W\\x1b\\xec\\xa4\\x7f\\xa2\\x83\\x1c\\x1e\\x0d2F\\xdc)L\t:\\xc8\\xa9\\xa85\\xb1'\\xa6z\\x0b\\xd8w\\xd9\\xdc4}0\\x99\\xd4Q\\xbe\\xe5\\xd2\\n\\xa3\\x90\\x0b\\x02=mT\\xad\\xa0\\xea~\\x98O\\x91hob\t=\\x84^\\x10\\xb9{0\\x86\\xae\\xf9\\xe8F\\xc11\\xf9(\\xa5\\xfc\\xde\\xd8\\xd6\\xf3\\xda%t\\x0cW\\x8c\\x0c%\\xd7K\\\\\\xc1\\\\\\xca8u\\x88=\\x11\\x97\\xbf0\\xa7J\\xb3\\xc3\\xa0\\xf6yl\\xfd\\xf3\\xfc4\\x0e\\x9c\\xc3\\x05\\xe9}\\xacv\\xd1\\xf2nG\\xf9\\xd7`9+1\\xc7\\x9a\\x14J/\\x86\\x19v\\x8d\\xc2\\xf3;\\xb6\\xf3\\xe2\\xd8\\xce$T\\xf4\\xfc\\xb1\\x1d\\x0dK|jZ\\xc9\\xa9\\xa8R\\x16\\xa1Z\\xfb\\x89\\x13\\xc7<\\xa9u\\xd2{!\\xd8S\\x1c\\xc4vI\\x85\\xfe\\x1d&}}\\x98\\xd4\\x93\\x8b\\xfeU#\\x93\\xea\\xe5+\\xc5\\xa5\\x8e\\xfe&\\x98?\\xcd\\x91Y\\x1af\\xabF|.\\x19t\\xeaQp\\xd2\\x82f\\xfc s\\x12\\xee\\xb4*\\xb7\\xec2\\xb5\\x936\\x1d}\\xf1\\xc6}\\xd1\\x02j\\xb9r\\x86\\x8c\\xa1j\\xaa3Tw\\xa1Ws\\x80(\\xdb\\xd4\\xe6\\xab/z\\xb0dV6(-\\xc7b\\xe9b\\x08\\x85lo\\x81\\xeb\\xe8\\xcc\\xba\\x17\t\\xd4jB\\x00\\xa7<02\\x15&\\xfc\\xb5\\xc0\\xf8\\xcc(\\x0f2?\\x96V\\xa7\\xeb\\xad\\x96\\xf4\\x0bo\\x89S \\xaf\\xf6j\\xb3\\xac\\xaa\\xa3\\x17Q\\xa4\\xedZ/~\\xf5\\xef\\x1bC\\x13\\x9e_\\xa9Q\\x0f\\x0d^\\x16\\x1d4\\x14\\x06\\xedF\\xafj}\\xb9\\xa4hte\\x14g\\x87\\xb2\\xdd\\xfa\\xe2\\x91\\x1e\\xab\\xdc\\x17\\xd8?\\xf9<\\x12{\\xcd\\xfe\\xbd-\\xb3u!\\xc8\\x17\\x15\\xfa\\xc4\\x81jt\\x0f)Q\\x16+\\xf9\\xab\\xad\\xa8\\x17\\xaa1\\xab\\xac\\xc6\\xb6\\x86\\xe5\t\\x97\\x86N8\\xe0\\xc6?\\x05\\xfei-/P\\x94\\xbdV?\\xdd(V\\\"n\\xfdt\\xd5\\x80Z\\xf6d\\xd6w\\xbb\\xacu\\xecX\\xab\\xa3DWA\\xf6\\xaaq\\xca\\xd3\\x054|\\x99\\x012}R\\x1a\\xa2\tY1\\x91m\\x999\\xb7)}\\xfd\\xddnQ\\xe8\\xb7\\xc9\\xc2\\n|92\\x87\\xac\\xfe\\xd5\\xa3T\\xbd\\xd7\\xa8\\xda\\xab\\x86\\x93BM\\xcb\\xd4\\x81\\x9e\\x99\\n\\x8a\\x95\\x9b\\x9a\\x18\\xf2\\xc9'\\x91\\x1a\\x08\\x9e\\xd6m7\\x93\\x83p\\n*\\xe3K\\xab\\x02\\x84\\xd7+N3\\x939\\xc9\\x80g3\\x80Ei\\x83\\xf3\\xb43\\xe1\\xa5\\x1b\\x01\\x8f\\xd8k\\xcc\\x9f\\xce\\xd0\\xaf\\x7f\\xc6\\xb7\\x06\\xe8\\n\\xb7\\xfb\\x91\\xdd}\\x9e\\xe0~\\xd3\\xa4\\xc4\\xe7\\x9a\\xf6\\x04=\\xd4\\x93\\x97\\xe5\\xba\\x103\\x04\\x81!\\x13\\x0f\\xbbS\\xd3l\\x17\\xdc\\x1a\\x12[\\x88>\\xc2\\xff\\xeaR\\x8f\\x85\\xd0`.\\xd8\\x9a':A\\xe8g\\xbfe\\xc1\\x9f\\x91\\xb9\\xb2\\x17\\xc2\\xec\\xd9d\\x86\\xcf\\x9e\\x83\\xe9\\xb3)\\x88\\xab\\xf3e\\xf4\\x00\\xe8 X`\\xad0\\x8ab\\x1e\\xf2\\x84\\x85Q\\xc2\\xfb<Ij\\x07\\xaf\\x7f\\xd3\\xe8\\x10\\x81\\x1f\\xee5\\x05\\x97>\\x9fCe\\xd5e\\xb0\\xce\\xb6\\xd1\\x8c\\x98c\\xf3\\x04\\x9d;\\xf4\\x03/\\xe1\\x96\\x90\\xeeIK\\x0e\\x9a\\xbc}U'\\x9a\\x8d\\x86\\xdc\\x1f\\x0c\\xe5c\\x13ymR\\x18\\xf1\\xebE\\x89\\xc7\\x93\\x05eUj\\x10H\\x9cd\\xe0\\x87\\x0b\\xac\\xe1\\xa1\\x92\\xd8\\xf1<?\\x1c,\\xb0\\xd9iW[\\xe6\\x15\\x91w\\xf9$\\xbf\\xc8\\xdd\\xaa\\x01\\xa0t\\xf7>\\x95\\xfa\\xf2O\\xc9\\x04\\xb0\\x1ee\\x8b\\xa1?r2\\xee}\t\\xc9_\\xdfN\\x17'\\xccO7\\xc4Y\\xf5\\x1a\\x84\\xc2\\xb1\\x8e\\x19,\\x1fL\\x85\\xf0\\x82\\xb1\\xd4\\xe2v\\x18\\xa5n\\xe2\\xc7\\x99\\xbe\\x00\\x98@6\\xef\\xda\\xce\\xc1oO\\xe5Q\\xab=I\\xdb\\xd1\\x0b8I\\xdb\\xa9'\\x11\\xac\\xb41\\xec5p:\\x0e\\x95\\x8f1,\\xfc\\xc4\\x9dI:F\\xe3!\\xe8by\\xb3\\xe3\\xc5\\x8b\\xa6z\\x15,\\xa2\\xa9\\x1a\\xc6\\x82v\\x00d\\xec\\x9b\\xe1\\xffK\\x9dp\\xbcZ'\\x1c\\xcf\\xe6j\\xe3\\xeb*6\\x1f\\x1c\\xcf\\xe6j\\x93+\\x8057\\xa2gs\\xb5\t\\x14\\x80\\xe4\\xecw\\x15\\xe0\\xf4+\\xa71\\xa8\\xaf@sd`\\xb1\\x86\\xd8\\xfdt\\xbc\\xaf\\xc7OG\\xffE\\xb4\\x91\\xe7\\xa5\\xf5E\\xfcQ\\xd2\\xb5\\xa5 \\xc1d\\xbc\\xd6\\x8c5!\\xee(\\xa8\\xc4\\x1d\\xb9\\xe0\\x15\\xe4B\\xdc\\x91{\\xf4h\\x87\\x05\\xd7\\xdd\\xaaW\\x90k\\xb9\\xe0SK)\\xa8\\x866\\x99\\xe5\\x84\\x11\\x81\\xdf\\x19aF\\x115\\x9b\\xd5\\xc5\\x1c\\x052\\xe6(\\x99\\x19\\xf0\\xecR\\xe4\\xf1@HO\\x13E\\xec\\xd2\\xf8\\x94\\x17?7^\\xfc\\xad\\xdf;^z\\x15\\xfbxKf\\x93+2\\x87\\xfd\\xe1\\xcc\\x1f\\xfc\\xde\\x0f\\xca%~p\\xfcx\\x97\\xb5\\xa4\\x05\\xc0\\xd6\\x96k\\xd2\\xd8\\x1eO\\xdd!\\x1f9\\xa4\\xc9\\x9aB\\xbaQ\\xd0\\xca\\xc8\\x14\\xee\\xaaIo\\xf1\\xfe\\xb6\\xac\\xf2<\\x93N\\x14[\\xab\\xbc\\xbf;\\xd3\\xf7C\\xafx\\xde\\xdbf!\\xb8\\xdb\\x85\\x9c\\x14\\x84\\xa1'\\xc4\t\\xa5V8H\\xad\\xc2\\x81\\xf3<\\xc2\\xc1\\xd7\\xca\\x18Uj!\\xb9=\\xcdJ:\\x9f\\x98\\xff\\x94)2\\xca\\xa7}\\xf9\\xd8\\x81\\xc2r\\x83\\xebK\\xe5\\xb2T\\xc2o\\xe7~\\xd2\\xc4\\x99SY.l4\\xd2\\xb9\\x8a\\xcbo\\xf1~}\\xa1\\xbe\\x99\\xc3f\\xeds\\xf9L\\x11`>\\xa3nz\\x9b\\x8d\\x832\\x8dd\\xbb\\x05\\xecN\\x9e\\xe4V\\x83\\xb9b\\x08\\xa5%\\x95\\x9aXx\\x0c\\x857\\x13\\x7f\\xe4g\\xfe\\x98O\\xac0bgX+\\x92#i\\xd0\\x1e\\x06\\x82\\x04\\xc2\\xab\\x902)\\xd0\\xef\\xff~\\xc2\\xfbuna2\t\\xa9|\\xccx\\x00\\xe1\\x0f\\x1a\\x07\\xcbt\\xab=\\x10\\xb4\\xec\\x88S\\x14sJ\\xc5\\xccIo\\xa7P\\xcc\\xb8\\xa3\\x04\\xb5\\xd6\\xdcI\\xa1~\\xe5[\\xa2\\x91\\x18\\x06\\x93\\xff\\x7f,\\xf3\\xb3\\x80\\xd7Z<_`\\x7f\\xd0\\xd3\\xcd\\x9b\\x19?\\xc8j\\xfb\\x8b\\x05_\\x10\\xbc\\xa8\\xb6c\\x7f4h\\xec7M\\xdc\\x05\\x16\\xb6O\\xce\\xcd5!\\x95V/\\xe7g\\xe3\\x83\\x86\\x8d\\xdf\\xf7\\xbdl8\\xb9\\xd8Du\\x96\\x19\\x15t\\x8d\\xf7E\\xbfs|4\\xe9\\xa5=\\x95\\xbcL\\x92\\xc2\\xc0\\x11\\xd8<\\xa1F/\\xca\\xb2h\\xb4\\xc0Zb\\xb0\\xb5%k\\xe2_\\xea\\\\G\\x04\\x15=\\x94\\x89\\x1a\\xfctcq\\xfbD\\xbbS:\\x07\\x1e\\x8f\\x13\\xeeJ\\xcd\\xad\\xa6z\\xba\\xef\\xcbL\\x84\\xae1:J\\xbe\\xe9\\n\\xa5\\x8c-\\xb0#G\\x06]y\\x06\\xcb\\xa7+;\\x8c9\\xbc\\x997j2\\xf9\\xb8N\\xca\\xcd\\xd9]h\\\\\\x99\t\\x87\\xc7\\xa3\\xb6\\xa1\\xc6\\xe6\\x18Bo5\\x86\\xc6:\\xcfelb*\\xc0N\\x90\\xdc\\x05\\xd6@\\x9d\\xf5\\xaf\\xe0F\\x8d\\xf7)\\xfa\\x07\\\\\\xa6\\xf1\\xa12\\xfd\\x0b\\xe5\\x14\\xa7xL\\xbf\\xc0\\x85\\x05v8\\xb9\\xb8d;\\x0b\\xccm^\\xb4\\xa6\\xcc\\xb1\\xb0\\xff\\x8e\\xe0\\x0b_n\\xfb\\x87_r\\xfba\\x08/v\\xf7\\xff\\xf1m\\xa8\\x96I\\xea\\x1e\\x8b\\xd3\\xbf)\\xf6T\\xbd\\xf8X\\xbf\\xa9P,\\xccG=\\x9eL,\\xe6\\x87\\x19\\x1fLQ\\xae\\x17E\\x01w\\xc2\\x86rZ\\x03\\xfc2\\xc86\\xfe\\x92vh\\xa6\\x91C\\xc9\\xa9\\x13\\xef\\x02\\xd9\\x7f\\xe9\\xd8d\\x85O\\x8c\\xe7\\xac\\xb5\\x0c\\x95\\xb0s(\\xb7d\\xe70\\xe6\\xd4,\\xa4\\xd7\\xa8o\\xf6YZ\\xa2\\xb9w\\xc9\\x89\\xa5Lm\\x93\\xd0\\xab\\x1b\\x17\\x9b\\xaaB\\x97i\\xae\\xa46o\\xca*\\x15\\x95\\xa3\\\\\\x0b8Um=\\xd8\\xcd\\xa28\\x1c\\xc4j\\x99\\x92\\x88?\\xa9\\xa8\\xa2\\xf1E!q\\xc4\\xaaE\\x8a}n*\\xc5\\x0fbG(\\xac\\xb1`\\x87EA \\x00hx\\xd3\\x14*\\xf1VS.\\xf0\\xd3\\xf2\\xc2\\x14\\xa8Q\\x8d\\xa6\\x87L\\xa5\\xbf]\\xfb\\x9e\\x18Q\\xea\\x08\\xdd\\xfd\\x8e\\x0c\\x90\\n\\xa8\\xc1/\\xb7Y\\xd6\\x84\\xe6\\xda\\xce\\xc1J\\xd6\\x95EN\\xce\\x9d\\xea\\xd8\\x8c\\x7f\\xb2\\xd0\\xec)\\xab\\xfdO\\xc2\\xe6N\\xd8\\x0dm\\xf9\\xd7kh36\\xb0\\x19\\xc7\\xf3.D\\xd1^\\xbb\\xd5\\xe3\\xfd(\\xe1\\xdbjy\\x14\\xd9M\\x1b\\xd3:\\x9a{\\xe6a\\xc2\\xfb0\\xcc\\x94g\\x8bY\\x96\\xf8\\xbd<\\xe3m!\\x80\\xb7\\xba\\xf6\\xdb\\xbfN\\xb74LlzM\\xa7q\\x89;\\xfe\\x87\\xd7\\x17\\x8f]\\xfbA:{\\xec\\xf4\\x91\\xd7~0s\\xe3\\xe8\\xef\\x1f\\x1f\\xa8d\\xc5Ug8\\xba\\xda\\xf5i\\x98\\x8a\\x85\\xd1\\x88\\\"\\xf0\\x94\\xae\\xf5\\xe2\\xf2\\xf2\\xcd\\xc5\\x9d\\x9d\\xad\\x05v\\xbd\\x05\\x97\\xe8\\xadj\\x86P\\x92\\xda\\x82\\xd5\\xe6c\\xc2C).\\x11\\xd3(O\\\\\\x8bE\\x00\\xee\\x19\\x1a\\xfc\\x89\\xfcBm8s\\x06\\xee\\x0eZ\\xd2w\\xbc*B\\x08\\x95;mgE\\xd6\\xe6\\xa4N{\\xac\\xbb\\x94\\xach\\xabN\\xb2\\xe7E\\xfbaU\\xa4\\xbbK\\x0d\\xac\\x10\\xbbq\\x86\\x85|\\xbf\\xb0c\\xd6\\x08\\x8f\\xc3l\\x14\\x88clg}\\xd9a\\x1c\\x0d\\x12'\\x1e\\xf2\\xa4\\xbeP/\\xe1\\xce^Z\\x0f\\x0f\\xfcp\\xcf\\xef\\x1f6\\x17\\xd8\\x91\\x9b\\xbc\\xc0Z7{\\x81\\x13\\xeeY\\xd2\\xa8w\\xd4EK;\\xb3(\\xd0\\xae\\xcc\\x12\\x96\\xa3\\x850w</\\xbd\\xc4r\\xf1\\x7fB\\xbf\\xfb2{\\xd0&I\\x9a\\x8a]\\xb1\\x8c\\xcas\\xc2\\x01O\\xa2<\\x0d\\x0e\\xb7y\\xb6\\x1a\\x86<\\xb9\\xb0si\\xadN#\\xbfy\\x13v\\x83*\\x1fHH\\xe8\\xe00\\x85/q\\xbbS\\xce\\x00!\\x88\\xeb\\xec\\\\\\xe7\\xc54V\\x9d\\xe3\\xa2\\xe3\\xe6\\x99\\xc0\\xe2O\\xdeB\\xe6\\x02\\xc7@\\xfe\\x1aA\\x16{\t\\x1f\\x0b\\xc8\\xa7\\x7f\\x82\\xeb\\x18\\xc8\\x8f1\\xc4]`\\xadg\\xf7\\xfeo\\xf2\\xd9\\x93\\xdf\\xff#\\xf9\\xbe\\x02\\xe5\\xff\\xee\\xdf\\xe2\\xce]?\\x11m}B\\xfa\\xd6\\x80\\x7fE\\x000\\x8f\\x8f\\xffW\\xd2\\xd4\\xe1\\x02k\\xfd\\xfd\\xbf \\xe5\\xe5\\xe7\\xff\t\\x97^\t\\xfc\\x81h\\xff\\x1d\\\\\\x9e+\\xc0#\\x0c\\xe8\\x8b9\\xbcE\\x96\\xaf\\x9f,\\xb0\\xd6\\xff\\xf7W?{\\x9b\\x94W\\x80\\xff\\x0e\\xd7\\x18$\\x8e\\\\\\xd6O\\xde\\xc4U\\x0c\\xe4\\xbf\\xc7\\x90\\x80\\xf7\\xd3\\xc3\\x91\\x18\\xc1\\xdb\\xff\\x8e\\xc2\\xe2\\xa1\\x15\\xb2\\x18\\xc4Cg\\x81\\xb5>\\xff\\xafI\\x15\\x05\\xf8\\x9fq\\x8d\\x91\\xe3\\x8aa\\x7fJ\\x86\\xa6\\x01\\x04\\xb1FN \\xd6\\xeb\\xd9Gx\\xd7\\x17/m.\\xb0\\xd6K\\xa4|l\\xf9\\xba\\x18J\\xccy\\xfc\\xe7\\xb84|\\xbf\\xf7!\\xfd\\xae@\\x8f\\x7fNA\\x00\\xf8K\\nH\\x83H>)\\xf1\\xec\\xf1_P\\xe0X\\x02\\xfe\\x1b\\x02\\x90\\xb3\\xbbGvDz\\xa6\\xb6\\x9e=z\\x9f\\x02d\\x94\\xac\\xb5\\xca(\\x85\\xf9`,\\x02\\x90\\xe3\\xc8\\x16?\\xb2\\x03{\\x12\\xf8\\xd8\\x0e\\x94\\x07\\xf2\\xd1\\x13;P\\xf6\\xf9\\xe8\\xa9\\x1d\\x08\\xb3\\xf8\\x1b;P\\xe2\\xfc\\xa3\\x7fm\\x07\\xca\\x85y\\xf4?\\xda\\x81\\x12#\\x1f\\xfd\\x1b\\nL2\\xb9\\x02\\xbf\\xb2A\\xc6r\\x8e\\x0f\\x08]\\x01\\x18L\\xe3\\xaf(0\\x05\\xfc\\xbfGhE8HEo\\x9f\\xfc\\x84\\x02\\xee8\\x89\\xc0\\xe7g\\xff\\xfc?`T\\x8c\\x06\\xd2\\xee\\xfa)9\\xd0\\x1a\\x80[[\\x8c\\xe2>\\x1c\\xf5\\x7fO\\xaa(\\xc8\\xcf\\xff%\\x86\\x88S\\xf0\\xec\\xfe=\\xf2Y\\x10>\\x89\\x88d\\xe9bID\\x1fcJ\\xe6\\x00F\\xdf\\x7f@\\xbe\\xfbr\\xc1\\xee?$\\x80(]`\\xado\\xe3Y\\xc4qpxN1#+\\xa9s\\xe28\\x89\\x0ej\\xc6-@\\xfc\\xb6u$\\x8b\\x89\\xf4\\xac\\xb2l\\x83\\x06|\\x80k\\xa4.\\x10\\xcf\\x7fI\\x0e\\xb1\\x81\\xfco\\xa4N\\xea\\x0f\\xe4\\xc0\\xef\\xff\\x8cT\\x12X\\xf0\\x07\\xe4\\xeb\\xe1\\xa8f\\x17\\x04DM\\xe6\\x9f\\xe3n2?\\xf0$\\x8d&L\\xd1@\\xfe\\x07\\\\'\\x17\\x02G\\xeb\\x13\\x82Q\\xea;!!\\xfbn\\x14\\xfa!\\x1c\\x14\\xcc2\\x9d}\\x05\\xf9\\x08S\\xf5\\x9e\\xe3\\xee\\xb9\\x11\\xd0\\xab\\xfb\\xefZ\\x80<N\\xfd@n\\xeeo\\xf0\\xea\tp\\x9c\\xf8R\\x04~\\xf6&f$\\x02\\x9a\\xfa\\x92\\xfd\\xdc\\xfb[;\\x0c\\x96\\xeb!^\\xae\\xb3\\x02\\x1a\\xc8g>Z\\xcf\\xee\\xbdG\\xa0\\x89\\xa4\\xbaO1}\\xef9\\xc9\\x98\\xcb\\xb1<\\xc0\\xfd\\x9du\\x92}.1\\xfb]\\xcc\\xbb{\\x05\\x08\\xa3\\x1a\\x80\\x80dS`/\\xd9\\x13\\x80?%\\xf3\\xee%{\\x99\\x06\\x92%\\xab]\\xeb\\xb3 s\\x90\\xfd\\x81\\xcf\\x98\\xe7\\xf6\\xbc\\xdby$\\x97\\x1dK\\n=\\xee:y*W\\x0e\\x8f\\xec\\xac\\x04q+\\xac\\xd7\\x08\\x1b\\xc5\\xd9\\xa1\\\\\\xf4G\\x98\\x92\\xf4\\x04~X\\x91\\x83'a\\x94\\x8b:oc>qV\\x82\\x82\\xc0Ok\\xc0\\x99\\x9430\\xf9\\xeb\\xa9\\xef\\xff\\x0b\\xfd\\x0e\\xa2\\x0c\\x1dB\\xb6\\xcf9\\x1co\\xd2\\x89\\x96\\xb4\\xc8\\xbej\\x00f6=\\x7f\\xe0\\x02\\x05~\\x88\\x05O\\x01\\x02\\xd1\\xf3\\xd9/0\t\\x16\\xb0\\x1c\\xaa\\xe1\\xc3\\xdf\\xf3\\x07\\x91\\x17\\xc1\\xb9\\xc4\\xb2\\x93\\x80\\xc5\\x01l\\xe4GX~\\x12\\xc0\\xcc\\x1fq\\x80ZF\\x93\\xdeV}~D\\xd0\\xdd\\x1f\\xa4\\x99#\\xb9\\xc5_\\x90\\xa9\\xfb\\x83,\\xf1\\xa5,\\\"\\xf4&Q\\xe6=rr\\x8b2\\xd0\\xc3{\\x98\\xd6\\xf4\\xfcAnF\\x8e\\xa9W\\xcf\\x1f\\xa83\\xfa\\xd02)s\\xda\\x1e\\x92\\xe5\\xd8s\\x92h_\\x80\\xde\\xc7\\xd4\\xa2\\x178\\xee^\\x10\\xdd\\xe1J\\xb8\\xfa\\x10\\xcb,\\xb2@z;w\\x12\t\\x7f\\x0f\\x0b<\\x12\\xae'%K`5\\xa1R\\xc2,\\x0d\\x968*\\xa5\\x02\\xb8\\xb5}\\xf6\\x0b\\xb2;\\xe5R\\x89\\xbaT~\\xf6\\x1e\\x96\\x02\\xa4\\xae- \\xff\\x023\\x86^\\xb077/\\xeb\\x90\\x03\\x12\\xec\\xcd\\x9d\\x94\\x10BE\\x82\\xbd\\x13\\x00\\xc1\\xc2\\xb2LO !\\x98\\xa1\\xf5B\\xb1\\x18g\\x9e\\xfd\\x183\\xda^\\xc8o\\xe7\\xbe$\\x07\\xf7\\xff\\xda\\x02^\\x07\\x94~\\x8a%\\xc0^\\x08\\x80w\\xb1\\xbau\\xd6\\xc8B\\xff\\x07\\xaebd!2nh\\xeb\\x01\\xe9]_i\\xdb@\\xfb\\x99\\x0f\\xe8E\\xe6\\x1a\\x1d\\xf4@J\\xf9\\xf0>\\x05-\\xaf\t\\xc8\\xcf\\x7fa\\x81\\x04\\x12\\x82YT/:\\xf0\\xa0\\x0eV4\\x04D\\xd6\\xf9\\x19^\\x04\\xd1\\xda\\x96\\xac\\x83%\\x11\\x01\\x91\\x07\\xd6\\xb2\\x08\\x07\\x1e\\xd4!\\xa8\\x10\\x1dx\\xb2\\xce\\xcf\\x08O\\x8f\\x0e.\\xc8*\\x96\\x01H2\\xfa3r\\xf6\\xa2\\x83\\x0b\\xcb\\xb2\\nVo\\x05D\\xb2\\xce\\x9fciD4\\x06u\\xe8.\\x1c\\x0ce\\x9d\\x9fa\\x92,Z\\xdb\\x95u\\xb0\\xbe\\\" \\x92\\x95\\xfc\\x9c\\xf0\\xfc\\xe8`\\x08u\\xb0\\x02$ \\xb2\\xce\\xcf\\xc8i\\x8e\\x0eF~\\x08\\x04\\xea\\x01\\xa1\\xf2\\xd1\\x81&^\\x0f\\x08k\\x8d\\x0e\\x0c\\xd5}\\x80\\x15\\xb5^t\\xb0\\x0b{\\x8e\\x95\\x0d\\x01\\x01<\\xc1\\x82i/:\\xc8\\xa1\\xce\\x7fk\\x81\\x00\\x9e`\\xa5S\\xb4\\x06{\\x8e\\xb5N\\x01\\x01<\\xf9\\xa5\\xa55\\xa8ci-\\x07<\\xb1`\\xddeY\\x85\\xd0\\x92\\xe8@\\x9e\\xfd\\x9f\\x11\\xca\\x16\\x1d\\\\\\x06\\xd4\\xb2\\xec\\xece\\x89[?'\\xb49:\\x18C\\x1dB\\x95\\xa3\\x831\\xe0#V\\xb6Dk\\xb0j\\x844F\\x07\\x97a\\xa5\\xb1V'Z\\x83:XA\\x11\\x10Xi\\x0b\\x0e_\\x86U\\xb3\\xec\\xf5eXi\\x0b\\xfa\\x8c\\xa1\\x8e\\x05y\\xc6\\xb0\\xd2\\x04\\x0b\\xeae\\xe8\\xb3\\xca\\x98\\xf6k\\xb2o\\xf5\\x80qO\\xb2\\xf7\\x8f\\xf1a=\\x0bZ\\x10\\x95\\xb7zF=\\xfa\\xdf\t\\x84\\x8f\\x84p\\xf7\\xec\\xad?#\\x90:\\xc9>Us!R}/\\x8d\\xc4:\\xff\\xe0\\x07\\x96\\xefR\\x85\\xff\\x90\\xc8#i\\x14\\x0c\\xd3\\\\\\x02\\x7fEHv\\x1e\\xc8m{\\x93lu\\x1e@j1\\x1bH)o\\x7fj\\x01HM\\xf9\t\\xb6L\\x08\\x08\\xe8\\xcax\t\\xce\\xe6F\\xdf\\xb35\\xa7@\\xb8\\xd6\\x92\\xb6E~\\x8a%3\\xd7@~J\\xea\\x80\\xfc\\x88\\x89\\xbc\\x12G\\xefar\\xe9:\\xb16ta\\xf9\\xcbu\\xe2^\\xa2d\\xc3\\xc7\\x98\\xd5\\xb9N\\xac\\x9a|\\x8c\\xf5\\x7f\\x01R\\xb5\\xf0\\xe8\\\\'VB\\xecc\\xcc9\\x96\\x9c\\xd8\\xcf\\x9c`\\xd9\\xef\\xf7y\\xc2\\xc3\\xccw\\x02\\xc9\\x14~\\x82w\\xdaubPY\\x1e\\xff\\xe7\\x7f\\x8f\\x1bq\\x9d\\x04\\xb6\\xf3-,1\\xbaN\\\"\\x15\\xd3_\\xd3\\x05;\\x0c\\xf8!h\\x17X\\nqu_\\x8f1\\x82.\\xe9\\xf6>\\xc5<\\xd35\\x10Z\\x87{\\xbe\\xd4\\xc7\\xc9\\xb2\\x18\\x08\\xe6YKJW\\xf8\\x14\\xa3\\xb4\\xab\\x01xc\\x96J\\xaa=V\\xc0\\\\7W\\xf3\\xa1\\xa3\\xce\\xe34\\x95\\xc7\\xf41f\\xf6K\\xb0e\\x9fb\\xb3\\x8b\\xab\\xbe\\x93\\xfdW\\x93\\xf9\\x18\\xcb\\xa9K\\x02\\x1086\\x90[R\\x1b\\xb1\\xce\\xe6J\\x7f\\x86\\xd6\\xc7\\xf8\\x84.\\xf10\\xe3\\xc9\\xb2\\x1c\\xc4\\xc7\\x98\\x1c\\xb9\\x12\\xe8\\xd9\\x81K\\xfd\\xc4\\xbe\\xdfZ\\x9f\\xc3D|\\xe9\\x02\\xa8\\xd6x{\\xdc\\xa1\\xfc\\xfe\\x0fdC\\x87\\x1c$\\xe5\\xbf\\xc4b\\x98\\x84\\x8c\\x9c\\xc4\\x0e]\\x1a\\n\\x12\\xfa9\\xedF\\xaa\\xcd\\xa4\\x17\\xb0\\xe4\\xfd\\x82l\\x00\\xa0\\xc6\\xaf\t\\xd5\\xf0\\x13W\\x91\\x1a,\\x9f\\nP\\xc0\\x9d$\\x89\\xf6\\xb56\\xf2\\xce\\xffY_\\xc6\\xe8\\\"\\xef\\xfc_\\xd6B\\x1eX\\xc4\\x9e=\\xc0\\xb2\\x8a\\x02k\\x0d\\xf8\\x01\\x96K\\x14\\xdcS\\x06\\x9d\\x07X>Z\\x92\\xf0e%\\xd0c\\xd9E\\xd5\\x16L\\xf5cL\\x9c\\x15l[T\\xfcs|\\x9a\\xa0\\xd9KF\\xd2\\xc3B:\\xc07\\xb5\\xb0\\x87%u\\x00\\xef\\x18y\\xcf\\xb2\\xba\\x92c|\\x88\\xb5z\\xd7\\x07=\\xd3\\xb6\\x1f}}\\x8c?\\xc2\\x07\\xd2\\xf5\\x93\\x11\\xd8^\\x9fb\\x0b\\x82\\xeb'\\xa9B\\x8b\\x0f\\xb1\\xcc\\xb5$\\xd4\\xb7}?\\xe5KQ\\x98Ey\\xb2\\x1af|\\x908\\x923\\xde\\xc3\\x87n)\\x88R\\xbe\\x94'\\xc1\\xe1r\\x94\\xf7\\x02\\xfez\\x1ee w\\x90-1%\\x8b2dc\\x82\\xbc'\\x97\\xe6\\x97X\\x0c\\x93\\x90\\xdc\\xcf\\xac\\xc0\\xa5\\x08\\xac\\x89\\xcf\\xee\\x91\\xe3\\xad \\x0b\\xb6\\x1ap\\x03\\x83Ey\\xd7\\x80\\x88\\xfd\\x16@\\xb7k`\\xa3\\x91 Y]\\xdbw1\\xec\\xff\\x8a\\x02\\x80\\xd5\\x12\\x16\\x14\\x8d\\xe2>L\\x07Kb\\xae|\\x19a\\xc4\\x15\\xdd\\xb6\\xd5\\x0c\\xf8\\x01`\\xd7\\xdbx_\\x8d\\x99\\x90p\\xca(\\x1chv\\x8bI\\xddR\\x14\\x0e\\x92\\\\ux\\x1f\\x0b\\xbaK\\x05\\x0f!\\x18V\\x80\\xf0\\x11\\xb3\\xe1\\x15-#\\xb5t\\xdb,\\xb4\\xfaNw N\\\"\\xb8\\xd6\\\"\\xacI\\x82r7\\xb3C76\\xaf\\nR@d\\x9e(>\\xac\\xfb\\x9e\\x02g\\xc0\\xe7q)\\xca\\x05?i<B\\xd8\\xb8\\xe5&\\xea\\n\\xe8\\x1d,\\xaa/%Q\\n6/\\xb2\\xba\\x1a\\xf2\\x97d\\x04F\\xf2\\xc6\\xda\\x82k \\x84\\xab*\\x81\\xf8)\\x96,\\x05@\\x1e\\x85\\xa7XcsS\\x10\\xdd\\x9e\\x12\\xa2\\x93\\xe6 \\xdc>%\\xa2e\\xa6\\x90\\xec!\\x99M\\xee9I\\\"W\\xe7}26\t\\x93\\xeb\\xf3>^\\x1f7\\xe7\\xb1\\x84<$s\\xcdy*9\\xc7C\\xacM\\xb9y\\xa0\\x97\\x1b\\xdbv\\x01$\\xa7\\xf5>\\xd6A\\x96\\x94\\xbd\\x95\\xf0i\\xf8~\\x0f\\xab\\x9an.\\x84b%\\xf9\\x126\\x92\\xc7J\\xfe&\\xd7:nn\\xe4e\\xc2\\x96s#/\\x13\\x11+\\xd7\\xf2\\xf2\\x03K\\x83\\x11\\\\\\xe4\\x91c\\xaf\\x84\\xbc{O,\\x02rn\\x90\\x92\\x90T\t\\x92\\\"\\xe0\\xfbX\\x8dv\\x05y\\xe7\\xb7\\xe3\\x84\\xbb5\\xdb\\\"\\xe1i\\xee\\xd6mN\\x12\\x1cjc.\\xd6\\x80$\\xb00\\xe7\\x12\\\\\\xcd\\x93D\\x1a\\xe6?\\xc6J\\xb7\\x9b'c$\\xb3\\xd0\\xad\\xd7E\\n\\x91\\x85N\\xbc~d\\xea\\xba\\x87\\x0e\\xaa|\\x83F\\x04V}\\x83v\\x0f_\\xc5\\xb8\\x87\\x81\\x9b\t\\xda\\xf3\\xec]L\\x90\\x97e\\xaep\\x01z\\x13Sc\\xaf\\x00a\\xc1\\xd4s\\x02}\\xa3\\x81\\x0f\\xd8\\xb2\\xdeh\\xd2\\xdc\\\"\\x00~\\x8aq\\xde\\xd35(\\x00\\xc4\\xb171QXv\\xd2!\\\\\\xb0\\xe1\\xbd\\xf14\\xe4\\x01f\\xea^\\xc9>\\x8f\\x97\\xd5\\xeb\\x05\\xd2\\xd3\\xe0\\xd7X\\xc8X6Z\\x15\\xde#\\xcf@pc\\xcb \\xb3cv\\xe2\\xc1g,\\x1e,\\xdb\\xb5M\\xf0\\xf5\\xf8\t>\\xb3\\x9e\\xd7\\xb0]z\\x1d\\x7f\\x8a\\x8f\\xf3\\xf2r\\x94%\\x0e\\x984\\xdf\\xc7\\x94\\xd7\\xf3\\xa2,\\x05!\\xe41FQ\\x8f\\x0b\\x0e\\xff1\\xd6\\xe7\\x969p\\x1e\\xac\\x18,\\xf3\\x00\\xae\\xbf\\xc8\\xdc5\\x00\\xcf\\xde+\\xe9_\\x18i\\xbd\\xbe\\x9f\\xc2\\xd1\\xf9\\x00\\xbb\\xe0,k\\x85\t\\x8f\\xc0\\xd3\\x00\\xb28\\x17\\xe0B\\xe9\\x03l\\xeb\\xf5\\x86\\x0ep\\x8a\\x9fb!Y@`=\\xb1\\xcc\\xb0\\xec;n\\xe2g\\xbe\\xeb\\x04\\x8bun[\\xa52\\xa06\\xfc\\x1a\\x0b\\xa7\\x95\\x12B\\xd6\\xd5mQ,,J\\x9eW\\x9eT?\\xac/\\xb2\\xa3\\xae\\xeb\\x7f\\x8d\\x8dx\\x9e\\xefH2\\xfb\\x10[\\\\\\x96}g\\x14\\x815\\x86\\xc0\\xbc\\xc90#Gcs\\x9e\\x80\\xa75\\x10\\xb9h\\xd8 N\\xad0\\xe4\\x00\\xf8\\x03\\x07\\x04\\xe3\\xdf\\xe0U\\xf2\\xfc\\xd4\\x97b\\xeeCL\\x18=y\\x13\\xf4\t\\xc1n\\x7f\\xec\\x83c\\x83\\x1d\\x12\\x85\\xc6\\x94\\xfe\\x90 \\x9a?\\x8e\\xc2\\x03+h\\xf9\\\"\\x9ct\\x8c5\\xde-P\\xda\\xb1\\x1c\\xe3\\x05n\\x94\\xc8\\x81\\xbf\\x8b\\xf9\\x9b\\x17\\xb8\\x89|b\\xe0\\xd9\\xbb\\x98\\x0f{Q\\x10H\\x94\\xfe}\\xdc\\xbd\\xb9\\xa9\\xc2:\\xb2gD]\\xacH*c\\x06\\xde\\x0e\\xaf\\x06q\\xa3Li\\xc2?&(\\x16eJ\\x9f\\xc1$[B\\x94Pq\\x1f\\xd3\\xa0\\xe5([\\xb9\\x9d\\x83<k\\xabi\\xeeB\\xeean\\xe3E\\x99\\xbe\\x0b\\xb9G\\xa8N\\x94\\x15W\\xaa\\x0f\\x08E\\x90g\\xae\\xe2?\\x81\\x91\\x0d\\x8e\\xa5M\\xe6\\xc6\\x12'\\x94\\xacYF\\x0d\\xdc\\x0f\\x17\\x13\\xc5\\x81\\x08\\x0f\\x842k\\xbc\\x9f\\x15e\\x08\\xd73e\\xb6\\x84PQ\\x14\\xc4\\x13/\\n\\xee\\x80\\x84A\\xd8\\xa4*\\x11\\x85\\x83J\\x97\\xbf\\\"\\xcc\\xbcR\\xae\\xda\\xed\\xaf\\xb0\\xa1\\xa6(\\x8c\\n\\xe2+S(\\x88&\\x81\\x8fE\\xa9\\x90\\x9a\\xc5\\x03\\xfb\\xc2\\xee\\xc6E#\\x14\\xb1\\xa0Du\\xf1)\\xfa\\x8bR\\x97y\\\"\\xe9\\xe7Y\\xe0\\x14\\xf70\\xa7\\xa8\\xb4Ad\\x15\\x01uj\\xb7\\xd7+C\\xadue\\xcb\\xaa\\xeb\\xf7k\\x0b\\x94\\xe7\\x8a\\xb5\\x17QH_\\xc6\\xfc\\x1d\\xe1\\xf2\\xd1~h\\x06!\\x8f\\x0b\\x91\\x12\\x04x\\xe8$q\\x14\\x85Z\\xae\\xa5<\\xb1(c\\x04[\\xca\\x1e\\xa3\\xfd\\xd0\\xa0\\xcbe\\x19\\xaf%\\xca}@\\xf1\\x19\\xca\\xedp^*\\x85i\\xa0.U\\x14y\\x07+S\\xd5\\\"j\\x11?\\xc0\\xc64QJ\\xa3S\\xa9?\\xac3\\x98bE\\x99\\x9fb\\xc3\\x08*\\xa3{\\xc4\\xba\\xb3(\\xa6q\\x97\\x9e@\t+\\x10\\n\\x1b_\\xbd\\xa4$\\xb0\\x12\\x9a\\x98\\x18\\x9e\\x81\\xc7\\xef%\\x86g`k\\xfb\\xb2\\xd1\\xd8I%\\x03!gu\\x1b\\xb8\\x19\\x11PS\\xe0f\\xf8,yp\\x85\\xf6\\xecC\\xac\\x12-\\xa7Y\\x12\\xed\t\\x81\\x99L\\xc6@\\x08\\xd6\\x1a\\x15\\x9f\\x08\\x87Y\\\"o\\xfd\\xde\\xc3\\xa2\\xa1\\x00HK\\x0f\\xf1}\\xf1r-\\xcf\\xe1\\x93\\xe3\\xe5C\\xb5\\x83\\x98\\xae{\\xfb\\xc6\\xe3\\xe6\\x11\\x96a\\x96\\xaf\\xc1\\xca\\x10e\\xe2\\x0e\\xac\\x0cY\\xe3;\\xfe@k\\xc1\\xbf\\xc2\\xc3^1q\\x0c\\xf8b\\x85\\x1b\\x08\\xb6\\x1bq'\\xcd@\\x17x\\x8c\\xcd]+F;\\xc1\\x96nn \\xd8F\\xce\\x95\\x01\\xf7>>8+:f\\x01S\\x0c\\xae\\x01\\xd8Z\\xc1\\xb5\\x9d\\xf4\\xd9}\\x8c\\x1f+\\xb0hX\\x0d\\xe5\\xb0fX\\xca\\xe1\\xcbJ\\xd2 \\xaa\\xc9\\x8a\\xba\\x05\\xc2\\x83\\xd5Fz\\\"cpU\\x01\\x1fR8\\x9f?\\xc1R\\x1c\\xef\\xeb\\x860cZ\\xd1:\\x066\\xc3p\\x0d\\xc07FR\\x8bz\\xf6\\x04o\\xc5\\x8a\t\\x8b -\\x19\\x08fy| \\x89\\xf7\\x132\\xedA\\xaa\\x8e\\xca\\x13l\\xe4\\x05e\\xed\t\\x96\\xe2VJ\\x86_\\xd2\\x7f\\xe0\\x87\\x19OdW\\x7f\\x86\t\\x13\\x87K\\xed\\xb71\\x93\\xe2\\x01\\x0c\\x0d\\xef8\\x0f\\xcc\\xd0\\xf0\\xda\\xaf\\xe8\\xe8\\x0b\\xbc\\xc6\\\\\\x03H'B_\\x94c\\xc6\\x04IBR\\xb8\\x86%@\\x99ky{\\xe4\\x04\\xc1\\xb6\\x91\\x08\\x7f\\x81\\xe5\\xe3B\\x17\\xb5\\xd7\\xbf\\xcc\\x13\\xdc\\xc6{\\xd8Y\\x84\\x8fRI{\\xdf\\xc4\\x9cS\\x00\\xe6NH\\x10V\\xa3$H\\xba\\xbe\\xbdI\\xfa]?\\xbf\\xc0Z\\x9f\\x91\\x83'-\\xef\\x9f\\xe1\\x0b8\\x1e\\xaa\\xce1G^\\xd1.\\xfe\\x0474\\x80`\\x87\\xd1\\\"\\xb0M\\x8e\\x1b-\\x82\\xe0`\\x0cT\\xf4!\\xc1\\x80\\xd8IR\\xe0\\n\\xd8*\\xc3\\xb5\\xf4\\xfe\\x18Sx\\xe5\\xb4\\xfb9&\\xd6+\\xc6\\xd9\\xfbs\\xda\\x8f\\x01\\xe1Z\\x02$\\xb6\\xf67\\x04p[_\\n\\x12\\xba\\xc7o\\xd7\\x931~[y\\x97\\xdc\\xc7k\\xcdo\\xa7\\x81\\x13f\\x83,\\xb1\\x1fT\\x00\\x07<\\xb5\\x9f\\x16\\xa3\\x07=\\xa6#\\xcd\\x1dy\\xc4\\xce\\xd8\\xaah\\xad\\xdf6\\xa0\\x9c\\xc3\\xb5\\xe8}\\xcc\\x92Vn\\xe7~\\xe0\\xf7\\x12?\\x97s\\xf9)\\x16\\x18JN\\x946\\x08\\xd8\\xae\\x1ec\\xa5\\x81\\xdf\\x1e\\x17\\x1b\\x8e\\xa5h\\xaeY\\xe0\\x07d\\xc3\\x13Mq\\xf1\\xa1_\\xd1nA\\xd8\\x10\\xc55\\x00\\xf3m\\xaeI\\x0e\\xd1&W\\xd4\\xbe=\\xc6\\xd7&\\xbcnCW\\xc0tE\\xf8\\x06|&|i\\xe7\\x82\\xa0\\xdb\\xb8[\\xb0\\x96~\\x82'\\xb0\\xa2\\\"%\\xc8IV\\xdf\ty\\xc9\\x13\\xe9R\\xff'\\xd8A\\x8a\\x1f\\xb8\\xa2\\xc2\\x11\\xf2\\xd9\\x87\\xad\\xbf\\x87\\xe9\\xd1\\x8a\\x80\\xa4V\\x10?\\x88\\xb9\\x9b9:^\\x86\\xac\\xfa\\xca\\x01${\\xf0\\x9d@^/S\\xdeY\\x14\\xb03\\xd7\\xbe\\x13\\x04\\xbe\\xbc$T\\x96G\\xc2d\\xcf\\x81\\x98\\x80\\xa5\\xe6>\\x88\t\\x98\\x82\\xf6\\xf9Hu\\xf5K|\\xf3\\xd0\\xef\\xfb\\x10\\xf8\\xf8\\x9f\\xff\\x06\\xcf\\xb3\\xdf\\xd7\\x10Z)\\xd0 \\xdc\\xd59\\xcd\\xe4\\xb1\\x9c\\xd6\\xd7\\x00L\\xe2\\x8a\\x01`5\\xe2\\x9c\\x1f\\x04\\xdc\\xc3l\t\\x13\\\\(ec>X\\xec\\xea\\xdf\\x82\\x9e\\xfa\\xb70 p\\xc0B\\x87\\xc5\\xaeb\\x9e\\x18\\xeb\\xfbA\\x16J\\xf4x\\x0f\\x9f\\xd3~\\x18\t\\x06\\xf0\\x9f\\xc8\\x96\\x19\\x96\\x81\\xf5\\xb3\\xbea\\x19\\xf8\\x10\\x9d\\x8b\\x92E\\x10'\\xee\\x91=\\x88\\x12\\xa7\\x1e$\\xfdX\\x1eb\\xc3\\x87\\x00\\xc0\\xbd\\x00\\xe6g\\xe7\\xa2<\\xf1y\\x92%p\\x0bL\\xe6\\x14;I\\xa6\\xfd\\x1e\\xb0\\x10\\xdaO\\x1cW\\xba\\xb3\\x7fL&& \\x92\\xa9\\xff\\x04\\xd3,\t\\x12L\\xfdc\\xbc\\x9f\\x12rJV\\xc2\\xc4_\\x82^\\x96 <\\x01\tzE\\x82\\xb0\\xe0.@\\xf30\\n\\xb2 \\x02\\x04}aF$@\\xd2\\xe1\\xfec\\xac(I\\x08T\\xc2\\xfb%A0\\nl\\xfa\\x13\\xa0\\x93P\\x0bK\\x19\\x02t\\n\\xa6\\x85e`\t\\x82\\x06\\xb1=W\\x80\\xbe\\x03 l\\x13\\xe8'\\x0e\\xb0\\x97\\xb7\\x08%HT\\xe8\\xc3\\xbbX\\x08?\\xa7y\\x05\\xd9{\\xa3\\xfbb\\x81p\\xa0U\\xaf\\xff\\x07\\xf3\\xe2\\xf3\\xca\\x08\\xfd9\\xdevm\\x9d\\xfe\\x1c\\xb3\\x17Y\\xc3\\x13\\x12\\x08^\\xb8\\x81\\x81\\xe0\\x15\\x18\\xc0\\xcd\\xed\\x13l\\x97<o\\x02\\xd8\\xf1\\xc2\\x0c\\x0c\\x04\\xb3\\xfa\\xf3\\xda=\\xeeS\\xbc0\\xe7\\xb5K\\x1f\\x19\\x98\\x06\\xe0q\\x9d\\x07\\xe2L\\xe6\\x0e\\x9f\\xc9\\xcc\\x95\\xe2\\x85\\xef\\x10\\x95\\x8f\\xc8\\xa7X\\xb4\\x18H\\xa6r\\x1f\\xab\\x1d`\\xa3\\xbd\\x8f\\xe5\\x89\\xc1\\n\\xa87Xt\\x19\\x80\\xda\\xf3\\x10\\x1f\\x96\\x81b8\\xa4\\x1d~\\xfbvM\\xbf \\xb1\t\\xe0c|T\\x06p=`\\xfb\\x0eW\\xd2O\\xb0\\xd2>0\\xa2\\xc9\\x13L\\xd6\\x00$\\xf9\\xfb\\x13L\\x8e\\x15\\x0c\\xe6\\x8a\\x91~\\xc0S5Yz\\xf3.`0\\xc8'\\x988\\x9c\\xd7\\x1c\\x0b\\xab\\x17\\x03\\x0d\\xc0\\xec\\xf7\\xbcTd\\x1fb\\xda4\\x00? ,\\xac\\x0c\\x065\\xc5\\xfd\\x11l\\xce\\xdbXx:\\xaf\\xaeN0\\xa7\\x1e\\xa8\\xab\\x13\\x82qpc\\x80\\x9b\\x19Hg\\xcfgO\\xc8\\x1e\\x83\\xbc\\xf2\\x04s\\xaeApK~\\xc7\\xd3\\x1d\\x84\\xea\\x00\\x92\\x05\\n\\x8b\\x98a\\x0b\\x10\\x10\\x98\\xec<x\\x81=\\xc1\\xca\\xf6@\\xb9\\x80Y\\x01\\xb7k\\x9aR\\xc2\\xeaC\\x8c\\xad\\xe7\\x0d\\x13&(i\\x980&\\xcf\\x83\\x9a;\\xc5\\xf32\\xc3IR\\xdc\\xcc\\xe0\\xf5,\\x17XS\\n\\x0d9p\\xaa\\xd0\\xb9<\\x08\\x8a\\x96\\xc8\\xb0\\xa1\\x90\\xfa\\x8f\\\\\\x0dB\\xa6\\x00\\xa6\\xfb!\\x9b\\xae\\xe0\\xdb\\xe2\\xac\\x16J\\x14^\\x05U\\xaa\\xd0\\x96\\x08\\xb52\\xdc\\x00\\x0f`\\xa0\\x19\\x08\\xd9p\\xad9\\xe0\\xb6\\x06:\\xd0\\xe0\t\\xf6\\x1e\\x10\\x108\\xcbXQ8\\xbf\\xb3\\xc0Z\\xdf\\xc3\\x1f3\\xfb\\x01\\xcb,e\\x07\\x99\\xa2<\\x84\\x90e:\\x04\\x1f_\\xdc\\x0c\\x8c\\x99\\x15\\xf3\\xfbA\\x16l\\x82R\\xff\\x08\\xcb*\\x83\\xcc\\xe8\\x95\\x8f\\xb1\\x883\\xc8\\x92\\xd2\\x01\\xc1\\xecK@\\x95\\x0e\\x88U\\xc7A\\x96\\xd4\\x0f%\\xe1\\xb7\\x83:,\\x93P\\x03\\xa6\\xdc K\\x82:\\xc4\\x19dI\\xed\\x06\\x8ey\\x92\\x15\\xa7\\xd0B]\\xc7\\xfa\\xb0S\\xd8\\x05\\xc7\\xe5{6\\xd7\\xff\\xa1\\xe3'\\xcaP\\x83Qi\\xe8\\x04}\\x9b\\xa09tF~ \\xd7\\xe5m\\xac*^X\\xdcR\\x1e'X\\x1d\\x18:\t8\\x9d\\xfc\\x03\\xe9F\\xbb\\xe2`\\x96\\xa0]\\x1e\\xde\\xb1\\x01\\x14\\xfa|\\x80\\xe9\\x94\\x80\\xc1\\x1d\\x06V/.H\\xb5\\xe3\\x0fqy\\x88\\xfey\\xf66\\xb6\\x9c_\\xd0\\x02\\x07&\\xc4C\\x0d\\xc0\\x14h\\xc8\\x9d\\x04\\xb4\\xd8_\\xdaA\\xda5\\x81B\\x83\\xc0\\x87=\\xc0v\\xfd!O\\\\\\xd0|\\x1f\\xe0\\xcb\\x90\\x0b\\xca\\x81\\x1f\\xa3\\xd7P3L\\xdc\\xcd\\x05?\\xe8\\xf1$\\xdb\\x8e\\x1d\\x97[wo\\xb8\\x97rs\\xcbC\\x06\\xb9\\x97\\xee\\x1b \\x19f\\xa4\\xaf3\\xf0]\\xc20\\x1aep5w\\x0fK\\xb4\\xc3(\\xda\\x0bx?+\\xee\\\"1k\\x11%\\xe4\\xd5^Q\\x04\\xe3\\xd5\\x05\\xedK\\x8b\\x15\\xa5\\xa1a1\\x98\\xe5\\x0f\\xa3Dm\\xfa\\x9b\\x98\\x8e\\\\\\x88\\x12\\xffN\\x14fN\\xb0\\xe6\\x03\\x87$\\xd1\\x9d\\x174\\xe5%\\xabg\\x88590&9\\x03\\xc52s\\xddD\\x96\\xd4@0\\xed\\xbc\\x90\\x8f\\xe4\\x1d\\xf2\\x85\\xba\\xe8,\\x01(\\xd8\\x1b\\xeerx\\xa8C\\xc1\\xde\\xc2\\xa2\\xcd\\xf00\\x1eB\\xfc?\\xf1r[57?x\\xa1}\\x03\\xc1'\\xce\\x97\\xb4\\xff-l\\x83X\\xd575x\\xdc\\xbe\\x06\\xe0\\x1b\\xa4U\\xa0)XV\\xf0\\xe13\\xa6\\xdb\\xabJ\\x96\\xc7\\xa6\\xa2Uu\\xdd\\x837\\xdd\\x87\\xfb\\x9e\\xbf\\xc7z\\x95\\xaf\\xecX\\x1fc\\xa5\\xc0\\xef\\xf7\\xad\\x04kU\\x9dH|\\xdb\\xe3\\xeb\\x13\\x89\\xf7x\\xd5\\\\\\xad\\xe0C\\xec\\x1b\\x086\\xae\\xf9\\xf2\\xaa\\xf1'\\x98\\xee\\xf9\\xbe\\xafM\\x06\\xa4-\\x0d\\xb9G6\\xc8\\x0f\\xfb\\xe0\\xa6\\xf4!\\xd6\\xb7|?\\x926\\xc5go\\xe3C\\xb9z\\x11\\xcc4\\x9fb\\xcf&_Y|>\\xc5\\x9ckud]\\x96U}\\xaf\\x82\\xcf\\xb4\\xaf\\x01X\\xc6\\xf0G\\x0eh^\\xb6\\xb6\\x06~\\xe8$\\x87\\xab\\xf6\\xd5\\x199\\x83@\\x9d\\xe8\\xb71j\\x0b`\\xec@\\xca$\\xbaw#\\x99\\xc5\\xb4\\xf5)\\xd6\\xd4\\xfd\\x91\\xb4<={\\x80Y\\xb8?\\x8a\\xa5\\xc3\\xec\\x7f\\xc2\\xf8\\xb4:\\x8a\\x03\\x1f\\xd4\\x1f\\xe2`\\xe2\\x87l\\xc1v\\xf9\\xe5\\x87\\xae2\\xb0\\xbd\\x8d\\xafc\\xcc\\xde\\xdd\\xc3\\x8a\\xb7\\x84\\xa8\\xd0\\xfd\\x0f\\xb1\\xbe\\xec\\x87*\\x87\\x06\\x99\\xd1\\xaa\\xc2\\x12\\x82q\\xea;\\xd9\\x8d0s\\x81\\xc6<\\xc0B\\x9c\\xca\\x08\\x0d\\xb1\\x1a\\x98\\x81V\\x9c\\x97,\\x8d\\xf2\\xa4\\xae\\xd9Uy\\x11\\xc8M\\xf6$\\x92X\\xc4\\x0f\\xb3\\xc0I\\x86\\xd2 \\xf7\\x11\\x16\\xda\\xfc0\\xd3A\\x14\\x1fa!q5\\x1c\\xfb\\xa9/\\x1d\\xac\\xc0fb![\\xba\\x88\\x89qz\\x0bK\\xe5\\xab\\x1b@I\\xb0m\\xd5\\x8f@\\xf4!X\\xabo\\xbc0\\xc1\\xf35\\x00\\xdf%\\xac\\x1a\\xae\\x86\\xf9\\x92o \\xd8\\xac\\xb5\\n'\\xf9s\\xcc\\x07\\xd5\t\\xff\\x1c\\x0b\\x16~\\xed*\\xf9Z\\xca\\xfe\\x18\\xb3\\xf9U\\xcd\\x15\\xc9\\xe12\\\\\\x11k?\\xdaC\\x92\\xe2|\\xea\\x87Z\\xf0&49\\xf5A\\xc8}HF\\x9d\\xfa`#~\\x88\\xbd_%DZb\\x1fb\\xca$@c\\xfb 2\\xfb\\x0e\\xeb\\xfcS\\x9f\\xe2\\xcbp\\xdf@\\x08\\xc1\\xcc\\xf7\\x00-\\xb0\\xee\\xe1+\\xc0?`s\\xe8\\xaa\\xbaq\\xc1\\xac\\xdbW\\xdf1V\\\\\\xd4\\\")\\x9e\\xfa-\\x0d\\xc0\\xeb\\xa8l\\x1b\\x18%\\xc0\\xb4\\xf1\\xf7xm/j\\x06\\x86y\\xff-\\x0d\\xc02\\xca-E6\\xff_L\\x1d/\\x1a4\\xc5\\x87\\xe4\\x96\\x81`}\\xea\\xa2\\xc1!,\\x94\\xde2\\x10\\x8c\\x90\\x17S\\x9e\\xc0d\\xf0\\xce\\xde\\xd2\\x90\\x7f\\xc0\\xf2\\xc4E\\xbdQ\\xd8\\xa6uKo\\x14\\xe6\\xf8\\xdfw\\xe2X\\x9e!|\\xe6\\xf64\\x00\\x930\t\\x90\\x97\\xbfX<\\xf9\\xbe1\\x8abo\\xa5=\\x03\\xc1\\xab\\xf9}\\x18/\\xe9\\x1d>\\xe3\\xbe\\xbf\\xafw\\x0b\\x0b^{\\x1a\\x80\\x91zo\\x90@B\\xa8O\\xb1\\x90\\xf5}\\x15\\x0d\\x8cwdOE\\x03cn\\xf5}\\x85qX8\\xd9S\\xd64,\\x7f|\\xdf`\\x03\\xa6\\xf1{\\x06B\\xea\\x18l\\xc0\\x82\\xd6\\x9e\\x86\\xfc9&\\x9b\\xc1\\xa2\\xd6\\\\\\xf0\\\"\\xae\\x99\\xfc\\x02\\xf88\\x04\\x06\\x82W8pJ1\\x04\\xf80\\x06\\xce q\\xe0\\x16\\x13\\xb3\\xff5g\\xd4\\xf3$\\xbe`\\xdc\\x0f\\x0c\\x04\\xabOk*k\\xe6\\xaf\\xb0\\xf8\\x14h\\x00\\xdeM\\x01\\x80\\xfc\\x8e\\x98\\x11\\x05\\xc6\\xb3\\xccR\t\\xcc\\x8exC\\xd7\\x1c\\xf9\\xe2\\x9a\\xbe\\xc4\\xc23\\n\\x1cH\\xb8\\xf61f\\xf0kZ\\xab\\xc7RK\\xa0\\xed\\x00\\x98\\x85\\x98\\x986\\x1b@\\xc6\\xf6\\xfd\\x14\\x8b\\x18\\x12\\xd2\\x97\\xec\\xe0}|\\xf9 `\\n\\x84e#\\x01\\x02\\xe1\\x81\\xa8\\xa2\\x02\\x14\\xc8\\x95x\\x07\\xcfH\\x06\\xd6I\\x81\\xe5}\\x8a)\\x89\\xb6\\xe7|\\x80y\\x8f\\x80e\\xb2\\xda;\\x98\\xcb\\xa8\\x1b\\xd2'\\xa4\\xa7\\xc5\\xcc\\xf1\\xa1'\\x8a'\\x06\\x84\\x89z\\xe0@D\\xf2\\x13,\\xfe\\x0b\\x00\\x98\\xa8\\xfe5\\xb5\\x18\\x05g\\xd5\\xb2\\xbf\\x8f\\xa9E\\xd0\\xd3\\x10|\\x98\\x03\\x9d\\xe4\\xef\\xaf\\xb0n\\x10\\xf4\\x12\\xb0:\\xfc\\x91\\x0d \\xea\\\\\\xa7\\x80=9\\xecGX\\xd1\\x16\\x904\\x00D\\xc6\\x1c\\x12`2\\x8f\\xd1#\\xcc\\xac\\xd6\\x8c\\xb7!V\\xd0\\x03\\x03\\xc1B\\xca\\x9a!\\xbd\\xf8\\xf8\\x05\\x06\\x82\\xa5\\xa4\\xc0\\xe5\\xb0\\x13\\xefb\\xd6\\x13\\xb82\\x16\\x15\\xaf\\xc1\\x1a\\x90F\\xb2\\xa5\\xf0\\x99t\\xec\\xb9R@}\\x1f\\xb3\\x89\\xc0\\xe48\\xc4\\x84QB\\xc0\\xe2AN\\x9d\\x97x\\xda\\xe1\\x143\\xf1\\xc0K\\xf2T\\x03\\xc9.x`\\xd2x\\x87l5\\x18!1\t\\x06\\xf2r\\x1f\\x9fT\\xe9\\xf2/\\x88\\xcfY\\x81\\x07\\xe01GhP%.\\x80\\x90\\x81\\xb5\\xb2\\x0d\\x89R\\x8f\\x8a\\x85\\xc9V\\xb7\\xec\\xedN(\\x89)\\x80\\\"\\x04\\xb0,g\\xba\\xd1\\xc7\\x90\\x1cj\\xd1\\xd2\\x12\\xf7\\x03H\\xc7J\\x91C\\xc0\\xc1\\xf9\\xbf\\xbc\\x14x\\x19\\xa1\\x94t\\xd7.\\xf9\\x8dc\\x0b\\x85.Ur\\x1b\\xc7\\xb6\\x9ej\\x11\\xed5\\x8ei\\x87(u.\\x88\\xa0\\x8dw\\xb1\\xe9VLZy\\xe0\\xeb,\\x7f\\xc4\\x1f\\xbeT\\x06\\x02|\\xdf!\\xe7\\x85\\xf73\\xb3|\\xa0\\x1ec+5\\x0d\\xf8 FaQ\\xa4j+$\\xf6\\x99\\x80\\x14!\\xadT\\x8b\\xa4\\xb5[-\\xcb\\xa8iA)r>t\\xa9\\xf4v\\xee\\x0f\\x8a\\x1e1\\x11\\xb6\\x05'`\\x8a[\\x8a\\x9e!\\xa1\\xa4\\nV,\\x8c\\x0d\\x83\\xab\\xd8\\x82%\\x1d1\\xd4l\\x98p^\\x84\\x98\\xe1\\xd9\\xc8FJ)\\x1f\\x1f\\xe0S_.\\xa0\\x90\\xe9CL\\x9c\\xcbe\\x8c}\\xf2\\x01\\x16\\x93D)\\x08\\x92)\\x0d\\x19\\x0b,P\\xa8:-|\\xa7\\x0feJ\\xa1\\x1aXG(\\x17\\xd0\\x07\\x00\\xeb\\x04(\\xda\\x03\\xe3.\\x8d\\xf4 \\x82\\xd0\\n8\\\\S\\xfc\\x80\\x0bi\\xba\\x19p\\xc1CD\\x1a}\\xf3C\tk\\xc9'\\x80\\x9e\\xbe\\xb4\\xee\\xbb\\xba\\x99#\\xf2\\x9e\\xf1\tx\\x8c\\xd7+(\\xf9\\x04`\\xedM\\xc1\\xe4\\x1a<\\xc1\\xb4&\\xe0\\xa9\\x9a\\xacE\\xce\\xe0\\xa9r\\\\x\\x82o\\xd4\\x03\\x9e\\xa6\\xa5\\xab;,\\x81\\n\\xb0\\xb6\\x13`\\x0dZ\\xc0\\xf8m\\xe5\\xf7jYc\\x01\\xd5`\\xb25k<M%~\\x96\\xae\\x80I\\x1b\\xa2P\\xf5\\x1e\\x99\\x92\\xea4-\\xb5p\\x9f\\xf0k\\x9e\\xa6j\\x08\\x04&\\xea\\xea\\xdb\\xe5'\\x98\\xba\\x8b\\x8a\\xfa\\x96\\x90\\x9e\\xc34E\\xd7\\xcex\\xefE\\x91\\xe2\\xce\\x99\\xb0\\xef\\\"\\xd2\\x99\\x10\\xea~-'X\\xd3\\x1a$\\x11\\xc84\\x80\\x08\\xd4\\x03\\xfb\\xa2\\x80\\xc7\\xcd\\x13\\xa2\\xa1\\xe8\\x98i\\\"+\\x0f\\x9dD\\xca\\x82\\x94\\xf3\\x0c\\x9d$\\xb7\\x9eZ\t\\x91\\x8b\\xf3\\x01Q\\x9e\\x86\\xbd\\x00\\xf2\\xbbb#\\xc0\\x9a\\xd2`\\xb1\\xafe\\xa04X\\xc2:\\xc1\\x0d\\x06\\x13\\x14\\xb8z\\xb9O\\xfa\\xd5Z\\x0e\\xe1}\\x81\\x0c\\xc9\\x05\\x1c\\\"A\\xb9k\\x15\\xf1\\x86\\xe8\\xb0\\x81Y\\x9d\\x0f\\x88.\\x11\\xa8\\xa8\\xa5_`%vm\\xe4+\\x0b1!\\x00\\x1a\\xf2\\x199\\xc5\\xa3(\\x87\\xfb\\xf7?\\xc5v\\x0d\\x009\\xee\\x90\\xdb\\xc1\\xda\\xaf\\x85\\xack\\xd9\\xaf\\x85\\x02A\\xca$\\xd4K\\xf9\\xb5\\x90E\\xd4~-6\\xc0\\xed\\x9a\\xa6\\xb4_\\x0b\\xa1\\xb8\\x91\\xd6\\xb0\\xb1\\xa9<0\\xf7\\xa0\\x04\\x19#\\xa5\\x1aQ\\x89\\x8e\\x04\\xbebc\\x9d(Q\\xd9g\\x12\\x1a\\x1b\\x90\\x12\\xb66,a\\xb3\\xd8\\xa0\\xa4\\xbb\\xaa\\x8aI$\\xba6\\xb0\\x17\\xc3\\xad\\x89b#'N\\x81g\\xfc\\x8a0O\\x1a\\x9dK\\xe8`\\x14\\x0eP'D\\xc7\\xa6E\\x08Q\\x89\\xa2\\xb8\\x9a#\\x85\\x9c\\x06]\\xa2H\\x91B\\xf7V\\x85\\x94<\\\"\\xa6\\x10c\\x91\\\"\\x8c\\xcf@\\x88\\xa9\\xa1\\xc8VN\\xd4\\xf2R\\xaerbC\\x8a\\xf6UZ\\xb9{\\xf8z#\\x88\\xf6\\xe1Z\\xfb&\\x19\\xde>O\\xaa*\\x14\\xa1U\\xa2\\x08\\x12\\xb0\t\\xe1\\x8a\\xeeHrA\\x94\\x80\\\"\\x95\\xb8\\x0d&\\xcdC$\\xc7x\\x00k\\xd9\\xb6|\\x06\\xd7\\x92GD\\x18\\xd0~:T\\x1eOJ\\x04\\x92X{\\x12\\xa5\\xc0R\\x01=1\\xb4\\x91\\xec\\x00\\xa4\\x00z\\x93X>\\x12E3\\x1f\\x10\\xca\\x98:Z\\xf9\\xc6\\xf8\\xb9\\xa6\\xafF\\x88dh\\x8c\\x92X\\x98ZS\\xaa5\\xa1\\x95\\xb5\\xdfk\\xa4\\x81\\xc08}ac\\x88\\x80\\x80`J8vz\\xbbg\\xb3\\xc7\\xa4z\\x82\\x041Rc] B\\x92vb\\xf8\\x8c\\xc8\\x8b\\x06\\x82\\xed\\xbbk;\\x0b\\xac\\xf5]\\xfcQ\\\"\\x05\\xe5\\x9a\\x99\\xa5l\\xa0\\x9d\\xce\\x08\\xdd6Ng\\x84\\x86d\\xb5\\x82\\xa4T\\x8c\\x16l:QP\\xa8K\\x84=e\\x9a\\x9d\\x7f@hQ\\xc9U\\x8d\\x98v4K&t$K\\xe0:\\x97hK\\x81\\x0e1&\\x89\\xf3\\x83,\\xd1\\xeerdRy\\xe2\\x19\\xc3\\x0e9\\xb3ybB\\x90\\xc9\\nV|\\xd0>\\xb2H\\xf3\\xda\\x07\\xcd\\x02S\\xb7\\xfa\\x1f\\xe3\\xdb+\\x13.\\x83g0r\\x80\\x16\\xfc%\\xd6\\xec\\x04\\x80\\xc3\\xe3\\x1b\\x04v\t\\xc4\\x89\\xf71\\x91\\x1e\\xc1\\xf7w\\xf0\\x94\\n\\xfeT\\x032\\x96\\x0dl\\x1e\\x03\\xb0a)Xa\\x03\\xb0\\xb2y\\xe0k\\x92\\x91\\x93\\xec\\x01\\xc5z\\x0f\\xdf\\xfd\\x8et\\xb6\\xc5g\\x1fa\\x99\\xf9\\x12H\\xa0\\xd8\\xbc7\\x82\\xcf\\x98\\xbd\\x8eL\\xca*l\\xe5\\x18\\xe9H\\xe6{\\x98\\xb1\\x8f\\xb8\\x93\\xe6\t\\xf7\\x8a\\x07\\xb6\\xb0\\xf2q\\x89{~>2Ndoa\\x82{\\x89\\x07\\x81\\x1f\\xeak\\x01l\\xf4\\xbe\\xa4\\xd5\\x01l\\x88\\x1bi\\x00>\\xe2\\xa3\\xa1\\xdc\\x9c\\xb7\\xc9\\xea\\xfb\\xae\\x0c?\\xfb\\x18K:*-\\xe8=l(\\x19\\xf9\\x9e\\xfd\\x8d\\xa2\\x91\\xef)\\xba\\xf0\\x14\\x13\\xd6\\x91\\xef\\xd5\\xa4\\xcf-\\xb2\\xc0`\\xb2.!\\xf0\\xc6\\x16^\\x1b\t\\x82\\xd1a\t\\x0e@R]\\xf9\\x08/\\x81\\xcc\\xc9\\xaa\\x13\\xaf\\xde\\xc3\\x8cq\\x14\\xb8\\x90\\xad\\x10\\xdb\\x8fG\\x01<i@\\x9c\\nGa\\\\\\xdbX\\xe4\\xa9\\xd0\\xe9\\x07x\\xc1/\\x19Y\\x06kF#\\x03\\xc1\\xea\\x89\\xca\\x02\\x8a{\\xb9\\xa4Y\\\"F\\x8f\\x91a\\x89\\x84\\x16\\xa4\\x19<\\xa9E_D\\xbc$V\\xedsr(\\xe4Wr&rA\\xb5\\x81\\x14< {\\x90\\xd7AB\\xa7\\x07n\\xfc$\\xcd\\xd8\\xba\\xbe\\x0b\\xfc\\x0c\\xd3\\xec\\xd0@\\xf0z\\x85\\xe6\\xbd\\xbbg?\\xc6\\xd8\\xa3\\xb4\\xa1\\xfb\\x98\\xa3\\x84\\xe6i\\xb2\\xbf\\xa3\\x833\\xaf\\x90\\xd9`r\\xd5>\\xb3\\xb4g\\x1e\\x1a\\xa3\\xb0\\x0c\\x1e9\\xf8%\\xa6M\\x12\\x02f\\x85:\\x18\\xf8\\xfc`\\x1f\\xbb\\xb0'\\x9d\\x8c?\\xc6\\xd4:,R\\xcc\\xd3\\xb1\\x97r\\xc9S\\xa0\\xce$\\x89\\x97}]\\xdf\\xe5|\\x86\\xb7*4\\x10lz_\\xd7w9\\x9fa\\xae\\x11\\x1a\\x08\\x96:C\\x93r\\x96\\xf6S\\xce9k\\x19\\xb9Jt\\x89Q|\\x1d\\xc88\\xd6\\x14B\\xf8\\x8c\\x15\\xca\\xd0Pw|\\xbaT\\x82_\\xb2\\xd4\\\\{F\\xbd\\x8fYU\\xc8\\xf5\\xdd+V*D%\ty\\xc7\\nQ\\xaa\\x02\\x85\\x99\\x88g2\\xfdu>p2\\x7f\\xcc\\x11\\x1fy\\x13KW\\xba\\xdc\\xce\\xd0w\\xf7\\xa6*\\x16N.u\\x99'\\x87\\xcd%Ko\\xf5`KS\\xc8S\\xaer\\\"a[AX\\x04l[&\\x9cf\\xdc\\xa3A%$\\x82\\x02\\n\\x96-\\x7fD\\xde]\\xe7\\xfb\\xca1\\xf9\\x07!\\x19\\x82\t\\xaf&\\xf4\\x86\\x17\\xf1\\xd5\\x18\\xb6\\xae\\xf9.6\\xb8\\x85\\x1a\\x80\\x87\\x19\\xea\\x988\\x8a\\xd9*,\\x0e;\\x16\\x86:\\xce\\xcd\\x06\\xb8]\\xdfX9\\xd6\\xcd\\x06O\\xeb@:4\\xccRI\\xef\\x13\\x96\\x1aB\\x1d\\xd6b!\\xc9\\x03\\x00a\\xb95\\xd4\\xc6[\\x028\\x9f\\x01\\x06=\\xa5\\x030\\xd1\\x0eX\\xb7\\x0cM\\xb8\\x03!\\xacCexx\\x8a\\xd5\\xbbPj\\x0b\\xf7\\x08\\x0e\\xc3Cq\\x0f1\\xf3\\x0b}\\x10>\\x1eb\\xa9/\\x04\\x8c'\\x0d\\xad+\\x93'V\\x11Be\\xf2\\xc4\\xea^h|8\\xb0\\xba\\x19\\x1a'\\x0eZGI)XD\\x0e\\xf5E2]Du\\x97\\x8c\\xa5\\xb5\\xb0z\\x13L\\xc7P\\xb9\\n&\\x03\\xb1\\xdc \\x92M\\xb2\\\\!\\x92\\xed\\xd278dx\\xc5\\x15\\x8emJ\\xe5[\\x1c\\x1b<m\\x00\\x01\\xb5 #\\xd1&hK\\x1d}\\x0e\\xb0>\\x19jM\\xdbr\\x0e@\\x1b\\xa3\\xddh\\xb5\\xf5!&W\\xa1\\xd1[\\x1fbkZ\\xb8\\xa6\\xce\\xc8\\x13:8-\\xc1c6\\xb5\\x1e\\x9dM\\xb8#Y\\xd8[\\x98\\xbb\\xadG\\xa1\\x04\\xfa\\xe1@\\x13w\\\"l\\xac\\xebX\\x11\\\"\\x9d\\x18\\x01\\x16K\\xec\\xfam62|\\xd0\\n\\xf0\\xe7\\xf5(\\xab&\\x95\\xc7<D\\x14(\\x12dc\\xbb\\xd3z\\x94\\xd9\\xd3\\xffa\t~=\\xca\\xca)\\x93\\xb0\\x00\\xb7^NaIW!\\xc3IZ(\\xcf\\x8a\\xb2\\x95\\x06\\x9e\\x11ee>\\x86\\xc9_\\x01.\\x06\\x81)\\x7fQ\\x06\\xc5b\\xda\\x86b\\xe3\\x9d\\x0d\\xe5\\x0c\\xf7\\xc4V\\x9e\\xa2\\x08\\x0e\\xcclh\\xadX&\\xcc2\\xd6\\xa3\\x8c\\x86\\xe2\\xd8ZB\\xf18\\x14\\xe1\\xa3L\\xb9B\\x13I\\\\@\\x8c/\\xb4\\xbd\\xa2r\\x87\\xb6\\x03\\xc7N}\\xbb\\xf0\\x10\\xf4C\\xac\\xd9\\x02\\x0cr\\x98c\\xe3\\xd5z\\x94aO\\x00r\\xe8Q\\x19\\xe3\\x0c`[\\x19\\xabG\\x00\\xa1\\x15\\xb2`\\x0d\\x8dS\\xb0by1\\xd5U\\x05\\xca\\xc8c\\x1dHY\\xea\\xb2\\x0f\\x95^\\xac\\xd6\\x95+p\\x06\\x93\\xd7\\xf5(\\xab\\x93\\x07\\x9f\\xfc+[sT(|\\xf2\\xd7\\xb6\\xadV\\xa2\\x00\\xf6\\xc8\\x93\\x10\\x85\\x04v\\x18 \\x01\\xd6\\xa9\\x01\\x06H\\x805\\x8f\\xf5(\\xdbL\\xb8\\xcb=\\xf5\\xd2\\x0b\\xb6\\xf3\\x95\\xe0f\\xad\\x9e\\xfc\\x1b\\xdb\\xe4t\\xb1\\xea\\xba>\\xb4P\\xac->\\xe6I\\xca\\xcbD\\x0fOG\\x94\\x92\\x195\\xcb\\xc8IdlTHc\\xa7EOA%\\x8b\\xe1Y\\xa86\\xe4\\xc1\\xd9\\xce{*\\xe7\\xdb\\x03+\\xb6\\x97K\\x15\\xcdYX\\x84.\\x18\\x8b9C\\x83\\xd6\\x01V\\xcb\\x15Mb\\xd3\\x97(Z\\x8c\\xedO(k7\\x05\\n\\xb7\\x1c\\xa2#\\x8b\\\"\\xae\\xcb\\xb9\\x07\\xbb\\x8e\\x0d\\xfa%x\\xb1\\xeb\\xd4XQ*\\x86v\\x1d\\x1b\\x1aK%\\x8b\\xf3\\xf4\\x1f\\xed\\x0d\\x96\\x16\\xea\\xc75\\xb3Ck\\xf4\\xc0\\xc23\\x8bn,\\x93\\x93\\xc0\\x82\\xccXx\\xa2,Qeg\\xc4Z\\xa4J\\x15=Y\\x86\\x81\\x99?\\xd1\\xd6\\xe3\\x1a\\xa9@\\x00\\x9c P\t\\xf1mPH\\xcd\\xf1\\xf4o\\xe9+\\xb4\\xa1\\x8e\\x80\\xbbG\\xa5\\x810\\x8e\\x02\\x1d\\\\\\x88M\\xc9!<RB\\x88@\\x18'n\\xce\\xad\\xc79\\x8c!\\xa2\\xcdB\\x13B\\xfd\\xba\\x86\\xad=\\xae\\x1e\\xee\\xb2\\xd5K\\xb4\\xe2\\x81o\\xb3B\\xf3\\xd6\\x076\\x8fJ\\x88\\xec\\xec\\xfd\\x7fki\\xd0\\xc4\\x91\\xff\\x15\\x05nU\\xb5\\x04\\xdagUC\\xa0=k\\x81\\x99\\xe8\\xd6\\x89\\x11\\x981\\x95\t\\xe1\\xcd\\x17r\\xee\\xc2\\xd4\\xd5\\x0b\\x8dOP\\x98\\x82\\x91\\xc3v\\x0cM\\xa8\\x04\\xbec\\x08\\x8d\t\\x96\\x184\\xd3a\\x94du\\xc29@\\x9b1P+\\x1dt\\x0e\\xea\\x9a\\x92\\x1c\\xab\\xd0\\xbczo\\x01\\xd5\\x0f\\xa5\\xf6\\x84\\xa4\\xb7\\xf5\\xab?\\x84\\xeeJ\\x18\\xd8\\x1b\t\\x01\\x0d\\xd5#B\\x0f\\xe8 \\xf2\\x9e\\x14\\xc0\\x9e\\xfe\\x84\\xa2\\x89\\xee\\x8a\\xd0R\\x01i\\xa0\\xc6\\n\\x0c\\xf3\\xae\\xab\\xactI{\\xbfn\\x1d\\xae\\x08\\x82z\\xbb\\x06'B\\xf5\\xec\\xd1\\x03b\\x04Ms0>?}\\xc7Z\t&Id\\xcc4\\x8f\\x1b\\x88\\xb2\\x02\\xabI\\xd6T\\xd6\\x93\\xb4\\xf4\\x9b\\xa9|;D\\xc8\\xd7qx\\x9f\\x10\\x8b\\x96\\x81\\x10;T\\xa6\\xbc\\xd1h/\\xe8yr\\xaa\\xe2\\x96K\\xc0d\\xa8\\xaeK\\x9e/\\xa7\\x07\\xbfRD\\xb5C\\x04\\x0dy\\xa5A\\xec\\xc3\\xf2+1\\x0f\\xcb,\\x9a\\xbfG\\xbfrH\\xda\\xf86\\xbe\\x13\\x0es\\x9d-\\x96\\xd8\\xb3\\xc7\\xfa='\\xcb.^^\\xd6\\xcf\\x14\\x12+\\xd8e\\xf3\\x82!\\xb1\\x18\\x8cM-B\\xe6\\xc6\\xa6\\x16Y\\xc6\\xb1N\\xbbe\\x19\\xc7\\x18\\xf2\\xcf\\xd8 \\x17t\\xb8\\n9\\xbc\\xe3\\\"\\xfe\\x1d\\xdf\\\\\\x85cm\\xcbz\\x1f\\xdb\\xe9\\xc3\\xb1\\x8ee\\xb0\\xf5\\x06.\tv\\x88\\xb9\\xc4\\xb7\\x815\\x0b{\\x9f\\xd0\\xdd\\xb1\\xe1\\n\\x0f\\xfe\\x9d\\xad\\xa6~[\\xf8?X\\x80\\xfb\\xc6\\xe8Oh\\xda\\xbe\\xe6\\x99\\x04\\x15\\xf65\\xcf\\xb4B\\x14W\\xa3\\xb0P\\x9b\\xc7\\xf1\\xd5\\xe1\\x86I\\x11\\x81\\xef*\\\"\\x03\\xc1W\\x81Q\\xdd\\xf3\\x99\\x91\\xba\\xac%\\xeffn\\xe8\\xf4\\x11XF\\x894\\x00kc*\\\\\\x1b\\xef=Dk\\xff=\\xd6\\x89\\xa2\\xda\\x1797\\xf4\\x9bM\\x9f\\xe1k\\xed\\xc8@05\\x8a\\xe0!\\x98g\\x1fa\\x9a\\x13\\xe9\\xd7\\xce\\xb0\\x93V\\xe4\\xa5\\x91\\n{\\xc2\\x96\\xdd\\x8d\\x15H\\xbd\\xf0\\x19\\xde\\xff\\x88+\\x00Y\\xf8\\xbeZ\\xc6G\\xd8\\x95iC\\x1b\\xfeI[\\x1a\\x80\\x0f\\xa6\\nV\\xff5\\xde\\xa9\\x0d\\x93\\xc4\\x824e \\xd8\\xa4\\x1d\\x81\\xb1\\xfdC\\xcc\\xba\\\"\\x9d\\xa8\\xe7\\x116\\xc3DC\\x81\\xfd\\x9fc9&\\xaa{\\xa112\\xa6hl\\x06\\x8f\\x02\\xbd&d\\xeb\\x03\\xf3(\\xe1#\\xec\\xb4\\x13\\xe9\\xc4\\x12o\\xd2Z0\\x17,\\xcbn(O\\x98\\xcf\\xb0\\n\\x1bi\\x006]o\\x8c\\xf8\\xc0\\xb1\\xceR\\x01~\\x83\\x19\\xe8\\x86\\xf4\\x8f\\x90\\xe9\\xa7\\xb1M3*@x\\xef#%R=\\xc2\\x86\\x9fhT\\xfb.\\xec\\x861\\x9e\\xe2+\\xd2\\xc8@\\xb0\\n`\\\\)\\xb1\\xf1i#\\xe6\\xa1\\xf5\\xc5U|\\xbdo\\n\\x16E\\xb0_Z\\x14sx\\xf0\\xf0\\x11\\x96\\x11\\x8c\\xef%y\\xc5vC\\x0e\\xeb1\\xa1  N\\xe2k\\xbf\\xc8(\\x17\\x04)\\xc0\\xb3\\xf01\\xa6\\x14Q\\xe2\\x81\\xb5\\xe7mL\\x8b$\\x04R\\x8a\\xd8`2\\x13\\x17\\x16>\\xa2\\xc4\\x13\\xb8\\xff1A\\xe4\\xc4\\x1f\\xa8\\xec$d#\\x13\\xf5b\\\"\\xde\\xc6(I\\x83\\x08D\\xb9\\xc7\\xf8>7J$\\xa9zLH\\xb1\\xfd%\\xe1\\x0d\\xa3\\\\\\x90\\x01k\\xc7\\x0fB\\x89u\\x8a\\xa4O\\xc8.\\x1a\\x08!\\x94\\xeau\\x8f\\x07\\xb8\\xca\\x86\\x11\\xf4\\xf0\\xf6F\\x06\\x82\\xa9\\xc8F\\xe1s\\x8bq\\xb2p\\xc7%\\x8f\\x1a\\x03\\xc8\\x81zx\\xa97T\\xb6\\x06\\xb2\\xd2\\xea;\\xd9\\x9a\\xb1\\\"q\\xefbanc\\xccu|\\x11!2\\x12\\xa6\\x82k\\x9f\\xfd\\x19fe\\x1a\\xaa\\xc2\t\\xff\\x94\\xac\\xfb\\x98'\\x9bN\\xc2\\xc3l\\xc8S\\xb86\\xfc3|\\xd4\\xb42\\x85M\\x06B\\xd7\\x13\\xd8\\x87\\xe7Q\\xd1\\x01-\\x95\\x94\\xb8\\xf2\\x14s\\xfc\\x92}\\x82B\\x94m\\x02\\x016\\x9d\\xc4<\\xcfF\\x81\\xc0\\xc61\\xf9\\x8b\\xe13&}1O\\\\\\xc91\\xfe\\x19\\x05\\xf82\\x1f\\xca\\x0c\\x05\\x8c \\xd6\\xf3Mlt\\xd6\\x94\\xe7\\x01\\x99>O2\\x1eJ\\x81\\xecM\\xac\\x85lj\\xfe\\x8ayu\\xac\\x01XX\\xde\\x84\\xa7\\xd2\\xb1\\x96\\x1b\\xc3S\\xe9\\x98\\x1c\\xc7Cxu\\x00\\x1f\\x8ax\\xa8^q\\xa6\\xfeX\\xf1P=\\x17\\xfd\\x17\\xf8&tS\\xf6\\x8c\\xe9z,;\\xc6\\xfc.\\xf63wX\\x9b';\\x86Q\\xe1S\\x12\\x07N\\x08\\xef\\xc7\\x93\\xa4i\\x00\\x82\\x84jx\\\\\\x02\\x06i\\xb7-\\xd5$\\xd1?j\\xf9\\xec(\\xc6\\xff\\x11\\x16\\x92\\x05\\x104\\x7f|\\xb2\\x04D\\xd7\\xc2\\xa6\\x04\\x01\\xf3\\xa4\\x9aE\\xde\\x81\\x93 p\\xf3#\\xb8\\x11\\xe4\\xe0\\xd3\\xfa\\x18\\x0bE\\x9bA\\x9e\\xea\\x87\\xd9?\\xc6h#\\xaa\\x8d\\xc2:\\x88:l\\x1f\\x11\\x1c\t\\xf24\\xdb\\x97c\\xfc\\x08\\x8b\\xeb\\xf1\\xc8\\xd6\\xdaf\\x04\\xc9\\xa8\\xc4\\n\\xcba\\x92\\xcc\\x83\\xb1\\x90\\xb9\\xb4\\xa1\\x10c\\xd9\\xa6\\xbe|\\xc5bml\\xa4\\x04l\\xbf\\x8a\\xa3\\\\>\\xf6\\xf81\\xde\\x95M\\xb9\\xecO0\\xd3\\x05S\\xe4}\\xcc\\x0d\\xe3DE\\x18a\\xc2nL\\x94\\xf7\\xb1<\\x1d\\xc3[\\xf5O\\xc8y\\xd0\\x96K\\xfa\\xdd\\xad\\xe9\\x9b\\xbb\\xa50&:\\x02\\xee\\xaaw\\x83\\xad\\xe3(\\xdf\\xb3\\x90\\xb6-\\x97,5%\\xaa\\x96\\xf6\\xda^\\n\\xab4f2e\\xe3\\xab\\x05T\\x8e\\xd4\\xc2\\xb2\\x96\\x84+;\\xce\\x13\\xccu%P\\x87Ya\\xe9J\\x00\\xb5\\xc5\\x10\\x0fh3Q\\x16\\xc37\\xe9\\x16i\\x08>E\\x12\\x92\\xdaq0\\xd1Qht\\xf8p\\xc1j\\x19z\\xc3\\xc0\\xd5S\\xed\\x98\\x02m\\x96\\x1ej'\\xd4)\\x89\\xfaN\\xa0\\x04\\x00\\xac\\xb3\\x08\\xa0V3\\xde\\xc5\\xca\\x94\\x00\\xa698\\\\\\xbfKx\\x87z\\x7f\\xed\\x1e\\x96D7\\x93(\\x8e\\x12\\x9dI\\xed\\x1e\\xc6\\xcc\\x02\\xac\\x12\\xb5\\xe1\\xfa\\xa2a\\xf0\\x9b\\xb7\\x80\\xea\\xb6-N\\xf2\\x04\\x04\\x83\\x07\\x98en\\x1a\\xa1\\x11\\xdb\\xc6bc\\x91\\xc6\\x86\\xc9Mx\\x95\\x87\\xac\\xbf\\xfc\\xfc\\x1b,\\x96\\xc6y\\xe8*\\x13\\x17\\x06\\xbd\\xae9,&\\xd7\\xb75\\x00\\xef\\xc8\\xed\\xbal\\x8b\\xafk:\\x87\\xcd\\x13\\xb7\\x0d\\x9d\\xc3\\xec\\xe2\\xb6\\xc1\\xd9\\xb7\\xb0\\x80\\xf9\\xbaY\\x15\\xact\\xdf6\\xab\\x82\\xf9\\xfc\\xed\\xdc\\xc9x\\x12\\xfa*3\\x01\\xc9\\x8c*\\xe0z\\xf4\\x98\\xeb\\xea\\xd8\\x94\\xd7l\\xdf\\x15\\x91\\xc2\\x02\\xd5\\xeb\\xbb\\x1b;\\x0b\\xec\\xdb\\xado\\xe3*Qf\\xf9\\x9c\\x98\\x84KX\\x9b\\xd0B\\xec\\xbd\\xbf\\xfd;\\xcc{\\xb6\\x8c/5\\xde\\xa0\\xc4@0\\xc3I\\x1c\\x0f\\x12\\x90\\xde\\xc3;\\x91\\x94\\xb34a\\xfa\\xb1\\xa5c;1\\x1a&\\x1a\\x80u\\xf0\\xc4\\xa4U\\xc2'S@\\xe4\\x94\\x1ea^\\x9f\\x14\t\\x97hs*s\\x12fo[Z\\xd9\\xc4R\\x97\\xb9\\xfc\\xa2\\xfd\\xab\\x1a6\\x00\\x10\\xbc\\x0f0]KLR%:\\xe6\\\"\\xa9\\x12\\x19Bq\\x97f\\x81\\xa8JX\\x84J\\x8atKXQL\\x8atK\\x18\\xf1\\x13\\x93n\\xe9\\x03L\\x0f\\x92R\\xba%\\xac\\xe9l\\x99tK\\xefc\\xa4O\\x8aLLX\\xd2(]\\x03\\x92E7\t\\x97\\xb0\\xc2\\x94\\x14\\xb9\\x98(\\xeae>\\x10M\\xac5IH\\xa8\\xfd\\xe7q\\xbd-\\x93\\x8d\t[\\x18\\x13\\x03\\xc1\\x1c%1y\\x9a0\\x05HL\\x9e&\\xb2[:O\\xd3]\\x1b@\\xd4\\xb9A\\x01*O\\x13\\xa6\\x84I)O\\x13\\x16\\xd3\\x93R\\x9e&<\\xa3-\\xe3\\xa7\\x8f\\x15\\xfb\\xc4@0\\x03\\xdf2~\\xfads\\x0d\\x04\\xd3\\xd6\\xc4\\xe4i\\xc2\\xc6\\xb3\\x04\\xf24\\xe15\\xd8\\x02\\xcd\\x91\\xe0>8\\xc3b\\xad'\\xd1y\\x9a0kM\\xbc\\xc0\\xa4\\\\\\\"\\x87\\xdf\\xe4p\\\"\\xf8V\\xe4p\\xa2 \\x15\\x17Jh\\x19\\xc8\\xe9\\x04?9\\xf0t+@g\\xc9%\\xd4\\x99;\\x81\\xc9\\x92k\\xab\\x08\\x88K\\xc6\\xc6A\\xdey\\x0f\\xeb\\xae[+\\xe7\\x05\\x91\\xc3|5\\x81W\\xfe\\xf1g\\x8b\\xff\\x0fvV\\xd6E\\xd03r5\\xc5vcT\\x90<\\xb7\\x9a\\x14\\x890\\xb0=\\\")\\x12a\\x90\\xe6U\\x0eh\\xb2BZ\\x90 \\xdd\\xe8\\xc4\\x16\\xf8\\x16\\xdb\\x84'\\x93\\x17\\x7f\\x13\\x9d\\xd8\\xe2\\xa7\\x04\\xe7\\x8a\\xc4\\x16\\x98ln\\xc98\\xba\\xcf\\xb1\\x8e\\x95\\xc8\\xcf\\xbf\\xa1]DR+'\\x8cX\\xc6\\x88\\xe3|]\\x18\\x8bQ$9\\xe6>\\xc8}\\x820\\xa7\\xaa\\xf7\\x84\\xb5v%g\\x17fTE\\x89J\\xd4\\xfbO\\xf1\\xfd_\\xd1\\x91I\\xda\\x85\\xe9\\xbfl\\xaa\\x9c\\xb5\\x0b\\x93\\nY\\x80\\xa6\\xed\\xc2*\\xb5*\\x86\\xf3v\\xe1\\xd3b\\x8a\\x95\\x12wa\\xb3\\x16*\\xa3\\xf3\\x0ea\\xf1G\\x16;W\\x8b\\xa7\\xe5\\x04V:\\xc2\\x95\\\"Z\\xa9\\x10\\xf8\\x06P\\x8c\\x13EP\\xf6.\\xeb:\\x97\\xf2\\x80A)\\xc2.D)\\x9c{\\x8bPf\\x9ff\\xd4\\xb2.\\xa2N\\x97\\x85em\\x0d,\\xb0\\x13[F,\\xcfr\\x13Z(\\x8a\\xa0\\x8cYx:\\xc4\\x17\\xf1\\x01\\xa1\\xceVG\\xc4\\xa6B\\x85\\xf7\\x1a\\x96\\xdad1\\x925\\x0bK\\x04\\xaaTur\\x98R\\xa9B\\xa5\\xa4WX\\x8b\\xab\\x94\\xd0\\xf8\\x87\\x05s\\x94\\xd3\\x8c N\t\\xae\\x9b\\xc0\\xbak\\x02\\x87\\xee\\xd7D\\x88\\xf2\\xd3\\xea\\x83\\x8d\\xa4\\xa2I\\xa6CP1\\xd0\\xe9 \\x08\\xfa\\x05\\x90\\xf3\\x81HQEf\\x1bL\\x0c\\x93jf\\x1b\\x02\\xd6\\x81\\x0cO\t\\x933\td0WLL\\x02\\x19\\xbc\\xe8\\x89I \\x83iKbn\\xd3\\xb0&\\xb8\\xa5uQ\\xc2\\x95\\x8d.J\\x04\\xde\\\"/\t\\x1duqGB\\xf0/\\xcaC\\xaf\\x94\\xe0\\xfe\\x03\\xac\\xde'0\\xc6\\x8e\\xe53\\xdc\\xf8>\\\"\\x9a]\\\\r;$<\\xc2d\\x03!\\x04\\x19\\x85\\xf0\\x90\\xb3[d\\xea\\xc0\\x06\\xb5-};E\\xebh]\\x1b\\xfb\\xc6l)\\xc9\\x8b\\xec}\\xedw\\x99\\\\\\x83\\x08\\xd1&\\xb9\\x06\\x16l\\x93\\\"\\xb9\\x06\\x01\\x15\\xa9)\\x082\\x17t\t\\xc7ni\\xdf\\xc3\\xf7\\xb0\\xa5\\xab\\xe4db\\x81H<z\\x0f_\\xc1\t\\x88\\x8e\\xfe\\xf9\\x10\\xcb\\xf8[y\\xc0\\x97y\\xe0\\x1c\\xca\\xe7\\x10\\x9e}\\x885\\xb2$\\x0fL\\xa2\tl\\xc2I\\xa41\\xf1m\\xac1n\\x1bm\\x1f\\xd3\\x84\\xd4@\\xf0\\xe6\\xa5=\\xbd\\xb6\\xb8\\xce6\\xa4\t\\xc1\\xe6Pp\\xb4\\xbc\\x8f\\xd5\\xefTE\\x1c?\\xc1\\x8b\\xb0m\\xb4\\x12\\xac\\x19\\xa4\\x06\\x82\\xc5.\\xe3\\xb4y\\x1f\\xcb\\x96\\xa9\\x0b\\xf6F\\xbcZ\\xc6\\x97\\x93\\xf4\\xae\\xf5\\x1b\\xbcX\\xa9\\x81`\\x8b\\xcd\\xb6r\\x88\\xf9\\x0c\\xd3\\xfeT\\x030\\xc1H]m \\xc5\\x87&u\\x95\\x81\\x14+\\xb4ia\\xd9\\xc5\\xf2a\\xea\\x96\\x8e6&\\xde\\xa91\\xfa\\xe2+\\xbam\\xd0\\xbf\\xe8ZJ\\xfd\\x0b\\x0b/&7 \\xb6\\x12\\x08\\x00\\xdc\\xe9\\x90\\x96<\\xe5K\\xf0\\x18\\x0b\\x05i\\x11<\\x8d\\xa5\\xcd\\xd4\\x04Ocu55\\xc1\\xd3VHM\\x9e\\xa5\\x144\\xa6\\x8f1\\x99O\\xf9H\\x9c\\xb3W\\xc9\\xe7t_\\xb9]\\x91e\\xe6Y\\x91\\xa6\\x02\\xeb\\xc5\\x02\\x18\\xd6@\\x0e\\xe4\\xc2\\xfd%\\xde\\xd1m\\xad\\xc3\\x90\\x1a\\x1a\\x80\\x913\\xad\\x7f\\x025\\x15\\xc2\\xa0\\x80\\xfc\\x12kD\\xdb\\x17\\x96Try2\\xa1\\xa1\\xab\\xd2\\xcbc\\xaa\\xbf\\xadj`:\\x92\\xaa\\xf2\\xd8\\xe0\\xbb=\\x8c\\x12)D\\x17r \\xc6CYd\\xad1\\xf3p\\xc5!\\x1asR\\xea\\x0f\\x8d1G\\xf60AW\\x92ev\\xe3\\xa2\\x00\\xf6#K\\x87b\\x82\\x1fcAb\\xdb\\x1f\\xc0\\xdb\\xafdX\\n\\xf0\\x1b\\xecf(\\x01\\x82\\xcc\\xff\\x06k\\x1c\\x122\\xb6C\\x94\\xe7!\\xfa\\xee'~\\xaa\\x12 `\\xcb\\x9eq\\xf5\\xa6\\xfdkOo\\x0b\\x04RU\\x11\\n\\xe7\\x8fT\\xbaHBy\\xf5\\x93\\x86\\x84\\x90\\xf9#\\xf5\\xf0&&\\x8a\\xa9?R\\x99\\x13\\xb0\\x18\\x95\\xfa##\\x14a-=\\xf5G\\xe6\\x01A|\\xe1\\x94\\xd6f\\xae\\x97\\x8fg/\\xf9\\x89\\xab\\x92\\xec\\x10\\x1a \\xe0\\xcd\\xc7w\\xe4\\xa4Cy~>\\xc2zE:\\xe2\\xc5\\x93\\xf7d\\xbc\\xb5\\xe8:\\xf2a0\\xefR\\x88\\xdc\\xc9'd'G*\\xaf<65\\x08\\x00\\x84\\xaa\\xfd\\x0d\\xcd\\x02\\xb5\\xbdqn\\x07\\xce*\\xa9\\x16\\xf538\\xadX\\x9c\\x01G\\x9f\\xe3\\xf4\\xab$\\xe3\\x1fb!_\\x00\\xd4E\\x1aa!F\\xf0\\xc5rQj d\\xc9bG]\\xc1\\xfe\\x92\\xa0\\x99\\x04\\xe9w\\xfd,\\xd0\\xc4z\\xf0\\xd3\\xdbJ\\x96x@\\x98\\x9f\\x80\\x80\\xaf\\xd1\\x9f\\xd3\\xb5Ko\\xab\\xdc!\\x0f\\xb0\\xb0,!P\\xefg\\x965\\xbf\\xad\\xfcg\\x88\\xd4t[\\x076`\\xb5\\xa7\\x08\\x94x@(\\xce\\xedR\\xf8\\x82\\xb5^\\xe1\\xd7o\\xab\\x0b3 \\xb4\\xd4D_<\\xc04P\\x82L \\\\\\x0dPuH\\xebJK\\xd9{\\x98\\xd5\\x97^\\xae'R@=\\x08j\\xe1g\\xa8\\xc8.\\xd2p\\xc0\\x86\\x02\\x85R\\x8f\\x17\\xcb\\x16\\x06\\xd8X\\xa4h\\x8a\\xb0\\x11Yn7\\xd4#\\xa6\\xf8\\x93;p\\x83L\\x1e\\xf2Oo\\xe75\\x80\\xda\\xeb\\xa5msk\\x89u\\xc8\\xd4hR\\x98#\\xa7\\x0d\\x02I\\x03mJ35\\xee\\x87\\x98jogp\\xfa\\x08 U\\x80\\xbf\\xb0\\x01d[\\x7fAD\\xc6,q\\x04\\x9f\\xe6q\\xea\\x07r\t\\x7f\\x83\\x95$]D9_as\\\\\\x9a%\\xd2\\xeeE\\xb2\\xdfm\\xc3\\x01|H\\xf0Z\\x1dL\\xc2r\\xf3\\x9e~\\xb3\\x9b\\xa8\\x0e&\\x16\\x89\\x02\\xe0d\\x91\\x19\\xe7=\\x9d\\xaa\\xe7)\\xe1\\xbayo\\x94\\x83\\x07\\xf3S\\\"[\\xe7=\\x90\\xfa\\x9fb\\xbb\\xa2\\x80@_\\x84\\xc0\\xe6=\\xcdE\\x9f`\\xb2\\x9c\\xe6=\\xc3E\\xb1^Z\\x1c#\\xdb\\x1a\\x990*+H\\x11\\x05\\xcb\\xb4\\xcb\\x11T\\xd6\\x0e\\x8b\\xb3d\\xaf\\xad\\x12\\n\\xdb\\xa6\t\\xd0\\xdbu\\xeb\\xa3\\xfd\\x1f\\xb1-A\\x80`\\xd3\\x9f\\x12\\xec\\x11 \\xc8\\xf2F8\\x86\\n\\xf6\\xa2\\xfaj\\xee\\x96]\\x8f\\xb0\\xd6*\\xc0e\\xd7#\\x8cL\\xe5`_\\xd2\\xb6%\\xd2\\xb7\\xa6\\x04r=\\xaa\\xeb\\xa5\\x14\\xe1k\\x19\\xa7\\x0eY\\xb3\\x80\\xca\\xaeGD5\\x15p\\xedzD\\xd4S\\x01\\xacUPs\\xb7^\\x0b\\xcd\\xdd\\xe1\\xce\\xd0\\xb1_Bm\\xc3e\\xd2=\\xc2\\xf7j\\xbf\\x83!\\xf0\\x97\\x98\\xb8n\\xc3v?\\xa4\\x15\\x80}\\xd2\\xd3\\x1a\\xcf\t\\xf2\\x82OO\\x9a\\xc7\\xf3\\xe2;\\x91M\\xf3\\xf8\\x84\\xf8N\\x84\\xc7<\\xd6\\xe4\\x05[ \\x05H#(\\x11XM\\x84 \\x05\\x009\\xa0\\xd8\\x1e\\x1b\\xd2\\x83\\x05\\xb8j@w\\x0d\\xb08\\xa0\\x96\\xa6\\x87\\xca7\\xfcWXQ\\x9405\t|!\\x9c\\xe6\\xb1I\\xdbJOSl\\xa8!\\xa55\\xb1\\xa2\\x86Dp\\xcdcE\\x0d)\\x1d\\x8855|J\\xc45#\\xed\\xd8\\xb6\\xbfn]*b\\x90eI\\xca\\xe1\\x94V\\xa8\\xa6h\\x96\\xa1\\x96)\\x9ae\\x8e\\x9a\\xa2\\x11\\x9e\\x9e\\xc7z\\xad\\x89\\xc0!@@\\xd1\\x08\\xbb/b\\xd6\\x88\\x19\\xc6\\xc4\\xacachjb\\xd6\\xac\\x90\\x9a\\xbc\\xd7\\xe9~\\xa8\\x8d'D\\xba\\xb9\\x03\\x91S\\x9f`=q\\xc7\\x113\\xfaA\\x86>gN2\\x80\\x9dy\\x17Oh\\xc7\\x91!\\x9aX\\xaf\\xc8\\xe4\\xe7\\xdf`\\xe4\\xcf\\x94\\x9d\\x9f\\xf8\\xea\\xef\\x18k\\\"i\\xc9@\\xb0\\xa6\\xb1cl\\x80\\xd8\\xfe\\x92\\x19\\x08\\x96\\xa9\\x94zF+H\\xdd\\x0c#\\xbf\\xce\\x9c\\xfcclw\\xcdx\\xa0\\xbcb\\xdf\\xc5\\xeclG\\xdb\\x8b\\xf0\t\\xcc4\\x00\\xdb\\xcd\\xb3!O\\xf8I\\xd1\\xd8=\\xb2,\\x02\\xd4\\x8f@b'\\xd0\\xac\\x11\\xba3\\xe4\\xf0\\x06*\\xa6g\\x99\\x06`\\xb6)\\x01\\xe9\\xa1\\xc0\\xf7\\xdf\\xe0\\xc3)ac;\\xc4w\\xf7J\\x197\\xf1A\\x91\\xf0:cJ5\\x03\\xe2[\\xbf\\xa2/\\xf5gC?T\\x9e\\x8d\\x98\\xdeU\\xb3\\x1dbh6\\xdcS\\xb1\\xbdtD\\xf5\\xe3\\xb9\\xb0\\xb1\\xb5.N\\x066\\xc7d\\xc3(\\x11X\\xf8\t\\xe6\\x1c\\x86\\xbb\\x93\\xb6t<\\xce\\xaf\\xb1%\\x1a\\xa5\\xdb\\xc0\\xc4\\xce\\x92k\\x03\\x8bq(\\xd1\\x06\\x99\\xa0\\xba!\\xf9\\x84\\xe0\\xa0\\x00\\x80\\xec\\x8d\\x15z\\x00\\x01\\xc1\\xf8\\x88\\xa0\\xa8\\x00\\xc2\\xbb\\xb9XP\\xc9\\xea\\x1e\\xe0\\xce\\\"\\x0e>B\\xd8n\\x99\\x81\\xd7\\xee\\x03r\\xd2\\xa3\\xb8\\x07\\xe7\\xed],\\xd0dQ\\xac\\xd3\\x18\\xe3\\xa1\\xed\\x18\\xdb\\x06\\xa6\\xed\\x99\\x81`\\xca! *d\\xe3)6\\x1bdQ\\n\\xc3\\xc6rSVx_\\x93\\xa3\\xb6\\xb5\\xb8,\\x99\\xe4\\xdb\\x84\\xb0$\\x0e\\xec\\x91\\x05R\\\\\\x9f\\xbf\\x87\\x15.\\x0d\\xd4\\xde\\x0b\\xefaA\\x0d\\xc7\\xee\\x93\\xac\\xea4t\\x9f\\xa4W\\xd7E@F\\xc6HJ\\xe2\\xfa\\xc9\\xa5\\x9a%\\xac\\x9f\\\\\\xafe\\x89zU\\xe5\\xd9/\\xb0IL_\\xc9\\xd9z6\\xb6\\xc1\\x8f\\xb0\\xdc\\xbb\\x93\\xf8q\\xc0\\x97\\xeb\\xe8\\xb2\\x80\\xaa\\x9a\\x96\\xe1\\x02\\xea\\x7f\\x88]\\x06\\xb3\\xc4\\xcf\\xd4\\xd6~\\x84e\\xa3,\\x89\\xf9\\x1d\\xe5F\\xf5gx\\x0fw\\x8c-\\x00k\\xbe\\x99\\xb1\\x05\\x10\\xa2\\xa5nz0\\xfb\\xcf\\xd4U\\x0f\\x96_v\\xb4\\xf9\\x9f\\xa0\\xb7\\xb6\\xff\\xe3E\\xd81\\xcf\\x0f\\xd0>4\\x04_\\xc0d\\xfb>\\\\\\x8c\\xdc'\\xdb\\xb4\\x1f\\x0d\\xb9\\xe3U\\xf3K\\x12\\xea\\x08\\x85\\x90w\\x13&1\\xbb& \\x1e\\x1f\\xba\\xdc@\\xf0~\\xefj\\xd1\\x07\\x8b*\\xb9\\x96\\x960?\\xcau\\x0d\\x0c\\x10M\\xe9\\x00\\xfb\\x0f\\xf0\\xb6\\xec\\xf6\\xd4\\x93\\xca\\xf8\\xa67W\\x80\\x7f\\xc0s\\xde\\xed%\\\\\\xc6y\\x7f\\x86\\x97,7\\x10L\\x13wu\\xb4>\\xde\\xb3\\\\\\x030\\xfe\\xed\\xc2\\xa8\\xb0\\x1c\\x93\\xc3\\x98\\xf0\\xa9\\xcf=\\xed:\\x809\\xc6\\xae\t\\xd6\\xc7\\x04<7\\x10LZs\\xe3\\xca\\x89M]y\\xe1?\\x88\\xf9\\xe1\\xae\\x16s\\xb0\\xd8\\x91k\\x00V\\xd7vM\\xc0<\\x16as\\x03\\xc1\\x879\\xd7\\x9e\\x85da\\x86N\\x02\\xeen\\x98d\\xe6&\t-\\x1ern\\xde\\xc5\\xc2\\xdaJ.\\xdf\\xa7\\x12\\xa0w1\\x95\\xca\\xcbOWY\\x80*6\\xe5]l\\x1e\\xcd\\xcdC\\x18X\\xfc\\xda\\xd5\\x11\\xf2X\\\\\\xcf5\\x00\\xbb\\xedC\\xb0\\xed\\xc7\\x98\\xc1\\xee\\x86\\x9e\\x8e\\xa9\\xc5\\xef\\xe5\\x00\\xc8\\x84\\xd4\\xe2Ce\\xc0:\\xa6\\x16\\xd3sY\\x00\\x07\\xd5\\xe2{(c\\x8a}\\x88\\xf1SBt\\xb6\\xff\\x07\\xf8\\xa8\\xed\\xaad\\x0b\\x9fa\\x0c\\xc95\\x00k\\xf4\\xbb\\x86\\xc5c\\xcd-7\\x10L\\x04\\x9b.\\x1cw\\xe3\\xc2\\xb9\\x86\\xd0\\x95\\x02f\\xa9Wv\\xda|\\x1f\\xdb\\x8c\\x15\\xb8r'KOh\\\\\\xbd\\xb3\\xc5\\x8a\\xc5n,\\xa4\\x81b|\\x18\\x9eW\\xe1\\x96\\xfa\\xd8+\\x98\\x9c\\xeaX91\\x9aw?\\xc8\\x19\\xd2%\\x8a\\xa7\\xa4\\xc8a\\x8ak\\xb77\\x8e\\xf1[MX\\x9b\\x94E\\xd0\\xad1\\x96awU\\x08\\x14^\\xe4\\\\}\\xc7\\xeb*\\xbe\\x0fm\\x15v\\x8d\\xc1\\xfbs, \\xe6\\x85-\\x9cn\\x93v\\xbf\\xc4\\x95$\\xa4\\x187mSa\\x10x\\x7fb\\x99=O\\x0c\\xa9\\xc1\\xe7)/?\\x02e\\x01jRC\\x16\\\\9\\x19~F6Z\\x03\\xb0\\xd8\\x92k\\x0f\\xaa_`\\x82\\xbbkD\\x1d\\xc2?\\x8c\\xa8\\x83U\\xb7\\xdc\\xbc<\\x84\\xeb\\xecj\\xdd\\xe83L\\xbbr\\x03\\xc1\\xf2w\\xae\\x9d\\xbb0M\\xca\\x8d\\x0b\\x17\\x96ps-\\x0b\\x90\\xd5\\xdeUy\\n\\x08\\xe1V\\xdf\\xb1.\\x97\\xef\\x1ba\\xfd\\x11\\x96\\x9d\\xc6N8\\x80;\\xc8G\\xb8\\xb9\\xb1\\x934\\\\\\xab\\x8c\\x9dD(\\xce\\xd2c\\x01\\xaf\\xd0\\xd8I\\xc2H\\xe8\\xbe\\xf0\\x9a\\x06\\xc6\\xc2\\xb1\\x93\\xd4\\\\\\xc6\\x08\\x88o\\x0b:\\x17\\x80\\xfa\\xb8\\xc6\\xb1\\x16\\xa7,\\xed%Vz\\\"\\x00\\xe0`\\x8f\\xe5\\x86\\xb1\\x93\\x18O\\x0clR\\x11\\xb0\\xea\\x1d\\x03\\xbd\\xd2-\\x97Q7\\x0d5\\x85*\\xa6\\xbd\\xe62\\xca\\xc0g-\\xa4-\\\"\\xc4\\xb6!`H\\xd3\\\"\\xaf\\x03\\x97\\xca\\x18\\xaaH\\xfc\\xa1/+\\xcd\\xfa)f\\xe1c\\xc53\\x9e\\xe2\\x83 \\x002\\x8a\\xef)>\\x08\\x97A$\\xc4\\xe4l\\x0c\\x9f\\xf1\\xf0\\x8a$f\\xb8\\xeb\\\"\\x87\\x19\\xee\\xa1HaFFe\\xea`]H\\xb6&%\\xaf\\xa7\\x98\\xe3^V\\x9e\\x9c\\xf8\\xa6m\\x0c\\xdfI\\xea\\x991\\xe7j\\xb9\\x1e`qx\\xcc\\xb9\\xd2W\\xb1\\n1\\xe6A\\xe0\\xc3\\xbd\\x02&w\\x97y\\xa2\\xda{\\x93\\x1c\\n\\x0d\\xfa\\x11\\xad\\x93\\xd5\\xd5\\xc8j\\xca\\x97\\x13\\x9bb\\xb9T\\xc3\\xd5\\x13\\x17u\\xd5\\xb7y\\xec$\\x8e\\xf2+\\xff+,B\\xebR\\x85\\xe5\\x07#3}\\x04\\x04\\x13\\xe5\\xcbZ\\x0c\\xc7\\xc2\\xf6X\\x030\\xee\\x8e\\xb5\\xc4JQ\\xdf\\xe4\\x8e\\xb4dz\\x1c\\x9b\\x9c\\x8b\\x96\\x0c\\x89\\x97\\x8dx\\x86\\x95\\xf1\\xb1\\x81\\x10:[\\x1b\\xef=6o\\x17\\x92sg\\xd8\\x16!R\\x86ma\\xc5z\\\\\\xba\\x01\\xb6\\x90\\x8b\\xd2-\\xb0\\x15j\\xeeKj\\xa0\\xbc\\x8eZ].\\x0e\\x17\\xd6\\x00\\xc6w\\xfc\\xc1\\x1dG\\xb2\\x82G\\x18\\xf1\\xafh\\xbfV\\xcc\\xfd\\xf65\\x00\\xf3\\x9d}\\xee\\xa9\\xf3\\xf0\\x18+\\x00W\\xb8\\x07Q\\xbd\\x0f\\xf1\\xe8\\xf65\\xe4\\x1e\\xde\\x17\t\\x81C\\x89qj\\x9f\\xfb*[\\xcc\\xdb\\x18\\x97\\xafht\\xc3\\xf3\\xd9\\xd7\\x00<\\x9f+\\x063\\xb0\\xa0\\xb3o \\x98\\x94\\xec\\xdb;\\xdfO\\xac\\xa7g?\\xe1N6\\xb4\\x82\\xae\\x18D\\xc2\\x87`\\xdf \\x12\\xd6A\\x0e\\x94'\\xd4C\\xcc\\x04\\x0f\\xd4\\xce<\\xfb\\x05\\x16\\xc0\\x0e\\x94\\x13\\x14\\xd1\\x9c\\x0e<-\\xfe\\xe0k\\xe67\\xf4za\\x9b\\xc2\\x81\\x06\\xe0\\xfd?\\xd0\\x0f\\xb5\\x90\\xb7o\\x0f\\xb4\\x8eL\\x9e\\xbb}Cf#\\xc06\\x90\\x03\\xf9\\x15\\xab\\x00\\x07:\\xbd$y\\xcb\\xf7@\\xdfA\\x927|\\x0f\\xd4\\xf3d\\xe4!\\xdd\\x03\\xfd\\xe2\\x0bf\\x05\\x07:\\x99\\xe0Gx\\xaf\\xde0\\xe8\\x80\\x95\\xef\\x03\\x03\\xc1,\\xef\\xa0\\x88\\x0d\\xc1l\\xea 2\\xd6A\\xb2\\x91:<\\x9d\\xbc\\xdc{\\xa0}>\\xc8\\x83\\xbdo\\x18L\\xc2\\xc4\\xea\\xc0`\\x12&\\x8a\\x07\\xc6;\\xee#l\\x1f<0\\n\\xd7G\\xf8\\xb6\\xed\\xc0\\x88\\xcc\\xa4\\xa7q\\x0dK>\\xd8\\xaf%\\x00W\\x8d\\x8d\\x0e\\x93\\xdfC\\x03\\xc1\\xb8yu\\x11\\x84\\x12\\x8c\\xe6\\x87\\x0e\\xd8\\xaf\\xf0\\xfe\\\\\\xd5$\\x0b/\\xda\\xa1\\x06`\\xbc\\xbc\\n\\x1d`\\xd9\\xe6\\x10\\xda\\xc7\\xa4\\xfd\\x90\\xcbdBX5\\xbb\\xaaO\\n\\x96\\xdf\\x0f5\\x00\\x8f\\xe7\\xea*\\xf4\\x8b\\xef\\xa2\\x0f}\\xe8\\x18+\\xadW\\x0d\\xe2a?\\x9fC\\x03\\xc1D\\xff\\xaaA\\x14L\t\\x0f\\x0d\\xa2`JxU\\xd9\\x0b\\xb1\\x08t\\xa8\\x0c\\x86\\xa4<\\xe8;\\x9f\\xe1\\x83z\\xa8\\xf4 l\\x00\\xb8fBQ0\\xc2\\xdf1\\x10LT\\xae\\x99\\x1b\\\\\\x8c\\x1ew\\x0c\\x04\\x93\\x90k0\\x0d\\xbc\\x8cw\\xe03F\\x82k\\xea\\xe5vL\\\"\\xee\\xa8\\xef\\x98\\xa6\\xdc\\xe1\\\\?\\xe2\\x89\\x19\\xc65\\x9eDW|/\\x1b\\xd6?\\xa3vM]\\x9fb\\xc9\\xf0\\x8e\\xfa\\x8eq\\xe5\\x9a\\n\\x9b\\xc6]\\xdd\\xd1\\xc8E\\xa6\\xa3,\\xfe\\xa4\\x030\\xf8\\xff=\\xee\\xe0\\x8e?0!c\\xf8l^\\xd3ar\\xf8\\xb6\\xed\\x8e\\xc1;|v\\xae\\x19\\xbc\\xc3D\\xfa\\x8e\\xc1;|p\\xef\\xec\\xdf\\x92k\\x85\t\\xd7\\x9d\\xfd\\x10\\x00\\xef\\xb6\\xcc\\xf7\\xbb\\xf2\\xaf\\xbb]\\xd6\\xcfC\\xe9g\\xda\\xe6]\\x96uY\\xd8a\\x7fd\\n\\xb5\\xf2\\x94\\xb34K|7k\\xbdj\\xbe\\x8e\\x9d\\x84%\\xec\\x0c\\x0b\\xdb'\\xe7^\\xe9T\\xbb\\x8a\\xe4\\xf7\\xf9\\xeftf\\xf2\\x90\\xa7\\xae\\x13\\xf3K^Q\\x93\\xcf\\xf0\\x838J\\xb2\\x94\\x9d\\xa9\\xf6[\\xeeTw\\x11v\\x99\\xdfeN\\x97\\xe5\\xec\\x0c\\xcb\\xaa\\xdd\\x88\\x9fh\\x84\\xcf\\xc4Qz\\xc99x\\xb5\\x02\\xf5\\xfb\\xac\\xfd\\xf2,;sF\\x14H\\x13w\\xc6\\x1d:\\xc9R\\xe4\\xf1\\xc5\\xac\\x9dup_\\xe2\\xd7\\x8f\\x12\\xd6\\xce\\x8e\\x1e}\\x95e\\xec\\xbb,}\\xd5VF\\xb7<\\x07-\\xb7Cfo\\xbe\\xc3\\x12\\x9e\\xe5I\\xc8\\x8e\\xcc\\xbdZ\\xdb\\xc8\\xcb\\xf3\\xb2\\x91\\xd0\\x14v\\xd8\\x19\\x96\\xb4\\xa36\\xb4\\x98\\x06\\xbe\\xcb\\xdb9;\\xca\\xe6\\xc4\\xeat:]v\\xe4\\x08\\x9f\\x89\\x9d$\\xe5\\xc9\\xcc\\xd8\t|\\xcf\\xc9\\xf8\\x9a\\x1f\\xee\\xb5\\x9d\\x0e{\\xe9%\\xd6\\x96+!\\x16\\n\\xea\\xf0\\x99\\xc0\\x0f\\xf7\\x96\\xa20\\xe3a\\xc6\\xce\\x88e<2\\xdb\\xb1\\x8f\\xe7\\xb4\\x1a\\x8bhGV\\x17K\\xc0^\\x13\\x7f\\x9fa\\xf3l\\x81eG\\x8f\\x92\\x8aw\\xc9\\x173\\xebo\\xd5\\x97\\x93\\xeb\\xec\\xb33lV\\xad\\xb4\\xe8\\xf3\\xc4<;\\xd2\\xb4\\xa0\\xa2\\xcc\\x91v\\xc8\\xbe\\xc7^\\x11\\x7f\\x86\\xec\\xbbl\\xeed\\xe7\\xd5\\x0e\\x19\\x81XX\\xebd:j.t\\xfe<Hy\\xc3^\\x9f\\x9c-Z;z\\xd4g\\xdfcs\\x1d\\xd6K\\xb8\\xb3W\\xbf\\xb5'\\xe7\\x8a:\\xc7\\x8e\\xf9\\xec\\xbbl\\xb6\\xb1\\xce\\xe4\\xd5U+\\x9b\\xcbe\\xca\\xe4v\\x0btA\\xc8\\\"\\x11e\\n<!\\x88aPG\\xe2H\\xe7\\xc5\\x92\\x08A\\ndJ?\\x97\\xaf\\x84\\x99\\x9f\\xf9<\\x9dD\\x0fl\\xc4 \\x93\\xc7\\x83#\\x0c\\xce\\x92C\\xcb\\xe6\\x89\\xb2\\x1ew#\\x8f\\xefn\\xad\\xb6\\xb3*\\x9e\\xdce\\xae\\x93\\xb9C&\\xbb\\xb1.3\\x0f-U_\\xd8Z\\xbc\\x08\\xb2\\x18\\xd9\t\\xa2_\\\"\\x88\\x14\\xea\\xd8O\\x17\\xa5\\x9c'NJ<s\\xe4\\xd1<]\\xfc}r\\x16\\xfe\\xae\\xa5o\\x9a\\x88v\\x99:6\\x8eA\\xd5\\x93s\\x1d8\\xf0\\xbe\\x95\\xb4\\x8an\\xeb\\x8f\\xff\\x99J\\xaf\\x13\\x08]R9\\x14\\x91\\xa1\\xa0\\x02\\xb7\\xe9\\xf9\\xb3Q\\x0b\\xbf\\x89\\xf4Y1\\xa6D\\xf2\\xbe\\x04\\x9eLw\\x18\\xcc*d\\x89?j\\x9b\\xb3\\xd5>\\xfe\\x83\\xf4\\xe8\\xf1A\\x97\\xb5X\\xab3\\x93E\\xf2\\x0eg\\xc9Iy\\xfb\\x85\\xe0\\xf0F\\xef\\x16w\\xb3\\x19\\x8f\\xf7\\xfd\\x90o&Q\\xcc\\x93\\xec\\xb0\\x9duY\\xeb\\xe6M\\x9e^\\x8a\\xbc<\\xe0\\xad.\\xc1\\xd6 \\xe7\\x0b\\xec\\xc8l1\\x82N\\x97\\xc9V\\x9c<\\xc8\\xca\\xd3\\xac\\x99%\\xc5\\x147\\x1a\\xc5Q\\xc8\\xc3,]`\\x8en\\x89\\\"\\xfb~\\xe2\\xc4K\\xa5\\xa2y}\\xd14s2\\xbe\\x19\\xe4\\x03?L\\x17jXA\\x1as\\xb7\\x0e\\xc6Tw\\xdb<\\x90\\xb9&\\xd2\\x05\\x96\\xd0^\\xf4/-J\\xf9\\xd6Bw\\xedu\\x9d<\\x1b>\\xc7\\x08\\xa2\\xe7i;r\\xd2\\x13Mm;r\\x8f\\xd2\\x05\\x96\\xd6\\xcf+\\xe1^\\xeer\\xd1\\xb5[\\xbf\\xd4\\xfaWZ\\x84\\xc0>P\\xf2\\xf5n\\xcd)\\xbcK\\xe9l\\xdc\\x0e\\xdb'\\xe7\\xe7;\\x16\\xc9\\x14@'0\\xc87\\xa0\\x93\\x18$\\x88W_\\x82NaP\\xaeA'H\\xadT58\\x7f\\xe2e\\x0c\\nt_'\\xc9\\x08]\\xdd\\xe0\\xc9\\x13\\x9d\\xce\\xab\\xdf20}JX\\xbf\\x9e\\x1c\\x08\\x02\\xc6g\\x8a\\xc3\\xc8^c\\x9c\\xd96Um\\xce\\x02\\xe3u+j\\xe98\\xa6\\x1d\\x0b\\x92Mz-\\x88t\\x95\\xd4j\\x0e\\xfeGw)\\xbb\t\\xf3 `G\\xce0N\\xe59\\xc9P$\\xcfc~\\xc8xG\\x93\\xa18\\x89\\xb2(;\\x8c\\xf9\\xcc\\xd0I7\\xf6CM\\x90f\\\\'\\x08\\x04Q\\x0bA\\xd6\\xc9\\xae\\x877\\x04S\\xb9\\x1e\\xde@|N\\x0d\\xb3L\\x8b\\x04-,-\\x02\\xfbF\\x90J?\\xdd\\xdew\\x06\\x03\\x9e\\xcc\\x0b\\x8e7\\xe3\\xa7\\x1b\\x8b\\xdb'\\xe4\\x9f)O\\xc6<I\\xe1ow\\xc8G\\x1c\\xfe\\x8ee\\x06X\\xf5\\x0f7\\n\\xd3\\\\CzN\\xca7\\x9dl(\\xff1\\x8c\\xd2L\\xb5\\xe3\\xe6\\x89\\x9f\\x1d.\\x8b\\xf1\\xfa\\xf2\\xa0C\\x01'\\xbd\\xf0\\xff\\xb3\\xf7\\xaf\\xdbq\\x1b\\xd9\\x82 \\xfc\\xbf\\x9eb\\x13\\x9f\\xdb\\x0d\\x14A\\x88\\x99\\xbcHJ\\x99\\xe2\\x91%\\xba,\\x97n%Rv\\xd5I\\xf3\\xe3\\x01\\x13\\x91LXH\\x00\\x85\\x0b/\\xb6\\xd8\\xcb=3=\\xd7\\xb5\\xe6\\x01\\xe6\\xcf\\x9c7\\x98w8o\\xd2\\x9e\\x17\\x99\\x15;\\\"\\x80\\x00\\x10\\x11@\\x92\\x94\\xac\\xea>X\\xcbV\\x12\\x11\\x88\\xeb\\x8e\\x1d\\xfb\\xbeE\\x9d\\xa0Qv\\x9e\\x84\\x01l\\xaa\\xe8\\x9b\\x9d\\xfbJn\\xb0\\xfd6\\xc4\\xb7[;J\\x18\\xf7\\xb50^mE{\\x1ft\\xf5tL\\\\5`\\xef\\x8c\\x14\\x87WyA\\xe8EJq|\\x85A\\xf1\\xaf\\xefr\\xda\\x88\\x9ah\\xe7}\\xd9\\x9b.\\x84|[\\x1c;s\\xe8\\xb1\\xf3\\xfc4\\x8d\\xael\\xb6L.\\xf8\\xd9Y\\xb9\\xa4\\xb7\\x90C\\xc9\tma\\xa7\\x17-\\xc6k,|i$\\x16@\\xc6\\x10\\x1f>\\xe0p\\x13\\xef\\xa5\\x9f:v\\x8b*\\xee\\xe2/\\xdf\\xa6\\xb53o\\x86\tD\\xc5\\xca8\\xb6qyyg\\xf4L7\\xdbW\\xa1Au\\xfb\\xa5;pBt\\xf7l\\xeb\\xa7<\\x89-\\xb71\\xb3\\xd6\\xd4\\x14X\\xf6Nz\\xceH\\x9eD\\xe7$X\\xa9\\xf7y\\xef~\t\\\\9\\xebp; #\\xaeYR\\xc6\\x85\\xedP^\\x98\\xe1:\\xd8\\x83\\xc8&\\x94\\xd0-\\x9a#\\xa8\\x1bi\\x9fd\\xed\\x16\\x9b\\x16B^\\x84\\xe7\\xb1=\\xb5j\\x92\\xccr\\xc1B\\\\\\xe4\\xe7\\xd6\\xb1\\xa3\\x05\\xb8k\\x1c\\xa4\\x84a|\\xbb\\xb7;z\\xf5\\xd1/\\xb0G\\x8e\\xfb,\\x176\\x8f\\x9d\\x16\\xc6T\\xe3\\xb3\\x8f2S\\xde\\xd3!\\xc3\\xbe|\\xc6\\x0d\\xd0\\x173e\\xd3\\xcc\\xdd&\\x16\\xc6\\xbf%\\x14\\x8d\\x7fK\\xf8\\x1b\\xff\\xaeq;\\xfb\\xb3B\\xfbw3%\\xb1\\x94\\xfd\\xdbU\\xdd=F\\x0eu\\x08\\x0e\\xa6\\x10N\\xf0b\\xb9\\x19\\xfeU\\xe2^\\x1c\\xb6\\x17\\xe6/}$V\\x18\\xf9c8\\x97\\xf5\\xf4:\\xf7\\xec\\xe76A1\\xb4\\xdbL\\x12\\x7f\\xfd\\xfe\\xf4\\x8c\\x84\\x7f\\x8e\\x92'e\\xb1H\\xb2\\xf0gb *rJE+iyZ2z\\xa0\\\"\\xe5\\x15\\x84\\x88\\xaf$DJ\\x13!\\x92\\x7f\\x1ab[\\xfc\\xa2\\x13\\x8e4\\xa8\\xba\\xb9T\\xb6\\xb8;C\\xfd\\xdd\\xac\\x1d\\xba\\x0c\\xf6\\xfd\\xb5\\xdb0\\xdb\\xc5\\xad2\\x9ep\\x07\\x08\\xaf\\xf8\\xd0}\\xefE\\x98\\x17N\\x1b\\xf8\\xab\\xdb\\x8d\\xc4EvuH\\xfen;\\xde<\\xc9\\x0e\\xfc\\xd9\\xc207\\x90nMv\\x18\\xf8\\xba;t\\x1ccG\\xcd\\x88RH)\\xa6\\x9b\\xc7\\xeaR\\xd49LG\\x9aR\\x8a\\x7fKF\\x05P6\\xc4R\\x9ca+\\xa1,\\xfb\\xd8B\\xf9\\x12\\x8a\\xb9\\xf9\\x07\\xf3(\\xb9\\xc8-g\\xf5)\\xc2\\x8d\\xa6\t|\\xb8\\xfa\\xa9\\x02'\\xc7\\xf4\\xd3\\x05\\x89l\\xf2\\xbdy\\x96,\\xbf;tl\\xbd\\xc0\\x80>t\\x9aF\\x89\\x01p\\xa9\\x06\\x05k\\x8cL\\xfe.\\x8b&\\x10\\xb1Ej\\x17X\\x86\\xd9\\x01\\xfa\\x8b\\xbd'\\x8d\\x06\\xc4\\x8b\\xbe\\x0f\\xf3Y\\x92\\x92\\xbc\\xfa\\x8c\\xfd\\xd9\\xf7\\x11\\xdd\\xf3I\\x13\\x00\\xb4\\xf5\\xaf5\\x0cD\\x8c\\x0cHZ\\xe6\\x0b;&\\x17\\xe0S\\x04\\xceo\\xf4j[\\x7f\\xb9F\\x15\\xd8\\xcc\\x9b\\x87QA\\xb2\\x01\\xf0\\x01\\xf5!b\\x18\\x15E\\xb6DY\\xf7\\xdaq\\x1c\\x05\\xdb\\xe1\\xb8`-\\x8a\\\"\\xb5\\xf0S\\x84\\\\\\xcbO\\xc3?\\x93+\\xf1\\x86\\x12\\n+\\x0c\\xbf\\xec\\xf4C\\xfb\\x88\\xff \\xff\\xb5\\xd2\\x95\\xabd\\xfe*Y\\x01\\xbd5*\\xb6\\xca\\x8bH|V,\\x98\\xc8\\xfcI\\x96\\xf9Wv\\x06\\x8fa\\x04\\xfb\\x90\\xc1\\x06\\x8c`\\x02\\x9b\\x8e\\x8b\\xb8`\\xf4\\x08B\\xf8\\n\\xb2G\\x10\\xae\\xaf;\\x90LCZ\\xe1Xnm\\x1a\\x1ew7\\x93\\xf6\\xe9\\xdf\\xcde_V\\xd4\\x8cO/\\xf7\\xa8\\xc5,N\\x8bcJ.\\xce\\xfc\\xc2N\\x1c\\xcaM\\xb6Y\\xcdD{\\xfd\\xb3\\x82\\xdf\\xff\\xfeo\\xc93jj\\xf6.\\x85\\nr\\x1b\\\\}<\\x8c\\xaf[\\x95E\\xbe\\x136re\\x06\\xf6\\xceX\\xe7\\x81\\x0c\\xacL\\x94\\xd4\\x1b\\x86j\\x9d\\x1e\t\\x81V\\x93\\x17ux[#_\\x9b\\xb7\\xf9\\xdaa\\xc4\\xcbJ<\\x8e\\xdb\\xab\\x8c0/m\\x85\\x7f\\n%\\xfe\\x89+\\xfcSp\\xfcSH\\xf8'c\\xf8'\\x83\\xaf\\xa0x\\x04\\x19\\xc5?\\xf14\\xeb\\xe2\\x9fL\\x83\\x7f\\x12T\\x9d\\xdd\\x1a\\xffH\\xdc\\x14\\xc5?~\\x0b\\xbd\\xc4\\x14\\xe7tE;\\xa6#\\xbe\\x12^\\xff\\xa4\\xac\\x14\\xf9\\x9cY\\xa5.\\x1ed:\\x88\\x8e6!\\xa9\\x8a\\xee\\xab8!V\\xd4a\\x92j\\xa5\\xc6C\\xbdRcS\\xa5\\xd4`E#\\x954\\x8f\\x15\\xe9\\x95\\x1a[\\xbf\\xafRC\\xfc\\x92E\\xfe\\xcd\\x86\\x9e\\xfaQt\\xea\\xcf\\xde\\xe7\\x93\\x9a\\x88i\\xce\\xe5\\xdb\\xa2H\\x9f\\xa0\\\".RWxK0\\x8d\\xd5\\xd7Ip5\\xa9\\xe9\\xf3f\\x9dC\\x86\\x8d\\xb4\\xeaK^\\xfe4\\x89\\x0b?D\\x7f3\\x8d\\xf2R\\xea\\xec \\x08\\xd1[!W\\xd7|\\x9d\\x12\\x96\\xfc\\xa7\\xea[\\xa3\\xa4KD\\xc5\\x17a\\xfc~\\x02\\xa1\\xa8\\xf5\\x99\\x1f\\x0e\\xdf\\x8e\\xed\\xae~.\\xe1%\\x1d@\\x0e\\xf1\\xfa\\xb2c\\x9b\\xc21V\\x19Q\\xb0E\\xa2bE\\x9d\\xc4G\\x07\\xd1\\xfe\\xbb\\x94\\xa0\\xd6\\x0b\\x01\\xb7\\xcb\\xb5\\xc4\\xe2b\\xa8\\x94\\xe1\\xdd:\\xdc0$%\\xb37~\\xb1\\xe8\\x963)\\x89U\\x01Q\\x05\\x99\\x96\\xc2\\xa6,\\x9c\\x83\\xbdVTz\\xc0\\xea\\x0cp\\\"\\x81\\xa7\\xd7\\xb1\\xad<\\xf5)\\xd5Co\\x13\\x17\\xacW\tT\\x93h3\\xd3t\\x9eL%\\xb5\\xf4\\xd3\\x9a\\xb6\\xe8Q\\x02i;\\x0e\\xc2\\xf3\\x0e\\x94\\x89\\xe7=\\xb9\\x9aH\\x8c\\x89x\\xae]}s\\x8bq5\\x8b\\x18\\xaf\\xbf\\xf6 s\\x1d\\xab\\xc6\\x07j}\\xf1EF\\xe6BL\\xb0\\x8fm\\xc1\\xe4f\\xe3\\x071\\x87\\\\Y|\\xad\\x1a_db%\\xe9n\\xca\\x03\\x8c\\xaa\\x8d\\xa5\\xc3T3\\xb6\\xc0\\xf7lVI\\xa9\\x86\t\\x0c*\\xdc3i)0\\xe4G\\xc7MC\\xff\\xce\\x97.(\\xf8SbZK\\xc0aM`f\\x16\\x07\\xe0\\x92G=\\\"\\x03\\xf4\\x1b\\xb2\\xcc\\x95\\x96\\xa4X$Ao[)\\xba\\xc7\\xf4\\x88V\\xc4y\\xa6\\xf7\\x0cc\\xd3]\\xc8\\xe9v\\xf7Hd\\xa2(\\xb98\\xca\\xae\\x9e\\x17\\xaf\\xcbb\\xd26\\xe6\\x94\\x9fk\\x85\\xf0@\\xf7\\xbe\\xfd\\xae\\xbd\\x8d\\xc3\\x0e-;f\\xf9\\xe7e\\xd0\\xd4\\xbd\\x8dB\\xd5\\x9dC/#;\\x14wN\\xd8\\x7f\\xe7\\x84\\x9f\\xf7\\x9d\\x93\\xd5\\xc4\\x87\\xee\\xd6\\x91\\xaa|O\\x17\\xae[/\\x1c|;a\\x9dx\\x1e\\x9e)\\xa0\\xbe\\xac\\xee\\xaf\\x8a%\\xe8Vb\\xc6\\xe2\\xf3\\xb8[\\x12\\xb1;\\x94\\x19\\x10\\x1e]\\xa5\\x8aq\\xce\\xb0J\\x98\\x1f\\\\\\x92YY(*\\xcc{\\xae\\xd0\\x14\\xcb\\x93\\xf8\\xe9\\xc2\\x8f\\xcf\\x14\\xdf\\x07\\x086\\xd6K?{\\x1f$\\x17\\xb1J\\xfe\\xb8`U\\x96I@\\xa2\\x83K\\x7f\\x99FDU\\xed\\x9cU\\xeb\\xd0\\x86\\xaa\\xbaK\\xe0\\xd6\\xc4\\x05\\x93\\x07\\x04$\\x9feaJ\\xb7\\xde\\xaat\\x99\\xdd\\xcf\\xceZ\\x9f\\xf1\\xa5\\xe3\\x9f\\x90\\x0bH\\xbc\\xd7Y@2\\x12\\xbc\\xf4\\xd3\\xe69\\xa7k\\x1d\\xd1jg\\xde{\\\"\\x84\\xdfa\\x96\\x17m\\xd6\\x8d\\x02\\xda\\x15\\xec\\xc1\\x19v\\xa1BZ\\xa7\\xb0\\x07V\\x82\\xa7\\x98\\xddMW5\\xbf\\x8f*h\\xcb\\x05&\\x9bm\\xdb\\xfe \\x89re\\xb8\\xc9\\xf0\\xd6\\xa3\\xaco8\\xc3\\x0b\\xe9^2+H\\xb1\\x91\\x17\\x19\\xf1\\x97\\xfc\\\"\\xa4\\x93`F\\xae\\x91\\x17\\xc6\\x01\\xb9|=\\xb7\\xadp\\xe9\\x9f\\x91{l!:\\x85~\\x19\\x84\\x89\\xae\\xf0<\\x0c\\x08-\\xd4\\xb1\\xc0'l[\\x9f\\xc7iY\\xa8\\xb4\\x0d|.3\\xd8\\xaf/\\xb8\\x16\\x12=\\xd1\\xddtL\\x9am\\xcdC\\x8a\\xf1\\x945\\x04\\xe0Nzd \\xe2Im\\xe2\\xb1h\\x95\\x1em5\\x9f\\xcajz\\xf9Q\\xd8\\xf990\\xd1N\\xc1\\nk\\x92\\x91\\x9f\\x01\\x86\\x93s\\xf03\\x02qR\\x80\\x7f\\xee\\x87\\x91\\x7f\\x1a\\x11\\x14\\xc8X\\xae\\xbe\\xadY\\x12\\x90\\xba9\\xedv;.X\\xb0$A\\xe8\\xe3B\\xe5\\x9e\\xa5\\x13\\x1c\\x00\\x07\\x9dS\\x94[5Z\\xbc\\xdc\\xb8\\xb8\\xb8\\xd8\\x98'\\xd9r\\xa3\\xcc\\\"f`\\x1e\\x98 iYFE\\x98\\xfaYAaB\\x07\\x14\\x17\\x0c(\\xbe\\xcb\\x93\\x18m\\x10\\xfco\\x92l\\xa9\\xd3]\\x1c\\x08!\\n\\xb7d`g\\xd6\\x85\\xa8\\xb2\\xd9\\xb0\\x8e\\x85\\x1c\\xb0>\\xbe\\x8e\\xdd\\xbe\\xc8\\xc4s\t{pP\\xb5\\x97\\xb2\\x1b4$\\xb9\\xae\\x15-\\xcc\\xd2\\xcbB\\xd6k\\xc7\\x0e\\xa5\\x82+\\xbdv\\xa3\\x15\\xc3v\\x9a\\xe8\\xe2Y\\xe4\\xe7\\xf9+\\x1f\\xddG\\x0b\\n\\x1c\\x1b\\xb3\\x8a\\x87\\xe9B\\xa0\\xa1\\x13\\xfc\\xb8\\x02\\x1a}\\xb5\\xd3$\\xb8\\xaa\\xaa]6in\\x95$L<B\\x97p \\x04\\xb4\\x7f/\\xc3L\\x12\\xd0r\\xa5\\xa9\\xe3\\x85\\xf1,*\\x03\\x92\\xdb\\x85\\x81\\x9e+\\xc5\\xd5)\\x94T\\xfa\\xaaQ]\\x95B\\xa9_\\x98*\\xcf\\x85\\xed\\x9c\\xb1\\xf7\\xa0n\\x92/\\x13\\xc3}\\xfc\\x1d\\x11w\\x18}g\\\"\\x8c\\xe9\\xc5gQ\\xfa->c'\\xa6d\\xe7\\xeb4\\x8c\\xfd\\xecJ:D\\xd6\\xa9\\x9f\\x93\\xddm\\xc1\\xa9\\xa8\\x19\\x05\\x0et\\xfa\\xad\\xcb\\xfa\\xb9+\\x83e\\xb3\\x0ci\\xa9\\x9f\\xf9KR\\x90,\\xef\\x02\\x19\\xf4\\x01Z`\\x1c\\x86\\xdc\\xcd,\\x89\\xa0\\xeejc\\x96D'\\xb1\\xbf$\\xab\\xf7\\xd9\\xc7YJ\\x9d\\xfa\\xb0/\\xcd\\xef\\x04;\\x84\\nZa\\xd2)\\xd4\\x8e\\xa6p\\xb11\\xed\\xa0\\xb8\\x9c@?\\xaa\\xbc\\xb8\\x8a\\x88\\xc9z\\x1d\\xd0k \\xc2`\\x1ett\\xda\\x8a\\xdd\\xcb\\x08\\xd8\\x18\\xad\\x7f\\xfb\\xd7?ZB\\xf6}S\\x1c\\x04:\\xe889\\xc1\\xc3\\xa9\\xeb\\xbct!\\xa2\\x00\\x7f\\xf3\\x15j\\xf4\\x9a%\\xe9\\x06?\\xe1\\xda\\xe9\\xda_\\xf0{\\xc1\\xb1\\x9c\\x8f0\\xdd\\x80\\xa4\\x19\\x99\\xf9\\x85n/(W.\\xf0FU\\x93^\\n\\xf2\\xdfb7L\\xe3\\xbb\\xdd!\\x92\\xa9\\xe1\\xdeqJ\\x84\\xb3k\\xa4\\xc2\\x1a\\xac\\xac\\xae\\xd2\\x85i\\xd8\\xf3\\xd8\\xc8\\xfb\\x07a\\x9e\\xfa\\xc5l\\xf1<\\x0e\\x8b\\xd0\\x8f\\xbe\\xe7,\\xab\\x82)\\x11\\x0f\\xbb\\xfd'\\xa0\\xe0K\\xc4#Mp\\x82~R\\x16l\\x80\\x05\\xeb\\xea\\x05\\xd06#sz\\x13\\x08\\xf5\\x159\\xa3\\xcdM\\x18(>\\x9f\\xc3>\\x040\\x81\\xb9\\xfe\\xa3U\\xa9T`\\x94*\\xea\\xd5\\x0d\\xf6\\x1b\\xea\\xbdw*|\\xa0\\x94vh\\x0d\\xf1`\\xc0\\x1d$\\x83\\xc8\\xd2t\\xf6\\x03\\x15\\x9c\\xe4I\\x99\\xcd\\xc8\\x04\\x96\\xcd\\x11\\x18\\x0e\\xcaB\\xd5L\\xef^\\xd5,\\xf9\\x04|\\x05\\xc3-\\xf3\\xe3\\x13(\\xbb5\\xc8e\\xea\\xc7\\xc13\\x92\\x16\\x8b\t\\x8c\\x14\\xd2\\x01\\xc1o+\\x05p\\x02j\\xaf\\x84\\xe1\\x0e\\x92\\xb0\\n\\xe0\\xab\\x05as&\\x08\\x93\\x89_E}N\\x98\\xe8\\xb9\\x90s\\xdd\\xe9\\xccd\\xed\\x8f\\x86H\\xa8\\x814UW@V\\xe3\\x08Y2\\x8d\\x18\\xb0wg\\xa0w\\xf1@\\xb1A\\n0nA\\xd0\\xe7.xC5cG7Y\\xa9Hu\\n\\xd2\\x8e\\xcaR\\xa8G;~bB9\\xdaQ5\t\\xd5\\xa8\\xd2\\xdb+\\xb67\\x95:Q\\x99D\\x9d\\x0b\\xc9\\xe0\\x9cK\\x06?\\x03M)]\\xd6\\xd4(\\x0e\\xacFV\\x98\\x9cA\\x98\\x12\\xa0\\x92\\xba\\x17\\x8b0\\xa7,\\x90\\xcbM\\x9eZ\\x05v\\xe1\\x9d\\x9c\\xa0\\x83\\xd7\\xc9Im\\xaeQWr\\x1cn\\x95\\xc0\\xaa\\xd7\\x0e4\\x030.m+\\x97\\xdar\\x81\\xf0a\\xf8\\x8d\\xb7\\xd3\\xee\\\\\\x90\\xf0\\xb72\\x12\\x07$S0+\\x1c@\\x8d\\xa6\\x0c \\x9b3,\\xc2\\xdc\\xa3\\xc4\\x98\\xe1&g\\x82\\xd6(\\x8c\\xdf\\xeb\\xeb0I+\\xa5\\xb0\\x0d\\xf7\\\"W\\xc44%\\xad\\x8eY\\xdc(\\x9eP\\x88\\x0dl\\xabR\\xd0<\\x0f\\x18\\xd7\\xd6~\\xff\\x96\\xccMM\\xf9uS\\x12k\\xe4H\\x92D\\xf9\\xb5W$\\xdf\\x1d\\xda=\\xdc\\xadJpi\\xe4\\xfbf7\\xa5e\\x07\\xb1\\x19K?;\\x0b\\xe3\\xaf\\x93\\xa2H\\x96\\x13\\xb0F\\xde\\x0eY\\xde\\x80\\xdf\\xf8\\xa4\\x83\\xbc\\xeb1\\x9eV\\xa4\\x8b\\xb6JC\\xf2\\x16S\\xacW\\xc2\\xbe\\xb6zb\\x9c1'v\\xba\\xb7\\x17\\x08a\\\"g\\xda\\xb4\\xa3I3I\\x0cX)\\xb9\\xe1_,4^\\xb5\\xe8\\xbf\\xfa\\xc9f\\xfcSS\\x07r%\\xebM\\x05\\xe2`\\xf5\\x98\\xbd\\xca\\x0f\\x8a\\xa4\\x85\\x10dm\\x0fE\\x91\\xc9\\x1cjE\\xbbe\\xf5*F\\x0b/O\\xa3\\xb0\\xb0\\xad\\x1fc\\xcb\\x19\\xa6LW\\xb4\\x12\\xc3c\\xd8\\x84}n\\xccF`\\x1dF\\x8e\\xf7S\\x12\\xc6\\xb6\\x05\\x96\\x03\\xebP\\x80Y\\x81\\xcb+\\xd3A\\xa87\\x8d\\xe2\\xaa\\x96\\xa6\\xd6\\x17\\x1b4v\\x98\\xbc\\xe8\\x97\\xeba\\xdb\\xa2\\xa2\\xce\\x9b\\xf7\\xc4q\\xd3\\xb0\\xd0\\x8e\\xbc\\x1aE\\xca\\x96\\x8f\\xbc+\\xd8\\x83\\x14\\xdf~n\\xc4\\xcfLE\\xe2$\\xbc\\xa0C\\xe2\\x84\\xbc\\xa0C\\xe2\\xf8\\xbc@\\xe9\\xed>S\\x9189/\\xe8\\xa8<#n\\xa7[\\x8fu&\\xa8\\x9c\\x99\\x81\\xca\\x99}z*\\xc7\\xec\\x94\\xd9C\\xe5\\xe0\\x95\\xee\\xf2hUe\\xf7\\x14\\xb6\t\\x18N\\xfet+V\\x16\\xa4\\xb9\\xd2\\x824\\xaa,Hs\\x941`\\x0c\\xa5\\x19F\\xab\\x82\\xd9\\xfa\\xba\\x03\\xd1t\\xd6\\xb4\\x16\\x9d)\\xacE%\\xa1{Xyt\\xb4I0fp\\xd9!\\xc3\\xb2&\\x196\\xf3#a\\xa1\\x8eL\\xf4\\\"\\xcc+\\xfb\\xf4\\x08CV\\x85\\x9e09cLO\\xaf!6}B/'\\x05\\xfb\\xaaV#\\xe1\\x19P\\x9ce\\xb9\\x8f\\xef\\xfd,\\xf4O#\\x82\\\"\\x8f\\x15:\\x14J\\xed\\xb0\\x8f \\x8b\\xb9\\xcdz\\xa1\\xe8O\\xffU\\xc6<\\xf1\\xcb,#1\\xff\\xd2L\\xabU\\x93>#\\xc5\\x93\\xa2\\xc8\\xc2\\xd3\\xb2 \\xb6\\x15\\xf8\\x85\\xbfq\\xce\\xfb\\xec\\xa3\\xb3\\x9a\\x0b\\xa7\\xbe\\x1a,\\xb14\\x16\\xecU7\\nF\\xc2\\x89\\x0d\\xa6:\\xcc\\x98\\xda\\x18\\xe3\\x04i\\xe5D_~\\xeeG\\x13\\xf0\\x95\\xc5\\xd7\\x9a=\\xae\\x16}\\xd0\\x8e2\\x8e\\x03w\\x93}I\\xb9\\\\\\x12\\xb0\\x16:\\xa6\\xbf\\xbc\\x134s\\xebp\\x03\\xe8\\xbf\\xa2A\\\"\\xd0\\xf6\\xdePq\\x16\\xe10\\xce\\xa2r-~\\x16\\x06/\\x932n'\\xff\\x83\\x8f\\xcadp\\x0by5\\x9c\\x90&\\xf0\\\"\\xe5O[\\xae\\x8fi!\\x94\\xf8\\x8c\\x1c/\\xb3\\xc8\\xea\\xbfxUd]k-~\\x08\\xa3\\xe8-\\x99\\x91\\xf0\\x1c/\\xcb|\\xc0\\x9a\\xf4\\x9e\\xf2!\\x8b\\x12\\xcb\\xce)}'{U|\\x90T\\xd6\\xec\\x8d\\xaf\\xd4kO\\xe9\\xbez\\xc4\\xad\\x8d@\\xd7\\xae\\xe6;\\x13\\x11GW\\x00\\xbdd\\xbcy\\x18\\x07\\x12\\xf17\\x90\\xf2+\\xa4\\xdd\\xe5\\xb1\\x15\\x1b}k\\xdb0\\x19\\xed\\xa11FX\\x91\\xb1-\\xc0\\x8aU\\x80\\xa5o\\xcc\\x0eY=\\x81%s\\xab\\xf2\\xf8\\x88Z\\xea\\xe8\\xd5\\xe9\\xdf\\xc4n\\xcd\\x17\\xbf\\xf9\\xf0\\x01\\xb2\\x1e\\xc3F\\x90\\xb0f\\xbb\\x89\\xde\\x0f\\x99Ij\\x7f=\\xc4\\xa9\\x85B\\xddj\\xe9\\x99;P#\\xdc\\x9e\\\"\\x85\\xcd\\xc6\\xd0\\x83}\\xa7\\xe2\\x133N\\xbb\\xf3c>p\\xdf4\\xa7{\\x80\\x80\\xe5`>'\\xb3\\\"<'\\xe2K#\\x16A\\xef\\xab\\xf6I\\xeeUw\\xc8\\xaeQ\\xf2I6\\x9d]\\xed\t\\x1ax\\xd4\\xcc\\x12\\x1c\\x1eS\\xd0\\xcb\\xc3\\x9f5(\\x90\\x8f9\\xbf\\xa9PDV\\xf3\tO05`\\xbb\\xfaN\\\"\\xff\\x94D\\xc6n\\x16\\xc52\\xfa\\x06\\x95\\xcc7\\xee\\x84\\x85E3\\xf6R\\xab\\x0f\\x10\\xc0\\x9b\\xe4\\xb5\\xae\\xc3\\x98Q\\x81\\xcc\\xdc\\xaei\\x8bb\\x02\\x98\\xbe\\x85O\\x98\\xc0\\xad\\xcf\\x80\\x9a\\x9fm\\x19\\xe6\\xcc\\xe8\\x0cq\\x85\\\\]\\x0f\\x9cn\\xa3\\x9e\\xce\\x1e\\xd9+\\x12\\xc689B\\xd6\\xd4\\x03L\\xdc\\xd0\\xf8. \\x8e\\xd22eA\\x82\\x0d:B\\xdd\\x06YOy-x\\xf7\\xf6\\xc5\\xc42t\\xdd\\x10\\x9d\\x85v\\x863\\xd2\\xd6^l\\xd7\\x92-N3H\\xe7\\xd5\\xf0a\\xd3\\xceI_\\xada\\xe7\\xe4\\xafv\\xa7\\xf6\\x81W\\x8f%\\x0e\\xe8\\xfd5\\xc4c:kh\\x1bP\\xfbm\\x0c\\xa9\\xc7oW\\x12\\x97K4G\\xb8\\xcd9\\xa6O\\x8b\\xa3\\xeb\\xbd\\xe6\\xeb\\xb3OL<\\xafi9\\x1aSX\\x01\\x15\\xc0\\x80\\xfd\\x1a\\x88\\x0e\\xa0\\x8a\\xffH\\x82\t\\xbd\\xcc\\xf7\\xf6 \\xb1\\x91\\x98\\xea\\xa7r\\x18j\\xe8\\xaf'p\\x8e\\xb1\\\"\\xc5\\x1e&\\xea\\xc7\\x81\\x89~\\xb6!Z\\xe2\\xf6M\\x96\\x9b\\xd6\\x16\\xe4R\\xc5\\xcf\\xc9\\x0f\\x1f1_\\x89>\\x9b8\\x18\\x0e\\x0e\\xe6F\\xba0hZ\\x10\\xad\\xc3Gm\\x0d\\xd1\\xa9\\xd1#n\\xad\\x17\\xb8O\\xec:\\xc7\\xb7\\x9f\\x9b\\xd85\\xd2\\x89]#\\x9d\\xd85\\xd2\\x89]#\\x9d\\xd85\\xd2\\x89]#&v\\xadG\\x151\\x01\\xabJ\\xac\\x1a}z\\xb1\\xea\\xec6bUI\\xb0\\xa2\\x90\\x9ev\\xb5\\xb6Z\\xe5qKjy+\\xe5\\xf1\\xadD<w\\xca\\xfd\\xf4\\xf16\\xc5\\x10\\xa7\\x18\\xf10-r\\xe2\\xe7[\\x03*gU\\xe5'8\\\\C\\xd5d\\x80\\x7f\\x8fxB\\x99\\x193q\\x0d,\\xf2\\xbd\\xf541\\x12\\x92%\\xab\\xc5\\x1d\\x9e{\\xb4\\xc2\\x83\\xc8\\xc1\\x90\\x1e\\x93\\x10\\x19\\x95~\\nr\\x18qx\\x16%\\xa7~\\xb4\\xc1&m\\xb2I\\x0735\\xe3\\x0f\\xedP\\x84\\xef\\xb8\\xc8\\xfc4U\\xc2\\xa2x\\x96\\xc9i\\x18\\x91\t\\x8c\\xc6\\xab\\x0ef5\\x83T>\\xa2\\x8d\\\",\\\"\\xbd\\x11,\\xdfG\\x13\\xcdZ\\x1a\\xd5\\xc4\\xac\\x17\\xa3\\xcda\\x83\\xc1\\x9f@\\xec\\xe5\\x0d\\xb1\\xb1\t$;2\\xe6\td]\\xc1s\\xcf\\xf7\\x9d\\xfb\\xbbjd\\x05\\xe1bG\\xf0\\xc0&\\xb2Z\\x0b*ID\\xddNU\\x8a\\xef\\xd5;\\xf6I\\x08\\x82\\x19\\xbe\\xfd\\xdc\\x08\\x82TG\\x10\\xa4:\\x82 \\xd5\\x11\\x04\\xa9\\x8e Hu\\x04A\\xd7\\xd4\\x8c\\x85\\x1b\\xcf\\x15\\x06hv*\\xb4\\xb1\\xe8\\x83\\xda\\xac\\x80.\\x1e\\xf6hSIJ(\\xa2\\x81\\x7flR\\\"\\x80=\\xf8\\x86\\xf7_\\x87\\xffn\\x8ey\\xd1\\xab\\x1b\\x92H\\x0eb\\xe0N\\x07klA\\x92\\xaa\\xdf\\x94\\x1e\\xc1\\x90\\xe5\\xac6\\x8e\\xc9|S\\xa1&\\x0c\\x0f\\xdeQr\\xc8\\x1c\\xe0\\xfa&-\\x9e\\xb0\\xf2?\\xb5C/\\xc7om\\xa2#\\xe9)Q\\x93\\x91[\\xf4E\\x11W\\xe1\\x17\\xa4G6^\\xe6$C\\x8dW\\x10\\xce\\xafz\\xdc\\xcd]\\xc5\\xecU\\xba<\\x10\\x13\\xc8W\\x1b\\xf4`=0T\\xb2c\\xa3\\x17\\xb4\\xfc0\\x19re\\xdb\\xdb\\xc3\\xd9\t\\xff\\xaa\\x96\\xab\\x1e\\xc6'\\xcb\\x8e{\\xf8d\\xa4\\x8f\\x9aF\\xd1\\xdc\\x96\\xae\\xd7B\\xc8\\x96b\\x06&m7\\xad}\\x84\\xde\\xb9\\xc7\\xac\\x90\\xc2\\xf9\\x95c\\xb7\\xebTH_\\xc0\\xfa\\x1c%\\xe1X\\xca<\\x14\\xd1\\x94\\x87\\xcd\\xa3\\x8fw\\xe6.n?daA^\\xc7\\xd1U\\x03\\xf3\\xb6\\x1f\\x9d\\xae\\xc2\\x95\\xc0~0 \\x0c\\x86\\xde^1\\x03\\x03Z\\xa6\\xbb\\xabN\\x9f\td\\x17~\\x1cD\\xe4\\xf5\\xaa#n\\x81\\xeeP@\\xa3@|\\xef\\xa7<\\x89\\xef\\x85^A\\xf2\\xc2.X\\x00{\\xd9v\\x80\\xe7\\x99\\x81\\xc9 \\x9b\\x02Xe\\xf9\\xda\\x87\\xdf\\xb4\\xbd\\xf2F\\xda\\xb1a\\x05\\x8b\\xe4\\xec,\\\"\\xcf\\xf3\\x83 ,\\xbeN.\\xc1\\x90dF~d\\xfc\\xca\\xc6>l\\xe5\\xa5o\\xfb\\xe5^\\xa1\\x18\\xd5\\x04\\xd60\\x9e\\x00\\xfb\\xcb\\xf8\\x9d\\xda\\x02\\x13z`\\x1e\\x93\\xdat\\\"\\\\\\xc9\\x8f<\\x16\\x85\\xf3\\x85x:\\x08Z_\\x95\\x9f\\x06\\x8d\\xc2\\x91\\x0e\\xabS\\xd0\\x9d\\xdc\\xed\\x99mX\\xc9\\xa6\\x02V\\xe0\\xbf\\xe9#\\x14\\xd4\\x8d[\\xa8\\xbe\\xc4\\x07\\xabLu\\xd8ou\\x0b\\x08X\\xc5\\n\\x02\\xc4\\x14Zx\\x82\\xdb\\x12\\xd4\\x7f\\x7f\\xf9\\xa5z\\xaa\\xb6T\\xc9qaMj\\xacr9aD`\\xe3\\xcfJ\\xaf?\\x00-\\xc8\\x90\\xb9:\\xc6\\xbf\\xf1R?\\x0b\\x83wi\\xe0\\x17\\xba \\x087]c\\x89F\\xe0\\xab,\\xbf\\xd1\\xae\\xb3j\\x97\\xeeh\\xcaZA\\x14\\xacx\\x18\\x86\\xa9\\xe3a\\x05\\x95<T\\xa4\\x95!\\xda\\x8a\\xfcdB}>@\\xc4\\x04\\x95~~\\xe0\\xfd\\x18b>9\\xeb\\xeb\\xb2(\\xcc\\x8e\\x8d\\xc0\\xe9\\xae\\xcc\\xb6\\x8e\\xc8e\\xf1$#JW4\\xf9)Y\\xf5Ex\\xb6\\x88\\xc2\\xb3E\\xf14\t\\x8cV} \\xe2x#\\xb4\\xd0cd\\xaeKY\\xbc\\x9c]\\xd5\\xe6\\x8as\\xacX\\x1d:s\\xe5\\x14+7.\\x85^\\xaa2\\xba\\xa9\\xa8\\x0cZ\\xb2\\xa2\\xd3$\\xb8\\xda@\\x1f\\x11\\x83\\xc3\\x82\\x0bs4a\\xc4\\xf8\\xc97\\x10\\x97\\x81\\xb6\\xd3\\x93\\x93\\xe1z\\x9c\\x9e\\x88a-5~\\x93\\xea3\\xa0<\\x98\\xc0\\x8c\\xceN73\\xa3\\x10\\x0c\\x0c3\\x13$\\xfc\\xb0\\xc9\\x19F\\xe8~\\x8c\\xed\\xde`\\xbaE\\x8dI\\x05\\xb0m\\xff\\x18\\xfd\\x92 \\xd4\\xf8\\xc9\\x03\\xeb\\xd4\\x04f\\xe1\\n\\x9d\\xcea\\x1f\\xac\\xd3\\\"\\x86\\x99\\x1f\\xcfH\\x04\\x8a\\xbda\\x83\\x81\t\\xabG\\xff\\xd0\\xd7\\xea\\x85\\xbe(\\x9c\\xbd\\xe7\\xc0\\xd7\\\"\\x98\\xcd'k\\x1f\\xac\\xa78B\\x1c\\x08\\xfd\\xa4\\n\\x8c\\xe0Bj\\x02\\xcdUV\\x03g\\xb8\\x8c\\xb6\\x86\\xcec\\xd0e%\\x1e\\xa2\\x10l\\xd8\\x89^\\x11\\x0cf\\\"\\xdc\\x05\\xeb-m\\xcfRF\\xd3\\x07\\xf5\\xfd|\\xdc\\xcd\\xd2d\\xe7\\xde\\x9b2#*\\xa1\\xe7B,)\\x92\\x80\\x1d\\xaa^\\xf2\\x18n\\x04\\x1db\\x81\\xc5\\x1bU\\x1b\\x1e\\xca\\x94\\x9a\\x9e\\xd5\\xc1\\x19\\xdba\\xc6k\\x1c\\x15T\\xef\\xaf\\x9b\\xe9;\\x17\\x7f\\xe0/?+\t,:\\xbct\\x04\\xaa\\xc2\\x15F\\xe9\\x06\\xac\\xf4\\x91\\x11\\xae0J7`\\xa5\\x8f\\x8cp\\x85Q\\xba\\x01\\xcf\\xda\\xca\\xda\\x99^Y\\xfb\\xd9\\xf9\\xc0\\xc0j\\xd2S\\x85\\xbb\\xaf^z\\x9aq\\xe9\\xe9M\\\\\\x81\\x07JOSV13\\x8c\\x02\\xc9\\xb7>\\xf2\\x14=sz\\xdcm#\\xac\\xc3Do\\xfaZ3\\xec\\xee\\x8c\\xe3\\xa1\\x9e,\\x83\\xd9\\x00~>F\\xcci\\x1a;\\x0f\\x98`\\x08.j\\xbc\\xdf\\xaf]\\x85\\x99\\xa8\\x91\\x81\\xbf\\xa1\\xab5T\\x8c\\x8aX\\x9e;fU\\xfav\\x19*\\xfd\\xb9y\\xa7\\xa1R\\x9d\\x8bt5$\\xe8\\xa5\\x86\\x99\\x83\\x8d\\x90\\xeeR\\x84\\x87\\xd3\\xb0\\x86G\\xc8\\xfb\\x1d\\x98\\xbb\\xe1+\\xd6\\x07\\xf700(\\xb5\\xfc0\\x8b\\x03\\x92e\\x03\\xac\\x13\\xa02;\\xe8\\xdf;\\x962D\\x04U4\\xd7e\t\\xc4\\xac\\xb7\\xc9E_M\\x1e.\\xbb\\xc7>\\x01*\\x8d\\x1d\\xe6::\\xc82u\\x8cN\\xf9\\x99\\xb1\\xfaC\\xdc\\xf6\\xa1\\xd2\\xe1Y\\xdf\\x95\\xcb\\xf4(y\\xe3\\x17\\x0b\\x16\\xaf\\xdb\\xfc\\x11e\\xf0\\xecBR\\x1fT\\x11\\xda\\x1c\\xafH^$\\x17\\\"\\xab\\xb8\\xb9\\x99@\\x00N\\x8d\\xe1\\xcc\\x1f,\\x10\\x1f\\xfaQ\\x84+\\x91c\\\\\\xd0\\x15r\\x1e\\x89\\xa7i\\xe0NW\\x16\\x83\\x15\\xa0\\x91\\xa1\\xf1\\xe3>\\x1f\\x15\\xeb\\xd4\\xcf\\xc3\\x19\\x8b-\\x97\\xf6\\x8d\\x84\\x1e\\x9ds\\xd8\\x83\\x00\\xf6!\\xe0\\x06\\xca9\\xc90\\x10\\x9a \\x97\\xf5\\xdd\\xc1`\\xd6\\x99\\x91\\xdd\\xdaJ\\x92\\xf9\\xaf\\xb6N\\xc3\\xa08\\x91\\xa2:\\xb0\\xc1:\\x18\\xfd\\x0c\\xecEQ\\xa4.|M\\xd7\\xc0\\xb1\\xf4\\xcd\\xcd\\xfb\\x88|\\xa8\\xc2WO-E69\\xcb\\x85\\xe4\\xb8g\\x9f\\x1c\\x17\\xceM\\x8c\\x86\\xb5\\xd8\\xad\\xad\\x9e\\xab\\xbcy\\x81e`M\\xfd\\xbee\\x9a\\x0d\\x99\\x97\\x88E\\xa0\\nJ\\xd1?\\xa7\\x1b\\x8f\\xad\\xf2M\\xe0S~\\xc7!mb\\xe1J\\xe9\\xf9\\xd3V\\x04T\\xb0\\\\8\\xc7\\x7f)\\x88\\x1a$\\x0c\\xe6\\xe1\\xf4\\xf2y\\xb0\\x92],p\\xae%\\xccH\\x80\\xb7\\x9b\\x88\\x88\\xd9\\xfb\\x15#\\x88\\xea\\x83\\xd7\\xffE\\xc7\\xb9\\xa2G\\x1e\\x03l\\xef\\xeer\\xf3\\xde\\xf8y~\\x91d\\xc1\\xca\\x9b\\xf7G|>\\xc5\\xde\\xddl7\\xfc\\xb2H\\xe8u\\x1f\\x91\\x82\\xeeJL.6R>\\xd7\\x01_\\xc7\\\"\\x88\\xe0\\xe0/8\\x84\\xad\\xf0\\xc5\\xcdw\\x7f\\xa1\\xf7\\xaf\\xe9\t\\xeb!\\x9e\\x1et\\x9f\\x0f\\xd9\\x17\\xfa\\x10zy\\x0e\\xb2\\x90\\x87*\\x98ioU\\x83\\x8b +6\\x18\\xd1kKD\\xd8\\x92S\\xe2g$\\xe3\\xf7\\xaa\t\\xde\\x7f\\xa7\\x1b\\x0f\\x87w\\xab+\\xef\\xc6\\xd7\\x1d^\\x0b\\xc1gw\\xd5\\xdd\\xe8\\x9a\\xbb\\xdb+\\x8eY$Z\\xb8<\\x9f\\x1b\\x8a\\x1c~\\xb5\\xad\\x8ap\\xee\\x02\\xd9\\xdc\\x05\\xa2\\x19\\x8ed\\x06 \\x18\\xa3\\xff\\xb1i\\xa7\\x86!\\x04\\xb2\\xec\\xafSG\\xacJ0\\xd8\\xfb\\xb7GGo03-\\x89\\x0b.K\\x9d@\\x19\\xe7e\\x9a&YA\\x02&I!\\x94^\\xb2\\xfe\\xa3\\x05\\xeb\\x90\\xc2:\\xfdu;\\xf1o=\\xbcZ\\x04\\xdc\\\\\\xe1\\xb4\\xcf\\x96E\\xe6\\xd8\\xbb\\xecE\\x03\\xc8\\xe4\\xa6\\x8c\\xd1\\xc8\\x19\\xaf\\xde\\xb4`\\xd2o<\\xd3\\xae23!}\\xad\\x10-\\xd4zT\\x93\\xcc\\x8c\\xcd\\xcc\\xc4\\x97U\\nJ\\xbev<\\xa7\\x0f\\x13\\x97\\xf1\\xa01jF\\xcb\\x87}(\\xa7\\xfe1\\xc6\\xc1\\x99`K!~\\xd9o\\xa3\\xc0\\x85(\\x9a\\x90c\\x86<\\x92\\xf2#\\xa4A6\\x1f\\xac\\xce\\xb5\\xaa\\x0b<M\\xb8\\xf9G\\xf2\\x95\\x9ai\\xd3\\xb4}\\x96\\x82\\xf9\\xffV\\xc3T\\xf9.(\\xd0\\xc3`\\xb1}\\x15\\xa6*R\\x86\\xa9\\x9aUa\\xaa\\\"\\xc7\\xc5!o>\\x829|\\x05\\xd1#\\x98\\xaf\\xaf;0\\x9b\\xce\\x9ba\\xaa\\xe6\\xe60U\\xbeV=\\xa0\tS\\xa5P\\x11\\xe8\\xc2T\\xcd\\xf0J\\xf5\\xbb\\xbe\\x1a\\xbd\\xca\\x10\\x90\\xac.\\xfd>\\xf1(\\xb3hI\\x95\\xa9\\x81\\xc4#,\\x84\\x8bE\\xa2\\x11\\\"\\xf35\\xf1\\xbdy\\x92\\xcd\\x08\\xb3U\\xb2q\\xf8\\x9aHG\\xa8\\xa6\\xa1w\\xd3\\x84\\xdeR\\x992\\xea\\x91\\xafq1\\xf9\\xf4\\x0b\\x90\\xdc\\xcd\\x02tf\\xa2\\xcaJn\\xcc\\xfaF\\xef\\x9c<\\xf5)\\x8d[\\xaf\\x9eZz\\xa8\\xccuF\\x07tf\\x02(\\xd3r\\x92!\\xcb\\xc9D\\xed\\xe6\\xe5d\\x17\\xf7\\xa0\\xe5d\\xab\\xd7\\x19\\xb2]T\\xb3W\\x18\\xdc\\xd6\\xd3\\x94W\\x1czR\\xfe\\x8aG\\x90\\x16\\xbdS\\xcdX\\x9e\\xf9^\\xc8\\x89W\\x9e\\xaa<l\\xc3m/ACVC\\x83~0U\\xa4\\x1f5\\xc0\\xd05\\xd1\\xae\\xa5\\xca\\xf1\\xea\\xd3\\x1f\\xc4\\x150Q\\xb5\\x9c\\xaa\\x91\\x0f\\x08\\\"g\\xa0\\xed\\x94\\xa7P\\x1d\\xa7F\\x1d4.\\xaf\\xe3\\xb9IW\\x87\\xdfH \\x08\\x1d\\x82\\xea\\xf6\\xea\\xcb\\xdf\\xcd\\xd97ie\\xf9\\xed\\xc3\\x0d\\x14\\nz\\xabf\\x1d]\\x9d\\x1a$X\\xdeWJ\\xf9\\xac\\xc5\\x03\\x92\\x84\\x9e\\xf3\\xa4\\xe5\\x99\\xe4\\xa2kf\\x18\\n\\xcc.g\\xe6\\x17\\n\\xd8\\x87:\\x1c5\\xcfCS,4\\xa1q\\x87\\xe9X\\xf4@,\\x1b,%\\xe9i\\x94\\xcc\\xdeo\\xe4\\x84\\xd1`\\xd5 6\\xfa\\xa2\\x01}\\x8c\\xee7\\x16\\xc4\\x0f\\x0c~\\xc4w\\xd2g\\xe1\\x9f\\xde\\xb8\\x1f\\x94\\xd3\\x0d\\xebFLm\\x90\\x83pn\\x19\\xc5\\xf1+\\xcdOt,\t\\xb86\\x84\\xdf\\xf4\\xc7\\x9c\\xf0\\x92\\xe4\\xb9\\x7ff\\x98\\xea\\xd1\\x82\\xe4(}\\xf0]\\xb06\\\"rN\\\"\\xe0\\x06\\x92\\x90\\x9c\\x93,\\x0b\\x03\\x02\\xc5\\x82\\x00s/\\xe7\\xc8VT\\xf1L\\xd2As\\xac\\xed\\xd5\\x9d\\xa8\\x85\\n\\xf8\\xf06\\xae\\xd4\\x95\\xef\\xc0-\\xbd\\xa9\\x8bFl\\xc1\\xe1\\xee\\xd0m\\x87\\xeazR\\xd9\\xa0\\x08oZ\\x8fj\\xd1\\x90\\xaaT\\xbd\\xfb7\\x8ag\\xdd\\x95+\\xfd\\xa3\t\\x0d\\xb6\\xb7\\xf4R\\x83\\xad\\x0eO\\x1fVE\\x1d\\xb7f\\xbf*z\\xa0\\x93\\x1dlo=\\xd4I\\x0f\\xb6\\xb7\\x951\\xaeY\\xd1\\xe7a\\xc9'\\xefg\\xb3!a5\\\"\\xe5\\xb5iN\\xe5IY,\\x9e\\x17d)\\xe5\\x1eoV\\xa8\\xb33LjIA\\xb3J\\x9d\\x8a\\xf2\\x84\\xb9\\x89J\\xf2\\xdbf\\xcd\\xefI\\x96SR\\xa5\\xf0\\x97\\xe9\\xa4&\\xaa\\x9a\\x950\\xd9\\xad\\x14\\x84\\xa9\\x05\\x02q\\x14\\xc6\\xf4\\xfc\\x86\\x81_$\\xd9\\xd7~pF&5\\xad\\xd7Z\\x9d\\xdf\\x17\\xae](<\\xb1\\x03\\xb0\\xc7\\x13[u\\x81=\\xd7\\xa6\\x8e\\xce\\x85L\\n\\x7f\\x8c\\xb6\\x1c\\x15\\xd4\\xe7\\x98\\x00\\xa7sV\\x98\\xed\\xd2\\xd6\\x8e\\x02\\xe2i\\xfdm%\\xe0\\xe6\\x9f\\x16p\\x85@)&\\x175p\\xd9\\xd6,Y.\\x93x\\xe9g\\xef\\xe5\\x10.\\x11E\\xe3-\\xf6\\\"\\n\\xe3\\xf7G(x\\x9e\\x80ur\\x1a\\xf9\\xf1{K\\xda\\x80\\xe6Z\\xcf\\x90\\xc5\\x916D\\xcfb\\x9dW)\\xaf\\x99\\xe2\\xab\\x8b\\xe7\\x195]]\\xe1\\xdd\\na\\xb5\\xe3\\xa8\\xe6\\x8c)\\x95\\x8a\t\\xec\\x9at)\\xc6\\xfa\\xd5\\x89\\xee0@\\x94\\xc7\\xb8\\nm\\xda\\xcd\\xbc\\x12\\x95\\xe5~\\x1c\\x16\\xe1\\xcf$sl_Sy\\xa6\\x80C\\xf1\\x08\\xedl\\x9dvS\\xc4\\x07\\xcf1\\xf9&s.b\\x9e\\xc17\\xcd\\x10\\x18\\xf8\\xf1\\x19\\xc9\\x922\\x8f\\xae\\x0eI\\xf1<\\x8eI\\xf6\\xed\\xd1\\xcb\\x17\\xa6\\xf4%''\\x8bb\\x19\\xe9\\x0dT\\xd5\\xf3\\xaci\\xab\\x96t0t\\x05\\x9fF\\x82\\xda\\xa8\\xae\\xd3H;\\x0f\\x96\\xeaLPN\\xa7\\x866\\xf5\\xfd\\xca\\xb8\\xc7\\xd7O\\x0e\\xb7\\xaa\\x9b\\xf8\\x87\\xccO\\xbf\\xf1gE\\x92]9\\xf6\\x8c\\xf5\\xf3\\xfb\\\"\\xaa.N\\xf2\\xed\\xd8~\\xa0\\x8ch\\xe2\\xab\\xb0U(\\x90\\x8d\\n\\xa9\\xf8\\x9f\\x16\\xa9\\xb4W?4\\xac\\xfe\\x10\\x0c\\xf0:S\\x90\\xbeqW\tE\\\\\\x98Z\\xaf\\xb3\\xd0R\\xc5j`!\\xb8uv\\xb2\\xbe\\x88\\xfd`\\xb0\\x8dE\\xc4\\xddc\\x0f\\x8b\\xd2\\x0f\\xc9.\\xb9[\\x03\\xb1\\xad\\x97\\xc4\\xf4\\xde\\xd7\\xe9\\xf5\\xd0\\xe2T\\xa3\\x84\\x9b#\\x04X\\xdf\\x16EJ\\x9bh\\x87\\xd8\\x12(dQ\\x14)3\\xef\\xe0\\xc1\\xb9Y*b\\xd8\\xafO\\xe2\\x10\\x8b\\n\\x94\\xaa\\x18\\xd2\\x00\\xaa6\\x06\\xcf\\xbc\\xe2\\x1by\\xe5\\x94\\x99\t\\xebeSZ\\xd47\\x13\\xf0)6\\xb1\\xd6\\xecGM\\x18u`\\xa2\\x9d6\\x1et\\xe9$\\xe2\\xcf\\xcf\\x0d\\x19,(2P\\xfa\\xd6,t*\\xbc\\x85N\\x85\\xb7\\xd0\\xa9\\xf0\\x16:\\x15\\xdeb\\xb5\\x14{\\x0b\\xbb\\x9d\\xdf\\x91\\xc2\\xac\\xbd0\\xc4=J\\xf1\\xb3y\\xebmP}6f\\xdfQ~D\\x85\\xdf\\x16\\x9f\\x16\\xbf\t;\\xe3AJA\\xa5\\xf0x\\xb0\\xd6O\\x08\\xec\\xef\\xc2Q\\xc7\\x94\\x0c^\\x1d\\xad\\x05!_\\x9b\\xdc@\\x08\\x13c&'UK\\xfb\\xd8\\x98\\xf2\\x94\\xccx\\xd8Bo\\x86\\xfd`B\\xae\\xaf\\xaf\\x9e\\x07$.\\xc2\\x02\\x83\\xda\\x88!\\xfc\\x99\\\\\\xa1\\xaa\\x08\\xfb\\xee4\\x8a\\x81\\xb5E\\xd5\\xa7I\\x9c\\x97K\\x92\\xff\\xc0\\x04D+\t\\xed{\\x87](\\x86-:Da\\x81c\\x17\\xadAk\\x86\\xcb|=\\x8f\\xfc\\xd3A\\x03\\x14(\\\\J\\xcb\\xc7\\xf2>\\xc0>F\\x83\\xeb\\xb5\\x94\\xa8?\\xfc>\\xccC\\x14\\x9e\\xacm\\xaa\\xa94\\xfaP\\x189\\xf5g\\xef\\xeb\\xca\\xeapP\\x88F-Q{\\xd5Au{1\\x0cI5\\x03\\xc3\\xa0\\x18=\\xad^{\\xb3\\x0b\\x97b\\xee\\xeaQ)\\xd7T\\xd9\\xa3\\x06}\\xc0\\xe7\\xaa\\xe5\\xd0\\xef\\xc2\\xd0\\xe8\\x11L\\xbb\\x95\\xc4G\\xd9UR\\x16\\xe8\\x1c\\xac\\xaf\\x9c\\xf0\\xca\\xcc\\x9f\\xb9\\xa7r\\xc8\\xf5fb\\xed\\xf55Y\\x96K?\\x8a\\x92\\x8b\\xa3\\xec\\xeay\\xf1\\xba4XB\\xb1\\x1c\\x96\\x05\\xafw\\x10\\xfb\\xa7\\x91\\x8aT\\x13\\x0f\\xc6\\x7f\\xf0\\xe6\\x06-H\\xb4B8\\x8c\\xa0\\xae\\x8bi\\x9c\\xf55\\x17Xs`0\\xd9\\xf3\\xaaro|\\xd8%\\xdb\\x82!\\xa1d\\xcf\\xaa\\xaa\\x03\\x86pUi9_\\xa2\\x16S_\\xf3\\xb4\\x1a\\xec\\x1b\\xa3N\\xf4\\x84u/\\xb4:\\xfa\\x8a\\x17\\x18\\x96\\xb9F\\x99=\\x0ec\\x07\\xac\\xba\\x80\\x94\\xfeH#\\x97\\xec\\x03\\x1e\\x14\\xee\\x08ii}\\xedCV\\xfbi\\x85*{<\\xc0\\x9e\\xb2\\xfaok7\\xf1\\xbe/\\xde\\xc3\\x1e\\x94\\x94\\xb61\\xf8\\xfc=\\xa1D\\x95\\x17\\xe6\\x94\\xf9\\xd2\\xd7z\\x0d{p\\xc2X\\x04\\xc9M\\xdd4\\xbb7\\xb0\\x07\\xa7^\\x1e\\x853Bq\\xd6\\xc6\\xc8\\xe1\t\\xbe\\x1b\\xdf\\x1b\\x95\\x7f7N\\xb5j\\xd0\\xbei57\\x1f\\xa3\\xb3>\\x15\\xdc\\x9d\\xf49@\\xd5w\\xe3~V\\x0f\\xe2P\\xf9\\xf8U\\xd4L3s\\xb0\\xf6c\\x8d\\x80\\x08\\x14\\xb3\\x0d\\x0b\\xb2\\x04\\x0b\\xd6y\\xf6-fO\\xda\\xb9z)\\xdc[>\\xaant\\xc9L\\x0d+\\xb3\\x82Np\\x98\\x12T\\xdb\\x13\\x8f\\xc8\\\\\\xf9\\x18\\xd5kE\\xd9\\x19~\\xe8jz\\xca1d\\xe3\\xfdD\\xfb)\\x0d\\xe6\\xa3mg\\x8b\\xe4\\xfa\\xc7\\xdc\\xcc\\x1a\\xb5K1\\x97]4o\\xd6\\xb5p`\\x1a(a4\\x88R,\\\"\\x9e\\x06\\xcdd\\xcc\\xf4\\xd8 \\xc5t\\xc9%\\xe4,\\xcd\\xc6\\xd3v\\x0b\\xa8\\x94\\xd7\\xbfnx@\\xc8\\xf5\\xd0\\x9b%e\\\\\\xd8\\xb7:\\x13-p\\x8c\\xc8\\x80\\x8e\\xb5\\x9d\\x89\\xdc<\\xc3\\xba\\x93\\x10\\xe3\\xea=Q\\x9c_\\x81\\x9a\\xbeZ6\\xa0\\xceb\\xf0\\x88gI\\x04\\xb3$:a\\x17\\x0e4v+:A'-\\xddL\\xacW\\xe8\\xc2\\xf5)\\xc6!\\xbb=i\\x87\\xf3L\\xf6\\x8dr\\x8c\\xe3jdR\\x1adB\t2\\xea\\x94|\\x82\\xb8\\xdf|Zu\\xf5\\xd2O\\xbd0\\x7f\\xe9\\xa7\\xcc_Ha\\x7fH\\x9fk;\\x94:\\x1e\\x98\\xbcI7\\x9f\\x8b>?\\xa2yl\\x8cU\\x02\\x1d)\\xab!j\t}\\x04\\x05?\\x81SF\\x03\\xf6e\\x13\\xaa\\xd9\\x9e\t\\x18\\xf8\\x03\\xfad\\xfe\\x05^\\x99\\x13\\xe8\\x89S\\x91\\xb2Z\\x8b\\x1au\\xfd\\x10\\\"\\x0b\\xe2\\xd7\\xf2%\\xfb\\n\\xd3\\x97\\x18\\xdbanS\\xb2S\\xa2\\xb9~3\\x13P\\x9f\\x8f\\x8e\\xfc\\x85\\x90\\\"\\xc9_\\xb6DY\\xfd\\xeb.\\xc9\\xd2\\x0d\\x1c\\x94\\xa8\\xcd9\\xbd\t\\x9c\\xf7-\\xa6\\xe0\\xde&\\xd0\\x13\\\\\\xbb\\n\\x159\\x81\\xf7\\xda\\x8a\\xbax\\xa1\\x8d\\xecp\\x18`\\xef.\\xb0\\xfcM\\x8c\\xc7\\xb4\\x1d\\xa7\\xf5u\\xff*\\x81\\xb4A\\xbe\\xc1\\x04,\\xabqo\\xb6\\xc9\\x9a;\\xba\\xb7*\\x8a\\xac\\xbe\\xbb\\xe0.gyh\\x1c\\x88\\xe8|\\xc2\\xc3\\x8acj\\xc9.\\xe1j8(2\\x86P\\xb0\\x8c}\\x04\\xe7u\\xb5\\xd4Ol\\x87\\x92\\x8a\\xaf\\xeb\\xd0\\xadz\\xe6\\xe0NV\\xfe\\x1f\\x92\\xbd\\xbc)=\\\\\\x83\\xf7\t\\xde\\xf5\\x8cj\\x7f]\\xcb\\x050\\xde\\x00\\xee\\x80\\xf4\\xa7\\xf6\\x06\\xe6\\x92\\x0c\\x8c\\x94h$\\x0c\\x9a\\x1e\\xc6\\xbaj\\x97\\xa69q\\x99\\xe7\\x99\\x88\\xef\\xfb\\xb4\\x96\\xd1p\\xff\\xa33\\xb7\\xad)\\xbe2\\x81\\xac$\\xe4\\xc9'\\xc0\\xd7@\\xa4\\x03p\\xbc\\xf7\\xe4\\no|#\\xa1\\xce/\\x86~a\\xbfx\\x96^N\\x8a\\xb7\\x9d\\x19\\x0c\\xc8q,\\xa2\\xe1\\x9b\\x915\\xb4q\\xbb\\xb1\\xb6\\xc9=x\\x18\\xfb'E\\xf3\\xe4K\\xb7\\x81\\x1ah\\xdd)7\\x01\\xc9M\\x0e\\xd2]\\xe0\\xc6\\xa7F\\xb3\\xdc\\n\\xb1\\xbd\\xd1\\xafH#\\xf0\\xe3\\xebA\\xf5\\xbeo\\x81s\\xf5\\xce\\x04\\xccu\\xe2\\x87\\xbe\\xe4\\xbf\\xf2\\xa5\\xbd\\x1a\\x04\\x0fps\\xd7\\x9aR\\xb5\\x1f\\xa1\\xd6\\\\m\\x96\\xfd\\x10\\x0e\\\\\\xc10\\xaf\\xa9o;\\xa6<d\\x0c\\x8d+\\xcc\\x10uJ<\\x9c\\xd4\\x96\\xcfe5\\xc8\\x01\\xa7\\x12V\\xa3\\xa5\\xc4\\xc3\\x0fsB{}\\x1e3\\xd5P\\xef\\x87}\\x91B\\x06#\\x9eU&\\xf8\\x19\\xa1\\x9d\\x1a]\\xae~\\x0dh\\xf1\\xd1\\x0d,\\xbeU\\x96\\xde\\xe7\\xa27u\\x10\\xd9\\x96\\xa4\\xa6/\\xd7RK\\x04\\xd4W\\xbd\\xa5\\xe1\\xeaj7\\x1b\\xfa\\xb2\\xaeJVRnO`Z\\x87Li\\xc5\\xa3\\xa5\\xab\\x1a\\x18l\\xbc\\xce?C\\xa3\\x1a\\x97\\x99.t\\x0cX0\\xa7T\\x06{\\x90 \\xb1\\x935MG2\\xb3\\xe9H\\xd3O\\xae\\x05\\xb2~m\\xa1'^\\xadb\\xa68\\xd0PNi\\x0d\\x16\\x0e\\x12j\\xeajq\\xfd\\xb4\\xbe\\x91\\xa5\\x1f\\xa9\\x93\\xb4\\xe7\\xc5UDt\\x96\\xa5\\x94\\xec?\\xcb\\x922\\x0e\\x9e&\\x11fp\\xff\\xff=xx:\\xdf\\xdc\\xee\\xde\\xd3\\xad\\x93g\\x18K\\x9a\\xa9et2\\x89p\\xcel\\xe0\\xadv\\xa3\\x16]|K>\\xf9\\x9f\\xa95X\\x0f\\x14eC\\xa0Hc/\\xd54\\xa8\\xfd<\\xa7\\x1fh\\xe3Y\\x04:c\\xb8@g\\x0c\\x17\\xe8\\x8c\\xe1\\x02\\x9d1\\\\\\xb0\\x9a1\\\\\\xa06\\x86\\x0bjc\\xb8\\xae\\x93M\\xca=\\x04\\xb6\\x94\\xc6n\\xc1\\xa77v3\\xa7\\xf8\\x93\\x8c\\xddT\\xb4\\x9fd\\xf4\\xa20y\\xebx\\n\\x0f6m\\xbbUF\\xe1\\xcf\\xc7\\xfc\\xa6\\xcf\\xb8\\xa6\\xa8=\\x81{\\xccE(A=\\xb5\\xd0yg\\xe34\\xb9\\xb4\\x8e\\x0d\\xf4=\\x850\\xad\\x970_\\xa75\\xe67!\\x82\\x0b\\x8b\\xb8ciFf~!\\xa4\\x01v\\xcc%9r\\x01\\xbb\\\\\\xfbTi\\xc3\\x18:6\\x9f\\xba\\xf5\\x8d\\x0b?\\x8b\\xc3\\xf8\\xcc$\\xfe\\x17u'\\xd6]\\xf1\\x95\\xb1\\xf7S\\x12\\xc6\\xb6\\x05z\\xa1G\\xa2\\xef)\\xf5^\\xd2Yt\\xe8\\xcf_\\xae]\\x19\\x06\\x0cC\\x91\\xe5\\xe6&\\xdb\\\"\\x92R\\x8e\\xd4\\x90-\\x8c\\\\\\xa6~\\x1c<c\\xf5\\xea\\xbe=\\xe9==o\\xea\\x04P7s\\x84\\xecs\\x80d|\\x99\\xfe\\xceZ|\\x9e\\xd7\\xd0\\xbf;h|\\xb6\\x0e\\x1a\\x06\\xd7\\x0c\\xbd\\xa2&\\xc2D\\x8e]&\\n\\xf8M\\x1ez\\xf3$[\\xfa\\x8a~\\xb9K\\x06\\x0fh\\xae\\xf6\\xc7\\x10.]k{{\\x10ad\\xef\\xd30\\xf6\\xb3+\\xf6\\x06\\xb3\\x0bY\\xa7~Nv\\xb7\\xc5\\x1b\\xbd\\xa7\\x06\\x03}\\xbdK\\x83\\xd2\\x93\\x83\\x07H\\x9c\\x87\\xcatC\\x12\\xaa+yL)\\xd8\\x07+\\x8c\\xcf\\xfd(\\x0c,&\\x83\\xef\\xb6\\x19\\x16Q\\xf3\\x8bRSs\\x15\\x91hnW)/\\xe9h\\xf3\\xe9\\xa6\\\"H\\xbfB\\x1e\\x10\\x849gs\\x0b/\\xcc\\x9f\\xf1\\xbf\\x9a\\x87\\xe13\\xa3\\xed\\xdd*\\xf7~3\\xbd7\\xd4I\\xf9\\x85\\xa3{\\xaexW\\xd7\\xcdH\\x9e&qN$\\xa9\\x07H\\x99r5\\xaf+y\\x0fo\\xbb\\x159I\\xe7.\\x1b\\xdb\\xf7\\x15XO\\x8b\\xdcB-r3\\x12JU\\xc0\\xb3B\\x19\\xf0,\\xae\\x02\\x9eQ\\\"2c\\x01\\xcf2\\xf8\\n\\x8aG\\x90\\xad\\xaf;\\x10O\\xb3f\\xc0\\xb3L\\x1f\\xf0\\xacV\\xc0\\x9bH\\xb6*\\xe9\\xdd\\xe1U^\\x90\\xa5\\xed4ms\\xf1\\xaf\\xefr:\\x1d#]\\xc5hYf\\x97\\xe9\\xd8\\x19\\xcb\\xfd\\xca\\xa8Y\\xb6\\xe2\\xfcx7x1\\xf1\\xb4n\\xdb?t\\x7f)624G+\\x15\\xd2\\xd8\\x02\\xf6\\x01Sc4\\x1b\\xb0\\x8e\\x81\\x05\\xd2m\\xbeT\\xe29\\xa4T\\x9f\\xc7v\\xcc\\xb3\\x17\\xb4`]\\x01w\\xad\\xb1)\\x0c ZMO\\x85\\x9d\\xe93\\xbf\\xf0-\\xf6\\x89\\xcb\\x14\\x0e,k\\xc91\\xf6\\xdd\\xe2d]\\xdda\\xb8\\xab\\xfe\\xbb\\x8d\\x9b\\x06\\xa2:\\xadw7\\x92N\\xeb\\xfa\\xa1\\xa8\\x11J\\xffP\\xc4yP\\xb92c\\xe2\\x86\\xfa\\xc2\\x13>\\xccZ'\\xebDBmj\\xca\\x95\\xf9\\x01T\\xb1\\xa9\\x14\\xe7\\x18\\x03\\x8a\\xee\\xc34D\\xf0\\xed\\xcc\tc>\\xbb\\x10\\x0bP\\xd6Wh\\x9e/ QNTL-\\xf2Z\\x9av\\x8an;\\xa6m\\xcc\\x86\\xedM>\\xfc \\x7f&\\x9b\\x12\\x0f\\xd9\\x14\\xf3\\x8e\\x0c\\xdc\\x8e\\xd8\\xb8\\x1d+\\xecE\\\\\\xa9\\xd22\\xefu\\xc6]\\xd4S\\xc7v\\x94[\\xd3\\xb9\\xb4\\x87\\xec\\x8f\\x0b\\xc9\\xedv&\\xec\\xdd\\x19\\xbfog\\x12\\x16w\\x97\\xc5\\xf9\\xdc\\xaf\\x11\\x8ao\\xda(\\x96\\x8c\\\\\\xa0\\x1e}5\\xd5\\x96!4\\xb9u\\n\\xa2\\x9e&\\x1eu\\x96\\x8d\\xd2\\xf6\\x89\\xf2\\xca\\xb1i\\xa3\\xb1f\\xdb\\x06\\xc6\\xea\\xa6\\xad\\x97^F\\xd2\\xc8\\x9f\\x11;&\\x17\\xf0\\x96\\x9c\\x1d\\\\\\xa6\\xb6\\xf5\\x8b\\x05\\xeb\\x80\\x11\\x19\\xaf-\\x17\\xac3\\xcb\\xe9\\xa8\\xe4(D\\x94\\x12|\\xe0\\xcf\\xdf\\x97\\xaeT*;J;\\xb6\\xc7\\x1d)h\\xc8KF\\x9d\\xd0<La1\\xde\\xdaURu\\xe5\\xef\\xc8\\xb2R\\xec\\xfb\\xcb\\xb5\\xdb\\x96\\nf.\\xf8\\xde\\xbb7\\xcf\\x9e\\x1c\\x1d\\x9c\\x1c\\x1e\\xbc8xzt\\xf0\\xec\\xe4\\xf0\\xe0\\xed\\xf7\\x07o{\\x8c;+\\n\\xc8K\\xfd\\xab(\\xf1\\x15\\xa6\\x89,\\\"f\\x93\\x08z\\x97)\\xec#\\x93\\xcay\\x1f\\x0f\\x9f\\x9a\\xd1M(ZLnIj1\\x1dq\\xd8p\\x93\\xbdv\\x8c\\xcb\\xf2\\xf6\\xe0/\\xef\\x0e\\x0e\\x8fN\\xbe~\\xfd\\xeco'\\xdf?y\\xf1\\xee\\xe0\\xaeVF\\x13W\\x9c;\\x08\\x1b|\\xc2\\xfcJ\\x08Q\\x8d8qa\\xac\\x90\\x10\\xd0S\\xeaO7\\x15rML\\x108\\x1d\\x99\\x17\\xaaM.\\x95.\\xe4M\\xc2\\xf1&+\\xf9\\xf4\\xf5\\xab\\xa3\\x83WG'G\\x7f{\\xf3\\xefk\\xa9\\\"\\x82W[\\xd4\\xc37\\xaf_\\x1d\\x1e\\xfc>\\xab\\xaa\\x93I\\xa9b\\xb2\\xf6\\xacG\\xe2B\\xa8#\\xc5WY\\x10\\x86\\xbdN\\xbe\\x7f\\xf2\\xf6\\xf9\\x93\\xaf_\\x1c\\xdc\\xed\\x91\\xd5\\x91\\x10\\x830X\\xec\\xbd'\\n\\xa3\\x16_,\\xb5\\x1a\\xe4$\\xbc\\xa7\\xbc\\xfb3\\x17B#E\\x88\\x15\\x8c[Q\\xba\\xe07\\xd77\\xbb\\xc5\\x95\\\\\\xcb<Fm\\xf5^\\xc2_\\xef<\\x90\\xee\\xdb\\x84.\\x0b\\xe6\\xd1K\\xb2\\x03\\x7f\\xb6\\xb0\\xf5\\xa2\\x05\\xa4\\xfb\\xbc{a\\x1c\\x90K\\xef\\xa7\\x9c\\xc9\\xfd\\xb4T\\x1f\\xdd\\xd1\\xc4V\\xc5\\x88 \\x1e\\xb9L\\x93\\xac\\xc8\\xa7\\x8c\\x00J\\xfd|\\xe6GO\\xfd\\x9c|\\x13F\\x84n\\xa3c\\x17\\xce1n\\x8c\\xb8D\\xf7\\xa5\\xdfm\\x07!\\xe9\\xfa\\x1d\\xb4p\\xb1\\xbd\\xbd\\xbdK\\xc9\\\"1\\x0e\\\\\\x97\\x9d\\xd1\\xce\\xa0\\xaf\\x0d\\xcb.l4\\xb6\\xc62ASG\\xf4\\xb2W1\\xd4\\xa8h\\x8dL\\x9a^%@}\\x93%\\xcb0G\\xca%\\xb6\\xb7w\\xee;.\\x1c\\\"E^\\x9b\\xd6xy\\xe1gE\\xfeC\\xc84$\\xb1\\xbd\\xfd`w\\xd0\\x0cc\\xfb\\xe1\\x185\\xbd\\x0f\\x1ftVi{gX\\x1b}\\xc0\\xb9\\xbd\\xfdP\t\\x9d\\xdb;*\\x03\\x97\\xd8\\xbe\\xdf~\\xcd\\x88\\xbd\\xfb#i\\xa5\\x9b#\\x1do\\xddwl\\x14\\xb8\\xb9`\\xe1\\xbfV\\x0f\\x1eB\\xed\\xd2\tJ\\xefl\\\"\\x9c\\xccNh\\xff\\x9b\\xe2\\x8f\\xf7\\x14M\\xd5\\xfbaH\\xe2\\xd1P\\x99\\x9e(\\x84\\xf0U\\xb0\\x82\\x13\\x85]c\\\\\\x15\\x86\\xeb\\xebJ\\xec\\xb1FpS\\xe11eP*q\\xb6]\\xcfA\\x88\\xe6\\x12{\\x846\\xe9\t=l\\x16=\\xec,N\\x1b72die\\xebwd\\xcad\\x0e\\xb1\\x8b?%\\xee\\xe8\\xda\\xad*\\xa3u\\xcd\\x13!\\xa8D]\\x03_\\xe9\\xccf]8\\xf8\\xb3\\xae\\x9e\\xd9\\x16\\x89\\x8b,$\\xc2p\\xbe\\x0d?\\xf2\\xfa\\xc9\\x1b)/\\xb0:Bc\\xef\\x97\\xaa\\xbd\\xe6\\xab\\xa8B],\\xe6jwO\\x82$\\xa6l\\xcb\\x9a\\x99\\xf6\\xbf\\xe5\\xb9\\x18\\xed\\xa8\\xcf\\xc5\\xc3vTFv,\\x1e\\xb6\\x05\\xdb>r\\x1a\\x8f\\xa4\\xb3\\xbc\\xb3\\x89\\xd1\\xccc{\\xf4\\xd0\\xb1\\xad\\xb0 \\x99_`\\x0eY=\\xec\\xf2\\xc5\\xa1\\xb0T\\xcf\\xae\\x85\\n\\xfa\\xe4m\\xa4FD\\x18\\xbf\\xdbW\\xe9xbrYP\\xc8\\x1c\\xb9\\xed\\xd4\\x01\\xb4\\xbb\\x10\\xdb\\xa6\\xac,<\\xaf\\x86\\xbd\\xdarK\\x08G}\\x1bn\\xed\\xaa\\xd7uW\\x8bW\\xb6\\xb7\\x1d\\xd8Wr\\xbe!\\xc9\\xa1\\xc7\\x009\\xb1\\xdb\\x89\\x86*\\xadA\\xec\\xe2\\xe6\\x85\\xa8\\x1e@j\\xb7R\\x1d\\xe4LYP\\xc2c\\xc8\\x1f9\\x90ys\\x9bpa\\xc84__?v\\xa1\\x98\\xc6m!\\x84\\xa02n\\xba`\\xf7Gj\\xf2a\\xa4\\x86\\xc4\\xed\\x9dm\\xcd\\x92\\xd5\\xddi\\xe0\\xac\\xa68X\\xde\\x19\\x1dEQ\\xb2\\x95\\xd0\\xc7\\xb5\\x8c\\x90\\xe4\\x10*\\x17M%T\\x8dRp\\x8c\\x14\\xa4\t%q\\xd8\\xa5\\nk{z\\xd7F\\xdc\\xb4G\\x10\\xc1c\\x98=\\xd2\\xdb\\x00\\xd3\\xd6l\\xba\\x95\\xf9t\\xb6\\xbe~\\xec\\xd06K\\xa76W\\xe9|\\xc8\\x84O\\xfd]\\xc2l}\\xbd\\xa7[\\xbc\\x1ef\\x10\\xc6\\x90#\\xbd\\x91Og\\xc7,\\xac\\xa8S\\xcb=\\xb0\\xca\\x87\\x0f\\xa8\\x89\\xaa\\xae\\x95/\\xbf\\x84\\x8df\\xec\\xa2\\x15q\\x9c\\x84\\xcdvU\\xa7\\xee\\xa5_,\\xbc\\xa5\\x7f\\xd9\\x05#V\\x12\\xc6}\\x80\\xa4G\\xe86\\xc36\\xc4q\\xe0+\\xd8\\x84}z\\xe2`\\x9d\\x0eq\\x93^\\x82\\x0c\\xa5\\xdc\\x18\\x89\\xa8\\xe7C\\xb1\\xf6\\xce\\x9d\\x00\\xbf\\x0e\\xf2C\\x0c\\xe2N!\\x89\\x11y6%\\xac5\\xf0\\xcd\\x8e\\x88\\xce\\xaf5B\\xc1!; \\n\\xad\\x04\\x1bS\\x8ek\\xf7\\xe1\\x03\\xe4\\x94\\xbc\\x88P\\x1c\\xc6c\\xd1rjv\\x026\\xca\\xe1\\xbc\\xd9\\xc2\\xcf\\x9e&\\x01yR\\xd89\\xae\\xf9\\xce\\xce\\xf8\\xe1.\\xfd6\\x84\\xc7\\xb0\\xb3\\xbb5z\\xc8\\x1aZ\\x87\\x11\\x82\\x1f\\xda\\x12\\xd8~\\xe7cZ\\x815\\xb0\\xbb5\\xc6\\xce}\\xda\\xc0\\xfd\\xad\\xed-\\xde?\\xab\\x8f\\x1d\\xd1\\x9d\\x84\t\\x7f\\xcb\\xbc\\xf4r\\x17;\\x19\\xd32\\x1f6x3\\xebt\\x9c\\x1b|P_}\\x05\\xa3M\\x07\\xd6awggk\\xf7n \\xbcs\\x7fp\\x80\\xd8\\xd5aC\\n,\\x0eJ\\x94\\xf9\\x956(\\xaap\\xf7\\xde@fL|\\xd8\\x12\\xc3\\x17\\x8b,\\xb9\\x00\\xca\\xbcc\\x96t<\\x01\\x16\\x849\\xc4I\\x01H\\x01\\x9cFdMc\\xf9\\x91\\xd9\\x05\\x8b\\xc2G\\x9c\\x15\\xcf\t\\xbd\\x04\\x1e \\xe30\\xde\\xde\\xc6\\x7f\\xb7w\\x1f\\xb2\\x7f\\xefo\\xb1\\x7f\\x1f\\xf0\\xf7\\x0fv:\\x9c\\xc5\\xee\\xa6#\\xb8\\x9a!\\x9d\\xf5\\x12R\\xbb\\xaa\\x9d\\x91I\\xa3d\\x1a\\xdb\\xa3\\xfb\\x8em\\x15\t;UG\\xfe\\x99\\x85l\\xa7\\xf5\\xb3EY\\xb9u\\n\\xf2k{`M\\x13\\xbc\\xed\\xe1\\xe7c\\x8b1\\\\\\xf7\\xb7\\x1c\\x9bS\\x00\\xb5'\\x03T\\x0dY\\xfd\\xb4U\\xd5&\\xa6\\xabA\\xb2\\x9dB\\xa6u,i\\xa01\\xa4\\xd2\\x90\\xb5\\x90\\x17r\\x8dr\\xf8\\x9b\\x0e\\xcb\\xb0b\\x8f6G\\xfd6\\xd4\\xf7\\xe9$\\xd5\\xa2|\\xba\\x8e\\x0f\\x1cfy\\xe8\\xb8`\\xf9J\\xfbC\\x0c\\xa6\\xad\\xed\\xa5\\xdd[\\xa7\\xb0e\\\"\\xe0x~\\xbd\\x06\\x83\\xe6/\\x11-\\xfdD\\x88\\xe2\\xee\\xc0\\xa44\\xec\\xd2\\x10W\\xe3\\xa3\\xce1T\\xeb\\xc10\\x95\\x8dt\\x0e\\xab\\x08\\xd86S\\x1d\t\\x90`\\x1b\\x92\\xd9LT%\\xceW\\xd5\\x9fJ\\xc3\\xa6o\\x14y\\x94\\xd7\\xf3\\xd5\\xdb\\\\\\xfb8\\xc3m\\xe3\\x1b\\xeb\\xa9\\x1f\\xff\\xc7\\x02fI|N\\xb2\\x028\\xa4\\x17\t\\xa4Y\\xb8\\x0c\\x8b\\xf0\\x9c06kUj\\xbe\\xef\\xcco\\xef\\xb6%\\xc7\\x0c\\x1b\\x8f\\xb7\\xb7\\x944\\xebH)Uh\\xb1O\\x0f\\x04\\xfbt\\xff\\xbfg\\xf6I\\xc3\\x96n\\xef\\xaaWv\\xdc\\x11\\xe3\\xf8\\x1c+S&\\xf4\\xf9\\xc1\\xc9\\x9b\\xb7\\xaf\\x8f^\\xb7\\x03V\\x94m~\\xbfY\\xdc\\x16\\x07t\\xd6\\xe3\\x9c\\xe5\\xae,xW\\x14q\\x85\\xf3\\xcc\\x10\\x19\\x03\\xad0\\xb4\\xd4\\x10\\x92\\xdc\\x85\\x87NA^\\x10\\xe6i\\xe4_\\xd1\\xdb!Nb\\xcc\\x17m\\x8fwFh\\xd6O\\xe2\\xe0\\xe9\\\"\\x8c\\x02d\\xdd\\n/\\xcf(\\x8fa\\xfd\\xe4\\x9f\\xfb\\xcc\\xa7wbUY(\\xb9\\xef\\xdf\\x0fa\\x1c$\\x17^\\x90\\xccP\\x84\\xe2xIJb\\x1ba\\xe4\\\"\\x0b\\x0bb[_\\xb1O\\x1f\\x8b*\\xde7{\\x0cE\\x7f\\xf5\\xe3=^\\x84\\xaa]o\\x16%9\\xa67\\xcc\\xf1\\x04\\x7f\\xf3\\x08\\xb2\\x8d\\x8dG\\x0e\\x04$\\\"\\x05\\x81\\xbc\\x06\\xa4i8\\xcd\\x8e\\xf56e\\xb9\\xdd\\x82!5&\\xe5\\x17\\x05\\xb3\\xe0\\xa4t\\x9a\\x11\\xb5\\\"\\xe6T\\xd2\\x19q\\x19E(A\\xa6T\\x9c]\\xb6\\xe0\\x9d8\\x8c\\xc1\\x8d\\xc9\\x05\\xe5\\xfb\\x9a\\xc5\\xcc\\xfd+fiy\t\\x9a\\x9eaV\\x0b\\xc7\\x95\\xa5\\xadB\\xc2\\x95\\xd8\\xf1\\xadh\\xfe\\x91\\xdax\\xb0s\\\"8\\xe4o?\\xd0S~\\xf4b\\xfe\\xefAv0\\x1a=P\\x93\\xc5\\xe36\\x82\\xe6\\xc2\\x83\\xdd]\\xc7^k\\x0b\\x1c\\xd4(\\xe3\\x06\\xf7;_\\xa2\\x92\\x13\\xd2]\\\\\\x80\\x8b\\xd4}M\\x99\\xa5\\xe9\\xb1b\\xcdc\\xcaW\\x97\\x0e\\x93\\x12\\xf8(\\xce\\xc7\\x94\\xf0xmF\\\"\\xb2\\x90\\xe2\\xc3GP\\x08a-\\xdf\\x0f\\xfc\\x8e\\xa2\\x06\\xdc\\x0d\\xe6\\xa2\\xf2\\x9fB;\\xc2\\xd6>|\\xa8[SoQt\\xd3-z\\xf8P\\xb3\\x92\\x0c:m\\xebg\\xcbAW\\x0bJ\\x07>\\xcf\\x0f\\xe2r\\xc9\\xf8\\x06[\\x82a0\\x99G\\x0bJ\\xf7\\xb0N\\x0eB\\xcf5\\x9a\\xef\\xe4i\\x14\\x16\\xb6\\x859\\xf6y\\x87\\xe4\\xe6'\\xb4\\x03UB\\xd3\\xa5\\xb9\\x9c\\xb6us\\xef\\x9dL\\x83[\\xffwQ\\xd5\\x7fK\\xa2*\\x0d\\xca\\xda\\xdem\\xbf\\x0f\\x07P2~}QV\\x17\\x97\\xf1:=#\\xc5\\x1bQ\\xf1\\xf5\\xbcy\\xadj`\\x91\\x08t\\x06\\x98\\xc19\\xc4\\x935Em\\xb4\\x8a\\xc2\\xa7\\xa4B\\x12\\xe7EV\\xce\\x8a$C\\x93'\\x08\\xe3\\xbc\\xf0\\xe3Y\\xb7t\\xbf\\xf9\\xb7t\\xfbN\\x9a\\x9fq<\\xb0\\x0f~\\xdb\\x00|\\xc5\\xf5\\xdf\\xd9\\xba\\xe9\\x99\\xe4\\xf8#[]`Q\\xdd\\x9f\\x9c}\\xa0\\xec@\\xc52<\\xa0$4c*\\xb7\\x1cWx\\xc3o\\xf1\\x0b\\x16\\x19\\x03\\x9e<\\xd6\\x1em\\x8e\\x1d\\x97\\xfb\\xd4Rj\\x01\\x0fn\\xd4\\xe2\\x16\\xd8\\xab\\x86\\xac\\xc1E\\xcf\\xd9\\\\\\xe8\\xce\\x82N\\xb4\\x85\\xa7\\x87\\x87o\\xcb\\x88\\xbc\\x08sE\\xb0\\x83\\xa7\\x87\\x87\\x87\\x944}Ff\\x91\\xcf\\xe2Mw\\x03&<=<DS\\x04\\xdeD\\xbb4\\nI\\\\\\xbc%\\xb3B]\\xfe\\xec\\xf5Kc!\\x9b\\x8b\\xb6\\xf8(yOb\\xf5\\xe0\\x9f\\xf9\\x85\\x7f\\x94\\xf9q>'\\xd9\\xf3\\x82,\\xd5m|\\x13F\\x9a\\x91\\x7f{\\xf4\\xf2\\xc5\\x93(z\\x9aD\\x11\\x8b@\\xa5\\xae\\xd2W\\xfeM\\x92-\\xb9\\x17\\x92\\xba\\x02s\\x96\\xd0VyI\\x82\\xd0W\\xcf\\xf0e\\xb8$\\x94%\\xc6\\xcd\\xed~\\xf9\\xca_\\x92\\xe0U\\x12\\x90\\x97~\\xaa(M\\x02\\xcd\\xae\\xbf\\xf1\\xc3X\\x84?Q/\\xcd\\x9b\\xa8<\\x0b\\x15\\xf3e\\xef5\\xc39\\xfc\\xfeO/\\xf0*R\\xb7y\\xf8\\xfd\\x9f^\\x95\\xcbS\\x92i\\x8b\\xdf`\\x96`\\x0d,\\xd0\\xf2$\\x8c5\\x03>\\xfc\\xfeO&@:\\xfc\\xfeO\\x0cR\\x92L\\x03&\\x87\\x98q\\xed\\xebr>\\xd7\\x0e\\x90\\x1e\\x94\\xc3\\x05!\\x85zU\\x8f\\xc8eq\\x94\\xf9\\xb3\\xf7OuG\\xa5\\xaa\\xa1)N\\xcaY\\xb5vU\\xc9\\xb5\\x8b\\xae\\xe8\\x89\\x1dP\\xd6\\x84Q\\xe2\\xe7\\xf0\\x15,\\x04\\xcf\t\\xe7\\xeb\\xeb*ju\\xe9b$\\xfb\\xc5\\xf4\\\\a\\xf0F\\x99\\xd0`z\\xa6(9E\\xb2^Ur\\x02{pJ\\x91\\xfe\\xa9\\xeaB\\x02~\\x15\\x9f \\xf9yB\\xef\\xdf\\x0f\\x1f\\xa0\\xb4O\\\\\\x98\\xb9\\x90:.\\x9cL\\xe7\\xf5\\xbb\\xb9\\x0bg\\x14\\xf9M\\xcf(\\x03\\x96\\xba\\xa0\\x8aK\\x83\\xc8uIo\\xf5\\xcc\\x81\\x93\\xe9\\x12?\\x0f\\xe9\\xe7K\\x17\\xb2\\xe9\\xf2\\xb8\\x16o\\xc2P\\x84\\xdd+\\x00\\xd2(-\\xb7\\xef\\xab\\xf9\\x0eD\\xdc\\x8d\\xf7~EQ\\xea\\x98\\xb8\\xf1\\xf6\\xee\\xbf\\xdb\\x95\\xfc\\xe3\\xd8\\x95\\xe8\t\\xbe\\xfb\\x8em\\x95q>KR\\xf4Vi\\x93p\\x89\\xf0\\xd7S\\x1d\\x98J\\xcc\\x00\\xc94;fJ\\x81\\x9d\\x07h\\xbc\\x9a\\xb9\\xf0\\x8b^\\xda\\xd7a\\xea\\xa7\\xd9\\xf1\\x94\\xd0c$\\xdb\\xc3+g\\xa2\\x93\\xf8\\x1ba\\xef3\\xb4s\\x11\\xc6\\xa6\\xbe\\xa0\\xa4\\xc6\\xdbm\tK^\\x11[\\x8d\\xd7\\x9c\\xc2\\x1a\\xab\\xe2\\x96\\xa84>s\\xd6|[P\\xc3\\xc2\\x95\\xdc\\xdfn\\xbd\\x0ex\\xebm\\x14\\xb2\\xe0(\\xa4]\\xff\\x9c\\xbfo\\xdbC,Y\\xaf;m\\xd4r\\xc6\\xdfo9^NZ\\xeb~\\xc5\\xdaz\\xb0\\xd9\\x89\\x85w\\xca\\x81\\xb5=\\xaa\\x13\\xdeZ{T\\x17\\xfc}{T\\x07HiV2\\xfaf\\xe1%\\x16\\xa6Y2#y\\xcb\\x13\\xfd\\x10\\x8b\\xb8b\\xaeY\\xf4\\x14\\xf6\\xc0\\xe2\\x1f\\xe19\\x9f\\xd9\\x97\\xad^\\xdf\\x9b%\\xbaO\\xd0\\xc2v\\x0fN\\xbdy\\xb3\\xe05=\\x10kfio\\x91]ix^\\x81#\\x0f\\xbd\\x8c\\xe4ItN\\xec\\xf6\\xea\\xc9\\x0fzh4\\xd9\\x9f=z\\x84\\x85z0O\\xc9\\x0c\\xf1\\xcb\\xf1\\xa0lX\\xe2!\\xf6{\\x17\\xde\\xebY\\xdf\\xeb.K\\x0f\\x92\\x1d\\xc3S\\xf4GU\\xf1q|/\\xde\\x92\\x9f\\x18e{pN\\xe2\\xc2a>,\\xc5\\x82\\xc4\\xf6{G\\xe6\\xd0\\x8aN7\\xd70\\xf3\\x8b\\xd9\\x02p\\x0e-\\xe5[\\x1b\\xfc\\xde\\xf4\\xce\\x19U\\xd4Z\\xa1\\xf2\\x9a\\xbd\\x96\\xd2\\xef\\x9a\\x93\\xa9\\xb4\\xd56\\x8b\\xc7@\\x87\\xed\\xe0\\x14\\x9a\\xa3m\\x81\\xcbQ\\x1f\\xb6\\x03\\xa1\\xe7\\\"\\xde\\x89V\\\"B\\xcb\\x10\\xdf\\xaa7\\xe0\\x9c\\xdb.\\x13\\xefd\\xa6\\xaeq\\xa5\\xd7\\xa8\\xcaO\\x83\\xbb$\\xde\\xc99\\xe3-G\\x801jNr\\xc6^n2\\xd6\\xb2\\x16,\\xf5\\xc1\\x15\\x17f\\xd6\\x084\\x81}(\\xbc\\xe4=L\\xa0\\xf0\\xe6~\\xd8\\x13\\x02\\x1d\\xaa\\x04Q\\xfcp\\xf4W\\x8fxu\\np\\xfd\\xb5Y\\xd2\\xe4 Y\\xfaa\\xac^@\\xf1\\xe8O\\xb0\\xfc\\x94\\x94\\xfeH\\xd0ld\\xcc\\xd7nAA\\xe5'$\\xa6\\xf0\\xaf=\\x189\\xae\\x88\\xffS\\\"\\x05\\xb2\\x87&\\xd56\\x06\\xaa\\x98y$.Hfs\\x9dBig\\xc8\\xa3c\\x86b\\x8f\\\\\\x86\\x85\\xcd\\x19\\xfc\\xb5M\\x87\\xd5\\xd9Co\\x04nc\\xbd\\x0f\\x91}`[\\xfc\\xdcm\\xcc\\x16~\\x18\\xc3\\xecj\\x16\\x11\\x0b) 4\\x85ycS\\x08\\xde\\x87\\x90iKc\\xf4/\\x89hq\\x8e%\\x13\\x88lEv@\\xf9i\\x9c\\xcb\\xdee\\xc1\\xf1\\xaf\\xf9|~|\\x12\\x91\\xdd\\x13~\\xf3\\xda\\x80\\x8f \\xaee\\xd3\\xe1#\\x07|;\\x9e\\x86\\xeb\\xebm\\xe5\\x80\\xfc\\xd0C\\x82Br\\xb7:V#\\x17P\\xcb\\xbc&\\xf6\\xe9\\xa5nL\\x8a\\xe8\\x99\\xd7\\xa6\\xe3\\xff\\xb2\\x17\\x17\\x9d\\xb1\\xc5\\xcf\\x0d\\xf4\\xb3x\\x10m\\xa1\\x10\\x97\\x9b\\xed\\xe3\t\\xd5N\\x94n\\xf1\\xf3\\x8e\\x02\\xa6*\\x9dS \\xa0\\xf0D\\xf1\\xd9\\xc90\\xfc\\xf0\\x14\\xf6\\xe1\\xd2#\\xcb\\xb0\\xa0t\\xe8\\xc2\\x8f\\x83\\x88\\x04\\x15Vg>9\\xa8\\xdcB\\xdd|\\xee%qU+\\x13\\xb50TlO\\xf0S\\x0e\\xc6\\xbd\\xa1O3\\xe2\\xe7I<\\x81D\\x0f\\\"8\\x9a\\x0cGC\\xaf\\xcb$\\\"\\xdc\\x97\\x01c\\xd8H?m\\xeb\\x9d\\x18\\xab\\xe8\\x1f2yj:\\x88\\xa8\\x0e4\\xde\\x7f\\xcf\\x99\\xbe`\\x0c\\x13<\\xe0\\xc4;\\xf1%\\x0e\\x04W\\xbc\\xf0\\x880x*\\xbc\\xf3.@9&\\x88z\\xde\\x0bQ\\xfc\\x1a\\x1b1M%\\x87h\\xee\\xcd\\x81\\xc3\\xf9\\xf0\\x01\\x0f\\x81\\xc3\\x8f\\x8e\\xa9\\xb7\\x9fz{[\\x15~\\xd5\\xd0(\\x03V\\xb5\\xe8\\xdf\\xb2\\xdd\\xb0\\x04L\\x15\\x1c\\xa6\\xaa\\n|\\xbb\\xd8-lJ\\xd69\\x00\\x9c\\x04(\\xd135\\xf8\\xe8\\x1bw\\xeaU\\xef\\xda\tS9\\xca\\xa9v\\xd7\\xa5\\xf0N\\x02\\xbcB\\xf0\\x07\\xc5\\xf4.[\\x83\\xc2;\\xb9\\xa0\\x05\\x85\\xe3\\x9dP\\x8a\\x9e\\x92\\x15\\xde\t\\xbd \\xc7\\xf8\\xcb\\x17_1\\x1f\\xf5\\x93\\x19\\xb77\\xa4\\x17\\xc5\\x91]\\xa0\\x10\\xc38\\xf2\\xb7\\xc3F\\xeeV\\xbc\\xb9Z\\xd5\\xb3\\x16{'\\x81\\x0e\\x18\\xe2zR\\xa84\\xe7s\\xd2\\\\\\xbf\\xe6k\\x97v\\xc6n\\xc0\\xea`\\xd5\\x97\\x1f\\xcc\\xd0\\xb2\\xe7\\x94\\x9ef$\\x1e\\x02\\x08\\x8b\\x9cDs]\\xfe<\\xfa\\xe0:\\xbfA\\xf3\\xaa\\xfd\\xa1\\xc4\\x13H\\xbcz\\xff]xr1\\x01C\\xb2\\xc5\\xaaZ\\xa0M\\xcb*\\x1e\\x0dU.\\x9ea\\x14\\x8b0\\xa0\\xa4\\xf7\\xf1[\\xbc`Fx7\\xbf\\xe2\\xbf\\xef\\x92\\x0cx\\xc5\\xfa\\xcaz\\x03o\\x1bn~\\x87\\xde1\\x15\\xf8\\xc7\\x0c\\xfcG\\x14\\xbec\\x17\\xd6t\\xe3\\x1d6N>>\\xf3D\\x06\\xec_\\xcf\\xde]k\\xe7\\xdf\\x9dw\\x8b\\xc8\\xa8w\\xfc5\\x9e\\xf5C\\xe3\\x81]\\xf0\\x08\\x9e\\x87.\\x88Ca\\xb9`\\x9d,,\\xc7\\xc5P\\xa7.du\\x16\\xeb\\xd6\\xa9P\\x83\\x0f\\xb1\\x11LX\\xbb\\x15\\xa4\\x88?[\\xc8\\xc5\\xb8\\xe8\\xaf\\x9a\\xf9\\xb3\\x9b_V\\x7f]\\xbb\\xec\\x12\\xd7O\\x92I\\xfb\\x04e\\xc7\\xfe\\x92o^\\xf6&\\x97%\\x98\\x81\\xa0\\xfd\\xf0\\xaf\\xf3N\\xe5\\x85\\\\\\x99\\x11\\x8a\\xf5\\x80\\x9c\\xa6y\\x8f\\xbd\\xfd`\\xe4\\xd8\\x87\\xb2mm{|$\\x1e\\x10\\xea_\\xb0rO\\xec\\xa5\\xd85sN\\xf1\\xf7\\xb0\\xa7dS\\x99\\xfe\\x19\\xcf\\x06e\\xb0\\x9a\\xb5j\\xce\\x1c\\xe9^\\x8a\\xc99\\xf7\\x83d\\x0c\\xbd\\x8b\\xf9\\x9f\\x93\\xd6\\x9a\\xcc\\xaa\\x1cT\\xd5\\x1a\\x8bd1'~\\xbb,\\xa7eG|\\x1ek\\x14Lb\\xc1\\xa14\\xf7\\xb9y\\x8e\\x10\\\\\\xfa\\xa2\\xd8I\\x16\\x8bL\\x84 \\xc6\\xa9\\x87!\\xae\\x1d\\xed\\x95S\\xc7\\xe4\\x02\\xb2G]\\xe8\\x12T!\\xbbq\\xe9\\x1b~\\xa3\\xa0\\x9e\\xf4-&T\\x1f9U\\x11j\\x99\\xf7\\xd8\\xc9\\xc0\\x12\\x19\\x9aO\\xbd9\\xdd\\xe5!\\xcab\\x827\\xdb!n'\\xfe\\xf4)\\x05M.X\\xd0\\xb7\t*\\xd4\\x1b\\x93\\x9c\\xdbs\\xefO\\xb0\\x0es\\xef\\x07\\xfc\\xff7\\xf0GX{\\xdd\\x06\\xc87\\x82(:l|\\xccLLm\\x19Wp\\xfb\\xf7\\xb1c\\xcb\\xaf\\x98\\xdaA2\\x81g\\x1d\\x1f6\\xba\\x94\\xf0M{nty\\xfa6Y\\x10HOT\\x98\t$\\xd1\\xd3\\xa6[q\\xfb\\x0eSX\\xa8\\x01\\xad\\xb3N\\xf5p\\xed\\x92\\xae\\xf0\\xdak\\xc78j\\xdc\\xef\\xbea\\xf3Q]\\xd8\\xa58\\x1c\\xd5\\xbe\\x1d\\xc2\\x04\\xfap]ghk\\xf6k&\\xaf\\xdf~\\xb0e\\x8a\\x16z\\xe81\\xabg\\x0fO\\x90\\xfd^\\x06\\x0b\\xd3\\xb4\\xfc(\\xea\\x9b\\x92L\\xaa\\xaao=\\x86\\xb5t\\xc6C,\\x1a\\x82Q|\\x93\\xf0*z\\x91M8\\x9cS\\x15xtj\\x88\\xd0\\x0c\\xbcIC\\x92|\\xe0\\xfa\\xb5\\x91\\x9e\\xc6:\\xa7\\xb8\\x9c^#\\xc3\\xe5\\xac\\xe7<\\xd8R\\xb8\\xbe\\xdeO\\x01\\xa2\\x87\\x84\\xa1\\x7f@b\\x1a1/C\\x81\\xf4l\\xae\\xaf\\xbb\\xb5\\xb4\\x8cB\\x04\\xa2\\xc8\\xe1#\\x04\\xec\\x98\\x92\\x16\\xb9 \\xd2\\xa7\\xe51\\xc3|\\x1b\\x1b\\xc8`dv\\xdcG\\x15j\\x99f\\xe0`.5\\xa5\\xacw\\xad?\\xf2\\xa1\\x87\\xb6T\\x89\\x1dz\\xe7C/\\x96\\xcc\\x9f\\xf5\\x9e\\xdd\\xbb\\x02t=\\x14'+@\\xf1\\xea\\xb0\\xd5\\xdd\\xf5\\xfa\\xd8\\x81A\\x9a\\xa7M\\\"\\xa8\\xdd\\x81\\x84\\xed@f'\\xa6\\x1d\\x90P\\x10\\xfe\\xbc\\x91\\x8a\\x90\t\\xbd\\xdaSG\\x1e\\xd3n\\xd8v\\x15(\\xb6\\xe7\\xaa\\xce\\xb5\\xbd=`\\x12\\x1e\\x08\\xe3\\x9a5\\xac\\x9d>bX\\x07k\\x02a<K\\xb2\\x8c\\xde\\xd6a|\\x9e\\xcc\\xd0,I\\xe7jvs\\xfb\\xe2\\x8e\\nP\\xe8\\xf9\\xd5\\xee\\xdc\\xdb\\xf7U~\\xf2\\n\\x1b\\xee\\x92\\x9b\\x05\\xb45\\x8f9o\\xa6m\\x0b\\x18\\xb1\\xc0^\\x8dw\\xb3\\x96\\x0f\t\\xd7q\\x98vc\\xeeB\\xaa\\\"\\xa0\\x02\\x17\\x16.\\x9c\\xbb\\xc2\\x1e$\\x85\\xfd~\\xc9Pgq\\xc5s\\x8d\\xc2h\\x95\\xfd\\xf3\\x15\\xf3\\x19\\xc5\\x81\\x14\\xb5\\xc0\\xadS\\xef\\x14MX:p\\xa3$\\x99\\xcfn\\xea\\x87\\x88\\xc2T\\xfb\\xccQ\\xcd\\x0fu*\\x01\\xca\\xf0\\x85u\\x82\\xf3\\x08\\x02x\\x0c\\xa7\\x8f\\xe0Tgi\\x8aV\\xa6K\\x1e0\\xf6\\xca\\xf6m\\xca\\x8c\\x90\\xe9\\xe9\\xb13\\xdd<va1\\x1da\\xac\\xc0+\\x1b\\xdf9\\xb5\\x9f\\xea\\x12\\x7f\\xce*3\\xd4e\\xf38\\xaaM`\\x99\\xde\\x07\\x93\\x85q\\xc7\\xa9G\\xb0\\x86]\\x9e{1\\xb9,l\\xc7\\xf1\\x82$&\\x1ak\\xdcj\\xb0\\x89}\\xee\\xc2\\x95\\x0b\\x0b\\x1e\\x08\\n\\x8aaC\\xbbv\\xbc\\xaf\\xdf\\x1e<\\xf93%\\x97\\xe9\\xc5\\xf5\\xf6\\xe0\\xe8\\xdd\\xdbW\\xb0\\x07\\xb3\\xd5\\x0e\\xd9N\\xbf\\x95\\xb4\\x80\\xdf\\xa4\\xc3@*\\x19]\\x81\\xeb`\\x1f\\n\\x9b\\xdeS\\xb8\\xfc1_\\xfe\\xa2}qU\\xbc\\xae1\\xb2$\\xf1X\\xb3\\n\\x99\\x1f\\x82\\x9f\\x84\\xbfB\\x86b\\xc3\\xca\\xa1\\xcdm\\xeb\\x1b\\xff\\xd0\\xfc5x\\xad\\xba\\x86DImd\\\"\\x99\\x816\\x01\\xddda2\\xcc|\\x84\\xaf\\xa84G\\xbcF\\xec\\x8c\\xd9\\xcd01\\x1e\\x1a^M\\x93c.\\xd4\\xbb\\xf1\\x1c\\x95\\x1e\\xb5\\x03\\xe6\\xc8\\x96G=5\\xc6\\xf4H\\xee\\xd0,R\\x9cq\\xd2\\xf4\\x84T3\\xa6W\\x91\\xc0xt\\x8e\\x94\\xb1\\x9bZ\\xff\\xf4O\\xd5\\x80\\x98\\xdd\\xd94\\xb3\\x89s\\xdc3\\xf5\\xa1\\xd7\\xa7\\nUg\\x95\\xc4\\x83\\x99\\xae7\\xc11\\xbf\\x08\\x19$\\x0b\\xa4\\xa5\\x00\\xe8\\x99\\x9f\\x13\\xd8\\x9c(\\x91\\x02\\x9f!\\x1af\\xdb,\\xae)S3*(\\nlg4\\xa0\\x9db\\xbay,\\xb7\\xe5\\x02\\xbe\\xd1\\xb48\\x1e\\xd8\\\"me\\xa4h\\x97\\xbf\\xd7\\xb4\\xbe\\xb5R\\xeb\\xf4\\xffcm\\x1f\\xbcT\\xd3\\xd3\\xf6\\x0dz\\xa2\\xff\\xdf\\xea\\xe9\\x8f\\xd7\\xd1\\xe0\\x13\\xa9\\x0b\\x11;\\xfdV^i\\x1d\\xdb\\xa8\\xc4`]D\\x0fa\\xe6\\xbd,\\x0b\\xa4\\xc6^\\x9f\\xb2Pu\\xc8,x?\\x90\\xd3?\\x87E\\xbb\\xacK,ej\\xf3\\xa0\\x12\\x8b\\x94\\xe6Ay\\xdb<\\x08\\x9d\\x8el\\xbf\\xefVQJ\\x92\\xc4M\\x13\\x0d\\xf1\\x01\\xcd:\\xae\\xda \\xee\\xe5\\x9c\\xa1Gt\\x91cR9\\xa1\\xc1D\\x0d\\xfa# \\x8ftt\\x15S\\x12\\xcfc\\x17\\xe5Z\\x04\\xef\\xf2\\x9b(X\\x12\\xbbG\\x9e\\xde\\xa1\\xcd\\xe5\\x87]j\\x04\\xf5\\xbexkJ\\x92\\xd6L\\xddn\\xe7m\\xf7M\\xa3\\x15\\xbe \\xccd\\xa2\t\\xcf]J-w\\x90\\x873\\xee\\x89\\x8fku\\x14\\xce\\xde\\xdb\\x91\\xb1A\\x0c\\xbd\\x8c\\x9cH\\xc8\\xa03\\xf6\\xcf\\xc33\\xbf\\x10\\xba\\xe5\\xeaO\\x8f2)\\x81\\x1f%\\xb1B\\xeaO\\x1b@aQ)\\x985\\xdd\\x82R`\\x99\\xf1P\\xca\\x8c\\xcf\\xd3\\xa8\\xb1z\\xa7(\\x9e\\x19c\\x13\\xa3\\xc1\\xba\\x086\\xe7A\\xed'\\x95\\xaaG\\xd1\\xbcj%\\xd5\\xa7c\\xce\\x84\\x10\\xca.R\\xd8\\x83\\xca\\xe3\\x98\\xb9\\xf8\\x1e\\x91\\xcb\\xe2U\\x12\\x10\\xdbR\\xe9\\xf8\\x98\\xe84r\\xbc\\x84a\\x0e;\\xd5e\\x85\\x9a-\\xfc\\xcc\\x9f\\x15${\\xe6\\x17\\xfeD\\xe9R\\xc6\\xedsz\\x17\\\"\\xf5\\x02\\xbf@\\xab):\\x95y\\x0f|+\\x91p\\xd5\\x87\\xf2\\xb0\\x9d\\xf3x\\xf2\\xea\\xee\\xe7\\xf1\\x044\\x81\\xcc\\x99G>;I}[\\x04x\\xee\\xd0h\\x04\\xcf\\x07\\x86\\x86t\\x19\\xb9\\x86\\xde\\xe2\\x89K\\xcf\\xb8\\xc3\\x1c\\xda\\x13\\xcd\\x9cV\\xbc7\\xee\\xf7\\xbbY\\xa9i\\x9c\\xca\\x9a-\\xa1\\xfc\\x7f\\xe10\\xa7\\xb3\\x84\\xdez\t%\\xe2\\xef\\x84\\xc3\\xef\\xb3\\xef\\xd7\\xdcz]\\x17mAvj\\xa2\\x104\\xcc:\\xfb\\xd6Cu\\x1f\\xd1\\x1d\\xc9\\xa6\\xa4\\xe5\\x1b\\xcc\\x0cR\\xd0\\xf8\\xa9\\x98\\xfah\\x16\\x9exs\\xbb@S=\\x05\\xc1\\x87\t\\xd2J\\xe4\\x82\\xbb.)\\xb0j`\\x95B\\x8e7!\\x9e\\xd6Q\\xb81\\xbda$\\xf2\\x93\\x96T\\xb5{\\xff\tfmz\\xffx\\x9a\\x1d\\xb7\\xb1l\\xc8Y\\xb8\\xbe\\xb3\\x9f4\\xcd\\xe4\\x81M\\x80\\xb1P\\xf3,Y\\xdaa\\x8f\\xe1\\x0c\\xbb<\\xc7\\xda5Q\\x1b\\xc6\\x0e6\\xb6\\xafC\\xac\\xac%\\xb5\\xeflK\\xdc,\\x84\\xe9\\xed\\xf7j\\xa2AZ85\\xc6A\\xbf\\x7f\\xc5\\x9aBu\\xef\\xf6\\xad*\\x98\\xdc\\x04\\xc4\\xc3\\x9c\\x02\\xe2\\xee\\x06\\x88Gq\\xb5\\xb98\\xb0\\x15\\xba\\xf7Um\\x10;4\\xa8\\xc0\\x95\\xc8=^\\x0d\\xca\\xfb\\xb0N\\xc7\\x81 \\x11\\x8c\\xab\\n\\xe9tp\\x14OK\\xd0\\xf1\\x07\\xe0\\xce\\x0f\\x8d\\xd0q\\x99\\x9dyo`\\x1d2\\xef\\xadA\\xc54\\x0fc?\\x8a\\xae\\x86J\\xdf}\\xae4N\\xaa\\xa8\\xc1\\x94#\\x16\\x7fhD\\xef\\xb1N\\xc9\\xadJf\\xd3V\\x1f\\xc7\\xb2\\x9cRk\\x88\\xcd?+1\\xa3\\xa9\\xed\\xb4\\xf5*&2\\xab\\xb3\\xd1\\xf2\\xa32.\\xa3\\xac\\x1b\\xa5.>\\xf2\\xb8\\x18\\x82YmXz\\xd5\\xe5G\\x04\\xde\\xaeC\\x89\\x08\\xdc\\xb3\\xdd\\x02\\xc7C\\x03 \\x16\\xd9` \\xc4\\x8bp\\x11\\xe6\\x06p\\x0b\\x95\\xf6\\xb5B+\\x1d{\\x04\\x0d\\xdd\\xb9-\\xc0\\xa4V\\xce8v\\x8cJ\\x93~5\\xf5\\x90\\x05\\x8d\\xed\\xed\\x07\\xf7\\xb9\\x96\\xfe\\x01\\xff\\xf7a3\\xaa\\x1d\\x0f\\x8f\\xbd\\xfd\\x90G\\xb5{(\\xde\\xef\\xf0\\x7f\\xf9\\xf7\\x0f\\xf9\\xf7\\x0f\\xd9\\xf7;\\x94\\x1c\\xc1\\x7fG\\xfc\\xdf1\\xffw\\x8b\\xff\\xbb\\xcd\\xff\\xdd\\xe1\\xff\\xee\\xf2\\x7f\\xef\\xf3\\x7f\\x1f\\xf0\\x7fy{#\\xde\\xde\\x88\\xb77\\xe2\\xed\\x8dx{\\xa3me\\x94=\\xe6l;d-z\\xc1h\\xdc\t\\xe3\\x1dVA*\\xf1J~\\xcaC<vQ\\xa2\\\\)\t\\x08\\xfa\\x07\\xb7 \\x0f\\x11!\\x9a\\x13\\xac1C\\xf7\\x11\\xc6[\\xa9\\x82fT\\xb1E:\\x08Rn\\xb4\\x0fB\\xeb\\xbc}\\xae\\xd0r\\xe3\\xa4\\xbb)\\xfc|\\x91\\xb4\\xef1\\xf8Z1\\x01\\x8b\\n\\xb7\\x07\\xebu\\\"?\\x1f\\xe3\\xec$\\x14\\x9f\\x8cF\\xa3\\xed\\xd1h\\xe4\\x88\\xd8\\xf9\\x0ca\\xbc\\xf5\\xe33\\xae#)d\\x1d\\x89\\x0f\\x98\\xce\\x12fI@ \\xa5\\x93\\xd1\\xd9Yr\\xa5u\\x01_\\xb1\\xe8\\x96\\xb0\\x8f\\xd1\\x800\\xe4)\\x8b~\\xb9\\x0e\\xb6]\\xc0\\xc6\\x1e+w\\xe0\\xf1c@\\xf8)\\xe0?\\xc0hs\\xbc\\x0d\\xeb,ffo\\xc6\\\\\\x90\\xf0/\\xcf2l\\xdd\\x0e\\x87\\xf5\\x82\\x99.n\\xd0hsK\\x81\\xad4@\\x91\\xf9\\x17\\xc3A\\x81\\xc5\\xd6\\xf02\\xff\\x823\\xa5a-\\xbb5\\x81\\x07\\x05\\x9e\\x92\\x81I\\x0c\\x8f\\xa1|\\xe4\\x00\\xb7\\xe4\\xe2\\x91[\\x8bi\\xb9\\xbe~\\xec`\\x18\\x89\\xaf\\x98\\xac\\xa5Y\\xa1\\x06\\x9b\\xf2\\xd8`\\xad\\xe6\\xdf\\xcd\\xd2\\xab\\xaf\\x0f\\x8a\\xb36\\x1d\\xdb*\\xb2pi\\x99\\x14\\xe6mnZ\\xb5\\xa8\\x82\\x15\\xe4T\\xc8\\xd6\\xed\\x06\\xdc\\x0b+;\\x9aX\\x7f\\x9b\\xea\\xf0R\\xdb\\x0f\\xdb\\xef\\xe9\\xf6YS\\x0b\\xd6\\xc1g\\x119\\xbbbM\\x91l\\xeb\\xffOk\\x95\\xfc?\\xeb\\x8fm\\xbe(\\xaa\\xab\\xd6\\x95\\xbeh\\xd7\\x9a\\x0d\\xe0\\xbeA\\x16J(R\\xc9\\x02\\x1fw8\\x8cL\\x11\\xac\\xc9\\x9a?%\\xc76\\xf3\\xce\\xfb\\xed\\xd7\\xff\\xe3\\xdf\\xfe\\x0b\\x8bw\\xca\\x7fb\\x99\\xb2\\x8dk\\xcd-N\\xd7&a\\xee\\xcc%*\\xf9\\xe6\\x18\\x8e\\xb7\\xc3(\\x03\\xde\\xf8_~\tv2\\x8di\\xed\\x1c]\\xb9\\x05\\xedKQ~)\\x1f\\xe4\\x96\\xe5Kk\\x01\\xe6\\xb0\\x073\\x8f\\xc2j\\x1f\\x83\\x06\\x128\\xca\\xc1\\x94Q\\x158\\x02\\xce\\xbc\\xdb\\x84\\xab\\x15Yv\\xb5\\xdc\\x05\\x0b\\xf3\\xb2\\x8f5\\x15\\\"Q\\xa1Ex\\xa8\\x05\\x0bj-\\xac<R\\xb9\\xb6\\xf5c\\xf1c\\xfc\\xe3\\xf9\\x8f\\xf3\\x1f3\\xf8\\xb7\\x7f\\xfd\\xaf\\xff\\xd7\\xaf\\xff\\xf5_\\xff\\xcf\\xdf~\\xfd\\xf5\\xb7_\\xff\\xf3o\\xbf\\xfe\\x0f\\xbf\\xfd\\xfa?\\xfe\\xf6\\xeb\\xff\\xf4\\xdb\\xaf\\xff\\xe5\\xb7_\\xff\\xe7\\xdf~\\xfd_~\\xfb\\xf5\\x7f\\xfd\\xed\\xd7\\xff\\xed\\xb7_\\xff\\xf7\\xdf~\\xfd\\x7f~\\xfb\\xcf\\xff\\xf7\\xff\\xfb\\xeb\\xaf?\\x96\\xe3\\xcd\\xf1\\x03\\xfc\\xff\\xc3\\x1f\\xcb9\\x99\\xcf\\xad!g\\xec\\x864\\xe5x{\\x07\\xa3\\xb8\\xb5\\xd8\\x19=F\\x9e\\x89+\\xfaI\\xef%-T\\xc7\\xbd\\xb6\\xcd\\x83\\x90\\xc8\\x0d'\\xa8\\x0b(6\\xea\\x84\\x97\\xa0\\xb8\\xc5\\xb2<\\x12\\x07\\x98\\x7fE\\xc5\\xe0Q \\xa7\\x9fn9\\xb6%\\xeaY\\x06\\x9aF\\xd4\\xe9[)q}\\x85b\\xa9\\\\\\x90\\xdbW\\x9e\\xdbXq\\x9f\\xc1c\\x18\\xc1\\xbe\\x94\\x8ext\\\\\\x1b0+[\\xc9X\\xc6\\x1fsL\\xb3\\xb2\\xa5'\\xe5\\xb9oD\\xe4w;A\\x93\\xe7\\xcc\\x80`\\xf8\\xa95\\xf0\\n>\\x1d77\\x85G?\\xcc\\x125%\\xdcs\\xa7\\x84\\x0d\\xa8/\\xed\\x92\\xd9T\\xe4\\xbf\\x0b<\\xdd\\x1f+y\\x7f\\x194\\xc2x\\x16\\x95\\x01\\x0bv\\xa1\\x03\\x0dQ\\xa7\\x0f4*\\xb4\\xff\\x9f\\x12\t8\\xea\\x1e<L\\xed\\xf4\\x1a#D\\xae\\x02\\x0e\\xb7;\\x8c\\x8de\\x1a\\x8c;2\\x92\\x12\\xbf\\x98\\xe0\\x0d\\xbe\\xeb\\xac\\xd8e\\xdf~\\x8dFZ\\xda\\xe2\\xa6\\xd2\\xe2:p?e\\x82\\x15\\xe0\\x8d\\x02\\x17E&\\xfa\\x90\\xc7Cm\\x89L\\xd1\\xe3\\x94\\x87\\xe9\\x0fao\\x0fFp\\x0f6\\x15\\x0c\\x85\\xf54)\\xe3\\xa2v\\xdc\\x8a\\xc9\\x99_\\x84\\xe7\\xa4\\xcdI\\xf0\\xa8}!<n\\x9bx\\xf1\\xc7\\x0e\\xe1\\xf1\\xe3\\xc7{0r\\xb8\\xa7\\xeb\\xfa\\x1e\\x9a$\\xd1{\\x939\\xbf\\xc6\\xec\\xd5\\xa3\\xd6F}B\\x99\\xdc\\xca\\x18\\xba\\xce\\x91\\xd5w\\x10\\xeb\\x9a\\xa6\\xa3X\\xd7\\xea;\\x8c*<\\xdd\\xe8C\\xb5\\x07<\\xabZ\\x85-W9\\xa5n\\x15{T\\x97:\\\"\\xbb\\x01v\\xcdp\\xe3j\\xec\\x1aSv\\x89\\xae\\x9d0t\\xa1\\xd85\\xbb\\x15\\x82\\xd0\\xf1([\\x94E\\xf1\\xe3\\xd9\\\"\\xc9VbR\\x8cd!\\xdf\\x0d\\x8cto\\xc5\\xfe\\x92X\\x0d3\\x0d\\xb8\\xeb\\xf1\\x9f\\x86g+\\x0d~\\xc8\\xd8Y\\x9b\\x16\\xfe\\xf71\\x87\\x1e\\x85\\xf1\\xfb\\xbb\\x1f<o\\xf5\\xe3\\x0f?\\x89\\x82\\xbb\\x1f\\xfd\\xa7\\x18\\xf9<\\xbc$w?\\xf4\\xa2\\xf8$cO\\xe2b\\x96D\\x1f\\xe3\\xc8\\xd2\\xa6\\xe9\\xf0E\\xf3\\x1f\\xf3\\xd8\\xd2\\xbe\\xf2\\xf0g\\xf2\\xf1f\\xc1[\\xff\\x98\\x93\\x08\\x0b?\\ng\\xf9Js\\x182\\x85\\xf0S\\x00\\xd2\\xca\\xc8g\\xd0\\xea#\\xda_dd\\xfe\\x91\\x97>_\\xfaQ\\xb4\\xd2\\xf0\\x87\\x8c^\\xb4\\xfa\\xd1\\x17\\x9f\\xbe\\x7f\\xbf\\x1a\\xf0\\x0f\\x1a\\xbfh\\xf6\\xe3O\\xa0<\\xbd\\xfb\\xd1\\x97\\x9f\\x04\\xfb\\xe7e\\xfa\\x11\\x86\\x9e\\xde\\xd1\\xd0c{4\\xa6\\xe4\\xf2\\xd2/f\\x0b\\xcb\\x85\\x91\\xb9\\xba4\\x98iUO)\\xfeT\\xaf\\x89x\\x04g@LJ\\xc6D\\x96=\\xa0\\xe8\\xa1Jg\\x16O\\x0b}f\\x0c\\xc9\\xbc>\\x81}a\\x87\\xc7\\xbc\\xa8&h\\x02\\xc7\\xa5\\xbc\\xb13-\\x8e\\x85 ?\\xeb\\xc4\\x05\\x81\\xf8\\xf8\\x86\\xab\\xc9E\\x8d\\x96\\x0b\\xe3\\x1b\\xacg\\xa6\\xf0\\xd0\\x80AK\\x1a\\xf6-\\xa9\\xdfX\\xd2L^\\xd2l\\xe0\\x92J\\xfcD\\x86q\\xcd\\x12\\\\U\\xf6\\x86\\xafe\\xe8\\xb08Mw\\xb7\\xa29\\xf1\\xb3\\x7f\\x07\\xd0\\xbb[\\xce4\\n\\x0b%xv\\x0c,\\xf5\\xeb$4\\x1c\\xb1=\\xdei\\xfb\\x9a\\x80\\x10\\x85t_3\\xbd\\x1b*\\xd1\\xbaB\\x12k\\x86\\xc6+\\x96\\x7fz:\\xb3x\\xde\\x89{\\xf6\\xa9\\xf3\\xc7{\\x0ee\\x8e?|\\x80m\\xd4y\\x14$/\\xea\\xf2\\xfd\\x89s\\xcf\\x85\\x8d\\x91\\x08\\xebD\\xeb\\x8d\\xb1\\x9e\\x7f*\\xd7\\xf2\\xb1!\\xa9\\x12k\\xcc\\xab\\xebx\\xfb\\x0e\\xfd\\xafQI.wl\\xa9\\x8cr\\xef\\xb4\\xbc*\\xf6\\xf6\\xabB\\x15\\xc8\\x9ds\\xdfgI\\xa0z\\xcfv\\xf6\\xf7\\xefy\\xe4\\x92\\xccl\\xcb\\xa2sT@\\xcd\\x10=\tH\\xb6jBw\\xa9\\x8e\\x1b\\x00M\\x9f\\x9c=\\xe1\\x85\\xc4\\xd3\\xf0T\\x96p\\xedT*\\xf2\\xb7k\\x89\\x9c~\\xad\\x0e\\xa2\\x87\\xa3S\\x7fv\\xce,\\xfds\\x17\\\"\\x0cS=g\\xe1\\xf4MN\\xea\\x01\\x0b\\xf5\\x19\\x9e\\xc5IF\\x9e\\xfa\\x18\\xdb\\xcf\\n-\\x98\\xd0k\\x0f\\xd6i\\xd9\\xb2\\x8c\\x8a0\\nc,Z6\\x8a\\xca8DE\\xfc>Xe\\xa3 /\\xc2\\xd9\\xfb+\\xfa\\xfe\\x8a\\xbf\\xd7\\x0faa\\xf6\\x91?o\\xeef\\x01\\xfb\\xb0=~\\xb8\\xfdp\\xf7\\xfe\\xf8\\xe1\\x0e\\x9a\\xfb?~\\xfc\\xd8\\xd4\\x00F\\x9f\\xad\\x0f<\\xf1r\\x0c\\x8e\\xeeB\\x00\\xeb`\\x9d\\xe9\\xec\\x07P\\xfa\\x87A\\x1b\\xd09Bj\\x81)9\\x97\\xbc\\x1d\\xda\\xc8\\x17\\xf6\\xfe\\xda\\x8f?\\xe6\\x8e\\xe5B\\xa0\\xd2PW\\x0f\\xfa\\xbb/\\x19,\\xf2\\xf8\\x9ek\\xb6\\x1da\\xe41\\x145\\xc3:\\xe4\\xd3\\xcd\\xe3\\n\\xc2\\x1f\\x03\\xc6W\\xb3S\\x1e\\xfc\\x84\\xcb\\x94\\x16\\xae\\xf8\\xc0q\\\\XC\\xdb\\xfe\\x86\\xc4\\x0b\\x93\\x86l\\x1eW\\x1a\\xb9\\xcc5\\x93?\\x8d\\x07\\xa7>\\xc7\\xb8\\x040\\x87\\xaf\\xba\\x92\\xef\\x0d\\x18?\\x82\\xf9\\xfa\\xba#\\xefL-b\\x9b\\xa3\\xa1\\xaf\\x8d?\\xf6\\x94\\x12\\xf1\\xc6s\\xed\\xb8\\xdd\\xc1\\xf3\\xe5\\xf8\\xaa\\x0e\\xc1\\x88v\\x01\\xccQ(\\xa5\\x1f\\xb0\\x95\\x189<\\xbb\\x84\\xb4l,\\xc6|\\xe4BZ\\xb5\\xba\\x07\\xe7\\x8e\\xf3\\xc8\\x81\\xa5\\x17\\xf9y\\xf1\\x1c\\xdbF-\\x07\\xef\\xe7\\xcb/\\xe5\\xa2v$p\\xf1\\xf0\\xc3\\xb8`\\x8a\\x9a:\\x18\\xf8\\xda\\x8c5@Q&\\xe6\\xf0\\xf9\\xf0\\x01\\xf8\\x8e\\xb1\\x8c>\\xed\\xed\\xa3\\x83\\xae\\x07\\x07\\xe7\\xb0\\x0f)/\\xdbt\\xe1\\x1c?\\xe9\\x8c\\xa0e\\xb9\\xcc<\\x1a\\xacM\\x81\\x1a\\x85Ls\\xd3\\x91V\\xcc\\x1e\\x84\\xd9\\x9a\\x97f\\x1b]\\xc1>L\\x8fa\\\"pP%\\x9cms\\x83j1\\xb7D#h\\x88\\xae\\x1b\\x90U7\\\"\\x04$\\xb2*\\xae\\xc9\\xaa\\xacCV\\xc5*\\xb2*[\\x95\\x0e0\\xcb\\xebS;\\xb6\\xb7Gm\\xb1s\\\"J\\xc6\\xed\\x92P\\x94\\xec\\xb4K|^2\\xba\\xff\\xa0]T\\xf2\\xa2\\x9d\\xad\\xcdvQ\\xce\\x8b\\xb6:=E\\xbc\\xe4\\xfex\\xbb]4\\xeb\\x0d\\xdcW\\xa5`\\\"\\xde\\xc9\t\\xc9_&A\\x19\\x11]\\x0eQ\\x90d\\xfe\\xbf(\\\\A0\\xee\\x1e\\xcb\\x89\\xa7\\x0beV\\xe7{\\xe31\\x18\\xda)\\x86\\xbc\\x85\\x9f\\xbf\\xbe\\x88E\\xfa\\xd6*\\x0c]\\xccU6\\xcc\\xd8\\x82t\\x13\\xbeA\\x0dB\\x98\\x98\\xce/\\xa3\\x82\\x87fj\\x82\\x06\\xdd\\x94\\xed\\xceR\\xcd\\xb9\\xf2\\xc5y\\xf4\\x87\\xea\\xbdX:H\\xb5,jg\\xed0\\xd3\\xf3D\\xb1\\xd2|H\\x93\\xb6\\x89\\xc5\\x1f\\xba\\xbf\\xe8\\xfa\\xf0`d\\x8d\\xba\\x14IZg\\xc1xwgws\\x14\\xb4\\x14m\\xf4\\xda\\xb5\\xb6\\xbc\\xd1\\x03o\\xdc*\\xa1\\xf7\\xa9u\\xea\\xc7?%\\xad\\x823Zp\\xe8\\x17.\\x8cw\\xe0Iy\\x06\\xe3\\xcd\\xd1\\x03\\xd8\\xbc?\\xd9\\x19O\\xc6\\xbb\\xf0\\xa7\\x97G\\xd2A\\x18\\xa6+\\xcc\\xc5\\xd2{\\xe7$\\xcb\\xc3$\\xce\\xf1\\xaa\\xec\\xbc\\xfc\\xf0\\x01~\\xb9v\\x15%^~\\xe1\\x9f\\x9d\\x91\\xec]\\xa8t^\\xe2\\xd5&\\xa0\\x08t{\\x16\\x16o\\xc9y\\xc8\\xca\\x17\\xca\\xf2gaV\\\\M \\xe8\\x16\\x9e\\x96a\\x14\\x1c\\x85K\\x92\\x17\\xfe2\\x9d\\xc0Y\\xb7\\xca\\xd2\\x9f-\\xc2\\x98L\\xda1\\x14\\xba\\x1c@\\xa1u\\xbc\\n\\x92\\xe5I\\x18\\xb0<Sj\\xbc\\x19$\\xcbWI@LU\\xf2\\x94\\xcc&z#\\xaa,\\x9a(\\xd5\\xb0\\xbc075\\x1d\\xf9WIYL\\xc0\\xfa\\xda\\xcf\\xc9\\x0b\\xfcC\\xd3R\\x90\\xcc\\x0e.S?f\\xcbmEa\\xae\\xab\\xb9\\xf4/\\x9f\\xb1\\xd4\\xa3$8\\xf2\\xcf\\x8c\\xfd\\xcf\\xc3\\xa8 \\x99\\xa9\\x06\\x9a\\x93\\xfaE\\x92\\xbd\\xc3y.\\x8a\\\"\\xcd'\\xf7\\xee%1\\xa5x\\x05\\xf4xar\\xaf\\xaa\\xa8\\x19\\x16\\xf3]\\xca\\xf5\\x0b9+\\xf3\\\"Y\\xea\\xcby>\\xd5\\xd7)a\\xa9\\xab\\x9e\\x07\\xdd\\xa4:\\xad\\xba<\\xeb\\xd1\\xb3R\\x97\\xec\\xaa\\xaaOH\\xfa\\\"\\x8c\\xdf\\x87\\xf1\\x99\\xbeR\\xc6Z{\\x1e\\x17$\\x9b\\x91\\xb4H\\xb2>\\x8dm\\xfd%\\xc3^\\xca\\n\\x9a\\xe9f$O\\x938'\\x9f\\xa8\\xbb|\\x91\\\\\\xa0O7\t\\xf8\\xaa\\xa9\\x1d\\xcc\\xa0\\xc6\\xad/\\x93\\x80DoI\\x1c\\x90\\x0c\\xd7\\xcd\\\"\\x97\\xfe2\\x8d\\x88\\x0e\\x82\\xa5\\xaf\\x10\\x94\\x83g$-\\x16\\x13\\xd0\\xeeI]?\\x1f\\xf2\\x01\\x9d\\xc2\\xc1eA\\xf0\\x8c\\xe4\\xfa}\\xa4\\xf5\\x9e&\\xcbe\\x12\\x0f\\xaa]\\xa6\\x14\\x0f\\x93\\xe0\\xb0<]\\x86\\x05\\x8b6\\x91O`j\\x9d\\x11T\\xbb\\xa4%\\xfb'\\xc9\\xf1_\\x96E\\x97\\xfeJR\\xbaU9\\xea\\x07\\x88\\x1f`%.\\xe3\\xb4\\x8a\\xcc\\x9f\\x11K\\xc3x\\xa6\\x19\\xc9IA\\xfb\\x88\\x04\\xc2\\xd6\\xd5\\xc4\\x0c]\\xb4\\xa6\\xa6B\\x18\\x87E\\xe8G\\x87tc\\xf5Gk\\x1e\\x1b\\x8ee\\xb2L\\x93\\x98\\xf2-\\x93\\xb6\\xf3\\x14\\xa8\\xc1\\x89\\xf2\\xff\\x94L\\x9f{\\xa9\\x9f\\xe5\\xe4\\x10\\xe5f\\x9d4%\\xc0\t&\\xe2q\\x14\\xdc\\xc4\\xeb<\\x19\\xb1\\xa6\\x94b\\xfd\\x94w\\xe3\\x8b5rlz\\xc7\\x15H{\\xc7\\x8a\\xde\\xae\\xb4\\xd7D~\\x95\\x17d\\xa9\\\"#\\xc4Sa\\xaf\\xd4\\xe3?W9\\\\\\xd56\\xa5\\x1e\\xdf[\\x0d\\xac\\xb1mj\\xcfJ;*q}\\x98\\xf9UQ+\\xf5\\xd8/u\\xdf\\xe2\\x11WB\\xea\\xb1_\\xda\\xca\\x9a\\xb9B}c\\x1a\\xfbaut\\x17\\xa7x\\xf0vM\\xbd2\\x8b\\xf4\\xe3\\xd0\\xec\\x04\\xa4\\x9e\\x0c\\xfd]\\x02Y\\x11\\x9b\\xa0\\xef\\x93\\x8a\\x9e>\\xa5\\xf4t\\xabv\\xeb\\xef\\x16im\\x9f\\\"I-\\xf1\\x90\\xcd\\xea\\xd3S\\x94\\np\\xb8\\xbf\\xf2r\\xfe\\xb2\\x0b\\xf8'\\\\\\xdcR\\n\\x10\\xb1\\xafZ\\xc4\\xf9\\x89\\x97\\x91\\xb30/HfOS\\x8fC_\\x8f\\x84\\x83_\\x1a\\xeaM\\xa3\\x08\\\"\\xf5\\xe6\\x9a\\x88\\xcb2\\x8a\\xa0\\xe7C\\xfce\\x04\\xf2\\x94\\xcd\\xb0\\xbb+\\x8d7\\xd7m\\xbe\\x83.\\xc0\\x05\\xec\\xc1\\x89wF\\x8aC<\\xb7*\\xccr\\xd0\\xcb\\x8a\\x81D<^x\\x14\\x1aY\\xe6\\xc6$\\xcbi\\xd3/\\x92\\x99\\x1f=\\xc5\\xa3\\x0e\\xfb=\\x150\\xac\\x86\\x0e\\x7f\\x02g4\\xd5\\xa8*\\xe5\\xee\\xfb\\xf4OUh\\x1e\\xe0\\x80\\xc9r\\x8f\\x94\\x02\\x1b\\xc2\\x1e\\xcc\\x1c\\x17N\\xbc\\x9c\\x14l\\x0c\\xb9]:.\\\\\\x08\\xec\\xf4\\x04g\\x9e{Q\\xe2\\x07$\\xc0<&u\\xf6t\\xda\\xd4ZL\\x0f\\x15\\xfdi%\\xc8\\x13Z,E\\xc1\\xa6\\x0ba=\\xca\\x12\\xe7\\xcdx\\xc1M\\x17\\x92N\\x89\\x94\\xf0\\x8d\\xad\\x91\\xe8\\xb8L\\x03\\xbf \\xef\\xb2\\xc8\\xb6,\\x1cX\\xb7\\xf0E\\xe2\\x07a|F\\xa1\\xbf\\xccm+/g\\x18\\xf8ES\\xfb0%3\\x9b\\x0e\\\"\\xeb\\x0c\\x02\\x93\\xa54\\xbf\t\\x92\\x8b\\x98\\xce\\x1d0\\xa8\\x07\\x9f\\xa9v\\x88X\\xa3\\xd3\\xafh\\x83\\x17\\xa3\\x07\\x8e\\xd8\\x00\\x07.\\xbc\\x0cI\\x9fzS\\\\\\xb0\\x9e\\xa4\\xa9N^ZE*\\xc1\\xfa'\\xa164?p\\xc0\\xcc\\xe5\\xc8\\x1a\\x7f/Iv%\\xe0\\xafnB/J\\xad\\x86\\x97\\x8ba\\xa9\\xd1$\\x8f&B\\x81\\x03S\\xe1\\xf0\\x961\\x19@\\xe3%\\x82\\xdd\\x87\\x0f\\xc0\\xd3x\\x88\\xac\\x1d\\x87\\xef\\xc34%\\x01d5\\x1d\\x18'\\xf0/\\xac\\x95\\x7f\\x81$\\xc3\\xdf\\xf4\\xe3\\x7f\\x81\\x0b?G\\xb4\\x1f\\xceC\\x12\\xe8\\xd6\\x89\\xe3\\xa1\\x8b.b\\xe8\\x9e\\xafK\\x8a\t9\\xc83\\x99\\\"\\xfb\\xfd.\\x8b\\x94\\xb26\\x94c66\\xb9\\xf3\\x82\\x1emv\\xa2\\xbe\\xbez\\xc7\\xc1f\\xcdX\\xe3\\xc3\\x07c\\x0b\\x8a\\xeb\\x1b/\\xb5\\xcb\\xeet(\\xb0\\xbd%\\xcb\\xa4 \\xec{5\\x05\\xaebCR\\xaf\\xfbV\\xf5\\xa5\\x82\\xa5\\xa0\\x9fv^7q\\xb0\\x0b\\x07\\x98\\x89\\xc16\\xce\\xf3\\x92Vs\\xe1\\x82\\x1e\\xc6\\x03\\xc9\\x0d\\xe8Z\\xf2(\\x15\\xe4O\\x87\\x12\\xf3\\xd30\\x9f@E\\xeej>f\\x17\\x19\\xac\\x1c\\x98p\\xd4\\xcem\\x97`\\x10\\xaa\\xef\\x0e_\\xbfb\\n\\x0c\\xf6SE\\x1e\\xe6(\\xf7\\x0c\\xe7W\\x13\\xa0u\\xbc\\xea\\xef\\xe6\\x12\\xadl\\xe5\\xcd!2\\xa9\\x1b\\xe4\\xb2\\xfbD\\xb2\\xa4\\x97\\x16q\\xc8\\x84c{g\\xf4\\xa0\\xe3\\xc0;\\xdaq<.\\xf6{O\\xae\\xf2!\\x0d\\xd5+\\xd7\\xb1\\x82f\\xda\\xd6\\x87\\xbb\\xd2\\x84c{\\xbcs\\xdf\\xe1\\xe96\\x0dTF\\xdb\\xcc\\xc4\\xec\\xb6\\xd3\\xcc\\xce\\x0d\\xb0\\xbaa\\x89\\xbc\\x0c\\xcd\\x8e*\\xe1`l\\xeft\\x02\\xc3\\xd6\\xc2\\xc5I\\x7f\\x8a\\xcd\\xce\\x0ep\\x0fnt\\xf8n\\xed\\xc3\\xfdm\\xc7\\x9b\\xcb1Q\\x86\\xb48p\\x12\\xedm\\xba\\xdd$v\\xc6\\xcc\\x1f|t\\x9f\\xfb\\x91\\x8f\\xb9_\\xf9\\xf8\\xbe\\x12\\xbc\\x0e\\xaf\\x96\\xa7I4\\xa4\\xed^+}u:\\xdeN(\\x0c\\x1e\\xa5\\xb7\\x9d\\xcb\\x92G\\xceho)\\x0f\\xd2\\xbb\\xd3\\x0e\\xc6\\xcbg0\\xdev\\xbc?\\x1f\\xfc\\xadY\\xc6R\\x87\\xee\\xb4\\xc7#2\\x87\\xb6\\x07\\xc4\\x04\\xda\\x0f\\xdba\\x85R\\xee\\x1d\\xd26N\\xe0\\xa9C\\xdb>\t\\x8b\\nR\\x9a\\xef\\xcf\\xf9{u\\xe6\\xd0\\x9dq\\xbb\\xbe\\xc8\\x1c\\xda\\x9e0\\xcb\\x1a\\xba\\xd5\\x1e\\x0dK\\x19:n\\xd7f\\x19C;q\\x1f.\\xf8j\\xb6\\xe7z\\xc0\\x96\\xa0=\\xc6K^\\xbd=\\xd7C>\\xf6v\\xfd\\xa7l0\\x9d`)\\xef\\xd9\\x96\\xb7_?\\x11\\x08\\xa9\\xf9\\xfa5\\xec\\xc1\\xd3v\\x92\\xd07\\xb0\\x07\\xef\\xdb/\\x8f0\\xefg\\xeb\\xe5K\\xbc \\x18\\\\7K\\x9eWWG\\xf3\\xfdO\\xb0\\x07\\xcf)\\xb9\\xf0\\xbcF\\xe9\\xcd\\x1a\\xf4\\x82\tl\\xebd\\x11\\x06\\x01\\x89\\xdb*\\xff\\xb7\\xac\\xb4H\\xded\\xe12d\\xfe6\\xcd\\x1a\\xcfP\\x0f\\xe4\\xa5\\x9c\\xa1|\\x9e\\x1f\\xc4\\xe5\\x92\\x85DnV|AoH\\xdb\\xcaq\\xf4\\x1b\\x8c\\x15\\xcc\\xae\\xda\\xcd\\xbd\\x93ku\\x92\\x19\\xff\\x9d\\x95&\\xe9\\x86\\xa6\\xc27\\xb0\\xd7\\xd1&5k\\xfc\\xac\\x0b\\x08\\xf3\\xb2Y\\xefk\\\\\\xd1\\xbf\\xb0\\xc6\\x9aE\\xdf\\xc3\\x1e\\xac}\\x8d\\x99!\\xbe\\x962\\xbe\\xb4\\xfe\\xf6\\xe6a\\x1c<]\\x84QK\\xd1\\xf0-\\xf0\\x08\\xbe\\x91\\xd9\\xc9\\x99\\xdf9\\xf7am\\x0f.\\xed7\\xc8\\x9b\\xa1]\\xaf\\x9a@\\x1f\\x16c\\x0b\\xea\\x86\\xdf\\xc8\\xb6\\xc2f\\xa9\\x08O\\xb2|_[\\xe9\\xda\\xf1\\xbaA\\x8f@)\\x06\\xb9v\\xdau\\xaf\\x1d9\\x9c\\x8d\\xc6v\\x0d$\\x84\\xfc\\xda\\xfeFmN\\x93I\\xb2\\x8ao\\xa6\\xc5\\xb1\\x0bo\\xaa\\xf6x@H\\x82\\xdc\\xe67\\xf4\\xe7\\x1bl\\xa6\\x13\\x00\\xff\\x1a&\\xf0\\xa6\\xb9e?\\xf4\\xf2\\xed\\x82g\\x7f\\xc7\\xbc\\xc6/\\xed\\x975 \\x98t\\x94\\x981\\xbd\\xab\\x9elv\\xff\\x1d\\xec\\xc1\\xcf\\xc8\\x143\\xa8o@\\xad'n\\xee\\xc6\\\"\\x1a\\x00J\\xd1\\x08\\xe9,\\xc0\\xa0\\x96\\x1aQ\\xf6_\\x9af\\xf0\\xb7\\x81\\xb1\\x01\\xaa\\x86\\xf7\\xc4&\\xfd\\xcd\\xfe{\\xb5\\x81W,\\x8b\\x0b\\xec\\xc1\\x05\\xcfXG\\xdf\\xd1\\x92\\xc4~\\x87F\\x12\\xfb\\x18_\\xa7B@\\x98q\\x95\\xf6\\xf7\\x8a\\xe5\\x15\\x9e\\xbe:\\x9e\\x16\\xcc\\xccE\\xfc\\xde\\xe39\\x88p\\xd3b\\xddA\\xa8\\x9b\\xa4\\\\\\xc4&&.RA6L\\xea\\x0e?|`\\xd0\\xf7\\xca\\x85\\x03{\\x84\\xd9\\xd4)\\x99R\\xf7K\\x87\\xffm\\xb5\\x1a\\xf4\\xdb\\x1aZM\\x8b\\xf9\\xe7!\\xc6!WJ\\xd7\\xb7Z\\xf3\\xce\\x82\\x7f,y\\xa2\\xcf\\x82\\x0e-a\\xa9\\xadX\\x94]&Aa~\\x94\\xc9#\\x07\\xfe\\x86\\xfaw\\x0c\\x17\\x98`\\x18\\x98\\xc2\\xa8}7\\xa6\\xdc\\xf8\\xd3\\xe0\\xe3\\xf4\\xaca\\xbc\\x82\\x1bOX\\xaaBm\\xcfkX\\xbb\\x06 \\x04\\x0d\\x96\\xdfs-\\xa1\\xc0D\\x98\\x05\\x97\\xbdf\\x17\\x88\\xb2k_|\\xfe\\xe7;\\xf1[\\x940\\xe8\\xa1\\xbf\\xe9\\xe6\\x91c,l\\xdb\\xd14\\xa7\\xf8\\xc5\\x90=bv\\x17t\\xfd\\xbbp-\\xf0T5\\xa4\\x82\\x0f\\xe9\\xef,\\x80\\xbe^t\\x18#\\x864\\x18\\x1c\\x8a\\x85\\x8a\\xbb\\x8dw\\x8e\\n\\xe5C\\x1b'\\x8a\\xc3m74\\xd8\\xb5i9\\xfe\\xb9w\\xc7\\xdb\\xd1\\x8b\\x8e\\xec\\x13\\x16\\xce\\\"\\xe3\\xd1hB\\x1e\\x8d\\xa6\\x99\\xdb\\x97\\x8d\\x9e\\x12[,\\xc5/\\xee\\x0c\\xc5l\\xaf\\xaa_hg\\x90\\xf1\\xb8Bz\\xb8iK\\x17\\x1a\\x7f\\xfeu\\xe5\\xf1s\\x14\\xc6\\xc6\\x7f\\x84\\x91\\xe4\\xfe\\x0e\\x13\\xe0\\x93\\n\\xf9\\xa4D$\\xa6zR\\xfe#G\\xec\t\\x1e6_\\xcc*\\xe6\\x10\\xfc\\x8d\\xd8\\xad\\x90M\\xe9\\xdd\\xb40\\x9c\\xc3\\xb09\\xab\\xba\\xde\\xcf\\xb8\\xb5\\xa5m\\xbf4\\x056\\xc4 P\\xf48\\xc9\\x88\\xbe\\x9b\\x10\\xc3b$i\\x1d\\xeeIJB\\xdf\\xc9\\x8bq\\xce3\\xaa\\xa5*\\xaf\\xdf\\xcd\\x86\\xd7\\xef\\xa6\\xe4\\x9b\\xefv\\xa6\\xd8\\x88\\x08\\xa9\\xbcN\\x80gi\\xab\\xb1\\x01Oi\\xf9wv\\xa14\\x0f8\\xfbk\\xfa\\xeaX\\xe0\\x0b\\xbb>\\xf2\\xe2\\x9e\\xf8\\xb66\\xa4C\\xa4\\xaeJwt\\xad\\x94\\xf2!\\xc9\\xf7=\\xfd\\xdf\\xb7t\\x0f;\\xb9\\x00aP$\\xd5\\x9cRy-b\\xc1q\\xe1\\x87f\\xba79\\xe3\\xa0U$\\x95\\x8fw\\x9f\\x10\\xa4\\xc0\\x0c}\\xef\\xff 7\\xfd\\x14\\x93\\xd2}\\xe1R\\x16\\x05\\xf6\\xe0o\\x18An\\xe7\\xa1\\x83\\x7f\\x1d\\xe2\\xff\\xff\\x19\\xb9\\xf2\\xf1\\x0e{\\xf7'\\xc6\\xa3\\xef\\xb2\\xbf\\xfe\\xca\\xf3\\x1b\\xafQ~s\\x1b\\x97\\xb5\\xa4\\xf3\\xb7T\\x0c\\x83\\xe5\\xd2\\xaf\\x11\\xc1,\\xf0\\xeb^I\\xd5\\x0fv\\xd0\\x90\\xc8\\xd0\\x11\\xfb\\xb6\\x8f\\xa9\\xee|Lu\\xe7\\xb3li?\\xb7\\xd7\\x9b\\x81\\xecD\\xa2[dqYu\\x9c\\xffB\\xd9\\x85\\x85\\x9f?\\xe7\\x07\\xc0\\x0d\\xf3\\xa7I<\\xf3\\x8b\\xc34#~\\x80l\\x8e\\xa0\\xc0\\\\t\\x16r\\xb9\\xf5\\xae\\xcb\\\\3\\\\\\x1e\\xa0\\xd7E{OW\\xe2\\xa4\\\\\\xb13G\\xfe\\x99[\\xc6\\xf9,Iis\\xb90\\x0d\\xb5\\\\\\x8b^\\x04\\x84\\xe1\\x88\\xbf\\xd4\\x87\\x84\\x90G\\x0e\\x04\\xf6_\\xa6\\x844\\xd3\\x9a\\xd7H\\x88`>\\xaa\\xc0\\xcb\\x8b$\\xa3\\x97K\\xcc[)H\\xddLL\\x9b9\\xb7\\x0b2\\x8d[\\xed\\xd0\\x15<l\\xac\\x1d?\\xe1\\xdd\\x08u\\xfd\\xf6\\x1f\\x95\\xec\\xec\\x05\\xbd\\xd5\\xd6\\xf7\\xd0\\xde|\\x1f^\\xd0S5a\\xff\\xecu\\x93\\xab\\xb7\\x10\\xf0{r\\xf5M\\x7fWh\\x81\\xff\\x1dZ\\xe0\\x1bs\\xf6\\xf8\\xc0h\\xe0\\x0en\\x82f\\xf0\\xb40\\x86\\x17j\\x0d\\x05\\xed\\xe9\\x05\\xd2q{r\\xea\\x0e#\\x19_\\xe6\\xe4\\x90\\x14\\xa8\\xc66\\xf2i\\xdf\\xab\\xc2\\x03wZ\\n\\x97iD\\x86\\xb4\\xd4L6{\\xdd9*\\xad\\x8df\\x0co7\\xc6\\x11\\x06Q\\x1f\\x90\\xac\\xb4k\\x95\\\\\\xc0>\\\\\\xda\\x98\\x96\\xf2\\xcf\\xf6%\\xa3u\\x8c\\x9b\\x1d\\x90y\\x18\\x13\\xa1\\xa2\\x9e\\xc0\\xdf\\x0c\\xc5!\\xc9'\\xf0\\xe7f\\x853RH*\\xeeg$\\x9fe!S+|a\\xaa\\xf8\\xca_\\xd2\\xc6\\xfe\\xd9T\\x87\\x1d\\x83|\\x02\\x7fm\\xac#\\x8aX\\x9a\\x8bi\\xaf\\xe1\\x15k`\\xf2\\xc5E\\xf8\\xb2\\x1d\\xf3X0j\\xd3\\xb8\\x8c\\xa2c\\x8ce\\xf6\\x93-\\xe8N\\xeb\\x97k\\xfe\\xa6\\xbb\\xf6~\\xc7\\xb0\\xb4\\xf5\t\\xdb\\xdc\\x16\\xc6t\\\\\\xb0\\xbe;|\\xfdJ\\x11\\x04\\xa4\\xd22\\xac@\\xfcp\\x92\\x8d\\x1c3\\x8eb\\xf4H\\x15\\x83\\x87\\xb2\\x14\\x9c&\\xab\\xaf\\xfb\\xa4\\x89\\x85\\xc4\\xc33ys\\x82ht\\xec\\x82}jw\\x92\\xbaq\\x12\\xff;\\xd9\\xff\\xe6\\x8cW\\xb3\\x8b!\\xe4\\xb8\\xe8K)\\x1dba\\xde\\x90\\xd2\\xec\\x18\\xd4;.\\xed\\xb7p4h\\x008\\x90\\xd0\\xb1\\xd3i\\xb8\\xf0\\x13\\xd7\\xaa<\\xef\\n\\x1f\\x1a`%\t\\x11\\xa6o\\x91\\x18\\x8f\\xed\\x9dMG\\x16.\\xb8\\xf0\\xb6Q\\x8f%\\xd9z=\\xc7|\\xa1/k\\xc4\\xcd\\xfe\\xf6\\x8b\\x85\\x0b\\x16\\xfd\\xc7\\xe2\\xf7\\xec\\x9c\\xab\\x99j\\x18X\\xdb\\x1c\\xa4\\x02\\xa8\\xa5\\xe3\\x1d)\\xa7\\x88\\n\\xa5NbG\t\\x85U\\xf5R\\x82\\x1f\\xcc\\x94i\\xdfb\\x16\\x97\\xb7k8\\xa3\\xc8 Y\\x81\\xaa\\xefr\\x01<\\xc5G\\xb4\\xf7\\xd0\\x9b\\xb3\\xbc,\\x9b\\x8f\\xa0\\xac!5z\\xe4@^Y\\xa0S\\x82\\xbd\\x9cFH\\x94#9\\xc9@X}\\x80%\\x85\\xe1j+\\xda\\x11n\\x0boBJvu\\xd7\\xf4\\x97kO\\x90\\x12\\xcdB\\x0c\\x0eT\\x1bR\\x08X\\xbe\\x08\\xe3 \\xb9@%s\\xf5\\x8b\\x0bM\\x15\\x18\\x11\\xf6\\x0d\\x856k\\x81\\xe2v\\xd9-\\xae\\xd6\\x8e\\x0e\\xa2\\xe20(\\xae5e#\\x85\\x1f\\xb0\\xc9c\\x1cq\\x95\\xe3\\xacW\\xba\\xa5OVS\\x11 *k\\xab\\xde\\xe4\\xefb\\x88\\xdc\\xd1G\\xd1D\\xf3\\x00\\xdb<\\xffrSS8\\x08\\x00\\x98.\\xc5\\xb6\\xfc\\xfc*\\x9e=_I!'>e\\xe9K\\x90\\x96\\x1e\\xf4\\x9dZ\\xf3Ux\\xa7W\\x05y\\xc1\\x8e\\xc0\\x90s\\x19i\\xcf%\\xa6\\x97\\xea\\x94dX\\xd2\\xf6\\xe9\\xe4K\\xbdEoO\\x0c\\xbe\\xe4\\xc0=\\xd8\\x86\\x0d\\x897\\xbfv\\xa1\\xf0\\x8a\\xe4\\xeb\\xab\\x82\\xf0\\xccp\\x86\\xd1\\xb5y\\xf2\\x88\\xa5\\xb5Gi\\xc1&\\xe7\\xbec\\xbcP\\x10\\x13`\\n\\x98\\x15\\xa4\\x948\\xce\\x02\\xd6i%6\\xce\\xb8\\x05\\n\\x9b\\xe8\\xed\\xed;\\x1c\\xc3l2\\x9f7\\x9f\\xf3\\xb9\\x19l\\xc06Lh\\x959C;s\\xf8\\nf\\xf4\\x9f\\xf5=\\xd8vX\\xf4\\xde)\\xf1f<\\xf8\\xf4\\x93\\xc2\\x9e;\\xc7\\xf0\\xd5W0z\\x00\\x1f:E\\xb0\\x0e#^<V\\x17\\x8fY\\xf1\\xae\\xbat\\xcb\\xa1+1\\xcd\\xd7\\xd7\\xf1\\x9a\\xc2\\xc8\\xca\\xbb\\xf0%\\x8cwv\\xda\\xef\\x1ft^\\x8fwv\\xe0Kh%\\x92\\x1a\\xf3\\x14\\xd7\\xe2\\xeaTOF3X:\\x97\\xc7\\x8fa\\xbb\\xdbI\\x0b\\xdb\\x8e\\x06\\xf52\\xda4.\\xd9\\xb6~\\xc5\\x1e?\\x86\\xf1\\xe0\\x05P\\xdf\\x04e\\x13\\x80\\xe7Y\\xb2\\xbc\\x19\\x08\\x93\\xcaY\\x12\\xaf\\x04\\xf8\\x0f\\xb0\\xd5\\x92&q`\\x86\\x0dH\\x1e\\x81\\x0f_AI\\xffY\\xdf\\x83\\xd1\\xee\\xd6\\x83-G\\x88\\x8dfx\\x9b\\xb9\\x18\\x1b\\x18K\\xe01\\xc6\\xba-aR\\xbfk\\x8bY\\xd9J'\\xb0\\xcf\\x93\\xc1Ni7\\xf4\\xfc\\xf0F\\xb3).\\xce\\xf8\\x98\\x1e\\xdei\\xc1\\xd6\\xf5K\\xd8\\xdd\\xa2/\\xac\\xbd=\\x0b\\xa5\\xdcc\\xde\\x8a\\xd8/\\x9b\\xb53\\xc6}x\\xe0\\xc0\\xba\\xb6\\xe1\\xd1\\xa6h\\x99\\x02F\\xd52\\xefj,ue\\xb5\\x87.\\xa40\\xddp\\xd3\\xd7\\n\\xfeY\\x08\\x1d\\x13I\\xf8h\\x951\\xe3<\\x029=\\xec\\xbb0.\\x1e\\xb0}\\xdc\\x97\\xff\\x98\\xb0|.lS\\xac'_?}v\\xf0\\xcd\\x9f\\xbe}\\xfe\\xdd\\x9f_\\xbc|\\xf5\\xfa\\xcd_\\xde\\x1e\\x1e\\xbd\\xfb\\xfe\\x87\\xbf\\xfe\\xed\\x9f\\xfd\\xd3Y@\\xe6g\\x8b\\xf0\\xa7\\xf7\\xd12N\\xd2\\xbfgyQ\\x9e_\\\\^\\xfd\\xbc9\\x1aom\\xef\\xec\\xde\\x7f\\xf0p\\xfd\\x9e\\xc5\\xa3q3<\\xe2W\\xd2\\xf9\\x12\\xbe\\x82\\xfc\\x11\\xac\\xaf\\x97\\x0ed,\\x19\\xb7?-\\xe9\\xc0\\xa7\\xbe\\x0c\\xca\\xa5\\x83\\xb1\\x8cUnm\\x91\\x1e\\xab\\x0b`\\xeb\\x12V\\x05\\xfc\\x07\\xd8\\xa6hL0\\xda\\x14yrY\\xe0\\xf3\\x98\\x05{g\\xdc\\x83\\x07\\xfc\\x1aY\\x969\\xc6m\\xf4\\x01]\\xd3\\xd3\\x88@2\\x87m\\x95t\\x90\\x01\\xba\\x08\\xe2I7S\\xb9\\x97\\x1b#\\x1ez\\x95\\xc5l\\xdc\\x83\\xc2qa\\x8a\\x81\\xfb\\x04\\xdb\\xb9\t\\x13\\x86\\x98\\xe9x\\xe5\\xb4\\x99\\xddu\\x98\\xe90~\\x9d1\\n\\xddO\\xe5\\xe8\\xe8\\x05\\xdb\\x81\\x98\\xfe\\xb3\\xbe\\x07[\\x0e\\x02\\x8cM\\xe8NP\\x94C\\xb1\\xe7h\\xf7\\xfeh\\xb4\\xfb`\\x93\\xf9\\xd8OKz\\xb6\\x18\\xa4Sp\\xdd\\x19\\xf3\\x12\\x86>X\\xf9\\xf8\\x98\\xb2\\xe6\\x02\\xf2\\xed\\x103j!\\xfc?\\x90`>\\xc47\\xe3\\xf6\\x9b]\\xe9\\xc5\\xee\\x16|\ta\\x9b\\xa7\\xaa(\\x9a\\xeeQ\\xa8~%Sk\\xc3\\x92!h\\x13!hwLA\\xcb:Q\\x15m)\\xe9\\x0dy5\\x0b/#~\\xa0P\\x05\\xf2\\xa0(\\n0\\x0c]A\\xa8?\\x80?BBi\\x01\\x8a\\x19\\x14\\x82Q\\xba\\xf0#\\xba\\xae\\xa5\\xa3\\xae\\x81\\xfe\\xfa\\xb8f\\xdd2z-o\\xdc\\xef\\xbeG\\xfb\\x19\\xd8\\xc7\\x8eG0Q\\x05,Hy\\x95\\x0dZ\\xaeh:@DI\\xc9\\x84y\\x8b\\xdc\\xe1\\x0e\\xfb\\xeb{\\x902\\x0c\\x13\\xc0\\x97|\\x0e\\x1b36\t\\x08\\xe0\\xf1\\xe3=\\xd8\\x98Q\\xcaa\\x9d\\x9e`\\x98a`S\\xac?\\xde\\xd9\\x85?B\\x88\\x08\\x93u\\xe0\\x82ho\\x06\\x1b{\\xf0\\xc0Q\\xf4\\xe83\\xfb\\x83vOa\\xb3\\xa7\\xac\\xea\\xc9\\xafz\\xf2\\x87\\xf7D\\x91\\x04\\x93\\xfe\\x84\\x0e\\x8eu\\x04\\x1b\\xd02\\x7f\\xd5\\xe4\\xf6c!a\\xd1\\xcd\\xdf\\xa9\\x19\\x84}x\\xe5\\xbf\\xa2+\\x0c\\xf7`\\x93\\x12^A\\xb5\\xe6\\n\\x91\\x01^x\\x18]4M.\\xec1\\x06b\\x86\\x90\\x0e\\xb4\\xe9\\xb1q\\xad:\\x18r\\xd38\\xeb?6\\x9a\\n)\\x106\\x0cI\\x0b\\xef\\\"\\x0bQ\\xe4\\xaa\\x06l\\x97.B\\x17\\xb6)`\\xb3\\xb8\\x1f\\x1c\\xbci\\xcb\\x89\\x1axg\\x15xG\\x1a\\xf0\\xc6\\xe8\\xf1\\x1a\\xf0\\xa60:\\xde\\xaa.oy6\\x1b\\xe3m\\xda`\\xe3\\xd5\\xfd\\xfb\\x8e\\x1a\\xd6),g\\x1c\\xad\\x86\\xeaa,x\\x15\\xba|\\x1b\\x8a\\xf2s\\xa4\\xa0x\\xc0_!\\x1f\\xc4\\x94(\\xf7\\xf8{\\xf6\\xed\\xa6\\x02r\\xe9\\x9d\\x84\\x03\\xf5Os\\x9b\\\"\\xfb0\\x7f\\xe5\\xbf\\xe22\\x9e\\x02\\xdbb\\xe0\\xb1\\x0f6f\\x11\\x10\\xc5\\xbcI\\x86\\xbcg\\xa8\\xa5\\xf7E[\\xf3(I2\\x16\\x896JP`t\\x8f\\x15\\xbcx5F\\xad\\xec\\x1fY\\xfc\\x8f\\xc6\\n\\xf9\\x8e\\x03_\\xb1\\x98\\x17\\xb6\\xbf\\xb1A\\xaf\\xe5?\\xee\\x01\\xad\\xcf\\xe2\t\\xd3\\x932\\x87\\xc7{\\x18\\xc56\\x85{\\x90\\xc3\\x04\\xd2\\x16 \\xd1#1w(\\x88\\xe5\\xb4\\xea\\x98\\xb5\\xb6\\xbeN[\\xbb\\xc7Z\\xab\\xda\\x99\\x899\\xc9\\x93h\\xf4\\x82\\xa5v\\x81\\xadm0\\xc8\\x95;KXk{\\x80\\xa9\\x0c\\xb0r\\xd1\\xaa2\\xd7\\x7f\\xb7\\x07\\x9b\\x8e\\xf3\\x08\\x12\\xda\\xd9\\x83GH\\x9f\\xadCP\\x93\\xbd%\\xc6e\\xd9\\x83\\x05\\xc5\\xd5\\xf7\\x10_P\\xe2\\xc9\\x84\\x82|\\n\\xcc\t|\\xa0\\xdfF\\xf4\\xdb\\xe4\\x11D\\x0c\\xe3t\\x9a\\xf7\\xeb\\xe6\\xfd\\xaa\\xf9H\\xd5<\\xff\\x146`q\\x0c\\x1f\\xf6`4\\xa6\\x07\\xeb\\xbcu\\xc3\\xdd\\x88)\\xe6B\\x90\\xa6p\\xda.\\\\\\xb0j\\xb3\\xd6\\x8e\\x08\\x95[N\\xc9\\xc6\\xae\\xd2\\x88\\x05\\xa9y\\xa5\\x8c\\x1e\\x91\\xf0\\x92\\xb12\\xae\\x04\\x96l\\xa9\\xe2J`\\x89*\\xaa\\x04-\\xe8|\\x91\\xf3\\x82N\\xb0\tfj:\\xbe\\xdfV\\xbd2[\\xd3\\xb6\\x99\\xe5\\x1c\\x9b\\x99\\xb5\\xde\\xa6\\xbcqE\\x98\\x0bfk\\xba\\xb3\\xdb\\x0et\\xbd\\xa8>y\\xd8\\xfe\\x84\\xdb\\x9b\\x8e\\xdb}/\\xc5\\xdc:\\xb3f\\x16\\xa7\\x9a\\x80\\x0eW\\x9f>\\xa0\\xc3\\xe9\\x10i\\x98\\x94l\\xb4\t*'&U}5-\\xa2T\\x05I\\xd2y\\xc6\\xd6(\\x95\\xef\\xb5+\\xe0Z#6\\xd0\\xe6qW/\\xaf\\n\\xfe\\xd1r'\\x13\\x865.\\x16\\xa4\\xed\\x02\\xb5\\xc0-7{\\x05\\xf7:\\x17\\xaf\\xe06k\\xf2\\x8e3y\\x1fC\\xc7\\x03Y_/K\\x92\\xe2yLQGOE\\x9c\\xf7\\x1b1;\\x85S3t5e\\xe29M\\xca88\\x14\\x13\\xd7T*\\x92$:M.5\\x0e\\xd3\\x88\\xe9\\xd1\\x00\\xa0ra\\xa4w\\x04Z\\x04To\\xbc\\xd30\\x0ex\\xc0\\x1fV\\x86\\nfv\\xf3\\xec\\xc1\\xa9[\\xb9Y\\xcfP\\xc8\\xf1\\xdd!\\xdbk\\xe6U\\xc9\\x85o\\xcdN\\xfa\\xc3\\x16\\x8a\\xa7b\\xcci\\xfbg\\x1e\\xdb\\xe7\\xa3E\\x19\\xbf\\x7f\\x19\\x06AD.\\xfc\\x8c8v\\xec\\x18\\x02\\xa7%\\x18\\xc8K\\x84\\x1b99y{\\xf0\\xec\\xdd_O\\x9e\\x1d|\\x7f\\xf4\\xfa\\xf5\\x8b\\xc3\\x93\\x83\\xbf\\x1e\\x1d\\xbc:|\\xfe\\xfa\\xd5\\xc9\\xd3\\xd7/\\xdf\\xbc><89A\\x1d\\x1e\\xf3\\x1e\\xcd\\x15\\x91p@\\\"\\x1b7]Z\\x13\\xf5\\xa4\\x87\\xa8v\\xe7\\x13J\\xec\\x88\\xe9{\\xeaar\\xfdO\\x95\\xaa\\xdcQ\\x99\\x91\\xd8\\xfc\\xbc:b\\xad1<\t\\xf7.Ek\\x14|[9\\xd5\\xe2_\\xfcx\\xe8\\xb4J\\xad\\xf1\\x96\\xf5\\x91$.L\\xbb\\xeb\\xfe\\x9e\\\\M\\xc0\\xa2\\x9bEg\\xa4p\\x8b\\xe6\\x17\\x9cQ\\x0d\\x0d-\\x0b\\x13\\x84\\x99\\xee|\\x9bCV\\xa1\\x076\\x1a1\\xe1\\x01\\xa3\\xe9\\xf5\\xb1]S\\xa7\\x1e\\xd0\\xe1\\xc1\\x11\\xd3\\xc1\\xca/\\xf4\\xc0&\\xe7\\x01\\x06b\\x9b@[<\\x94\\xf7a\\xd0\\x1d\\xe6\\x8c\\xdep(E\\x8a\\x01\\xe7\\xf8k\\x14+9\\x0dm\\xa3\\x1a,Um~S\\xc6\\xb3\\xc6\\xb7\\xc4.\\xd0\\x80V\\xe7\\xe5\\xabjD1\\x02o\\xe9\\xa7\\xb5\\xe8\\\\\\xab]\\x95\\x9fz\\x00\\x1d{\\xd7\\xf6s\\xedx\\x19\t\\xca\\x19\\xb1/\\xd0\\x8c\\xd6<T\\xde\\xb0\\x06\\x81\\x02\\xd3\\xd1\\xb4Q\\x9d\\xad\\x0b\\x00x\\xc1\\xf1\\x17\\xc7U1\\xb2\\x04\\xdc\\x1a\\xb4q \\x15\\xfa\\x0fh^\\xcb}\\x00 \\xf0\\x1bmZ?\\xc5s\\x1e\\\\T\\x01\\xb7c-\\xdc\\x8e\\x9b\\xf7\\xf7\\xf8\\xb8\\xc75\\x1c8\\x91\\x99x\\x0b?\\x7f\\x81\\xde\\xda\\xe6\\x11\\xa1PA_e(L\\xa3\\x1eP\\xa5~/<\\x7f^\\x90\\xec\\x05w\\x9eF\\x0ebm\\xd3\\x85\\x03[*qd\\xcd|l\\n\\xe9h>\\x13r3\\xfcx\\xf4yHT\\xcb4Qd\\x7f\\x16\\x8f\tr\\xef\\xf6\\x805g\\x92\taD\\xff\\xa9\\x1c4\\x0f\\x00Pe\\x01\\xae\\x8b\\xf4\\xd3\\x14\\xf2\\x1ce\\x85\\xebz\\xe1\\xab\\x03\\xa7:\\xa9\\xea\\xf3w\\xf3\\x0bEjf\\xc0\\x9db\\xbaR\\x88\\xeeJ1\\x91\\xd6\\xad+E\\xa5/\\x15O!\\x93O\\xf4\\x16\\xb5\\x1d/\\x08s\\x0c\\xe0c\\xbe\\x88\\xda_\\xe1O\\xbf\\xd0\\x904luk\\xa2\\x12:1\\x180R\\x04o\\xf3mM\\xe2\\xda\\x12\\x11\\xf9C\\xe6\\xa7)\t\\x9e\\xc4\\xc1\\xd7\\xb4%\\xee\\xa0\\x8d\\x82\\x1bM\\x95*\\x94\\x85\\x1d\\xb7\\xb7]&N\\xe9\\xb8\\x91\\xee\\xcb\\xf1p\\x8a\\xf7\\xdf\\xc4r\\xef\\\"\\x00\\x05:]T\\x10\\x93\\x11\\xdc\\xec\\xb7x\\x9dd\\xb7\\x01\\x9a\\x9a(\\xbe\\x05\\xcc\\xc8T\\x91\\xb4\\xdc7\\x1fUs7n?\\xb2\\xf6\\xaeka\\xacZ\\x8dI\\x9b\\xbe7~B\\xa1q\\xd2\\x04N\\x99\\xc70}\\xfbTb\\xc0\\xeaM\\x17\\xef\\x86\\xb6\\xc2cP\\xe9\\x8eG\\xcf\\x088\\x1fY\\x08.\\x89\\xbf\\x19\\xd4\\xf9\\xf3\\xe5\\x04\\xe6bi\\xf5\\xd5\\xde\\x12\\x7fVL\\xea \\x89j\\xcc)\\xb81\\xc6\\xa5I<'`\\x18\\x97[\\xc29\\x9f\\xd6\\xed\\xc1I\\x1e\\xa4.b\\xd5\\xe0\\x91\\xdd\\xe5\\xc0\\x06\\x08\\x0b\\x86\\x8c\\x1d:\\xe3\\xef\\xbe1\\xcc(_eFZ\\xdeF1P\\xd8S\\xc4\\xdd\\x1b<\\xac&\\xd2\\x1c04\\xe3\\x15\\xc9\\x88\\x11\\xc3\\xbd\\x83\\xec\\xa1\\x88\\x81-0\\xb5]]b|f\\xb2\\xb8\\x84\\xf9\\x861\\xf2)9\\xfd\\xe9\\xa5\\x9f:\\xf4\\x06\\xe9_*\\x90i%\\xc6cd\\x9a]\\xe5\\x1eZ\\xadX?\\xa4bMj\\xe2l\\x08\\x99\\xdfK!\\xf1\\x18\\xb7\\x18\t\\x9aL\\xe3\\xe3\\x15\\\"\\x81\\x0bBdE2\\xa4+\\xe1\\x8b\\xc9\\x05\\xcc\\xbc\\x97~jf\\x14\\x80\\x13&2W\\xdc\\xcfM\\xaee\\xa6\\x08\\xc3\\xf2#L\\x02\\xb2i\\xe1Qv`@\\xe3\\xbd\\x8c6H\\x9c\\xd4\\x81\\x1d;&\\x7f9\\xf9\\xe1#\\xae\\x82\\x10%\\\\2\\x9c\\x18\\xbf\\xd4\\xb3\\xa2\\xa0\\x12\\xfb\\xb6\\x1f\\x84=5T\\\"?\\xec\\xb6\\xa1\\xb2\\x90#`m\\xba\\x10x\\xb3dy\\x1a\\xc6\\xe24\\xe5\\x0e\\xcb\\xa9\\x7f\\xda\\x9b$\\xdf\\x8c~\\x8f\\xae\\xd2!2\\xa1^)\\x0c\\x99n\\x1e{E\\xf2.MI\\xf6\\xd4\\xcf\\x89\\x8dF@U\\xac\\xf8^\\xb1\\x1b\\x9ez67\\xc7\\xd6#\\x89j@\\xb1\\\"\\x9d\\x87\\xfc\\x9c\\xf3\\xd8\\xe6\\xb12\\xe3\\xb7xPQ\\xed\\xc8\\xe3H\\x9a\\xf4q\\x06\\xeb\\x14\\xd7\\x85jV\\xe96\\x972%O\\x04\\xad<`\\x03\\x86\\xdc\\xca|;m+\\xaf\\x1a\\xbe\\xdd\\x009\\xbd\\x7f\\x8b\\xe1\tD\\xd6\\x1c\\x9f\\xcf\\xdb\\x1d\\x08\\x16x\\x19\\x90\\x15/\\x83\\x0eP\\x11\\x83Y\\x8b\\xeai\\x08\\x18(zqL\\x80Rt2\\x81\\xcb\\x8f\\x86\\xd5\\xbe%\\xfc\\xa8\\xb9\\xb3\\x01\\xbb\\xd5{\\x9a\\xe9v\\x0dcF\\x1b|\\xa1\\xca_\\x1dt\\x1b\\x1a7\\xf7\\xa3\\xff\\xc2\\xa5\\xbd\\xaa\\xb0\\xc24\\xae38l\\xdcw\\x8e\\xbd\\x8b\\xccO\\xf9\\x90z/\\xe9\\x8c\\xe3W\\x0d\\xa0\\x0d\\x10\\xf8\\x8a;(\\x9b\\xc6=\\xd7\\x1a\\xef\\x12\\x8d/Q@$\\x04Ev\\xc2|\\\\\\xd0V19v(t\\xb5i\\x92!C\\x01i\\xa9z\\x8ff\\xfb\\x11\\xf7\\\"\\x1e\\x8e\\x86\\xb0\\xa6\\xa5\\xeaPD\\x11\\xd3=\\n\\xfdb\\xfbABB>g\\x99#[$J\\x1e\\xca\\xd2\\xb6BLH\\x90C\\x91T\\xd2\\xa8ZJ[,\\xfc\\x82\\xbf\\xce\\xc1\\xc7F\\xaa2;$P,\\x08\\\\\\xb0\\x93\\x03\\x0c\\x119:D$?\\xbc\\xa3\\x03;\\xeb\\x91t\\xf3\\xc0\\x9b\\xdf\\xf0>\\xa5 \\\"\\xf4\\xbe6\\x91\\x08\\xda\\xe2\\xbb\\xc5\\x13\\xab\\\\;&D)\\x88:3\\xb2\\xc8\\xda\\xc8\\xa2\\x96\\x10\\xf5\\x078h\\x9eL9\\x97\\x8e*\\x9d\\x97\\xfc\\x88S9\\xcd$\\xe4\\xf0\\xd0\\xa4X\\x04\\xe1\\xde\\xa4\\xc41\tC+\\xd5\\xe0{\\x11K\\xd8A,\\xc5\\n\\xc3\\x07Y(?\\xcd\\x86!\\x16\\xbf\\x8bX|\\x86X\\xd0\\xe2\\xd5g6\\xa9\\nf\\xa7w( QT+#\\x96\\xca\\xfa6Tp4\\xcc4\\x89\\x0d6t\\xb8\\x8d4\\xb3\\xc9\\x0d\\x1fA\\xb9\\xbe\\xee\\xa09t\\x837){\\x96C<\\x02\\xc5#?g\\xc2hS./z\\x1e\\xdb\\x89sL9\\xee\\x99_\\xd8\\xbe\\x82\\xb4n?7Ap\\xa1\t\\xc1\t\\x00\\xfb\\xfd0\\\\\\xd8\\x87\\xde\\n\\x03zS\\xf38 \\xd0\\x9b\\x86\\x05\\xba\\x1dzC)\\xdf d6@R\\x9a5-\\\\T\\xb8`uyAS @(\\xa81\\xb1\\xb7z9\\xdc\\xdb\\x89\\xfb\\x9a\\xf2\\xf5\\x7f\\x9cu\\x19\\x8cX\\x04\\xb7\\xcd\\x0e\\xad\\xcaET<\\xd7\\x1fq\\x8d\\xbf\\x89\\x07,\\xed\\x8de\\x96\\xf3\\xb8)\\xae\\x9cw\\xc3\\xf5@g\\xc0\\xdd7}\\xb2W!k\\x1f0\\x95\\xbbb\\x1a*\\xb1\\xa6\\xe8[\\xcb\\xa1\\xf3Ej\\xdeh\\xb1\\x03\\xfb\\x10\\xafL\\x1e\\xeb\\xa9[\\x0dJ\\xaa\\xc2\\xd6\\xf0\\xd8\\xe6\\xfb\\xfa\\xd1C[\\xb2,\\xcan\\xb59wJ\\xab)\\xe9\\xa9JcRQd\\xce\\x8a\\x12\\x16\\x15\\x85\\xd5K\\x19\\xe9\\xd9\\xc0^\\x06\\x87\\xb7\\xd0{\\xbc\\xe4\\xa7\\xe1\\x11\\xd6%?\\xc2\\x8a\\xfc\\xc8\\x9c*\\x9a\\x93\\x0f_A\\xf6\\x08|J~\\x84S\\xbfI~\\xf8\\x03\\xc8\\x8fs\\x9e\\x0e\\xf5\\xc0\\x8e\\x05\\xb1\\x81\\xa9\\x904\\xa4FhL^\\xc9\\x1f>y\\xa5q\\x05&\\xa2\\xb4Y\\x8f\\xa5c\\x176\\x8b*ol\\xd3`]\\xf3Q\\xc4\\x15w%\\xa4 \\x18\\x9b\\xeb\\xc3\\x87\\x8e\\xc6O\\xa8\\xd1\\xd5K)\\xa3)\\xaf\\x16n\\xb5#w\\x88G}bd\\x12~\\x00\\xba\\xb1\\xd1\\xa0\\xf04\\x14\\xf3~\\x9a\\x11\\x9f\\x1e4\\xa7B\\\\@\\x06\\x9b\\x82H\\x1b_;/\\x16f6\\xa3\\xafi\\x90\\xaf\\xd3\\xa2\\xcf\\x86\\x0b\\x06\\xdcl\\xf2#\\xa4\\x7f\\x14\\xf4\\xfb\\xe1[\\xef\\xfe\\xdf~P\\xa2x\\x0b\\xa9\\x84\\x88\\x180hy\\x80w8\\xac&}\\xe8\\xd6L\\xe0\\xdc{u\\xf0\\xc3\\xc9\\xd1\\xb7o_\\xff\\xf0\\xea\\xe4\\xe0\\xed\\xdb~\\x0d\\x8cx0\\x03\\x82>K\\x96\\xeaI\\xfd\\xab(\\xf1\\x03\\x96\\xe2g!\\xab\\x11\\x065a\\xd6n`\\x0d\\x98\\x87\\xb1\\x1fEC\\xb7H\\x00Uoes\\xd7&\\x0b\\xc0\\xc2\\xd1\\xca\\\\o\\x89\\xa9^\\xfa)\\xa3\\xa0\\x937Y\\x92\\x0eAVC\\xe4\\xdfF<\\xd3\\xdb\\x124\\xb1J\\xcb\\x8e\\x87\\x0c in\\xbb$\\xcf8z\\x1d\\xbe*\\x83H\\xc6a\\xcb2\\x84\\xb8\\xb3\\x9b\\x1e\\n(\\x967X1!\\x07V[\\x1d\\xe9@\\xa9o\\xd9\\x8e\\xe9\\xb7\\xd5\\xabk[\\xe9\\xa8r\\xa1\\x0d\\x1duk\\x15\\xaf\\xca\\x08\\xb4P7l\\xb2\\x8an4<Ry\\x874\\x04\\x19\\xc2\\x0cT\\xd2\\x8a\\x0c\\xaa/\\x1bi6\\xab\\x17(`\\xabY\\x12\\xa4hZW[\\xab\\xca\\x00jUP\\xa9D\\\"\\xcb\\x99k\\x90D\\xc2\\xab\\xe4k\\x18\\xdc\\xa0#\\xa5\\xdf\\x07\\xbb\\xf5%\\x9a\\xd8r2n\\x1aS`\\xe0\\xd1\\xab\\xdb\\x83\\x9df\\xc7\\x18V\\x06\\xe7\\xd5md\\x9a\\xb8\\x10\\x1f\\x1b\\xbfn\\xc2\\x9dBg\\xdc\\xfaFN\\xf4\\xafiV\\xeb\\xba/3\\xf6\\xddmm\\xef\\xaa*\\x86f\\xedt\\x0falv\ta\\x8a\\xda\\xc4\\x90\\x94\\xbf\\xddaX\\xa5\\x8ej\\xbc\\x95U?\\xda\\x08\\xbb \\xcbV\\x87)\\x8b\\xaa\\xb9\\x94t.~\\x1f\\xd9p\\xce\\xb3,\\xf9\\xbd\\xa2\\xca&\\x80\\xe5LZK?\\x9d\\xe6\\xc7\\xae\\x90|\\xe6\\x95\\xc5zc[\\xbao\\xa6\\xc9\\xb1\\xf2\\xa5<\\xc9\\xde\\n\\xb4O\\x8c\\xeb\\xd1W\\x89\\xcdO\\xc0~_u\\x830U}\\xc9\\xf7!^5\\xd2'\\x8d\\xc8\\x84\\xaa(\\x11\\x07\\xfah\\x19\\xabz\\x92\\xa8p\\xa6\\xe3E\\xc9\\x19\\nt\\x15\\xc2\\x90XN\\xa6\\xbe\\xc7$\\xa9-\\xdf\\x0f\\x13\\xb1/\\x9c\\x18\\x8d\\xc4\\x82\\x9e\\x8c\\x96\\xc2b\\xaa8\\xe1\\xac\\xe2\\x84\\x0b\\x11J\\xfc\\x11$\\xf0\\x15\\x14\\x8f \\xa1\\x9cpF\\xe1K^\\x01\\xdd\\x89\\x15\\x08\\x1e\\x8d\\xc19\\x9dN\\\\\\x98\\xd2\\xeb\\xbe\\x02\\x98Le\\xb924\\x96\\x17F\\x0cif\\x0c#<\\x17]\\x0f\\xd8\\\\\\xff\\xa1\\xfbKN4~\\x82o{cu\\xedl\\x8d\\x15^\\xc0rR\\xa4\\xbaT\\x1d O\\xed)'t\\x16m'e\\xd2\\x8e*\\x7f=d\\x9c\\xf5\\xb8\\xc6\\x9b\\xd2p3;\\xc30\\x97\\x19\\x8b\\x19\\xca\\xf2\\xddh\\xe3\\x86\\xb6cyb\\xae\\x14o^\\x8f\\xc4\\x192\\x14\\xbad\\xdb\\xa6\\x1cR~\\x9e\\x87g\\xf1\\x90\\xa6\\xfag\\xa5\\x9f\\x0c\\xebe\\x82\\x89`\\xb6\\x9c\\x15\\xe7`N2$\\x9f\\xcak\\xf5\\xeeg\\xb7\\xef\\x85\\xaec\\xdb{\\x9a\\xc5\\x16\\xd4\\x04k\\xdcR\\xe72\\xda\\xd9jg\\xe5)1k@q\\x91<\\xe1\\x07\\xfcM\\x92D\\xa4\\x95\\xee\\x0dg\\xe1\\xcd\\x9323\\xd5\\x8a`\\x0f\\xee\\xfdxo\\xfd\\xde\\x99\\x8a\\x18\\x9ei\\xfd\\xa6m\\xcb\\x82u@\\x8bL4\\x1d\\xb5#\\x17\\xac/\\xbe\\xbcg\\x99Q\\xfa\\\\)\\xfbDA\\x0f\\xad\\xc3\\xf3s\\xd0?gI\\\\\\x90\\xcb\\x82\\xc5\\xf0\\xe4o\\xca\\x98\\xfe\\xbdi\\xec!\\xd5\\x9dW\\xb1-\\x04{\\xeab|A{b\\xb7-L\\xcf|e\\x12f<\\xc4\\x06\\xb2\\xben\\x9ei \\x85%Q\\xce7#9\\xc3cb\\xc6\\xef\\xc9\\xd5\\x9b\\x8c\\xcc\\xc3Ki\\xce|Q\\xe2\\xce\\xa2d+-\\xca\\xa2\\x7fQ\\xd8p\\xba\\xcb\\xe2ci5\\xb6n\\x85\\xd2\\xb0\\xa6\\xb9\\xbc\\xa6\\xddb\\n|%[\\xdb\\xbc\\xb5\\xb6\\xcd\\x0dh\\x12_\\x11\\xa5\\xee\\xcf)\\xc4e\\xb8\\xbe\\xa1W,\\xfc\\xe2-S\\xb3\\n`\\xa7\\x14<Ox\\n,\\x87c\\xe2\\x85\\xf9\\xf7~\\x14\\x06\\x07\\x11\\xa15h;\\xf4}\\xc4\\x18\\x83(\\x89\\xc9\\x938x\\xcb\\xe0\\xf9\\xcf\\xe4\\x8av\\xe0\\xc3:\\xd8k\\x11\\x9d?\\x8b{\\x824\\x19\\xfd\\x8bR\\x05\\xec\\xfd>X\\x16L`f\\xe3\\x9f\\x0e\\xac\\x83u\\xcfr0T\\xa1\\xe3\\x8a\\xc0\\xbb\\x91c\\x06\\x97s\\xbb?<\\x13\\xec\\x81e5\\x17F\\xcc\\x90\\xc5\\xe5\\xa25f\\x94\\x01gC\\xe8r\\x0ct\\xaf\\x02\\xcaH#*\\x08\\xec\\x02\\xa3la\\x87\\xcd\\xca>\\x1d\\xce\\xc2\\x85\\x92rI^F\\\"\\xe2\\xe7\\xc4.\\xcdsX\\xf6\\\\\\x95\\x8d;\\xbf\\xbe\\xd3\\xe7R@\\xdd\\x80\\x88T\\x06&5c\\xe3h\\xa0\\xb0\\xbeu:\\x1a/;\\x07\\x84n\\x8a\\x1f\\x04t\\x0d\\xc2\\xf8\\xec(\\xb1\\xe7b\\xa27\\x1aHu\\x90\\xa5^\\xe5\\xb3,\\xbd\\xbe\\xc31\\x07.\\xe4-\\xba\\xe6\\xac#\\xfb\\x9c'\\xd9\\x81?[Lz\\x89\\x19\\x10\\xb6\\xdc\\xcc\\xd6Z\\x8a\\xb2\\xae\\xb0\\x17\\xaf\\xae\\xd1&$\\xa9\\xdc\\x9a\\x11\\x8eR\\x16\\x12j^\\xc1Q;\\x0es\\x133,\\xfd\\xf4#\\x0dx\\xaa\\xa0\\x82\\xf9Wx\\xfe2W\\xec\\x02s>6\\xa6)Y\\xfa\\xe9\\xf3\\xb8H~\\x08\\x8b\\xc5\\x9f\\xc5nc\\xfe\\xd4\\xd8\\x8f&p\\xde\\xac\\x8c;:@\\x03\\xc8G\\x83\\xcb\\xb6d\\xa31\\xaeU\\x91 J\\xec\\x93\\xe4\tV\\xa2o\\x01\\n\\xb1\\x00j\\x94\\xdaI\\x9dU\\xc3\\xa7\\x9a\\x8a:\\xc3\\xb7\\xb7\\xa4\\xa2F\\x9bm\\xba\\x08\\x03\\xff\\xc5\\xf6\\x03\\xa7\\xcf\\xd2X\\xa4T\\xf1DJ\\x15\\n\\xad\\x9c\\x8d\\x1a\\\"\\xf1l~\\x97&i\\x8f\\x0e\\x8a\\x9d^\\xf4\\xabe\\xa1X\\x14\\xc1\\xc9u\\x1b\\x10\\x93\\x0b\\xfc\\xbe\\x93\\x9cAA+\\x9ag\\xddH\\x15F\\x9b\\xc4\\xa4<\\xb65\\xde\\xc1\\x1c\\x17\\x12n\\xab|8\\x15\\xebC\\xd9IZ\\x94&It\\x18\\xfe\\\\\\xbbu6\\xd7\\x84^n\\xe6t\\x12\\x94\\x82H\\xba\\x04lw\\xdc2~\\x1bpV@\\x16\\x83\\x19\\xb7%n\\x8c\\x99\\xc7\\x94\\x8ck\\xec\\x05\\x9c\\xc1\\xf7\\xe9\\xdbj\\xbe,\\x1dS\\xf5\\xe7\\x1e\\x8c0\\x19\\x93\\xc0b\\xb0G\\xefNEn&\\x05i\\x19\\x93&\\x0d>i/\\x08}:\\xf4\\xfc\\xc05\\xb8\t\\x90\\x83\\xb4v+\\x01:\\xa8\\x80=\\xe6\\xb1\\xf9U\\xcb\\x01J\\x98\\x07\\x15\\xdcwRU\\x80z9\\x8bEF:\\x0b:\\xe4\\xc2\\x80[\\xaeVv'\\xab\\x95\\xb9\\xc2/\\xafs\\xc5\\x88g\\xf8\\x82)\\xe3y(\\xd6\\xac\\xcb\\x07v\\x97\\xcc`Fr\\x9bUK\\xeed\\xd5\\x92j\\xd5\\x185\\xa1v\\x02[i\\xe1:\t!\\xba-h\\xee5f\\xae\\xf1\\xb1\\xee\\xb5m\\x96jy\\xbc{_\\x15\\x8b.\\xb6w\\xb6\\xda\\x89t\\xfd\\xfaB\\x8c\\xed\\x9d\\xedNx\\xb9\\x92\\x95?t\\\\\\xb0\\xbcv\\x1aW:!kbi\\xe2\\x15+\\x10\\x8f \\xb40\\x80H7\\xe3\\x01\\xbe\\x17\\x8c\t\\xe1,\\x92\\xef\\x91|\\xe6\\xa7\\xc4&\\x8cI\\x9a`hy\\x96G\\xc1\\xde\\xdamK\\xcb\\xe0f\\xc2\\xb8\\x8a\\x1a\\xe4q3\\xab\\x89\\x10\\x1e\\xdfi\\xe6\\xc2\\\\G \\xa5.\\xc6\\xc9\\x13\\xe6\\x1a]\\xd8\\xc4|%\\x8d\\xc0\\xd4\\x18F\\xf6K\\xb0N\\xe9\\x89\\xf2c\\xf1JdAA\\xf2\\xcd\\xad\\x1d\\x18\\xf1\\x92\\xb1X\\xacf\\x0b\\xdf`]+.\\x97\\xa7$\\x93\\xdf\\xd4\\xab\\xca\\xbb(\\xbc/\\xbe\\xe0#CW\\xc8\\x8a\\xdc\\x9dQ\\xee\\xa5p)\\x0f\\xca\\x024\\xefC\t\\xeb\\x80\\x14\\xc8&2\\xc1\\x8e\\x0b#5M\\xbc\\xc0\\x18\\x97\\xca#s\\x8e\\xcc\\xa6\\xd4\\xe4\\x04bX\\x07\\x85\\xe6\\x85\\xaeJ\\x93?/4\\x1a\\x84J\\xaa\\xbdd\\x12\\xeb%%1\\xaa\\xf0\\xda\\xcb\\xf5u\\x07\\x16\\xb0\\xbe\\x07\\xc4N\\xe9>L\\x97\\xc7.\\x9c\\xe3\\\\R\\x17\\x96\\x0e\\xdf\\xbd\\xee\\x084\\xb1mAb\\x8bBe6B\\xe0\\xc3?\\xebCaW.F\\x13<\\xe3\\xb4]Oh\\x993\\x04\\x83\\xc2#q\\x91\\x85\\xa4\\xc7\\xcc\\xa5Z\\x94\\x13\\xb6(k\\xf6\\x15\\xec\\xc1\\xa9\\x17\\x93\\xcb\\xc2v\\x1c/H0u\\x98\\xb40W,\\xed\\x8c\\xb46'\\xeb\\xeb\\xfa\\xd5\\x11\\x0f]\\xa5\\xfe\\x91h\\x07\\xa0_ \\xf1\\xd0I\\\\\\xd4\\xe3\\xd3\\x8fD<\\x98\\x0b\\xc5\\x96fv\\x81\\xf9!\\xce1\\xad\\x13G\\x17\\x17\\x18\\xb3e\\x1dr1\\xd7M1\\xd3\\x1e\\x13(e\\xe95\\x83\\x15<\\xc8\\x8d#\\xd6\\x07\\x00\\x07x\\x1c\\xd4GE<\\x94\\xd7\\xe7\\x08\\xcd\\x04!\\x99mm\\x8d,\\xb7N\\xc1\\xc2\\xe4\\xdf\\xc7l$\\x97\\xb0/N?\\\\\\x84\\xc5\\x02\\xde\\x93\\xab\\x1c~\\xb1`]\\xc4D\\xa5/\\xec\\xc2\\xe1\\x01\\xc5]@Q\\x93um\\xc1\\x04.]8\\xb8\\x99m\\x04\\xd48t\\xd1(\\xc0\\xf0]\\x96u#\\x9d\\x86\\xf9\\x02TZG\\xf2\\xdc\\x96_~\\xc9\\x7fU\t\\x97\\xbb\\x17\\xa5\\xf5O\\xff$\\n-\\xf5-\\xad\\xe7\\x92\\x04\\x8f\\x87W\\x95\\xcdrUO3L\\xfaD\\xa6I;\\x86\\xbb6OU\\xa1HBu\\x07+\\xd3\\x1c+;\\x08C9|5\\x18[{\\xd6\\x04\\xac\\xbdM\\x0d\\x04[\\x13,\\x1e[](\\xd1\\xca\\x0b\\xac/(Lv\\xd4\\x00\\xf7\\xa6{\\x93\\xe3{g}\\x8c\\xb9\\xd4P1%\\xc7\\xdd~\\x8d\\x1ce\\x19\\xdf\\xcd\\xa2l\\xe2\\xb4u\\x8b\\xb27\\xa6\\xc5\\x93U\\x16\\x85-\\x87my\\xec0\\x93\\xe9&j\\xe8\\xe9Z\\xb1\\xbfQ\\x13M\\xbc\\xbc<eT\\x80=F_B\\xe9\\xc5\\xc8q\\xa4\\xd5\\xb4\\xf76?\\xec\\x8d\\x9d\\xbb_\\xd0\\x1a^\\xd5g\\xe7N\\xf4_\\xf7w\\x1d\\x1e\\xa3\\xf3\\x1b\\x7fV$\\xd9U\\xf7\\x14+\\xa4\\x00\\x13\\x8a\\\"\\xfd6\\x95\\x8aE\\xa7\\xa7\\x19+==\\xcd\\x94\\x15\\x82 #y\\xce\\xea\\xb0\\xdf\\xcaj\\x19\\xe1\\xbddD\\xddQV\\x84\\xb3\\x88\\xf0:\\xf8[Y-\\x0f\\x03^\\x89\\xfeRV)\\x830aU\\xe8/U\\x95S,>U\\x16\\xf99k\\x9f\\xfePV\\x08BV\\x1e\\x84\\xea\\xe2\\x84\\x17\\xab{\\x0e\\xcfXqx\\xa6,\\x8e\\x92\\xd9\\xfb\\xbf\\x97I\\xc1\\xc7P\\xfd\\xa9\\xac\\x9c\\x04W\\xacZ\\x12\\\\)+\\xb0\\xadSo\\xdciY\\x14I\\xcc*\\xe0OU\\xa5\\x99\\x1f\\x9f\\xfbls\\xd9Ou\\xa5\\x94\\x82+\\xaf\\x85\\xbf\\x95\\xd5B>+\\xfaCY!\\xe1[K\\x7f\\xa8+D\\xbc<\\xd2\\x14\\x9feI\\x99\\x8a:\\xf8\\x87\\xaab\\xe0\\x17\\x0c\\x18\\xe9\\x0f]\\x85(\\xcc\\x8b\\xaa\\x12\\xfdCY1`U\\x02e!a\\xc3\\x0d\\x88r\\xb8\\x01)\\xfc0\\xcay\\x15\\xfc\\xad\\xac6g+\\x1b\\xcc\\x95\\xab\\x1a\\x84~\\x940\\x98b?\\xd5\\x95\\xcey\\x8dse1\\x1f\\xa7z\\x98|\\x15\\x94\\xf3'K,$Ku\\xe1)\tx\\xf9)Q.\\xd1<$Q\\x80I\\x9f3\\xdb\\x12\\x7f\\xa8+\\x9e\\xc9`V\\xff\\xa9\\xa9\\\\fDT,3%0\\xfd\\x7f\\xec\\xbdiw\\xdcH\\x92 \\xf8v?\\xd6\\xafp\\xc6\\xcb\\x92\\x80\\x0c0\\xc4 %R\\n\\x89b+\\x95\\xcajUeJ\\x1aIY5]\\xc1(&\\x18\\xe1\\xc1@\t\\x01D\\xe1\\xe0\\x91E\\xbd\\xd73\\xb3s\\xdf\\xbbs\\xf5\\xdcg\\xcf\\xee\\xdc\\xc7\\x1e\\xb3;}|\\xe8\\xcc?2\\x7f`\\xff\\xc2>7s\\x07\\x1cps\\x00ARY\\xb5\\xfb\\x16\\x1fH\\x84_p7777737\\x9b\\xc71\\xc4\\xaa\\x15\\x85\\xe0\\x95.\\x94,e\\x91\\x84\\x1c\\xe3b\\x08\\xd9\\x8b!\\x99\\xb9\\x8d\\x99\\xdbd\\xe6\\x0ef\\xee\\x90\\x99w1\\xf3.\\x99y\\x0f3\\xef\\x91\\x99\\xbb\\x98\\xb9Kfr\\x1f'D\\xbc\\xd8\\nH\\xa0\\xe0+Y\\xa8\\\\e\\x0b\\xeb\\x1a[\\xc8V\\xe8\\x16\\xb2%\\xa2\\x9cx\\xa1\\n \\x89%\tl0O\\xfc%N.\\xbe\\x92\\x85\\x96\\xb8$\\x82%\\xb9\\x1e\\x82h\\x95#\\xce\\xc1\\x1b]$\\x95\\x05\\xc8U\\xf9\\xee\\x18\\x01\\xf9\\xee\\x98\\x84\\xe3;~q\\xc2\\x11U\\xf1\\x95*\\x14\\xfa\\xc7\\x92B\\xc0\\x1bY\\x84\\x9f\\xf0\\x08\\xbf\\x84\\xafd!\\x84VH\\x82+\\x0c\\xa2w2;zG\\x15X\\xfa\\x01vT\\xbc\\xd0\\x05V2\\x9f\\x9c\\xe8\\xa5\\x9f\\xbc\\x93\\xf9\t\\xfd\\x01\\x1e\\xe5X\\x80G\\xb9\\xad@\\x90IR\\xa2~\\xd0\\x05%\\xdd\\x16/\\x96\\x02\\x12{\\xe1\\x8d*\\x12\\xf9H\\n#\\x9f$\\x85Q\\x8c\\xd1\\x94\\xb1\\x8c\\xfcA\\x15\\xc4\\x03#\\x14\\x93\\xc7Z\\xaa\\x10N/\\xbd]\\xc5\\xab\\xac\\\\H\\xea\\x87\\xa5\\xa0\\xa2{\\xb1\\x95\\xe6\\xc5y\\xa6p\\x1a_\\xa9B\\xf8-\\xf2#+?\\xf1q\\x06\\xe0\\x8d,\\x12L3EW\\xe5;YL\\x15\\xb1e\\xc7'\\x05\\xc7\\xa8~P\\x05\\x7f\\x01%~Ae%8\\x90\\x84\\x1cI\\x82PHH\\x08$\\xf91\\xf2L\\xe2\\x85*\\x80\\xfd\\\";\\x94\\xfaK\\xfc\\xaex!\\x0b\\x94\\xa8cG\\x9c\\x94O\\x8b\\xe9\\x94\\xeft\\xb1P\\xe1\\x17\\xbe\\x92\\x85\\x96~\\x88(\\x06od\\x918O\\xa68!\\xf8J\\x16Z\\xf9\\xb2C+\\x9f\\xeeM\\x96\\xc4\\x11\\x92T|\\xa5\\x0b]H\\x06\\x1e\\xde\\xc8\\\"9\\xb2\\xdeiN2\\xdfi\\xbe\\\\\\xfa\\xc9\\x85,\\x02\\xeft19\\x0f\\xf4z\\xc9\\xfcc\\xd9\\x8f\\x0c#\\xc5\\x12E\\n\\xde9\\xb31\\xcf\\x19\\x92\\xdd\\x8c$\\xb9\\x19?\\xcf\\x8a#\\x8d\\xfaA\\x16\\x14\\xbc\\x05\\x96\\x12od\\x91\\x05\\xe6/\\xe8L\\xb5eg\\xb6=;\\x0b\\xe4v(^\\xe8\\x02\\x99\\x82\\x87x#\\x8b \\xd5\\xccH\\x92\\x99%\\xfe\\xf4\\x9d\\xcc\\xf7\\xa7$\\x8dG\\x02OR\\xf7\\x1c\\x114'\\xb1\\xf3\\xd4\\xc7\\x0f\\x9f\\xfa\\xe4\\x97O\\x83\\x19\\xc7\\xe3\\x14\\xbcQE\\xce\\xe4!\\xe7\\x8c>\\xe5L\\x83D\\x9d*\\xf1\\x95,\\x14\\x06\\xabW\\xbe\\x9c\\x07\\xf5\\x83*8\\xe3s\\xc5\\xaf\\xcfI\\x12\\xc1\\xc30X\\xc9\\x03\\xa4|\\xa7\\x8a\\xe1J\\xa2Y\\x93\\xa5\\x7f\\\"\\xb9\\x1b\\xf1F\\x15\t\\x83\\x08K\\x88\\x17[\\x01?\\xf9A\\xe2\\xcf\\x02\\x1eeE\\xd12\\x89\\xaa\\xb4\\xf4S\\xb5\\x8f\\xa7\\xe4\\x1c\\xaf\\x14\\x84V\\x16\\xe8\\xac\\xfc,\\xe3I\\xa4\\xca\\x88w\\xb2X\\x1c^\\x9cH\\x02(\\xdfm\\xc5\\x8a\\x91\\xaa\\x1fTA1&?\\xac\\x8c\\xb6\\x9aDVR\\xc45\\xb1\\x91\\xd6,\\x96D&\\x8bib\\x7f*\\xe9\\xe1)9\\x8f\\x82(\\x14\\xd4\\x81,P\\x10\\xdd\\x0c\\xa9n\\xa5\\x84EF\\x84*\\xd8\\x1b\\x90\\x11U\\xed2\\xab\\xbd\\x93\\xd1\\xd8w\\xf5\\xe0c\\x95N(k\\xb2k\\xf6\\xc30\\xbe\\xc6\\x0f\\xd7M\\xafQ\\x03K\\xe9_#gX\\x0f\\xaf\\x95\\xcb\\xbe\\xd7\\x8b\\xa3E\\xfd\\xbd\\xbbw-cj4\\xfbPf\\x1b\\xd7\\x91\\x9f3i|K\\xcb\\xd0\\xd5W\\xa6\\xa2\\xc4\\xa3G~\\x14G\\x17\\xcb8O\\x1f?&D\\xa5s\\xab|\\xd5G\\xcb\\xb4S\\xa7\\x07o\\x14\\xda1\\x10\\x1c\t\\xc6\\xf4\\xd4)\\x94\\xa8\\x96rb\\xb8P\\xae\\x18\\xb7\\xa5 jS\\xa1\\xa8T\\xacZ\\n*\\xae\\xf9\\xb4\\x89kf\\xc8p\\x04\\x82\\xe18u\\x94\\xf2\\xd6V\\x10\\x80\\x8e\\x05\\xe1\\xd5V\\xd0\\x8f.Fl\\xe1$\\xba\\x99\\xdd\\x0b\\xd0\\x16\\xdbA\\xf9r\\xde&\\xefV\\x8f\\xd2\\xe4T\\xfd\\xfbX\\xe3c\\xd6\\x9f\\x9a\\xbeC\\xbb\\xd5\\xe4\\xea\\xa6\\x143\\xa7\\xa7\\xae\\x9a\\xb0\\xafz\\xac\\x0f\\xc1Q{_\\xb1x^\\xc6\\xeb\\xc2\\x8c\\x043\\x16~\\xca\\x02\\x19\\xb0X\\xd4|{\\xb1\\xe2,\\x8a3\\x1fT\\xf4A\\x94\\x063\\xae\\x86:h\\xf3\\x83u*\\xef\\x05f\\xad\\xce\\x1c\\xe1vk\\xdd\\xd9Z\\x1b\\x0c\\x98\\xfc\\x04X1:~w\\xa7\\x1f\\x122*0\\xb3\\x18~,\\x86_\\x07\\x91\\x00)\\xa6\\xa5\\x98\\x96\\xe6\\xabU\\x18\\xf0\\x19\\xcbb\\x1dj\\x1e\\xe3\\xe7+>\\xcd\\xf8\\x8c\\xf9\\x11Bg@8\\x8b\\xd5\\x9f\\xe6\\x8b\\xfa\\x85\\xc29D\\x85s\\xc8\\x1eiA\\xae\\xc3~\\xbf+h\\xe0\\xb6\\x86\\xe3{,,0K\\xf4x,\\xfa\\x1e\\x8a\\xb7I\\xcfcy\\x07\\xc8\\x89\t\\x9a\\xea6\\x8bp)\\xaf\\xb4p\\xb8\\xc6`)\\xcb\\xf3\\xfac\\xf3\\xa1B/E\\x8e\\x9bT\\x07\\x8f\\x02\\xec\\xfa+qM$\\xe7k v\\xfe\\xe1\\x11;\\xef\\x8c\\xd8,\\x0d\\xa2\\x93\\x90c\\xfc\\x05\\xc9\\x06\\\\\\x0f\\xcb\\xaf3\\xf1\\xb6\\xf0R\\nC\\xbfSB\\xbc\\xe1\\x80\\xd35mu\\xf0\\xces\\x8cww\\\"\\x7f\t\\xc6\\xac\\xc4\\xfd\\x1c\\xea\\xc9[\\xed\\x8bm\\x0f\\xe2\\xe0`\\x1aG\\xc5\\xdd\\x89\\xcbKVM\\x81\\xde\\x94K\\xbb\\x1d\\xfb\\xd4\\xa3\\x8c\\xce\\x8c\\xc6:\\xb5\\xf0\\x1e\\xa0\\xf8k\\x81\\xecj&Eu(\\xe1C\\x89_\\x1d\\xba[\\xb8(\\xd0\\x7f]\\x91\\xc85\\xdee\\xaa?\\x806K\\x87\\x8f\\xb3\\x89[g0\\xf4\tH\\xca\t\\x88-\\xc0\\x8eL\\xca\\x02$\\xe5E<\\xe3\\xad\\x1c\\xc5u`h#\\x19\\xc8W~\\xa7\\x04\\xe3W\\xc6\\xb9\\xa9\\xb1\\xb6\\x02Z\\xdf\\xd5\\xdaiR7\\x0e\\xacb\\xd2\\xb5Q\\x89g\\xbf\\xfeZ^\\x87#\\xc3o\\xb6\\x8eY\\xe3\\xba\\xc0/E\\xeb\\xb0\\xc5\\x80\\xfc\\xc1\\xc2O_\\x9eE\\xc5\\xdd\\xf2\\xb0\\x13\\xe9g\\xcd\\x0c\\xda\\x00\\x18\\xb4n\\xac\\x19\\xbb.{\\xc6~\\x05\\xa4+\\x8e\\xd6\\xd8\\xa2\\x89\\xd3\\x81\\xe6)\\xc78\\xa05\\xd8\\xf5]o\\xe9\\x16\\x08R\\xac\\x0c\\xdd\\xc32/\\x18\\xf4\\\\\\xbfxl{\\xc4\\xa0Vb\\xe69\\xf8\\xf3\\xd0a\\xdc\\xbe4\\xc5\\x82\\xfb\\xe1\\x9b\\x97/\\x06x\\xd6\\x0d\\xe6\\x17\\xd6p\\x01\\xeaYs\\xa5\\x81}\\xa8\\xbe\\xf9uXjq\\x04;f\\xb1<\\x9b\\xf6\\xcb+\\xa0\\xcb\\xdb\\x8bvs2\\xf5\\xdc\\x18\\xcaT\\xdc|l=dYe\\xa6\\xb3\\xf6\\xa3\\x98\\x92\\x05\\x89\\xbd\\xb3\\x03}\\xa4v\\x86\\xa8\\xe8x\\xe0l\\x0c=V\\xcc\\x9er\\x1eR\\x99\\x9b\\x02V\\x03\\xf6\\xac~,\\x85\\xedc\\xc1\\xa7\\xef\\n0\\xa6\\x1e;\\xce3\\x96\\xf0)\\x0fN\\xf9\\x8c}?e~\\xc6\\x82h\\xc6\\xcf\\xd9\\xf7\\xd3A\\xcfc\\xc7\\xe8\\xdb\\x0b\\xeeI\\xd7\\xc0f\\x9f\\xdd\\xefd\tJ\\xdf\\xa2\\xe5t\\xf8\\xed\\xd3\\xc1\\xb4\\x15\\xc4;y\\x1f\\xd5\\xaf\\xb0\\xa6\\xd5\\xde\\n\\x02\\xedv\\xa2\\x8e\\xac3\\x8d\\xed\\xb2>-K\\xf1\\xe6\\xd6[\\xba\\xe8`\\xba\\xa9\\x9ekN\\xe9\\xffwX\\x8d\\xaf\\xf0\\x8b_\\xad\\xc9it:\\xc0\\x15\\xcc\\xc28\\xec\\x88\\xb3\\xd3.\\xcd2\\xd9\\xf4\\x1c\\xdc\\x12\\xdc\\x08\\x1f2/@=o\\xad\\xd3\\xbc$\\xba-\\x98\\x9bcJ\\xf89\\x84\\x96\\xfc\\xce\\xb0>\\xed\\x8c\\xf5!`}\\xdd\\xc1\\\\\\xfd1\\xb0>\\xbc\\x06\\xd6\\x877\\x8e\\xf5\\n\\x85}t&\t\\xfcS\\x1b\\xd7R\\xac\\x94\\xb9X)\\x9dPZ\\x94^\\xc1J\\x99w\\\\)\\x1b\\xab\\xf5\\xe0\\xf4\\x8e\\xcb3\\xd9\\xbc\\x99\\x1c\\x1fF\\x9f\\xf8\\xb3B\\x85!2j<\\x1b\\xc2\\x00\\xaf\\xf3\\xf7\\x98\\xbc&r\\x18\\x81\\xa6\\x0dn\\x95\\x90\\xb5\\xf4K&\\xcaO\\x97\\xac\\xdfa\\x99\\x9e\\xcaKe+'\\xf5\\xd8\\xdc\\\\\\xed\\xf3n\\xab]\\xc0mQ\\x80m\\xf1+Z\\xc7F\\xea{\\xed\\x8a$3}\\x0eQ\\xf8\\xa3\\xa4V\\xf2\\xfa\\xdfA\\xe1\\xa4\\xfe\\xf2\\x92\\x0d\\xd9\\x1d\\xc8\\x80\\x97\\x8c\\x8d\\x18\\x87\\x0b\\x93p\\xdb\\x0f\\x18\\xb4Jk\\xef-\\xdf\\x9e\\xd1\\x94\\x04.\\xce.y\\x9a\\xfa'\\\\\\xf31\\x94f\\xfe\\xf4\\x1d\\xdce\\xea\\xd4\\xf8\\x82n\\xbc\\xc8Go\\x9e\\xc0\\xac\\xf8\\x1eK\\x81\\xc2\\x93\\xf7+\\xc5\\x03\\xb1m|\\x94D\\x02\\xd1\t\\xc5{\\xe0\\xb19\\xc0$Go<\\xe0b'FV\\xf4\\xa9\\x1f\\x86AtR\\x88\\x1cR\\x06+\\x07\\x1cs\\xb3Y\\x90\\xf0i\\x16^\\xb0 eQ\\x8clj\\x9c\\x08\\xa2q|\\x01\\x81U\\xbeZ%\\xf1jS\\x10\\x9d\\xf4+\\xb6\\xf2\\xa7\\xef\\xfc\\x13>`_\\xa6\\x9c}U48\\x00\\x86\\xb5\\xf8\\xe9\\xb8_\\x89u6\\xf5\\xc3P4\\xb1\\x1c\\xb0\\xd7\\xdc\\x9f\\xb1e\\x9cp\\xc1\\xb9.\\xb2l5\\xbasg~<X\\xf2;y\\xca7\\xa1\\xf6f\\xf9\\x1d\\xeb\\\"\\xd1\\xf0P\\xccx2\\x0e&\\xec\\x00nV\\x16\\x97CU\\x1a\\x12\\x89\\xb7\\x0b^\\x9eu*D3H\\xc1\\xcaQ0\\xde)K\\xf8/\\xf2 \\x01\\xa9\\xa2~\\x9eB\\xbe;\\xc8Ry\\xd4\\nR\\xf6\\x95\\xf8\\x90\\xa0\\xa32\\xd6\\xe8\\x07\\xf9Fq9V}H\\x0cn\\xc4\\xb8S\\xc1\\x91\\xb6K\\xd7LW\\xcccxg$C\\x1bTx\\xca\\xe2\\xd8\\x15\\xa4\\xafUO\\xeb\\xf5\\xb6Lg.\\x16\\x8c?\\xa51\\xbeeC\\xf6\\xec\\x9eF\\x95\\xae\\xc5\\xae\\xc2\\x91m\\x9f8\\xb9[D\\xb0\\xe8\\xb4UT\\xb6\\xd4\\x0bQ\\xbd\\xeb\\xae*R\\xb9b\\xeb\\xe5<\\x99\\x93R\\xbf2DClI;gO\\xcf\\x02\\xf4\\xdc^\\\\\\x95\\xa3\\xe13\\xf5S^\\xdc\\x80\\x1e5\\x14\\x91\\x9a\\xf7\\xa6\\\"\\xe5\\xddl\\xba\\x14+\\xa1\\xbd\\xb1EO\\x066\\xa4L\\x11\\xda\\x9b!\\xae\\x89\\xb3\\xa2\\x19\\xc9.\\xd9[!\\xefN\\xab\\xb6\\xb3\\x01?\\xe5\\xc9\\x85\\xb3l\\xb9n\\\\\\xbd^\\xce\\xf5&l\\xa3d\\xda\\n\\xeb\\xc6\\x912\\xe3\\xd6d\\x84\\xb7&#yk2l\\xd3\\xae\\xacu\\x8b\\xb2\\xfe\\xbco\\xbdt\\xad\\x858\\xde \\xae\\xbb\\xabG\\x8c!\\xc6X\\\"I\\xb7\\xdb\\xdcI\\xed6w\\x17!\\xc2C\\xb6\\x01!\\\"\\x83\\xda-\\xea\\xc6\\x9a\\xac\\xd4\\x85\\xc4x\\x85Z\\x9b\\xc8\\xa1\\x1d4k\\xdc\\xec\\xa6\\xfa\\xd4\\x91\\xeb\\x05/>]ov\\x83\\xf0Z\\xe0\\xc7\\xc6\\xd2\\xf1\\xc7\\xc3I\\xa7\\x81\\xb0.\\xb2\\x1d\\x1bFK\\xb7\\xb0\\xed\\x0b\\xd6\\xfc~\\xdd\\xeb,M\\xe6N\\x9a\\xaf\\x98*=\\x8bu\\x7f\\xaa\\xcb\\x0b\\xd9\\x01\\x93vQ\\xc0\\xf9i\\xe2\\xf5\\xd7\\xfc\\xe4\\xd9\\xf9\\xaa\\xbc\\x07\\xdec\\x1d\\x1d\\x01\\xc9/)\\xd3#\\xbcr\\n\\xee$\\xdeh)\\xd9\\xb8\\xf7\\x1b\\xbf\\xa1\\\\o\\xbc\\xf5Oz\\xb0\\x80[\\xac\\xc92\\xbd\\x83\\x98l\\xc2\\x11\\x9d^\\x89\\x8e\\xab\\x1e\\xd4\\xe3\\xc8\\xd9\\x80{aw\\xdf\\xa59a\\x86\\xb1\\x14\\xd4\\xaeTi\\xe1\\x1dd\\x13\\xf2jnNH\\xf9\\xb5\\xe1\\x04\\xa0\\xd1\\xc1Re\\x86>\\xf53\\xed\\xeb3?\\xe3=\\x1a+\\x8d\\x9a8\\xb7e\\xdd\\x84\\x9f\\xf0\\xf3\\x15q\\xc5\\xd8\\x86F\\xdd\\xe0y\\xdc\\x8c\\xac\\xb4@\\xbf\\xd8\\xb1\\x9b\\xb7jD\\xda\\xa6m\\xb8u\\xdbS\\xa3\\xf7#\\xe0l\\x1a\\xf7\\xd0\\xe6\\xad\\x18\\xcb\\xc0\\x0c4\\x15\\x90`\\xee\\xd0\\xa3\\xa6\\x0eu\\xa51mN\\xdf\\xaa\\xbfd%\\xcd\\xf9$\\xdbG\\x15[\\x99\\xe2\\xb1y\\xed\\xa4\\xc2\\xf6\\x05+=\\x1f\\xe8\tsO\\x93\\x8a]\\xc3\\x0fA\\x93\\xe3\\x9dB\\xa5\\x7fC\\xed\\xf7\\x86\\xf7\\x06\\xbb\\x03\\xe9y\\xe0J\\xad\\x9d\\x96>\\xa6w\\xef\\xba\\x83\\\"b\\x02e\\xcd\\xdbfl\\x1c\\xc8v\\xee\\x91\\xf6\\xbd\\xf7\\xee\\xeeY\\x0cv}GI\\xe6nb\\x1c\\x86\\x1d1v~\\xb8M\\xbb\\x8d\\xae\\x9b(\\x8b\\xce\\xf6\\x96\\xc1y\\x10\\xa5\\x1d'\\xb5\\xbe\\xe0\\xd5\\x99eLH\\x0fS\\xab\\xbd/~r\\xc4z\\x9f>\\xfb\\xec\\xf9\\x8bgG_<y\\xf1[\\x16\\xdf\\ni\\xe6g\\xc1\\xb4[\\xd9\\x95\\xc2\\xf0N\\xa5\\xa5?\\xd55*,\\x82p\\xf6t\\xddZ'<\\xfb\\x14\\xa9\\x01D\\xd8\\xa9\\xd69\\xfa\\xe2\\xd9\\xeb\\x1f<\\xfb\\xd4^\\xf5y\\x14d\\x81\\x1fB\\xe4\\xa25\\xab>\\xd5\\xba\\xbbN\\xd5\\x84Gp\\x97V\\xd5x\\xf9\\xe2\\xe93+\\x08\\xe5\\n\\xfaI\\x10\\x86_\\xa0\\xe3\\xd2\\x0e )\\xaa}\\x1a\\xcc\\xaePK|\\xec5*\\n\t\\x90\\xda\\xf0h\\x11\\xe7\\x02\\x1c\\xb2\\x8d/W\\xb3\\nD\\xbb\\x0e\\xb2^\\xafK\\x7f?\\x0dfW\\xa9\\x06\\x9f\\x8b\\x96\\x9d\\xe1\\xf3\\xe5\\x8b7O>{vt\\xc59\\xa1j\\xaf\\x0dd\\xaa\\x915\\x86\\x9eC\\xd1b\\x8eF\\xac\\xf7\\xf2\\xc7\\xcf^\\xbf~\\xfe\\xe9\\xb3\\xa3O\\x9e\\xbcyF\\xf0>f;\\xa1\\x95\\xe8\\xc0BL\\x82S>\\x83\\xd5\\xf4Y\\x12/\\x1bVd\\x97oM\\xad\\xdf\\x9a\\x05\\xe9*\\xf4/^\\xc0\\x8d\\xefN\\x1c9\\x03\\xc2\\xab\\xd5cu\\xb1\\xaez,Z#ES;\\x7fMp\\x9c-\\xa1\\xe4\\n\\xb5G\\x84j\\xee\\xa8\\xe2\\x86-\\xea\\xf7])\\xd0\\x1eG\\x93\\xb5T\\\\\\x04)\\xed\\xdco>0j\\x8b#\\xba\\x0c\\x99f\\xe4\\x91\\xaeBYC\\xd7\\xae\\xdc+K\\x87\\xae\\xd1\\x17c\\xefX\\xa3;\\xb5\\xba\\xe0L\\xa8\\x9e\\xb6\\xcf\\x16\\x8e\\x91\\n-\\x8f\\xc8\\xd2k!\\xa4\\xb6\\x1b\\xaf\\xd1\\xed\\x95\\xc6\\xa5*\\x10\\x16i\\xeb\\xc2\\xaf`\\x1e:w`\\xa3{Q\\xd6m\\x0d\\xb1\\xea:\\n\\xa2\\xf6V\\xd5\\xa3\\xf8\\xbcv\\x9b~\\xf5@\\x7f\\xea\\xa6\\x80QgS@\\xa6\\xc4^\\x82[\\x04Mg\\xb7\\xcf\\x8a'p6b\\x8f\\xdd\\x06#\\xda\\xa7\\xa1\\x9f\\xa6#\\xf6[q\\xce|\\xd0\\x87d|\\xb9\\xca\\x82\\xe8\\x84e\\xb1\\x0c=\\xc3|\\x96\\xf0\\x94'\\xa7|\\x06\\x98\\\"z\\xea\\xb1\\xaf\\xbe\\x9f~\\xe5a,|\\xdc\\xb0\\xa3\\xc3\\xdb\\x19;\\xe6\\x0c\\\"\\xe4\\x83h\\x17f\\xb4\\xc7\\xde\\xf1\\x8b\\x01\\xfb\\x14\\x9b\\n2\\xe6\\xa7\\xcc\\x8fJ\\x83i\\xd5\\\"\\xa4p\\x7f\\xf6P\\x949\\x0b\\xc2\\x90\\xa5\\x99\\xf8{\\xcc\\x99?\\x9d\\xf24\\x0d\\x8e\\xc3\\xa2q\\xdd\\\\\\xfc6\\xed\\xa4\\xde\\xf6(\\xb1\\x17\\x00\\xad\\x83\\xd4K= \\xfdZgv\\x98\\xc6s\\x87\\xe6D\\xb3\\x03\\x16\\x8e\\xa3\\x89\\x94\\xd3w\\xef\\x07+O\\x97\\x81Cm\\x87 \\xf6\\xc8=\\xd6\\xeb<\\xbfb*\\x05d/\\xe2<\\xd1l\\x85AA\\x96-\\xfc\\x88\\xc5\\xd1\\x94\\x0f\\xd8\\xdbE\\x90\\n\\xc8\\xcf\\xc3`\\x9a\\xb1\\xa5\\x7f!\\xe6f\\x96s\\xd1\\x92\\x8f\\x9b\\xda\\xa0\\x87\\x0e\\x90O\\xe3`\\xe6p\\x8c+\\xbf\\x80\\x17\\x8fQ\\x01\\xa7lO\\xb3\\xfeW\\x7f\\xe4Gh\\x8f\\xcb\\xf5\\xa7\\xbdY{\\x89\\xf7He\\xd6\\xa1i~\\x9e\\xc5\\xc7A4\\xabZ\\xdc\\xaf\\xa1\\x82\\xa6\\x03\\xeb0\\xcdF0\\xad#V&\\x10+\\x1dgv\\xc4:&\\xaa\\xdc\\xba%\\x90\\xa9\\xca\\xc2\\xa1\\x9b\\xd8\\n\\x1eA$\\x84\\xb9?\\xe56\\x84\\x8aOy\\x92\\x043\\x89R\\xf3$^J\\xa4\\x12\\xb5Y\\xba\\xe2\\xd3`\\x1eL\\xc1\\xc0|\\xc0\\x9eEi\\x8e\\x18\\x96a\\xa9%\\xcf\\x16\\xf1\\x8cE\\xfe\\x92\\xa7l\\x16\\x83\\x02X\\xb4\\x18\\xfa+t\\x9b\t=\\x91\\xc5\\xc0\\xd2\\x10b\\xd0\\xca\\xde\\xebL\\xabtq{yI2\\x8cW\\x19\\xd9\\x07Y*Y7e\\x1c0n\\xf6`\\x19V\t\\xa7\\xc56\\xd4$\\x0d\\xb7\\x8d\\xe1\\xe6\\xa9 \\xfb\\xe5\\x00q\\x02\\xe3\\xa4\\xec\\x94 \\xe3r$\\xec9\\x92n\\x8f\\xfd<O3Y7\\xe1'y(6(eJ\\xef\\x89}'\\x03\\xd3\\xd0\\xf5\\xbf\\xbf\\xf6\\xd7h\\x82zZDF*\\xa5p\\xd6\\x15\\x1f\\x83:\\xe9\\xe8(\\x11\\x9d}\\x92g\\xf1'A4{\\xe5\\x07\\x89%Re5JeT_f>,\\xb3\\xe9\\x00\\xb9\\x7f\\x98R\\xf9\\xee\\x92\\xfe\\xde\\xd5\\x03s\\\\o\\x0c\\xed*r\\x0c\\x89\\xd8\\xb6+\\x9d\\xca{\\xa1\\xd18\\xef`9\\xb6\\x82a\\x1b\\xdfk\\xd7\\x03\\xce\\x9d\\x15\\x86\\xdc\\x99\\x9a\\xb5]6\\x1d\\xe7\\x131\\xe8\\xb0\\xa5\\xa5\\x06\\xbf\\xcf\\xfa#\\xc64\\xa3\\x08`[OY\\x93\\xdd4\\x18\\xaf\\x80\\xb3\\xee\\x15\\xdcr\\x1b\\\"\\xa9\\x18(J\\xdem\\x07\\x03C\\xfd\\xb6I\\xd1\\x9fS\\xe9>;m\\x0dX\\xaa?\\x81\\x03N\\xc4\\xedL\\xc0\\xb2N\\x00er}\\x05~\\x19\\x15F\\x04\\x82D\\xb3U\\x1c\\x06\\xd3\\x0b\\xf6\\xfd\\x14P\\xfa\\x1d\\x87\\xd7\\xb3\\x05\\x8fp\\x05\\x9e\\x00\\xbbY,MQ\\x05\\x88\\xf1\\x12g\\xbf\\xa1;\\x07,\\xc1\\xc8\\xa5\\x0bG\\xbc\\x08d`#\\xaa\\x87\\xe8\\xc1\\x17\\xcb\\x9e\\x16e\\xbbA_\\xba\\x83\\x96\\xb5;pVP<\\xc6\\xa0'\\xb9\\xf8\\x8eWTn\\xac\\xdb\\xc0+\\x98[|'B?\\xb3\\xee\\xf7\\xd5cI\\xe0H\\x83\\xb2\\x06_\\xfdDz\\xe6\\xb1\\xde\\x92''\\\\\\x858z\\x11\\x7f\\x9a\\xafB\\xb1!\\xf3\\x1f\\xf1\\x8b\\xd4qG\\xec\\xa9\\x1f\\x89m\\x17\\x8a\\xb1(\\x8e6\\xb1\\x99\\x14\\x08x\\xe62\\xe2\\xc8\\x82Q\\xca*:=`\\xf8Z\\xbf\\xf56\\x91\\x06-\\xf8\\xb5\\xec,\\x96\\xf4;\\xc5\\xed^p\\xfa\\xa9\\xbf\\xe4\\x18\\x06]l\\xbd\\x9dv\\xd6\\x87\\x02D+\\xf0\\xf0*\\xf6\\x044\\x92SE\\xa7~\\x9eJk\\xb2\\xb3\\xb8.\\xb6u\\\\\\xb1\\xc5\\xd5\\x0e\\xd3\\x8e\\xab8\\x0e\\xc9w\\x8b\\x15P\\xe9\\xa7\\xd8\\x1c\\x17\\\"\\xf5\\x1d\\xbfH\\x15\\x0b,\\x19S\\xcb\\x0dUeB\\xd8\t-\\x16m\\x96\\x88:{i\\xdd\\xf70\\xb04F\\x83\\x15\\x10\\xf1\\xcaH\\xb2\\x96{\\x8e\\xe2\\x81C\\xad\\xa5\\x96]=\\xaaL\\xe2\\xca{(I{\\xe1\\xd2\\xd6#\\xb2\\xef\\xde\\xe0^\\x98\\xf0\\xd5\\xcc4\\xa5\\x9b\\x13\\xe3\\x14\\xc0\\x0b\\x1dV\\xa4\\xdbz<\\xbd6\\xe0\\xad\\x00\\xb7\\x02\\xf5\\x8a]]\\xb6\\x1e\\x1524\\x9e\\xa3\\x94\\xc4\\n\\xec\\xb5/\\xd5[1C\\xd1\\xa9\\x87P\\x13\\xb4\\x82\\x86)\\x83\\xd6\\xa3\\xa3 \\x85J`\\xe3\\xb7\\xb1E\\x96&H\\xaa\\x89\\xb4\\x17\\xed\\x1d\\xac\\x88\\xea\\xaf\\xdcG\\xda\\xde\\xa5S\\x1f\\x8f\\xad}\\x94\\xfe\\xc1\\xa5\\x02\\xa9\\xb3p\\x0b\\xfa\\x87\\xf2\\xf8d\\xc0\\xa3_\\xe4<\\xe7\\xaf\\xb5\\xa6$\\x86\\xad}z-\\x06\\xdc\\x11N\\xca\\x16g\\xa3\\x0e\\xb0\\xab\\xc3\\xea\\xc8\\x1e\\xd6\\x97iF\\xa2\\xce\\x91\\xaeT\\xd7y{vL\\x90\\xb6\\x12\\xb2M\\xe42\\xab\\xa9T\\x93\\x06sPV\\xa2\\x89yXP\\x91\\xd7n\\xdd\\xea\\xf0e\\xf5T.\\x11r\\xb2]\\xcf\\\"\\xeag\\xfd}\\xb6\\xdd\\xd6>\\xab\\xc9,\\xdb\\x8f\\x05L\\x9e\\x88\\xb2q\\xc4\\xfal\\xd8\\x81O\\x85\\xe0\\x0b\\xfbH\\x99\\xe2\\xab\\xfaAx\\x0f\\xe8\\xab\\\"\\xda\\xad\\xa4t\\x9b[C\\xe7&|\\x0e\\x0e\\xc4\\xbc\\xca\\xbaP6\\xeaQi1\\x9fq\\x19\\xcb\\xc7>\\x90\\xc2\\xcaWT\\xa9\\xb1\\n\\xec\\x80Lv\\xdcV\\x81^\\xe0\\x10\\xacY\\x0evuUs2`\\xa6\\xbfO|b\\xc4\\x96\\xe2\\xe4+\\xd1\\xbf\\xb8\\xae.x\\x17\\xf1\\xe9\\x9e\\xd8\\\\t\\xf5\\x948\\x05 \\xbf/\\xa8`\\x1ah\\x8a\\xbb\\x9e[\\x83HN\\xaf\\xd6\\x96\\x13o\\x02\\xc2\\xf2\\x8a\\xb1K\\xc4\\xcf\\xd8\\x91\\xa7'V|\\x88`4d-\\x93Bq\\x19\\xd4/\\x1f\\xc8\\x90\\xa7\\xceJ7\\x00\\xcf\\\\\\xd7c+'\\xf3\\xd8\\x89z\\xe1\\xea\\xe5\\x02v\\xd8\\xbaZ\\x04\\xae\\\"\\xa8`\\xf3\\x85\\xa6\\xa4^\\xccqAV\\xa1w\\x0e\\x15\\xed\\x1e\\xeba\\xe0\\x03879\\x83\\xc1@0\\xcc\\xa6h\\x0b\\xa7'X\\xae\\xd0\\x1a\\x85\\xf9\\xec+l\\xe0+\\xc9I\\x023\\x9d\\xba\\xfa\\xf8e\\xa0\\x12\\xa7\\x96$\\xc3M5\\xf2;M\\x96I\\xd70\\xe89m\\x89i\\x06\\x867e\\xf1\\xc8\\xb19\\xf3\\xb3S=9\\x00#\\x863wep\\xcb\\xe1\\xdd\\x1d\\x88ny\\xb3\\xe3\\xd9\\xde\\xa3mq\\xee\\xdd\\xdb&mq\\xee\\xdd\\xab\\x97\\x07k\\x1c\\x15\\xea\\xe7E\\x1e\\x86\\x93\\x9a\\x9e<\\xd7\\x0b|\\xa9,\\xd8\\xeb\\xa5@s6\\xf0\\xc5\\xb9x\\xe0\\x0f4\\xf3M6bx\\x9c*\\xbb\\x9f\\x0d\\xfc.\\xb0\\x8c\\xb4`i\\x15+K\\x0c\\xf7\\xe5\\xb3\\x11\\x83u\\x90\\x8a\\x15\\x8b\\xf7\\xc2\\xd0n5\\x1e\\xf8\\xe2e\\xc4\\x02x\\xb9Y\\x88\\xdf\\xbb7$ N\\xd0\\xc1\\x94\\x87s\\xe8\\x9e\\xf6\\x7f\\x80\\xdd\\x84q\\xc8W\\x99cN\\x96\\x80\\xe6\\xe5%\\x8b\\xc5\\x9f\\xcfT\\x87{j\\xa1,\\x82\\xb4\\xe7\\xea\\x01\\n\\x11\\xa8\\xc1\\xd5\\x87\\xe8\\xd8'D\\xf1\\xdd\\xb6\\x03:\\xfe\\xa1\\x07W\\xd3Ka7K\\xf6\\xfc\\xbd[\\xc4\\xa3\\x8d\\x9c\\x9d\\xa1{#\\x06j\\xf4\\xaa\\x90W\\x07-\\xe2\\xd2\\x00\\xec\\xc7\\xab\\x12\\x01s\\xa5\\xc4\\x05j\\x9b\\x8b\\xe4\\xa6\\xd0_\\xf1J\\x01B\\x86\\x83,\\xaaRB<\\xe8V\\xa1.d\\xcb\\x92\\x0b\\x82]\\xe2R\\xfcT\\xeb\\x88z\\x14\\xe0j\\xe7\\x95\\xf7l\\xea\\x83\\xc1-7T=\\xea\\xf8\\xea\\xcb.\\xba47+/\\xcc\\x1d\\xa8\\x0eDl\\xc4f<\\xe4\\x19G\\xc7\\x1f\\xfaq\\xf6\\x06\\x16g}\\x82\\x8by\\xe8\\x0e{\\xd5s5\\xae\\x9b\\xec\\x9e\\xa0\\x1d\\xf7\\xdc\\x81\\xaf\\xee\\xb0\\x9ep\\xb1IcW_\\xce=\\xd9}cI_#\\xd2Q}\\xb4\\xf6X\\x99E\\x19R\\x05\\xa3D<N\\xe6Dn]\\xd1S}\\xbb\\x91~6m\\x08\\xea\\n*E\\x8bn\\xa2/\\x15'aF\\xbc\\xd9\\xd3\\xf2z\\x8e\\x98\\xce\\x075\\xc4\\x87\\xad\\xa0\\x12\\x81\\xb3\\xb2\\x1b\\x1c\\xe0\\xbf\\x91\\xa5\\xccY\\x10\\xcd\\xe23v\\xa0^\\x14\\xe9(n\\xddq6\\xaaK\\x9f\\x94\\x0d\\x80\\xd8\\xeab\\x97\\xa2\\xb5~\t\\x95\\x1a\\xad\\x85`\\xac\\xf7\\xee\\xbb\\x0e\\xb7\\x90]}\\xf4\\xdd\\xd8\\xa0\\x00]\\xec\\x9d\\xf1\\xe3\\x95?}\\xf7*\\x0e/\\xe6A\\x18\\xdad9Y\\xb9h\\x91\\x1b%E:\\x19\\x9aW%<\\x92le\\xf1S\\xf0\\xd4\\xaeZ8\\x03\\x84h\\xa9\\x0b\\xf6X/\\x8c\\xfd\\x19\\x9f\\xf5<\\xcb\\x11\\x92G\\xf9\\x92'\\xe8\\x00\\x7f\\xc3\\x12h\\xf4\\x84w\\x95\\xae\\xa8\\xady@\\xcb\\xda\t1Ac\\xdf\\x83\\xef\\xbc\\xdf\\xc1\\x8d\\xf4[\\xa2I\\xc7\\xce\\x93\\x8dgu\\x04b\\xfblh!;\\x8c:=\\\\c\\xfd\\xb7\\xd1\\\"\\xc0[O\\x8a\\xa0\\xf1\\xa6Q\\x15e\\xc9\\x9bJp\\x93z\\x10\\x1f\\xa7<9\\x15C\\x17gn\\xb8\\x05\\xac%\\x8ddP^q\\xa8V\\x89=\\x88\\xe8\\xae\\x15\\xdaG;\\xb9\\x0c\\x9dck\\x05\\xc9\\x1d\\xf8;\\x81HE\\xc0c\\xf8g\\x00!7R\\xcc\\xad\\x87,\\xa8\\x08x\\x02\\xdae\\xd1i\\xe1\\x14' d3[\\x1e\\x0db>\\xf6'x\\xf1S\\xbc\\xa0\\x83#\\xdb^\\xc54\\x91\\x88\\xde\\xe3\\xba\\xf5\\xd5\\x96IlS\\x0b#Es^\\x1b\\x1d\\x04eU\\x90\\x15\\x02\\x82\\xa2b\\xa3\\xc8\\xf4T\\xf3\\xb0\\xd5,\\xf9\\xc2\\x83!v\\xdd\\xb66\\xf5'\\x03\\x8fc\\x82\\x9d}\\xfe\\xe2\\xf9\\xdb\\xc6\\xe2\\xef[\\xae\\xa8j\\xa7\\xb7\\xd8e\\xd9\\\"\\x89\\xcf@\\xa8\\x02\\xb7\\x88\\x9c\\xdb\\xaf\\xf9,\\x9f\\xf2\\x84\\xf5n\\xb3>\\xcb\\xc0\\x0dHOb0\\x9f\\xb1b\\xabd\\xb3<A\\x95-H\\x90\\x82\\xaf\\xa5\\xf1\\xcd\\xf39\\xaa\\xd7@\\xec\\xb3\\xf2\\xd3\\x145q\\\"-\\x91-\\x07i\\xd9\\x8c\\xc7.\\xe2\\x1c\\xe5\\x1a\\xfc|\\x15\\x06\\xd3 \\x0b/\\x8a\\x05\\xb3\\xe0\\xaa}lp\\xc0\\xde\\xd6\\x93@\\xff\\x16\\xc5`!X\\xb4\\n\\xdd\\x10\\x0d\\xcf\\xe2\\xe8v\\xc6\\xce\\xfc(\\x13\\x9dHy\\xc6|\\xe9\\x80@\\xac\\x13\\xd0\\xdf\\xc9^aG\\xa6~\\x04\\x86\\x1f\\xc0\\xdcH\\xc3A\\x16\\xcf\\xb5\\x96\\x9b\\\\\\xcb\\x88\\xe9\\x0f\\x90\\x16\\x88V\\xcf\\xef\\xbcz\\xfd\\xf2\\x93gG_\\xbe\\xf8\\xd1\\x8b\\x97?yq\\xf4\\xe4\\xe9\\xdb\\xe7/_\\x1c\\xf5X\\x9f}\\xe1g\\x8bA\\xe2G\\xb3x\\xe9\\xb8\\x95\\xd0\\xe6Zp\\xcf=w\\x90\\xae\\xc2 sz=\\x15\\xc0\\xb7\\xf1\\xf3\\xb5\\xc9\\xed\\x8a^\\x88Z\\xf4v\\xc3\\x00\\x9f\\xae\\x81%\\xa0\\xdd_%\\xf1\\xb1x\\x0f\\xb2\\x05\\xf3\\x19\\x0e\\x1b>;`\\x9f\\xc2\\x04\\x89\\xe5\\x9a\\xc5l\\xe1G\\xb3\\x10\\xbdL(Lg}v\\x9b\\xc5\t\\x8b\\xb3\\x05O\\x98\\x0fk\\x10D\\x0c=\\x84\\xf0\\xc7=4\\xebZ\\xf9h\\x1e\\xc5/\\xc0\\xc6j\\x1a\\x83\\x97\\xd1\\x04,K\\x83S@\\x9d\\xc2\\xbc\\xa7\\xc08\\x0d\\xcd\\xa6y\\x92\\x80\\xd1\\x01\\xe0\\x94@\\x0e?\\xba`y\\xf4.\\x8a\\xcf\\\"\\xf5]\\x8f\\xe5Q\\xc8\\xd3\\x94\\x05Y\\x0d\\x89\\x83\\x88\\x9d-\\x82\\xe9\\x02o\\x10R\\x1f\\xa8 \\xad\\xc7\\x12~\\xe2'3h,\\xc6\\x15\\x83\\xdf\\x90`\\xe9\\x86\\xe6\\xe8TC\\xe0\\xec1\\xa2\\xec\\xe0\\xb6E\\x13Ch\\xff\\x9c\\x9aiP\\xe5\\x80i\\x14\\x07\\xe1x\\x03\\xfd\\xee\\xa2\\xb7\\x14\\xcbC\\xec\\x99\\x85NRi0\\x1e\\xb3-\\xb1Wh\\xfcuQd\\xbc5a\\x07\\xd5\\x9f#\\xb1\\x85\\x91\\xc3\\xcc\\xf4\\xc6\\xc7\\x94*A,\\x91T\\xa13an\\xa5\t\\x9e\\xf7\\xd9\\xc6\\x10wJ\\xb1cjN\\xfe\\xf2.N\\xfeN\\xa5iT>\\xf6\\x1bv\\x82)\\x18O\\x85\\x0d%\\xe6\\xd2\\xd1\\x9a\\xbd\\xc4\\n\\xfc\\xa5\\xcd\\xc5\\x01\\x81&\\x0d5\\xb2\\xd0h@t*\\xad\\x9fb'\\xb47\\xc8@+U%\\x08\\x16\\x0b&Z\\xff\\x12\\x8cC\\xc1\\x13\\xac<\\x00s\\x82fQb\\xdaM7mf\\x03\\x858\\xe3\\x80\\x05ldE\\xca\\xf7\\xb4(jX\\x91,o\\xefm\\xc3\\xb9k{\\xef\\xae\\xab\\xd9\\xca*,f1yJ/\\x14\\xdf`+3\\x10+\\x96\\xe4\\xf7z?\\x08N\\xb9\\\"\\x1e@\\xd5\\xd0\\x0d\\xc6m \\x9aQI\\xf6]A\\xe5z\\xb7A\\x9f\\xe2\\xab\\n\\xe0\\x82\\xeb\\xb6W\\xec\\x9aP\\x89CI\\x82\\xd0\\x0e\\xd8\\xdb\\x98\\x05'\\x11\\xf8\\x1eRM\\xb4n\\xae\\xab\\x84\\x9f\\x06q\\x9e\\xaa\\xddU\\xee\\x9a\\xb8_j\\x9b#\\x10\\xe78\\x9c\\xb1(\\xc6\\xed\\xb3\\xdc-ui\\x00\\xb9a\\xde.\\xa7\\x04\\xde\\xd6\\xe2z\\xcd)I:\tN\\x1a\\xe4&\\x99\\xa3l'\\xd4\\xf6X\\xdaH4KSX7!\\x8e\\xd5uI\\xe9\\x05@\\x0e\\xe2\\xa1Y\\xaf\\xf4\\x99W\\xcatk~\\x0c\\xeaK\\xafw\\x1cD\\xb3'\\xf0\\xb5\\xa7\\xe2\\xdc\\x1e')\\xe1sZl\\xa2~\\xd1q\\xaf\\x98\\xab\\xc2\\xdd*\\xe2g\\xf1\\x1dv\\xc0z\\xa0\\xf4\\x13\\xe7\\x9b\\xa2\\xff}v{\\xc0>\\x0df\\x88&I\\x90q\\xd6\\x0b\\x96\\xe2\\x88\\xc9j=\\x98'\\xf1\\xb2\\xa7c\\x84*\\xf71\\xf3S\\xb2\\xf0\\xc1\\xed\\x1a@*W\\xcf\\xeaG\\x99\\xd8<\\xcaD]\\x8f2\\xd18\\xb0\\x10\\xd4\\xdc\\xea\\x8b\\x95\\x9cQ\\xd0\\xae:1\\x1eq\\x12'\\x07\\xdd\\xa1\\x05\\x87\\x98\\xa6\\x97\\xba\\xce\\x92P\\xa95L\\xb4\\x9e\\x03\\xa9\\x1d\\xd7\\x83\\xadR9\\x17\\xa9(\\xfc\\xb9\\xbc\\xd4\\x97\\xa1\\x99Y\\xb9\\x9d\\xd6\\xef\\x1f\\xd5\\x97\\\\\\x93'\\xacR\\xa0\\xd9\\xcd\\xfd\\x15/\\n\\xda\\xf7=\\xc1\\x91\\xe4\\xa0\\x8e\\x16l\\x8b\\xbd\\\\h\\xb9\\x9a\\xae\\x1e\\xfb\\x0dN\\xf5\\x9c\\xf0L\\xda\\xce\\xe4\\x03\\xf5\\xde|\\xbaS\\xbd\\xea\\xea\\xc1S=\\x12\\\\\\xa9.\\xeb\\xa6\\x9e\\x06\\xb3\\x06z\\xcb\\x96\\x0d\\x87\\xa0\\x96^\\xfa\\xab\\x06\\xf5\\x12Q\\x8d;S\\x1b_\\xe9)]c\\x8d\\xa6\\x86\\xaeSN\\x8eX\\xaep\\x8f/o:\\x8b\\x94@K-\\x1f3\\x92\\xeb&l\\xc5\\x1b\\xbd\\xf9\\xd7\\x1d5hz(?M\\x83\\x13\\x10i6C\\xa6\\\"^\\x19\\xa2\\x13\\xee\\xfa\\xeajt\\xc6\\xad\\xe8Y\\xb9\\xb0l\\xce\\xb8\\xabF\\x10\\x91kjT\\xaa\\xfa1\\x14'G '\\x17dI\\xe9\\xf9\\xc7\tq1\\xd7\\xcaWQ\\xfc\\xd4\\x95\\xe8\\x93]&yt\\xc4\\xd3/\\xe2Y\\x1erC,\t\\xccEE\\x12\\x89\\x12\\xc8i\\xbc<\\x0e\\\".O\\x9d\\x94\\xd4\\x07\\x00\\xe5)\\x85\\xfbn\\xdd\\xb0@l\\x13\\x8e\\xc0\\x83\\x18\\x80\\x93\\x0c\\xcaN\\xb0\\x03\\x96\\x88C\\x85\\x01\\x11\\xe5\\xc1\\xa5\\xee\\x0cP\\xa7\\xc1f\\xc7\\x02e\\x07\\xf2k\\x00:\\x0bx\\xf6> pL-\\xad\\x98\\x8e{\\x15E\\x9a\\xac\\xdb.\\xd95\\xf6\\xfd\\xe6-\\xc8\\xb6\\xe7G\\xd4\\xa1\\xf3\\xd1>\\xdb\\x12\\xeb];\\x1a\\xd5N\\x9d\\xc5L\\x0e\\xbe\\xf0W`\\x80\\xa5\\x17\\xa0w\\x80\\xa4\\xf5\\x08\\xaa\\x18\\xe6\\xc1Y\\x90-\\xbe\\xc81*JZ\\x12d\\xeb\\xb5\\xab\\xec\\n\\xc2H1\\xdf\\xce\\x96\\x07\\x02I\\xd7\\x89\\xc4\\xf6\\xe5\\x80\\xff\\xfc\\x86\\xa3\\x9d(\\xef\\x0f\\xa4\\xefT\\xfe\\x82\\x9f\\xe3\\x8e\\xe7:1\\xe0o\\x02B\\xf0T4d5\\xbf\\xa3H\\xb5\\x95\\xb7\\xf6*\\xda\\xac\\xec\\xfa\\xcbG\\x1aSa\\xe8\\x80\\x0f\\xb1\\xac\\x04E2\\xe0\\xa3,\\xbe\\xcaK/\\xcf\\xa3\\xd3\\x18\\x0d\\xb7^\\xf9\\x89\\x0fa\\xdd\\xbf(|\\xecf\\x05+!==\\x90\\x04\\x0d\\xbc\\x05\\x89\\xadk\\xd7%\\xf6.\\x91uo\\xd7\\xc8\\n\\x8a\\xac=\\x97<\\xd6\\xfaV\\xa5\\xae\\xb4\\x1d\\xa9\\xac\\x7f\\xde\\xbc\\xfe\\xad\\x07pm\\xc1\\xd7\\x86\\x9a\\xa89\\xf6\\xd6\\x02Y\\xacW\\xa3\\xe0\\xffkLzE\\xef\\x1cAy\\x89i\\x0c\\xd4\\x0cSs\\x15|\\xd7sE\\x11g\\xbb\\xe3\\xa7\\xa0F\\xa2\\xa9C\\xedF in\\xe9\\xc9\\xeeM\\x16'\\x9c\\xcdb\\x8e\\xde\\x98\\x17\\xfe)G\\xc9|0S2\\x87\\x01\\xfb\\xc2\\x7f\\xc7\\x99\\xbc\\xca\\xcb\\xcb\\x08#\\xa5R\\xa1\\xbe\\xf9\\x06\\xa9v\\xde=[\\xc4)\\xc7\\xa9IA&,\\xdbM\\x07D\\xf0Z_\\xd2\\xc9\\x02\\xc5\\\\C\\xfb\\x84nC\\x8b-\\xe1y\\x86j\\xd3A\\x90\\xaaW=\\xaeK\\xe1.\\xd9\\x07\tv\\x90\\xa2P\\xa48\\x97g\\xb5\\xa8(jpY\\x0c\\x8e\t\\xa2J\\xe0\\xb7\\xe7\\xcbe\\x0e\\xf1\\xe0\\x8b\\xaf\\x96\\xf7\\x98\\xe6q\\x18\\xc6gAt\\xa2\\x1c\\x1e\\x04\\xe0\\x94\\xea6\\xeb\\xb3\\x00\\x95\\x06\\xb7{\\x1e\\xeb\\xddF\\x19\\xd3\\xe0\\xb69v8p\\x89\\xd9{\\xc3\\x7f\\x01\\xca\\x08<\\x17\\xba\\x83y\\x10f<i9*\\xc8\\xf1n\\x18\\xf7\\xb7jG\\x98\\xbaVJ\\xd6\\xcbu\\x19\\xf0\\x01\\xebiW\\x06A \\x81\\x17%\\x8bR\\x07\\xac\\xa7\\xfc:\\xf4\\xd8\\xa8\\xf8\\x11\\xf0\\x14\\xc5e8\\xf0\\xdc\\x1c8\\x9b\\xc7y\\x04N\\xa9o\\xabI\\xd1\\xc0\\x9f\\xc5l\\x1eDE\\xd8 \\x01W\\x14\\xfc+\\xf9W\\xe1L\\x02\\xef\\x90K\\xb1F\\x03\\x9c\\xf5\\xbb\\x8fe'\\xd1\\xff\\xc41\\x97\\x92\\xba\\xd9\\xe0v\\xdd\\x9d\\xf2\\xcd\\xef\\x867F\\xd1\\xbc\\xb5\\x88C\\xdd\\x1bg\\x17\\x1d\\x12)\\xd9D\\x15\\x12\\xa8\\x86\\x04\\x96+\\xd9\\xe9\\xc5J\\xcaBQ\\xd4y#\\xf2\\xcf\\xba\\x00J\\x93m\\xde\\xc8\\x04\\xe9\\x15\\xab\\xd0*(\\xb4\\xd8\\xb5\\xeb\\x01\\xc0\\xcby\\xaa\\xceH\\x97OF\\xce\\x03\\x14q?\\xb8\\xefV{\\x1e9\\xf7\\xf6\\xb6:\\x19x\\x96G\\xe8\\xa1\\xe1\\xebP:\\x1b|\\xe0:\\xbd\\\"68i\\xeb\\xbc\\xb7e\\xb1\\xe2\\x8e\\x9c\\xe1=W\\xa3\\xa2k\\x9c\\nl\\x07\\x02M\\x91\\x94\\x8dc\\xf4X\\xab\\xc5.\\x87;\\x05\\x10M\\xa0N\\xb3\\x12G\\x97\\xdfu\\x02p\\xb3\\x95\\xe1\\x9d\\x9f9\\xdf\\xdf\\xde\\xba<L\\xdd\\x8f\\x9d\\x9f\\xfb\\xa7~:M\\x82Uv9\\xf33\\xdf\\xbd\\x13,MX\\xde\\x19\\xff\\xec\\xf0|{k\\xf3\\xf0|\\xef\\xd9\\xe4\\xceI\\xbdH\\x80m\\x8e\\x7f6\\x9a\\xf4\\xdd\\xd1\\x9d\\x93\\xa5y\\xdc\\x1a\\xf7\\x06\\x82\\x10\\xdd\\xe9MhxW\\x01\\x9a\\xfaQ\\x90\\x05_\\xf3/\\x93\\xb0MXu*mm<\\xb9c\\xc8ke\\xe2X\\xd0\\xa3\\xd4\\xd2\\x9d\\x04\\x84ZA\\x7f\\x00\\x0c\\xfb\\xcb\\xb9\\xc3\\xc7[\\x13\\x97=f\\x9b\\x84\\xfbe'w\\xa5\\xc9\\xb9\\x13\\x81\\x04p\\xe9g\\xd3\\x85\\x13\\xb8\\\"\\x19Mv\\xc4\\xe1\\x8c%\\x83\\x8c\\xa7\\x19\\xba-\\xe9\\xf9\\xc7q\\x9e\\x8d\\x8eC?z'\\xb6\\x8d\\x1cn\\x87\\xeb\\x89\\x95\\xef\\xaciEY.\\x8f{6\\xfb\\xff\\xfbC\\xd7\\x08w\\xda\\xb0\\x99\\x82\\x8b\\xe8A\\x16\\x7f\\x1e\\x9f\\xf1\\xe4\\xa9\\x9fr\\x07\\xdc\\x91\\x80\\xfe\\xe8\\x80\t$e#\\xc3\\xc7\\x87ey\\xc5\\xeb\\x0da\\x97\\xb2\\xa7\\x8f\\x9c\\xed\\xfb\\xb6\\xe5k\\x9f^%\\xecv\\x12\\x87\\xbb\\xd5\\xd1\\xac\\xb9\\xc6\\xca\\xee\\xed\\xd5E\\x17\\xdf\\x89)9\\x18\\x927\\x9b\\x91w\\x03\\xc9\\xe9\\xffoL^\\xccq}\\x82\\xa3n6\\xe3\\xdd\\x00]\\x08Y\\xaed9\\xae\\xafh\\n\\xe1\\xc4z\\xb0\\xdc\\xe8\\xd9\\xa3\\xfc\\xeb\\xc2\\xb2\\xba\\xe2\\x10\\x9ae=`\\xf1@\\x06%P \\x8d\\x91\\x04\\x06H4\\xa4x\\xde(\\xcd$\\xaa\\x83e$\\x1aYd\\x83\\xe9\\xc2O\\x9ed\\xce\\x96E\t\\x93\\xca\\xf2\\x89\\x13yl\\xa8,\\x94 BH6H\\xc3`\\xca\\x9d\\x86\\x08,\\xf9\\x98O@\\xf1]\\x15\\xf6_\\x99\\xf6n\\xdfo\\x07\\xb1\\xfd\\x18\\x1b\\xc3\\x8e&\\xc5\\xf7$&\\x15\\x8bL\\xba\\x80:`\\xb1\\xe0\\xdd=\\xb6\\x01f\\x00\\x11{\\xbc\\xcfbe\\x15^|\\xea\\xaa\\xa3\\xb9\\xb7Wg\\x02[\\xf0\\xee:\\xf4\\x99#\\x82\\xc0%\\xad\\xa4}\\xb1\\xd88\\xda\\xd6/\\xf1\\xd2\\x9cm\\x8dO(D\\xee\\x8d\\x0f\\x0f\\xf3\\xd9\\xfd\\xad\\xadM\\xf1\\x7f>\\x9f\\xd7/\\xbd%\\xaa\\xd0\\xd6\\x0e\\x16\\xda\\xda\\xd9\\x9d\\x1f\\x1e\\xe6s\\xbe\\x0d?\\xe7|[\\xfc\\xdc\\xde\\x9a\\xc1\\xcf\\xed-\\xb3\t\\xb81\\x00\\x9f\\xd9\\x99\\x8e\\xf13\\xc7\\xb6\\xcf\\x81\\xa1\\xdf\\xf8g-\\x9d\\x82\\x0b}\\xce\\xc1Hot\\xc6w\\xa1\\xf8l>\\x9f\\xb8\\xbf\\xdc~O^\\xf1\\xd3\\xdb=\\x9e\\xcf'\\x900\\xb5\\x7f(\\x95\\x1f*B\\xf8\\\\\\x16a\\x80\\\\\\xf1\\xd6;\\xa8U\\x08\\xd5g\\xe6|\\x8b\\xe3\\xbf\\xf9\\xe4@Exrd\\xa7\\xb7\\xb7\\xb6f\\xb2\\xd51\\xc6d\\xca'r\\xa5_b\\x908\\xd7\\xdaF\\xcf\\xfd\\xb8~\\x16\\x98j\\xbd\\x1c\\x07\\xaa\\xab\\x07=\\xbc\\x06\\x0f\\n\\xc2\\xa8\\xde~\\xad\\xdfs\\xb6/\\x03#80:\\xe7`\\xbf\\x1c)\\x0cz\\x8a\\x91\\\"{'\\xbd\\xab\\xae\t.\\xb9\\xca9\\xdc\\x17\\x1dO\\xae\\xba\\x8c\\xb7\\xef\\xdb\\x18B\\xdb2\\xa6|\\xc9\\xcb\\xd1\\xf6\\xc6\\xb7\\xff\\xdbo\\xff\\xce\\xa4w\\xad\\x915o'jww\\x02G\\xec\\x1b\\x05\\x8b\\xef\\x03\\x8b\\xef\\x82\\xb3\\x87^\\xefZw\\x8e4\\x1ag\\x01\\x8e\\xc1\\x82\\xc2\\xa1g|x>\\x15\\xc7\\xa2\\xd9\\xee\\xe1\\xf9\\xec\\xfe\\xe6\\xe1\\xf9|\\xf7\\xf0|\\x0e/\\xf3\\xc3|k(VF\\xbe5\\xdc\\x9bO\\xee\\x9c4\\x80p]\\xf2p\\x1dX; \\xb4\\x06\\xa9 Hj\\x154\\x03\\x8f%u\\xd8^\\x1d\\x88w]\\xa7\\xfa\\xf5\\xde\\x1f\\xfdvo\\xc4zOj\\xeb\\xa6\\xf7G\\x7f\\x82N\\xfe\\x93t\\xf2\\x9f\\xa2\\x93\\xff\\x07:\\xf9O\\xd3\\xc9\\xffX$\\xfbF\\xf2?\\xa1\\x93\\xff)\\x9d\\xfc\\xcf\\xe8\\xe4\\x7fN'\\xff\\x0b:\\xf9\\xcf\\x8a\\xe4\\xa7F\\xf2\\xbf\\x14\\xc9S#\\xf9\\xaf\\x89\\xe4\\xbaw\\xfc\\xde\\x1f\\xfd\\x07\\x91<3\\x92\\xff\\x9cH\\xae\\xfb\\x8e\\xef\\xfd\\xd1\\x9f\\xa7\\x93\\xff\\x02\\x9d\\xfc\\x17\\xe9\\xe4\\xffY$s#\\xf9\\x7f\\xa1\\x93\\xff\\x15\\x9d\\xfc\\xaf\\xe9\\xe4\\xbf$\\x92\\x9f\\x1b\\xc9\\x7f\\x99N\\xfe+t\\xf2_\\xa5\\x93\\xff\\x8dH\\x0e\\x8c\\xe4\\x7fK'\\xff;:\\xf9\\xdf\\xd3\\xc9\\x7f]$\\xbf0\\x92\\xff\\xa3H\\x8e\\x8c\\xe4\\xffQ$\\xbf4\\x92\\xff':\\xf9o\\xd0\\xc9\\x7f\\x93N\\xfe[t\\xf2\\xdf\\xa1\\x93\\xff\\x93H\\x8e\\x8d\\xe4\\xffL'\\xff\\xaft\\xf2\\xffF'\\xff\\xeft\\xf2\\x7f\\xa1\\x93\\x7fG$\\x7fi$\\xff]:\\xf9\\xef\\xd1\\xc9\\x7f\\x9fN\\xfe?Ern$\\xff_t\\xf2\\x7f\\xa5\\x93\\x7f\\x8fN\\xfe\\x07\\\"\\xb9\\x1e;\\xa0\\xf7G\\xbf/\\x92/\\x8c\\xe4?\\xa4\\x93\\xff\\x8cH~b.\\x87\\xdf\\x15\\xe9\\xbe\\x99\\xfe\\x0fE\\xfa\\xdb\\x85\\x91\\xfe\\x07\\\"=3\\xd3\\xff\\x91HO\\xd3z\\xfa74Y\\xfe\\x86\\xa6\\xbf\\xdf\\xd0\\x84\\xf6\\x1b \\xe2\\x06y\\xfb\\xe6O\\xd1\\xc9\\x7f\\x9aN\\x06\\x08\\x18\\xc4\\xf0\\x9b?G'\\xff\\x05:\\xf9/\\xd1\\xc9@h\\x0d\\x8a\\xfa\\xcd\\x9f\\xa7\\x93\\xff\\\"\\x9d\\xfc\\x97\\xe9d A\\x06Y\\xfe\\x86\\xa6\\xd6\\xdf\\x00e2\\xa8\\xf57\\x7f\\x9dN\\x062a\\xd0\\xdfo\\xfe\\x06\\x9d\\xfc\\xb7\\xe8\\xe4\\xbfC'\\xff]:\\x19H\\x90\\x81o\\xdf\\xfcM:\\xf9o\\xd3\\xc9\\xbfC'\\xff=:\\x19\\xd6\\xec\\x0f\\x8c\\xe4\\x7fH'\\xffc:\\xf9\\x9f\\xd2\\xc9\\xb08O\\x8c\\xe4\\x7fD'\\xff\\x13:\\xf9\\x9f\\xd1\\xc9\\xb0\\xd9\\xff\\xa6\\x91\\xfc\\xbbt2\\xf0\\x00\\xc6\\xc2\\xfc\\xe6_\\xd2\\xc9\\xb0\\xc5\\x1a;\\xd87\\xff\\x8aN\\xfe7t\\xf2\\xbf\\xa3\\x93\\xff\\x03\\x9d\\x0c\\xdb\\xb7\\xb1\\xb1}\\xf3\\xaf\\xe9dz\\xd3\\xfc\\x86\\xde\\x1d\\xbf\\xf9\\x8ft2l'?4\\x92a;\\xf9\\xb9\\x91\\x0c\\xdb\\xc9\\x8f\\x8c\\xe4\\xffC$\\xbf3\\x92\\xff\\x0b\\x9d\\x0c;\\xc1\\xe7F\\xf2\\x7f\\xa5\\x93\\x7f\\x9fN\\xfeC2\\xf9\\xdb?A\\x97\\x86]&4\\x92\\x7f\\x8fN\\xfe\\x032\\xf9\\xdb\\xdf\\xa6\\x93\\xff$\\x9d\\x0c\\xa4\\xd7\\xe0F\\xbe\\xfd\\xd3t\\xf2\\x9f\\xa5\\x93\\xff\\x02\\x9d\\x0c\\x9b\\x80\\xc1\\xd2|\\xfbg\\xe8\\xe4?G'\\xffE:\\x19\\xe8\\xb7\\xc1\\xa4|\\xfbW\\xe8\\xe4\\xbfF'\\x03\\xa16\\xf8\\x8bo\\xff*\\x9d\\xfc\\xd7\\xe9d\\xa0\\xb1\\xaf\\x8d\\xe4\\xbfE'\\xff\\x1d:\\x19\\xa8fb$\\xffm:\\xf9w\\xe8d \\xd4o\\x8c\\xe4\\xbfO'\\xffC:\\xf9\\x1f\\xd3\\xc9@\\x91\\x0d\\xae\\xe0\\xdb\\x7f@'\\xff#:\\xf9\\x9f\\xd0\\xc9@\\x91\\xdf\\x1a\\xc9\\xff\\x9cN\\xfe]:\\x19Hof$\\xff\\x0b:\\xf9_\\xd2\\xc9@L\\x0d\\xa6\\xf0\\xdb\\x7fE'\\xff\\x1b:\\xf9\\xdf\\xd1\\xc9\\xff\\x81N\\xfeOt2\\xd0X\\x83\\x85\\xfc\\xf6_\\xd3\\xc9\\xff\\x96N\\xfe\\xf7t\\xf2\\x7f\\xa4\\x93\\xff3\\x9d\\x0c\\xa4\\xf7'F2\\x90\\xde3#\\x19H\\xaf\\xc1\\xe3~\\x0b\\xa4\\xd7`f\\xbf\\xfd/ti \\xbd?5\\x92\\xff+\\x9d\\xfc\\xfbt2\\x10\\xd3\\xaf\\x8d\\xe4\\xdf\\xa3\\x93\\xff\\x80L\\xfe\\x06f\\xe7\\xb9\\xb9\\xf1\\x00\\xac\\x02c\\xe7\\xf9\\x16\\x8fk\\x06\\xe7\\xf2-0K\\xb1\\x99\\x0e\\x8c\\xe5m\\x93\\xbc\\xc1\\xbe\\x91\\x96\\x9a]\\x9b\\x82\\x94\\xf6\\xe8se!w'\\x01\\x1b\\xe1Lm\\x046\\xba\\x95\\n\\xd7\\x90\\xac\\xd5c?*\\xb1#e\\xf9MH\\xdc\\xa4\\xd9\\xf6\\xfdv\\xcf{\\xb4J\\xa5\\xb0P\\xdc\\x07\\xbd\\x82\\xa7\\xabNPG\\xaf\\x0f\\x1c\\x14TR\\x0d\\xe1\\x97j\\x08\\x08@\\x85r\\xd8\\xac\\x9b\\x1c\\x96R\\x1b\\x80A\\xc5\\xd6\\xd6\\xe6\\xe1\\xf9\\xf6\\xfc\\xf0|\\xc7\\xdf<<\\xbf\\xbbux~\\xefx\\xf3\\xf0|w\\xeb\\xf0|O\\xbc\\xec\\xcd'\\xfd;WU2\\xaaNF\\xd7\\xe9\\xa4\\xbf\\xf9\\xf5d\\xfcd\\xf3\\xa7\\x93K\\xf8\\xfb\\xcbm\\xef=\\xa4]\\x8e\\xb76\\x1fL\\xc4+f\\xca\\x17H\\xbd\\x1c\\xff\\x0c\\x7fnm>`\\x93;W\\xec~\\x84\\x86\\x12k\\xa9}\\n\\x9d\\xcc\\xe1\\xe1\\xb9?=<<?\\x1e\\x1e\\x1e\\x9e\\xcf\\xf6\\x0e\\x0f\\xcf\\xe7\\xe2\\x0f\\x08X\\x05\\xc0\\x11\\xe2\\x00r\\x849\\x00\\x1d\\xa1~x~\\x8c\\x02\\xd7-)p\\xdd\\x9d\\xb3\\xc3\\xc3LT?><\\x14u\\xfd-\\x90\\xcb\\xce\\xe7\\x87\\x87\\xd1\\xe1a\\x02\\x85\\xb6\\xef\\xe3\\xbf\\x07\\x87\\x87\\xf9p\\xf7\\xbe(1\\xbc\\x0f\\xca\\x07\\xd1\\x10\\xfe\\x1b\\xe2\\xbfm\\xfc\\xb7\\x83\\xff\\xee\\xe2\\xbf{\\xf8o\\x17\\xff\\xed\\xe1?ls\\xeb\\x01\\xfe\\xf3\\xf1\\x0b\\xd8\\xb9{\\xe2\\xdf\\xce\\xd6\\xd6V\\x8d\\xc0\\xa0\\xb6\\xa9\\xc7\\xfa,b}\\xd6\\xb3h\\x92f\\xfd\\x9e\\xb9\\xe0@\\n\\xbd\\xbd'\\x87\\xbdwL+\\x8d\\xc4T\\x0b\\xa0\\xce\\x05\\xa4\\xe6\\xbb\\x87(\\xed><7U?9\\xa9\\x89R]\\x03\\xc5H\\xed\\x83\\xd6\\xa6\\x9fl\\xfe\\xf4\\x10\\x05\\xed iGQ\\xfb\\xe1\\xf9\\x8c\\xdb\\xd4Mk\\xe8\\xb5\\xc2+\\xe9\\xb5@c4\\xee\\xdc\\xaf\\xb9\\xa6`\\xf2\\x0b5XN)\\x92VZ\\xd1is\\xd1\\x99,\\xba\\xa6\\xfa\\xe0\\xd2\\xa6Jt\\xeb\\xca\\xb8\\x85U\\x197\\xb3(\\xe3H\\xd5#K=\\x16v\\xd2\\xcf\\xcdh\\xfd\\xdciE?G\\xb7'\\xf2j\\xf7-\\x97\\xa5\\x8ae<E\\x8d\\x9e\\x82\\x7f_\\x80\\x0d\\x14W\\xce\\xc1hv\\x19\\x86\\x97\\xcb\\xcb\\x84_\\xa6\\x97\\xd9\\xe5)w\\xdd\\x03\\xa9\\xbe\\x1b'\\x1e\\x9bz\\xac\\xf7Q\\xcfT\\xff\\xb1\\x95\\xd1\\xd0\\xa7\\x97\\x9f\\x7f~\\xf9\\xc5\\xe5\\xebg\\x97o.\\xdf^\\xfe\\xf8Y\\xad!\\xd6gs[ce\\xff\\xe6]\\xfa\\xa7j\\xb4}\\xbe\\xe7\\xc1z\\xff\\xd89\\x18\\x0d\\xdf\\xbc\\xbd\\xdc~\\xf1\\xe9\\xe5\\xce\\xebO/\\x9d\\x83\\x8d\\xf1p{g\\xe2\\x1e\\x1e\\xce\\xde\\xfe\\xa6\\xeb\\x1c\\xec\\x1f\\x1e\\x1e\\x03\\x19?\\x9a\\xb8z\\x9d4\\xbb\\xdc\\x8ef\\x97;\\xc9\\xacR'[\\x14u\\x9el\\xfe\\x14\\xeb\\xc4\\x1e;\\xd5\\x06v-\\x1d\\x95\\xda\\xbc\\x96\\xdd6/;\\xcb\\xf1\\xa0n&\\\"-Cw\\xea\\xe9\\xc8r\\x0c\\xdb\\xcd5\\xea=Fw\\xd2\\xc1\\xd7\\x82\\xab\\xd8\\xf2\\x94_\\xf4\\x99\\x9f\\xf9GG\\xe4\\x1d\\xde\\x85\\x9f.F`p\\x9cxF\\xe6\\xd2_A\\x9e\\x13\\x80_W\\xc2\\xc6\\x05\\xbd\\xf0\\xc8\\x06*\\xb9Wg\\xcc\\x1e\\xd0\\xe6u\\xf7\\x1e\\xd0\\xc1\\xba\\xef=\\xa83l\\x923{P73\\xcae\\xfa\\x03\\xf2\\x12Ij7E\\xdb\\x1c\\x9a#\\x17[\\xbb\\xce\\xa2\\x02wJZ\\xc7\\xc0\\x1dU\\xf4\\x98\\x1er?q\\xdc\\x87\\xac\\xdf\\xcf\\xd8#\\x16=\\xa4\\xd8_\\x05\tN^z\\xc5\t\\xe6\\x99\\x93\\xa0\\x05\\xe7xhu\\x19V\\xbe\\xa5\\xba\\x1fp\\xd1\\x07\\xf4\\xd9\\xae'K\\xbb4p\\xde\\xae\\xa7\\x9fp\\xb0\\xc5\\xab&.|\\x81\\x84~51\\x85\\x92y\\xd5\\x80:]o\\xee\\x87\\xdb\\x0f\\xae\\x84\\xf1\\x1a\\x8a'hm\\x95\\x87\\x10\\xde\\xe8\\x97\\xef\\xbd\\xea\\x9a\\xb8*Vn\\x1bV\\x07\\n+\\xeb\\nz\\xc4\\xca\\x1d\\xda\\xc6m\\xdb8u\\xe4`\\xad|\\xa8\\xdcU\\x0f\\xfa\\x07OKO\\xed\\x87\\x93\\x8f\\xee\\x98<\\x85\\xf2\\xadl\\xb3\\xe6\\x0c[\\xed=\\xa7\\x10\\xbc\\x8b\\xb6\\xe6\\x9c\\x13!3M\\xa6@\\x19\\x0b\\xfc\\x0c8\\x034!\\x9c\\x97\\n\\xfb;\\xe3\\xc3\\xc3\\x9f}4\\xf8\\xb8\\x7f\\xe0\\xb8\\xe3\\xc3\\xc9/\\xdf_N\\xee\\x9c\\x00%\\xff\\xe8VO+V\\xfd\\xccea\\x00\\xec\\x0e>>\\x00\\x9a~\\xe8\\xb8\\x97\\xb0\\x82\\x06}\\x990q\\xa1\\xa5\\x8f\\x86\\x83\\x8f\\x0fp\\xc7\\xfa\\xe8\\xca\\x94}\\xc3\\xd9\\x00\\x9b.A\\xdd\\x94\\x0d\\x02\\x98\\xe2\\xb2\\x03\\xb6\\x02#hd\\xfc\\xfd\\xc2\\xe1([\\x0bu\\x8a\\xbb\\xd6\\x0f\\xacw\\xad\\xef\\x8c\\x7f6\\x98\\xf4?\\xba3\\xe0\\xe7|\\xea\\xc4\\xa2\\x071\\\\\\x13+\\xdf\\x06\\xcf\\x9f\\x1d\\xbdz\\xfd\\xf2\\xedK0\\xd2\\xef\\x81\\x15w\\x0f\\x1d9:i2u\\x8f\\x86\\x03\\xb4h\\x1a\\xb1^\\xef\\xaa\\x90\\xd8\\x08\\xc4\\x07\\x03\\x08\\xccz\\x85\\x91\\\"\\xd2\\xef\\xb9\\xe3\\xde\\xd1\\xd14N\\xf8\\xe6\\xcf\\xd3\\xa3t\\xe1'|vtd\\xb3\\xb2\\xbf\\xaaT\\xc1\\xee\\xdb\\xa6]f\\xd0~n\\xeb\\x066\\xb55\\x00qY\\xf8\\xb0y\\xdc\\xba\\xa5\\xcc{+Di\\xcci\\xaf %]\\xda\\xdcg\\x19;`C6\\x82M\\xfb\\xaa\\xe0\\x17\\xd4\\x938a\\x1d\\x1d\\x85\\xf1\\xccO\\x17Gb\\xaf?*\\xee\\x0c\\x1d\\x1d\\x11\\xc7\\xae\\x16\\xf7\t\\xeb\\\"W\\x05J\\n\\x1eU`\\x04s\\xe6\\x18N\\x8b\\x99v~\\xce\\x0c\\xf8\\xb1\\x8a\\xc9\\xe9>\\xda\\x94\\x16\\xd3\\xdd\\x14HI\\xd6\\n\\n\\xaf\\xc2\\xb0\\xd2\\xc5\\x17\\n\\xbb\\xdf\\x9b\\x05\\xfew\\x0f\\xcf\\xc2\\xf8\\xfc\\xa0z\\xc5\\x07\\x86\\x18k\\x03\\xbf\\xd9\\x816`Y\\xdb \\x9b\\xbc\\x87\\xb5\\x8e\\xb3\\\\D\\xfd\\xeabD\\x8el\\xe8\\xb1H\\x0c}\\x1f\\xad\\xf15\\x11[&\\xad\\x933d\\x10\\xaeK \\xda\\xd8\\x92\\xf1\\xe4\\x86\\x18\\x91\\xe1\\x0e\\xc5\\x1ec\\xf0\\x1a\\x8d\\x19[\\x85\\xc1\\x94\\xb7A\\xbe\\x13z\\xd1\\xaco\\x82HD\\xce\\xc9\\x86\\x13\\xb1G\\xe88\\xc2\\x89\\xc0\\x13\\x94\\xba\\x9a\\xba\\xc9\\x86b\\xbd\\x0dV1\\xfa\\x8a(\\xf1\\x11\\xcc\\xe3=\\xb6\\xb9Y\\x00\\xc9c[W\\xdas\\x0b(\\xfd\\x8aF\\x8fc\\xd7E\\xb7\\xe3h2\\x1e\\xb6mA7:\\x94\\xc2F\\xb5:\\x16A\\xee*7\\xc6>@W\\xba\\xaef\\x13\\xb01\\x006\\xb2\\x026\\x96\\x80u\\xfa}\\x0dI\\\"\\x8c\\x1d:\\x16\\x1f\\x9e\\xb8\\x10\\x01j\\x1c\\x0bx\\xcb(G\\xedk\\xbba\\xb8\\xdb\\xad\\xc3\\xb5!Q\\xa2\\\"\\xbf\\xb9\\xf2he\\xbb%tU.\\xa0\\x95\\\"\\xd9\\xf1[z\\xaa#\\xbb\\xd3\\xc3\\x13=:p\\x03~3\\xca\\x97\\xc7<\\xd1\\x12R\\xe0<\\xb5\\x84\\xe38\\x0e\\xb9/\\x9d\\xbe\t\\xde\\xf4\\xe8\\x08(\\xd1\\xd1QO\\x06\\x02\\x18i\\xce\\xf9\\xbe\\xcb\\xd9\\xa8\\xac\\x03\\x98\\x8c\\x13\\xdeA\\x8c\\xff\\x81\\xfb\\x80;\\xd4\\x87\\xecC\\xc3\\\",\\xfbA\\xaf\\xc0\\x08\\x90\\x91\\xa6l x\\x80\\xc6\\xbd\\xea\\xc6\\x1b\\xc9m\\x0dY1\\xb9\\xf1^o\\xe9\\xd1v\\xef\\xc6\\xd51\\xa9\\x9c\\xbb\\xdb\\n\\x12\\xcb\\xb4\\x14\\x05p\\x0f\\\"\\xbd\\xee\\x9dV\\xfc\\xae\\x937\\xc9\\xc0\\xf1E\\xecd.U_\\xb5\\x91*\\x02\\xb7C\\xb4\\xc0\\xe4M\\xb5\\x00|\\x0fE\\x8d}\\xd7\\x1f9\\x8e\\xd4\\xc9\\xc7|\\x02\\x97\\x0f\\xf2\\xaenf\\xcd\\x94S\\xe9\\x91\\x97\\x17\\xe0\\xb0r\\xde!\\xec$\\xec\\x80\\xe5\\xe3\\x14x\\xe8P0\\x98!\\xc1H3v\\x0di\\xe0\\xee\\xb0~\\x0bD^\\x800\\x04,\\x88\t\\xdb\\x0fZ%HV\\xc2\\x18\\xdbh\\xf4\\xb0\\xc2\\xc4\\xdc\\xba\\xc5\\xb2\\xf1\\xd6d\\xbc=\\xc1;\\x83\\xe2}K\\xb0w\\xe2e8\\x11[P\\xf1\\xad\\xa6\\x1b\\xcc\\x91t\\\"\\n\\xd1\\xd6\\\"*H\\xe8\\x95\\xa164\\xee\\xce\\xa8\\xabq\\x14\\xd4\\x86\\xa6\\xa4j\\xbb\\x0d\\x86\\xf8u\\x81l\\x040S\\xa0#\\xd2\\x8d\\xa61|\\x81`\\xa9\\x99<e\\xfbl#7\\x0f\\x87\\xc5\\x99\\xbe\\xf0\\x1b\\xb3Q\\x8b_\\x01\\x02V^\\xf1x\\xc0\\xd2\\xcdM\\xabtu.\\xba7N-\\xae\\xaf\\xa7\\x10,\\x14gw.\\xf8\\x08\\xd8\\xc2\\xc6\\xf3\\xf1\\xd6D \\xf7\\x86#\\xde@LRz\\xb2\\xd9h\\x8a\\xf5\\x01\\xdd{\\xc8\\xfa\\xfd\\x94=b\\xa1\\xb5W+\\xb6\\xcf\\x1c\\xd55\\xd7\\xea<m\\x06\\xa2\\xe1\\x95%w!&\\xc9\\xea\\xd5\\xbb\\x18\\x9a\\x8d\\xa0\\xd4\\x1c\\x92@\\x88\\xfb\\x0dg\\xd5<Z\\xf1\\xc8\\xb8\\xefv\\xdaw\\xca0*eC(\\xea\\xdc\\x85\\x92K\\xb6\\xcfrg\\xe6\\xb1\\x85\\xc7V\\xb8*<vj\\xa1\\x98@w\\xf5./\\xc1Lb\\xe1\\xb1\\x99\\xc7\\x02v)\\xef\\xcb\\x9d\\x8aE\\xb9l\\x1eA\\xc3\\x0c\\xaaZ\\xd78\\xb4\\xb5^=\\xadOI\\xfd\\x00\\x89*\\x9a\\xb5\\xce\\x90\\xd7`\\x11\\xdb\\x8f@Yg\\xbeV\\x94\\x95\\xbc\\xfa\\x8dwX\\xff\\x98\\xeao7\\x1e\\xef\\x86\\xbeu]^\\xce\\xa2\\x11\\xbcO\\xdd\\xef\\x13\\xe9\\xf5\\xf2@\\xac\\xb7Z\\x9d,t=\\x95\\x11\\xe4\\x97)/[\\xf1\\xdc\\x8c.\\xc64\\xf6(\\xb2\\xb4\\xc2\\n\\xfeHlu\\x85\\x9b\\xaaG\\xccg\\x9blX\\xac\\xc9\\xbcr\\x90\\xabbz\\xbf\\x1fI\\x14\\x12\\xa9f\\xf3\\xc68\\xe4\\x82\t\\x9c\\xbc\\x83\\xabi\\x0b_\\xab\\xd8\\xdakr\\xb2\\xd6\\xad\\xb8.F\\x93\\xac\\xec6\\x15\\xefT\\xa4S\\x9a#\\x81Bu\\xf5g\\x8a\\xed\\xd75\\x0e\\xa1\\xecN\\xbd\\x99\\xa9\\xe4\\x9b\\xea\\xe9s\\x933X\\xe9\\x81U\\x9f(\\x0f\\x9eu\\xf3\\x92Y\\xb5T\\xe2_\\xd4K,\\xf4\\x12\\xb8i\\xd7\\x8b\\x9c^_x\\xaaX\\x94\\xa5\\xc7N<vA\\xe1\\xff\\xb1`E\\x1c\\xea(t\\x049\\x19\\x91s\\xc6\\xf6\\xd91;`36b9Y\\xf7\\x19\\xdbgGE\t\\xaa\\x8ds\\xb1\\xd7\\x8b\\x86\\xce\\x04g\\xb3b\\x07l\\xc1F\\xec\\xcc\\x15\\xbf\\x08\\x8e\\xe9\\x8d(.Z}\\xa6\\x17\\x7ff+\\xfeT5\\xfc\\xcc\\\\\\xceO\\xc5\\x96\\x1e\\x82\\xae\\xcb\\\\\\xc9\\xb0JC8\\xc5\\x14\\x1b\\xa5\\xb9\\xd8\\x8e\\xc1W\\x8a\\x07\\x83hd|\\x8a\\xefm\\x9c\\x17\\x0d^\\x80T\\xf0Bmh\\xae\\xc7\\x8eE\\xca\\x14E\\xb611k#\\x16\\xc8\\xd4\\xb3J\\x869\\xb6\\x0d'b\\xb7\\xd8\\x9c\\x1c\\x9a\\x98\\xedwl\\x9f\\x9d\\x83\\x18\\xb8p-\\xd3;::K\\xfc\\xd5\\n\\x04\\xd5\\xc4D\\x89\\xe7\t\\xdbgo\\xb4jY\\xbd\\x1aM\\xee\\xde\\x89q=i:\\x0f\\xbed\\xfb\\xec\\x1d;`|\\x00\\xae\\xe4@\\\"\\xda\\xe04\\xfd\\x15\\xdbgO@|Z\\x16\\xcfh\\xb6\\xc8\\n\\xec\\x13\\xe7\\xa5\\xc7^)8^\\xb4\\xf9\\xbc\\xa6\\xd9\\xa0\\x0d\\x98T\\xc7l\\xdd7\\xa7\\xef\\xea[\\xa3\\xb1\\xd5\\xc9\\x83\\xdf6m,\\xb3\\xbb=\\xec\\xea\\xc7\\xf5\\xf4\\x86\\xcd:\\xea\\\\\\x9an\\xdf\\x01\\x05\\xfc\\xd9\\xcc\\x01\\xef\\xc25`\\x88\\xc7\\xd7\\xe8\\x9b?\\x9b\\x81W\\xa12El\\x89h\\x94\\xe1\\x1b\\xf6\\x17A\\xd5\\xd4\\xc2'\\xe1[\\x07nt=]M'\\x9eH\\xee\\xa6\\x91\\xdbi\\xe7\\xfc.\\x19\\xb1\\xf6o\\xd9u\\xcb\\x00v'k\\xfb\\x84\\x15\\xa1m^\\x92\\x0cs'\\xc9\\xeamQn.(\\xbe!\\x97\\xf8_\\xdf\\xf0S\\x99^o'47v\\xc1\\x03l\\x9b\\xdb\\x7f\\xb1G\\x7f\\x82\\x12\\xde\\xfa&]\\xe1\\x07>\\xf53\\xc3\\xd2\\xb4\\xc2\\n\\x80G\\xcbFV\\xe0\\x0b\\x7fE\\xf1\\x01Z\\xb0\\xf7\\xe517\\x9aX\\xeaE\\xd0.\\xa5^\\xe4D/\\xf2\\x86\\x1b\\xdc\\xc6E%\\x1f$\\xe0\\xf5\\\"\\xc7\\x95\\\" \\x02\\xaf\\x1792\\x18\\x9fO\\xf2\\xf9\\xdc\\xec\\xf0Y\\x0dl\\xfe\\x8f\\x03~V/\\xf4\\xacp\\xaaV\\xac{\\x8bo\\xaas`\\x0c\\x0e\\xd83\\xdc\\x17^\\xce;\\xbb^S\\xc4:\\xf1\\xd83\\x8f\\xbd\\xf1\\xd8\\xd3:\\xee\\xa7g\\x01\\xf8@#\\xe5X\\x10\\xc7\\xedld\\xa43\\xb9\\x03\\xf2\\xc1\\xf1E\\xc6?Gv\\x7fC\\x1c\\x03\\xb5\\xdf\\x97\\x97\\x0c\\xf3_\\xce\\xe7)\\xcf\\xca|\\xfc\\xdd\\xc8\\x81\\x88\\x87\\x837\\xaac\\x00\\xb0'\\xbd\\x01\\xe2/\\xb3<t\\xf4\\x88\\xeeh\\xa1\\xb3l\\xeb\\xed\\xc6\\x1bGP\\xf7\\x18\\x83\\xc1\\xc0[\\xe6\\xba\\xc4\\xe6\\x0f_\\x9b\\x9b_\\x83\\xf4\\x95%\\xfd\\xb4\\xb1w\\x81\\xd3\\xe7\\x1e\\xebS\\x92g\\xa8=k\\xac\\xcd\\x07\\x11\\xf8\\x14\\x17c\\x827\\xf0\\xb4\\xb2T>\\xc3!\\xdc\t\\xfe\\xb04\\xbf\\xb4t\\xfa\\xa2\\xf9\\xb3\\xa8\\x0f\\xeaW\\x8c\\x92*\\xf5\\x17t}\\xc5\\xab\\xe5\\x96j'\\xf6jOP\\xd3\\xcfB\\xbb\\xb8\\x08\\xf82G\\xb4\\x9f\\x82\\xb7W8\\xebm(!\\x05\\xb0\\xabOZ\\xb1O\\xb1oO\\xa5\\xb0\\xc1\\xfe\\xb9\\x97E[/\\x01\\x1e\\x16\\x86\\x8d]\\xee\\xb3\\xa9\\xc7\\x9e\\x96GQ\\xfb\\x87_\\x81C\\xbbw\\x80\\x88\\xef0TA\\xb9\\x80\\x1b\\x19\\xc2\\xa7\\xa5\\xd0\\xc6c\\xaf,\\xe0=\\xb6\\xaf\\xe8\\x92\\x8f?W^\\x03\\xc5\\xa0\\xe4\\x0f\\xab\\xf4\\x9ai\\xeb\\xacM\\xf9\\xdc\\xbeE\\xaf\\xcb\\xce\\xc9\\x10N0\\xbd\\xb4\\xac\\x8a\\x9bQ#\\xa8P\\xea\\xd0\\xe0\\xb8\\xdf\\xcf&l\\x1fl\\xe8y\\xed.\\x9a\\xfb!D\\\\\\x1ffx\\x8dc\\xe3k\\x0f\\xcbn7\\xfb\\x80\\x12\\x7f\\x0cM\\x8e\\xe7\\x86\\x0e\\xfb(\\xefM) \\x82\\x00\\x84\\xddb\\xb1\t\\xc7)h\\xe6\\xa8\\xb3\\xbc`\\x83\\xa6$\\xff/\\xd6\\xc3\\\\\\x10\\x8e\\xc4\\xc9\\\\M7\\xb4\\x11Z\\xa9G\\x11\\xadH0N\\xf3\\x87l\\xd5\\xa0\\xa4\\x10\\xac\\xd3t\\xbc\\xb2H\\xf27\\x9c\\x10\\x04\\x0c\\xe0\\xa5y\\xa4\\x19\\xb4\\xcd\\xdc\\x8eZ\t\\xf1\\x8d\\x05\\x98\\x01S\\x14L|\\x03F\\x93\\xcap(E\\xa3\\x0b\\x82\\x8a)\\x01\\xffF\\xcd\\xbbj\\xaa\\x0b\\xd6R\\x15\\x0f\\xa5\\xfe\\xad\\x02*\\x82\\x91\\x0b\\xc5\\xe1i\\xc5\\x1e\\xb1\\xb9\\x152'\\xa0\\x01Q\\xf0\\xb1(B.\\xc0rpf\\x01\\x9f\\xef\\x16\\xe2\\x9f\\x10.T^\\xc0qu\\x06X\\xc4\\x01\\x7fF\\xccw\\xc4\t\\x16R\\x11\\xbdR\\x9b\\xe2WW@\\x1c\\xb3\\x03\\xd1\\xc3\\xfd}<}\\xe7\\xb2\\x11DMh\\xf7\\xd8\\xae$\\x06\\x89\\nM\\xc1\\x8f\\x13\\xee\\xbf3rL\\x15\\xee\\x12\\xb67\\xe0\\x89\\xa7\\xa5!9\\xd8f\\xcc\\x9a\\xe83\\xa8~\\x00\\x7f\\x976\\xc0\\x1f\\x01\\xcb\\xa5\\xb5J\\x83\\xfe\\x0cx1\\xad\\x989\\xa0#\\xb1n\\xce\\xc4\\xd7\\xaa\\x9d\\x0cd\\xc4\\x0e#5CM\\x14\\x19`\\xf0H\\xe4\\x1d\\xe9bjH!\\xcb\\xc27\\xcf\\xf4\\xb2gh\\xf4\\x8d\\xa0\\xef\\xb0\\x81\\xa5\\xfa\\x16Z\\xfc\\x10\\x08~\\xfa\\xbdj\\xc5\\xf5I?q\\xf8\\xac\\xc4w\\xdc\\x1cb4X\\x9b\\x80\\x02\\xcd\\xcd\\xb70\\xe0\\xe3x\\\"\\x96R\\xc4\\x1e\\xb1\\xc4\\xba\\x94|XJ\\xf5\\xa8\\x85\\xe2\\xc9\\x1c\\x1f\\x90\\x16\\xcd\\x9a\\x9d`\\x1c\\xf7\\xfb\\x10\\xeb\\xb0\\x03\\x88\\x82\\xef\\x0c\\x10*:\\xa3\\x1a)\\x7f\\xe8\\xb2\\x04\\x832fFp\\x12\\xd9\\xbb\\xa4\\xa5wvS\\x04Z\\x90\\x7f\\x97\\xba/NI\\xc9\\xdb\\xb60\\x8b\\xdc!\\x96\\xa6\\xe5\\x89d\\xb6\\xae\\x0d]\\xcbwZ9\\xb3u\\x013\\xb4\\xdc\\xa47\\x00\\xe6C\\x98\\xd2\\x12<\\xfe\\xb8\\x00\\xdfga\\xecg;\\xdbR\\x8b\\x00\\x08X\\xcb\\xdc\\xbdKg>\\x8f\\xb2\\xfb\\xd6\\x9c\\xe1\\xae5\\xcb\\xf6\\xb1/\\x03k\\x83\\x90\\xf54\\xf4\\x97+>\\xb3\\x97\\xb0}S\\xe4U>\\xba\\xb1\\xe5\\xe9\\xf9\\x1a\\x06\\xd5j\\xd2\\xedU\\x04\\x0f\\xb5\\xbcB\\x8eSK/\\x85\\x10f\\x067\\x12\\xa5 \\xa7>\\x1b\\x12W\\x8c\\x0c\\x90\\xea\\xd4\\xd2\\x94$\\xa7\\x96\\xactA\\xb5d%\\xd4\\xa9%\\x83 \\xa7\\x9e&\\x857\\xb5\\xe4\\x9fp\\xff]\\xd1\\x8f\\x8d\\xa1\\xb7\\xde\\x12\\x0c\\xe4\\x12\\x8c\\x1d^Di\\x12\\xfb\\xd1\\x86?\\x16\\xab\\xf2\\x1a\\xa6\\xbd\\xb4\\x0f\\x8a]\\xc3\\xfa\\xed\\x068\\xe4\\xfa\\xd80V\\x93\\x1e\\x8f\\xc9\\xb4\\x7fRg\\x8f\\xf1\\xc4\\xc2\\xb2Ebs.\\xccn\\\\\\xcdi\\x7f\\xe4\\x9a\\x1b\\xf9\\x060\\xe0\\xb7X\\x86\\xaa^\\x0b\\x81n\\xb3|m8k\\xec\\xb9\\x8e\\x16h\\xcb\\x93=\\xb3\\x98^\\xd0\\xd7\\x8f\\xecTn\\xc7u\\xe0\\x8a\\x93\\xc7zj\\xbd\\xd8.\\x9e]\\xa3\\xe9WI\\xbc\\x0cR\\xfe\\x01Z~\\xc3\\xb3\\x0f\\xd0\\xaa\\\\Y7\\xd4\\xf2\\xb6qiW\\xae\\x88\\xf5\\x0d<+Qh\\xe3\\\"\\x84sV\\x04\\xa0\\x8d\\x1aN_\\x01\\x1c\\x1f\\\"\\xcb\\xe1\\x02\\xd9\\xa6\\x80b\\x9b\\x90\\xf9\\x90n\\xc0\\x13\\xc7wm\\xeej\\xd8M \\xbca\\xce\\xa7.\\x94\\xd3\\xc6\\x91;[\\x94\\xf9H\\xe4\\x0c\\x8d\\x8b\\xe9\\xb9e6\\xa4m\\xc1\\x83\\xba\\x0e\\x02\\x8d\\x0b\\x0c\\x95\\xdd\\xd4<\\xeb\\xcf;Z\\x17ZH\\xb1/Iq\\x8e!\\x1bR'\\x84\\x99\\xcd\\xda\\xad.\\x15\\xbf\\x1bSW\\x0c\\xb4/\\xe8\\xb1N\\xc5\\x97\\xfc\\xe2\\xbaP\\x805\\xc1\\xf5N\\x06\\x13<e\\x97l~#6\\x9bw\\xc6?\\x1b\\x8c\\x0f'\\x93\\xfe\\xe5\\xe1\\xd89\\x189\\x9b\\x07\\x87\\xb3\\xbes0:\\x1c\\x1c\\xce\\xfa\\xee\\x81{\\xe9\\x8c{\\xb7'\\xae#\\xf2\\x0e6\\x0e\\xb7\\xdd\\xf1\\xcf\\x0e\\x0f'\\x97\\x87\\x87\\x03\\xf7\\xe3\\x03\\xf7p\\xdb=\\x9c\\\\:\\x07\\xfbP\\xe3\\xf2p|8q\\xcb\\xd7\\xcb\\x8f\\\\\\xb7\\xee\\xf0[ \\xca\\x9d\\xc3C\\xe7\\xf0\\xd0=\\xa8\\xe7)\\x9b\\xeaJ@\\x1e\\x1bH\\xa9\\xed\\x81\\x95\\xd0\\xbc\\xbb\\x8bV\\xae\\x10(\\xe3i<\\xe3\\x10,C\\xdb\\x04z=\\x90\\xc2\\xaa\\x1b\\xc1I\\x15\\\\\\xa8\\x9c\\x08l\\x07f\\xd9F\\x02\\x81h\\xf5XK\\x1f\\x0d!\\xc6\\x06\\x04\\xab&\\xe2\\x84C\\xa0\\xb6\\xea\\xb4Y\\xe8K\\xb0\\xce$\\x8a\\x15Y\\xd7\\xc2\t@\\xdfk7\\xd0\\xaa\\x8f\\xf0\\xb4\\xb8G\\xc2\\xbd\\x86b\\xea\\x91\\xd0.\\xec\\xf0\\xf7\\x19\\xdc$\\x8e\\x94\\xcb\\x01\\xaf&\\xd3c\\x08\\x04#\\x0d)\\xe4\\xd4\\x9f.\\xe8+\\x00m\\xa4\\xaa\\xf5\\xf0\\xd1\\xb0\\xb4\\xe1T\\xbb\\xb1\\x8f\\x12\\x80\\xac\\xc2X\\\\mME\\x8e%B\\xc8\\xd0\\xb8\\xcc/\\x8d\\xc7\\xeb\\x93'\\xc9\\xe3N\\xbdxn9\\xe0\\xa4\\x8a\\x0c\\xb6M\\xb7\\xd9i\\xa6oY\\xa1<\\xe3\\n\\xfa\\xe9d\\xe5\\x853\\xb78\\xe8\\xcfQT\\xc4\\xfa\\xfd\\x90=b\\xd3F\\xab\\xe2\\xd4\\xc9\\xc6\\xe1\\xc4*\\xbc\\x9a+\\x89\\x82\\x82=\\xf4o\\xe5\\xba.\\n\\x9d\\xccz\\\\\\xda WW\\x105\\xa7s\\xb1\\x00E\\x1f7\\xf6\\xd9\\x94\\x1d\\xb09\\x1b\\xb1\\x8d\\x0dg\\xda \\xc4\\x90\\xe4}\\n\\xff}g\\xe5\\xb1\\xa9\\x94A8\\xdaM\\xfd\\xabb\\xc4\\xee]\\xda\\x8f\\xc3\\xee]\\xda\\xbb\\x88\\xb95\\xfa]\\xe7\\xb8\\xe90q x\\x03\\xe0\\x98G0\\x9ek/+\\xcb\\xc7\\x8a\\x02]<\\xede\\xd5[\\x8bu\\xed\\xc6UA>\\xdcY\\xffJ\\xc6:\\xddOj\\xf7\\x99\\xd9u:\\xbb{\\xd7\\xc6RY\\xfc|lQ~\\x01\\xbf\\xf0\\xb3\\xc5`\\xe9\\x9f\\xb7\\x0d\\x9b&\\x03\\xa7\\xca\\xa0\\xb6\\x93\\x1d\\x12,\\xe2\\xbc8\\xc4m\\x0e\\xcd#\\\\\\xaa5\\x16\\xc9\\xc6\\x02\\xdb\\xf1+\\x85k\\x96b\\xc1\\xa5\\xa0g\\xccY\\x9f\\xa5p\\x19\\xd7\\xc3\\xdd(\\x16\\xf0\\xdeq=\\x96^\\x1fm\\x0b\\x0b\\x04+)\\x8c\\xb5\\xa8S(\\xd8\\x8cX\\x9f\\xc1\\x96?d#\\xb69t\\x1f\\x82\\x9dD\\xb0\\xb9\\xc9F\\xac\\xdf\\x0f\\xd8#\\x16?4\\xb7|\\x01\\xa6\\xcc\\x11\\\\\\xbb\\x07\\x96S\\xe5\\xb17 \\xc1p\\xf5[\\xb2;[\\xa4\\xca\\x8b\\xdd\\xa9\\x1bn\\xc0\\xdd\\x9b\\xc1\\xde\\x83\\xbd\\xdd\\x07;\\xc3\\x9d\\xbb\\xf7w\\xb7w\\x86\\xf7\\xf6\\xf8\\xce\\xd6\\xfd6\\xbc\\xb1,\\x17\\x81(p\\x11\\x06\\x8f\\xf5\\xc8\\x06\\x08\\x0e\\x08^7c\\xcc\\xc6[\\xb4\\x9b\\x02zC\\x97}\\xcc\\x02\\x81Z\\n\\xcf8\\x1b\\x01z\\xc8\\x88\\xb4*\\xe5\\xaa\\xb0\\xd8\\xb6\\xba\\xbc\\xa2\\x97\\xd3\\xee=\\xda\\xcd\\xa6\\xb13\\xe7\\x12\\xd4\\xed\\xe7B\\xfb\\x1aC\\xfcFj,V\\x04\\x89\\x07\\x11nGE3\\x18\\xd3O\\x05:\\x13\\xab@[\\x13m\\x0b\\xa2\\x01gv\\xba\\x0c\\x84\\x1aEDv\\xbb\\xc67\\x02\\x1b\\x1d7\\x10\\xd1\\x0d\\x88\\x14\\x9a\\x15%k\\xe4\\xd4\\xf5\\xd8\\xc6\\xc6\\x95\\x95\\xc0\\xbb\\xf7,Q\\x8c:\\xcd\\x9e\\x15\\xd9Q(\\x0e\\x1f\\x8e\\xaf\\x0c\\xf9\\xdd{w]g-\\xe1E;Uk\\xdd\\xcdh\\x9a\\xc7\\xeatO\\xb0\\x80\\x81~\\xf1\\xd4\\x83\\xe5\\x90\\xc0[\\x0e\\xa6\\xa2J\\x98\\x91[\\x84\\x19L\\xc7\\xf51\\x97aa\\xfb\\xfd\\x988\\xb21\\xb5\\x9b`@\\xf1\\xc8\t\\xc6\\xe9\\x04\\xfc\\x1b\\x06\\x8a\\x174\\xea\\x98\\nH\\xe3\\xa4\\xc0\\xae\\xb3\\x1f\\xefur\\xaf\\xdb\\x06\\xf0\\xc8\\x82\\xfc\\xfa\\xfd\\xc2\\xa8\\xd8\\x10\\\"\\x0b\\xa7\\x9c8Q\\xb9kpl\\xd4,Z\\xcc P\\xb4b\\xe7\\x12\\x13\\x07B\\x04\\xd8\\xb4<\\xfdBq}#.\\x1e\\x08\\x1e\\xea\\xcb\\x8d\\xcdg\\x8f\\xc4A\\xf8\\xd6-\\xb61\\x84;\\x89\\xb1\\x93\\x8f\\xfd\t\\x9a<\\xb8\\x0f\\xed\\x02\\x0d\\x9bC\\x9cN3\\xe1\\xd8Y0}\\x0d\\xd5\\x0fB\\xac\\\\\\xe3\\xf7\\xee\\xbb\\x837Y\\xc2\\xfd\\xa5Y\\x04Te\\xe2\\xa5\\xa7\\x99n\\xb3\\x9a\\xf96M\\xc0\\x992\\xd6\\x16\\x1b\\x9c%\\xaak\\x0c[\\xbd\\x80\\xb4\\x13\\xa3;\\x88\\x88\\x9fI\\xa5!\\xd6\\x93\\x119c\\xe5Y\\xcb\\xec\\\"\\x93\\xc7:\\xc26N E\\x0f\\x15\\x0c\\xba\\x8e\\x19\\x08\\x93\\x03\\xdc\\x13\\x1fk\\x82\\xfbw\\xfc\\\"u\\xb8;\\xde\\x9aL\\\\4\\xad8\\xe2!\\xd7n%\\xca\\x04i\\xad\\x87N\\xf70%\\x98\\xc6y\\x04>\\xa1\\xb5\\xb4h\\xc6!-\\xab\\xa7\\xa5\\xe8\\x87\\xafL\\xccx\\x92\\xe4\\xab\\x0c\\xee\\xdd\\xaad\\x1ab!\\x9e9\\xc7\\x16\\xc1\\xe7\\\\\\n{L\\xa4W\\xf3\\xb5\\xb2\\xcb(\\xaa`0m\\x92H\\x1e_=S\\x94\\xf44\\xae\\xfa\\xfaSl\\x14}v{\\x1fb\\xe2CX\\xe8>\\xbb\\xdd\\xbbm\\xad\\xf8\\x1eN\\x13\\xe3l\\xe2Z\\xae\\xd1\\xb7\\xdd\\x99`\\x9a\\xd9\\xac\\xc4\\x08\\xc3\\x1cI=`o\\xa7P\\x886\\xbbcU2\\xb5/\\x1a\\xb3\\x1c\\xcb\\xd5\\x93\\x0e\\x8e\\xfc,\\x03\\x87G+G\\xfe\\x00c\\x85\\xa3\\xe9\\xcc\\xcf@\\xa89Gp:\\xbdG\\x1b\\xe3\\xa7\\x9f>y\\xfb\\x04\\xbc4\\xab\\x12\\x9a\\x83\\xbe\\xc3\\xc9\\xe1\\xe418\\xdc\\x9bL&\\x93\\xc7E\\xf1\\xc7\\xe8zo2y\\xdc\\x83\\xa6\\xe5l\\x02\\xea\\x87R\\xc76\\xd7$|iG\\x1b4\\xfd!\\xd7\\xd6\\x01\\xeb\\xc1\\x80 \\xd5XY\\xec@`\\xa0\\x1c2\\x1b\\xa9.\\x14T\\x84\\xf5\\xd9\\x10\\x0e\\xdd\\xce\\x1c\\x9d\\x10y k\\xd9\\xd8*z\\x0b\\xac3=\\xf5LrB\\xa1\\xa0\\x16\\xe5\\xe0l\\xd4[\\x19\\xed\\xd0\\xd93>\\xf7\\xf30\\xb3Oz\\xd1\\x9f\\x94\\xe8\\x8eu\\xdb\\xa5!*(\\xca\\x88\\x05\\xf4\\xa2.\\xe8\\xc3H\\xcc\\x1aYD\\x8038\\xce3\\x9e\\x8e\\xd8\\x94.2\\x8d\\xa3\\x8cG\\xd9\\x88\\xcd-_\\x01\\x126b\\x91\\xad\\x13@\\xb9F,o\\xca\\x1f\\xd5\\xd8\\nf\\x80\\xe2\\xbde\\x1f\\xc9\\x9b\\xf6\\x91\\n!\\xdf(\\x90-\\xd36{\\x81\\xcf\\xb6\\x10\\xd2\t\\x08MK2\\x8b'S0\\x81\\x12 )N\\xedv\\xaa\\x19\\x1bF\\x19E\\x11t\\x1e`4\\xd6\\xb4v\\x14\\xfbXVJ\\x17\\xc1<s\\x1a\\x10U\\xbb\\xf8\\x0f\\xacE\\xdb\\xd2\\x14\\xe5\\x03'.\\xf6.{\\xcb\\xe2\\x01\\xe0\\xc7\\x0d\\x8b\\x8a\\xa6\\xb4d*N\\x85\\x93\\xb0\\xc7\\xd2\\x97\\x98\\xda\\xf3Fb\\x03g}\\xe6H#\\xf7\\x03\\xd6{tGP5\\xf9\\xbb\\xcfz\\x8f{z)\\xb9\\x81\\n\\x86*\\x12\\xa5\\x0f#\\x99\\x0d\\x9aB\\x90\\x83R\\x0b\\xcf>\\x8b\\x81}\\x0bS\\xa7\\xac\\x0d\\x1dO\\xe0(Y\\xfe\\x1e\\xf8\\xab\\x15\\x8f\\xc0\\xbf\\x83\\xa7\\xe3\\xd3\\x00\\x13\\xe3J\\xa22cp6\\xc4\\x19tc\\xab\\x0b\\x89\\x80;\\x19\\x88\\xc9\\x05\\xd4\\xaa\\xf0\\xd2\\xc0\\xa5\\x01\\xaa\\\\\\xfd\\xca\\xcc\\xf5\\x80\\xf5\\x18\\x96\\xd5\\xf2\\xd0\\xd96\\x03\\xc5\\x8b\\xac\\x9b\\xc0\\x0c\\xa9\\xe6%\\xf8am\\xa8\\xb4;\\xb69Q\\x13\\\\\\x99\\x96\\x8d\\xa4\\xbe$U\\x0d\\xbd \\xc1\\xa9\\xc9\\xe8\\x18\\xb1\\xd3d\\xbef;^\\x904\\x83\\xa0\\x17\\x804p\\x8e\\xa6\\x91@\\xd1\\xb0\\xc8\\x9c+\\x1beA\\xef\\xf2p\\x90H\\x81\\x87f\\x07x\\xf7D\\xba\\xd4\\xb2\\xd0b\\xc1V\\xf7\\xec,\\x9c\\x8d\\xcc\\xaf\\xe0C\\x05D7d\\x1c\\xf72E\\x1c^\\x8a\\x9f#\\xeb7f\\xd2\\x16\\xd8\\xbeT\\x16\\xf6\\xdd\\x7f\\x868\\xc3\\xcf\\xb3\\xb7\\xc1\\xf4\\x9d\\x831N\\xd6\\\\\\x89\\xa7\\x8d\\xfca\\x8d\\xd8\\xe1B\\x9c\\x82\\x03I\\xd7C\\xf6}c^p2\\xb0\\xdb\\x03\\xcc\\xa5\\xd6eK\\x15\\x9a\\xb7\\x11a\\x81\\nS;i\\xd4x\\xa16z\\x1b\\x0e\\xf82\\xc8\\x9c\\x9e\\xe0\\xcez\\x9e\\x1e4\\xbf\\xfe\\x08\\x06\\x05\\xe7\\xbf#Qm\\x82\\xe3\\xb2\\x11\\x8e\\xb9s*\\xef\\xfc\\xae<\\xb8\\x95\\x0e\\xae\\xeb@\\x1b\\xbf\\xd6WN\\xac\\xc3\\x173\\x15\\xb6A\\x99\\x7f((s\\xc1\\xeb\\xc9$\\x1e\\xcdz\\xf03\\xe1\\xfe\\xcc?\\x0e\\xb9$\\xc0*\\x7f\\x1a\\xc6)\\xef5MK\\xe7\\xe9\\xa8\\xa7H\\x82\\xd7a\\x1c3\\xf3F>\\x93(\\x11\\x0df|\\x1a\\xfa\\x89\\x0f\\x10\\x077\\xd7\\xb0\\xd8\\xb5T\\x0f\\xce\\xb9\\x16\\x11\\x12O\\xd2 \\x8eF\\xac7\\x1c\\xd4\\xa3\\xbc\\xa8\\x87G\\xd3x\\x06\\xd1\\x00\\x92\\x81z\\x87s\\xf5\\x97o?\\xdb\\xbco\\xa2\\xe3{\\x8f%\\x834\\xf3\\xa3\\x99\\x1f\\xc6\\x11\\x9e\\x9aS=a\\xbf\\x92\\xefzl\\xe9\\xd0\\xbd\\xeb\\x1d\\x9c/\\xc3\\xde\\xa8av\\xe1@0bi\\xd7I\\x90\\x8bhZ\\x1c\\x84\\xc4F\\xe5\\xb1\\xde\\xc1c\\x0c\\xf1\\xce\\xe0\\n\\x9d:\\xf4\\x1cPWll\\xcc&S\\xb4\\x9dFY8\\xa2H\\x9b\\x89\\xf2R\t\\xcc\\xd6\t\\x80 \\xf3XBY4\\xb0\\x11.\\xd7\\x138\\xa1\\x1c0\\xa7\\x8a\\xab[\\x1e\\x03\\x8f\\xf8\\xd3J\\xd5\\xf7\\x9a%\\xe4\\x80\\x87|\\x89\\\"\\x852\\xedY\\x91\\xd6\\x88}j\\x1d\\xd2\\xc3\\x05\\x81\\xc3\\x88\\xf9\\x8e\\xe1\\xa66\\x0c\\xa6\\x1cM\\x06}e\\xe6j\\x13\\xc2\\x88\\xd3\\xd0\\xa8A\\xc8\\xaa? \\xae\\xc3\\xab\\xf7\\xc0S\\xb9,[$\\xf1\\x19\\x90q\\xb0^uzQ\\x9c1?M\\x83\\x93\\x88\\xcfX\\x163\\x9f\\xad\\xfc\\x84G\\xd9\\x06\\xc5?\\xa8\\xe7T\\xf3\\x8fD\\xf7R=\\xa5G\\x1aM0co8w\\xb4\\xdeJ\\xa2\\x1ay\\x95\\x16P\\x04\\xd4\\x17\\x0c\\x86\\xa2\\xb4\\xae\\xd7<+\\xfa\\xa3\\xd8K\\x87\\xe2\\x15\\xd5c\\xa3R\\x166C\\xd0\\xbc\\xaeS\\xa2m\\xb8h\\xe0!\\x86\\x06'\\\\\\xae\\xbc\\xee\\x08>W\\xe5\\x88\\x9ev&\\x99V\\xd1g\\xed\\\"[\\xf1\\xeb\\xbd[:\\x1ev\\xee\\xdd\\x93\\x07\\xec&A\\xbf\\xda\\xce\\xab\\x03\\xec\\xdd\\xea\\x8dX\\xef\\x96\\xbf\\\\=\\xac\\x11\\xc5\\xdb\\xbd\\xdb\\\"\\xe7\\x17y\\x9c\\xd5\\xb3z\\xb7\\xb1\\xd2*N\\x8d\\xacG\\x90\\x15\\x9au\\x1eC\\xc6I\\xf6P\\x0b\\xd6\\xd7&\\x18\\xb7H\\xc5%\\xf1\\x92\\x94\\x0d\\x88W!\\xeeq\\xc6\\xb7z\\x8f\\x1e\\xdf\\xc6\\x18\\x0b\\xad\\xc26%`6\\x82\\xf2\\x01\\xcfVv\\x94\\x84n\\x8d<\\xeaC\\x88\\x1fV\\xe0.\\xcd\\x08\\x1e\\xec\\xb8\\x83g\\xa7<\\xca\\x9e-\\x83,\\xe3\t\\xe5\\xed\\xc3<H'r\\xa6\\x17\\x81\\xa1\\xae\\x16O\\xe4\\xdc\\x1f\\xbaN\\xec\\x81\\xff\\x92x\\xf0\\xba\\xa4\\x98\\xe2\\x8bw!\\xf1'I\\x90\\x15\\x89\\xbb\\xbb\\xf7 \\xf1\\xd3|\\x15\\xf2s\\x99\\xb4\\x0bIo\\x13?J\\xe7q\\xb2\\x94\\xa9{\\x90\\xfa\\xcaO\\xd3\\xb7\\x8b$\\xceO\\x162\\xfd>\\xa4\\xa3L\\x1c\\x0fv\\xb1\\xee\\xf2#X\\xf16\\xfd\\xc6\\xa9\\xe6\\xbb\\xcb&9\\x8f\\xe9\\xd3(\\x1f\\x9c\\xa9\\xe1\\xa0*\\x01\\xb7\\x1a\\x91\\xc8E\\x0d\\xb0\\x1a[\\xf9y\\xca\\xb5W\\xe3\\xd8D\\x7f2 \\xa9PT\\xeeC\\xd0b\\xc2\\xd3|Yyo<\\x95E\\x838*X\\xb2\\x18\\x8c\\x05!!\\xf1\\x83\\xa8\\xe7\\xb1\\x00R\\x8e\\x82\\xf4M6\\x0b@\\x8e\\x9fi\\x03\\xc3\\xc338\\\"\\x87Z\\x82\\x8d\\xf3X\\x0e\\x0c\\x91\\xf8\\x8dl\\x9b\\xc7\\xd2\\xba\\x14\\xefTZ\\x8bn\\x0cm\\xf0\\xcd\\xc9\\xc1\\xfa\\xf01_\\xee\\xb8\\x1c\\xe9X7\\xe8\\xa5\\x1d\\x1a$/\\xb5\\xf1\\xc1\\x8c\\xa7Y\\x12_\\xe0\\xc2\\x96?\\xba~6\\xa4\\xe9\\xb6\\xd8B\\xa7\\x8e\\xebIK\\x80d\\x10\\x06i\\xc6#\\x9e<\\x15\\xfb\\x90t\\\"\\xdc\\xe3b3\\xed\\xb9j\\x7f\\xad\\xd3[\\xfa\\x8bS+\\x9a,\\xe3S\\xfe\\xb9\\xfcNm\\xce\\x8dLm\\xfe\\xcd\\xaa\\xfa<\\xd7\\xf3\\xca9'k\\xc2\\x88\\x04\\xb3D}U\\xcf\\xb5}u\\xda\\xf8\\xd5)\\xd9n\\x99\\xdb\\xb0\\x12\\x14\\xb9EL\\xae\\xf4\\xb3\\x9e\\xa2c\\xfb\\xd4\\xc0\\xf6iQ\\xa7\\x9a\\x82G\\x19A\\x80\\xe0\\x8c\\xe9\\xb5\\xd2p\\x17\\x02,5\\x91\\xf5\\x9e $i\\x96\\x04\\xd3\\xacGR\\xf5\\xbbCw\\x80\\xb7\\x95H\\x0b\\x81\\xddV\\x8f\\xf3u\\\\*\\xd0\\x8c\\x93h\\xb6\\xd1\\xbe\\xad\\xb1\\xc24\\x923\\xed\\xa6h\\xe6\\xeal\\xe4\\xdb\\x8b\\x15\\x97\\xac\\xe4S?\\x12\\xdc\\xa4\\xd8g\\x98\\xcf\\xa6\\xa1\\x9f\\xa6\\xccO\\x99_|\\x898\\x17\\xbe/\\xddp#\\xc3\\xb3\\xe0\\xfeL\\x9ai\\xc9\\x94\\xcc\\x0f\\xc2j\\x8a<\\x0f\\xec[\\x9d+3m\\x977\\xbdH53j\\x8a\\xb7\\xb5\\x1c-\\xfd\\xcc\\xb7z'\\x8b\\xf8y\\x86\\xf2(s\\x9c&o\\xa6\\x0f\\xe51\\xd8\\\"\\x15\\xc3\\x05\\xb1\\x0f(\\xcaG\\x15\\xa8dU\\x90d\\x1e\\x931\\x00\\xb0\\x99*4\\xbc\\xca\\xd8\\xf3\\x08\\x84\\xdf\\x1f~\\xf8E\\x7f\\xbb\\xc0@\\xc6 \\xd1 \\x01\\xc2`}\\x8c5\\xc4Xg\\xcc\\xc6\\x88m\\x04^\\n\\xc0\\xcaV\\x9b\\x0e\\xac\\\\\\x1diD\\x8f\\x06\\x02\\\"\\xf4yF\\\"\\xe0\\xd0\\x18\\xe2Au@5\\x1c\\xafOy\\xf1%\\x01\\xde\\\"2\\x882\\xa7 \\xcc\\xd9\\x9b \\xa2\\xa2\\xde5B\\xa4\\xa9w-+\\xb0\\xfa\\xb5\\x9f\\xc7A\\xbb\\x03w\\x84\\xff~\\x1d\\xfe\\x12z\\x94\\xcf\\x9c\\xca\\x8d\\xa6\\xa2\\xb3x\\xad\\xa9\\x87\\xe2x\\x98\\x15\\xe9\\x0dI\\xc0\\xed\\xa1\\xcb\\\"\\xd6\\xdf\\x07\\x1dxf\\x993\\xdaL\\xa4\\x06\\xbf8\\x9a\\xfa\\xed\\x8b\\xa8yL\\xc9\\xc0\\x0f\\xc3x\\xealYL\\xd1\\x0d\\x8c)j\\xb6\\xa1]\t\\x1986\\xc7h6%\\xbf\\xf7e\\x94\\xfas\\xeep\\xf6\\xf8\\xf1c\\x10O\\xfaU\\xf0\\xe5b:\\x1f2\\xff\\xa1\\x0b\\x80\\xf3\\xe1\\x1b\\x08\\xd5\\x00o\\xd4\\xe7\\x1e\\xe8\\xd2V\\x17h\\xf3#\\xaa\\xf4U\\xc1\\x8a\\x81\\x8f\\x8f@\\xb7\\x8180@\\\\$\\xbc\\x17\\xac\\x96\\x8c\\xfe\\x16D\\xe9\\x8aO\\xb3\\xca\\x8f\\xc14O\\xb3x\td\\xa2\\x94\\xce\\x14\\x134\\xae\\x17\\x9c4!\\xbbZ\\xcdE%B\\xae\\x86\\xc3\\x1a1+\\xc9\\xb1\\\\\\xde\\x14\\xc5\\xb5K\\x9f\\x85\\xee\\x0d\\xf4E\\xdax\\xadG\\xee\\xce\\x06I\\xd4\\xf6]\\xdd\\xddi\\xc5\\x0d\\xc9\\x91\\xa8\\x07\\xf6}\\x08f\\xf9|\\xb9\\xe4\\xb3\\xc0\\xcf\\xacR\\x0d\\xa9\\xa0A##\\xe9w\\xc6\\xbc\\xef\\xa6?!\\\\t\\xb7\\xe7O\\x1bt3L\\xean\\xf8`\\x16OARf/\\xb7*\\x8d\\x8eNx\\xf6J!\\xc9KPj\\x90\\x19V\\x17V\\xa2\\xa9\\x15X\\x92\\x08\\x98\\xbc\\x0d\\x96<\\xce3\\x19\\x1d\\x91{\\xa5\\x9f\\x83U\\x12Oy\\x9aNz\\xb0\\x86\\x7f\\xf9\\xbe\\x08.)/\\x04\\x0fd\\x014\\xb6m\\xa3#\\xea\\xd1\\xf4@\\x8d\\x94[\\x7f\\x16\\x0eq\\xe1K=6\\x01\\x17\\x1b\\xe9\\xa8\\xd3\\xf4\tP\\xa2\\x0eVq\\x9a}!\\x1d\\xa8\\x89\\xd3&\\x1f\\x04K\\xb1$\\xdfL\\x93`\\x95Y\\xed}\\xd4\\xa3\\x88\\xf8\\xc6V\\xb3\\x14\\x91II\\xa2`\\xd6\\xad.\\xda\\xf4\\xa7`\\xfe\\x8a\\xf2m\\x9b^\\xfd\\xc9h\\x1d\\x82\\xfe\\xe0\\xdePB\\xc0\\xe9\\xf5<\\xd6\\xfb\\xb8'O\\x15\\xe5\\x87\\xa3\\xfa-\\xbbJ+\\xf4L8.H\\xa4d\\xd3O\\x17~\\x14q\\x10g;`O\\xc9\\xcfX5\\xcb\\x1d\\x08\\xb8\\x0f\\xe9\\x017\\\"\\xd7\\xc2\\xe1@\\xc1m2\\xcf5\\xf04\\x80NlW\\x80b\\xc1B\\x90\\x8d\\xc1B\\xec\\xc5Q\\xc2\\xfd\\xd9E\\x9a\\xf9\\x19\\x9f.\\xfc\\xe8\\x84\\x83\\xaf\\x9b\\xf9`\\x9ap?\\xe3R\\xf4\\xee\\xf4R@\\xaa\\x9e\\x00\\x0c\\xd81\\xce\\x0b\\x12 \\x8b\\xac\\xd3U\\x85z\\xd6\\xaf\\xd8\\x11,\\x1b\\x98=^\\x07\\xbd\\xa4\\xa8\\x97n\\x05\\x99\\xacX\\x9e\\x8c\\x9f.\\x82p\\x06f\\xce\\x99\\xcc\\xb3\\xe3\\x91\\xa8\\x85\\xb2mU\\xcb\\x0e\\xf8\\xeep*\\xa9\\x9d\\xb3\\xf0\\xd8\\x96q\\xc3H=\\x82t\\x80x\\xa6\\xa7\\xef\\x19\\x1f\\x89\\xdd\\x0en\\x01%~4\\x8b\\x97\\x8e\\x0cT\\x8b\\xdcF\\xd1\\x83F\\x13\\xc6l\\x90\\xc6y2\\xe5\\xf2&\\x86\\xc0\\x18=8\\x97\\xb4Q\\x1a(\\x93>\\xc9w!S\\x12D3~\\xfer\\xee\\xf8 \\xd0[8}\\x99\\x0e\\n\\x17G1-6\\x13G\\xb1\\x8e\\xfd\\xd9\\x0c\\x84\\xadJF\\x01\\xab\\xb2\\x9e\\xe8\\xf4\\xe4\\xa2\\xeb\\xc1\\xf6\\xb71\\x04\\xc1\\xef\\xc0\\xcf2\\x7f\\xba\\x80\\x92N\\xafX\\x98R \\x93t\\x06@\\x95\\xc8\\xf8\\x82\\x85E:c\\x99_\\x0f7\\xa9b\\x12:\\xcf\\xb5&U\\xdb\\xa8\\x99\\xf1rIt\\x94w\\x13\\x07\\x18m\\xded\\xf4Wa\\xd3K\\x83\\xe3B\\xc1\\xa5\\x0e\\x11\\x9b\\x10\\xf10B\\xee3b\\x8ft\\xd7\\x04\\xfd\\xbe\\xab|\t\\x14\\xf5\\xc6\\xa0\\x1a\\xb4\\xd8\\xed3\\xcd\\xee\\xaby\\x15\\x8a\\xfd\\xf8\\xd8\\x9f\\xbek\\xf45.\\x1e?9I)\\x83;\\xf5\\x10\\xc7Z\\xf5\\xc8m(\\x1c\\xa7\\x13\\x14p'N\\xeaz,\\xed\\xf7m\\x08\\xb7\\xc2#\\x9a>w\\xc4A\\xba\\xc1\\x88`\\xd6`Q\\x82Ay\\xc3\\xfa\\x8dF\\xd6\\xd2d\\x83\\x91\\nHG]\\x8aH\\xd0@i\\x88\\x8e\\xc34\\xa2\\x1c\\x92\\xb1n\\xd5\\x03W\\xd8\\xda\\x88\\xec\\x94\\xf0\\xc3W\\x7f\\xb2\\xe4\\xa2\\x03'\\xb0\\xd1q\\xf5\\xe8\\x8f\\x1a\\x08*u\\x05\\x9a\\xb538\\xeaI\\xa0\\x9e\\xc0\\xba\\xe6\\xde\\xabG\\x19Y'-\\xb2\\x0b\\xea\\x01\\xc3\\xeb-\\xbb\\xf1-\\xf54\\x1aPRO\\x8b\\x99v\\xfd\\x81>\\x0d\\xd7\\xedS2\\xde\\xa2\\xaev7=W\\xe9\\xd7\\xf6U\\xfa\\xe5\\xb1d<\\xfc.z\\xb7s\\xf5\\xde\\x89\\xbf\\xdb\\x1f\\xb8\\x8f\\xad\\xb6\\xde\\xd4\\x03\\n\\xfb\\x10D\\x0e\\x84\\xbd\\x07\\xf5\\xd0\\x1cu\\xa5\\x84\\x8d9*\\n\\xb0y\\x10\\xf9a\\xd8\\x85>\\xcc\\x80\\x9d\\x9bv8/Xs\\xbb\\x1a\\xfe\\xd6d{N\\xaf\\x88Y\\xa0\\xf3B)\\x0f\\xe7\\xe5\\x15vu\\x7f5[\\x04)\\xdcp\\x1dA\\x01M\t\\xac\\x1b\\x01\\xec\\xc0^l\\xb7\\x05\\xe8~-\\xaa\\xd8>,d\\xd3N|\\xd1je\\x10\\xc6S?|\\x93\\xc5\\x89\\x7f\\xc2\\x9bc\\xaeM} \\x80m^AZ\\xa3\\x9d1]\\xa5\\\\\\xf9~c\\xecu\\xe93\\x02\\xcc\\xc9zY\\x92s<\\xfc\\xe3\\xb9\\xdf\\x89\\xdcA\\x16\\x7f\\x1e\\x9f\\xf1\\xe4\\xa9Oh\\x90\\xf5_\\x9d\\xef\\xf51u\\x19\\xc6\\xe9E\\xf1\\xa7|\\x95\\xf0)\\x98\\xae\\xf5\\xb4{yf\\x7f\\x95\\xb6\\x89r\\xadZ\\xbf)\\xd8\\xb4\\xe1o\\x9076\\xf5\\x12\\x91\\xd3\\x03\\x0dQ\\xadku\\xe3#\\x9bso\\x06\\x06\t\\xbd,\\xf1\\xa7\\xbc\\xd2\\x04;`\\xd38J\\xe3\\x90\\x0f \\xd3\\x01\\x7fG*\\xe9\\xccO\\\"t\\x03\\x0e{\\x7f\\xc75\\xc5tq\\x01\\x92\\x9a\\x0cTR\\xa5%V\\xdb:\\xb4.\\xa5Nk\\x88\\x16\\xc4U\\x9c\\xef\\x94\\xc9\\xa5\\xc6pgh\\xb9R\\xbe\\xb5K\\x06\\x80\t\\xcc\\xf5\\x81\\xca= \\x0c\\x9a~/(\\x91\\x08c\\x87\\x19\\xee\\xb4KS\\x12\\\"\\x80\\xbex\\xe2A\\x10-x\\x12d\\xd2\\x11\\xcc\\x10,=T\\x9a\\x13\\xa0\\x99I\\xa0\t\\xd6\\x8f2\\xcdh\\xa4\tZ\\x0cp\\x03O\\xc9\\xad\\xfeB\\x1alk\\\"g\\xf8\\xe0^\\xa7\\xf9\\xa9\\xd6\\xda\\xbdJ\\xa5\\xe1\\x83\\xbbni\\x16s\\xc5\\xfa\\x9a\\x01M\\x97\\x16\\xda4\\xce;C*\\x80\\xbeH\\xb7\\xb8$\\xd8k\\xbf\\xa5^\\x9f(\\xa9\\x8a\\xc0\\xcb\\xda\\xe5\\x01\\xce\\xe0\\x85$\\xba\\xf9\\x83(N\\x96~\\x18|\\xcd\\x13\\xb8\\x96\\nj9'\\xd3nx\\x83\\xe3\\xb2R\\xd9Pz\\xc4\\xf0\\x07~z\\x11M]\\xf4L\\xe0\\x0fVI\\xb0\\x0c\\xb2\\xe0Tl}\\xca\\x08\\x86\\x1dT?\\x01\\x17\\xab\\xb7\\xe0\\xb0\\x9e\\xc15\\x0b\\xacj\\x94\\xd8v\\xc1\\xf3\\xf7\\xa8^[kW\\x14\\xdbq!\\x16U5q\\x0f\\x13\\xc5\\xeb}h\\xa6\\xe8*X\\xfe8{[\\x0f\\\\\\x19\\xd5h\\x19Hc#go\\x08\\xfa\\x99\\xc1,HWq\\x99\\xb8\\x0b\\x89K\\xff\\xfc\\xc9I\\x91\\xb6\\xa7\\xd2d\\xc26\\xd6L\\xf8\\x1c\\x0cTx\\xa2\\xd2\\xb7\\xc5\\x8a\\x13\\x88\\xe2\\xaf\\xb9j\\xda\\x10iw\\x8fB$\\x10\\xfa\\xf8\\xc7\\xa9\\x89J\\x903\\x0fc\\xdd!v7tR\\xea\\xa3\\xf4\\x85\\xff\\x02\\xfdU\\xa0\\x8b\\x0e\\xc0\\x12qTFw\\xaa\\xe0\\xf4\\xe3\\xd6-\\x16\\xa4\\x9f\\x05Q\\x00.\\xaa\\xc1\\xd1\\x10\\x07/\\x1fN,\\xfd\\x0d\\xb5\\x19ut\\x02C\\x8d8\\xecm\\xbb \\xb8\\x851\\xa6\\xc1I\\x04S\\xbf\\xbb\\xb7\\xd3\\x89h\\xb4\\x7f\\xc2\\xba?+UV\\xf1ar\\x81\\xd1fS\\x80\\xf6\\xd2\\x00\\xce\\x19\\xa2W\\xbaM\\xf5{s{k]w\\x1ek\\x0c\\xc3n\\x9b\\xa9M\\xa6W\\xce8\\x10\\x05\\xdd#\\x0b\\x97\\xa6\\x13\\xe8\\x03\\xe7&\\xfaY\\\"\\xf6=\\xda+\\xed\\xf0n\\xdd\\xaf\\x8d$\\x90u\\x8fI2`\\xe5\\x1e\\x1d\\xb0R\\xd0\\xd9f\\xe80N;\\x1b\\x88\\xf06Tu\\x86\\xc5^\\x8e\\x0e1\\xe0\\xe6\\x95t\\xa9P\\xa1\\xb9\\xaeFw\\x14\\xbd!,\\xc2_\\xae\\xc4\\xc7Sv\\x1bJ\\xdff~4c\\xb7e\\xf1\\xdbl\\x8aF>\\xc7\\x9c\\xe5)X\\x8c\\x9f\\xf0l\\xc1\\x93\\xba\\xbc\\\\]\\xd6\\xa8\\xb8\\xe6\\xd5\\xe3\\x06.\\xf92\\x0e\\xbe\\xc6\\xc0\\x81\\xa0:\\x8a\\x06\\xf38\\x01;\\xdc\\x8c\\x8d\\xd0\\xe9R\\xee\\x94~#\\xb2\\xe2-*\\x87\\x11H\\xa2\\x8fw\\xc3|\\xd1t\\x8a\\x16[\\xb1`2Zy\\xe8h\\x9cM\\xc0X\\xd0\\x11o\\x1e\\x0b\\x8d+E\\xef\\xd1\\xac\\xf2h\\x95\\xc4\\xf3 \\xe4\\xc9\\xd1\\x11\\x1a\\x17\\xea)N\\x087b\\xf2\\xd5\\xcc\\xcf\\xf8\\xb3\\xe8\\x14nS\\x0f\\xd4\\x00od\\xf1\\xb4\\\"\\xa5\\x11]U\\xe0\\xa4\\x12\\xd6j|\\xd6q\\x10\\xcdL,%\\n\\x8a\\xa92\\xd1V\\xf7*\\\\\\xc9L)\\xc7\\xcc+9\\xef\\xcf\\xd3gQ\\xbe\\xe4\\x89\\x7f\\x1c\\xf26\\x82\\xd0\\xcd\\x8b\ty\\x19J\\x00i\\x8a\\x97\\xd3J\\xbc\\xdf\\xb6\\xb8pXUJ\\xed4\\x1c\\xef\\xca\\xd5\\x14;\\x11z\\xff\\n\\xe5\\x81?w\\x04\\xae\\x81^x:H\\xe3$\\xa3#3\\xac\\xc0/' \\xff\\n\\xa6{T\\xbaMj\\x91\\xb9O\\xc7|\\x02\\x1b\\xba\\xf2'=\\xad\\xb93j9\\xf3\\xa6X\\x11\\x1d\\xb6\\x1e\\xa8vB\\x8f\\xcd=\\x16\\x8d\\xf9\\x04bz\\xa0\\x13\\x1e\\xf2R\\xb9\\xed\\xb8z#\\xb8\\xbck\\x89\\x05\\xb83\\xa4\\xfdR\\x0e\\xefZb\\x02\\xdf\\xdfs\\x07K\\x9e-\\xe2YJ\\x91\\xda]\\xc3?p*9\\xbb\\xfa\\x11*\\xa4\\x17\\x03\\x1c\\x0b\\xab%\\xa7]\\x97\\xcd\\xbc\\\\\\x19\\xa8i\\xacfk6\\n(\\xca\\x91\\xc42\\xe0\\xb5\\xa1`H\\xcc\\xb8\\xe67`\\x01\\xa9|\\x19d\\x1d\\x16\\x16q\\x94\\x02\\xfbn\\x8f\\x9d\\x16\\x91J=v\\xec\\xb1#\\x082\\xfb\\xccc\\xe7\\x18M\\xcbc\\xef<\\xf6\\xc4c/=\\x08\\xba5\\x87\\xf3\\x17M\\xf11\\x80\\x88\\xbcP\\x8a\\xb4\\\\\\xee\\xde\\x85x\\x1awk\\xae\\x11t\\x8d\\xab\\x16\\x88\\x7f\\x0e\\xce:\\xf5d\\xd7\\x83\\xa88\\xe7\\x83\\x13\\x9ey\\x10\\xf9\\xe6|\\x90\\x8a\\xd7\\x0bxE\\xcd\\x86\\x07\\x81l\\xceQ\\x83\\xe2z\\xa5`f\\x90\\xf04\\x0eOy\\x92B\\xf3/\\xe5\\xd6R\\xa4\\x8aE\\xfd\\x84\\xa9\\xa0\\xf9v\\x91\\x16+7`iZUP\\x10\\x93|\\x88\\x0d\\xf9%|\\x0f|\\xdf8\\x81[vi\\x1f7\\xe9\\xa5H\\x04\\xc5$\\xb1M\\xbe\\x12\\xb3U\\x9c\\xc4!\\xf0\\xae/-\\x93Ox\\xd6\\x83U\\x1b\\xa09\\x9e\\xeb\\xb1Wd\\xf4\\x12\\xd1\\x07t\\xba'x\\xa6\\xa04@\\x9c\\x16\\xf4\\x04O\\xf1\\xc1xk\\\"(@XOW}\\xdeG\\xcfPv\\xa1\\x1012\\xc5[$N\\xefi\\x90L\\xf3\\xd0OX\\x10\\x9d\\xc6R\\x9a\\xe3\\xb1\\xde\\xd3\\xe7\\xaf\\x9f~\\xf9\\xf9\\x93\\xd7G\\xcf_\\xfc\\xf8\\xe5\\xd3'o\\x9f\\xbf|aS\\xbc\\x8bVO\\x9c\\x80\\x90\\xc5\\xa0RI\\xf4\\xa1\\x01\\x8c7\\xd4\\x139\\x1b\\xafP%\\x19{\\xec\\xa9>/\\xa9\\x9a\\x17\\xa9\\xc4\\x17|H\\x95~z\\xec\\xd4-\\xbc\\n\\x8a\\xf5\\xd1(p\\x83\\xe33=\\xab\\x96\\xa1\\xe2]\\x81F\\xb4Q\\xd7\t\\n\\xd4-q\\xc8bU\\x08\\xfa6\\x1d\\xd9K<\\xaa\\xe3K)3c\\xa3\\x1a\\x92\\xb9\\x9e\\x0d\\xcd\\x8bN\\xdf\\xf0$\\xa1I\\x00\\x98\\x0c\\x13\\xd3T\\xdc!G\\xabV\\xd3\\x13\\xb6\\xeeI\\xfdfI\\x81~\\xc7\\x13\\xb6<)*\\x86Uh\\x05S\\xdc8\\xadq\\x95\\x1aP~\\xed`\\x99^\\x97\\x1a4t\\xee\\x86\\xa7o\\x1c\\x8b5\\x16\\x91\\x93\\x17\\xaby\\x8b*A\\xf9\\x18\\xae1\\x9fT\\xfe\\xc7Ip\\x12D~H*\\xfc\\x15\\xb7>bO\\xccL\\xc9\\xea\\xbf\\x00\\xefA\\xb0\\xdb\\xab\\x9ff\\xd9\\x13\\x9eu\\xb9\\n*\\x07\\xf9\\xb2`\\xf4^:\\xdc\\x85]\\xee\\x80-\\xd1\\xd9\\x83D\\n.&\\xc3\\xa4z\\xe6\\x97\\x17~\\xba\\xc6\\x97-\\xf3H9\\x897?\\x85\\xfbm\\x97\\xafYH\\x18\\xc3\\xfe\\xd2=`\\x18U\\xfd\\xd6-v\\x81\\x96Rl\\x9f\\xbd\\x02^UZ0\\xe0\\x8fw:Z`N\\x0fC\\xd4Q\\x8e\\xa2\\xccA\\x00\\x9b0jWy(\\xd1\\n\\x11'\\x94A@\\xe4[\\xb7\\xd8\\xb18\\xf3i\\xac\\x91Wt\\x0c\\xbe\\xd2\\xeb\\n\\xd88\\x1a\\xb5\\x9fZ\\x99&\\xd0\\x11\\x8b\\xbf\\x10\\x88\\xbc\\x01\\xbd\\x07\\x1b\\x81\\x0dV\\x99\\xfc\\xb4H\\x96P*-\\xa9 \\xfe+x\\xf2\\x98U\\x84\\xfa\\xb4\\xef\\n\\xb3\\xbfb\\x8c#\\xb603\\x8a\\xc3p\\x07\\x00s\\xe4l\\xe5\\xf24?[_\\xdeG&\\xabf\\xbf\\xca\\x82\\x96E\\x0d\\xc4\\x19\\x97 \\x9c\\xf2\\xf0xWr2\\x19p2\\x11\\xf2h~\\x19\\xe3\\xae\\xde\\xa1u\\xf6\\xf4B\\xd4-[\\x93\\x9b_\\xb5I\\xd6\\xb6\\xb4\\x08\\xf2Qn*\\xb8\\x8b\\xf8e\\x80\\xbez\\x7f\\xcf@\\x8a\\xde\\xcaz\\xf0V\\xd8\\xc9n\\x94C\\x97{\\xeeH\\xedw\\x1aX\\xb9\\x9c5\\x01\\xd0\\x92\\xbaE\\xd8Y\\xb1\\xa2M\\xc1\\xcb\\xb3\\x0f\\xd6O\\x1f\\x82\\xd8K\\xd8\\x93\\xdd-\\xb1\\xa0\\xa1\\xe3\\x1210\\xe6\\xbe\\xd9\\xff\\x95\\xf3\\xc4#\\xfa\\xac\\x0b\\xbfF,\\x00\\xd7UV\\x12\\x1b8GD\\xae\\xa4]\\x81\\xe3\\xab\\xd3\\x8e\\xf9\\x15\\xd8\\x89\\x02\\xe7\\x8c\\xca\\x83\\xbd\\\"p\\x9e\\x99}\\xf6\\x8b\\x94\\x1b9\\xe2\\xef\\x0c\\xa9@ \\xe2Hn\\xd12\\xd5\\xc5[b/\\x07\\xc1\\xe4`\\xea\\xaf\\xb2<\\xe1o2\\x7f\\xfa\\xeem\\xe2O5QR\\xc5WG\\xabF*\\x92\\xf6\\x88(\\xef\\xa4\\xa2\\xdd\\xe6\\x15\\xe1\\xd0\\x90\\x10!\\xa55!\\x13y\\x16\\x0e\\x9cT\\xba\\xdb\\xcaqS\\x93\\x1eI\\x95S{\\xd0\\xc8\\xa42\\xaaa\\x847q\\x03U6\\x1aL\\xe3\\x99\\xc0\\xbd\\x1c\\xae\\xea@\\x10\\x88\\x08\\x19\\xd55\\x1dP\\xaf!\\x8f'\\xd5\\n\\xb8\\x03K!\\x05\\xfa\\n\\xe9\\xae]\\x90\\xee\\xdd\\x1c\\xda+\\xca<\\x8eG\\xac\\x97\\xf8_\\xf7\\xea4\\xca,{,0\\xbe7;\\xf3;\\x94\\xcd\\x92\\xaf/F\\xac'\\xfe\\xf5\\x0c\\x14\\xe7\\x83y\\x1c\\xb3>\\xe3\\x83c?\\x81\\xff\\xa2\\x1c\\xd0\\x06\\xd1\\x95\\xd9\\x99\\x0f\\xf5nXp\\xbbkD\\x85j\\x90\\xdc\\xae\\x118\\xc1\\xa2!(/\\xe2\\x04\\x86\\xc9\\xad\\xc7\\xb6k|7\\xd8\\xear]\\xd2\t\\xdch\\xc5H\\x9b\\x145\\xda\\xadx\\xf88\\x81\\xf8\\xa3\\xe3\\x84\\xb06m5\\xd9\\x89\\xd0Y\\x81X\\xd7\\xad\\xe6\\x17\\xc8\\xf0\\x0f\\x1f2\\x9f=b\\xe9C\\xd6\\xef\\xfb\\xf2\\n[\\xb1@\\xfd\\x89\\x87\\xf1\\xa9\\x95{\\xa2\\xdc5\\xd5'\\x9ak\\x96\\xa8\\xd0\\x8b\\x90\\x98\\xfe!T\\x87\\xf7\\x87\\xa8:\\xd4D\\xec\\xa8<\\xbc\\xbf\\xfd\\xa1\\x95\\x87\\xf4$*\\x1eC\\xf3-\\xdb+\\xb4\\xea=\\xf0\\xb6X\\x9d\\x87\\xc6I\\xa5m\\xb0nZ\\xa0L)G\\xb4\\x01\\xb4-\\xa7z\\xc7e\\xa7c\\xf0\\x86[\\xcc\\x0d\\x1e\\xcf\\xd65>\\xb9R\\xdf\t\\x8a)?1\\\"/M\\xe1-\\xb4\\x9115W\\x1c8\\x0c\\xfb\\xd6-\\x16\\x8f\\x95bb\\\"\\xd6\\xe5\\xba!r\\xdbQS\\xa0\\xf9=\\xc4\\x7fy]\\xaer\\xe76\\xf3\\x83H\\xad\\x86\\xddk\\xac\\x06\\x05m\\x9d\\xcc\\xaf\\xb9V\\x9a\\xf6\\xba\\xa4\\xec\\xab\\xd8\\xf46\\x94\\xcb\\x10\\x95\\xea\\xc0\\xee\\xa5|\\xd7\\xd7\\xf3\\xe6q\\xdc\\xbb\\x19U\\xbb\\x1a\\xa6\\x01Jy\\x1d\\xe6\\xaa\\xd8P;\\\"V\\x94\\xcb\\xec\\xf1M\\xea\\xdfk\\xd7I=\\xe5\\x90\\x9d\\xd2\\x01\\xcdi\\xbd\\xe8\\xaa\\xb3*g\\xd6U\\x95\\xb3hV\\xe5\\x9cZT9\\xb5\\xcf-\\xbbj|N\\xda\\x83\\xddV+\\\\\\x90\\x14c\\x1aG\\xf3\\xe0$\\x07\\xed+M5x\\xa1\\x9d\\xa5]_+OIMt%7\\xbe-hT\\xd2\\xc6\\xad0\\xc5\\xb1X\\x0fms0j8\\xd1q\\xafwt\\xc49\\x18\\x0e\\x1ch\\x0e\\xe6 M\\x9c\\xe5D\\xd2\\xc5\\xe0\\xd4\\x0fs\\xc1\\xd1,\\x94D\\xe6\\xb4V\\xdbc\\x17\\xae\\xa7\\x15\\x94\\xc5\\xa21\\x9f\\xb0\\x03\\xca\\xe9\\xba\\xcc\\x11\\xff\\xd0c\\x1bX\\x9fB\\xea>\\x1b\\xa365\\x9b\\x94I\\xd2[G\\x15b5\\x1a\\x1fM\\xf9\\x08(}7(y\\xbaO0\\xf5T\\x00\\x15+\\xb7|\\xc6r\\x8d\\xba\\xdcQ\\x94j\\xea\\x18k\\xc0U2e\\xb4\\xd1n\\x15\\x0b\\x0ev\\x04t_F\\xd3\\xc2\\xa9\\xcf\\xd1QGP\\xcc\\xe7#\\xe0}\\xbbBB\\x12\tZ\\xce\\x8d\\xc0\\xd8\\xa0\\xd1\\xa6\\xe2O\\x81\\xae/\\xe3\\x00\\x95\\x88\\xe5\\x8e\\xf9\\xa4C=\\x13m\\xd0\\xc1\\xa8\\xa8mB\\x8c)\\xd6;\\xc0\\xdbob\\xf2\\x92q0\\x11<l\\xe0\\xb2\\xb8\\xf4\\xcb\\x1bSp\\xc5\\\\\\xc1(o+\\xe7TJ\\xa4/Q0\\x19\\x07\\xd2Jn(\\x103\\x19\\xa4+\\xb8\\xf9\\x18xlH\\xdd\\xdd\\x03UZR~6i\\xfc\\xac\\x14\\xc7FM\\xd6\\xf1m\\xd3\\x8e\\x12D\\xbf\\xf5\\x8e\\xe2i\\xe1\\xd5\\xa2q\\xde-tBl\\xc7quB\\xed3B\\xcfc\\xb33x\\x98\\xc5\\x88P\\x92\\xc9XmZ\\xbc\\x15\\xbc\\xef\\x98\\xe1\\x91%c\\x8fX$\\xa6;sY0\\xceDf\\xf5\\xb2c\\xd6p\\x11\\x0e>\\x1a\\x83\\x03\\x0b\\xbc\\xd0*\\xdb\\xddz\\x08\\x847\\x16\\x95\\xb1i\\xb9\\x8a\\x93R\\x93C6*u\\xa9\\xeaFY},M\\x00\\xe8rkkV\\x10\\x17\\xd0S\\xd9\\x07\\xc6\\xda\\xef\\x16u\\xb9\\x8dU\\xfd^\\x8da\\xb9\\xfe\\xd7[n[5}\\xdd\\xab\\x08\\x8f\\xae\\xd7\\x97N\\xb7\\xaa~%\\xf8)\\x9eU\\x0d\\n6\\xcc\\xfb\\x1e\\xfd\\xeb=\\xe5\\x8dYp\\x16S\\xa7.\\xf4\\xc4\\xbdt\\xea\\xc4\\xf5t\\xb1\\xb1L\\x9d\\xc0\\xa5\\x08\\xcf\\xd4\\xd1\\xcd\\xa1\\xd1\\x8ep\\xe9\\xfc\\xf2=\\n\\xe3t\\xf6\\xb8\\xd9\\xeb\\x8f2\\x16\\xd3BU.\\x9c\\x10\\x9d\\x11\\x17\\xa7\\xc6j\\xa8H\\x8fe\\xcah\\x89\\xed\\xb3\\xfc{\\xec\\xba\\x1c\\xb3<G\\xd5c\\xfd6\\x08V\t\\xb6Y\\xf0q\\xa4{\\xe2\\xf2{\\xcd\\xce\\x034\\xba?X\\xfa\\xabvG\\xd0\\xaa\\x02;`\\x99\\xc3\\xc7\\x11\\xa8\\x9e\\xc5\\xff*J\\xb8\\xd2\\xf9\\x92\\x93W\\xb4\\xd2\\xe6\\x15\\xfe\\xf7\\xdez\\xc7\\x1a\\x90{\\x81\\xc0\\xabcl\\x9e@\\x9e\\x8a}C\\xb5\\xe2\\n\\xae\\xeb8\\x88f\\xed\\xa1l\\xbb\\xcf,\\x1e{\\x1eP\\xa6r8QA\\n\\xff\\xafx\\xaa\\x8bQ\\xb4\\xc1!\\x9c\\xfb\\xcdt\\xbb\\xd3AZ\\x89\\x96\\x911\\xc5\\x91\\xcc\\x93\\xb8\\x16\\x90\\xab\\xe9\\xb8\\x8d\\xfe\\xdb\\xc1\\xbb\\x00\\xcc\\xe1\\x18\\x04\\xc9\\x1e\\xca\\x88'\\xae\\xc7>\\x89\\xe3\\x90\\xfb\\x91\\x03\\xacLV\\xfa\\\\\\x86\\x02\\xa8\\x0b\\x02\\xbb\\xe8\\x9b\\x18\\xb3&\\xc8y\\xb0\\xed\\x0e\\x82\\x8c'~\\x16\\xd3\\xce\\x1c\\x8d\\xb9\\x94K\\xf4\\x81\\xcd\\x82\\x9c4 7\\x96nJ\\xcb\\x93Cz\\xfdO\\xe57\\xeb\\xe4b^\\xc7\\xabN\\xc7j\\xf3\\xb0<\\xbb\\x89\\xc3(\\x91\\xaf\\x1fF\\xcd\\\\8\\xcc\\x11>\\x18\\xdf[O\\xf2\\xd5\\xa3\\xfa\\xba\\x8b\\xa8dK\\xad&\\x94\\xad\\xba\\xa47\\x8d\\xba$p\\xb4TJ\\xe6S\\x94\\xcc\\x87\\xce\\xb9\\x0c\\x10~.\\x1d$2\\xe92\\x1c\\xd0\\x1c&N\\xa4\\x04\\xe8\\xf1\\xd9-|\\xe5U\\x1b\\xb7\\xf8c\\x80\\x13\\xd0\\xb9\\xf5\\x8c8g\\xf2\\x12\\x8d\\\\\\x9dh\\xee\\xe9\\x9ch!\\x8a\\x05IA,\\x92\\xb7\\xb7\\xe5\\x85=q>w\\x96\\x15\\x8ec\\xe8B\\xc4\\xb2}\\xc6\\xe12\\xfa\\xd2\\xc2\\x0d\\xe1\\xa9N|\\xb5\\x85\\x0b\\xaf\\xb6^\\xe9T\\xc5\\xcd\\xc8\\x89`k\\\"\\x97-\\xd1\\x98\\x8f\\x93\\x16\\x94\\xea\\x91#]\\x92\\x05\\xccK\\xa5f\\xca\\x12B\\x06~\\xcf^\\x08`>7\\xf4\\xc8\\xccTN8g\\xd0\\xdddb\\x85\\x05\\xc0\\xe1\\x18\\xcc\\\\\\xcf\\xe4\\x95T4\\xa4\\x11\\x04S\\xc1G\\x1c\\x90\\xc5\\xd9\\xfc\\x18\\x9c\\x8b9%p6\\x8e\\x06\\xb38\\xe2\\x0f]P\\xc0\\x9f\\xb3\\x03\\xc5\\xc4\\xa15\\xf0\\x11JL\\xa4!{\\xf1K\\xec\\xdf\\xce\\xac\\x90\\xa6<\\xf3\\xd8\\xc2Y\\xc2\\xca\\x98\\xc1u+\t\\xe6g\\xf5\\x8f\\xf6\\xfb\\x96\\xa8Yb\\xe6\\x88\\x10A\\xa5\\xb9\\xe7\\xb4\\x01\\x1b\\x00\\x02'\\x95\\x98\\xd9\\xe6\\xe8a\\xbc\\x1e\\xc8\\xedj8\\xf1L\\\"\\x84\\x0c\\x95'r\\xa4U\\xd2>{6\\x98.\\xfc\\xe4i<\\xe3O2g\\xcbu\\xd9\\xe3}v\\xef\\xde\\xf6\\x83]\\xb0Xb\\x8f\\xf6\\xd9\\xbd\\xdd\\x9d\\xe1\\x03(\\xff\\x0c\\x9cN\\x8e\\xfb\\xfdh\\\"\\xed\\x19\\x0cp>\\x93\\xf6#\\xcf\\xac <-Ax*A\\xd8\\xef\\x9f\\xda\\x81v\\xda\\x82\\x8e\\x1a:\\x89=\\xf0\\xc4D\\xb8\\x02z\\xbe\\xa3\\xad\\x9d\\x1a\\x00\\x9d\\x13\\x97^P\\xe40%4\\x15o\\xd7\\x1d_H~\\x00\\xbb2\\xab\\xc8\\xee<\\xb6,/\\x89B\\x8c\\x90\\xa2\\xe65\\xf6\\xf5\\x9a\\x96\\xe2\\xc1\\x8e\\xd4R\\\\,\\x8f\\xe3\\x10U\\x12\\x0f\\xee\\xde\\x80J\\xa2v\\xc2)\\xf48\\xb5-\\x1e>[\\x91\\xc3\\xb6\\xe9vH\\xbe\\xcb\\xdcb\\xc8{(8J\\xcd\\xf9Bm\\xf7`\\xfb\\xb2\\x88\\xd3\\xcbx\\x9a\\xc9\\xee\\xd5\\x8d:i\\xf5\\xa22o\\xac\\x9b>]G\\x89\\xa8\\x97\\xd9H\\xc6\\x95Q\\x14,\\xd9\\x04\\x953F~\\x16\\xbfR\\xdaM(B\\x95\\xc0N\\xbf\\xf5O&7\\xc74\\xea\\xba\\x0e\\x8b\\x8aC!_\\xfdZL\\xd8\\xac\\x90\\x98v\\xd54\\xcc\\xbbi.V\\x84B\\xc2d\\xfa\\xc2\\xfa\\xed\\x90\\x1az\\xed\\x1b\\xe8U;\\x97\\x14X\\xb5\\x06\\x1a%\\x8e+=\\xda6i\\xa5\\xeb\\xeaf&\\xe7`\\x81\\x9b\\x80\\xb3(\\xbb\\xef50}57\\xbb\t\\x92\\xc0\\xc5\\x98c\\xac?\\x8c\\xa1<y\\xe8\\xb2~?!\\xc9\\x17\\x14\\xddg\\xb2\\xe8DE^uV(w\\xe9\\xfd\\xc6o\\x80w5\\x8f\\xe5\\x83\\x93T\\xf2N\\xcdg\\xd2\\xd2^\\x02[BaK\\xe6\\xb1\\x1c\\xf9E\\xc8\\x19\\xd6\\x8f\\xab\\x15\\xa3w\\xdd\\x93m\\xd0\\xc8\\xf4\\xc2\\x85\\x00\\xc3k\\x04\\xed\\x14^\\x12\\xca e\\x10i\\x88i>q-wF\\xe3\\xca)\\xb4z\\x98\\x8f\\xbb\\\\\\x8f5\\x89[\\xbd\\xb3\\xfc\\xc6:\\xeb\\xc3\\xcdrP\\x04\\x01\\xf4CG\\xf3j!\\xc5h\\xda^\\x0b\\x01\\x1a{\\xa5\\x15\\xa1\\xe0B\\xa6ND[\t\\xce8\\xfa\\xa2\\x0c\\xe2\\xe8\\xe8h\\xc4r\\xf0/\\x9aQ\\xe6|G\\x91\\xbf\\xe4e\\x99S\\xa7n\\x02\\xfd\\xbe*\\x1f\\x99:q\\xfd\\x93\\xf38\\x11\\xd5\\x9b\\xb1L\\x0ez\\x86\\x8a0\\xf87\\xc2\\x7f\\xfb,v\\n\\x8anHE*\\xbf\\xdf\\xf1\\x8b\\xcf\\xba|\\xccb:\\x0e\\x8b/cA\\xc4R`jgv!\\xfel\\x9cM\\xd0\\xd6\\xb9\\xd4\\xdc4vm\\xe1\\xa7\\xcf%\\x96(X&\\xa8\\x06\\xd1r\\xd0\\xa2\\xaf\\xa7\\xa5\\x18\\x01\\xd3\\x83\\xf4)\\xc8\\xaa\\xde\\xacT\\xc8\\x97Zsf\\x01\\xd9\\xaa\\x99a6.\\xf7\\xb1z\\x932Y5$\\x7f\\x1a\\xd5\\x97\\x82\\x1c\\xd6\\xeaB\\x9a\\xac\\x08\\xefF-\\x19\\x19\\xa9VO\\xc5N\\xc2\\x9a\\xf2\\x97Q7\\xe5~b|\\x12\\x13eM\\xfcaV\\\\\\xf1i\\xc0\\xd3zMLUU\\xf1\\x17Q7\\x0c2\\xa3f\\x18dE\\xbd0\\xc8\\x8cZ\\x1a\\x0fP\\xab\\xab\\xe5\\xc8\\x16\\xb4\\x14\\xa2\\x9d\\x82S0\\xda)r\\x8av\\x8a\\x14\\xa3\\x9d<J\\xa7\\xf1J\\xa0A\\x1d\\nZ\\x8elGK\\xa9\\xd8\\x91\\x00\\x89\\xd1\\xa8R}\\xe5kDN|\\xa3.>W\\xddS\\xdfoT!\\xeb\\xc2_E\\x95j+\\xae\\xd6\\xb1\\xd8\\xde1\\xfd\\xcb]\\xbe\\xaa\\xc8\\xb7\\x031\\xdcQ\\xf01\\xa8\\x91Q\\xd6g=\\xd70\t\\xad\\xfc\\x863\\xc5\\xcby\\xd7\\xaf\\xa6\\xb5\\x98Z\\xcc\\x1c\\xe5\\xbc:\\xcaXG&\\xaf\\x0d\\xac\\xea\\xfa\\x89\\xfc\\x0e-\\x1e\\x95\\x8cw-B<8\\xc8(0\\xce\\xd1;E\\xf7\\xaa@D\\xe8\\xd5\\xb4\\xe7)\\x98\\xf6\\xb0B\\xd0^!\\xae8\\xe3\\xafp\\xcct\\x13UHPM\\x94l\\xf9u\\x1cj\\xe9\\x02\\xda\\xdd\\xb5=\\x19\\xa1\\xdf3\\x108P\\x9c\\x03\\xba\\xf6/\\xf8\\x06\\xfa\\x1c$'\\xeb\\xc6\\x8dG[E\\xfc\\x1b\\x1bx\\xd9\\x87D\\x93\\xcbK\\x91\\xaf\\xc7*\\xc0\\xb2o\\x8a\\xb2\\xe0\\xc6\\xb4\\x1e\\xca\\xe0\\xd6-V-2\\xae\\x16\\xaa\\xce\\xfcM\\x0cYM\\xa0a\\x12\\xa5>U]\\xc6`K\\x81\\x12\\x88.\\xcb\\xb8\\x10\\xc0V\\x17\\xb2\\xe3\\xae\\x8d*Uk9\\xee\\x02x\\xe2_-\\x04\\\"gg\\xb8}\\xe5\\xa1\\xd8\\xdd\\x06\\xfdZ\\x0d\\xb2\\x12\\xf2|\\xbd\\x01\\xa6\\x86CqX\\x18\\x88\\xe6\\xa6)\\x88\\xf2\\xcf\\xa1\\x1d)\\xb0o\\xa2R\\x0d&\\xee\\xcdY\\xcc\\x9e\\xea^`\\xd6\\x1d*\\xc1N7O\\xef\\x01\\xb1XR\\x9e\\x91\\xd7g\\xe1\\xaeQ-\\xea\\x9d8\\x12\\xd1\\x91\\xa4\\xa0t\\xe2\\xf0\\xc1\t'.\\xd3i\\x01R\\x07)\\x071a\\x06/\\xfbP'\\xe5\\x10\\x9d\\\\\\xdenC\\x15\\xa0\\xfa\\x81%\\xf0\\x07\\xdc9\\x93\\x01\\x8f\\xb0\\x90\\n~$\\xca\\xe0\\xad)\\x88\\xd1\\x0d\\xfd\\x94\\x1f\\xc8\\xd0\\xc1Dv3\\x14k\\x8d\\x89)\\x04\tJ\\xdej\\x1eb\\xb5\\xa0\\xff\\xbd\\xff\\xbeW\\xcd\\x97\\x87\\xa2\\xfd\\xf2\\xd20\\xc8e'\\xeeC\\xb6\\xb9\\x99@D\\x9f\\xfe>\\xeb\\xfdw V\\x00q4\\x89\t\\xd9w7j\\xb5\\x19\\xea\\xf7%Ik\\xbfB\\xd8\\x12\\x95\\xc3\\xcb\\xf0\\xd6`\\x82\\xf2{A\\x02\\xb8\\x18h\\xac\\xc2<\\xe1@\\xb3q\\xbf\\x9f48\\xf61\\xd0\\xb5\\xcb>Q\\x8b'\\x7f\\xc3\\x17\\x18\\x86\\x86\\n8\\xae\\x8b\\xf8Z\\x00mc\\x1f\t]i\\x06*)3=\\x82\\xd3\\xbc\\xdd\\xc5\\x8beA7\\x9f\\xe6\\x99f\\xc2JwG=\\x01\\xd8\\x8bZ\\xb3}\\xeb\\\"QOPD\\xdf\\xf2\\x8b\\x15\\x13\\x8c}\\xb8\\xba Fe\\xaf%>-J\\xda\\x06\\xc0\\x14>>d1{\\xc4|\\xb6\\xc9\\x86\\x0f\\x9b\\n3\\xd9\\xb0t\\xa7\\x07\\\"\\\"\\xb9?\\x04\\xa0\\xed\\xe4\\xe3x\\xe2j\\x0eW\\xad\\xdd+Z\\x83.\\x0e'\\xa0C\\xe9\\xf7ckaS\\x05\\xa9\\x1e\\xf9\\xad\\x96>\\xb1\\x03\\x15\\x8eN~N\\x81\\x8fl\\x97\\xfe\\x9a6*#\\x9f\\xb8M\\x9eV\\xd0\\xc8jo)\\xd0(@ao\\x03\\x1a\\xe5\\xcdh\\x04\\xd2\\xc4\\x8eh\\x94\\xba,\\xc7\\x10\\x0e\\xfd\\xbe%\\xf0PK`\\x03@\\x1ah\\xe3\\xf2R\\xbe\\xec\\xb3q\\xe3DS+\\xb3\\x9ao\\xcd\\x9e\\xc8\\xab{\\xe2;\\xf2V\\x9c\\xc4\\xd4M\\xe9\\xfc\\xc3\t\\xcaI\\xcfa\\xd2c\\x81\\xf6h(\\x1b@\\xd5-i\\xe4\\x0e\\x19\\xa2\\xa2\\xc7\\xf2\\xf1P&~\\xc0\\xae\\x17}\\x1fN\\xc6\\x01\\xe0\\xb8\\xff\\xf0Z\\xfdv=\\xd5\\x18N\\xe0\\x15\\xf0WJ8\\xc9p\\x8b\\xe6P\\xd7\\xf3\\x8e!\\xdd\\xc74`\\xb2\\xdf\\x8c\\xc9\\xb9\\xb4/o\\xc6\\xf5\\\\\\xe9\\xc1\\xad\\xa5B\\xd8\\x0e:\\xac\\x05\\xc9l\\xf9\\x02\\xbb\\xec\\x8bAT\\x81X\\x80\\xe3\\xb4\\x0b=\\x0d4,\\xedNO5\\xee\\xdf\\x07t\\xc8\\xc7\\x81FO\\x9bIi\\x88\\x88\\xe2\\xa3\\xa7&\\xec\\xebp2\\x8e\\x01\\xe9\\x82+\\x10\\xd6\\x1b\\xe9Yq\\x15\\xb7\\xe8\\x8c\\xa8\\xaf\\x0c\\xf7c\\x0f\\x10Z\\xe4U\\x92\\x1e\\xb2\\x0d(&\\x15\\xe0\\xb7n\\xb1P\\x117\\x176\\xdcp\\xb0\\x8aW\\x8e\\xeb\\xe1\\xa4\\xc8_n\\x87\\x96\\xd7X.\\xda}\\x80.\\xeb\\xa4\\xab\\x03\\x16\\xc9\\xa7\\xe8|\\x89\\xd9\\xfc\\xf7\\xe8_\\xd7\\xe0\\xca\\xaa\\x9a\\xff\\xbd-y?\\x11\\xdd\\xd2\\x0e\\xc0\\xa9\\x9dt\\xec|\\x9d+\\x89k1q\\xfa\\xb7\\xd79\\xca\\x81\\xc2\\x9b;\\xbf|\\x0f\\x84\\x92;/\\xfc\\x17x\\x0b\\x91;;w\\xbf\\xcb\\xb3N\\xc1\\xf5o\\xec\\xdf\\x8c\\x1c\\xac\\xca:_\\x11\\xack\\xf2\\xc6u\\\"y\\x13l\\xb1F.2\\x0f,\\xe1,fpU\\xe6-.\\xb9\\xb4h\\x1cwZuU&\\xab\\xcd\\x7fh\\x8642\\xc1\\x03W\\x84\\xbf\\xfa}\\xee~\\x98\\xbdP\\x93XA\\x10)\\xd8\\xf87`\\xa0x\\x86\\xaf\\x12\\xab\\xa8\\xf2\\x9b\\xa0\\n7Ct\\x08~\\xe5\\x03\\xd0\\x9b\\x9b<\\x05\\xd2B\\x06\\x1a\\xd5#++j\\xe3\\xe3\\x08x\\x10%\\x83k\\x1e#\\xad\\xbe\\xaf\\n\\x89@\\xc1:\\xa1\\xa142\\x11\\xbc\\x95\\x89h\\xdc\\xa6\\xb3\\xca6\\xddr \\xeb\\xc434\\xb2\\x96-\\xfd(\\x97\\xb7\\xfc\\x8c\\xf5\\x10\\xd6\\xba\\xd2\\xad\\xc7\\xa9\\x02\\x9c\\xd2\\x00i\\x0b\\xaf\\xdcD\\x0fY\\xae\\x81\\xb3\\xe0\\xc0\\xfd\\xb2\\xa7\\xa9\\xe4\\xc0s\\xc5\\x81\\x8b\\xbcT\\xe3\\xc0surH;\\x9c\\x1c\\x9aN\\x0d\\x96\\x13\\x03\\x9c\\x16R\\xf8\\xe8p\\x02N>\\xfa\\xfd\\xbc\\x0b\\xdd\\xbc\\xca(\\\\O}\\x06\\xce\\x11\\x99\\xc7\\x02\\xb0/\\x10hHxN\\xee@\\x0b;a8\\x1es\\x91\\xcb\\xc7\\xc1\\n\\xb2\\x14\\x82\\x18 \\x93\\xc7\\xbb+\\xe3<\\x9e\\xa1B8C\\xb5\\xb3\\xa6)B$W\\xc1\\xbf\\xe5)\\x0d\\x91\\xdf_\\x03\\xf9eo6\\x1a{\\xd3rd\\xc8\\xf4\\xcf\\xe7&#\\x9b\\x13,r^e\\x91\\xd3*\\x8b\\x9c\\x16,r^\\xfe\\\"Xd\\xb3ekO%G,f\\xaa#x\\xae\\xb1e\\xd9\t9\\xbb\\xe2\\xf2\\xf2t\\\"nv\\xf5{\\xf4\\xaf\\x1b\\xda\\x03m\\xbe\\xc1\\xe9\\xcb3;C\\xfa\\x82\\x9b\\xe9K\\\\\\x1aY\\x1a\\x17_R\\xdb\\xcd\\xb7j\\xb1\\xf5\\\\\\x84[6m\\x88\\x16!\\xe3\\x18\\xb4\\xdcx\\x97B\\xd3\\xb9\\xc7V\\x1e\\xd8WN\\xa5\\x81\\xa21\\x1f\\x8b\\xa6\\xccS\\xd0n(\\xc7sf\\xfe\\x12\\xf2\\x95\\x13\\xc6*F\\x97\\xf5\\xc0$\\xbc\\x99\\x97S\\x9cF\\xe9_\\x98\\xc4\\xad\\x04|C\\xa9\\xa8\\x0ep\\xaf\\xd4*\\xa9\\xa7\\x9d\\xad0\\xe5\\xb1/A3\\xbb\\xb4`\\x9f\\xb7<\\xb69\\x14[\\xc3\\xa9\\xbc}2/\\x9c\\\"\\xac\\xc4\\x9b\\xa9s\\xead\\xb1\\x1c8\\x1a\\x00\\xd9i\\x83\\xe1\\xf2\\xfb\\x1a\\xf8\\xe2H\\xb9\\xe9m\\x87]\\xe3\\xf5v\\xf2\\x02%+\\xcc\\xdd4\\x17\\x05$\\xcct\\xc3\\xbd}6\\x9e\\x81\\xcb\\x8aH\\x19\\xf1!u\\x8f\\\\\\xd4\\xc1\\x01h\t\\xeeM=\tnH`\\x91\\x89tb%}L@\\xa8|e\\x93\\xdfbD\\xa3\\x1e\\xe0?\\xect\\x94\\xf2\\x15\\xbb\\x901\\x0d`\\xbf^\\xa0\\xf7\\x8d\\xd2%2\\xac-\\xf4\\x07\\x1b\\xe0~%\\xbd\\x19'\\x10M!\\x8e2~\\x9eA,\\xa6\\xe4$u\\x0b\\xfb\\xcd\\x04\\xe3G\\xc4\\x88)A\\x89BbNlq\\xa2[I#\\x86\\xfb\\x96k\\xab\\xcd\\x0d\\xc7)^\\x8c\\x94F\\xe1\\xd6E\\x11\\x89\\xa1\\xf3jd-\\xe9\\xffC5\\xcf\\xb8\\x1da\\x14\\xff\\x8c,\\x05\\x1f\\x043\\xbb\\xe4O\\xfa\\xc2d\\x8d\\xf1\\xfc\\x01\\x03q\\xbb\\x13\\xadaOf\\xe3\\xb4t\\xdb\\x8b?\\xe2R'ct>\\x03W\\x9a\\xa9t\\x80\\xc8\\x0e\\x98\\xd2\\xec:\\xe0P\\xdcY\\xa0\\xe0\\xdc\\xde\t\\x86\\xf6lbnG\\xb8\\xe2\\x1b\\x8bbh\\xe7\\x06Q_\\x89Ri\\x89R\\xa9G\\xaf\\xaeXF6\\x88\\x8b;\\xc9nCI\\x14\\xc3\\xd5/\\xc7C\\xf5n\\xd7\\x90\\xf5Gk\\x8c\\xb7\\xdc\\xb4gr\\\\\\xe8)\\xdc\\xc2\\xb5\\xa1\\x087wBy\\x9b\\xd9\\xf4\\xfeB\\x1d\\xb6q+\\xa6\\xa8\\x00\\x97\\xbc\\xb4\\x94\\xb3\\xca\\xae.U\\xb3\\x1c\\xe2\\x03N\\x8fq\\xc9E\\xb8\\x00}\\xcd\\x05\\xf9\\xb2\\xc5\\xfd\\xcc{OR\\xd9\\xb4\\x03\\x95\\x85\\x95#I\\xe1\\x1adr0=\\xaeQ\\xca\\xc1\\xf4\\xd8-\\x0d\\xa0\\xc5\\xcf\\x02\\xd7\\xf1G4\\x08\\xc4\\x96)\\x9d\\xef\\x001e\\xa3\\x12\\xa9\\x89\\xeb\\xe38\\x8a\\xc2\\x9bu\\xfbvA\\xb0\\xeb\\x14\\xb1\\x9c\\x01\\xb1\\xbc\\xbc\\x04BY\\xec\\x9c\\x0b\\xdd\\xabv\\x95\\x84b\\xa2FEU$\\x19 \\x98 n\\xb1\\xf5^\\xb9\\xbcn\\xa7r\\xa2\\x0bD\\xff5>\\xa6\\xe8\\x0f4\\xaa\\xba\\x13\\x0b\\x8cl_\\x1d\\x92\\xce\\xc8\\x9e\\xf3\\xa2\\xe7&\\xea\\x1ac)~\\xde\\x083k2\\xad\\xc8\\xcc\\xee\\x191\\x18\\x03\\x99^\\xbf\\xc4\\xed\\xcb\\xf4\\xba7]\\x15K\\x8c\\x0epc2\\xb9\\x1dn\\x0c\\xc5N/[p\\xf0\\xd8/\\xfe\\x8fd$d\\xb8X\\x1fG\\\\\\xfd/\\xd2\\xdd:[\\xabB\\x19val\\xb5\\x0b7\\xc6\\xac\\xc4M\\x99s\\xea\\xa6\\x11S\\xa62[\\xca\\xec_]\\x0e\\xac\\x96)\\x14T\\x1c\\xfc\\xa3\\n\\xf2\\xb3\\x01\\x91\\x96\\xe8k!\\xb7{\\xac\\x0f\\xde\\x1eX\\x9f\\xf5n+3\\xcfS?\\x0cfL\\x0dv\\x19\\xcf\\xb8q\\xf1\\x8d\\\"I\t\\xee\\xeb\\xb65\\x11Z\\x02\\xf4\\xc2\\xb0r\\xc7/ES1:X\\xf5\\xa5\\xc9\\x14\\xb1Q%\\xf4\\xe14\\xc2\\x8aC\\x8f\\xcde\\x13f\\x19\\xd1\\x95i\\xabS&\\xbd4`\\xee\\x98\\xb2\\xb7Q\\x8f\\x18BH\\x04\\x9c\\xfb\\x02yj\\xce\\xb8\\xf8=b\\x9f\\xf2\\x8cO3>cy\\x14'3\\x9e\\xf0\\x19\\x13\\x88x)\\xb0\\x8e\\xdd*\\\"sC\\xf8\\x9e\\\\t\\xcecg\\x8b`\\xba`A\\xc4\\x002K\\xff\\x1dO\\x19F\\x1fc3hMpC\\xf1\\x9c\\xa5\\xf9t\\xca\\xd3\\xf4\\xce\\xdc\\x0f\\xc2<\\xe1,X\\xae\\xe24\\x0d\\x8eC\\xce\\x9c\\xb3\\x05\\x8fD\\x13\\xb7u\\xec\\xbe\\x0d\\x13\\xeb\\x1eFO\\xe3(\\x0df<aY\\xcc\\x12\\x1e^\\xb08b\\xb7E\\xb7n\\xb38\\xc1:X\\x16\\x8c\\x02\\xb9?\\x1b\\xd8\\\"\\xd9\\x00(\\x80\\x04\\x17\\xfa\\xb2\\x04\\x04P0\\x17\\x9cd9\\x92\\x06\\xee\\x93fqVml\\xa6zByg\\x0c\\xb0\\xc2\\xe8\\x95\\xfc1\\x87\\x1f\\xc5\\xc6\\x95\\xac\\xd7\\x17\\xd8\\x03i\\x94\\x9e\\x81A\\x84(\\x80D\\xc7\\x95T\\x07\\x8d\\x8ag.\\xf3\\x07\\xe2g\\x07V(u\\xa6\\xc8\\xac(\\x96\\x82\\xe4PZA\\x92:+j\\x7f0{_\\xd0\\x10\\xa4\\x8a\\xaa\\xbf\\xf6\\xe3\\x19y\\xc3\\xd6\\x87\\xab\\xf6\\x1d\\x16\\xc5k\\x9e%\\x01?\\xe5%\\xc5\\x99\\xc5\\x1c\tQ\\xb0\\\\\\x85\\\\0E\\n\\x0d\\x15\\x12\\xdf&\\xa9\\x92z\\xf0\\xd3\\xce\\xd4c\\xd4\\x88k\\xe3+\\xa8\\xfd\\xaf\\xe38\\xab\\x8b\\xd56\\xde\\x86\\xbe\\xc9\\xfa7\\xd6\\xbd\\xa2?\\xeb\\xf5P\\xcd\\x08Do\\x905Ht\\xac\\xa4\\x94\\x8cW]\\xc4\\x80\\xbe\\xf2l;\\x8dM\\xc4\\x00\\xfb`\\xbfO{\\xf5k\\xb0s\\x82;\\xa3d%\\xa6\\x0e\\xf8]i\\x12}\\x8e\\x87\\xc1\\xd0t\\x87\\xfef\\xee\\x04\\xae\\x8d\\xc7\\x0f\\x00\\xd6\\x10\\x98\\x11\\x80\\x0e\\xa7\\x8d\\xa0Fl\\x9a\\xfa\\x98\\xea\\x9e\\xc3\\xf4\\xe7\\xbdh\\xc9w\\xbaO[Gn_;`\\xcf\\xf1D\\x023\\xd5\\xe8\\x84\\xb114Z\\x0cT\\xb2A>\\x80N\\x04m3*?\\x1c7\\x1f\\x1b\\xc6\t\\x15\\xbd\\xc8\\x02\\x89\\xb5N\\x0e\\x84'T\\x9dc\\xac\\xf0\\x96:\\xbbh9S$k\\x9d)H\\x13\\x97\\x0fz\\x8a\\xa8\\x8b\\xa6\\xa5\\x90\\xe0\\x03\\xe9\\x89\\x9b\\x14\\xb7JOY\\x06\\x90k\\x06[\\x86\\xe7\\xe3\\xfa\\xc5\\xfc\\xea\\xe5\\xf3\\xeb\\x03\\x88p}\\xa5NYm\\x91\\x96\\xad\\x86*\\xe8\\xf9\\xfdF\\xe7Q\\x9c\\xca\\xd6\\xbf\\xbd\\xd1\\xe8\\xa2\\x1f\\xaf\\xe28\\xe5\\x15\\x19p\\xe8\\xa6]\\xfc\\xd3\\xa2\\x895H\\xad\\xcd\\x89\\xa3\\x0eC\\xaf\\xfc4\\xe5\\xb3B\\x10\\xa3\\x05\\x84\\xc6K4\\xc1\\x9c\\xcf\\xea\\xf1\\x8cn\\x16~{\\x86JG\\xcc\\xf3\\x9d\\xf1at\\x98\\x1c\\xe6\\xdb[\\xdb\\xf7\\xe1\\xef\\x83\\xc9\\x9d\\x93u\\xc1\\xac\\xd0_\\xcc:\\x89\\xfb\\x85\\xc2\\xe21\\x1bnm1\\xe5\\x80.\\x93\\x0eX\\xb7<\\xf6\\xe0\\x01\\x1c\\x13\\xff\\xdbo\\xffnO\\xde\\xff\\xcf\\xd4=iAq\\x9b\\x97\\x8a\\xfc\\xca\\x0f\\xdf\\xbc|1P\\xe0\\xbcp\\xb8+\\x9b\\x1f\\x82b\\xa3\\xb6\\x8cn\\x16\\xb8\\xff\\xafAN\\xa5\\xe7\\x18\\xbf\\x88\\xa3\\xcdi\\xcc\\x93)\\x1e\\xe3\\xb2X\\\"\\xa2\\x8b7y'\\x1f\\xf4\\xc2\\xc6M\\xc4\\x88\\xb7i\\x13\\xcb\\xef\\x05\\x83Y\\x90\\xaebS\\xa6B\\xb8\\xd4\\x14}\\xab\\xd9@\\x04\\x10\\x1b\\x9e\\xbbT\\xect0()D6\\x90^\\x84\\x86/p\\xbe\\xe4R\\xd4nY\\x89\\x0cCu\\x83\\x01?\\xab$\\xd2\\x91\\x0c\\xd6XC\\xddBtQl\\xfe\\xaa\\xfd\\xe6eR\\x93\\xff5\\xc4\\xc9\\xcb\\xc1\\x9c\\x8e:\\xd1\\xd5\\xbaR\\x85X\\x8d1\\xeb4Z\\xee\\x10\\xe3\\xb3\\xf05\\xdf\\xd5\\xa8n\\x16\\xd9m:y\\x1b\\xb6\\x9b\\xe2G\\xdf\\\"\\xae\\xcc%a\\xa7\\xc5\\x98\\xc6\\xaa\\xa1u\\xf0\\xa6(S\\x85Q\\xaa\\xe6\\xcc\\x8b\\x9c\\xa0\\x16M{eg\\x9fR\\xd1\\xce\\x93\\x93\\xae+p\\xe6\\x81S!\\x8f\\xd5\\xfc\\x99\\x82\\xc4\\x11|\\xf2\\xa0\\xac\\x85\\xed\\xb3\\x95bK\\x17\\xa0D(\\x16hjY\\xa0i\\xf1\\xe3\\x80\\xf5p\\xbd\\xb0\\x11\\x03\\xdf0\\x85\\xbc\\x91\\xf5\\xc5\\xe7\\x8b\\x8e\\x92\\xf8:C\\x07k)\\xcf\\xde\\x06K\\x1e\\xe7Y\\xfb\\xb9\\xa7\\x10\\x00E\\xa4p\\x85\\xdb\\xf4]\\xe2S\\x83<J\\xf8\\\\\\x0c\\xa0\\xfc\\xe5@\\xc4S\\xf0*':s\\xeb\\x16\\xebE\\xfc<{\\x1bL\\xdf\\xf5\\xc0:H%\\xc3\\x02R\\xdd\\x14\\x89\\xa2\\xe2\\xfa\\xfd\\x97G\\x96e\\xdd\\xb9\\xb0\\xec\\xff\\xa9\\xad\\xff\\xcbJ\\xff\\x97Z\\xff[48\\xb5y \\x97}el3\\x8c\\xf7_hL\\xc5\\xd9\\n!d@\\x86S\\x90\\xd1k/\\xc9\\xa0\\x8a\\x02\\x97\\xf8g\\\\l\\xac\\xa2\\xd9S\\x0c\\x0e\\xba\\xbf\\xbf\\xaf\\xe7\\\\^\\xca\\xa8\\xede\\x9a\\xd8\\xb6\\x07;;;l\\xc4\\xa6\\xce\\xdcASt=\\x1f\\x8d\\xa3\\xb6$f/\\xd9>\\xfb\\xe5{\\xe9Wk\\xc86\\xd9\\xa9\\xcb>F\\xe9\\xa6\\x12U\\xd4\\x81\\x03:\\xef\\x9c\\x02\\x11\\x0c\\xf6\\xf2\\x92\\xc1\\x00\\xd9\\xbe\\x86%\\x1e\\x0b\\xda\\xa7\\xdd\\\"\\xed\\x10\\x8f\\x06\\xd5}\\x0d\\xaa\\x8e\\x06BOW\\xd8U\\xb6P\\xb4]sb\\xd7E\\x85 \\x04\\xf4\\xab\\xd8\\xd9H\\xe3\\x01i1WY\\xc6\\xbe\\x13 \\xa4:\\x89'B\\x8f\\x85\\x9a\\x84\\x02~R\\x12N\\xd3\\xefSu\\x0f\\xaa\\xc1\\x9c\\xde\\x86fm(\\xcb\\xeahK\\xeeEh\\xae$\\x90\\x0018v\\x96]\\x1a\\xae!:7\\xb0\\xdc\\xf21\\xc48c\\xfc\\xc5\\xef\\x1b\\xd9\\x02\\x0d_\\xcc\\xea\\x88\\xf9`m\\xaeYpe\\xd2\\x80Cl\\x07\\x8fY\\xdc\\xe4[\\x84\\x9fO9\\x9f\\xa5l\\xe9\\x9f\\x07\\xcb|\\xc9\\n\\xbdE\\x86P\\xf9\\xae\\x9c\\x8dl\\x0f\\xef\\xee\\xdd\\xbd\\xbf\\xb3{w\\xef\\xea\\xed\\xb5\\x83s\\x9b\\xd6\\x8b\\xee\\xeaW<\\x02\\xb1#w\\xdc\\x8ee\\x1c)b/N\\x8a\\xbd8\\x97n\\xe0\\xa55\\xf9\\x1a\\x9cr\\xf3F\\xec\\xa3\\x89M3\\xe2\\xeb\\xee}\\x81E\\x18,\\x82Lu\\xad\\xdd`\\xe0\\xa4\\xfc\\x14\\xb1\\x05\\x89\\xd1+\\xaf\\x08\\x069\\x80L\\xe9\\x0e\\xe1&\\x90\\xa5er\\x1b\\x94\\xcfA{\\xbc\\xabu\\xd7\\xd8i\\x19\\x02\\x9a\\xb8\\xf9\\x00a#\\xcd\\xe4\\xbc\\x94\\x7f\\x99\\x99iSf\\x08\\x9e \\xc9u(Q\\x8d\\xf2\\xf4\\xb7\\x08:\\xdd\\xc89\\x95\\x17d\\xd2q\\xd2`\\xca;\\x05\\xe3\\xf4\\x86;\\xee\\xf9x:AC\\xb7\\x145\\x8eS\\x8fm4\\xc6\\xb6\\x11\\xb5\\xfa\\xfd\\x88=\\xd2\\x1c\\xe9\\xd1\\xed3MH\\x08\\xe6\\xd9\\xbe\\xd8=\\x9d\\xc4\\xf5XBV\\xb0\\x9b\\x87\\xcb\\x0d8\\xc7\\x1b\\x90\\xd2\\x95\\x8a\\xf5\\xa3\\xf2\\x12\\xe9\\x86\\x0c_\\x95\\x83A\\xba\\xfb\\xd0\\x05c\\xb0 \\xca\\xd7\\xba\\xab\\xd4\\x1c\\xe9C=JT\\x94Z\\x05\\xe4b\\x18\\x99\\xceM\\xe4\\xe3\\xacT\\xa9\\xa6\\xc0ZlnFjxY\\xa3\\xcd;\\xe8\\xff\\xa3\\xe2L\\x1eJ\\xd7\\xd5q0\\x03\\xfb\\xc7&#\\xf4\\xf5\\x81\\xc3\\xc8\\xa9\\xb9\\xa6i\\xba\\xbc\\xa63\\xf4*\\x0b\\xac\\xb2\\xa0pX\\xe6\\x87\\xbfG\\xff\\xba\\x11*ez\\xdb\\x8d\\xe9Cg\\xd0L\\xbd|\\xbb\\xb3\\xdd\\xf2\\xb3\\xf1 \\xe1\\xf3\\xa7q\\x1ee<\\xe9\\xb8u\\x99\\xfbV\\x0eF+\\x1a\\xf8\\xb4\\xbd*\\xb6\\xecUq\\xb7\\xbd*\\xed \\x80\\xc8et;\\xf1\\x8d\\x9a#\\xe6\\xfa~\\xd4\\xaa\\x1a\\xe8\\xf7\\xf3\\xba&\\x85:C\\xb5\\xb6S,0kc\\xc5~\\x97\\xb6\\xb0\\xbf\\x10\\xc8\\xd0TP\\xf9\\x15\\xe3o[\\x0f^\\xf3\\xf9\\x88%\\xddN$\\\\\\xf9\\x1b\\xd2L`\\xe9E\\xac\\xddEC\\xbb\\xa6\\xf2ZX\\x8e\\xa6\\x8a\\x1b\\x9b\\x9b\\xb9:\\xbaTN+\\x1b[\\x10\\xa3\\x90\\xbc1Fl`'<{-\\x11\\xf4;\\x1a\\xc7V9\\x88\\x1c\\xfd\\xc9\\x12\\xeb\\xffzb--\\x04\\x11\\xb5\\xc0\\\"\\x8f\\xd5\\xbc4G\\xa5\\xd3\\xde\\x0d\\xe9\\xb47c#\\x15V\\xb1uw\\x00\\xc3\\xb2\\xc1\\xd37o\\xc4t\\xc0\\xcb\\x80\\xa7S\\x7fUJT\\xf5D\\x13Tjgi\\xdf\\x83\\x94[\\x06#\\xaa\\x97\\xc5\\x90\\xed\\xab\\xf2\\xb3_\\xb1\\x84\\xff\\\"\\x0f\\x12\\x9e2\\xbf\\xf4~g5Z\\xaa\\xb8\\xbc\\xd6\\xfcLI/LQ\\x11eA\\x10\\xcf\\xcd!\\x9e\\x83\\x05yA^\\xba\\x121\\xe1!\\xeb\\xf7c\\xf6\\x88%\\x0f]\\x80\\xb0\\x8c\\xe1\\xa3\\x17\\x8a\\xe1\\xeac\\xc0\\xfa\\x02\\xfa\\x8f\\xf7\\xd9\\x10\\xd8`\\xc1\\x81\\xec\\x0c\\x81\\xeel\\xef1\\x15\\x85\\x10\\x00\\x10c\\x81\\xc7\\xfb\\xec\\xee\\xfd\\xa2\\xec\\xbd=(\\xdb\\x94\\x7f\\xeb\\x16\\xbb{\\x0f (\\x08\\xe3\\xe1!\\xf8\\x8d*\\x95\\x13\\xc3]P\\xe60A,\\x1d\\xe8k\\x8cMnH\\xef\\xddw\\xef\\x81!\t\\x9e \\xb0\\xab\\xdb\\xf7e\\x86\\xea\\xe0\\x83\\xf2\\x95\\xee!\\xa4\\xee\\xde+R\\x1fl\\x15\\xa9\\x0f\\xf6\\x8a\\xd4\\xe1\\xf66\\xdc\\x07\\x058\\x01\\x8c\\x04\\x05\\xc7.W\\x13\\x01n\\xbd\\xff\\xfb\\x0f\\x7f\\xbf\\xd7\\xb8\\x0eM\\xbbw\\xc2\\x8eB\\xc7X\\x10\\xc1\\xe0\\x1b\\x1c\\xb5\\xbd\\n\\\"\\xcb0\\x9f\\xd5\\xa5Zu\\xdf\\x9d\\xe8\\x82\\xc3\\xf7nqa'rv\\x86\\xd7\\xf1\\xedI\\xfa\\xae\\x17\\x0d\\xf7\\x8e\\x8ex\\xfaE<\\xcbC\\xde\\xabSm\\x19*H\\x0f\\xa5\\xe0\\xa2\\xac\\x07\\xe2\\xe95\\xd9\\xaa(#\\x80D\\x15\\xf6X\\xac^\\xcb\\x0d\\xe8\\xbd\\xc9n\\x04\\x8e8\\xdc\\xde\\xab\\xbb\\xf9\\x8de\\xd6\\xddm\\x88\\xcaY\\xe4\\xa9\\x0e`\\xc81\\xb2\\x0f\\x1c\\x89L9N\\xe9\\xf7\\x95\\xda\\xa10N`\\xddO\\xdfz\\xc4\\xf4\\xd7c\\x02\\xd4\\xbeC\\x93\\xc5i\\xbc\\\\\\xc5\\x91 \\x87\\x14\\x1c\\xd4\\xf3d\\xb5\\x1a\\xb1\\x8bb\\x06\\xad\\xe5\\xfc<[\\xc4I\\xf0\\xb5/z\\xf2*^\\xe5\\xab\\x11;\\xee^\\x8d\\x7f\\x92E#v\\xb4F\\x85\\x97+\\x9e\\xc0\\xc7\\xa0\\xe6Y\\xb7\\x9a\\xe9\\x88=k/\\xf9$\\xcf\\x16\\xcf3\\xbe\\x1c\\xb1\\xf3\\xf6\\xc2\\xa2\\xd9gh\\xf6\\xf6\\xa6\\xbdt,\\x8ao\\x8f\\xd8\\x93\\xf6\\xa2\\xfe*\\xf8\\x11\\xbf\\x10}\\x19\\xb1\\xa7\\xed\\xc5\\x8f\\xfd4\\x98b\\xe9w\\xed\\xa5\\xe5\\x91\\xe4e{\\xc908\\xe5\\xafy\\xba\\x8a\\xa3\\x94\\x8f\\xd8\\xab\\xf6\\nA4\\x8fG\\xec\\x8f\\xb5\\x17|\\x1e\\xcd\\xe3\\xa7\\x18\\xd8\\x9d'#\\xc6y{\\x95\\x1f\\xe6\\xcb\\xd5\\xdb\\xf8\\x95/F\\x99u(\\x1fGa\\x10\\xf1\\x1f\\xfba0\\xf3\\xb38\\xf9\\xc4\\x9f\\x9d\\xf0\\x11{\\xdb\\xa1\\xa2\\xc2\\xaet\\xc4\\xbeX\\xa3\\xf8\\x88\\xfd\\xbc\\xbdt\\x81\\xbao\\xf2\\xe5\\xd2O.F\\xec\\xc5\\xfa\\x95\\xbe\\x80\\xa0\\x98#\\xf6z\\xfd\\xaa\\x08\\xbfO\\xdb+.\\x82\\x93E\\x18\\x9c,2\\xc1p\\x8c\\xd8/\\xdak$\\x12S\\xd2\\x11\\xfb\\xac{\\xe9\\x11\\xfb\\xba{\\xe1O\\xe2\\xd9\\xc5\\x88}\\xd2^a\\xe5'\\xfe\\x92g<IG\\xec\\xc7k\\x14\\x7f\\x1d\\x9f\\x8d\\xd8\\x0f\\xdb+\\xf0s>\\xcd3>b\\xbf\\xd5^v\\xc1\\xfd\\x19t\\xe4G\\xede\\xc1\\x886\\x1d\\xb1\\x1f\\xb4\\x17\\x85[|Q&\\x98\\xd7\\x11\\xfb\\xa8\\xbd||\\xca\\x93\\xd3\\x80\\x9f\\x8d\\xd8O\\xdb\\x0b\\xcf\\xe38\\x13\\x0b3\\xea\\xb0\\xd0>\\x0b\\xc2\\x8c'\\xdajN:Tz% \\x8e\\xd3\\x19w(>\\xcd\\x93p\\xc4\\x82\\x0e%\\xd3\\xe9\\x82/\\x05\\x0e\\xfa\\x1d\\n\\xbf\\xc1\\xc2Z\\xdf\\xf3\\x0e\\xb5\\x96\\xf1\\x8c\\x87\\xcf\\xce\\xfd\\xe5*\\xe4#\\x16v\\xa8\\xf1\\x85\\xa8\\xf1\\x93\\xc4_\\xad\\xc47\\xa6]k<\\x8d\\xc3\\xd0_\\x895\\x92v\\xad2b\\xf3\\xaeE\\xd3\\x11[u(\\xfb,\\xca\\x97\\xb2\\xe9Y\\x87\\xe2\\xc8\\xe8\\xc8\\n\\x8b\\x0e\\x15\\xc0lS\\x96?\\xedP\\xbepv/\\xeb,;\\xd5A\\x86k\\xc4N:\\x94~\\x9b\\\\<\\xcf^\\xe6\\xd9'y\\x96\t\\xb2~\\xd1\\xa1\\xce\\x17~\\xf2n\\x16\\x9fE#v\\xde\\xa1\\xf4'~\\xca?\\xf7/\\xe2<\\x1b\\xb17\\x1d\\xca\\xff\\x98'\\xa9\\xe0\\xad\\x12\\xffd\\xe9\\xe3z\\x1b\\xb1\\xe3\\xee\\x15\\xdfd\\xfer5bG\\x1dj\\x14\\x1b\\xc6\\xb3\\xf3l\\xc4>_\\xaf\\x02\\x90\\xcf/\\xdb\\xeb\\xbcR\\xf4\\x16>\\xf2\\x9bkTx\\x1eM\\xc3|\\xc6\\x9f-Wb6\\x7f\\xd2^\\xb3\\xe8\\x1eD\\x1ay\\xbeF\\x05\\x8d*\\x9c\\xb4W\\xfb\\x94\\xf3\\xd5\\xe7A\\xf4n\\xc4\\xce:@Y\\xf0?_\\n\\x92\\xf6\\xc7\\x07\\xf2\\xb5\\xb9\\xac@\\x18\\xdc\\xba\\xb1\\x82\\xfa\\xdd@\\xdaNO\\x9e\\xa4)\\x17\\x1c\\xfe\\xb3\\xa2Cd\\xe9Nrl\\xdaO9\\xab\\x9d%\\x9evR#D\\x9d\\xdazG\\xb4Ej\\x8e\\xc6\\xb3\\x02\\xdel^\\xbe\\xa6\\xe5\\xab_\\xbe\\x06\\xe5+u6E=\\xa0|\\xc5\\xc3]X&D\\x1e\\x9b\\x96\\xbfV\\xe5\\xeb\\xa2|=-_\\x97\\xea\\xb5\\xf1\\xc4\\xfb\\x92C\\xf0\\x81\\x07\\xd4\\x91\\x17\\xf3\\xb6w\\x8d\\x08GE\\xde\\xcev=\\xcf/\\xf2\\xee\\xee\\x19\\xd1r\\x8a\\xbc\\xfbw\\x8dx@e\\x9eq\\xfc\\x0e\\xcb<\\xa3/\\xd3\\\"\\xef\\xc1N=o^\\xe6\\x19}Y\\x95y\\xf7\\xeby\\xb32\\xcf\\x80\\xcbB\\xe5\\xdd\\xdd2\\xbewZ\\xe6\\x19m.\\x8b\\xbc\\xe1V=\\xefD\\xe5=\\xd81\\xc6wQ\\xe6\\x19c8.\\xf3\\x8c\\xef\\x1d\\x95y\\xc6\\x18\\xce\\x8a\\xbc\\xbbF_\\x9e\\x95y\\xc3z\\xdey\\x99g\\xcc\\xfb\\x9b2\\xcf\\x80\\xcb\\xd32\\xcf\\x98\\xf7we\\x9e1\\xefO\\xca<\\x03./\\xcb<c\\xec\\xaf\\xca<c\\xeco\\x8b\\xbc{\\xc6\\xd8\\xbf(\\xf3\\x8c\\xb1?/\\xf3\\x8c\\xb1\\xff\\xbc\\xcc3\\xc6\\xfe\\xa2\\xcc3\\xc6\\xfe\\xba\\xcc3\\xc6\\xfei\\x99g\\x8c\\xfd\\xf32\\xcf\\xc0\\x89/\\xcb<\\x03.\\xbf(\\xf3\\x0c\\xb8|V\\xe4\\xed\\x1ac\\xff\\xba\\xcc3\\xc6\\xfeI\\x99g\\x8c\\xfd\\xc7e\\x9e\\xd1\\xcf\\xdf,\\xf3\\x8c~\\xfe\\xa4\\xcc3\\xfa\\xf9\\xc3\\\"o\\xcf\\x98\\xbf\\xdf*\\xf3\\x8c1\\xfc\\xa8\\xcc3\\xc6\\xf0\\x832\\xcf\\x18\\xc3Ge\\x9e1\\x7f?-\\xf3\\x8c\\xf9\\xfb\\xe3\\xa0\\xa4|\\xb0W\\xb7?\\xffcX\\xe7\\x8f\\xd7\\x929/\\xdb2`\\x95i\\x99\\x06\\xb0\\\"-\\xd3\\x80VRf\\xde7\\xc0\\x15k\\x99\\x06\\xbc\\x02-\\xd3$\\xf2Z\\xa6\\x01\\x95\\\\\\xcb4\\xc0\\x92j\\x99\\x06^\\x87Z\\xa6\\x01\\x84\\xa9\\x96i\\x00a^d\\xde\\x1d\\x1aS\\xb8*k>0\\x800\\xd32\\x0d ,\\xb4L\\x03\\x08\\xa7Z\\xa6\\xf1\\xcd\\xa5\\x96i@\\xe8D\\xcb4 t\\xa1e\\x1a\\x10:\\xd62\\x0d\\x08\\x1di\\x99\\x06\\x84\\xce\\xfe\\x1f\\xf6\\xfe\\xb5\\xbbm\\x1cY\\x18\\x85?\\xbek\\xcd_x\\xbf\\x94tf'dKV$_\\x13%\\x8e\\xb6;q\\xba3\\x9d\\xd8\\xd9\\xb1\\xd3\\xfd\\xcc\\x96\\xd5^0\\x05\\xc9lS\\xa4\\x86\\x17_f\\x9c\\xfd\\xed\\xf9\\x1f\\xe7\\xb7<\\xbf\\xec,\\x14\\x00\\x12$\\x01\\x90\\xceef\\xceZGk%\\x96@\\x10\\x97B\\xa1PU\\xa8\\x8b\\xf2\\xb0\\x86&\\x87\\xf9\\xc3\\x11\\xadM\\xe5V\\x81mm*'\\xc5\\x9b\\xc3:\\xf1{\\xc5\\x9e\\x1e\\xf0Wk\\xf0\\xbb\\xca\\x1f\\x8e\\x86\\x8c6\\xea\\xf4\\xea\\x07To\\x97W\\xd3\\xaa\\x17Wwe&M\\xde\\xd5\\xfd\\xa3\\xc2\\xbc\\xa9a\\x934\\xf6\\x8aJR\\x13?\\x04\\xea6\\xd9=\\x15\\x8e\\x14\\xe2\\xa6\\xa9\\xc8Yo\\xf2S\\x12\\xcc\\x99\\x08)\\x90\\xd7\\xf9\\xac\\x81\\xc2\\xb1\\x06\\n\\xff\\xa2\\xeb\\x85\\xc2.c\\xf3\\xa9\\xde.ckX-\\x17\\xce\\x06[\\xd5r\\x113e\\xb3j\\x86\\xc6\\x9d\\x0d6\\xb7\\x1b-6\\xcdF\\x19\\x89\\xb0\\xe2\\x87\t\\xc40\\x06\\xd2\\xaf\\x81#\\x80\\xfa\\xad,\\xbc\\x80-\\xedj%\\xac/\\xdfI\\xfb\\xb0\\xed\\\"\\x1f\\x1e\\x94\\\\\\x9d\\xf5\\x90S\\xc7e\\x1b\\xbf\\xde\\x0b<wp\\xa45\\x13l_w\\xdd\\x8c\\xc1\\xd1`\\x02N\\x8c\\x01J0\\x9c\\xd0\\x18R\\x8c\\xd3,\\xde*\\xaf;\\x9b\\xc8\\xc3\\xd6^\\x9dDy\\x009n\\xb1\\xe5\\xac\\xfa\\x94\\x14\\xb8Y\\xbeKj\\xd3%#\\xf6l\\xa0\\xce\\xde\\xd6\\xd0\\xedWB\\xbe\\x8fv\\xdc\\x01\\xf7\\xba]\\xc4\\xd1\\xaaMsM\\xb6F\\xdb\\xd5\\xb1s\\x94\\xde\\x1cj1zO\\x1f\\x04h\\xab\\x06\\x01\\x11\\x04h\\xab\\xda\\x8c\\x98F\\xcd]2\\xe0\\xcdoU\\x8dl=^\\x7fW\\xdd\\x19\\x91\\x13\\x0dN\\xa0\\x07\\xd1\\xe0\\x0d\\xfc\\x00\\x1d\\xd6\\xcd\\xc8\\xb5\\x84\\xe3(\\x00VJ\\xe3\\xec\\xf6\\xa1\\x8b\\x8fj\\xb7\\x80\\xacjS|\\xf0\\xeb<EV\\xc4#a\\xca\\xb0=\\xb5\\x9a \\xc4+\\xadQ=\\xa6\\x81\\x9e\\xf0?c>R}\\x0b\\x97\\x9a\\xcd\\xab\\xaf\\xc9D2t\\x06\\x85I\\xf1\\xc6t4\\x83\\xb1\\xb0 \\xd1\\xbf\\xb6*[\\x98\\\\\\xebk-\\xcdyA\\x98\\xd8\\xe69k\\x8d\\xb5\\x06;yV\\xb9kG\\xec\\\\\\xf7q\\x80\\x9b\\xa5\\x01n*\\x03\\x84M\\xd7\\xed\\x17I\\xaa\\xe1\\x0e\\xee\\xef\\x19\\x0c\\x85\\xcb9k*s\\xee\\x0c\\x11_\\xf0 \\xc3\\xe0f\\xf4\\x06\\xe6h\\xc8\\x918\\xeb<\\x00\\xdesH\\xe1%,\\x9f\\xc3\\xb2\\xd7s\\x01\\xa3\\xba/\\xfb\\xb0\\x82\t\\\\;\\xeb\\xe9r\\xd6\\x87%##\\xec\\xab!\\xc4\\x8a\\xb9W&}\\x8b\\x83q-\\xdc\\xfdq\\x10\\xcf\\xa1\\x83\\x8e\\x19\\x8bAHoS\\xc7u\\xd1\\x83B3\\x04\\xe2,\\xd0Ek\\x1a\\x0d\\xf0*\\xba\\x0fl@\\xdcbJ\\x14i\\x06%\\x8d\\x98$M\\xdfg\\xcdUr\\x89)x\\xffM\\xc8Fucs\\xb2\\xf1l\\xe7\\x0bO0\\xcc\\x9e\\xcdN\\xf2x\\xb0\\x10u\\\"g\\xc8*\\xb2\\xa9S\\x1e\\xd5\\xfa\\x81\\xc4;tF{{HJ\\x05E}\\xb6)\\x08\\xeb\\x96\\xf8\\xbb'\\xfe>\\xd5\\x12\\xda\\x0f\\xdc<\\xb1MW\\x16p\\xe5a3\\xfb2\\xcco-b\\x1a\\xef\\xb2\\xe6`\\x10\\xe8\t\\xb4$\\x89U\\x12\\xba\\xd0\\x13\\xee\\xb5`]*\\xc5s\\xbe^\\xd5\\xa1\\\\\\x8aF\\xaa\\xe5\\xd7\\xbc\\xd3\\xedj\\xf9J\\xd0\\xf9j\\xf9R\\x94\\xef\\xb8\\x83\\x84V\\xd4\\xb2w\\x82\\xd6\\xef\\xb8N\\x95\\xd7\\x17\\xbdW\\xa7v.Z\\xabJ\\x967\\xa2\\xbc\\xcaN\\x1db\\xec\\xdd\\xdc\\xca\\xac\\xfc\\xf0\\x96G\\xd2\\x8e#\\x8f&\\x95`\\x9c'\\xf8H\\xac{\\xf9\\xd1+F\\xc1\\xc5KH\\xc0=\\xe7\\xb6\\xca\\xddW\\xccC*\\x8a\\xd8\\x03\\xd8\\xc7]r1X\\x94\\x1f\\x1c3\\xf6\\xa5c7\\x01\\xd5\\xfb\\xb3\\x83bwr2\\xc0\\xe8c\\xd7\\xd4\\xa9\\xe2\\x91\\xfaa\\xd4\\xd0)\\xa7\\xd6E\\xbb\\xa9i\\xe8\\x8c\\x9e\\xb9J\\xee\\xf2Y+k?\\xf9\\xa1\\xceU\\x1f\\xae\\xcc\\xc6\\xf0\\x86h8\\x82p9\\xaf\\x18}\\xd7\\x9e\\x8fb->\\xd2?x\\xc4\\xb4\\xc3k\\x1ar\\xd36\\xca\\xdd\\xce\\xae\\\\5\\xe5\\xa9&\\xe8\\xbd9\\x08\\xf2\\xe7*\\xfa}h\\x9c\\xf3u=c)\\x14\\xf3\\xe88\\x9d\\xb5\\xc3cZ\\xea\\xa2:\\xe1Q\\xc4\\x87-\\x9ch\\xca\\xc3)\\x0f\\xe6\\xb4)X!H\\x13|:8\\xd7z\\xd3\\x02\\xd2\\xe0\\xf3\\x10\\xdd)\\xf5\\x0bp-\\x02\\x1e\\xd2\\xc1\\xb9\\xa7\\xafq\\xd7lq\\x0b\\xaa\\xf4\\xc8\\x13\\x86\\x9e_s\\xb3K4t\\xa4\\x83\\xf3\\xa4\\x94\\x16#o\\xd1\\xe8M.?\\xc2\\x18\\xb6 \\x9f\\x11F\\xe0\\x8d\\xae0f\\xe9\\x82\\xf8\\x96[\\x1c\\xf9ID\\xbc\\x0b\\xdc\\x1c\\xcd\\xd5\\x03Q\\x9d!\\\\sm\\x0fk\\xcf\\xa3\\x15\\xf1\\x1bR{\\x99w\\xb0\\xfa\\xc9\\x98<\\x83\\x06\\x9d\\xce\\xa6\\x80\\x1d:\\xc5\\xfe\\x81v\\xad\\xf8k\\x1f\\x9dZ\\x85\\x83,\\xab\\xcf\\xe5\\xa018hn\\xef\\x0dh\\x98\\xd2\\xd8\\x11\\xfcG\\x86\\xae.\\xdc7\\xd4\\x1b\\xd0[?u\\x84;Yg\\xe8\\xf2:l\\xb7)\\xb6\\xf8\\x81s\\xe8t\\xc5\\xbe\\xdb\\xf0.\\x89\\x1f\\x82w\\xe7\\x05\\xb4\\xcbCR\\xb3u\\xfc\\xe0\\x84\\xdc\\x1a6O\\x8c\\x93\\x08g\\xd0\\xc4\\xe1'v\\xe0\\xc4fj\\x00\\xd5}\\xd9\\x08\\x16\\x1c\\x7f\\x87\\x88\\xf9\\x89I\\x04:\\xb7K\\xf5\\xa3w\\xe5\\xc1'\\xcf\\x0bn\\xe9%\\xf8\\xcf] N8\\xf5{=S\\x8e#\\xe0{\\xc9\\x13\\xb9.\\xe4\\xb6\\x1a\\xf5\\x01\\xddi:r\\x9d\\xde\\x9b\\xc6\\xd4\\x1c\\x91\\xbb\\x8cl\\xef\\x1bi\\xd1R\\xe4\\nip\\x1e\\x80\\x92\\xb0\\x12\\x8b\\xdc\\xb4l\\x87\\x1a'\\xca\\x96\\xf8m-\\xdcL\\xfe\\x14\\xb3\\x92\\xca03\\xe7\\xed\\xe8\\xc3+\\x98\\xc0\\xad\\x88q\\x95\\x85\\x97$\\x9c\\x07t\\x9eS\\xf5.2I4\\x0fy\\x9e\\x0c\\xa20\\xaf\\x15\\xcbZhj\\xec\\xd8\\x91E\\xa0\\xb16#\\xb4\\xfa\\x89)I\\xa2p\\x0c\\x96d\\xa58\\x9a\\x98G\\xf1\\x8f\\xc2$\\n(\\x12\\xedx\\x80&C\\xcaW\\xa7\\xfbI\\x8e5\\x0f\\xc1\\x17\\xabS3aD\\xbe\\xa1\\xf1\\xfc{\\xcb\\x957\\x9b0\\xc6\\x0dN\\x07\\xe7$\\x17\\xc9\\xfa<<g:\\xc8\\xe3\\x15\\xa6\\x83\\xeb:B\\xb96\\x8cz\\xdb\\x88Q\\xe2\\x18\\x1b\\x89L\\xd7\\x1c\\xa39\\x9dqp8\\xf7\\xf7\\xb8\t\\\\\\xb1ul\\xbd\\xfd\\xd1\\xd8\\xdbC\\xf1W\\x8f\\x8d*b\\xe5@\\xff\\x99\\xafFW\\xe2T*p*\\xaf \\x96\\x8b\\x9f\\xc2\\x16\\x94j\\x83N\\x12\\x95\\xd8\\x9ej\\xbd\\xf5\\xad+u\\xd4\\x08;\\xa9\\xe3M/\\xfd\\xa4\\x0e\\x97tp\\xce\\x83\\x98\\xe2\\x17\\x1eKU\\xc4\\x84:\\xbfA;~wp~-#\\xbb\\x9e\\xa3\\x0f5~#\\xf2-\\xc2+{\\\"\\xc8\\x13;(N\\x9d\\x14%Q\\xeb\\xc8?\\xb6\\x1b9?\\x9a\\xf4\\x83\\xe7^\\x85\\x83sc@\\xcf\\xb0\\x98\\x14\\n\\xd8bN\\x86\\xe3\\xd7~\\xec\\xa2N\\\\\\x06f\\xe6\\x1b\\xab8\\xfc\\xc0#\\xe1c\\x0c#&\\x98\\x879\\xf8iB\\x83\\x85-\\x8c.\\xc2\\xf9\\x03\\xbaIO\\xda2O\\xa0\\x88\\xd6\\xcdg\\xe1\\xf9\\xcd\\x18\\xc2f\\xce\\xe4|>Vs\\xfc\\xeb>\\x06\\xae\\\\~\\xdaq,i~\\x11\\x108\\x1fE\\x80g\\xf6\\xfdH|\\xff\\x96l\\xc0Q\\x9e/\\xe3\\xcbO~\\x97\\x9d19\\xfa\\x87\\x1c\\xfdG\\x0c\\xbf\\xc3>tL\\xe3m7N1>\\xfbDZ\\xac_\\xc3\\xda}6\\xce_cYT\\xde\\xae\\x8a\\x7f\\x04\\xee\\xf5\\x13\\xeb\\x86\\xbd\\x14\\x91\\x8bO\\xfa 7E\\xb7\\x0f\\xdd\\xf3\\xcb\\xae\\xdb\\x879w\\xb5\\x12\\x1e3\\x97~\\xd5\\xc5N\\x8f>\\xd4A4\\xe1\\xed\\xe6\\x98\\\"\\x7fV\\x88\\x8b\\x15\\xe8GE\\xcf5x(\\xea\\xae>?\\xc4\\xcd\\x93d\\x0d\\x14\\x9c\\x1d\\xff\\xa5\\x9e\\xbc\\xbc$\\xe1\\xe2\\x0b\\xff1\\x97\\xbc\\x1f\\xfe\\xba\\xaeU\\xbeT+sF\\xb1\\x18\\x90[\\\\\\xa9\tu\\xc7\\xae\\xeb\\x9c(1\\xa3j\\xe3\\xa3\\xe1\\xb8Y\\x14\\x94\\xa2\\xdc\\x81\\xb3\\x92\\xab\\xe6\\xdat\\x85\\xd1UY'\\xddQ\\x92\\xb3\\xb2s\\x9e\\xed\\x0d&`\\x195\\xd7xv\\xb2Z\\\\\\xfaA6\\x86\\x9d\\xc5\\xe2\\xe7\\xb8\\x02\\x13\\xaf\\xc8\\xe5#a\\xcc\\x1a\\xe0_\\xab\\xcf\\x12\\xf6\\xecT\\xcc\\xa33R\\x03\\xd5\\x94\\xd7\\xb9\\xbc\\x8f\\x10]\\x9a4\\xf7\\xf2:\\x92u\\x84*\\x049N3\\x0e\\x89 :Fb.u0!\\xbd\\xa9:nb7E\\xfa\\x01*f(N\\x14\\x0c\\x01\\xfb\\x11\\xef\\xabFn\\xfe\\x881)\\xf8\\xe4H<Q\\xb1\\xf9b\\xb0`\\xablE\\xe9\\\"\\xc2\\xc3\\xfe>\\xa0\\x8f\\x1c\\xffJ\\x18\\x07Mo\\xb8\\xef\\xd6\\x18C\\x8b\\x94&\\xb9p\\x16\\x83\\x9f\\xa0\\x07\\x8b\\xc1o\\xf8?\\xde\\xaf\\x1cW\\x11\\xf2\\x83d\\x8aNJ/\\x87\\xce\\xb3=\\xd7QI\\x85\\xd0\\xae\\xee\\xba\\x8eZD\\xaa\\nV\\xde\\xefI\\xa9G\\x85\\xdcT\\xa7\\xc6\\xa0\\xd3\\xb4\\xc6\\x92?:\\xd0\\x11&P4O\\x0c=\\x05\\xc4]\\x87\\x87\\\"\\xd1\\xe2Y\\x0dL\\xc5p\\x9d\\x8c\\x01\\xb8s\\xecZG\\x8d\\xcb\\xdd4l1\\xaa\\x1b'\\x93{#_\\xb6\\x93\\xdc\\xdb\\xd7\\x8a\\xa6\\x15H:\\xc7\\xac\\xa1\\xc6\\x1b\\xb2\\x93\\x01\\x1e\\xe1\\xee\\x007\\x90s\\xa5b\\x85mZ$\\x08\\x9a\\xa6\\xa4r\\xaa\\xfaC\\x8f\\x13\\xad\\xd4\\xa0\\xb4\\xe4\\xae\\xbcV\\xedM$\\xaa\\x9856~{AU\\x92Q[nB\\x10MZ\\x12\\xe4\\x83\\x8c\\xe5bf\\xb1\\xae\\x19)g\\xa7H{5+\\x06_\\x80}\\xf0{\\xbdf\\x0601\\xa4\\xedP?\\\"{2\\xa7\\x80lo\\xf6z\\xfdBY\\xc60\\xa2e\\xaa\\x03\\xf5\\x93 g\\x91\\xe4I\\x1c2\\x91Dbc\\x03\\xe5\\x8b\\xd8\t\\x9b\\x98B\\xa3\\xcc\\x0c\\x02\\xcd\\x95\\xa6\\xb4\\xf5t\\xd9\\x11\\xa4\\x8b\\xf1\\x80G\\x9fp\\xfc\\xc1u\\xdbs%&^\\xe3\\xde\\xfdV\\x88n\\xc6\\xe2\\xe8\\x01X\\xfcp\\xdc\\xaa\\xafz\\xb1\\xed\\xc0\\xa2\\xcc\\xd3H\\xb7`_\\x81h \\x02\\xf0F\\xb6\\x15PH\\x10~\\xfdR[\\x13\\xddY\\x1d\\x17w\\xdd\\x18e\\xb0<\\xd4\\xe4\\xc6G\\xae3\\xcd#\\x17\\xd4!\\xe7\\x91\\x84\\xc2p\\xac_I\\x19nh\\x02\\x14c\tS\\xa1&\\xd5\\x80\\x04\\xdb\\x19\\xb5h'\\x9d\\x0egj[}H\\xf5\\x19\\xd9\\xb1\\xc5\\xcd\\x96-\\xb2VF\\x9avE\\xb9\\xa1\\xf5\\xad\\x07\\xb5\\xce\\xfe\\xdf4\\xf6!\\x9e\\x1az\\xda\\xfe\\x82\\x9e\\xd8\\xff[\\x0d\\xfd\\x89:\\x06\\x8cS\\xba\\x10q\\x8f\\xb1\\x0d\\xe5T\\xd4b\\xa4\\xd9n\\xacz#\\x17YnG1\\x05\\xe1\\xe0}\\x96\\xa2K\\xcc\\xf1EB\\xe3k\\x8a\\x81\\x1d\\xe2\\xc1o\\xf4\\xe2\\x17?\\xad>+\\xbf\\xcf\\xd3Hk\\xaf73|\\xa4\\xbd\\xdeL\\xaa\\xd7\\x9b\\xa1\\xf3l\\xcbuH\\xd3u\\xbe\\x96\\x13\\x96F^\\xad\\xf2J\\xc6}]\\xda\\x04\\xbcOB)\\x00\\xa57\\\"\\xa4\\n\\xa9\\x81\\xc5\\x1b\\x80\\xe7@\\x8d\t\\xa6\\xb9\\x92{\\x11\\xf6\\x91/\\xa7hw\\xf1%\\n\\xa2H\\x934\\x03T\\xd1\\xd4\\x18\\x1b\\x0d\\xf2h\\xf5\\x18\\x1b\\x07\tA\\xaaH\\x8am\\xa3\\x8f\\xd5KJ\\xad\\x08\\x80\\xf0+\\x9f2>\\x97\\xe7\\xeb/\\xc0I\\\\\\x9e\\x08\\xd1\\xb6&d \\x83]:\\x81\\xb5\\xc1<\\x91G\\xc7\\xe7\\xd8\\x19\\x92k\\x7fIR\\xa9\\x1b\\xcf\\x7f\\x0e\\x92\\x94\\x84s\\x12D\\xa1Fk\\x81\\xf1\\xdf\\xd0\\xa0G\\x9e6&\\x80^\\x8b\\xfc_yE\\xc7\\xa0\\x86k\\x9c\\xa2\\xfcx\\\"rik]\\n\\x9fs\\xab\\xf6\\xa3\\\\U\\xa5KS\\xad\\x81\\xa4~w,8\\x17\\xa5\\xedb\\x0d\\xfb0\\x8f<\\x1e%\\x87\\xc7\\xff:\\xa5\\xb7\\xe9Q4\\xa7NW\\xa7\\xa3\\xe4\\xa2_\\xe0\\x0e\\\"N9\\x9c\\xb5.l\\x14\\xfbx\\x97$&^J\\xe3\\xd7$%\\xe3j\\x9e\\x0c\\x90\\x12_\\x1b@\\xac\\x07s\\x92\\xe2\\xad/\\x9b\\xca\\xa2\\x01\\xbf\\xb5D8\\xefC\\xbb\\xd9\\xaeE\\x10B}\\xf7\\x8bp\\x0c\\xb1\\x81\\x1f\\xc3\\x94\\xac|'5-\\x11\\xe0\\xbe\\xe3\\xb1\\xac\\xd8{\\xb0\\x8f\\xe1s)\\x8f?\\xc3\\xb3\\x83\\x86\\xa8'\\xc7G\\x869\\xb5:7\\x9aL\\xaf\\x0c\\xa7I\\xcd\\xa4\\xd2\\xd7\\x1bjq\\xf1\\xbbf\\xc8#S\\x90\\xab6 \\x0d\\xb4\\xbf\\xb6S%\\x0b\\xacO0\\xcb#jE<\\xa2V\\\\\\x0bQ\\xc8\\xd5Ax\\x99\\x9a2\\x91\\x01\\xa3\\x99.\\x9c\\x14\\xc3\\xa4j\\x18\\xb0(\\\\\\xf8\\xcb,&\\x17\\xdc\\xc8\\xb6\\xbe\\xc4K\\x9a\\xb6\\x08\\x03\\xa8h\\x83\\x9aP\\xf3\\x81\\xe7\\x7f\\xe3:\\xeaM\\xe8\\x0c\\xebX[ub\\xb0\\xbc\\xcar\\x9b\\xa8\\xa2\\xd3\\xd8\\x89\\x07\\x1f\\xa0\\x07\\xf1\\xe0\\xa3E\\x9a\\x17\\xe9\\xbd\\xda\\n:D\\xa8\\xe7\\\"\\xc9Q\\xb0\\xbd\\xe0\\xcb\\x1f\\x06)'4\\xa1\\x87&\\xe8XMQ\\x17\\xc2\\xa4\\x18\\x9b\\xd1\\xe4E\\xbc\\xc6\\x13\\x128nU\\x84\\xb5\\x1d\\x08R9\\xaa\\xad\\xa0\\xbb\\xc6cLf\\x1f\\xbe\\xfb\\xb8D\\xe4\\xb4\\x07\\x0d\\xcb\\xac%\\xfa\\x8e\\xc8[7\\xdd\\xf3s\\xd3\\xbd2:\\x9eX\\x101\\x8d[#a\\xc4H\\x04\\xe6\\x8d6\\xa2\\x9b\\xaf\\xb5d\\x90\\n\\xc0p@\\xd1\\xa4Hh]\\xc7\\x85\\x1c\\xec:!\\xca\\xa7\\xcd\\x1a\\xc16\\x00\\x95\\xa0\\xb3\\xae\\xb7\\x89\\x18}v\\xd0\\xa8L\\xe6\\x97p\\xbaJ\\xc5n\\xcd\\x8a\\x12C\\xc0\\x0fb\\xba\\xa4!\\x8d\\x19\\x03\\xf61\\x0bS\\x7f\\x85B\\xb7p\\xeaY\\xd2Tq\\xe59\\\"+\\x9a8\\xb1;\\xf0\\xc39\\xbd=^\\xb0\\xf6\\xab/w]xY\\xd3x\\xf9 \\xc2\\xd8\\xe9\\xba+`\\x8e\\xc9^t\\x03*\\xf8\\xd8\\xb2\\xf5\\xed\\x1e;\\xb50-\\xbb\\xfe-%r>\\xf2Nu\\x1e^D\\xdf\\xd4\\xbd_,\\x9c\\xf1z\\xc9:\\xd8\\xe2}\\xed\\xba\\xabm)F\\x9d\\xb5;\\x1b\\xfd\\x0e\\x83\\xc2\\xe8\\x0d]\\xd5+>Xu,\\xe7\\x8b]v\\xcd\\xaa\\xd7\\xf2Md\\xf7\\xe4nu\\x11\\x050\\x91_\\xc65\\xb3U\\x10g\\x8d?\\xf0S\\x0e\\x10\\xb4o\\xfc\\xcf\\xff\\x94?\\xbb\\xf5\\xfa\\xa8\\xa3\\xe4a_\\xdf\\x96_*\\x95i\\xdeL\\xf0M\\x19\\xec\\xf0\\x94,\\xc5{J\\x89\\xe6-\\xbc\\xa4\\x8a\\x10V\\xa53\\xa5^\\xd3\\x13\\xd6}fd\\x05\\x81\\xb0\\x9e\\x0b\\x012|*jzn+\\xce\\xdd1u\\x03\\xfb\\x10`\\xae)\\xd9$\\x83\\xb7;\\xb8\\x89\tc\\xe6\\xcf\\xebdJ\\xca\\x00\\xdd$K\\xd64\\x9c\\xd3\\xf9IJ\\xe2T\\x03\\x03\\x10\\x12AQ\\xf3\\xaf>\\x0d\\xe6\\x86\\x9a\\xe8\\x90\\xc2c*\\xf9\\xa1\\x0e\\xa4 \\x8c\\xc1\\xbb^\\xb4Z\\xb3\\xbddj\\xe9\\x9a'T\\xd0>[i\\xdc\\x10\\xb1|JfM\\xb4\\x10\\x9a\\x983=\\xb0\\x96\\xc5\\xaeY\\xd2\\xf4\\x83\\xdc8\\xc7\\x0b\\xfd\\x08\\xef`\\x1f\\x96l\\x99\\x97\\xce\\xd2y\\xefLg\\xae\\xee\\xd2\\x14=N\\xee\\xd0,\\n\\x85[!\\xdc\\xdda\\xd2l\\x99Z\\xe4N\\xf3\\\"\\x1b\\xd1\\x05\\x1ag\\xabw\\xbe\\x87\\xa5_\\xa5\\x00\\xce\\xceJ\\xd3\\xcam\\xa9\\xfeE\\xc5z\\xfb\\xa4\\x0f'\\x95\\xa2\\xdb>\\x9cL\\x13\\x06\\xe2[L\\xd3\\x15\\x10\\xa4\\xf1l9\\x7f\\x92\\x18)\\x0f\\x93n\\x1f\\xbc\\x81\\x9f\\xd4\\xca\\x1b-y\\xa0\\x89\\xe3\\x17\\x8e\\x9a\\xca\\xd0\\xf4\\xf2\\xba\\xb4\\x9e\\xee\\xa4\\xd2\\xaap\\x7f\\x1fnq\\xe3\\xd7G\\xcb\\xad\\xd1\\xd2\\xd2\\xb4\\xee\\xef!\\x1d\\x84deH\\xb0\\xec\\x0dV$\\xbej5\\x1f1\\x14\\xb1$I\t\\x81`\\xa2/gT\\xff\\x04\\xcd\\xcc\\xe8\\xe0\\xfc\\x1cW\\xea\\xfc\\x9c\\xafK\\xc2\\xbdZPF\\xe4\\xeb\\xa1\\x99\\x91\\x8b\\xc6~f\\x8c\\xb8`\\xcf\\xf5\\xf3\\\"\\x82p\\xb4\\x9e\\x98\\x99\\xc5<?'7\\xc4\\xaf\\xf9\\xca\\xca\\x8fF\\x19\\xd2\\x87W\\xceU1n\\xb7\\x0f\\xca/~\\xe9\\xf3u\\x1b\\x9c\\xcd\\xf0\\xa0t\\x86\\xec\\xc3\\x15N\\x1b\\xe3\\x89k\\xddJm\\x88\\x1a\\x89\\x1b\\xfa+\\xe7\\\\}\\xc3\\x1e\\x19Z\\xbb7\\xd8i>\\x81\\x08\\x9d\\xb2\\xb8G\\xd7C\\xee\\xc9r\\xd5\\xb2\\xc8\\xa7C\\xb9c\\x97\\xd2\\x9a~\t\\xb4\\xc8\\xfd\\n\\xf1\\xe3\\xa2\\x8a]]V\\xf6\\x0d\\x88l\\x1f.\\xf2\\xd3\\xf8\\x01\\x8du\\xa7\\xfc4\\x86|@\\x95\\x9c\\x87 \\x17\\xf8\\x8a\\xde5\\xa7\\\"\\x01\\x85\\xd4L\\x0d\\xa9\\x0dj\\xfe\\xeb\\xa94*\\xb1\\xae/;\\xa5\\xafi\\x9c\\xd0*\\x17\\xad~\\xe4\\xe8\\xa0\\xd9\\x8eOd6\\x90wGF\\x05\\xb5\\xfa\\x91\\xb2A:XGk\\x93VS\\xfd C-\\xa6\\x99\\x1b\\xf4p$\\xc24\\x1a!G-n\\xa4\\xa4\\x17\\x1b\\xe5\\xc7l)\\x07\\x8a@\\x9c\\xb77\\xb4\\xb5\\xa7%\\x12\\x1e\\x1f\\x18[\\xe4\\xf7}8-\\x11:=h\\x94\\x03c\\x0c\\xa7\\xfaU\\x89iB\\x1b\\xad@\\xe4\\x07\\xb3^p;\\x1cz\\xad\\x98f\tE\\x9e\\xfc\\x99\\xd0P^\\xe0\\x0e\\xce\\xc5\\x8fP<S\\xe0\\xc9\\x7f\\xd3\\x80.\tF)\\xe1\\x89$\\xb1t\\x85aBe6\\xb0\\xae(%\\xf1Ri)\\x8d\\xef\\x0e\\xc34\\xf6i\\\"\\xf3%;\\x1f\\xdc>t\\x1a,\\x1a\\x8bh\\xe7l\\xddQ\\xe4\\x85n\\xda\\x15\\xde\\x1b\\\"\\xd4\\xf6\\xd0U\\xb8\\x13\\xae\\x9d\\xe1\\xceR\\x1d\\x9e:\\xad'\\x93\\xc2\\x8eD\\x82!VG\\xf8V\\x1a\\x88\\x8e\\x1e\\xfcI\\x1a\\xad[(\\xd7@\\x1a@\\xe5\\xe8c\\xc6miCU\\x01\\xd2t8\\x1b\\x08\\x16\\xd4\\x8f,.6\\x98J\\x1f\\xf5$\\x1c&t\\x80\\x87\\x92\\xbc\\x82a\\x8b`~Y\\xd54\\xc5\\xd7\\xa4\\x9e\\x98\\x00\\xcc\\xa0`\\x8c\\x08\\x13#\\x0fo=\\xbaN1*\\xed\\x03\\xb1\\x92\\x01'\\x1f\\xa8\\x1d@\\x85\\xcdw3\\xad\\x8a\\x1dS\\xaa}\\xf5#\\xb5R\\x03\\xb1%\\x05\\x0c\\xfb\\x90\t\\xbcE\\x1bq\\xb1S\\xd0{\\x84+\\xc1\\xeb\\xa8.\\xf1\\x9c!s\\xc7\\xe2Wa\\x1e\\xb9Dq\\xbf\\x8e\\x06\\xd2Yg\\x03F\\xcf\\xc1GU\\xc4s\\xd8\\xd8\\xd0\\xc6\\x85P?\\xd7\\\"\\xc7\\x7f\\x15\\xab\\xfc\\x06\\xf3\\x1e\\x10R,i\\x85| \\x110\\x8e\\\"\\xb1'\t\\xeb\\xed]\\xe4\\xe5\\x04:v\\xba4\\x9c\\xdbL\\xc7e+\\xf2Ux\\xb1\\x0f9\\xd9j\\x9a(\\x88\\xc9b\\xee\\x1a\\x91\\x0d\\xbd\\x0f]\\xd4p\\xbc\\x8b\\xbc\\xae\\xe5tS?A\\xf9u\\xa1\\x12\\xc6\\x06\\xda\\x1dKxg\\x1b\\xb4\\x19-\\xd4(\\xf3\\x0bL\\xcf\\xcb\\x07\\xac\\xc0\\xad(D\\x07\\x84\\xe6q\\x80\\xb6\\xe5b.\\xa5\\xb6\\x95\\xe2\\xc6\\x86?\\x17\\x97\\x9e\\xc9\\xf7\\x9cbc\\xc3\\x9fM\\x9a\\x07\\xdd\\x07\\xefh\\x035\\xff\\x86\\xc8\\xbd\\x91\\xc6w\\x90\\xa4$\\xa5\\x985\\xfd\\xc6O/\\xa3,\\x15J\\xb1(\\x96\\xf7\\x01mV\\x1e\\xbe\\x1b\\xc4\\xad5,f\\xfe\\x0f!\\xe1\\xe4\\\"\\xce\\xd6i\\x0b\\x1bk\\xf9QxM;\\xa5\\nsJe\\xbc\\x16\\x90\\x9f\\x9c\t\\xacP\\xaa\\xd0\\xc0\\xef\\xca\\x0fW\\xaej(\\x86\\xc2\\n\\xc4\\x95\\xad\\x9c[^\\x8b\\xa5\\x8aKK\\xd5\\x8cU\\x92H\\x1b\\x04z\\xf5s\\x11Sr\\xf5M\\x17\\x11P\\x9f\\x89iJ\\xb1qq\\xde\\xa3\\xbe@\\xa6\\x0f\\xebJ\\x9f\\x1e\\xbcET\\x80\\x032u\\x89\\xafL\\x19\\x1b\\xf3\\x05+g\\xc1vy\\x98\\xf8\\xdc\\xf55?\\x18P\\x8b\\xd7\\xc8]\\x10y\\xc4\\xd2>\\x10qX\\xa6}l\\xcc\\xb1p\\x8f\\xe2\\xe8U\\xc7\\xdb\\x87kW\\x98\\x03\\xcbQP\\x87<\\x88\\x81\\x93\\xaf=\\x00\\xe9\\xbf\\x05\\x87UZ1\\x0e\\x0f\\xcd\\xb2\\xf1\\x07\\x93\\xd2\\xfc\\xb1}\\x18\\x83\\xb8\\xfa\\xa8\\xd4tr\\xd6M\\xee \\xc1\\xbc\\xb0\\xbf5\\xe6\\\\4Q\\x060?\\x9dY\\x0fa\\x14\\xafHP\\xeaA^M;\\xea\\x1b\\xa9\\xdb\\x07\\x83\\xc7\\x9f\\x1e\\xe8\\x0b?\\xf4\\x93F\\xff\\x84\\xbcv\\xc1\\xf1\\xdb\\x89L\\x9a\\x13\\x99v\\xfe\\xf4\\x1a\\\"\\x93\\xb6 2\\xa1\\xbac\\xc4\\xf6R\\x19\\xe7\\x1c\\x13Cek`r\\xe2EJcFY\\xfa\\xe88n\\x02\\x1a<\\x94l\\xb7\\xf2\\xf6\\x90\\x9f\\x7f?h\\n\\xaa$ \\xd9\\x8e\\xe8r#\\xe1\\xb6,)hvm,vms\\x7f\\xa0\\xa8\\xcdb\\xfb\\xeeV?\\x1fL6\\xd9\\xea\\xc7~\\xacCA0\\xccr\\x04|\\xe1\\xd1Q\\xe3\\x82\\xfc\\x80\\x89\\xf2\\x81\\xe0{H\\x9a\\xd2\\xd5:\\xed>\\x88\\x9aJm\\x00\\xde\\xb8\\x8c\\xabzI\\xab\\x89\\xa0\\xba\\x83\\x14\\xa5\\x82}y\\xe4\\xd5\\xdb\\x18\\xe3\\x0d\\xd89\\xfb\\x98&Y\\x90\\x1e\\x91\\x15\\x1dCC@\\x0bF\\xd7\\xdeE\\xde\\xd8`\\x9b\\x08\\\\\\xa1\\xc3O'\\xaexP\\xe8jN\\x1d\\x0b1\\xd0@\\x1ck\\xa5U\\x13\\xb0\\xd2\\xcf\\\\\\x9e=oP\\xf3J\\\\\\xe5g\\xbc\\xa2gR\\xe2\\xc3\\x1c\\x8a\\xbcy\\x87z@\\xd4\\xf2i:\\x91\\xaa\\xe0\\xd6\\xbeC\\x84V\\xf9\\xd4\\xc1;\\xce\\xa9\\xce\\x96Y,\\xb2?8\\xf7\\xc3\\xeb\\x08\\xa3\\x80\\xdal\\x05\\xd4On7`\\xd5b\\xe6\\xad\\x99b%\\xca\\x0f\\xd7\\x1c\\xb2\\xb5\\x9bk\\x04\\x82\\\\[\\x0b~\\x02$\\x88)\\x99\\xdfA\\x9c\\x85\\xa1\\x1f.mb@\\xd1\\xaa\\xd6X\\xbeZU\\xa5Gy\\x86qC6|\\xf9\\x11\\x13}kP\\x8eC\\xb3f!,8\\x80\\x08\\x8f%\\xc4S\\xffy\\xa3\\x8aV\\xb2}a\\xbeA\\x9b\\xc9;ij\\x14D\\xc3\\x19:\\x85\\x10\\x86\\x01\\xcd\\xf4\\x15\\x8de\\xdb\\xb4\\x0c\\xb22\\xc2\\xf8\\xba\\xc8\\xab\\xdb\\xdc\\x07(J\\xa1\\xc6\\xca_*\\x9e\\x81\\xc4\\x84\\x82\\x96\\xc8\\xe5q!\\x94\\x9a\\xd8\\xb0P\\xc36\\x9f?\\xb9d\\xaebW\\xd1h3\\xcc\\n$^H\\x9cd\\x1b\\xef\\xb2\\xdf\\xa6w@g\\xaa\\x9a.\\xd0\\xc1W\\x1b\\xbc\\x9d\\xf8\\xd0K\\x8cm\\xa8P\\xd5p\\xc0\\xe5S\\xa7\\xe0[y\\xab\\x0d\\x1b\\x06\\xf6an\\xaf\\\"\\xf5E79\\x11jF\\xec\\x12w\\x9c\\xb4f&\\x04p\\xe5M\\xc2\\x04.a\\x0c\\xeb>\\x88\\xe3\\xe2\\xa1H\\xdax\\x9d\\xa9~DR?\\xec\\xaa\\x9d\\x16\\x8c\\x8dq,\\xc6\\xda\\xf8\\xc2\\xd7\\xec\\x01\\x15W\\x93\\\\\\xd4pr\\xbc+d\\x16\\xa9\\x96\\x95t+\\xb1#\\x96\\x81\\x91\\xae\\x95~fK\\x1f\\xf6\\x81\\xb8\\xfdJ\\xf2M\\xd31|c;\\xb1\\xcc\\xce\\x14\\x8d+\\x96bZ-\\x89^\\xe6u\\\"\\xf12\\xf7\\xec\\xc1a\\xb4\\x9dic\\x04\\x87\\xb6C\\x14K\\xd10\\xc2\\xb6\\xc3j\\x05\\xf4C\\x8c'hxxk{xb{\\xf8J\\x0f\\x8c\\xa9T@\\xe4X'I\\xcf,\\xbf\\xb32\\x1b\\xb6\\xc9\\x8f\\x08\\xda\\xd9N<S\\xd9`\\xc1$\\xa1\\x9dl\\xeb\\xd5\\xad\\x9a\\xbb\\xea'|e\\xb1&\\xadS\\x1du4\\xeaLl\\x86\\x06yW~+Kcz#\\xdd\\xe9\\x15\\x886\\xf0pP\\xb2,\\xe4\\x01\\xafc\\x1e$\\xaf\\xe95P\\xb8\\x8e\\x1b\\x87N\\xc3\\x19F\\x18\\x88[\\xf2\\x1e\\x92\\\\u\\xf6\\xf7\\xc5\\x8dQ\\x9b\\x0eA9j\\xb2\\xf6D\\x18\\xc4uD\\xc2/\\x90\\x9bG\\x08\\x05\\\\\\xd1rOc\\x11\\x18(J\\xd1\\x00S\\xc1\\xa2\\xd5K\\xd7\\x85\\x89\\\\\\x87\\xdc\\xbb(\\x18\\x88\\xa7\\x0f2\\xee\\xa8~RGn&*\\x96\\xa8\\xd5\\xab\\x9f\\x1f\\xe2\\xba\\xab~R'\\xdf\\xb4\\x0f\\xeb\\xd0\\x85q\\x1d\\x04_5\\xf5$7I\\xc0P\\xf2I\\xcb\\x81\\xb4\\x1ar\\xb3\\x02\\x818Y\\x0b\\xdeK\\xec\\x9d\\xb4\\x16,\\xbeT\\xab-\\x15\\x02\\x85\\x92\\x81\\xc8\\xd2\\xce!\\xe8\\xe3\\x9e\\x1e3\\xaaP\\xa7]\\xadH\\xd7\\x815\\xf2\\x0b\\x0f\\xbb)\\xf5\\x02Sy?\\xabQD\\x15l\\xaeQ\\xe6\\xc4\\x9b\\x9c\\xba\\x89\\x83\\xca\\xac\\xa4-\\x18k\\x1f\\x93\\xce\\xcb1\\x0d\\x04`\\xaa\\xd7\\xc7\\x852\\xb60\\x94\\x10s5t\\x99\\xab\\x1d\\xaf\\xcd4!\\xd5\\xb0Ny\\x07\\xe5\\x0c\\xf4\\xa7\\x974W\\xa8\\xc0<\\xa2\t\\x84Q\\n\\xeb8\\xba\\xf6\\xe7\\x14\\x08<\\xc6\\xf7\\x1f\\x03o\\xd0\\xa4\\x18\\xb2\\xe1\\x82&R\\x9fv\\x11#\\xa4\\xcaq_YI1j\\x0d}\\xae\t\\xd2\\x82\\x1eK\\xfc\\xb3\\x00 \\x12Z\\xf1\\xfa\\x12k *\\xefz\\\"\\xbd\\x10$U\\x1bx%\\\"x{'\\x9d\\\"\\x0d\\x11z\\xa7\\x19^_\\x88x\\xe6i\\xa1\\xd0\\x17\\xea\\xa6\\x82\\xbb\\xc0s%-)\\x94\\xecv\\x06\\xba\\x19\\xf0l\\xf3\\xe3\\xf2\\xbb\\x0d(\\x90/?\\x1f4\\xf8\\x1c\\x07H\\x08\\xe2\\x081\\xf5\\xd5j\\xe7\\x1e\\xdb]X\\xf4\\x1b\\x88k\\x87\\xc7@\\xa7\\xc3Y\\x1d}\\xea\\xeb0\\xe2\\xa6\\xa6\\x1ch\\xf22\\x19\\xf3\\xb1\\x8cfn\\x1f6\\xd5\\xc7\\xaa\\x1e\\x1f(w\\x87\\xcf\\xb5\\xf4X\\xb45s\\xeb\\xe6JhN\\x97\\xb6\\x9b\\xf3\\x07\\xfb\\x9c\\xa9z{v\\x7f\\xaf\\xbd>Ks\\x93\\x14)\\x13H\\xaf\\x8e\\x94\\xe3o\\xa9\\x91\\xfdj4e\\xc3\\xc0N\\xf5\\x03\\xab\\xcc\\x15\\xf6aj_\\x17n\\xeaQ_\\x19\\x0c\\x0e+\\x99\\xe4c\\x0e\\xc4\\\"\\xb2SBS\\xa7z\\xbfo\\x1a\\xe9{\\xfdH\\x91\\xaa\\xda\\xb4\\x85\\x08\\xdf)1\\xdcA mW\\xa8\\x04\\x0f\\xdeg\\xe0\\xff\\x90\\xc6\\xc8\\x01\\x95L\\xbbq\\xf3\\x9a2\\x10\\xa9\\xaf\\x0b\\xcb3\\x9a\\xe7_\\xb0\\x1c\\x18\\xf2 \\xdb\\x18\\xd99D5\\x16\\x17\\xa4\\x8d&\\x99P\\x98e\\xf6z1\\xbc\\x00\\x9a\\x1bg6\\xbe\\x07b\\x1aQ\\x1e\\xe50v\\x15\\xe8\\xe5\\x0c\\xce4\\xc6M\\xa4\\x9a\t63\\xac\\xb5fB\\xb5\\x8da_\\x13\\xce\\\\\\xfd4_9\\xfb\\xf9\\xed\\xb1\\xb6f\\x934\\nMB1\\xf7\\xa0~\\xdb\\xd0\\x8c\t\\xc1\\xdf\\xda|\\xe0L\\xf8\\x8d\\xaa\\x1cC\\xf8D\\xae\\xb6\\xd19\\xab\\xffI\\xff\\xeb\\xb3\\xd9\\xfdR\\x11H\\x95\\xeav7\\xbcV\\x8e\\x80M\\x9e\\x95{\\xdb\\xd5\\x1c;\\xdc\\xb5row\\xa8\\xcd\\x17\\xe6k\\xdc\\xd7*\\x97\\x02z\\x82W\\xd1\\xfd\\xe7~\\x1f]\\xe8\\x01\\x85\\x1et\\xd918\\xa7\\xeb\\x98z$\\xa5s \\xe1\\x1c<\\x12\\xb2\\x83\\xf1\\x82B\\x96\\xd0\\xf9\\xa0[\\xa5d\\xf5o\\xb9\\xab\\x13\\xa6c\\xc0\\x99\\x8cv\\xd5t\\x1b\\x03L\t\\xce\\xbd\\x99\\x9f\\x96\\x9f\\xbc9x\\xfb\\xee\\xe4\\xe0\\xcd\\xe1\\xf9\\xc9\\xab\\x9f\\x0f\\xdf\\x1f\\x08\\x0f\\xd3R\\xb2\\x8e\\xc1_N\\x8e\\x8f\\xd4\\xe7[\\xdb\\xa3\\xd2\\xf3W\\xc7\\x1f\\x0f\\xcb\\xcfKY\\x95\\x06\\xaf\\x0f\\xdf\\x1c|zwz^\\xedgT\\xe9G\\xd6{\\xf3\\xe9\\xdd\\xbbR\\xbd\\xed\\x9dR\\xbd \\\"s\\xbc0e_\\xaa\\x0f\\x0e\\x82 \\x7fv\\xc08\\x88\\xe2qB\\x16\\xf4\\x9d|W\\xfe\\xd0U\\x90m(\\xbf\\xd5j\\xf3l\\xb5Fn\\x8d}\\xa9\\xbe\\xffZ>\\x94?\\xd4\\n\\x7f=x\\xff.W\\\\\\x0b\\x18\\xec\\x95\\xe6\\xf6\\xfe\\xed\\xd1\\xdb\\xf7\\x07\\xefl\\xcb\\xd1\\x16\\x8c\\x16\\x08&\\x1e\\xe1n\\xbb]\\xf6\\xad[z\\xb6&1\\x86Q\\xf4\\x9d.~-?\\xc5d\\xc6\\xf2\\xb9\\xf8Q\\xaeA\\xe6\\xf3W%O)\\xdf\\xe9\\x96\\xcb\\xba\\xdfd\\x13?\\xad\\xbaAG\\x05@K\\xe5\\\"\\xad\\xd6\\xb6>Q\\x1cB\\xafT\\x9e\\x15 +\\x95'\\x1agQ\\xabWh\\x80QoKE\\x1e\\xc6\\x81.\\xd3j\\xd8\\x87\\xadr\\x11C\\xa0\\xedr\\xd1\\xbc\\xde\\xd6e\\xbd\\xad\\xebz[+\\xd8\\x87'\\xd3\\xb3\\xdb\\xe1p\\xe3\\xecv\\xf8\\xf4\\xecv\\xf8\\xe3\\xd9\\xed\\xf0\\xd5\\xd9\\xed\\xf0p\\xe3\\xecv\\xf4\\xe6\\xecv\\xef\\xcd\\xc6\\xd9\\xed\\xd3\\xed\\xb3\\xdb\\xa7\\xbb\\x1bg\\xb7\\xcf\\xde\\x9ceo\\xde\\xbc9\\xc4\\xff\\xdf\\xcc\\xee\\xa7g\\xd9\\xeb\\xa7\\xec\\xe5\\xec\\xf5\\x8fo\\xde\\xcc\\x9cI\\x87\\x95\\xbc\\xe2%\\xac\\x86{\\xefL\\xc6\\xd3\\xdf\\xcb\\xd5\\xee\\x7fw+\\xd5\\x9e\\x94\\x87\\xb5\\x14\\xc3z\\xbas\\x96m\\x0e7\\x9f\\xe2\\xff\\xcf\\xaa\\xb5\\xee\\xb0V\\xfflz6;\\xfb\\xc7\\xd9\\xe7\\xea\\xe3\\x0b\\xf6\\xf8wg2\\xee\\xdcw:\\xf7\\x9d)\\xd9\\xf8\\xfb\\xd9\\xc6\\xac\\xd7q\\xff\\xfc\\xc4/\\xd7</jN\\x7f/\\xdas\\x9d\\xc9\\xf8?\\xa6\\xc3\\x8dgdc1\\xfb\\xc7\\xe6\\xe7{\\xfe\\xfd\\xefg\\x1b\\xff\\xd7\\xf3\\xb3'g\\x93\\xf1\\x7f>\\xda?\\xeb\\x9d\\xfd\\xb9\\x7f~6\\xe8\\xfc\\xcf\\xd9\\x0f\\x8f\\xcf\\x9c3\\x97\\xbd=s\\x7f\\xf8\\xf3\\x13_wV\\xdc\\x18\\xcf\\x8a\\xd1\\xb0\\xb0\\xa2\\x1bm\\xf1\\xef\\n5\\xaf7uhl\\xeaY\\xd1\\xd2\\xd6f\\x8b\\x96n\\x1f\\xd2\\x12\\x8e\\xef\\xa1c=1\\xf6\\xb0\\xbd]4\\xf5l\\xa4|\\xdfR\\xba\\xd8,\\xfd\\xd8i\\xd1\\xa1F\\xaf\\xaeQ1\\xcb1<\\x85\\x17\\xfb\\xc2Y\\x92}\\xdb\\xd9\\xc3\\x84\\x96\\x1b\\xec\\xc1\\x18\\x9e\\xed\\xb12\\x8c*\\xbe\\xb5\t\\xf7\\xc2\\xa6\\x11M\\x18G\\xc3M4g\\xd8`\\x95z\\x0c,c\\xd8\\x18Y\\x07\\xa6\\xd1\\x7f\\x17\\xa3\\xe0\\x93\\x9c@\\xf7l\\xd8\\xe5=\\xe7%\\xff?,P\\xab\\\\\\xb0\\x92\\xd1hW)J\\xb1R\\xb5`\\x94/\\x17+\\ny\\x91\\xda\\xd25\\x16\\x0d7\\x95\\xa2\\x05\\xaf\\xb5\\xad\\x14\\xc5\\xbc\\xd6\\xa8(\\xfa\\xff\\xb3\\x92-\\xe55\\xc0\\x82\\xe2\\xa5\\xc7\\xdd\\xc70\\x86me\\x1aOp\\x84jOg\\xacdO\\x19\\xce\\xff\\xf9\\xdfXgG)\\xf9\\xbf\\xb1\\x8e:S\\xa4\\n\\xac\\xf4\\xe9\\xb0R\\xfa\\x8c\\x95v\\xbb\\xd6E80.\\x02\\xae\\xff\\xee\\xce\\xce\\xd6\\x0eL\\x80;\\xdda\\xde\\xc2W\\x97$~\\x15\\xcd1'\\xeaX\\xfb`gg\\xf3\\xd9.\\xf4\\xc0a\\x88\\xc3Z\\xd8\\x85\\x97/a\\xc4x\\x9d\\x9d\\xdd\\xad\\xcda\\xf9\\xd1#\\x06\\xef-\\xc5[\\xb6\\xe0\\xd7r;\\xb9c\\xa1&\\xc1\\x8c{\\xce\\xe6\\x0ec\\xcd>h\\xcaN\\x01\\xcd\\xe5N\\xe1\\x05l\\xee\\xec>\\x87\\xd3^\\xcf\\x85\\xe3\\xe9\\xe9\\x0c\\xf6\\xe1\\xca9ua\\x02#\\x18\\xc3\\xb0\\x0f\\x1f\\x8aB\\x1dqz\\xafUp*\\x17%\\x11\\xde\\xf7\\xf1\\xf0\\xc5\\x83\\x85\\x1f\\xd0\\x90\\xac(*\\xcb\\xc2u\\x96\\xa2\\x13m\\x94\\xf8)Z\\x1d\\xd2A\\xe0\\x87T-\\x83\\x0dQ\\x88\\x0e\\xf4\\xa5\\xb9\\xd7\\xc7\\xf2V;\\x16\\xce3\\x8bqZ\\xdf\\xffC\\xfb>\\x1dD\\xe1o$\\x0e\\xfdp\\xc9]\\xa3\\xf3\\x9f\\\"P!j\\x95D\\xfb\\xba\\xc5a\\xebrTS\\x191\\xc6\\xadft\\xa6U\\xee^\\x17\t\\xe9\\xea\\xb2\\xa3\\xc8\\x0d\\xbc\\x0ftpM\\xe3\\x84M\\xe3\\xd1#\\x0e\\x89\\xee<[\\x07\\xbe\\x87Q\\x07!Z\\xc0\\x7f\\xb0.a\\xee\\xc7\\xd4K\\xfdk\\xe4\\xb1x\\xd2\\x90<\\xa9N\\xfef\\xb9&\\x10\\x8f1\\x98\t\\xd0[\\xe2\\xa5\\xc1\\x1d0YW\\xe6\\x80\\xc4x\\xd1l\\x10lK\\xe1\\x1d\\xf8\\x93\\xdf\\x1dv\\xe8\\xcdz\\xee\\xd9@~\\xfb\\xf3\\x93\\x01\\xbd\\xa5\\x9e\\x13N\\x873\\xee\\xc5\\xc6;\\xf2\\x83`c\\x11\\xc5+&\\xa9\\x88\\x06\\x01\\x13lR\\xa8\\x8f\\x96\\xb1c\\xc8@\\xbe\\x0dS'\\xc6\\xb0\\x90\\xb8W\\xfcr\\xf9\\xa6,\\xe7\\xb3\\x8b\\x8a\\xde\\xb2\\x90\\xcf\\x84\\\\\\x04\\xa2}\t3\\xd1\\xa7\\x0c\\xcc\\xc6\\xf9O\\xf9p\\x1fB\\x8cDI\\x07\\xde%\\xf5\\xae\\xde\\xf9!\\xfd1\\xa6\\xe4\\n\\xc3^\\xb0\\x1d$\\xbbB\\x03\\xf7\\xcd\\xe2\\xeb\\x1f\\xa2\\xd7$[3N\\x96\\xce\\x1b:-\\xadn5\\xb3\\xd8\\xc1O\\x0fC\\x97:\\xael\\x1aV\\xfb\\xf4\\xe0'\\xcbb\\xa77Q\\x91\\xf0\\x93\\x01&\\xce\\x01\\x82\\xfc1\\xae\\xc3\\xc5 \\xa5I\\xea\\xc4(j\\xd7\\x966%K\\xe0\\xc9[\\xc0Y\\xf8q\\x92\\xe6\\x0d\\xba\\x12\\x08\\xa51\\xb0^\\x12\\xa1\\xbb\\x19\\xa4d\\xf9\\x9e\\xac\\xf1\\xf2V\\x8e\\xf8qzIc\\x8a\\xe6n\\xb0\\x8e\\xe9\\xb5\\x1feIp\\x07s\\xea\\x05$\\xa6sH\\xb2\\xc5\\xc2\\xbfE\\xaa\\xd8}\\x0c=\\x88\\xa1\\x07\\x8f\\xbb\\xca0\\x1e\\xbb}8\\xe7C\\x8e\\xccC^\\xc7\\x945\\xe3$\\xd4\\x8b\\xc2y\\x8b1\\xcb\\xc1N\\xe3\\x99-\\x9e\\x9c\\x8e\\x8e~\\xb4\\xd8I\\xe2-C\\x9eO\\xad\\xbc\\xae\\xa8\\x19\\x84\\x17zT\\x10\\xc6d\\x92\\xd8\\n7RD\\x1cct`<J\\\"\\xee`\\xeb\\xe3\\xdd\\xafP\\xbbA\\x04/\\xc0g\\x7fz\\xfb0r\\x05\\xcf\\xe0\\x10\\xac\\xe3\\x89#\\xed\\x80\\x01\\xd4\\x15\\xbc\\xdf\\x8b}\\x1e\\x1f\\x8e \\xdf3\\x1am\\x8fF\\xa3\\x02\\xd8\\xf4vM=\\xb6'\\xaeI\\xe0\\xcf\\xe1/'\\xc7GE\\x04C\\x9d\\xdd\\\"\\x1a\\\\\\xad\\xf8\\xaae\\n\\x0daK\\x91\\xa41%+\\xb4E\\\"~\\x98@\\x18\\x85\\x1b\\xeb\\xd8\\x0f\\xf9V\\xcf\\x9bM\\xb4\\xed\\x8a[\\x0f6\\xaf\\xcc\\xb4f\\x9a%{],Y\\xcda\\x13\\xef_\\xf8z\\xf5!(\\xf7\\x89\\x10\\x8e\\x07~\\xc2E?'T0P\\xa8jV4^RX\\x91\\xf5\\xda\\x0f\\x97\\xc9s\\xc46q\\xb75\\x87$\\xcab\\x8f\\x8aK\\x0e\\xb6\tT\\xb2\\xc6\\xd00\\xe3\\xab\\xc7\\x84EG1\\x8e\\xbd\\xa2w\\x98\\xe8-_\\xd0\\x0c^@\\xc0\\xfe\\xf0\\x05E'\\x99i6\\xcb\\xf7^\\x8a\\xb6\t\\x98\\\\\\x88G%\\x08\\xa7\\x84\\xedz\\xfeC\\xd5\\x88\\xeb\\xc0\\xf3N\\xc1h5\\x9d\\xaa\\x0eTA\\x1f\\xbc:^3,\\xe4l\\x93\\x13\\xa9\\xa7L\\x1eq\\x04\\xfe\\x81\\xf9\\xa0S\\xb2\\x1c\\xdf\\x91U0\\x88\\xe2e\\x7fs8\\xdc\\x1c#\\xfc\\x84\\xe9|\\x1d\\xcdY\\xdb<\\xbd\\xb4\\x9fp\\xa6\\xc8\\xb7e%\\x0e88=\\xbc\\x10\\x93\\xb0\\x0b\\xe0\\x05x\\xec\\x0f\\x87\\x9d\\xc4\\x05\\x7f\\x1a\\xcc\\xf4&y\\x88\\xbdy\\xb5z\\x1d|N\\x07\\x7f$\\xfcn%\\xc9\\xa3 s\\x02\\xd5)\\xd6\\x84\\x178\\x9c/\\x02\\xb6\\xc70\\xc3W\\x8du\\xda\\x87\\x8c?)\\x18\\xac2_@\\xe7\\x12\\xc5\\xe0\\x8a\\xdeaH\\x93t\\x1a\\xe1\\xc5_~k\\x13N\\xa3\\x99V\\x00J\\xad\\x8b\\xff\\xa9\\x95,%\\x84\\x0c\\x91b\\x93\\xd3(\\x85\\x92\\x14#\\xc7\\xbcL\\xc5\\xcf^\\x8f\\x89\\x15[\\x02\\x19&\\xe0\\xa8\\x8f\\xfa\\xb9\\xa8im\\x91\\xf3r\\xc5k\\x8cG\\xe7\\xe0!\\x80\\x80E\\xa7'\\xb6\\xbd$\\xa1\\xe2\\x14\\x1e\\x9f\\xf50\\xf9\\x90\\xc2\\x99\\xe2\\x04dcV\\xc8\\xfc\\xcdtv\\x97\\x92q\\x0ee\\xc6?\\xdb\\x14\\x9e\\x8b\\xac\\xdf\\x91\\xd6\\x18Z\\\\\\x9e\\x1c:\\x91\\xfb\\xdc5\\xb5\\xd6\\xeb\\xa9\\xediw\\n\\xee\\xb6-.Z\\x19\\x02\\xfc\\xcf#\\xcbeN\\x9b\\x9e\\xb5/\\x7f\\x86\\x9bK\\x9f\\xb1\\x0c\\xa3a\\xc1\\xc8\\x8d\\xb6\\x8a\\xef\\xa2\\xd80\\xee\\xce\\x0d\\x1eE\\xb8\\x8c\\xf5\\x1a\\x08\\x9dO\\x98<\\xa4\\x19\\xd0}\\x88\\x19^\\xf1\\xf5~\\x1b\\xce\\xb9y\\xf3\\xf0\\xb9\\x14d\\xd9\\x02\\xa8\\x0fY\\xe5\\x07O\\xfb\\xb3n\\x97m\\x08\\x0e\\xbd\\x98n\\xcc\\x11W\\x19\\xc9\\x0b\\xfe\\x983\\x9bs\\xba\\xf0=\\x9f\\x15\\xfb\\xf8\\x14\\xb9\\x7f\\xe4\\xda\\xacX\\xf9\\xc6\\xb0_\\xfb\\\"\\xd1\\xac\\x1c\\xb2\\x96\\x14t\\x9c\\xed\\x1d\\x1c\\x9bi#\\x8b\\xcc\\xb9\\xdb\\xbb\\xdcV\\x00C?\t\\xa1\\xa5^\\x17z\\x8c\\xa06U\\xd9\\xe4D0d[q\\xab/`\\xd3\\xd0\\x7f\\xe7\\xd6I\\xdd\\x06\\x19\\xf2\\xefZ\\x19p\\x94\\x93\\x1a\\x95Y\\xe0\\xba\\x8b\\x14\\xb3\\xf6\\xf3\\x98s\\xc5\\xb3x\\x10\\xd35%\\xa9\\xd3=C3\\x19\\xd8(%\\xca\\xd2u\\xfd\\xa3\\xb6\\xebk\\x11WPbTJ4\\x96x>\\xf7\\x9a\\x0c\\xbd\\xcbj\\xdel\\x10ji]f\\x94L\\x93k\\x84;]\\x14B%oSL\\x8f\\xff`\\x0c\\xae\\xfc\\xce\\x0e\\x0b\\\"d\\x82v\\xc4\\n\\xdb\\xda\\xe6\\xe4\\x04\\xbf\\xdf:\\xd6\\x17\\x11\\x1d\\\\\\xcd\\xa5\\xafdn;\\xc3>\\x94\\xe9?\\x92XV\\xbc1r\\xeb\\xbbe\\x9f\\xc1X\\xe6\\xae\\xca\\x82\\xa0\\xdd\\xe8k\\xdd\\xe7\\x9e\\x0b|\\x83\\xf0\\xd3\\xf77A\\xdc\\x17<\\x8fG\\x07\\xb3\\xb3\\xf0\\xae$r\\xb8\\xe5\\xf1\\xb5\\xe9\\xbc_\\x1c\\xf6H\\x0b\\xf2\\xe3^L\\xe9\\xa5\\x88\\x17#\\x00\\xec\\x8as\\xec\\x82\\xccU\\\"\\xc0\\xa4\\x16\\x02\t\\xfd[FC\\x8f\\x02\\x0d\\xd3X\\x1b% \\x9fX\\x85\\xc8\\xa4ZZ*I@'\\x138\\xc2\\x04'\\xf4\\xd5\\xc9q\\x07\\xd9\t:\\xb8\\xf2C\\xb4\\xea\\x91#\\xe8\\xf6\\x8b\\xcd\\xb4\\xcf8\\xc3&\\x86\\xf2W3\\x8d\\xcaYL~\\x8d\\xaf\\xdd\\x01ULgS\\xdc\\xe2\\xa7\\x89\\xd3|\\x04\\x14\\xf6\\x03\\xbav\\x94\\x0d\\xc3\\xe6o\\xd2\\xc0\\x10!V\\xf2\\xab\\x1dF\\x95w\\x05\\x07\\xd4\\xe6\\xb4`<\\x10\\xf2\\xf3\\x1d3wPya\\x0c[\\x9cK\\x8a\\xd8\\xbbDI\\xc0\\xd9\\xedt\\xba\\xed[\\xe1ot\\xfbPft\\x0c&\\xcfFv\\xa0Mw\\xb5\\x17s6@\\xe1\\x02v7\\x8dG\\xbfB9\\n\\x9b\\x116\\xfbX'\\x08\\x97vY\\x9b\\xe1\\x15lb\\x16\\xe6\\x12,\\x0d\\xe7R' \\x04\\xd1\\x1b?\\xbd\\xf4C pM\\xe3\\x0b\\x92\\xfa+\\xb6\\xf2U\\x05\\x8f)\\x1c\\x88\\xe0\\xdc\\x94\\xf9vn9\\x17\\x97\\xaf&\\xdbk\\x04&R\\x02&K\\xa9\\xf3\\x10\\x02\\xa4\\x10\\x84\\x81\\xdez\\x01Yq\\x04\\\\\\x91\\xf8*\\xe9\\xe6\\xe9\\x9a+\\xb0`\\x07TI|\\xe8ar;\\xa1\\xd8Qe\\xd4\\x90Tt:\\x95>\\x93\\xcc\\xbb,\\x89\\xdc2sy\\x15}8io\\x07\\xf7\\xfaB7\\xaf\\xe7]\\xae\\x94*t\\x05FH-\\x82\\xe8\\x86\\x91K\\xb6]\\xa3\\xb84\\xfe\\xf2\\xaa\\xe9\\xc8\\x1f\\x1ed\\x9ds}\\x7f\\x0c^\\x0d0\\x1a\\xa3\\xfdF\\xec\\xf2\\xc0\\x12\\x92\\x88\\xc60\\xae\\xab\\xc1BW\\xa9\\x91+\\x9c\\xc2\\x19\\xaa\\xb9\\xc6l\\x97\\x8aS\\xa2\\xa8\\xc5\\xca\\xe4S\\xdd\\xe3\\xba\\xfc,\\xebsm[\\x16\\xe6\\x9a5e\\xd5Q\\xb3\\x16\\xa2f\\xed1\\xa6\\xb6\\xb7\\x12\\xef\\x9f\\xcd\\xc4[C\\x96\\x9fr\\xb2\\x1c~\\x05Y632z\\xd2\\x1c\\x82\\xa8\\xa1\\x92g\\xc3\\x00J\\x98Y\\xc5j\\xb9qC\\xb1q\\xb9\\xa8\\xd99qB\\xb6\\x83\\xdb\\xb4\\xa8=a\\x95m\\x93\\xeb@\\x8a\\xfdX\\x9eB\\x18\\xcd)\\xac\\xb2\\xa4\\xc07\\x92B@I\\x92\\xa2\\xea^\\xd1\\xb2\\x95\\x8ei\\xfbnjX\\xe0\\xdf\\x14m\\x98\\xe6\\\\@w\\\\\\xd4\\x86\\xad\\xfa\\xb0\\xec\\xc3]\\x1f.\\xfap\\xde\\x87+~\\x19\\xa59\\xb4\\xdf\\x1b\\x0e\\xf3?\\x0c\\x87\\xb9\\xb2\\xd8\\x81\\x9f\\xa44\\xa4\\xb9\\xac\\xc4\\x7f9\\xddhMC\\xcc/\\xde\\xcf\\xb1\\x9f_\\xdf(P\\x90\\x05\\x82_\\x91?sN\\x85\\x17\\xa0\\xda\\x13\\xf6\\xd1\\x18b]\\xf0e\\x0b\\xfeUD\\\\\\xab2\\xa2\\xce\\xfb\\x9c_-\\xb3o0\\xe1@\\xc0\\xf4W\\xaa\\x90)\\xa4\\x0e\\xbc\\xae\\xab>|!\\x14a\\xa7h|\\xe9\\xe2\\x85\\x07{\\xe1\\xb4~\\x86\\x8a\\x13\\x059\\xa8\\xfb{\\xdc\\x8c\\xcf\\xdd\\xf2\\xf0&\\xc5\\xe8V\\x9c\\x1f\\xfb.\\x83\\x8416\\xaf[\\xbf\\x15\\xc8\\xa0\\xcc\\xef\\xd9 \\xfd\\xfc\\x06\\xe7\\x94=X\\x8bM\\xc5\\xa4\\xbes\\x8c\\xc8\\x9d\\x03\\xdd\\xcbI\\x1a\\xa6\\x02`\\xc7J\\x1f\\xae\\xcaGM\\xe9\\x1e1\\x87\\x14L\\x80\\xf7\\x8a\\xb2\\xd7\\x15\\x02\\xe7!w,\\xfdB\\xc9\\x9b\\x98\\xa53\\x10\\x96;f\t\\x8d}\\x16\\x96\\x90\\xdcs\\xcb\\xb3K\\x89\\x93\\xda\\xa7\\xd7\\xd6\\xa7+\\xeb\\xd3\\xa5a\\x03\\x82\\xb0\\xa3\\xd1\\xe5\\xa9\\xfc\\x02\\xf9q!T\\xd6\\xed\\xe4\\xc7\\xcc\\xe8\\xf9/\\xbd\\x95\\x9b\\xc5\\xc9\\xbe\\x10\\x98\\xb9\\xd0F*<\\xed.\\x17\\nP\\xa0\\xd9y*\\xbe\\xdf\\xdf3Z\\x1e[-\\xa1Q\\xeb\\x84t0\\xec\\x83\\x97\\x8b\\x80F\\x1d\\x94\\xfa\\x9e\\\"\\xe05\\xba\\x11\\\"\\x8c\\xdb@\\xec\\xd0\\xc9\\xd8>7Tm\\xe0\\xaf\\xd4\\x0f\\x1b\\xe1\\x0e\\xb7\\xb7\\xc8\\\\\\xb85u^\\xe1\\x94s\\x8e\\x910\\x16>\\xa5\\xc9\\x9ax\\xca\\xe9\\xa3\\xeaV\\x01\\x1d\\x19\\x90\\x83\\xbe\\xa2w\\x1b\\xdc\\xb4:\\xa1k\\xc2=<rv\\xfa\\\"\\x88\\xbc+\\xa9\\xb5f\\xc7\\x17\\n[\\x0e\\xde5,\\xfa0\\xef\\xc3e\\x1f\\xae\\xf9]\\x81\\xdb\\xc7\\xbdq-\\xa8\\xb4(\\xba\\x13DN 72\\x9f\\xec\\xefe\\xbe\\x7f\\xf1\\x0dI\\xf0\\xedpi\\x19\\xcf\\x0f\\x11\\xe3\\xae0\\xbc\\x17GOR:w\\x82\\xbe5\\xd2\\xaa\\xfc\\xe4\\xf7D\\xe8\\xec\\x12S2g\\x07\\xbf\\xbfb\\xdc\\x8c\\x9f\\xe6\\n\\xfd5\\xf1\\xe3\\xe7@\\xc0\\x8b\\x82(d\\x90^\\xf9IBM\\x8eP\\xf2cv\\xd0k\\x15\\xbb\\xf0[\\xcdS7\\xc7\\xf2\\xd2s\\xf5\\x05\\x9b\\xe0*\\x0bR\\x1f\\xf7\\xce\\x15\\xbd\\x83\\x15\\xb9\\x03a\\xeb\\xacB\\x05\\xaf7\\xccs\\xd3>\\x113\\xde\\xe5\\\"W\\xc6\\x0e\\xc8\\xafC6!\\xb5w\\x86\\xec\\x10\\\\\\xf2\\xf6\\x14\\x1c\\x1c\\x16\\xa2\\xa5\\x1f\\xca\\xb0\\\\l\\x83\\xe8\\x17\\x96\\xcd\\x16\\xf9\\xbc|m\\x9fc\\xf8\\xc7(\\x08\\xa2\\x1b:\\x87\\x8b; x\\x0d\\x9a\\x92\\x8b,\\xc0\\xcb\\x1e\\xbaZ\\xa7wx\\xb9\\xc1\\x19\\xbf\\x82&\\xe2uFf\\x8e\\x0d\\xc8\\x16\\xb6D\\xa2\\x8c:(G\\xf2\\x81k\\xceZD\\xbc\\x94MW\\xddV\\x82\\x0dP\\x94b\\x983\\xa4\\x0e\\xdb\\x95p\\x87\\xd5\\x82\\xb7\\xacHk\\xa6\\x88\\xae\\x86\\xa9\\xc9\\xf5f\\x99UoV\\xc2;ST\\x9d&\\xd5Y\\xed%\\xa3\\xe7\\x06b\\x9a\t\\xd1\\xeeJ\\xaa\\xb6\\xda\\xee*Tm\\x92N\\x96\\xf8Wv\\xdc\\xde\\x95\\xfa\\xc5p\\x12W}8w\\xeb\\x0c\\x90\\x89\\xfb\\xa9\\xde\\xea\\xf6\\xd98<\\x1c\\xee\\xba\\x8f\\xfc\\x8a)\\x01\\xe2\\xa5\\x9dQ\\xband\\x94L\\xf9I\\x18\\xe0\\x859\\xa8\\xb3n\\xc6\\x05~'\\xf6l\\xab/\\xf4\\xe0\\\\\\x13\\xab\\x0bTo\\xa1|\\xac\\xcf\\xd1&g\\x18\\xd6FYT~X\\x87\\xa3\\xcd\\x1d\\xd1\\xe3\\x90\\xf7\\xf8\\x8f6\\x0e=_\\xc0V\\xc5n\\x1f\\x0c`(\\x9f\\xfc\\x02\\xff\\xd7V\\xc6*\\xdfjl\\xaf\\xb6\\x01\\xaf\\xb8/\\xac\\x8b\\xaf\\xfc&\\x8d\\xe3\\xeee\tw\\xaf\\x15\\xdce\\xf46\\xc7_\\x18\\x9b\\xd4\\xc6\\xb1\\xf90\\x99\\x17\\xfc\\x07\\xa7\\x8f\\xe0E\\xab\\x15\\x81\\x0b\\x9a\\xdeP*\\x14>^\\x14\\x04\\x94\\x0b\\xb0\\x94;\\x112\\xd2\\xe8\\xb1m%\\x92_rq\\xcf\\xc7{v\\x8e&\\xe2DXC\\xdb\\xcb\\x0b\\x90\\x91J\\x89\\xfd\\xba\\\"us\\x95C\\xf9:!P\\xae\\x13\\xbc\\x82OI\\x14\\nZj\\xc6\\xb8\\xf0e\\x81\\x9e@~9R\\x08W\\x82\\xe3]#9\\x96\\xda\\xe66xT\\x19\\x81n\\xec\\x8b2\\xc9gk\\x8c4.F:\\xef!\\x0dYpW\\xe0\t\\xc4\\xfc\\xde\\x04+\\xf0EP\\xea\\xb0J\\xa2BR\\xedY\\x98\\x87\\xb7B\\xd2\t8\\xf3\\x07\\xcc\\x91u\\x8b\\xf5G-\\xf6\\xecC\\xd4\\xc4\\x15d\\xac\\xea\\x1cYK\\xe7l\\xb4\\xa8\\xfb`B6O\\xbf\\xdb\\x96TW\\x05\\xd5\\xb9YH5\t|\\x9e\\xe5\\xd9\\x02\\x83\\xe2j\\x1f\\xad\\xa1\\x96\\x7fN~tz\\x00\\xc8i\\xaaXD\\xd2\\xbc\\x88\\xae\\xe0\\xe1\\x1fL\\xb8\\xc5-\\x02iE\\xb7\\x1b\\x1d\\x14A\\x92i\\xe5\\xaa\\xcb#\\x01\\x89\\xcb\\x14\\xab\\xdb\\x95\\x04\\x97\\x18<Y\\xd9\\xd0\\xb6\\xb7\\xac\\xd3\\xaf\\x0bZ\\xe2F\\x95\\xb8\\x0c?\\xf7\\x19\\xf9\\x9a\\xe0J\\x8b\\x86\\x08\\xf2_c\\x0c\\xe0\\xc5\\xf1\\x92_Os\\xe6\\xc6\\xbb\\x8cV\\xc8\\xdd\\xac\\x90\\xa1d\\\\\\x8b\\xbf\\xf0\\xf5Vx\\xd0,\\xf6\\xa0\\x18\\xe0 \\xf1\\xe0n\\x12(/\\xf2\\xa4[Y\\xee,\\x91Ig\\x89\\x8d\\x11\\xcfR\\xd8,(\\x0f\\x05\\xf39Q8\\xb5\\x9cAVY\\xb6\\x1b\\x7f\\x9e^\\xf2\\xb9q\\xb1\\x81\\xaf\\xc4s\\xf0S\\xc5\\x1b2\\xa0I\\x02\\xe9%\t!b,1\\x8c\\xc1\\xcb\\x9bV\\xc0\\x13j\\x9aVa\\xc4v#\\xee\\x00\\xe8\\x81\\xcf\\xafQ<\\xd87F\\x84\\xafc\\x0d\\x83\\xd7\\xa1C\\x8c\\xba\\x05\\xabyM\\x1b\\x0c\\xd1\\x8fC\\xde\\xaba\\xd7f\\xbe\\x7fKb\\x96q\\x08\\xd6\\xf1\\xc1\\xd7\\x8c\\x11\\xd4qvn\\x1c\\xa2\\xdcsk\\x06d\\xd8\\x90\\xca\\x863\\x0cT\\xb1\\x06\\xaa\\x1a\\xf9\\xf4M\\xa3o\\xa7<q:^MVz\\xc1\\x0e\\xb9G\\x8f\\xa4\\xf5\\x10\\xd1X\\x0f\\xb5\\x81\\x98y\\xc9:\\x1eT\\xcd\\x1e^\\xc2\\x02\\xd9\\x90E\\xce^\\xf0\\x07n\\x1fn\\x10\\xf5\\xd6\\xbd\\xde\\x17o\\xf6\\xfa\\xec\\xec\\xf8\\x90\\xe0\\xbc\\xaf+\\xe64\\x15\\x93\\x99\\x00}Pz\\xb0\\x861c\\xad\\xc7\\xe2-\\x0c1\\\"s<*\\xb68gaS\\xca\\x03{P{\\xb3\\xeaCXDO\\x80m\\x14\\xc61\\xacr6\\xae\\xe5\\xe0\\xb9\\xd6[\\xbe9\\xb2\\xbe\\xb9\\x16<\\xe3XP\\xbb5Lt\\xd3\\x05\\xa4;\\xb6v\\x1a\\x9e\\x97G\\xc8\\xad\\x85;CI\\xba\\xfa\\xe2\\xe0\\xae\\x9a\\x7fAu\\x13>w\\xbf\\x02W\\xd9\\xe7\\xa3\\xd0\\x97\\xaa\\x1a\\xd8\\xce\\xa8-\\xe94\\n\\xd0\\x95\\xe3ZrP\\x0f\\x14o\\xf5\\xcc\\xc9\\xd6\\xb3\\xaf\\xbf\\x9e\\x84\\xb6\\xdcBUZ\\x881{\\xef\\xbe\\xe6\\xc2\\xb1\\xcdx,,\\xc7\\x167\\xe8\\xb7\\xa6\\xbc`\\xf5>\\n\\x8e\\xbd\\xb4`\\x8c\\xbbo\\x00K\\x99g)\\x00c\\xd1\\x05\\xc6\\xa5yV!Q\\x86\\x82\\xe1\\x8cC\\xeau\\xe3\\xe0\\xady>\\xf4H\\x8c\\x18\\x8d\\xfd\\xb8\\xec0\\x12\\xe2W\\x1d\\xbc|\\x1f\\xe5\\x12\\xdd\\xfe\\xfe~\\xc9\\xf0\\xf7\\xd1#n<9\\xb1\\xf2\\xfb\\xd2\\xc7\\xa7\\xe0\\xf8\\x13?\\\\\\x06\\x14\\xfe\\x96E\\xac\\xaaX{\\x91\\x90\\xd2<K\\xcdFz\\x88\\x98\\xa1\\xef\\xf4[\\xec\\x14U\\xc00\\xec\\x9am\\x8e\\x1e-\\xd4t\\xdf~\\xd7\\x84hN\\xa1\\xdd5-\\xc6c\\xd5\\x8c\\x08\\xdf\\xd5,\\x1f\\xb4\\x96\\xa2\\x0d\\xdd\\xea\\x90L\\x88\\x8fj\\xacM\\xd9f\\x8b\\xbd\\xa8\\xeb\\xea\\xa6\\xdd\\x15\\x8d\\xabb\\xbfy\\x1f\\xe6z\\xcd\\x8c\\xfb\\x8b2\\xa4?\\x9ef3\\xb7t\\xc0|@\\xdf\\x11u\\x92-ZD\tg\\xb4)\\xcc\\xe00\\xd8$\\xdbK\\x9b\\xe8J\\xbc\\x97\\x8b2\\xdb0\\x86\\xa7;\\xf9O&6\\x0c]x\\xc9\\xfekqW\\x16\\xf1\\x0bm\\x9f\\x1bmG\\xec\\xbd\\xe7\\x10ml\\xb8\\xd8\\xfb\\xab\\xb6\\xb0bB\\nL\\xb0\\x19\\xc7\\x87\\x17/`\\xdb\\x85\\x1e\\x90\\\\\\xa4\\xcaw\\xe0%\\xbd%s\\xea\\xf9+\\x12\\xd8]\\x9a\\xd4\\x8f\\n\\xca\\x03\\xc7\\xaf\\xe0\\x8b\\x99o\\xe1\\xb0\\x94T\\xe0*\\x8cnB\\xa0\\x89G\\xd647\\xf6\\xb4u]\\xdf\\x19vJ\\x9a\\x15\\x94\\x94o}\\x13%\\xad7\\xfc\\x9d(\\xe9<\\xca.\\xdaP\\xd2\\xca`Z\\xf0\\x12\\x0f!\\xad\\xfaQhI\\xab\\xa2\\xc6Qr\\xcd\\x9bC\\xafqH\\xeb\\xa9\\xea6\\xd7a4_|\\xb7\\xa1\\xaa\\x86FZ\\x99;q\\x13\\xb8[a\\xfd\\xd69qbF6\\xdb\\xb4X\\x1f\\xcc\\x83L\\x9e\\x02\\x9f$\\x0f\\xb2x\\xd2\\x18?\\xf6\\xcb\\xa6N\\x8aJ\\xbd\\x12\\x8eE5\\x84|\\x9c\\x85\\xb9\\x1a`.\\xc6Q1\\x8aS\\xce$UM\\x1f\\xce\\xaawWuv\\x95\\xa1\\xc9\\x97\\x9a\\xa2\\xa0\\xd6\\xd5\\x93\\xfaVvR\\x9a\\x95s\\xe6\\x8bn\\x86^\\xb7\\x8e\\xd7\\x8cX\\x0c\\\"'\\x8e\\xc7\\xdd>9\\x91F\\xa1w\\xebi\\xf1}{S)\\xdf*\\xbeKE\\x1f\\xfe\\xd8U+=S\\xbe+u\\xb6\\xf6\\x94\\xfaJ\\xf93\\x1e\\xea\\xc1\\xb3b9\\x9e8\\xbbJ\\xf7Bm\\xe6q\\x1d\\xfdm\\xf36\\x12\\xd2\\xd9\\xfd=\\xb7\\xefch\\xdebc5\\xb3+\\x11\\xfa\\x92\\x97\\xd9]a\\xb5.6\\x98g\\xe5B\\x84u\\x865\\x11\\x1c_\\xd0/\\x9a\\xa2ExV\\xd2+n\\xed\\xb4\\x1d\\x84}\\x00\\xe8+\\xd3\\xa2\\xcf&\\xadD\\xe3QS\\xcc\\xd1k\\xd6>\\xb26o\\xb0b\\xb3\\x15D\\x96\\xabY\\xe45\\x8db|\\x16\\xe4\\x05\\\\e\\xa2\\x9c\\x9c\\x1b\\xa3\\xda\\x1d\\xf5\\xbe=\\xc1\\x9b\\xfc\\x10E~\\xffbm\\x95\\xf8\\xc8\\x94\\x0e\\xd6\\x8a\\xf6`\\xce*\\xf0\\xb9\\xff\\x077\\x1e`\\xf4I]\tq\\x7f]\\xd2\\xb9\\x05\\xdf^\\x8f\\xa3/\\xc5\\x0b0\\xce\\xcbp\\xfa\\xd9\\x19I^F\\x8cw\\x032\\xd7\\xb69\\xdd>\\x1c\\n\\xca\\xe7\\x94k\\x08C3\\xc3r4\\xb8<\\x98N\\xc4\\xeaP;\\x9d\\x9c\\x8cp\\x97`Af\\x16%\\xfa\\xb2\\xaekT8+\\xd2\\x97V\\x94\\x9c\\xfc\\xfd!P(w\\xb4\\xce\\xbdYrc\\x83\\xee\\xa4\\x8b\\xba)K]\\xa5D\\xdc\\xec\\x16v`\\xc5Y\\x9d\\\\FY0G[\\x9dKrM\\x81\\x84w\\xd2\\xf2\\x1a/a\\xa5\\xbfw\\xeb\\xeb\\xee\\xfc^\\xb1P\\x9d\\x9d\\xe6\\xb3B#Oa\\xe3YiZ\\x8c\\xba\\xdb\\xe9\\x16\\x05zg\\xb3\\xee\\xa4[\\xcc\\xd4\\xaaI^r\\xdd\\xd9\\x1d_{a\\x84tz\\xb7\\xce\\x93\\xd6=\\x87%\\xbc\\x80;\\xf6\\x07\\xfd\\xc7\\xad4\\xc7\\xb9\\xa8\\xb73]\\xce\\xdc\\x81\\x0c\\xf8\\xaeL\\xddN'\\x14\\x9c\\xb8\\x18\\xe4\t\\xdbU\\xd74\\xb9\\xce\\x17\\xfc\\x86\\xf9\\x0b\\x97\\xe0\\xdb\\xee_A\\xec\\x0bO\\x88\\xbb5\\xe5]#\\xb6\\xdf\\xdfCwA\\x82\\xe0\\x82xW\\xddY_.\\xcf\\x04\\x04\\xdc\\xac\\xd5\\xa7X{V\\x9a\\xa9\\x80\\xd1\\xa3Gp\\xc1_\\xe1\\xc5\\xf8U\\x1fJ\\x061\\x1a\\x9f\\xb3\\xe5\\xef\\xbc\\xc0`\\x9c\\x08\\xc9\\x1e<~\t)Y\\xe2\\xcd\\x93\\xc0\\xf9\\x0b\\xe1;!Zg\\xbcb\\x1f7\\x02\\x96\\xd2\\xa2\\xf41\\xfa\\xdf\\xd4V\\x99;\\xbc7\\xad\\xe4\\x17.]a\\x84&\\xee\\xc9D\\xf7hL6\\xa7(\\xefTf\\xd8}Y\\\\\\xc2\\xa1\\x97\\x93\\xea#\\xc5\\xe5QV\\xb1\\xfaRU(\\x951\\xa3\\x9a\\xad\\xf8\\xbd J\\xa80\\xe3\\xaf\\xecdv\\xa0\\xd7&~\\x7f\\x0f\\x7f\\xfc\\xa9\\xc0\\xaf\\xfck\\xee\\xbb\\xf0\\x97v\\x9e\\x85\\n\\xf9\\xaf!\\xa9\\xce\\xc3P\\xb0~J\\x18!\\xe1KP\\x0f#D\\x07\\x01]\\x12\\xef\\xae\\x9f\\xbb\\xf4p\\x8boUl\\xe0fORm\\xd5\\xc2e\\x11W\\xbc,g4\\xbf\\xd5\\x87\\x8eS\\xb99\\x1a\\n\\xbe\\xbb\\x83\\x16=zm\\x18\\xce\\x95@{\\xe7D\\x93\\x1cY\\xf2wk\\xd3\\x90E\\x96\\x9d\\xce\\xfaZ_\\xb7\\x92\\xb8'\\xe3\\xa1\\xc0\\x0b\\xee\\xc6-\\xdc\\x83\\xf2xH(k\\xa2h\\xa9\\xbb6V\\xcd\\x99C\\xe0-u\\x1b\\\"3\\xc07\\x8a\\xce\\x00\\xe5\\x1b\\xdaZ\\x10\\x1a\\xf5\\xd3xG\\xdbf\\x08f\\xa2\\xad\\xf1\\xd1\\xe4\\xf1\\x17\\xccG\\x81\\x85\\xbb7\\xce\\xd4\\x1a\\xd2\\x01$X\\xbf\\x1bb\\xb1O,\\xdd\\xb9-\\x18\\xd5\\x82\\xa1S\\xc6\\xc4\\xef\\x9d\\xc5\\xf1v$<\\xfc\\x8e\\xa6\\xe1L\\xea\\xd8\\x18=\\xfdCh\\x1c8=\\xcd\\x95`\\x05\\x9a\\x964\\x0f\\x7f2w^\\xa6\\x07CE4\\x12\\xfb\\xbdp\\xcf\\xb7\\x13\\x8a\\xb6\\x15y<\\x87\\xf6\\x957\\xddrD\\x17\\x11\\xe1A\\x1d7\\x03\\x08\\xd1\\xec\\xd5\\x04\\x15t+\\x12\\xd7\\xe2\\xb6\\xfcV\\xf0\\xf4b\\x9ah\\xa7\\xb1V\\x8c\\xd3\\xca\\x80\\xa9\\x13\\xe9G\\x8f`\\xc9\\x1d<\\xcbk\\xef\\x97\\xd7\\x1e\\xf2P\\x1ca\\x14n\\x1c\\x9c\\xbcz\\xfbV\\x89'\\x93\\x00\\x89)\\xf8aJ\\xe3uL\\xd1\\xf1!Aq+\\x0f:'\\x976\\xa9\\x85\\x0dh!\\xcfN`{\\xb7\\x19\\xc8\\xae`\\x05\\x1a \\xacTP<\\xa97T*Y\\xd7\\x87F1\\xeaB\\x05z\\x16\\x1e\\x1c\\xa5\\xf5\\xb0\\x1e\\xc6\\x7fu\\xb4Q\\x18\\x8bXPT\\x9c\\x1d(\\xf3\\xb03r(\\xf9\\x85<\\xae\\x9d\\x0c\\x19C\\xcb\\x00(\\xa6\\x80 \\x10\\xb1d\\xec\\x95\\x1c\\x9a\\x9b\\x17\\xf4awgsO\\xc4JU_\\x1a\\xca\\x9a\\xac\\x9cc\\xc5\\xc8\\xad\\xd2\\xbek\\x91w:\\xa47\\xcd7k\\x98y\\x02\\x97\\x100\\x11\\x13\\xfe\\x96\\xd13\\xd9\\xdc\\x8b\\x1f\\x82\\xe5\\x11u\\x12\\x19\\x97=\\x95_\\xef\\xef\\x99\\xcc\\x8d\\x0f\\x8b@\\x96\\xecy\\xf1\\xab\\xdc\\x04\\xe7D\\xb0\\x8a\\xf8z\\x7f\\xcf\\xd5\\xfa\\xec)\\x06\\xa8b\\xcfd\\xa4\\xaa\\xfcI\\xce\\xae\\xe1\\x9b\\xf2G\\xb9\\xed\\x92\\x10#\\x93p\\xf3\\x81b p?\\xa0\\xf3\\xb7\\xa2\\x8e\\xcce\\xc2\\xf9wC\\xe5S\\xfe4\\x1f:\\xae]\\x81\\x0c\\xa2\\\\\\xd1E\\x0c\\xf3\\xd1\\xa2:B\\xfd)5\\x12j\\x99j\\x08\\xc4\\xd3=\\xcb\\xfd\\x89\\xfcE\\x99\\xd0\\xf2\\xe5\\xd40\\x81\\xa1XK\\xc4\\xa4a7\\x0f\\x1c\\x14\\xd6\\xb7i\\xa8\\x1c@.\\x84\\xea \\xb8\\x9bFX\\xda\\xb7:\\x96\\xf3\\xb9Z\\xe7E\\x11\\xf0q\\x03F\\xcf]\\xf8\\x8bc\\xf00\\x0e\\x8b\\xb9Y7\\xe8/&u\\xb4\\xa2\\x8a\\x86}\\xbe\\x8f\\xab]\\xf9\\xe5\\xdc$\\x9d<7I\\x91\\x96\\xc4\\xd7\\xccH\t\\x89U\\x84`\\x8b\\xe1\\x05D\\xec\\x0f\\x0f\\xc1\\x96:\\xfe4\\x9e\\xd9i\\xcbO\\xda\\x0d'w\\xe6_u\\xeb\\xc7F,\\x1c\\xbae6\\x14\\xcd~e\\xb5FbIe-\t\\xd6\\xe9P\\xe3SPdr\\x88\\x9c\\xe2\\xe20\\xbf\\xa1\\xcf)\\xa8\\x1f*\\xd4\\xb5\\x0f\\x17Y\\n\\x8b(c\\xa7\\\\\\x14\\xd3\\x07er(R\\x19\\xfc\\xd2\\xaf\\xa7>\\xf8\\xa9o\\xccZ\\xd0t\\x0b\\xd1bM\\x11e\\xe2\\x01\\xbdMi8w\\xea\\xe0\\xe3\\x9bz\\x0c\\xa4<\\x1f\\xd6Ye9$\\xf2}ac\\x7fR~j\\xd38X)\\xb3\\x98\\xcdO_:\\x9bz|\\xe0\\xaf\\xcfX\\xa0\\x0b&\\x1a9\\xa5\\xd0\\x8b\\xd5i \\x1d\\x13\\x07\\x89<[.\\xb2\\xc5\\x82\\x93\\xee:\\xc9\\x0c\\xcb$3\\x16?\\xbd(\\xc8Va)\\xd0i\\x81wJ\\n\\xf6\\xc1\\x92\\xa6'\\xa1\\xbf^\\xd3\\xb4\t\\xc05s\\xf5\\xfa^\\xec(\\xc3uU\\xa5\\x81N\\xf6\\x06\\x11\\x00~[\\xe1\\x18\\xf6vD\\x04\\x1cq\\xebR\\x9a\\xad\\xb0\\x0e`\\xc7\\xf9\\x06\\xdf\\xcf\\xdd\\xb3\\xe1Y|\\x16\\xfe\\x9f\\xff\\xadf\\x15\\xe8\\x0e\\xfcpNo\\x8f\\x17\\x8e2\\x1a\\xa4\\xe2\\x07\\xa9\\x13\\xf1\\xfb\\x0bC\\xc8\\xaa\\x086\\x90\\x8c\\x97\\x81\\xbc\\x81\\xfd\\xa6\\xf0\\x0469\\xe7\\xa1\\x17\\xd6p\\xdc0\\x18\\x0c\\x00\\x07\\xdf\\xdb\\x87\\x1d\\xbd\\x94\\xd2\\xc6\\xdd\\x0cA\\xe4\\x0bH\\x90:$\\x08\\xbcPqCa\\xaf\\xbe\\x184\\xc4\\x08\\x16\\x87\\x082\\xbeQ\\x81L\\x0b\\xa8\\xf8*T\\x08\\x83\\xefW@E`T&\\xe1!&\\xc0\\xb9\\xba\\x88\\xbb\\\"\\x16\\xa6\\x94\\x80j(!yeh\\x00\\xde\\xe3\\x01\\xf3{\\xd5Z\\xd0\\xd3\\xacyO9/z\\xd0\\xfd\\xbd\\xab\\x12(u\\x0f\\xa5\\x11\\xe7~\\xad\\xb9y\\x95\\x90}\\xdd\\xae\\xf6\\x8c/\\xb6>cX\\x91\\x83x\\xec\\x87\\\\x,\\x9ea\\xb4\\xe4\\xc7xU\\xce8\\x16\\x92r\t\\x86M\\xca)(\\x01\\xcau=67A\t\\x8a\\xe7\\xa2\\x80_\\x81\\xe0\\x0eD\\xa1\\x1c\\x9f\\x15\\xd4\\xc0\\x11**\\xde\\xcb\\x98C\\x0du\\x97Z2\\x9dS\\x9a\\xaf$\\x9a\\xa3]\\xe5LQ[g\\xa7q\\xech\\xc2\\xe1$i\\xdc\\xedW`}\\xe5\\x87\\xf3qq\\x9f[z\\x96+d\\xc7\\x0d\\xe6\\x1d5\\x9d'&\\x91(\\xe5\\\"\\x80\\xf2\\xc1\\xee\\xfe\\x8b @\\xfff\\x84@\\xee\\x98\\xf7maPe\\xae\\xff\\xe50X\\x91\\xb5\t\\x06\\xb9\\xa3\\xed\\xb7\\x05A\\xc55\\xf4_\\x0f\\x026\\xc2\\x07\\xed\\x04q{\\xd0\\x04\\x00_\\x86\\xefA\\xd1\\xdaj\\x1b|\\x9d'\\xa3\\x14r\\x80\t\\x9a2f\\xe7\\xa3G\\xd0\\xfd\\x1fqs\\x87\\xbc@Q\\xeetqB\\xc5\\xb3\\xeeQ\\xf5\\xf7\\xa7w\\xef\\xc4\\xef\\n\\xaf\\xdd\\xbc\\xd4\\x0d+mkn\\x1dS\\x0cD\\xd6\\x088\\x15sp\\x94\\xb6Vc\\xba\\x8eiB\\xc3t\\xaci\\xc9#a\\x14\\xfa\\x1e\t\\x1af\\x00E\\xaf\\xdd\\xff\\xd1\\xa4\\xd2\\xac_\\x8d\\x04\\xd1\\x0d\\x8d=\\x92\\xd0\\x07\\xb4\\x8c\\xeb\\xd2\\xa6\\xf1l\\xbd~p\\xe3\\xb8\\xa8m\\x1a\\xf7\\xc8\\x8a\\x06\\x0fm\\\\?r\\xdb\\xba\\xcc\\xe9\\x82dAz\\x92\\xde\\x05t\\x0c\\xdd\\x1c^\\xdd\\x7f\\xf9~\\xbf\\x88\\xa2\\x7f\\xea~\\xd7\\xd8O\\xb5\\xde\\xef\\xa5}\\x9d\\xc6\\x19U\\xf7\\xf1i\\xf5\\xf7\\xc7O\\x87r_\\xb3\\x82\\x1d\\xf5\\xe5\\x05\t\\x92R\\xed7\\xb5\\x82\\x83w'\\x87_J\\x17l\\x1b\\xf9!\\x03\\xff\\x96\\x04\\xa4;\\x15\\xe9\\x04~\\x8c\\xa2\\x80\\x92p\\xc6\\xfb\\xa8%\\xa7\\x93l\\xa8\\xcc@\\xfb\\xc5\\xe4FG\\x14\\x8c\tr\\xa5=(L$\\x80\\xc6 V\\xa9\\xcd6\\xd6\\xd1\\x88V}q`\\x8f\\xe5z\\xb7\\xe9KG2\\xda\\xf5%\\xe7\\xf5\\xc60\\xaf\\x7f\\x07\\nb\\xca\\x90\\xb8\\xfb\\xc0$\\xa7\\xb5\\xeci;\\xc5@5\\x0d\\x91\\xf6\\x0d\\xed)\\x0d\\xc9oUR\\x17\\xe9H\\x9d\\x1f\\xa6\\xff\\x0e\\x94\\x8e+mT\\x0d\\xb6\\x16s\\\"\\xb3[\\xbd.\\xaa7H\\xe5I\\xdch\\x1e\\xdb\\xdd\\xe0\\x86P\\xfc\\x16u\\x1a\\xcdPF\\xeb\\xf6D\\x9e\\xf7\\\\\\x96\\xa3\\xd3^/\\x9a\\xb9}\\xe8\\x0eE\\xa6\\x7f\\xa3x\\x8eZ\\x8f\\x9e`\\xc8\\xe2F\\xcf/\\x1c\\xc5\\x05oT\\xed\\xca\\xd4>\\xe4n\\x1e\\xbd\\x1e\\xcfR\\x13?\\x87\\xa8\\xd73_W\\x83\\xec\\xe5\\xbc:W[\\x1f\\xa57\\x87\\x12\\x1e\\x0c8#\\xf1\\xa31\\x90\\x80\\xfa\\xc9\\xf4A\\x05\\xd4\\x8f\\xd9\\xc42\\xd7R\\xb0\\xee\\xc5,\\xf4y\\xa7\\xcd\\x97\\xe9\\xdd\\xdb\\x86\\x85\\x83\\x7f\\x01`;\\x8e\\x08\\x19\\xc0\\xcd6\\x94\\x8b\\x91\\x88k\\x0bB\\x11@\\xe0\\xfe\\x1evw\\xd8\\xf70/\\xddCC\\x15\\x9e{\\xb1(\\x1d\\x0d7\\xed\\x16\\xda\\xd5\\xcf\\xbfta\\xc4\\x05N\\x1b`\\x7f\\x19\\xa0\\x11\\xc8\\xbeS\\x05mk\\x085@G?\\xabvP\\xd1GF`\\xf5\\xf7\\x1bwWK\\xb8=\\x1cf\\xf8\\xc68\\x1fB\\x0b\\x1b\\xf1\\x0e\\xf92\\xe8Z kvsv:\\x18\\x9bR\\x01\\x12\\xb2\\xb0c\\x85\\\\?\\xf9\\xdd\\x19O\\x87\\x1b;\\xb3\t&\\xe3s{\\x7f~\\\"\\xed\\x18\\x84V\\xd3u\\xbf\\x0d\\x13[9\\xc1\\xccG\\x97!\\x8e\\x8co\\x08\\xc0%&+\\x92\\xa1\\xc4\\xb9\\x86\\xb9{\\xde\\xe5\\xf3\\x8dA\\xf8\\xb7\\x07\\xc4\\xa3\\xce\\x93\\xf3'\\xcb>t\\xd1\\x88\\xb8t\\x9c\\xc5\\xd3\\xa1\\xee8cu\\n\\xf6?\\xe2\\x91j\\xf9\\x8d\\x81h9\\xbf\\xd3g\\x0d\\x14G^\\x0c\\x13\\x8cx\\x9b\\x1f\\x81\\x8c\\x91\\x13'W<\\x1d\\xcd`\\x02\\x11\\xfc\\xa0\\xe4&\\x14\\x0dm\\xba}\\xd8t\\xd9\\x8b\\xb7\\x96\\xca}\\x18\\xed\\xb2J\\xd5\\xd2\\xa7.\\x06M\\xa9\\xc2b\\xdcE\\xc3\\x99x\\x90\\xac\\x03?\\xc5\\xdf\\x83E\\x14\\x1f\\x12\\xef\\xd2ifE\\xfdA\\x16&\\x97\\xfe\\\"u\\xf2\\xae(\\xa6Q\\xd4\\x183\t7i\\x11\\x1d`\\xd4\\x07\\xff\\x01\\x1d\\xe1u-\\x85\\x1f\\x18\\x96\\x84\\xf0\\xc3>\\xecj\\x02\\xeb\\xa0\\xa5\\xe2\\x0f\\xdc\\xf2\\xa9\\x06\\x94\\xa1\\x15Y\\xbfX\\xf29\\xcaV\\x174n+\\xf8p\\x8e\\xf3?\\x90\\xa9\\xe1\\xf7E\\x9dx\\xe0'GtIR\\xff\\x9a\\xfe7\\x8d\\xa3\\xaf\\x11\\x8f.\\xfc\\x90\\xc4wMS\\x00U\\x86\\x10\\xde\\xa9\\xdd\\xe1\\x85\\xb0\\xb3\\x15#v8\\xa6mh\\xcas\\xbc\\xae\\xaf@}\\x83F^ZR\\x0e=`D\\x95\\x8e\\x9f\\x8a\\x01\\xd5\\x8a\\x1f4\\x1e\\xe1`\\xfb\\x90\\x11\\x15}U\\x91\\x08\\xf4}(\\x8e\\xbc\\x0f\\xe9\\xa7\\x98\\xf9me\\x8e\\xa3]w\\x90F\\x9f\\x98@\\xfa\\x8a$\\xd4\\x11\\x90h\\xacf\\x81\\x8c\\x0d\\xc7*r\\xa1\\x98JE\\x92I\\xd8\\xd3\\x83\\xc0'\tMl\\xb88\\xdd\\xecC\\xf7\\xc2\\x0f\\xbb\\x9aTB\\x029\\xa6O\\xfb\\xd0\\x8d\\xbcTW%\\x87\\xe3t4\\xc4DU\\x9e\\xaeV\t\\xe2\\xd3\\xd1n\\x1f\\xba\\x97\\xf4\\xb6\\xfb}\\xef\\x02\\xccbm\\xb9\\xd8\\x17\\x02\\xe4G\\xba<\\xbc];\\xdd\\xdf\\x9d\\xc9x\\xba\\xd1\\x9bM\\x9c\\xc9xx?\\x1dm<\\x9b\\xb1#\\xf6|\\xf6\\x83\\xebL\\xc6gg\\x03\\xf9\\x8bU\\x98\\xd2\\xc3\\x19V\\x16)q'\\xf7y\\x85\\x9e\\xf6q\\xf1K4\\xe3L\\xc6\\xe5\\x83\\xbc\\xe8\\x81W>;\\x1b8\\x93\\xb1\\x1f.\\xee\\xdf\\xb2\\x7fGo\\xdc{^\\x14\\x92\\xf0\\xfe\\x88\\x1c\\xdd\\x1f\\x1d\\x1c\\xb9\\xee\\x9fU\\xcb{\\x8c\\xcb\\x8fI{\\x95\\xce\\xe9\\x13\\xb3\\x9eP+</\\x82\\x88|\\x17\\xf1Y\\xd5o\\xf3\\x9b\\x11Fi\\x9d\\x8e/8\\x18We~\\xe8T\\xb5\\xde\\x9b}s\\x9eF\\x1b\\x10F\\x8e\\x10\\xf6A\\xf2\\x11\\xc2\\x00\\xb9\\xc6\\x8e\\x0c\\xd2\\xe8]t#\\xb74\\xe3%`\\xc2\\x0e\\xf21\\x88\\x18\\xc0\\xd3Y\\x1f\\xba\\xbd\\x0d\\xe5\\n\\x1d\\x19\\x96\\x97\\xe2\\x84\\xe1w\\xa8\\x053\\xd2\\x07VsQ\\xf0\\x1e\\xc2\\x02\t&\\xe20\\x1b|8>y{\\xfa\\xf6\\xd7\\xc3\\xf3\\xb7Go\\xde\\x1e\\xbd=\\xfd+\\x8c\\xe5\\xa3\\xa3\\xc3\\x9f\\x0e\\xaa\\x8f\\xba\\x83\\x90\\x84EsG\\xe4\\x08\\xc6\\x90\\x96Y\\x0cA\\xda\\x9c\\xf4\\xcb\\xf8\\x8c\\xa8\\xccg\\xbca\\x88c\\xe54\\x84\\xed]\\xcc9\\x8d\\xe8\\x01]\\xa5\\x92\\xd3\\x88\\xd9\\xebfN#\\x84\\x1f\\x18\\xdf<\\xc6/\\xca\\xa8\\xd2\\x7f'^\\xc3\\xe1\\xccFg\\x9f{chx\\x8d\\xb6\\xccF\\x89P\\x9a0>\\xd4+\\x87\\xfc\\xe4\\x88\\x1c\\xb1\\xbe \\xb9\\xf1S\\xef\\x12\\x1c\\xa3\\xf2\\xc0#\tU5\\x91cm-P\\x80\\x83\\xc8\\xa7\\x17\\x8fxc\\xb9\\x1e\\xb7McG\\x07G\\xd6\\xc6rEm\\xab\\xc6\\xc8\\x91F#[8>\\x1b\\xb7\\x9b\\xd0\\xfa}\\x0fh\\xb1\\x9d\\xff\\xcd\\xa0\\xf5\\xf6\\xe8\\xcd\\xb7\\x83\\xd6\\xdbp\\xd1\\x06Zu\\n\\xf4\\xfd\\xa0\\xb5\\xf1M\\xc1\\xb5\\xf1M\\xe1\\xb5\\xd1\\x080\\xddn/^\\x1f\\x0e\\x86\\x9a\\xb1(\\xe7R\\x99\\xef\\xed\\x03\\xc9szM \\xcc\\x8f\\xa9.\\xed\\xb2\\x03\\x85\\x07\\xc2\\x0cm\\xc4\\xe4\\x9fu\\xdbP\\xe3\\xbf\\xa2\\x1a\\xff\\x95\\xb3G\\xca\\x7f\\xee\\x86c\\xfa\\xf1\\xe7n#G\\xd7\\xd8\\xe2\\xa4\\xf2\\x8b\\xf1n\\xa7\\xe9\\xec~\\ngg\\xe9\\xac\\xe7\\x96\\x1e\\x8e\\xd5\\xdeK?8\\x83\\xc8K~p9\\x87\\x88-\\xfc\\xe0\\xfc\\xf7\\xbd\\xc3\\x981\\xb7\\xdaM\\xe9}w\\xe2\\xba\\x93\\x12+\\xd7\\xeaF7\\xf5W4I\\xc9\\xcah\\xca\\xf2\\xcd\\xb9\\xb5\\\"ly4\\xa0\\xb7\\xd4\\x13L[^\\xea\\xcb\\xd2\\xef\\xc0\\xafi\\xe2\\xa1\\x18nM\\xd6\\xc2=S\\x7f\\xee\\xe578\\xc8\\x82\\xe5\\xf3ps\\xae\\xac\\x98\\x84\\x9a\\xa7\\xdcU\\xcc\\xbc\\x0f\\xe38\\x8a\\x9d\\xeek\\x92\\xd2\\xdc\\xa7\\x96\\xb22]p&_\\xe4\\x15\\xed\\xa5\\xd3\\xd1\\x8c3?\\xbdt\\xba9\\xe3^K\\x84\\xff\\xdc\\x9a\\xf5\\xa1\\x93N\\xb7g\\x85\\x19,\\xbd\\x01\\xd6\\x81\\xc3\\xfe\\x1b|:}\\xe5\\x080\\xe8\\xfc\\xf0|\\x11\\xa6\\xa2\\xc7\\x9a\\xe0Q*z\\xe9tg\\xc6\\xe3S\\xf4\\xd2\\xe9\\xee\\xac\\x0f\\xe9tof\\xa2\\xc2\\xa8r\\xc5\\xc0\\xb7\\xd3\\xbd\\x99\\xe0J\\x87}\\xd8r\\x9f\\xc3\\xa2\\xf0\\xa9\\xdcz\\xee\\xc2\\x02\\x0d\\xfctT\\n\\xdba\\xdd-\\xea\\xf4\\xcf\\x84^\\xe9\\xf4\\xd9\\x0c\\x01\\xcf\\xd6l\\x97n\\xc3\\x0f\\xe0\\xec\\x0e\\xe1\\x07\\x84\\xd6p\\x06=\\xe89\\xe9t4\\x9a14\\x1bJ% .\\x88\\xfa\\xe6\\xc6\\xda\\x15\\xf1\\x19\\x8c`S\\xb0g\\xe1bT\\xf5G\\x8f\\xc0\\x1b$4=\\xf5W\\xd4\\xf1\\x06K\\xf1\\xcd\\x85\\x0d\\x0c\\xa2\\xe9\\xd9P\\xd8\\x0f\\x93\\x94\\x84\\x1e=^\\x8c\\xb1\\xbb\\x16\\x1c\\x9ae\\x931\\xa2\\xfe\\xf6\\xe4X\\xd0u\\xa3#\\xc0\\xb7\\\"\\xc4\\x0f$3<\\x01\\xff\\xf7#1\\xdd\\x17/\\x14\\xab\\x08\\x93\\xf9\\xd3\\xb7\\x03C\\xf13\\x8d\\xef*\\xc3\\xe20\\xda\\xd9v\\x07?\\xa2\\xadp\\xd1+x\\x04\\x19\\x196\\x93\\xcf\\xa5\\x06-\\n\\x86\\xee\\xc1\\x8f\\xaf^\\x1f\\xbe\\xf9\\xe9\\xe7\\xb7\\x7f\\xf9\\xe5\\xdd\\xfb\\xa3\\xe3\\x0f\\xff\\xf5\\xf1\\xe4\\xf4\\xd3\\xaf\\xbf\\xfd\\xaf\\xbf\\xfe7\\xb9\\xf0\\xe6t\\xb1\\xbc\\xf4\\xff\\xb8\\nVa\\xb4\\xfe[\\x9c\\xa4\\xd9\\xf5\\xcd\\xed\\xdd\\xdf\\x87\\xa3\\xcd\\xad\\xed\\x9d\\xdd\\xbd\\xa7\\xcfzO\\xf6\\xcf\\xc2\\xb3\\xb8\\xfb@\t\\x9e+y\\xbe\\xc7\\x8a}\\xf1\\x0d\\xb8\\x81RG\\x8d\\x97\\xe3\\x8c>\\xfa\\x86+\\xa2\\x90\\xc7\\x00\\x0c\\xb9\\xefPh\\xbb'\\xea8H\\xdaI.\\xffRi\\xc6\\xce\\xa3\\x01\\xc2\\xeev\\xe3\\xcdQ\\n/`\\xd8\\xea\\xf6\\x07\\xf5\\xe2\\xbb\\xda\\xc7FJ\\x18\\xc3\\x7f\\xc0ST@\\x97\\xf1\\xfe\\xab\\x8f\\xce\\xa8\\xac\\xc0\\x98\\x9e\\xc5g\\xe1\\xfeL\\xa81\\xcc@\\x8f\\xac\\xcb\\x92a$ \\xed\\xa3\\xc4\\xbc\\xdc\\x81\\xe1N(\\xf7\\xf4\\x1e>\\x07\\x06e\\xf2\\x1c\\xd2^\\xcf\\x85\\x14\\xfe\\x03M\\xc1\\xb8\\xca\\x84_\\xe9\\x04\\\"S\\x04\\xbc|\t\\xa3]x\\x04\\x9b;;n\\x1f\\xd4\\xe2\\xa7\\xd5\\xd2\\xcd\\x9d\\x1dx\\x04\t#\\xfb\t\\xa6\\x03y\\xf1\\x02v\\xe1\\x1e\\xb2\\x1c\\x1d\\\"\\x89\\x0e\\xa9\\xeex\\x15K4\\x04\\x19\\x12\\x97\\xe0\\xc0~\\x80]\\xbc\\xa6\\xf9\\xaa!\\xc1\\x18FOs]O\\xb9\\xad\\xa1\\xb6\\xadMQ\\x8a\\xaf\\n\\xdfC\\x06\\x1a\\xb5\\xcev\\xfef\\x8c\\xe97\\x16q\\xb4\\xca\\xbf8\\x01\\x8a\\x05H\\xef\\xf1\\xeb7\\xb5_\\xc5\\x10\\x1fL\\xca\\xe1\\x14\\xb4\\xfd\\xcdI[\\x84\\x8e\\xb9\\x9b\\x8b\\x91\\xa0\\x18\\x90\\x8f4\\xd2\\x9a\\xccBk\\x0c\\xd8\\xb9U\\xc1N\\xdc\\xf9\\xd94\\xc2\\xe5c\\x8b\\xbe\\xbb\\x85<\\x9fR\\xba\\xa9+\\xdd\\xad\\x14\\xeen\\xc1#@\\x93\\x1c6#'b\\x18\\xfb\\xd4\\x85\\x1e\\xd0ij\\xbeT-#\\xe8\\x16\\xbfC\\xfc\\xc6#\\x821l\\x16\\xe8Zjg\\xa8kg\\xbbV\\xf8\\xe2\\x05T{\\xdc\\xdd\\xc6\\x86G\\x052\\x97Z\\xae\\x0f\\xf0\\xc5\\x8bZ\\xc3\\xbb\\xdb\\xe5\\xf6\\xfa\\x10\\x97\\x11/\\xff\\xf5\\xd5\\x1c\\x84Y\\xa2\\xad\\xe9\\xff\\xca!'\\xeb\\x1c\\x82Qa\\xf8@&-\\xb2x4\\x18\\xbc:\\xbe\\xf2\\xcc7\\xd9\\xf3W\\xe45\\xae\\n7\\x1e\\x07\\xd4\\xb6\\xdf\\xf8\\xa5t\\x90{\t\\xb3\\xdd\\x17>\\xe7\\xca`\\xb3\\x07\\x99H\\x1d\\x1aL\\xd3Y\\x91\\x0f,W\\xd7r\\x80\\xcf\\xbaB^E\\xb5l\\xdcl\\xd4!b\\xe2\\xf8!\\xc4v+\\x9eH4\\x89\\x92\\x9a\\x85\\xa3\\x90\\xf5\\xb3\\xc6\\xae\\xe5\\xe7\\x8b\\xacu\\x90\\xf9i\\xee\\x83U\\x13f\\x08I~(\\x92f\\xb0\\x88\\xc8\\x16\\xad\\xf2w\\xe4\\x88S\\xde\\x96_\\xc8\\xe0\\xd4\\xf5\\x13\\xff,W\\xa3\\x16\\xbb\\xfe\\x0b7\\xf1\\x9a\\xf8q\\xf2\\xef\\xb5\\x8b\\x85\\xef\\xaee\\xa7\\x121\\xa3\\x838&wN&] \\xf3\\xdb\\x1e\\xb6\\x85\\xb3/\\xdb\\xc2\\x19na\\xfd\\xd6\\x8dZo]\\x1f\\xfd\\xf9\\xd1pH\\xa1\\xb8W\\xf4.aoW]\\xfcM\\xad\\x90i:c\\xb4\\xcc\\x9f\\x0e\\xd99\\x83\\x7fg\\xb3\\x7f:\\xda\\x1b\\xd6Q\\xc7U_W\\xc3\\x9e\\x89T4\\x86u\\xf4K\\xebH\\xb4\\xebHL\\xeb\\xc8V\\x8b\\xe0jE5\\x10\\xf7\\xc1\\x17\\xb0\\x8b\\x04\\xec\\\"\\x84\\x9d\\x91\\x8d\\xf1\\xff\\x0dvp\\xf9\\xdc~\\xe0>N\\xa8\\xf1\\x02]\\xef]\\xf8\\xfd6\\xb1\\xf5\\x88\\xf5C0\\x04\\x02SN\\xb2\\xb0/,\\x11sR\\x1bN\\xd3\\x99u\\xbf|[\\x947Q\\xfa\\x7f;\\x8f\\xca?\\x92'Y8\\xa7\\x0b?\\xa4\\xf3\\xaf\\xd4\\xbeX\\xe0\\xf0p\\xa8\\xba\\xb5|\\xf3\\x0f\\x95\\xe9\\xae#\\x7f.\\xe3\\x8b\\xd9z\\xd7Is6\\xcd\\xdf\\xbf\\x9bk\\xf4\\x1f\\xc9\\x93\\x98.\\xe9\\xedw\\xb9Qy\\x80\\xf2\\xcc\\xc7@5X\\xaf\\xcd\\xf9\\x94\\xfb\\xd5\\xe9\\xf9lF\\x04\\x9e\\x9c=q\\xa6K\\x7f5\\xfb\\xc1\\xfd\\xf3\\x13y\\xc1\\xa1\\xaf\\x1ekB\\x0e\\x80\\xb4\\x9e~\\\"\\xb5\\xefC\\xe3]\\x02\\xbf\\xf0\\x90\\xa6\\xbc\\xe1t\\x84\\xb2\\x98\\xbcEx\\xc9\\xe4\\xd2\\x16'6\\xeb\t\\xcdz\\xa7ia\\x08\\x14\\x97l\\x82\\x8afj\\xad|\\xefc\\xf8\\x9f\\x03q\\xb9M\\x14\\xa0\\xf3[\\xb8*tK\\xc6D}0@\\x0c/\\xb4\\x8a\\x0b\\xd2\\xb4_\\x95e\\xbe\\x92J\\xe4\\x8c\\x1a\\xef\\xa0\\xadI\\xccC\t\\x8auA\\x18\\xacz@\\x07I\\x94\\xc5\\x1e\\x85\\x1e+0\\x02\\x96\\x0e\\x96AtA\\x02q\\xf5\\xd7\\xdb\\x87\\xee\\x92G\\xee+2\\xd1\\x17\\x8fV\\xfc\\x91\\xbf\\x0c\\xa3\\x98\\xbe\\\"\\x89\\xfa\\xccg\\xcf\\xd2\\xefE\\xcd\\x9e+\\x95\\xf2\\x03F\t\\xcet\\xe3\\x87\\xf3\\xe8&G\\n\\xfes@\\x93u\\xec\\xafH\\xc5@0j&\\x8d\\xdaK\\x85?\\x92'r\\xf4\\xffb\\xe2X\\xbf\\xb5\\x91\\x9f\\x1c\t\\x1cD\\x02\\xb6\\xfa\\xaeAQ\\x082]\\xce\\x00\\xad\\xc4\\xd8f\\xb0\\xcb\\xea1\t\\x97tl\\x15\\xc0MQF\\xc5\\xee\\xf8\\x10G\\xcb\\x98\\xac\\xf8\\xae\\x081\\x16\\x1e[2\\x19j\\xec\\\"\\x9a\\xdf)qy\\xba\\x87\\xb7\\x0c\\xf5\\x13?\\nOR\\x92\\xd2\\x15\\x0d\\xd3\\xaeRu:\\x9c\\xe5M8\\xdd\\x838\\x8en\\xde\\x08\\x08\\x17oV_\\xa0\\xf9\\x13\\xfe.\\xfa??\\xf4-\\x8d\\xac\\xaf^\\x8e\\xd9`\\xd0H\\xa9\\xbf\\x8a\\x1e\\x8bh9\\xcd\\x8b\\x1f)\\x0b\\x1f\\xda\\x16\\xde\\xbe\\xe8\\x9f\\x0d\\xe4\\xdc\\xe4\\xfa\\x82\\xc7Z\\x8e\\x05\\\\\\x88\\x95\\xcb0\\x12\\xbfU,`\\xab\\xa3\\xc5\\x82\\xa2j\\x8e\\x05\\xac\\xae\\x11\t\\xca\\xf5\\xabH\\xc0\\x90\\xed\\xc1oi\\xcc!\\xde\\x10?\\xa0sH\\xa3\\xdc&\\\"'\\x18\\xe6;\\x15m\\x07k\\x12\\x93U\\xf2\\x00\\xf3P_\\x06X\\x0d\\xc9J\\x87\\x9f\\xe2\\x88\\xd4v\\x86\\x10\\xc7\\x85\\xeeC\\xf7\\xc7 \\xf2\\xae*\\xfb\\xcd\\xfc\\x16\\x82o\\x820\\x90\\x00t\\xfc>\\x842\\x92\\xf0\\x14-\\x18\\xd8\\x81<\\x1d\\xcd\\xf8\t,.^\\xd4\\xea]I 0\\x82T\\xf1*\\x7f\\xcdnJ\\xf3\\xc5G\\xb4\\x1c\\xc0?\\xf5\\x90\\xce\\x8f\\xdd\\xdc\\x86\\xed\\xfb\\xda:\\x98|\\x01\\x86{:\\xd31g\\xb4]\\xadOD\\xfd\\xa7\\x95\\xf2\\xcc\\xa6\\xf4+WM\\x9a\\xb5\\x0b\\xe5\\x17\\x02\\xd8\\x87g\\x152\\x08\\xfb0\\xaa\\\\k-`\\x1f\\xb66+\\xd8\\xc0\\xca\\xb6\\xcaesV\\xb6].\\xbbde;\\xe5\\xb2kV\\xb6W.[\\xb1\\xb2\\xa7\\xe5\\xb2%+\\xab\\x8c\\xef\\x0e\\xf6a\\xbb2\\x96\\x0bVV\\xe9\\xf7\\x9c\\x95U\\xfa\\xbd\\x81}\\xd8\\xa9\\xf4q\\x08\\xfb\\xb0[i\\xef\\x96\\x95U\\xe6v\\xc2\\xca*}\\xbcb\\xe0\\xab\\xf8$^\\xb1\\xb2\\xca\\xbb\\x07\\xacl\\xb7\\\\v\\x8c\\xf9\\x0b+\\x15?`a\\xa5\\x97S,\\xacL\\xe5=\\xeck\\x90~8\\x86\\xee\\xd9\\xd9Ps\\x14\\xed\\xe1\\x13\\xa2y\\xf2\\x14\\x9f\\\\h\\x9e<\\xc3'\\xa9\\xe6\\xc9\\x88w\\x14\\xea\\x1e\\x8d\\xf0\\xd1\\xb5\\xee\\xd1&>Z\\xe8\\x1em\\xe1\\xa3*C\\xc7>\\x9b|\\xe8U]4\\xfblm\\x8f\\xe1\\xf1\\xd9Y\\xf7\\xb1f\\xec\\xbc\\xaf\\xb33mg\\xbc\\xb7#\\xdd\\xb3]>\\xb5s\\x1d\\xa46\\xb7x\\xab\\xef\\xf4\\x0fy\\xab\\x1f*\\x8a\\x86r\\xd5\\xb7\\xec\\xbc\\xee\\xdeu\\xfb\\xd0\\xfd+\\xfb\\xef\\x8e&\\xf8]\\xfc9<a\\x7f\\x90\\xed\\xed\\x1e\\xf3\\xff\\x8f\\xd8\\xff\\xf8\\x95\\x7f\\x8b\\xf0+\\xff\\xff\\x18k/\\x16XQ\\xfcy\\xf3\\xa6;\\xd3E\\xd5\\xf8\\xa3N'\\x0b\\xadm\\xe5*\\x9a\\x9b\\xa0\\xec[]\\xcb\\xfa<r\\xc6\\xe6\\xce\\x8e\\xcby\\xa1\\xdb.\\x0f\\xe0\\xbbYn+\\xb7F\\xc6\\xea\\xbb;;[\\xf2\\x85L\\xbc\\xb0\\xadyA\\xcf\\xb5wx#\\xdb\\x9b\\xcf\\xb6\\x9f\\xed\\xeem>\\xdbq\\xddrD\\\\/\\x9aSXG~)c.\\x0f\\x80\\xb8\\\"w2\\x13\\xc32\\xa6$\\xa51O\\xc60\\xbc}#>:\\xd6\\x01\\x07\\xfaI\\x0c\\xf4iyeK\\xbf\\xe4\\xa1wv\\xd6\\x15a\\x1d\\x8b8\\x8eC|\\x7f#\\x97\\x95]\\xe8)\\x02\\x9c.r\\xc9Q}\\xb1\\x94(\\xd6<^x\\x1e\\xa6\\xdb\\x97A\\xb2e\\xcc\\xe9\\xf7$\\xbd\\x1c\\xac\\xc8\\xad\\x83)\\xc3E\\xf1\\xfd=l\\xba2\\xda\\xf7\\x95\\xbf~\\x1b^\\x93\\xc0\\x9f\\xf3\\xb6\\x94\\xdfjh\\xeeE\\x10\\xdd\\xbc\\xa3\\xd74@&\\xd6O\\x8e\\\"\\x06\\xd3\\xa5C\\x8b'\\xae\\xf4ER\\xcad/\\xe9] Bp\\x97NV\\x13S]O\t\\xdcdV[\\xf8\\xf6\\xff\\xe3\\xb3A\\xf3\\x1c\\x8a\\x84(\\xdcZ\\x83'a\\x8d+\\xf7\\x06i~5\\xc3#\\x01\\xf8\\xcfy\\x90\\xd4\\x11OR\\x1eO#q\\xbb+\\xf6B:%\\xe8\\xce\\xdd\\xe9p\\x8e\\x86\\x14V\\xac\\x9b\\xdc\\xb6\\x97\\xbd\\xa6\\x11l\\x19j\\x90\\xdc\\x99\\xdb\\xed\\x83\\xc3s\\xbaU\\xa2\\x92\\x0fd\\xa2!\\xd6\\x0fkO$y\\x08\\x06\\xaa\\xcfe\\x1f2\\xdeY\\x86\\x17\\xd7\\xea\\xa3i\\xc6\\xc6\\x17N\\xc9\\x0c\\xf6\\xab\\xc1pAQs\\x97\\xf1\\xd9QP\\x8c!\\x0e\\xb6\\x98HC\\xc9\\x1cw\\xa28\\xfd\\x85\\xde\\xf1\\xec3\\xf9\\x8fr@\\xf7\\x90\\xfe\\xe6\\xcfe@\\xf5\\xfc\\xd7\\xfd=<\\x95\\xe1\\xd0\\xc3\\xe8#]\\xf06\\xc4W\\xb5\\x850z\\x15\\xad\\xd6$}\\xcf\\xb63\\xaf\\xa3\\x14\\xa85\\xbd\\x88a7\\xba^\\xdd\\x08P*\\x05j\\xcd/\\x08!/\\xd3\\x13\\xd9^9\\xbc-G\\x9d\\xc74Xa\\x11\\xb9\\xbe\\x94\\xad\\x11K\\xe6\\x19{\\x83\\xa4T\\xd8+\\xf0\\xd2,\\xa1\\xf3\\xd7\\xea\\x93R\\xac?\\x1d\\x8d\\xf8\\xa8\\xddL\\x88\\xf4b7E\\xb0_\\x89&\\x9b\\xba\\\"\\x9d1\\xbf\\x9f\\xdb\\x18q\\xbcfcK\\xd4`i\\xe0\\xc3\\x0bH\\x9e\\xbb\\x98\\xb6\\x01\\x0d\\xd8e\\xb6~\\xe1\\xd2\\xc7\\xce~\\xf0]4\\xfb\\xe1\\xbe\\\"\\\"\\xab\\x85\\xe8 \\xc1lo\\xa5'\\xacK\\x1e\\xd9\\xd5G\\xab!\\xfe=T\\xf5\\x10gB\\x14\\x0c\\x05^\\xf7\\xf6!r\\xd9\\x10{\\xfbU\\xd72\\x81\\xc2\\x99\\x15D\\xafm\\xe1\\xb8\\xf5\\xe1v%\\xb9\\xfc\\x01R\\xd7\\xda\\xf6\\xbb:\\x89\\x962\\x07Bl\\xc1\\xb0\\x8f\\x7f\\xb5\\xaf\\xe3'cC[\\x9b\\xe5(U\\xa3\\xcd]\\x94\\xdfwG\\xd50X\\x9b\\xcfv\\xd8/\\xc6\\xa1\\x14\\x1e\\x14\\x8c%\\x11\\xbf\\xee\\xefagok{\\xbb\\xfc\\x1e;\\x8c\\xb7\\xd8/\\x9e\\x9f\\\"\\xaf\\xca\\xcaw+]\\x8fF\\xdb\\xa3\\xd1\\xc8:\\x91\\xbf\\x19'\\x82S\\xac\\xf4\\x83-\\xb3\\xaf\\x17\\xc5\\xd7W\\xc5\\xd7\\xab\\xe2\\xebq\\xf1\\xf5\\xb4\\xf8zS|\\xbd\\xb4\\x0e\\xeb\\x8dqXO~?\\x0b\\x7f\\x00\\x19\\xd5D]n\\xf9\\x8dm\\xa4\\xbf\\xd7\\x03\\x8f\\xfc\\xc8\\xd8\\x9cr\\xd1\\xafLV)\\x17\\xfd\\xccx\\x9br\\xd1o\\x80A\\xa6\\xeb\\x83\\xfc\\x8b=\\xf4:\\x1b\\x87\\xaf\\xda9u4\\xa1P\\x02C\\xf9\\x02w:\\x8f\\xfbQ\\x7f\\xfa\\x9e\\xd3\\x81Z9\\xe3T?\\x89\\x84\\xa4\\xa5\\x9c%\\x95\\x95\\xc4\\xe0<\\x9dw\\x0e?\\x8c2,;/\\xbe\\xde\\x16_o\\x8a\\xaf\\x17\\xc5\\xd7W\\xc5\\xd7\\xab\\xe2\\xebq\\xf1\\xf5\\xb4\\xf8zY|]\\x15_\\xef\\x8a\\xaf\\xeb\\xe2\\xeb\\x87\\xe2\\xeba\\xf1uY|\\x9d\\x17_\\xaf\\x8b\\xaf'\\xc5\\xd7\\x0313s\\xa2\\x17M\\xce\\x87\\xb4\\xae\\x12\\xcaM\\x1e\\x86\\x9c\\xae*T\\xb6\\xd7\\xb3\\xddlu>\t\\xb2\\xab\\xf4\\xef+Q\\x81~\\xd3+\\x81\\xd9\\xca\\xbdec\\xff\\x9b\\xd6X\\xca\\xc4`\\x7f\\xf10\\xb5\\x83D\\xc2\\xe7\\xb9\\x1cY\\x87}X\\x00ZT3V\\x05yV\\xd8\\x80\\xf7x\\xba\\xbc\\xe4V\\xbc]\\x10\\x894\\xa7\\xef\\xd9\\xc90\\xeb#b\\xfa\\x06=w.T0\\x10}-@\\xb4\\x1b\tG\\x89\\x83n\\x1c\\xea\\x9f\\xcc\\xad\\x89q!w\\x13\\xc0\\x04Bx\t\\xcf\\xa0H\\xbb\\xf4\\x1b\\x8c\\xb1\\xfcg\\x18\\xc3\\xaf0\\xe6\\xa3\\xecD\\xfc\\xe1\\xdfa\\x0c?ZI\\xdb_\\x15\\xaaQ]!:\\x98g\\xab\\x12\\xefm\\xba\\x0b\\xe1\\xb7\\xbfi\\xf5\\xf6\\xb7\\xfb\\xf8\\xb1\\xe1f\\xb6Sa\\xc8xh\\x7f\\x06\\x92\\xb7E\\x08\\x02\\xc5\\xd5\\xf41\\x06h\\x87\\x1e\\xfb\\xa6\\xbfQ\\xf6s\\xee\\x02\\x8f^U\\x80\t-\\x8e\\x03\\\"\\xa1\\x80\\xcad\\ni$o\\x81\\x7f\\xf1CG\\xa9\\xd4\\x87\\xeda\\x9e/\\x99\\xbf\\xb6\\x01\\xbe\\xa1\\x1fF\\x011\\x1d\\x91\\\"\\xe0\\xc0K\\xd6\\x0bF\\x8a{\\xb9\\xaf>\\xa8\\xcfN:%\\xff\\xc5I\\xfb<\\x89\\xb1/\\x927\\x13E\\xe1htY\\x16 l\\x94\\x9f\\xe4G\\xcaQ\\xfa\\x8d\\x00%w\\x16\\x190R\\x9fi6\\xe4!\\xd1x\\xb6 \\xb3\\x1d*\\x08\\x9c\\xa8&\\x9a\\x0dgy\\x06R\\x05\\x15L\\xb1\\x1b\\xc1zo\\x03\\x90'I\\xaa\\xef^\\xa3\\xe5+zT\\xff\\xbd\\xd1\\x8fZ\\x93\\xc1\\x1e\\xe4\\xdb?6\\xbe-p\\xbb\\xf0yy\\x8c\\xde.\\x8f\\x1fw]\\x13\\xbe\\x83l\\xfd\\xd7\\xe6\\xd6\\xefY\\xeb\\xbf\\xf0<\\x81\\x1coX\\xb3?9\\x1fY\\x91oJ\\x93\\x88\\xad\\xff\\xdc\\xdc\\xfaKc\\xeb\\xad\\xf1\\x0d\\xca\\xb2;\\xec\\xc3\\x13\\xe7,\\xec\\xb9\\xce\\xf4\\xf7\\xb3p\\xf6\\x83\\xfbd\\xa9\\xdfU\\xea\\x07e\\xf2\\xac&_\\xb8\\\\6\\x11\\x94%\\x83\td\\xa8f\\x10n\\x15\\x10\\x0d\\x02\\x92\\xa4o\\xd9\\x1b<?\\xf8\\x9f\\xf3\\xc8t\\xc3>\\xe6\\xdfN]\\xc3\\x9eV?(\\xaa\\x9f\\x852\\x14\\xcc\\x10\\xdd?\\x19\\x89\\x97\\xbf\\xcd\\x18\\x0bb\\xf2\\x1a\t[\\xfd\\x88\\x18\\x83\\xb1\\xea\\x02lL\\xf0\\xa9~X\\xdb\t\\xf00o\\xcd\\x13\\x01qr\\xc5\\xd3\\xcd\\x861C\\x9e\\x12\\x86\\xcf2\\xc0\\x1b \\x9f\\xed\\xf4\\x04zL\\xd6\\xc3\\x04\\xf7\\x0c\\x0e\\xa2\\x02L\\xd8\\xd71\\xcfg\\x07=\\xf8\\xb3\\x13pa\\x12o-\\xac\\x9d\\x99c^B\\x81\\x8a\\xbe\\xb1\\xd2g\\x86\\x9e\\xc4m\\xc2\\xf6\\xdf\\x1a\\xb1\\xfd1&+i\\xbe\\xdf\\x93\\x9f\\\\\\x90.\\xb8r!)\\x1by$\\xa13\\xad0B/\\xb9\\x80\\xb6\\x0b\\xe8\\xb9\\xc3\\xc4\\xb5\\xdd\\xad\\x112\\x01\\xf5`\\xa5>J\\xc5\\xfc\\x9d\\xdd\\xad\\xcd!\\x14\\x91K\\xb7\\xb6\\xb7\\x98\\xb0\\x8d\\x8a\\xa9?\\x9c\\xd1p\\x13\\x1d\\x98S\\xd8\\xe0\\xad\\xf3d2\\x1b\\xe2\\xb5\\x1e\\x97\\xe1\\x18\\xd8\\x18\\xef6\\xe6:\\xaf\\xf7\\xc2j\\xb6\\xb7\\x0f\\x1d\\xe4d>9\\x98\\x16\\x9aN\\xfd\\x19\\x8c\\xf9)\\xf7\\x87\\xde-M\\xfd\\xc8\\xebT\\xdb\\x9a\\xb9<\\xa3\\xa8\\xbe!\\x11\\x08\\xc2\\xbcd%\\x9d\\xae\\xbfZGI\\xe2_\\x04\\xc2\\xf1}\\x0c\\xbePUr#\\x10\\x1e\\x88\\xac\\xdb\\xc4\\xd8}v\\xec\\xf2\\xfc/\\xe6\\xccR\\xb0/\\xf95\\xa9\\x00\\xc4\\xf8k\\x9a[\\x80\\xb8LLJq\\xa5\\xb4\\xfa\\x8b\\x90\\xed7\\x9ec[\\xff\\xde&\\xa7G\\xf936\\x8an\\xaf\\x8b\\xcb%7\\xe5\\x06?l\\xce\\xc2\\xaeu\\x86?\\x19\\x05a\\xd3\\x90\\x19n\\x14$uc\\x84\\xe9=\\xad}\\xfcY\\x0bE\\xb4FP\\x1c\\xafU\\xf2\\x9a\\xf3\\x06\\x15\\xdbaU\\x91%\\x8f\\x16\\x98\\xfe\\x0e\\xe8N\\xaa\\xe8\\xb0\\x86\\xfc\\x98\\x18r\\xb9\\xb8\\xdb}\\x8e\\xeb\\xa5\\x10Z<ZB~\\xb4\\xb8\\x8c\\xd1\\xc3\\xdcP\\xd2\\x80\\x89\\xc0K\\xf0a\\x02\\x04\\xc6\\\\\\xb6\\x16Y;\\xb9e\\x97\\xd4\\\\\\xc5Bk\\x15\\x0b\\xad\\x15\\xa9\\xebUsV_4\\xd0Ws\\x9f\\xe6}\\xca\\xee\\xb0\\x9a\\xaa\\x1as\\x8b\\x04P\\xb2\\x98\\xab\\xc8`\\\\\\xa9\\x8cI\\x7fkq\\xfdt\\x8b\\xf1\\xdf\\xba\\x8bl\\x90\\xd7\\xd6R\\xcf.b\\\\h\\xa0/\\xc0\\xcb\\x0e\\x15n\\xb2\\x8f\\xf8P\\xd6\\x8a\\x8e\\xab\\x0cd\\xa1J'\\xf0\\x02\\x02\\xf6G\\xcfA\\xa2\\xe8\\xe8xL\\xca\\x9b\\x92\\x99;(\\xe2\\x1c0\\x14\\xf1\\x06\\xb9\\xbd\\x01\\xd7rw\\xbcJ\\x8d.7/`\\x98\\x94g\\x0e\\xe44V\\xd6\\x8b\\x16\\xa0\\xbe\\x94\\xb7\\x93\\xb7\\\\\\xe9\\x88\\x91>\\x9b\\xa0K\\xa5z\\x17&\\xe0\\xe1\\xf71t'\\xdd>x\\x83\\xdc.\\xc1v\\xac\\xb06\\x16\\\\%*\\xaeF\\xa6\\xd8\\xcc\\x8c\\x8fC\\x8d\\x8f\\xd37\\x9aOd\\xfc.@\\xed\\x92\\xfbD(%\\xec\\xcc\\\\X\\xa8\\xb8A\\x03\\xa0~P\\xceKj}aD\\x8b2}\\xe6\t\\xfa=\\x91\\xa0\\xff\\xf1K\\xcc\\xda/x\\xff\\x18\\x88\\xe7\\xd1u\\x9a\\xe0\\xd5\\x1b?\\x81y\\x9a0\\x84\\xc0\\xe3\\xa6\\x93\\xa6<\\xad\\xe9b\\xc6gf>y\\xccS\\x96\\xe2p\\xac\\xadb\\x8d?\\xad\\xb1\\xc9\\xd2\\x8a\\xf9\\x1d\\xbb~\\xf4\\x7f\\x95t||\\xd3Wev\\xf5\\xfe \\x1fr\\xd8\\xe7[9\\xecCg\\x84Qp\\xf2\\x9fCM\\xb6\\xe0\\x04r,\\xe1MT\\xf3\\xb6\\xe6\\xc4O\\x15i_\\xf0\\x08qe)\\xb7\\x9a\\xd5\\x945\\x1f\\xf4a\\xd1G\\xfb\\x8f\\xba\\xb7\\x14CPTv\\xe4\\x8f\\xd0\\xc5G>\\xa9\\xab\\xcbPa\\xe7(\\x1aJq#V\\\\\\x92\\xe42A\\xe8\\xe2\\x8dY\\xe1\\x9b\\x81\\xc0z\\xf4\\x88mA\\xa5\\x00\\xd56\\xf7\\xf7 \\x14\\xe1R\\xa9\\x80\\x84\\xe1%\\x88\\x94\\xcb>\\xaaJ]\\xa1\\x96\\xa2\\x95\\xdb\\x97i0s\\x0b\\xe8w\\x7f\\x88\\xe9\\xe2\\x9c\\xe1xE\\xbc\\xb7\\\\T\\xe3\\xb4\\xb0\\xed\\x8e\\xa6q\\x1c\\x82\\xae|\\x9f\\xa7\\x147\\xc0\\xd5\\xe5+\\xc7\\xb3\\xca\\xaa\\xf7\\x97b\\x95\\xe5q3\\x01\\xa7S\\xb3e\\xd2h\\x88\\xe4\\xa7\\xac\\\\\\xee\\xab\\x0bl\\xb1h\\xe57\\xc7)\\xb1\\x08x\\x97\\x95{VSn|\\xa45\\xd2\\x07A^)\\xbap\\x89\\xdf\\x9d&\\x15\\xa0\\x92C\\xb68\t4\\xed(E\\x0d-\\xaa/\\x97H]~\\xdd\\xb9\\xca\\x12\\xb4$ p\\xc1\\x13\\xdf\\xf0\\x04\\xe66#D(\\xa9X9\\x0bqY\\xbao#\\xcf\\xb9\\x0c6rQe\\xcfD\\x0d\\xb1\\xe0\\x0c2>Cj\\x07C\\\"\\x89k-\\x11b\\\"\\x9c2\\x06\\xe7r\\xea\\xcff}Ac\\xb8%`\\xc6\\xd3\\xb2\\xf3\\x7f\\x1c\\xefqw\\xb5\\xd8A\\x02\\xf9qo\\xb0o\\x85G\\x05\\x13<d\\\"xY\\xc7\\x13K\\x875\\xcb\\xf9\\xcd'\\\"\\x88\\xd3\\x841\\xaa\\xe2+tq\\xe3\\xf5\\xe4+\\x8c\\xc3\\xe0T\\xa047u*\t\\x9fF\\xf0\\x05=\\x8f\\x8b\\x9e\\xc7\\xd0ex\\xdd\\xdbW{7I;\\x92\\x16\\xcf\\x15B\\xbcF\\xd2\\xf6\\x8f\\xcf\\x9a\\xa8{b\\x9f\\xc9\\x19\\xf9\\x92\\xb68\\x05\\x1dy\\x94\\xd3\\x11d\\xf2x\\xe7L6\\xab\\xefV\\xdbV\\xad\\xd8H$\\x0d\\xfb4h\\xde\\xa7^\\xcb}Z\\xcd\\xa9\\xed\\xe5\\xe8[\\xc9\\xa9\\x9d\\xd5\\xaf\\xe2'(\\x80\\xa3\\xd4$(\\x18?\\x86\\xf0n\\xb7\\xdbG\\x9c@e\\xc2\\x94\\xed\\x0fo\\x1a\\x17\\xd8\\x8c\\x93\\xed\\x8c\\xf8\\xe1W\\x80\\xb4\\x8c\\x93Jc\\x1c\\xc1\\xb2b\\x89\\x99\\x8ce\\x1c\\x0e2\\xdeh\\x99Q\\xaf\\xc3\\xc5+lN\\x0e\\x85\\x94\\x87\\x82\\xacy\\xd6\\x1e\\x9b\\xd4c\\xbd\\xfb\\x0f\\xd6k\\xc2\\xfao\\xc4\\xa8&t\\xeaBWA\\xaa\\xfa\\x18\\nj\\xa9=\\x98KGK\\x19\\xbc_r\\x9a\\x14\\x1e\\xc06\\xcc\\xcc$fZ\\xb0M1\\xdb\tM6:*\\xa1\\x08\\xd1VG%y\\n\t\\x8d\\x90\\x84\\x922\\x99iIL\\xf0\\xad\\xee\\x06C\\x08\\xf1\\x95g\\x0d.V\\xde\\xbe\\xf0\\x99\\xb2\\xf0\\x84sH\\xb3\\xa6E\\xffg\\x90\\x91\\x865\\\"-\\xd6H\\xa1\\x08\\xa1\\x89\\\"\\xe4\\xbc\\xef4\\x9e\\x95w\\x90J\\x0c|N\\x0c\\x1a6\\xa3+t\\x95\\xad\\xe0N\\xd4\\x0d7\\xed\\xcaT\\xcb\\x8d\\xb0o\\x02|\\xab\\x0dg\\x16%\\xf3m\\xc85J\\\"\\xd0@\\xd2$=\\x96L\\xf5\\x1a}\\x1b\\xa1\\xaaJ\\xcbB.\\x8e\\x91\\x8b\\x80\\xa2'\\x15D\\x0b`\\xcc\\x0b\\x1fK\\x1a\\x01\\xce\\x15\\xc9\\x92^\\xc8\\xd2\\xcbIe\\xfe\\xe1\\xd1#~1)\\x91\\x18\\x15\\xb8up\\xd7J\\x9a\\xf8\\x92\\xf2jp\\xb1\\x93\\n\\xb1\\xb3\\xfbR]\\x8f?\\x99;\\xaa\\x8bt:Q\\xed\\xbf\\xcc\\xca\\xc0\\\\\\x1b\\xa5\\x0b5\\xa3s\\xc7\\xe1\\xf1.e\\xcb\\xe8\\xfee\\xa2\\x9f\\n\\xed\\xac\\xafhn\\xf9\\xd8\\xc9\\x13\\x88i4 f\\x1f\\xfb\\x0d%0E\\xa8\\xde\\xd3\\x16V^EZ\\x18\\x1f7g\\xcc}]\\x1ao\\xe1C^/u\\xfb\\xfcX\\x19\\xf8\t\\x0f\\xed\\x90j\\xa2\\xb3\\xcbO\\x95\\x19NM\\xcc0u\\xd2\\xa9?\\x13P3\\x8f\\xc4\\xdeQ5VD\\xc5\\x12.\\xb2u\\x1eq\\xde:\\xac;\\xb124\\x898\\x99V\\xaeT}\\xc3%*\\xa4\\xaa\\\\\\x8b \\x8b\\xa6\\xfe4\\x9c\\xcd*\\xd3J5\\xe6\\x80y\\xb8\\x8c\\xd8\\xae\\xf4\\xa3\\xd4\\xaa\\xc8f\\xed\\x1c\\xf1\\x8c\\x00\\xec\\x14\\xfaG\\xd5\\x93P\\xea\\xa5\\x15\\xb3L\\xdc\\x0c!\\xf2@a\\x9f\\xcd\\x91\\x16'\\xec\\x04B\\xc9b\\xa1\\xf6\\xb2\\x94\\x83\\xbc\\xd8y\\xb9\\xdb\\xa7\\xdc\\xbe\\x94*\\x19\\xda\\x07\tY\\xd0\\xd7\\x15k\\x05\\x8b\\xe5\\x1e\\x9fb<\\xa0\\xb7)\\x0d\\xe7N}\\x1fq\\x1b\\xcd1\\x90\\xf2j\\xe1\\x89_\\x19\\xdd\\x17\\xb9\\xfd\\xa8^\\xac\\xd6\\x01KCz5\\xeb\\x01^\\xb6u\\x1c\\n\\xfb\\xd0\\xa3\\xe6\\x902\\xd6h\\xe6<Z\\xf8e\\x9a\\xae5\\x81\\xc2\\xf9\\xc3\\x9b\\xc4\\x10C\\\\\\xf4\\xf7T0{\\xf5\\x0dU4\\xaekB\\xb6\\xde\\xd0\\xfc\\xf6\\xf6\\x96\\xbd\\xfd\\x85v\\xecJ\\x0b\\x9b#{\\x03\\xcbh}Ic{\\x1b{\\x0d\\x93\\\\\\xf8\\x81)\\xd4\\xba\\xde\\x1cA{\\x98\\x88N\\xbe\\x05fI\\x87\\xb2\\xc6 1\\xf5\\x8d\\x1f\\x19\\xafw\\xe6\\xd4\\x8b\\xe6\\xf4\\xd3\\xc7\\xb7\\xaf\\xa2\\xd5:\\ni\\x98:J\\x94\\xce\\xb3\\x1e\\x9a,0\\xc6J\\xb3s\\xd3\\x01\\xf7\\x9f\\xf0\\x17wM\\xc8\\x9e\\x13\\x95j|\\x01I{\\xb4'#w\\x14\\xf7C\\xe8\\xf2\\x8eTgs~M\\x83\\xd6\\xd3\\x13\\xf4\\x88w!\\x16\\x8aM4\\x92|\\xf4\\x08\\xc4\\xd1C\\xc3\\xda\\x14#\\x94\\xec\\xf6\\x91-\\xa8?\\xe5\t\\xfc\\x0c\\xb4/\\x17}R\\xf4\\x93\\xfc#\\xf2C\\xa7\\xfb\\xa8\\xebV\\xc8[\\x1fR\\xee\\xd9[\\x82L\\x15,\\xa5\\x8bd4\\x90\\x98\\xfe\\xbe?y4\\xeb\\xb9\\xfb\\x13g\\xfa\\xfb#n%\\x81\\xab\\xfe\\x8f\\xcf\\xcf\\x11\\x8a\\xa1\\xd5L@\\x1aLE\\x0e:m\\x9a\\xcd\\xa3X\\x85\\xcd\\xea\\xd9\\x02\\xc8\\xa6\\xf8!\\xbf\\xeeu\\xe2\\xa9?clr\\x0b\\x9e)~\\x18\\x82\\x17\\xbe\\x91[U\\x9fF\\xee\\x1b\\xb9\\xb7\\xbb\\xad\\xf5\\x8d\\xdc\\x1anj|#\\xbb\\x87\\xb7k\\xea\\xa5t\\xae\\xea\\xd9\\xca\\xd52\\xc5\\xf7\\xa5\\xfc$\\xc9\\x9f\\xf8a\\x0b2n\\xb82\\x137e}X\\xf7a\\xde\\x87\\xcb>z2jb\\x80\\xae\\x0c\\x96\\xb8KC\\xf9\\x1dj~\\xcb\\xebTQm\\x16\\x9b\\xa2\\xe4\\x0f}z\\xb7\\xa6\\xdc'\\x9a\\xa8\\xb9\\x94A%\\x0c\\x17\\xfa3D\\xee\\xca@\\x8f@x\\xf7RG\\x1d\\x81\\x0b\\x01{\\n\\xfb\\\"Z\\x0f\\x07D\\xca\\x95\\xc6t@\\xd6\\xeb\\xe0\\xce\\x89\\xfb\\xd5\\x88O\\x9f\\x0d\\x03<7;\\xda\\xa3\\x85\\x04l\\x809\\x7f\\xbb\\x12/\\xe8\\x92\\xdb\\xad\\xbc\\x14d(\\x94w\\x1a(:\\xb0V\\xae\\xd9\\xb3E\\xab1\\xddh\\xcd%\\xd9\\x90(\\xee,\\xdd\\xaeZ\\x80s\\xae\\xe6\\xd88d;\\xb8Vm\\x0e\\xfb B\\xc1GY\\xea\\xdc\\xf4[\\x18\\xa5HP\\xa4\\xb0\\x01\\x0e\\xc2\\xc3\\x1e\\x00b\t\\x13H\\x18\\xb7\\xb6\\x90/\\\\\\xbb\\xf5\\xfc\\x1c\\xc0Y\\xd8\\xaa\\xdb\\xb7\\x01\\\"\\x87VG\\xeb\\xb9\\x82\\x0ch\\x90\\x1d\\xc0\\x04.\\xd8+c~\\xa7\\xa3bKMB\\xd3\\xf7x\\xdb\\xb4\\x06z\\xcce\\x80:\\xd7\\x82\\x9e\\xad\\x10\\x1b\\x0b\\x89\\x97\\xd9\\x8a\\x86i\\xc2\\x03\\xf9\\xa7\\x97~\\xd2\\xc7\\xdb\\njQ\\x9a\\xb0\\x97\\x15d+\\xc4\\xef\\xe6\\xe5\\x03\\x05]y/u$`\\x02\\xc9\\xaa\\x80\\xd9Z\\xdb\\xd0g\\xc7\\xb4\\xf0ltKW]\\x8dz\\xf3\\x17\\xcee\\x1b9\\xbc\\xbe\\xb1\\xd0T\\xde\\xd15\\xea\\xf6+#\\xd5\\x9e\\x1c\\x98\\xea\\x82Q\\xa1\\xfb{\\x94\\x91\\x9c\\x90\\xeb~\\x90Nv\\xd8yK\\xe6~\\xb8\\xe4\\x996\\x1cF%\\xbb+r\\xfb\\x1b\\xf1\\xd3.\\x0f\\x1c\\x07\\x13\\xc8\\x1c\\xdf\t\\x07\\xa2X\\xb6\\x84\\x868\\x8b>\\x12\\xd0n\\x1a\\x13?@\\x0e\\x82\\xbd\\x03\\x13lZ\\x16\\xc2\\x18\\xee\\xdc>\\xdc\\x0e<\\x12z\\xe8\\xd0\\x98/\\x9b\\x16\\xc9\\xf8\\xe4s?\\x01/\\xa0$\\x963\\x9f\\xbb\\x92\\xf2#\\x1d\\xbc\\x14\\xd8]l\\x812DX\\xaf\\x8b K.\\x9b:\\xd5\\x01~\\x02k\\x18\\xc3\\xa1\\x139\\xb5\\xe8\\x0cp\\x9b\\x17<\\xf4@\\xdes\\x1bNA\\x03'\\x19\\x0f0\\xd7E\\x18\\xdd8\\x0f\\x14\\xa4\\x94\\xce\\xb7\\xb7\\x9az7\\x9c\\xc1\\x92?\\xe3\\xee\\x9fyp\\xbe8\\xaf\\xff\\xb0!1\\x0ed\\xcf\\xed\\x97c\\x129\\xa3\\x1dw \\xb8\\xef%M?H\\x06\\xfcx\\xd1\\xa6\\xc9b\\x96{U\\x1e\\x86\\xf3<\\x9b\\xdb#e\\xf2\\xa1\\xb3\\xb9\\xb3\\xe7:\\xddrG\\xdd~\\xe3:\\xd8I\\x8e\\xa8\\x149\\xb1\\x86\\xb8\\xe7\\xdfZ\\x85\\xbdPaS\\xeeH\\x1a\\xf1!\\x18\\x9fU&{~N\\x93\\xf7\\xd1<\\x0b\\xca\\x11m\\xda.\\xcb\\xde\\xd0\\xb6,\\xc9W,\\xcb\\xa6j0\\x11;\\xf1\\xe0\\xa4\\x0f]\\xden-\\xd4T\\xb9\\x1f\\x9c\\xe8\\xde\\xc8e\\xdd?\\x10\\x88J\\xf7zNxK\\x97\\xd0\\xc3*k\\x81 \\xf9L\\xe8\\xebC'v*q3\\xf3\\x1cB\\x05\\x83\\x88\\x0e\\x18c\\xf0H\\xf88es\\x03\\x92@._v*\\xf6\\x93\\x9f\\xf5;\\xb4\\x06\\xa01h\\x17\\x05E\\x8b\\xee\\xf99\\xb6\\x7f~\\x8e\\x14\\xf9\\x1f\\x9faR\\x05\\x93V\\x0bj\\x0e\\xba\\xc5\\xe3\\xd09\\xdb\\xcf\\\\GZE\\xa18\\xd8g\\xa0\\xdd\\x1d\\xba\\x83\\x85S\\x15\\x9c\\xfb\\xa0\\x0c\\x03\\x17\\xaf\\x0f\\x9b\\xae\\xcb\\xfa\\x9f\\xcapv\\x1d\\x87\\xaa6c\\xa8f\\xd39N5E\\x9eJ\\xf5Q\\xb3\\x8d'\\xac\\n\\x0c#\\xdb!\\xea\\xfaR\t\\x97\\xa2\\x11^>'4G\\x134\\x90=\\xae\\xabA\\xabf\\xb0\\xff\\xf8\\xcc/_\\xc6\\xe2\\xa0\\xa9\\xa0\\x9ewI\\xbd\\xab\\xb1b\\x91\\xddz\\xd3\\xaad\\xbd@\\xf9b\\xe3\\xb6 \\xfa\\xc6c\\xc7\\xc3\\x90\\x0d\\xbc\\xce\\xc3F\\xf6e{\\x9f\\xf77\\xc6\\xf1?s\\x1f\\xb8\\xdf\\x9b\\x95\\x86\\x0c\\\\;_\\xd1\\x96\\x02\\xde\\xaa\\x0c-d\\xeb=m\\x12bgkoK\\x1bw\\xe8\\xa9.\\xecP\\xe8lWk\\xf3\\xc1?\\xdd\\xaeV\\x0fDy\\xf5 \\xf0D\\xaf\\xd5Q.x\\xfd\\x9da\\xe94|\\xa6\\xfc\\x8a\\x06~\\xc8\\x96\\xc6\\xa9`\\xd5\\xbaF\\x86\\x16~8\\x7f}\\xfc\\xfe(\\x9a\\xd3qU\\x9a\\x8di8\\xa7\\xf1\\x18\\xfc\\x01\\xffV\\x99d\\xb8\\x8a\\xb20\\xcd\\xb5B\\x07)o\\xc4\\x1f\\xe8\\x9f\\x94\\xdf\\xbe\\xa6q\\xe2G\\xe1\\x18\\x92j\\xab\t\\xde\\xb0\\x9d_0zA\\xe7\\x9f\\xd6s\\x92\\xd2d\\x0c\\xd9\\xa0\\\\bx\\x8d\\x8f\\xf4$\\xbbHcJ\\xdf\\x86i\\xf4*\\nS\\xe2\\x87l\\x1e\\x85\\xf0\\xaaPh}\\xa4\\xc6\\xf3\\xf3\\x8f\\x87\\x07\\xafN\\xcf_\\x1f\\xfezz|\\xfc\\xee\\xe4\\xfc\\xa7w\\xc7?\\x1e\\xbc;\\xff\\xf9\\xf8\\xf8\\x97s\\xf4\\xd0\\xd5ZN\\xd9_\\x13\\x8b\\xc2\\xdenU\\xb1\\xa2\\x9c\\xcf\\xe1y\\x1aS\\xaaK\\x1a\\xbe\\xa4\\xe9\\xab Jh\\x92\\xbe\\x15\\x04\\xf9M\\x1c\\xad\\xf8\\xaa\\xc4\\x03\\xf3S\\x8d\\xae\\x85\\xe2\\x92\\xb1\\n\\xb2rS\\xcc0P\\xae\\x18\\x06b\\x19\\xe8<\\x1f3\\xbf\\x80d\\xcc>O\\xd8G1\\xcb\\x8d\\xa6\\x1f.\\xc1\\x95\\x028\\xc8\\x8f5\\x04\\xe1{\\x86r\\xe3j\\xb2\\xa3\\x8f\\xd4\\x8bB\\xcf\\x0f\\xd8\\xf2\\x17\\x17\\x1a\\x9f+\\x1c\\xd2\\xfa[\\x10\\x93\\xbd\\xbdj\\xb42IM\\xaa\\xfb\\x9dS\\x93\\xbd\\xa7:M\\x1d+\\xafF7\\xcbDy\\x95*\tb\\xf8\\xb4\\xdao \\xca\\xab\\xfdrz\\xb2\\xf7LOOj\\xc4p\\xcd\\xc9\\xcc\\xa8J\\x96\\xe6\\xbc|\\xb3z\\xf8]\\x8a\\xf2Q\\xa5\\xfcZ\\x94W\\xa7\\xbb\\x12\\xe5U2\\xb9\\x14\\xe5U0\\xdc\\x89\\xf2*\\x18.x\\xf9V\\xb5\\xfdsQ^m\\xffF\\x94W\\xe7{\\x88\\n\\xc66\\xbc\\x1b\\xdf\\x9e\\x0d\\xb1\\xb3\\x0f\\x91\\x8f;\\x14.\\xdc\\xcb\\xc1\\xe15\\x0d\\xd3\\xc3\\x95\\x9f\\xa64\\x16\\x1b\\xfc#%^\\x8a\\xe5\\xef\\xfc$\\xa5!\\x8d\\x9d\\x95\\x9b\\xd7\\xfd\\x10dK?\\xfc9\\xbb\\x10\\xb5\\x95\\xc2\\xe3xNc\\x87T\\xeb~J\\xfd \\x11\\xb5K\\xd4\\xc2Y\\xd8\\xaa\\xb2\\x1a\\xa71a$\\x99\\x04(\\xa07\\x8f \\xf9\\xf1\\xee\\x88\\xac\\xa8\\xe6\\xfe\\x90}N\\xfc\\xd5:\\xa0J\\xf51\\xdc\\xd4\\xa9\\x0c\\xfb\\x1c\\x86)\\x8d\\xdfQr]\\xae\\x9d\\xe9k\\xbf\\xba$\\xe1\\xb2\\\\\\xd3\\x90\\xdd\\xec\\x84\\x06\\xe5\\x01\\x8f\\xe1\\\\_\\xf3G\\xba\\x88b\\xfa6\\\\g\\xe5\\xeau\\x17\\xad\\xcf\\x08\\x99\\x9f\\xa3\\xa4\\x00\\xae\\x00\\xccOl\\xed|//~\\x15\\x90$q<c\\xfdSz\\x9bV*_b\\xe5\\xd7\\xc7\\xef\\xe55\\x95\\xa8\\xaa\\x94\\xbc\\x8a\\xc2\\x85\\xbf\\xc4L\\x0d\\xedj&\\xadk^\\xf0E_\\xadYIy\\xac\\xe5\\xc27\\xc4K\\xa3\\xf8\\xaeE\\xacO\\xa9p\\xa07\\xb0\\xae\\x06\\xa6,\\xa0)N\\xf3|C\\x08r}\\x1a\\x930!\\xbc\\x87;M\\xc5\\x1f\\x19/\\xe0\\x87\\xcb\\x934&)]\\xde9\\xd7X\\xa96\\xf6\\xf0\\xda\\x8f\\xa3pE\\xc3\\xd4\t\\xcc\\xd2<~\\xfb\\\"\\xf2o\\xa6\\x11\\x02\\xc0>\\xe3]\\xea\\x00\\xea\\x92\\xd8'\\x1b^\\x16\\xc74L\\xbbc\\xdd=\\x08\\xaf2\\xa7)\\xf1\\x83\\xc4Z\\xc5O\\x18\\xeb3\\xb7\\xd5\\xb9\\xf4\\xe7s\\x1a\\xdaj\\x08\\xbf@[\\x95+z\\x97\\\\Fq\\xeae\\xa9u@\\x01\\xb9\\xa0\\x81\\xadB\\x1c\\x05tN\\x13/\\xf6\\xd7\\xc8AY\\xaa\\x92,\\x8d\\xbc\\x88Q\\x93\\x94\\xda\\xea\\xa1\\xe4e\\x87\\x01\\xbd]\\x93p\\xde\\x00'\\x92\\xac\\xa3u\\xb6\\xb6N\\x8f^\\xdb\\xa7\\xb7\\x8a\\xe6\\xc4^AF-o\\xac\\x94 \\x19c\\xcbk\\xab\\x1a\\xc5>\\x0dS\\xd2\\x04K\\xbc\\xb3\\xbe\\x8c\\x829\\x8d\\xad\\xd5b\\x9a$v0\\xc5\\x94\\xcc\\xa30\\xb8\\xb3\\xd7\\xf9[\\xe6\\xc7\\xf6v\\xf8\\xf4\\x1a\\xeaD\\xb1u\\x87\\\\\\x93 \\xa3+r\\xdb\\\\\\xc7\\xb7B\\x07\\xeb\\x84\\xd1Mc\\x9d\\x94\\xdeZ\\x07D\\xd2h\\xe5{\\xb6\\x1a\\x17Yb\\x05]\\xe0_[\\xd7;\\xa6\\x01\\xbd&\\x0d\\x84\\x83\\xd1\\x9f\\xc5\\x82\\xc9\\xe7\\x96Z\\xcb\\x98\\\\\\\\\\xd8\\xe1\\xcf\\xa8\\xf05nW\\x1a\\xce\\x1b:\\xf5\\xa2\\xc0c|xC\\x1d4\\x94k\\xa8\\x93\\xac\\x89u\\xb9\\xbc(L\\xe3\\xa8\\x812\\\"\\x8d\\xb9\\xa0\\xf3\\x0b+\\xb8\\xd13zE\\x93\\x84,\\xad`_\\x04\\xd1M\\x1aY\\x17\\x8eQ\\xbe\\xa0\\xa9\\xbf\\xe8&\\xb4\\x0e{\\x1d%~\\x98P+\\x14\\xe3\\xe8\\xa6\\x11\\xd2qt\\xd3\\x08\\xe98\\xbai\\x82tB\\xd3\\xc4\\xff;B\\xa6T\\xa3\\\"\\x80\\xbd>~\\x7f\\x90\\xa6\\xb1\\x7f\\x91\\xa5\\x94\\xb1\\x86\\xec\\xdc\\xabW\\x91|G^#\\xaf\\xf0\\x15\\xa7\\xb0\\xa2\\xd1\\x19V\\xa5\\x15qu\\xa0\\xd7\\xe8\\xec\\xedU\\xabK\\x19\\xac*\\xdcH\\x19\\xac*\\xdc`\\x1c\\xc2g}\\x18m\\xf5as\\xaf\\x0f[\\x9b\\x15\\xcbV&\\x8cmnj\\x02EG\\x03\\x8f\\x84\\x9f\\x12\\xfa\\xfa\\xf8=\\xea\\x13\\x90wI|6s\\xe4CQ\\xef\\xcbSD\\x94_Fq\\xad\\x946\\xbf\\xda\\xd4<\\xf2\\xf0\\x8a\\xf6}4\\xa7\\xd8\\x8c,\\x00\\xe90(\\x0b\\x06j\\xd5\\xaa\\xb2\\x88\\xdf\\xb4V\\x1bg\\xbcku\\x80\\xecA\\x87\\xbb\\xec9u\\xc3ZL\\xfd.\\x92]\\xb0\\xd5'\\xaeQ\\x81\\xb2\\x1e\\x08\\xc5\\x10\\xab\\x81\\xe6Ao\\xc3\\xd4\\xc9K\\x1d\\xb7\\x0f\\xa3\\xa1\\xcb\\xe3\\xf9i\\xc4\\xcf\\xcaX\\x9d\\x8e\\x072\\x12\\xd5\\x020\\xbb/\\xfb\\x82!\\xf9*\\x93\\xbd\\xd6\\x84\\xe9^\\xe5QK1\\x1d\\xef+\\xe1\\xd5\\xc0x\\xcdR\\xbd\\xa56\\x9e\\xf4E!W\\xe88@\\xf6Y_\\x92\\x84\\xce?\\xd2\\xa5\\x9f0>\\xd6\\x8fB\\xb9-\\xb4\\xd5\\xd9\\xe7\\\"\\xbb`\\xbc\\xde\\x18\\xbaQ\\xa8H.\\x16/\\x04\\x8f\\xac\\xd3,\\xae\\xbf\\xf2\\x8a\\x97\\xd7m\\xf9\\xa1\\xbe\\xb7\\xe5gN\\xd74\\x9c\\xd3\\xd0C\\xb6v\\xdaM\\xa3\\xb5\\x8a\\xb6\\xe1\\xbc\\xdb\\x07V\\xf8\\x0b\\xbd\\xfb\\xc0\\xb8\\x08\\xf1\\x93\\xa1\\x8c\\x18&\\xfe\\xfe@\\x92\\x94v5I\\xf9\\xea\\xbdz\\xa5\\xe6\\xbf\\x13 \\xabsh\\x07\\xcb\\xf2[\\xdf\\x08\\x9c?\\x06Y,\\xa0d\\x82\\xec\\xeb\\xe8&\\xd4\\xc3\\xf9\\x17z\\xf7i-\\xbe\\xbf\\x8f\\xb2\\x84b\\xd5\\x87\\xc2\\xf9$%\\xf1\\xf7B\\xd9W\\x95n\\xbe\\x00\\xd6\\xf8\\xdew\\x85\\xb6\\x18\\xd9?\\x0b\\xde\\\\\\xb2\\xfd\\xfe\\x00\\xe7\\xfd|\\x01\\xc4\\xf9\\x8b\\xdf\\x15\\xe4rl\\xdf\\x10\\xe6\\xa5\\x92\\xca\\xf8\\xee\\x84\\xaa//\\xcc\\xcd\\xa6.\\xb4Wi\\xd2\\x9e\\\\\\xab\\xec\\xe0\\xd6\\xd0\\xf9\\xd0\\xac\\x16\\xd1\\xb5\\xdc\\xbd\\xe8Q\\xf1\\xaa|\\xf8\\xea\\x1a\\xc6YZ\\x9b\\xce[\\xc2\\x1e4\\xd1\\xf4\\xd4\\xe68DM\\x06\\xea%\\xd0Z*\\xe1Z\\xda-\\xc051\\xeb\\xac\\x11\\x8c\\x9a,\\xc7u^\\x1b\\x1a\\x13\\xc8k\\x99\\xf7m\\xc0\\x15(\\xe5Q\\x88NLAP\\xbas\\x92\\x12\\xe4nR\\x98@:`?\\xabw\\x12\\xc5\\x88XW79KV\\x1f\\xdd\\xa1\\xe4c\\x0d\\xa1i\\xb3\\xbe.\\xb6\\x83\\x87!\\xdbl\\xa6\\xd1\\xd0\\x84\\x97\\xa0.U\\x8d\\xbc5\\xc6\\xfcZ\\x0e\\xaag\\x82\\xdexN\\xd7\\x05;\\xaf\\x1e\\xd6\\xc1a8o\\xdf\\xbc\\xa0\\x16\\x0f\\xeb\\x81\\xbf\\xd4D'\\xf8\\xf5\\xd3\\x0d\\xb7%D\\xe1\\xe3\\x91\\x88\\x12_\\x1d.Z\\xcf5\\x99\\x99HLS6\\xb1\\x88\\xe4\\xf4\\xe8\\x91\\xb2c\\xcb\\x81\\xae\\xc5@\\xcc\\xbd\\xe3j\\xb8}P\\x12\\x86\\x97\\x05\\x02@~\\x98\\xbd\\x8bq\\xdcE\\xf8\\xdeZ\\x13\\x1c\\xc7\\xaa\\x8f\\x0eC\\xb4\\xda\\xe3y\\xea\\x98|s3X\\xd2\\xf45I\\x89\\xe3r\\xe0\\xec\\x83\\x8f\\xf6]Q\\x14\\xd0\\xb9\\x13U]\\x01\\x18V/0\\x0bqQ)+\\xf6@\\x1d\\xd9\\x13\\x17\\x16|\\x97\\xd5\\xe2\\x9c\\x18\\\\A\\xe5e\\xf6\\xb9\\xd6\\xdf>\\xb7\\xe4\\x11\\x11Rd\\xdbm\\x9c\\x1b\\xe3\\x01\\xf1\\xbcl\\x95\\x05$\\xa5\\xa77\\xd1\\x07v\\xfc\\xbe\\xf6\\x935^>'x\\x91\\xb2\\xb0R\\xa3\\xdb\\x86\\xfdN\\xea\\xf3\\xef`\\xb4\\xa8y\\xd5\\xc4\\xe7\\x9b\\xed\\xf8V\\xdb\\xf1\\xdc\\xa9\\x06\\xac\\x91\\x9f6\\x07\\x87\\xfc\\xe4\\x87\\xd1\\xcd\\xa5\\xef]\\xe2\\\"\\\\\\xc3\\x84\\xaf\\xc8\\x18\\x9c;q\\x1d\\xb6j\\xea\\xaa\\x10\\x19\\xcc}\\xe5\\x86\\xdd\\xb8\\xbe\\xfa\\x06A\\xb9\\x89@T\\xc7\\xd8\\xd7w\\xc5\\x90B\\xfd{\\x8da\\xf6\\x94}\\xd7LSp+\\xb7 \\x17\\x0c\\x19nL+\\x8bN\\x0d\\xf5\\x85-\\\"\\xc3u<67\\xc1\\xc1\\x98Z\\x01\\x05p\\xca\\xc6n\\x84\\x9e?\\x88i@IB\\x9d\\x1b\\xb7\\x9f\\x1fx}C\\x00K\\xbd\\xabs{\\x98\\xc1\\x83P\\x9d\\xcb\\x93\\xad\\xd6\\xea\\x9bc\\xf8\\xa3G\\xd0ia\\x1aQy\\xdb\\xa1\\x03/\\x8d\\x83_\\xe8\\x1d\\x8f\\x18C\\x824\\xff\\xbe\\xa2)\\xf9\\x85\\xde\\xb9\\\\\\x9dRT\\xc4\\x802\\xbc\\xa2%\\x88\\x17\\x8fJ\\xa9S[\\x88\\x11K\\xf3\\x8a\\xf6\\xc7m+\\xf2qYl)\\xdb~\\xfc\\xf6\\xfb\\xca\\xb5\\x9c\\x81\\xd7yD\\xaf\\xe2$Z\\x0e\\x14\\xcd\\x8c\\xe9T\\x12-&\\xf2\\xe4 \\xfd\\xa6\\x83!q\\xfb\\x90\\xfc\\xa9>R6\\x84\\x93\\x9a\\x82\\x88^\\xd3\\x90\\x87\\xfc\\x1bC%\\xb8\\x0c\\xbdMci\\x16\\x90\\x8ck\\xdaP\\x83\\xdd\\xa7\\x18\\xf0\\xf4P\\xad\\xd7W\\x0f\\xa3\\xd85\\x05[7\\xd8\\xab\\x9e`\\xe9\\xd7*d\\xab\\xd6\\x17\\\\\\x1f[3z\\x16\\x16v;[\\xae\\x8e\\x87&\\x86\\x94N\\xe7q\\x14\\xf1\\xf4\\xce\\xe2w\\xc2\\xd8\\x1avv\\xc8\\x8c3K\\x8a?\\x1d\\x99\\x81\\xe7\\\\\\xa6\\x07\\x12\\x95\\x0cL}\\xec\\x10\\xd5\\x0c\\xb6\\xdc\\xf5\\x9c\\xf2d\\xa7Q\\xdc`\\x02R\\x1a\\xa3\\x92\\xd7\\xa64L\\xb5\\xdc68\\xa8\\x8b\\xb1br-\\x93\\xb8\\xe3\\xe5\\x15\\x17k\\x8aqM\\x94\\x1f\\x03\\xac\\xc16p^4\\xf5\\x9d*\\xda\\xd4\\x86\\xc0\\x0e\\x90\\x86!\\xa0+wm\\x86\\xf9\\xc6\\xad?\\xaa\\x13\\x0f\\xf4\\\\\\xeaK?\\xd0\\n\\x18\\xf5\\xda\\x07\\xc4@\\x19\\xf2Z[#\\xaa\\xa3\\x89\\xb6\\x9e\\xafF9\\xa8\\xd5@'U\\xca\\x03\\x1bSx\\xc1\\xe3\\xb1\\x84S:\\xe3\\x81s\\xa6t\\xf6\\x1ch\\xaf\\xa79c\\x91\\x1f\\xc4\\xd0\\xa8\\x1b:?kl\\x98!\\xc2\\xe89\\x8f~Lx\\xcb\\xacz*[\\xc7\\xe4h\\xb3\\xe7\\x90\\x1a{\\xc8\\xd0\\xf9\\xed%\\x8c`\\x02#V;7_\\xae\\xd77\\xae\\x08B\\x80GN\\xa5\\\"Bx\\xad\\x8e\\x89\\xbe\\xb8}\\x88\\x06d>g\\x14\\xd8\\x0f\\x97\\xa7\\x11\\x9a.\\xa9\\xb4\\x86|\\x0bZ\\xb3\\xfdTK<\\\"\\x0bC^\\xd8H\\x93 p\\xb8/\\x9bR[G\\x19\\x06$[\\xaer\\xb3\\x9d\\xa8F\\x1cp7\\x94\\xc9Je\\xb2\\xd1\\xff7\\xd9\\x07Nv4\\xaa\\xde\\xc7E\\x86\\xeb>_\\x7f\\xddG\\xf4&\\x8eVCm\\x83\\x9d\\xf6\\xd6N\\xb5qnW\\xb9Y;\\xea\\x16\\xa2\\\\oX\\xb9\\xb5S\\xb5\\xdb\\x9ck\\xef\\x91\\xbcK\\x9e\\xdcZ\\xcfW~\\xadz\\x18\\x1bo\\xad\\x13\\xc6\\xda\\xdfA\\x11,F\\xc1\\x7f\\x04\\xbew%\\xbe\\xbf\\x89\\xbcL*~\\xd5\\x0b\\xa4\\x9a\\x868W\ts\\xbb??\\x9fY\\xa3bX\\xb7\\x89.u8\\n\\nF&\\n?9\\x1f\\xf0\\x15\\xca\\xf7\\x92\\x9e\\x95\\x8cy\\x16\\xea}\\xe8zr\\xb6\\x91\\x9d\\xa3d\\xfc[5l\\x00(\\xd7\\x95\\xc88\\x94\\xbaZ\\xd5n\\x86Y\\xdd\\xa5Q\\xd9}gV\\x9c^:+\\x9c\\x10\\x9ak\\x97'T\\xb5\\xc4w.\\xfaM\\xf9\\xde.4\\xe15\\x064\\xfc[F3n\\xcd\\x99\\xa0+V\\xccx.\\x8f&\t\\x96\\xfd\\x17{\\xeat\\x1a\\xe2t\\x9f\\xd7\\x18\\x0eLH\\xe5\\\\\\xa3\\xe6\\xd7\\xbb\\xc4\\xa6\\x9cn\\x14\\xe6`\\xbf\\x13\\x1e\\xa8\\x9c\\xf1\\x920\\xb3\\xf7r\\xa3\\x15\\xd9\\xa5\\x1c\\x1d\\x0c2\\x04\\xc5\\xaf\\x8c\\x7fz\\xbb\\xe0\\xa87gS\\xaaa_\\x8c\\n\\x10<\\xba\\xd3A\\xe2\\xf3\\xc5G}\\xdb\\xfb\\xc19\t\\x82\\xe8\\xe6D\\x16~ Irz\\x19G\\xd9\\xf2\\xb2\\xae2\\xc2\\x0c\\x13q\\x11\\xff\\xdd:\\xfaC\\xed\\xe8s}\\x02\\x07\\x8c\\x0c\\x91/9\\x00k\\x8b\\xb7\\xa6\\x1dR\\xecZ\\xa1\\x97\\x98\\x80s\\xce\\xb8\\xefF\\xdd\\xc7\\x8aGAp\\xd0\\xc9\\xdb\\x1d\\x90\\xd4\\xb4z\\xe5\\xfd\\x8b!\\xc1P/\\x99\\x13\\x95B\\xc3z^\\xf3\\xb4e\\x1f\\xbfb%\\xc06\\xc8\\xc2\\x91\\xfbRD:\\xd7ZH0\\xa0\\xeb\\x1f\\xbc\\x84\\xa7n\\xc5\\xa4\\xe0\\xc4\\xb8\\xef^\\xb5\\xc5\\xd9\\xb5\\xb0\\x96\\xc9g\\x7f\\xf5\\x05\\xb8{U\\xdf|R\\x16\\xe01\\x1b\\xd7\\x8aM\\x0ej~q\\xef#\\x1c\\xee\\xca\\xa9\\xfd\\xea\\x8d\\x1f<\\x04\\x11^}\\x03D\\xd0\\x80\\xe4\\x01\\x08\\xf1\\xaa!\\x91\\xc5\\xb1i:r\\xb3T\\xcf\\x17%/C~\\x12\\xd5\\xca\\x14\\xbd\\x7f\\xbe\\xbf\\x10\\xc8\\xa1}4\\x1f\\x9aF\\xc3\\xcf\\xcaZ\\xcbic\\xcb\\xa7M-\\xf3\\xd3\\xb6<\\x13=\\xa1\\xa8w\\x97\\xb7U\\xd9g'|\\x9f\\xf9\\xd8\\xf4\\x97n\\xb3g\\xd5mV\\xcf\\xe6\\xae*W\\xe6e\\x12l&\\xb1c\\xe8T,\\xe0\\xce\\xfd\\xa4\\xf0\\n8\\xc9\\xd6\\x8c\\xa3e\\x8c\\xd0\\xc9\\xb7\\xd0\\xd7\\\\\\xe7\\xd1\\nE\\xdcp\\x94\\xd1&\\xfc\\xce\\xa4\\xe6\\x13\\x85\\xa1\\x1a\\xb8\\x05U]d\\xc3%\\xe3\\x96\\xb4|m\\xf0\\xd2\\x86g6v\\x07a4\\xa7rcg\\xf9\\xafA\\x1a\\xbd\\x8bnd:r\\x8c\\x08!\\xd6\\x85\\xc7\\xb4\\xe5\\x06Z~@e\\xde\\x04d^&\\x18\\x1b\\x85\\xb1\\xde\\x870FV\\xfb\\x16\\xc6\\xb0v0\\x91\\xf5\\x89xt\\nc\\x111\\x90\\x07\t<(k\\xbeM\\n\\xd2\\xe2\\xc6V\\x8eQ\\xaf@\\x94\\xc7\\x13\\x8eP\\x19rZ\\x9e\\x12bW\\x17\\xad\\xc2/\\xa2[I\\xe9p\\x16l\\xae1\\x99\\xfb\\x91Z\\xaa\\xf1OpD\\xc4l6\\x97\\x0f\\xaeF\\x9e\\x92\\x1f6t\\xb4\\xe8s\\xf4\\x1c\\xa0\\xfc\\xe0\\xbdn\\xbeo.\\x1dO\\x17\\x16\\x11j,*\\xbe\\xcaF\\x82n\\xcc\\\"w\\x94\\x86\\xb65\\x12V\\x80R L\\xb0*\\xab%oC\\x07\\xe771Y\\xafi|\\x92\\x8a\\xac\\x1fi\\xb9\\xc8|u\\xc0\\x19\\x15\\x0c4&\\xccu\\x03\\xce\\xebt\\xc3luA\\xe3|\\xe5\\xd8\\x02X\\xc6\\x02\\n\\xeb\\xdd\\xe59\\xe3\\xf0\\x003\\xf7\\x0c\\x18}mI\\xd3\\xdc$\\xd5\\x11g\\x9e[\\x84\\xccE\\xc7\\xfbZ\\x05\\xed\\x8a\\xc8\\x8f\\xfe^\\xa3^\\x8a\\xa7P`t8\\xd1+\\\\\\xdfc\\xe9W\\x8a\\xca{OuN\\xcdj\\x8a\\xf7H\\x1c\\xa9\\\"\\x89\\xb8\\x15mZ\\xc6M5\\x108~9\\x17\\xd3E}\\xa1$\\x0e\\x865\\xcc\\xb5\\xb8\\xf3\\xeb\\xb3\\x15\\xc0\\x04\\xa8\\xc3\\x03\\x8ed\\x17\\x81\\xef\\xe5T\\x13\\x99\\x80x@\\xe6\\x85\\x1b\\xeaA\\xf2\\x91.N#L\\xdb\\xd7\\xaf\\x86\\xd8\\x02\\\\\\xb8\\x90\\x0br\\x83\\xf3\\xe8&\\xa4\\xd5\\x98\\xa5\\xc5\\x122\\xf1-\\xb9\\x8c\\xb2@\\x88Am\\xa0)aR\\x97\\xdc@\\xaa+kW\\x189\\xf4\\xa9\\x01\\xfaX.\\xb2\\xa1\\xc5t!\\x13S\\x8a\\xe1\\xd7\\xefC\\\"\\xe3\\x00|\\xed\\x00\\x94\\xcb\\x15;\\x16\\xe4\\xc42\\xe5\\xe3\\xf0\\xf1\\xab\\x18G\\x1fB|\\x1b\\xc3\\x88\\xe7\\xd1\\n\\x8b\\xb7#$p|o\\x96\\x81\\xccY\\xe26\\xe0\\xfd\\x7f\\x0d\\xb2\\\"\\xcf\\x8e\\xb8\\x19\\xd3UtM\\xcb\\xe8\\xc9N\\xfeo\\x82\\xa0\\xdfA\\x0dW\\x8a8`\\xd4@\\x1a\\x14\\x8f\\x1d\\xa7\\xc3O\\xdf\\x022Jd\\xbe\\x82*Y\\xea\\xe4\\xc8\\xa0\\xe37\\xafEl\\xc7r\\xe7\\x9a\\xed_\\xe7\\xd2t\\x8b\\x189!2F\\xb1\\xd3\\x1d\\x8d\\x9eu1\\xdf~>F\\\\\\xa0\\n\\xec\\xfb\\x95I\\xeb\\x97\\xf6\\xe1\\x9do\\x0eu9Q\\xe4lC\\x1d\\xe5\\xd3p\\x89\\xb8\\xc1\\x18~'Sqw@uo\\xf2\\xe3:\\x87s5'w\\xe3!\\xe6\\x7f9\\xa2\\xa9\\xcdL\\xbb\\x1fi\\xb2\\x8e\\xc29\\x8d\\x15\\xaf\\xdcn\\x1f\\xba5\\xdfbVxJ\\xd6\\x95\\x12\\xadc1{P\\xf3!\\xc6F\\xab\\xee\\xc2\\xacP\\xef\\x19,T\\x8a_4\\xc3\\xebFG\\x95\\x9a\\xb2\\xd8\\x17\\xc5Ue4\\xd1*\\x8bWQ\\x96P\\x9c\\xbaI\\x03\\x1cWT\\xc5\\xa8\\xd8}\\x9f\\xbffP\\x05k\\xf4\\xb7\\xf8\\xceq\\xae\\x92\\xe5?\\xafi\\xdc\\xce\\xfe\\x19\\x07\\x8a\\xcb\\xf3\\xf0\\x81\\xe2k\\xdfg\\xa0\\xb6\\x0d\\x9di!\\xae\\n\\x9b\\xa4>\\xa6F\\xe90\\xb3q\\xea\\xe5\\xf1\\x16\\xac\\xbe\\x13\\x0eb\\x8a\\x12\\xec)\\x89\\x97\\x94G\\xecDk\\x8f\\xc3\\x80\\xaeDZ\\xbb&\\xa3\\x97r\\x07L\\x8e*\\xd8\\x8cr\\xbf\\x9d\\x92\\xc0on\\x11\\xcd-xRDs\\x97\\xd9@\\xf8\\x0c\\xa1`\\xc9\\x93\\xdc\\x1b\\x92\\x007\\xa4\\xda\\xbb\\x16v\\x86\\xd9\\x00O\\xc2\\xd7BQ`\\x96\\n\\x90\\x83\\x80\t,d\\xba\\xc0_}\\x8a\\x06\\x92\\x8b\\xc1\\x9a\\xc44L\\x7f\\xe3#\\x93\\xb2\\xb6\\xb6!\\xbd\\x08P\\x07\\xa6\\xd0\\x92\\x98\\x87\\x8f\\\"\\xbfy\\xb0\\xd7\\xc2\\xc4Q\\xbb\\xd4i$\\x16\\xda\\xfc\\xbe\\x879\\x97&\\x10Y\\\"\\xbf8kc\\xb0\\x15\\xf6\\xf9\\xccW \\xc8\\x15\\x8e\\x9ey\\xc8\\\"<\\xe8\\xfe>x-1e.\\x9a\\x05\\x91$9\\x811\\x1flM\\xfd\\x11\\x18\\xae\\xe5AF\\x1d\\x11\\xadx\\xd6V<K+\\xd7\\x15\\x9bV2(\\x08\\x14\\\"4\\xeeT\\xc3\\\\\\xf2\\x9b\\x1d|'\\xe0\\xd4\\x89\\x15\\xf3\\x05\\xc34X\\xd7\\x95U\\xdc\\xd7E\\xe5\\x05\\x01\\x99\\x95~4H\\xa01\\x8c\\xb2e4\\x02\\xf4\\xab\\xf2\\xa0(\\xa7\\xed\\xac8\\xef\\x9f\\xfd\\xaa\\x0ej^\\xb6s*\\x0eQ\\xe5^\\xea\\xba\\x0f+\\xbe\\xc9\\xdd>L\\xd9\\xafFB\\xaa?\\xe33,\\xfd\\xca\\x83\\xb4\\x16\\xfd\\x86\\x9d\\xa32\\xc0\\x8a\\x1f\\x85\\x83\\xf7\\x9fNN\\xcf?\\x9d\\x1c\\x9e\\x7f\\xf8x\\xfc\\xe1\\xf0\\xe3\\xe9_\\xeb\\xe7\\xabZ\\xfd\\xe7\\x83\\x93\\xf3\\x1f\\x8f\\x8f\\xdf\\x1d\\x1e\\x1c\\x9d\\xffz\\xf0\\xee\\xd3a\\xfd\\xd8\\xadV?\\xfa\\xf4\\xfe\\xf0\\xe3\\xdbW\\xba\\xea\\x99\\xa6\\xfa\\x87\\xe3\\x93\\xb7\\xa7o\\x7f=\\xb4\\xbd\\x97h\\xde;\\xfe\\xf5\\xf0\\xe3\\xbb\\xe3\\x83\\xd7\\x87\\xafm\\x03\\x0c\\xb4\\xa7\\x94\\x9f\\xbc\\xca\\x924Z\\xe5\\xda\\x8e1|\\xa4\\xcb\\xc3\\xdb\\xb5\\x12%?\\xa5I:\\xb8\\xf0\\xc3\\xb9\\x13\\xd2\\x1b\\xf1\\xd8\\xe9\\xfe\\xee\\xccIJ\\xeeI\\xec\\x13w\\x03s\\x00\\xc5\\x83\\x83\\xd3\\xd3\\x8fo\\x7f\\xfctzx~t\\xf0\\xfe\\xf0\\xfc\\xd5\\xcf\\x07\\x1f1/\\xd0\\x0f\\x7f\\xee\\xea\\xb2\\xc6\\xdbCa\\xb0\\x0f\\xcf\\xac\\xa3\\xf5A.\\x1e\\xbf\\xba$1FM\\xb4\\xd4J\\x92_\\xe8\\x9d\\xa5F\\x8a1\\xc7L\\x8f\\x83 \\xbay\\x93\\x05\\xc1\\x89\\x17Sj\\x8e-\\x83\\xf50B\t\\x9e\\x1a\\x9e\\xa5\\xc3\\xc02\\xdc\\xc4\\xf2\\xe8.\\xf4\\xcc\\xddgi\\xf4J\\x84\\xc407\\x91\\xa5\\xd1\\x87\\x80\\xdc\\x19[\\x11\\x17\\xfb\\xe6\\xe74\\x08>\\x90\\xf9\\xdc\\x0f\\x97\\xc6NX\\x9d\\x935\\xf1\\xacu.I|bY5\\xef\\x92\\x04\\x01E\\x0b\\x07c\\x0d\\x0c\\xed1\\x86\\x08\\xee\\x8d\\xa3\\xf5-\\xb0\\xf0\\x02\\x92$o_\\xdb\\x9fs\\x16\\xd3T#\\n\\x12cP\\\"/b@0\\xa3\\x95\\x17\\x85)\\x0d-\\x10\\xe0\\xcf\\x0f\\xe7>\\x06\\xfa\\xb0\\xd7\\xbbM\\xdf\\xd30\\xb3\\xd6\\x89q\\xb0&@\\x89\\n\\xef\\xfc\\xc46\\xa2(\\x9e\\x9b\\xd1\\xd3\\x8b\\xa3$9\\x8e}\\x0c\\x93d\\xa8\\xc3-\\x83\\xcc\\x0f\\xe9\\xa9o\\x81w\\x1e\\x1f\\xd70\\x8b9]``B\\xc3S?6\\xb7,\\x82\\xe5\\x98_\\x8en\\xc2 \\\"\\xf3Zd\\xc2\\xbcBL\\x96K\\xebB\\xd1\\xd0c\\x02\\x81\\xf1\\xf9\\\"\\x8aW\\xd6\\x87\\x07v:\\xc5\\xaa\\x1c\\xb6\\xe8\\xe3=M/\\xa3\\xb9\\xb5\\xcaQ\\xf4+\t|\\xee\\x7fj\\x00\\x08\\xab\\xc6\\xf9\\x03sK1Y\\xd1\\x1f\\xa3\\x18\\xa3E\\x1a\\xea\\\\R2\\xa7\\xb1\\x19\\xa9.\\xa9\\xbf\\xbc4w\\xc1\\x03\\x18\\x19\\x07y\\xe9//\\xcd\\xef\\xc6ta}\\xf8\\x8eX\\x08\\xd8e\\xba\\n\\xdeD\\x96\\x89\\xa5\\xe9\\xfa\\xf0o\\x99\\x7fm\\xac\\xe1{\\x96\\xc5\\xf4\\xcd\\x0b\\x84\\xb7[\\xef1|\\xa3\\xb1FJ\\x97\\xb1\\x9f\\x9aO \\xdf\\x0c\\xf1+z\\xf7\\x81\\xc4de\\xadaE\\xb2+?4\\x8f\\x1ec\\xa1X\\x9eZ@\\x1e\\xd8\\x88S\\x10Ek#\\x1e\\x04\\xd1\\x8d\\xf1\\xc5\\x15\t\\xfd\\x05\\xb5\\xb4\\xbc\\\"\\xf1\\xd2\\x0f\\x7f\\xb6#\\\"\\xaf\\xf4\\x9b?O\\xcd\\x08\\xb7\\\"\\xb7\\xb6g\\xef\\xd0\\x8e\\xd8\\\\\\x83\\xce}3\\xed\\xc4\\xa7?\\xc5Q\\xb6\\xb6T\\xb1\\xee\\xfb\\x95\\x85l\\xaf\\xfc\\xb0itY\\x90\\xfakF\\xfd,\\xc7\\xf1*K\\x1b\\x0e\\xec\\xd0v\\xdc\\x86\\x11\\x06\\x1c5>m\\xa4Y\\xd1\\xdaB+\\xa2u\\xea\\xaf23\\x05^\\x934\\xa5\\xb1\\x19FJ\\x18-[\\x9d\\xbb\\xe4m\\x18\\xf8\\xa1y\\x90\\xeb(ImM\\xc4\\x94\\x9fC\\xc6\\xe7\\xd1\\xc2\\xb7\\x9cBx\\xc5mG\\x94\\x98\\x92\\xf9q\\x18\\x98\\x99\\xc4\\x98\\x9d\\xb31\\x8d?D\\x81oasc\\xcbF\\x97a\\xc0,}\\\\\\xd38\\xb1U\\x88l\\xb3\\x8cn\\xcc\\x9cY\\x1c\\xddp\\xceL\\xa3\\x98c\\x9f\\x84\\x84\\xf3\\x8b\\xc8\\xbcW\\x13/\\xb2P?|j\\x1ev\\xe2\\xc5Q\\x10\\xd8X\\xe3\\x84\\x92U@\\x133\\xb3&\\xc3\\xa3YwRrIl\\x83\\xf4\\xffN\\x8d\\xf0a\\x0f\\xcd\\xd4?A\\xd0\\x99^]\\xd3 x\\xc5\\xc3\\x9d\\x9b\\xde\\x8f=\\xdb\\xb3\\xd7\\x91\\xf5\\xb1\\xf5LNb\\xcf&S$<\\x82\\x89i\\xd5Sj\\xde\\x12Izg\\xc1\\xb6$[\\xadHl\\xde\\x08)\\xb9x\\x1b\\xce\\xa9\\x19\\xa3R;#\\x95\\xfa\\xa9\\xa5\\xf7\\xd4v\\x16g\t}O\\xcc\\xf3B\\xdb\\x06\\xe3\\xd3\\x1b\\xebqv\\xb3\\xb2\\xf1 7\\xb1\\xa5[r\\x11e\\xe6\\xe92!\\xc1:)?\\xb4\\xb2\\x02\\xeb\\x98.|3\\xb0\\xa5\\xa9\\xa0\\x856%Q\\x16[\\x8e\\x1a~\\xefh\\x06j\\xe4\\x91\\x0b\\xf3\\xdc\\x99\\x9cN\\xd6~J\\x02\\xdc\\x84\\xb6jQ\\x1ccDaK\\x9d\\x13\\xbc+1T\\xf0\\xa2\\xc0\\xc2\\xa2\\xfa)]}\\x88#\\xf32\\xb1\\n'\\x9c\\xd8\\x19\\xa8\\x0c\\xaba\\xe5\\x05Y\\x05\\x8b\\x8c\\xcd\\x1e\\x7f\\xb4\\xb0\\xe11M\\xb2 \\xb5\\x10#\\xeaeVF7\\x0b\\x8bX\\x99\\xd5Hu\\xa0\\xbf\\x83\\xd2E\\xac\\xd3\\x83\\xbf\\xac\\x7f\\xea\\xf2\\xdf\\x1b\\x1e/0\\xdcD)Z\\x85.~7\\xd4\\xcb\\xe5\\x8b\\xee\\\"2]\\xbf)2\\x06\\xe6\\x16\\xdd`\\x87\\xea\\xb5&\\x0d\\xb7v\\x92\\xb5\\x98{\\xdaZ\\xef3\\x1eA\\x94K\\x8dFX\\x08B\\xd2\\xca\\xd8\\x0cT\\xa3\\x0c\\x9eXE\\xda\\xab\\x0b\\xcb\\x87\\xbay\\x96\\xf9B#7\\x1a\\xeb\\x94l\\xf9:#q\\x99}I\\x12\\x8d\\xb5\\xd7\\x04\\xa8\\xc1\\xcc\\x8b[\\x92\\xb90\\x06:\\xc0\\xd8\\xb7~\\x8aN\\xd6\\x9d\\xe2\\xe7\\xe0\\x82\\xcc\\xf1\\xfe\\x17\\xd0\\xf9\\xbat\\xcd4\\xe0\\x811\\xc5=Lqw\\xd6\\xd0\\x9dvz\\x1a\\x03\\xb2R\\x89A\\x81\\xceom\\xbeR\\x81\\xbe9\\xaa\\xfa3EZ\\x15\\xb2p\\xcdxu\\xe9\\x07\\xf3\\x98\\x86yb\\x86\\xd0\\xd9{\\xb6\\xe5\\x0e\\xe6$\\\\\\xd28\\xca\\x92\\xe0\\xee\\x83\\xb6f\\x1d\\xe9D\\x16\\xd5\\xa3hN\\x7f\\xf3\\xd3\\xcb\\xf7$\\xbeb\\xccj\\xac\\xb6\\xf5QW\\xa7\\x0dl\\xbe\\x95\\xc1K\\x1d4\\xa1\\xf3\\xf4A^g{\\xcf\\xf4\\xc1$k\\x01\\xe8\\xd1l7t\\x9e\\xbaU7;\\xc0\\xb3\\xd2\\x0e\\x93\\x96[\\x92mG\\xd5.\\x9b\\x9b\\x98\\xec\\xecv1;\\x8e\\xf8\\xb5\\xc7~u\\x7f>}\\xffN\\x9a\\xc8\\xaaV\\xc4\\xac\\xc6S\\xacQ7\\xe3\\xb2\\x92\\x02ieE\\x9c\\xb4\\x0f\\x99;\\x1d\\xce\\xcc\\x9b\\x9d\\x8a\\x1bY6I\\x99n\\x17\\x11\\n\\xcd\\x9f\\x0c\\xbb\\x88_WF\\xa5\\xfa\\x0cB\\x18\\x02\\x9f\\xf6u\\xbb\\xaf\\xb2\\xcf\\x0c\\xc9\\xd5\\x92o\\x81L5\\xf4\\x10\\xf9!\\x9eU\\x91L\\xc4&}\\xa6\\xcf\\x0f\\xa1K6\\x13++:)L\\xe7y\\\"\\x1eA\\xa1\\x9c\\xff\\x87\\xbd7mo\\x1bG\\x16\\x85\\xbf\\xcf\\xaf\\x80y\\xe7\\xa4\\xa9\\xb1\\xa4Xv\\x16G\\x89\\xdb\\xd7\\xed8\\xa7s'\\xdb\\x1b;\\xbd\\x8c\\xda\\xe3\\x03\\x93\\x90\\xc4\\x13\\x8a\\xe0p\\x91\\xed\\xee\\xe4\\xbf\\xbf\\x0f\\n\\x00\t\\x92\\x05\\x92\\xb2\\x9d\\x99\\xb9\\xe7\\xb9\\xfc`\\x8b@\\x01\\xc4Z\\xa8*\\xd4\\xe2\\xf8\\xc1\\xda\\xd1\\xf7\\xbd\\xcd\\x95\\xf7\\xf0\\xef\\xbf\\xa5\\x7fy\\xe1\\xfev\\xb5=x\\x88\\x8fB/\\xdd\\xc6\\xdaU~.\\xd6\\x14u\\xb7&\\x88&b\\xd2\\xe9\\xdf\\x8aT\\x14\\xc3W4\\xf3\\x96n\\xda~\\xf1\t\\xa8:\\x9bM\\xce\\xab\\xfa\\xe0\\xcd\\x89G\\xcd\\xb3B\\xa2t\\x83\\x03\\xb7\\xae;\t\\x17\\xdcX#\\xa3q\\x10E,\\x11\\xdbE\\xe0\\xe4\\xd9\\xe4\\x9cl\\x13F\\xb6I8\\xdbEVx\\x11\\xd2\\xd8\\x03\\xe8\\x9d\\xf3\\xe7\\xc4\\x1b\\x8d\\x9e\\x0f\\xa4f\\xe88\\xa4i\\x06\\x0b\\xb7\\xba0\\xe5\\xd2\\xae~\\x8a5\\x87t\\xae\\x15\\xc2\\xd4\\xa4\\xa7?\\xdc\\x9c\\xd1\\x05Djp\\xa4\\xbf\\xf5\\xfa\t;\\xd7\\x01\\x9be\\xb4h=[C\\xc2\\xdd\\xf9`<\\xe7\\xc9\t\\xf5\\x96nV7\\x02,z\\x11\\x93\\x03\\x19\\xf4\\x0b\\xd4O\\xdch\\xec\\x89\\xc6\\x8bm\\x9b\\x0e\\x9e\\x9b\\xfd\\x11=\\xd4\\xfa\\x8er#\\x97y\\xb8\\xc9d\\x89\\xe7\\xbf\\xde\\xc7\\xfe\\xdb\\xb7ln\\xfb\\x12T\\xedh_\\xa3Z\\xb9qKj\\xe6\\xa0\\x1a\\xbaU\\x85\\xc6\\x033\\x1c\\xf1\\x83\\x07\\xc4\\x913\\x00\\xae\\x19\\xa0\\x92-\\xd7IY\\xf6:\\xcaX\\xb2\\xa6\\xa1L\\x1fT\\xf4\\xe6M\\x9dH\\x81\\x9b\\x05i\\x0e\\x9f\\x97S\\x11\\xa4\\xf0_4X|\\xda\\xa3a\\xc8\\x98\\xaa\\x1fL=2\\xb6R\\xd5V\\x97\\x99(qH\\x1a\\x95\\x00\\x11\\x05\\xb6\\xff\\xdd\\xc6\\x1c\\xe5~\\xb5\\xf9K\\x10;\to\\xa8\\x1e\\xbb\\xad\\xaav\\xb3-\\x943\\x1cF\\xb0X\\x91\\x81\\xc9\\x8clep\t\\xc6\\x0bdD&\\xc5H\\xe8\\xe2\\xe8\\xe4\\x8c\\xe5\\xb8\\x19\\xf5\\xd4C\\xc9\\x0fZ\\xe2\\xed\\xa9u!\\xfbY\\xde\\xb2\\xc30\\xaa8\\xec\\x08V2\\xe3\\xe45\\xa9\\xc2b\\xd7Ez\\xd7\\xb9\\x99\\xd8\\xaa\\xd2\\xf7\\x04'/H\\xf6\\x9c\\xf0\\xed\\xed\\x01\\x89f\\xfc\\\\L\\xc2\\x8c#(H\\xab\\xe74\\xe7~Jf\\xec\\xfc~\\xb7\\x9d\\xe5\\xd8\\xc3\\x82\\\"\\xdd\\xf5\\x18\\x03\\x9dHDko6\\x19\\x92\\xef^H\\xfe\\xb0\\x10`\\x1f8Y\\x923\\xe7\\xfb\\xef\\x86\\xc4y\\xf1Pf~\\xef\\x9c7\\x0fFQ\\xday\\x01\\x8c\\xe5\\xf7\\x0e\\x00\\xab\\xdf\\x88\\xa7\\xef\\xd9^\t\\xfb\\\"\\xbb\\xe4\\xfe\\xcd\\xf7/\\xb2D\\x17K\\xbe\\x7f\\xf1P%Z\\xea\\xf0\\xca\\xd6\\xae\\x17\\xe4z\\x15F\\xe9\\x01p|\\xd3\\x87\\x0f\\xaf\\xae\\xae\\xc6W{c\\x9e,\\x1e\\xee\\xee\\xec\\xec<L\\xd7\\x8b\\xa2\\xf5\\xebE\\xa3\\xaa9J\\xc5;\\x7fq\\xa6\\xb2G\\x87/\\xfc`\\xadZ\\x06\\xbf\\xce\\x9b\\xc7!M\\x18U\\xe0/V4V\\xd0\\xf0\\x0b\\x81\\xf6x8%\\xb3\\xdd\\xe6\\x08\\xe8N{<\\\\$<\\xd7\\xf5\\x14\\xaf\\xb6\\xd1\\x10O\\xc8\\x16,\\xf2u#\\xe6\\x01\\x0b\\xfd\\x94e\\xaa\\x86\\xf2\\x15)\\x19\\xd3\\x84\\xaetA\\x89YT1\\xfd\\x82\\x14\\xca\\x12\\xb4\\x0bj\\x02[\\xe7\\x8e\\xc8\\xbb\\x85\\x85\\x14\\xb9#rS\\x1e\\xcbk]$\\xcb\\xa3*\\x0fa\\x93\\xf40\\xa1\\x99\\xd0$<g\\xcey\\x86\\xe7,\\x99\\xe5~;\\xf3\\x1bA\\x00e\\x81i\\xdd=e\\xb9\\xd3g\\x8e\\x17$^\\x08,\\xae\\x17\\x06\\xf1\\x07\\x9a-\\xc5o\\x9f\\xcd\\xc1u\\x03\\x0b\\xc3 N!{!\\xfe\\x04+*}=@\\x00\\x14\\xf5\\x9f&\\xff\\x99P?`\\x11h\\xe9\\xaeh\\n\\x1e bU\\x95\\xba\\x91\\x81\\x9f<\\xbcY\\xf0\\xe2\\xa7\\xaeC\\x14\\xa6\\xa1YG\\\"#S:i\\xc6\\xa5o\\x08v-5\\x80!\\xdc\\xc1yA\\xd9\\xd8\\x0f\\xb39x\\xf0!\\xde\\x90P\\xf9\\xcb\\x0c\\xc6[\\xf3r\\xd2IC\\x04\\xe2\\xb4\\xe1\\xf2\\x14\\x99\\xd7N\\x11u\\xfa\\x81\\x0b!\\xe7/\\x82\\xb3\\xa2\\x16\\x88\\xa0B\\xff9\\x7f)m\\xab\\x9d\\x17a\\x10}&\\x0f\\xbfw\\xc8\\x948/\\x1cE\\x82:\\xdf\\xbfxX\\xfev\\xca\\xae\\x04\\xe3y\\x90h\\xeaK%\\x1f\\xca.\\xa3\\x9en\\xefz\\x08\\xa0B\\x06\\x8b\\xba{+\\xf3\\x8b\\x0b\\x17zr\\xbf\\xfa\\xe8\\xc4\\x15D1\\x1f\\xcc\\x04\\\\U(\\xd9\\x87vx\\x11\\xf5a%qb\\xf3\\x0e\\xe6\\x11\\x9db\\x89\\x86\\x03\\x1a\\xcdH\\xd6#\\xe9i\\xb9D}Nr\\\\\\xba\\x91\\xaa)\\xc4\\xe3\\x0c6\\x140U\\xd8\\xd2'u\\xf6U\\x85\\x19l\\xb8\\xf2\\x89U\\xf5\\xf5t\\x19gp\\xf2\\xb8\\xdeY\\x19gp\\xefq\\x1d~\\x8d\\xaf(\\x15fp\\xa7\\xdeY\\x15fp\\xa7N\\x88\\xdc\\xa8\\xe6\\xd7\\x07S\\x85\\x19l\\xd8m\\\\H\\xa9\\xcd\\xde\\xb3\\xc1\\x10\\xc2%\\xee\\xd4U U\\xbc\\xc1\\xc6\\xf0\\x9d\\xa8\\x82\\x8f\\xa0\\xe0\\xe4q\\xa3\\xe0u)\\x0fRn\\x84\\xc4\\xff\\xdd\t\\xfc\\xdf{\\xfc\\xa4\\x0e\\x7f*\\xe1ww\\x1f\\x03\\x84h\\xd0\\xb2\\x06r,p\\xd5\\xd8g!\\xcb\\x98\\x8e9X\\x85\\xf8L\\x0e\\xc8\\x1a\\xdb\\x1eU\\xb0#r@\\xfcq\\x08U\\x9c\\xf1j\\xde{r@\\xe2q\\xdd~C\\x864\\xaf\\x1d:\\x1f\\xd0\\xed.\\xe5JM\\x8b|\\x02\\xb6x\\x82\\xd0\\x9f\\xd6cE\\xd7\\xa8\\xbe3\\x81\\x1e/.\\x96\\xd9*\\xac\\x89\\xd4\\x9b\\xee\\x02\\x08\\xe8\\x18Jt\\x82Q\\x95\\xa4\\x8a\\x80N\\x05g\\xa6\\x90\\xb0\\x0d<\\xcdc\\x88\\xa2u\\\\U\\xed\\xfb\\x99&\\x11t\\xac\\xa1q_k\\xfekr@&\\xa8\\xeb\\x90\\xffn\\x9e0\\x82\\x9d\\xea\\xe0\\xc4.T\\xa49EC+\\xd3A0%@U\\xf4\\xc1__\\x17\\x12\\x05\\x93[\\x10-\\xb4\\xd8\\xbbG\\x85\\xc8\\xdf!g\\xcb %\\x82\\xb6\\x17\\x1c+\\xb9\\xa2)\\xd1ab\\xc9\\xe5\\x0d\\xf9/qNE\\xe2\\x9c\\xfa\\xaf1r\\xb3\\xf1'\\xfb\\x9b\\xfe@Y\\nsy\\xf1\\x0e=\\x19\\xa4\\xd5\\xea\\xff\\x99\\xb1\\xf1EF\\x17\\xe7\\xd2\\xb8F\\x99{fc\\xbd,\\xf4H\\xc9T\\xcbbP\\xfc\\xa83\\xd9{\\xea\\x08\\xea@T8\\xb4\\x0f\\xfe!q\\x08\\\\\\xa0\\x0bzL\\x8d\\x84R\\xdd!|N\\xe0\\xd4\\xb6\\x94-\\x07^\\x0c\\xd7\\x18\\x8e|\\xb0O\\xecj\\xa2\\xad{\\xb2\\xe1Ov@\\xaa\\x8b\\xd8\\xcc\\xb6\\xd5w\\x06\\x1e%\\xad\\x10R\\xa4\\xfcd\\xe2\\x0c*\\x0d\\x84{\\xf6\\x8a\\x89\\xae\\xc1\\xb9\\x97\\xb9\\xa2\\xe8\\xae3\\x84e?hwi\\xf2\\xb1\\xc5\\xe3\\x86t\\xb2\\x9d\\x98\\x81\\xea\\xafP\\x0f\\xc9\\x88GDm3\\xcd\\xc6\\x17K\\x08\\xe5\\xa9\\xe2I\\xbf\\x8e\\xe6\\xbc\\xb9\\xf3\t\\xd1\\xde\\\"/`\\x95?x\\xa0\\x7f\\x96r\\x1aA\\xb3\\xbd\\x06\\xcb\\x1c\t3\\x15\\xbf:L\\x98\\x8e\\xdclH\\x02\\xf0\\x91\\xb5`2p,D<\\xfe\\xc8\\xa8\\x7f\\xe3\\x0e\\xb43-\\xf7%vw\\x00\\x8d\\x8a\\xd2lJ\\x90X\\xcf\\x04\\xb5\\xb5\\xb3\\xb8\\xd4\\x0c\\xd5\\x991E\\xfc>\\x7f\\xb5Z\\x8a\\\"\\xb3\\xf5\\xb2\\xe1\\x02i>\\x8e\\xf32\\x0e.8\\x97\\x14mV~&\\xeb-T\\xc9\\xba=\\xedK\\xe3M\\xe3c\\xabq\\xccS9\\x82?KW\\x16\\xf0\\xc5\\xf6j>5\\xaa\\xb9\\xbcM5\\xffhT\\xb3\\xe8\\xaeF\\xff\\x12\\xab\\xf1U\\xe3\\x08\\xcbx|t\\xc9\\x13\\xb8\\x9b\\x16\\xffkg^\\xc6\\xe3c\\x1aIs\\x00\\xc7\\xa3Q\\x1c\\xd2\\x1b+H\\xe1\\x0fGCf2\\xa1Y\\xe0e.\\xe7\\xe3Xy(t|\\x95\\xe0a^\\x053\\x1e\\x9f\\xac\\xe2,\\x00_\\x82L\\xfeB@\\\"/\\xb9\\x893\t\\xa4\\x7fc`\\xbe\\x02\\xf1\\xd1\\xec$\\x81\\x1bu\\x88\\xec\\xd7\\xcc~\\xc3\\xa9\\xcf|\\xe9\\xb7\\xd6\t\\xe1\\x05B~X\\x00\\xdf\\xb2\\x8c\\xfa&\\xf0J%\\xe0\\x05T\\xfc$\\x80M\\x91 G\\xe0\\xb0<O\\xc5\\x80\\xc5\\xe2?\\x92-g\\n\\x9f&\\x91\tD\\x04\\xe4\\x07\\xd1\\x02\\x01I\\xf8\\\"\\x01\\xc52'V?\\x9b@\\x1fi\\xc6\\x8a\\x99Kh\\xc6l\\xb3v\\xca\\x18\\x98_8)\\xfc\\xc0\\x01d\\x8bR\\xf9\\x0b\\x01\\xc9h(}N\\xa6\\xf2\\x17\\x02\\x92\\xa71Hz\\x9cT\\xfej\\x82\\x9c\\x05+\\xa6\\xa3%9Y\\xb0b9\\x16\\xd2(\\xe3\\xf1O<\\xccWe\\xef\\xd6\\xf0j\\xeb\\xdf\\xcf4\\xc8d\\xf3\\xaf\\xe4/\\x83\\x8e\\xc0H\\xb0\\xdf\\x1b\\xfb\\xf7z\\x9c%\\xd4\\xfb\\xdcc\\xef\\xff\\xd0([\\xfaZ\\x16\\x04\\xf7\\xeb\\x97\\xfa\\xc0\\xdc\\xab_\\xd4\\x88\\x9d\\xcf\\xc8\\x01Q\\x9f\\xa9f\\x16\\xbe\\xf2u\\xf1GN\\xe1\\xa17\\xa3\\x0b\\xec\\xa8\\x93\\x9e\\xde\\x03\\xd0\\xdd\\xb7\\x06\\xf9Q\\x873\\xee\\xae]Vo\\xba\\x02*\\xf01\\xc8M}1,\\xf1\\x0f\\xd2\\xdd\\xa8r\\xe0\\xa6\\xf6\\x08\\xc8}\\xe4\\x7f6\\xb0\\\\\\x03_&\\x8c~nf\\xc9\\x86\\xad\\x03\\x9fqk\\xb3i\\xee\\x07X.1e\\xe8Y\\xe9\\n\\xdb\\xde\\x87\\xf3!y5 \\xaf\\xea\\xf2\\x98\\x0c\\x88\\xbd\\xb6\\xc2\\xe38O\\x97.2\\x04\\xd9\\x90\\xbc\\x9ae\\xe7\\xa2\\xe3\\x16\\xba\\xb9\\xb5\\xe3Rc\\xed~g\\xe4D\\xa2\\xc9\\x02_\\xderN\\x82\\xd5\\xe2\\x9b\\xb7kH\\xbe\\xe5\\xaa\\x9a\\xf3du\\xbf]\\xf8\\xc8@C\\x8c8\\x89\\xfa\\xd1\\xd2\\x85\\xd3\\xfcr\\x15H\\xa1\\xa5\\xfeu\\xbbn\\x04\\x96\\xc0)j\\x05IWq\\xd6\\xb8^\\xec:\\xa3\t\\xa3\\xf7;\\x0e\\xafUx\\xf1\\xa1h\\x9d\\xfe\\xc9\\xec!\t\\x10\\xdc\\xf9S\\x03w\\xde\\x00\\xdd$O\\x84>\\x84\\xd3\\x8f(\\xef//90Y\\xc3%\\x15\\xa74\\x9a\\x93\\xe0\\xe9p\\x05\\x82e\\xb0\\xd5\\xa58\\xfe\\xb0\\xac\\xa5\\xa5\\xae`e\\x11\\x81\\x042\\xa6(\\x96\\xf5\\x99\\xdd,X\\x84\\xe7\\x85A\\xf4\\x19\\xcf\\x11\\xf4\\x0c\\x9e\\xa3\\xeeP\\xb0,\\xad:\\x8b\\xe5\\xc1q\\x88g]]v\\no~F\\xa7I\\xac2\\xabT(Nl-Q\\xab\\xb9\\xeb\\x9b\\xff\\x07\\xfc\\xf75\\xbf\\xbabQ\\x1edl\\x85\\x94'?\\xd6\\x84k\\xbf\\x82\\x16\\xcd\\x8c\\x8e~?\\x1a\\xfd\\xed\\\\\\xfd\\x9f^\\xfc6\\xfem\\xf4\\x9b\\x7f\\xfe\\x97??\\xac\\x82\\xff\\x15\\xb9\\xad\\xfcOH\\xab\\x9d6\\x18\\x11\\xf2gT\\x9aQhW\\xea\\xf0\\x82\\xce\\xc8\\x19\\x90\\xef\\x0f\\xc8NU\\x82\\x11\\xd8\\\"\\x95\\xfc\\x0d\\x82\\x0d \\xdf\\xfb\\xa5-\\xc6\\x9e\\xe0\\xdb\\xab\\xb8\\xa8+$\\xce\\x7f\\xca\\x1b\\xf0\\xbf\\x82\\x9f\\xd9/_\\x88\\xfb+\\x98\\x9f\\xab{\\x0eA\\xc0<V\\xb8\\xf2\\xaf\\xfa\\xee\\xa5\\xe1\\xe6\\xb5 p\\xaa2\\x123\\x1cHF\\x17\\xa4\\xe1\\x1aRgFt\\xc5\\xd2\\x98z\\xec\\xd3\\xc7\\xd7\\xa4\\x1a\\x87C\\xcb\\xa5\\xf4-C-;N\\xd8:\\xe0yz\\nb\\x8a\\x96\\xbcc\\x1e\\xdf\\xd4\\xf2\\x97<\\x05J\\x0fI\\xfe\\x00\\x1ao\\xf5\\xa6\\x94\\x94\\xe1\\x01\\xd9\\xd1\\xa9>_U\\x13\\x1a\\xa2\\x89Z5\\x15\\x1f\\x8e\\xd5,qx\\xb25\\x0b\\x15\\x06\\xad\\xe5\\xceC\\xba\\x10\\x88}\\x07Y1\\xbf\\x8c\\xfd \\x15\\\\\\x08\\xa8\\x06\\x1e\\x10\\x07\\xe4\\x12/\\xdf\\xbf-\\xbc^9C\\xf2\\xcb\\xf8mp\\x1dD\\x8d=\\xbd\\x12\\xecn\\x01\\xd8\\xdbq*2*\\x7f\\xdb\\xde\\xae\\x8fK4\\xbe\\x08\\xfcc\\xf1\\x05\\x96\\x94\\xb9\\x95A\\xceZ\\x87\\xce\\\"\\x07\\x1a\\x12\\n\\xae/\\xe6E\\x0c\\x92\\x9a\\x80.Nx\\x9c6\\x0bk\\xfa\\xbc\\x95\\\"'\\xbd\\xe8\\xd7NJ\\xa5\\x83\\xb0'=\\xe85\\x99/\\x0e\\x8cV\\x80V\\xee\\xa0\\x07\\xb9\\xdaN\\xca\\xeb\\x07]\\xc0\\xf8\\xe8\\xe9\\xa7\\xa0HZ\\x9c\\xdb\\x10\\xa2\\x9c\\xe4\\xb5\\xca\\xd3~\\x90\\xab\\xa4E-\\xddB\\x89\\x91NjL?\\xab\\xf1\\xaa.\\xf9\\x19\\x92\\xb9t\\xf3*\\xd6\\xd9J\\xb4\\xf0G\\xb1t\\xc5\\xda\\xd2\\xf9\\x83\\xce\\xa6\\xff\\xae\\x9a\\xde\tx\\x0f}\\x94\\xaa\\x0d-\\x9d\\\\ttr\\x81w\\xf2\\x0eM\\xb2\\x92\\xb9\\xfa\\xb9\\xe9h\\xd2\\xcd-\\xc7\\xfd\\x1e\\x86\\xb3\\x83\\x06' zlo\\xfd\\xe5-[\\xbf\\xf1\\xaai\\xb4\\x10\\xf1^<'\\xee;\\xa3\t\\x05!B\\x0e\\xb5\\xc7\\xd0\\xcai<\\x84\\x1b\\xeaL!\\xca\\xa9\\xc0\\xe6\\xe2$\\xd7\\xfeE#\\x0cZ\\xc2\\x0c\\x86\\xa5\\xb5\t\\xb8\\x1a\\xe5\\xd2\\x9f\\xf58]/\\xa4&!OX\\xb0\\x88\\xca;\\x8e\\x03BK7\\xcf\\xe9x\\x99\\xadB\\xa9Qw\\xa0_\\xa5Zg\\xba^(w\\xc5\\x05e!\\xfd]\\xcb\\xba\\xa7\\xc4Y\\xd1lY\\x07)+\\x16\\xb9\\xabp`\\xa3>\\xb8\\x18\\xef<e\\xc7\\xa6\\xae[\\xdb\\x0d\\\\<\\x94\\x17\\xe4\\x9d7\\x07DM\\x80\\xd9%\\xbb\\x83c\\xe9L\\\\j\\nW\\xfbbk\\x8c~D\\xa3\\x96p+\\x8c\\xe9\\xeb5)\\xf3\\xfasa;R\\x9b\\xd4e\\xfdYV\\xd5b@\\xfb\\xe5\\xc2\\xd0~\\xb9\\xd0\\xda/19 \\xcb\\x8a\\x12\\xf2\\xd2\\xd4\\x83\\xb1\\x9f\\x13R\\xfd:\\x86\\xdb\\xf3 %\\x87\\x8d^Z[>\\x84\\x12b\\x15\\xf7.b\\xc1\\x1cE\\x13j\\x15\\xbd;u9N\\n\\xb7\\xd5\\xb6\\x1e\\xc7\t\\xf3\\xa8\\xb7\\x04;\\x12\\xb59\\xe3A\\x95\\xec\\xfbr@N\\x053r,\\xe0$5\\x0c\\x9a\\xdd\\x08A\\xf5\\xe5\\x0b\\xf1*\\x96O\\xafx\\xf2\\x91\\xf3\\xcc-\\xeb\\x94\\xd2\\xda\\xd2 -`\\xa9+I\\xcd\\xb9\\xa0\\xf5-\\xedT\\xe1\\xb5s7\\xb6@\\xa8\\x9e\\xc3\\x90\\xbc\\x8e\\x82,\\xa0\\xa1\\xa6\\xdb\\x05-9\\x1f\\x92dH\\xae\\x06\\xd2\\xc7~\\xd3\\xa7\\xdf\\xd767\\x83\\xe2\\xeb'\\xe5\\xc2\\x84o\\xbc\\x8fYtF\\x17\\xd2\\xec\\xe6(\\xf2?\\x94\\xd7V)|\\xb0e\\xb1_\\xd7\\xeaR\\n\\x02\\xb2.\\xddZK?E\\xf3\\xb7\\xae\\x05J\\xf9qV\\xec\\xcasrHN\\xc4\\xf2\\x96\\x9a_'r\\xa5\\x93mr-~\\xc9\\xe5o]\\x1a\\x12\\xb8\\x07\\x02\\xdf\\x90|\\xed\\xa2x:N\\x967\\xc5\\x114\\x1f\\xd3<\\xe3\\x10FD\\x9a\\xd6\\xb5\\x96\\x0b\\xc6s\\x01i\\xf2\\x1f\\xff\\x94\\xa3\\xb8\\xa3Y\\x9f\\xfe\\x9d\\xba\\xd3J\\x15I\\x90\\xcb<\\xcbZi\\xb9\\x7f\\x83nt\\xd2\\x9b\\x1d\\x8d\\xfaG\\x7f\\xe2E\\xc9TZ\\xf5uz`\\x86\\x1e\\x1a\\x8aZ\\xb1F\\x1e`\\x1b\\x9c\\x85\\xc5\\x95F\\x02W\\x1a\\xf89\\x06:=\\xf5{\\x8c\\xa43N4xq\\x9f%-\\xa6zfH\\x89\\xc0~\\x86j\\xd0\\xf7X\\x1b\\xc0;\\xf5Gu\\n%\\x10\\x17\\xc5v \\xe8\\xa7\\xc39\\xac~\\x1c\\xd0%\\x91\\xb4\\x0cXv\\xb9\\x81\\xfa\\xab11&\\xb1\\xe1\\xee\\x1f_\\x87Z\\x11E\\x10m\\x01\\xc4\\xb3\\x97\\xd3,\\xe7\\xf7\\x15O\\xa0D\\xea\\x06j1u4\\x98\\xa8\\x11\\xcd\t\\xe6f\\x1f{\\n:\\xd9\\xa4'\\xff\\\\baXG\\x87\\xe4msDA\\xa6&>\\xe4\\xd5\\xdb\\\\\\xf3\\x03\\xe9\\x8a\\xc1\\x86@\t(tY\\xa5\\xd4>\\xc9\\xa5\\x06\\x11\\xd9> \\x0e\\xa8(\\xe5\\xed\\x13\\xde7^\\x86a\\x16\\x1e\\xf9,9\\xe3\\x82\\xcf\\x0f<\\xd9\\x0erH\\\"2\\xd5\\xa7O\\x95\\xe60\\xdb\\xd2h=\\xd0\\x1f\\xa0w\\xd4\\x02\\xf4\\xfa\\xa5\\xaa\\x18dG\\x83V\\x9f\\xee\\xd8\\xa9\\xdd\\xcf\\x9f\\xfb\\xba\\x08_\\x82\\x13\\x07\\x9c\\xb4\\xa8m5W\\x8a\\xb9\\xe7\\xf8\\xa0X(|,u\\x1ea\\x96\\x12R& K\\xb3\\x83\\xea\\x11\\x0b\\xfe\\xc3\\xac\\xd0\\xc8\\xd2\\xaab\\x82\\xde0\\x14\\xc7l\\n\\x90\\xfa\\xa1j\\xad\\x03n0#\\x84\\xeb\\x1a\\xec\\xfcJ\\x89R`\\xe0N\\xdc\\xa0\\x8d.6K\\xd06\\x9c\\x96\\xe8}/\\xe5\\x8f\\x9aP\\xa4*\\xde\\xc2\\xf8\\xbfy\\x10\\xb9\\x8es;;}R.\\xe5\\x9fM\\x1aMp\\x9e\\xbf\\xa9\\x10`\\xc9\\xd8[\\xd2\\xe4(sw\\xc4\\xde\\x85\\xe4m\\x92\\x90\\xa9\\x11\\xf7\\x82XW^\\x8d\\xbe\\xed-5\\xd5Jl\\xf7\\xbb\\xc4\\xf21\\x9c\\xa6\\xa2\\xbc@\\x10\\xff3\\x16\\x9b#\\x1dL\\x04F\\x07!44`\\xc0\\xde+\\xd0\\xda\\xc8\\xe2\\xacN\\xdb\\x17\\xa2dWv\\x9e\\x93\\x90\\xbc \\xa9\\xb6\\xa5$\\xe1\\xf6\\xf6@7Kr\\xb0\\xc9\\x90\\xa4\\xb3\\xf0\\xbc\\x8b\\x94iD\\xa7\\xf0X`\\x84\\xa7\\xd8\\x0c\\x8ba\\xb4Ish0(\\xe3vF\\xb2\\x83E\\x0b\\xdc\\x0cN\\xfef\\xd4\\x93\\xbaA_\\xb5\\xd8-\\xb6\\x00\\xc8\\xe8\\xf1e\\x14|[\\xb9~\\x17c\\xc4m\\xe2^\\xaeH\\x104\\xd3\\xb6,\\xc9\\xbdP\\xd2\\xdc&\\x9d\\xd5mB3\\xef\\xd4\\xa6N\\xd1-\\xb7\\x89gu\\x9b\\xd0\\xcc;\\xb5\\xa9\\x07\\x1f\\xc8mbW\\xdd*4\\x13!\\x99\\xed\\x0c\\xf8\\xbb\\xa2P\\x9bP\\x85+\\x02\\xba\\x01S`\\x19\\x05!\\xb6\\xca\\xb0[\\xc4\\xd7o\\xf1\\xae\\xd4\\x8e\\xaehb\\x0c\\xc95\\x1e\\x1c\\xf7\\xae\\x1c`\\x8f\\xf9\\xb8\\xc4\\x1at\\x87Ov.\\xcb\\x0e\\xa6\\xf3\\xa7~Lg\\xfd\\xe4Gfx\\x03l-cLZx\\xc6\\x04\\xf1\\x01\\xa0\\x1f\\xd0\\x99G\\x18F\\xc9\\xf2\\xa3\\xc9\\xfa\\xf8c\\xb3\\x049\\x8f\\xcc\\x8a+\\\\Y\\x1f\\xc9rjg\\xd7\\xda\\xf9(\\xe8g \\xfa\\x99\\x0eHZow e\\xff\\xc0*\\x81\\xab\\x92?\\xbe\\x0ef\\xc19\\x10\\xea\\x1d\\xec\\x9c\\x9dyl\\xbfr\\x94\\xd4\\x02\\xc2\\x05\\x93C\\x188\\x02aj\\xe56O\\x04cVa\\xf8X\\x0b\\xc3\\xe7)\\xc3.\\xd8i\\xafxR2y\\x9f\\xf5f\\x84\\n\\xddP\\x87\\xfc\\x0dX*\\xbe\\xf8\\xe5\\x0b\t\\xc7\\x8d\\x10\\x01\\xc0\\x98?x\\xd0\\xa8\\xb6\\xf8\\xaaQk\\xdb\\xfaj\\xbd\\xc6\\x98+\\xf1\\x82\\x9d\\xaa\\x8b\\xc5dT\\x98\\xf8C\\xeb\\xd8O\\xcb%\\xa8GsJ\\xd6<\\xf01\\xc3\\x0eb\\x17\\x8a\\x88n\\xcf\\x81\\x0c\\x8c+&3sS\\x8d&\\x1el\\xb2\\xc6[\\xd7\\x92\\x00\\x87\\xc04=\\x84\\x12s1\\x85\\xed\\x8boH\\xe2\\xae=E*[#\\x1e\\x90\\xad\\x18\\xd9\\x1b_\\xbe\\x909\\x8c\\x05\\x9ew\\xab}S\\xfd\\xf2|\\x80V\\xfe\\xe0\\x01\\x89E}b\\n\\xe6\\xe2\\x87e\\x97\\x8a\\xbc\\x0e\t\\x84\\xdco\\xa2(\\x12\\xd9O?\\x05\\x05\\x8fJ\\xa7\\xc4\\xd4\\x18\\xc2\\xa99\\xe0\\xdb\\xa9\\\\\\x1b\\xe5V\\xedQ{Mv3\\xb0\\xef\\xe4\\x94em\\xdb\\xb8\\xfdn\\xbc\\xf8\\xde\\x06\\x1b\\xbd\\x1b\\x05\\xfb6\\xe5\\xf3\\xfaS\\xee\\x96\\xc3jO\\x8a^\\xfa\\xaa\\x0bdj\\xc7.\\xfe\\x86\\x81X\\x9b) \\xac\\xa2f\\x03\\x94\\xc0\\xae\\x18\\xc7\\x1c;\\x91\\xad\\xe7\\xef\\xad\\xb9\\xee\\x82\\xb5e\\x15\\xd6\\x96\\xf5cm\\xef\\xce\\x1cS\\xd0\\xd2k\\xb1\\xe1\\xb3f*\\x8e\\x1e\\xaf6o\\x13(\\x80~\\xfc\\xad\\xaaM\\x0d6\\x9e\\x97l|9Zx\\xb1\\xb0\\x8b\\xfb\\xc7\\x8by\\x95\\xaf\\x19\\xe8\\xdd\\xe2=x^\\xf9\\x8c\\x01\\x8f\\xd0X:+-\\x88#\\x15\\xea*3\\xf8_M\\x92K\\xc4\\x1d\\xa93\\xda\\x13E\\xb6\\x00\\xf9\\x1a\\xc0g\\xec:S\\xc2G\\xb7b\\xf1\\x19\\x802B!\\xb7\\xb0\\x16!\\xdb$\\x18\\x18\\xc7dN\\x0e\t\\x85ry\\xad\\x9c\\xba\\x92t\\xa4\\x90\\xd7(\\x12\\xd6\\x00\\x8b\\x0e\\x84X8\\xeb\\xdafR\\xfc\\xcf;p(\\\\\\xec\\\"l\\xef(1Z\\xdd\\xa8\\x06\\xa93\\x8f\\xec\\xaa\\x84X\\xcd\\x1b\\xf2\\xec\\xffO\\x17\\xcfx\\xb4\\xce\\xaf\\x1c;\\xdc\\n\\xc0~8H\\xb3\\xf2\\xd6\\xb3\\xa3\\xe2\\xe1j\\xe79\\x89\\xc8\\x0b\\x92\\x15\\xd2\\xafh{{@\\xb2Yt\\xaet8l\\x96\\xe7\\xa4\\x0f;\\xd7\\xc6\\xcf\\xf6\\xe61\\xaf\\xc7i\\xc6\\xe3\\xb3\\x84z\\x9f\\x83h\\xd1u:v\\xb6\t\\x1c\\x16\\xb45i\\xc9\\xa8\\xdf~{\\xcb\\xfd\\x9b\\x96\\xf6&\\xae\\xf3\\xe4\\x89c\\xf2\\xfc\\x0d\\xd0\\xe6A*w{T\\x15T\\xb2\\xc1\\x90\\xac\\xc7yT\\xd5!\\x81[ny\\xa2\\x1f\\x85a\\xa9\\x17\\xa1\\xf2\\xe4g{\\xea4#:\\xcb\\x1d\\xb8\\xa5\\x1a\\xcc\\xf6\\x0e\\x18\\xa6x\\xfb:$\\xdc\\xfd\\xa5\\xf4\\xdfV\\xe83\\x0f\\xc9\\x85\\xfcQ\\xf3\\x04\\xf4\\xcb\\x9fT\\xb1;9x\\xc1b\\xb8G\\xee\\xde\\x93\\xba\\xcf\\x13\\xdc]N\\xe3\\xc2\\xbdc$\\x08\\x04\\x1cNP\\xa7808]\\x8b\\xe4[:\\xbb\\xd9{\\x82{\\xbbi\\xf8\\x95\\x0b*\\x8eX\\x9e>{\\xaa\\xfe?\\xab\\xfbIQ~Twp\\xb7\\xbc\\xfb;u\\xc75\\xca/\\xaf\\xa87o\\xf1\\x17E\\xca5E\\xeb\\xbe\\xfd\\xbe\\xd6\\xdb\\x00\\xca<\\x93j\\x9a E\\x1c/M_\\x85\\x9c\\x9ac\\x01\\xda{\\xa5k<\\xcc\\x0eCP%\\xad\\xfe\\xf2\\xe4Mv\\x15\\xf5\\xe0\\xbe\\x0b\\xe7\\xe39\\x079\\xbdS\\xd5\\x0c\\xaa\\xb8&l\\x94\\n\\xab\\xfe\\xb1Hc\\x89H.\\x1c\\x98\\xe1\\xa2\\xa1\\xfa\\x87\\x16\\xb2C\\x1b\\xc7z\\x04\\x80\\xe7\\xf3\\n\\xee_\\x8e\\x8a\\xcd\\xb4+nl\\x04\\xf4\\xae~\\x13-\\x0c\\xc7\\\"\\xd4(\\x14-Z\\x04g\\x88\\x80\\xacK\\xd1\\x02\\x9c8\\xaa\\x1b\\xc2\\xd2|g\\xd4\\xa5:\t\\xb4}\\xab~\\xc6NI&\\xd2\\xf2\\xfa>\\x15\\xac\\xe66q\\xa6\\x8e\\xba\\x1e\\x0f\\xdc\\x04\\xac\\x1b\\xb2!\\xe1\\x90\\xf3\\xbc\\xf7%\\xa8\\xf6'\\xa9\\xc9\\xe1\\xea2\\xa8m\\xa6:7\\xd6_\\x96)\\xbdp \\x0b\\x99\\x98SC7\\xd5\\x81\\xa1\\x9dS\\x93\\x17SC\\xabS\\xd32\\xe8\\xf6,-\\xce\\x0c\\\\1\\xda3z\\xde\\x1a\\xcf\\x95hi\\xd2\\x1c\\xd6?\\xd0\\xea0\\x8d%\\xa6Pi_\\xbe\\x10W\\xac\\x06o\\x00Q\\xa5\\xb9`|\\xcbN\\x0eI\\x1baRH\\x0c\\xd2\\x01\\xe13zN\\x0eH\\x0b\\x1d\\xd7C\\xf5F#%\\xe0\\x16\\x92q\\xba\\xe4I\\xb6\\xa4\\x91\\xaf\\x1btr\\x1d\\xd3(\\x0dx\\x94\\xceh\\xcb\\xda%Z8\\xd6N5\\x12R\\xf1H,\\xe5J|\\x16\\x9f[\\xf6\\xb1\\xf9H\\x9f\\xe1\\xb2\\xcfNS\\x19R?}4Y\\x0c\\xb2\\x01?\\x10\\xa5G\\xe3;\\x1e\\x88O\\x9f\\xd5]\\x96q0<\\x1c\\xad\\xd2Q\\xa7\\xe7\\xee\\xfaRW[7q\\x0b/\\xeb.\\x1f\\x12g\\x95\\x8e\\x9cA\\x1d\\xd7\\xde\\xa9\\xdd\\x0fG\\xeex\\xf0pq\\xcb\\xf6\\x95\\xadK\\x86\\xdd(\\\\\\xbb\\x02\\x1fg\\xfc\\x93\\xa0 \\x11\\x17\\xe0_\\xef\\xb5s6*EQ\\x0d\\xc98H?EA\\x16\\xb24}\\x07\\xfe\\xcb\\x06]\\xe3\\xd0\\xea\\xcaH\\x8b\\x12@\\x03\\xca\\xb9\\xe4<d\\xb4\\xe2\\xbaXf(\\x05\\xfe\\xd2\\x03Wm'h\\xcd\\x8b }G\\xdf\\xb9Y\\x0d=\\xe8\\x95!\\xaa\\x02A\\x87\\xe1D\\x99#\\xfe)\\x1f< \\\\z\\x91\\x94\\x91.\\xc8\\x14D\\xe0\\x8d\\x08\\x01D:\\x1a\\x07\\xb3\\xcc$X\\x81~V&\\xce\\x9b\\xf8\\xbaq\\xba\\xdfqR\\xf6w\\xb0Iy\\xf8\\xf7\\xbbm\\x94Ae\\xa7\\x8c`\\xab\\xdcg\\xbb\\x1f\\xba\\xb3\\xa3\\xd1\\xdf\\xce\\xefi\\xb38\\xa3?O\\x9c\\x81\\xc5\\x19\\xfe\\x1dZ\\xdb\\xafEZ^\\xf0\\xc7Wtq\\x15\\x05\\xd13\\xbf\\xd8\\xc6\\xb5\\xc5\\x16\\xc9\\xcb\\x87l\\x16\\x81\\x8bkiJ,\\xa5\\xf0\\x11\\xac\\xa6Yd\\xf7+@n\\xdba\\x83;{\\xbc\\xd3\\xb9\\x7f-S\\xf3\\x9d\\xf3\\x1d\\xd9\\x86ED\\xb6\\xc5\\xcb=7lb6L\\x93L\\xd5\\x86\\x88C8dg\\xca\\xe6\\x17\\x13esl.\\xba\\x0c\\xba\t\\xf8IU7\\xdd\\xe0\\xf6!\\x05\tA\\xe1;\\x15\\xd2\\xfe?\\xb8\\x07\\xdf\\x9a \\xfc\\xa4\\x9b\\x8c\\xd9u\\x96P/\\xd3\\xa5\\xcb\\xf6X\\x99s|\\x16\\xee%\\xf4\\xcb\\xee\\x93\\x01f\\x07\\xcf\\xd1CG\\xf3\\x0c\\x96e\\x1e\\xcdXu\\x03\\x9ecV\\xe9\\xd1\\xcc\\xf9\\x99]~\\x0e2p\\xfd\\x07\\xe4\\xc8U\\xf1\\x9eA\\xfe[\\xfe{\\x99\\xb9\\x92/2g\\x95\\x96\\x19oO\\xcb\\xf4\\xf7e2\\x87\\xd4\\xc6WkK\\x90\\x18\\x07Cs\\x9ai\\x14\\xac\\xc0\\xc5\\x17xj\\xe2\\xaes\\xa4\\x13\\x9c!)_N\\\"\\x1f\\xe3[\\x8a\\xd2A\\xc6\\xa4\\xa7\\xb0\\x96:^k\\x98\\xd6\\x9aT\\xa8?k-\\xe0\\x8c\\x0b\\xab!K\\x04\\xfdiv\\xe5\\xacH\\x115\\x94o\\xd0\\x99\\xea\\nl\\xca\\x130\\xb7\\xf3\\xe6j0]\\xdb\\x8b\\x030\\xef\\xc7\\xb0W\\x06U\\xec\\x0b\\x88\\xdap\\x15D>\\xbf\\x02$(Em$\\x18\\x9b3S\\xbe\\x0cI\\x13\\xa0\\x18\\xfcv0\\x18\\xd9\\xf2uP\\x1d\\x13\\xa4-E\\x15\\x95\\xa15\\xdez\\xfb\\xcc\\x164\\x0e\\x9d\\xb1\\xf3\\x82r\\x11/\\xcf\\x1b [\\x81\t\\x83DC\\x11'O\\xd0(j\\x88\\x98qN\\x11\\xe5\\x12#\\xa9\\xe1\\\"\\x8a\\xe4\\x95v\\x81\\x02Ct\\x8en\\xfc\\x8aKRrw\\xa4\\xb4\\x99\\xe3\\xe7\\xa6\\x0bf)\\xf9\\xda\\x9d\\xd4}\\x18\\xe7\\xb8\\xd4Q:~~\\xb4g\\x1c*\\xda\\x1d\\xf13\\x14;\\x86\\xdd\\xee\\xcd@\\x9b\\x00\\xd1\\xcb2\\x06\\xaaY\\xafg=P\\x1do\\xc9\\xbc\\xcf\\x97\\xfcZG\\xaa\\xd2a\\xe1\\xc0%<\\xaf\\xa4\\x1e\\x96\\xda!c(\\xc6|Scd\\x0c\\x91\\xda,\\xe8\\xb0\\x19M\\xc1T\\xe5\\xdb@\\xacD\\xc7\\x0b%\\x01q3\\x8bh'\\xd1`\\xc7\\xb2\\x91\\x0d\\xd2\\x9c\\x94\\xfd\\xc7|\\xd6\\x88G\\x86\\xd5\\x94B7\\xcb5+\\x84Am\\x83\\x80@\\xd1\\xad\\x00\\xf4Z\\x034\\xf2\\xbf\\xc2\\xea\\xc6\\x1b\\xa7\\xc2\\xfb\\xab\\xee\\xb5\\x7fC\\xc1\\xfe$\\xc3\\x0e\\xb6A\\xaa\\xc8\\x84z>#e6\\xc2j\\xf7T\\x81T\\xa1\\x87\\n\\xf1\\x8a<\\xdd.]UB\\x0eAC\\xdfR\\x95\\xea\\x07^Y\\xe9\\x1e\\xb3^Z\\xe74\\x87\\xae\\xf5\\xb41\\xcd\\xfe7Xw\\xd9\\xd8\\x1c\\xc9\\xe6zb=]lT\\xfb\\\\\\x8eQVl\\xa9C\\xe3\\xf7\\xb4\\xfcn\\xeb(\\x99\\x93b\\xd6\ts\\n5\\xca_Sb\\xbb\\xfd\\xafz\\xfc\\xe8\\x9a\\x8bnb\\x964n;1\\x8d\\xf0v\\xd9\\xac\\xdc\\xef\\xec\\x9ayy\\xc6\\xde\\xab\\x8f\\xbbY\\xbbm[:\\xa6)\\x8d\\xdd\\xb0\\xd3Hr](\\xb4Gt\\xd5b!\\x0f\\xd2C\\x03\\x1b*\\xdb_C_\\x13\\xa5\\xf8\\xcd\\xa782\\xc5\\xc1\\x92\\xdb\\xef\\x89\\x86p\\x87\\x11<'\\x9e\\x11\\xbe\\xef\\xf9\\x00R+I\\xfd\\xbe6\\x87b\\xff\\xc8Yrs\\n\\xba\\xb7<9\\nCW\\xde\\xdc\\xceD\\xaf\\x0f\\x04M\\xfb\\x7fN\\xdf\\xbf\\x1bKIC0\\xbf\\x91*\\x0b \\xc2\\xfe\\xee\\x1c\\xd4f\\x0eT\\xef\\xcf\\xbf\\x1bH\\x17\\x00;\\xcfIL^\\x14\\xa1\\xcf\\x9e\\x93x{\\xbbk\\x08\\x88\\x1aq\\x1f\\xb4\\xce\\xe2\\x0e\\x99%Q\\xe3\\xee\\x97:\\x19\\xfex\\xce\\x93\\x15\\xcc@\\x00?\\xfb|\\x91\\xa8\\xaf.\\xf5\\xb8\\xeb\\xf1\\x16c\\x0f\\x97\\xae\\xf5\\xd8i\\xb6g\\xa9\\x1ck=\\x03'\\xdf\\xe5\\\"[vKVq\\xd1gw\\xae=\\x07\\x0d@\\xa5\\x9f\\xaf\\xe3\\xcb \\xf2\\xd1\\xf0|\\xe2\\xf1x\\x94%\\\\z\\x93\\xf50u\\x82Vm\\xea\\n\\xe5\\xd1\\x85\\x07\\xd6V\\x07\\xfa-\\x9b_\\\"[\\x85\\x00\\x9bsS\\x1eO\\x0f\\x1e\\x90\\x00\\xd5\\x8e\\xc37\\x98\\xe0\\xa6\\x1dU-\\xdc\\xd9@\\xec[d\\xf65\\xb9h\\xad\\x06\\xc7\\x8du\\xda\\xa4Yq\\xd5\\\"\\x0c\\xc7\\xe3s\\xe2J9!\\x87;\\nm\\xf2\\x06\\xd8{\\xa0\\x7f\\x08nt\\xc7\\\"\\x96/n\\\"\\x8a\\x90n%\\xce\\xea\\xc2\\xd5 b\\xa7I*\\xef\\n]\\xf5\\xb5!\\x99\\xec\\x80\\xc4\\xa8\\xe5N\\xc6\\xe5ROKy\\x8c\\x91\\x1a[\\xba\\xb5\\x12C\\x82Ie\\xd9~\\x89d\\xf0\\x05,;Q\\x16\\xd7\\xe0x\\x1d\\xc8Y\\x0c\\xb1\\x1e\\xb5\\x90W\\xc1\\x1b\\xf8\\xbaz\\x96\\xcb\\xa6VR\\x8aO6!\\xdd\\x1a(\\n\\xa85\\xcb\\x0e\\xccs\\x1dk\\xc0q\\x99WV\\xac\\x13\\x0f\\xc8\\xd6V\\x1d\\xb2\\x95\\xb4\\xa9{A\\xfff\\xfb\\xd3\\xb65\\x9aSQ(\\x8b\\xb5.@\\xa5_%\\xbd\\xb6\\xb6i\\xe7H/\\xb0-&+]\\nB\\x10\\xe8\\xbd\\xf5\\x13\\xe0\\x11\\xbb\\x0b \\x0b:\\xf4\\xd14\\xd0(\\xe4\\x1emWIZ\\xf1([\\xb6\\xebQu}\\xed\\x8a1\\x9bv\\x1b\\x81\\x08\\xab\\xe5\\x96\\x19\\x1aoQ\\x07M\\xab\\x9f\\x96QU\\x15\\xf4\\xf9vTc\\x10\\xf5\\xd3<\\xe6\\n\\x86\\xddB\\x99)\\x13S\\xe9\\x8e@\\x02I\\xcd\\xf9a\\xd9%c\\x13\\xd5\\xd3\\xfaB\\xe1\\x9f\\xa9+h\\x16o\\x16i\\xea\\x1cRo%\\xb80\\xabqNO\\x8e?\\x9e\\x9c]\\xbc|\\x7f\\xf1\\xee\\xfd\\xd9\\xc5\\x87\\xa3\\xd3\\xd3\\x8b\\xb3\\x1f_\\x9f^\\xbc\\xffx\\xf1\\xeb\\xfbO\\x17?\\xbf~\\xf3\\xe6\\xe2\\x87\\x93\\x8bW\\xaf?\\x9e\\xbctn\\xffMCXR\\x97\\x8a\\xa8x\\xcb\\xf5hX\\x01.\\xfc\\xa0\\x04\\x8f\\x03\\x95\\x97\\xf7zp\\xfc\\x16\\x99\\x85\\xb4\\\"\\xb5\\xdf\\x83\\xd4\\xaf\\xe04\\x17?\\xd6juE\\\\:6\\xec@~\\x85\\xdc\\x82H\\xffd\\x8d\\x9b6)\\x06)O\\xd12\\xfd\\x90dd[\\x94\\x9cJs\\n\\x90Fn\\xed\\xd4\\xe5\\xec\\x83!\\xc9\\xca\\xd5Q\\x19\\xe1\\x10w\\xe7\\x89\\xb3\\xa5\\x1d\\xc6\\xc4\\x915\\x04QA+\\xd9\\xf0\\xaef\\x81,\\x96\\xdd\\x8e\\x0e\\xc7(\\x89\\x08^\\xf5\\xc9\\xc6M_\\x12\\x86.\\xb5\\xa4\\\\\\x94\\xb1_\\xbd`!\\x9b\\x91\\x0c\t \\x1eP\\xaf\\xbe\\xce\\xdc\\xfaE\\x05\\xb1\\\"\\x87`\\xd8\\xe2\\x05\\xc4\\xec\\xb9\\xc5\\x02B\\x80\\x04\\x86\\\"z\\x93Q\\xde\\x16\\xbb\\x7fJR\\xb7\\xd4\\x7f\\x1f\\xc8\\x8fnM\\x86\\xb5\\x00\\xbf\\xed\\xbaI\\x057f\\xd8\\xa3'\\x15{tkQ\\xa2\\xb9Opq0\\x0b\\xcf%\\xf7\\xd3\\x87\\xf1\\x91+\\xb2\\x9b\\xb5\\x01\\xd4\\xde\\neQ\\xdc(\\xcd\\x82d\\xebd\\xd3n/\\x17\\x91\\xebE0%y\\xc7\\\"\\xf8\\xb6D\\x8f\\x9d\\xe30\\x08\\xc9\\xc0B\\xffT\\x1c\\xb8\\xb9\\x0e\\xc0;C]\\xb2\\x95v\\xbb\\xa584\\xb1\\xc8/\\xcb\\xe1l\\x13\\xf9\\x95a\\xdbZ\\xa4\\x90\\x08UW\\xca|\\xab\\\"9\\xfdUub\\x16\\xafvH\\x0b\\xff\\x05>\\x1f\\xcd\\xbdg\\x17\\xe0\\xaaoy\\xa5\\xabi^\\xb9\\x96#}\\x0ei\\xa9rw\\xd7\\x03s\\xa3\\xdb\\x85\\xe6-\\x02\\xc5\\x0f\\xd2|\\xd3[\\x84\\xb4\\xd7-B\\xd8q\\x8b\\xa0\\x7f\\xe1\\xc7\\xd5\\x86\\xcbU\\x0b,J\\xfe\\xc7n\\xf5\\x94\\xb8\\xce\\xb3\\x89\\x03\\x11\\xf4\\xffh\\x93\\x82+y\\xf5\\xfd\\x08\\xbf\\xcb\\x9d\\xe0\\xa8\\xc8q\\x1b\\n\\xbd\\xff]\\xe4\\xd4A\\xf7\\xfd\\x88\\xe5\\xc475\\xa3Z)\\x06\\xda\\x10\\x87\\xdb\\xc5\\xb8!9\\xe8t S\\xb1\\x8cr+\\xba\\xb6b-\\xec\\x8a\\xb5P=qC)N\\x08\\xd51J^\\x1c\\x90\\x89\\x96\\xcf\\xed9\\xca\\xf7K8\\xdb9\\x1fH\\xe7\\xb60\\xa7\\xa1\\xc1\\x95KE^\\xaa\\xb9\\x06\\x10\\xde4\\xe7\\xa7\\x91\\xd2\\xf70\\xab\\x8a\\xe3\\xa5\\x9c\\xe2\\xff2\\xb9{\\xb0\\xa9\\xdc]m\\xf1\\\\JF\\xd3\\xc2ic\\x87\\x90\\xb2c\\xd4\\xff%\\xe2G\\xba\\x91\\xe4/\\xa9\\xef\\xba.\\x92\\xb4\\x83\\x18\\x97\\xf4\\x14>\\xd0\\xd2F1*)\\x11\\xb7\\xe4\\xafyE\\xea\\xd4\\x90[Eu\\xb9\\x15\\\"}k\\xaex\\xbb\\xc8\\xacYaM\\x06\\xd66\\x8f\\xb7%\\xda6\\x9b\\x19)J\\xceJ\\x0bN\\x84\\x92Q\\x17\\xdcvt\\x0f}\\xcdJ)\\xc6\\x86\\xec\\xff\\xb7\\xa4,vw1{&W\\xc0\\xef\\xca \\xc7\\xd2\\x96\\xe7\\xd1\\x13\\x19[y\\xdfb\\xc9\\xd3\\xa8>\\xaf\\x84V\\xde\\x9f<\\x19\\xd4\\x88\\x0f\\x0b\\xdbn\\x0f\\xa9\\\"\\xd5V\\xc5\\x00\\x02[=;\\x1f\\xc8\\x00_\\x82q4u\\x06\\x9a\\xd5\\x86h\\xb5\\\\\\xeb\\xc5\\xd5\\x02\\x99K`\\xa3B\\xfdK\\x0c\\xa6\\xd7@\\xd8`\\x816E\\x16\\xdcE\\xc2<\\x1eyA\\xc8\\x12\\xb9\\xcc\\xb2\\xc0\\xb0\\xd5\\xed\\xc7\\xa0\\x13\\xc3\\xa0i\\x1c4k)\\xca6\\xf7as=\\x1b\\x0d\\xfaT\\xb1\\x1bF\\xad\\xe9\\x87\\x84\\x0f\\xed\\x8c\\\"\\xc8\\xfa\\xb5\\x83\\xb4\\xb6f\\xa7\\xe08:\\x1b\\xc2\\xd9I\\xeb\\x06\\xcbl(j)>'5H\\xe5\\x99\\xd3\\x8c\\xf4*xvQK\\xda\\xa7\\xb3\\x15K\\xc9\\xfe\\x83\\xbd\\xae\\xb8Wk\\x9d\\xc1\\xa2*\\xbc\\xff\\xba\\x86F\\x18\\x1b\\x0b^\\xd6\\xb8{\\xd6\\xe2\\x88\\x85\\xda\\x87\\xbb\\x90\\x11\\xe4$\\x88\\xda\\xdc6\\x88\\x83$\\xa9\\xabV\\xe5\\xbd\\xdcO\\x88\\xb9LfyK\\x03\\xf5\\xd3\\xb2.\\xf4\\xd3\\x91\\xad7[0\\xae\\x9a\\x96\\x03Y\\xd0\\xb9R\\\"\\xb1R\\xda?\\x90\\x8e/\\xa0\\xe6\\xd7\\x91\\xcf\\xae\\xc5\\xb9\\xb0\\xbd=\\x148A\\xa0\\x14\\xcf>|\\xb8,Cs\\x92}Vf\\xc3)@\\xd7\\xc9E\\xf4\\xe95\\x94\\xc7\\x11\\xba\\xb0:V\\x05\\x17\\xab\\x826,\\x88#\\x90\\xa0\\xc2~\\x88\\xeak\\x82\\x17\\xd1\\xb4'\\xfb6;+\\xad\\xf4=s\\x95[A\\xfb\\\"\\x92\\xeaP\\xce\\xd9\\xc9/g\\x17\\xc7\\xef\\xdf\\x9d\\x9d\\xbc;\\xb38b%\\xea\\x8a\\x19\\x86\\xc6\\x12\\x05Y<s8\\xc0}v\\xdd\\xe5\\x95r\\xaen\\xea\\xbb\\xe02\\xde\\xab::\\xcfXR\\xd6\\x87\\xc2}\\x1d`\\xee m\\x8b\\xa1\\xe9\\xc6\\xf6\\x7f\\xfc:8=9\\xbbx{\\xf4\\xf1\\xaf\\x9f>\\xfc\\xbfU@\\xf2\\x8e\\xe3\\xd8\\xb6\\x1a2\\xc3\\xb7\\xe0\\xedH\\x82\\xdb~\\xb9~NV\\x17\\xa1}\\xd48\\xa2\\xa8m>\\xb4\\xe3\\x04\\xcc\\x91\\xb3\\xb9J\\xcc\\xb8\\xd2\\x83)\\x95\\x04\\x85\\xfd|\\x16\\xe7 \\\\\\xbd\\xb4:\\xbf\\x83chX\\xb8\\x9ci?\\xf9@\\xb1\\xa9\\x1d\\xc4\\xef\\x06Yv\\x83\\xac\\xad7\\x17\\xfa\\x81\\x0d\\xefIU\\xe9\\xd6\\xaa`\\x18\\xea[\\xde\\xeb$\\x07\\x88\\x1a\\x9b\\x15Q\\xb7\\x9b\\xc9\\xcc\\xebA\\x17\\x88g!(\\xc2\\x99\\xd7C}K\\xaaj-\\xc8!q\\xe7 \\xcd\\x9d\\xab#\\xbf\\x0c\\x1e\\xb3\\x1a\\x92\\xf5\\x10\\\"\\xf1\\x0c\\x062\\x1c\\xcf[\\x9a-\\xc7+z\\xed\\xae\\xcc\\x03^\\x00\\x0c\\xc9\\xaav\\xe6\\xc7\\xe0\\x8bo\\x05\\x8cE{Y\\x15\\xd2\\xa9l\\xc2E\\x89@\\x8f$\\x98\\xbb\\x18\\x12:[\\x9e\\xeb\\x16e\\xca\\x16j\\xb9\\xbd=\\x18\\x92X\\x90\\x17k\\xcd\\xe7k\\x0f<.\\xe2\\xfc\\xc3|\\xec\\xfa[\\xe5\\x04\\xf3A\\xd3\\x18\\xd0\\x93\\xd2\\xadZ\\x93M\\xac\\xef\\xc2\\x84\\x11>\\xf3\\xce\\x07mn\\xf3\\xc1\\xff\\x91F\\xef\\xf3\\xd2\\x7fH\\x93\\xaem^\\xba\\x10\\xb4\\x07\\x18\\xfe\\x8b\\xac\\xe4z\\xebA\\xb8\\xe1)\\xd8<\\xf72\\xd3G\\xab%\\xe4d\\x9f\\x0e\\x14\\x0b\\xb2\\xb7c2R\\xb8)0\\x97\\xe4\\x0b\\x01\\\\\\xb7\\xcc\\xeb@\\xc5\\xa4\\xa4?\\xdb\\xf7\\xac:y\\xdf\\xbe\\xff\\xe9\\xe4\\xe2\\xe4\\x97\\xd7\\xa7g\\xaf\\xdf\\xfdg\\xcb\\xe1K\\xcc\\x03\\xb8\\x1b\\xf9\\x19\\xe7p\\xa5O\\xdd\\xa5\\xe4!Z\\xdd\\x176y\\x8c~\\xcaC\\xba\\x1d\\xce8\\xa53+\\xa0\\xe5~r\\xa3\\x93T\\x85%\\xc0\\xd7@\\x07k\\xdf\\x17\\x9cl8\\xd3\\xaf\\xdf\\x9d\\x9e|\\xecAf\\x11s\\xa6[$\\xf1d\\x13r\\x8bl@r\\x91\\x7f\\xd6\\x8cF0\\xc0\\x95\\xf5\\xd9kv\\x8dxe=.R\\x88ej\\xefk^?\\x9e\\xc0\\x1e~\\xf7\\xfe\\xe5I\\xdfY\\xed\\x1e\\xff\\xbb\\xee\\xdf\\x16\\x12\\x9d\\xf4\\xa7\\xaaIO\\xca\\x9atl\\xdb^\\xb3\\xda<\\xc3o!\t+,\\xbe\\xab\\xa4E\\xa2N\\x15\\x03/\\x88*\\xa3\\xdem3\\x8f\\xaa\\x9ekN_\\xe0\\xc1\\x87\\xcd\\x10{\\x0c\\xbf\\x83'\\xf6\\xe6G\\xd2\\x15b\\xb3\\xa5\\x7f\\xc2\\xdf,\\xa2k\\x0fRo%\\xba.\\xdd<\\xa1\\xb6\\xbe\\xca\\xbd@\\xdd\\x0f\\x071<u\\xd5o\\xc1I)\\xdd\\xde\\xdd\\xdd\\x03\\xb9\\xf4\\xee\\xeen]\\xa0M\\x0c\\xc5\\xb3\\xfd\\xda\\xa0\\xd5\\xae\\xcb\\x89)d\\xce;\\x0e\\xfc\\xb5\\xb2\\xdd0\\xbc0\\xb1\\x86\\xd1\\\"1\\xefK@MD\\n\\xbd\\xa5\\x9d=\\x17\\xf4JSI\\xac:6\\xb2\\xfa\\xad\\x03U\\xc1{pJ\\x88\\xa8x\\x08\\xecqq\\xf2\\xee\\xa7)q\\xe2\\x84\\xfb9\\xf4\\x02A'?\\x9f\\xfc\\xf0\\xe1\\xe8\\xf8\\xaf\\x17\\xaf\\xdf\\xbdy\\xfd\\xee\\xe4\\xe2\\xf4\\xec\\xd77'\\xa7S\\xb25\\xa96\\xa26RZ\\\\\\xd8\\xfc.\\\"\\xc5\\xde\\x98h\\xd2wTl`\\xaa\\x05\\xb4\\xcbU\\xeb\\x86\\xe1\\xfa\\xd1\\xe2u\\xf1\\xe9\\\\\\x06\\n\\xd8@\\x8c\\xd7\\xd6\\x05\\n\\x15\\xa6\\x10\\xad\\xda\\x03_\\xbb\\xf6\\x1e\\x81O\\x8f\\xce\\x1bY\\xc1\\xe7t\\xf0|q\\x8b\\xef%\\xfd\\xa0\\xd6\\xb5qo\\x9eO0\\xa8\\xc0.\\xc1\\xc5\\x16\\x9b\\xc5\\xe7\\xc0m\\xf8\\xf5;\\xd2~\\xec\\xe0\\x1a\\xacw\\xfbZ\\xf3\\xe8\\xcd\\x01\\xfaA\\x81\\xbb\\x1c\\x92\\xf5`@\\x92q=\\x98\\x8a\\xeb\\x03\\x1b\\x96\\x0f\\xc1\\x17S&\\xfd\\x10\\xb5\\x8c\\x9d~z\\xf8U\\xd2\\x8fTQ\\xa2\\xb2\\xea\\xa4B\\xbd\\xfa\\xe0v\\xa1\\xee\\x15U\\xb4ik\\xd2'F\\x191\\xb8k\\xee\\xaea\\xd3\\xf7+\\xa5z\\xba\\xea\\x07-\\xbe\\xb1\\x80\\xd6\\xd7Z\\xba\\xaa/\\xdd~\\xf5ER|\\xde\\xc1\\xd4\\x92V\\xc6\\xb6=\\xb7\\\\\\xe3l@\\xb6\\x1a>\\xdeb\\xb02\\x01\\xc4\\x87,pi\\xae\\x0f\\xde\\xda\\xe2s\\xc1\\xaco<uh\\xbb\\xee\\xca\\xe2\\xb6\\x9c\\xe8UCy\\x8b\\xb7;B,\\x1e\\xef\\xa2\\xce-\\xad\\x91#~\\x12\\x99\\x0f2&\\x1c\\xa5e\\xf4\\x83\\x8cJ%\\xa5\\x86\\x8eM\\xaa\\xa1\\xbc\\xe0\\xfb:P\\xaee\\xc4a\\xfd\\xf8\\xb1\\x9a\\x80[\\xd1\\x13\\x9dW\\xe1\\x16%\\xbb\\x86\\xb2:\\xb5\\\\\\x9c+%\\xbb\\xbaO\\xccT\\xa9\\xea\\xd5\\x1d\\x01\\x84\\xaa-\\xf5t\\xaf\\xe2Cs\\xef\\xc9\\xe3:\\x812\\xc7)\\x9fX\\xd6\\xd7\\xf0\\xc9\\xe9\\xcb\\xfa\\xf6\\x15\\xbd3\\xa9W\\xb7T\\xdd\\xa9\\xb7c]*\\xd9\\xd7{*\\xd0R\\xcdq\\xa6\\xc0\\\"\\xbb\\xd8\\x95>8\\xa6\\xfa\\x03\\xbb\\x95\\xbfDW~\\xa9@Z.\\x97\\x9b\\xd2\\xf9\\xab\\x8aNh\\xfa\\xae\\xc0\\xa8CF\\x0eH(\\xf6\\xb5\\xd4I\\xc4\\xc3B7\\x16(\\xdc]H\\xa7\\xd4R\\xbdG\\x91\\xf0R\\xb9\\xbc\\x123\\xab\\x1ek@Q\\x11\\xaaO\\x15\\xad\\xfd\\xea\\x12\\xbch\\x8e\\xdd\\x15J'y<J\\xb3$\\xf7z]\\x0fbjZF\\x9c/\\x8b\\xbb_Ol\\xe54\\xc8\\xd8\\xd9M\\xcc\\n\\xa2_\\xe6\\x05J3\\xa6\\x96l\\x84~lfT.ak\\xf9r\\xd8~\\xa0\\x99\\xb7\\x94\\xfe\\xd7j\\xf91\\x8b\\xfc Z\\x94mG2A\\xb3\\x06\\x1c\\x18\\xe1\\xf9\\x1f\\xa5\\xcf-\\xadX\\xb75\\xa9\\xe5\\xbf\\xe2\\x89\\xc7\\xe4mA%[\\x0b\\xfe\\xc4\\x08!CQ\\xc8\\x055\\xe6\\xab\\xe5\\xab\\xf5QK\\x05d\\xf9>\\x91\\x8b\\xb5\\x18\\xf2Ly}RJKx?\\x8ei\\x18^R\\xefsZ\\xff\\x10\\x0dC\\xa3\\x19?\\x07a\\xf8I\\\"e\\xe8NceX\\xd5\\\"\\xda\\\"\\xb7Y-\\xd1\\xeb\\x9d\\xe5hO/\\xb6\\xb7\\xd1\\xb5\\x92\\xb5.\\x14;\\xe9N\\x87\\xc6\\x9dO\\x7f\\x1d<\\xa20\\xaf\\x1aW\\xa5\\xe8SX\\x89\\xd8\\x0by\\xb6\\x8f\\xe1(C?sP\\x12\\\\\\xb0L./\\xe9e\\xab\\xe53~\\xab\\xf7\\x9d\\xfa\\xa3\\xb0\\xcb\\x96\\xbb\\xc5JT\\x08\\xd6\\xc7\\xc6\\xfb8H!\\xf0U1\\xbb-g\\xb3\\xeb\\xb5\\xb4mY\\x0e\\x81\\xc6A\\x15BHR\\x866\\x9a\\xd07#2,\\x89a\\xb2\\xba\\xd4\\xc8\\xfb\\xb0\\x97/3\\xb2A\\xc7?\\xe4\t\\xeb\\xd3y\\xd1\\xf1\\\"xQ\\x1d\\xfd\\xad\\x8b\\xa8>\\xf5\\x9c\\x15\\x99JU\\xdf\\xe5\\x90\\\\\\xba\\xa5\\x92\\xe4\\x81\\xb4\\xe9\\xdf\\x9a\\x94\\xbf\\x83q\\x90\\xfeD\\xc3\\xc0\\xd7\\xbe\\xa4\\x96\\x03\\xa5V<\\xd9y\\xec\\x0c\\x897\\xf6\\x834\\x0e\\xe9\\xcd;\\xba\\x82\\x9ex\\xd2*\\xf0\\xcb\\x17\\xe2\\x14\\x8dw\\x06Cy.\\xb3+r\\xe3z\\x03\\x1b\\xc2^\\x088\\xb9\\x0d\\xc8\\x81\\x98\\x97\\xe5\\xb8\\xdc\\x9f\\xe9\\x10F|\\x0e&\\xd9\\xe2\\xb7:\\xb9\\xc4\\xcaC\\xb0\\xfcrH\\xc2q\\xca2\\xc1Sev\\xb7\\x17bO^\\x0d!\\\"\\xffr\\x9c\\nL\\xdb\\xcaV\\x1b\\xd2\\x8e\\x13\\xe0\\x97T!r\\x00U\\x88q\\x1c\\x0c\\x89\\xabc'\\x80\\xdcC\\xda\\xc8\\x9d\\x88!\\xa9\\xeal\\x9f\\x0c\\nU\\x84\\x9d\\xc2\\x83\\xfe\\x82eb(]\\x18f\\xa7\\\\\\x04b\\x98*\\x03\\xfa\\x8d\\x8f\\x92+\\x18\\x91\\\\\\x0c\\xe8e\\xc8.\\xa4\\x93\\xbf\\x93$\\xe1E\\xb4\\xac\\x98%s\\x9e\\xacT\\x00Y\\xa9\\xbb\\x1adK\\x80\\xf9Q\\x80\\x07\\xd1\\xc2\\xa5\\x1a\\x0f3@\\xc5Sk\\xd1\\x1a\\xa4\\x9c{\\xd5\\xdd\\x97\\x81\\x0f0\\xa4;6<RjH\\x96\\x83!\\xb9\\xeas\\x9c \\x18b#a\\x8eV\\xed\\xb4`\\x1b1<<\\xcf\\xde_E,1k\\xbbe\\xd3\\xcc\\xea6j\\xa6f\\x93\\xac\\x07C\\xbbl\\x95\\x1c\\xc2N\\x06\\xf1\\x9d\\x8e.S\\xbe\\xf4\\xe9L\\x9f\\xa5c\\x93]\\xb7u*\\x90\\xc6\\x0d\\x89\\xf40\\x10\\xf3 \\xcal\\x01=pW\\xf5\\xfa)\\xa2\\xb6b+\\xb5\\xda\\x1c\\x1c1k\\xd7\\xf6y\\xebq0N\\xb8$\\x8d\\\\:\\xa8\\xe30t\\xef\\xb9y\\xcb\\xce\\x07\\xb5\\xecj\\x1d\\x1a9U\\xe8\\x86\\x0fF\\xc9z\\x01\\x93Q(S\\x15\\x16\\x1e\\x0c\\xb0\\xf1\\xb5\\xd2\\x95M\\x16{k\\x07\\xc4\\x11\\x95^\\xdfy\\xa8\\xdb\\xd6jp\\xcb\\xd5x\\xab\\xc5W\\x8c\\xb3\\x1e7;M\\xd2\\xa2\\xf9\\x1a\\x94\\x18LP\\xc4\\x05\\xe2s\\xb1\\x0c\\xb7c9\\x04=V@\\xa0'=(\\xe7y0\\xac\\x08\\xf6\\x0bUus\\xa6\\x81,\\xa0\\x991\\xe1\\xaeM\\x18\\xb8V.\\xef=\\x81\\xbc\\xc5a\\x8fz\\xc6 \\x0d5c\\x83\\x83A\\x82a\\x11C0o\\x0e<\\x08\\xe3\\xab\\xe4\\x13H\\xc3\\xe1\\x16\\xc1\\x1b\\x9f\\xbc\\xfdp\\xf6k\\xfb\\xf5\\x91eAK*d\\x8e\\xa8\\xf0&z\\x91T\t\\xf4e\\x10\\xfa\\x06\\x95\\x8eE\\xf1F\\xd6c\\xff\\x90V\\xc4\\xb8\\x99\\xad\\x88\\xfd,\\x1d\\xe8\\xf5\\xf9M\\xa3_\\x11-\\x82\\xb7|\\xb3\\xe3\\x12 kl\\x1b\\xbb\\xe4NJ\\xfa=\\x8cc|\\xf0\\x80lem<e\\x9f;\\x84\\x0e\\x96tg\\xd8~\\xa7\\xa1\\x9f\\xca\\xc5eI\\xd0m\\x13\\x07m\\xbb;\\xe8\\x08(@@\\xbf;\\x88\\xd6\\xfc3\\xfb\\xcf\\x9c&>\\xf35O\\x0d*\\x00h\\xad\\xd2\\x9c,k\t)JHa\\xb5\\x8eW\\xd1\\x16\\x0c\\xcb\\xb6E@O\\xab\\x89\\xf9-\\xe0\\x98\\xbe\\xd2-\\xc5\\x165\t\\xcf\\xb7\\xa7\\x90+\\xd96\\x19G\\xab\\x1c\\x08\\x97\\xb4\\xe0\\xc2-\\x9b\\xa4%\\xd4\\x81\\xcbl,b\\x9f-\\x7f\\xb1\\xa2\\xe9g\\x85\\xa8\\xfal\\xf7u\\x9b9%\\xf0\\xb0\\xaakb\\x1e-a?\\xc0\\xdfn\\x19J \\xb6\\xe3w\\xcc\\x0f\\xb6~\\xaa\\xf1s\\xb2\\x01\\x89f\\xc9yk\\x00\\x1b\\xab\\xa78l\\\\\\xaa\\x92\\x96\\xcd\\x87\\xc6\\x18W\\xeb\\x91\\xa7\\xcf\\x9c\\x8d\\x1ad\\x9c,\\xbd[e\\xea\\xd9o$\\x0djR6\\xf6)\\x0d\\xa4\\x9b\\xd9\\xb2yDGgh\\xe4\\xc8@\\x0dm\\x08\\xb5\\x1a\\x82\\x07\\xe1\\xaa\\x95\\x97\\x83cc\\xb5\\x15,\\xf5\\xd3\\xcdY\\xea\\x81\\xfc\\x10V\\xab\\x16z\\xecoV\\xab8\\xf3\\xedH\\xb4t\\xb9\\xfb\\x15\\xf8\\xde\\xde{\\x98\\x18\\xecX\\xafu\\x03\\x04\\xbb\\xd9\\xa1\\xfeZ}\\x98\\x0f\\x8cFR\\xfd\\xc2\\xba\\x7f\\xf5\\xeb\\x8a\\xea}\\xdf+wn\\n\\xf5D\\xa7\\xda\\xc8\\xc96$\\xac\\xf4\\x1e\\xca\\x83\\n\\x889\\x06JR\\xfdT%\\x15\\xfb \\xcf\\x86\\xd7\\xf3wLlP\\x9a\\xdc\\xf4\\xd9\\x97\\x85r\\x0c\\xd6\\xceC2o*\\x02d\\x86\\xa5X\\x15~X\\xde\\x8fh:\\xbetF}`=\\x0d\\xbf|\\xb1\\x1ft\\x87\\xf8\\x18\\x95\\xdf\\xa9\\xceV{j\\xe5\\xda\\xc9l\\xa2L\\xb0\\xdd\\xa8\\xf4\\x99\\x82Z\\x03\\xd1{\\x80\\x0e\\xebO\\xda\\x13\\xc7E\\xa6\\xbf\\x04\\x81\\x11\\xf66\\x15\\xdd\\xb5\\xb0HC\\xe0e\\xb6&m\\x8b\\xb9 \\x1a\\x0ed\\x90\\xde\\x1c\\x8c\\xc0u\\xeaT\\xba\\xdeR3Z\\xbd'\\x08\\x06\\xaa~\\x9b\\xf6\\xc5Z96\\xe9\\xbc\\x8a\\x80\\x10\\xc76\\xef@\\x04\\xae\\x1e\\xc1*\\x1fp\\xbf\\xfa\\xe4P\\xba\\xc0\\xa4UJ\\xf3\\xa3\\\\\\xdf\\xe05\\xa5#\\xdb\\xf5\\xec1\\xcd\\xd6:\\xf0\\xbf\\xd9\\xef\\n\\x97\\x0b\\x85\\xed=\\x8a[\\xbcCY\\xb7\\x07\\xc4G\\x1b\\xa7K\\x9e\\x87%YZl\\x9d\\x18&\\x06\\xcd\\x15\\xad\\x99\\x0fe\\x14d=\\xab\\x15Q\\xf8\\xc1\\x01\\x91f\\x1c\\xd0.\\xdf\\x0d\\x87\\xc4\\x83e\\xb5\\xe5\\x8b/\\x8a\\x1e\\x0d\\xc9\\x1c\\xf8\\xf4\\xf6\\xdd3$19\\xd4\\xbcY')\\x0b\\x88\\xac\\xde\\xd6H\\xea\\xcc\\xc0E\t\\x13\\xbb\\x08\\xacL\\xb0\\xad.\\xbe\\xd9\\xa4m\\x83!\\xa1\\x85P\\xdf\\x13/Z&1\\x1f\\x1a+\\xf7\\x003\\xedi!\\x81\\xcc\\xd9\\xed\\xa9~R\\xe1\\xcbzHi\\xcac\\xa9\\x816\\xfb\\x10K\\x08ga\\xa7\\x9b\\xacE0n\\x03af\\xb6JK\\x8b\\xa8\\xed\\\"C:z{\\xf0\\x80L\\x94#]\\xe90\\xa6(\\x9c\\xccv,\\x84\\xb3A\\x8c\\x1d(\\x92E\\xe0\\x1fQ@\\x9c3\\xf2\\xa3\\xca%\\x9c\\xc8\\x98\\x90)\\xd9yN\\xf2\\x8aw\\xb7\\xbc\\xdd/\\xf6\\xda0\\xcb\\xb6\\x93M\\xdc\\xa5C\\xe2\\xe8)7=\\x11\\xa6\\xe4\\x90\\xa4R\\xc7Fj,\\xca\\xe50%\\xe9-(+\\xc4\\xff\\x0d\\xb6\\x1c\\xd1]s\\x0b\\xcdk}=<\\xd4\\x9e\\x08\\xfa.S\\x81\\x8d\\x7f\\x90!\\xdb\\xdc\\xb0r\\xff!\\xdbb\\xc1\\x99\\x1e\\xd1\\x1e\\x7fB-\\x01\\xcc\\xe1E\\xa1\\x17\\xf0\\xd5Q\\x88\\x04\\x87$\\xac\\xc9\\x08$\\x02\\x01\\xbfYHFq\\x1f\\x80S\\x05\\xa66G\\x05U\\x84\\x05\\xaa\\xc8\\x86\\xba-\\x12\\xaf\\x84\\x06\\xaaH\\xaax\\xefc]6\\xe0\\xc2@\\x0fe\\x1fy\\xfb\\x95\\x116dRx\\x12\\x16J\\xaf\\xa2\\xfb\\xfd\\xb0\\x93\\xa5A\\xb7\\xc2PMqI+\\xaa\\x8anC>\\xdbe\\xb9\\xed(\\xce&\\xbd\\x9e\\x13w\\xe9\\x82\\xa8|\\x80\\x91\\xaf\\x92\\x12cm\\x82\\xd2\\xcc&E\\xeePf\\xd5\\xa8\\xa9*\t\\xb5\\xd9\\xcb\\x8a\\x07\\x91SEC\\xdc\\x05\\xba~\\x9a\\x92l\\xcc\\xdd\\xb6~\\xaa\\xd3\\xd8-\\xcd&\\x1bH\\xb4y?\\x896i\\x91\\xd5\\xb5\\x86d\\xd5\\xc4 &\\xee.\\xe6\\xaf\\xd4\\x891Sj\\xde+\\xda\\xa6Zl\\xd3\\xee\\x86\\xc3i(\\x86\\xef\\xe7 [J\\xef\\x02\\xe2\\x08\\x08Q\\x16\\x8d\\xf4\\x96z\\xa1\\x15\\xf7\\xe7\\\\\\xe9\\x18o\\x19\\xdb\\xc0\\xce\\xce\\xba\\xff\\xcc\\xcb\\xdd\\xf7IS\\xd4\\xd3\\x86AXO^\\xa60\\x96\\x91\\x8dp\\xef\\xd6\\xe2\\xbe\\x8d\\xeb\\xa2\\x81\\xaa\\xa4\\xb0X\\xe1\\x8b6\\x92!\\x1f+\\xa4\\xa7:\\xdd\\xb2\\x9aZ\\xaf|\\xc5\\xd3}\\xc5\\x85N\\x0b2p\\xfa\\xf9J\\xe6AD\\xc3\\xb0\\xeb\\xcbf/P\\xaeW?\\xad\\xcego\\xdd\\xfevQ\\xa9\\xd6\\x0eb\\x86v\\x10C\\xb5\\x83X\\xa9\\x1d\\xf4lC\\xb6x\\xd8O\\x92E\\xb3\\x8cz\\xcb\\x8fl~\\x9b\\x13u\\xc1\\xb2\\x0f\\xf9e\\x18x\\x85\\xa34K\\xcf5\\x97\\x1fi.\\x7f\\xb2\\xd3\\xc6\\xb8\\xcb\\xa09\\xbdkw#\\xa5\\xc8tp\\x00\\xec\\x99~%\\x7f|\\x05JZ\\xbc\\x0dd \\xb8^\\xb6;>C\\xc6\\xc46 *\\xa8\\x9em<\\xe0\\xe33v\\xde\\xe7\\xbbjf\\xfbn\\xfc\\xdb\t\\x9f\\x9b\\xf7\\x83`\\x0eQI\\x19\\x17\\xca1\\xdc\\xe2\\x8e\\xaa@u5u5e[QKe\\x85\\x12\\x9b\\xca\\xd7\\xaf}\\x05R\\x8d\\x81\\xddx\\x8czan\\x0caj\\x1f\\x13\\xb0\\x84\\xa7\\xfd6\\x95\\x9d\\xcc@lV-\\xb6\\x91R\\xc1\\xeaN\\xb6\\x0c\\x13\\xbcf\\xeb\\xc8i\\x96u{\\xbbH\\xfez\\xf7V\\xa0\\x8c\\xe5\\xe9\\xcd\\xea\\x92\\x83;V\\xf9k,\\xb8\\xe1\\xca\\x9b\\xeb$b\\xe4\\xc6L\\xaej\\x07\\xd0\\xdd\\x93\\x9d\\xc9\\xce\\x1e\\xde\\xab\\xe4\\x9f\\xd5R\\x19\\x9d\\x93'\\xd5i\\x07\\xbf\\x9a\\xff\\xfb\\x7f\\xeb\\xcc[\\xc7aV!`@5o\\x96\\x9c\\xc3\\xee\\x99\\xf1\\xf3\\x1a\\xe6\\x03\\x9f\\xedXk\\xcb\\x0b\\xc0z`\\x80[\\x8dL\\x8b\\x95\\xad\\xb4\\x92}\\xde\\xe8\\x844\\xa2\\xd9\\xcc8\\x96w(\\xd9\\x81\\xf9\\x92\\x18\\x92\\xe2\\xca\\xca\\x08\\x96\\xd0\\xb6\\xff\\xc1x\\xa9\\x9d\\xf12\\xf4r\\xb8\\xd5\\xccig(Mm#\\xd3\\xf8\\xd6\\xe5\\xd2\\xee\\xb6;\\xc2Uu\\x90\\xfeU&\\xb8\\xb6\\xe0\\xae\\x96\\xd3\\x1e\\xb7\\xa4E\\x10h\\xdb\\x9d\\xb2F)\\xae\\xbe\\x01jq\\x9c\\xfeM\\x8c\\xb9\\xf0\\x10#O\\xea\\x9e\\xd1u\\x88\\x91\\xa7\\x885Win\\xb5?i88\\xcd\\xc1#U\\xf5\\xd3M\\xcbf%\\x1b\\xa9\\x9eZ\\x15\\xf3\\xf8\\xe2w\\xb1)\\xc2&\\x92\\x80\\xf3)a\\xcayl\\xf0;\\x83x\\xbfT\\xd58\\xd4\\xf9\\x82T=\\xe3\\xa7\\x19\\xcd\\x02O\\xf2P\\x86x(O\\xd9\\xb1\\x19\\xcd\\xd8\\x94\\x87\\xe6\\xa5u\\x82R/\\xa7\\xad^\\xdb\\x9b\\xeeN\\x05\\x17_\\xb6I)W\\xa4\\x1d\\xa7\\xb5Z$U\\x0fA\\xb5c\\xb5)r\\xeaWi\\xdaQ\\xa9a\\x90\\xd1\\xaf\\xc2\\xfa@\\xb5\\xd5\\xef3ME\\xd5f\\xbe\\nVj\\x7f\\xb6\\x82i5\\xcf\\x96UT\\x80\\xbaai\\x00\\x01\\x9eQ\\xbd\\xc1\\x90\\xf01\\xf5\\xfd\\x0f\\x9c\\x87A\\xb48\\xe3nX\\xc3\\x08\\xf7\\xe2Hxw\\xf7\\x91\\x81\\xf8%\\xd27\\xa1x\\x1b\\x01R\\xac}\\xd6<oH-\\xc6}\\x0b\\x8f\\x02\\xaa0.#\\x9a\\xe6\\x83sq@\\xb2e\\xc2\\xaf`U\\x0b\\xc2N\\xea\\xff:\\xc74\\x8axF\\x04\\xe6!\\x94x!MSBSB\\x8b/9\\x08vW\\xb7\\xc6\\x85\\xaeUV.yq\\x1eT\\x97Du\\x0e5\\xddl\\x9a\\xa7\\xc0\\x9af\\xdd6?\\xda\\xdc\\xa5\\x86\\xd8\\x87\\x95\\xea\\x14\\xaa\\xd1\\nTuLo\\x91\\xbf\\xd4\\xbb1\\x0e\\xd2\\xd7Q\\x05\\xbb\\x00\\xe7V\\xaf\\x1d\\x97\\xcd\\xe0-\\xaa^\\x93\\xb5\\xf7t\\xc3\\xe6\\x18U\\xd7\\x1d\\xbe\\xe3m\\xa9]\\x08u\\xae\\xaa\\x0d\\xdbcV\\xef6\\xf5P\\xf06\\x9d\\xb2\\xec[\\xb5GWmiK\\x89AL\\x0e\\xdbD\\x0d\\xfc>P\\x83\\xe5,\\xde\\xb7\\x9d\\xc5\\xc8Q\\xdcc\\xd5 w\\xa85;\\xd4w\\xdc\\xaf+-\\xde\\xdan\\xd5\\xe7+\\xa9WX\\x1dT\\x13\\x13S\\x13\\x13W\\x1b\\xddmni\\xf5\\x15C\\xe5\\x05E\\xe0\\x1f\\x03\\xf2H\\xb6\\xb7\\x9b\\xc4W\\xb5\\x89\\x14\\xed\\xec\\xa6\\x86\\x97Z`\\xef\\x10`\\xcfFl\\x15g7S\\x02\\x11*\\x8d\\xcfm\\x13\\x87 Z\\xb8\\xd2\\x0fA\\x9d\\x04i\\xa3\\xe0S\\xd9O~\\x15\\xb1\\xe4%\\xf7r\\x90p(\\xafI|\\x05B2\\x9b\\x12\\x83\\xb6Y\\x18\\xc7\t\\xf3\\xa8\\xb7d\\x85*\\xb7\\xbc\\x81\\xe2.r\\x8b\\xd9\\x94\\x07\\xd6\\xa4\\xba5\\xc2\\xeaP\\x86\\xf1r~\\xbb\\xde\\xf3\\xb6F#1\\x0e\\xb9\\xe8\\xfdh\\xf4\\xdb\\xf5\\x1esj{\\xadv\\x16Xu\\xbc\\x9a\\x87\\x7f\\x7f%\\xf6\\xa2\\xdb\\xd6 \\xd0m\\x8dj\\xd1VG\\x99\\x84q\\x1eU\\xc7\\xb6V{\\x89[j\\xd4\\x06\\xbd\\x17\\x942\\xa9\\x10\\x1bx\\xd8\\x00\\x8e\\xa2Q\\xa7\\xc0\\x05\\x0e8\\xcfP\\x82\\xd6=\\x88\\xeeR\\xcb\\xcc\\x8c\\xcc\\xeaZ3<p\\x80r10\\x9c\\xcf\t\\x7fN\\x9a\\x01\\xecHT\\xdf\\xa4\\x95\\xa8\\xdd;\\xd2\\x18({N\\xe8s\\xf8E\\xab\\xa5\\x03\\xb4\\xf4s\\x12\\x91\\x11\t\\xc8\\xf7d\\xe7\\xf9\\x00\\xe4]\\xacz\\x8d\\x14\\x8dFh\\xb1\\x80\\x8cH\\xa4\\x8a\\x01\\\"\\xa8\\x16\\x0b\\xd0bz\\xf7G\\xcfI>\\x1a=\\xb7\\xf3\\xea\\x10\\x12\\xb8\\x8diDZ\\xdah\\x85e%\\x91\\xaa(\\xfdOM\\x08s\\x9dU[\\x18\\xa4G\\x91\\xc7\\xd2*En;emK\\xe4q\\xdb\\x12y\\x8c\t\\xb6\\xd5\\x98g\\xe8\\x88\\x91\\xc2\\xc9\\xd3A\\x85\\xd5\\xb6\\xeaO\\xb5\\x8e\\x13iCb\\x0d\\xd2\\xb1\\x8ec\\xde\\xf0+&\\xce\\x81\\xd5\\x8aG\\xe5H\\xf1\\x06\\x9c\\xfc0\\\"\\x8dm#\\\\m\\xe3\\xf9\\x04n+\\xec3_\\xfdz\\x96\\xd05KRvv\\xc5?,i\\x8a\\xa8\\x86`M(\\x15\\xdb\\x87*\\x8e\\xc2s\\xc2\\x9e\\x0f\\xb4K\\x7fA\\xca7\\x96\\xa4e\\x1e\\x13\\xd8\\xd9Z\\x03'\\x19\\x8d\\xf4.r\\xf9,9\\x1f\\x12\\xc7\\xa3q\\x96'2\\x08\\xb8m1$2VcB^\\x98umo\\x1b\\xd5\\\\\\xe6\\x97\\x97\\xa1\\xaa\\xa5\\xcf\\x80\\x9c\\x08:\\xe0\\x0d\\xa3k\\x9b\\xb6\\x0c\\xaa*SQC\\x92w\\x01\\xe4\\xb0\\xc0\\x99\\xca!\\xa3\\x16s(\\x9f^ \\xbc\\xa2\\xcf\\x07$\\xdf|\\xf4\\xd6eh\\x10Q\\xa1\\xbc\\x10(*\\x0c\\xcb\\xa0-\\x8den\\xa90\\x95#\\x99\\x92\\x17$/F2\\x15#\\x19\\xb9\\xf9,\\xad\\x8ed\\xdd1K\\xa5\\x96\\xb0,^Lj\\xe4\\x86\\xb2\\x0ecR\\x03\\xeb\\x19\\x07\\xbf\\xee~\\xa6ad\\xb25\\xc8_\\xdd\\xa3\\x0f\\xc5\\xa9\\xea\\x1c\\xa7\\xaa\\xa5\\xff\\xa1\\xc9\\xe3\\xba\\x13\\x9f\\xb0\\xea\\x17\\xe8\\xf1\\xa0+\\xda\\xad\\x85\\xf8.T\\x1bd\\xf8\\xdb3\\xa9o$C\\xe0\\xdd\\x96(/\\x88n\\x9dP\\xf1MY\\xfa\\xaf\ty\\x1aD\\x0bE&\\x92\\xba\\xad\\x10\\xa4\\x8a\\xcf\\xa6\\xd8\\x1d\\xb1\\xe9\\xb1\\x90W\\xa5)\\xf7F\\xc3\\xf3\\x06\\x0d\\x8f\\x8b\\xaa\\x03\\x83\\xde\\x96j\\x0b2X}\\x0b\\x91]\\x1d(n#\\xfd7\\xa3\\xc5C\\x84\\x16\\xb7\\x0b\\xd7=\\xa9\\xefV!\\xd5\\x83\\x16-\\xa89\\x02\\xef\\x90\\x87e\\xb7\\x89\\xd3\\xa1pL]]^\\xb7\\xeeUB\\x17\\xab6KZ\\xad\\x9a8\\x96b\\x0dp\\x87\\x1a\\x0f\tu\\xbdR\\x17\\xd8X\\xb9\\xa0Q]\\x07\\xd5\\x1f\\x15\\x10\\x86\\xb5hY\\x0c\\xf4\\x8a\\x9b\\xe5\\xe6\\\"9\\xc7\\xb8\\x13\\xc3\\xa5G}\\x0d\\xcf\\x87$n\\xf4\\xa4y\\xde\\x8b\\xe9\\xf2e\\x88\\xd3zc\\x9a\\x03\\xd1\\xc5\\xe1\\xf85\\x06'0\\x18\\x1c\\xb2M|\\xf1\\xaa\\xb2+\\xf3u7\\x1e\\xa8\\xed^\\x82\\x19&\\x18U\\x94c[\\xbf6\\xf4\\x84/\\x0bM\\xd1K<\\x85\\xc3\\xc0\\xfd\\x88\\xd1\\x0ec\\x88-m E;*\\xc8\\xd0\\xe2\\xde\\x88\\x18\\xa7\\x02\\x942\\xd5\\xf0Z\\x94\\xbc\\x02\\xadF\\xf5\\x92\\x85\\xc1*\\xc8\\x98/\\xbe\\xe3&\\xb3\\x9d\\xf3!If\\x93\\xf3M\\xb4\\xbc\\xda\\xe6\\xae?KZSW0P\\xafED\\xd0\\xc69HCGdw\\xe0\\x9d*\\x88\\x0eP\\x89\\xb73\\xc5\\xe3\\x88]g\\xa7\\xc1e\\x18D\\x8b\\xe7V:\\x9d\\xd4.\\xc62\\xa5\\xd0\\xf2\\xa4\\xb0\\x8e\\x93Hw0$\\xfb\\x92\t\\x1aGZM\\xf1\\xc1\\x03R\\xc3g\\x06\\x84\\x8ch\\xd8\\xf2UR.\\xe2:N\\xb0\\x18k\\xe9\\xa7=\\x02\\xb7\\xdd\\x99\\xa6$\\xc0\\x8ca\\xe9\\xb9h\\xf4\\xd4\t\\n\\xafz\\xc0\\xe3X\\xed\\xdcr&\\xb3\\xba\\n\\xd3\\xddD\\x15\\xb7#\\n\\x04\\x86\\xbe\\xad\\x88\\xe3^.T,R\\xd3G89\\x88\\xdf`\\xca@\\x8b\\xd5\\xc1\\xb3x_\\xd67\\x8bSB\\x9b\\x87\\xad\\x18\\xbc\\xae\\xbdN@\\x118H\\xc1v&\\x88\\x16*l\\xa2\\xc5\\x05]\\xdb\\xfc\\x8a2\\xb3\\xdb\\xb6\\x91\\x8f\\xe7a\\x9e.\\xa1\\x15Li\\xa1\\xa7R\\x0d\\x9d7$\\xe0\\xf99~\\x01[\\xef\\x1f\\xac\\x12\\xeb\\xfdk\\xb9\\x0e\\x8a_\\xcd{\\xb8j\\x85w\\xb9.M\\xad\\xab\\xb0\\xba\\x8c\\xc0\\xb8\\x8c]\\x91\\x9a[\\xfd9\\xbe\\x00\\xea\\xf36%[\\x93\\xe6 _V\\x86\\xf5\\xb6\\xc6\\x19\\xa0\\x0d\\xdd\\xf8b+\\xa1fYY ;;$\\x85\\x95\\x84\\xfe\\xf8\\x94x\\xda\\x0f\\x8eh\\x9a\\xda\\xeb\\x15\\x98\\xae5Y6\\xa7\\xa2=\\x01\\xa9\\xdffk\\xef=\\xc5\\x82\\xaeFn\\xc3w\\xab\\xdc\\xda\\x0d]\\x86VN\\xaf\\x817B\\xc5F\\xd6\\xd3=\\xc9F\\xc2unso\\xcc\\x9bL\\xa0\\x92qUe\\x00\\x88H\\xb2:\\xbf\\xed'3\\x1b\\x8cc($r\\xaa\\x05\\xb5\\xd2\\x00X\\xc1\\x8b=\\x9f\\x16\\xe2\\xa8W*\\xea\\x84[\\x89\\xd3\\xda\\xecD\\x8c\\xd2\\x98\\xb0\\xc9\\xb5{\\x08e_\\xa0O\\xae\\x88f\\xc1\\x9a\\x9d\\xac\\xabw'T\t\\xca\\x00a\\x9d\\xb7~\\xd2\\xb7k~\\x85.3\\xebGx\\x9dH\\x8f\\x93\\xbd\\xbf\\xcdBI\\x93\\xc2\\xf49\\xb2+Y\\xd9\\x0d)\\x83I\\x06C(\\x0c\\xbahs\\xb7\\xe6\\x89\\xec+\\xb9Z\\x06!#n]\\xa2b\\xc4\\x12\\x04\\xb9\\x0c'/*uk\\x11\\x0b\\x07\t\\x0d,\\x8e\\\"s\\xc6\\xcf\\x87d9V\\x1e\\xba\\xce\\xd4\\x1c\\xb8\\xac2\\x1d\\xd2\\xa9\\x9d9T\\xc3\\xc6\\xd8\\xe1\\xb88\\xb6s\\xf16M\\x8d\\xc60a\\xab\\xc3 !\\xaa\\x0b\\xc4\\xc8\\xa8\\x0f@\\xf3\\xce\\xb0l2p\\x8b\\x15U\\x0d\\xc1/\\x8e\\xb3+~\\x94,\\x80\\xaf\\x159\\x15'\\xc3k\\xe5x\\xbf\\xda\\xe0\\x0b\\x16\\xd1\\xcb\\x90\\xf9S\\x81!\\xab9\\xd5!\\xc6\\xe2\\xae\\xfc\\xfc\\xfa\\xdd\\xcb\\xf7?_\\xfcx\\xf4\\xee\\xe5\\x9b\\x93)\t\\xc6\\x1e\\x8d>\\xa5\\xec\\xe5\\xfb\\xb7\\xe4\\x90\\\\\\x05\\x91\\xcf\\xaf\\x08V.e\\xd9\\x8f\\xb5\\xca\\xdb%G\\x8d\t\\x17\\x8b\\xa2:6\\x8d/\\x9c\\xe8\\x8euV\\xad\\x86@\\x9c\\x12[\\xad\\xb5\\x06i\\xb3\\xd2\\x96\\xe3\\xb7\\xac\\xba\\xad\\xd2,\\xa1\\xf1\\x0fR\\xfa\\x08\\x8b\\xa2\\x9f\\xb0Z\\xdfn\\x90C\\xc2\\xc72\\x80\\xbf\\x8aM\\xb4\\x04\\xd5jq\\x00Bu\\x92\\xa0\\x91\\xcb\\x8c\\x0d\\xb4\\xb8\\xb6\\xabA\\xc7J\\x94y\\xdb\\x16)Q\\xe8}5i\\xc5\\xa3 \\xe3\\xc9\\xa9\\x97\\xf0PFD\\xef\\x9aV\\x8d2\\xdb\\xa1\\xc4\\xc3\\\\\\xcf\\x95k\\x15q\\xdc\\xf4\\xb5\\xda\\xd6&\\xe1Q\\x0c\\xbe\\xacbH\\x9c\\x14\\x1a\\xe9 j\\x14Utb\\x8eHO\\x99F\\xb9\\xa0\\xda\\x88&\\x811c04\\x10(\\xa05vO\\xbb}N:\\xae\\x12q\\xaeo\\x97\\x0b\\xf40\\xba\\x89\\xc7\t\\x0b\\x19M\\x99{[\\xe1B\\xf1f!\\xb9\\x96\\x90z+\\x92\\xab\\x9f\\nv!\\x06\\xfbY\\\"7\\xb8\\xe90t\\xc8\\x8a\\x8cCd\\x1c .VL\\x17\\xec\\x97\\xf7\\xf3y\\xcad\\xc0\\x96\\xb1\\xaf5\\x16\\xf4\\x0fm\\xa3!\\xd7\\xd1\\x1b6G\\x04\\xa87\\xba\\xaa_7\\xa8\\xea\\x8cW\\xc5\\x82_\t\\x16t\\x1eZ\\xd9\\xf9mK\\x8d\\x7f\\xaa\\xfe\\xba\\xd5L\\x94\\xc4\\xef~\\x9dQU\\xd7\\x1c\\x13\\x0b\\xf1\\xdb\\xb8\\x16i\\x0f\\xb4\\xb0\\xf7\\x04\\x8f\\xb40y\\\\\\xaf'T\\xf0\\xf5\\xf6x8\\xbd\\x8c\\xf3M\\x86\\x10\\x82\\x8e\\x83\\xe8\\xbf\\x19\\x8cKs|_\\xbe\\x7f\\xab\\xe3oLI\\xd2\\x06y\\xb2\\x8a\\xb3\\x1b\\xa3\\xda\\xbc\\x15X\\xe0\\x99\\x0fa\\xbe\\x08\\xa2\\x1f\\xf3K\\xc1\\xfd\\xf6\\x03\\xfe\\x94\\x05a*\\xce\\xf6.\\xf0\\x93U\\x90e,\\x99\\x82\\xdf<+\\xe8\\x8f\\xa0CT49l\\x83-xG\\xaf\\x84\\xaa\\xae\\xb7\\x7f\\x01\\xe7\\xf5\\xb8\\xce4\\x058\\x8bE-kI\\xad\\xbd\\xa7\\xf5\\xf4\\xb4\\xa2F>y\\xf4\\xb4\\xaeF\\xae\\xb8\\xb0\\xdd\\xfa\\xf7\\xbdn\\x19\\x08p\\x04\\xa7,\\x94C\\xf8:\\x12\\xcc.\\xc5\\xc7\\\\\\xc9F\\xf2q\\x02\\xb4(+JU\\x07\\x1e\\x8b\\xcfm~\\xb1S\\xfe\\xa3\\xe5\\xbdt\\\\\\x10U\\x1d6\\x91t\\\\\\x12u.\\xc4\\x1a\\xefehU\\x17HY\\xe9\\x80J\\xfdH\\xa0\\x9c\\xba \\xea\\xae#\\xa0$E\\x15\\x85u1\\xea\\x0c3n\\xed\\xd1\\xb1\\x8d\\xbe\\x13\\xf1,\\x98\\xdf\\x1c\\x85!\\xf6\\xadjGQ\\xc1\\x17\\xc2\\xdc\\xb7K\\xbe\\xda-\\x0f\\n\\xf3\\x82Z;A\\x8d\\xa2\\xa4d\\\"\\xc3\\xcb$b\\xa4`h\\xa9V6t|\\xaf6\\x08^m\\x1d\\xd4+\\xbe\\x95\\x0d\\x02\\xd6\\xf9\\x8e\\xefll\\x96\\xd0Ja\\xdb\\x0c\\x0c6ip\\xc5Gu\\xdb\\xc7\\x103\\x05\\xbb\\xc2@c\\x8bhW\\xd6\\x0d5\\xee\\xcakov\\x9d\\x17d)\\xf6\\xb9\\x81ua6y\\x96r\\xf9\\x95\\x88,q\\xe7\\xa6H!\\x1d\\x92x0$A\\x95w\\x9f\\xd7\\x0d\\xaf\\xa0\\xf8\\x1d\\x0f\\xb0\\x86,P\\xe9R\\xef\\xd6\\xe3>\\x05\\xea`\\xdbC\\xc5x\\xb4EK\\xa1\\xbc\\xc6\\xd1\\x86\\xdbRA-\\xb1l\\xc4\\\\z2/\\x84\\x04\\x0f\\x1e\\x10'\\xd5\\x07\\x0c(|i\\xcaUdm\\xb9\\x8eylA\\xbeb\\xd4\\x9aGgs^\\x17,\\x93\\xc4q:%99\\xecq\\x02h\\x9e\\xb1\\xa0\\xa3\\x8b\\xb6\\xa9\\xeb\\xfb\\x8f4Z\\xb4\\x06e\\x01\\xdb\\x8eq\\xc6\\xae3%\\xc3\\xb1\\x83\\xc2\\x9d\\xed\\xd8\\xcf\\xe30\\xf0hf\\xbd\\xaeM T\\xfd\\x19WX\\xeeL\\xba5\\x1d\\x92D\\x9eV\\xfe\\x07\\xd8m\\xceI\\xe4\\x03RM2\\xc7\\xce\\xedi\\x91[b\\xb6\\xb0\\xf5\\xccm\\xe1\\x0d\\xc5\\xb7\\x1aj\\x7f\\xe6\\xc3\\\"\\x7f\\n\\x1a(M\\xbf\\xaf\\x04g\\xf6H\\x17> \\xc6$\\xc9\\x95P!l\\xc4\\xa2A\\x92mC+o\\x89\\x05\\xeb\\xb4\\xa3nY\\x131\\xbf\\xa0i\\xd33,\\xa8\\x9co\\x1ayK\\x0e\\xf1\\x86\\xbb\\xa6[B\\xcaei\\x87\\x95\\xbe\\x0d\\xe6\\xdc\\xcb\\xd3\\xf6J\\x83\\x12\\xb0\\xab\\xce\\\\\\xfbK\\x805|\\x94\\xb96\\x8f\\x84\\xed\\\"\\x81|\\x0c\\x13_X\\x01\\x14W\\xd7C\\x92\\x8fY\\xe473\\xf0\\xc9\\xd7\\xc1\\x1a\\xfa\\xc4\\xeeA=\\x00\\x10t\t\\x11\\xc3$\\x80\\xba\\x95\\x99\\xa9\\x8f~e\\x84\\xab\\xa38 \\x87d\\x87\\x08\\\"8\\xe3\\xa7\\xa0\\x86\\xe1\\x0e:\\xf7s\\x08\\x92w/\\xe4\\x91F\\x13\\xf8\\xf8\\x86\\n\\xab\\x88\\xef\\x823\\x90(KaG\\x87jG\\xbb\\xf51\\x1e\\xeaQW\\xad\\xb3/GOi8\\xd5\\xcb\\x87fy\\xf1j\\xce\\x94z\\xafv=\\xdc\\xa4\\xeb\\x82\\xdf\\xf5\\xc86iq_\\x19\\x9bh\\xb5\\x82L\\xf1\\xde\\xc4b0\\x00\\x9f\\xb9\\xca\\xa5Y\\xac\\x87\\x87\\xdb\\x1d\\x18i\\x95\\xa6x\\xec\\xf10\\xa4q\\xca,\\x01[\\xfb\\xa27_\\x9c\\x1bdJ\\xbc\\x0e4'\\xe0<\\x81\\xbez\\xaeS\\x84\\x9cO\\xad\\xc7U\\x97\\xab\\x95\\xa1VX\\xee:\\xb7\\xbaO\\x1b\\xc3\\xd2=\\x13\\x8b\\x82\\x1cJb\\x02\\x90\\x07\\x8c\t\\x99\\x16\\xbf\\xbe/`\\\\\t\\xc0\\\"\\x7f\\xa8\\x10\\x1d@\\x80\\xd7J\\xa3\\xac\\xced\\x91\\x0f\\xa6\\xa6\\xf8\\xc9&\\xd3\\xe5\\xdc;\\xde\\x92&\\xd4\\xcbX\\xe2H\\xcbp\\xder\\xec\\xf1\\xa2\\xb0X&\\x95\\xa2\t\\x19\\x15\\xc5\\xc5\\xd0`\\\\\\x0f\\xe9!\\x84%\\xea\\xd8@N\\x996D\\xa6\\x8f\\n\\xf4p\\xb2/-\\xa2\\xce\\x0d6\\x0b\\xdc\\xc1y\\xe76$J\\xea\\xf0\\x96f\\xcb\\xf1*\\x88\\xdcr\\xd8;>\\x92W\\x9d\\x1c\\xe8i\\xa5djV&\\xa7\\xb7M\\xadL\\x1c\\xa8\\xd1\\x98]g\\xa2\\xfc\\x83\\x07\\x84\\x92\\xefIk8\\x1eb\\xe0\\xeb\\x16\\x07mD\\xb5\\x91J\\xfb\\x97\\xd4\\nh\\xd7T\\xd2\\xca\\xa9\\xa0\\xb5N;\\xc6\\xc3\\xd3\\x806\\xbb1\\xa2z\\x0bN?\\xbc>=\\x9co\\x88\\x00\\xf53/\\x11a\\x08g\\xaa@\\xd7\\\\\\xe2\\xea!8.\\x12\\x0b\\xfe(\\x0c\\xa1\\xb6\\xd4\\x85xA\\xdf\\x03\\x06q#\\xc1e\\xc8\\xaf\\xcc\\x01X\\xce\\x8c\\xeb\\xa9\\x8a<]\\x11l\\xd4\\xb9F\\xb0\\x8dlQ\\xd4\\xa8\t\\x17\\xde\\x13\\xeb\\xf0w\\x8a\\xf5q)\\x9e\\x9c\\xe5\\x8d\\x98\\xa0\\\"\\xb9\\xe0^\\x12\\xbb\\x12\\x02\\x08\\xef\\xc7\\xf3 I\\xa5\\x8b\\xfcB\\x11\\xc1H\\xaa\\x14\\xd4\\xdcN\\x91\\x88\\xdd\\xdes\\xfb\\x07\\xed\\xb6P\\xa6\\x06]\\xa9\\xd7XQ7l\\x14\\x94m-U\\x1f\\xaaC\\xfa\\xa7\\xe6\\xaf\\xde\\x9e=*\\x06k\t\\xe0d\\xc3\\xf8l\\xe79\\x89\\xac=\\xd9\\x93\\x9c`A\\xfc\\xb5\\xe1P\\nNk\\xb7I\\x04\\xdc\\x88\\\"\\x854\\x92#\\x01y\\xa1T')\\xf9\\xde4\\x14\\xb3o\\xb5\\x08\\xb4L\\x11\\x99\\xa6~\\xe4r\\x9e\\x92\\x8c\\x8c\\x900U\\x844BJ\\xeb'(\\x8c\\x11+\\xc0\\x8d\\x149`\\xdc\\x8d\\x06\\xdf\\xd4\\xfcc\\x7fo\\xc7b\\x84],C\\xa9\\xe6d\\xe1\\xd7\\xb7\\x14\\xdb\\xb3\\x15\\x81\\x0d\\xb8\\xb2*\\x8b )q3\\x99\\x98\\xb8\\xd1\\xa0\\xd0\\x972\\xd6\\x99\\xc0\\x15\\x8e'\\x89\\xc7T\\xd9\\xb5\\x1dB4\\x1b\\x99$\\x8aM\\xc9\\xd6\\x96\\x8coC\\x93B\\xd1\\xfe\\x03O\\x03\\xcd\\xa5mm\\xb9\\x93'\\xe4\\x01\\xb1\\x02\\x89!l\\xa8h\\xdcy\\xd8&\\x1d\\xc3f\\xbd\\xf0\\x034\\xf2\\xe0\\x01\\xd9\\x03O7M\\xde\\xe6\\x0e\\xed\\xeb\\xd7\\x0e\\xcd\\xf5\\xbaL\\xcc\\xc9\\xb8b_\\x01\\x97\\x7fdZ\\x1c/\\x83\\xb1\\xcf\\xe64\\x0f\\xb3\\x9f\\x02v%2%\\xd9\\x81\\\"\\xb3-wK\\xba\\x18\\xb4\\xf8\\x8a\\x1a\\x83\\xd1\\xcda\\xf5\\x96S\\xa5NQ_K \\xd4\\x89\\xc0!z%\\xbd\\xaa\\xe4,\\xb5\\xdb\\x9b\\x00\\xef\\xe8\\x8a\\xdd\\xef\\xbc;\\xcb,\\x8b\\xa7\\x0f\\x1f^]]\\x8d\\xaf\\xf6\\xc6<Y<\\x9c<{\\xf6\\xec\\xe1u\\x18D\\x9f\\x9d\\xa6\\x84\\x0c\\x81\\xff\\xe5\\xed\\x1bQf\\xffaDW,\\x8d\\xa9\\xc7\\x9c\\xa6\\x04\\xad\\x89\\x97\\xa8\\xe7\\xb1(\\xfb\\x91\\x05\\x8be6%\\x8e|\\x1d-\\xe1\\x1d\\xf1\\xd1D=/_\\xe5!x\\xb2\\xdeA\\xb2}?\\xc8\\x82\\xb5%3\\x0c\\x16\\x91\\x98\\xfb\\x1fh\\xca\\xc2 b\\xe2{:mt\\xa9\\x12\\xb1\\x8f\\x86!\\xbf\\xfa\\xc8x\\xe2\\xb3\\x04\\xca\\x94\\xaf(t\\xbc\\xa4\\x97,\\x0b<\\xbc\\x15\\xab8\\x0c\\xb2\\xdc\\xb7\\xb41\\xa1\\x97\\x81\\xf7\\x8a'+\\xf1!x\\x19\\xcdy\\xb2\\xc2\\xbe\\x93zp;\\x88\\xd5\\x92eIp\\x99gL\\xbaAt*\\xefXU:_,=\\x13^\\xbcc\\xf0y\\xc6?20\\x96\\x14\\xd0\\xe5\\x1b\\x06\\xfb{\\xb0\\xca\\xb3%\\xdaN1\\xe6\\xaf\\x12\\xf6\\x8f\\x9cE\\xde\\xcd\\x948\\x95w\\xa4.\\x91\\xff!\\xe1\\xf3 d\\nZ\\xbdY`\\xc5|\\x9e.\\x83y\\xa6\\xa0\\xc5\\xfb(\\x15\tX\\x81K~\\x8d\\xb7\\x92-\\x82\\x08\\xcf\th\\x8ag\\xdc\\xa0\\xc9\\x1e\\x0d\\xbd\\xb7p\\x00;\\xfa'\\xd2\\x10\\x8f\\xc6\\xc5~\\xf0hl\\xdf\\x0c^\\x18\\xc4\\xf8w\\xc2 \\xfe@\\xc5\\xa0;\\xe2\\xe7(\\xa6\\xd9\\xd2R\\xfec\\x0ec\t`I\\x8e\\x8e\\xa4\\xae\\xedS\\x14\\x08\\xbe\\xdb\\xa9\\xbcc\\xf0<\\xe4\\xc9\\xeb(cI\\xccC\\xb8A\\x85\\xc30\\xe4\\xc9(0S{\\x15}\\x15\\x84\\x19\\xdc:a5\\x8c\\xe62\\xd7VS\\xb9Vd\\xe1\\xd8\\xbaZ _zG\\x87\\x18\\xaf\\xaa@\\xa2S\\xd0\\\"@\\x8c\\x9dzI\\x10gj\\xe34\\xd2Z\\xcae7!\\xab\\x15\\xd3IX\\xa9<Iy\\x82\\xcf6\\xbel=|\\x0d\\xfax*\\xf3X\\xc8\\x12\\x1b^\\xf5\\x99\\x1d\\xd9\\xf8\\xc1|\\x9e\\xa7\\xec\\x98K_\\x9dS\\xe2\\xd4R\\x90\\xde\\xf8A\\\"9{K\\x8d\\xe0\\xf5\\xd4\\x92\\xb7\\x0el\\x03\\xe1\\xf3U\\x10\\xd1\\n~\\xd7Im\\xe8\\xdd\\xcf-\\xd5\\xe1\\xe3\\xea\\xe3\\x0dc\\xfe\\x82\\xa9\\xbd\\xad\\x7f\\\"\\xdfb![Sk\\xc7\\xa5\\xde\\xda\\x0f\\xd4\\xfb\\xbcHx\\x1e\\xf9\\xa2.H\\x1a]\\x16iX\\xa5\\x11>\\xa9\\x82f\\x8al\\xd3&\\xd8\\xdc$\\xa2\\xe1G\\x96\\xf2<\\xf1X\\xfa\\x91\\xfd#\\x0f\\x12\\x06\\x1f\\xb5\\xe5!\\x1f\\x9f\\x07a\\x88~@d\\xbc\\x8f\\xa9\\x17\\x80_\\x1b\\xf16\\xe2\\xf2\\xd5R\\x8bBE\\x00iAEr\\xbf\\xdb>\\x97\\xb1\\xe4#Ke\\x15\\xf2\\xb7\\xb5\\n\\x8d\\xcb\\x8c7\\x0c6\\xe4\\xdc?\\x16\\x98@\\x80\\x8a\\x97\\x11\\xe0\\x05\\x1b\\xa8\\xd1]\\x00n\\xe9/\\xf7\\xf2T\\xcc,\\xde\\x17\\x1ee\\xaf\\xe8*\\x08\\xa1*\\x1ee\\xa39\\xbc\\xa1\\x15E\\xd9)\\xe8RH\\xc04\\xf8\\x1d\\x1d8\\x05v\\xe4\\xffw\\x9ef&\\xf0\\x88B\\x92\\xadL\\x96\\xb0\\xcc[\\x16\\x05\\xe4\\xab\\x15\\xf8&,\\x1b\\\"^,\\x80?\\xd1$\\x90\\xa8\\x02@\\xd7\\xf2\\xd5\\x02\\xfc\\xb3>\\x0b\\x01\\xf6\\xcav\\x18Ju\\x1d|8\\x13\\xbe\\xc23\\xf0\\x1d>\\xc7w\\xf8b\\x82'\\xef\\xe2\\xc9\\xe1M\\xbcT\\xf4\\x17\\xfc\\x1eE8\\xf1\\x05\\x99\\xef\\x93\\x80E\\x19`\\x86\\x1fy\\x12\\xfc.\\xf8\\xc4\\xb0(\\xc9\\xcb\\xdc\\xd1\\xb2\\xc8\\xeeQ\\xd7O,\\xc9\\x02\\xcfR\\xd3Ze\\xda\\xea\\x01\\xc7\\xdd\\x8e\\xfe\\x89A%\\xd4\\x17\\xd5\\x81\\x96\\xc8\\\\\\xd2\\xac\\x8d\\xb4\\x96rz\\x13V\\xde\\x11\\xf8%\\x8d\\x16p*#\\xc3\\x0c\\xc3q\\xe4\\xaf\\x7f\\x99\\x12\\x07~\\x8f\\xa8\\xbf\\x1e]c\\xb5\\x88\\xdc\\xf7I\\xb0\\x08\\xa2\\x12\\x98\\xc3;\\n\\x1f\\xf8\\x8c/\\x12\\x1a/-\\x84|\\xb0\\xa2\\x0bf\\x92\\x0c\\x90\\xd0J2\\x04\\x11\\xc1\\xab\\x8a\\xf05\\x04\\xc4\\x8e\\xc7b|Y\\x7f\\xc6S\\xf1U\\xfa\\x19\\xff\\xc2\\xe7=<\\xf9\\x11\\x9e\\xcc\\x92\\x88\\x85oi\\x96\\x04\\xd7S\\xe2\\x98\\xafHoe\\xb6\\x98\\xd47 \\xaf*J\\x94I\\x96R\\xb6\\xc9\\xfe\\xccn\\xe0N#\\x85\\xaa\\xd4o\\xb4\\x8e\\x9b\\xd3X\\x9c\\xf6\\nP\\xbd\\xe0\\x90g\\xc1J\\xc3\\xc1O\\x04J\\xca\\xdb\\n\\xdci\\xbe\\xa2\\xd0Y\\xc6\\x92S\\x81\\xfba]\\xc8\\xf7Q*\\x13\\xb0\\x02\\x02\\xa5\\x811\\xad<i\\xf4\\xbb\\xf5\\xb0\\x01{t(\\x10\\xb1\\xa3h\\x01H\\xb7\\x91\\x86\\x95\\xe3\\x80\\x0b\\x90\\x91]\\xd1\\xe43KN\\x80\\xe4\\x90\\xbfG\\x0c\\xa55d\\xe6\\xdb\\xc0\\x00\\\\\\x05v\\xc0SyE\\xa8ASy\\x0be\\x01.\\xb8\\x1e\\xf3\\xd5\\n\\xad\\xb1\\x87\\xf1f\\x85\\xfd9\\xf0a\\xfd\\x19o(l\\x8a\\xef\\xa9\\\"\\\\n\\x89\\xb3\\xeaI\\x96\\xeaLp;\\\\\\xb6d+\\xaa\\x105\\xf6yn\\x91\\x16D\\xf9\\xea\\xbd\\x97\\xd15\\xac\\xdf\\xf2\\x05\\xf9\\x86\\x96\\xea\\\"\\x95pM\\xb4\\xa0y\\xd2\\x0d;\\x9e)\\xe5!hN`#;\\x8d\\x03\\xc8\\x96o\\xe3\\xb6\\xf9\\x9a%\\xf3\\x90_Y3\\xc5&\\xd7\\xb2\\xd1)qt\\xd2(Vi\\xd8\\xb8(\\x98\\xb3e\\xe0}\\x8eX\\x9a\\x9a\\xe52\\x9d\\x88\\x14\\x8ci\\x10e\\xef\\x95D\\x08^F6\\x81PL#\\x9e\\xb2\t\\xc0\\x89_\\xa3\t\\n\\x94-\\x0b4Y\\xbe\\xe0\\x90\\x82:\\xaf\\xadG$\\xd5^\\xd6<\\xb0\\xebI\\xf6R\\xb5OY\\xbf\\xc1\\xe1\\xd8\\x02uw\\x00\\x97\\xef#\\x06\t\\xb6\\x02\\xb8\\x1cEf\\x1de\\xbf\\xe8z\\xc4ok\\x15G\\xd9\\xaf\\x06\\xdc\\xaf-p\\x7f3\\xe0\\xfe\\x86\\xc1%,e\\xc9\\x9a\\x1d\\x85\\xf1\\x92\\x82\\xdfx\\xe3\\xbd\\x0d>\\x8d\\x99\\x97}\\x14\\xcb\\xdb,U\\xa6\\xa2e\\x01s\\xafY1\\xbe\\x95\\x04\\xa4\\x04\\xbe\\xe9\\x04\\x11\\x95\\xe3\\xc3\\x98\\xb0\\xb9\\x18A\\xf1\\x0f\\xab\\x8e\\xcd\\x7f\\x95\\xb9\\xd8\\x90\\x15\\xf4\\xcckXY\\x00\\xa8R@\\x18\\x83\\xd2\\xed\t\\x8b\\x19\\xcd@I\\x0c\\n\\x14oV\\xd8\\x97\\x82\tw\\x8a\\xdf(\\x9c\\xe4AO\\xae3\\x16\\xa5\\x01\\x8fR(POl)\\xf9\\x8a\\xd1,O\\x98YN'\\xa1\\xa5\\x94~\\x0b:\\xa0i\\x1eZ\\xb2xf\\x93\\xa2$8\\xbb\\x91\\xe0\\xb87\\xf5\\xa8\\x85=L\\x19\\xc3\\x19\\xfetI\\xe3\\nI\\n\t\\xad$i\\x1a\\xf2\\xd8\\xf2\\x15M\\xc0\\xa0y\\xcc\\xcbC\\x9a\\x18B\\x9fz\\x12\\xf6-\\x05rR\\xc8%\\x9cz\\x12^\\xca\\xd6\\xdd8a\\xd4\\x7f\\xcb\\xb2%\\xf7\\xa1\\xae\\xf2\\x15\\xab\\xa7\\xd4\\xee\\x12\\xc0\\xe5\\x1b\\n\\xeb\\xbfd\\xeb@\\x0b/\\xcdW\\x14\\x9a\\xadp\\x01\\xb7\\xc8Y[r\\x82\\xcc[\\x9e\\x05!,G\\xe3\\x0d\\xad\\x9f\\xc7\\x9a6\\x14\\xbf\\xadt\\xa1\\xc8,e\\x10\\x00j\\x17A\\xa4Y\\x12|f\\xd92\\xe1\\xf9bi\\x1c\\x9b\\x95\\xf4\\xb6\\xb3\\xb3\\x02h\\x1e\\xa0\\xd5\\x1a\\xdaNQy\\xc3e\\x19\\xa0\\x84\\x7f\\xb6\\xacL\\xc8zI\\xd3%M\\x12*\\xbb*RF\\xbeN\\xc2?\\xa5\\n\\xf1r\\x0d\\x14\\xa5\\xb8}%\\x08\\x987A\\xc4<\\x1a\\x97eB\\x99\\xd0Z\\xe0\\xbfy\\x10UK\\x88\\x14k\\x91\\xb7A&\\xe8\\x8eU`4mU\\xa4Y\\x8b\\x99\\xf3\\x0deZg\\x9c\\x7ff\\x9a\\x16V\\xe0W\\x16b8\\xcd\\x939\\xf5\\xd8\\xa9\\xc4B\\x8e\\xf9\\x8aA\\xdf\\x88\\xa5\\xfe\\x86F\\x8b\\x9c.\\x00\\xbe\\x92\\x80\\x94\\xc8\\xe8e(\\xbd5\\x89%c\\xbc\\xa1\\xb0\\xc9\\x82\\x01\\x11\\xa0~Ya~-`\\xb0\\xb3,c\\xd7\\xd9\\x11\\xe8\\xb7\\n0v\\x9d\\x8d\\xa4\\xb6\\xab\\x05\\xf4%\\xf3x\\xa2q\\x00\\x80\\xfbE\\x8a\\xa5\\x88\\x89|\\xa1D\\x1b\\xee\\x15\\x00\\x05\\xcdW\\xbe`\\x90\\x1c\\xdd\\x08YI\\xc7!\\xb99.\t\\xc8qI@.\\xdaY\\xa3\\xa0\\x8b\\xb464P\\x00\\x99(\\xa0,\\xd9\\xb6\\xfd\\xf3(\\xf0l\\xbc\\x8d\\xca\\xfb!\\xf0\\x03\\xa8\\x0f\\xdeF\\x97\\x81\\x1f\\xd8+\\x02\\xe5+\\x03\\x1aT\\xd5q\\xf0,\\xfd\\xc0\\x92\\x93\\x95\\x04\\xce\\xd2Q,(T\\x8c\\xf8]\\x1f\\x19\\xf7\\xb9\\xcezT^\\xefb\\xc0?jQ\\x95\\xb3\\x1e)\\xb1\\x15\\x06\\xf6\\xda\\x94-9\\xeb\\x91!k\\xc2\\xc0\\xdfV8Dg=2YF\\xac\\x80\\xdaV\\xc8\\xb0\\xae\\x99\\x97\\xf1\\xe4d>g\\x9e\\xc03\\xf2u\\xc4\\xe0\\x1d\\xab\\x89%\\xa9\\x8dU[\\xb3$;\\xf2\\xd7\\xbfB5I\\x06\\x827\\x0c\\xed\\x88\\xccR\\xee\\x06\\xa0-b\\xb7\\x12\\xfa\\xd7\\x1a4Zw\\xc0\\xae~\\xe0\\xd7\\x02R\\xfe\\xb2\\xc0\\x9c\\x01NP`\\xf2\\x05\\x85L\\x83\\xcb \\xb4q\\xc3\\x80*\\xf1a\\xbd\\xe2\\x89_J|\\xc4[\\x8b\\xbc\\xe7*\\x01I\\x8d\\xba-Ro\\xa3\\x15~c\\x84\\xd3\\x8c\\xd7\\x85\\xac\\xe4\\xda~?|\\x8d#\\x80k\\x1c\\x01\\\\\\x1f/i\\x14\\xb1Pj\\xdd\\x02\\x8a\\xac'a\\xdf\\x08\\x83\\xe8\\xf3\\x91\\x97\\xe5@\\xf4:\\xf0:\\xa5\\xf2\\xdd\\n\\x9ex\t\\x0f\\x0dp\\xf9n\\x03\\xff1\\x01A\\xb4\\x84]&\\xa8(\\x1a2?\\x9a\\x95\\xb6\\xd5x\\xba\\xe4W\\x05`\\xba\\xe4W6\\xc0\\xb3 3\\xaa\\xcc\\xc4\\x9b\\x15T^\\xe5*H\\xfc\\x12\\xf7z\\x15\\xfe\\x00\\x9e\\xb6\\x9d\\xebU8\\xbd\\xa4\\xa8\\xc2\\xc4\\xf5*\\x8c\\xf0E\\x069\\xbf\\xc0\\x07\\xa0\\x86(\\x9db\\n:\\nT\\x9c\\xbd\\xeaK!E\\xd7\\xe1\\xf5*\\x14kV\\xb7\\x07S\\xda!\\xd2\\x97\\x01\\xd2\\x98\\x1b|q\\xdd\\xe0\\x8b\\xeb\\xa6\\xb9\\xb8\\xeaI\\xc8\\x97\\x7fG\\xeb\\xfa\\x9d\\xf3\\xd5Q\\xe4\\x7f\\xa0\\xe2\\x88*_Z\\xfd\\xa3RT\\xf9H\\xb9\\x10\\x08\\x04\\xae\\xac\\x07\\x8a \\xd2\\xcb\\xc0\\x91\\xa9:\\x03#\\x94b\\x0e!Hc+$\\xcd\\xeaHc\\x03\\xb4\\x01\\xc9e\\xdf\\x06\\xf1\\xb1\\xb3\\x0e\\xb9\\xd0\\xdb \\xd4\\no\\x05\\x81\\x95m\\x83\\xd0K\\xdab\\xe4V,D{\\xbeZ\\x83\\xbdB\\xca6fdjF\\xee\\\"U\\xedT\\x19\\x11p\\xfc\\x99\\xdd\\xa4n0\\x18\\xcfyrB\\xbd\\xa5kW \\xa4\\xe3rE\\xc88\\xb7;C\\x12\\x88_\\x0f\\x1e\\x10\\x97\\x8e\\x1b_\\x97@\\x02\\xc2P\\xc7\\xfb&\\x01:v\\xea\\xae\\x138n\\xbf\\xda\\x12\\xf4\\x07s\\xa8 \\x1d-<\\xaa[\\xbb\\xa6\\n|\\x17\\xf7\\xf1\\xf1\\x18\\xf7\\xf1\\xb1\\xbb[\\xaf~\\x0e\\xb6\\xe9U[V\\xad\\x81\\xf9V\\xc7/0\\xcdY\\x1b\\xdeY\\x04\\x14yq@&5\\xef\\x89Msu\\x02\\x92\\x91\\x10\\xe8\\x1a|\\x83\\xc6K\\x9a2\\xff#[\\x04i&\\xa9x\\xbd\\x84Pp\\xf1(\\x8f\\xf7S\\xe2\\xf0H\\\"*\\x04M\\xe9G\\xbb\\xb67\\xa0\\x95\\x8b(\\x07-\\x83\\xaco\\x02\\xca6\\xb1`\\x1a\\\"\\x0f\\xf0\\xd2\\xcc\\xc9x\\xfcC\\x98'\\xce\\x908 \\x08\\x80\\xd8\\xd8oY\\x94\\xab\\x94W\\xdc\\xcbS\\xf5\\xfb\\xaf\\xec\\xe6%\\xbf\\x8a\\xca\\xb7O\\xb1\\xfa\\xfd\\x96\\xe7)3\\xf2\\xe0\\xbd\\xc8-Lm\\x04R^0\\x07\\x89\\xb3\\\\\\xdde\\xd5\\xa6\\xfb\\xdaI[%u\\x89\\xa6\\xae\\xd1\\xd4\\x95tpPI[@\\x1af\\xb1p\\x83\\xea\\xe4\\x07s\\xe2\\xaet8drp@|\\xf1\\xe2\\x83o\\xe9\\xd4\\x1d\\xb4\\x98\\xabjE\\xfev\\xcbZ\\x88\\x16[\\x98\\x8dI\\x8b*\\x19\\x80\\x03\\xfc\\x99/iZ\\x0e#\\x8d)P\\x92\\x01K]6\\xe8P\\xccW\\x82F6\\xaeV\\x8e/\\x0f\\xd0\\xf61@O\\\"\\xbf9YM\\x15\\xfd\\x0d-\\xb2Z,\\x88;\\\\\\x90\\xd87Sih:\\xedi\\x10l\\x1a\\xa3N{\\x9b\\x06\\x17&\\xab\\xd3~\\x16\\xc2\\x86U\\xeb\\xb4j\\xe4\\x8ao\\xdb\\x8e\\xbdA\\xd4h7-\\x0d[-\\x14{\\xd8&\\xder\\xdc\\xa5]\\x822!\\x9c\\x16\\x86\\n:8~\\x8b\\x9d\\x97\\x8c\\x92 \\x8dOZ\\xa0x,\\x80.y\\x1e\\xf9\\xe0\\xab!\\xb6\\xc3\\x86l\\x9e\\x99\\xc0o\\xd8\\xfcv\\xa3\\xfc\\xd5\\xf5k\\xe3\\x01\\x96ukP\\xd4\\xf7\\xdc\\xb58`\\xb1\\xf1\\x06\\xf4\\xd3\\x1cHm\\xf6\\x9f\\x1b\\x9eTb5\\x0fC\\xb2\\x1c\\x12\\x8b\\x8385\\xf8\\x1c\\xa2\\xc5\\x93\\x03\\xed\\xaa\\xc1\\x19\\x8a$\\xe03\\xc5\\xbc\\x0eI2.U\\xd7u\\xc4\\x9d\\x97\\xca\\xbb\\x1dK]0\\xcb\\xac\\xf6\\xefO\\xc8g,q\\x9aD\\xe3/\\x9b\\xc1r\\xd7,\\x02%\\xd4tJj3\\xc2\\xae\\xb3\\x84z\\x99\\xbe\\xa3\\xabS&-\\xe1\\xa3\\xb7\\x16\\x1dV\\xffz 3rh\\x8b\\x9d6 S\\xd4\\xdcB<\\xe9U\\xd0n\\xf3\\xee\\xd1\\x94\\x19\\xc7\\xde\\xd4\\xba\\xd2\\xdc\\xd0\\xe5\\x10\\xec\\xdc\\xc9\\x92\\x9cI\\x1f\\xf1|\\xacTmO\\xfc\\x00D\\x8e\\xd2\\x8c\\xc7\\x97\\xb1=\\x96\\xd2\\x17\\xad>\\xa0Z\\x8c\\x0e\\xc1\\x15<\\x9e]\\xb4\\x0f\\xcel{\\xf3\\x8a#\\xb3<&\\x8b/\\xdf\\xed\\xc3\\xe5Io\\xff:\\x1c\\xb7\\x96\\xb8X\\xa4\\xe7wLJ\\x04\\xffR\\xb5I\\x9f\\xe2\\x96\\x06\\xa95\\xa5\\xc8\\x00r#-\\xda;ZP\\xa7Z\\xec\\xd5\\x8b\\xa5;\\x1f\\xf4\\xea\\x96&\\xa1:\\xba$i\\xab\\xce\\x0e\\xa9\\x8et 3\\xd2\\xe2\\xc8\\xa1\\xe1\\x12\\xd3\\xff\\x90go\\xc0\\x9f&\\xabG_\\xb3x\\x1d-\\x89Wi\\xba\\x0c\\x8b\\x1e\\xa8\\xab\\x1d\\xab\\x0d\\x1en|u\t\\xa9wef\\xf0\\xc8L6\\x7f\\xddM\\xde\\x87\\xe2LN\\xae,\\xd8\\x1e\\xa3\\xdc\\xcc\\xfe^\\x9dW\\nq\\xe6Gy\\xec\\xde\\xab39s\\x95^\\x87\\x8fUk\\xea\\xe9\\xbe\\x84\\x7fT\\xef\\xd5R\\xa5\\xd7Ga\\xad\\xd2\\xebL\\xd7J\\x0dZ\\x1d~\\xa1\\xe0\\xeb>\\xf8n\\xe4h\\xd6G\\xe7R\\xf1h\\xf5Q\\xb8(#T\\xfd\\xf1\\xb5\\x96wU\\x0bG?s\\xe8%\\x07?\\x02\\x0e\\x8d\\x02\\xe9\\x1e\\xef$\\xf2+\\xef\\xaf3\\xa6\\xafH\\x8cT\\xed\\x7f\\xc0\\xb9T\\xac\\x8cG\\xa3\\x0f!\\xbd1~\\x9e\\xc9\\x0bCH\t\\x03\\xef3\\xfc\\xa8r;\\x1e\\x8fe\\x89\\x1c\\xea\\xf2y~\\x19\\xb2c\\x0d\\xec't\\xa1\\xff\\xabV\\xc9\\x9f\\xd2\\xbf\\x81|\\xb9\\x0e2\\xfd\\x1bb\\xbc\\xe9\\x97\\xf7\\xeb\\x12\\xa8h\\xac\\x9fp\\xe0\\x90\\xfc\\\\vI\\xe1\\x99!q\\xd8*\\xce\\x02\\x88b\\xe6\\xb0\\xc8Kn\\xe2L\\xbf\\xf8\\xeaG\\x92p\\xa8p\\xae\\xd9\\xb3 \\x8ae\\xb3\\x83hM\\xc3\\x00\\xa0>\\x97\\xfc\\xdagv\\xf3!\\x81{\\x12\\xf8-Y\\xb3\\x90S_\\xffg\\xfeK\\x9a\\xd1\\xf2\\xed-\\xcb\\xa8o\\xa4\\x14\\xad^\\x99\\xac\\x1e\\xbc\\xbc\\xe5\\xb2\\xa3\\xf0\\xf2>/\\xa1t\\xafW%7\\x18\\xd34c\\xf2G\\x9e\\xca\\x1fj\\x9e\\xc4\\x7f\\x90h\\x13'N\\xf8B76\\xa1\\x19+\\x07\\x06\\x9c\\xf39\\xa6\\x8b_'e\\xec\\xb3\\x1c\\x14\\xf1K\\xd5\\x90f4\\x0cUj~\\xb9\\x92\\xb3\\x92\\xe6i\\xcc\\xe4\\xcce\\xc1J\\x85\\xa2\\x867\\x9e{\\xcbcA>\\x84\\xc5\\xab\\x9ab\\xf8\\xad;\\x08/\\xc5@\\xc0\\xfdX`,\\xd25\\x0f\\xf3\\x95\\xd1\\xd8+\\n\\xb2w\\xf8\\xb9d,t\\xce{H\\x894k\\xc4f;\\xe7\\xe3\\x8c\\x7f\\x8ac\\x96\\x1c\\xd3\\x94\\xb9\\x03\\xb2-\\x18\\xb30\\xf0\\x98[\\xdf\\xacDY>;<\\x82\\x18\\xbf\\xcd\\\\\\xb0\\xc3\\xccxl\\xc9\\xe6\\xa8\\xc0\\x83\\xdcQ\\xac\\xd1b\\x08^J3\\\"\\xb2M\\x9c{\\x90d$\\x88T\\xa1z\\x18_H\\x81\\x1a\\x1f\\x92\\xabYr^\\x04\\xcc\\x06\\xc8\\x9a\\x97\\xf6\\x13\\x85\\x9a\\x8a\\xc4B8pm\\xb5Pv\\xc6\\x10\\x87j|\\x91p\\x0et\\xe9\\xeb\\x97e\\xfdHM\\xa7\\xf6\\x9a.\\xf3,\\x93f\\xc0\\x072\\x00\\xa7\\xda\\xdeFBj\\x1c\\xb92E\\xa02\\x9a0\\xaa\\xd2\\x8co\\xeb_\\xa2g\\xc7\\xad\\x94\\xfc\\xc5\\x86\\x94<G\\x99 \\x9a\\x10:\\x84\\x93\\xe2j\\xc6\\xceqi\\xc1\\xd6M\\x07\\xa9\\xdf\\x9fV?\\x82S\\xa3\\x83\\xa2:V'B?0}Zt@\\xbf\\xacb\\xee\\x0e\\xe8\\x13\\x85\\xd5\\xbb\\xc0\\n\\x8c\\xdf\t\\xe8\\xf7\\x00\\x82\\x93\\xa2\\x03\\xe85\\xac\\xaeN y\\xb0t\\x80\\xbd\\x11\\x87J\\x0f\\x18u\\xe0\\xf4\\x82,\\x0e\\xa3\\x1e\\xd0\\x12?w\\x00~\\x80\\xd3\\xa7\\x0b\\xa8\\xc7z\\xf9\\xa0N\\xad.0}\\xa2u\\xc0},O\\xbb.H8\t;\\x80N\\xe5\\xd9\\xd8\\x03\\xaaG\\x1fN\\xd5\\x99\\xda\\x05&\\xcf\\xdbN(y\\x16w\\x80\\x9d\\x95\\xe7t\\x07\\xe4O\\xe6\\xe1\\xdb\\x01\\xfb\\xb3:\\x98\\xed\\xfc\\x95\\xe0\\x01\\xee\\xc8(\\xffUS\\\\\\xed|\\xa3\\xf4\\xf7t\\xe9Fm\\x12d\\xfd\\xdc7\\x1b\t\\xc1\\x9d\\xee\\xd6\\xcd\\x16AD\\x01\\xd3%L\\x11\\xcd\\xf0\\xee\\xd6\\x0cI\\xa6\\xb7\\x0f\\xf5\\xaer\\x8d#O\\xd7M\\x86\\xfb\\xa5\\xc1\\nt\\xf4\\xb5K>R\\x05\\x04\\xca\\xb2\\x0f\\xa0u\\x1a\\xab`\\xef\\xbb\\xd1\\xf8\\xdb\\x822\\xef\\x00\\xec\\x96\\xc0\\x105w\\xf1\\xdd\\xe6\\xee\\xa5\\xe0\\xac:\\x1a\\xf3Rq]\\xbd\\xc0\\xb2\\xee\\xce\\xbd\\xd4\\xdcZ\\x0f8\\xc9\\xc9\\xf5\\x00\\xec3\\xaa/\\x0b\\x0e\\xb0\\x13\\x90wm]\\x8bkE\\xd2s\\xdc\\xcf\\x0c\\xb6\\xa7\\x0b\\x0fk\\x96\\xa8\\x0f\\\\\\x9fE}V\\xb2R\\xed}\\xb4x\\xc7%=\\xfbxd\\n\\x12:\\xdat\\xd4\\x142\\xf4-\\xd1\\xa7'-\\xde\\xf5\\xfa\\xf4\\xe4\\xac\\xc2n\\xb6\\x7fj}\\xb7O\\xc9 ?\\x1d\\xdfX\\xdd\\xed\\x1b?\\x03G\\xdc\\xfe\t\\xc4\\xe7\\x9a~\\xfa|\\xe2\\x98\\xc7\\x9d\\xf4\\xdbq7\\xc2\\xfc\\x00\\\"\\x8b\\xf6\\x966\\xfd!6E\\xb0Tpi\\x89\\xeb\\xec?q\\xf0@F\\x82o\\xba\\x80\\x80\\x0c\\xe5-\\xd1M\\xc9i5\\x0b\\xa8\\x03,h\\xbf\\xfd\\xb9\\x18\\x0c\\xc9E\\xa5\\xec=\\x08}\\xe1\\xb6\\x9aG\\xf2H,\\xe5\\xbe[\\xa7.\\x1b_dt\\x81\\xde\\x8e\\x11CP+\\xf8h\\xbbx \\xd0\\xc3\\x80\\x04\\x1b\\xc4g\\xfdD\\xb0\\xf4_\\xbe\\x10\\xf7D\\xf1\\xf6:*T`H\\xfcn\\xb0\\xf8RmCs\\x15\\x84\\xe1K\\x16\\xb2\\x8cY\\x86\\xe7\\xde\\xc7&Rcc\\xebet\\xae\\x1cN\\xba\\x83!\\xf1\\xa1i\\x90\\xda\\xd5\\xaf\\xe2\\xcd\\\"{?\\x86\\xd4;\\xca\\xde\\x1f\\xed\\xa3\\x0e\\xecy\\x8b\\xc0@\\xbbw\\x1b{4\\x0cUdu\\x03\\xbalv\\xf1+\\x19\\xd3\\x1c\\xe2\\xc5\\x1f\\x874M]^\\x0f\\x03RH\\x85\\xa5\\x7f\\x84\\xa66\\x08\\x93~\\x89\\x05o\\x81e\\xc7)\\xcb}^^hWnEk\\xeaW\\xfc\\x9eF\\xadyc\\xd1\\\\!^\\x18\\xc4\\x97\\x9c&\\xc07\\xf7\\xf1\\xd3\\xae\\xa5I\\x95\\x82J\\xa7\\xe4\\x90\\xb0q%\\xbd\\xb85\\xad&w-+l\\xba\\x83o9\\xdd\\x81\\xf42lNBp\\x1f\\x930\\x99L\\xfe\\x0d\\xd6n\\xc2\\x04\\x12\\xf7\\xb5B\\xf9\\xb7_{\\xcd\\x8b\\x1fn\\xb9\\xc9\\xc1=\\xec}f7S\\xb8\\xb7\\xaa\\xdf\\xa2\\x11\\xe5\\x11 \\x03\\x05\\xff\\xe6.\\x13\\x8f\\x97%\\xe1_\\xa1\\x024\\x1b|\\xa9\\xb5\\xe4\\xd3\\xb0-w\\xc52\\xda\\x92-\\x8dAm\\xb9\\xe0\\xcb\\x00\\xc5\\x0eD\\xc6\\xb5x\\xcb\\xfd`\\x1e\\x80\\x0b\\x82L\\xc0\\xb9\\xbb\\x93\\xfa\\xc5\\xa0x\\xbc%M\\x8e\\xab\\xa1\\xf7;\\xb7\\xebgv\\x13\\x83\\xe0@\\xcaq\\xa5\\xee\\xc7\\xa1tk;\\xad\\xc5#%\\xb8x\\xfc3\\xbb\\xb9\\xc5W}\\xc1\\xb5\\x9a\\x1f\\xfd\\xf2\\x05\\xd2\\xf3\\xb8\\xd6\\x146V\\x1f\\xe8\\xdb\\x9e\\xabe\\xe0-7lM\\xcb\\x18\\xdcgc+)(:\\xa3\\xdf\\x12\\x03\\xd0!\t\\xbe\\x85Jos\\xff\\xe2\\x87\\xcaI\\xeaM\\x89s\\x92z\\x14\\xb5)\\x00\\xed\\xe9K\\x9aL\\x89C\\x90\\xec7\\xa0o\\xe5\\x1c%\t\\xbf\\x12\\xbf\\x11\\x90O\\xb1\\x06\\xf8\\x84\\x194~T\\x86&\\x00\\xf1\\xd1bj\\xf2\\x92_E\\x1aF\\xde<6AX8%\\x8e$\\xd5\\x90\\xec\\x9f\\xc1X\\xf2\\xfd)\\x92\\xf5\\x96E\\xf9\\x948\\x15\\xcd\\xd7\\x06\\xd0Q\\x1c\\xa7\\x9d@\\x92m\\x9a\\x12G\\xfex\\xc3=\\xccx\\xe2-\\xff\\xfdC\\x12D\\xa0 \\x04\\xf8\\xc9\\xf9\\x14\\x05>\\x8b2\\x81O\\xfcV;\\x03\\x1c\\x05\\xefO\\x89\\xf3\\x03\\xf5>\\xdb,,\\x9eM\\x89sF/\\x91\\x9c\\xc9\\xae\\xe8S\\xc8(f\\x1e1\\xd9\\x13\\x0bC\\xden73\\x9f\\x88nZ|]N\\x9e\\xaa\\xa1J8f?6\\x11\\x0d>\\n\\xd1\\x92\\xa2\\xadR6\\xdf\\xcc\\xdc\\xdd\\x99\\xc2Eaj\\x19\\xd8\\xdd\\xa7m+yo\\xd7\\xb2\\x86\\xf7\\xf6\\xe0\\x9b\\x0b\\x86\\xae\\xcf\\xbdG*\\xd7\\xb2\\xee\\xf6\\x1e\\xc3(a&\\xe1{b\\x8c~\\xe4\\xa8[\\xae\\xbd\\xa7\\x1d\\xdbfo\\xbfu\\xdb\\xec=\\xeb\\xda3\\x8fv:v\\xcc#\\xd1\\xf2\\xd7Q\\xcaP\\x9f9\\x8f\\x9e\\xb4m\\xa7\t\\xac\\x9cW\\x98\\xab\\x91\t\\xac\\x9bW\\xbbh\\x96\\x18\\xccW{h\\x96h\\xcd\\xabGh\\x96h\\xca\\xab\\xc7h\\x96\\x18\\xc6WO\\xd0,1\\x80\\xaf\\x9e\\xa2Yb\\xf0^\\xed\\xa3\\x1bB\\x8c\\xda\\xabgh\\xd6\\x04\\xba\\xbc\\x83\\xe6\\xc9\\xe1@\\xc7c\\x17\\xc6c\\x82\\x0e\\xc8#1 \\xef\\xf2\\x95eEO`\\x8eZ\\xb1\\xc9\\xee\\xae\\xa8\\xe2-\\xcbh\\x0ds\\xe0\\\\\\x9e\\xfd\\x04\\x96^\\xf0?\\xb3\\x1b\\xdb\\x8dn&H\\xce\\x19\\x80\\x9c\\xcb`\\xb7\\x9f\\xd9M\\x93K\\x05\\xe6\\xb7\\x82\\xd1@C\\xbe\\xf4\\x1e_U\\xc8\\xfd\\xdah\\x04z\\xf6\\xdb\\x1a\\xa5\\xfd\\xe3[e#\\x13\\xe5\\x0f\\x9f\\x1cjdF\\xa6D\\x86\\xd5\\x19\\xcf\\x13\\xbe:V\\x04Z= 2\\xaa \\xbb\\x11\\xdd\\x11\\xcc\\n\\xca\\x03\\xc6\\xab6(S\\xe2\\x943v\\x0fN\\xb6\\xa5\\x8e\\xd8\\xbf\\x9e\\x83\\xf1iF\\xa5\\xbb\\x1f\\x96\\xfc\\xeb\\x18\\x98\\xe6j\\x01\\xdd\\x1d\\x96\\xdaHz\\xa9M}\\xd6\\x0e\\xe4\\xc1\\xed\\xa2\\xdf\\x01u'\\xb6\\xe4\\x8e,\\x91\\x8d3\\xa9\\xae\\xed\\xff1L\\xfb\\xbf\\xc5\\x8a\\x8fU\\xa8\\xe8\\xff[\\xc4M\\xff&x\\x82\\x85\\x19\\xfd\\xa5\\x8b'\\xd4\\x88WB\\x1b\\xb2+\\x99 \\xb0(\\xa8\\xd6\\xbd\\xac\\xe6\\x8f\\xd8\\xd8Hn0~\\x8d8\\xa5aF\\x7f\\xdd\\xa8)\\xbf\\xd6\\x9b\\xf2k\\xb5)\\xbf\\xe2M\\xa9A\\xe1@\\xbd\\x9a\\xfb7l)A\\x8e4\\xfc\\xffV\\xcbHp\\x96\\x8f\\x07\\xcde\\xf5\\xac\\x8b\\xde@d\\xe5\\xfa\\x00o\\x8e\\xf5E\\xc6\\xe37l\\xcdB\\x15\\x17xJ\\x10\\x03\\xab\\x8b\\xc0\\x07\\xaf_\\\"{\\x82dW\\\"tLU\\x8c\\x94\\\"\\x04\\x06\\x04I\\x15I\\x10N\\xad\\x1a\\xcd\\xc3\\x86]/d|\\x1bD\\x7f\\xf2\\\"\\xa3\\x0b\\xf3\\x13\\x02\\x17\\x8c3\\xfe\\x86_\\x15\\xda\\x9b\\xf6J\\xb5\\xed\\xf7\\xa7\\x8f\\xaf\\x8b:\\x8c42E\\xd4\\xf6\\x9fc\\xdb3\\xaa\\xed\\xc3[\\xcd\\xb09}\\xd5\\x99\\xa9\\xc7{\\x9e\\x92\\xad\\x9a\\x01}\\x9e\\xb2W\\xc1\\xa5\\x98\\x90\\xad\\xc9}\\xb4\\xc5\\x88\\x1c\\xf3\\xa8\\xae0/\\x8e\\xf9\\x87\\xbf=<\\xfc\\xfea5]0\\xc9\\x0f\\xff\\xfe\\xe2\\xb7\\xad\\xdfF\\xbf\\x8djy\\xb8\\xa1\\xfe\\xf1\\x8f'\\xc7\\x7f=\\xfd\\xf4\\xf6\\xe2\\xe8\\xec\\xec\\xe3\\xc5\\xbb\\xa3\\xb7'S\\xe2\\x08:f\\x04!\\x87G\\x10S9\\xcd\\xd10\\x19\\xbe\\x7f\\xacr\\xcf\\xb8\\x8c\\xa5\\xdd\\x85G\\x88AO\\xe3\\xa4+1\\xaf\\xf62\\x96f\\xa2\\xa2C\\x080\\xc3\\xc6\t\\x8bC\\xea1\\x81P\\x1d\\xe2\\x90mB\\xc7\\xcd\\xf6\\x93m\\xf2\\xdd\\x81\\xf3\\x1d\\xd9&\\x99\\xf8\\xe9\\xfc\\xf9\\xc1w\\xfd\\x02\\x9a\\xd3\\xe8#\\xcbS\\xd6\\xecIW\\x04D\\x1d\\xdb\\xb4\\xb0`w\\xb1v\\xb5wVT\\x02\\xb1\\x89b\\x9a\\xa4\\xecu\\x04\\x81'';\\x83\\xa1\\x0c\\xfe\\x03t|\\xb3\\x17\\xb6}q\\xcf\\\"\\xb5'\\x8f\\x1f\\xefN\\xba\\x90\\\\}\\x88\\x8a8^b\\xb2'C\\xe8\\xe1\\x8e\\x8c\\x14\\xb9#Cz\\xb1\\\"\\xdc\\x96X\\x9b\\xa3G\\xe4\\x01\t\\x9e\\x13N^\\x10\\x8a\\x86\\xf8*j\\xcc\\xcd0\\x83\\x9cl\\x93G;\\xcf\\x9e\\x0c\t\\x1d\\xc8\\xd2\\xb9\\xf8\\xb7}@\\x1e\\x0dH$\\xfe\\xbb\\x99\\xf8\\xcb\\xc6Z }\\x94\\xb9|0 \\xdbh\\x06\\xd9&\\x93\\xb6\\xcc\\xdd\\xb6\\xcc\\xbd\\x012\\xcb\\x19\\xf9\\x8f\\x03\\x92\\x88\\x01\\xf8\\x0f365iL\\xa0\\x8a\\xd4&\\xba \\xc6a{[\\xb5\\x1fk>\\x8a\\x03]\\xf9\\xa9\\x01\\xf9B\\xdcH\\xfd|\\xf1\\x82L\\x9e\\xdc\\x07>2g\\xdd\\x99<\\x1e?\\x19\\xef:\\xb7\\xaf\\xad\\xc3f\\xc9\\x8d\\xdcGO\\x06Ci\\x8b\\x84\\xdb.M\\xea\\xd6<\\xda\\x13\\xc3\\xa3\\x81yd\\xefC-\\xcf6\\x0e\\xbd%\\xd8\\xf1HY\\xbb\\xb3\\x16}9\\x017Q\\xdco\\x19wN\\x81\\xb3*\\xac\\xde\\x0d`\\xbd\\xd9@\\x7f\\xa2\\xa6RT\\xe0f2\\x88\\xf0@\\xa0?n7\\xf7l\\xb6\\x08\\x0d\\xa5%\\x90g\\xe43q\\xea'\\xae\\xf3\\xe8\\x91#\\xca\\x8a_\\x8f\\x9da\\xc5\\x9d\\xc7=\\xc7\\xbf\\x12\\x13\\xb2g\\x19\\xfcD\\xb5\\xe94\\xbf\\xcc\\x12&\\x90\\x1e/\\xc2\\x02\\xdf\\xfe\\xcb\\xd9\\xf8\\xe2\\x82\\xa5o\\xb9\\x9f\\x87\\x0c\\x0c\\xf1\\x862<\\\\\\xc4\\xbc\\x0c0\\xf5\\x87\\x84\\xaf\\x031\\x14:\\xeah\\xb3\\xd5\\x81\\x1b\\xb9\\xfb\\x8fw\\xeb+\\x8f\\x17Y\\x8f\\x06(\\x1b\\x11X\\xcd\\x1aT\\xbcG\\xa3i\\xf2Pkb9\\x15=mJ\\xbac*V\\xfa\\x92\\xe8\\xb8k\\xd5\\xfer\\x9d|\\xcf#\\xaajm\\x19\\xc4\\xc8\\xad\\xdb\\xe7qX\\xd2\\x91;\\xc1\\xb6\\xb4\\xc8\\xd8{\\xfa\\xd8\\xc4\\xa02\\xe9\t>\\xd6\\xf4\\x9f;\\xd6\\xfa\\xdci9\\xf0t\\xcbT\\xd0h\\xe4{[\\xfd\\xa8\\n\\xb0\\x11q\\xabA\\xef\\x06\\x03\\x92-\\x13~E\\\"vE\\x04\\x92\\x01\\xe3\\x06\\xd79\\xa6Q\\xc43\\\"xSB\\x89'\\x18NBSB\\x8b/9\\x08\\xf5\\xa3\\xb8X\\xcc\\xec~\\xad\\xac\\xcc\\xfb7\\x94\\x99-\\xfb\\xc8\\xe6,a\\x91\\xa7\\x9b'>D\\x964\\x8d\\xbe\\xcb\\xc8%c\\x11\t\\xa2 \\x0bh\\x18\\xa4\\xcc'#\\x92\\xe61K\\xdcA\\x05\\xc2\\x93\\xaa\\xf6\\xed\\xf4\\x92\\x0c!YD\\x00\\xdc*c\\x06\\x82+\\x9c\\x12\\x05\\x9a9r\\x194\\xbd\\\"\\xe8\\xf1`&\\x8b\\x0fs\\xd8\\xe6\\x97 \\xcdx\\\"\\xf6C$\\x7f\\xf5r3\\xd09\\xaa \\x05\\xc6[\\xff\\xe0\\x01 {-RFW\\xc3\\xa9\\x18O\\xc2\\xaeA\\x88,\\xd6\\xe2*O3\\xc2\\x82l\\xc9\\x12r\\xc9d\\x05<1\\x96\\xc7\\x90\\x88\\xe5\\x03\\xa6q\\xeaCH\\x9f\\xd98Nx\\xc6\\x95'\\x06u\\\\H\\x07\\x1a.4,+\\x01\\xea\\xc2\\x0e\\xfdx<J\\xb3$\\x97>\\xcap\\x10\\x02\\xeb/\\xcc\\x19\\xca\\xf3\\xea\\x87E\\xf9\\x8a%2\\xc4O\\xdd\\xb1\\x8d\\xf9\\\\%\\xd2\\x13A\\x93U3\\x1f\\x8fG\\xf3`\\x91\\xeb\\xfa\\x9a\\xb7\\xe4\\xa41\\x97D\\x89\\x15\\xa4\\xb5\\xb7\\x1a\\x8d\\x94e\\x1f\\xf4\\x10\\xbc\\x9f\\x93C\\x82\\xa6\\xaby\\x9f\\x02z\\x82!\\xbb\\xb8\\x10\\x87RMH\\xe9fC\\xc2\\xc4\\x17\\xcaa\\x15\\x14\\x00D\\x05V\\xf7\\xb0\\xe6\\x16m\\x11\\xd9\\xe0\\x03\\x0d\\x0bvJ\\xc4B\\x97\\x8b\\xb7\\xd9\\xbfj\\x83\\xaaMQ\\xa4D\\xbf\\x16$chv\\xc2\\xa21\\x8f\\xc2\\x1b\\xd8]\\xa2\\xae8\\x1d{*c\\xd0\\xf8X\\x89\\x80\\xddd|\\xccW\\xd2\\x87\\xf5\\xc0<\\x93\\xca\\x03(\\x1f\\x92\\x1cj\\x04C\\xbe\\x06\\x9b\\xab:\\x1b\\xe8\\x12\\xe3\\xa0\\x88\\xbaU]\\x16\\xba9\\xd3\\xf2\\xd0\\x1c3\\xc9\\xee\\x1be\\xca\\xa6\\x89\\xcfz\\xc6\\x94l\\xfc\\xf9\\xb2\\xaa?\\x91\\xdb\\x1e\\xce\\x06\\xa1U\\xb7K\\x97\\xdaLu\\x05;I>\\xef>\\xe9$\\x89\\xad\\xe7\\x1b+\\x85\\xa5\\xc9\\x90\\xd0!\\x1ed=\\x07D\\x15\\x88=\\xc2\\xdd\\xad\\xc9\\x908\\xc74\\x0c\\x83h\\x01\\xce\\x01\\xe5X\\x81Q\\x1d\\xcdx\\x92\\xaa\\xc0u\\xe1\\x0d\tR\\xc0Hi\\x1e\\x8b\\x161\\x9f\\\\\\xde\\x90l\\xc9\\xc8\\x7f\\x89\\x19\\x1e\\x89\\xf5\\x97\\xfe\\x17\\x89\\xa9\\xf7\\x99.\\xd8\\x98|JYY\\xdf\\x18\\xa4\\x15\\xc5\\xab; \\x19\\x97'c\\xb6d\\xab1\\xf9\\xc8\\xa8OV\\x02k\\xd3\\x8c\\xa8@\\xab\\xf3\\xcb\\xf1\\x8a=\\xccS&E\\x1d\\xa3\\xf2+N\\xfdV\\x0c\\x1f\\x8d\\xacm\\xf1\\xdb\\xe8\\n\\x02\\x83^\\xae\\x04\\xc1\\x0d7y\\x05\\\\@\\xa8\\\\s#\\x18\\xf2\\x92\\xf3\\x10\\xcd\\x10\\x8dE3d\\xa4\\\\4K\\x1e\\xadh\\x96v.\\x8ee\\xdd\\xac.-\\x8d\\xa0\\x11\\xdej\\xe8\\xcf\\xfb9*[dZ\\xda\\x86\\x94\\xd3\\xd4\\x91\\xa5\\xa8\\x94WZ;f)\\xc5#[}\\x90#=6\\\"\\xb9\\x10\\x0f\\x00\\xef\\xc25\\x15\\xc3X\\xbb\\xfaE\\xf9\\xf7\\xa8\\xb6\\x80\\x89\\x94\\x1b\\x8c\\xcd\\x04q`\\x17e\\xef\\x807\\x1aD}\\x13\\xa5\\xa8\\x13\\x8c\\xa6i\\xb0\\x80\\xf0\\xdc}\\x85=\\xcfIF^\\x10\\x9a,@\\xa4\\x9c*1\\xcfs\\x92moc{E/\\xf5\\xa2\\xc0,C\\x0c\\xa7\\x8bO$$\\x88D\\x0fU\\xf3\\xcaciI\\xd3\\xf7W\\x91r4y#i9I\\x89\\x8bs\\x9aI\\xdd\\xf8h\\x96\\x9c\\xf7\\xb8\\xee6L\\xc8\\xf1C\\xa7m\\xc4\\x89\\xea\\x94gvJ\\x8d\\x02\\xf9\\x9e\\xec\\x89\\xf6H\\xae\tpd\\xd9\\xef\\xbdsrX}\\xc5\\xdd\\xa7\\xae\\xc8\\x01\\xf9\\x81\\xf3\\x90\\xd1\\x085%X\\x10e\\x18?o\\xe6\\xdd ,\\x9bN\\xc7\\xa3p\\xeb\\x9b\\x02rH\\xdc\\x1dq\\xe8\\xa9Q\\x18H\tD\\xdcD\\\\\\xe0\\x11\\x05\\\\\\x046\\xbf/\\xe8\\x1do\\x1c\\xe7\t\\xb25\\xaf\\x8a\\xb6\\x81D\\xe5BTq\\xd1\\x04;\\x81*\\xae\\x82l\\xf9\\x91!=\\xbc.k\\x11\\xc3{\\\"\\x86\\xfb\\xa4\tvJ\\x0e\\xc8\\x95\\xc8\\xbb\\x040\\xa4\\xa9\\xc7\\xa2\\xa2\\xedmt\\xaf\\xda\\xf7\\x021$=\\xce\\xb1d\\xc4]A`\\xb7\\x171\\xeafc\\x15\\xa8\\xf5\\x1d]1\\xa9o\\x12\\xa9_NA\\x0c5\\xfdE|\\x15\\x15o\\x13g\\xe0\\xe0l]\\xc5\\x0f\\xa3\\xd5e\\x9e)\\xcc\\xb0\\xb0\\xb1\\xfa\\xe9\\xc9\\xce\\xea\\xe7[\\xb3\\xb5\\xfa\\xd1\\xec\\\\\\xd0\\xe2gl#6W?\\xff\\x02vW?\\xdf\\x82\\xed\\xd5\\x8f\\x1e\\xaf\\xa8v\\xc3\\x8d\\xb2\\xbf\\xfa\\xe1c\\xe5\\xc1\\x9e\\x1c\\x90\\xe3\\xa1\\xc1\\x0e3\\xf5\\xeb\\xcb\\x17\\x92h\\xceX\\xa0\\x8d\\xb0D\\x1b\\\\\\xa7\\x7fw\\xcc\\xf3\\xd0\\x07zo\\x1eD>DVI\\xa4\\xefZ\\xc5\\xb3\\n\\xcaO\\xb9*\\x12|+\\xf0\\x0d\\x84\\xcf\\x89q\\xc13&'\\x12\\xf6*\\xa11\\x14H\\xb8X:z\\xa3\\x88\\xda(y\\xa1Ee\\xdf\\x0fEE\\xec:\\x0e\\x03/\\x10\\x04g,\\xd6\\x96\\xfe2\\xac1\\xf1\\x15A:\\x9a\\x1f\\xf9\\xaec1Q\\x90\\xb5A-\\xe0\\xd33\\x13\\xbcqK\\x19C\\x8c@3fuA\\xa3\\x1f\\xa8X\\xa9\\xb54\\x0dS\\xf4\\xf3UL\\x84\\x172\\x9a\\x1cSo\tfRM\\xe7\\xcf\\x04eh\\xc9\\x06B\\n\\xfd\\xfc{\\n+\\xf4s\\x1fB\\x0b\\xfd\\xf4\\x14^\\xe8\\xa7[\\x88\\xa1\\x9f\\xbe\\xc2\\x0c\\xfd\\xf4\\x13j\\xe8\\xa7\\x97pC?\\xf8\\x9a \\xdfZ\\xd8Q|\\xc4\\x0d\\x04\\x195$\\x81A\\xd2\\xa5K\\x81 \\x8a3O\\xba\\xc3\\xe8\\x12<\\xe8G\\xe3\\xcc+\\x81\\x8b@\\xec\\xb0\\xa4k\\xa6H\\xc4T\\xba\\xcb\\xf0\\x8d\\xbc\\xf4\\xb4\\xd8d*\\x13oh\\xb5\\x89\\x02\\xcf\\xe4\\x99,\\x06\\x15or\\xaa\\xc0\\x89\\x02\\x9f\\x9f\\x07\\x11\\x0d\\xdf\\xd2\\x18\\xea9\\xe3PS\\xa97* \\xf4d\\xb2W&\\xa8\\xfcD;n\\x8a\\x00-\\x97X\\xa9}\\xe1\\x08\\xd2\\x1f>\\xe8\\xf3\\xb2S/\\xc1\\xe1\\xd4\\xfbH\\x8f\\x9e\\xa0\tm\\xcd\\x16D7\\xcc{\\x0bD7fL\\xfa\\x0d>6&\\x9b\\xcc\\x80\\x1e\\x9f\\x85[\\x19!\\x92\\xf5\\x18%\\x94\\\\F\\\\\\xe0\\x16e\\x8c\\xd9\\xc4\\x86\\x85H\\xb5\\x9c\\x88L\\xc9b\\xd8c\\x0e\\x0e\\xc8D\\\"X[\\x85\\xc5\\x05{\\xa2\\xe7\\xab\\xb1Z\\x8bM\\xdaT/ \\xd6\\xc5\\xae-\\xac\\xefa\\xbd\\xeb\\xaa\\xfa-y\\x0d\\xdd\\x7f\\xd5\\xfb\\xaaD\\xf7l\\xaa\\xf1\\xae\\xf4\\xadk\\xd9\\xd7Z\\x8f\\xaf\\xfc\\x06\\xd0\\xb7Z\\xfc\\xfaC\\x9b\\xcc\\x88\\x1e\\xa9\\x1b\\xd7\\x18\\xab\\x7f\\xda\\xea\\xaf\\x0d\\x8d\\xb1\\x01n\\x86\\xfd&\\x04\\xdd\\x03\\xb5j\\xad\\xdb\\xa0R\\xf5f;!\\x87\\xa3\\xa8\\xdcG\\xaf\\xe7\\xef\\x18\\xf3A\\x92\\xd7\\xebp\\x12\\xe3\\xce\\xf4\\xaak\\xee\\xcaR4\\xaf\\xc6\\x01(\\xdf\\xee\\x85\\xa3vWZ\\x9eF_\\xbe\\x90-A\\x7f\\xd3\\x92\\xfe\\xd6u\\x96P\\x03)#\\xa9\\x97=\\x10l@\\xdd\\x95\\xad~\\xd0\\x01\\xa9\\x8c\\xe8}\\x8cIu\\x8a\\xee8,~\\x05o\\xb5\\x8cL\\x05\\xd0\\x1c\\x1c\\xbf\\x86\\xf96\\x1d\\x9f\\xb7,Y0\\xffN\\xa3\\xd3%y\\xc2\\xca\\x89\\xfdzY\\x14hg5[\\x9cW\\x93.\\x0cE\\nv\\xd2XF\\xd8\\x98n6}[\\xb2\\xcaU9xbFNaZ\\xf0\t4@\\xcd\\xe93k\\xd8d\\xf2\\x82\\xf44\\xbfL\\xbd$\\xb8\\xec?_\\xaa\\xed\\xb8LM4&\\x8fR]i\\x9f6d\\xc9M\\xd1\\x88\\xbemX\\x81\\xf3\\x8d\\xfa\\xd7\\xca\\xf10\\x13\\x0f\\x8c\\xfb\\xc0q\\x91,\\xe1\\x964\\xf2CE\\x15\\x8f/\\x83\\xc8\\x87\\xe4\\xc1`H\\x1a\\xd9.\\xe2g\\x84\\xa0\\xbd\\xf9T\\xf9x\\xaf\\xfe\\xf4\\xea\\x89\\xab\\x9bU\\xed\\x9d`'{5\\xad\\x90\\x1c\\xbc\\x0c\\xfc\\xb7<\\x8f:\\xefZ\\xf5\\x03\\x1f5\\xa7\\xc9\\xdd\\xec{?\\x07a\\xf8\\x91y,X#\\x9cD\\xdb\\x87\\xafZv\\x82\\xdcb\\xe0\\x1eF\\xcdU\\x93\\x07j\\xfa+\\xd7O[S?E\\xab\\xdb\\x8c\\xce'd\\xa6L\\x99E\\xafv\\x14\\xf0\\x1b}\\xbd\\x8e\\xbdA+\\xbd~\\x16V\\xd3\\xab\\x18\\xc3\\xc8\\xb0\\x8dc\\x91\\xddd'\\xab\\xf9k\\xe3\\xbc\\xff\\x81\\xb1\\xe8C\\xc2<\\x1az\\xe0\\xca\\xc8W\\xde\\xfakM3@\\x02\\x1e\\x81\\x18\\xa5\\xda(y3\\xcf|\\xa5\\xa5^\\xcd\\xb4\\x13]\\x08P\\x8d/ih\\xe1\\xeb\\xa761&&\\xe8;5\\xa0\\xf8X\\xdb\\xaf}\\x0e\\xb5\\x1a\\xca\\xea\\xcb\\xdf\\x12\\xd0\\xc9=0\\xc6v\\\\J\\xd7\\xda\\xcf>`_\\xa48\\x01\\x88\\xce\\xcef\\xeaBW%\\x1en\\xe3\\xe8\\xfaTG0i~\\x17\\x95_\\x7f\\xb2\\xe4f\\x03hb^M\\xd08\\x0eo\\\\\\x8b\\x10\\x07{\\xbe\\x12\\x8f\\xb6{3\\xb6=\\xea\\x9b\\xcb1\\xc8\\xd3\\xe4\\x81\\xbd\\xec]\\x83]\\x9ee>\\x8aZ\\xb1\\x91\\xf3rWtPL\\xfa\\x81\\xe5Q8\\xd7\\xecW&\\x82\\x9b\\xae%F~\\xe3\\xbb]\\x8d\\xc6\\xa0?\\x1ei\\x17\\xfb\\x91^C\\xd5\\x0b\\xa7\\xa5z\\x07\\xf6\\x9bfS\\xa6\\x8dS@\\xe6\\xf3\\xb5}\\xc5\\xb5H/\\xfb\\xe0\\xad\\x05\\xcb\\xa4\\xbd\\x95\\xaf\\xd5\\xab\\xfbb/\\xcdaT\\xaf8\\xae\\x87\\xc49\\xe3\\x84z\\x1eKS\\xb8\\x94\\xb8\\x92\\xd5\\x17\\xb7_Cr\\xc3s\\x121\\xe6\\x93\\x8cC\\x04\\xff`~C\\xfe \\xeaZsJ\\xb2$g\\xe4+\\xa1\\xb2\\xf8\\x9c\\xe7I\\xb6,.\\x87\t\\x10\\x91p7\\x02\\xf7\\x8b\\x03\\xb8G\\x1a;\\x83\\xe2 \\x98\\xa7\\xe3\\xabj\\x8f\\xfa\\x8cC?\\xd5.\\xfd\\xe8kN\\xdb\\x81\\xd8\\x8e\\x88\\xa3\\xb2ds]\\xb5\\x17\\x0d\\xcc\\x8f\\xb6,\\xff\\xf6Zh\\xe5\\x14\\xb0\\xed\\xb9\\xf6:r]G\\xed\\xe8\\xb5\\xef\\xfe\\xe2\\xb8\\xb3P\\x10\\x93\\x0e\\nb\\xd2\\x7f\\xe7oFAP}OC\\xdb\\x05k\\xa9\\xdc\\xf3\\xad\\xc3\\x12v\\x84A\\x82\\x031\\x07\\xac\\x97je\\x01y)\\xd3uF\\x0e\\xa1n\\x13\\xb6U@\\xd4!$\\xf4\\x90\\xe8\\x88\\xf5g\\xae\\xa2%\\xda\\xf2\\x03r(\\xeb\\xd9!S\\x02\\x9c\\xa9\\xeb\\xe9Ua;W\\\\\\xc1;\\x85\\x00;\\xaf\\xc2\\xa2\\x12\\x14\\xb7\\xed*\\xb6`\\x92\\xb7\\xb6\\\\\\x0f\\xb4>`4\\x07\\xc5\\x10YE\\x0f\\xae\\xe4\\x8dsrHr2U\\xcb\\xb2IC^+\\xcd\\x0f\\xae\\xae\\xcfT\\x0e\\xf0\\x18\\x89\\xfb\\xc7\\xd7&\\xa9\\xdcu\\x9f&\\x03O\\xd7\\xf0\\x13\\x1e\\x01\\x83\\x00\\xee\\x1f\\x88\\xe6Y\\x9aP\\xff\\xf8\\x00'\\x86\\xed\\x8cE#\\xe3\\xab\\xcbQ\\xadS\\xfd\\x14\\xfaZ\\xa6\\x9e\\x06\\x848\\x8b\\xc6\\xea\\x18)\\x8aK\\xb2%\\x1a{mJ\\xa2\\xfa\\xa9+\\x8b6[&\\xaa\\xb2\\xeb\\xbanR\\x8f\\x18\\xce\\xb4<\\xb1\\xa2!a=bVi\\xc5\\x89\\xa6u\\x87\\xc0\\xc9\\x9e6\\xe2\\xa8fQ\\x95\\xb5\\xff\\xb8\\x91\\x95\\x17YO\\xeaY\\xa2{\\xae\\xa7m@\\x86\\x00\\xb6\\xbb\\xfbT\\xff\\xdc\\x7f\\xfctP/\\x12\\x16\\xb5\\xed\\xe3V#\\xde?\\xdfjd\\xde\\xc9\\xc6k]\\xed\\xba\\xd2u\\xe55\\xee]\\x0d\\xba\\\"4\\xeb\\x8b\\x91Z\\xad\\xdf\\xf5{\\x8a\\x1c\\xb5\\\\\\x10\\xf0A\\xa4\\xc2:V+\\xae\\xae\\xa2ec\\xf5\\xaak\\xf3\\xaa\\xfd~\\xb5\\xd0\\x9a\\x1c(\\x0f\\x01\\xf7\\xa3\\xf58\\xb4+\\xf5\\xd5;\t^\\x82\\xa4K\\xdb\\xe2\\x96\\xaa~\\xc4i\\xc6\\xacjQ\\xd7<^\\x92\\x1aL\\x1d\\xc9\\x80\\xf5\\xa1\\xd6\\x18\\x14\\x9cf\\xa2^\\xca/\\xd7\\x0e\\xa4B=\\x92\\x97U\\xdbT#\\xa5\\xf9\\xed\\xces\\x12\\x90\\x17$*\\xd43\\x83\\xed\\xed&\\x8e\\x04\\x9e\\x86+\\xcd\\xa0!\\x89f\\xc19\\x08\\x93\\xd8L\\xfc<\\x97w/\\xf2\\xb7\\xb5m\\xc5`\\xd5v\\xc8\\xb7\\x9dB\\xcb>/\\x00P\\x86\\xd9\\xa0\\xe6\\x13\\x10t\\x1e\\x010\\xd8\\xfe\\xf3$\\x95\\xe7MO4\\xa9\\xbc\\x11>U\\xa2\\xb5\\x8e\\xdeB\\x89\\xb2\\x82V\\x1a\\x1c\\x1f\\x19b\\xc8Ep$\\xd0\\xb0V\\xb0\\xab\\x91x\\xbd\\xa0\\xd4\\xb8\\xc3\\xb1\\xdb\\x02U\\x9e\\x92v\\xa0\\x05\\xcb^\\xf6\\xaa\\x0d\\x00\\x93`\\xcd| \\xab^%|\\xd5Qb\\x15\\\\\\x07QK~q\\x9e\\xdaA2P\\xfcFXiD;7\\xb3\\x8e\\x7f\\xd4:\\x02r\\x1f\\xb66Sn\\xe7\\x96Y\\xa3a\\x08.(\\xda\\xf2[\\xca\\x17\\xba\\xc7m Av\\xd3w(\\x0c\\\\\\xe8\\xb3y\\x10\\xb1\\x02\\x055w^\t\\xba`\\x99\\x81\\xad \\xe6Z\\x13\\x9e\\xdb\\xe0O\\xc1\\x04\\x01)\\x11\\xd8J\\xbcd\\xa9\\x97\\x04q\\x86\\xf1z\\xb4R\\xc8\\xd0nj\\x82\\nR\\x86\\n*\\x82*=)\\xdcJ\\xbf\\xa0ER7\\x1c\\x12oH\\xe6\\x18\\\"\\x02\\xdd:ihaj\\xd6y6v\\\\\\xc0\\xa3v8\\xfa\\x11\\x98!\\x06;[\\xaf\\x85\\x97\\x88E\\xfbc\\xc0\\xea\\xc0\\x9dA\\x1bc\\xd1F\\xb4\\x08.[\\x11\\x9f\\xf2\\xc1\\xc5\\x87\\xedS\\x9c\\xe8\\xe8\\xc0\\xbe \\x8c=\\x9a\\xb9\\xdc\\xf5\\x066.\\xa78\\xdc\\x96\\xf2\\xdcZ\\x92\\x17\\xc4/\\xce\\xad\\xed\\xedeW\\xc7\\x05\\xd9\\xe0\\xcf\\x96\\x88Y\\x81~\\x94r\\xf2l\\x0d\\x0e\\xeb2\\xf5\\x7f.\\xda9\\x9f\\xad\\xcf\\xad~\\xeb\\xf5#\\xbe\\xb2\\x02\\xfbpoH\\xd6\\x1d\\x02\\xc3~\\xe2\\xd7H\\x8c\\xfdzHV\\x1d\\x92/S\\xbe\\xba\\xb1\\x18\\x0cMU+\\xb5)\\xf1o\\x82\\xa3\\xa0\\xc6\\x91X\\xf5\\xbe\\x94\\xb8\\xbd\\xce\\xc2n\\x0f\\x14\\xf5\\xd2`\\x8a\\xc6\\x87$\\xc0\\x0d\\xd2\\xb4\\xe6vs\\xd0A\\xa0\\xd1\\x9c-Q\\xc0\\xb0D\\xc8\\x062\\xd6-\\xbb\\\"Jy\\xf5m\\x10\\x817C\\xc2\\xae=\\x16\\xc3~\\xe6\\x9e\\x97'\t\\xf3\\x9f\\x13\\xd1\\xfcl\\xc9H\\xc4\\xa3\\xd1J\\x03\\xfalMX\\xb4\\x0e\\x12\\x1e\\x01_-\\x165H\\xf6\\xf20$\\x10\\xd4\\x94\\xacX\\x9a\\xd2\\x05#4\\xf2\t\\xf5}\\x88xBC\\xb2da<\\xcfCrE\\x93(\\x88\\x16\\xe9\\x18\\xd3\\x16ga\\xca,\\x8bJ\\xf4QpF\\xb3\\xfa0\\x9d\\xdb\\x05\\x1f\\x1e\\xec44\\xdb\\xad\\x0eEV\\xf8\\xe5y\\xf8\\x1f\\xe9\\xc3\\xc5\\xb0\\x9f\\xe8P\\xaf\\x9b\\x99\\xb7\\xbd\\xdd\\x0c\\xe0@$\\xd3?\\x90v\\x0f\\x07\\xc4y\\x1d\\xadi\\x12\\xd0(#?\\x05\\\\\\n\\xaf\\x10\\x03\\x88F\\x8a\\x94g\\xa5\\xe3y\\\"\\x0e\\x913\\xfe\\x81\\xc7\\xd2\\x1bMj[\\xaf}\\x96\\xa7I\\xdc\\xd5}\\xbf\\xeb\\x88\\xcbu\\x97M\\xd2\\xecr\\x7f\\xbf\\xee\\xedDz-iT##.?\\xab\\xf3\\xd8\\xa9\\xaa\\xa5n\\xea)\\x03.\\xef5j\\xf7Tz\\xbd\\x1e\\xc1\\x93\\x86n\\xe7\\xf5\\x91fg\\xfe\\xf8\\x8a\\xef\\x10\\xc4AJ\\x13P\\xaf>L\\x84&\\x1dAe\\xc3\\x0e\\xaa\\x9c\\x18\\xeac\\xd2-\\x8a\\xb4\\x8f\\x0e\\xe1Z\\x1b\\xe4\\x81\\xa5y\\xd5d0\\xc4l\\xfc\\x07C\\x92\\x8b\\x8ez\\x82!\\x03Ec)~\\x13\\xfd\\xe3n4$O\\x87$\\xc5\\x0e\\xa0\\xe2\\xf0\\x99\\x1b\\xdfyN\\xe6\\xa3\\xd1\\xf3\\x01\t@\\xe5o6?o\\x91\\x12U\\x97\\x9a\\xcd\\xec\\x16]x\\xe6`\\xf4\\xf6-W4Xtm4\\x19\\x12-\\xe2\\x85\\xa9\\\"\\x87d\\x07t\\xb2\\xcb\\xe33\\\"/H\\x027\\x94J\\x97\\xcee\\xb3\\xe8\\\\r\\xf1\\x83\\xe78\\x15S\\x8f\\xb1\\xda{\\xcb4\\xd6\\xb4\\xdc1O\\x1eu\\xd9#c]5e7\\xb0\\x8e\\xb8\\x9b\\x0d*\\x82\\xac\\xfbi\\xdd\\xde\\xd3\\xfd\\x7f\\x8b\\xe65B\\xa4\\xcb\\xe6M\\x1a\\x11\\xd8\\x15\\xbayRG\\x14\\xb4[:\\xd0\\xd5O\\xf4lM\\\\V\\x06q\\x0c\\x1a\\xbe\\x8d\\xf4E\\x11G\\xa5!b\\x9d\\xce\\xce-\\xf2\\x8c\\x1c\\xac\\x81\\x06\\xaec\\xd8`\\x00E\\x9c\\x83\\x02\\x1f\\\\\\x04P)\\x9f`\\xe2\\xe4\\x07\\x89v4\\x8e\\xf3t\\xe9\\xe6\\xf8\\xda\\xed2\\xa0\\xed\\xdeu\\xf51\\xd0\\xfd\\xab\\xf7\\xa2@\\x92[\\x07u\\xe9*\\xa9\\xee\\xd4 R\\xf3\\x02\\x03\\x99\\xc9\\xf6\\xd7U\\xf54\\x0e\\xdcl\\xf9tD\\xdc\\xd6n\\x9a\\x90\\x89\\xe1\\x10W[\\x19\\x9b\\x1dT\\xcd{d\\\\'\\xc3\\xab\\xa4H\\xc3\\x99.\\xa0\\xf6\\x91z\\xa4\\xc8\\x15\\xeaa\\x95z0+q\\xa2\\x9c\t\\x04\\xe5\\x84\\x1c\\x88\\xaa\\x0fI2\\xfe!\\x9f\\xcfYB\\xa6\\xca\\xec\\xd3\\xc6\\x9a\\x1d\\x12:\\xa6a\\xc8\\xbdOQJ\\xe7\\xac\\x80\\xaf\\x0er\\xef\\xddMH\\xddi\\x97\\x8eQ\\x8e\\x1c\\x06\\xebB#])#7 \\x88b\\x82\\xe16\\xc6\\x8d@\\x13\\x99]\\x11\\xd0\\xf3\\xd6\\x0b\\x1f\\xd5\\x1d/>\\xee\\xf1\\xf8\\xc6M\\x06C\\xab\\x97\\xb9\\xaf\\x83R\\x90\\xe7N\\xf6\\x1e\\x0d\\nw_\\x9bo\\x01d@\\x8c3\\xa7\\xd9H\\xa3\\xef\\xc8N\\xcf\\xa4\\x82\\x1a9 GIBE/\\x06\\xc5\\xc9\\xf4|@\\xb2Yt\\x0e\\x81\\xe1\\xa3\\xf3\\xfb\\xd8\\x11\\x9d\\xf8~\\xb2\\x7f\\x97\\xe3(\\x11\\x99\\x80\\xeaLY\\xe1\\xfd\\xb4l\\xefi\\xa7\\xe3\\x8e{jY\\xbdY\\xd1\\xfd\\x1f\\x1d\\x1am\\xda7E\\xa2X\\x8d\\xea.\\xb0HV\\xa4\\x11\\xac\\x16\\x9a\\x18xf\\xb6s.O\\x05}L8A\\xe4\\xb3kGj\\x06'cx\\x83v\\xc0\\xaf!\\x11Iq\\x9e\\xa9\\xa48\\xcf*\\x9bj\\xc3\\x99\\xdc\\xdd\\xc5\\x99\\x84\\xfd\\xa7ur]\\x9d\\xdaOq\\xd7\\x86\\xfbO\\xf7P.a\\xffi\\xfd\\x94\\x17\\xa3\\xee\\xcc$\\xc2\\xd5\\x8e\\x02\\xce\\x9d&\\xcbP\\xc0\\xbc\\xa4\\x19\\xab\\x03x&\\xc0[\\x1a\\xd7\\xf3\\xe7f\\xfe;p$R\\x07\\x89M\\x90\\x8flqr\\xdd\\xa8\\xc57ANYV\\xcf_V\\xf2aj\\xeb \\xeb\\n\\x08H\\xff\\xea +\\x13\\x040\\x8c<2\\xeap\\x8b\\xda\\xa0\\xd0\\x9f\\x02vU\\x07\\xba1\\x81^\\x85\\x9cf{\\xbbPg\\x1d\\xf0\\xb2\\x01\\xf8\\xe4\\x11\\nxa\\x02\\xbe\\x8e\\xb2}\\x14\\xea\\xaa\\x065y\\x82\\x82\\x9d\\xd4\\xc0,\\x8d\\xbb6\\xc1>\\x05\\xb6\\x8f\\x9e6\\xc0\\x8eC\\xba\\x8a\\x99\\x8fB\\x1f\\xd7\\xa1-m\\xfc\\\\\\x87+\\x1a\\xd9\\x85B\\xec\\xde6\\x8e`\\xb7\\x1ah\\xa2\\x8a#\\xd2\\xab\\x00\\xa4d\\xe81\\x0e\\x01OWx\\x9c\\xd3\\x12u\\\"g/\\x14L\\x9b\\x05!=l\\xadP\\xa0\\xb5#w\\xdbZ\\xeb\\xa2\\xb54x\\xac\\xc7\\xa8\\x01({ci\\xd1\\xa5%\\xfd\\xc2\\x92~eI?\\xb1\\xa4_[\\xd2O-\\xe9\\xc7\\x96\\xf4\\xcf\\xad}\\xcf[\\xfb\\xeeu\\x8f\\xba\\xa5\\xe4\\xdc\\xd2\\x9aew\\x8d\\xf6\\xc5\\x11\\xb7\\x16n\\xb2JEA\\xbf\\xfb\\xab\\x96\\x92\\xeb\\xd6\\x92\\xd4\\xb5\\xeby\\xc0\\xaf\\x8d\\x0e\\xb6\\x1e\\xfb\\xd5F&f\\xe0\\x8c\\x96\\x8d/\\x01\\x15KCq\\xf9\\x1b\\xe7\\xda\\x9a\\xc4\\xf0P\\x94\\xb8\\xc9\\xd8\\xfb\\xf9<e\\x99~{#o\\xca;z\\x85\\x917\\x0f\\x7f\\xbb\\xfa\\xcb\\x9f\\x1fvu\\xc9F\\xc54\\x1b\\xc8\\xc6)\\xcf\\x13\\x0f\\xf4\\x7f\\xd85\\xf3\\x04\\xb9\\x8dS.\\xe3\\x90\\xa6\\xd9\\xeb\\x82\\x0c)\\xde\\x86\\xb7'm\\x1b\\\"H\\xae\\xcc+\\x13\\xc31\\x02\\xce2I\\xa6\\xed\\x90p\\xa9k\\xfc~\\x8e\\xb0J\\xfd\\xc6F/\\xf3\\xc2G\\x80\\x1b(\\\"\\x0cT\\xba\\xfe\\xf8\\x9f\\xb4\\xf6\\xc2^\\xeb\\xce\\xda\\xa3\\xfd\\xa7X\\xd8B\\xd1S\\xdc\\x85\\xdfd\\xefI\\xe7\\x08X\\xa6\\x03u\\xdaQ\\xe9\\x9f`\\xc7\\x02\\xe9{\\xff\\x8f\\xaf\\xe0*\\x9ao\\xee\\x1a\\xbaCnUq\\xc9\\xd1\\xecaQ3v`\\xebL\\xc2\\\\\\xf4\\xd6Ku\\xb4\\xa8\\xa3\\xdd\\x85m\\x02~\\xb6U\\x19L\\xd8\\xad!\\xf9\\xa0<\\x7fm\\xf6\\xe7U\\xbf#\\x16E`\\xbd\\x0eaa\\xe1 \\x05[oV\\xa7vkw0\\x00\\xd7\\xb26z\\xc5\\x1e2\\x17\\xa5E\\xe2\\xb8oY\\x94\\xfbu^\\xc7\\x10\\xdc\\x04\\xe9[\\x1a79\\x18\\n\\xd1M)x$\\xc7\\x1b\\x9do\\xd6\\xe8IC\\x98%\\x1b\\xdd\\x88\\xa3\\x114X\\x9c[n(\\x08\\xce\\nB^\\x08\\xd6`\\xa8\\x94n\\xb8Q\\xf6\\x1bW5w\\x1a\\xefS\\x96\\xfd\\xdb\\x8e70{\\xff\\xea\\xf1\\xb6\\xdc\\xdf\\xed\\xef\\xd7Yp}\\x7fWg\\xc1\\x15k\\xbe\\xd3\\x89\\x8a\\xedB\\x99\\xe2\\x12\\x0c.\\xa6\\xd4=\\x8d\\xcb@\\x99\\x00\\x8a\\x81\\xc2\\x9d\\x8aw\\xcff\\xd4\\x15\\xb8gp\\xde\\xd1\\xe5n\t\\x9e\\x95\\x8e\\xb1]\\x15\\xe1\\x8d?$l\\x96\\x91\\x11\\x99\\x9c\\x17T\\xc2mgc\\xd2\\x08\\xa5\\xad\\x8e\\xc0\\xfd\\xc9]\\xc6W\\xdf\\x0d\\xbe \\xbbJ\\xa9W\\xc9\\xc1\\xb2\\xa1\\xc0\\xa5\\xa3\\xc9\\xed\\x0f\\xb6\\xdd\\xdd\\xa7\\x9d-\\xb3\\xcb\\xe2\\xc4\\xf1\\xaa\\xb4\\x0c\\xa6\\xb7\\xbfQ\\xdb\\xdf\\xbf5!P\\xdcMH\\xe5g5N\\x87r|&\\x02C\\xcc\\xba\\xd6\\x99}2\\x1b{E\\xef\\xad\\xae!#\\xcc\\x95:\\x1d\\x16m\\x8e\\xb52B\\xc1\\xe4\\xcc\\xe6epu\\xc1\\x82\\x9c9\\x0093\\xd0\\xb7\\x83\\xa1\\xbcBrs\\xb8\\xb8\\x01ysJ^\\x90\\x10\\x0d>\\xb3V\\xc6\\\"\\xd9,E\\xb4\\x88\\\"\\xf2=\\xd9\\x01\\xa4\\xebz\\x03\\xf0`\\xf2=\\x99\\x88\\xb5\\xe6zC\\x12\\x89\\xcdatF,\\xbf|H<\\xf1\\x8b\\xca\\x16\\xccr\\xd5\\xe4sr@<\\x1b{F\\x0c\\x16\\xf8\\xb6\\xb3\\x82r\\x05b\\xb2\\xea!\\xdc\\x95\\x9fh\\xec\\x02Q2\\x11Az\\x0c\\x9a[\\xa7q\\xc2\\xa8O/C\\xecBe\\xa3\\xd5\\x08\\x04\\xe7\\x97/\\x12\\xbb\\x7f\\xf9B\\xb6\\xb6\\\\Z\\\\\\x11\\xb1\\x19=\\xef\\xda\\xa6\\xdd8\\x0f\\x17\\x1fi\\xd9PThY7\\x17\\x00p\\xd6;\\xad\\x9c\\xb5\\x8e\\x1f`\\xe3\\xe8'\\xbdJ\\x0fI4\\xdb\\xc1\\xf4\t\\xa0\\x8e\\xdd\\x0d\\xea\\x10\\x7f'\\xd6\\x9a\\xf66\\xaeI\\xfc\\xdd\\xed\\xe5=W[\t\\x8b\\xb1\\xbe\\xedJ\\xdd\\xb7\\xdd\\x80<\\xc2\\x97\\xea\\xe4\\x19\\xa6[#\\xd8\\xd8\\xd6C\\x82\\xd4djN\\xc6\\xa5\\x98\\xd9i\\x89dP\\xf1\\xaa\\xd7DB\\xe2\\xe9\\xe3\\xd9O\\x19<\\x08\\xf6\\x03\\x070\\xdd\\xfd5\\x00j\\x16\\xb1\\x82M\\x0b\\xf0\\x9d\\x87\\xc7\\x00\\xeb\\xde-\\x96}\\xda\\xca\\x99\\xe9%`Y%\\xdd\\x1bW\\xb3F\\xfb;\\xb5\\x91\\x15\\xcbb\\xf2\\xa4\\xb9$^\\xd2\\x8c\\x8d#~\\xb5)\\xd6\\xd1\\xf4\\x0e2\\x81AS\\xfb\\xadO\\xdf\\xd7\\xda\\x11\\xa8\\xcd\\x07A\\x0e\\xd8sD\\\\JF\\xa8\\x7fZ\\xc1dB4\\x1cq8}Ov\\xb0\\xafh\\xb8\\xed\\xed\\x8c|\\x7f@\\n\\x83s\\xc3s\\xf4NS\\xa5\\xee\\xab\\xd4\\x10\\xccp\\xbd\\xbe\\xda\\xc6\\xd5lfQ\\xe3=I\\x0c'\\x8fp\\x19Gc\\xab+r\\xfb\\x19Nn7\\x98\\xd2\\x9c\\x1c\\xa0j0)\\xa47\\xb4`\\xc2\\xee\\xab\\xccj\\x01\\x0f\\x88\\xf1N<\\x02J\\xd8n\\x06\\x87\\x97\\x8c\\xdd\\x054f\\xaa\\xb4~\\x9a\\xc3.\\xa6\\x04\\x9d\\xdf\\xaafH6 a\\x89\\x8f5\\xe7\\x03$R6\\x8b\\xea\\x18\\xd9B]y\\x9bM\\xd5\\xfe3<\\x9e\\xc4\\xdeN\\xf7\\xd5\\xb8\\x95\\xe2-@\\xb0S\\x98\\x18\\xdf\\xc7H;\\xa2\\xd7E\\xab\\n\\x85\\xe4\\x7f%\\xf9\\x15\\xcd\\x82*cb\\xdf\\x95\\xa2\\xc8.\\x14\\xd9=\\xb7(\\x86\\x10=/\\xd4\\xb8\\xb2\\xd6\\xfe\\xdcQ7O\\x82\\xd3v\\x83\\xd1\\x08l\\xab\\x8b6H\\xcdz\\xee\\x9a\\x07k.\\xaf\\xa2e\\xe3_\\x90=\\x931\\xa0\\xd2^\\x0b\\xf4\\x1a\\x8b\\x85+\\xa8\\x0c\\xb2\\xbd\\x9d@\\xb0@\\x1b\\x96\\xd0\\x84r4K,\\xaa\\xef`\\xae\\x0c\\xe4v*\\xa3y4\\x95\\x94\\xac\\xc2\\xb5ZH\\x83[\\x1f\\xf4\\xcd\\x83[\\xad4\\x0b\\x13\\xbe\\xb7o\\x8b(\\xd7\\x87\\x1b\\x0c\\\\\\x1d\\xec9\\x11\\x9b\\x92l\\x13\\xc7\\xd9\\xb0\\xe9]\\x91X\\xf6\\x9f\\xe1Xn\\xff\\xd9SK\\xd8\\xb8z[\\xc1~\\x19P\\x93\\xc7CRuT\\x14\\xd2t)CA\\x94\\x894\\xcf\\x96\\xd5\\x94%Ok\\xee\\x7f\\xc4 5a\\x94\\x82u\\xc5\\xb1QZ\\xab+e4\\xf1ji\\xff\\xc8YrS\\xfb\\x00\\xcd\\x96\\xcd\\xeaDj\\xed\\x03\t\\x9b\\x93\\x9aK\\xa1r\\x91ec\\x08\\x81J\\x0e\\xc8\\xe5\\x90d\\xe3\\x84\\xa5<\\\\w\\xbatU\\x93\\x0b>\\xee\\xb6&\\xe0\\xd7M\\x175}\\xd5|5\\xaa\\x94\\xfb\\xa8g\\xc5\\x8c\\x1c\\xa2\\x95\\x17\\x9b\\xb1\\xe2a\\x1d>3\\xe7\\xc9\\x8a\\xb6\\x9b$\\xf2q\\x90JbS\\xc9\\xb3@\\xeasi\\xbd&\\xaa\\xf8\\xce\\x0f \\x02\\xb7\\xfc\\n\\xc4X6\\xfdx\\xc8d}\\xd5Rm\\xd8\\xa7D,\\xa9\\xa0\\xbar)\\x84\\x0evgt\\xf4\\xfb\\xce\\xe8\\xd9x{t\\xbe=\\x1d<\\x0c\\x9a\\xc7\\xec\\xc3\\xe9lg\\xf4\\xec\\xfc/\\x7f~\\xd8<j\\x1f\\xfe\\xdd\\xfd\\xed\\xe1o\\x0f\\x0f\\xdd\\xc3\\xad\\xdf\\x1e\\x0ef\\x7f\\xff\\xed\\xf0\\xb7\\xf4\\xfc/\\x03\\xf7\\xb7\\xc3\\xd9\\xdf\\xe1\\xd7a\\xbd\\x14\\x98%8\\x7f8C\\xe2|\\x15\\x7f\\xbe\\x88?\\xbf\\xfd&\\xfe\\xfe]\\xfc\\xf9/\\xe7\\\\\\x1b\\x08\\xcd\\x9c\\x17\\\"\\xe5{gH\\xbes\\xbe\\x83<\\x88\\x03,\\n$\\xf07\\x82\\xbf\\x99s>h\\x9e\\xde3\\xe7\\xbb\\xb2\\xaa\\xb0\\x060\\x07\\x80\\xff\\x10\\xc5\\x1f\\x8a?\\x87\\xe2\\xcfs\\xf1\\xe7\\x7f\\x95\\x85\\xbcZ\\xa1\\x18\\n\\x95\\xf0\\xff\\xcb\\xa9\\x99S\\xf80\\\"\\xb3m9\\xa4G\\xa3\\xbf]\\x8c\\xce\\xff\\xd8\\x19>\\xd9\\xfbZ\\x1f\\x85\\xa5\\x1a|\\x04t\\xe0\\x8e\\xff2\\xa8\\xc3\\xafQ\\x0b\\xc3\\xff\\xa6k*\\x0d\\xd9p\\xae\\xc41\\x00\\x9c\\x06GQ\\xb3\\xde[}\\xfbO,\\xd0O@\\\\&\\xb4r\\x91c1L\\x9c\\xdb\\xca,x\\xbc\\xb4\\x19D\\xce\\x03\\x1b\\xff\\xe6@#\\x9c\\x96\\xcc\\xd4\\x9a;o)\\xa9Zc-*\\x1a\\xd49l7\\xea,\\xf9\\xff\\xd9{\\xd7\\xfd\\xb6\\x8d$q\\xf4\\xfb<E\t\\xd9q\\x80\\x10\\xa4H\\xc9W\\xda\\xb4\\xd6\\x91\\x95\\x8df\\x12\\xdb\\xc7\\xb2gv\\x0f\\xad\\xe8\\x0f\\x91M\\x121\\x08p\\x00P\\x97\\x8c\\xbd\\xcfr\\x9e\\xe5<\\xd9\\xff\\xd7U\\xdd\\x8d\\x06\\xd0\\x0d\\x80\\xb6\\x93\\xc9\\xec\\x0e>\\xd8\\\"\\xd0\\xf7\\xae{WW=4\\xf2\\x92K\\x9b\\x8d\\x83\\xae\\xafs\\xc1c\\x10f\\xca\\xd5\\x98\\xcc+:UiJ^+\\xbd\\xf1B#uJ\\x89r\\xab\\x01\\xd4]\\xe6p\\x1c\\x1a\\x95\\x92\\x94\\xbe\\xcd>#.\\xa1k\\xc4\\xd2\\x92R\\xe0U\\x90\\x06k\\x96\\xb3\\x14\\xbe\\xde\\xa6\\xd1\\xd7\\x94Q\\xe0\\x92A rV\\xd5\\x12\\x08\\x98\\x1c\\xd5\\xc3\\xc2\\x13\\xf0\\xe5\\xc2u\\x8e\\x1c\\x832\\xb7E\\x19\\xb5Hq\\xc6\\x856\\xad\\xceW\\x8e\\x07G\\x9c.\\xc0\\x98\\x13\\x86z\\xfd\\x882el\\xa20\\xafy\\xa9G\\xd3\\xe19L\\xf0\\xbf\\xe2j\\xd5\\xbbw\\xfbK$O\\x86\\x01_b\\xba\\x9f\tD\\x83\\x9f\\x930\\xae\\xb5\\xc7W\\x8f\\x17\\xb9\\x1c\\xe4i\\xb8v=\\x1f\\xf60\\xd5\\xb8L[L\\xa3\\xe0cn0\\x7f\\xf1~.`\\x02\\x1992\\\\Zt\\xd7\\x8br\\x00o\\xc1\\xfc/\\xcb\\x9c\\xff\\xb2.0\\\\\\xa0\\x14|\\xc1\\x85\\xef#\\x19\\x08MJ\\x1d\\xfcmE\\xea\\xc8\\xe1\\x08n\\x05\\xb8i\\x851li\\x9e\\xba#O\\x05\\xe16~\\x80\\\"\\xda\\x9a\\xec\\xc4q*]\\xfc\\xfd\\xa3\\x88#S\\xc6\\xc5\\xda\\xe2_sm\\xdd\\xbc(\\x18\\xf9\\xcf\\xb6\\x98'0\\x01\\x97W\\xbe\\x9e\\x0e\\xcf\\xbdA\\x9e\\xfc\\x90\\\\\\xb3\\xf48\\xc8\\x8c\\xee\\xe3U\\x81\\xf0\\xc4\\x07\\xdaR1\\xb1\\xeb\\x9a\\xf7\\x01\\xd4F\\x8b\\x97\\x11\\xb8j\\x8a\\x11\\x0c/\\x07k\\x8c\\xa4\\xbe\\xff\\x13g\\xd9\\xd3\\x9f\\xfe\\xfd\\xdd\\xfey\\xef\\xdf\\xc5\\xff\\xfb\\xc6\\xfb\\xae|\\xd8\\xe86\\xb8\\xbf\\xef \\xec\\xa8\\xee\\x87>\\x1c\\x18F\\xbdwC\\xdd\\xdd\\xb9\\x03\\xeb\\xe95\\xde\\xa8uK\\xc3>\\xf0jRm5\\x12i}\\x0e{\\xd8\\x16\\xdf\\xc2\\xa2\\xf9\\xbd\\xe5\\xf4\\xda|IWi\\xd2g>\\x1c\\xfb\\xe8y\\xd8\\x1f\\xf9\\xe8-8|\\x0c\\xcf\\xe0\tl\\xd4U\\xa8g\\xe6\\x04e\\xfc\\x11\\xc8\\xee\\xbe\\xc4\\xe1KD\\xdfL\\x9f\\x9d\\x8b\\xf8\\xc2}B\\xa7\\xf7|H/\\xe1\t\\xbc\\xa7\\xd7\\xbc\\xbf\\x97\\x06\\xa5\\x8a\\xeb\\xa5\\xd4\\xe21\\x91\\x12\\xaa|\\x04\\x97\\x85\\xf3\\x0f\\xa7$\\xff\\x8e\\x99\\xbak/}x/\\xfa=\\xa3\\xf5\\xc4{\\x07C\\x1f\\x8e=\\x05\\x19\\xf8\\xea\\x18\\x13\\xda\\x97\\xd5\\x849\\x9b%s\\xf6\\xf6\\xf5\\xa9\\nR\\xe4\\x9ey\\x9e\\\\\\x1b\\x8b\\xd2\\xab-\\xd8\\xa2\\xcb\\x82\\xf1%\\x7f\\xf9\\xb8\\x98fy\\xe1\\x16\\x9f\\xb7pTA\\x16\\xbb\\x94\\xc0_\\xd6}\\xb4Uy_Y\\x95\\xf7\\x9e\\\"Ai\\xc6\\xbeO\\xb2\\xdc\\xf5\\xeaJQ\\xf9\\xf7\\x87\\x0f\\xe0X2k\\xbd\\xc2sm\\xc2\\x89R%\\xe1x\\xee\\x9c\\x9b\\xbe\\x95~IsB\\x1fF\\x06U\\x1d\\xc1\\xfe\\x95\\xf9\\x1e\\xb8\\x02\\xf07\\xd5!\\x0b\\xca\\xbe\\xffn\\xb0\\xef\\xf9\\xf0#'8\\xb8\\x8b>\\xbc\\x91+F\\x1b\\xfac\\xe3N\\x82\\x98\\xe5)L\\xe0\\xcd\\xf4Y\\xcb%\\xfaSD\\xc7SA]\\xe6\\xad\\x17\\xe7\\xd5\\xf0\\x7f\\x16T\\xf8\\x05\\x0d\\xf15L\\xe0T\\x01\\xda\\x0bx\\x02\\xaf\\x1f\\xc3\\x0b>\\xca\\xd3\\xc1l\\x15\\xa4\\xc7\\xc9\\x9c=\\xcb\\xdd\\x17\\x1e<\\x85\\xd1\\xc1\\x038\\x82\\x9f\\xa17\\x01\\xe7\\x86\\xf3\\\\\\xfc\\xf3t\\xfa\\xa2a\\xac \\x97\\xf5\\xe7\\xceC\\x05\\xb1\\x10\\xcf\\xf9B\\x14\\xc0\\xf5\\xccb\\xec\\xad>?h\\xd5\\x9e\\x11Zv\\xaa\\xf7\\x16W\\x82\\x06\\xb9\\xb28\\x1d\\x95\\xcbs\\xc4xNW\\xc8\\xdeNG\\xe7\\x9e\\x0f?\\x0c\\xb6q\\xb6\\n\\x17\\xb9\\xfbvzp\\xee\\xe1\\x1b\\x01q\\xbc0z\\xaa\\xefs\\xb9\\xe8\\x07\\x92!\\x9c\\x81\\xe3A\\x0f.\\x0dX\\xf1\\xbc(\\xd1>\\x96\\xcb\\x94\\x05\\xef\\x1bK\\xd5\\xcdK\\xcd_\\xeao\\x8dx\\xf4\\x14\\x0e\\xee\\xdd\\x93\\xe9\\x1e\\xb4\\xd1;\\x8e\\x94\\x0cl\\x88^f\\xc5>\\xbc\\xd2bg\\x17U\\xd2A\\x9e<;;>=-\\x7f1] \\xe6 \\xf37\\xd9\\x0bZa\\x8e\\xc0\\x19\\xa3\\x10\\xaa\\xde\\x8c9\\xe8\\x1b\\xe7\\xfb]WB\\xa4\\x93\\xbe\\xef\\xa0\\x07\\x7f\\xd3\\x85\\xae\\x9e\\xd6\\x08\\x9f\\x92\\x12\\x80\\xac\\xab %&\\xdf\\xbc\\xbe}\\xe0\\xbc\\x9b\\xc3\\x0c\\xa7\\xee\\x97\\x82\\xd0i\\x80t\\xe9\\xb5\\xf2\\xf1\\xab\\xe9\\xc9\\xb9\\xe5R\\xa4\\xa0S\\x9cf\\xcd\\nn\\xd3J\\xaa\\xf8R\\xff\\xc2\\xebX\\xc9\\x14\\xefX\\xf0\\xf2\\x82\\x1b\\xfd\\xd2\\x88\\xfa\\xbc\\xd1o\\xb9\\x88\\x1d\\xd7\\xd8\\xe6/\\x0d(\\xf0-\\x92\\xfc_pY\\xb0z6\\x0b6\\x8c\\xf7\\xa5x\\x11\\x92\\xe7_<B\\xa8o\\xcd\\xe4\\xbd\\x0e\\xefu\\x19\\xf4/%\\xde\\xca%\\xf9\\x82\\xf1\\xfeE\\xdbk\\xb2\\xec)\\xe9\\xeb/\\x15\\xae8\\xf4\\xe1/U\\x00\\xe6\\xcd\\x7f_n\\xfe\\xa8\\x8a\\xf8\\xda\\x9a~_\\x17\\xdfUw\\xdf{\\x15\\x11\\xbb\\xf8\\\"\\x85\\x94b\\xac\\xb2LI\\xca\\xc7\\x97^}\\xd4\\xdf\\xef(\\xd6_\\x16%5\\x1d\\x84\\x13\\xbb\\xe5\\xf4\\x04\\x01\\xb9\\x8c\\x1b*x\\xb7*m\\xaa\\xcf\\x95\\xb3\\xaaf#\\xb3\\x8b\\xd1\\x80LPVP\\x06\\xad\\x8eM\\xd0\\xf8\\xab\\x8aXK\\x13l\\\"\\x05B\\xf7\\xfa\\x1b\\xf4\\xe0\\xaf\\x0d\\x98\\xa8\\xabkB?\\xc3\\xbf\\xa5a\\xb1\\xa2\\x04U\\xe2\\x05\\xd7\\x8d\\x9c\\xa6SVE]P\\x005\\x0c\\x9a)\\xe3'\\xfec\\xc04\\xe6yZ\\x9c\\x91\\xc3g\\xfb\\xa1\\xcf\\x89(\\x99\\xf0'\\xc0\\xe5\\xe4:\\xe0\\xaa\\xd8\\xc4Js\\xc2\\xbe\\xeb\\x8466oB\\xbd`\\xaa\\xc5,^\\xd9\\n\\x85\\x96\\xa0\\xb2\\x01\\x02dy\\x98\\x05\\xd5>\\\"\\xc3\\x83d\\x0b\\xf8\\xae\\xca\\xaa\\xf8*\\xc9RRp.\\x93g\\x85\\xa5c4A\\x94\\xab\\x8fQJ\\xedU\\xde\\xf6\\xb8|\\xea\\xe9\\xa7\\x04\\xd4\\x0d_\\xd62\\x9b\\xf2\\xca\\x18\\\\6&i\\x18\\xca\\xbf\\x94\\xc2\\x1b\\x16\\x9ft\\xa9#@\\xfc&\\xcbL\\xb8\\xb8-\\xe1x}3\\xb7u\\xd8G\\xef \\xe7\\x88\\x8f10\\x81\\x95\\xf2Q\\xe4\\xc5\\xc6\\xc4\\xaarIt\\xfa#\\x91\\x18FL\\xb4\\xaa\\x8ar\\xaeO\\xf9V\\x97\\xd3\\xfc\\x1c\\xcb\\xeeI\\x8b\\xcf\\x11m\\x03*\\xc2=\\xe1U\\xe6\\xf0\\x16\\xd0\\xb0\\\"\\xb9b\\x8c\\x82\\xea\\xb3\\xdc\\x1dRO\\xb1b\\x8e1\\x12\\xac\\xc2\\x19\\x0d\\xebb\\x08\\x0e\\xe7+G\\x04|,\\xd7\\xe5\\x80\\xc7\\xbf\\xf5\\xf0\\xd8j+'\\x8e\\x81\\xba*E\\xf9B\\xd1\\xa2l\\x91\\xa6\\xf6 \\xe4\\x83Dw\\xf3\\x02\\x87\\xa6G_\\x9d\\x97\\xa2\\xf54\\xc5\\x145\\\"d\\x99\\xa8x\\\\^\\xc4\\xbe\\xb7\\xaa\\x13\\xe7+\\xc7\\x07\\xe7\\x8f\\x07\\x87\\x0e~MmT\\xc4t\\xc8c9\\x88\\xc1-*\\x1f\\xbe\\xe8\\xe72\\x9e\\xa2[-}\\x19N\\x7fLV\\xc7\\x8a\\xd1\\xd1l\\x13\\xc9\\xcdfQ(N\\xb3\\xb4\\x11\\xfaD\\x0d\\x1b(r)~\\x0b\\xb6K!\\\\\\xaa\\x18\\xe5\\xf9HQ\\x86\\x8f!\\x80'*B\\xe8c\\x08\\xeci\\xd6\\xd1\\xffd\\x1a\\x98<\\x18\\xa7\\xdbs\\x81`\\xd3\\xedy\\xc3\\xe8(4\\xa9\\x10%\\xd0kb\\xe5s\\xa9\\x9al\\x89\\x9c\\x83\\x14\\xc1\\x80\\xd4Q\\x9f\\xc6M\\xe2\\xba\\xec\\xc0\\x14\\xceQ(\\x08I\\xad\\x1b\\xcd9Y=\\xcc*ZU\\x87\\x8f!\\x82'Pd\\x9d\\x8f\\x9a\\xc5\\xc5\\x19L \\x9bF\\x16q\\xd1\\x91c!T\\x9b\\x11\\x1eOg\\x14\\x8d`f\\x10_\\xad\\xc7\\xe5\\xcbi\\xacf&\\xae\\xa3\\x97\\x04\\x8c\\xb8,]\\xc4\\xea\\xe4\\xb4.c\\x98\\x17\\xb6e\\xd3\\x8au\\x05t\\xf6U\\xbf\\x88T5-:J\\xeb\\xcbiQ\\xe7\\xdc\\xb6\\xa2\\xa5`I\\xd5\\xed\\xd9\\xd0\\xf6lJ&\\xa4M\\xbb\\xe1\\x01C\\x10O7\\x0d\\xca|<\\x9d\\xd3\\x8e\\xcc-\\xb1\\xc4\\x8co\\x1b\\xc1\\xb4\\xc3\\xc6\\x12*hV\\xd9b\\x81|\\x8e\\x0b\\x9c\\x83\\x7f\\xf8\\x00\\xeb\\xf2\\xc2\\x95\\xf6\\x93\\xa9\\x1f\\xf5\\xc95Dt+\\x05DtYEl\\xf1\\xa4I\\x7f\\x9f+\\x02+\\x8d\\xe5\\xee\\xb9L\\xaa\\x88\\xab\\x01\\xd9\\x03\\xbcZ\\x84'\\xf9\\x143(j!\\xa3b%]\\xd4ee\\xfd\\xdaCr\\xc0\\x81j%\\xb4\\xc2\\x952>\\xe0\\xd7\\x95\\xee\\x8f_\\xff\\\\Z\\x9f\\x9506\\xec\\x1b\\xf2\\xbd\\xdb6D\t\\xffL\\xfc\\xc9\\xdb\\x94\\xf2?\\xa3\\xbf|\\x81}D\\xc3\\xc44\\xb9\\xb2\\x10K#)\\xc3?|\\x1dK'\\x95\\x993\\xa1N\\xc7\\xd2\\xb7\\x82\\xe1\\x1f\\xa5)|\\xf8\\x00q\\x83\\xf4\\x0f\\x02\\xc4\\xaf\\xca\\x88n\\x11,\\xe5\\x83G\\x80-:\\x00\\x7f\\x14\\x0d\\xb9\\x82\\x1e\\xdcvX@\\x85\\x11\\x9a\\x97\\x89.\\x10)J\\xfd\t4H\\x9eT\\x95\\xe9\\x9c#\\x8e\\x12\\x8a\\xb7\\x854S_\\x80\\x8b\\xd2~1cK\\xacSK\\xd70\\x81\\x0b\\xde\\xc8%m\\x11\\xb6ItQ\\xd4\\xae\\xd79\\x81\t\\\\\\xd7_\\xdf\\xd4&\\xa5M\\xa6\\xc0D\\xde\\xcf\\xd4\\x10q\\xf1\\x8c\\xa3\\xf0\\xaaD\\x0b\\xca\\x03\\xa9\\xb7\\xa1\\x91k\\xa0\\xc3\\x0f\\x8d\\xb5\\x18\\x94\\xf33\\xc1QJx\\xaa\\xc1-9\\xe7\\x14\\x8b\\xe0\\n~~\\xc3\\x11\\xf8\\x88\\xfe\\x9b\\xc8\\xefc\\xb8Q\\x08K\\xaf<OC'\\xdep\\x99\\xd5\\x94\t\\x04\\xf5\\xc5\\xca]\\xb3Z\\xd7+\\xeazE]3\\xd9uA+\\x98\\xeaZ\\x11'\\xcc\\xf0\\xe7\\xe3\\xd6^\\xd7\\xdaB4Q\\xb3\\xe2\\xf5.<3\\x11\\x90\\xa2\\x0c)e\\xaa\\xebXa\\xbb\\x95 \\x94\\xea\\xe2\\xcb#\\xfd\\xc7X\\xab\\xebCWB\\xc5\\xc1\\xabr\\x95\\x059\\x03\\xdf\\xd8\\x95:\\xb1\\xc5\\xa30\\xf7\\x86\\xae\\xb2\\xf8p3\\xd8$\\x1b\\x8e\\x91\\xfc\\xcd\\x8dtaYy]\\xbb\\xb5\\xf4\\x87\\x87\\xf0/\\xb6Q\\xf42}\\x1bSD\\xe7\\xb9+\\x9b1\\xca\\xc7\\x08~^y\\xd1\\xd4\\xaa\\xdfH\\x1e\\xe4\\x83\\xfb\\x8a+\\xcd{n\\x01\\x84\\xf4W\\xa1\\xd0\\xfe\\xbb\\xe3\\x91Gt\\xf1M \\xc6\\xbf;\\xe2(I\\x11\\xefWE\\xc3\\xaa\\xb3\\xd2\\x10^\\x15\\xdc\\xaf\\x81\\x08vX(\\x1f\\xe4\\x92\\xb8\\x05\\xd6\\xe3h\\xb4\\xf7\\x92\\xfe\\xf3-R4Y+\\x0fG:\\x01\\x19s&\\x8a\\x1a\\x9b\\x1c\\xc1Q1\\x18\\xfc\\xf8\\xa9\\\"\\xe0\\xde\\x8d\\x82\\x175\\xc9M\\xd5k\\xaf\\xd4\\xab\\x18\\xab\\xd0Z\\x8bA\\x14\\xd2\\xa9$\\x1d\\xad\\x92\\xbe\\x92Y\\x8ei\\xe7\\xd1x\\xd7\\x1fy\\xe8\\x05\\xfb\\x9e\\x16\\xa4\\xa0\\xec\\xf2\\xaf\\x9b\\xc2\\xa0/\\xf4ug@Xv\\x8c\\x187\\x90\\xbf<\\x0d\\x01\\x8f\\xc5\\xf9\\xae\\x0f/\\xb1/)k\\xbe\\x84\\xa7(\\x81\\xbe\\xec\\xf7=\\x90\\xed\\xe0\\x01\\xec\\xcd\\xf4\\xe5\\xb9\\xc7I\\x1d\\xc2\\xd4\\x8c\\xb9/\\xc5\\xfd\\xb7\\xa2\\x03\\xae\\xf4\\x97?\\xfbd\\x8a\\x1e\\xc33\\x1cX\\xedc\\xbfo\\xa0\\xc5{t^}b1|?\\xe6\\xd5\\x1e\\xc33O\\xa3\\xb2|\\x0c\\x95\\x96(\\x0b\\xa1N\\xa6\\xf9Z\\xc9\\xe3\\xc6\\xfd\\xe2\\xbdf\\x1b\\xc0\\xd5,\\x89Z\\xefA\\xb3V\\xdc\\x14\\xa2V\\xc5DrCGI\\x8e\\xc9\\xc4\\xf6\\xca\\xc7s\\xc7\\x9dFRn\\xc5\\xc0\\x9c\\x14\\xce\\xbe\\x81#:\\xb1\\xb9)\\xee&*\\xa2A\\x87&\\xff8\\xcaa\\xf6\\xd1$\\x9f\\x8e\\xb2PQ\\xa0\\x1d\\xdf\\xfa7\\xf4\\xaa\\xb4\\x13\\xda\\xfcJ(\\xa9m\\n\\x8cK$\\xa3@=\\x0d\\x13\\xbd\\x7f\\x1c9*\\x89\\xcd4})@\\x7f\\xb60Y1\\xe1\\xa8C\\xfb\\xcevg\\xe4\\xdc5\\x84\\xcb\\xd1X%\\x02\\xb3T\\xcc\\xb2Dj\\x84\\xcd\\x10\\x03\\x13\\xe6\\\\l\\x80\\xc2\\xf0O\\xf2K\\xae\\xb9\\x16\\x91i\\x87iN1\\xdaq\\x99\\xbc\\x94J\\xc5L\\xe7o\\xbb\\x86\\x85-\\xddGIM\\xf3O\\x1e\\xc3\\xfe7{\\xc2qr\\x7f\\x7f\\x9d\\xaf\\xb2\\xc1%\\xdb\\xdfl\\xe3\\xdbY2gp5\\x1a\\x1c\\x0e\\x0e\\xe0\\xf2\\x16\\xfe}\\x1d\\xe4\\xab0\\xc8\\xe0\\x9b\\xfd2\\x9d)F\\x10\\x9a\\xd8{ct\\xd0\\\"8\\xa8\\xdf\\x1c\\xfe\\xb3\\x88\\xfei>\\xf6@\\xc3y\\xbd\\x014\\x98\\xa6\\xf5*\\xc1`\\x19%\\x97\\x01Y6(#\\xc3\\xe0:\\x8c\\xe7\\xc9\\xb5\\xfe&c\\xd1\\xc2\\xdc\\xdd\\xd6G\\xeb\\xd2\\xc1\\xe8\\xee\\x83\\xbb\\x0f\\x0f\\xef\\xdf}`\\xd6\\xc4\\xb8\\xc6\\x7fx\\xdf\\xfcm\\x86a\\xc6\\x8d\\x9f8\\x98\\x1fX\\xaamx\\x93\\x0f\\xcd\\xdf\\xe60\\x81\\x07\\xd5;q\\xf2\\xe1\\xa8\\xf7\\xe0\\xc0\\xfc\\x8d\\xeb\\x96\\xa3\\x03K\\xab\\x18\\x19\\xafo\\xd15\\x97\\xe8\\x97|\\x13\\xf7\\xfb\\xfb\\xe6\\x02\\\\\\x10\\xda\\x9f\\xfe\\xf4\\xee\\xe6`\\xd8\\x7fw\\xf3\\xe0\\xe4\\xdcR\\xee\\x12\\xcb\\xbd\\xbb98y\\xb7=\\x1c\\x0e\\x0f\\xdem\\xbf\\xfbnx\\xc2\\xff\\xbd?:\\xdf_\\x9a+]X\\xf3\\xa8\\xf0'\\xb9b\\xe9\\\"J\\xae\\xc7\\xe0\\xbcT\\x7fR\\xd4\\xc6\\x98\\xb1y\\x06\\xd7\\xe1\\x9c\\xa5\\x10\\xc69[\\xb24\\x83<\\x81M\\x9a\\xccX\\x965(\\xd6N\\x9c\\xe4\\xfd\\xcb \\x0bg\\xce\\x18\\x9c\\xd3(b\\xcb \\x12\\xadr\\xd1\\xe1\\xe6\\xe1\\x10\\xdc8\\xc9!\\x00,\\x05\\x88F\\x9b$\\x8cs\\xaf\\xa9\\xd90\\xbe\\n\\xa2p\\xde\\xc7\\x96\\xb0izAM\\x9b\\x13\\xdf\\x19\\xd2\\xa9\\x80P\\\\#\\xe8\\xc3\\xcc\\xfc\\x99\\xeb\\xa8?\\x06\\xf9j\\xb0\\x88\\x12[\\xeeJ\\xae\\x13\\x90Q{\\xb0H\\x93\\xf5\\xb1\\xf0\\xa6\\xd1\\xdc\\x89\\xe5\\xa3\\xdc\\x8a\\xcf\\xcc\\xc7\\x03\\xa0b\\xec\\xbf\\x0e\\xe2\\xa5\\xf0\\xc2\\xbd\\x982\\xa3]\\xd4\\xde\\xfa\\xb1\\xf5F\\x1dT\\xed\\xe1*T(\\x9a\\xc4\\xa7\\xe7\\x8f!\\xc6@\\xec)E\\x88\\xa5\\xd0\\xe5\\x16\\x83\\x96\\xf4S\\xdeil\\xef\\x1b\\xc7V\\x0c\\xab\\x90(\\xecp\\x90\\x1a\\x0e\\x00\\xd57)\\x90\\x17\\xf2.\\xc8\\x83\\x9f\\x98\\x8bS=@\\xbf?\\xe4\\xfc\\xe4\\xd4\\x93B\\x0f\\x8e]:1Ug.\\x97>\\x97l=e\\x03\\xa4\\x9c\\xb0^\\xe1\\xb4\\xb3\\xd3\\xec\\x9f\\xd9\\xf7]m\\x0b\\xc5j\\xa0\\xed\\xf0\\xf1\\xaa\\xd3\\xd0\\x17N\\xd4R\\xf0N\\xe8\\x9a\\x9aK\\xaa\\xb6\\xe6\\xbe\\x95\\xf4z\\x9e\\xc7Q\\xeb\\xde\\xbd\\x83G\\xf7\\x89s<\\x99\\xc0\\xbd\\xfb\\x87\\xa3G(\\xb5\\xf0\\x8ap\\xc4_\\x1c\\x0c1.\\xca\\xfd\\xbb\\xf7F\\x07 N\\xd3\\xeamy\\x14\\xe0\\x8c\\xcb\\xab\\xae;\\x1a\\x1e\\x1c\\xc2\\x1d\\xbe{O\\x9e\\xc0h\\x88R\\x8cx\\x17\\xf3\\x1f\\xf7\\xef\\xdd;\\xbc\\x8f\\x82\\x95\\xa8\\x92s\\x01\\x8a+\\x07cPo\\xbe ,\\xbd\\xb4\\xaf\\xa6h\\x0f1\\xa1\\xf9HN>\\xf2\\xe4\\xc9\\x06P\\xa0\\xdf\\x1bz\\x8as\\xbd\\x07\\xea\\xc0\\xf3\\x86\\xc3M\\x7f\\\"\\x97\\xe0\\xe9\\xd3\\xa70\\x1a\\xc2\\x1d\\xc0\\xe5\\xf9@\\xdb!\\x04\\x1aZ\\xfb\\x0f V\\x8e\\xd1\\xa1\\\"o\\xc2\\x10\\xd2\\x1c\\xf0,P@\\xdb\\x8e\\xc0\\xf6\\xaa\\x11\\xd5\\xd4\\\\zpp\\x00=xp\\x0f\\xbe\\x01\\x97\\xc1\\x138\\xb8\\xefA\\x1f\\\\w\\x88\\xd1\\xccp\\xb3\\xef\\xed\\xd6\\xf3\\x1b\\xdb\\xcd\\x03\\xf9\\\\\\x89\\xdb\\x0f\\x96\\x94(\\x88\\x0b\\x88\\x99p\\x04'.\\x83}\\x98cP9\\xe0\\xeb*|\\x14\\xe8}\\xee=\\xc6\\xfd\\xb8\\x86o`\\x81\\x9f\\x1fsD\\x9e@\\xe4\\xe1jS\\xa9\\xebf\\xb0;q9\\xee\\xbb\\xd7\\xe87\\x03\\xdf\\x00\\xaf\\xe2\\xf2\\x95\\xd9x\\xbbM\\xfcG;\\x8ci\\xa8\\xad\\xe7\\x8c\\xc1tPs\\x1f\\x96>\\xdc\\x92#\\x8e\\xc9\\xa8)\\x9f\\x0b\\x9dd[K]\\x9bo\\xe1\\xcb\\x87\\xf3\\xab+\\xfb\\xe7\\xe3\\xba\\x81L>\\xb8/\\x82R\\xe8\\x1e\\xd4k\\xcf\\x83'\\x14\\xb1\\x05\\xbf\\x0e=_l/\\xa4\\xf0\\x04b\\xbcZ\\xeb\\x95\\xc9K\\x8atjt\\xf0\\x90\\xd7:s5Q\\xc1\\xf3\\xe1\\x92\\xa8E\\xa5\\x82e\\x13qTx%\\x14\\xc3\\xc6\\x1cA\\xcc\\xf7\\x11\\xc6\\xbc{N\\xf0.\\xac\\x17zU\\xed\\x10M\\xd1(\\x18\\x8f|<\\xd6\\x8dx\\xdd\\xa7\\x13\\xb8\\x10\\xc3+\\x8b\\x1c\\x9e\\x0f\\xae\\xcb\\xa5K\\xf7\\xd6L\\x82\\xfbp\\xf7!p\\\"\tGp\\x0b}\\x8ebc\\xfc\\xe3\\xfe=\\xc40\\xf1\\xfa\\xfe=\\xf1\\xfa\\xd1\\x03\\xfd\\xf5\\xa3\\x070\\xe6\\x00\\xfctB9Y6\\xf0\\x14N\\\\7\\x83>\\\\{\\xb0\\x0f\\x01\\xa9\\xd9g\\xae#\\xc56\\x07\\x0d\\xb5\\xbd\tl\\xe0\\x1b\\x0eW{\\xee\\x06\\x9ePJ\\xb0-\\xe7\\x00\\xc7\\x98Ty\\x0c[\\xde\\xe61\\xf4`\\x01G\\xb0\\xc0\\x17}8\\xf6\\xbc\\xc7\\xb0\\x15H\\x13`_\\x19\\xc7\\x80\\xa5\\x90\\x8d\\xe6\\xc6\\xee\\x02\\xf8f\\x02K;\\xb1\\xe4p\\xf4\\xc6\\xbd\\x86>\\x07\\xf5\\\\\\xf3+\\xe7\\xbb\\xe3c&(\\x08=\\x1fN\\xdck\\xc4cx\\n|\\x827\\x86\\xaen\\x08\\xdf\\xa9\\x1c\\x9f\\xe8\\x1f1;\\xf0\\xa5\\xb4\\x10]\\xf7z\\x18z\\xea\\xa6\\xab\\xcf\\x1f\\x14\\xb8\\xff\\xd2\\xbd\\xdc\\x0d\\xc7O?\\x17\\xc7}\\xb8\\xf09\\xb4\\x89\\xeb\\x13\\xd5$\\x17\\xf2A\\xc0\\xbc\\x94>\\\\\\xcf\\xd0eK\\nk9\\xa20\\x8aJB8X\\x95\\xbc\\x17.9\\xc6\\x05\\x1eA\\xe748\\xe7\\xe8)P\\xed=\\xa1\\xd6\\x8d[\\xf3\\n*u\\x9cb\\xb0\\x97\t\\xbcW}&Z\\xed\\xb5G\\x98}\\xd9\\x8eZ\\x1c\\x99\\xb2\\x96\\xc1=\\x15\\x19\\xc8o\\xe1\\x89\\xc8b\\xcek\\xdd6x\\x83\\x8a\\xa6\\xfb\\x90\\x17\\xa8\\x11s\\xd4p/0&\\x08'\\xe4&\\xa0\\x8d9$QEN\\xe8/h)\\xb7\\xa6\\xf1Y\\xfb\\x06az,\\xad.\\x8e\\xbf\\xd7\\x8b\\x11\\x8a\\xeb\\xfd\\xde\\x02\\xa5=\\xb3/\\x96|pf\\x9c\\xb4\\xc4>\\xea\\xa8\\xd1c\\x89\\xcc\\x1c\\x1d\\xe7\\x1c\\x99C\\x81\\xccs\\xbep\\xa1\\x86\\xccs\\x0c\\x83\\xe2=\\x86\\xb9@f\\x8e\\x83\\x1b\\xe8s\\xc8\\x93\\x8a\\xce\\xd2/@\\xe0\\x95\\xbb\\xe42/\\xfc\\x91\\x83\\xe3\\xd0\\xf3\\x84S\\xc1\\x89{\\xdc\\xc03\\xf5Gki#[\\x08\\x11\\xefc\\x84\\xf2\\x94O;\\xf1\\x14\\xa4\\xf6zu\tO\\x7f>\\xf6z1/UO8\\x05mx\\xfc\\xbeIH\\xaa\\xbe\\xd9Zu\\xe1+\\x96fa\\x12\\x8f\\xc1Ac\\x8eE\\x0b\\xdd\\xce\\xb2\\x03S.k\\xf9\\xd0\\x95\\xa01<\\xb3\\xb3Y\\xf2\\x01\\x1b\\xc3K\\xf3T-F\\x0b\\xd1\\xee\\x8f\\xe6\\xcf\\xb2\\xcdS\\xf3g\\xe1b?\\xee(\\x11\\xcb\\x85\\xed.Ck\\xb5n\\x079\\xcbr\\x8a\\xc9\\xe7\\xdc\\xc4\\xfd\\xbe\\x03=\\\"\\x9d\\xa6\\x94\\xd9\\xf2\\xf9h!\\xe0\\xb6\\xf9\\xbc\\x8dC\\x9aq\\xb7\\xf1}\\xd6\\x8c\\x96\\xda\\x8c~ten\\x9a\\xbb\\x95\\xbb\\x86\\x9f6\\xbf:\\xc8\\xfa\\xa0\\xe5KD\\xe9\\xc6j\\x9a\\x95\\x8f\\x18\\xe7\\xb6\\xdeX\\x11\\xec\\x06\\xc5rF!0]=\\xd6GR\\xf1?\\xd4=\\xfe\\x0cin\\xf8\\x9f\\x87#K\\xb6\\x9bN\\xf1=\\xf4\\xce\\xcb\\xf3\\x91.\\x82m\\xbb*\\xe6k\\xcaPR\\x9e\\x8b_i\\x9e\\x1c\\xa9\\xba6o\\xb1\\xb4\\x8aX\\x8f\\x93\\xb6\\xce^l\\xa3\\xa8cW\\\"Rh\\xa7&\\xb5\\x13\\xe3\\xddZ\\xdf1\\x94X\\xa7\\xbd\\xcc\\x07D\\x98\\xd0\\x80/o\\xa1\\xc7\\xee\\xc3G\\x8f\\xb8r; \\xb2D\\xd6}\\xe9\\x9d\\x0c\\x14\\xa7\\xaa[2\\xefr\\xaf\\xea\\xb5\\x12\\xc9\\xd2\\xa6X#-\\x91\\xa9T\\x12\\x9bZ\\x06\\x1fh\t{\\xe8C\\xcd\\x86\\x8fG\\x18x\\x94x\\xc7!\\xa6\\x877\\x84\\x9d\\x89!\\xafx`\\xc8\\x04\\x19\\x9a\\xd3\\x14\\xa37\\xc4P8CT\\x8e\\x9c\\x83z\\xcb\\x18W\\xe4]o\\xbf\\\"\\x9c3\\xcd\\xb0V\\xb5\\xc3H\\x17\\xd0\\x11;\\xac\\x8c\\x88\\xc3\\xba\\x13c>\\x1a\\x1d\\x07\\xc2\\xc1:\\xb8\\xf93\\xbbEa\\x07S\\x98\\xaa7\\x86\\xa6#\\xdd|U\\xfa\\x9a\\xc9P\\x9f\\x91\\x94\\x9c0\\x01e\\xb5\\x11e\\x1d\\xa3D\\xaa0\\xc3\\xc8\\xa2\\xd0\\xeb\\x1938\\xa3\\xc7\\xa4\\x94\\xbaW>\\x9a\\xec\\xd9tV\\xdc\\xff\\xdf\\xa2\\x1f\\xf5\\xd0f\\\\\\\\s\\xf1Z\\x1dx\\x9aRc\\xac\\xd1~\\x0dG\\xe0.\\xb0lqF\\xb5\\x16B\\x94z\\xb7\\x16\\xc2\\xe8X\\x94\\xa5\\xcfxL97\\xdf\\x1e^x>X.\\x16o\\xb8f\\xed\\x06>\\xcc=\\n;=\\x9d\\xe3A;\\xff\\x9fd\\xb1\\x15\\xc6A%\\x07\\xce)\\xff\\xdf\\x87\\xd5y\\xf1je\\xc1~(\\x10&(\\xf0\\xa0\\x988\\x9e\\x7f\\xc9|b\\x830\\xc3\\xff9X\\xb6\\xba\\x98\\x97\\x13\\x05\\x89\\xab\\xbb5\\xa4\\x94a\\\"\\xeb1vv'\\x10\\xfa\\x98\\xd3F\\x9ft\\x95\\xc5F\\x86\\xaf0\\x00\\x13F\\xf7\\x94H\\xd9\\x1c\\xe4\\xb3\\x0e'T\\xf9\\x92rF\\xb5\\xd4\\xe6\\x92R\\x9en\\x19F\\xb9X\\x04Q\\xc6\\x0c\\xa6HjP\\xe0cs.\\x94\\xec\\xbb0\\x0esF\\x12\\x0b\\x1d<\\xd7\\xdb\\x9b\\xb3E\\xb0\\x8d\\xf2\\xc6\\x96\\x1c\\xc7\\x024\\x1f\\xcd\\xec\\xbcN(k1\\x87E\\xcbvz\\xe9k\\xdc\\x10\\xe4m&\\x12\\x89<\\xcb\\xf1\\xe7\\x11\\x84n\\x80\\xb2\\x89\\x1a@`\\xa3\\x0e\\x9cD\\x1ana\\xa4n\\x80W+\\x0cyw\\xc5\\x88\\x13\\x974>\\xde\\x19\\xff\\xab\\x8b )\\x053\\xe8\\x99\\xfbd&+\\xa30\\xfab(,{M>\\x96\\xea\\xcd\\x91R\\xc5#s\\xc5-M\\xb3aD\\x08/\\xbf/J`\\x0e\\xf6fb\\xfd\\xe4\\xa0\\xbf\\x0e6Z.\\xc9u\\xb0\\xa9\\xb1\\xbd\\xd2Y\\xd8\\xf4\\xbcd\\xb5,\\x8e[\\xd2^\\xcf\\x939Ps\\x97MS^\\xd0\\xe2\\xafRM\\x86\\n\\x1a\\xb7\\xd7\\x1c\\xf8\\x9b\\xd7\\xeb\\xca\\x92\\xff\\xb4\\x1c\\xc6\\x92y\\x9de\\x1b\\nr\\xf9+\\xa5A\\xad\\xad\\xfe^\\xb3\\xaeb&\\xd6\\xf2\\xe9\\x16\\x02S>b\\xecn)\\xe8R.\\xe8]\\xcc\\xae!w\\x0b\\x88r9\\xe5\\xb8\\x0c\\xe3 \\xbdu<\\xafx\\xed\\\\\\x06\\x19\\xbb\\x7f\\xb7\\xd5r`U\\x8a\\xee\\xdd\\xf5D\\xd2\\xd4N\\xe2\\xec\\x95\\x96\\x95\\xd2\\x1c\\xd4\\xfd\\xc0\\x92\\xf0\\xfcphNx~\\xbfS@\\x7f\\xc3\\x81\\x8c\\xe2=\\x13 \\xd2\\x19C\\x91\\xb1 \\x16\\x19\\x0bR7tc\\x0f-\\xacJ\\xfc\\xf4E\\x02b\\x0c\\xc5*t\\xe1\\x18\\xedk\\x85k\\x0eR\\xe7\\x16\\xa8\\xd2\\x07\\xf4i\\x03\\x97\\x0cB\\xe8\\xcbx\\xfdFq\\x0c\\x06Oh\\x1e\\x08\\x0f\\x9e\\xd2\\xaa\\xf1\\xea\\xa2V\\xea\\xe9DA\\x0d9A\\xef\\x86\\x0cWZ\\xe2_SD\\xf8Q}3\\xef\\xb6m\\x98e\\xc6\\x94k\\x01>@\\xd8&#\\xe9\\x0d\\xec54l\\xd1\\xae@'\\xb3\\xb9\\x19\\x05\\xad\\xfa\\x8a\\\\\\xd9\\xe2\\xb2\\x9f\\x0f\\xfb\\xd3\\x9f( \\xdf\\xbb\\xfeW\\xff\\xf6\\xc7;_\\x7f\\xd3\\x1b\\xbc\\xfb\\xe9\\xe2\\xff|\\xf8\\xef\\xf3\\xfdP\\xdaV,\\x81\\xc8\\xa4\\x7f\\xc7l\\x15\\xa4\\xc1,GG\\x14X\\xb1`\\xceRX\\x84,\\x9aC\\x1c\\xac\\x99)\\x82\\x86\\\"\\xff%+M\\x19\\xad-s\\xeehvh\\x9bvU\\xdf6w\\x96\\x9a;\\x93\\x9c\\xc0L\\xfdbv\\xa3\\x9b1lD\\x12\\xb4\\x86\\x98\\xf4\\xb7\\xb4\\x1bw\\xc5\\x04\\xedm\\xf1g\\x9e\\xc4l\\xac\\xdb\\xa8\\x0c\\x0e\\x81\\xfa#b\\xb3\\x9b\\x0d\\xbbP#\\xb5\\xf6\\xb7\\x86tRb\\xc0\\xabA\\x98S\\x88x:\\x97\\x9fR\\xf2Rz\\x9b'\\xe9\\xf9\\x0eF\\xb4\\xfa81~Y\\xa7\\xadL\\xcc[\\x89\\xfe\\x89\\xeb`\\x83j\\xbf_\\x0e\\x13\\x98\\xc8\\xe0\\xa3'\\xc1l\\xd5\\x1e\\x18[5\\x17l6,\\x9eS\\xb2\\x9b\\xfa\\x88\\xe9\\x066zT\\xeb\\xb2\\x9aP\\x08\\x0c\\xddu\\xe9\\x8b\\xa1\\x839\\x9b\\x8eLNIE\\x8f\\xb8\\x07B<Y\\xb2\\\\\\x13J^\\x04k\\x96\\xb9\\xcc\\xab\\xf7\\xdfy\\xae\\xd3\\xbc\\xa1\\xf3N{\\x14\\xda\\xe9\\x19\\x1b\\\\&\\xf3\\xdb\\xb7\\x19\\x9b+\\xe1\\xf1U\\x9a\\xac\\xc3\\x8c\\x0dR\\x867\\xa4+\\xc4\\xe9Y\\x94\\xb2`~\\x0b\\xfc_\\xc7t\\xa8V\\xb4\\x88\\x01\\xd9:\\x0d0h\\xb6\\xe5\\xb1k9\\xa8\\xf6 \\xe0\\x80CH\\xe2(\t\\xe6]P\\x80?\\\\lJY\\xb6\\x8dr\\x9bE\\x1e\\x9bd|\\x05\\xba\\xb6\\x19\\xbbl\\x80\\x15:\\x1b\\xc1\\xbb\\xed\\xe5\\xb6\\x99t\\xf2\\xb5\\xfa.\\x8c\\xd8kd\\x17f*\\x15\\xa3\\xfccrN\\x92\\xf4`\\xc0w\\xf7Y\\xa6%;&q\\xa9\\xd3\\x08\\xb3&hC\\xd9\\xa9\\x96\\xf3\\xbe\\xea\\xd6\\x0f\\x95\\x19\\x15)\\x86\\xddR\\x9a\\xce\\x86\\x19d\\x8c@W\\xaf\\x8a!(D\\xaa\\xc6NS\\x89\\x9a\\xb2T \\x9e\\xea\\xb0.\\xc3\\x1d]\\x84q\\x98\\x7f\\x9b\\xcco;\t\\xf5|]\\xa8\\x1ao\\xeb4\\x0e\\x91q\\x19i\\x9c^\\xc5t\\x10\\xe0A\\xd1\\xd0\\x1bv\\x83\\x0d\\xd99\\x9fv\\x11\\xec2J0\\xac\\xcd\\xb7Qr\\xa9\\xe9Wa\\xf6J\\xfe\\xfdr!\\xe4\\x15\\xd9>/\\xda\\xb9\\xfdE\\x92\\xae\\x9f\\x079:O\\x7f'\\xfe\\xee\\xd8\\x8f,\\xde\\xb9/\\xba\\\\\\x80\\xc1\\\\\\xd1\\xc2\\xfa\\xf6\\xf5\\x0fg\\xda\\xab\\x8e\\xdd\\xca\\xe5\\xd3\\xd4\\xa9N\\xbd\\x07\\x05\\xca\\x00^O\\x96K\\xbb\\xaet\\xa0\\xe1\\x16L8\\xce\\xc8t\\xa2>\\xd4\\xa0\\x81\\xc31_owj\\xacosY\\x85\\xe6{\\xe0\\xf2\\xc1\\x8bE\\xe5\\x91\\x7f\\xf8\\x00{Z\\x07\\x0dk\\x06x\\x85\\xb4\\\"\\xcb\\nV\\xb1\\x8d\\xb3\\xed\\x86\\x8b\\xfal\\x0e\\xdf\\xca\\xd9\\xf0\\x9am\\xc1\\xdf\\x1aV\\xc9\\x8e\\x142GIu\\x0bm.\\x8et\\x83\\x02\\xc9d\\xc6\\x99\\xb6\\xeb\\xcc\\x928gq\\xde\\xa7!\\xe2\\xa1\\xa1\t\\xcbTd\\x1cQ7\\xab\\xd5\\xf5\\xc1\\xc9\\xd9M\\xbe\\xbf\\x89\\x820~\\xcc\\xc5\\xf8\\x8c\\xe5\\x93\\xb7o\\xbe\\xeb?tTp\\xd9\\x02\\x8bd\\xc8(\\xf5f\\xc0[\\xe9\\xd2\\x8d\\xa1\\x9a\\x87\\x17]?\\x1d\t\\xd4h\\x1a\\xa7\\x17l6Q8\\x0b8e\\xdb\\xbf\\xe9___\\xf79\\x8a\\xf7\\xb7iD\\x16\\xb6yu\\xd6F\t\\xa6\\xc0\\x0e\\xa2\\x80\\x97DSZ\\xf9\\xab\\xbc\\x9e\\x13R(\\x13\\xf3\\xfe\\\"\\xbf\\xb1\\x05\\xa4\\xd6\\x0b\\x95\\x17\\xd1 \\x06\\x89L\\x00\\xe5b]\\xda\\xd3\\xa0\\xd7\\xdal+nw\\xeaIRI\\x03\\x16\\xce\\x92-\\xd7\\x18\\x93\\x1cE6E~\\x81W\\x83 \\x03\\xbe\\xe86\\x84\\xdca\\xcc\\x1c\\xdb\\xaa\\xd6Y(\\x04\\xd5\\x12y\\xe9\\xb0\\xc5:\\x8f\\xadQ\\x82#\\xb9\\xf3\\x1cG\\xed\\xfbTZ~\\x81u|\\xb6\\xae7\\xc8W,v\\xb7&C\\xb4\\x18nN\\xc4\\xa3u\\x9c\\xbf\t(\\xb6\\x0b\\x11\\xb0\\xa3\\x08(\\x1f\\xbb((\\x9f\\x8aH\\xc8\\xb7\\xd9 \\x0b\\xca\\xe7\\xe3\\xaf\\x85&\\xdd\\x96\\xa0\\xb8V`\\x10\\x1c\\xa5\\xbd\\x8f]\\x93\\x86\\xe8\\xe6\\x85yO\\xb3\\x84\\xe7\\x15K\\xf8\\x14Ui\\xc3\\x95\\x177\\x9f6\\xb2^\\xa9\\xbd\\xd8]\\xb5\\xa0\\xb2b\\xfaBtZ\\xb9\\xcf@{\\x0e\\xe0;\\xa2}\\x19\\xd9-\\x14]\\x17\\xf5\\xa8\\xc6\\xa2\\x90\\xe0Z\\xd1IG{>B\\x89\\xaa\\x8b\\x06T\\xfd9K\\xe2\\xcfi\\xfbOg/_\\x90\\x1f\\x87\\x95z\\x95\\xde\\xdb\\x94\\x85\\x99\\xd5\\x82!\\xcf\\\\\\\\u\\x02\\xf8\\xf7\\x8f\\x1e\\xaa\\x0e\\xf5\\xf5GZ\\xa1[K\\x8cg\\xfe`P\\xdf\\x8d\\xb6\\xc4\\xb2\\xba\\xde \tmSr[\\xd8\\xa62\\xd5\\xce,es\\x16\\xe7a\\x10e\\xe4\\xf6]\\xfc\\xe6j\\x94\\x90\\x0f\\xa0\\x08p+^\\x10\\x8a%.\\x93oT\\xe4\\xbf5\\xcbW\\xc9\\x1c\\x1b\\xa3?\\xe5{r\\x98a\\xf8\\x87O\\xa7\\xa2\\xca\\x81G\\x93\\x84\\xf1\\xce1\\x94\\xde\\xf9U{\\x83a\\x0f5\\xc1\\x90f\\xa9\\x0c\\x96\\xe6\\xe57\\xcc>/\\xfd\\x96\\x819+\\xef\\x9cd\\x1d\\xe6\\x8e\\x0f{\\xc5\\xe2T\\x84)\\xfbb\\xe5\\xf6\\xc5j'}\\x85\\xb93O\\xden6\\xf6L\\x00P\\xa0\\xc1\\xad\\xf2\\xf8@g\\xf4\\xfe\\x88\\xcb\\x9bFw\\xbe\\x8fn.\\x07#'^\\xfct\\xfe\\xe3\\xe4\\x8d\\x8a~\\xb8\\x96\\x8eO\\xf8\\x87*,~hY\\x9cR\\xb6`i\\x8a\\x92\\x00\\xbdu\\xb1\\x9d\\\"$\\xa5\\xd6\\xc1\\xf7'\\xcf\\x9e\\xd7\\xbe\\xd0u|\\x0b\\xcc\\xa3\\xea\\x8d\\x17-\\xa3(\\xb9fsd\\x0b\\xffq\\xf2\\x06\\x92\\x14xk\\x90\\xb2\\xbfmY\\x96g&\\x84 \\\"'5x7\\xeef\\x95Yt\\xb0\\xca\\x082\\xd8d\\xb5\\xc7\\x14\\x1b\\xf2\\xf2\\xdd\\x1d\\xc7`5l4#\\xb4\\x8a\\x07\\xa5\\xdb\\x86\\x93\\xa6\\xdb\\x86\\xfcI\\xe9\\xd2=Y\\xd0\\xb5l\\\"=\\xcc&\\x02m\\xd5\\xf1pO0\\xbf\\x89cl\\xc0\\xce<si\\x015\\xb8\\x05q\\x1d\\xd9\\xf0:1H\\x9f`1\\xb5u\\xb5no\\xda\\xf75i\\xd8P\\x19C?=z\\x17\\xef\\xef\\xb2\\x9b\\xb5\\xcd\\x1a\\xb7]\\x0d-6\\x8a\\xa0\\xc8.>\\xd4n\\xfb\\xeb\\x8f\\xf4w\\x90\\x1b7v\\x9a\\x1b\\x04}\\xafR\\xbf\\xeaY+\\x9f\\xcf\\xd9\\x83\\xb9\\x95\\xaf\\x12G\\xc8\\xf5\\x84+\\xa4:O\\xc0\\x11\\xae>RI\\xce\\xf2 \\xdfrr\\xeb\\xd0_\\x0e\\xa6\\xc6\\xe44O~\\x1a\\xc3\\xc1p(J'\\xefU\\xbcX\\xfa\\xf8t\\xc2\\xbf*r.\\xde>\\x81CU\\x85^I\\x9bC\\xf1\\xab\\xd6\\x11\\x16\\x19\\x83\\xf3\\xf2\\xcfrlv^\\xe0\\xeb\\\\+\\xc7\\xffE\\xa8\\xb9\\n\\x99\\xaa\\x06T-\\xfdB\\x03\\x0f\\x1b,Xn\\x8e#w%b\\x01\\x9a\\xa1B7%\\x8c\\xc1\\xa9X\\x12pz\\x86pg\\xfc\\x91\\x07Tcp\\xe8p\\x8a\\n\\xa3\\x8f\\xa5<\\xa6\\xc2W\\xf4\\xd5\\xdc\\x08W\\xd8\\xc6\\xe0\\x14\\n\\x8d\\xd6\\x08\\xd70\\x8a\\x9f\\xad\\x02 \\x7f\\xf2\\xf4\\xb6\\xc5\\x1c\\xa6\\x1d:\\xf0\\xf6}S\\xf6d\\xf9|\\x84Y\\x80.u]\\xdd\\xea\\xf7F\\xf6\\xb6\\xcc\\x88c\\xcb\\x06,\\xa5j\\xbe6\\xe2\\xcf\\xa6\\xbd\\xd0\\xd4\\xef18\\x9a\\xa2A\\x95\\xea\\xe8i\\x16\\x8dJfB\\x0f!\\xe7\\nS\\xd9Ig\\xa7S\\xa9o\\x9d;~\\xe1\\x02U\\xa8a\\xf5\\xd7\\xc7Q\\xb0\\xde\\xb0y\\xfd\\xebi\\x9c\\x8f\\xee\\x9b+\\x99\\xde\\x9f\\xc6\\xf9\\xe1\\x81\\xb9\\xb8\\xe9\\xfdwQ\\x12\\xd8?\\xdc\\xbf+>X\\xae\\xa7\\xae;\\xc9e\\xa0\\xbbn\\xdc\\xb9\\x03|\\x93\\xfe\\x12\\xb2\\xeb\\x06\\xf3\\x9b\\x19\\x08\\xcc\\x83XJ\\xbf4a\\xa5\\x0d3\\xdex\\xb3\\xb3\\x95\\xfe\\xe8C+\\x1c\\x80[]\\xd4H\\\\4\\x0f\\xb4\\x0e5\\x89\\xd6\\x12\\xb1\\x89\\x8a\\xbf\\x8b\\x95\\x1d1\\n\\xc9 \\xb4\\xf3\\xd8M-,H\\xb2,\\x12\\x0f\\x83\\xcd\\x94Y\\xee\\x18j\\x05Dr\\xf7\\x04z\\xe0\\xf8\\x18\\x18\\x1b\\xc6\\xa6\\xfb\\xf8~i\\xfcs\\x16\\xb1\\x9cu\\xdazQTu\\xc9'b\\xc8\\xab]n\\x7f\\xc9\\xf2N\\x8d\\xab\\x8d\\x93\\x0bDl$\\xc8\\xe8\\xb0[\\x9f\\xe7\\xb8\\x9c*\\xd5\\xd2\\xf1*\\xd8\\xc9\\x01MvPq\\xc0ss\\xb3sg\\xb9\\xaf\\xac2\\xc9\\x06\\x08(\\xaf\\x9e\\x00\\x82\\xb6\\xf6\\x85\\x90\\xd5\\x96\\x9bU>\\x95d\\xd9\\xa2G\\xcf:Gr.d\\xca\\x1fN\\x8d1>\\xa7\\x1bG\\xb5Sy\\xc3\\x18\\xd1)\\xb2\\x83\\xc9BZ\\x17m\\xb7f\\xf5\\xfd\\xa8;\\x184\\x9c\\x90\\x03\\x9e\\x92\\x0b\\x07I3*\\xa3\\xef\\xbd\\xd9$\\xa2O\\x05]]~\\x83\\xc9t\\x98\\x89\\xed\\xf4\\xbe\\xe3LX\\x9c\\xa7\\xe1o1\\x95n\\xfb2\\xe5\\xc0d\\xf0\\xfc\\x80\\x96)U\\x1c\\x83\\xb4\\x19\\x9a\\\\\\x84\\x0c\\x0b`9\\x8b\\xbfE>\\xff\\xfc\\xe4\\x87\\x937'\\x9c_r\\x85\\xdd\\x17\\xea\\xb9\\x0f\\xce\\xcbWoN_\\xbe8\\xe3\\x7f\\xbezy\\x86\\x9f^\\xbd}\\xe3\\x18\\x16h\\xa6u9\\x8b\\x92\\x98uYqM*\\x9b\\xa1\\x05\\xc5oX\\xc1\\xcbd~\\xab\\x9f\\xb2\\x9d\\xc6\\xa1\\xe5\\x8e\\xadq\\x05E\\xba|m\\x9c\\x9ez9/\\xbd\\x9c\\x7f\\xe6T\\xe6\\x95\\x93\\xff\\xa6I\\x91\\xf60\\xd6\\xb5\\x0d\\xbbFX\\xa8\\x1a\\xe3\\xaazb\\xaf$\\xb4\\x8e\\xb1TC4\\xdd\\xa4A\\xf9\\xdc\\xa6\\xd1X\\xa9);\\xac\\xf2|\\xd0\\xd9\\x9fF\\xa2\\x1b-\\x19Y\\x8c\\xda\\x17\\xaa!(\\x88\\xbe<\\x8e%\\x82V\\xb3\\xf9\\x8c)E\\x13g\\xe1T=\\x1f\\xc1,\\x0d]\\x898\\xd6\\xd3\\xc3\\xe1\\xc8\\x87\\xc3\\xe1\\x01\\xff\\xe7\\x90\\xff\\xf3\\x80\\xff\\xf3\\xd0\\x80.\\xf3A\\xca\\xe6a\\xda!\\xdd\\xb8|\\xc2\\x85\\xca\\xefr\\xa9Y\\xf9tk\\x99\\x16qK\\xb9\\x9b\\n\\xa5v\\x96\\xcc\\xad\\x07\\xf4%\\xd0\\xed\\xba\\x0f] \\xaeYy\\x8a\\x12:jn\\xbcl\\xbc\\x03\\xe8\\xb1\\xc1\\xf7J\\xe5N\\xf8\\xcf\\xd7d\\x10\\x84\t\\xcc\\xe8g\\xb6Ib\\xbc\\xd79\\xe7\\xbfQs\\xee\\xba\\xfa\\xda\\x1a\\xd5\\x9c\\xd6\\xe2\\x06a\\x07t\\xeb\\x0b\\x929\\xec\\xa5\\xd9\\xc6\\x16\\x8a\\xc2\\xff\\xf9\\xe3\\x0f\\xdf\\xe7\\xf9F\\xcc\\xc3n\\xaa\tw\\xf4\\x8c\\x03\\x0d\\xfb\\x9aK\\x81\\xb6\\xe3a+}*\\xd7 D\\x0c;\\x11)\\xf9(\\xd0\\xd9\\xb8!\\x17\\x9c\\x9fE\\x91\\xdc6\\xb1\\xb9\\xae\\x88\\xeakw\\x19\\x013\\x92\\xea\\x0f\\x13\\xc6\\x17'\\x15\\x8d\\xbf}\\xfd\\x03\\xaa\\xcc!\\x1cA8\\xd0\\xde\\xc2\\x18X\\xd9\\x9f\\xe4?\\xfbb?\\xfa\\xbcR\\x8b\\xcf\\x8b4)\\xaa\\x8e\\x0c\\xbd`\\x9e~\\xf9\\x83/Ss\\x93\\xb1+x\\x0c^\\x82\\xb7c\\x8e\\x8f`\\xd1\\x99\\x1a\\xcb'\\xad\\xba\\x86\\xbe`\\xf9u\\x92\\xbe\\x97\\xe6uX\\x04a\\xc4\\xe6&\\xdf\\x0f\\xf9\\x88\\xae\\xf3p\\xcd\\x92m\\xa7\\xf3v\\xf9|\\xb1\\xce7,v\\x13u\\x1c\\x95\\xd0\\xf9\\x17\\xa6\\xdaq\\xc2x\\x16m\\xe7\\x8c\\x0e\\x1f\\x92\\xd2i\\x0f\\x97\\xac\\xc2\\xc1u\\x98\\xaf\\x8eK\\xe7DTQm\\xd1\\xedFnc\\xc9\\x17\\xcc\\xd5vQp\\x11\\xf2\\xc2\\xe0\\x03\\x90 \\xb4\\x93\\x7f\\xb4|B\\xae^\t\\xa8#4\\xb0\\xb8K\\xcb\\x87K\\x92\\xbcR<w5\\xf7\\xf6D;t;\\xa2\\xa3\\xb8\\xb1\\xfe\\xd2&\\x95\\x9a\\x89-\\x92\\xcf\\xc1&\\x89n\\x17a\\x14\\x99\\xbc\\x82\\xd5_\\xae\\xb3\\x95\\x17\\xfd\\xf5\\xbb\\x06\\x19\\x8b\\x16pD\\xff\\x8d5\\x15\\xeb\\xb3.\\xca\\xc6\\xee\\xa3\\xa1\\xe9\\xfa\\n\\x7f\\xff\\xd0|!\\xe9\\xe1#\\xcb\\xcd\\xa3\\xf2\\xaeP\\x18bN\\x08\\xcb\\xad\\xe0!\\xf3\\x18\\x92\\xf2[\\x15%`\\\\\\xcby\\xff\\x99\\xf3;|X\\x9dG\\xa2\\xe6Q\\x9f_\\x1d\\xb2.\\xd3`\\xf6\\x9e\\xf1\\x89t6\\x0d`F\\xb8\\xe9y]\\xa62\\xd8\\xb0\\xc2x\\x1e\\xceX\\xa9\\xf5v\\xbeJ\\x1d`f9J>\\xd7\\xa5\\xa7\\x94mX\\xd0\\x1a\\x03\\x03\\xb4^\\xea\\xad\\x96A\\xb6~/\\xedy\\x90\\xb3\\x92\\xd5\\xec\\xf4\\xec%\\x19\\xce\\xcae\\xcd\\xd1x\\xe6,\\n\\xd7\\\\1\\x1b\\xe3\\xed\\xe0\\xdaw\\x19\\xecf\\xcf \\xd5\\xd2\\xb7t\\x0c\\xa9\\x08>a+\\xf2\\x17\\xd4\\xd5_\\xc6\\xd1\\xed\\xd8\\x98c0ci\\x18D\\xe1/\\x8c\\xcfe\\x87\\xd5\\nj\\xb7W\\xe5c\\xd8\\x8b\\xec}\\xb8y\\xb1\\x8d\\xa2\\xcc2\\x06\\x04g^\\xe0\\xfb \\x9eG\\x18\\x19\\xa5b5\\xaf4\\xaak\\xec\\xc0D\\xe0\\x17\\x15\\x8f,\\xf3!\\xf2\\xb9XW\\x84H0\\xcdFZ\\xb2\\x0d,\\x15\\xbd\\xade\\x07\\xba'h\\xe4a\\x95\\x88\\x8buW\\xa6\\x9b\\x10\\xd2-\\xf8J\\xf7\\xe7\\xe0kK\\x157nc-u%\\xfc\\xaaI\\xd0\\x0f\\x95\\xcb\\x14e@[q:\\xc9G\\xb4\\x15\\xc0\\x80\\xbeo\\x86+\\xde\\xfc\\xb9B\\xff\\xd8\\x16X\\x07\\xbb\\xc7\\xf9\\x15JX\\xf5x\\x19\\xf4^\\x06\\x02\\xa8~H\\x07a&n\\x15\\\\y\\xda\\xf0\\x8f`:w1B<\\x8c\\xabs\\xf08\\xb2O8\\xda\\xcf\\xdd\\xcc\\xbd*}:\\x871\\xaf\\x19\\xebe\\x84\\x8b\\xc7\\x95\\xe7\\x19T*\\xbe\\xd9k\\x1f\\xed\\xe7&\\x0b\\x0enY\\xc1\\x0c\\xaf\\xd4\\x10\\x0d\\xf1\\xffx\\xd9\\xf2}\\xa3\\xc8\\xf3\\xf0x \\xb2l\\xad]\\xc5\\xbd\\xad\\xa4=3A\\x07\\x88\\xc3\\x87\\x19\\x1c\\xc1\\xed K\\xd2\\xdc\\x9d\\xf1\\x0d\\xee\\x92\\xa0I\\x99:/\\xc9\\xdb\\xed\\x12\\x9e\\xc0Zy\\xbb\\xf5z\\x97M\\xfa\\xf7\\x05L`=\\xbd\\xb4\\x18\\xbc\\xd0\\xdd\\xab\\x00\\xd8\\xe9\\x05frp\\x97\\xd5\\x9b\\xf3\\xee\\x95\\x07G\\xb0\\x949e\\x98\\xcb\\x8b\\xfa\\x90`\\x045\\xaf\\x05m\\xf9<kUc\\xe8\\x81\\xcb\\x85\\x03g\\xc0w\\xfeB\\xe5)\\xbdP\\xb9I\\x9b\\x1b5\\x10\\xad\\xda\\x1b\\xb9\\xffe2d\\x16\\x05\\x1a\\x99\\x99:\\xd7\\xaf\\x13\\xbe\\x00\\xe8Vn:\\x08\\xb2,\\\\\\xc6\\xee\\xdf?b\\x03cc\\xdc\\x1c\\x15\\x90)\\x90x\\x80\\xa78\\xc5}\\xdf\\xd2{\\x8d|\\x15BUP\\x10\\x08\\xa3\\x1b\\xcd\\x89\\xa8\\xbf\\n0\\x00\\xfa%\\x83@M\\xae\\x96S\\xe4J\\xc4\\xbd\\xd1\\xf0&\\x18(\\xa6\\x06G\\xb0\\xd5~\\x8d\\xf5o\\xf5\\x95\\x98\\xa1@\\\\'\\x1e\\xc1\\xa0\\xce\\x1c\\xe0\\xc8\\xfcz\\x0c[\\xc3\\xebz_\\x0b{_\\x92OQ\\x17\\xea\\x17\\xb6,\\x7f\\xd5\\x1b\\xdcX\\x1b\\x14\\x81\\xa1\\x8e\\x8a?\\xc7\\x8a\\x8a\\xd5\\xdb\\xe1*\\xba\\x91\\xeb\\x14\\x1b{\\xa4\\xfd]4eX\\xd0\\x95\\xbd\\xad\\x8cR\\xca\\x8b?\\xe8\\xb4\\xa8\\xde\\xc0U\\xb1\\xb3\\x04[\\xe8Y\\xf5<\\xc9\\x91\\xe7h?\\xebU\\xd7\\x0d}\\xeb\\xe2\\x06\\x0d\\xa2\\xf4\\x06WZ\\x7fSo}\\xd9\\xb2\\xda\\x85\\xc4\\xa3\\xad\\x96\\xf6\\xb2X\\xb6\\xe2e\\x1d\\xd9J@M\\xc2\\xbd\\xa7\\xfeB#\\xba\\xf06)W-2_u\\x8a\\\\\\x91\\x88\\x06s\\x96f~\\xd1\\x91\\x05;\\xdf\\xc6\\xef\\xe3\\xe4:\\x16\\xba\\x06$\\x1b\\x14\\x7f6ir\\x15\\xce\\xd9\\xdc\\x88\\x9f\\\"\\x1c+\\x0e\\xb8\\xe8j*{\\xaa\\x90v\\xcb\\xa6-\\xc2\\x88\\x10\\x1a\\x1dZ9'\\x91\\xef<\\x17\\xf3\\xc2\\xd5o\\xe0\\xaa\\x02\\xa8\\xfbb\\xf2v\\xbdZ}\\xa0\\xd7>\\xa6\\\"\\xa8\\xf2f\\x14Bd,\\x9c\\x82\\x8e\\xe9\\xee\\xa2\\x13\\xde\\xbf\\xa0\\xd6\\xd5\\x8b?\\xd7\\xd8)\\xfa/|G\\x8b&\\x0c,\\xe5\\x97c\\xae\\xf8\\xa3b\\x82\\xaa{\\x80\\x05\\xc4\\x1b\\xcef\\xd4\\xc71W\\xf4\\xb9^\\xe1\\xe8u\\xea\\xb3\\xb9\\x81\t\\x84\\xd3\\xeb\\xcad0\\x88\\x8c[e\\xf9\\xb1\\x87\\xd1\\xb0\\xee\\xdc\\x91\\xcc\\xbdz\\xc7Q\\xf1\\xf03\\xe2\\xe1g\\xf0\\x04n5\\x1e~f\\x13n\\x8fa\\x02\\xb7\\xd33\\x03\\xff^\\x94xw<=&\\xde\\xcdw\\xe0Dr\\xdb\\xcc\\xe5\\xef1\\x8a\\xef\\x8d\\xe2\\xa0p\\x04sI28d\\xad|\\xb8\\xf2\\xb9`u\\xe1\\xc3\\xb2\\xcaX?\\xd6\\xd6\\xe5=v\\x80nf\\x91\\xc1\\xcc\\xf9\\x0c\\x0d\\x05\\x02\\xe9\\x82\\xf9\\xfc\\xff\\xd9\\xb2\\xf4\\xf6U\\xca\\x16\\xe1\\x0d\\xdf\\x86#\\xc7\\x10\\xe3I\\xec\\xfc\\xfb\\\"\\x0f\\xc2\\x10\\x8e\\xe0\\x19\\xf4\\xe0}%\\xc2\\x0f\\xfe\\xf5\\xab\\xa8\\xd7-\\xb8\\xdeE\\xefV\\xe4\\xd4\\xac\\\"\\xe1g\\xe56b+\\xc4A\\xfa\\x07\\xceb\\xc7p`P\\x1a\\xc9\\x81\\x12\\x95F\\xfa\\xd3T\\xa4Y'\\x9d\\xb3M\\xbe\\x1a\\xc3=\\x03\\x13\\x0c\\xd2`\\xcdr\\x96\\x8a\\x01\\x8c\\xd8\\xa1\\xa1P\\x14\\x841\\xad\\xd6\\x17\\xd3\\x05\\x83\\x0e\\xc1T\\xa0\\xcd[V\\xed\\xb0\\xc6\\xe6\\x8e\\xb4,\\x19\\xfb\\xef\\x06\\xee\\xf4\\xa7\\xc1\\xf4\\xbc\\xe7\\xa1#\\xeb\\xf4\\xdfF\\xe7x\\xaf\\xcf\\xe2{\\x05b\\xa3\\xf7\\xddw\\xd3\\xe9O\\xd3w\\xe7\\xe7\\xdf\\x9c{\\xb6\\xc45 fQ.L\\x89\\xa6\\xd2\\xa6c8N\\xddP|\\x14W\\xaa}\\\"[\\xec\\x06\\x13R\\xd8+f\\x0d\\xe7\\xd8|\\x99j\\xd1\\xcc\\xaa\\x05\\xf6\\xe2\\x81\\xbe\\x95\\x80\\xf9\\xc2\\x90\\xa3UQ\\x01C\\xa3Q\\xba\\xea\\n\\x0cK\\xa2m7hgt*n\\xb8\\xb3\\x05\\xd6\\xd3\\x1fE,Eno%4\\xbb\\x01\\x86p\\x14\\x8b\\x8ac\\x8a\\xe0\t\\xc4\\x03\\x04\\xe9\\xc60\\xdf|\\xc6\\x11\\xf40t\\xfe.3\\x0f\\xa6\\xa3s\\xb15#\\x1f\\xfa\\\"`\\xf7g\\xacD`\\x0cJ\\x01\\xd6\\xc5\\x90\\xb6\\x1a\\xde\\xadh\\x82\\x14%\t1\\n\\\\\\x84\\xded\\x1d@\\x17\\x04+\\x95\\x97\\xdb\\xc0\\x91*\\xa7,/Zr\\xb3\\x91H>0|\\x0c\\xfd~\\xd2\\xd6\\x18\\x08\\x04\\x0d)\\x8a9\\x9b&\\x0d\\xa9\\xbd\\xe5\\x83\\x92\\xc3T\\xc4`\\x0b<\\xc4FL\\x830=\\xf7$\\x8b\\xb3\\xb9\\x97\\xe9O\\x87\\xdb\\xd4\\xf2A\\x8bq\\x19<\\x8e$o\\x98\\xa5,\\xc8\\x19\\xeap&\\xfd\\xce\\xf6\\\\\\x89P~|\\xdb\\x88-\\x16\\xf9\\x19\\xb9\\x92w^y\\x1dhk\\xec\\x91|\\xad\\xc1\\x1f\\xd7\\xc2\\xec{\\\\}8\\x95@\\xf3\\xf5i\\x9c\\xbb[\\x1fF\\xa6\\x90\\x0d\\xa6g/\\xcc^\\x04/\\xdc\\x0c\\x87\\x18 \\xf6a\\xd0{a\\xa0\\xc9<\\x1c3\\xbe\\xca(\\xcc\\xa8\\xc8\\x81\\x9cf\\x0c\\xc5\\xc7\\x8c>=Az\\xac\\x98\\x1a\\x1c\\xa9\\x0d\\x9cf\\xe7\\x18\\x05\\x7f\\x0c\\xe1t\\x8b\\x7f\\xb6\\x0e\\xcc\\x8c!\\xfa\\xc3A5l,\\xd5\\xdc\\x86\\xc06\\xfbP>\\xba\\x99\\xc0\\x9eZ\\x91\\x8a\\xa9\\xf93\\xcc\\x0c\\x9f`O\\x88\\x858P\\xb5'\\x94\\xde\\x1b\\xed\t\\xaa\\x84Ecy\\xcev\\xb0'\\xe0\\x98\\x06\\xe12NR\\xa6K~J&4|\\xf4q\\x08\\xd2\\xc801\\xc5\\xca\\xd6\\x0b\\x08K\\xe4k\\xb6<\\xb9\\xd9\\xb8\\xda\\x17\\x0f\\x93T\\xea\\xe6\\x8aP3WH.\\xc1;\\xa8[>\\xe5\\xc7#\\xf5\\x17\\xd5\\xdeP6K\\x0d\\x80-\\xd5K ^\\xfa\\xc9\\x1b*~\\xfa\\x15$\\x99\\xc0\\xdeHl\\x94\\xf6\\xda\\xd7\\xf6\\xcd\\xa2\\x87\\x17\\x05\\x8e\\xb4\\xbfi\\xd4dO(\tBf}\\xbb,*\\xe9\\xbfp\\xd4\\xca<P%\\x89\\xb6\\xd6*t\\xb3\\xf2\\x82\\xb7\\xa9\\xbfP#,\\xd8h\\xf38\\xb5rG\\x86wj\\xcc\\xc5;\\xb1\\xdc\\x9aTk\\xdb\\xc0J\\xa9\\xa3\\xfa+\\x1c~\\xe9\\x15&:\\xad\\x1b\\xb1ls0\\x9a\\xc1\\x8c\\xaf\\xc9\\xab\\xa2f\\x06S\\xc9\\xc6K\\xaa3\\xfe\\xd2l\\x1dL\\xcf\\xf4\\xfc)\\x8cL1\\xfe\\xad\\x19\\x1b\\x19\\x1c\\xb5\\x9f\\xfd\\x95\\xa2\\x96r\\x1a\\x86R\\x84\\x814\\x94D\\xf4\\x9f\\xde\\x1d\\xed\\xfb\\x98|\\x96\\x8b\\xe5d\\\\\\xadm\\xe0d\\x02#\\xd8G\\x1dQL{\\\\+E\t\\x92R\\x19I\\\\'\\x04\\x81G\\xb9>\\x87\\x8f9\\x7f\\x82\\xad\\xa6\\x86gM\\xba\\x85\\xb0A\\xc3\\x04\\xb6\\xd3\\xac!\\xff\\xd5\\x86\\x93\\xf9\\\"\\x13\\xf1y\\xe3\\x85\\xbd9L@8}q\\xc5\\\\\\xab7\\xc1E\\xd8@\\x8fKZ}\\xa02s\\xce@\\xe9V\\x91@sw\\xe1\\x178\\xef\\xf9h\\x85\\xcd-\\xa0F\\x0e\\x01\\xb4\\xba\\xd5V\\n\\xfdc\\xee\\x99Z\\xac\\x16\\x9cc\\xc4p\\xbd$\\xbaA\\xa0\\x18\\x1d\\xfb\\x10!5\\x9eF\\x18\\xe1\\xfb\\\\\\nk\\xfc\\x85\\x92\\xdc\\xf0\\x00D\\x14\\x99\\xb5pS\\xd0<\\xb4\\xcalVD\\x8eEp\\xc9v\\x11\\xde|T/t+\\xceVLV\\x86n\\xd7\\x00\\xc3\\x1e\\xc1\\x1d&\\x10Mg\\x16p\\xd8`\\x9c\\x86\\x85\\x0f\\xdb\\xe9\\xe2\\x9c\\x8f\\xb3.|e\\x08\\xa6k\\x96.\\x19\\x17-65\\xd1\\xc2\\x18\\xfe<\\x1d\\xcc\\x92\\xf5&\\x98\\xe5\\xae\\xe6\\xb5\\xde\\x1eaS\\x97D\\xe4\\xf5#c\\xa5\\x8az\\x10\\xbb\\x87\\x8ft\\xc9\\xb10\\xa6\\x1c\\x1c\\x0e\\xcd\\xbe\\n\\x8f\\xaaA`C\\xf5\\xbeh\\x07\\xaf F\\xb7/7,EOAT\\xef\\xca\\xaf|Y\\xe8U@\\xde|\\xa1\\xf6S}|\\xcd\\xe6\\xdb\\x192\\xcb\\xb0\\xf4\\x82\\x17X\\xb2\\x1c\\xad\\xc4\\xdf\\xde\\xbeJ\\xc28\\x17\\xa5joyQ\\xf4\\xa8\\x0c\\xf0\\xaeH\\xa8~h\\x1f\\x92T\\xff\\x92\\xa4\\xe5\\x15\t\\xd4\\x8a\\xe83\\xfcS\\x96\\xc48\\xd8\\x13\\xe1\\xa9\\x15\\x0c\\x8a\\x9f>b\\x16\\xdb\\x1c\\x0b/\\xe4`p\\xa1~bV\\x8al\\x16l\\xd8\\xab _\\xa9\\x0b\\xb3X\\xca\\xf0\\x9e\\x17\\xdf\\xc6\\xb6\\n\\xc6/\\xe5\\xe1o\\x0dy\\xfdZ\\xdd\\xea\\x05<\\xb6\\xfb\\x1c\\xd0\\x05\\xcd\\xcb\\x8c\\xa5W\\xe4\\xc19=\\x97\\xb76/\\x7f\\x86j\\xc6\\x0f\\xa8\\xcb\\xd3\\xd5\\x1bu\\xd1\\xceCk\\x0bT\\xc9i\\xd7e0{O\\x81\\xdcJ\\x03\\x86\\x89)\\xdafu\\x80\\xa6\\xd8\\xdf\\xb3\\xfa\\x92\\x94\\xb2\\xa8R\\xce\\xa9\\x14\\xd3\\x92Kz\\x13\\xc3\\x13H\\x1fC\\xdc\\xeb\\xd5\\xb5\\x0c\\xb4\\xedL\\xe3sZ6\\x8c\\xb4@\\xb6u\\xeb\\xd4\\x90a\\xc5\\x16u\\xfb2e\\xc1\\xfb\\x96\\x99-\\xdc\\x9c\\xee\\x8b\\xf8\\xaa3\\xfe\\xd7\\x86C1\\x17\\xb10M\\x84\\xfa-\\xb5W\\xb4\\xaa\\x14\\xa8\\xaa\\xb7!J\\x1a\\x8e\\x10(\\x85\\xac\\xf8n4\\x12\\x87\\xba\\x91\\x18C\\xd9\\xca\\xe2\\x02\\xa6X\\xb1\\x8f\\xea\\xc6\\x0f\\xff\\xe5\\x86\\x98\\xf8K\\xa3\\x96\\xf5\\xcdZ\\xb8*\\x1b@\\xcd\\xa2\\x81!&(\\x99\\x8ei\\xa9\\x8dBz>\\xc8\\x93?\\x9d\\xbd|\\x01\\x94\\x83u\\xa2^\\xb8\\xa6@1\\n.B\\xe4\t\\x17\\xb4\\xd4\\x7f\\xe6\\xac)\\xf7H\\x18*\\xbfe\\x1e\\x899{#\\xe2}A\\xc9:\\x93\t\\xebL\\xd6\\xef7\\x8a5h\\x8eAN5\\xcd\\xce\\x1b,\\x8a{i\\xed\\xe2\\x98\\x0f\\x1b\\xaf\\\"}\\xe6\\xd3\\xcdyE\\x07\\x8d\\xd0dF\\x02L\\xf9\\x88)\\xf7T\\xccz\\xbby&\\xd9\\xe0\\x91\\xcd:\\xb9b\\x0d\\xf9\\xb67A\\xbe\\x1a\\xd3\\xcd\\xc0}2\\x8f\\x19\\x08\\x9e\\xbb\\xb1_\\xcc\\xc1\\x85\\xb4\\xe4zm1 ]\\x89\\x9c/|\\xeev\\xf3\\x8a!\\x1fD\\x04E\\x92&\\xfaa(4\\xd3\\x0b\\xcd\\xb8\\x90\\xe8\\x92(\\xca\\xa1\\xb4u\\xbe\\\\\\xd8!\\x13\\x01\\xb6\\xe3\\xee\\x0d\\xfd\\xf6%\\x87b\\xd9Q0oXw\\xd8a\\xed\\x9b[\\x11\\xd1\\x97S\\x8d\\x05\\xba\\xb3&\\x17\\xd8\\xaefT\\xb3_\\xd4\\x96\\x03\\xae\\xa2&{\\x05\\xf6\\x98\\x9bE\\xe4\\xd4\\xd4\\x86PQ\\xeb\\xac\\xd7k\\xb2~r\\xe0\\xd8\\xe0Yb\\xd6\\x00\\x1c5\\xdcb6\\xdc\\xe2\\xaa_\\xe7\\xfd\\x0b\\xe6\\xf3\\x7f\\xd8\\xde\\xf1\\xd16m_\\x87\\xdd\\xd3\\\\\\x8c\\xd5_\\\\\\xca\\x11l\\xb9\\xcd\\x9e\\xa6\\x15\\xd5\\xb3\\\"pI\\xa9c\\x0b\\xa8\\xc0\\x92\\xe9\\xbbY\\xc4)\\x850\\x1b\\x12_/\\x18zN\t\\x86s\\x13C\\x07\\xc5\\xd4s\\x8d\\xa9+\\x1d\\x9e\\xbf.\\xafI-\\x00\\x12\\xaf\\x9d\\x88\\xa3\\xfdVi\\xa7\\xa4\\x97\\x0b\\xc9\\x83\\x15\\x82Y'\\x19Dv\\xaa\\xd5\\xe3\\x12I!?M0\\x8f\\xa8\\xbasU*%\\x7fT&\\x95\\x08+\\xa7+/\\xd2\\x08\\xf6F\\xa0\\x9ep\\xde]\\xf8\\x08\\xc4\\x06\\xab\\xa303$$f\\x10\\xaf,\\x80\\x11\\xaf[\\x9b\\xd6#\\xd6\\xc5>\\xb4\\xe8\\xc4\\x14\\x0c\\x84S\\xdc:\\xbeJ\\xf6\\xdc(y\\xcagf\\xbd\\xa5k\\xc6\\xa6N\\xb1\\xd6\\xf83\\x8bX\\x90\\xbe\\xa1\\xeb\\x17.\\x8d\\xd8\\xd3\\x86\\x9e\\xb1\\\\~\\x0c-\\x03\\xa8\\xcf\\xcc\\xec\\xc2\\x7f\\x1d\\xc6\\xf3\\xe4\\x1a9\\x07\\xfd9\\x08\\xe6\\xf3\\x93+\\x16\\xe7?\\x84Y\\xceb\\xb4?\\xda>\\xb9\\xce:\\xd9fl\\xbbq\\xc8\\xeab-\\xf6\\x9e\\xdd\\xb6\\x17\\xc2\\xb6\\xe6\\xc9u\\xdcV\\xf0=\\xbb\\xedRl\\xb6\\n\\xe2%\\xc3R\\x08x\\xf3d\\xb6]\\xb38\\x1f\\xc8?N\\\"\\x86\\xbf\\x83<\\x0ff+\\xac\\xed:I\\\\\\x9eS\\xd7Z\\xfa\\x14\\xbb\\xd6\\xa9\\xce\\xb8k\\xbd\\xf2\\x02t\\xad\\xa5\\xafG\\x07\\x13D\\\\\\x91\\xbbc\\xa1\\x1a\\x90\\xf6\\x14\\x9b\\xa9\\xb4\t\\xa8g\\x98\\xb7\\xc5\\x08\\xd2F\\xd8m%q\\xaa\\xe0\\x17\\\"u\\xf21\\x90\\xbcB?,\\x91<\\xe4\\xd9zW\\\"\\x07x\\xec\\xc3\\xc8\\x82\\x90\\x9c\\x00\\xf2u\\xe8\\x8a\\x86$\\x10\\xdb0\\xd1\\xf0\\xd5\\x82\\x8c\\xc6\\x92\\x06|\\xb4\\xb7X\\xc75[\\x9b\\xaad3\\xbe\\xcd\\xd9\\xa7\\xe0[\\xa5V'|3\\xf5\\xd4\\x05s\\xea}\\x15S\\xab\\xa0\\x0e\\xe7H\\x05\\x1cP\\xe8\\x06v\\x0d\\x94\\x94\\xc9+Ed\\xfdH\\xd6\\xaa\\x98\\xa5d\\x82\\x9a\\xf1\\xdfh\\xe7K\\xbb\t*\\x06\\x97\\x10i\\x04)\\x14[\\xd4\\xd6\\xab\\x19\\xc0\\x9a\\x8c\\x86J;\\xfe\\x9c$`\\x9d\\xd3z\\x95\\x12\\xfe\\x1a\\x95j=C\\xd9Q\\xe9\\xd7\\x18bo\\x90\\xad\\xc25g\\xdf\\xad\\xf3\\x92K\\xa6e|[\\xe2.gx\\\"o'Zb\\xd0-\\x11w\\x02\\xd9\\x9a&y\\x9aMD\\x86\\xb4:\\xd2\\x17\\xd22\\xb4\\xd6`?\\xda\\xf6\\xd6\\xfb3\\xe4~Q\\xb7\\xb4\\xcc*(\\xbd\\xaf\\x1f\\x9b1\\xcd\\xd8\\xd3\\xc9Y\\x96\\xf9\\xe0\\xf0?\\x18s\\xc8\\x91\\xa6Vk#\\xca\\x9ff'\\xf1vM\\x111\\x0cu?|\\xd0]\\xca>\\xba\\x14G\\xb3\\x80\\x9c\\x18\\x8e\\xd0\\xb7 \\xf1\\x06E4\\xfb\t\\xa4d%\\xd5_%F@\\xd9\\xc9\\xa7\\xd0\\x08\\xa6\\x14\\xb5\\x03\\x17.\\x13a\\xd4\\xaa\\x1fUH\\x8f\\xd2\\x81\\x9aeo\\xe4\\x92\\x17\\x93\\x86\\xa6\\xbb^\\xa5\\x1dm\\x1e\\x1f\\x1b\\xcc\\x928\\xcb\\xd3\\xed\\x0c\\x0d\\xdc\\x93\\x89\\xfe\\x0dM\\x07b\\xb8j\\x97\\xe0\\xa8\\x98\\xd4\\xd802\\x13\\x94\\xdb\\xa1N;\\xc9<\\xe2P\\x16a\\xab\\xfa\\x89&\\x7f\\xaf\\xf1\\xc5\\xb1\\x0e\\xa3\\x93\\x92\\xa3w\\xbd(%\\x8a<2\\xa5\\x17r\\xf0\\\\\\xbe\\xd4^K\\xbfi\\x1bn\\x19r\\xf6H\\\\\\xd6\\x87\\x9c\\xd0\\x000+\\xccX\\x8dC\\xfb\\x12\\xb8\\x95,\\xf4\\xa6\\xce\\x0c\\xf9w\\x94\\xce\\xb5\\x0e6n\\xd8<VCN\\x1aI\\xcf\\xadG\\xc2\\x92\\x9eW\\xd1[\\x04Xr\\xf3i|\\x8eq\\xd5\\xd94\\xae\\x05\\xc1\\xafS{\\xc3\\xa8\\x0cyhJ\\xca\\xb5\\xa2\\xab\\x85!xT18\\xaa\\\"\\xd3\\xd19_K\\xfd\\xe7\\x98\\x84U\\xb3\\x03/Fec\\xab\\xe0*L\\xb6\\xe9\\x18\\\\C_\\x07\\xd6\\xbe\\x0e\\xca}\\x1d\\x9c\\xe31\\xa37(\\xb7\\x8aW\\xec\\xa4Y\\xad4\\x02uF\\xce\\xb7\\xae\\xd9\\xda\\xa0\\x90\\x1bcR\\x97[\\xf1|\\xb2\\xa2\\xd37_:QF\\\\\\xc8U\\\"od\\x92uK\\xf9\\xab\\xd3itN\\xa7\\xdd\\xfa\\x11\\xe9L$\\x8e\\x1e>\\x86\\x0d<\\x81\\x85jpc7\\x82\\xf1\\x161r\\xc5t\\xd3pj\\xbe\\xe2\\x02\\xcft\\xdeP\\xe2\\ns9\\xae\\x1a,Qk,\\x11N\\xe7\\xb6\\xf8\\xee\\xa5\\xab\\x08x\\xe5\\xcd.\\xf1c\\xd9\\x920>\\x81u\\x93\\xba\\x01b\\xae\\xe8\\x00\\xa2w\\xb2\\x86#\\xe0\\x83\\xea\\xe03\\x18R\\x02\\xec\\x0c\\xbd\\xbe\\xa6K\\x1f\\xb6\\xee\\xca;7\\xba\\x9b\\xc9G\\xc4\\xc9\\x165\\xb7\\xb5\\xab\\x07\\xf2Q\\xd7Ztj\\xd36\\x7f\\xadh\\xa7\\xb9\\xdf\\xe2\\x81\\xb7m\\x08\\xf2\\x11cu\\xf0\\xd4\\xdb\\x11~a\\x154\\xa1%\\x93\\xbe\\x02\\xb7\\xe6\\xcb\\x92\\xf2)\\xaf\\x81}\\x00z\\xa9U\\xad\\x84Q\\xcd\\xd5\\x0f\\x8cT3\\x9dra6R-\\\"A\\xe2\\x14\\x04I\\xd8\\x11\\xe4\\xe8\\xe61\\xc6\\xe4\\xd1\\x9c\\x12\\x8cDf\\x83\\\"\\xa5\\x01/p\\xae\\xb76M\\xcd\\xf2~Fn\\x11\\xc5\\xd8\\xfdb\\xd0\\x838\\xf9q\\x9b\\x07y\\xa3b\\xae\\x06\\xcf\\x8c\\x83\\xcf\\xd5\\xe0e~\\x86!\\xe9\\xd1\\x8c\\xf4h\\x10|\\xa0\\x18h\\xf5\\x00R\\x0d\\x94\\xfc\\x1b\\xcd#\\xbd\\x0e\\xf3\\xd5K\\xbc\\\"U\\xf3\\x9d\\xb4\\xa7[\\xcd\\xd4\\xf7\\xca\\xd6\\xb5\\xc8x\\xf6\\xc0\\x102\\xff8\\xc4\\xee\\xa3\\xd1\\xbd\\n\\x01\\xba\\xb8`\\xd9\\x8f\\xc9|\\x1b\\xe15\\xff\\xdd\\xba\\x8c\\xdd\\xd1\\x83\\x07|\\x01\\xddG\\x07\\xf4\\xdf\\xe8\\xbe\\xf89\\x12\\xff\\x1fz~Y\\xb0uG\\xf7\\xbc\\xc1_Y\\xf0\\xfe\\xc7`\\xd3\\xa5\\x8f\\x06\\xd1\\xd5\\x97\\x99|\\x0fG\\x9e[\\xf5\\xe3\\x08Eg\\xd5\\xcb2\\xe4\\xe50:\\xb8[y\\xbf\\xa5\\xa6\\xeeW\\x93\\x05\\xd3\\xa0\\x1f\\x8d\\xaa\\xb1+\\\"*_m~\\x86\\xaf\\xefU\\xbdG\\x16\\xc2{\\xe4\\xa0\\xf2\\x1e\\xcf-\\x07K\\x96\\xf3\\x15)\\x7f\\x9a\\x17\\xbc+\\xccNnr\\x16g\\xe1eT\\xb9\\xec\\xc1\\xd9N6\\xd8.\\xb2<I+\\x9f\\xae\\xc8\\xa2\\\\z\\xd7\\x1e@\\xb6\\xeau`\\xa3\\x9a\\x92\\x85\\x8b\\xa8x\\x06IcX\\x12'\\x86\\xe7J6mu=.\\x8fyi\\x94u\\x96\\xacS`\\x0d\\xbc7\\x81\\x12\\xb4\\x9d\\xf8K\\x1a\\xb71\\xa6f\\x90\\x8f\\x98\\xb0\\xf0\\x03\\xce\\xe1\\x08V\\xeeB\\xcc\\xde\\x11\\xf0\\xecx\\x1e\\xc6`B\\xd9\\x17\\xa3o\\x8bTEa1{c\\x07\\x86C\\xbf\\xba\\x98\\x90\\x95\\xa7\\xdc\\x1e\\xb4$\\x1b\\xcc\\xd9\\xc20H\\x1f\\xfdCv\\xdc\\x86\\xdb\\xaa\\x86\\xea>:\\x18z\\xaej\\x15\\xaf\\xe0-\\xf1\\xb6\\xfb\\xde\\x10c\\x19\\x15k9s\\xdb\\x8c\\x11\\x0f`o\\x02hY\\xba\\xf50\\xf7\\x97\\xbc\\xcb\\xb2H\\x19\\xfb\\x05\\x85Az\\xe1\\xb9W\\x9e\\x0f\\x0fh\\x9d5\\xf6\\xff\\x91\\xe4\\xf7\\xad\\xebb\\xca6\\xfe\\xf9\\xb8\\xd0\\n\\xdduy\\x93\\xb4\\x1b2K\\xcf\\x87`\\xf0\\xe2\\xe4\\xe49\\x1e\\xa0\\xfb\\x90\\xb8S\\x87\\xe2\\xe8:>8\\xab \\xe3\\xff-Y\\xce\\xff\\xcbX\\xee\\x9c\\xfb\\x0dp'a\\xe9V\\xeb\\xa2\\xb6\\xce\\xe8#_\\x8b\\x17\\x1cb\\xcc$\\xad\\xf1\\xdc\\xe0\\xc5\\x01\\n\\xa6s2@\\xcc\\xd1\t\\xc1\\x0c\\x06\\x04{\\x8b\\\"\\xfd\\xc7\\xc5B\\x1cN5\\x055\\x0eeP\\xe3\\x8b\\xc5\\x94\\x9d\\xd3(\\xcc\\xa5\\xa5f\\xc8W\\x05\\x84\\xbe\\xc9k\\xc2\\xd8p\\x89\\xc1\\xee\\x10)\\x82\\xda\\\"\\x90\\xe6\\xb5X\\xfe\\x1f\\xf5=\\xa6\\xbf;'\\n\\x7f4zh\\x89\\x9c\\xd4\\x88Fr`\\xec\\xdaE\\xed[\\x0f\\xf1\\xda\\x89/\\x16#\\xa8\\xf1\\x07\\xc1\\xb1jlI\\xb0\\xabG\\x9e\\xebd\\x1b6\\x0bY)MH7\\x89\\x0d\\x81\\xcf(\\xa6\\xa0V\\xce\\xf1\\xc3t\\x85B\\x18\\x9f4#\\n\\xda\\xa7\\xc8Y\\x08\\xa5$\\x84\\xb4\\xc4\\xd5\\xec\\\\\\x9e\\xca\\x81 h\\xba\\x0f\\xa9\\x00Ie\\x0e!\\x8f\\xa1ix\\xee)\\xff!Q\\xb8\\xc8\\x11/i)u3nMe\\xdf]8\\xa0u\\x1e\\xde7\\xae?g\\xfff\\xae+\\xdc<\\xab\\xd5\\x02\\xf3n\\n\\xa1aX\\x15&\\x84\\xa4s\\xb7\\xfa>R\\xf2\\x8aQj\\xa8J\\x07MRC\\xe4V%\\xb99\\xbe\\xad\\x8e|\\x85\\x87Ge8\\xe9*\\x05\\xb0\\xc1\\x05\\xa6~p\\xf1\\x0f\\\"\\x1d\\xeb\\xea\\x01A\\xe9\\xe7\\xba\\xed\\xb4\\x0c)K\\x80&\\xf7\\xa6v\\x96m8\\n\\xc5(7.\\x1b\\x04MD\\xb9R\\x9eqa\\x04\\x01\\xafV\\xaa\\x9a\\x0d\\xb9\\x80\\xa9\\xb5f=\\xac\\xca#\\x1dd\\x11\\xc9\\x17\\x96\\x82\\xceY\\x93@\\xa93\\xb8|:j\\\\\\xa1U\\xd0\\x1a M\\x8a,{E\\xafM-v\\x93/\\xe4\\xb1C\\xd3Lbt\\x9eGU/\\x97)\\x10\\x03\\x11_\\x9a\\xd5\\xe3KW\\xc6A\\xcc\\xb7mrrEE0c\\x1d\\x00\\xda\\xe4\\xa2\\\\\\x02\\x80\\xc1i\\xd70\\x1bQ\\xeb\\xbfs\\x90\\x89X\\x02y \\x9a\\xfbx\\x89`o\\xef\\xbf\\xabIe\\xd4_~\\x83bV\\x16R\\xc65R\\xe7Ch\\x9b:\\xba=\\x96\\xa24ZC\\xbcn\\xf9\\xd7\\x08[t.Brv\\xbd\\xc8\\xc9]\\x84\\x0d.8\\xc5[\\xf5z>\\x08$'\\xca\\xec\\x17FB\\xc0\\xcbw\\x99\\x9b\\xe2\\x88\\xd84<7\\xa7\\xc2\\xb7/]\\xeaF\\xba\\xc8e\\x1ef\\xb7m\\x97\\x0fzt\\x06(\\xd9K0\\x1f\\xd9\\x85w\t\\xb4\\xc9\\x0e\\\">\\x07\\xe2+%=\\xe7\\x9e'\\x121\\x90t\\x1f\\xf35\\x99\\xb9\\xb1\\xca\\x89\\x83LN\\xe4_\\x88\\x95\\xd8o\\xec\\xcb\\xe2>\\xd3\\x01\\xa3\\xe5\\xf3\\x8f\\x98\\xbdH\\xf4`\\x9a\\xbay\\x96\\x06\\x08\\xf1!j\\xc6\\xfcE\\x1d\tl\\x18\\x90\\x92\\xb5\\x14}\\x8b\\xf7L\\xf7\\x82\\xcb\\x13JqB\\x8c\\xb4\\x8b\\\\\\\\\\xbaI\\xa7\\x0c\\x95\\xb3\tBv\\xd3\\xd0\\x84\\x8a=\\x86\\xab\\x02\\xb5\\xff\\x00_@B\\xa9\\x8a\\x02B@\\xb4\\x983jf\\x8b\\xc0lo \\xc1\\xe4^\\xb5\\x95\\xcc\\\"\\x15E\\x16yef\\x91o\\x16fqhCRw5\\xbc\\xe9\\x1c_\\xdf\\x1dz\\x83E]6\\xb1\\x98o\\xae\\xa8\\xce\\xddV!XRJ\\xd2>oM2\\xf1%\\x9e\\x070\\x83m\\xfe\\x02&pY\\x7f}\\xcd\\xf9\\x1b\\x1e\\x122\\n\\xb3c\\xf6C=\\x81\t\\\\pd\\xb8h\\xd2\\xf6n\\x0c\\xe7Q\\x024\\xaf\\xac\\xa7\\x9b\\xd8\\xac\\x8b\\xd1zNTn\\x11.\\x85\\x07vU\\x9a?\\xa8B_x2\\xa9\\x82\\xeb\\xa1'\\x92[U\\xa9<8\\x02\\xf7\\x02\\x13\\xb9\\xe8\\xea\\xa6\\x11\\xd7f\\xfc\\xcb\\x05\\xaa\\xa6\\xce\\xc5\\x0c\\xb3.\\x0e.fB\\x1a\\xbc\\xd4\\xf9\\x04\\x12\\x06\\xbc>\\xb7\\xf4!\\x9f^\\x9f\\xd7\\xac\\x0c\\x9c\\x02\\xac\\\\\\xbe\\x9c>:L\\xf9D0}1C\\x7f\\xc9r\\x7f\\x15d~\\xc6r\\xff=\\xbb\\xcd|\\xca\\xf3\\xe1\\x8b\\xe9\\xf8t\\xfb\\xc0\\x91\\xe9\\xe9|>\\x9anb\\x02n!\\xc8\\xeb\\xa6\\x85\\xcaZ'\\x1b\\x0c\\xc2\\x18N\\xc8\\xd9\\x1c7\\xc0\\xc1\\xa1\\xa2\\xc2DZ\\xd4\\xd6\\xd57\\xbc\\xa4\\xb37\\x85Z\\xe7D[f\\x91\\xe0\\xeb\\xc9\\xe9\\x16\\xca\\x14\\xa4_-\\xdc\\xb8 \\xe7hp\\xa0\\xe1\\xaa\\xf3:\\xbb\\xca\\xae\\xf2\\x10]\\xcc\\xb8\\xca^P\\xf0!'\\xd7\\xbeU\\xdd\\x97\\xf2P\\xa1\\xb7'\\xb5rU\\x91\\xd8\\xf3)\\x88\\xd4\\xbc\\xbc\\x08N\\x16\\xfe\\xc2\\x1c\\x13o/K\\xc7m\\xa2\\x19\\xcdb\\xc0[\\xab\\x0f\\xa5\\x06\\xc5c\\x82\\xe2u\\xd5\\xdcC\\x96\\x94\\xa5\\x0f\\xd7\\x9e\\x0fYy\\xa41\\xde\\xfaT\\x06\\x1f\\xcf\\x87\\x8d+\\xb6\\xe3\\x86r4]\\xf8\\x90\\xb8\\xc9\\xe0?\\xa0\\x07\\xc9\\xe0\\xaf\\xf8\\xefw>\\xdc\\xc8\\x99\\xaf9\\x0b9\\xcb\\xd3$^\\xba\\x84\\x17K\\xcf\\x87\\x8b?\\x94\\x87\\xd9j:\\x7ftp\\xa0\\x99\\xcf:Y6Z\\x99\\xc9\\xb0\\x95\\\\\\xd6l\\x1dn:8\\xc3I\\xd4\\xf7%Yt\\xd8\\xb8\\x0e'-E\\xeek\\xe6=\\x06\\xd6\\xef?\\xf6\\xd0\\xfeU:`\\xb1\\xa5\\xcf*\\x8c1\\x08\\x1c\\xa6t;U\\xb8\\xd8}'\\xee\\xfe\\n;ab\\xeb\\x8f\\xaa\\x8c\\x94\\xd8\\xfa\\xdd\\xea\\xe1B\\xa0\\xf8\\xf1\\x97\\xdc\\xcfE\\x9a\\xac\\xbbH\\x98W\\xe2n\\x9f\\x0f\\xa9\\x0f[q7KsBh\\xdc(\\xca\\xe0\\xe2\\xf9\\xba\\xc1\\x07-I\\x14\\x8b%q3\\xdd\\xfa\\x836C\\xb9\\xb7\\x1c\\x9dcy\\xb5\\x92s\\xa8\\x94\\x1c_\\xb7\\xe8\\x91\\xa1\\x9f2L\\x0f\\xce}8\\xf0|\\x08\\xf8\\xe6\\xec\\x8d\\xda\\xb8\\x80|\\xc4\\xcd\\x13\\xd4\\x88\\xd2^\\xcfv\\x05\\x07)\\x8bj\\x9a*\\x11\\xe1P`\\x18\\xb7Fpm\\x85C}\\xa0W*\\xd2@\\xb1\\xb8{\\x0d\\x93*\\xc3_\\xe9\\x93\\xac\\x84I\\xda\\x0ck\\x11\\xeaA\\x95\\xf7\\xca>r.\\xd3\\xf3T{>\\xecO\\x7f\\n\\xfa\\xbf\\x0c\\xfb\\x8f\\xde\\xf5\\xbf\\xfa\\xb7?\\xde\\xf9\\xfa\\x9b\\xde\\xe0\\xddO\\x17\\xff\\xe7\\xc3\\x7f\\x9f\\xef\\x87\\x83\\x9ce\\x98{\\xcd\\x1cxE&x\\x99\\xad\\x824\\x98\\xe5,\\xe5|\\x95\\xd2\\x0c\\xc0\\\"d\\xd1\\x1c\\xe2`m\\xcc\\xf9\\xa2\\xacOy\\xf2Cr-\\xf3J\\x97\\x17\\xd72\\xe7fKH\\xe7i\\xb3N\\x9d\\x19\\x1c\\x1fAwB2\\x02W\\x8cYGZ\\xc9*h\\x0d1\\x99d\\xb7Uy\\xb3\\xb7\\xc5\\x9fy\\x12\\xb3\\x92\\x83XK\\xc2\\x13q+\\xca\\x9c\\xc4\\n\\x8c*\\x9e\\xf9\\xad\\xc1kD\\x0c\\xb8\\x926,7%\\x0bk]+);\\xd4\\xfb\\xed\\x9c\\xed\\xd7\\xe0\\xdd\\x07Z*@q9\\xa7\\x94!?\\xc1\\xd0\\x1f;\\xe5\\xcb \\xe3\\x11e-6'\\xc8\\x10\\x99\\xff\\xeb\\xd1L\\xd1\\xab\\xce\\xd4]\\x97\\xbe\\xd8tx\\xee\\x033\\x86n\\xd3z\\xc4=\\x10\\xe7nK\\x96k\\xeeq/\\x825\\xe3\\xda\\xff\\x0e\\x19\\xf2\\xaas\\x9d\\x9a\\xb2\\xca}4e.\\xb4\\xed\\x91\\xc17\\x11\\xd4\\xb5\\x06\\x99\\x8d_I\\xd0\\\"\\x0b\\xd2 e|>\\xd5\\xbc-\\xcf\\xa2\\x94\\x05\\xf3[\\xe0\\xff:\\xa6\\xcb\\xcc\\x95\\xfc\\xfe\\x9d\\x06h\\xf0g\\x84\\xb2\\x04SK\\xcd\\xd4\\x14\\xc8\\x8e\\xed\\x985)w\\xf9l\\xb3mdK\\x94\\x82\\xf7\\xdfw\\xcb\\xb8\\x13\\xbb\\x8c\\x12\\xa6u\\xb7\\xf1tZ*\\x83\\xef&h\\x14\\x8f\\xafU\\x91{\\xd9L\\xa5bt\\x95\\xca\\xed\\xfc#\\x1f\\xf0\\xdd}\\x96i\\xc9j\\xc9\\xdd\\xa7\\xd3\\x08\\x0d~\\x9c\\xa0\\xa0\\x0dc\\xc8h7\\x04E\\xf0\\x19\\xc3X\\xf4\\x19\\x15\\xf9\\x889\\xc0\\xde\\xe6\\xec\\x07\\xba\\xb0\\xdb0\\x83\\x8c\\x11\\xe8\\xeaU=T\\xc1/qB\\x9d\\xa6\\x125\\xc5\\x97@<\\xd5a}TM\\xf3\\xddzZ\\x04\\xf2\\xf0\\xa2\\x94U\\x90.R5$\\x01\\n\\xcd\\xd9\\x1d\\x98\\xa7\\xe5P\\x14\\x99\\xcd\\x0dj\\xba|\\x94_`\\x91\\xe8\\xe8\\xdb(\\xb9\\xd4\\\\\\xf2\\xab\\xc9\\x8e\\xf5\\xf6y\\xd1\\xce\\xed\\xcb\\xe4\\xd7\\xbc\\x0f\\x19~\\xa6c?\\xb2x\\xe7\\xbe\\xf4\\xfc\\xe7\\xbc\\xbfJ\\x02\\xf4\\x8e\\xdd\\xca\\xe5S\\x17,\\x9ad\\x08\\xadw-\\xdd6\\x94rH\\xad+\\x1dh\\xb8\\x85~\\x9fL\\xc0\\xa5\\xcc\\x0e\\xacCC,r\\x9b\\xbbSc}\\x9b\\xd3+\\xb4\\x070\\x00i\\x12/\\x8f\\xfc\\xc3\\x07\\xd8\\xd33U\\xdb\\xd7\\x0c\\x0d0\\xcb\\x8a,+X\\x85~\\xdd\\xe2[9\\x1b^\\xb3-\\xb7Z\\xc3*\\xd9\\x91B\\xb8\\x82\\xd6\\xb6\\xb0\\x1asZ>X\\xb0\\x94\\xffm\\x96\\xc49\\x8b\\xf3>\\x0d\\x11\\x8fo-A\\xd0Ju\\xb3Z]\\x1f\\x9c\\x9c\\xdd\\xe4\\xfb\\x18\\x90\\xea1\\x17\\xe33\\x96O\\xde\\xbe\\xf9\\xae\\xff\\x10CpU\\xb0H\\x1e\\x8e\\xa97\\x03q\\xd5\\xa2\\xb5\\x1bC5\\xde\\xfe\\xe7 \\x81\\x1aM\\xe3\\xf4\\x82\\xcd&\\n)\\xc9\\xe3\\xfeM\\xff\\xfa\\xfa\\xba\\xcfQ\\xbc\\xbfM#\\x8a\\xce?\\xaf\\xce\\xda(\\xc1h\\x19\\xd6\\x88\\x98\\x12Mi\\xe5\\xaf\\xd2h\\x12\\x92\\xc6l\\xde\\xdf\\x90BFKNc/T^D\\x83\\x18\\x94%\\xd1\\x15\\xab\\x16\\xeb\\xd2\\x9e\\x06\\xbd\\xd6f[q\\xbbSO\\x92J\\x1a\\xb0p\\x96l\\xb9\\xc6\\x98\\xe4(\\xb2)\\xf2\\x8bIw!\\xc8\\x802\\xd95Z&\\xba\\x8c\\x99c\\xdb\\xb9y\\x9bI\\xa0-ar\\xeb\\x16\\x97\\xac\\x9aUJp$w\\x9e\\xe3\\xa8}\\x9fJ\\xcb/\\xb0\\x8e\\xcf\\xd6\\xf5\\x06\\xf9\\x8a\\xc5\\xa6\\xd8\\xd4\\x1f%\\xf9\\xcd\\x89x\\xb4\\x8e\\xf37\\x01\\xc5v!\\x02v\\x14\\x01\\xe5c\\x17\\x05\\xe5S\\x11\t\\xf96\\x1bdA\\xf9|\\xfc\\xb5\\xd0\\xa4\\xdb\\x12\\x94<\\xefk\\xd2\\x1f\\xf9\\xab\\x176\\xd5\\\\\\xc6}!\\xaf\\xfb\\xa1\\xf0\\xbaWW[\\xa4\\xf3\\xfd\\xb9\\xb2q\\x0c\\x16i\\xb2>^\\x05\\xe9q2gn>md\\xbdR{\\xa1\\x94\t\\xb6\\xbc\\xa6\\x1f-\\x0b\\xd1i\\xe5>\\x03\\xed9\\x80\\xef\\x88\\xf6ed\\xb7Pt]\\xd4\\xa3\\x1a\\x8bB\\x82kE'\\x1d\\xeds<\\x7f#T]4\\xa0\\xea\\xcfY\\x12\\x7fN\\xdb\\x7f:{\\xf9\\x82b\\xf0Z\\xa9W\\xe9\\xbdMY\\x98\\xb5z\\xfe\\x90_\\x1f\\xdd\\xcf\\xf2Pu\\xa8\\xaf?\\xd2\\n\\xddZb\\x8c@\t\\x06\\xf5\\xddhK,\\xab\\xeb\\x0d\\x92\\x10\\xa5\\xcde\\x94O\\x15\\xdf\\xccJ\\x99R\\x99\\xfe\\x9b\\xabQB>(|dW*Gs\\x8c\\xf9\\xc8Uv]O\\xee\\x14em\\xc5\\xc6d\\x02Wz\\x9f\\xcc\\x19\\xbdM\\xe6\\xcc/%\\x88\\x01\\xa6I\\xc2\\xbc+\\xcc\\xc6\\xa5g`\\xaf\\xd8\\x1b\\x0c{\\xa8\t\\x864Ke\\xb04/\\xbfa\\xf6y\\xe9\\xf7\\x87\\x0f\\xf5\\x15\\xfa\\xf0\\x01\\x9cd\\x1d\\xe6\\x8e\\x0f{\\xc5\\xe2T\\x84)\\xfbb\\xe5\\xf6\\xc5j'}\\x85\\xb93O\\xden6\\xd2\\xee\\xdb\\x88\\xdc\\xb7Z\\xa6qx\\n}\\xba\\x87d\\xca\\xd8\\xfd\\xd1\\xcd\\xe5`\\xe4\\xc4\\x8b\\x9f\\xce\\x7f\\x9c\\xbcq\\xbc\\xf2>\\xe6\\xf4\\x87*,~P\\xde\\x19|\\x95\\xb2\\x05KS\\x94\\x04\\xe8\\xad\\x8b\\xed\\x90i\\xb5\\xd2\\xc1\\xf7'\\xcf\\x9e\\xd7\\xbe\\x90\\xbf\\xac\\x05\\xe6Q\\xf5\\xe6\\x94\\x0fcB\\xb39\\xb2\\x85\\xff8y\\x03I\\n\\xbc5\\x99s83!\\x04\\x119\\xa9\\xc1W\\xe3\\xf8\\xd8p\\x7f\\xd1\\xc1*#\\xc8`\\x93\\xd5>\\x0d\\xd7\\xae'\\xcf\\xe8\\xef8\\x06\\xaba\\xa3\\x19\\xa1U< \\xe4\\x11\\xed7\\x86'\\xe6\\x0fn\\x8f\\xb4\\xa0k\\xd9Tz\\x98E\\x05\\xda\\xaa\\xe3\\xc1\\x9d`~\\x13\\xc7\\xd8\\x80\\x9dy\\xe6\\xd2\\x02JA\\x86\\xdf\\xbe>-b\\x92q\\x1d\\xd9\\xf0:\\xe9\\x1e\\x17\\xae\\xb3u{\\xd3\\xbe\\xafI\\xc3\\x86\\xd2J\\xef\\xbfK\\x8f\\xde\\xc5\\xfb\\xbb\\xecfm\\xb3\\xc6M\\xab]\\xde(\\x82\\\"\\xbb\\xf8\\xd0-\\xa3\\xbd\\xd8\\xb8\\xb1\\xd3\\xdc \\xe8{\\x95\\xd6\\xee \\xc8\\xe7s\\xf6`n\\xe5\\xab\\xb9\\xf2\\xa5\\xff{!\\xb8\\x8b\\x04\\xdd\\xe2\\xea\\x9eT\\x92)U=\\x855\\xe7\\x7fa\\xae0t\\xdf\\x90\\x9f\\xc6p0\\x1c\\xca\\xe8\\xaf\\xef\\xa5_\\x88\\xf8\\xf8t\\xc2\\xbf*r.\\xde>\\x81CU\\xa5\\xc8\\x85_t\\xc2\\x7f\\xd5:\\xc2\\\"cp^\\xfeY\\x8e\\xcd\\xce\\x0b|\\x9dk\\xe5\\xf8?\\xa6\\xc8\\xaf\\x1a\\x1a\\xabv\\x91\\xf2r\\xa3\\x81G\\xa4\\xf5\\xb6A\\xf3\\xcaz\\xec\\xa6\\x9b\\x12\\xc6\\xe0T,\t8=K\\x1e%y@5\\x06\\xe7L\\xc4\\x8c\\x08e`\\nyL\\x85\\xaf\\xe8\\xab\\xb9\\x11\\xae\\xb0\\x8d\\xc1)\\x14\\x1a\\xad\\x11\\xaea\\x14?[\\x05@\\xfe\\xe4\\xe9m\\x8b9L;t\\xe0\\xed\\xfb\\xd53\\x0c\\xfd\\xf9\\x083\\x0cN\\xddLyAs\\xa9\\x1c\\xd9\\xdb2#N5\\xfa\\xb1|\\xa4T\\xcd\\xd7F\\xfc\\xd9\\xb4\\x17\\x9a\\xfa=\\x06GS4\\xa8R\\x1d=\\xcd\\xa2Q\\xc9L\\xe8!\\xe4\\\\\\xc1\\x04\\xa6*^\\xcd\\xa9\\xd4\\xb7\\xce\\x1d\\xbf\\x88bS\\xa8a\\xf5\\xd7\\xc7Q\\xb0\\xde\\xb0y\\xfd\\xebi\\x9c\\x8f\\xee\\x9b+\\x99\\xde\\x9f\\xc6\\xf9\\xe1\\x81\\xb9\\xb8\\xe9\\xfdwQ\\x12\\xd8?\\xdc\\xbf+>X\\xc2\\x12\\xb4_\\x07\\x95\\x8f\\xe4\\x05\\x1cB\\xf9&\\xfd%d\\xd7\\x0d\\xe673\\x10\\x98\\x07\\xa1\\xb2\\xf5\\n+m\\x98\\xf1\\xc69\\x85\\xd8}hWJ\\x1cl\\x0d1D\\xe2\\xa2y\\xa0u\\xa8I\\xb4\\x96\\x88MT\\x9cP\\xad\\xec\\x08EIT\\xdb\\xc93\\xa8\\xe9\\xea\\x9d\\xf2\\xe3[\\x07\\x1b\\xabC\\x94V\\x00&x\\n\\x8d\\xd1O}\\x8c~\\ncC\\xf2\\x1f\\x0c\\xe2U\\x8c_8\\xa9w\\xd9zQTu\\xc9'R\\xf7i\\xaf\\xb4\\xbfdy\\xa7\\xc6\\xd5\\xc6\\xc9\\x05\\\"6Bn\\xe6G\\xa5yR\\xba\\xc7\\xb6\\x8eWA\\xb3oT\\xa5c\\xd9A-,4\\x87\\x8e\\xb6\\xbe\\xb2\\xca$\\x1b \\xa0\\xbcz\\x02\\x08\\xda\\xda\\x97>\\xbf\\x1d\\xaeAA-\\xc0\\x8d\\xec\\xd1\\xb3\\xce\\x91\\xc2\\xdd\\x88\\xc8T\\xb9_\\x8c1>G\\xc7\\xaf\\xbcv*o\\x18#\\x06-\\xeb`\\xb2\\x90\\xd6E[\\xbe?}?\\xea\\x0e\\x06-\\xa9\\xde\\x98\\x8c\\xccfFe\\xbc\\x98h6\\x89\\xe8S!?\\xe3_\\x7f2\\x1dfb;\\xbd\\xef8\\x13\\xe1*\\xfd\\xebO\\xa5\\xdb\\xbeL\\xe3\\xfa}/\\xf94M\\xa9\\xe2\\x18\\xa4\\xcd\\xd0\\xe4\\\"dX\\x00\\xcbY\\xfc-\\xf2\\xf9\\xe7'?\\x9c\\xbc9\\xe1\\xfc\\x92+\\xec\\xbeP\\xcf}p^\\xbezs\\xfa\\xf2\\xc5\\x19\\xff\\xf3\\xd5\\xcb3\\xfc\\xf4\\xea\\xed\\x1b\\xc7\\xb0@3\\xad\\xcb\\x99H\\x7f\\xd1\\xba\\xe2\\x9aT&=\\xc1\\xed+x\\x99\\xcco\\xf5S\\xb6\\xd384\\xbbb\\x19bQ\\x7f\\xf4!\\\"\\xe4\\xd6\\xc6\\xe9\\xa9\\x97\\xf3\\xd2\\xcb\\xf9gNe^9\\xf9o\\x9a\\x14i\\x0fc]\\xdb\\xb0k\\x84\\x85\\xaa1\\xae\\xaa'\\xf6JB\\xeb\\x18K5D\\xd3M\\x1a\\x94\\xcfm\\x1a\\x8d\\x95\\x9a\\xb2\\xc3*\\xcf\\x07\\x9d\\xfdi$\\xba\\xd1\\x92\\x91\\xc5\\xa8}\\xa1\\x0cIt\\xcbEhy\\x1c\\xc72\\xe8F\\xd4fJ\\xd1\\xc4Y8U\\xcfG0KC\\xf2R\\xcd\\xf4p8\\xf2\\xe1px\\xc0\\xff9\\xe4\\xff<\\xe0\\xff<4\\xa0\\xcb|\\x90\\xb2y\\x98R\\x80\\xddN,\\x8d\\x0b\\xea\\\"\\xb5\\xd4\\xa5f\\xe5\\xd3\\xade\\xaf\\x83xYu7\\x15J\\xed,\\x99[\\x0f\\xe8K\\xa0\\xdbu\\x1f\\xba@\\\\\\xb3\\xf2\\x14%t\\xd4l\\xb2N\\xca\\xc7\\xa2>\\x19A\\x8f\\x0d\\xbeW*w\\xc2\\x7f\\xbe&\\x83 `\\xe8U\\xfe3\\xdb$q\\xc6\\xb7w\\xce\\x7f\\xa3\\xe6\\xdcu\\xf5\\xb55\\xaa9\\xad5]r\\x01\\xdd\\xfa\\x82d\\x0e{i\\xb6\\xb1\\x85\\xa2\\xf0\\x7f\\xfe\\xf8\\xc3\\xf7y\\xbe\\x11\\xf3\\xb0\\x9bj\\xc2\\x1d=\\xe3@\\xc3\\xbe\\xe6R\\xa0\\xedx\\xd8J\\x9f\\xca5\\x08\\x11\\xc3NDJ>\\nt6.\\xe6tz\\x16Er\\xdb\\xc4\\xe6\\xba\\x1e\\x19K\\xec.#`FR\\xfda\\xc2\\xf8\\xe2\\xa4\\xa2\\xf1\\xb7\\xaf\\x7fpd\\\"\\xfap\\xa0\\xbd\\x851\\xb0\\xb2?\\xc9\\x7f\\xf6\\xc5~\\xf4y\\xa5\\x16\\x9f\\x17iRT\\x1d\\x19z\\xc1\\xf4\\x80\\xf2\\x07_\\xa6\\xe6&cW\\xf0\\x18\\x1fLr\\xb9|>\\xfa\\x08\\x16\\x9d\\xa9\\xb1|\\xd2\\xaak\\xe8\\x0b\\x96_'\\xe9{i^\\x87E\\x10Fln\\xf2\\xfd\\x90\\x8f\\xe8:\\xa7\\xe8\\xdf\\xff\\x90\\xce7,v\\x13u\\x1c\\x95\\xd0\\xf9\\x17^nr\\xc2x\\x16m\\xe7\\\"N]R:\\xed\\xe1\\x92U\\x88Q\\xca\\x8eK\\xe7DTQm\\xd1\\xedFnc\\xc9\\x17\\xcc\\xd5vQp\\x11\\xf2\\xc2\\xe0\\x03\\x90 \\xb4\\x93\\x7f\\xb4|B\\xae^\t\\xa8#4\\xb0\\xb8K\\xcb\\x07\\xa3F\\x0e2\\x16\\xcf\\xf5`\\xaa\\x89v\\xe8\\xa6\\xd2\\x07j/mR\\xa9\\x99\\xd8\\\"\\xf9\\x1cl\\x92\\xe8v\\x11F\\x91\\xc9+X\\xfd\\xe5\\xea\\x19l1\\xb3\\x05\\xc9\\x16\\xd5Xh\\x7f\\x10\\x8d\\x97\\x16g\\xa7\\x9bF\\xb9\\xe9\\x96\\xd1\\xbd\\xbb\\xde\\x80\\x8c)\\xa6@\\xb6\\xa1q\\x0b\\xcc\\x16E\\xc1\\x05\\x0c\\xc7\\x14US\\xad4!\\x1au\\x02\\xd1L\\xaa\\xd2\\xb8Io\\\\>\\x10\\xcd7\\xd1\\xb6\\x9e\\xea\\xafj\\x0bm\\xdc\\xacP\\x8b\\xf1.\\x93\\xc8\\xde-\\x0fv\\x95\\xdf\\xc4\\x96\\xee\\x19e\\xf4_\\xa4\\xb2\\xe4\\x14\t\\xc3\\xadir\\xaeD\\xbc\\xd1\\x0c\\x9e\\x14\\xe1\\xa4\\x8f\\xb8f-\\xfc+\\x9e\\xe5.:\\xd7\\xbf\\x08^\\xd4\\xe9\\\\v\\x1d\\xe2\\xaaY\\xb3\\xdd\\xcf\\x82\\x8c\\xc1pl\\x05|\\xd9\\x80\\xf5x]>\\xd8\\xd0\\xe1\\x03{K\\xf2\\xd1\\x92\\x0d\\x88\\xabW\\x0d\\x91\\x05\\xe4\\x83i\\xd8\\x9a\\x8b\\xe1\\x00\\xee\\x1e\\xb6\\x0f\\x00\\xaf\\xc4\\xba|M\\x0f\\x0fZ\\xb8\\x8d\\x0cl\\xd8\\xdaf0\\x8dz=s\\xa2N\\xf9\\x98%/h\\x9e\\x1cNjd\\xef\\x9f\\xcb\\xb0!\\xc9c3x:\\x81\\xbb\\x0f\\xf9\\xe4f\\x1c\\xb2\\xee=\\xf0p\\xadg\\xd0\\x87\\xbb\\x0f\\xed\\xf3T^\\xb9\\xd8\\xc0\\xfd{\\xaa\\x81\\x07\\xc3\\xa2\\x81\\xfb\\xf7\\xa0\\x07#\\xcb\\x0da\\xd8\\xc1\\x81\\x96zy\\xf4@\\xf52\\x1a\\x1e4\\x06\\xcf\\x93\\x8fZ\\xe1\\xc3\\x07\\xbe\\xb6\\xdc\\x02\\xb7:BPc)\\xfb\\x06\\x81\\x00[\\xbe\\x12\\x8f\\x1e\\xe0J|\\xc26\\xf3\\x81\\x1e\\xd8\\x07\\xda\\x06\\x05\\x07\\xcdP H\\x8c\t\\n\\xd2\\xcf\\x85\\x82\\xf4w\\x0e\\x05\\xa1\\x0e\\x11\\xbf>(\\xa4\\x9f\\x0d\\nj\\xb4\\xa3\\xfb\\xf0\\x0d\\xc4\\xd03\\x19\\xd5\\xff`\\xff%\\xf8]P$%\\x8e\\xa0\\xaf\\xa7N\\xf9\\xe8k\\xac\\x8c\\xafP\\xb1*\\x8ae\\x05%/\\xbf\\x83{\\xf7%\\xa3z\\x0c[x\\x02\\x07\\xf7\\xee?\\x86^o\\xebA0\\xddb8\\xe2?:\\xd0\\x03\\xd7\\xe5\\x1fG\\xf7\\xe1\\x08\\x9c\\xa1#\\xd2%\\xf7`[p\\xd9\\xd1}\\xcf\\xb3y\\xd8\\xc8\\xeci\\x8df\\xf4\\x86[\\x94\\xbd\t\\xef\\xaf\\xbc\\xc5%oF\\xc7)\\xe5\\x0c\\x15\\xce\\x8aLKUl\\xd4,\\xa5FYb\\xab\\xa6\\x93\\x14\\x02\\xdf\\xc3C\\x92\\xff\\xb8\\xe6t\\xf7\\x9e\\xf6\\xf7\\xfd\\xe2\\xefG\\xda\\xfb\\xd1\\x81\\xf6!\\xe1\\xb0\\x7f\\xf8\\x88\\xcf(\\xe1\\xb0\\x7f\\xf7@\\xbd%\\xc4M\\x08q\\xd5[\\xc2F|\\xfbh\\xa8\\xde\\x12\\xf6\\xe0\\xdb\\xd1\\xc1\\x81E\\x80GG\\x06\\xe8C\\xac\\xd2\\x81\\xe6|\\x0d\\xe5\\x85\\\"T\\xb4\\xb98\\xcd\\xb7\\xf4\\xe0!\\xd1\\xfb\\x94C\\xb5\\x0fX0\\x98&\\x16\\xdb\\xad\\\"\\x18\\xbc\\xee\\xc1\\xf0\\xae\\xb1\\xf2\\xe8\\xd1\\x01\\xe0p\\x9f\\xc2\\xfds\\xe8\\xf17\\x07\\x0f\\xe1\\x03\\xdc?\\x84;\\xd0\\xa9\\xe5{\\xf7\\x0e\\x1e\\xddWs\\xbe\\xf7\\xe0\\xf0\\xee]SG\\x07\\x07weG\\xa3\\x03\\xbd'\\xea\\x1b\\xee\\xc0\\xfd\\xc3\\xdd\\x06\\xd0l}\\x08\\x1bl\\x07\\x08!\\xbd\\x9e\\x0ew%\\xa3\\xd2\\xdb\\xd7\\xa7B\\x19{\\xfb\\xfa\\x14\\xd6A\\xb4H\\xd25\\xb3\\xba\\x1d\\x82\\xb0_\\x8c\\x86\\x07|\\xd0\\x15\\x08\\xf5M\\x8bqw\\x08\\x1f(Q\\xdc\\xfd{\\xf7\\x0e\\xef#\\xd6\\x8a\\xea\\x89\\x07O\\x9e\\xc0\\x88\\x17\\x08=\\x0f\\xd7\\xebam\\xbdF\\x07\\xb5\\x05k^G\\xe3\\xc0;\\x10\\xb0\\\"\\x90\\x08\\xc3\\xb8O%\\x117\\x87^\\x01\\xa8^9vcYQi\\x89X@}Y\\xee\\xa8\\xf0\\x8eM\\x99[8\\xb2\\x84\\xd9wa\\x1cRD\\xae#p8\\xf9\\xc3\\xe2\\x97I\\x12\\xb1 \\xae7u\\x04N\\x9en\\x19\\x92\\xc5E\\x10e\\xf4\\x97\\xa3\\x8f\\xbb\\xa0\\xc3R_\\x8av\\xd7\\x97\\xec\\xeaQS\\x1c\\xc3\\x82#`\\xe4\\x81a\\x17u\\x88\\x16-\\\\\\xdcb\\xc2@\\xba\\xb5RU\\x8a\\xcc\\xf9\\x80\\x95\\x13\\xafsG\\xd0dtXu&\\x95\\x8bFW*\\xa1/\\x8d\\xad\\xfc\\x95\\xe8\\x80-\\x8aQ\\\"F\\xa4k\\x8ed9\\xc03\\x9b\\xfaG\\x8e/\\x94)vbO\\xe6cZ\\xc2\\x12\\xd7\\xd43>\\xc8\\x1c\\xc3\\x81\\x8aH\\xc2\\xd5\\xbb-g\\xc7\\x94-\\x9fs\\xa4\\x05\\xb1\\xa2\\x05<\\x81-\\xe7A\\x8b&\\x13>\\xa5\\x1a^4dz\\x98SJ\\xe2\\x96l\\x11\\xa1\\x9ba~\\xdb^5\\x1d\\xa4|\\xf8\\xda\\x96/\\x81\\xcf\\x1b\\x850\\xb5\\x06W0\\x81\\xb9\\x9a\\xef\\x1a&pE\\xf3]\\xd2<\\x97\\xf0\\x04\\xae\\xf8<\\x97\\x1e\\xcc8MZA\\x0f\\x873\\x9f.\\xcf9\\xbf\\xe1\\x05\\xd6B\\x0d\\xebM\\xa0\\xe9b\\x05\\x86\\xb0\\xe2\\x0b\\x17\\xe9\\xe5\\xcd\\x04\\x87(w\\xb9G\\xde]{\\xf5\\xba\\xa8&pf\\xd6N\\xc4t\\xfc\\xe6b\\x17\\xfa\\xc8#@\\x93Y\\xe3\\xcb\\xa3K`\\x88\\xf8\\x15\\xda\\xa2n|\\xf8 \\xb3\\xf5Hf\\xa4\\xc4\\xc7r\\x0b\\x86\\xday!2\\xd4\\xc4\\xae+\\x91\\x12?\\x96\\x80P[B\\xf2\\x08\\xb7}\\xe5\\xb81b\\x87\\xe5F\t\\xd5\\xeb\\xe48\\x19\\xac\\x83\\x9b?\\xb3\\xdbL\\xe9\\xee\\xea\\x8daX\\x1c\\xddF\\xb0_U\\x0bgJ\\x08\\xe2\\x05f\\x86\\x8a\\x1b\\xdc6I%MC3S\\xa1\\xba\\xfd\\n\\xbb\\xd9\\xe08\\xeb\\x1fm\\x02,\\xc7\\xeb\\x0d\\xd2\\xa6\\xd0G\\x14\\x9e\\x9e\\xfb\\x88lC\\xc2\\xb2\\xa1\\xc00\\x1fO\\x999a\\xb9\\x14\\xff_\\xd0\\x19\\xcc5\\xfdwB\\x85n\\x08\\x1bo*\\x02\\xf0\\x8dM\\x00>\\xab\\n\\xc07\\x16\\x01\\xf8\\x0c\\xc7\\x98\\xebE\\xd7V\\xca\\xc1+\\x88\\xc1\\xa3\\xd3\\x95{\\xf8\\x00\\xc1\\xf1\\x0c\\x8ep\\xa0#\\x18\\xc3\\x89\\xda\\x99\\xb3B\\x0c>+\\xc4\\xe0\\xb3B\\x0c>#\\xa5T\\xbd%1\\xf8L*\\x91p\\x04\\\\6\\x87^\\x8f\\\"\\xac]\\x93\\xb5\\x19\\xfb\\x98`\\x18iN{\\xac\\xe60P3\\xa4\\xa4+\\xda\\x0c\\x97\\xad\\n*\\xaf\\xd8\\xeb-\\xb1\\xea\\xd6\\x83+x\\x02\\xee{\\x98\\xc0\\x0d\\xf4a\\xc9%4\\x8aS}\\xabK\\xe0W>\\xbc\\xe7$Jl\\xd9\\x15\\x16\\xef\\xb5\\x99\\xc4fI\\x9c\\x87\\xf1v\\xd7c>\\x10\\xdepC\\x0e0\\xbf\\xf9V\\\\T\\xb6\\xc2L\\xc3\\x8do\\xef\\x1e\\x8aq\\xf2vp\\x03\\xe1\\x08\\\\\\xbe\\xaeWj\\xb8\\xd5e\\xbd\\xf10\\x9e\\x1a']\\x7f<\\x18\\n\\x1c\\xa1\\xfe+5/M5/\\xb5\\x9a\\xd7\\xf2\\xc8Bm\\x8f\\x81\\x83\\x14zK\\xaf\\xb7\\xc6\\xe1fM\\\\\\xfe\\xd8\\x07\t\\x1bk\\xfb\\x86\\xf3\\xe6\\xe4|9<\\xbd\\xb7A\\x10\\x8c\\xb5\\xef\\xd5\t!\\x84\\xc9\\x88\\x8f\\x13\\x88\\xdc[\\x1f6\\xfc\\xdd\\xb5(\\xce\\xdf]\\x8aw\\xe2H|\\xa5\\x8e\\xc4o=\\x0f\\x82\\xe9\\xed9\\x86\\xb2\\x84\\xd5t%h\t\\x7fa\\xb8\\x99\\x05B\\x83r\\x8fQ\\x8e\\xb9=\\xf7\\xf4kZ(g\\xc0\\x11\\x1cO\\x8f\\xb5f.a,\\xbb\\x98\\x1e\\xfbpiQ\\xcc\\xf8j`P\\xaf~\\x7f\\xe15\\x19\\xcc\\xf8V\\x97i\\xe1-\\xf6B\\xc4R\\xed\\\"QU\\xc4\\x88\\xfa~\\xfe\\xc1\\xfek\\xa1@\\xe7JWY>|\\x80%\\xff\\xe2\\xd5?\\xe9p[\\xde=\\xbeskx\\x02\\x99a\\xe7\\xbc\\xcf\\xdc7\\x8e$\\xd6\\x9dCD\\xf8\\x9c=\\xaa0\\x07)T\\xfc\\xa1\\xbcf\\x9d3\\x19<\\xb2\\xa428|8\\xf2\\xdaO\\xf7\\xa4;\\x81\\xbc\\x0e\\x07G\\xf0\\xf7\\x8f\\x94\\x90\\xd0\\x10$\\xb4\\x18\\xb9~\\\\\\xd6)\\xd3\\xa5>\\xe0jT=1\\xe0a{\\x94D{R\\x88Tt\\xda\\xea\\x07'\\xca'.\\xab\\xa5?k\\x8d\\x0cg\\x9d\\xd3\\xe8\\xd02\\xa7\\xbb\\xd5\\xb4E\\x14X\\xf0\\xc1\\xa3.S5\\xcc\\xa0\\xa4O\\xf5G\\xa4C)a\\x11E\\xc7\\xbf\\x7f\\xe4\\xd2J\\x80:\\x93Md\\xc1\\x0b\\x1f\\xd3\\xc0\\xa2\ta\\x9e>>\\x82\\xc8 \\xc8\\xc4\\xee\\x8c\\x7f\\x00\\x8a\\x19\\xe8C\\xe8F\\x14\\xa4sf\\xd3\\x8b\\xa1X\\xf5l\\xb7\\x056\\x9f\\xb1\\xee\\x7f\\xb3W\\xb4\\xfd\\x0d\\xcc\\x92\\xe4}\\xc8\\xf47\\xc7\\xc9\\xe66\\x0d\\x97\\xab\\xdc\\x9dyp0\\x1c\\x1d\\xf4\\x0f\\x86\\xa3\\xbb\\xf0:Y\\x071\\x9c\\xad\\xf2\\xdbh\\x1d\\xc4M\\x15\\xee\\xc1\\xf3d\\xbb\\x8c\\x82\\x0c\\x8eWi\\x98\\xe5\\xc9f\\xc5R\\xf8k\\x18eI\\xa9\\xde\\x8f\\xa7o\\xe0\\x87p\\xc6\\xe2\\x8c\\xcd\\xb5\\xf7\\xfb\\xea\\xef\\\\i5\\x8d0lSB,7\\x10e\\xb8E\\xbe4\\xb0\\xdef9\\\\2\\x08@4`\\x93\\x92c\\x11,-)n\t\\xd3\\xb1\\xab\\xbc\\x05\\x16z\\x04@R\\xf4\\xe6e\\xd2R\\xa2\\xc7\\xa0\\x94\\xe8\\xd1\\x02[3\\xa4\\x8d\\x91\\x05\\xb6P\\x85P\\xb4\\xd6\\x99\\x98\\xccwd\\n\\xe4\\xda\\xe7\\xd0*<J\\xb5c6\\xc8\\xb6\\x97Y\\x9e\\xbaC\\x1f\\x16\\xf22Y\\xb3\t@U\\xe9\\xf5\\x16>\\xcc\\xa4z\\xd7x\\x11\\xedk\\xe7kN\\x1f\\xe7\\xd3\\xe19\\xf2\\x909\\xaa\\xf2\\xc4oF\\x9c\\x89\\x94r\\xa7@<\\xddP9\\xfcc\\x02[w\\xeeC\\xd6\\x1e\\x9a\\xd2\\x843\\x95D\\xde\\x19K\\xc3 \\n\\x7f1\\xe9\\xc7\\xd5\\xc5R\\x04Jlw}\\xa5u\\xf3\\xd4\\x87\\x0f\\xd5\\xdb\\x86\\x08\\x97\\x85\\xeaV@fh\\x81\\xcc\\x04\\x93\\xea\\x81h0\\xcc $\\xef\\xbf\\xea.\\xe3\\x0e\\x07-\\x81*\\x15\\x98\\xc7\\xc1\\xba\\xa91\\xa9Q\\x87\\xb5H\\x13t\\xc0\\x87\\xe1\\xb9\\xa9\\xafmk_WA\\xd4\\xd2\\x15^W\\x87\\x1e8\\x13\\x07z\\xb0\\xad\\xf7(,e\\x90rU\\xfb\\xd9\\xd2z\\xc53\\x82\\xa2\\x0c\\xf4M\\x87\\xb1xL\\x9d\\xbd\\x08^\\xb8\\x91)\\x02\\x92\\xa8\\x9a\\xad0\\x18\\x03\\xd2\\x80\\x17d\\x020@q\\x86\\x82\\xf9c\\xf81\\xb8\\xe9?[2\\x1c\\xfc\\x8fA\\xbe\\x1a,\\xa2$I\\xdd\\xa8\\x89z\\xe3q\\xc8`\\x9e\\xac\\x83\\xd0\\xc8S\\xf5\\xedT\\xe5\\x9aA\\x84\\n5,5hc~\\x8e\\x85q\\xc8\\xb2\\xf9\\xd6\\xd1n\\x82\\xdcx\\x1d\\xb1<V,\\xd5<R^\\xa4\\xe38_\\x05\\xf9J\\x8c\\x92\\xd7j\\x1d#\\xbb\\xd9\\x84)3\\xea;V\\xd4S\\xb5\\x06y\\xf2\\xf6\\xcd1\\x1d\\x1e\\xb6\\xa0#U\\xe88\\x89\\x13*-\\xe6a\\xe8\\xcc\\xea\\x0f\\x04h\\xfa^\\xe5\\xf9\\xe6e\\x1ca\\xf0tW6\\xfa\\xbdxY\\xed8\\x1ddl\\xb6MY\\xa9\\xf0\\x19\\xbe2\\xd1\\x8ct\\x90\\x05kv\\x16\\xe6V\\xa4\\x9a\\xd1\\xfd\\xd8\\xea\\x91EQ\\x11\\x8e\\xb4\\x1f\\xe5H\\xb6\\\\\\xeeU\\x9f\\x0c\\x0b\\xd4\\xe6\\xd3\\x83\\xfe\\x06{M^Ar\\x82\\xa2\\x8f\\xc9YU\\xb6\\xa9>m\\xde\\x0dN\\x14\\xdc8;t\\xf8Cp\\xf39\\xbd\tYl\\x87\\x0e?g\\x86\\xadnDM@\\xaf\\xf6[\\x87\\xfaZK\\x1d\\xf8\\xaf&\\xb3\\x16\\xc3\\x94\\x9c\\xb5n\\xa4\\xac\\xab\\x01\\xf5\\xe3\\x94\\xbaJ\\xb0\\xff\\x18\\xbe\\xd9/\\xbf\\xe6\\xa2\\xd9\\xfeO\\xd3w\\xdb\\xe1p\\xf8\\x88\\xff{0\\xec\\xf3\\xff\\x1e0\\xfe\\xefC\\xfa\\xb1X\\x9c\\xf7\\xfem\\xdft<\\xb6\\xfd\\xad\\x8e\\xc7\\xaa1\\x99\\xcb\\x7f}\\x92\\x84\\xdf1\\xa4\\xba\\xe8\\xbf\\xb6\\xbc.\\xd3\\xc2AL\\xf7\\xbev\\xbdo\\xce\\xf7\\x97m\\xb1\\xc8\\xe5\\xb1\\x04\\xbak\\x94\\xec\\xb9C\\xaf\\xe4\\xa5Qv\\xd2(\\xcf\\xbeM\\x83\\xd4;\\xee6\\xcb\\x92\\x9b\\x86\\xcc1/\\xb3\\\"+y<\\xb6\\xcb\\xe3i\\xd5<\\x1d[D\\xee\\x14]\\x05\\xd0q\\xe0\\xce\\x1dH\\xd1vy\\xffp\\x84\\x1e\\x171\\xf4`\\xa4\\x9f\\xcc7\\x88\\xe55\\x87\\x10\\xacl\\x11\\xac\\xe9\\xa0\\xf2)vu\\x80\\xc6!\\xe1\\xc6\\xc1U\\xe7\\x06\\xc3\\xb1<\\xfe\\x1c\\x0d\\x0f\\xee\\xc27\\xe4\\xad\\x81c\\xf7\\xa0\\x07\t\\xff\\x81\\xed\\xf5\\xe8(\\xdfN~r\\xba\\x0ewpwX\\x96\\x87B\\xd8\\x87\\xfbw\\x8b\\x7f<\\x1fF\\x07\\x0f\\xade<\\xf8#\\xdc\\xbfk-S\\xfe\\x1c\\xe2/\\xf4A\\xe85\\xbaq6\\xda\\xab\\xeb&_\\xc3i\\x1c\\x85\\x96\\xb8\\xfb\\x10#D\\xd0L\\x0f\\xee\\x96G\\x986O25L \\xa5\tp~\\xc9;\\xe0/U\\xfb\\xa3G\\x07\\xc6\\x06\\xeauE\\x85\\xb4\\x83\\xdd\\xa0-\\xfd\\xa4\\x0e){v7\\x7f\\x0e4\\xcc\\x16\\x96\\xdfn$\\xab\\x14i\\xb8`\\x89\\xc2e\\xaa\\xe7\\xff\\xb2\\x9c!K<i\\xb8E\\x16\\xda\\x1d4\\xe7I\\x0bf\\x04h\\x15b7l\\xd6\\x98ZLi+\\x93\\xc9\\x04\\x82F\\xd30(\\xbd<\\x84'\\xc0\\xa5\\xfb\\x96\\xc2\t9\\xd5\\x0c\\xcf\\x95q*\\xec\\xf5\\xcc\\x80\\x0c\\xd7\\xab0bJq\\xe2C1\\xb7+mw\\x1c\\xe84\\x8f\\x97\\xfe\\xc8\\x9c!\\xe7\\x0f\\xf6\\x9d\\xb4\\xa4\\x08\\x00\\xddIPh\\xa7;\\xb5+\\xcc\\x8a6\\xea\\xa8\\xa5\\xd7\\xb8#\\xd2\\x1bL\\x9d\\xe9O\\xe7\\xcey\\xd9|@\\xb6\\x03.\\xca\\xd6\\xec9\\xaa-A\\xda\\xdb.\t\\xef\\x10\\x16\\x08\\xab\\x11R\\xb2A\\x96l\\xd3\\x99-b\\x84\\xe7\\xcb\\x82\\xa1,H\\x8e\\x83\\xe9`\\x96\\xc4\\xb3@\\x04qd\\xd7\\xf0\\x9a-On6n*\\x02\\xfe|p\\xbc\\x9a\\xd9\\x15\\x8c\\xa4\\x8b\\x0d\\x16a<?^\\x05\\xe9i<g7m&4\\xf9p\\x18\\xcdu\\xf8P\\x98\\xd8o8+*\\xe3\\xac\\xe5\\xe2S\\xc9\\x92\\x96\\xb8\\x9e/P\\xb4p\\x8d\\x89%\\xca\\xa1\\xcd\\xc1\\x8d\\x07Q\\x90\\xe54\\xfc\\xa7\\x90{\\x8f=\\x8e\\x03\\x8d\\xdbe\\xc8\\xcf\\xec\\x8b\\xa5\\xf8\\xf66g;-\\x85\\x9c\\x0d_\\x0d\\xbcAK\\x0bB^Y\\x883X\\x1fgb\\x8e\\xb7H\\\\\\xfcY\\xe7\\xab\\xa1rq\\xe8f\\xba>f\\xaaf\\xdf\\x00.\\xcd\\xe0\\x89hl\\xdc;[\\x94\\xe5B\\xbeQ\\x8e\\x99\\\\\\xd8\\xa8\\x9e\\x88\\xe8O\\x82NG\\xb8O-\\xe9\\xb7\\x14eL\\xb8\\xceH\\x99\\xf2\\x93\\xe9\\xd0\\x18gC\\x97wvY\\xad\\xd6\\x9b2\\xfa#\\xc7\\x854\\xa6\\xc0-\\x89\\x82>R\\x0b\\xe3^\\xf2\\xe7c\\xdb\\x1e\\xa4hp\\x95\\xbd\\x18\\xef\\xc5\\x80M\\xc4kYJ\\x92*\\x9fL\\xc8\\x1b$)D\\xcb#%\\xc0%\\xba\\x00\\xe7\\x96\\x1b''\\x00!\\xd3yR\\xa83\\x13}D\\x17-\\x8e\\xea.\\x91G\\x18<\\xc5\\xa6\\xef\\xc1\\x11'\\xce}\\xe1\\x08\\xea\\x1b\\xe3\\xb3\\xd2\\x9c\\xf8X\\xd1\\xf7s\\xe8\\xf9J\\xe6\\x94^\\xa3\\xcc\\xc3\\x13fSmst\\x05&-\\xe3\\x1d\\x8c\\xbb\\xf2)\\xddi\\x93y\\xbe\\xe9\\x97\\x8chiJ\\x80\\x00\\x1a\\x04\\x9a\\xf15n\\xc1\\\"V\\xdc\\xfenMe\\x97 ~\\x0b\\xb2\\xa3\\xbaS\\xd4\\x1d\\xe9\\x90eE\\x14\\x0d\\xddmU\\xf8\\xd4\\xec\\xb0\\xae\\xddF\\xd4\\xe3\\x81Nx\\x83DP\\xb4n\\xad\\x11\\x8c;x<'\\x0d\\xcbk\\x17\\x9e\\x0cC\\xd8!\\xf8\\x1dh\\xc7\\xa2\\xed\\xebn\\x8ey#(\\xea\\xae+\\xee7L\\xd8\\xb6\\x8a%\\x10\\xe1\\x82\\x0f\\x01\\x97\\xba\\x05h\\xdf+N\\x97\\xb5\\xb20\\xa6\\xd4d\\xb6\\xf5\\xf6T\\x0fi\\xb9\\x07\\xc9>\\x92\\x86\\xd5\\xc0#\\xa3\\x1d\\x96Cq\\xdf'\\xea\\x06A\\x8d\\x0d\\xf7 o\\x9b\\x1f\\x85\\xd7\\xc0\\xd1\\x11{\\x18W_\\xa1\\xff\\xbaQ\\xa6*\\xc6\\x1d\\xc6\\xcb\\x82K\\xfa\\xc5\\x82\\xed@\\x1b\\xcd\\xc0\\xa3Z\\xeas\\n\\xdd\\x83z\\xe0.\\x1a\\x05\\x0e\\xe1M\\xc2I\\xdf\\xab$\\x8c[l\\x1e\\xf2\\xe9b\\xfb\\xc0\\xb5\\x9d\\xc9v\\xe5\\x1ak\\xdcC\\xa4\\x96TE<a-\\x11\\xea\\xa7\\xf6\\xbeq\\xfa\\x16\\xae\\xaf&\\xf4FX\\x88\\xbe\\xd8\\xc4\\xca\\xc3\\xa4\\xe5/q\\x90il\\x0d\\xdf\\xaf\\x84\\x7fkp\\xf0\\xd2\\xb6p<\\xf9r;b\\xb5F\\xd5\\x1a1\\x98\\xa6\\x88\\x80L\\xcf\\x1fC\\nOa\\xf8\\xd8\\x83D\\xd8-\\xee\\xdd\\x83;\\x90\\xa2\\x9e\\xf1\\xf4\\xe9\\x04\\x1a.\\xe5\\x8d\\x00/\\x99\\x17\\xf0!\\x9a\\xe0,:\\xa7p\\xcb\\xa4\\xa4$\\x83\\x94]\\xb14cn\\xe7\\xe0\\xae\\xd0\\n\\x12\\x97|1\\x7f\\x0dh\\xe0\\n\\xf5A\\x9bM\\x0c\\x97t\\x1a\\x9f\\xc3\\x93'\\xf0\\x10>\\xf0\\xbf9ZZ\\x94D(,`&!%\\xfd\\xa4e\\xe9\\x08t\\xbc\\x17r\\x99\\xea\\xb2F\\xda\\xf2Xg\\\"\\xf4\\xb2O\\xb4\\x99P\\x98\\xdb\\xddl&i\\xab\\x19D\\x1a\\xb9\\xa6C[\\xb0\\xad\\x9a\\xf5\\xa3-+p}Y\\xeb\\xe5\\xa5yt\\x7f\\xfan\\xfb\\xfc\\xe1p\\xd8\\x7f\\xb7}\\xfe\\xedw\\xdf\\x9d\\xf3\\x9f\\xc7\\xf4\\xf3\\xbb\\xef\\xbe;\\xdf\\xb7\\x84\\xf3\\xc4\\x85\\xe4\\x90X\\xdd\\xc5\\xf2\\xcek\\xa2g^\\x12=s\\xbc\\xd63\\xc1\\x90\\xdf\\xce6\\x9e\\xb3E\\x18\\xb3\\xb9~\\x8cy\\x1d\\xc6\\xf3\\xe4\\xbaT\\xa9x\\xa5\\xc7i\\xa0\\xb7\\x83\\xb7\\xf9B`T\\xbd\\x8a\\xf6\\x91K\\xbc\\xb5\\x97\\\"\\x80/\\x1fP\\xf5[e\\xa9\\xd9\\xe0*\\xcc\\xb6A$\\\\e\\x90\\xc9O\\xcf=\\xfcK|\\xf2a\\xba\\xcf\\xd7\\xf4\\xf0\\x98\\xaf\\xe5\\xf3\\x93\\xfb|-\\x9f\\x7f\\xf7\\xdd\\xb9\\xf1\\xe5\\xbe\\xb6\\xeb\\x1f\\xc5aA\\xd73\\x81\\xaf\\xfb\\xfd\\xfe\\xbb\\x18\\x03`9\\xab<\\xdfd\\xe3\\xfd\\xfd\\x0d\\xcb1\\xdf\\xfd \\xbb\\x0e\\x96K\\x96\\x0e\\xc2d\\xff\\xea`_\\xfe\\xfa9Kb\\xe7]<O\\xd6\\x17\\xe1|\\x0c\\xceW\\xe2C\\x7f\\x1b:\\xef\\xe8\\x10,\\xc8\\x93\\xf4m\\xa9\\xcd$\\x8e\\xc2\\xb8\\xdc\\xa2,\\xe8\\xbc\\x8b\\x93`\\x9b\\xaf\\x0e^\\x8b QE\\xcd\\xf1\\xfe~\\x94\\xcc\\x82h\\x95d\\xf9\\xf8\\xf0`8\\xdc\\xa7\\x92}\\x19Oj\\xb0\\xca\\xd7\\x91\\xf3.\\xfe\\xda8i\\x93+\\x9d\\x0f\\x89\\xaf_\\x11L\\x049l\\x8c\\x1bc>A\\x92m\\xb6\\xab\\x7fJ\\xf5\\xbbs\\x07\\xb3{\\x1f'\\xeb\\xcd6g\\xf3\\xb3\\xfc6\\xa2\\xf0*\\x05\\\\:\\xd9:I\\xf2\\x15\\x85l\\x11\\xa0T\\xad\\xe22o\\xead\\xb34\\x89\\xa2\\xfe%[\\x05Wa\\x92:e\\x9b\\x81\\xe9\\n\\x8a\\x86$\\x93*\\x92|\\xf8\\x00{\\xae3Of\\xe8\\xa2\\xa2\\x8d\\xa90YU\\xaf\\xb5Hr\\xa9\\xe6.\\xf2\\x067\\x9e\\xdb\\x98\\xc9\\x8e\\xbaS\\xf3\\xe8\\xd1#\\xbe\\x17\\xeab\\x0c\\xfe\\x89\\xa2\\xf4\\xa3\\x06\\xfd2l\\xdd\\x01\\xfdA\\xd1\\xdfZ\\xc2\\x12\\xa9\\x16\\x04\\xc9\\xb2\\xc2H\\xf5\\xc1\\xc4\\xf1o(,\\x90\\x9bx>\\x84\\xae\\xc5\\xaf\\x1e\\x9a{\\xdd\\xee49\\xb1Wx6\\xb2\\x0en\\xdc\\xa1\\x0f\\x98\\xd0\\xf3M\\xb2\\xa1\\xe4X}\\x93\\xfa!\\x9f\\x86a\\x94d7B\\xa3\\xc6\\xab\\x1a \\xa0.p=_\\xc6\\xe4\\xa1\\xcb\\xc2d\\x9d!S\\x1cssL~\\xe1q!4O\\xfe\\x0b\\xaf\\xcd\\xa2;\\xd5\\xb6)^;\\xb4+\\xc6\\xf2\\xb9\\x12\\xeeT\\xb8\\n\\xff\\xd5\\xe4\\xb7\\xa7?\\x9c:\\xebk\\x98\\xf2\\x85\\xeb\\x10\\x0d\\x0c\\x84k+\\xc6vz\\x1e\\xe4\\xcc\\xc3\\xc5\\x0f\\xd7\\xd6d\\x16\\xfa\\x93\\x80X$\\xea:\\x8c]\\xfc#\\xb8\\xcc\\xdc\\xc8k6\\x96\\xe8\\x8f:)`\\xadP\\xaa?\\xa1\\x9b\\xd1P9\\xc4v\\x86\\xf3\\xea#\\xed\\xb3j\\n#\\x1f\\\\\\xd3r@\\x1ff\\x1e\\xecC\\xd2qV\\xfa\\x93V\\xb6G;\\n\\xcc\\xa0\\x07\\x11|C\\xe6\\xde\\xc1=8\\x82\\x03\\x8c\\xe3\\xf0\\x0dFb\\xe2\\xff\\xbbw\\xa1O/=T)m\\n\\x8e\\xed)\\x00\\x95w1\\xe2\\xc0\\x8a\\xc0\\xf5=C\\xf7^\\x0f\\x0f \\x9f\\x00\\x01\\xf6\\x80\\xc84}\\xe3\\x12\\x0b\\xba\\x00\\xe9+\\x1d\\xf8\\xf0\\xe8\\x91\\x06\\xf5v\\xec\\xac>\\x1f}x\\xd4\\xb1\\xf8G\\xb7\\xb9\\x9c\\xfdRR\\x03I\\x88v0U\\xc8's\\xb7\\x14\\xef\\xd9xD#\\x1fKH;\\xc9\\x88\\xecD\\x8a\\xe5\\xdb\\xcd\\xb8\\xbb\\xb5\\x1b\\x8aF]q\\x13\\x13\\xa9\\x92\\xa7\\x0e\\xc7\\xf8X\\xc5'th\\xce=e\\xdc\\xc9\\xbd\\xa6\\xd8\\x91\\xf2\\x11\\x0eF\\xcf\\xb7\\xa9\\x08\\x00\\x19\\xb7\\x83;\\x9b/\\xd9\\xcb\\xc5\\\"c\\xb9)\\xa4\\xb7\\xfe|\\xd2\\xbe\\xe5\\xc9\\x18,\\xb9\\n\\xe8\\xf3\\x7f\\x8d\\x9bh]\\x18\\xe7\\xc9_Bv]^g\\xd3\\xc5\\xd9\\xea#y5\\xc6\t\\xff6\\xd9\\xc6\\xf30^\\x1eG!\\x8b\\xf3\\xd7l\\x96\\xbb\\xde`\\x85x\\xd2\\xbeB\\x81\\xa4\\xe8\\x8a\\xaf\\xf5 l\\xaf6\\x93\\xd5$\\xae\\xb6WY\\xec\\xc4;6\\x1c%\\xa0\\xd7\\x16\\xea\\x06S ?\\x81\\x05\\x87\\xa8\\x10\\xe9\\xc5S\\x98\\xc1\\x11\\xc5\\x1b\\xa0\\x95\\x1cC >l\\xe0\\x0827\\xe0\\xf4\\x92\\xbf)\\n\\x10+m\\xc0\\xec\\x06\\x18\\x98\\xb18gim\\x0b\\xd3\\x0e\\xbb\\x98\\xb9M\\xd2E\\x99\\x14\\xee\\xc3\\x01\\xf48\\xbap\\xacj\\xd9u^\\xd8\\xf3\\xc4\\xf4>eNY\\x9el\\xc6\\x10\\xd8\\x0b\\xac\\x93\\xab0^v\\xcc\\xc0\\x0f\\x05m\\xd8\\xdb\\xab\\x1f\\x02\\xc9\\xa7a<\\x1ch\\xc6\\x02x\\x1aK\\xe1\\xf2\\x8d\\xb5\\xa54\\x1668\\xe3\\xd4[\\xe54KJ\\xf1\\x03\\xf9\\xc7I\\xc4\\xd65\\x97@\\x10|\\xb4u1\\xc4\\\"\\x08]\\x84\\xf8\\xd9\\x7f\\xa1\\x11Y\\xfcx\\x93l\\xba\\x0c\\x0d\\xad\\xf6\\xae\\xb9\\x0f\\x8aw\\xad\\x06N\\xed\\x86\\xf1R\\x8c\\x9c\\xf7\\xa6>\\xf2\\xb2\\xe6\\xe5D\\xca\\xd5MV.\\xcd\\xe6M\\xc2!y\\xc7\\xd4\\x15\\xb8\\xb9\\x96\\xe4\\x94\\n\\x05:\\xc2Zy\\x89\\xc38f\\xa9\\x90\\x18p\\x99g\\x88,\\xf4f\\xc71\\n\\xd0\\xea\\xb6(RO\\xb5\\\"j\\x9el8\tB\\xe1-\\x1e$\\xc8\\xa2L\\xbb\\x0ffp5x[cP\\xd2 gg\\xb8\\x11\\xb5\\xa8\\x8e6z$\\xedT\\x8d\\xe0dI$S\\x86\\x92\\x96\\xb0\\xfc\\n\\xc29\\xf0\\xee\\xb8\\xf6\\xff\\xb5\\xdb\\xee\\xb3\\x06t\\x82\\xc6\\x8e>\\x05\\xd6\\x94|\\xceJ\\xe0\\xe5w\\x02\\xc2]1\\xe5\\xd3\\xa0pg\\xf8\\x12\\xf0\\xf2\\x87\\xcaK'\\x98\\xcfO\\xaeX\\x9c\\xff\\x10f9\\x8bE\\xc6\\xa0\\xc2\\xe4\\xb2'\\xa6\\x1c'\\xff/\\x8b\\xc9\\xfc\\x82\\xaf\\x99[\\xa29\\xc6{bR\\xa4qVa\\x96'\\xe9m\\xd5\\x9a\\xb3\\xd9f\\xab\\xb3<\\xc8\\xc9\\xcc#\\n\\x99\\xd7\\x89\\xcb4!\\x99\\x80\\x10\\x0e^3^\\x18\\xa5F\\xbdr]\\xb2\\xa0L\\xa5\\xe2\\xf3\\xa0V\\x99\\x8f.\\xd8\\xe6\\x89\\xe3\\xa9\\xcd\\xad.\\x88\\xebDI0w\\xfcv\\x08\\xa2\\xbevU\\x14\\x1b\\xc7\\xb6\\x0e\\xe2m\\x10Yb\\xd8s\\x15\\xa7a\\xd8\\x9bd\\x93\\xe1\\xea\\xb6y^\\xcb\\x87a\\x88n\\xb2\\xc4\\xfd\\xc2b\\xc1\\xcd(\\x85T\\xf1)A\\x15O\\xbc\\x18\\x14\\xe5lp\\x0f{x9O\\x0cS\\x06{\\x1f\\xac\\x82\\x0c!i\\xd7\\xe5\\x92V\\xc5d\\x80\\n\\x8d\\xeb\\x0d\\n\\x8d\\xa0\\xf9\\xd4\\xa0\\xd5>$\\x8dv\\n\\xb2\\x97L\\x8a\\x07\\xdf\\xde\\x9e\\xce\\xdd\\xda\\x14R\\xb6\\x90\\x19\\xfc\\xber\\xbc\\xe9\\xa8)_0H\\xe7\\xb8\\xb6Q@\\xcdP@\\xc2dR\\x08\\x939\\xe71\\xac\\x83\\xc8\\x0dB\\x8eI\\x84\\x90\\xceYS\\xbbB?\\x84'\\x13H\\x81\\x9c\\xd0\\x01\\xfd\\xcf\\x0d\\\"A\\x83\\x8a\\n\\xcd\\xda\\x97\\x1d\\x9aMdk\\xcf\\xe4\\xba~%\\xa3\\xf8\\x14nX\\x8e\\xfb\\xd3\\x87w\\xef2O\\xa3T\\xee\\xbbw\\xd9\\x87\\x7f\\xf3L.\\x9cV\\xac\\x99E\\xe1\\xec}'\\x94)\\x1d\\x1b\\xb2A\\x1e\\xa4K\\x96?\\xa6\\x93\\x18\\xe7\\x99#\\x82\\xcd\\xe4\\xc1\\xf2E\\xb0f\\x8f=q\\xf4\\xb9\tR\\x16\\xe7/\\x92yC\\xa2\\xf0=w\\x0f\\x19\\xcb\\x88\\x02~\\x0d\\xaeW\\xe1lEj\\x02\\xa6\\x81\\xfc3\\xbb\\xa5_k\\x96\\x07\\xea\\xc7,O#\\xf5#\\x88x\\xa9\\xc6\\xd8/h\\x81l\\x83F\t\\x89\\x8aJ)\\nQ\\x8f@V.sT\\xf9=\\xae\\x19\\xc9\\xabO\\xacQ\\x13\\x0dh\\x9b+\\xb5\\xa7\\xfc\\x03\\x8d\\xc8\\x8ak)\\xc8u\\xdc\\xb8~\\xbeV}J)\\x00w\\x05i\\xd0]\\xbc0\\x8bA\\x9e\\xa7\\xe1\\xe56g\\xae\\xc3i\\x87#R\\x184\\x93-a\\xec/\\xeel\\x7f\\xe5\\x90\\x7f\\xeb\\x96<\\xa4\\xf3\\xc1,\\n\\xb2\\x8c\\x03Yk\\xa8\\x1fi\\xf0mp{\\x97O\\xd4@\\x08\\xd3\\xc2\\xad\\xc5\\x1d\\xb5\\x99\\x08\\xf1x\\xe5+G\\x1c\\xadv\\xd8+\\xc4\\x80H\\x1e\\xad\\xb4\\x93\\xabL\\xc2\\n\\x11\\xc7\\xe8S\\xe9\\x12Pv\\xa6\\x94q\\x82\\xf0\\x9cLSm\\xd0w%\\xae<vb]\\xfaS\\xe1%0i1fA\\xb3:-\\x9f\\xc5\\xce\\x9c\\x91j\\xd1\\xf5\\xcf2\\xc3\\xc9\\xa0\\x0f\\x0b\\xf4\\xb2\\xbe#\\x82\\x97\\xed4K\\x89rJ\\xcas\\xff\\xce\\xe5M\\xc7\\xe8\\xe3\\xa5?\\x1f1\\xb4+J\\x19\\x99/2H\\xcf\\x1a\\x8c\\x1efvba%\\x7f\\xb0\\x17\\x92~p\\xea\\xe5G\\xb7\\xec\\x1d\\x86\\xe1\\x19\\x8d\\xa1\\xd4R\\xbc\\xd5\\x1al6\\xd1-y\\n\\xc2\\x98\\xc3\\xfa\\x87\\x0f\\xe0\\xea'\\xca\\xa1\\xf9\\x00\\xba\\xd3\\x9d<\\x11\\xbc\\x91N)\\x8b\\x9c|>8\\x17\\x17,\\xfb1\\x99o#.\\xe9\\x95\\xf7\\x05\\xd3\\xb7\\x8d\\xf5\\x8c\\x0c\\xba\\x9e)i\\xd3\\xc6\\x8d\\xdd\\xbb\\x9e!\\x80\\n\\xffpP\\xfd\\x10\\x8a\\x0f\\x87\\xd5\\x0f\\x81\\xf8p\\xaf\\xfaa+>\\xdc\\xaf~\\xc0d\\x0f\\xee\\xb0\\xf26\\xc2\\xe2\\xd5\\xa4Txr\\xc4[Ai\\x12\\xff \\x8b\\x98{\\xf8\\xf0A\\xb5\\xe1\\x05Ey\\xf1L\\x173\\x0dI\\x9f\\xf53h6(\\xd6S\\xc4Y\\xad\\xc3\\xba\\xbc\\x19\\xdbr\\xf9\\x12\\xc4\\\"S\\xd4\\x8b\\x15\\x8b6,\\xcd\\x06\\xc9\\xe6t^\\x1en\\xbb#\\xa0\\x1a\\xbd\\xf0\\xa7\\xb3\\xe0\\x1f\\xc9\\x89bt\\x9e\\xc8\\xa4f\\xf3\\xac\\x93\\xea\\x19\\xaf\\x14T+\\xb9\\xf9\\xe0\\xe2\\x02\\xd3\\x9f]P\\xcc\\xb5\\xa1\\x8f\\x91!e!\\xcf\\x139\\x12\\xb14\\xb9w6\\x1eL\\x84\\x83<Y.#v\\xb6J\\xae\\xe3\\xae\\xb4D\\n\\xfb\\xe1`\\x93&\\x9b\\x963\\xc6\\\\8\\xed\\xde&\\xdb\\xfc\\x19\\xb6\\xddR!\\x16r\\xdb\\xb2\\xb9\\x18y\\xc9q\\x84CR]\\xdd\\xbc\\xea#\\\\\\xb33\\x9chsQ\\xd4j9\\xe7z\\xcd\\xb2$\\xbab\\xf3\\xb3\\xede\\x9e\\xb2\\xc6\\xf3P<\\x03\\xd5\\xfcs\\x02\\xb4\\x93\\x0fDb\\x9cZC\\x18\\xb2d\\x95\\\\\\xbbSG\\xcd s\\xc8\\x9e}\\xee\\xc3\\x9e\\xcd\\xa9\\x99R\\xf7\\x1c\\x07\\xf1\\x8cE\\xc7\\\\$\\xee\\xbae\\x98\\xa3F\\xd0\\xfb\\xe6\\xedJoO\\xf3\\x97\\xdb\\xfc$\\x0e.#6\\x1f\\xc3^(t\\xca\\xca\\x17k+\\x86\\x8c4P\\x8c\\xfdM\\xca\\x01a\\xa7\\xb1\\x7f\\x02\\xb8e\\x1b6\\xdb\\x01\\xd86\\x81)\\xa6\\xa8\\xfe\\x10\\xb4Q\\xc6\\xa2\\x06\\xc1\\xf0\\xb7\\\\e\\x0eC\\xe8\\xb2\\xf1\\x17\\xf2Kb\\x94\\x1c\\x1csX\\xa66\\xb7:\\xda\\x84\\x93\\x1b6\\xdb\\xe6\\x9d\\x12'\\xc2.\\xd3b\\xd4\\xeei\\xfc*M\\x96)\\xcb\\xb2qc\\\"\\xef\\x861\\xd6\\xb1\\xaf\\xeb`?\\x11Z\\xceX\\xc4fy\\x92\\xfe\\n\\xf0\\xd2\\x850\\xf1!\\xbc\\n\\xf2\\x95\\x1d\\xb6\\xd4}\\x00\\xccj\\xbfa\\xb3*Q\\xe1\\xb2\\xd9\\x9f\\xce\\\\\\x8f.\\x11\\x9bJL\\x1d>pEg\\x1a\\x96\\xdfL\\xb7~\\xe5-\\xf8\\xd5\\x10\\xf6W\\xd8\\x00\\x0ba/\\xef\\x81\\xa5P\\xf7m \\x15\\xbd)\\x0b`\\x9d\\x90\\x8c\\xec\\xb35\\xa1\\xa7%\\xa7\\xb8o\\xbasY{\\xa3\\x1c\\x11|\\xd8jR\\x88/|\\x10\\xf8\\x14\\xf4\\xb7S\\xf3<\\xde\\xb3\\xdb18\\xeb`\\x83$\\xe6M\\xc2\\xc5\\xe8\\xcc1OC\\x88\\xce\\x9d\\xdd%\\xa4\\xa1$\\x1f$\\x9bv\\x80\\xc9\\x85\\x9c\\xd2\\x91\\x18$BL\\xcb\\xc9\\xdd1^\\x84\\xcb\\xcck;s\\xa7`\\xf2\\xf3dvr\\xb3\t\\xe2,L:H#\\\\xd\\x9b\\x1f\\xc2\\xf8}\\x18\\xb7\\x88E[*\\x1ef\\x9b(\\xb8}\\xd9U:\\xca\\xf4Z\\\"\\x95\\x9d\\xf4\\xffh\\xae\\x19\\x91j\\xbb\\xddpm\\na|\\x1d\\xe6?\\\"\\xda\\xb5\\xac\\x1e\\xc6SD)\\xe8l\\xbb^\\x07\\xe9m\\xdb\\xca\\xa1\\xfa\\xc0\\x97\\xfa4\\xd6\\xe5&\\x07\\x95\\xad$\\x0d\\x97a\\x1cD\\xda\\x94\\x9ds\\x8f\\xce\\x81\\x8cU\\x92Z\\xc1\\xb9\\x1bS\\x0e\\xc9\\xa2\\x1c2Y$6\\x90\\x0bbR\\xb4\\xe9:\\xe1\\xdci\\x19\\xf3\\x06\\xef\\xb2\\x97d<4>\\xfa\\xd0\\x14\\x92\\x1f\\x84\\xf6\\x81G\\x172\\xf7\\x03\\x8a\\x95\\xcdu\\xae`\\x02Qq\\xffP\\x8d\\xf8\\xe9DF\\x98-\\xd4\\xe6|\\x10DQr\\xfdF\\x10\\x10\\xc5V\\x14\\xec\\x97\\xbf\\x7f\\x97\\xa4n})\\xc6\\xd5fZ\\x96cm\\xdfB\\x8cx\\x15\\xe6\\xb7b3\\xaa\\x83\\x91\\x9f\\x9b\\x84\\xf0Vg+\\xfeh\\xfb>\\x86E\\x0b\\xaef\\xcf\\x0b\\xbcS$\\xb6\\x85\\xf3h\\x10=\\x86Ys\\xd9:\\x9e\\x8ea\\xdb\\xa9J\\x05I\\x1b\\xdd\\x9f\\xf8S\\xda\\xa51\\\\\\xb5\\xccA\\xac\\xf6\\x18\\xd6m+\\xf4l\\x9b\\xaf\\x924\\xfc\\x85\\xafL>\\x08\\xb6\\xf9\\xaa\\xd84\\xfd\\xab\\xbbn#\\x8c\\xa4\\x9b\\x8d!\\x95j\\x9a\\xbb\\xf1\\xc1Yl\\xa3\\x88\\\\\\xcb\\xc3\\x96\\x06~\\xde\\xae7o\\x92?#7A\\x0e;p\\xa0'\\xf0\\x17z\\xe0\\x88\\x9f]d\\x02\\x99)t\\\\\\x83C\\xf9\\xc5\\x88\\x0fm\\x8d\\xe2\\x96\\x99\\xda\\xc4\\x0f\\xc6&\\xad-\\xee``kb\\xbb3\\x19\\x1e\\xeay8\\xff1\\xd9\\xc6yG\\xc6\\xdb\\xc6t\\x99\\xbcs\\x88\\\"`7\\xc5[\\xddS\\xdcM\\xf7F\\x03\\x91N\\xd9\\xd0\\xbf\\x95\\xb7cS\\xbf\\xbf\\xf0\\xd2\\xfd5\\x8c\\xa2\\xd7l\\xc6\\xc2+\\xb6\\x93\\xec\\xd2\\xb6\\x86$\\x1aK\\x88\\xeb\\\"\\x17wZ\\xe6\\xf4\\xd3\\x969\\xa7\\xa3\\xb3bOU\\x86d\\xb9\\xdc\\x9f\\xa1%\\x9a\\xc5P\\x10\\x8an\\\\\\xd9\\xe1\\xf47\\xda\\xe1\\x94\\xc5s\\x96v\\xdc\\xce\\xb6\\xdd,cD;&\\xb0V\\x91u'KY\\xbb\\xca\\x94tV\\x99\\xc8#V2\\x89v\\xf9\\x95\\x958A\\xbb\\x00\\xbb\\x83]/\\xa3\\xa1\\x14<\\xb7]\\xe8\\xec\\x88&\\x1b,\\xaa\\x98J\\x0bW\\xc6\\xc2%&\\xdb.\\xdeu\\xc5\\xed+Q\\x16A\\xbd]\\xc0b;\\x8b\\xffK\\xbd\\xd6N\\xe2\\xff\\xadX\\xcf\\xba\\x9c\\xd4\\\\\\xef\\xb2\\xa4t7\\x97\\xbd\\xd8\\xd5Hs\\xbd\\x9bI\\xe1\\x04\\x8b\\x8b\\x1bk\\x86H\\x94\\xd5\\xe7\\xa6(\\x8f*_si\\xca\\x83\\xb3\\x93^y\\xacU\\xe94\\x83\\xf7\\x04}\\xdb|\\xd5\\xa9\\xf83U\\xbc\\xe3\\x80^\\x12N\\x06\\xd9a\\xa7\\xf6_\\xa9\\xe2\\x1d\\xdb\\x7f\\x83\\x15\\x16-\\xb0\\xf6#L\\xe0\\xa4\\xac\\x9d5\\x96?m\\xe2s\\xf2\\xf4d1\\xf81\\xd8\\xb4*\\xed?\\x0bM\\x7f\\x817\\xc1\\xfft\\xe6\\xb5\\xb08@Ec\\x0c\\xa7\\xcd\\xcd\\xf2'\\x0f\\x96\\x9dnXp\\xfam\\xf5\\xde\\xd5\\x9fL\\xea\\x1e\\xb9E\\xd1\\xa2\\xefB\\xcfr,\\xdcM\\x7f\\xe6l\\x93\\xb2Y\\x90s\\x11\\xff\\x944\\xdf\\xe2\\x95#\\xd45c_Z1\\xea\\xae\\xc9<%\\x1f\\xe2@cH\\xda\\x8b\\x16zJ\\x87\\xab\\x14e]\\xa5E\\x95\\x86\\xaa\\xaa\\xd8\\xa2\\x96a\\xf9\\xba\\x0dB,Xw\\x8bE{/%\\xfd\\xb2\\xc3\\x05?\\xa5W\\xb5\\xe8\\xa2PV\\xa1Zd\\x0f\\xa8\\xeb\\x94-$\\x1ft\\x15\\xa8E\\xff\\x04\\x8bn\\xdc\\xa2\\x8dB\\x83~\\xdc\\\"$\\x81U\\xddo\\xe1\\xfc`\\x96hI \\xc6#\\x9d\\xda\\xd7\\xf6\\x06kf]\\xad\\xb9\\xae'D\\x00u\\xffu\\xfd\\x11\\xd6\\x92H\\x9ah\\x85[\\xbb\\xf0(r\\x7fl\\xbb*\\xa6\\xc0y\\x0c?7\\xcf\\xa8\\xd0\\xa6\\xdb\\x8c\\xf6\\x1d\\xc1\\xa3+Hkg\\xdbb\t\\xb57\\xcdUK'\\x95\\xa2r\\xe9][u\\xed\\x90VU\\xd7\\xde\\xb5U\\x17Gt\\xaa\\xaa\\xf8\\xdd\\\\M\\xcaSc\\xb8l/(X\\xf9\\x18\\xae\\xdb\\xcb*>>\\x86\\x8b\\x96\\x91\\x17B\\xc2\\x18^\\xb6\\x97\\xd5Z~\\xd5\\\\\\xba$\\x0f\\x8d\\xe1\\xb8Ki\\xad\\xf5\\xb3\\xe6\\xf2\\x9a\\xf04\\x86\\x96\\xdd)INcx\\xd6\\\\Z\\x17,\\xc7p\\xd2\\xa10J\\x95c\\xb8i.\\xba\\x88\\xc7\\xf0\\xc6Z\\xc2v\\xb8Z{\\xfb\\xf1\\xdc\\xf3+\\xf7D>\\xba\\xd9\\xe0\\xd56e\\xa6\\x14\\x93+I.\\xd0\\xd2Q;\\x9b*1\\xa7\\xbd\\x8aCcA\\x07\\xd0}\\xac\\xf4\\xad\\xc2K\\xaaUM\\xcc\\xa0*K\\xd8(\\xbff\\\\\\xc0\\\\1b\\x020\\x01\\xcaE\\xf1{s\\xfc\\x8al\\x8e_\\x91\\xcd\\xf1+\\xb29~E6\\xc7\\xaf\\xc8\\xe6\\xf8\\xc5?\\x0cu\\xa7\\xa1\\x88\\x9c\\xbb,\\xb9\\xa6\\x7fk\\x9f\\xadY\\xa3O\\x96\\xe6\\x8fe\\xb2\\xc6h\\xc7\\x95\\x06w,\\xff\\x93]\\xae\\x84\\x87!\\x16\\x97)s\\xaai\\x8d\\x8cN\\x8d\\x9fqpJ\\x06\\xaa%\\xcb\\x7f@Bg\\x90\\xe2\\xbb\\xda\\xa7v\\xb1M\\xe5;\\xa8\\xca\\xb1I\\xf1\\x1d\\xcc\\xb6i\\xca\\xc5\\x8b\\x06A\\x17\\xed\\x93n\\x8cI\\xc5\\x1b\\x9d\\xd7\\xf0\\x8en\\xeb\\xfc\\xb4\\n\\x99E\\xd6qV#G\\xfa\\xb4~\\x0d/\\x12\\xc1=@\\x04\\x9f\\xc1;\\x05\\xce\\xd7x^\\xff\\xb5\\x03_w&\\xade\\x080\tT-v\\xc6O\\xdaC\\x05\\x146kn\\xcbj0Z\\n\\xc3\\xb5\\x8f\\xf2|\\xca\\x8c\\x833\\x0d\\xd9\\x9e\\x89q\\xe8tw\\xe6\\xc3\\xac\\xc6G\\xa8\\xf5\\x7f\\x11c\\xf1\\xfcO'\\xc6\\x08\\xb2\\x88R\\xa1_\\xcd\\x17\\x06\\xbb8\\xcd\\xaa\\x0b?|\\xc5\\x14\\xf9U\\xf1\\xf5#\\x98P\\x0eR7\\xf3(\\x87\\xfe\\xf01\\xcc\\xe0\td\\x8fa\\xd6\\xeby\\x10Mg\\xe7z\\xcd\\xe9\\xcc\\x10\\x16P,e\\x8c\\x17\\x1em\\xce\\xb9\\x88\\x81\\xad\\xdcb\\x16D\\x91`\\x19\\xcc\\x87)\\xaf{.C/F\\x98\\xa45\\x1c\\xcc\\xa2$\\xeb\\xe4n%\\\\\\xact\\xdb\\x1f\\x1a\\xc3\\x9fsT\\x08\\xf1\\xb7[\\xf5\\xaf\\x07B3\\xbc\\xa8Ucz|3~\\x0b\\xce\\xf5eI^'\\xb6\\xd5\\xd1\\xe0\\x19w7\\xa6\\xa6;\\xb0C:]ai\\xdaa\\x08\\xe1.\\x16\\xef@\\x18O\\x07\\xcf\\xce\\xde\\xd8K\\xf1\\xdd\\xd6N\\xd0\\x02\\x99\\xd2\\xb6\\xc1\\x0c\\x86\\xe9P\\x11\\x9ab\\x1d\\x9c\\x1a87\\xa5Hu\\xf8\\xdae\\xb6\\x0c\\x0dm\\xacx\\x1e^\\xd5H\\xb5\\xfe\\xa8kUcp\\xe6a\\x10%\\xcb\\xfe\\xf6\\xc6z\\x15\\xf7\\x8bts\\x19\\xcc\\xde\\xcf\\xd3dc\\xef\\xc8\\xfbB=\\xad\\x93y\\x10\\xfd\\xea\\xf3\\xa1^~\\xa3\\xc5\\x93S\\xea\\xe3\\xf5\\xfc\\xdf\\xa8\\xaf\\x15\\x0b\\xe6\\x9f\\xd2\\xd9\\xeaP\\xc9\\x81\\xce\\xb3\\xab \\x8c\\x82\\xcb\\x88\\xa1\\xbe\\x9f\\xa4\\xe1/\\xc2\\x85\\xabi\\xb3/\\xb7y\\x8e\\x06^\\xfb\\x80\\xf3\\xdb\\x0d\\x02\\x95(\\xd9ib\\xc8\\x0f\\xfa8\\xbd\\x86\\x1aI\\xac\\x9b\\x9b\\xb0\\xce\\xce+\\x90]-\\x1bG\\x7f\\x1d\\xce\\xf3\\xd5\\x18\\x9c\\x83a\\xc3@V\\\"\\xba\\x03/\\xb5\\xf3\\x08\\xb6Y]V\\xd3\\x9fU\\xca\\x16cp\\xbe\\xc2\\xf95\\x0c\\xe2&\\n\\xe3\\xf7\\xdf\\x97\\n[\\x90\\x17\\x99\\xee\\x97\\x05\\xc0Y\\x12\\xe7,\\xce\\xad\\xb3\\x8f\\x06\\xc8\\xe7\\xce\\xd8\\xdf\\\\o\\xb0\\x0e6\\xa5\\x9c\\xe4\\x8d\\xd7\\x7f[\\xe8\\xe7\\xac\\xcdl\\x8b\\xec\\xb7\\xe5\\xf0\\xe3\\xd9\\xd9\\x9b\\xd6\\x03\\x8fy\\xc1\\x12\\xacqK\\xe4S6\\x81\\xb5\\x9ca\\xe9,\\xb2\\xf5\\x10\\xa8b\\x8ak9\\xb9-\\x19\\xf9Z\\x0c\\xc0\\x15\\xb3g\\xdd\\x1dZ>6K\\x9b\\x87O\\xed\\xdb\\x97S\\xa2\\xf0\\xed\\xbf\\xf4%\\xf1\\xfcK_\\xfa_\\xac/\t\\xce\\xd7Ec\\xea|9%\\xef\\xae\\x07\\xc4u\\xfdb\\xa0\\xd1\\xc77\\x89:x\\xb6\\x99d\\xf2\\x9a\\xd6fN]\\xf1/\\xa5\\xcd\\xfc\\xc4\\x02\\xc8\\xca\\xda\\x98G\\xba\\x88\\x92\\xdd^%\\x9b\\xed\\xc6A\\xc3b\\xb3R\\xb7\\xb7\\xb7\\x9b\\xe2\\x93\\x88:A\\xe1\\xee\\xec\\x0d\\xb2\\xf0\\x17K4\\x91/\\xa9\\x03\\xf1.\\xfb\\xd7i\\xb0\\xd9|\\x8a\\xc0\\xdbA^\\xd5:K\\xe0\\x08\\x9c\\xcb<V\\x121\\x83(\\x99\\xbdgs\\x07\\xc6\\xd5\\x0f\\xdbX|\\xea*\\xaf\\x8a_;O!\\xdb\\x04\\xb1&\\xb5\\xcb\\x014\\x8a\\xe9\\xff,R..\\xf8W\\xda\\x1a\\x7f\\xd5aY5\\xc1\\xb7\\xa1\\xbey\\xc4HO\\xd1\\xbd\\xd66\\xf2XX\\x87\\xff%\\xd9\\xc0\\xbf$\\x1b\\xf8\\x97d\\xf3\\xdbK6\\xd6{\\x03l\\x90\\xe5\\xc9\\x86C}\\xb0\\x0c\\x88\\x0f\\x9b\\xf9\\x8f\\xbc\\\\ \\xad\\xc7\\xa2\\x13\\x8bh\\x82\\xce\\xf6\\x06\\x97\\xfa\\xff\\x89\\xe2H\\xc9Q\\xfd\\xd3\\x98\\xf7n,\\x95\\xa3`YH\\xb9\\xb8\\xe0\\x8cT\\xa3\\xd9\\x86\\xaf\\x1d\\xb8\\x80\\x13\\xa4a\\xd0\\x8f\\x82K\\x169\\xa6n\\x80\\xc6i\\xedH~\\xef\\xd0\\xd5\\x17\\xe2\\xe3\\xff$<\\x99}&On\\xa8o\\x1e\\xf1\\xffB+\\xc2\\x8c\\xb3\\xd4\\x1aOM\\xc4\\x97\\x1a\\x17\\x0ee\\x15\\x13\\xb3\\x9d\\x99\\xb8\\xf0V|\\xa8q\\xe1L|\\xa8q\\xe1H|(q\\xe1\\x99\\x8c|4\\x13\\x91\\x8fL\\xfcx\\xf6\\xdb\\xf3\\xe3EW~l\\x0b[T\\xa5\\xc2V\\x9e{%\\xf2\\xaaW\\x89\\xb9\\xd5w&\\xa9\\xf3\\xc0\\x96pEb\\xb1\\x82A\\x12s\\xda|\\xbc\\n\\xe2e{\\x06#\\xd0\\xf8\\x1c\\x1b\\xc4\\xc1\\xda\\xa2\\x8b\\x05\\xc5\\xb5\\xb5\\n\\x8b\\xfe\\xfbG\\xc4\\x04fB?\\xce\\xef2\\xbc\\xeb\\xce\\x87\\xd4i0\\xf5 v\\xbc\\x91\\xfa\\xf1\\xadR\\xa1\\xdc\\x80<~-\\xddG\\xc9\\xd2\\x14Ig\\x87\\xfe\\x9b\\x85\\x83\\xa0MA\\xa7\\xb8\\n\\x9d\\x0c$\\x14\\\\A3\\x89\\xd4l\\xde\\xad\\x01X\\x05\\x14\\x98#Z\\x03\\xd2\\x91A\\x9e\\x90|g\\x99Y,\\xd6\\xcc5\\xa73\\x0d\\xea\\xc7\\xee;,\\xa6y3;\\x9e\\xc5\\x07E\\xa8\\x0f\\xfe\\xcb\\x82\\xe3P\\x96\\x9d2\\xa3\\xec\\x14\\xfc\\x03d\\xa7f#N\\x17cO\\\\\\x05\\x906X\\xea~\\xe8\\x9ew\\xb5!\\x85X\\xb8\\xdb\t}@'\\xdd\\x1c\\xf9Os\\xb6n\\xba\\x8a\\xb4\\xa5\\xa2\\x94\\x07\\xae\\xcd\\xf8\\x94Q\\xe1oI\\x86l9jOJ\\xf6&{Y\\n\\x9c\\xb1\\x08\\xa3\\x9c\\xa5\\x9f\\x84t{{3\\xbc\\xf6c\\x89\\xa2\\x0e\\x88}\\xf6\\xfe7\\xe6\\xfe;v.WND\\xdd\\xc5\\xebG\\xf9\\xed\\x865\\xc4\\x88m\\x1a\\xcc\\xfc\\xcb\\x0cf\\xb2\\xc3`\\x1a\\xf5\\x08\\xdb\\xfd\\x8b\\xdd\\x8d\\x80\\xb3$\\xce\\x83\\xb0\\xe9\\x90}oo\\x83VI.vX\\xfb]$\\xe9\\xba\\xb1\\xe3$\\xa6(/\\xf2V\\x8ab\\x83\\xb6n7ej\\xdf\\x96t\\xa9ea\\x82N'\\x9cm\\xa7{\\xb3\\x15[\\x07\\xad\\x07\\x861.oK[;\\x9dn\\xea2\\xcc\\x18XI\\xa6i\\xae\\x19h\\x97\\xd7Z\\xee\\xbd\\x94\\x8fP?\\xe1\\xe8\\xb2\\xe0\\xa4\\xfe\\x17\\x04\\xd0\\xcb<n\\xb5T\\x0b\\x00\\xe5\\xe8\\xb5\\xa0?\\x8f\\xac#\\xc8\\xba\\xf6\\xceUf:\\x9a\\x976\\xea\\xce\\xda\\xac&e\\xd9\\x86\\xec\\xfc\\x80e\\x1c\\x0f\\xc6\\x9f6T\\xe1\\x11B\\x88\\xd4\\xd1#\\xa4>\\xa5\\x02@\\xac\\x8b[\\xb6\\x8e\\x7f\\xd2X[\\xc6\\xc0\\xb7x\\x9e\\xc4M~\\x19;x\\xa98\\xc7\\xe8\\xb6\\x81\\xa6\\xb09'Z\\xf36\\x90\\x10@I\\x87\\x01_\\x04r\\xb3Y\\xb2a\\xfd9[4\\xf8rX\\xba\\xd9\\x14\\xc7\\x12g\\xbc\\x95\\x0c\\x82\\x94\\xc16cs\\xc8\\x13X\\xa6A\\x9cC\\x10C\\xb0\\xd9D\\xa1\\x088=\\x0f\\x17\\x0b\\x96\\xb28\\x87\\x88]\\xb1(\\x83d\\x01\\xc1l\\xc6\\xb2\\x8cW\\x99\\x07y\\x00I\\x0c\\x97l\\x15D\\x0b\\xfe-_1`\\xf1\\x9c7\\x9a\\x0e\\xe0$\\x98\\xad\\xe0\\xd9\\xabSX\\x07\\xb70g\\xb3\\x88\\xf7\\x97\\xc4\\x0c\\x92\\x14\\xd6I\\xca\\x00'\\x93\\x0d\\x9av_\\x1f5o*e\\x7f\\xdb\\x86)\\xcb\\xb0\\xabE\\x12E\\xc9u\\x18/eK@t\\x06(\\x16~\\x12\\xb3\\x0cn\\x93-\\\\\\xf3\\xa9\\xa99\\xe6\t\\x9cQ\\x1a]x{:p0>\\xf0n\\x1c\\xf8\\xd3\\xb8\\xef\\xc7\\xbakM\\xa3\\xc4\\xf3\\xb9\\x1c\\x19$\\xf3iPR\\xec\\x0b\\xbfmkz\\x07\\x06 \\xd9[[\\xd0\\x18\\x04\\xf1&\\x95\\xaa\\x9dAp\\xaa\\xf7I\\xd7\\x05\\xa2\\xce6*J.\\xf6{\\xb3Q\\xfd.\\xcf\\x83|\\xfa\\xc3b\\x89\\xfag;\\x19\\xfa\\x9fwa\\xeb\\x8b\\xaa\\xddmJ\\xb5\\x08\\xad\\x8a\\xb4\\xa0Y\\xf5&\\x03Y\\xb3\\xce\\xbd\\x9b\\xa3{7\\xb96T>\\x1em\\xa1\\x81\\x82\\x1d\\xdc\\xe7\\x85\\xc6\\x1dl\\xc2?\\xb3[>\\x8c&E:\\xa2\\xc2\\x97A\\x16\\xce\\xda\\xca\\xce\\x94\\x13}\\xb3\\xb2\\x9d\\xeb\\xac\\xc9\\xac\\xfde\\xd7!f0Y41\\xa4Y\\x901\\x10\\xf3p\\xc6\\xd6b \\x86f;\\xd8h\\xe5,\\xd0Qk\\x82\\xee\\x9a\\x13t\\xd5\\x9e\\xa0\\xa6\\xaft\\x88\\xcc\\xa1\\xb3\\xc2\\x0e\\x91?v\\xd2\\xd0\\x80dT\\xa1\\xa1\\xd9\\xd3hB\\x83n/\\x9f\\xcb\\x94\\x05\\x96cUP\\xfb\\x8b\\xa0\\xf7\\x19\\xdb\\x1b\\xfdk{\\x7f\\x9f\\xdb+Y\\xe5'\\xefl'\\x89\\x13\\xd4\\xee6\\xcf\\xc5\\x07\\xe7m\\xfc>N\\xaec\\x156Gs\\xe2F%\\x14\\x1c\\x1f\\x16]o\\xb7B\\x87\\xb3\\xf0\\xb6\\xf1\\xd3\\xb8\\xa1\\x07N\\xff\\xe7\\xedzcU\\xb1\\x0c\\x89f\\xfe\\x87\\x9f\\x80\\xfe.\\xa5\\xcb\\x7f\\xc9\\x94\\xffKdJ.h%\\x0d\\x84T\\xc5\\x01p\\x1d\\xb4S4\tMqQv\\xcd\\xb2,X\\xb2\\xa6\\xd2iQ:K\\xb6\\xe9\\xcc*@}.\\xe9\\xd1m<8[[\\xd8V\\xc0<\\xdd\\xb7\\x113A\\xae\\xfe\\\\\\x06\\xb3\\xf7\\xcb4\\xd9\\xc6\\xf3\\xe3$J\\xd218_-\\x16\\x8c\\xb1&c\\x18\\x7ff\\xa2t\\xda\\xe8A\\xc2\\x9fu\\x90.\\xc3x\\x0c\\xce\\x88\\xad\\xcd\\xb4\\x12\\xac\\xa4\\xba\\xd1\\x0b\\xb8q\\xa5:M>g7\\xf9\\x9b4\\x88\\xb3E\\x92\\xae\\xc7\\xe0\\xcc\\x82M\\x98\\x07Q\\xf8K\\xdb\\xeciN\\xaf\\x85\\xdb\\xce\\xa7M,\\xf5\\xc1\\xe1\\xbc+o\\xf4\\xf9\\xd5\\xfd\\x84\\xe3\\xff\\xa5>55\\x06\\xf1\\xbb\\xf5\\xa9\\xf9\\xa7\\xf0\\xa4\\x81n\\xde4\\xb0\\x8bG\\x0dh{\\xf6+z\\xd5\\xf0gC\\x05\\xd3\\x86Q\\xe0Aw\\x9b\\xa1\\x01\\xfdm[L\\x08\\x11\\x96i3FPR\\x88%\\xcb\\xff\\xc2a\\xba%\\x80I\\xda!A\\n))Mc\\x17\\nOd/\\\"\\xf0kf,\\xc0\\xc9O\\xedC\\x9dR}\\xbe\\xdf\\x06\\xe8Q\\x7fpy\\xfea\\x81\\xa9\\x9bw\\x1aJ7\\xa2\\x9a\\\\iA\\xf7\\xa7\\xbes\\xa7H\\x0d\\xc1\t\\x1eN\\xc3\\xb1\\xa5\\xc7\\xa9/\\xb9\\x8d\\x85\\xfd.By\\xb7\\xc1=\\xe8\\x82R\\x07#\\x1b(Q\\xa9\\x9bI\\x0c\\x94a\\xae}\\xefBL\\xd3\\xe8\\x9c\\xc6\\x9bm\\xde\\x16c7\\xa0\\xb2\\xaf\\x93\\xeb\\xb6\\x92[*y\\x9c4\\n\\x8b\\xa0\\xf2O\\xe2\\x91\\xf1\t\\x17\\xcc\\xda\\xca\\xcf\\xa8\\xfc\\x8fA\\xfa~\\x9e\\\\\\xb7\\x86\\x05\\xa6,\\x94\\xce\\x9f0\\xd4\\xe9\\xab _\\xb5\\xf9\\xe4\\x80pa\\xc9Ep%A\\x9a\\x9a+\\xcc\\x91\\x90\\x05Q\\x84S\\xc8\\\\o\\xb7\\x03/\\xf9H\\xf6F\\x121_\\x92\\xd3\\xb9\\xe3\\xe1\\xf9\\xd7\\xa7\\x9b.\\xba\\x9ds\\xb5\\x9c\\xa1\\xae\\xee\\xb6\\x97\\x99%s\\xa6J%*N\\xb0\\xebp \\xc4s@\\xe7\\xff\\xff\\xff\\xc0%\\x03\\xa7\\xe7\\xd8[Z\\xb4\\x19A(:\\xf2Te\\x91\\xd1|\\xee\\x1c\\x1f\\x92skeLk\\xbbit\\x88Y\\xdd7\\\\/\\x9b7\\x9d\\xa1\\x06m+\\xd3zK\\x9ft\\x9f\\xb1\\\\\\xaf9\\xcbfi\\xb8\\xc91\\xeau\\xf3\\\\>yL\\xfa\\xc1\\xaf\\xd0\\x8b\\xbanmyW\\xbf\\xd8(N\\xe3\\xdd\\xc7\\x10\\xc6\\x9f=\\x02\\xba3\\xa1F\\x81\\xe8>v\\x10L\\x1a\\x1c\\x0fJ\\x83q\\xe0\\x1b|\\xa0\\xd1)d\\xdb6\\x94\\xb0\\x0dL\\x84\\xe7\\x08W\\xbeZ\\xd4\\xac\\xc2\\xe4)/i\\xe0\\xcf&X\\xf2|\\x987\\x85\\xa9\\xe8\\xea=\\xf8I~&\\xf2A\\xd5\\xbc\\xf5 \\x1b\\xdaO\\xde\\x01\\xac\\xfeN\\xf4\\xa9\\xb3\\xa0a\\n\\x98j:\\xcc.\\x0fy\\xd3v9]\\x17,\\xea\\xb4\\xbb\\xb4kzS\\xd6]\\xb8\\x12\\xa9\\xefXq\\xc9\\xab\\xe54\\x8e\\xbce\\xf3 ]\\xb2\\x9c6\\xde^V\\xde}\\xab\\xf8\\xcb3\\x12\\xc9\\xdbvV\\x08\\\\v\\x16fc_\\xac\\xf0\\xd6\\x0f1\\xcdt\\xd8\\xaa\\xc7\\xff\\xcb\\xa7\\xa0x>\\xc9\\xea\\xfbO\\xe6S\\x00\\xbb\\xe9\\xe4\\x9dn\\x96\\x82\\xe8\\xf97H\\xcc\\xbd\\xa0\\x82a\\xc3(\\xb6]\\xc2W\\xf0\\x1d\\xdd\\xb6\\xea\\x1d\\x11\\x96j\\xd6\tf2\\x1f\\xb6\\x10|\\x07\\xdb\\x8c\\xa5\\xf6\\x0b5b\\xf7\\xbbd/%\\xe5\\xbcA\\xf3\\x96\\xcay\\xc3<\\xa5r\\x0eG-4G\\x8e\\xda\\xa6\\xc8\\xf3\\xe7#\\x07O\\xab\\x99\\xf1\\xb7N\\x89\\xfa\\x0f\\xd7\\xf3\\xbb8f@\\xc9\\x85\\xa4U\\xe9\\xa0\\xdb\\xc4R\\xcf\\x8f5=\\x9f\\xa3\\x8dm\\xed\\xeb\\x0b\\xff\\xbfT\\xdbo\\xd7\\xdew\\x893\t\\xbf\\x03m?\\xfa4m\\x7f7\\xf5}\\xb1\\x9b\\x89\\xc0\\xa0\\xed+\\xa2\\xd7\\xae\\xf6'\\xbf\\xaa\\xda_76\\xeaO\\x07\\xb5\\xbf\\xe5\\xc4\\x8c4\\x12{\\x84\\xc4B\\xedw\\xbe\\x0d\\xb2pV\\x8e\\x8e\\xe8\\xd8\\xab\\xb6\\xea\\xbc\\xcd:|\\xdaE\\x87\\xb7\\x0f\\xdb\\xaa\\xc3\\xdb\\xaa\\x04mK\\xd1j\\x93\\xf8t\\x1d\\xfe\\x93\\xc7T\\xd5]\\xdfJ\\x9e'\\xd5Wk\\xc5\\x8a\\xfa\\xea\\xf8\\xb0\\xc1\\xff\\xb9\\xfe\\xda\\xe0W\\xd6<\\x9c/\\xa8\\xbf\\n7\\xf49\\x12w\\xfa\\xb3\\xa5\\x06\\xf1zG\\xe2\\xed\\xaf\\xa2\\x1f\\x7f\\xb1\\x8dz\\x15d\\xd9u\\x92\\xcew\\xde(\\xdd\\xce\\xf0\\xeb\\xed\\xd3\\xee\\xab\\x1fl\\xf3\\x84s\\xb6\\x88\\xe5|\\x17bv\\xdd\\xdf\\x889v\\xdb\\xb7\\x8e\\xa5\\x05\\x04u,\\xfdi\\xbb\\xfcE\\xac \\x9f\\xe5\\xbd\\xf7Ob\\x051\\x1d\\x91\\x97\\x87\\xbc\\xf8\\xfd[AR\\xcd\\nb/\\x95\\xa0}\\xbf\\x83\\x91$m\\x91\\xd9\\xc8\\xb1\\x99R{asf\\x06\\x1eL\\xc3s.[\\xf8\\xba\t\\xa4InE\\x1970\\xef&ZN\\x985\\xba@yW\\xff\\x99|\\x1c\\x16\\xd6\\xb8!\\x0b\\x9b\\x8f\\xc3\\xc2\\xe6\\xe3\\xb0\\xb0\\xf98,l>\\x0e\\x0b\\x9b\\x8f\\xc3\\x82,+\\xe5\\x0f\\\\\\x90u\\x17\\xd2\\xc4\\xc2\\xffxt\\xf7\\x81g6\\xb2,~{#\\xcb\\xe6K\\x1aY~o\\x8e\\x0f\\xf3\\xdf\\xa5\\xe3C\\xd0I\\xe1^\\xa8\\x92\\x1d4<\\xbe\\x8b3\\x0e\\\"t\\x81?kP|0\\x8a\\xc9\\xa0H@\\xe6\\n\\x8d\\xdc^\\xe3\\n&$voH\\xc2U\\xa2Vkf\\xd1u\\xa5\\xe6,\\nY\\x9c\\x9f\\x8ad\\xa2\\xab\\x81\\xfc\\xdd\\xd6\\xce\\xd2\\xd8\\xce\\x19\\x9b\\xa5,/\\xb7E\\xef\\xda\\xda\\xbb\\xad\\xb4'\\xc5\\x8a7x\\x93\\x03k\\x8b\\x1c\\x85\\xfd\\xcbd~\\xeb|\\xb6{J\\xb0\\xd9\\xd0Y\\xdbj \\xfe\\xb4\\x0f\\xeeK\\xb8\\xb2\\xd0\\xb5\\xcd1L\\xcf\\x1b@Q,~c\\xbaM}U\\x1b\\x93k\\x16f\\xb7\\x86\\xa4\\x8er\\x9d\\xc7\\x8d\\xbb\\xa3\\xef\\xc6\\x18n\\x8d\\xe5\\xfe\\x01\\xee8\\xbf\\x8a\\xb1\\xa9Y\\xd2\\xeb\\x1aV\\x05Th\\x956\\xfa\\x03\\xb0[d\\x15\\xd85\\xba\\n\\xec\\x18a\\x05\\x04\\x1b\\xce;\\xd8\\xbc\\xb64\\xc5n\\xf9R\\xa0\\x08\\xb3\\xd2\\xc9\\xe8%\\x92\\x9at0z-\\xa8d\\x07\\xa3\\xd7\\xa6k\\x98\\x17\\x90\\xae$;X\\xc8VT~7\\x0b\\xd9\\x15U\\xeaj![\\xe3\\xb9A\\x98\\xbd|vv\\xd8\\\\\\x92\\x93\\xe8\\xb5\\xeb\\xd5\\xe2\\x0f\\x1es=\\x16\\xa3\\x0e\\xe2\\xf5v\\xfc\\xd9\\xdc\\xd2m\\xd1\\x12Q\\x9f\\xe3\\x94\\xcdY\\x9c\\x87A\\xf4\\x7f\\xd9\\xfb\\xf7\\xf5\\xb6\\x8ddQ\\x1c\\xfd\\x7f=E\t3'\\x03\\x8eIX\\x94\\xefL\\x14\\x9f\\xc4\\x96w\\x9c\\xb1co\\xcbNfm\\x8d\\xb7>\\x10h\\x92\\x88A\\x00\\x01@J\\x9a\\xc4\\xef\\xb2\\x9fe=\\xd9\\xef\\xeb\\xean\\\\\\xfb\\x06J\\xb6\\xe5\\x8c1k9\\x14P@\\xdf\\xaa\\xab\\xeb^\\x05\\xfbR\\x1dHo\\xf8\\xd4\\x1c\\x93\\xc0 \\x89_\\xc4\\xe6\\x85=\\xad\\xc1\\xb1N%\tY<?;\\x12\\xf8\\x93\\x82\\xdf\\xd2\\x7f\\xea\\x0c3E\\xb73\\xf7\\xe0\\xfb\\xbe\\xe1\\xc5#\\xb4\\xc2|H\\xcd\\xa2\\\\X\\x10\\x97.\\xa7\\x0e\\xf0\\xaa\\xf8{G\\x97\\xea\\x94\\xb3\\xf5\\xe3(d\\xeb\\xd7\\x0c\\xf1\\x17\\x81\\x00\\x86\\xfean\\x08}'\\x8f\\xeb\\x85l\\xa9\\xe3\\x8cJ\\xd3+\\xf3\\x95\\xf2\\xc7\\xe0\\x80\\xfb\\xe2\\xbbM\\xb9:\\x18\\x03\\xbd\\xddBCpF:\\x97\\x97\\x95IY\\xa0\\xd7\\xa1\\xfa\\x06\\x1djYW\\x99\\xe6\\xdc\\x88\\xce\\xe3eu\\xa7\\xa1S\\xad\\xb7\\x1e\\xfa\\xec\\xf4\\xbfTi\\x13\\xd9\\x1b\\xc7:\\x97\\xab\\xadi\\x98B\\xb5*[K\\xcd\\x10\\xc7p\\xb6\\xa3\\xa7\\x97\\xebDk:\\xc2\\xa8d\\x989\\xa7\\x1b\\x7f\\x8e?\\x97#\\xed7\\xb3\\xfe'Y\\xaa\\x8f7\\xaf\\x9e\\x0dpoJ\\xea\\x0d[}\\xe2M\\x1e\\xb3\\xdc(5\\xa3\\xda\\xef]\\xfd\\xf3\\xc2\\xba\\xa3\\xaf\\xd3w\\x84u\\xd0\\xba\\x7fN\\x03\\x97K\\xfaz\\xd59m\\x83\\xfaen\\xc6\\xe8\\xe0\\x06Q\\xaf\\xed\\x18\\x9c'qz6|F\\xd9\\xc6C_\\xc4z\\x12\\xf7p\\x12\\x1f\\\"\\xa4\\xc6\\x81+0\\xed|#@\\xa5\\x07\\xd6O\\xc4\\xaa\\\\\\xc7O0H\\x083\\xa0\\x9cV\\x92\\x96vB6M\\xed\\xff\\xd9\\x00\\xe7\\xb5\\xf6\\x06\\xae,_b\\x07\\xab>c\\xb4\\x88\\x94\\xfe<\\xa6\\xe2\\xc2T\\x13?\\x0f\\xa8\\xaa(\\xde\\x95iF\\x01u\\x03T\\x0e'B\\xbe\\xce\\xd4\\x9b(\\xec\\xcf\\xa7\\x81\\xed\\xb66W8\\xa1_\\xfa\\x13\\xfc\\xe4%l\\x10\\xc8\\x9fZ\\xa9\\xa8?6\\x02V[E\\x8b\\x80Y\\xd3\\xaa1\\x04\\x01m\\xbc'?_l\\xb34V\\x0c3m\\xb41\\xce\\xf2\\xa5\\xcf\\x02\\xe3\\xc4XN1\\x9f\\x86\\x16\\xe1p\\xca\\x86\\\"[\\x9b\\xda5\\x95\\x0c\\x9f\\x0f\\xc5+P\\xee5N*\\\"a{>w\\xc1\\xaa\\xd7\\xe6\\x17w\\xc3,\\xcd\\x08\\xd3\\x8c\\xfb\\x17\\xe8G\\xc8\\xf5-m5\\x9d\\x16g^1H@H\\x1d\\xbf2\\xb0\\x07,\\xad\\x87\\xb6\\xe9\\xda\\x81\\xe2*\\x1b\\xfemCr\\xc3\\x98\\xff7\\x05\\x81\\xcc\\xcf\\xfd5)I^\\xa0\\xcf<e$9\\xa7\\x88\\x9aN5\\xc7\\x8b\\x8f\\xbb,\\xe7W_\\x891#\\xfb\\xa4\\xd8R\\xc8\\x83\\xba{g\\xf4\\x13\\xc8\\x8c7\\xe0\\x84\\xe2Q\\xcb\\xa7^=}a\\xcd\\x9eF\\x86\\xc3\\xac\\x02\\x1bL`\\xfe\\xac\\xa7Y=qV\\x07\\x99\\x05\\xdb\\xd4\\xf03\\xe8\\xa0\\x97A{\\xc5P_\\x82KC\\xc8[e\\x85\\xf8\\x10\\xa4\\xad\\xb7\\xbf\\xaeh/}\\xf4}R0\\xeb\\x8a\\xcd^a\\xa0_\\xf6K{\\xbf\\xf0\t\\xdc\\x0d\\xa3\\x99\\xc5\\xe5\\xaa\\xf6\\x9b\\x0c\\xff\\x8fm\\xbaw\\x89=\\xb0\\x87d\\xff\\x14\\xff\\xb1L\\xe7j\\xaf%\\xe0J\\xd8\\x9dV\\x12\\xb3\\xb3s\\x1cd\\xfa]\\xc4\\xdc\\xd3a\\xd9\\xab\\xc1\\xac44zB\\x82uJ\\xa7KM\\x1ct&/X\\x91\\xe0\\xdd<U\\x14\\x04\\x17\\x97\\xa6U\\xab\\x88.\\x86s\\xcc\\xeb\\xdb*}\\x18\\xdd;,G\\x94\\x037`\\x8e\\xbfDW\\xf1\\x96p\\x9f1\\x1b\\x8a\\xe8\\x15F\\x05%\\x0d\\xe1\\x0c\\xce\\xcc\\xc0|+U3c~\\xa3\\xde\\x19\\xc4K\\x13\\xc4#\\xc3\\xb6\\x00\\xae\\x9b\\xbc$\\xa1\\x86&\\xb1\\xb6\\x9e\\xaf]\\x97Z\\xa4S1\\xf7\\xa9\\x89aQ\\xa9\\xcb\\xef\\x02\\xa6\\x89\\xd8\\x05\\xa9\\x91\\n\\xee<J\\xb3\\x8e\\x12:\\xed\\xe9\\xd5r\\xc0\\xdaK.\\xa7\\x17\\x85N\\x9bM\\xfd\\xb7\\xa9\\xe9R^\\x96\\xba\\x82\\x90\\xa4\\xf6\\x1d\\xc3\\xd1Ux@\\xaa\\x06\\x1c\\xda\\x0c\\xf7\\xe3y@^\\x12\\xff\\x86g\\xbd\\x07\\xb60\\xe7(\\x19\\xe9\\xf8\\xa4lH\\xdb\\xda\\x04\\xf1\\xc6\\xc3\\xbd\\x97\\x01_\\xd7s\\x9b\\x04\\xf8\\x9f\\xa6\\xef\\xd5[\\xda\\xee7\\xb2\\xe2kV\\xff\\xb2#\\xb0H\\x8d\\x0f\\x03\\xd2\\xe3\\x03\\xef|\\x95\\\"_\\ne\\xe9\\xb8[\\x8fY\\xe5\\xb8\\x1b^\\x81\\xe3n\\xaf\\xbc\\x92\\x92r\\x94\\x92\\xf2Jd\\xf7\\xf2Jm\\\\0\\x8d\\x04\\xf8h\\xca\\xdamX\\xbdd\\x83\\x8b`\\x91<7B\\xa6\\xb5#\\x0e\\xba\\xe2\\xa9!\\xa3!.8>\\x1cB\\xaaK\\\\\\xb2\\x11\\x91\\x9e\\x95\\x0b\\xa0\\xc2\\xc1\\xcd\\x0bb\\xe2\\xe7\\x1a\\xffc\\xe6X0\\x03=K\\xc6\\xb9+__\\x90C\\x18{\\x19\\x9c\\x1c\\xcd\\xb9\\xd7V \\xf0xd\\xe8\\xdb\\xac\\x8aT\\xd7\\x82\\xf1\\x95\\xd2\\xb2\\xa9\\xf5\\x82js\\xcf\\x06lJ\\xb5\\xf9oi\\x93\\x8f\\x04\\xdcF1R%\\x82\\xb7\\xb8M\\xabm&\\x9c\\xe3\\xcd\\xee\\xee9:N \\x17\\xa9\\xf3MM\\x11\\x8c2\\xf8\\x85H! \\xc7\\xa0h\\x01.\\x96\\x99\\x9eL\\xb9\\xa7\\x07cIyY\\x89(\t\\xc9\\xf9\\x8b\\x85\\x9b\\x8eL\\xfer\\x11\\xf4^\\xe6\\x15tO\\xd2\\xb7\\x1a\\xbf\\x0e+/zhxL\\x0e\\xaf\\xa2\\x03$.\\x08\\xec\\xe5\\xccC[1>\\xf8\\x96N\\x01\\x830wHt\\xa6\\xf3\\xb9\\xc1N7\\x95\\xf3\\xf8\\x9e6\\x91\\x90\\xb2>\\x90\\x06\\x07\\x1b\\x8a\\x80+\\xc6\\xc16r\\xe9)\\x0bF\\xb5\\x9a\\xc23|y\\x0e\\x8bt\\x0c\\xaa\\xe8\\xfb\\xc6\\\"\\xf9\\xeaI`\\x1c\\x93\\xd5\\xe8\\xfb\\x07\\x9d\\xda#=\\xb19\\x8f\\xd8F\\xb5:\\x8f\\xd8|\\xda\\x9cGl6\\xd5\\xf1\\xdd\\xa9\\xf5y\\xa0\\xc9\\xe6}\\xa5\\x87A.J=\\x9eD\\x92\\x0crV\\x11.\\x19\\xde\\xfd\\xb4\\x11.\\xe3v\\xce\\x12\\xe5\\xfe\\xae\\xd9\\x15:-\\xfd\\xd9\\xab\\xd3\\xf1)\\xd7\\xba\\xca&\\xa7\\x84`\\x91\\xe5\\x81\\x8a%\\xd9Tm(\\xb9\\x96\\xa2\\xaa\\x9f\\x80D\\x7f\\x03\\x0f\\xe1\\xf7\\xf70\\x83M\\x1f4\\xd6z-\\x07\\xfc)\\xa5~\\xfd\\xa7\\x0b\\x8d\\xdb0\\x86vk\\xac\\x03\\x94\\xcf\\x8d\\xf5\\x9e\\xa1+8\\x84\\x93NexQ\\xce!\\x94mt\\x96\\xe6\\xbf\\xd2\\xf1\\xcb\\xf3\\xc1s\\x92\\x8c\\xd3\\x93\\xd4\\xcc\\xaa\\x08\\x0cue\\x113\\xa2>D\\xed\\xf6:\\xe8\\xdb\\x0d\\xa7=\\xdd\\xe7k\\xff\\\\\\xf9\\xd7W^\\xb6)V\\xae\\x93\\x93\\\"K\\x93\\x82\\xa0]\\xf9\\x10u\\xfa\\nj\\xa6\\xc8\\x9b\\xcf\\xda\\xab\\xcc\\x8eCZC\\x97\\xb3\\x9d\\x9a\\xeb\\xbb\\x12\\x7f\\x889\\xecy>\\x0f\\x19\\x1c\\x9b\\xca\\xd6\\x0bm\\n\\xe6P\\n\\x94,\\x1d8<D2\\x9a.X\\x14\\x8b\\xf8\\\\e\\xa8;D\\xf5_B?\\xf8\\xe6\\xd5\\xd3J\\xd6s\\xb3n\\xa0\\x14%([\\xcce\\xc0Jn\\xbd\\\"a\\x94\\x93\\xa0|\\x93\\xc7m@\\xca\\xc85\\xb6\\xf4v\\xd4\\x9a\\xa8\\xdcK\\xc8\\xd9w\\xccq]r:\\x88Sa!!\\x15\\x82\\xce7|\\x82%T\\x82lI,\\x12xK\\x9e\\xf3\\x84\\xe3\\xc2\\xf3\\xa69\\x0c\\xce\\x90or\\xe6\\x8d\\x19\\x15\\x90\\xa4%\\x86\\x98\\x90\\xd0\\x83\\x17\\x08\\xde\\xcem\\x00\\x81\\x9fP\\x989\\x81\\x8c\\xe4\\x8b4_\\x93\\xd0k\\x1fA\\xdd\\xf4\\x0btv\\xea5em\\x9fn\\xf2H\\xb5\\x0e\\xdb\\xd1h\\x0c\\xa8}\\xf3\\xa2\\x82i\\xe1\\x02\\xb4\\xf2\\xed\\xc37\\x10x1I\\x96\\xe5J%}\\xaf\\xb1\\x92\\x04\\x12\\xc5c\\x92\\xf9\\xb9_\\xa69Z\\x17A\\x12\\xa7$z\\x85\\xe0\\xaa\\xee\\x04\\xde\\xafi\\x94\\xb8\\xeb\\xaev\\xe1}\\x0fW\\x96Ub\\xa4y\\x99\\xfa#7!g\\xf0\\xd8/Ig>\\xaaV)\\x0b\\xa5juI'\\x81\\xe3\\x14\\xe5O\\x0b/'~\\xbcn\\\"4\\xdeP\\xbd\\xcf\\xe1e(}\\x81S\\xe4\\x87!\\xea\\x0b\\xfc\\x18\\xfd \\x8eq\\xf3\\xbc\\xf4s\\x7f\\xdd\\xd1\\\\,\\xd2\\x1c\\\\\\xfa\\xde\\x1c\\xa2\\x04.F\\xcd^]\\x9c\\xcc\\xdf6\\xbat2\\x1f\\xe3\\xad\\xb7\\xa8\\x1e\\xed\\xf7j\\xc4\\xa6\\xd29td\\xfd:\\xadO\\x1d\\xbf\\xe7\\xe1\\xdbG\\xeb3z\\x02\\x9d\\x8ea\\xc5?\\xfa\\x953z\\xcb~rq\\xea\\xb4\\x920\\x9c\\x87\\x0eFL<\\xc4\\x08\\x89\\xafd_;\\xaaN\\xe5v\\xc7\\xe8\\xfd\\x8e\\x13H\\x08\\x0f!\\xa1,k\\xa52{\\xca\\x9fc\\xfa\\x81MA\\xbe\\x17u\\x94(5et\\xf1\\x97\\x88\\xb2\\x1d\\xe2\\x10\\xf9_X\\x12\\xf0a\\x8b\\x86V\\x0f)\\xa8\\xe4\\x0b0S\\x83?I\\xf3\\xb5l\\xed\\xaa\\x90S\\xaf`\\xb5\\x07\\xdf<\\x15\\xbb\\x9fonY\\\\\\x1e\\xd3\\x0dH\\x84\\x10\\xc4Xi\\xa0[^\\xd3\\x14i\\x8c[\\xe0\\xc7\\xf1\\xdc\\x0f\\xde\\xcd\\xe0\\xa8\\xff\\x90\\xe4\\xf9\\xa3\\xf9\\xacE'\\xdb;\\xad\\x11;\\xeb\\xa5\\x19I\\xdc\\xb3z+6\\x18W\\x8c\\x9b\\x1d3\\x96\\xde\\xbdu \\x89sv)\\x83\\x97\\\"1\\xc9\\xdb\\xe1\\xc2\\xb9>\\\\\\xb8\\xdb\\xa1\\xd6\\x9f,#\\xd0t\\x9fu\\xea\\xd32\\xcb\\x9d\\xd9\\x00Eb{\\x91\\xf1^\\x9aNO\\x9a\\xd8^d\\xbc\\x97\\xa6\\xd3\\x93&\\xb6g)\\x8c\\xbb1W,\\xdd}\\xd1\\xe8\\xe8\\xe7\\x94\\xeb\\xbe\\x11\\xee\\xad\\xd4\\xff\\x8e!\\x19C4\\x86M\\xff\\xc0\\xb1\\xce\\xb5W\\x11]\\x0c\\xae\\x16\\x95T\\xf8\\xd97\\xc6Id'c1\\x1a\\xa3 \\xb0\\xff5\\x04\\xf0\\x0d\\x14_Cp\\xe3\\xc6\\x08\\xe2\\x93\\xe0m\\xf3\\xcd\\x93\\xe0m\\xbf\\x91*\\xeb\\xf8\\xa1&\\xa7\\x1f\\xaa\\xb3\\xad\\xf2\\xfa\\xf1\\xea/d\\x0c'\\xf4\\xdd\\xb7B\\x07\\x15\\xa3\\xc7C\\xe4q\\xa5\\xbe\\xad\\xe6\\x99\\xd8$\\xf8\\xe3\\xa9\\xc62\\x12\\x18\\xe5w\\xae9\\xf0e\\xa2\\xa1\\xb8\\x98\\xfc\\xb7&\\xe5*Udk/\\x99\\x94\\xff\\x8a\\xf3\\xa6n2\\x86\\x1c%T~\\x1b\\xdd(\\xd9\\xdd\\xde\\xfb\\xef\\xc7,%X/\\xb8\\x96\\\"\\xcbgQ$\\xc7\\x14\\x086g\\xb1\\x9c:#Q\\xd7@4/\\x93\t\\xce\\x1d\\xa4\\xd9<N\\x83wX\\xc2=O\\xe3\\xd3\\xd3y\\xa9\\x0bal\\xdb\\x88\\xf8_Rhf!\\\"~.\\x89\\x8b2\\xd6;1\\xd59\\xb9\\x9e9T\\x91\\xe8Ks\\x80\\\\\\xcb:'c\\xf6\\xe3\\x00\\xab\\\"\\xbb\\xf7>\\x8f\\xb3\\x00Z:\\xa7\\x15\\xf1C\\x92K\\xac~\\xa6=c\\x17<\\xd9\\x083\\x14\\xb4\\x07x\\x93\\xfaB\\xd6y#;xW\\x82i/\\x909\\xd9I=\\xda\\x90\\x8b\\x8c\\x1fe\\xb8\\xcc5]4i?\\xdc18\\xb0.\\x1c\\xfd\\xa8C\\xe3\\xa8\\x0dg>\\xb4\t\\xb4$\\xcb\\xcbx\\xe7L.6\\xf5\\xd4\\xa0G\\xc5\\xe0\\x8as;\\x14\\xabt\\x13\\x87\\x15!|\\x93\\x85~i\\x9b\\x8f\\xd5\\xa6\\xa2y\\x9d\\xc4\\xc1\\x13:\\x1f\\x94.I\\xfd\\xe7\\x1f\\x7f4\\xa1\\xe8!\\xce!\\xf0g\\xfb);\\xbe\\xf9s\\xfeG\\x1b\\\"\\x8c\\x8a,\\xf6/8f=\\x16\\xea\\x0f\\xf6\\x86\\xfc\\xa1t\\x0c\\x9f[JV1\\x9dz\\xd8\\xa1IY\\xd3\\x1a\\xde`\\xa8\\x87\\xaa\\xda\\xb1|\\x92\\xf5o\\xfa\\x15\\xafga\\xe6\\x87J\\x19\\xaf\\xe7\\xf8\\x80\\x1fY\\x02S\\xf4\\x90\\x01s\\x1e@\\x97\\x8b\\xe7\\x1b*\\x0d\\x87\\x82<=\\x04\\xdf[\\xb7n=Isw3\\x86b\\x043\\xf0\\xbd\\xbcsS\\xdfP\\x08U\\x01e*to\\x8c)\\x15V\\xf4t\\xe5\\x19\\x88\\xe4\\xfa\\x92\\xe6\\xb5\\xad?_\\x1d\\\"^\\x99\\xfexl\\xaa\\xe8\\xb2\\xae_L\\xd2\\xf2q\\x1a I\\xc2\\xf0p\\xed{\\xcb\\xfa=b\\x93\\xbe\\xe3\\xa2\\x86G\\xdfE\\x03\\xf8\\xbc\\x06o\\x1c\\x13\\xdaWN\\xfbv\\xcf\\xadE\\xda\\x8a\\xed\\x89C\\xf9S\\x92\\x94\\x13\\x8c\\x1c{KI\\xcb\\xf6\\xc4y\\xc4obT\\x98&\\xaf\\x10p\\x9dR\\xe2:\\x81\\xc5B\\x9d3P\\xb1q\\xbfg\\xe1Y\\xdaW\\x8e\\xe1\\xb0\\xeb\\xaem4\\x85\\x83\\xc5\\xc1m\\xed\\xeb\\n\\x1d.\\x9faX\\x1c\\x19\\xbd\\xbe\\xc4\\x85\\xb4R\\xef\\x94\\x0b\\x9c\\xad\\x07\\x07s\\x9c9\\x18\\xf2\\xbe=!oY\\xb4\\xa2\\xf6]S\\x12\\x8fGT\\x9c\\xc6\\xc3\\xe0\\x98\\x0b\\xdcrQ\\x10,&\\xad\\xc9\\xed\\x04\\xbaH\\x95#\\xd3\\xccr\\xfa\\xa1M\\xdc>\\x1a\\xc3J\\x9b\\xde\\xc0\\x8e\\xf9\\xba\\xddg\\xbe\\xde\\xbcz\\xa6\\xe5\\xbb\\x86:\\x85\\x8a\\xc8D\\xba\\x05\\xd4\\xe3\\xb1d\\xf4V\\xfa\\x14\\x0b\\xcd\\xf1\\x1c\\x93|Kr\\x10\\xfbI;&\\x0c\\x9e\\x198*\\xf6\\xd9b\\xc2\\xde\\xddid%\\xdd/\\xe6U*\\xf3\\x1d\\xbb\\xc6\\xb6\\xe3\\x8e}\\x0b\\x075\\x1a\\xa41\\x04i|\\xca\\x9a\\xacf}B\\xef\\xf1cM\\xd7\\x0d\\x07\\x8d\\x84\\xda%\\xba\\xba\\xfeX\\xb9\\x8f\\xd3N=&\\xa5\\x1f\\xc5\\x85!\\xafG\\x89\\x91\\xb4\\x1fj\\x15?\\xda\\xea\\x0d]\\xb2p\\x0c\\xeb\\xab\\x0ce\\xaa\\xda\\xdf$a\\xcdl\\xec4\\xfa\\xa8\\x11\\\\\\xf7\\xa6\\xf15p*\\x1f\\xff+F\\xb5\\x9d\\xf0k\\xa9\\x9b\\xbeV\\xf9\\xdeV\\xc11\\xb8\\x81\\x87 \\xdc\\x10\\xb7\\xab2\\xd3u\\x00\\xc3\\x85\\xe6\\xd3\\xe7\\xc6\\xc11\\x06g\\x06\\x17\\x06\\x16\\x99\\xc1\\xb1\\xf4\\x84\\x86\\xe0\\xa2M\\x1e\\xcf\\xc0\\xc0\\x9cs\\xfeT\\x9b9\\x91^MyE\\x173\\xf6\\xbe\\x9e\\x8fG\\x9a\\xf90\\x86VV\\xfd:\\xb6i*\\xa2\\xc7\\xf2\\xfc2a\\x0d\\x82\\xaf\\x9d\\xc1\\xdc\\xdc\\xa0:\\xbc\\xe5\\x12\\xbe\\xf0r\\xfdg\\x88w\\xaf\\x9b\\xfes\\xa5\\xd4\\x7f\\xe2\\x93\\x9e\\xd62\\x12Od\\n\\xd0\\x95L3\\xba\\xe1\\x0fz\\x9a\\xd1\\x82?\\xe8\\xb5\\x11\\xf3\\x07=\\xcdh\\xc0\\x1f\\xf4\\xb2#/D\\xe3\\xfb\\x0f\\xba\\x8f2*\\xbe\\xac\\x84\\xf6\\x14\\xad\\x8f\\x1d\\x88PtPQ\\xb3j\\xf5\\xf1\\xf5\\xa9[[\\xdb\\x9a*\\x95\\xb2\\xd4D%\\xb3\\x9f5S(\\x176\\x8a\\xb7\\xa8\\xadx\\xb3H\\xa1\\x8c\\x15\\x9a\\xeb\\xb8\\x8b7y<\\xc4\\xb2\\xc5\\xb3*\\xb7\\xd5\\x19r9C\\x98\\xe9\\xc8\\x19,D/]\\xe2m\\xf2\\xd8\\xc5\\xbc\\xfcb\\xa7\\xc6)s\\x14\\xa0\\x92<s\\xe7p%\\x9aB\\xf9\\\\\\xa5|\\xae\\x9az\\x9c\\x91;\\xf2\\xb8\\xe3Q\\x9a\\xf7|\\x9e\\x00\\xacs\\xfc\\\"\\x99\\xefO\\x97J\\xd7\\xd0ls\\xd6t\\x95L\\xe1!8\\xab\\xb2\\xcc\\x8a\\xd9\\xcd\\x9biB%J\\xe1\\xd7\\xe0E\\xe9\\xcd\\xea=\\x07dU\\xf5zIq\\x956\\xb6\\xb8\\x81\\x0b\\xb5\\xc2\\xb4myS\\xda\\xd8\\x02A/\\x7f\\x89\\xe2\\xf8\\x15\tH\\xb4E\\xdaVX\\x98\\xdd\\x94r\\xbaP\\xbc\\x0f_\\\"\\x10qG\\x16\\x8e\\xf5\\xb8N\\x08l\\xbbT\\xa0[\\xaer\\xc0r\\xc9C\\xebd>\\xf6\\xed%\\x94\\x9d\\x9aWd\\xeb\\x14;\\x95\\xceyCw\\xdc\\x9e|\\xba}\\xd5S#\\x96,\\xf3\\n\\x9f\\xce\\xe5\\xbf\\xc9\\x9b<fT\\xa8.vPM\\x9e*\\xce\\x88\\xe7\\x05M\\xf1\\xb4d.HMoCJ\\x9d\\x9dM\\xc2N\\xd1\\x90Nf\\xc7\\x90@F,\\xdfL[\\xd9EF\\\\\\xb9Qg\\xf8\\xdbktl\\x93\\xc7\\x944\\xee)\\xfaZ)\\xd4+\\xe8\\xda\\xd9\\x8a\\xd2\\xa1x\\x95\\x16\\xa53\\x82o\\x0fa_\\x07;=\\xb8\\xe7\\xed{\\xfb\\xdeT\\xc0V\\x9d\t\\x0c<\\xb0\\x1a\\x8d\\x8b\\xf2\\\"&\\xb2\\xd3\\xaay-\\xe2\\xd4/)\\x9aD\\xcb\\x95.\\x8f\\x87\\x1c/\\xc7\\xea\\xee\\xf9\\xda\\xbe\\xb1\\xf0\\x8e\\x198\\xa7\\xf3\\xd8O\\xdei\\x14b9\\xfat&i\\x9a\\x91\\x84\\xe4\\x90\\xa49Y\\x90<WZ\\x0f\\xe8\\xb5\\xca\\xc9b\\x06%\\x95\\x05n\\x86d\\xbeY>\\xdc\\xe4\\xb1\\xcaC\\xb0\\xbd$\\nnQ=\\xd0\\xb5v\t\\xf2\\x80\\xf7c@\\x0f\\xd4\\xe3\\xf2)\\x8b\\xe1\\xbc@\\x12R\\xd3\\x1b\\x98\\xfb\\xe1R!\\n\\xbf\\x97\\xf1\\xbf\\x06[\\x7f`\\xcd\\xf3n\\xdb\\x0c\\xe7\\xda\\x9a\\xad\\xb94O\\x93\\\\\\x11O#eh8\\x9fa8\\xcd\\xe3\\xd4\\x0fI8\\x83\\xbd\\xa9|\\xc1x\\x90\\xfa\\xde\\xb4?\\xff\\xe3\\x8e\\\\\\xf6\\x81O\\xe0\\xc7Q\\xf8<\\xdd$\\xb24.C\\x0f\\x81R\\x9b\\x8d\\x9e\\xe2\\x04e\\xcf\\x9e\\xae\\xfd\\xa5\\\":\\xa8\\xf4\\xd2\\x84\\xce\\x9c\\x0d\\x8f\\x08CB\\xf3\\xaa\\xe5\\xd0d\\xeeQnn\\xda+\\\\\\xaf+\\xef\\x96\\xc0\\x82\\xddzU\\xe4A\\xcb\\xb8Io\\x98\\xb6\\xb3\\x9a\\x15\\xf8\\xa0,Y)\\x0d\\xf5\\x06\\xee\\xf7Np(U\\xfa\\xaaj0&\\xdbnb\\xc6(z%\\x03\\xb1\\n\\x10\\x13-\\x97\\x10\\xec\\xb0\\x0b\\xd4k\t|\\xd3\\x0f\\xc52\\x18\\xdaM3\\xb6\\x81E/\\x19\\xd6\\x11)\\xb2\\x81\\\\wb\\x8b\\x82\\x97\\xe6F\\x9b\\xae\\x12\\xec\\xc8d3\\xfaP\\xcd\\x89D\\xeb\\xa5\\x96\\x17a\\xa7*\\xab\\xa6 \\x1f\\xef\\x08Z\\xc9\\xb7\\x182\\\\\\xa6I\\xc6\\x17\\xb4v\\x82\\xe1\\xd4o\\x00\\xfb\\xb1JJ\\xe0Z/\\xd3\\xf2\\xd8\\x1c\\xf8\\xf8\\xf8\\xbai\\xb3>\\xa9\\x0bw \\xd3L\\xc5\\x94\\x0fi9\\xef\\xa9\\xaav}\\\"\\xb7\\xbd\\x13gIJg\\x0c\\x0eKL\\xe7dT\\x1e\\x19\\x83\\x13\\x92\\x98\\x94t\\x1dxB\\xd1\\x82\\xfe\\xe4\\x167'\\xf3\\xcb`\\xd5\\xb5\\xde\\xa3[\\\\\\x15O\\xef\\x94\\xb9\\x1f\\x10\\xe7\\xadD\\xd9v\\x95^d\\x12'\\xf1\\xbe\\xdb\\x96m\\xd1\\xf5+\\xf1\\\"\\xdb\\xd1\\xf1\\x18\\xcc$\\x10\\x06\\x90A\\xd8\\xd9\\xf7i\\x80\\xdf\\xd0P\\x07(\\xe65\\x1e\\xfb\\x17\\xe9\\xa6\\xb4l\\\"m\\xbcb\\xf4\\\\\\x87\\xcam\\xca\\xd6\\xc9\\x8a\\xb9J-\\x0c\\x0eU\\x1b\\x9eq`\\xb9$\\xe1\\x8b\\x8c0\\xfbBar\\x01\\xe2\\xb5\\xa7\\xab\\x17\\x1e\\xa5I\\xe9G\t]Zs\\x85\\x9d\\xb0\\xf3\\xf2k\\x7fi\\xf2gY\\xc1!D\\x98q\\xeb\\xfc1\\xf3\\x1a#\\xe1k\\xdf4\\x03X\\xca\\xc7\\x0b6yN\\x92\\xf2\tK\\x0da\\xaep\\xb2\\xa5$i\\x8f9\\x7f\\xe0ow\\x83\\x85\\xe6\\xd2\\xac\\xe0\\xdf\\xd8\\x8c\\x01\\xe3\\x13\\xd1\\xcfb/*~\\xf2\\x7frW\\xa8_Y1\\x05\\x86xi\\xe3\\x15q\\x14\\x10\\xbaIV\\xba*\\xb9-\\x9f\\x8cM/\\xaf\\x98o\\xe2\\x93\\xe8n\\xd8\\x08\\xe4p\\x9d\\xb4ZG]A\\x17\\xa8\\x87\\xac\\xea\\x97UB2\\xb6\\xb3\\xab61\\xb1\\x9e\\xa1\\xbe\\x16\\xa0\\x16d\\xf9b\\xfe\\xabU\\\"\\xb3\\xd2_j\\xb3\\xc5\\x88\\xab\\xb3\\xfb\\xb4Yh\\xda\\xefTykR\\xf3\\x1b\\xf5\\xfe\\xd3fqh\\x81[\\xd8$\\x81\\xf1\\x1c\\xdd\\xd57-=4\\x84\\x05\\xbe\\xfc\\x99\\x8fi\\xb4\\x8d\\xafAE\\xb6\\xb8\\xb1\\xb8\\\\\\xa5F'>q\\xa5\\x18\\xa8)\\xd0\\xe6YT\\xd0s\\x91\\xb6L\\x0f\\xd3d\\x0c\\xb9.\\xe7\\x8c\\xb88\\xfa\\xf1XM\\xb7\\xe4u\\xb4\\xb0\\xb4U\\x063X\\x8c*-a>\\xaa\\xd5\\x82;\\x17V\\x17\\x17K)Ze\\x86\\xb4@\\x13z\\xd1\\xd3\\xe3%\\x96\\x15\\xb2\\xc0\\x12z\\xa5\\x99\\x15zCU\\xae\\xc8\\\"\\x07(`07])+\\xf4\\x86j\\xfb\\x18A5\\x92\\x11{\\xdc\\xc8\\x87\\xa8\\x84lBQd\\xc6\\xb4\\xb6\\xdf\\xc0TW\\xc8{u\\xab\\xe1\\x95\\xf1S\\n5\\xf9\\x02\\xae\\xd0\\x86(\\xc1\\xd9\\xdf\\xab\\x0b']\\xca\\xb2-+\\xcf\\xfc9Y\\xb6\\xa55|SU\\x0d\\xdfHU\\xc3\\xd7W\\xd5\\xf0\\xdd\\xa8j\\xf8\\x16\\xaa\\x1a\\xbeq\\xaf\\x86/\\x0b\\xe4Yp\\xa9\\xa0\\x0d\\x1d\\x88`\\xd9\\xcf\\xa2\\xc4\\xaf\\x81k\\xff\\x94\\x1c\\xfb5\\x0d\\x11\\x1c\\xc2\\x9d3\\xce\\x9cq\\x03j\\xa8D@\\xa9A\\xd8Q\\x16\\xac\\xa28\\xcc\\x89\\x86\\x92\\xa6\\xc38\\xf5h\\x08\\x97\\xee[s\\xe8\\x9b\\x01\\xf2\\x05\\x16N\\xd6\\xb1\\xe4\\x0bv\\x18\\xa7\\xc1\\xd1y\\xe6'\\x856\\x8a\\\"\\xe3\\x077\\xc9\\x9eE\\xc9\\xbb(\\xd1\\xcch(\\x8a\\x00;\\x0b?.\\x08K\\xc1\\x9f\\xa9\\xe1)\\x97\\xbe\\xc1\\xb2\\x9f\\xb1\\x9f\\xa1c\\xad\\x12t\\xcb@m\\xaal\\xae\\x19\\xe8c\\xdec\\x1d\\xe8\\x92\\x81\\x9a\\xc0\\xaa\\xc0\\x82\\xa7\t\\x15\\xe6\\xfd\\xa5p\\xe7\\x1c\\xb73\\x08\\xbf\\x1ds\\x8f@\\xe5\\x97\\xe6\\x9a/\\x91\\xf3\\x92\\xe4\\x89\\x1f?N\\x83\\xfe\\x975\\xdf<\\x1d\\xf0\\xcdM\\x1ek\\xbf\\x85\\xf91\\x1a\\xf2\\xc0\\xa4\\xf4\\x97\\x8e\\xc8\\x10\\xc9\\x8ea1\\xaf\\x94\\xb3\\x19\\xb9\\xc9H\\x13\\xb7p\\x84yp\\xa2\\xe2x\\x95\\x9e%\\xee\\xd9\\x18\\x9c\\xc5&\\x8e\\x995z\\x81\tV\\xe2\\xa8\\xe0\\xd6\\xe9\\x85\\xde\\x92m\\x90\\x84\\xd4l\\\\\\xc3\\xbf\\xf2\\x08\\x1eR\\xb9\\x83\\x05\\x0c\\x97\\xferR\\x10F\\xa7\\xa3b\\x92f$\\xc1D\\x1f\\x92\\xe7\\nE\\xa7F<C\\xefqu\\x9f\\xaa(d#a\\x14\\x17\\x9f\\x85\\x08\\x83\\x88\\xe8L\\xee\\x1d\\xe9\\xf4\\xd26\\xb3q\\xd1\\x99\\x8d\\xee\\xe8!I'\\x14\\x055\\xa6\\xe3(\\x9c\\xc1\\x19\\xcf\\xa42Q\\x04Ph\\xa6Ik\\x0d&\t\\xcf5\\xaf\\x89\\xae\\xe2\\x98%\\xcd\\x0f\\\".#\\xa3\\\\\\x92s\\xa5\\x9c\\xf5~\\xc4\\x1c`\\x95\\x0b]\\xac\\xfd8\\xae\\xb8Q\\x15\\x98\\xb6*\\xa7\\xc8\\xd7\\xa4\\xa8\\xca\\x8d\\xae\\xb8V\\xed\\xdb\\xea\\x0b\\xe6\\xf6\\x03\\x9a\\x8f\\xe1\\x94\\xa2\\xc9\\x0c\\x9c\\xca+\\xf5T\\xf3\\xfaR7P\\xe6h\\xc0HI\\xcb\\xb5\\xe5TC\\x90\\xfa[\\xc5(\\xe1\\n\\xe6\\xcf+\\xca4\\xa3|\\xb4\\xbfdY\\xc6v\\xda1]\\xe7\\x0b\\x15\\x92\\x9fV\\x82F\\xed\\x17\\xae\\x9c\\xe5\\x81)\\x0f\\x08=\\xa5\\xc3IE\\x965[\\xb2\\x8c\\xcaX\\x90:q\\xae\\xd6\\x02\\x12\\xeeq<\\xf3C\\xb0\\xf9\\xda\\x87&TC)\\x86Sl\\xf5\\xb6\\xa2V\\x0e\\xf9<O\\xcf4\\x83;\\x8bBJ\\x1a\\x9c\\x83}\\x9dw\\x0c\\x89\\x96\\xab\\x92A\\x0d\\xee\\xed\\xa6\\xd0\\x87\\x02\\xb1\\x1d\\x81k\\xf5\\x97\\x98\\xe2\\xd9\\x04\\xfb<A\\x0e\\x87.U\\xf3\\xae\\xa6\\x93\\xe7q\\x94\\xbc\\xfba\\xd0\\xc7T\\xc4F\\xa7u\\xd4\\xd6P\\x8e\\x8a\\x17\\x19I(\\xc1>R\\xcdSn4\\x1fHRi\\xe8\\x04\\xefL<E\\xc3|\\xcf\\xf9Dh\\x0ck\\xb5\\xd3\\\"O\\xd7?\\x1e\\xbb\\xbfw\\xa3\\xf9P\\xe3\\xe1\\xd4\\x93\\xf2~|\\xed\\x12\\x9a\\xf6\\x85\\xfaL%\\xd4g*\\xa1>S\t\\xf5\\x99J\\xa8\\xcf\\x86\\xe5h\\xca\\xdcn\\x8c2\\x95\\xdc\\xddL\\xe7r\\xbe\\xc0\\xaf\\xddk.+\\xd7\\x06\\xc8\\x84\\xfd\\xec\\xe3\\x0b\\xfbz3\\xdd\\x17a_\\\\\\x1fN\\xd8\\x17\\x8aT5\\\\n\\x99\\xaa \\xe5p\\x18H\\xaaa,\\x99\\xf6 ].c\\x82,\\xa6\\x1a\\x94I\\xf0i\\xf2:\\xa7\\x02?\\x1e\\x97j\\xe0\\x0d\\x07~\\xe4'\\x01\\x89\\x0d\\xc0\\x05\\x07>:'\\xc1F\\x97o\\x7fa4\\xdce\\x03\\x94\\x07\\xa1\\xb5JbU-\\x8eQ\\xcf\\xb1\\x1dbN]#\\xb0U&\\xeee\\x05j\\xf1\\xdd\\x0b6\\xa1~q\\xcb\\xf8\\xddy\\x05j\\xf1\\xdd\\xd3\\xb6\\xdbY\\xc5XiX\\x0f\\x0c\\xb77\\xe5N\\xa0\\xe2\\xf3\\x99\\x17\\x92,'\\x81_\\xea\\xaa\\x07\\x9c#$\\x17\\x87\\xd4`\\xc7\\x08\\xa6\\xcfm\\xf1\\x08aLy-\\xde!T\\xaa\\xd1\\xed|\\x87\\x10Z\\x05\\xdc\\x0b\\xfe\\x11>]\\xba\\x92\\x93/\\x11\\xd4\\x8f\\xe3\\xf4\\xecu~\\xf1\\xb4|\\xb1\\xd1`\\xf0k6o\\x03\\xb3\\x85<g\\x1d\\xe6_?b\\xe2\\xa7\\x1a\\xfc)\\x82\\x13\\xb67\\x9f&/\\xf3t\\x99\\x93B\\x83%\\xbf\\xc2!\\xbc\\xf3\\x1aJ\\x1d5\\xe8O\\x08\\xda\\xd4\\xdd\\xa8a_!,\\xa6\\xfb\\x96e\\xf4\\x16\\xd7c\\xc48\\xa1$J3\\xad\\x16\\xe8\\x19\\x1c\\xc2cf\\xe4\\xabB\\xc0u\\xfa\\xb175|\\x96\\xa7\\xe1&\\xd0\\x83\\xff\\xc6\\xfd\\x911\\xf5\\xc8\\xb3\\xa8(G\\xee\\xe31\\x9c8\\x8d\\xaa\\xba\\xba\\xde=\\x81C\\xd8\\xd6hs\\x8cCw\\x8f\\xc7\\xf0H\\xf3\\xd2\\xbf;\\x8a-g\\x0c\\xdf\\x8d\\xe1\\x85Fy\\xf5}\\xb3\\x97G\\xe7%A=i1r\\x1fk\\x9a\\xf9\\x19\\x99 \\xbbY\\xfb\\x81\\xc16k\t\\xab\\x81\\x7fa\\xc0\\x1c\\xdft\\x90?2\\xc8\\x80\\xe5\\xaeS\\xc3\\xfd7\\x83\\xb3Q\\xbe\\xfe\\x83\\x81\\xda(_\\xff\\x17\\x03\\xe5\\xf8\\xa8\\x83\\xfc+\\x83\\xac\\xbc:X\\x96\\x05\\xed+\\xff\\xa7\\xf3\\xca\\x91>\\xc9\\xcb?\\xbb-l\\xd6k?\\xd7\\xe6B\\xf9\\xdf\\xec\\x15\\x93B\\x98P\\xfe%\\xe49}j\\xdcP\\xbb\\xf4>\\xc3\\xec\\xb1,\\x85,\\x9a8\\xbf\\x85}\\x93\\xbb\\x12\\xba\\xd3\\xef=\\xc3}\\xc5C\\xf3r\\xaf\\x95\\xdd\\x87\\xc5\\xe8p\\x10\\x87so:\\x17\\x8e\\x1c\\x1d\\\\\\x8a~&\\x9e1\\x94\\xc4\\xd6B\\n\\xc2\\x83\\x80\\xf6\\xef\\x84\\xee;I\\x9aP\\x00\\xdb<'V\\xc2|Su[\\xe5|\\xacOF*\\xdf\\x9e\\xcb@\\x1c\\xb8\\x01\\x8f\\xe0\\x0682\\x1do\\x1bJ\\xbd\\xdaQ8\\xd3h\\xc0\\xff]+@\\x95\\x1aP\\xd5\\x14\\xfcS\\xab%\\x16x\\x8b\\xd2\\xed\\x0cN\\xd5=lp\\xaaZ\\x1f\\x93\\xb6o\\x89\\xe6\\xf4n\\x95pZ\\xeb\\xe1\\x1a\\xfe3\\x9a\\xc3\\xbev\\x86P9\\xe4\\xaa\\xa7\\xe9\\xbf\\xed\\x14\\x0f\\xe7C\\xa7\\x7f\\x08\\x06V\\xaaqu]\\xfc\\xf7cxL7\\xe4c\\xb6\\xc5\\xff\\xf8\\x83\\xf9\\x9f\\x1c\\x1e\\x1e\\xc2\\xe3\\xda\\x19E\\x9dk\\xc2\\xe0\\x07]\\xa9\\xa2n\\x1dd\\xbaz\\xaaB\\xafe\\x00C\\xb7\\xea\\xc4\\xbd=\\x9dj\\x08\\x9dl\\x02\\xe2\\xd4\\x0f\\xa3d9\\xf1\\x93h\\xedk\\xec#\\xa31\\x1ci\\x13\\x0b\\x19\\xac$\\xb2\\xb6Q\\xbdy\\x9a\\xa4\\xf9\\xdaW\\xe4\\x00\\xc2\\x04O\\xbf\\xf8y\\x12%\\xcb\\x19<\\xaeI\\xc4h\\x0c\\xbfZ\\xe49\\x1a\\xd6\\x9f\\x06;\\xa7/Uy\\xd5Xh\\xcc\\x0c\\xa2i\\xf0\\x1f6\\xe6\\x88_\\x15\\x8b:\\x1a\\x8d\\xe1':\\x8f?a\\xb8\\xe7%\\xd2\\xb6\\xc8\\x86%x\\xdeI\\x98\\x06\\xc5\\xee3\\xfa\\xc10\\xebI\\x94\\x84\\xb0Ns\\x02\\xa1\\xc8\\xe8s\\xc5\\x0b\\xdb\\x9a\\x81\\xe1#7\\x06\\xba\\x1a\\xdb<5g\\x9d\\xb9,n\\xfd\\xd4\\x14\\x83Tx\\xa6n\\xe3\\x7f\\xeb\\xda\\xb0\\x0f\\x96\\xb5\\x98\\x898\\xd2~Ai\\xd1\\xfaI\\x1b\\x1d\\xcb\\x9e6r\\xec4O\\x0d\\xf5\\x86\\xfaA7\\xecZ\\x8a\\x98\\xc1oV\\xa70/\\x08b'~T\\xbc\\xc8\\x0c\\x1ek\\xa0x\\x05\\xef\\x7f\\xa0\\xbb\\xa4N\\x0d\\xd7T\\x97i]u[\\xba2i\\xbd+qu$\\xf7\\x19<\\xd7\\xb0-ME\\xc2\\x0c^\\xaa!\\x17\\x89\\xb4\\xc8\\x8e\\xb8\\xac\\x19\\xaa\\x86\\x96L\\x9b\\xbd\\xa8\\xa5\\\"\\xd3\\xe6/\\xca\\xfcr\\xf5\\x9c;v2.\\xdc\\xd0M\\xee\\x82\\x1c*6\\\\\\x85\\x8d\\xcf58\\xf8W\\x1d\\x0eZO\\x06\\xb3\\xc9\\x1f\\xab\\x01\\x84\\xc3\\xaa\\x86)O;r\\xe3Lh \\n\\xb3\\x1cI\\xdb\\xaf^\\xdb\\xa2B\\xacpGB;r<\\x86\\xea#:=\\xc4\\x92pw0\\x12\\xb2\\x8f\\xcd`\\xee\\x15\\xad;\\x9au\\xee\\xbf|\\xe1\\xf5n\\x1a\\xde\\xa7 ?\\xfbyD\\x11\\xfeg\\xa6}\\xe7\\x1f\\xe9=1\\x0c\\xa3\t\\xcf\\x861\\xec\\x0bG\\x8b\\x05\t\\xcahK\\xc4\\xa7\\xb03\\xe2;\\xd5S\\xbco\\xc6\\xbf\\xaf\\xbe\\x82\\x97\\xf4\\x9fW\\xf8\\x8f\\x89.\\xeet\\xcc\\n\\x05\\x85\\x8aF\\xab\\x1a\\xfb_\\xda\\xf3\\x8d}t\\x06\\xaf>,\\xee\\xdb\\x12\\x13\\x1e\\xc9\\xc24d3x\\xa2\\x98\\xf9z\\xea\\xafb\\x8a\\x9fW\\xaa\\x8e\\x97T\\\"\\x9f\\x97\\xc9d\\x99\\xa7\\x9b\\x0c%o\\xae\\xbf2rv\\xcf\\xc5\\xfb\\xaa\\x1e\\xfdb%9kO+\\xdbY\\x1cF\\x92/\\xbb\\xb6\\x95\\xbdg\\x06\\x85\\xd5N\\xc9MS\\xf5\\xa3\\x16e-'\\xc1~h\\xfaN\\x8f\\xc6\\xf0\\xf4\\xaa\\xf6\\xb2\\x10D\\x83*\\x98l\\xe8n\\xde\\xa59\\xa5\\xebD\\xb5,\\xcf4\\x03\\xfcY\\xd7Z\\xa56\\x9e\\xc13\\xf5LWI}5Q%\\x82\\x19\\x12e\\x1f\\xb4\\xb1\\x1f\\xd6\\xe7v\\x8b\\x8d\\xb8\\x8a\\x0d\\xd3\\xb0\\xc5isDZc)\\xb7>\\xcc\\xe0\\x8d\\x19\\x88\\x1fR[\\x11\\xf0\\xf7\\x92\\xdf\\x7f\\x92\\xe6.c\\xa84\\x87\\x7f\\x9f\\x91\\xb6\\xd2\\xf9\\xdbo#5\\x88\\xdc\\xb05\\x83\\xd7\\xeaW\\x90\\x8b5Q\\x13\\x82\\x1e\\x14\\xdf\\x9b\\x8e\\xdb\\xff\\xa3\\xc3`R\\xe9\\xc2g\\xf0\\xbd5\\xc6\\x19H\\xc6.nC/79\\x91\\xb9\\x0cU\\x99\\xef\\xe4.C\\x8d\\x93\\x03'\\xa5\\xf50\\xaf6\\x93\\xec\\x19\\xdf\\x94\\xfdG5\\xaaPIq\\xe11\\x8bW\\xd7\\xa7\\x86\\xd9&t^H_B\\x8b\\xda3\\xa6\\xf4BZ\\xc8\\xbd\\x90\\x16\\xb5\\x17\\xd2\\xbdf*\\xa3\\x85\\xc6\\xdd\\xe8Kl\\xd1\\x7f\\xa0\\xbb\\x91\\x95\\xdf\\xcf\\x90x\\xff\\xdc\\xde\\xa1%\\x1d\\xe2\\xd0\\xc2\\xdc\\x94\\xdav\\\"5\\xb4o\\xe9K\\xb5\\xc1\\x1az&\\xe7\\x94\\x82\\x85\\xab3\\xb2\\xa5\\x06\\x0b\\x10,*\\xaa\\xb2\\xa7\\x1a\\xbea\\x81\\xb0&\\xd7\\x93\\x0c\\xa1t\\xae'!\\xeb\\xda*=;6uo\\xc5?f\\xe1\\x82\\xb2e\\xa0y\\xb4\\x8c\\x12?~a\\xf3\\nF\\\"\tG\\x14\\xab7\\x96p\\x08\\x99yV/p\\x89\\xb8\\xba#\\xd8\\xe4Q\\xa9\\xb5j\\xcfY\\x02\\x85\\xaa\\x0el\\xd5\\x95\\xefK\\xad1\\xff\\xb4\\x93x\\x81O\\xe7sc\\xe0\\xf7\\x99\\xfc\\xc5\\x97\\x86@s^\\xe3\\xe4\\xc7\\xcd:{\\x9d\\\"0f\\x87\\xf8\\xe0\\xd6\\xe5Z+\\xc0\\xfa\t\\x9d\\xbf\\xd1@\\xac\\xd1\\x02\\xd6U\\x05\\xa5 \\x1a\\x01\\xe4T\\xd7C\\xc1\\x0b\\xaa87\\xf5g\\xcf\\xec\\xd5t\\xba\\xc0\\xc7\\x8e\\x01ZcX\\xaey\\x1cy\\xdc8\\xedlxUr_wul\\xec\\x15Kz\\xb0\\x155\\xb3\\x8bE\\xb1\\xdd-\\xbd\\xbb\\x1aYd\\xcf\\xdf\\xadgu\\x92\\x8bHQ\\x80\\xe0\\xfd\\x18D'\\xea\\x8c\\xfb_}\\x05\\x17^\\x90n\\x92\\xd2\\xd5\\xf5m\\xae7\\x8b\\xd7$w\\x06\\x9a\\x8cY\\xc3c<\\xc4\\x89\\x9a2\\x86\\x12\\xf3\\xfdR\\xa9\\x89J$Q\\x8e}+\\xdc\\x0bS&\\x11$\\xd0u\\xc2\\xe0\\xc2U8\\xa0@\\x8f\\xb5\\xa8\\xee\\x9a\\x15W\\xda\\n9\\x99\\x16a\\xafP\\xe80\\xc4)t\\xf7\\x99I\\x84\\x08v\\x16!\\xaeg \\xc3'\\xcdT6\\xa0\\xd8\\xf4gTf\\xf4\\x8b\\x98 \\xae\\xdd\\xc5\\x04mIg\\x13\\xf7q\\xa9c\\x83g\\xd6\\x91\\xbe\\xfb~\\x8c\\x12\\xca\\x9b,#\\xf9#\\xbf \\xb2\\xe4*;\\x13\\xaa\\xc5pBU\\x7fw\\xfc\\x19\\x948\\xfeL\\xb5\\x15\\\"r\\xea\\x8b\\xd2\\xe2?\\x96\\x1a\\xa9\\x19\\xb8r\\x80&\\\"\\x91h\\x0c\\x8c\\xa2>\\xdd8\\x89U\\x1cJ\\x8a\\x90\\xc68\\x94\\x08\\xc1\\xf4q(>\\xc2h\\xe3G\\xb0.\\xbe\\x9d\\xf0^\\xf0\\x8e=\\xae\\xd3\\x98\\x18#<\\xe8\t[6\\xf3\\x88|\\xf8\\x93 o\\xe6d\\x10\\xa7\\x01\\x9d\\xa7\\xd3\\xd3\\xb6\\xb3\\xb3\\x14h\\xb0\\xf9K[\\xaf\\xaaJ\\xc0\\xa0S@\\x89\\x04\\x0c\\x1aST\\xd6\\xe0[Y\\xf3m\\xffi\\x1f+\\x0fP\t{\\xa3\\xc1A\\x96\\xa5!\\x92\\x8f\\xf0*\\x8f\\xc0\\xeb\\xc6.\\xd3S\\xb5\\x19\\xf0\\x00\\x87\\xbc\\\\J\\xffp\\x8b\\xe8\\x99p_v\\xbaE\\xdd\\x12\\xfa\\x11;]d\\xa7G\\xf4\\xf1O\\x0f\\x1f3\\xd8tF\\xa9>N\\xb6UE\\xf9\\xda\\xdc\\xd4\\xc7\\x9c\\xa4]\\xfaF\\xact;|\\xe4Uz\\xd6\\xdd\\xd7|\\xb0\\xe9PM\\x85\\x94\\xa1\\x93%\\x90y?\\xbe\\xd2\\x8fKks\\xea\\xdah\\x966\\xadcW\\x1c\\xcak\\\\\\xaa_X\\xbeTe\\x8c\\xd7uH\\xd4Le}R\\x83\\xb5j\\x9c\\xaa\\xc1r\\x0b\\x18y]Fu\\xd9\\xcf\\xde`\\x9c'\\x11\\x89\\xd1\\xa9\\xfcC6\\x82&jV4T\\xddL\\xabhh\\xe9\\x91\\xa4\\xcc/\\x8e\\xc9o\\x98\\xfd\\xd6\\x94\\x19t\\xdb\\xa8\\x11\\xd5\\xac\\xf33\\x86\\x03\\x051\\xa6gwy\\xb2\\xafp6\\xc4\\x9d|2\\x95\\x04\\x04\\x19\\xb6U\\xa2:\\x8a\\x90\\xa1\\x8a\\xaa\\xd4\\x9b\\nW\\xd1st9U((\\xcf\\x7f\\xf6c\\x99\\x9e\\xa7\\x93\\xc0\\xf2}\\xbb\\x00\\xe2{\\xf9\\x99\\xc0>s\\xbd\\xce\\x84W\\xe9\\x99\\xe1X\\xb8=\\xfdS\\x1c\\x0bl\\xa06'\\x03E\\x08\\xf9\\x99@<\\x8a\\x0f\\xfdg\\xc8\\x94\\xc2C\\xcat\\xa6?\\x1eW?\\\\T2rE\\xe3\\xb0\\x93\\xc2\\x9a\\x12\\xf1\\xadk$&\\x0c\\xae\\xb3W\\xa3\\xcf\\x04i\\xfb\\x88\\xf9'J`B\\x01\\x1e\\xdc\\xdd\\xffs\\xe4,A\\xe1\\x13\\x932Gc\\xd8\\xf4I\\xb9BP\\xef\\x03.\\xd2\\x1c\\\\\\xfa5:\\xe1\\x95\\x04\\xceK\\xc8\\x8dq\\xc2Y\\xea\\xdfb4\\xc6\\x89\\xde\\xff\\x1a\\x02\\xf8\\x06\\x8a\\xaf!\\xb8qc\\x04\\xf1I\\xf0\\xb6\\xf9\\xe6I\\xa0>X\\xe8\\xd6\\x8e\\xf8I\\xd6W\\x16\\xa0,mT\\x18\\x04~\\x1cs\\xad\\x01\\x19\\xc3\t}\\xf7\\xad(\\xe2\\x10\\xe3)\\x1cyh\\xae\\xf0\\xe3\\xe8\\xdf\\xb5\\xf4`,\\xe3@\\xaf\\xc8#t\\xbc}\\xef\\xe7\\xf7\\xa8UH\\xcf\\xb0&\\xcfk\\xd2\\xe6}U_c\\x9eD5\\x0d\\xe0\\x1aK\\xdcw\\xf4{\\xec\\xcfE\\x14\\x13\\xcai`\\xaaE\\xe1\\xbd\\xe4\\x95\\xe7\\xa5$W\\xdf{\\xf6\\x1a\\xd9\\x92\\xa4\\xfc\\xef\\xe3 O\\xe38J\\x96\\xdf\\x93\\x8b4\t9\\x15\\xb2\\x1agM\\x82Y$\\x8eI\\x17\\x91\\xf8e\\xb4%G\\xb4Y/$q\\xe9\\xff\\xb7^\\x11Qz\\x05v\\xee\\x07\\x8c\\x86\\xd4\\xab\\\"J/],\\nR\\x9a`\\xa3\\xc6w_\\xa7\\x99B\\xce\\x87o!E\\xab!+\\xa1\\x88\\xd5\\x99\\x13\\xf8\\x86\\xd5*L\\xe1\\x06D\\xf0\\xed!s\\xc7MX|7nn>\\xa7\\x8f\\xd9Z\\xc9\\xaa\\xab\\x8e\\x99&\\xa3\\xa7\\xe8\\xa2\\xbb\\xefch\\xab\\xae\\xb2\\xf6\\x19\\x93\\xf3W\\xd1r\\x15\\xd39\\xe7u+\\x89$\\x18\\xaa#\\xa1\\xcb\\xf8\\xbf~\\xf7\\xded\\xa1_\\x92\\xeb\\xd5\\xbfO\\xa0\\xec\\xdb\\xea\\x032\\xd8\\xce\\xaa\\x04\\x0d\\xfd\\x86\\\"\\x15\\xf1\\xa1b\\x98V\\xc7\\x85\\x05\\xc6\\x90\\x988W\\xe4S]-\\xc4$HCUY\\xc61\\xea\\xc5\\xae\\xa4=1\\xd4\t\\xaf8/\\xab\\xe6&\\xae\\xda\\xab\\x83\\xaeK\\x93B\\xab\\xba\\xe9<\\xe6@\\x8e\\xd92\\xedd\\xb9>9 +\\xcbI\\x9b\\x96\\x1c9\\xba^\\xff\\xb2\\\"$\\xae\\x8a`\\xe9\\x08\\xba\\xfa+\\x8d9\\xc3\\xb2\\x07\\xb0\\x8e\\xe8\\x17\\xd4uO\\xdfS\\x0e\\xc0\\xb8\\x89\\xfaj8\\x93\\nN\\xee\\xf4\\xda\\xdcI\\xc4#\\xe7Y\\x9a\\x97E\\xebx\\xea\\xb3\\xb7\\xd0\\xe0<\\x13r\\x06\\xdf\\xc7\\xe9\\xdc=!oekP^d8r\\x8a\\xea\\x94\\x1f\\x88X\\x91\\xec\\x9biP\\x92rR\\x949\\xf1\\xd7\\x1di\\xbd\\xc3\\xfeD\\x8b\\xaa\\xde\\xee\\xde\\xe1!\\x9cEI\\x98\\x9ey\\x89\\xbf\\x8d\\x96~\\x99\\xe6\\xde\\xba8\\xf6\\xb7\\x84\\xf6a\\xa4{\\xe8\\xe6}\\xce\\x8a\\xc4\\x05Qpm\\xf4\\xd0\\xe3_{\\xf3\\xea\\x19\\xc78\\xc6\\xc1\\xbfy\\xf5\\xcc\\xcd52}\\xc8\\x93\\x81t\\xd1\\xd4\\x97\\xe9\\xbd#\\x0f\\xeb\\xe5\\n\\xd768\\x04'I\\x13\\x8a\\xcf\\x91\\xb7\\xca\t\\xe5\\x88S\\xfa\\xbb \\xe5we\\x99G\\xf3MI\\xdcj\\xf39L\\xd6i\\x94#\\xae\\x19 zfv\\xdfc\\x8c\\x843\\xaebzG\\xe3\\xba\\xbb\\xf34\\xbc\\xa0<\\x1bI\\xc2G\\xab(\\x0e\\xdd\\x08\\xd9\\xb4\\x80n]\\xb7\\x07\\x98\\x93u\\xba%5`c\\xb2r\\xb2M\\xdf5&+U\\x1d\\xbd\\xef\\xa5(y\\x1d\\x84)\\xb9\\xf2W*fE*1\\xcbW\\x89Y\\x1b\\x95\\x98U\\xa8\\xc4\\xac\\x98?\\xe8IL\\x01O\\xf9\\xd8\\x97\\xa3jI+\\xabJB\\x08\\xd3g\\x05\\xfc'\\x10\\xac\\xf21\\xf8r\\xc1*\\xba\\x8e\\x82U\\xce\\x05\\xab\\x8d\\xad`\\x95\\x0e\\x15\\xacrO\\x04\\x8f\\x8b0\\x9c_X\\x88\\xa0\\x95\\xd0\\xc1\\xbb\\x9a\\x8b\\n\\x91u\\xb8\\x90\\x17\\xb4>\\x8a\\nU\\xf7D\\x00\\xa2\t\\xb2z\\x8d\\xb9]\\xbc\\xa5\\xfcs\\xaf\\x95\\xf7\\xac\\x8b\\\"\\x9e\\xea\\x11c\\x1f^_d\\x84\\xf5\\xda\\xaa\\x9b\\xb5lD\\xd9\\x8f<\\x8d\\x8b\\xef\\x82\\x80d\\xe5\\x0f\\xa8\\xfe5\\xf1s\\x06\\xa6/\\xc5\\xdcN\\x06\\xf61B\\xb7=\\xab\\x14\\x88>\\x82\\xea\\x8d\\xb4\\x1b\\x84\\xd1\\xf9\\xc9\\x94\\x15A\\x97L\\x9d\\xa6H+'z\\xba\\x9c\\x96\\xcc{O\\x0d \\xdcg7R\\x08I\\xf5\\xa2\\xf7cfu\\xee\\x15\\x8e\\xa6\\xbb\\xd5R\\x10+\\xa4\\x82\\x98o'\\x88\\x15\\xabt\\x13\\x87\\x15Kd-\\xec\\x98\\xf6E\\xc3\\xa7\\xa9\\x1b\\x18\\x88\\xdc\t\\xe9\\xdf\\x16\\xe5\\xf7\\xd9[Ul\\x1b\\x07\\xaf\\xffn\\xc3\\x89\\xd0:\\x0eV\\xfd)\\x87\\xc2\\xcd\\xd8\\x01e\\xf7\\xda\\xf0\\xf2\\x807\\xfe\\xa2\\xe2a\\xa7E\\xbf\\\\\\x89\\x86\\xe8\\xcf\\xf6S\\x86(\\xfc9\\xfb\\xa3\\x8f\\x1b\\xed\\xe5\\xffH\\xd2\\xa0\\x9e$\\xd8\\xc8\\x8b\\xcc#\\xa3Z/=eHzx\\xa0'\\x0f\\x89\\xa5\\xd7\\xc9\\xa6\\x865\\xa4\\x94e~\\x1a\\x96yb\\x91\\x8d0\\xe6\\xbdM\\xda\\xb8\\xa5\\x06\\x0e\\x99\\x9b\\xcb\\xc0\\xb4\\xa1\\xab\\xaa\\xc7\\xfa\\xa8\\x9a-?B+\\xad\\xdd1&\\xf1{\\x94\\x86d\\xe4\\xa6\\x1a\\xcf\\x875\\x16\\xf3q\\x82\\x9al\\x9a*\\xda\\xf8\\xae\\x13G[\\\"\\xd6\\xd0T\\xd9\\xc6\\xafcWMA$\\xb2\\xad\\xfe\\xd5W\\xb2\\xdb\\\"\\x8aT\\xf6\\xc6\\xac\\x96\\xf0^\\xb6\\x9e\\xa8\\x1b?\\x85C(\\x9a\\xd5\\xfe\\xd8T.I\\xc9N\\xd0G\\xec<\\xa5\\x12\\xae\\x186\\x9dU\\xa9\\xd9F\\\\&\\xc7\\x9d!z\\x85j\\x83\\x193\\x1b\\\\Is6.\\x00\\xe22\\xe6\\xc9\\xe2\\xae\\x00\\xaf\\x1a\\xf1\\xcb\\xed\\xb96%\\xae\\x8b\\xfd9\\xa9k\\x86\\x98\\x1c\\xa1:\\xcd\\x01Gl\\x94\\xb9u\\xd9\\xb4\\xb4\\xd5b8q\\xd5\\x04\\x85\t\\xf6\\x92+F\\x14\\xdc\\xa6\\x86\\xd8\\xd4\\xfb\\xaf\\x98\\xc1\\\\\\x03\\xd8X'\\x91\\xee\\x82\\xbf<\\xc11\\xcaWi\\xa4\\xcbx5\\x089j\\\\\\x8c\\x12]R\\x84\\xc8\\xacT\\xd3\\xaf\\xa8\\xb6\\xdaK\\x1d,m\\x9d\\x8fR\\xc3\\xcb53\\x0fhr@u2\\x0fh\\x08\\n\\xe3\\x1e;,\\x82\\x99\\x97\\xecq\\x0d\\x9a\\xe3D\\x11\\xa6\\xaf\\xca\\xbf4|\\x9bZ(\\x19\\x85k\\xcdP\\xcca\\xef\\x0d\\xa6'm\\x17\\x1d5X\\xbeC\\x97v\\xa5q\\n7\\x1cq\\xa9\\xddq*\\x14\\x9e\\xd0{<\\xe7\\xae\\xaay\\x87\\x1e\\xe4\\xdad\\x80W\\xd4\\x0f\\x9b`7\\xe7q\\x03\\xa8K\\xcd?t\\x07\\xe3(y\\xa7\\x99\\xa7g\\xf8\\xb8\\xce\\xed\\xa0\\x9b\\xb1\\x96gS\\xaa\\xf4l*U\\xac4pv:\\xe9{8\\x95j\\x0f'q!\\xeb\\xac\\xf4t\\x12\\x17\\x96/9\\x99\\x1a\\xa0B\\xe0\\x06\\xc3\\xa8\\x9d\\xc1\\x19\\x0e\\x0f!\\x85\\x875\\x9e\\x9f\\xf2d$\\xe8\\xe4\\xeb\\xc8\\x19\\x1703/\\x17\\xba\\x95\\x04!\\xac\\x18\\xca\\x12\\xd7Qg+\\x96\\xe3D\\xc7\\xa6\\x02\\xba\\x03?\\x16\\xda\\xb4-\\xeau\\x0d\\x0d,\\x12md\\\"\\xb4\\xb1NCk\\x112\\x0d\\x89qH\\xf5\\xa9\\xa4\t\\xe7\\x85A'\tp\\xe6\\xa0\\xab\\xce\\x99Q\\xd48<\\xd4\\xa5m\\x06\\xc6\\x97tuI3,\\xfb\\xa1T5\\x99\\xbb\\xc2\\xc1\\xb5\\xfc\\x10\\xd8\\x9f\\xaa\\xd0?\\xa9\\x95\\xb0\\x8a\\xa2\\xd0\\xadb\\xd0;$t\\xa9\\xf1|\\x87\\xa4.\\xfddH\\xfd\\x08\\xcb:s\\x10\\xb3\\x10\\xb3JQ#\\xf7\\xa4e\\xff\\xf9\\xb5\\x90\\xd4\\xe2T\\x1d\\xf4{\\xd3z\\x00\\x9fC&\\x97P\\xe5\\x8e\\x15\\xaa\\xdc\\xb1B\\x95;V\\xa8r\\xc7\\nU\\xeeX\\xa1\\xd4|\\x11\\xf3'R\\x0b\\x82\\x1b\\n[AX\\xd9\\n\\xf0\\xd7\\xf4V\\xaf\\x80\\xf4Bjq@\\xf5\\x80\\xaa\\xact\\xf8\\xf1\\x8d\\x0b+[\\xe3\\x02\\x91\\xd86a\\x88g\\x16mM\\xed-e\\xe7)\\xc5\\xa1\\xb1/\\x92&\\xf8dE\\xde\\xa9\\x84\\xc4\\x0dR\\x97G&%W\\xc2|}\\xfa\\xcd\\xa8_a\\xaeD2\\xba-?sQ\\x85}\\\\\\xfa\\xa5Ni\\x9d\\xf7Ivw\\xe9\\xc5\\xf5\\x1e\\x0d[F\\x81V3\\x02\\xf9\\x99\\x93+Z\\xeb\\xddF\\x7f/\\xca\\x86\\x90\\x1e\\xbd\\x14\\x97t8N\\x9f\\xb5\\xa3\\x9fR\\xe07\\\\\\xa1\\x9b\\xd2\\xd5hV\\x19\\xa1E\\x0b\\\\j\\xa9CeF\\x13\\xca_\\xa8a\\x98\\xb5\\xc4\\\\\\x80\\x8cYL,\\\\sB\\x044\\xeb\\x15W\\x08\\xa7S\\x82n\\x11\\xc2NS\\xbb\\xaea\\x0d\\x9a\\xdae\\xd5?\\x0bM\\xed\\x05\\x9f\\xc1\\n\\x8f\\xd4\\xa0\\xf3\\n\\xd4\\xde>v\\n\\x87\\xb0\\xf2\\xa2dAr\\xccu\\xaaQ$\\x9c\\xc1!,\\xb98\\xa4\\x86:\\x82C\\xf0\\x19\\xa7\\xceD\\x1cmR\\xbf\\xf3\\x1a\\x9a\\x9c\\xfb\\xeb,\\xd6\\xe7\\x00<\\xae\\xc1\\x99\\xac\\xa4\\x81}\\x04\\x87\\xb0\\xb5\\xea\\xc4;\\x0e)\\x1c\\xaa\\xb8<\\xaa\\x84\\xff\\x8e\\xc1\\xaf\\xd3\\x90\\xc4G\\xac\\xd7:\\xf0\\x17\\x0c\\xdc\\xa6\\x04\\xd0K\\x06Z\\xc5e\\x9a\\x8a\\xe9\\xbcf\\xf0\\x96\\n\\xee\\xe7b\\xd3\\\"\\xed\\xf2$4\\x8a\\x1eY\\x17\\n*\\xbe\\x00\\xf7\\xcc\\x1d\\x99\\xe4\\xc5\\xa7b\\x85\\xb0X\\x16\\xef\\x983\\x86\\xe7o\\xc7\\\\\\xf1\\xfc\\xdc\\xcfF\\xee\\xef\\xef\\xbblF\\xf7\\xfa\\x15\\x0e\\xe1)\\x97\\xf8\\x101\\x9d\\xde\\x07\\xd4\\\"^\\x1d\\xea\\x87\\xa6\\xa9\\xa7-\\x0cs\\x84\\x12<\\xf3\\n\\xac\\x0d\\x14-.Fn\\x17\\x86\\x8a\\xd9\\x0chI\\xcac\\xbc\\xc96\\xc8\\xc8\\xfdU\\x84\\xfd\\x1af\\xd3$HFI\\x10oB\\xf2\\x8a\\xf8\\xe1\\x8b$\\xbehq\\x99\\xdd\\x8b\\x1ez\\xf4\\xb8\\xf9\\x15\\x1eBY)\\xaf\\x12~\\xe7\\xb4\\xeaS\\xad\\xd8\\xca\\xf93\\xb7\\x919\\xb1\\xb9\\\"\\xa6\\xbe\\x8bi\\x7fK?\\xa9\\xd0\\xbc1\\x87*\\xda\\x8bS\\xd7\\x17=`M\\xfb\\xde\\xca/\\xaa\\xb5\\xa3S\\x1e\\xf2l\\x9f\\xd5-*\\x97\\xe2\\xa0\\x92jAzs\\x9d\\x8c\\xe1\\xb9n\\x1e%s\\xa89\\x8d\\x18\\xf0/yT\\x12\\xed\\x8c\\xbf\\xd7\\x9b?\\xce\\xd1\\x97\\x99\\xd2\\xaes\\x8b@1q\t\\x16\\x98\\xb2C\\x94\\xede\\xc5\\xa4\\xfe\\xfa\\xd7\\x9c,\\x1c\\xe1\\xd2E\\xdbUq=\\n|\\xa7\\xbb\\xee'\\x0b\\x07\\xbe\\xe6%\\x8c\\xdbh\\x81\\xaa\\xecM\\xc3\\xe2\\xdf\\x9aW3\\x16\\xaea\\xc6\\xd7\\xc4\\xc25\\xaf\\\\\\x1b\\x17\\xd7\\xbcR\\x1e#g\\x86\\x14\\x1czk\\x8f\\xa7\\xa6\\xc4J\\x974k\\x89\\x0b\\x99.9;).\\xadi\\xe9N\\xa5\\xb9\\xcb5J>e\\xdc_\\xf3j\\x9bT\\x18m3\\xcf\\x1eg\\x0b\\xe51\\xe3\\xe2\\x92\\xc5\\x8e\\xd7\\xcfj\\xa5\\x05E\\xe9\\xcb\\xdaK\\x8cc\\x1d>N!&h\\xc6 \\xa8\\x80|CR\\xf4>\\x1f\\xc3\\xbb\\x1d\\x93\\x1b\\xec\\xa0\\xc9\\x07\\x07n\\x80\\xbban\\xe4\\x9a\\x8d\\xe5\\x84~\\xe93\\xb7pe\\xe0\\xff\\xd5\\xa9\\xdb\\x87\\xe8\\xfa\\xa3+T\\xf3\\x0f\\xd6\\xed\\xef\\xbc\\xafek\\xd1m\\xf5\\xf4To2T5\\xfeB\\xd7\\xb0\\xa8\\xfa\\xe3\\x8b2\\x85\\x0d\\xdb\\x84\\xea\\x94\\x18\\xc3\\x99y\\xb7Y\\x8d\\x95\\xa9\\xf3*j\\xde\\x1cz\\xc3&k\\xda\\x99\\x8e\\x10H&>J$\\xc2\\x1a5\\x83\\xb9f\\xeb\\x0d\\x9d\\xc6\\xd7\\x16&n\\x03\\xc7\\xa3\\x9e\\x92\\x96\\xfd\\x9a\\xaf\\x85`\\xa4(g\\xd3\\xbd\\xe5\\xbd#\\xec\\x18\\x05\\x91\\xb8\\xfa\\x98\\xfc\\xd6K:\\xd7\\xbc:&v\\x99\\xdeG\\xb1\\xdec\\x98ks0\\xae\\xfd\\xb8v0p\\xb8\\xb3G\\x01\\xba(\\x14$\\x1c\\xd5+L\\x8etFcp\\x80-\\x9dW\\xdb\\xa0*n\\xf3'M'\\xbe\\xd3\\xa2xe)\\xb1N\\xb3\\xaf\\xc9\\x8a\\xdfT\\xcbkj/vL\\x14\\xba\\xda\\x8b\\xc8\\x87\\nQ\\x80\\xa9\\xb6_\\xe4!\\xc9I8r\\x13\\xcd\\x8a\\xf2Ch\\x06?)\\x16\\xae\\x9a\\xba#\\xcd\\xd4=\\xd2M\\x1d\\x17mgpd=s\\xfa\\xbe\\x8c\\xc6\\x95\\x80\\x7f\\xa5\\xf6\\xce\\x01F\\xcecx\\x08\\xc7^\\x99\\xca\\xb8\\xd0N\\xf4J\\xf72\\x1c\\xb8/M\\x84\\n\\xb96\\x8d\\x82\\x87^\t\\x0e\\xca\\x00DG\\xa8\\xd5?\\x82\\xe5\\xc2\\x80\\x86\\x14\\x8e\\xb4\\xf50\\xeb\\xed\\xfbS\\n\\\\UR\\xadr\\xef\\x83\\x97\\xb2 \\xad\\xf4\\x16\\xa4\\xdal\\xc8(\\xa1\\xb0\\x0e\\xfd\\xfe\\xbek.\\x91Y\\xf3\\x9a\\x8a\\xc9\\x86\\xea\\xbfm\\x13Z\\xfd\\x17\\xbfy\\xadlB+e\\xee\\x88\\x95*\\xaad\\xa5\\x8a*Y\\xa9\\xa2JV\\xaa\\xa8\\x92\\x95*\\xaad\\xa5\\xb4\t\\xad\\x84Mh\\x85\\x11\\xf9\\xb7\\xa5\\x96 \\xf6\\xac\\xf7\\xe5\\xca\\x1c\\xd4\\xbe\\x1d\\x8a\\xbe+\\xd2\\xed\\xad>\\xbe\\xa1hkk(\\xfa\\x12\\x85\\xd21Z\\x99\\xa2P\\xf4\\x16\\x91\\xcc\\xcf\\x0b\\x12\\xf2-\\xae\\x10\\xab0Rd\\x83\\xae\\xfb/\\x9b\\xe0\\x83L^\\\"$\\x85scjm&\\xf3\\x9f/\\xd5B,\\x05b*\\x12\\x88\\x92\\xa2\\xf4\\x93\\x80\\xa4\\x0b`\\x81\\x87f}H\\xc2\\x83%\\x9fD1\\xaa\\xa7T\\xe61q%^\\xca\\xc2\\xf8,r\\x184\\xaf\\xdc\\xc6\\xbc\\xd6\\xbc\\xba+A\\x99\\xe1M,\\x8f\\xccm^\\x8a\\x93\\xa8z<\\xc6O\\xf9\\xe1w\\xc5kr^\\xba\\x9a\\x89\\xe5zC\\xeb\\x9ewz\\\\R\\xfe\\x80Uu\\xd7i d\\xe8\\xf5i\\x83T\\xae2[\\x00\\xca\t\\x92\\xbd\\xe2Z\\x1d\\xf1\\xea \\x8c\\x9dR\\x06(7\\xa5\\xb2\\x97D\\xec\\xcfKt\\xf5j\\xac\\x9a\\x96\\x96\\xcc:\\xf8\\xcc\\\"K\\xa8\\x95\\xb9\\x8e\\xd5+\\xd9\\xe4\\x92\\x84J\\xe2bUJ8\\x9f\\xaf\\x06\\xf3ks\\x07K\\xaf\\xf1\\x10~\\x7f\\x0fZ\\xf7\\xe1\\xcd\\x80\\xcc\\xa7E\\xdbn\\xd4\\xda\\x8d\\xea\\xb7\\xb0>\\xc8\\x00\\xab\\x1a=\\x98k_>\\xd4tQ\\xf2\\xf9\\xd8/\t\\xd6\\x17}\\x1d\\xad\\x89N\\x84^W\\x93\\xa0\\x91\\x86$\\xb9\\xbe\\x9a\\x17\\xa5\\xf8tYR\\x91\\xa9\\xe1\\xe6\\xffm\\xf80\\xfd\\xab\\x15\\xc4~3\\xf2JR\\x94n2\\xa2\\xc0\\xfe\\x89\\xc3gd\\xf28*\\xb2\\xb4\\xc0\\xcc\\xfc\\xce[z|\\xdc\\xf4\\xcb\\xd2\\x0fV\\xf4\\xa0\\x16/\\xa9\\xc0\\xc5\\xb7\\x84\\x86%\\xb4\\xfb\\x96\\x14\\xbc\\xd7\\xaf\\x86\\xf6\\x88}\\x8b\\x1eM\\xf0:\\xf7\\x93bArY\\xd7\\x9ao\\xf4\\xbaf\\xfd9\\xe9\\x1b\\x1a\\xe51]\\x05\\x87\\x1e\\xb3\\x0eD\t\\x8f37\\x9d\\x84t+_T96Jr^\\xde\\\\\\x95\\xeb\\xd8B\\xd7\\x8d\\xc19\\xdd\\x03^X\\xd9\\xaad\\x07\\xa54\\xd9\\x81\\xecb\t\\x10.\\x8c\\xb0]\\xf9Gv\\x9d\\xea\\x93\\x12\\xcc->q\\x06\\x87prA\\x19\\xbab3/\\xca\\xdcM\\xbd\\xd8/\\xca\\xa7IH\\xce_,\\\\\\xe7\\xa63\\x82\\x1b0\\x1d\\x8d\\xe1\\xf4\\xad\\xf7k\\x1a%\\xae3\\xd3mSq\\xa1\\x9d_\\x85\\xa8\\x9a\\x0d\\xa1g\\x82:\\xb9\\x1f\\x8eL\\xcb\\x0e|\\xe9\\xcf+s\\x0f9/s?(\\x9f\\xf0\\xfcMO\\xf2t\\xcd\\xfb\\xd1\\xe8\\x06\\xf3\\x8a\\x18\\xb9G\\x06\\x83\\x10\\xbd0\\x84\\x87v\\x86Y\\xfd\\xe8|\\x9e\\x1b8!\\xedSJ\\x83*\\xaf\\xcb:s\\x05\\xfd\\xb8\\xe46Oh\\xf1\\\"\\x7f\\x91\\x91\\x84c\\xe6\\xa5,)\\x8eo\\xd4\\xd8BU\\x9f\\xdd\\xe0\\x80\\x0b;\\xd5@\\x11\\x17\\xe7\\xaal\\x06\\xed\\xce\\xc7p\\xa6\\x9ft0N|3\\xcb\\x0c,\\\"a\\xe4\\xbfV\\xb3)ry\\xcc\\xe0l\\xf0X\\x94/pv\\x9b\\\"\\x9er\\x1c,\\xa5\\x0e\\xd7\\x19U_\\xe6\\x9c\\x07\\x84\\xa4\\xc4\\xd2\\xda0\\xdf\\x94p\\x91nr\\x98\\xe7\\xe9YAr\\x08SR@\\x92\\x96Pl\\xb2,\\xcd\\xcbj\\x04Q\\xb2\\x84y\\x94\\xf8\\xf9\\x05l#\\x1f\\xfe\\xf9\\xc3+pQt\\xf2T\\xd9\\xc0\\xb1\\x93\\x94\\x00\\xa0\\xafp}\\xbc\\xea\\xf0\\xa9\\xcc/\\x0c\\xd3\\xbf\\xee\\x070\\xfcx\\xfc\\xe2'\\xc6\\xc5\\xb8\\xe5\\xa8\\x1a4\\x80\\xc2\\xa6\\x028\\x85\\x81_\\x06+0\\x9b\\xc2i{N\\xe0'\\x7f+\\x99\\xd8\\x02\\xd8\\x1a\\xc0+\\xff\\x0c\\x98\\xa05\\xfbW\\xf2\\xaf\\x84\\xf27j\\x91K\\x8d\\xc8\\xbaE\\\\\\x99P\\xb1\\x99\\xadJ\\xef)A/\\x91\\x02o\\x06[\\xb8\\x01\\x8e\\x87\\x1e\\xdc\\xfaW8\\xe3\\xbdV\\x0fL\\xa1\\xcdd\\x8b\\x7f\\xf3|\\x1d7\\xd8\\xaa\\x87\\xe0\\x8a\\xd5\\x0bZ\\x02\\x96\\x06\\x1f\\xc8y\\xf9S\\x1a\\x92\\xe2Er\\xec\\xaf\\xc9\\xb3(1\\x0c4JB\\x92\\x94i>C\\x04\\x90wn4\\xde}\\xda\\xed\\xa7\\xbc;\\xdd\\xe7Z\\xeeE;\\xd3\\xccrM\\xfb\\xdc\\xe0\\x84P4p\\xdb\\xc9\\x0f\\x19\\xefz\\x93\\x02\\xfd\\xebf\\x16\\xfbQr\\xb31\\xfb\\x1fy\\xc0\\x06~M\\x18\\xf1\\x14#\\x86\\x19\\xdc\\xfc\\xbf\\xd1\\xda_\\x92\\x7f\\xddl\\xe1P\\xe2q\\xb7\\x9f\\xc2u\\x8a\\xed\\xd2\\xd1\\x1a6\\x9a4\\xdf\\x01\\x07\\xd5\\xc8\\x0e8ze\\xfbz\\xa9=\\x040\\xdf\\x93Ls\\xd9\\xbc\\xd6\\xfe\\xf9/QX\\xaef\\xe0L\\xf7\\xf7\\xff\\x7frL\\x04\\xa4\\xfc\\xea\\x86\\xf2`\\xa6c\\x17\\x15\\x1a\\x19>w\\xfe&\\x8c\\xd2\\xce\\xdcY\\x1d\\x17\\xea\\xb3\\x91~Qo(\\xe2\\xe6H\\xb5#\\x96.(\\x1a\\x8d\\xe3\\xfa\\xa9\\xa73\\xa2\\xab\\xf5\\xcd\\x92\\x95\\xa96\\x11\\x9d\\x18\\x87\\xf9\\x0f\\xd1\\xed\\x83\\xe0\\xe9\\x02\\xca\\x8f\\xbf7\\xcas\\x99\\xaeH\\\\\\xe6\\xad\\xc1\\x9d\\xbc\\xbe\\x85}x\\x08\\x85\\xed\\x0eP/\\xbf\\xb5\\xf9/R\\x873\\xbeIr\\x12\\xa4\\xcb$\\xfa7\t+3\\x11\\xce\\xf1\\xd7\\\"0\\x882\\x11\\\"\\xc8\\xdd/\\x90\\xba{\\xbaH\\xd1O9\\xfb\\x85\\x86\\x14\\x7f\\xba\\x89\\xdc`)\\x12(S1\\xa5\\xb5\\xf1^\\xeb\\xb6\\xb4\\xbc4\\x8e4\\xbc\\xd8\\xea\\x8c\\x05\\x18\\x96J\\xcfS\\xa5k\\x95\\xb5-\\xd2\\xa6\\n\t3\\xab\\xeed\\x19\\xac\\xf2\\x1d\\xba\\x0f\\xee\\xde\\x91\\x18\\xf1\\xf4\\xba\\xcf\\xda\\xd73\\x8b\\xa3\\xd2\\xbd\\xe9~\\xf3\\xaf\\x9b\\x0fO\\xfe\\xef\\xb7oo|;\\xba\\xb9\\x1cy\\x8b(.In\\xe1a\\xc9?\\xe48U\\xb6\\xa1h-K\\x84\\xdbQ_\\xb7\\xfb\\x1b\\xd9\\xf6\\xf7\\xe67\\xff\\xbay\\x83u\\x933\\x02D\\xfba\\xdf\\xfe\\xc3\\xf8\\xd5\\x7f\\xdd\\xb4\\xfb\\xee\\xc6\\xf6\\xbb\\xd6\\x13\\x88\\x1d\\xd8S\\x8e\\x0b\\x10\\xb9\\x08\\xe6\\x1d\\xde\\x8b\\xc4\\x0f\\xbf\\xd7\\xcd\\x1a?\\xe4\\xb93\\xbb\\xbd\\x10F\\xa9\\xae\\x89\\x0f\\xbe\\x85)m\\xa2\\xa1\\xeb\\xa8my\\xd3\\xb7\\xf0\\xb0\\xfd\\xe7\\x0c~\\x97\\x9c\\xfb,vKp\\xb0\\xfd\\xe7\\xa8\\xb7\\xf5$,q\\x1f4\\x86C\\x99\\xde4\\x80C8\\xe9\\xa8l\\xeaL\\xb6\\xf4\\xafN\\x9c5\\x1d\\xefb\\x8c\\xe6`w\\x01\\x87@\\xc6\\x90\\xba\\x0b\\x1bwb\\xbeN*E\\xbd.\\xa4\\x8b\\x9d\\xe2n\\xc9\\xda\\x8b\\xdc\\x92\\xb2.\\xce\\xa38-\\xa2d\\xf9\\xda_:0\\x83\\x0d\\xbf\\xfb\\\"#I}\\xd7\\xe7w\\x8fI\\xbch\\xc3;\\xaf\\x89<\\xd7\\xb7< \\xb0}\\xf4\\xbe\\x1fI\\\\W\\xc6\\x90\\xaaL\\xca\\x91)I\\x1d\\xab?\\x8e\\x14\\xbd\\xf7\\xbc5P\\xca\\xe3\\xfb\\x14\\xb1\\xe2\\xc9D\\xdeS\\xba\\xb5r7\\x19C\\xacP\\xf2a)q\\xb8\\x01Q\\xff}T\\xcc6g\\xb0n\\xee\\xc6\\x8d1\\x14:;\\x0bE\\x89\\xf4\\xa4\\x84\t\\xe8\\xdc\\xb7\\xc3\\n\\xea@\\xa1)\\x94\\x0f\\x97-\\x17\\xfe\\x9d\\xe1<\\xe1\\xcdnW\\xc3\\xea\\x11\\\"\\xa7\\x83\\x95\\xb3\\xe0\\x06\\x84l\\xee\\xe1\\x06d\\xd5\\xaf\\x88\\n\\x9d\\x18\\xb0\\x80\\xbd\\x19\\x03v\\xdd\\x18~\\x0d\\x0d\\xda\\xd4\\xc1\\x89\\xf6x8P\\xe0-\\xd2\\xfc\\xc8\\x0fVv\\xdb#;!o\\xe9\\xfe\\xeb\\x9e\\x9cTF\\xcd\\xecN\\x15\\xfe\\xa5\\xbd\\xbd\\x8e\\xbf\\xc4\\x88k\\x7f\\xff\\xd5\\xf4-\\xbdD\\xc2\\xd6\\x9b\\x7f\\xdf\\xab\\x1b\\xf8;\\xe4$#>\\xdaN(S\\xf7\\xcd\\xaa,\\xb3bv\\xf3\\xe62*W\\x9b\\xb9\\x17\\xa4\\xeb\\x9b\\xbf\\xa6I\\x11\\xac\\xe2(yG\\xf2\\xf2f\\x0b\\xfe\\xdb\\xc6\\x97\\x9a\\x1f}\\x94f\\x17y\\xb4\\\\\\x95\\xe0\\x06#8\\xd8\\x9f\\xde\\x9e\\x1c\\xecO\\xef\\x8c\\xe1\\xc74\\x81\\xe3\\xeac^\\xf3\\x9dgQ@\\x92\\x82\\x84\\xb0IB\\x92C\\xb9\\\"\\xf0\\xfc\\xe9kq\\xbb\tz\\xb3\\xfa\\x8d\\xcc\\x00\\x8bzlf\\x96P\\xe6O\\xee\\xce;n\\x1c!H\\xecU\\x82\\x04\\x19A\\xb9\\xca\\xd33\\xb43\\xbc\\xbe\\xc8\\xc8Q\\x9e\\xa7\\xb9\\xeb\\x90\\xf3\\x8c\\xa9\\xdb|\\xe0/IR$O\\x11\\xa5\\xcbQ\\xc5k\\xf4A\\x0e\\xba p\\xa3\\x0b&<\\x15\\x888\\x98\\xfe\\x0ee\\xffC9\\xe3>(\\xd5o\\xd8\\x19\\xf3\\x11\\xcb\\x82\\xde\\x9f\\x18h\\xaa\\xf3\\xd2\\xea\\xcc;\\xa4x\\xc3\\xfbR\\xd9#\\xf6)6\\xb5_E\\xef\\x98\\xaf\\xb1\\x14@\\xf52\\xbaa|\\x0b\\xd3\\xafG\\xf4\\xe4d\\xa1+n\\n7\\x0e\\xd1\\x08_\\xc2\\xb7\\xdf\\x1e\\xc2tL\\x87x\\xd8\\x1d\\xa3h\\x91\\x1eJ\\xfc\\x8dV\\xe3\\xc3\\xb0\\xbdf\\x0c\\xefNG&\\\\Px7\\xe5.\\x19ye\\xfa,=\\x13\\x95h\\x87\\xf5\\xe1\\xa3;\\xb3}\\x86\\xc5_\\x17Uf\\x03\\xfa\\xeb\\xde\\xe8\\xcfQ\\xf0u\\xfb\\xa5\\xc0\\x8c\\xba\\xc0\\x8c\\xf0\\xa2\\x1f\\x10\\x0d'\\x10\\x9c'J\\x90\\xf3\\x1c\\xac;\\x92\\xd4\\xc8~\\xee\\xaf\\xbf\\xbfxJ\\x19\\xf0\\xa8\\xbc\\x18\\xb9u*\\xe6\\x7f\\x90\\x8b\\xb1\\x88\\x98Wd\\x10\\x10\\xa0\\x8f\\xd2\\xa4\\xd8\\xac\\x87em\\xee\\xe4wPw\\xbb\\x94t[4\\x88I=Gn\\xd9\\xe9\\xb4\\xb4\\xbb\\x9f\\xb6\\xcc\\xca\\x95z\\xfah\\xd4\\x81\\x96\\xbe@\\\"i\\xc6\\xeb\\xfc\\\"\\xdd\\x94h\\xffT\\x03\\xe7\\\"\\xc3\\x86\\x9f\\x04$6\\x00\\xb3\\xd2;\\x19\\xc5+Rj}~X\\xe1\\x1d?\\x8e\\xd3\\xb3\\xd7<I\\x8f\\x1a\\x98\\x95\\x83\\x13\\xc9|\\x8c\\xe5{7\\xac\\xa8\\x8f1\\x81\\x02\\x130u\t\\x14\\xb0\\x10\\xb0\\xa5\\x9bQV\\xc3\\x1a\\x12(\\x84U\\xff,\\x12(\\xac*`c\\xde\\xee-\\x9f\\xfdr\\xf5\\xdc\\x90\\xa1p\\x8d\\x07\\x90S-\\x14\\x16CU\\x83/\\x19\\xb8X\\xa8\\xef7e\\x99j\\x13\\x01`rYLz\\xa6\\xd5\\xd2]E\\x94\\x97\\xbe\\xe2\\xaa\\xb8\\xae*|\\xee\\xaa\\xd2\\xaf\\x0ei\\xb3\\xf4\\xe7;\\xb7\\x83\\xf9#\\xed\\x9a\\x11C+\\xa3R\\x93\\x00\\xd2yYmn\\xac\\x1b\\xabK%\\xaa\\xcd\\x12Z\\x15\\x99\\xd6\\xa4\\xechQ\\x1dm\\x84U\\x8b\\x98\\xa9M\\\"u\\xa0P\\xea\\x05\\xe9&)\\xf5qB\\x03WI]\\x03W\\\\\\xda\\xb0\\xd5A\t;k\\x1a\\xbbCK\\x03ru\\x9a`V\\xd6=\\xeed\\x8e\\xac\\x07\\x80aU\\x89\\xbf\\xd6 \\x1d\\xfd\\x84>\\xc5\\xe6U\\xf5\\xc3&\\x10\\xb7\\x9dds@\\\"K\\xad\\x90\\xdd\\xbc*\\xfd;2\\x08,\\x98\\x8ckG*W\\x02\\xef\\xb9\\x9fyQ\\xf1\\xdc\\xcf\\x98\\xb6Ne\\x1eu\\xd3F\\xc3\\x96\\x99\\x15T\\xe3\\xd1fb\\x06\\x9e\\xd7\\xd1\\x901\\xb1\\x8e\\x98\\xdc0\\x05U\\xd2\\xf0\\x877x\\xee\\xb5\\xa3\\xce\\x0c\\x89\\x1c\\x9b\\xc1\\x94\\x86t\\x88\\xb9\\x7f\\x86t\\xcd\\x18\\x1b\\x971\\xa8\\xb0\\xe6q~\\x89\\xf0\\xb8\\xf5k>\\xda\\xddb\\x95#\\xedwX\\xb0\\x1e\\x8b\\xbb\\x8d\\x12\\xf4at<t\\xaaa\\xf7\\x12\\x86\\xf0\\xdao\\xd4A\\xb7\\xa4b\\x81\\xed\\xde\\x10\\x1ct\\xf3\\xcd\\x0e\\x1bo^\\xc3F\\x00\\xaa!?g\\x83y\\x99\\x81\\x86\\x1f\\x03\\x9e\\x9d\\xf99O\\xb9\\xac\t\\x94\\x05\\xcc9z\\xc4\\x92l\\xeb\\xdcU\\xed\\xb2R\\x9a\\xfd\\xe8\\xech\\x8b8C\\x1bTd\\xf7\\xb4\\xf0Y+\\n2k\\x9e\\xbb&5\\xaee\\xb9\\xb5L4-\\x8f}\\xec\\x1c\\xaaO8\\x11\\xf1P\\xd2-{\\xc1\\x01\\x9d\\xd3\\xda\\x04\\xdea\\xe7g\\xb07m\\x03\\xb4\\x84\\x83\\xbe\\xc5\\xbb!\\xf5\\xcd\\xe0\\xa4\\xa3\\x94\\xaf\\x89\\xcc\\xc9\\xdbz\\x1a\\xdaq\\x97\\xd9\\x7f\\xc1'WU\\xd1\\x1eU\\x1c\\xd5\\xd1y\\xa9)\\xe6\\x9dvKv\\xa7\\xea\\x92\\xdd\\xe9\\xc7W\\x0b1\\x81\\xae3\\x16\\xb3e\\xd1\\\\\\xaf[\\xaa\\x0c\\xcd\\x87\\xeeV)\\xeftzJ\\xceK\\x92\\x14\\xbd\\xc3\\xfe=\\xf3\\x9c\\x9a\\x813\\x06~4%\\xe6Z\\xdb\\xd1uC\\xa8\\xa7\\xccs\\xech\\x9d\\x95\\x17\\x862\\xf1\\xbd\\x98ZQ%\\x1es\\xaa\\xd6\\xefDB?\\x19q\\xfd\\xe4\\xb5\\xaa\\x18\\xaf\\x1a\\xb9\\x0d\\x1e\\\"V\\xa8\\x101*\\xf8\\x17%G\\x1d3\\x7f\\xaaO`\\x9f\\x7f\\xe1qT \\xa5\\x93\\\"4?\\xf7\\x91\\xe6a\\xafQ\\xbb\\x85\\xde~\\x97\\xc1\\xf5\\x8e>\\xb5\\x85\\xfa\\xb4\\x95S\\xc4\\xa1\\xd32].5\\xc2G\\xc8{.K\\xff\\xdcs\\xddP\\xf77J\\xb2M)m\\x84\\x99\\xc0\\x9d`E\\x82w\\xf3\\xf4\\\\\\xa2)kt\\xa1\\xff\\x10\\xdf\\xc3#\\x04\\x95\\x0e\\x12\\x85N\\xcd+\\x99\\x95\\x93\\x91+*X{\\xfc\\xc3\\xc6\\xe3v4\\x06\\xe7\\x98$!\\xe0\\xa4\\xb2\\x8d\\xe9\\xf4|\\x84>\\xab\\x12\\xfd\\x9f4'\\xb4\\xdcd\\x12JM&\\x8ar\\x92\\x8a\\x14\\xd1\\xb7\\x0ezy\\x01\\xbe\\xe4\\x82\\x96\\x1b6\\xec\\x8c\\x1a\\xb6\\xb9\\xa0\\xc5\\x0e\\xdc\\xc5L0\\xd4\\xfd\\xe8\\xab\\xafZ\\x7f\\xab\\xc5\\x88\\xc4d\\x83hX\\x00\\x92j\\x08#7\\xf1\\x84\\xc48\\x06\\x879g\\xa0u\\x19q\\x82Y\\x97\\x89\\xc8K\\x98\\xb0\\x1aJ(\\xf2\\xf7\\xe9H\\xd3\\x92b}h\\x89k;,M\\xb6\\x95\\x129\\xafU\\xf8j\\xa0\\xd4Z\\xd3\\xeccJ\\x03+\\x99vS\\x83R\\x91X\\xbb \t\\x8f\\xca\\xc6\\xb9\\xc2\\x85\\xc0\\xc9\\xa3\\x9c\\x9c\\x9b\\x8e\\xc1\\x1f\\xc3Fe\\n\\xc2|\\xde\\xbcZ\\x05\\xab9h\\x91\\xb1@\\x18`\\x8c3\\xcdx\tK\\xdd~\\x02\\xa2.\\xa1i\\x1aY\\xb9\\xf6\\n\\xe9\\x8c\\x0b\\xa3VN$c\\xc8\\x15s\\xdb\\x88^\\xc4\\x12\\x1el-\\xc4a\\xf6\\xd5W\\xe0\\xa06\\x0b\\xf7[Z/\\x94N\\x9f$X3]\\xd42\\xe0y\\x18\\x15\\xc7g\\xferI\\xf2\\x03\\xd4\\xc9\\xfaP\\xb5q>\\xa93\\xdf\\xfe\\xf1\\x07\\xbb\\x8b\\xe9y9-\\xe2\\xb1\\xbd\\xf5\\xfd*\\xe1n\\x95JQ\\x0d\\xd1\\xf8\\xc6\\x0c{\\xc1\\xb3G}\\xf5\\x15\\xb8\\x8d>(z\\xb0[Ku\\x05\\xec=\\xe1\\x00\\xd6\\xa3\\x8f.\\x0b\\x07M6\\xeb9\\xc9_s\\xfd\\xd8\\xc8\\xf5\\x15qr}/.\\x19\\xa6\\xbb\\xa3\\x8f\\x93\\xaf\\xbdJ\\xc2\\xf0K\\x14\\xc7\\xafH@\\xa2-r'\\xb2\\x9a\\xfb\\xd6\\xb9\\x18jN\\xfd\\x13\\xef.S\\n\\xf1\\xe8R{\\x10\\x89LT a\\xc3\\x9d\\x90\\xc3LeF\\xb3\\xd9]i\\xb5\\x9d\\xdc\\xa8\\x95\\x8fz$\\x0e\\xf5\\x80\\xa5\\xa4\\x1e\\x8d8\\xaa'\\x9b5\\xf2\\xae>\\xb0\\\\\\x0cQ\\xe7\\xbe\\xae5\\xe1\\xa2\\xd9x\\xaff\\x86M\\xe9\\x0d\\n\\xc3P\\x1a\\x9bf\\x83q \\xf4\\xbf3qf\\xe4\\xe4\\xb7M\\x94\\x93\\x90\\x91*\\xdcU>;\\x83\\xe9^F7\\x11o\\x11\\xe5E\\xe9v6 \\x16\\xb2,\\xf8gEMK\\xbb\\xedX\\x8c\\xaa,\\xda\\xdd\\x9d\\xd6\\xdf\\x90\\xed\\x8d'\\x13\\x83>\\x80\\xb7\\x80\\xddye8\\xee\\x13\\xcb\\xfd\\x91\\x0f\\xc8\\xca\\x91\\xd6\\xb0\\x06sy\\xc4\\xe5g\\xae\\xed\\xd5\\xf3\\x1aDk\\xcf\\xdf\\xb4Du\\xa1\\xf2\\xd6c\\xa45\\xbd\t\\xac\\xe9MX}\\xd6\\\\\\xe1\\xa10\\xd2\\x1b\\xac\\xf2`L-\\xe2\\x15\\xab\\xf4\\xecH\\xa8\\xbb\\x0c\\xe5\\x1d\\x18\\xf4\\xa3t\\xbdN\\x13\\x9bw.\\xd0+\\xdb\\xf9\\xb1H\\x13\\x96\\xf9\\xfcI\\x9a\\xafM%es\\x97\\x19\\x93\\xbfgA5J\\xd8S\\xe1X\\xc1\\xd8\\x0d5\\xe0\\x19\\x1c6Y\\x94Ss\\x01\\xd3\\xb9\\xc9\\x9e\\xd568\\x19\\xac\\\"\\x8bDk\\xcd\\x86\\xda~d\\xb02\\x05\\x95}\\xa6\\xf0\\xaab\\n\\x02[\\xdd\\xc0`\\x17\\n\\x9a\\xfeQ\\xf4\\x13\\x8dt>x\\x8f~\\xa2\\xa6\\x99\\xa4(\\x1b\\x99\\x0b\\xed\\x8dN22i\\xf7nm~2\\x94\\x1ekXx4\\xb9\\x80`p\\xd1\\xb6\\xa6\\x91)PB\\xea2\\x9c\\x1c1\\xfc\\xb5\\xad\\xa1q\\xce\\xc0mjh\\x1c7v\\x06W\\xa4\\x9b\\xca\\x844\\xc1\\x9b2\\xa4\\xa9hH\\xa1eR\\x02*\\xd1\\xab?\\xf0]\\xbd+\\x17i\\xbe\\xf6\\xb5\\xbd|\\x01\\x87\\x80>\\xd0+\\xe4F\\xca\\x0e#\\xa2\\xdd\\x10/\\xe1\\x10^\\xb0\\x17J\\x03\\x82\\xbe\\xa6\\x04\\x80\\xf6\\xe6\\xb1_\\xfa\\x8e\\xa9\\x06\\xdfs\\n\\xfd\\xa4\\x82\\x8e\\x92:\\xb4\\\\\\xfd\\xd2\\xd3z\\xd85\\xc3\\xa1\\x06\\xffUt\\x1e\\x85\\x81\\xa8$\\xeb\\x82\\xca\\x028\\x90n5\\xb9\\xe6\\xf5\\x13\\x1c\\xc2;x\\x08\\xef\\xba<\\x94\\xa3\\x89\\xe4|\\x05\\x87\\x18\\xf8\\xe8\\x8aZ\\x14]\\x02>r\\xcb*o\\xaf\\xf2+\\x8f\\xe1\\x10\\xd6\\xcd\\xaf\\x0c|\\xff\\x99E\\\"\\xab7\\x160\\xbfY\\xc0<\\x81C\\xd8\\x9bj5\\x05\\x0dF\\x8f9\\xdd?\\xab\\xf1\\x89\\xadG\\x87\\x1d|F\\xc7N;\\xf8\\xac\\xc9\\xf7\\x8e\\xb1?\\xfc\\x96\\x10\\xe5\\xd0p\\xfc\\xa6\\xfe\\x9e\\x00m|\\xed\\x0dm\\xf3M\\x1d\\xbeL{\\x80\\xbd\\xdeo\\xc3\\xb1\\xbe\\xfdV\\x7f\\xabjc\\xdc\\x8cY(\\xbb\\xe2(V\\xc0\\xe8\\x8a\\xc9Z\\x8f\\x14}\\xde~\\x96{\\x1f\\xe9\\xc2\\x04\\x1563[\\x97\\x84\\xe6\\x9bQ\\xe2\\xb4\\xdc\\x1b\\xa4/]a\\x0e\\xff!\\xceDWa\\xe8\\x7f\\n\\x0f[fD\\xda T\\xf4\\x00f\\xbd\\x87\\xca\\xde\\xb4'\\x17?\\xac\\xce\\x18\\xc0\\xca\\xa8\\xab{h\\x95\\xaa!Hc\\xcc\\x17B{\\xaa>\\xfbT\\xfdu\\xfe\\xe7\\xff\\xfd\\xddi\\xf8\\xd1]\\xc5l6'KS'}\\x0c/\\xc7\\xf0+\\xea\\xa1N\\x1c\\xb8\\x01\\xbf\\xc2\\x0dp\\xde:c\\xf8\\x0eC\\xf8v\\x9e\\xb5VO\\xf24\\x9b\\xf0\\xf3L9\\x05\\xee_i\\xa3cpF\\xfa\\xad\\xb6\\xe3\\x14\\x84$\\xcbI\\xe0\\x97\\xaa\\xf5y?\\xae\\xcf\\xd2z\\xfb7\\xde\\xc2\\x98\\xd0\\xc6\\xdf\\x1fn\\xb5\\\"\\x8d\\x93\\x9c\\xeb\\x8c[l;N\\xd7\\x18\\x96\\xb4\\xcf\\xaf\\x84r\\xfc\\xd5\\x95\\xe6H?6\\xb1\\xf3\\xcc\\xed\\x8a\\xe2\\xcd\\x84b\\x90\\xc1]\\xea\\xfc\\x1f\\x16)\\xd5\\xcf\\x7f\\xf6c}\\x19\\x16\\xf9\\x0c\\xd5\t\\xf4\\xd7tF\\x1e\\x8b\\x19y\\xfc\\x1f?#WXce\\x07\\xe7\\xcej;5\\\\<5D\\xf9\\\\K\\x8fy\\xfd\\x13\\xd97MX\\xb1w\\x86za\\xf8\\xe3\\x0f\\xd8{b\\x96d\\xb5\\xfdP9\\xbfPvE\\xbd\\x96\\xa2\\xf7\\xce7\\xd1\\xb7\\xdfm\\xfd(\\xc6T\\x1c\\xc8\\x8a\\x16\\xdf\\xdc\\x8c\\xbe\\xa5\\xc7\\x1c\\xdc\\x807\\x16\\xd1\\xf1\\xcdK\\x98O5\\xf8Q\\xfb\\xe6\\xf1\\xa0\\xde\\xb1*\\xb9\\xd9\\xfbQk\\xa6\\x1a\\x9c\\xd2o\\x1ff\\xce\\x04[f7m\\\\%\\xc8&\\xad1g\\xbf)\\x07\\xf3\\x9a\\x8ee\\xef\\xb9\\xf6Dkey\\xc2\\x98\\xdb\\x99!\\xab]%\\xe5`y\\x1d\\x8aR\\x91yz\\xb4\\x95\\xe4\\x0d\\xba\\x0ek\\xbd\t\\xd7i\\xfe\\xa4\\x86\\x10l\\xd5\\x0c\\x9e\\xaa\\x81\\x1a[K\\xbe\\xddj\\xa9\\x93\\xb1Z\\x94\\xe2\\xc1\\x04\\x1a.\\xb7m\\xf0\\x19\\x0b\\xaf\\xb7\\xe4}w\\xd5\\x8a\\x10\\xbax\\xc5L\\x88y\\xecO]C\\xa2\\x9e\\xcb\\x0b%\\x02\\xe1fx\\xa1\\xa1XG\\xbae\\xb5^\\xb7\\xda\\xc1\\xb2[\\x17\\xd1\\x80\\x14\\xdc![\\x93\\xd5\\xcaN\\xebc\\xaf\\xf1\\x11s\\xd6\\xd1:hVE\\xd4\\xbe\\x91'\\xb1\\x94\\x10\\xe9\\x1d+\\xe0(\\xd0\\xa6\\xa9\\xc3\\xd1M\\x93pI\\x9b559\\x95\\x1d\\xfc\\x98\\x94e\\x94,\\x9f\\xa4\\xb9\\x1b\\xf4\\xe4\\x8c\\x06c\\xa6\\x99\\x88\\xdagm\\x06?1\\xd7\\x06*\\xab\\xfe\\x84\\xbc\\x8a\\xfa5\\xa1\\xe4\\xd4\\xcf\\xdeU91_\\xffR*\\x81\\xca\\x95*P\\xb9R\\x05*W\\xaa@\\xe5J\\x15\\x0cs\\xa5\\n\\xdc\\xa2\\xd1\\xd1@\\xedI\\x1c||\\xff\\xa7\\x85\\xad\\xff\\xd3\\x97\\x00s\\x01h\\x1f`\\x1eG\\xc1\\xbbO\\xed\\xf0b\\xed\\x87Dj\\xeb\\x87\\xe6\\xec\\xad\\xccnj\\x18f\\x19\\\\\\xa3\\xca_\\xae-L\\xbc\\xad\\x1fG\\xbc\\xd0\\x83\\xbf.\\xdc\\x93t\\x0c>R\\xa0\\xea\\xc9\\xf7d\\x91\\xe6\\x84\\x1fN\\x02\\x00\\xf5v|\\x96\\xbc4\\xe1O\\x99OG\\xe7\\xa6;\\x1aC\\xe2\\x11\\xfe\\x87\\xe6X\\x10\\x83\\xd6\\x9e\\xc0\\x19\\x9e\\xbe\\x9ast\\xcd-\\x1c}\\x9f]@Be\\xf0F{\\x99\\xa7\\xe1&\\x18\\x16\\xd7_y\\xfb\\xb1\\x91KR\\x0e\\xf0\\x8f2#\\xf9\\x89\\x00\\xc4\\xd5\\xab^c\\x1d\\x7f\\xfb'\\x8d\\xe57\\xc5>\\xcfYt\\xb5\\xadl2/\\x13\\xe0(\\x05\\\"\\xfc\\x88\\xe7%==\\x9d\\x97\\xba\\x94\\xc7U\\xees\\xc1}\\xd0\\xbf\\xe4\\xc8B\\x05\\x0d\\xd6\\x88,\\xa9X{\\xda\\x87\\x1f\\xdb,\\xd5\\xd4u;\\xb61\\x03\\xcb}U\\xd6\\x18i\\x054i:\\x19_\\x95Nf\\xa3J'S\\xa8\\xd2\\xc9\\xc4\\xfc\\x81\\xbc\\x02Z+w\\xcc5\\xcb\\x18\\xd3\\xff\\x88\\xd0C\\xff\\xe5\\xc1\\x83\\x07\\x12$]\\xa4Iy\\xcc\\xf4\\xd9NT\\xfaq\\x14tCtZ\\x7f\\x86F\\xfad`\\x1c\\xa0M#$e\\xd0zu\\x97\\xd4~\\xd2\\x9d\\xf2c\\xecXf\\xe0\\x15C`\\xe4\\x7f;=\\xda\\xb1t\\x13\\x98)\\x17\\x0c\\xa0^0\\xd0\\xbf\\x08*\\x16\\xc1X\\x06\\x088\\x83@\\x87\\xd5\\xf6\\\"\\x1a\\xb9\\x8e\\xd8\\xda*\\xbf`h\\x84\\xd2@\\xb3,\\xfc\\xce*o\\xe8\\x10Z\\xde\\x7f}<'\\x80\\xde\\xc6d\\xc8\\xc7\\x00\\xf26OO5I\\x19\\x80\\xd3\\xe7\\x1fx9U}\\x9c\\xbc1\\xc9\\x00\\xc8\\xbb\\xb0\\xdbp\\x87d\\x1a\\x18\\xda\\xa5I\\x9e\\x9e\\xed\\xda\\xab]\\x9a\\x0b\\xd2X\\xbf\\x00\\x97MR\\x00;\\xb6\\xdb\\xcaF\\xf0\\xf1\\x9bg^C\\x03\\xb2 \\x94\\x1eI\\xca\\xfcBV\\\"\\xd7\\xa4;\\x16>\\xc0\\x1d\\xf9\\x87\\x8c\\xe1\\xc0\\xe0\\xb7\\x04\\xc2}\\xf7d_\\x13\\x0f\\\".t\\xe1=\\x99ZT\\xfb\\xd9\\x93\\xe4cp\\xa3Q\\x95'P\\x9d\\xa9Z\\\\\\xc2\\x897\\xf2:>\\xe3oG\\xc2\\x89\\xb6\\xe3I\\xce\\xbdG`\\xd6xj\\xf4(\\x11\\xd7F\\xd6T\\xcb\\x81]\\xdf]\\x13\\xfbj\\xb1\\x97A\\x1cI\\xa9\\x16\\xec\\x12\\xfe\\x01\\xe2\\x1a\\x8a\\xcf\\xc0\\x9aM/a\\x82\\x12\\xd7\\x8eMG\\x12e\\xf4\\xa7\\xeb\\x8d\\xcf\\xcbHl4\\x07ib\\xd3>\\xe5\\x12\\xd0v\\xe8\\x08o93\\xa6\\xd2w\\xd0\\x94h\\xf0\\x12\\x14\\xb0\\x9c[\\xcc\\xf4\\x83\\xd2\\xa8\\x1fk\\x98nr\\x08i\\xaaw\\x90rl\\x1d\\xf1\\x07o\\x19JP7E\\xa1\\x10\\xef^7Q\\xe8\\x93j0\\x03\\x99\\xc0C%!7\\x10\\x02\\x0f\\x8a;\\x7f\\x06\\xf5e\\x83\\xdf\\x97h)\\xfb,\\xbfm\\xa4\\xa6\\x8d\\x04rM\\xf5%C\\xa4\\x0d&i\\x900*\\xd3\\xdc\\xa8ad\\xcaH\\x92\\xe7\\x16\\x8aK\\xa6\\x8d\\x8c\\xfd\\x8btSZ\\x80\\xa7\\x0dpc?\\\"\\x95\\xcc\\xf3(\\x8dc?+\\x88J\\xe6\\xa9\\x0b<{\\xbfn\\xd6\\xd9\\xeb\\xf4Y\\x94\\x90Q#\\x1dB}W\\x1f\\xad\\x93x~\\x1c\\xa3!\\xb9p\\x07\\x14w\\x80\\x1aM\\x1cL\\x04\\x9d\\xf0PX\\xaf\\xe1\\xad\\x8b\\xa9\\xf6\\xd1\\xb0\\xd9z\\x18\\x93-\\x89\\x95F}\\xf5x\\xf76\\xf4\\x83\\x9b*{\\xdb70\\xb5\\xe0\\xb5\\xe8@c\\x0c/\\x8d\\x8a\\xe3UzFY\\x1f\\xec\\xd3K?!\\xce\\xdb1\\xbac*\\xc7\\x18\\xc0!l\\xbc\\\"\\xcd\\xcb\\xef/,\\xa7\\x05\\x1a\\x84\\x86\\x0f8Jd\\xba3q\\xa9\\xc6\\xcc?R\\xa8\\xce\\x7fV\\xc9H\\xdd\\x91\\xe6\\xc1\\xcf\\xcc\\xcb\\xc6\\x84D\\xca\\xb6V\\xcb<\\xdd\\xd8\\x97|a\\x8b>\\xbc\\x15\\xfb\\x94\\x85l@Z\\xe9\\xf8\\xbdp\\x91(\\xa8l\\xa4lt\\x17\\xa5+o<\\x88\\x89\\x9fO,5\\xadFj'.\\xbe\\xee)\\x06\\xe2\\xf4\\xb0UR![\\\\J\\xcf\\xcd\\x18\\x1e\\x82\\xf3C\\x14\\x12\\xf4O\\xa5\\xbb\\x009K\\xd5\\x94D\\xba\\xb9\\x88\\x8a\\x17\\x19IH8\\x03\\x8d#\\xb8\\x9fDk\\xbf\\xc4\\xb4\\x1c\\xca\\xeaX\\xca\\x051ig\\xfah\\xa0\\\\\\xff`\\x98G\\xdd\\xb6J)\\xdf\\xa0bF\\xa5S\\x8b\\x00\\xb2\\xfa\\\"\\xfe\\xa6\\\\\\x89\\xbf\\x1f*G\\x9a\\x99\\xd8\\xe7w\\x16.w\\x849\\x01\\x91\\x86\\x1b\t\\xa3\\xbc\\x06\\x7f\\xbe\\xfa\\x80P\\x99\\x89@\\xf0\\xccN\\x91\\x91\\xc0<\\x9c\\xf0*\\x87se\\x9dg~ar\\x04\\x19\\xed\\x94N\\xcd\\x96\\x9f_\\xb4\\x99i}\\xf2th\\x859\\xe3,\\xc8\\xa7\\x80\\xe1\\xa7\\xeex\\xc7\\xb3\\xb24\\x1c\\x8d\\x82\\xbd/\\x9bG\\x94\\xd2J\\xbd\\xd3^\\xed\\xedS\\xf5\\xf1\\xf3~\\x8c\\xa5\\xe9\\x0c\\xcd0\\x1d\\x92\\xfe\\xf4\\x10z&\\xe6\\xef\\xc3\\xea\\xec5}\\xa59\\xf3\\x01\\x0fa\\xe5v\\xa0\\x98cX\\xc3\\xf5K\\xc0b\\xe8\\x8d\\xb8\\x99\\xf9\\xe5\\n\\xdfW\\xf6\\xa3X\\xfbq\\xdc\\xa8\\xc5\\xe8\\x97\\xd0}\\xbd\\xe1\\xef\\xaa\\xfe\\x8c\\xcey\\xdd\\xe8\\xee\\x7f\\xb6\\x8aJr\\x9c\\xf9\\x01sm'\\x13\\\\a\\xf5\\xae\\xb2\\xaa\\xe2(M5\\xc0\\x07\\xb6&E\\xe1/\\x89\\xf6`\\xd1\\xa2\\x8bqHX\\x11t\\x12\\x92 e&rg\\x06\\x0eVB1\\x0c-\\xd8\\xe4\\x05\\x9a\\x9b\\xb24JJ%\\xf7#\\x1b\\x1b\\xd6\\xb6\\xd6\\xd1<M\\x15\\xe5\\xea\\xe0O\\xbcy\\x94\\x84.C\\x87\\\\j\\xd7v~\\xdc\\xac3(S\\xa0C\\xa1\\xd8\\x92\\xd7\\xba\\n\\xf1\\xa3M\\x96\\x86\\x9a\\xc0v\\xa2-r\\xa8\\x9c\\x97\\xf1QR\\x8b\\xeeN\\xc9\\xb1\\x04\\xed\\xb3\\xa8(\\xbd\\xa8\\xa0\\xffq;\\x9b\\xc1~3I\\xf6\\x12\\xf7\\x13\\xf6\\xd8\\xae\\xba\\xc4\\x87X\\x1a\\x90\\x069D\\x7f\\xdc\\x04\\xbd<r\\x8c\\x99\\xb4\\xfbt\\x9aT\\xcb\\xd8\\xfa\\xdc\\xce;\\xe3\\x13\\x12Rk\\\"\\x89\\xe1A\\x88\\xb8\\x1f\\x99\\xa4\\xd9o\\xe6?3\\xa1\\xbaR\\x1a\\xd5\\xc6Z+z\\xd5~\\xc5@\\xbbd\\xda\\xba\\x95R[\\xe7bz-\\xc7\\x19\\xf1\\x8a\\x94\\x0e86\\xb6#!\\x82\\x9f\\xec\\xbf\\xf5\\xca\\xf4\\x0d\\xdd.\\xac^\\x11\\xdc\\x00\\xe2\\x15q\\x14\\x10w\\xda\\xe9\\x98\\xa0%\\xd0\\xab#\\x06\\xe6\\x94\\xb9M\\x9e\\xb4\\xa54f_\\xf8\\xa2\\xd7\\xe5\\x97\\xa5^7\\xa8r\\xf7\\xfdi4\\xbc_\\x1cT-* ]\\xc2\\xe7P|\\xa2N\\xe2\\x89[\\xe1\\x1az\\x12VY\\xb2\\x1eG\\xe1\\xf3t\\x93\\xc8\\x82\\x8al\\x95\\xe4\\xb5r\\xbc\\x99\\xed\\xa3\\xa8\\xd2\\x19u\\xe6F\\x01^\\xe5G\\xeaOV{>dG\\xc9\\x07L\\xfdEz\\x83j\\xdf\\xa9\\xd3<u\\xeeW\\xa5\\xf3y%\\x05\\xa6\\x13i\\xe2\\x88t\\xf8\\x97\\x18\\xff'0w4\\x87`\\xb2vT\\\\\\xa4\\xc9\\xd4\\x81\\xdd\\xd5\\xaa\\xa4\\xdbnV;1Q\\xd0\\x0b\\xd9\\xc4\\x91L\\xca\\x8b\\x8c\\x08\\xf6\\x16\\xd9L7\\xe1\\xc7\\xbf\\xf43:=b\\x81\\xc6\\x9a\\x9dz`\\xae\\x99\\x9e\\xb3^i\\xf5\\xbe\\x9a\\xb80\\xd5`J\\x0b\\xceF\\\\&\\xddL\\xca|\\x08\\xac\\xb4r\\x06}\\x1b\\x1f\\xb4&pS\\xea\\xb1\\x0d\\xd0\\xb5\\xa8\\xefX;]\\xaft[\\xe8\\x193I\\x02\\xe8Q\\xaf*5\\x1fa\\xd2\\xcbo\\xd2\\xdcb,\\xa9v\\xec-\\xf2t\\xfd\\xe3\\xf1\\xc8=q\\xe8\\xa1\\x16\\x05\\xc8\\xe5\\xdf\\xfc\\xb5H\\x13\\xe7m\\x83s\\x1c_;Og\\xda\\xa3\\x17\\\"\\xc4\\xe0Y\\x94\\xbc\\xd3\\xa4\\x86\\xbf\\xee\\x0cb\\xe2\\xdeV%\\xa1\\xff,\\x19\\xc3\\xab\\xe0\\x07\\x13)?\\x18U\\xfc`2b\\x9c\\xcf\\xfe\\xd7\\xb0\\x81o \\xf9\\x1a6\\x94\\x1f\\x8cN6m~p#\\xe1\\x07\\x05\\xbf\\xf9\\xa1\\x18\\xc1h\\xa4I\\\"\\x8dY\\x16_\\xfbK\\xb4\\xe0\\xa2.\\xe6\\xb4q\\x83\t\\xaf\\x94\\xd9-\\x14\\x8b\\x05W\\xc8\\xbc5[\\xb68\\xeduF\\xa7\\x063\\xd6\\xf2\\x18`\\xa6?E\\xde\\xe8\\xf6\\x10\\xd5\\xfc\\x08\\xfd\\xc6\\x8b\\xec:\\xf7\\xf0\\x13pL\\x83\\xa2\\xd5\\xac\\x9d>\\xf2!N\\x1f\\xe9\\x80T\\x99,\\xa1l\\xe9/\\x97$\\xac\\x08w\\xa1\\xcb\\xf8\\x88\\x99\\x8b\\xcd\\x0e$&\\xe6\\xc1^Qh\\xc7]\\xa5[\\x92o#rf\\xaa1\\xf8\\x82\\xc39(\\x14\\x0e\\xb6\\xde\\xa6\\xb5\\xf5\\xb6\\n\\xa5\\xd3F\\xd5\\x03\\x9f\\xe4\\x93F\\x0f\\xfde\\xe1\\x8c\\xa148\\x0b3\\xef\\x19\\xe1T\\x12\\xa1#\\x89\\xd1V\\xbc3\\xaf\\x0c\\xd5\\xa6\\xa9\\xfa\\x89JX\\xe5\\x0b\\x97\\xf0\\xb3\\x80\\x9d\\xdc\\x16\\xa0\\x1ee\\xce\\xa8\\x03\\x9d\\x93\\x8d\\xda]\\x01\\xa0g\\xc7\\xe8^M\\x0c\\x8a)\\xbb\\xd2\\\\$\\xbdo\\xba\\xf0]u&\\xe8\\xf4p\\xc3a^t\\xaa9\\xf1M\\x13R\\xfb=\\x18|R\\x8d\\xbe\\x0f\\xc0z\\x98\\x0e`\\xf5\\xa1e\\xc1)S\\xc6\\x10\\xea\\xc8\\x80\\xb8\\xeat\\xfdfXFl\\xd6\\x86\\x0c\\xb6\\xe2b~f\\x91\\x05$\\xdd)\\x86\\xe4\\xa8\\xc0\\xd9\\xbb\\xa4\\xe1\\xa5\\xd5\\xd8\\xc0c\\xd8X:\\xa7\\xef\\xeck\\x01b\\x83Y\\xf4\\xd4\\x18\\x7f+.\\x11\\x87kHaJ\\xaf(\\x9cAZ%c\\xb2x\\x81n\\xb1D\\xeb\\x85\\xd3\\x84|\\x91=5\\xa3n\\x13\\xf8eN\\x16\\xd19\\x16\\xb6\\xab\\x97\\xc1\\xf8\\xf6*'\\x8b\\x198\\x7f\\xa9^\\xc2\\xd1X4[\\xd1\\x1bF;\\xf4D\\xc3\\xd6\\x7f[\\n\\xd6\\x04\\xc1D\\xf9\\xd1\\xbf\t|\\xc3\\xaa\\x8a\\xa8)\\xe6\\xad\\x86A\\xff\\xa7\\xb4\\x8e\\xd3.\\x80Ie!D\t&&\\xd9\\x03\\xa9\\xcd\\xa4ug\\xa0|kp*\\xe9\\x8btV\\x82\\x88\\x94\\xe0X\\x8b\\x1cB\\xda\\xd8\\xd5+\\xb9Y?F\\xc3\\xf7'\\x8d\\xc4\\x05\\x89w\\xca\\xff\\xe0\\xc6**\\x04\\xb6\\xe7\\xf5\\xbf$\\x9f\\xb8<\\xbf\\xcf[\\xfd\\xb8|*\\xdf\\x86&\\x16\\xb5\\xbd]\\xe5$\\x92y\\x18\\xf3Q\\x8c\\xdc\\x93\\x04\\x99\\x1b\\xd8co\\xcb\\x8a\\xfc\\xb7g\\xf5Z1\\xf0\\xba\\x03'i\\xe4z01\\xeb8t\\x13\\x93N\\xc9\\xd9N\\xfcs\\xec\\xd1\\xad\\xa8;s\\x18\\xa5\\xd4\\x9c!F33\\xf0P\\xe9_H\\xb4\\\\\\x953\\xc8)\\xb73Oc\\x96\\x854I\\xf3\\xb5\\xaf\\x8d\\xdfS\\x8f]\\x96\\x1c@\\x0d\\xde\\xf2\\x8e\\x8d\\xd3\\xe0]\\x95\\x8c\\x80\\xb2l\\xc3\\xbd\\x80\\xadD\\x0f\\xe1sa'}\\xd0Y\\x99\\xc4\\xfe\\x9c\\xc4x\\x1e)j\\x84\\x8f!i\\x9b\\x8aw\\xf6e\\x00e\\xfb\\xea\\xe4\\x83\\x16\\xb6\\x07\\x9bc\\xe3\\xbf\\xe0Zh\\x19\\x9f&\\x8b\\xf4M\\x1e\\xe3\\xf1D\\x7f\\x7f\\xef\\x17\\xe4\\xa5_\\xae4\\nGij\\x85T\\x95Z!R\\xa5V\\xf0U\\xa9\\x156\\xaa\\xd4\\n\\x85*\\xb5B\\xdcJ\\xad\\x80v\\xe86@\\x9d{\\x81[\\xaa\\xa7\\xfb\\xd7\\\"\\xf5Bo\\xce\\xad8\\x02\\x8d\\x1b\\xc5\\x97\\xa8\\xa4&\\xdc\\xd03k\\x95\\x16\\x1a\\x1d\\x0f;\\xb5\\xe6|\\xb1v:n\\x06\\xc5\\x82\\xd0\\x96&\\x9b\\\\M\\x8a\\x9c\\x13\\xa0\\xa8\\x03o^=\\xc32\\xb8%\\xfa,8\\xf0v\\x97\\x040:\\xc6\\xd6\\xce-\\xda\\x80\\xa1\\xf0\\x89\\xb1\\x14z\\xb3\\x00W\\x82\\xad`\\xc6X\\x18\\x80\\xb50\\x10s\\xa1\\xc2\\xde\\xd0/\\x0d2q2@\\xa3\t\\x00M\\xc7s\\x9e\\x92\\xf3\\x8f?\\xc0)W\\x04B\\xb2%1=y\\x0c\\xb2fZ\\x7f\\x81b\\xb2\\x85\\x82\\x8fC\\x93\\xb5\\x1f\\x19\\xe1}L\\x9e\\xe7P\\x16\\xce\\\"\\xfe\\xc3\\x8a\\x91I\\xb5\\xe2\\xa5\\x0d\\xcbc\\xd4P1\\x8e\\xd2\\xc5\\xb2^\\x85\\x9fDe\\xf4o\\xf2&\\x8fGnj\\x18.s\\x96\\xa1\\x92\\xce<\\xf6U\\x1c\\x1b0\\xda\\x90\\x8f1y\\xea/d^D%s\\xa2\\x8ctC\\xdb\\xbd\\xd7\\x0e]\\xa92\\x9d\\xa1:D#\\xf1\\xd3\\xb9}X\\xd5\\xe0\\xf5\\xa3\\x18\\xca\\x14=\\x07r\\xca\\x06?J\\x93\\xd2\\x0fJv\\xc3\\xbe\\x82\\x9e,\\x92[F\\xcb\\xda\\x13kv\\xc3\\xfeB\\xcb>--\\x8b\\xa3\\x80$\\x85\\xc1\\xdbA\\x99\\x89\\x88\\x11\\x84]h\\xdb3\\xd6\\xee@\\xaavU\\xa4G\\xed\\xa3c\\xcc\\xe0\\xd0\\xa5\\x0d\\xfa\\x01hH\\x90\\x96\\xa8\\xe8=\\xf7\\x99\\xa4%\\xe2'>\\xf0\\x1e\\xa6\\xdc\\xb2\\xdb\\x94_\\xbel\\xe8\\xeb\\xbc\\xa17\\xb9A\\x01n\\xd8\\xcc;o\\xb1\\x8f\\xb5s$\\xf6uqi\\x9d\\xdfL\\xea\t\\xe8H\\x05J\\x81\\x00\\xa06\\xa8\\x95\\xf8\\xdf\\xab\\xda\\x82/79il\\xc3/;\\xedZ\\xef\\xb4(Y\\x18,^\\x89\\xdd\\x8e\\xcc-db\\xa8T\\xb0B.6s\\xf8C$\\x10\\x96\\x15\\x98\\x9c\\x97$O\\xfc\\xf8q\\x1a\\x18\\xa6`S\\x9f\\xcc[\\x92\\x17,\\xdf\\x9a\\xf6\\x8dE\\xfdF+\\xa3\\x93\\x81\\x0c\\xd4o1G\t\\x03\\xfc\\xb6\\x01O\\xf2u\\xf1bqL\\xf2m\\x14\\x18_\\\\\\xd7/\\x06\\x8cE6\\xbd\\xb1lF\\x0b3n\\xc6\\xf0\\xc6\\x05%\\xbd\\xbe\\xd8S\\xb5\\xdb\\xe4\\xef\\xefG#\\xafL\\x7f<6\\x19\\xb0\\xe7p\\x08\\x17f\\x84:E\\xb0\\xc6,\\xeb\\xc1\\xcf\\xe0\\x10\\\"\\xbb\\x8a\\x8c\\xc0\\xeb=Fv\\xbc\\xdf9\\x03\\xfd\\x99a\\xc8q\\xe9\\xaf3\\xd3+\\xc7\\xec\\x15\\xcen\\x98\\xa0\\x1f\\xd5\\xd0B\\xb9w\\x89#\\xcc\\xca\\xe9\\xa4yFP\\x12\\xa0=$\\xd4\\xf6Ss\\xfe\\x10\\xe84\\xb6\\xf6U%\\xa6\\xc0\\xd4\\xd8\\xc1\\xa0\\x86\\xcc\t6WcV\\x1eZ\\xd5\\xa2\\xb6\\x9a\\x0c\\xbd8\\xcd\\x98\\xc1F\\xdd\\x0c\\x15\\xa5\\xd1\\xab\\\\\\xc7\\xafkkJ\\xd0\\x8b\\x92Uc\\xb5ZASui\\xf8\\x1a\\xa5.\\x12\\xdd\\xd8\\x8de\\xa6\\xdauE\\x0c\\x8e\\x0d\\x9b<\\x9e)\\xcc3 &\\xe9\\xca\\xd0\\xd9X\\x13\\n\\xf4\\x88vfjL\\xd4\\x03Z\\xe8\\x07\\xb4\\xbd\\xb4nH[\\xd8\\x05\\xae\\x8e\\x19\\xddj\\x99Q\\xe75=\\x82 ]@!\\x0e\\xa1\\x11\\xafq\\xb66\\x05\\x8b\\x18\\xfds\\x06\\xa1Q\\xe8\\x97\\xfe\\x0c\\xd66\\xc8\\x8dE\\xe9\\x96\\xa6\\xee\\x19s\\x9b\\x0c\\xea\\x1e??g\\xb0\\xb4\\xe9\\xe1\\\\\\xd3\\xaf\\x8f\\xb5\\xf0s\\xed\\xc2#\\xdf<\\x97G\\xfbV`\\xbd\\xbb\\xd6\\x02\\xfagU\\xf1%VY1c\\x95\\x153VY1c\\x95\\x153VY1cf\\xc5\\xac{\\x15\\xab\\xcb\\xbb\\xc4\\x1f\\xd7$I\\xe7'\\xf8b\\x89d\\xd7'\\xb3D\\x0er\\x7f\\xb7\\x13\\xa7\\x98\\xc2\\x93\\xb2\\x86:v\\x9e\\xa967y\\xac\\x03bv\\x1a\\xc1\\x9d\\x98\\xbc\\xdcK\\x94!uPLjkJy:\\xe8\\x98Y}\\x90\\xc9\\xbd\\x02\\xafy\\xcc\\x1d\\x93W\\xd9\\n\\xd54<\\xd6\\xd1p\\xda\\x1b-?\\x87\\x1c\\x93F0g\\x0c\\xa1\\xc6\\x80W3\\x83\\x9aS\\xab9\\x87Z7\\xd2\\xf69\\xa8p\\xb4Q\\x9f\\x14\\x972'7\\x0f\\x07V\\xdb\\xff\\xba\\x1d\\x0e\\x85\\xeap(T\\x87C\\xa1:\\x1c\\n\\xd5\\xe1P\\xb0\\xc3AF\\xf2\\x8b\\x8fO\\xf2\\xf5\\x1a\\xf4/$_\\\\\\xb6$_\\xf8\\xc5\\xee\\x12D\\xcb\\x98\\x03\\xeb-\\x14_\\xcb-t=\\xf8\\xab\\xfe\\xde\\xfa\\xc2N\\xfdY\\xf6\\xd6\\xce\\xfa\\x85\\xa6na\\x91\\xa6\\xea\\x0cN\\xffq\\xe7\\xde\\xf5\\xd8\\xb4\\xe2\\xe6\\x9fH(\\xfa\\x92RH\\x9bR\\xe8\t\\xe63g\\xe9\\x1f\\x8c\\xa6|\\xe0\\xf3\\xc9\\x83\\xec\\x1a\\x19\\x84\\xe4\\xc2@$\\x8d\\x8b\\xded\\xa1_\\x12\\xd6\\xb0\\xccx\\xfb\\xc9s\\x0f]\\x9aL~`\\xa9sP\\xd0\\xb5\\xd4\\xb2\\xff(\\xd5\\x1aR(\\xddq\\xe2\\xd4\\x0f\\xa3d\\xc9\\xb2\\x1a\\x97\\x1e\\xff\\xf3\\xb8\\xf4\\xcb\\x8dVH\\xa4x\\xeb,\\xfc(&\\xe1\\xe0w\\xd1\\xad\\xd0\\x0b6yN\\x92\\x92c\\x88Az\\xfd\\xfd\\xbdV\\x10E\\xd7;w\\xe3aA=\\xda\\xb3\\x9c\\x84\\xce\\x88{\\x1b6\\xef\\xff\\xc5\\xf7}m\\x16\\xf4\\xa6\\xe4J\\xff\\xc5\\xb1\\xa1\\xedno\\xca\\x7fWU\\xe3\\xaf\\xe6\\x80\\xc4\\xf1c\\xbdJ?Jv\\xc8I\\x9f\\x0fk\tD\\xceL\\xf5\\x84\\xaf\\xd3y\\x14\\x93\\x19L\\x0f\\x86\\xf6\\xc5\\x89\\x92lc\\x9fj\\xa8\\x8e\\x8e\\xe4\\xb3\\xc0_W\\xbe\\x9c\\xc5~@Vi\\x1c\\x92|\\x06\\x0eC\\x1d\\x98_@\\xe9/5o\\x95\\x17\\x19\\xda\\xb7\\xc8\\xb9\\xee\\xdb\\xbdDEM\\xa2\\xa9~\\xad:\\xf8kLq\\xca|C\\x9c\\n[\\x1c\\x07\\xb4\\x8a\\x87\\xb0*0n\\x8e\\x82\\x92\\xdb\\xcd>p\\x02\\xef\\xeb\\xc9Ke*^*S\\xf1R\\x99\\x8a\\x97\\xcaT\\xbcT6\\xac\\xa4xF\\xb9\\x82\\xd6]\\x0c\\x8c\\xc94\\x913\\x0b\\xfc\\xd8t_\\xca\\x85e\\x1f\\x9f\\x0b\\x0b\\xe1\\x10\\x9e\\xf0\\xf6=d=\\xe8\\xeei\\xf7Y\\x1fH\\x03\\x9d\\xf0\\xda\\x0e\\x9e4/k\\xae\\x0cx\\xef\\xd4\\xdc\\x92\\x1d\\xa7$\\\"mi\\x9f\\xf4\\xaa\\xcd-\\x83\\x8fXht\\xe9\\x97DZ\\xc1U\\\\Qq\\x14F\\xe5\\xf7\\xe9\\xf9\\x0c\\xf6\\xa6Fb\\xe1(\\x89|d\\xd8\\xc5p%\\x0c\\x10\\x0cJ\\xc0\\x08\\x03x\\\"\\x10\\xa9r\\x18\\xfb\\x875\\xae\\x8b\\xe6\\xd4\\xd7\\xcc\\x92\\xb5yLu\\x9a\\x0c\\xcf\\xb6\\x08\\x92\\x91h\\xf3Mh\\x87\\xa2J\\xf46t\\x04\\x9f\\xcc\\x9f\\x8d\\xf1\\x99\\xe2\\xdc{\\x94&\\xc5f\\xad\\xcb\\x9f\\x08\\x95\\xd3Z\\xe6\\xe7\\xfeZ\\x0f\\xc8\\xbc\\xd6\\xa2\\x82\\xd7\\xcc\\xd6\\x03GC\\xd8c\\xa8\\xfc\\xd62\\xbf\\\\=\\xb7H\\xd3\\xb1\\x19`\\xc6\\x01N\\xe17\\xae\\xf3=\\xab\\x88\\xa3aM\\x81S\\xf0\\x8d\\xeb\\xbc&\\xe7\\xe5w9\\xf1M\\xe0\\x19\\x03_E\\xcbU\\x1c-W\\xe5\\xa344:\\x90\\x85\\xec\\x9dF\\n>\\xd3\\x1b\\xe8\\xbd\\x1da\\xf1L\\\\+R\\x92\\xfc\\x97\\x08g\\xcb\\xff\\xfe\\xe2iH\\x922*/\\\\\\x9f\\xfb\\x9c\\xe7#\\xaf.\\x9bR8cn\\xfa~\\x16\\x15\\xe5\\xc8\\xed\\x1eY\\xddk\\x8b\\xe54\\x1b\\x9dc[\\xc5\\xf5\\xf9Gs\\xf2\\xdb\\x86\\x14\\xe5#\\xfb\\xde\\xaf[HL?\\x8d\\x98\\xd9I\\xe5*n\\x0b\\x9f\\x05\\xd9\\x1b\\xb3\\x9a\\x91\\xa1D\\xa1z\\xa0o\\x7f)\\xdaG\\xc2\\xaf\\x87\\xbd\\x80CX2\\xf1X\\x0f8G\\xc0\\xea\\xa00z\\xab]Y\\xd5\\xe6y\\x1a^L\\x10\\x0b\\x0c^\\x0fN\\xe8\\x97>\\x83\\x9c`\\xcc\\xc6\\x0c\\xf2f\\x04\\x87\\xfd\\xdbQR\\xbf\\x1b%\\xba\\x9a_c\\x98\\xd3eM5\\xd55\\x17\\xbb\\x0d\\xf6\\xf4\\x14\\x19~\\xb8\\x01\\xee\\xaaa}t J\\xb6~\\x1c\\xb1\\xec\\x00\\xa6Aq\\xf2{a\\xa0um\\xd1a\\xe5'aL^\\xf0\\x9b\\xea\\xb1\\xd3\\x9dwAG\\xaf\\x1a\\xb9\\xd1\\x19H5rbUaT\\x0cN\\xd3CM\\xd9\\xd5\\xdd\\xd1p\\xc22\\xb2\\xea\\x0bj\\xeb0\\xe22m\\x930*\\xb5\\x0d\\xab\\x1a-\\x0648\\xc7\\x14\\x14e\\x02\\x81\\x9f\\x04$\\x06\\xc9\\xda\\xb0\\x8e\\x80\\xa8\\xa4\\x16F\\xa5\\x1a\\xca\\x88}\\x8d4\\x15e\\xba\\\\\\xc6\\xe4\\xa9 3\\xfa\\x9d\\xf7\\x10\\x9cG\\xd8C\\xec\\x08}\\xa5\\xaeZ\\xa0Yz\\x96\\xc1\\xc14\\x1f\\xabr\\x1d?\\xc1:\\x0e;\\xcdw;\\xde\\xc9y)\\x8e1\\x91\\x89\\x16XY2\\xf5\\x07\\x8c\\xbej\\x1c\\xff\\xb7\\xfa\\xe9m'\\xbe5q=\\x15%08_+\\xb0\\xb3\\x95|Y\\xb3/\\x95I\\x9dzw\\x15\\xdee\\xed\\x98\\x93\\xfa0Z5\\x8f\\xcb\\x9e\\xc8#\\x8eO\\xe1\\x1b\\xa7M\\x00\\xdc\\x9e\\x00\\x1c_\\xf7\\xbd\\xdf\\xdfw\\xe5\\xf7j\\xfeB\\xf9\\x83GU\\x0f\\xc2\\xea\\xf9\\xfb\\xb6r`\\xdb\\x14O\\xbb\\xfcr\\x93Gn\\x1f\\xc1=^\\xbf\\xf9\\x19i\\xc2E\\x91\\xfb\\xa9\\xd4\\xf1\\xc3\\xdc-H\\xcf\\x073\\xaf 1\\xbb?\\xab\\x99\\x89\\xa8\\xca\\x1b\\x82\\xea\\xa5T\\xa8\\x97\\x14\\x9a#\\xca&\\xdf<_\\xc77#\\xaf$EI\\xc5Y)\\x1ce\\x90q\\xd9L\\x80h\\x15\\x81\\x87\\x90\\xf0\\x18\\x10\\xda\\xd3\\xd3\\xf35\\xab\\x0e\\xd6\\xbc)\\xf3\\x1c\\x8a\\x16\\xe0\\xf2\\xce\\xef\\x1d\\x1eB\\xa1S\\xac\\xc7p\\x08{\\xc8\\xf1a\\xf2\\xc2\\xdf\\xdf\\xd3Q\\x16r\\xa6\\x89x\\x05)\\x8f)\\xab\\xe6\\xea\\x84#\\xdc\\xec\\x8a\\x1a\\xd6\\xa3q3'\\xbe\\xde\\x13\\xa9\\xf8\\xe7:\\xd6*\\xf4\\x1a\\xca\\x00E\\x82s\\x89\\xb2\\x0eH\\\\\\x10\\x9c\\xdbVr\\xfe\\x02\\x8f\\x01\\xd7\\xc19VuK\\xdf%mw\\x90\t\\x91\\xb5\\xa8iL\\xfb\\xb96\\xa5\\xe1\\x02?\\xfb\\xa6\\xf5\\x86\\\":\\xe9\\x15\\xcbn\\xe9v\\\\\\xca\\x95D\\x89\\xb7H\\xbc(Y\\x90\\xfc\\x18K\\xfc\\x8f\\xdc\\x9cG\\xdb\\xa8\\xf3\\xac\\xd1\\xf7\\x16\\x14\\x8d\\x8f\\xb1\\xc7\\xe2\\xc5\\x14\\xf5\\x9d\\x8a\\xf9`\\x05\\x16~\\xc9\\xa3\\x92\\xbcH\\xe2\\x0bi\\xbeK\\xc5\\xbc\\x88io\\xcd\\x8cBa&\\xf4\\x9eI-C\\xa8\\xc7O\\x81\\xfe\\xb9\\x96\\x94&3\\xee\\x15\\xbeO\\x14\\x12\\xb2a\\xf1\\xe9.:\\xadKl\\x8c!\\x95\\x8f\\xfbt\\xc8\\xc0]\\xd2\\xa9\\xdd\\x01\\x7f\\xfc\\x01\\xe1\\x88\\xc1K?\\xdff\\xc0\\x87\\xa2\\x9d\\x0d\\x1d\\xce\\xbb\\x043Q\\x10\\xcc\\xb4C\\x81Up\\x94\\xb0\\xe7T\\x88m\\x19\\\\\\xbd2\\x8f\\xd6.+\\xc8\\xa67\\xc46\\xb6\\xb0\\xb2l-'\\x13\\xfdX\\x17\\x05vvXI\\xdd\\xb1\\n\\x0d\\xd5t\\x8daf%\\x1b\\x7f\\xc7N\\xb1Jj\\xcc\\x97\\xc2K\\x98\\x1f\\x95!\\xf9\\xbd\\xdc\\xd2q=]\\xe9\\xaf{\\x05\\x02\\xfa\\xe3\\xc1\\xfd[\\xa3?G\\x11\\x82?\\x9fC\\x18#\\x87O\\xd2`s\\xc9\\x12D\\x9c\\x04\\xb1\\x822\\x94C\\x08\\xd3\\x00\\xc7\\xe1\\x91s\\x12<J\\xd7k?\t]'H\\xb3\\x0bs\\x8a,\\x19\\x95\\xfa`\\x9e\\x19\\x1eWB\\xaa\\x99\\xb6\\x92s\\x0dq=\\xa7\\xe4\\n\\xbc\\xdf\\xd5\\xc1\\x99uqI\\xe7\\x11\\xcb\\xddd\\xfa\\xa2\\x9aJ\\xb6\\xeb\\xf7dT\\x9a,Juvye;%9/\\xfd\\x9c\\xa8\\x0b%\\x02\\x8ab\\x88J-e\\x17\\xdeQOnN\\xfc\\x90\\xf1F\\xcc6\\xae\\x86l\\x8d\\x84N\\x8b\\x1a\\xd4*1h\\xabX\\xe6%r\\x81\\n\\xb6H>\\xa5\\x1f\\xd4\\xfc~\\x1d\\n\\xe6\\xf4\\x0f\\xa5\\x0d=\\x94\\xa6\\xb2S\\x89>\\x99\\xde\\x97\\x1dK\\xf4\\xc9\\x83\\xa9*\\x8eMM\\x81\\x847\\xda\\x89\\xa4\\x14\\x01e\\xdcd\\xf5\\xa7*\\x9b\\x8f\\xeb\\xac\\x88\\x1f\\x92\\xbc\\xe8\\x8a\\xa4T\\x1c-\\xbdlS\\xac\\\\\\x86j\\x98\\xb0\\x93\\xfd=\\xf9\\xa73\\x16\\xaf\\xb3<\\xba\\x18\\xc3\\xc9\\x1f\\xff\\xcd\\xf9\\x1bV\\xcf\\xac3\\x14\\xc1\\x0d\\xf8\\x9b\\xf3\\xb7\\x11\\x8f\\x8f\\xde\\xa0IB\\xc5j\\xd2Suo_\\x8ej(\\xf6*\\x0c\\xc8\\x81$g\\xa8\\xb8\\xca\\xfcB\\xb1\\x11*\\x87\\xc6\\xc5\\x18mO\\x9ds\\xa3;E\\x1eI\\xca<\\\"\\x05\\x15\\x92`\\xcf\\xc5B7\\xf48\\xcd\\xbc\\x84\\x9c\\x97\\xeeh\\xe4\\x85iBF_\\xf3Q\\x98\\xcc\\x91\\x98\t\\xcc\\xc6:\\xb2\\xe2]k\\x1c\\xb9\\xe1\\x18\\x0eL\\xeay\\xca\\xb3\\x9d\\xec\\x1b*T\\xac\\x11j*q\\xc4\\x14\\x17E\\xa2uc\\xf5\\x7f\\x00\\xa7\\xbb\\xda[\\xb8\\x01\\xce\\x0c\\xf3\\xa7\\xad\\xf9j\\xcbiA\\x9f\\x10@\\xe0\\x97\\xc1\\n\\xd4'k\\xcc0\\x02W\\xb8o/x\\x0f\\x8b(\\xf1\\xe3X\\xb5\\xc2\\xea\\xb5\\xa7\\x17S\\xa2d\\x1e?\\xb4\\x1a\\xbf]\\xc5\\x00\\x0c\\xcd\\x01\\xdf:\\xf1\\x08\\xcaU\\x9e\\x9eq\\xf7\\xa0\\xee%\\x99\\x87\\xffR\\xffE?\\xc8Qq\\x9e\\x86\\x17\\xb2\\xd4:\\x14\\xc4Yo\\xe22\\xca\\xfc\\xbc\\xbc\\xb9H\\xf3\\xf5$\\xf4K\\x9f9Z\\xe1\\xc8\\x9c\\x97/\\x8e_\\xb3\\xbf\\xbb{W\\xc3),5\\xfb\\x11\\xb8\\x85O\\xe7\\xd41\\xd7\\xecK0\\xaeO\\xb5?O\\xc7\\x98\\x91C\\xbe?\\xd9\\xa4\\xe0\\xe6\\xbc8&\\xbf\\xf1\\xddI{\\xee\\x9e\\xc2!\\x9cuw\\xe7\\xd2\\xb8;\\x81\\x8f\\xfe\\xa8\\xbf\\xf1N\\xf9\\x865n?\\xe0\\xb9>\\x8e\\x8c[\\x10\\xf86<\\xd2nC\\xc0\\x13\\x81\\xef\\xc1'\\x0e\\x06\\xcdGIQ\\xfaI@\\xd2E\\xcdu{O\\\"\\x14\\x16Z\\x1b\\xf4\\x9cn\\xd0\\xc3\\xff?nP/\\xf1\\xd7\\x84\\xfe\\xfduy\\x91\\x91Cv\\x8f\\xfe\\xe4;\\x17\\x05\\xea\\xde\\xbb\\xc6\\xbd\\x0dR\\xbc\\x06\\xab=\\x0e\\x02\\x93\\xf6\\xc7\\x881r\\xbb\\xa0\\xcd\\xe6\\xd3\\xe3\\x13\\xbd\\xf60\\x98\\xff\\xac\\xb1\\xe7\\xcf\\xf4{\\x1e,\\x9b\\x06\\xbe\\x0f/\\xc4\\xde\\x9f\\x0f\\x9d'\tuC\\xc5g\\xb5\\xeca\\x83\\xf2v\\xa4\\xa86\\x81\\xf0r\\x82\\xee\\xa0\\xee\\xcd\\x7f\\xfd+\\xb9\\xb9\\x1c\\x83\\xe3t\\x15{|\\xfc\\xa5\\xac\\x9cu\\x9b\\xa3\\xf19wrKQIo\\xf3\\xf1\\x84\\xd8\\xeb\\xc6\\xe8}\\x89Y\\xf9\\x12\\xb3\\xf2)bV\\x06D\\xabD\\xa8r\\x0cVdmU\\xf3\\xba\\x01n\\xf5y!~D&\\xa7:a\\x0c\\xd4eic\\xf6@\\xc6\\x97(\\xf8\\x05t\\x84\\xab\\xea\\x0b\\xd6#C\\\\\\xc9\\xafa(M\\xcb\\x07\\xf3\\xb2u\\xbc%\\xca\\x9b\\x02'@a\\xfdc\\x06\\xa6\\xc6\\xfa_\\xd3\\n\\xdeM\\xf74\\x16\\xfa\\xc2Q\\x10i\\x13\\x1fb]\\xae[\\x05\\x8eyt{c\\x16\\xaf_~\\xec\\x1f@\\xf9\\xa6W\\xbaU\\x9d\\xd7\\xef+\\xd2\\x9e\\x86\\xdd4sf\\xc7\\x95\\xdai\\x85\\xf7j\\xb8\\x12\\xcd\\x98r\\xb4\\xa9\\xe3\\xe2\\xad\\x98\\xcaA\\x1e\\xf3\\xceh+\\xb1\\x98\\xeb|+\\x8aq\\x1b\\xd5^\\xcaB1\\x9c\\xcc\\xa2H2\\xa0\\x8e\\x9fi\\x9d,Kv\\xf3\\xde\\x19T\\x0b\\xac\\xb0\\xb7\\x12\\xc4\\xb6d\\xb7iK\\xed\\xae\\xe0\\xbb\\x9e\\xf15_\\xf8\\xbe\\x0f\\xc4\\xf7\\xfd\\xf9\\x0cL\\x9f\\xe2\\xcc\\xa8Y$\\xd3\\xb9a\\x19V\\x90\\x0f\\x08\\x12`.\\x16U\\xf8\\\"?\\x865\\xda\\x92\\x08_\\xe0\\xc4\\xde\\x1c\\x1b[\\x90`\\x93G\\xe5\\xc5c\\xba\\xaf\\xa3\\xd2T\\xeb\\x98n\\xa5\\xdc\\x18\\xef\\x1b3(\\x7fS\\xae\\xd2<\\xfa7\\xf9\\xbe\\xa4\\x14v\\xaf\\x1b\\xc8\\xd6\\xbc\\x02\\xf6\\x8a8\\n\\xaf\\xc0\\x1e\\x86\\x91\\xba\\xbc\\xd8\\xe4\\x1f\\x7f\\xa0\\xbf\\xd3\\x95X\\xbdX\\x17/\\x11F\\xbb\\x19\\xd6Rq%q\\xb4\\xcd\\xd9POD\\xa0\\xedZ\\x93+\\xd2\\x87\\x90\\xb2\\x8ek\\xf3[5\\xb6\\x95\\xda\\xd8U9\\x08\\xebV\\x8f\\xc7OW)\\xae\\xfecs]}R\\xef\\x0dy\\x9cj\\xe0\\x16\\x8d\\x8e\\x06\\xea\\xa3\\xf5:\\xfbn\\xa8\\x02K\\xad\\xd5&\\xdb\\x0f\\x1fP\\x1aq\\x1f*Q\\x85>4\\xf9PA#\\x9fF\\x9a\\xbc\\xc6\\x97\\x19\\x8dh\\xdfs\\xc5\\x8du\\x1a\\x92\\x98R\\xa61\\xec\\xf1@U\\x8f\\x9cg~\\x12\\x92p$T\\x1d\\x06\\xd7X\\x01?\\xeb\\x7fBA\\x01\\xfa{X>\\xbd\\x1b\\x93\\xd6\\x04#\\xed\\xaa\\xd6\\xe401\\xc2\\x04b\\ny\\x1c\\x99RCe\\n\\xd7\\xadG\\xab\\xe8S\\xb7\\xa5\\x19\\xc4(s\\x8b\\xd5\\x7f\\xc9\\x9d\\x04\\xdbP\\xfd)\\xe9F\\xf3~\\x18\\xde\\xcb&\\x82\\xf7\\xc3\\xb1a\\xab($\\xc7$^\\xbcH\\x8epZM\\xbc\\x98~\\xa5\\xa1b\\xc3*\\xb4V\\xe8|\\xe8\\x9eH:\\xf1\\x80\\xd5\\xde\\xc8{\\x8e\\xa10D\\x03\\xf2\\xa1\\xb5?b\\x0e\\xd0\t\\xbe\\x9e\\x92j4\\x83v\\xec\\x0e[\\xd5v\\x1e>\\x01W\\x8fZ\\x10\\x13\\x0e!3\\xa6\\xd2\\x06\\n\\x93O\\x15\\xbd\\xd9\\x9f_\\xb6\\n]\\xcc\\xd5\\x85\\x9b\\x0d\\xd1\\xe8$\\x98\\x01D]\\xde\\xb6\\xa1\\xd6[Eq\\x98\\x93\\x84rF\\x1f\\xa5i]\\xa8\\xa1\\xb9!Y\\x98Yu\\xaei8J\\x1b/\\xad`\\x93\\x17\\xa8t\\xcb\\xd2(Q\\xe6\\x8b\\x83\\x1e\\xf6Vw\\x99\\xe4\\xfc\\xa7\\x1d\\xdc\\xee\\x03kU\\x92\\xa0Du\\xc2\\x06\\x87q\\xb1\\xb2]\\xc2\\x03\\x8a\\x9c\\xfa\\x18T\\x84\\xefb\\xca~\\xf9\\x17$H\\x0e\\xb3&l\\xf7\\xf04R\\xa9\\xbeP \\x13\\x06\\x16\\xad#Z\\x12\\xbd\\xd6=\\xd8\\x9d\\xdf=\\xcf{\\xdf!q\\x0dv\\xa8\\xe3\\xf5\\x81\\xe4\\x89\\x0b?\\xad\\x07\\xe2\\xe8i\\x13\\xc5\\x8e;a\\x97\\xe2\\xd0\\xef\\xd7C\\x1a\\x7f\\x06>\\x7f\\xd7R%8f?\\x14\\x86\\xfb\\xeb\\xac\\x1c\\xfc<$\\x18?(\\xa3-y\\xed\\xcf\\x07\\xd9J+3l\\xe8\\x97~AJ\\xf4\\xc8\\x91\\x1f\\xd9V2J\\xd5\\x0b\\xb5Z\\xa2w\\xfbrB\tj\\x02\\x93E\\xb4T@1\\xb1\\xc4\\x10\\xd8\\x19`\\\"\\xea*\\xd7\\xf0sJ\\x81_!_\\x15%K\\xa5\\x08\\xe3\\x88\\xf8}d\\x11\\x03tmC\\xe2\\xdd\\xb8\\xe1\\xd2OW\\x80\\x16i\\x8a\\x1a3\\x18S*_\\xb51\\x93x\\xf0}l\\xe1\\xe5*Y\\xedF\\xd6\\x19\\xb6\\xc5\\xeb?\\xe9\\xec5\\x0e\\xa7\\x16\\x9c-\\xef\\xdd\\x98\\xc7j\\x0e\\xad1\\xb2=\\xa7\\xd7\\x8a\\xf7\\xb6\\xd3|\\xef\\xa0RG\\xbd\\xa3&\\\\6\\xe5\\x92!N\\xa5\\x1a,\\xb2M(\\xe4\\xd7\\xc3\\xd1l_\\xa8|\\xc4\\xe9`\\xf4\\x95\\xf5\\xe8V\\xf7;\\xbb\\x98\\x9d\\xe1\\x8fI\\xa6{\\x91\\xee\\xd1\\xd2u\\xf0\\x85_\\xb8\\xbe\\xf8\\n\\x94\\xe8J\\xa0\\x8d\\xde\\xb8\\xdd\\xaa\\xf6\\xe5\\xcf\\x07\\xeb\\xc8\\x9d8\\x1a\\xf2\\xfd\\xa8$k\\xe43kZsx\\xd8\\xcc\\xac\\xd38[\\x1e\\x82\\xc3w\\x16\\xcf\\xcb2\\xb8o\\xfa\\xa0\\x95N\\xd7\\xe2(y\\xa7\\xca\\x10\\x06U2\\x1b\\x9e\\x04\\xc71\\xa7Si\\xcb\\x0f\\xd5\\xb0T\\x83\\x88\\xe8x\\x8f\\xc2\\xa8\\x04\\x8c1e\\xd97X#\\xfc\\x0e\\xab\\x82\\xa61\\x8e\\xec\\xba\\x14\\xfc\\x1c\\xb9^\\x0bA{\\x16\\xf1\\xe4<\\xad\\xc6mW\\x88\\x8d\\xea\\xca\\xd6\\x87\\xed\\xd8:\\x17\\x8a96\\x8bGr\\x99\\x11\\xfd\\xab\\xaf \\x1d\\x83q\\x194\\x95\\xd0\\xb4\\xe6 Fl\\xb5\\x95R\\xda\\xa5I4\\xb4\\xbe&\\xa1\\xdat\\x07\\xad\\xc3@\\x9b\\xf8\\x84\\xd44s\\x06\\x9ab\\x96\\x82\\\"\\xeb\\xf2\\x9d\\xf6\\x1e\\x18%\\xc6\\xcf\\xdb\\x8c\\xb4\\xa0\\\"VObJ\\xf9\\x93\\x9eT\\x16\\x89Wd\\xc2\\xd7B&\\x95m\\xf8\\x83^\\x1b\\x05\\x7f\\xd0\\x93\\xcab\\xa9\\x81\t\\xc5\\x1f7n\\x8a\\xe5j\\x03\\xd3\\xe2\\xe3\\x8bg\\x99\\xadx\\xa6\\xf7\\xd9\\xcd\\xc7\\xe0\\xf7O\\xf2.\\xef{m|vE\\x92\\xf0MOLT\\xf8\\xec\\xa6}QQ\\xef\\xb3\\x9b\\xd7\\x06\\xab\\xc3\\xf6\\xd6Q\\xf1\\xa8\\xb9,q<`\\xb5(YF\\xf9b\\x95\\x9e\\xb9'\\x8cr\\x16\\xce\\x18\\xc8[\\xfa\\xed>\\x1d\\x183'\\x8aqw\\xbct\\xc5,\\xbda\\n\\xa9P\\xe3\\xdb\t5\\xd7\\x9cw\\xb7a\\x8c\\xd3\\x06\\xdf\\xaa;\\x84#C\\xe8SS\\x1b\\xdf\\\\\\xd2\\xea\\xb8@I6j{\\xfbv@\\xbc\\xa88^\\xa5gIs\\xe9\\x1b\\xd0\\x94\\x03x\\x8bY\\x08\\xf4\\x07\\xb4\\x1dG\\xc2T\\xa4\\xf3\\xf4\\\\\\xc9\\x1b\\xab\\x9aI\\xc7]\\x0d\\xcb\\xef-u\\xbf\\xae\\x07\\xcd\\x83\\xd6x|\\x92P\\xeb\\xc1\\x11\\xb2\\xd3U\\x13\\xafV++K\\xe6\\x04\\xca\\xfe4\\xb5\\xcb\\x8f\\xed\\xb2k\\xc8\\xc2\\xfb\\x94j\\xf4\\xb3\\xde\\xc0\\x8egul<\\xa33\\xbck8\\xa3]\\xddCP\\x1e\\xe2\\xc0\\xb7\\x15\\xdaK\\x1c\\xde&\\xe5L\\xa1\\xc4\\x983\\xd1\\x8b\\x19t\\x8c\\xd0\\xe2\\xa8\\xe6\\\\\\x80_\\x14\\xd1\\x12m2f\\x9dEu\\x1c\\xd0\\x86\\xa7_C\t\\xdf\\xf4N\\x85\\xaf\\xa1\\xa4\\x94_\\x8dF[\\x9e\\xc7\\xa6>\\x14JM\\xb0]\\xd5dN\\x87\\x96\\x8cD\\xb7\\xab\\xa4\\xdf\\xde\\xca/^\\x9c%\\x82\\x8da\\xdaB\\x8c@\\xc0]KNrz\\x02%'\\xf9[\\xdbHXh\\x1c\\xef}\\x9c\\xe8#`j\\xe3.Q\\x9d\\xd8D{\\xd8@s\\xc8\t;P\\x13\\xf8\\x06\\xcajv\\x13\\xfd\\xecBc\\x85\\xcb\\x93\\xc4\\x10\\xc6\\x98{$\\xd9\\xacI\\xee\\xcf\\xf1<l\\xfd\\x89\\xc5$\\xc6X\\x13\\x91n\\xfa\\x8d\\x00\\xda\\xdb\\x1f\\x03\\xcf\\x9eF\\x97\\x04\\x0b'\\xba\\xb9w\\x96Ge\\x051\\x1a+\\x98LB?\\xf8\\x8e\\\\H#D\\xc4e\\x1b\\x94\\x07\\xf5BU\\xf3_\\xf2\\xf0\\x13\\xcd\\x14U\\xfc\\x06e\\xdd\\xdc\\x06*\\xd1\\xbd\\xc7+AbZ\\xa8\\xbc\\x97\\x93P\\\\\\xfd\\xbe\\xbcwG\\xfdm\\x16\\x19\\x95\\xd1\\x15ZD\\xa6:WV\\xbc\\n\\xf0\\xc8\\xc7=\\x974CR\\xcb\\x91\\x88\\x84L\\xc8\\x19\\xbc\\xbe\\xc8\\xc8Q\\x9e\\xa7\\xb9\\xeb<\\xf2\\x93$-\\x81\\xee\\x19\\xf0\\xd9\\x11\\x03~\\x01~\\xd5\\x9aJ\\xb0\\xe6l\\x99*\\x01\\x1f4\\x86f\\xec0\\x88N\\x93f/_\\x91\\x05\\xc9I\\x12\\x88\\xae\\xd2\\x06a\\xe5\\x17\\xc9\\xdfJ\\x98\\x13\\x92\\x00\\xba\\x9c\\xfaqT\\x90\\x10&Pl2\\x92\\xbb\\xa3\\x16\\x04\\x1d\\x16\tu%\\xf7\\xa1\\x9e\\xdf\\xbd\\x12\\xed\\xd2)\\xa2\\xad\\x03{\\x87\\x98\\xb9\\x93N\\x1e\\x12\\xd8jBZO\\x18\\xb3/\\xc7\\x11h\\xcc\\x93\\x1b\\xb5YW\\xbe9\\x96\\xa4|)\\x90\\xef\\xc5\\xc2\\x8d,\\xdd\\xa3A\\x8a\\x81C\\xf0\\x04\\xa3\\xd4\\xe5C\\xfa\\xea+V8\\x06\\x95\\xd0\\n\\xb49\\xa6\\x93M\\x0f\\xdc\\x9c\\x14\\x05\\xc5\\xde\\xf5\\xa6(\\x81D\\xe5\\x8a\\xe40'\\xec\\x03i\\xde\\xc0\\xa31P<s\\xe0F\\xd5\\x90bUH\\xbd\\x1d\\xeb3\\x8a\\xf10.v\\xae\\xb5_5\\xecR\\x9a\\x14e\\xbe\\xa1\\xbc\\x99\\xc9\\xf2m\\x17\\x9fQSF}\\xf1\\x04z\tZ8\\xd3F\\xec\\x03\\xebfE[\\xa5)\\xf9\\xc4\\xa5\\xa0\\x89#\\xee0\\xe1\\xf2\\x99*Z\\x18\\x05\\x0fAz\\x9f\\xe3\\xc6\\x0c%W\\x81\\x96\\x87R1\\xc5\\x8d\\xc6\\xd0TF\\x8c!\\xa5\\xb7\\xb4\\xe5\\x1a\\x8aU\\xba\\x89\\xc3\\xea\\x9d7\\x98\\xad\\xd4\\xb2r\\x806 G\\xb0\\x1e\\xb8=\\xb4\\xf3\\x9aJ\\xe4U\\xf8\\x16\\xa6t\\xae\\x1a\\xc9=k\\x1ed\\xfa\\x16\\x1e\\xb6\\xff\\x9c\\xf5L\\xe3\\xdd+j%`\\xa7\\xfbZU\\x00\\n\\x1at\\x86\\xf93\\xb0\\x14\\xae/\\x12\\xe6\\x03P\\x93\\x84w\\xe4\\xa2ps\\xe4\\xcaI\\xab\\x0e\\xc5h\\xe4\\x91-\\xc9/jvQ{\\xc85ZL\\xbc\\xa8@>h\\xcc6OV(\\x99!@\\x9c\\xc2\\xa3\\xbf\\xddM47)\\xfa\\x99\\xd2s\\xa0\\xdf=\\xedJB\\xa7{\\xe9\t\\x95\\x93\\xa3\\x13\\xa2\\xed\\x98|\\x0f\\xf4\\x91\\x96r\\xea\\x1d\\xc3`\\xf7x&\\xde\\xd3\\xf5z\\x83\\xbb\\xb4\\x95d\\x18\\x0e!\\x1a\\x03i0\\xf1\\x91\\x86\\x97\\xd1)\\xcc@\\xaa4\\x83\\xf6@\\xde\\xb3\\x04\\x91\\xee\\xbe\\xa8\\xbb\\x83O\\xae\\x9bV/\\x94\\xe6JJ\\xf9\\x93\\xfb=%]\\xc4\\x9f\\xf4\\xf4}>\\x7f\\xd0\\xd3\\xf7m\\xf8\\x83\\xde\\xa7\\n\\xfe\\xa0\\xa7\\xef\\x8b\\xf9\\x83\\x9e\\xbe/\\x90\\xea\\xfb\\x16\\x08\\x1et\\xeef\\xfc#\\xf7\\x9aN\\x05\\xa1Z\\x11\\x18~|E\\xa0\\xbe\\x8c\\xd1\\x10E\\xa0\\\"x\\xbf\\xe7\\x92\\xa1U\\x04\\xc6RE`P)\\x02\\xe3\\xd1\\x18\\xe7z\\xffkX\\xc07\\x10\\x7f\\x0d\\x0b*\\xb0\\x04'\\x8b\\xb6\\\"pa\\xa7\\x08,l\\x15\\x81\\x91\\xbd\\\"0\\xe0\\x8a\\xc0%\\x8fL\\xf6\\xbf\\xe75\\xd5m\\xe48\\xdeG\\xa1\\xfbkY\\x15\\xbc\\xa8x\\xf1\\xdd\\xf1-,\\xe0pR{\\x0d\\x14\\xce\\x98\\xc7\\xe3\\xf8\\x85C\\xcf\\x95\\x13'\\xac#\\xa6\\x9c\\xb7\\xbdv\\xde\\xf3\\xde=\\xeax\\x82\\x0d\\xe8\\x9f\\x03}\\xd5\\x10~\\x96%\\xc2\\xbb\\x02\\x0d\\xa8B\\xd1\\xc9\\xf9\\x91\\xe6\\xfc\\x88\\x17xr\\xc3W\\xa4H\\xe3-\t\\x8f7\\xf32'\\xc4=\\xa9\\x16\\xa6\\xa3\\xd0\\x95\\xac\\x90KW\\x8e\\x1e\\x12\\xa6\\xf4\\x02EK\\xa1j\\x9b^ \\x96*T7\\x9f@\\xa1\\xaaW\\xa5\\xda\\xa8\\\\Y\\x96\\x07K\\x17\\x08\\xe4d,\\xf5\\xb3>\\xc2Z\\xd7\\xfd\\xdc4\\xc0\\x8d\\xa1\\x90E\\xdd\\x0f\\x83\\xee\\x17\\xad:^h\\x17y\\xc8\\xfd\\x9b4\\xeaH8\\x84\\xc0\\x0b\\xd3\\x00\\xfd%\\xa8H\\xa3\\x86]1X\\x86\\x12\\xa8{.\\x1a^\\x16\\n\\xe71*\\xde\\xc6U<\\xe1\\n\\xbe\\x81\\xfdQE\\xef6\\xb1$\\x056p\\x8c\\xd8R\\xb2Yi\\x97\\xeb\\xedF\\xd9\\xd9}\\x14M\\x934\\xe1>X\\xa1f\\x88U\\xb5\\\"\\xc9\\xa6R\\xbf\\xb5\\xa4\\x0cP\\xd75D\\x0d~\\xc1\\xc0\\x05\\xe1\\xd2\\x81\\xce\\x1b_\\xb6\\x81?e\\xf0?n\\xd6\\xd9\\xeb\\x94v\\xdb\\xe0\\xa2\\xb2P)\\xda\\x0b\\xc2\\xa4^Ke\\xfb\\x16\\x1er\\x85{\\x01Q1I3\\x92\\xa0\\xd5\\x9f/\\x84\\xf4\\x13\\x94\\x7fS5\\x8f\\x19U\\xd5-W.\\x00Fr!.>\\xde\\x0d#\\xc85\\x82\\xecm\\x07k\\xd84\\xddn\\x979ah\\xef\\x8ct/l\\x97\\xda\\x81\\x9eEa\\xb9\\x9a\\x81s\\xb0\\xafq\\x88X\\x91h\\xb9*\\x19\\xd4\\xe0.o\\n9S.\\xae\\xf38J\\xde\\xfd\\x90\\x93\\x05_\\xe4\\xbf\\xc4~\\xbe$\\x13?\\xcf\\xd3\\xb3I\\x98\\x9e\\xb1un\\xdeUy\\xd0\\x8d4\\x13q\\xa1\\xebBT\\xbc\\xc8HB\\xc2\\x19lU\\xc3\\x8b\\x1b\\xe9\\xf4\\xda\\xb9+\\xb4J5\\xc1\\xabu\\xfdi\\xc70\\x1d\\x19\\xf3\\xe0\\x05\\x98\\xc5Tq,\\xaf\\xe9\\x11\\x1cw\\x0b\\xa7t\\xaf\\x90E\\x88g$\\xe8\\x9e\\xf7\\x01\\xca\\x97Y5]\\xcf\\xfdLG\\x81\\xe8\\xb5\\xad>\\xf6cAw\\x04\\xa5aO\\x137\\x18w?c\\xf8\\x0e%O!K\\xcf\\xc62\\x99`W\\xb6\\xbd;\\nrL/_f\\xe8\\x8b\\xdf\\x8eao:j(\\x17\\x0e)5f\\\"\\xc1\\xe5\\x19!\\xa2b\\x84\\xe2\\xb7\\xaa\\xfa\\xa0\\xc0Q\\xe0\\x0c\\x93\\xa2\\x8a9z\\x16\\x15\\xa5\\xba\\x19\\xb1\\xb0\\x86I<\\xc2d\\xa9rd_\\x9ar\\xa1\\xd0+A\\xba\\xaaq\\xac\\x11W\\xcb\\xa2\\xa7\\xf1_\\x14\\x97\\xf0*\\n\\x07#\\x18\\xb0\\x02\\xc7Y\\xec_0\\xaao(\\xa5\\x06-\\xf7\\x9f33p\\xdb\\x9bIc\\x18\\x15\\x97\\xbd\\xbb\\x92\\xb8\\x9a\\xe6Y\\x83v\\x8c^\\x1d\\x06N\\xeb;\\xd5~\\xa7\\x8a\\xbc\\x97\\xbb=\\x89\\xab[4\\xa9{\\x9dk\\xf0\\xc8\\x1c1$\\xae\\x01fqqY\\x1cs;\\xb4\\x0b<nI\\x9d!I\\\\\\xef\\xc7p\\xa1\\xdb\\xb7&\\x06\\xc6\\xe4)@\\xaf(\\xac\\xe6\\xc3\\x81\\x1b\\xa6\\xcd\\xd6\\x9f\\xc4:C\\x85\\xfeM&\\xfa0B8\\xe1\\x9c\\x15kQ\\xf9\\xda\\xa5\\xa7\\xbf\\xd7\\xdbb\\xf2\\xebf\\x9dM\\xcat\\x92Q\\xbep\\x97\\x96OM\\x8d6v\\xbb\\xfa\\xfb:>`nj\\x81\\x07\\x8c\\xb6\\xf0\\xd8\\xb0l\\xbdH1\\\"S\\x1b\\xb8\\xb1a'\\xd6\\xae\\x16\\xa4\\xa5\\x1f\\xd0\\xbf\\xc5\\xc3\\xcc\\x14\\xe5}\\xc45\\x84\\xaaV\\xe1\\xd4\\xc6\\xd3A\\x12\\xa4f0\\xb4\\xd4^)h\\x07\\xd0\\xe1\\xc8\\x91\\xaaj\\xdd\\xa5\\x12m\\x05Fo\\x91\\xebY\\xd6%\\xed\\x06\\xb4\\xa5\\x9a8\\xb6\\xf4\\xe3\\xeaG\\x87\\xe5\\xe5'\\xaa\\x0c\\xef\t\\xe7\\x93\\xdb\\x1ej#\\x0b\\xe14E\\xa7\t+\\x91\t\\x11\\x07N\\xc0\\x19c\\x0d=,\\xf4:\\x06\\x07\\xdev\\xe5\\xd8J\\xc38\\x94F6\\xe9\\\"e:'$\\xd9\\xac\\xdb\\xd4\\xf0\\xfd\\x18\\x9c\\xa3d\\xb3\\x9e9cu\\x03\\xf3\\x9c\\xf7z\\xa4\\x06J\\xa4\\x1d\\xe8\\xd1\\xa3\\xb4\\xd7:\\x9f\\x00\\x96\\xeax\\x8c\t\\xecq\\x0eF\\x9d\\xe5\\xbdn\\xdb`\\xab,$\\xb1\\x95\\xba<G\\xfcI\\xdfl\\xe2\\xf3'\\xf7{\\xd6\\x91\\x8dhGf\\x04\\xd9\\xca\\xcc&1\\x7f\\xd03\\x9b\\x04\\xfcA\\xaf_\\x0b\\xfe\\xa0g6\\xc9\\xa4f\\x93\\x10\\xc1\\xb3\\xce],\\x83\\xb0\\x15\\x81\\xad\\x1d\\xf3\\xc9VC\\x1f\\xb6\\x1f\\x97>\\xd0\\xc5[_\\xc6~\\xa2p\\xb6m%\\xc1\\x0b\\xba\\x0fd!\\xadM\\x1d\\xb2\\xa5\\x97\\x87RK\\xbdh\\x89\\xf3BK\\xdd\\xd6]\\x7f\\x1c-\\xb5I\\x07]ZE\\xd61\\x87_*\\x15\\xaaaX\\x0c\\\\\\x83\\x99P\\x83\\x16<\\x02\\xef\\x15Y\\xa8\\x81\\xe2\\x01\\x0e\\xc9\\x81\\xb5C\\xf2\\x82\\xf5R\\x1fm\\x97!\\x90\\xd9\\x9fuk\\x99\\x8afm\\x19\\x1e\\xb8\\xec\\x87`\\x931\\x9cp\\xcb\\x14\\xa5\\xc5\\x18\\xa64\\x06\\xa71\\xcd\\xf4O\\x9cJ\\xfa\\xa39]\\xd5\\xdf8%\\xf8\\x16\\x1d6\\xfd!\\x86\\xe6`\\xa4\\x11\\xeb>\\x9a\\xc0x\\x17{Ew\\x9b\\x17+Toi\\xb6`\\xc5\\xea\\x89M\\x8c\\xe3)\\x1c\\xc2\\x057\\xd0it\\xf4\\xa5\\xa5V\\xfe\\x0c\\x0e!pG\\xa8s=:/\t\\xda\\x0c4==\\x12\\x86\\x0d\\xd7\tI\\x11\\xe4\\x11K\\x1d\\xab\\x99\\x88\\xf3\\xfa\\x8d\\x8c\\x9dd\\x11f\\xd6U\\xbep\\\\\\xbf\\xe0\\x87!\\x1aE\\xfc\\xf8\\xa5\\xd5\\xab\\x8f\\xeaW\\x1bZ\\xb0\\x0d\\xfdG\\xa3xxW\\xbf\\x95\\x93\\xdf6QNB]#\\xdfav\\x84\\xa6\\x02\\xdf\\x90\\xd6\\xf1\\x05{\\xe1\\xb9\\x9f\\xbfCm\\xac\\x06\\xf4%\\x075E\\x02\\xbcn\\xc0\\xd9\\x18\\x1d\\x9e\\xdb\\x98\\\\\\xc5\\xc5\\x11'\\x1c\\xcc\\xb8u\\xaf\\xbe8n'\\xdf\\x02\\xe3\\x9bT\\x1d\\xf8\\xce\\xa6\\xedZ\\xce]\\xeb\\xdbQ\\x08I\\xf8L=\\xa1OQ\\x03k\\xc30\\xdbA9\\xbf#\\x07\\xe9y\\x9ec\\xfd\\xca{\\xccO\\x0d\\x0f\\x95\\xf0\\xcf\\xeb\\xa4\\x90\\xda\\xe0\\xce_\\x1b4\\x05\\x8d\\xfeb\\xfb%\\x17/\\x16N\\x95\\x80R\\xf9\\xfeO\\x8a\\xf7\\xd3\\x84X\\xbd\\xffJ\\xf1~\\x92\\x96\\x16o?\\x86CxD\\xb9.\\xd3\\xb4Y\\xa8-\\xda\\xa9{\\xf4*\\xb0\\xf7t\\xf2\\xd1\\x91\\x13;\\xfb\\xd7\\xbf\\xe6\\x84\\x0e\\xf6\\x03td\\x15%\\xa5\\xb6\\x1f\\xed.\\x8c\\xcc\\x184\\xb4\\x078\\x15\\xa7\\xa7%9\\xd7w\\xe4\\x91J\\x1fxi\\x9a\\xd2\\xeb\\x93\\xd2\\x8e\\xa6j\\xe3\\xb5\\xee\\xf3\\x0d\\x95\\x8d\\xe6\\xa4\\xe0\\xaa\\xa2\\xc7j\\x88Z\\x05\\x95\\xa9\\x81\\x1a)\\x8f\\xf6\\xb6\\x18\\xb1\\x02\\xdf\\x1c\\xc2\\\\\\xc3\\xb9\\xf5\\x04\\xd2\\xa7CG?l\\x86\\xe7\\xb9\\x1f\\x10\\xb4\\x11\\x03w$W\\xb5\\xc7\\x08\\x97%\\x15\\xb2\\xa3\\x88v]\\x8c\\x92\\x84\\xe4\\x13C\\xef\\x94M\\xa1\\xc3\\xa4u[\\xbb!\\x9cSb\\xed$A\\xaf\\x8f4s\\xe4\\x94\\xb9\\xb63v\\x99\\xcf\\xd2\\x18\\x13\\x9f\\xfd\\xe5\\xee\\xdd\\xbb\\x06\\x8d\\xeb\\\"M\\xcac\\xf6M'*\\xfd8\\nvH\\x93\\xa6\\x1eLX\\x1fR\\x0d.q\\xe6\\xe8(S\\xe3%\\x15\\xcc\\x0b\\xed\\x14\\xa5\\x9b< 38\\x92ww4\\xaa\\x11\\xf0\\x9c\\x12\\xe9s\\x91\\x07\\xfa\\\\i\\x98\\xb6\\xf2\\xe1\\xee8\\xedY\\xd4qc!M&\\xdb5\\xba'\\x9dL\\x0dPT\\x9e<u\\xf1\\xd4\\xf1\\x05[\\x9e\\xe5$\\xf0K=\\x13\\x0b\\\\\\xc0\\\\\\xa1-\\xd5\\x8b\\n4\\xa9\\xbe\\xc3\\x0f\\xbd\\xf3\\xb8\\xd5\\xa4ps\\xc3'2e\\xfe\\xa3\\xe6\\xb5\\xa5\\x9c{\\xe0\\xc7\\xdf\\xc5\\xd12\\x99\\x81S\\xa6\\x99\\x01?\\xe9\\x95Q\\xee?Y\\xbe\\xe2\\x9e\\x13\\xfb\\xde\\x01Y\\x1bxF\\xa3-\\x8aE\\xc0f\\x1e\\xc5\\xff_\\xd0'\\x03\\x0e\\xc1\\x99\\xa7q\\xa8\\xc7M\\xfd\\xee\\x04\\xa1\\x95\\xd0\\xa4\\x81\\x806I\\xd9\\xf0h\\xc7j\\xad\\xd4\\xdb\\xcf\\xb4g\\xf4\\xfd\\xe2\\x94#\\xd3}?\\xe7\\x9c\\xcc\\xee\\x84\\x19li\\x144\\xe8T\\xae\\x1b6()\\x0f\\xf0\\x83\\xe7\\xefzN\\xc7~n\\xcc=\\x96!\\xf0\\xee=Wu\\xf9\\xe5\\xb8\\x9b\\n\\xc0\\x02\\xe5x\\xa0\\x17\\xda*\\x13\\xb8\\x01\\x0e\\xfe\\xca\\xe9\\xafS\\xfa\\xcb\\xd7\\xf5\\xc4\\xe8\\xe6 \\xe4a\\xa3%\\xbe\\xed\\x17`\\xb0z5d3^\\x87\\xb0\\xa1\\x19\\xc0pEs[\\xdcA 0\\xb4\\xc4=)\\x0c>\\x01<\\x8a{\\x017t\\x16\\xb5\\x91\\xccZ\\xc6\\x9e\\xd4\\x06\\xb5\\xea\\x9093\\x1e\\xf7\\xfc\\x84\\xfc\\x9f\\xff\\xe7\\xb4\\xdf*?\\xf6\\x81\\x94X\\x1dH)?\\x90\\xd4D\\x16\\xa3\\xf1\\xce'\\xbcD\\xacW\\xc4Q@ho\\x0e\\x94\\x05a\\xc5\\xb5\\xe5E!Sx\\x08\\xa9W\\xa6?\\x1eW?pJS>AV\\x11\\x90\\x97!\\xe3 \\xf6\\x95\\x85\\xa3\\x8a5\\xf9\\x80&sv\\xef\\xde==\\xed\\x00-\\xfd\\x00\\x9b#\\x81\\xe1RrI\\xf2\\x08C\\xc78\\x98L\\x82\\xcdP;\\x9e\\x7f\\xbej\\x17\\x82\\x9aW\\x95\\xed\\xcfcz\\xe2\\x1d\\x0b&\\xd0f\\xa7\\xda\\xcc\\xb9\\xf3\\x0d\\xfc\\x1d\\xbe\\xbd4\\xa7+9\\nL\\xe4\\xba&\\xd5\\xba\\xa8Nk:\\xdd\\xa7\\xd1C\\x95\\xb1\\x96dZ\\x90\\xe8c5\\x88\\x91<#i\\xaeV\\xf6\\xd7\\xab\\\\O\\xd4\\x81\\xc1\\xe4[\\xdb\\x15\\xfd\\xb5C\\xb1\\x0d1\\xe3&\\x92e\\xe3#\\x85\\xf4J\\x13\\xbb}\\xa5h\\x06\\xd6\\xa8\\x06C\\xd0\\x0d\\xe4(\\x87\\nH4Q\\x9a\\x9b1\\xa3\\x1a4\\xd0\\xcd\\xe0\\x14dD9\\x00E\\xb2\\x15\\xe8J\\x9b?]%:\\xa2Ju\\x00:\\xfe\\xf4\\x05\\x1d\\x1b\\xd7%\\xd1\\x91\\xe9\\xb3?st|u\\x95\\xe8\\x98\\xa4\\xe5\\x00d4\\xa0\\xd5\\xe7w$\\xa2\\x81\\xe2\\xcaN\\xc0W\\x97=\\x01\\xeb\\xea_\\x972\\x01\\xf4\\x15\\xc1A\\x9c\\x16\\x9ar\\xa9\\xef\\x9d\\x1d\\xfc\\x083\\xa3\\x1f!3\\xdc]7\\x07\\xaaL\\x99\\x192\\x93\\xbaIE\\xfc\\x894\\x86<S\\xc5\\x90g\\xaa\\x18\\xf2L\\x15C\\x9e\\x0d\\x8b!\\xcf\\xdc\\xa01\\xb8L\\xf8@e\\x1a\\xa7\\xa7\\xec\\xe3;=\\x85R\\xfdb%K=x\\xf0@\\xa2H4)\\xb7\\xbb\\x85\\\"\\xec\\x93\\x1b\\xc9\\x9d\\xab\\xa0\\xed\\xd6$\\x89C\\xef\\xc5\\xf2\\xaa\\x1d\\xac:\\xf1\\xdf6\\x0eV \\x15|.\\x1f\\x0e\\x0cfg+\\x18\\xe0p\\x05\\x03\\x9d\\xae``\\xbeE\\x18\\x94s\\x11\\xaa\\x1c\\xe7&\\xb7.\\xa8\\x92\\x9c\\x1b\\x1c\\xa2\\xa0\\xf2\\xef\\xb2\\xf2\\xe4\\x81\\xca\\xc7K\\xef2\\x06\\x95\\x9b\\x97\\x95\\xdb\\x18T\\x9e^fW*\\xe0*\\xfch\\x90G\\x0f\\xf0M\\xc3\\xdf\\x8aJ\\xb2\\xd6\\n\\x82\\xc0\\x9d\\xc0\\xa2~|\\x1a\\xfd\\xc7\\xb0Hk|s\\x11\\xc5%\\xc9\\xed\\x19Yq\\xf1]0\\x99\\xa2N\\xea\\xc4)/2\\xe6\\x0b\\x86\\x9dn\\xdb\\xa7\\xe8\\x9f\\xcc\\x84\\xfe\\xd6\\x8b\\x92\\x90\\x9c\\xbfX\\xb8\\x92TB\\xcd\\xcb\\x14\\x1b\\xb4\\xe4\\x99=-\\\\\\x7f\\x80;\\x8d\\x95\\x03\\xdcz\\x80\\xfb\\x8e\\xd9$\\x0f\\x05\\xee<V\\xba\\x8e8\\x10M\\xe0gp\\x08[J\\xda/\\x17\\xe7\\x02\\xbbxW\\x00\\\\A\\x84\\x0d\\xec\\xee\\xcc\\x00\\xac\\xfd\\xede\\x02\\x9c\\xac\\xfahig\\x06\\xfd|h\\xa3s\\xa1v]0\\x84\\xf8\\xd5\\x9e\t>|s\\x08\\x1b\\x03\\x99\\xe9Wx:\\xf1<\\xef\\xadv\\x04\\xce\\x893\\x86\\xb5\\xd0\\xbb\\xadw\\xd3uCG\\xdf\\xdd\\x0c25\\xeb\\xbb\\xc1Z\\xe7\\x0d\\x95\\xb9V\\xa7\\xf7\\x063.\\x18\\xe3\\xb2\\xa0R<\\xd7F\\x1cs\\xdf\\xe8\\x11\\xfa\\x0fKu5\\x85\\xfd\\xd9\\x8f\\x8dVJ\\x01\\xcbY(y\\xa5Cq)rY\\xb1G\\x95\\xcc\\x99\\xc1\\xc3\\xddCm\\x85a_c\\xc2\\xa4-U(u\\xa9x\\xc3\\xd6n\\x14T\\xdbf\\x88&\\\"\\xa0\\x87\\x9a_\\\"\\x9d1\\xd8\\xa74\\x86\\x96\\x14\\x1bp)\\xd6\\xea\\x00g\\xc1\\xce\\x89\\xd6\\x13\\x0f\\x1a\\xc2\\xac\\x81\\xeb\\xb0\\x13\\xcd\\xa1\\x16}}\\xa3\\xeac\\x0cN+\\xfe\\xa6\\xf5\\xbcw\\xb7#\\x8f\\xe2\\xad\\xcf6\\xb6M.y\\xa6*\\xc93RI\\x9e\\xbeJ\\xf2\\xdc\\xa8$\\xcfB%y\\xaa\\xab\\x15d\\xbd8N*\\x8f\\xbaY\\x1d\\x863\\xdd\\xff\\\\\\x04\\xd0\\xbbs\\xfa\\xbf\\xeb'\\x83J\\x8a\\\"\\xf4\\x85>\\xa5\\x0c\\x9a~\\x00\\x19t\\xc7\\x1c\\xffp]dP\\x1b)1\\x19(\\xad\\xa6;H\\xabfY\\xd1\\x1f&+nlE\\xdb\\x02\\x83h\\xbb\\xa1\\\"zo\\x00\\x96\\x8cx\\x0f\\xfd\\x93\\xab\\x88\\x14C\\xe9\\x00\\xd4`\\xea\\xb3\\x81\\xc4\\x8d8\\x0f*\\xd0Yx\\xa9q\\xf0E\\x9a\\xaf}\\xad\\xd2\\x16\\xf8v\\xe4/\\x9c\\xaf\\x8dR\\xd5\\xb6\\x86\\xc6HU\\x03\\xf8Z\\x1a\\xa4\\xe2\\xd3\\x7f\\x0c\\xf94\\x96\\x83\\x83o\\x80\\x0b\\x95,\\xdcnI\\xcaz\\xe1\\xe8\\xde\\xd6\\xbf\\x88\\x92\\xe5\\x95I\\xde85c\\xa8$p\\xbe\\x12W \\x82\\xf3.\\xfe\\x94\\x96;\\xf7\\xf2\\xc2[\\xf9\\x85\\xb9%\\xfd|\\x9d\\xe2\\x91g-\\xec\\x9f1\\xf0\\xa3d\\xb3\\xb6\\x12\\xde\\x8f\\x18|-\\xbc\\x1b\\x05S\\xe5F\\xfb\\x00\\x82\\xe9\\xd5\\xb5EI\\xb2\\xb6\\xa9\\x88\\x1e\\xf6W\\xd6\\x9e\\xcb\\x10\\x949d6U\\x13#*\\x88\\xa1$\\xc4\\xea\\x9e\\xe9\\xba\\xb4\\xd6UD\\x19\\xda#\\x16\\xf4\\x8e\\xfbD\\xd7f<\\xa2\\x82\\xd5UN\\x05k\\x98oL]\\xd3\\x8e\\xfbWg\\x0c\\xd9\\x18\\x9c\\x913\\x1a\\xc3\\\\\\x88^\\xf3\\xab\\x91\\xe6\\xf3\\x0f(\\xcd\\x9b\\xbd\\xd8\\xc0\\xbc\\x81\\x8eL\\x93\\n}i>5\\xf7m'i\\xde\\xf2\\xbbW(\\xcd\\xa3\\xaf\\xf0\\x85X\\xf3\\x8b/k^_\\x7f\\xda5_\\xc2C\\xe5\\xcc\\x18u[B\\x83\\xb3\\xb4iiE\\xb1k%\\xb0\\xcbD\\xdb\\xd8;J\\xa8f\\n\\x10\\xd3\\xa7\\x0cc0\\xcd%%\\x8b\\xe7\\xeb\\x18]\\xffV\\xff!{\\xc2n\\xea`\\xa7\\x8da\\x9cp00\\x1e\\xcd\\xb5w\\xfe\\xe7\\xff\\xd1\\xff9\\x98B\\xdc\\x99\\x813\\x86\\xe32\\x8f\\x92\\xa5\\x9b\\xea\\xbcI\\x9b\\x89\\x92*\\x04\\xdd\\xea\\xce\\xdc3\\xd3dpIuk\\xe0\\xf4[>)\\x89\\xa6\\x87\\x97Sx\\x99K\\x7f]\\x07\\x85\\xd7\\x18JO\\xbc/)\\x81\\xa7\\xcf\\xf0t-\\x12<\\x89\\\"J\\xadq\\xd8dz\\xe2\\xc7C\\x1f[\\x92\\xea\\xf1\\xcf\\xbeD%\\x9bV\\x8f\\xf1\\x10\\xb8\\xa2\\xccL|O\\xf6\\xb2!Y\\xa5`*;;/i\\xe6J\\x92#_t\\x0d\\x90\\xaf\\x8fg\\xb1L\\xa7\\x9a\\xf2\\x07=\\x9dj\\xc4\\x1f\\xf4t\\xaa>\\x7f\\xd0\\xd3\\xa9n\\xf8\\x83\\x9eN\\xb5\\xe0\\x0fZH\\x1e\\xab\\x91<\\xfe\\xf8H\\x1e\\\\Q\\x96\\xa2T\\xa5\\xc0\\xecy\\xd7\\xc8\\x14\\x98\\xf9p\\x05\\xa62K\\xd1F\\xaa\\xb8\\x8cL\\x8a\\xcbO\\x96\\xa5(M^\\xe7\\x17\\xe9\\xa6\\xc4\\xf4\\xdbj\\xe0\\x84\\x03?\\xf2\\x93\\x80\\xc4\\x06\\xe0\\x9cy\\xb5$\\xfe<&\\xa16\\xc0\\xdfP\\xb7[}6\\xb6\\n\\x95\\xe7\\x17\\x93t\\xa3\\x8e\\xea\\xd6Vj\\x9fo\\xca\\xd2>+\\xba3/\\x13\\xe0\\xed\\x9d\\x9e\\xd2?\\x02\\x9c\\x10\\x9b\\xe2\\xe6\\xf2c\\x99\\xf2\\x81lR1\\xac\\xebC\\xf5\\xd3\\xa6\\x83\\x8a\\x9a\\x7fcp^\\xe7\\x17\\x10\\x95\\x90nJ\\x90\\x99\\xcc\\x0c\\xae\\x9b\\xfa\\xe2\\xde\\x15k\\xc4JBu\\xed'-\\xfc\\x9c\\xc1\\x13\\xbe\\x03\\x1a\\xd5\\xd0:\\xe0\\x0d\\x0c5\\x83s\\x1c\\x9d\\xc1^m,\\xc4\\x04\\x19\\xf5\\xa1r=\\x0b\\x8e\\x7f9T\\xbe\\x1c*\\xd7\\xf7P\\x99_d~a(\\xd2B\\xbc\\xa88>\\xf3\\x97K\\x92\\x1f\\x98\\x8e\\x12\\x96\\xebGC\\xc2\\x10\\xca\\x8f\\x8b\\xf4x\\x95\\x9eiO\\x9cRw\\x184\\x03\\x0b\\xea\\xd1z\\xc1*\\x8a\\xc3\\x9c$(\\xd4a\\x99\\x1f\\xf3G\\xec\\xc8\\xf4\\x96\\xe4E\\x94&\\x93,\\xf7\\x97k_y\\x82\\xa5\\xe3\\x0f\\xd1\\xdc\\xe9\\xe9\\x9a\\x14\\x85\\xbf$\\xa0\\xb8?\\x99\\xf8\\xeby\\xb4\\xdc\\xa4\\x1bu\\xc1\\x0f\\xab\\xb9T\\x02\\xadn\\xd5\\xc1!o\\x90\\x16C\\x99\\x02\\xc3X\\\\\\x01\\xa8K\\xdd`\\xe2\\x18\\xd5\\x872s[A\\x1a\\x92\\xba\\xb5\\x82\\xa1\\x1eK\\xc4\\xea'!\\x954,_M3\\x92\\xf8Y\\xc4^]D$\\x0e\\x0b\\xca\\x06$i\ts\\x02YN\\n\\x92\\x94X\\x91zE\\xa0\\xf0\\xd7\\x048\\x9eC\\x9a\\xc3\\x8b\\x8c$\\xdf\\xbd|\\xda\\x18\\x97\\x07/c\\xe2\\x17\\x04r\\xb2N\\xb7\\x04\\xd2\\x84@\\xba\\xc0\\x97\\xd9\\xc7=\\xcb\\x91;\\xc7\\x9b,K\\xf3\\x92\\x84bAE\\xef\\xfc\\x9c\\x0c\\x18\\x1f\\x9f\\x1a\\x14\\xbe\\xfe\\xe6\\x1cx\\xfb\\xce\\xdf\\xaaY*WiA\\xa0\\\\\\xf9%\\xac\\xfd2X\\x0d\\xf8,\\x9f\\xb6\\x19\\xdc\\xf2\\xf6\\xbd\\x84\\xcd\\x9e\\xbbHs \\xe7\\xfe:\\x8b\\xc9x\\xd7o\\xed\\xe3\\xb7F\\x9e#bZ(\t\\xb6\\xd8\\xa2\\xda}\\xfe\\x01\\xf6\\xdb\\xf5\\xdb\\xde\\xeb\\xa8(\\xa2d\\xf9\\xf9ln\\xe7\\xf5\\x8a\\xee\\xb0t\\x1b\\x85$l\\xbc\\x0eaJ\\n\\xac\\xb5[d$\\x88\\x16\\x17\\xe0\\xd3\\xe3-\\xea\\xec\\x04\\xeb\\x9d\\xc4wd\\x94\\x84Q\\xe0\\x97\\xa4\\xfa\\x9ad#\\xb7\\x1b\\x80/{\\xf02\\x02B\\xab&\\xa9\\xbd\\x90 N~\\x99\\xc7\\xa1\\xd8\\xd4\\xb2g\\x8cO\\xf9\\xfc\\xb8\\xffk\\xac\\xba\\x1c\\x9c\\x9b\\x9e\\xed\\x92\\x81\\x1a\\xc7\\xb5\\x1f\\xc7\\x15&*\\xc1\\xb2\\\\\\x9e\\xb3MB3\\xbb\\xeev\\xe0`\\xc2v\\xfc\\xef5K\\xd2N\\x11\\xf41!\\xd9\\xb3(y\\xf7\\xb9\\xab\\xb7\\x1b\\xe3\\xb0A\\x16.\\xae+\\xd5\\xdb\\xd2\\xe8%&\\x1c\\x94\\xe4\\xbc\\x1c\\x86d\\xbe\\x11w\\x92\\x145\\xdc\\x12\\xd1\\xaa\\xd6\\xa9\\xc0C\\x83\\xa7&4&\\xdb\\xcbr\\xb2%I\\xf9\\x98\\xf5\\xc8\\x95PRe~\\xd3\\x15Vt+\\xb1\\xa2\\xdbM\\x96\\xde\\x89\\x81v1\\xdb\\xa4\\xc7g\\x9b*\\xfd,\\xd5\\xedc\\\\\\xed\\xbe#1\\xc56\\x17w\\xc5\\x88\\x95im!t\\xaeG\\xe8\\xbc=\\x83\\xf2\\xc9PJ\\xd1|m#\\x1bVJ\t\\xa4\\xaa*x\\xbe\\x8e\\x93b\\x06\\xce\\xaa,\\xb3\\xd9\\xcd\\x9bggg\\xde\\xd9-/\\xcd\\x977\\x0f\\xf6\\xf7\\xf7o\\xe2k\\xf2\\x97\\xfe\\x19G\\xc9;\\xe9\\x9b\\xd3\\x07\\x0f\\x1e\\xdc\\xc4\\\"\\x81\\x92w\\xb5\t~\\xb2\\xb4@nl\\x06\\x8e?/\\xd2x\\xa3,\\x7f\\xcf\\xab *\\x8a\\xd7\\x88\\xf2\\x87\\xfb}\\xf4\\xef\\\"\\xb3zZ\\xc9\\xa2\\xb0\\x98\\xd7\\x8b\\xf5<\\x8d\\xa5S\\xbb\\x8d\\xc8\\xd9\\xf7\\xe9\\xf9\\x0c\\x9c}\\xd8\\x87\\x03\\xfa\\x7f\\x92\\xc1`\\xc1\\xa9M\\x12\\xa7\\xc1\\xbbnz:]\\xef2\\x96\\x07\\\\\\x82t3p\\x9eO\\xefx\\xf7\\xe1\\xfe\\x0f\\xd3\\xdb?\\xdf\\xf1\\xee>\\x9a\\xde\\x86\\x03\\xef\\xde\\xfe-\\x98\\x1exw\\xef\\xde\\x81)L\\xf7a\\n\\xf7\\xbc[\\xb7n\\xc3\\x14\\xee\\xf2\\xa7w\\xe1\\x8ew\\xf7\\xe7\\xbb\\xab\\x83\\xed\\xc4\\xbb\\xbf?}t\\x1fny\\xf7\\xee\\xdc\\x86\\xfb\\xde\\xbd\\x07\\xf7\\xe0\\x16}\\xe9V0\\xf5\\x0e\\xf6o\\xd1\\xe1\\x00>;\\x80\\x03o\\xfa\\xe0\\xc1\\xcf\\xf7\\x7f\\xb8\\x1dL\\xbc;wn\\xc1\\xfed\\n\\xde\\xdd\\xdbw'S\\x98\\xe2\\xa3\\xe9\\xbd`\\x1f\\xbc;\\xb7\\x1fx\\xb7\\x0f\\xee\\xd3{\\xb7\\x1ex\\x0f\\xee\\xd0\\xa7\\xb7\\xf6\\xef\\xc5\\x14\\xe6\\x9ew\\xeb\\xfe\\xbdGw\\xbc\\xbb\\xf7\\x0e`z\\xdf\\xbb\\x7fw\\nw\\xbd;w`\\xfa\\x00\\xeeyS\\x98>X\\xdd\\xf1\\xee\\x07\\xf4\\x13\\xb0\\x0fS\\xfa\\x99\t\\xfd\\nL\\xe9w&\\xd5g\\xeeN\\xe8w\\x02\\xef\\xce\\xc1\\xed\\x897\\xbd{\\xcf{p\\xe7\\xd6\\xc4\\xbbw\\x87\\xfd\\xa0\\xcd\\xdd\\xfd\\xf9\\x01\\xed\\xd2\\xa3\\xe9=\\xb8O\\xfb\\x08\\xd3\\xbb\\xde\\xad;\\x07p\\x1f\\xd8\\x84\\xfd\\xbb3\\xff\\xa3\\xd1\\x07_\\xf9k\\xb3\\xee\\x7f\\x92\\x15|>=\\x80\\xfb?\\xdc\\xff\\xf9\\x0e\\x82\\x0dB\\xe1O\\xb0\\xfa\\x92<\\x17\\x97X\\xfc\\xdb\\xde\\xad\\xdb\\xf7az\\xdb\\xbb\\x7f\\xfbA0\\xf1n\\xdf}@\\xff\\x7f2\\xf5\\x0e\\x0e\\xc4\\xaf\\xbb\\x0f\\xee\\xc1\\xfe3\\x8a\\x06S\\xef\\xfe\\xf4A<9\\xf0\\xee\\xde\\x99R\\x01\\xec@\\xfb\\n>j\\xfc\\x83\\x00\\x14S\\xe8\\xe3\\xf8\\xc0\\xbbw\\xe7\\xfe\\xe4\\x967\\xbd3\\xa1?\\x1f\\xe0\\xcf\\x83@\\xf6\\xd2}\\xf1Ru\\x1b\\xf0\\xb6\\xf8Yu\\xf0\\xbe7\\xbd\\x7f+\\xc6\\xeeMny\\xfb\\xb7\\xa6\\x81\\xee\\x0d\\x10]\\xaf\\x9e3L\\xa3\\xbd\\xc3>QL\\x98\\xde\\xa1k-~\\x07\\xcaW>\\x05&(\\x8b\\xe5^\\x02\\x1fny\\x07w`\\xba\\xff\\xec\\xae7\\xdd\\x7f\\x00\\x07\\xde\\x9d\\xfb\\xc1\\xc4;\\xb8{\\x7f\\xe2\\x1d\\xdc\\xe3?\\xee\\xed\\xe3\\xe2>\\xb8\\xf7@<\\xf0\\xee\\xedO\\xf1\\xbf\\x0f\\xee>\\x80\\xfd\\xf8\\x9ew\\xff\\x16\\xdc\\xf3\\x1e\\xec\\xdf\\x0f(\\x84wpo\\x8a\\xff\\xbd\\xb7Og\\x8b\\xbe\\x18O\\x1a0\\x13\\x01D?=\\xc5v\\xf0;\\xa2]\\xba\\x82\\x9d\\x86\\x9f\\x89~~\\xdaY\\x9f\\xf4#//1\\xf5\\xf7\\xbc\\xdb\\xd3\\xfb\\x80\\x13\\x1fx\\x07\\xf7\\x0e&b\\xd2\\xd8\\x8f\\x07\\xf7\\x1e\\xc0~\\x81\\x93yo\\x7f\\x8a\\x13y\\x17'\\xf2\\xc1\\xfe}\\xa0\\xd3\\x19\\xe0\\x12\\x88\\x99b?\\xf0%\\x0e4\\xa9\\x80\\x1a+\\x8a\\x9f\\xc2\tg+\\xd0o\\x12w>\\x9d\\xee\\x18;8\\xb9\\xe7MoO?\\xd0\\xbc\\xdf\\x86\\x83\\xdb\\xaay\\xe7e9\\xael\\xba\\x1f\\xc0\\xbd\\xed\\xed\\x1f\\xeex\\xf7o\\xc5\\xb7<$Ew\\x1e<\\xbb\\x0fw\\xe3\\xc9]`\\xff\\x9bz\\xb7\\xa7\\x13\\xfa\\xcf3\\n\\x05\\xd3[?\\x1cL\\x7f\\xbe\\xf7\t\\x86\\xce\\\"\\xde\\xafl\\xe4\\xfb0\\xbd\\xbf\\xba\\xbd\\x9d\\x1c\\xac&\\xb7\\xb7\\x07\\xff~~\\x0b\\xeen\\x0fV\\xd3\\xfb?\\xdf\\xfd\\xe1\\xd6\\xbf\\xd7\\xb7\\xe0\\xdejz\\xb0\\x9d\\xfc\\x7f\\xec\\xbd\\xdb\\x92#7\\xb2 \\xf8\\xde_\\x81d\\xebT\\x91\\xc5K&\\xb3.\\x92\\x98\\x99\\x95\\xadVK\\xa7\\xb5\\xa6\\xea\\x96I\\xd5gv\\x86dU\\x83A\\x90\\x0ce\\xdc\\x84@03K\\xa8\\xb1~X\\xdb\\x1f\\xd8}\\xd81\\xdb}\\xd9\\x87Y\\x9b\\x975\\xdb_\\x98O\\xe9/Y\\x83;\\x80\\xb8!\\x82\\xc1\\xacR\\x9f>g\\x9a\\x92UF pq\\x00\\x0ew\\x87\\xc3\\xe1~\\xfe\\xfb\\x17\\xfb\\xf3zg\\x07\\x1fG1a\\x14\\x06Q\\xff\\xfc\\xd3\\xc1\\x84\\xa6\\xa9\\xbf\\x8d\\xea\\xe7\\xcaQ\\x7fzvV\\xb5)\\xf5\\xcd\\x87g\\x8ese\\xf5a\\xfa\\xdcq\\xae\\xac><\\xad\\xee\\xd0R\\xfc\\xf0\\xbc\\xdaD\\xe0\\xbcQi\\xf7f\\xaa\\xaeg\\x9f;L]7Y\\x10\\xe0\\xe7\\xe7\\xae`;^\\x1c\\x86q\\x14R~\\xa33M+G\\xb1.5\\x89\\xe7\\x1aT\\xf5\\x833\\x84\\x94{\\xe4J}\\x867\\x16A\\xf4n\\xfd\\x16\\xc3u%t\\xdf\\xa2\\x9f\\xf5\\x17\\x11\\xdf0\\xf80_\\xea\\x14?\\n\\xfc\\x88\\xbd\\x8a\\xd7\\x8c\\\\\\x91\\x93i)\\x15OC\\xe1Q\\xa7\\xaf\\x94\\x08\\x8a\\x87\\xae\\xeaI\\xa7\\xa2\\x92\\x9d\\xe1\\xe9\\xa9y1-\\xde'\\xf1\\x96\\xd3d\\xa7?\\x17\\xde\\x0b\\xe8T\\xef\\xfd\\xc6yK\\xaa\\x97\\x82y^\\x8f\\x9c\\\\\\x11q\\x9f\\xb0x\\x83:\\xa3>hlFpp\\xdc\\xd3\\xd3\\xd5\\x1bT;\\x13\\xb1[\\x92Uz\\xa2\\xd2\\xa8N\\xf3bn\\xb2\\xf9\\xf5\\xae\\xa9\\xe4\\xd8$g\\x81MKk\\xa3n\\xaf\\xc7{pu2\\xe3\\xac\\x1f\\xcc\\xd9\\xd2\\xc0\\x932\\xd1\\x87\\xab\\x87?\\xbf\\xaf.)\\x18\\x82\\xdc|DemUV\\xf1~\\xb1\\xe9\\x11a\\x85\\nG\\xa5\\x9a,(\\x9d\\x94_\\xaa\\xd6\\xb2\\xfe\\n.L\\xb2\\x01\\x11;\\x1e\\xdfB\\xbf\\xbf\\xe2<\\xe6\\xfd\\xde\\x7f\\xe0q\\xb4%\\x7f\\xe6L\\xa17]\\x05\\xec\\xcfx()F\\xc4\\xdb1\\xef\\x06.\\xe7\\x9fz\\xe8\\x84\\xa3z/\\xcc\\xe2'\\xc6\\xaaQ#c\\x93\\x06#\\xa2\\xc0\\xd6\\xeay\\xc8\\xa1\\x1597\\xec>\\xed\\x17\\xbf\\x0d&\\x9b\\x98\\x7fE\\xbd]n\\xcb^[5\\xd8\\\\^f\\x1e-a\\x1a\\xb1i\\xf3\\xc6\\xb5\\xd6\\xaf\\xef\\xcc\\n\\xb1\\xb4*\\x84\\xb1i\\xc0\\x15\\xf5\\xbb\\\"\\xadw\\xfe\\x8c\\\"\\xae`\\xf0\\xa1\\x9e\\x9ajL(?\\\\\\xa7\\x9a\\xc1Hc\\xa6\\xa7+\\x86|Nu\\xa4E{\\xd5\\x8c\\xc7\\xd2\\xb4\\x1f\\x0dF$\\xd2t\\xa2\t\\x10}\\xa8\\xd6\\xadw\\x80N\\x88\\xed\\x955\\xa5\\x1f\\x10\\x85\\xa1sXOy=\\xa9\\x94\\xd6\\x11\\xf9\\xc6,\\xef\\x8f8.Q\\x85.\\x9e\\x8d>h\\xa8\\xba\\x81\\xf8\\x80\\x01\\xc3\\x8a\\xbb\\x0c\\x1b\\xf8\\xfd\\x8a\\xb9P\\xf4iSx\\x9dd\\xc2\\x0fR\\xc3\\x90\\x7fE>\\n_o`\\xe8O\\x9d\\xc7\\x01~M\\x89iIl\\n\\x91\\x7fQH\\x00\\xa7#\\xb1\\xe9\\xe5\\x96\\x89\\xdfrF\\x15\\x05\\x8f\\xed\\x8b\\x83\\x98\\x16\\xbb\\xed+\\xc9\\xa9\\xdb\\xd48\\xb8\\xee&\\xe6\\xa4oz\\x99C8\\xd2\\x1a\\xff\\x80E[\\xb1\\x1b\\x81\\x90r6\\x02\\x91\\xa4\\xd7\\xbb \\xf1x|1 \\x94\\x0c\\xaf\\x08\\x9f\\xb3\\xb9\\xbfT\\x0c\\x90-U#\\xfep\\x88-a\\x97\\xdc\\x88H\\x8bsX\\x87\\xfe\\xe3\\xc2=\\x9e\\xe6\\x80\\x0f\\x87>\\xb9$\\xf1\\xc5\\x80\\xf4p)\\xa0\\xe3|\\xdb\\x05r\\x8d\\xbd* \\xa8AF\\x95\\xc5\\x9c\\x83\\x1a\\x98f\\x0dcp\\xd4\\x08|$\\xec\\x9c\\xech\\xea\\xc2P\\xf5)\\x8bX\\xea\\xd1\\x84\\xbdZ\\xbbdO\\x95\\x83\\xb3$\\xa0\\x1e\\xfb*\\x12\\xbe\\xf0Y\\xea\\x92DU6\\xac\\xe6\\xf7\\\"\\x0c\\xea\\\"\\xe9\\xcf\\x05\\xad~\\x86\\x92\\xc8OY,\\xd8[\\x88iuX\\xbb\\xdf\\xbb\\xcc\\xcb\\xbc\\\\\\x146\\xa2\\xefG\\xe5\\xfa@e\\xd4\\x91\\xec\\xf4.O\\x0b\\xb5\\xf6\\xc8\\x90\\xa4\\x98\\xbd\\\\\\xbb\\x87\\x14\\xb1K\\x8dl.\\x96Z\\xce\\xba&\\xbd\\xcb\\x84\\xb3\\x97\\x97\\xaa8TN\\xfb\\xf0Y\\xcb\\x05p\\x9d\\xf9\\xf2\\x14\\xbe^\\x9e\\xaa\\x9c\\x05\\x00\\xc8\\x8c\\xf4\\xba\\x14\\xac\\x8c\\xc3\\x86E\\x9eka\\x8f\\x94\\x0c\\x18\\xb8\\xf8\\x837R\\xa4\\x11B\\xc7\\xce\\x85\\xe3\\x9a\\xda\\x1a\\xd6\\x86\\xe30L\\xcd\\xfa$\\xa0\\xd1\\xf6;\\xce6\\xfe]]rJ\\x14\\xb9\\xa6a\\xea\\x12J\\xd4wp2\\x03\\xfegt\\xc6I\\x9a\\x04\\xbe\\xe8\\x9f.\\xd2\\xe1\\xe9v0\\xd0\\xa1\\xbc!\\x927\\xef\\x07\\xb8\\x84\\xb1\\x87o\\xbd,\\x15q8\\\"\\xde\\xfcl9\\xb0~,\\\\y\\xe6*\\xcb\\xb22\\x0eu\\xfbE\\xd5\\xcd\\xc7x\\xf4x\\xd5{L\\x86d\\x07\\xc3\\xee\\xf7\\xe3\\xfef0P#\\xfe\\xb8\\xf7\\xb8T\\xcaiJZ\\x98q5ok5S0\\x83\\xfdh\\xb2\\xf3\\xb7\\xbb\\x00\\\"\\x1c=zD\\n\\xaf\\xdap\\xb5\\x902\\\"\\xf3\\xc4L6\\xcc\\xbaGE\\xdf\\x1b\\xa0[\\x8a\\xbe\\xfd4h\\xc5 \\x07b\\xe8!\\xd1\\xd2z6\\xd91\\xba\\xf6\\xa3mm\t\\xb6\\xae\\x98\\x9dj\\x03\\xd0q\\xf7-\\xdb\\xb3\\x00\\xbbXn\\xcdT|\\xe4ZtV][\\xeb\\xbb.\\x1c\\xc0\\x98\\xf6F\\x93\\xbb\\x9d\\x08\\x83?fpl{\\xb9\\xe3\\xe4\\xf4e\\x0f\\x16\\xd7\\x8e\\xbf\\x04\\x8f\\x02\\xce\\xe1ZeA\\xc0\\xc4\\xdb\\xc0OEw\\x02\\x95\\x05\\x0e\\xc2T\\xa8\\xe8\\xc8\\xd1\\xc8\\x82\\xe6\\xe9\\x84\\xfa|\\xc1\\xc2\\xee\\xd0\\x05~u\\x96\\xf2Jj\\x905C\\x15\\xf8\\xf5N\\xc6\\\\\\x89jk\\xf7p\\xb5\t\\xa6j\\xae\\x9d\\x0c\\xb0w\\x19\\x07z\\xd9@\\xe5\\xe4%\\x99\\x92k\\xf2\\x98\\xa4\\x82r\\x81+\\xd4|\\x82\\xa5\\x89\\x11U\\xdd\\x08S\\x02\\xef\\xc8I\\x88[&AQ-\\xd8\\xd6w\\xeas\\x91A\\x08 \\x03\\xd7\\xa4\\x87\\xa8\\x98Tg&\\xaf\\xb9\\x13\\xb8f8O\\xfa\\x85\\xda\\xd5\\x0e\\x0f\\\\h\\x94E\\x19A\\xc6d\\xaa\\xc5\\x99G\\x8f\\xc8\\x89M1D\\xc59\\x1f}\\x17\\xd8\\xa7\t\\xae\\xa0~D\\xae\\x8b|\\xabWC\\xd6\\xe8\\xc69D\\x8euk\\x84\\x16\\xdd\\x9e\\x00\\xeb\\x81\\xc7\\xe8,\\x13\\xa7]\\x11\\xe5\\xfc\\xab!\\xcd\\xd0\\xae\\xdb2%\\x02\\x00^S\\xbee\\x02+\\x83G\\x83D\\x85\\x8fyM\\xceAx|I\\xc1\\x06\\xc4\\xc0\\x81\\x94\\x8a\\xb3\\x8d\\x81\\x01\\xc3|\\xc5.\\x8a\\x08cp\\xc42\\xa3\\xd5\\n\\xfc\\x90n\\xbb\\x88\\xecf\\x00\\x1f\\x93\\x94{%HS\\xeei@\\xeb\\xe3\\x94=t\\xc8\\x1bV\\xaf\\x1fnM\\xd4\\xb3\\xfecB\\x03=\\xdaX\\x0b\\x0d\\xd4< s5\thW\\x8cK\\xf8q\\xef\\xb1\\xfa\\x93\\xe1\\xfa/\\xd2or\\xda+,\\xf4\\xca\\x08A\\x04\\xd1\\xee\\xf4\\x10\\xb2\\xd7\\x89\\x05\\xd6r\\xc4L5\\xd5\\xa3x\\xe0\\x11\\xd0\\xa8\\xecM\\xb5\\x1c\\x03MC=\\xabx}\\x7f\\x044*{S-\\xc7@\\xd3P\\x0f?\\x02\\x14^\\x9bg~\\x14\\x08\\xdc5\\xaa\\x9d(v\\x07.%v\\x9aK\\xd1\\xc0\\xdfF\\x9aC\\xdd\\xabu#\\xd8\\x9d\\x18C\\xea\\x0c\\xe9\\x0c\\xe6\\xa82\\xab:d\\xc7\\xf4mW+_G\\xb9\\x87\\xf6l\\xfd\\x91{v\\x1c\\x1a\\xaf\\xab\\xe5S\\xc1c\\x87\\xa8\\xdaX\\x05\\xe6o\\xa8\\xe5\\x08H\\xdc\\xf5\\x1c#x\\xb1\\xd0Q\\xfa\\x08\\x08\\xea\\xe5\\xd7,\\xe8\\xde\\xfc\\x9a\\x05\\xae\\xf2G\\x00\\xe0\\xa8\\xc1\\x8f\\xd2\\xee\\x10\\xf8Q\\xea*\\x7f\\x04\\x04\\x8e\\x1aB\\xca\\xebBEc\\x0d*\\xb7\\xb3\\x86#\\x80p\\xd5\\x91f\\xabCk-\\xc7\\xc8l\\xd5\\xbc\\x99\\x87\\x8f\\xd5\\xba\\x93#\\xeaN\\xda\\xea\\xae\t\\x98;\\xca\\xd7+\\xadK<$Q\\xe8F*;\\xa9\\x95\\xdaI-\\\"\\x94\\x04W\\x0e\\\"\\x9b\\xc6\\x1bqt\\x13P %\\xd7\\x1dZS\\x8fu\\xca\\xce\\xeeD\\xc7A\\xab\\x0cUe|D\\x18\\x98\\xd3\\xb2.\\x95\\x15\\xab\\xaa\\xd7$\\xe8\\xf6\\x83\\xeb\\xa1\\xabU\\x9dk\\xb6\\xd4\\xf4\\xf8R\\x958(\\xc5\\xbd|\\xech\\xe6\\x88E\\xa1\\xf2\\xd7\\x94Pq,\\xa2X\\xb0\\xb7\\x9cm\\x0eAk8\\xd1\\x1f\\xb2p\\xc58\\xc2\\xe7\\xaf\\xc9\\x90L\\x07\\x13\\x11k\\xc7$\\x8e\\xd3e%\\xe2\\xf66\\x11g\\x1b0\\xc4v21\\x94z\\xb3\\xd57k\\xf2\\x92\\x9c\\xc1\\x91)'\\xc3+\\xd2\\x9bY=\\x03|\\x1d\\x8c\\xc8c\\xb5\\x82\\x8c\\xfa\\xc7\\xc0?V\\xb5\\xbf\\xb4B\\xff\\xaf7\\xd1c\\x1d\\xd3\\xf7q\\x8f\\xf8\\xeb++\\xf1?\\xee\\xbd\\x9c\\x9bO\\xbd\\xa5\\x12\\xde\\x9d\\x8b\\xce\\x8e\\x0b`V\\xd7\\x1d\\x91\\xeeLY\\x12~|\\xb9\\xe3Up\\xd3q\\xca\\x92\\x1e\\xac\\x13\\xc5\\x87\\x9b\\xb3\\xa8\\x0c0\\xfb\\x97)\\x83\\xa6k\\xd9T\\x96\\xcb8\\xa8\\x17W[h(\\xdf\\xda\\xb3#\\xf0'\\x0eTS\\xa7\\x1a\\x90:\\x15\\xb15\\x1f\\x85\\xfa\\x81\\x0f\\xf3\\x83\\x13\\xd6\\x8eZ8\\x9b\\xb5\\xa9\\xf7\\x05\\x0bk\\x8b\\xc3\\x02sD\\x07]\\xfa\\x12[\\x0f\\x8d\\xbc]|\\xf0P\\xd1\\xac\\x91\\x1c\\xdf\\xdb\\xbb\\xd4u1DM\\x8b\\x81\\xe48_\\xc0\\xf8\\xea\\x10\\xad\\xa8w\\x03+\\xe4\\xaf\\xff\\xeb\\x7fS8_\\x19\\xac\\xf512\\x8aCs\\xb6>B\\xf3\\xb6\\x165\\x11\\xe7\\x88\\xbd\\xd7\\xba&l\\xae\\x8f\\x93\\x8f\\xdc\\xd0\\x1fS\\x83p\\xd4p\\x94\\xc0\\xbc\\xael\\xfa\\xca\\xc7@)\\xb9\\\"Y\\xf1\\xfc\\xb0\\xcb2\\xea\\x179)a}\\x17q*d\\x1f\\x0e#\\xf2\\xf2\\x8a\\x08}\\xbaF\\xc6\\xe4\\\\\\xf1q\\xc5\\xa6\\xcb\\x8a2\\xd4D\\x81\\xf5\\x81\\xd1B\\xe1\\x8bQ[\\x954Vb\\xae\\xd0\\xaf\\xa0\\xb1:+'kfiZU\\xc5+\\xda\\xb3b=\\xe7\\xa56u\\x82\\xd6ja\\x0fU\\x1a\\\\q.\\xf5\\xf3=\\x0e\\xd4\\x80\\\\\\xda\\xe3Ch\\xaa\\xa2B\\xb5J6{^\\xd8\\xab\\xcb)\\xf9\\xd4\\x14\\x0fj3H\\xfd\\xc0\\x83\\xbe\\xbaqWL\\xae\\xc8\\xbc6e\\xf3\\x1e\\x10\\xea\\x1e\\xfa\\xf6?{>p\\x1c\\xfc\\xcc{\\x8a\\xb7\\x9b,/\\xdcY8\\xdb0\\xce\\\"\\x0f\\xc2\\xc4C\\xc6O\\xdd\\x19\\xf5\\x94\\xeaL\\x9f\\xb93Y\\xba(\\xa8\\x1f\\x98\\xbc\\x9f7\\x03w\\xae\\xf3L\\xcf\\x9a\\xa0\\x83c\\xcb\\x90E\\xc2\\xc07\\x9d\\xba\\xb3\\xa6!\\xe5\\x02\\x8e\\x01m\\xcesw\\xce\\xc0\\x8fn\\xfc\\xcd\\xbd\\xc9\\xf5t\\xb0,eZ\\x1eq\\xdc\\xef\\xb0\\x9e*\\x1aY\\xf12!\\xb7\\x87\\xda\\x8a$\\x9c]\\x10F.I\\xac\\x91\\xf1\\x82\\xb0\\xe1pP\\xa8\\x02#\\x89\\xc4s\\xb6\\x9c\\x9f-G\\x04\\x1e\\xa6K\\x97\\xe9U\\xf1\\x80][y\\x94\\x08\\x84\\x8b\\x1b\\xe1Q\\x9a\\x0b>\\x81\\xa6\\x00\\x91\\xb9\\x0dV\\x80h\\xcb\\xc4\\xf7Y\\xc0\\xd2~\\xaf7\\x18X\\xb8\\x05\\xb9$\\xd1\\x05\\x11\\n|>\\x17\\xcb>k4\\xe1\\xf8\\x80\\xdbp%K\\x90\\xc6\\xae\\xb1\\xa2\\x05\\xcc5a\\xda\\xce\\x05\\xc7\\xb2N\\xf8\\xd4\\x90\\xcd,\\xb5rY@\\xea Ll\\x92r\\xcf\\x1c\\xa2\\xf7O\\x17\\xd1\\xe9\\x16\\xaf\\xbdN\\x04\\xf7C\\x97x\\x1b\\xb0=\\x0b\\x9c\\xb7\\xb7T[\\xe9\\x8c\\xcc\\xcfFd\\xea\\xc0\\xcf\\xfc.\\xf6\\xbc\\x8c\\x97\\xe0\\xd0U\\x9b0\\x1a\\xc3#\\x05\\xd6\\xa8h/\\xc9&,\\xda\\x8fl\\xc7?\\xb6\\xf1\\xeb\\xd3\\xaa\\xad\\xaa\\xb6\\x92y\\xded$\\xc3\\xcc\\xa9\\xad\\xef\\xc2B\\n\\xa7\\xb9\\xe9\\x88\\x04#8\\xc6\\xae\\x1fA?;''\\x8a O\\xbc\\x1d\\xe5_\\xc6k\\xf6\\x85\\xe8\\x9f\\xe5\\xe7\\xc5\\xe3i\\xbd\\xc8\\xe7\\xd3z\\x91i{\\x11\\xedQ\\x9fY\\x07\\xf9\\xbd\\xe5\\xac\\xd7^\\x84\\x9a%^\\xe8\\xe2\\x88\\xcc\\x97\\x83\\x11\\xe9gp\\xb5\\x98\\x8e\\xc8\\x14\\xf8\\xcd\\x19\\x91\\x92<\\xff\\xac\\x0eU\\x06r_c3\\xb0\\x1c\\x03rE\\xe8$\\x89\\xd3W\\xf4n\\x84b\\x80bp\\x17$%\\x97$P,lz\\x065S@\\xd1B\\xed\\xe9\\xe0\\x82\\xa4\\xc3\\xa1[\\x98\\xd4\\xe1\\x0c\\x03\\xdfc\\xfd\\xf3\\x11\\xc9\\x06#\\xcd\\x96\\xe1P\\xdf|\\x81\\xa6F$5hn\\x16=\\xb9&\\xe3)\\x99\\x91\\xbe\\x0f\\xdbM\\xb6\\xf7)\\xd2A)\\xebi\\x8a6\\x0eF\\xfa\\x0e6\\xb4Q\\xc91G\t\\xd6[\\x82L\\xdb\\xf8\\xf1\\x8al\\x06\\n\\x16\\x07\\x05\\xecF\\x1c\\nt\\x0f\\xfc\\x89`T\\x0f\\\\(.\\xb3\\xd1\\x02-\\xa9_2\\xb6\\xb4r\\x8a\\xb4\\x92\\xe6R\\xd3\\xb4D\\x13k%M\\x03N\\xa1\\x8aV\\x8f\\xf7J\\xa2\\x14\\xb5rI\\xa3\\x94\\xa4*\\xb0\\xd2\\x96K\\xd83?\\xe8\\x80Z\\xd6\\xb4\\xa0\\xb1\\xb8 \\xbc \\x1c\\x9d\\xf4\\xfbj}\\xfb}>*\\x98TW\\xa9\\x0d\\xe2\\xf8\\xe0b\\x00D\\x82k\\xd4\\x89\\x0d\\xce\\xd4-5\\xcc\\xaf\\xd8\\xb0*9\\xca\\x1bWx\\x94\\x0f\\x05\\x88wh\\xcf\\x98w\\xcf&\\x1e\\xf2\\xd6\\xfb\\x8bS>\\x97\\xcd\\xd5\\xb3i\\xd5\\x9e\\x90\\xea\\xf4\\xaa!>Z\\xfb?;?sR\\xd04'/53\\x1c\\x05\\x9d&\\x9c\\x109`=\\\"\\xbb\\x11\\xd9\\x8fH8\\\"\\xdbnt\\xf1\\x00)}\\x00]\\x0c\\xeat15t\\xd1\\x03\\xba\\x18\\x8c\\xc8Y;]\\xf4:\\xd0\\xc5\\x84\\\\\\x91\\xc0\\xd2EE\\xb4<\\xa4\\x8b\\x1br\\x891\\x1c\\xfaO\\xcf\\x91\\xa2\\xad!k\\x85:n\\xd0\\x18g\\x8a\\x14i=\\xb8 \\x9b\\x1a\\xad\\x042\\xe0+\\x807\\x07\\xa0\\xd9C\\x13J\\xb0\\xd4q\\x1bG\\x18\\x7f\\xca\\x00\\xa9 \\x1c^)\\xca\\xf0\\x11\\xc1\\x83\\x96m};\\x18\\xc7\\x8dz\\xa4\\x082\\xb9&\\xfd\\xb0\\x0e\\x98\\x05J\\xc9\\x13\\x90\\xa1\\xd7\\xc3\\xd4\\xdd\\xa0\\x00\\x9f\\x06\\xcf\\x01\\xd9\\xc5@\\x01\\xe3d+\\xb6\\xb4fJ\\x8e\\xd2\\x96wl\\x15/\\xeb\\x1bV3\\x1d\\x11oPf\\x13\\xe9$\\xdf\\x9c\\xcc\\xb7\\xc8\\x1d\\xaai\\xae\\x8b/:.g\\xe80y\\x03\\xff\\x0f\\xfbR\\xba\\xe2M\\x9b\\x8f\\xc7T\\xfcV\\xa6\\x02\\x04\\xb3\\xd0\\x05\\xed\\xb1\\xa3\\x94\\xa4m\\xa8\\x8f\\xe4?\\xfe\\xf1\\xfc\\xa7\\xc8Y\\xfc\\x06\\xce\\x92s&\\xbf\\xc6\\x99\\x9c\\xfc\\xc7?\\x9a\\xff\\xf8\\x87\\xf8O\\xfa\\x0b\\xf1\\x1f\\xbf\\x9d\\xff\\xf8.\\xfe\\xe3\\xffM\\xf9\\xcfCP\\xb0\\x11\\xff`\\xc0#\\xdc\\xdd\\x81\\x9b\\x0f\\xbb\\x83\\x8b\\xc8%\\xe1\\x17$R;\\xb8\\x12V\\x00\\x82\\xc5\\xf3h9\\xb0\\xb3n\\xe6A\\xef@\\x84\\x19@\\xd7.D\\xe4\\xde\\xe2\\xfe\\xb5F\\x03\\xa4\\xf2\\xd26\\x03\\x06\\xa0\\xbe\\x9c\\xf0\\x1eY-=\\xa9\\x18>\\x93\\xd2B\\xb6ju\\xa0M,\\xbf\\xa8f7\\x9e\\xb5P_-\\xfa\\xb7^\\xf1\\xd8\\x05\\xa9Aa\\xfd1\\xa3\\x90\\x02\t]\\xe1\\xa2\\xb9\\x11\\x87\\x91\\xcc\\x03\\xbab\\xc1\\x88\\x9cL\\xc1\\x0c\\xc7QUQ\\xbfU\\xaek:\\\"\\x89\\x96\\xb3\\x03ERSSM\\x1f\\xd8\\x89\\xde>\\xb3\\xc1\\x88\\x9cl\\xaa\\x17\\x89\\xf4d\\xe7C\\x01F\\x89\\x03W7\\x01\\x01\\xa9%y\\xe5\\x12\\xa3\\x83\\x9bu\\x92o\\xd8\\x1d\\xe70\\x0dNT\\xf46\\xdc\\x1b\\x0ek\\x9f\\xc1KT\\xae\\xec\\xa0N\\x85\\x86\\x1b\\x0c\\xe8I\\x17x\\x89\\x03\\xe6\\x16h\\x89\\xbeB\\xdb\\x12\\xe4\\xb0\\xa5CDw\\nw\t\\x88\\x8a\\xd7\\xa4\\x0f\\xdb\\xd1\\xf9r\\xd0\\x11\\xce\\n\\xedo\\x86D\\xa0\\x03\\x9a\\xb6`\\xb3\\x1d\\x80\\xcd:\\x82\\xd5\\xa8\\xa31?\\xab\\xabqY\\x11\\x9a\\x9f\\x01\\xa8\\xa5\\x1a\\xab~)\\x0c\\xe3\\x07C_e\\x95\\x1fcT\\xc7c\\xaf\\x01.\\xb8\\xb8\\xa2\\xa0\\x07\\x9a\\x00\\xb4\t\\xa2\\xcd\\xea5\\x9e\\x7fZ\\x0e\\xf2eW\\xa4Z\\xda`=\\x1b\\xa0<\\xe3\\xe6\\xf4&\\xf7\\xdc\\x16\\xcb%\\x10\\xab=\\xcf\\x17I\\x9c\\xf4\\xf3\\x80/q\\xbe\\xef\\xcc\\\"\\x01\\xe7Y\\xd7\\xc5\\x84\\x99\\x12k8jI9\\xdc\\xe8!\\\\-\\xc7\\x87\\xae9<\\xa6{\\xf8\\xaa\\x83\\x83\\xb5\\xd60\\xdf\\x06\\xb3\\x1a\\xa6\\xc4-\\x85\\xf8\\xc8Q\\x8b}\\xf2\\x07\\xdd(!q\\xf4\\xf2\\x10n\\x1dD\\x9c:\\x8d\\xac\\xa5t\\x81\\xcdM\\xa5\\xdb\\xa0k\\x81\\xac\\x02\\xd5\\x07\\xc9U6\\xd9\\xee\\xafy\\xb3W\\xbf\\\\\\xdd\\xdb\\x9f\\x8f\\xfb\\x83\\xc5|\\xb1\\xfc\\xf9\\xfd\\xf0\\xfa\\xc9\\xe4\\x93\\xc5\\x1b9\\x9a\\xfd\\xfa\\xf2d\\xb1X\\x0e@\\x11\\xbcX|2\\xed}\\x8c=\\x84C^)\\xee\\xee;\\xec-J\\xca\\xb3\\x86mC\\x9e\\xf3{\\xb6\\xfd\\xea.\\x01q\\x17\\xae\t\\xf5\\xdf\\xc8y\\x0f\\x824.\\xa2\\xfe`\\xbe|\\xbc\\xe8MF'\\xd7\\xe3\\x9e\\xbe\\xd9\\xd3\\xeba\\xf0-n\\xee\\xf6\\xa0\\xa9\\xe0r\\xd0W\\xa5\\xca\\x17\\x9d\\xeb\\xd0t\\x8c\\xdbe' \\xcdV\\xa9\\xe0\\xfd\\xa9\\x03/\\x07\\x934\\xe6\\x1d\\x83\\x93\\xea\\xfa\\n\\xe7\\x9a\\xe6\\x04\\xd0Uo\\xa9{\\x12\\xfb7\\xe8\\x7f\\xf2\\xc0q\\xe9\\x19\\xf9\\xa80\\xda\\xa8 \\xc1\\x97\\xfezDz\\xdb\\x9e\\xda\\xf9n\\xacd\\x94\\xe7E\\xd1\\xe4\\x0c\t\\xe6\\xae$\\xb0\\xc7(\\xb0\\xbb\\xe9Ju{\\xb73g\\xb5\\xee\\xfc\\xa4\\xb8\\xa1\\xec+\\x92\\x0f\\x05\\xac\\xf4^\\xd9[\\xbe\\x04\\xba,\\xc6\\xe3\\xe6\\xda\\x88\\x81B\\xb0;\\xa17\\x13To\\xf6\\x06\\x07\\xf7\\x86\\xe6g5\\xe0g#\\xd0\\x93\\xd1|\\xb7\\xb1\\x99\\x044\\x15\\xdfDkv\\x87\\xdf=-\\xc3\\xedY`D\\xe3\\x0b\\x10\\xdf7\\x13v\\xc7\\xbc~\\x06z\\x8bB\\xa9\\x97\\xa8>?He\\x8b?M\\xd9\\xa0S\\xcdt\\xb6\\xf8\\xb3bI\\xa67\\xa6\\xc1\\x88$\\xa8O#C\\x92\\xcc\\xa7K=\\xb8\\x1dB\\xd1\\x91C|\\xa6\\xf8{\\x0fn\\x9c\\x8f\\xef\\x9b5S\\xeb\\xd8A\\xadmq\\xacw-n$\\xf3\\xf3e\\x87\\xe8y\\xe4\\xb0\\xbcX\\xfc=\\xb4{\\x0f\\x99:\\xd5\\x83nE\\xfe6\\xb3s\\x88\\xcf\\x17\\x7f\\x07x~\\xf1\\xa7`\\n`\\xc1\\xe4\\x8bdL\\x92\\xf9S\\x83\\xa2\\xcd\\xaa\\x14\\xf3K\\x0b\\xda\\x9b~@.IVHxH\\x7f\\x1f2]v\\xa5\\xfd\\x12K\\xaaD\\x18\\x15A\\x03Jc$f_7}6\\x02\\xd7\\x06\\xe9\\x88\\x98\\x14\\x81:\\xedv\\x8a\\xf9A\\xc2\\x8dI5\\x87\\x16\\xa7\\x8b\\xe1X.&\\x8b\\x89\\\\\\\\\\xe3\\x7f\\xf2\\xe4\\xe4\\xe4D\\x8eFr<>\\xad\\x1ff\\x9c.\\xfa}O\\x8aPr\\x99\\x0c\\x16\\x83\\xd3\\xad_?\\xd8\\xa8\\xcf\\x9d7#\\xbd\\xff\\xfe\\xdf\\x1cS\\xc4\\xd5\\x87\\xff\\xd7\\xf1!Q\\x1f\\xfe\\x1f\\xc7\\x07\\x11\\xceH\\xef\\xaf\\xff\\xcb\\xff\\xdd+}i\\xb0\\xb6\\xe9\\\"M\\xe5r\\x94KZ\\xd2\\xda\\xaa\\xa2o\\x9f\\x06y\\xa9\\xb47*\\xb2\\xc2T\\xb3\\xc2\\xb4\\x89\\x15\\xd6\\x18\\xb1\\xdd4\\xa5\\xdd\\xf9qF\\xca\\xe5\\x0e\\xb3eRd\\xbb\\nK3\\xcbvae\\xc2YT\\xceK\\xd5+\\x1e4\\x0f\\xf2\\x93\\x9e~\\x0f\\xcfh\\xaeI@f$\\xb0\\xd2p<j\\xb7=\\xab\\xfe\\xb4\\xf4\\xe5\\xcf\\xc5D\\xc4\\xdf\\xc6\\xb7\\x8c\\x7fIS\\xd6\\xaf\\x18\\xdd\\x14\\x7fj\\x99\\xf1\\x89`\\xa9\\xe8\\xd3\\x81\\x85\\x97\\x16\\xcc/\\x86c\\x10\\xbb\\xff\\xfb\\xff\\xd7\\x1b\\x14R'?\\x9f\\x8f\\xde\\xc3\\x87\\xbf\\xfe\\xe5\\xbf\\x16\\xbf\\xf4\\xe7\\xd7'\\xcb\\xc1_\\xff\\xf2_\\xe1\\xe3'\\xd3\\xc9\\xa4\\xfe\\xf5\\xe7g\\xba\\xec'S\\xf5_1\\xc3\\xc8\\xd6;*\\x95{#\\xe7o\\xc6\\xcb\\xc1x<\\xee\\xab\\x07\\xf9\\xc9\\xe0t\\x1bB\\x0d\\x7f\\xfd\\xcb\\xff\\xfe\\xc9y%\\xef\\\"\\x1d\\x8c\\xc7\\xfdEZ\\xca\\xf6\\xbf\\xd5\\xb2\\xcd\\xdf\\x8c\\x17\\xa9\\xaa\\xb4\\x8fO\\xf5\\xec\\xe0\\xbf%W[\\xd3\\x8f\\xa2[\\xb5Dc\\xfe\\xb8\\xb7t\\x11\\x07H\\xdf\\xd6)\\xc2\\xe9|\\xbcHqw\\xb4<u\\xed\\xb0h\\x9b\\x85\\xe2I_\\x98\\x83@\\xc0_#\\x98\\xc3\\xb4\\x9f\\xf8\\x88\\x04L!o\\xa1\\x93\\xf56\\xb2\\x03\\xa6\\xd7v+\\x01tY\\x1b\\xc4\\xdaD$\\xcd\\x95Q$\\x0f\\xa07\\xbes\\xd3f\\x8fdG\\xe4~DV#\\xf2vDn?\\x8c \\xddj\\xcd\\xef\\xaa\\x890\\xad41X\\x1dO\\x98V\\x9d\\x08\\xd3[R.\\x92{N\\xb95\\x80\\x80T.P\\x87\\xa3f\\xf9m\\xae`m\\xda\\xb7\\x98_u\\xe7\\xa0H\\xd8\\xdb\\x12\t;\\xd1\\x04\\\"\\x82\\x0b#Nus\\xf5\\xa7\\x8fK\\xb1&\\xb3Q\\xd8\\x92\\xab\\x1cb\\x18\\xba-\\x0c\\x1d\\x1e?\\xdd\\xce\\xb7:'\\xb9\\xbc\\\"\\x9b\\xc1\\x05\\xd9\\x8e\\xc7-'J\\xe6W\\x18\\x83\\xadB.\\x94\\xab\\xf4&\\x05\\xf6Wv\\x05\\x0f:\\xcbVl\\x86]\\xb8 J\\xb0\\xf2\\x800\\xc6\\xa5]\\x90\\xde\\xf8\\xc4\\xb8\\xe1\\xf1\\x07\\x83\\x8b\\xf6a6?\\xf0\\xf5A\\xae\\xc8\t\\xed+\\x14\\xd6\\xbb\\x931\\x99j\\x810\\xb5\\xfb\\x95\\xe9\\x88\\xdc\\x93+\\xd2{\\x8c\\x13\\x93\\x82i\\\"\\xa8\\x0e\\xb0l\\x80\\xc7\\xd6I\\x97\\xf90?\\xd5\\xfa^\\xd5\\xb0\\x1e\\x91P\\xfdM\\xbaAm~0(m\\xf3\\xd8W\\xf3\\xa0\\xa6rT\\x99R\\xb2\\x19\\xe8)=\\xaaA\\xa2\\x81\\xdeMR?\\xda\\x06\\x0c\\x86\\xe2^\\xb5T\\xa8\\\\\\xa5m\\x8e\\x19\\x86\\xe2/\\x07\\xf8\\x9e\\\\\\x93\\xfe\\xdb\\xf9\\x0e\\x97Z\\xf1\\xb82s$\\x8f\\xc8\\x0e\\xad\\x0drb\\x82\\x16\\xb1\\xf3\\xf3e\\x85md\\xfd\\x82\\x00\\xa0'\\xd8Q\\xee\\xe9\\x12\\xb4\\xc9\\x1f\\x03\\x84\\xb3\\x07\\x820]*\\x96W\\\\R\\x87\\xd7\\x8a\\xeb\\xa7\\x9a\\xf2\\xa3\\x8cU\\x82ot\\xf9\\xd5\\xd5\\xa0M\\xbf=\\xb9&\\xb7\\xc7\\xecs\\xcc\\x0fF\\xb1U\\x07\\xed\\xfa%q:\\xb3CwTID\\xdd\\x19q\\xc4\\xc1n\\xfb\\xe9\\xbd\\xd2\\xa6s!\\xb0Z\\x0d\\xd5\\xe2\\x80\\x15\\xd2?\\x8c\\x00\\xbd\\xbf\\xfe\\xe5\\xbf\\xb8\\\"\\xa8\\xba~\\xef\t\\x0bR\\xf6Q\\xab\\xfe\\xa8{000\\xaf:~\\x05y\\xea\\xf6\\xf6V\\xfeF.f\\x8b\\xd3\\xc5\\xa9Sn\\xf2\\x1b5\\xd3\\xa7o.\\x17\\xa7t\\x91>yyj$\\xa4v\\xf1\\x88\\xd6\\x8c\\xd7\\x8d\\x11\\xfa\\xdc\\xa1\\xd7\\x10\\xd6\\x82\\xcb\\x8d\\xc1\\xaa\\xb3\t\\xba\\x8cj>\\xa7\\xcax0#'\\x0d\\xb1+XH\\xfd\\x96\\xcf\\xe2\\xd6\\x17\\x82\\xf1\\xe6\\xca\\xb5\\xbc\\xfcuT\\x08\\xcc\\xd9t\\xb7\\xc5\\xfc\\xd2[_x;\\x85$[&^\\xdf'\\xac\\x7fPh\\xf0h\\xcaH/\\xe3Aov\\x10\\x19\\xd91k^\\x89,3\\x12M 2\\x19[\\xbffw\\x1d\\x97=\\x8c*\\xf4\\xe0O<pD\\xbe\\xa9\\xfe\\x9a\\xce\\x9d\\x8a?\\xb8\\xb0\\xdb\\x9e\\x0d\\x07\\x02f\\xed\\xefk(z\\n$\\x11\\x83\\x9a\\x11\\x86\\xe5+\\x95\\xd0/\\xec\\xa8\\xde\\xe8\\x1c\\xa7\\xfe\\xa8\\xe4\\xd6\\xa6\\xe9\\xe78\\x03\\xb3\\x9f\\x1a\\xbf\\x98\\xcd\\xcc\\xd4\\x99\\xa3^\\xae:-\\xba|}\\xc4\\x02?\\xbaIg\\x84\\xd5\\x87\\x84f\\\"V_\\xd52)\\xc7\\xa4v\\x05\\x93:v#\\xc3\\x9b\\x0e\\xa0\\x8a{\\x99\\xc2\\x0e\\xa0\\x0e\\x9f\\xda\\x99DY\\xd0\\xaax\\xd1\\xf7p\\x1a\\xf68\\x05K\\xa5{\\x97\\xa5\\x92s\\xack\\xdb\\x9a\\xfb\\x8e\\x07\\x1f\\x85\\xed\\n\\xe8[\\xee?\\xd6\\xf9G\\xee6\\xa8\\x07\\x16\\x91\\xa0L\\xca\\x8e:\\x05\\x81z\\xf4-t-w\\xe7\\xaa\\x9c-\\xc8\\xe7\\x96\\xd5\\x9d\\xbe\\xb9\\xa4\\xf3\\x97\\x8btiX\\xc3v\\x80\\xc6\\xa1\\xfa\\xca\\xe8n<\\x1e\\x11\\xbf\\x9f\\xe6\\x0e\\x06T\\xe2p8P\\xb21\\xe4\\x82\\x94\\xc2\\xe6+o+\\xc6\\x1a\\xf3\\xb2]\\x80'\\xba\\x03+8dTr~_\\xe1\\x06\\x85\\xcb\\x04\\n\\xbdQ\\xe8_Mr\\x8c\\xb6\\xbb\\x0e\\xdb\\xab}iO\\x19B\\xc1~\\xa0`\\xde[\\x85\\x81\\x11\\xef\\x0eS<b&\\xdd\\xd3\\xdb\\xe85\\xb4\\xa6w\\x84\\x1b\\xdc\\xb1n\\xc8\\xa5m\\x16\\x8dos\\xd37\\x88sI\\x05\\xfbV\\x81\\xb1\\x9fo\\x96\\x93\\x8c\\x07\\xa8\\xa9\\xd2v\\xc9F\\x8b\\x06\\x1f\\xf5\\x0eU}V-\\xadG\\xc4;\\x86D\\x92\\x07i\\xc3IQ#\\x1e\\xe4j\\xe9\\xa4\\xa3R\\x9c\\xe4\\xc2\\xde\\xbaS\\x01\\x88,\\xf0\\xd0\\x8eY\\x07cG\\xf4N\\x1b\\xf3\\xea\\xe1\\xef^N\\x1fX\\xb5\\x99\tU\\x7ff :\\x9cK\\x11\\xad\\xc0|\\xe8H<t\\x8a-\\xa6u/{\\xe4\\xf4>\\xbcO\\x05\\x1ax4t\\xe3qw\\xf8\\x02\\xb4\\xa4\\x07TO\\xc80\\x1f\\x13C$:\\x88C\\xea\\x17\\x14\\x0e\\xad\\x1e\\xda\\xe7\\x87\\xce\\xe3\\x11\\x88|\\xf4\\xfc\\xddW\\xce\\xae\\xb2\\xd2\\xd9UV>\\xbb\\xf2F\\xf6 M\\x9f]\\x1dl\\xa7}\\x9b\\x8c{\\xb5\\x83\\x95\\xe0\\xb9\\xc7x|\\x01\\\\RkSN\\xae,\\x85&xk\\xdb\\xd0\\x0b\\xf8\\x94\\x19\\xeb\\xf5\\x8b\\x81b\\xcb\\xb6\\x8dN;\\xb8\\xbd\\x0e\\x8a8\\\"~\\x8e\\x1e\\xb1\\xbe\\xf9\\x8a\\x06p\\xb6x\\x95\\xe3\\x9d>9)w\\xe8\t\\xf9\\xc2\\xf2\\xb1\\xc9\\x8fi\\xf5\\xe3\\xd9d\\xfa|\\xf2\\xb4\\x92Z\\xcd\\xf4e\\x9c\\xdcs\\x7f\\xbb\\x13}o@\\xce\\xcf\\xa6\\xcf\\xc9?s\\xb6\\x8d\\xf9=\\xf9\\x9f\\xa8\\x17\\xafRr\\xb9\\xe5l\\xfb\\x1b\\xf5\\xcf\\xf8GH\\x99xq\\xf8\\xb2Z\\xcd\\xabo^\\x93o}\\x8fE)[OH!\\x86\\xa1\\x1a\\xb74\\xce\\xb8\\xc7 \\x96a\\x80y\\xd2\\xd3\\xd0\\x17c\\xfd2Iv\\xc9\\x01(U\\x85\\xe9\\xec\\xf4t\\xeb\\x8b]\\xb6R\\x10\\x9c*\\x88\\x10\\xa0\\xd3\\xb6Q8-\\xbd\\xc3VtT6`o\\xb7\\x11\\x8a'\\x7f\\x12~`\\x1c\\xack\\xa7\\xf8\\x15+1\\xa7\\x80\\x1d\\xe7\\x17\\xa5\\xddg\\x99q\\x94\\n\\x9ey\\\"\\xe63\\x12\\xd7\\x17b\\xc6\\x83\\xd4\\xbdmm\\xd9\\xd1\\xe6\\xbbY\\xc7\\xc7\\x88\\xdd\\xfe\\x07?Z\\xc7\\xb7\\xee\\xcf\\xe5\\xad\\xb6\\xabr\\x9e\\xa9\\xb5\\xcbf\\xfa\\xdeL=G1\\x16\\xab\\xcb\t\\xb4\\x08\\x83\\xef(O\\x15\\x80MU\\xc0\\xde\\xecP&A\\xb7\\xbf\\xcd\\xfc`\\xdd\\x96\\x07\\xc3i\\x1e6\\x00\\xb3\\xf7\\xe4MP\\x0f\\xb5\\xb5\\xfb\\xbd\\x85\\xb4?0\\xd7\\x9f\\x07\\xd6>\\x8akQ.\\xc6W\\x8c\\x9ck\\xa4\\xb7\\x98\\\\\\x12\\xff\\x82\\xc4\\xcd\\x06\\xdd\\xc4\\\\HV\\xe5\\xe6\\xf1\\x01k\\x0f4E\\xb2z\\x84\\xf6\\xcc\\xa9\\xcd\\xcc\\xeeD\\xebu\\x14%\\xe63\\x0c\\x8a\\x84\\xa2w6 =\\xaa\\xafuB\\x0dt\\xabf\\xb2\\xaf\\x0fE'~\\xfae\\x10\\xa7\\xe8\\x04\\xe7\\x1aF\\xe2\\x15\\x15\\xbbIH\\xef\\xfa\\x91\\xda\\xab\\x8c\\x944?\\x83\\xdd\\xd2\\x88h\\x87\\x02U\\x7f\\xf5\\xc5\\x1f\\xe8\\xd2\\x10\\x8cH\\xf8\\xe2\\xdeBqLY\\xbc\\xbb\\xd5\\xaa\\x8b!\\xe6\\xf2\\xa2\\x99^\\xbd\\x13\\xfcA\\xf0\\xd66\\xd4O\\x83\\x12\\xb4\\xec\\xd3\\x11\\x16\\x0b\\xb33\\xa3\\x9bUi:\\xc1\\xad\\x11_-\\xd7{7V#\\xf0]p\\xdb\\x18#j\\xac~\\x95\\xaf\\xad\\x82\\xda\\x82\\x99\\xc0\\x1d\\x10(\\x0b\\xf2|\\x0f\\xe5\\xfe\\x85\\x06:\\xea@\\x17\\xc8\\\\\\xc5\\xbb\\xc0\\x08K\\xcf=\\x0dE\\xf0\\xad\\x1a\\x8e\\x98XF\\xe5\\xe4\\x89G\\x83\\xc0D\\x89\\xd1Tz0\\xca\\xa3!]\\xd9hH\\x82\\\\\\x13Af\\xe4\\x04\\xef\\x9b\\x82/\\x17;:\\xa8\\x15\\x02\\xe3qA\\xfc(\\x154\\xf2T\\xa1x\\xa2H\\xc2k\\xbaU\\x85\\x8b\\xfe\\xa0fvt_[\\xa2\\xd4\\x1fLV\\xea\\xa9\\xcf\\x8a~\\x96\\xba\\x0cb\\x89\\xf4\\xcc\\x9aE\\x01\\xf33\\xaaU\\x80!'\\xaf\\xad\\xc3\\xc9`s\\xec(e\\x028\\x15\\x92&94\\x83\\x91\\xe3,\\xc3\\xdd\\x85WE\\x1a~\\\\\\x1f\\n\\xe4\\xff\\x98N\\x14\\x8a\\xd9^\\x14\\xd2&E\\xcco&\\x15\\xc8r\\xa1B\\xf5\\xd8Lj5\\x07\\x86\\x9c\\xf0\\xdc\\x9c\\xd5rd\\xc8\\xac\\xdf\\x9a\\xb3\\x97\\x980\\x14)\\xa4\\xb8\\x89\\xcb\\xe0\\x88\\x99y]`\\x9c\\xc7ML\\xcer\\x8f\\x99\\x97\\xbc\\x94\\x9d\\x96/\\xe0vDa\\xb14\\xcfGA`\\x81\\xda\\xec{\\xcbp[\\x19\\x05\\xdb\\xd7\\xaf\\xcd\\x05\\n\\\"\\x0bRA\\xf3~\\xd4`\\x97R\\xde\\x8fH\\x0c\\\\\\xe6\\x90\\xe7,\\x92\\x8f\\x1b\\x8cM_\\xa0\\x9a\\xaa_\\x150G\\x06\\x9d\\xb5\\xef\\x9f\\xb8\\xbcj\\x7f\\xce3T\\xd2\\x94\\xec\\xea\\x94>\\xe9*\\x15\\x9cz\\xe2\\x15\\x13\\xbbx\\xdd\\x01\\x190\\xa8Y\\xcf\\x94\\xebuA8\\x14\\x9ag\\x87\\x07\\x81\\x14\\xe5\\xb0\\x88\\xf8\\x91\\xca&&;\\x9a\\xfe\\xf16\\xb2\\xd1\\xe8#\\x14E\\xd8<Z\\x12\\xf4\\x08\\xd6\\xc0\\xbe\\x0d.v\\x81\\x91\\xdd\t\\x16\\xad;\\xc2\\x08\\xe0\\xa1\\xfc\\xc7r\\xf1\\xbe\\x19\\xb9\\xaa\\xdb\\xb9\\xf7\\x0d7sJ[\\x85\\x86\\x05f$F\\xd0U\\xd7\\xc6\\xa6W\\xd8N\\xf4\\x06\\xc0\\xa4\\n)\\xa4\\xc3\\x04\\x13\\x90w\\n\\x85t\\xa0\\x11d\\xa6\\x94o3p\\x8c\\xd5 \\xe1\\x0cJ]\\x80\\xf0\\x80\\xadsCK\\xe0A\\\\F:I\\xb3\\x84qX\\x80xCz\\xcd\\x02&X\\xb9+\\xa3\\xca\\x8e\\x8c\\xa2\\x02!\\xea4\\xd7A\\xe0'\\xa9\\x9f\\xceZ\\xb7\\xe8\\xc5\\x9f5\\xe9\\xd2:\\x9a\\x97\\x18$\\x01\\xe6 \\xca\\x82@\\x89\\x15\\x11\\xb9&\\xbd\\xc9\\xa4\\xa7\\x84_\\x0c\\xafh\\x8c\\xbd\\x14\\xdb\\x07=\\xff\\x98DVu<$QW\\x82\\xad\\x15\\xbb\\x1d\\x91S\\xc9\\xc3_pN\\xef\\x0b\\x1e\\xbat\\x0d\\x83\\xbc#FY\\\\\\x8d\\xdc`~\\x85eh\\xf7:\\xac\\xf3\\x91\\x081\\xe7.\\xb0F\\x95te\\x9b\\x8eZ\\xf1a\\\\?\\xcer\\x0c\\x08\\xdc\\x7f\\xf9\\\"Z\\x7fI\\x13\\x91qv\\xc4\\xc0\\x9c\\x88\\xc96\\x88W4p\\x84g\\xfc3T\\xfb=\\xdb\\xb2\\xbb?\\x930K\\x05\\xd9\\xd1=#b\\xc7\\xc8\\xe3\\xedc\\xb2\t\\xe8\\x96\\xa4\\xac\\x16\\x98\\xd1\\xfc\\xf2\\x11\\xab\\xec\\x0c/\\x08.U0\\x90b\\xe03@_n.\\xe0G<\\x82Hzkv7\\xc8\\xf7M\\x11\\xda\\xaf`8\\nc\\x0e\\xa5\\x12[\\xed\\xb7\\xec\\x86\\xa2\\xde\\x08\\xd4]\\x1f\\xe1:\\x971R\\xee\\x95YfH\\x1f\\xfbx\\xdb\\xca\\x157\\xf7v\\xe7\\x0b\\x96&\\xd4c0\\x823\\x02\\x01\\x99\\x1c\\xfb\\x83\\xa2\\xbe\\xe3\\xf0\\xb6\\xc0\\xadw\\xb1\\xe1J#\\xc6\\x15\\xa8F\\xce\\xc8\\x13\\xa4,\\xa6\\xbc~\\xf5m'\\xbc\\xb2\\xdb\\xdd.\\xa0\\x15\\xb7%\\x02\\x8bahUQ\\x8cLi~\\x8d\\x82X\\xa5\\xb9cZ\\x93\\x92\\xf4:q\\xe0\\x94\\x89/Dy\\xaf\\xd8\\xe1\\xee\\x9a\\xde\\xd0\\xa8\\x92i\\x7f0g\\xcb<\\x8cn\\x97F\\xb7\\xf5F\\x8fn\\xb1K;\\xbasi\\x97\\x86\\xaa\\n\\x1e\\xddR\\xebB\\xaa\\xa0`\\x8e\\x7f]\\x80\\xdb\\xd6\\x81\\xeb2\\x08T\\x95\\x01\\x19\\xba\\xf0zU\\n\\x83k~\\xee\\x11\\xf9R\\xb1\\xcf.#RlU\\x8fd\\xbf\\x07\\xcc\\xb7W\\xd3p\\x92\\x06\\xf9n\\xbd\\xee\\xdc\\\\\\xaefC5\\x9a\\x99\\x08\\xa8\\xa0?\\x18\\xe5\\xb1\\x17+\\x04\\x05\\xf5kz.4\\xf7\\xc2[\\x04\\x118~\\xc7;\\x91\\\\\\xed\\xc4\\x15\\xe5\\xc5\\xfb\\x0b&\\xf1\\x02&=\\x9b\\xa4;\\x7f#\\xfa\\x8a\\x04\\x8f\tn\\xfb}\\x94\\x1c\\x147\\xa7H0\\x9b8\\xa2\\x1bG'FN\\xa1\\xc5\\xc0s]\\xb1\\x83\\xb30\\xde\\xb3\\xbf\\xfb\\xc1\\xa3\\xc5\\x1bV\\xa5\\x91TC\\xd9\\xae\\xdd\\x04\\x17\\x9c8\\xc8\\x170\\xeap\\xac\\x82\\xe3\\xadZ\\xf0X?\\x1d\\x11\\xc7u[rHc\\xf6Qgb[_2]VL\\xad\\xf9\\xce$yG\\xd3\\xce\\xf3n\\x85#\\xb4\\xe6\\xe8\\x91\\x1e\\x19V'\\x1f.\\n\\xf7\\nwi \\x13\\xd3\\xc9] J\\x99\\xf8\\xc6\\xf0\\xcf#\\xa0\\xaaq\\xe2\\xe38\\xa0\\xab\\xc9\\xe3Z\\xec<\\xe4F\\x07\\xd7\\xa1\\xa5\\x92\\xce\\xa3\\xa8\\x05oQ9\\x98\\xec\\xa0\\xf3\\x03\\xac\\xf8A\\xf0\\x03\\xbce\\xde\\xbb\\xecate\\x82*H=\\xb7\\x18\\x98\\x8c\\xf4^\\xf6\\xf2(\\xbev\\xa4\\xd4J\\xef]\\x9eb\\xc1\\xde\\xcb\\xde\\xf2(\\xd5q\t\\xbc\\x0eC\\x81b\\xb3\\xe5BV\\x90\\xafF\\xf12\\xbf\\xea\\xd0\\xe9\\xf5\\xd1>p\\xf3\\xe5!\\xa1\\x9a\\xf8\\x11a\\x03\\xc2\\xdc\\xda\\x00\\xa1\\x05f2$\\x8f1\\xc2\\x02l=0*X;=\\xcf\\xa9E}\\xf4J)\\xef\\x95(^\\xd3[\\x1d!\\\"\\x7f\\x14\\xd1\\xb7\\xf3\\x14wi\\xa2\\xa8u22\\x7f\\x9b\\xef\\x0f#\\xad\\xf6h\\x8b\\x99\\x01Ey\\x07\\xe6\\x1fO\\x03\\x10\\x05X\\xe1\\xf4\\nU\\xed8\\x96\\xbf\\xe7l\\xd3\\x1f\\xb4 \\x88\\x9f\\x93\\x08\\xa8T\\xfb\\x9b\\xd63\\xc1\\xeeD\\xbfP\\x1b\\xea\\xed\\x9b\\xd4\\x13]F\\xaf\\x00sG\\x81\\xd9\\xec\\x93\\x9bG\\x8eX\\xdb!\\xd1\\x98\\xc7\\x01\\x8a\\xf9Y\\xbe\\x8e\\xb0}\\x99\\\"\\xefP\\xbb\\xc9\\xb6y\\xe5\\xc6D\\xdd\\xe8R\\xcc\\xc6\\xc9jPu\\x06\\x8cmH\\xaeH\\xef\\xed*\\xa0\\xd1M\\xaf\\xab*\\xa5\\x0cO\\x17\\x94+I\\xe0V\\xcb\\xda\\xbeD\\xe1\\xa4fhi\\xe3\\x90\\xf4\\xc6\\xc8\\xdcf\\x1d)\\x7f\\x0dc\\xba@jU\\xd9\\x1a\\xd8u\\xfcZ\\xab\\x91\\xab\\x8aY\\xe2n5/pDs\\x86\\x98h\\x1d\\x95=\\x963*l\\xc5\\xee0\\x90\\xc7\\xe4\\xbb?\\xfe\\xf0\\xcd\\xebo\\xfe\\xe5\\xab\\xb7\\xdf\\xfc\\xe1\\xebo\\xfe\\xf0\\xcd\\xeb\\xff\\xd8\\x8d\\x829\\x8fu\\x8e c\\xaa\\xbc\\xde\\xe3\\x83\\x86\\xff\\xb4\\x7f=\\xeb\\xcd\\xdf\\xf4\\x96O\\xae{\\xf2\\xf1\\xfc\\xcd\\xe3\\xe5\\x93\\xeb\\xc7r\\xfe\\xe6q\\xef\\xea\\xf2\\xe5\\x9f\\x17\\xe9r88E\\x06w:\\x7f\\xb3H\\x17g\\xbd\\xc7/\\x17\\xa7W\\x8b\\xbb\\xb3\\xe9xq7\\xfdzq\\xf7\\xe9\\xd7\\xcb\\xe1\\xe9\\x04\\xcdC\\xd4\\xec\\xf6\\xafg\\x8bE\\xfa\\xe4J\\xfd\\xd3\\xc3[\\x93\\xf6\\xdb\\xe0\\xba7*\\xfa2\\x99\\xab\\xdc\\x8aU^\\xf6O~\\xf7\\xc7/_\\xff\\xc7\\xef\\xbe\\x1a\\xa8W\\x9d\\xbaX\\xa4\\xc3\\xfcU\\x8cHO\\x82{\\x94B\\x85\\xea\\xf3\\xe0\\x89\\xe1\\xb6\\xf8.\\x0bU\\\\\\xf6O\\xa1\\xd1\\x1e\\xf8\\x9b9\\x9d\\x9f\\x8d?\\xa7\\xe3w_\\x8c\\xff\\xd32\\x7f\\x9c-\\x9f\\x9cV\\xeb,C l+\\xaaW\\xa7\\xd7\\x85\\xf6r\\xfe=\\\"\\xbd\\xad\\xdfs\\xd1B5\\xe8_\\xee(\\xa7\\x9e`\\xdcDT7\\x9a\\x96\\xfe\\xa3h\\x95&\\x17\\xf2\\xd1\\xaf\\xa7/\\xce.\\xe4\\xa3@\\xa8gx\\xdc\\xe2\\xe3\\xf9\\x85|\\xf4S\\x16\\xc3\\xcb\\xd3g\\xf0\\xef\\xe7\\x17\\xf5\\xeb\\xf6\\xea\\x07f\\x0e]\\x10\\xb6\\xb4\\x1b)\\xec=,~\\x94,#\\xe6\\xcb\\x0bT\\x95\\x9e\\x18\\x1f\\x8f\\xdch\\xc4\\x0eo\\\"\\xd0D\\xe2\\xac\\x83\\x89\\x84\\x98O\\x97\\xa0\\xfc\\x99?=\\x90[\\x11\\xc4\\x93\\x13q\\xd0\\xcdFP\\xd1\\xe4\\xc6#\\\"\\xb4\\xa6\\xae\\xd9j \\xb0\\xeaa\\xe4XjL\\x15\\xdd\\xf9\\\"Z\\xc3\\xe4\\xdd\\xff!^\\xb3\\x14\\xcc\\x89}\\x10]\\xb4\\x96\\xdd\\x1f\\x91h`\\x13\\xfb\\x05\\x9a\\xff\\x15\\x1ai\\xa8r}\\xedc`\\xa0u\\x83\\xc2\\xea\\x06i\\x93\\x8f!\\xd2\\xb8\\x99R\\xe2]\\\\\\x08Prh*\\xbc\\xeap\\xb4\\x8c\\x82\\xd7m\\x14<\\xf7(\\x1c\\xd1\tM;\\xfd.T\\xb9\\x01\\x8a\\xe30^\\xebw\\xa3\\x9clVt\\xd2\\x96n7/\\\\\\xbd_\\xd7\\xeb#\\xb2\\xcau\\x8e\\x96C\\x10t\\xec\\xfc\\xd0t\\xc0\\x1e~\\xce;\\xac\\x8ch\\xce\\xc1\\x8bl\\xf3t\\xd1\\x82$]\\xc0<5V\\x88v\\n\\xe12w\\xa6|$\\xfb\\xd9C\\xa6\\xae.\\x165J\\x1b\\x85\\x95p\\xf4\tN\\xcd\\xb0\\xa1\\xb8\\xacZ\\x04_\\x10\\x19ZN\\xf8\\xacd\\\\q8\\xd1\\\\\\xc2C+\\xaaj\\xc8 \\xf3;FT\\xcd\\xc7\\xbe\\x0b\\x127\\x8eD>\\x83\\x07\\x07\\xe2\\x83A68\\xf5!\\x00[\\xbc\\xfcx\\xe0\\xfe\\xaa\\x9c\\xc1!-\\xa9\\x06\\x8f\\x90\\x95\\x10\\x00\\x97\\x11\\xe4\\xdfl3\\xa87]3[E\\xe9\\xc8\\xdf\\x9d\\xbf,!wQ\\xc7\\xa8\\x8e\\x1e;\\x9e\\x85\\xb5W\\x1bR\\xe7\\xc0;G\\xd8\\xeeI]\\x83l\\x16\\x99\\xebV\\xa7\\x1d\\x98\\xae\\x1d\\xb5\\x86\\x92]\\x87\\xfdC\\x0ew\\xba\\xb4am1\\x8flB\\x0f\\xcb\\xd1\\xf3e)\\xc4\\xc3\\xa7\\xeb\\x01\\x83\\x8ef\\xa1\\xc7\\x02k\\xa8\\xc3\\xdf\\x12T\\xb8\\x7f\\xd1\t\\xd0\\x06\\xa3\\xb4#(\\xcb\\xc7\\xb7\\x0b?h\\xf8\\x8d\\xf7e\\xb9\\xd9\\xfbE\\xb0\\xa3\\xfbb\\xfc\\x9f\\xe8\\xf8\\xdd\\xd9\\xf8\\xf3\\xc5d1^>)\\xbc\\x8f\\x97\\xa7#\\xed\\x14l\\xd2\\xbf\\x9e\\xf9\\x91`<\\x02/}4\\x90\\x96\\xfc\\xf9q\\xa4^\\x80$\\xc5<\\x95LeK\\xb8\\x9f\\xb2T&\\xbbX\\xa0W\\x9a{\\x99\\xf0x\\x8d\\xd9S\\xb9\\x89\\xb3h\\x0d5I?\\x0c\\xe3\\x95\\x1f\\xf8,\\x92~\\xb4\\xceT\\x1fX*C\\x1a\\xd1-\\xacUU.a\\\\\t]R0o\\x17\\xc5A\\xbc\\xbd\\x97\\xde\\x8e\\xfb\\xa9\\x08i*\\xbd8\\x0c\\xb3\\xc8\\x17\\xf7r\\xeds\\xa6`\\xb8\\x97l\\x9dyX=\\xfb)\\xf3\\x13\\xa8\\xc7\\x8fR\\xe1\\x8bL0\\x19R~\\xc3\\x84\\x1fme\\x1a\\x07\\x19B\\xb4\\xa7X \\x95+\\xca\\xb7\\xd4W\\x0fq&\\xfc\\x9f2&W\\xa8(L\\xa5\\xda\\xbe+\\x99Yz\\x01\\xa3\\x11>\\xc4b\\x07\\x0fq\\x98d\\x82q\\xb9fa\\xecq*\\xe4\\xda\\xa7a\\x1c\\xadS\t\\xfd\\xf7\\xbdT\\xee\\xe2`\\xedG\\xdbT\\x06\\xfev\\x07\\xed'\\x94\\x8bH\\xd5\\x9c\\x04Y\\xb8\\x02\\x88\\xb2$\t\\xa0\\xaf\\x9c\\xfa\\xd0\\xc4\\x9eEJ\\x1eM%\\xf5\\xe8\\x9a\\x85\\xf7\\xd2\\xa3\\x9c\\x014q\\x98\\xd0\\xe8^z<\\x83\\xc1^\\xc7!\\xc0\\xcd\\xee\\x928ek\\xb9\\x81fR\\xb9\tb5VrK\\x83\\x80\\xf1{\\xb9\\xcd|A9\\x80\\xe3\\xaf\\xe9\\xbd\\xbc\\xf1\\x15VD2bY*(\\x97\\xf1\\x8d\\x1f\\xd1[*9\\xf3\\xfc\\x84\\xa5\\x92\\xb3H\\xd0@\\xfd\\xdd\\xfb\\xec6\\x95\\xe9\\xce\\xbfIwT\\xa23\\x88\\x14@\\x8e\\xb9\\x90\\xe9}*X\\x98J\\xbae\\x91w/W\\x8c\\x07~$=\\x1a2N\\xa5\\x07h!\\xbdx\\xb3aL\\xe1\\xcb:N\\xa5B\\x81h+Y*\\xa8`\\x92\\xa9\\x9e\\x02\\xf8\\x8c\\x0b\\xb9\\xc9\\xc4*\\x0e\\xe4\\x0d\\xcd6,\\x92Av\\x97\\xf1{\\x19R?\\x8d#\\x19\\xc6\\x11Mw2\\xccR\\x96\\x852\\xa2\\xdb\\xf8\\x9e\\\"\\xae)(\\x13\\xeas\\xf5\\x07`\\x8a=\\x9f\\x068\\xaa\\xf7RP!\\xe2X\\n\\x9fEk\\xaaFx\\xcf\\x02\\xb9\\xf7\\xe9\\x8f,\\x95{?\\x08\\xa8\\xfa\\x93*\\xb4\\xd9\\xc7\\x00\\xd9>\\xbe\\xa7[&\\x01\\xb3\\x11\\x0d\\xd4\\xe8\\xafS\\xe9\\xed\\x18M\\xa4\\xa7\\xf6\\x1drM#\\x8fIX\\xb4r\\x1b\\xd0T\\x8dl\\x96*4\\x8b\\xb6\\xb1\\x8c\\xfc\\xe8G\\n\\x13\\xad\\x97\\x83Lw\\xb1\\x1a\\xb58\\xa0\\\\\\x8aX\\xcd\\x80\\x88o\\xeec)\\xe28H\\xe5\\xadZ\\xa3\\xf26\\xe67\\xa9\\xa4\\x8c\\xc7\\x92\\xf2\\x84J\\x9a\\xfaT\\xaeX*\\xe4\\xca\\xbfar\\x15\\x00Z\\xbe{\\xa7\\x867\\x91^\\x90\\xad\\xa4\\x17\\xc7jU\\xc6\\x89\\xdcP\\x1e\\xca\\x8d\\x9f\\xee\\xe4\\xd6\\xdf\\x08\\xb9\\xcdx&\\xfdh\\x13\\xcb\\x1f\\xe3U*o\\xfc[_\\xdep\\xb6\\x96\\x01\\x8d\\xd62\\xf0\\xc3X\\x06~t#C\\x16eR-F\\x19\\xc6k*#\\x1a2\\x99(\\xbcM\\xd4\\xd7$N\\x85\\xfc)\\x89#\\xc9}o'y\\xb6\\xe32ew\\xf7R\\xf8I\\xaa\\xc6\\x8b\\xa9\\x7fbyK\\xa3\\xad\\xbcU\\xcb\\xf9\\xd6\\xbf\\xf1\\xe5\\xbb8bjI\\xc9\\x95\\xbf\\x96+_\\x01\\xbcR\\xebHz,V\\x18\\xac\\x96\\xaa\\xdc\\xc6{\\xe9GB\\xde\\xf8\\xa1\\x0c\\xfd@FL\\xc88\\nd\\xcc\\xb7j\\xf9\\xcb$[I\\x05\\xb0`\\x81\\xcc\\xa2X\\xde\\xb2\\xb5\\xbc\\xbb\\xbb\\x93w\\xf7\\xef$\\xf5$]K\\xca$\\xddH\\xba\\x95\\xd4\\x974\\x904\\x944\\x924\\x96\\xf4'I\\xb9\\xa4\\xa9\\xa4B\\xd2L\\xd2[I\\xef$}'WT\\xaeVr\\xb5\\x96+&W\\x1b\\xb9\\xda\\xca\\xd5N\\xae|\\xb9\\xfaQ\\xaeB\\xb9\\x8a\\xe4*\\x96+.W\\xa9\\\\\t\\xb9\\xda\\xcb\\xd5\\xad\\\\\\xdd\\xcb\\x95\\x02_z\\x9e\\xf4\\xd6\\xd2\\xdbHo+\\xbd\\x9d\\xf4|\\xe9\\xddH/\\x90^(=E\\n\\xa5\\xc7\\xa5\\x97Io/\\xbd[\\xe9\\xddI\\xef^z\\xef\\xe4\\x9a\\xc9\\xf5\\x8fr}#\\xd7\\xa1\\\\\\xc7r\\xfdN2O2&\\xd9V2.Y*\\x99\\x90,\\x93\\x1b_n~\\x94\\x9b\\x1b\\xb9\t\\xe5&\\x96\\x1b.\\xb7TnWr\\xbb\\x96[&\\xb7\\x1b\\xb9\\xdd\\xca\\xad\\x9aX\\xb9\\x0d\\xe46\\x94\\xdbHn\\x13\\xb9\\xfdIn\\xb9\\xdc\\xa6r\\xab\\xa6[no\\xe5\\xf6^\\xeen\\xe4.\\x94\\xbbH\\xee\\xb8\\xdc\t\\xb9\\xcb\\xa4\\xbf\\x96>\\x93~ \\xfdP\\xfa\\x91\\xf4c\\xe9\\xff$}.\\xfdT\\xfaB\\xfe\\xc8\\xe4\\x8f\\xa1\\xfc1\\x96?&\\xf2\\x86\\xc9\\x9b\\xad\\xbc\\xd9\\xc9\\x1b_\\xde\\x84\\xf2&\\x927\\x89\\xbc\\xe1\\xf2\\xe6V\\xde\\xdc\\xcb\\x9bw2\\xa02X\\xc9\\xc0\\x93\\x81/\\x83\\x1b\\x19p\\x19\\xa42\\x102\\xc8d\\xb0\\x97\\x81Z\\xaa2\\xf4d\\xb8\\x96!\\x93\\xe1V\\x86;\\x19\\xde\\xc80\\x90a(C\\xb5\\x82e\\x98\\xc8\\xf0'\\x19r\\x19\\xa62\\x142\\xccd\\xb8\\x97\\xe1\\xad\\x0c\\xefdx/\\xc3w2\\xa22\\xf2d\\xc4d\\xb4\\x91\\xd1VF\\xbe\\x8c\\x02\\x19\\xc52Jd\\xc4e\\x94\\xc9\\xe8\\x9d\\x8cC\\x99P\\x990\\x99ld\\xb2\\x95\\xc9N&72\td\\x12\\xca$\\x92\t\\x97I*\\x13!\\x93[\\x99\\xdc\\xcb\\x9f\\x14M\\x93<\\x96<\\x95<\\x93\\xfcV\\xa6T\\xa6+\\x99z2]\\xcb\\x94\\xc9t+\\xd3\\x9dL}\\x99\\xfe(\\xd3\\x1b\\x99\\x062\\x0de\\x1a\\xc94\\x96)\\x97\\xa9\\x90i&\\xd3\\xbdL\\xefdz/\\xd3wRxR\\xac\\xa5\\xd8H\\xb1\\x95b'\\xc5\\x8fR\\xdcH\\x11H\\x11J\\x11I\\x11K\\x91H\\xc1\\xa5\\x10R\\xec\\xa5\\xb8\\x95\\xe2\\x9d\\xcc\\xa8\\xcc\\xb62\\xbb\\x91Y*\\xb3{\\x99\\xbd\\x93{*\\xf7\\x9e\\xdc3\\xb9\\xdf\\xca\\xbd/\\xf7\\x91\\xdcg\\xf2v#oSy\\xcf\\xe4\\xbd\\x90\\xef\\xa8|\\x17\\xcaw\\xb7\\x83\\xc5\\xea\\xb4\\xaa9\\xed\\x8d\\x08\\xfa\\xff[\\xdc.\\x07\\xbf\\xe9/n\\x7f\\x9e\\x8e\\xa6\\xcf\\xdf\\x0f\\x8c.\\xb3\\xac\\x0e\\x85\\xdc\\xd7\\xb3\\xf9b|1{t\\xb5\\x18.>\\x19-n\\x17\\x93\\xe5\\xf07\\x85\\x02\\x91}\\xe2M\\x95\\x18\\xcd\\xa8\\xad\\x10e\\x86\\xe5|<\\x19Z\\xf1a9\\x9c\\xf5\\xafO\\x9a>-N\\x17\\xa7\\x83\\xfe\\xf5\\xc9b=\\\\\\x9c^\\x0f\\xfa\\xd7\\x98r\\xed\\x04\\xa4\\xae\\xd2\\xedO\\xaeOQ\\xa9\\xab\\xda\\xbf\\xbd\\xbd]L\\x8e.\\xd9\\xdcQ\\xab\\xfd\\x05u\\xf1bl\\x01\\x1f>\\xfa\\xcd\\xaf\\x17\\xa7\\xfft\\xf5\\x9f\\xdf\\xf6\\x07\\xf2\\xf1'O\\x16\\xf3\\xc5\\xf2\\xfad6\\x9a\\\\,\\x9f\\x1c\\xca\\xb7<\\xad*\\xc1;j\\x8e\\xbd\\x1d\\xe5\\xbfe\\x9b\\x98\\xb3\\xefx,b/\\x0e\\xbeg\\x81\\xbe\\x9f\\x83\\xea\\xe37\\xfd\\xc9\\xe0\\x1a|\\x02\\xfdB\\xdbT\\xad\\n\\x03\\xf9\\xf1_\\xd0\\x8fA\\x9c\\xdf\\x04xUJ\\xee\\xb2\\xef\\xd1\\xb7}\\xbak\\x7f\\x8ck$\\x05F\\xbb\\xad\\xb8\\xbd\\x0e\\x95C\\xac%\\xde\\xf2\\x85^\\xb7\\xd3\\xfcC\\xda\\xba\\x04\\xd4\\xde\\xfa4\\xeaK\\x1a\\xad\\xc1\\xa5\\x03\\x0c@K\\xa5\\xed\\xd7\\xf7\\x0e\\xfa\\xbdS\\x0d\\xafAM\\x0cw\\xa3\\xa2\\x11I\\xb0c\\x87n\\xbd\\xe1\\x90$\\x93\\x04\\xf6\\x04?\\x08N\\x86dM\\x86$\\x99\\xa4\\xd9\\x06S\\x1a+8\\xe8\\xb8\\xa6\\xbbR\\xa6\\xf18\\xaf<\\x80ul\\x80\\xab\\xbd\\xa5\\x01m\\xc3\\x0f\\x0f\\xddp\\x80\tO\\xcbE\\x9e\\x04c\\xd75~\\x87\\x90\\x06\\x0d\\xa6\\x11j\\xba\\xc0p\\x1c\\xed)\\xf4nL5\\xe8\\xe7\\xa9 \t\\xaa4\\x9a\\xa7\\xa9\\xcd\\x9eJ:q\\xac\\xa3\\x89\\x9f\\xc23b\\x11\\xf6\\xb5\\x10:\\xb0\\xee\\x10\\xa7\\x04\\x8d\\xad\\xef\\xf74\\xfdS\\xb4\\xa2\\x81\\x92F\\xd7Z\\xad\\xf0\\x1d\\xe5\\x0c\\x16;\\xdc\\xb7((\\xfe\\xfbg\\xa3\\xdc\\x18\\x1e}6B\\xbf\\x07\\x8a\\x10\\xf9\\x038$(\\xdc\\xbe\\x9a\\xa0\\x8b\\xa4f4-xbjU\\xb3\\xea\\xadm]\\xcfOH\\xb3\\xe3){KT\\x0c\\x08^\\x1bL\\xf0\\xa6\\x01+D\\x9d\\x9d\\x82'\\x91\\n\\xd8\\xafq\\x82>\\x02\\xe0z\\xaa\\x7fO\\xa3u\\xc0f\\x0e\\x1blr\\xa8\\x03\\xcd0\\xa8\\xae\\x1d\\xf4\\xfa\\xa80\\x1c\\xa2Cb\\xd7\\xb4\\xea\\xbe\\x9d5\\x0c\\xf4YZ\\x13:\\x9b\\xdf\\xce\\x0e\\xea\\xae6\\xa8\\x0f \\x10\\xd5Y\\xf8\\x13oC\\x1dr\\xc4,\\x10\\xe3\\xc3\\xeb@\\x9eD\\x8f\\xc6\\x9fx\\xa0I\\xcb\\xc9I\\xd6\\xad\\xc8\\xf7,\\xa0\\xc2\\xdf3[ns\\xe0\\x14\\xf2\\xe8\\x8b~\\xc4M&\\xc9\\xa1\\x13\\x96\\xe6!\\xb4\\xf4}F\\x92fh-\\xcd\\x9f\\x11\\x87\\xd6\\xd8\\xfcB\\xecwC\\xb0\\x9f.\\xc4\\xbd\\x9d\\x1au\\x11B\\xe06\\xf9\\xc0\\xb8\\x18VH\\xfe\\x85\\xe8\\x97\\xc8\\xd5!>-\\x00\\x89q\\xa5\\x9c.\\xfa\\xa7\\xdb\\x03\\xf7\\xed\\xa3R\\xfe\\xc1\\xe9\\xf6\\x00\\xcfF.`\\x83\\xc3HI\\xce\\x06\\xe4\\x92\\xf4\\x81<E\\xa5dK\\xc8O\\xce:\\x8e)\\xc9\\xe7\\xdc\\xe1\\x1d\\xce\\xa5\\x8d|U\\x15\\xcc\\xba*!\\xfd\\x08\\xdcR5\\n\\x96\\xf3\\xc5\\xed\\xb2A\\xb0\\xdc\\xd1\\xf4\\xeb,\\x08\\xf2\\xa2\\xa6H\\x8b\\xc4\\xef\\xa8&\\xe3\\xfe\\x0f\\xde\\x8e\\x85\\xec`\\x05n\\x18\\xfeC\\xcc\\xd7_*\\x0c\\xd9\\x08\\xc6\\xab\\xc0\\xcc\\xe6o\\x16\\xe9\\xf2\\xc9\\xb5\\xa9\\xd2QE\\x91\\xf9v\\x97G\\xcd\\xf4\\x14\\xa5\\x01]\\xd3\\x9fL\\x87\\x14\\xbb2\\xb7X2M\\x88~\\x17\\xb3\\xf4\\x0f\\xb1\\xf8=\\xdd[\\x8a\\xfdG\\xfe\\xbbXh\\xeb\\xb4\\x96\\xec_\\x88o\\x19M\\xc5\\x1f#fz\\\\)\\xe3\\xa7\\xdf\\xd4&3\\xa7d}\\xd7y\\xbc\\xf3D\\xa2\\xdc\\x89.\\xcb\\xb5\\xba\\xe0t\\x17\\x8a\\xf3:\\x98\\x9f-\\xcb\\x07\\xab\\xadR|\\xefG\\xba\\xa7\\xa9\\xc7\\xfdD\\xcc\\xd0Y\\x0f\\x8cso\\xbf*'v\\xe9\\xd1\\xa1\\xa1\\xefh\\\"hg\\xfc\\x84\\xa1\\xe3y\\xb5\\xfe\\xc1>\\xc0\\xb1\\x0e\\xd0\\xe7\\x1dN\\xce\\xd8D\\xd0\\xb6\\x86\\xdd\\x13\\x977\\xd9n\\x90\\xd7\\xb1\\xe0a\\xe0\\x9f\\xe0\\x8d\\x89\\x13\\xd3\\x83\\xe6UT\\xf3\\x15k~N\\xe4iC\\xc1.\\xa8d\\xc0<av|\\xdbHT3p\\x0e\\\"\\x89\\xc2\\x08\\x14>\\x82B~\\x94\\xfds\\x97\\xc1{\\xc01\\xef\\xab\\xa2\\xd8\\xd4\\xf5\\x90\\xab\\xb0/\\x86\\x92\\x1da\\xcbM}\\x8f\\x81\\xb0h\\xb0\\xe9,\\xd58O\\xb0\\xe3p\\x9c\\xfd\\x15f\\xf1\\xe3\\x9c\\xf9\\xa1\\x87\\xda\\x8e\\xa3\\xf0\\x15\\xee_\\xbaV\\x9e\\xef\\x07;\\xd6_\\x1c\\xe5\\xae\\x8d\\x14\\xfd\\xd9>\\xb0\\xc1\\x07`PC#\\x8d\\xf3\\xa9\\xb7b\\x7f\\x8b\\x19\\xd5{\\xb5\\xaes\\xfa\\xba\\xbc\\xb5\\xeb\\xdaLQ\\x03\\x80e;\\xb6\\xf7\\xa096\\x8e\\xd3t\\x83\\xe09\\xcdN\\xf8\\xc3\\xa18n\\xe2{\\xbf\\xe9\\xdad#\\x1a\\xfc\\x89?`Qg<\\xc0\\xfdT\\xae\\xf0\\x84\\xf10J\\xe3>*\\x80\\xafO]\\xd6\\xb0\\x15Vd\\xabh\\x90GM\\xfe\\xef8KX\\xb4f\\xeb\\x8fe{\\x92\\xf1\\xceT\\xe6O\\xbc\\x0b\\x8d)\\xdd\\xd3\\xc9x\\x83\\x92\\xa8\\x88\\xad\\xce=\\xae\\x15 \\xab\\x9b\\xe6\\xda\\x07;$e\\xdf0\\x19LiO\\xfb\\n\\x04s\\xefQSA\\x08}\\xdf\\xd1k\\xc2\\x03\\x97\\n\\xb4l\\x9c\\x9d\\xe7>\\xbd\\x1f\\xd10\\xb9\\x80xL\\x8f\\xba]\\xb3:v\\x8dT\\xafMA\\xfb\\x0f\\x9d\\x13\\xa3\\xaf+*\\x14\\xca\\xf9pA\\xf4\\xc19VU\\xed\\xe0(\\xfe'\\xb3\\x84\\xb0\\x84\\xfd\\x88\\x17X_s\\xea\\x07~\\xb4\\xfd!\\xa0\\x10\\xb3\\xbd\\xcb\\xf8\\x94\\xab\\xed\\\"\\x1b\\xb9U\\xf4\\xe5\\xc5\\xedv\\xb8\\xde\\xd4\\xbc{P\\x1e\\x0e\\x8b\\x93Xt\\x06\\xc91\\x96G\\x80\\xd2;mSx\\x145\\xb8\\xc6\\xe1\\xeax\\xda\\xc9\\x8b\\x91\\xa2\\xbe6\\xe5\\xfdH;Z\\xc4\\x18I\\xbc\\xcdO\\xa9\\x06,\\x9e\\xe4~9\\xe1.p>\\x18\\xef\\x8do\\x99\\x11\\x99/1\\x8aO\\xbf\\xe86^\\x87\\xa2\\xfa\\xd0h\\x18\\xcf\\xcf\\x1d\\xc10 J\\xc6\\x8b\\xca\\x07\\xb8\\xa8P\\x1b\\x90y\\xcf\\x8b\\xd7\\xac7\\xc22\\x9f\\x0e\\x1c\\xc6\\xd6\\xf3\\xde\\x86E\\x1eKM\\xa6\\xcf\\x06#2\\xcfC\\x98\\xf7F\\xa4\\x07\\x01\\xa9!\\xbc\\x8cz\\x0b\\xfcT\\xf4\\\\!J\\xe7\\xe5\\x8cP\\xdb\\xe7\\x1fP\\xdb\\x8e\\xebZ\\xce\\xcf>\\xa0\\x16\\xf8\\xa4\\xeb\\x99\\xb6\\xd6\\xe3.o\\xc2r\\x9b:\\xce+u4\\xc0\\xce\\xe8\\xda\\x8f\\xb6\\xa6\\xd0\\xd3\\x074\\x1cT\\xeax\\xe6\\x9e\\xbd\\x9d\\x08\\x03\\xa8\\xcb\\xe4{\\xfe\\x80\\xb6\\x04]\\x05\\xb6\\x87\\x9fv\\xea\\xe1\\x9am\\x8aC[E\\x1bw\\xa1\\\"TP\\xec\\xf3J`\\xc3\\xa5;&^u\\x81\\\"\\x05\\xcf\\x02\\xeb\\x95\\xad\\xe2r\\xca^w`\\xe8\\xc6\\x86\\x91K\\xe2\\xdbk\\nl8\\x1c\\x14\\xaa\\xd0\\x91\\xe4\\xe7l\t\\xf1\\xb9\\xe0a\\xbat\\x89c4\\x103\\x829\\xcf\\xe1|a\\xbe\\x1ch\\xaa4\\xa8\\x90\\x9e\\x9cR\\xd8'Zpk\\x04\\x81 \\xfcw\\xac\\xea`\\xcd\\xa1y\\xb3}\\xd1\\xde~\\x0b\\x80o\\x99\\xf8>\\x0bX\\x8a\\xc7\\xe8\\xe8(\\x01;\\x89.\\x12\\x04:D8\\x99^\\x10J.\\xf5\\x11\\x12\\x9b\\x04~\\xa4\\x1a\\xa6HTo\\xfc\\xe4\\xab0\\x11\\xf7\\xdf\\xfa\\x11K\\xfb\\x14B\\x1bP\\xf2\\xf2\\x8aD\\xe8\\x85\\xff\\xa4\\xcf&\\xe2\\x87\\x9d\\xbf\\x11s\\xba\\x84\\xeb6\\xab\\xe0\\xe6\\x9bh\\xcd\\\"\\xe1\\xbe\\xfe\\x04\\x00s\\x1cx\\xb8\\x11\\x02\\xb5\\xc4s\\xbeT]\\xa4p\\xbcy2\\x1d\\\\\\x10>\\x1c:\\xe4\\x04\\x8cz!\\xfc\\xedN(\\xd8\\xb3\\x11a\\x13?\\x05\\x10\\x0d\\xec\\x96/dF\\xae\\xeacg\\xd4\\xd7\\x81\\xe9i^\\x8c6\\xaa\\xcdUcX\\xc9\\x88\\x0c\\x87v\\x90\\x90jh\\xae\\x94P\\xce\\\"\\x10z\\xeb\\xb5\\xb6\\x84\\x83\\xc9\\xc7\\xb9\\xf6\\xb9\\xc2\\xa7r\\\\)3\\x81\\x0c\\xccT\\x17\\xd1B\\xd4bI\\xa6`\\x9c\\xca\\xd5\\xc7\\xec\\xec\\xec\\xb3\\xe7K9_d\\xe7\\xcf\\xce\\x9f-\\xb2\\xf3\\xb3\\xf3\\xcftb\\xb5T\\x00\\xa5\\xb2\\xb33zvZ\\x08\\x0bVDL\\xb8c\\xe4\\xc0\\xca\\x11\\xe1\\xd51T \\xfa\\x88h.O\\xca\\x80\\x00\\xa5d\\xb8\\x8f\\xcf\\xec\\xb1@\\xf5\\xe6<py\\xcd\\xea\\x8dp\\x12\\x8c\\xc0\tD.\\xce\\xa6#\\xd2[D*\\xc5j\\x15\\x17\\xa27\\xc8\\xa3\\xd7\\x95\\xcbg\\x05\\x06\\xdc\\xa4\\xd6\\x86\\xb5U\\x9fC\\x0d\\xe5\\xf4\\xac \\x9c|\\x19\\xaf\\xd9\\x17\\xa2\\x1f\\x0d\\xc8\\xb5\\x0e\\x0b\\x8bQ\\xfe<\\x1d\\x0f\\x05\\x82\\xbf)\\xd4\\xef\\xa9\\x1az\\x9a6\\x80{aJ\\xc6\\xc4\\x1b\\x90\\x7f\\\"\\xcf\\xccq-$Bq^\\xa5\\x1ez5\\xa3OEf\\xfc\\xc1\\x9ay0\\xf7j5\\x0d\\xe9\\xfb#E\\xdc\\xfc\\x88\\x99\\xbf\\xaf\\xe8]\\x81\\x00\\x8dJ\\x01m\\x10\\x1b\\x8f\\x12L\\xea\\x14\\x99\\x97\\x0c\\x15\\xe2&\\xcc\\xa8\\x98\\x838h4\\xca\\xe9\\xdc\\xcb\\x9do \\x06\\xf2\\xdca\\x93\t\\x80\\x83'\\xdf\\xa8\\x82\\x89\\xf6\\xe8_/\\x1f\\x07\\x88\\xe4\\xa8\\x13V\\xaf(\\xbfI\\xf5E7,PKA\\x8aVL\\xb1TM\\xcf\\xe5\\x0e=-\\xb3\\xca\\xeb+zWH\\xb1dj\\x9aCo\\x88\\xc5\\x15\\xe9\\xf18\\x16\\xc6\\x0f\\xc6zm\\xab\\x1f\\x9b\\xdc:\\xf8\\xa1\\xad\\x8e\\xb34\\x0b\\x04\\xdai\\x18\\xa4\\xda\\xe8\\xea30\\xf1\\xb82\\xc9\\xaa\\x18\\xa0\\xa0\\x19B\\x1b\\x1a\\x93\\xa4\\xe4\\x92\\x04\\x17$u;\\xf0V\\xab\\xd0\\x07g3\\x05\\x8cN\\x15\\xd9o<\\x8aWE\\x9e\\x9e\\xa3\\xd7\\xa1\\xa6<\\xea\\xe7\\x0d\\x87-W*u\\xc4\\x19g\\x06\\xf7Y t\\xbd~xX\\xcf<=\\x83\\xa3\\x06\\xe04)<\\x06\\xe0\\xb1G\\x89\\xe5\\xa5o\\xc3a\tG\\x90\\xf5g\\x83\\x12\\x9a\\x18O\\xd8%L\\xc1Do\\x90\\xcf\\x87\\x9e\\x07\\x9c\\x96a\\xd5\\x0fP\\x19\\xc6Z\\x93\\xe6\\xba\\xab\\xab\\xe5\\xea\\xb7\\\"\\x00g\\x83\\x1a*\\x16\\xeb\\xce\\xf7M\\xbf\\xaa\\x03\\xc2\\x8bn\\x15\\x91\\x87\\xb5\\x06\\x0f(n\\xd6\\xb1\\xfe9[Z5\\x18J\\x04l\\xa9(o\\xa1\\x0bE\\xcfg\\xefG\\xa56\\xcb\\x92Fk\\xd3u\\x97\\xf6\\xba\\xbf(\\xca\\xe1\\xd9c\\xff\\x10d\\x97\\x15\\xc0\\x06(\\xfa]\\xb8z\\xc9\\xda\\xa0\\xfe!\\xa1\\xde\\xd1\\x10\\xa7\\xdc\\xcb%N\\x03\\xb4^E6Ca\t\\xb2\\x07\\x83\\xf7\\xe5\\x8e\\xf2\\xf4\\x90\\xab\\xde\\x92[L'\\x80\\x91=y\\xaaA\\x86@\\x7f\\x10|\\xbf\\xa5^\\xcd\\x9d\\xb0\\x83!\\x83\\xf4G.\\xc1%\\xbe\\xa9\\xdb\\xc17\\x14\\xc4/I\\xe4\\x88\\xd8\\x8b\\x96j'\\x0d\\x83<\\x1e\\xb3\\xdc.\\x81\\xa9e{\\\\w\\xb6L\\xd4\\xb1\\xb7UB\\xaaZF*NW\\x17\\x8b\\x18,\\xa3F\\x0fE*K\\xa0\\xa0\\xad\\xb8$\\xf5\\xcb\\xeb\\x7f\\x1e\\xa8U\\x80Q\\x0d|<\\x843\\xcb!X\\x8e\\xc0m\\xab\\xe2\\x18\\x9c\\\\\\x97V\\x06\\x94\\x9a\\x1aG\\xf06q\\x94\\x8f \\xca1\\xaa\\x1f\\x03\\xc7ddZT\\x01\\xdf\\xad}A\\xc6`8\\xab=\\x88\\x06\\n\\xf5/H\\xa0(o<\\x1c\\x0e \\xa2[\\x19\\xb2\\x81\\x9aJ\\x10\\xde\\x80\\xc9\\x0fF\\xc0\\xc1\\xcel\\xca\\x99\\x16\\x87j=M\\xb1?82j\\x85I\\xd9\\xbds\\xd9<^\\x16\\x97Bc\\x1f\\xf5Xgu_U\\x15\\xd1\\nm\\xe3\\x8e\\x12\\xadL\\xaa;\\xe4\\xa0{\\x89\\x98\\xbd\\xa0\\x03\\x8b\\xcc\\x98\\x8a\\xa5\\x9a\\x84\\x82HsI\\x9e\\xe5\\xe68S\\xc7\\x1c\\xc6\\x80\\x17W\\xe0\\xa3f\\x8a\\xfb\\xb6\\xa6\\xd5\\x95\\xef\\x80\\xb8ZK.\\x9e\\xdfb\\xf7\\x07\\x9b\\x80\\x1cR^\\x85\\xf4\\xe5\\x15y\\xd6\\xbe\\xb1R\\xa0\\x0e\\x87\\x87\\x9c\\xc1Z=\\xa7\\x96\\xe1\\xf8(\\x8f\\xfd\\xde\\x10\\xa3J\\xc7\\xa2B\\x95Y\\xed\\xab\\x8d9\\x95S\\x01\\xb5\\xa5\\x88G\\xe4\\x198z\\xb1]\\x18\\xc1\\x96\\xb4V\\x1e\\x940\\xee\\xeb\\x89\\n\\xc4tF\\xe6b\\xa4\\xe1u(Ot\\xf8*\\x862c\\xe9\\xf3{%\\xbc\\xe5b\\xd2\\xfb_\\x06\\x0d\\xbb\\xd37\\xd7\\xb1\\x11:\\xdf\\xd0\\x8bW,a\\xc4,\\xb2\\xd6\\xb3o ;3\\xd9\\xeb\\xa8\\xee\\x91!yJ^\\x92M#Z\\xab\\\\\\xd3\\xf3\\x17\\xe8\\xb5%F]G\\x99\\x19x\\xa8\\xe0\\xf8\\x1c\\xf3\\xc4\\xad5\\x81\\xe4=B\\xc9\\xb9\\xefY\\xcd\t\\xb0\\xb6\\xbe\\xa7\\xf6@\\x032&\\xe9\\x80\\\\\\x92\\xa7\\xad\\x15iMENq\\xc0P~\\\"\\xb8\\x1f\\xf6\\x8b\\xbb\\xda?\\xebMmke\\xbc`c\\xd7@\\x98\\xc5\\x059\\xe9\\x0f\\x87\\x19jtPp\\x82\\x0e\\xa4\\xc5\\x19\\xc9J3\\x92-\\xc1\\xa6\\xaf4\t*\\x0d\\xd4\\x1f6OM\\x17\\xd4@-j\\xa3\\x0eL,\\xae\\xe8\\x962\\x17!\\x00\\x01\\xbey\\xb4A\\xb9T\\xce\\x82\\xa2\\x1aL-\\x04\\xaco\\xa0B\\x80\\xa6gn\\xfa\\x02\\xa4\\xa7\\x1bu\\xf1\\xa1\\xdd\\x1c\\x8fsr\\x93\\x91\\xa1b\\xd9\\xd7\\xc0z\\xe0\\xe4\\xaf\\x1b\\xf1\\x01e\\xbc\\x83\\xfa$\\x94\\xd30\\x9d\\x11\\xda\\x910\\xa1b!\\x83\\xc5\\xe9$G\\xff\\x9ehN=\\xec\\xeeq\\xd4&<Dm\\xf6\\xe4%\t[W\\xe2\\x8bsm\\xecV\\xc1\\xf6\\xfdp8h-\\xa8\\x07W\\xa1{\\x1e\\xeb7\\xa4w\\x7f`\\xa9\\xf0\\xa3\\xed\\x87,\\x7f\\xbd\\xd9\\xa8\\xc3\\x04+y\\xaf$2M\\x04r\\xd6\\xc5\\xaaz\\x10\\x88zX\\x18K@\\xf2|d\\xaf\\xc8\\x1e\\x853\\x08V\\xbb'\\x97$\\x84pD\\x85\\xb5\\xb8\\x1f\\x90\\x19\\xd9\\x035\\x0bQ`\\x9b\\x17f\\x03\\xea\\xcb\\xc5\\x16U\\xc7\\xb8\\xd8\\xc2H\\xf3\\x02T\\x0b\\xd5\\x14\\xdf\\x85\\xa3\\x0d\\xe3S\\n%\\x98\\xd8\\xechN\\xfa\\xfd\\x12:\\xc4%t\\x88\\x97\\x00X\\xbf\\x84\\x02\\xf1r0\\xc0\\x00hN\\x92\\xd6>\\xd7\\xcdb\\x8f\\xdf*\\xd6\\xd8\\xc0\\xca'\\xd3\\x11\\xdc\\xd59\\xc3\\xab)\\x1b\\xbbIK\\xc8%Y_\\x90\\xe4P\\xec\\x82\\xcd<Y\\xeaKY\\x11\\xac\\xfe6\\x9d\\x0d\\x81k\\x10\\xcd\\xd4\\xd0\\xfc\\xdcT\\xd1\\xfc\\x9a=t\\xedZ;\\x9d\\x19W\\xffvr\\xd4\\x1e\\xc5$\\xe6s4*\\xce\\x18h\\xd0\\x9e>\\xfd\\xb4N\\xa3Q\\xf0\\xec\\x80\\xf7\\xcev\\x8b(r<^\\x1f\\x06\\xba\\x84\\xd9\\xf1\\xd2\\xb1b\\x03R>p\\x18\\x95\\x8f\\x1f\\xae*\\xe7\\x9e\\x1dyJ^\\xa6)h\\xb0f\\x06\\x10\\xe1Y\\x8c\\x88\\xcb]]\\x99\\x17TB\\xfb\\xbe\\x1f\\x8c\\xf2%j\\xf5\\xd2H\\xc4\\xe3\\xee\\xcc\\xaf\\x00hS\\xfc[\\x1b\\xe7\\xb6\\x89)U\\x06L\\xf1\\x86\\xf9tiO\\x87\\xf4\\xd2\\xc2\\xc5D\\xf3\\xa5\\x85\\x11\\xab\\xf5\\xdc$dH\\x80\\x16e\\xf3\\xa4H\\x9fl:\\x9d'K\\xb7\\xe2\\xa0D>\\xd3\\xbf\\x0b\\x1eY\\xe6\\x85\\x0e\\x83\\x92C\\xdc\\xaf\\x9f\\x91aI\\xceQ\\x1b\\xf6\\xb4\\x953=;o\\x91\\xbb3\\xa0\\x93\\x8f\\x1e\\x91g\\xcfQ\\xf2\\x06)\\xfc\\xf9\\x01)\\x1c\\x16\\x88Z\\x91\\xd3\\x0b\\x92\\x91K\\x92:\\x0f\\x1f+\\\"v\\xadU\\xdb\\xdeS\\x84\\x906\\xb6G\\xc0\\xaf\\x9c\\x15U\\xfd*\\xca\\xbb\\xa6\\xff\\xa4\\xef\\xe3\\x06\\xe0\\xd1#\\xd2?9\\xe1\\xda.D\\xcb\\x84Z(\\xeb\\xb8\\x18v\\xbcy\\xa1~\\x98\\xd46\\xa8\\x9eN\\x1f\\x85\\x936\\xb9r\\x1a\\xe4BB}>\\xe4\\\\*}\\xde&\\xa4!W\\x8e\\xcb\\xa89 \\xd7d\\xac\\x04j\\x83^\\x91k\\xa2y\\x05\\xbd@\\nx\\xf6T?\\xeb\\x1a8\\xb9,\\xe1A\\xbd\\x16\\xdb\\x18/\\x8cV\\xbd\\xf3qk\\xe7\\x8f\\x93C\\xe3C+\\x11\\xfc \\xaa\\x91\\xc9\\x97\\xc9\\xd8\\xb5\\xc7l\\x19\\x97K\\xf2\\xec3\\x85\\x96\\x11yI\\x9e\\x7f\\xdaX\\x0djY\\x1b\\x97\\x18o\\x07\\x82XEO\\x1b(j\\x87\\xf7\\x99\\x9a\\x83\\x88\\\\^)`\\xda\\x84\\xa7g\\xa8\\xfb\\x8c\\x14\\xec\\xcf^\\x98\\xa8\\xa9-\\xa2\\x85\\x05\\xad\\xf6\\xb5\\xe9\\xf8\\xbdP\\xea\\x81\\xe8a\\x9e\\xda\\xe9u\\xed\\x0c\\x0d\\xdca\\xb6\\xecfFJ\\xc0\\xd8\\x8e\\xc8\\xfd\\x88\\xacF\\xe4\\xed\\x88\\xdc\\x8e\\xc8W#r7\\\"?\\x8c\\xc8\\x97#r3\\\"_8D8@\\x05%Bj\\x1c5\\n\\x85\\xad#o\\x83\\xc6NO\\xa2\\xaa\\x84\\x97*i%\\x9b\\xd0\\xc0\\xb4e\\x94?t\\xe3\\x13\\xba\\x90j\\xad\\xefs\\xfb\\xed\\xbb\\xa2\\x15\\xee\\xd9\\x91\\x04\\x1bk\\x99-\\xb9\\xc6{\\xc0\\xcd\\xab\\x156\\x95\\xe8\\xbfZ+5\\xf4\\x8dr5OdL\\x12\\xbc\\x9f\\xd9\\x99\\xbe\\xc7|\\xcd8[\\xbf\\x0d\\xfcT4\\xc9e\\x90gF\\xf6\\x8d\\x8c\\xe0\\xf6\\xe1\\x12\\x9b\\x92^;\\x82\\xba\\xca\\x82\\x80\\x89VH?\\x1c\\x1ek\\xb2\\xf4V\\xef\\x81\\xee\\xda\\xf6}`\\xa03\\xb8 '\\xfd\\x93>\\x98\\xed\\xa0\\x0d&l\\xa0\\xfa\\xf7Uu\\xd0\\x1a\\xd1\\xd6\\xd2V\\xba\\xd4\\x9a\\x99{2&k%\\xce<\\x03\\x96\\xadJ+\\x14\\xda\\x91K2-\\xa5()j]\\x94\\xdf\\xa9\\xc2\\x8f]\\xe7\\xd9\\x86\\xb1\\xf3\\x05\\x0b\\x0f\\x0c\\xe0W\\x1f2\\x80Au7\\x8fz10R0{\\xfd\\x02Bo\\x1c\\xbb\\x8d\\xe2N\\xfc\\xbe\\xba\\x13/K\\xb7`\\x99e\\x0d \\xce\\xea{\\x15m\\x1f\\xd8\\xb41\\xc0\\xbdi^\\x89\\xda\\xab\\xbf\\x85Y\\x04b\\xa6F\\xfd\\xad\\x95\\xdb\\xc9\\x98\\x08\\xf2\\x12'\\xc5i\\x0fV\\x85.\\xa8\\xf6&-\\x82\\xeb\\xd5\\xa0\\xdd<`*\\x1f\\xbcI\\x01L/\\xecI\\xbe\\xc2-\\n\\x1d\\x91\\xfb\\x8a\\xb4N\\xb4)\\x9e\\x1a\\x97\\xa2\\xe9\\x19\\xbe\\x1fo\\x97w\\xa3\\x17\\xd7\\x0f\\xa8`\\xf8\\x92\\\\\\x91;\\xbb\\x0b\\xfa\\x81\\\\\\x92//\\xc8\\x0fM\\n\\x06Ez\\xef\\xe6?\\x14\\xed\\xf8\\xda\\x95\\x0b7\\x07\\x14\\x0b\\xcdJ\\x85\\xbaBA5~\\xd3\\xc8\\xf1\\xd5\\xd7m\\x9b\\xfc\\x903B\\nR\\xd0\\xd9\\xa0I\\xd1\\x9b\\xbb\\xdd\\xc8\\xf9^\\xb9\\x8c\\xbb\\xf9\\xd0-)\\xac\\xf5\\xbd\\xfdzk\\x0d\\x07V]\\x90P\\xf1\\xab2\\x07A\\\\$\\x15j\\xfd`\\x0c\\xbd\\xb5\\x18\\x99\\xdb1*)\\xe3\\xd1\\xa3v3\\x03R\\x96\\xfc\\x11\\xc7\\x81\\xcf\\x0f\\xc9y}\\xdc\\x00'#\\xbd7:7\\x02s\\x899\\x9319/\\xc5\\xed\\xb4\\x19\\xe6\\xd1\\xd2XP\\x99]Zna\\x8ctV+\\x82\\xf2\\xfcB\\x9bq\\xf6\\xf3D\\xd5\\xf2\\xb2B\\xc8\\n\\x05\\n\\xe9\\x11:6/\\x0f\\x96\\x1a\\x86\\xd5\\xdf\\x936\\xfc\\xb8=\\x87wh\\xcf\\xa1f\\xee\\x19yI\\xbcV\\x89\\xec\\xf3\\xa9\\x1b\\xfb\\x83v\\xed\\xf7\\xe7\\xcf\\x1a\\x8a\\x81E\\xd5/\\xa28\\xb7'c\\x88\\x92\\xa0K\\xf0.H\\xd6l-\\xd7\\xa4O\\xcc\\xda\\xa5`\\xe8\\xdf\\xd3\\xe6\\xa2\\x1d\tB\\xa6\\xed\\xd9\\x86\\xe4\\x1c\\xd5\\n\\xfd\\xcc\\xec\\x02=\\xc5\\x05\\x9e\\x7f\\xe6\\x1e\\xc2\\xe10\\x1b\\x94\\x15\\x11\\xd9p\\xa8p\\x9bE\\xfb\\x89\\xb9\\xd5\\x90\\x9a\\x9b+\\xa54\\x08\\xd7X\\xcb:\\xe1l\\xe3\\xcc\\x8f\\x1ft\\xa1\\xd4\\x8a\\xe6x\\xbc\\x19\\xe0\\xc2\\xce\\xd42n\\xa8s\\xde\\x83+\\xbc\\xe9R\\x9bFv#\\x81\\xf6f\\xc6[\\xce6\\x8c\\xb3\\xc8kVo\\xd2\\x95\\xa2v\\x8ex\\xf8\\x07E\\xaa\\xb8\\xca\\x8fkG~\\xf4\\x80\\x14U\\x12D\\xb3\\x01\\x19\\xa3\\xe0T<B\\xc9\\xca\\xc2\\xcb\\xf0\\x8a<\\xabKS\\x85\\x8b(\\xc5\\x06J\\x8c\\xdfP6\\xfbuxU;\\xde\\xb1\\xed\\x8eK\\xdfZ4\\xb8\\xb9\\xa0V\\x82\\x88\\x96\\xa1\\x1ek\\xa8\\x8b}\\xf7\\xab=\\x8d?dv\\x1f\\xcc\\xcc\\x94\\x94\\xf2A:/\\x93\\xfaA\\xd4\\xf98\\xba|P+\\x0b'\\xfa\\xedZ\\xd8\\xa7\\xcf\\xdb\\xb4\\xb0xm\\xed@5\\xb9\\xd6\\xd5\\xac\\x05\\x07\\x99\\xb9 O\\x9f\\xe7<\\x18\\x94\\xb3\\xa02%\\x97W\\xe4\\xc5\\xc5\\x80\\xf8`\\xfc\\xd5X\\xdaE\\xf5N\\xfa>yI^ \\x84\\xba>\\xad\\x8b\\x89\\xcbT-\\xb5k\\xcc\\xda\\x19\\xf6\\xd3\\x11y\\xaa\\x88N~3\\xa4\\xfe\\xfd\\xb9\\xfa\\xae\\xb6~\\x19\\xc9\\x0d3k\\x00\\xd2\\xfc\\xb2\tX\\xcf\\x0f\\n\\x02\\xd1\\x91\\xfa\\\\\\xbc\\xce\\xd5D\\xa3v\\xdf\\\"\\x16;nr\\x7f\\x04\\xa5\\xaf\\x1d\\xc3\\x8e\\xc0\\xfa\\x91j\\xa7\\xdd\\n*\\xa7\\xf1\\x10\\xd2G\\x9b\\xb0\\x1c\\x02\\x0d\\xc6\\xecA]\\xf4v~\\xb0\\x06GZ\\xf3e\\xad\\x83\\x1d\\xfbe&\\xa1\\x89\\x94\\xb4\\xcd\\xc2/\\xabV7\\xa9\\x0f\\xb1\\x04\\x1c\\x99{8\\xa2\\xd1\\xa2\\xd5\\xde\\xe9\\xd22D\\xf3\\xde\\xd1\\x91\\xa1b\\x98c\\x0f8\\xfa\\xfd\\x12{\\xa4%\\xa2F\\xb5\\x0e\\xdf/\\x122\\xba\\xd42I\\xff\\xd9\\xf3\\xfc\\\"nm\\xd5\\xc5H\\x9b^\\xa0\\xce\\x97c\\x91\\xb8\\xbc\\x90\\xfb1\\xde\\x85\\xb1P\\x14\\xd8l\\x0c\\xdb5\\xbfX\\xaeQ\\xadW\\xb8\\x0f\\xf7\\x0b,g\\xd3\\x05\\xado:\\x7f\\x18\\xea\\x1f\\xc0\\xbd\\x8e \\x1f\\xb7\\xa8\\x81U\\xe7G/\\x1fwy+\\xaa\\xfa\\xaf\\xbc\\xc4;\\xcc\\xcc\\xe1\\x15?\\xf8H\\x82E\\xe1\\xce\\xf7\\xd9y\\xf5n\\xb7B\\xe0\\xd37\\x97\\xfd\\xb9\\x0e\\xde\\xa7]]\\xcf\\x17\\xe9\\xe2\\xf4e\\xd5\\xb5\\x9b\\x8f\\x99\\x17\\xa7\\x8e\\xec/\\x97\\xa7\\xdd\\x08\\xcd\\x88P\\x17\\xad\\xc9\\x0f(*Rqm\\xe8*\\xf6\\x9b\\xf5\\x0cIY\\x8c\\xae\\xcb.\\x9e\\x92]\\x93\\x119\\xc97w;\\x11\\x06\\xad\\xf2N\\xa2h\\x93\\\"\\x1c\\x1e\\xec\\x96^^\\x1d0\\x0f}q\\xe6\\xde:y\\xed;\\xcf\\xa7\\xb8\\xa9\\xebg.\\xd2\\xe5\\xe9\\x9d\\xab\\\"_\\x98/k\\xdaW\\x16\\xce\\x9e\\xcb\\x97\\x9c\\xde\\xb7\\x1d\\xc7<\\xfb\\x14\\x80\\x06\\xa9\\xe5\\xa4\\xe5F\\x8a\\xf9\\x99K)O\\xcf\\x89\\xac^=0?\\x0d\\x06\\x18]~\\xfe\\xa9\\xaaY(\\xd9mz~^\\xcb\\xfe\\xbe\\xcb\\xb6\\xf7\\xd9\\xa7\\xcd='\\xf6X\\xa9\\xbaUDKXt\\xa5\\xe7\\x0f\\x8a\\xad\\xd4\\xa1\\xc8\\x95t\\xed\\xf5\\xc4\\x83\\xc3\\xd0\\x9e \\x1a\\xf0y:\\x9fV\\x9c\\xf5-\\x0f\\x16n\\x9e\\xc4\\xd2\\x9b5\\xef\\xd1\\xe6i\\x01\\x06.\\xd4\\xb7\\xb8\\xd4T\\xe6\\xda\\xdd`p1 A\\xd5\\xae\\xde\\xea\\x075\\xbb\\n\\xbaS\\xc4\\xdcE\\xc0\\x01\\x1a\\xd7\\x81r\\xbb\\xa8\\xb6\\xdb2>\\x18\\x913\\xa0\\x92\\xe5a\\xf9h\\xaa2C3\\x7f.\\\\\\x9b\\x9e\\xf7(\\x17\\xbe\\x07\\xce\\x0cz4\\xf5\\xc1\\xf9Eo\\x95\t\\x11Gu\\xb7\\x11\\xabx}\\xaf\\xfez4\\xda\\xd3\\x14\\x9f\\x80\\xd6\\xc0c\\x1c\\xe8?[\\x1eg\\x89z^\\xaf\\xe1_\\x7f\\x0f\\x7f\\xe0\\xf3Z\\xa8\\x7fY\\xb8b\\xf0m\\xe3\\xb3`\\x9d2\\x81\\xcf\\xdbBu\\x1b\\x7f\\x9bqhU\\xedl\\x19\\xc7'\\x1e\\xaa\\xbf\\xbb)\\xfc{\\x0e\\xff>\\x85\\x7f\\x9f\\xc1\\xbf\\xcf\\xe1\\xdf\\x17\\xf0/\\xa3k,\\xb5\\xb3\\xf0\\x80\\x87\\x8c\\x9e\\xbf\\xe14\\xd4n0\\xd4\\xbf!\\x85\\x8f1x\\xf6\\x83'\\x804\\xceD\\x92\\xc1;|N\\x10\\x98\\x84\\xc7[\\xceR\\xe8<\\xba\\x98\\x84'\\xe6\\x19\\xb8Sq\\x8f\\xa3i|D\\xf4\\x84\\x196\\x01]\\x16\\xecNP\\xce(<o\\xf0\\xc2kO\\x80\\xdf\t\\xc1\\xf1\\x99Q\\xc8\\x99\\x01\\x1c{\\x7f\\xcd\\xe2\\xder\\xb2\\x89\\xf9W\\xd4\\xdb\\xf5[. \\xce\\xd9\\xb2|\\x03Tk\\xa5>\\xe4\\xc6\\x8dM\\xeeb\\xbe\\xe2\\x90\\x1cseJm\\x1d\\xf0\\xb6-\\xbb]\\xbe\\x85\\x93c\\xb0\\x10\\x19\\x93\\xc8\\xe5-\\xa2\\x9d=w\\xbdr]\\xb4\\\"\\xa832\\x81l\\xb2p\\xd7\\xce\\xc5\\xee\\x82\\xd2V\\x179vP\\xdb5\\xb4T\\xd0/\\xa9>\\x82\\x92\\x04\\x1e,\\xcb'\\xb3A3\\xc5\\xf5\\xe1B\\x07*\\x8c\\xf5\\xae\\xc2\\xa1\\xd2\\xc8\\xed~\\xe0\\xc6\\xaf\\xd6\\x8e\\xfa\\xad\\xb5Rk\\xde\\x00\\xcc{DNN\\xdf\\xcc\\xc73I\\x96\\xc3ON\\xd1\\xd5&m\\x17\t\\xe0\\x06\\x02\\xc5P\\xaa\\xfd\\x9e\\xec\\xa9\\xfd\\x07\\xc4@mS\\xab$\\xfa\\xfay\\x8a\\x16\\x89)\\xb9$\\xf9\\x8d\\xcc\\x96\\xdb\\xdb'p.\\xe5\\xcd\\xd3\\xa5\\xb96\\xd2\\xc6g\\xd1\\x7f\\x01(nSx\\xf4J\\xee\\x95\\xcc\\xb5\\xecV\\xc1\\xe0\\xa07fb@;}3\\xbb\\x1e\\x0fg\\xd7f\\xdc\\xd6\\xed\\xec\\xf7\\xf9g\\x00\\xd2\\xbat`V\\x82\\xef\\x9a$\\xc8\\xde\\\\Y\\xcf\\xd4\\xf7\\x1e\\x86\\xd8\\x82\\xb3/\\xeeow\\xa27 3g\\xcdg\\x85\\xeaz\\x01\\xdb`N\\x93\\xd0k\\xbb\\xc1\\xad:7\\xc6\\x1dC\\x01]\\x1c\\xf7v`\\xee[0\\x05\\x11\\xc5zg{\\xb3\\x90r!?\\x01\\xffl\\xbdA\\x01\\x81F$1\\xe3pR\\x98\\xb4\\xd6\\xba\\xe3v\\xcb\\x97\\x8e\\xe2\\x02\\x10\\xfa\\x03f\\n\\xbb\\x0f1S\\xe8\\n\\x87\\xe2\\x1b\\x07\\xe0P0\\xc0\\xa2\\xfd%\\xe1\\xe0\\xbf$\\x10\\xcd\\x8b\\xbf+x\\xbb&\\xf0h\\xe0o\\xa3\\x19I\\xe6\\xa9\\x0b\\xb0\\x8f\\x00{G\\x08\\x0f\\xeb\\x1d\\n\\xb4\\xec#@\\xfa\\xcb\\xe8\\x15\\xc4\\xee\\xa1\\x07\\x10\\x1f\\xb0\\x14\\xf9C\\xdb<\\xa2[j\\x95\\xfd\\xe2\\xad(\\x99\\xf1\\xc02\\xda\\x03M\\xc1\\xe3\\xc2\\x07\\xd1\\x15#\\xa8\\x9c\\xe3\\xf6J\\xdf\\xfei\\x91Y\\x1e=2N\\xcas\\x9a\\x1e\\xb8i:\\xdc`o\\xb4\\xaa\\xe9N\\xd4\\x0f\\x8d\\x17\\xe9Bw\\xc8\\xa1\\xd1 \\x1fL\\\\H\\x01\\x8eF\\\"L\\x0e\\x11\\x19\\xd2\\x15\\xd0\\x8d\\x11h\\xf2\\xf0\\xfcJ\\xd4\\x03qE%W\\x998\\xdc\\xaa\\x1c\\x91\\xa6<\\xf0^\\x96\\\"*IdVL\\xb1\\xda\\xcdc\\xc6\\xa5\\x91\\xac\\x91\\\"ik\\x88\\xa2r\\x88b\\x916\\xaaE:.>R\\x9a\\xc4\\xa65N\\x0e\\xads\\xe2\\xa0b\\x04\\xb6(\\xdd\\x9bo&d\\xa4[\\xf3\\xe5\\xd5^z\\xb3[\\xab#H\\xd1/N\\xf0@\\x88zp+;4\\xbf\\xda\\xe3\\x9f`TR\\xfb|\\x98\\xfa\\xc4&w\\xd9\\x00\\x17\\xac\\xb8:\\x9f\\\\\\xfb\\x1d\\xb6\\xc1\\xb1\\xda\\xf4\\xf9\\xc6\\x84\\xde^\\xd3w\\x1f\\x06\\x99\\xfb\\x1cz/\\xc7M\\xb1\\x18\\xc5\\xf1\\xc8u\\xfa\\xa3\\xb3D\\xa5v\\xa2\\xca\\xb8\\x91_d\\x9fm\\xad\\xf5[\\x05\\xf4>\\xcb=\\x82\\x81e\\xe1\\xa3Gv\\\"^:]\\xe7m\\x8a\\xfbp\\xa3+\\xdc@\\xc1\\xe1psp\\x1bo\\xe7ls\\xd4\\xde\\xdd7\\x8cqcL [\\xdb\\x00t>\\xda&K\\xdb)\\x17\\xcd\\xfe:\\xaf\\xb4up@\\xae\\x08>d\\xaf\\x92\\xa1M\\xba\\x12\\x0f*\\xfe\\xeb\\xd8\\xac\\xed\\x92\\x0c|\\xba\\xd7v\\x83[mt{\\xa8G\\xa4\\xd0\\xabFK{R\\x10\\x89\\xb3\\x11\\xc9>\\x84\\xed\\x1e\\x01P7nW\\xd0\\x00+\\xd8\\x0c\\xb6\\x16}\\xa3L\\x9b\\x8f\\x12I\\xc7\\xe3D\\xd2m\\x08>&\\xff\\\\7\\xdb\\xd2\\x92C\\x04\\x9d \\xfft\\xe2\t\\xc9W\\xe7APH\\x01\\x9cV\\x99\\x8c\\xe4\\xe3\\xa3\\xc8\\xda|\\xe3F~\\x9b\\xf5\\x10\\xaa\\x10=^x\\xedF_'X\\xc3\\x8b\\xa1a#}\\xa2W\\x98\\xe9}\\xf1\\x88\\x8f.G\\xa04\\xa8Z\\xca\\x15M\\xf6Y\\xd1Gb\\xd1\\xfe\\x00\\xb6\\x04\\xc5\\x04E\\xd3Kw1F\\xa4\\xfd*B\\xee\\xad\\xd8i\\xe4F\\xdd\\xb7\\x11\\xb6``ton#l\\x01,}|M\\x0f\\xdeF(\\x82\\xbb/\\x02\\x18\\xd6\\xe0\\xdbU\\x87\\\"\\x19\\x95Gc\\xdd\\x0dYI\tC\\xda\\x10\\x96tAZb\\xb6\\x11(\\x86ll\\xff\\x95\\xc0\\xfe2\\xbf\\x80\\xd7t\\xacx\\x80\\xed\\x1c,\\xeb`>-\\x17\\xfe\\x80F\\xd7\\x17^-\\x05y\\xe9\\xcb\\xb6\\xfb\\x83\\xbev\\x0b\\xbc)\\xb2\\xda\\xac\\xd9-U\\xa9\\xa35\\xcf8m\\xa5`\\xe3\ttrp\\x18\\xa4\\xd2\\x05\\x90G\\x8f\\x08\\x1d\\x0e\\xf3\\x0b\\\"]@\\xab\\x1b\\xfb\\xb4\\x81\\xe6\\xbbo?\\x942\\x7f\\x88$\\xbe\\x0e\\x1e. \\x07\\x1a%\\x0b\\x92\\xf1fD\\xee\\xffq?\\xc1y?\\xc1\\xfbh\\x87\\xae\\x8d\\xe2r\\xcb\\xf6\\xa1x?\\xc1m\\xa4\\xe6\\x83\\x87\\xadK#\\xcb\\xebc\\xf1A\\xe5\\\\<uD\\x8f\\xb3\\xd6\\xfc\\x8d7\\x05s\\x9f\\xf3\\x03\\xd4\\x84D\\xb5jQ'\\xd2H\\x86\\n:\\xa4\\xd4e\\x0c\\xd7v\\x03\\xca:\\xd7S\\xf2\\x9f\\x8f\\x97\\xae`\\xc9[u\\x8cO.\t\\xbd ~\\x9bW\\x17bh\\xd2\\xdc\\x87\\xcbWi\\x97\\xcbW\\xe6\\x17w\\xf0\\xeeB\\x0ezx!NZj~zs\\xd3\\xf5>\\x97\\xa6\\x13\\xb8\\x9a\\x8a6\\x03i\\xb3\\xb4\\x98/\\xf4tD\\xb8Y|\\xc5\\xa5r\\x80\\xdcT\\x96^\\x9d\\xe8\\xc0RrG=\\xeab\\x06Q\\x16\\xa3j\\x14\\xab#\\x94\\x87\\x95\\xe5\\xfcP\\xd3\\x1dm\\xf0~!\\xfb\\xbb|\\x98\\x9b\\x88{\\xdb8\\xb7\\x8d\\xe1G#b\\x87#\\xac\\x9c?}\\xee\\x08\\xb0\\x12\\xf5\\xcf?\\xad$\\xd3\\x86\\xb8+\\x82\\xdd\\x99\\xd8\\x18O\\xa7\\xee\\xc8\\x1d\\x11\\xbb\\xc5\\xa9\\xc6\\\\\\xe7\\xee\\\\,\\xf5hb3=ugZQ\\xefF\\xf8\\xde\\x8d\\x89\\xe2\\xf2\\xb4!X\\xc8\\x9a\\x05&\\xc7sw\\x0e?\\xb2u\\xbcp\\xe7\\x08)7\\xb1F\\x9e6D\\x94aa\\xb2\\xa3\\xa9ok\\xfa\\xcc\\x9d-\\xcdV&\\xc7\\xe7M9\\x12\\x9d\\xe3\\xd9\\x99;G\\xe0G\\xb6\\xd7\\xcf\\x1a\\x06\\xda^%1k\\x0bs7\\x0cx\\xf1\\xe2\\x89\\xc9\\xda0\\xecT\\x87\\x072\\xd9ZB\\xb4\\x08j\\x02\\xb9<k\\x18W\\x16\t_\\xdc\\x9bL\\x9fu\t\\x8c\\x92}\\x94\\xc0(\\xb9\\x17$g`\\x14j\\x02\\xa3P\\x0c\\x8cRQ\\x04C\\xf6=F`f\\xdf\\xfa\\xd1\\x8d\\\"\\xd0\\x85EZ\\x87:\\xad[\\xfa\\xecm ]$\\xf6m\\x11s5\\xef0\\x87\\xf1\\xaa\\x98o\\x8e^\\xbeRc\\xe8+VR<\\xbe\\x99\\xf5L<ZUbn\\x83\\xe9\\xf6F\\xc5x\\xbb=0\\xd2B\\x13\\xa75\\x15\\xb4\\xb7\\xb45\\x08s\\x843\\xeb\\x0d\\xe6gK\\x97\\xb9NV\\xf1y\\xfdZ\\x91\\xcaV\\x8f\\xe1\\xd0\\xe7\\x91\\xf1\\x12S\\x18\\xf5RT\\x97\\x1a\\xa2\\x80\\xa3^\\xa3#\\xab}E\\xddk\\x12\\xa7\\x0eM\\x1e\\xcaV\\x1e\\xf5v\\xec\\x9f\\x99\\xe8\\xfbp\\xf9\\xe5l\\x80\\xf9\\x15\\xbaT\\xf4[n\\x13T\\x0c\\xdb\\x80\\xd8#\\xc8%\\x89/\\x88h\\x13\\x9e\\xf8\\\\\\x80\\xc8rR\\xf0\\x19\\x02\\x81\\xb84(?(PF\\x08\\x84\\xf3\\x8c!\\x89S\\xbc\\xb7X\\xcf^\\xca\\x9d\\xcf\\xc5\\xfbQi:\\xccF\\xbf\\xa3\\xff\\xf6\\x83SR\\x9e\\x82|\\xc8\\xd1==\\x0c\\xe6%\\xf1\\x9b\\xb5\\x82\\x11\\x0e^d\\\\\\xcc\\x9c\\xc0p\\xf2y\\x84\\xe34\\x1d\\x0cp\\x1f\\xe1\\xde\\x955\\x06:\\xc6\\x8d\\x9ej\\xfd%\\xd8;\\xb5\\xdeng\\x93\\x84Ek?\\xda\\xe2\\x0d\\xc1\\x94{s=\\xd2\\xcb\\x86A%8\\x19\\xba\\x14\\xe8=\\x14y\\xf8\\x0e\\x13\\xfa\\x83\\xa6\\xd1?6\\xa0Ls\\xd8\\x13\\x07\\xdd\\xb1:\\x1c\\xbf\\xd1)w\\xf6+r\\xac\\x98P'Y\\xbc\\x8e0\\xe9\\xad/\\xbc\\x1dq\\xdb]{4edz6s\\x7f\\xf8\\xfc\\xbc\\xe9\\xc3\\x8b\\x86\\x0f\\xcf\\x1aK<o\\xfa\\xf0\\xac\\xe9\\xc3\\xb4\\xe9\\xc3\\xd3\\x86\\x0fO\\x1b?|\\xd6\\xf0\\xe1ES\\xcf_4\\xf5cz\\xde\\xd4\\xc8\\xf4\\xbc\\xa9\\x8bO\\x9bF\\xeb\\xe9\\xa7M\\xcd7\\x0d\\xca\\xf4\\xbcq\\xe4\\x9b\\xe0z\\xd14\\x8e\\xcf\\x1d\\xa3B\\n\\xa6t\\x8e\\x9d\\xd8\\x9amh\\x16\\x88\\xf6rM\\xfe\\x94:\\x1ce5\\x12\\xbb\\xc8\\xb2\\x0b G\\x86\\x8c\\x01U\\xe2u\\xd7\\xcd\\xd1`p1P\\xb4\\xc9\\xc9\\x91#}\\x99B\\x91 \\xb5-\\x13\\xfa\\xaex\\x95\\xd2h+}\\xc8\\xa8\\xd6\\xe1`\\x94\\xb3\\xa0\\xb2\\xbd\\xf8\\x07\\x88\\xf8\\x9d\\xc7\\xa2\\xaa\\x0cr\\xf2\\xcei\\xc3E\\x91\\xb8\\xdd\\xd6O\\x0f/\\xf6\\xbf`|`\\xf4H8\\xda#r\\\"\\xdc\\x8ef\\xe1\\xf4\\xf2\\xact=\\xd5TV\\x9e\\x15'\\xe2\\xd8\\x1a\\xa6\\x07k\\xd0.J\\x0e\\xa81,}F\\x95\\x97\\x8f\\xe7\\x94\\xc4\\x1f\\x8f\\x0fk.\\xac\\x1f5G\\xf3~'5F\\x8eH\\xc5jr{\\x913\\xc5\\x8a\\x87d\\xda\\x10z\\xb6\\xf8\\xfb\\x10M\\x07;\\xa4\\x7f'\\xf9VxG\\xf9\\x1a\\xdajQ\\xc2\\x93\\xf6]o\\xf1\\xf7\\xde=\\xcc5\\x96^\\x1a\\x9fB\\xcc\\xd4\\xd1a\\xe05\\xe0i\\xbc\\x11\\x87\\x00\\xef\\x00\\xb4\\xd3hD\\xc3z\\xf0\\xc4\\xed\\x10\\x0c\\x07\\xdaw\\x9a\\xdd\\xc5\\xc3!z\\x86\\xe6\\xa4\\xe5\\xcew\\xac\\xa8\\\\\\xdcx\\xff\\x06IU\\xfc\\xb1\\x94\\x11viqm\\x0e\\xae\\x03\\xa7(0\\xcf\\x9f\\xbf@?\\xd4Do\\xc6\\xce\\n\\xbd\\xea-\\x16'\\x8b\\xde\\xaf?\\xf9\\xa7G\\x8f\\xfb\\x83'\\xc3\\xd1\\xe4tvqy\\xf5\\xf2\\xfa7\\xf3\\xe5\\x9b\\xb7\\x7f\\xfeY\\xbe\\xff\\xcf\\xe3\\x9e\\xd9\\xb8\\xf4\\x06\\xdd\\xee[\\x94\\x0d\\xad\\x96\\xe4\\xaa\\x18I\\xaar\\xf9\\xa2\\x0bY\\xb54\\xb5e\\xab\\xa2\\xe4\\xe6\\x1a\\xe9\\xfc\\xbc\\xc1\\xef\\xe2\\x01\\x8a;\\x1c\\xc6x\\xf1\\xb7\\x8eZ~\\xa3cL\\xbc-|\\xfe\\xfc\\x85B\\ns\\x17,\\xca/\\\"412\\xe3\\xe3Y!\\xc4\\xf0\\x8a\\x9c\\x8f\\x9c\\xcc]\\xf3\\x0f\\xed\\xb0\\xd2\\x8d\\xf2zS\\x05>\\xbd\\xba\\xad\\xd0.\\xa4\\xa5\\xd3\\n\\x85\\xa8<\\x88m\\xfe\\xf1\\x8b\\xc2\\xfcZ\\x17\\x87m\\xecW\\xcdo\\xcdC\\xdd[,zf\\x98\\xd5F\\xf0\\xe3\\xac\\xbac\\x11\\xb9t\\x8e\\xd1,(\\xe8X\\\"\\xc7\\xb8\\n\\xb2{\\xc2lD\\xc0C\\x0f/m(3C\\xad>\\x7f\\xd1\\xe4J\\xe8b\\xa0\\n\\xba\\xc8\\x1d)\\x8b\\\\\\x11\\xba\\xc4\\xf0u\\xf0\\xd7\\xec\\x02,!+\\xf7i\\n\\x11H\\xe0\\xe4\\xafy#K\\xe1\\x1c\\x1e\\xae3\\xd2CPRU\\x0fu\\xa1\\x8f\\x0f\\x17p\\xc6\\n\\xaa\\xab<\\x80my\\xf1u\\xe1\\x17\\x0da{\\x08ivZ\\xe1\\x17\\xc2\\xe4\\xcf\\xc9\\\"Z\\x0e\\xc1d\\x97\\xf4\\xdaMTL$\\x9f&\\xcb\\x94C\\x8c)\\x97wim\\x9dt]\\x15q\\x91\\xf2\\xe4Q\\x7f\\xff\\x8e\\x16\\x87\\x92lk\\x9dO[d\\xec\\xf3\\x86\\xb5\\x93\\xb6\\x93\\xfcv\\xfb\\xb5\\x14\\xbd\\x97\\xc1]\\xe4\\x96l\\xcd\\x8d\\xffr\\x8e\\xc8|\\x1d\\x883%/\\xc9\\x19\\x06\\x17\\xa8\\xb6\\x0d\\xb6\\xcb3p\\x8a\\xe5\\xf4i\\xae\\xa0;\\x1f\\x8c\\xc0\\x80\\xf2\\xea\\xe057\\x93\\xab\\xd9\\xe7\\xb9\\x9f{;\\xa3\\n\\xe74\\xdfj.\\x00t\\x80\\xeb\\x10\\x98\\xe7\\x187\\x0cn\\xa6\\x9b\\xb6j sE\\x08jA\\xc3|\\xf4)\\x0d\\xd5\\xe4\\xf1\\x93,\\x82s2&\\xe9\\xa8\\x91\\x11\\xeb\\x15\\x9d\\x8e\\x08\\xc7C\\\"\\x07\\x90f\\xc9\\xa5x\\x90\\x1f\\xa3#y\\xdd\\x02\\x84\\x8f\\xcb\\x1a\\xbd]7v\\x06\\xd5\\x90\\xad\\xfd\\xb5-\\xa03\\x12\\xe7\\xbdE\\xcc\\x83vC\\xd6\\x16\\x96\\x9a\\xa5\\x02\\x974\\xd5\\xb0:P\\xc4f@4\\xb1\\xa0\\xd8\\xfb\\x8ff\\xe3\\x05/6\\x14\\xea5\\x89\\xc7c2\\xb3N\\xf0\\x0b\\x1f\\xe19F\\x87M\\x97\\xe0\\xe9\\xb9Ih\\x89>0\\x86\\x12\\xc1\\xdd\\x14\\x9e\\xda[\\x9dy\\x9fu0\\xf5\\x8e\\xc8\\xb5\\x9eQ\\x8c\\x81\\xaau\t\\x959\\xb6\\xe8\\xd2n\\x85\\xc2\\x9a\\x0dH\\xdb\\x0c\\xe3\\xde\\xbb=\\xa6\\xb5\\xed\\xb2\\n->\\xd0\\xf0\\xa5\\xc0;l\\xf7\\xb5u\\x9c\\x1d\\x8c\\x0c\\x94(dV\\xc0yP+\\xff\\x9b\\xe5\\x0c\\xdaw\\xff\\xbf\\nchl\\xfb\\xdf\\x04_x\\xf6\\xb4\\x03[\\xd0\\x99\\xfe\\x16\\\\\\xe1Y\\x83;\\xcc6\\xa6pr\\xa5\\xeb\\xf9\\xbbc\\x0bM\\xbd\\xc9\\xb9Bk\\x8e#\\x98\\x82\\xc6\\xc2\\x87\\xf3\\x04]\\xc1?XB'\\x96\\xe0G\\xe9\\xdf\\x98%\\xa8\\x16\\xff\\xc1\\x12*\\xbf\\x16\\x96\\xf0\\xa2\\xc1\\xdd\\xf0\\xdf\\x82%4\\xb6\\xfdo\\x82%h\\xb7g\\xed,Ag\\xfa[\\xb0\\x04\\xdd\\xd4\\xbf\\x13\\x96\\xd0\\xd4\\x9b\\x9c%\\xb4\\xe68\\x82%\\xbc\\x98~ K\\xd0\\x15\\xfc\\x83%tb\t!\\xe57\\x7fc\\x9e\\x00M\\xfe\\x1bc\\n6\\xb9\\xcdt\\xc2\\xacYb\\x03@1\\x0c\\x00\\x05\\xaa>\\x95\\xfa\\xe2\\xb9M\\xfd\\xfc\\xcc\\xa6\\xa2g:V\\xf5LwtT\\xae\\x82\\xbf\\xd4\\xfa\\xc0fhK_KO\\x1b\\xd2\\x83V\\x16\\xe6\\xb9\\x96\\xb1p\\x1dM\\xe1%\\x83\\x06\\xf2.r\\xf2\\x8e\\xba\\xd6\\x00F\\xa2\\x9a\\x8dbhe\\xcf\\xa5j\\xd5\\x83\\x0e\\xb7E\\xa04X\\xcd\\xc3\\xbd\\xa6>*\\x84\\xc7\\xfa\\xea\\xe93r\\x0d\\xa3\\x00=\\x9e*\\xfcxZ\\x88\\xe6\\x87\\xad;`\\xa4E\\x15\\x04R\\x89\\x18\\xdd\\xce\\x9bvt5Q!Gd]8C\\x8e\\xcf\\xd1)\\xac\\x07\\xf0\\xf1\\xbe\\xf6Vk+\\xe0\\xfd8w\\xc5|2\\x1d(4\\xaf/\\x1f\\x8fF\\xb0Rg$sL\\x08\\x8dpM9\\xdd\\xc1\\xafY\\xe0\\x87\\xe9\\x8c\\xf8\\x0d\\xc4\\xe5\\x01\\xb6\\x16\\xb9\\xd4S\\xbd6\\xdc\\x8a8\\x9b\\xe6\\x83\\xb3\\xc4\\x85S\\x9bA\\x9dQ\\xea\\x90\\x8a\tl\\x00p\\xec\\x93\\x0f\\x10\\x8f\\x14\\x86\\x823\\xb0X\\xdf\\xc8\\x9a\\xe0p\\x8d\\xc8I01\\x83^\\xe7\\xc8\\xd1An\\xbc1\\xf6|\\x0e\\x8e\\xfc!RS\\x89\\x9bo\\xc8P\\x81\\xa2\\x1e\\xe7\\xd127\\xd4\\xf3\\xba\\xc6-\\xd7,\\\\\\x8f\\xa2\\x93%\\xd5\\xb9\\\\\\x83\\x11%\\xb1\\xa2LqH\\xf5 \\xd8a\\xc5Q\\x05l=h\\x9b\\xa1\\xa8Y:I\\xe2\\xa4\\xaf/-sE(\\x14\\xb0na\\xa5\\xf8\\xf3\\xe1\\xb6\\xdbe\\xdd\\xe7\\xab\\xeb\\xa7\\xcd\\xff\\x15\\xb9\\xa8\\xbanw\\xfd>\\xc4\\xd4\\x82X\\xd8\\xc6pT\\xa2=\\x99\\xd9\\x13\\xa2\\x96\\xbb\\x80\\xe6g\\xb1\\x90\\\"\\xc1\\xd7C\\xd4X\\xa6\\xfd\\x86K\\x15\\x80\\xf6\\xd1\\x8a\\xf0\\x80\\xc7\\xefp\\xfd\\xe6!\\xc1\\x95I\\xb1{\\xbc\\xb9~\\xe3\\xe0\\xcd\\x99\\xc1]u\\xbe\\x9c\\x15\\xe9\\xd03\\xce\\x8b'N\\xbcV\\xce)\\x81\\xf9\\xed\\x12\\x98^\\x93H\\x1e\\n\\xcc\\xe1i\\xce\\x1b\\x0e\tI\\xa9\\xe0q\\xb3\\x17\\xee\\x83\\x92\\xd9\\xf4A\\x8d\\xb6Dq;\\xd4\\xa0[\\x14|0\\x18\\x0f\\x14\\x0fG\\xe4\\x83F\\xfb\\x81\\xad\\xba\\x85\\xd2\\xa8$\\x94z5\\xa1t\\xf3\\xc1B\\xa9I5F6\\xa7\\x8bE\\x7fN\\x16\\x8b\\x93\\xa2\\xf1\\xcc\\xc2Z\\xcf,\\xac\\xf9\\xccrp\\xba}\\xb8\\xa2#.\\xdb\\x86\\xd7\\x87\\x8b>\\xe00\\xf4\\x80\\x1f\\xcav\\x0eN\\x8d[\\xec\\xf6\\xdd\\xffG\\xe1\\xb7\\x14\\x0d\\x03\\x0c\\x9bu\\xdb\\xc3\\xfb\\x87\\x0f\\xd7\\xfe.\\xf7\\x95\\x8f\\x1ea\\xff\\xf4\\x1c\\xa9.^\\xd7\\xcd-l@\\x01d\\xeb\\xe8\\x90\\xfa\\xb4\\xffF\\xce\\xdf,\\x16\\xcbA\\x7f\\xb1X,\\x06O\\x16\\xe9\\xe9\\xc0\\x92Im\\x130\\xcdW\\x80\\x93p\\xea\\x9a\\xdbm#\\xcc\\x9a\\xcdV\\x07\t\\x95CN6&\\x13\\xb15\\x91\\xe0#\\xd2\\xfbdZ\\xf5\\x92\\xe9^\\xd4\\xd3\\xd2\\xa2\\xf6k\\x8b\\x9a\\xfe\\x8f\\xb8\\xa8\\x9b\\x82\\x9d\\xfd\\xfb[\\xd3\\x9f?\\xfb\\xc7\\x92\\xfeE\\x97t\\xf2?\\xc2\\x92\\x8e\\xfa\\xd3\\xe7O\\x9d\\xd7s\\x9fM\\xab\\xf7p}\\x9d\\xfe\\xb9\\xe3~n\\xd4\\x7fv^4\\x9c=v\\xcd\\xbb=}\\xe1\\x9d\\xfe\\xda(\\xef\\x9b7\\xeea+\\xe1\\xd86\\x17\\xbcw\\xed\\xf8\\xb7\\x8e\\x1d\\xbf\\x8eL\\x01n0 t\\xf1\\xc9\\xd9\\xc8]z8\\xdc*yL\\x87m\\xbc\\xffEh\\x87Q\\x1al\\x11{@\\x8f\\x03\\xfeD\\xb6\\x1d\\\\\\x89\\x81\\xbb3\\xed\\x18\\xe5\\x92\\x84\\xa0\\xc38sS\\x95\\x8d\\x93\\xa2\\x00\\xe5\\xda\\x0c\\x87\\x17dc*0G\\x16\\xfd\\xb5[\\x852(\\x1ce\\xac\\x07\\x17d\\xd3x\\x0b\\x0f\\xfc\\xc7\\x84\\x8d\\x1d\\xb0\\xedoQ\\x80\\xd5\\x1a\\x13E\\x13P_\\x18\\xf8\\xd1\\xcd\\x97\\xb8\\x1eG\\xb9\\xaeG\\xad'\\xf5\\xbd\\xd7CgC\\x9b_\\x08v]\\xe5\\x16\\xe6~\\xa3\\x1e}\\xad\\xd2q\\xd2^\\xeb\\xe2\\xb4\t\\xee\\x8f\\x0e&\\xa8M<\\x18\\x89\\xb6\\xf1Wu=k8\\x8d\\xdb\\x0c*\\xaa(p\\xc2\\xe4\\x9c\\xa8\\xea6\\xad-\\xfa\\n\\x0e\\xc1\\xb7\\xb8\\x1eZP\\x98\\x98q\\xfb\\xe8cS\\x9a\\xc2\\xcf\\x1bN\\x93\\xd0- \\xa2\\x9f^}\\x9b\\xa2/%\\xb8Wt]\\x0b\\xd6\\xb9\\x1dA\\xa3d\\x06s\\xbb\\xd5GM\\x18\\xf4\\x13.\\xed\\x1ag\\xf2\\xaa\\xf2|\\x81\\xd6\\xa3~\\x82\\xa51\\x04\\xe7Bm%\\x8b\\xf6\\x13\\x1b\\xc81\\x9d\\xd3~:Xv\\x9e \\xb5$\\x92\\xc9\\x8e\\xb3\\x0djM\\x93\\x89\\xf0EPVh\\xb4\\xdb\\xcd\\x9a\\xcbe\\x05\\x06\\x96)\\x12~}\\x90\\xd5\\xfa!\\xdd\\xba\\xb6\\xba)\\xf7f\\xc4\\xc1d\\x01\\xb2\\x19\\xf1\\x1c\\x82a\\x90\\x1b \\xdb\\xf0\\x0f\\x19\\x84\\x7f8\\xc4\\xcb\\xcb=5\\\\\\xb7\\x15n\\x85\\xa5\\x8d\\xb1\\xc98\\xdb\\x1c\t|\\x07\\xbd\\x86]\\x17x[\\xdb}\\xe2e3\\x8d\\xc7\\x87\\x0f\\xc0\\xa0\\x0f\\x0f\\xd55\\x14\\x84\\x98Mi\\xe2\\xc3\\x8fe%]\\x16S\\x1e.^|\\x985\\x84\\xa1?x\\xc0\\xaf\\xad\\x17\\xd4\\xf2l\\x92\\xc1S\\xfd\\xb9\\x81r\\x14\\xce\\xa0O\\x0es~\\x95-\\xca\\xcfRu,> 3\\xc6\\x1c\\xc287\\xb5\\xf7A\\x1f\\x1c\\x7f8\\xf0Sg\\x1d\\xf8\\xe1\\x8a\\xcc\\x97\\x03\\xb3;\\xab\\x7f/\\xb8\\x15u\\x91\\x83\\xf80:\\x96\\x1d\\x83\\xd4\\xe9\\xf2\\xfa!a#+\\xeb\\x06w\\x8f5G\\xa8\\xee\\xc5T\\xef\\xe4\\xdc_\\xaa\\xc1\\xab\\xf7\\x00*\\x9c\\xe5U\\xa7\tng*\\x92\\x7fe\\x89\\x16\\xd6P\\\\\\xdb\\x01d6\\x02\\xde\\xc7XL\\xc7.\\x9aR\\xd8\\xcb\\xe6E\\xd3rUG\\xb1\\xae\\xa7\\xe4\\xe5\\x01#\\x97\\x13\\x07\\xbeV\\xd3 \\x88uk-M\\xd1\\xd1[\\xae\\x05\\xb5)\\x0c\\xb2_\\xce\\xd2\\xc8\\xda\\xe9d\\xb9\\x9d\\x0e\\xbd \\xfc\\xf8\\xe8\\xe8\\xfcp\\xe0\\xb5i\\x83@\\xdf\\xa1hS`u\\xde=\\xb0:\\xda\\x11A?5\\xb9\\xe3j\\xb8\\xd0\\xb5b\\x9f\\xab\\xe5\\x18U\\xc4\\x9a\\xccx\\x01D\\xc1H\\x8bD8G\\x8dq\\xcd\\xa3e3\\xf9\\xebF\\xd3\\xda+\\xbf\\x04QN\\xab*Z\t\\x9f\\x83`\\xc4n\\x82\\xa1#\\xa6G.-B\\x16\\x89\\x199\\xab\\x13\\x8e6\\x18!j\\xf3\\x8c\\xb8`,el\\xa6\\xdf\\xf3x9\\x81\\xb6\\x1b;\\x82\\x9f\\xb5\\xf4\\xf1\\xa1\\x94<v0\\xe0l\\xf5\\xcd\\x03h|\\x81\\x88\\xf2\\x12\\x01\\xa5\\x1f10yA\\x169{Vu]ft&\\x9f9t&\\x85\\xb8\\xa2g\\xe3\\xcf''\\xa0<}2\\\\\\x9c^][\\x85\\xe9\\xf07y\\x8ee\\xffz\\x96\\xbf\\x8d\\x97?\\x9f\\x8d^L\\xdf\\x17\\xbe\\x0f\\xae\\xfb\\xd7\\xb3\\xc5\\xe4\\xa8\\x12\\x83'\\x83\\x97\\xa7u\\xbdM\\x01\\xb6\\xc9b\\xbc\\xfcy::\\x7f\\xfe~0\\xeb\\xcf\\xdf\\\\\\xbe\\\\\\xdc\\x9d\\x9d\\x8d\\x17w\\xe7gKU\\xf6\\xe1|\\xa4\\xa4\\xdbi\\x95\\xb0^4j\\x1f4\\xf5\\xe8W\\xa9\\xc5\\xa6\\xe8\\x84\\xeae\\xaf \\n\\x81*$\\xd2\\xeaC\\n\\xee\\xeaO\\xfa\\xdcf\\xcejq(\\x0be\\xd5n(\\x9b\\x9f-u#S}\\xb5\\xdf\\x03+\\x82@\\xed\\xb9N\\xac\\xc0P\\xf4\\xcb\\xd5\\x0f\\xcabX\\x07\\xd9\\xbbu\\xffpp\\x97PY\\x07\\x87\\x97\\xa5\\x00\\x9fy\\x0e\\x8a\\xa3\\xf5\\x96\\xae\\xf0\\x94\\xac\\xea\\xf8\\xf0\\xe8V\\xbb\\xec2\\x0e\\xac\\xec\\xa1\\x9e\\x91\\xfc\\x16\\xe6@Q\\xbb\\x13\\x0cM\\x1a\\xe5!M\\xed\\x04\\xa6M\\x13\\xd8\\x0b\\xa9\\x1f\\x88\\x18\\xc8a\\xdbdz\\xff\\x98\\xcc\\xd2\\xef\\xa3NfZ\\x9d\\xcc\\x8fC\\xa4\\x8b\\xb4i\\xde\\xf3b\\x8c\\xd3\\xb9\\x8e\\xfd\\xba#:J\\xa9\\xfe\\x03\\x919\\xe9*\\xc6\\xd0\\x9d\\xd4\\xc3B\\xe6\\x8f\\x0f\\x815=\\x8e\\x7f\\xc1m\\x1d\\xfc\\xc5\\x08\\xa5>\\xc6\\xff\\\\\\x83OG\\xeb\\xdcn#\\xa0\\xec\\x96\\xc5\\xf0G\\xff\\x9b\\xectt\\xd1\\xa7\\xe7\\x18\\x81T`6\\xf5\\x17\\x8a\\xfb\\xf4\\x0e\\xfe\\xe8\\xa6\\xfd\\x10\\xff\\xd5o\\xd1\\x06\\xea\\xf1\\x13|\\xe5~j\\xfeNV\\x8c\\xd9\\xc4\\xc9]\\xe2\\x15\\x9f\\xf3\\\\\\xc1\\xed;\\xf5\\x1c\\xac\\xb1B\\\\\\x06\\xf0\\x84}\\x0bS\\x9e\\x98\\xbfP*\\x14?aB\\x96\\xa8U\\xa1\\x1e#v\\x0b\\x9f\\xa2\\x0d\\xfe\\xf1\\xf1_\\x88E\\x1aE\\xd8\\x9f8\\xa1?e,\\x88\\xbd\\x1b\\xd8\\n\\xa9\\xa4$6\\x11Q\\xa1\\x18\\x17)\\xbc\\xa7\\x8c\\xef}\\x8f\\xe1c\\x9a\\x9ax\\xa8f`R\\x9f\\xed\\xf1\\xa3\\xaf\\xdf\\x11\\xae4\\xc4?Q\\x88\\xc91M\\xec\\x10\\xd8\\x17\\xc8\\x82>!{\\x02\\x9cr\\xaa?\\x11\\x06\\x8e\\x15z\\x86\\xc4\\xceOC\\x96\\xa6\\xa0\\x81\\\"=\\x11==\\xff\\xf4\\x0c\\x9e\\xb0E\\x01\\xb3\\x9cq\\x80k\\xcf\\xc2\\x10\\xfa\\x8bCp\\x8b!]\\xef<\\x84Z\\xfd\\x1dg)\\xd3\\x88r\\x17\\x06<\\xf1,X\\x85W,\\x15\\xe24\\xbe{\\xfa\\xf9\\xe4\\xf9\\x19\\xcf\\x1f\\x11\\x19\\xd7~\\x16\\xde\t\\x8e\\x18\\xbaI\\xf0\\x0f~B\\xac\\xa0\\x1a\\x89\\x85\\xa0\\xde.d\\x11\\xbe\\xdd\\xaa\\x7fW,\\xddQ\\x0c=\\xbb\\xf2\\x85\\x17\\xfb\\x18\\x967\\x0e`\\xae=\\x1a\\xe8Y\\xf7v<\\xc6\\xa0\\xb6\\xf84fw\\x82E\\xa9\\x8d\\xcd\\x1b\\x8e\\xd9\\x9eEb\\xc5}\\xc1\\xc6T\\x08\\x16\\xad\\x19fG\\x02\\x03\\x8f{\\x00j\\x1dDt\\x9c\\x04\\xf4>\\xf5\\xa3\\xad\\xf6\\xefh\\x92Tn\\xeaG\\x88\\xfak\\x01\\x95\\xaf\\xf7+\\xf5\\x87\\xad\\xcfo\\xd4\\xdf\\x0d\\xf5\\x98\\xf0\\x11\\x96\\x0d3a~\\xa3\\xad\\x0e\\xe1\\xeb\\xa7\\x80^[\\x98\\xca\\xad/\\xf0\\xcf\\xbb0Nxl\\x02\\xf0n\\x05\\x0d\\xa0\\xae\\x9d\\x87+A\\xcf\\x8a\\x9f\\xe0\\x1f\\xae\\xd7\\x84\\xf7B\\xff\\xc5e!\\x10\\x93~\\xa4\\xd0\\xd2\\x8f\\xf8v\\xc3\\xee\\x13\\x8a\\x05\\x02\\x9a\\x8a\\x0d\\x0c\\xb8Z5\\xb8(\\xe8V#QhS\\xf8\\x8dN\\xc9Q)\\xc4\\xba\\xc2t\\xbcc\\x81^V\\x11\\xce]\\x98\\x85:\\xceo\\xb8\\x07\\xe8@\\xc6V\\x0f1\\xe2NB\\x83\\x10\\xff&\\x94\\xd3w\\xef\\x00\\xe9\\x92\\x80\\n\\x13\\xcd8\\xe1\\xf1\\x1d\\xc4\\x07N\\xd2{\\x80\\xf3\\xa7\\x8cqH0\\x0b\\x8c\\xa5q\\xc6qeqDZ\\x9e\\xdeG\\x90\\x97\\x0b\\xbdl\\x98\\x17G\\xeb\\xc0\\xdf\\xe0\\x12\\xd3+\\\"\\xdd\\xe2\\x1a\\xbc\\xb9O0=\\x84\\xa9J\\xe3`M1pq\\x12\\x0b\\x7f\\x03\\x8d\\xa581\\xa9`\\x14\\xc0J\\xb1;\\xea5M\\xc0q\\n\\xac\\xb0h\\x0b0ekh \\x8b8\\xa3\\xb0\\x1c3q~v\\x06Q\\x98\\x15\\x9eq\\x1f\\x11t\\xef\\xb3\\xdbq\\x0e\\xfd-[y\\x98\\xfdVP\\\\}\\xf7\\x9e\\x7f{\\x0f\\xc8p\\xb7\\xf1\\x11\\xd1\\xef8|\\xba\\x0f\\xd3-\\xef-\\x1f\\xce?JB\\xfe\\xa7\\x83\\xc9\\xef_\\xbf\\xfa\\xf6\\xed\\xeb/\\xfe\\xf9\\xed\\xf7_=\\\\\\x00\\xaehQ\\xdc\\xca\\xc5J\\x10~\\x92\\xdfP\\xd1\\x8a\\x17r\\xd2\\x18L\\x9f\\xc2\\xb1F\\xd1L\\x01\\xc5\\xe5\\xa7\\xfaN\\xa3\\xd3%\\x0f\\xd5\\x1a\\x8eG\\x8f\\xc8\\x8b\\xa7\\xb9\\xa9\\x9a\\x8e}\\x8f\\x1e\\xdcI\\xb3'#R\\xf0)\\xdb\\x14\\xf7\\xde\\x9e\\x11\\xb4\\xc7\\xbc\\x7f\\xdf\\x8f\\xb4\\xdcvrR7\\x070&\\x00|P\\x90\\xc7\\x0e\t)\\xd6\\x1fp\\xb3tTjd\\x04\\xa3\\x17\\xe7B\\xc9\\xb1\\x07\\x06\\x05\\xd1&\\xfe\\xb8\\xa2\\x8dM.\\xde\\xf7p \\x9b9\\xe8\\xc1\\xf1\\x83\\xf53\\x82\\xd9\\x81\\x01\\xeb9\\x86\\xc2V\\x18\\xf5\\xb9#\\x0eW\\xa5bn4 \\xb1\\xae]U\\x1b\\x8ft\\x83\\x05s\\x87x\\x00\\xfd\\x99\\x81\\x93\\xd1\\xef\\xd9\\xf6\\xab\\xbb\\x04\\x01\\xae\\xd5\\xee\\xb2\\xfaW8\\x85\\n\\xee\\xd3\\xfe\\xf5,\\x8b \\x92\\xfcZ\\\"cy\\xab\\xdf\\xd6q\\xb6\\xb2o\\x83\\xd3A\\xbfg2\\xf6F\\xe4t\\xfe\\xa6\\xf7\\xf8\\xea\\xf2\\xe5\\x9f\\xf3\\x0d\\xecPe)U\\xa1\\xf2=\\x9e\\xbfy\\xbc|\\xf2X}+U\\xa8\\xbe\\xf5\\xe6oz\\xcb'\\xbd\\xd3A\\xd5C\\x8doa[\\xa4C*\\x04\\x7f\\x1b\\xd1\\x90\\xc1\\xeb\\x93\\xabE\\xfa\\x04\\x92\\xf64\\xc8\\xd8\\xe0\\x1a \\xb3y\\x004\\xdck\\xbf\\x9d-\\xf3\\xdd\\xf9l\\xf2v\\xbc|b\\xb3B\\xd9\\x9e\\x1a\\xc6j\\xd3\\x18@\\xf3\\xf4r\\xfe\\xc5\\xf8?\\xd1\\xf1\\xbb\\xa5\\xfe\\xab6\\xf8\\xd0\\xac\\xbf\\xca\\x04{\\xb2H\\x9f,N\\xaf_\\x9a\\xfa \\xb17\\\"~\\xad:\\xb4\\x158}\\xd3\\xbf\\x9e\\xa9\\x8d\\xcb[A\\xb7\\x12\\xe4z|\\x8aC%V\\xc8\\x84\\xc7\\x9e\\x12\\xcd\\xa2\\xad\\\\3/\\xa0\\x9c*\\x94\\x91\\x9e\\x12\\x84\\xa1\\x7f\\xa6,\\xb82\\xea\\xf7l\\x0d\\xaa\\xbb\\x97\\x8bS\\x17\\xb0\\x8b\\xf4\t\\xc0\\xa7\\xdb\\x80\\x9c'\\xe3q\\x7f\\xfef\\xbc\\x1c\\xca\\xf9x\t\\x0f\\x83'\\xe31d\\xcbA\\x80\\x9c\\xf3\\xeb\\xe5\\xe4\\xc9\\xf5\\xfcz\t\\x1f\\x0b@a=\\xaa\\xa1\\xe5p\\x91\\x0e\\xe7o^.u;Zj?\\xbd<Y\\xcc\\xbf\\xfc\\xdd\\x17\\xaf\\xbfX\\xcc\\xfb\\xf37\\x8b\\xe5r(\\x17Kx\\x90\\x8b\\xa5zz\\xb9\\x1c<QO\\xaa\\x98\\xeb\\xbc\\xa9\\xc8\\x10\\x1e\\xe6\\xf9\\xd6\\xa4\\xe6\\x9c\\xe6\\xd9\\xf4\\x85\\xdbA\\xfe\\xa7\\x83\\xc9\\x8e\\xa6u\\xf4\\xc3O~\\xfa/j\\xb7\\n\\xfe\\xb8\\xef\\x15M\\xaf#\\x0bf\\xdc\\xf08T\\xdf\\xbf\\x8b\\xfdjH\\xfd\\x0cT@\\x8f~\\xdd\\xef_\\xcf\\xee\\xe6t\\xbcQ\\xd3\\xf3\\xf3t\\xf4\\xd9{9\\xb7\\x8f\\x83\\xc1\\xc5iE#\\x97b9P\\x1d\\x01&\\xeb\\xccO\\xa7\\xefU\\xe6\\x87\\xb3\\xca\\xe2\\xa5\\x1d\\x07\\xc1*\\xf0\\xc3\\xba>\\xfe\\xe9gn\\xee\\xe8\\x1d\\x8a\\x16\\x8e7N7\\xeeK*O\\x9f\\xbbuR\\x9ef\\x9fn\\x9a\\xe9o\\x8c\\x19J\\xced<\\xc3\\xc9\\nG\\x12\\xa8\\\\P\\xfc\\xb9w\\x87\\x91j\\x82\\xf9t\\xa9\\x18HI7E\\xae\th(\\xbe\\x89D_e0z\\x8d\\xc1\\x88L_@\\x80\\xf5\\xe2\\xd7\\x11\\x99b\\x98\\xad\\xc2e \\xbf\\x1f\\xa9Zh\\x1f(3\\xed\\xbfx\\xfe\\xfc\\xe9\\xd3\\xd2\\x8e<(\\xb3\\xad:\\xb1F\\x9b\\x0d0\\x1cj\\xecZ\\x8aL:V|@\\x81R\\xedi\t&>WY\\x96-@8E%\\x97\\x03\\xbbG\\xbf\\xb0\\xff\\xba\\xf2,kAm\\xe6\\x98|%x\\xb8\\xfd\\x96\\xdd\\xa9O\\x7f\\xcc\\x1a\\xa2r\\xc0\\x81J\\xda\\x10\\xb1\\x83F\\xdb\\xef8\\xdb\\xf8w3\\xb5#\\x89\\xb6\\x19\\xdd\\xb2\\xb1K\\xfb\\xe2G7\\xfe\\xe6\\xbe1\\xbe\\xca\\xcdk\\xca\\xb7L\\xcc\\x9c\\xd2\\x80\\xb8Ob\\x08*\\xc2\\xb8\\xbb\\x02`\\x8e\\xe9\\x8c\\xf4\\xfe\\xfa\\x97\\xff\\xf3\\xaf\\x7f\\xf9\\xbf\\xfe\\xfa\\x97\\xff\\xe3\\xaf\\x7f\\xf9/.u\\x97\\xbf\\xdd\\x05\\x18\\x7f$\\xca\\x02\\x87\\x12*?#\\x9b\\x91\\xf3\\xea)G\\xe9\\xd5\\x8b\\xc3$\\x8eX$\\x9cc\\xed\\xc5\\x9c\\xb9\\xd2\\xd5\\x8fg\\x01\\x84b\\xe9\\x81'\\xb9\\xde(\\x8f\\xfa\\xa26G\\xc6J\\x06\\xdf@rQ\\x8c\\x08\\xde\\xf5 \\xe2\\xde\\x87r\\x81\\xdd\\xae\\x97\\xa3\\xab\\x15?W\\x0f\\xf6\\xa8CP?\\xe89\\xc2 :f\\x1b\\xdd\\xdbu\\x01\\x1d\\x9a\\xef\\x8d\\x8c\\xf3=\\xb5A6\\x10\\x98\\x86\\xd5\\xf3\\x8e\\xd152\\xc8\\xde\\x0e\\x95L\\\"\\x0cl\\xdf\\x83\\xc2g\\x1d\\xa4\\xaf\\x10\\xb4i\\xa4c\\xe9v\\x83\\x1d\\xc7\\xf1 \\xf0\\x85\\xc0\\x1d\\xa5\\xd8):@J1\\x80I\\x1e\\x97#\\x0f\\xc5R\\x8d\\x11R\\x88\\xf0a\\x03\\x92\\x14\\xc2\\xbb\\xa0.\\xd4\\x01\\xff\\xaf\\xdco\\xff \\x0b\\xc5\\x8f\\xff.\\xc9B\\xcb\\xb2k\\xc3\\xea\\xbf3\\x8cq\\\\\\x87/`\\x8c\\xe3\\xeb?0\\x06~\\x0f\\xc1\\x98Z:9\\x8a\\x91 C\\xe8DC?\\x0e\\xfd\\xff\\x10\\x9a\\xdf\t\\xcc\\x0f%\\xf5\\x87h\\xfc\\xbf\\x02M\\x87mW\\xbe4yq_R\\x15\\xe6\\xdd\\xab\\xd9\\xd4\\xc2\\xe0\\x88\\x89\\x9a\\x99\\x87\\xbf\\x1e\\x8f\\xa3{\\xd4\\xcf\\xaf\\xd7\\x9c\\xe1\\x01\\x01\\xe5\\x0csq\\xe1{\\xa8\\xf7\\xa5\\xa9\\x8f\\x93I\\xb3\\xb5\\x0fZOP\\xb2\\xae\\xd6>\\xfe\\xc1$\\x1fFfe\\x87\\xb6\\x84\\x0e\\xabx\\x0d\\xa3\\x89-\\xaf2!\\xb4\\xde\\x9eF{<\\xd1\\xf2h\\\"\\x8c2\\x9fE\\x02\\x95\\xe9\\x9e_\\xc6&/\\x0e\\xf4\\x9f-\\x8f3<\\xf1\\xca\\xd5\\xfb\\xf9i\\x97\\xa0\\x06\\x87\\xd6x\\x0e\\xc6\\xbc\\x98S\\x11\\xa3V\\x1fY\\xfa\\x9a)\t\\x08\\x99\\xfc\\x06\\xf5\\xfc>~\\xf7\\xf1\\xb0\\x0csA-,`\\xe6\\xd4\\x82\\xc1\\x80m|\\x16\\xacS\\xa6cDm\\x0b\\xc0o\\xfcm\\xc6\\xb5L\\x80%\\x94l\\xa0\\xcf\\x06\\xb4B|7\\x85\\x7fA\\x1e\\xdb\\xe1\\xe1\\x1a(\\x96w\\xcf\\xe1_P\\xfa\\xab\\xf5`\\xfe\\xea\\x838\\xdb\\xe7|\\xfd\\xa8\\xbf0\\x0b~\\x08\\xc3\\xefG\t\\x9e\\x0bb\\xd8\\xb6\\xde\\xcd\\n*\\x01\\xeb\\x1dx`[\\x16a\\x12\\x14\\x0b)\\x9e\\xb7\\x84\\xe6\\x90\\x0dB\\xb9\\xa9\\xbf?ex|\\x12\\xb2(3\\x7f}\\x81\\xbd\\x0f\\x99\\xeeP\\x84\\xe7\\x8aQ\\x8c\\xf3\\x8a\\xb3\\x13'\\xc2B\\x1a\\xdbq\\x893\\xa1A3gk\\xf8'\\xde\\x1a\\xcc\\xfbI\\xfd\\x83gz\\x1c2\\xf2l\\x85\\x82-\\xfcC\\xed9\\x80\\xa92e\\x81>OIwt\\x1d\\xc3qR\\x1a\\xd2\\x00\\xa0\\xc8u\\xf2iB=\\x047M(\\x16\\x14\\xdc\\xbfa\\xfa)F\\xa2\\x93\\x8a{\\xc4v\\x0cB\\xd7K\\xb30\\xa4xJ\\x81A\\xe7\\xb4\\xd4\\xa9\\x1e\\x0c6\\x0b\\x18I\\xc1\\xc2$\\xd0\\x07\\x8e\\x8a\\x08\\x98\\x15$\\xd4\\xc4\\xc3\\x03\\n\\xadfF\\xcd\\xd9\\x91\\xe0\\xf8/E\\n( /\\x8cu\\x06=\\xd8\\xe31\\xcf\\xde_\\xe3\\xc1\\xec\\xed\\x8a\\xf7\\x1c\\x81\\xe2\\xc0(\\xac\\x97\\xee\\xa1\\x17\\xb8t\\x03\\xb1\\x0d\\xeeQT6\\xcfk\\x94K\\xcd\\xab\\x99I\\x1a\\xf9!\\x15\\xcc\\x8b\\x03\\\\\\x1b\\xfa=\\x8c\\xcd\\x18\\xeb\\x04\\xc1i\\x94\\x1a\\xf4\\xb5d\\xa0\\xb0z}\\xae\\x89\\x85\\x17\\xf8IB\\xb1\\xcbk\\xb6\\xd1Bt\\ng9,\\x08\\xfc$\\xc5\\xc5\\xe1\\x07vQ\\xe02\\xc1\\xf32\\x037<\\x18a\\xfa\\x86\\xe1\\x91\\xa6\\xb6\\xbd\\x07\\xfak\\xffR\\xbe\\xe5t\\xed\\xeb\\xe5\t\\xa7[\\x1c\\x9fR\\xc4e&\\xa8\\xa1\\x0c\\xa1\\x81\\xac\\xf0W\\xe8\\xca\\x938\\xb8\\xdf\\xc6\\xf6\\xd1rM\\xba\\xf6iPl\\x82\\x1b\\xa4\\x13xL\\x9cc\\x0eD\\x80\\x82\\xa7\\xfbp\\x15\\xebC\\xdc;a\\xfe\\x9aF\\xc1\\xaa\\x1e\\x1et\\x07\\x85AL;\\xd7{\\x9f\\x01:\\xef\\xa1\\xeb\\x8eY\\x8f`\\xd67\\xec\\xb7\\x81^\\xcf\\x1b\\xf6\\xa5\\x9a\\xc4WTp\\xff\\xce$h1\\xe25\\xcc\\x9e\\x1enLN5eU\\xaf\\xd1>\\x0e\\xf6\\xacX\\xf2w\\xfef\\x93\\xa5\\xec[%\\xceh\\xa6\\xac\\x12S\\xbb\\xf7|\\x85\\xf4\\x02\\x12\\x05\\x8d\\x04\\xe4\\xc4\\x94\\xaf\\x838\\xd6\\x10}\\x9dE\\xde\\x17\\xf9\\xe3o\\xf3\\xc7\\x7f\\xce\\x1f\\xbf\\xc7\\xc7\\x7f\\xa6Y\\x9a\\xfa4\\xfam\\x90i8_1\\xbee\\x85\\xc7?X\\x91\\xe2U\\xcc\\x93]\\x1c\\xc4\\xdb{|\\xff\\xe3fch1\\xea\\x0d\\x0b\\xe0\\xfc\\x900/\\x0b(/\\xf7\\xe5\\x87$.fzm,!\\xd8\\xeb\\x8c\\xaf\\xb2@\t-\\xaeQ\\x87\\x88\\x1c\\xbdP\\xcfc\\xc8\\\"mY\\xa2\\x9e9\\xc7%\\x14\\x82\\xc8\\x83&\\n\\x1bN\\x01\\xf1C\\x8b\\xd7x\\xba\\x19\\x02Afk$\\x01a\\x98\\x05>\\x9az\\xe0),\\x92d4v\\x88\\xf7\\x1a\\x9d\\x13\\xba^\\xebj\\x93\\x1d\\x8dD\\x8c\\xa4\\x98k\\\"\\x13r$\\x80\\xfa 7\\x01\\xaa\\x87\t?!9\\x0d\\xef-\\xa6\\x86\\x9a\\xc8\\x85\\x9a\\xb4\\xa9w\\xf3h\\xc9\\\\\\x88\\xe4-4(\\x1cjh\\xb3H3$|\\x02\\x00\\x1dc\\x15\\xc3X\\xfd\\x1a\\xc5\\\"\\x87\\xb4\\x86\\x02\\x89\\xe71m\\x1b`\\xc9:\\x0d\\xfc\\xad~\\xc0/\\x99\\x88\\x95D\\x1c0-KP\\xefF1\\x18\\xc4\\xfb\\xd5\\xd6\\x12\\xafU\\xcc5d\\x1e\\x0b\\x025^z\\xbe\\xd5\\xab\\x1a\\x0f\\xf3\\xbac\\xde\\x0d\\x0e\\xa5\\x150\\x02\\x8aL\\xc8\\x0b\\x18\\x92][\\xab\\x17\\xa3\\x90\\xa0\\xfe\\xeae\\xea\\xc51_c\\\"\\x8f\\xd34\\xe6\\xfe\\x16\\xd9\\xe8Z\\x91JM\\xdeu\\x0c\\xaf^Q\\xb0H\\xd5\\xd8\\xa2D\\x12\\xdfFA\\x8c\\x0c\\x81E\\x9e\\xd0\\xe7\\xd7\\x1b=i\\x1bl\\x1b\\x99\\xbf\\x16\\x9f\\x0d\\xba\\xee\\xfc\\xf5\\x1a\\xedT\\xd4\\x96\\x03\\xfe\\x1aB\\xc9\\xd9Fm\\x94\\xd43\\x9e\\xcd\\xfb\\x91`[\\xaeEY?\\xd5l>\\x17\\x07hY\\xe2\\x0eb$i\\x81\\xc6%\\xb4\\xf0\t\\xe9\\x1d*9\\xe1\\x85\\xad}\\xa4\\xa5L\\xecp\\xa1\\x87Z\\x86\\xc8\\x02\\xe1'\\x88;\\xfa\\x04\\xa9\\x17\\xc5\\x8a5\\xebGc\\xaf\\x86o\\xb7\\x9cj\\x11\\x01;\\xa3D\\x850\\xd3\\x96\\x049UV\\x14g\\x17\\x07zb\\x938\\xd5l#\\xe1\\xcc\\x8c_\\x92\\xadL\\xb5\\x8aL\\xc7V\\xfa\\xe0\\x8c\\xae\\xe3(\\xd0\\xa6\\x06\\x01\\xfe\\xf9)\\xf39\\xce\\x01g{\\xfd\\x87\\xf1T'\\xc5\\x08?\\x8f\\xd1jF\\xfd5BC\\xc2\\x82\\x00P\\x07\\xde\\xbcX[\\x1c\\x80\\x10\\x82\\xa5\\xd3\\x9d\\xde*\\xa4\\xfe;\\xfb\\x17\\xa5\\x17S\t\\xf7\\xcc\\x98\\xa7\\x82\\xe2\\xbaL\\xd1x#\\xe5\\x9e&b\\xa9`\\x15\\xc6\\x92\\xcb\\\"\\x82\\xae\\xc0(\\xb4W\\xe2#\\x1a{\\xb2\\x94\\xe9\\x19\\xde\\xdbEd\\x0e\\xe8z\\xb7\\xfe\\x1ag\\xf0.\\x0c\\xa2\\xd4\\xb5$\\xa9]\\x92\\x91\\x18\\xe7\\xf8F=/\\x0b3#\\xe1\\xa8U%\\xfc\\xbd\\x8f\\xa6N\\xd0\\x8cb\\x08\\xe3\\x15M\\x99\\xe1\\x994\\xf5\\x8c\\x8d\\x8f9\\xd33\\x08a\\x13\\x0c\\xcc\\xf4\\x9d\\x1ff\\x08\\x98\\xaab\\xa3&\\x88E\\xde\\xbdIPu\\x8e\\xd3\\x9d\\xbf\\x81\\xfaVL\\xaf\\xb4\\x95\\x8f\\x82\\x07J\\x88\\x85\\xe5\\x8b\\x96P\\xea\\xef\\xd8\\xf0[xQ\\xfb\\xbf^e]\\xc7|\\xac\\x16\\x08O\\xe2\\x80\\xda\\xcdG=y\\x8c\\xc2J\\x9a\\x7fNxl\\x8c\\xe70\\x813E\\n\\x0d}\\x81\\xd9\\xc1.\\xe0b\\x87\\x04\\x94\\x19\\xd7\\xc8Z\\xbd8\\x02\\xc6\\x89I<\\x17j\\xd7\\xc0eu\\xd6\\xbd\\x9f\\xea=\\x0b2E\\xb6\\xde\\xb2P\\xb3A\\x16\\xb0\\xbd\\x85\\xda\\x08\\x01>\\n\\xbf\\xea\\xef8V\\x14\\x0fW>\\xbc\\x9b\\x11(\\x88^\\x8aU\\x8f\\xed\\x88\\xe0k\\xb1X\\x1c\\x89\\xf1\\x86\\x86~\\x90\\xbf\\x1a\\xd4\\xb6/c\\xba\\xfe1KE\\x9e&8\\xd3b\\x90~\\xd7X\\x0co{\\xca}\\x1a\\xe5\\xb9o-\\x9amP\\xf6\\x80\\x96\\xb6\\xb0A\\xda\\xc2\\x06\tX\\xe7\\xd8\\xe0OQ.4BY\\x16\\xf9\\xc88MBIZ-\\x10N]N\\x93F%L\\x96'\\x0eQ\\xcb\\x8f\\xa0]X\\xe67\\x00\\xc8\\x0d&\\xc0N\\xed\\x06vjJ,\\xd3\\x85n\\xd8}\\xa2d\\x8eT\\xbf\\xa4\t\\x04V\\xd7o\\x8a\\x1b\\xc0\\xb3%\\xb5@I\\xf31\\x0b\\x98\\xa2u\\xe3\\x02{Ru\\xb3 \\xb4\\xe2\\x18\\xbe\\xabN\\xe6T8\\xd0\\xd2L>yA\\xac\\x0d\\x8fP\\x02\\x1ek\\x8c\\xd0o\\xc6f\\x12\\xdf,\\xe9\\xc1\\xf7|\\x84\\xf0\\xdd\\x8e'\\xbeZ\\xc2\\xa1$j\\xbd\\xdd.dIo\\n/w&\\xad\\xd7\\xc0*4\\xf2j\\x96a\\xd9D\\x16\\xc6\\x9e\\xa0{mWf\\xc5\\xb98av\\xdb^\\xc0K\\xcb\\xe7cn\\x84r|\\xb2\\xeb!g\\xc9J<\\xd9h~\\x96P?\\x12c[\\xba\\xb8\\x19\\xc8\\x87V3\\x9fjGur\t\\xb5tZ\\x9e\\xc7\\xe2A\\xc2Y\\xca\\xf8\\x9e\\xd1 \\xd9\\xd1RB\\x9a0O\\x80\\x05\\x80J\\x0688\\x8c\\x9a\\xb6\\x88\\xa3k?C\\xd6\\xc3pEp\\xb6\\xd1\\x0c,aT\\xc0\\x95\\x96\\xfcU\\xd3\\x05\\xce\\xec\\x94r\\x96j\\xa9\\x83\\xc7B\\xd3\\xec\\xd4\\xa3\\x9a\\x91\\xb0\\x02\\xa3*\\xe3~\\xaa\\xe5\\xe4\\\"a2i\\xec\\x0e\\xf7\\x11\\x98\\xa6\\xb8j>\\xa3\\xa9X\\xaf\\xd9\\xde\\xb7#\\x9f\\n\\xb5\t\\x12~\\xa0\\x19\\x9f\\x88\\x93\\x1cI\\xe1\\xad0\\x91j\\xfb}\\xc3\\xc6k\\x9a\\xee(\\xe7\\xb4\\x9a\\x96#\\x82NT+K\\x9b\\x1b\\x17R~\\xd4F\\xa3:)\\xf4\\x05\\xe3\\x81\\x1f\\xfa\\xc5\\x92\\xb5F\\x0b\\xdf,\\x82\\x17\\x18.W\\x92\\x98\\x1d\\xb7\\x12\\xd7\\x05er\\xe1\\x11\\xf9r\\x11/\\x94\\xcc;\\xa6\\x91\\xb7\\xc3^\\xc3\\xabVA\\xe9Q\\x82\\xa4\\xd2\\xf8\\xab\\x94\\x1c\t-G\\x07\\xfa\\x93\\x01\\xfd\\xc9\\\"\\xdf\\xe8\\xc1\\x80\\xa9\\xc3\\xf8\\xaa\\x8d\\xe2*\\xbe\\xc3\\xc7\\xd4_\\xf9\\x81\\xee\\xe5\\x9eq1\\xa6\\xeb\\xfd8\\x7f\\xc3E1\\xbe\\xab&@\\x0e;\\x08\\xb71_\\x17\\xc9\\x91\\x91\\xd3n\\xb9\\x0f\\x14\\xc7,\\xe1;oG\\xa3\\x88\\x05(\\x00aO\\xef\\x1di\\xd0\\xdc\\x1d\\xf4\\xe3\\x0e\\xfa\\x81\\xf2\\x87\\xca\\x0d\\xff\\xc0\\x97{\\xf8\\x02\\x06\\xdf\\xef\\xe28\\xa4\\xd1Z\tL\\x0e\\x19%+\\xc8(=\\x14N`\\x95\\xea%m\\xc5\\x9e\\x15\\xdb\\xb3@\\xcb\\xdav\\x93\\xe6\\xc5A\\x16F\\xa9\\xcd\\x84\\xef\\x96\\\\\\xeb\\xcfZT[\\xb3(\\x0em\\xd65K\\xb4N\\xc3\\xca\\xf29\\x9b\\x86\\xc7\\x9c\\xcf\\xc1\\xeeQ=pM\\xde\\x9aXP\\xa0\\xf0GK\\xdc\\x05\\xd2\\x1e1\\xb1\\xf3\\xbd\\x9bH\\xeb\\xc5\\x02\\xbb\\x95\\x0b\\xac>UmA\\xcb\\xfb \\x95b\\xd7\\x99z1\\x8cZ=\\x17\\xb8nH\\xef\\xec\\x17?\\xb2\\x8f\\xf1^mM`\\xd5@\\xa3Q\\x9c\\x13\\xd3(\\xcb\\xc7\\xc1H\\xeb<\\xbe\\xb5i<\\xbe\\xb5c\\x88\\x02\\xb3\\xc1\\x9d\\x82\\xf8\\xccm/\\xb8\\xed\\x05\\xeey\\xc1@1\\x7f-@\\xa5\\xf7\\xc4\\xfe;\\xa6\\xf7\\x16\\xbe\\xd6\\xe3\\x01zY-`B-\\x93\\xb0/\\x9a\\xf8\\x80(\\xa2\\x95x:\\xc8\\xbf\\x95%\\xd3,\\xa9\\xa6\\xdc\\x87!\\x13\\xdc\\x07y|\\x9fS\\x9f\\xc3\\xa23\\xde\\xe0\\xb8\\x0b\\xfc\\xe8ff\\xe6\\xf8.\\x0cf\\xda\\xba\\x1e\\xd2\\xad\\xb8\\xae>\\xd8\\xd1\\x80*g\\x90\\xa3\\xb7,\\xd8O\\x92\\xa2\\xc9c\\xe0\\xb4B\\\"\\xd5\\xc8\\xcd\\xe6j\\xe7\\x05\\x89\\xc6\\xe3\\x8b\\x01*:\\xa3m\\x8f\\\\]\\x81\\xa9i\\xbc!bnn\\x9f\\xce\\xe1\\x16\\xa6\\xfaS\\xb9Y6\\\"l\\xae\\x92\\x97\\x0d\\xde\\xb7\\x8c\\xe9f\\xe5`\\xc3\\x0d\\xb9\\xd7n\\x8b\\xeb:\\xdc$Z\\xbd\\x85\\x97i\\xeb\\xedk\\xef\\xd8~D\\xd8\\x80\\xfcq\\xf5#\\xf3D!\\xbc\\xfc\\x8e\\xa6\\x7f\\xbc\\x8d\\xbe\\xe3Jt\\x10\\xf7\\x13\\x8f\\x060x\\xdas\\xb4\\xee5\\x9bGK\\x87'\\x15c\\xb2\\xd3pdC4\\xe0\\x1b\\xf0.\\xf7\\xf3\\xe2\\xe7\\xf9\\\"]\\xfc\\xb0|\\\"\\xf5\\xdf\\xc5\\xfb\\xc5\\xfb\\xd3mX\\xefQ\\xa2\\n\\\\\\xfeS%\\xfb?\\xbdtf^\\x83\\xb5\\xda\\x9a\\n:\\x9e/\\xc6\\x8b\\xdb\\xc9\\\";;\\xfb\\xed\\xa7\\xe3E\\xf6\\xf5\\xd7_\\x7f\\xbd<u\\x9c<B\t\\xb5\\xc4\\xb1\\xc4r\\xf8\\x89#\\xd7\\x1er\\xf5\\xafg\\xf8\\xffF\\xee\\xc4@$\\xe9\\xb5\\xc4\\x9b5R\\xb0@\\xe2u\\x0b\\xe9\\xf9ky\\x17&\\xc9`&\\xe7o\\xe8\\xf8\\xddR\\xce\\xe9\\xf8\\xddp\\xb2\\x18/\\x87\\xfd\\xeb\\x19\\xa4\\xa9\\xb7\\xd9R~2\\x18T\\xcd\\xed\\x88\\xf6l\\x05\\x8d-n\\x87\\xb8\\xc8$\\x98`\\xce\\\\\\x99\\xb7*\\xf3\\\\u\\xf3\\xecl\\xac\\xfe\\x9c\\x9f\\xa9\\x7f\\xbf8[d\\xd3\\x17\\x9f\\xa9\\x7f?;\\xfbj\\x91\\x9d\\xe3\\xe7\\xf3\\xb3\\xf3\\xcf\\xd5\\xbf\\xcf7\\x8b\\xec\\xe9\\xd9\\xd9\\xd9\\xf2t[\\xaf\\xf2\\x9e\\\\\\x91\\x9eA\\xc2\\\"\\xfe\\xff\\x00\\x9aY\\x85\\x0bFI[\\xfb8Q\\xf2\\x83\\xa2!\\xe4\\xfa\\x80E9)\\xe0\\x0c\\xd6Pw\\xaa\\xfb\\x9e\\xcc\\xba\\xd7\\xc2\\x00\\xb0v\\xb8\\xd9\\x04D4\\x9e)\\x06\\x0bFx\\x85o`S\\xa8\\xbba\\xd7\\x04\\xb9\\xce;;k\\x81\\xb4\\x89\\xfa\\xac\\xdcp\\xfb\\x1b\\xd2\\xffBIm\\x13?\\x85\\xbf}\\xd6hah\\xc9\\x94Z\\xf4gx\\x8f^\\x971&\\xec\\x17D@\\xc4yC\\xc2\\xc4p8 \\xd1\\\\\\xe0z\\x15\\xcb\\xfar%\\x05w}\\xf5\\xde4\\xadn\\x04y\\xc3\\xe3\\xb0\\xdd\\x11\\xa0\\x82\\xf6m\\xdb\\x81k\\xa1\\xce\\x9e\\x12@6~\\xc4\\xd6\\xc59\\xbb\\xf5\\xa3u|K\\xae\\xc1\\x1e\\x80\\xcc\\xf4{\\xb9I\\xa7\\xcd\\xa0\\x1d\\xf9[g\\xa3\\n\\xb2\\xaf\\xc8\\x15\\xa1|\\x9b\\x81!\\x98\\x89$\\xff\\x12c\\xc3\\x17\\xbc\\x10\\xd8,\\xf3\\xb3%\\xb9.\\xbf\\xce\\xc8\\xdb\\xa6\\x80\\xa6w%\\x03\\xd8\\xa6I%9\\xc4\\xb7\\xd5\\xb14\\xbf\\xf7no\\x0dw\\x93=\\xe3\\xa9\\xea\\xe2\\x15\\xe9M'g\\x13\\xb5\\xab\\xbe\\x9bp\\x16\\xc6{\\xb6\\xd6q\\xafO\\xbe\\x02\\xe7\\x1a_M\\xd6\\xb1\\x07`\\xab\\xd7\\xcf\\xa1_y\\xda$\\x8a\\xd7\\xec\\xf5}\\xc2\\xac\\xed\\xe6\\xdd\\xc4O\\x7f\\xc8\\x92$\\xe6\\x02\\xaa:\\x99\\x8e\\xc8]\\x1d\\x0c5\\x8a?\\x90bU\\xee\\xb1\\xf8\\xb2\\xc1\\xaf\\x9f\\xfa\\xdd\\xb4|\\xfb\\xa2C\\xdd\\x7f\\x84<\\xbf\\xd3y\\xbe\\xe6t\\xdb\\x9c\\xf7;\\xc8\\xfb\\xfb\\xd7\\xaf\\xbe}\\xad\\x0f\\x1c\\xbf\\xc2Siw\\xf6\\xd7\\x90\\xfd\\x0f5Kk\\xf3{e\\xbf\\x7f\\x0d\\xfa w\\xaeo0\\x17\\x0d\\xd9Ze}E\\x13w\\xbe\\x1f-\\xbf\\x06\\x8a\\xf4\\x0d\\xb9\\xae\\x14SS\\xf7\\xd5\\xe4U\\xfc\\x0e\\x12\\xbf\\x10\\x82\\xab\\xc4\\x19\\xf9\\xc6]\\xdf\\x1f\\xa0\\xdd\\xd7\\xec\\xae\\xa1w\\xdf\\xc3\\xf7/\\xd1\\\"\\xdf\\x9d\\xe5w8\\xb6\\x7f|\\xf5\\x1d\\xdc\\x96vg\\xfa\\x162\\xfd\\xcf\\xaf\\xbe\\xfd\\xbd\\x10\\xc9\\xf7\\xec\\xa7\\x8c\\xa5\\x0d\\xd5\\xfd\\xa9\\xdc\\xc3o\\xa1\\x87\\xe5\\x82dF\\xbeu\\x17\\xfe\t\\x9aa\\x91\\xda\\xbf\\xfd\\xe9\\xfb\\x86>\\x7f]n\\xe1'h\\xc1\\x96!3\\xf2\\x93{-9\\xf9\\xc5w\\xff?{_\\xdb\\x15\\xb7\\xad\\x04\\xfc\\xfd\\xfe\\x8a\\xc1OOj\\x1f\\xbc\\x06\\x92\\xf4\\xb6\\xdd@8\\x046-m\\x80\\\\ M{i\\x1e\\x8e\\xd9\\xd5\\xee:x\\xad}\\xfc\\xc2Ko\\xf9\\xef\\xcf\\xd1H\\xb2e[\\x92\\xbd$M\\xef\\x87\\xeb\\x0f\tk\\x8ddi4\\xd2\\xbch4cZ\\xb4\\x8c\\xec\\xff`\\xbbo0NIEDnu\\x8cm\\x08\\xe2\\xffG L\\\"l\\x8b)\\x7f\\x04\\xf46!\\xa9\\xa4`\\x94\\xb1\\x18\\xe1\\x1b\\xcam\\x97j\\xe4\\xc3:\\xf8\\x8auP\\x8f\\xa5_`\\x07^\\x05\\xd1b\\xc9\\xfb\\x8dJ\\x8a\\x1e\\xf2G\\x84\\xe4\\xa3dTx(\\xd8\\xba\\x1e\\xfa=B\\xcfH.\\x10\\x92\\xbd\\xba?\\x0fg\\x8cZ\\xf5\\xf0?)\\xad\\xf7[\\xc0\\xbf\\xc1\\x0e\\x9c\\xb1\\x9e\\xd347\\xaf\\xcb\\x9fQ*nOAsW\\xfb\\xa5\\xb1\\xd3\\xff\\\"\\xfa\\xc26\\x08u:\\xf8~\\xb9WnDGt\\xa2\\xb9\\xfb\\xc6\\x90\\xfe\\x03FF\\xd3v\\xea+\\xd8\\x01\\xc3\\xca\\xff7\\xec\\xc0D_\\xf4+\\xec\\xc0\\\\_\\xf4/\\x8c\\xbb\\xa6-\\\"\\x04v@#\\xd2\\xb1''\\x18\\x14P[\\x96\\xb02\\xbd\\xe7\\x1d \\xa3\\x82\\x1d\\x88\\xdd\\xff<\\xf8p\\xf1\\x81Q\\xe78\\xcc\\xdd+\\x0c\\x9cu\\xe5\\xe6\\xf8o\\x82\\xff\\xa6\\xf8/\\xf5<\\x03o\\xa4\\xf6\\xefD\\xfa\\xefD\\xd8j\\x88\\xff\\x16\\xf8of\\xfcBh\\xffBa/\\xce\\x88!1\\x11\\xe0\\xad@K\\xe1\\x98X\\xd8\\xd9\\xd4V\\xb8\\xb4\\x15Nl\\x85s[\\xe1\\x8d\\xadpa+\\x9c\\xd9\\n\\xefm\\x85W6\\x0c]\\xda\\no\\x89E\\xa1\\x1d)dQ9\\xd0H\\x97 \\xe9QP\\xc5{(\\xadI\\xaaw\\x91p\\xf2\\xe1^\\\"\\x1fL\\xb2\\x9b\\xf6K\\xa5g\\x89p\\x14\\xab\\xdc\\xa3\\xb8S\\x8d\\xa9\\xb5\\xb3Zk\\xdc\\xb0\\\\\\x9e\\xb6\\x89S\\xea\\xa8\\xeec&\\x8d\\xfa\\xe6S\\\\\\xf5<S\\x1aE\\xcas\\xcar\\xe4\\xc2\\xd8b\\xe8\\xd8\\xbe}\\x15\\\\\\x13\\x1d\\x8fC\\x03\\xad\\xa1\\xc1=\\xa2\\n\\xbdS\\x9b\\xd0\\xebP\\xb4:8\\xfc\\xbe\\xb2\\xc2\\xb3\\xa7L\\xd5Rt\\x81!\\xdcc\\x18W\\x19\\x1d\\x15\\xa3\\x18\\xe2F\\xe5\\xec\\xbdys\\xf2~tpy\\xbe\\xf7\\xc3\\x99\\x03Q\\x82u9\\xa2\\xa7\\x81Z\\xe8\\xc1\\x10R\\xe2\\xf3}\\xa7\\xac\\xb6w~~j\\xac\\xc6\\nY\\xb5\\x88\\xf8|3q^\\x9f\\x9c\\xbe:4|L)c\\x95\\xd8\\xcbB\\xad\\xa4\\xfd\\x94R&+!\\xfd;\\xef\\xceF\\x97oOO^\\x1f\\xbe\\x19\\xc9O=y\\x02\\xd3@}\\xef\\x8bM\\x8a\\x07\\xc1\\x13\\xfd\\xbe\\xdc;=\\xdc\\xc3\\x06}\\xb1M\\xd5\\x8b\\x0f\\xf6\\xcee1nT\\xf2\\xfd\\xbb\\xe3\\x9f\\x8fO\\xde\\x1f\\xb3\\xc6\\xcfO\\xf6O\\xde\\x9c\\xa1\\xd2\\xb0\\xe5\\xf3\\x1dk\\x1a\\x9c\\xed\\xbd\\x1e]\\xbe>9\\xbd\\xfc\\xe9_\\xefF\\xa7\\xbf\\xc9\\xd2e\\xa3\\xf4|t\\xf4\\xf6\\xcd\\xde\\xf9\\xa8\\xac>\\xe1\\x00\\xef\\x7f<y3\\xba<8\\xd9\\x7fw4:>\\x97\\x85\\x0b^x::\\x7fwz|ypr$\\x0bf\\xcd\\x82\\xcb\\xd7\\xa7{?\\xa8U\\xef[\\x10\\x87GoON\\xcb\\xf2\\x1b^\\xfe\\xfa\\xe4t\\x7ft\\xf9\\xea\\xe4\\xa0\\xec\\xf1U\\x0d)g{\\xc7\\x87\\xe7\\x87\\xfff];\\xf2\\xc5\\xc6$\\xcb~\\x1e\\x8d\\xde^\\xee\\x9f\\x1c\\x9f\\x8f\\x8e\\xcf}\\xce4+\\xe2xwzxy:\\xfaa\\xf4\\xeb[\\xd6pN\\x10\\x15\\x18\\x86\\x88\\xc8\\xb4j3\\xfe\\x82\\xef\\xb0\\x9b\\x1eN-\\x06\\xf6$Z\\xde\\x86\\xbc\\x92\\xd3'\\xaam|-\\xdc\\x92*4@\\xec&\\xc4\\x07\\xc6kc\\x97\\x12\\x1f\\\"\\x9e\\xd9K\\xc2e73\\x05,/\\xc1\\xc2\\xf2\\xaf\\xacU\\x81k-\\x99R/\\xe9\\xae\\xc7\\xf6\\xd9#\\xb5Ki\tY\\xa8u<\\\\M\\x07|Q\\x94C\\xdf\\xd9aRD\\x89\\x88\\xb1\\x9b\\x10\\x0fk\\xb1\\x96*\\xf8\\xaa6\\xa3V\\x84\\xa7\\xbcvD\\xca_0v\\xa9\\xa8M\\x89\\n_\\xd5f\\x13\\x85\\xe4)\\x9b\\x89\\xdd3\\xa2-\\xf4\\x90\\x00x\\xc7J\\x97+9w\\xdcB\\xca\\x0dK)!\\x7f\\x10\\\\\\x95\\xd5[aA\\xe5e\\xee\\xd4\\xf3\\xf9\\xd6:\\xd5\\xee~\\x06\\xeevBz\\x1b\\x0cJ%\\xdf\\x14\\x13A}\\x84\\xdf\\xf5Pc\\xad\\x92\\xcf\\x83%\\xe7X\\x9e\\xde[z\\x022;\\x04IP\\x1e\\x17\\x1d\\xdb\\x9fG\\xf1\\xc4d\\xce\\x00\\xb4\\xe8\\x8d\\xc3|<\\xc7<\\x1c]\\xad\\xd3\\\"')\\x13\\xc91t\\xb9\\xb9\\xc9U\\x90\\xfd\\x96t]OV\\x9fn\\x1c\\xac4#\\xec)}x\\x86\\x903\\x8diO\\xfefXd\\x12ug\\x0b\\xd3\\x94.\\x86\\x0d;{\\xf3y\\xe81\\x03VJ\\x83O\\x1c\\x9bY\\xb8P\\x9fO\\x1d\\x8ay\\xe2D\\xd7K\\xec\\x1aMl\\xfaN\\x9e\\xf7_\\x93\\xd20\\xcb%\\x19\\xfb\\x98m'3\\xf2\\x89\\xa6\\xe0\\xde\\xf0\\x0d\te\\x82m>\\x92\\x97\\xdb\\x1b\\xe2\\x0f\\x07\\xd6\\x91\\x1b\\\\w\\xcd_7\\xf5\\xb2\\x87}\\xe4\\xb5m\\xc9B\\x93h\\xcch\\x075\\xda\\x01\\xb9\\x85w\\xe6a\\xb2'\\x0dR\\x92-i\\x92\\xa1\\x0d\\x92\\x0dV*\\xda\\x8e\\x0fi@\\x97$q\\x9d\\x1fF\\xe7\\x8e\\xb8\\x972d\\x9b\\xf3\\x06c\\x8c/\\xc6\\xf30\\xcdH\\xbeS\\xe4\\xd3\\xc1w>\\xa2\\xc4\\x17iM\\x83\\x8c$\\x13\\x97\\x11\\xa0\\xc7\\xa3\\xa2T\\x9fy\\x04%\\xb1\\xe9\\xd8\\xf7z\\xe0\\x92}\\xc9e\\x83>\\xf0x\\x8c\\xc1\\xd7)]\\x9c\\xe1\\x19\\\"\\xdbg\\x9c\\xb2\\xefN\\xcf\\xb5i\\xeeSy;\\xfe\\xc9\\x13\\xc8K\\xe3\\x84\\x10\\xd4\\xf1\\xca<O/\\xca\\xba\\xa43m\\xb8\\x8e\\xe3y\\xc1\\x15\\x9d\\xdc{\\xa6-<Q\\x0b\\xa6Q\\x9a\\xc9\\xe6\\xb1\\x98\t\\xe2\\xb5\\xed\\x99\\xd1\\xe3{~^\\x98\\xa3\\xf4\\xb7+\\xae\\xd8\\xc0P\\xdc_\\xf2.6\\xdb\\xf7\\xbb@o\\xe4\\xae\\x9bk\\x98\\x04l;F\\x00\\xe5\\x96\\xd69q\\xbf\\xde\\xcenf/\\xb7g@\\xd1Gx\\x07\\x03\\xbf\\xb5\\x87\\xe9z\\xce\\xcb\\xed\\x8d\\xd9\\xcb\\xed\\x0d\\x06\\xfe\\xb5\\x81\\x11\\x92\\x00\\xc3m\\x9d\t\\x97\\x0c\\x17\\xb5H\\x0c\\xc1\\xe4^s\\x19A_\\xcfN.n\\xbd\\xab\\xcb\\x97\\xdb\\xa8\\xb7\\xbd\\xdc\\x8e\\x163\\xc8\\xd2\\xf1\\x8e\\xb3\\xbd\\xd1xs\\x074A/\\xf9\\x9d0&i\\xeeny\\x1b\\x1b\\xce\\xcb\\xaf=O\\xd3A`j*\\xd7\\x9b\\xf6y'\\xf5\\x88\\xb7\\x13\\xdb\\x83\\xab\\x19\\x1b\\xc3\\xf3Q\\xff\\xbdQ\\x10\\xea\\x8f\\xe2$\\xb9a\\xef\\xfc\\xf3O\\xb6h\\x89\\x0fG\\xc1\\xd9\\x8f'\\xef/GoF\\\\\\xd6\\x97/\\xf6O\\x8e\\xea/\\xceG\\xbf\\x9e\\xfb\\xdd\\xd4\\xd0\\xf8\\xfcQ\\xf0\\xfa\\xf0\\xcd\\xf9\\xe8\\xf4ro\\x7f\\x7f\\xf4\\xf6\\xdc\\xbc\\xfa\\xea9\\x97\\xeaE\\xda\\xd7\\x87+\\xa3\\xa2\\xd4~w\\x1a\\xda\\xef\\xb9F\\xfb=\\xc7X\\xb6\\x04\\\"\\xf4*\\x1b\\x13:\\x85s\\x18\\x8a\\x83NSCD\\xd3\\x10\\xe1j\\xb4\\x93\\x14\\x8b+\\x92\\xaa\\xa6nR\\x1e\\x01\\xf1c\\xdd\\x96\\xcf\\x03\\x078\\x0e\\x17\\x86\\x94\\xa7z\\xc4|l\\x89Y\\x8d\\xcb\\x99\\xcd\\xe7\\xe7\\x0b\\x82\\xae\\x15\\xec\\xff`J\\xd3Q8\\x9e\\xbb\\xfd0\\x0b\\xb8N\\x91\\xc2\\xee\\xf8\\x87\\x98\\x14n\\xd9dW\\x9a\\xe2\\xe3\\xfeS\\x8c\\x92\\x80\\xdf\\x9b\\xc9\\x7f$\\xaesE\\xa64%ga\\x12\\xe5\\xd1\\x1f\\xd2\\xd4\\x929\\xb8*\\x04\\x07[sq\\x1f'\\x9eJ\\x06\\xc7\\xa8~\\xaaoN1\\xf4\\x97\\xc6g\\xa5\\x9c?\\xc3\\x04\\xe7\\x01\\xe3L\\xfb\\xd5\\xf1\\x84\\xf6H$W\\xb9\\x03\\xe7;\\xa5\\xb4\\x97\\xa9\\xfd\\xf8\\xd8\\xd9D)\\x93Y 3E0\\xae\\x02\\xcb\\x9c\\xf0\\\\\\x0d\\xb6\\xfc\\xbfR\\xfa\\xa8\\xc8\\xb6\\xee\\xa0\\xd3=%\\xc5\\x92&\\x8d\t\\xe1\\xf3\\xd1\\xc1\\xfe\\xf9y\\xc7\\x10\\x0cG$\\xf2\t\\xe3\\x98\\xde\\x92\\xc9y8\\xcb\\x86\\x90\\xd8T3\\x1f\\xd6\\x12r\\x91~\\xc0\\x80\\x7f\\xec\\x8f\\xaeE\\xc0F\\xc0U\\xd9\\xb5\\x11V4\\xe1\\x97\\x04Q\\x92\\x914\\xdf\\x9b|\\x0c\\xc7$\\xc9\\x19\\x13\\xef#\\xe2\\x00\\xae\\xb4v]\\xd7\\xd9\\x9b\\xe6$\\x1d\\xa13\\x1d\\x03H\\xb8`\\xf0\\xd9d\\xca\\xe6\\xfc\\x9b\\xb1\\xd6\\xb5\\xff\\xaeM\t\\x0f*\\xd8\\x92i\\xf8k\\xe5\\x98\\xae\\xfc\\xa1\\x87]\\xdb\\xd8\\xde\\x98\\x059\\xc9r\\x97\\xa8K\\x88K\\x07+\\xe9N\\x95\\xa6\\x1e\\x8cc\\x9apU\\xd0\\xb6\\x81\\xd5\\xb0\\xcc\\x93\\x9cT\\x1d(\\x03\\xf4\\xb1\\x0e\\xfa\\xe0<\\x89\\xf3\\x17\\x8e\\xe7IS\\x95L\\xf5\\xa0\\xee\\xfb\\\\\\\\,\\xff\\xa9\\x8f\\xa7l\\xef\\x07\\x1f\\x1c`\\x92\\xa3|\\xf1\\x15\\x7f\\xe1\\xd7+TA%\\xbf\\x00\\x16\\xd4\\xef\\xee@\\xc2\\x86\\xc9\\x16q\\xc8\\xe8\\xd1\\xbe\\xadn\\xad\\xc2\\x05NW\\xe4\\x02+\\xeb\\x83v\\xb8\\xb4'\\x1c\\xed\t\\x17\\xf5\\x84\\x0b{\\xc2\\x15\\x8ffy\\xe5._\\x9f\\x1d\\x1eA\\xb5\\xe20][\\x1fCz;\\xe6\\x8a\\xeeam\\xf2\\x8dZ\\x17\\xd0D\\x07\\xfdK\\x18\\x17=\\xc1\\xaf\tY\\xb2\\x11\\xe9\\xe3\\xb54\\x1f\\xc1\\n*\\x14\\x0c\\x81\\x9a\\x19\\x02\\xe8u%\\xf5AG16\\x17a\\xe9\\x08V\\xa0/k7ZdvI\\x945\\xc2\\x8b\\xe2\\x83\\x17$\\xe1\\x82\\xf8Hzy\\x80\\x07LA\\x9eF\\x0b\\xd7\\xf3y\\xd0\\xc2:_\\xf5!\\x0b$jy\\x02(\\xfe\\x1b\\x91\\xc7\\x93ud\\x81D\\x8fH\\xa5\\xd9\\xe4\\xb6{J\\x0cK4%\\xf3\\xaf+\\x0d\\xc9\\x032\\xdc\\xc2(\\xf2\\xb7\\xc3\\xa3\\x1f\\x1ceG\\x93\\x82N\\x18D\\x13\\x0f\\xe9\\x9c\\xfd\\xc5\t\\x8a;\\xafU\\xde\\xae\\x18\\xd0.\\x08\\x97\\xcb\\xf8\\x1e\\x0f\\x97\\xdf\\x12\\x97\\x1f\\xc7\\x11\\xfe#\\xe1\\x7f\\x85e&\\x89\\xc8\\x83\\x97Pp\\xde\\xa0J(\\xa2Z\\xc4\\xd1d\\x911\\xe4cH\\x89\\xa8{\\xd0I\\xe5\\xf0\\xf8\\xed\\xbbs\\xdd0\\xf9]\\x07\\x05\\x1dx\\xb3\\x8e[\\xdb\\x85\\xb9\\xfc\\x82\\xa2\\x04\\xb1V\\xb0\\xbf<\\x0f\\xa3\\xe2FI\\xa1\\xf1c\\xd0=ld\\xd8\\\\\\xa2\\x19v\\xe2\\x83\\xe3(\\xb8\\xeal\\xd1\\xce\\xe5A\\x0cW!\\x14\\x8c\\x14|\\x85,\\x1b{\\xb2V\\x0e\\x94\\xd3\\x01\\xff\\xcd\\x86\\xe7\\xa6\\x10%\\xb0\\xc7\\xfe\\xc6\\xbf\\xae\\x89gt\\xa8l>\\xec\\xa3\\x82\\x112\\x82\\xc3\\x7f\\xd2N\\xb6\\xe7\\xe1Q\\xdb\\x93'\\xf0o.\\x05P\\xaf\\xc7\\xcc\\x83\\x9c}\\x1c(V\\xff\\xf51\\xd5\\xfb\\x0d\\x0c\\xc4\\xe0\\xd6J2\\xe0T\\xb0\\\"\\x11\\x80h\\xe6\\x0c+\\xf7\\xafS\\x0e4'|\\x8c\\x15R\tA\\xda\\xe9;fP[\\xc3K\\xbf\\n)(7\\x07*\\x82\\xe0\\x8e=U\\x16\\x18n@\\xe4\\xb6\\x9b\\xb5;raR\\x10>tS\\xb1\\xfa`XQ.s\\xff\\xeb3\\x8c\\x11\\xd4q\\xa6\\xd5<\\xf5j\\xa0{uA\\xa7i\\xaa\\xf9\\xb4W|\\xea\\xf9\\xea\\xc9\\x00]Zd4\\xf5YA\\xdc\\x87\\xce\\xc1\\xd8K[\\x12\\xa0V\\xca06\\xb1\\xd2\\x81\\xd2\\x81*\\x19\\x02\\xb1\\x9fk\\xc9\\xbb&}d*\\xb6\t\\x1d\\xb1\\xf6\\xcc\\xd4\\x83\\xfc\\xbe-S\\x9da@\\x9f\\x83\\x93#\\x87\\x9bC\\xd8`_\\xe0w\\xd3 !w9\\x17\\xac_x-\\x06\\xcc+\\x8aP!I)\\x8c\\x1d\\x137\\xe1ZMR\\xeaG\\x8a\\xc6\\x7f\\x82\\x9c\\xa1*\\xf3|8e5,\\x1doM\\x90\\xae\\xcb\\xfaY0^<\\xb9\\x0b2\\xd1X\\xdf\\x13\\xbe\\xbe\\xb3\\xd1G\\xfa\\xee#y\\xf7\\x91\\xba\\xc3\\x0eI\\x1a\\xb3\\x11\\xf2\\xa8\\xb8\\xb0\\x03\\xce\\xefw\\xcf\\xc6k\\x83\\xc1\\xefw\\xcf\\x08c\\xc4\\xa5yg\\xad\\xd2\\xf5qo:$\\x96\\xfb\\x05\\xd0\\xf6\\x85U\\xea\\x079\\xe5\\xa7\\x18\\x1e\\xe4\\xf3\\x94\\xde\\xe2\\xc1\\x0eS\\x1cGiJS\\xd7\\x91\\xc5\\x10e\\x90\\xd0\\x1c\\xc2\\x12\\xf9&g\\xd8\\xf2{\\xad\\xde\\xe2\\xa0\\xaa/\\xba\\x8c\\x85k?:\\x89\\xd2\\xfc\\xbe\\xfa\\\"o\\xc8\\x87\\xf0\\x8a\\xa6\\x18\\xa7\\xc6@<F\\x94\\xae\\xd5\\x8e\\x1c:\\x11\\xa5\\xda^\\xef\\xdd\\x11v8\\xcc\\xa317\\xa40aEgvi\\xc2u[st\\xf6\\xd8\\xd2\\x1aVo\\xce\\xed\\x92;Y{\\x82\\x0c\\x0c\\x0dT':\\xab\\xee\\x8d`\\xba\\xd9&\\x1f3\\xe6\\xe7H\\xcd{\\x04\\xddH\\x9b\\x97\\x18\\xea\\xa6o\\x0fx\\x96].\\xa4%\\xfc\\x0c\\xa5\\xbe\\x04\\xbc\\xfa\\x11\\x83\\xe20\\xccv\\x82\\xb5M\\xcf\\xab\\xdb\\xbb_\\x9d\\x1c\\xfc&\\xc4\\xe5J\\xae\\xde\\xe5{%\\x0c!a\\xda\\x01I&\\xfcL,5\\x1d\\x12\\xd9\\x052\\xa4/.\\xae\\xafM\\xf0\\xbf\\x81\\xcc\\x16\\\\\\n'\\xdb\\x8e\\x92\\xbf\\xdb\\xbej\\xd6\\xe4\\xc8Q\\xc0\\x15ux\\xaf\\xf9M\\x19\\x83\\xab\\x84~\\n\\xf8I\\xf3\t\\xdb\\xbe\\xd1\\xca\\xc5\\x8f\\xf7\\xf4=(\\xef!\\x15\\x9c5%\\xde\\x0b\\xdc\\xf7\\x8a:W\\xe1\\x06&ZC4\\xe5.<l\\xaa\\x8f\\x89K97\\xa1Fnr@\\xaaB\\xceN\\xa8HFL\\x0d}c\\x98YX\\xed2\\x0cb\\xd6\\xa1\\xa3\\xe0\\x08\\xd9\\x16\\xfc\\x13?OH\\x1a\\x1e\\xf8/@E\\xd3\\x0b\\x0f\\xc2\\x1a\\x81\\xf4\\xc0!Hz\\xc1\\xa0\\xfdf\\x181\\xaf\\xf7\\\\+a\\xc0\\xbf\\xf1.\\x9d\\xf92\\xd5\\xa5\\x0f\\xe1\\n\\x13-\\x1a\\xc4\\xa3Y\\xf5\\xec\\x96\\x11yiJl\\xd5|`k2#\\xf9>M\\xa6\\xd1\\xac\\x97\\x0dl\\x8f\\x1bi\\xb9o\\xb2&\\xb6<k\\x11\\x03E\\xb5\\xdb45Y\\xb9\\xabJ\\x97g}\\xb3\\xe1d\\xf2#\\xa5\\xd7}\\xf9\\xbf\\xfe\\xec\\x01\\x11\\x8e\\xc7Q;\\xfcT\\xea\\xcf?q/\\xc2\\x93)4c\\xe6\\x9e\\xe6*F\\xb5y\\xb5\\xba`\\xfa~\\xed\\xccK/H7\\x9a\\xcdVjW\\x8e\\xe2B\\xa3\\xd3(\\x0d\\xef\\xc5q\\xabmc\\xd3\\xe8\\x87\\xabm\\xad\\xf6\\xf2A\\x19\\x0bOg[\\x86ENE\\xd1\\xa3\\xe2+\\x0b\\x7f;~\\xb8)\\xef)\\xbb\\xb9\\x0f\\xce\\xe5%\\xc9\\x8e\\xe8\\x84\\x87\\xe9\\xa9w\\xfe\\x86\\x1b\\xf0\\xd4T\\x01\\xca\\xea\\x94'F\\xb1\\x9b\\xb8\\xcf\\x9b\\xb7\\n\\xa8(x\\xda,\\x88D\\xc1\\xb3fA(\\n\\xbei\\x16\\x14\\xa2\\xe0\\x9f\\xcd\\x82L\\x14l\\xaa\\x123{\\xb1\\xc5^\\x94oJ\\x1d#n\\xcf\\xbcz\\x03\\x96\\x04\\x15*\\xf0\\xf4X\\x17\\xd4W\\xc4Wk\\xfa\\x066#\\xec\\x82\\xc0\\xcf\\xd8Jwe\\xcfr\\xdb5Ow\\xd3\\x07\\x1a\\x88\\x0f{n>\\x8f2\\xee\\xae\\xca\\n\\xc2f\\x81\\x9b\\x07\\x97\\x97h\\xaa\\xbb\\xbcDf\\xb1\\xe9C\\xaa\\x00y\\x9e0\\xdcq\\xf0\\xf2n\\xa6g\\xbb\\x95\\xaa\\xf4\\xa4P\\xda\\xe2f>\\xf66\\xaa\\xbd\\xbdh\\x8f\\xe5\\x9a\\xdc\\x0f\\xc1\\xe1\\xb1G4\\xf6`Ai\\x9d\\xcbH\\xba\\xabp\\xd7\\x94\\x94.5\\x19P\\xe4\\x93\\xf3\\x04\\x1cK2\\x96N\\x1e\\x16`~z3c\\x1b\\xb6\\x08_iWk\\x12\\xd79\\xbb\\x99\\xede\\x19\\xc93\\x93o?\\x94ij\\x9c\\xc3dJ\\xf7\\x95$\\x7fk\\x9b\\x96:<\\x7f\\x8d\\xf3\\x0b\\xbf\\xab\\xfa6\\x0dg\\x8b\\x90;\\x1e\\xdb\\xbe\\xc4\\x93\\xd9\\x88\\xe0E\\x11\\xc5`'\\xd6\\xcf\\x14\\xbc\\xc2\\x11\\x9d\\x90\\xb8\\x138\\xe6\\xc0\\xa7\\xf4\\xd6\\xd6\\x871\\x87\\xda\\xa7\\xb1\\x0dj*\\xf0G\\xd2\\x1b\\x92f\\xbd\\xd1\\xb2\\xe4\\xd5\\xd0\\x99\\xa7\\xb3\\xbf\\x13\\xf1\\x8d\\xf1\\x9c,H\\xffo\\xccy5\\x8e\\xed\\xde\\xb5n\\xd0\\xd4\\x1feg\\xb7\\xe1lF\\xd2\\xa7\\xa6\\x0b\\xce b\\x140\\xd8\\x93\\xbd\\xb3g\\xa6Su\\x94VsN\\xbay\\xeaZ\\xf5O\\xb6\\\"f=N\\x91\\xc4\\x12f\\xa0NLy\\xd4s\\x94-\\xf3@\\xfcd\\x1aM\\x91a\\\"\\x9dL.\\xe7\\xe6U\\x16\\x1e\\xa5\\xda\\xae\\x7f\\xe1E\\x1dqR$\\xbfd\\xac\\xf0\\xe0\\xc1\\xd0\\xfc9\\x0cP\\xcd\\xe5\\x17\\xe7\\x98\\xc2\\xde\\xdbC@\\x0e\\x16\\xe1\\xae\\xb9L\\xe9M4!\\x93\\xc0\\xc1S\\x94\\xcf\\xd4\\xe5\\x8cO\\xe2\\xa0\\x88,\\xbd\\xfe\\x8c\\xdf\\x13(\\x1aT9@m\\x9f\\x9diD(\\xe8\\x92]\\x1f\\xdd\\xd7U\\xf0b\\xc1IZZ\\xc4L\\x10\\x91\\xad\\x17\\xd5\\xc2\\x1a\\x9a\\xaear0\\xb6\\xa6\\x86\\xa6\\x1b\\x9e\\x80\\x07\\x87\\x19=\\x9b\\xd3[3\\xc9-\\xad64\\xf3\\x00\\x96\\x9dC\\x8c\\xfb\\\":J\\xa64]\\xf0\\x18\\x90\\x1dDa\\xe9\\xd0\\xd8\\xf6\\xb9\\x05\\xbd\\x8ab2\\x84\\xad\\xa7\\xab6K\\xc58=\\xcbH'\\x9d\\xb8\\x98vB\\xcc;!b\\xb93|\\\"\\x06,<\\x84d\\xd79]>\\x06Ma\\x0f4\\xfdW\\x0f\\xa0(\\x07\\xa0\\xd3\\xd9jo\\x1e>x\\xber\\x15\\xe1\\xc1\\xad\\xda,\\x85)\\x85\\xd1\\xe5\\xb2\\x14v`\\x8co\\xff^\\x85\\xc6\\x87<\\xf8)\\xa3\t\\x8a\\n\\xe1%\\xb7P\\\"\\x93V\\xde^Q\\x1a\\x930i\\xbe\\xc6\\xf0\\x81\\xcd\\x97\\xdc\\xf4\\xd8x\\xfb\\x9a\\xa6\\x0b\\x0d\\x97\\x96:\\xd4=S\\x95Z*\\x11\\x95%-\\x9d(\\x12%-\\xbd+\\x94UtZ\\xd4\\xbdN\\xef\\xcaDA\\xeb\\x1b\\xb1(h\\xe9]\\\\\\xcak\\nDS\\x04\\x1f7\\xde.E#[\\xcdF\\xb8\\x80\\xf6m\\xe3\\xed\\\\\\x82o\\xb5\\xfay#\\x8bZC[\\xc8\\x92\\xcdoZ\\x83\\x98\\x89D\\xc5Z\\x85\\xf0\\xfe\\xcb*\\x84\\xcbr]\\xb0\\x1e\\x04Qv*\\xc2B\\xfbJQ\\x98\\xdc\\xfb\\x0dHK1\\xa7VCS\\xbc\\xd0\\x87\\x9b\\xf2M\\x1ce\\xb9\\n\\xc1\\xc8\\xda\\xf6;L\\xee\\xeb\\xb4z\\xd5r\\x15\\xba\\xd1;\\xf9\\xd0d\\x7f\\x1e&\\xb3\\x86N\\xd78\\n\\xccpi\\xb4\\x93M]\\x93{\\xbd\\xa7\\x91\\x8c\\xa3\\xdd\\xce\\x99\\xc4\\xb5\\x82!*\\xa3\\x93\\xe0M\\x94\\xe5\\x9ejI\\xd1\\xcd\\xfe\\xa5q\\xf6y\\x03A\\x94\\xb1\\xff\\x18\\x14\\x9f|C\\xdb\\xaef\\x9d\\x7f\\x0e\\x9d\\xbf\\xa5\\xdaK\\x9d?k\\x16\\xe8t~U#\\xffT\\x9d?V\\xda\\xaat\\xfe\\xba%\\xc0\\xa8\\xf3\\x97i\\xa5\\x0e\\xa2\\xc9\\x11\\x8f#\\xdb\\x82\\xfc\\xeb\\xd4\\xffI\\x94-\\xc3|<?d:C\\x18sg(c\\x1dn\\x05\\xb8\\xb1\\x03q/iI\\xe0z\\x8d\\x0b\\x8d\\xa1\\xa9\\x9bt\\xf2N\\x1d\\x8b\\xff\\xfbl%H\\xc2]\\xe8\\xe1K\\xad\\x0b?\\x1dH\\x8cjH\\xb4H\\xec+\\xd8e\\n\\x84\\x9d\\x1a\\x0e\\x07\\xf2 \\xa7?\\xf1k\\xd5\\x9c\\xbd\\xb3\\x9f\\xae\\xe9\\xb0]\\xfaEZ>\\x17\\xa3\\x8b]~\\xbf\\xb4t\\x7f\\x8c0\\\\\\x9e7C-\\xeb1\\x98\\xc6\\xb0\\x0b\\x8e\\x03C\\x18\\x9b\\xab0\\xf6\\x19\\xbaK\\x06\\xa9\\x88\\x1e\\x0e\\xacC\\x0c\\xeb\\xe0\\xe0_K\\x18\\xb6Ky\\x1a|\\xd7i\t,\\xa6Cg\\x19\\x1d\\xce,\\xec7\\x0c\\x94\\xffy\\xf0U\\x9a\\xb3\\xc8\\xb0r\\xd36\\x84Rb\\xcf4\\x19Ba.V\tc\\x08\\x16\\xd2\\x15\\x8b\\xc6r\\xc7\\xa0\\xe2X\\x9a`\\x91\\xf2\\x91\\x1cK\\x7f\\xf3\\xf6auYy\\xac\\xc8\\xc8\\x9e\\xc4!\\x13g\\x19\\xf1]\\xe1\\xd6\\xae\\x13-\\x1f\\xcd_pS@\\x1f\\x95\\xd4\\x07\\xda\\x9eq\\x03\\xe3i\\x03\\xd6\\xce4\\x9b1\\x01}\\\\\\x1c<\\xd4b\\xe1\\xf1|\\xd5\\x9b/`\\x0c\\xdbP\\xbc\\x80\\xf1\\xfa\\xba\\x07\\xf1\\xc5\\xf8\\x83Z\\xf3b\\xac\\x89\\xb5(\\xe3,\\xe2\\xa9\\xf2\\x8e\\x81\\xf9\\xe1\\x1e\\xd7\\xc9\\x00\\xc7a\\x1c\\x0b.H|\\xb8`u\\xcb`\\x12\\\\OK\\xcb\\xed\\xa8\\xd7a\\x91tWW=G9\\xc9\\x8b}4\\x10Q0I\\xc0#v\\x07\\x0cP\\xc4@,\\xdf!]\\x1a\\x16\\x9ehM\\xf6\\x8aqY\\xf9NHH\\xda\\xe3)6\\x8eQR,V\\x18\\x8b\\xc0s\\xeb\\x8b\\xfa\\x0f\\xa0M\\xbb%\\x8a0z\\xfa\\x12\\xf2\\xc4\\xdf\\xc0\\x17\\xfb\\xb1\\x9f\\x15\\x84\\x87.FK{1Z\\xceC\\xa5L\\xdc\\xc5C'\\x84\\xc7y2F\\xae\\x03\\xc1B\\xd3\\x80$\\xc5\\xc2l\\x99f\\x9d\\xa3\\x9c\\x99\\xee\\x8a?\\\\\\x0f\\x86x\\xd6[t\\x99\\xaa\\x91\\xa7\\xba\\x0e?\\x91\\xb1\\xf99u\\xb0\\x1d+_\\x81\\xbaE\\x8d\\xcaH\\xa5\\xbb\\xe0D\t\\xe6\\x03\\xc2\\xeb\\xd5\\x1d\\xf7\\x120HT\\xad6\\xedQK\\xdcM@A3\\xb3\\xf2.\\xa8h\\xd62# \\xdb\\x1c-\\x96\\xf9\\xbd\\xb8R\\xb1faQP\\xe3eH\\xe4\\xea~`\\xacg\\xba\\xddi\\\\C1n~4]\\x1c\\x84y(7\\xc0\\x08\\xdd\\xdd\\xd7\\\\\\xe7uY\\x10%\\\"\\x06m\\xc7\\xc1Q\\xee:\\x87\\x98H\\xd2.\\x88\\xd4\\xf6[\\xb1\\xc5\\x9a\\xa8\\xc4jAcu\\x87\\xa29K\\xcf>\\x89\\x8eV\\xa7\\xa1\\xd6\\xd4uI\\xc82\\xbf\\xd7\\x10b\\xfd\\x04\\xb2\\xb5iB\\xd0B\\xbe\\xef\\x81\\xa8e\\x98e\\xb74\\x9dH\\xdcs\\xa9\\x96!\\xa3*\\x19\\xca\\xdc\\x83\\xff5\\xf8\\xec^a\\x8b(y\\x83\\xad\\x0dm\\xfe\\xa5\\x13rE\\x8bdL\\xce\\xa3\\x05\\xa1E>\\x84g\\xdfX\\xa0\\x95\\xd0sV\\xb1\\xf4/\\x98\\xed\\xd6\\xeb\\xcf*\\x81J\\x8bg/\\x01\\x94\\x18\\xee\\xae\\xf7\\x162\\xa5y\\xf4\\xb1V\\x0f\\x1eW\\x03\\xa1\\xb1/\\xe6\\xe8\\xfbz\\xe1oUy)\\x0d\\xb2<\\xcc\\x85\\x10`\\x14\\xce\\x0es\\xa2\\x13\\xce,\\x0eWi\\x90\\x91\\xfc\\x8c5]]\\xed\\xb7F\\x05\\x10\\x1d\\xb4\\xb3H\\xb94\\xc4%\\xb5\\x8c\\xe4\\\\\\x1c3V2\\xf9\\xf7+\\xd83\\x0c\\x9a;L\\xb1\\x81\\xf7\\x93G5\\xe3\\xb5\\xde\\x0fXe\\xbc\\xf2R\\x9e\\x08g\\xf2\\x97\\x8c7\\x9cL\\x9a\\x83]e\\xac}\\x02b\\x08*\\x83\\x1d\\xb8t%\\xc5u\tE\\x02\\x03\\x02\\x9c;\\xe59\\xb6\\xb0:\\x8fF\\xc0\\xea*\\x88\\x06\\x0d=\\xb0\\xd0o\\xbc\\x7f\\xc1\\x00q\\xa1\\x1b/\\xce\\x8a\\x0fW3\\xa3m\\xa4\\xf6\\xf2\\xaf\\xd1\\x96J\\xeb\\xeb\\xfb(\\x8eO\\xc9\\x98D7xZ\\x96\\xf5P\\xa0\\x8cs%IomGhQ\\xca\\xae\\xc7\\xc4?\\xfeNN\\xa7M!P\\xc9Q?\\x15\\x9d\\xfc\\xec\\x0bYP\\xed:b\\x1f]\\x92\\x9f\\x1e\\xf6\\xd3%)\\xc2v\\xabv\\x11\\xc2u\\xa9\\x93!Bu\\xa9\\x93\\x05B\\x99\\xcc\\xa7!\\xde\\x08\\x16Z_\\xa8j}v\\x03j\\x11D\\xc9\\x94\\xa4\\\\|p\\xa3 \\xca\\xc9\\\"\\xebv4\\xab\\x9f\\xa8\\xf4\\xf09{\\xc5\\xb3\\xfbw\\xf8\\x8fe\\xa8\\xdbZ\\xc4+hS\\xb4Y\\x13^vi\\xbbs\\xe9\\xe9\\xf6\\x89\\xda\\xee\\xbckcW\\xa4\\xeapu\\xa9\\x1a*\\xc9Z\\xa9\\x1d\\xf6\\xa8%\\xb3\\xefv\\xdf\\xdb\\x17k\\xceB\\xcb\\xd0\\xd6\\x9e\\x0d\\xd1\\xdfk\\xd05\\xbd\\x98\\xfe\\xcdzq\\xc7<\\n\\x87+\\xee\\xf6\\xb1\\xc6\\xa3\\xa1L\\x02\\xcc\\xae\\xc8\\xfe\\x16\\x7f\\xba\\x1el\\xc3Vu/e\\x12,\\xc2\\xa5\\\"\\x08\\xf9@\\xbb\\x08/\\x12BsZ7\\xcbg\\x1d\\x17\\xcb\\xe4\\xec\\xdb\\x9a\\x07\\xf1\\x89%n\\x08<\\xadkO\\xc9E>\\xa5\\x04\\x83\\xd7x\\xf8\\xad\\x17k%[\\xb8U\\xc0\\x93uA\\xb5\\xf2\\xce\\xc7\\xc5\\xf2b\\xf3\\x03\\xdf\\xf1`\\x1d\\xa8\\xe5nr\\xe7\\xbd\\xac\\x8e\\xb9\\xb4\\x8f\\x16\\x19Q\\x07Q\\xaa\\xbe_\\x1f3\\x9a\\x0c\\xf8v>`\\xfa\\xf5\\x80m\\x97V\\x87@S\\xf7\\xac\\xeef\\xd0}\\xb2\\x02\\xad\\xd3\\x95\\x0e#\\x95\\x94\\xae\\xfb\\xae\\xc0~\\x82\\xbd|J\\x92Q\\xd5'\\xbe\\x14\\xec\\x94c\\xef\\x8e<\\xcf\\x89,\\xcb\\xdf\\x8cc\\xaby\t\\x1aS{\\x95'p\\x95'\\x83l\\x01\\xdaY\\x1ep}\\xa4c\\xc3\\xa5\\xc9~\\x1c\\x8d\\xaf{\\x08/\\xeaSb\\xaf\\xd2\\xc3\\xdc.\\xc4\\xd9\\x88\\xce\\x81\\x018&OT/\\xc8)?\\xfay,\\xeaVB[8\\x99\\x80\\x03\\xeb\\xd5\\xe6\\xd5`|\\xdc\\x8d\\xd0\\xf8\\xad\\x12\\xa1\\xc8\\x11\\x84\\xde\\xa6\\x1f\\x18\\x1b\\xf7\\xded\\x02\\xec\\xb3\\xda\\xe1wZZ\\xde\\x16)Y\\xc5\\xdaR\\xb9\\x9d\\xf5\\xb2\\xb7\\xfc\\xef\\xc0o\\xe5\\x03\\xbfU\\xb5\\xd4\\xff\\x1d\\x94\\xe9\\x9f\\xbf\\xe8\\xa0\\xacKg\\xa1\\xbd\\x8e\\xd3\\xea\\x07e\\x86\\xd3\\x05<\\xf9\\x12\\xfaM\\xdaO\\xbf\t\\xfb\\x1cfu\\x88\\x11a\\xcf\\x8d0]]\\xac\\x17\\\"\\xbdR3\\xedg,\\x17A\\x04\\x12\\xdbm\\xa3\\xba\\xa0\\xce]\\xe3\\xa6)]\\xfct\\xe6\\xb9\\x14\\xb5,\\xbc\\xff\\xe9\\xe4)O\\xb02\\x0d\\xe3\\xcc\\x9c\\xf0\\x05\\xf4\\xd2|\\xd9\\x8e\\xed\\xc0kU\\xa1\\xbe\\xdb\\xa4\\xf0i&\\xf2\\xd2\\x83\\xf8\\xd1{v\\xef=Y\\xae\\xd0O\\xb6\\x8f[,\\xe3l\\xe1d$\\xc799\\xa7g\\xe1b\\x19\\xf7\\xb2\\x91W\\xde].\\xfb\\xf2\\x8cm\\x0e\\xbc6\\xc7\\x93\\xe7\\x92\\x9a\\xbb\\x84\\xfen0\\xd1\\xda\\xe5\\x8d\\\"#i\\xf9L\\x18Z\\x9d\\x87\\xc9$&'\\xab\\xb4}S\\xe6;\\xee\\xf6\\xddP\\x06\\xaf\\xf3\\x01\\xf4\\x8d\\xde\\xc2\\xf0\\x19\\x19\\xc0\\xe7\\xf4\\xbc\\\\\\xab\\x98@\\xc3\\xce\\xa7\\xcea\\xf9\\xb2M2\\xba;\\xdau\\x1c|!C\\xde\\x7f1'\\xcb]\\xe7\\x9c\\xdc\\xe5{)\t\\x1f\\xc9Mj\\x06\\x06\\x13\\x10\\xed\\xc9r\\x18\\xa9\\xcd\\x15\\x03\\x82\\xb1\\x0e{\\x04Ob\\xec&\\x8b\\xfe\\xb0\\x86\\xe75\\xa3^2,\\xd6\\x02\\xb2\\xe1\\x8f4J\\\\\\xc6>\\xbc~\\x9c\\xcb\\xa2\\xa36\\xd8D}\\x03\\xd0\\xd6z\\x94;_\\x97\\x88\\x8f\\xc0\\x8f\\xba\\xf1\\\"\\x0fC\\xf1\\xa2\\xc3?\\xbd\\xe0@\\x9cH\\xa3\\xd3D\\x05\\x96\\xd6\\x0bx\\x08\\xc9Z\\x1c\\x81\\xc7w\\xe1\\xb3^\\xbaiv\\xd3t7F|4\\xcc\\xb2h\\x960Ff\\x17\\xd3kI\\x9f\\xb7x~\\xe7\\xa6\\xba\\\"\\xf2<\\xdb\\xf7\\xf9JS1\\xa5\\x81.?\\x85\\x81\\x13\\x93\\x9ey\\xe11\\x14\\x1cZ\\xaa0\\xd6\\xf4\\x0e$\\x17\\xa9.\\xd0D\\xeb\\x8dd\\xc8u\\x12\\xacS<\\xedb\\xcd\\xa5\\xe8A\\xac'\\xce\\xb5\\x0c\\xff\\x9b/ \\x81m5\\xd1\\xbf\\x19{\\xa0\\xcc\\\\~\\x91\\x180\\x07H\\xa8L\\xba#ix\\x85\\x02E\\xed\\xa7H>\\x962\\x85m\\x1a\\xcd\\n\t\\xb4\\xb6Y&\\xedc(\\xe7q.\\xd3\\xe06\\x8d\\xf2\\x12\\xa2\\xcc>\\xd5\\xa4S\\xc2\\x1a\\xbc&\\xf7\\x0c\\xff\\xfa\\x05\\xdf\\x7f\\x12Tk,\\x9fP\\xab\\xc2\\xc8\\x83\\x80\\xba\\ni\\xf0\\xcca\\xa9x\\xcf\\xa3\\x03\\xb6\\xbd\\x8a\\x1b\\xdbM\\xf3b9Sl\\n\\x1e\\x01\\xa3^\\x10\\x8a\\x82\\xad\\xcdo\\xbe\\xd5\\x07\\xc3(\\xbe\\xc8\\xdd'\\xb7\\xbd\\xcc{I\\xc5\\xda\\x95\\xbd\\xd6\\xcfY\\x82\\xc7z\\xaaE\\xc0\\xcaM\\xe1\\xd0\\xf6\\xc3$\\xa19\\xb0u\t!\\xe7}\\x10f\\xb5Pl\\xed9\\xe9\\x10\\xc8\\x93\\xbe^\\x1d\\xd8Q\\xa2\\xf6\\xec\\x94LIJ\\x92q\\x19\\\"n\\x1ee0\\x0f\\xb3\\xe4\\xeb\\x1c\\xae\\x08I \\xe2\\xd7X\\xa2\\x8cL`\\x00Y\\xb1$\\xa9\\xeb\\xd5 \\xd8P\\xc8\\xa4C|X\\xc3\\xe3\\x06%\\xa1d-\\x88\\x8f6\\x9c].\\xa8@C\\xa3\\x06}C,\\xc2\\x19a\\xcc\\x8f\\x13\\xfd\\xc9\\xb4\\xe5\\x96c\\xd1<\\x92\\xd5\\x1c\\xb2I\\xb0$i\\x16e\\xb9)\\xac\\x82d\\nI\\xf7\\xe9^\\xb2\\xd2\\xf1\\xb5\\xaa\\x0f\\xe87\\x96\\x9e\\xb9WX\\x0fi\\xbf\\x1e\\xb2\\xa7t\\x83{\\xc9\\xaapA\\xbc\\xf4f\\xc3pU\t\\xcd\\xa3)^s\\x1c\\x96\\xdb7\\xbc\\xac*>yR\\x01\\xa5xD\\xd4#_\\x03\\x1b\\xec\\x10\\x04\\xb8\\x18|W-\\xa8\\xf0e\\xc9H\\x07z\\xf5\\xbc*2\\x99\\x9c\\xdbD\\x89\\x89\\x96\\x92\\x9f\\xc9\\xfd\\x01\\xbd\\xb5\\x1bP\\xe5S\\x91\\x87\\xd4!Em\\xfd\\x048\\xa3$\\xe7)a\\x98x\\x7fM\\xee92\\xa74\\x1d\\x93c\\x89v_\\xe4\\x9a2\\x18\\x08Y\\x17_\\xc5E\\xfa\\xc8\\xfe\\xb1\\xaa&\\xfa]\\xb1\\x1f\\\\C@\\xf8\\x88\\xf4\\xeb\\x0f\\x8f\\xa8\\xb9\\x0d\\x9b^IC]\\xc2\\x87|\\xe4\\x02/b\\x83\\x17\\xa3A\\xab\\x96\\x01~E\\xc2\\x9e\\xda\\x87\\x93`B\\xf9x-\\x95\\xedK/\\x17\\xa6\\x14\\xc5\\xf6\\xd2\\x8d\\x06\\xf9$A\\x94\t^\\xc7\\xef\\xe80\\x01\\xa6\\xea\\x94\\xd5\\xcf\\x8c\\xed\\x83\\xe6e\\xae\\xc3\\xee#\\xba\\xb3\\xe9\\xeb\\xe7_>H\\x07\\xd3\\xb8\\xc8\\xe6}\\xa7\\x11\\xaa\\xa9\\xccyM[\\xda\t$3\\xc6\\x90\\xe3U\\xda\\xd7\\xa25\\x17\\x0d\\xd9>\\xa7',=\\xf5\\xcbI\\xea\\xd3\\xb1\\xa4ab\\x12g\\x0c\\\">\\xadr\\xb9V\\xff)e]\\xf6\\x9aO\\xcc/P\\xc3\\x81\\x0dc%\\x86q/\\x92H2\\x93\\x96\\x96%v\\x9c@\\x82\\x86\\xd9\\x98\\xbf\\x90+<\\x8a\\\"ORV\\x04\\x06Q,\\x7f\\x7f)\\x06\\xf4\\xf8\\xb4\\x99\\xbd\\x83\\xef\\xe0T\\xf7r\\x11\\x94nsL\\x1ek3FlG\\xb7\\xaf\\xd4 \\xb5\\xe6\\xc3N\\x11\\xd4\\x18\\xb9\\x18Y\\x05\\xfa\\x9e\\xa0\\x83\\x9fAt>c\\xc2'\\x90\\xbbeJ\\xb2\\x8cI\\xed\\x8b\\\"\\xcb\\x81D\\xf9\\x9c\\xa4pEx\\x034Udi\\x1f\\x83\\x0e;\\xb0^~HC\\x99\\xa4R\\x91*\\xdd\\x9fs'W\\xe4mTt(=j\\xc74\\xc9\\xf2\\xb4\\x18\\xe74\\xd5\\xa9-\\xf2\\x913`\\xa6\\xf7J#mG\\x1cP\\x1f\\xa9\\x7f\\xda\\xdd\\xa0T]vhJ\\xc6\\xa4\\xa1%\\xc9\\xbd]\\x81\\x8d\\xac&Q\\xc3.h\\xdf\\x8by\\x1f\\xa2*'\\xc5r6\\x9du\\xd2a\\xbagy*\\xd0\\xb0^\\xf9@\\xfb\\x19\\x98\\xdfGq\\xfc\\xa9\\x16f\\xb4\\xca\\xd5\\xc5\\x10W107\\xee_t\\xd9K,\\xd6\\xe4\\xbf\\xc4%Vn\\xa4\\x9d[h\\\".\\xe3\\xd5F\\xa3\\xdf>q\\xf4\\xb5\\xc5\\xff\\xe7\\x9fe\\xc6B\\\\\\x9a\\x95\\xb3\\xad\\xe2\\x80\\xdb(\\xe9\\xad\\xc7\\x98\\xee4\\xfb\\x90T\\x9e\\xbe\\xda\\xc9(?\\xd6\\x98\\xbe\\xa4\\xdb\\x80\\xdas\\x9a\\xde%\\x8b\\xcfA^\\\\\\xba\\x91\\xbd5I,\\xbd\\xbb\\xf87\\x9cK\\x88\\\\_v\\xfar\\x95\\xc8\\n%E\\x02\\xa9\\xd8\\xb5\\xdf&A\\xf6J\\x91M^\\xdd\\xa3zcs\\x9c\\xe1\\xd1\\x16\\xaa*'\\xa8\\x8fX\\xcewE\\xc8\\x07\\xa1U\\x99\\x01\\x0b\\x01ho.C\\xa8(Y\\x16\\xf9)\\x99\\x9a\\xe1\\xe2\\xbe\\xe6\\x18\\xf9H\\x1b\\xce\\x7f\\xfa$\\x8d*\\xad\\xbf\\xc4\\x83\\xbc\\x0cK\\x9ezL\\xdc\\xd9T\\xac v\\x930)M\\xc2\t7\tc\\xd6B\\xfb\\xe7\\xa5\\x0ee\\x04z@\\xbf\\x17GP\\x8c\\xe3\\x83#\\x89\\xc2)\\x8d\\xa8>8%Q`\\xb2\\xe8:Q\\xe0\\xc1}\\x8b(\\x1ao\\xf9\\xbc\\xf3\\xf6\\xc5\\xdc\\xf2\\x1f\\xf2\\xb5\\x9c#\\xeb\\xe9\\xff\\xb8#\\x86%\\xbay\\xc3\\xaee\\xee\\xca\\xaf\\x97\\x8e\\x00\\xe2\\xb7~_\\x83!\\x84}\\xdb3\\xc4\\x0b\\x87\\xa1\\x91H\\x18]L;\\x86\\xc4\\xcaiG\\x17\\x18\\x0e\\xcb\\xf1\\xb0\\x1f\\xc6\\x9e\\x14\\xbdZ*\\x1e5\\x12t\\x9d\\xb7\\xb6\\x9f\\x92\\xe9\\x10\\xb2\\x95\\x1b\\x17D\\x1c\\x19N*s_H\\xf9Vo\\xd6\\x95/QJ\\x86\\xd7\\xe0\\x9c\\xfa\\xde\\xfb0\\xf6a\\xea\\xc3\\xb2\\x9b\\x995O\\x03\\xdb\\xc7\\x7f\\xf5A\\x94\\x89\\x1b\\xf9\\x12i0\\x12q\\xedVs\\x9fV\\xa1L]Z\\x149\\xd7\\xba21t]\\x91\\xf9\\x1el\\xeb\\xee\\xeb\\xd6f\\x03\\xa2\\xbdI\\xb4E\\xe1\\xd6\\x96\\xd1\\x06\\x91;\\x85\\xec`\\x85K\\xfc\\xab\\xe3\\xcc\\xd2rWP\\xee\\xe9\\xce\\xe8nI\\xc69\\x99\\xa8&\\xfe6\\xa1\\xa4\\xb0\\x03\\xc7\\xe1q\\xbb\\x801=\\xe7Bx\\xf8\\x9c\\xdd/\\xaeh\\xfcAS?\\x82\\x1d\\xd8\\xf8\\xbf\\xbfg\\xeb\\x7f\\xfe\\x9e\\xad\\x7f\\xb51kC\\x84\\x08q1X\\xff\\xb0yw\\xb19\\xf8>\\x1cL?\\xac\\x7f\\xb5\\xa1qs*\\x10r\\xf3\\xeabs\\xcb\\x00\\x91q\\x08z\\xb19\\xf8\\xd6\\x00\\xc2\\x98 \\xe6\\xd6?\\xd4\\xc9\\x0eloUR\\xb3\\xd4\\xf4@\\xa1s\\x9d\\x08\\xa7\\xa6\\x1d\\xa9\\x93\\xe1\\xebvSS}S\\x19\\x89\\xa7\\xac\\x86\\xfa\\xbf\\xbeMV\\xd2n\\x96m@c<\\xfbe\\xff\\xbc\\x96\\xf3\\xecH\\xeb\\xd3<\\xca\\x1cO\\x17vyR)\\x91\\x15\\x0b\\x96ir\\xda\\xe0s\\xd8\\x81\\xa30\\x9f\\x07\\x8b\\xf0N#\\xd6\\x95\\xa5\\x91F|\\xe9w\\xdb\\x93wx\\x19\\x1c\\xb0m'\\xa1\\xb7:\\xf9S9\\xaf\\x03\\xf5\\\\l\\xa6\\xd7?\\xa4\\xee!\\x13\\xdd\\x18\\x0fT\\xd6\\xd6xV\\x8c\\xda\\x04i\\xb2\\xee4\\xbdS\\xf5\\xbd\\xd1DO\\x04iV\\xd0\\xe4K\\xb7\\xa5iau\\xbau,Q\\xdf\\xc9p\\xdd\\xd5\\x1a\\xefv\\x0bh4\\\"P\\xa1!U\\x03\\x1b`\\xad>y\\x02\\x13!\\xb0y\\xa0\\xbd\\xb4\\xf2\\xa0\\xa6\t\\xd2\\xd8\\xe61\\x97\\x8a%\\xa3\\xd4M\\x19T\\xa86!2\\xa3\\x14\\xee\\xde\\xa8\\xf2\\x97\\x7f\\xa3\\x93\\xaa\\xc9\\x0b\\x0dv`\\xc66\\xc3]\\xc8a\\x9d\\xc7\\x14\\xeb:c\\x86f\\x06\\xa55\\xcd\\x14V\t\\xf3\t\\x0ca]\\xf3y\\\"\\\\nyB\\xbf\\x08\\xf3\\xf9\\x99\\x8fK\\x0b\\x91\\x0e\\xdar\\x16\\xc8f8\\x93`\\xb0\\x0b\\xb1+\\xf2\\x90\\xbaOQC\\xdd\\x85\\xa70\\x84\\xef\\x186B\\x05,\\xc5\\xfe5\\xe8Y\\xfd\\xa5z\\xc64\\x98\\x8b\\xf6P\\x1f\\x8f\\xe8|\\x880\\x9bL\\xe1C\\x86\\xc2\t\\xfa\\xbb\\xeb\\x05\\x8e)7\\xd9i\\xcb\\x96\\x96\\xb2\t\\xda\\xec\\xf5$\\xa4O8\\xa67\\xd4%^c;\\x01u\\x11_u\\xfb;Z\\xae/1>\\x19Y%;\\xc60\\x95\\xf4m<\\xd0\\x8b/T<n9O\\x19\\x1b\\xd7P\\xa5\\xb9\\xd3\\x9a\\xc8\\x9d\\xf2\\x91\\x9d&0\\x80\\xd8\\xda3%\\xe0^\\xcc\\x88+a*[\\xce\\xff\\xda\\xe6\\xba\\xdb\\x12=!`\\x00cV\\xd6V\\x02l}\\xbc\\xedT\\xfa\\x17\\xb6\\xf0\\xff\\x97\\xb5|c\\xc6\\x1ce\\x8cj3\\x92\\x0b\\xc1\\xcc\\xbd\\xf5{\\xee\\x82\\xa5/+\\x0c\\xc0E\\\\u_N]\\xc2.\\xdc\\xb8\\x89\\x0f\\xa1\\xac4\\xf6\\xd0\\x82o\\xdc0W\\x9b\\xd5Q\\xe7\\xce\\x9f)\\x844\\x01\\xcc\\x8e\\xb5\\x0bW\\xfc\\x1c\\xc1mRZ\\xb1\\xda\\xd7\\xef\\xfa\\xcc\\x97y%$<\\x0e\\x83eF\\xa9\\xeaR\\xc6srq\\x17\\x08&\\x9b\\x99\\\"\\xa5\\xa8\\x0d(\\x04\\x9bym+\\x7f\\x97YCT\\x18\\xf3\\xaf\\xb5\t'\\xf7|\\x98V\\xf8\\xd4+\\x8a\\x803k#\\x16q/Z\\x99\\xb1\\xf6g\\xae\\\\S\\x80\\xfd\\x9e\\x0b6C1F\\xd7\\xb8\\xe7kzn\\xf4\\xe2\\xca1rt\\x8e117}\\x98\\xb9\\xc2\\n\\x83{\\xf6Z\\x1a\\xc4\\x04s3\\xf0,\\xd8.\\xdb\\xad\\x9dEx\\xf7>\\x8cr\\xee~\\xc68\\xcc\\xdc\\xbdw\\xd3@\\xbc\\x96-\\xa1\\xe1=\\xf4q\\x13w\\xf24\\x8cb\\xe4\\xa5\\xe8\\xb2\\xb6\\x8bM\\xcb\\x970\\x84\t&\\xf0\\xeb\\x7f4\\xaaX\\x80\\x11\\x11\\x98\\x14Lb!\\x93\\xb7\\xaf\\xf8\\xf5\\xa3X\\xac\\x8aj\\xe9\\xb4\\xb1\\xc3\\xbe\\xde\\xfb\\xdcW7\\x19\\xbbP\\xc0\\x10F\\xee\\xc25$\\xf8\\xaa\\xbdT\\xdc\\xc3\\xa4+\\x90\\x0f\\x89\\xfblKT\\xee\\xd0\\xf2\\xa4sa\\xbd{N\\xb0\\x11\\xc6q\\xf01s\\x86\\xf0\\xfc\\xf9s\\xbfUX\\xe4\\xf3\\x8d\\x10\\x1b\\xcd8\\xd4\\xd3gO\\xf5Ph\\xc4\\xe30\\xcf\\xbe\\x7f\\xa6\\x87I\\xc9\\xa4\\x18\\x934\\x93`\\x86\\x0ff2\\xf1\\x90\\x84\\xfb\\xc6\\x00\\xb7$\\xe3\\xc1m\\x1a.\\x07\\xb5.>\\xfb\\xfe\\x9f-x~\\x88\\x945\\xc7\\xd2\\xee\\x80\\x04\\x9c\\x93xY\\xf6\\xf4\\xe9\\xb3\\xf6\\x80$`m\\xdc\\xdf\\x1b\\xc1\\xeaC\\x7f\\xbe\\xd9\\xc6\\xa2\\x84l\\x8c\\xfe\\xf9\\xe6\\x96\\x19\\x94!\\xa06\\xa4\\xe7M\\x13\\x83\\x13lL\\x08Y\\x0e\\xe2(\\xb9\\x8e\\x92Y}\\\\\\xcf7\\xdb\\x98\\xadA+\\x83{\\xbe\\xd9\\xc6A\\x0d6\\x0e\\xefi\\x91K\\xe06fk\\xc0e\\xbe\\xa5A\\x1e\\xcep\\x0e\\x97$\\x0d>fwX\\xf9\\xdb\\xbe\\x95\\x9b\\x15\\xdb\\x13?\\xa1\\xb7IL\\xc3\\xc9\\xa0Hc9K\\xdf\\xb5\\xa0H\\x9a\\xd6Ic\\xebi\\xbb\\x0f\\x0c\\x08\\xef#\\x0c\\xf24L\\xb2)M\\x17$\\xcd6\\xe6\\x94^\\x8b\\x96\\x9f\\xb6\\xa7\\xcaP\\xa9\\xf6#\\xa1\\xf9\\x80N\\x07\\xa8d\\x8b\\x86\\xda\\xe4\\xd1\\xa7\\xa1e\\x98\\x86\\x0b\\x92\\x93t@\\x13B\\xa7\\xb2\\xb1\\xf6\\xc4\\xf5i\\x8ci2\\xcb\\x81t\\x07\\x95m\\xb5\\xe7\\x95\\xb5\\xa5.\\x82\\xad\\xf6\\\"` \\x8d\\xb5\\xff\\xb4M\\xa7\\x0c\\xaa\\xb9\\xf4\\x9f\\xb6\t\\x94\\xc7N\\xa8\\x93f{F\\x05\\x14]f<+\\x95\\x84lw\\x8e\\xd3mcg\\xd0,#\\x01\\xa7\\x0e\\xf5i\\x9b\\xde\\x04Ts\\xb4mj\\x12\\x80\\xad\\x01\\xb7\\x87\\x12\\xd3\\xc66\\xf3]\\x1b)4\\xcc\\x9e57\\xb7v\\xe78T\\x91\\xcf\\x07\\xe4.'I\\xc6\\xa07p\\x03mn:\\x1a\\x9a\\xc1\\xca\\xe5\\xf1b\\xb6\\xc1x\\xd0U8\\xbe\\xce\\xe4\\xea\\xd3`\\xa3Yg\\x9e\\xe7\\xcb\\x01\\xeb\\x80\\xac\\xa3\\xe1&\\xcd:\\xeaDk\\xc8\\xa1\t^m\\x0el\\xbb(\\xfb\\xd6F\\xab\\xb9b\\xc6S\\xac\\x95}\\xec\\xc6EJ\\xfe_A\\xb2|pE'\\xf7\\x032\\x89rZ\\xeeI\\xcf\\xda{\\x82\\xadv\\xd9\\xe16\\xc54\\xab\\x89nV\\xd9\\x8e\\xcaO\\xb6\\x89\\xd7P\\xb7\\xfcZ{Y`\\x8d\\x1a\\xb7xf@~m\\x82\\x0c\\xa3m\\xb0\\xbf\\xe7\\x06\\x946\\xc9\\xf0\\xb9\\x81<\\x90\\xf1)4\\xdc\\\"\\xdf\\xf66\\xa5\\xad\\xa7\\xa7}\\xc3G\\x11X\\xc1!.\\xa4('\\x8b\\x12\\xef\\x86\\x05\\xd0\\xac\\xa8\\\"L#\\x82h\\xeb\\xa8Q\\x1c\\xb8\\x8dI\\xa2\\xc8\\x80\\xf1f\\x03\\x8b0\\xbdf\\xccP~\\xd70\\x99\\xadjtBb9\\xc0\\xe7\\x06\\xc2jV\\xa2I\\x1c%d\\x80W\\xdb\\xc2\\x9c\\xa6\\x83\\xabp2#\\xf2\\xcb\\x06Zk6R2\\xb3j!\\x1a\\xd6D\\xb3\\xe6\\x0dO\\x019\\xc8\\xf2p\\xb1,+kv\\x80\\x04k\\xc5$'\\xb59\\xd9j\\x0f3\\xc3\\xdb\\x98\\xd9\\xc6T\\xe0o\\xeb\\xfb6\\x91H\\x98\\xdaV\\xdd\\x9e^F\\x83Mn\\xa3i\\x8cA\\xa9-ivJ\\x84ip\\x1a\\xcdf\\x85`\\x0d\\\"\\x7f\\xaa\\x91*\\x11N#N?o\\x93\\xb5\\xccj\\xf7\\xb11\\xda6d\\x91Gq]FnO\\xe2MDnk0\\xcf\\x0d0)\\xa5\\xf9 J>\\x92q^v\\xee\\xbb\\x12R\\x9b\\xae\\x86\\x1a/\\xec$nT3\\xb6<hjG\\xed\\xda\\xd2\\xd6\\x9c^\\x90\\xc6--~\\x83&\\x87u\\xd8\\xaa]\\x9c\\xa9_\\x9a\\x99F\\xc9\\x04\\x16\\xfc\\x86\\xd0\\xd7\\x0e\\xac\\x03\\x81up\\xbe\\x0e\\x9a\\x86^\\xa9k+\\xfd\\x93\\x7f\\xd1\\xe0\\x9a\\xdc[\\xf3'\\x8b\\xca\\xe2\\x08\\x87A\\xbb\\xca\\xe5\\xad\\x07\\x1fh\\x90\\x92\\x8c\\xc67\\x84)\\xba\\xf5\\x8b\\x8e\\x94\\x95FL\\x05\\xdf\\xda\\xfc\\x86c\\xf7\\xe1\\x83\\xf7\\x8f\\x07\\xef\\xc5?66\\xfe\\x0fd\\xb4H\\xc7\\xe4(\\\\.\\xa3d\\xf6\\xee\\xf4\\xcdN\\x95\\xe1ppU$\\x93\\x98\\xad\\xf3`\\x11.\\xff\\x7f\\x00\\x00\\x00\\xff\\xffPK\\x07\\x08J\\xbc\\x1fy@9\\x05\\x00\\xf7\\x0c\\x1b\\x00PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x1f\\x00\t\\x00swagger-ui-standalone-preset.jsUT\\x05\\x00\\x01\\x80Cm8\\xec\\xbdys\\xdc6\\x9a0\\xfe\\xff|\\x8aG|w\\x152M\\xd1\\xdd\\xad\\xc3:,k\\x1d\\xc7\\x9e\\xf5\\xbb\\xf1Q\\x963\\xf3\\x9b\\xb7\\xa3UQl\\xb4\\x9a1\\x9b\\xec\\xe1!Y\\x13i?\\xfb\\xaf\\xf0\\x00 \\x01\\x10 \\xd9\\xb2\\xb33\\xbb5\\xacT\\xac\\x06A\\xdcx\\xeec\\x0b\\x16U\\x1a\\x95q\\x96\\xba\\xa5\\x0f\\xc4\\x83\\xdf\\xfe\\x00\\x00\\xe0dW\\xbf\\x92\\xa8t\\xe0\\xf4\\x14\\xca\\xbb5\\xc9\\x16@\\xbe\\xac\\xb3\\xbc,`{\\xdb\\xf4v\\x95\\xcd\\xab\\x84\\xc0\\x19\\xff#\\x10\\xb5O\\x81\\xb8\\x1e\\x1c\\x83#\\xba\\x91?\\x9a\\x93E\\x9c\\x12\\xda\\\"\\xfb+\\x08Ws8\\xe3?\\xdc\\xd9\\x05\\x0e\\xe8\\xb8k0g\\xe2\\xaf\\xe0\\xfc6\\xbc\\xbe&\\xf9\\xcfo\\xce\\xcb0\\x9d\\x87I\\x96\\x92\\x0f9)HY\\x0f\\xa1\\xec\\xab\\xf3\\x87\\x07\\xb7\\\\\\xc6\\x85\\xdf,\\x89X\\x8e\\x9c\\x94U\\x9eJK%^\\xd0\\xe7&\\xcc\\x81\\xc0)\\xfc\\xf6p\\xf2\\x87\\xbaPT\\x85\\xd4\\xcd\\xe5\\xca\\xf4\\x89\\x17\\xe0\\x92Y~\\xe1\\x89v\\xe9\\x0f\\xb1b'JU\\xdavLG7\\xcb/h\\x17\\xcaKl\\xeb\\x18r\\xbfU\\x9a\\x1c\\xc3\\xd6\\xa4]\\xcc\\xbb8\\x86\\xdf\\x1e\\x94w\\x0fj\\xa7|T%\\x1dU\\x14&\\x89\\x1b\\x8b\\xc1\\xf9\\x10\\xfb \\xfdJ=\\xfa3\\x81S\\xd8\\x1aK/\\xea\\xd6\\x9anx\\x9bi\\xb0\\x82S(}H\\x83\\x88N\\x8b\\xfe1\\x87S\\xf5\\x10\\xfa\\xd0Z\\xb24\\xc8\\xf8\\xf9\\xbc\\xbf\\x87\\xf7x\\x1c\\x02vL>\\xe4\\xd9\\x9a\\xe4\\xe5\\x1d\\xff\\xb2\\xbdBQ\\x96.\\xe2\\xeb*\\x0f\\xaf\\x12bY\\x96\\xb4Z\\x11\\xf1~\\xdc~\\x7fM\\xcac\\xc8\\xd5\\x15\\xf3\\x9a9\\xd29\\xa4\\xca\\x1c\\xf4\\xd1\\x8b\\x13R\\xd2\\xa3^\\x06\\x97\\x97\\xa4x+\\xeeK\\xeb\\xac\\xc9\\x8f\\xd8\t:\\xd7\\xb0JJu\\x0cp<\\xec\\xeb\\x01{\\x9d\\x06s\\x97\\xf8\\xe0\\x84\\x0e]d\\x1f\\x88:\\xbdL\\xdf\\\"\\xbd;\\xde\\x0c\\xdf\\x99u\\x9e\\x95\\x19\\xbd\\xa9\\xc12,\\xde\\xdf\\xa6b\\x8f\\xd8i\\xc2\\xef\\xd5\\xf6\\xd7p\\n\\xce\\x93y\\\\\\x94\\x8e\\x0f\\xa9\\x9b\\x06\\x14pL\\xc7\\x07\\xac\\xda\\x83;\\xd3\\xceG*\\xf7\\xefT\\x05\\x81\\xa2\\xcc\\xe3\\xa8tN\\x94[\\x99\\xc3)\\xa4\\xee\\xfe\\xd4S\\xf7\\x94^\\xa8\\x99\\xf39N\\xe7\\x8e\\x0fNN\\x8a,\\xb9!\\xf4\\xcf(K\\x8b2\\xaf\\\":\\n'N\\x8b2L#\\xf2~A\\x7f\\xads2\\x8f\\xa3\\xb0$\\xec\\x935\\x05\\x1b)\\xd6\\xe3[s^\\xde%\\xf8\\xb2\\xa0\\x7f\\xbcH\\xe2\\xb0 \\x85s\\xa1\\xf6\\x9ca\\xcfE\\x14&a\\x8eu\\xc9_+\\x92F\\xf8\\xdd*\\\\\\xaf\\xe3\\xf4\\xda\\xb9h\\xe6PJ`\\xb4s\\xf9\\xe9dS\\x1f\\xaa\\x936\\x9c\\xa1\\xb7\\x8c^\\x9a\\xdf\\x1e|\\xb1=\\x9f\\xc9]\\xe1\\x12/Xd\\xf9\\xab0Z\\xbau\\xd3\\xadvE+;\\x138==\\x858\\x88\\xd39\\xf9\\xf2~\\xe1\\x12\\xcf\\x83r\\x99g\\xb7\\x90\\x92[\\xc8\\xdd\\xef~N?\\xa7\\xd9m\\n\\xd9\\x1a\\xa1\\x9e\\xf3\\x1d\\x8c\\x80\\xc0\\x08\\xbes .`EJ\\x88S\\x06\\xd8c\\xac\\x90-X\\x9d\\x92\\xd5\\xf9\\xcb\\x8b\\xb7?!l\\x0f\\xbe\\xf3\\xb4\\x8b\\xe6\\x03\\x05\\xcaA\\x19^3\\xc8\\x81\\xbf\\xe8\\xe6\\xd1\\x99\\xb1?\\xee\\xef!\\xad\\x92\\x84\\xbf\\xe3\\x1b\\x8a\\xaf\\xc5\\xdf\\xf7\\xf7\\x83\\xae\\xca\\xd6X\\xed\\x9c\\xb7X\\x9f\\x0bl\\xb3\\xf9%\\xb7\\xda\\xba\\xf4`\\xbd\\x81\\xbc\\xd5\\xe6\\x80a\\xb3\\xd2Ou>\\xf5\\xd1\\xc3j\\xcd/}\\xd6\\xfcL\\xf2y\\x8b_j-\\xf9\\xb0bE\\xa5@\\xad+\\x1fd8\\x057\\xc5\\x0f\\x94\\xd2\\xfa\\x83\\n\\xf1\\x9f\\x8f\\xbf`\\xeb\\xf4\\x14R\\n\\xea\\xe4\\xf3\\x96\\x1a\\xce\\x9bq\\xcd\\xd2Yy1\\xf0h\\xd2\\xa7\\x9a\\x9d\\x97y\\x9c^\\xbb\\xc4\\xa3\\x18\\xb2lUzh\\x1f\\xa8\\xca\\xf3\\x81\\x1f\\xe9\\xac>\\xd2\\xf5\\xb9\\xb2\\x1dm<j\\xec\\xd0\\xd6GP\\x1c\\xf0bM\\xa2x\\x11\\x939,\\xb2\\xbc\\xffd3\\xbc\\xf8\\xe0\\xebx/\\xd5\\xe9\\n\\x06\\xc1&\\xbb\\xbb\\x9e\\xeb\\xdc~.\\x1c\\x03$K\\xdd\\xa3C\\xaf\\x0dfRw\\xdf\\x0b\\xce\\xefVWY\\xa2\\xbe\\xa4[e\\xa4\\xc6\\xb2\\x06z\\xb8f\\xc8c\\x81\\xfa\\xf9\\xac\\xbc\\xa0G\\xc1\\xc5?N\\xa1\\xa2{\\x9f\\x89\\xc2\\n\\xce \\x83c\\x88=\\xd7a\\xe3\t\\x1c\\xba<\\x9e\\xb4\\x1c^P\\x94YNOdn\\\\\\x19}Y\\xe8Q\\x94\\x87\\xa8AC\\x92\\x17q\\x96\\x1e\\x833\\x0d\\xf6\\x83}\\xa7\\xe9\\xa7\\x99\\xa1\\x93V\\xab+\\x92\\xcb\\xf3\\xbf\\xbcDR\\xd4\\xa5\\xff\\x9eB\\xeam\\xb6G\\xfb\\xc6\\xad\\x99\\x1c\\x19\\xb7f\\xf2\\xd4koJ\\xea\\xee\\x8e\\xb5\\xe2\\x10\\x8b\\x0f\\xf4\\xe2\\x16>\\xd0F%\\x1e:\\xba\\xc8\\x87\\x85\\x0f\\x89\\x0fk\\x1f\\x96\\x8c\\x06\\x81\\\"x\\xdd\\xa6r\\xe83\\xaf+\\xfc\\xd1\\\\\\xe1\\xa6\\xaepn\\xaepWW\\xf8`\\xaep]W\\xf8\\xc1\\\\\\x81\\x12\\x88\\x94\\x0b\\xc8\\xe1\\x18n\\xe8\\xbf3\\\"N\\x17A\\x1a\\xf8\\x81\\x12\\xf3\\xae(\\xfe\\xed\\xc1k\\xe8\\x0ds\\x8b\\x97\\xbc\\xc5\\x98\\x9eB\\xd1Z\\\\\\xb7f\\xfe\\xe8\\nN\\xe1\\xb2i\\x19\\xbf\\x91\\x7f\\xe3\\xa7'\\xadO\\xe9\\xf5w#Dvx\\x98\\x10hz\\xb8?\\x94Lv]\\n\\xec\\xb7\\x96\\xf4\\xdd\\x8a\\xfe\\xef&\\x8b\\xe70F\\x90\\xb9\\x9aE\\x17\\x1e\\xe5\\xa0\\xe0\\x18Ro\\x16]\\xf8@\\xe9\\xa2kZm\\x01g\\x10\\xba\tR\\xc6\\xc7p\\x87L\\x98\\xe9\\x0e'X\\xef5\\x7f\\x83\\xf4\\x96\\x0f\t\\xfd&\\xf1Y\\x87\\x95\\xbb\\xf2\\xe9\\xa1\\xa0P\\x1e\\xb7\\xe1g\\xcf\\x87\\xcbYt\\x01[\\xa7\\x90\\xe0\\xcdu/\\xb1\\xc6\\xda\\xf3YOW\\xf2[\\x17\\x7f\\x9dB\\xa2\\x81\\xd5f)\\xf2 bw9\\xf6\\xe9I\\x83S\\x98\\xd0?\\xfeHI:\\xfa\\xc79\\x9c\\xc2\\x1e\\xfd\\xe3\\x03\\x9c\\xc2!\\xfd\\xe3\\x07Z\\xe7\\x80\\xfe\\xf5g8\\x85]\\xac\\xf53\\x9c\\xc2\\x01V\\xfbH\\xdfN\\x0f}\\xe5\\xc6\\x17\\x9b\\xdd\\xce]\\xe3\\xed\\xdc\\xd3\\x8b\\xf9\\xed\\xd4\\xef\\x1b\\xbd\\x9dO\\x9c'\\xd7\\xed\\xcb\\xa9\\xf7n`]@b\\xe38\\xaa\\xca\\xdc\\xd2\\xb3\\x1c;\\xda\\xa8\\xf3\\x8c\\x02H\\xd2>\\\\\\x1c\\xde:N\\x83b\\xdd\\x10F\\xa7\\xe0\\x00\\xfd\\\"\\xa5\\x18\\xe7\\x14\\x91\\x0f\\xef(\\xf7(%\\x90\\x84\\x11q+\\x1f\\x9c\\xed\\xbfVYy\\xe2x\\x88\\x99\\xbe\\xf3|\\x08a\\x04\\xces\\xfamL\\xffz\\xf6\\xc4\\xe1d\\x9b\\xf3\\xdc\\xb1m\\xeffD)\\xe7\\x8b\\xe5\\xf2\\x94a\t\\xe2\\x86\\x9e\\x0f\\xb9\\x9b\\x07\\x1f`\\x04y\\xf0\\x1a\\xbe\\x87\\xd8\\xed\\xa4\\xd2\\x04\\x1f\\xe580+/\\\\:\\x07\\xeb\\\"\\x11\\\\#\\x12\\x94\\xd9O\\xd9-\\xc9_\\x86\\x05q\\x91{$A\\xb1N\\xe2\\x12\\xbf\\x0e\\x12\\x92^\\x97Kx\\x0e\\xbb\\xeat=\\x1f\\x1c\\xb6\\x86\\x94!\\xe9C\\xdc}\\xe8\\xc9\\xa9R\\xc6\\xac\\xce\\xe9\\xce\\x89\\xbbz\\x1b\\xa7\\xf3\\xec\\x96n\\\"\\xfb+x\\x1b\\x96Kz\\x97\\xf1\\xdf3\\xf1\\xfe\\xd8\\xf2yA\\x92\\x05\\xfd\\x98\\xfe\\xab\\x7f\\x8a\\xef\\x8eA\\xc0\\x01\\xd7\\x11\\x84\\xe82.\\x1c\\xcf\\xf5z\\xf0\\xe05\\xc7\\x83\\xd7\\x8f\\xc0\\x83G\\x9d\\xa4\\xca\\xbe\\x8e&\\xd9\\x8d;\\xfa\\xdfC\\xaa\\xd8\\x89\\xb8\\x03\\x9d\\x16\\xa0Kb\\x90m\\xc9\\x1b[o0#\\xa5\\x91d\\xe5\\x7f\\xf27\\xed\\xe5\\xcc\\xe9\\\\b\\xfa\\xbf\\x01\\xfb/\\xaf^6\\xf8p\\xbf\\xc8\\xf3\\xf0.\\x88\\x0b\\xfc\\xd7\\xdcX:\\xb8\\xb1\\xff\\xe57E\\x9e\\xf2\\xb0\\xb3J9nN\\x17\\xd0\\xbe\\x04;\\xf2\\xe9nM^\\xe5y\\x96\\xbb\\xce\\xcb0\\xfd\\xae\\x04\\x8a\\xdd)k\\xbd\\xcc\\xe6\\x90\\xa5\\x00\\xec\\xac\\x9aey\\x9bB\\xb0\\xa6\\x15E\\xb4e\\xb9Vt\\xb5\\x9a\\x1e\\x94\\xf3\\x95\\xdfi\\x9f\\xd0\\xf6\\xd2\\xce\\xd3\\x89wq\\xec\\x03\\xb9\t\\x13\\xcfuXq\\xd3<Da\\x19-\\xa1\\xbdn\\x86\\xbb\\xd4\\x9c\\x1c\\xa4\\xc4\\xd8O\\x1d\\x9c\\xc3\\xa0\\xa3;H\\xea4|\\x83%\\xb8\\xd6\\x9c\\xd4Rf=\\x9b\\xfd\\xa6\\xac$\\xb2\\x99iVBX7\\xec<n\\xaf\\xed\\xa0\\xdb\\x08\\xb2u\\xe9\\x19\\xa7\\x91\\xa6\\x07F\\x16\\xa6U\\x1cr\\xe0\\xf7MX\\x98>\\xfee\\xd9\\xc7\\xbf\\xcc\\xfb\\xf8\\x97\\x9b>\\xfe\\xe5\\xae\\x8f\\x7fi\\x18\\x9c?\\xdb\\x19\\x9c\\xe5\\xa6\\xec\\x08\\xe5aV}\\x8c\\xce\\x15o\\x99\\xb2Ns\\xc1:\\xd9x\\xa5.\\xdee\\xa9\\xf1.\\x8ckY#3\\xa0q-W\\xc8\\xb5loC\\x88\\x8c\\x05\\xbb\\xbc\\x94\\xd5\\xa1,\\x0b\\xf2\\n\\xc7\\x90\\\"3\\xb3b\\x8c\\xc3Rc^\\x9a\\xd3\\x8f\\xb5\\xcf\\xb0\\xb6`rh#Y\\xcd\\xf7\\\\\\xd7\\xdc\\xc8\\xe9)\\xb2:\\xdd\\x92$\\x90H\\xc6F\\x90d\\xa7\\xd2\\xc5C\\xaf'\\x05: Dr\\xecf\\xda?\\xa0Oq\\x1b#T\\n\\xf3\\xebjE\\xd2\\xb2\\xe0\\xb4e\\xdfw\\xf4\\x89\\xc2\\x82\\xc0\\xf8\\xb8\\xb7\\x1eH\\x02{r\\x0be{\\x0b\\xf5\\x07[\\x9el\\xde\\xb2K\\x0c\\x94\\xb5\\xfe`\\xe3\\xd3\\xc74\\xae\\xd0\\xd4\\xa6\\xe7\\xa1\\xf3m\\xab1\\xba\\xa1\\xd6/\\xecm\\xd5\\xea\\x95p\\xbdN\\xee\\xb8\\xf2\\xaf\\xde@s\\x8b\\x0f\\xe6u\\x11\\\\\\x87\\\"!\\x904!\\xb2J\\xa5n\\xcaE\\xce\\xfc\\xa6\\x93\\x9b\\xcfl\\xdc<~\\xe6\\xba\\xab\\xe0&\\xce\\xcb*L\\xf0\\xe25\\xbf\\x10\\x96x\\x9cW\\x17\\xbc\\xfeG\\xfa\\xcd%\\xfd\\xdf\\x16\\xb2\\xfc(\\x0f`\\xdc~\\xe2yV\\x8e\\xfe\\x1f\\x85\\x8b\\x9f\\xeab3.dk\\x953\\x1cu\\xa8#4\\x8a\\xa2\\x8c\\xca\\xc3f\\xaa$X\\xb06\\xf7=83W\\x96\\xd5n\\x16\\xccE!H\\xee\\x96\\x9e\\x8f\\xb0'\\xa3gtk\\x8c\\xdc.jL=\\x03Y\\x04\\xcd!\\xaa\\xeaf\\xd5\\x0d\\x91\t\\x9f\\x87V\\x7f\\xce5)\\x1d\\n\\xbc\\x91\\xb8r\\n\\xf1\\xcb@>\\xbe\\x88\\\"R\\x14Y\\xce\\x08\\x8a\\xa2Z\\xd3\\xfd \\xf3-\\x0bA\\xe1\\xdc\\x84IEx\\xdb\\xf4\\xd0\\x95\\x0cY\\xa5\\x01\\xbe\\xf0\\xfcMI\\x0e\\xf9\\x08l\\xa5\\xee\\xf4\\xc8\\xb3\\xf3\\xfd|\\x0cO)\\x9e0+~\\x7f{\\xe0\\x8a\\xcb\\xf6\\x82\\xa2\\xe6\\xb6S\\xa4 w\\xd1\\xbe\\xa0\\xea\\xfa{A\\xd8\\xcc\\xb3\\x9f\\xd8o\\xe4\\x1f\\x9a\\x1a\\xb4\\x8f\\\\\\xb4\\xebWS\\xa3\\x06u\\xc8\\x92K\\x82j\\xcb%\\xda\\xdd\\xb3\\xb0\\x85\\xa9\\xbb7\\xf5\\x14dk>\\xf4\\x82\\xc5\\x0e\\x16\\xbcF\\xecNh5\\x99t\\xef\\xbf:\\xb5\\xf1\\x01;b\\x1b\\x9f-I\\xe67\\xb1L\\xa8\\x9b0\\xdf\\xa2\\x17\\xb7}iT\\x1a<\\x05\\xc6k\\xd8\\xaeL\\xdf\\xa0\\xfb\\xf8`uX\\xff\\x8d\\n\\x8dne\\xba\\xb2rCd\\x82\\x88\\x9bc\\x1f2\\x1f*\\x1fB\\x1f\\n3\\xa8\\xa4@d\\xcbHc!\\x03\\xd0\\xc6\\xb9\\n\\x8fL\\xc9T\\x88\\xe8\\x1c\\xc9-p\\x18\\xf76N\\x99B\\x8e|\\x89\\x08SJgQT\\xe59\\x99\\x9f\\x00\\x9dd\\xb9$\\x90f\\xe9\\xceJT\\x9c\\x93\\x1b \\xe9M\\x9cg)\\xc5\\xffH\\x0e\\xd3J\\x8b*I\\x80\\xd0VaE\\x8a\\\"\\xbc&\\x10\\xa6s\\x08\\xe7sTe\\x87\t,I\\xb2^T\t\\xdc\\x86y\\x1a\\xa7\\xd7E\\xa0\\x9f\\n\\xfa\\x90\\xa4 \\x1dD*E;3}\\xb1.\\xcct>}(\\x86\\x1f\\x9bi\\x11W]\\nR\\xcb\\x80\\x9f\\xfck\\xf1\\xe4\\xda`\\xdedz\\xf8A^\\xcc\\x92\\xd1\\xe8\\xc2X\\xeb\\xc1\\xf3\\xbc \\x0dW(\\x91}\\x93\\xde\\x84y\\x1c\\xa6%\\xfc)\\xce\\x92\\x10)\\x99\\xd6WmJ\\x8c\\xdd\\xb2(X\\xe4\\xe1\\x8a\\x14\\x9f\\xb2\\x0f\\xd9\\x9aQ\\x1a\\xd1\\x1f\\xcc\\x1f\\x0e\\x82\\x01}\\x16!OM\\x9c\\xae\\xa4\\xac\\xeeW\\xec\\x0b\\xb6bvaa\\xa3\\xd8\\xa5\\x8eS\\xca8\\x90`]\\x15K7\\xed\\x10V\\xab\\xb35_\\xacD\\x9d\\nW\\xf2\\xca@.\\x0b\\xe2tI\\xf2\\x98\\x83\\xed\\xdd}O\\xfd\\x84\\xb1\\xe8\\x93C\\x1d\\x03p\\x1e}\\xf2\\xd4\\xd8\\x16e\\xbf*\\xe9M=?\\xdaK\\xec\\x86\\x0d\\x91\\xeb\\xf9x\\x0b\\xc7'\\x10\\xc13\\x10\\x1c\\xd0\tD\\xa3\\x91\\xbe\\x88\\xe2\\xc8\\x17\\xb3H[\\xc2\\xa4io\\xb6`\\xcc\\xb1Vt\\n\\xa1R \\xa3\\xc2f\\x94|\\xff \\xb1\\x80\\xf9\\x16\\x8b\\x97x\\x9e\\xccY\\xd0\\xef\\xd4\\x91U\\x1c\\xfb\\\"\\x9b@\\x89\\xbbP/@\\xa9\\xec\\x16\\xb3,(\\x83\\x9c\\x84\\xf3\\xf0*a@\\x98\\x1bi\\xf0\\x92S\\xd8\\x9a\\xb4\\xea\\xdf\\xe6q\\xa9\\xd6\\xafKD}Z\\x18&Iv\\xfb\\xefa\\xb2x\\xbf&)7\\xbdS\\x1bRk\\xd4\\xad\\xb5>\\xac\\x9b\\xcc\\xd2\\x88\\xb8\\x0eA\\x83\\xa8u\\xf7r\\xae[P\\xc3\\xd0\\xf6\\xfd=+\\xbd\\x14\\x138/\\xc3\\x92\\x04$\\x9d\\x13\\xb4\\xd6\\xc9\\x83\\x94|)?\\xc5\\xd1gw\\xc9\\x86\\xd0\\xdd\\xe9\\xb2\\xbd\\x87%m\\xcd5\\x89\\xf2\\xccTb\\\"\\xf3b\\x8e\\x18\\xd7\\xbf\\xc7\\xd7\\xcb?\\x87%\\xc9\\xdf\\x86\\xf9\\xe7\\x16\t\\xa9\\x18\\x06j\\x86\\x83\\xfd\\xa4\\xa5$\\xd5\\xd4\\x17b)w\\xab\\xde\\xfdfB\\x9e?h*sR\\x94yvG\\xe6\\xad\\xe1\\x0f\\x1e\\xa2$\\xcea\\xa3\\x15\\xe7\\x14G\\xab\t|\\x0c\\xf3i\\x8e\\x98\\xfaeP\\x8f\\x8d\\xd60-D]Acu4a\\xa12\\x113@\\xfe\\xfd\\xa7\\xd0X\\x9f\\xd9&A\\xabx\\x1d\\xdb)m\\\\p\\xc9\\xbf\\xea\\xa3\\xfc\\xb1C\\x86?\\xaa$\\x11\\x17\\x16\\xcf\\xbe/\\xdf#\\xe2\\xcb}\\x7f\\x13499\\xda\\xb3\\xea\\x8a\\xec\\xbb!\\x8e=\\xaetN\\xd7\\xb56\\n\\xeb\\xa3\\x8a7\\x1c\\xdf\\xde\\xc1\\x9e\\x01\\x8f\\xbf\\x0d\\xcbe\\xb0\\n\\xbf<r\\xdc\\xb1;\\xa6|\\xba\\xa2\\xf3\\xdbt\\xb0C\\xeaK\\xcb<5M#u\\x0f\\x9f>v\\xeds7\\xde|\\x02\\xd2\\x80\\xcc\\xe3\\xd9\\xb73\\x88LZ2\\x90\\xb5\\xfb\\x87a\\x10\\xa7\\x87\\x1b/\\xf0\\xdf\\x85A\\x1c64!\\xaci+\\xc1J8\\x93\\xee\\xa0\\xcd\\x19\\xe3\\xdb\\x8f\\xa8S\\xc8\\xb5\\xb5U\\xba\\x1d\\xf2-\\xebg\\x9a\\x85\\xeec\\xf7\\xdeb\\xaeg\\x16$\\xee\\xeb\\x06\\x96\\x8c\\x90>:\\xf4\\\\\\xa7\\xc8#\\xdd\\xd4\\x81\\x92\\xd3\\xb5\\xd0\\xb6\\xcc\\x98\\x1dI[\\xfd\\xe5:\\x0e\\x8c \\xf4\\xb8=\\x8a#j\\xca'\\x06-\\x08\\x838-\\xd6$*\\xcf\\xb3*\\x8f\\xc8\\x90C \\x08S\\xe9f\\xf96K\t\\xc1\\xa5\\x87&\\x12=\\xb2Y`\\xa4\\xea\\xa9\\x8e\\x10\\x7ffn\\xea\\x83CYB\\x07\\xf5@q\\xf3\\x9b\\x1e \\x8a\\xbc\\xe8\\xadm\\x8c\\x97\\xa4\\xcf\\xaa\\xe6\\x8b\\x8a\\xd7;\\x03\\\\\\xa1\\x92i\\xb1\\x8a\\xe0\\xd7,N\\xdd\\xda\\xda\\xd7\\xc3\\xf6\\x90\\xe2\\xcd\\xe1\\xac\\x86\\x07p\\x0c\\xa1\\xf8\\xa9\\x94\\xc6\\xcd\\x818\\x06wN\\x12R\\x12|\\xefK\\xaf\\x14K\\x8fF\\xf2.\\xd3[\\xf56u0\\xd2\\xe2.\\x1a\\xef\\x19e;894\\xab\\x90\\xc1\\x91\\xf8\\x08\\xb9\\xffot\\x0d\\x7fo\\xc0\\xb01\\xd66_\\xbd\\x03\\x93\\xa2\\xd9M\\xdd\\x83\\x03\\xcf\\xc7\\xf7\\xe3\\x86 \\xb69\\x98\\x18\\xaf\\xe9\\xe4@7\\xf3\\x0b\\x8d\\xaeT\\x9f\\xc9\\x9d\\xd9\\xff''\\x0b\\xf3\\x8b\\xcb\\xcb\\x82$\\xf6wx]\\x8f[ \\xcb\\xe4%VX\\xb7M&[\\x83\\x9c,\\xa4\\xcdh7\\x13\\x0dk\\xe63\\xb9\\xd3\\xf6\\x14$\\x96\\xbc\\x0d\\x1ar!\\x962\\xc2\\x88\\xb6\\xbc\\x92>\\xff\\xf2/\\xec\\xf8\\x1cC\\xd5^\\x1c\\xfa\\xea\\x18\\xca\\xf6\\x0b\\xdc\\x03\\x83v\\x1b\\xb7 m\\x97\\xaf\\xf3l]\\x1cChX\\xff\\xec6%\\xf917j\\x12\\x8f\\xd9\\xfbI\\xb2]\\x91\\xc4\\x1cA\\x94\\x93\\xb0$\\xaf\\x12\\xb2bn\\x15}\\x94\t\\x9e\\xf1\\xda\\x17\\xa25\\xa2\\x84\\x9e\\xc6*I\\x0c\\xb3\\xe0o\\xd4\\xc1QZ\\x83\\xdfNY\\xdc/\\x1e\\x14\\xc3\\xe4\\x10\\xd3\\xc3CP\\x03\\xef\\xae\\xb9\\xef\\xc7\\xc2\\xf3!\\x12\\x85\t3\\x98\\x1c\\x01\\xa1\\xfb\\xee\\xf9 \\x8bM\\x03v\\x84\\x05\\x1c8\\xaeK\\xda\\xd5\\x18\\xf2Q+b\\x19\\x02\\xa5\\x8c\\x810\\xe6\\xbb\\xb7\\xbd\\x0d[\\xa1v5]V\\xeeV\\xcc\\x93\\x11\\xfd\\x1fOZ\\xcb\\xb7\\x84S\\xd05\\xe8\\xb0\\x03\\xd3\\xf6\\xca0Y\\xc7\\xd2\\x83*\\x88\\x96q2\\xcfQ\\xa4\\xa1\\xa1%\\x94\\xb9\\xd2\\xdaKx\\x0e\\x13\\x13YQ\\x0b\\xb3\\xe6\\xc2\\xac\\xcd]\\xd25bb\\xac\\x1bx\\x06\\xcb\\x13\\xb8\\x19\\x8d<\\x98\\xcfn.\\xe4\\xd1\\xcdn`\\x04S\\x83\\xfco\\xec\\xabc\\x9a\\xab'\\xb05\\x13\\xee\\x15\\xc8=q\\xe8z\\xb5\\x84\\xe4\\xc0\\x97\\x07\\x8dO\\x94\\x9a\\x16\\xf1#\\x9e\\x8b;O\\xdeD\\\\xi\\x07\\xee\\xe8\\x0et\\x0cM\\x08\\x80\\xe9ig\\xee\\x03c\\xfc/\\x0eP\\x8a\\x9e\\x96\\x14g7\\x17\\xc7\\xaf/\\xcc\\xeb0*\\xb3\\xfcn\\x90G\\xa4v\\xc9\\x82\\xab8\\x9d\\xbb\\xdc\\x07\\xc9L8\\x93@(\\xd75/\\xc5E\\x10%YJ^\\xa4\\xf3\\x8fL\\xdc\\xfd\\x1f\\xa4\\x97\\xb9n\\xe6\\x18p%\\xbd\\xcf\\xa0,\\xfd\\x87\\xdf\\x03\\xfa\\x07?\\xe7e\\xc0\\xa0\\x8a\\xcf4\\xfb\\xebB\\x9f?\\x1d\\xc0f\\xf0\\xa2\\xaa\\x0d\\x9brTd\\x8a\\x86\\xdb@\\x02m\\x9b\\xe8\\x15n\\xbfB\\xc1\\x03\\x0e\\xbb}j(\\x12\\xed\\x9a\\x8b\\xb79\\xd0\\xa9\\x14\\xa03\\x17@\\x87\\xdd\\x9a\\xfax\\xc80h\\xa9\\xc3 \\xb6\\xde\\xec\\xe0#\\x1e\\x97\\xcft\\x0d\\xb6\\x0c\\xef<\\x0d\\xdaT\\x16h\\xc3\\xca\\x15\\x15\\x11%\\xb6T9P\\x02g\\xb0\\xa6\\xc5\\xa7\\x90\\xd0\\x7f\\x8e\\xc5/Z\\xd7\\x00\\x9d\\xee6\\x84Nw\\x1e\\xac\\x87@\\xa7\\xbb^\\xe8t]C'\\xbaz+\\x06\\x9dV\\xf0\\x0c\\xeeN`E\\xa1\\xd3\\xf5l\\xa5B\\xa7\\x95\\x05:)\\x03\\xba\\x1et\\xff\\xf9\\xddX\\xfa0\\x17@\\xe0F\\x95\\x13\\xd3\\xc3\\x1f\\x17\\x7f\\n\\x93xn:\\xfe\\x9bP\\xa4\\x8a\\xbc\\x88\\x1d\\x10AJ00&\\xf7\\xaa\\x10\\xc0\\x7f\\x80~\\xe2T\\xd2\\x0e\\x1f\\x98Y\\xc0\\xdd\\x83~\\xa9@\\x87\\xb3\\x03c%\\xcc\\xa0+wS\\x8f\\\"P8\\xe6\\x87\\xb0\\x99\\x8aq\\xec\\xfa\\xc09%\\xa6\\xab\\x8a\\x8d\\x04ef\\x10\\xd3\\x0b\\xc3R\\xae!-H\\xf9)^\\x91\\xac*a\\x192\\xb1\\xc5\\x15!\\xdcK\\x97\\xcc\\x9dn\\x91|\\xd5\\xdfA\\x94\\x900\\xff\\x8a.B\\xb3\\xfc%\\xc5s\\xd0\\x8c\\xbe\\xd6\\xda4Et\\xf9\\xc6\\x06\\xc8\\xc6\\xbf\\xcd(\\xd3\\xb5\\x95\\\"\\x880\\xb4C\\xf7\\xb1)\\xf6{\\xda\\xed\\x94r\\xa4\\xec\\x0b\\xf5\\x9a\t9\\x87\\xd1\\xa7\\xd5\\xdc\\x1c\\xb4l@8\\x92l\\xb5\\x0e\\xbd=\\xb4\\xdb\\xe2\\n,s[\\x16\\x10\\xf1\\xb0eg\\x7f\\xcdsHm\\xb2\\x04\\xe9 \\x9e\\xc9?Z\\xc4{\\xa7\\x80(\\xad=\\x18\\xea\\xfa\\x03\\x06\\x95\\xdb\\x06\\xa5\\x1c\\xde3\\xf5\\xe7\\xb1\\x04\\x85\\xa0w`\\xb4\\x8b\\xca\\xb6\\x8a\\xae\\xa6\\xa2-\\x98\\nu\\xa6i\\xfe\\xd1\\xfeV\\xd3@Q\\x0c\\xb931]\\xfe\\xb6\\x8e\\x8e\\xf9? J\\xe4M\\xd5\\xeaY:9z\\xe0\\x83(K\\xa3\\xb0t#\\xb4/\\xc4\\xb6}\\x88D\\xa5\\xedmX\\xba^\\x9f\\x96\\xcet]\\xb7\\x166j\\x96\\\"\\x89\\xd0]\\x1b\\xd4\\xe28F\\x83uC\\x8d\\x0f)\\x01\\x18\\xd5\\xfaerb;\\xe7\\xf8\\x01\\x85\\x92\\x91X\\xd7\\x13\\x18\\x8d\\x12x\\x86\\xdf\\xe0\\x82\\x14\\xb3\\xe4\\\"\\xc8\\xab\\xd4\\xb5X\\xbc\\x8a\\xa5\\x90\\xbb\\xec\\xb9%\\xc0%|\\xec\\x8e\\x9a\\xf6N<v\\x1c)?h#\\x83\\x90K>\\x865\\xbc\\x92\\x0b[Jk\\xbd\\x1d\\xdeP\\x85 \\x90\\xf1d\\xc6F\\xe9\\xa9\\x95_\\xf8\\xc3\\xbb\\xb1\\x830\\xf1\\xe4n\\xd9\\x864\\xe2\\xe9\\x87^\\xe2\\xe9\\xef\\x08d\\xb5\\x83\\x0c7\\xed\\xdd\\xc3FC\\x80V\\x07\\xc2\\x1a\\xa0\\xbb\\x03\\xfb\\xec\\x8do\\x1e\\xf4\\x05{\\xe8\\xbc\\x89s\\xbb*qQ\\xa5\\x92&3\\xa44%%x;\\x9b\\xbbq\\x15\\x8b\\xd3\\xb8\\xd6:\\x0e\\xe2\\xf1(E\\xc0hW\\x03\\xed<1`\\xe9V5J\\x1d\\xdba\\x01\\x9d\\xcf\\xe4\\x04Rx\\xd6\\\"\\xceO \\xa5\\xc41\\x99\\xa5\\xb4+\\x95@N5\\xe28\\xe2ZVr+\\x96\\xcf\\xf3a\\x82th\\x0d\\x05\\xef\\xef\\x01\\xa3s\\x84\\xeeR\\xa1~\\xe7\\x92D2\\xaf:=\\xa6\\xc4&p\\x9bs)\\xde\\x06\\xee\\x85\\xd2l\\x1c\\x94q\\x89\\xd6\\x1f\\xceU\\x9e\\xdd\\x16$wh!\\xff\\xbb\\x89\\xba\\x94\\xde\\xf0\\xf0\\x1bq\\x10\\xe6\\xd77\\x0c\\x7f@\\x1cp\\xbbAd\\xbe\\xa4\\xdfE]\\x1b\\xdf\\xdd\\xe0w\\xf3\\xf9OqQ\\x92\\x14\\xdb\\xbda/Q\\xd9\\xc0\\xfe^,\\xc4\\x9f9Ye7D\\xaf\\xccJ_$\\x89xQ\\x887d\\x15\\x97\\xe2\\xefuN\\xd6$m\\xf5\\xc4\\x8b\\xdf\\xa7Q\\xab\\xddDj\\xae\\x97\\xa1\\x98]\\xa8\\xabw\\x15\\xa7\\xf38\\xbd\\xeeVR\\xe9T\\xeb:\\xcf\\\"R\\x14\\xf5\\xc7\\xb1f%\\xedh[\\x14\\xdd\\xce\\x07x\\xc89O\\x1c\\xed\\xb3\\xe5<n\\x99T\\x0e\\x1b\\x19\\xfb\\xb4o\\\\\\xd5*,>\\x0f\\x18\\xd9&\\\\\\x88\\x91R\\xe22y&\\xc8\\x81\\xb3\\xe1<S\\x19\\x14\\xd5\\x9a\\xe4\\x97,\\x10X\\xa9\\xb8N(\\x8d\\xbaD\\xd6\\xc0\\xb4\\x01r\\x1d\\x91'\\xcb\\x8f-\\xf0\\x1a-\\xd5\\x8d\\\"g\\xe81\\xf4\\x11\\x8f\\xb0\\xf90\\x8b\\xfb\\xa1\\x1dil\\xdc\\xaa\\xa4\\xd1\\xd2\\xaa\\xde\\xfbQ\\xcb\\xd6\\x96Q\\xe8\\xc0Gw\\xbeWVYYWu\\x03\\xe8\\xb9K\\x95\\xc2@Zf\\xf8\\xe6\\xc6\\x1c\\xd3i/\\xdbm\\xa4.ee\\xbc\\xea5\\xe9\\xbc\\x0cSzCh\\xc7(R\\xc8rh\\xfc\\x83\\x1f\\xa7\\x96\\xef\\x9cT]\\\\#\\xce\\xbcO\\x1f\\x83\\xf6z\\\"\\x8c\\x12\\xfb\\xa5\\x8d\\x00\\xe4\\xe5\\x08\\xe2\\xe2]V.\\x19L\\xcb}\\xe5\\x85\\xf0\\x10\\xef\\x07\\x93\\xfdr\\x17\\x19\\x924}\\x94\\xd9\\x0bN.\\xf4v\\xa18\\x88\\xd3Zg\\xa8_\\xcc\\xd9\\x9f\\xb3\\x0b8\\x86Yya\\xee\\x86\\\"\\x83\\xb0%?5Q\\x17\\xa9\\xcf\\xf87G\\xddK\\xa4\\x0cR&#K\\x91\\xd4\\x87\\x14F\\xa70\\xf1 \\xa7\\xff\\x96f\\xe9\\x8cy4q\\xf1\\x8e\\\\\\x87e|C\\xfe\\x1f\\xc9\\xb3!s\\x17\\xbb\\xba\\xbd\\x0d\\xef\\xd0&?x\\xf7\\xea\\x8f/>\\xbd\\xf9\\xd3\\xab\\xcb7\\xef^\\xbfy\\xf7\\xe6\\xd3_\\xb0\\xc6\\x04\\x9e\\xd8V\\x9a|)I\\xda\\x8a\\x8bh[\\x02\\xa6\\x9dk\\xd3Q6\\xf9-.\\x0d[:7S-\\x9f]\\xe2y\\x0d\\xed\\x04\\xcf o\\xd6\\xae\\x9c\\xc5\\x94\\xc5\\x9e\\xa5\\x17LD\\x1a_|\\xfb+$J%9\\x9d\\xd9]\\xa5\\x15\\xd4\\x8fYj\\x8c=\\xd35\\xac:5v\\x063n1\\x95 N\\xa3\\xa4\\x9a\\x93\\xa1\\xa1\\xcb(\\xa7_\\xf7\\xa5\\xbc~\\xe0\\xc6\\x0fC[2D@3\\x8c_<\\x84\\x85\\xc7C\\xe5.\\xfdk{[\\x84\\xc6ce\\xf8\\xe7\\xf66\\xe4\\xc2\\x12\\xbd\\xd5\\n\\x1d_\\xca\\xde\\xea\\x9c\\x06\\xbeY\\xc4IIr\\xb7\\xf3<B\\xb3r<\\xbaZ.\\x05\\x0c\\xd4\\x1a\\x95NI{\\xc3\\x0c\\x92\\xbf\\x92\\x85\\xcc\\xc3\\xed@\t\\xa8\\xf8\\xfb\\xfe\\x1e\\xa9]\\xf6~\\xb5N\\xe2\\x08\\xe9\\xcd\\xb2\\xf9!\\xd7 _\\xa4\\x1a\\xf5\\x0fS\\x1b\\x03w\\n5xA\\x92\\x85\\xf3\\xff\\xe0\\x8b,\\xe2;re\\xbbx%#\\xa9\\xd8u>-IN(\\x11\\x17\\xa2\\x17\\n\\xfb\\x06\\xc11z\\x0d,\t\\xd4\\xe3\\xa740d\\x0b\\x08\\xa1\\x88\\x96d\\x15\\x06\\xf0F\\xbcb\\xf1\\x0d)>\\xc8\\x16PT\\xd1\\x12[(Z\\xc4a\\xe0\\x18\\x8e\\xe3\\x12C\\x1b\\xae\\xd6qB\\xe6o\\x9a\\x95\\xab8\\x0b\\xeb\\x88\\x018>\\xcc.\\xf4\\x0f^}i\\x7f \\xd6\\xd3\\xf8\\x01E\\xcco\\xc3u\\x17E\\nB0\\xc4n\\x90\\xd1\\xae\\x80>l\\xb1\\x8e\\x8dZv|\\xcf\\xc3j\\xdak\\xf0`\\x9b\\xf6\\n\\x8b0I\\xae\\xc2\\xe8s+V.}d\\x89{\\xfdA\\x07\\xce\\x17O:cW\\xf1b\\x86\\xd7\\x94\\xf9P\\x8a\\x9e\\x9a2C\\x0c\\xc3vw\\x14\\x90\\x97\\x0c\\x90\\x13\\x83Z\\xea\\x04J\\x86\\xf9J\\x0e\\xbd\\x1b\\xc6W\\n\\xaf\\xa8k\\xff@\\x12\\x0d\\xab\\xe7\\xc55\\x9e\\x16\\xcb\\x99\\x90/\\xb7\\xf8+\\x0c~|\\xf5\\xfa\\xc5\\xcf?}\\xaa\\xe5b\\xa1`\\x19:N\\x848\\x0d\\xea07\\xf1\\xb5\\xef\\xf2\\x80G\\x01\\xa4\\x18\\x97\\xb6\\x8e\\xb3\\xb1AyF\\x9f\\xab\\x9c\\x84\\x9f\\xdb\\xaf\\xba\\x9c\\xe1K\\xada\\xbd\\xab\\xc9f]q}\\xa8\\xa5/\\x19\\xc8\\xfc9\\xcf\\xd2k`\\x9e\\x81\\x08AD\\x97x~\\xce\\x194\\xe1\\xbbP\\xb3v]F\\x01\\xcc^\\x81\\x02vN\\x0c\\xd6N\\xceM\t\\xf3\\xe5\\x0b\\xc8\\x0d\\xc9\\xefz\\x80\\xa7\\xc0\\xb3\\xb2\\x1bN\\xa8\\x01*\\x0dn\\x9e\\xd7\\x916\\x05XDn\\x88\\x83\\xc6\\x02\\xdc,\\xa7\\x802N\\xaf\\x13\\xc2g\\xc8Mq=\\xca\\xa0\\x95a\\x9c\\n\\x98\\xab\\xbcm\\xf9\\xec!wA\\x1e=\\x8dl\\xd3i\\xd4\\x81B\\xb59P\\xb8i\\x9b\\x81\\xf4\\xae5~q\\x8f\\xc9-\\x84\\xae\\x01o1\\xf4id\\x89\\x05\\x1c?\\xd6\\x1d\\xd3\\x14\\x11\\x83\\xcc\\xa4\\xb1M\\x1bj\\xab\\xf8\\xdb \\xcaP2Ho\\x05\\xc6\\xe4\\x81Om\\x16\\xe9\\x83}\\xf9j\\xcdl\\xe9C\\xac\\x83\\xad^},s\\xee\\x16\\x06\\xa1\\x9b\\xb2\\xaf\\x9a\\x0e\\xce\\x0b\\x8a$\\x8e\\x88{\\xe8\\xc3\\xce\\xa4o(\\xdd\\x0e\\xf5{\\xbb\\xff+\\x1d\\xea\\x87-\\xeb?\\x80\\xd5\\xf9\\xb7:\\xf7\\xfb&?U\\xe6\\xdf\\x12\\xa7\\x8f<n%<\\x871\\x9cA\\xcc\\x03T\\x1c\\x8d\\xc7O'GG\\xd3\\xfd\\xbd\\xa7{\\xe3\\xa3\\xa3\\x89\\x07\\xc7\\xbd\\\"\\xc1A,\\xdc\\x93\\xef\\xeb?\\x19\\x84\\xda\t\\x8b\\\"\\xben\\xe8\\n7\\xf2\\xe0<N\\xe79\\x81\\xf3,_V\\x8d\\x15\\xe6\\xbf\\xd1\\x8b\\x90\\x16\\x04\\xde\\xbe\\xf9T\\x17~\\xff\\xa4\\xb5B\\xfc\\xf8^\\x93R2\\xfda\\x81\\xfb\\x8a\\xf6\\xc2\\xf5\\xd8\\x0e\\xb7\\xd9\\xc9\\xd6\\x07k^\\xf5M\\xf1\\xaa\\x16\\x18\\xf6l\\xc3\\xb0\\xd3\\x89\\xb8\\x86w\\xc7V\\xa9\\xd6\\xc3mM\\xda\\x04\\x80P\\x9eR\\xd8\\xce\\xed\\xe1\\x9d\\xf0*2y\\x9d#\\xc2\\x9e\\xedS\\xb2\\xd2\\x99c\\x9c\\xf9}G\\x8a\\\"\\xa8\\xad\\xdd\\xbbpE\\n\\xb7\\xf4f\\xe3\\x8b\\xce\\x01(zX\\x8c\\xfb\\xddH[&\\xe3Z\\xeb\\xe2\\\\:u,\\xd2`\\x91g\\xab\\x97\\xcb0\\x7f\\x99\\xcd\\x89\\x9bb\\xb0\\xee\\xd4<^g<\\x99\\xee\\xee\\xed\\x1f<=<bLT\\xc7X\\x89\\x17\\xac\\xc2u\\x0f~\\x86\\xe6\\xf8\\x13Y\\xec$\\x9e\\x07\\x8f\\xf9\\x168\\x8e\\xd7\\xbb\\xee\\xb9!\\xa2)H\\xb2\\xb5\\xf0*\\x9a\\x93\\xc5\\xf52\\xfe\\xf5s\\xb2J\\xb3\\xf5_\\xf3\\xa2t\\x84\\x8b\\x8734\\x08:\\xb6\\xc8BT\\x9a\\\"\\x9a\\xfb\\x96~\\xe4\\x9dEq\\x8er\\xa6\\x10\\xb0\\xe7^3Y\\xa5\\xe5a\\x80p\\xa2~\\xd3\\x00\\nW\\x8a\\x97\\xc3\\xba\\xd3}\\xb9\\xf4f\\x1b\\x05\\x1e\\x8bw\\xd0\t\\xbd@\\xb6M\\xac\\xa5\\xa6\\xb2\\x14\\xd5\\\"\\x04V\\x87\\x141\\x91\\xf0\\x15\\xc1\\xe0\\x89d\\x0e\\xb7q\\xb9\\xec\\x97\\x0eC\\xb3\\x02\\xac\\xbd\\x96\\x90\\x04ai\\xc14\\x91\\x85Q\\x13Y\\xb4\\x9d\\xe0A^\\x85\\x88\\xc5\\xd7\\x11\\xfb\\xd707\\xb3\\xe2\\xc2\\xf3 \\xe6\\xeak\\x8c\\xb1\\x86\\x81\\x7fYl\\xa7t\\x16\\xe9\\xa6\\x8a L\\x06l'\\xabBsSS<\\x02\\x90G\\xb4`\\x97z\\x01\\xcf\\xa0\\xaa\\xa7\\xb1\\xa0\\xd3\\xc8\\xea\\xc1T\\xb3\\xc5\\x85\\x18\\x0f\\xfd\\x9b\\x0d\t\\xff\\x1anK\\x04\\xcd\\xf2J\\x04\\x01\\xfe5\\x18W\\xee\\xee\\xedn\\xac@\\x10\\x14\\x18;S\\xe8\\x0e\\xe38\\\\L\\xfd\\xd8q\\x18\\xa3\\xbc\\xd2\\xe1\\x99#\\xdf\\xee\\xb6\\xdca0\\xe8\\xed\\x8c\\xa1LxW%\\xc9\\x85\\xa3V\\x08\\xe5\\n?\\x8b#\\xab\\xd7*\\x80\\xf9E\\xe55}\\xfa)\\xbc\\xae-\\x0f\\xbf\\xc1J)\\x1a\\x8c3\\x08\\xe1\\x18*8\\xe665\\xf4,\\xd77\\x05\\xa9\\x8d\\x92\\x12\\x16Y\\xff\\xc2nN\\xf0\\xc9c\\xdb\\xe2\\x82w\\x93\\x8a\\xe3\\x9bw,\\x10\\xa0\\xe8\\xc0\\xcc\\x7f\\xc9\\xc3r\\xe5q\\xa1\\xe8R\\xd5\\xa8n\\x1a\\xd5\\xa9\\x03\\x8b\\x887\\xd0\\xcd\\xb3\\xb6h\\x1cqZZ\\x1e\\x84\\xd0\\xba\\xb2D(xz!\\xb7I+\\x04gm-\\xd1qs\\xb0\\xb1\\xec\\x82a\\xb4\\xb45\\x0e\\x1f;\\xff!\\xcb\\x12\\x12\\xa6C\\xbbw\\xaeX}\\xf3\\xa9\\x90\\xda}\\x87\\xc7|X\\xa3\\x06\\xc5\\x9d\\xd6\\xd2\\xfb\\xbc\\xbe\\xa4\\x1b6jk\\x13\\xc59\\x03\\x9b2\\xc4\\x852\\xb6\\xcav}p\\xab\\x05\\xf3\\x81\\xecm\\x15\\x89\\xf1\\xe1\\xadb\\xf5\\xdeV7^O\\x19V\\x99\\x1a\\xfcH\\xae_}Y\\x0fm\\xad>\\xa3\\xec\\xb3\\x9eC:@/+\\xb7=\\\\7+\\xf5\\xf1\\xa3&F\\x1d4z\\xfaQ\\xcf\\xd8\\x91\\x86\\xda\\xb8a\\xfcJj\\x19\\xc3\\xc1\\xc8\\xb21\\xac`\\xeaO8\\xdc\\x0e\\xeeR\\x81\\x9e]G\\xe6C\\x1e\\xaf\\xe22\\xbe\\x19\\xbcL*\\xa1i\\x04\\x1d\\xf8\\xc2p\\xbdX\\xfc\\xc5\\xf6\\x05a\\xe5\\xed#\\xaeS\\xb2FPW-\\x16x\\xe9\\xcb\\xfaG]\\xed\\xc1\\xab\\xddaR\\xf7\\xe0\\xd0\\x0b\\xd8{\\xb3@es\\x0b\\x06\\x03\\xe9\\x8e\\x1b(9-s=\\x80\\x08\\x06\\xf6\\x97\\x17o\\x7fz%\\xc2\\xae9u\\x82\\xaa\\xb0\\xc8d\\xdb\\xc3U\\x98\\x7f\\xe6\\xa6?\\xf8\\x93\\xc7V;mb%\\xd1\\xfat\\xcd\\xdc\\x8a\\xa7`be\\x1ef\\xb0p\\x9bF\\xcex\\x02\\x8c\\xba\\xa4\\xc6b,\\xf7\\xa4\\xe3\\xf9\\xf5\\x90\\xd7e\\x95\\x93\\xf32\\x8c>\\x7f\\xcaCth\\xb4\\xbc\\x11\\x86\\x9cK9\\x01X\\x86q\\x88\\xb1\\xac\\xa05\\xd1EYXhy\\xbc\\x8c\\x0eY\\xb2\\xf6\\xaa\\xff\\xca;,\\x9c\\xd8 \\xe4HZ\\xb9\\xd5\\xf2&W_\\x8a\\xb9\\x0e\\xa3U\\xea}\\x1a\\x81s\\x0c\\x8e\\x91f!h%\\xd1\\xb7\t>l1\\x07\\x9dz\\x1f(\\x85C\\x9a|$\\xa6\\xed\\xd0s\\x0b\\xca\\x94\\xd6\\xa0\\x84\\n\\xbd\\xf6\\x026\\xf7\\x1d\\x96\\xcdK]\\x95Z\\x08>K\\xdd\\xe9x\\xeaiV\\xf7B\\x01\\x8a\\xef\\xf7w'\\xe8\\x88\\xbe\\xbf\\xdb\\xaa\\xd7\\xc8\\xcb\\xb1\\xde.\\xaf\\xb7\\xc7\\xff\\xdd\\xe7\\xff\\x1ex\\x92\\xc5\\xcbc\\xc5\\x9dv/\\xc66(S\\xcc\\xda\\xdc\tlCip,\\xd4\\xcc\\xd6\\xdc\\xa9\\xa5\\x9ed\\x00\\xe7\\xeeY\\xeap3;Mm\\xa0\\xdd\\x85!ru\\xcd\\xc4.\\x17\\x82\\xcf<L\\xe7\\xd9\\xea\\xd1Q\\x89xZ\\x0f\\xd7\\x11\\xde\\x0e\\x1a\\x17\\x83\\xec_\\xe9\\x83\\xe3]:>\\xb8\\xa3Q\\n#\\xc8\\xbd\\xe6\\x00\\xef\\x1e<>\\xae\\xce\\xe3\\x03\\xfapV\\xea\\x11a\\x89$%\\x8a\\x1e\\xc4\\x84\\x87\\xf7oE\\x1f\\xcax\\xb9\\xce\\xb0n\\x10=\\x99\\x05\\x8c\\xfdg\\xf4\\xe4\\xea\\x9bDO6\\xdd\\x8f\\xbfOPa\\xd3H\\xf0ZF$N,7v\\x91dY\\xde7:\\xcb\\xd0\\xe2\\xe2]\\xf8\\x0e\\x15\\xce#\\x14#\\x8c\\xe1\\x18\\\\\\xa1\\xc1\\xc81OZ\\xbfD\\xc1.\\xaa\\xe9\\x0f\\x10\\xdcw@\\xd5\\x10\\xb4|\\xd4\\x9a @X+\\x18\\xad\\xb7\\xba\\xcc\\x13xs\\xf5h\\xac\\xe6_R\\xe5\\xb2!\\x05\\xdb\\xf27\\xfa\\x18D\\xd7]\\xa6\\x0b\\xad1\\xf4\\xe4Nh\\x0f\\xc3\\x1a\\x9b\\xdf6\\x92\\xdd\\xe1#Ah\\xb0\\xe1`\\x14E\\xaf\\xfc\\x0c\\x90N\\xd6\\x9dw0\\x0e\\\"\\x9b\\x00\\xb1\\xa6\\x12\\xd8\\x04\\x1f\\x0e\\xbb.qoB\\x99\\xded2\\x8f\\x0dTf\\x8f\\xaefQ\\xdaO\\xc6\\xbd\\xb7\\xce\\x02\\x0d\\x1e\\x15\\xd6\\xae\\x8f^l\\x85\\xfc\\xe2\\xf2Z}\\xf0\\x0c+\\xb62\\x06VbNm\\x19m\\xea>\\x16\\xbe\\xdc\\xf0\\xa8:\\xa1k\\xa4\\xd7\\xb0\\xed\\xca\\x87\\xc2\\xe7\\x99\\xf0\\x0c\\x95(\\x1e\\x8efcC\\x00\\xe9\\x04\\xdf\\xe8&G\\xd9\\xb0\\xcc{\\x1d\\x9a/2+.\\xba4\\x9fZu\\x83q\\x80\\xcf\\x8c\\x12xv\\xbf\\x96\\xc5(\\\"\\xcf\\x98\\x07\\x00S\\x1c\\x17|X y\\xc0\\xe41\\xf2\\xab\\xc2\\x87)\\x93\\xb5\\x9eu\\xe3BhF\\x96\\xd4\\xf8\\x90q\\x80\\xfa@\\xa0/\\x16\\xa9\\xb1\\x1d}6}\\xc7Xn\\x98\\x91U\\xbf=\\x18\\x15\\xd0\\x8f\\xbf\\x04\\xc3.\\x9f\\xa2\\xeb5y\\xf01\\xedo\\x13p\\xfd#\t\\xa3\\x92\\x07L\\xff?\\x0e\\xcf\\x84\\xec\\x9c\\xc0M\\\\\\xc4%,\\xcbr}\\xfc\\xe4\\xc9\\\"\\x8c\\xc8U\\x96}\\x0e\\xae\\xe3rY]\\x05q\\xf6$\\xa7\\xdf=\\x99gQ\\xf1\\x04?\\xde\\x99\\x93(\\x9b\\x93<X\\x96\\xab\\xe4,\\x16\\x01\\xc6O\\xb1If\\xbe>>\\x81\\x9c\\x999\\xe6\\xa3\\x91\\xc7,\\xd5\\x9d\\xed0\\xbf.f\\x17X\\x8f\\xa4\\xb4\\x89\\x9f?\\xbey\\x99\\xad\\xd6YJRY\\xaf\\x96\\xc3\\x08&\\xba\\xf2\\x8c\\xb5\\xa1\\x06\\x7f\\x17\\xa2\\x89,\\x1f\\x1e9\\xbe\\x89\\x1a_\\xf4\\x87\\x8b?i]\\xff\\x18\\xe4\\x10\\xee\\xba\\xaa\\x8e\\xc1\\xf4\\xb83\\xfa\\xba\\x0fq;\\xacz\\xdcs\\xea\\x06\\x9d\\x1b\\x89\\x82\\xb2q4\\x8f`\\xe5\\xebb\\xf1I\\x87\\xf7\\xcc <\\xac^\\xb8?\\xb4\\xff\\x12\\xeb,\\xb7&\\xc1\\xb78(\\x97a\\xf9\\x11[+\\x98\\xd8E)z\\x1d&\\x05Z>\\xba\\x18H[y\\xf7)\\xaf\\xf8\\xab\\xb1\\xfe\\x8a+\\x17r\\x11\\xcfW\\xfdn\\x19w\\x9a\\x8f\\x88\\xb9)\\xf9\\xf6\\xb46^\\xf0\\x03>\\x04\\xa5\\x9a\\xfdO\\xe0\\x94\\x1f\\x94\\x8d6P\\x94v(\\xa5\\x9e|\\xbf\\xa5n\\xd7\\xf7\\xf0iI\\xe0\\x8a\t7W\\xd9\\xbcJ\\x08,\\xf2l\\x05i6'\\xc1\\xaf\\x85__D\\xee\\xf4\\x1ah\\xdf\\xeb\\xcd\\xfd[X\\x95\\xcb,\\x07\\x80\\xd7$\\xcf\\x8a\\x02^\\\\e\\xd5\\xe7e8\\x8f\\x7f%Kx\\xb6\\xc0\\xc2\\x7fc\\xff\\x04Y~\\xfd\\x1c\\x9e\t\\x88\\xd4\\x94\\xb5\\x1a\\x15\\xf6H\\x8aA\\x12{\\xf9\\xa4uu\\xb9\\x1c\\xaa\\xc5?CC\\\\\\xb4\\xb2\\xe4A\\x93X\\x0f\\xef\\x94\\xf2\\xb2\\xbe\\x10\\xed\\x98+\\xd0le\\x11|\\xfa\\xcb\\x87W?^\\xbe\\xf8\\xf8\\xf1\\xc5_.\\xcf\\x7f\\xfe\\xf0\\xe1\\xfd\\xc7Op\\x06\\xd3\\xc9\\xde\\xd3\\xbd\\xc3\\xdd\\x83\\xbd\\xa7p\\x0c\\x93\\xf1\\xd3\\xdd\\xa7{\\x93\\xc3\\xa9\\x96\\xef\\xd6\\xd2ah\\xc5\\x95\\x94\\xe2\\xa4\\xc3yF_7\\x86\\x17\\x1f\\xc3\\xf4Z\\xf0\\xc9\\x14(%\\xf1\\x1cI\\xd190Os\\x865:\\xcc+l\\xb3p\\x85\\xbd\\xd3\\xcfqZ\\x1e\\nCc/\\xb8\\xbcDl\\x7fy\\x89!,\\x1a\\xf9\\xea\\xb1b*\\x82l7o\\x00}\\x9c\\xe8a\\xe7\\x18\\x8c\\xe5\\xb8\\xd3\\xa1\\x85y=\\n\\x1b\\xc5\\x06\\xc2\\x88\\xcb5O\\x80\\x07\\xc4\\x97\\x95 \\x85\\x9an\\xa0i\\xba\\xbd6H\\xde\\x1b\\x14\\x0d6\\x12\\x0b\\xeb\\xb7\\x15\\x10\\xcaN\\x89MZ0\\x1c\\xc9=\\x9d\\x8b\\xda,\\xb9\\\\\\x12\\xe6\\x86\\xb2\\x88\\xf3\\xa2\\xac\\x11?\\xac\\xaa\\x02\\xedgB(Z\\xd1j\\xe5G\\x10A\\xf6x\\x08\\x0f\\xb63\\x105\\x01i\\x0cr\\x1c\\xcb\\xd6Db\\xfd,\\x0c\\xaae\\x0d\\x89\\xd9l\\xe8;!\\xb5Q\\xe7\\xcdm\\x87BnR\\xdf\\x91~\\xda\\x9c\\x89\\x16\\xcf-W\\xe5lo\\x03\\x91\\xcf\\x83\\xfc\\xae\\x1dK\\xbb\\x83\\xedFW\\xbf\\xe0\\xea\\xae$?\\xe1\\x89\\xf6\\xd1\\x0co\\x0c\\x98\\xeb\\xba)\\x86g\\x8d4K\\xbf\\xaa\\xdfe\\x8bEA\\xca\\xef\\xe8\\x11\\xc8*4G\\xbf\\xca\\xaat^\\xd8vW\\xef\\x936\\x0e#p1\\xf7\\xf0\\xd8\\xb3\\xf6\\xc3\\xee\\xdc\\xf0~0\\x00A#cI\\xa5\\x00n\\xa7<\\xf0o\\x0b(\\xd4F.\\xd6*x\\x81\\x8fM\\xc5t\\x99\\xcd#\\xe9\\x04L\\xa4\\x0b\\x10\\xd1\\nk\\x06H;\\xaf\\x8a\\xc1\\xd0O\\xd9\\xfdc\\x93R\\xb1\\xc5\\xd8tx\t\\x1a>\\xc7\\x05\\xad\\xf3\\xc9\\xdf\\xdf3\\xe7P\\xa7*\\x17\\x87][\\xbfU\\x04q\\xf1\\x8a\\xc3\\x0d7\\xb58`\\x7f\\xe7\\x08\\xd0\\xe2H`\\x83!\\x056\\x94\\x1a\\xf6\\x98n\\x12H\\xf8t\\x0c\\xf70g\\x1bg\\xf6\\xd7\\x02\\x8e\\\\]\\x16T\\xa8d\\x86\\x8e\\xb7y\\\\\\x12\\xd7\\x02U\\xd9'u\\x96\\x02\\x97\\xf9\\x042#\\xfc\\xb1\\x0f\\xb1\\xf7\\xe8\\xed\\xf2\\xfaL\\x1f\\xc5C\\xd7\\xb2\\xa8\\x15\\xba\\x141uH\\xb3j\\xd5\\x08\\xdc\\xc3\\xd2%\\xc2\\xe7\\xc9<Hh\\x06\\xca\\xeeA\\xb30i\\xed\\xe2\\xcb\\xbd\\xb2]\\x12D\\xd9\\xfa\\x8e\\xbec\\xd1\\xfdR\\xcf\\x1a\\xc0\\xa6\\x0d\\xb4A\\x80\\x83\\xae\\xb1#\\xf4\\x1d\\x04\\x12\\x03N\\x0cZ \\xe3\\xfd=8\\x9c\\x88\\x808\\x95\\x84\\xae5lo\\x9a&R\\xd8\\x167\\xc7p\\x07\\xc2Ol\\x8b\\x01\\x06\\\\\\x8f1\\xdd\\xae\\xce\\x0bZ\\xcf\\x80\\x0d\\x82Y6\\x90:\\x84e\\xe6\\x92`\\x1e\\x96a\\x83\\xd0Yk\\xacp\\x83e\\xc4\\xd3n\\x1e\\x82\\xd1\\xb6\\xf5u7j\\xf6\\x81\\x8d\\xd7\\x97W\\x90\\xff\\xf0)3\\x8b4\\xd9N\\x12\\x7f\\x96\\x9c\\x88,\\xa7z\\x18\\x12^\\x98\\x05\\\"\\n\\xee\\xed\\xcdv\\xfd\\x9dS\\xc4\\x7fk\\xa1\\xde\\x1e\\xb4\\xcb\\x1c\\xd3\\x9e\\xd1\\xcd4\\xa2\\x1es\\xa3\\x1c\\x9f\\xa7\\xdc\\xc3\\xff\\xbba\\xb3L:\\xa9\\xe2\\x05:\\xc0\\xd5\\xb7\\x8d .f\\xaa\\x0b~s)\\xf9\\xb9e\\xc4'\\xe6\\xc3\\xa2D:jb\\x1a\\x8cF\\x14\\x9f\\xcf\\xd2\\x0bs&8\\x0b\\x1bl\\x9e\\xd2\\xda:%\\xd1o}\\x99Z\\xd3\\xb1\\x03\\\"\t\\xe4\\xb4_\\xd6\\xb3\\x92\\x049\\xe9\t\\x8b\\xd0\\x80\\xd1\\x060J\\xf1t\\x7f\\x1f\\xb61Z\\xf4W\\xce\\xd0\\x90B\\n\\xeas\\xf3\\xfc\\x94\\xf2V6\\xaa\\xe5EY\\x92\\xd5\\xba\\x842\\x830I\\xb2(,\t\\xbfY\\x90\\x84\\xf95\\xa1\\x0cj\\x98\\xc2*\\xfc\\x12\\xaf\\xaa\\x15\\xd0\\x83v\\x0c\\xe3/\\x0e\\x8ch\\xab\\x8d\\xeexr\\xe0\\xa1\\xec\\x9d\\x92MF\\x8a\\xa7\\x06\\xd8\\xf7\\x03'e\\x8e\\xf3\\x05m\\xccR6\\xb0I0>\\x166c\\x08\\x906\\x9a]Iu\\x82\\xb8\\xf8SLX\\xda\\xfdv\\xb1\\xc9\\\"L\\xaa%\\x8f\\xb4!0\\xdb\\xa3\\xad\\xa9\\x99-\\xd5R\\x0e\\x11\\x1dK\\x1caX\\xe2\\x9b:\\xd9f\\xd7*pj\\xb3\\x1eIW(\\xc2\\x1c\\xc3\\xfb\\x9d\\x9cx\\xb5\\xa2\\xcf\\x8a\tQ\\xbd\\xe5\\x84E\\x14\\xc7\\x8eY\\xc9\\xc5j$a\\x19\\xa7\\x93\\xce*Wq\\x1a\\xe6w\\x96* )w\\xcd\\xe8\\x845\\x82d^W/U\\xb9\\xd8\\xe9\\xac\\xc1\\x08\\xed\\xdeQ\\xfc\\xec\\x96\\x9eu\\xc1\\xa1\\xe9.*\\xa6\\xdd\\xe3\\x89\\x8a\\x9d\\x9e\\x1a\\xe5br\\x90\\x90\\xbe:;\\x1d\\x95\\xa0\\x19\\xf7\\x14\\xbe\\xef^\\xc1%\\xf9\\xd2\\xdfJ\\n\\xcf\\x9f?\\x07\\x83?\\x114\\xdb\\x19\\x16\\xe4`\\xaf\\xbf\\xa9\\x1f\\xfa\\x16\\xb2\\xd37\\x1c\\xa0v\\x0c\\x19\\xba1\\xc0\\x990\\x96\\xac\\x86Ph\\xf6SvK\\xf2\\x97aA0\\x03\\x19F\\xa1k}\\xaa\\xebR\\xcd\\xe0\\xeb\\xa6\\x8bc\\x11w\\xab\\x9c\\x11\\x03\\xec\\xe7F\\x14\\x14\\xfd\\xf9\\x02\t\\xe6\\x83:\\xbd\\x93\\x98*\\x8b\\xfe\\xb8\\x01\\x01eM1\\xf2\\x05\\xdb1l\\xa3E\\xdc\\x92R\\xee\\x10\\x85\\x81\\xdc?\\x0eyNx.K\\xe4\\xce\\xf0\\x8d\\\"\\xa2\\xa3\\xd8}\\xa7.9D\\x90F+Ie\\x1ekp\\x94\\xfa\\xdcB\\x82\\x852\\xc6j1G\\xce\\xa5\\x1ccQ\\x88\\x04D\\xa5\\xfa\\xe5\\x08i\\xfd\\x94\\\"\\xc0\\xb2#\\x88\\x82\\x98e\\xdc\\xb9\\x0e\\xc0C\\xe0\\xc8]\\xb7OF\\x13\\xf6<e\\xf4\\x9a\\xbd\\xbb\\xada\\xfd\\xf5\\x1d?\\xe8\\x10\\x89q\\x9bE\\xca\\xb3/\\xf2l\\xc5\\x12Xx>h\\\\\\x99\\xc2J\\x91\\x86}\\xda\\x99\\xc01\\\\k'\\xcarB\\x8c\\xc2'\\xde0\\x81m\\xa4u|\\x8b\\x9c\\xc1\\x86t\\x1b\\xf1\\x85d\\x10\\xcac\\xee\\xc0\\x19\\x1e\\x86\\xae*\\x8d\\xe5\\x0f\\xe7Z\\x8d\\x95\\x93\\xb0(\\xdfX>\\xc0\\xb9c\\x12%\\xfb\\xec\\x8d\\xbc\\xcbM\\x98\\xd4\\x84\\xbd`WD\\xa0\\x8a\\x9c\\x93W\\xadP\\x14\\xe6\\x1b\\xad\\xaf\\xbf\\x05\\x98d,5\\x8b%\\xbc_(\\x1d\\\\s\\x8dB\\xa2\\x82\\xcd[,\\xa5\\x16`\\\"\\x05\\x86\\xd1\\x18\\xffM!\\x01'\\x04s\\x0d\\x8c\\\"=\\xc4\\x91\\x1b\\x17Za\\x01\\xc7ej\\xd1\\x8eTf\\x95\\x17\\xc4,*\\x91\\xa0\\xd8\\xa7L\\x18\\xd8\\xfc\\xee\\xbdWt\\xa5\\xa6>\\x84\\xf0\\x04\\xff-\\xf8\\xbf)\\xfek\\xb8o\\xad\\\"M0k\\x1b(\\x1f\\x06\\x0b\\x17U\\x89\\x8c]\\xc7<{\\xee\\xcfo\\xd2rr\\xf0\\xc3+\\x97\\xc0\\xf7r\\xb6\\x11\\xf1\\x98\\xef\\xb9\\xd5&H85\\xda&\\x8d4\\x1d\\xaaaN \\x83g\\x10\\x9e@6\\x1a\\x99\\x992\\xe0\\x9d\\xe1\\xf42\\x0f\\xc7\\x1fQ\\xf0\\xc1C_-8\\x1c\\xce`\\x07\\x16\\x9dr\\x1d\\xd1R\\xfd\\xa1\\x88\\xd2\\x9dy>\\xfb\\x1cF|\\x81\\x8az\\xdf\\x16tA\\xacMr \\xbb\\xc3\\xc2\\xd7\\xb2\\x163\\xd89\\xe5\\xa3\\xf1\\xf9*X\\x80\\xb3}mR\\x18A\\x01\\xcf!\\xac1I\\x08;P\\xe08\\xf9\\xaa=Gf.\\xdb\\xd9\\xe9\\x9arM<'<\\x88\\xed\\x9a\\xf1\\x80kx\\x06\\xc5\t\\xac\\xbb\\x16\\x1d\\x94\\x85\\x87\\x11\\xac=\\x16\\xa4\\x97.\\xfe\\xbaw\\xa5\\x81\\x9b\\xc0\\x98\\xfc\\xbb\\xf5\\x07\\xe3\\xeft\\xd62\\xcbq\\x80\\x0f1\\xa9\\xb7+3\\xd6\\xb3j@vt7k3\\xe0[\\xf5h\\x07\\xe8\\x061o1J!\\xdc\\xdf\\x9b\\xf8\\x18\\xa1\\x04\\x97\\x90\\xb6\\x81\\xe2\\xcd\\x05-\\xc3\\x9b\\xa3\\x90\\xe79\\xc4x\\x0chqLq\\x01\\xfea\\xee!\\xeb\\x85\\x9d\\x19\\xfc+L)/7\\xb68r\\x0bu\\xe2\\x92|\\xe9P=\\xe5\\xf0\\x1c2x\\x02\\xd3zh\\xf8\\xabK\\xfeP\\xb1\\xb3W\\xb1h\\x87\\xa3Q\\xd5\\x05>(\\x9aX\\x87yA\\xde\\xa4\\xa5K\\x82\\xa2\\xba*\\xca\\xdc\\xa5|B\\xe5\\xc3\\xd4\\xf3ar\\xd0!7g\\xd4\\x9a$(\\xac\\xccu\\xcb\\x19\\xbdi\\x98\\x8a&\\x1c\\x00\\xf4Dc\\x83\\x0e\\xcde\\xcf\\xa1\\xe1\\x8d\\xfd\\xd5\\xfd\\x19s\\nK\\xc7\\xc2C\\x95\\\\\\xdb\\xa0\\xd3\\xd6\\xd3\\xd5\\xd0\\x9e\\xec\\x06\\x03u\\x9b\\xb2\\x11\\xd2\\xecB\t8Q\\xb3\\xf2L\\\"\\xc6\\xb3\\xed3\\xc1Q\\x19D<\\xe4\\xc4\\x8b\\xd2M{$\\xfam\\xc0\\xf7\\xc0dy\\x9bL\\xfav\\xd8\\xa4\\x95\\xb5\\x19\\xd4\\xf0\\x97a\\x0d\\xff\\xd5\\xfda\\xf3A\\x9f\\x0fm{\\x90VC\\x0e\\xec\\xc0\\x83\\x93\\xf2]\\x93\\xaeZ}\\xb0\\xb6\\xb7a\\xcbu\t\\xc5NS\\x0f9\\x02~\t\\x19+!\\xed_\\xc5\\xf9M\\xcaO\\xc3!\\xcb\\x84\\x93R\\xb0\\xb1\\x7f\\xe0C\\xc6\\xb6=\\xf6\\xea?m\\x9a<+H~\\xf8\\xda\\x03\\xff\\xaa\\x8b\\x9fUY\\x08\\xf4\\xe9TXL\\xf4\\xd5\\xa7<\\xc8\\x0fw%\\x91<\\xa2[\\x85\\\\E\\x85\\xfd\\x0c\\x1b\\xd7\\x8b\\xaeq\\xa5RL\\xa1\\x9af\\x1c \\xb2\\xc5\\x10\\xf3\\x18\\x83\\x1ab\\x14\\xddv\\x81\\xcd\\x8c\\x85\\xf8\\xf0E~\\x93r\\x16\\x1bLS\\xc5\\x83N$\\xc6L\\x89\\xe2A#V\\xcaJ\\xef\\x1e\\xc1\\x19\\xec\\xc11\\xfb5\\xdd\\x853\\xd8\\xe5\\xbf&G\\x138\\x83)\\x1c\\xdbD/\\x08\\x91a\\x04\t<Ca\\x9f\\x90\\xdf%]4D\\x97\\xc1~]\\x07\\x9e\\xc1dzX\\x13rQ\\x87^\t\\xecq\\xfe\\xc4\\xd3e\\x9f/\\x1e\\xda\\x1d\\xe52&GS\\xd8fDl9\\x8b\\x99\\x81#\\x13\\x0eP\\xf6\\xc5\\xdd\\x9d\\xc06D\\x1e<{\\x06\\x07p\\x0f\\x07\\xbb\\xb0M\\x89\\xd7\\xe70\\x99>\\xad\\x87[|\\x83\\xe1Z\\x8c\\xf8\\xc5#\\x8f\\x8f\\x81\\x05\\xf6kz\\xe1kS\\xc9p\\xf4jY%\\xcdh\\xb2_\\xcfh2\\x85{p\\xc5\\x9c\\xe4)Vt\\x8a\\xd3\\xf1\\xdeS\\xfe\\xdd3\\xd8\\xdf\\x9f\\x1e\\x1dP\\x92\\x88\\x92\\xb3\\xfbOw\\xf7v\\xbdo:\\xff\\xbd\\xc7\\xcf?\\xac\\x7f\\xedn\\xb0\\x1ajYhY\\xa1Cm\\x85\\xa4%\\xab\\xd4%\\x0b\\xe9\\x92\\x1d\\xec\\xef\\xef\\xee\\x03\\x06\\xf4x\\x06\\x93\\xc9do2\\x99J\\xcbd\\x9c\\xa2\\x99$\\xae\\x8d\\xb1(_\\x84\\x9f\\xd3\\xb6w}\\xbc\\xc9\\x18tl!\\xf7\\xe7.(>\\xa0?\\x0f|\\x11\\xb5x\\xc1\\xc4\\xa8c\\xd8\\x86\\xc9x\\xba\\x0b\\xf7l\\x1397\\xb3\\x7f\\xb0;\\x1d\\xc3={\\xb5\\xcd\\x0c\\xc2\\xf9w\\x1e\\x05T\\xa3SH\\xda\\x10\\xdf\\x06\\xa5\\xfb)\\x12A\\x8c\\xd8\\x15\t \\x14\\xe3\\x14\\xbc\\xbc\\xafI>C8,\\xee1\\xc2\\x13\\x85\\x1b\\xf5\\x16 \\xe9.\\x1c\\xc7\\x0e\\x18s\\xb32\\x10\\x04\\xf4\\x16\\x06\\xd3\\xdcXz\\xc0`8\\xba\\xc9}\\xa6\\x9a{\\xdfCD\\xa5\\xedEv[\\xe8S\\xfeE\\x82\\xda\\xb7\\xbd\\xf0\\x81\\x04\\xe7Iv[\\x97t\\xef\\xc3\\xa8l\\\"\\xab`,\\xdc.\\xbbBT\\xdd\\xb9#S\\xa0\\x837\\xef\\xce?\\xbcz\\xf9\\xe9\\xf2\\xed\\x8b\\xff\\xef\\xf2\\x87\\xbf|zuN\\xcf\\xd3\\xd8&\\x8b;U\\x93)\\x9b\\xcd\\x82\\xcc\\xe5=\\xb1\\x13\\xed\\xf9\\x8cn\\xa4\\x88o\\x92\\xc9\\x92\\x9e=G<\\xb5\\x02M\\xb6J\\xb2\\xe3\\xb4\\xba\\x96Y\\x00\\xd8\\x81\\xa8\\xb3l@8H\\xf1\\xf0Q\\xed\\xb5\\xe5G\\xe21\\xc3\\x8e\\x07\\x1f\\xf6\\xa6\\x9cVZd\\x99\\xebY\\xc5\\xa1%e\\xc8\\x98\\xa5\\xe9\\xf6\\xb6p\\xeb\\xad\\xcb\\xdc\\x89\\x0f\\x13OR*\\xb6\\x8fjg\\x0c4h\\xe6\\xb0e\\x90\\x9d\\xa8\\xe7\\xca\\xf5\\xe8\\xc9\\xfa\\xfc6\\xfc\\xc2-\\xe4P\\xc5L\\xcf\\xd4:\\xcb\\x92\\xf3\\xf8o\\x14x\\x1cN\\x8e\\xa6\\xb4\\xe82\\xac\\xae{M\\xb6\\xc1\\xb6\\xb1\\x85\\xe2\\x0c\\xa3\\x1fo&\\xd8\\x1e\\xe0u$\\xb5\\x1f5\\xe9\\x05\\x0d\\x16\\x98\\x1dBjW\\x1a\\x8b2F\\xe3\\xb9\\xa237\\xd6\\xf1-\\xf6\\x93<\\x9c\\xcc\\xf66\\xff+@{U\\xc2\\xf3\\xb8\\xa9e\\x17LbF_\\x99\\xc3\\x9c\\x16\\xbe\\xd6\\x8a)\\xe0)wh7S\\xa3\\x9d\t_\\x1e\\x98\\x1a\\x01\\xc1\\xcef\\xab\\xbf\\x81\\xed\\xa7\\xf8\\x02Y>D4ca\\xd6$\\x1bB2\\xf3\\xbe3\\x93\\x05`\\xde\\xd4\\x0f\\x161\\x0b\\xea\\x86\\xc6\\x86j\\xa1Tb\\x00\\xf0}\\xa7\\x05\\x17\\xe1\\xe7\\xb4\\x08\\x17\\x83\\xe3\\xafX2\\xb5\\xe9\\xcdQl\\xf1-\\x9a\\x94\\\"\\xac\\x0cjk\\xcbmb\\xa1\\xdd\\xdf\\xc3V\\x19\\\\\\x8a&\\x0c\\xadG\\xd9j\\x1d\\xe6\\xa4\\xcf!\\x1bd\\xf3\\xca\\xdar\\x03\\xdb\\xd7\\xf4QF\t\\xd9\\x8b:\\xba\\xb7P\\xac\\xb0/\\x8c\\xb6&\\xcc\\xf0Eu\\\\\\xee2s\\x90\\x15{\\x8c\\x0d'\\xf5\\xaf\\x98\\xc5\\xa1\\xcfdN\\x92\\x99\\xd2\\\"k\\x98Q\\x86\\xde\\xe2t\\x8b\\xc3\\x98\\xc5\\x17xD\\xc9,\\xbe\\xe8B\\\"\\xa9\\xe0\\x1cY\\xff\\xad\\x0c$\\xf2c\\x97\\xddZ\\x89>\\xccw\\\"\\x94zh\\x8e\\x04g0Q\\xe2\\xe1Bs^\\x84\\xf9k\\xef\\x89\\x11l%W\\xfe\\x94-\\xe5\\x8fy\\xc2}\\x06\\x06\\xdf\\xca\\x84\\xe3\\xbf\\xc1\\x1ee\\x80\\x8d\\xc3?\\xa8\\x01\\x88)\t)\\x0c1\\xb3\\x18L'\\xf8u\\xe6\\xd5\\xc1\\xd0!\\xb3\\xa6\\xbc\\xfa\\xceI\\xe2\\xa24\\x99N\\xf2\\xe0{\\x90-\\x04P\\xb0YQZ\\x0c\\x1f\\x04\\x01m\\xa2\\xb1\\x11>\\x98[S\\x02$\\x18W\\x0b!\\x0ca\\x10\\xa4C\\xaa\\x8b!\\x89f\\xe9\\x85\\x95\\xdd\\x12r)\\x05=P\\xbch\\x86;f>IO\\x1d\\xa5\\x8d\\xc2N\\x9cW\\xdc\\x18\\xc5\\xce\\x06\\xca \\xbc\\xfa\\x9d\\xf6\\x8f>\\x153\\xe6FM8g|E\\xf4\\xd6\\x9e\\xb3\\x08\\xcd\\xb9mEg+dg\\x8fS\\x98\\xfb\\xa0Pz\\x12\\xfa\\xdc\\x1a\\xab\\xef\\x8a\\xdbp=9\\xe8\\xf3\\x0c\\x17\\x0c\\x0e\\xc6\\x8c\\xea\\xd2\\x13\\x95F=\\x91l\\xae\\xc9GRP\\x12\\xbb1\\x1d^UI\\x19\\xaf\\x13BWpr\\xb0s\\x15\\x97F\\xb4\\xa8(\\x1a\\xc6'h\\xbe[\\x9e\\xb0\\xe37\\xf5\\xe0\\x86\\xbb&\\x11Jm\\x8dZ\\xd9KA\\\"\\xd1e\\x17M\\x10\\x8b\\xa8.\\xcb\\xee\\xf4\\x9b.\\xcb\\xdeW.\\xcb\\xee\\xf4Q\\xcb\\xb2\\xd7Z\\x96]\\xcfo\\x8a\\xe82\\xb1\\x7fLZ\\xb8\\x0dV\\xeb`\\xef\\x9b\\xae\\xd6\\xe1W\\xae\\xd6\\xc1\\xde\\xa3V\\xeb\\xb0\\xb5ZO\\xcd\\xabu\\xa0\\x15O\\xd9?\\xfbZ\\xf1.\\xfbg\\xef\\xf1kk\\x8a\\x1f\\xd7\\xb5\\xbah\\x9e\\xdc\\xb5\\xc2\\x8a\\xa6\\xa3\\x8e\\xaa\\xc5~\\xb6\\x02\\x08\\x9c\\xc1\\x0b>\\x9b1\\xa5\\xcc\\x07\\x84\\x87\\x92\\xc7\\x93wh\\xf2\\xe9F+\\xf8\\x07\\x8d`\\x98\\xcd\\x99\\xb0\\xfa\\x1a#\\xdb\\xf4\\\\\\x9eO\\xe3Q\\xe2\\x0ck\\x17\\xfd\\xa6R\\xbd\\x91\\xda\\xd4N*D3<<tC\\xba@\\xb3Q\\xac\\xfd\\xec\\x94\\x8e\\x96\\xff\\xea\\xfd\\x98\\xa7\\x86\\xba\\xbf\\xe7\\xa6\\xd0\\xdc\\x99K2P\\xb6J7`\\x00\\xdd)\\x1e>\\x8a7\\xcda\\xb69Y\\xc1\\x10j\\x15\\x06Q\\xac\\xe2\\xe1\\x9d\\xbf\\xd8\\xa4\\xf3.:W<\\xbc\\xdd_7i\\xb7\\x93:\\x86a\\x14\\xb2xx\\xff\\x9f7\\xe9\\xbf\\xd7v\\x18\\x9a\\x86_m\\xd2p\\x075\\x0e\\x83(r\\x18H\\x95\\xc3&\\x9494\\xb3y;l6\\xbd\\xc4:4v\\xd1F\\xc6\\xfag\\x1e\\xf9Rx+\\x1e\\x83\\xcd\\xbd@~J\\xe6\\x8e8\\x02\\xc7\\x19j6\\x0dF\\x9a\\xec\\x81\\x8b\\xe4\\xd9dmA\\xa5T\\xa0N\\xfeZ\\x85Iw`\\x170J\\x1bzd\\x0b\\x122\\x146\\x9a\\x9d\\x88\\x87\\xe3\\x80\\xfb{\\x0e,kY\\x88\\xd9/\\\\\\x9bE\\x9c\\x16k-xr\\x17f\\xb2)F\\x98\\xffRK\\xca\\xdf9p\\x81\\x9f\\x9es\\xb3\\xe9\\x9a\\xae\\xa8\\xddy\\x10Fr\\x7f\\xc9`\\x15\\x96\\xd1\\xd2}\\x12\\xfc6}xr-2l\\x80#\\\"\\xe3\\xd6\\x8d\\xf1\\x10\\x80,\\xc8L\\x10\\x04\\xe0x\\x9e\\x0f\\xce3No\\xd4\\xe1r\\x9e;]\\xebb\\x91'\\xf5\\x1a\\xb5\\x7f\\xfb\\xad\\xd6y<\\x05\\xb3\\xea\\x9e\\xdb\\x0c!\\xa2v\\x84/\\xc8\\xb1^/\\xaf\\xed\\xb6\\xb4\\x17\\xcc\\xd6,naT\\\"|\\xdd\\x11\\x03\\x8bv\\xef\\xefQ\\x80\\x83/b\\x1d5\\x9b)>\\xee\\x8f\\x9e\\xd3\\\"@\\xfbh\\xdb|sx\\xce\\xc7C\\xe8_\\x9dnBM\\xfd^\\x17\\x02\\xad1{-\\xa4\\x03|H\\xeb\\xbf\\xf2\\xfa\\xaf\\xb8\\xfe\\xab\\xb9|\\x83\\xc4{\\x19\\xba\\x0e\\xec\\xd0\\xd3\\x83!\\xcd`\\x87\\x1e\\xa7P\\x96\\xe8e>T\\x1e7\\xdf\\xc0\\x00\\xc8B/\\x18s\\x15\\xacb\\x99\\xc24\\xbb\\xe3\\x13H\\x98!\\xedh\\x94\\xd8%\\x80\\xd1,a\\x12\\xc0\\xc5,\\xe9\\x94\\x00f\\x18\\xbc,\\xe1:sZ\\xdb\\x0e\\x83\\x1f!\\x01\\xcc\\xe0\\x19\\x1a!\\xa3\\x04\\xb0\\x82g\\x90\\xd9%\\x802\\x94\\xc2(\\xc2C\\\"\\xbbI}q\\xe3\\\\\\\\J\\x91%\\xd7.Ao[\\xf7o\\xd4\\xd9\\x9d\\x1aR\\x03\\x03\\xaavu\\\"\\x99\\xfc\\x7fmG\\x93\\xce\\x8e\\xd0C\\xdf\\x0c\\xc7l@L\\x8b\\xb9Y\\x93\\xb8L|$\\xddt\\x9f\\xf3_\\xadVj\\x0f\\x14\\x1d@\\x99\\x83\\xa6\\xe4,J\\xf9F\\xad\\x9b\\x8f0\\xc2\\xe0\\xb8x\\x1d\\xa7\\x18\\x97\\xc03\\x04d\\xe1\\xae\\x92,r\\x81p\\x8c\\x10\\x84\\x87\\x0f,P\\xc7\\xcc\\xe7\\x91t.<\\x16\\xc9\\x11\\x92,\\xbd\\xa6\\xfc\\xaa\\x88Fk\\x0f\\xa8q\\xcf\\x00\\x85\\x18D\\xea\\xc1\\x19\\x05\\xcc\\xac\\xd8\\x08\\x899\\x07Ay3\\xd9\\x9f\\x89\\xd5\\x1db\\x94_\\xdb\\x18K\\xa8pGO\\xea\\n]\\xacU,98\\xc9\\xc1{\\x9e\\xd7NM\\\"\\xe2\t\\xe3\\xef\\xf0\\xafA`_r\\xeeeg1\\xab\\xca\\\"\\x9e\\xd7A\\xa9\\xec\\xf1I\\xf2:\\xae\\x805^\\x86\\x02^U'Q\\xabJo\\x08\\xff\\xc5/\\xdbJ\\x0b\\x94c\\xde\\xf2^\\xd6k\\x18\\xdb\\xc5\\xfb\\xbc\\xdc\\xa0\\xcf>\\x8e\\x8b7y\\xb5A\\x93_\\xab\\x8a\\x80\\xa6\\xdb\\xdb\\x0d\\xba\\xed\\xe5\\xb1x\\x9b_6h\\xf3\\x1fN\\xd9q>h\\xf0\\xbd\\xdc\\x14Z\\xf3o\\xc4I\\xd9,u\\x01\\x98A\\x13s>\\xd5\\xbd\\xa6\\x98\\xc2\\xb1\\xdf\\xf9T\\x97v\\xfd\\xdf\\xf3\\xf7\\xef\\xfa8\\n\\xbe\\\"\\xe6\\x1bJ\\xdb9\\x06\\x11\\x0c\\xc4\\xccr\\xcc\\xc32<\\x06\\xdd\\x93\\x0e\\xe9\\xa3&oFp\\x19\\xe6\\xb9\\x88\\x0d\\xe6\\xf7\\xc3R-\\xf8*\\x05,\\xef\\xe1\\x14\\xf6\\xc6G\\x07\\xb6\\x90q\\xbfv\\xe1l!A3I\\x92\\x1ec\\x16\\xac\\x98\\x03\\xa3\\xce\\x97\\xd9\\x8c\\x992@\\xa2\\xc1)js\\xed\\x0c\\xe40\\x87\\xde\\xcf\\xff\\xa8S\\xfc\\x16\\x93{3drv\\x1bDw\\xcb&\\xf5t\\xb78r\\x95\\xd8\\xa7\\xbc\\xc1\\xb2\\xa6+\\xa9,\\x82\\xe3\\xb0\\xfbG\\x98\\xab\\x1c.F\\xe61}\\xd3k\\xb7\\x9ce\\x1dS\\x8f\\x07M\\xfdm\\xd7\\xd4\\x15St\\x8d\\xf1\\x90\\x877f\\xc3\\xcbk=^\\xc659\\xb1m\\xd7\\xf2Yv\\x01#\\x98\\xee\\x1f\\xc0\\xf7\\x90\\xcf2S\\x90X\\xd8t.\\x9f\\xba\\xe6\\\"4\\x12\\x13\\xd4H\\xb0\\xd8\\x18\\xf6H6\\x0e#\\x01E\\x04\\xef*NK\\xbb}\\xc7\\x08\\xc9 k\\xdc\\xb7O\\xf9]\\x9c^c`\\x13Lj\\x00W\\xe4.K\\xe7\\x82\\xf6ak6\\xd0\\x0b\\xf7\\xa5*\\x82@\\xa7\\xc8\\xc7K!\\xbes\\xd8\\x18\\x8ca\\x80\\xb8\\xb0D\\xc4\\x0f\\xb1i\\xb2\t\\xba\\xa8\\xf1\\xe3\\x9fY\\x03\\x03\\xe9\\x91\\xfe\\xf4\\xd8t\\xb6\\xe615\\x88$t\\xb0\\xc7\\xc1\\x9c\\x93/ \\x8b\\x17\\x06\\xae\\xe8\\x87\\x1ef\\x88\\xd4>\\xfd\\x84\\xdbS\\xef\\xe3\\x86\\x9b\\xf5\\x92\\xca\\xed\\xd5\\xadud\\xaf\\x17\\x1f\\xa6\\xaa\\xe1\\x0ewG\\x8b/\\x00\\xf5\\x10\\xdb\\x18\\x94\\xe7\\xd938\\x84\\xef)\\xfd{\\x061\\x1c\\xc3\\x04v \\xf6<\\xb4\\xd16\\xbc\\x184\\xe1\\x8f\\x1bMxoz\\xb4wt\\xf0tz\\xf4\\x8df\\xbdg\\x9f5iOk\\x17\\xa7\\xc5\\x16c\\xd0\\xe4\\xde\\x0d\\xbe\\x1f_s\\xb0lG\\xb5\\x03\\x9e<\\xfa|\\xfe\\xa4\\xcc\\xc88\\x9dZ\\xaer\\x7f\\xcf\\x16`\\xec\\xb3\\xa5\\xf6!\\xe6<\\xae\\xdc\\xc6t\\x97\\xbd\\xa3+\\xb07h\\x0c?>z\\x0c\\x87\\x961\\xecO\\xd9;:\\x86Cm\\x0c\\xf2\\xafB\\xa7\\xeb\\x86\\xd8\\xef\\x08\\xaf\\xb8aJ\\xeaS\\xf8\\xaf\\xff*}=\\x08&\\xe1\\xb9O\\xfe\\xeb\\xbf\\x88\\xcf0\\x05\\x0bC9\\xa2X\\xbb\\xbe!\\xa5\\x888RR\\xc4^\\x17\\xe5^\\x13\\x92\\x8c\\xe5\\xea\\x92\\xbe!\\xe2\\x1bR\\x7fC\\xa4o\\xca\\xba\\x04\\x93\\x1d\\x1b\\x03\\x985:\\xcf\\xda\\xea\\x1a\\xd7\\xc2\\x1a s#\\xf9IM\\x81\\xc1\\x8e\\x9eeE<i\\x1d\\xe67\\x16\\xe2\\x0c\\x0bw\\xa10\\xe7\\x9cN\\x889\\x19\\x93R\\\"\\x80M\\x04)\\x00S\\xd2p\\xdbAS= 4\\xf6CD5\\xf8\\xe9\\xd5@\\xb9Z\\xc9%3Bp\\x83T\\x9b 'd\\xf9F\\x07\\xec\\x13\\xc7mVr\\x9f\\xbdIM\\x1c\\x8dFt\\xda\\x84\\x0b\\xd7\\xbf?\\xa5t\\x8fw\\xc2\\x89Z\\xf6\\x0d\\x8c \\xbb\\x80\\xefM\\xae\\xddfR\\xd6<\\xe3\\x1f\\xfe>3\\x86\\x11\\xec\\xec\\x101\\xef\\x13<\\xda\\xe3\\x9e\\xe9\\xd2\\x0f\\xbe~\\xc2\\x87C\\x00\\x02o\\x90\\xd4s\\x9c\\xf8\\x9a\\x82\\x83o\\xdc\\x90\\x1e'\\x07\\xedc5\\xa8\\xd3\\xa9\\xa5Sn\\xe9\\x81\\x8b2\\xb9@\\x9c?l\\x1c\\xed\\xcd\\xfe\\xbaq \\xb5\\xa1\\x0cf\\xc88v\\xa7\\x8f\\\\\\x8f=}\\x1c\\xae}A\\xe4\\xa2)\\x16\\xb18\\x7f\\x93\\x83\\xa7O\\x9fN'\\x94\\x8b\\xa8\\xdf\\xef\\x0e\\x1c\\xf6#\\x97\\xaf5\\xec\\xd6\\x18.D\\xe2Li\\x06\\x93\\x83\\xf6\\x14\\x94Y\\xed^t\\x8a\\xf0\\xe9\\xb0\\xff\\xd7A4x~\\xca?\\x9fL\\x0f=.\\n\\xdf\\xe1\\xb4\\xe3:\\xbbu)\\x95\\x00\\xdf\\x03\\x06\\xf3\\xec\\x05\\x07\\x7f\\x0f\\xf0G\\x94\\x85\\x91`[~q\\x82\\xe4e\\x1b\\nf\\x1a\\x14\\xcc\\xbb\\x17)3,Rf]\\xa4l\\xc0\\\"}#\\x90\\x89\\xbe\\xd7\\xf5\\x89Gu\\xde\\xf7\\x80\\x11!v\\xa4{0\\x11\\xa9\\\\\\x07@\\xd7\\x0d\\x80\\xab\\x15\\x9a\\xb5\\xd7\\xf1F\\xf8UX\\x81\\x8bu\\xedw\\xa7O\\x0f\\xe8$S8c\\x8c\\xd0x\\xf2\\xf4`\\x0c\\xf7\\x90\\xc2q?\\x05\\xb2\\x01\\x8c~\\xf4t\\xd8$\\xee\\x15\\x10\\xfe\\xfbM\\xe7\\xdb\\x81\\xfa\\xcd \\xbd\\n'i\\xd9to\\xd0p\\x87\\xad\\xfe\\xf0\\xe1b\\xcf\\xedA\\x0f\\x00\\xee}\\xc3}\\x9dd\\xa1\\x01\\xba?n\\xb816\\xd9(\\x1a\\xb6\\xc6\\x82\\xeb\\x1b4\\x8co\\xb5j\\xadaL\\x86\\x0e\\xe3\\xc7\\xac\\xbaJ\\xc8#\\x97\\xe3\\xb0w\\x1cc\\xc1\\x80\\x0e\\x1b\\xc7#\\xd7\\xa3\\x7f\\x1c\\x93!\\xe3@\\xe6\\xd9\\xca\\xcdX\\x848<\\x9d\\xa7\\x82\\xe0\\x98\\x15\\x0b\\xaam_\\xea\\x06\\x04:2I=\\x96t\\xcc\\xe6\\x88\\x12\\xdbc\\xfce\\x1dN\\x1fx!H\\x13r\\xba\\x14\\x94D\\xdaB\\x93\\xac*#\\\"N\\xa1\\x84'\\x1039\\x90\\x15\\xbc\\xd1\\xca\\x9dP\\xac^I#\\x99\\xf0w\\\\\\xc9\\x14\\xabXW\\xd3`\\xa4$\\xad\\xa6\\x10\\x9f\\xd5+\\xba\\xb3\\x13c\\x808N*\\x18\\x964\\x16K\\x9a}\\xb3%m\\x11\\x15\\xdd\\x16,\\x86E\\xd5\\xd7\\x92\\x02\\x8b\\xfd}\\x1f\\xf5(\\xd6|?\\xb8;M\\x06\\\\\\xb7\\xf4\\x04\\xb4\\x96O\\x197\\xf9\\x1f4\\x11\\x13\\x05\\xf2\\xd5s\\x99\\xfaLr\\xdc5\\x9b3\\xc3\\xf5\\xf0\\x9b=\\x9b\\xb0=C\\x11)\\xa5\\xa9>(\\x1dl1\\x1b\\xfb\\x91\\x166\\xd2>\\xc9\\xc1\\x94\\xf2\\xef8I>\\x1b}\\x92|\\xee\\x86IN6\\x9a\\xa4\\x89Z\\xf9\\xeaI\\xee\\xf9\\x92H|\\xd0L\\x19\\xcd\\\"f;\\xdd\\x93\\xa6;m\\xca'\\x07\\x96\\xbd6\\x1cg\\xba2\\x1f\\xcd\\xdb\\xdfI\\x16I+\\xf3;l\\xff\\xe6+cY\\x95\\x89eU\\xa6\\xe63\\xb3\\xdb\\xbd2\\x93\\xc1+\\xb3!\\x8a\\x15\\xd2cyY\\xb6\\xac\\x06G\\x02\\xd4\\xb7\\xd0\\x03\\x86\\x8e6\\xcbN[\\xb8%f\\xa8d\\xc7\\xe0\\xe6m\\xb6\\x07C\\\\lF,=Qz\\x1f\\x89\\xc1+\\x19\\xdd\\x08\\x917wJb\\x7f\\nsL\\x86\\xdb\\xe9\\x84.\\xf0\\xcb\\x10C\\x14\\xf9\\x1a\\xdew)\\x96\\xaa\\xe0\\xf9s\\x18S<\\x1a~\\x13|\\xb5!\\x05\\xf0?e\\xa3;\\xa8\\x88\\xaf\\xdal\\xb1\\x17\\x12\\x81\\x915\\x04\\xc6\\xc6;>\\xfa\\xfb\\xec\\xf8\\xefB\\xa0L\\xa6O}\\xd8\\x99L\\x0f7\\xa7Q\\x14\\x1d\\x12]Z\\xe6\\x930\\xf9\\x1a\\xfa\\xe5w$_v\\xa7O\\x0f\\xe8\\\\Q\\x860\\x0c\\xb4\\xff\\x8e4\\xcc\\xefH\\xc2<b\\xa2\\xbf#\\x1d\\xf3;\\x921M>\\x04_K{0`\\xca\\xdd{;\\x80\\xc4QH\\xa2\\xaf\\\"h~Gz\\xc6\\xbeD\\xea\\xf5U\\x8c$\\xc4-\\x1e\\xb0\\x8a\\xff@\\xc4\\x8fE\\xfe\\xd4\\xbd\\x8a?i{\\xd6\\xe7U\\xd1\\xf4\\xb4\\xe9~i=M\\x06\\xf5d\\x93\\\"uw\\xf5\\xe3c&e\\x13\\x14m\\xd4U\\xef\\xac\\xa2l}\\xb7\\x19\\xdd\\xd2\\xa4\\x9b\\x1c\\xa3Cd\\xed\\\"\\xd8\\xd8\\xd5\\x97\\x9a\\xa7\\x97\\x94\\xa5\\xa41E\\x90+\\xd0\\x0fI\\xdd\\\"Wq\\xe45\t\\x88\\xce\\x0b\\xcc\\xfb\\xb2/\\xbdS\\xdc\\x8a\\x84\\xd2\\x0cP\\x1eVO\\x13\\xa4\\xcb\\xf0\\xa6\\x0c\\xf3kR\\x9e\\x97a^\\xf6gC\\xad\\xcdx\\x80\\x19kj\\xc30\\xf7PdU\\x1e\\x91\\x0dz\\xc8\\xbb\\xc6\\xcbZ{\\x95\\xce\\xfb\\xdb\\xcaU\\xe7\\x8bz\\xf5\\xd5\\x1d\\x95\\xec\\xaf\\x08\\xc6^\\xda\\x916Jy92Z\\xe5\\\"A\\xcb\\xf4[\\xb99n=\\x12\\xc8\\x8d\\x1b*\\x06]\\xe6\\xcaA\\xec\\xb1#$M\\x0c,]\\xc2\\xe4\\x04b\\x9e\\xd5`g\\x07\\xcd\\xc2b\\x18\\x01\\x03\\x92\\x14\\xd6\\xd1_\\xa6\\xb8/\\xb5\\x93\\x11eA&d\\x17X\\x18\\xaf\\xcd\\xb2\\xfe\\xb105\\x9aY\\xda\\x06\\xfd\\x1b\\xf3\\xb9\\x14\\xa4\\xac\\xf3\\xb8\\x94\\x8a\\xa9N\\xca\\xcc\\x9e2\\xcf\\x9c\\x0bS\\xe8\\xfd\\xba\\x00\\xc1\\\"\\xc6\\xf4\\xf6\\x1b\\x00\\x02\\x83\\xd3\\xd5\\xc6\\x99\\xadEz\\x02\\x0c\\xa9\\xc1\\xd1\\xa6vC\\x8c\\xe9s%\\xb8\\xd0\\xfe\\xc4\\xe7Y7\\xfa2#\\x81\\xec\\xe2$\\x07,\\xb7Y\\x1e\\xd1\\x87n\\xe9t\\xff\\xa0F\\xd4\\x96\\xf8h\\xf6|\\xabz\\xb2\\x19C><\\x9b?{\\x9d\\xf1{h2o\\xcb\\xb2c\\xbfj.\\xe0\\xdc\\xe6Ul\\xf3\\xfch\\xf5\\xc7s\\x97\\x98\\xf2\\x9d\\xf3\\xc5b\\xa9\\x92\\xacF\\xbf\\x1cF\\xca\\xe0\\xe7\\x19\\xc3\\x0dj\\x91\\xd5*\\xfa\\xfd`O`\\x0c\\xe7\\xd1\\xc4\\xcf\\xa3\\xed\\x9b\\xa1Tf\\x1bl\\xe3\\xcc\\xab%\\xba>SF{\\xcc\\x93\\xc8\\x8d}h\\\"{P,gL\\x0bo\\x87'\\x06\\x8b}\\x04\\\"L\\x93a\\x01\\\"viB\\x85\\xb6|r\\xacB\\x96Q\\xf8g7\\x15)\\xeds)\\x01\\xa6\\xd7\\x91\\xbc\\x99\\xb2\\xdc\\\"N\\x95\\xf9\\x10\\xd6\\x13\\xe0\\xb6z\\xe8\\xa3\\xacLB\\xc0\\xc5j\\x96\\xc1\\xbfB\\xb8\\x81\\xcd^\\xd9\\x8a\\x91\\xa3\\x8e\\x81N\\xf6op\\nOf\\xff9\\xfa\\xe5\\xc9x\\xe7\\xe8\\xc5\\xce\\xff\\x0bw\\xfe\\xb6sy\\xf1\\xe4\\xda\\xe6z\\xf3\\xba;\\x84+\\xa0r\\xf6\\x0c\\x9c1:\\xfd\\xabiB\\x8f\\xb5\\x02ul\\x96\\x0e\\x7f\\xb6*\\x00o\\xcc\\x01\\xda\\x08\\xf0\\xa88\\x13x\\xd2\\x9b\\xe3\\xb2q\\x90\\x89Ex~S^\\x87\\xee\\x14*1\\x0bl\\xd3J\\xec\\xe0\\xc1s\\x8c\\xe6\\xbd/P\\xf4\\xfe\\xd3\\xdd\\xbd\\xbd.\\x80\\x1b\\xf3\\xfcp\\xf6\\x1aP_\\xd2\\xe7\\xb0\\x7f\\xb0;9\\xea\\xabL\\x1f\\x96\\x88b\\x97\\x8eggB\\x07\\xc3\\x93ILw\\x8f|\\x98\\x1cM|\\x98\\x1c\\x1eu\\x80u\\xf1DYZ\\xc6ie\\xce\\xa5$\\x1e{\\xf6 \\xe0c\\xaf@\\xa4~\\xb2J\\xf5\\xe4\\xe7\\x1fi\\xf4\\x98\\x10\\xaa\\xb3Jo/\\xdd\\xd9\\x95\\xf0\\x98\\x1c\\xecN\\xad)\\x04\\xc53lU\\xfc\\xdfy\\xc8)\\xf7\\xd18\\x80\\x11\\xa5\\xebvx\\n\\x82g\\xcf`\\xc2\\x0c]v\\xf8l\\x8c-\\x88\\xb4\\x89\\x9c\\xef\\x190\\x1f;&o\\xeeo\\xca\\x12U\\xf4\\xdd3\\xd6\\xe1\\x84eg\\xe9K\\x7f\\xc0\\x07\\x93v\\xcf\\x83\\xef\\xdft\\xbc7\\xb0\\xf7\\xe9f\\xbd\\xc3\\xf3\\xe7\\x98\\xcb\\x00\\x03lcB\\x83\\x94\\xfe\\x9a\\x1e\\x0e\\x1a\\x16\\xee\\xd3\\xb0q\\xedn>.L\\xba0\\x9d\\xee\\xb1\\x10\\x1ep\\x00\\xdbt\\x848\\xba\\x0d\\xc6\\xda\\x03\\x1aq\\x1e<e\\x83)\\xce\\x80H\\xa7\\x15es\\x02\\xeb\\xcc\\xe2E&7\\xc9\\xe6\\xbb\\xf7\\x88\\xf9\\x1e\\xd2\\xf9\\xee\\xf1\\x90%t\\xfa\\xf2\\x84\\x1f\\xb7\\x06\\xadR{L\\x8f?\\xa8\\xd5\\x94\\x9f5\\xee\\xfc\\xa1\\x13Y\\xe7A\\x995\\x19x\\x1a\\xde\\xa6\\x13\\xcd)a\\x8b:C\\xae\t\\x92 (\\xf3x\\x85\\xe1q\\xe8\\x1f\\xae\\xc7\\xf3 \\xae\\x930\\\"\\xee\\x93\\xff\\xfc\\xa5\\x18\\xdd\\xffR\\x8c\\xfe\\xe5\\xc9\\xb5\\x0f\\x8e!S?}\\x1e\\xdc\\xd2\\xab?\\xf9\\x1b\\xd6\\xf3\\x1a\\x92w:,x\\xdcI\\xc3|\\x8b\\xa8\\x92\\xa8B\\x19\\x9d\\x82sj\\xf9P\\xcc\\xa1\\xbd1n90M\\xd1_{\\x98E\\xd5\\x97\\x8bq\\xc5\\x8c\\x05\\xc14>(\\x14!\\x92\\xb4&V\\xd2\\xdar\\xf6\\x99p\\x86\\x19X(i+\\x93\\xab\\xfbu\\xd6\\x7fy\\x8cw\\xa6\\xe3t'\\x13>\\xb5\\x07\\xbfS\\xb8&h\\xa8\\xd4}\\xea\\x05,\\xe8|\\xd3q\\x19\\x90/\\xeb,/\\x8b:\\x85\\xf1\\xe0\\xd6\\xf6\\x0e5\\x8a:f\\xc5GZ1\\xa5\\xd3\\x9cY\\x86a\\xf0y\\xd0\\xfb\\x0b\\xc7<\\x02\\xfb\\x89\\x15'\\xa7\\xc0\\xefU\\xc6\\x8c\\xae6\\xfdb{\\x1b\\x90\\x0d8=\\x95\\xee\\xdd\\xc3f\\x93\\xda\\xdd\\xf5\\\\\\x16\\xb1\\xdf\\x07'\\xcaIX*~m_\\xb1\\\\\\xbbOw\\x8d\\xeb\\xb5\\xfbt\\xcf\\xb0`\\xb4|_+\\xafx\\xf9\\x81V\\x1e\\xf2\\xf2\\xa7\\x9e\\xc4\\x0d\\xd4\\x07\\xbbh/\\xe6\\x0d\\x8f\\x0e\\xbac\\xd0}\\xa6\\x1c?\\x03\\x0f\\x9f)\\xa7sV\\xcfk\\xad\\n\\x0d\\xa2\\x84\\x84\\xb9\\x8b\\x87\\x9cX\\xb3q\\xddt\\xa7\\xd4FQ\\x10)\\xdd|6\\xbe\\xf0!\\x9fMt\\xbb\\xff?\\xb4\\xffRd\\xc0t\\x0ctWT\\x89\\xd0\\x9c$\\x04c\\xfc\\xc4j\\xf95\\xa1\\x102S\\x0b\\x97!\\xdd\\xd7J-,\\xb0f\\xe8+{_l\\xb6\\xf7O\\xf7,gH\\xf9\\\\_5c\\xf8\\xfb\\x13HwvN\\xda\\xf0\\x17\\x05\\xa8n9K/p\\x01\\xa5\\xbc\\xd1\\x1aU\\xc9K\\xa5,\\x9f\\xe6+\\\"\\x8ff\\xf0\\x90\\x1b5\\x92\\x88y\\xdad\\xc9!\\xf4/\\xf2\\xe8\\x8b\\xf9\\xf4\\xe81k\\xd8,\\xdf\\xe5\\xe5<,\\xc3\\xcbK\\xe3j\\xe4.\\xf1\\xe0\\x0c\\xd2\\x99E\\xbeW\\x17\\x1f\\x83\\xb3\\x0c\\x8b\\xa5s\\x01\\xc7\\x90\\x06\\xabp\\xfd\\xd8\\xf9\\xec\\x8d-\\xe0s\\xa2_{\\x06\\x0e\\xf0v\\x8b\\xa2\\x8d`f\\xc6D#9\\xcb\\xe8G!\\xe5c\\xc7<\\xb1\\x80\\xb0\\xc9d\\xf7\\xb1\\x83CP#NH\\xec6\\xd2N\\x8aY\\xf3\\xaf\\x18\\xeb\\xd3\\xb1a\\xa8\\x9a\\xa8a\\xd8Hmbbz\\xbaY\\x0c\\x01q\\xea\\xdbb\\x1bT\\x12a\\x14N\\xe3\\xb1s\\xc6\\xd8\\\"\\xaa\\x04\\xe8\\xd8\\xe8\\xbd\\x81\\x9d\\x98\\x1e\\xb8\\x9d1=l\\x1b^\\x17\\xa7*XB\\xf3\\xa8\\x94:lh\\xc6\\xd6\\xf5\\xd8\\\"\\xc1\\x0d\\xc9\\x0b\\x8a'j\\x0dS]TG\\x86sn\\xc6\\x81\\xe3u\\xd7\\x98\\xd0\\x1a\\xb5]\\x8b\\xb9\\xc6!\\xads\\xa6,{\\x1bO\\xa4\\xe4K\\xf9)\\x8e>\\xab\\xb1\\x98;bK\\x82\\xd8#Q_\\x96B\\x97\\xb6\\x08\\x0f\\x94\\x8e\\xba\\n\\xa3\\xcf\\xc6\\x18\\x0f\\xa2%[\\x98\\xfb\\x9b&\\xab$\\xb4\\xc3J\\x9b\\xbf\\x11\\xb1\\xb7\\xc2.b\\x1c\\xa3&\\x8d{\\x02\\xd5\\xf6$\\x80\\x14\\x16@\\x81XI\\xb7+X,\\xb6\\xd8\\x93\\xdf\\xb1\\xddb\\xbd5}\\xe2\\x0f\\xc0k\\x86D+\\xe7\\xfa\\xcd\\xac\\x83x\\x1e\\xfa\\x86\\xda\\x93\\xdb\\xf1\\x9b\\x0e\\xb5\\x95{U\\x7fzG\\xdb\\x93\\x89\\xf1[\\x8f\\xd6\\xb7ir\\xc4\\xd35\\xe0\\xde\\xd8Z \\xcb\\xc1\\xe9}b\\x1ci\\x88\\x16|\\x8a\\x1c6\\x137\\xc1\\x83lV\\x8dF\\x17\\xf2-\\x99U\\x1dq3\\xe1[\\xac\\n\\x8bX\\xcc\\xa5\\xc4}\\x0bb|\\xdd\\xc7\\xe2? U\\xdc\\x801\tN\\xcb,\\xda\\xee\\xde\\xa6,\\xda\\x81\\x89*\\xc8y\\x96B\\x13y\\x9f\\xf5\\x91\\x8eqJ\\x81 \\x99q\\xae3m\\x14\\x13\\x0f\\x86\\xe6*\\x9by\\x86\\xe0L\\xeb\\xf7R3\\xe2\\xaf\\x98e{\\xa3\\x98\\x9c\\xa7\\x1ek\\xfe\\xe4\t\\xb8\\xf4\\x02L\\xa1\\xa5\\xa2\\x84\\x1c\\x8e\\xc1\\xcd\\xdc\\x9cN\\xcb\\x9734V\\x9e\\x0f\\x99\\x1b\\xb3H\\xb0\\xd5\\xd0\\xccr\\x88\\x1aL\\x8a\\xaa!\\x01\\x88\\xd3\\x8cc\\x04\\xde\\x80gD\\xe3\\xa6E\\xa1#\\x1c\\x9a~M\\x19b/\\xee2\\xc5H6\\x0fO\\x1c\\xab\\xb8\\x85\\x01\\xf8\\xc0%5.1ghKYf\\xe8\\x98\\x9fh\\x9e\\x13\\x1a\\x7fJ\\x7f\\x8f\\x15?\\xe4f\\xee\\x03\\xb2\\xae\\xfd^so\\xb6\\xc6\\xb4)\\x03\\xf3\\xb7\\xfd\\xce\\x83\\xcb\\xa5|\\xa3\\x1b\\x93\\xbafZO\\xbeH\\xa9\\xbbwp\\xe4\\xb9\\xce\\\"\\xcb_\\x85\\x91\\x08\\xa5\\xf5\\xa8f%\\x1e\\xe0H\\x17?p\\x1e\\xe0H\\xe7\\x0d2\\xce\\x1b\\xe8\\x10\\x8d\\x891\\xf6\\x9e\\x1eJ\\x8b\\xe2n\\xc6\\xd0\\xf9\\x94\\xfa\\xe2\t\\xbd\\x8d+\\xdb\\xca\\xf4\\xf1\\x0c\\xa6\\x94~5\\xd8)\\x94p\\xc6r\\x15s\\xf3\\x8d\\xd2g\\xc9N\\xab$\\xa1'\\xbcPP\\xd7\\xf4\\xc2W\\xa4#\\xa8N\\x0cy\\xe2!\\x16g\\x15#\\xd5\\xa6\\xa8P\\x16v.N\\xe4\\xf0\\x80\\x91R\\x19\\xa1e\\xa1Zv\\x8b\\x01\\xd9##]\\xcc\\x93A\\x1a\\x12\\xa2\\xaa\\x99 \\xd3v\\x05\\x92V+\\xc2_g\\xed\\xd7\\xb7y\\\\\\xb2\\x97\\xa1\\xf2\\xee\\xc1\\x87\\x02\\x19\\xc7\\xd8-\\xe8\\xb0\\xe8\\xcc\\xa2\\xe6\\x90z\\xc1\\xf5\\x90\\xa8\\xd3t\\xc3\\xf8V\\xf9\\xb00\\xb3A\\x96]\\x89\\x1a\\xd3\\x18\\xf3\\xe6D\\xca\\xe6\\xecJ\\x9bC\\xc1\\x99\\x14\\xba\\xe8\\x182\\xce\\xe1\\xf3\\xf7\\x14\\xae\\xa5\\xea\\xfb\\x149\\x1c\\xb9S\\x1e\\xc1\\x87nh\\xd4\\x8cAz\\xa3\\x1d\\x06q\\x10\\x8a\\xe6 \\x84\\x86\\x83P\\xb4\\x0e\\x02\\x8fa\\xde\\xde\\xf4kR\\x1a\\xb7\\xbc\\xa0\\xe5\\x86\\x9dV\\x8fB\\xd8}\\x14Z\\x89y\\\"\\xbe\\xdb\\x11\\x1d\\x0ff\\xc3\\xf9\\x16 I\\x92\\xe1\\x1c\\xdaD\\xa9\\xc1\\x8f\\xaf^\\xbf\\xf8\\xf9\\xa7O\\x9c\\xb0\\xcc]\\x0d\\x0e\\xb3 \\xe7\\xc70K\\xdd\\xfd]O\\xcb\\xdeO\\xbe\\xac\\x938\\x8aK\\xfe\\xfa)\\xdd\\x16w\\x7f\\xf7\\x90\\xff{\\xe4I$\\xcf \\x18hgP\\x05\\x8d\\x0c\\xa9;m\tp./I\\xf16\\x9bWZ>\\xd6AKG\\xdb\\x93\\x05\\\\\\x8a\\xf5C\\xea\\xd6\\x1abwz\\xc0AI\\xea\\xee\\x1eq\\xaa;u\\x0f<\\xd7\\x11&\\x1b\\x9f\\xc2k\\x01Z\\x9c\\x97\\xe7\\xe7\\x1f\\xab\\x84\\xfc\\x14\\x17\\xa5\\xff\\xf2\\xfc\\xfc\\xbc\\xbcK\\xc8\\x8f$J\\xc2<\\xa4#\\xa1e\\x7f\\xa2p\\x85UHb\\x92\\x96\\x1fIT\\xe2\\xcf\\x1f\\xdf\\xbf\\x95\\xfff\\x8d\\x8b_\\x9f\\xb2\\xcf$e?\\xc22\\xfc\\x94\\x87i\\xb1 \\xf9\\x9b\\x92\\xac\\xb0\\xf0u\\xcc;\\xfd\\xf7Oo\\x7fz\\x91$/\\xb3$!8y,\\xd1~\\xbe\\xce\\xf2\\xd5\\xab\\x84\\xd0[\\x8c\\xbf\\xcf\t}+J\\xde\\x92y\\x1cbco\\xe3\\x15\\xa1\\xe8\\x96\\xa5\\xe9}\\x17\\xae\\xc8\\xfc]6'o\\xc3\\xb5O\\xff\\xc5:\\x1f\\xc2\\x98\\xce\\xe1\\xaf\\x15)\\xd8\\xd0?$\\xd5u\\x9c\\xf2\\x7f\\xd8\\x97\\xe7\\x7f\\xfa#K&\\x87\\x15\\xce\\xff\\xf4\\xc7w\\x88\\xa5\\xc5\\xaf\\x0fa\\xb9<'\\xd7\\xf5\\xcf,NK\\xf1CZ\\x85\\xf3?\\xfd\\x91\\xcd;\\xcb\\xd9\\xa4\\xcf\\xd1D\\x95\\xa1sV@\\x97\\xfb|I\\x08\\xfb\\xfc\\x13eg\\xf20\\xfa\\xfc\\x92/x]\\xc0~eU\\x84#r\\x82b\\x9d\\xc4\\xa5\\xeb\\xf8\\x02Z\\x8cO0\t~X\\xcb\\x80\\x8b\\xd1\\xc8\\x04g\\x11\\x1e\\xce\\x8a\\x8b\\xf6\\xbd\\xa7\\xe0%\\x9fE\\x867h0I\\xe9\\xf2E#\\xf4V\\xa14\\xe6<\\xdeJf\\xd5\\x05\\x13\\xd2%(\\xf9\\xa0@\\\"\\x9bE\\x94\\xab\\xc8\\x02\\\\\\xd7\\x9e\\x13\\xaf3<\\x14\\x8e\\xfe\\xf6P[\\x1am*\\x96\\x13\\x02D\\x0eH=\\x1e\\x86\\xf5\\xd0\\x87\\x9dI\\x1f)e\\xbb\\xec\\xdd\\x94`m\\\"\\xd7\\x10\\x80\\x12\\xf1\\xf72L\\xbf+\\x81\\x0e\\x06V\\xa4\\\\fs\\xc8R0\\xe6\\xeaii+7\\x1b$\\x07-\\x83Y\\xca\\xa9\\x0d\\xeav\\xd2Y\\xa8\\xc7\\xef\\x13o\\xa6\\xbe\\x1e\\xa1\\x87\\x19\\x16ZR\\xa4s\\xe3+\\xb1\\xe3B\\xc8\\x8b\\x80Mlc\\xd3\\x9f\\xa1\\xe5\\x8eF\\x91<z\\xbf\\xd8\\xbc\\xcd\\xad\\xdfg\\xb8\\xb6\\xf3\\x91\\xa57$/\\x81\\xabC\\xcb\\x0c\\xd6y\\xbc\\x8a\\xcb\\xf8\\x860\\n\\xcf\\xe9;\\xbb\\xf6}~j$\\xcc\\xa7\\x13\\xb3~\\xf1H/f\\x98\\xe4h\\xea\\xb9\\xce\\x9bW\\x97\\x1f>\\xbe\\xff\\xf4\\xde1h\\x1aeY\\xcc\\x83\\xfa\\xba\\xd0^\\xb7`\\x0d\\x1dl\\xc9\\xa9(w2=\\xf4\\\\'^\\xe4\\xe1\\x8a\\xe8\\x1d\\x89'G\\xe8b\\x13\\xab\\\"\\x92$AA\\xc1l0\\x8f\\x8bu\\x12\\xdeQ\\xac\\x97f)q|\\x9c\\xfb\\xa1\\x17\\x84\\xeb5I\\xe7/\\x97q2g\\x99\\xca\\x83\\\"\\xa7\\x80\\xd2\\xf95\\xbc\t\\x8b(\\x8f\\xd7\\xe5\\xb1\\xe33\\xabV\\x12DYZ\\x92\\xb4\\xfcs\\x9c\\xce\\xb3\\xdb`\\x9eEH\\\\zA\\xb6&\\xa9\\x8bn\\x03,j\\xa7\\xf3\\x8c}\\xfa\\\\T\t^\\x9f2\\xc5\\xf1\\xb3_\\x9e\\xf0W\\x98\\x81)\\x88\\x92\\x8cE\\x8c/\\xf08\\xbd>\\x81|g\\xe7\\xc4\\x03\\xae\\x9a\\x94t\\x8d\\xb3l\\x96_\\xd8\\xad\\x02\\nWS\\x89\\x9a\\xaf5O8\\xcf\\x94\\xd7\\x94\\xa4\\xed\\xe7\\xa7\\x8c\\xf0\\x89\\xabf\\x04m\\xdb\\x0c\\x93\\xa2\\x12\\xb7\\xf4\\xfc:\\xdce\\xe8\\x83\\xfa\\x9aK$)\\xc68e\\x0eX\\xb4j\\xe1\\xaaY\\x95\\x08\\xd2\\xe0\\xc7\\x10\\xbb\\xa9/'\\xe8\\xed\\x07\\x87\\x02}\\xa0\\xf7hDb-=~\\xae8\\x96\\xf6\\x01?\\x9b\\xa4\\xabx\\x17\\xbe\\xe3\\x0e\\xce\\x1eW\\x84\\xbb%\\xfa\\xf5\\xb0\\x10\\xa8\\xa9\\xb71\\xcf.\\x11t\\xbb\\x9e\\xeb|&w\\x85~\\xf2\\xd9\\xa5U,\\xcc7\\x1av\\x8e\\xe1\\xa3\\xee\\xc1\\xc5?\\x98\\xec\\xe7\\xf1\\xa34\t#g\\xce\\xe5e\\x94\\xe5d\\xe7\\xd7\\xe2\\xb2X\\x869\\x99_^:\\xa2O\\xf3;\\x8a\\xe8\\x1f;\\xa1XL(f\\x13\\xfa\\xed\\xa1o:6\\xc4\\xe9DYZ\\x94y\\x15\\x95Y\\xee/\\xc3\\xe2\\xfdm\\xfa!\\xcf\\xd6$/\\xef\\xfc\\xb8\\xf8 \\xce\\xef\\xfb\\x85\\xbf\\xe6\\xc5o\\x8aW5\\xbf\\xe4\\x97\\xd9OY\\x14&\\x84a\\x03_\\xa0\\x05\\x9fc\\x1e\\x99j\\xdbl\\x95'{^\\xb00\\xcaTtQKf&\\xf6\\xfbV\\xd6\\xcc\\x98\\xa3\\xcau+\\xc6#\\x9er\\xdb\\xf9\\xb2\\xb9\\xc6\\x18\\xd0\\x98\\x99\\xd4\\xa0\\xb8\\xa5\\x0d\\xcdUfs\\xcb\\x10PA\\xc8,\\x94\\x17\\xbd\\xfb\\xb7!W9\\x9d\\x1cy\\xee\\x96\\xec\\xeeBq\\xcb\\xbe\\xc7s\\xde\\xfb\\xe0\\xb0?\\x1c\\xbf\\xe3\\xb0\\xa1\\xfd\\xc9%]\\x8a:S>\\xf7O\\xbaD\\x83\\xaff\\xc8\\xbe\\x1d\\xc5I\\xe8\\x8d\\xb7g\\xb6\\xaf\\xe1\\xed\\x9a\\xa1\\xaebHvf\\x17\\x041@\\xda\\xee`\\x9e\\xa5*\\xffI\\x9f\\x07\\x06\\xbc(\\xe0\\xc6\\xe5m\\xe66\\x92\\x8d\\xeb\\xad\\x9d\\x19&\\xc2\\xfb\\x99X\\xf7v\\xc3[\\xb071\\xcb\\x15[\\x9cm\\xebF\\xd4r\\xd7\\x02\\x89\\xb7\\xbc[]\\xa4K\\x08\\xd5\\xf1\\xbb^\\xefm2\\xed:A\\xfd[\\xd5%d\\xaf\\xf3\\x11\\xff\\x9c\\xce\\xc9\\\"N\\xc9\\xdc\\xa1H\\x84\\xc9\\x8f\\xf8\\xabwU\\x928Fg1\\xa4E;\\x119\\x0e8\\xbf3\\x94Jc)g\\xc4\\xe0\\x98\\x02QX\\xa7\\xe6\\xd5\\xf4\\\\\\xe8\\xd1\\xca(\\n\\xbc\\x12\\xb1\\xe7q\\xac\\x9d\\xa1\\xb0\\x08\\xb5\\x00\\x0e\\xab\\x80\\xc3u+v\\xca<\\xcfFV\\x03KBCP\\xe3 m\\xdd1T=\\x80\\xc1D\\x02\\x8c-\\xa8?\\x0f\\xd3y\\xb6r7\\xdeM!\\x92d\\x86\\x8a\\xaeC\t\\xc2(,]}\\x17\\xe9xK\\x1f\\x1c\\xef\\x92\\xd2\\x8e\\xa3Q*\\x92\\x04q\\xf8\\xb1{\\xf0x\\xb4\\xbbk\\xbe\\n\\xfb^M\\x8f\\xb6/A\\xee\\xc6\\x1c\\\\\\xc7\\x9c\\xf4\\xe3\\xf2\\x93\\xc7\\xae\\x00\\xdd_\\xad)fA\\xf4\\x9bn\\x8a7x^\\x93\\xddn\\xaa\\xe7\\xa8\\x9fS\\xfd\\xef\\xa0z\\xf6\\x9fZ\\xf0\\xf1\\xbe.\\xf1\\xcb\\xcc \\xaao\\x12\\xff\\xbb\\xf1\\xf1\\xc1\\xc4\\xb4\\x00\\xc1b\\xc8>Rn\\xc2^\t$h\\xdb\\xe6\\x92\\x10\\xa3\\xad\\xf3l\\x15\\x17\\x843&\\xa5+O\\xc4\\xea\\xc5\\xa4y\\xb4\\\"\\xd3$\\xfdN\\x0d\\xd2\\x9e\\x1f\\xc29|\\xe0}Id\\xa5=\\xf3!\\xea.\\xd2\\xdalX~\\x1e\\x04:\\xceI\\x91%7\\x84\\x03\\xd0\\xba\\xf0W\\x96\\x858\\xd7\\xddZ\\x1e\\xbe\\x82\\xff\\x98\\xec\\x99\\xa5\\x05\\x93\\xf1#O/\\xb3?m\\xb2JJk\\xc5n\\xc6\\xffq\\xd0L~\\x04\\x0e\\xcc3R\\xa4\\xdf\\x95\\x98\\xf7g]BN\\xae\\xc9\\x97-\\x8b\\x8e\\x94\\x83\\xd3\\xaf\\xba\\xd0\\xf4\\x82b\\x8e\\xe4\\xfe\\xabiD\\xeep\\nO\\x82'\\x9a|\\xc7\\x88j\\x9d'\\xc1\\x13\\x07f\\xe5\\x85K\\xb4\\xbd\\x128\\xb6\\xb5p0\\x04o\\x93Y~\\x81J%\\x1f\\xb6\\xac}@\\x0f.7-\\xef\\xa6z\\n\\xf3\\xe5'A\\xa3\\xfb@\te\\x1b.Tn\\xeaN\\x0f\\x0ft/\\xdc\\xb8~u\\xa8\\xbfB\\xd2\\xceD?\\xc4\\x01W\\xc3 \\x85\\xd1\\xf6\\x08\\xc8\\xeb\\xf7g=\\xc0DPE\\\\\\xe7\\xa8\\xed\\xd8\\xf1\\xc0\\xaf\\xad\\x84\\x8e2\\xd02\\x90\\xe0\\x04\\xcb*\\xad\\xbcFPS\\x17I\\xe2\\x94\\xb3f\\x8e\\xc7\\x96\\xa1\\x9a\\x0c\\x83*+\\x90\\xe5\\xc3\\x91\\xb6\\x8c!\\x9b\\xf6\\x0ckuWi9I\\x0f\\xd2\\x11\\x10\\x93\\xd9p\\xd7N!s\\xeb\\x1d\\xf3:\\xb7\\xccBPW2A\\x9d)@\\xb1s\\x0f\\xff\\x1e\\xfb\\xb7\\xc1\\xd8\\x87\\\\G\\x82h5u\\x0f6d\\xb6L\\x82\\x9d\\xd4\\x9d\\x1a\\xc9\\x9bC\\xb3\\x01\\xc7dl\\xf6CAi\\xc6c\\xc1l\\xcc\\x1d\\x94\\x98\\xc0G\\xfc8Eb\\xf4\\xb7\\x0748j*\\xfc\\xa6[3:\\x97l\\xf7\\xd0\\xbd\\x1bC`0\\x0f\\x84\\x98\\x87\\x9f\\x0e)\\xf3[v\\xb0\\xb9U\\xb0p\\xb5\\x08\\x06\\xbd\\xd4Q{;\\xb8\\x00\\xf6\\x9a\\x94\\x92\\x84\\x89\\x0d{C\\xbf\\x91\\xdd\\x03}K\\x84\\xcf\\x90\\x99\\x12\\xdd=\\xd4\\xad\\xde\\xb9\\xcf\\xd0\\xa1\\xceQp\\x9f\\xa1\\xc3\\xe9?}\\x86\\xfeA}\\x86(\\xaf\\x94\\xbaO=\\x1f\\x9c\\xb7\\xe1\\xfa[9\\xa1\\x1d\\xea\\xde%\\xdc\\xebdj\\xf6:\\xd9\\xdb\\xd5\\x0f ;P\\xfa\\xf1\\x0by\\xedG\\xfb\\x81\\x18\\xe1o\\xc9\\x11\\x93|\\xb628\\x06'k\\xe4\\x0dR\\xd5\\x8a9\\xba\\xc4n\\x89\\xe7\\xa1\\xa4\\xe7\\x81\\x82\\x0c\\xc6\\xb6\\x86\\xfd\\xc0U_3z\\xae\\x8f\\xc6\\xe3\\xa7\\x93\\xa3\\xa3\\xe9\\xfe\\xde\\xd3\\xbd\\xf1\\xd1\\xd1\\xa4-nx\\xf2\\x9f\\xee\\xd9\\xf1\\xf8~6\\xd99\\xba\\xf8e\\xfe\\xbd\\xf7/O\\xfa\\xd6\\xc0\\xa2\\x86\\xc1\\x10>|:FZxk\\xcb%\\xd2U\\x13\\xfa\\x13\\xc2\\xb2\\x9f\\xc8F\\xae13v\\xe3hg\\xeb\\x94\\xf9\\xee\\xe7AI\\x8a\\x12u\\xba\\x88\\xb1\\x84\\x0b?\\xcb\\xffy\\xcaC\\x97\\x96\\xf0\\xac\\xd7\\xefd\\xc8J\\xf5\\xad\\x82\\xed$Xb\\xeft\\x0c\\xf7T\\nu:\\x08m6\\x17\\xc2\\xec\\x84\\xd5r\\x1e\\xa2\\xb7\\xe1\\xc9/\\xc1\\xfd/3\\xf7\\xecx\\xf6\\x9f\\xb3_..\\xbe\\xbfwg\\xcew\\x17\\x9e{v\\xec\\x9em\\xfd2\\xf1f\\xff\\xf9\\xcb/\\x17\\xf7\\xbf\\xfc\\x12x\\xdf\\x9f\\xfd2\\xf1~\\xb9x\\xd2\\xbe9O\\xfe\\xf3\\x97\\xdb\\xef\\x1fu@\\xb8\\x7f_\\xa3o\\xde\\xd2\\xc2\\xdf\\x8bm\\xe8>A\\x8a9k\\xaa\\x90bu\\xc1U\\x96%$L\\x9b\\x12\\xc5Ik\\x0bY1z\\xbe*q\\x9c0\\xbaX&\\xff\\x12_\\x10\\xb6Cq*d\\x88\\x1b\\xa9\\xf9j|\\xd4\\x96\\xe42\\xf15\\xb9!).\\x9d\\xf2\\x13I\\x03!\\xe1^\\x85_~\\x8a\\x8b\\x92\\xa4$o**\\x855\\xb3/\\x8d\\xac=\\x84|C\\xd0\\xd5\\xd9Xlo\\xcc\\x04\\xda\\x9a-8\\xedi8\\x1bD4k[\\x00\\xda9L}H\\x83Wt-_\\xad\\xe2\\xb2D\\xdb{,k\\x10\\\\\\xb3\\xf2\\\\\\x0d\\xa1\\xbe\\xd5\\x16\\xbd\\xa9\\xc3\\xa9\\xe3\\xb7\\xea\\xfb\\x89\\xf6}A\\xf4\\x1av\\xa8a3\\xd1\\x06\\x91\\xc9\\x18\\xdd\\xc3\\x99.\\xd7$\\x9cH%c\\xeduV0K\\x8cN\\xabm\\xf3\\xb9\\xf2\\xd50N\\x0f\\xea\\x8c\\xc8*\\xee\\x8e\\xc8 )\\x11,\\x96\\xcd1\\x8f&(\\x1fsW\\xbb\\x06\\xbf=Pr\\x81\\xd0\\x999M\\xd4AwK\\xae\\x16\\xe0k\\xee4\\xdf*gF.\\xedr\\xe1\\x97i\\xa2\\xd2x|\\x0e\\xd9\\x14\\x97b^\\x91!9[\\xb0\\xb0\\x1fb\\xf1\\x0dY7\\xe9\\xec\\x17\\\\f\\xc7\\x1d\\xf4~N\\xa3\\xb0\\xba^\\x96>Ti\\xb1&Q\\xbc\\x88\\xc9\\xbc\\x9e\\x1b\\x0e-\\x00\\xf7;\\x9e}\\xd7\\xf1L\\x927\\xd6\\xdf\\x82\\xd9t|)\\x99\t\\xefB\\xa9\\xf6\\xd0Z\\xe3\\xac\\xc9\\\"\\xcaW`V^\\xd8\\xc1.\\x83\\xcb\\xa9\\xe75\\x0e~\\x9a\\xed\\xb9i\\xc9\\xba\\xfc\\xf8\\xd2&G\\xbfE\\x9ah\t\\x7f\\xd2\\xe5\\xca'5\\xea\\xab\\xfb\\xb4y\\x17\\x16\\x17<k\\x17\\xbeb@\\xbfY\\x87\\x9dNi\\x94\\xeal\\xc5\\x97L\\xe2\\x88)\\x98\\x9a\\x8d\\xf0\\xd1?-\\xe5~a|\\x80\\xba|\\xae\\x8e\\xc1\\x13\\xd3\\xddl\\xf5\\x87\\x9c\\xcbf\\x1dR\\x84\\xcf\\xcc\\xc9\\xb9mb\\x1d\\x0dE\\xb1\\xea\\xac\\xb89g4+.\\xb4!\\x9aq\\xf8\\xd8\\x06e\\xc2\\xf9\\\\\\xc0\\xa4>r\\x82\\xde\\xb8\\xaa}\\x92\\xb7,\\\"\\xdcD4\\xdb\\xf6\\x91\\xed\\x84\\x92=\\xa0J\\x813)\\xb9\\xadG\\xbf\\xcd2\\xe8!\\xdct\\x1d\\xe9\\x8d\\x83\\x0c|\\xee\\x92@\\x0c\\x89\\x92\\xfc\\xcd/$\\x87}\\xfd\\xfa2\\xae@\\xbb\\xd2\\\"\\xcaaS\\xc4\\xc2\\x06\\x11\\x91\\x9aOn\\xe0\\x14fZ\\x91\\x0f\\xe4\\xc2X\\x91\\xf8\\xa6\\xcet\\xb0J\\xbb\\xbb\\x0d\\xf3\\x94\\xcc\\x81\\xa5\\x0b8\\xa5\\xc8\\xbb\\x85ZP\\xdbjD\\x9b\\xc7\\x06D\\x84\\xddT\\\"\\xf6\\xb0\\xde\\x1d\\xb7)x\\x0e\\x15vi\\x19\\x0dsa\\x88\\xb2\\xb4\\xc8\\x12\\xc2\\x80\\xbf\\xeb\\xb8i6'\\x1e\\xd0*\\x18>s\\x9d\\x15E|\\x95\\x10P\\xc8\\x84\\x15Ye\\xf9\\x1d$$\\xfc\\x0csR\\x92\\xa8$\\xf3\\x00\\xfeu\\x0eI=\\xeap>\\xa7e?\\x17\\x04\\x08\\xfbJ\\xc7\\xf6\\xae\\x07e\\x06q\\x1a\\xe5\\x84\\x02\\x9b$^\\xc5e\\xe0\\xb4\\xb6\\xb4\\x89\\x93j\\xa4\\xbf\\xc4\\xf8\\xcb<\\x8c\\x90\\x08U\\n\\\\\\x91\\x0e\\xc9v\\x932\\x14i\\x98\\xaf\\x96^\\xb3?\\xf9\\xf67\\xbaY\\x82\\xc2\\xa7(Hy!\\xd1\\x95&dS25\\xd2*\\xbb!b\\x0et\\x98\\xb1\\xc7\\xe3\\xbb#\\xc2\\xa3\\x9bNT\\xf0#\\xa0Y+\\x82\\x92\\xfcKXi57\\x10o\\x00\\xf6\\xc9\\x96#\\xeeYkud}kyS\\xfb\\x7fQB\\xe9w\\x81`\\xd8\\x8c\\x0e\\xbf\\xf4\\xcb\\xdb\\x11w5^\\xb0\\xfbl$$j\\x0c\\x901a\\x1a\\xddQ\\xa1s\\xcc\\xddT\\x02k\\x94\\xea\\x97V\\xf5\\x14\\x83\\xbdr\\xd9T\\x0b\\x16)\\x90T[Q\\x15\\x98\\xaa/\\x19<\\xd5\\xe3-\\xab\\xb8\\xd0p\\xa4jlX\\x9d@\\xb8\\xb3C!\\x8e!&\\x0d\\xf0\\xc5Hg\\xe1E3K\\xfa\\xab\\x99\\x17\\x9d\\xa5R\\xc0'\\xda\\xeeS<t\\xe1B3\\x11\\x01\\x82\\x900\\xbe}h\\x95\\xc6<B\\xf6\\xb8'\\x8a.\\x8b\\x82\\x996VYn\\xfd7\\x06\\xd05\\xef\\n\\xda\\xbd\\xa2U`D\\xdc\\xcc\\xafs\\x98|\\xcd>\\xf5\\xdf\\xc4\\xfe\\xab\\xf6\\\"I\\x86\\xf1Vf]{\\xebz\\xf4\\\\\\x85\\xad\\x8e97!\\xecYf\\x1c\\xddm\\xf3Lg\\xf4Q\t\\xa0\\xe3\\xdc\\xed\\xed\\xce{\\xd1\\x1e\\x92\\xb97\\xebA'\\xe8D\\xaf\\xccX\\xdf\\x1en8 \\xb6\\xb0\\xbd\\xd0nGLs\\xdb'z'\\xda\\xf9\\xc1\\xe5\\xd0`+\\x18y\\x9a\\xdc\\xc2\\xd3X0\\x83\\x1e\\xee\\xbe\tOi\\xa1\\x8bO\\xea\\xbbqbotV\\xdf\\x99\\x1dh\\xf1\\x1d|%\\xba\\xb6\\xd1v\\xa8\\x93Ag\\xd9D\\x96\\xb6i$\\x16'I\\xbf\\xc6g-\\xe2\\xcf@\\xf9\t\\x1a\\x1f\\x8eav\\xd17\\xd6\\x97Y\\x95v\\x0b\\x04tv\\xdf\\xa6\\x1e!\\xed\\x8dm\\x9f\\xb3\\xc68\\x83/\\x83!u&z\\xee\\xd4\\x15\\x84\\x05j?\\xbc\\xd1\\xb8\\x11\\xfb\\x0c;\\xc2\\x85\\xa9_\\xf5\\x0b\t5q.\\xcf\\xc5!{\\xbeO\\x0e\\x9fz^p^\\xe6$\\\\q\\xd7\\xdd\\xe0#\t\\xe7\\xe1\\x15Z(\\xe0\\xef?s\\xbfg\\xf6\\xc1\\xe4)\\xfa\\x86\\xfcX\\xad\\x13\\xf2\\x85\\xa9C1MLP;\\xf9\\xb1zGS,\\xfd\\x10\\x16\\xc5\\xa7e\\x9eU\\xd7K\\xa6\\xfb\\xd8?\\x1c\\xa4\\x83\\xed\\x0d\\xd1d\\x0ett#\\x92\\x99\\xb9\\x18\\x07MyW\\x93\\x7f\\x06\\x95?h\\xc7\\xc4$$\\x89\\x0b\\x8c\\xb4\\x02\\xc2o\\x83!\\xa1\\xb4\\xcc\\xef\\xd4\\xa2E\\x9c\\xc6\\xc5\\xb2\\xcf\\xc7\\x87>[\\x9dK\\xa0?\\xb5\\x96\\x8fujG\\xed\\xa52*{=\\x0e\\x93r\\xa3NQ~\\x84\\xd6%\\x0fD8({\\xa3\\x80\\xfa\\xdd5I\\xe7qz\\x1d]\\xed\\xecP6\\x8f't\\x81\\x1cW\\xd0\\xfam\\x9b\\xf2\\x10\\x0f\t\\xa2,\\xffL\\xe6\\xdcc\\xb5x\\x9d\\xa3]\\xac\\xa9XlRIy\\\\\\xd3g\\xa7\\x86\\x00\\xa8\\xf4y@\\xb5\\xb7\\xc1V\\xa8\\xe3r\\xcb\\xb7i\\xd5fCB\\xee\\xe4N\\x82\\xab<\\xbb-\\x18\\xf12sn\\xc6\\xc1d\\xec\\xf8@\\xff8\\n\\x9c\\x8b:\\xfaW\\x13\\x0f\\x8cA\\xc9\\xb1\\x0f\\xfb\\x1e\\x8f!\\xcd\\xbci\\xb2:\\xda\\x8f\\xda\\xdb\\xaa\\xbe\\xa6\\xe7e\\x88Z\\xd9\\xeb\\xf6pP\\xc8\\xe2\\xee\\xeby\\x04\\xa3 N\\x97$\\x8f9L\\xd8\\xd5\\xd36\\x08\\xb1\\xa3\\xf9\\x90\\xcc\\xc9:'QX\\x92c\\xbc\\xdeO\\x0d\\x0b\\xd8V\\x85'\\x1c\\xfa\\xe8z%\\xfa\\xac\\x99\\xc6i\\xec\\xf1\\x906\\xed\\x1aK4\\x81h\\xf2\\xa6(\\xde[\\x1e\\xfcfH\\x0c0\\xf7\\xe1\\x86\\xf7i\\x07\\x0cw\\xf8\\xb1\\xe5\\xe5\\xb5\\x114\\x03\\x97\\xaf\\x85H\\xb23X\\xc8N\\x1f\\xaaW\\xda\\xf7D\\xdcb\\\"\\x0b~\\x0dt:\\x82\\x12\\xa6\\xe5x\\x9b\\xcd\\xd1\\\\l\\xab\\x94\\n|\\x16V\\xd7m\\xd7\\xd3K(W\\xb6\\xc5\\xfc\\xf1\\xe8\\xf9x_\\xbf1PZ\\xb5~5X\\xc6\\xd7\\xcb?\\x87%\\xc9\\xdf\\x86\\xf9\\xe7\\xf6\\x16\\xd0'\\xc2\\x8a\\xa2\\xdd\\x7f\\xef\\xff`a\\x18\\xdd\\x19L\\x0e\\xe0\\x18&\\x07\\xbb\\x87{\\x96UP\\x86\\x02\\\\k\\xcbh\\xd3\\x18\\xce \\x86c\\xbe\\x16Q\\xf3\\\"\\xa2\\xe4H\\x04\\xc7\\xb0\\xf0\\xcd\\x8d\\xc8\\x19\\x15[\\xef\\xbd\\x06\\x94\\x87\\xc9\\xcb0I\\x98\\xc0g\\xe2\\x0b4@\\xe6?\\xe6a\\x9c\\xca\\x85\\x0c\\xe2i%\\xeaw\\x0c3\\xa8esR\\x94yv\\xc7\\x0b\\xcd;\\x92\\xe0;\\x9e\\xe7fN\\xa2l\\xce\\xbd\\xablxJ\\xa9C?N\\xea\\xdePB&R\\xc1\\x00kP-\\xbb\\xbf\\x07\\xa7*\\x17\\x87B\\x98$spX@w\\\\\\x9b*\\x03\\xb3R\\x9d\\xe2.\\x8d\\xb8\\xb8\\x04\\x7f_\\xe1U\\xfe\\x90g\\x11)\\n\\xed\\xe3,E_\\xd1N:O<[\\xdd\\x94\\x92\\xfc\\xdc41Moe\\xd8h>\\x9b\\xe2\\xc9\\x99 \\xfa.\\x8d\\xba\\xeb1\\xf7f\\x1cxteG\\x87\\x94\\\\\\xec\\x9f\\x95xJ}mE\\x07\\x0d\\x85Q3\\x07\\xe2\\xee\\x91\\x84\\xa4\\xbe\\xf4\\xb7\\xe2\\x86\\xa5?\\x0f\\x88\\x8a\\x89g =\\xba#G\\x8aggGB\\xee>\\x1a\\xe0\\xbb\\x0dNrc\\x1fr\\xcf\\x97\\xb0\\x94\\xfb\\x8as\\xe4~k\\x1f\\x98\\xd0\\x94\tE\\x85<\\xb5\\xe4\\\\=\\xd3_\\xd1\\xc60<L\\xec\\xe6\\x8fn\\xc0\\x87W\\xec\\xa8\\x98\\x05/\\x80\\xabR\\x87\\xce$t\\x0d\\xec\\xdb\\xd9\\x13\\xd5\\x1f\\x84\\xca\\x00N\\xe1\\x8bkJ\\x87&?\\x15\\xe2\\x0cqw\\xf0\\xef\\xd65\\xa1\\xc0[\\x14\\xd7t\\x0c-\\xbde\\x1c(E\\x03gP\\xb8W\\xb8\\xccL/\\x1a\\xd35\\xbbr\\xa5\\xdf\\xf6\\x99\\x1b\\xdfX)!\t\\x00(\\x87\\xb2.\\xe4\\xe7O\\xb9\\xf4\\xcd\\xb0\\x95\\xfaIX\\x94?tU\\xa8\\x8f\\x99\\xd4\\xe2:'& \\xaa\\x1f\\x84\\x89y\\x00\\x82\\xd9\\x1a+PK#\\x0eSrK9\\x84e\\\\\\xe8R$3]\\xb02_kz\\xf1u\\xc2`\\xcb\\x9d3\\x0d\\xd8\\x8a\\x0d\\x80\\xd9].\\xe3B\\xa1\\x05\\xa4\\x90\\xd4\\xe4\\x16\\x9b\\xb7@y\\xf56\\xf0\\xa1#\\x99\\x82\\x8dK\\xfb\\xc2\\xd97\\xbc \\x88)\\xcd\\xc6\\x18l\\x0f%\\xad\\x87\\x80\\xcb\\xfc\\x8dM\\x8b\\xc0_\\xdf\\xe8_\\xde4\\x9f\\xde\\xd8\\xbf\\xe5\\x18P\\xfaX\\x94\\x9c6o\\xed\\x9f#\\x8e\\x96>f\\xbfO\\xc5\\x1b\\xcf\\xf3!\\x91T\\xc5\\x83\\xf6\\xf4R\\x05\\x8aL\\x8en\\xdae\\\"\\x1f{\\n>\\xa4\\xbbQ\\x89\\x9f\\x1c\\x9e\\xa3\\xe6@\\xc2\\x8b\\xe8\\xbc$V\\x8aBN\\\"0!K*\\xc1\\xde\\xb8\\xac\\xf7\\xe6\\x9d\\xdc\\xcad\\xd0l\\xae\\xa4\\xd9\\x98&\\x91B_\\xf4\\x03\\xf1\\x88\\xb8\\xc6\\x1c\\x07moc\\xf4QA\\x0ca\\xda\\x9b6q\\xc4!\\xf2\\x9c\\x969\\x06(\\xfc\\xe0\\x96\\\"\\x86\\xa5\\xc26\\xe6n\\x03\\xbb\\x07\\xcd\\xf3\\xd6:vb\\xa4?\\x0c\\xd9\\xb4\\x04\\xcd@t\\xd0a\\x16\\x04\\xd5\\xdb\\x87\\xf2y\\xa6\\x8a\\xa0\\x98\\xcf\\xb6~5\\xf1o\\x84Lv\\x82#\\x069\\x92ln\\x89\\x02\\x02\\\\\\xeao\\xe2z\\xcd\\x98(k$\\x05\\xe6\\nu|\\xad\\x90\\x81\\xcd\\x82\\xad\\x1b\\xda!\\xc7\\xa8\\xae`&O\\x98^\\x0e\\x95d\\x05\\x0b\\xea\\xc6\\xa3^\\xe0j\\xf8\\x10\\xc2\\xe8\\xd4$L\\xa3\\x0f\\xc69e\\x88\\x00\\xcd\\x7f\\xfd\\xfa\\xf6\\xb1\\x1bSg4\\xf3\\xc1q(i\\xc1\\x10\\x80z^F#\\xac\\xda\\x81R\\x18IB\\xc9\\x15\\x8bP \\xe3c\\xcdd)\\x8fg\\x17\\\"0<\\xc1\\xce\\xad\\x0d\\xcf\\xb4\\xcfz\\x17\\x05!d\\xc4\\x9d\\xf2\\x98\\x9a\\x8f\\x0f\\xa2e\\x95Z\\x18-\\xf1\\xa0\\xb1P \\xd29v\\xd7M@\\xc4\\xeb\\xe9\\x16\\xf0\\xd0s_\\xef\\xd0\\x04!\\x93\\xc2\\xcd\\xc11D\\xf5\\xa6E>e\\xc0\\x12\\xed8\\x98\\x17\\x8c\\xde\\xf9\\x1a`z\\x1b)\\xa8\\xe8S\\xbb\\x88\\x0b@d?\\x0d}2\\x1e\\x90@\\x86\\xf2\\xado\\x81$\\xc3\\xe0\\xf0\\x97n\\xff(\\xc1Abtx%\\xab\\xb10ld\\x85\\xfa\\xb8\\xd0d\\xa2\\xe1-\\xd9O\\xbe\\x8c\\x83\\xc6un\\x85\\x9b%G\\xa7\\x0d\\x0bc\\x95Pj\\xc0\\x1b7A'\\xc6SviU\\x1aN\\\"\\xda\\xeb7\\x8e\\x05\\xf2\\xd3\\xe7a\\x182xe\\x9d\\x94\\x80\\xf1_\\xbatM\\xec\\x10\\x0d\\xe46\\xd59\\xdd\\xdf\\x03Q$\\x07\\x14,Z\\x88\\x17N\\xad T\\xd2\\x80\\x99&{\\x18+\\\\\\xd59\\xe7\\xaa\\x90;\\x1a\\xb8\\xa4]\\xa8W \\xf6\\x86\\xe6fw\\xc8\\xd2j\\xd3\\xa4/\\xd9\\x94C\\xeb\\\"5\\x92EJ\\xf2R0p\\xad:\\x8a\\xd4A\\xab;e\\xe55\\x16*\\x85\\x00I\\xbb\\x03,\\x98\\xc8\\xec\\xe2\\x04\\xca\\x13\\x8fN\\xa3*\\x96,4\t\\x12\\x82t\\xd9\\xac;\\xadyy\\xb7\\x81d\\xaf\\x18\\xdf\\xee\\x96J\\x1f\\xee\\xe6\\xc4\\xfc\\xd7\\x84\\x9b\\x93{-{\\xac;l:\\x8e\\xc9\\xe5J~0\\xcc\\xe9\\\"\\xa8%\\xae\\x9b\\x05|\\x97U{\\xf5\\xd2\\xbbv\\xde\\x10\\x18\\xc7\\xe7hL7\\x1b+\\xc4E#\\xf9\\xe5\\x96JZ\\xc5f{)wC\\xc2y\\xe0\\xf8\\xe0\\xfc\\xf8\\xea\\xc3x<\\xde\\xb5\\xa4F\\x83\\xf6\\x05\\xaf\\x8b\\xed.\\xbb\\xf8\\xda\\xb5\\xb1\\x08\\xdc\\x13n{\\x9b\\xff\\x15,\\xc3\\xe2\\x0d\\xe7\\xb7\\xc0\\xe6\\xd3\\xf8\\x9a\\x97IQ\\xc7\\xda__\\xd0\\x8bK\\xef\\xc6\\xb0\\xda\\xbe\\xe5,\\xac|\\xc3\\xc8:\\xdc\\xef\\xfa\\xe5I\\xb5#\\xcc\\\\66-\\x1b~\\x93\\xde\\xf6\\x15\\xf0T\\xcd\\xdb-\\xc9\\x8a\\xcc\\x8f^\\xf7a\\xcb\\x07\\x84B\\xf3^\\xf1]\\xedG*5^\\xb6\\x94\\xf2>\\xac$\\x10\\xb1\\x8e\\xd7\\xa4\\x0f:0\t\\x80\\x8ah\\x9a\\x1c\\x8a/\\xc34\\xcdJ\\xa0\\x0d\\xf9\\x18\\xa7>\\xe7\\xeaM\\x9d\\x15\\xd1zn\\x8b$\\xed\\x1a:$\\xebY\\xe4Y\\x03cn&\\xbb*\\xc6\\x1e\\x19\\xdfa\\x80\\xe4X\\xa6\\xab\\xea\\x84\\xfb>\\xac\\x9b\\\\\\xce9nh./\\xe8\\xd2\\x8e\\xd2B$\\x0d\\xd6J*h\\x91\\xd9|\\xf0\\x91Zc>\\x01\\xdd\\xfb\\x13\\x80\\xe7\\x10\\xb4\\\\A6\\x81T\\n\\x0eM\\xa90\\xca\\x17\\xb0\\xf0\\xd3\\x02\\x00Rj\\x1b\\xd1%sr\\xd5$\\xd3j\\xeb[R\\xf0}\\xd1\\xfa\\x9d\\xe7C\\xcc\\xe5\\xeeg\\xc3p\\xb7\\xa0\\x06\\xa4#\\xc3\\xb6>\\\\\\x94$\\x07\\x92\\xcem\\xc1*L\\xd4\\x8d\\x84\\xa2\\xf1\\xb0\\x98V\t\\xefb\\xca\\xc3^\\xeb\\x9c\\xb7\\x9dK\\x07I=c\\nZ\\\"\\x9e\\xca\\xa2H\\x00\\x89\\xb8iH\\xe53\\xe6\\xa9\\xa8\\x06\\xe8\\x7f\\x1b\\xde\\xe1Ua\\x0b\\x81\\xb5\\x11\\xf4\\x14PfP\\xa0\\xb1\\x80cM\\xd6\\xdf\\x04\\x05a= 9\\xa4\\xaa\\xa3\\\\C\\x9f\\\"\\xd7i\\x9a\\xa5;\\xac\\xd9'\\x1c\\xd3 \\x9f\\x83\\xc1\\xbf\\xb9A\\xae\\xb6\\xee\\x95\\xba\\xee9+\\x89\\x05\\x1f\\x1a[\\xf7 f2S\\xe6\\xe6\\xe7\\xc6*\\x01V\\x19\\xee~-\\x0d\\xb2\\xed\\x0f\\xdaq\\xf5*\\xf1MM\\xf7!\\xf0R\\xd7\\xe8\\x19\\xd5A`\\x8e\\xdd\\xdf\\xdc)~}\\xb1\\xc7\\x1e\\xe9\\xb4\\x91<\\x92\\x9f\\x87\\xda\\x08\\xc3\\xdeP\\x8e\\x06_U}A)\\x11\\x19K\\x17\\x9e\\x99\\x05T\\x16\\x8co\\xbd\\x03!J9Z|g\\xde\\x99Y\\xaa\\x16[\\x8d\\xac\\x86\\x91\\xb4\\xed\\x02$\t\\xd73 \\xaaf\\xd0\\xfc\\x1d3\\xdd\\xd7d_c\\xcb\\xba\\xa0\\x05Q-\\x18\\xc4\\xeb\\xc1\\x04\\x0c}\\xe7&b#k\\xb3\\xb5\\x1d\\xfa\\n\\x0b\\x17\\xdc}\\xd8\\xf0\\xc6\\x1d\\x83A\\xf3.?B\\xacp\\x0cq\\x8f\\xaa\\x8c\\\"\\x1cc\\x1c~\\xf9\\x11\\x92\\x07c\\xee\\x05\\xf9\\xa17\\x9d9;\\xdb\\x8f&\\x0b\\xd2\\x1f\tQ\\x8ey\\x19\\x8e\\x8dL\\xbe\\xb1\\xaeU\\xc83:\\x85\\x89\\xf9\\xf02I\\x8f,)\t\\x1b\\xf8\\xd1\t\\x9e\\x8b.\\x88\\x152\\xce\\x0f/\\xb0/\\x85\\x82\\x836\tCO\\xd5 \\xe2I#\\xdc\\xd9i\\x1c\\x8d\\xba\\xda\\xae\\xd2!\\xad+<\\x9b\\xda\\x8bA\\xa7!4a\\x0c\\xc8\\xb3\\x1f;;\\xbe\\xa4\\x15\\xa5\\xe4\\xab\\xa4/\\x93\\xa4\\x1e\\xf8\\xcb\\xa8=k\\x0bL\\x98\\xf6\\x8c\\x93\\xc4\\x9dD`A\\xca\\x1f[\\x1a\\xf3nZ)\\xb6\\xa5A\\x14\\xa4V\\x19\\x94\\xd9O\\xd9-\\xc9_\\x86\\x05\\xf3\\xb0\\xd8rg\\xce\\x92|\\xa1\\xdc\\x11\\xd7\\xbb\\xd3\\x7fw\\xf0\\x8f\\xb0\\x88\\xe2\\x98\\xfeq\\x15\\xa7a~\\x87\\x7f\\x85\\x059\\xd8\\xc3ZQ1\\xe5\\xff\\xeeL\\xf9g\\x93\\x83\\x84\\x88\\x16\\xc4\\xdfyx+\\x19\\x19\\xb9,\\xd3\\xa2\\xa7\\x8d\\x03\\xad\\x8c<K\\xca\\x9e\\x9f\\xd3\\xcfiv\\x9bJw\\xde\\x14\\xb1\\x1dt\\x03R\\xf5\\\\\\x19\\x8c\\x0fLf\\xb9V6Ia\\x99oMf'F\\x0eZ\\xce\\xe5a\\xa2\\xb8\\x19W\\xdd\\xc7Iw\\xccKA\\x10\\xed\\xbb\\xab\\xce\\xceSO\\xd8\\xe5&|F\\xeaJT*W\\x0fy\\x94\\x13\\xa7\\xc4Z\\xbcZ\\xb3\\xf0\\x83d\\xde\\xc3\\xda4\\xca9&\\x1a\\x97\\xdf\\x91t>p0\\xb59\\xe2\\x90\\xbbm\\x8d[\\xc1,\\xae\\x9bt5\\x12{@\t\\xccM\\x98\t)\\x10\\xf7\\xf6\\xb6\\x1c\\x98\\x8e\\xb1\\xb8\\xb5\\x8eZ\\xc8\\xbcr\\x19\\xde\\xe4\\x8d\t\\x8bP\\x1e3\\x10\\x8774\\x17\\xb2Y\\xcan)@g\\xc8J\\x01\\\"\\xe2\\xc6>h\\\\\\x0b7\\xfdZX]\\xb7y&\\xd3\\xb2)\\xd3\\x04fiDj\\xa1[\\x07\\xe9F\\x1a\\x93\\xa3\\xb1/\\x99f\\xb5E\\xd4 !\\x95\\xbc\\xc5\\xa8\\x0c\\xbc\\x82\\xb5\\xe9\\x92\\xf1\\xdamt\\xad\\xe4\\xdd2\\xa8\\xb6k\\x0bt\\x1d\\xa0\\xf0\\x01\\xb4\\xe7\\xd6\\xbe\\xe6\\x852\\x1e+\\x9fk\\xe9\\xde\\xed\\xec\\x9f\\x9e\\xe1~1\\x89z\\xd3\\x1a%\\xf7\\x8d\\xf8[\\xbb\\xa6U*\\xd7\\xa9\\x7fi\\xb5\\x9a:\\xbd\\xfc.\\x93\\x94\\xa4s\\xd7\\xf3\\x81\\xb4\\\"8\\xfd\\xa1\\x19\\xa9\\x9a\\x9b\\x11\\xb3\\xe8\\x1f\\x8d=\\x8a\\x0e\\xdf\\xacVd\\x1e\\x87%\\xd9$\\xb5~\\x7f\\x0e6\\xfb\\xbe\\xf0\\x03\\xd2\\x1b=\\xe2\\x9b\\x0c#u\\xf7\\x0e\\xf7<\\xd7\\x833\\xee\\xbf\\x8c\\xc9\\x13\\xd1\\xb0\\xf5p\\xff+\\xa6z\\xd3\\x84o>2\\x87R\\x99\\x9a\\xd3\\xc2\\xed\\xea\\xc1\\xc3*\\x83k5G\\xec\\xedPC\\xfc\\x1275\\xb5h\\xee\\xca\\x07\\x850\\x8a\\x0c\\xaf\\n\\xf5M\\xf4Uy\\x02n\\xea\\x90\\x0d\\x0b\\x1f4k\\xf4\\xb8\\x95=\\xa5\\xb2\\xf8V\\xaa\\xdf\\xa1B \\xc5\\x00\\xb6\\xcc\\x1b\\xd8k\\xfc\\\\\\x17Z\\x84\\x05\\x86#h)\\x0bo\\xb1\\x10Y\\n\\x16\\xf0\\xfc\\x14\\xb3\\x14D\\xee\\x82\\xa7\\xfc^\\xc6\\x8d\\x93\\xd3\\x0eDn\\xe1.<\\xef\\x04X\\xe4-\\x18\\x8d\\x0c\\xea(\\xb4\\xf3\\x91\\xa5\\xac<\\xccP\\xc2Q\\xe3\\x8c\\\\\\xf8\\x90\\xbb\\x89\\x94\\x02E\\xc3\\x8f\\xbc\\xb47\\xd3\\xfc\\xa0\\x93\\xa6xH\\xb4\\xb0\\x91\\x10Tj\\x03\\x18F\\xd4\\x9aDo\\x96\\x14\\x8fHa\\n\\xc2\\xc4\\xeeA\\n\\x12]\\xa5\\xbcx`R\\x82\\xeeA5\\x07\\x8b\\xd6\\xad\\xf3\\x8b\\xb0P\\xcc\\x9f\\xc8\\x97\\xf2]6'\\xaec\\xcb\\x99\\x92ah\\x01\\xdbx\\xb4\\xb0\\xb8]\\x029\\x0b\\xfb\\xcd\\x1d\\x858\\x82g\\xcau\\x16#\\x9bX\\xf1w\\xb7u\\xa1\\x90.\\xb1!v0\\xfdp\\xaai\\xe5\\xc4c\\x96\\xa8\\xa0\\xcb\\x9aJNY\\xe4\\xb8i\\xe3\\xc3\\x08u\\xfa?V\\x1f1x\\xe9Zf\\x86\\x176\\x0e\\xe6a\\x19b\\x98\\xc2S\\x18\\x8d2\\xf8W\\x982s\\x07l-(\\x96\\xf1\\xa2t1\\x04\\x05\\x17\\xbf\\x08\\xafkN\\xe1\\x95\\x06m\\xd5\\x83\\x17dW\\x05\\xc9o\\xd0R\\xca\\xbcx\\xd12\\xcc\\xc3\\xa8$\\xf9\\x8fa\\x19\\xb6\\x82\\xfe\\xb3V,\\x16\\xeb\\xbd\\xf4\\x02}X\\x9a\\x17\\x0cai&X\\x99\\x94{F|(/P\\xec\\xc0\\x15\\x94\\xa8\\xbde\\x04\\xb0iq\\x86\\x88\\xc5\\x1e|3\\x1c\\xb6^\\xe3v\\xe4$$p\\xec\\xaa\\xb0&\\xc1\\xb4\\xe4\\xf6f\\xf6B\\xe9\\xe8D\\xdcO\\xdaM\\x9d.\\xa8C\\x8cj\\x1c\\xca\\xdb\\xaa\\xc4\\x84|\\xef\\xd9\\x8e7~\\xb1\\xb1\\xdbze\\xbf\\x95\\xc6\\xa6\\xffL\\xae\\xfe#.;:\\xb0Th\\x1f%\\x1bH1\\xdf\\xa8\\xde\\xe0\\xbb\\x80\\x8c_\\xee\\xea\\xa2\\n\\x00\\x16\\xb8\\xd5\\xd8lA\\xcaO\\xf1\\x8ad\\x15J;\\x0c\\xdb!U\\x182\\x80\\xa6\\xba\\xcb\\x0e\\xfb\\xd8<\\x98\\x96T\\xeeA\\xba\\xb2\\x83\\xe8\\xcaoBeY3h\\x9a\\xb2f\\xaay1\\xa7l\\\\\\xfb\\xd3}\\xfe\\xef\\xc1\\xc6y1;F'\\xd2S\\x1e\\x9a\\x92\\x8d\\xa1\\x86\\x8f\\xa7'P\\xc3\\x0e\\xe7\\xdda\\x87\\xd5X\\xe9\\x96|WV\\xc8 \\x84t\\xed\\x0e\\x92,\\xc2\\xc3~\\xdcJaF\\x9fe\\\\\\x94Y~g~\\x99\\xadI\\xaa\\xb2\\x7f\\x86J\\x98\\xf2\\xab\\xb7\\xd6\\xeb8\\xd1+\\xd9\\xe6\\x0b\\xe2\\x86K\\xf1\\x82\\x9b3\\x7f\\x8b\\xc9\\xcal\\x89\\xfa\\xccV\\x1cta\\xd8wmxr\\xc3\\x1dFm\\xda\\xb8\\xb4C\\xc5\\x9b\\xd7\\xf1\\xde\\x0c\\x82P\\xab=Im\\x08\\x13\\xf3\\xb0Ih\\x15$\\x82B\\xbb3\\x87\\xae\\x95\\xe3\\x83\\xf3C\\x92]\\xd1\\x7f_g\\xf9\\x8a\\\"=\\xe7\\xc2;\\x01\\x16\\x16\\x13\\x13\\xf3U\\x08\\xc0]\\xcf\\x0b\\xe6YJ\\x90\\xc4E\\x8dE\\x07\\x92\\x13z\\x97\\x98\\xe5\\x10\\xb4\\x93\\x1f!\\xc4)_3\\xc693;QV2\\x0b/\\x86`5,\\x91\\x0d>\\xec\\x0b<f:\\xa4\\xb6O\\xe7\\x03\\xa0\tUb[\\xccn\\xb3\\x1d\\x96\\xef\\xb0\\n\\xf8a\\x91\\xfe\\xb6\\x98\\xcc\\xf4u\\x07\\x82\\xd2\\x12$s;\\xc3\\x01\\x98\\xd7A=\\xed\\x9d\\xab\\xa2\\xc6#\\xb2r\\xf8`\\\"\\xbc\\x05\\xa8\\x1e\\x1e\\x14\\xf4\\xc0\\x02ey\\x10K\\xe7o\\x8e\\x17\\x98r\\x84\\xb9c\\xca\\x83\\xb1ZCB\\x8f\\x8b\\xccTp\\xcaR\\xea\\xa1\\xe1<O#\\x86\\x8a\\xe8:\\xf3N3\\x99!S\\xe9C#-\\xf7T\\x9e\\xfc\\xc1\\x92\\xc2}\\xaa\\x87\\x0bgA\\x80\\xa7\\xe6\\x00\\xe0\\xbbzm&\\x80\\x98\\xb6Zg^\\xbbGz\\xe4\\xe1\\x05\\x1f\\x8b\\x1e\\xb2\\x9a\\xb9\\xd6\\x1ex\\xae\\x13\\x97$\\x0f1\\xdb\\x86ZcM\\xaf\\x8d;\\xbb\\x08>\\x93;\\x8c\\xee\\xe0P`\\xe0\\xd0k\\xcb\\x0b]=\\xc9@\\xaf;\\xbb$\\x1eW\\xcf\\\\\\x9f\\xb8@h\\xd6\\xe7>\\xdc\\xf8p\\xe7\\xc3\\xb5\\xde|\\x81y\\x0f}\\x98\\x1b\\xdc\\x92W>\\\\\\xfap\\xe5\\xc3m/\\xbb\\x08\\x82\\x83Z\\x83\\x08\\xb6\\xfa\\xa2\\xc6\\x05/\\x8c\\xf1 \\xe8#\\xc2\\x15v2\\x00\\x18\\xef\\x8fe\\xec1\\x87\\xe0k*1C\\x8a\\x8ej\\xd0\\xacf/\\xfbi\\xf8\\x86R8i\\xad\\xdd\\xea\\xfc\\xca\\xe2\\xfce,\\xdddD\\xc3Gb\\x00vmt\\xf9\\x05\\xbd\\xa5G\\xe0\\xc0\\x1bq\\xa0\\xdb\\x95\\xce\\xe1\\xb4^[\\n&n\\xdaU^Y\\xd0\\xf1\\x0bT\\xca5\\x82\\xedV\\x85\\xf7p\\n/f\tfNz1s\\xfe\\xed\\xdf\\xea\\x8b\\x85E\\xe8\\xfc\\xf1bvcH\\x1a\\xfd+\\x05\\x86L\\xdfxc\\xe00?S\\\"\\x00\\xce\\xe0\\x1c\\xce\\xe0\\xd6uHZ\\xe61)\\x10\\xa2\\xfd\\n\\xf6\\xd4uoX2\\xb7<\\xbc\\xc3\\xa9\\\"\\xa2z\\x11\\xf0\\xafio\\xef\\xdb\\x14\\xd1\\x1bD\\xc5W\\xf4\\x96\\xb8o\\x18\\x19\\x8e\\\"\\x0e\\xcf\\xf3P\\xea\\xae\\x8b\\ni\\xf5+\\xa6>G\\xcfj\\xf7\\xca\\x87/>%\\x11(\\xba\\xa5<\\x85\\x89\\xed\\xb8\\xe2\\xabT\\xd1\\xea\\x89\\x0fK\\xcf\\xf3\\xe1\\x9c\\xb6\\xf0\\x1e\\xe1\\x8c\\xd8 \\xec1H\\xc3\\x15\\x93\\xad\\xbf\\xe2x\\xfc\\xd7\\x81P\\xe6\\xbd\\xd5\\x9f\\xcb\\xe3n\\xf1[L\\xf7\\x8bW}\\xeb\\x15\\xdb 1\\xb4\\x178\\xb4_=\\x1f\\xc2\\x19\\xa1\\x94\\xc9\\xaf\\xf4\\xaf/\\xf4\\xaf\\xa5\\x0f7f\\x11\\xdf\\xcaj4\\xc1\\xe6t\\x8c\\x9bHw\\xed\\xd6\\x15\\xd3\\xb4\\xc8\\x14(\\x988\\x86\\xbb\\xa6\\xba)\\xd3\\x97x\\xf8\\xae\\x1e\\x83A\\xb1\\xe8\\x9bl3A\\x90\\x89\\x97\\x14\\xc2\\xad<\\xc0\\x7f_\\xd0\\xa9gt\\xea\\x97>\\xacf\\x97\\xa6\\xf0\\xa2,|\\x91\\x1b\\x07\\x1f`\\x04q\\xf0\\x1a\\xbe\\x07wM\\xbf{\\xe5!\\xfc]\\x99c\\x11\\xad\\xea\\xc2A8\\xf7FJH9\\xb5\\xd0\\x0f]\\xdfC\\x1d\\xa7\\xa7\\xd4\\xd2\\xe4\\xda\\x08{\\x01\\xc1\\x8d\\xba\\xb9\\xae\\x08\\xb3:\\xcc\\xeb4\\xd2\\x12}7,\\xae\\x05\\xe4\\xb5\\x17\\xbe+ mk\\x0c\\x1d\\xd6\\x81`\\x1c\\x06\\xfd`\\xa3\\x91X\\xe2\\xd6\\x9aF\\xd2\\xe30n\\x1c\\x8c\\xd5\\x1f\\xb9+\\xce\\xca\\x10\\xf4S\\xf7\\xc64\\x08DV\\x1fX\\x9a\\x1etb\\xe5\\x93\\xb9\\x95\\xba\\x93}\\x16\\xa54u\\xa7G\\x9e]B\\xccG\\xf3\\x14\\xb6N-\\xcaT\\x91\\xda{\\x1e\\xdf8\\x9e\\x0fN\\xf8\\xf5j\\xd4\\xa7m \\xa1\\xce\\xdc\\x0b\\xc2f\\xf2\\x1b\\x92\\xfbS35|\\xf4?3\\xdd\\xa2\\xaa\\xf6\\x9bn\\x9a\\x19\\xa8\\x95s\\x98\\xab\\xf1\\xcc\\xf9A\\xa6\\x93}\\xcf\\xdd\\xd2)uc&\\xf9\\xbeu\\xb1\\xc7\\xfa\\x0cyB\\xc76\\\")\\xda\t@\\x813\\x163\\x8d\\xec\\xe5\\x9a\\xb58\\x85\\xd0\\x83\\x94\\x1e\\xde\\x8a\\xed_\\x88K\\xb1\\xbd\\x0d\\x11\\x13^\\xeb\\xc1\\x0d\\xb8\\xf3\\\"i\\xc2\\xe7\\x16'\\x1e\\xff\\x8e\\x12p\\xb3b4b\\xf1}\\xdd\\xff\\xca\\xdc\\x08[\\xbb\\xbfoZ3#\\x97h\\xb3M\\xed\\xdd\\x9f}s\\xaa\\xe8\\xcel\\xfe\\x95A\\x93\\xda\\xc5\\xf7\\x06\\xd7\\xa4\\x94\\xb2d\\xabV\\\"\\x96c]\\x8a\\xbd\\xe3y+\\x91\\xc5\\x9de\\x176\\xf9\\xae\\x9ae\\x8b\\xf33\\x8dW\\x85\\xf2\\xf6L\\xfd-\\xd1x\\xc7\\xeag\\x9c!?\\x83J\\x97\\xe4n\\xb8\\xf8\\x87\\xe6\\xc5o%\\xe4no\\xc5?s\\x14\\xd7\\x03\\xee\\xcbu\\xf8?;G\\xb1\\xf5\\xec\\x98\\x12/\\xfd\\xcf\\xcd\\xa5\\xdf\\xb9\\xcd\\xbc\\xb7\\xf6.+\\x16\\x8b\\xee\\x04\\xb6\\xc1\\x04\\xd5\\xb5<\\xb6\\xee\\xd4RO\\xd8,\\xd1:{\\x96:\\xe6\\x8c\\xb7\\x9b\\xeda\\x9f4m\\xb2{\\xd0N@\\xbf\\xfb\\xf4\\x9f\t\\xe8\\xa5\\xe7\\x7f@\\x02\\xfa}sR\\xc4\\x01\\x19q-\\xe7\\xbf\\xae`\\xb3\\x9f\\xa4}\\xf3@\\xe6\\xcd\\xbe\\xc7\\x14.\\x99y\\xe6\\x82g\\x016\\xbf\\xa5TOhu\\x14\\xe1c*DJ\\x9c\\x82ns\\x84\t\\xd6x6s\\x8e\\x03\\x8e\\xc1\\xc5\\x08\\xdb\\x98D\\xf1e6'/J\\xb7\\xf0<x\\x06\\xfb\\xfb\\xd3\\xa3\\x03\\xe4\\xb7\\xe19\\xec\\x1f\\xecN\\x8eXC#\\x1e\\x1f;\\xaa]\\xa0\\xd4\\x8fi\\x05\\xd6\\xc0\\xc1\\xee\\x14;\\xafh\\x03Ow\\xf7vy\\xff\\xa1\\xc8\\xd8Xx\\x08\\xb5\\x8fy)\\x0b\\x16Y\\xf8\\xd8\\xc9\\x94\\xbe\\xab`\\x8773\\xa2\\xe3\\xdc\\xe1\\x83z\\xf6\\x0c&c\\x0fFp\\xb0\\xbf\\xbf{\\xf0\\xfb^v3\\xb7`1s3\\xe7c\\x9c\\xe8\\xc9\\x97y\\xfe<]y\\xcai\\xf8\\x96\\xa0=\\xe2'S'\\xbc\\x99\\xe8|\\xdaJ\\xda\\xc7\\xa3R\\xfeStnx\\xfe):\\x97\\x9f\\x7f\\x8a\\xce\\xf1\\xf9\\xa7\\xe8\\xfc\\x9f\\xa2\\xf3\\x7f\\x8a\\xce\\x7f7\\xd1\\xb9U\\n91V\\xb7K\\xeeZ\\x9aiN\\xb3\\xedM:5\\xf8\\x0c\\xcb\\x0d\\x91_\\xf0L9=\\xf3\\xd9\\x8c\\xa6D\\x93\\xf3U\\xf8\\xa5M0\\xb07q:\\x00AZ\\xc6\\xcbi\\xec\\x12\\xe9\\xad1\\xcb{\\x05#:\\xc2\\xb1\\xc72\\x8c+\\xb1\\x876\\xdb\\x1eG\\x92\\xb6\\xf8\\x9a\\xc9}\\\\H\\xa2!\\xdfd\\x1c\\xe1\\x97\\xd9OY\\x14&\\xdc\\xa7\\xdb\\x17\\x12\\x13\\x1f\\xaf\\xc6\\xfb\\x85#,\\x1f|gS\\xca\\xbd\\x91\\xd4\\x9aW\\x0e\\xef\\x7f^W\\xe2\\xf2\\xd5\\xcd:\\x99\\x98\\xe9\\xbe\\x03\\x9d\\x06\\xcbjZ\\x0b\\xd3\\x16\\xd2;\\xff\\x88\\xed\\xe4\\xa2\\xcf\\x8a\\xef\\xa6,\\xe7\\xea\\x13\\xe0`\\xf4\\xd5\\xfa7\\xb33\\xce\\xdd\\xca\\x9be\\x98\\xca\\x82\\xa0G@\\xdaw\\x06L\\xebPG\\x8cd3\\xd7i[F\\xc4N-T\\xecdO\\xa7J\\xb9\\xfd\\x87~E\\x16Fq\t%a\\x17\\x14\\x17E\\xa4(\\xda\\xb4\\xebB\\xf5\\xe1Q\\xde#\\xa1\\xca\\x92}[j\\xa0k`\\xf0\\x96\\x14ExM^.\\xc34%\\x89Z\\xe3\\x06k\\xfc\\x18\\x17\\xeb\\xb0\\x8c\\x96\\xea\\xbb\\xbb\\xb6\\x14\\xfa\\x9a\\xe5fQ\\xcaV}\\x98L\\xd8+\\x8eJc\\xa2\\x06\\x8ar\\xae5O\\x17\\xbc\\xe86\\x1c\\xc4\\x8c\\xf8\\xae\\xadd,O\\xb6r\\xcd\\x92\\xd9\\x99L\\xd0\\x95\\x12m:\\x97\\xbd\\xd4\\xf5\\x8a\\xa3d4\\x00\\xd7\\x90r3\\\"\\xc4\\xc7\\xcc\\\"~\\xdd\\xd9dm#\\xc8Bb1\\xf1\\xfb\\xe4\\xa4\\x9d4\\xe89\\x9a\\xdes[\\xf4\\xc6c&\\x1d\\x8d,Yg\\xaeg\\xa3\\xd1\\xddE\\xdf\\xf6\\x84\\x96Xg<I\\xf9\\xebf\\xe0\\xed\\xc0\\x9e>\\xe4\\xee\\x9d\\xe7\\xc3\\xdd\\x1f\\xa4\\xa2e\\xe7t\\xa5\\xdd\\x91?r\\xf8\\x15\\xc0!\\xa4\\xee\\xde\\xc4s\\x13\\x0f-i\\xbb\\x1aK\\x1a\\xd7\\xcb\\n\\x83\\xf4\\xfa0\\x91\\xcc\\xae\\x1f(eI\\xf7\\xe1&H\\xb3\\xdb\\xde\\xd6\\xb0\\x96\\xb5\\xa19\\x86\\xce\\x16\\x06\\x99\\x94\\xa2\\x9c{\\x01\\x05zS\\x1fb\\xfcc\\x12d\\xe9\\x8a]68\\xa5\\xd4\\x07\\xc6\\xcap\\xb3`\\x9d\\x15%\\xbf\\x85\\x08h&\\x18\\x81i\\x11\\x84\\xf39&\\x1a\\x94Se\\x197Cj\\x00\\xc9\\xbcE\\x10\\xafh\\x8f\\xe7Q\\x1e\\xaf\\xcb\\x82\\x8e\\xac{j\\x0by\\x0c\\xdc\\xa1\\xdc\\x07\\xe7{)\\xac\\x17\\x85\\x94\\xad\\x11\\xb9\\x0e\\x9f\\x90\\x83\\xe4\\xd4\\x16\\x1b9\\xed\\xcb\\xc9\\xd2\\x9c\\x84\\xf3\\xbb\\xa2\\x0cK\\x12-\\xc3\\xf4\\x9a [\\x1d\\xb9N\\x81\\xa3r\\xbcNK\\xf5\\\"\\x08\\xd7k\\x92\\xce_.\\xe3d\\xeeJ_yA\\xbb\\xe5\\xbe3,\\x123\\xb1\\xc6J\\x16MY\\xdcS\\xab2\\xb9\\xd3\\x94Q\\xb2\\xa0oN\\x84bG\\x8f\\x99>%\\xc4\\xd7\\xfa\\xfe\\x18\\xd6\\x1af\\xa0\\xb0\\xfa\\x18\\x9a\\xecC\\x9b\\xd1)\\xf6\\xc1\\x9a\\x95\\x0fVy5},\\xce\\xf5\\xf4\\xb996{\\xee\\xa8\\xeb\\xd8i\\xd7\\xda\\xdb\\xb5\\xc5\\x04\\x9bv\\xdd\\xd7q\\xcf\\xeamJ\\xe9\\xb4\\x0c29\\xa53\\x1ed\\xed\\xa2O\\xbe1u\\x89]\\xe6YH\\x14\\xe5\\x1e\\xea\\x9bl\\x9e\\x857<\\xb6U\\x16,ZQ\\xc4\\x05!\\x8c9\\xc5sRd\\xc9\\x0d\\xf10\\x9c-F\\xb1[\\xc5\\x05y\\xec\\xc2\\xb4V\\x80-\\xcc\\x9e\\x9d\\x04\\\\\\xd1\\xad\\xef'\\x00M\\xd4\\x9f\\xd9\\x99\\xb2\\x0en&9\\x963O+N\\xdemmQ\\x02\\xcf\\xf9H\\xae_}Y#h\\x8c\\x15\\x0f\\x9bAS\\xb6\\xdf\\xd6\\xda5#u\\xa7\\x87:A\\xd7\\xb8v(\\xf2\\xffA]\\xca\\x12V\\xe3*\\xeb\\x9dq\\x03\\x84\\xa3\\xde\\xc5\\xb5Q\\xd7\\x88\\xa1\\x02\\xae\\x1b\\xc6\\xa46\\x1eW\\x8f\\xb12J\\x16\\xb5\\xaeX\\x85\\x84\\x9d\\xba5\\x15\\xcf\\xfb\\xcb\\xb2A\\xb9yp\\x0e#\\xc8\\x91Y\\xce\\xba\\xf5\\xbc\\xf4\\x90(\\x85\\x98\\xbf\\x9dk*}9|\\xd4\\xa054\\xcb\\xae\\x89\\xecr#\\xc2\\xb5\\xf3}\\xec[(\\x14\\x8e\\xba\\x8a2\\x9d\\xd8B\\xa9\\xf0\\x80\\x84\\x14\\x97@\\x08Q\\x12\\x16\\x05\\x84\\x85\\xe2%\\xfb\\xbbLG\\x93\\xd2\\x0bO\\xa4\\xc9\\xbe\\xe9\\xc4|{W$\\xe3Z\\xb6\\xc8\\n\\xfe\\x02J\\xab^\\xbc&oS\\x96\\x1a<\\xc5\\x18]\\\\\\x9d\\x03\\xe9h\\xd4E\\xe8\\xe7h\\x89\\x92Z\\x08\\xfd<h\\x14\\xaf\\x98\\xacL\\xfa\\x89!\\xd7X\\xcc\\x90F\\xeb\\xca\\x8f\t\\x13Z!\\xb5\\xc2\\xf2\\x10\\xe5j\\xd2\\x05\\xcf\\xd7\\x1duJ\\xda\\xd2grg\\xb4\\xcd\\xb3\\xa1'\\xb0\\xa8\\xcc,\\x16\\x81\\xb5\\x9er{\\x1bJ\\x8c\\x11\\\\G\\xeeH\\x85\\xac\\xaf\\xc4\\x10n\\x94\\x10\\xb7\\xf49\\xd0'd  \\xd49\\xde\\xaf\\x01\\x84_y\\xea\\xc7&C\\xad\\xff\\xa6So\\x85 \\x8a7\\xfdG\\xb2 9I#\\x017(\\x15\\n\\xcb\\xb0H\\xbf+\\xe1\\x8a\\x90\\x14\\xe24.\\xe30\\x89\\x0b2\\x87\\x1d(\\xaa5\\xc9]O\\xa9\\x81\\xb6\\x19\\xad\\xf8\\x95\\xfc`l\\xe1\\xa1\\xae]C\\x11C\\xca\\xe6\\xb4p\\x06\\xb2\\x1b\\xdd\\xb1~\\x86\\xdbf![\\x8a\\xc73\\xc6W\\xdblOe\\xe4\\xa6KM\\xb8\\xb1\\xe1\\x9e'\\xbc\\xe8\\x1dv\\xe7\\x1d\\xc6\\xeb\\xb1\\xa3-O\\x95\\x04\\x0b\\xc5$K\\x12\\x07\\xbc\\x0bW\\xe4\\xbfE\\xaey\\xa0\\x9fxn\\x85f\\xf2\\xfe4\\x18\\x0f2\\x01\\xd2\\xa1.\\xf9a\\x02\\xa4\\x96\\x85\\x1b\\x97\\x1fMu\\xa5id[\\x86\\x1f\t\\xe3\\x91dY\\x19[5f\\xe5\\xca\\x13\\xa8\\xf5\\x1d\\xdb\\x92\\xe5\\xe4\\xf7\\x98AE\\xe5\\x12\\xae\\xeb(\\xbcn>\\\"\\xd2\\x84\\xac\\xa0s\\x01\\x0f\\xad\\xaeB\\xf6\\x89\\xe4\\x95\\xbd\\x95\\x07\\x0b\\xce\\x97\\xb1\\x80J\\xe5\\x8c\\\\l\\xb8_\\x8f\\x03%8WJY\\x1d\\xea\\x1a\\xdf\\x98\\xbf\\xda\\x1dO\\xf5W\\x19\\x7fE\\xe1\\x8f\\x9c\\x86\\xb0F|\\x86\\xdc\\xa4\\xb5\\x89 \\x0b\\xd4,\\x83\\xa5\\xb2\\x1b,iA5\\xfe\\xd0\\xfek#\\xf8d\\xb9\\xea\\\";\\xc1\\x163\\xc27\\x12=\\xe7\\x14:\\x01\\xf9\\xb2\\xceIQ`\\xd6\\xa4\\xaa(\\x81\\xc4\\xe5\\x92\\xe4p\\xc5c\\xccf\\xb9D\\x05\\xb1`\\xcd\\x0e\\x8c6\\x86J\\x1a\\xb8\\x935s\\xccc6\\x96\\xaa3\\x8eJ\\xc2\\x8d\\xed\\xe5\\x94\\xd8-\\xd3jC\\xa7\\xf5\\x0d\\x0c\\x08@\\x07\\xaa\\x91\\x96\\x85\\x95\\xd5\\xcc\\xbd\\x0c1,\\xd4\\xdd\\xc6\\xfb\\xc8\\xa8\\x11\\xb1\\xc7g8\\xfd\\\\\\xa1CD\\xb2\\xa1K\\\\\\x83\\xcbKJ!}\\x93\\xfb\\xa3\\x1aX\\xef\\x8e\\xbfM\\xfc\\xa4\\x03\\x93}`\\xea\\xee\\x99\\xedz'-\\xc5\\x12zMS\\xe09f\\xe1\\x07\\x0e&\\x9eb\\x906e\\xe5\\xbb\\xe3\\x03\\xe3\\xf5\\x0cMc\\x06a\\x97\\xb6\\xce\\xb3u\\xd1\\x845\\xa4\\x98\\xaa\\xe4\\x01HyIN\\x16\\x05K\\x0d\\xc5B\\xcc\\xad\\xe7a\\x89\\xf9\\x0f0Nr&\\xad{\\xbb\\xef\\xe2\\xef\\xd8w\\xa4\\xba\\xdd\\x87r\\xf4\\xa9\\xe2#\t\\xa3\\xf2e\\xb6Zg)\\xc1\\xbc7\\xbf=\\xf8J\\x95\\x82\\x94\\\"EY'\\x90\\x91\\x88\\x11%n\\xa69\\xf4\\x90\\x04x\\xd8\\x8f\\xdcu\\x0e\\xf7\\xeb\\xec\\xef|~\\x01I\\xffZ\\x91\\x8a\\x9c\\xf31\\xd4V\\x15\\xbe\\x94\\x87^\\xab\\xfb\\x92\\x87\\xa2\\x15\\x11\\x9d|p\\xc4\\x14T\\x01\\xa7<\\xc9E\\x96G\\xe4gl\\xa8[\\xb6f\\xe8\\xf0u\\xf3\\xad\\x906\\x96\\x03\\x07W\\xfa\\xe0H]\\xab\\xe3\\x8b\\x14\\xd8\\x17\\xcap\\xaeP^Qp\\x1d)\\x85\\xaa\\x94\t\\n\\x1fb\\xb7\\x90\\x1b\\x90Z\\xf3\\xd4/\\xe3\\xe2C\\x95\\x93\\xd6\\xa9\\xe0\tD,\\x8cB]\\xf3\\x18B\\xf5\\xca\\xd2\\xc6\\xa4\\xb7\\xc5\\xb7\\x00N\\xa9{ ;\\xaf\\x0b\\xf8\\xa2\\xe1\\xbc\\xe2mV\\xa5%\\x99\\xf7\\xc5\\x0d\\x14\\x14\\xb5fc\\xa9NC\\xdb\\xbe6ae\\xae/\\x1d\\x0dm\\x18\\xe6\\xfa\\x1f\\xc9:\t#\\x16\\xa0ph\\x1f\\xe2n\\x18\\xea7\\x8bm\\x86\\xec\\xf9\\xe3\\xf7@,\\xba\\x1c\\xac\\xfe\\x1b7\\xfd\\xdb\\xb7\\x1f\\xb5\\xfd\\x04GU\\x9e\\xe3\t\\xdd\\xdcu\\xa2{\\x16\\xc3\\xb2\\x9a,\\x98#H\\xf3\\xcburz\\x05\\x03\\xc2\\xd4\\xf8\\x0e\\xfa\\xdb\\x1c\\x8c'\\xe3\\xdd\\xdfuQ\\x9c\\xf3W/?\\xbe\\xfat\\xf9\\xe3\\xfb\\xcbw\\xef?]~xq~~\\xf9\\xe9\\xdf\\xdf\\x9c_\\xbe\\xffx\\xf9\\x97\\xf7?_\\xfe\\xf9\\xcdO?]\\xfe\\xf0\\xea\\xf2\\xf5\\x9b\\x8f\\xaf~t\\x86\\xf4\\xa9Q\\x12\\xd3\\x897L*\\xd1\\x17!\\xafu\\x97\\xcd~z\\x14\\xfc7T\\xb7\\xd1I\\x8f\\xd3\\x7f\\xba17\\xa6\\xbb\\xba&\\x14\\n\\xae\\xb2\\xf4\\xd5\\x97\\x92\\xa4\\x94\\xf8-0\\xca\\xf85)\\xb5\\x12RD\\xe1\\x9a\\xfcH\\xc8\\xfa\\xa78\\xfd\\xfc!\\xc4\\xa4\\xcb\\x84;\\xbb\\xb5\\x8a\\x8be\\x98$\\xd9\\xed\\xab\\xbfVa\\xf2\\x1f\\xe4\\xae\\xe0i\\x05\\xe3d.\\x82\\xbe\\xb0jY^\\xb2\\xccz$\\xb8*3^H\\xf28L\\xe2\\xbf\\x91s\\x12\\xe6\\x11ko\\x1d\\xe6\\x85\\xfc\\xfb\\x9a\\x94\\xe7\\xe1j\\x9d\\x90\\xf3hIV\\xec;L\\xd1\\x10\\x96\\xe4C\\x98\\x87+\\xad\\xa4,I\\x9e*eo\\xe3\\xf4'\\x91;Z*\\x0d\\xbf\\x18J\\xffX\\xc5s\\xa5\\xe0\\xc7\\xb0$\\x9f\\xe2\\x15Q\\n\\x99%\\x8cR\\xf4C\\x96%$T;~\\x1d'\\xeawo\\xd2\\x92\\\\#\\xad\\xd3\\x94\\xbd\\xabVWZ\\xd1\\xdb8\\x8dW\\xd5J\\x1fn]Fi\\xac\\x97K\\x12}\\xe6\\xdf\\xad\\xc8*\\x8b\\xff\\xc6\\xba\\x8a\\x8b7\\xabU%\\x84~\\xa6\\xd0>\\xe2:_Q\\xd6p\\xfa\\xd4d\\xbd\\x1e\\xd7\\xaf\\x8fL\\xaf3\\xfe\\xfap\\xcf\\xf4\\xb6\\x12\\x1f\\xef\\xee\\x9a^\\x87\\xf5kc\\xd7\\x05\\x7f\\xcd9S\\xf9\\x15\\x9d\\xdc\\xff=\\x7f\\xff\\x8e\\xeb\\x00\\xfa\\xec\\x19\\xec\\x9eK\\xc2*\\x816\\xc6\\xce\\x9b1\\xb9-p~\\x93\\x85\\xa4kb\\x97\\x0d\\x11P\\x15*+X+\\xc6Z\\x9d\\xf4\\xa4\\x93\\xb2\\xa1\\xf4:\\xedD\\xbc\\xb8\\xeb]\t\\xde\\xc8+\\x17C\\xd6|qy\\xe4\\x9a2\\xfb\\xbf\\xe7.\\xb2]\\xaa\\xdfj\\xdd\\xc3\\xff\\xcf\\xde\\x9fw\\xb7\\x8d#\\x0f\\xa3\\xf0\\xff\\xcf\\xa7(\\xeb\\xc9/C\\xb6i\\xc5r\\x96N\\x9c(\\x9et\\xe2\\xa4\\xdd\\xd9z\\xb2\\xf42\\x8a\\xc6\\x87\\x96 \\x8b\\x1d\\x89TH\\xd0\\xb62\\xf2\\xfb\\xd9\\xdf\\x83\\x02@\\x82$\\x00\\x82\\x8e\\xbbg~\\xf7^\\x9e\\xd3\\x1d\\x8b\\x0b\\x96B\\xa1P{\\x85i\\x1a\\xae;t@E\\xb3\\xe8\\xd8\\xaa\\xfe\\x8d\\xbd\\xbc\\xf70@v4nv4K\\x93\\xe5O\\xef\\xdf\\xa6S\\x92\\x125\\xef7PO\\xab|g\\xabr\\xe1\\x11c*S(VN\\xb1\\x84,\\xe5\\x92\\xf4\\xd9\\xbe\\xb4}Z\\xc0\\x8b\\x94\\x19x\\xa3\\x8c\\xcf\\x04oM\\x8a\\xa6\\xde\\x93/\\x1e\\xf1\\xfb\\xcbp\\xe5Q\\xccd\\x1fe\\x14g[\\xbe\\\"\\xa6\\xf5:\\\\\\x95oB#\\xc6\t+;D\\xf1\\xf4C\\xe2$\\xa2\\x80b\\x16\\xab\\x1b\\xb8\\xa0jV\\x0d\\x159\\xdb\\xef\\xcf\\xa2\\x05%J<\\xa3\\xb1 \\x91hA\\xefD\\xa3\\x8d\\xf9\\xf3\\xd9i\\x7f\\x18N\\xe6e\\xeb\\xc6\\x1c\\x01\\xd2*0J\\xc7h\\x0dM\\xc78{O\\xe4^\\xd7X#\\x9a%\\xfe\\x18\\xc8\\xe2$]\\xe2\t\\xc2qn\\x08\\xef\\x03\\xa4\\x13\\xcfcW\\xa4m\\xc9\\xe8\\\\\\xf4\\x14e\\x05\\xdd9\\x14}\\xe4X\\xfd\\xf8\\x9a{\\x91\\x13qj\\xb6\\x8a\\x9bu\\x97\\x10A%^\\x87+\\x17t2\\xa2LJ\\xa6\\xf9D)\\xf2g\\xcb\\xfdP]W\\xe2\\xb1\\x95\\xe5\\xa6\\x9df&\\xd8\\xcb\\xa0\\x12\\xd1\\x08\\xca\\x90\\xdfa\\x97\\x7f\\xd9\\xa8\\xcfD=\\xabr\\xbc\\x06\\xcb\\x9cP\\xf7Z\\x0f\\x84\\xa8\\xed@\\x88D\\xa5\\xa7\\xdd\\x00\\xf2\\xf2n\\x1c@\\xd4\tL\\xd9:\\xa3d\\xf9a\\x9e\\xc7\\x9f_G\\xd3\\xe9\\x82\\x9c\\x87\\xa9]\\xe4\\x07\\x9d\\xe5\\xce\\x04\\x13\\xd2\\x9fJ\\xf7I\\xc1\\x85\\xe9K*@\\x97Fu/7\\xf4H\\x86\\x0f\\x8cyKc\\x8fz\\xe8\\xbfE<C\\xb2\\x13\\x00]\\xa0\\x8a\\xfe\\xae\\xe6\\x1c\\x14k\\xc4\\x00\\x90gO\\x93i;\\x94%\\x87\\x81\\xae\\xeb\\xec\\x8c\\xd0 \\x94<\\x7fPE\\x16Fq\\xe6\\x9d\\xb3\\xb3\\xe5\\x1c\\x13\\xf3\\xd6\\xc9\\xb41vI\\x02gO \\xa2(\\xaa2\\xda\\xd5\\x12h\\xc6\\x85{\\xec\\x10H\\xb3\\xba+\\xd4\\xa5Xfv\\x82\\xb9l<\\xb4\\x14\\x96\\xa7\\x1c\\x06\\xf6\\x9c,\\x90\\x01\\x15\\x7f\\xaa\\xf9\\xd4\\xcb\\x17\\xf9\t\\xd9\\x04\\x87<\\xcd\\xd0:t\\x14{\\x9ac\\x970\\xf6\\x81\\xe8\\x02\\x1f\\xb4\\xbd\\xf4\\xa3\\x0c;\\x8be|y}\\x10\\xcd\\xf9\\xcf\\xa3\\xd3\\xf9\\\":\\x9d\\xb7s\\x97r\\x85\\x9b\\x9e\\xec\\xf2\\x92\\xa6T\\xb9B=\\xfd+\\xb4O\\xc9\\x05}\\x9a\\xc4\\x94\\xc4\\xb4\\xf4\\x89\\xbdKn\\x97\\x89\\x84\\xd4W\\x8c\\x93o\\xc7\\x95\\xd2g!P\\xbc\\xc3y8k\\xa5\\x8f@\\xa4\\xea\\xe0A\\xaa\\xa3\\xdd1Og?\\x08\\xd0\\xaf\\x9b\\xf6\\xa38&\\xe9\\x8f\\x1f^\\xbfbrv/@\\x97\\xee\\xdd\\x87\\\\5\\xce\\x1d}W\\xf0\\x08\\xbeG2\\xf9\\xe9\\x13\\xf7}\\x15\\xb5\\xd1f\\xd6\\xaa\\xe2\\x0c \\xac\\xa7\\x89\\xecz{;\\x1b\\x07(p,J\\xd8\\x0c\\x02\\xd8\\xc2|\\x16+x\\x0c\\xf7y/\\x9c*\\xe0\\xdd\\xd1\\xadO\\xefo\\xf5)\\xc9\\xa87\\xf3\\x03\\xf66\\xfb\\xe0\\xd6\\xe8\\xc6\\xa7\\xf3\\xb1r\\xdf\\xeb\\xdd\\x12#\\xdbl\\x8a\\x06xn\\x91$\\x80\\xbf\\xf5\\xfe\\x06\\xb2\\x88w\\x12@\\xefo=\\xf5g8\\xca`\\x07\\xee\\x8ca\\x1bR\\xd8f3\\x1eBog\\xe7\\xd3\\xc5m\\x82\\xb5\\xe4\\xe4\\xad\\xefn\\xf5\\xc6\\xa3\\x95!\\xd5\\xa8\\xbcpYP\\x85\\xe2\\xd1\\x8a\\xf7h\\xae\\xc8\\xdd2\\xc9L/[\\x85q\\xcf\\xc7d\\xc5O(M\\xa3\\x93\\x9c\\x12\\xaf\\x97\\xd15\\xea\\x04F\\xbdI\\xb2H\\xd2}\\xf8\\xbfw\\xef\\xde}\\x08\\xb3$\\xa6;\\xe7\\x84a\\xf4>\\x9c$\\x8b\\xe9\\xc3\\x1e/_\\x8f\\xff\\xa9\\xaf\\xe2\\xbd\\xf1h\\x05\\x07\\xb8v\\xb7\\xe1\\x00\\xf6`\\x1f!|\\x0f\\x0e\\xe0\\x8e\\xf8\\x9b\\xdd\\xbf\\x0d\\xfb\\xb0}\\xeb_^\\xe8\\x9dd4\\x0d't\\xb3\\x88\\xc2l\\x13O7\\xd2y{\\xc3\\xf6\\xec&\\xf3\\x96\\x9b\\x8c\\xa4\\xd4?\\xd8\\xe44\\xf17'^\\x98\\x91\\x0d9\\x8d\\xe2M\\x92,<\\x12\\xc6\\xfe\\xc1&%\\xe1\\xe7\\xcd\\x9a\\x12\\x7f3\\xc1\\xc7\\xec\\xc0\\xd9\\xcc\\xc3t\\x83\\xf2\\xedt\\xb3\\x08\\xb3l\\xb3Hb\\xb2I\\x96\\xab\\xc5&\\x893\\xbaIb\\x1a\\xc59\\xf17S\\xe2\\x9d\\xe4\\xa7\\xa7$\\xddL\\xa2e\\xb8\\xd8L\\x16aJ63\\x8f\\xed\\xf1\\x0dI\\xfd\\x83M\\x14Gt\\xb3\\xf0\\xc8iH\\xc9\\x86P\\xe2\\x1f\\xf8\\x9bi\\xb2\\x99&\\xf9\\xc9\\x82l\\x887\\x99'\\x9bEv\\x10\\xcd6\\x8b\\x8cx\\xd1\\xcc?`\\xf3\\x88\\xb3<%\\x9b8_n\\xceHL7\\x17\\xde\\x84\\xac\\xe8\\x86L6+\\x0fS4o\\x92\\x94\\xfa\\x1bJ\\xbcx\\x9amPs\\xb2Ic\\xdf\\xf7Y\\xd7\\x8b\\x05\\x9d\\xa7I~:\\xdf\\x84\\x8b\\x8cl\\xb0l\\xf9b\\xcd\\x86r\\xc1\\xa6\\x93\\x84\\xeck\\x8f\\x84\\x939\\x9b}D\\x18\\xd8\\x92\\xe5&\\x8f'\\x1e\\xdb\\xbdl\\x80\\xa7\\x8b\\xe4$\\\\lN\\x13\\x9alN\\xf30\\x9dn\\\"o\\xb6Y\\xae<\\x8e\\x03\\xd9F\\x19D\\xecEt3Y\\xe4S\\xe2\\x1d'\\xf1\\x84\\xf8\\x07\\x9bE\\xc4\\xa0\\x95\\xd3\\x8d\\x14}6\\xd4#\\xe9,\\x9c\\x90\\x0dI\\xe3p\\xe1\\x1f\\xf8\\x07\\x9b\\xcc\\xdf,\\xbcpy2\\x0d7\\x84n\\x92\\xc9\\xe7M\\x12\\x9f\\xfa\\x9b\\xa5\\x17M\\xd2\\x04I\\xe0\\x06\\xf5L\\x1b\\xaeK\\xf07o\\xc27\\x9b\\xd8\\x0b\\x97$[\\xb1\\x96B\\x1a\\x9d\\x91\\x0d\\xb9\\xa0\\x1br\\xbe\\x89\\x16\\x9b\\x84n\\xf2\\xc5\\xc2\\xdf$\\x1e\\xb2E\\x9b\\x15\\x8f\\xaf\\xdc\\xa4\\x9b\\x9cn\\xceH\\x9aFS\\xe2oV^8\\xf9\\x1c\\x9e\\x92M\\x98\\x86\\xcbl\\x93Fgl]\\xd2\\x84\\x92\t%\\x0c\\x104\\x99$\\x8bM~\\xb2\\x88&\\xfe&\\xf5\\xc2\\x88a\\x8c\\x17N\\x93x\\xb1f\\x0b7\\xdb\\x9cF\\x19%\\xe9fEB\\xba\\xf9\\x92Gi9\\xefl\\x92\\x93\\x0d\\xd7\\xb3mh\\xba\\xde0\\xaa\\xe8\\xfb\\x9b\\xcc;Y\\xb3\\xc5\\x0f\\x17d\\xba!\\x8b\\xd9f\\x9e\\xa4t\\x13\\x9d\\xc6d\\xba\\x89\\xbe\\\"xB\\x1aM6\\xa8\\xd3\\xd9\\xa0\\xa9a\\x93\\x9fp\\x97\\x84M\\xbe\\\"\\xe9f\\x1dO\\xe6i\\x12G_\\xc9t\\x83\\xb1\\xc4>\\x83\\xe8r\\xb5`\\x83\\x9f\\x93x3\\x8f\\xb2\\xcd<M\\xce\\xb3\\x83M\\x1a\\xc6Y\\xc4\\x90&\\xcd\\xc9&]o\\xd6+\\xe2\\x85\\xb8?\\xa6d\\xb6\\x89\\xa6\\x9b8\\\\\\x92M2\\xf3\\xfdM\\xee\\xc5\\xdeD\\xa0\\xf9\\x94\\xcc<\\xc6.2<I\\xe2\\xcd\\x82d\\xd9&\\xe3c\\xa4\\xd1\\xc2\\xdfdd\\x93El\\x81\\xce\\xbc0\\xddD)\\xcd\\xc3\\xc5&\\x89\\xa6\\x9bd\\x11R&\\xcen\\xce\\xbd\\xc9<L\\x8f)\\x1f\\x10I\\xc9f\\x1e-\\xc8&\\xa2s\\x7fs\\x91\\xa4\\x9buD\\x16S\\xff\\x86 \\x80X\\xd6jw\\xec\\x07\\xbc\\xd2IArH\\xbdn\\xc5\\x02\\x8b\\xabGH\\xd2o\\xde\\x14t\\x9d\\xd1\\x88}v~,\\x94\\x03`0x\\x08[\\xa3A\\x00\\xb7F\\x9fn\\xfd\\xfbr\\xe4}\\xda\\xd9\\xfen\\xf8\\xe8\\xf1\\xfe\\xc3\\xcd\\xa7O\\xfd\\xe0`\\xeb\\xe6\\xdf\\xff\\x7f*\\xfd\\xbd5\\xfa4\\xf6\\xab7j\\x14Z\\x10\\xe8\\x19\\xeb8\\x82G\\xb0\\x87\\xa4\\xfe\\x11Z\\xdf\\xe2\\x82D\\xcf\\n\\xea<c\\xc7\\xd46L`\\x1b\t\\xf46\\x0c\\xc6\\xc5\\x9f{c$\\xc8\\x9f.nO\\xb6vvz\\xf2Mv\\xef\\xd6w\\xd5\\x9f\\xb7\\x18-\\xfc\\xbf\\xbc\\xc5\\xf1hgg5~h\\x90\\x07\\x00#\\x9d\\xb6\\x870se.\\xb52\\xda2\\\\}Hj|\\x97I\\xf5!\\xd9$M\\x18\\xcd\\x00\\xaa\\xf5\\xc6\\xd4\\xea3pP\\xfd\\xb9\\x8f\\xb1\\xee\\x1a\\x96Dj\\x075\\xed\\xef\\x19\\xdb\\xdf\\xab\\xb6\\xbf7\\xae0[\\xaf\\xc3\\x95\\x8e\\xe1\\xab1\\x90\\xaf\\xc3U?\\xca\\xb8\\x96\\x04\\xdd\\x1cI?\\x8b\\xbe\\x92\\x0e\\x1cd\\x95c\\xe4y\\xbd0\\x9cn\\x14\\xebxFL\\x82]\\x16X\\x1d(U%\\x96$=%\\x9eN\\n<\\x13us\\xdbGs&\\xf2\\x94\\xc7\\xa3]\\x8d\\x9f\\xe7\\x99\\xa8\\xf0\\xba\\xa5\\xc9\\xbb\\xce\\x9e\\xcd\\x0c\\xd5\\x93\\xd9\\xb3\\xc5\\xb7\\xe5l_\\xf1P\\xa6\\xba\\xc3\\x8a\\x8c>\\xf7|L\\xd1\\xce\\x06\\x87\\x11^\\xf3z\\x8a\\xf6\\xcc)E\\xfb\\x14\\xab\\xfc\\xa2AB\\xefGR\\xbc\\xdc\\xf4\\x86\\x99\\x06Pw\\x06\\xae_X\\x8b\\x8c1\\xa6\\xd6\\xb7N\\xf1\\xadA\\xcb[K\\xc6\\xd3z\\xa7\\x01\\xc4\\\"\\x83\\xc9\\x00K\\xede\\x84za\\x00k[\\x81\\xe2&*H\\xa1c\\xc9\\x84\\x8e\\\\:\t.1\\x19\\n\\x0fq[\\xea\\xb9A\\x0d\\xb1hM<?\\x13\\xe6\\xec\\xc5\\x9f\\x91x\\x1e\\xf3\\x8a\\xcc\\x95\\xc4\\xf3\\xf3\\xebI<?\\x93\\xbeY\\xfa\\xba\\xb9m\\x129\\x94\\x12O\\xa3\\xea,\\xe9\\x93\\x0b\\xe4H\\x9fG\\x0b\\xf2&\\\\\\x92\\xe7i\\xb2\\x142\\xcd\\xb3([%Y\\xc4h\\xeb\\x8f$\\x9c\\x12{`\\x19(\\\"\\xde\\xadY\\xb4 \\xec\\xd8\\x1e\\xf6\\xbc\\xd1\\xbf\\x1e\\x8e\\xbf\\xf3\\x1f\\x1e\\xf4nE}rA&Z\\xc3A\\x91\\x81\\x8d;>U\\xdb(\\x9a([0\\x11\\xa7\\xc2\\x9b\\x8d{\\x87\\x95\\x84\\xbe$U\\xa3\\x81\\x86\\xb8H%\\\\\\xa3\\x08J\\x80\\xf6\\xb5l\\x12.\\x9e\\x86\\x19\\x1b\\xd6\\x93\\xea\\x9d\\xe7b\\x90\\xad\\xa0\\x91\\xeaG\\x8f\\xf6Sn\\xe8\\xf7n}\\xea\\x8f\\xfe\\xd5\\xbf5\\xfe\\xee\\xc6-&J4K\\x7f\\x92~\\x16\\xc6\\x11\\x8d\\xbe\\x92\\x8f\\xe9\\xa2\\xb5\\x87H\\xad_\\xabz\\xdb0a\\xadW\\x8b7\\xd2\\xc9\\xd6\\x8abp\\xa6\\xf6\\xeck\\x8f\\xe0SB\\x9fL\\x18\\x97\\xcf\\xb0%M\\x16\\x8b(>}G\\xb2U\\x12g\\xed\\xd0\\xa8\\x9dd\\xa5\\xc2\\xbf\\x1fe\\x8a\\xf6_Q\\x87\\xb0\\xa51i\\x0c\\xaa\\xc7\\x9e\\xfe\\xcdR\\xbf4\\x8b\\xe2\\xa9\\xd7\\xaa\\xac\\x91Wq\\xc2e4Li\\xf6kD\\xe7^o\\xafW\\xe8#U\\x15*\\x83\\x89\\xd7\\x9b\\xf0\\xdd\\xc3\\xad\\xf6\\xff\\xbe\\xf4K,lz\\xfe\\x01\\x98+X\\x15\\xaa\\x1d\\xaf'\\xba\\xe8\\x89\\xc4\\x9b\\x1a;\\x89\\xa1\\x8d\\x14\\x9d\\xe64\\xe3\\xd27\\xe2\\x17\\xca7a\\xea*\\xb3\\xa4\\xc5\\\"O\\xa2Y+\\xc7\\x9aM\\x9bx2%d\\xb5X\\xbf\\xa7i\\xb4zI\\xd65~\\xcd\\x927\\xecZX\\xaab\\x99[\\x94\\x81:\\xa7L=\\xb6ut\\xbb\\xafZ51\\x99N]K\\xb7\\xd9\\xa8\\xe4\\x8f\\xf1q\\xb1\\xcd\\xd4&5\\xef5e\\xf8\\xbf\\x19\\xb05d\\xb1\\x86\\xa3\\x91\\xc6\\xe4dVh\\xe3\\x98b\\xee\\xa1\\x17a=D\\xd4*\\x8a\\xc8mv\\x87\t5<\\xa1\\x0c\\x15o\\xe8\\xd3V_\\x9aU\\x90\\x91\\x86\\xec!\\x15s\\xb1\\xa3F\\x86\\xa2\\xdd\\xa6\\x94\\xe2\\x80^)\\x0c\\xb9A-\\xeb\\xcdp\\xddp\\xa6\\x18\\xad\\x16\\xb4m\\xc1)\\xb7Z\\x94\\xd5\\x8dMn\\xf5P%\\xbeU7_n\\xdf\\xd3T\\x94+\\x98\\x9d6\\x83d\\x91o\\xb1\\xd9\\x84iM\\x18L\\xc4g\\x1a\\xd2\\x1f\\xa3\\x03\\xc6\\x87\\xa4p\\xeapX#\\xfe\\x8da\\x8d\\x94\\xde\\x8chR3\\xfdU\\xdfc\\x9bb\\\"\\xfd \\xee5\\xfc\\xfa\\xa1\\xc8\\xbaq\\xfbN=<\\x05D\\xee\\x0d\\xf4\\xb0\\xb83\\xd0}\\xba\\x92-\\x7f\\xbf\\xab{</\\x1e7\\xa2\\x06@\\xe4\\xde\\xc0\\xc6\\xefk\\xbd;\\xce\\xc4\\xe3;\\xfa\\xbe\\xd7\\xe2\\xf1\\xf7Z\\xcf\\x91S\\xeeC}\\xa7\\xee,\\x0d\\x82I\\xc7a\\xedi\\xfb=\\x16\\x8f\\xef\\x0e\\xbe\\xaf\\x044\\x80\\xea=|\\xd2\\xe2\\xbd\\xe0\\x1a\\xd8\\x00\\xe6\\xe0\\x06hZ\\x90\\x1aK{\\x0eC(\\x0e\\xc1\\xe6T.4~<\\xed\\xba\\xfd\\x86\\x94\\xac7\\xc84\\x07k\\x02\\xd6\\xfbN\\x86g\\x01+5\\xfb\\x05\\xb6nh\\xfc\\xd0\\xee\\xc0\\xbaE\\xad\\x16V\\x17ZeY\\x03\\xd5aj.?2\\x81\\xe1\\x89u\\xa4\\xac\\xdfU\\xd9/\\xfb\\xb9p\\x1fF\\xd5\\x8f\\xab\\x95\\x89\\xb3\\xa8~\\xba\\xf1\\x11#\\x83@l`Rn\\x1b\\x1b\\xbf]m\\xfc6o\\xdc\\xca\\x8bW\\x8d\\xf4\\xa2\\x0f\\xe4>\\xaa\\x0f\\x89\\xaf\\x16_e\\x0f\\xcf*\\x07\\x89\\n-\\xa3\\x05\\x19\\xb3\\x16\\xf4\\xa3\\x18\\xf5\\xe3\\x99\\x17\\x97\\x0c\\xb8N\\xb7\\x02\\xaa'\\x809:\\xd7m\\xa3\\xc1\\x01(\\\"A\\x84A\\x13\\x11\\x16Z5\\xf2\\\\.hm\\x8d\\x95t\\xf1<\\xc0C\\x9c\\xe2\\xa7Q\\x93\\x18p\\xfe\\xad\\x9f%K\\xd5s\\xa2\\x8d\\xddd\\xbd\\xac\\x95a\\x8eb\\xc6[\\x8db\\x8d\\xdd\\xeb\\xb2\\xbe%\\x9a'\\xdf[\\x83\\xdfc\\xeb\\xfe\\x80\\\"\\x10\\xf01\\x94\\x02T\\xef\\x97p\\x91\\x13\\x1e\\xe8uB`A\\xb2\\x0c\\xe8<\\x8cA\\xb4\\xdck\\x8e\\xb1\\xb9;\\xfe0\\xf8gv\\x18\\xd3#\\xf3\\x98NQ\\xe5\\x9e\\x8aa\\xf1\\xc6\\x9d\\x86\\xf5Y\\xefI\\xda~Z\\xa0\\xa4y\\xeb_;\\x07\\x9f\\xa6\\xdb\\xde\\xa7>\\xfb\\xc7?\\x90\\xb6\\x01EN\\xad\\x0d4\\x04\\xc1\\xf8\\xb8\\x0c\\xee\\xc8\\xe0\\xfa\\xdamt\\x0e\\x83\\x8a!\\xe2\\x8d;\\x0d\\xeb\\xb5\\xceE\\xd7mLx*\\xd5\\xf2+\\xd4\\xbc\\n\\xcd\\x90\\x9bE\\x0b\\xe24\\xc0\\x0f\\x06\\xbfb\\xb71\\xf6h\\x9a\\x13N\\x1aD\\xccR\\xb8\\xc8\\xd4\\x1b[\\xbb\\xca\\xdf\\x03\\xc9\\xca\\x9bF}\\xc2\\xbbw\\x1a\\xf8S\\xbd\\x8f\\xb4\\xdb\\xb8\\xf9`5\\n\\x1f\\xf3\\xd8\\xc4\\xcb.C\\xfb\\xd9\\xe4\\xd3\\xed68^\\xb1\\x9f}V\\xb8\\x0b[VZ6\\xef4\\xb2w:\\xf7s\\xb7QIqO\\n\\x1b}\\x9a\\xbcJ\\xceI\\xfa4\\xcc\\x88\\xe7\\x07\\xb0u\\xeb_\\xa3\\x7f{\\xe3\\x83\\xd1\\xee\\xce\\x83pg6\\xfe\\xf7\\xfd\\xcb\\x9d\\xe2\\xef;\\x0e\\x7f\\x0f\\xf6.G\\xfe\\xe5\\xd8\\x890\\xb0\\x91;M\\xf8\\x8d\\xd1\\x0b\\xdf\\x9d\\x98\\x96\\xbc\\x89\\x1b\\x9d\\xe7]8\\x0d\\xef\\x951t\\xa0\\xfb\\xf0:\\x90\\xfc\\x0e#|f\\x08xp\\x1e\\xdf\\x16O\\xebpzx\\x81\\x1e\\xc9\\xb6\\xa5\\x9d%\\x8bEr\\x0e+\\xd1I\\x0f\\xb6u.\\xec\\xd53\\xbc\\x19\\x9e\\xd1:\\xb2\\xabr\\xb67oV~\\x9b\\xb9Z\\x13\\xc7\\x8b\\xac\\x1eR\\x9e\\x93d\\xba\\x16je\\xae`\\x8c\\xe2\\x1ew\\x93\\xc7_h\\xc8:\\xbeX.z<N\\xb9\\xbciJ\\xfb\\x9b\\x94\\n\\xcf\\x94\\xa0\\xa3\\xc2\\xd4\\xf4*\\xe6W(\\xfb\\xca0\\xd0\\x85wdP\\x12\\xe7\\xc5j\\xa5f\\xcbc\\xce\\x9b[\\n>\\xc7\\xd0\\xf9LyS\\xb0\\x1e\\x867\\x17\\xe5\\x9b<\\xc9\\x85\\xfe\\xb5U\\xf9\\xda,I\\x97!5\\xbd8\\xaf\\x8cQ\\xec\\x00\\xc3\\xbb\\xd3\\xca(\\xed\\xef\\x9e\\x95\\xef\\n\\xc4\\xad\\xa7\\x1e\\x01\\x01G\\xeet\\x950\\xa67\\xb2f\\xe6\\\\3\\x91\\xbdT\\xcc\\x0d\\x01\\xbf\\x8c\\xf4\\xfd\\x83Pe\\xf4B\\x99\\xe0[\\xbc_\\x15\\x9ay\\x82\\x97H\\x16\\xd306u\\xackJot\\x94MN\\x92<\\xa6&-:\\xbbN0\\x9c\\x8fq$\\xcal\\xccl\\x8d\\xb9!\\xd4eH&\\xa1l\\xcb\\x8bx\\xa6\\\".\\x96X\\x06r\\xc1\\xbe/\\xb5i\\x95\\xcfw[\\xbf\\xc6\\x94\\xf1\\x92\\xf9\\xeb\\xfe\\xf9\\xa1\\xc1\\xc8\\x0e\\xd2\\x00\\xd7\\xd0B,\\xcc\\x9e|V\\xed\\xaa\\x9bdvhp\\x08\\x90\\x17O\\xef\\xad\\xd7\\x11G6u\\xac\\xbc\\x94\\x80\\xa7\\xc8\\x0fD\\x7f\\xc6/\\xda\\xed\\xcf\\xf2\\x92\\xb4\\x88\\x1b\\xb8{H\\xf7\t;\\xde\\xf88y\\\\bq\\xf6\\xe1\\xf1\\x80c\\xe9\\xf9\\x81\\xa1\\xfc8h\\xf5\\xb9 \\xb6\\xe3\\x13F\\xd2\\xd7\\x01\\x9c\\x16\\xb5#0\\xb5\\xfd\\xfb\\x00\\x0e\\xc75\\xe1\\xd5:\\xf6R\\xdf\\xa4}E\\xa7\\xe6\\x07\\xb1\\xd4\t\\xf2\\xcfe\\xf9\t9\\xf7w\\x82\\xd6\\xc3,\\\"\\x8b)D\\x19\\xe6\\x0fY\\xa5\\xc9Y4\\xc5\\x13@G\\xb1e\\xa3g\\xb6\\xc1\\xb2\\x89\\x7f\\x85!<\\xf3\\xa2\\x00\\xce,N\t_\\xd1\\xc4\\xc1\\xc7\\xf3\\xd5\\xd5\\xd9\\x00\\xc4\\x10\\xe6\\xe5\\xd6\\x99\\xb7\\x8d\\xe69\\x0c\\xe1\\x0d\\x1b\\xcd\\xdc2\\x9a\\xe7\\xcah\\x9ew\\x1d\\xcd\\xb4m\\x08\\x1fa\\x08\\xaf\\xd8\\x10\\xea\\xa5E\\xd4\\xeb\\xa32\\x84\\x8f]\\x87\\x10\\x96\\x00\t\\xdbF\\xf3\\x03\\x0c\\xe1-\\x1bMh\\x19\\xcd\\x0f\\xcah~\\xe8:\\x9aY9\\x9aY\\xdbh\\xbe\\xc0\\x10\\xfe`\\xa3\\x99YF\\xf3E\\x19\\xcd\\x97\\xae\\xa3\\xa9\\x1e\\x89m\\xe3\\xf9\\xdd\\xe2\\xb7$/\\xe4n\\xbc\\xdfQC\\x1eR\\xb2C\\x99\\x1c\\x85\\xcd\\xaf\\xe0\\x00~\\xf6P\\x85\\xd6\\xcb\\x99\\xb0Q\\xdc}\\xc7\\xef>\\xe5D\\xd4\\xcc\\x17\\xc9K\\xcc\\xf6w\\x93\\x1bKIf\\xab\\x07[\\xdb\\xfc~\\x85!|\\xf0\\\"\\x0b\\xb0qv\\xbfv\\x18\\xe3\\xaf\\xedc\\xac\\x1c\\x9emC\\xfc\\x05\\x86\\xf0\\xb9}\\x88\\xbft\\x18\\xe2/\\xedC\\xac\\x9e\\xd0mc|\tC8j\\x1f\\xe3\\xcb\\x0ec|\\xd9>F\\x95\\xc1j\\x1b\\xe1\\x8b\\x96\\xa1\\x1d#\\xf3S\\xb0a.\\x03}!y\\xd6\\xa3\\xd8\\x1b\\xf5\\\"J\\x96Y/\\x00\\xceg\\x8f\\xfd\\x00\\xa2\\xa6\\xa1\\xbb\\xcd\\xd7\\x03\\x14\\xc1\\xaam\\xdb\\xb1\\xab\\x82I/\\xd0I\\x82!\\x0b\\x06\\xabV\\x97P><\\x12\\x0fU*\\xf0\\x02\\x190\\xf6\\xf4)\\x13*\\x03ap\\xe7\\xeb`\\x1f,\\xbb\\xa2xJ.\\xf6\\xa1\\xc5g\\x90]$M\\x93t_\\x13/\\xa7^\\x97\\x96x\\xb0v\\x9cP\\x18\\xe46\\x94\\xb8\\x01Cx\\xdd\\x8e\\xb47\\\\pA\\x00\\xeb\\x86+56\\xda\\xbd5\\xfe+\\xcdl\\nvNI:\\x1a}\\xbb\\xbb\\xb1\\xc6\\xd2\t\\xc2/\\xa8\\xab\\xd8\\xdf0h\\xe9\\\"\\xa0\\x19\\xbco],\\x17BwE\\x8c\\xf2]\\xc4\\xbd\\xae.\\x96\\x0b\\xdc\\xb6\\xf8\\x17\\x166\\xb2\\xad9\\xd7\\xf3\\xb0o\\x98\\x94/\\xbe\\xfd\\xf7e\\xc0\\xbe\\xbfq#%3\\xd5\\x1d`\\xbdBO\\x18\\xda\\xc7}\\xcd\\xff\\x14%WD\\xb9'\\xda\\x0f\\xa7S\\xf4M\\x0c\\x17?\\x97O\\x0e\\xe0o\\x8f\\x0eX\\xe3g$\\xcd\\xa2$\\x1e\\xf6\\x06\\xfd\\xdd\\x1e\\x90x\\x92L\\xa3\\xf8t\\xd8\\xfb\\xf8\\xe1\\xf9\\xce\\xfd\\xde\\xc1\\xe3O\\xb1pl\\x87\\xdf^\\xbf\\x02r\\x81K\\x0c\\x13\\x9e\\xe2\\xf7\\x84\\xc0)\\x89I\\x1aR2\\x05\\x1e\\xa4\\xf47\\xa3\\xff\\x93\\xbc\\xa4!LL\\xa7\\x8f\\xa9\\xb1\\xbd[\\x9f\\xde\\x7f\\xf7\\xe9\\x96\\xf7\\xe9\\xfd\\xb6\\x7f\\xe3\\x96\\x05\\xd9K \\xc2\\x10\\xa2\\xd1\\xa0\\x19\\x8c\\x08F\\xc6B1\\x16\\x9eJK\\xed\\xf4)\\xea\\xcb~{\\xfd\\xea\\x90\\xcf\\x8d;\\x93\\xb8\\xf8\\x80\\xb0\\x89$\\xc2\\xc3\\xa8l\\x8fo\\x82\\xe7i\\xb2\\xe4\\x1bA\\xb4\\xd7\\x9c\\x91T\\x8a\\x99$\\xbb\\xa4M\\xb2K\\xb0\\xbcm\\xcd\\x13&)=a`_\\xc9y\\x06Pxi\\xaaYP\\xac\\x8e_g\\xa2\\x0eI=\\xa9\\x92\\xbc\\xd8\\x12\\x94\\xe2\\xfc\\\"\\x99\\x84\\xac\\xa9~\\x86\\x8d\\x1b\\xf4K\\xa5\\xde\\xd2\\xb4\\xb5z\\xa8\\xa47\\xee\\x11y\\xf0\\x90~\\x96\\x9fd4\\xf5\\x06\\xbe\\xac\\x17tS\\xa7\\x8d\\x01\\xd5C=\\x85(\\x86\\xd8\\x87\\xb8^>%\\xe5\\x8e\\x8a\\x18g8J\\xc7\\xb2\\xc5!&[\\x1bM\\xc9$\\x99\\x92\\x8f\\xef\\x8e\\x8a,]^:\\xda\\x1d\\xfbc,\\xdd;@u\\xa1\\xf6\\x9d\\xc1\\x98\\xdbU{.\\xf8$\\xb7us\\xcd\\x9a\\xd9l\\xec\\xb4\\xd5h\\x15_\\x86+\\x07\\x7f6\\xf19\\x12\\x83\\xea\\x8c\\x88\\x0f\\xdb\\xd0\\x1b\\xa2\\xb6\\xb6\\xf9\\xb4\\x9a\\x99T^\\x97~\\xff\\x8f$\\x8aqy\\x9aS\\x13\\x19{\\xec\\x83\\x92\\xf3\\xa9d\\xdd\\xa0\\\"n\\x17K\\xd5yD1W\\x04\\xd0\\xcb\\xe9l\\xe7~\\xcf\\xf7\\xcb\\xbb\\xbd\\x930#\\xf7\\xee\\xe8\\xc6Pf\\x10jv\\x9d`\\xb8Y\\x94\\xc4\\xd9{|\\xcb\\xe4\\xb5\\x13.V\\xf3\\xb0%\\x97\\xacz\\x154\\\\j\\x13\\xe7=\\x1f\\xb7\\xd0\\x02S\\xc1\\x85)\\xf1\\x88\\xfa\\xccpd\\xeb7\\xe6\\x92\\xd0y2\\xbd\\xf2h\\xf8\\xe7\\xa6\\xf1\\xc8\\xa7\\xceLDs\\x8c4<\\xfd\\xb3\\xc0Y\\x1b\\xb2\\xf3 5\\x98Y\\xcb4\\xe5\\xc6\\xce\\xe8\\x9cT\\x94\\x8c\\xeeQ\\x0cF\\xbd\\x91\\xf4\\xe6\\xa5F\\x0f\\x11\\x85m\\xe1\\xa5oz\\xe5\\xdf\\xa2\\xcc\\xd1(\\x0e\\xd8\\x06\\x0dt\\xfb3\\xf5K\\x9f\\xfa\\xff\\xd9\\xdb\\xbdu\\x1a@o\\xbb\\xe7\\x8f\\xc5\\xfe\\xd4-\\xa9\\x91J\\x11\\xdb\\xa6\\xd6d\\xee\\xaa\\xac\\xa4\\xc1\\xb1\\xa6P\\x9a1\\xc25-\tW\\xac8\\xe5\\xb4\\xb9\\x8ct\\xf2\\x18\\xa9\\x8e\\xbc\\ns\\xa9\\x143\\xa4's\\\"\\xc0:\\x8f[d\\xcaT:&\\xcc\\xd9\\x98\\xd4(\\x8d\\x96\\x9e\\xb2H\\x9f2\\\\\\xa3c\\xb4\\xd8\\xf4z\\xb6\\xe1\\x1a\\x92\\xab9\\x0d\\x93\\xc1\\xec\\xb8\\x84\\xd9\\xd7\\xa6{Y\\xa0I\\xe7\\xe6\\xd44m\\xe6\\x9b\\xb0\\xecd\\xf1\\xd1\\xad\\x7f]\\xec\\x14\\xccu\\xeb\\xb2\\x05\\xc6\\x14t\\x7f\\xe6\\x08\\x85\\xfdgS\\xd8\\x976\\x85\\xf5h#\\xecb\\x1ba\\xf5r\\x9f\\xca\\xff)\\x1f\\xf0\\x94\\xdfl\\xa7x\\xf7\\xee\\xfb\\xfd\\x1f\\xf2\\xd9\\x8c\\x08\\x7fq[\\xf5\\xa3\\xb3\\\"sSq\\xf2\\x95x\\xa2\\xa6\\x19\\xacX\\x8c\\xc0%S|o\\xc49U\\xfe\\xe9\\x18\\x91:nT\\x8cr\\xca\\x06\\x89\\x94\\xae\\x1cWjcD\\xf59\\x0eAaO\\xf9T\\x94d\\xbc\\x8bhBL^\\x97\\xc4\\xb8\\xbc<\\xa4\\xaa\\x9aL[\\xe4K\\xe4\\x14@-1\\xe1c)+S.\\xd9zZr\\xfdP\\xecx\\x99\\x97\\xbe\\xaf/\\x9b%\\xb9\\xf4-\\xa6\\xd6\\x16\\xc3\\xb2\\xc5\\x17\\xae-F\\xd6\\x16\\xb3\\xb2\\xc5\\x1b\\xae-&\\xed\\xb3\\xbey\\x13\\xb6&e\\xd3?\\xba6\\xadI-\\xaf4\\xbd\\xe5mQ.\\x87\\x8f\\x16c\\xb7\\x06C\\xd7\\x06\\xeb\\x898L\\x0df\\xae\\x0d\\xce\\x1d\\x1b\\x9c\\xb4\\xaf\\xf8f\\x83\\xdd:57s\\x1d\\xdf\\xb41>\\xf5\\x17\\xf1R^\\x83\\x85x\\x91\\xfc#\\xe1\\x7f\\xc4\\x8a3+\\xcf\\xd5\\xcd\\xee\\xbc$kL\\xcf\\x17\\x8a\\x17\\xe2)\\xb9\\xc0\\x1b\\x19\\xbf\\xf1$\\xcb\\x92I\\x84\\x99!\\x00s\\xb8\\xc4e\\x00\\x1c`x~\\xdc\\x97m\\xb0\\xae\\xfbe\\x0bl\\x00\\xfd\\xf7\\x04k84\\xe9\\x07\\xa6\\x19\\xf8\\xfb\\xdf\\x8f\\x8f\\x8f^\\xbf\\xfe\\xf8\\xe1\\xc9\\x0f\\xaf\\x0e\\x8f\\x8f>\\x1c\\xbe\\xc3?\\x8e\\xff\\xfew\\x8dji\\xd5\\xfc\\xe2\\xe5\\xe1\\xef\\x87\\xcf\\x0c\\xaf\\xcf5\\x1d\\xbcyv\\xf8\\x9b\\xf1\\x83i\\xf3\\x83\\xb7\\xef\\x9e\\x1d\\xbe3~p\\x06C\\xb8\\xdb\\xbc\\xbd\\x86!\\x0c\\xe0\\xd1#]\\xb5\\xf3S\\x18\\xc2\\x1av@\\x93\\xaa\\x7fi\\x90\\xf7\\x8f\\xed5\\xae\\xf7\\xeb\\x89$A\\xcf\\xf9\\x9f\\\\\\xa5\\x19\\x13-?o9\\xd8\\xb9q\\x18\\x0b\\xbb;\\x92\\xe4\\x0b}\\x8bT\\x1c\\x0dE\\x83\\xbbn\\xdb\\xe9=O*\\xaf\\x7fxh9\\x89D\\x84\\x9bF\\xaf^\\xa9\\x0e%\\x0bH{\\x98x\\\\\\xa88w\\xb0JH*r\\x9e\\xcb\\x94\\x05<\\xd3\\xc6\\xeeCLw\\x11?\\x84h{\\xdb\\x87t\\x14\\xf1$\\x89\\x11\\x13\\xe8\\xcd\\xee\\xf5\\xa9\\xd3l\\xed\\x01\\x0d\\xaa;:\\x06\\xa2\\n\\x98f<\\\\\\x82\\xf6\\x8f\\x8fy\\xe9|\\xe2\\xfd\\xc1OW\\xf6\\xc4\\xa9\\xe3\\xb7\\xd6Tb\\x85\\xf5A)\\xe9a\\x13\\xc1P\\xb9\\x04\\x8f\\x1f?6\\x995\\x84\\x92j\\x1bb\\x11C\\xbd\\xd9\\xc0\\x9d\\xbd\\x07w\\x1e\\xdc\\xfb~\\xef\\xc1]\\x9ca\\x19\\x99\\xf8&|\\xa3o\\x85MZ\\x93\\x92\\xcf\\x04>\\\"\\xcax#\\x90\\xb7Q\\xf1\\xe1\\x06\\x9c?l\\xc5\\xf2\\xeb\\xf9\\x9c\\x0dm|v\\x90\\xda<\\x19jP\\x16\\x9d\\xde\\x92Q\\x91\\x14\\x1e\\x0da'\\xae\\x14,\\x1cJ\\xd0\\xd5_&\\xf0xXW\\xc0\\x9a\\x06v\\xd4\\x96\\xbd\\xf1\\x83\\x18\\xb9\\xe3\\x86}\\xed\\xda^\\xbd\\xaa\\x8f\\xa1\\xbd\\x0f\\x0e\\x80\\xab\\xc5i\\xc4\\x986\\x97/\\xb6\\xba\\xbf\tl\\x03\\x1a\\xc5j\\xb1\\xb4\\x8cC\\x92\\xe5\\xe2\\x99\\xbc`\\xac\\xde\\n\\x02\\xbf\\x9f6\\xabT\\x83pd\\xd6\\x9c\\x07\\xef`\\x08{\\xcd\\xdbo\\x9c\\xb3\\xb6\\xf3M\\x9d\\xa4\\xcd6^\\xf1\\x93N\\xbe\\xa09\\xda\\x9e\\xc1\\x10\\xde0\\x1cye:\\x02\\xbe\\x1a\\x08\\xf6<\\xca0\\xbb\\x8833\\xfe\\\\\\xae\\x94!\\x99\\xa7\\xb4Z\\x94\\x0b\\xc5\\xb6\\xe0\\xa0\\xb2l#\\xf6\\xbd\\x85\\x8a\\xc2\\x01\\xa4\\xc5\\x19\\x12\\x89\\xb2\\xc0\\xd6\\xd3\\xd0\\xe0\\x078Mb\\xd3\\x89\\xebH\\xab?\\xda\\xa8\\x82uH\\x1c\\xfd\\xac\\xe3j\\xad\\xdcc\\x18\\xd4\\x0fv\\xees\\xebWW6\\xf6\\x8b\\x9d1\\x00S\\xd5h\\x8a8\\xe3\\xd4\\xc5\\xefv5\\xe0\\xaf\\xda\\xf4\\x1d\\x05-\\xe7Un\\xb5\\xc5\\x96\\xf5\\xdd\\xfdj\\xef\\x8e3(o\\x90\\xd6\\x8e\\xde`\\xedR:ze\\xcaM\\xa4\\x9d\\xbb\\x92\\xb7\\xdaiD\\xbf8\\xc0X\\x13\\xcc,\\xb8\\x14\\xa7.^Z\\xbb(\\x92\\x01\\xa8G\\x8e\\xdc\\x8e\t\\xcf\\x95-\\x85\\xe8>M0]\\x83\\xb5\\x80\\xb5\\xbc$P\\xd1y\\xbd\\x12\\x167\\xac\\xd5\\xe6!\\xe7@\\xa85\\xc3\\xfb\\x96\\xa9^\\xd8\\xe1\\xc5\\n3\\xd3q\\x06\\x0d\\x92\\x14\\\")\\x15\t5K2\\xe3[.\\x0b\\xd8\\xd3\\xcf(\\xdd\\xf0G\\xfb\\xe8.o\\xeaV\\xbb\\x8a\\xecj\\xa6\\x083\\xc0\\xfd\\xc5\\xb7\\xc1\\xbdO\\x13\\x94\\xc5$\\xc4\\xc5\\\"\\x84\\xcd\\xb5\\xa0\\x98\\x9f\\xfd0\\xa6\\xe9\\xbax\\x99\\xba\\x8e\\xf2\\xc6\\xb7\\x8dR30\\xa2\\x0e\\x84\\x8dSH\\x91\\xf2V\\xe8<\\xb6\\x1f\\xadc\\xf3\\xbe}pr4h\\xe0\\\"\\x14\\xef\\xd7F\\xa6\\xfe\\xfa\\xaa\\xa8\\xaa\\xa8&\\x1f\\x81e\\xb0\\xbd\\xd1\\x918\\xa0\\xc75\\x05t\\x00_\\xfb/\\x0f\\x7f\\x7f\\x0fCx\\xca\\xfe\\xfe\\xe5\\xc9\\xab\\x8f\\x87\\xec\\xd7\\xcf\\xec\\xd7\\xe1\\x9b\\x0f\\xef\\x8e\\xf0\\xe7\\xbb\\xa0\\xd2\\x7f\\x14g+\\x9e\\xed\\xbc6\\xaa$O\\xab\\x99\\xb9m\\xf4\\x85\\x1d\\xf0\\xe6\\xdc\\x0bJ\\xcb\\xa3g\\xe3\\x0em\\xd6\\x1b\\\"\\xdeK\\xae\\xb7x\\xd9Of\\x8e\\xed\\xbc\\xf4\\n'\\x92\\xc6\\xc0^V\\xa7L\\xbe8\\xb6\\xa9\\x1b\\xdb\\xcb\\xab/*\\x82\\xef\\xf8\\xb84\\x8e\\xb2\\x91\\xfc\\xbb\\x17@\\xef\\xb2i\\xcfQ\\xfb\\x99\\x84\\x939yG\\xb2\\x962\\xc7JW[\\xbc/\\xfc\\x10d\\xc5\\xafB\\xd6\\xfb\\x18\\xe3\\x83)\\x17\\x06\\x957\\x87\\xfc\\xc5\\x12\\xeb\\xcb\\x8a\\x0f\\xa2\\xfc\\x99\\x14\\x1c\\xcb\\x8f\\xc4\\xd9\\\"^\\xb0M\\xa3\\xe8\\xdf%\\x86HLdB\\xcb\\x82d\\xbc\\x02\\xa8K\\x0f\\x89S\\x00\\xbe\\xe8b\\xd6\\xda\\x05\\xf1^\\x04\\xf0\\xd2\\x0f\\xe0Ee\\xf1%\\xbdu\\\\\\x13=\\xa6\\xdf\\xe0-\\xdfp\\xc7\\xf4\\x1b\\x16L\\xbfQ\\x19`II\\x1d\\x9b\\xd6\\x0d\\xf1\\xc65#\\xfc\\x88!\\xfc\\xb8\\x89\\xf07\\xae\\x19S\\xea\\xb5\\xdd\\xf5=|\\x13\\xa64\\xbb \\xde\\x8f|=\\x7ft_\\xcf\\x1f-\\xeb\\xf9c\\x8dr\\xd1o[\\xcb\\x97\\xfd(\\xe3-D\\x94\\xfd\\x92\\xda[\\x86\\xdeB]\\xcb\\xc6\\xaf(ro4\\xb5\\xb7?\\x05\\xf0\\xcf\\x00~\\x0b\\xe0\\x1fM\\xa5\\xe9\\xfb\\xc3\\x7f\\xa0\\xc2\\xd4$9Rj\\x11\\x1d\\x8fCQ+\\x83\\xd6\\x88M\\x17\\xf6\\x95\\x18z\\x90\\xfc\\xa50.}&\\xebL\\xcbC\\xf2\\x91$\\xb26\\x88\\x1c\\xca\\xf1gQ\\x0b\\xab:4\\xd2eh\\xb1u\\xf2Q\\xa9\\x9f7\\xcc\\x9f{\\x16:+\\xe8\\xd2\\xf6\\xee\\x84\\xe1,\\xa8\\xdd{*\\x0e\\x83zm\\x1fCG\\x91\\xa1#y\\x16\\x95\\x06\\x8c\\x7f8\\x1aX\\x90\\x1b36\\xf8\\x13k\\xcd\\xfbI\\xe8Z)\\xf5F\\xe3Ff\\x16}\\xbby\\x0brh\\xd2\\xe0\\x88.\\xa8\\xdf\\xe4\\x9a\\xbf\\x94o\\xa4\\xfa7~(\\xdf\\x88\\xf5oh\\xa5\\x9c\\x83R\\xc8)TOf\\xcf\\xbe\\xabK:\\xa3\\xcf\\x01\\x9c\\x8dAd\\x8a\\xed \\xf1t\\x92Y\\xc3\\x16\\xa0gza\\xee\\xdb\\xa7\\xc7\\x05\\xb9k\\x9aEfG\\xf2_j\\xd8\\xa2A\\x0f\\x0d>\\x14\\xab\\xeb4\\x04v\\xc29\\xa9\\xcb\\xa8`\\xcd\\xf4@\\x8dL\\\"xa\\xe5H\\xd8\\x01QZ6\\x06\\x01\\x864\\xef>\\x84\\x1c\\x1e\\x0d!y\\x08\\xf9\\xf6\\xb6\\xa9\\x11\\x10\\xe3\\x08\\xd1S8f\\xa2\\x15\\xec@\\xced+\\x83\\x7f\\x15\\xc8\\xc5\\xe6z=\\xe2\\x85\\xa3\\xc18@\\xc5]8\\xda\\x1d\\xb3/\\x03P\\x02\\xdas\\xd8\\x86\\xa6\\x12\\x0e\\x1a\\xe2\\x97\\xbc\\xe4g\\x8d\\x87\\x96\\x04s\\x0dV\\x99g\\x83tZ\\xa6\\xd9\\x9f\\xbcL\\xda\\x152B\\x96\\xaf\\x9c\\x0d0\\x0c\\x1b\\xbfzV\\x96B^\\xd2\\xf9\\xc3}a%\\xf0\\xb7\\xb7\\xe11:W\\x9b\\x1b\\x077u\\xa7\\xbc\\x8cjOy]\\xc2><g\\xeb\\xc60\\x89\\nL\\xe2\\xe8LG\\x03C\\x11\\x0fM\\x18\\x89\\x03\\x9a$\\xe9\\x15\\xf0dA\\xdb\\xf8M\\x02\\x07\\n\\xeb\\xe4\t\\x94\\xc2\\xc4Sz02\\xbc\\xa9\\xa7M/5\\x8c\\\\\\xf7\\x19a\\x137\\xbc\\xb8\\xe6\\x98lk\\x17\\x94I#D\\xb1\\xda\\x8c\\xa1:\\xd3\\xa5)\\xc36\\xc6\\xa3R\\xe3\\x90^\\xfc\\x07\\x86$\\xb7@s\\xd1\\xd1\\xaa\\xc3\\x0b\\xab\\xe8\\x07\\xd0\\xebi\\x93\\x052\\x9a\\xberVY\\xad\\xec\\xa7\\x8a\\x86\\x1f\\xb9!=\\xcaW\\xd5\\x02\\x85s\\xca\\x9f\\xbf\\xa8>\\xc7\\xcc\\xb9P\\x1f\\xa9i8s\\xfbp\\xa4E\\xbe\\xe2w5\\x94<u]\\xab\\xa6\\xbe\\xe6\\x06\\x8d\\xa9yGD<A\\x8e4_\\xd2\\xa2:;\\x11q\\x0b\\x92\\xd941J\\x9c\\x05%\\xd6\\x8cqF5\\xbdpBx;3\\x1a1\\x88|\\xc3\\xb65E\\x8a\\x1f\\xf1\\xa6\\xe7\\xfb<\\xfc\\x84\\xc8\\x0c0\\xf2n\\xd7\t\\x82y\\x92\\xee\\xd4l\\xcb\\xd3\\xd7\\xc3\\xef\\x93/y\\xb8\\xc0\\xb0&\\xed\\x0bDyaK\\xbe\\xed\\x11G\\x8e\\xfc\\xcci\\xc9\\xdb\\x977\\x17\\xc9\\x8a\\x15\\xbbv\\xe9\\xf0\\xa0\\xdc$\\xc5M\\xf1X\\xb9Y\\xff\\xfc\\xf8x\\x1ef\\xf3F\\x03\\xe5\\xed\\xe2\\x95\\xca\\x83\\xcd\\x86\\xeb\\x8f1\\xceM\\x0c+\\x9372qc&o\\xcc\\xd4\\xba\\xa7&\\xa4\\xac{p\\x08Ct5\\xb5\\xb8\\xa9\\xf6D\\x0cC\\xee\\xd9\\xa7o{\\x86\\xc9\\x82\\xcc\\xac\\x06J\\x88e5\t\\xbb\\xf9\\xa3O\\xceH\\xbav\\xf3\\xea\\x05\\x85\\x15JEU\\n\\xbe\\x0bZ\\xd9\t\\xac\\xd88\\xa5^\\x84\\x9c\\\"w^\\xf4\\xb0\\xf0\\x17\\xde\\xdc\\xc5\\\\\\xd0\\xa6\\xa3\\x000\\x80U\\xf4\\xc7\\xb8\\x08\\x87=\\\"\\xc7iZ\\xa0\\x86\\x9f\\x8d\\xbe\\xf3\\xda\\xabr\\x01\\x0d4GU\\xfb\\\"\\xb6)7L\\x0b\\x81\\xd1\\xaefxG-)I$o\\xa9IT$/\\xca\\xb5 \\x8ch%z\\x08k\\xa1\\xb7\\xe0\\xb5-\\xb4_\\xac\\x80o\\x1f\\xe9\\x8aT\\xa0\\x0f\\xb1\\x14\\xf9\\x04\\x01O\\xc6\\x89n\\xd1\\xfe<\\xc4\\xad\\xb5\\x8f\\xb9Y\\xb6\\xa6\\xc8\\x13\\xf0\\xc8\\x9a4\\x80%\\xd6\\x93dw\\x95[\\x88#\\x12\\xa3\\x16\\xc2cMC1\\x01\\xac\\x19\\xc2\\x17\\n1a\\x8b\\xbar\\xa2{k;\\xdd\\xdbBE\\xa3\\x1a\\xb0\\xb0V\\xcb\\x0d\\x90\\xf3\\xa2\\x01=>r}\\x8e\\xf4z\\xa8\\xe9\\x93j\\xbe,\\x03\\xb8\\x05\\xbb\\x85?\\x8b\\xf0{\\xf1\\x03\\x89\\xce\\xf2C\\xdb\\xc1\\xf6\\xcfbh\\xff\\xd4#\\xce?\\x85\\xcd\\xa0e\\xab\\x99\\xa0u\\xda\\x02-\\xaa\\xaa\t\\xb8\\x8a\\xc0\\xd1WhIm\\xceB\\xfa\\xa5X\\xd6\\x96BiC\\xbf\\x1a\\xa7\\xd4\\x13\\xaeV\\x01\\xf4\\x9e\\xf2(\\xde\\x8c\\x92\\x15\\x84\\xf0.\\x8cO\t\\x9c\\xaca\\x17\\x83\\x1eAX'w\\x83\\xea*\\xc9\\xba#\\xb8V~\\xa0$\\x01\\xe0\\x9eo\\xa2\\x1a#.ax\\x92\\xa1\\xeb!\\x81G\\x82cco\\xef\\xc4\\xd2\\x84s\\x8c\\xc5\\\"T\\xbd\\x1f\\x89\\xa7\\x8aj\\xf3\\x18\\x87\\x86\\x83U\\xb1FE\\x0f\\xfc{B\\xa2\\x85\\xe7\\x11\\xd8a\\x04\\xf8\\x16\\xc4L\\xb4\\xf2\\x99l\\xde\\x0dw~+`\\xf9\\x9b\\x1ew~\\xfb6\\xdc9\\xd6\\xeb\\x129\\xbe(*\\xa5'\\xa2\\xfaa\\xdd2ah\\xf6\\x84\\xda\\xdcL\\xcf\\xadO/\\xc4S\\xf5\\xa1b\\xc6\\x1a\\xfdc,\\n\\x01\\x11\\x8f\\xd2\\x00n\\xb0\\x95S\\xe3\\x1eN\\x89SIW\\xc9\\xb5\\xb3U`\\xe4\\x91\\xdb\\xb4KM\\xfb\\xe8\\xad4g\\xf8c]\\x05\\xf3J\\x9f\\x9dL2\\x15\\x7fY\\xa5G\\xe1![Q-\\x95\\x1e\\xb2CH\\xb9\\x8b\\xac\\x11W\\x84\\x8a\\x88z\\xf1\\x88Q\\xae\\x14v\\xd0\\xa3+\\x1a\\xa3\\xf0\\xc7:*wf\\xc4P\\xd1H\\xb5\\x1bu\\x1d\\xb4\\x93u\\xb3\\x0e\\xe9&\\xaa\\x9dBc\\xf2\\xfa\\x89\\xea56\\xdd\\xb45\\x05\\x10\\x1e\\xa3\\xfa\\xc3\\xc6\\x819i\\\\\\xac\\xda\\x16\\xaei\\xa1\\\\\\x02/Wf{\\x9b\\xad\\xcd\\xf6\\xb6C\\x14 CuB\\x03x\\xc1\\xe8\\xd6\\xd5Q\\xbd\\xee\\xe5\\xaaC}\\xae\\x1f\\x1eQ-\\xcaW\\xfa\\x9e\\x87\\xee\\xf1lJ\\xd3\\xf5(wM}\\xa2\\xeb\\xdcX\\xbcS\\xbe\\xb3JSU \\xd8ju\\xa7%|\\xa7%l\\xa7E\\x0f!1+q\\xcfDY\\xbc\\x14\\x173\\x82\\x1dH`\\x1f\\x12\\x83\\x9e\\xaf\\xb63\\xf31V!\\xae\\xee\\xc6D\\xab\\xb45\\n\\xa3\\xcd\\x14\\n\\xd7\\xb5=\\x05\\xb8\\x8c\\xfbS\\x01\\xa1qw\\xa6\\xad{8\\xb9\\x8e=\\xdcm\\x15$\\xe4P\\xd3\\x1a\\xfdu{>g{>w\\xdb\\xe3\\xca\\\"\\x8e\\xa6\\xe5!\\x17\\x8bC.\\xd6\\xee\\x8b\\xc2[\\xc5a\\xad\\x19*\\x96\\x121\\xaeeEhR\\x84\\x0c\\x03\\xf7,\\xb1\\xe5w\\xafj\\x96\\xb5\\xd4\\xb02\\xe8$\\xbex\\xb1A\\x06-vq\\xf4\\x10\\xb6\\xbc\\x08O\\x05\\xb5*#(\\xb9\\xbc\\xbdHT]\\x84t{[\\xec*]\\xfdR1\\xe5F\\x8e -LK}\\xf5\\xb5\\x025I;C\\xd5\\xa0\\xce\\xf9\\xa2j\\x89\\xf9v\\xf9hh\\xd6\\xb0\\x02\\xdd\\xb7\\x1aQ\\xd6\\xa1E\\xcb\\x81\\x8b\\xc4\\x9d\\xd1q\\x0f\\xe0\\xd2\\x08\\x15\\x9e\\xd3F\\xf0R\\x81\\xf2\\xe9\\x7f\\x01\\xcaW\\xea\\xc8\\x17$\\xb0\\x08!\\xe0\\xb6\\xaa\\xa6\\x83\\x80z\\xa0\\x14\\xc6\\xa8\\x87\\x0e\\xcc[4J\\xc6\\x01#T\\x8dC\\xc206\\xb6KbEK\\xc4w\\x89\\xb1\\xf2\\xbc\\xa4\\x9b\\xb1M\\x9b\\x84&\\xb6Q2\\xe6\\xe1\\x90\\xc5\\xd8\\xf2\\xea\\xc0NR\\x12~n.\\xa8\t\\xdb\\x1a\\xc7\\x96vy\\xffc\\xbb\\xaf\\xb6\\xb0F\\x82\\xa6[l=\\x10\\xafc\\xef\\xe1J\\xc0\\xe3\\xf2XmS\\x18\\xb6oT\\x90p\\xe3En\\x8b\\x8dkQ,\\xf2\\xa0<\\xb1\\x87\\xb5\\xafY\\xad\\xcb\\x92\\xfdMG\\xee\\x0c\\xefZ\\xd0\\x805\\xbd\\xba\\x8b]M\\xd0\\x86\\x03\\xe8\\xbd#+\\x12R\\x18\\x8d{\\xb0_\\xfe\\xe2^\\x10\\x8aZh\\x1bz\\xe5=\\xfc\\x96\\xdd\\xa1\\xd1\\x92d\\xd0t:^_\\x9d)\\xd71\\xe1|\\x08\\x1a\\x06\\xbc\\xd2\\x8f\\xac\\xf4\\xe3\\xca\\x85O\\xa9\\xaa\\xf8jFe\\xd5\\x9a\\xc7\\x94\\x05.\\x13\\xa9\\xec\\x1f\\x06*#\\xca+1{|\\xaa\\\"U\\xd2\\xba6\\xb2\\xd7\\xa2\\xba\\xe4\\x0e\\x0f\\xa6\\xab3\\n\\xf5\\x91\\xa6\\xe4\\x8c\\xa4Y\\x177\\xed\\x16\\xb8N\\xc9\\xc5\\xdb\\xd9\\xd5\\xc1\\n\\x07\\xa81\\xdc\\x19X\\xbbY\\x84\\x19=\\xba\\x86\\xaeJ\\x0cm\\xed\\xf2\\xea\\xc2\\xd4\\xeeC\\x88\\xe1\\x91\\xb2\\xc4\\x10;i\\\"*\\xc3\\x8d\\xeb'ZlUB\\xc4Ns\\xe9.\\xe5tbU\\xbb\\x11k\\xc9f\\xc2#\\x88%\\xc5)Y\\xa0X@\\xc27\\xd6\\xd9\\x83\\xeb\\x12?\\x1c(l\\x05\\x9a\\xc2H\\xe9\\x88\\x87\\xb4\\xaaz\\x87\\x83&f*S=k\\xda\\xfb\\x19}_\\n\\xfa\\xbe\\xbcf\\xfa\\x8e*cI\\xde\\xf9\\x0f\\x85\\xbas\\xed\\xee6\\xf4\\xfa\\xfd~y\\x97\\xc4S\\xd8\\x06O\\x08\\x15\\xf3B\\xcd{\\x00=8YW>'+\\xcc{\\x84I\\xe74'\\xc1\\xf2zO\\x029\\xdcR\\x17\t\\xdfU\\x87\\xd28#\\x96W:#$\\xe7\\xe0Q\\xd8Q\\xfb\\xf6\\xe1\\x96\\xd2\\x9fq\\x7f`\\x80\\xf4.7\\xc8+d\\x82\\xdf`k\\x84:\\xf1\\xd9\\\"\\xd1\\xd8\\x1ejCv>wj\\x87J\\xd1\\xa9r\\xb8\\xa0K\\x01\\x9e!\\xe5\\xd3\\x80\\xdb\\n\\xf0\\x8c)\\xef\\xfa\\xf0hX\\xf8\\x96.\\xa9\\xb7\\x1b\\xc0\\xae/\\x8e\\xa7\\xa5@\\xeeSB=\\xd5* M\\x06\\xec>\\xd1\\xdcG\\x905\\xcf\\xae\\xe5U\\x0e\\x9b\\xb3\\\"\\xaa\\xb2\\xb2<z\\x01\\x91\\xc0\\xff\\xa8H2\\x1c\\xb2\\xb9\\x98\\xa5\\x01\\x9e]\\xc0\\xbe\\xceP\\xd8\\x13\\xe5BW\\xce\\x03_O\\xb4\\xc1&\\x0e4\\x0f\\xab\\xe57\\x9e\\x8f8\\x1c\\x01Q\\x0d\\xcdY^\\xcfYXb7\\xea\\x0dK\\x91\\x80A.\\x10Uv\\xea\\x1b8\\x86\\xef \\x85}\\xf5nU\\xe5\\x18[U\\x8eU\t1\\x80D\\xabA4,\\x1bl\\xf3\\x11\\xed\\xb0\\x014+P\\xb8\\xcbkZ\\x00v?\\x80K\\xe0i\\xc7[\\x03\\xa8aN\\xae@\\xd6~~\\xad\\n\\xc8\\xc8\\xaa\\x0e\\xa9A\\x9f-\\xfac\\xb4H\\xfe\\xc9\\x1c\\x80T\\xbe\\xa0\\xbc\\x9e\\xbb\\x88\\\\\\xcbkb\\x08\\x96\\xb4\\xb60\\xdc\\xefC\\xfc(\\xc2\\xed\\xd0\\xac\\xca\\x9f\\xb0?\\x8b\\xfb\\x82d\\x89O\\xf0\\x8c;+\\\"\\x8b4|\\xc41\\x95\\xe9\\x9cNh\\x00\\xc7\\x14\\xff</\\xff\\xbc\\x90\\x7f\\x1e\\xd3\\\"\\xa2\\x87\\xbf\\xa9\\x04\\xf2\\xf0\\xf7E\\x90\\xcfE\\x8d\\xac\\xb2\\x85~OM\\xd9%\\xf0d\\x8b\\x969z:\\xec\\xec\\x95\\xa7\\x1d\\xbb\\xe7\\x95IX0\\xfd\\xf1\\x81\\xf2\\xbaC*Q\\xb9k\\xee\\xdd\\xbd{\\xfb.`\\xd1\\xf3\\x0d#\\xe6\\xe6\\x8dS\\xbcI\\xf8\\x9bf$\\xc7\\xbd\\xb2\\x8dnw\\x8f\\x1f?\\x86\\xc1=_\\xdcaO<R\\xdc|\\xf4\\x08\\x06\\xf7x\\xee\\x19\\x1f6ug|S(\\xd3a\\x9b\\xaf$6\\x0f7a\\xb0\\xfb\\xfd\\xed\\xef\\xef\\x0c\\xee\\xef\\xdd\\x81\\x0d\\xdc\\xde\\xdb\\x1b\\xec\\xed\\xdd\\xbd\\xf3={\\xe2\\xe6\\x94\\xf9\\xc4\\xd0\\x91J1A\\xad\\xd3\\xdf\\xf0\\xc4,h\\xa8AS\\xdd\\xee\\xf3(;jz0\\xda;n\\xeby\\xab>B\\x0d\\x85/\\x18\\x031.\\xc3\\x1c\\xd4r\\x07V\\x87\\x03\\xe1Z\\x89N\\x96\\xece\\xeeSa\\x19((x\\xba\\x0b\\x1b\\x93s\\x14\\x1e\\xa1qY\\x8d\\xd3\\x8b\\xe1_C5G\\xd1w@\\xfd\\x87\\x0c1\\x94\\x9b\\x0f}\\xc0\\xd7(\\xdcR\\xdf\\xb5\\x12\\xdcC\\xea9\\xa5J\\x8f\\xea%]\\x145b\\x99\\x9a\\xffg\\xaax\\x99\\xeb1\\x0d\\x94UxEG\\xd4\\x9e(\\xb7\\xea\\xb1\\xf2\\x96ao\\x00o8\\xac\\xdf\\x89\\x9c\\x19\\x14\\xd3\\xe1\\xc0+\\x9e\\xe8\\x1c\\x9f3*\\x8e\\x8d\\xb3\\x83\\xef*Y\\x16`\\x9fw\\xd6\t\\xc7\\xe7a6\\x7f\\x9aLU\\xc8\\xc8[:\\xe5bT\\xaf\\nV~\\xe8\\x08B3\\xe3\\xf9\\x9a\\xd6\\\\M\\x11~G\\xdccM\\xadPji\\xa3\\xfe5\\x1d=\\xa5c\\xa7/\\xb7>\\x1b\\xc7\\x0d\\xa6\\xc6\\xfb\\xa2\\xea\\xc1\\xfa(;\\x8c\\xf3\\xa5\\x08\\xc0Bw8\\xdd\\x13\\xa7\\xb1\\x98:k\\x07\\xaf\\xfa\\xb5p\\x98\\x8c\\x93)\\xf9\\xb0^\\x11@\\xd2\\x9e\\x9dG\\xbc\\xfeYq\\xbf\\xad)vM\\xc2\\x8c\\xc0`\\xbf\\xf5=Ph\\x7f?\\x8f\\xa3/99zf\\x9e\\xa3\\xbc\\xb0\\xf9\\x07\\x1d\\x9b\\x9f&\\x13\\x0c\\x18>\\\\\\x10\\xf6\\x0f\\x9fl\\xedf1\\x06k\\xd3z\\xa56\\x88-\\xa5\\xac\\x96\\xf6=\\xfd\\xd7l\\xb9\\xb6\\xb7?\\xd0@=\\xfan\\xc2\\x07\\xbe\\xf7?\\xe0\\xde\\xb7\\x84\\x88\\xbc\\xa6>\\xc3\\xfa\\x8c\\x18=\\x1c\\xc1\\xc1\\xd1\\xb5\\x8aB\\x7f\\xc8\\xfa\\xc8C\\xfc\\x81.\\xcfu\\x8f\\xc1\\xde\\x9b$\\xde!<\\x95q\\x19H\\x98A\\x98\\x12,\\xfa\\x86\\xd9\\xb5\\xc9\\x14\\xc2\\x0c>\\x93u\\xd67\\xd5=\\x90\\xdd\\xb3\\x0d%\\xa2\\x8dy9\\x89\\xd2#$\\x80\\xa7\\xd4\\x14W\\\"/R\\xec\\x9b}\\xd8\\xb2\\x04x\\xb1k\\x92\\xc4\\xb3\\xe84w|\\xfb<\\x8d\\xa8\\xdb\\x9b\\x82O\\xd7/>\\x80\\xb9\\xa4\\x1e\\xa8\\xe5\\x0d+N\\xf5\\xddH\\x86`\\x93\\x95H\\x12\\x85\\x83\\xd7}\\xe0\\x1b\\x1b\\xb2\\xab\\xdb\\xd4K\\x95\\xb5\\xdd{\\xee\\x87\\xab\\xd5b-\\xd8xCD\\xbfz]\\x06\\x162\\xc9\\xce\\xc0\\x16\\xc8\\xb6\\x13\\xc1\\x8aSzI\\xf2\\x1ax\\xff1F\\x08\\xd1\\x042B!\\x84\\x98\\xed\\x83\\x12rr\\x8c\\x90\\xc4bOXQ\\x9f]T\\xce\\xc1<\\xfb\\x0e\\xf4\\xc4z\\xeaw:\\xed\\xa5\\xf2\\xb5 k\\x8caP2\\xdah\\xf3\\x01\\xd4\\xa0\\xc5\\xcb)\\xb3&y\\xfddT\\x93\\x96\\xa5y\\x18\\xf7@\\xa6}G/\\xd2\\xb7\\x06\\xde\\xbeP\\xc7\\x10\\xce(\\xa9\\x16\\niiG\\x03\\x05\\xbep{\\x00\\xdf\\xf1T\\x85\\xfd\\xc9<L\\x19\\xf3\\xf2\\x84\\xf1\\x88\\xa0MfZr\\x91\\x0d\\x1fi\\xf5\\x17\\xeb\\xfd\\x0fZfL\\x88\\xb2\\xc3\\x8266\\xa9\\xc6\\xe7\\xd6\\xcc4\\xec\\xb2\\x974\\x95k\\xa2\\xa5\\x99\\xff\\xbe\\x0c\\xa0\\xf7\\xf7^\\xc0\\xd9E\\xa3N\\xc0\\xa5\\xc4\\xa9\\xe8\\xc7\\xe4\\xea\\xafA3\\xbf).\\x1f\\xd1\\x00^\\x1bE\\xe6_I\\xf8\\xf9uX\\xd32r\\x06\\xcf;\\xa2\\\"s\\x81xI\\xd38?#\\x9bP~\\x8a\\x1d\\x1e\\x1fG\\xcbe\\x8e$\\x9ca\\xdb\\xf1q-E{K\\x8aH\\x0f[\\xe1\\xbf\\xbd\\xa7\\xb4\\x8e\\xf4\\xac\\xff\\x9f\\xd9\\x1b\\x83{\\x9a\\xc4\\x94\\xec\\xc1\\xde]M\\xe6\\xe37\\x86!\\x0b\\x16\\xdf$E?3l\\x80S\\x8ar\\x9a\\x90\\xceJ\\xb7\\xf9\\x15IgI\\xba\\xe4\\xea\\xef\\x90\\xb7q\\x1e\\xd19\\x841D\\xf1,\\x8a#J \\x8b\\xbe\\x12\\xd7\\x1d\\xf8\\xd5.\\xc6[\\x93\\x86\\xfd\\xc6C/\\x9fc\\x13\\x8c\\xbf\\x98yE\\xfet\\xf6\\xac\\xcfF\\xf6:\\xa7\\xbc\\x94\\x8dC\\x0d )e\\xa6\\xc6\\xf4v\\xcf\\xa8\\x17K-\\x7f\\xac-\\\"h\\xac\\xd5\\x01\\n)E\\xee*n\\xa8\\x9b\\xe4\\xa5\\x8b\\x82v\\x03\\xe7s\\xe7\\\\ ?\\xd0\\x96l\\xe6_i\\x00'Lv\\xfcJ\\x1d\\x92\\xe9\\x14Z\\x02\\x1eR\\\\\\x1c\\xc0\\x81MEd[$#\t\\xd1\\x99\\x8dII\\x94a{\\x08{m\\xa2\\x14\\xda\\x85\\xe1q\\x99@Fs,\\xbf\\x8e\\xb2\\xac\\xac\\xb6<\\xe3\\xc99x6\\x0b,\\xadb>\\x829\\xf3Ld\\x15\\x16\\xd6\\x97)\\xdc\\xbdu\\x9d\\x11\\xfcW6_r\\x85\\xa7\\x92\\x01\\xeau\\xb82\\xa6<\\xfb\\xfa\\x8d\\x96\\xc5\\xe34IJ\\xcd,\\xfb\\x81\\xa2s\\x11K\\xc3\\xf36\\xf9:\\x93b\\xa5\\xeb\\xacS\\xd7\\xffP\\x93B\\xd9\\xe7\\x94\\x11z\\x14wh\\x1a'\\x92\\xaf\\xa6!%G\\xf8\\xf22h?c\\xcd\\xdc\\x92}p)Y&g\\xed\\x92\\xb6f\\xd6K{\\xc3S\\xb2 l\\x02\\xaeM7f\\xed:\\xe5e\\xd7)\\xf3N\\xea\\x0bbO\\x1c\\xcdE\\xc8F\\x89\\xcb\\x03\\xe1\\n\\xe2K\\xe3L1\\x81\\x11\\x1d\\x8bF\\x1d\\xc6\\xd2D\\x0f\\xc3h0\\xd8\\x15\\x9d\\\"E,&Gq\\x8b\\x8flA\\xa2]\\x12I\\x9c\\x898P.\\x80-\\xcd:\\xd1\\xbc\\xd5\\x17\\x8f\\x91\\xbb\\\\\\xf8\\xe1\\x99\\x89\\xe2\\x99H\\x19\\x93`\\xf0Hk\\xc5\\xd8\\x0c\\x86\\x10y\\xb6\\xb2\\xdcb\\xb92\\xbe\\\\\\xc2Y\\xb7\\x19C\\x06F\\xa9\\xe3\\x94z\t\\x03\\xb2\\xc8\\x1b\\x9c\\x11\\x1a@/\\x8ay\\xb5\\xfb\\xcfd\\xfd3V\\x883Cf\\x82%\\x80-\\x1e\\xa8\\xec\\xa5\\x99\\x98\\xf2\\x92M\\x19\\xa9\\xd5\\x84\\xed'\\xf3\\x07X\\xa0\\xd4\\x9b\\x95\\x0bhU\\x94r\\xd6e&f\\xcf\\x7f-\\xd9/\\xb1\\xdb\\xbd\t\\xc3W/)y\\x19\\xe2\\xe3\\xd91\t`\\xa1\\xe1\\x01\\xc4\\x9e\\x8fc\\xd4\\xe9\\x1a\\\"\\x1eE\\xdfi\\xd1\\x9b\\xe0\\x9a\\xea\\x96\\xd9\\xfa\\x0e\\x98,Hh-J\\xa44\\xdet\\x8b\\xa1\\xdc\\x1fB\\x1c8\\xc9yL\\xd2\\xa3gp BaE\\x0c\\xe3n\\xa0\\x9e\\x14CQ\\xb4S|\\x83\\xc1\\xfb\\xc3\\xf2\\xac\\xe0w\\xc3\\x05\\x15\\xf5N\\xb6\\xc4M_pw\\xd6\\xc9,Iz\\xda\\xaat\\x90\\x90\\\"\\x02\\xae\\xb2ks>\\xc0f\\x1f\\xbfF\\xd5\\x92c\\xb6\\xf3\\xa4\\xe8\\x08\\xfd\\x97\\xea|\\xd2\\xa0\\xe9\\xc8\\xd1\\xec\\xaeJ\\xa0\\xec\\x86pM\\x0fFl\\xa9\\xd2L\\x12 \\x84\\x03\\x07\\xad\\xaf\\xf8\\xde \\xf0\\xf3e8\\x90\\x7fI\\x1d\\x0d\\x12\\xd5}\\x88Gj4^\\xb3\\xa8m\\xcb\\xf1\\x81M>#\\x18,\\xdbi\\x9d#\\xd2m\\x8dY\\x1fN\\xeb|%\\xd0\\x17\\xc3J\\x88\\x87b\\x85\\xe3\\x88\\xfe7\\xa2\\x02\\xae\\xd6\\x81\\xfa\\xebzQ\\\"KR\\xea\\xca\\xe7\\x1c\\x11\\xef\\x17R\\x98\\xfd\\xdb\\xdb\\xfda\\xdd\\x81uT\\x1b'\\xed\\xedWd\\xa0\\xd6\t\\x14\\xb2\\x16[\\xa90{\\xcdu\\x11:\\x06@.)\\\"\\x16\\xe9\\x9f\\x87\\xd9\\x13NO=\\x1f\\x8f\\xa1\\xe3c\\x12gyJ\\xde2z\\xedU\\x89\\xb7d\\xa5\\xac\\x03/zw\\xdc\\x83\\x8d\\xf3\\xa1zn\\xa8\\xa3a\\xa2\\xd8{;\\xd8\\xc2\\xecHjb\\xba\\xf5\\xaf\\xf6\\xd3\\xb22\\x05\\xc8\\xba\\xf5 \\xce-k\\xdb\\xdd\\x1c\\x9c\\xa4F\\x84\\x9c\\xc3\\x0dw\\x99\\xa7\\x93\\x17\\xda\\xb7:1+\\x87{\\xe1m\\x83r`3\\xb3H\\x0b\\x11\\xe1\\xc1v\\x1e\\xc1\\x043\\x043\\xca\\xe8l\\xee\\x01/\\xfb\\xd4\\x02\\x01e\\xb5[\\xf7\\x96\\x9cI\\xc9\\xe0\\xe8\\xb0\\x15\\x0e\\xe0\\x9f\\xb4dmT\\xb6&(\\xf3: K\\x83\\x1c^\\xad!%\\xf7\\x83\\xca\\xe0\\x0c\\x04\\x83\\xa3\\x99N\\x941\\xc9}\\x08\\xcf5\\x9eC\\x1fi\\x00?\\xd0f2\\xe0\\xd7O~6TO\\xfb\\xc2\\xdeV\\x81dR\\x0f\\xfenN\\xfc\\x81\\xc3oNH$*j\\x18\\x1f\\x8c5>\\xac\t@\\x0c\\x9d\\x9cDt\\x89\\xe0\\x90\\x90\\x8f\\x13\\xee\\x82\\x1c;\\xf5\\xf9\\xcbU\\xfa\\x9c$yL\\xaf\\xdc\\xe5\\xcb\\xabt\\xf9\\x99\\xac\\x7f\\xe4L1i@\\xd7\\xad\\xdb\\x17\\xd7\\xd7\\xed\\xda\\xb9\\xd3\\x1b\\xed\\x9d\\x1eS^j\\xb4\\xdc9E\\x84M\\\\\\xfa6\\x87\\x93\\xcf\\xc8\\xbc\\x14\\x14\\xe5'\\xea\\x89_n\\xda\\xd0\\x1f[S<\\xf2\\nH<cU#)\\xa5\\xa9\\xd9\\x9fZ\\x9b\\xd5\\xd36\\x862\\xfb`\\xf0\\x18E\\xaf\\xe2}\\x93;\\xe6\\xf1\\xf1*%g:S\\xb0[\\x16\\x96\\x7f\\xba&E\\xad\\x16\\x7f\\xfdb\\xc9\\xdb\\x1bI\\xa9\\x8e\\x06\\x10\\x15\\\"\\x1d\\xc1\\x1f\\n\\xa5\\x8b\\xf9\\x0d!\\xdd\\xa5\\xfcW\\x95\\xe8ENS\\xf8\\xcd\\x9a\\x94\\xfa#\\xea\\xb5\\xbd\\x8fl\\x0c\\xff\\xa4\\xde\\xaec\\xfe\\xbb\\x7fXq\\x15u7\\x81\\xce\\xff\\x16\\x9d\\\\\\x04*\\x1aV[\\xeap\\xce\\xbdc\\x83;%\\x88\\xfc\\xb0\\xe7\\xde\\x89Ey\\x83\\xde\\xcaD\\xf6\\x86\\x91/\\x12\\xbc\\x01(\\xcaU\\xbe\\xb8I\\x00\\xb9\\x1f\\xc0\\x96P}\\x94~U\\x86\\x0e\\xa0\\xc8k\\xb7\\x0d^\\\"\\nu\\x1d0.@h\\x0fv\\x06X\\xf2k\\xbf^M\\x8e]\\x976S8\\xd7\\xb3c3.\\xa3\\x18\\x94\\xe5\\x1b\\x7f\\xc7m^Nrd\\x84\\x1e/>\\xa6}\\xac\\x0b\\x025!\\x0f\\xad\\xa9,$fGAA}\\x10u\\xa9FM\\xd1\\xd4Q\\xf8X\\xe4\\x0c9\\x84\\x08w\\x9bN_a\\xc0G\\x11%^\\xe8\\x97\\xf8\\x82\\x06\\x10Zy\\x15&Qq\\x89\\xcd\\xd3~\\xba\\xcf\\x10Q\\xac'e\\xfc\\xc8\\x85\\x17\\xfa\\x01\\\\x\\x0cU\\x18\\xc4_\\xc8\\x1c\\xae#\\xf6\\x99k:wB\\xec<T#Q\\xe9\\x0b\\xee\\xf6\\xd9\\xb8\\xff\\xd2\\xcd\\x137\\xae\\x01G\\xd77\\xdf\\x98\\xc5\\x116\\x1c\\xb2\\x05PX\\xe7\\x97\\xc5LEu\\xa1\\x00\\\"\\x9d-\\x07w/O\\xbc\\xed\\x95I\\xbe\\xca\\x96\\xf7\\x95\\xbf\\x1f?~\\xcc\\xe8\\xc7M8\\xd5\\xef\\xf3\\xb0\\xda\\x08\\xba\\xe9+\\x1f\\x19),\\x1a\\xa9q\\xbcX\\xd36\\x87\\x0d\\xff#\\xc4q\t\\xbd\\xea\\xa8\\x84\\nl\\xc3\\x99\\x80\\xcc\\x98\\xeb\\x15\\x87\\xd5\\xd5\\x8d|\\xf6\\xe5#\\xfe\\x1de+\\x0d\\xfb0J\\x02\\xa0\\xaeK\\x9e\\x12\\x1b\\xbd,\\x13k`\\xf5\\x82J\\x86\\x82\\xb80\\xd1\\xb5$\\xbea\\xd0\\x8aG\\xc9\\xd8L334\\xd1\\x9a\\xb4\\xcf\\xb9\\x17\\xa2[\\xb4\\xc7^\\xcb\\xaa\\x19\\x8d]\\xfc\\x12\\x16\\x8dhBy]\\xfa>;\\xbeVy6\\xf74\\x9eEF\\xf2\\x92K\\xa0En@\\x8e\\xac@.v=zm\\x95j\\x95\\x9b7\\x01\\xb3\\xb0V\\xd4+<'c\\x91\\xd8\\x97o\\x7f7\\xce<\\xb1\\xef\\xeeR\\x9433\\x15\\x002\\\\\\x0cu\\xf8Ue\\x1a\\x8e\\xb7\\x92\\x8c\\xba\\xf2\\x9c\\xab\\x84\\xcc\\x9ax<\\xb9\\x8a\\xce\\xadjx\\x9e\\x8d2\\xf2\\x85\\x1e>jY9\\x13@r\\x97e\\xe1\\xdb\\x1c-Cq\\x7f\\x16\\xb1\\x93\\xc1\\x01\\xfd\\x8a\\x8f\\xcb\\xc4\\xb9\\xcdA\\xfa\\xbeb\\xedb\\x07\\xb2\\x9af\\x17\\xe9jy\\x8am\\x18\\xa9\\xc0\\x94\\x87\\xca7W7\\xb5\\xa7\\\"\\x1a\\xaa\\xf8\\xc4\\xb6\\xe2\\x80&pq\\x1e\\xa5U\\xabi\\xab\\xf7pE\\xfe^\\x8a\\x1a\\xa3\\x08x\\xec\\xd2\\xf8\\xad\\xc6e\\x02o\\xabA0\\xa6\\xa5\\x93\\x17\\x95n\\x19\\x86\\xf4\\xb1\\x97\\xd5z\\xd2\\x05A\\xc3\\xb2\\xd2\\xf1(\\x1a\\x17\\x0e!\\x9a\\x81bf\\xf2\\xca\\xd1\\xe7\\xc5\\xa3]G\\x89#l9iA\\x84\\x86x\\xf7\\xef\\xde\\x7f\\xf0\\xe0\\xf6\\x9d\\xbb\\x0fx,\\xcf\\xce\\x10\\x03ax\\x1c\\xcc\\x9d\\xdb\\x83{w\\xef~\\x7f\\xef\\xae\\xef3f\\x0f\\x1f\\xec\\xc1M(\\xbeQ\\xee\\xdfa'\\xd3\\xde\\xdd\\xbd{w\\xee\\x0en\\xdf\\x0d\\x80\\xc2\\xb6h\\xea~\\x00\\x83\\xbd\\xefy\\xf3\\xf2\\xde\\xe0\\x9e\\xdb42\\xe2(\\x85\\xa4\\x02\\xc5\\x0fm\\x15E\\xa3\\x11\\x19\\x0b\\x01\\xa3\\xd6\\xbb\\xfa\\xeb\\x0b\\xba\\xba\\x08\\xde\\xec\\x0b\\x15\\xe6p\\x18\\xb2\\xbf\\xb9\\x15.(\\xffD\\x9dz\\xf1\\xd2Q\\x1c\\xc0\\xef-N\\x11\\xe6\\xb9T\\x0eCUz\\x17\\xc7\\\"g.\\xa2\\xf2X\\x84G\\x90\\xf3\\xd3\\xd1HH\\xa7\\x88\\x9e\\xd1(\\x193\\xd4)s-\\xb2\\x1b\\x03\\xe7R\\xe6\\xb5Y\\x19\\xcd\\xf0*\\x1fi\\x9d!\\x16\\x1b\\xe1;6\\xc0\\xd3\\xb9:\\xdd\t\\x9f\\xee\\x0c\\xcfc9\\xdd\t<\\x02\\x8cm\\xda\\x9abB\\xe0l4\\xc1I=\\x84\\xc9\\xf6\\xb6\\x81![\\xc0\\x90\\x7f\\xa7\\x17\\xc8\\x16p\\xc0\\x9b\\x19\\x8cq0\\x11\\xec3\\xeeWQN\\xea\\xbf\\xe3|\\xb0\\x17\\xa2g\\xd4\\x02]\\xc9.\\xbc\\x84IQaIH\\xb3\\x96\\xec8\\x18\\xc4\\x81\\x0e~[!\\xfb\\x7f\\xe1\\x9a\\xf0x\\x08\\x13]\\x98\\x8a\\x15y\\xe4\\xc5\\xa5Z\\xe9\\xb1\\xf8\\xdebp\\xaf\\xa0\\x9b\\xe0\\xfah\\x00\\xe8\\x88\\x1a\\xc0\\x88u4\\xf6+\\x1c\\x19q\\xe1\\xc8\\xe4%\\x9d\\x0d\\xc8\\xc8\\x94\\x00O^\\x11b\\xb5 \\xff\\xb4\\\"\\xa2\\xe6\\xa8h\\xc9\\x8d\\xd5?@\\xcbE\\xc9K\\\"\\xbb\\x9e6\\xb3\\xae2\\xabQ\\x9eMa\\x05\\\":LQ\\xf0J9\\xd3\\xd81\\x93\\xf7V\\x0c\\xb7\\x90\\\"em6\\xff\\x03\\xe4\\xaf'\\xc2\\xf6\\xbf\\x03\\x038\\x80y\\x7f\\x95\\xf0J\\x10\\xf3\\xd1\\x84Q\\xa3\\xc6\\x8d\\x11\\x1b9\\xe3\\xc7\\xe7\\x9c\\xc1\\xe4\\xbf\\xfd\\x00{\\xf6j\\xda\\xbfyi\\n\\x97\\x02s\\x00\\xf36\\x96\\xf42\\x80_\\xafL\\xce\\xb4\\xd1e\\x88]\\x86\\xcd\\x8aB=\\x13W<\\xafZ?\\x9cG~R\\x94}\\x0c\\x9a\\x91D\\xd2\\x10\\xae\\xe95\\x126\\xd60\\x93snr\\xee\\xae\\x08\\xcdF\\xe5\\xec($\\xfc\\x11fF\\x1e\\xf38..#\\x11\\x1d;Q\\x07\\xcf\\x95\\xe9b%3\\xb4L\\x00\\xfd\\x84z\\xa9\tT\\x8a\\x80H\\x04\\xcb\\x13#\\x90\\x88E\\xaa\\xcc$|C\\xfd\\xf3I\\x15\\x86\\xfa\\x97f\\x18S\\xb95\\x04o\\x027A\\x87\\xdaH\\xd7\\x90PGue\\x8e\\x96\\xa0J:\\x1d\\x12\\xde$\\x02_\\xdf\\xf9J\\x8e\\x10\\x97K\\xff\\x0e\\x1a\\xdd\\xe1\\x00V\\xa3\\xc5\\x18Z\\n\\xb1sE\\xd9\\x9c\\x9b\\xc5\\xf8BW\\xd7J?;\\x1e%>w8(8\\x1c0\\x94|\\xa5\\x90\\xf7\\x99\\x95\\xbc[\\xdc\\xbc*\\x15\\xbf\\x04C\\xc0\\xf63\\xaf7\\xb3\\xf6\\x03\\xc4\\x8c\\xdd\\x87\\x82\\xd5\\x8f\\x1fB\\x88i~\\x18n\\x0ca\\xe0C>\\n\\xc7\\x88\\x067Q\\xb3@F\\xc9\\xf6\\xf6\\xd8R\\xb3\\x0e\\x14\\xa1t\\x94\\x8e\\xb9\\x8a\\x8b\\xf5\\xc8M\\\"\\x98\\xe3A\\x1f\\xcc\\xcf\\x1e\\xaf\\x02\\x98\\x04\\x10\\x0605@R\\x9c\\xe7\\xec\\xff<L\\xbd\\x80\\x12\\x93\\xff\\x88\\xb7\\x1a\\x0d\\xe0_\\xb0P8\\x17y\\xc7\\xd2\\x1e67\\xd057-\\xdb\\x99\\xea\\x11\\xf1\\xb8+\\xb9?\\x11\\xe86E\\n\\xbe\\x0f\\x13\\xf8\\x17\\x92\\xfd\tl\\xc0\\x80\\xa1\\xe7\\xca'\\x19\\xf1V\\x01,\\x02\\x98\\x06p\\xec\\xd7\\x03\\xf0[\\xc4\\x8f\\xb3\\xa2\\xdaG\\xe9\\x01a>j\\xb9z\\xb5H\\x7f\\x93*\\x11\\xb4x\\xb2\\x04\\xb6\\\"\\x12\\x0df\\x81c\\\\\\xeaWxS^q\\x0eRQp.W\\x88?{k\\xe03V4\\x1fc\\x9ck\\x0e\\xdb\\xc6\\xd4\\xb8\\xd0~xs\\xa8iA\\xd6\\xc2!\\x15\\x1c\\xb6\\x84\\x9a1M\t\\x14\\nu\\x84\\xda\\xb6@\\xaa\\xa8\\x84\\\\!P\\xb8\\x80.\\xa9\\x80\\x8e\\xab\\xd6\\x10tb\\xcf\\x86\\xf0\\x08\\\"\\xdc\\xb1>\\xbb%h\\xbb\\x97\\xf0-\\x1b\\xf3\\xd7w\\x06\\xa8\\x9d\\xe5\\xf7\\xe8(\\x84m\\x97rn\\x86\\xc2\\x1f*\\xee\\x19\\x8f\\xcc\\xe3\\x82\\x9d(\\xac\\xa8'5\\x93\\xe6y\\x95\\xbb\\xe0&\\xda\\x93\\x00\\xce\\x1b\\xe7\\xe5/\\x7f-;aa$Z\\xf8\\x08\\xce\\x10Df\\x11)\\x81\\x03Ht,\\x82\\xceo\\xf2\\x97\\xffel\\x82\\x94\\xcd\\xb4/L\\x1cNa\\xc6&LF\\xa1\\x81Lg<\\xf8\\xc6\\x911\\xa0\\xc4\\x9bu=\\xa2\\x85#\\xadC\\x0f\\x05O\\x81\\xf6z\\xc3\\xb1\\xd2.\\xc3\\xed\\xec\\xac\\xe0\\x11,\\xae,\\xb7U\\x08\\xecn\\xa0?\\xe0cy\\xc0s\\xa1y\\xc0%\\xe5R,c\\x14d\\\"\\xce\\xfc\\x0c\\x1e=\\xc2#\\xbf]L\\x9b\\xa1\\x98\\xa6[\\xac\\xca\\x9beT0\\x1e\\xb3!\\xfe\\x89\\xb4\\xd1\\x8b`3d\\xc2T\\xce\\xf9\t\\x06yc[\\xad\\xf2ZIB\\\"-k\\x01\\x92\\xbd\\x98 \\x87\\x11\\x1a\\xcd\\x8c\\xab\\xedm\\xfd\\x9a\\xcf\\xbb\\x9e\\xf2\\x8cS\\xcc\\x88\\xc7\\x99\\x99\\x05\\x93\\x9c\\x8cta^\\x90K\\xe9\\x00\\xb2\\xaaQ\\xcbi\\x95ZrNj\\xc5\\x98\\xa4:\\xd9xyej\\xf9\\xdf\\xacKz\\xf9\\x9f#\\x86\\x82\\xae\\xe9wy\\\\\\xe6Z\\x14\\x86\\xbab\\x8e\\xa1\\x92\\xc0\\x8f+\\x7f\\xb8\\xbe'&\\x8a_\\x1d\\x0eZH\\xe1\\x9a1\\x14K\\xf2\\xff }WXr\\xee\\xb3\\x8a\\xd5\\xf4E\\x99\\x97P\\xc0\\x92M\\x80\\xb1\\xee\\x13\\x93\\xf1\\xb4\\xb3\\xa6\\xa5]\\xcb\\xf2\\x1f\\xd4\\xb0\\xbc\\xd4\\x00`\\xde\\xd8\\xe0/\\xae\\xbc\\xc1\\xa5\\x18\\xc3\\xa3B\\x0b\\x9f+\\x86 2\\xa2\\x8e\\xdf\\x18\\x8cu\\x0c\\xc9\\x8b\\xeb\\xd9\\x835U\\xaev\\x99\\x90\\xe4!\\x06W\\x87i\\\\./\\xc3\\xea\\x19\\x05\\x12(\\xf3\\x08\\xfd\\xc6F\\x0ce\\xc0\\n\\xc3H\\xd8\\x87\\x0c-\\x01Z4\\xaa\\xac\\x1a\\xb68,\\xca\\x10\\x89e\\xd3\\xe1\\xadXv\\xde\\xa5f\\xd7#\\xd1)w~c\\x91+\\xba\\xf3\\xd2\\xb9\\xf6\\xa5\\xfeve\\x0d\\xac\\xa4=n\\xd0\\x91\\x94\\xd3\\x91\\xa8V\\xb6\\xe8!\\xa4\\xa2\\x84L\\xea\\x94\\\"9.\\xea\\x97\\xa0\\xe7\\xc1X\\xadwY\\x9f\\xdc\\xaf\\xfaY\\xfcrm\\x93\\xe3L\\xa6\\xdb\\xd4\\x0c\\xbcN!|\\xd5\\xe6\\xa5\\xe7w\\x18(\\x12(\\xb3\\xcf$\\xfdJ9\\x06\\x13,@\\xa7=}qE0H\\x8a\\xac\\xa0k\\x03\\xad\\x88w\\x83\\x06\\xf0\\xd5\\x0f\\xe0\\x86\\xdaKL.ZS;\\x14P\\xa6\\x12\\xca\\xe8_\\x19\\x94A\\x02\\xdc\\x99\\xf2!\\xd8\\x8b6\\x88\\xfa\\x13\\x04\\x17\\xc9\\xac\\x0e\\xc7\\xd4\\x98<\\x0b\\xaa\\x8e#\\x03)f\\x8b\\x89Z8\\xd6\\xa8\\xa8\\xadZ\\n\\xe1\\xdcg3\\xd5AI^\\x97en\\x9bT\\xee\\x96\\xb6n\\xb0\\xbe\\x99\\xa8b!>Q\\xf0\\xce\\xd7v\\x1f\\x91l\\xc4\\xc1'\\xddS\\x0f\\xb0\\xcc\\x1e\\xafy\\xd6:6\\xb5KD\\xfbj\\x87v\\x95FR~f\\x19\\x83]\\xd1\\x91\\xb4I\\x0b\\xf8\\x92\\\\\\xa6\\n\\x00\\xe4]\\xbb\\x0cQ\\xc3/\\x18\\xc2O\\xd4K\\x8c\\xf6s\\xb0\\x8a\\x0b\\x93$\\xa6Q\\xdc\\xa9\\xf8C\\xb3\\x7f\\xe5W\\x9f\\xfb\\xcc\\xb6\\xecj(\\xb7\\xa7ic\\xb4\\xe6J5\\xe6I\\xad\\x11\\x90*0\\xd9*c\\x1e\\xea5\\xdc\\x82;\\xcd\\x96g\\xf2\\xd9^\\xf3\\xd9\\xa2\\xf8\\xce\\xe4\\xb9\\xbf2x\\x0c\\x9c\\x89\\xd8\\xa1\\x0bc~=\\x87<\\x96\\x9a\\x88Z\\xf6\\xe5\\x9cxJ\\xcaI\\x8d\\xf0-O\\x82\\xc8\\xa3\\x96\\x0c\\xa3\\xb1\\xbd\\xc6\\x03\\x1fL*t@\\xde3~\\\\\\xa7\\xf0\\x98g\\x8dN\\xe1\\x11\\xac\\xe1\\x00\\xce\\x89\\xb7\\x8b\\x0c\\xcfY \\xe2L\\xb1\\x10\\x04\\xf1\\xe2>M\\xb8\\xfc\\xedcYZ\\xd2\\xd9-\\x06\\xfdD\\xdeG_\t\\xf6\\xacI\\x03\\xd2\\xa6\\xe9-4\\xb5-\\xfe&:/\\x127O\\x8b\\xb9\\xddaD\\xc9\\x032%-y@\\xd8ArN\\x19\\x9bL\\x1c\\xf2\\x80(\\xc2\\x87g\\x8e\\xb1\\xe49\\xbc\\xc4\\x11\\xf7\\xad9-^E\\x19\\x85Q/\\x80\\xde\\xb8\\x99\\xd4\\xa2\\xd2\\x93cR\\x8bH\\xd6\\x8a/\\x93\\xe2\\xfbEVrZ\\xcdJn9M\\x99\\x00[\\xb0\\x96\\xe8+\\x83#O\\xd2\\xe842y\\xb6I\\x99\\x8b\\xf5\\x14\\xf7y\\x99P\\n7\\xe1T\\x13\\ni\\x02P#\\xbbF\\x05\\x06\\xdd\\xb2k\\xb8\\xda/\\x10d\\x84\\x83\\x8c\\xb3U\\x95\\xaa\\xf9&\\xbfo\\xf4\\x0d|\\xac:\\xb1\\x11x\\xa4d\\x83\\xed\\xee\\xb2\\x06x,<\\x82]8\\x80\\xb7\\x82\\xc7\\xc3m\\xb6+\\\"L\\xdfJ\\xa7\\x04\\xb4\\x00\\xf0gD\\x1b]\\x06`N\\xb0Gp=\\xe5b\\xea\\xdf)\\xed9\\xc74\\x8c\\x16v\\x86J\\xba\\xf7\\x1b_J\\xac\\x81\\x02\\x08\\xc5\\xcf\\x18%0\tW\\xe1$\\xa2kn\\x10\\x1f\\xc2{t\\xc2\\xabG\\x0dpy\\x10E\\xac\\x88\\xbf\\x14\\xd5^\\xa2\\xfd\\xe3\\x059#\\x8b\\xf2]\\xf3\\\"n%\\x8e\\xe1\\x06<l\\xa2\\x0c1-\\xd6Yz\\xd9\\xf3Q0xuq\\xb9\\xb7n\\xa6s\\x04\\x0b_)\\xfcZBH\\x9dc\\xa4\\xf5.\\xbc\\xb4\\xc5YV\\xb6U\\xb7\\xf4-H\t\\x8aJ\\x1c\\xa5U\\x83\\x13\\x96y4\\xe3\\xd9 \\x14\\x99Wf\\xb4\\x97/I\\xdd\\x06\\x7f\\xb8ZD\\x13\\xc4\\xeb\\x81)j\\xb72\\xd8(\\xceH\\xda\\x85\\x0c\\xd4z\\xd9m\\x05\\xc7_\\x90LB\\xa5\\xa6\\xc5O\\xb9\\xb4j\\xb2\t\\\\a\\x86?\\xb5\\xec\\x13BR\\xe2\\xa8v\\xe5T\\x14\\x8c\\x91\\xb2\\x82b\\x95g\\xf36HH\\xe1\\xad\\x8c\\xd07\\xecr\\x05NF\\x06\t\\xdf0\\xd0M#\\x01\\x7fK\\x18#\\\"\\xc8\\xa2\\xb4\\xa5\\x1av|\\xc5-x\\x17ev%-\\\"J\\xee1\\xa7\\xab\\xb0\\x8d{x\\x94:\\x95d\\xab\\x82-q\\xcd\\xeb\\xf0V\\x1e\\xb2\\xbb\\x01\\xec\\x0c\\xec\\xad\\xe61\\xee\\xae\\xb6\\x96\\x1b\\xebq%`\\x1b\\xd9\\x83\\xb7\\x18\\xa7\\xb3\\xe3\\nfK\\xf6\\xc9\\\"\\x91\\xdc(\\xee\\x0eb'P\\xd4\\x81\\xdc\\x02\\xe0.\\x89W\\xfepO\\xbc\\xd2\\xec\\xc3)!G\\xbd#\\xd7\\xc4+\\xcd\\xee:\\xe4\\x19\\xf9\\xc3-\\xcf\\x88\\xbe\\x0f\\xa7i\\x9d]%\\xaf\\xc7\\x1f\\xadyF\\xea|\\xe2{Nh\\x9dN4u\\x136\\x8bhT[v\\xad\\xbft\\xf6Mu\\xff\\x8a\\x11\\x89\\x12\\x7fE\\xd5?\\xfb\\xe8\\xba%e(\\xb6\\xa7Y\\x9c=)\\x90\\xcf\\xbc6\\x1d\\n\\xc2\\x10\\x0c~\\xb2\\x8b\\x0f\\xdc%\\xe8\\x98\\xfcuE`b\\xac\\xc0\\xdb\\x99\\x02u\\xcaNQ\\xaf\\x93+\\xf4\\xc7V\\xf8\\xe2\\xe5q\\x9d\\x03\\n%\\x08\\x16\\xb5\\xbes|\\xd5\\xca\\xce\\xb5\\x89\\xfc)I&\\xce\\x89\\xa7\\xb29A\\x8d\\xcb\\xa9p8*w\\x13(\\xccM\\xa7\\x84\\x14\\xba\\xe5\\x8a2\\x94\\xb0\\x870'M\\x0d\\xd6\\x944\\x13O\\xbc:z\\xff\\xc1\\x90y\\x02Yd\\x15r&\\xfd\\xd5\\x9a\\x18\\xf1\\x00\\xc7\\x8e\\xa2q9n%\\x8dA=\\xbaM\\xfduFFS\\\"\\x83A\\xceH\\x19\\x0crF\\x8a`\\x90\\xb32Q\\xe4\\x17\\xca\\xffT\\xde\\xc5\\xfb\\xc5\\xdb\\xf2-\\xf9\\x0b_,\\xeco_d\\x14\\x94r[~!\\x7f\\xe1\\xa32\\xb5\\xd7\\x17*\\x7f\\x94\\x0f\\x8adO_\\xa8z\\x03_\\xa8'\\x0e\\xfaR\\x93\\x98\\xf1%5I\\xcf\\x17Z\\xfe\\x14\\x0f\\xd5\\x1c:\\xf8\\xb8\\xb8\\xc1\\xbbP3\\xe0\\xb0\\xf6\\x8b\\xdf\\x01\\xac\\x9b\\\"\\xd0\\x0fd\\x96\\xa4:\\xeb\\xa3I\\xd3\\x12\\x17\\x0eM\\xe8\\xcdL0\\xb2\\xad\\xd8\\x18\\xb8\\xceE\\xe8\\x85\\xc2t\\xe9\\xb5\\x8b\\xa8?\\xe4>Q\\xfa\\xd0Z\\xee\\x00\\xf8\\xd8\\xd6\\xba\\xd0\\x13\\x8e\\xc6\\xec$\\xd3w\\x13\t\\xbf\\x0b\\xae\\x8a\\xd4\\xf7\\\"\\xaa^\\x98)y\\x0e\\xea(F6\\x03\\x16\\x16\\xa9\\xcf\\x19\\xdd\\xca+`F\\xd8\\xc2\\x0e\\xea8}\\x1fG\\x83o%\\x15P5\\xa9\\xb2v\\xc0\\xdcJ\\x169@9\\x84!\\x1c\\x96\\xb9\\xb3\\xf4\\xf3\\xdfJ\\xf4*\\x95\\x8a\\xe3\\xc4\\xeeC\\xc8\\xb8\\x8bi\\x86~\\x92\\x02\\x16\\xd9\\xb8\\x10\\xbf\\x8c\\x049B7\\x91\\xb0\\x80\\x1e\\xa3\\xf1~\\x00a\\x9d\\x82ip\\xf4\\xc9\\x8c\\x92\\xc6\\xf1\\xde\\x8a\\xa2^\\x15G1\\xc8\\xf8\\x1b0UX?Q\\xa8oA\\xd8\\xc8\\x8e\\xb0\\xfaN\\x9cp0\\xa9\\xe2\\xa0\\xc9\\xa2\\x848\\x98b\\xb2L\\x86]*\\x185(\\x88/Ez\\xc8\\xa0\\xf1\\xab#r\\xca\\xcdbE9\\xd1d.z\\x13\\xca\\x8a\\x08\\x95|\\x81\\xf0k\\xcb\\x8bi2&\\xca\\x0f \\xaf\\\"K\\xf3x;%\\x01,I\\xc0\\x98\\x06[\\x1a\\xf5\\x13\\xf3iU\\xf2\\xea\\xf2\\x10\\xd7BX(\\n\\x8b\\x93]\\xbf\\x0c\\x80J\\xbe\\xd4\\x165\\xc3\\x0f}3|*\\x89D\\x04\\xe3\\xb0\\xeb\\xd7&\\x06\\x95\\xb8g6\\xb70\\x00\\xa3\\x8d\\xb5\\xa2\\xc7\t+\\xe5\\xac\\x0c\\x9e&\\xf2\\x92\\xc4$\\x17\\xfeK\\x07\\x12\\xc1\\xf8\\xf1\\xbe/\\xa3\\xdc\\xf1\\xa7\\x99G\\x05\\xe1\\x97\\x92\\x8b\\xca\\x87\\xbb\\xe8\\x19\\xbb\\x03\\xb9\\xfd\\x93\tF\\x9a\\xee@n\\xe0\\x1b\\xf1\\x95\\xc7\\xb0F\\xdca/\\xdb\\xec\\xa1\\x02\\x08\\xad<\\xbc\\xbc\\\"t\\x9ce\\xd3\\x9e\\x14\\xfb\\xe1\\xd8Rt\\x04\\x14\\xb5\\x04V{\\xdc\\x99\\xc0>\\xa3\\x9a\\xf6OD\\xcb\\xe8\\xd9\\x15\\x8e\\xa8>W\\nh\\xb7\\x1d\\x80\\x0c\\xab\\xab\\xbb\\xe5G\\xa89nYV\\x11\t\\xea\\xbc\\x80\\x13$/\\xd5\\x05L\\xe0\\xf1c\\x88\\xec\\xdf\\xcd0\\x00f\\x9b\\x1d\\xeb\\xf2\\x03\\xcb2\\xcd\\x8a\\x05\\x9d]\\xf3\\x82\\xe2\\xb9\\xf6\\xd0\\xe8`\\xa1^l\\xed\\xb5\\x19]tW\\xa1\\x8b2\t}\\xf5+\\x12E\\xf6\\x98\\xa8\\xd3\\xa6\\x90\\xaf_\\xa1P\\x85\\xb6\\xbel\\xb6\\xe3\\xcb\\x8b\\x0dcR\\xf3%lCpP\\x08&G\\xf2\\x19\\xec\\xc3\\xa4\\x0d\\xc9A\\x8c<\\xe7\\xae\\xe8\\x19f\\xde\\x8f\\xf8\\xa1\\x940\\xd4\\x88\\xd9\\xa9\\x1d\\xf9f\\xb7\\x04\\xb0N\\xc9\\xb27\\x90.6\\x1e\\xbb%\\x948\\xd7&\\xfb1\\x1d\\\"a#;\\xd7\\x99E\\xa3\\x10J59;\\x9b\\xd98UU9\\xfeTT\\xe5\\x04oH=y\\x8c\\xbf\\xca\\xacGa\\xa1$\\x8f\\xf0\\x87\\\"5&\\xfc\\x86\\xd0\\x97\\xe7\\xfcW5\\xb9W\\xe8\\x04\\x8a\\x0bb\\xd3\\xa8\\x9d\\xa2i\\xd0C\\xc5\\\"\\xb7\\xeb3\\xf1\\xcd\\xd1\\x14\\xfe\\xbe\te\\x13\\x88s\\xee\\x8f/\\x92\\xf3\\xd8c*(w\\x9a\\x7f$\\x89\\x9bT\\xcc6>@^\\x18\\xf1R\\xf1\\xa5\\x88l\\x1b\\x93\\xb3\\x9c-\\x9c\\xdb\\xa4F\\\\G\\xa1%c\\xce\\x8c\\x9b\\xf8&\\x1c\\x0e|cHXX5I3~B\\xc9\\xbcQ\\x9ed\\xc3\\xd0\\xc6[t\\xccXi}\\xd8\\xa0iE\\xb3\\xea\\xc8\\x8b\\xe3\\x9f\\x96n\\x99jWA\\x05v\\x1c\\xf2(\\xec4xK8(nJ\\x13Y\\xae\\x8e\\xb3\\x19\\x83`\\xc2\\x9bC3OW\\xa8\\xd9\\xd0\\x1f\\xa0\\x88\\xc1\\xa3\\x8ag*\\x15\\x1e\\xa8k\\xe2\\xf1\\xfc\\\\\\x82-E\\xae\\x94\\x8d\\x8a\\x89\\x97\\x8d\\x02P\\xfa\\x91<1\\x8f\\xa4\\xb0\\xa0\\xd7l\\xbf\\xaaeU\\xcf\\x0f\\xf2/\\x1fq\\x81F\\xb2\\x82\\xb0\\x0dg&\\xa4\\xab\\xfarJ&R\\xf0\\xad\\xf8\\xf5C\\xee\\xb7\\x80\\xae8XXuX\\xf80\\xf0P\\xad\\x14=\\x19\\xd8G;C8\\xb3\\\"^[\\x99wcE/k\\x92\\x1e%\\xe8EF\\x9d\\xf1r\\xc7\\xea\\x13\\x19\\x7f`(o\\xac\\x98\\xf5\\xd5t;\\x98\\x9f\\xc1\\xcc\\xb6\\xb7\\xb0\\xff\\x89\\x0b\\xfb\\x8f1\\x1e\\xb0m*\\xce\\x10\\x1623bc\\x8c\\xdc\\xf4>\\x9a\\x8dv\\xf1\\xefm\\x0c\\x19c-h<\\x16\\x18>\\xe4\\xf5\\xfd\\x95\\xb4\\x91\\xa9\\x9c\\xe1\\x9e\\x12s\\xc0\\x0d\\xbf:N\\xa5\\x1a/Q\\x88\\x1e\\x13\\x15\\x99f2\\xe8t\\x1bfl\\xd4\\x0f}|.\\xf6\\xd1\\x84\\x8dkR\\xdd\\xf1\\x070\\x92\\xc6\\xa3\\xc9X\\xec*&\\xd8\\xcd`[f\\x1f\\xc8\\xd8\\x9fg\\xba\\x11q\\x99\\x90=\\x9e\\x05\\xbc\\x8c\\xfa\\x8c\\x1d\\x00\\xfc\\xdf\\x04\\xff\\xb5Md\\xc1\\xa5\\xb1\\x04#\\x08\\xf0\\xcf\\xd0\\x7f\\x08+\\x06\\x11\\xec9c\\xbb\\xc9i\\n\\x95\\xa1\\xf3\\xf1\\xea\\xf1n\\xde\\xe6N2\\xc5 \\x8aG\\x18#\\xc1\\xc9F\\xc8%\\xee}60\\xbc\\xad\\xa8\\xb70\\xba\\xd1pda\\x905\\xff\\xe6\\xe6M\\x8c\\x03F\\xd1l^SA\\xb4\\xd0\\x8a5F\\xb0 !\\x9f\\xf0\\xe9-a\\x08\\xd9CX\\xc2c8c\\xff0J\\xd0&K\\x1c\\xc3\\x10\\x16HA\\x96z%\\x89\\xbcXwkAr\\x8e\\xc7\\xbc\\xdf\\xf2\\xb71\\x81\\x94\\x9e\\xbf\\x93\\x1f\\xf2\\x9e\\xcf\\x90v\\xc1\\x10\\xe6-\\x94\t$\\x83/A\\xe6\\xb1E\\xc1(\\xf6iEq\\x92\\\"\\x1b\\x13\\xfax\\xd6=\\x1e\\xc2\\xca\\x87\\x9c\\x81c\\x85\\x8b\\x86\\xfff\\xdcmaR8(4\\x9a\\x12z@\\xde\\x96.|\\xb2pGf\\xc2q\\xc4(\\x15\\xe2\\x87u\\xe5\\xc4>\\x9cX\\x85\\x19\\xb60'\\\\\\xe8~\\xfc\\x98\\x1d\\xe8\\xb6\\x85a\\x038A\\xea\\xba*_\\xf7\\xe1$%\\xe1g\\xf3W'BP\\xdb\\x1e\\x82\\xc7\\xb7\\x94\\x0f\\xdf\\xc1\tn\\x92\\x9d\\x022b?\\x8dN\\xf4\\xc2\\xad~q'\\x1c\\xab\\x1f\\x0b5\\\"o\\xa7\\x0e\\xd2\\x8c\\xad\\xcc\\x0e\\xcc\\xd8\\x12M\\xf8~x\\xc4\\xf7C\\xe5\\x83b93F\t\\xc4\\xfb\\x92\\xba\\xec\\x08\\xaa\\xb2\\xa3\\x8d\\xa2\\xec\\x9c\\x924D\\xb5Fy\\x9cp\\xb6\\x9bV\\xd8\\xf9\\xb0\\xd4\\xed\\x00\\xc6q\\x96\\xeeU\\x13\\xd5\\xbdj\\xea\\xea^\\xc5\\xc8\\xc49\\xf1r.\\xee`\\xa4f=\\xba\\xd1p\\x1c\\xff\\xe1\\x96/2U\\xf3EV\\\"\\xe8\\xcb,k\\xa1=\\\"\\x04\\x93b[\\x99\\xe0\tZ\\x01M\\xe9{&\\x1c\\xc2\\x8f\\xc5\\x9eMp}E\\xa5\\xbf\\xdc\\xcbxJI\\xbe\\xea\\xd7\\x9dR2\\xe5\\xf1h\\x93\\x0e\\xe8\\x91\\xc0c\\xe94y\\xf3&O\\x10Uz%'HR$\\xe4\\xebYn\\x0c+\\xf5\\xb9-\\xc5\\x1cw\\xab\\xdeE\\xa5\\x9c\\xd4Y\\x9f\\xb1My\\xe6\\xd4\\xfe\\x91\\xbd}k\\xa1\\xc7\\xa7\\x9ce~M\\xca\\xfa\\x8e\\xecVg\\xbf\\x9b\\xb3\\xff\\xf5\\xf5\\x1d_\\xdb\\xa1X\\x94\\xc2\\x9c\\xd5\\x11\\xce\\xd4\\xe0\\x07\\xd7\\x94|U\\xd5\\xc3\\x91bT1+!\\xca\\x14\\xe1(\\x02\\xe1\\x8f}\\xb4\\xdb\\xf7\\x8fy\\xea\t\\x9e;|\\xc1\\xed\\xcb\\x0e\\xb9\\xc3\\x9d\\xe6\\xf4\\xd4\\xaaLXre\\xc2\\x92\\x8d\\xeb\\x03\\xf1xu\\x9b\\x0b\\xe25B\\xfd\\x0c\\xad\\xffl\\x970\\x84i'\\x90,\\xbd1\\xf5R.\\xf8\\xe0(3x\\xfdb=6LIA\\x0c\\n\\xff\\xac\\xe4\\xf8\\xd9\\xd1\\x1a\\x9aT\tC\\x9e\\xb7I\\x8f\\xb7\\\\?\\xd1\\xa6(\\xcc\\x05y\\x1cr\\xedi\\xf9s\\x0f\\xbe\\x83D:n\\xa2\\x8d\\x88\\x1b+\\x9b\\xc9O\\x0d\\\"\\xac\\xbcD\\xff\\xca|\\x84\\x8a\\x05\\xa55\\xc3>\\xf2\\xfb4yI\\xd6d\\xfa\\x9e|\\xf1\\xfc\\xee\\x94\\x99\\x8ev\\x0d\\\\\\x83\\xdf\\x9f-\\xa2\\x95\\xc7:x\\x1d\\xf2|:\\nn2\\xa2\\x9bVp\\xb5\\x8a\\xb9\\xaa\\x933:\\\\\\xa0\\xf1L\\x96}c\\xd4%\\xc2\\xc3\\x9c+1\\x14\\xe7\\xde\\\\Q[0\\\"\\x12J\\xd1T\\xa3\\xbcTb\\xcd\\x8c\\xb6\\x99\\x12\\x01rD\\xa5\\xd0\\x1f\\x0d\\xc6m\\x8b\\x9dr\\xd5\\x1e_G1\\n\\x9ej\\xdd8\\x08>?\\xe1L\\x9fK\\x12Z\\xb6\\x90\\x8bB)\\xa2\\x19#\\xc90\\xf1=\\xa9,\\xb4\\\")\\x07\\xf7\\x0d\\x17\\x94#\\xd2s2\\x0c\\x8c\\x1f\\x90\\x93s\\xcc\\xbc\\xfc\\xae\\xc5\\xeb\\x04\\xdd\\x95\\x14\\xaf\\x93\\xe3<#/\\xc9:SJYH\\x8a\\xd7L\\xe2k\\xea\\xf4\\x8d\\x81\\xa6k{\\xec\\xde\\xfc\\xab?\\xb7\\xf9g\\x7fn\\xf3_[\\xe2\\xd8\\xfeAl)b\\x89:\\x02R\\xed\\x9e\\xdd`[\\xbc\\xcd\\xabSi\\x8e6\\xb1?\\xc0b\\x8e\\xb2xIkCgE\\x99d\\xf1\\x91\\xac\\x7f\\x86\\xdeg\\xb6\\xbe\\xdd\\x07\\x0b\\xean\\x12\\xddx\\x06F$\\xd0U\\x14as\\x9a\\x87Y\\xab\\x1b*\\xa8\\x1dE\\xf1d\\x91OIV\\xafj_\\xb4(_\\xe8\\xd6\\xec<4\\xb78\t's\\xf2\\x8ed\\xf9\\x02\\xf9\\xdf8\\x00\\xc5\\xa3\\xf0c\\x8c\\x8f+e\\xbbl\\x11L\\x85ZO\\xebL\\x01U\\n\\xd5\\xa8g\\xe5\\xc8\\x18\\n\\xafC\\xf4\\xb5\\xa7fu\\x84\\xb1\\xd8\\x95\\xe2\\x9d\\xdau~\\\\\\xdf\\xcb\\x0e\\x82wmR\\xbd\\xd4n\\xca\\xaex\\xbbf1]\\xb2\\xf0nN\\xac\\xf2\\x92v\\xcd\\xd4Z\\xbeV^\\xc8\\xa5\\xd0\\xd6:\\xb6\\xf2*\\xf7\\x19\\xba\\xb9\\x8ev[\\xb2!\\x01\\x86u\\xcaw\\x95\\x0f\\x07\\xe3@\\xf9\\xbb\\xe1^X\\xbf\\xecfQ#\\x19\\x91\\x97)\\x8b\\xb9\\x1b>\\xb2\\x95\\xc2\\x15\\xfe\\x99\\xc9L\\xb0\\x0f?\\x1b\\x11\\xa9r\\xd3D{\\x9f\\xb7s\\xba\\xad\\x148\\xad\\x13\\xdd\\xb4;i1\\xd3\\x80\\xb4\\x1e\\xd2\\xe9RT\\x99\\x97%O\\xcd\\x85~\\x0b\\x19{(r\\xd0G\\x18&\\x8c\\xbe\\xf6\\xbc\\xc4N\\xaa\\x15\\xedp@V\\x02\\xe44\\xbc\\xab\\x12\\xa0\\xa8\\xc5\\xd9\\xa6J\\x83R\\xaf\\x9c\\x91\\xfcXX\\x04MD)j\\x99\\xb2\\x9e(9\\xcdY\\xc5\\xe1w\\xe6\\x14\\xce\\xdd)\\x8d\\x14_\\x93V*\\x83\\x8ev\\x82\\xc0H\\xf9\\xd5\\xfc\\xf6\\x99\\xf0I\\x8b8m\\xb0\\xbb\\xa8\\xa0o\\x82\\x95\\x06I\\xf9\\x9dA+\\x0c\\x14d\\xcb\\x91\\x02\\x85\\x0c\\xdf\\xb4\\x0b\\x00\\x06uB\\xa3*\\xa2a\\x8f\\x7fl\\xf7\\\\\\xb3o\\xf0Xe\\xb1\\xe2\\xfan\\x8f\\xbb0G6.\\x8br\\xf6\\x07-s\\xce\\x9c\\x90<\\x05\\xbe\\xeag\\x00*w\\xd5a\\x9c\\xa0\\xeeE.%\\x9a\\xb6\\x8c\\xae\\x8c\\x07\\x83J\\x8dl\\xd9\\xd2\t\\x16=\\xa1&@\\xe4}\\xdc\\x19\\xc0\\x8e&\\x855\\x08\\xee\\xa1Nc\\x8d\\\\A\\x95\\xc6V\\x1a7\\xb4|56\\xae\\x85;\\x8c5\\xbc\\\\\\xac\\x8f\\x0e\\xf9\\x8f\\xf3p-\\xc5H.\\x03\\xd82\\xc1N\\x1f[d\\x9b\\x91\\xf6\\x8c7\\xf7\\xe0\\xb4\\xe5\\x7fpU\\xf9\\xb5\\x9c\\xec\\xb8\\x19\\xa3:\\xaa\\x19\\xf1\\xf8\\xacH\\xd4\\xebv\\xfcFxL-Y/[[%A\\x8c,\\xa7o\\xf4\\xe7\\xb2\\x03\\xc5x\\x9a\\xbc\\x80\\xb0\\xb5kJ\\x0b\\xf9\\\\\\x87ia\\nl\\xde\\x94gJ\\x9c\\x80\\xf9\\x8c\t\\xf5Uy\\xa1\\x1d\\xe1\\x13\\x8b[/H\\xa9A\\xe5\\x13\\xf0\\x832\\x91\\xe2\\xf6v\\x00\\x91\\x87~ \\x1c\\x02hn6\\xe7\\xf9dS\\xad\\xfb\\x84\\x81\\\\<;\\x1f\\xe1\\x04\\xa6\\x1a\\x1f\\x91X*/\\xb6\\x03\\xad\\x03\\x9b\\xe1\\xe8\\xfc)q.o\\xe5F@\\x06eT9\\x92\\xc4\\xfe\\x854\\x84%.\\\\\t\\x08\\x9bX6\\xda\\xb5X\\xcd\\xe4\\x85\\xd9,\\xb5\\x89A\\xd5\\xab\\x8a/34\\x15*9\\x81\\x9ecED\\x91[\\x1d\\x91gfd8\\xc1(\\xf8\\xe8\\xf9\\x1d7\\xdb\\xc0\\x17W\\xe2G\\x0d\\x11\\xa7l\\x86\\x9d\\xdc\\x88\\x98\\x101\\x80[\\xe8\\x83\\x83\\x81\\x88\\xe8\\x93#\\xde\\xff,*\\x98E\\xady\\x93\\x18\\xda\\x1c\\xf1:ff{\\xc2k\\xa4\\x90\\x86\\x80\\x1cF\\xc0 \\x81\\xcd\\x06r\\xf6W^\\xf4\\xc8`\\xd2\\xa7\tW\\xa1+\\x07\\xb1\\xe7\\x97\\x90\\xd2\\x0fJ8y\\xe7\\xb0\\xa3\\xc3\\xcc\\x0c\\x86C\\xee\\xe9\\xe7\\xb1\\xcd\\x96\tG\\xa4]\\xd8\\xd7V\\x9a8\\x13^\\x8d\\xf6cg\\\"Y\\xcc2\\xdc \\xc4\\xcaZ\\xd2\\x18\\x1a\\x96\\x06\\xc4\\x00\\xb6\\xf0\\x94\\x8a\\xa4Y,,\\xd2\\xf8x\\x93\\xfaY\\xe1p\\x0c\\xcb\\x0c7\\\"\\xdc\\xb4L\\nDDQE\\xc9\\xa4m3:\\x89\\xe9f4~l~\\x00\\x93o\\xd3SEV\\x1e'*\\xb2\\xea\\x95\\x8eY\\x06B\\x87\\xd6\\x81J8Nu\\xfd\\x95S\\xc3\\xa2\\x03\\x92\\xd4\\xd7\\x12E\\x9cqW\\x02\\xe3\\xf3I+1\\xbe\\x12\\xcb&|o7\\x1b\\xd8\\xc2r\\x90\\xf9\\xf66<\\x82\\xa4\\xdcl\\x13F\\x83\\n\\xad\\x9c8\\xc7b,\\xf8\\x80\\xe7X\\x84h3\\xe1\\xe65\\x031\\n`\\xa2\\xa3G\\x93oT\\xd6\t\\x9b\\x1e\\xeb\\xdfi\\x89\\xecz:\\x896J\\xabM\\x15\\x9fy}\\x1c\\x96\\xf7\\x9a\\xcfR\\xb9V\\x0f}\\x88ZOK\\x06\\xaf\\xed\\xed\\x0c\\x1e+(\\xdfv\\x12;E\\xbfC[\\x04<\\xbb.\\xedj\\x024P\\xb5N\\xa1\\xe0\\xaa1\t\\x96\\xd4\\xe2Q\\x0c\\xb0'\\x01\\xaf\\xa3\\x13\\x88'Oe\\x92\\\\\\xf4\\xc6P5\\x95]\\x14\\x04U\\xac5\\x1d\\x98\\xbf\\xbb\\x1e\\x98v\\xb2}M<\\xb0\\x99\\x8c%.{\\x84x\\x16\\x97\\xf73\\x11da\\xa3S\\xed\\x88n\\xe1\\xb4'\\xad\\xa4\\x8a\\xa7\\xe4\\xc6\\xd3\\xb2\\xceuO\\xfc\\x92je\\x0d\\xb6;\\xb3\\xb3\\xdd~\\x00\\x9a@\\xcbk\\xe2\\xb9\\xbf}Y\\x92\\xd4e]\\xba0\\xf7\\xdf~\\xdet X\\xb8\\xc9q\\x914\\x89\\xda\\xe55MZ(R$\\xb3\\x0e\\x86\\x82V\\xf8U\\xd6\\x1f)CT\\xa3\\x0cQ\\xc0\\x8f\\xb0\\xa8\\x8d.\\xb4\\xcb\\x0d\\x8b\\xd2\\xeaa\\x7f\\x99q\\xa2\\x0b\\xac\\xe47\\xc3\\xbfX\\x07\\x9c\\xcb\\xcb*x;\\x13\\xf1L\\x16\\xf6\\x1e\\xce\\xe7\\xd1\\x82\\x80\\xd1)\\x0fTu\\x00\\xda\\xae\\xd4\\x99'\\xd8G'\\x9a\\xe7&$\\xfcz-\\x86\\x8fo\\xb6\\x04X\\xf0\\x17\\xe9\\x94\\xa1\\xce\\x91\\x18@1\\x1b\\xeae-\\xb4\\xe7LT\\x0d1oeve:\\xca\\x16\\xb5(\\x10@\\xe1\\x9e\\xb7\\xd0\\xf3j\\x02\\x8f\\xb0`\\xcdM\\xc8=\\xac\\xda\\x87e\\xf2'\\x18\\xa8\\x0d\\xfb2M7R\\x84X\\x94\\x03HPR\\xf4\\x0bIbk\\x17\\x8bs\\x9a\\xf1\\xca\\xac*g\\x0b\\xcb\\xben\\x96P\\xfa3L\\x19\\xa9Y\\\\\\x03\\xb1\\x8a\\xa3\\x96B\\xe7\\xd7F\\xa5\\x04[\\x958))\\xa8\\x93\\xc9\\x04\\xe4\\xb9%R\\xcdw2\\xcfN\\\\\\xe9\\x0d\\x88^RA\\x01\\n\\xf7\\xeb\\xd1`\\xcc$T\\xd4\\x10z\\xa1\\x8c\\xa7@\\xecb\\xc7h\\xeeM\\xca#3.\\x08G\\x1a\\xf0\\xf3s\\xd2N\\x16\\xd9\\x15r\\xe7\\xdcD\\x94F\\x9b4\\x96\\xd7\\xda\\x82\\xf0\\x8eJ\\x90\\xac\\xa3g\\x97\\x19i\\xdb(`\\xdb\\xaa]#C\\xdb\\x81\\xa2\\xba\\x99\\x99~\\xb1RT\\xee\\x91\\x89\\xd1\\xaa:\\xf9E\\x12\\xdc\\xd0\\x986:2SK\\xbe'\\xa5v\\xa3\\xe2 HZ\\x8a8\t\\xb8\\x8fR\\x1cy\\xc4K/\\x1e\\x00\\xffP\\xb8\\x97\\x11\\xa3\\xfb`\\x91e\\xdaxD$\\xfd,I\\xa9\\x9b4+>!\\x1e\\x1d\\xdd\\x1e\\x07\\x10\\x8fn\\x8f\\x11\\xcb\\xe9ho\\x0c;\\x10\\x8f\\xf64\\x19\\x82\\xfd\\xb2 y-+\\x83q\\x97&#2\\x96;i\\x08{\\xcd6\\xeb\\x15\\xfal\\x0d1\\xd0\\x8f\\x06\\xba\\x81q\\xce\\xf5\\x85\\xa8\\xf1\\xc1\\xdd\\xbao\\xf0_?z5\\x85\\xa0\t\\xa7^Zq\\x8a\\xfb\\xbb(x\\xe5b7\\xfa6<aC)p\\xc3\\x88\\x17)\\x99\\xe6\\x93\\x0e:\\x0c\\xd1\\xfa\\x0bT\\xc1P\\xe4\\xb6b\\xf4\\xe1\\xe4\\x8a\\n\\xbd3\\x89)oq\\xc1K\\xde\\xbc\t\\xa9\\xce\\xf7\\xd5\\x12\\x90\\xd2e\\xe0\\xd5A\\x07<1\\x9f~\\xb8\\x8e\\x9e\\xef/\\x9cx2\\x91N\\xdd\\xb8\\xe5d\\xf2\\xf8\\x9b7!V\\xf4\\xb7\\x95\\xb0\\xc9\\xcd\\xa6\\x8cF\\xe0\\xbf`k\\xc8\\xba\\xddlxl\\xab\\xd3xo\\x94\\xf1\\x17\\xdf 4\\x0b]';\\xe6)\\xf5RW\\x0f\\xe7b\\xcd\\x1a~\\x96\\xc0\\x91p\\x19\\xc5^\\xd52UO\\x87dj\\xba\\x9e\\x85\\x8f\\xfby\\x96g\\xe2\\xcf<^;\\xe2!<[\\xb2\\xfe\\x85\\\"\\xd1@%\\xfd\\x9e\\xb0Tp\\xf2JMI\\xf8@\\x01Js>\\xed\\x82,u\\xe0\\xdcRG\\xe0\\xcaK\\x02\\x99\\xad\\x0f;\\x99\\xe0w\\x0fC\\xd8K\\x9fK\\x86\\xef\\x96\\x03\\xff\\xea\\xfa6\\x07\\xf6\\xbf\\x03g\\x88\\xab\\xd9*\\x80\\xa1n\\x02\\x973\\xb9\\\"\\xa0\\x04\\x16\\xd8\\x00\\xc2\\x13\\x90\\xf4\\xb3dI\\xae\\xd2\\x01C/K\\xf3\\xa2\\xbe\\xd4_\\xc8H\\xc9\\xfc\\x989\\xe6\\xc7\\x14\\xce\\xbe\\xa2\\x1c\\xc5U\\xa1\\x88\\x03\\xb4\\xcd\\xf2\\xfa\\x05\\xe2\\x1f[s!p\\x13\\x0b\\xaf\\xc9A\\xfb\\x93$\\xceh\\x9aOP\\xb3\\xecF\\xdf\\x7f28zGE6\\x1b\\x1e\\x81\\x84%F\\xe8<M\\xce\\x11\\xc5?\\xacW\\xe40M\\x93\\xd4\\xeb\\x1d^\\xac\\xc8\\x84\\x92)\\x8c^\\x06\\xf0\\xcb\\x18h\\xbeZ\\x90}\\xe8\\xc1v##\\xada\\x0c\\xff\\xb4GW=\\xa3\\\"\\x1e\\xc1\\x0f\\xe0\\x89k\\x80\\xd5o\\xf66C\\x0e\\xb6\\xb4d\\x83\\\"&\\xf0:5\\xfd\\x0f{\\xd3\\xd5\\x88-O\\xf4\\xf4Ba\\xb8\\x18\\xb7\\xe5+\\x81\\\\N\\xbdR\\x87\\xea\\x1c\\x8c\\x14W\\\\zd\\xee\\xf6\\xc6\\x13\\x0c\\xac\\x99\\xd7\\xb3\\xba\\xe3[\\\"\\xe0C\\xe4Y\\x7f\\xa9f\\x97/\\xbf\\xe7\\xda&\\xdaL]j\\x18=i\\xcfu\\x0f\\x8fE6\\xca}\\x8cz\\xc4<D\\xec\\x87\\xdb\\xb9\\x1f\\x1b\\xb6\\xf2\\x99\\xf0E\\xfb]{\\xe0\\xa3\\x14m<s\\xf1\\xe9/\\x0e\\x98\\x8fG\\xe0\\xc9\\x82@\\x92\\x02\\x06E\\xef,\\xa2\\xcf\\xc5\\x1e\\xd0\\x93x>(6j\\x0d\\x810\\x01\\xc9\\xcd\\x818mI\\x9c\\xcc9\\x88\\x82\\x04Zs\\x8aq\\x0bv\\x14g4\\x8c'$\\x99)\\x15\\xcf-N\\x11\\x089D\\x8f\\xea\\xa7\\x95d\\x9f\\xa9gR=\\x17MX9tv\\xc5\\xa8\\x96j\\xd7\\xb2\\xe6e(\\xe5g\\xb2\\xce\\x8c~\\x89\\xf2\\xdar\\xe3\\xca\\xd4\\x8b\\xa6k\\x87\\xb7\\xd8E\\xb4\\x11\\xaeN\\x9d\\xc8K\\xcceJfQL~N\\x93\\x15I\\xe9Zp\\xbe\\xee\\xad\\xb0\\xeb\\x94PE\\xb4\\xec2\\x06y\\xa9$\\x88\\x87Mvj\\xe2\\xb2\\xdd\tF\\xbd\\xb2\\xcax[\\x8fo\\xdduJk\\x89\\x98\\x03\\xe8=\\x0d\\xe38\\xa1\\xacuHb\\x08c\\x88\\x8a\\xf4\\xbc)\\x99$\\xe9\\xb4\\xdf+H&\\x8f\\xb6\\xb3\\xb0\\x98\\xba\\xab=s\\x9b\\xbc\\x0c\\xd1\\x08\\xf5\\xeb\\xb2\\x7f\\x12\\xc5S\\xaf\\x8c\\xbak\\xff\\xec\\x12&!\\x9d\\xcc\\x01\\xc1f\\x1f\\xd0\\xa5']\\xd3\\xe5\\x11\\x91\\x0b\\xfd\\x04r\\xfdq\\x88\\x81\\xbc<t\\xf83\\x0f\\xc5\\xcb\\xf1\\xc7\\x94\\xcc\\xc2|A\\x7fa\\xdc\\x12\\xe6\\x9c1vc\\x1e\\x00_\\x1d\\x1ep\\xf8\\x95\\xd6\\x15\\x13\\xf22 N\\x842Eqj5b\\xa8\\x13\\x9d\\xae\\xab\\x90\\xfc\\x14\\x16\\x8aG;\\xd6\\x15m\\xea/\\xe2\\x1d\\x91\\x00\\xbe2!\\xe4\\xe8\\xfa\\xaat\\x1d]g\\x95\\xae\\xb7\\xe9\\x94\\xa4d\\xfa:\\\\\\xc1\\xbf{\\x01\\xf4.\\x9b\\xb5\\xba\\x8e\\xaeP\\xab\\xebL\\xad\\x11\\xc0V\\x8a\\xd7\\xf07C\\xb6\\xe2\\xa1%\\x8a\\xe9`\\x18)~\\x18\\xfb\\xbc2m\\xa3\\x86\\xd6\\xd1_\\\\\\xdd\\xa6(;\\xc3\\xa6$\\x92*\\x05\\xeah+\\xf7|\\x91\\x11\\xc1:\\xean\\x95\\xbf~&\\xb6\\xdaGGW\\xaf}\\xa46\\xbc\\xb47\\\\I=\\xee\\x02\\xec\\x12d\\xe5\\xa7\\x1e\\xd7\\x93\\x96\\x90S\\x1fY\\xbb\\xef\\xa4\\x1bQ\\x11\\xd1\\x88|\\xca(4\\xb6\\xb467z\\x9eo\\xce\\xe3&]\\x82\\x16XCx\\x97\\xdb\\xbc\\xdcJ\\\\4\\x87>K\\x93\\xe5aL\\xd35\\xd7\\x95*\\xca\\x9fv\\\\\\xe9V(\\x81\\x0b\\x7f\\xc3F\\x95\\x04\\x87\\xfc\\xda\\xa4B\\x14*\\xdd\\x1a\\xcd\\x08%!\\x11KT\\xfd\\xc8\\xbc\\xacp\\x00\\x1f\\x88p\\xe5\\xecPmA\\x1e-D\\xdd\\xd9<\\xef\\x85F\\xa2AHF\\x99BH\\x87\\xf0\\x9aT\\xe1;\\x9a\\xca\\xea\\x06\\x15\\xa8\\x17u\\x0e4\\xfb6\\x00\\xe2\\xbd#\\x01\\xbc\\xf0\\x03xw\\x05\\n\\xdc\\x14\\xfc\\x90\\x02\\xeb0\\xa1\\xd2|-n\\xa0\\xb5\\\\\\x1ao\\x9b\\x17M\\xb36\\x8c\\xfa\\x91\\xf7\\xe4K'\\x9a\\x81\\x8d\\xcb/\\x9bt\\xe1]\\x15nN\\xa1BgJEf=\\xbe\\xb1&>Jr\\xb8\\xa5K6X\\x19\\xa3L6\\x80F\\x0d\\xe7i\\xaa\\xcd\\x88yJ+\\x8798\\xfc\\xd2o\\x04\\x89\\xd6\\x80\\xc01\\xb7\\x15;T\\xb2\\xa8\\x07\\x02\\xa3\\x02\\xcf+\\x87M\\x070\\xa4W\\x01C\\\\\\x03\\xc32\\\\i\\xf0\\x15\\x04\\x18\\x1a\\x85_\\xde}\\xdb\\x19\\x11XB\\x94\\x9a(Y\\x1e\\x13\\xd5\\xc9+\\xe6<\\x07\\xc7e\\xea\\x11S\\xcc\\xd2%#P2\\xdf\\xf2?y7>\\xcf\\xd2S\\xf4`T\\x9d\\x17\\xcdG\\x81\\xc8\\xd7\\x1c\\xc3>/\\x06\\xa4\\xeb\\xcao%\\n\\xdd\\x8e&<\\x1eT\\xb0\\xf8\\x16\\x08\\xca\\xe3I\\x7f\\\\\\xc4U\\xddS\\xc3\\xa0aD\\xdd:\\xd8\\x8c\\x8b\\xea\\xa8\\x90\\x97\\x96\\xa1\\xd8\\xea}Q\\x88\thP\\xe1JCT4\\xf3U\\xc0\\x82\\xf8\\xe8\\x17V\\x98Wt\\xcba[\\x8a\\xf2$!\\xde\\x1b\\x12\\xc0\\x0d?\\x807\\xeaR\\xe9\\x02\\x01\\x1d\\x89x\\x11\\x0d\\xd8\\xa4\\xe4o\\xbems\\xb5R\\x1a\\xf3\\xfah7\\x9d3o\\x86;\\x0cA\\xee\\xca\\x92ig\\xea\\x86\\xf7\\xdf\\x84\\xb0\\xd7\\x82\\xa1\\xc4\\x15C\\x89\\xc4P\\\"14\\xe5\\xa6\\x10\\x81\\x97N5\\xc3\\x88\\xf7\\x8a\\x04\\xf0\\xa3\\x1f\\xc0\\xabo\\xe7 ,\\xc8\\xf7\\xeaZ\\x90\\xef\\xcf\\xc40\\xe2\\x8e_\\xda\\xc9\\\\\\x1b~\\xfd\\x87\\x91\\xa8\\xc4\\x9f\\x8e\\x88\\xf4Lp\\xba\\xcfT\\xe8\\x10!\\xcc\\xb4\\xf1\\x10\\xcdu\\x14,D\\xbd\\x9fg\\xff\\x95\\x88\\x84.1\\xa6\\x87\\xec\\xfa\\x89x\\xc6\\\"z\\x8a\\x93En}\\xab@W,\\xd1\\x8f\\xc2\\x00:vr\\xb1\\xb5\\xbc\\xb9\\xcbo\\x1a\\xa4Xv5\\xf5rZD\\xd7\\x02\\xfb\\xbf\\x06\\xd1\\x1d\\\"C\\xdd\\xf6\\x02\\x14\\xe1\\x95\\x15\\xb7p\\x8b\\xf3\\xa4\\\\/\\xd2\\xe6e\\x89\\xde\\x95\\xb6\\x11\\x02G\\x0e]\\x18\\xa0zI\\xde%o}S\\x0c\\x1e\\xf7r\\x04\\x07<\\x91\\x0bG\\x89\\x14Q\\xa2\\xbc9\\xe07\\x07\\xcd|\\xf9\\xeaepYt\\xa0\t\\x95s\\xb8\\x9a\\x86\\xe0\\x9d\\xf9\\xd1+\\xf3\\xa3g\\xe6G\\x98\\xa3\\xcaK\\xe3\\x00N(\\x13-b\\xe5\\xcdoT\\xb0\\x86\\xb1\\xe0A\\xb7\\xa1g\\xd4\\xb0V:\\xec||V4\\xea\\xec\\xf3\\xb7\\xe7qi\\xf2\\xb1w\\xe6\\xa8L\\xe0i\\x9e\\xe6Eut\\x1b\\x9aW7oep#\\xaa\\x89S\\xae\\xcc\\x85\\x89\\xaf\\x07\\xe5\\xdfRg\\xa1\\x89\\xd9\\xac\\xcf\\xc4I\\xf9[J&Z\\x95\\x15\\xef\\xff\\xe6Me\\x00\\x15}\\xae~\\xb2R\\x99\\xa0\\xda\\x06\\xcc\\xd3\\xec\\x1f\\x93\\xe5\\x8a\\xaeQL.~\\x0c!\\x8f\\x85\\xa8\\xfd\\x1bm\\xa6<\\xadM\\xd5Qc\\xdc\\\\\\xb4\\xd2J\\xcd-\\xd4\\x7fS\\xacZy\\xfc9N\\xcec\\xf8L\\xd6\\xd0\\xfb\\x1bl\\x03\\x85m\\xf8[\\x0f\\x92\\x18\\xd8/\\x89\\xc7\\x06#y\\x05z[%\\xf8D1\\xfd\\xb2\\x16\\x87\\x16)\\x1c\\xf4\\x86\\x15cBu\\x892\\xa9\\xd7j\\xc1\\xadJY\\x08e4%\\xce\\xc1~\\xb9\\x0e\\xcd:\\xcc\\x955pT\\xae\\x1b7\\x8ey\\xa6\\xc4<S\\x91\\xa7\\xd4\\xa6\\xf2l\\xcc\\x94\\xb4\\xce\\xb4ytWfzM\\xda~k\\x1fWg\\x0f\\x8c\\x90H=\\x0d\\xae\\xd5\\x1d5\\x0d\\x1d\\x80\\xaa\\x942\\x98\\xac/\\xdb5\\xec\\xda)^\\x1f\\xbb\\xf9\\x17\\xce\\x908M\\xf0?aB\\xa8n\\x90N\\xa6\\x81r\\x03\\x88\\xa0\\x01W\\x83@\\x0d\\x0e\\xd5N\\xd0m\\x15\\xbdk\\x15\\xe0\\x98\\nT\\xe6|\\x85Z\\xbc\\xa7\\xab\\xf6i\\xf1\\xeb\\x94\\xd0\\x9fe\\xf3og\\x8c\\xb4\\x98\\x11E\\x19\\x7fZ\\xcf\\xe4\\xed\\x16(\\x12\\xb60\\\"\\xc2\\xe2\\xbf\\xd9T\\xbd\\x0c\\xfb\\xf2n\\xef\\x1d:I\\xf4\\x9c:\\xcb\\xec\\x9dYs\\xd2\\x9f\\xc5\\xe8\\xdf;\\x89\\xc5\\xb1\\xb35\\xf3\\x8a\\xe4\\xf4\\xec\\xd9\\x95\\x93\\xd3'WNNo\\xe3\\xe0\\x0bI:\\x9cN\\xcd\\xc5\\x084[\\xd3\t\\x90\\x13; \\xb7\\xbc-\\x04\\xe1\\x16\\x1d-\\xea9\\xa4\\xab,z\\x12\\x97\\xb6\\xaa$.,T\\xc5m\\xac\\x83]<h\\x96\\xdfNb^\\\"[\\xa9\\x96]\\xde\\xfc5\\xc2\\xa0\\x16\\xf9\\x80\\xfd,\\x1f6\\xcao\\xcb\\x07\\xcf\\x08Y\\xd5\\x8aoW\\x1f\\xd6\\x9a\\x95\\xb7\\xaa/i\\x0bx'\\xb1\\xa6\\xd4x\\x12k+\\x88\\x17\\xb7\\x9b\\x15\\xc4\\x93\\xd8\\xa1\\x0ex\\x12[\\xea\\x80\\xe3C[\\x1dp\\xe2eq\\x00\\x17Lh\\xc9\\xe2ks0\\xc9b\\xb4%\\x8b\\x0c\\xda\\xce\\x92\\x88\\xc7(n\\xff3\\xe1\\xf6g]\\xab\\xd7&U\\xf5\\xde\\x13j\\x94\\xa6\\xb2o\\x92\\xa6J\\xae\\xd5\\xdan8\\x9d\\xba\\xb6;\\x97\\xe7L\\x83e\\xdd\\xaa\\xa7\\x8f\\xaf\\xf7\\xe2\\xc8e\\x9a;*8F{?N\\xc2\\x93\\xb9\\x17!$\\xd9\\xfb\\xc8\\xe3\\x08\\xcfEk\\x1f\\xc5\\xf9\\xce\\x1d\\x88\\x0b\\x1c\\x0d\\xb45\\xdf\\xc4\\x888\\xf5\\xe7\\x01e\\xcd\\xfa\\x06-\\xec\\x8f\\xa8i`\\n\\xc9\\xf1\\xcbz`\\x82o\\x16\\x1f\\xcc\\xa5SP\\xe1\\xc5\\xa2r\\xdd\\\"uM\\xf5c\\xd3\\xd9c\\x1cb\\xa5\\xb6\\xdf\\xeeC\\xac\\x19G\\x8a\\xca;\\xf1\\xf6\\xb6\\x0f\\x89GF\\xf1\\xd8o\\x1e;V\\x8dbql\\xb3c\\xc7\\xa0\\xbe\\xd1\\x1e;\\xd2A\\xaa\\x12I0\\xda\\xad\\x1f\\x1e\\xb5\\xa5\\x8fbJ\\xd2\\x8cL\\xe8\\xf5.\\x7f\\x99Q\\x89\\xb8\\xd5^\\xe7\\x18\\xe2\\x16\\xdf!\\x1aJt\\xa7\\xb2.\\x8c\\xcf\\x89e\\xbf\\x12\\x16hx\\n\\xab\\xdf3\\xe9\\x933\\x92\\xae\\x1dZ\\x96W\\x81\\x0e\\x85\\x11\\xc6\\xa0\\xfa\\x05\\x8e\\x04\\xc8\\xe6\t\\xd2bR\\x12\\xb73-5$\\xc9\\xf2\\x13\\x9a\\x86\\xff\\x1f\\x8e\\xfcE8r\\xd5X.G\\x14\\xc1DV\\xd7\\x8d\\\"\\x92\\x87t9\\xa6\\x10\\x8cx\\xe6(\\xb5\\x1c\\x02\\xb0r=\\xb5\\x9e\\x04\\x07i'\\xa9\\xc5\\x9a6\\xd0q\\xd0\\xa2\\xa6i\\x0e\\xae\\xa9s\\xaa\\xee\\x90$\\xa5\\xae\\xbc\\xc0:\\xf6~)\\xbcwZNf\\xd6\\xee\\x0fk\\x17\\xbd\\x84\\xa6q\\xd2\\xde\\xfe\\x9f\\xa4A\\xca\\xfe\\\\\\xf5\\nU\\xb4\\nMc\\x9eCfh/\\xc5\\x98sW\\xc3\\xb0v:n\\n\\xb1\\xc6\\x88\\xbb\\xea\\x80\\xb4\\xc1\\xc8m\\xea\\xad\\xec?\\xaf\\xfd\\xe9\\xa6\\xf0\\x11}-\\xc3\\xcf<\\xfe\\xfd\\x1bt>8\\xfb({\\x8f\\x9a\\xf8I\\xdcT\\x01\\xcd\\xe2\\x00\\x16\\x0c\\xc7z\\x7f\\xff\\xfb\\xf1\\xf1\\xd1\\xeb\\xd7\\x1f?<\\xf9\\xe1\\xd5\\xe1\\xf1\\xfb\\xc3\\x0f\\xc7\\xc7\\x7f\\xff{\\xaf\\xe9\\x08\\xb2bog\\x0eJ\\xa3y;\\\"\\x18\\xaa5\\x91z\\xb5&\t\\x05Y([j\\x88\\x91\\xcd\\xe5\\x87\\xa6\\xf4\\x8eg\\xa0^\\xae\\xe8\\x9a\\x87O\\x17`tSDL\\xdb\\xf7bU\\xc9\\xb5\\xb2\\x04a\\x94\\xd9\\xeck\\xe5\\xebb9-\\xca\\xb3z\\x97kJ\\\\\\x93p\\x9fY\\xe9\\xd2\\x0c\\xf3\\x0ex36\\xdei\\xec\\xe9L5\\x86v\\xd7\\xdf\\xa0\\xd2:\\xe7*\\xad\\xd3\\xb8\\xd4d\\x9d\\xff\\xbfM\\x93uj\\x87_\\xa1\\xee\\xd3\\x14XT\\x7f\\xad\\xe2\\xd1\\\"\\x96\\x0et+E\\xa9\\xb5*\\x95Z\\xab\\xaa\\x82I\\xfe\\xac>\\x10\\xac\\xc1*VuV+\\x17\\x85\\xcf\\xca\\xa6\\xf0Y\\xb5)|V\\xb1\\xdc\\x870\\x84\\xb3X\\xdc`[\\x11Q2\\x00\\xe2\\xadcF\\x9c\\xfc\\x00\\xd6\\xd7\\xa7\\x11Z\\xff)\\x1a\\xa1\\xf5uj\\x84\\x84\\xff\\xbdM1\\xb4\\x8eK?}N\\xb9O5\\x94{\\x19\\x07p\\xcc\\xf6\\xc9\\xda\\x81\\x16\\x9ft%l\\xc7\\xff!\\xc2vn\\x85\\xe6\\x92\\x13\\xb6%\\x1b\\xefI\\xec=u/\\xbby\\xf1\\x0d\\x84\\xed3'l\\xef\\x15\\xc2\\xc6n\\xf5\\xf38\\x9bG3\\xfad\\xb1p\\x8d\\xe6\\x7f\\xef\\xac\\xe8~bWt\\x1f\\xc7\\xa5\\x83\\xed\\xb1\\xba\\xd7\\xcecqC\\xec\\xb5\\x13\\xdck\\x17q\\x00\\xe7\\xd4\\x0f\\xe0\\xe2\\xfa\\xf6\\xda\\xc5u\\xee\\x8a\\xf74\\x9c|\\x86\\x11\\xdb\\x10\\xe3\\xe6\\x86\\xb8\\xb8\\x82+H\\xd5\\x18?'\\xe1\\xb4\\x89\\xcf\\xa8\\xb7\\xa2JRn\\xea?\\xe4\\x89\\xd7\\xe9\\xce\\xceC\\x1f\\xbf\\xe7^U\\xe6\\xbd\\x00\\x07 \\x92\\xd0\\xe8\\xe2\\xfe*#_\\x11\\xf2\\xb9\\x13\\x80\\xd8\\xa8K\\xc3!\\xfb\\xa5\\xc9\\xde\\xd1\\xe8%\\xcf\\xe6m\\xbd(9\\xbe\\xe5\\xfa\\xbai\\x1d\\nM_\\xe1L\\x82\\xbb\\x7f\\xbb\\xd1N\\xa00\\xc0l\\xe0\\x01\\x02\\xb3\\xfe\\x16\\xec\\xc0\\x80A\\xfc1W\\x1b\\xee\\xec\\xf8\\xf8\\x99\\x89/\\xc0\\xcc*E\\x1b\\xa3\\xd8\\x90\\xfb\\x90-X}-\\xd8\\xa5I\\xb4\\\\\\xc5GC0e\\xc1i\\xe3z(\\xf1V\\x8d\\x8a\\xa1\\xfcn\\xad\\xfc\\xb9p\\xed\\xff#\\xd6\\x8b'\\x8d\\xc5{\\xc2H\\x91\\x83`\\\"\\xd4\\xc9\\x98\\x1f\\xda\\xa3\\xbe\\xcf9\\\"\\xfb\\xfa\\x959HZ\\xa4\\x16d\\xc0\\xf5\\xd0m\\xd9T\\x05o_\\x84\\x07u\\xe0\\xd0\\x08\\xcf\\x92gB\\x01(\\xd1\\xc0P\\xf5\\x18\\x8a\\xf5o\\xa6\\xce\\x87\\x06\\x19\\xc5;E`\\xaci\\xfdIm\\xfd\\xe3\\xab\\xae\\x7f\\xd3\\xfd\\xba\\xb1\\xfeIke*\\x15e\\xb3E4!\\xde\\xc0\\xde\\xa68\\xa6\\xba\\xb4\\xcb\\xd0\\xd0Q\\x1d\\xa5\\xeb\\xca\\x05\\x83\\xeb\\xdd\\xe9N\\xd1Z\\xeb\\xdd\\xa7\\x91\\xac\\xae2\\x8b.V\\xa6o\\x8d\\xcf\\x16(U\\xc3\\xa0.x\\xc5X\\x11;\\xd8\\x18\\x92\\xb8\\x1c\\x99\\x8c\\xa8|\\x16\\x8e\\x1e\\xc5`]\\\\\\xc1b,.\\xa2V\\xe95h\\xb8_{\\x95\\xa6\\xab\\x16\\xaa\\xa2\\xa3sZ\\x1f}\\x99\\xa6\\xc7\\x18\\xe3W\\x9cLi\\xe5d\\xc22gQ\\x95d\\xb1\\x83\\xe6\\xa1\\x8fw#\\xfb\\xe9n_\\xc4\\xb4\\xb6\\x88\\xd1\\x95\\xd6\\xef\\x8fXWa\\xba\\xb6\\x86\\xdd\\xd4V\\x85.\\xa9\\xa9\\xb9R\\x10\\x14\\x0e\\xf0L*\\xa8\\xbd2\\x99\\x8ea\\xc8\\xea\\xcc\\x06\\x06=\\xd4\\xc5\\x95\\xb5\\xa0\\\"\\xee@]\\x92\\xf2hQ<\\xbflH\\x11\\xf3=\\x97\\xd6\\x10!\\xad$\\x13Le0H\\xac$\\x13\\xc4o\\xd2\\x16&\\xd0i\\xb2n:R\\xa7\\xd9&z\\x1db9S\\xed\\xd9\\x97\\xba\\x9d\\xdc\\x8e\\x91\t\\xad^\\xff\\x92\\x9fH\\xdb\\xe2\\x07D\\xbf%\\xa0\\x03\\xee\\xd9\\x8f\\xcb`\\xb2\\xfa\\xeag\\xc8[je\\x1e\\xda\\xb2\\xf3Y3\\xf3\\xb9D\\x05\\\\\\xa0\\xd6\\x15\\x85\\x9a!\\xbc\\xd7H\\xef\\x87q\\x00Otz\\xd7\\x0fO\\x9e\\xbe4h^\\xdf\\xb2\\xf7/\\x1c\\xa4\\xfd?\\nw\\xbd\\x96\\xfc\\xa15\\x8f=kF\\x99\\x92\\x19\\x8eTN8\\xaa;\\xeaE%\\xfdK\\xf9\\xaf*upK\\x19\\xf8\\xd9z\\xea\\x1er=\\xc0!\\x03\\xc8\\x1f\\xb1\\xd7pO14z\\xd4..\\x16ho4K*\\x87\\xd3\\x08ut\\xec\\x9f&J\\x18!\\xa9\\xa6\\xef\\\"%o\\x1c\\xfb\\x01\\x94.\\x93Jh\\xc4\\xfb\\xf5\\xf2$Y`\\x85\\x04\\xdb\\xf3z[\\xb4\\x06\\x11\\xf5\\xd7\\xdbx\\xf4\\xa4P/\\xbeu\\xd1\\x06\\xbe\\xb5i\\x03\\xdf\\xb6i\\x03Y\\x17\\xaam\\xed\\x8b\\x9aE%\\x80\\xb8\\x7fT\\x12\\xc8\\xaf\\x01[\\xa6X\\x97\\xfeK\\xa4\\xc4vH\\xf3\\xf5\\x8cz6V\\x04\\xc4\\x82S\\x91\\x1b\\x97g\\xda.\\x8f\\xf6\\xcdFk\\xa3\\x87\\x1acP\\xe6{0\\x98\\xde\\xac\\xa6m*\\xb0GOc\\x1a+\\x88w\\x9b4\\x81&G\\xf1\\x94\\\\\\x90\\xe9{\\xf2\\xc5\\x010\\n\\x89\\x7f#\\xa2\\xce\\xddz\\xf9\\xe9\\xbd{\\xeb\\x08\\x1cm*l\\x17\\xcd<e\\x98\\xde\\x93\\x9f\\xf4\\x80\\x1d\\xcd\\xeb\\x15If\\x98_\\xfb\\xa7\\xf7\\xa8sd\\x7fp\\x0b\\x8f\\x01|\\xa8]b\\xef\\xb8N\\xef\\xed\\x9b\\xff\\x96\t\\xbe}SL\\xf1\\xed\\x9b\\xeb\\x9c\\xe4K\\xb2\\xbe\\x02\\x9e\\xbcS2\\x8c\\xb8\\xf5\\xf3:\\\\\\xb9w\\xf1Ul\\xd5rxu\\x0d<\\x98\\xfa\\xe1\\xe4\\xd0\\xa1\\xab\\x0e\\xe4\\xe0\\xdf\\x86j\\\\U\\x81\\xe0?\\xb6\\xd9\\xcb\\xec=\\x0e\\xd3\\x16c>\\\"W\\x87pa\\x84p\\xefn\\x1d{!\\xa7,\\xd2\\x94]\\xd2I!\\x17;\\xf6\\xde\\xa9\\xdb\\xec:\\xbb\\xed\\xbcI^u\\\"\\xa6\\x9d\\x9a\\xcf\\xaa\\xb3R\t>\\xce,\\xac?/WY\\xaa!\\xe4\\x9c\\\\\t\\x052\\xae\\xee#\\xbc\\xb86\\xd0\\xbf\\x8a\\xb2\\x0eK\\xbe\\\"\\xd7\\xd5/7C\\xb8\\xf7\\xdc\\x1b!\\xc7r\\xb2 \\xe3\\x9eK\\x0f\\xa5\\xa9\\xc3\\xb1\\xfc\\x85Y\\xbb\\x04\\xdb<I6\\x06\\xeabb\\xde\\xfaa$h\\x94\\xec\\xf1u\\xb8Z\\x91\\xd4\\xef\\xff\\x91D\\xb1\\xd7\\x0b\\xa0\\xe7\\x17\\x9fjT\\xe4\\xcd\\xb1O\\x92x\\x12vX\\x95\\x1f\\xe5y\\xe14QPxos\\x81\\x16y1\\x99eD\\xc7}>&\\xc6\\xf2\\xba\\x9f\\xbe\\xf2\\x12\\xc3\\xcc\\xb91\\x8f\\x97\\xd9e\\x94?\\xc5\\xb0\\xc7}\\xce\\x14\\xc2\\x01\\xe4\\x98\\x92|\\x1fB\\xea!\\x7f\\xd8\\x8f2\\xc1'J#\\xe0\\x88\\x8e\\xb5\\x94[\\xbd.}wOo\\xf5*\\x10\\xc0\\xe2\\xf5\\xad^\\xa6\\x8a\\x1dP1\\x16D\\x0d+\\x8f\\xfd\\xabA\\xed+\\xfb\\xb8\\xcfD%\\x84h\\xb4\\xebP\\xe79)\\xed\\xad\\xb8\\x08\\xa1\\x97\\xa0\\xc7\\xae\\x0c\\xc4\\xcd<\\xa5\\xd0j\\xb3\\xde\\x96\\xbc\\xcc\\xd9W\\xcfD\\x95(Q\\xfdBW\\xd7X^\\x92\\x92ci\\xe9!L\\xeaT\\x14\\xc7\\xc4$N\\xf9T\\xd2S?\\x90\\xf7f\\x8b\\x90R\\x12{[\\xbb\\xc2\\x12\\x83\\xdaEM\\xd1\\x13\\xebV\\x00\\x01\\x1c%\\xcd\\xa8\\x13\\xba\\xc8-\\xc4\\xfd\\xa0\\xec\\xc0\\x87f\\x1fJ\\x85X\\xd86XN\\xe4e\\x06\\xf8%\\xaf\\x8d\\xd6,g\\x8b\\x0f\\xa5\\xfaV\\xe3\\x0e\\xed\\xc6\\x8eH\\x8f^\\x97\\xb4\\xc9*\\xbbV\\xf5 v\\x897\\x98\\xda\\x12#k\\x0b!4n\\x91\\x98\\xa6Qe\\xac.CU\\xf4{\\xef\\xdc\\xba9#\\xe9\\xda\\xf1Lq\\xe4\\x82cK*\\xf2\\x16.8\\x0d\\xc0V\\xf2\\x13\\x8a@s\\x8e\\x03\\xbc\\xd6\\x11~\\xa1\\x14Z\\xe3Z\\xa2\\xad\\x81\\x01\\xf8uG\\x12\\xd0\\x03\\x86\\x13]G\\xc8\\xd4O\\xae\\x1f\\xd4|\\x82\\x9a\\xf0'0\\xf5\\x19Ok=\\xbaT\\x8db\\xc0d\\x9fbNT\\xcf`\\xde\\x00UOz\\x80\tM\\xf4\\xe5\\xc15\\xc3\\xe2Z\\xa1n\\xb0\\xa8 KP_q\\xeei\\x89y\\xbb\\x89\\xaf/S\\xa3\\x19\\x08\\xe3@\\\\6o\\xbd\\xef\\xc2\\x92\\xc2\\xe9!\\x1c@\\x0f\\x19\\x1f\\xd8\\x87^\\xd03c2#\\xc1=\\x8d\\x1eU^\\xdf\\x82\\xe96\\x1c\\x8fE\\xa9\\xfe\\xad\\x01\\xba\\xacn\\xa3\\xd2\\x14\\xffE7\\xa3-YBJ\\x99\\x14\\xaei\\xe1E\\x83gN\\xaf\\xc9Y\\x82\\xd8\\x01N|\\xdbg\\xb2\\xfe\\x06\\xf2\\xf3\\xd4iE\\x97\\x159\\xd4\\x01\\xad\\x8a-VM\\xd9\\xe9\\xd4\\x19?K;n\\xb0\\x00\\\"\\xeb\\x02\\xd7p\\xad\\xe1\\xa0\\xf2\\x08\\xf60?\\\"\\xc3\\x14\\xd8\\xe7\\xf9\\x90\\x1a\\xdbAU\\x03`\\xcdZ\\x1b\\x01\\x84\\x03\\xf0\\\"A\\xe5\\xb09_\\xb4K\\x8b\\xd2\\xb7\\xbcb`b-\\xc8\\x9c\\xba\\x83\\xec]t:\\xa7\\x1d\\xe1&\t\\x93\\xca\\x08\\x95\\x86(;}\\x12\\\\\\x8f0\\xbd\\xa7F\\xbb;\\x98\\x06\\x8d\\xbd\\xb8\\xe3n\\x81Tj2\\\\\\xa7\\xae\\xd0\\xb8|E\\x0c\\xfer\\xb5C\\x82q#\\xddz\\xe4yYx\\xac\\xdc\\xbb\\x18K\\x85\\xe9\\xb2`\\xe8\\xbaJ\\x9djL\\xd4gf\\x0c\\xc8\\x01}?(u\\x7f\\x03\\xad\\xf9\\xd9\\xa9\\x97\\x93\\x9c\\xbe\\n\\xbb\\xa8\\x07\\xf8\\xbeF\\x0f\\x99\\xdd\\x00v\\x06N\\xbdD\\xd9\\xe1rE]l\\x0c\\xa2\\x17\\xf5dR\\xe4\\xf4\\xba\\xe4\\xbe/\\x96\\xb1\\xca\\x8c:\\xf0\\xa2&#\\xa4\\xd3l&I\\x1e\\xd7w~\\xcb|\\x9ex\\xb4T%\\xf1m/\\x04X\\xfeq\\x07\\xbd\\n\\xf6\\xfe\\x83+{*\\xfaw\\xa5R\\xa0P\\xaa\\xaf\\xd4\\xf3K\\x83\\x94-\\x03\\x9eD\\x0d\\x1d\\xf1nc]\\xf1{\\x917\\xc1+\\xeb\\x94\\xf3J\\xe2lW\\xaa9\\x8f\\x9d\\xa46E\\xe6\\xd2\\xb3\\xbb\\xf2\\xb2\\x94R\\xc1\\xb3@5\\xb7\\x19*\\xe4]\\xaa\\xe7\\xad\\xcb\\xea\\x91/y\\xb8\\xe8\\\"l\\x9d\\xd1\\x82l8\\xb5/\\xb2f:l5\\xd5\\xe1T\\xbf\\xb6\\x18\\xa8\\xd5?\\xc6ty\\x95\\xe2L\\x94\\x96\\xf7\\xed\\x9cb\\xb5z\\xeb\\xcf\\xb1_S\\xb5Z\\xcf<R\\xa9j\\xd0\\xe6;V\\xfb\\x98j\\xf3\\x80\\xca\\xeb\\xd2\\x91\\xdf\\xe3\\xbb\\xf4M\\xd2q\\xbf\\x0b\\xf1\\x03wx\\xa7\\xd3\\xa5\\x10Y\\xbas\\x16\\x86j\\x91-<w\\xec&]\\x96\\xc2e\\\\\\x17.Y\\xdf\\xa3(\\x80xl\\x150\\x9dX+6\\xfd\\x97\\xc4\\x95\\xb8U\\xbc\\xd1\\xbb\\x08{\\xa8\\x1a\\x8b\\xb5\\xa5v\\xf5c\\xaa\\x9d\\x91-+\\xa2\\x82\\\\\\xcf\\xea\\xe1h\\x8bf\\xba\\x8c\\xa2#r8\\x0e\\xa5\\x04\\\\\\xd7\\xf1\\xb8\\xaf\\x96\\xe3P^\\x12\\xb1\\x82n\\xa3H;3/\\x08\\xfa?\\xdc\\x9a_\\x84\\xf4\\xf5\\x95\\xa51\\xd75\\x02e\\x13\\xff\\xa6w\\xb9\\x93W\\x9d\\xb6U5\\xf5m\\x1bYi!\\xd5\\x9c\\xb5\\xb6\\xe3P\\xd5\\xc4\\xea\\xb7xg\\xc9S\\xb4\\xd8\\xe1,, \\xfb\\xab\\\"%\\xb8\\x8a\\x08\\xeaQ\\xe2\\x8e1\\xec\\xb4{\\xd6\\xc1\\x0cY-\\x98\\xe7\\x80-%J\\xaa\\xf2\\xaeK\\xf1\\xf1)\\xd6\\xd56\\xe9S\\x83\\xc2O\\xd6m'\\x9d\\x12z\\x14;\\x0e]Wn\\x9a\\xfb\\x03c\\xa1MYa:\\xaaT\\x98n\\xcd\\xb6\\x9c`\\\\\\x90CVd\\x0f}\\x1a\\xb1Z:\\xc6-\\xc9\\xa4\\xc4I\\x00K\\xc6J/}\\x14\\x13\\x96e\\x9eZ=\\x88l\\xcb\\xe2tZ\\x9d\\xa6I\\xbe\\xfa+Xq7\\x1b\\x9e'\\xb2\\xdd\\x1d\\xf1*\\xd7_\\x11\\xf4N\\x0c\\xbc\\x96so\\xd3\\xb9\\xb0+jr\\xee\\xec3\\xce\\xb9\\xb7\\xefk\\xf5\\x12\\xe0A\\xab!\\xda\\xafFc\\x1fc\\x180g\\xf9(\\x0f \\x19\\xc3>$\\x0e\\xc6A\\x0b\\x1d3\\xc3@\\xa2\\xa0\\x1b\\x05\\x8e\\xaa\\x94\\xb7\\xd5\\xfc\\xa4P\\xb0\\x00\\x12OG\\\"\\xe5e\\x18\\x7fgQc\\x1ev\\x913\\x90\\x0e\\x89\\x84\\xcbK\\x1eC\\xb0t\\xec\\xe5\\xa8\\x0b\\x0d\\x97\\xfdp\\xaf\\xd1.=E\\xd9\\xfb\\xfc\\xc4\\xb1\\xc0g!\\x03\\x0eM>aE\\xa5\\x14nu\\xe6<\\xba\\xa2\\x13r[\\xda\\xe2<.\\x12\\xe3t\\xc8\\xa7\\xa5\\x9f\\xe2\\x8a\\xf1B]&\\xe9\\xd9f)`\\xa6\\xcc\\xd2/n\\xba\\x9fj\\x9f\\xc9\\xfa\\xed\\xac\\xc3\\x90\\x8aC\\x8d1s\\x9d y\\x0dFB\\x1eq\\xee~\\xc4W\\xb42lW?mH\\xa9.\\xdd.\\xba\\xab\\xd1\\x1a%\\xbf\\xfa\\xc8\\xcf\\xba\\xf7\\xf7\\xf2*\\xebb\\xe0\\xbdq\\x8d\\xb5\\xb9\\xac\\x9a}/\\xc3\\x8b\\x0e\\xbd\\xbe$\\x9dT\\x18\\xcb\\xf0\\xa2\\xeb\\x99\\xfa\\xb2\\x92\\x8f\\xc8\\xa9\\x137\\xa3Yc\\x06p\\x00ob\\xee\\xc2\\xf2\\xd5MPZF\\xf1\\xd5\\xa7\\xc3\\xbb#\\xbc;\\xd7\\xb9\\xa5\\xa43&jC\\x1eA\\xdf|\\xf69Zu\\x80\\x9d\\xd2\\xfe\\xeb\\x90\\xce\\xfb\\xcb\\xf0\\xc23T$6tV\\x17\\xbe]\\xa5\\x04\\xc3\\x1ecMzT\\xb9\\xe3<\\x90_\\xe7\\xd1\\xa2\\xa3\\x99\\xa1\\x18\\xcc\\xefW4l|\\x8eV\\x1fc\\x1a-\\xbau\\xcb\\x81.\\x87\\xdcM\\x05\\xc5\\x13\\x82u\\xeb\\xafi\\xe5\\xd0d\\x06\\x03}\\x7f4\\xfcL:,/\\xad\\x18 \\xae\\x80R\\xac\\xbfkF)\\xd6dw\\x94b_}\\x0bJ]E\\x92\\xf8\\x87\\x13w\\xab\\x940\\xfa\\x18\\xa3\\x9a\\xb7\\x92\\xbc\\x0d#+[\\x18^\\xc9NS\\xa3vY^L\\xa4\\x8b\\xaa\\xb1yJ\\x81\\x96J\\x18\\x08vlo\\xedL\\xd4\\xf3o)\\xfb_0n\\x1a\\xc1\\x87\\xa2J$l\\x9b\\xa1\\xd2L)\\xfd\\x14\\xdf\\xde\\xbc\t\\xdb\\xdb9\\n\\xa9\\xa2AC\\xa1ry]\\xfa\\x01\\xe4\\xc67.\\x03P\\xcb \\xfd\\x17\\xadJ\\x92vY\\x16Z\\xf1\\xc6b\\xdf\\xd9\\xe5Zv\\x85\\x16\\x8f\\x12y\\x89q:FY\\xaa\\x17\\xfaN\\x85\\xc5L\\xdb?\\x00\\xf7\\x88G\\xf5\\xb2F?\\xaa\\x97!VB\\xbd\\xa4\\xe9&o-N%/\\xae\\xc3\\xaf\\x14\\xa9\\xb2x\\xa9\\xcaKF4R\\x11\\xc3\\xdb\\xfa\\x01\\xbb2\\xe1\\xac\\xea\\xf6\\xf6\\x04\\xdf\\x1e\\xb4\\xb8\\xb6\\x82n\\xafM\\x02\\xc8P\\xe3y\\xc0H\\xdbp\\x08\\xef\\x84\\x98\\xf3\\x9cad\\x86/\\xf04\\x7f\\xa1\\xf0\\x0c\\xf9/X\\xdc6\\\"`\\xa5\\x00\\xda\\x87\\xdd5\\xaf\\xec\\xe0\\xb9*SQ\\x1cZ\\xdd\\x98\\n\\x19C\\xd0\\x91/\\xed.\\x86\\xcd\\xc3l\\xfe4\\x99vpt\\xa1\\xf32\\xbb\\x00\\xd6e\\x9a\\xab\\xd9\\x06\\xday\\x04(\\xb6\\x17wP\\x1e\\x0ea\\x00\\xb7`\\xb7\\xd8h\\x16\\xd2%\\xcd\\xa4\\xb3V\\x05\\x9f\\x9b+\\x7f*\\x8a\\xdf\\x0e\\xf4Uo\\x8b\\xd7\\xf8\\xc0\\x9c\\x16\\xbf\\xf6\\x0d\\x1b\\xed{\\x14\\xd2o\\xdf\\xb9\\xbd\\xf7`p\\xff\\xf6\\xdd\\xdb~P\\xdc\\x86G\\x8f`p\\x176@\\xe0\\xf1\\xe3\\xc7\\xb03\\xb8\\x1b\\xc0\\x9d{\\x83\\xfbw\\xee>\\xd8\\xfd\\xbe\\xfe\\xdem\\xe5\\xbd\\xdb\\x01\\xdc-\\x9fc:w\\x8f\\xc06\\xdc\\xbe\\x7f\\xef\\xce\\xde\\x83\\xbd\\xc1\\x83{\\xb0a0\\xfd\\x17\\xdb\\xd2\\xff\\x12\\x9f\\x0d\\xee\\x05\\xb0\\xb7w\\xe7\\xde\\xfd\\xbd\\xbd\\xbbE\\xf3\\x87\\xe2s\\xec\\xa6x\\xf3v\\x00\\xb7\\xf7\\xee\\xdd\\xbbs\\xff\\xc1\\x83\\xdd\\x07\\xbe\\xda\\x84e\\xcby*\\x7f\\x10c\\xad\\xcb\\x83\\x8eP\\x83!\\xdc\\x1e\\xc0w\\x90\\xc26<\\x8f\\xbd'\\x147\\xcd\\x13\\xea\\x11\\xdfg32w\\x0e\\x8e\\xbbS^\\\\+~\\x85^\\xaa\\x93r\\xe9\\xa6\\x98\\x11v\\xd4\\xdaA\\xb7\\xc6\\x1d\\xdb\\xf5\\xb5\\xe5\\xac\\xa1 \\x88:RX\\xb9SW\\x06\\xb3\\xbd\\xf8\\x9a''Sr\\x01\\xa8o\\xbc\\x8eG\\x0b\\x19\\xe0\\xfd:\\x1e=c\\x7f\\xbf\\x16&\\x8b\\x8c\\xdd\\x12\\xa1\\xa3\\xfc\\xb6\\x08\\xac.\\xee\\xab\\x81C0\\x84W1>\\x89\\xe2l\\xc5s\\xe3\\xe3'\\xef\\x93<\\xad\\xe6\\x95\\xd1\\x81\\xac\\xa6D\\x12\\xee\\xad\\xd5\\xd9a\\xeb\\x93y\\x18\\xc5\\xbcma\\xcb\\xe4\\xb7\\x93\\x98\\x86\\x11F\\xa5\\xe3\\x10\\xb8\\xee\\x12c\\xc4S\\xdd)9[D\\x1dB#\\x0b\\x01\\xe5+1\\xae\\x84N\\xed\\xb3:l\\xb8\\xf7\\xbbZ\\xff\\xcdT15\\xcb\\x02V\\xe1\\xae\\x93a\\xb5\\x90&\\xa4\\x93\\xc4(\t \\x1a\\x9b\\x8bO\\x03p\\xa3\\xaab\\x93t\\x14\\x1a\\x97\\xe1\\xeae\\xd5\\x07\\xd9\\x15FW\\x00\\x02[\\xf7:,\\xda\\xc4\\x8c\\x06,x4\\x82\\x05\\x08\\xd8\\xc9Uv\\xeb\\x87\\x18\\x93\\x9b\\xb4f\\xeexj\\x06\\x92<\\xd5\\xaa}\\x19\\xda\\xf9\\xb9\\xb5\\x9d\\x11\t\\x80\\x8e\\x9d\\x1a{g \\x87\\xf5\\xb3\\xb9e\\xb3mQ\\x97d\\\\\\xd0\\x84\\xa7aXo\\xaegX;\\xd7<\\xacW\\xf6a\\xf52\\xa4\\x81\\x15\\xe3\\x07\\x1c\\xc0O\\xef\\xdf\\xbe\\xe9\\xf3G\\xd1l\\xcd\\xd5\\xb6\\x82Z:\\xe6\\x16}f%\\xc0\\x87\\xc6L\\x9e\\x86\\xe6\\xbe\\xb6b\\x10\\x85G\\x05\\x07G\\xe11\\xfe\\xbd\\x83\\xec\\x9cS\\x07\\xcf\\x1d:`\\xac\\xcf6\\xec\\xdd\\xbb{\\xe7\\xce\\xed\\xbb\\xdf\\xdf{\\x00\\xdb\\xe0Q\\xc6\\x90\\xdd\\xf3\\xf9\\x9f\\x8f\\x1f\\xc3^\\xf3\\xf4\\xad.\\x94h\\xedC<Z\\xc9#\\xf1Cy$\\x8a@-v\\xafv&\\xf2\\xf4\\x02\\xc5\\x83\\xda\\xa1\\xd8J\\xd4D\\xb7\\xb5\\x85%\\x18}\\xbb\\x8f\\xe1\\xb7\\x88)\\xd5\\x81\\xe3\\xc1\\x16\\xe9\\x93\\x9f|k\\xfa\\x067\\x9d\\xf9\\xb5\\x06N\\x0d\\xdcN\\x8aY\\x14OQzr\\xec\\xf6\\x1b\\xbc\\xe9\\x0e\\xd0\\x99\\x0e\\xf6a\\xa7\\xe9\\xff\\xa73s\\xb2Q\\xb9\\x19\\xae\\xce\\xd4\\xf4\\x99\\xd2De\\x1d\\x8d\\x92f\\xb8\\xd8;N\\xae\\x9e\\x8b0\\xa3GW\\x1cYa\\x8c\\xfb\\xd3Fw\\x1d\\xf1\\x1b\\x8e\\x88s\\x9d\\xf1\\x1b\\xae]\\xae:\\xf4)\\x11\\xb5\\x1eVdvbf\\xebTZ\\n\\x98\\xd4\\xc9\\x83j\\xf9B`\\xda\\xab=\\xf1\\xe7\\xcd\\x9b\\xb0\\xd5\\x96\\xef\\x95]\\xb4\\xc8\\xce\\x08\\x8f`W:\\xf7\\xa3s~\\x99\\\"\\xa2%(\\xb4L\\xaa(\\xcd\\x19-\\xd8S\\x80y F{\\x00)\\xecC*C\\xf7\\x0f\\xd5\\x08\\xe0=\\xe9\\xd0\\xc0[\\xc7\\x1c\\x07\\x8eA\\xc1\\xd2\\xb9\\xf3\\x9b\\xc8G\\xe1\\xad\\xfag\\x90\\x90\\xab8~\\xf2j\\xf6N\\xad_\\x93k\\xa2#\\xf6wv\\x1a\\xac\\xa5\\xd7\\xf6\\x11\\x05e)\\xba\\xaa\\x16J\\xc9\\xbc^\\x8d\\xa6\\xb9y\\x13\\xf9\\x8b\\xf2\\xc6\\x01O\\x811\\xbf\\xaa?\\xa2\\xa8\\xaa\\xad}\\xad\\xb3;b7\\xe7\\xa5\\x06<\\x1e\\x0fa\\x17sP\\x18\\x02\\x89\\x0c\\x80b{\\xb9|\\xc4p\\xb1\\xfcR\\x1cZ\\x8dj\\x8a`:\\xe3(IWI\\xd6\\xc5\\xb4y\\xf5$\\x1fnf\\xbd\\xb2\\xc4@\\x81\\x02{\\xf0\\x9d\\xfc\\xb5\\x03\\x03^`\\xc0b\\xf93\\xa5>T\\xaf\\xc2h`\\x95\\xcb\\xe5\\x95|\\xb3\\xad\\xaeu@J\\x1b\\xdeV\\x82\\xa5\\x00\\xf8\\xba\\xf2\\xd0R&\\xa2G\\xbe\\xaf$-\\xc5f\\xc5}k\\xcb\\x97\\xac\\xf7\\xc0\\x96GC\\x85\\xa8\\xdel\\xe7\\x0c\\xd2\\x80[\\xee*1~\\xd8\\x7f\\xeb\\xe4\\xdd\\xed\\xa1W\\xb0\\x9f\\x15\\x90\\x8d\\x18ds\\xf8\\x1f&;\\xb0\\xad\\xc7p \\xa9\\xb8\\x00c\\xcc\\xef>\\x7f\\x07\\x0e\\xe09\\x9b{\\xce\\xd3\\x91\\xa2\\xd5F\\xfe\\x8cd\\xca\\xd86\\xf0[\\xad%\\x86T\\xe5%\\x95p\\xde\\xc6\\x0b\\x12\\x9e\\xb9p^\\xd2,7b]\\x8c5\\x87\\xb2oY,\\xb6/op\\x02 \\xf5/\\x01\\xdc\\xe8'3t\\xa65~\\xc6\\xf3\\x93(\\xde\\xf9\\xd6s\\x96\\x14\\x1b\\xdf+\\x88\\x81\\xb8\\xc7\\xe8\\x80\\xc8H\\x13\\x94\\x94\\xc8\\xcd\\xc7\\xa9\\xab\\xcb\\xdd\\x92z\\xbbj\\xcaj\\x97>\\xae\\xe0_\\xc7\\x0e|\\xc7\\x08\\xd5\\xebv\\xefq<\\xf9\\xbf^I\\xafzC\\xfe\\xf1,\\x0el\\xc8\\xe6<\\x86_#:w9\\xa7\\xa4\\xcc\\xa3\\xf6b\\xc77\\xc6\\xd3\\xc9\\x00\\x81\\xe6\\xf8M&\\xcb\\xca\\x9dK\\x9fQ\\x842=\\xec\\\\\\xea\\x1b\\xd4\\x9bE\\xdd\\x96#t\\\\o\\x0e\\xbf3\\x8f\\x85\\x18\\xc4kA\\x0b\\xb3\\xb2\\x93\\x9cv\\xd5|:\\x9a\\xaa\\xd3p=\\x9b\\x0d\\x9b/s\\xb89@;Q\\xf2l\\xf3\\x12\\xda\\x15+\\x81\\xfaX\\xb1$\\xa8\\xb7+&\\x85\\x17\\x81\\xaa\\xa4\\xf5\\xf1\\xde\\x8d\\xca\\xf2\\xf1{?V\\x9a\\xe6\\xf7N\\xa8\\xe6\\xe3s\\xaa\\xf9\\xfa\\x82\\xd6?oBE\\xe6\\x97\\xdb\\x87\\xb8\tW\\x04\\xea\\xcb\\xe6\\xfd\\xa7\\xc9bA\\x10\\xd2\\xfbp\\xac)\\x90\\x81\\x01b_5\\x0f\\xd4\\xb4\\x92G\\x1a\\xe7\t\\x9e\\x97o\\xa5y\\\"R\\x05^hGI\\xf7!\\xd3<P\\xb3J\\xae5\\xcf\\xdf\\x91I\\x92N\\xf7!\\xd5=\\x0b\\xe3S\\xb2\\x0fK\\xcd$\\xde\\x91\\x15\tY\\x93\\x9agQ\\xb6\\x0fS\\xcd\\xfdY\\x9a,\\x7fz\\xbf\\x0f\\x0bS\\xba\\xe4\\xcb\\x00h\\x9f\\\\\\xac\\x92\\x94f\\x98$\\x8ec\\xe5\\xa5\\xdd\\xa7\\xcd\\xe2I.\\xf9\\xe0^\\x82\\xeaEU\\x0f\\x8c\\xa7\\x1d\\xff_\\x9f+\\x1f\\x91\\xe7\\x17\\x7f\\xb2\\xdbU\\n\\xa6\\x0e\\xacd!.\\xfd2\\x00\\xd6\\x1bH\\xea\\xde2\\xe0\\\"2\\xd7\\xbb}\\xe7{\\xdf\\xeb\\xd1\\xe4\\xe3jE\\xd2\\xa7aFz\\n\\xdd\\xac\\x80B\\xdbn\\xbdQ6\\xd5w\\xe4\\xf4\\xf0b\\xe5\\xf5F\\x9f>\\xe5{\\xbb\\xbb\\xd3O\\x9f\\xf2\\xe9\\xfd\\xdd\\xdd\\x1d\\xf6\\xefl6\\xfb\\xf4)\\xdf\\xbd\\xcd\\x7f\\xee\\xde\\xbe\\xc7~\\xce\\xc8\\x1e\\xfe\\x9c\\x91\\xbd\\x19~3\\xc5\\x9f{\\xbb3\\xfet\\x97\\xf0\\x7ffc\\xd3\\xe0\\xcc\\x14\\xad\\x100(\\xc9\\xa8J\\xc7.\\xbb\\xc1i\\xb0\\xfb\\xa0\\xc6\\xeb0.\\xb2wx\\xb1\\\"\\x13J\\xa6\\x10\\x16\\xed\\xf4\\x14c\\x8f\\xbc\\x07\\x89\\x96\\xb0G3\\xf0\\x94\\xf8\\x88-\\xc5D\\xb0\\xd9\\xc8\\xecA\\x1cE\\xb4\\xaf\\x11\\x1f\\xe8<M\\xce\\x91;\\xfe\\xb0^\\x91\\xc34M\\xd2F\\xea\\xbb\\xb3z\\xb2s\\x1d].\\\"\\xba\\n=M\\xe3\\x15\\x10\\xb3F\\x89\\xbcbEI1\\xa9\\x8d\\xd1\\xb5\\x8a\\x07\\xd0\\xa1\\x84\\xd1<\\x9419 \\x9e2\\x91\\x92\\x00\\x10Y$\\x9d\\xef^\\xe9\\xafW\\x1d@\\xf3\\xcdb\\xe9\\xb1c<\\x072\\xd6(F\\x8fm6\\x18\\x0fV%\\x03\\x0f\\xf5\\xa8#\\xbf\\x8f\\xc9\\xb9\\x97\\xf4\\x9f\\xe2\\xaf\\xcd\\x06\\x05\\xac\\xb8\\x86O\\xec\\x92\\xaf\\xf0\\x8a!\\n\\x96&\\xddP\\xee\\xce}\\x0d\\xc6\\xc5\\xde\\xdd\\xdd\\xdam\\x06\\xdd\\xde\\x88\\xd3\\x17x\\x92\\xad\\xe3\\xc9s\\xd1\\xfe\\xb8\\x96\\x0d+W\\xdf4\\xbd\\x14\\xaa/\\xbd 1\\x97\\xe8Log\\xea\\xdb?\\xa7\\xc9\\xc5z\\xdc\\xeb\\xbaG\\xd1\\xd1\\x11kZI\\x98o\\x0d\\x9a\\x18LD\\xd2N\\xed\\\"\\x11FWs\\xb6*\\xf8WX\\xfc\\x95\\x14\\x7fe-[_G\\xca\\xe4\\xac5\\xa5\\xef\\xae2I\\xb9\\xa3\\xb5|\\x17M\\xd7vv)\\x16eq4\\x8c\\x12LB:\\x99\\x03\\xf6\\xda\\x8c\\x1emm\\x19\\xb3\\xcbj2\\xdb\\x9a\\x9b\\xd5\\x9a\\xdc\\x94&:R\\xd7\\xef\\xf7\\xb4\\xa8~\\xfb\\xfe\\xf7\\x1a\\\\g\\xf7\\xeb[#\\x17\\xf7\\xebD:\\xe4\\xf7\\x1f\\xd4\\xf7L&\\xee\\x0f|\\x1d\\xb5\\x9e4\\x97\\xafbT9>\\x9e\\x864<>\\x16\\xd9F\\x9bX\\xa9h\\xf1\\x84\\x14[\\x83\\x0c\\xbb&\\x9a\\x1aTQP\\xb9]\\x14\\x82M\\xaa\\xf7yQ\\xc4\\xbcz\\x933\\xc4a\\xf5f\\x86ofUB4\\xe9\\xb6:\\xb7\\x1f\\xe8\\x97\\xe7\\xce\\x83\\x96\\xe3\\x18\\xa8\\xc8\\xcb\\xc1Co\\x1b\\x8e\\xeb\\xca\\xe6\\x15\\xc6\\x0eOT\\xe6\\x04R\\x9c\\x80\\xf2\\xd1V\\xc4\\xb8\\xab\\x9b7\\xd9\\x1f\\xb1\\x8fJay8\\xc6\\xec\\xaf\\x98\\x1dA\\x95\\xfe(\\xeb\\xf2\\xca'\\xfe\\xed\\x07\\xb7\\xb5\\xb3\\x1e|_G>\\x81\\x94\\x0f\\xeei\\x90r\\xd0\\xc4\\xc7\\xbd6\\xd2!k\\xb9pG\\xe1\\x99\\x0e\\x15\\x17\\x98\\xb5\\xf8&\\xe4\\xcd\\x03\\x17\\x0b\\xb2\\xca\\xb2\\x8c\\x8d\\xa7s\\xc4H\\x9dY\\x8a\\x11\\xa8\\x15\\x03\\xe4\\x1c\\x81\\xec-\\xd8?sx\\x0c+;]F\\x9d!\\x0f\\xd0\\xf5\\x9b-bAK\\xfeX\\xa9-6\\xc5%n\\xb6u\\x06C\\xd8\\x194G\\xbd\\xe62t\\xe3\\xfe\\xa9\\x00C\\x08\\x07|'\\x82\\xf4\\x8e\\xae\\xb6\\x8dy\\x01fx\\xfc#\\xa9\\x0f\\x80\\xff \\xbc\\x06\\xe8\\xf6\\xf6\\x19<\\x82\\x956\\x11\\x00\\x1b\\xd6\\x92\\x81ttf\\xe0n\\x8e\\xb1(\\xcc\\x99\\xc6Q\\x9c\\x01 \\xf3\\xb1\\x89\\x13\\x18\\xc2\\x02\\x0e \\xf3\\x8e\\x03X\\x06p\\xc6\\x03\\x91py\\xf7!\\xf3\\x96\\x01\\x1c\\xe3]\\xbe\\xfa3\\x0d?SK\\xe2{b\\x92\\xae\\xd9{'>0\\x018\\x8aM)\\x0b\\x10\\xa2\\x03\\xfd\\xb3\\x93\\x94\\x84\\x9f\\x1bO\\x9a\\xe7\\n\\xeb\\xe8\\xd46\\n\\xb6e;\\xd8\\x0c\\xf0\\x93\\xc4;\\xc5\\xd7n\\xde\\x04oY\\xe6\\x8c\\x9e0\\x08Q\\xb9-f~\\x89K\\xa7<\\x16\\xdf\\x18\\xdel\\xeb\\xd1\\x06\\x050B\\x02\\xb4\\xd0\\xb8\\x04\\xb2\\xc8\\x08Nb\\x89\\x0bt\\x8c\\xfbh\\\"\\x96\\xb6\\x18\\xb8a8\\xdf\\xba \\xda\\x13y&N\\x10t\\xba-~0\\xfc_\\xff\\x9f\\xea\\x876n\\xc8H\\xa5\\xeas\\xa9\\xd4_\\xdb\\x11\t/%\\x11\\xa7\\x98&o\\xbf\\xa0Ml\\xdb\\xc5\\xf0\\x08\\xd2\\x87\\xcd\\x95C\\xd3\\xb8GG\\xf1\\x18\\x01\\xa7r\\x86\\xbbZ\\xfeOI\\xef\\xd4\\x91\\xcc\\xdf\\x19\\xd4y\\x83\\xe2pkRyQ\\x91\\xa98^\\x9b\\xf4\\x1e%\\x19\\xa5\\\\S\\x93\\xfc\\xa3*\\x08\\x9f\\x1de\\x87q\\xbe\\xe4\\x8a\\x9f&{\\x92\\xda\\xad\\x1db\\xe2\\x85\\xb8VE\\x06\\xcf\\xf7\\x85\t\\xde\\xae\\xec\\x13\\xad0\\xe6\\x9bak.X\\xcc\\x00z\\xec\\x0fBz\\xfc\\xc4\\x0d\\x9b\\xf7\\xab\\xfd\\xe9\\x8f\\xb4\\xcce),\\x99\\xf2\\x15\\x06Qch\\x10\\xeb4\\x18h\\x9e%m*\\x97-\\xd2\\x8f\\x93)aB3\\xdek6\\x81\\xab\\x89\\xa2w\\xb3\\x1d\\xca\\x8d\\xd4\\xac\\x1dZiG\\xa3sbk\\x9es\\xe0\\x16\\x90A\\xc1\\xe4\\x00\\xd2\\xfe\\x0f\\xf9lF\\xcaS\\xab\\xf95\\x03\\xa3\\xc7\\x8e\\xb7\\xb0\\x1fe\\xb5\\xb7Q\\x8a\\x8d\\xccJ\\\"E\\xe2\\xa9(\\x89\\xee\\x0f\\xfc\\xc2X\\xdc}\\xdf\\x1b\\x988\\xda?''\\xabp\\xf2\\xf9\\xe7d\\xb1\\x9eE\\x8b\\x05\\x0fY\\xe9O\\xc9*%\\x93Z\\xedG&O0\\x96t\\x15\\xd29k}4\\xc6L\\xf1\\xf3h1MI,\\xbe,~\\xb2\\xe7e\\xb9\\xb4)\\x99E1\\x91\\xfb\\x0bqr\\x91\\x84S2\\xed\\xe9\\x14\\xab\\xa4\\xd8a\\xfbz\\x0e\\xa2K\\xd1\\x19\\xda_4\\x1e7\\x95\\xd4\\xe6qF\\x7f\\xc9\\x18#\\x8716Wk\\x08\\x83J\\x02\\x9b\\xced\\xd4 #\\x0c\\xea\\\\t\\\"\\xee\\xdf\\xd1p\\xcb\\xb8\\xdf\\x92~\\x94\\xb1\\xfd4\\xe5Q\\n\\x95\\x97\\xf8f:\\x80\\xc8\\xcbQ\\xe5\\xa4\\xa7;a\\xb7\\xb1\\xdf\\xdd\\xbd\\xaaZ\\x91\\xf2\\x83\\x8d\\xd1\\x81\\xb4]\\xb9\\xd8\\xbe\\xb74g\\xaa<\\xc9\\xe5;Z\\x87\\x17\\xa9!\\x10\\xfa\\x05\\x91E\\x90\\x8e\\x85;_\\xcd\\xdf\\x84p\\x8f\\x92H\\x16'\\xf4\\xe2\\x9a\\xa9\\xeb\\xf2\\xaaX0\\xb8_\\x97\\x818\\x16|\\x7f\\xbf\\x15\\xc2m\\xec\\xc4.\\xf72\\xf0\\xb8\\x1a\\x88\\x07\\xf1\\x17\\x9cD\\xa1X\\xe1\\xd2\\xe0#H\\x1e\\xfa<\\x85\\xe8(\\xf2\\xc8(\\xde\\xde\\x1e\\xfbc\\xbdv\\x8f\\x7f!\\x082-h\\xebU!\\xa0\\xd7\\xd9\\x0d\\x1a\\xd8.v\\xc1^\\xfd`\\xe3\\x8a\\x8c;\\xdf_\\x05^bJii\\x18\\x8c\\xc4{\\x07\\xc0\\x90a\\x1f\\x12/\\xaf\\xb8\t9M\\xae\\x97g\\x042\\x9aF\\x13\\xaa\\xa8\\xf6*^X\\x0d?\\x11\\xe9j\\x13{\\xdf?\\xa8\\xebF\\x94\\xe9\\x1c7E@&\\xbas\\x98\\xdd\\xfb\\xbe\\xf6\\xe5q\\xff\\x1d\t\\xa7\\x8cN\\xbe\\xa7\\xfc@YV_`\\x80\\xbe\\xeb\\xf7\\x0f\\xcfHL\\x0f\\x97\\x11\\xa5$mv\\x10\\xb6\\x81Q^%\\xd1\\x8f2Jb\\x92b\\xd1M\\x8er\\x8d\\x0ft\\x96{\\xb1%\\xea(\\x01\\\"\\xb88\\xf6\\xee\\xef\\xfa\\x82\\x03h\\xbe1CA\\xfdc\\x14\\xd3\\xfbH\\x07\\xd9\\x9e\\xad\\x9c\\x9f\\xcd\\x99-85\\x1b\\xd4\\xc0\\xb6\\xe8G\\xf1\\x9c\\xa4\\x11\\x15J\\xaf\\xbb\\x1a\\xf3\\xc0\\x8a\\xa3\\xdd\\xdd:\\xb1\\x06\\xa12\\xd0\t\\xd5\\xec\\xfe\\x8am\\x9fU\\x7fJN\\xf2\\xd3Er\\n\\x07\\xca\\x0f\\xaf\\x97\\xd1\\x94\\x84\\xcb\\x9e\\x0f\\xfbmC\\x9f\\x06(\\xfb\\xb3!\\xd4w\\n\\x08\\xe1\\x88\\x81\\xb2\\x8eK\\xe5\\xd4\\x98X]7\\xf9\\xb3\\x86O\\x19\\xf7\\xd0#i\\x9a\\xa4=\\xc6\\xbd.\\x92\\x8c\\xb0?\\xa6$\\xa3i\\xb2f\\x7f\\xae\\xc2\\x9c\\xdfKI\\x96/Iol\\x8a\\xd6Y\\x1a\\xd1%\\x01\\xa1i\\x8e\\xbd\\xbd\\x81\\xa8a\\x81b\\xab\\xae\\xbe\\xa0$\\x16\\x04\\xa28\\xa3a<a\\x1ce\\xd2|\\x0f\\x95\\x88\\x9c\\xf7|\\x9dL\\x19\\xbaomQ\\xe5F\\xc0S\\x0dz\\xcd\\xf7\\xeaw6\\x1b\\xfc4\\x15\\xbb\\xe7m\\xf1\\xc4`_\\xe1\\x91\\xf5\\xf3\\xe8t\\xfekHI\\xfa:L?\\xebU\\x1f\\xdc\\x10#\\xdb\\xfd\\xb1\\xfd\\x83P3\\xba\\x03\\x18\\xdc\\x83}\\x18\\xdc\\xbb}\\xff\\x8e\\x01\\n\\x95\\xa1\\xc0\\x10\\xd0\\xa3K\\xd4\\xb8\\x12\\xbe[\\x1c\\x16y\\xf9 gd/\\x87}\\x08\\x03}#\\xe8w=[$I\\xea5\\x9fK\\x17\\xe5\\x13\\xcersE\\xef\\x99\\xb8)\\x8aE\\x94u\\xfdW\\xd1\\x8adB\\xd6Uo=M\\xf2\\x98*\\xef\\xcd\\x16\\xc9y\\x14\\x9fV\\xdf$\\xf1\\xb4RK\\x9d\\xdd\\xe0\\xd4\\xabr\\x97A\\x99\\x7f[\\xdc\\xca\\xd6\\xf1D)/\\xdf\\x8f\t\\x99J\\x12Yi\\x90\\xb7\\xa6{$\\xd7\\xee\\x15\\xd2\\xb8Z\\xfb|C\\xbc\\x9f\\xcc\\xc94_TG#\\xf6O\\xfd\\xe6,\\xcc\\x17\\xf40\\x9e$b\\xa8\\xb4qo\\xb3\\x81^Ng\\xf7{\\xe2\\x9b\\xf0<\\x8c\\xe8\\xb3\\x94G\\x83\\xeeV\\xe7\\xfa:II\\xb5\\xfdI2%i\\x1d|Eo\\xe2ny\\x8b\\xa1\\xc4\\x14\\xc5\\x89)\\xa7 \\x0f\\x06~\\x9f\\xdbo\\x9e\\xf1\\xb6\\xfcf\\xd3\\xe4\\x1c\\xa6^\\xd9\\x88\\xdf\\xecGyX\\xc1WS\\xec\\xd3\\xb1^\\xf8\\x16e\\xd1*\\x94c\\x0bqQ\\xa5\\x0c\\xc7~%\\xc3\\xf9\\xb1\\xd6\\x9f\\x96\\x9b%\\xd2\\xda\\xf1\\xc8\\xdeG\\xa2\\xc5\\x1e\\xfb\\xb5\\x15\\x97\\x88\\x83@2d\\xe9c\\xef\\x964\\x06\\xdb/v\\xbc\\x1f\\x98r\\xfb\t\\xdcP>\\x94w\\x86\\xe5S\\xdf\\x0f \\x13j\\x85F\\xb6?\\x13 OJ\\xe5\\xb8)\\xdaS\\xe1!h\\x0d\\\"M\\xb0\t\\xdd\\x147i{ym\\x8f9q\t\\xa8\\xaa\\xe2{X\\xae\\x93^\\x89\\xc7_\\x14xfSJ\\x9e\\x15\\xc5\\xdd\\xc4\\xcb\\xacu[*\\x15\\xce\\xc3J\\xaa\\xc4\\xa0N\\x04\\xdd\\xe2\\xaa\\xd1\\xd8\\x0f\\n\\x9d?l\\xb3\\x86\\xab\\xd4\\x17\\xf6\\x8b\\xaf\\x0dJT\\xed]RR\\xae\\xdd\\x00\\x0e\\xb5\\x86I\\x06\\xba\\x1c\\xeb,zH\\xb3\\x11\\xdf\\x9d\\xe0\\x8aP\\xd0\\xcf9\\xe5Uy&\\x85F\\xc4KQ\\x15\\x92\\xaa\\xdbf\\x86\\x94\\xa6\\x19}I\\x94\\xb8\\x83a!\\x0c\\xd5NK\\xcc\\x12\\\\u\\xaa\\xe8\\x1d\\xc5g\\xe1\\\"\\x9aB\\x9c\\xc4;\\xbc\\xd9[\\xe2p\\x98\\xcc\\xf3\\xf8s\\xcf\\xb7\\xc5\\xd3\\x18&\\\"\\xb6\\xb5\\x06n9: \\x06\\\\*A\\x02\\xee\\x15\\\\L\\xc2\\xe0\\x99\\xd7\\x86,\\x1c\\x89\\xc4*?\\xc6\\xc8\\x1f\\xcf4\\xff\\xfa\\xc7e\\xa5\\xf9\\x9f\\xa5j\\xf3\\xed\\xcc#<]\\xb1bND\\xd8\\x10\\xa7\\xe4#bn\\x13\\x0c%\\xd7\\xe3\\x06N0e\\xa7\\xb4z\\xe45\\xe7\\xcb\\x16B,\\x02\\xe7(\\xfby\\x9c\\xcd\\xa3\\x19\\xf5|\\x08g\\x94\\xa4@\\xe2)\\x10\\xc6\\xf5\\xf7\\x10\\xd7\\xce\\x11\\xedd:;\\x04\\x16GU\\x97\\xb6q\\xcb\\xc8\\x86\\x0f\\xdf>\\xe7M6\\x88C^\\x1c\\x19L\\xfa\\x8f\\x19\\xb4\t&>\\x92\\x9b\\xf6<\\x8d\\x84\\xae\\xbd\\x0em!\\x85\\xcb\\xb5:\\xa8\\x8cw\\xc0z{[\\xee\\x9b\\xea3\\x9fW\\x8fb\\xcbP\\x1d\\x90\\x0e\\xfb\\xea\\xaa\\x83\\xb6\\xb5\\xda\\xa2\\x02LH\\xb8\\xab\\xdc\\x04n\\x92\\xa2HV\\x8d9,\\x99.j\\xa4#\\x97^\\xeeF\\xe3\\xcf\\x15\\x1a\\xaf\\x1b0)\\xb8\\xa8\\x9b7\\xe5\\x1eVh\\xdf\\x16\\xe1l\\xd1\\x01\\x9b\\x02_\\xebiHC\\xb6\\xd4\\xa8\\xf7b@\\xf3v\\xf9\\x9a:\\x12E\\x8e\\xa4\\x05M\\x95\\xc8\\x17\\xb36t\\x94\\xb6\\x02\\xb8\\xff?{\\xff\\xbe\\xdc6\\x924\\n\\xe2\\xff\\x7fO\\x91\\xc2o\\xc6\\x03|\\x84h\\x92\\xba\\xd8\\xa6M\\xeb\\x93e\\xb9\\xc7\\xd3\\xed\\xcbH\\xb6\\xbb{\\xd8\\xfa\\xa9!\\xb2H\\xa2\\x05\\x02l\\\\(\\xab\\xc7:\\xd1gw\\xcf^#\\xf6\\x01\\xf6\\x9f=o\\xb0O\\xb0\\xb1\\x11\\xe7MN\\xef\\x03\\xec+lTV\\x15P(T\\x01\\xa0,\\xf7\\xec9\\xdf\\x87\\x88nS\\xa8B]\\xb2\\xb2\\xb22\\xb3\\xf2r\\xef\\x1e\\x92F\\xc7e\\x8bJL\\x9a\\x16\\xfa\\xe85\\x87\\xe7\\xd2}C.\\xb8\\x18\\xd4\\x9d\\x1b\\xa9\\nU\\x17$\\x85\\x7f\\xb8wO\\xf7\\xba\\xe0\\xfc\\xaaK\\xac\\x91\\x81\\xdb\\x05\\x0c6to\\xd7\\xf6OO\\xf86F\\xc3\\xe7%\\x83\\n\\xc1\\x88\\\\\\x8b\\xdf\\xe5\\n\\xe7Y(\\xd7\\xc9\\xffRj\\x15u\\x1a\\x0f3&\\x0d vdA@\\x11D\\xe3\\x06.7N\\xeb\\xb6ix]\\x8es\\xdf\\xc8\\xec\\x08\\xf5P\\x19\\xd1C\\x91\\xebN\\x1b\\xa9\\x80.\\x02\\xd25f\\xf1\\xa6r\\xf3,Hv\\\\f\\xb8\\xa9\\xc0#\\xc8>\\xbbl'\\x98\\x99\\xd1qyg\\x8eK\\x19\\xb9\\x92SB\\xc5\\x9fC\\x81\t\\xdfs\\x8d'\\x0f\\x9f\\xa3\\xd4<\\x93\t(\\x87\\xa2z\\xc4+]\\xf8\\xc9[/K\\xca.P5]l\\xf5\\x8b\\x94_\\n\\x86r\\xfaT\\xd7YBd)\\xa9\\xd5\\x9c\\xda\\xc91\\x95\\xcd\\xa2\\x885\\x86z\\xb2p\\xc3j\\x94G_U\\xac|\\x84\\x11<\\xdcy\\xf8p\\xbf\\xf7\\xd0\\xa4/95\\xa2n\\xae>\\x7f2b\\xfe\\x8dU:N\\xf2#\\xbb\\x87d\\xb6B\\x9dS\\xa6\\xf0=(\\x1f\\x08\\xd2\\xa9\\x9a\\x93\\xe6\\x05\\xf1\\xa6]z\\x08\\x88\\xb2aQm\\x88a%\\x80(\\x07\\x1ac\\xa2U\\x8dA3!\\xcb'\\xf6t\\x04\\x1fQ\tK\\xff\\xa5\\x9dloSY\\xeb\\x13\\x1d2F\\xf7*\\xfd5(\\xfd\\xb5[\\xfa\\xeba\\xf9\\xbb}\\x17\\xd2NG\\x9bk\\xe0\\x86\\x9d3\\x08U\t\\x0e\\xe8!\\x92CS\\x9e9\\xa9h\\x0cz\\x98\\x9f\\xb9\\xd59}\\xac\\x87Bn(\\xd7H\\x8f\\xaa\\xbd\\xf7\\xe9\\xe9\\xa9*+(\\xd6/l\\x8b\\xbe\\x16\\xef,\\xb7XtG\\xf7\\x0d\\x9bI\\xce\t\\xb0|\\x1f\\xef\\xfc\\xc9\\xa5}\\xc8#/\\x1eV\\xdceM\\xf3<\\xd4\\xcf\\x93\\x0f\t\\xc4$-\\xe4.\\x18\\xc3!\\xbf{\\xd56\\xa0\\xcb\\x1b\\xe3n!%}\\x08\\xb2\\xe0\\xaa\\x86\\x04\\x9d\\x8e\\xf2I\\xfe\\xa4u`2u\\xfc\\x93\\xb1\\xe3\\xd2\\x05Ln5FY,\\xc1z2\\x86K\\xda\\x7f[\\xa4\\xe0!I\\xc10\\xea\\xf6\\xd7\\xc2\\xb6\\x96\\xde\\xf5\\x05\\xa1\\xab\\x86\\xf3@\\xf5B\\xcf\\x92\\xd94\\x17m\\xfb\\x8a\\xce\\x9d\\xc7Ny0\\x0d\\xc0\\x1a\\xa9\\x89\\xbfL@\\xb84\\xaer\\xae/\\xa1\\xe0M\\xfd\\xc9\\xa5n\\x9c\\xad\\xfax\\xd9\\xbc\\xc2\\x02\\xdb\\x99\\xe6M\\xd7\\x13\\xe2\\xbb^1G\\xaa\\xca\\xb4\\x1c!Q\\xb3\\xcd\\xd1\\xd1\\x05u\\xc9\\xa4\\xe5\\xdclJ\\xaf>\\x97\\x08 \\x8a-l\\x8b\\x8e\\xa7\\xb4\\xad\\x1f\\x97\\x07\\x99\\xa7R\\xe6\\xe3s\\x1e+\\x02\\x8fi\\x84\\xef\\x9a\\x0e!\\xe5\\xe89`]!u\\xac0J\\xf9\\x91\\\"\\xc4\\xcf!l\\xa5\\xec6\\xf5i\\xa9\\x0d\\xbb\\xa4\\xc0\\x91\\x0f\\xa3\\x9f\\\"?\\xb4-\\xbc\\x13\\xe9\\xf3\\x9eyI\\xcd\\xc1%\\x0b\\x1a\\xdc\\x9f\\x92\\x14>\\xb1EQ@\\xbc\\xd8F\\xd9&\\xd4X\\x94\\xd6\\xa9Z\\x0c\\x1a\\x8a\\x94\\xed]\\xf5\\x00=\\x00Lu$\\x97H\\x91B\\\\\\xb9@[-u\\xf2,\\xc8\\x1c\\x06\\x9a.\\x88\\x04\\xe5p\\x93\\xf0\\x96\\x05\\xc5\\xa2\\xad\\xea/\\\"\\xc4\\x13Wmt\\xd5\\x07\\xef1qlf\\x15\\\\\\n\\xdb#\\xf0\\x8dDI<\\x88\\xed\\x8f\\x81\\xc5r\\xa4\\xf4\\xa46\\xf7\\x14\\x08uf>\\x80\\xfa\\x81\\x82\\xb8\\x91\\x81\\xa7\\x10\\x15p\\x8c\\x8a\\x13\\xbf!\\xb2\\xb2?\\x03;c\\xd6I\\xc5\\xe7>\\x95\\x8e#\\x18\\xf2\\x1f\\xe5\\x85f\\x9b\\xc7\\xc6\\xe9g\\xb5\\xa6\\x96\\xe2\\xa9\\xb4ow:\\xb1\\xcb\\xc1\\x81\\xab\\xbe`Zf\\xfefX\\xbc!\\xdd\\xd4\\xf3\\x03\\xae\\xe7\\xe7\\x02\\xbc\\xa8\\xecr\\x08A1\\xc4\\xcc\\xa4\\x91\\x93\\x1f\\xb3\\x85\\xa7xn:\\x1d}xc0jFA\\xb2m\\x17\\x13\\xddFw\\xa0\\xaam\\x0e\\x085)q6\\x89\\xab*p|\\xd2\\xf5\\x82 \\x9a\\xbc\\x0f\\x13oF\\xdaE\\xe1m\\xb1+(\\xca\\xd7\\x98\\xc5\\xc6l\\xa7N\\xa2\\xd55\\xaa<p\\xf9cy\\xfb6n\\x01\\x8c\\xa7\\xba\\xd9\\x16\\x88\\x7f\\xaf-\\x10\\xf1\\x99\\xb9\\x85R}\\x9b2T=\\x17\\xb2;\\xc3y\\xdf\\xe5\\xf3\\x97q>\\xde\\x04\\xe7c\\x97\\x83\\xe4\\x8b\\xe0\\xbc\\x1eSaS\\x9c\\xf7k\\xc2]\\xb8M\\xc1\\x974\\xb9\\xee\\xf0+~\\xde\\xb9\\xc5\tK\\x19E\\xc3ev\\xb9{\\x13\\x9bp\\xf4\\xb9\\x8c\\x0c\\xbb\\xde\\xe1\\x13\\x7f\\n=\\xd95\\x93)\\x98\\xffd\\x910\\x17Ql\\xc7\\x024\\xa5\\x9dB\\x14\\xe2\\x9d\\x02Y\\xae\\xd2k`J\\xe8?i\\xe6Bd%9\\x13\\x02\\xe4\\xfb\\x17\\x89\\xfd\\x7f\\xabMrb\\x8c\\x1dj\\xd6\\\\)=rU\\xa1\\x98$\\xb3\\xd2,_V\\xf7\\\\\\xce\\xcbVD:\\x9b\\xce\\xdej9\\xa6\\x93v\\\"I\\x8fk\\xbfr\\xc9\\x84\\xd9\\x93C\\xd8\\xe9\\xe8/\\xb20\\x1a\\xfa8\\xe4vq\\xc5\\xbd\\xaaQY\\xb6\\xadJ\\x0f\\xf2_\\xb2B'f{\\xb2^C\\xc0\\xa5\t\\x8b\\x9d\\x9d)\\x8c`\\xe5\\xc5\ty\\x19\\xa2[J_\\x17\\\"e]\\xf2;+\\xe1\\xa0\\x9e\\x12b\\xa43=z\\xf2\\xf5\\xe3\\xca\\x0d\\x9dQ@N\\xdd\\x98\\xffyE\\x93-a\\xf8\\xa8\\\"\\xd3}\\xfa$\\xd4\\x0c\\xc5\\x8d5\\x9f\\xf1\\x10*\\xe2;k\\xc7\\xcd?qku@G\\xec\\x92\\x18\\x86pl\\xf3\\xcblJ\\x10M\\xf3\\xe4\\x04z$TP\\x8e\\xd4\\x9ac`\\xfc\\xef\\xdd\\x13\\xbd\\x98\\xdaF>\\x99\\xa5\\x13-\\x83\\xc6\\x88>\\x0b\\xdb\\xa2\\xf5\\n%\\x01\\xe6\\x15\\x11#$\\xd2N\\\"\\xd2IS\\x95\\x97q\\xfc\\x0b\\xdb\\xe2u\\x02\\x92$\\x90.\\xbc\\x10\\xaeh\\x8d\\xa5\\x17_Zl\\\\\\xa8\\\\\\x15`\\xc3f\\x85hw \\xd6\\x82\\xfe\\x11\\xe1\\x95\\x19\\xde!\\xf8l\\xe1\\x91\\xbf\\xe3R\\xf94\\xc2\\x01[\\x8e+}_R\\xa9pMQ\\x05\\x80:\\x8dRI\\xe3\\xa8*\\xd5\\x1c\\xb9\\xc9\\xbe\\xab\\x08\\xc2l\\x05C\\\\A\\xbe*lic~\\xc4\\xf7\\xe0 \\x17\\xf0\\x86\\xfc\\x88<0\\xe8\\xb5\\xd0\\x0e\\xc7\\x91u\\x7f\\xdb\\xa8\\xec\\xd4\\xce\\\"\\x07\\xa0aFa\\xb1\\x95$\\x85\\x07\\xc7\\x1f1T\\xd4\\x8d\\xe7\\xd7(\\xa5\\xbb\\xa8\\xb8\\x92w\\\\Q\\x10\\x9f\\xb7\\\"(R\\xc3\\x9a\\x0bM\\x06q\\x07\\xfc\\x04\\xc2(\\x05\\x7f\\xb9\\n\\xc8\\x92\\x84)\\xa9\\xd2a\\xe5\\x06\\xc2_\\x91\\xd67\\x10\\xb5\\x01\\xd5\\xa2\\xb6\\x97\\x13\\xc9\\x95\\x8f\\xae\\xc6\\x91d8eb\\xad&^B\\xa07\\xd4\\x96\\x01:\\xe0\\x0b{\\xac\\x1af\\x0f\\x99 }1\\xb6\\xdfo\\xd3\\xfe\\x98\\xfft!\\xad\\xc9\\x13S\\xd3\\x15\\xbfOi\\xec\\x8b] 5^wI_0\\xd3\\xb3\\x0e\\x95n\\xe9\\xce\\xc7%\\xc5 \\xa0\\xa3?N!Z\\xa5\\xc9\\xe8\\x8f?Yn\\xa9\\xb6\\x9e\\x1f\\xa3\\x8b\\x8c^([\\xcc\\x90\\xb0\\xcf\\x15r$\\x9c\\\"YJ\\xf9\\x1dP\\x92N\\xa3,U\\xde\\x908\\xa6\\x92;\\x0c\\xe1\\\\\\xb9%\\x80\\xb2\\xc3\\xb5\\xce\\x88X<\\x0b\\xdb\\x8a\\xc2,\\xa4\\x03\\xb5\\xd8m\\x92\\x08\\x88\\xca.\\xdf\\x99\\x1e%\\xee.\\xbc\\xe4=\\xd6b7\\xd8\\xa5\\x17\\x8c\\x06,lk\\x12\\x10/\\xccVB\\xa7\\xb6\\x8c\\xd6\\xdc\\xf6\\x8d\\xc4vn\\x1e:\\xd7\\x96\\xce\\xfc\\xd0O\\x16\\x96\\x0bKm\\xf14\\xf6\\xfc\\xd0r!\\xd0\\x96\\x8a\\xfdy\\xad-\\xe5\\xb3saB\\x89G\\xf5\\xe3\\x90\\x92\\xeaYM\\xd9\\xb9\\xb6\\x8cS\\x9b\\xb5\\xe3\\xa2\\x85/\\xde\\x82E\\xb2\\x96\\x10\\xaf\\xf5\\xcf\\xafb?-]\\xbcn\\xa9/\\x91\\x08\\xe6\\x9f\\x04\\xfa\\xa8\\xf8\\xe6\\xf5\\x9d\\x19\\xaf\\xa2qm\\x913d\\x86{\\xd3\\xc68P\\x808^2\\x18\\x91x_\\xe4\\x11\\xc2n\\x14N\\x88\\x00\\x0dZ\\xbeu\\xa3\\xb0\\x04e=\\x9e\\x07\\x8d\\x14\\x174v\\x15Mrz;\\x01B<|\\xb3\\xbe\t\\x9fs|\\x92\\xd5\\xba\\x8e\\xa2\\xe5\\xc5\\xf3\\xa7\\xf8{{\\xbb8\\xcf\\xca\\xb5<J\\xc4\\x19>8\\xfc\\x8c+\\x8cQ1m\\x886~(h\\xc1\\x7fc\\xeb\\x84-\\x06\\xe3b\\x17\\xe8A\\x8cx\\xa8\\xd1-\\xac\\xb9+9-3#\\xd2\\xda\\x9c\\xab\\x171\\x89M\\xd0\\x05\\xa1\\x12\\xe7\\xd4*\\xcd\\xadq(\\xfa\\xb2\\x83\\xdd\\xees\\xa9\\\\\\\"\\x97\\xe8}\\xc4\\x89\\xbb\\xf0<.Ux\\n}Z\\x89\\x87_=\\xb1\\x0b\\xfa\\xcf\\xe3t\\xae\\x04\\x135\\xf3\\x82\\x84\\x00v\\x0b1IVQ\\x98\\x10\\x17\\x84\\xady\\xa8^\\xc0\\x96\\x96\\xb8\\xa6\\xb4\\xd3\\xe1\\x93C.\\xa4\\x8b\\xedm\\xba\\x1b\\xaf\\x1b\\x80(H\\x15q\\\\8\\xb7\\x1b\\xa9\\x19C8\\x86`\\xec=;\\x17\\x14\\xc6D\\x17L\\xb1f\\x90s\\xe3\\xb6j \\xcc\\xe7Z\\nb\\xeehYO\\x9bx\\xdb\\x8d\\xc7\\xc5\\xa6\\xdd\\x9e\\xd7u[\\x1cva\\x97\\xfdnw\\xf6\\x0by\\x96\\xed\\xc4\\x9c\\xf8k\\xbbi{;\\x00P\tT%\\x1b\\xfb\\xaeb\\xb2\\\"\\xe1T\\x00\\xa5\\x08P\\xae\\x96\\xb0h\\xcd5*\\xf4\\xee9\\x9a\\xf0%\\x0cy\\xf8\\x1fcr\\x06\\x07\\x90\\xd9\\xf2\\x0b\\xf4n\\x92\\xfe.[d\\x95>\\x1d\\xc18tK\\xaf\\xce\\xb0\\x8a\\x08\\x1e\\xad'x\\x12*\\x8b\\x03\\x9b\\x1d(e\\xfe\\x80\\xbdS\\xb8\\x02\\x86\\xf4\\xfc\\x9c\t1f\\xa1 \\xb4\\xfcn\\x0fY\\xb1\\xe2F.\\xe4\\xb7y\\xb6S\\xb9\\xd4\\xaf\\x18\\xc1T\\x18\\xf3Z\\x9d\\xd5&*\\x03\\xf3\\xda\\x17L\\xd4P\\xbdL\\x15\\x8f\\xc6\\xc9\\xa5\\x90\\xc3I\\x89\\xa3\\x17\\xd8\\xa1\\x0d_O?\\xea\\xd7|T0\\x97\\xbc\\x9c\\x07\\xccfV\\x1cBb\\xe4exT\\x96\\x1d3H\\xc5+\\xa3t\\n\\xf6\\xb95\\xbcX\\xc4\\x9c]Hy\\xc4YnH\\xaf\\x1f\\xf8Vmp\\xd2\\xb8\\x18\\x98Y\\x83\\xedCy\\xe6\\xfa\\xcd\\xb2\\xe9\\xac\\xf4\\xad\\xe4\\x8a4\\x16\\xe7\\x1a\\\"x\\x02\\xfec\\x88:\\x1d\\x07\\xe2qtf\\x82A\\xad\\xc2\\xb6b8\\x04Z2\\xb5\\xe61\\xdcNlR\\x9c\\x9f5:8D\\x89LZl\\xfeY\\x97eg\\xb03\\x17\\x9d\\x97K\\x80\\xd8F\\xc9\\xa7\\x8aM\\x9c\\xf9\\x11 \\xe4\\xbf\\xc6\\xbd3i\\xf7\\x9a\\x16\\xbensF\\x95\\x1b\\xd7:\\x899)}Y\\xb8Ap\\xc3\\x0d=\\x861\\x8a\\xce8\\x13'gm\\xcc\\x06h\\xb9\\xeaA\\x10\\x18\\x8dRY\\x84,)lVD\\xfb\\xf5\\xb8\\xdcJ\\xa8\\x07\\xbc+*+\\x91c\\x8d\\xcb\\x11\\xdd\\xb9\\xba\\xf7\\xecB\\xa4\\xa2\\xc9\\x89\\x0d\\x0eM\\xb1\\xa4\\xec\\x8a%}\\xceq\\xae<\\x94\\x04\\x85K\\xbe\\xa6\\x9b\\x1c\\xabu\\xeb\\xefM\\xf3\\x93\\x0eF\\nf\\xb8\\x8a\\xaa\\x18m;Z\\xc4cL\\xdb\\x02:?s\\x95\\xa3\\xa68eR\\x85\\xddo\\xc4T\\xe0f)eC\\x13a|T1?)\\xdf@\\xbc4GP.\\xa2\\x9c\\xeb\\xec\\x0c\\x15=\\x14\\xe5n\\x9b\\x00U\\xa8Z\\xe9.b\\x1c6\\xf0\\xc92\\x1dG\\xcd\\x16q\\xdc\\x96\\xfb\\x08\\x0fnd\\xde\\x0d\\x16\\x94\\xca9R(\\xe6\\xf8W-\\xa6{\\x15{\\xab\\x8dN\\xf7\\x9a\\x1b\\x80\\xb6g\\x7fl8\\\"\\xf2\\xe3\\xc1\\x07?\\xe4\\xa2\\x1d\\xd7B4\\x89\\xbd\\x94\\x9c,l\\x8b\\xcefE\\xa6\\xc0\\x85\\xfb\\xb0\\xec/!t\\xf1\\xf5\\x92s\\xca,\\x1f\\xda\\xb9A\\xf1\\xb3[\\xbe>0i\\xcd\\xc0x\\x8dI$S\\xed*\\xf2\\xe6\\x9a\\x04\\xce[\\xe7\\xb00&\\x1e\\x94!!\\x84\\xd3\\x12(l\\xbf4G&\\xa7\\xfa\\x14]\\xb6B\\xc5o$W*\\xa3\\xa6^\\xb2\\xde\\xf7\\x99Ho\\xab\\x1f`=a\\x95\\\"\\xc4~\\x9c\\x9f\\xef0\\xa2+t\\xe3\\xb9 \\xa9\\xdb\\xb2\\x0e\\xdaLJ>S\\x14\\xbb\\xc6\\xfe\\x19\\x94\\xe3\\xd2JR\\x01/\\xb4EE\t\\xa9\\x9b\\xdc\\xed\\x1b\\xd1K\\xaa\\x9bR\\xe6\\x9f\\x87\\x81\\xadM\\xe5\\x07\\x065\\x86\\xaf\\xbb.\\xd7qF\\xf3\\xfc\\x8a\\x11\\x19$D\\x82\\xf98:\\x93vz\\xf7\\xc2\\x0f\\xa7\\x9c\\xba\\xd1\\xa2\\x1a\\x8f\\x9cT\\xf6\\xa6l\\x86\\x8c\\x84B\\xe7\\xfc\\xfe\\x908\\xc2\\xfb;\\x16\\x14\\xa7\\x10#\\xaa\\x13\\xd5\\xd3\\x9e6\\xee&\\x82\\x84\\x94|\\xbb\\x9b\\xa3\\xd8hL\\xaa6rM\\xd1Q\\xd8\\xd2\\xc5Qu\\x8e\\xe5\\xd9\\xa1\\xdf\\xc7\\xf9,\\x8e\\x96\\xf4T\\x86\\x11\\xbc\\xfb\\xa7\\xa2\\xac\\x1c1\\xdb\\xc50\\xd8\\xed\\x02g\\x97bpW\\xa3M\\xb4iB\\x1fNc]\\x84\\xbaz\\xa4\\x8dI\\xeakO\\xea\\x1a%\\xcb\\x8dv\\xd0\\xe5\\xcf\\xb9\\x1bK\\x0b\\xbb\\xa3[_\\xf5@\\x93\\x1bQMd\\x01\\xfc\\xac\\xa2\\x9c\\xd6\\xbc.Z3\\xee9t\\xb2\\xce\\x98\\x9b\\xde\\x01\\xfa\\xe0\\x14\\xc6\\x9b\\xed\\xfbA8\\x97\\xb8\\xd9\\x9c\\xe7\\xf1\\x85\\xb8 |,\\xd0Z\\xc7\\x00\\x91F\\xcf&\\xe9\\xde\\xb420\\xbb\\x16\\x02\\xe5\\x8f\\xf9k;\\x8f(\\xee\\xb6Ppo\\xf1$\\\\\\x07\\x94-\\x97'\\x18\\xb2\\xd9\\x85\\xbaA\\xa9/\\xcb\\xb0\\xc2A\\xe1\\xed+\\x9e\\xccZu\\x96A\\xcc*\\xfd\\x99;d5\\xd0\\x92[\\xc3\\xbd\\xafg\\xef\\xe2j\\xf4\\x85\\x8a\\x0b\\xcd\\xb4\\xb6\\x05%\\xaa\\xc3\\xe7,o_\\xfb\\xadf\\x04\\x95ru\\n\\xe5\\nL\\x95U\\xdf\\x86\\xb2\\xa8\\xaaO\\x95B~>?\\xf6\\x9f\\xec\\xa4\\xc8\\xb0\\x12#H\\x84\\xec\\xd4\\x9a\\xca\\xe1\\xf0\\x13\\x12\\xcch\\x15\\xfc\\xf7\\xd3'\\xb8\\xf2\\xc3itU\\xa5/\\xbe>\\xb272\\x12&_&}\\x00\\x7f\\xc81\\xcd\\x9f\\x16\\xaeS\\xdds4\\xc4~\\x816\\xc8\\x06\\xf0\\x00\\xf2\\x9a\tI\\xdf\\xf9K\\x12eiK)'$W\\x10\\xd9>;\\xc0\\x8a\\xaf1\\x1cB\\xc1\\xff\\xb8\\x80\\x03\\xe0\\x85\\x15\\xb5\\x05\\xf6\\xfb2LI\\xbc\\xf6\\x82[v,>\\xd7\\xf7,J5]\\xcb#C\\xfdK\\xe9\\x83F\\xf1\\x873\\xf9\\xa8\\x88\\xad&\\x96\\x8fJ\\xda\\xd2\\x98\\xcc\\x94\\xec/\\xec\\x8d<_\\xe5#l\\xb7\t$\\xa55f\\x10\\x89\\xdd\\x1c\\x0f4s&a\\x1c\\x05A\\x1b\\xfd\\x90\\x0c\\x1d;\\xa5\\xcd\\x05\\x84\\xff\\xf9r\\x8a\\xd2\\x87\\xfc\\xaa\\x8a_\\xb4\\xb7,\\xd4\\xf4w'\\x9d\\xa9\\xd6p\\xb4\\xb7s\\x84\\xf3\\xe1$\\xf5\\xd7\\xe8'\\xda\\xf5\\xc4\\xcf\\xcf\\xe9\\\\\\x7f?\\xc8/R\\xa5\\xaa\\x1a\\x8dV\\x91bQm\\x15FPl\\x99\\xe6\\\\ri\\xf7<\\n\\xc5\\xe4\\xd9\\x9dD\\xfe\\xb7\\xee\\xb2G\\xe3q\\xe5bD\\xab}G\\xec\\xb9\\xe5\\x92L}\\x16\\x9b\\xa5\\x99\\x84\\x95\\xbfP\\xb2e\\xb2\\x01\\xa95(\\x0e\\xe6\\xac\\x8b\\\\\\x98\\xef\\xbc\\x0d\\x87\\xa0|\\xa3\\x1dD\\xb5Ni\\x18\\xe5\\xe2\\xe2|\\xb8M\\xde\\x9a&\\xde\\xd9\\x14P\\xcdGU\\xa2\\x9f\\xc8Q\\x88\\xea\\xd1S\\xd8#\\xe1\\x8d\\x82eA\\x07R~\\xab\\x99F\\xdfDW,W\\x8em\\xb4\\xfeF\\x13\\\"kA>Zz\\xd3\\x1eV\\x8eq\\x90\\x1a*l\\xd7\\xd7\\xf0\\x92\\x89\\xef\\xd7\\xd6\\xb8\\xf0C/\\xbe\\xae\\xaf\\xe2%d\\x7f\\xb7~$\\x93d\\xd0Ta\\xbb\\xa1F:\\xeb\\xef\\x07\\xa4\\xa9\\xcevc\\xa5\\xd8\\xbb2\\x94\\x83\\xe4\\x9fm\\xc8+\\xd9hq\\x95\\xfbwWwxys\\x1b\\xf2\\xfc\\xe8\\x18\\x19Ee+\\x90\\x0b\\xf7\\x07i\\xeb\\x07.(`3\\xff.\\xae\\xa3\\xf8T\\x18\\x9e5\\\\\\x03\\x91\\xc7\\x8f\\x9db`u\\xca\\x97F\\xdc\\x85V\\xf8+\\x9e\\x16\\x83\\x846h\\x08\\xadP\\x11Z\\xa2#\\xb4EI\\xf1H\\xd3\\xc0\\xdaM3\t\\xbc\\xd4\\x0f\\xfb\\x8d\\xbd\\xd7\\xee^\\xf1\\x88\\xbey\\x9bM]\\xd7nwhEZ\\xa0\\x05\\x8d\\x13\\x8fP\\xe9\\x98\\x87\\xd5\\xb8'A8X\\xd4\\x87\\xd8\\x12\\x0f\\xa5\\xd96'\\xdaez\\xcdbQl\\xf5\\xb4\\x9f\\xeb4\\x84\\xba{I\\xbc/\\x13\\xd12\\xb6\\xca\\xc1\\xc5\\xed\\xd213\\x1a\\xf1X\\x85,\\xbdQ\\xd5'\\xc4z\\x1f^\\x86\\xd1U\\x08\\x82\\n\\x0c\\x81\\x0d\\xdb\\xa8\\xc7`\\x07l\\x99\\x12\\x15a\\x1d\\xf2\\xb8t:\\x8e\\xab\\x05\\xdac#)\\xf9(\\x92\\xc6\\xb06)\\xe74a\\xa0\\xd3Dh\\x04\\xb3\\x89k#\\xa9\\xc0\\x0ef~\\x10|\\xe3\\xa1\\x96\\xce\\xbb}/\\xb5X-\\xcfkV\\x9aW\\xc0z\\xdc\\xd9\\xa8\\xc7Z\\x84\\x95U\\x98\\xcc\\xfek\\x04+\\x96f\\xdc\\x96:^\\x98$g\\x10\\xe3\\x0d\\xbc$}MP\\xce\\x16\\x81\\x11\\xe9\\xabwQ\\x8a\\x82\\x92\\xfc\\xeeh\\xe11\\x8f:\\xd9\\x1b\\xb0\\xa4\\x0c\\xcc\\x7f\\xe6gUV\\x13\\xd6\\xfa\\xc9\\x08\\xfa\\x83\\x07\\\"c\\x03<}\\n{0\\x1a\\xc1>\\x1c\\xc0@\\xbc\\xd9\\xa5o\\xfa\\xbbp\\x00;\\xe2\\xd5\\x0e}\\xb5\\xd3\\x83\\x03\\xd8\\x15\\xaf\\xf6\\xe9\\xab\\x01\\x1c\\xc0v\\x1f\\x86\\xb0=\\xa8\\x1d\\x92g8>\\x852\\xb0\\x98\\xfev\\x19DU!\\x7f\\x13\\x07h\\xb4;\\x19<\\xa4{\\xd9\\xee?\\x1a\\xc0=L\\x0f\\xebH\\xb6L\\xe5\\xa5\\xb0\\xfe\\x9f\\xff\\xeb\\xff4PY\\xf40*\\xaas{A\\xc91\\xac_w\\xb4\\xea\\x06\\xd27\\x0d\\xa4_;\\x10\\xd0\\x0df\\xa0\\x0c\\x06\\xffV;\\x1c\\x98:\\x1c\\xf0\\x0e\\xdb\\x13O\\xae\\x0f}\\xacC2I\\x90\\x08\\xd1\\xbd~\\xa8`\\xfd\\x13\\xc9\\xd7\\x0c\\xa3y\\xa1Wf\t\\xe5qY\\xe5}@?t\\x94}\\x91\\xa7l+\\xf3[nuS\\xb1\\xa8`\\xb5\\x1d\\x89\\xcb4y?\\xe7#\\xde\\x96\\x02\\xa0\\xd5\\xef\\xbdD\\xab\\x01\\xa0\\xebe\\xa7\\x85'\\x10q0!\\xf9\\x08\\x1dWjt\\xf2\\xc5\\x0cs\\xf2n\\xb6\\\"\\xa9\\x0f\\x03\\x80\\x97\\x91\\x93\\x85\\x17\\x1fESr\\x98\\xda\\x92\\x07\\xac\\x1aWZ<\\xb4\\xd1\\x98J\\xdd{{\\x83G\\xfb\\x80f\\xf9OF\\xb0\\xb7\\xbf\\xd3\\x7fT2\\xf8Rp\\xa9B\\xd0v\\x95\\x85\\xe3)\\x9a\\xc7\\x12D\\x06gj\\x9d~\\xa5N\\xff\\xcc\\x85\\xb0pS\\xd7\\xe6\\xd9\\xae\\xbc\\xd1\\x9bxh\\x89\\xa32\\x93\\xbef&\\x83\\xe6\\x99\\xf41\\xe5\\x85v\\xe1\\n4C\\xa8\\xd7\\\"R]\\xaa:\\x90\\xef\\xc3\\x0f\\xa4\\x03\\x89]~X\\n\\xe5@jQ\\xdaH\\x0d\\xf7@fr\\\\\\xc3\\xbdtL\\x9bS\\x82@\\xaf\\x1a\\x0eL\\xb7\\x12\\xa4\\x1623\\xed\\x16\\x13\\xe3\\xafl\\xb3\\x1d-\\x91\\xeaq_\\x93\\x83\\xd2ZqV\\x83\\xbb\\x9d\\xd9*F\\xec\\xc06\\xde\\x94\\xa8X\\xb1#\\xec\\xd1B\\xb1\\x1a\\xb5\\xf8Qj\\xfa\\xb3\\xf6\\x83\\xe3\\x1a\\x86_\\xc2\\xb4\\xb0\\x81f\\x05w\\x87j\\xda\\xadtP\\x8b\\x1d\\xf9\\xa0{.\\x02X\\xc1\\xd4a\\x036\\xac\\xcc\\xcc\\x8e\\xe1|\\xa8\\x07\\xc6\\xa2\\x86yj\\x82\\x85\\xd4\\xb0\\xf8E\\xca\\xd1\\xdcX\\xc6\\xc7\\xa8d\\x1b\\xe4\\xa7\\xf5\\xc2\\x7faq\\x9b\\x9fA\\xb9`\\xa8\\x80\\x1f\\x97\\xcdU\\xdd\\x9e[\\xed\\x7f\\xbfHB\\x87\\x9e\\x989k&\\x98x&\\xe7\\x18:\\x06\\xd9<It\\xe3V\\xb9\\xdd\\xf2\\xdegV\\x8a\\xe8\\xf0\\xadE\\xa3\\x10#\\x92\\xe6\\x00'2&Q\\x9e\\x9f\\x12\\x82\\xd0\\x11\\xfcE\\xe9\\x0dJS\\xf2\\x8a\\x94\\xa1\\xce8\\xf5\\xfaK\\xaa;\\xc6\\x7f\\xe4\\xb0\\xca\\xe8\\\\\\x1e\\x93\\x90b\\xea\\xae\\x12\\xd6j\\xc6\\xe7\\x1a\\x06\\xb8\\xb0N.(\\x86\\x9es\\x88\\xe1\tmB\\x90\\xc6j\\xa55\\xcf\\x1d\\x90\\xd9d\\x1c\\x9f\\x19\\xf8\\x0f\\x1f\\x15\\xf4y3>\\xba\\xf12u\\xbd\\x84\\x02>\\x1e}\\xae\\x9a\\xdeJ4\\xb2\\xbd\\x8d\\x83\\xa1\\xab\\xb7=`bv\\xdd\\xc0\\x90\\xb1\\x92F\\xe6\\xb4\\x1e\\xc3\\xe0\\xf7\\x1f\\x03o\\x0bC\\xef\\x8cD\\xca\\xbc\\xf2\\xa8v\\xf4\\xa3\\x12\\x9d\\x97\\xb7\\x8f\\xd9\\xb0\\x98\\xe9\t\\xcb[\\xbeJ\\x15E\\xb8~\\xf5\\xeb\\xca\\xf9\\x16V\\xa9\\x8c\\x1c\\x9e\\x01\\xb6\\xc1\\x0e+\\x94[\\xbf1\\xb4,x\\x8f\\xf9M\\xeb\\x86FKL\\x1bFR/\\xd4S\\xcf\\xf2v|\\xa2!\\xa4\\xfaq\\xd5\\xf3Bw*\\xa0(+p\\xeb\\xe1\\x14bLy\\xd2\\x92\\x04\\xa3\\x9cR\\xb7\\xba\\x99)e?/^\\x17\\x176\\x035y\\x1f\\xcfq\\xae\\xcf\\xcb\\xac\\xd1\\xae#\\n#\\x04J\\xd9T\\xca9\\x13\\xa2j\\xda\\xf0\\x92\\xc9}n\\x8b\\x91\\xc6^\\x98\\xcc\\xa2x\\xc9\\x8c1tn1\\x18\\x17\\xfc\\x9d\\xa8\\xd7\\xc2r\\nT\\xaeY\\xe9E/T\\x85\\xdd\\xbcV\\xbd\\x1fG!\\xb5\\xe1y3\\xb90\\x0bi[qY\\x1c3\\x06\\x0e`\\xcc\\x06\\x85\\xd0\\x857\\xb9\\x14qj\\x96Y\\x90\\xfa\\xab\\x80@\\xea/Ib\\x8cw/\\x06\\xb2\\xc8\\xc2\\xcb\\xdcG%\\x1f]\\xf1\\x86\\xa7\\xec*L\\xadx\\x1aWW\\x93O[<\\xe2\\x80apl\\xe1}\\xe0+\\x86;\\xb6_\tk.\\xecc\\xe1\t\\xf8\\x9a\\xa8\\x1bEW\\xb6Z\\\\\\xe9\\xf1\\xa6\\xb0\\x01\\xd58\\xdd\\xd1\\x8e%\\xc4\\xd1\\xd9H\\xcak\\xae\\xaf\\xc1\\xc1\\xc8\\x82]\\x98\\x8a)\\xe8kk\\x14\\xdafZ\\xa9|\\\\\\xe8\\xad\\x97t\\x0154\\xd5\\xa4P\\x1e\\xb5\\x89E\\xf2\\x89J\\x06O\\xc5\\xbb\\x91\\\\\\xc3\\x9cgd\\x16d\\xc9Bj\\x80\\xfd=\\x12%\\xc2\\xe4\\x1e\\x0d\\xb6W1\\xc9\\x1d\\xf5\\xb2&\\xbd\\xa8\\x8e\\x9d\\x12\\xbe\\x18e<\\xd3\\x8fL\\x1a\\xcd\\x81\\xfcW)g\\x9a\\x96\\x19\\xf3r\\xdaZ^\\x14\\xcaDz\\x9c\\\\\\x15\\xfb\\xa7~\\x1e\\x9e\\x89\\xeb+\\xdd\\xa4hLH\\xabLB)\\xb1`Z\\xc4\\xba\\xaf\\x84\t\\x10\\xe7e\\xe5\\x9e\\xe3\\xc8\\x0b\\x02\\xba\\x0d\\x8bE\\x9eF!\\x81\\xab\\x05\t\\xe1*\\xcf\\xa8\\xb45\\x82\\x9e\\xa5\\xe9?U\\x89f\\x89:n\\xd8]\\x92\\xfaAP\\xdajj\\x979d4\\xbe\\x00\\x85\\xcc\\xe6W\\xf2\\xaa\\xb9\\xd2;;b\\xdcJ\\xb4adw\\x99@\\xab\\x93.Q\\x90\\xdc\\xe9\\xa9\\xdc~\\xc5\\x97\\xac\\x18yy0\\xa5\\xfd\\xd6$(T\\x00\\\\|m\\x080c\\xec\\xb6*\\xc9\\xea\\xbb,{\\x9a\\xd5\\x9d\\x99(\\x9b\\xc8\\x07\\x0c\\x85J\\xe9\\x10J\\xf37\\xd2m;qa+V\\x10I/\\x1e\\xb5>r\\xecXY#<_\\xbe\\xd0\\x89sc\\x04\\xb1\\xeaYP\\x7f\\xa9R\\x0b\\xdb\\xdc\\xe7\\x84\\xc8\\x10\\xc5[\\x04\\x01p\\x16B\\xb8\\xc4\\xae`\\x0c&\\x95\\x81\\xe9U\\xb8,[n\\xd4\\x15M\\x16\\xfc/\\xe9\\x96\\xb9-f@\\\\\\xdd\\x06=#$Z\\xe6i\\x90\\xf93\\x95Q\\xac\\xb6\\xa6l\\xb1z{\\x0c\\x96{=\\xe4D\\x969\\x90\\xab\\xc4]!.\\xb7b\\xb5%\\x9eZ\\x97\\x89\\x17sH\\xcaBQ\\x14\\x1f{\\x93E\\xb9\\xa2\\x94\\xe2|\\x12\\x93\\x12.\\xb4K\\x8b+\\xf0*bDSKU\\xb9\\x0din3\\xda\\x04@Lgz\\xef\\xde\\x06\\x8c\\xb6\\x9e\\x15DK\\x97\\x10\\xbd\\xd9\\x1c \\x18\\x04\\x10\\xd2qxV\\xa9|c\\xf3\\xb4\\xb8\\x18\\xc9X]+\\xb7\\xa4h\\x84\\xdb.\\x97\\x16\\x9e\\x0e\\xfc\\xfd3\\x9a\\x940`\\xc7iZ93\\xcd\\xf5\\xf5\\xab\\x96\\xbc\\xf6^\\xdb\\x98X\\x16\\x95\\x18\\x84\\xa9/\\xf0\\xe2\\xee\\xde=\\xae\\xad\\xd8\\xc6\\xc4\\x0c>\\x86\\xb6\\x1e\\xe6\\x8e\\x95x#\\xd4\\x9c\\x1d\\xb9\\xd5\\x1c\\xcb\\xfe7\\xbb\\x0f\\x06\\x8eM\\x87\\xc4\\x91\\xd6K\\x12\\x7f\\x1e\\xc2\\x10\\x8bv>\\xd7\\xa2\\xd0\\x05\\xdf\\xc5Tr.x.\\xcf\\xe6:P\\x13\\xa4N\\x9aH\\x0b\\xe8\\xee+\\xe8#\\xe7\\xcc\\x8f\\xaf\\x95\\xaf\\xf4\\xaeY\\x13\\x17x\\x08@\\xad\\x07\\xd6$\\ng\\xfe<\\xab\\xc9$.\\x985\\xbdl\\xd1\\xe4\\xc1\\xb5\\xf6\\x82\\x8c\\x0cA1\\x02\\x96\\xd6\\x15&^n>V\\x9cN\\xec\\xcec\\\"]\\xe5\\xc6\\x15\\xc9\\xba~\\xe8\\xe6a\\x97\\x87\\\\\\x8c\\x84\\xc55\\xd4B\\xd1\\xdd8\\xa12\\xa5h\tJ\\xa6\\xb9*k\\xc4s\\x06\\xa60\\xa4\\x87>B\\x86\\xb1\\x14\\xe8\\xa7U\\xacR,_\\xaa\\xe0m\\x11\\xcfn\\xfc\\xe8\\xa1\\xe3b:\\xd4\\xf1\\x19\\xcbl\\xdd@U]\\x9d\\x02\\x9cr>\\xde8=\\xcb\\x99y\\xfaG\\xb9\\n\\x92=\\x82\\xfd<\\x86t{\\xfb\\xb1#|\\\\-\\xcf\\x82\\x0e\\xd8\\x9dN\\xe8\\x14\\x1a\\xa8\\x9d}U\\xae\\x97\\xf4(\\xc2i\\xc2\\xb6f!K\\x98\\x8bE\\xb9\\xc4a\\xd3\\x06\t\\x0fq\\xef\\x82\\xe5@\\x87\\xfe\\xef\\xef\\xa2\\x8dY(\\xbc5\\xf1\\xec,\\xdc\\x06\\x1e\\xc3\\xcd\\xe32\\xcb\\xd8z\\x8d4\\x14\\x1f\\xe5\\x1b\\xc3\\x9a\\x15b\\x8f\\xc2\\xe7\\xe0\\xa9E\\x9c\\x8a\\xea\\xa1\\xba7\\xe9\\x93\\xd9\\xe8\\nU\\xde\tz\\xf4\\x07\\xdd\\xed\\xf2\\xcd\\xe7\\x12'&r\\xe8\\xb2\\xad\\xeb\\x91\\xbeTM:\\xe7\\xe7$}s\\x15\\x8aj\\xcfI2\\x89\\xfdU\\x1a)\\xf6\\xd3\\x99\\xe9\\x83\\xd7\\xdeR\\x0dh\\xe2\\x99\\xea\\x9e^//\\xa2 iq2i\\xd7\\x98\\x91`~4\\xc76Q\\xf1\\x14\\xe5D\\xb9\\x06\\x86\\x18\\xc8\\xec\\xc4\\x11\\xccN!~kC\\x0d\\xeaW\\x1a\\x9b\\xb6\\x99\\x87M\\xc4\\xc2\\x14j\\x14?\\xf2\\xd2k\\x9b@\\xee\\xb2\\xfa]\\x19\\x81L\\xaa\\x0e\\x0f0\\x82\\xdb\\x7fY3\\x91\\xed{r\t]/g\\xffS\\xb9\\x95\\xcf\\xdc\\x15}\\x1d\\xff\\x1b\\xda\\x0fUUs\\xa4w\\x03\\xa3\\xdc\\xe9mq\\x94\\x9ek\\x9a,xt\\xfb\\xe4\\xc4n<8\\xd3B!Fj\\x85\\x0b$w\\xc4\\xd8\\x10O\\xb7\\x1a\\xe18>C\\x07'\\xe1H\\x91\\xa1<\\\"\\xbe\\xa8\\xacH\\xd8\\x00g\\xb9\\x8fv\\xfc>\\x1f\\xfa\\xd6\\x16W\\xf6\\xb1\\xf0\\x03\\xe5\\x14r\\x9f>\\x19\\xb4d\\xc8\\xd5\\x9b\\xf4\\x83\\x0b\\xd24\\xdaVX\\xa1\\xe7\\xa3\\x88\\x0b\\xd6\\xf99I^E\\xd3\\x0c\\x0dN\\xd4\\xa5D>G\\x16+Yt!/N\\xc8\\xf7\\xde28BnE\\x93\\x16\\x7f]D\\x88\\x0e\\xed\\xbdAO\\x83q\\xc8\\xfc\\xb0\\x80\\x0dq\\xb7\\x18\\x04\\x1c@\\x0cC\\xcd\\\"\\x0bSS5\\\\p\\xd1\\xa9n`\\xb5\\xa8\\xaa'\\x0f|-#\\x91\\xe3\\xaf\\x9bx3\\xf2M\\xe4M+\t\\xacjID\\xce3\\xb1\\xd0\\xc8q|\\x88\\x03I\\xba!\\xb9zG\\x89@x\\x1c\\xc7v\\xa1IB*\\xad\\x1c\\x97\\x1bz\\x916\\x11\\x84\\x9d\\x87\\x06q\\x88\\x8e\\\"\\xb6\\xcbs\\xf0\\xc3I\\x90M\\xc9\\x10\\xc6\\xa1=\\xe8\\xed8g\\x12\\x12\\xfcC\\x07\\xd3\\x1f\\x0c\\x9c3\\x85\\xb0-W\\x81?\\xf1S,\\xdf\\x1b<\\xc0P\\x06{\\x83\\x87\\xfc\\xdfG\\xec\\xdf\\x9d\\xde\\x1dM\\xe2N7S\\x10y\\xcc[\\x99t\\xdf\\xbd\\xf9\\xea\\xabo\\x8e\\xcf\\x8f\\xde\\xbc~\\xf1\\xf2\\xabS|\\xf5\\xfe\\xed\\xf3\\xc3w\\xf2\\xab\\xda\\x9d6\\xe8\\xed\\xfdN;-[M\\xbd\\xaa\\xf6\\xd2@\\x165\\x07\\xf3\\xf5\\x8a\\x0c!\\xab\\x9e\\x10+\\xef\\x9a\\x02d\\x08v\\xcf-\\xb6\\xa0c\\xff\\xfdF\\xd5\\xe2\\x02(\\x9a?\\xd2M\\xa3\\xf9<\\xa87\\x0ej\\x18\\x91&\\xabJ>\\xa2\\xd4\\xd4uy12\\xfd\\xbaYL\\xb2K\\xce\\x19\\xe4\\xac*\\xaf\\xa8Y\\xff\\xfc#63K^\\x81\\x1cod\\xad\\x89n\\xaeU\\xad\\n|\\x1eA!2\\x12\\x8dJ\\x0ef%l\\xec\\xef\\xa9\\x0c\\xc8\\x97\\xc2F^\\xa7\\x85b'\\xa7\\xca~\\xc8\\xe2:\\x94\\xd1\\x8c}U\\x1d\\x04\\xdf\\xbca\\x83\\xae@\\xa3i\\xd8H\\x17\\xa1\\x18\\xac\\xa0\\xa9\\x16\\x8b\\xde\\x19\\xba\\x9br\\x87\\x94\\x1a<p\\\\ES4x\\xd8\\xfb\\x0c\\xc2W^\\xde\\x92vM\\xb6\\x85\\xdbd\\x895\\xcb{\\xe3\\xe4G\\xef\\xdb8Z\\xfa\t\\x9e\\xa1\\xa1=\\x18\\x0c\\x1c\\x17\\x98|.\\xa7\\x90M\\xbd8M\\xbe\\xf5Y\\xfe\\x88\\xd0\\x1e\\xec\\xf5[M1\\xb4\\x1f\\xee\\xe1\\xc1\\xf0h\\xbf\\n\\xa6\\xc1g\\x83\\x89\\x9bu\\xa8\\xac\\x0f'\\xd4}\\x1d\\x13\\x1e\\xda;\\x8f\\x9c\\xaa\\xc0I\\xa7d:+\\xed\\xfe`\\xcf\\xb1Q\\xa9\\xed\\x82\\x85\\xffZ\\x0dA\\xed\\xf8\\xdd\\x03\\x1a`\\x15\\x16\\x1f\\xbe\\xe4Hs~Yr\\xa8\\xbf\\xa9\\x89u\\xb6.E\\xe7K5\\xfb#/\\xbc\\xac\\x16\\x16\\xa6 ~\\xa7\\xa3\\x15\\x06X`\\x9a\\x10\\x9e*>\\x10\\xf9\\x1c\\x18\\xdeQy\\xa1\\x8f\\xb7\\\">\\xdd\\xd1\\xd6%\\xb9N\\x90\\x91&\\xdc\\xa3\\xc2\\xc2\\x1d\\\\\\xbc\\xc3\\xe47C\\x16\\x14w\\x1c\\x9e\\x9d\\x95t.\\xa22\\xdeZ\\x1e\\ny\\x05%\\x0c\\x0e\\xe9\\xd8f]\\xa0\\x91\\x86T\\x1d\\xc3\\xd0\\xa7\\xb1O\\xff\\xd2\\xe2O\\xa3haT}7~\\xb9\\xd1\\x01\\xcc\t\\x9a&\\x18\\xde4\\n))\\xda2\\x1ew\\xb7\\x1c\\x9d:4\\xbf\\x1cJyK\\x96\\x87\\x98\\x90\\xfc\\xeezE8o\\x0c\\x1d\\xb0\\xc4\\xed\\xaa\\x977\\xbae\\xba\\xafn\\x18\\xec\\x86\\x9b\\xf8\\x91~\\x0f\\xef\\xedj\\xb7\\xf0#\\x95\\x05\\xcbP\\x18.\\x1a\\x0e\\xed\\xc1\\xbecg\\x94\\xf2\\xec;\\xb6\\xe5\\xa7$\\xf6\\xd2(\\xa6\\xe8\\xd3t\\x94\\xa7r\\xf0\\xb2\\x1b\\xa7F;\\xa8\\xbb\\xba.h&\\x8c \\xa6#\\xa8\\xe2EH>\\xa6t\\x13i\\x12\\x91\\xd3\\xdd\\x80m\\xe3b\\xbc\\xcc\\x87\\xbd\\x19\\xb0%\\xf5\\x84\\n?N\\x1a\\x1fh\\xc1\\xba\\xdb3\\x93\\xc0=\\xe9\\xea\\xa3\\xc4\\x94\\xfb$i\\xca%\\xe8W\\x14\\x9dEf-\\x17\\xd7.B}\\x04\\xe5\\xd02N\\x81\\x98\\x06\\xae\\xf7\\x18<x\\n\\xc9c\\x07\\xe2.:YPr\\x96\\x8d\\x93N\\xe7\\xcc\\xc5\\x8b\\xb5;\\xc1N\\xe90Q1K\\x9c%\\xaa\\xf63\\xe2\\xef\\x1f4\\xde~5\\xb1\\x8c\\x04C]e:\\xf9\\x96\\x8e\\x8b_\\x07\\xa1\\xc6\\xa6R\\x01\\xf8\\xad\\x90o'\\xb9\\x95\\xa5\\xb6\\x12\\x06\\xa7\\xa1\\xe8\\xa8\\xcbF\\xc1\\xb4\\x99\\xf4\\xfcG\\xbb\\x1b\\xddH\\x00\\xf2l\\x8a\\x13x\\n\\xb3\\xc7Um\\x9ex\\xd0\\xf6\\x98.e2\\x9eu:g\\x0em\\xd3\\xcbU\\xe1\\x1awhfs\\xdf\\xdc%\\xccL\\xa9\\xd6@t\\x8b'\\xd9\\x8c2\\x9e\t\\xb2F\\xc9x\\xc6\\xf2\\xaf\\x85R`o\\xac\\xf2\\xe9\\x13E\\xae\\xe2\\x04\\xc4D\\x0b\\xe5\\xcdx[\\x1cz\\xa4\\xb33}\\xe5\\xa5\\x8b\\xee\\xd2\\x0fo\\x89-\\\"\\x01\\x95\\x8f\\xbaf\\x17\\x1e\\xf5z\\x0f\\xfa\\x8f\\x1e\\x0d\\xf6v\\x1f\\xec\\xf6\\x1e=\\xc2\\x9cZ\\xbd/0`\\xefc\\x15\\xed\\xdbN\\xc5|V\\xa2\\xee\\x1c\\xd51\\xf0\\x84O\\x8b\\x1e?\\xc4eI\\xb3x\\xfc\\xab[O\\xc7\\xe9N\\xa3\t2\\x14\\xfa!\\xc6\\x8ck\\x16\\x95\\x8e\\x99!\\xd1\\x86\\x9d\\xe8\\x8d\\x89\\x1f\\xde\\x0d=0\\x11\\x03~C\\x0c#\\xce\\xa2\\xdb\\xbeM\\x1c\\xc3\\x96gT#\\xac\\xa1\\x1a\\xe6\\x04\\xaa|L\t.\\xcf\\xa7O\\x90P\\xe6p\\x82w\\x90\\x07`Y0\\x14\\xb2\\xc8\\x10\\xec\\x08[\\x92\\xdc8\\x13\\\\V\\xe6\\xa0\\xf9\\xe9\\x13D\\xf0\\x94\\xf9g\\xb2\\x86:\\xe2\\x8e\\x16\\x83\\xc2f\\x95\\x8fi\\x05\\xd6\\xc0\\xfe\\xce\\xa0\\xc7\\x02)>\\x85\\xbd\\x07;\\xbb;\\xbc\\x7fV\\x1f;\\xa2\\xc8\\x82\\xce\\xdf\\xf4-\\xf3\\xc2L\\\\\\xecd@\\xcb2\\xd8\\xe6\\xcdt\\xe88\\xb7\\xf9\\xa0\\x9e<\\x81~\\xcf\\x81\\x0e\\xec\\xef\\xed\\xed\\xec\\xdf\\xcd\\xa6\\xaf\\x1c\\xa9\\xfc\\xe0\\x18\\xf4\\x8dg\\xea\\xc0\\xe9\\xceI*\\x0e\\xf9\\xe6[Y\\xa4\\xf3\\xeaIjd\\xf1H\\x03\\x8b\\x87<\\xd1E@L\\x0c^l\\x13n{\\xe4\\xdcz'\\xf6w\\xf4\\xd7#\\nOV\\xa10(\\xa4\\xb5\\x03\\xdb+\\x92.\\xa2z\\x034\\xc9\\x8dl\\x0b\\xa3\\xcd\\x0b\\x9a:\\xf6\\xcf0\\xc0\\xc5\\xd8\\xfa\\x97\\x7f\\xc9\\x87\\x83\\xaf\\xa21\\xa5Ng\\x9b\\xcd\\x9b\\xae\\xf6\\x0eJ\\xbb\\xfd\\x1d&\\xf5\\x0evv\\xf9\\xbfLM:\\xd8ej\\xd2\\xc1^\\xaf\\\"\\x0e\\xf7\\x1f9B\\x14o\\xd3Y#C\\xad\\xc3G\\x99E\\xf6\\xc7\\xa1\\xddwlK\\xdc\\xc6\\xbf\\xf3\\xe6\\x96s\\x06#\\xb0~\\xc1L\\x8d\\x1d\\xba\\xcf\\xb7F`\\x8d\\xd9E\\x0b\\xfcrf1\\x1d\\xc1N\\xcf\\xe1VK\\xa5\\xe8\\xbd\\xa2\\xa1\\xba\\xb0\\xdd\\x1c\\xf2y\\x9b\\x16t\\xe89\\x80\\x01L;`\\x9d\\x95\\x9c\\xe3\\xb6\\xda\\xe9\\x07d0n\\x85\\xf6\\xee\\x80%G\\n\\xed\\xdd\\x1d\\xc7\\x1cx\\x8d\\x8f\\xe4\\x01\\x9d\\xa2^\\xd7\\x1c\\xda\\x8f\\x1e9\\xb65\\xf5\\xd7Tl\\xb0<\\xad\\x19\\xccF\\x81\\x86\\x1fT\\n\\xd5\\x9b\\xcc\\xaeW\\x00\\xa0\\xd5\\xe4%]\\xbf\\x89\\xd0\\xd4\\xb3\\xe6\\xe8\\xaa\\x81'\\xb1\\xdeV\\x813\\xe9~\\x95\\xea\\x10\\xd3\\x95\\x9a]\\x8e\\x13\\xc0\\x96#\\xe6\\xb1\\xc7\\x05I)|\\xd1j\\xe9\\x99\\xda(\\xca\\xd4of\\x9b\\xb7\\xb9\\xf5e\\x86\\xab\\x92X\\xeb\\xc8\\x0b\\xff\\x94\\xc2$\\n\\xd7$N\\x81\\xa3y\\x1a\\xc1*\\xf6\\x97>\\x06+\\xc4)l*\\xd25m\\xf7\\x81\\xe1\\xfc\\xe9\\xef\\xe8%\\xe8~O\\xe5_\\xaa\\\"t\\xff\\x01\\x17\\xa1\\xfb\\xff\\xaaE\\xe8\\x87\\x86\\x83]}\\xcf\\x01\\xbb\\xab\\x03,\\x05x\\xcf\\xb1\\xad\\x97\\xc7\\xe7oO\\xde\\xbc{\\xa3\\x1ez\\x9e\\xaa\\x9e*\\x17\\xab\\xda\\xab\\n<PE\\xc8\\x82\\x0bq\\xb2\\xe5\\xcfb\\x0f\\xb3qT\\xea\\xd2\\x07\\x9d\\xbe\\x8d\\xdc\\x1f3\\xe3\\xea&\\xe9u@\\xbaS?Y\\x05\\xde5=\\x18\\xc2(\\xc4DSv\\x7fw\\xe0t\\xbd\\xd5\\x8a\\x84\\xd3\\xa3\\x85\\x1fLQz'\\xdd$\\xa6\\\\\\xa5\\xf5\\x93\\xb7\\xf6\\x98i\\xcf\\xd0rE\\x9a\\xa4I\\x14\\xa6$L\\xbf\\xc50\\xb99\\xeb\\xedt\\xa3\\x15\tY\\xda7\\xe6\\xc2l=a\\x9f>\\x15U\\xba/F\\x8c>?\\xf9\\xe1>/b9FxXV&\\x1e\\xa7\\xdd\\x17\\x8f!F\\x8b\\xb3)\tHJ\\xe4\\xac7\\xe3h\\x1c\\x9fir\\xa6\\n.W\\x8d\\xed\\xaa\\xa7\\xa3%c\\xe5rP\\xc7v\\xa6b\\xbc\\xbb\\xdc\\xca\\x1d\\xefF<\\x05\\xdd\\xd1\\x80\\x1b\\xd8\\x0d\\xad\\xe7B\\xb9\\x98{\\xe3\\x8c3\\xb4'\\xc6\\xec\\x93hzVX\\xc0\\x8c$}\\xac\\xcf\\xb2\\x19\\xdf\\x16\\xf1\\xf7\\x0c\\x14\\xc5\\x80\\xf75\\x1c\\x1b=\\x92\\xff5(\\x8f\\xf6\\xf4\\xa4b_wEG\\x99\\xc2\\xbeco\\xb5\\xa3\\x16\\xb78\\xd99\\x80<.5T\\xe9\\x00\\x82\\xa8\\xfaz\\xc2\\xcc7\\xab\\x10Gsv\\xcfaJ\\xa2\\x8c\\x19Z{\\x08\\x8b{\\xf7`\\\"\\xfc\\xb44\\x1f>\\x96\\xa3@\\xe1j\\xe0w\\x94,\\xe0Z\\xb0d!\\xff.\\xb2'\\xd8\\xda\\xa7OEk\\xfa\\x05\\x9a\\xdcv\\x81vM<\\x12\\xb7\\xe3\\xb3~\\xb1\\x1c\\xba\\xe1\\x90\\x01|\\x99\\x1c\\xe7\\xf7\\x8ev\\xaf\\xc0\\xe0\\x12\\xc2\\x9a\\x18\\\\\\xce\\nS.#f\\x96\\xec)&\\x10Km\\xcb\\xa2\\xfb6\\xb7\\xfa\\xbf\\xedT*H\\xc5pmWg\\x9c@\t\\xb6I\\xb5\\xdb8\\x95\\x92^\\xe2\\xdf\\xf4\\x94\\xff\\x15\\xe9)\\x0d\\xe4j\\xb0\\xa3\\xfa\\x1dD-8\\x18\\xc9j7?\\xb1j\\xcf\\xd19I\\xdf\\x8a\\x8aof\\xf5A\\x92s\\x90pZF\\xf7\\x94\\x0b\\x11n\\xabqt\\x06C\\x93i\\xdf$\\n\\x934\\xce&i\\xc4r\\xe3\\x83\\xe4\\xb7_.=(\\xff-\\x1d\\xbb\\xc3\\xf2g\\x9c\\x08\\x1c@\\x06\\x8aG\\xf3\\x86\\xe0\\xef\\xdfzK\\xcaV\\xc7\\x9b\\xf5\\x9e\\x1f\\x9d\\xc2w\\x07\\xfdH\\xf3\\x03\\xdc\\x15\\xda\\x97\\x9e\\xe3\\xf2\\x93h\\x8f\\x1f\\xad(\\x0e\\x08\\xcf\\x94\\xdd]\\xc7\\xc5\\xfdLe\\x03\\x177\\xed\\xa4,\\\"\\x04\\xecUI\\xb9\\xc0\\xf2\\x82'\\xe2~wQq\\xcc8:==\\xc9XN\\xbe\\xaa\\x19\\xc7\\xd1\\xe9\\xe9)eH\\x9f\\x93I\\xe0\\xc5\\x1e\\x9da\\xd5E\\xe3\\xe8\\xf4\\xf4\\x03\\x15\\xafx\\x13ji\\xe0\\x930=!\\x93T_\\xfe\\xfc\\xcd\\xab\\xdaB6\\x17c\\xf1\\xbb\\xe8\\x92\\x84\\xfa\\xc1?\\xf7R\\x8fy\\x11\\x92\\xf8eJ\\x96\\xfa6^\\xf8\\x81a\\xe4\\x7f~\\xf7\\xea\\x9b\\xc3 8\\x8a\\x82\\x80L\\xf4S\\xa7U\\x9a\\xca_D\\xf1\\x92k\\xbb\\xf5\\x15N\t\\xfd\\xdeX\\xe5\\x15\\x99\\xfa\\x9e~\\x86\\xaf\\xfc%\\xa1b0.n\\xf5\\xcb\\xd7\\xde\\x92L_GS\\xf2\\xca[iJ\\xa3\\xa9a\\xd5\\xdfz>]\\xb1\\x9f3\\x92\\x18\\xd6\\xe5m\\x90\\xcd}\\xcd|\\xd9{\\xc3pN?|\\xf5\\x0d\\x1eC\\xfa6O?|\\xf5:[^\\x90\\xd8X\\xfc\\xd6K\\x17\\xa7\\xc4\\x80\\x0b\\xb4<\\xf2C\\xc3\\x80O?|U\\x87H\\xa7\\x1f\\xbe\\xca\\xfdM\\x0d5\\xa2,\\x9e\\x10\\x16z\\xdeP\\x83n\\x94\\xd3\\x05!\\xa9\\x1e\\xaa\\xef\\xc8\\xc7\\xf4]\\xecM.\\x8fL[%\\xafa(\\x8e\\xb2I\\x0e\\xbb\\xbc\\xe4\\x86\\xa5\\x0b\\xf7m\\x0cY\\xc98\\xf05<\\x81\\xa9\\x904a\\xdd\\xe9\\xe8\\xf8\\xd4k\\x17\\xe60\\x82\\xe9x\\xad\\x18\\x9d\\xd2g\t#X\\x8c\\xe7\\x9a\\x92sd\\xe7u%\\x170\\x82sJ\\xf1\\xcfu\\xa7\\x11\\xf0c\\x18\\xdd\\x89\\xed\\x0bz\\xf6~\\xfa\\x04\\x9e}\\xe1\\xc2\\xcc\\x85\\x95\\xe3\\xc2\\xc58(\\xde\\x05,\\x07s2\\x9e\\x9f\\xb1\\xe8\\xbaK\\x8d/\\x03R\\xd6kz\\xa2\\xc7\\x0e\\\\\\x8c\\xaf\\x99\\x1a\\x99~~\\xedB<\\xbe>+\\xf4\\x99\\xd0\\x96Z7*}\\xb4>9\\xf4\\xbd\\xe1~_\\xd5\\x05e\\x82\\x954In\\xfd\\x9d\\x07\\xfff\\xf9\\xf4_\\x8e\\xe5\\x93\\x99\\xd7pl+\\x0b\\x93I\\xb4\\xa2\\xd2L\\xa22o\\x1a\\xa7m\t\\xdf\\x84f\\x01\\xfcq|\\xc6\\xae\\x00\\xfa\\x0f\\x1c\\xdbG\\xef\\x8f\\xbf\\x9b\\xf5{\\x15I~\\x1c\\x9f\\x8d\\xd33\\xc5\\x89^;\\x11\\x93~\\xbf\\x16\\xf5\\xf8\\xa2\\xea\\xc4\\x93\\xbb5\\xc4j\\xbfMe\\xb7^\\xbe\\xa1T\\xa6;\\x11lV\\xe9-c\\xae\\xf6U\\xab\\xa8\\x19\\xbe\\xae\\xdc\\xed\\x04\\x8ckS\\xde\\xae\\xd8[U\\xc3\\xb0`M\\xab\\xaf\\xa7\\x9ct\\xa8\\xd6\\x91k\\xf6~W\\x1d\\xca5\\x17,\\xd5^\\xe7\\xfc\\xfd\\xae\\xd3M\\x88\\xb2e\\x97\\xbc\\xad=\\xc7V\\xbe:\\xe7,\\xb1*\\xd5^\\xf0\\xd6T\\xf8\\\\\\xf1\\xf7*\\x01\\xfc\\x88\\x1cf\\xae\\x8fW\\x8eE\\x91\\x0c{B\\x12\\xc5\\x91\\xf0\\x18\\x8b\\xf8\\xfd[\\xb9\\xe8\\x10F`\\xf1\\x8fp\\x87\\xcf\\xecS\\xa5\\xd77\\xf5\\xea\\xdb\\x9f0\\x92\\xde\\x08\\xce\\xbb\\xb3r\\x01\\xa5\\x84[[\\xf5\\xaa]\\xb3\\x7f\\x9d\\xa0\\x8e\\xc7\\xdd\\x98$Q\\xb0&\\xb6\\xba\\xa6\\xf2CX ZY\\xe6\\x19\\xd1\\xdd\\xcb\\xaf\\x01\\x93\\x15\\x99 a9\\xab\\xdd\\xc3\\xea\\x93\\xdao\\\\xc\\x96v5\\xd9\\xfaA\\xb2\\x0394zl\\xf1\\xa58!?1\\x86\\x163_\\x8a\\xac8\\x0b\\x12\\xdao\\x1cY*\\xab\\x8a\\xe55\\x1e\\xb27*\\xf6\\xbdl\\x9c\\xf3\\xba\\x9aX\\x05\\xa4s\\xc4\\xde\\xc2\\x98\\xaf\\xe5\\xc9\\xe4w\\xf1,p)\\x0e\\xdb\\xc1)\\xa8\\x89\\xb4J\\x7f\\xbej\\xa2s \\xae\\xb4\\xd2\\xee\\xb9Q\tB\\xcb\\x14\\xc7\\x01\\xf9Y\\xe7\\xe1\\xbc\\xcf'\\xfa\\x1a\\xcb\\xe6\\xa4U\\xa0J\\x94i\\xf7|\\xcd\\xe4\\xc9>.e\\xf7<a\\\"e\\x8f\\x89\\x93\\x85.\\xa9\t\\xaf\\xb8\\xf6\\xb2 \\x9d>\\x1c\\x00\\xe9F\\x97\\x18\\x94e\\xe6\\xf9\\x9ahc\\xea\\x93\\xe0\\xc5\\x03\\xdf\\x1b\\xcd\\xd5'\\xbc:E\\xb8\\xe6\\xda3\\xac=\\x8d\\x96\\x9e\\xdf\\x94 \\xc4\\xb8\\x81\\xe5\\xc7c\\xc1.>}b19)\\xec0\\xdc\\xd8[\\xc6E\\xd1\\xbfF\\x18\\xa4t\\x8b)\\xf9=d=Fh\\xedoc\\x0e\\xadY\\x97\\x84)\\x89m~\\x81\\xe0\\xd91\\x8a\\xe6\\x94\\xc5\\x9du\\xc9G?\\xb5\\xb9P\\xbf\\xd5sX\\x1d\\x8c\\xb4\\xb3\\xe2\\xe6\\xff\\x070\\xb1?\\xda\\x16\\xdfw\\xdb\\x93\\x85\\xe7\\x870\\xb9\\x9e\\x04\\xc4b\\xa1\\xea\\xe9:\\xbe\\xb4)\\x06\\x1f\\x087\\xd0\\xd0\\x85\\xc4\\x85\t-N\\xb0d\\x08\\x13;6S\\x03P\\xf7e#Xp\\xfc[\\x19\\x9f\\x1f\\x9f\\xc4\\xc4\\x94f[<75\\xf4\\x08\\xc2B\\x19\\x1d=v \\xb3\\xc3q\\xd4\\xe9\\xe8\\\"\\xc8\\x8a\\x87n\\x12\\x1e<Al\\xab\\xbe\\xcb\\xbc\\x0e\\xb7\\xc4:\\xbd3\\xa6\\xfe\\xae\\xbe\\xbe\\xa9\\xdb\\xfe\\xef\\x1ai\\xd1\\x9c'F\\xaca\\x9c\\xc5\\xb3\\xe6\\xd1\\x1c\\\\\\xe1R\\x82;\\xd48Q\\xba\\xc4G\\xc6\\x80\\x88\\x94\\xe6D\\x88O\\x94\\x9e]\\xb4\\xa3\\x0f\\x87p\\x00\\xa7< Q\\x16.\\xbcp\\x1a\\x90iN\\xd5-d\\x90\\xf0&\\x0b\\xaf\\xe1\\x93n\\x14\\xe6\\xb5bQ\\x8bb\\\\h\\xd7#\\x0bG\\xe3!4\\xec\\xdd\\x98xI\\x14\\x0e\\xc17\\xa3\\x08\\x8e&\\xc6\\xd1\\xd0\\xd32\\n\\x08w\\xb3\\xc1\\xa8u\\xd2O\\xdbz/\\xc6*\\xfa\\x87X\\x9e\\x9a\t#\\xf2\\x0d\\x8d\\xe7\\xdf\\x11\\xbb \\x18\\xc0\\x107x\\xda=\\xf7$\\xd1\\x03!N\\xba\\xb99\\x17\\xe9\\xae\\xab\\x08\\xe5\\xd4a\\xd4Q#F\\xf1c\\x8c\\xc7\\xd0\\xe1\\x18\\xcd\\x1d\\x8dp8\\x9f>\\xe1&p\\xd4p\\xad\\x9a\\xde\\xde6\\xf6\\xb6)\\xfe\\xea\\xb1QF\\xac\\x1c\\xe8\\x7ff\\xaba\t\\x9c\\\"\\x1c\\xa7\\xf2\\n|\\xb9\\xd8)\\\\\\x83Rm\\xd0I\\xa0\\x12\\xddS\\xad\\xb7~\\xedJ\\x9d4\\xc2n-\\x05S\\xab\\xc2\\x85t\\xcf1S\\xb4\\x8d?X\\x184\\x84\\x01\\xe9\\x9e_\\xd1\\x02\\xe2t\\xcf\\xd7,F\\x1d\\xe9\\x9e',{\\x04\\xe1+l\\x13\\x86y\\xa4{>\\xe1\\xc6\\x94\\xf4\\xa0xe\\x13\\xd4]\\xd4\\x8e\\xfcu\\xbb\\x91\\xbb\\x86\\xc8g X\\x9a\\xb0{\\xae\\x0d\\x05\\x0f\\x18\\xec5\\x9f\\x14\\xde\\x90\\xf39\\x19\\x8e\\xdf\\xfac\\x17\\x03M\\xb2\\x00\\xf6bc\\x15\\x87\\x1fL\\xd0\\x88\\xe7\\x82\\xeefd\\x1e\\xa6\\xe0\\xa7\t\tf\\xaa\\xa9\\xa4\\xfc \\x9c_\\xa2%\\xd5A[\\xe6\t$!\\xbd\\xf9,<\\xbf\\xd2zGV\\xaaM\\x87\\xba\\x84\\x82\\xf2c\\xe0\\xca\\xc5\\xd3\\x8ec\\x11\\xe6\\xa1\\xf4<~\\x8d\\x07L\\x1f\\xcf\\xe6\\x13\\xfe\\xfb.\\xd9\\x80\\x93\\\"\\xf3\\xed\\xadO~g\\x88y\\xc39\\xfa\\x87\\x0c\\xfd\\xfb\\x14\\xbfC\\x17\\xb6L\\xe3m7N>\\xbe\\xfa\\x89\\xb4X\\xbf\\x86\\xb5\\xbb1\\xce\\xbf:o\\x85\\xc9(V\\xfc\\x12\\xf7\\xfaq\\xed\\x86\\x9d\\xf2\\xa8I\\xc7.\\x88Ma\\xb9`\\x9d/,\\xc7\\xc5t\\x14\\xae\\x1c\\xd5\\xbaU\\x14\\xa3\\xd4F4a\\xed\\xe6\\x98\\\"\\xfeT\\x88K-\\xd0O\\xca\\xf1\\xb4\\xcb_\\xe6\\x7f\\xdd\\xb8\\xec\\x107O\\x92\\xa9\\xf9r\\xce\\x0e\\xff\\x92O^\\xf6&\\x91U\\x97\\xe5l\\xe5\\xebJ\\xe5\\x85\\\\\\x991\\x8a\\xc5\\x80\\x9c\\xb2-\\x8f=\\xd8\\xddw\\xecc\\xd9\\x86V\\x1d\\x1f\t[\\xc4\\xfc\\x16\\xa2\\xdcO\\xb6\\x88uu\\xac\\x0b\\x97-\\xac\\x8f\\xa8\\x0c5\\xd2\\x8a\\xa9\\xec\\xca\\x19\\xf7\\x06\\x15\\xb0\\xca\\xb5F\\xe5\\xd4\\x83\\x94\\x92s\\xe9\\x07\\xd9\\x18z\\x16\\xf3?\\x87\\nL&R\\x08_\\x0e\\xe3<\\xf0\\xa8\\xa7\\x96a*\\xdfW|\\x1e\\x98\\xb8>\\x14\\x12Jy\\x9d\\xcb\\xfb\\x08\\xd1\\xa5\\xce.\\x03\\xca\\xd6\\x89L\\x85\\x90\\x8f\\xd3\\x88C\\x8e\\x12.\\xcd\\xa4\\xa0\\xc6x\\x1a\\x8f\\xab\\xd8%\\xb8\\xc2\\\"];?Q\\xf0z\\xf45\\xc6[\\xc8\\xb3\\xf33&\\x05KNx\\x89\\x8c\\xcd\\xe7]*s\\xfe\\xd4\\xe6\\x828\\xc5\\x93\\xed\\x18\\x97\\x13\\x7ff\\x94\\x83\\xe6\\xc1\\xe9Q\\x8d-\\x1b\\x9e8.\\x04v\\xd0\\xfd\\n:\\x10t\\xbf\\xc5\\xff\\xbf\\x80\\x7f\\x86\\xadK\\x15!\\xdf\\n\\xa6\\xe8\\xb8\\xf41\\xb3&\\xb5eZ\\xc1\\xad\\xdd\\x1f8\\xb6\\xfcJD\\xa3\\xcb\\x0d\\xddY\\xc7\\xa7\\xa5.%z\\xa3\\xce\\x8d\\x82\\xa7i\\x91\\x05\\x83\\xf4\\x93\\x8e2\\x81\\xa4z\\xea\\xb9\\xb9\\xb4\\xef\\xb0\\xe8\\x9bzD\\xab\\xc0\\xa9\\x18\\xae\\x8dl\\xd3\\xd6\\xa5S;j\\\\\\xef\\xa6a\\xf3Q]\\xd9\\xf9\\xe6\\xc8\\xd7\\xed\\x98'\\x93i\\xc0S\\x05\\x92\\xf6%\\xd3\\xd4\\x0fv\\x1fJV\\xf0\\x95\\xbe\\x8f\\xbb\\xcc\\xc0\\xb9\\x8b;\\xc8~#\\xa3E\\xdd\\xb4\\xbc h\\x9a\\x92\\xcc\\xaa\\xeaO=F\\xb5L\\xf6BxsQ\\xaf\\xbe\\xf1y\\x15\\xb3\\xca&j/\\xa9\\n::\\xd6\\xdc'\\xcaO\\xa4\\xb7\\x9b\\x93\\x1f\\x8a\\xe8\\x86\\x14\\n\\xf4YSZN\\x8f\\x91\\xf6zV\\xb4\\xb0\\x82\\x11D\\x9dN3\\x07\\x98\\xd4\\xa4p\\x10O\\xc8(/#\\x81tov:n\\xa1-\\xa3\\x18\\x81$\\xb2\\xfd\\x08\\x01;\\xa6\\xacE\\\"\\x98\\xf4\\xb1w\\xc6(\\xdf\\xf6vFKb;l\\xe2\\n\\x8dB3p4\\x97\\x9a\\xd2\\xd6\\xbb1o\\xf9\\xa8\\x8bG\\x97oG\\xddu\\xdb\\x83%\\xf6&\\x8d{\\xf7\\xae\\x10\\xdd\\x8c\\xc5\\xfe\\x06X\\xbc9nUW\\xbd\\xd8vP\\xa3\\xcd\\xd3\\x88\\xb7P\\xbf\\x02>[\\x81\\xd8\\xf6\\xebV@\\\"A\\xf8\\xf3V\\x97\\x83L\\xe9\\xa5N\\x9dgp)\\xdd\\x1c\\xa0\\xda^\\n \\xc84<<v\\xb3\\xea\\xdf\\x11B\\x07\\xac!\\xf8\\xe1$\\x8aczZ\\xfb\\xe1:\\x9a\\xa05\\xd2\\x1dEJ\\x90L<\\x0dqM*\\x1e\\x06\\xdc\\x9exW\\xbd<\\xe3\\xe7\\xadz\\xe3\\xc8n\\\"+Wj\\xdc\\xbb\\xaer\\xa17\\xd1\\x04\\x1a\\x9c)\\xce\\\"\\xfc\\x86\\xa3n-\\x02\\x17V:\\xf6i\\xe1\\xc2\\xd4\\x85\\xb5+\\x8c@Vp\\xd0\\xac\\x17\\xaa\\x80V<7\\xa8\\x8a\\xd6\\x99;/\\x99;\\xac\\xcb\\x920\\xe7\\xea\\xb6J\\xbds}\\xe4[-\\xc3<\\xbf\\xad\\x8f%\\xaaR\\xed\\xb9\\xa3\\x9b\\x1f\\xde\\xa8,P\\x83\\x9f\\xa7Nz\\x0c\\x0bx\\n\\xe7\\x8f\\xe1\\xdcdZ\\x8af\\xa5\\xd7\\xc0\\xec\\x0f\\x96vfO1\\xe4\\xf8\\xf9\\x993\\xee\\x9d\\xb90\\x1d\\xf7\\xcf(\\xe7\\xb7\\xb4\\xf1\\x9dS\\xb8\\xe0^\\xe3\\xcfYnwz]\\xde\\x8cz\\x9bWv\\xeb\\x03#\\xa1\\xcbK\\x9d\\xc7\\xb0\\x85]\\xae\\xbb!\\xf9\\x98\\xda\\x8e\\xd3\\x9dF!1\\x98\\xdf\\xe6\\x83\\xf5\\xed\\xb5\\x0bK\\x17\\xa6\\xcc\\xb1\\x8bn\\xeeVC\\xbbq\\xba\\xcfN\\x8e\\x0f\\xbf\\x06\\x96+\\xbc{r\\xfc\\xee\\xfd\t\\xea\\xa06\\xdbb}S\\x80\\xbc*\\xfe\\xfa\\x15\\xf1\\xb1.\\xb2!^W\\xd9\\xf4\\x94B\\xf0\\x87\\x1c\\xfcD=\\xb6rI\\xd7(\\xdaE\\xb8\\xb3X\\xb3U\\xc2\\xca\\xd0O\\xa2^\\x11#\\xb0Q\\xee\\xb9\\xe6\\xaa\\xb7\\x8d\\xffT\\xfe\\xd5\\x1aV\\x15\\xeb!?7-\\xa9\\xf3\\xe55\\xda\\x95\\xb43\\x1a\\xe1\\xf0\\x94f\\xc8\\xc2\\x7f\\xc6\\xccX\\x86\\xa9\\xf0\\x98\\xcb\\xae\\x7f\\xc6\\x15z\\xb7\\x9d\\xa1\\xd6g\\xb6y\\x86\\x08\\x1a\\xfd\\xbc\\x98\\xb4\\xf3\\xff\\x11w\\xe5\\xb6\\xe7\\xa6\\x8eJ\\xc7\\xb9\\xaa\\x83\\x99\\xa9\\x9711\\xb9\\xf2\\x19\\x12\\xe79y\\xaa\\xb8\\x8c\\x89\\xf3{\\xb5Y\\xec\\xd1\\n\\xdb\\xc6\\x88l\\xfc~Q\\xc3J`;\\xfd\\x16\\xed`Zu\\xa9-\\x97%Z7\\xb48h\\xd9\\xa2\\xcb\\xb2\\xa4W\\xda\\xe5\\xef\\x0d\\xad\\xefl\\xd4\\xba\\xcb\\x12\\xa3\\x1b\\xfa\\xe0\\xa5\\x86\\x9evo\\xd1\\x13\\xfd\\xffNC\\x7f\\xbc\\x8e\\x81\\x94H]\\xa4<\\xec\\xfa\\xe7\\xf9\\x9e\\xe97\\xa2\\xd6\\xa8\\x88n\\xc1\\xb8\\xfb*K\\x91\\x0b{s\\x91\\x90xMb\\x14\\x12\\xba\\xdf\\x92\\x8b\\xaf\\xfdT-\\xabrI\\xb1\\xde*\\xc8\\xc3\\\"\\xadUP\\xa2Z\\x05\\xa1w\\x91\\x9d5\\x9d'Z\\x0d\\x928c&m\\xfc<cm:N<\\x91\\x13F\\x1a\\xd1\\x13\\x8ei\\xe3\\xc4\\xcd%\\xde\\x9c?\\x86\\xf4\\xb1\\x89\\xa3b\\x97\\xc3\\xb3\\xd0e\\x06\\x97x\\x8a\\xdf\\xeab\\xc5n\\xd0\\xa3k\\x83\\x88\\x8b\\x87\\x1dg)\\xde\\xf7\\xb2\\x94\\xb9\\x85\\x865\\xd6\\xb7[y[}Sj\\x85\\x03\\x84\\x99J\\x94\\xd1\\xb9\\xca\\xa3%N9\\xb5\\xadn\\xec\\x19\\xc2\\xea\\x9d?\\xb9\\xb4'\\xb5\\x0dbfa\\x94@\\\"\\x86\\x9d\\xa1\\xb7\\xf6\\xe7^*\\xee\\x94\\xf3?\\xbbT8\\x99zA\\x14\\x92*01\\x0d\\x03\\xfd\\xc0\\x13B\\x9a\t\\xa0\\x14Yf\\x18_E\\xc8w\\x86\\xeb\\xab\\xc6)\\x8ag\\xc6\\xc4\\xc3I\\xeb;\\x88\\\"\\x9brc\\xfb~~\\xc5\\xa3i^\\x07I\\xfd\\xee\\x08\\x98\\xf2A\\xdb\\xc5\\nF\\x90\\xbb\\x153?\\xdew\\xe4c\\xfa:\\x9a\\x12\\xdb\\xd2\\xdd\\xed1\\x95\\xe9\\xc4\\xe9F\\x8cr\\xd8+\\x9d3:}&\\x0b/\\xf6&)\\x89\\x9f{\\xa9W\\x892\\n\\xc05\\xa5m\\x00\\xb1\\xeaN\\xbd\\x94R\\x1e\\x9cJ\\xd0\\x80\\xdfZ\\x1a\\x9c\\xf7\\xa1\\xddlk\\x9eeL\\xdf\\xfd,\\x1cBlPc\\xa0\\xd7=\\xdbIMK\\x04\\xb8\\xef\\xd0X\\x04\\xf7\\x07F+u\\x19\\xab\\x86.\\xe1\\xbeK\\xf7\\xb8\\xc3\\x9c\\xd6}\\xc3\\x9c6<6v\\x9a]\\xaa\\xf4,Nn\\xc5\\xe6S\\xb9\\x9f8\\xcc\\xc1\\xcc\\xa7\\x87\\x9eO\\xd9\\xf7;\\x91\\xec\\x9b\\xcc\\xf9\\xf5\\x87^\\xc5\\x0d\\x9b\\xb3\\x9c\\x06a_6\\xe5l\\x82\\x85\\xee,B/\\xf4Jb\\x17f\\x84\\x82\\x06Od\\x9c\\xa1\\x11\\xb8\\xdf\\x9d\\xf14\\x00\\x1a^\\xaf1 \\xefFqSR9\\x9e\\x84x\\x94mpkV\\xa3\\x8e\\xbb\\xf7\\x15Ej\\xf5\\xe8\\x13\\x12\\xda\\xf8\\xc1\\xd98>S\tl\\xc4\\xe5\\xb6\\xa6m\\xef\\x97m\\xe2\\x81\\x8d\\x9fIN\\xb38Z\\xdaQ\\x83\\xad\\x0c;7\\x07F\\x90\\xe8ma[[\\xd6\\x17\\x01T\\xb6\\x8a\\xb4\\xe3\\xaa\\x86Y\\xe8\\xcf\\xd5\\xf7z~A\\x02\\x9c\\x9e\\xd8\\xa0g\\xbf\\x06\\xa6\\x90\\x1f\\xb9MP\\x85:\\x9f\\x00\\xf10\\x0f\\x80\\xb0\\xba\\x00\\xe2\\xd1\\x9cj.\\x0el\\x83\\xee3]\\x1b\\xa9\\x1d\\xd5\\xdczk\\xe9\\xfa\\x9d\\xa4\\xa9\\x90\\xc8\\xa5\\x9e\\xcbV=\\x00\\\"-u\\xe2\\xf4\\xa6\\xa2.\\xe4~\\x0e\\xbb\\xfb\\xd2\\xba\\xc5v\\xdc}\\x0b\\x1d\\x88\\xbb'5wJ3?\\xf4\\x82\\xe0\\xba\\xad\\xba=\\xe3\\xb7\\xc4~\\x1e\\xc1\\x9aJ\\xc2\\xe2\\x0f\\x83\\xae=4\\xddjk\\x98\\xdd\\xca}q(\\xab&\\x8d\\x96\\xd7\\xfc3\\x8fRGT\\x84\\x95/R\\xea\\xf8\\xab\\xca2\\xcb\\x8f\\xce\\x9a\\x8c\\x8al\\x94\\xad\\xf8\\xc2\\xe3\\xe2\tu6\\x1a\\x96\\xf9\\xae\\xf2\\x0b\\xa2n\\xc5\\x7fD\\x84?\\xd8S\\xb0\\xf1\\xb4\\x06\\x0f\\xd3\\xb85\\x0e\\xd2C0\\xd5g\\xe0\\x86<\\xd1\\x97\\xce\\x9eV\\xdcB\\x87]\\x82\\x86\\xed\\xfc\\xee\\x7fX\\\\\\xc68v\\x88\\x97$\\xcd\\xd7\\xd2m\\xe0\\x19\\xda\\x83\\xbd\\x01\\x8f=\\xb7\\xc3\\xff\\xdd-\\xc7\\xaa\\xdb{\\xc0\\xff\\xe5\\xb1\\xea\\xf6x\\xac\\xba\\xfd\\x1e\\xff\\x97\\x7f\\xbf\\xcf\\xbf\\xdf\\xe7\\xb1\\xed\\xf6\\xf9\\xf7\\xfb\\xfb\\xfc_\\xde\\xce>og\\x9f\\xb7\\xf3\\x80\\xb7\\xf3\\xa0\\xcf\\xff\\xe5\\xed=\\xe0\\xed=\\xe0\\xed=\\xe0\\xed=\\xe0\\xed=\\xe0\\xed=\\xe0\\xed=x\\xa4\\x8d\\x9d\\xc7|j\\xdb\\xc0\\xa2\\x11\\x8b*\\xbeNQ\\x1ep\\x13\\x8f\\xe3#\\x1e\\xae\\xb2J\\x10\\xe5J\\xd1\\x94\\xa0\\x17\\xb0\\x82xH\\x06\\xd1z`\\x8b\\xd9\\xb5\\xf71\\x9eJ\\x1e\\x16#\\x8f\\x1dR!\\x8fr\\xa3M\\x08\\x9a3\\xb4\\xdc\\xe4r|\\xe6\\xe2\\x9c\\xf3\\xccPy\\xa4\\x9c\\x8c\\xf9\\xe9\\xc6\\xf0\\x142\\xb3v\\x80g\\xb9\\xeb\\x14\\x99\\xa52\\x8c\\xa2\\xe3Sj\\xd2\\xef\\xf7w\\xfb\\xfd\\xbe\\xc3r\\xf7\\x8a;\\x91\\x13/\\x9c\\xf3K\\x11R\\x8e-\\xbe\\xf6\\x02\\x7f\\n\\x93hJ`E'c2\\xab\\xe4w\\xd4\\x04\\x9e\\xb0H\\x9dp\\x80\\xb1~0B,\\x8b\\xe4\\xd9\\x01\\xdb&\\xb0=b\\xe5\\x0e<}\\n\\xfd\\x1e\\xca\\x14\\x7f\\x84~o\\xb0\\x0b\\x1d\\x16\\xffS\\x97|\\xcc\\xb4'C\\x9eSP\\xcd\\x9c\\xbb\\xe1\\x8ek\\xc22CT -\\xa52`D\\xec]\\xb5\\xc7\\x03\\x16;\\xa3\\x1b{W\\\\\\x10\\x8d\\num\\x1dnP\\xcc\\xf1\\x18\\x8e\\x84\\xf0\\x14\\xbc\\xc7\\x0edl]x\\x08Z2\\xf6:\\x9d3\\x07\\xe3D<a\\xfa\\x95r\\x85\\x02g\\xbc\\xb3\\x1a\\xcb\\xb4\\xecn\\xe0\\xae?9(=\\xdbsl+\\x8d\\xfd\\xa5Uw9\\xaeJ\\xd0:\\xa0\\n\\xc6\\x803 ;\\x9f7\\xe0&D\\xa9\\xa4\\xb7\\xe0\\x88\\xa2\\xd6\\x16i,T\\x97H\\xbax\\xd6\\xd8\\x82\\x0ed,\\xc6fU\\x91yB\\xe6\\xc7\\x1fW\\xb6\\xf5\\xff\\xa7\\xb5<\\xfe\\x9f\\xf5\\xcf\\xaa84)\\xaa\\x16\\x95\\xfe\\xa0\\xd6\\x9a\\xb5\\x90\\xb7AVCh\\x92\\xd8\\x01\\x1fw\\xd4\\x8e?\\x11\\x12\\xc9V6N\\xcfl\\xe6\\x87\\xf7\\xdb\\xaf\\xff\\xcb\\x7f\\xfa\\x0f,\\x82)\\xff\\x89e\\xda6n\\x0c\\xe77\\x85\\x8d\\xcf\\\\\\x96=\\xbc\\xd0\\x0b0\\xaapE<\\x06<\\xeb\\xef\\xdd\\x03\\xdbg\\xb9\\x9e\\x13\\xf4\\xd6\\x16L/\\xa5\\xf6\\x9e\\xbc\\x8d\\x15\\x1b\\x17\\x05\\x00\\x01\\x05`\\x97bj\\x93\\\\\\x06\\x122\\xca1\\xa1\\xf1\\xda\\xaf\\x0f\\\\d\\xb7S~\\x85\\xb8\\n<\\x16 \\xd9\\xb2h\\x85\\x81\\xa1\\xc2DTP\\xbc\\xa2\\x0d\\xea\\x04-\\x8e\\xcb#\\x95k[?\\xa4?\\x84?\\xac\\x7f\\x98\\xfd\\x10\\xc3\\x7f\\xfa\\x8f\\xff\\xf9\\x7f\\xfb\\xf5?\\xff\\xc7\\xff\\xf5\\xb7_\\x7f\\xfd\\xed\\xd7\\x7f\\xff\\xdb\\xaf\\xff\\xcdo\\xbf\\xfe\\xb7\\xbf\\xfd\\xfa\\xdf\\xfd\\xf6\\xeb\\x7f\\xf8\\xed\\xd7\\xff\\xfe\\xb7_\\xff\\x87\\xdf~\\xfd\\x1f\\x7f\\xfb\\xf5\\x7f\\xfa\\xed\\xd7\\xff\\xf9\\xb7_\\xff\\x8f\\xdf\\xfe\\xfd\\xff\\xfe\\x7f\\xff\\xfa\\xeb\\x0f\\xd9\\xa07x\\x88\\xff\\x7f\\xf4C6#\\xb3\\x99\\xd5f\\x87\\xdd\\x92\\x99\\xdc\\xd9\\xc7\\xf8l\\x8a\\x18c&\\xc7\\x13q8\\x1f6\\x1e\\xcf\\xe2\\x96\\xb8\\xd1\\x88\\xb9\\x15\\x05\\xb9\\xdd\\xfcL\\xa1\\xc2z:\\xc2bY]\\x12N1\\x03\\x90N\\xac\\xa3\\x18N?\\xddulK\\xd4\\xb3jx\\x19Q\\xa7\tN\\xeb<\\xc7{*2\\xe0\\xcb\\xedk7m\\xa89\\xca\\xe0)\\xf4\\xe1@\\xca\\x8b\\xd9?+\\xec\\x94\\xb5\\xad\\xc4x^\\x92\\xfahe\\x9er+\\xca\\xb3/\\x89\\x00\\xf9\\xb6\\x8f\\x96\\xcdq\\x0du\\xe1[\\xb6FD\\xc8\\xe0\\x00\\xb2<\\xebf\\x82\\xe99\\xa9\\x98\\xc0\\x1ct<\\xd8\\x86\\xe2\\xbc\\xf6\\x98\\xf1D\\xf2\\x0f\\xc0&\\x8a6M\\x98\\xc13\\x0c&u\\x98!\\xea4aFN\\xf2\\xff\\x9d/\\xe1F\\xd1C\\xd7\\x0f\\xa7\\xe4\\xe3\\x1b\\x0c\\xfb\\xb8\t6|\\xdeN\\x94\\xa1\\xd4\\x9an\\xc4dE\\xbct\\x88\\xb2\\x92l\\xf2\\xdd\\xaa\\xc7\\xa6\\xd5\\xdaS\\xb599Sq[\\xedpq\\xcaP\\xc1W\\x83\\xdb\\xa8c\\xb1\\xaa\\xef#\\x1e\\xe0\\xb4\\x8c\\xea\\xcc\\xab\\x94\\xe7\\x19\\x88`4\\x82>\\xdc\\x87\\x9eF\\x8a\\xb0\\x8e\\xa2,L\\x0b\\xe7\\xac\\x90\\xcc\\xbd\\xd4_\\x13U|\\xe0\\xc1\\xf8\\\"x\\xaa\\x1ar\\xf1\\xc7\\x8e\\xe0\\xe9\\xd3\\xa7#\\xe8;\\xdc\\x9b\\xb53B\\xc3#zb2\\x07\\xd7\\x90\\xbdz\\xac\\xac\\xd3\\xef\\xa7\\x84\\xdb\\x948\\x17\t\\xda\\x9a6aQ\\xb3n\\x1b\\x16\\xb5\\x9a6\\xa2\\x8eD\\x97\\xfa\\xd0\\xad\\x00\\xe2\\x88o\\xe7\\x84r\\x93\\x1d\\xea\\xe6\\xe1DM\\x99/\\xe2[\\x10\\xd6\\x18\\x97\\xad \\xac!\\x15\\x92(\\xec\\x84E\\x0b%\\xac\\xf1g\\x11\\x07\\x93dBW\\xc5\\x0b'\\x8b(\\xdeH2\\xa9\\xe5\\x06\\xf9b`\\xd4z+\\xf4\\x96\\xc4\\xaaK\\xec\\xf9\\xd9\\xc3\\xbf\\xf0\\xe7\\x1b\\x8d\\xbd\\xcd\\xd0Y\\x9b\\x16\\xfe\\xf7\\x05G\\x1e\\xf8\\xe1\\xe5\\xdd\\x8f\\x9d\\xb7\\xfa\\xc5G\\x1f\\x05\\xd3\\xbb\\x1f\\xfc\\xef0\\xf0\\x99\\xff\\x91\\xdc\\xfd\\xc8\\xd3\\xf4\\xf7\\x18z\\x14\\xa6\\x93(\\xf8\\x12\\xbb\\x956MG/\\x9a\\xff\\x82;\\x96v\\x95\\xf8\\xbf\\x90/7\t\\xde\\xfa\\x17\\x9c\\x83\\x9fz\\x81?I6\\x9aB\\x9b\\x19\\xf8\\xbf\\x03\\x16mLvZ\\xc1\\x1e\\xc9\\xfd\\\"&\\xb3/\\x0b\\xf8d\\xe9\\x05\\xc1F\\xa3o3x\\xd1\\xea\\x97\\x06=}}\\xb9\\x19\\xe2\\xb7\\x1a\\xbeh\\xf6\\x8b\\x8f?\\xbb\\xb8\\xfb\\xc1g\\xbf\\x07\\xd5O\\xb2\\xd5\\x17\\x18\\xf9\\xea\\x8eF\\x1e\\xda\\xfb;\\x8em-\\xbdt\\xb2\\xb0\\\\\\xe8\\xd7\\xd7\\x96\\xc62\\xce\\xebi\\x15\\x9dz\\x88\\x88GH\\x02i\\xddE\\xa2/+\\x1aP\\xcf\\x90\\xe7_\\x0b\\xc7\\xc4\\x9c\\xdaB2\\x9b\\xf7\\xe1@\\xd8\\xd81\\xcf\\xa8!\\x9a\\xb7q}n\\xe8\\x8c\\xc9\\x99P\\xd8\\xc7\\x95X\\x1f\\x10n\\x9a\\xd5\\x9f\\x03\\x93\\xeb\\x14-\\x17\\x06\\xb7\\x00g\\xecV\\xdd.\\xa0\\x15D\\xa3&\\x88f%\\x88\\xc62D\\xe3\\x96\\x10\\x95\\x04\\x88\\x18C\\x95\\xf9\\x08T\\xf6\\x86\\x832rX\\xe8\\xa5;\\x03hB\\xbc\\xf8\\xdf\\xd0\\xf3\\xce\\xa0\\xb9\\n\\xfcT\\x8b\\x9c\\x15\\xcbI3\\x98\\xc4EFh\\xf7wUc=\\x10z\\x8f\\xeakv\\xb9\\x867eU\\x8d\\x885A\\xe3\\x14\\xcb\\xbb\\xb8\\x98X<s\\xc4}\\xfb\\xc2\\xf9\\xe7\\xfb\\x0e\\x95\\x85?}\\x82]\\xbc\\xdaHI\\x92\\x16\\xe5\\x07C\\xe7\\xbe\\x0b\\xdb}\\x11\\xa7\\x89\\xd6\\x1b`=\\xefB\\xae\\xe5aCR%\\xd6X\\xb7\\xa8\\xd3=p\\xe8\\x7f\\xa5Jr\\xb9cKeTX\\xa7\\xe5yq\\xf7 /\\xd4a\\xdc\\x9a;3K\\xaa\\xd3\\xfb\\xb6spp\\xbfK>\\x92\\x89mYt\\x8e\\x1a\\xa4is\\x1d\\x02\\x92%\\x9a\\xd0\\x01\\xe8\\x03\\x01@\\xd9\\xd7f$\\\\\\x8bx\\x12\\x9d\\xdc\\xceMM\\x86\\\"\\x7f\\xbb\\xe5\\xcb\\xa9\\xd3\\x8a\\xa8x8:\\xfdgkf\\xc2\\x9f\\xb80\\xc1p\\xd3\\x01\\x0b\\x8b_\\xe7u\\xbe`\\xa1;\\xfdy\\x18\\xc5\\xe4\\xc8\\xc3`}\\x96o\\xc1\\x90\\x1ey\\xd0\\xa1e\\xcb,H\\xfd\\xc0\\x0f\\xb1hY*\\xcaB\\x1f\\xaf\\xda\\x0f\\xc0\\xcaJ\\x05I\\xeaO.\\xaf\\xe9\\xfbk\\xfe\\xde<\\x84i\\xbd\\xd3\\xfb\\xba\\xbc\\x9a\\xb4\\xb3\\xdd\\xc1\\xa3\\xddG\\xfb\\x0f\\x06\\x8f\\xf6\\xd0\\x8e\\xff\\xe9\\xd3\\xa7u\\x0d`4\\xd9b\\xbf\\xa7\\xdd\\x04\\x83\\x9c\\xbb\\xb0\\x80\\x0eXs\\x93\\x85\\x00\\xaa\\xfaX\\xf0\\xaa\\xb8\\xdc\\x02\\xbb\\xcb\\xbc\\xe6\\xed\\xd0F\\xfe`\\x1fl\\xfd\\xf0C\\xe2X.,t\\xd7\\xd0\\xf9\\x83\\x0e\\xec\\xd7\\x0c\\x17y\\xc0\\xce-\\xdb\\x9e`(1\\xd4*C\\x07\\x92q\\xef,\\xc7\\xf0\\xa70E\\xad\\xe1\\x8aG3\\xe1*\\xa4\\xa9+>p\\x1c\\x17\\xb6\\xd0h\\xbf\\xa4\\xe0\\xc2\\xc4\\x1f\\xbd\\xb3\\xfc\\xe2-v\\xebY\\x9f\\xd2\\x83S\\x0f0\\xd0\\x00\\x04\\xf0\\xa4\\xaa\\xe4\\xde\\x86\\xc1c\\x08:\\x1dG^\\x99B\\xa3\\x16\\xa0\\x15\\xaf\\x8d?FZ\\xe5w\\xe9\\xb9q\\xdc\\xea\\xe098\\x9e\\x141\\x15\\xf1\\xf2\\x9f9\\x00\\xad\\xe8\\x07\\x0c\\x12}\\x87g\\x89\\x90\\xc0\\xc6b\\xc5O\\\\X\\xe5\\xad\\x8e`\\xed8\\x8f\\x1d\\xb8\\xee\\x06^\\x92\\xbe\\xc4\\xb6\\xf1>\\x83\\xf7s\\xef\\x9e\\\\\\xa4\\xc6\\xf4\\x16\\x0f\\xdf\\x8cSv%S\\x84\\xf5\\xde\\x9a\\xb1\\x06(\\xc9\\xc4,<\\x9f>\\x01_1\\x96\\x93G]>:\\xe8bp\\xb0\\x86\\x03X\\xf1\\xb2\\x9e\\x0bk\\xfc\\xa42\\x02\\xc5,\\x99\\xb9*X=A\\x1a\\x85\\n\\xb3\\xe7H\\x10\\xb3[Q\\xb6\\xf2\\x99\\xa9\\x92+8\\x80\\xf1\\x19\\x0c\\x05\\x0d\\xcau\\xb1\\xaa\\x14\\xa8\\xd7iK,\\x82\\x81\\xe5\\xba\\x05Su+>@b\\xaa\\xc2\\x82\\xa9\\x8a+LU\\xa8c\\xaa\\xe2M\\xd9\\x80z\\xe5|f\\x87\\xf6\\xe0a_U3\\xfb\\xbchg0P\\x8b\\\"^\\xb4\\xd7\\x7fHIL^&\\xc6\\x80A\\xf1\\xf5\\\\\\x1a.f\\xda=?'\\xc9\\xabh\\x9a\\x05\\x18G\\x1e\\x86\\x9a\\xa5\\x98\\x92\\x99\\x97\\x05\\xe9P\\xbd\\x9f\\xff\\xa7\\xea/q\\xd2\\x8e\\xfd.\\xff\\xca\\x85\\xa8\\xf8i\\xa46|L\\xd5\\xbe'\\xd1r\\x15\\x85\\x94\\x80\\xe8F\\x06\\x98{B\\xf8.}\\xe3]GYJ\\x17\\x8fw\\xd8\\xb4Y\\x8a\tH\\xa8\\\"_Ny\\xb7_S}\\x8eW\\xe2\\x82U@\\xbcr\\x0b\\xc2\\x03\\xc7\\xcb\\xe1\\xea\\x9d*\\x9aLl\\xca\\xf9=\\xd4\\xa1\t\\x16\\xed\\xf5th\\xc2\\x8a*\\xc8\\x95\\xe5E;j\\x91\\x97\\x17\\xed\\xabEI^\\xf4@>\\xda\\xf0\\xd5\\xfe\\x9e\\x1e\\x15'\\xbf?*\\xcej/\\x18\\xf3\\x91\\x91:\\xc1\\x9f\\xd2\\xde\\x1c\\x9b\\x1dN\\xe8\\x88\\xe3bA\\xa6\\x16\\xd8\\xa4{~\\x8e\\xce\\xe7\\xe7\\xe7\\xc8&\\xf4\\xdc\\x02\\x1f\\x1d\\x9b8\\x0e?\\xadX\\xf5\\xfcxTE\\x0c\\x1d\\x98h[\\x9e\\xd4\\x96\\x0b)\\x1fFTz;\\xae\\xce\\xe5\\x92\\\\\\x0f\\xc1\\x8aI8%\\xb1\\xe6\\xa6\\x94\\xe3]#3\\xb0\\x96\\xf3c\\xac\\xe2he\\x88?\\x03\\\"UFwN\\xd2#\\xb1\\x85\\xcduYd\\xf0dE&,!P\\x14\\xd74\\x1c\\xb3\\xd0\\x1fq\\xdc\\xa2.\\xdd\\x13\\xc4\\xb6\\x8e\\xa20\\xf5\\xfc\\x90T\\x1cn\\xe4'buO\\xa2\\xab\\xbaZ\\x99h1\\xa8\\xab\\xe5\\xb1Z\\x18\\xb57\\xb10\\x9c\\xa9\\xb9\\xf2\\x84U~\\x17\\xad.\\xbc\\xb8\\xa9\\xf2\\x8cU~\\xe6%\\x9c\\xde5}\\x10\\xb0\\x0f\\xa2\\x90r\\xeb\\x1f\\xbc\\xc0\\x9fzi\\x14?\\xf3\\xa6s\\xd2\\xf4)&t\\xe8\\x06\\x917\\xf5\\xc3\\xf9i\\xea\\xa5Y\\xa2F\\xb2\\x97\\x9f\\x05z/S~\\x89\\xdd\\x9f7\\xb0\\xf7\\x94GZP\\x04\\xb1\\xad%I\\x12oN\\x90+\\xb24J\\x01(6A\\\"P\\x9d;T\\xf2\\xdcQ\\xb6o\\xf2\\x94\\xa4\\xcf$\\xf0\\x92\\xe4\\xb5\\xb7$C\\xb0\\x92+o>'\\xf1v\\xe6[\\xda\\xfa7.L\\xe0\\xc0\\xd8\\xcf\\xc4\\xc5$l\\x0eO\\xc6\\xe6\\x82\\xc5\\xe1c!_\\xb4b|\\xaa\\xfe[\\xcc\\xed\\xddv\\x9c~8\\x8b\\x8c#\\xbc\\x93\\x1e\\xf8\\xc0\\xb7'\\xf9\\xee\\xf8=\\xba3t\\xe2`\\xf8\\xb7\\x99\\xe7\\x07d\\xfa\\xaf\\x12\\x94\\x8b\\xdd\\xd6\\xbd\\xa5~\\x1a\\x10c\\x0f\\xd6\\x0b\\x04\\\"\\xa4\\x11\\xd0a\\xc1\\xe1\\xdb\\x97\\x80l\\x88Oi{\\xd7r\\xcc\\x83\\xf08rKkq\\x84\\xae\\x95_dE\\xcc\\xe4\\x013A\\x9b\\x18>\\xf1,\\xbd\\x8f\\xdf\\xfa\\xd3t1\\x04\\xeb\\xe1\\xc3\\xde\\xeacM{\\xacz<\\xf7\\xc3o\\xc8,\\x1d\\x82\\xe5ei]\\xffE\\xfd\\x13\\x7f\\xbeh\\xf9AJ>\\xa6\\x87\\x81?\\x0f\\x87`M\\xd0\\xdf_\\xbfDP9\\xdf\\xf3\\xb7\\xff\\n\\xb01&\\xcb(%\\x85\\xc7n#NZ+\\xcb\\xe5\\xa4v\\x8a\\x88\\xb9\\xb5B\\xe5_\\x92MD,\\x8c\\x06\\xcc\\x9cq\\xac6\\xf7\\x11\\x89\\x1eL\\x15\\xb2\\xa6\\nA\\xbes\\xaa:\\x0dE\\xea8+\\x85H\\xba\\xb1\\x8b&sNIb\\xa9\\x89(m\\x1bl\\x8a\\x8a\\x90;\\x15\\x8f\\xa5\\x81\\xd3\\xd5\\xe6Am\\xd3\\xa2d\\xdc\\xa7\\xcf\\xff\\xd6\\xdf\\x91\\xad\\x96\\xa9p\\xf2\\xc8\\xb1\\xadrGV\\xb3\\xf4g\\xe6\\xd4\\xa5J\\xbe\\x92\\x86\\x14\\xe06\\x17o\\x83\\x87{\\x1a\\xc1J\\x02\\x93^\\x1ely\\x01\\x12\\xabb\\x9f\\xa8^\\x8c\\xb3\\xcd0\\x8ba\\xf5U\\xeb\\xce\\xc2\\xabk\\x8b\\na\\x94\\\\\\xb3qWvmy$C\\\\\\x1d\\xa7;\\xdb\\x10b2\\x10*\\xed3\\x89\\x8c\\x02U\\xbd\\x8d($\\xbaas\\x0e\\xb6\\xca\\\"=b\\x0ey\\x0f\\xf7\\xaa\\xfew\\xbd}\\xa7;\\x93\\xfd\\xe8\\xdb\\xb4\\xd8r\\x12\\xaa\\x01\\xeb\\xe7Mb\\xf0\\x88\\xbb!>\\xe2n\\x86|V\\x83G\\x0ft\\x9b\\xf4\\xf4zy\\x11\\x05m\\x9an\\xb2\\xf34\\xd8\\xe1\\xaa;\\x98\\xdby\\x1a\\xbc\\xad\\x0d\\xce\\xd6\\x03\\xb5q>\\xfeG}\\xa7\\xfb\\xf5\\xf1\\xf7\\xe5\\xb2\t/S>\\xe1\\xa9\\xe5\\xd4\\x1eXj\\xb9G\\xeaxXn\\xb9=\\xf55\\xcf-\\xa7\\xbc\\x9d\\xe6HR~\\xbf\\xe6\\xefU4\\xbd\\xe6#T=\\xe4\\xe6\\xfc\\xbd:F\\x9eV\\xae\\x82\\xed\\xec\\xb5\\x1a\\xfe\\x92\\xa5\\x94\\x1b\\xe83\\xcaU\\xb0\\xed#\\x9b\\xa8\\x1a\\xfb\\xee\\x94\\x81E\\x95\\xd6\\x8e\\xf9\\x08\\xd5\\xea\\x87|U\\xd5N\\xdf\\xb0\\xf7j\\xf5\\x9f\\xf0u\\xc5\\x0d\\xf5\\x12Fp\\xa8\\xe6\\x90{\t#x\\xa3\\xbe|\\x85i\\xe1\\x94\\x97\\xefP\\x1ed\\x18].9\\xc2\\x92\\xbf\\x9c\\xbey]~\\xff\\x16FpD\\x8f\\xf2\\xa3n\\x82\\xaaW\\x7fv]\\xaeqB\\x05G\\xdb:_\\xf8\\xd3)\tU\\x11\\xfc5+M\\xa3\\xb7\\xb1\\xbf\\xf4\\x99\\xadv\\xb9\\xc67\\xe8\\x00\\xa6\\xcd\\xb9_\\xae\\xf8\\x9c\\x92{\\xdbJp\\xf4\\xdb1\\x99\\xfbI\\x1a_\\xab\\xcd\\xfd\\\"\\xd7\\xaa\\xa4\\xb9|\\xc1J\\xa3\\xd5\\xb6\\xa1\\xc2{M\\x12\\xf3r\\x8dg\\xa6\\xf8\\x01\\xef\\xca\\xf5~F\\x88\\xfe\\x955V.\\xfa\\x1eF\\xb0\\xf53F\\x0e\\xffY\\xca\\x08\\xa0\\xfc\\xdd\\x9d\\xf9\\xe1\\xf4h\\xe1\\x07\\xd3\\xf2\\xd7\\xdf\\x02\\x8f\\xf18\\xa9w\\x8d\\xe3G\\xdf\\x03\\xd8\\x1a\\xc1\\xa9\\xfd\\xd2\\xfe\\xfb\\x0d7\\x0f\\xd33\\x91\\xed\\xe2\\xb1@\\xd1\\xf0K\\xd9\\xe4\\xac^0\\xe0\\xda\\xac\\x07\\xc6J7N\\xd7\\xd3\\x16V\\xd9\\xf2\\x1bG\\xad{\\xe3\\xc8\\xd1\\x0f\\x0c\\x8c\\x00H\\xa4\\xf8\\xd2~\\xaf\\xbf\\x9dE\\xd7\\xd5)\tHJ\\xe0\\xfd\\x98\\x9c\\xb9t\\x92\\xbc=\\x1e8,\\xc5;\\x8a\\xf7\\xf4\\xe7Kl\\xa6\\x12 \\xf9\\x06\\x86\\xf0\\xb2\\xbcd\\x1fj\\xb5\\x9e \\xd9\\xd0\\xff\\xc2|\\x0dO\\xedw\\x05\\\"\\x98\\x0d\\xd8\tK\\xa5\\x9bV\\\"|\\x96\\xbb\\xff\\x1aF\\xf0\\x8c\\x8e\\x98o\\x8b\\x12\\xd6v\\xc5\\x91]\\x02b\\x0dBi\\x1aI+\\x00h\\xd5R)\\n\\xf3\\xbb\\xba\\x19|\\xd5\\x82\\xd5+5<\\x12\\x8b\\xf4\\x95\\xfd\\\"_\\xc0%\\x8b\\xf2\\x0f#\\xb8\\xe2\\x19\\x8d\\xe8;Z\\xe2\\xdb\\xbf\\xe0\\x9d\\xdb\\x01\\xc6c\\xc8\t\\x10f\\xe4\\xa3\\xfd\\x9d\\xb0\\xbc\\x93\\xe3\\x93\\xb31a\\xb7\\xa6\\xe2\\xf7\\x88\\xe7\\xa8\\xc0E\\x0bM\\x1b\\xa1hr\\x08\\x1f\\xed\\x1e&\\xb6\\xd0a6\\x0c\\x8b\\x0e?}b\\xd8w\\xe2\\xc2G\\xbb\\x8fyv)\\x7fR\\xf4K\\x87\\xffm\\x0e\\x0d\\xfa\\xed\\xcb*_\\x0bU`\\xfe\\xa1\\xcd]\\xe3R\\xeb8\\x91;\\x93\\x87\\xcca\\xfc\\x9a'\\x82#th>K}\\xc2\\xa21\\x8a|\\xdf\\x11<\\x05\\xff\\xb1\\x03_\\xd9)\\x83R<\\xf61n\\x00\\x19\\x87\\xba\\x10\\x96b\\x05\\xeb&\\xf0\\xe7\\xd6\\xdb\\xe9\\x9b\\xd2](.|\\xcaRY\\x19{\\xde\\xc2\\xda\\x05\\x02!j\\xb0\\xbc\\xa3[>E\\xa6\\x94\\x19\\x04\\xd8[6#\\xd9\\x85\\x0b'\\xff\\xf3\\x17\\xf1[\\x94p\\xecY\\xf8\t]\\xbc\\xf4\\x0c\\x0b\\xd5k\\xd9\\xf2\\x14\\xff\\xd2f\\x8d\\xfc\\x19s\\xdc\\xbd\\xd0\\xe0\\xb5\\xa0S\\xf9\\x90\\x08\\x1f\\xd2\\x0b\\x16bY\\x8f\\xa7\\xc2n\\xe6\\xd2\\xae\\xb1_\\x11\\x80\\n\\xab\\x8dW\\xb6\\xca\\xa7O\\xca\\x8e\\xe2x[\\x8d$sS\\x07\\x8e\\xbf5\\xae\\xb8\\x1a\\xee\\xe2\\x95}\\xc1\\x9c\\xa0c\\x1e\\xc1 \\xe2\\x11\\x0c\\xba\\xa5\\xdc\\x8fl\\xf4\\x94\\xd9b) qe(e;\\xc9\\x7f%,T#\\x0bDa\\xc6\\x9b\\xb8n\\xfc\\xdfm<~N\\xc2\\xd8\\xf8_a\\xe0\\xa1\\x170\\x04>\\xa9\\x88OJ\\x84\\xee(&\\x95=v\\xc4\\x9a\\xe0f\\xcb\\xc4\\xacB\\x8e\\xc1\\xef\\xc5jElJ\\xbf\\x8cI\\xcd>\\x8c\\xca\\xb3*\\xea=\\xc3\\xa5\\xf5l\\xfb]]\\x14,\\xc4P\\xba\\x9ddB_\\x0d\\x99n1\\x96\\xb4\\x88\\x0f\\\"\\xe5(\\xaeDN\\x17W^+\\x9d\\xcfX\\xaf\\xe43\\xd6\\x93\\xbc:\\xdd\\xca\\x14\\x89<r\\xedq\\x02<\\x8bOA\\x0dx\\xca\\xb3\\x17\\xec@)op\\xf6\\xd7\\xf8\\xe4L\\xd0\\x0b\\xbb\\xd8\\xf2\\xe2\\x9c\\xf8\\xb6\\xb0\\xcb@\\xa2\\xaeK\\x87q\\xa35\\xd0@\\x96\\xef{\\xfa\\xbfo\\xe9\\x1a\\xa6\\xb7\\x8b\\xba\\x97P.Oa\\x16\\x1c\\x17>\\x94\\xd3\\x01\\xc9\\x19\\xa9\\xac4\\xca=\\x04\\x9b\\xf4E)K\\xc4\\xffOr\\xd3\\x87\\x98\\xb4\\xe8/.\\x15Q`\\x04_a\\xc4\\xa1\\xbd]\\x07\\xff:\\xc6\\xff\\xff\\x8d\\xbe\\xdb\\xe7\\xaf\\xfe\\x8c\\x15z\\x0f\\xd9_\\xdf\\xf1\\xf4\\x97[\\xa1\\xfd\\xf0!\\x02\\xd5\\xa3\\xb3\\xb7t\\xe2\\x82\\xe5\\xd2\\x8f\\x91\\xbcL\\xbb\\xf5\\x17\\xcd|\\xbc\\x1f\\xecEIuE\\xc7\\x9b\\xd9\\x19&B\\xca0\\x11R\\xc6T:\\xcfTh3\\x84\\x1dJ\\\\\\x8bl\\x17\\x90o\\xe6\\xbfRaa\\xe1%/9\\xfa\\xbb~r\\x14\\x85\\x13/=]\\xc5\\xc4\\x9b\\xa2\\x90#\\xf8/\\x17\\xcd\\xce]n\\n\\xe623_\\x97\\x87rt\\xd1x\\xc8\\x95\\xe4(W\\xac\\xcb;o\\xee\\xca\\x99\\xfd\\xb9\\x9d\\x91\\xe5Z\\xf4\\x18H\\x19\\x85\\xf8k\\xb1E\\xd2\\xf4\\xb1\\x03\\x0b\\xfb\\xaf\\xe34-'\\xbd-HP\\x8a\\xd9J\\x16\\xdd$\\x8dbB\\xa95o\\x85\\xa4E3!mfm\\x93t\\x1c*\\xedP\\x08\\x9e\\x96`\\xc7\\xf7w5\\xa0Q\\x14\\xb7d\\x15}\\xfb9=\\xd3:#4^<\\x80\\xe7tO\\x0d\\xd9?\\xa3j\\xea]\\x85\\xfc^\\x92\\xeb\\x17\\xcd]\\xa19\\xe7\\xd7h\\xceY\\x9b\\xd3\\xc1\\x03\\xc6\\x01W(\\x13\\x94\\xc3\\xed\\xf8!<\\xd7\\xdb\\xd3\\xd1\\x9e\\x9e#\\x177\\x92\\xe3\\xbb\\xd72\\xf1YBNI\\x9a\\x92\\xb8AJ\\xfb^\\x17I\\xb2\\xd2\\x92\\xbf\\\\\\x05M\\xf6\\x05\\xdf\\x97\\xb3\\xd7\\x01\\x94\\xf5\\xba\\xaen\\xa1\\x0d:O\\xa6\\x9ao\\x91\\xca\\xaej\\xe2F\\x99\\xf0S\\x1b\\x93\\x96\\xfd\\xc1>e\\x9cN\\xedb\\xab\\xfa\\xd5\\xafj\\x8a}\\x92\\x0c\\xe1\\x0f\\xe5\\ns\\x92\\xbe\\xb9\\n\\xc5\\xf7\\xcfI2\\x89\\xfdUJ\\xd1\\xe7/u\\x15_{K\\xda\\xd8\\xdf\\xea\\xea\\xb0m\\x90\\x0c\\xe1\\xbb\\x12\\x1cQ\\xc1R\\x06\\xa6\\xbd\\x85\\x07l\\x8d\\x88/\\x8e\\xc1wjxL!\\xa6\\x8d\\xc3,\\x08\\xce0\\xfe\\xcd[[p\\x9d\\xd6\\xdfo\\xf8\\x9b*\\xec\\xbd\\x8a\\x11\\x8f\\xf2\t[\\\\\\x85b:.X\\x7f9}\\xf3Z\\xe3@\\xce\\xf5EM\\xfb\\xae\\xc4\\xfap\\x86-=\\xe3Y\\xe4\\x1f\\xebb7P\\x81\\x82sd\\xc5a\\xef\\xebSx\\xf3<\\xaf\\x9c\\x1d\\xea\\x9f\\xb9`\\x9f\\xdb\\x95\\x94?\\x9c\\xc1\\xffZ6\\xe6\\x9e\\xf3j6i\\xc3\\x8c\\x8b\\xbe\\xb4\\xba!\\x16\\x1a\\x08\\xf9\\xcc\\x8au\\xa6\\xe3\\xd2~\\x89c \\x03\\xc0\\x91\\x84\\x8e\\x9dN\\xc3\\x85\\xb7\\xdc`\\xe9\\xa8\\xaaz(\\xa1\\x95\\xa4B\\x18\\xbfFV<\\xb4\\x07\\xfb\\x8e\\xacZp\\xe1u\\xa9\\x1eK\\xc2\\xf2f\\x86\\xd9\\xe4\\xde\\x15\\x84\\x1b\\xff~\\xe5\\xa5\\x0b\\x17,\\xfa\\x0f\\xb7S\\x81\\xc0\\xe6J\\xc3\\x1c\\x07\\xb6z\\xad4\\xff\\xd2\\x0d\\xd6\\x9ec[K\\x92z\\xba\\xd0\\xbb\\x1a\\xe5m\\xa4\\xd7\\x9a\\x8b`\\xa4\\x8e\\xaa\\xf3\\xf4\\xaav\\xebI\\xa1\\xe4\\xf3\\x93\\xe3\\x8f)\t\\x13\\x9f\\xca&\\x9f>\\xd5\\x13D!\\xf8\\xd4R\\xd7\t\\xa5\\x9a\\xa8]o\\xa5\\x9eK\\xec\\\\\\xddH\\xd6$L\\xf9p\\xa20\\xb1\\xa9\\xc0\\xaf\\xec\\xc7rW\\xf5<\\x0e\\xe0Q\\x9c\\xa2\\xf7\\x91I\\xdaC\\xb5\\x9c\\xbe\\x90>\\xfe\\x10\\xac7\\x16t\\xa0\\xd3\\xf1\\xaa\\xbc\\xa4x\\xae\\x86j\\xb0Z\\xf1\\xe8\\xb4wu\\xb0\\x0b\\x94\\x1cR\\xd5\\x91}}\\xfc\\xbd68\\xf9\\xeb\\xe3\\xe3\\xe7C\\xd8\\xeaWKf^\\x92~M\\xae[\\x9c=\\xa0u\\xe9\\xd0\\xa9\\xbb\\xb85$s$e\\x86Fr\\x99u\\x8a\\xde\\x14o\\xd1\\xcd\\xc2\\x90C\\x81e\\x01\\xc0\\xe51J\\xe3y\\xbd\\xa44\\xa0\\x17\\x06{\\xac\\xbcz\\xe1\\xb9b\\x1d\\xd7\\xd4\\x9d\\xa9\\\\\\x93x\\xf4\\x8b)x\\xfcq|\\xd6\\xad\\xe6\\xce\\xd7\\x84p\\x9b\\x93\\xf4[\\xe2]n\\x02\\xf9[\\x01dK\\x1f\\xe3\\xa5\\xa8M\\x8c\\x11\\xab\\xe5\\xe73\\xc0q\\xd5\\x06\\x1cQ\\xf8\\\"&\\xe4\\x97\\xc6d\\x82P4>\\xa1\\xc7F\\xd0\\xa5\\xc8\\x8d\\xe6\\x146?\\xa68\\x98\\xe8\\xef\\x19rD\\xed\\x0c\\xab[\\xd3\\xe4\\xca\\xbd\\x93\\x08\\x19\\xa4'\\xc6\\xfb\\xa6\\xe4G\\xe6\\x89\\n\\x05]\\xac\\xcd\\xd4\\x16\\xb2\\xc0\\xba\\xe5\\xb5\\xc2\\x83\\xbc\\xbaB9\\xf7\\x90\\xb9\\xfc2\\x94\\x02\\x84\\xf6\\x1eug,\\xa1J\\xef1x\\x05\\xf30y\\xec@\\x92g.\\xa7\\xe7\\x867\\x9e\\xa0\\x96\\x04\\xe5{\\xe4*2=O%\\x19\\x89l\\x06\\xd0\\x87\\xfb\\x06\\x08\\xb1\\x08\\xef~\\xc2RY\\xc9\\x07\\x90If\\xb5\\xb0*\\x92\\x9c\\xd8\\xbe}\\xa6\\xab\\xca\\xed'_\\xe2\\xbd\\xea\t\\x1a\\xb1\\x1b:!oV\\xcf]+b\\\\\\xbfD\\x06\\xaf\\xfcp\\x1a]Q\\x88\\x16\\xbf\\ns\\x17\\x95m\\x86\\x83\\x9aB\\x9b\\xb5@\\x05\\x80\\xb1\\xce+\\xa0\\x9d\\xa8\\x8f\\x81v\\xad1\\x1b)|\\x8bM\\x9e\\xe1\\x88\\xf3Di\\x8d\\x17 \\xe6\\xbc7\\xb9\\x94\\xaa!!\\xcd\\xf9\\xe3\\xc5\\x10\\xb9kQ\\xa3\\xbd\\x92\\xcdS8\\x97\\xedn\\xf4\\x08\\xe0\\xc0\\xdf\\x1b-\\\"\\xfa\\xbd\\x07\\x8emy\\xc9u8y\\xb9\\x91\\xfd\\x86\\xf8\\x94%GA\\x1dL\\xab\\xef\\xda\\xd9}<\\xba[\\xbb\\x8f\\x9d^\\xaf\\xc6\\x08+\\xf9\\x0c#\\xac\\xaa1\\x90Y\\x12.\\xf73\\xc4q\\xf51\\xa7U1\\x9fV0\\x94\\xb6\\xb2J\\x95}\\xbd5D\\xd4F\\x8c\\xa1T\\xd6G\\x12\\xba\\x15S\\xf9\\xe7\\xde=4\\xa3+\\x07v.\\x14#\\x84eCe\\x11\\xd9\\x12\\x92\\x82\\x97@.Ml\\xa9\\xe1\\x18\\xf44\\xb0\\x02\\xa0!h\\x17\\x05e1+w\\xe6\\xb0\\xc0\\x0f\\xe1\\xef7\\xd5\\xbb_m\\xca\\x1b\\xf3\\xde\\xb5\\xf9\\\"R\\xd1\\xe8\\x05o\tI\\x82\\xcb\\x0d6\\xba3\\xbbb\\x12\\x00\\xd28XF2\\x188\\x0e\\x1d\\xc0\\xf8\\x8c\\xdf\\xc5(Yf\\x91l\\xdf\\x86:\\x10}f\\x8a*W\\xc2\\xc9\\x88\\x0c\\x0d\\xa3V[(\\x95Y%\\x96\\x0f5\\x95\\x1ceF\\x10\\xc2\\x90\\xe5\\xc0\t\\xdb\\xf0\\x17h]\\xb0\\xd5wL\\xfa\\xf6\\xc9\\x82L.\\x87\\xd2uB\\xabM\\xdb\\x8aN\\xecT\\\"\\xe2}.\\x9d\\xd8\\xfdlKD\\xc3!\\x14s\\x1bUVg\\xb3\\x81\\xdd\\x8e\\xdc\\x08\\xc5\\x1bZ*\\x15\\x1d\\xb6\\xa20M\\xf6l\\xbb\\x06\\xdb\\xd3==\\x97\\xb8S\\xb1\\xf2b2\\xfbN_\\xb5\\xf2bl\\xdc\\x8e\\xfa:\\xe1\\xd5u\\xe9\\x89\\xe9{\\xb5\\xf9\\x19\\x7f\\xaf\\x0e'\\xe0\\xcd\\xab8\\xba\\xc2Li%+\\xe2r\\x85\\x85T\\xe1\\x857I\\xa3X\\xb1\\x85\\x9a\\xb2\\nA\\x14\\xea\\x1bXW\\xe3@\\\\7\\xca\\xf0mn\\xc4\\xe7Za\\x19\\x8d\\x87b\\x12\\x9aD\\xfc\\xa5\\xb7\\x1aB\\xd4]z+\\xbdp?\\x8b\\xe2co\\xb2\\xa0u\\xf8O}\\xbdI\\x94\\x85):\\x1e\\xd3\\x1f\\xfa:i\\x84\\x04\\x90\\xd6\\xe2?\\xf5\\xf5\\xa20\\xb8\\x1e\\x82&\\xe7Y\\xb5zn\\x9c=\\x04\\xbf[\\xe3\\xd3\\xf66\\x8bI\\xa9n\\xe9E\\xb5~\t\\x03\\x86\\xa0\\x01\\x8e\\xbc\\xc2C\\x98V+\\xf8\t\\xfau\\xe5U\\xbcn\\xf9\\x8df\\x90q\\xb4\\xa2\\xc7j2\\x04\\x8d\\xf7\\x1c\\x1b\\xd2Q\\xe0%\\xc9\\x10f\\xa6r\\x8e\\x93C\\xd0\\xac\\x13\\xab\\xf1\\xca\\xff\\xe8\\x87C\\xd0\\xc0\\xfe\\xf9\\x9bWC\\xc8\\xaa\\xef\\xd7$N\\xfc(\\x1c\\xc2\\xa4Zv~\\x9e\\xe05\\xd6\\x10\\xd6e\\xe4\\xd4S\\xc8V\\xa99\\xea\\x89\\x8e\\xacQ3\\xf4\\x12\\x7f~/\\x94V\\xe9y\\xaa\\nM\\xe2\\x02\\xb0\\x81\\xb2\\xf5T\\x0e\\x96\\xa5\\x13M\\xaf\\xa2C\\xae\\xb6~\\x1bE\\x81\\x9a\\x8e\\x14g\\xd1\\x9dEY\\\\W\\x8bR\\xbd\\xfb?\\xdc\\xef\\xdc\\x9f\\xeb\\\\{gFA\\xc8\\xb6,\\xe8@\\xea\\x94\\x82\\xbd\\xff\\xe1\\xde}K>\\x8f\\xaa\\x0d\\x06\\xdas\\x0d/|i\\x1df\\x85\\x86\\x7fN\\xa20e\\xb9\\xb9H\\xfe&c7\\x88\\xb5=\\xact\\x0b\\x05\\xd2\\xb2\\xa4\\xd8\\x93f\\xb3a\\x19\\xefV\\x91\\xdb\\x99l\\xe7c\\xc3)\\x1b\\x88\\x9c?]7\\x8e\\x85\\x18\\x87\\x86\\x93\\xc4\\xe9\\xc4$a\\xde\\x1fb\\xc6\\x97\\xe4\\xfamLf\\xfeGi\\xce\\x1c(a\\x05(\\xf1F@\\x996\\x03\\x85\\x0d\\xa7\\n\\x96\\x0cK\\xf3\\xb1U+x50Md\\x98j\\xa8\t;\\xe8(l\\x13\\x05\\xb6\\xe5\\x05(\\xe97\\xec\t\\x95\\xb1\\xd7\\x14\\xe3b\\x84o\\xd4M\\x17^z\\x82\\x88\\x99\\x08d\\x17\\x8e\\x9c\\xb05b\\n0\\xdbW\\xa8'm\\x87\\xbe\\x9f\\xa0\\x9a\\x08\\x89\\xf1a8=a\\xf8\\xfc5\\xb9\\xa6\\x1dd\\xd0\\x01{kB\\xe7\\xcf,yP\\xb9C\\xff\\xc2\\xe4\\xf2\\xf8\\xeb\\x00,\\x0b\\x860\\xb3\\xf1O\\x87\\x8a2\\xf7Qg\\x1b\\xa2\\xe1\\x10S\\x05M\\x9cztYK\\xe8\\xe2V#g\\xacy\\xd4\\x0c\\xd5\\x89V\\xcc\\x90\\xdd\\x0c\\xa1hf\\x87b\\x08U\\x83\\x17\\xbaV\\xe8\\x9a\\x8b\\xa4`j\\x13\\x8c\\x8c\\x81\\x1d\\x96+\\xa3\\xc6\\x7f\\xea\\x82\\xe7\\xb8\\xb0\\xe8\\xc6$ ^Bl\\xaf~\\x0e\\xd7&,\\xe34\\x83\\x0eVj@\\xfc\\n\\xa4\\x8b\\xa3)\\x11\\x06;u\\xf6@\\xa5\\xad\\x81\\xee[\\xca\\xee(\\xbd\\xacl\\x10\\xba(\\xdetJa\\xe0\\x87\\xf3w\\x91\\x1d\\x88\\x89\\xdej \\xf9F\\x96z\\x95\\xf7\\xb2\\xf4\\xfa\\x0e\\xc7\\xbcp!Q\\x04\\x8c*\\xfb\\x96\\xb3^u\\xa7\\x98xP3J\\xf1\\xa9dM\\xa0\\xb9x\\x10D#(c\\x92.\\xc9:\\xe2\\xd1\\nS\\x17@\\x90\\xe3\\x91z\\xdfX\\xa6\\x0c\\xc8O~\\x91\\x01\\xeb\\\"p\tS\\x01\\x9b]q\\xb1U\\x10\\xa6\\xda\\x0d\\xc3|\\x19\\xa6\\xd1\\xb7~\\xba\\xf8Z\\xac\\xf6\\xcb0%q\\xe8\\x05CX+\\xc7,\\xe3m\\x1b\\xf5&B\\x87G+\\\\s\\xd7\\xc3\\xbaA\\xe4\\xfcp=\\xf3/\\xf4\\xe4M\\x00 \\x02\\x00z\\x92Z1\\x10/\\xf0\\xf3\\x8b\\xf1j\\xa1\\xbd\\xaf\\xd31\\xdb\\xa1M%\\xaf\\x86y\\x0b\\xc3\\xc1\\xae\\xd0\\xa0Pl\\xad\t(\\x07\\x12\\xac\\xaa\\xdf\\xad\\xa2\\x95)\\xf3\\xb5\\xc0=\\xdc\\xbd<\\x12|\\x15^P\\xa7p\t\\xc9\\x15~_1B\\xaa\\xd5\\xbfi\\x95T\\xb2\\xc2\\x08\\x0d\\x0f?}\\x82\\xd8\\xb6\\x06{h\\xcb%\\xd16\\xdbq5\\xf3\\xe4w\\x1cOx8\\x90(\\nN\\xfd_\\x880>V`B\\x0f\\xb7z\\xb3\\xa9\\x0c\\x934\\x97^yZAS\\xa6o-\\xf6\\nH\\x96\\xc6\\x86\\xebQ\\x01\\xda\\xd2\\x98\\xb9\\xd1kXP/\\xb4\\xeb\\xf8\\xf4\t2\\xfa6\\x9f/3:\\xce\\xff\\x1c\\xb1\\x8cp\\xa1\\xa0b0\\xa2g\\xa7\\xc6\\x02\\xb9\\xca\\xe7P\\xce\\xa2\\xc4\\x83\\x0fU\\x80\\xd0\\xa7\\xc2\\xcf\\xb7\\x84\\xc1m\\x90\\x1cd\\xd8m\\x82\\xe8\\xa0Cv\\x11\\xa8P\\x07\\x0e\\xd0\\xe2<\\xe8\\xf0\\xbeb\\x92\\x05zp\\xa6\\x8b\\x98T\\x00\\xda\\xe6\\xc0\\x80\\xcf\\x84V|'\\xd0\\x8a\\x19\\xb4tG\\x8cx\\xda\\x03\\xac\\xe2\\xa5\\x01z\\x98U\\xe5\\xc0*\\xc8\\x0c:o\\xf8L\\xa8\\xf9w\\x025?\\x87\\x1a\\xe3&\\xaa\\xb6\\x03\\xb0)\\xe0*\\x86O\\xd5\\x16\\x0c\\xe7\\xdag\\xc4\\x0fk>\\xd7\\xfa<Aj\\x7f\\xbf\\x12\\xb9\\x8b\\xab@+\\x99\\xfc2\\xe9D\\xa4\\xe5\\x95h`\\x1e\\xab\\x80\\xa9U\\xad\\xaej#\\x85\t\\xd5\\x86\\x96!\\xb8\\x97Y\\x11\\x8d\\xf1\\xbd4\\xd7\\xb6\\xa9t\\xdf\\xc3\\x84G\\x0c\\xc6G\\x92\\x89\\xb7\\\"v\\xca\\xc4\\xa4!\\x90\\xfc2\\xd8\\xde\\xd9W\\xf5\\xd8p;\\x17\\xfd\\x9c\\x1f\\x84\\x03\\x0c\\x17\\x98O$\\xb5\\xd9\\x92\\xcf\\\\\\x08L,\\xd2\\xcaE\\xe5,\\x9f\\x05\\xa9b'Z\\xe6e!3\\xfe\\x9cZx\\x9d\\x85\\x91\\x17\\xad\\x0b\\xba\\xa7\\xbcP\\xbc\\x12\\xf6~<>\\x05\\x1f\\x15?f${\\x1f^\\xd7\\n\\xb3\\xe5\\x05\\x89\\xe57\\x05Ty\\x17\\xa4\\xfb\\x87?\\xf0\\x91\\xd1wE\\xfe\\xf4\\x99\\xcd8V\\xcb\\xca\\x93\\x87y\\xd0\\x81\t\\x9dp\\x0f\\xc5`\\xc7\\x05\\x8d\\xc5\\n\\x9dqM8\\xd65\\x8a\\x9bR\\x93CLd\\x93\\xe8\\xa1R\\x96\\xd0\\x89\\xc6\\x1f\\x01d+\\x8bkfOq\\x0dO\\xf2$<\\x8f\\xe1\\xba\\xd3q`\\n\\x9d\\x11\\xa4\\xf6\\x8a\\x9e\\xc9\\xe3\\xeb3\\x17\\xd68\\x97\\x95\\x0b\\xd7\\x0e_\\xbd\\xea\\x0808\\xa6\\x99C\\x98\\xb3,\\xa5\\x06rC\\x87?o\\\"bK\\x17\\xdd\\xc0\\xe7\\x9c\\xbb\\xab\\xa1\\\\\\xd8\\x1c\\xbb\\xe8\\xec\\x920\\x8d}\\x92\\xe8\\x81!\\x9e\\x1c(\\x17\\x0c([\\xf6\\x12Fp\\x8e\\xa9\\xe9m\\xc7\\xe9N\\xa3\\x90<.\\x01f\\xc9\\x0c,%\\xd8\\\\t:f\\xe8\\x88\\x87B\\xa9y$\\xc6\\x01\\x98\\x01$\\x1e:\\x89\\xabb|\\xe6\\x91\\x88\\x07\\x0d:lifWhZ\\xbbF\\x03fN.\\xae\\xc6\\xbd3\\x87\\\"\\x9e\\x98kO\\xcc\\xb4\\x1e\\xac\\x06[B\\x86+\\xb8\\x91K[\\xac\t\\x01>\\x1a\\x92\\x91\\xc9\\xcfi\\x11+\\xba\\x0eCb\\xdb\\xda\\xe9[naG\\xc2n\\xdd\\xce\\xd8HN\\xe1@\\xec~\\xb8\\xf2\\xd3\\x05\\\\\\x92\\xeb\\x04\\xfenAG\\xdcg\\xd3\\x176qx\\x9a[\\x17P\\xd9d\\xddX0\\x84S\\x17>\\xb65?3J\\\"\\xd3R\\xc1\\x0d\\xa5\\xb8\\x96\\xa5\\xf2\\x1a\\xadn\\x1b\\xeb\\x8f@\\xad\\x8d3\\xf7\\xe1\\xbaw\\x8f\\xff\\xca\\x1d\\x8b\\xabg\\xa5\\xf5/\\xff\\x92\\x07\\n\\xd1\\x9f\\xd3f9)\\x97\\xf2\\x80\\xc5\\xcdEg\\xc3\\x18\\xcd\\x9b\\xd3\\xb1\\xafZ\\x80\\x1b-\\xb2\\x89\\xc6\\xdc\\xfa\\x0e S\\x1e+\\xdb\\x08me|=\\x1a[#k\\x08\\xd6\\xa8g\\xc0`k\\x88\\xc5\\x83j\\xb8\\xa7\\x1b\\xa3\\xc6\\xc0\\xfa\\x03\\xc5\\xc9\\xcaE\\xc0\\xfd\\xf1hxv\\x7f\\xde$\\x9aK\\x0d\\x91qzV\\xed\\xb7^\\xa6\\x0c\\xef\\x06(=\\x9c\\xb6\t(\\xa3\\x01-\\x1en\\x02\\x14\\x06\\x0e\\xdb\\xea\\xb2\\xcd\\x9c\\x8e{\\xe8\\xe8Ma\\xc5\\xfe\\xee\\x9f\\xa1\\x8dD\\x92]0.\\xc0\\x1e\\xd0#Z~\\xd1w\\x1c\t\\x9a\\xf6\\xa8\\xf7i4p\\xee\\x1e\\xa0\\x05\\xbe\\xea\\xf7\\xce\\xdd\\xdc\\x80\\x0d\\x9c\\xba\\x9bn_\\xaf\\x07\\x18R\\x12Y\\xb1\\xe4\\xc7\\xa2\\x8b\\x8b\\x98\\x95^\\\\h\\x83~z\\xd3iL\\x92\\x84\\xd5a\\xbf\\xb5\\xd5b\\xc2{\\x89\\x89\\xbe\\xa38\\xf5'\\x01\\xe1u\\xf0\\xb7\\xb6Z\\xe2Oy%\\xfaK[%\\x9b\\xfa\\x11\\xabB\\x7f\\xe9\\xaa\\\\`\\xf1\\x85\\xb6\\xc8KX\\xfb\\xf4\\x87\\xb6\\xc2\\xd4g\\xe5S__\\x1c\\xf1b}\\xcf\\xfe\\x9c\\x15\\xfbsmq\\x10M.\\x7f\\xce\\xa2\\x94\\x8f!\\xffS[9\\x9a^\\xb3j\\xd1\\xb4\\x12P\\x05+\\xb0\\xa5\\xd3/\\xdcE\\x96\\xa6Q\\xc8*\\xe0O]\\xa5\\x89\\x17\\xae=\\xb6\\xb8\\xec\\xa7\\xbe\\xd2*\\xf5yS\\xfc\\xb7\\xb6\\x9a\\xcfgE\\x7fh+D|i\\xe9\\x0f}\\x85\\x80\\x97kc\\xc6N\\xa2`\\x1eG\\xd9J\\xd4\\xc1?t\\x15\\xa7^\\xca\\x90\\x91\\xfe0U\\x08\\xfc$\\xcd+\\xd1?\\xb4\\x15\\xa7\\xac\\xcaT[H\\xd8p\\xa7D;\\xdc)I=?Hx\\x15\\xfc\\xad\\xad6c\\x90\\x9d\\xce\\xb4P\\x9d\\xfa^\\x101\\x9cb?\\xf5\\x95\\xd6\\xbc\\xc6Z[\\xcc\\xc7\\xa9\\x1f&\\x87\\x82v\\xfed\\x89\\x85d\\xa9/\\xbc S^~A\\xb4 \\x9a\\xf9$\\x98\\xa2\\xe9`l[\\xe2\\x0f}\\xc5\\xb9\\x8cf\\xc5\\x9f\\x86\\xcaYLD\\xc5,\\xd6\\\"\\xd3,\\x8a\\xd0+\\x93V\\xc2\\x9f\\xfaJ\\xf1\\x92W\\x89\\xb5s\\\\\\xf4\\xb1x\\xd1\\xd7\\x16\\x0eX\\xe1@[\\xb8\\xc3\\nw\\xb4\\x85\\xbb\\xacpW[\\xb8\\xc7\\n\\xf7\\xb4\\x85\\xfb\\xacp_[\\x88V\\x1f\\xb4\\x98x\\xda\\xf5\\xa0\\xef9P\\xd8Om\\xa5b\\x97-\\x8c{l\\xc1[\\xd1\\xb7\\x90.\\x19\\xca\\xd1\\x1f\\xba\\n\\x8c\\xc4j\t\\xac?\\x8b1\\\\&-\\xc7\\x9f\\xdaJK\\xb6%\\xfc\\xa5v?\\xf8\\xe1*c8\\x87\\xbf\\xf4U\\x12^A\\xbb+//\\x18 //\\xb4p\\xbc$\\xd7s\\xc2P\\x95\\xfd\\xd4U\\n\\xbc\\x0bN!\\xf0\\x97\\xb6\\n\\x99\\x93\\x90\\xf5\\xc4~j+1h\\x05Zp\\x05~x\\xc9\\x8b\\xc3K]\\x85\\xa5\\xe7\\xb3\\x81\\xd2\\x1f\\xfa\\n+^\\xae]\\xe8\\xa5\\x17_\\xf2\\xf2X\\xdf\\x01\t3V\\x81\\x84\\x99\\xa9\\x82\\x9frR\\\"\\xfe\\xd0W\\xe4t[\\xe7w\\xc8+p\\xec\\xc5_\\xba*\\xa1\\xc7Ha\\xe8iIa\\x181\\xbfaV\\x87\\xff\\xa1\\xab\\xc8\\x04F\\xac\\xc6\\xc5Z]%\\xb6\\xbc\\xfa\\xe3*Z\\xa5\\xc5F\\x12\\x7f\\x18*\\n\\xba\\x17\\x19i^\\x94\\xa5\\x02\\xa7\\xd9O]%\\xd6\\x97\\xb6\\x93\\x95\\x17{l\\x05\\xf0\\x97\\xb6\\x8a?I\\x05]\\xe5\\xbf\\xb5\\xd5D\\x15Sq4\\xcf9F\\xf1\\x87\\xae\\xe2\\xcfX\\xe3g]Q\\xcc&\\x12kg\\x123(\\xc4Z\\x08\\xc4\\xd9\\x05\\xe3\\x99\\xe8\\x0f]\\x056.\\xed\\x80\\x12o\\xc9\\xfa\\xa5?\\xb4\\x15\\n\\xd41#NB&\\xf9r\\xf2\\xdf\\xfaj\\x81\\xc0/\\xf6S[i\\xe9\\x05\\x0c\\xc5X\\nN]\\x15L\\xa3\\xc4\\xea\\xe0Om\\xa5\\x95\\xc7\\x07\\xb4\\xf2\\xf4\\xa3I\\xe3(d$\\x95\\xfd\\xd4W\\xba\\xe6\\x0c<\\xfe\\xd2V\\xc9\\x18\\xeb\\x9ddZ\\xe6;\\xc9\\x96K/\\xbe\\xe6U\\xf0\\xb7\\xbe\\x1a_\\x07\\xfd~IY\\x1c\\x95\\xd8\\xb6R\\xe6\\xdb\\xa2\\xa9\\x92\\xf3\\xce\\xa9\\x89yN\\x19\\xd9M\\xb5$7%\\x1f\\xd3\\\\\\xa4\\x11\\x7fh+R\\xde\\x82\\xd5\\xa2\\xbf\\xb4U\\x16\\xac\\\\\\x9br=\\xcd\\x8f\\xec\\xd4tf\\xa7>?\\x0e\\xe9\\x0f}\\x85T\\xc0\\x03#L\\xeb\\xaa0\\xaa\\x99jIf\\x1a{\\x93K^\\xeeM\\xb44\\x9e\\x11x-u\\xcf\\x18\\x82fZ\\xec\\\\{\\xac\\xe3\\xb5\\xa7\\xedy\\xedO\t\\x13\\xa7\\xf0\\x97\\xae\\xca\\x15\\x17r\\xae\\xf4R\\xce\\xc4\\x8f\\x85T\\xc9~j+\\x05\\xfe\\xea\\xad\\xc7\\xd7A\\xfc\\xa1\\xab8%3\\xc1\\xaf\\xcf\\xb4$\\x82\\x04\\x81\\xbf\\xe2\\x02$\\xff\\xad\\xab\\xc6v\\x92\\x9e5Yzs\\xce\\xdd,1\\x93C\\xb5J\\xe0\\x87\\xac\\x06\\xfda\\xaa\\xe0\\xc5_\\xc5\\xde\\xd4G3f^\\xb5x\\xa5\\xfbh\\xe9%\\xe2\\x1cO\\xb4k\\xbc\\x12\\x10Z\\x19\\xa0\\xb3\\xf2\\xd2\\x94\\xc4\\xa1\\xa8C\\x7fk\\xabE\\xc1\\xf5\\x9c\\x13@\\xfe\\xdbT-\\x9f\\xa9\\xf8CW\\x91\\xce\\xc9\\x0bJ\\xb3-\\xbf\\xd2~$\\x88kl\\\"\\xadi\\xc4\\x89L\\x1a\\xe9\\x89\\xfd\\x9a\\xd3\\xc3\\xb5v\\x1d)Q\\xc8\\xa9\\x83\\xb6BNtSFuK5\\x0c:\\\"v\t{\\x07:\\xa2:\\xbbvn3\\xdd7\\xb9\\x07\\xfb\\xc2\\x9e\\xecs\\xc7\\xd1\\xdf\\xdb\\xd8\\x01Yx\\xe4\\xd0\\xfe\\xe4`\\x8cw\\xa0\\x03\\xd6\\xd8\\x83s\\x8f<\\xf5\\xf6\\x97[\\x8f\\xebcYT\\xdckx\\xa8\\xe7}5V\\xb0\\xf0\\x8b1\\xf9\\x18\\xd7\\xda\\xa2\\x08[\\x92\\xcfQ\\xe9\\x03\\xb7\\x08\\xd6\\xab\\xf5E/3Z\\xe3\\xc9\\x13/\\x8c\\xc2\\xebe\\x94%O\\x9fj\\xb4\\xb7\\x81Q\\xe5\\xeb1s\\xb9\\xb5m\\xe1/\\xddN\\x00\\xd4eQ^ym\\xe7\\xf7\\xba\\x86zt\\xbaX/\\x9f\\xb7\\xa1\\\"\\xbb\\xe0\\xc5\\xaa\\xfc\\xae\\xd7PQ0\\xf2\\xeb:F\\x1e\\xf2\\xc08X\\x91\\xdf'\\x9b*\\xf2 ck\\x11\\xcf\\xd8T\\xd1\\x0b\\xaf\\x870\\xb5c\\xd9\\xf6\\xef5^`\\x9bA\\xf9f\\xd6\\xa4\\x82\\x17\\x8f\\xb8\\\\*\\xe2\\x99\\x14\\xe6\\xce.DM\\xf7\\x8b\\xca\\x15\\xccVal\\xe0\\xc8\\xf6\\x1d\\x0b\\xdb\\x12n\\xdf\\xf0\\xa3\\x05\\x1d\\x88\\xa0\\x03\\xd6\\x8f\\x10\\xcd\\x8a\\x94s\\xac f\\x05\\x0b/\\x01?\\\\S\\xea\\x93{\\xcf@\\x18\\xa5\\x98\\xc0\\x82\\x8a\\xdd\\xfe\\x94\\x88\\xa9vM\\xe9C\\xc5C\\x11\\x14\\x13I\\x8dCC\\xb2W\\xf1`D\\x89\\xf2\\xa5yV\\x1b\\xb0B<\\xb4\\x0b4\\xad\\xacD\\x17\\xd0=e\\xc8\\xbc\\xe4\\xf3\\xa4\\xd3\\xf71\\x16\\x99\\x02\\\"\\x0c \\x8d\\xef\\x12\\xf6.\\xc9V\\xab\\xc0gi>$\\xa8\\xb9@>\\xae\\xc8$%S\\xf0B\\x06\\x9d\\xaeu\\x9b\\xebX\\xf1\\xe4w\\xe0<\\xd0\\xc2\\x04\\x9e@\\x96\\x1b\\x06L:\\x9d\\xb6\\xa0\\x99aj\\xc9\\x0c\\x93\\xe2r\\xcc\\xa2#\\x1e\\xd3\\xb1O\\xe8\\xaf3\\xcb\\x05\\xaf\\x05\\xe4\\xe8\\x02\\xcddCJ\\xf4T.\\x8c.>c\\xb2:sx\\xf5\\xb91\\xdc\\xe2\\xea\\xb7\\\"\\x11\\x1eb\\xf9\\xde\\xfa\\x82;qC$O7@l\\xef\\xcb#\\xb6\\xd7\\x1a\\xb1!\\xf1\\xc3y@\\xe0\\x84x\\x93\\x94s&\\x9f\\x87\\xe5\\x9f\\xb3\\xf0\\xa6\\xack\\x02C\\x7fWB\\xbce\\xd3\\xc5/\\x99\\x19\\xb7^c\\xe6P\\x14zK\\x16)K?+\\xf5\\xf1\\x1a\\x8d\\x9eM\\x0f\\xc3\\xc1\\xae\\x14\\n\\x16\\xe3\\x0d\\x97\\xde\\xe0h\\x8a\\xad\\xdd\\x8c}\\xe2\\x11vp\\x95\\xc6Z\\xb5pc\\x1b\\xa2W\\xab\\xcf\\x97Gv\\xb1\\x92\\xf4s\\xac\\x91a\\x8d\\x7f\\x1c\\xba\\x1b\\xb8(\\xbc\\x92\\xbb%\\x91\\xabu\\xb0R\\x1fD\\x9bk;\\x1d\\x933Ge0\\xe4\\x05\\x88\\x8b\\x05\\xf0\\x0d\\xc0\\x0e\\xab\\x94\\x05I\\xca\\xebhJ\\x1a9\\x8a\\xcf\\x81\\xa1\\x89d0\\xbe\\xf2w%\\x18\\xff0\\xceM\\xcc\\xb5\\x11\\xd0\\xf2\\xa9\\xd6L\\x93\\xdaq`%+\\xb3\\xad\\xd1\\x08\\x92:T\\xbaC\\x8e\\x8c\\xf5\\xd98g\\x89\\xeb\\xf2C\\xc8\\xea\\xf7:\\xf0\te\\xdd\\x85\\x97H\\xd1\\x95\\xecI+\\xd2\\x0f\\xf5\\x0cZ\\x17\\x19\\xb4v\\xac\\x19|.{\\x06\\xff\\x00\\xd2\\x15\\x85\\x1b\\x1c\\xd1\\x1a\\xe9@\\x8aTW\\x11\\xd0jL\\x0d?o\\xeb\\x16Q\\xd1\\xc4\\xce`\\x810\\x1f\\x83\\x07O \\xcd\\x19tO\\xf6\\x866=tR+\\xba\\xf2\\xe9\\xd8\\x93\\x89j\\xed\\x04@\\x12y\\xfer\\xfa\\xe6u\\x91?H\\x9bYB~6\\xdcih\\xb2*\\x1f~-\\xb6Z\\x14\\xe2\\x89\\x99o\\xcf\\xba\\xf3\\xf2\\x16\\xe8B)\\xda\\xef\\x8e2R\\xe8i\\x16\\xad\\xbb\\xb4\\xd2\\xa4Y\\x14\\x13\\xba\\xa0T\\x9b\\xa9_~\\x8c'C\\x98\\x0f<\\xb2\\xb7\\xfa.\\xe4\\xab'\\xe2\\xf4\\x96\\xd6&\\x87U\\x17\\x8eU\\xb1\\x14\\x8f\\x8f\\x05\\x99\\\\\\xe6`L\\\\\\xb8\\xc8R\\x88\\xc9\\x84\\xf8k2\\x85?&\\xe0\\xa5\\xe0\\x87S\\xf2\\x11\\xfe\\x98t-\\x17\\xce1\\x99\\x0bA\\xe7m\\x05l\\xe6\\xd5\\xfd]\\xb6`\\xef1d\\xa5\\xe5\\xc8\\x9a\\x97\\x03\\xa4\\x1d\\x94\\x8e\\xb3\\x86%\\x01(\\xfb\\xd5&\\xe5\\xd1R\\x02\\xed\\xb4\\xa2\\x8e\\xd0\\x9a\\xc6\\xb6\\xd9\\x9f\\x86\\xadxw\\xfb-Y\\xb4\\xb0&\\x15\\xcfg.\\xe9\\x7f=\\xac\\xc6\\x8f\\xac\\xc7\\x1f7\\xe44Z\tp9\\xb30\\x9e\\xb4\\xc4\\xd9Y\\x9bf\\x817\\x1d`\\xac\\x84;\\xe1C\\x82\\x1c\\xd4\\xf5\\xdb\\x01\\x1a\\xb7D\\xbb\\x0dswL\t\\xf9\\xe8M\\xd2\\xdf\\x11\\xeb\\x93\\xd6X?A\\xacO6\\xc5\\xfa\\xc9g`\\xfd\\xe4\\xce\\xb1^\\xa0p\\x86q\\xed\\x18\\xff\\xd4\\xc4\\xb5\\xe4;%\\xa0;\\xa5\\x15J\\xd3\\xda+\\xdc)A\\xcb\\x9d\\xb2\\xb5\\xda\\x0cN\\x97\\x84\\xcbdA=9\\xfe!|\\xe6M\\xf3+\\x0cZ\\xa0\\xf0l\\x0c\\x06,\\xc6\\x80\\x05\\xdcs\\xe5\\x87\\x10/\\xff\\xd0\\xd1E\\xfb\\x95\\xec\\xf7\\x92:\\xa5\\xef[l\\xd35\\xf7s[\\xd9\\x89\\x0bAu\\xb7\\x07\\xedv;\\x85\\xdb4\\x07\\xdb\\xf4\\x1f\\xb4\\x8f+oo$\\xafM\\xa8\\x06B\\xd2\\xe1\\x8f\\xd0Z\\xe5\\x891x\\xf2\\x02\\xf8\\xf4\t\\xfap\\x1f\\x0b\\xf0\\x07\\x81!f\\x00c^2\\x84\\xfeR\\x03@\\xe8\\xfb^\\x18\\x02\\x13,\\xfc\\xa4\\xbb$I\\xe2\\xcd\\x89\\x14\\xf8(I\\xbd\\xc9%\\xbaW\\xb5j|j\\xc8\\xff \\xcaC\\x9b\\x11\\xa5\\xc8\\x85\\xcc\\x85\\x04)\\xbc\\xd6\\xe5\\x93>6=\\x883\\xa6\\x89D\\xa23\\xc1\\xa4V.\\xb0X\\xa5\\x9e\\xc3S.`b&dE\\x8f\\xbc \\xf0\\xc3y\\x11j\\x0dp\\xe7xi\\x14'0\\xf5c2I\\x83k\\x91\\xe4\\x85n\\x94(\\xa6D\\xe3\\xe2\\x1a\\xd2\\x05\\x81\\x1fWq\\xb4\\xda\\xa6D'\\xf9\\x11V\\xde\\xe4\\xd2\\x9b\\x93.\\xbcO\\x08\\xfc\\x987\\xd8E\\x865\\xff\\xd3v~\\xa4\\xfbl\\xe2\\x05\\x01mb\\xd9\\x85\\x13\\xe2Ma\\x19\\xc5\\x84r\\xae\\x8b4]\\x0d\\xef\\xdf\\x9f]t\\x97\\xe4~\\x96\\x90m\\xfcz\\xbb\\xe8\\xc7\\xb8I$<\\xc48\\xd0\\xe3\\xe8\\x0c\\x0e\\xd0\\xd93\\xf7W\\x15\\xef\\x18\\x91x\\xb7 \\x85\\xacS\\\"\\x9a~\\x82\\x86\\x97\\x94\\xf1N &?g~\\x8cZEY\\x9eb|\\xb7\\x9f&\\\\\\xd4\\xf2\\x13\\xf8\\x91vD\\xe9(\\x0c\\xbf\\\\\\x1f\\xb9\\xbf\\xae\\xe8\\x88Nn\\x08\\xa9]\\xc2\\x91&Op\\x90\\xaf\\xe6\\xbb\\x17~8\\xb5\\x19\\x19\\xda\\xeak\\xc0\\x9b\\x8b]~r\\\"F\\xaa~\\xd7\\xabF\\x981`\\xfc\\xba6\\xa4\\xa3\\xe9@v!3a\\xbd\\xb8k1_\\xe1\\xf0\\xb6\\xe7\\xb6\\xe7p\\xe2p\\xd0\\xee\\xa8(\\x1d\\xa9K\\xfay\\xdbS\\x95\\xbeM\\x05[\\xcf\\xd7\\xa9\\xba(\\xaa\\x17\\x93\\x1eb\\xd7\\xb6\\x96\\xf2%W>\\x8b\\x92\\x9b{\\xef\\xe9\\xe13\\xf1\\x12\\x92;e\\x0fk\\xaa\\xf0\\x9b\\xf7\\xba*\\x85\\xbb\\xb8\\xbe\\x16\\x14\\xd06\\xa5 `\\x0d\tS\\x84\\xe6f\\x0c\\x9e\\xb7\\xac\\x19\\xce.\\x99[\\xd1\\xbas\\x8b\\xb6I\\x97\\xacI|m_7x@\\x97=\\xdeS\\xb9\\x89\\xbaD\\x0bk5Bc\\xa3\\xa8\\xb0.9r\\x86\\xcc\\x913\\xe4\\x8e\\x9c\\x93\\xa6\\xdb\\x95\\x8d\\x1c;\\xd5\\xe7\\xa6\\xd1\\x0f|+n\\x953\\x82\\xce\\xc1\\x17)O[9\\x98\\xc7\\x8a\\x83y\\x1b%\\xc2c\\xd8\\xb2}LhPv\\xec\\xae\\xfd\\x12\\x8a\\xbb\\x10\\x9fyuK\\x0b\\xd97\\x83f\\x03gs\\xdd\\x98Zr\\xbd\\x18Z\\xa8\\xad\\xb39*\\xaf1\\xf1\\xc5\\xb5\\x9d\\x8d\\xfbg\\xad&\\x02mt;&\\x8c\\x16\\xe1\\xa5\\x1b\\xbf\\xaf\\xf6\\x7f\\xd3\\x8a\\xcc\\xcd\\xeb\\xbd^\\xc5=\\x8b\\xf1|R\\xf5\\x85p\\x00\\xdc.\\n9?I\\xbd~B\\xe6\\xc7\\x1fW\\x85k\\xba\\x05-\\xa3\\x13\\xf1\\x9e\\xa4\\xfc7\\x9c\\xd3\\x14I\\xa1\\x18\\x95\\x18[\\xff\\xf2/R*B\\x0b7p\\x835\\x19\\x91\\x07\\xc8^W\\xe1\\xc8\\\"q\\xd1\\x81\\x8b\\x11T2W\\x1a\\x80\\xbb4\\xc7\\x14\\x93\\x12\\xcb\\xe1\\\\rjW\\\\i1\\xb7\\xe8*\\xe4\\xc5\\xda\\xcc\\xb5\\xfa\\xebJ\\\\\\x82\\xfa\\xa8O2\\x00\\x9e{\\xa9\\x94\\xb1g\\xea\\xa5\\xc4\\x90\\xb4\\xa7\\xf2%[\\xdb\\xe2\\xdb\\x98\\xcc\\xc9\\xc7\\x95\\xc6\\xeb\\xd9\\x84F\\xed\\xe0y^\\x8f\\xac\\xfaT\\xd1\\xe2\\xc4n8\\xaa\\x19\\xd2\\xd6\\x1d\\xc3\\x8d\\xc7\\x9e\\x98\\xbd\\x17\\\"gS{\\x86\\xd6\\x1f\\xc5\\xac\\x0e\\xae@]\\x05\\x0e\\xe6\\x16#\\xaa\\x1bP[\\x1a\\xd3\\x14\\x89\\xae\\xfc\\x17\\xffH\\x8a\\x88\t#v\\xc5&g/\\x08\\x14I\\x05F\\x94\\x95\\x0e\\xba\\xf2\\x8b\\xc0\\x055\\xe8\\xe7\\xad\\xccb\\xebb\\x01\\xe5W\\xfaw\\xd4\\xbe\\xd5\\xdf\\xeb\\xeewy0\\x84[\\xb5\\xb6.\\xc2\\xec\\xef=tLa\\xc5\\xfdV\\xf6\\xcf<U\\xdd\\x9e\\x1a\\x05Z\\xc4\\xbd\\x7fd0\\xd8\\xcdl\\xa1\\x99\\xbb\\x8by\\x98\\xc2\\xf4\\xef\\xf7\\xb5\\xd6\\xc8\\x15#e\\xcc\\xf0\\xb3\\xf4?\\xfaa\\xd2rU\\xd5\\x1d/\\x84\\x96\\xb1F}XM\\xed \\x1e\\xd6\\xe5\\x10\\xac\\xe7\\xc7/^\\xbe>>\\x7fu\\xf8\\xfa{C\\xbc\\x87$\\xf5R\\x7f\\xd2\\xae\\xee\\xaa\\x08\\xb4\\xde\\xa26\\x8f\\xf2\\xba\\xc1\\x07\\x0b?\\x98\\x1em\\xfa\\xd5\\x9c\\xa4\\xcf\\x199\\xa0;P\\xf9\\xe6\\xfc\\xd5\\xf1\\xc9W\\xc7\\xcf\\xcd\\x9f\\xbe\\x0c\\xfd\\xd4\\xf7\\x82\\xd3\\x14S=l\\xf4\\xe9\\x914\\xdcM>\\x8dI\\x88\\xfe\\xbd\\xe2\\x8b7\\xaf\\x8f\\x8e\\x8d \\xe4[\\xe8[?\\x08^\\xb1p\\xaa-@\\x92\\x7f\\xf6\\xdc\\x9f\\xde\\xe2+\\xda\\xd9\t\\xbb)\\xd4\\x80\\xd4\\x84G\\x8b(\\xa3\\xe0\\xe0m\\xbc_MK\\x10m;I\\xf5\\xbb6\\xe3}\\xeeOo\\xf3\\x19v\\x17.[\\xc3\\xe7\\xfd\\xeb\\xd3\\xc3\\x17\\xc7\\xe7\\xb7\\\\\\x13\\xdd\\xd7\\x1b\\x03Y\\xd7\\xc8\\x06S\\xcf\\xb0\\xaa\\x94\\xcf\\xc1z\\xf3\\xe1\\xf8\\xe4\\xe4\\xe5\\xf3\\xe3\\xf3g\\x87\\xa7\\xc7\\x1a\\xe6\\xa7\\xda\\xce\\xc4Htp#\\xc6\\xfe\\x9aLq7\\xbd\\x88\\xa3e\\xcd\\x8el\\xd3\\xd7\\xcc\\xd8\\xd7\\xd4OV\\x81\\x87I\\xceZ\\xb2\\xe4\\x80\\x84W\\xfa\\x0eT\\xbd\\xaex\\x0c\\xd7F\\x82\\xa6\\xb6\\xee\\x8d\\xb2\\x9c\\x9a\\xd8\\x9e\\xf2\\x93\\xdf{\\x84\\xec\\x9e;,\\x85\\x86\\x0b;\\x1d\\x87k\\xb4\\xc7\\xe1\\xd9Fw\\\\\\x1aR\\xdaz\\xdci\\xb7\\xf25f\\x1b\\xfc\\xfb\\x8d\\xab+\\xd3\\x060\\x85\\x9a\\xa1\\xddzT\\x86\\x01}\\xc6X*g\\xc7\\x06\\xc3Q\\xbe\\xc5\\x00G\\xea\\xbb\\x11L\\xed\\xca[ly\\xa8\\xad\\xbd\\x11BJ\\xa7\\xf1\\x06\\xc3^Il\\xaa\\x00a\\xfenS\\xf8\\xe5\\xccC\\xeb\\x01l\\xb5\\xaf\\n\\xed\\xf6\\x10\\x94\\xf7\\x91\\x1f6\\xb7*\\x1e\\xc1\\xe85\\x1b\\xf5\\x8b\\x07\\xc7\\xa3\\xda\\x02\\x86\\xadm\\x01A\\xe8\\xbd(\\xbb\\x88W\\x9d\\xed\\xba\\xa5Odo\\xf9.\\xfc\t\\xadhy6\\x9b\\xef\\xa3\\x0c<\\xbc\\x10I\\xc9r\\x95\\xfa\\xe1\\x1c\\xd2\\x88gi\\x07\\x0fb\\x92\\x90xM\\xa6\\x88)t\\xa4.\\xfc\\xf8\\xc7\\xe4G\\x17\\xd2\\x85\\x97\\xf2\\x03;\\xfc\\xe1O)\\\\\\x10\\x88B\\xbc\\xa9\\xb1\\xf8\\x8aZpI\\xae\\xbb\\xf0\\x9c5\\xe5cn:/,,\\xa6E\\x8b\\xf8\\x86x\\xd3\\xc7\\xb4\\xce\\x95\\x1f\\x04\\x90\\xa4\\xf4\\xff\\x17\\x04\\xbc\\xc9\\x84$,94o\\\\\\xb6\\x17\\xff\\x93>t\\xbe\\xe9\\x11z/\\x04\\x9a!\\xee\\xb5\\xeeA\\xf5\\xd7&\\xab\\x03\\x12\\xcf=\\xa9.4\\x1c\\xc0d\\x1c\\x9eqE}\\xfbq@!^F\\xb6\\xee8D\\xbd\\x87\\xe7\\x82\\xd5z}\\xe9RR\\xc8^GY,\\x19\\x0b\\xe3\\x0dY\\xba\\xf0B\\x88\\xc2\t\\xe9\\xc2\\xbb\\x85\\x9fP\\xc8\\xcf\\x02\\x7f\\x92\\xc2\\xd2\\xbb\\xa6k3\\xcd\\x08m\\xc9c\\x87Z\\xd7ba\\x99\\xd7\\x91?\\xb5Q\\x8f\\x8ct\\x0bo\\xad\\xe3\\x86\\x80\\x93\\xf2S\\x7f\\x01,?\\xbc\\x13}\\x1ch\\xf5in\\xd6\\\\\\xe3\\x86Q\\x99Mh\\x9a\\x97\\xa5\\xd1\\x85\\x1fN\\xcb&\\xf7\\x1b\\xdcA\\xeb\\xd3\\xfd\\x80d$\\x98\\xa8\\x88E(b%cbF\\xacs\\xcd'\\xf7\\xeeQd*\\xb3p,tm\t\\x8f0?\\xc3\\xcc\\x9b\\x10\\x13BEk\\x12\\xc7\\xfe\\x94\\xa3\\xd4,\\x8e\\x96\\x1c\\xa9\\xe8\\xd7\\x90\\xac\\xc8\\xc4\\x9f\\xf9\\x13\\xb40\\xef\\xc2q\\x98d\\x0c\\xc3RVkI\\xd2E4\\x85\\x10\\x93\\xd1N#\\xbc\\x01\\xa6-\\x06\\xde\\x8a\\x85\\xf2\\xc4\\x91\\xf0jhjH\\x1c\\x97\\xdd\\\\\\x94\\xb7\\x82\\x08\\xbb\\xfb\\xe9\\x93\\x96a\\xbc\\xcd\\xcc\\xbe\\xc8V!\\xedn\\xe3\\x90q3\\xa7\\xf00\\x11\\xa5\\xc8`\\x1cZ%\\x0d\\x7f\\xaaL7K(\\xd9/&\\xc8\\x160\\x8a\\x8bAQ2\\xceg\\x02/\\x19\\xe9v\\xe1\\xa7,I\\xf9\\xb71\\x99g\\x81\\x17\\x17\\xb6\\xf4.=w\\x08\\xda\\x86n\\xde\\xff\\xc6\\xbd\\xe9\t\\xea:\\xcf\\xd7T\\xa8\\xe1\\x8c;\\xde\\xc7\\xfb\\xa4\\xf3\\xf3\\x98\\x0e\\xf60K\\xa3g~8}\\xeb\\xf9\\xb1&\\x863\\xc8\\xac\\x83G\\x8f\\x96P\\xddf\\x19\\xcb\\x14\\xdee\\xdc?.)\\xff\\xedh\\xa3\\xd0\\x8b\\x07\\xd7Xm\\x8c\\x19Vxx\\x8d\\xd5x*\\xad\\xb9ch8\\xf6Z\\x98\\x8e\\xadp\\xda\\x95\\xfe\\x9a/\\x02\\x03{\\xc5\\x12\\x01\\xcd\\xaa_;0\\x1b{gt\\xd2\\x93\\x86\\x96jbQ\\xcb\\x0f\\x9d\\xd3BG\\x00\\x9bF\\nu\\x86\\xd3h\\xbd\\x82\\x01\\xc4W\\xe8\\xe6\\xd6g\\xa4\\xa2+(y\\xbb\\x13\\x0c-\\xf5\\x9b\\x16E~\\xd6<\\xa4w2\\xf6Zr\\x8f\\x80\\xfb\\x1b\\x03\\x9b\\x9b\\x99\\x80k\\x95\\x00\\xf2\\xd7\\xea\\x0e|\\x1f\\xe6V\\x04\\x94D\\xc3*\\n\\xfc\\xc95\\xfc1A\\x94\\xbe$\\xf8\\xf3jAB\\xb6\\x03\\xe7\\x14\\xbd\\x8b\\xadI?Ab|\\xcdV\\xbff8\\x07\\x10\\x8f=\\xc6\\x13\\xd0\\x1f\\x14\\x19`\\xa8\\x1b!\\x8b*\\xcc\\xea\\xae\\xf3\\xba\\xed\\xa0\\xcfCT\\xf3\\xaf'\\xcd\\xf0d\\x11\\xadY*\\x16\\x8f\\xf6\\xe3\\xe6\\x1f\\xd7~[\\xc3+T\\x8f\\xf8V\\x84~a<\\xef\\xcbbIds\\x8b\\xb2\\x9a\\xfc\\x01\\x9a\\xf7\\xc4\\x05kI\\xe29\\x11\\x89\\x97^G\\xcf\\xb3U@\\x0fd\\xf25\\xb9Nlg\\x08G^H\\x8f]\\xac\\x06a\\x14n\\xb3f\\x12$\\xe0\\xc4\\x01\\x8d\\xc8\\xc2r\\xa7\\x95.\\xf5\\x90\\xe1k\\xec\\xeb]\\xcc-ZXo\\xe9U\\xc4\\xe9w\\xc2\\x8e{\\xca\\xe9'\\xde\\x92P\\x14\\x1c\\xe2\\xd1\\xdb\\xead}LA\\xb4\\xc2\\xa8\\xb3\\xf4L`Vr\\xa2\\xea\\xc4\\xcb\\x12nNv\\x15\\xa9j[\\xdb\\xa1G\\x9c\\\"L\\xdb\\x8e\\xe088\\xdfMw@i\\x9c\\xf4p\\\\\\xd0\\xb7\\x97\\xe4:\\x11,0gL\\x0d.\\xaa\\xc2\\x86\\xb0\\x15ZL\\x9bL\\x11e\\xf6\\xd2x\\xee\\xa1OI\\xd7[\\xad\\x82k\\xccE\\xe2\\xe6\\xde \\x89\\xc1\\xd1\\x91>(\\xd4\\x1a\\xbe2\\xdf\\x8f\\n\\x9b\\xb8\\xc2\\x11%n\\xae\\\\\\x18{\\x84\\xe6\\xd3\\x1bC\\x1ek\\xe2G\\x83t\\xebf\\xfbl\t\\xf0\\x87>\\xd9I\\xbb\\xfd\\xb8\\xfel\\xc0\\x1b\\x01n\\x04\\xea-\\x87z\\xdd(*\\x10f=\\xa7\\xbb%\\x16`WzR[\\xd1\\xe77\\x06\\xfd5A#h@X\\xb4\\x9e\\x9f\\xfb\t~\\x84F~\\x9a$\\xeb\\xa0'\\xa9U\\xa4]6\\x0f\\xb0\\xa4\\xaa\\xbf\\xf5\\x18\\xf5\\x06/\\xad\\xc6xn\\x1c#\\x8fY\\xce/\\x90Z+\\xb7p|L\\x1f\\x1fwI\\xf8sF2r\\\"5\\xc51lc\\xe95\\x9fpK8\tc\\x9c-\\x15`\\xb7\\x87\\xd5\\x859\\xd90HV\\xa2\\xf6\\x85|\\xab.\\xf3\\xf6p\\xae!m\\x05d\\xeb\\xc8%Q\\xaeT\\xe3\\x1a{P(\\xd0\\xa4*,\\x88|p\\x94\\xf9o\\xecY<%/\\xc2T\\xdb\\xaekP\\xf5Cg\\x04\\x83\\xa6\\xf6A\\xd1Y6\\x8b\\x05\\xc0%\\\"2\\x0e\\xa1\\x03\\xfd\\x16|*&\\x84\\x181\\xca\\xe4\\xdf6\\x10\\xc2\\x0d\\xa2\\xaf\\xc8\\xb3\\xb7\\xe2\\xda\\xedj\\x96c\\x91\\xd07&3\\x0cj\\xe6\\x96\\xf6\\x850R\\x0f\\x0b\\x93\\xf9T\\xe4\\x172ODh\\xef\\xf0\\x13\\x85U\\x80\\x03\\xedk\\xdbiT\\xe8E\\xb6\\x865\\xf3\\xd0\\xb0\\xaelO\\x86\\xcc\\xf4\\x1f5]\\x0caI%_\\x8e\\xfe\\xb9\\xbf:\\xe5]h\\xd7\\x16=\\\\\\xe4\\xeb)*\\x050~\\x9fR\\xc1\\xc4\\x97.\\xee,G\\x81\\x88\\xa7\\xdf\\xad\\x0d\\x12o\\x8c\\xca\\xf2\\x92\\xb5KH\\xae\\xe0\\xc2\\x95_\\x96\\x82\\x88`\\x8ef\\xb9P\\x87\\xe2<\\xd5\\xa0'\\x12\\xdf\\xdb+\\xd9\\x02\\x9c8\\x8e\\x0b+\\x9b\\xb80\\x17?R\\xf1c\\x89'\\xacz-\\x82\\xbe\\x08\\xdd\\xa9rS\\xa2V\\xb3\\x1d\\xd4U\\xc8\\x83c\\x17\\xed.XR\\nx\\xbb\\xdb\\xedR\\x86\\xb9\\xaa\\xdab\\xcb\\xe3/W\\xcc\\x1c\\x05<\\xf8\\x915\\xf0#\\xe7$\\x91\\x99N\\x1cy\\xfe<y\\x8a\\xad\\xbc\\xe2)\\xb0j\\xf9\\x9d:\\xd3\\xa4\\xcf\\xb0\\xe8Y\\xd7gZC\\xc3\\x9b\\xa26\\x9a\\xac4\\x19\\xa6\\xa8T\\x89O\\xa0\\x92Y:ux\\xca\\xcd\\xfe\\xee\\x0eb\\xe8\\x1d\\xcfg\\xa3\\xc0\\x80\\xfd}S\\xe4D\\xe3\\xb1\\x98sei\\xc9\\xc4*\\xa3\\x02\\xb2\\x86035N\\xf4;8\\xc9\\x98}d>\\xd3E\\xa64'\\x13\\x8fJ\\xb4\\xfc\\x83A\\x14\\x92\\xffJ\\xcb~ \\xca\\xad\\x8d`p5\\x80e\\xd1\\n5\\xa9\\xd3Y\\x80BM\\xc1\\x0c#\\x12j\\nD\\x04BM\\x91p\\xd8\\xd3\\x14\\x89(\\x83\\xba\\\"\\x1eWPS\\x84\\x91\\x04u\\xefE\\xc8@\\x8d\\xd62\\x8fa\\xa6\\xf9N\\x0er\\xa5\\xf9\\x94\\x85\\x052N\\xcc\\xf0\\x15\\x8f\\xc8a*a\\xc1\\x174\\xa5\\xdcU\\\\7\\x05\\xe6N\\xab\\x98\\xc3jy\\xbe\\xb0j:\\x19\\xbb\\x10\\x96L'C9\\x9f\\xeag\\x10\\x0e\\xee>\\xc9n\\x00\\x8a[\\x13\\x17\\xac\\xf3s\\x92\\xbc\\x8a\\xa6Y@,WA?4\\xaa\\x1f\\xca\\xd2\\xcc\\x0d\\x1eI\\xfc\\xf0\\xa9\\xa3\\x1e|\\x8aUt\\xce\\x85\\x98dh`\\xef\\xdeE\\xab\\x0b/\\x1eB$\\xfa\\xa9\\xd42Y\\xad\\xde(\\x84\\xd2\\xcd\\x89\\xfc\\x8e\\x86*\\xda\\x94\\x90\\xfa\\xa8\\xf9\\x89\\xbb\\x05\\x14\\xe0\\x00b\\xd0\\x8dMX\\xd9V\\x1c\\xb6\\xe0\\x1f\\xbe(\\xd5\\x03be\\x87v\\x7f\\xf7\\xa1\\x9a\\x03\\xd4\\x17E{=]^QVT\\xc9\\x1c\\x9a\\xe5E\\x95l\\xa4^^\\xb4\\xaf\\x16%\\xdcfU=\\xa8&\\xcc\\x0fWy;\\xa3+\\x82-\\xed\\xef1\\x9e\\x88\\xae\\xdb\\xae\\xa3\\xb6\\x1a\\xf0\\xf3l\\xdf\\xd1\\xa5*]\\x19\\xcfg\\xd4'\\xa6\\xe5uN\\xeb\\xd7\\xd9D\\xcdoJ\\xd0^\\xd4r\\x07\\xd2\\xb9a\\xba\\xff\\xb2{.\\xf8\\x02\\xd7\\x1d.\\xe9\\xea\\x9c\\x7fho\\x88\\xb8=\\x172\\xf5\\x03\\x9br\\x9f\\xc8v\\x9d\\x9f#\\x13\\xd6s!.*\\x11\\xc7a^E\\xb9 \\x1d\\xea\\\\B\\xc5\\xa5|7\\n\\xdf\\xc7\\xc1\\xd1\\xc2\\x0b\\xe7\\xa4\\x95+V!\\xe6\\xa5^<'i\\x9dCN\\xd4MH\\xca\\xc4\\x00\\xb3\\x80\\x97\\xc5\\x81JE\\xc5\\xa3\\xf1\\x8b\\xbeq!\\xea\\x06\\x917=]\\x91I\\xab\\x01GL\\x0e\\xebR\\xa6\\xf7\\x10\\xeb\\nA\\xeb}\\x1c\\xa0\\x87\\xb9\\xae\\xc64\\xba\\ni7j\\xba\\xf3|\\x0c\\x08\\xb7S\\xcc\\x8e\\xd0j\\x18z\\xb8\\xa1\\xe7\\x9ax\\xb3\\x88\\x89\\xc1.\\xa6\\x98\\xb2Mp\\xc0\\x14\\xae\\xd87\\x99\\xd2Y\\xe0\\xcdrw\\x15\\x935\t\\x85t`\\x1b\\x06.f\\xf6>\\x0eZ\\x0d\\\\\\xea;b\\x82W7\\x8b\\x83\\x0d:\\xc4\\xb1z\\xf1\\xa4~\\xff\\x88G\\xc0\\x89\\xa2u\\xd0]yqB\\xd8\\xd7\\x8e)\\x834\\x19[Y\\x1cPq\\xdb_z1\\n\\x91\\xd6Y\\x1ew\\xd2\\xac\\x9c\\xa5\\\\\\xd8\\x95\\x1fN\\xa3\\xabn\\x10\\xf1k~\\xdcW\\x93\\x08#\\x1f\\xdc\\xbfoA\\xa7Rc\\x11%\\xa9\\xe6\\xf5\\xcaK\\x17\\xe6\\xeeXmJ\\x98\\xf8w\\x0b?I\\xa3\\xf8\\xba\\xfa\\x06/v\\x98\\xcc^-\\x93un\\\\\\xac\\xb4,\\x97\\xc5\\x1c<\\xa0\\x83e@KH\\xec{\\x81\\xffK\\x0e8]\\x86\\xde\\x9b*\\x1am\\xb4>b\\xd3\\xccIz\\x14\\x853\\x7f\\x9e\\xd8\\x0eE\\x8c\\x84\\xa2\\xf4\\xd8\\xa0p\\xc1I\\x11I\\xc7\\xc4n\\x86r\\x899\\xef^\\xe7\\x12Pj\\x88v\\xc5]\\xb2\\xf0B\\xa7\\x0d\\xa5\\x81<\\xb5\t\\x99\\xbe\\x0c\\xa7\\xe4\\xe3\\xd0\\x90\\xc2\\x1e8\\x03$\\xe1\\xae1\\xcb\\xb1\\x89FE\\xe1\\x0b?HI\\xfc\\xc5H+\\x03\\x7f\\xe0]GYZ\\xa6k\\xacc\\x9d\\xfd [t\\xae<\\xd1\\x0f\\x02\\xc9q\\x8a\\xb4\\x90\\xa1F\\x14'\\x14\\xd8\\xa6\\xf8\\x92\\n@\\xab\\xfap\\xdag\\xe9\\xa5\\xd6\\xf9\\x88b\\xae'\\x9dbL;B\\xdfF\\xa5\\xb7\\xe3\\xea\\xa8\\xf1\\xbe\\xcd2\\x1a\\x98kl\\xc29g\\xd5\\xbc\\\"L\\xd9\\xd4\\x8cYf\\xa0\\xb5\\xc6\\x992\\x88T^\\x10\\xf4\\xf3D\\x9du\\x8b\t\\xd6a\\\\\\xcau\\x86f\\xa5*\\x11Z\\xc5\\xea\\x8e7\\x7f\\xc4.q\\x9a\\x08\\x02\\xde\\xa8\\xd1\\x1d\\x1cr\\xa2P\\xb7\\xe9\\x0b\\x15\\xb0\\x86\\xe0\\x9bU\\x981k\\x7fc\\x1a\\x03Hg0v1F\\xc7`|e\\x0bl\\x10OkZ\\x03z\\x9ch(j\\xbc\\xb7o\\x81D\\xe2\\x06\\xec\\x8ep\\xe86g\\x02\\xe7\\xd7\\xa53\\x816\\x94\\xf3\\x1c\\xe9\\xb8\\xd0\\xf8vK\\x10=C>\\xe4\\xf6@`Z\\xce;\\x9dy\\xc3\\x1eb\\x80\\xd1z\\x07\\xca\\x0f\\xbb\\xfb.\\x11\\x13s\\xe5\\xb8h\\x18!n\\xae\\x89\\xf7!\\xb6\\xf5\\xcc\\x98pU<\\x11\\xab\\xf8\\x8d!i\\x9fx\\xd0\\xc9\\x8f\\xae\\x93\\x1f\\xce\\xb9\\x95b\\x97\\xffIwHVK\\x1e\\xbc\\x9a\\x9bqk\\xe6\\xf9\\x01\\x99\\x1a\\xda\\xc4\\xf3\\xde\\xebN\\xa2\\x00\\x15\\xf3V\\x8c\\xd9=!S\\xdf\\xff\\xff<\\xcf\\xab\\xb3\\xac\\x0b\\xd0\\x11\\x80\\xe1\\xa7y\\x9c+\\x83\\x0f\\xa2x\\x16\\xb5\\xf72<`\\\\=I\\x9bb\\x17f\\xfa\\x15TIW\\xd3-+}\\xa6\\xccFh\\\"\\x8eO\\x9e\\x9aYh\\xadE:?\\xdd\\xfeP\\x1f\\xdc/5\\xb6\\x87\\xe2\\xe1\\x1b'\\xa50\\xad'v.\\xe7\\xcek\\xac\\xa4(\\x03\\xb6j\\x98\\x03\\xcb]\\xd94\\x054\\x07e.S<\\x9f\\xdd6\\xff\\xb0\\xf6\\xb3E\\xba\\x0c^Dq\\xfeQ\\xd5uK<7.\\x18\\x87\\x88\\xf9\\x95\\xf2(f\\\\`\\xf4\\xf0\\n\\x86\\xa2\\xad\\xf9;\\xd6g\\xd3\\xdc\\xfci1\\xbe\\xfa\\xe9L\\xfd\\xc4\\xbb\\x08\\xc8t\\x08Y}\\xc5(d<\\xeb\\x90\\x116I\\xd0\\xad\\xff\\x8e\\xaf~PO\\xb0\\xeb\\x808uLL63{[\\x08b+\\xc9\\xb0\\xcdH\\xc2\\xd2\\xac\\xd6\\x01RF\\x10\\xd1\\xf4v\\x16\\x07\\xdb\\xfcS\\xe3\\x87)\\xaa\\x8dY\\x9a\\xad\\x1az\\xaa\\x01({c\\xfeFl\\xa5\\x02\\x94Y\\x1c\\x98\\xab\\xb7Z\\\\\\x9e#\\xd1pi\\xea4\\xef7\\xffV@\\xe4\\x19\\xbek\\xe1\\x13\\xf8\\x93\\xcbaem\\xf5\\x03u\\xc1:\\xfe\\xb8\\n\\xa2\\x984\\x05;3\\xa2\\xc4\\xd4_\\xb7F\\x88\\x14\\xb5\\xd4\\xfa\\xcd_\\xb7\\xf17\\xe9\\xe3*\\xf6V+\\xf2\\x85;a\\x13\\xd9\\xbem_\\x91 b\\xe6\\x8d\\xb6\\x9c\\xd7\\x0efA\\xfc\\xf9\\\"\\x1d\\x82\\xb5\\xd3\\xab\\xc1\\x86+\\x7f\\x9a.\\x9a*%\\xf1d\\x0831\\x90\\x1a6#\\xa0\\xfd\\x9d^y\\xf39\\x89\\xe1\\xfdK\\xc3\\xack\tq\\x89\\x80'\\xac)\\xcb\\xa9\\xfb\\x04\\x13v\\xb7]\\x96\\xd2^\\x11\\x8bS\\xb7YN\\xb3\\x8b\\xa5\\x9f\\x0eaaZ\\xc1Uw\\xe9\\xad\\xda3\\x0b\\x92\\x04\\x9et'A\\x14\\x8a\\x898\\xf4\\xd3\\xfa\\xe3\\x87q\\x06f\\x9an\\x92\\x7f\\x1d\\x1d\\xa5W8\\xf73\\xc7\\x95\\x9a\\xbe\\x91\\xa8R\\xceCK\\xdb_\\xbe\\xacb\\x90Qojd\\x18\\x94\\x02\\x80`J~\\xccxy\\x7f\\x15\\xce\\x1f_x\t\\xd9\\xdfu\\xfd\\x0f\\xcf\\xde\\x9c\\\\\\xf5\\xbe\\xfej\\x1e\\x1d\\x1e\\x1e\\x1e\\xbe>}\\xbf8~??<<|\\xb6K\\xff&G\\x87\\xaf\\xe8\\xbf\\xaf\\x1e\\x04\\xfb\\x7f\\xa5?\\xbe\\x7f\\xf1\\xec\\xd5\\x87\\xe3\\xf7\\xb4\\xc2\\xfb\\xd9\\xd5\\xad\\xfe\\xeb\\x05\\xbf<\\xbb\\x1f\\xf6\\x9e\\xcd\\x16\\x1f\\x9f\\xad~\\xba>\\xea}\\xdc\\xbd\\x7f\\xff\\xfe\\xfd\\xce\\xcf\\xeb\\xdd\\xa3\\xbf\\xac\\xfa\\xcf{\\x8f:\\x9dY\\xbast\\xff\\x97\\xbd\\xfb_\\xf7\\xf7\\xef\\xbf\\xdfy\\xf0\\xe8\\xfd\\xec\\xea\\xf9l\\xef\\xe1\\xfd\\x9f\\x1f<\\xea\\xbc\\x8f\\x07\\xcf\\x07'G\\x97\\x8f\\xe8x\\xfe\\xfc\\xdd\\xc9\\xe9\\xbb\\xe0\\xd5\\xe1\\xf1\\xf1\\xe1U\\xf8\\xe8\\xfe\\xfd_v\\x0e\\xe7\\xeb\\xdd\\xfb\\xeb\\xef_>\\xbf\\xaf>\\xef_\\x91\\x9f\\xfc\\xfe\\xe5\\xe1\\xe1\\xe1\\xf3\\x87\\xa7\\xefO\\x9e}\\xf8\\xf3\\xfcY\\xf0\\xb7W/\\x0e\\xa3\\xbf^=?|w\\xf2\\xf1\\xe2\\xbbg\\x0ff\\x9d\\xf5\\xdb\\xaf\\xc3\\xe0\\xbb\\xc3\\xbf\\x85\\xfb\\x97\\x83\\xc9l\\xe7\\xf0\\xd1/\\xf7\\xdf\\xce\\xde\\x1c=|\\xf9\\xf2\\xfb\\xd0\\xdf{\\xb1\\\\\\x1e>{\\xf5\\xf0\\xc5\\xab\\xc5\\xd5\\xbb\\xfe\\x83\\xc9\\xa3E\\xb8\\xf0\\xff\\xf6M\\xff\\xe8j}\\xfcM?]\\xbe}\\xde\\xfb\\xf9\\xf4\\xeb\\x9f\\xf7\\xe7\\xdei\\xfa\\xed\\xfd\\xcbW\\xdfy\\xe1\\x87\\xe5\\xe1\\x87\\x93\\xe7\\xef\\x83?\\xf7\\xdf\\xac\\xb3\\xec\\xdd\\xcb\\xd7\\xd1\\xfe\\xe5\\xa3\\xde\\xe9\\xc7\\xd9\\xc3\\x9f\\x937\\xe9\\x8b\\xfd\\xf9\\xeel\\xd6\\x8f\\x92\\xb7;o\\xc2W\\x93\\x0f\\x0f\\xa6\\xbb\\xab_\\xa6/\\xdf\\xa7Y?:\\xdc\\xfd\\xd0{\\xfe\\xb7\\xe8\\xeb\\xe5\\xc7ep\\xfc\\xfd:}\\xfe\\xfe\\xa7\\x9fNw\\xd2\\xe5\\xd7\\xcb\\x9f\\x9fuV\\xdf_?\\\\=\\xef\\x7fx;{\\xf0\\xd3\\xdb\\xe3\\xde\\xcb\\xdd\\xde\\x9f\\xff<\\xf1\\x9e]\\x85\\x19\\xd9\\x9f}\\xf5\\xcb\\xfc\\xfat/\\xfd\\xee\\xe5\\xfbG\\xfbo?<\\x88/\\x9f\\x7f\\xfb\\xe7\\xd7\\xdf|\\xe8=\\xffz\\xf7\\xc5e\\xf4\\xf5\\xf2\\xc5\\xea\\xf5^\\xf4>\\\\\\xfb\\x0f\\xbf\\x8e\\xc8\\xe1\\xe0\\xfe_\\xbeK\\x96\\xdf\\xfd5\\x8b.?\\xf6\\x12\\xff\\xa4\\xff\\xd5\\xc3\\xf4\\x9b\\xcb\\xd7\\xfb\\xe4\\xd9\\xa3\\xe4\\x9b\\xab\\xbf\\xac\\xee__/'\\xd7\\xde\\xdb\\xfb\\xef\\xe2\\xb7\\x9d\\x93\\xb7\\xcb\\x8bW\\xaf\\xfc\\x8f\\x93\\xbf|\\x98\\xbf;\\xe9{\\xef\\xff\\xf6h'\\xfa\\xea\\xbbd\\xfe\\xdd_\\x0f\\xbd\\xaf\\xf6\\x8f\\xaf\\xe8\\xb2\\x1c\\x9e\\xbe\\xff\\xf0\\xe6\\xe4\\xeb\\xbd\\xa3\\xef_\\xbe\\x1c}F\\xd0\\x19\\xd2\\xbd\\xb8N\\xc97Lj\\xae\\xd3.\\n\\xad\\xe2\\xc4N5\\xf2\\x18\\xaai\\xc6=\\x8d\\x84\\xc34-\\xaa\\xe9\\x1c'\\x16;\\xf0\\xcf`\\x87\\xd0\\x81\\xd8\\x81\\xfb\\xb0\\x0b\\xdb\\xd2]\\xe9\\x8d\\x0b\\xa4\\x9bF\\xcf\\xaeS\\x82\\xa6a\\xf5\\xd7f\\xb9\\xe9 \\xb3\\x10\\xc4Q2\\xcb\\x17:*\\xe6\\xfc:\\xee\\xf3\\\\\\x14!\\xb9\\x82\\xa8\\x92\\xe4\\xa7\\xc6N\\x03\\xc7I\\xa0C+\\xb1q*f\\xc3x{\\xe6BF\\xe99%\\x06=\\x97\\x05q\\x86\\xa7\\xd0\\xc3\\x0b\\xe2m\\xd8\\x85!\\xad\\x120\\xfb\\xc5\\x00\\x9e\\xc0\\x8c\\xfe\\xd3\\x19\\xc1\\xae\\x83\\x90\\xf5\\xc7iw\\xb2\\xf0\\xe2\\xa3hJ\\x0eS;p\\xce\\xe0\\xc9\\x13\\xe8?\\x84O\\x95\\\"\\xe8@\\x9f\\x17\\x0f\\xf4\\xc5\\x03V\\xbc\\xaf/\\xddq($\\xc6I\\xa7\\x83\\xe6\\xfa\\xf0\\xf4)\\xf4\\xf7\\xe1\\x1e\\x0c\\xf6\\xf6\\xd4\\xf7\\x0f+\\xaf\\x07{{pO\\x0d-5@)\\x9bI\\xcf\\xe6\\xc9\\x18\\x06K\\xe7\\xf2\\xf4)\\xecV;Q\\x18\\xb3~\\xab^\\xfa\\xbdZ\\x90\\xed\\x9a!\\xf6\\xf4)\\x0cZ\\x03\\xc0\\xd1\\xa2\\xb4WF\\xe0Y\\x1c-o\\x87\\xc2B\\x97\\xc5\\x8d\\x12\\xe0\\x8f\\xb0\\xc3\\xc2=\\x8e9>\\xf782\\xc36\\xf8,\\xc7\\x83G\\xff\\xe9\\x8c\\xa0\\xbf\\xbf\\xf3p\\xc7\\x81\\x88\\xb1\\xe13\\x8a\\xe0\\x99\\x8b\\xd1n\\xb1\\x04\\x9e\\x82\\x07\\x07\\xe0\\xc1\\xb0x\\xa7\\xb2\\xc0\\x0c\\xd2>\\x1c0@\\xa7c\\xda\\x0d\\xdd?\\xbc\\xd1x\\x8c\\xc0\\x19\\x9c\\xd1\\xcd;&\\x0c\\xae\\xf7`\\x7f\\x87\\xbe\\xb0F#\\xcbq`\\xc8\\xb1\\xc2\\xcf\\xd7\\xcbf\\xed\\x0cp\\x1d\\x1e:\\xd016\\xdc\\xef\\x89\\x96)b\\xe4-\\xf3\\xae\\x06RW\\x15\\xee=\\xbf\\x93\\xfe)\\xf2C\\xdb\\x92\\xec\\xb4$E\\x91d\\xc5\\xc9 \\xea\\xf3\\x7f)\\x84\\xa5\\xf8\\xab\\x92\\x9f\\xdc{?L\\x1f\\xb2u<\\x90\\xff\\x18\\xb2\\x90\\x88lQ\\xac\\xc3gG\\xcf\\x8f_|\\xf5\\xe7\\x97\\x7f\\xf9\\xfa\\x9bW\\xaf\\xdf\\xbc\\xfd\\xeb\\xc9\\xe9\\xbb\\xf7\\x1f\\xbe\\xfd\\xee\\xfb\\xbfy\\x17\\x93)\\x99\\xcd\\x17\\xfeO\\x97\\xc12\\x8cV?\\xc7I\\x9a\\xad\\xaf\\xfe_\\xea\\xde\\xb4\\xc9\\x91d9\\x0c\\xb4\\xdd/k\\xf6\\xfe\\xc2~q\\xa4\\x86\\xdd\\x99\\x83\\x04\\n@\\xdd\\xa8F\\xd7\\xeb\\xd7\\xd3#55\\xd3\\xfdl\\xaa\\x1f\\x9fH\\x00S\\xcaJ\\x04\\n9\\x0dd\\x82yTW\\xcdT\\xafQ\\xd2R\\xa2H]\\xdc\\x95(R\\x07\\x0f\\x1d\\xe4.IQ\\xa4\\xb4\\x07wy\\x99\\xed\\x9b\\xf9#\\xfa\\x03\\xfb\\x17\\xd6\\xc2#\\\"32#\\\"\\x13\\xa8\\xaay\\xd4\\xc2\\xac\\xbb\\x00\\xcf\\xc88=\\xdc=\\xdc=\\xdc\\xafo\\xbe\\xec\\xf5\\x07\\xbb{\\xfb\\x07\\x87G\\xc7\\xed\\x1d\\x8b\\xa7\\xcbat\\xa4\\xc8g\\xe9\\xc1\\x13HN\\xa0\\xdd\\xf6\\x1cqS+\\xc3+b\\xc18\\x93Q\\xd9s\\xe8#O\\xe7\\xec\\xe0\\x9b\\xa9z\\x9e\\x1d\\xa4\\xf4\\x14\\xc35\\xc0O\\xc0\\x1e%c\\x0e\\xa4\\x8b8z\\x87\\xc4\\x13\\xa3\\xba\\x15Q}\\x99\\xc3W\\x178\\x1bAO\\xd0\\x0b\\x02\\x1e\\xac\\xb2e\\x1a\\xac\\x97\\x98\\xf0f\\xaf\\xaaE\\xbb\\xca\\xef\\xe7`\\\"\\x95\\xd7s\\x9b.\\xa6v-;\\xfcN\\\"\\xb0x\\xad#\\xbc\\x03=\\x0eq\\xa3\\xe4\\xf1\\xc8\\x87\\x8c0\\xd3\\xfeN\\x8b%\\xd7\\xcc\\xc3\\xdcD\\xf1s\\xa4\\xe0\\xa1\\x90\\x85+.m\\x90\\xad@H\\xff\\xb4G\\xb0\\xeb \\xc2\\xd8)]\tJr(\\xf5\\xec\\x1f\\x1c\\xf6\\xfb\\x07G=\\x8a\\xd7\\xf4\t\\xba\\x8c#\\xa6St\\xdd\\x1f\\xf0'\\x8c|\\xb0\\xe7\\x03*\\x9df\\x02\\xf3\\xed\\x88y\\x18Q\\xfc?\\x92p>B\\xc8\\xa0\\n9\\x90\\x00\\x07\\xbb\\xf0\\x08\\xa2\\xea\\xad+>}\\x99f+\\xe4\\xdf\\x82\\xb1\\xd5\\xb1d\\x0c\\xea!\\x06\\x1d\\x0c(jY\\xe7\\xbaG\\xbbZyC\\x9eM\\xd2\\x8d\\x897\\xab\\x0b\\xbb\\xa7\\xa0\\x02\\x0b\\xabM\\xe7\\xfa\\x08>\\x84\\x80\\xca\\x02\\x942\\xa8\\x12\\x05\\xdd\\x17v\\x9f\\xce\\xab\\xe7\\xe8K\\xf80\\x82\\x04\\xe7L}F\\xd9r\\xe7P\\x85\\xa3\\x9f\\x10\\x9cb\\xc3}\\x18BO-\\xb2\\xe6E:\\xf4\\xb9\\xa6\\xea\\x05K`\\x04m\\xa8\\xe6T@\\xc4B^\\xbff\\x14f\\x01\\x8f\\xf8\\x18:s6\\x08X\\xc0\\xd3\\xa7#\\xe8\\xcc\\xa9\\xe4\\xd0\\xa6;\\x18\\xe6t\\xdb\\x9d`\\xf9\\xc1\\xfe\\x01|\\x88\\xe1\\xb2E\\x03.\\x88\\xfa\\xe6\\xd0\\x19\\xc1\\x91\\xa3i\\x91\\\"p\\xa4\\xb6\\x14\\x95[\\x8a\\xf3\\x96\\xb2\\xbc\\xa5l\\xf3\\x96(\\x91`7 #\\x07\\xfb\\xda\\x87N\\xf5\\x06\\xaa\\xe1~3}5\\xc2W\\x8b\\xcc3\\x19\\x9c\\xc2+\\xef\\x15\\x9da\\xd8\\x81\\x1e\\x15\\xbc\\x16\\xf9\\x9ck\\xf44\\xc8\\xf0>\\xf5\\xd2Ew\\x1d\\xbd\\xb3\\x07\\xec\\xee[D;Z\\xbe\\xc8\\xaa7\\x17KU\\xe3\\xa8?,U\\x15Q$\\x94\\xf6\\x0ce\\xe8\\xef\\xe2 \\xad^\\x93\\xa9\\xcdiBq\\x9b\\\"6\\x0b\\x19\\xcf\\xd1\\x9b\\xd6\\x1c\\xe8\\x91w\\x9e\\xa3\\xb7o@o\\xf4\\xb00\\xa07\\xc5\\xd1\\xc1n\\xce\\xbc\\xe5\\xd1t\\x06{\\xb4\\xc2\\x12\\xe8\\xf0\\xd0\\xd1\\xe3:\\xc5\\xe5\\x98\\x93\\xd5H\\xdf\\x8d\\x19/B\\xa7\\xaf\\xa3y~\\x85\\x12\\xd4\\x13\\xe8\\xc1\\xed-\\xbf#\\x8b\\x8e\\x1b,K\\xc4\\x13\\x14\\x8cq\\xa7i0\\x97\\xce0v\\xd4\\xbbH\\xd0-)H^y\\xafl\\x82>\\xf2\\xcc\\x90\\xca\\xd0\\xe3\\x14lJ2\\xf2\\xc7\\xbcJF\\xbc\\xe7tp\\xb8\\x0b\\xb0\\xae\\xf92\\x8ab\\x1b\\xbf.\\xa3KZz\\x87=\\xf8\\xe4\\xd5\\xc0q\\x81P\\\\K\\xa0\\x8cM\\x9d\\xccq\\xe0\t\\xf4\\x91\\xf3d\\x9d\\x0ee\\xcb\\x1f\\x8e\\x80\\x96\\xa7\\x07\\x82\\x11\\xee\\x94%<\\xa5\\xfd9\\x855\\xec@\\x02CXW\\x10\\x89n\\x89\\xa5CQ,\\xa1E\\x07\\xac\\xb6v\\x9b\\xd6\\xb6\\xc3j\\xcb\\xeb\\x99\\x8b1\\xc9\\x83(\\xb5\\x82Om\\x82\\xb5u\\x18\\xe6\\xca\\x8d\\x05\\xac\\xb6\\x11,q\\xf8\\xc8\\xbd*E\\x96\\xe6\\xf7F\\xd0s\\x9c\\x13\\x08hcG'(\\x9f\\xb5aQ\\x88\\xbd\\x1e\\xa5T\\xed\\x11\\xcc(\\xad\\xdeAzA\\x85\\xa7:\\x12\\x94Qd\\x0e\\xe0\\x96\\xbe\\xeb\\xd3w\\x83\\x13\\xf0\\x19\\xc5Q\\xaa\\xcf\\x8a\\xea\\xb3\\xbcz_W=\\x7f\\x15:0\\x9b\\xc2\\xed\\x08\\xfa\\x03\\xba\\xb1\\xae*\\x1c\\xae\\xe1P,+p\\xca\\xdb6\\xf7\\xea\\x0c\\xed\\xdd\\xc1Q\\xe5\\xc8[x\\x85\\x96\\x1dk7i\\xb2\\xb8\\x921\\xd08\\xdb\\xc6\\xdd\\x9f<{\\xfd\\n\\x1d2\\xf9W\\x9d\\x87M\\x9e\\xe6fXI{S&yMW8\\xccwS\\xf2\\n\\xf9\\x85\\xdd@{[w\\xa3\\xf1\\x9a\\xf4\\x0e\\x92g\\xed\\xa8\\x14\\x0d]LPd\\x87\\xf6\\xee\\xae\\xe2w\\x1c\\xf0GG{\\x8e\\xd6\\xa57\\xfa\\xf1\\xba\\xf4n\\xe3\\xdd\\xde\\xa8KU\\xd3(H\\xf9\\x185q\\xbbh\\xf9\\x8a\\xe3.\\xf3\\x11\\xa7\\xef9\\x1b7\\x0b\\x924^g\\xa5\\x8eq\\xa5j\\x94\\xcaxM\\xd8\\xfc\\x9c\\x12\\x03\\x161\\xc1\\xe0\\xc3\\x11\\xdf\\xd4(\\x8a\\x8bP3\\xeclT\\xf5\\x83vN\\xa0\\x85>\\xfaH\\xf2\\x92Rv\\x00f\\xee\\x0fy\\xbc\\x0b\\x9e\\x94\\xc0\\x85\\x16z\\xce\\n\\xa7!\\x96\\x1f\\xc19\\xe1\\xe34\\x18\\x85\\xde\\x83\\xef\\xb1\\x84 u\\xda\\xf0\\x88M\\x15\\xcb\\\\n\\xa8g\\x1e\\x84\\xderY7\\xe4\\xfa\t\\xa1\\x9f\\x16\\xfa\\x13%]\\xbe\\xd4\\xd2w\\x83\\xd3\\x18l\\xd84\\x08\\xf9L\\x9c\\xfb2su\\xfa\\xf1i\\xa1\\xda[\\xf7X\\x9ca\\xa7:\\xe7\\xc5\\xa9\\xf3\\xcd\\xcd\\x9aTN\\x9e<\\x80\\x12\\x0bV\\xc5\\xeeYf1\\x8b\\xe1\\x11\\xa4$\\xf6.\\x96E\\xc0\\x7f\\xe5\\xc2V\\xd14{\\xf2 \\xbcb\\xb7\\x1a\\xdb\\xfa>\\xbc\\\"\\xb4\\x8f\\xf6\\x1d\\x17B\\xfb\\xf8\\x00=\\xa5\\x8b\\x0e\\xd0\\x96\\x06\\x1bu\\xbb\\xe07\\xfd]\\x1d\\xc7\t\\xed\\x03\\xc7\\xb6p\\xb6\\xd2(\\xaez\\xea\\xb0\\xeb\\x80\\xbb\\xa6x\\xe1\\x94\\x89u\\x83\\xe4\\xa5\\x98\\xebM4\\xc89\\x85\\xd2\\x9eUyD\\x15\\xdc\\x8a\\xe3\\x80\\xa5t\\xf8\\xeew\\xf3\\xee\\xe1\\x9d[L\\xb7U\\x8d\\xc9\\x12\\x97|k7\\x9a\\xde\\x0dWt\\xefAWtww_Y\\xcb\\x81\\xd3\\xe5w{\\xbc$\t.\\xc3Mj\\x92\\xd7U\\x9a\\xca\\xd8\\x8e\\xbbg\\xd0\\x86\\xb8\\xfb\\xb1\\x0b\\x16\\xabU1\\\"\\xb2V\\xd8\\xe8\\x0e\\xa4I\\xdb\\x08\\xa1\\x9an\\x9a\\xeeU\\xaf\\x94\\xf2\\xa8\\xef\\xbd\\xaa\\x14\\xc5p\\xeb\\xa0:\\xbd,F\\xfd~5v\\xbc\\xc7j\\x19T\\x8b'9J\\xf1\\xc9\\xd3cj\\x0b\\xbd\\x07C{p\\xec\\xd8F>-\\\\\\xf1\\xbe\\xd2\\xc4e \\x068e\\x9a,\\x91\\x88\\xceQ\\x0d}\\xc8t\\x9a?K\\x8b\\xfd<\\x80\\xce!e\\xe9\\xc9z\\x19\\xa4\\xb6e9\\x1a\\xc7-\\x1d\\xeb!\\xe3t\\xaap\\x9b\\xf7\\x8e\\x0b\\x87\\xd0\\x1aA\\xc2\\x82\\xd5:<\\xcf\\x91\\x9c\\x1e\\x91=\\\"\\x8e\\x93\\xab\\x89\\xe8\\x0b\\x92%\\x86\\x1e\\xabj\\x85\\x88R \\xe6\\x0cm/t\\xces\\x911We\\xd3\\xf3o\\x9f\\xd9F\\x82\\xee\\x9cYC\\xa2\\xee\\xfc\\x84\\x9e\\x8b\\xc0\\xd7\\xe4\\x15\\xcak^\\xbbx&\\xf5\\xec\\xbc\\xd2\\xb1\\xdfnO\\x1d\\x17\\xcf\\xa1\\xf4\\xd0\\x14\\xdb\\x0b\\xa7\\xebG\\xa1\\xef\\xa5\\xf6\\xdc^\\xa0\\x02\\x9a\\xc2\\\\<\\x89\\xce\\xf2>\\xdc0\\x0b\\xcc\\x15<\\x85\\x9b\\x13\\x07\\x96\\xec\\x9e\\xd3\\xc2\\xc5\\xb3\\xf3l|Cke\\xe2\\xc2xM't1^\\x1b\\xf4j\\xd2MK\\x18B\\xb2\\xc9\\xe6\\xd9\\x90\\xe4<\\xe4\\x81\\x83\\xd6w\\\\Cr(\\x0elRO\\xb1\\xc3\\x95\\xbd\\x19\\x88\\x8d\\x7f\\\"\\xb5\\xda\\xdf;vl\\x8b\\xd6n\\xb9[\\x88\\xc65f\\xb8\\xc0\\x8e\\xa9`[Fp\tM7\\x19E=\\xf5\\xda\\xf9\\xdc\\xfe\\x89A\\xefv\\x928\\x1f\\xda_xW^\\xe2\\xc7\\xc1:\\xbd\\x9dy\\xa9\\xe7\\xec\\x04+u\\xd4;\\xe3\\xcf'\\xd7\\x83^gr}\\xf8b\\xbasY-\\x12\\xb1:\\xc7\\x9f\\x0f\\xa7mg\\xb8s\\xb9RI\\xdd\\xd8\\xeaZ.X;\\xb2\\xef\\xb9\\x19K\\x12/\\x0c\\xd2\\xe0K\\xf2\\x83x\\xd9t\\xf3@\\xd8\\x92\\x98R5\\x15\\xd7~\\xe8Y\\xce\\xd2y\\xb4n\\xb4\\x12 k\\x95\\x85\\xde>\\x1d\\xf7\\xa6\\x0e<\\x85\\x8e&'\\x95\\xed9\\xdc\\xd6\\x84\\x8a{\\xaf\\xbb\\xa2\\xd2\\xb3\\x1d9\\x8e\\xb0-1\\x0bm\\xdcMI\\x922\\x15\\x8e\\xe5]DY:\\xbcXz\\xe1[\\x0b\\x86\\xe0a\\xc4<\\x19hB\\x81M0\\xa0\\xc0\\xe3\\xdd=\\xbd@\\xb4\\xbb\\xbf\\xeblc\\x1e\\xc6`\\xf8\\xdd4\\xfa$zG\\xe2\\xe7^Bl\\x0c\\xd1\\xda\\xa6C\\xa6t\t\\x03\\x96W\\xe3\\x9e\\x1a$\\xaa`\\xbb!\\xec\\xe9\\xc3:\\xf4\\x0f\\xef\\x1e\\x98\\x027Yy4[\\xcaUE\\xf7\\x0e\\xaa\th\\xf8\\x04\\xefU\\xb98\\x93\\x05\\xaad\\x8f\\x89\\x02\\x87U\\x81\\xc2\\x03\\xae\\xfeS%\\x81\\x98N\\xb8\\x14\\x93e\\xc8\\x05\\xcarIf 8\\x85\\xa4+\\xf2\\x87\\xe5\\x05\\xebg\\x0d\\xb3\\x12V\\xe6\\x0d\\x03k\\xf2\\xa4\\x8e\\xfal\\x80\\xaa\\xc2<\\x92\\x93\\x1b\\x06<\\xdfX\\x1b,K-\\x9a\\xc9E}8\\x05_\\xa4\\xfb\\xa3\\x9b\\xa2\\xf2\\x82\\xe0\\xc1DS\\x19\\xaf\\xc2\\xeaa/\\xc3B\\x15;\\x1aA\\xc7\\xa3\\xdb\\xae\\xd3\\xa3\\xbb\\xad)~\\x80\\x89\\x9dm.!t\\xfa\\xdc7\\x83\\x07\\xc1K\\xb9\\xa2\\xb9l\\xf2f\\n\\x90\\xd89\\x81v;\\x84'\\x10\\x9f8\\x10\\xf0\\x00\\x83<\\xbcv\\xa8\\xe6\\xc6\\x16s\\xfa\\xa0\\x18\\xcb9\\xa5!~.Z\\xed*\\xc7\\x11\\x15\\x8f\\x83\\x1c\\xd7TdfX+\\xe5\\xb2\\xdb\\x10\\x1d\\xcd\\x87\\xac\\x88\\xdf\\xde\\xc6\\xf0\\xa4\\xa5\\x12 \\xae\\x86(qW\\xf5\\xda\\x86\\x94G$5\\xe8m\\xc4\\xccUB\\xd8\\x95\\xb4$\\xef\\x95.\\x06h\\xdbf]\\xd4/`\\xcc\\x9d\\x06NE\\x07B\\x18\\xc2\\x8c,IJ\\x10R\\x8ap\\xd8\\x8c\\xa8\\x02\\xf5\\xaa+\\x99O\\xfa\\xb6\\x13-D@1\\x88\\xbb\\xe2\\xdb\\xee^\\x95\\xe8\t\\n\\xaeO\\x92\\xb5\\xbb\\xaf\\xcb\\x92\\x85\\x8c\\xe0\\x8eC\\xc8\\x0bhu\\x83\\x04%zSx\\x01:\\xa5\\x01c\\xda\\x11\\xa3H:r+>\\xcc]\\xe5\\x149>\\xe5\\x88hZF\\xb3\\xb2\\xbe|\\xc2\\xcb\\xc7v\\xe8B_:\\x9e\\xd0w\\x93e\\xe0\\x13\\xbb&\\x91\\xb27N\\xa76\\xa5\\xaaI\\x193\\xef\\xbeR&-H\\x93\\xa8 0^\\xefe!0)\\xdfd\\xdc\\xd7\\xe1\\x14\\x02J\\x8dQK\\xf9\\xe8\\x11\\x84\\xf0\\x94\\xd9\\xf4R<\\xd7\\x88\\xa6\\xb6\\xd8\\x03\\xdbv9f\\xa4Z\\x99_\\xf3P\\x98YOx\\xfbt\\x08<\\xc5\\x1eS\\xda\\x1e@\\x1b\\xbd6P\\n\\x0c\\xf9\\x03\\x1c\\xa0\\x93\\xbf\\x84a\\xfc\\x02\\x87\\x91\\x7f\\xfar\\xc8_\\x0e\\xa1\\x83\\xceXO\\xa1\\xe7\\xb2/#\\xad\\xd9\\xf0\\x8aG\\xbc`\\xac#@\\xd6\\x11\\xc3\\x13\\x08N\\x1c\\x88Xh\\xb1t\\x1c\\xd3\\x9e\\xe8\\xfd\\x11\\xa3;\\xe3\\xc6~u\\xb76\\xed\\xe2A#.\\x19\\xe5\\xb3\\x94m\\xb7\\x94\\x1dp\\x1bIO3\\n\\x18ZJ\\x0b\\x15\\xc4\\x16M\\x08\\xb2`\\x8d'\\x93lv\\xd4\\xebu\\xe8\\xdf\\xf9|>\\xad\\xb8\\xa3\\xc7\\xa2Po\\x97\\x15\\xea\\xed\\x1e\\xcc'\\x93lN\\x06\\xf8sN\\x06\\xf4\\xe7\\xa07\\xc3\\x9f\\x83\\x9eZ\\x05\\x9dd\\x0b\\x9b\\xd9\\xf5\\xc7\\xac\\x99\\x0bSs\\xe8\\xd85\\xfe\\xbc\\xa1S\\xe8\\xc3e\\x9f\\x0e\\xe5Jg\\xe4\\x00\\x8b\\xcf\\xe6\\xf3\\xa9\\xf3\\xd5\\xe0\\xbd\\xa52\\xf0\\xf2`/\\xe6\\xf3)\\x02|sC\to(\\xcfk~\\x9b\\xe7Fw,\\x16\\x89A\\x95Y\\xb1\\x999\\xe9\\x11\\xf6g>=\\x15i\\xefm\\xde\\xe9A\\xaf7\\xe3\\xb5\\x8e\\xb9G\\xcd\\x94\\xd3\\xcd[\\x0bEL\\xc7X\\x87\\xe5|XU\\xff\\xce\\xa5^\\x8e#\\xd1\\xd5S+\\x0f\\xed\\xe6BX\\xad\\xbf\\xd2\\xef%\\x8cx\\xb6X\\x1bGg\\x9f\\x8e\\x8a\\x91\\xe2\\xa0\\xe7\\xd0\\x06\\xdf\\x05\\xeb\\xd2\\xba\\xeb\\x9eH\\xf9\\xa9r\\xe9\\xb0+\\xc2w\\xdf\\xc6\\xd5s\\x898\\x10V\\xa3\\x01\\x8am\\xac;\\xb1\\xf0\\xd1Z\\xe3\\xc7\\xff\\xe5\\xe7~mj\\xddkd\\xf5\\xccY\\xc8JvdS.\\x9c\\x1f\\xf13<\\xe2;\\x18\\xb7\\xc72\\xdb=\\x1a\\xf7rC\\x02U\\x13\\x9f\\xd31\\x8d\\xa8F\\xde\\xd7Pr\\x14\\xff\\xa2\\xdc\\xdf/\\x1d\\xb7\\xdb\\xc1\\x14\\xe9y\\x00O :q\\xd81\\x87\\n\\x06\\xe98\\x98\\xa2\\xeb\\x8dA\\x92l:\\xcf\\xd4`\\x83A\\xcfU=s\\xa3\\x96g<\\xb9\\xf6{\\x9d\\xc9\\xf5\\xec`r=;\\xeaL\\xae\\xe7\\x07\\x93\\xeb9~\\x99O\\xb2^\\x9f\\x92\\x82\\xac\\xd7?\\x9cOw.kpf[zx\\x1f\\xe4\\xb2S\\x14\\xdfR\\xc7a\\x96q\\x81>\\x11]\\xdb\\n2\\xdd}\\x12\\x0f\\x9dJ\\x90\\x03\\xebG?g\\x0d\\xc1zV!\\x14\\xd6\\x8f\\xfe\\x96\\x1e\\xfc\\xb7\\xf5\\xe0\\xbf\\xa3\\x07\\xff\\x8fz\\xf0\\xcf\\xeb\\xc1\\xbfI\\xc1\\x9e\\x02\\xfe-=\\xf8\\xdf\\xe8\\xc1\\xffV\\x0f\\xfewz\\xf0\\xbf\\xd7\\x83\\xff\\x1e\\x05?W\\xc0\\xbfC\\xc1\\xbe\\x02\\xfe'\\x14\\\\M\\x91j\\xfd\\xe8\\x0f)x\\xa6\\x80\\x7f\\x81\\x82\\xab\tD\\xad\\x1f\\xfd}=\\xf8\\x17\\xf5\\xe0_\\xd2\\x83\\xff\\x17\\n&\\n\\xf8\\x7f\\xd5\\x83\\x7fW\\x0f\\xfe==\\xf8\\x1fP\\xf0K\\x05\\xfc\\x0f\\xf5\\xe0\\x7f\\xa4\\x07\\xffc=\\xf8\\xf7)8P\\xc0\\xffA\\x0f\\xfe\\x03=\\xf8?\\xea\\xc1\\xbfL\\xc1\\xaf\\x14\\xf0\\x1fQp\\xf5\\n\\xab\\xf5\\xa3\\xff\\x89\\x82_+\\xe0\\xffY\\x0f\\xfe\\xa7z\\xf0?\\xd3\\x83\\x7fE\\x0f\\xfeU=\\xf8?Qp\\xa4\\x80\\xff\\xb3\\x1e\\xfc\\xbf\\xe9\\xc1\\xff\\xbb\\x1e\\xfc\\x7f\\xe8\\xc1\\x7f\\xac\\x07\\xff\\x1a\\x05\\xff@\\x01\\xff\\x0b=\\xf8_\\xea\\xc1\\xffJ\\x0f\\xfe\\xbf(8S\\xc0\\xff\\xb7\\x1e\\xfc'z\\xf0\\x9f\\xea\\xc1\\xff\\x9a\\x82\\xab\td\\xad\\x1f\\xfd\\x19\\x05\\xdf(\\xe0\\xbf\\xd0\\x83\\xff.\\x05?S\\xb7\\xc3oS\\xb8\\xa7\\xc2\\x7f\\x9d\\xc2\\xdf,\\x14\\xf8\\x9fSx\\xaa\\xc2\\x7f\\x83\\xc2\\x93jH#\\xebk=Y\\xfeZO\\x7f\\xbf\\xd6\\x13\\xda\\xaf\\x91\\x88+\\xe4\\xed\\xeb\\xbf\\xa3\\x07\\xff\\xbc\\x1e\\x8c3\\xa0\\x10\\xc3\\xaf\\x7fA\\x0f\\xfeE=\\xf8\\x1f\\xe8\\xc1Hh\\x15\\x8a\\xfa\\xf5\\xdf\\xd7\\x83\\x7fI\\x0f\\xfe\\x87z0\\x92 \\x85,\\x7f\\xad\\xa7\\xd6_#eR\\xa8\\xf5\\xd7\\xbf\\xac\\x07#\\x99P\\xe8\\xef\\xd7\\xffT\\x0f\\xfe\\x15=\\xf8W\\xf5\\xe0\\x7f\\xa1\\x07#\tR\\xf0\\xed\\xeb\\x7f\\xa6\\x07\\xffs=\\xf8\\xd7\\xf4\\xe0\\x7f\\xa9\\x07\\xe3\\x9e\\xfd\\xab\\n\\xf8\\xd7\\xf5\\xe0\\xdf\\xd4\\x83\\xff\\x8d\\x1e\\x8c\\x9b\\xf3R\\x01\\xff\\x86\\x1e\\xfc[z\\xf0\\xbf\\xd5\\x83\\x91\\xd9\\xff5\\x05\\xfc\\xdbz0\\xca\\x00\\xca\\xc6\\xfc\\xfaw\\xf4`d\\xb1\\n\\x07\\xfb\\xfaw\\xf5\\xe0\\xdf\\xd7\\x83\\xff@\\x0f\\xfeC=\\x18\\xd9\\xb7\\xc2\\xd8\\xbe\\xfe==X\\xcf4\\xbf\\xd6s\\xc7\\xaf\\xffH\\x0fFv\\xf2\\x93\\n\\x18\\xd9\\xc9\\x17\\n\\x18\\xd9\\xc9_W\\xc0\\xff'\\x05\\xbfU\\xc0\\x7f\\xac\\x07#'\\xf8D\\x01\\xff\\x89\\x1e\\xfcgz\\xf0_h\\xc1\\xdf\\xfc-}i\\xe42\\xd5\\x981\\xd6\\xd7\\x7f\\xaa\\x07\\xff\\xb9\\x16\\xfc\\xcd\\xcf\\xe9\\xc1\\x7f[\\x0fF\\xd2\\xabH#\\xdf\\xfc\\xbc\\x1e\\xfc\\xf7\\xf4\\xe0_\\xd4\\x83\\x91\t(\\\"\\xcd7\\x7fW\\x0f\\xfe\\x05=\\xf8\\x97\\xf4`\\xa4\\xdf\\x8a\\x90\\xf2\\xcd?\\xd2\\x83\\xff\\x89\\x1e\\x8c\\x84Z\\x91/\\xbe\\xf9\\xc7z\\xf0/\\xeb\\xc1Hc?S\\xc0\\xbf\\xa2\\x07\\xff\\xaa\\x1e\\x8cT\\xb3\\x1a\\x93\\xc1\\xfa\\xe6\\x9f\\xeb\\xc1\\xbf\\xa6\\x07#\\xa1>S\\xc0\\xffJ\\x0f\\xfeu=\\xf87\\xf5`\\xa4\\xc8\\x8aT\\xf0\\xcd\\xbf\\xd6\\x83\\x7fC\\x0f\\xfe-=\\x18)\\xf2\\x1b\\x05\\xfc\\xef\\xf4\\xe0\\xdf\\xd6\\x83\\x91\\xf4VC\\xe4X\\xdf\\xfc{=\\xf8w\\xf4`$\\xa6\\x8aP\\xf8\\xcd\\xef\\xea\\xc1\\xbf\\xaf\\x07\\xff\\x81\\x1e\\xfc\\x87z\\xf0\\x7f\\xd2\\x83\\x91\\xc6*\\\"\\xe47\\xbf\\xa7\\x07\\xff\\x07=\\xf8?\\xea\\xc1\\x7f\\xa4\\x07\\xffg=\\x18I\\xef\\x0f\\x150\\x92\\xdew\\n\\x18I\\xaf\\\"\\xe3~\\x83\\xa4W\\x11f\\xbf\\xf9c}i$\\xbd?\\xa3\\x80\\xffD\\x0f\\xfe3=\\x18\\x89\\xe9\\x97\\n\\xf8O\\xf5\\xe0?\\xd7\\x82\\xbf\\xc6\\xd5y\\xa92\\x1e\\x9c\\xab@\\xe1<\\xdf\\xb0\\xe3\\x9a\\\"\\xb9|\\x83\\xc2R\\xa4\\xc2Q\\xb0|\\xac\\x927\\xe4\\x1bI\\xe1\\xcab\\xf2\\x08a\\x8ex\\xdb\\xab\\xe9\\xee\\xa3Q\\x945u\\xdc(5\\x84tL\\xa6\\xa5\\x17\\x9aT\\x895J!\\x83_\\xc8\\x81>\\x1d\\x89\\xa2q\\xcbx\\xf1~\\xa3\\xeaKo\\xde\\x12zc\\xbcK\\x92\\xf2\\xe4\\xdd\\xdc\\xf2\\xc6\\x9c\\x92\\xe4\\x81\\xa3}\\x93\\xdb]\\xb2\\xc2\\xee\\x82\\x1aL\\xa6x&\\x9b)\\x9euv\\x12\\xf4 \\xeb\\xf5:\\x93\\xeb\\xc1|r\\xbd\\xebu&\\xd7{\\xbd\\xc9\\xf5\\xfeEgr}\\xd0\\x9b\\\\\\x1f\\xd2/\\x87\\xf3i{\\xe7\\xae6j\\xd1\\xc9\\xf0>\\x9d\\xf4:_N\\xc7\\xcf:?3\\xbd\\xc5\\xff\\xbf\\x1a\\xb8\\xef\\x11v;\\xeeu\\x8e\\xa7\\xf4+{\\xc8\\xbf \\xf4v\\xfc9\\xfb\\xd9\\xeb\\x1c\\xc3t\\xe7\\x8e\\xdd\\x0f\\x99g\\xd8Vv\\xae\\xdc\\x085\\x99\\\\{\\xfedr}\\xd1\\x9fL\\xaeg\\x87\\x93\\xc9\\xf5\\x9c\\xfe\\x87\\nV:\\xe1l\\xc6q\\xca\\xd9\\x9c\\xe3\\xa4\\xb3Y\\x9f\\\\_0\\x85k\\x8f+\\\\\\x0f\\xe60\\x99\\xa4\\xf4\\xf5\\x8b\\xc9\\x84\\xbe\\xeb\\xf5P/;\\x9fO&\\xe1d\\x12c\\xa1\\xc1\\x11\\xfbs<\\x99d\\xfd\\x83#Z\\xa2\\x7f\\x84\\xd6\\x16Z\\x11\\xfb\\xd3g\\x7f\\x06\\xec\\xcf.\\xfb\\xb3\\xc7\\xfe\\xec\\xb3?\\x07\\xec\\xcf!\\xfb\\xc3\\xea\\xec\\x1d\\xb3?\\x1ek\\x81un\\x9f\\xfe\\xd9\\xed\\xf5\\xaaq\\xae\\x98y\\xcd\\x826\\x0b\\xecm0\\x9d\\xcd\\xda\\x96\\xba\\xe1P\\x0b=8\\xe4\\xc3>\\xbc\\xd0[\\xc9\\xe8R\\xd3I\\x9d\\xd3\\x99\\x9a\\x1fL\\x98\\xb6{r\\xad\\xda\\xba<\\xad\\xe9Mt\\x0d-A\\x95\\x06\\x8dU?\\xeb\\xfc\\xcc\\x84)\\xdaQ\\xd3\\xceT\\xed\\x93\\xeb\\x191\\xd9\\xd7\\xb60\\xe4\\xf9w2\\xe4\\xa1\\x89l\\xbcq\\xbf\\x96\\x92E-\\xcb\\xed~\\x9e\\xcer\\xb6\\x96\\x8a\\xce\\xeb\\x8b.x\\xd1-\\xcd\\x07\\xb7&\\xdb\\xa9S\\xb5>\\xce\\x8c\\xd6\\xc7\\x85\\xc1\\xfa\\xa8\\xb5\\xb5\\xe2\\x1d\\xe8\\x8d\\x0c\\x92\\x0b\\xbdA\\xf2\\xaad\\x90\\xd4\\xd7G\\x9f\\xcd\\xca\\xaf\\xdd\\x14&\\x96\\xf1<\\x8fs\\x8f\\xf3\\xdf\\xa6\\xd3\\x86\\x96:\\xfbt8\\xbb].oW\\xb71\\xb9Mn\\xd3\\xdb+\\xe28\\xa7\\xdc^9\\x8e]\\x98\\xbb`}`\\xa9\\xf6NX+\\x15}t\\xfb\\xc9'\\xb7\\x9f\\xde~\\xf6\\xe2\\xf6\\xec\\xf6\\xcd\\xedO\\xbd\\xa8T\\x04mX\\x9a*+\\xfa\\xb7\\xdc\\xa4\\x7f\\xe2\\x8d\\xa6\\xe6-\\x17\\xf7\\xfb\\x87\\xf6\\xe9\\xb0\\x7f\\xf6\\xe6v\\xf0\\xea\\xa3\\xdb\\xdd\\xcf>\\xba\\xb5O[\\xe3\\xfe`w\\xeaL&\\xb37\\x7f\\xcd\\xb1OG\\x93\\xc9\\x05\\x92\\xf1\\xf3\\xa9#\\xbf\\x93\\xa4\\xb7\\x83pv\\xbb\\x1b\\xcfJ\\xef\\xa4\\x8b\\xfc\\x9dg\\x9d\\x9fa\\xef\\x04.\\\\I\\x03\\xbb\\x97\\x8dJ0\\xaf\\x9b\\xcd\\x98\\x97Y\\xe48\\xa8\\xe6\\xf4a\\\"\\xc7a\\xd5\\x05\\x98'@\\xeb7:\\xd0V;\\xcc\\x82l\\x06_\\x12vw\\x9b\\xe7\\xc6\\x9cy\\xa9w\\xae\\xcf\\x7f\\xba\\xf0\\x92\\xc5\\x10o\\xb6\\xc5\\xae\\xf2p\\xe5\\xad\\xf1\\x99\\x1d\\xd1q\\x07\\x1a\\x0f)\\x91f\\x0b+(=\\xbd\\xbb\\\\\\xa6\\\\\\xc6\\x11rYU^\\xe3\\xf6o\\xc55\\x97\\x0bf\\x8a\\xdb\\x8b\\xc7\\xe1\\x03\\xed\\x9d\\xdd\\xc4\\xec\\xc8\\xa8\\xb3%\\x87\\xdb\\xd9\\x92Y\\xd6\\xcc%\\xf1b\\x1b-\\xc8\\x04\\x03\\xb9\\xe8\\xa4_1\\x13T\\xd2U\\xfd\\xcaD\\x18\\x7f;f\\x1e\\xeb\\xe3\\xfe\\xb4\\xde\\xb4N?\\x89\\x9c\\x0b\\x92\\xf6\\x81e\\xed\\x92\\xc1\\xdc\\xab\\x11\\x13x\\xca\\xf0K\\x82\\xf2i\\x19\\xb8\\xf0(\\x12fe`\\x82%\\xbd\\xf2\\x1d\\x8f-/u\\x1c6\\xca\\xd2Z\\x84\\x970<f\\xaez\\xd9\\x12\\x03\\x0f\\xe0u#yK\\xdc\\x15)\\xfb\\x87\\xfa\\x9d\\xbb{P5\\xcf3\\xa448H\\xf6\\x0f\\xab\\xb8\\xed\\xe1\\xe5\\x8c\\xc9\\x98g\\x12\\xed\\xb6O\\x9f\\x17\\xc9:'\\xd3\\x0fvT\\x89\\xe2c\\xdec\\x93+\\xb0\\xdf\\xe8,<\\xc7\\xbb\\xc9zW`*\\x1b\\xf8\\xb5\\x8e\\xc4k\\xc9U\\xe0s\\x94\\x0b\\x98\\xff\\xe9\\xb20\\xd7\\xef\\x8c'\\x93\\xcf?\\xe8~\\xd8>\\xb5\\x9d\\xf1d\\xfa\\xd5\\xfb\\xdb\\xe9\\xce%\\xd2\\xf1\\x0f\\x1eYR\\xb1r3\\xb7\\xf9}\\x07\\xa7\\xfb\\xe1)R\\xf4\\x89\\xed\\xdc\\xe2\\x06\\xea\\xb69`\\xea`M\\x1f\\xf4\\xbb\\x1f\\x9e2~\\xf5\\xc1\\x9d\\xe9z\\xcbn\\xa1\\x0b\\x1b%n\\xc2\\x03\\x01o\\x1e`\\x18\\x8d!x\\x0e\\x13\\xfb\\xb3\\xd2\\x8d\\x9f\\xcdQ'\\xcf\\xe5\\xa6$\\xbe\\xccs\\xb9\\xed\\x8c?\\xefN\\xdb\\x1f\\xect\\xc95\\xf1m\\x8cR\\x16\\xe0m\\xa8\\xe2[\\xf7\\xe5\\x8b\\xf3\\xef\\x7f\\xf6\\xfa\\xcdk\\xbc\\x87j\\xe1\\xa5\\x15\\x8b\\xdf\\xf6Kb\\xdf9\\xefw\\x99\\x03W\\xd9\\x15\\x7f\\xbb\\x99hE\\xcc\\xd9%\\x08\\xb7M\\xfa)\\xed^gl\\x9d\\x9f\\xfbQL:_$\\xe7\\xc9\\xc2\\x8b\\xc9\\xec\\xfc\\xdct\\xa7\\xe8\\xae*\\x05\\x8dc\\xff\\xc6\\n\\x83\\xe6C\\xdbf\\xb3&\\x18\\x03\\xd2\\x96\\x85\\x87\\xac\\xe3\\xd1\\xa3\\xdc5\\\\\\xa6I\\xe3T\\xef\\xe6Y\\x90\\xa5\\x0e\\x0b\\x1e\\xc6c\\xc6\\x90;\\xcf\\xbe\\xce\\xfb\\xd3:?_F3/Y\\x9cSF\\x7f\\x9e\\xc7\\x94;?\\xd7\\x1c\\xb9\\x14\\xbf\\xf4\\xf2\\xf6\\xdc\\x16\\xb5J\\x93$\\xa6\\xa3<\\x17\\xc1\\x1cl\\xc5\\x83\\x0b\\xa4\\xb33Q\\xa6\\x0fJ\\xde\\xca<\\xc4P\\xbe\\xdau\\x99\\xf4\\x85\\x7f-\\xbf\\xba\\x82\\xd7]N\\xd9\\x8dU\\xe12\\xfe\\xa0s\\xff\\xe3\\x9f\\xce\\xfc\\xda\\xc2i\\xf9\\n;\\x8e0\\x90\\xc6\\xfd\\xa0\\xe3\\xac\\xc1\\xb1\\xa61j\\xf6\\xb2X\\xf9\\xe6a\\x16;\\xa8]\\xde\\x89L\\x18\\xeb\\xbb\\x10\\xb2\\xdb\\xc8\\xe8\\xc7')\\xd7\\x08\\xf7\\xfa&L8\\xb8/uh\\x12I\\xc6\\xd3\\x07\\x12B\\xb42\\x08\\x0b\\xd5\\\"\\x89a\\xebe\\xe0\\x93\\xa6\\x89\\xdf\\x08\\xb9\\xf4Bo\\xccPH\\xbb$-;\\x14\\xc1\\xb6l\\xba;\\x8b\\x04i\\x1d\\x8c\\x1aE\\xba\\xebh\\x8d\\xa9\\xda\\x0bl\\xc4k\\x15.t:\\xf9\\x1c\\xb9\\xd0\\xbb\\x13\\xbb\\x15\\x93\\xf4\\x974\\xf8\\x90\\xc7\\x13+T\\xb6\\xe3p:\\xee7q\\x9f\\x87\\x1cI\\xee\\x8b[\\x1e\\n\\xa5t\\xa5\\x9b\\xb1\\x0f\\xdf\\x93Mw\\xb2:\\xad\\x18q\\xca\\xae\\xb9E\\xc7\\xa7\\xd5n\\xb7%\\x0c\\xe1at\\xc6\\xb4\\xe1)^\\xb3\\x0f\\xc7\\x01\\x9dm\\x96\\xe0~\\x83}m\\x1e\\xed~\\xe3hM\\x18\\x14\\x8bT\\xa5\\x0e?P\\x99n\\x96\\xdd\\x95\\xfb7\\x12#3r\\xb3\\x1b\\xa1\\xa9\\xb6;\\xf2\\xd5Q\\x8clb\\xb1\\xac\\xdb\\x12\\x80e\\xcd\\x96\\x00\\x17Q\\xb4$^\\xc8!\\xa7\\x94\\x0d\\xf0T\\xae\\x16\\xb2\\x9d\\x94\\xae\t\\x93\\xc8F\\xf7\\x90)\\xb7_\\x8c\\xd2&\\xc0\\xb5\\xb8$\\x1b\\xa8\\xee\\xbf\\xdd.0\\xd6\\xf4-v\\xa1f\\x03\\x16\\xdd\\xd0\\xef\\xbe\\x101QO\\xd3P\\xd7\\x80\\x95\\xbbe\\x86\\x1brv6\\xcaoW\\xf5\\xef\\xb7\\xedv\\x8f\\xf6\\x1c;\\xb4\\xf7v\\x0f\\x9c\\xad\\x8c\\x90\\xe63{_\\x7f\\x1f\\xeaPw\\x18\\x0b\\xed\\xc3\\x83\\xc696,s^\\x80q\\xb3\\xcc$\\xd0zE\\xe0!\\xdd]F*\\x0c\\xb7\\x02\\xbci\\xad\\xbe/\\xeaH\\x04\\xb5\\xdc\\xd5\\xd4\\x00\\xfc\\xaed\\x84\\xe1*\\xc3\\xda\\xbe\\xcb\\x1f>\\x8e\\xc4\\xf6\\xc6\\xe9\\x14/lx\\x86l\\x17\\nT\\x85\\xd0^\\xfa\\x94\\xe0\\xe4\\xd3a\\x14\\xe0}\\xe4Jp\\n\\xde8AQ\\xdc\\xa7\\x82\\xaa\\xaf\\x91\\xc7\\x01\\xee\\xa3Q<2\\xdc\\xa1P\\xe2\\xf8p\\xbd\\xeb\\xd1\\xde\\xd6\\xa8 \\xc8l`\\xa2\\xf8\\xfd\\x928\\xf4\\xe8\\x11\\xa6*\\x18\\x0f\\xa6\\xec\\xd6*\\xfd\\xde\\x9b\\xba\\x0c\\xd8\\x9fR~\\x96\\xb7\\xa5\\x18\\x8e\\xa1z\\x04J)Af<\\xd4Ub<\\xdcu\\xd6\\xfa\\x87\\xd5\\xfbF\\xe2:\\xa1N\\xe5\\xd5W\\xd5]\\x83\\xa69\\x14wx<\\xddd&H\\x98\\xf8]|e\\xf8\\x18<A\\x05\\xcfa\\x04-O=c\\xe6\\x9a\\x81<\\x88A\\xab\\x12\\x1d\\x98)iK\\x91\\xc1 \\xe9t\\x8c\\x1aZ\\x0c\\xd5<N4\\x87S\\xda\\xde\\x9c.\\xf0\\x92\\xad\\xee\\x92\\n%\\xc8\\x10\\xc7\\xcbqoJ\\x91\\xbbe\\xd3o\\xa8k)\\xc2*\\xb4\\xfa\\x86u\\x03\\xd1\\xbd\\x13h\\xb7\\x13x\\x02\\xbe\\xb1Wk\\x18\\x81-\\xba\\xe6hsa@\\x1e$zmx:\\x83\\x11v\\xbaah&\\x82B\\x0bI\\x87-\\xc4\\xf5\\x96\\xbd\\xae\\x1f-\\xfd\\xbc7\\x85h\\x06>\\xba+`i3b=\\xe5\\xa3\\x0d{\\x0e\\x96\\xbc\\xc1(M\\x0b\\x17f.\\xac\\xd9\\xaep\\xe1\\xca@1\\x91\\xee\\xca]\\xbeAO\\x8b\\x99\\x0b\\x0b\\x17\\\"\\xb8\\xe5w\\x0c\\xaf\\xe8\\xa6\\xbc\\xa9\\x1fA\\xcd\\n\\x8a\\xb7\\xee~\\xfak\\xbc\\xad[]\\x91\\xeaA\\x94Yy\\xb6:\\x8b\\xdeC\\xdel>L\\x91\\x8d\\x85dZ\\x96\\xcb\\xfd\\x0f\\xdea\\xb91\\xd1\\xdf\\xcd$\\xc6\\x07j\\xeb\\x9e\\xa2\\xa1>|P\\xbf\\xaf\\xf7b\\xea\\xf7\\xaaV4$\\xd5\\xbd\\xc6 \\x1f\\x9b\\x1e\\xf04\\xc4\\x17D\\xf4\\xcbh\\xae\\xde\\xd7\\x04I8\\n\\x0d\\xb5@.\\x1dQF\\xe7\t&\\xfa\\x042\\x16C\\x9aO\\xabW:\\x13\\x96\\x11\\xbd\\xdd\\x0e9\\x06Q\\xa8Z\\xbd2\\x0e\\x10)z<\\x13?\\x85F1YH\\xc9\\xf7\\x13\\x8c\\xcd\\x8cX/\\xc8\\xee\\x1e\\xeb=\\xd5\\xf6zz\\x83\\xe8^\\xbf\\x8a\\x12\\xc8{\\x95@H>\\x17\\x8e\\xaa\\x885\\xe7\\xf0*\\\".U\\xb1\\x00\\xbdI\\x84\\xad\\xeb\\x99\\x08\\xa2WuOY\\x94K\\xc5\\xdeM\\xb5\\xc4L.\\xc18v\\xb5\\xc8\\xd5\\xfd5\\xb0B>\\xb9q\\xe1\\xd2\\x85\\x95\\x0e\\xfd)\\x9a$\\xdalT\\x17\\xf8\\x84h\\x9e\\xbc\\x83\\x11\\x9c\\xc3),`\\x08\\x9e\\xf6\\xddk\\x18\\xc1E^BW\\xc7\\x19e\\xf4\\xb4\\xa2wT\\xacY\\xc3)\\xcc`\\x08\\xef\\x1c\\xfak\\xa6\\x16\\x7fA\\x8b\\xd3Z\\xaf\\xe5\\xe2\\xd7\\xa6\\xe2\\xcfD\\xc5\\xd7\\xean~F\\xf9\\xb9\\x8f\\xd62u#\\xe3&\\xf5\\xe5`Q\\xad\\xbe\\xba\\xd7\\xcey\\\\\\xe23\\x0c\\xd5\\\\\\xb3\\xbb\\xf2\\xf6Zgy\\x85+T.\\xae\\x04;s\\\\8\\xa7\\x909S\\xfc\\x06\\x9aU\\x1bB\\xc4\\xa1\\xefJ\\x0f\\xd4\\xb1\\xb5\\xec\\x10\\x1ea\\x90|=\\x8dz\\x0d#8Cer\\x1e\\xd9\\xc8:?g\\x89\\x0eg\\xe7\\xe7\\xa6\\x0c\\xd3_\\xc0\\x08^H\\xaf\\x91\\xeakzj\\x87\\xf6\\xbe/\\xea\\x0e\\x83o)\\x8e\\xc3)\\xa4,\\x984*Vk2H\\xbe\\x84\\x11|\\x81Z\\xd8\\xa28\\xd1\\xcbD\\xc6\\xc9\\xbe\\xb4\\xdf\\xba\\xf0R\\xcc\\xe3J=&n\\\"\\x03\\xb5pQm\\xb5\\xf6L]\\xbe;3F\\x95\\xd3qc\\xec\\xb1\\xfe\\xd4\\xb7{\\xbc\\xaf\\xf5\\x0b\\xc9\\xbe}\\xbf\\x90\\xaa\\x8c&;\\x88`\\x01o6\\xb3\\xd31\\x99V'\\x83~2\\x89\\xbey\\xb3\\x19\\x06\\xb5* \\x94#2\\xaf\\x8eLq\\xe0\\x88\\xca\\xbe\\x1a\\x99v~\\xab\\x93\\x1b\\xde\\xcf\\xe2\\xb3\\x91D\\xc4\\x99i\\xe8l\\xc48\\x7f\\x9cbXs[f\\xf3t\\x8aM\\x90\\xa6&\\x8c\\x08m\\x8acx\\xac\\x8fi\\xac\\xb8\\x9ad\\x06\\xa9\\x81\\xbbE\\x1d\\xeb\\xa5\\x80\\xbd^\\x95\\xdf\\xfb*_\\xa7\\\"\\xc0@\\xe5\\xfe9\\x8b\\xfe\\x1e\\xd3\\x15WytI\\x1c\\xf8\\xc8K\\x15G\\xd5\\x92$\\x80a\\xd7k%\\x81O\\xbd\\xb5N\\x0c\\xc8\\x9f\\xbfB\\xa5v\\xb5\\xc8\\x8d\\\\\\x849\\xb6T\\x8b\\\\\\xcaE\\xce\\x88\\\"l\\xacJ\\xcfQ\\x97^-r^*\\x82\\xca\\xf4j\\x91\\x0bE\\xee\\xf9^6\\x9f\\xab\\x1d~W\\x996\\xef\\xa7\\x02\\xf2\\xaeZ\\xe8z\\xe3@\\x94g(\\x17\\x9c\\xc25c\\x0b\\xaf\\xe7\\x1b\\x07\\xfe\\x13\\xb4:v\\xe1\\xda\\x85\\x17.<\\xab\\xa2~\\xf2.\\xc0\\x08|Z\\x1d\\x96\\xef%\\x04\\xde\\x0d\\x158p\\x06\\x98\\xcayA[\\xa3r\\x9e\\xd0\\xdb[`\\xcf_\\xcf\\xe7\tI\\x8b\\xe7\\xecw\\xad\\x00B?)\\x06\\x10\\xbb\\xc0\tvy\\xf4T\\xf6K-\\x8f\\x1d\\xbd\\xd0w4\\xb7|6\\xf5\\xb6\\xf5\\xc2\\xa6\\xc4=\\xc0\\xab\\x1e\\xec\\x1bqtY\\xbf\\xb1\\xb5\\xa5\\xda\\x1a\\xc2\\xd7\\x06\\xf8Um\\xef\\\"\\xbb\\x9d\\xba\\xd0\\xd6i\\x9d\\xf1\\xedE\\xed\\xdbi7\\xf4V\\x84\\xe9/\\xf1\\x1b\\x06jY\\x91$\\xf1.9\\x98\\xff0T\\x7fc\\xe8\\xf4\\xaa\\xbeYfYR\\x83\\x88\\xe6\\xef\\xcf\\xf4\\xef\\x0bQ\\xcd3\\xbcvi~\\xed\\x0b\\xe6.P\\xcd\\x1d&>\\xb9Xf\\xd3\\xfa\\x13\\x0ch\\x8d'\\xbd\\x96\\xd0P\\xa0\\xb4\\xfaE#\\xf6\t\\xe9\\xed\\x19\\xd74\\x98\\x9b{\\x9b\\xd7\\xf5\\x16\\xe7\\xc3 \\xaf\\xc1\\xed\\x08\\xe6.<+\\x0e\\xa2\\xe6\\x86_b8\\xc5\\xd7\\x88\\x88\\xaf\\xd1T m\\xe0Zy\\xf0Y\\xa1\\xb1q\\xe1\\xa5az\\xcf\\xcd;\\xba\\x10\\xe3\\xcfD\\xccJ:\\xa83\\x11M\\xb6\\xf4\\xa2^v\\xbc\\xbb\\x11\\xdb\\xe9\\x16\t3\\xf5\\x94\\xed\\xae.i\\xdb\\xca\\x87<\\xad\\x0e\\\"\\x8cA\\xf5\\xa5\\x89\\xb7\\xaf\tv\\x85\\x15\\x8e\\xdbm2\\x85\\x11:\\xf5\\xa7\\x95\\xcbq\\xce\\xb7\\xa11\\xfbv\\x86W;65\\xa1@\\xd3\\xb0\\x8cx\\xb0\\xd7\\xd3i\\xcc\\xfa\\xaa\\x08\\xf5@\\xda\\x03\\x9ewO7\\x89\\xa8Q\\x81G\\x10\\xa8\\xf38gv[\\xcd\\x89\\x123\\xef\\x19S\\xa5.1m\\x82M\\x1c\\xc9\\xd2\\xd4\\xf2\\x8d\\xf4\\xa8Hm\\x00#X\\x9e\\xc0\\xba\\xc6\\xe4\\x81\\xb9\\xb9\\xc7k\\x83]\\xa0e\\xfb\\xa8\\xb1\\xc0\\xdc(C\\xc9\\xcbn\\xe1lh\\xe3\\xa0m\\xcc\\xd03YG\\x13i\\x1b3\\x96[\\x88>\\x96T\\x0c3\\x0d]\\x14\\xe6\\x82V%Bg\\\"+\\xea\\xd8\\x0f\\x8dCO>+T4\\xf4\\xe9il\\x0dO`i\\x9c\\x99K\\xb4\\xa7\\x88\\xf91\\x98UV\\xe8\\xce\\xb80L_\\xe6\\xe4\\xfa$\\x1fox\\xae\\xf0\\xfc\\xbb@,J\\x11\\x7f\\x86\\x90\\xd9\\xf4H\\x8cP\\x86^\\x89\\xc9\\x8c,\\x9b3\\xce\\xe1\\x94\\xf6p4b\\xc7y\\x8fW\\xc2P\\x13\\xeb=7\\x9b\\x9cQE\\xa3\\xe7\t\\x171\\xf1\\xde*OT\\x83\\xf0\\x0d2L\\x94\\xb2\\xfd\\xc2\\xb7\\x1d\\xfdF\\x16u\\x14\\x1f\\x0dI\\x88\\xbf7\\xa6\\x89\\xbf@!N\\xaaU?\\xf5\\xefP\\xba\\x93\\x8a\\xa9\\x03\\xba\\xa0\\xfb\\xe6\\x1dm\\xad\\xdc\\xc9\\x80\\xa7lS\\xa0\\x8c\\xd3\\xdb\\x96\\xd8\\xf0r\\xd8\\xf5\\x0b\\xfa\\xecBV{#D[\\x16\\xdb|'\\x97}\\xc7\\xfc\\xd0\\xd9\\xd4o\\xc0\\x12\\x13\\x99)\\xe7?(\\x82o\\x99\\x88P\\xa6\\x91\\xfa\\xeb\\x0e{=}\\x0c\\xca\\xbb\\xfbN`\\x10\\xe1\\xc8\\x85\\xe0\\xce\\xc7\\xe2\\xbd\\x9e\\xfe\\xbe\\xd0Qc\\x97\\xd4ZE\\xcd\\x11\\x8b\\xefnpHc\\xaa\\xc6\\x08o`G.\\x84\\x1b\\xdc\\x0ehf\\xb2\\x1a\\xbd\\x816^=)\\xc5\\xa7\\xcf5KR|\\xfat\\x1c@\\x1bX\\x8c\\xfaqh\\xf0>\\xbf\\xfbl\\x9b\\xf2\\xae\\xe8\\x8c\\x11\\n\\x0b]s\\xe6\\xf92y\\x11f+\\x96\\xb0K\\xd5R\\xf0\\xd7.I*\\xf1[vfNT\\xddEV\\xca\\x0c\\xa4#\\x15\\xc2J#\\xa9\\xe5\\xc6S\\x18V\\x0c\\xfe.\\xc46\\xcb\\x1b\\x94\\xd7\\xa6\\x0dO \\xd5XD\\xb8'\\x1aMh5K\\x0c\\x0c!\\xd0\\xe3\\xa4\\xf7-#M}\\x92\\x83\\x9e\\xc8\\xe9/c\\x91\\x9e\\xe0f,\\x0f\\xbf\\x86\\x89a\\x8cN\\xf4\\xe2D\\xea\\x15\\x8d\\x83v\\x1b\\x13\\xc4o@\\xc1\\x9aB^7N\\x84\\x81\\xb8\\xdc\\xfd\\xa6\\xe6\\x9eAy\\xdc?\\xd4_B\\xd4'\\x0dQme<\\x81X\\xbf*\\x82&\\x06\\x1b\\x9a\\xee.\\xd7\\xf6r\\xa8\\x8e\\xc4\\x85\\\"\\xec\\x84\\xb2\\x92\\xe8D\\x83\\xa99\\x02\\xa3\\x00\\xca\\x9e\\xb7\\xd0\\x19$\\xd3\\x96ZWJ\\xb5\\x96(\\xbci\\xcb.P\\x0e\\xbe\\xbd\\x859\\xfdoI\\xff[\\xab\\xa5f\\x98\\xb3\\xfc\\x94\\xb2\\x8c\\x1c}\\x99\\xae\\x8d\\xca0\\xba\\x9c\\xa1r\\xce-\\xa3\\x84\\x87~)<\\xbe}\\xcb\\xcf74\\xbb\\xeb\\x8b\\xf2\\xb3m\\xb1*\\x90m\\xdf\\xb0.\\\"8BUS\\x01\\xb6\\xd6^LB\\x0e\\xc0\\xf7\\xd7\\xac S,I\\x05\\x0b\\xd5P\\x05\\xf8Z\\xaa\\xd2a\\xe2\\xda\\x8d\\x0bW\\x0e~\\x9f1\\x03\\xf7\\x8d\\x9e/\\xcd\\xee\\xbb\\x8b6&'\\\"-\\xac\\xa0\\x17\\xe9\\x89\\x03\\xb1\\xc8\\x8a\\x12\\xea{\\x17\\xdfy+\\xeasS\\xec\\xe96\\xa2\\xce\\xb6\\xdc\\xb4?\\x0c\\xb4#\\xe0w\\xbab\\xae\\xa3\\xf8\\xb6h\\xd4\\xdd\\x15\\x1a\\xa6\\xa4\\x1d\\xfd\\xaa\\xec\\x16\\xe9',\\xc3d\\x82\\xc5\\xf4d\\xe3|\\xfa>^F^\\xba;\\xe0\\xb6w$\\xe3\\x95\\x87\\x07{\\xfa\\x87/\\x85\\x86E\\xf7\\xa4\\x7f`|dj\\xacP\\xd9\\xe8\\x1f=_z\\xab5\\x99\\x99K\\x98\\xda\\xa4\\xcfJ\\x8db\\xa6\\xdc\\xb1\\x0e\\x83*o\\xea\\xeb+\\xe9\\xeb+\\xcfr\\xf3G\\x05^\\xe8\\xee\\xd5\\x07D\\x01r\\xfbGu58\\xae(\\x0f\\xd0\\x18R\\x81\t\\x03H\\x05,<(*`a\\x0b\\xa9\\x80\\xd1\\xfeQ\\x85q\\x9bG\\x05\\xfcC\\xe2\\xbd\\xcd\\xfb\\xd1\\xea\\xbb\\xdbm\\xc1\\x88o\\xc1 '\\xf8\\xf8\\xb3\\xd5\\xca\\xc6tW61\\xf7\\xc6\\x1d\\xd9\\xec\\xcf]#L\\xa6fu\\xe5F\\xfb\\xb8F\\xf3Ul\\xf1\\xbeb\\xf3\\x03\\xbe\\xcf-6\\xc3\\xa5d_tr\\x18\\x1b#\\xdd0\\x9a\\x9177k\\x06S\\xab\\xc0tQx&U\\xeba)\\xca\\xb1\\x9e\\xb4T\\x8f\\xc6\\xb5\\x80\\xd2\\x10vs\\xb8\\x98\\xe0\\x11\\xaf\\x1a-O>I4~\\xba^\\x1da\\x14\\x9f\\xfa\\xc4\\xd3W<M*o=&?\\x9b\\x051)\\xfd\\xb0\\xad,\\x0d\\x96\\x96\\xd3\\xa5\\x03\\xd3\\xf8|\\x89Ono\\xb8\\xbd\\x85\\x0c%\\x9a\\xeeE\\x10\\xce\\x82\\xf0\\xb2\\xf4CT\\xa7\\xad\\xa7&\\xd7\\x14>\\xb6+\\\\Q\\x95\\xfe\\xb1\\x98S\\\\\\x8b\\xb3\\xfbG}'?Zn\\xce\\x15\\xfa\\x86\\x03Z\\x7f\\xa3\\x03\\xdav\\xb2eu\\xe9P\\xf7\\x14\\xcb\t\\xe3U\\x7fx\\xa1=\\x1eO\\x0d\\\"YHE\\xb2\\\"\\x85\\xbct\\xc8\\nq\\xff\\x97U1-\\x9eF\\x8e\\xb9:\\x98\\xa4\\x8fm\\xeeU]\\x19\\xd2tm;\\x19b\\xa0<\\xe5\\xbfQ\\xfd$\\x99\\xbbF\\xa0W(\\x11>\\xc2\\xdc\\x92{{\\xdb\\x9cv\\xa9\\x06E\\x8eD\\x8e~\\x0c0\\xe0\\xf2\\xa1nu\\xed\\xa6\\x99\\xba\\x9a=!\\xf22uW\\x1bR\\x9b\\xca\\x92\\xf7\\xa2\\xb1\\xd2\\x90\\x07\\x86\\x84\\xd0\\x067\\xd9\\xbdA\\xd5W\\x92\\xfbP\\x0e\\xaa'4\\xeeC9\\xa8\\n]\\x89^F\\xe3N\\x94\\x8as\\x06=t\\xf9v\\\\\\x81b0\\x0e\\xbb\\x1axg\\x8d\\xd0\\xa8\\x02] 4\\xab@g\\x08\\xad\\xe6\\xdf\\xa3\\x07#\\x89 \\xb2L'\\x1a\\xb1\\x84\\xee\\xae+4[\\xc7\\xf8\\xbf$\\xe4\\xd8}\\x87\\x1dJ\\x82\\xd2\\xbb\\xc8\\xed\\x8b\\xd7\\x02,\\x12\\x95\\x8a|?\\x8eVABD1J\\xae\\x93hyElV_V*\\x8c\\xc2FQ_\\xc6\\xceD\\xa5\\\"\\xb9\\x90Q\\x14\\xf3\\x9cB\\x87\\xda\\xbcA\\xf5\\x87\\xd2P\\xe7c*.;\\x96\\xb6sM\\xc69\\xc4>8\\x05\\x9f\\xa2\\xba\\x9a*\\x93\\xc7?\\x10^\\x12Z\\xfb\\x1e\\xdaT\\xe7\\xb5\\x96r\\xcd\\xca\\xa9\\xdc\\xce\\xe4V\\xa0\\xab\\x07\\xa7\\xd3P\\x85\\xc6\\x03AWE\\xbe\\xca\\x86j\\xea]\\x0e\\xca\\xebo\\xa8\\xc2`\\xfe\\xafV\\x91\\xe3\\x87\\x81\\x94\\x80\\x96MT\\x92U_mGovw\\x1d;\\xb4\\x0f\\x1d\\x17,\\xb1&\\xa6(5[\\xdej\\x94j\\xe6S\\xfc\\xf0\\x15\\x9f\\x91\\xf4\\xe1+\\xe5\\xcb\\xf0@\\x15\\xf7\\x8f\\x0c\\xa1\\xd4\\xb6\\xb7D\\xe4\\x82\\x87\\xb8\\xbf\\xe7\\xf2\\xdb)B\\xb5\\x1e\\xd6\\x18E#\\xaeeW\\xb7>p\\xa6\\x91\\x8e#\\x9d\\xba\\x94\\xa9Kx~\\xb4\\xd8\\xce\\x1cSX[\\xd8\\\\\\x8a\\xa9\\xb9B`\\xba\\x01\\xa9\\x0f_\\xb57\\xd0)\\x0b(\\xbb\\xd4\\xc5\\xaf\\xd2\\xad\\x86PhV\\xcb3\\xfewXe\\x8bs\\xd5\\x04\\xbf\\xdc\\xf0\\n\\xa1A\\xc6\\xc8\\xf8\\xe1\\xd1c\\x99A\\x13\\xdb\\xc7\\x95%\\xcdW+\\x85\\x9e;\\xd0\\x05%\\x90Z\\x90L\\xac\\xec\\xd4\\x90\\x07\\x17\\x89\\xd8\\x9bh \\\"\\xb8\\xc0s\\xb8\\x85\\xe5\\x03\\xc92\\xfd\\xa3\\x8dn\\x83\\x1bL[\\xb8\\xf0\\xba@I,\\x9d\\xa7^|\\x96\\x86\\x1a\\xc0)\\xa6\\xc1mJ|k\\xe8\\xfe\\xce\\xf8\\xf3\\xeex2\\x9d\\xb6o'c\\xfbthwN'\\xb3\\xb6}:\\x9ct'\\xb3\\xb6s\\xea\\xdc\\xdac\\xeb\\xf1\\xd4\\xb1\\xe9\\xb3\\xd3\\xd6d\\xe0\\x8c?\\x9fL\\xa6\\xb7\\x93I\\xd7\\xf9\\xf0\\xd4\\x99\\x0c\\x9c\\xc9\\xf4\\xd6>\\x1d\\xe1\\x1b\\xb7\\x93\\xf1d\\xea\\x14_o?p\\x9cj^3:\\xdc\\x9d\\xc9\\xc4\\x9eL\\x9c\\xd3\\xea3\\x81\\xebGN\\x83\\x1b\\x8a\\xe9\\xc8\\x02\\xc5\\x0c\\xed\\x1d\\xb0\\x9b\\xb8\\x98N\\xf6y4#\\x98RV:\\x98X\\x16r\\x14\\x11\\xfa,.O\\x17s\\xa2\\x8cLGa^GLq\\xab\\x94C\\xff\\x83>f\\xa2E\\xe5y\\xaa3A\\xc9!%\\x18D\\x8f:\\xd16\\x8bH\t\\x8a\\xce\\x89f\\xbf\\xf9\\x1a\\x99I\\x06C\\xec\\xab_\\x05\\x90,y\\\"\\xf8\\x00W5\\x84\\\"\\xb4\\xa2[\\xf1\\x14\\x026\t\\n\\x8c\\x11x\\xdf\\xf3\\x17\\xfa\\xb8\\x07w\\xa6\\xb4{\\xbb\\xfa\\x83\\xc6\\xdench\\xc3\\x1ab\\x86\\x1b\\xb6\\xc5\\x8f\\x92\\xe2\\x8eK\\xdct\\x00\\xbc\\xcf\\x11\\xad\\xd4\\\")\\x9d\\xc8\\xef:5}\\xc35\\xfc-mj\\x8a\\xedL\\xd8\\xd4\\xf4,\\xe8\\xf0\\xae~\\x00\\xb9X\\xe0s\\xcb\\x07\\xe5Q6)\\x82\\x009\\xb9\\x15j\\xc9\\xbcd\\xa0\\xdd\\xf6\\xe1\t\\xcck\\xafg'6\\x19\\xfbS\\xa3\\xdf\\xceR\\x90g1\\xf7\\xd8\\xbf5=k\\xa1\\xbf\\x8d\\xfa^\\xca/s\\x97\\x1eh\\xc5\\x074\\xac\\xd1>\\xb6F0\\x87SX\\xc2\\x10Z-{\\x0ef\\x031g\\xa1s\\xfc\\x9b\\xd9k\\x17\\xe6\\xdc\\xbekKq\\x13\\xef\\x8d\\x87\\x06$\\xbc\\xbb\\x97\\xc2\\xae\\xde'doW\\xef\\xbf\\xa2\\xca5\\xd9\\xa6\\xc8c\\xe8z\\xc4\\x9cD\\x98G\\x01\\x06\\xbcj\\xde9w\\x9e\\xa7\\xbc@\\x9d\\xc2Z,1)\\x87\\xa8\\xaaz\\x8c\\xdeu\\xca7\\x91J\\xee\\xd3\\xfd\\xb8\\x12\\xb9\\x0e\\xee\\xd3\\xd9\\xbd\\xdd\\xaa2T\\xa8\\x83\\xf4\\xa9\\xb2\\xf7vu\\xc4\\xe8S/]tW\\xdeu\\xd3\\xb0\\xcd\\xc2\\x98W\\xb3\\xf5TMA\\xcb\\xcb\\xd5\\xaa\\x9d\\x8aO\\xde\\x95\\x88\\x98\\xc1+\\x13I\\xcb#\\x93B4\\xc9\\x13\\x9e'\\xe8\\x0d\\xeeA\\x1b\\x12\\x0c\\xbc\\xe62^\\x1c\\xd0\\xf9\\xdeu\\\\H\\xee\\x8f\\xb6\\xc2\\x15V\\xd1o\\xe44V\\xf6eb\\xde(!\\xb4\\x01\\x05\\x9e>\\x0c\\xa1\\xd3wN\\xf06K\\xd4\\xe9\\xc0\\x10\\xda\\xed\\x88%TW\\x90\\x85N\\x13\\xb1\\xe9\\x91\\x0b\\xbd\\xca$Et\\xa4\\x9d\\x86\\xbb\\xc7D\\xdb\\xdbm\\xce\\xc4_#\\xec\\x98d\\x12\\xf8\t\\xe8\\xeb%\\x12\\xb1w\\xe9\\xd2\\x12\\xe8\\xa0\\x10N`\\xd8\\x18\\xc2\\xc1<\\x82=\\x9d\\xa8\\xd2\\x87\\x9d\\xaa\\\"\\x0b\\xe3\\xbbt\\x0f\\x8f\\x0f\\x0f\\x8ew\\xfb\\xbb{G\\x07\\x83\\xdd\\xfe\\xfe!\\xd9\\xed\\x1dm;\\x01\\xb9\\xaa\\xfb\\x94\\xf9^1S\\x01\\x13\\xe3\\xa8\\x04\\x8b_;\\x01{\\xcc\\xc2\\xbeu\\xe8\\xfa\\xf7\\x1d\\xf8\\x10\\x1d\\xeeR\\xb1SR:r\\xfc7\\x92!w\\x9d\\x0b%^3\\xd7&\\xe8\\xb4\\xc3\\xaf\\xbcW*-\\xd8\\xf9|\\x92\\xb4o'I\\xfb\\x83\\xea)\\x83Ex\\x1ew\\xda\\xd3\\xde\\xf5\\xb8\\xd79\\xf6:\\xf3i\\xfb\\x83\\x9d@\\x15Vv>\\xef]\\x8c{}\\xcdS\\x9f=\\x8d\\xc6\\xbd\\xce\\xa1\\xe61\\xe5\\xe0k/N\\xc8\\xcb0\\xddvI\\xe8\\x8e\\x91\\xa3\\xbd\t#`\\xbeqR\\x95\\x10\\x05\\xb6yc\\xa1J\\xd3p=\\\\\\xe0\\xbf\\xd6\\xc6\\x91\\xe6\\xd7\\xcfN\\x8b\\xef\\xecJ\\xb3^\\xe8\\x89\\xd9\\xc9\\x9e\\xdd\\x10\\xa2\\x9b\\xa1T\\xea\\xbd:J\\x11\\xe4\\xae\\xa5\\x19e\\x19\\x8f\\xda\\x95&\\xd9e\\xb1r2j\\x95\\x00\\x87,\\xac6K\\x14\\xa3\\xdd\\xc4xN\\xf3E\\x118\\x85\\xb9\\x9dv\\x93e\\xe0\\x13{\\x80j\\xa7S\\x18\\xc0\\x10\\x8e\\xe8\\xa8=\\xa9X\\x84}\\xba+r\\xf7\\x15uK\\x03\\xb7\\xdb\\xab\\x8a\\xd8\\x99V \\xe7\\xa6\\x8f\\xbdf!\\xc9\\xcc\\x01\\x19\\xf7a\\xb2\\x12\\xe5W\\x86iC)4\\xaf\\x86\\xb2-\\x8aGL\\x8c\\xa1<J\\xe2XM\\xec\\xaa\\x86\\x1e\\xde=\\xcc\\xa5\\xb6\\xdb\\x953-\\x1e\\xf1\\x83\\x1a\\x11\\xa7e\\xb3|\\xf2\\xa2dE\\xd8q\\\\h\\xb5\\xee~\\xede\\xcf \\x12\\xef\\x1d:vl\\x18x\\xb0m\\x1b\\xfaH%\\x1b(ek\\xaeM\\x03\\xf3\\xc2\\xc2\\x86\\xef\\xe1&\\xbew\\xe0\\xd8[\\xe9\\x9e\\x9b\\xe5\\x9aFyV/\\xf5@U\\xf2\\xa1\\xa7\\xcbH\\x0e\\x0e\\xe8\\xe2\\x8e\\x8b\\xf1\\x1b\\xba8\\xe7\\xbah\\xcf\\xa0\\x8b\\x06y?\\x8d)\\x1d\\xf3PP\\n4*+\\x10\\xf2d\\x1f\\x89^hG\\xe3d\\x8ail\\\"q\\xccT\\xdeQ]\\x1a\\x14M\t\\xdcG\\\"?<\\xbc\\x07\\x8a\\xe4eB\\xc3\\x06\\x0b\\xa4\\x18paN\\xf3C\\xc3!<\\xb6\\xc3\\x82\\xbd\\xa5\\xacR\\xb5h\\xbe\\x82H4s\\xd95\\x03\\xae\\x03F\\xb1\\xd5\\x95\\x83>VE\\xf1\\xfcc\\xd3\\x172.\\xdaf\\xf0\\x04\\\"\\xe6\\xe8\\xd4\\xc7\\xb8q\\x81\\xed\\x8d\\xb3)\\xbbH\\xe6\\x9c\\x98\\xf5\\xd1\\xa6\\xd8\\xe7\\xdb\\xae\\x84\\x9eN\\x18\\x82\\x0d\\xa9\\xea\\x98L\\x08T\\x1b\\xac\\xa7\\x86)\\xe0\\nd\\xf2\\nT\\xef\\x1f\\x89\\x83\\x93\\xf0\\x8d\\xd0\\xd2\\xdeV\\xab$\\xd5x\\x18\\x1b\\x86\\xb1\\x8e\\x08\\xf7e\\xae\\xe0\\x18\\x96\\xa2\\xdfz\\xb9\\xbe+\\xe4\\xee\\x9f\\xe1\\x98L\\xb7\\x8f\\x99ne\t\\xc1\\xec8~*\\x99/\\xb9\\xd3\\x05\\x0b\\x97!\\x9clx<\\x18\\x92|\\x1a\\xcd\\xb2%\\xb1\\\\\\x85\\xc1,32,E\\x8es\\\\\\xbcs\\xbd\\x8a\\x82/\\xc9\\xec\\xcc[\\xad\\x97\\xe4\\xe38Z\\x9d\\xf9\\x0b\\xb2\\xf2`$=|\\x1e\\x13/%\\x7f\\xe3\\xd3O^\\\\c1\\x16J\\x0d\\xbf\\xfe\\x8d\\xd5\\xb2\\xf2R\\x10\\xceI,\\xfdN\\xd4\\x9a\\xb9\\xa1\\x1bH\\xd7Wk^\\x9eh\\xf0\\xa9\\xaf\\xa4H\t\\x90\\xe7\\x87\\xf6\\xde>=n*H\\x85\\x8f\\x0ev\\x9dM\\xa3\\xb1\\xc8|\\\"\\xed\\x16\\x13\\xc9e9\\x95\\x1a\\xcc\\xc8\\xdc\\xcb\\x96\\xe9\\xb0z\\xab\\xf4;\\xea7\\x81kj%\\\"\\xf3Q\\x8e\\x04&\\xaa\\xcc\\xbb'\\x90L)\\xf3^=\t\\xb2\\xa2\\xe7d\\xe5\\x05\\xcb-Z\\xc8\\x12\\x12\\x7f\\x97\\xb0\\xd5\\xe8\\xfa\\xd1j\\xa3\\xb6x\\xbf\\xceg^J:i\\xb0\\\"\\xd6\\xe6-\\xa2\\xaf\\xc5G^J\\x9cn\\x1a\\xbd<{\\xcd\\xbc@m\\x8d\\x1dBs\\xda\\xc5\\xcd\\xb9y[\\xbd\\xcd+=\\x9f/#/}\\xe0\\xaa\\x830%\\x97\\x0f\\xdea\\x1eD{X#T\\x88\\x8fX\\xe5<\\xee\\xb6t\\x8c\\xe9r\\x94fQ1\\xf8\\x0f\\xb5\\xfd2\\xba\\xab\\x07\\xd0\\xfaN\\\\\\xe5\\xfel#\\xb0{.\\xc4]\\xe6`\\x11\\xcco\\x1c\\xadB\\x03rC\\x8b\\x9a\\x82H|\\x02|>\\x8f\\xe2\\x95g\\x88\\\\EI\\x827\\xc6\\xfc\\x91\\xe7\\x16\\xb4!\\x98\\xa2\\x0b\\x90\\xf6\\x12\\x92\\xc0K\\xec]\\x90|\\x9c\\x85\\xbecGx\\x82\\xb2\\xd1\\x1ek\\xfd |\\x1bF\\xefBxs\\xb3&C\\xa0\\xf5\\xa5\\xd8\\xbb\\xba\\xa9\\xf1M\\xc40\\xa7J\\xa9^u)\\x0e\\x85\\x9e\\xf0%\\x17\\x97\\xb2\\x9fB\\x1f\\x8a\\x9c\\x14\\x94\\xc9\\xe7E\\xc6\\xfd)\\x15\\xde\\xe4\\x9f\\x98\\xc7\\xca8{\\xcaR\\xe8\\xe2\\xc5\\x81\\xf0\\xf9\\xadY\\n\\xb4yw9\\xfd\\xd0\\x17\\xf1\\xb0\\x08\\xbf\\xc4\\x17\\x10\\x8dg/\\xf0\\xf9\\n\\xba\\xdel\\x16\\xd0\\xc9\\xf1\\x96\\xdfo(?\\xc7\\xf2AJV\\x86\\x02h\\x14\\xe9\\x06\\xa1\\xbf\\xccf\\xe43\\xe2\\xcd^\\x87\\xcb\\x1b}\\xd1\\xb5\\\\\\xf4\\x87q\\x90\\x12ZV/\\xe8I\\xd3\\x9f9e\\xdc\\x99\\x11\\xb2^\\xdePz\\xb6\\xfe\\xeb\\xe4\\xc6\\xc1#\\xff\\x07\\x1f\\xc4dnma\\xa5\\x94\\xe5\\x8a\\x92ou7\\x08g\\xe4\\xfa\\xf5\\xdc\\xb6\\xfe\\x8aU\\xc9\\xcc >\\xefM\\x16\\xa2H\\xef\\x7f\\x1c\\xb0\\xe0\\xb7\\x91\\xe4\\x1a\\xae\\x176kb\\xec\\x82hc.f\\xc3 \\xaf\\x8a\\xdb6^\\x1c{7*\\x97\\x01\\xedy\\x01U0\\x85\\xb7\\xf9\\xc8l\\xed\\xbe\\xe2\\xc1\\x06\\x14\\xcc\\xae\\xba1\\xca\\x9fY\\xe56\\x8b\\xfc\\xc9E\\xf5+*\\xd8-\\x1cX\\x8c\\xaf\\xa6t%\\xe8\\xdf\\xee\\x8c\\xacc\\xe2{)\\x99\\xe1\\x8d/\\xf9Q\\xccq\\x0d\\xd8\\x05\\xb6\\xea\\xe3w\\x02\\xbf\\xf0\\xf9\\x1a\\xef\\xb9\\xcfh\\x81\\x11\\xa46-A\\x85B\\x83\\xd0\\x8f\\x13\\xcd\\xb4N\\xbe\\x03\\xb3\\xcav\\xe9\\xd7\\x8c\\x06W\\x90\\xbe\\xee\\xebQ\\x01\\xaa\\x11\\x0c\\x94y\\xf4\\x1d\\x97\\xc5,\\xb0o\\\\\\x8c\\xb2\\xb6\\x82\\x11\\xf4O`\\x05O`\\xef\\x04V\\xed\\xb6\\x03\\xb3\\xb1U\\xee\\x12\\xa5\\x95+:\\xb4K}\\xb78\\xd2\\xcfTT6\\x91i\\x8e?\\x0c\\x19\\xe0\\x94\\xa7\\xb2\t\\x12v\\xbdl\\xde\\xf5\\xc2\\x9b\\xd7s\\xd4\\x92\\xb1\\xaf\\xdd\\x95\\xb7.<5\\x9a\\xee\\xe6\\xb2\\xf8\\xf3:\\x9f\\x08\\x18*ME!\\x11M\\xe1\\xd7\\x07lj\\x9c\\xdas\\xfa\\x94\\xd2q\\xd2%a\\xb6\\xc2\\x10\\x8c\\x82c\\xcb\\xdf\\x87|\\xa9B\\xca\\x0e\\x97\\xc1\\x97\\x04\\xbb\\xe7\\xd8\\xec5g\\xdc\\xa3uX\\xf3`IX\\x8a\\x8d\\x08\\x1d\\x9b\\xd0\\xa5I\\x17/_U\\x12\\xdbU\\x19\\xbf\\x9e\\x96\\x89\\xe1u\\x13V\\xfe\\xd1#\\xa6\\xb6\\x17\\x00\\xf4h)\\xb8\\x01{\\x8e\\x1cF\\\"C\\x8aO\\xc6{\\xd7x\\x04\\xd9\\x88\\xa1\\xb2K\\xcb\\xdf\\x1aO\\x8d\\xb6\\xe1\\xa9x\\xff\\xa5\\x86\\xa7z\\xf8|\\x13\\x86\\x19m\\xc90\\xa3&\\x86\\x19\\xd5\\xb3\\xf25c\\xba\\x9b\\xf0\\xd4\\x85\\\\4\\xe7\\xa9\\xfa\\xb23l\\x99#\\xb4\\xbe\\xc8\\x15\\xd26\\xfd\\xb3\\x9b\\x9ag\\x97(\\x86]\\xaf\\x96\\xfa\\xc7\\x94\\x86]b|2\\xfd\\xf3s|\\xbe\\x8e\\xc9<\\xb8\\xd6\\x97\\xb8\\xc8kH\\xd6\\x9eo\\xa8\\xe6\\x1d\\x9b\\xda0[\\xe9\\x9f_\\xe7\\x87d\\x03\\x03\\xcfj\\x188\\x9a\\x07\\x1c\\x96\\xda\\xfc\\xc7\\xc1\\xc5\\xb3&.\\x8e\\xd1Y1l\\x8c\\x15F\\xa9wI'\\xc7b\\xfe\\xb1\\xf69\\x9c\\xc29\\x15\\xcb\\x87\\x16\\xba\\xb6;\\x94A\\xb8p\\xc1\\xf4\\xf37c\\xfa\\xdc\\xba^-\\xc3\\x043e\\x9f\\xd3B\\xf8\\x13o\\x03^\\x18\\x04\\x1c\\x99)\\xa0[\\xe5\\xdcD|i\\xe99\\xc5\\x07J8\\xf0\\xef\\xed-\\\\\\xd2\\xff\\xbez\\xef2\\x08\\x0f\\\\'\\xff\\xa0e\\x18\\x96\\xc0e\\x97\\xc7\\xe0\\xcd\\x85\\xbf+\\xee\\x95;u+\\x1cbIy\\xc3R\\x8dZe\\xe4\\x0c\\xf43\\x17;\\x90\\xe5\\xa4\\xa2\\x953?>\\xe4\\x08U\\xfd\\xbe\\xf8h\\xf8\\xd3\\x8c\\xb6>\\xdb\\xbau\\xc1V\\xb6n]L\\x03/9u\\x01%\\x9c\\xa2\\ns\\xab\\xe7^\\x9a\\xc6C\\xb81T\\xee\\xc2\\x95\\x1e\\x1b)e?3\\xb8XB\\xc1\\x8a4\\xabb\\xdfsY\\xce6\\x9a\\x15\\x17\\xce\\x0c\\xebb\\xdfsa\\xb6j\\x9f\\x97R\\nm nk\\xd3\\x12\\x01\\x9f\\xfa\\x17zq\\xbbA\\x9c~F\\xc5ii\\xcf\\xd0\\x9d\\xb8\\x14\\x1b\\xf0\\x85Y:\\xa5}{Q\\xb9jh?ct\\xa3\\xf5b\\xfcL\\x12\\xbcooa-?(Dn*\\x8c\\x1b\\xa6\\xab\\xd4\\x0e}\\x8b\\x11\\x89\\xfc\\xab\\xe8!\\xff\\xdd\\xa58\\x1b\\\\di\\xed\\xb2\\x89\\xcf\\x15\\x8f.YF\\x05\\xac\\x0b\\xa54\\xda\\xd9\\xfc\\x971\\x05K\\xf5\\xf3\\x85\\xe8_-\\xd3\\xae~\\xde\\x8a\\xb78F\\x99)\\xbd\\xf8\\xdc\\x8c\\xf3Q\\x0br\\xf8l\\x9a\\xb3,\\x14\\x9b\\xbe\\xa0#\\xf8\\x82>\\x91\\x80\\xcb\\xf13<\\xf7\\xe0\\xdf\\xf2\\xa3\\xb7\\x14\\xfe\\x96\\x0214f\\x82sQ\\xbf0\\xb5\\xa9^\\xe4O\\xb9\\xb3#P;\\xef\\xca\\xce\\xe9\\xf2\\x0cV\\x84A1\\x00\\xbbT\\x86\\xc1Mv\\x19\\xe9s\\xc5\\xe3f\\xa6lt\\xcd/\\x94\\xd1\\xe3%\\xa5\\x14|\\xa7 \\x19\\xf5\\xa3\\xd0\\xf7R\\n\\x1fJt\\xf5e\\xc3\\xb4\\xd5\\x91Fq\\x98\\xe4\\x0d5\\x11\\xea\\xb2\\xb49\\x04\\xebYx\\x93.\\x82\\xf0\\x12|/\\x84\\x0b\\x02\\x0b\\x12\\x13\\x83T@;\\xedo\\xca\\x11\\xaa\\x0d%\\xa6s+%r\\x0f\\xc8g6\\xa0\\x91|\\xe6\\xae\\xcb\\xf8\\xbf\\xe4\\xae\\xb1\\x12h\\xc63&\\x94\\x17\\xf5\\x1d]\\xd4w\\xecT\\x96\\xb0\\x80kl\\x85o\\xe0\\x14\\xc6\\xfa\\xbe\\x1b\\xfb\\xfd\\xde\\x85kZ\\xd1u\\xb5\\xeb\\xef\\xb5v\\x90\\xa5\\xd9\\x17\\x81\\xca;\\xeci\\x19K\\xd1\\x08Z\\xd2s\\x05\\x82n8vX\\xb5:\\x01\\x1aJ\\xfc\\xa5\\x17{\\xb4\\xc1!\\xb44\\xd7\\x1b\\x83pF\\xc2t\\x08\\xd6$\\xad\\xdc\\xae\\xab\\x9a\\xcb\\x00o1\\xd4X\\xa5h\\x7f\\xa2\\xa2?\\xcb&\\x13W\\xa5<\\xc7\\xa9\\x06\\xab\\\\\\x0d\\x87\\x96<\\x05\\xf6\\xabn1PxK\\xec\\x0f\\x9c\\xeeY\\x1a\\x13O#\\xfe\\xa3N\\x8c~\\xb1\\xa4\\x15\\x83\\x8a\\xf5Jo\\xf5\\x04\\x919\\x80\\xd24\\xcd\\xc9\\x01=\\x05\\xd0\\xa5\\x11\\xc7\\x1e0\\xd1!\\xbf\\x92k\\xb3\\xf7\\x9c\\xee\\x17Q\\x10\\xda\\xe8KgYU\\xdb\\x9a\\xf8$\\x94\\x8c\\x19\\x84oC4\\x08\\x1b\\xbdD\\xd3\\xb1\\x142\\xe0-\\xb9I\\xec\\xd4\\x19\\xf7\\xa6SdyI\\xf7\\x9c,\\xc9\\xaa0\\xdbr\\x80\\xa0\\xdc\\x91\\x9bC\\x02?\\xcaB*\\xfd\\x84\\x12\\x0c1\\x89\\x0d\\xab\\x0c\\xa3-{20%q\\x9c\\xadS\\xcc\\x00'\\xc0\\xfa\\x19\\xf3\\x99\\xd3\\xbe.4\\x14\\xf0S2\\x957\\x95\\x87\\xf9z\\xad\\xcd:\\xde\\xf24l-\\x02\\\"y\\xab\\xf5m\\xa8~r3g\\x1b\\x1e\\x8f\\xac\\xc7\\xd0f\\x0epmxl=6\\xbe\\xf8\\x1e\\xbd\\xa6\\xc7dj\\x14,7 \\x93\\xe2z2\\xc7\\x08%\\x94\\xad\\xf8\\xe0\\xa5\\\\\\x81B\\xfa\\xbb\\xb9Pv\\xc6\\x18\\xd1\\xca\\x0c\\xf7\\x1a\\xc4'\\xe9\\\"\\xcd\\xa48\\xb6\\xb6\\xf9\\x0f\\x0cty\\xee\\xcf\\xbc\\x14\\x95RK6\\x9d\\xb6\\xf5\\xa45~\\xfe\\xd1\\xb37\\xcf\\xc6\\xf4\\xc0)J8\\xb9\\xe3\\xde\\xced:\\x99>\\xdd\\xb9t\\xc1\\x9aN\\xa7\\xd3\\xa7y\\xf1\\xa7xx\\xb5\\xa6\\xd3\\xa7\\x16V\\xcdW\\x13Q\\xdf\\xe7\\xa1k\\x96\\xd2=\\xaed\\xc3\\xf8\\xc5\\xf2G\\xbb\\xb7N\\xc1\\xc2\\x01!T\\xd9YpJ1\\x90\\x0f\\x19\\x86\\xa2\\x0b9\\x15\\x816\\xf4\\xf1r\\x81\\xbdd\\x89\\xb5]T%\\xb5zyo\\xd1\\x13\\xd3,T\\xbc\\xc77no\\xa5\\xc1\\xd5\\x8865\\x0b%L\\xea\\xc6w\\xf3\\xfe$\\x9a\\xee\\x189\\xb3~F)E\\x19B\\xa4\\xdf\\xd49}\\x18\\xd2U\\xd3\\x16\\xc9\\xc5\\xfdd\\x08s\\x83F.\\nS\\xe4l\\x06e\\x13#aC\\x08M\\x9d@\\xca5\\x04\\xaf\\xeey\\xd5e\\x15\\x94\\xa9xo\\xe0#^\\x1d\\x1f)\\x11\\xf2\\xc2HL$\\x97&\\x8a\\xcf\\xba\\x08\\xf1\\x82\t\\x12\\x89\\xcc2\\x0f|\\x0c\\x9fK\\xa7$\\xbf\\x9d`\\xa6\\x9a\\x81\\xd14\\xce\\xd3X*\\x95\\xd5\\xed\\x1d\\xe1$W\\xbc\\x94,\\x82yZ\\x0d\\xa8#\\x7f*\\xc6=\\xadKX\\xb5|d\\x07N\\xb3\\xc2\\x8c~p\\xf25gp\\xf1\\xd1K\\xe9z([\\n;F\\xed\\xf5)\\xce;\\xe3yB\\xa1f\\xf3\\x94\\x0b\\xa7`=\\xd9\\xa1T\\x8d\\xffn\\x83\\xf5\\xd4\\x92Kq\\x06\\xfa\\xe8\\x11\\xb4BZz\\x12\\xf2\\xc7\\xe8W\\x8c\\x17\\xc9t\\x1b\\xcf\\xbc\\x8aQ\\xa3\\xd9\\xa3\\xd5\\x92\\xf1\\x04\\x9dr\\x8b\\xdf]o\\xbd&\\xe1\\x8c\\x8a\\x0d\\xae\\x8cO]\\x06\\x0cJ@\\x11\\x1d\\xccn\\xf5\\x1c\\x17Z\\xbdMH\\x04]4\\x8e\\xc9\\xf9\\xac\\x95\\xe7K\\x9a.i\\xa2\\x8a\\xdd/,\\x07\\xa7`\\x01++=CI\\xca\\x02\\xcb)\\xde\\x8dq\\x85D\\xf5|\\xfaqo\\x08\\xd8\\x8eiM\\xc4\\x02\\x97\\x96\\xa5\\x15W\\xb7\\xa4xC.\\xa8\\\"#\\xae\\x0c\\xde\\xbd3]\\x87\\x82\\x1a\\xa7;-\\xcd\\xd0\\xd0\\x0bD\\x1a\\xf4H6\\xa8_9\\x0d\\x0b\\xd5\\xb52Q\\x16\\xf41\\xc5\\x08\\x00\\xdd\\x04eh8e\\x99Px\\xaax\\xb3\\xb5\\xc3\\xb2\\xcc\\\"\\x9c\\x89\\xcc\\x0bW\\x00>\\xa3\\xfc|,A\\\"\\xda\\xac\\xf894\\xb6\\xb1\\xe0q\\xe4\\xcd[ef\\xe6\\xfe\\x0b\\x863\\xe4:}\\x13\\xf8o\\x99\\x13J\\xba\\xe5N\\xbc\\xaa\\x95\\x0f+\\xc4\\x0e\\xf5\\x1e\\xf6\\x1c\\xda#\\x96\\x8c\\x12\\xf2\\xd8\\xab(\\xc9 \\xb7\\xc79\\xe7\\xd7V{\\xa2\\xd0\\xb2\\x89\\x08\\xe3\\xc1\\xd2L\\x1agv\\xa3g\\x94\\xf8\\xf8]\\xb2\\nR\\xdb\\xa2\\xd2\\x99\\xa5\\xb5\\x9c\\x8a\\x0f\\x15P\\xd8\\xfaoHT\\xeb\\xe6\\xf1\\xa6v\\x1e=\\xfb\\x8a'\\xa0[\\xbb\\x98\\\"\\x91\\xb2\\xbd\\x9e\\xa3\\x0f\\xed\\\\\\xd3\\xca\\xa5q\\xf8\\xccf\\xdf0\\xcb\\xe9\\xb75\\xcb)\\x95\\xf58\\x88\\x843\\x0b\\x7f\\xc6\\xc4\\x9by\\x17x\\x00\\xa7\\x04H<\\xf7\\x97QB\\x0c\\x91\\xee@\\x7fl\\x00\\xc3rT!\\xc2M\\xa0y\\x1c\\x0b5=$p\\x94\\x08\\xbb\\x92j\\x02q\\x1b\\x8f\\xee2\\xd4\\xc5s\\xae\\xbe\\xe6+\\x12'\\xa8\\xd3\\xb0\\xfa\\xdd\\x9ea\\xd7\\x93\\xd0\\x8ff\\xe8\\xe1\\x19w\\xc5w<W\\xff\\xe0\\xcd\\xc7\\x9d#\\x9dk%\\xc4\\xdd$\\xf5\\xc2\\x99\\xb7\\x8cB\\xb6\\x0b\\x13\\x190*=w\\\\\\xb81\\xa8\\xb7\\xac\\xd3\\xeb\\xd5\\xd2\\xd29\\xae\\x8a\\x0fW\\\"%\\x9b.\\x02\\xdfD\\xf3\\xfc D\\x19\\x95\\x0b\\xd6\\xe9S\\xe4C\\xdc)I\\x1czNu\\xe9YL\\xc2&\\x08\\xda\\xaeGY<\\xa2\\xf0\\xc8\\x18EB\\x12\\\\\\xadK\\x9c\\x82r\\x1c\\x03\\xf1A\\x0d#n\\xd7K<\\xa1\\x9c\\x82]\\xc6\\xd5\\x9e\\x0b>Fr)\\xbd\\xfa^\\x8a\\xd9\\xd4%K\\xb2b*\\x85\\x02\\xf6\\\"\\x87\\xd5b\\x9f\\xd8\\x87\\xfa\\xe1\\xa2\\xc2a\\x08\\x99\\xcd\\xb4\\x81E\\xecD\\xbc\\xc8\\xc5\\x82\\x15\\xe6\\xbe\\x06&%\\x0c=\\x0dm\\xe2\\xf5\t\\xc2\\x9a\\xcb\\xf2@\\xa2L\\xe5@\\xba\\x88\\xa3wH\\xc61(\\xacm\\x85Q\\n^\\x92\\x04\\x97!\\x99A\\x1a\\x81\\x07,\\x14uK'?\\x88\\xcf\\x95\\x94\\xaa\\xbb\\xde\\xdePdG\\x96\\x143\\xe6\\x8a=[\\xea-'\\xaa\\xa1[\\xaa\\x81\\xa9\\x80\\xdaT\\xc0\\x10\\x94V\\x0e\\xbc\\xdfD\\xdb\\x08\\xaf\\xdc\\xd6\\xc9\\x8a\\xe2c\\xa2R\\x86#\\x1f\\xa5y\\x9b.\\x89\\xc4p\\xd9\\xee\\xa1Ccv<\\x91\\x01\\x9a\\xca\\xb9\\xe2\t\\xed\\xe9\\xc6$S\\x9dW!$\\x96\\x91=\\xffU\\x8a\\x1a\\xba\\xbbg\\x88\\x18*\\x0fG\\xb0\\xf3\\xf2\\x00\\xadG\\xd6\\x10\\xacG\\xdej}R!\\x8a\\x8f\\xad\\xc7\\xf4\\xc9\\xcffQZ}d=f/\\xad\\xa3Dy\\xf4\\x04\\x1f-\\xd5w\\x9e\\xe2\\x83\\xcb\\xf4\\xa4\\xa0\\xa3\\xd2\\xb0\\xb7\\xbal\\xc5\\x89\\x17\\xa7lH\\xbcru\\x8f=~d=y\\xfax\\xea\\xec\\\\\\xd6LF\\xa5\\xc2pL\\xaaI\\xb4`\\xb8m(\\x8a\\xd2%\\xba\\x93\\xd2\\xbc\\xf3[\\x11\\xfd}\\xa7\\xfb\\xe2\\x8a\\x84\\xe9\\x8bU\\x90\\xa6$\\xd6)\\xf9\\xd5\\x83t\\xccc\\xa1.\\x02\\xe5Z>\\xfd\\x84\\xf6\\xee\\xbec\\x07.&\\xd3\\x0d\\xba\\x9f\\x15\\x14\\x93\\xb6x\\x80\\xc0\\x1f\\xc6A\\x9a\\x03\\xf7\\xf6\\x8f\\x11\\xf8Q\\xb6^\\x92k\\x06:\\xe8!\\xe8M\\xec\\x85\\xc9<\\x8aW\\x1c\\xdaG\\xe8\\xf7\\xbd$y\\xb3\\x88\\xa3\\xecr\\xc1\\xe1\\x03\\x843\\x9d8;\\xd8\\x05r\\xc2\\x8f\\x00\\x9d\\xc1j'\\xffJ\\xca#o\\xd2\\x9c\\x07\\xfa\\xd3h\\x8a\\x06a\\x1c\\x0e\\xbb0\\xc5X\\x0dZ\\x89\\xe9\\x1b\\x18\\x1bh\\xede\t\\x91\\xbe*\\xc7&}\\x93\\x91\\x96\\n\\x85\\x05\\x1f\\xc2\\x1ac\\x92d\\xab\\xd2\\xf7\\xdaSY\\xd8\\x8d\\xc2\\\\$\\x0b\\xd0\\x81\\x0e\\x01\\xb1\\x17\\x84\\x96\\x0b\\x11B\\xce\\x83\\xe4,\\x9d\\x05\\x11\\x957\\xe4\\x81\\x11$*\\xb7\\xb7`\\xb3j\\xa8\\x18\\xe7\\x82\\x87\\x02\\x11\\xfd\\xcd\\xc46\\x17\\x92\\xaa\\x16\\xef\\x8a\\x874k\\xf5M\\xf3\\xebi\\x07\\x9bac\\x19\\xe7\\xb8)\\xa3c\\x9b\\xcd^\\xb2A\\x85\\x86{\\xe03\\x92\\xa4qt\\xc366\\xff\\xb1i\\xb3\\xbe\\x9en\\xa3\\xaf\\x90\\xed\\xb8\\xdcN\\x1cw\\x97A\\x92\\x92\\x90\\xc4\\xcf)\\x1f\\xc2\\xfd\\xe4\\x82E(3\\xb5\\x1c\\xc1_\\xab\\xf4V\\xdf\\xe2\\xdc\\x88&\\xab\\xe8\\x8a|\\xc2\\xdb\\xa9\\xac\\xb9\\xf2PZ\\x7f\\xf5Uy\\x9d\\xab\\xcf\\x8a5\\xd7\\xbe\\x89#\\xa2\\xc2\\x92\\xaeU\\xf9\\xa9\\xa9\\xd5ym\\xabsm\\xbd\\xc5\\xd3\\x9a\\x9d \\xc8-\\xc3\\xe4R?\\xab\\x10\\x19\\xdb\\xe7\\n\\xb6\\xcf\\xf3w\\xca\\x10v\\x94\\xa1\\x04\\xc8b^\\xceM4\\xdca\\x8ec5d]\\x7f\\xab\\xaf\\xa0\\xeaG=\\xa7\\xcb\\xc2\\xe3\\x96\\x19\\x9e0\\x1e6\\x86\\xc8\\xa9\\xa2R\\x8ee\\xa9\\x16\\xcbZ\\xcd\\\\\\x0d\\x84\\x00i\\xa7 %\\x19#\\x8e,E\\xbe\\xb9Y\\x13.I>\\xf7B*LR6\\x03\\x1e\\xf8K/I\\xc0K\\xc0\\xcb[\\xd2\\x1c\\x0b\\xdf\\xf3\\x0d\\x94\\xcb>\\x0b\\xe2\\xcd\\x80E\\xa3\\xe1\\x90\\xd4\\x0b\\x96e\\x08?\\x0e\\x8c\\xaa^\\xcb:$I\\xd5\\x8c\\xe6\\xf5r\\x9a\\x10m\\xf5\\xf3A\\xb7\\xa21S~H\\xaeS\\xa6\\x8eR\\xc7\\xa9\\x8af\\xf2P\\x9eb\\xc0\\x92|\\xb8\\xa8\\xf5\\xc1\\xdb\\xc0\\xc3\\xd2\\xac\\x90\\xf2\\x94\\x10\\x17\\xdam\\xa9\\x9a\\xf2l\\xb8\\xa5\\xb1g!\\xea\\xbe\\xbf\\xfd\\xe1\\xe7\\xfd\\xddd\\x0ex\\xec\\x0ci&\\xd0\\x11\\\\\\x1ec\\x051\\xb6\\x19\\xb32b\\x13}\\xe7\\xe2xQk\\xddy5\\x15'\\x1a\\xda\\xa3.\\x9d\\x91Z\\xbf\\xc3\\xbe2\\xc4\\xd3\\xd2\\x80\\xaa8^Y\\xf2\\xa2%:\\xbd.t:RU\\xda\\x98\\x85u3\\x82\\xb1\\x0e\\x9bf\\xa4\\xaew\\x0d;\\xb0\\xdc\\xda\\x17Q\\x106\\\"\\x1c\\x9b\\xffQu\\xfe\\xc5E\\x0f\\x8d\\x17s)\\xean\\xdeY\\xe6Zl1m<\\xae\\nO\\xcdM\\xe7\\xed\\xc4\\x81\\x10\\xda#4\\x81\\x13\\xc3\\x9a\t\\xaeR;\\x7f\\xe8{u\\xcf1\\xc5]o\\xb9\\x8c|\\xbbg\\xf0cV0\\xa6\\xd0\\xf57\\xa0]13xj\\x0eXl\\x08\\xde\\xde\\x0f\\xc2\\xc4\\x9b\\x13;\\x85\\xa7O\\x9f\\xa2v2+O\\x9fG\\x97\\xf3\\x04\\xb2\\x13\\x07'.\\xc36\\xd8\\xacF\\xfc\\xe2\\x04^\\xde\\x8e\\xd67,\\xb0\\x01}\\xa5-\\n\\x96\\xa2\\x18dl\\xd2MS\\x1c)S\\x9c\\x03\\xdeSI\\x0b\\x03s\\x06\\xdd L\\xd6\\xc4OK?\\xba~\\x96\\xa4\\xd1\\x8a\\x91\\x89\\\\9\\x93/\\xd0\\xb8ZpZ\\x87\\xecb7\\xe7/i\\xd4jlXC0\\x92\\x1c}\\xb8\\x1e,.\\x05z\\xcfMo\\xec\\xe2h1^\\xe3\\x89{c\\x7f$\\x1d\\xfb.sw\\xbd\\xddF+\\x90\\x88\\x0fS\\x1cu\\x13\\x92\\xbe\\\\\\xad\\xc8,\\xf0\\xcc\\x1e\\xae\\xdc>\\xc3|\\x8cx\\xcab5&\\xb3\\xfc\\xf1k\\xaej\\x007\\xdb\\x98L3\\xc0M7iw\\x16\\xf9\\xa8(3\\x97[\\x97\\x12B~_ \\xc9k\\xcc*\\xa7}`\\xcc\\xa7N\\xab\\xc2\\x8clk:'o\\x82\\x15\\x89\\xb2\\x14NaM\\xc9\\xb5[D\\x8c\\xe7yk\\xa6\\xccq\\xfa\\xab\\xf7\\xdd4bW\\xdb\\xf9\\xe9[$\\xb6aQ\\x8b\\x9a\\xe8\\x88\\xf8Hf\\xa0Z\\xca-\\x7ff\\xb6&\\xaa\\xaf\\xf8\\x98\\xf4[0\\x94Q\\xa7\\xae\t\\xb4\\xa1v\\xd7Q\\x92~\\xca\\xb3\\xf9\\xb3\\xac?\\xc1\\x8an\\xc93?\\x0e\\xd6\\xa9\\xd1\\xddG|\\x04\\x11\\xd79\\x08V?x\\xcc\\xefF\\xe1\\x8a5Woh\\xcf\\x85\\xbf\\xbc|\\x13\\xd3\\xab~\\x88\\xde\\x84 \\x7f\\x18o(f\\xc0\\xb6,\\x17\\xac\\x0f-~\\xa8(\\x1a\\x0e\\xab\\xa1\\x94K\\xb5\\xe8W\\xc2vP!\\xc5\\xab~\\xbe\\xf0\\xc2\\x90,\\xe1\\x14l\\x1b\\xa3\\xa7\\x90wP~\\xe4t\\xe9\\xbc\\xf7\\xf5\\x03\\xaeE\\xae\\x99\\x9d\\\"\\x057\\xa9<\\xb7\\xc0\\xd3\\x08;1(M\\x8a\\x01\\x0bQ5\\x86\\xc6E+\\nc\\xe2\\xcdn\\x92\\xd4K\\x89\\xbf\\xf0\\xc2K\\x82i\\x92\\x97<N\\x08\\xd7\\xbc\\xdbV\\x82He\\xe1\\xcd\t\\xca\\x8e\\x969\t\\xe0E\\xb6\\xe9\\xaa@=c+f\\x04#]\\xb5\\xc7\\xdb\\xa0\\xd7\\x8c\\x85\\x93\\xd7\\xd7\\xc2\\x84\\xac\\x80\\x1f\\x8c\\x9f/\\x82\\xe5\\x0c\\xfd\\x83\\xc533\\x1e\\xd1\\xb7\\x98j[\\xbce\\x9e\\xf8\\xcd\\xe7\\xa9\\xa0v\\xf6\\xcc\\x85\\x9e\\x12HU|(\\xe9@\\xed\\x8c%\\xf3\\x8c\\x0f(\\xb7\\xc3`\\xa7\\xb1\\x17\\xce\\xa2\\x95\\x8d\\xcer\\x1fXn9\\x8fW\\xad\\x07#\\xe9&Q\\x16\\xfb\\x84\\x87\\xd9\\xa3\\x18\\xa3\\xde\\x8egB\\x1d}\\xd8\\xe3\\xfa.\\x14J\\xc4m\\xf9\\x0c\\xf5y3\\xbb\\xcd\\xe1,p\\x9e\\x88\\x8de\\xf2p\\xa4\\xfb\\xd8\\x9b\\xcdP\\xd7*T\\x14\\xb8+\\xab@\\xdb\\xe2\\x9b\\xceB\\xf6\\xd7\\xea\\xa3\\xde\\xb7\\xeb\\xa5\\xa9\\xe7/\\xb0\\xa4m\\xe5\\x1b\\x93\\xebc\\xe2\\x8d'\\xa0Ld2*\\xc22:cX_\\x971\\xa9|\\x116^kI\\xa9\\xd6\\xaax\\xf1\\xa6\\x9c\\xe8\\x88\\x9c\\x816\\n\\xdai\\x9d\\xcf_IL/\\xfc\\x8d\\x95\\xdb\\xb7\\x1d\\xe8\\xf3\\xbc\\x19\\xbd\\x13\\x08\\xe1\\x89\\x9c>\\xa3\\xddvD\\xbe\\x8b\\xe2\\x0e.Z\\x06\\x0d\\x97\\xbd@r\\xfb\\xaa\\xdf\\x85\\x94\\x1f_x\\xfe[\\xe3qV|\\xbc\\xf82\\xd1\\xf9\\xdb\\x89\\x8f\\xe1\\xae=\\x14l\\xc8\\x1f'S\\xa6\\xdf\\x8e\\xed\\xc4q!i\\xb7M\\x08\\xb7fG4y\\xed\\x16J\\xd9:\\x1f\\x82\\x85y\\x89Yzw\\xf0\\xab\\x81\\x9b\\xa1\\xa1\\xca\\x1a\\x1f\\x15T\\x8e::\\\"\\xa1\\x9f\\x94\\x86\\xbb;\\x02[h\\x17\\xeb}\\xf4\\x1a}\\x9e\\xe7\\xdc\\xf5\\xa6\\xaeL}\\x9a@\\xf1im\\xb8{\\xe4O~:\\xed\\n4k\\x16p\\xc4'\\xc6\\xf7(\\xd6\\xd5\\xf7^|\\xf2\\x14P\\x0d\\xba\\x0b\\xdd\\x07\\xfd\\xae{f\\xdf[\\xdd\\x87\\xd4\\xf9O\\xea>\\x0d^\\xda\\xd5\\x0f\\xf6\\xa9\\xbfm\\x9f\\xe2qo\\x93\\xbbU\\xf2\\xe7.\\xfd\\x1a\\xdc\\xa5_.\\xc4\\xe3\\xfe\\x8f\\xa3w\\xbbw\\xef\\x1d\\xfd\\x7f\\xf0-\\xf7\\xb1\\xd1\\xd5[\\xf7A{\\xfd\\x12U\\x0e\\x1aw\\x0f\\xddG/Q\\x97J\\x98\\x84\\xa3\\xbc\\x00\\xcc\\x83\\xd0[.7\\xa1\\x0f\\xccp?\\xdf\\xe0\\xbc`|\\xba\\xa9\\xdfoE\\xb7g[Y\\xc8\\x02\\x02\\xcedY(!\\xcby\\x11\\xa9?\\x0fN\\xbc\\x08\\x12\\x0c\\x83=\\xc4\\x02\\x92\\x0d\\xb8\\x949\\x14y\\xb1\\xd9\\x15`\\xf3[Q9\\xfb0\\x90M3\\xf1E\\xdd\\x03\\xe9.#\\xdf[\\x9e\\xa5Q\\xec]\\x12)\\xa2\\xa3:)r\\xfeTm\\x855\\xef*\\x10aQ.\\xb7\\xaf\\xe5GBa\\xc8sn\\xa07\\x99\\x95\\xc6\\x19a\\x87\\x7f\\x1e\\xd2.t\\xbai\\xf4I\\xf4\\x8e\\xc4\\xcf=\\x8d\\x01Y\\xfe\\xb5q\\xf0R\\x10wal+\\x8c>\\xe2A\\x88\\xd0\\xc0b\\x8a\\xbd\\x0d\\x92\\xb1\\xa9\\x1a\\x15\\x13\\x8a\\xb14\\x9eapm\\xb4ai\\xe5\\x12\\xa1m\\xa1\\x85\\xa8\\xd2\\xb5\\xaa\\xef\\x91\\xee\\x1e\\x81\\xf8\\xd0*b\\xcf'\\xa5*\\xe0\\x14\\xfc(L\\xa2%\\xe9\\xe2C\\x16\\xc0F\\x80\\xdeyq\\x88g%\\x1c\\xa4\\x1aD\\x0f\\x8c;-W\\x170R\\x93\\xa2I\\xaap\\xc4j\\xda\\x87\\xc6\\xad\\xb4\\xd1\\x1e\\xd2+\\xe2J\\x19\\x96\\n\\xb0\\xe4\\x06r\\xac\\xcb\\xa3\\x14\\xda\\xfb}\\xed\\xad\\xcfH\\xdd\\x1e\\xdc\\xb6G\\xe9\\x82d\\xde\\x8b\\n\\x1c\\xa2+\\x15\\xa9\\x01\\xc9\\x0bG\\x12MpS\\xac\\xb8\\x1b\\x84\\x0b\\x12\\x07\\xd8yt,q%\\x98\\x1d1'\\x93H\\xd2\\xab\\x9f\\xa7\\x92\\xcbH\\xddd\\x01\\xa2\\x06\\xb7DT\\xdb\\xde\\xc2\\xb3\\x86.\\xcf\\xe1F\\xcbS~k\\xd0\\xbf\\xc3K\\xfd\\xfe\\x81S8\\xc5\\xdc\\xf1}\\xc9}f\\x93\\x1a\\x9a\\xec\\xcd\\xfdc}\\x16\\xc4\\xfe\\xb1>\\xcf\\xcd\\xdeAs\\xac\\xf6\\xeaBqK\\x04\\x0bH-\\xc7P\\xd2\\xeb\\xcc\\xb3\\\"zU\\x8c\\x97R\\xd1*g\\x13)\\x8a5\\xe6\\xd6\\xcb\\n\\xebWau\\xe8z\\xc9M\\xe8\\xf3\\xe4\\xadYw\\x1d\\x07\\xab \\x0d\\xae\\x08\\x9c\\xe6.0pZn\\x02\\x87u\\xbc\\xef`6\\x0c\\x1e\\x03\\xca\\xd6\\x948pl\\x82w\\xe5*\\xcf\\xa4zi\\xb1C\\x07S\\x0e\\xc8\\xc0\\xfd^\\x9f\\x01\\xe9\\xd7\\x01V\\x93w\\x15\\xfd~\\xec\\xfd\\xde.\\x82\\xd6,!\\xa7\\x00\\xee!p\\x16$\\xeb(\\x07\\xf6\\xd1f\\xd3]y\\xd7\\xcf.sX_\\xc0\\x04\\x80\\xbd\\x19\\x939\\xba\\xa7\\x90X\\xc0\\x0f\\xe8\\x8e\\xa3\\x88\\x92m\\xb9k\\x9a\\x10i\\xef@\\x17\\xb9\\x1du>\\xdeE\\xa2\\xa2\\x12>\\x99/#9\\x97\\xf5f\\xe8\\xc4\\xd1$H^y\\xafl\\x8c\\xfb\\xcf\\xd2x \\x96\\xa40\\x82W\\x18\\xc3\\x153H<z\\x04A\\xf2q\\x10\\x06)\\xb1y:\\xa5\\x143\\x81\\xf0\\x0c\\x14[\\xbb\\xe55Si:\\x15\\x07\\x0e\\xeamq\\x8cIp\\x19\\xe2\\xd2\\xef\\x1dlFi\\x9a\\x9b0\\xb2ga\\xc9\\xca\\x1b\\xd6n0\\xbd\\xd3\\x14\\xa2=\\xb79\\xda}\\x96y\\xb0#~w\\x06\\xbdm\\xd3\\\"l1\\x0c\\xb3g\\xa6\\xb4\\x98n\\xb1\\xe2H\\x14\\xe4l\\x1b)\\xf7\\x9c`\\x99~\\x1e\\xa2\\x9f\\x12\\x85\\xd4\\xf3\\xd7#}\\xe6\\x8b\\x81>\\x0d\\xd8\\x9e\\x92\\x07\\xc6\\xcb\\xc9l\\xfd\\xe4\\xe8\\x02\\xd9]\\xb1 v\\x89\\x0b~y\\x81\\x03L\\x9dBe\\x1f\\xbb\\xc8?_&\\xb9\\x8eDv\\x04\\xb9\\xd1\\xb8\\x83\\xbf^\\xd3\\xc6\\x13x\\x8c\\xa5\\x1f\\x83\\x17\\xce\\xe01/\\xfe\\x18|\\xe6\\xe2sA K\\xd0]\\xfc\\x92\\xa4\\x0b\\x12W\\xb5\\xe5|\\x19\\xcbazr\\xd1\\xc8:?\\x17\\xd1\\x19\\xce\\xcf-\\x16\\xaf>\\xec\\xce\\xa3\\x18\\x9dp\t\\x0cYf)\\xcf.B\\xe3\\x93\\xfc[X\\x0c#\\xe24\\x9f]\\x0c\\xcbh\\xd5\ts\\xd7\\n\\xa8\\x8c\\xd1(A\\x87c\\x82q]R\\x1e\\xa8\\xddW\\xee\\x13\\xb1T\\xce\\xe7\\xe7\\xeb8\\x9a\\x07K\\x12\\x9f\\x9f\\x03\\x8f\\x14^@0$\\xa6\\xdf\\xcd\\xd63/%/\\xc2+\\xbcJ\\x9d\\x87\\x9fx\\x90\\xbd\\xd3\\x88\\x93\\xbb\\xba\\\\\\xbcBU+\\x89Y\\x17A8S\\xb1TS\\x90.\\x95\\x8a\\xb6r\\xe2\\xff\\xd2\\xc3\\xa4x(y[\\xf1u\\x7f\\x99\\xbc\\x08\\xb3\\x15\\x89\\xbd\\x8b%i\\xa2\\x07\\x9b%j\\xd0\\xde\\x84\\xa2\\x934g7\\xd3\\n\\xbc\\x1f\\x18\\xe27\\xacK\\xa5vk\\x0ew\\xc5n\\n\\xec\\x90\\xa58\\xf3\\xf9q\\xdf\\xb3)\\xae\\xa1Ux\\xdeM\\xa28\\xb5\\xb5\\x04v\\x8d\\xa9W\\x11\\xf9\\xd7\\xb8\\xdc\\xc3\\\"\\xfbL\\x83\\xc6}>N\\xa7\\xc8\\xcf\\x99\\xc4\\xed\\xd2\\x01\\xca\\x93e<\\x88\\xf1\\xde'\\xecE\\x96R\\xf8T\\xd4\\xe3\\xbb\\xb0t!\\x1c\\xa7S\\x17R\\x91gD{\\xa3\\xdctX}\\x10\\\\\\xde;\\xacRR!\\x81\\xea\\xf3E\\x1c\\xe9\\xd3E\\xec\\x1d\\xf5\\x9d\\xee\\x8a\\xa4\\x8bh\\x96\\xe8(\\xed\\x9e\\xf2\\x1eg\\xd6\\xc7\\xba\\x04\\xd3\\x9a\\xbd\\x80g\\xc2r\\xc9\\xf9\\xa6\\xbbfYl\\x0cff,?\\x96\\x1c\\x14J\\x89\\x1d\\x94\\xf0\\x9d\\x0b\\x94\\x81\\xa3J\\xcc\\x80\\x19B\\xc9*hL\\xdd\\xa5?H\\xa1o\\xb7\\x0bW.\\xdc\\xb8p\\xe9\\xc2\\xca\\x85s\\x17.\\\\x\\xe7\\xc2\\xb5\\x0bg.\\xbcp\\xe1\\x99\\x0b\\xaf]\\xf8\\xc2\\x85\\xb7.\\x86\\xb1Z\\xe2\\xe9KO\\xf0\\xaf\\x98T\\xdc\\xe2\\x020%\\xe5\\x9cw\\xe7\\xbai\\xc6\\xabS\\x89\\x9eK25\\xc5\\xfb3\\xcct*\\x831\\xb8\\xd3\\x08\\xce\\xba\\x97$e\\xd1\\x87\\xcf\\xba\t\\xfd\\xba\\xc2\\xaf\\xcc\\xac\\xe1b\\x94\\xce3f>q\\xdcB+\\xd3\\x8dI\\x12-\\xafH\\xcc\\x82\\xcc\\xbe\\xe5\\x9c%\\x87\\xd2=\\xfd\\x05\\x8f\\xbc\\x144\\x04a\\xe1\\xfc\\x97\\xfbU\\xe5\\x04D\\xa5\\x1e\\x94\\x1fcp3\\xb4\\xd6\\xbf\\xb5#\\xa7\\xe8\\xd2\\x88\\xf1\\xe8\\x1b\\n\\xa4Et\\\\\\xf2%]\\xad\\xfc\\x1c\\xfe\\x82\\x16\\xcb\\xb8W\\xf2%I-\\xdc\\xb4\\x11\\xf3\\xc5s\\\\x\\xa9\\x8dhO\\xfb\\xc0\\xd2\\xf2a\\x94\\xe4\\xc2\\xfbp\\x9e\\x93\\x13v\\x86\\x8f\\xc6\\xbd)\\xeaQ\\xaap\\xd1\\xe7\\x11\\xcb}c\\xd6\\x08iF&D\\x8b\\xd8\\xb6\\x9e\\x07\\xb1\\x9f-\\xbd\\x18\\x82\\xf0*\\xe2\\xaa\\x1c\\x17\\xac\\xe7/?{\\xfe\\x83O\\x9e}v\\xfe\\xf2\\xd5O\\xbd~\\xfe\\xec\\xcd\\xcb\\xd7\\xafLVwZ\\xeb\\xa5\\xad\\x89_\\xfe\\xbe\\x08i]3\\x8d\\x0f\\xd4\\x13\\xbe\\x1a/\\x99=2p\\xe1\\x99\\xbc.\\x89X\\x17n\\xc1\\xa7bH\\x99|\\xbap\\xe5\\xe4y\\x07\\xe9\\xfe\\xa8\\xd5\\xb6\\xe1\\xe1Y\\xbf\\xaa\\x86\\xa1\\xb2{\\x02\\xb5h#\\xae\\x12\\xe4\\xa8[\\xe0\\x90\\xc1\\xa5\\x10\\x8dm\\xba\\xa0\\xc9\\xa7\\n\\xbe\\x14\\n3\\x18V\\x90\\xccqMh\\x9ew\\xfa\\x81\\x17\\x89\\xf9\\x03\\xa0\\xbf\\xb0f\\x99\\xf2\\xfb\\xe3\\xb8VD\\xcdu.\\xa7\\xfa\\x7fXR \\xdf\\xefD\\x8e\\xc7\\xf5\\xc4\\xb8\\x0b\\x8d\\xd3\\x14\\xd4.kP\\xa6\\x06\\xba\\xcc]\\xb8M\\xefK\\x0dj:\\xf7\\xc0\\xcb7\\x0e\\xe8\\x1e\\x0b\\xb5\\x8b\\x17\\x88u\\xa3\\xe2\\x97\\xe2\\xae\\x9bi-\\xffQ\\x1c\\\\\\x06\\xa1\\xb7\\xd4Z\\xfb\\x85\\xb0>\\x84/\\xd4\\x87\\\\\\xd2\\x7f\\x85\\x91\\x83\\x90\\xdb\\x8b\\x9fj\\xd9K\\x92nr\\x0d\\x94\\x0f\\xf2m.\\xe7\\xbd\\xb5S\\x07\\xb9\\xdc)\\xdc\\xb0@\\x0f\\x1c)R\\xba\\x18*\\xd5S[^x\\xc9\\x16-\\x1b\\xd6Q\\xe3\\xda\\xa3i\\x8a\\xf1\\xdbMZ3\\x900`\\xfd\\xd5\\xf7\\x00\\xe7\\x04\\xfd{W\\xccM\\nF\\xf0\\x12EU\\xee\\xbe\\xc0~\\xbc\\x96\\xd1\\x82=\\xb1P\\x9a%\\xba Q\\xea PL\\xd8 #\\x8fP\\xac\\xbc\\xd4\\x0f\\x03\\xcf\\x83\\xe7\\xf4\\xc8'\\x89Fn\\xde1l\\xc5\\xdatb\\xa3R2\\x9f\\x9aK9B\\x9dC7\\x7f\\xae\\x0ey\\x81F\\x0f\\xccI&\\x83\\x9f\\xe5`>K\\x85\\x1b\\x95\\xfdZD\\xf1X\\x94T\\xfa\\xfa\\xb8\\x15j\\x7f\\xe9\\x18\\x870S\\x1f\\xe4g\\xe1\\x0d&8e\\x92-\\xdf\\x9ej\\xb3\\xd5\\xed}\\xa1\\x8aj\\xe6{,n9\\x87\\x8e\\xba\\x86l\\x0b\\x86\\xb8\\x05\\xc3\\xb2\\x8cFP\\x92\t\\x99\\x8c\\x96q)\\xb3j7\\xde\\x92\\xa7\\xe7\\x8an^\\x1bg~\\xe5*\\xa1iki\\xc8G\\xc1T\\x18\\x17\\xc9[\\xa8\\xa6=w1\\n}P\\xefF\\x8cH\\xdf8w\\xbc\\x1b\\xc5\\xd09\\xcf\\x1d\\n~'Mk\\xcaW\\x8dNhA\\xddB\\xd6Y\\xba\\xa3U\\xbd\\xcb\\xf5\\xb7\\xd6\\xcf\\xac\\xbb\\xf0\\x121\\xf7\\xda\\xee\\x16XP\\xd3q\\x8e\\x18\\xb4\\xaeT\\x93pum\\x7f\\xa1\\x0b\\x8c*\\xeb\\xbe\\x86\\x10a\\xd8*#\\x89\\x8d\\xec\\x0b\\xcdSN\\xbb\\\";\\x13\\xa7\\x1d\\xb5\\x15\\xe4D\\x91\\xfdN\\xf7\\x0cyEd_\\xab}\\xcer\\xc8\\x83\\x9c\\xf0\\xfb\\xc7\\xba\\xfc}\\xf4\\xe4\\xaf?\\xe1\\x0ft'|\\xd4Kv}o\\x9df19K=\\xff\\xed\\x9b\\xd8\\xf3%\\xb6B\\xe48\\x1d\\x8d\\xf6\\xa8\\x90;#2u\\xa7.\\xf7\\x98\\x07\\xe5\\xfc\\x1fj\\x89\\xa4\\xa2c\\xd2\\x9e\\x85#;\\xe1\\xa1\\xb6<\\xc6\\xd4x4R\\x91\\xb8\\x1f\\xed1\\x89\\xc8\\x14\\xc9n\\xe1F\\xa2l\\xd8\\xf5\\xa3\\x19\\x8a\\xddxO\\x87\\\"\\x1a-CJ\\x02\\xcf=\\xd6hs\\xa3\\x02\\xe3\\xc0\\\\I\\xc1\\xe2\\x84ln[`\\xb1l\\x88\\xad\\x8f\\x882\\x8f\\xa2!X\\xb1\\xf7\\xa5U\\xa5Qj\\xd9\\x0b\\x8a\\xf1\\xd6\\xec\\x9d\\xb7A\\xd94\\xfe\\xf2f\\x08\\x16\\xfdS\\x0d-\\xecb\\x80\\x9a\\x08s\\xb7]x1\\xcb\\xe1\\x16\\x7fy\\x83\\xb4\\x81ve\\xf6\\xce\\xc3\\xf7\\x1eXo\\xbbgH\\x8d\\xaaU\\xdc\\xa2\\x11g\\xe5]o\\xa0\\xd41\\x18\\x08\\x8a[8\\x91\\xe2o\\xeb\\xc2\\xa0\\\"w\\xa3\\xa3n*+:Q\\x1a-yhk5\\x8df\\x17\\x9et\\x1cS\\xf9\\x9d\\x8cc\\x8d\\xabi\\xa3\\xbfN\\xc8\\x02\\x15\\xd0}\\xdd\\xe8{\\xc1\\x04\\xfe\\xfe\td\\xf0\\x04\\x92\\x13h\\xb73v\\x7f\\xad\\xd8\\xa0\\xd9\\xd4\\xc5\\x80\\xb7yh\\xa2jv\\x82J\\x1c\\xb407\\x8bh1\\xfd\\xdb0\\x1c\\x1e\\xee3\\xc3\\xa1\\xa4ag\\xa6\\xc3\\xc3\\x83o\\xdbt\\xa8_D>V9\\xae\\xac\\x95\\xdb\\xd4-\\x8c\\xb4X^\\x87\\xdaE\\xd5;`=\\xb0>Y\\xe1\\x1eA\\xd9d\\xd1\\xb4\\x9d\\xaa\\x1d\\x17\\xe6f\\x8c\\x84\\x9b\\xaf\\x0d;\\x9em\\xebzr\\xa7\\xbek(&oB\\x1fR\\x9d]A\\x1b*Ks\\xc7\\x81\\xe3\\xb0\\x1f=\\x82`,\\xec\\x12\\x98\\xbe\\xa1\\xf5 f\\xd6*\\xfe\\x1f3\\xfc\\xe7w\\xe5J\\x17nS/\\x08\\xf9n8\\xea\\xddc7\\x88\\xd9\\x96\\xc9\\xfc\\x96{\\xa5\\x8e\\xd7\\xc5E_1\\xe7\\x88\\x08\\x17\\\"\\xa06r/\\x91\\x9d\\xbb\\xfal\\x1eE\\xd6\\xc3\\x18\\xda\\xc50\\x95\\xa9\\xe4wa\\xee\\x8a\\x0d\\x95#b\\xc9\\xb6\\\\NDy\\xdf\\xceW\\xee\\x92\\xba\\\"\\x18\\xbb\\xc6\\x04\\xb4\\xd4[E\\xd7\\x1b[r\\x16\\x9bZrf\\xf5\\x96\\x9c+\\x83%\\xa7\\xd2\\xdc\\xcd\\xa6\\x06\\x9fK\\x9dE\\xb5\\xac4)\\xbf\\xb0\\xd2\\x12\\x0c?\\n\\xe7\\xc1e\\x86\\xb6W=\\xd1 \\xb9mV\\x1f\\xf5Z\\x04I\\xaa#+j\\x9akJ\\xa2\\xe2&a\\x05\\x84\\xc0b<\\xb3-\\xd1\\xa5\\xe1RF=\\xeb\\xfc\\x9c\\x10t\\x1b8\\x95b\\xcb!\\x8c\\x1e\\xe5(h\\xd5\\xc5\\xbc\\xe70\\x82\\x99P\\xc8\\\\U\\xdeva\\xe5\\xb8RA^,\\x1c\\xa7S8\\xd5\\xc5[\\xe7O\\xe8\\x1f\\x16\\xac\\x0d=O\\x11:\\x821\\xb3\\xa5\\x92i\\x01\\xe2\\x91:\\xca3V\\x11\\xf5B\\x9f\\x0c\\x91\\xd0o6K\\xae\\x1c\\x0eL|J\\x13\\x15\\x88\\x88|\\xcan\\x0d7\\xb9\\x9f\\xc8\\x8d\\xd4\\x01{\\x03\\xaf\\x91\t\\x97\\x8df\\x8fX\\x8c\\xadCg\\xf7u\\xe8\\xe7\\xf1|\\xce\\xcf7\\x9c\\x8a\\xf9|\\x88\\xa2\\xef\\xa63\\xc1i\\x84^\\xcd\\xcd&\\xa3\\xa5G\\x9bR,\\x05\\xfd\\xfb-\\xbb\\x82X\\xce8\\x9dn\\xf0\\x9e\\x8a6,\\xb6(}[\\x9d1\\x10\\x92w\\xc4n\\xbe\\xd1\\xc5\\x8b\\xc7\\xd1\\x94\\x8a\\xb0\\x91\\x03A\\x11\\x927\\xd0\\xcd+{J\\xe5\\xe4\\x81\\x88K%4\\xfa\\x1c\\x05\\xe3q\\xc4]\\xe40ie\\xdcM\\xd6x\\xeb1r\\xa1\\xaf\\xbb\\xb7\\x87\\x96\\xb4\\xb8h6\\xaem\\x96kc\\xc3:\\xcf\\xf8\\xa6eg\\n\\xc4\\xac\\xf1~\\xe2U\\x1e\\xd1\\xa2v\\xdd\\x0dt\\x82r\\xe3\\xa0\\xbc\\xa0\\xe6\\x15\\xd1\\xafc}\\x1cx\\\\\\xc5Pc#c\\xb6!9\\xd5\\n\\xbb\\xebH\\xd8\\x89\\x85\\xc0\\x13\\x08\\xe9r\\x13\\x07\\xa21\\xa1\\x0f\\xcb\\x17\\x1dI\\xcd%8l4\\xc0\\xe0\\x15\\xec2+\\xaf\\xb7w\\x82\\x847\\xa0/\\xb3\\xaa\\xf9.\\x8e\\x0bC\\x8e\\xb6RnJ\\x15\\xb7\\xc9\\xaac\\xa9\\x9b\\x80Mnl-\\n\\xe2\\xb2\\x08\\x92\\x86{F\\x0d\\xf7\\x8a6\\xb9\\x89Un\\xaf\\\"\\xaf\\xdc\\xbf\\xf5\\x86\\x9bVu\\xad\\xbb%\\xdd\\xd1\\xfd\\xfa\\xb2\\xd1\\x8d\\xaa\\xbf\\x14\\xfc\\xa4\\x9fue\\x16L\\x98\\xf7\\x1d\\xfd\\xaf\\xf7\\xba@\\xcch$\\xb1\\xab:O\\xc6K\\xe7vP\\x85S\\xc62\\xb7#GGx\\xe6\\xb6\\xec\\x0b\\xcd\\xbc\\x08o\\xec\\xaf\\xde3]\\x9c,\\x1d\\xd7_\\xa1\\x16\\xaeb\\xccU\\x02\\xad.3\\xdbgq\\x88\\xf3C#\\xadTn\\x8c\\x08\\x9f%:\\xa3\\xdf\\x81\\xfb\\n\\xcc\\xdc\\xd5\\xa9\\xea\\xd3_\\xa3W\\xd5\\x88\\xcd^\\x9e\\x9b\\xb0\\x12\\x99\\xb8h\\xaf>p\\x80D\\xf7+i\\xb05\\xdeG\\xd2\\x0b\\xe8,d\\xa7\\xe3\\x10-\\xcf\\xf4o\\x19%\\x1c\\x91\\xf4\\xce+\\x19\\xa5\\xd5\\xeb\\xfb\\xef\\xdd\\xedN5\\xa8\\xf6B}\\xd7\\x86iy\\\"~(\\xce\\x14\\xcb\\x8aC\\xa5\\xae\\x8b ,\\xc5]\\xb9\\xefQ\\x88\\xadS\\xffX\\xa3\\x1d(%\\x94\\xbb\\xe3\\xa1.`\\x9a\\x8d\\x94\\x8a\\x07\\x0f\\xd4\\xed\\x8d\\xce\\xd1B\\xb3\\xcc\\x04S6\\x92y\\x1cUrq\\xd5\\x9d\\xb6Y\\xe8v\\x14\\xddq\\x0d\\xc7\\xa8Gv\\x99\\x8ax\\xea\\xb8\\xf0\\xbd(Z\\x12/\\xb4Q\\x94!E\\xb8e,\\xc0LA\\xe8\\x15\\xfd\\x10c\\x96\\xf4\\xbcG\\x07N7HI\\xec\\xa5\\x91>\\x90\\xe3\\xb1\\xde}|O\\xb9\\xcd\\xc5\\xf6\\xe8\\xa0\\xba\\xa3=\\xfd\\xd6M\\xf4\\xead_\\xbf\\xff\\xe7\\xbc\\xcdj\\xe5\\xcb*^mt\\xacV\\x0f\\xcb\\x8b\\x878\\x8cj\\x9e\\xcb\\x87Q\\xf5)\\x1e\\xe64\\xf1\\x17\\xdf\\x1bO\\xf2\\xe5\\xa3\\xfa\\xb6\\x9b\\xa8\\x10K\\x8d\\x1e\\x94\\x8d\\xa6\\xa4\\x17\\xb5\\xa6$\\x0c\\xb2T(\\xe6\\x13\\xa6\\x98\\xf7\\xed3\\xa4A\\x9e}\\xc6\\x83#\\x02\\x8f\\x16\\x8eh\\x8e\\x0bG!\\x11\\x0b\\xf6\\xec\\xe4q\\xf2\\xca\\x95\\x1bb1\\xe0\t\\xe8\\xcc$\\xee\\xa1S!\\xde\\xa0\\xe1\\xbb\\x93y{\\xda\\x97P\\xc4\\xe9\\xa7$\\x85a\\x11\\xbf\\xb9\\xcdo\\xeb\\xd1\\xf3\\xb9}S\\x928\\xfa\\x0e&+\\x1bA\\x8a\\x17\\xd1o\\x0c\\xd2\\x10;\\xd5\\xd1V\\x1b\\xa4\\xf0r\\xed\\xa5N\\x95B\\x8c\\\\R\\xb1&t\\xe0\\x86\\xf9\\xf2\\xa5Z\\x07J\\xf1\\xe1#5$\\x0cU\\xa0*\\xe4\\x06\\xb3\\x05~\\xc7\\\\\\x08\\xe7|\\xa9\\x98\\x91A\\xb5M\\xd8\\xef\\xb0\\xbb\\xf1\\xd48\\x178\\x0f\\xe7\\xe8\\xe5\\xfa\\x8e_Ge~4\\x94`\\x8a\\xf9\\xa1\\x07\\xe4\\x0b\\x18\\xc19\\x06\\x16\\xb3\\x8b\\xc9i]tgQHN\\x1c\\xb4\\xbf\\x9f\\xc1\\xa9\\x10\\xe2\\x983\\xf0\\x05\\xd3\\x98p7\\xf6\\xfc\\x17\\xe5\\xdf\\xf6\\\"\\xd7\\xa6\\\\\\xbb0\\xb3opg,\\xf0\\xae\\x15\\x9f\\xe6\\xebj\\xa3\\xed\\xb6!a\\x16]9Mv\\xa0\\xc2\\xdbs^\\x83\\x0d8\\x03\\xf2\\xda\\xebF\\x8f\\xe3uQoW\\xc1\\x89k\\x8e\\x10<K\\x1e}\\xc2\\x9d\\x92Fp\\xdd\\xf5\\x17^\\xfc<\\x9a\\x91g\\xa9\\xdds\\x1cx:\\x82\\xfd\\xfd\\xc1\\xf1\\x01:,\\xc1\\x93\\x11\\xec\\x1f\\xec\\xf6\\x8f\\xb1\\xfc5\\x06\\x9c\\x1c\\xb7\\xdb\\xe1\\x94\\xbb3(\\xd3y\\xcd\\xddG\\xae\\x8dSxUL\\xe1\\x15\\x9f\\xc2v\\xdb\\x90\\x08\\x9d\\x0e\\xb9)w\\xad\\x84N\\x94\\x07^\\xaa\\x08\\x97\\xcf^fK{\\xa72\\x81\\xf6\\xa5\\xa3\\xdfP\\xdaa\\xf2\\xd9\\x14\\xb2\\xdd\\xe6\\xf8\\xa2\\x95\\x07XW\\x16%\\xdd\\x9d\\x0b7\\xc5\\x0dQL\\x0f\\x92\\xbfy\\x0f\\xbe^1R\\x1c\\x1dr#\\xc5\\xcd\\xea\\\"Zr\\x8b\\xc4\\xd1\\x03X$*'\\x9c\\xdc\\x8cSa\\xf1\\xd8lI\\x0f\\xdbd\\xda\\xd1\\xca]*\\x8b\\xd1\\xdeBa\\xa3\\x94\\x02/\\x94\\xdf\\xa3l\\x89\\x15\\xb1\\xad\\x94$)\\xef^\\xd5\\xa7So]\\x14\\xde\\x8dU\\xcf\\xa7\\xfb\\xd8\\x10\\xe52\\xadx\\\\\\x1aE.\\x92\\xb1<\\xde\\xea\\xf34\\xfa\\xbe0nb\\x11]\t\\xd6\\xe97\\xde\\xe5\\xf4\\xe1\\x84F\\xd9\\xd4\\xa1\\xb7p\\x08\\xdc\\xab\\x1e\\x01\\xfcz{\\xc4|SC\\xc3r3\\xc3\\xc5Zc\\x8fPe>\\xbfz7\\xa4\\x82]#\\x05\\xbb*\\xc7\\x92\\x1c\\xa9\\xb6\\xc0\\xa2\\xd8vx0\\xdb:\\x9bt\\xd5\\xd8\\x0c|\tf\\x8c\\x07\\xd8\\xb3\\xa2\\xfbn\\x8d\\xccW\\x89\\xb0\\x1b3\\n8\\x1b\\xa7,\\xcb\\x1f\\xcb\\x9e<=q\\xa0\\xdd\\x8e\\xb5\\xd4\\x0b\\x8b\\x8e\\x80\\x17\\x9d\\x8a\\x9c\\xab\\xf6\\x9a\\xa9]\\xac\\xef~\\x17\\x03\\xab\\xb9\\xe0u/\\x13.:\\xd5\\x1fI\\x0bo\tV\\x13\\xd3\\xb5\\x10\\x17<&.\\xe2\\x93~\\xf5\\xb4Zry\\x97\\x83\\xd8F\\xb52/J\\xa4J\\xc4\\x08}<xN'\\x83\\x040\\xc7\\x10H\\xe1p\\x0d\\x17F\\x83\\xd2!\\xb4|\\x96\\x0f6\\xb9\\x1b\\xab\\x11\\x9f+\\x9dM\\x1f\\xac\\xb3\\x19\\xde*G;\\x10\\xce\\xbeoK\\x11-\\xb8\\x16Mb\\xb5\\x98\\xe5\\xd1*|\\x08i\\x91\\xb9>y\\xfa\\xf9\\xf9\\x8c\\xb00\\x94A\\x14\\x9e\\x9f\\x0f\\xc1\\xc3\\xd0\\xa2D\\xe7\\xccw\\x1ez+R\\x94\\xb9\\xb2\\xab\\x0e\\xd0\\xef\\xcb\\xea\\x91\\xb9\\x1dT\\x9b\\x9cG1}\\xbd\\x1e\\xcb\\xf8\\xa0\\x17\\xcc\\x0e\\x86\\x7f\\x86\\xec\\xcf\\x08\\x02;'\\xe8\\x8aR\\xa4\\xf4\\xfb-\\xb9\\xf9x\\x93\\xc6\\x0c\\x8e\\xe3\\xb8\\xf9\\x08\\x04!$(\\xd3.\\xcc:\\xfc\\xc5\\x98L\\x99\\xa7s\\xce\\xc1Hm\\xd7\\x16^\\xf2\\x92c\\x89\\x98\\xcb\\x98YA\\xa4'\\xcc\\x9f\\xcf\\x92 J\\xaa\\xf4 y\\x8e\\xaa\\xaa\\xb3\\xb5H\\xf6R\\xa9N-\\xc0kU\\x1f\\xa8\\x95s6V\\xad\\x92\\x83EE\\xfc\\xa7\\xf2\\xfa\\x8a\\x92\\xc3\\xca\\xbb\\x08\\xe3/\\xe2w\\xe5-\\x9e\\x13\\xa9\\xf2\\x9e\\xc8\\x9a\\xc4\\xde\\xe4\\xbf\\x94w\\x13\\xe2\\xc5J\\x93\\x0c\\xc8\\xdfd?\\xd4\\x17\\xd7\\xc4\\x0fHR}\\x93A\\xc5\\xab\\xec\\x97\\xe6\\xdde\\x90*o.\\x834\\x7fo\\x19\\xa4\\xca[\\x92\\x08PyWz\\xc2k\\x90 \\x9azrAA\\xa9'\\x7f\\x92\\xd7\\x93C\\x94z\\xb20\\xf1\\xa35E\\x83\\xea,HOx=\\x12\\xa4\\xe4E\\x82$F\\xa2J\\xd5\\x9d/\\x119\\xdaFU{.\\xba'\\xda\\xaf\\xb5 \\xcb\\xba_A\\x95*;\\xae\\xd2\\xb1\\xc0\\xdc1\\xb9\\xe5MZ\\x15\\xe4\\xdb\\xc6\\xec\\xedL\\xef\\xd1\\xad\\x90Qh\\x83\\xe5(\\x0e\\xa1\\xa5\\xdfx\\xa4x=\\xdf\\xb4\\xd5\\xa4\\x92M\\x0b\\xd4Q.\\xcb\\xa3\\x0cddr\\x9b\\xa6U\\\\>\\xe1\\xed\\xe8\\xb5\\xa3\\\\\\xee\\xae\\xe4\\x86\\xc7\\xe0\\x189\\xc6\\xd9r\\xa7\\xf4\\xbd\\xca\\x11\\x11{\\xe5[\\xae\\x98S\\x8b\\xbd\\x105\\xbf\\x10\\x94\\xe2\\xf0\\x97\\x04f}\\x15\\xe5\\x99\\xd0UQH\\xe5\\xf7\\x89\\xa5%\\xe9g\\x8f{[G1b!\\xcfP\\xdf\\xa0\\x93\\x1cR\\x8c\\xea\\x9f\\xcb\\x0d\\xfac\\x90\\xd8\\x1c\\xc52\\xdc}4\\x9b\\xf5:?\\n\\xb1\\xab>Z4\\xb9\\xbd\\xa5\\xcf\\xe54\\x05\\xac\\xecY^\\x16#\\x98V\\xb3\\x18<z\\x04\\xe5\\\"\\xe3r\\xa1\\xf2\\xca?\\xc4\\x90\\xc5\\x02*\\x1eQ\\xa2\\xa9\\n\\x9b\\xc4\\xa4\\x17\\xa8\\x80\\xd8d\\x1b\\xe7\\xfa\\xd7\\xf2F\\xb6\\x9d\\xadQ\\xa5\\xe2+\\xe7\\xe0\\xf4\\x04\\x7f\\xb93\\x10\\xda\\xfd\\xe3\\xbd;\\x0f\\xc5\\x1c2\\xe8\\xbf\\xaaA\\x96\\x92\\x9do7\\xc0D\\x89%\\x8e\\x1b\\x83\\x19\\x8bTO\\x10\\x11\\x9cC:R\\xb0\\xbe\\xd1\\x97*s\\xe2<\\x9c\\xbf\\xec\\x95\\x1c\\x02f\\xdb\\xa1j\\xc4\\xe9\\xfa\\xe5=\\xd5l\\x96\\x84\\xa4\\xda\\xcb\\xb3x\\xd3\\xa8\\x92\\xef\\x8e\\x1e\\x89\\x88\\xd6\\x06\\x84\\xa5c\\x1b\\xf3nT\\x18\\xa7[J\\x8d\\xdaM\\x08\\xed\\x87M\\xf0\\xcb\\x08\\xdfI\\x08\\xa6\t\\xe3w\\xdb\\x98\\x05P\\xfc`%\\xd8\\x0f\\xbcq\\xc6s\\x1d\\xb1B\\\"\\xef\\x11-\\xc3\\xeeLavn\\xec'o\\x80\\xb0\\xf0\\x12\\xe4a(\\xd6\\x16\\x0b\\x93+\\x12\\x84\\xbaU=\\xc4J\\xe9\\xfe\\xad\\xff\\xd6*?\\xe7\\x87\\xa2Qqe\\x18\\xd5\\xb2S\\xe7\\x04:\\x9d\\x18\\x93\\xf9\\xb4G`\\xfd7\\xa8V@m\\xb4\\x16\\x13\\xc8\\x8fo\\xd4\\x82\\x19\\xca\\xb7%\\xb5\\xce~\\xb9\\xb2%,\\x86G\\xd8\\x9d\\xc1\\x98\\xa9\\xef\\xd1\\xaf\\x8b\\x0e4\\x10\\x19\\x9e\\xd8@\\xc9\\xb8\\xdd\\x8ek\\xa2\\xfa(\\xe8\\xba\t\\x9f\\xa8d\\x92\\x7f\\xe0\\xeb\\x0b\\xfdA\\xf5&`PU\\xf15L\\xb4I|\\xd4\\x19Z\\xd1\\\"\\xa5\\xc2C<\\xcd\\x9b\\x03\\xbc\\x186t\\xfdi\\x1e$\\x0fV}w\\xc4'BwQ\\xe3\\xe3\\xcc\\xb8I\\xc4'\\xc8\\x13oe\\xf9\\x8e\\x89\\xc6\\x19^\\\\\\xa0\\xa32\\xbfE\\x9b\\xa6%M\\x03\\x00\\x81\\x8f'\\x10\\xc0\\x13\\xc8\\xa0\\x03\\xfd\\x93\\xba\\xc2\\xc0+\\xe6\\xa1\\xf4PE\\xc4\\xf9C\\x84\\xc6\\xcet\\x1cL\\x1d)\\xd8\\xaa\\xb1{\\xe2\\xc3\\xba\\xd8\\x9f\\xa2\t\\xa5\\xdd\\x0e\\x8c\\x85U\\x0b\\xa4\\xf8\\xf0\\xb6\\x1a\\xfa\\x04\\xa7\\\"\\x13\\x1doNL\\x9f\\xb6^}k\\xd2\\xa8\\x94\\xe7\\x9a\\xbb\\xe4I\t\\x8d\\x8c\\xee\\x96\\x14\\x8d\\\"\\xa6\\xec\\xadA#\\xaf\\x1e\\x8dP\\x9b\\xb8!\\x1a%\\x0ex,{C\\xbbmH[\\xde\\x90\\xd3\\x00\\x91\\x06\\xeb\\xb8\\xbd\\xe5_F0\\xae]h\\xdd\\xce,?7>\\x9e\\xf2\\x8b{\\xb4\\x1d~'\\x8ecj\\x87\\x87\\xfe\\xb0\\xa3b\\xd1=\\\\\\xf4\\x80\\xa2=\\xf3\\x93\\xc5X&\\xe3\\x1e\\xf7q\\xc7\\x07\\xf4E\\x17\\xbcq\\x9f\\x03\\xbf\\xc5\\xae\\xe7}\\xefO\\xc7\\x11\\xe2xvr\\xaf~;\\xae\\xa8\\x8c-\\xe0\\x1d\\xf0\\x97k8\\xb5\\x99\\x16\\xd5\\xa1n\\x17\\x1b\\x83\\x07\\x8f\\xa9\\xc1\\xe4\\xac\\x1e\\x93=\\xee^^\\x8f\\xebyn>c)\\x1f\\xd9\\xc1\\x06{\\x81\\x0b[\\x19\\xc5.\\xf3f\\xa0\\xaf`\\x1a\\xc0q\\xb2\t=\\x8d$,\\xdd\\x9c\\x9eJ\\xd2\\x7f\\x86\\xe8\\xe0\\x8d#\\x89\\x9e\\xd6\\x93R\\x9f!J\\xc6\\xe24\\xb1\\xbe\\xf6\\xa7\\xe3\\x00\\x91.\\xba\\x03a}\\x90\\x9e\\xe5\\x17q\\xf3\\xce\\xd0\\xf7\\x85\\xdf~\\xe0\\\"B\\xd3g%\\xd0\t\\xb4\\xb0\\x18\\xb7\\x7f?z\\x04\\xbe n\\x0e2\\\\\\xbf\\xbb\\x8e\\xd6\\xb6\\xe3\\xb2E\\xe1\\xbf\\x9c\\x0dj\\xdeb\\xbbH\\xd7\\x016\\xd9'\\x9b\\x86_\\xe1r\\x8a,\\x97\\xa8\\xd5\\x7fG\\xff\\xeb\\x1eRY\\xc5\\xf0\\x7f\\xcco'\\xb2\\x90\\xb4]\\x0ci\\xc7\\x83:\\xdf\\xe7B\\xe2VB\\x9c\\xdc\\xf66G9\\xb4w\\xa7\\xf6W\\xef\\x91P\\xa6\\xf6+\\xef\\x15\\xbb\\x83\\x98\\x16I\\x1e\\xe0\\xe1fk\\x03\\xa9\\xbf5z\\x18=XYt\\xbe\\xe3\\xb4n)\\x1bW\\x89\\xe4C\\x88\\xc5\\x12\\xb9 .:\\xc2\\x19\\xbc\\xe0\\xca\\xc2[PHi\\xe18\\xd8h\\xd7\\x95\\x85\\xac\\xa6\\xe0\\xa1,_6K\\xac\\xe3B\\xc8~\\xb5\\xdb\\xa9\\xf3\\xed\\xf0BIc\\x85\\xf9\\xa3\\x90\\xf1\\xb7p\\xa0\\xec\\x0c_&Va\\xe9\\xb7\\x86*<\\x0c\\xd1\\xd1\\xc8+\\xdf\\x02\\xbdy\\xc8S\\xa0^\\xc9\\xa0G\\xf5\\xd0(\\x8a\\x9a\\xe48\\xcd|hJF\\xf7<F\\x1a#_\\xe5\\x1a\\x81\\\\tb~\\xd2L\\x88H\\x1b\\x85\\x88Z6MJl\\xba\\xe1@\\xb6\\x91\\xccP+Z6\\xf4\\xa3\\xd8\\xde\\xbc\\x19\\xe3!\\xacq\\xa7\\x1b\\x8fS\\xf9tr\\xff\\xa3\\x1e\\xbbq\\x13\\x9e\\x80'Mg.\\x81gEO\\x13.\\x81{B\\x02\\xa7\\xcf\\x12I\\x02\\xf7\\xc4\\xc9!\\xd9\\xe0\\xe4Pwj0\\x9c\\x18\\xf0\\xb4\\x90`\\xa3\\xfd)\\x86\\xf8h\\xb7\\xeb\\x13\\xb1w\\xee>\\n\\xc7\\x15\\xcd\\xe09\\x82\\xb8\\x10\\xa1\\x7f\\x01ECM\\xd8\\xe4\\x0dh\\xe1F\\x18\\xce\\x8e\\xb9L\\xcag\\x83\\xa5d\\xc9G5\\x00\\xe1\\xc7\\xbb;\\xe3<;C\\xf9x\\x86j\\x16M\\x136#\\x9e\\xcb\\xf3~\\xf3S\\x1aC\\xfel\\x0b\\xe4\\xe7\\xbdi\\xd5\\xf6\\xa6\\xe1\\xc8@\\xe4\\xe6=U\\x90\\xf54\\\"\\xb2W\\x16\\x91\\x93\\xb2\\x88\\x9c\\xe4\\\"\\xb2W\\xfc\\xd2\\x88\\xc8j\\xcd\\xc6\\x9er\\x89\\x98\\xae\\xd4\\x86\\xd3s\\x0f\\x96e&\\xe4p\\xc7\\xed\\xe5\\xcaD\\\\\\xed\\xeaw\\xf4\\xbf\\x1e\\x86\\x07j\\xef;\\x85v\\xff\\xb8\\n\\x8f8\\xfcH\\x7f\\xbfM\t$..\\xcfT\\xef\\xe0$\\xa6\\x8bo\\xe5b\\xdb\\x05\\x0870mL\\x15\\xc1\\x93\\x184\\\\x\\xe7J\\xd3\\xa5\\x0bk\\x17\\xfd+\\xe7\\xdcAQ\\xa5/u\\x0f\\xaf\\xd0\\xba!\\xc2\\xce\\xa9\\xcfo\\xf0\\xb9\\x08\\xc1X\\xc6\\xe8\\xe2=\\xf4\\x08\\xaf\\x97\\xe5\\x84\\xa4QD\\x17\\xd6\\xe2V\\x8c\\x91\\xa1DJ\\x07\\xbcVj\\xd4\\xd4\\xebC\\xad\\x80\\x88\\xd7\\x1737\\xbb$\\x17\\x9f{.t\\xfa\\x945\\\\\\xf1\\xcb'\\xcb<&\\xc2\\x9a6\\xab\\xda\\x9c6rX\\x8eli\\x02\\xe1\\xaa\\xc6o\\xf9}e\\xfa\\xa2P\\x04\\xe9m\\x9e\\xbb\\xda\\xdb\\xed\\xda\\xfb\\x93\\x90\\xbb\\xbbI\\x11\\n\\xb4s&;\\xee\\x8d`\\xbc\\xc0\\x88\\x15\\xa1p\\xe2c\\xd4=t\\x98\\x0d\\x0e\\xa7V#\\xbd\\x89O\\xcc\\x18\\x12\\xdd\\x95KF'\\xd6LZ^b\\x96|\\xe1\\x92\\xdf\\xe0D#>(\\x7f\\x98\\xe9\\xa8.R\\xec\\x8c'4@~=c\\xc17\\x8a\\x80\\xc8\\xb8\\xb7X4\\xd8\\x88\\xf1+\\x1e\\xcb8\\xc6T\\nQ\\x98\\x92\\xeb\\x14\\xf30\\xc5\\x97\\x89\\x93\\xfbo\\xc6,yD\\xc00%*P\\x88\\xae\\x89)Et#id\\x99\\xbe\\xf9\\xdej\\x8a\\xc2q\\xc5\\xeeEr\\x9fp\\xe3\\xa6\\x08\\xe9\\xd0\\xd3rV-\\x1e\\xfeCT\\x0f\\xa9\\x19a\\x84\\xfc\\xccD\\x8a\\xb4\\x1b\\xcc\\xcc\\x9a?\\x1e\t\\x13jS\\xf9\\xd3\\x82\\x9c\\xdd\\xd1\\xdaXO\\x16\\xe3\\xa4\\x08\\xda\\xcb~\\x04\\x85MF\\xe9<F\\xb7\\xe1\\xf1\\x10m:@a\\xd9\\xb51\\x9c\\xb8=c\\x8ass'\\x80\\xf9\\xb3\\xd1\\xb5\\x1d\\xb2\\x1d_[\\x94eu\\xaeQ\\xf5\\x15(\\x95\\x14(\\x95\\xb8\\xfa\\xdd\\x15\\xf0\\xbc\\x06A~%\\xd9\\xa9)\\xc9\\xd4p\\xd5\\xbb\\xf1\\xf8\\xfaf\\xb7\\x90\\xe5\\x8fTY\\xdap\\xd1\\x1e\\xd8\\xb8R\\x16'\\xdc \\xb51\\x15\\xaeg\\xfb\\xfc2\\xb3\\x1a\\xfcEw\\xd8f\\xacXG\\x05R.Ks=+\\xef\\xea\\x8d\\xa8\\x16\\xf3;u\\xfd\\x0b\\xb6\\xe5B\\xb6\\x013)\\x00\\xf9MC\\xf4\\x99\\xf7.\\xa7\\xb2\\xc9\\x06T\\x16w\\x0e'\\x85[\\x90\\xc9\\xae\\x7fQ\\xa1\\x94]\\xff\\xc2)\\x1c\\xa0\\xe9\\xcf\\x1c\\xd7\\xd9\\x8f\\xb0\\x1bP\\x96\\xc9c\\xef 1\\x85a\\x81\\xd4\\x9a\\xdb\\xe3l\\x14y,\\xebfv\\xa1\\x11\\xd7u\\xc4r\\x81\\xc4\\xf2\\xf6\\x16\te\\xce9grL\\xed2\te@\\x89\\x8a\\x8a42H0Q\\xddb\\xea\\xbd\\x08x\\xddL\\xe5h\\x17\\xd4\\xfe\\xcbrL\\xde\\x1f\\xacTt'\\xa0\\x18\\xd9\\xbc;8\\x9d\\xe1=O\\xf3\\x9e\\xab\\xa8\\xab\\x8c%\\xff\\xf90\\xc2\\xac\\\"\\xb42av\\xbf\\xa7\\xcf\\xb3\\xb8\\xdf\\xab\\xde\\xe1\\xce8\\xbc*\\xe42av\\xd0\\xab*\\x8c\\x12\\x83\\x90\\xbb\\xc1\\x8d\\xa1\\xc0\\xb6\\xd2\\x05\\xc1x\\xfd\\xf4\\xef\\x90'A\\xc6{\\xf5QH\\xc4\\xdf\\x1c\\xeeT\\xc5Z\\x91\\xc6p\\x13\\xc1\\x16\\x8a\\x0b7\\xca\\xaa\\x04u\\x0f\\x97\\xa0\\xb9i\\x04\\xc2U\\xa6'\\xdc\\xfeS\\xbe\\xef*\\x02\\xad0P\\xa5\\x18\\x1d\\x95\\x92\\x9f\\x16\\xa6Y\\xd2_\\x0bylA\\x1b\\x83=@\\x1b\\xac\\xc7\\xc2\\xcd\\xf3\\xca[\\x063\\x10\\x83]E3Ru\\xf8\\xd4\\x92\\xa4\\x98\\xf1u\\xd3\\x9e\\xf0\\x0d\\xb9yqX\\x9e\\x9d\\x15\\xaa\\xa9\\x80\\x85W\\xcd\\xb8\\xcb\\x94\\x86Q\\xc5\\xfa\\xc3i\\xc8^\\xec\\xbb\\xb0\\xe4U\\xa8ehW\\xe6\\x8d1\\x99\\xe4\\xd2\\x88\\xb9c\\x9d\\xbf\\x8d\\xf8\\xd0!\\xf8\\x9als\\x9f2\\x99\\x9a\\x00\\xa1\\xbf\\x87\\xf0\\x11I\\x89\\x9f\\x92\\x19da\\x14\\xcfHLf@\\x11\\xf1\\x96b\\x1d<\\xca\\x93rc\\xf2\\x9e\\x8cv\\xce\\x85w\\x8b\\xc0_@\\x10\\x02\\xce\\xcc\\xca{K\\x12`\\xa9\\xc7`\\x86\\xb5a\\xf6\\xdb9$\\x99\\xef\\x93$\\xd9\\x99{\\xc12\\x8b\t\\x04\\xabu\\x94$\\xc1\\xc5\\x92\\x80\\xfdnABZ\\xc5c\\x19\\xbb\\x1f\\xe3\\xc2:\\x93\\xf0y\\x14&\\xc1\\x8c\\xc4\\x90F\\x10\\x93\\xe5\\x0dD!<\\xa6\\xddz\\x0cQ\\xcc\\xdeae\\xd1)\\x90x\\xb3\\xae)\\x8f\\x0d\\xe06\\xa7$8\\xb7\\x97\\xc5\\xa8\\x80\\xc2\\xb5H\\xb5\\\"G\\\\#}\\xeaE\\x9cu\\x93\\x98)>>\\xbf3\\x86X\\xa1\\xf4\\x8a\\xffX\\xe2\\x8f\\x9cq\\xc5\\xdb\\xf5e\\x81\\x0eZZ\\x94\\xc6\\x1b 6-\\xc0\\x88\\x8e\\xc3\\xa9\\x0es*^8\\x90u\\xe9\\xcf\\x0dD\\xa1\\xc4\\x9esa\\x85\\x8b\\x14Z\t\\xa5qJ\\x12{\\xad\\xe3\\x0fj\\xefs\\x1a\\xc2\\xa8\\xa2\\xe8\\xaf\\xf9x\\xa6\\xbd`\\x9b\\xe1M\\xfb\\x0d6\\xc5g$\\x8d\\x03rE\\n\\x8a3\\x8b\\x08#D\\xc1j\\xbd$T(\\x12h(\\x90\\xf8\\xb1\\x96*\\x89\\x0fk\\xda\\x9e\\xbb\\xa0\\x1bqe|9\\xb5\\xff\\xafq\\x9c\\xe5\\xcdj\\x1aoM\\xdf\\xf8\\xfb\\x0f\\xd6\\xbd\\xbc?\\xdb\\xf5P\\xac\\x08\\xe6n\\xe0oh\\xd1\\xb1\\x04)\\x04\\xaf\\xaa\\x8a\\x81\\x85\\xca3q\\x1a\\x93\\x8a\\x01\\xf9`\\xbb\\xad\\x0f\\xeaW\\xe3\\xe7D\\x19\\xc0R\\xfb\\x12\\x88\\x03\\xfe\\xa64I\\x7f\\x8e\\xc7\\xc1\\xe8\\xe9\\x8e\\xbeM\\xcf\\x8e\\x1c\\x93\\x8c\\x1f\\xe1\\\\cVF\\x9ct<mD\\x15bS\\xd7\\xc7D\\x0e\\x1c&\\x7f\\xde\\xd3\\x9a2{\\xf3e\\xdbP\\xda\\x97\\x0e\\xd8Kv\\\"\\xc1\\x95\\xaa\\x8d\\xc1X\\x9b\\x18-@*Y\\xa3\\x1f`1\\x04M+\\xca\\x1b\\x0e\\xea\\x8f\\x0d\\xe3X\\x97\\xbb\\xc80\\x13[\\x9d\\x1c4\\x81Pe\\x89\\xb1$[\\xca\\xe2\\xa2\\xe1L\\x11ou\\xa6\\xd0\\xba\\xb8|\\xab\\xa7\\x88\\xaaj\\x9a+\t\\xbe%;q\\x9d\\xe1VXk\\x8a\\xf4q\\xf5\\xd3F\\xd8\\xf9\\xb8z1\\xbf|\\xf9\\xfc\\xfe\\x13\\xa4\\x89|%NY\\x87M\\x9e!&G\\x15\\x16\\xf7\\xfdA\\xd71\\xb4\\xfb\\xfd\\xed\\xb3\\xe8\\xd7\\x06\\xe8gWq\\xec\\xe2\\xaa\\x1f\\xc6s\\x93.\\xfeI\\xb9\\xc4j\\xb4\\xd6J\\xf5\\xda\\xc3\\xd0\\xf7\\xbd$!\\xb3\\\\\\x11#e\\x83f\\x97h\\x829\\x99U\\xb3\\x19=\\xec\\xfc\\xed\\xf7t\\xa7\\xe9\\x9d\\xf1$\\x9c\\xc4\\x93l\\xd0\\x1b\\x1c\\xe1\\xff\\xc7\\xd3\\x9d\\xcbm\\xa7Y\\xa0?]u-\\xee\\xe7\\x06\\x8b\\xa7\\xd0\\xef\\xf5@\\xc4\\x9f\\xe3\\x96\\\"\\xbb\\xe7\\xc2\\xf11\\x1e\\x13\\xff\\xcb\\xcf\\xfd\\xb6\\xc5\\xef\\xff\\x13qO\\x9aR\\xdc\\xfa\\xad\\xc2[\\xf9\\xc9\\xb3\\xd7\\xaf\\xbab:o\\xec\\xd4\\xe1\\xd5\\xf7\\xd1\\xb0Q\\xd9F\\x0f;\\xb9\\xff\\xbfANa\\xe7\\x18\\xbf\\x8a\\xc2\\x8e\\x1f\\x91\\xd8g\\xc7\\xb84\\xe2\\x88\\xe8\\xb0\\x9b\\xbc\\xd3o\\xf9\\xc2\\x86\\x96\\xe4l\\x93\\x1f\\xdedL,\\x9a\\x8b\\xba\\xb3 YG\\xaaJE\\x13P\\x93v\\xad\\xe2\\x02\\x11`^\\xf8\\xd4\\xd1\\xe5MG\\x7f\\x92\\\\c\\x83\\xf0<-|\\x8e\\xf2\\x85\\x90\\\"\\x98e)-\\x8c\\xae\\x1b\\x80\\xe2\\xacPH\\x87<Sc\\x05ss\\xcdE\\xce\\xfbE\\xfd\\x0d\\x92P\\x99U\\xd7$\\xc9\\xf3\\xd0\\x9bNw\\xa0\\xabt\\xa5<c\\x15\\xb9l\\xa3\\xd1\\xa6\\xb6f|\\x06\\xb1\\xe6\\xc75\\xaa\\x07\\xc6u\\x83I\\xde\\x80\\xec\\xaa\\xf213(+\\x99\\x12s\\xdf\\x10\\xcfR\\xd94z\\x0b\\xbc\\xaa\\xc8\\x14)\\x94\\xcaO\\x96\\xf9\\x93\\xa0\\x92I{m\\x16\\x9e\\x12Z\\xcf\\xb3\\xcbM7\\xe0\\xc2\\xc5\\x90B.\\xdc\\x94\\xf1\\n\\xf5\\x8d\\x18\\x91\\x079\\xc7\\x02F\\xb0\\x16B\\xe9\\x0cM\\x08\\xf9\\xfeL\\x0c\\xfb3\\xc9\\x7f\\x9c\\x82\\xc5\\xb6\\x0b\\x0c\\x01#\\xc3\\xe4\\xdaFh\\xd3\\xe6\\xf3\\x8ej\\xd1u\\xc1\\xa2\\xab%$}\\x13\\xacH\\x94\\xa5\\xcd\\xa7\\x9e\\\\\\xfd\\x13jU+\\xa9\\xc9\\xdaE\\x9b\\xeafaL\\xe6t\\x00\\xc5/\\x1b\\xb3\\x9dbH9\\xda\\x99G\\x8f\\xc0\\n\\xc9u\\xfa&\\xf0\\xdfZ\\xe8\\x1b$\\xc0\\xb8\\x7fD7)\\x90\\xbe\\xb8}\\xff\\xf9\\x81\\xe5\\xa6\\x1aY\\x98\\xf7\\xff\\xca\\xd4\\xff\\x9bR\\xffo\\xa4\\xfe7\\xd8o*\\xeb\\xa0\\xdd\\xf5\\xa5\\xb1-X\\xaa\\xff\\xdc^JOVl\\x86\\x94\\x99Iu3#\\xbf}\\xa3M\\xa8Hq\\x89|L([\\xa5\\xd5^\\xb1\\xc4\\xa0\\xa3\\xd1H~r{\\xcb3\\xb6\\x170\\xca\\xb4\\xbb\\xbb\\xbb\\xbb0\\x84\\xb9\\xbd\\xb4\\x99#\\xba\\xfc\\x9c\\xb9F\\xf58f\\xdf\\xc0\\x08\\xbez\\xcf\\xa3j\\xf5\\xa1\\x03W\\x0e|\\xc8t\\x9bBQQ\\x9d\\x1c\\xb4x{\\xba)\\xc2\\xc1\\xde\\xde\\x02\\x0e\\x10F\\x12\\x96\\xb8\\x105/\\xbbA\\xd7A?\\xd2\\xac\\x8e\\xa4Y\\xb5\\xa5)tes]\\x89\\x832\\xcf5;p\\x1cf\\x0e\\xf4\\x1df\\x00-\\x9cD\\xb8\\xeb\\x00\\xf7\\x97+m\\xe3\\xcc\\x8e\\xd8Lm\\xa4\\x9c\\xf0]\\xf0%\\xfd\\x04\\xfe\\xd4\\xe97\\xd5\\xa8Oe\\x16T\\x99s=\\x17Z4\\xa1,T\\xd1V\\xcb\\x8a\\x98\\xb3\\x12E\\x02\\x86\\xc1\\x81}\\xb3I\\xc5\\x15DO\\x15,74\\xc60N\\x19\\x7f\\xfe\\xfbA8\\xa0\\x12\\x88\\x99\\x1f0\\xfb\\xbb[\\xcb\\xccT(\\xe3\\xee\\x1b\\x94\\x1d<\\x85\\xa0.\\xb2\\x08\\xb9\\xf6\t\\x99%\\xb0\\xf2\\xae\\x83U\\xb6\\x82\\xdcj\\x91\\xb2Y\\xf9q\\x85\\x1a\\x19\\xf4\\xf7\\x0e\\xf7\\x8ev\\x0f\\xf6\\x0e\\xef^\\xdf\\x06\\xd3\\xa9\\xb7\\x8a\\x0e\\xf6\\x1cY&^y\\xd7\\x1b\\xb2c\\x9eCJ\\xc3\\x8b\\xe3\\x9c\\x17{<\\x06<\\xf7%\\xdfBP\\xaeg\\xc4\\x19s\\xb0\\xa9G|9\\xb6/\\x8a\\x08\\xddE\\x90\\x8a\\xae5\\xbb\\x0b\\\\\\x16MiX\\x10\\x1d\\xbd\\x88\\x89\\xa0\\x90\\x03|\\xc8\\x83!<\\x04\\xb24,n\\x8d\\xe99jNv\\xb5\\xed\\x1e\\xbb*\\xd2?k\\xee=`\\xcaH\\x15\\xec\\x15\\xda/\\xf5aR\\xf7\\xd0\\xc78\\x90\\xda}\\xc8QM\\x17\\xe7o\\x11lt\\x1f\\xe7\\x8a_\\x8fI\\xc6q\\x8d#\\xef\\x1c]\\xd3}=\\xb7\\xa3$\\xc7\\x1b\\xcf\\xa7\\xcc\\xcd-a\\xf6\\xc6\\xb9\\x0b\\xad\\xda\\xc46\\xf4\\xadv;\\x84'R\\x18=}\\xfd \\xa9\\x08\\xd19;\\xa3\\xdc\\xd3\\x8e\\x1d\\x17b\\xed\\x0bf\\xe7p\\xce\\x80=v\\xff\\x91\\x07R1\\x8f\\x9a]!m\\xf1\\xdcU\\x1e\\xba\\xa3;'\\x0e\\xba\\x82\\x05a\\xb6\\x95w~}\\x9a\\x0f\\xf1\\x11\\x8a\\xa2\\xc4\\xa8\\x1e\\xa7\\xc3 \\xb24\\xe1\\x8dIaPMP\\xb4\\xe8tB1<R\\xeb\\xf1\\x8e\\xd6\\xff0?\\x92\\xfb<nu\\x14\\xcc\\xd0\\xfb\\xb1\\xce\\x05}\\xfb\\xc9\\x01\\xed\\xd2\\xdc\\xd31\\x9d_\\xd2\\xe9\\xbb\\xa5\\x0dV\\xdaPlXj\\xc3\\xdf\\xd1\\xffz\\x10*\\xa5\\x84\\xda\\x0d\\xf4g\\xce\\xa8\\x9exe\\xe6H\\xbbE\\xabA7&\\xf3\\xe7Q\\x16\\xa6$\\xde\\x90s\\xa9l\\xcbC\\x8f\\x15i\\xf6$V\\x15\\x18XU\\xb0\\x19\\xabJ6P?x<\\xb3\\x1dm\\xa3\\x12\\x84\\xb9\\xca\\x8e\\x1a\\xed\\x02\\xed\\xb6W5\\xa3\\xe8\\x8eP\\x8d\\xf5\\xe4\\xfb\\xcbXY\\xce\\xee\\x92\\x06\\xe9\\x17\\x93\\x18\\xaa\\xd6\\xa9\\xac\\xe4\\xf9m\\xea\\xc1gd>\\x84x\\xb3\\x03I\\x1elH\\xf2\\x7f\\xd5\\xefa\\xe9\\\"\\x1asj*\\xee\\x84y\\xccO\\xb1\\xd5\\xe9x\\xe2\\xe4R:\\xac\\xb4z\\x98\\x9fP{]L\\xc3\\xbf.I\\xfa\\x19G\\xd0\\x1f\\xd38z\\xc5 <\\x16LV\\xb3\\xfd\\xef\\xa7\\xd4\\x92\\xd2\\x0f\\xe96X\\xe8B%DsXD\\xecm\\xf1\\x88\\xbd\\x04\\x86\\\"\\xa5b#s@\\xaf\\xb2\\xee\\xf3\\xb33\\xba\\x1c\\xf8\\xa5K\\x12\\xdf[\\x17\\xfaT\\x19\\xa8N\\x95`,\\xcd,H\\xc4dP2z\\x19\\xbc\\xd8\\xfef\\xd1\\xec\\xdf\\x84\\x98\\xfcl\\x16\\xc4$\\x01\\xaf\\x08}g\\xf4X*\\xc5\\xbb\\x96\\x82L\\xf1\\x10La\\x9ea\\x81\\x12\\xcfN\\x9f\\x1d\\x83)ya\\xa2t)[\\xc2\t\\xb4\\xdb\\x01<\\x81\\xf8\\xc4\\xc1\\x19\\xe6\\xf9{\\xe4B\\x01\\xde{\\x8c\\xa0Mg\\xff\\xe9\\x08\\xfa(\\x05S\\x01d\\xb7\\x8ftgp\\x08\\\"\\x03!N@\\xc0\\n<\\x1d\\xc1\\xdeQ^v\\xff\\x10\\xcb\\xd6=\\x7f\\xf4\\x08\\xf6\\xf6i\\x81\\x8c\\x12\\xc6\\xc9\\x04\\x83F\\x15\\x96\\x89\\xfe\\x01Zr\\x80\\x12K\\x1b\\xfb\\x1a\\xb0*[<t\\xf7\\xde>\\xfdJ\\xd8\\x01\\x82uup\\xc4\\x1f\\x88\\x0e\\x1e\\x17_\\xf5=D\\xe8\\xc1~\\x0e=\\xee\\xe5\\xd0\\xe3\\xc3\\x1c\\xda\\x1f\\x0c\\xf02(\\xce\\x13\\xce\\x11\\xa5\\xe0\\xac\\xcbe \\xce\\x9b\\xf5\\xff\\xfe\\xc5\\x9fY\\xb5\\xfbPuz\\xd78Q\\xc8\\x18\\x8b\\x1a\\x18\\xf6\\x0dO\\xdan\t\\x91Y\\x8a\\xcfJt\\xe5r\\xec\\xeeX\\xd6\\x1b\\xbew\\xf2\\xdb:\\xa1\\xdd\\xef\\xdf'\\xb0\\xa76p=\\xad\\xd8:?'\\xc9\\xa7\\xd1,[\\x12\\xabJ\\xb5y\\x9a 9\\x8d\\x82\\xc3T=\\x98K\\xaf\\xceQ\\xc5x}9I\\xbd\\x94|\\x7f\\x99]\\x06a24l\\xdadM|\\xd33\\xfa\\xf1\\xb0\\xcdd\\x08\\x99Y\\xc8O\\xc8\\x92\\xf8i\\x14'C0\\x04c\\xd2\\xbf\\xcbR/\\x19\\xbb\\x068\\xb6Y\\xe6\\x13Zs\\\"\\xa6\\xc2\\xdc\\x8f\\xbc\\xaf\\xd1F}\\xf5\\xf4}U\\xf1\\xf0;\\xfa_\\xefU\\xf9mn\\x87\\xf6~\\xffX\\x89\\x90\\xcd\\xed\\x0c:\\xbb\\x84o\\xd3'{J\\xa0e\\xfeh\\x7f\\xaf_}\\xe4\\xe5\\x8f\\x06J\\x90i\\xd1\\x87\\xbd]\\xc79\\xf9N\\xfeL\\xe0\\x0e\\xf8z\\xc5O\\xca\\x98C\\x81\\x9f\\x05s8\\xa9\\xa0)\\xe3\\x06_U6\\xa7|+G\\xa3\\x10\\x93b\\xe6\\x05!=\\xb65\\x1c\\xac\\x0bC\\x1d\\xa7eEF$\\x93\\x19\\xbc\\xd8(i\\xd9\\x8fC\\x9d\\x84\\xb9\\xd1\\xbdB\\x99\\x07\\x1e\\xb4X'a\\xb1\\x1c\\x97\\xd5 \\x93\\xdfQ\\xbf\\xd1q/\\x95[B\\x97$\\xfd$\\xf2\\xbd\\xe5s\\xdc\\x04\\x9b\\xc5\\xfa\\xb3{\\x18\\x8c\\xd8\\x8b\\x13\\xf2\\xd3\\xde\\x8a\\xbf\\xea\\xd8\\xb1\\x18\\xfcv^\\x0erC2]|\\xdc\\xe9t&a\\x16/\\x87`-\\xd2t\\x9d\\x0cwv\\xd6$M\\xd2(&\\xdd\\xe4\\x9dwyI\\xe2n\\x10\\xed\\\\\\x0dv\\xc4\\xaf/\\x92(\\xb4&\\xe1,Z\\x9d\\x07\\xb3!X\\x7f\\x85?\\xe8d\\x815\t\\xd11\\xddK\\xa3\\xf8\\x07\\xa5:\\xa3p\\x19\\x84\\xe5\\x1aEAk\\x12F^\\x96.\\x06\\x9f\\x91Y\\x10\\x13?-\\xde\\x1c\\xee\\xec,\\xe9\\xbc-\\xa2$\\x1d\\xee\\x0ez\\xbd\\x1dV\\xb2\\x13\\xf3\\xa2\\xddE\\xbaZZ\\x93\\xf0\\xb1v\\xd0\\x1bQp\\xc9\\xb5c\\xd07hR\\xe3\\x87\\xa9^\\x7f\\xdc\\xdb\\xdf\\xebi\\xb7od\\xc4\\xdcZ\\xf4Q\\xbcH\\x85\\xb5\\x120\\xfe\\xa6\\x88\\x15=#\\xeb\\x98\\xf8^Jf\\xe0\\x853\\xc9\\x91&K\\xc8\\xac\\xdb\\xe0C\\x03\\xf2\\xfct\\xa9\\x98\\x87#\\xe9\\xc9IK\\xbbg\\xfe\\x82\\xac\\x98uu\\xf7\\xa8\\xf4\\xe4\\xe3g/?9{\\xf6\\xf1\\x8b\\xf3\\xb3\\xe7\\x7f\\xed\\xc5\\xa7\\xcf\\xb8\\xc1vP*\\xf3\\x93g\\xaf_\\xc9\\xcf\\x07\\xbd\\xdd\\xd2\\xf3\\xe7\\xaf?{Q~^~\\xff\\xa3\\x17\\x1f?\\xfb\\xc1'o\\xce\\xab\\xed\\xec\\xefj\\x8b}\\xfc\\x83O>\\x91\\x8b\\x1d\\x95\\x8b-#o\\x86\\xa1\\x02\\xe8\\x97\\xea\\x83g\\xf4P\\xc1\\x9f=c\\x17\\xce\\xc4\\xe3\\xc4\\x9b\\x93O\\xc4\\xbb\\xe2\\x87\\xae\\x80\\xa8C\\xfa-\\x17\\x9be\\xab5\\xc6\\x0c\\xa4_\\xaa\\xef\\x7f$\\x1e\\x8a\\x1fr\\x81\\x9f~\\xf6\\xe9'/\\xae}\\x82!\\xe89\\x1e\\x96\\x86\\xf6\\xe9\\xcbW/?}\\xf6I\\xddZl8\\x87\\xe6\\xe9K|/D\\xd5\\x81E\\xbfY\\xa5gH\\xe1\\xd8C\\xfcZ~\\xeaG+\\xee{\\x12\\xd9\\x16\\xffQ.\\xe1\\xcdf\\xcf\\xa5\\xf0\\xe1X\\xb0\\x0c\\xb3\\xee!\\xdfI\\xfe}\\xd5\\xab\\xfcA>\\x9b%0\\xbfD\\xa5h\\xa0\\xb3|\\xeaJ`/\\x9f\\xaf\\x128iVH\\x97_\\xf0U\\x85\\xf2\\x1cF0(\\x83(\\x92\\xed\\x96A\\x14u\\xf6\\xca\\xa0\\x85Z\\xd7L\\xad\\xebJ\\xad\\xeb\\x86\\xb9\\xc2]\\xf7z\\x9d\\xc9u\\xefhr\\xdd\\xfb\\xde\\xe4\\xba\\xf7|r\\xdd{\\xd1\\x99\\\\\\xf7?\\x9e\\\\\\x1f~\\xdc\\x99\\\\\\x1f\\xedM\\xae\\x8f\\x0e:\\x93\\xeb\\xe3\\x8f'\\xd9\\xc7\\x1f\\x7f\\xfc\\x02\\xff\\xffxz;\\x9ed\\x1f\\x1d\\xd1\\x97\\xb3\\x8f\\xbe\\xf7\\xf1\\xc7S\\xfb\\xb4E!\\xcf\\x19\\x84\\x96pn\\xed\\xd3\\xe1\\xf8\\xf3r\\xb1\\xdb\\xcf\\x9dJ\\xb1\\x9dr\\xb7.y\\xb7\\x8e\\xf6\\xcb\\x1ez\\xe5R+,\\xe5N\\xc6\\x93\\xe9\\xe4\\xab\\xc9\\xfb\\xea\\xe3s\\xfa\\xf8s\\xfbt\\xd8\\xbam\\xb5n[c\\xaf\\xf3\\xe5\\xa43m\\xb7\\x9c\\x0fv\\x82r\\xc9\\x8b\\xa2\\xe4\\xf8\\xf3\\xa2>\\xc7>\\x1d\\xfe\\xc4\\xb8\\xd79\\xf6:\\xf3\\xe9W\\x83\\xf7\\xb7\\xec\\xfb\\x97\\x93\\xce_9\\x99\\xecLN\\x87\\xdf}4\\x9a\\xb4'\\x1f\\xb8\\xe7\\x93n\\xeb\\x7f\\x98|\\xf8xbO\\x1c\\xfa\\xf6\\xd4\\xf9\\xf0\\x83\\x9d@\\xc7\\\"\\xde\\x19YD\\x9f_B\\xc33\\xe3.\\xfb.\\x11q\\xb5\\xaakcU\\xc7EM\\xbb\\x83\\x0dj:\\xdb\\xa6&\\xec\\xdf\\xb6}}alao\\xaf\\xa8\\xea\\xb8/}\\xdf\\x95\\x9a\\x18\\x94~\\xeco\\xd0\\xe03\\x83yG+\\x9e\\xee\\x1d\\xa1\\xb9\\x02\\xa5K~\\xd2>\\xc5 9{G0\\xa4\\xc7\\xea'\\\\\\xef\\xb0;\\x80[`\\xc9\\x9c\\xd91\\xbb7@}O\\x87\\x16j\\xd3i\\x19B\\xa7_\\xdb\\xb1\\xd7\\xe6\\x998\\xca\\x15]\\xd6\\xa4g\\xb1\\x96s\\xc8\\x7f\\x87\\x00\\xb9\\xc8\\x05\\x85\\xf4\\xfb\\x07\\x12(\\xc5BU@?_.\\n\\n\\x19H\\xae\\xe9\\nA\\xbd\\x81\\x04\\x9a\\xb3R{\\x12(f\\xa5\\xfa\\x05\\xe8\\xbf\\xa7\\x90]\\xe95\\xd4}\\xec\\x16/=\\xb6\\x1e\\xc3\\x10\\xf6\\xa4a\\xec`\\x0f\\xe5\\x96&\\x14r(u\\xe7\\xff\\xf9y,\\xb3/A~\\x13\\xcb\\xc8#E\\xaa@\\xa1G\\xbd\\n\\xf4\\x98)\\xabk\\x17\\xe1\\x8b\\x9a#\\xc6\\x93\\x11\\x1c\\xec\\xef\\xef\\xee\\xc3)W\\\\a\\x96\\xe9\\xe7\\\\\\xdfd\\xa7\\x85\\x03j\\xf9\\x01K\\xe9\\xd9\\xa6\\xa7\\xb5\\x0e\\xd6p\\x00O\\x9fB\\x9fJX\\xfb\\x07\\xbb\\x83^\\xf9\\xd1#:\\xdf\\xbb\\x8a\\x11\\x15\\xe4\\xd3\\xd8[\\x90\\x13\\xd3\\x0e\\xf6\\x0f\\x1c\\x17^j`\\x9f\\xb2\\x84r\\x9f\\xc2\\x13\\x18\\xec\\x1f\\x9c\\xc0\\xa7\\xed\\xb6\\x03o\\xc7\\x9f\\xd23\\xd9k\\xfbS\\x87\\xc7\\x19\\xe8\\xb9\\xf0\\xb2\\x00\\xea\\x88\\xd3\\x1b\\xad\\x1e_hb\\xc9;\\x08P\\x01C\\xdeQI\\xb7;\\x0f\\x96$\\xf4V\\x84\\xb2\\xf6 \\\\g)\\xde\\xdb\\x8f\\x92 \\xc5;\\x96i\\x97\\x9e\\x1fd\\x18t8\\xf0,\\xf5\\xe2\\xb2\\x9b\\xbc\\xda\\x97\\xe7\\xda\\xbe0Q\\x99\\xf7\\xb3\\xf6\\xfd\\xef\\xeb\\xdf\\xefF\\xe1\\x0f\\xbd8\\x0c\\xc2Kv\\x96\\xcc\\x7f\\xf2\\xeb\\xea\\xe8y\\xca\\xeb\\xd7-\\x0e]\\x97\\xcf\\x94\\xd3\\\"\\x15\\xd9\\x86\\x8d\\x16\\x1a\\xf1\\xbe1d\\x0b?\\xa2\\x8f \\xed^\\x918\\xa1\\xc3x\\xf4\\x88\\xcd\\x845\\xcb\\xd6\\xcb\\xc0\\xf7R~3\\xf5'h\\x93\\xc0\\x8eT\\x98Q\\xca\\xe5\\x91\\x0fC)`\\x15{\\xb3\\\\\\x12<\\x9f\\x8a\\x96\t\\x90k\\xcfO\\xf1b*\\xc9U\\xba\\xb4\\x9a\\\\\\xe3n\\xc7\\x8c+R\\xa67m;\\x93\\xae\\xf8\\xf6\\xc1N\\x97\\\\\\x13\\xdf\\x0e\\xc7=\\x1e\\x03\\x8d5\\x14,\\x97\\x9dy\\x14\\xafdw\\xffh\\x0e\\xe9\\x82\\x80\\xda[*\\x8b\\xa1\\xf4\\xf82L\\xedx\\xdc\\x9f\\xbal\\xafDe\\xf8@\\xc0\\xa5\\xb8\\x8e\\xac\\xb5,d#\\xc1lhX\\xbf\\x983\\xde\\xe6,\\xf2\\xf3A\\x15\\x13:\\x82\\x90E-\\xef\\xfa\\x0b\\xe2\\xbf\\xfd$\\x08\\xc9\\xf7b\\xe2\\xbd\\xa5\\xe2[Dw\\x90h\\n\\xef\\xdc\\x0e\\x8a\\xaf\\xdf\\xe7\\xad&\\xd9\\x9a\\x8a\\xb1d\\xd6\\xd0hiu+*\\xb67\\xcf\\xfe\\xeav\\xe8\\xa2\\xe2\\xca\\xc0\\xb0\\xdao\\x9e\\xfd\\xd5\\x9a\\xc5N\\xdfE\\x85\\xfe\\xdf\\x12\\ny\\x16\\xd1\\x0e\\xbf\\xd1u8\\xef\\xa6$I\\xed\\x18\\x03@(K\\x9bz\\x97\\xb0\\xf0\\xc2\\xd9\\x92\\x80=\\x0f\\xe2$\\xcd+t\\xc4$\\x94\\xfa@[\\xc9C*\\xa4\\xde\\xe5\\xa7\\xde\\xda\\x85\\xb8@\\x9b\\xc7\\xe9\\x82\\xc4\\x84\\x1ep=X\\xc7\\xe4*\\x88\\xb2dy\\x033\\xe2/\\xbd\\x98\\xcc \\xc9\\xe6\\xf3\\xe0\\x1a\\xa9\\xa2\\xf5\\x18\\xda\\x10C\\x1b\\x1e[R7\\x1e;.\\\\\\xb0.\\x07\\xe6.\\xafcB\\xab\\xb1\\x13\\xe2G\\xe1l\\x83>\\x8b\\xce2\\xbf\\x87r\\xe0\\xfc\\x92\\x96Q\\xa5=\\xaf\\xc4\\x92\\xe2@U)\\xa4\\xc8\\xdf\\xaa\\xaa\\xe9\\x08<\\xd1\\xa3\\x02\\xbac\\xb0\\xd8;\\x94\\xd8\\xf2+\\x1e\\x888\\xb4\\x19\\xa5<\\x08V\\x120sz$E\\xf5f\\xf9\\x08\\\"\\xfa\\xa7=\\x82\\xbe\\xc3e\\x06t\\x0e\\xf0\\xaa\\xb6\\x15&\\xfb=\\x19AF\\xd7,C\\xb9\\xa7\\xdf\\xdf\\xeb\\xf7\\xfb\\xc5d\\x93\\xeb5\\xbb\\x83\\xcf\\xa2\\x1c\\xfc\\xe4\\xd9\\xebW@\\xab\\xf1\\xfc\\x94(\\xb90A\\xdc4\\xbca\\xab\\xe6I4\\x84.E\\x92\\xc6\\xc4[\\xa1\\xc3\\x81\\x17\\x84\t\\x84Q\\xd8Y\\xc7A\\xc8\\xb6z^m\\xa2\\xab7\\xed\\xc6$\\xc9\\x96\\x98/\\xd53\\xad\\x99f\\xc9>)\\x96Lqo\\xb9\\xe2\t\\x04\\xd0-\\xac\\xe2,\\x833\\x1cw\\x83\\x84\\xa7\\xdb\\x0f%\\x0c\\xe4\\x1a\\x9a\\x15\\x89/\t\\xac\\xbc\\xf5:\\x08/\\x93\\x13\\xc4\\xb6u\\x1c]\\x053\\x8a\\xddQ\\x16\\xfb\\x84\\xe7o\\xa6\\x9b@&k\\x96\\x93\\x87\\xd8\\xa4\\x87E[\\xf2*xKn\\x12;t\\x9c|A=x\\x02>\\xfd\\xc3\\x164\\xc3\\x80\\x8f\\xde\\xd4\\x95\\xe2\\x9ce\\xd87\\x9b\\xb0\\x90\\x94!\\xfa\\xdb\\x04\\xecG\\xabW\\xcfM?\\x920Z\\xce?\\xac\\x9b*\\xdf\\x85\\xb9\\x8a\\xd7Aa\\x08\\x0cd.\\xc3S\\xf2\\x08#\\x91\\x95z\\x97\\xc3\\x1bo\\xb5\\xecF\\xf1\\xa5;\\xe8\\xf5\\x06C\\x9c?\\xe6q\\xabAsZ7\\xbb\\xeb\\x18$L(2E>\\xc0\\xa5\\xe2\\xae0\\xf4\\xa0\\x1d\\xe5s\\xe7\\xc3\\x13\\x98\\xd3?l\\xee\\x04.Dc\\x1fS\\x90\\x1b\\xb07/\\xa6\\x96\\xc1\\xe7)\\xea]\\xe9\\x94'y\\x8cb\\x9e\\xde\\xa9X\\x13\\x06\\xb0\\x99\\\\\\x04t\\x8f\\xdd\\xde\\xeaD\\xa7\\x11x\\xecI!`\\x95\\xe5\\x022\\x13(\\x06o\\xc9\\x0d&\\xe0#\\xe3`\\xcaB$\\xe5\\x97~\\x83\\xe6D>\\xea\\xe2\\x7f\\xb9\\xd1Y\\x8a\\x1f2p)\\x05\\x8d\\x92(I\\xd1s\\x87\\xdd\\xe8\\x12?\\xdbmz\\xac\\xd8\\xe5\\xc8p\\n\\xb6\\xfc\\xc8\\xcd\\x8f\\x9a\\xb552Y\\xaex\\x8d\\xca\\xe8lz<\\xc0\\x89\\xbd\\xa0,\\x9en/A\\xa8\\x18\\x85\\xc7gmt3\\x92$S\\x1c\\x80\\xa8\\xacvf>6\\xf1\\xee\\\\\\x86\\x97s\\x0e\\xd5\\x0e\\xe1\\x84;\\x10\\x04\\xda\\xb8\\xac\\xdc+\\xeb\\xda\\x0e\\x1c\\x1e}TS[\\xbb-\\xd7\\xa7\\xdd)\\xb8\\xdbv\\xd9\\xd1\\xca\\xe0!7\\x8bj\\x0c~\\x9b\\xb4\\xac}\\xf9=\\xbc[\\x04Td\\xe8\\xf7\\nA\\xae\\xbf[|\\xe7`C\\xbf[\\xef\\x90\\x15\\xe12\\xaa%pv\\xbeD\\x07\\x83\\xe6\\x89v!\\xa6x\\xc5\\xd6\\xfbe8\\xa3R*\\x9e\\x9f\\xf8A\\x96.\\x80\\xfc\\x90\\x16\\xdez\\xd8\\xefu\\xbb\\x8c\\x87\\xb0\\x0d\\x8b\\xe1\\xc6\\x0cq\\xa5\\x9e<a\\x8f\\x99\\xb09#\\xf3\\xc0\\x0f(8\\xc0\\xa7(\\xfd[%\\xffH\\x1dV\\xfe\\xa0\\xd6\\xb5\\xb5\\xe8\\xb2\\x96\\x14\\xb4ltS0o\\xe4\\x90\\x89\\xfc{\\x07\\xdc\\xdf\\x05\\xbd\\x0fZ\\xfa-\\x1aB\\x9b\\x12\\xd4\\xa6\\\"\\x03F\\x041\\x17\\xd7\\xae+<\\x9b\\xeb\\xdbo\\x9d\\xd9\\xc4i8C~O{\\x06\\xec\\xe7\\xa4F\\x16\\x16\\x98\\xee\\x82\\xc0S\\xe6?b\\xcb\\xcf0s1\\xf1R\\xdb\\x9a\\x84\\x96\\x8b\\xfa\\x9e~C\\xd3?\\xabmZ\\xb8\\x10\t\\x8cJ\\xbdK\\xd5\\x16\\x1e\\xe1#/\\xf4\\x17Q\\xac>\\xcd\\x0c\\x99\\x06<M (\\xdc\\x17\\xd2\\xa1\\x92\\xd5\\xc9\\x87\\xc7~P\\x01W|\\xc7\\xd8N\\x8e\\xc8+\\xb7\t\\xb1\\xc2\\xba\\xf6\\x189\\xc1\\xefgv\\xed\\x8b\\x88\\x0e\\xce\\x89\\x9e\\x8b{<\\xb2P\\x99\\xfe#\\x89m\\xb1\\x10\\xad\\xeanAw\\x9a\\x8c\\xc7\\xd7cN\\x8e\\x1b\\xf4^i>\\x8f{\\xc16\\x08\\xe3\\xbe?\\xc5\\x89\\xfb\\xd2\\x85V\\x1f\\xbd\\xe3\\\\\\xd1\\x94@\\x0e\\xa7\\xdc\\xbfM\\x1aw\\x0bf\\x8f\\xb4 g\\xf7|HO\\xb9\\x83\\x10\\x9f`\\x87\\xf3\\xb1\\x0bo&\\x13\\x01zj\\xf1 !?\\x9b\\x91\\xd0'@\\xc24\\xbe1\\x8a\\xd9\\xcc\\xc7\\xacDd\\x88\\x96\\x96\\n\\x12\\xd0\\xf28\\x8e\\xd0\\x83\\x13Kd$p\\x07\\xc5\\x89\\xb4\\xfb6\\x08g0\\x02K\\xf4\\xc0r\\x8b\\xcd\\x841\\xc6\\x9a\\x04\\xca\\x9f6\\xd3\\xa8\\\\\\xc4D\\x8c\\xd6\\xef\\x80*\\xa6\\xd3!\\xee\\xee\\x16\\x11\\xc2\\x1b\\x04\\x90\\xdc\\x7fBW\\x8f\\xb4a\\xe8\\xf8M\\x1a\\x18\\x8f\\x1f+\\x99i\\x87R\\xe5\\x03.\\x01m\\xc2-0\\x12m\\xc41~\\xb3\\x17\\x86\\xb0\\xcb\\xa4\\xa4@D\\xb1\\xc58\\\\t\\x19Z-k\\xf3Z\\xd8\\x1b\\x16\\x0b6 \\x0b\\x94\\x91N\\xf20\\x8a\\x03\\x9b4\\xa7\\xbc\\x98\\x8b\\x01\\x92\\x14p00\\xb2~\\x89r<\\xc9\\xb3\\xf8\\xd1\\xd1\\xc7\\xba\\x83pi\\x97m\\xd2\\xbdBL\\xcc\\xc2\\xfc\\x04K\\xc2\\x99\\xd0\t\\xf0\\x83\\xe8\\xbb ]\\x04!xpE\\xe2\\x0b/\\x0dVt\\xe5\\xab\\n\\x1eS\\xa8#.\\xb9I\\xe3m\\x9d1)._M\\x96D\\xe0T\\x9c\\x80\\xbdK\\xa1\\xf3\\xe0\\x07H~\\x10\\x06r\\xed/\\xbd\\x15C\\xc0\\x95\\x17\\xbfM\\xac<\\x0eqe.X\\x16\\x85\\n\\xdd\\xcd\\x15;\\xf2\\x195\\xf4*:\\x9dJ\\x9bI\\xe6/JGn\\xe6\\xa5I1\\xaf\\x8c>\\x8c\\xb4o6\\xef\\xeaB7\\xaf\\xe7*WJ\\x15\\xba\\x02\\xe3L\\xcd\\x97\\xd1;J.\\xe9v\\x8d\\xe2R\\xff\\xcb\\xab\\xa6#\\x7f\\xc8\\xc8Z\\x17\\xfa\\xf60\\x99u\\xfd\\x1c\\x0d\\xd1m#F]\\xe6)\\x08\\\"\\x1a\\xc3PU\\x83\\x85\\x8eT\\\"W8\\x85STs\\x0d\\xe9.\\xe5\\\\\\xa2(Ea\\xe2\\xa9\\xee\\xb1z~\\x16\\xe5\\x99\\xb6-\\x0bs\\xcd\\x9a\\xb4\\xea\\xa8Y\\x0bQ\\xb3\\xf6\\x18=\\xc1k\\x89\\xf7\\x0f\\xcd\\xc4[C\\x96\\x8f\\x18Y\\x0e\\xefA\\x96\\xcd\\x82\\x8c\\x9e4\\x87\\xc0K\\xc8\\xe4\\xd9\\xd0\\x81\\x12fV\\xb1Zl\\xdc\\x90o\\\\v\\xd4l\\xbd\\xb0C\\x07\\x93\\xc76\\xd7\\xa8\\xe5\\xb0\\xd2\\xb6\\xc9u \\xc5~,\\x0f!\\x8cf\\x04VYR\\xe0\\x9b\\x97\\xc2\\x92xI\\x8a\\xaa{I\\xcbVb\\xd3\\xf5\\xbb\\xa9a\\x81\\x7fJ\\xd2\\x86i\\xf8\\xc2U~I\\xf2\\xc6\\x85K\\x17V.\\x9c\\xbbp\\xe1\\xc2kf\\x8c\\xd20\\xed7\\x06f\\xfe}\\x033\\x97\\x16{\\x19$)\tI~Vb\\xbfl+Zc\\xd4\\xd9T\\xe8j\\xa1\\x88\\x1e\\x9d\\xcf\\x82\\x00pyE\\xfc\\xcc%\\x15\\x06@\\xb5'\\x8c\\xd0\\x19b]\\xc8eLA\\x85A\\xeb\\x1f=R\\x04Q\\xfbM.\\xaf\\x96\\xc578e\\x93\\x00\\xc3\\xca!\\x93\\x9f:\\xd0\\\\W}\\xf8\\x84+\\xc2>E\\x97x\\x07\\x0d\\x1e\\xf4\\x85O\\x0d\\xde\\x9a'L\\x82\\xba\\xbd\\xc5\\xcdx\\xe2\\x94\\xbbwZ\\xf4\\xee\\x86\\xc9c\\xdfJ'a\\x88\\xd5\\xeb\\xd6\\x8f\\x07j\\x80\\x11\\xbc\\xa1\\x9d\\x8cr\\x0b\\xce\\xa7\\xf4\\xc1\\x9ao*z\\xea\\xbb\\x80\\x11\\xf8\\xc5\\xa4\\xcfs\\x92F\\xf0<\\xd6\\xa6\\x9c\\xecu\\x99\\xd5\\x94\\xec\\x88\\xf9L\\xc1)\\xbf:\\x8eg\\xaf\\xd789\\xdb\\xd8X\\xdcB\\xc9\\x9b\\x98Og\\xc0=w\\xcc'4\\xe0^;_\\xd5\\x8475=\\xcb\\x91T\\xfb\\xf4\\xaa\\xf6\\xe9M\\xed\\xd3K\\xc3\\x06\\x04\\xeeG\\xa3\\x0b\\\"|\\x87\\xf3\\xe3\\x92\\xab\\xac7;?z\\xc6$D\\x18\\x84\\xa8\\xa9\\x1e.\\xd6D\\xd2\\xa1-\\xab\\xc8\\xb4\\x07\\xecP\\x80\\x07\\x9a\\xfd#\\xfe\\xfd\\xf6\\x96\\xd2\\xf2\\xb8\\xf9\\n%\\xd2\\xc1\\xd0\\xc5[\\xaf\\xec\\x08h\\xd4A\\xc9\\xefI\\x07<\\xadL-\\x7fX\\xaa\\xdf\\xa6\\x91:'pm{t\\x9f\\x1b\\x8a6\\xc8W\\xf2\\x87\\xf6p\\x9f\\xf9[x\\x0e\\x9c\\x99\\x1a\\xafH\\xca\\xb9\\xc4\\xe8Q\\x11\\xfe\\xffc\\xee[\\xbb\\xdb\\xb6\\x95E\\xbf\\xf7W\\x8cx{\\x1c2\\x92\\x15I~$Qlk\\xa5i\\xd2z7ur\\x9a\\xa4\\xfbt\\xcbj\\x16-A6\\x1b\\x89T\\xf9\\x88\\xed\\xbd\\xdd\\xf3\\xed\\xfe\\xb1\\xfb\\xcb\\xee\\xc2\\x0c\\x00\\x82$@\\xd2N\\xd2\\xd6k\\xb5\\xa1@\\x10\\xcf\\xc1`\\xde\\x93\\xb2d\\xe3\\xcf\\xb5\\xdbG\\x97\\xad\\x82\\xbf\\xe4%\\x9c\\x82\\xfe\\xc0\\xae\\xb7\\xd1w\\x02\\x12\\xb6\\xf1c\\xa4\\xc6\\x149}\\xb6\\x8a\\xe6\\x1f\\xa4\\xd4\\x9a__\\xc8l\\xb9\\xa8kX\\xf5\\xf2\\xa88Z\\xc4\\x9b\\x8f\\x02K\\x8b\\xa2\\xb5@r\\x02\\xb8\\x91\\xf8\\xe4\\xff.\\xd4\\xf9\\xc5/$\\xc2\\xaf_\\x97\\x86\\x9c\\xcc\\xf2\\x0f\\x01c\\xad\\xb9g\\xd1\\xd5\\x93\\x14\\xee\\x9d9\\x07\\x96\\xfa\\xee\\xf8\\x9f\\xd2\\x13aD\\xd8\\x98\\xf9\\x0b~\\xf1\\x07kN\\xcd\\x04\\xa9\\x12\\xe8o\\xfc ~\\x02>\\xcc\\xa3U\\x14\\xf2\\x95^\\x07IR\t\\x9bW\\xfe3\\xbbKC\\x1d\\xb3\\xa2\\xff}\\xaey\\x9a\\xe6X\\xdcz\\x12_\\xf0\t\\xae\\xb3U\\x1a\\xe0\\xd9\\xf9\\xc0\\xaea\\xed_\\x830q\\xd6W\\x05\\xd5\\x1b\\xf6\\xb9\\x19\\xdf\\x88\\x19\\xef\\x13\\xcb\\xe5\\xf3\\x0b\\xf2\\xd3\\x80Mp\\xed\\xe42yN\\xedi08\\xc8Y\\xcb \\x9cG\\xeb\\x0d\\xea_\\xd8\\x95ec\\xf9l\\x91\\xceS{\\xfb\\x04\\xa2\\x18\\x96\\xd1j\\x15]\\xb2\\x05\\x9c]\\x83\\x8fj\\xd0\\xd4?\\xcbV\\xa8\\xeca\\xebMz\\x8d\\xca\\x0d\\\"\\xfcr\\x9c\\xa8\\xbc\\xa6c\\xf3\\xc6P(\\x11\\x0dEYeP\\xae\\xa4\\x037DZ\\x04T\\xca\\xa7\\xab\\x1f+A\\x06hB\\xb1s\\xbc\\xd9+k{-b\\xd9\\x1b\\x97\\xb7(Hk\\xc6\\x88\\x9e\\x81\\xa8Qr3\\xbfVnV\\x80;\\x9b\\x17c\\x93\\xe8\\xac\\xf2Q\\x15\\xf2\\xc4\\xd1AH\\xb3\\x01\\xda\\xba j\\xab\\x9c\\xae\\\\\\xd4&\\xf1d\\x81~\\xc5\\x16\\n\\xfd\\xfe\\x81\\xc4O\\x0f\\xce\\xbc*\\x01d\\xa3~\\xcaZ]\\xccY\\xb3\\xd4\\x93\\x88u,\\xf9\\xc6\\x17\\xf5\\x84\\xd2\\xc7FB\\xe9\\xda\\xe0\\xad\\x04\\x02H\\x859\\xa8\\xbbi\\x86\\x05\\xd2\\x89=\\xde\\xe9\t98IbM\\xe9\\xc9k0\\x1f\\xefs8\\\"\\x82ac\\xe5EUmN>\\x8f\\xf6D\\x8f\\x03\\xea\\xf1?M\\xfeip7\\xb2*\\xf6(\\xc3T\\xd3=-\t\\xabM-a\\xa5\\x8e\\x1a\\xf3z\\xad\\x96W\\xe8\\x0b\\xab\\xec+i\\xd2\\x08v\\x17\\x05\\xd8\\xfd\\xa8\\xc1.\\xc7\\xb7\\n~al\\x13\\x1b\\xc7\\xf6\\xcb\\xe4\\\"\\xa7?\\x08?\\xc2<Z\\xaf}8c\\xe9%cB\\xe03\\x8fV+\\x91\\xbb\\x81\\x9f\\xec\\x80\\xa1\\xb8j\\xc9\\x8f\\x95\\xc80D\\xec^\\x84zv\\x02\\x13q#l\\xa0\\xad\\xf2\\x02\\xb7I\\xb5`WW0O\\x89\\x1c\\x8a\\xea\\x84\\xb9\\xa6NX\\xe6tJ\\xa2a\\xd0B3\\xd6\\x8d/2\\xf4\\x19(\\xe5H\\xce\\\\\t\\x8aw\\x83\\xe8XJ\\x9b\\xdb\\xc0Qi\\x04\\xa6\\xb1\\xaf\\x8a(\\x9f\\xef1\\xe2\\xb8\\x18\\xf1\\xfc\\x12q\\xc8\\x8a<\\x8c'\\x10\\x93\\xde\\x04+\\xd0&hux%Q!)\\xf7,\\xcc\\xc3[\\x01\\xe9\\x84B$\\xb6\\x9d#\\xe6bB0hqfo#&.\\x01cY\\xe6\\xc8[:\\xe3\\xa3}M\\xd1\\xf4\\xc6\\x9c\\xfe\\xdf\\xdaj\\x8d\\xaa\\xcb\\x8c\\xea\\x85\\x9dI\\xb51|\\xcb\\x9aw+\\xf4\\xcd6\\xbe\\xda\\x98##\\x81\\xc0\\xe3\\xb6<4\\xc3\\x91\\xd8\\xc4\\xacy\\x13=A\\xc3\\xdf\\x1aq\\x0b-B\\xd6\\now\\x9a\\xc2\\xc6\\x80D\\xd3\\x9a\\xaak\\xee\\xaf0,\\xab\\x86\\xb1\\x1cG\\\"\\xdc\\xcc\\xa0\\xd4\\x041\\xb4\\xdd\\x9d\\xda\\xe9W\\x19-\\xa1Q\\xcd<\\x0e\\x9f\\x87\\x1c}Mp\\xa7EC\\x19\\xd2_cX(\\x1a\\x93\\xd4\\xd3D\\xdc\\xcc/\\xa25R7\\x94]\\x86S-\\xc120[\\xe1A3\\xdb\\x83l\\x80\\x8b\\xc8\\x83\\xdc$\\x90_\\xcc\\x10\\x0f\\xfa\\xcaY\\xc2\\x97\\xce\\x12\\xdbC\\x0f\\x8e\\x0e\\xa1\\x05\\xa3<\\x10\\xc4\\xe7D\\xa3\\xd4\\x14\\x81\\xac\\x93l\\x97\\xc1\\\"\\xbd\\xa0\\xb9\\x11\\xdb@;\\xf1\\x04\\x02=\\x9a\\xf8\\x8a%\t\\xa4\\x17~\\x08\\x11'\\x89a\\x0cK\\xd5\\xb4\\xb6<\\xa1\\xa1i}\\x8d\\xf8i\\xc4\\x13\\x00]\\x88H\\x8d\\xb2\\x84\\xa2}\\x9c\\xfeW\\x85\\x1a\\xbe^W\\x98w\\xc9\\xbc\\xa6\\xb5\\xe65m \\xc4<\\x0e\\xa9W\\xc3\\xae\\xedt\\xff\\x8e\\x84,\\xeb\\x10j\\xc7\\x07\\x9f2F\\xd0\\xc7\\xd9\\xb9t3M\\xcfm\\x18\\x90\\xe5@j\\x07\\xce2P\\xcd\\x1a\\xa8l\\xe4\\xd3\\xb3\\x8d\\xbe\\x9d\\xf0\\xc4\\xed,+\\xbc\\xd2\\x01\\xbf\\xe4\\xb6\\xb6\\xa4\\xf5Pf\\xb0\\x1ej\\xb3b\\xf6-\\xeb,\\xa1l\\xf6p\\x04+$CV\\x8a\\xbc\\xa0\\x17^\\x0f.\\x11\\xf46\\xdd\\xee\\x9d\\x0f{uv\\xf5\\xf0\\x90\\xe0\\xbc?\\x96\\xcciJ&3s\\xf4A\\xe9\\xc2\\x06\\xc6\\x9c\\xb4\\x1e\\x8b\\xaf\\xd0n}\\x0ee{\\x1b\\xfeM\\x83\\x10\\xcb\\xcc\\x82\\xc9?\\xbb\\xe8CXDO\\x80\\x1f\\x14N1\\\\+2\\xae\\xe5\\xe0I\\xea-\\xbf\\x1c\\xd6~\\xb9\\x114\\xe3X`\\xbb\\x0dLL\\xd3\\x05\\xc4;u\\xed4\\xbc/\\x8e\\xb0\\xa7\\x92t-5rhP1\\xff\\x82\\xf2!|\\xe2}\\x02\\xac\\xf2\\xbf\\x13!/\\xd5%\\xb0\\x1dC\\x02E0\\xee\\x91\\x95\\x81.\\xa7\\x02\\x11\\x14\\xd4-\\xd9[3q\\xb2\\xf3\\xf8\\xd3\\xd5\\x93\\xd0\\x96Z(s\\x0b\\x9cQ\\nJ\\x9b2h=\\x9e\\x1a\\x92c\\x87\\x0c\\xfa\\x8d\\xfa\\x0e\\xbd\\xde\\x89\\xa0\\xd8\\x0b\\x1b\\xc6\\xa9\\xfb\\x86e)\\xd2,\\xf9\\xc2\\xd4\\xc8\\x02\\xe3\\xc2<\\xcb+Q\\\\\\x05\\xcb\\x1d\\x87\\xd8\\xeb\\xd2E\\xad\\xb9\\x1az F\\x8c\\xc6~\\xc4;\\x0c\\x05\\xfbU]^:G\\x8a\\xa3;<<,\\x18\\xfenm\\x91\\xf1\\xe4\\xa4\\x96\\xde\\x97>>9\\xc5\\x9f\\x04\\xe1\\xf9\\x8a\\xc1\\xefY\\xc4\\xab\\x8a\\xbdGZ\\xa2n\\x96\\x86\\x83t\\x1b6\\xc3\\xdc\\xe9\\xe78):\\x83a95\\xbb\\x04\\x1e-\\xc4t\\x9f\\xff\\xd4`\\xe2m\\xf3\\xa9i1\\x9eZ\\xc9\\x88\\xf0]\\xf5\\xd5\\xa0\\x8d\\x18m\\xe0\\x95\\x87d\\x03|\\x14c\\x8dd\\x9b-\\xce\\xa2\\xa9\\xab\\xcbv*\\x1aO\\x87~\\xfb9TrM\\x9f\\xfcE9\\xd0\\x7f\\x98\\xfa3\\xafp\\xc1\\x1c\\xa3\\xef\\x88>\\xc9\\x16-Rp\\xd1\\x910\\x83\\xe3\\x1c\\x8b\\xcf\\xcf\\xd2\\x08]\\x89\\x1f*Vf\\x17\\xc6\\xf0hO\\xfd\\xe4l\\xc3\\xc0\\x83#\\xfe\\xbf\\x16\\xba\\xb2\\x80\\x14\\xda\\x11\\x19m\\x07\\xfc\\xbb'\\x10lo{\\xd8\\xfb\\xd3\\xb6k\\xc5\\x99\\x14\\x0c\\x1b\\x87~5\\x07\\x07\\xb0\\xebA\\x172\\xc5R\\xa9\\x13x\\xc1\\xae\\xfc\\x05\\x9b\\x07k\\x7fU\\xef\\xd2\\xa4\\xff\\xe9K\\xf9\\x9b\\x1b\\x95\\xe0\\xc5N\\xb7\\xd0ZJ,\\xf0!\\x8c.C\\x10\\x11\\xd3\\x94\\xcc\\xac\\xa6\\xeb\\xea\\xc9\\xa8\\xc7\\xa4~\\x8eI\\xe9\\xe8\\xdb0i\\xb5\\xe1/\\x84I\\x17Qv\\xd6\\x06\\x93\\x96\\x06\\xd3\\x82\\x96\\xb8\\x0dj5\\x8f\\xc2\\x88Z51NGC\\xb26\\x0c+\\x0c\\\\\\xcdXu\\x97d\\x18\\xcd\\x8a\\xef6X\\xd5\\xd2H+s'2\\x81{#\\xac\\xdf:\\xcf\\xdd\\x98\\xa3\\xcd6-V\\x07s+\\x93\\xa7U\\xe0'\\xb7\\xb2x2\\x18?\\xf6\\x8a\\xa6N\\x9aH\\xbd\\x14\\x8eE7\\x84\\xbc\\x97\\x85J\\x0c\\xb0\\x10\\xe3(\\x19\\xc5iw\\x92.\\xa6\\x0fge\\xddU\\x95\\\\\\xe5`rWS\\x14\\x94\\xba.\\xa5\\xbc\\x95\\xdf\\x94v\\xe1\\x9c]\\xd1\\xcd\\xc1\\xeb\\x8d\\xbbl\\x06,\\xbe\\\"\\xcf\\xdd%\\xb9}\\x12\\x92F\\xa6w\\xe7Q\\xfe\\xbc;\\xd2\\xcaw\\xf2g)\\xe8\\xc3\\x1f\\xfbz\\xa5\\xc7\\xda\\xb3Vg\\xe7\\xa1V_+\\x7fL\\xa1\\x1e\\x96\\xb5P\\x8e7\\xce\\xbe\\xd6\\xbd\\x10\\x9b-IF\\xff\\xa6\\xf9\\x18\t\\xee\\xec\\xe6\\x86\\xec\\xfb8\\x98\\xb78X\\xcd\\xe4J\\x80\\xbe\\xe4ErWX\\xad\\x8b\\x03\\xb6\\xac\\xa5B\\x84u\\xc6\\xb2\\x89b\\xb8\\xe3\\x14k\\x98g-\\x8f\\xef\\xce^\\xdbA\\xd4\\x0f\\x00}eZ\\xf4\\xd9$\\x95h\\xbcj\\xf29.\\x9b\\xa5\\x8f\\xbc\\xcdK\\xac\\xd8l\\x05\\xe1+1\\x8bT\\xd3h\\xc6gsU@\\\"\\x13\\xed\\xe6DdP\\x14\\xdc\\x1c\\xda\\xb3t\\xe9\\x7f\\x99\\xc6\\xbf\\xdfYZ%\\xfej\\xe3\\xb6\\xcb?\\xbb\\xc0\\x04\\x8af\\xf8\\xc2\\xff\\x83\\x8c\\x078~\\xd2wB\\xe8\\xaf\\x0b27Kr\\x01\\xf9w\\x179\\x8e\\xb9\\x14\\x15`D\\xcb\\x10\\xfe\\xec\\x0c%-#\\xc6\\xbb\\x0d\\xbeWw8\\xbd\\x1e\\\\\t\\xcc\\xe7\\x16k\\x08C3\\xcbv4\\xb8<\\xd8n\\xc4\\xf2P;\\x1d\\x85F\\xc8%X\\xa0\\x99\\xa2\\xc5\\xea\\xa6*Q!R\\xa4'\\xad(\t\\xfd\\xbd\\x16 \\x94\\x07\\xd0\\x96\\xde,\\xca\\xd8\\xc0\\x998(\\x9b\\xaa\\xa9\\xab\\x95\\x08\\xcdnn\\x07\\x96\\xdf\\xd5\\xc9E\\x94\\xad\\x16h\\xabs\\xe1\\x7fd\\xe0\\x87\\xd7\\xd2\\xf2\\x1a\\x95\\xb0\\xd2\\xdf\\xbb\\xb5\\xba[\\xe9\\x15s\\xd1\\xd9\\x8fjVh\\xe4)l<KM\\x8bQ;\\x1d'/0;\\x9b9\\x13'\\x9fi\\xad$\\xf9\\x9cdgk\\xda{a\\x84\\xf4\\xf6z\\xc3\\x12\\xe5?~\\x0e\\x07\\xb0\\xe6\\xff\\xa0\\xffx-\\xceq\\xdfW\\xdb\\x99\\x9e\\xcf<>\\xe1h\\xf5\\x91\\xb9\\xda\\xd4\\xeb\\xf1\\x84\\x06\\x13\\xef\\xfbs\\x19;OwM\\x93\\xfb\\xfc\\x9e4\\xccw\\xdc\\x82\\xcf{~\\x05\\xb2\\xcf=!\\xae7\\x8c\\xbaFh\\xbf\\xb9\\x01g\\xe9\\xafVg\\xfe\\xfc\\x833\\xeb\\xc9\\xed\\x99\\x80X\\xb7\\xda\\xeaS\\xac=+\\xccT\\xac\\xd1\\xd6\\x16\\xbc\\xa7O\\xa8\\x18\\x1f\\xcd\\xa1d\\x10\\xa2\\xf1=\\xdf\\xfe\\xce\\x01\\xc6\\xe0\\xc4\\x95\\xec\\xc2\\xbd#H\\xfds\\xd4<\t\\x98?\\x13\\xbe\\x13\\xa2uN+\\xf6\\xf0 `i\\x9a\\x97\\xdeC\\xff\\x9b\\xca.\\x93\\xc3{\\xd3N\\xdeq\\xebr#4\\xa1'\\x13\\xdd\\xa31\\xd9\\x82!\\xbfS\\x9a\\xa1s\\x94+\\xe1\\xd0\\xcbI\\xf7\\x91\\\"~\\x94W,\\x7fdI(\\xd5\\xc2\\x8a\\x7f\\xbe\\x8a\\x12&\\xcc\\xf8K'\\x99_\\xe8\\x95\\x89\\xdf\\xdc\\xc0\\xeb\\xafr\\xf8R\\x8f\\xcaw\\xe1\\x87v\\x9e\\x85\\x1a\\xfa\\xaf\\x00\\xa9\\xc9\\xc3P\\x90~Z\\x18!\\xe1KP\\x0d#\\x94\\xf6W\\xec\\xdc\\x9f_\\xf7\\x94K\\x8f\\xc8l\\xa6m\\x18\\x99=I\\xb1U\\x0b\\x97E\\xdc\\xf1\\\"\\x9f\\xd1\\xfcU\\x0f:nIs4\\x10tw\\x07-z\\xcc\\xd20\\x9ck\\x06\\xed\\x9d\\x13m|d\\xc1\\xdf\\xadMC5\\xbc\\xect\\xd63\\xfa\\xba\\x15\\xd8=\\x19\\x0f\\x05\\x0e\\xc8\\x8d[\\xb8\\x07\\xa9xH\\xc8k\\\"kiR\\x1b\\xeb\\xe6\\xcc!PKNCd\\x06\\xf8L\\xd1\\x19\\xa0\\xa8\\xa1\\xad\\xcd\\xb1\\xd4\\xa8\\xa3m3\\x04;\\xd26\\xf8hR\\xfc\\x05\\xfbUPC\\xdd[gZ\\x1b\\xd2\\x01\\xe4\\xb2~1\\xc0\\xe2\\x7f\\xb1t\\xe7\\xae\\x81\\xa8\\x16\\x04\\x9d6&\\xd2;\\x8b\\xeb\\xed'\\xe1\\xe1\\xf7\\xd34\\x9cI\\x19\\x1b\\xc7\\xa7\\xaf\\x85\\xc4\\x81\\xf0\\xa9\\x12\\x82\\xe5`Z\\x90<|e\\xef\\xbc\\x88\\x0f\\x06\\x1ak$\\xce{\\xee\\x9e_\\x8f(\\xdaV\\xa4x\\x0e\\xed+\\x8f\\xbcbD\\x17\\x11\\xe1A\\x1f7_\\x90\\xccpV\\x13\\x14\\xd0\\xad\\xfd\\xb8\\x12\\xb7\\xe5\\xe7\\x9c\\xa6\\x17\\xd3D;\\x8d\\x8df\\x9cV\\\\\\x98*\\x92\\xde\\xda\\x82sr\\xf0,\\xee}T\\xdc{P\\xa18\\xc2(\\xdc~\\xfa\\xe6\\xd9\\xf1\\xb1\\x16O&\\x01?f\\x10\\x84)\\x8b71C\\xc7\\x87\\x04\\xd9-\\x15tNnmR\t\\x1b\\xd0\\x82\\x9f\\x9d\\xc0\\xee~\\xf3\\\"{\\x82\\x14hXa\\xad\\x82\\xe6I\\xbd\\xadc\\xc9\\xaa<4\\x8aQ\\x16*\\xc03\\xf7\\xe0(\\xecG\\xede\\xfc\\x9dk\\x8c\\xc2XL\\n\\xc3d\\x86(~G\\x0e$\\xbd\\xa0\\xe2\\xda\\xc9\\x901\\xa5\\x05\\xc8\\xa7\\x80K b\\xc9\\xd4Wrs\\xf3\\x82\\x1e\\xec\\xef\\x8d\\x1e\\x8aX\\xa9\\xfaG\\x03Y\\x93\\x97\\x8b<\\xfa^\\x19\\xf7Q\\xb2\\x04\\n\\xc5\\xd9\\xa8YK/\\x82\\x84\\xb6\\x100\\xfd\\x01\\xfe\\x96\\xd131!\\x92\\xfa!H\\x1eQ'\\x91\\xf1\\xd8\\x99|\\xbc\\xb9A\\x9e\\x9b\\xbf\\xcc\\x03Y\\x1eb\\xda*\\xf9\\xab\\xd8\\x04Q\\\"XE<\\xde\\xdc\\x90\\xd5\\x02\\x7f\\x8b\\x01\\xaa\\xf8;\\x19\\xa9J\\xbdQ\\xe4\\x1a~)\\x7f\\x14\\xdb.01|j\\xf9\\x981\\nx\\xb0b\\x8bcQG|\\\"\\xe8wK\\xe5\\xb7\\xf4V\\x0d\\x1d\\xf7.\\x07\\x06Q\\xae\\xc9\\\"\\x06j\\xb4(\\x8e\\xd0\\x7fJ\\x89\\x84^\\xa6\\x1b\\x02a\\xa1:\\x9fH_\\x14\\x11-m\\xa7\\x81\\x08\\x0c\\xc5^\\\"$\\x0d\\x1c\\x158(\\xac\\x1e\\xd3P\\xbb\\x80<\\x08\\xf5A\\x90\\x9bFX8\\xb7&\\x92\\xf3\\x89^\\xe7 \\x0f\\xf8\\xb8\\x0d\\xc3'\\x1e\\xfc\\xe0Z<\\x8c\\xc3|n\\xb5\\x07\\xf4k\\x9b8Z\\x13E\\xc3!\\x9d\\xe3rW\\xc8G\\xcb\\x96\\x1c\\xcc-B\\xf9\\x88\\xf3\\xfc$\\x91aFZH\\xac<\\x04[\\x0c\\x07\\x10\\xf0\\x7f(\\x04\\x1bs\\xa3i<\\xab\\xc7-\\xdf\\x1b\\x0f\\x9c<\\x99\\xdf\\x99\\xf6/XJ\\xaa&T\\xc9\\xaf\\xaa\\xe7\\x95\\xd7\\x1a\\x8a-\\x95\\xb5\\xe4\\xb2N\\x07\\x06\\x9f\\x82<\\x81C\\xe0\\xe6\\x8aC\\xa5\\xa1W\\x184\\x085\\xec\\xda\\x83\\xb3,\\x85e\\x94\\xf1[.\\x8a\\xd9\\xad\\x128\\xe4I\\x0c\\xbe\\xeeU\\x93\\x1e|\\xdf\\xb3\\xe6+h\\xd2B\\xb4\\xd8S\\x04\\x99\\xb8\\xcf\\xaeR\\x16.\\xdc\\xea\\xf2\\xd1\\xa1\\x1eCV\\x9c\\x0f\\xef\\xac\\xb4\\x1d\\x12\\xf8\\xee\\xd8\\xd8W\\xdaOc\\x02\\x87Z\\xcc,f\\xf3\\xfd]gS\\x8d\\x0f\\xfc\\xe9\\xe9\\nL\\xc1D\\x03\\xb7\\x10z\\xb1r\\x97r<&.\\x12\\x89e\\xcf\\xb2\\xe5\\x92Pw\\x15e\\x86E\\x94\\x19\\x8b\\x9f\\xf3h\\x95\\xad\\xc3B\\xa0\\xd3\\x1c\\xee\\x02-\\xa3\\xc19K\\xdf\\x84\\xc1f\\xc3\\xd2\\xa6\\x05\\xae\\x98\\xabW\\xcfbG\\x1b\\xae\\xa7\\x0b\\x0dL\\xbc7\\x88\\x00\\xf0\\xbb\\x1a\\xc5\\xf0pOD\\xc0\\x91\\xf1o\\xf4\\xd9\\n\\xeb\\x00~\\x9do\\xd3yvN\\x07\\xa7\\xf1i\\xf8\\xff\\xfe\\xaf\\x9eU\\xc0\\xe9\\x07\\xe1\\x82]\\xbdZ\\xba\\xdah\\x10\\x8b?M\\xdd\\x80\\xf4\\x17\\x96\\x90U\\x01lS\\xf0\\xc0\\xc2\\\"oc\\xbf\\x0c\\x1e\\xc0\\x88(\\x0f3\\xb3\\x86\\xe3\\x86~\\xbf\\x0f8\\xf8\\xee!\\xec\\x99\\xb9\\x946\\xeef\\xb8Dz\\x1e\\xbd\\xd2Jd\\x9c\\xec\\xd3\\xa6\\x97\\x93Ww^\\x9a\\xcc\\xba,n&\\xd0\\xf8vieZ\\xacJ\\xa4\\xafJ\\xc6\\xd7\\xf7\\x13VE@\\x94/\\xd7CL\\x80\\xa8\\xba\\x80\\\\\\x11sSJ@1\\x94\\xe0\\xbc|4\\x00\\xefR\\xc0\\xfcn\\xb9\\x16t\\x0d{\\xde\\xd5\\xee\\x8b.8\\xbf::\\x82\\xd2\\xcf\\x90L\\x19\\xd86\\x1b\\xb5\\xe3\\x18\\xef\\xf8\\xfc\\xe8s\\x82\\x15)\\x88{A($\\x8f\\xea\\x1dFK\\xbe\\x87\\xaarN\\xb1\\xf8)q0\\x0e\\xc6\\xa3W\\x98\\x00\\xf9\\xba.\\x9f\\x9b\\xc0\\x04\\xf9{Q@*\\x10\\xd2M0\\xb9\\xa096p\\x85\\x88\\x8az\\x19\\xd3\\xaa1\\xde\\xad\\x11M+L\\xf3\\x89Hs\\xa0])z\\xe3\\xfc2\\x8e]C4\\x9c$\\x8d+\\xd9\\xfd>\\x04\\xe1b\\x9c\\xabs\\x0b\\xef\\x94<v\\xdc`\\xddQ\\x11y\\x8a\\xe4dZ*\\x02(\\xde\\xeb\\xde_\\xb3\\x00\\xecw\\xeb\\x02(\\xb7\\xbc\\xcf\\xbb\\x04e\\xd2\\xfa\\xaf^\\x82\\xb5\\xbf\\xb1-\\x81\\xf2\\xb2\\xfd\\xbc+PN\\x12\\xfcW\\xaf\\x00\\x1f\\xe0\\xad\\x8e\\x81\\xd0\\x1c4\\xcd?\\x90\\xa1{\\x90\\xad\\xae\\xb5\\x0b\\xfe(r\\x15J\\xee\\xaeZC|,\\xe3unm\\x81\\xf3\\xbfBk\\x87t@^\\xee:8\\xa1\\xfc\\x9dsR\\xfe\\xfd\\xee\\xe5K\\xf1\\xbbDg7\\xeft\\xc3F\\xd75\\xb7\\x89\\x19\\x06!k\\\\8\\x1dpp\\x94u\\xad\\xc6l\\x13\\xb3\\x84\\x85\\xa9)\\xf5\\xe1\\xdc\\x0f\\xa30\\x98\\xfb\\xab\\x16\\x99\\xd6E\\xaf\\xce\\xff:\\x95\\xd7\\x86\\x005\\xab\\xe8\\x92\\xc5s?a\\xb7h\\x19\\xf7\\xa5M\\xe3\\xd9fs\\xeb\\xc6qS\\xdb4>\\xf7\\xd7lu\\xdb\\xc6\\xcd#\\xaf\\xdb\\x17\\x91\\xe7\\xf1Mz\\xbdbcp\\xd4z9\\x7f\\xf5q?\\x8b\\xa2?\\xf5\\xb8\\x1bL\\xa7Z\\x1f\\xf7\\xc2\\xb1N\\xe3\\x8c\\xe9\\xc7\\xf8m\\xf9\\xf7O\\xef\\x9e\\xcbc\\xcd\\x0b\\xf6\\xf4\\x8f\\x97\\xfe*)\\xd4~Q)x\\xfa\\xf2\\xcd\\xf3\\xbb\\xa2\\x85\\xbas|\\x9b\\x81\\x7fN\\xfc\\xe1LE&\\x81o\\xa2h\\xc5\\xfcpF}T\\xf2\\xd2I\\nT\\xa8\\xe1k\\xe7^\\x8bmL8\\xc1\\x9a\\x82\\\\\\xd2\\xad0\\x91\\x0b4\\x06\\xb1KmN\\xb1\tE\\xb4\\xea\\x8b\\x16{,\\xf7\\xbbM_&\\x8c\\xd1\\xae/9\\xaf\\x17\\x96y\\xfd\\x1d\\x10\\x88%3\\xe2m\\xb3\\x9aV\\xf2\\xa6\\xed\\xe5\\xe344\\x94\\xb5o\\xe8\\xa1\\xd6\\x90|*c\\xba\\xc0\\x84\\xe9\\x820\\xfd; :\\x12\\xd7\\xe8\\xb2k#\\xe0\\x04v\\x87zS<o\\x90b\\x93\\xb8\\xd10\\xd6\\xd9&\\x13(b\\xd5\\xa6\\xc1\\x0c\\xb93\\xa7K\\xa5,\\xe7\\xe2\\xa6\\xddn0\\xf3z\\xe0\\x0c\\x08UX\\xed\\x13I\\xde\\xd1\\x15\\xe4X\\xdc\\xe8\\xf3\\x85\\xa38\\xa3F\\xf5\\xael\\xed\\x83r\\xf0\\xe8v)?M\\xfc\\x04\\x82n\\xd7\\xae\\xa8\\x06\\xd9\\xcb\\xfb\\xf2\\\\\\xeb\\xfa(|9\\x90\\xeb\\xc1\\x17g(~4\\x86\\x10\\xd0\\xff|s8\\x01\\xfd\\xcfn\\\\\\xa9\\xe4\\x13\\xbc{1\\x0b\\xb3\\xa1\\xa6]\\x8d\\xee\\\\5l\\x1c\\xfc\\x05\\x0b\\xdbqE\\xb0\\x002\\xd8\\xd0T\\\"\\x01\\xc9\tB\\x11:\\xe0\\xe6\\x06\\xf6\\xf7\\xf8s\\xa8J\\x1f\\xa2\\x89\\ne]\\xccK\\x87\\x83Q\\xbdmv\\xf9\\xef/\\xdd\\x18\\xa1\\xbai\\xb3\\xd8w[h\\\\\\xe4\\xc8-/m\\xeb\\x15jX\\x1d\\xf3\\xac\\xda\\xad\\x8a9&\\x02\\xaf\\x7f\\xd8x\\xbaZ\\xae\\xdb\\xed\\xd7\\x0c\\xbf\\x18\\xab!\\xb4\\xb0\\x0e\\xefdw[\\xdd\\x9a\\x95\\xb5;8\\xbb\\x1d\\xd4\\xedj\\x8b\\x84\\x14\\xecXC\\xd7\\x0f~u\\xc7\\xd3\\xc1\\xf6\\xdel\\x82i\\xf8\\xbc\\xee\\xd7\\x0f\\xa4\\x05\\x83\\x90gz\\xde\\xe7\\xa1aK7\\x98\\xfd\\xea\\xb2D\\x90\\x89,\\xa1\\xb7\\xc4dE\\x1a\\x94X\\xc9\\x96\\x9d\\xf7\\x0e\\xcd7\\x06\\xe1\\xd9\\xbe\\xf2\\xe7\\xcc}\\xf0\\xfe\\xc1y\\x0f\\x1c4\\x1f.\\\\g\\xf1t`\\xba\\xcex\\x9d\\x9c\\xfa\\x0f(F-\\xe9\\nD\\xcbJ\\x9b\\xcf\\x1b\\xc8\\xaf\\xbc\\x18&\\x18\\xebV]\\x81\\x9c\\x8e\\x137W<\\x1d\\xce`\\x02\\x01\\xdc\\xd7\\xb2\\x12\\x8a\\x86F^\\x0fF\\x1e\\xff\\xf0\\xaa\\xa6r\\x0f\\x86\\xfb\\xbcR\\xb9\\xf4\\x91\\x87\\xe1R\\xcak1v\\xd0d&\\xee'\\x9bU\\x90\\xe2\\xef\\xfe2\\x8a\\x9f\\xfb\\xf3\\x0b\\xb7\\x99\\x12\\x8d\\xfaY\\x98\\\\\\x04\\xcb\\xd4U]\\xa5\\x98@\\xd1`\\xc6$\\x1c\\xa4E\\\\\\x80a\\x0f\\xa2[t\\x84\\x8a\\xda\\x14\\xees(\t\\xe1\\xfe!\\xec\\x1bB\\xea\\xa0\\x8d\\xe2}\\xb2y\\xaa,\\xca\\xa0\\x16X\\xef\\xcc\\xf8\\x9cd\\xeb3\\x16\\xb7\\xe5{\\x88\\xe2\\xfc/$jHS\\xd4\\x89\\xfbAr\\xc2\\xce\\xfd4\\xf8\\xc8\\xfe\\xc5\\xe2\\xe8S\\xb8\\xa3\\xb3 \\xf4\\xe3\\xeb\\xa6)\\x80\\xceB\\x08\\xbfTgp&,l\\xc5\\x88]\\x82\\xb4mC\\xb9\\x82\\xeb\\xea\\x0eT\\x0fh4O\\x0b\\xa2\\xa1[\\x8c\\xa8\\xd4\\xf1#1\\xa0J\\xf1\\xad\\xc6#\\\\ko3\\xa2\\xbc\\xaf2\\x10\\x81\\xb9\\x0f\\xcd\\x85\\xf76\\xfd\\xe43\\xbf*\\xcdq\\xb8\\xef\\xf5\\xd3\\xe8\\x1d\\xe7G\\x9f\\xf9\ts\\xc5J4V\\xabY\\x99:\\x18+\\xb1\\x85b*%N&\\xe1o\\x9f\\xae\\x02?aI\\x1d,NG=p\\xce\\x82\\xd01$\\x11\\x12\\xc01}\\xd4\\x03'\\x9a\\xa7\\xa6*j\\x1d\\xa7\\xc3\\x01\\xa6\\xa8\\x9a\\x9bj\\x15V|:\\xdc\\xef\\x81s\\xc1\\xae\\x9c/\\xab\\x07\\xb0r\\xb5\\xc5\\xd2H\\xf0\\x8f?\\xb1\\xf3\\xe7W\\x1b\\xd7\\xf9\\xd5\\x9d\\x8c\\xa7\\xdb\\xdd\\xd9\\xc4\\x9d\\x8c\\x077\\xd3\\xe1\\xf6\\xe3\\x19\\xbfa\\xdf\\xcf\\xee{\\xeed|z\\xda\\x97\\xbfx\\x85){>\\xc3\\xca\\\"\\x17\\xee\\xe4FU\\xe8\\x1a_\\xe7\\xbfD3\\xeed\\\\\\xbc\\xc7\\xf3\\x1e\\xa8\\xf2\\xe9i\\xdf\\x9d\\x8c\\x83pys\\xcc\\xff;y\\xe1\\xddPQ\\xe8\\x877'\\xfe\\xc9\\xcd\\xc9\\xd3\\x13\\xcf\\xfbZ7\\xb9\\xc7\\x80\\xfc\\x98\\xadW\\xeb\\x9c=\\xb0K\t\\x8d\\xbc\\xf3r\\x15\\xf9_\\x84{\\xd6\\x85\\xdb\\xa4\\x15\\xe1\\x88\\xd6\\xedD\\x82\\x80\\xf1t\\xda'\\x9d\\xeaf{\\xb3\\xcfN\\xd2\\x18#\\xc1\\xc8\\x11\\xc2!H2BX\\x1eW\\xa8\\x91~\\x1a\\xbd\\x8c.\\xe5\\x89\\xe6\\xa4\\x04L\\xf8=>\\x06\\x11\\xfcw:\\xeb\\x81\\xd3\\xdd\\xceu\\xe7\\x0c\\xe9\\x95#q\\xc1\\xb8d\\xf2\\xa7h\\x91\\x1e\\xf0\\x9a\\xcb\\x9c\\xf4\\x10\\xa6G0\\x11wY\\xff\\xf5\\xab7\\xc7o\\x8f\\x7f~\\xfe\\xfe\\xf8\\xe4\\xc5\\xf1\\xc9\\xf1\\xdb_`,_\\x9d<\\xff\\xeei\\xf9\\x95\\xd3\\x0f\\xfd0o\\xee\\xc4?\\x811\\xb0\\\"\\x85!0\\x9b\\xcb\\xeeFf\\x04E2\\xe3\\x05\\x07\\x9cZBCX\\xe7\\xc5Dh\\x04\\xb7\\xe8\\x8aIB#\\xe6\\x9f\\xdb\t\\x8d\\x10\\xees\\xb2y\\x8c\\x0f\\xda\\xa8\\xd8\\xdf\\x89\\xd4p\\x89\\xd6\\xe8\\x1c\\x92\\x1b\\x86\\x81\\xd4hKk\\x14\\xf0\\xa4\\x0d\\xe2C\\xb3l(HN\\xfc\\x13\\xde\\x17$\\x97A:\\xbf\\x00\\xd7*;\\x98\\xfb\t\\xd3\\xe5\\x90cc-\\xd0\\x16\\x07\\x81\\xcf\\xcc\\x1dQcJ\\x8a\\xdb\\xa6\\xb1\\x93\\xa7'\\xb5\\x8d)1m\\xab\\xc6\\xfc\\x13\\x83<6\\xf7x\\xb6\\x1e7!\\xf4\\xfb\\x12\\xab\\xc5O\\xfeg[\\xad\\xe3\\x93\\x17\\x9fo\\xb5\\x8e\\xc3e\\x9b\\xd5\\xaab\\xa0/\\xb7Z\\xdb\\x9fu\\xb9\\xb6?\\xebzm7.\\x98\\xe9\\xb4\\xe7\\x9f\\x0f\\xfa\\x03\\xc3X\\xb4{\\xa9H\\xf6\\xf6 S\\xc9\\xbc&\\x10\\xaak\\xcaa\\x0e\\xbfP(\\x02fX\\x87L\\xfe,]C\\x99\\xfc\\n*\\xe4\\x97\\xa2\\x8e\\xb4\\xffy\\xdb\\xae\\xed\\xc7\\xd7N#A\\xd7\\xd8\\xe2\\xa4\\xf4\\x8b\\x93no\\xd3\\xd9\\xcd\\x14NO\\xd3Y\\xd7+\\xbc\\x1c\\xeb\\xbd\\x17~\\x10}H%\\xf7=\\\"\\x10\\xb1\\x85\\xfb\\xee\\xbfn\\\\N\\x8by\\xe5n\\n\\xdf{\\x13\\xcf\\x9b\\x14(\\xb9V\\xea\\xdc4X\\xb3$\\xf5\\xd7V+\\x96\\xcfN\\xac\\xe5\\xe1\\xca\\x83>\\xbbbsA\\xb3\\xa9\\xd2H\\x96~\\x01r\\xcd\\x10\\x07\\xc5\\xa23\\xd9\\x08\\xb7L\\xf3\\xb5\\xa7\\xf47H\\x81\\xa9yx\\x8a(\\xcb'\\xa1\\xe7'\\xf74\\xf3\\xee\\xe7q\\x1c\\xc5\\xae\\xf3\\xad\\x9f2\\xe5K\\xcbx\\x99)(S \\xf2\\x89v\\xd9t8#\\xda\\xa7\\xcb\\xa6\\xa3\\x19y+e\\xf4sg\\xd6\\x83\\x0e\\x9b\\xee\\xcer\\xf3Wv\t\\xbc\\x03\\x97\\xff\\xaf\\xff\\xee\\xed3W,\\x83\\xc9\\xff.\\x10\\xe1)\\xba\\xbc\t\\x8aN\\xd1e\\xd3\\xbd\\x19\\xc5\\xa5\\xe8\\xb2\\xe9\\xfe\\xac\\x07l\\xfapfC\\xc2(p\\xc5\\x80\\xb7\\xd3\\x873A\\x94\\x0ez\\xb0\\xe3=\\x81U\\xeeK\\xb9\\xf3\\xc4\\x83\\x15\\x1a\\xf6\\x99\\x90\\x14\\x88\\xa8\\xd1\\xddU\\x15\\xfd\\xd9\\xc0\\x8bM\\x1f\\xcfp\\xe1\\xf9\\x9e\\xed\\xb3]\\xb8\\x0f\\xee\\xfe\\x00\\xee\\xe3j\\x0df\\xd0\\x85\\xae\\xcb\\xa6\\xc3\\xe1\\x8c\\x83\\xd9@\\x8a\\x00qC\\xf4/\\xb77\\x9e\\x88\\xcb`]6\\x0dzV\\x1eFS\\xdf\\xda\\x82e?a\\xe9\\xdb`\\xcd\\xdce\\xff\\\\<y\\xb0\\x8d\\xc13\\x97u \\x1c\\x84I\\xea\\x87s\\xf6j9\\xc6\\xeeZ\\x10h5\\x87\\x8c\\xe3\\xf4\\xe37\\xaf\\x04Z\\xb7:\\x00|&<|K,Cy\\xf7\\xbf\\x1c\\x86q\\x0e\\x0e4\\x8b\\x08\\x9b\\xe5\\xd3\\xe7[\\x05m\\xfa\\xf1uiX\\xb4D\\xfb\\x8f\\xbc\\xfe7h\\\"\\x9c\\xf7\\ns\\x1f\\xc9\\x18>\\x93?\\n\\x0d\\xda\\xa5\\x0b\\xce\\xd3o\\x9e}\\xfb\\xfc\\xc5w\\xdf\\x1f\\xff\\xe3\\x87\\x97?\\x9e\\xbcz\\xfd\\xdf?\\xbdy\\xfb\\xee\\xe7\\x7f\\xfe\\xcf/\\xff\\xf2\\xcf\\xe6\\x0b\\xb6<\\xbf\\x08~\\xfb\\xb0Z\\x87\\xd1\\xe6\\xf78I\\xb3\\x8f\\x97W\\xd7\\xff\\x1e\\x0cG;\\xbb{\\xfb\\x0f\\x1f=\\xee>8<\\x0dOc\\xe7\\x96\\xec;\tx\\xbe\\xc4\\x86\\xddY\\xfbm\\xc1\\xd3A\\xa3b\\x9cc\\xc7\\xc8\\xa2\\x1e\\n)\\xf2_H\\x1eCa\\x9d\\x8e\\xa8\\xe3\\\"b\\xcfr3vi\\xbcN1\\x00a\\x7f\\xb7Qk\\xc4\\xe0\\x00\\x06\\xad4?(\\x13\\xdf7\\xbe\\xb6\\xe2\\xc1\\x18\\xfe\\x0b\\x1e\\xa1\\xf0\\xb9\\x08\\xf6\\x9f|q\\x06E\\xe9\\xc5\\xf44>\\x0d\\x0fgB\\x86a_\\xf4\\xa0v[|\\x8c\\xffc|\\x95\\xd8\\xb7{n\\xd1\\x07)\\xff\\xee\\xc1\\x13\\xe0\\xab\\x9c=\\x01\\xd6\\xedz\\xc0\\xe0\\xbf\\xd0\\n\\x8c\\xe4%\\xa4\\xce\\x99\\x8b\\xfc\\x10pt\\x04\\xc3}\\xd8\\x82\\xd1\\xde\\x9e\\xd7\\x03\\xbd\\xf8Q\\xb9t\\xb4\\xb7\\x07[\\x90p\\xa4\\x9f`\\x12\\x90\\x83\\x03\\xd8\\x87\\x1b\\xf0\\x158\\x04\\x12\\x1c\\x98\\xe9r\\x15[4\\x00\\x19\\x087\\xc3\\x81\\xdd\\x87}T\\xd1|\\xd2\\x90`\\x0c\\xc3GJ\\xd0Slk`lk$J\\xf1S\\xe1q\\xc8\\x97F\\xaf\\xb3\\xab\\xbe\\x8c1\\xe9\\xc62\\x8e\\xd6\\xea\\xc1\\x9d#O\\x80\\xe8\\x1e\\x1f\\xe7u w[\\xa9\\x08\\x06\\xf6\\xe0,\\x0e!\\xd0\\xf6Z\\x93\\xb6\\x00\\x1d\\x93s\\x8b\\x15\\xa1X\\x80/k\\xc45~\\x0d\\xae\\xb1@\\xe7N\t:\\xf1\\xe4\\xfb\\xd3\\x00\\xb7\\x8fo\\xfa\\xfe\\x0eR|Z\\xe9\\xc8T\\xba_*\\xdc\\xdf\\x81-@s\\x1c>#7\\xe0\\x10\\xfb\\xc8\\x83.\\xa4SfW\\xa8\\x16\\x01t\\x87\\xf4\\x87\\x9fyD0\\x86Q\\x0e\\xae\\x85v\\x06\\xa6vv+\\x85\\x07\\x07P\\xeeq\\x7f\\x17\\x1b\\x1e\\xe6\\xc0\\\\h\\xb9:\\xc0\\x83\\x83J\\xc3\\xfb\\xbb\\xc5\\xf6z\\x10\\x17\\x01O\\xfd\\xfad\\x02\\xc2\\xca\\xceVd\\x7f\\xc58\\x93U\\x02\\xc1*,\\xbc%\\x89\\x16\\xd5x2X\\x9c9>\\xf1\\xca\\xb7\\x19\\xf2\\x97\\x985\\x12\\x83[o\\x03C\\x80\\xca\\xfc\\xb8\\x91>z\\xae\\\\\\x83\\xf9\\xe1\\x0b\\x9f\\x90 \\xd8\\xea6\\x16\\x88|\\xa1\\xf3)\\x9b\\xe5I\\xc0\\x94\\xa8\\x96\\x16|\\xe6\\x08f\\x15E\\xb2q\\xb3=\\x87\\x08\\x84\\x13\\x84\\x10\\xd7\\x1b\\xf0\\x04\\xa2Id\\xd3j\\x08\\nY\\xdfo\\xecZ\\xfe\\xdd\\xc9P\\x07i\\x9f\\xe6>x5a\\x81\\x90\\xa8;1k^\\x16\\x11\\xce\\xa2U\\xd2\\x0e\\x058\\xc5SyG\\xfa\\xa6*\\x9c\\xf8\\x93<\\x8cZ\\x1c\\xfa;\\x9e\\xe1\\x8d\\x1f\\xc4\\xc9\\xdf\\xeb\\x10\\x0b\\x7f\\xdd\\x9a\\x83\\x9a\\x89\\x19=\\x8dc\\xff\\xda\\xf5\\xa5\\xdb\\xa3R\\xf4\\xf0\\x13\\xec\\xdf\\xed\\x04\\xfbx\\x82\\xcd'7h}r\\x03\\xf4\\xe1G\\x93!\\x0d\\xe1~`\\xd7\t\\xff\\xba\\xec\\xd6ok%\\x9b\\xb2\\x19Ge\\xd1t\\xc0o\\x19\\xfcw6\\xfb\\xd3\\xa1\\xde\\xb2\\x8f&\\x9a\\xfac9\\xd4\\x99\\xf0\\x06\\xb6\\xeccT\\xd8\\xc7\\xcc\\xb8\\x8f\\x99m\\x1f\\xf9ne\\xb8[Ae\\x89{\\x10\\x89\\xb5\\x0b\\xc4\\xda\\x05\\xb8vV\\\"&\\xfa\\xeb\\x0fp\\xf1\\xd6\\xbe\\xe51N\\x98Uun\\xf6)\\xfcrg\\xb8\\xf6\\x82\\x0dB\\xb0\\xc4\\xfe\\xd2\\xee\\xb1\\xb0'L\\x10\\x15\\xa2\\x0d\\xa7lV{\\\\>/\\xc4\\xdb\\xf0\\xfc\\xdf\\xcd\\x8f\\xf2\\xb7\\xe4A\\x16.\\xd82\\x08\\xd9\\xe2\\x13%/5\\xcbp\\xfbE\\xf5*\\x19\\xe6o\\xcb\\xcf}\\x8c\\x82\\x85\\x8c(V\\xd7\\xbb\\x89\\x93\\xab\\x13\\xfa\\xfd\\xcd\\xbc\\xa1\\x7fK\\x1e\\xc4\\xec\\x9c]}\\x11U\\xca-\\xe4f\\x01F\\xa6\\xc1zm.'\\xe5Mg\\xa6\\xb19\\nxp\\xfa\\xc0\\x9d\\x9e\\x07\\xeb\\xd9}\\xef\\xeb\\x07R\\xb3a\\xae\\x1e\\x1bb\\x0c\\x80\\x18\\x94\\xf3@\\x8a\\xdd\\x07V%\\x02i:\\xa4\\x05o8\\x1d\\\"\\x1b&\\xd5\\x07G\\x9c%mq]\\xf3\\x9e\\xd0\\x9aw\\xcar\\x03\\xa0\\xb8`\\x0b\\x947Si\\xe5K\\xdf\\xc1\\x7f\\xce\\x8a\\xcbS\\xa2-:\\xa9\\xdf\\xca\\xab[0\\\"\\xea\\x81e\\xc5P\\x93\\x95kFY\\xaf\\xcc\\xc7|\\\"\\x92PT\\x1au\\xd0\\xd6\\x14\\xe6\\xb6\\xf8\\xa4vC\\xf8Zu!\\xed'Q\\x16\\xcf\\x19ty\\x81ua\\xd3\\xfe\\xf9*:\\xf3WB\\xe7\\xd7=\\x04\\xe7\\x9cB\\xf5\\xe5\\xa9\\xe7\\xf3Wkz\\x15\\x9c\\x87Q\\xcc\\x9e\\xf9\\x89\\xfe.\\xe0\\xef\\xd8\\x97BfO\\xb4J\\xea~\\xd1\\xa21]\\x06\\xe1\\\"\\xbaT@A?\\xfb,\\xd9\\xc4\\xc1\\xda/\\x19\\x06\\x06\\x8d\\x98\\xd1\\xa8N\\xf8-y \\x07\\xff\\x17\\xe3\\xc6\\xaa\\xbaF\\xfe)\\x18p\\x11\\x06\\xf8\\xe6{\\x16\\x11!\\xc8\\xf48}4\\x0e\\xe3g\\xa1\\x9eM\\x8f\\xfd\\xf0\\x9c\\x8dkyo[TQq8^\\xc7\\xd1y\\xec\\xaf\\xe9P\\x84\\x18\\xfb\\x8e\\xef\\x98\\x0c-v\\x16-\\xae\\xb58<\\xce\\xf3+\\x0e\\xf9I\\x10\\x85oR?ek\\x16\\xa6\\x8eVu:\\x98\\xa9&\\\\\\xe7i\\x1cG\\x97/\\xc4\\n\\xe7_\\x96?`\\xea\\x0d}\\x8bN\\xcf\\xb7\\xfd\\xca\\xc0\\xe6\\xebZ\\xb1\\xba5hD\\xd4\\x9f\\x84\\x8eEt\\x9c\\xe6\\xcd\\x0f\\xb4\\x8d\\x0f\\xeb6\\xbe~\\xd3\\xff\\xb0`s\\x9b\\xc3\\x0b\\xdej\\n\\n\\x88\\x81\\x95\\xdb0\\x14\\xbfu(\\xe0\\xbbc\\x84\\x82\\xbc\\xaa\\x82\\x02^\\xd7\\n\\x04\\xc5\\xfae \\xe0\\xc0v\\xeb\\xaf\\x0cf\\x10/\\xfc`\\xc5\\x16\\x90F\\xca\\x16B!\\x0c\\xbb6\\xc5\\xd8\\xc1\\xc6\\x8f\\xfdur\\x0b\\xab\\xd0H\\x06T\\x0d\\xfd\\xb5\t>\\xc5\\x0di\\xec\\x0cW\\x1c7\\xba\\x07\\xce7\\xabh\\xfe\\xa1t\\xde\\xec_\\xe1\\xf2Mp\\x0d\\xe4\\x02\\xbaQ\\x0fB\\x199x\\x8a\\x96\\x0b\\xfc>\\x9e\\x0egt\\x01\\x0b\\x95\\x8b^\\xdd\\x91\\x08\\x02#F\\xe5\\x9f\\xd2g\\xf5&4w\\xbe\\xa1\\xe5\\x00\\xfe\\xd4;Z\\xdd\\xba\\xcat\\xed\\xcb\\xda8X<\\x00\\xf6F&\\x8b1\\xf7\\xd1N\\xa98\\xa3\\xda\\xe5b\\xbfN\\xdaW\\xac\\x9a4\\xcb\\x15J\\x08\\x0f\\x0e\\xe1q\\xb1h\t\\x870,i\\xb3Vp\\x08;\\xa3\\x12(\\xf0\\xb2\\x9db\\xd9\\x05/\\xdb-\\x96-x\\xd9^\\xb1\\xec#/{X,\\xbb\\xe6e\\x8f\\x8ae\\xe7\\xbc\\xac4\\xbe5\\x1c\\xc2ni,\\xefyY\\xa9\\xdf3^V\\xea\\xf7\\x12\\x0ea\\xaf\\xd4\\xc7\\x15\\x1c\\xc2~\\xa9\\xbd7\\xbc\\xac4\\xb7\\xe7\\xbc\\xac\\xd4\\xc7S\\xbe|%7\\xc4W\\xbc\\xac\\xf4\\xedo\\xbcl\\xbfX\\xf6\\x01\\x93\\x15\\x96*\\x1eca\\xa9\\x97\\x1f\\xb1\\xb04\\x95\\xb7ph\\x80\\xf8\\xc1\\x18\\x9c\\xd3\\xd3\\x81\\xe1\\x1ez\\x88o|\\xc3\\x9bG\\xf8\\xe6\\xcc\\xf0\\xe61\\xbeI\\x0do\\x86\\xd4Qhz5\\xc4W\\x1fM\\xafF\\xf8jiz\\xb5\\x83\\xaf\\xca\\xd4\\x1c\\xff\\x1b\\xd1\\xd0\\xcbBh\\xfe\\xb7\\xb3;\\x86{\\xa7\\xa7\\xce=\\xc3\\xd8\\xa9\\xaf\\xd3Scg\\xd4\\xdb\\x89\\xe9\\xdd>M\\xed\\xbdi\\xa5F;\\xd4\\xeaK\\xf3Kj\\xf5uI\\xc6P\\xac\\xfa\\x8c_\\xd6\\xce\\xb5\\xd3\\x03\\xe7\\x17\\xfe\\xbfk\\x96\\xe0\\xb3\\xf8\\xe7\\xf9\\x1b\\xfe\\x0f\\xd2\\xbc\\xce+\\xfa\\xff\t\\xff?>\\xd2S\\x84\\x8f\\xf4\\xffWX{\\xb9\\xc4\\x8a\\xe2\\x9f\\x17/\\x9c\\x99)\\x90\\xc6\\xeb*\\x92\\xcc\\xc5\\xb5%\\x0d4Y\\x9e\\x1c\\xd6z\\x93\\xf5(X\\xc6ho\\xcf#B\\xe8\\xca\\xa1h\\xbd\\xa3b[\\xca\\x02\\x19\\xab\\xef\\xef\\xed\\xed\\xc8\\x0f2\\xf1\\xc1\\xae\\xe1\\x033\\xc9\\xde\\xa1FvG\\x8fw\\x1f\\xef?\\x1c=\\xde\\xf3\\xbcb\\xf8\\xdby\\xb4`\\xb0\\x89\\x82Bz\\\\\\x8av\\xb8\\xf6\\xafe\\xda\\x85\\xf3\\x98\\xf9)\\x8b)\\xf3\\xc2\\xe0\\xea\\x85\\xf83\\xd1\\x0d8\\xd0wb\\xa0\\x8f\\x8a;[\\xf8%o\\xbc\\xd3SG\\xc4p\\xcc\\x836\\x0e\\xf0\\xfbm\\xc5'{\\xd0\\xd5\\x987S\\xb0\\x92\\x9f\\xaa\\x9b\\xa5\\x85\\xac\\xc6\\x9d\\xc9crG2\\\"\\xb6\\x0c0\\xfd\\xa3\\x9f^\\xf4\\xd7\\xfe\\x95\\x8b\\xf9\\xc1E\\xf1\\xcd\\x0d\\x8c<\\x19\\xda\\xfbC\\xb09\\x0e?\\xfa\\xab`Ami\\xbf\\xf58\\xdc\\xcbUt\\xf9\\x92}d+\\xa4`\\x83\\xe4$\\xe2kz\\xee\\xa6\\xf9\\x1bO\\xfa\\x1fie\\xb2\\x97\\xf4z%\\xe2m\\x17\\xaeU\\x1bE]\\xcd\\xffkH\\xdfU\\xe0\\xdcrw\\xfe\\xff\\xfca\\x919\\x87\\\"\\xfb\t\\x19iP\\xc6\\xd5\\xb8\\xa40`J'C\\xce\\xff\\xd1\\x13\\x8a\\x88:\\xa4\\x8c\\xe4\\xf14\\x10Z]q\\x16\\xd84C\\x0f\\xeeN\\x87\\xc8\\x99,7]\\x1d\\x91A/\\xff\\xcc\\xc0\\xd5r\\xd0\\xc8\\x94\\xff\\xb6\\xd7\\x03\\x97\\x12\\xb8\\x95B\\x90\\xf7eV!\\xde\\x0foOdt\\x98\\xf7u7\\xcb\\x1e\\xf8\\xd4\\x99\\x8f\\nk\\xfd\\xd5\\xd4\\xe7\\xe3\\x0b\\xa7\\xd9\\x0c\\x0e\\xcb\\x91oA\\x13p\\x17\\xe1\\xd9\\xd5@\\x8c\\x03\\x0e\\xb6\\x98H\\xf3H\\x05;Q\\x9c\\xfe\\xc0\\xae)\\xd5\\x8c\\xfaQ\\x8c\\xde\\x1e\\xb2\\x7f\\x06\\x0b\\x19=]\\xfd\\xba\\xb9\\x81G2\\xf6y\\x18\\xfd\\xc4\\x96\\xd4\\x86x\\xd4[\\x08\\xa3g\\xd1z\\xe3\\xa7?\\xf2\\xe3Lu\\xb4\\x02\\xbd\\xe6<\\xe2\\xd0\\x8d\\xeeV\\x97b)\\xb5\\x02\\xbd\\xe6\\x1d\\xe2\\xc5\\xcb\\\\Du\\x9f<\\xbf*\\x86\\x98\\xc7\\x9cWa\\x1e\\xa6\\xbe\\x98I\\x9a\\x97,2\\xfe\\x85\\x9f2a\\xa7@\\xa5Y\\xc2\\x16\\xdf\\xeao\\n\\xc1\\xfdL8\\xe2\\xc4x\\x98\\x10\\xe8\\xc5i\\n\\xe0\\xb0\\x14:\\x96y\\\"w1)\\xe6\\xb6\\x87\\x04\\xd7|l\\x89f\\xaa\\xf4\\x04\\\"8\\x80\\xe4\\x89\\x879\\x1a\\xd0j]\\xa6\\xe6\\x17n|\\x98\\xf8?\\xf2\\xd0\\xda\\x87\\xfcCD\\n\\x0b\\xd1A\\x82\\xa9\\xdd\\nox\\x97\\x14\\xc65Bc!z\\x0eu!\\xc4\\xa9\\xe0\\x03C\\x01\\xd7\\xddC\\x08<>\\xc4\\xeea\\xd9\\x9dL\\x80\\xb0_\\xbbD/\\xebbo\\x9bc\\xebJty\\x1f4\\xce\\xce\\xd4\\xf6\\xb7U\\x14-\\x19\\x0e\\\\\\xb1\\x15\\x87>z\\x9c\\xd76\\xf4okC;\\xa3b`\\xaa\\xe1h\\x1f\\x99\\xf7\\xfda9\\xf2\\xd5\\xe8\\xf1\\x1e\\xff\\xc5)\\x94\\xdcm\\x82\\x93$\\xe2\\xd7\\xcd\\x0d\\xec=\\xdc\\xd9\\xdd-~\\xc7/\\xe3\\x1d\\xfe\\x8b\\x92Q\\xa8\\xaa\\xbc|\\xbf\\xd4\\xf5p\\xb8;\\x1c\\x0ek'\\xf2\\xc2:\\x11\\x9cb\\xa9\\x1fl\\x99?\\xbe\\xcf\\x1f\\x9f\\xe6\\x8f\\xaf\\xf2\\xc7\\x0f\\xf9\\xe3\\x8f\\xf9\\xe3e\\xfe\\xb8\\xa8\\x1d\\xd6;\\xeb\\xb0\\x1e\\xfcz\\x1a\\xde\\x07\\x19\\xc8D\\xdfn\\xf9\\xc4\\x0f\\xd27\\xd5X#\\xbfs2\\xa7X\\xf4\\x0b\\xe7U\\x8aE\\xff\\xe4\\xb4M\\xb1\\xe8g\\xc0\\x88\\xd2\\xd5A\\xfeP\\x1fg\\x9d\\x8f#\\xd2\\xed\\x9b:\\x86\\xe8'sK\\xf9\\nO:\\x85\\xfa\\xa8\\xbe}Kx\\xa0R\\xce)\\xd5\\x7f\\x8b\\xec\\xa3\\x85\\x04%\\xa5\\x9d\\xc4x<\\x9do]\\xba\\x8c|,;\\xcb\\x1f\\xdf\\xe4\\x8f\\x97\\xf9\\xe3\\xfb\\xfc\\xf1i\\xfe\\xf8*\\x7f\\xfc\\x90?\\xfe\\x98?.\\xf2\\xc7\\xeb\\xfcq\\x9d?n\\xf2\\xc7\\xe3\\xfc\\xf1*\\x7f<\\xcf\\x1f/\\xf2\\xc7\\x8f\\xf9\\xe3\\xf3\\xfc\\xf1713{V\\x17C\\x82\\x07\\x83<H\\xd9:\\x0c\\x08\\xafjX\\xb6\\xdb\\xad\\xd3ju\\xfe-\\xd0\\xae\\xd6\\x7f\\xa4\\x05\\x02\\xfa\\xd9,\\x01\\xe6;\\xf7\\x8c\\x8f\\xfd\\x85\\xd1H\\xcaF`\\xdfy\\x98\\xc6A\\\"\\xe2[z\\x04\\xac\\x83\\x1e\\x90\\xd2\\x83\\x83\\xe8\\x1ciV\\xd8\\x86\\xb7x\\xbb\\x1c\\x91\\xf1\\xae\\x03\\\"k\\xe6\\xf4-\\xbf\\x19f=\\x04\\xcc\\xc8\\\"\\xe4VL\\x05_\\xa2O]\\x10\\xe3A\\xc2Q\\xe2\\xa0\\x1b\\x87\\xfa\\x95\\xbd51.\\xa4n\\xe60\\x81\\x10\\x8e\\xe01\\xe49\\x96~\\x861\\x96\\xff\\x13\\xc6\\xf0\\x0b\\x8ci\\x94\\x9d\\x80^~\\x03c\\xf8\\xbd\\x16\\xb5}\\xa7a\\x8d\\n\\xbf\\xd0_d\\xeb\\x02\\xedmS\\x84\\x90\\xe6\\x97\\x955\\xbf\\xce\\xbd{\\x16\\xadl\\xa7D\\x90Q\\x1c\\x7f\\xbe$\\xcf\\xf2\\xb0\\x03\\x9a{\\xe9=\\x8c\\xc6\\x0e]\\xfed\\xd6&G\\x8a\\xba\\xc0\\xabWg`\\xc2\\x1a\\x7f\\x01\\x91=@'2\\x057\\xa2Z\\xa0\\x87 t\\xb5J=\\xd8\\x1d\\xa8\\xe4\\xc8\\xf4\\xd96D\\x96~8\\x06\\xc4\\xdcC\\x1a\\x83\\x03G\\xbc\\x17\\x0c\\x0ewt\\xa8\\xbf\\xa8\\xceN:\\\"\\xff\\xe0\\xb2\\x1ee,\\x0eD\\xa6\\xe6L\\x936Z\\xdd\\x94\\xc5\\x126\\xf2O\\xf2O\\xf2Q\\xe6\\x83\\x00\\x05/\\x16\\x19#\\xd2\\x9cV6\\xa4(h\\x94\\x1a\\xc8n\\x7f\\n\\x02&\\xcaYe\\xc3\\x99J7\\xaa\\x81\\x82-\\\\#\\xd4*m\\x00TF\\xa4\\xea\\xe9\\xb5Z\\xbc\\xa2\\x17\\xf57\\x8d\\xbe\\xd3\\xcc<\\\"\\xfc\\xfa\\xf7\\xc6\\xaf\\x05l\\xe7\\xae.\\xf7\\xd0\\xc9\\xe5\\xde=\\xc7\\xb3\\xc1;\\xc8\\xd6\\x7fin\\xfd\\x86\\xb7\\xfe5%\\x05$\\xb8\\xe1\\xcd~\\xef\\x9e\\xf0\\xa2\\xc8\\x96\\x13\\x11[\\xffgs\\xebG\\xd6\\xd6[\\xc3\\x1b\\x14yw8\\x84\\x07\\xeei\\xd8\\xf5\\xdc\\xe9\\xaf\\xa7\\xe1\\xec\\xbe\\xf7\\xe0\\xdc|\\xaa\\xf4?\\xe4\\xc9\\xfd\\n\\x7f\\xe1\\x11o\\\"0\\x8b\\x0f\\x13\\xf0Q\\xcc \\xbc) \\xe8\\xaf\\xfc$=\\xe6_P2\\xf0\\x7f\\xa8`t\\x83\\x1e&\\xdbf\\x9e\\xe5L\\xeb\\x7f\\xc8\\xaa\\x9f\\x862\\xfc\\xcb\\x00}>9\\x8a\\x97\\xbf\\xed\\x10\\x0bb\\xf2\\x06\\x0e[\\xff\\x13a\\x05c\\xdd\\xef\\xd7\\x9a\\xcdS\\xff\\xe3m'@\\x91\\xdd\\x9a'\\x02\\xe2\\xe6\\x8a\\xa7\\xa3\\x861\\x83\\xca\\xffB\\xb3\\x9c\\xa3\\xfa'\\xe2'=\\x81.\\xe7\\xf50\\x9b=_\\x07Q\\x01&\\xfcqL\\xc9\\xeb\\xa0\\x0b\\xffp\\xe7\\xc4L\\xa2\\xd2\\xa2\\xb63{\\x98K\\xc8A1\\xb2V\\xfa\\x83\\x83g\\xe65A\\xfb\\xcf\\x8d\\xd0~\\x0f3\\x934+\\xf7\\xe4\\x9fb\\xa4s\\xaa\\\\p\\xcaV\\x1aI\\xc8LK\\x84\\xd0\\x111h\\xfb\\x80\\x0e;\\x9c]\\xdb\\xdf\\x19\\\"\\x11P\\x8dO\\x1a!WL\\xdf\\xec\\xef\\x8c\\x06\\x90\\x07+\\xdd\\xd9\\xdd\\xe1\\xcc6\\n\\xa6^\\xbb\\xc3\\xc1\\x08\\xbd\\x96\\x19lS\\xeb\\x949f[|\\xd6%\\x1e\\x8e/\\x1b\\xa7\\xdd\\xc6$\\xf3z+\\xcce\\xbb\\x87\\xd0AJ\\xe6\\xdf\\xfc\\xe2\\x99@:\\x8df0\\xa6[\\xee\\xb5\\xd9\\x1bM\\xff\\x93\\xba\\xd4\\xba=\\xf3(}\\xa8\\xb9!\\x11\\xfc\\xc1\\xbee\\x05\\x99n\\xb0\\xdeDI\\x12\\x9c\\xad\\x84\\xb7\\xfb\\x18\\x02!\\xaa$\\x0b\\x10\\x8a=\\xe64\\x11v\\x7f\\xb8\\xf5\\xfc\\xfc\\xd7\\xf64Rp(\\xe95)\\x00\\xc4\\x90k\\x06-@\\\\D&\\x85XRF\\xf9E\\xc8\\xcf\\x1b%\\xd46\\x7f7\\\"|\\xa4\\xde\\xf1Q8]\\x07\\xb7K\\x1e\\xcam\\xbalNC\\xa7v\\x86\\xdf[\\x19a\\xdb\\x909l\\xe4(u{\\x88\\xb9<k\\xfb\\xf8\\x87q\\x15\\xd1\\x14As\\xb7\\xd6\\xd1\\xab\\xa2\\x0dJV\\xc3\\xba K^-0\\xfd\\x15\\xd0\\x8bT\\x93a\\x0d\\xe8\\x9a\\x18\\x10_\\xec8Op\\xbf4D\\x8bWKHW\\x8b\\xc7\t=L\\x04%\\x8d\\x9728\\x82\\x08&\\x90\\xc1\\x98xk\\x91\\xa2\\x93\\xac\\xba\\xa4\\xe4*\\x16R\\xabXH\\xad\\xb2\\xaa\\\\U\\x91\\xfa\\xa2\\x81\\x9e\\x9e\\xe8T\\xf5)\\xbb\\xc3j\\xbah\\xcc\\xcb\\xb3=\\xc9b\\x12\\x91\\xc1\\xb8T\\x193\\xfcVB\\xf9\\x996\\xe3_&-6H\\x9d\\xb5\\x94\\xb3\\x8b\\xc0\\x16\\x86\\xd5\\x17\\xcb\\xcb/\\x15\\xb2\\xd5Gx(JE\\xc7e\\x022\\x17\\xa5gp\\x00s\\xfe\\x8f\\x99\\x82D\\xd6\\xd1]r.o\\x9a\\xcd\\xbc~\\x1e\\xdc\\x80\\x83\\xc8\\xb2\\xaf\\x8c\\x0dH\\xca\\xddY\\x96j8d[\\xc0!I\\xa5\t$\\x1c+\\xebEK\\xd0?R\\xed\\xa8\\x96K\\x1dq\\xd4W\\xc7\\xe8\\xa6R\\xbc\\x0b\\x13X\\xe2\\xf3\\x18\\x9c\\x89\\xd3\\x83e_\\x19%\\xd4]+\\xbc\\x8d\\x15\\x89D\\x85jd\\x8a\\xcd\\xcch\\x1czL\\x9c\\x9e\\xd5v\\xc2']\\x80\\xde%9Ch%\\xfc\\xce\\\\\\xd5`q\\x8b\\x04@\\xffC>/\\xa9\\xf4\\x85a,\\x8a\\xf8\\x99\\xb2\\xf1/E6\\xfe{G\\x98\\xa2_\\xd0\\xfe1\\xf8\\xf39\\xdb\\xa4\t\\xaa\\xde\\xf0\\x06^QN0\\\\\\x81{M7MqZ\\xd3\\xd5\\x8cff\\xbfy\\xecW\\x8ad\\x87cc\\x95\\xda\\x90\\xd3\\x06\\x83,#\\x9b\\xdf\\xa9\\x97\\x8f\\xfeOA\\xc6G\\x87\\xbe\\xcc\\xb3\\x17\\xf4\\x07r\\xc8a\\x8f\\x8er\\xd8\\x83\\xce\\x10C\\xdf\\xa8\\x9f\\x03Cj\\xe0\\x04\\x14\\x94P\\x13\\xe5$\\xad\\n\\xf9\\xe9,\\xed\\x01E\\x85+r\\xb9\\xe5\\x14\\xa6\\xbc\\xf9y\\x0fV=\\xb4\\xff\\xa8\\xbaIq\\x00Ea\\x87z\\x85\\xbe=\\xf2MU\\\\\\x86\\x02;W\\x93P\\n\\x8dX\\xae$Q<A\\xe8\\xa1\\xc6,\\xf7\\xca\\xc0\\xc5\\xda\\xda\\xe2GP+@\\xb1\\xcd\\xcd\\x0d\\x08A\\xb8\\x14* b8\\x02\\x91_9BQ\\xa9'\\xc4RiI\\xfb2\\x9d\\xcf\\xbc|\\xf5\\x9d\\xfb1[\\xbe\\xe70^RG\\xd6(\\xaaqZ\\xd8v\\xc7\\xd08\\x0e\\xc1T~H\\xf9\\xc3-\\xeb\\xea\\xd1\\xceQ\\nY]\\x7f)vY^7\\x13p;\\x15C&\\x83\\x84H\\xfe\\x15\\x85\\xcb=}\\x83k\\xccYI\\xbb\\x97\\xfa5\\x0c\\xde\\xa2\\xa4g\\xb5%\\xc2G\\\\#\\xfd\\x0f\\xa4J\\xd1\\x83\\x05>\\xbbM\\\"@-al~\\x13\\x18\\xda\\xd1\\x8a\\x1aZ\\xd4?.\\xa0:\\xa5\\xee\\\\g\tZ\\x12\\xf8pF\\xa9n([y\\x9d\\x05\\\"\\x14D\\xacDB,\\n\\xfa\\xb6\\xec\t\\xf1`C\\x0fE\\xf6\\x9c\\xd5\\x10\\x1b\\xceW&\\xe2@\\xedb\\x1c$\\xa1\\xd6\\x12\\x91%\\xc2)'p\\x16\\xd3h6\\xeb\t\\x1cCf\\x80>\\xe5`\\xa7\\xff\\x08\\xee\\xf1t\\xb58A\\x02\\xf8\\xf1l\\xf0\\xa7\\xdc\\x9b\\x823\\x1e2\\xeb\\xbb\\xac\\xb3\\x14[\\x875\\x8b\\xc9\\xcc'\\\"r\\xd3\\x84\\x13\\xaa\\xe2\\x11\\x1c<x]\\xf9\t\\xa70\\x08\\x0b\\x14\\xe6\\xa6O%\\xa1i\\xcc\\xef\\xd0\\xf38\\xefy\\x0c\\x0e\\x87\\xeb\\xee\\xa1\\xde\\xbb\\x8d\\xdb\\x91\\xb8\\xf8BC\\xc4\\x1bDm\\xff\\xf9\\xc3\\x10iO\\x9c39\\xa3H\\xe2\\x167\\xc7#[\\n\\x8f \\x91G\\x9ds\\xde\\xaczZ\\xeb\\x8ej\\xc9F\\\"i8\\xa7\\xf3\\xe6s\\xbalyN\\xcb\t\\xb4\\x97\\n|K\t\\xb4\\xfd\\xaa*~\\x82\\x0c8rM\\x02\\x83\\xd15\\x84\\xba]\\xa7\\x870\\x81\\xc2\\x84)?\\x1f\\xcbi\\x9cC3N\\xb63\\xa4\\xcb/_\\xd2\\\"Lj\\x8d\\x11\\x80\\xf9\\xf9\\x16c2Q\\xdbp\\x90\\xf0\\x1e;\\xc6:\\xc4^asr(Yq(H\\x9a\\xfb\\xed\\xa1i\\xaeA\\x93\\xf3\\x1f\\xdek\\xc2\\xfbo\\x84\\xa8&pr\\xc0\\xd1\\x80\\xaa:\\x86\\x1c[\\x1a/\\xe6\\xc2\\xd5R\\\\\\xde\\xbb\\xdc&\\xb9\\xebo\\x1dd\\xfa\\x122k\\xa0M3\\xdb\tm6::\\xa2\\x08\\xd1VGGy\\x1a\\n\\x0d\\x10\\x85fE4\\xd3\\x12\\x99\\xe0W\\xce6\\x07\\x08\\xf1H)\\x82\\xf3\\x9d\\xaf\\xdfx_\\xdb\\xf8\\x8c(\\xa4Y\\xd3\\xa6\\xff\\x19h\\xa4a\\x8f\\xb2\\x16{\\xa4a\\x84\\xd0\\x86\\x11\\x14\\xed;\\x8dg\\xc5\\x13\\xa4#\\x83\\x88\\x90A\\xc3a\\xf4\\x84\\xac\\xb2\\xd5\\xbag\\xfa\\x81\\x9b:2\\xafr\\xe3\\xda7-|\\xab\\x03gg%\\xd51$\\x89\\x92\\x880\\x904q\\x8f\\x05S\\xbdF\\xbfF(\\x8b\\xd2\\xb2\\x90\\xd81\\xffl\\xc5\\xd0\\x8d\\n\\xa2%p\\xe2\\x85\\xc6\\x92F\\x80sE\\xb4df\\xb2\\xcc|R\\x91~\\xd8\\xda\\\"\\xc5\\xa4\\x04b\\x14\\xe0V\\x97\\xbbR\\xd2D\\x97\\x14w\\x83\\xd8\\xceT\\xb0\\x9d\\xce\\x91\\xbe\\x1f_\\xd9;\\xaa\\xb2t&V\\xed\\xbf\\xed\\xc2@%\\x8d2\\x85\\x981\\xf9\\xe2\\xe0\\x19Q-#on\\xc3\\x9f\\x1a\\xee\\xac\\xee\\xa8\\xb2|\\xec\\xa8\\x9ca\\x06\t\\x88\\xdd\\xbb~[\\x8bH\\x11\\xeaz\\xda\\xdc\\xca+\\xcf\\x04\\x13\\xe1\\xe1\\x8c\\xc9\\xd1\\xa5Q\\x0b\\x1fR=\\xe6\\xf5\\xe8Z\\xe9\\x07\t\\xc5t`\\x86\\x88\\xec\\xf2\\xafL\\x0c3\\x1b1\\x9c\\xbal\\x1a\\xcd\\xc4\\xaa\\xd9GR\\xdfQ9HD\\xc9\\x12.\\xa8\\xeb< \\xda:\\xac:\\xb0r0\t\\x08Mk*\\xd5\\xc8\\xa2D\\x05\\xa6\\xf3\\xb5\\xb8d\\xc14\\x9a\\x86\\xb3YiZ\\xcc`\\x0e\\xa8\\xe2d\\xc4\\xf5B\\xbf4\\xad\\x15d\\xa3C.e\\x01\\xe0\\xb7\\xd0\\x7f\\xcan\\x84R.\\xad\\x99e\\xe2a\\x08\\x91\\x06\\n{|\\x8ei~\\xc3N \\x94$\\x16J/\\x0b\\x19\\xc7\\xf3\\x93\\xa7|>\\xe5\\xf1MS-\\x1d{?\\xf1\\x97\\xec\\xdb\\x92\\xb5B\\x8d\\xe5\\x1eM1\\xee\\xb3\\xab\\x94\\x85\\x0b\\xb7z\\x8e\\xc8Fs\\x0cYq\\xb7\\xf0\\xc6/\\x8d\\xeeN>?\\x02\\x90\\xc85V\\xba\\xd6\\xf0\\x83\\xed\\xbc\\x7f\\xcf\\x92\\x1f\\xa3E\\xb6\\xaa\\xc6.\\xfd\\xe8\\xaf\\xb2\\xa2w\\x1f:\\x8a\\xf5\\xcfY\\xfa,\\n\\x97\\xc1\\xf97\\xd7\\xefb\\x0c\\x86\\xdb_D\\x97\\xe1*\\xf2\\x17T\\x0e\\x87\\\"\\x1eB>\\x80\\xdc\\xe9h4\\x18j;h\\xf8\\xd4\\xae\\xf1*\\xdb\\x16\\x18\\x15\\xbd\\xa2\\x92;\\xe0C]\\x86\\xfd%K\\xe7\\x17^\\xc5E+\\x9f\\x93qJmvU\\xd51\\x92-\\xca\\x97\\xb8\\x9fl\\xd8\\xfc)\\xd6L\\xccH2\\xf7\\xe7\\x0dJ\\xcb\\xe1\\xa6^?\\xbd`\\xe8\\x07\\x17\\xe9\\xe9F\\xe5\\x9f:E\\x91y\\x14\\x80\\x9aSM\\xbe\\x8c\\xce\\x88\\xa8.\\xed'\\xa9\\x9ff\t\\x1c\\x1d\\xc2\\xee\\x00\\xd3[\\x04\\xfdl\\xb3\\xf0S\\xf62\\xf2\\x17Ax\\xfe\\x06\\xdf\\xbb\\xce\\x12\\x1d\\x17i@\\x9c\\xb3\\xb8e\\xb5w\\xf1\\xcaux\\xc1<\\n\\x93h\\xc5\\xfa\\xa8\\x14se\\xffo\\xd9U\\xaa\\x91'Y\\xbc\\xe2@\\x86\\x17\\x07R\\x89\\xcc\\xe5[)\\xdcQ\\x7f\\xf1\\xd7+\\xea\\xc1s\\xc3~\\xca\\xae\\xca!\\xb4\\xa1\\xaaF\\xfb[\\x9d\\x1f\\x1d\\xf2\\xcfY\\xda\\x12\\xd2R^\\xf78t\\xcbw\\x15L\\x80\\xc1\\x18\\xa6l\\xf6\\xf7\\xc2\\x12\\xa5s\\xaf\\x08w~\\xfa\\xf7\\x0c^\\x84H\\x91\\xcb\\x1b<\\xef\\x0b&\\x10\\x83)9\\x93\\xd4\\xc7\\x96\\x83\\x17\\x16[F5\\x9a;\\xdc\\x7fT\\xea1\\x11#\\xd9-\\xe2!j\\x93\\x02I\\x92\\x0b\\x06\\x07\\xbcL\\xbe\\xf0\\xdc\\xa0\\x07I\\xff\\xdd\\xebo\\x9f\\xbe}\\xfe\\xfe\\xd9\\xab\\x93\\x17\\xc7\\xdf\\xbd\\xe9\\xb5\\xdc>\\x0c\\x0e\\x8d\\x80\\xeccp\\xd1\\x7f\\xbc\\xf1\\\\\\xd6\\xdf\\xf8\\xd7\\xfc\\xa8\\xeb(\\xde3\\xf7\\xfa\\xf6\\xd5w\\xdf\\xbdl\\xdb\\xab\\xbc9U\\x07f\\xb5/\\x02UEt\\xa2\\x86\\x9c\\xf0\\x97=\\xe8\\xc4\\xc5\\xd1\\x05\\xc2\\xf3t\\xe6}\\xc5\\xf7\\xf9\\xc1\\x83\\xff\\x03\\x14J\\xe2G\\n\\xdb\\xf4\\xee\\xa7\\x97\\x87\\xc9\\xa5\\x7f~\\xce\\xe2\\xed,\\xd8\\xe6xg\\xe1\\xaf\\xa2\\x90m\\xa3N$\\xed\\xff\\x96\\xf4\\xd7\\xfe\\xe6\\xff\\x07\\x00\\x00\\xff\\xffPK\\x07\\x08v\\xf2\\x8aA\\x86\\xba\\x01\\x00\\xc5\\x87\\x08\\x00PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x0e\\x00\t\\x00swagger-ui.cssUT\\x05\\x00\\x01\\x80Cm8\\xec\\xfd{s\\xdb8\\xb27\\x8e\\xff\\xff\\xbc\\n=\\xbb\\x95\\x9a\\x99\\x1dS!EQ\\x17\\xabf\\xeb\\xc8\\xb1\\x93q6r\\xc6\\xcem\\x92\\xad\\xad)\\x8a\\x84$\\xda\\xe0\\xe5\\x90\\xd4\\xcdz\\xf6\\xbd\\xff\\x8aw\\\\\\x1a $;s\\xf6\\xf7\\xad\\xb3\\xd9dl\\xe2\\xd3\\x8dFw\\x03h4\\x00\\xb2\\x9bl\\xed\\xe5\\x12\\xc5\\xda\\xda;\\xfc\\x9fN\\xe7\\xe5\\xdf\\xfeo'\\x08c\\xdf\\xc6\\xde#\\xea:I\\xd2\\xd9\\x0c\\xbbzW\\xef\\xfc\\xbf\\xce\\xec\\xfac\\xe7\\x9d\\xe7\\xa0 A\\x9d\\xff\\xd7Yz\\xe9j=\\xef:\\xa1\\xff2@N\\x88\\xed\\xe4%M\\xf7\\xb7\\x97\\x8b0H\\xb5\\x85\\xed{x\\x7f\\x9e\\xd8A\\xa2%(\\xf6\\x16\\x13'\\xc4a|\\xfeWs\\xde7,\\xe3\\xdfD\\xfd\\x9dU\\xea\\xe3\\x03\\xf6\\x02\\xa4\\xad\\x90\\xb7\\\\\\xa5\\xe7F\\xd7\\xb0&\\x9a\\x9fh)\\xda\\xa5Z\\xe2=\\\"\\xcdv\\xef\\xd7Izn\\xe8\\xfa\\x8b\\x89\\xb6E\\xf3\\x07/\\x85K)\\xce\\xf3\\xd0\\xdd\\x1f|;^z\\xc1\\xb9N\\x95\\xd8q\\xea9\\x18\\x9dQ\\xcf\\x12\\xcf\\xa5\\x9f,\\xc20E1\\xf5h\\x85l\\x97y\\x14\\xd8\\x1b\\xea\\xf7\\x049\\xa9\\x17\\x06\\x07\\xd7K\\\"l\\xef\\xcf\\xe78t\\x1e\\xe8\\x16\\x1b\\x87\\\\K\\x99\\xf0\\xe7=\\xe4OJ\\x19\\xbb\\x83!\\xf2;\\xb4\\xa4\\x0bo\\xe9\\xd8Q\\xc6\\xf0\\x8cy\\xbc\\x8eii}\\xdb\\x93UZPT\\xea0\\x90\\xdf\\xe9\\xeb\\xd1\\x8e\\x96+>T\\xca\\x9d\\x87\\xbbL</X\\x9e;a\\x90\\xa2 \\x7f4\\x11<.\\x0d\\xa7O\\xc2\\x0d\\x8a\\x178\\xdc\\x9eo\\xbc\\xc4\\x9bcD\\xb1\\x8fbt \\xbd\\xc3\\x0f\\x830\\x89l\\x07\\x9d\\xd5?M\\x1a\\xbd\\x18\\xc8\\xa7Mv\\x98\\xdb\\xce\\xc32\\x0e\\xd7\\x81\\xab\\x15\\xde\\x94\\xc6v\\x90Dv\\x8c\\x82\\x94\\xf6\\n\\x179algJ\\xd3\\x92\\x07/:\\x0f\\xe7\\xf7\\xc8I\\x13\\x9a\\xdf|\\x1e\\xff3\\xf5R\\x8c\\xfeu\\x98\\x87\\xb1\\x8bbm\\x1e\\xa6i\\xe8\\x9f\\x07a\\x80&\\x0c\\x9f\\xf3u\\xe0\\xa28\\xf3RQM\\x0d\\xa2\\xe3\\x86i\\x8a\\\\1\\x8b\\x12@\\xfb*\\xedCi\\x1c\\x06\\xcbB[\\xdbB\\xb9^\\xb0B\\xb1\\x97N\\xc8g\\xf3\\x10\\xbb(\\xa6\\xf88!\\xe3\\xc4\\x0fs\\x97fm\\xfb\\xd1\\x13\\xcc\\xe0.\\x82\\xd2y\\xd3=F\\xe7^jc\\xcf\\xf97\\xed\\x87\\xf1\\x03o\\xab\\xbf.\\x16z5\\x08\\xe8:\\xed\\xe3\\x89ocLt\\x89\\x11\\xd3\\x8f\\x935\\xa3\\x9duD\\xa0\\x87\\xd6\\x8b\t9|\\xe8\\x93(L\\xbc\\\\\\xe31\\xc2v\\xeam\\xd0d\\x83\\xb2\\x0eoc\\xcd\\xc6\\xde28\\x9f\\xdb\t\\xcaH\\xd8Z\\x0e\\xa5\\x07h\\xdd\\x9e\\xc5\\xb4;\\xab3\\x0d\\xa3s\\xad\\xcb\\x96\\xd8k\\xd7\\x0b)\\xf96\\x9e\\x8b\\xc2\\xba+zA.\\x1d\\xdf#s\\xc2\\xf3 L\\x7f\\xfcg\\xd6\\x99\\xe2\\x10'\\xff\\xfa\\xa9&\\xcb\\xbd\\xb0j\\x12E\\xe7\\xf9\\xcb\\xcac\\x0b#dPZ\\xd8\\xcd2\\xe7{\\x1e\\x87a\\xfa\\xd3\\xa1\\xee\\x95+\\xcfuQ@\\xfb\\xdd:M\\x99\\xb1\\xc5\\x0b\\xa2uJ=\t\\xa343f\\xc4\\x8cs\\x1894.\\xf3x;F\\xf6A0\t\\x10n\\x95\\x8d\\xe4\\xdc\\xa0\\x0f\\x8e\\xd5\\\"\t\\x0f\\xd2\\xc1\\x06\\xa0*\\x04>\\xe4\\xdd2\\x1f:\\x16a\\xec\\xf3\\xca\\xfbg\\xba\\x8f\\xd0/1JP\\xfa\\xaf3\\xbe Y\\xcf}\\x8f)\\x01*\\xcbf\\xb5\\x92\\xa2(\\xfdW=\\xb6\\xdaQ\\x84\\xec\\xd8\\x0e\\x1ct^\\x14\\x01\\xd5\\x974\\xe7\\xe7\\x9a\\x1f>j\\x8b\\xd0Y'\\x9a\\x17\\x04\\xcc\\xd4C\\x8a\\xaa\\x04-\\x85o\\xc1\\x16\\x95\\xf3 \\xde\\xeb&\\x91\\xed\\xba\\xd9l\\xa0K\\xda\\xd0\\xb0\\x89\\xbd`)n@+\\xae\\x92^\\x02,E\\xa7\\x11\\x87p\\x9df\\xbevnD\\xbbr\\xec\\xed\\\\\\xe4\\xc0\\x8fh\\x972\\xb3$\\xc2n\\x82\\xd2C\\xd5\\xb0\\xaei!\\xbf\\xd3\\x1d\\xe6\\xff\\x0e\\xb8a\\x01\\xa3%\\n\\\\h\\xda\\xac\\xe7\\x14j\\xd6$\\x9e\\x16\\x83a5\\xacW\\xdd>\\xb5\\xe7\\x18M|{\\xa7m=7]\\x15\\x1d\\xa5\\xd6\\xf2d\\xbb\\xf2R\\xa4\\xe5\\x83\\xf4y\\x11y1Sl\\xb8\\x8cQ\\x92\\x80\\x83\\x8f\\xd2(Xw\\xe1\\xbaw\\xd9\\xeb4\\x04\\xac\\xeb\\xac\\x90\\xf30\\x0fwP\\x1f\\x89m\\xd7\\x0b\\xffu\\x92Vd\\x0e\\x15\\xac\\xfd9\\x8a3\\xef-\\x19\\xe7^\\xa9%\\x91\\x17h@\\x17\\x14\\x10\\x85\\xeb\\x94&:\\x94C\\x90\\xa0\\xa1\t\\xb2cg\\x05v\\xdfLY\\xb9\\xc7LJ\\x0f\\xd3\\xc2\\xc5\\\"A\\xe9\\xb9\\xd6cB+\\x8aU#K\\xf1@s2nX\\xdc\\x06\\x11]\\x13\\\\@\\xd2q#[C\\xbf\\xf00\\xd2\\xd6\\x11\\x0em\\xb7R\\x82pt\\xcaG\\xed\\xcaO\\xe9X\\x00\\xa5\\xb6\\x87\\x13:\\nE\\xc1Z\\x12\\x85&k\\xdf\\xb7\\xe3}\\x8d\\xc0^\\x92j^\\xca\\xf4*\\xc7\\x0e66\\xec\\xc4\\xb4V\\x8b\t\\xed_\\xcc$\\xe4G\\xd8N\\x115\\x93Rd]\\x17\\xcd\\xd7\\xcb\\xce\\xdf\\xa8q!\t\\xb1\\xe7v\\x96!v\\x01\\xac\\x96\\xf7;\\x90\\xe2\\xaf\\x8b\\xc5\\x02\\xa2\\x98c\\xdby\\x80)\\xd8\\xf8\\xa7\\xa4X\\xc6\\x9eK\\x04Ndx\\xdbY\\xc7\\xf8G\\xd7N\\xeds\\xcf\\xb7\\x97\\xe8e\\x14,'Y\\xf7\\x1d\\xf4\\xcf\\xbc\\xcf\\x17\\xef\\xef\\xb6\\xfa?\\xde,\\xc3\\xe9t:\\xbd\\xf9\\xf0iu\\xf5i\\x99\\xfd\\x98\\xffs\\xfdj\\xfau:\\x9d^^]\\x0e\\x07\\xef\\xb2\\x07o~\\xbf{\\xfd\\xe5\\xd7\\xbb\\x8f\\xf3\\xde7\\xdd\\xed\\xbd\\xde\\x7f\\xbb\\xbd\\xb8\\xf8\\xf6f\\xec}\\xfbp\\xf1v\\xfe\\xe5u\\xf0\\xed\\xf3[\\xfc\\xf5\\xcb\\x9d\\xe58\\x18\\xff\\x96\\x11\\xecW\\xd1\\xe7\\xd7+\\xfd\\xcb\\x951{\\xef\\xdfl\\xe6\\x1f\\xacU\\x81\\xb7\\xfa\\xf3\\xdf\\xa7\\xc5\\xff.\\xb7/\\xd1\\xaf\\x17\\xab\\xaf\\xbd\\x14\\xbb\\xaf.\\xbco_\\xdch~\\xaf{\\xc3\\xe1\\xfa\\xe5\\xb5w\\x11}\\xbb\\xd4\\xbd\\xcf\\x8f\\x9fofW\\xc6\\xf6\\xb6\\xf79\\xb4?\\xad\\x06\\x8e\\xff\\xf9#z\\xb0>}5\\xa3\\xf8\\xeb#~\\xb8\\xbe\\x1f\\xfd|}\\xb9\\xeb\\xbf\\x0fV\\xa9\\xf3\\xc6\\xc0\\xee\\x9b\\xab%zc$\\xf3`6@\\x97\\xba\\xf7\\xf5\\xcb\\xdd\\xe6\\xab\\xffi\\x90\\xfd>\\xff\\xf2Y\\xff\\xfaa\\xe4]\\xff\\xba\\x1c\\xa07\\xc6\\xd6}\\x93\\x8c\\xaf\\x1f^?\\xcc{o\\xf1\\xf5\\xeb\\xd5\\xcd\\xa7W\\x17\\x97s\\xf3-\\xbe\\xbe\\xfc\\xb4\\xbe\\xf1\\x8c\\xfb\\xd9\\xc7\\xab\\xdd\\xf5\\xa5c\\xbd\\xbb\\xbf2\\xde_\\xce\\xf67\\x1f\\xb6\\xcb\\xd9\\xfdtw\\xf3a\\xb4}\\xffa\\xb4\\x9b\\xbd\\xd2\\xb7\\xb3\\x8f\\xe1nv\\x19\\xeeg\\xaf\\xa6\\xcb\\xeb\\xea\\xef}\\x7f\\xf9\\xdb\\xafo\\x1f\\xbe\\xddG\\x1f\\xee\\xae\\xbe\\xd6\\xf28\\xfe\\x9d\\xff\\xdb\\x87\\xb7\\xa1\\xfb\\xeb\\xdd\\xf6\\xbd7\\xda\\xb8\\xa6k\\xbe\\x0b\\x9c\\xc7w\\xfex\\xffm?\\xda\\xbd\\xff\\xf8`\\xbd{\\x9c\\xee\\xdf=^\\xef\\xdf\\xfd\\xfe\\xf6\\xe1\\x9bg<\\xa2/\\x96\\xfe\\xf5\\xf7e:\\x0ff\\xf7\\x04\\xdf\\xabo\\xbf\\xdf\\xdc;>\\xde\\xbao\\xf0f\\xee]\\xec\\xbf\\xbd\\xf9:\\xf8\\xfa\\xe5\\xed\\xc6\\xfd\\xfdv|\\xed]7:xcl?~\\xd2\\xc7\\xd7\\xfeJw\\x7f\\x9d\\x0e\\xde\\xed\\xc7kg_\\xdb\\xe2~\\xde\\xd37\\xe8\\xcd\\xeb\\xed\\xbb\\xc7\\xab\\xf5\\xec\\xd58\\x9d\\xe7\\xfaY\\xa5\\xf37\\xd6\\xe3\\xfb\\xe0F\\xff\\xe4\\x7f\\xa6d\\x9e\\x07\\xb3u\\xa9\\xd3\\xf5\\xd7\\xde8}g\\xaeV\\xce\\xab\\xd1\\xee\\xdd\\xfdt\\xe3\\x18w\\x96\\xf3\\xe6\\xd3\\xe6\\x93\\xff\\xf9qn~\\xde\\x7f\\xed}\\xfe\\xf0\\xed\\xcb\\xd7\\xfbk\\xef\\xa2?\\xff\\xb2[;\\x8fQf{EY\\n9\\x9c+\\xe3\\xe6\\xfd\\xc3\\xdd\\xe6\\xab\\xf99\\xfd\\xf6\\xc5\\xd2?|\\xba\\x1d_g\\xb6~e=\\xd8_n\\x07\\xb3\\x8fw\\x97\\xef?~\\xed\\xdf\\xe8\\x9fz7\\xfa\\xe7\\xd7\\xb3\\x8f\\xaf_\\xdf\\xdc/{\\xb3\\xc7o\\x97\\xb7\\xf7\\x0f\\xdb\\x9b\\x87\\xdb\\xfe\\xec~\\xb9\\x9d]]\\x13\\xfc\\xf0\\xda1\\xefVs\\xff\\x06\\x13\\xfc\\\"\\x9a\\xdf\\xad\\x1a\\xbf\\xcb\\xe8\\xd2\\xf1?\\xaf\\xdc7\\xe3\\xfd\\xe77\\xe3\\xcd\\xfcR\\xf7n\\x0b\\xfd,?\\xbdYm\\xdc7\\xe3G\\xfb\\xcdx{}usy}y\\xbd\\x9d}\\xfc\\xb4\\xfc\\xc7\\x95\\xb1\\xfa\\xda\\xc3\\xeb\\xbc\\xec\\xd5\\x83\\xf7\\x9b7\\x1d\\x95v\\x1a\\xdc\\xbd\\xf9\\xbc\\xb7\\x7f\\xff\\x86\\xbf]}\\xdb\\xcf{\\xfa\\xd21\\xef2\\x1d\\x0e\\xec/\\xd6\\xa3\\xfb\\xe6\\xf5\\xfak\\xef\\xf3\\xdb\\xbbK\\xdd\\xcb\\xf0\\xef|\\x1c}\\xbb\\x0c\\xcd\\x9b{g\\x7f\\xfbpk\\xde\\xdc\\x7f5o\\x1f?\\xedf\\x9f>\\xf5n\\xef\\xdf\\xbe\\xba\\xd5?\\xedo.\\xa7\\xfd\\xd9\\xc7\\xe9vv\\x7fe\\xce>\\\\\\xd7\\xfc\\xbe\\xbd\\x19\\xdf\\xbb_\\x0c<\\x0f\\xee\\x08~w4\\xbf\\xc7V~\\x9bL\\xf6w&\\xe0\\x93\\x99\\xaf\\xbe\\x1a\\xe7~\\xf9\\xe9\\xe1\\xeeM\\x81+\\xfa]\\xde\\x0f?\\xf6\\x97\\xbf]\\x8e\\xfb\\xce\\x9b\\xd7\\xf7v\\xef\\xb3~\\xfd\\xe6\\xf3:\\xeb\\xef\\x8ew\\xfd\\xf2\\xb7\\xe4\\xe2\\xc3\\xcfof\\xd9\\x08q\\xff\\xe1\\xd3\\xdd\\xc5\\xe7_\\xef\\xed\\xaf\\x9b\\xc7\\x97/\\x1fG\\x97\\xef\\x92\\xcb\\xfe\\xd2y\\xf3\\xbb\\xf7\\xf5j\\xfa\\xe6\\xe2\\xfa\\x1fo.\\x02\\xf4\\xf2\\xe5\\xe2u\\xb4\\x9d.\\xb7\\xd3\\x8b\\xf1hj\\xbf\\xeeE\\xf7\\xf8\\xd3mF~\\xf1\\xf6\\xee\\x93u\\x15?\\xbc].\\x97\\xbf\\xfc\\xf2S'F\\x11\\xb2\\xd3\\x8e\\xde\\x11\\x8e\\xa4\\x9a1x\\xc6\\xc1\\xf4\\\"\\x1f\\xe6n\\x8b\\xc1t\\xba\\x18\\xbd\\x1c\\xaf\\xfew0\\xfd\\xdf\\xc1\\xf4?u0}\\x7f\\xf9u\\x7fw\\xbf\\xba\\xba\\xbb\\xcc\\x06\\xd3\\xaf\\xfb\\xd6\\xc1\\xafe0m\\xf8\\xdd\\xaa\\xf1\\xfb\\x0f\\x1aLo?\\xb6\\x0e~G\\x0d\\xa6\\xb7\\xed\\x83\\xf3\\xf7\\x19L7\\xaf>\\xe8\\xc6u6\\x18\\xcd\\xea\\xc1\\xd4\\xbf\\xeb\\xbf\\xb4~\\xbex\\xfd\\xdb\\xc5b:{\\xed\\xbf\\x9c],w\\xa3\\xbb\\xe9\\x9b/\\xaf\\x02c:\\xf5?,\\xcd\\xfe\\xed\\xe0\\xe1\\xe2\\xf2\\x1f\\xb37\\xb3\\xcbW\\xdb\\xebWhv\\x8d\\xfc\\xd7/\\xad[{{\\xe5E\\xd3/\\xdbO\\xab\\xed\\xd5\\xfd\\xecr3\\x9f~\\xc1_\\x1e6\\x9f/\\xb6\\xeb\\xd1\\xe6\\xf6zz1\\xbd\\xda^\\xbc\\x8aV\\xa3O\\x03G\\xcf\\xc7\\xa5+\\xfc\\xfa\\xe3\\xc3\\x87\\xf5\\xad\\xff\\xea\\x95\\xd2\\x00<\\xd2\\xf2x\\x97\\x1c\\x85\\xb3`\\x99\\x1d~\\xef#T\\x8f\\xbf/\\xc7\\xf7/\\xfb\\xb7\\xd3\\xafw\\xbf\\xaf\\xa2o\\xcb\\xe9\\xf4\\xc3\\xa7\\x87\\xff.\\x03\\xd9\\xe6\\x7f\\xbf\\xbdL\\xa6\\x17\\xaf\\xaf\\xdc/71\\xba\\xcdF\\xe6\\xdbj\\xe0|\\xd9\\xbf\\x9d\\xed\\xec_\\xeft\\xe72\\xdc\\xbc\\xebY\\x8f\\xef\\xfcb\\x1c{\\x97\\x8f\\xb5\\xe3\\xfe\\xd7\\xdf\\xa7\\x9b\\xd9\\x87\\xfe\\xf6\\xddv:\\xfa\\xcd\\\\m\\xbf~\\xb9\\x89\\xbf\\xfd~\\xbb\\xfc\\xea\\x7f\\x0e\\xec/\\xfd\\xf1\\xf5\\xfa\\xe7\\xe1f\\x7f\\xbd\\xb4\\xbf\\xdc\\x8e\\xaf\\xb1c|\\xfcxq\\xe3\\\\\\xdd`\\xfb\\x0d\\xbeF\\xc1[\\xfc\\xc9\\x8c\\xde\\x7f~s3\\xb0{3\\xeb\\xdb\\xab\\xeb\\x97\\xb9\\x8f^f\\xfd\\xf7\\\"\\xfd\\xf6\\xfb\\xdd\\xaa\\x19#\\x96\\xe3\\xeb\\xb2\\xee\\xf7\\xbe\\xf5\\xf8\\xde\\xcf\\xc7\\xe0M\\xd6\\xe7\\xf31\\xf9\\xd7\\xbb\\xf8\\xb7\\x0fo\\xab\\xb9\\xe2\\xeb\\xc7\\xcf\\xd3\\xe5mo\\xbc\\xff\\xf6aj\\xbc\\xbb\\xff\\x9a~}\\xbc\\xda\\xcd>L\\xcd\\xf7\\x1f\\xfa\\xbb\\x9b\\x8f\\xcb\\xc7\\xd9\\xfd\\xa7\\xa4\\xec'\\x9b\\xd9\\xe5\\xc3f\\xf6q\\x9a\\xce.\\xaf\\x06\\xb3\\x8f\\xd3\\xc1\\xec\\x9e\\x18c_]g\\xe3~\\xed_\\x8d<\\x99/\\xea^\\xad\\x1b\\xd35\\xdd\\xbde\\xce\\xf6\\xd6\\xc6\\xf1\\x9d\\xcd\\xec\\xe3\\x83\\xf5\\xfe\\xc3h;\\xf3F\\xfb\\x99gd\\xf4\\xa9cf}\\xf1u\\xff\\xdd\\x17\\xeb\\xf1z\\xdf\\xf0\\xbd{\\xf3\\xf9\\xf1\\xab\\xf96r~\\xbd\\x8b\\xe6\\xbd\\xfe2\\x1b\\xbf\\xdf\\xfb\\xaf\\xbd\\xb9\\xf9Y\\xff\\xed\\xc351Nf\\xe3\\x00Q\\xa7\\xcc\\x1e\\xfb\\xff\\xc0\\xb1\\xf9\\xf7\\xe9\\xe0\\xd6|\\x8b\\xbf\\xfe~\\xb7q\\xf0\\xddf\\xde\\xdb\\x12\\xf3\\xe2E87\\xef6No\\xb5q^]\\\\\\xde\\xee\\xa7\\xfb\\xd9\\xe5\\x95q\\xfdju\\xf3\\xf5\\xcbM4\\x0f\\xb2\\xb2eT\\xf0\\xb9\\xb8\\xf9\\xf81z;\\x0fn\\xf4\\xaf_\\xac\\xfbo\\x9f\\xf0\\xd5o\\x1f\\xdef\\xfc\\xd7\\xf6\\x17\\xfc\\xf0\\xfe\\xe1z7\\xbb\\xbf\\xd6\\xdf\\x7ft\\x1eo\\xee\\xddW\\xb3\\xc7\\xab\\xdd\\xdd\\xc7o\\xaff\\x0fo/\\xef>^\\xeb\\xb3\\xcb\\xe5nv9\\xdd\\xcf>:;\\x82\\xdf\\xd5\\xbcwc\\xcc\\xbf|^\\xbbW\\x0d\\xbfoo(~z+\\xbf|\\xee\\xac\\xe7\\x13\\xec\\xf8\\xb8\\xf7\\xed\\xcb\\xdd\\x1b\\xc7\\x1f\\xa7\\xd7\\xbf\\x16\\xba|\\xef\\x8b\\xe7\\x85\\xdb\\xfb\\xab\\xfd\\xec\\xfe\\xd6\\xbay\\xbc\\xea\\xdd\\xe8\\xd7\\x8f\\xf9\\xbc\\xf0p\\xbd\\xbf}\\xb8y=\\xbb\\xbf\\xdd\\xbe\\xbf\\xbc\\xda\\xce.\\xafw7\\x8fW^\\xc3O<o5\\xfc\\xae[\\xf9\\xbd{l\\xc6R\\xc6'\\x7f\\xbe\\xbe\\xdcnr\\xbf\\xc4o\\xaf\\xee\\x8a1\\x97\\x8c\\x85\\xb2r2\\xc6\\xc2s?\\x93\\xe3\\xda\\xfb\\xedq\\xf8r\\xb8\\x9c\\xbe/\\xe7\\xaa\\xe9\\xb7<v\\x9d^\\xbc\\x1c'\\xd3\\xd5t:\\x7f\\xb3\\n\\xa3_?\\xe0\\x8b\\xb7\\xde\\xb7\\x8b[o\\xb4y\\xa7\\xbf\\xfd\\xf5\\xb7\\xc7\\xfe\\xcf\\xbf\\xe9\\xee\\xafw'\\xfe\\x9d\\xde\\xe9\\xd1?>\\xde\\xfa7\\x97\\xa3\\xf0\\x1f\\x97\\xe3_\\x7f{\\xfc\\xf4\\xb2\\x8d\\xa6\\xfd\\xef\\xe2\\xe5v:\\xbd{5\\x9d^O\\xa7\\xcb\\xcb\\xe9\\x87\\xeb\\xe9tuu1\\xdd]]\\xbc\\x1c\\xddN\\xbfd\\xe3\\xe6\\xed\\x14\\xf8\\xdf\\xd7\\x8b\\xe9\\xed\\x15\\xf0\\xfc\\xfa\\xeajzu1\\x9d\\xce.\\x98\\x82\\x8b\\xe9\\xe5\\xd5\\xab\\xa9~u7\\x9d^]^\\xf0<\\xef\\xae?\\xbe\\xbe\\xf8\\xf4\\xe5\\xea\\xc3\\xf5\\xe6\\xa5=\\x9dn/\\xa7\\xb7\\xd3WW\\xb7\\xb3\\xbb\\xe9\\xe5h\\x1a\\xbe\\x0f>~6n?^\\x0e\\xdf\\xbeMV\\xbf\\x99\\x9b\\x0f3\\xf3\\xb7\\x97/\\xbf)\\xcd/\\xc6@m\\x829*\\xbe\\xcf\\xe6\\xd7W\\xb7\\x0f_\\x96\\xbd\\xe9\\xff\\xc6\\xf7\\xff\\x7f\\x1d\\xdf\\xab\\xce\\x01t\\x1c\\x9e\\x8d\\xad\\x8asV\\xcfH\\xc9y\\xab\\x8c!U\\xe7\\xad\\xc7\\xcf\\xbf\\xe2\\xed\\xb7\\x0f\\xe3\\x0f\\xdf~\\xbf\\xd9\\xb8\\xbf\\xbf\\xbd\\xcf|\\xe9\\x9b7{\\xb6\\xf8Y%\\xae\\xbfy\\xfcj\\xce\\x1e\\xde^\\x15I\\x97\\x99!\\x1f\\xbf\\xdb\\xd7\\x1d\\x0d\\xbf\\xaf\\xad\\xfc\\x9e-\\xbeoOn\\x1c\\x15\\xdf\\xdf]\\xb6\\xf2\\xfbN\\xf1=\\x1a\\xbc5\\x1f\\xb2\\x11\\xe2\\x91M\\x96\\xe8\\x9f.\\x93\\xd9vv\\xff\\xe1.\\xfc\\xfa\\x9b\\xf5\\xe6\\xbf\\xfb\\x1f~\\xbb\\x99\\xdf\\xdd\\x7f\\x9e]\\xdd\\x1a\\x8bWw\\x97\\xcb\\x9f\\xbd\\xe0\\xe5\\xe0\\xe7\\xb7\\xc6\\xf4\\xed\\xa7]\\xb2\\x9c^\\xbd\\x99NM\\xe3b\\xfav\\xf6A\\x7f\\xf3\\xb5\\x18\\xcf?|\\xfa\\xfc\\xfe\\xee\\x1f\\xd6\\xab\\xaf\\xd7\\xd7\\x92\\x04J\\xb3\\x15C\\x1f\\x8e\\xa1\\x7f\\x03\\x8e\\xcf\\xccCwO=\\xe0N\\\"\\xb8\\xf4A\\x04\\xd7\\xa3\\xcf\\xcd\\xb8\\x98\\xfe\\x95\\xdeZ\\xae6\\xe6\\xe8\\x87\\xfc\\x01\\x9dE\\x18\\xfb\\xf4F\\xacA\\xff\\xda\\xa3\\x7f5\\xe9_\\xfb\\xf4\\xaf\\x16\\xfd\\xeb\\x80\\xfe\\x95?\\x0b\\xb4J}\\xba\\x15\\xf9Nu\\xb1\\x89\\x83|\\xdb\\xc3\\xff\\x12\\x95\\x96\\xdbT\\xa2\\xe2\\xc8N\\x92m\\x18\\xbbB@\\x8a\\xc4\\xbcS\\xb4K\\x85\\x85\\xeb\\x98!,\\xb64\\xe9G\\x1e\\xbd\\xc7c{\\xf4.UH7\\x9a>'\\x101\\xe7\\x94\\xca\\xf3Q\\xd4\\xb3|\\xd7\\x93~BKPmK\\xd2\\x0fW\\xf4\\xaf\\xb4-\\xd6\\xf8\\x94\\x0dH\\xba7\\xd8I\\x84\\x9cT\\xcb\\xf7\\xd8\\x0e\\xe2\\xf3%b\\\"M3\\x06\\xbbq\\xb5\\x9b\\\\\\x9d0\\xb2\\x06\\xdd\\x9e\\xf5BF5\\xde\\x19\\x03\\x96\\xca\\x18\\x0e\\xbb\\xc3\\xa1\\x94\\xac\\xbf3Y\\xaa\\xa1\\xbc\\\"s\\xd7\\xe7\\xea1\\xcd\\xaeiJ\\xa9\\x06<\\xd5`\\xd0\\x1d\\xb4\\xc8\\xc6\\xb7\\xc8\\xd2\\xa5$\\xa3\\x9d\\xc5U\\xd3\\xeb\\xca\\x1bd\\xedF\\\\5\\x03y5C\\xbe\\x9a\\xa1\\xd1\\xed\\xf7Z\\xea\\x19r\\xf5\\xf4\\xe5\\xf5\\x18;\\x83#a\\xcf,2$\\xc5\\xc9\\xb5C\\xedq\\xf6<\t\\xf1:E\\x934\\x8c\\xce\\xf5I\\\\zd\\xc9M\\x9f`\\xb4\\xc8~'\\xce\\x0eT\\xe7k\\xb2\\x9f\\x1f5/p\\xd1.\\xfb\\xe5\\xdf\\xff\\xe5#\\xd7\\xb3;\\x89\\x13#\\x14t\\xec\\xc0\\xed\\xfc\\xe8{Ay\\xea\\xc0\\xd4\\x91\\xff\\xd3A,W\\x90<\\xa17d\\xd4'u\\x08\\x80P\\xadO\\x00\\x84\\xed\\xdd\\x02\\xaaM\\xa9g\\x00\\x84*\\x9d\\x03\\xaa\\xaf\\xbd\\x7f@\\x95)t\\x11\\xa8\\xb2\\xf6^\\x02\\xe9Q\\xa5\\xa3@\\xb5\\xb5\\xf7\\x15\\x88J\\xa9\\xbb\\xe4\\x84\\xcf\\xdfc\\x14\\xbaL\\xf9\\xb0>\\xbd3h\\xe9G\\xfeS\\xba\\x91\\x7fb/\\xe2\\xe8\\x14;\\x11G\\xa7\\xd0\\x87\\xf8\\xba\\xd4\\xba\\x10G\\xa7\\xd4\\x83\\xf8\\xda\\x14:\\x10_\\x95J\\xff\\xe1\\xabR\\xe8>\\xbc\\x06\\x95z\\x0f_\\x97B\\xe7\\xe1\\x89\\xd4\\xfa\\x8e\\xff\\xe7w\\x9d\\xb6^\\x82\\x9f\\xd2K\\xf0\\x89\\xbd\\x84\\xa3S\\xec%\\x1c\\x9dB/\\xe1\\xebR\\xeb%\\x1c\\x9dR/\\xe1kS\\xe8%|U*\\xbd\\x84\\xafJ\\xa1\\x97\\xf0\\x1aT\\xea%|]\\n\\xbd\\x84'R\\xeb%\\xf8\\xbb\\xf4\\x12\\xb2^\\xcf_\\x1e\\xe8c\\xa0\\xb4XN\\xb8A1y\\xce>?W\\x9d?\\xfd\\xbf\\x9e\\x1f\\x85qj\\x07)K\\x12\\xa4\\xb6\\x17\\x00D\\xf9s\\x82\\xac}\\xa6;\\xf0\\xc2d\\xd3\\xee)\\xf2\\xc0t\\xacH\\n2)\\xcc\\xbe\\x85\\xa0\\xfeirBd\\xc7\\x89)\\x94\\x08\\x9f&\\x11D\\xc6IDQ\\xce\\x97\\x9a\\x83\\x82\\x94v\\x9d\\\"\\x19t\\x1e\\x84\\xe5O\\x13\\xa2\\xac\\xf6sn\\x90\\x98/\\xb54\\x8c\\x8e\\xe6\\x93\\x86\\x11\\xc7'\\xef4Gs\\xe2;\\xc5\\xbc\\xea\\xc7G\\xf3*\\xc88nY\\xe7=\\x9a\\xd7\\xf1\\x8b\\xab\\xda*L_P\\xaaN`\\x98SX\tms\\n3\\x89yNa'\\xb1\\xd0)\\xec\\xda\\x82\\x12\\xd5\\x11\\xa51\\xdd\\xf1N'\\xb2\\xdc\\xf1\\x9c\\xc4\\x86;\\x9e\\x97\\xccn\\xc7s\\x93\\x99\\xedxnmV\\x93\\x1a\\x08\\x1f]\\x9d\\xc8@\\xc7s\\x12\\x1b\\xe8x^2\\x03\\x1d\\xcfMf\\xa0\\xe3\\xb91QL\\xb7<\\xfe\\xce\\x1f\\x83\\x07a\\x1aqL\\x1389O\\x94\\xc2\\xe4zMt\\xfc\\x18\\\\\\xf1\\x08\\x92\\x13\\x84\\x05\\xa9\\x14\\xe4%\\xe9\\xda|[uD\\xaa\\x98\\xfb\\xa7\\xb4\\x03 Ri\\x86\\xaf\\xdc\\n\\x89\\xc0\\xf8\\x14\\x81\\x01\\\"\\x15\\x811)0\\xed\\xfb6}\\xcf-g9)\\x1f\\x95\\xd18s\\xbb\\xa7;O+\\x9alt\\x00\\xe8\\xb2\\xc7\\\"\\xda\\xfa^]1\\x1e\\x00\\xd4E\\x81\\x88~N\\xdf_\\x86\\x18\\x94%\\\"\\x0e\\xb8\\xe2\\x90wz\\x80>\\x7f.\\xa2\\x0e\\x80{\\x81\\x94\\xba\\x8e\\xef\\x8bs;\\x9f\\xd2\\x8f7\\x03Av\\x8a%\\x08\\xf2S\\x8dA\\xb08\\xdd\\x1e\\x04\\x93\\xd3L\\xc2\\xa9\\x0f\\xb2\\x8a\\x82Y\\x14\\x86\\x9b\\xb9\\x9d\\xcd\\xe3'\\x98\\xca\\x7f\\x92\\xa5\\xfc'\\x1b\\xca\\x7f\\x06;\\xf9O4\\x93\\xffT+\\xc1\\x06\\xc1'\\x19\\x04?\\xc9 \\xf8\\xc9\\x06\\xc1\\xcf`\\x90'\\x0ee\\xac\\xe6@\\x83\\xd04Zq\\xd5\\xaf\\xa2\\x13\\xbc\\xe3 \\xc3\\x05\\xc8\\x8eA\\xb0a\\x18\\x1c\\xd8\\xb5\\xe3\\x07m\\x19\\xdb{\\x06k\\x9a&\\x87\\xf5=\\x17\\x82Z\\x96\\xc5A\\x01\\xd8p8\\xe4`\\x89\\x877\\xcd\\x85\\xef\\x128\\x1e\\x8f9 .\\x8c\\x0d\\xc1m\\xdb\\xe6%\\x0d\\xc3\\x00\\x92\\xc1q\\x1c\\x01k\\x00\\x8c\\x10\\x82u\\x9b\\xdf\\xd2d\\xc0\\x8b~\\xf6\\x87\\xc3\\x83P\\xf6&g\\x85\\xd3\\xc6:\\x0d]%\\xd8\\xfeQ?\\xd3_\\x9ce\\xb1\\xf8Yw\\xfc\\x93\\x80p\\xd4B8\\x12\\x11\\x0e[\\x08\\x87\\\"\\xc2A\\x0b\\xe1@Dh\\xb5\\x10Z\\\"\\xc2~\\x0ba_Dh\\xb6\\x10\\x9a\\\"\\xc2^\\x0baODh\\xb4\\x10\\x1a\\\"B\\xdd\\x92\\x13\\xeaB\\xed\\xe8\\xbd6\\xd2\\x9e\\x98\\xd6h%6 \\xea|\\x8c\\xe1\\x9c6^\\xces\\xda3\\x1dt\\xd8\\x82\\x88uX\\x92\\x08p\\xd6\\x82\\x88uV\\x92\\x08p\\xd4\\x82\\x88uT\\x92\\x08p\\xd2\\x82\\x88uR\\x92H\\xa8\\x08\\xd6AI\\\"\\xc09\\x0b\\\"\\xd69I\\\"\\xc01\\x0b\\\"\\xd61I\\\"\\xc0)\\x0b\\\"\\xd6)I\\\"\\xc0!\\x0b\\\"\\xd6!I\\\"\\xc8\\x19K*\\xd6\\x9f(2\\xb1+\\xf1\\x8eH\\x11\\x82N\\x98O`1r\\xd9\\xc1{\\xa8\\xf7u~\\x9c\\xe5\\x81\\x8bE\\xdf0\\x07\\x82Y\\x01\\x82\\x0f{\\x16?\\x89\\x84\\xb1\\x1d,\\xf9\\x81~`\\x02\\xf3\\xf32\\xc4<\\xd7\\xf9\\x10@\\xee\\x11\\xc6\\xe1\\x96\\xc6\\xf2\\xaf\\x0e\\xa8\\xa5\\x85\\xe0\\x7f]\\xcc\\x17\\x86\\xcdO\\xa8\\xd1:\\x8e0+\\xb0\\x85z\\x8e\\xcdO\\xe6\\x05w\\x90\\xc2\\xee\\x0f\\xccE\\x0f6J\\xe4\\x05l\\x04\\xe2Z\\xba>\\xe2\\xad\\xb2\\nS\\x08\\x9d\\x99f\\xce\\xcf\\xa9 r\\xa4\\x0b\\xa7v\\x10o\\x9b.\\x1f\\x8e\\x94\\xc1\\x10B\\x01\\x837\\xcc\\xe1\\xd0\\xe2\\x9b\tB\\xc7\\xf6x\\xc8\\x0b]E\\x19<\\xc1\\x18\\xa1\\xb9\\xc3\\xeb$\\xb07l@\\xa2\\xeb\\xc6\\xbc\\xcf\\xb3\\xce\\xa5\\x9e\\xe35k\\x1b]\\xef\\xf7\\xc7|\\x08\\x03 Mk\\x88\\\\\\x91W\\x01\\xf8\\xf1\\xc0q\\x80 &\\xc7\\xa3\\x04$q\\\\\\x04\\x91l\\xedd\\x85\\\\\\x88`1X,\\x16\\xbc\\xf4%\\x01\\xa4H4Z\\xb8\\x0b\\xde{K\\n\\xb8s,\\x16\\x0e\\x9a\\x8bH\\xa0\\xde\\xef.\\\\\\xbe\\x15d:\\x91\\\"\\x10f\\x88\\xe6\\x9aV\\xbe\\xea\\x84&\\x80\\xde\\x7f\\xd2\\x9d\\xc7\\xf5\\xd0\\x1d\\xdb\\xae\\xb7N\\xce\\xd9\\xa1\\\"6\\x18@\\xd7\\xe8Y1b\\xd3\\xadq\\x8f\\x85\\x81(\\x93EA\\xa0>\\x032\\x00\\x8cf\\xe8\\xac\\xe4@R9\\xd6\\\"\\x0fc\\x067\\x1e\\x8f\\xc7\\xc0\\xea\\xaf\\xdew+\\xc0y\\x92<[iUz!\\xd7\\x90\\xc5:P\\xa41\\xad\\xd8U,\\xe0UV\\x1bbU\\x96\\xb5q+\\xf7\\x16[\\xe4\\x82*\\xe2y\\x15\\xdb\\x81\\xa2\\x96\\xc8\\x05kO\\xb6\\x1cX\\xe7\\\"\\xd3Q\\\"\\xff\\xe21\\\"\\x17\\x03\\x90\\xb0\\x97\\x01@\\xd0\\xd1x\\x9c\\xc8\\xd7\\x00\\xa4\\xc8\\xddx\\xa8\\xdc\\xe3\\x98\\x8c\\xdfS\\x9c\\x8eO\\xdd=\\xd9\\xefT\\xa4Sw=\\x86\\xdb1\\xde\\xa7\\xe0~*\\xb9\\xbeX'\\x12oB\\x97d!B\\x8f\\xe4\\x80\\x02\\x87\\xe4p\\xb0?\\xb20\\xa1;r@\\xa17\\xb2\\xc8\\x16g|\\xb6\\x01\\x90\\xcbN>\\xdd\\x15\\xdbe;\\xc2\\x13\\xfd\\xef\\xe3\\x88\\x02\\x9fc'!\\xc0\\xe7X\\x88\\xd0\\xe78\\xa0\\xc0\\xe78\\x1c\\xecs,L\\xe8s\\x1cP\\xe8s\\xc7M\\xb9,\\xbc6oc\t\\xa2\\xa0<\\x9e\\x06\\xfb\\x1c\\x9b\\x80}\\xba\\xcf\\xe1\\xe7\\xf49|\\xb2\\xcf\\xd1\\xfc4\\xadx\td\\xc5\\xaeH\\xf5\\x02/\\xe5-\\x82\\xf8,\\xe4d\\xa0\\xf93\\x0eZ\\xdeF&\\x91\\xc0&f\\xb6\\x84\\x08\\x03D\\xe3\\xf2w\\xd4\\xb5\\x0f\\xd1\\x07\\xb8!\\xdcn\\x8f\\xb4-<Z\\xd2\\x1cx\\x1f\\x0el\\x11\\xb8\\xe7\\xf4\\\\\\x13O\\xddT\\xff\\x98\\x96\\xb2`YC\\xa1M,\\xb8\\x9d\\xc0\\xa6\\xcd\t\\xc3Z\\xdd\\\"|L\\x8bX\\xb0\\xacE\\xd0.\\x10\\xdc\\\"`\\xd7\\x83\\xed4\\xdbz\\xc1P\\xed\\x830\\xe5\\x06]\\x0e\\x8f\\xbf\\xdb\\x1e\\x83\\x02A&\\x03\\x820}\\x1a\\x03\\x0c\\xbb[\\x8b\\x86\\xf4xH\\xaa\\xe9\\xe4\\x98\\x02\\xb7,n@\\xe4\\x0e\\x16\\x0b\\x9b70j\\x97\\x8a\\xc5\\xe1\\x06G\\xecE\\x9d\\xb0>\\xd8\\x92a\\xb5\\xc8(\\x1cDd\\x17\\x1e\\x08\\x9b\\x86\\xc7\\x81\\xd6\\xe1`\\xa0\\x818\\x14l#&\\xee\\x15\\x9a\\x89\\xdb\\xbe\\x17Z\\x8a\\x0f\\xf5\\x85\\xc6b\\xf7\\xe2\\xebm\\xc0v\\x83\\xa9\\x0cl[\\\"\\x1a\\x15\\x1a\\xd1W\\xb4!\\x8b\\x13\\x98\\x90\\x85\\xc1\\x16\\xf4U\\x0c\\xe8+\\xd9\\xcfW3\\x9f\\xafj=68\\x16\\x1b\\xcf?\\xc1v\\x023\\xe1V3aE3\\xb18\\x81\\x99X\\x18l&\\xacb&\\xacd&\\xacf&\\xacj&6\\x9e\\x14\\x9b\t\\xc3f\\xa2\\x80\\xc9\\xcav\\xc3\\xadf\\xd0\\xd7\\xba\\xf3\\x87\\xe7zG\\xef\\xf4\\xa3]\\xa7\\x17\\xed:\\xf4\\xa6\\xcbD\t\\x05\\xd6\\xd4\\x13\\xd54R\\xaa\tF\\x815\\x99PM\\xbd\\x92\\xbe\\xbd]r$Xc_Vc&\\xb9\\xaeP\\x1f\\x84\\x03k\\xb3\\xa0\\xda\\xfa\\xa5\\xc4m\\xb5\\xc9p\\n\\x83\\xf0\\x01t\\xa2lT\\xff\\xd3\\xfcHR\\xd9\\xf3\\xbb\\x92\\xa0\\xb2\\xef\\xebM-\\x95\\xb6\\x99\\xf8x\\x87\\x12T\\xf8,>\\xa5\\xe0T\\n3{\\xedi\\xfe\\x9f\\xe8h\\xc2\\xba\\xbe\\x83\\x9f\\x81u}g7\\x93\\xd6\\xd9f\\xf4\\x13\\xbc\\x0c\\xac\\xefOp2\\x99?\\xe1?\\xd1\\x9f\\x84u}\\x07\\x7f\\x02\\xeb\\xfa\\xce\\xfe$\\xad\\xb3\\xcd\\xbe'\\xf8\\x13X\\xdf\\xf3\\xf8\\x13Ua\\x14\\xa3\\xfa\\x0b\\x1e\\xda.\\xff\\xb4E\\xfdq.m_~\\x08\\xa8\\xf9\\\\W\\xe2\\xc4!\\xa6?%\\xd2\\xcdb@=\\xff\\xe6\\x11\\x13\\xb0\\x15Q\\x9f~\\x80S\\x89E\\xa4\\xa7W\\x9fRb\\x8a\\xf3\\xf0N?\\x14\\xe9I\\xbe>#\\xaf\\x8f\\x0fa\\x8b*\\x8d\\xb2J \\xc4-j5\\xaaZyD^\\xb1QT\\xcc\\x97fu\\xf7\\xf2\\xba\\xf9\\xc8\\xb8\\xa8\\xbbW\\xd6\\x0dD\\xceE\\xdd\\xbd\\xaan\\x1e\\x91\\xd7\\xdd+\\xea\\xe6K\\xb3\\xba\\xcb\\x86k\\xa2\\x96\\xd7M\\x07\\x10e\\xfdM\\xe3\\x01L.A\\xd5|\\xa0<\\x97\\xa1P\\x80&\\xd2@\\xad\\x02\\x00Q\\xc9P+\\x01\\xc0\\x142\\x94j\\x00\\xca\\xab{\\xd4\\x9a\\xb6\\xf00>HoS+\\xcc\\xd0\\x07\\xde\\x99\\xb3\\x98\\x01\\xf0\\xe7\\xc2'\\xb3B\\xc8-Ko\\xcf\\x8a\\xa5\\x0e_\\xa4\t \\x9f\\xcf\\x1d\\xbb\\xaa[\\xe4\\x99u\\xf5B\\xe7o$\\x10\\xfb?!\\x84\\xc0\\xc9+9D^Z\\xcb!\\xec\\x08\\x8d\\x1c\\xe2\\xbe@\\xc8!r\\xf8J\\x10\\x89\\xcf75\\xc9\\xdc\\x9e\\xa8K\\xec\\xf9u\\xb3\\x84\\xce_\\xcb#\\xf6\\x7fB\\x1eI\\x17 \\xe5\\x11\\xf6\\x82F\\x9e\\xb6\\x8eP;\\xad\\xb0/(t\\x06\\x85p\\xb5\\xe8!\\xbe\\xa4\\x83\\xf8\\xd2\\xfe\\xe1\\xb7t\\x0f_\\xda;|y\\xe7\\xf0\\xdb\\xfa\\x86\\xdf\\xde5\\xfc\\xb6\\x9e\\xe1\\xcb;\\x86\\xdf\\xd6/\\xfc\\xf6n\\xe1\\xb7\\xf6\\n\\xbf\\xb5S\\xf8*}\\xc2W\\xe8\\x12~[\\x8f\\xf0[;\\x84\\xaf\\xd2\\x1f|\\x85\\xee\\xe0\\xab\\xf6\\x06\\xffI\\x9dA\\xe8\\xf7X\\xe2\\xf7X\\xea\\xf7\\xb8\\xc5\\xef\\xb1\\xd4\\xef\\xb1\\xdc\\xefq\\x9b\\xdf\\xe3v\\xbf\\xc7m~\\x8f\\xe5~\\x8f\\xdb\\xfc\\x1e\\xb7\\xfb=n\\xf5{\\xdc\\xea\\xf7X\\xc5\\xef\\xb1\\x82\\xdf\\xe36\\xbf\\xc7\\xad~\\x8fU\\xfc\\x1e+\\xf8=V\\xf5\\xfb\\xb6\\x80\\x88&v\\x16\\xe7\\xf6\\x82}5j\\xf6t\\x8e\\x16a\\x8c\\x0e\\xe5\\xc7{\\xcf\\xff\\xd2\\xf9\\x0b\\xfd\\xe5A\\x98\\xcd\\xc1\\xc1\\xc8\\x8e\\xcf\\xe7a\\xbab\\x01\\x87\\xbf=\\x86\\x99o1\\xcfqI\\x92I\\xc7\\x14U\\xdc\\xf2\\x960esqMAYt\\xd2N\\xb9\\x93O\\xa3b\\x91\\x9aRP\\xaa\\xa6\\x18\\x12\\xac)U\\xd8\tV\\x9d\\x8e\\x9dl\\xa8\\x93\\x08\\xecK\\xe5\\xf5e\\xe2\\xfa\\xea\\xd2\\xc2\\x82\\xc9\\x8c[\\x17\\xc2\\x82a\\x99`\\x98\\x12\\x8c*u\\x03\\xd9\\xe7\\xfc<\\xe6S\\x81L\\xf1\\\\\\xf2A\\xc2\\xae\\xeb\\xcd\\xdb?4\\xd8u\\xbd\\x94E\\x01\\xfd\\xc5m@`\\xa9C\\x17k\\x0eb\\x17\\xddn\\xaa\\xc5\\xe1\\x96\\x81\\xc5\\xe1\\x16Bi\\xcb8\\\\G<\\xb6x\\xceQ8!^\\xfb\\x01+A\\xfeP\\x80\\x05+ \\x8b8:m\\xe1\\xed\\x90{(\\x90\\xd8\\xde\\x87\\xeb\\xf4<\\x7fD\\xbc\\xfeJ\\xa1\\x7f\\x1c\\x18\\xdbg=Lf~\\xb2\\x1c\\xf6\\x00\\x12\\x01;\\x01\\xcfC\\xe0\\x07\\x00\\x1046\\x89\\x83\\xbd\\x81C\\x08\\x1d\\x82GJ}\\x02\\x84K\\xdd\\x02\\x10\\xa5\\xdd3DDR\\xe7\\xc8\\xd73R\\xffPp\\x10\\x85\\x01\\xd4\\xcd\\x06:\\xa9\\xd3\\xf8m>\\xe3\\xb7\\xb9\\x0c\\xcbA\\xe41\\x1c\\x0ev\\x18\\xbf\\xcd_|Uwa\\x81ro\\x01\\xd0rg\\xe1\\xe4P\\xf0\\x15\\x98F\\xee*\\xfe\\x93<\\x05v\\n,w\\n\\xdc\\xe6\\x14\\xb8\\xcd)X\\x0e\\\"\\xa7\\xe0p\\xb0S\\xe06\\xa7\\xc0\\xaaN\\xc1\\x02\\xe5N\\x01\\xa0\\xe5N\\xc1\\xc9\\xa1\\xe0\\x140\\x8d\\xdc)p\\x9bSPt\\x0b\\x8cvu%D\\xee\\xbd\\x0e{5?\\xd12\\x10\\xf9,\\xfb\\x9dfS\\x9a\\x08\\xe4V\\x99\\x99aJ\\x90\\x90E\\xc4c^R\\xcd^\\xa7!\\xb5E\\x90==7&\\x95\\x94\\xe7F\\xc7\\xe8\\xe4\\xd9|\\xfa\\xb7\\xc6\\xeb\\xf5\\xfc\\xe7\\xea\\x85\\xa9@\\x15\\xf9\\xe1S\\xae\\n\\xbd\\xa9\\\"\\x7f\\xe7A\\xfd\\x13\\xc0\\xa1\\x8c$H\\x1ea\\xece\\xeb\\x89\\xea\\x0b\\xe3\\x13\\xb2\\xcc\\xf5\\xe2\\xe2\\x95\\xff\\xe5\\x17\\xcb\\xeb\\x9a\\x88\\x92\\x82\\xe5\\x04|\\nH\\x90\\xc5H@\\xf5\\xab0\\xf6\\x1e\\xc3 =A\\x808\\xdc\\xb2\\xb5s\\xfd#/\\xdf\\xc6vt\\xa8\\x19d\\xbf\\x9dg\\xffL\\xe8_A\\xbd\\x03\\xa4\\xc5\\xc3\t\\xfb@P\\xaf\\x16\\xa3\\x0d\\x8a\\x13\\x04\\xd4_\\x15M\\xe0\\xc7B+6,\\x8f\\xb6fU\\xa3\\xd0\\x9c\\xb4L\\xa2R\\xd8\\xbc2\\xb9Z\\xcd,\\x91\\x8c`\\x0d\\xd8\\x1b\\x96\\xc9K\\x91\\x9fhIj\\xc7)%N\\xf1\\x19\\xfd\\xfcyS\\x15\\xf90\\xff9\\xff\\xbcy\\x92\\x8f)\\x05\\x0f\\x889\\n\\\\\\x805\\n\\\\\\x96q\\xf6\\x88c\\x8b\\x02\\x17bZ\\xbe\\xe8\\x93\\xe7[\\x14\\xb0\\xac\\xcb\\xa7$\\xf7\\xe2\\x11\\xc4{n'(\\x1b\\xc8\\x00\\xeeU\\x11\\xcb\\xbf~N\\xd6P=\\x845\\x1e\\xa3\\xd4Y\\x81:\\xcfKx\\xad\\x17\\x8f\\xc9\\n\\xcag4\\xff\\x04\\xe1Ee\\xd0\\x8aE\\x06\\x07\\xac\\x97A\\x85\\xc6\\xcb\\xf9\\xe4\\xb6\\x03\\xb84\\xa6jxp\\x96\\xca9T\\x86\\x02\\x98PF\\xc9\\xf9@6\\xc9\\xb94&\\x01\\xf80\\xca\\xcf9\\xc1\\xba/uS\\xaa\\x1e\\xd4\\x0e\\xa9\\xe5\\x9c\\x13\\xa8\\xe4\\xfbu\\x92z\\x8b=\\xd0q\\\"\\xdby`\\xfb\\x0d\\xf1\\xac\\\"\\xac\\xb2T\\\"\\xedW8\\xb6\\xf3\\xe4\\xac\\xa8\\xbeS?\\x01YsF\\xa9Q|\\x07\\xca9\\xb1\\xfd\\x87|\\xc8\\xd6\\x00\\x99\\xab\\xc2\\xccQ\\xbaE(\\xe0+(\\x01L\\x0d\\xd5S\\xb6\\x8a$\\xb2\\x1dT1\\x83k\\xb2\\xf3\\xd74\\x1eh~\\xae\\x97\\xa4\\xb17_\\xa7H\\xc0\\xb2\\xa0\\xa29\\x96\\x08\\xb6\\xf7\\xe4A\\x0da\\xc3\\xc29\\xda,X1\\xa3\\xbaP\\xc3\\xaa\\xe9Ar{Ul\\xd8~\\xd4p\\xa2\\xba\\x91\\xcc4\\x15\\xab\\xda4<\\xaf\\xca\\x0c43\\x89\\x11*\\x9e\\xac\\x11\\x1a\\x96\\x84% \\xaer;0=\\x95\\xb4\\x04\\xd9Qk\\x96P_-\\x0e\\xdf\\xea\\xccl\\xebz\\x81\\x8d\\x8bh\\x9c\\x88A\\xb5\\x1c|\\xaeO\\xca\\xffB\\x9c\\x0c\t\\xa7\\x1e\\xcb\\xc9(9\\x19\\x10\\xa7\\x9e\\x84\\x93\\xc9r\\xea\\x95\\x9cz\\x10'S\\xc2\\xa9\\xcfr2KN&\\xc4\\xa9/\\xe1d\\xb1\\x9c\\xfa%\\xa7>\\xc4\\xc9\\x92p\\x1a\\xb0\\x9c\\xac\\x92\\x93\\x05q\\x1aH8\\x0dYN\\x83\\x92\\xd3\\x00\\xe24\\x94p\\x1a\\xb1\\x9c\\x86%\\xa7!\\xc4i$\\xe14f9\\x8dJN#\\x88\\x13\\xb6\\x93T\\xe6\\x9cz\\xf6?\\x96\\xe38\\xfb\\xdf\\x84\\xf8\\x19\\x085\\x97Y\\xd4\\xa7\\xcb\\xd6C\\xe5\\xbbm7\\xe8\\\\\\x9f\\xd4$\\xe0\\xca*\\xe7e\\xc8\\x96o\\x0d/\\x83\\xe0e\\x00\\xbc\\x92U\\xec\\x05\\x0f\\x99d\\x15i\\x80\\x966)F\\x81\\x00\\x05)\\x89\\x0d\\x80\\xd8\\xa0\\x88\\x0d\\x85\\\\\\xdb\\x81\\xe7O\\xe4\\xfd\\x88\\xc6\\x9e\\xbe\\xa4\\x86\\x18>\\xf7\\xaaZc\\x0e\\x0c/\\xbe\\xcb\\xc2\\x1a\\xac\\xe5\\xf8\\xb55\\xcbFmA\\xf6\\x9c\\xcbk\\x81\\x04\\xadK\\xafgZa\\xe7\\xd5W<\\x8e^d\\xf3\\xd4\\xa7\\xad\\xb3a)\\x9e\\xba\\xd4>\\xcd\\xb8\\x7f\\xcaj\\xfbT\\xab\\x7f\\xbf\\x057+\\xd1\\xf3\\xae\\xb9a\\xee\\xcf\\xb2\\xec\\x86Y?\\xe3\\xca\\x1b\\xae\\xe0\\xb9\\x17\\xdf\\\"\\xfd?\\xd7\\xfa\\x9b\\xeabOY\\x82\\x8b\\x18\\x1d\\xbb\\n\\x17\\xf19a!.bu\\xdaZ\\\\\\xac\\xa9\\x13\\x96\\xe3\\xacY\\x9f\\x7fE\\x0e\\xd6\\xf0|\\x8br\\x90\\xfd3\\xaf\\xcb\\xc1:\\xbe\\xd3\\xd2\\x9c\\xb2\\xee3\\xad\\xce)\\x9eO^\\xa0\\x0b\\xb8\\x9d\\xb6F\\x170;u\\x99.`\\xf7\\xc4\\x95\\xba\\x80\\xeb\\xd3\\x17\\xebB\\xc3\\x1c\\xbb^\\xe7\\xe7\\xeb',\\xd9\\xe5\\xcc\\x8e\\\\\\xb5\\xcb\\x99\\x1d\\xb9p\\x973;r\\xed.gv\\xe4\\xf2]\\xce\\xec\\xc8\\x15\\xbc\\x9c\\xd9\\x91\\x8bx9\\xb3#\\xd7\\xf1rf\\xc7/\\xe5[\\xfc\\xf6\\x89\\xaby\\x96\\xfb\\xe2i\\x0bz\\x90\\xddS\\xd6\\xf4T\\xf7?aY\\x0f\\xd3\\xb3+{\\x85\\xa5\\xbd\\xc21\\x9a\\x9c\\xa7\\xff\\xcc\\xcb}\\x9e\\xdf\\xb3\\xaf\\xf6\\xfd?c\\xb1\\x0fTr\\xc2Z\\xdf?a5\\xf8\\xacK}P\\x80\\xd65\\xdfs\\xad\\xf4\\xfd\\xa7,\\xf4Y\\xe2\\x13\\xd7\\xf9\\x90\\x0cO^\\xe6\\x9fb\\xd7?g\\x95\\x7f\\x9a\\xc1\\xbf\\xe3\\\"\\xdf\\xff\\x9ek|\\x88\\xf9\\xf3,\\xf1!\\xce\\xcf\\xb9\\xc2\\x87\\xf8?\\xfb\\x02\\x1f\\xd6\\xfd\\xb3\\xad\\xef\\xfdgZ\\xde\\xc3|\\x8e^\\xdd\\xc3lNY\\xdc\\xc3\\x9cN\\\\\\xdb\\x8b\\xb4t\\xca\\xd2\\xde\\xff\\xde+{\\xa0\\x82g\\\\\\xd8\\x03\\xdc\\x9f{]\\x0fT\\xf1\\xbd\\x96\\xf5\\xfe\\xf3\\xaf\\xea\\xfd\\xe7\\\\\\xd4\\x83\\xccN\\\\\\xd3\\x83\\xbcN^\\xd2\\x83\\xdc\\x9e\\xba\\xa2\\x07\\x99>\\xc3\\x82^`\\x93\\xa3\\xd7\\xf3\\xec\\xcc\\xfc\\x94\\xe5\\xbc\\x8c\\xd7\\xb1\\xaby\\x19\\xafc\\x17\\xf32^\\xc7\\xae\\xe5e\\xbc\\x8e]\\xca\\xcbx\\x1d\\xbb\\x92\\x97\\xf1:v!/\\xe3u\\xec:^\\xc6\\xeb\\x84e\\xbc\\xd4]\\x9f\\xba\\x8a\\x97\\xae\\xae\\x8e^\\xc4K\\x17\\x84'\\xac\\xe1\\xfd\\xa7-\\xe1!\\xf2\\xe3V\\xf0\\xa2\\xc5:~\\xe6\\xc5:\\xcf\\xef\\xd9\\x17\\xeb\\xf8\\xcfX\\xac\\x03\\x95\\x9c\\xb0X\\xc7',\\xea\\x9eu\\xb1\\x0e\\n\\xd0\\xbav{\\xae\\xc5:~\\xcab\\x9d%>q\\xb1\\x0e\\xc9\\xf0\\xe4\\xc5\\xfa)v\\xfds\\x16\\xeb\\xa7\\x19\\xfc;.\\xd6\\xf1\\xf7\\\\\\xacC\\xcc\\x9fg\\xb1\\x0eq~\\xce\\xc5:\\xc4\\xff\\xd9\\x17\\xeb\\xb0\\xee\\x9fm\\xb1\\x8e\\x9fi\\xb1\\x0e\\xf39z\\xb1\\x0e\\xb39e\\xb1\\x0es:q\\xb1.\\xd2\\xd2)\\x8bu\\xfc\\xbd\\x17\\xeb@\\x05\\xcf\\xb8X\\x07\\xb8?\\xf7b\\x1d\\xa8\\xe2{-\\xd6\\xf1\\xf3/\\xd6\\xf1s.\\xd6Af'.\\xd6A^'/\\xd6AnO]\\xac\\x83L\\x9fa\\xb1.\\xb0\\xc9\\xd1\\x8buvf~\\xcab]\\xc6\\xeb\\xd8\\xc5\\xba\\x8c\\xd7\\xb1\\x8bu\\x19\\xafc\\x17\\xeb2^\\xc7.\\xd6e\\xbc\\x8e]\\xac\\xcbx\\x1d\\xbbX\\x97\\xf1:v\\xb1.\\xe3u\\xc2b]\\xea\\xaeO]\\xacKWWG/\\xd6\\xa5\\x0b\\xc2\\x13\\x16\\xeb\\xf8i\\x8bu\\x88\\x9c[\\xac3\\xf4\\x87\\x05\\x0e\\xed4\\x7fG\\xce\\xe4\\x0fz-\\xcc@\\xe3\\x12\\x9a\\xbf1\\xa7\\x05\\x1b\\x94\\xd8\\x93\\xde\\x82\\xb4\\xc8\\xdf\\x82\\xa4.W\\x83V\\x12\\xad\\x81+\\xbcYH\\xfd\\xfc\\x81\\xe6\\x1f#\\xb2\\x7f\\x94\\xc4\\xbe\\xba\\xc0\\xb0l\\xc7\\x98\\xb9\\x06\\xab\\xc9\\x86)\\xd9\\xa8\\xd2\\xc4\\x0e\\x12-A\\xb1\\xb78,\\xc2 \\xd5\\x16\\xb6\\xef\\xe1\\xfd\\xb9fG\\x11FZ\\xb2OR\\xe4\\x9f]`/x\\x98\\xd9\\xce\\x87\\xfc\\xd7\\xd7a\\x90\\x9e\\xd9\\x1b\\x14xq'@\\xbb\\xea\\xe7\\xb3\\x15\\xc2\\x1b\\x94-r\\x9b\\x9f:\\x01Z\\xa3\\xb3\\xf5|\\x1d\\xa4\\xeb\\xb38\\x9c\\x87ix\\x16d\\xff$h\\x19\\xa2\\xce\\xda;\\xb3c\\xcf\\xc6g\\x8d\\x14\\x8ct\\x9c`K\\x14\\xc6K\\xcf>\\x83\\xc0\\xb9t\\x9a\\xa0E\\xc2*J*\\x9e\\x80\\xc7:\\xa1\\x8b\\xa8\\xf7\\xa0e\\x0f(\\xa2Wa\\x90\\x84\\xd8N\\xce\\xfc0\\xb0\\x9d0\\xfbO\\x98G\\x13,\\xa3u\\xec\\xa1\\x98!\\xcd\\x9fun2\\x95\\x96\\x00\\x11}\\xad`\\x8a\\x03\\xa3\\xf6\\xc6\\x1e\\xa2\\xb6\\x17\\x86\\xa3x\\x00v\\x15R\\xa7+\\x84\\xed\\x84&/\\x9e\\x9dI\\xccT\\x16\\xa9Z5\\xf5|D\\xd7\\x91?\\x81\\xa0\\xf3\\xd0\\x0d\\x03\\x8f\\xc2^\\xe4\\x8f:\\xb3\\x8f\\x10\\xde\\xb1\\xb1\\x97\\xa4!m\\x85\\xe2\\x99\\x80bi\\xc7\\xb6\\x1f\\x06.-|\\xf9\\x10\\x14\\xc9N\\x1eP\\xbc\\xf10\\xa6\\xfd\\x84x\\x0e\\x91\\x95\\x8d(>\\xa1\\xe5\\xa56\\xf6\\x98\\x0f_/\\x12\\xad\\xc8\\xc3\\x91\\xc0\\xe2\\x89\\xc2`I\\x8f=\\xf9;\\xafT\\xebc\\xb0e\\x95\\nu*\\x0c\\xd0^6\\x88\\xaa\\xca\\xe1\\x1f-\\x06X#V\\xaf\\x11\\xd25\\x8d%M\\xb2-r\\xc8}\\xee\\x93\\xefT1\\xf7E\\xf8\\xc5\\xd6\\xa0\\x00\\x06\\x0f\\xe8Q\\x80\\x1e\\x0f0)\\x00\\xf7y\\xfa\\xc5\\xb6/\\x17q\\xb1\\xb5(\\x80\\xc5\\x03\\x06\\x14`\\xc0\\x03\\x86m\\xcd\\x1cQ\\x80\\x11\\x0f\\x18S\\x80\\xb1~\\xfc\\x9b\\xba\\x19\\x8f\\x15Z\\x84E@Fa1\\x90]X\\x0cd\\x1a\\x16\\x03Y\\xa7U\\xe2E\\xf1\\xb9\\xb36\\x1b\\xb1\\x18\\xc8L\\nm\\x1f\\xb1\\x18\\xc8X,&\\xb3\\x97\\x82\\xc1\\x14F\\x05\\xba\\xbf\\x8b\\x8d\\xe8\\xb7\\xb5\\xc3` \\xa0\t\\xfdv\\x0b\\xfa\\xed\\x06l\\x11v\\x91\\x7f\\xed\\xac\\xd5|~\\xbb\\xf5Z\\x1b=b \\xa0\\xed\\xfc#M'\\xb6R\\xdb\\xe0\\xc7\\x00@+\\xe1v+\\xe1v+\\xe1v+\\xb5\\x08\\xbb\\xc8?v\\xd6j%\\xdcn\\xa5\\xd6F\\x8f\\x18\\x08h%\\xcc[\\x89\\xc2xA\\xb4N\\xb5\\x18%\\xa8\\xb9\\xdfnG\\x11\\xb2c;p\\x8a/qN4?|d\\x1f2&Z\\xa7i\\x18\\x14l\\xce\\xcfs\\xfc\\\"t\\xd6\\x89\\xe6\\x05\\x01\\xfb\\x16`\\xa2F\\x1eZ~\\x86\\xed\\\\\\x9fD\\xb6\\xebz\\xc1\\x92]\\x18\\xaf\\x8cC\\xb9\\xd1\\xca\\xbf>y\\xd5\\xab\\xca\\xf8\\xd7\\x19\\xaf\\xcc\\xaa\\xac\\xcf\\x97\\xf5\\xab\\xb2\\x11_f\\xd5\\xf5\\x0d\\xf8B\\xadW\\x17\\xf7\\xac\\x17l\\xa1\\xa5W\\x85\\x16\\xfb\\xa9\\xe5\\x956\\xac)\\x87<\\xa5\\xa1\\xd7\\xa4\\xfcg\\x9a\\xf3\\xcd\\xe6\\x1cBl;\\xf3\\xb0\\x0d-\\xddf\\xc5\\x15\\x93\\xf2\\x01\\xc5\\xa4\\x84@1-#\\x0b\\xc8D\\xdb@R\\xb2\\xc0U\\xf1\\xce\\xb9\\x12\\x90\\xfd\\xcc\\x96{\\xc1\\n\\xc5^ZA\\xca_\\x15\\xe6\\x89\\x03\\xe39\\xd9t#q\\x1e\\xa2\\x18\\xf2\\x1f\\xa2\\x18r!\\xa2\\x18\\xf2\\\"\\xb2n\\xd8\\x91\\xc8\\xea!_\\\"\\xcaAw\\\"\\xcaa\\x8f\\\"E\\x10;U\\x86j\\xf7+JX\\xd0\\xb5(qA\\xef\\xa2\\x04\\x86\\x1d\\x8c\\x16Y\\xecc\\xbc\\xd0\\xb0\\x9b\\x11\\xfc$\\x9eF\\xa0*gS\\xf06\\x85\\xa8d\\x95E\\x132\\x0f\\xf4\\xa5\\x0e\\xe8K\\xfd\\xcf\\x97\\xba\\x9f\\xdf\\xe6}\\xbe\\xdc\\xf9|\\xb9\\xef\\xf9-\\xae\\xe7\\xabx\\x9e\\xaf\\xe2x~\\x9b\\xdf\\xf9mn\\xe7\\xb7z\\x9d\\xaf\\xe6t\\xac\\xbc\\x02\\x9f\\xf3U\\\\\\xce?\\xce\\xe3`\\xe7\\xc2R\\xe7\\xc2R\\xe7\\xc2R\\xe7\\xc2R\\xe7\\xc2m\\xce\\x85\\xe5\\xce\\x85\\xe5\\xce\\x85[\\x9c\\x0b\\xab8\\x17Vq.\\xdc\\xe6\\\\\\xb8\\xcd\\xb9p\\xabsa5\\xe7b\\xe5\\x158\\x17Vq.\\xcc9\\x17\\x05Lc\\xdby@\\xee\\x01\\xa34E\\xb1\\x96D\\xb6\\x93E^]\\x83\\xfb>E\\x01\\xd4\\xd2\\x8c\\x19\\x0b\\xd7\\xba\\xba%\\\"\\xf0\\xd1\\xd2\\xe6\\xd8\\xf72x\\xfb\\xb8z\\x009\\xe6\\xdf/:F\\\\\\x80\\xa2Mb\\xa8\\x92\\\\h\\x05\\xa9\\x15f\\x83\\xba\\xaac[\\xc2\\x11\\xb46\\x84\\xafB\\xa1\\x1d\\x12\\x91\\xf1\\xb1\\\"s\\x04\\xad\\\"\\xf3U\\x14\\\"S\\x14x\\xa5%!\\xf6\\xdcC\\xbe\\x8f^u\\x16\\x0e\\x93z)F4\\xa6\\xdb\\xb38\\x98\\x13F{\\x06e)\\x98\\xfa\\x00\\x8a\\x94;O\\xbbT\\x1cL$\\x18\\x0f\\xb4\\x9e\\xc9\\x0fk\\x89}%\\x81}EyY\\\\\\x9b\\xb82\\xc9\\xb0\\x92dXQ2\\x16g\\xb1^\\xe5\\x05\\x0f\\x87\\x14\\xedR\\xcdEN\\x18\\xdb\\xe5\tVv\\xd1\\x9b\\xc1\\xce\\xb8'\\xe7\\xb6\\x93z\\x1b\\x04\\x14\\xe4\\xcb\\\\\\xe0\\xf9*\\xdc\\xb0k\\xe4\\xfc\\xb9\\x80\\xff\\xc6K\\xbc\\x145o\\x1cMc;H\\xbc\\xea\\\\g\\x18w\\xba\\x86\\x95t\\x90\\x9d \\xcd\\x0b&\\xd2R\\xbe=\\x85\\x90\\x87p\\x9df*:7\\xa2]\\xc7\\x0d\\xd3\\x14\\xb9\\x1dg\\x1d\\xc7(H_eLX\\xba$=d\\xff\\x14Yn-\\xddGP\\x8e\\xc0\\xdf\\x16\\xab\\xc1\\xda\\x15\\x81\\xd9zk\\x90\\xe5\\\\,\\xe1o{D9\\x1f\\xc6\\xf8[\\x93(\\xe7\\x03\\x19\\x7f\\xdb'\\xca\\xf9P\\xc6\\xdfZd\\xfd|0\\xe3o\\x07\\x04\\xc0\\x84$\\x18\\x92\\x12@U\\x8c\\x08\\xc0\\x00\\x92qL\\x00\\xc6\\x90\\x0c\\xc5+\\xd4\\x1b\\xd0I\\x9b\\xf1\\x859\\xf2\\x85\\x93\\xdc\\\"\\x0c\\x042\\n\\x0d\\x01\\xedBC@\\xd3\\xd0\\x10\\xd0:\\x8c,\\xa0\\x81h\\x0cl#F\\x1a\\xd0L4\\x06\\xb6\\x14\\x8d\\x11\\x1b\\x8b\\xc6)\\xec\\xf6\\xab\\x8e\\xdd\\xa5\\x15\\xfdV#\\xfa\\xad6\\xf4[M\\xe8\\xb7Z\\xd0o5\\xa0\\xdfn?\\xbf\\xdd|~\\xbb\\xf5\\xfcv\\xe3\\xf9j\\xb6\\xf3\\x8f3\\x9d\\xd8J\\xb8\\xd5J\\xb8\\xd5J\\xb8\\xd5J\\xb8\\xd5J\\xb8\\xd5J\\xb8\\xddJ\\xb8\\xddJ\\xb8\\xddJ\\xb8\\xddJX\\xcdJ\\x98\\xb3\\x12\\x05\\xdb\\x1a\\x07\\x91Z\\xb7\\xbd\\x83H\\x9f[\\xf3 R\\xe4\\xb6\\x7f\\x10ipk\\x1d\\x84\\xaa\\xcb<\\xa1*e=`\\xab\\xf5\\xaa\\xb2\\x1ePVq\\xe5\\xd6\\xd0[\\xcd\\xac\\xe8L\\x9e\\xce\\xac\\xda`\\x9a|Y\\xd5\\x08\\xb3\\xcf\\x95\\xf5+\\x9e}\\x9e\\xa7U\\x95q\\x0b\\xf6\\xad6\\xa8\\xca\\x06|\\xd9\\xb0*\\x1b\\x02eU\\xfb\\xb8U\\xfeV\\x1bUt#\\x9en\\\\\\x95\\x8d\\xf9\\xb2,\\xe0\\x10\\xf5\\xb7\\xad\\x96\\xae\\xbc\\xd8\\xad\\x95\\xd35\\xb3\\xff\\xf1\\xa0mX\\x00\\x93\\xaaY\\x83\\xee`0\\x18\\x0c9d\\x9e\\xc7.0\\xf9b\\xbc}\\x80?0.\\x9aM\\x13b/mJ!GmJ!_mJ!w%\\xea\\x85=\\x96\\x00@NKH\\x06\\xf9-Q\\x0c\\xb9nS\\x0cz/Q\\x0c90Q\\x0c\\xf90\\xa1\\x16\\xc8\\x8d\\x9bb\\xd0\\x93\\x9bb\\xd0\\x99\\x9bb\\xd0\\x9f\\x89b\\xc8\\xa5\t\\x9b@^\\xdd\\x14\\xc3\\x8eM\\xdaD\\xe0\\xdb\\xa4\\xeaZ\\xdd\\x9bh\\xab\\xcc\\xc3\\x1bX\\xee\\xe4\\n^\\xae\\x10\\xc6\\xe4\\x01\\x8a\\xc4\\xf3}\\x99\\xe3\\xfb2\\xbf\\xf7en\\xef\\xb7x\\xbd/uz_\\xea\\xf3\\xbe\\xd4\\xe5}\\xa9\\xc7\\xfbR\\x87\\xf7\\xa5\\xfe\\xeeK\\xdd\\xdd\\x97z\\xbb/uv_\\xea\\xeb\\xbe\\xd4\\xd5}\\xa9\\xa7\\xfbrG\\xf7[\\xfd\\xdc?\\xc2\\xcd}%/\\xf7\\xd5\\x9d\\x1c\\xf6g,\\xf3g,\\xf3g,\\xf3g,\\xf3g\\xdc\\xe2\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xea\\xcfX\\xee\\xcf\\xb8\\xd5\\x9f\\xf1\\x11\\xfe\\x8c\\x95\\xfc\\x19S\\xfeL!\\xc2\\x0d\\x8a\\x178\\xdcj\\x1b/\\xf1\\xe6\\x18\\x1d\\xaa\\x07\\xe7\\xe5\\x03\\x01|\\xe5\\xb9.\\n\\x1at\\xf1\\xbb\\x00\\x9c8q\\x88q\\x03.~\\x17\\x80\\xf3H\\xaa\\x86\\xf2;\\x1b5p\\xc7\\xc9\\xac\\xedZ\\xa4\\xde\\xb1rk;\\xb9\\xe4;Vvm'\\x97~G\\xcb\\xaf\\xedd-\\xd8\\xf3-\\xd8\\xb7\\xb4`\\xcf\\xb5`/o\\xc1\\x9ek\\xc1^\\xde\\x82=\\xd3\\x82\\xfdi\\x01-\\xebXY\\xe8p\\x94oQ\\x04\\n\\xeeE\\xe1[=\\x8cB\\xab8\\x19I\\xa0\\xecg\\x0c\\x91\\x92\\xab14\\n\\xde\\xc6P\\xa88\\x1cE\\xa2\\xeas\\x0c\\x91\\x92\\xdb14\\n\\x9e\\xc7P(\\xcc\\xc1\\xaa\\x81&\\xe7\\x92\\xfe\\x91\\x1e\\xe9\\x1f\\xe7\\x90\\xfe1\\xfe\\xe8\\x1f\\xe9\\x8e\\xfe\t\\xde\\xe8\\x1f\\xef\\x8c\\xfe\\xb1\\xbe\\xe8\\x1f\\xed\\x8a\\xfe\t\\x9e\\xe8\\x1f\\xef\\x88\\xfe\\xb1~\\xe8\\x1f\\xe9\\x86*\\x1e\\x87\\x8f\\xf48|\\x9c\\xc7\\x1d3\\xc7\\x92`%\\x8f\\xc3'x\\x1c>\\xde\\xe3\\x8e\\x9dki\\x02%\\x8f\\xc3'x\\x1c>\\xde\\xe3\\x8e\\x9dsi\\x02 XKR;\\xf5\\x9cCq\\x055\\xcc\\xdf\\x8d\\x91\\xb2\\xb7Ob\\x84\\xf3;\\xa2\\x0d\\xaazB\\xe3\\xecy\\x12\\xe2uJ\\xe0\\xaa'4\\xae\\xf8\\xa8~\\x0d\\xca\\x7fU\\x18\\x8e\\x0f\\x80\\xe0\\xd9\\xc8\\xae$;\\x05\\x94\\x8bOA%-\\xa0pE#\\x14Z\\xa10\\xa9\\x94M\\xf3\\x15[\\xe6+7\\xccWk\\x97\\x7f\\\\\\xb3\\xc4-\\xc0\\x8a-\\xc0\\xca-\\xc0j-\\xc0\\\\\\x0b\\xe8N\\x92'r\\xc3\\xc8v\\xbct\\xcf\\xbdu@\\x1b7e\\xdd1[8\\\"\\n\\xd9\\xbb\\xe9\\xda\\x90(d/\\xc1k\\x03\\xa2\\x90\\xbdm\\xafYD!{\\xad_\\xeb\\x13\\x85\\xec\\xfb\\x034\\x93(d_T\\xa0\\xf5\\x88B\\xf6\\x8d\\x08\\x9aA\\x14rJ\\xd0\\xad\\xa6P\\xe7$\\xd2{d1{0\\\"\\xd4\\x1a\\xce\\xccy\\xfb8L\\xed\\x14i}\\x8b>o\\xb0\\x08c\\xff\\xbc(\\xfb\\xb1o\\xb9h\\xf9\\xd3D\\xf0\\x1cd7\\xd6\\xc5\\xec\\xc6:\\xcc\\xaex\\x0e\\xb23L\\x89x\\x86)\\x90\\xaf,\\x809\\x8e$\\x12\\x1a#\\x81\\x88e\\x01\\xc8\\xb1\\xd7\\x93\\xc8\\xd8\\xeb\td,\\x0b`\\x8eC\\x89\\x8c\\xbd\\xa1@\\xc6\\xb2\\x00\\xe4h\\x1a\\x12\\x19MC cY\\xa00\\x96\\x1e`\\xd7\\xd2\\x88\\x0f\\x1c<\\x8fwI9\\x9e\\xe6`R\\x96\\xa7\\xfa\\x98\\x9c\\xe9\\x89n&ez\\xaa\\xa7\\xc9\\x99\\x9e\\xe8lR\\xa6\\xad\\xfe\\xa6\\xe0p\\n\\x93w\\xe3\\x85\\xfes;\\xa1\\x84\\xe1\\x89>(\\xe1x\\xb2\\x0b\\xcax\\x9e\\xea\\x81\\x12\\x9e';\\xa0\\x8c\\xe7\\xa9\\xfe'\\xe1\\xf9D\\xf7\\x93z\\x1a~nO\\x930<\\xd1\\xd3$\\x1cO\\xf64\\x19\\xcfS=M\\xc2\\xf3dO\\x93\\xf1<\\xd5\\xd3$<\\xdb=\\x8db:\\xc7\\xb6\\xf3\\x90EP\\xf9y\\xce\\xf3x9\\xb7\\x7f\\xd4\\xcf\\xb2?\\xdd\\xf1O\\x10t\\x04AG t\\x08A\\x87 t\\x00A\\x07 \\xd4\\x82\\xa0\\x16\\x08\\xedC\\xd0>\\x085!\\xa8\tB{\\x10\\xb4\\x07B\\x0d\\x08j\\x80P\\xdd\\x02\\xa0:\\xdb\\xae\\xed\\xca+\\x02\\xde\\x02\\xbbJp\\x8e}qf\\xe8\\xfa\\x0b\\xded\\x05|$\\x82\\xb3f+\\xe0C\\x11\\x9c5]\\x01\\x1f\\x88\\xe0\\xac\\xf9\\n\\xb8%\\x82\\xc3M\\xed\\x8b\\xe0\\xac\\x19\\x0b\\xb8)\\x82\\xb3\\xa6,\\xe0=\\x11\\x9c5g\\x017Dp\\xd0\\xa4%\\xf6\\xaf:{\\x93:@v\\xacQ\\x10\\xc3`V`\\xae\\x1d?h\\xcb\\xd8\\xdeW\\x08\\xd3dVw\\xbe\\xe7R\\x00\\xcbb\\x96ad\\xe1p\\xc8\\xacG\\x13\\x0foP\\\\\\x15s\\xefB\\xc3\\xf95\\x0b\\x1ad\\xdb6#A\\x18\\x06\\x94\\x08\\x8e\\xe3@lH\\x08B\\x08\\xd0E\\xae\\xdd\\n\\xb2\\xe8g\\x7f\\x00\\xf5\\xd7\\x80\\xc5\\x02PV\\x8c\\xdc\\xba\\x92\\xa1\\xde\\xd7\\x19\\x0cQ\\xbcX\\xf4\\x0ds\\x00IJ\\x81\\x86=\\x8biN\\x18\\xdb\\xc1\\x92\\x10c\\xc0]\\xe9_\\x86\\x98\\xe00\\xe7\\xae\\xd9\\xef\\x11\\xc6\\xe1\\xb6Dd`H\\n\\n\\xf4\\xd7\\xc5|a\\xd8\\x8cy\\xa2u\\x1c\\xe1Z\\x10\\x0b\\xf5\\x1c\\x9b\\xbd\\x9c\\x90s\\xa2qv\\x7f`.z\\x80\\xea\\\"/\\xa8=\\xd1\\xb5t}\\xc4\\xe8n\\x15\\xa6\\x14&S\\xe0\\x9c\\xb1\\x10]>\\xd2aW\\xa0Q\\xb6\\xe9\\x0eA\\xb7G(\\xa8{\\x869\\x1cZ=\\xd6\\xb3I\\xc0\\xd8\\x1e\\x0f\\xfb\\xb0\\xdf\\x11\\xb01Bs\\x87iW`o\\xf6M'5\\xe6\\xfd> \\xcd\\x1c\\xafQ\\x03\\xea\\xf7\\xc7\\xec\\xcb\\n\\x88r\\xd3\\x1a\\\"\\x17\\xb4)\\x89\\x1a\\x0f\\x1c\\x87u\\xe1\\x1c\\x85\\x12\\x1a\\xe8\\xb8\\x88\\x03n\\xedd\\x85\\\\\\n\\xb6\\x18,\\x16\\x0b\\x04\\xc2(\\x15\\xa0\\xd1\\xc2]X \\x8eq\\xb9\\xc5\\xc2As\\x10H\\xf5\\x10w\\xe1ro'\\xc3a\\\\_\\xb1/\\x80\\xd5-AZkK\\xad\\x8e<\\xe6\\xb6\\xf3\\xb0,\\xde\\x91ZPH\\x83\\x90\\x8ap\\xd4B\\xc8\\x85$\\x15\\xe1\\xb0\\x85\\x90\\x0bP*\\xc2A\\x0b!\\x17\\xaeT\\x84V\\x0b!\\x17\\xbcT\\x84\\xfd\\x16B.\\x94\\xa9\\x08\\xcd\\x16B.\\xb0\\xa9\\x08{-\\x84\\\\\\x98S\\x11\\x1a-\\x84\\xdc\\x0cY\\x11\\xea\\x96\\x9c\\x90\\x0b\\x81\\xe6K\\xad\\x8e\\x828\\xca\\xb6\\x80\\xa8&\\x86\\xdc\\xa7-<\\xaa\\x89!\\x17j\\x0b\\x96jb\\xc8\\x8d\\xdaB\\xa7\\x9a\\x18r\\xa5\\xb6@\\xaa&\\x86\\xdc\\xa9-\\xac\\xaa\\x89!\\x97j\\x0b\\xb2jb\\xc8\\xad\\xdaB\\xae\\x9a\\x18r\\xad\\xd6\\x00\\xact/\\x9e\\x92\\x0f\\xc7\\xe6K\\x8d\\x88\\xc8x\\x02.8\\x9b/\\xb5&>\\xe3\\xf1\\\\\\xa86_ju\\xb4\\xc6\\xc3\\xb9\\xc0m\\xbe\\x14A\\xb90n\\xbe\\xac\\x824\\x1e\\xcc\\x05u\\xf3\\xa5F\\xc5u<\t\\x17\\xe2e\\x92\\xd7Q\\x1e\\x8f\\xe7\\x02\\xbe\\xba\\n\\x01\\x01\\x17\\xfeU\\xba/\\x02<\\x9e\\x00\\n\\x06+\\xc7\\x80\\xe0\\xect9_\\x16+\\xe4\\xc8\\x8eQ\\x90\\xf2\\x14D!l\\xe3l\\xc2\\x03\\xda\\x01D\\x98\\xf3\\xa5\\x00\\x0c\\xc5\\x9b\\xb5\\xa2D$|\\xf49_je\\x00\\n\\xe1\\xf9X4s\\xa3,\\x1c\\x85\\xd0|d:_VA\\x00\\x87\\xe7\\xe3\\xd4Zz\\x11\t\\x18\\xb5\\xce\\x97U@\\nt\\x02 \\x86\\xadk\\x11RA\\x11me\\xb8<\\xd4\\xe4I\\xa0\\xf8v\\xbe\\xd4\\xea\\x10\\x176\\x1f\\x1b\\xedfM\\x11\\xa1\\xf9\\xd8\\xb7i\\x88\\x88\\x86\\x8f\\x84\\x9b1&\\x8b\\xe0\\x80A\t\\x88\\x8b\\xf3\\x81C\\x00\\x07\\xa2d\\xa2\\xb3\\xc2DP\\xcc\\x9cu\\xd8,l\\x86\\xc6U>\\x82\\xaeZ\\x91\\x87\\xab\\x10\t\\x10O/Eh(\\xba\\xae\\xdb \\xa0\\x81b\\xed\\x8a\\xa6\\x0e\\xb7\\x81\\x81\\x0d\\x88\\xbc\\xb3a\\x87\\x08\\xbe\\x013\\x02qxC$R2\\x14\\x957T\\xe2\\x0e\\x06\\xc4\\xe8\\x0d\\x99hT\\xe1#\\xf6\\xf9\\xb2\\x0e\\xd79\\x020r\\xcf\\xef\\x97\\x17s%t\\x07\\x9d,\\xce\\x7fn\\xd6N\\xec\\xbb\\xd7rd3\\xf3\\x8a\\xb9\\x11\\x18\\x8a%71\\x17\\xf0zn\\x16sl \\x14Cn\\xe6.\\xd0\\xd5\\xe4-\\xe6W#(v\\xdc\\xcc^\\x80\\xe5\\xacx6\\xdc\\xac_\\x00\\x8bY\\\\\\xcc\\xa8,\\xa7Xq1A\\x01%\\xc3\\x021C\\nE\\xb1\\xe5\\xe2\\x86R+U\\xe8 Q\\\\\\x0d\\xa1\\x18r\\x81\\x05)\\x81\\x9c#\\x81\\xa1Xr\\xa1\\x07\\xe1[y8\\xd1\\xe2\\x7f\\x05\\x86b\t\\x05'\\x05E\\x0bC\\x88\\x17;\\xdc\\x10\\x1dI\\x1b\\xeb-]-C\\x90\\xecd+h\\x92l\\xd4\\xcax$f\\xcc.\\x8fH\\xb2a+\\xe3\\xa1\\x981\\xbbt\\\"\\xc9\\x06\\xad\\x8c\\x07b\\xc6\\xec\\xb2\\x8a$\\xb3Z\\x19[b\\xc6\\xec\\x92\\x8b$\\xeb\\xb72\\xee\\x8b\\x19\\xb3\\xcb1\\x92\\xcclel\\x8a\\x19\\xb3K5\\x92\\xac\\xd7\\xca\\xb8'f\\xcc.\\xe3H2\\xa3\\x95\\xb1!f\\xcc.\\xf1\\x88\\xae$\\xed 5\\x82d\\xdc\\x96' Ie\\x9d\\xa4F\\xc8\\x98\\xc3\\x1d\\xa5J%\\xb41\\x1f\\xca\\x99\\xc3\\x9d\\xa5J5\\xb41\\x1f\\xc8\\x99\\xc3\\x1d\\xa6JE\\xb41\\xb7\\xe4\\xcc\\xe1NS\\xa5*\\xda\\x98\\xf7\\xe5\\xcc\\xe1\\x8eS\\xa52\\xda\\x98\\x9br\\xe6p\\xe7\\xa9R\\x1dm\\xcc{r\\xe6p\\x07\\xaaR!m\\xcc\\x0d9s\\xb8\\x13\\x95\\x81\\x9e\\x98w\\x05 Y\\xcb\\xa2\\xc3e[HW#\\n\\x8e\\xd0\\xd2\\x00\\x0c\\x17\\xa9\\\\\\x8d\\x94=\\x174\\x02\\x8b\\\"8~$\\xd3;\\xd2*\\xd8(\\x12X\\xb2\\xc0\\x01%\\x91\\x10\\x92V\\xc0\\x84\\x95\\xc0\\xb2\\x19\\x8e0\\xcb\\x0c\\x92\\x94\\xb7\\x94\\xaf \\xe4\\xac\\xd3MR\\xceT\\x84\\x08,\\xc9\\xe0\\x18\\x94\\xc9NIk\\x00\\\"Q 9\\x00\\x07\\xa5dJK\\xae|&4\\x05V\\x89p\\x94J%\\xc1\\x14\\xda!\\xadC\\x10\\xb6Ry\\xb3\\xf6~@\\x06\\x9c\\xc0\\xbaP\\x18\\xc7V\\xa96i\\x0d-\\xcc\\x05\\x81-\\x95\\x98\\x93\\xf2'q\\x82Z\\x84i\\xbc\\x9a\\x89B \\xbddci\\xae\\x1a\\x85\\xb0z\\xa9\\x12Y/\\xd9\\xe0ZZ\\x93 \\xce^\\xaa\\x84\\xdaK6\\xda\\x96\\xd6$\\x08\\xbc\\x97*\\xb1\\xf7\\x92\\x0d\\xbf\\xa55\t\\\"\\xf1\\xa5J0\\xbed\\xe3qiM\\x82\\xd0|\\xa9\\x12\\x9d/\\xd9\\x00]Z\\x93 V_\\xaa\\x84\\xebK6b\\x97\\xd6$\\x08\\xde\\x97*\\xf1\\xfb\\x92\\x0d\\xe1\\xa55\t\\xa2\\xf9\\xa5J@\\xbfdcziMpdBl\\xf6\\xb5\\x8fA\\x92\\x9e\\xab\\x16\\xef\\x13\\xbb\\x83\\n\\xb5\\x89{\\xaf\\xda\\x02\\x80\\xd8NT\\xa8M\\xdc\\x83\\xd5V\\x04\\xc4\\xfe\\xa3Bm\\xe2^\\xac\\xb6D 6,\\x15j\\x13\\xf7d\\xb55\\x03\\xb1\\xc3\\xa9P\\x9b\\xb87\\xab-\\\"\\x88-Q\\x85\\xda\\xc4=ZmUA\\xec\\xa1*\\xd4&\\xee\\xd5j\\xcb\\x0cb\\xd3U\\xa16q\\xcfV[wT;l\\xe2\\xaajDQO\\x15\\x14\\x01\\xdbo\\x05^\\xca\\x8c\\xe3\\x03\\xed\\xcc\\x15\\xd0zsN\\xcc\\xad\\x810<\\xf9\\xad\\xbb\\x82\\xa0\\xd8\\xbd\\x133,\\xcb\\x19n\\xfc\\xc6^\\x81^\\x86X\\\"\\\\^\\xcap\\xe27\\xfd\\nl\\xb1\\xc7 \\xe6U\\x96\\x93\\xdc\\xf8-AR'm\\x0c)\\x14-$\\xb0mX\\xd0\\x14{\\x80b\\x9ee9\\xc5\\x0d\\xdaT$%h\\xe3I\\xa1(\\xce\\xd0\\xc6#\\xe1\\xb0\\x91\\xe0\\x05\\xbd,\\x84\\xe2\t\\x9f\\xbc\\xcb\\x08\\xaa\\xcdI1\\xcb\\x1a\\xc1\\xb97\\xbbsYjK\\xca\\x0d\\xe2\\xc4\\xefjR:\\x92\\xf2#0\\x0cW~\\xdf\\x93PQ\\xbec\\xd6\\xa2\\xc6\\x02Cq\\x85vF\\xcbN!g\\x08\\xf1\\x02\\xb6M\\xc96\\xb5p$A\\x14_hg\\xb5 \t\\xec\\x8dd\\xcd\\x98\\x97R\\x9c\\xa0]WB?s\\xbc\\x968x\\x03ax\\xf2\\xdb\\xb2\\x05\\x81\\x9c\\x1d\\xcf\t\\xda\\xb2%U#\\xe7G`h\\xed\\x01\\x9b\\xba\\x04E\\xb5\\xaf\\xdb\\xc2\\xb8\\x86Q\\xbc\\xa1\\x9d\\xdf\\x82\\x88\\xd8\\xfc\\x15s&A\\xb4\\xaf\\x03\\x9b\\xc3\\x14I\\x8b+Q(\\x8a3\\xb4\\x81L\\xd1\\xb4\\x0d\\xc74\\x8c\\x96\\x1a\\xd8e\\xa6\\x88\\xa43$\\x81a\\xb8\\xf2\\xfb\\xd0\\xa5\\x07-\\x15b\\x02\\x12T\\xf0\\x05\\xd2&\\xc2\\x08\\xa18\\xa6#\\xe5.c,\\x0e\\x19\\xc8#=R\\xf6l\\xe0\\x00U\\\"\\x8a!\\xeaC@\\xd2\\x1a\\xa8H\\x02b/\\n*\\xca3CR\\xe6Dh\\x01\\xb1\\x16E\\x19\\xf5\\x01#)s\\xca\t9\\xf6\\xa2\\xb0\\x839\\x8f\\xa4\\xa0}y=\\x928\\xa4>\\xc4$\\xad\\x84\\x8a\\x19x\\xf6\\xe2\\xc0\\x849\\xf3\\xa4\\xd0\\x92\\x96\\xaa\\xc4\\x91\\nyP\\xaa\\xbd\\xb3\\x11\\xb37_\\x898t!\\x8eVI\\xeb`\\x02\\x18\\xb8\\xdf\\xc1\\xb1Ly\\x16Kn\\x0f9kQpC\\x1d\\xdcR\\xb1\\x85\\xbc\\x1aQ\\xb4C\\x9d\\xf5j7\\x059\\x07\\xf0\\xd5\\x88\\xc3\\x9f\\xeax\\x98\\xbcw\\xcb\\x99\\x0b\\xe3!\\xfa0\\x99\\x82\\xae\\xe4\\x15\\x89\\x03\\xa4\\xf2\\x00\\x9a\\xb4\\x06\\\"L\\xe2Y\\x8b#&\\xf2\\xb4Z\\xbb\\x19\\x889\\x1e\\xaaD\\x18B-\\xdb\\xf9KY\\x8bc*\\xea0\\x9c\\x82\t\\xa4\\xd5\\x88\\x83,\\xf6\\xfc\\\\{ML\\xa8\\xc5W&\\x8e\\xba\\xe8Sw\\xd2\\xaa\\xf8\\xd8\\x0b\\xe8\\x84\\xc20\\x8c9\\xa9\\xa7R\\x93\\xdc\\x85\\xc5q\\x19{\\xbcO\\xa5\\xae\\xb6\tK\\x18\\xa8Q\\x87\\x02Uj\\x92\\x07&\\x92\\xc8\\xadu\\x17\\x99\\xc0\\x08*\\x00\\xf7\\x94#[?\\x08\\xbe\\xdf\\x1a\\xd9F]\\xd4\\xedY\\xdc{j#\\xbb\\xd7\\x94C\\xc5f]\\xcc\\xbfY7\\xb2\\xfbu)\\xffj\\xdd\\xc8\\xb6\\xeaR\\xfe\\xdd\\xba\\x91=\\xa8K\\xf9\\x97\\xebF\\xf6\\xb0\\xa9\\x97\\x7f\\xbbn\\x84\\xeb\\x06k\\x18-R\\xae\\xd5\\xd8\\xa0\\xcb\\xc1\\xa6\\xe3\\x1e\\x03\\x820&\\x8d\\x01\\x94\\x80\\xfb4\\x04\\xd0\\x04\\xb6h\\x08\\xa0\\x0e<\\xa0!\\x80N\\xf0\\x90\\x91\\x05PL\\xdc(&\\xce\\x06\\x16N3\\xb1\\xc1\\x00@\\xd5\\xc4=\\x16\\x05\\x81L\\x06\\x04('\\xee3\\x18@;\\xb1\\xc5`\\x00\\xf5\\xc4\\x03\\x06\\x03\\xe8'\\x1e\\xb2\\xf2\\x00\\n\\x9a7\\n\\x9a\\x87i\\x1a\\xfa\\x9c\\x86\\xe6\\x06\\x8b\\x00U4\\xefq0\\x08e\\xb2(@I\\xf3>\\x0b\\x02\\xb44\\xb7X\\x10\\xa0\\xa6\\xf9\\x80\\x05\\x01z\\x9a\\x0f9\\x99\\x00E\\xa5\\x8d\\xa2\\xd20\\xe2\\xb4\\x94\\x1aT1\\xa8\\xa2\\xb4Gc \\x88IA\\x00\\xe5\\xa4}\\n\\x01h&\\xb5(\\x04\\xa0\\x96t@!\\x00\\x9d\\xa4CZ\\x0e@!\\x1bF!\\x93\\x16?\\xda@\\x1ab\\x89@\\xbdm\\x00\\xbdq\\x84\\x10\\x1d\\xafL\\x96\\x0cP\\xf0\\x86W0K\\x05(}\\xc3+\\x9d\\xa5\\x02\\x0c\\xb1\\xe1\\x0d\\xc1R\\x01\\xc6\\xd9\\x00\\xc6\\xe1\\x1a\\x06Xl\\xc5\\xce\\x125\\x11<6\\xae\\xc0Y\\x83!\\x02-\\xb6\\x82\\xa6\\x12\\x96\\x10\\xa2\\x03\\xa6\\x17\\x86\\x0c\\xb0\\xd8\\n\\x98q\\x18*\\xc0b+`\\x12b\\xa8\\x00\\x8b\\xad\\x80y\\x89\\xa1\\x02,\\xb6\\x82\\xa6*\\xb6a\\xc0\\xc7\\x85l\\xfd\\xe0\\xdb\\xf1\\xd2\\x0bX\\xdb\\xf8\\xb6Q\\x95@\\x06\\xf0\\xed^]\\x0c\\x95\\x9aU)\\xf0\\x95'\\xbb_\\x15\\x02\\x9fU\\xb2\\xad\\xaa\\x10\\xf8Z\\x92=\\xa8\\n\\x81\\xaf-\\xd9\\xc3\\xbaN\\xa0\\xa1\\xb8j(\\x18\\xbf\\xf8\\xd8\\xa0\\x8a\\xc1&\\xe3\\x1e\\x8d\\x81 &\\x05\\x01\\x1a\\x8f\\xfb\\x14\\x02\\xd0\\x00\\xb6(\\x04\\xa0\\x06<\\xa0\\x10\\x80.\\xf0\\x90\\x96\\x03PH\\\\+\\x04\\xec\\x9b~l\\xd0\\xe5\\xa0J\\xe2\\x1e\\x03\\x820&\\x8d\\x01\\x94\\x12\\xf7i\\x08\\xa0\\x95\\xd8\\xa2!\\x80Z\\xe2\\x01\\x0d\\x01\\xf4\\x12\\x0f\\x19Y\\x00\\xc5\\xcck\\xc5\\xc0\\xf3\\x8c?7\\x18\\x00\\xa8\\x9ay\\x8fEA \\x93\\x01\\x01\\xca\\x99\\xf7\\x19\\x0c\\xa0\\x9d\\xb9\\xc5`\\x00\\xf5\\xcc\\x07\\x0c\\x06\\xd0\\xcf|\\xc8\\xca\\x03((\\xad\\x15\\x04\\xc4)~j\\x90\\xa5\\xa0j\\xd2\\x1e\\x05\\x81\\x10&\\x89\\x00\\x94\\x92\\xf6I\\x00\\xa0\\x91\\xd4\\\"\\x01\\x80:\\xd2\\x01\t\\x00t\\x91\\x0e)\\x19\\x00ElhEL\\xe4n\\xb3\\x01\\x143Qp\\xa4\\x0d\\xaf-\\x96\\x0c\\xa2\\xe248i\\xf5\\xb4\\x0d\\xa7\\xd4I\\xab\\xe7m8=OZ=q\\xc3\\xa9~\\xd2\\xea\\x99\\x1b\\xde\\x1al\\x83\\x00\\x0b\\xad\\x98Q\\xbf\\\"\\x81\\x87\\xbc\\x154\t\\xd0$\\xa0\\x85V\\xc0\\xc4\\xc0\\x90AT\\xfc\\\\A\\x13\\x01\\x16Z\\xf1\\xb3\\x07M\\x03Xh\\xc5\\xcf'4\\x0d`\\xa1\\x15?\\xc3\\xd04\\x80\\x85V\\xc0\\x9c\\xc34(\\xb7P\\xfb[-\\xe9\\xd7\\nFv\\xfer\\xce2\\x96\\x01\\xf2-d\\xa9 \\xe5BA \\x84I\\\"\\xc0\\xc4\\x0b\t\\x00s/$\\x00L\\xbf\\x90\\x000\\x03C\\xc9\\x00&a\\x08\\x84(\\x0f\\xc3A\\x04\\xa9\\x18\\x1e\\x07\\xc1L\\x0e\\x06&d8\\x14\\x98\\x93\\xe1P`Z\\x86C\\x81\\x99\\x19^.09C\\xc2D\\xf9\\x19\\x1e#H\\xd1\\x00@\\x08g\\xf280Q\\xc3\\xc3\\xc0\\\\\\x0d\\x0f\\x03\\xd35<\\x0c\\xcc\\xd8\\x00\\xb2\\x81I\\x1b\\x12'\\xcc\\xdb\\x00 A\\xea\\x06BB@\\x13\\x00\\x82\t\\x1c\\x00\\x07\\xe6p\\x00\\x1c\\x98\\xc6\\x01p`&\\x07\\x92\\x0fL\\xe6\\x90@8\\x9f\\xc3\\\"\\x04)\\x1d\\x0e\\x06\\xa1L\\x16\\x05&vX\\x10\\x98\\xdbaA`z\\x87\\x05\\x81\\x19\\x1eN&0\\xc9\\xc3)\\xaa=\\xcf\\x03kN1\\xd5\\x03\\xeaS-\\xdb\\x03)Y)\\xe1\\x03)^)\\xe7\\x03\\x19C)\\xed\\x03\\x19H)\\xf3\\x03\\x1aM-\\xf9C\\x92*\\xe6\\x7f8\\x92cR@<1D\\x0b\\x91\\xc2\\xd3\\x9aJ\\\"\\x88#T\\xcd\\x05q\\x84\\xaa\\xe9 \\x8eP5#\\xc4\\xb7Q9)\\xa4\\xe5\\xdfs\\x8f\\xe1\\xbc\\x10Q(H\\x0d\\x91\\x08\\x08`\\x12\\x000AD\\x94\\x839\\\"\\xa2\\x1cL\\x13\\x11\\xe5`\\xa6\\x88\\xac\\x1fL\\x165\\x00Q\\xbe\\x88E\\x08RF\\x1c\\x0cB\\x99,\\nL\\x1c\\xb1 0w\\xc4\\x82\\xc0\\xf4\\x11\\x0b\\x023H\\x9cL`\\x12\\x89@\\x89\\xf2H\\x1cD\\x90J\\xe2q\\x10\\xcc\\xe4``B\\x89C\\x819%\\x0e\\x05\\xa6\\x958\\x14\\x98Y\\xe2\\xe5\\x02\\x93K\\x04L\\x98_\\xe21\\x82\\x14\\x13\\x00\\x84p&\\x8f\\x03\\x13M<\\x0c\\xcc5\\xf100\\xdd\\xc4\\xc3\\xc0\\x8c\\x13 \\x1b\\x98t\\\"pp\\xde\\x89\\x01\\x08RO,\\n\\x02\\x99\\x0c\\x08L@1\\x180\\x07\\xc5`\\xc04\\x14\\x83\\x013Q\\xac<`2\\x8aUPk>\\nT\\x98ZJ\\n\\xd2\\xa2RV\\n\\xd0\\xacJb\\nP\\xb6Jn\\n\\xd0\\xbfJz\\n0\\x89J\\x86\\n\\xb2\\x92R\\x92\\x8a T\\xcbS\\xb1\\x04G\\xa4\\xaa8R\\x80\\x12\\\"\\x04\\xe7(\\x85\\x84\\x15K\\xa6\\x98\\xb3b\\xc9\\x14\\xd3V,\\x99b\\xe6\\x8ak\\x9b(y\\xa5\\x90\\xbdR\\xf8&Kd\\xeb\\x9a_\\xc5fPF\\xab)\\x14%\\xb4\\x08\\x04\\x040\t\\x00\\x9c\\xcej\\xca\\xe1lVS\\x0e'\\xb3\\x9ar8\\x97E\\xd4\\x0f\\xa7\\xb2|f\\xad\\xc0\\\"\\x0c\\x16!Jd\\xb10\\x08e\\xb2(8\\x8d\\xe5\\xf3\\xb1=\\x0b\\xb2X\\x10\\x9c\\xc4\\xf2\\xf9\\x98\\x9d\\x05\\x0d9\\x99\\xe0\\x14V\\x83\\x12f\\xb0X\\x88(\\x81\\xc5\\xe1 \\x98\\xc9\\xc1\\xe0\\xf4\\x15\\x8b\\x82\\xb3W,\\nN^\\xb1(8w\\xc5\\xc9\\x05\\xa7\\xae\\x1a\\x988s\\xc5aD\\x89+\\x1e\\x08\\xe1L\\x1e\\x07\\xa7\\xad8\\x18\\x9c\\xb5\\xe2`p\\xd2\\x8a\\x83\\xc19+^68e\\xd5\\xe0\\x04\\x19+\\x1a JX1(\\x08d2 8]Ec\\xe0l\\x15\\x8d\\x81\\x93U4\\x06\\xceU1\\xf2\\xc0\\xa9*FA\\n\\x99*Hc\\xaa\\x89*@\\x8f\\x8ay*^\\xb9ji*^\\xe1jY*\\xde\\x08jI*\\xde0j9*\\xc0X\\x8a)\\xaa\\x86R5C\\xc5P\\x1c\\x95\\xa0bi!R\\x88\\x12\\x9c\\xae\\x94\\xd2S\\x0c\\x9drv\\x8a\\xa1SNN1t\\xca\\xb9)\\xb6}\\xea\\xa9)\\xbf\\x8c\\xd4\\xa0\\xccT]&JL5\\x00\\xa8\\xdcl\\xca\\xe1\\xb4T]\\x0cg\\xa5\\xeab8)U\\x17\\xc39\\xa9\\xa6n8%\\xe5\\xd3k\\x04\\x16`0\\x00QB\\xca\\xe7\\xc3\\x7f\\x16d2 8\\x1d\\xe5sq=\\x8b\\xb1\\x18\\x0c\\x9c\\x8c\\xf2\\xb9\\x88\\x9d\\xc5\\x0cYy\\xe0TT\\x0d\\x12f\\xa2\\x18\\x84(\\x11\\xc5\\xc2 \\x94\\xc9\\xa2\\xe04\\x14\\x03\\x82\\xb3P\\x0c\\x08NB1 8\\x07\\xc5\\xca\\x04\\xa7\\xa0j\\x948\\x03\\xc5BD\t(\\x0e\\x07\\xc1L\\x0e\\x06\\xa7\\x9fX\\x14\\x9c}bQp\\xf2\\x89E\\xc1\\xb9'N.8\\xf5T\\xc3\\x04\\x99'\\xaa\\\\\\x94x\\xa2A\\x10\\xc6\\xa41p\\xda\\x89\\x82\\xc0Y'\\n\\x02'\\x9d(\\x08\\x9cs\\xa2e\\x81SN\\xb4b\\xda3N\\x80\\xa2\\x14\\x13N\\xbc\\xf6\\xd4\\xf2M\\x9cF\\x95\\xd2M\\x9c\\x92\\x95\\xb2M\\x9c\\xde\\x95\\x92M\\x9c)\\x94rM\\xbcu\\xd4RM5\\x9db\\xa6\\x89\\xc6\\x1f\\x93hb(\\x01B\\x88\\x0e\\x9a{T\\xd2L4\\x95j\\x96\\x89\\xa6RM2\\xd1T\\xaa9&\\xa6]\\xa7\\xa5\\x98\\x04\\xd9$\\\\\\x85SP6\\xa9)\\x14e\\x93\\x08\\x04\\x040\t\\x00\\x9cMj\\xca\\xe1lRS\\x0eg\\x93\\x9ar8\\x9bD\\xd4\\x0fg\\x930\\x13\\xd7\\xb3\\x08\\x83E\\x88\\xb2I,\\x0cB\\x99,\\n\\xce&a>\\x16gA\\x16\\x0b\\x82\\xb3I\\x98\\x8f\\xb2Y\\xd0\\x90\\x93\t\\xce&5(a6\\x89\\x85\\x88\\xb2I\\x1c\\x0e\\x82\\x99\\x1c\\x0c\\xce&\\xb1(8\\x9b\\xc4\\xa2\\xe0l\\x12\\x8b\\x82\\xb3I\\x9c\\\\p6\\xa9\\x81\\x89\\xb3I\\x1cF\\x94M\\xe2\\x81\\x10\\xce\\xe4qp6\\x89\\x83\\xc1\\xd9$\\x0e\\x06g\\x938\\x18\\x9cM\\xe2e\\x83\\xb3I\\x0dN\\x90M\\xa2\\x01\\xa2l\\x12\\x83\\x82@&\\x03\\x82\\xb3I4\\x06\\xce&\\xd1\\x188\\x9bDc\\xe0l\\x12#\\x0f\\x9cMb\\x14\\xa4\\x90M\\x824\\xa6\\x9aM\\x02\\xf4\\xa8\\x98M\\xe2\\x95\\xab\\x96M\\xe2\\x15\\xae\\x96M\\xe2\\x8d\\xa0\\x96M\\xe2\\x0d\\xa3\\x96M\\x02\\x8c\\xa5\\x98Mj(U\\xb3I\\x0c\\xc5Q\\xd9$\\x96\\x16\\\"\\x85(\\xc1\\xe9J)\\x9b\\xc4\\xd0)g\\x93\\x18:\\xe5l\\x12C\\xa7\\x9cMb\\xdb\\xa7\\x9eM\\xc2eP\\x06e\\x93\\xea2Q6\\xa9\\x01@\\xe5fS\\x0eg\\x93\\xeab8\\x9bT\\x17\\xc3\\xd9\\xa4\\xba\\x18\\xce&5u\\xc3\\xd9$L\\xaf\\x03X\\x80\\xc1\\x00D\\xd9$\\xcc\\x07\\xf9,\\xc8d@p6\ts\\xf1;\\x8b\\xb1\\x18\\x0c\\x9cM\\xc2\\\\l\\xceb\\x86\\xac<p6\\xa9\\x06\t\\xb3I\\x0cB\\x94Mba\\x10\\xcadQp6\\x89\\x01\\xc1\\xd9$\\x06\\x04g\\x93\\x18\\x10\\x9cMbe\\x82\\xb3I5J\\x9cMb!\\xa2l\\x12\\x87\\x83`&\\x07\\x83\\xb3I,\\n\\xce&\\xb1(8\\x9b\\xc4\\xa2\\xe0l\\x12'\\x17\\x9cM\\xaaa\\x82l\\x12U.\\xca&\\xd1 \\x08c\\xd2\\x188\\x9bDA\\xe0l\\x12\\x05\\x81\\xb3I\\x14\\x04\\xce&\\xd1\\xb2\\xc0\\xd9$Z1\\xed\\xd9$@Q\\x8a\\xd9$^{j\\xd9$N\\xa3J\\xd9$N\\xc9J\\xd9$N\\xefJ\\xd9$\\xce\\x14J\\xd9$\\xde:j\\xd9\\xa4\\x9aN1\\x9bD\\xe3\\x8f\\xc9&1\\x94\\x00!D\\x07\\xcd=*\\xd9$\\x9aJ5\\x9bDS\\xa9f\\x93h*\\xd5l\\x12\\xd3.a6\\x89\\\"\\x0c\\x9a[\\xfd\\x1a\\xa4\\xe8\\xa0\\xb9\\xd6\\xaf\\x01\\xfa\\x0c\\x9a{\\xfd\\x1a\\xaf\\xb7\\xa0\\xb9\\xd8\\xaf\\xf1\\xfa\t\\x9a\\x9b\\xfd\\x1a\\xaf\\x87\\xa0\\xb9\\xda\\xaf\\xf1\\xed\\x0d\\x9a\\xbb\\xfd\\x1a\\xe0\\x88\\x01s{\\x1fn\\x1as}\\x1fl\\x1fs\\x7f\\x1fj$s\\x81\\x1fj)s\\x83\\x1fj.s\\x85\\x1fj3s\\x87\\x1fl8{I\\x1fn9{K\\x1fl:{M\\x1fj;{O\\x1fj<{Q\\x1fj={S\\x1fj>{U\\x1fl?w\\x15\\x1fV\\x00w\\x17\\x1f\\xd4\\x00w\\x19\\x1fR\\x01w\\x1b\\x1f\\xd2\\x01w\\x1d\\x1fR\\x02w\\x1f\\x1f\\xd2\\x02w!\\x1fT\\x03}\\xe7\\x1e\\xd6\\x01}\\xe9\\x1eT\\x00}\\xeb\\x1ej=}\\xed\\x1ej:}\\xef\\x1ej7}\\xf1\\x1ej4}\\xf3\\xbelq\\xfb\\xc1\\xcb\\x033f\\x90\\x17UD\\xa3\\x1d\\x05\\x01\\x07<\\x12\\x01\\x8ey$\\x00\\x1c\\xf6H\\x008\\xf2\\x91\\x00p\\xf0\\xa3d\\x00\\xc7?\\xf6\\x00\\xabh\\x08\\xe4q\\xe0(\\xc8\\xc1\\xc0\\x81\\x90C\\x81c!\\x87\\x02\\x87C\\x0e\\x05\\x8e\\x88\\xbc\\\\\\xe0\\xa0H\\xc0\\xe4\\xe3\\\"\\x00\\x04\\x87F\\x1e\\x07\\x8e\\x8e<\\x0c\\x1c y\\x188F\\xf20p\\x98\\x04d\\x03GJ\\x02\\xd72XBHp\\xbc\\x04\\x80\\xe0\\x90\t\\xe0\\xc0Q\\x13\\xc0\\x81\\x03'\\x80\\x03\\xc7NH>p\\xf8$\\x80\\xb2\\x11\\x94\\x83\\x81\\x83(\\x8b\\x02\\xc7Q\\x16\\x04\\x0e\\xa5,\\x08\\x1cMY\\x108\\xa0r2)l5\\xaa\\x9ef\\x0f\\xc8\\x83W\\xc2\\x81\\x96@\\xc0\\xe3l\\x03\\x80\\x87\\xd9\\xa6\\x1c\\x1ee\\x9brx\\x90m\\xca\\xe11\\x96\\xa8\\x1f\\x1eb\\xe9\\xfd[\\xe1\\x08\\xcb\\xc2\\xe0\\x01\\x96A\\xc1\\xe3+\\x03\\x82\\x87W\\x06\\x04\\x8f\\xae\\x0c\\x08\\x1e\\\\Y\\x99\\xe0\\xb1\\xd5gF\\x1b\\xd1\\xd0\\xca\\xe1\\xe0\\x91\\x95\\x85\\xc1\\x03+\\x8b\\x82\\xc7U\\x16\\x05\\x0f\\xab,\\n\\x1eU9\\xb9\\xe0A\\xd5g\\x07\\x18\\xd1\\x98\\xca\\x03\\xe1!\\x95\\xc3\\xc1#*\\x07\\x83\\x07T\\x0e\\x06\\x8f\\xa7\\x1c\\x0c\\x1eNy\\xd9\\xe0\\xd1\\xd4\\xa7\\xc6\\x1a\\xd1`\\xca\\xa0\\xe0\\xb1\\x94\\x06\\xc1C)\\x8d\\x81GR\\x1a\\x03\\x0f\\xa44\\x06\\x1eG\\x19y\\x14\\x86Q\\xc1\\x88\\x89\\xeb\\xe1F4b\\x12\\x08x\\xc4l\\x00\\xf0\\x88\\xd9\\x94\\xc3#fS\\x0e\\x8f\\x98M9<b\\x12\\xf5\\xc3#&\\x9d\\xa3\\x10\\x8e\\x98,\\x0c\\x1e1\\x19\\x14<b2 x\\xc4d@\\xf0\\x88\\xc9\\x80\\xe0\\x11\\x93\\x95\t\\x1e113\\x94\\x88FL\\x0e\\x07\\x8f\\x98,\\x0c\\x1e1Y\\x14<b\\xb2(x\\xc4dQ\\xf0\\x88\\xc9\\xc9\\x05\\x8f\\x98\\x98\\x1dDD#&\\x0f\\x84GL\\x0e\\x07\\x8f\\x98\\x1c\\x0c\\x1e19\\x18<br0x\\xc4\\xe4e\\x83GLL\\x0d+\\xa2\\x11\\x93A\\xc1#&\\x0d\\x82GL\\x1a\\x03\\x8f\\x984\\x06\\x1e1i\\x0c<b2\\xf2\\x00YI'\\xc4\\xd8\\x8e\\x12t\\x98\\x87\\xb1\\x8bb\\xad\\xfa\\xfd\\xbc\\xfaaR\\x16$\\x91\\xed\\x00g\\xdc\\x924\\xf6\\\"\\xe4j\\xf4W\\x98\\x83t\\xa59+\\x0f\\xbb?\\x86\\xae\\xfb\\x13\\xf4!\\x12\\xf6s\\xcc5\\x9f\\xe6C\\xcb\\xadL\\xb8/.3\\xc2\\xa8q\\xe1\\xbe\\xa9\\\\s!>\\x96\\xdc\\xca\\x05\\xfajr\\xc1\\xa8\\x10\\xa6\\x95C\\xdb7\\x12Kf\\xae\\x1d?\\xb4\\xf2\\x92}I5\\xe3\\xf3\\x80\\x0e)\\xda\\xa5\\x9a\\x8b\\x9c0\\xb6S/\\x0c\\xce\\xb1\\x17 -]\\xc5\\xe1z\\xb9\\xa2\t\\xd6\\x81\\x8b\\xe2\\xac\\x98\\xa3\\xa9K\\x18\\xc7\\x0b51M\\x10\\x06Ha\\xe9s\\x00d\\xce\\xd6Q'\\x88\\x0d\\x91)H\\x0e\\x91\\xe5\\xc2+H\\xaf\\xb0p+\\x9b\\xe4\\x9f\\xd4\\\"\\x9eJ\\xa5A<\\x95B{\\xc4\\xa2\\xe3\\x93D\\xe7\\xa9TD\\xe7\\xa9\\n\\xd1)\\x8a\\xb4D\\xd9\\xd8[\\x06\\xe7YT\\xc0\\x94\\xc7dy>Q2\\x00\\x87\\x048(HQ\\xac`\\xed\\x03#E\\xed9bA\\x18\\x08(\\x0b\\x83)\\xc5Q\\x90G\\xc1\\xfbR\\\\y\\x83DF\\xbf]D\\xffh\taaZ-G#`a0$\\x0c\\x0d\\xaa,\\x9c\\x7f!~\\x11\\xc6\\xfe\\xb9cG^jc\\xef\\x11\\xb1P\\xccBq\\xb8E\\xb1c'\\x1cr\\xcd\\\"\\xd7Q\\x04#\\x03\\x16y\\xd2p\\x98\\x12\\xce\\xa1\\xd4\\x12\\x00-n\\x0c\\x00\\x16\\xb7\\x07\\x00+\\x0c*\\xcan\\xda\\xb8\\x98Z;9\\xb0\\xa4\\x99\\x1cV\\xd2J\\x0e\\xab\\xd0HA{8\\xb7\\x92\\xb5\\xe7\\x08\\x1f\\xe4\\xb1\\x92\\xf6pX`8]h\\x833\\xe6\\xc1\\n\\xd9n>\\xab/\\xc2 \\x8b\\xf5\\x1e\\xd19\\x1fR/4\\x8b\\xa5K\\xd6s\\x80\\x94\\x0f\\xa1\\x17\\x06Ql\\xf2\\xc5=\\xa2\\xb8\\x07\\x05\\xea\\x0b\\x93@\\x18@\\x90\\xbe\\xe8S\\x00\\x88\\x85E\\\"\\xf8\\xe2\\x01Q\\xdc\\x1d\\x0d\\x01\\x06C\\x12Q\\x00\\xda{\\xc3\\x81\\xd5\\xbd\\x16$\\\"\\xf5g\\x9d\\xae\\xc5\\x02\\x005a\\x04\\x9a\\x01d\\x07\\x1a\\x01\\x99\\x82F\\x08\\xacA\\x83`\\x83\\xb0\\x18\\xd0&\\x0c\\x080\\x0b\\x8d\\x10X\\x86\\x01\\x15\\x18\\x05\\xeb(\\x8cU\\x99\\xc9|\\xa1\\xc5\\xfcV\\x83q\\xb4\\xa4\\xbd\\xfc6s\\xf9m\\xd6\\xf2\\x15\\x8c\\xe5\\xb7\\xdb\\xcaW0\\x95\\xdff)_\\xc1P\\xfe\\xb1v\\x12\\x98\\x04\\x0bM\\x82[M\\xc2\\xd1\\x92&\\xc1m&\\xc1m&\\xc1\\n&\\xc1\\xed&\\xc1\\n&\\xc1m&\\xc1\\n&\\xc1\\x80I(\\x8c\\x8f\\xecd\\x1d\\xa3C\\xd3O\\xb2\\xce\\x03b\\xb2r\\n\\xd8\\x17\\x01\\x03;\\x8e\\xc3-\\x01\\xedq<\\xbd\\xc0EAZLi\\xc5\\xcf\\xe7Fs\\\"+m?\\xcf\\x98\\xf86\\xc6\\x9acG\\xe5\\xe8\\xb0\\xb1c\\xcf\\x0e\\xd2\\xf3\\xe69\\x8dO\\xe3u\\xe0\\xd8):\\xe4\\xc9\\x81<5\\x82\\xce\\x83p\\x1b\\xdb\\xd1$\\xdc\\xa0x\\x91\\x7f\\x9c\\xcfs]\\x14Lr\\xa9\\xea\\x87\\x08c/J\\xbcDa\\xcc9\\xc0\\xeaH\\x94\\xd5\\xcb`[4L\\xa3EJ\\xae\\xe3\\xbd'\\xea\\xb9\\x1e\\x88UU\\x9d\\x11\\x9c\\xaem\\x05u+\\x0c\\xf1\\x95\\xc2|u\\x13\\xf8\\xc7X\\xc0W1\\x80\\xff<\\xfa\\xf7\\x8fT\\xbf\\xff\\xdd\\xb4/Q4VW4>F\\xd1XE\\xd1\\xf8y\\x14\\x8d\\x8fT4~\\x8a\\xa2)\\x96U\\xb9\\xe6\\x84Aj{\\x01\\x8a\\x0f\\xf5\\xa3\\xfdy\\xe2\\xc4!\\xc64E\\xb1h\\xa6\\xb7\\x12\\xecu\\x1aN\\xc8\\x9d\\x96\\xec\\x01\\xa3\\xddX\\xcb\\x1e\\xf2t\\x0c\\x0cS\\xb0\\x86Y{\\xe7<\\x00bj\\xec\\xd9\\x1buIARPX\\x8d9\\xf4\\x94\\x03\\x15\\x04V\\x18M\\xcaV\\xf8'7\\x02\\xa0\\x84\\xdb\\xe0\\x1f\\xdb\\x04\\xb1\\xb4\\xf8di\\x01JXZ\\x0cHK\\x8b\\x82\\xbd\\xe8\\x10\\x85\\x89\\x97'\\x02\\x17\\xde\\x0e\\xb9\\xff\\xd7\\xf3\\xa30N\\xed \\x9d\\xfcQ\\x97\\xd8\\xf3$\\xc4\\xeb\\x14\\x11\\x85\\x19\\xe9y\\x8c\\x9c\\xf4G#\\xdau\\x88\\xbf?\\xd1Eg\\xc4\\xdf\\x9f\\x14\\xcc}\\xe0\\x04\\xcc\\x1c\\xe7\\xcf\\x94QAH\\x15\\x9f\\xcc$\\xf7\\xff\\x83\\x04\\x17\\xc9\\x88\\xff\\\\\\x19)\\x01\\xb6\\x89\\x16\\x84\\xb1o\\xb3#u\\xf6\\x88F\\x16\\xa370\\xa0\\xd3\\xb0(\\xa6#\\xc9(>>'X\\x0b\\xc5\\x07J\\\"\\xb9\\xe0\\x90\\x8a\\x13\\x8d\\x85e\\xd2)\\x88\\xa7\\xe0m\\x8d\\xcclt!\\x14\\x19\\nCx\\x89\\xfd#\\x05\\x96\\xca\\xa6jfp\\xe6\\xe6e\\xc3\\xbcl\\x14f\\xa3\\xcd\\xed\\x04\\x1d6(N=\\xc7\\xc6e:;{\\xc6\\xef\\x91l4\\xdfsY\\xa8\\xef\\xb9.\\xe6\\x80i\\x18\\xb1\\xc04\\x8c\\xb8\\xaaS\\x9f\\xab9\\x0fp\\x14\\x0c~\\x00\\x9a\\x91\\xf9\\x8ezK\\x00\\xb4\\xb01\\x00\\x16n\\x0f$B\\xd1$\\x856)8q\\xd9P^o\\x92vr`q39\\xa8\\xa0\\x95\\\"\\xbb\\x1d\\xed\\xf8e{\\xf01\\xed\\xe1\\xc0\\xe2\\xf6pPA{\\xf8\\xfa\\xcb\\xf6PX\\xd7\\xf3\\x0fad;^\\xba?7\\xb8\\xa23\\xf6\\x01\\xf41\\xfa\\xecq\\xf1\\xfdym\\x8b\\xe6\\x0f^\\x99\\x15/f\\x90\\x92w\\xa7kXI\\x07ez\\xf1\\x82IK9'\\x86\\xbc\\xd6J\\xfc\\xae\\xc5\\x13\\xdaN\\xeamP\\x03\\x19M\\x94d\\x0c\\xd7\\xa9\\\\\\xc8p\\xcd\\xec\\x9e-q\\xb8=\\xe3\\x9e@\\x82\\xe7\\xcf\\xbf\\xa3\\xbe\\x14\\xea\\x15\\x18|\\x95-\\x03\\xf3S\\x11\\x9dn\\xfe\\x9f\\x1a\\xa8\\xab\\xa9\\xedXQ\\x9b\\nKC\\x95\\xf5\\x9e\\x89Py\\xb3\\xda@y\\x1b\\xd9\\x16\\x18\\xdf\\xa7\\x05\\xcd\\x06{^+\\xa4w\\x16R\\x98 _\\x7f\\xb6\\xef\\xe1/\\xe3p{\\xd0\\xfc\\xf0Q\\x0b\\x93\\x9dVd\\x0f\\xfd0LW^\\xb0<_\\xc6\\xf6>ql\\x8c\\xea\\xb6\\xcdm\\xe7aa;H\\xdbx\\x897\\xf7p\\xd6\\xf2r\\xc1+)\\xa24\\x93of\\xe5?a;E\\xdf~\\xd4\\x7f\\x9a\\x88\\x9e\\x03\\x1a\\xe5Xu\\xba=A\\xa7:\\x02z:\\xe4\\xac\\xa5\\x16^\\xdb`\\xd7\\x89\\xe1.\\x9b\\xeb$\\xb7\\xc0\\x8fFW\\xb7HM\\x11O\\x81:\\xcaaI\\xc4\\xac;\\xe6Yu\\xc7\\x00#\\x0d\\xdb\\xf1\\x12\\xfd\\x7f\\xc5A\\xbc\\xe0\\x18\\x1f\\xe1\\xd1OEI\\x9d\\xa5\\x80\\x88L \\xf2\\x9a\\xb2\\xb4\\xcdwz\\x90\\xeb\\xf4\\x84\\x06o\\xf7\\x1f\\xc0\\x17\\xb3\\x87L0\\x1dzAZ\\x8fH\\xce:N\\xc2\\xf8\\xbc|H#\\x93\\x95\\xed\\x86[\\x0d\\x02N\\xea\\xc5b\\x8c\\xb0\\x9d\\x89\\x05\\x99\\xdd\\xc6\\xb8\\xd3\\xb5\\x92\\x8e\\xb3\\x9e{\\x8e6G\\x8f\\x1e\\x8a\\x7f\\xec\\x1a\\x03\\xeb\\xac;\\xea\\x9fu\\xfb\\xfd3\\xe3\\xa7\\xc9\\x91x\\xb1\\x88\\xe7\\xf6\\\"\\xcd\\x04\\x0d\\x83\\x14\\x05\\xe9\\xf9_\\xfe\\xd2\\xf8\\x7f\\xb8\\xd3\\n\\xe4\\xb9\\xde\\xd1;\\xc6 \\xdauz\\xd1\\xaeC\\x9e\\xf7\\xeb\\xfd4Q\\x86\\xe5\\x07;c\\xdb\\xf5\\xd6\\xc9\\xb9\\x17\\xacP\\xec\\xa5\\x93f\\xd2\\xe4\\xd6\\xd1\\x93\\\"\\xf3\\x99\\xe7e\\xf4I\\x11A\\x1a\\xba\\xfeb\\xb2ByN'\\xff\\xf91\\xcf\\x98\\xee\\xce5\\xf9\\x9cu\\x846Ui$\\x1a\\xcd\\xfd\\xbb\\xd0\\xeb\\x99\\x18Ej_\\x10d\\xcc\\x97\\x9a\\x1dx\\xbe\\x9d\\xa23\\xc1s\\xa8/\\x11\\xa5\\xc2\\xd0\\x89=\\xc4IM\\xdb\\xec(\\xd0\\n\\xa6\\xa5~\\xd4\\xf4Ce\\x17\\x9d-2\\xea\\\"\\x83-\\xea\\xd5E=\\xb6\\xc8\\xac\\x8bL\\xb6\\xa8_\\x17\\xf5\\xd9\\\"\\xab.\\xb2\\xd8\\xa2\\xf1x\\\\\\x17\\x8e\\xc7c\\xa0\\x98*\\xe7\\x00\\xbe\\xbdk\\xa45\\xfa\\xc3\\xfe\\xc8\\x1c\\xf4\\x87,\\xaa\\xf4\\xf2\\x1aY\\xfe\\xce\\xc3\\xbc\\xd4\\xb3q\\x0d\\xe3\\xb3\\x95\\x8f\\xda:HP\\xc3(\\xff\\x8d\\x86\\x04(IQf\\xa0h\\xaf\\x15\\x11T\\xdeM:!\\xb3\\xaf,\\xc2Ej\\xb05>\\x10\\xbf\\x9e\\x1b\\xecB\\xa2\\xa4k6\\xae\t\\xda\\x95\\x01\\xd6\\x01c{G`\\xcd#\\xb0\\xfd#\\xb0\\xd6\\x11\\xd8\\x01\\xa3\\x17\\xe8`\\x7fA\\x8f\\xbd$\\xd5b\\x94 \\xa1q\\x08\\xc4\\x9a{\\xf1\\x1c\\x99\\xaf\\xd6'94I\\xf7\\x18i\\xe9>B\\xc5\\xd1*\\xa1%\\x8b\\xed\\xa5N\\xf4sDm7u\\x8f\\xdbo\\\"9&(B\\xb1\\x9d\\x86q\\xce\\x94\\xe0at-A\\xfb=\\x7f\\xd9\\xf1\\xfc\\xe5\\x81\\x18\\xd2\\x9b\\x9cG\\xfe\\xab\\xeb%\\x11\\xb6\\xf7\\xe7s\\x1c:\\x0f\\x02\\x1d\\x06\\x0fI\\xc7>\\x94\\xe7\\xe1Mk\\x88\\\\\\x17\\x9a\\x02\\xf8\\x01k\\\"-\\x95\\xd5\\x06\\x0d\\xb6\\x0c\\xa2\\x9c\\xf5\\x0b\\xa9\\xc6\\x03\\xc7Y,\\x9e_\\xaamlG\\x11\\x8a\\x05\\n\\xec\\x0f\\xf4hW\\x1a\\xf0\\\\\\xef\\xe4\\x9b&\\xa5\\x0b\\x9d\\xeb\\x9d^VH\\xcd\\xf0\\xdecVRN\\xcf\\xf3p7\\x01\\x9f\\xd2\\x12\\x84Qn\\x1a-\\xb5\\x97Z\\x82\\x9cL\\xeaCe4\\x82ymH\\xcdO\\xb4\\x05F;\\xf2Y\\xf6;%I\\x18{\\x993V\\x99\\x18\\xaa\\xcc\\xf5\\xe2\\xa2\\x9a2%:\\xa98\\x12%N\\x88\\xd7~0\\x01\\x9f\\n\\xc5\\x7f\\xba\\xd8\\xe4\t\\xe0F,\\xeai\\xfe\\x8b\\xe6\\xa5\\xc8O\\xaaG\\x95E\\x0c=\\x0b\\x97\\xb2\\x7f\\x8c\\xea\\x9f\t\\x134\\x8aB\\xc4^\\xc2E\\x81\\xbddR\\x9b,\\xef\\xb9F\\xb4\\xeb$!\\xf6\\xdc\\\"\\x1c\\xb3\\xc6g\\x03\\xebld\\x9cu\\xcd\\x9f\\x84*)\\x9d\\xb8\\x99\\xf5\\xa9\\x1b\\x1e:\\x1bj\\x93\\xca$\\x8e\\x18\\xf5I'\\xd4;V\\xb4\\x9b\\xe4\\xa5\\x0b\\xdb\\xf7\\xf0\\xfe<\\xb1\\x83DKP\\xec-&U\\x1f\\x9e\\xf7\\x0d\\xcb\\x10\\xf2\\xee\\x06\\xa1\\xe6\\xa2\\xc4\\xe9$\\x91\\x1d\\x1cH\\x03d\\xfa>7j\\xd5\\x9f\\x1b\\x93\\xe2?BV\\x9dd\\xb3\\x84\\x82\\xa2\\\\\\x85}^\\xab\\xfdD\\xc2\\xca\\xb71u\\xde\\xa9_5t[\\xcc\\x04}]\\x9f\\xa8HK\\xf4\\xd1\\xdc\t\\x8eWVd\\xc7\\xb6\\x8fR\\x14\\xff\\xf1G6\\x15\\x90B\\xf5\\xa2]\\xcd\\xdf\\x8av\\x1d\\x9db\\xef\\x87A\\x98o\\x10P\\x82\\x0ft]V\\xdb\\xc6C[\\xad\\x9a\\x06\\x1f\\x0e\\xfc\\xca&\\x9b\\x04\\xcch7\\xa9\\x0e>\\x90\\xfe`\\xa9{\\xb9\\xc5\\xdb\\xc3\\x82\\xedq \\xdc\\xcd\\xc8j(\\xba\\x02\\xd1\\x07\\xfe\\xaa\\xeb:\\xb3\\x10\\xe9\\xb3\\xc3a\\xb3\\x921\\x99E\\x8c1\\xe6\\x16;\\x00\\x04\\x14\\xad\\xd3M\\xedy\\x1e8\\xa0\\xf8\\xe9#\\xceQ\\x0eOV]\\xfc\\x9c\\x8dC\\x87\\xc6\\xdb\\xfa\\xfc\\x90s\\x04\\xa3\\xf3\\x85\\x17'\\xa9\\x16.\\xf2\\xf0\\x83a\\xdb\\xd1;\\xfa\\x11\\xbc\\xbaebs\\xd5/:9\\xe7S\\xa7\\xf3*\\xd7Y\\xfc\\\"\\xb3\\xbe\\xad\\x999L\\x1eSY\\xfa\\x8bj\\xb5\\xd9kV\\x9b\\x99\\x9f\\x00kd \\x9b\\xf3\\xfb\\x8f\\x9a\\xa5\\xbf\\x00\\x13=U\\x111\\xb4.c{\\x0f6\\xab\\xeb%Z\\x18\\xa1\\xa0\\x19n\\x92\\xb5\\xef\\xdb\\xf1\\xfe \\x1a\\xe13\\xef\\x16h\\xa8fQL\\x8a\\x95'V\\xd6\\x1a\\x95s\\xd0\\xc4\\xf7\\x82*\\x82\\xb5\\xb2\\xdf\tA\\xd9\\x1b\\x83\\xa3\\x9f\\xe0~c\\x00\\xcb\\x7f\\x83\\xe980\\xe6(\\xd9\\xcf\\x8e\\x01w\\xb0=G\\xf8\\xe9\\x1d\\xef\\xa4\\xa9\\xfe\\xa8f\\x95\\x922C79,\\x0fu\\xbd\\x1eG\\xb9\\xc30'\\xcc\\x1aJ\\x02\\x95\\xfd\\x91\\x9a\\xa1$\\x9d[\\xc0j\\xd5g'J\\x95Q\\xadi\\xeds4\\xae\\xe8C\\x9a\\x8f\\xd2U\\xe8\\xca\\xe6\\xed\\\\\\xcf\\xf5\\xd6\\xe5H'f\\xd0A\\x16\\xa8e\\xe3\\x05w\\x03\\x8c\\x99\\\\L\\xba\\x0b\\xe5\\xd3ONC\\xf5\\x04\\x9d\\xed+\\xf2v.\\x16\\x0b\\xc5F\\x86\\xf9\\xd2,3\\x80\\xe7\\xb6\\xf5\\x97\\x92$\\xb2\\xd3\\xd5\\x11\\xd0?\\xfepQ\\x14#\\xc7N\\x11\\xa5\\xccAD\\xf4\\xacS{[n~\\xbdq\\x08\\xbdc\\x16\\xab\\x19\\xfa\\xb7'w\\xd0\\xc96\\x8c]m\\x1e#\\xfb\\xe1<\\xffW\\xb31\\x96\\x85c\\xaa\\xf1R\\xb9\\x19N\\xec\\xe8\\x0f\\x07\\xa3h\\xc7l\\x81\\xff\\x07\\x9a\\xaf\\x17\\xed\\xd8\\xd3\\x9d\\xcal\\xd8\\xcd:,\\xbc\\xa6\\xab\\xd4p\\xa6\\x8b*r\\xc8\\x16\\n\\xb1\\x17\\xe5\\xebR\\x82\\x81\\xa9:\\xe4<\\xdfH\\xf3?4\\xe9\\x90\\xd1\\xbeZp\\xc7\\xc8\\xad\\x18\\xe0\\xf7\\xea\\x00\\x9f\\x98\\x95\\x9e=\\xb2\\xe7\\xa4\\xab\\xf6\\xad\\x19\\x19\\xcb\\xb0m\\xc4,5\\xe0\\xf8\\xaab\\x19\\x85IJ\\xbc\\x8f\\\"3p\\x7f\\xec8c}\\xc2\\xae\\x80\\x87\\xe6YO\\xef\\x9f\\x19\\xfd\\xbe0\\\\\\xa1\\xb8\\n\\xa7\\x1drN(\\xea:\\x81\\x19(\\xb3\\n\\x1f\\xf5p\\xf9h9\\xd7\\xac&\\x17\\x8em\\x98\\xbc&{V\\xef\\xcc\\x18\\x18g\\xfd\\x91\\x82&\\xd7j\\x8a,\\xaa:\\x9e\\x17(\\xb1\\x02\\x9b\\xd3\\xd4\\xa8\\xc2\\xdeE\\x18\\xa5\\x88\\x95kl\\\"\\x13\\xf1\\x9a\\xec\\x8f\\xcf\\x06\\xbd\\xec\\xff\\xad\\x8a,\\xd8\\xaa\\xe92\\xaf\\xec$v\\xa0\\xd8j\\x9cN\\xd4\\xa8B\\x0dK\\xc4:\\xe6\\xc0\\xb0\\x17\\x0b^\\x9d\\xe3\\xe1\\x991\\xb4\\xcez\\x96B\\x17_\\\"5\\xc7,\\xaa:\\x9e\\x17(\\xb1\\x02\\x9b\\xd3\\xd4\\xa8\\xc2>\\xb2Sg\\xc5\\x88e\\xe9\\xc8tz\\x9c\\\"G\\xfaY\\xaf7<3\\xc6\\n\\x8a\\xcc\\xd9*\\xa9\\xb2\\xa8\\xec\\x14n\\xa0\\xd4J\\x8cNS\\xa7J\\x05\\x19WF\\xae\\xb1n\\xf4\\x00\\xb7\\xcc\\xa6\\x1cc\\xa4\\xe6\\x96\\x19W%e\\x16u\\x9d\\xc0\\x0c\\x94Y\\x85\\xcfi\\xaaT\\xe1\\x1f\\xe6\\xb1^\\xc2H\\xa6\\xbb\\x96m\\x0fym\\x9agc\\xfd\\xcc\\x18\\x0c\\xdb\\x95Y\\xf2U\\xd2gQ\\xdbi\\xfc@\\xc1\\x15Y\\x9d\\xa6U\\x95*\\x88\\xb0\\xbe>\\x15:\\x98\\xd0\\xa2\\xa2y\\xf6\\x07\\xce\\x14\\x8d{\\xc0\\xab\\xa5\\xc4\\x95(i\\xb9\\xa8\\xefd\\x96\\x07Hzun\\xa7\\xe9ZR\\x0b!\\xa0\\xb3B>J\\xb8\\xa4\\x9c\\x1aY\\xa7[\\xfe\\xa0\\xa5^\\x8aQk\\xaef\\xe1\\xe14kD\\xb3\\xd6*\\x9eh^\\x90Eq\\xd4\\xd6b\\x1eI\\xe7{T:\\xb5oU%\\xd8{M\\n\\xd2\\x1d\\xb9.b\\xbc*\\xb5\\xe7\\xa7\\xad\\x82\\xa8\\x9a\\x8bex\\xdd,b\\xe3\\x1b\\xd8\\xf3N\\xedy\\x07{l\\x1a\\x8d<\\x89N\\xf1b\\x16,\\xc7\\xaf\\xfe\\x8a\\xfa\\xd8\\\\8\\xb7bbv\\xf2\\x99\\xcf\\x96\\xf5X[C\\\\\\x85\\x89\\xecb\\xdf\\xbe`5\\xa8WeF\\xb4\\xa3\\xceK\\x11)l\\xc1\\xfe\\x1e\\xbb\\xbdW\\x08Q\\xfa\\xf8\\x81\\xc9\\x90\\x81\\xbeI\\xae\\xbe\\xb5r\\xaf\\x1aLJhh\\x97\\xa28\\xb0\\xb1\\xe6\\x86N\\\"\\x87\\xe6^\\xfdGy\\x13\\x8a\\xb5+\\xbd\\xcdX\\xbb\\xa8U\\xa5\\xb5\\x8f7\\xa8\\xa4)\\xdc\\x11\\x12ik\\x84h\\xb2ALf\\x14h\\xd3\\xf3\\xb6 :\\xa6\\x01\\x020%\\x7f\\xc4fR\\x9f\\x9e\\xb3\\x15\\xaa\\x939\\x0fC\\x13\\xa3\\x1dr\\xd6)\\xaa\\xe0\\xf50\\x98\\xbb\\x81\\xfc\\x9d^\\x0ci\\xa7;O\\x03r\\x1c$\\xc7\\xe5>7.\\xcfCw\\xaf\\xe5;\\xb0u,r\\xd2\\x98\\xf7?s \\x82\\x97\\x9ez\\x86\\\\/=P'\\x16\\xf4V\\xfab#\\x83T\\x9a\\\"M'A\\x189i\\xb5\\x9bkB\\xb3W\\x8c\\x92(\\x0c\\x12\\x94h^\\x100f\\x96\\\"\\xb9\\xee\\xc8\\x95[\\x82\\x9eXN\\xa3\\xa7u\\xc6\\xaa\\x96,\\xec\\xf8#I\\xedt\\x9d\\x80{\\x0fOeJ<\\\\\\x07n\\xe8\\xac}\\x140\\xb9]\\xe3\\xd8d\\xf6X\\xcf\\xfeH\\xaa\\xce\\xcf>1\\x9f\\x0f\\xcd\\xcf\\x93UY\\xef\\xbe\\x8e\\xfc\\xc9\\xf36\\xb78o\\xf5?\\xd1Zb<\\xfd\\xe3\\x8f\\xc2g\\\\o\\xd3\\xf5\\xed\\xf8\\xc1\\x0d\\xb7\\x01\\xec]2\\xca\\x18\\x05.\\x8a\\x91;+9\\x80\\x9b\\x7fE\\xa0\\x93\\xbf\\xb9\\xcd\\xa1\\x8f\\xc75C-\\x10\\x9a\\x91\\xa7\\x1c\\xa8d\\x9e\\xd1\\xef\\xf7\\xd1q\\x9a\\xe1\\xf6\\x9dT\\x1aW\\xa9\\x85\\x9dEThY\\xc5t\\xa2\\x038\\xad|g\\xc9\\xedg\\x90\\xdc>\\x1c%\\xf0h<_\\xe8\\xfd\\x89\\xe2\\xbd'\\x15\\x89\\x9a\\xd6\\x14\\xa9\\xf3\\xe7h\\x13}\\xd8qd\\xcc\\x0d\\xddy\\x82d\\xec\\xce\\x95\\n1'T\\xba:N\\xd3\\x8b\\xc5BxbN\\xb8\\xd3\\xaaeSW\\xf3\\x1b\\x0e\\xed|\\xe4+\\x0e\\xdd\\x93G!\\xa9\\x0ej6gl\\x9b\\xfd\\xfa\\x96\\xb7TP\\x15F1w\\xa6\\x0b\\xee\\xfb\\xcc\\x95\\xef<\\xa2)69\\xb3\\x9f\\xca=\\xce\\xecwx\\xe7\\x93{\\x98C\\xab\\xe0c\\xb5\\x8fV(H\\n\\xf1\\xb3\\xa0\\x83z@\\xfd\\xa24\\x06\\xd5/\\x89ae;\\xd6\\x8er\\xcd\\x15'\\x18\\x1at\\xf3\\x96\\x86\\x16\\xban\\xb1\\xdc\\xcf\\xba\\xddAr.y\\xe5-W\\xc5{\\xc0\\x9d\\xd0\\x05\\xd6~2\\xf4\\xdf\\xbb\\xbe\\xe7\\xc4a\\xfe\\x80|iN\\xe9!\\xbb\\xeaHN_g\\xce\\xe8\\x0c\\xd8\\x13\\xd6Y\\x1f\\xc8\\xdcQ+\\xd7y\\x89\\xf8\\xc4S\\xee)\\xe5\\xca\\x138tJZj\\xe8\\x8ezc\\x138\\xed@n2\\xf2\\xc6&\\x0d\\xf8\\xd1K=\\x8c\\xbd\\xb5\\xdf\\xf9\\x82\\xe6g\\xc4\\x84/\\xe9\\x97L\\xc4P\\xb6\\xd9\\xd4\\xeb\\xc5\\xed\\x90\\xdb\\xdb+r \\xc4+\\x88\\x88eT\\x8f\\\\\\xf3\\x9bE6\\x83\\xdaG \\x8ej\\x83\\xa7\\x95\\x98s\\x1a\\x96\\xe0P\\x13\\x07\\x93\\x8bX'n\\x9e\\xbe^8i\\xa7XQ\\xba\\xbf+\\x1dLzr\\x13\\xbe\\xe7\\x92\\xa7\\x1a-\\xb5\\xe2\\xb8\\xb5U,,N\\x88D[\\x94T/`\\xeat\\x93a\\xd6\\xcb\\xcf\\xe6T\\xa0\\xe0\\x85\\xb9\\xd5l\\xd2\\xf8p\\xe5\\xb3\\xe5\\x89J\\xe2x\\x7fq\\xd1\\\"\\x9bW\\x9a1\\xc1x\\x8e\\xa37\\x91\\xed<p\\x8eD>\\xbc_'\\xa9\\xb7\\xd8W\\xe3L\\x8d}\\xaa7\\xfei\\xce\\xd0\\xa2\\xf4\\xfaQ\\xdbH.\\xa6,3uD\\x8f\\xd1\\x81\\x1e\\x03'\\xf2,\\xfdEs\\x18\\xb5\\xce\\xd9\\x95\\x8c\\xa5\\xa7O\\xf3\\x13\\xa6g\\xc2\\x13\\xa8T\\xb1\\xc0\\x1fO\\xe8\\x11\\x12-\\xcc\\xd1\\\"\\x8c\\x91 aI\\xb5\\x93\\x8e\\x9a\\x88Dm5\\xdb\\x11G\\xc8\\xb5\\xbcG\\x01\\x07r\\xeb \\xec<\\x0e\\xd3\\xfc\\x87\\x8e\\x91t\\xbc`\\xe1\\x05^\\x8a:\\xd94n\\xc7g\\xc4%\\xcf\\xc9\\xf1\\x14\\xcd{\\x12\\xb8\\x04x\\xb1\\xf7i\\x9d\\x15\\xff/\\x0e\\xbe\\xe6\\xf3b\\x1aF\\xe5\\x9e\\x039;\\x0c\\xd8{\\xb1y\\xa6\\xa9\\xf6\\xf3S.\\xa0\\xff\\xfb\\xbf*\\xf2\\x07\\xb4_\\xc4\\xb6\\x8f\\x92N\\xd5\\xb0C\\x1a\\x02\\xf7\\xa0\\xf3R\\xf4\\xa3\\x91\\xae\\xe3\\x80t\\x1a\\xea\\xf9\\xbf\\xff\\xfd_\\xcf\\xccO\\x14\\xec\\xe7&\\xa5N\\x93W\\xc3\\x9c\\x02I7\\xfb%\\x0eq\\xa2\\xd9\\x8e\\x83\\xa2\\xb4\\xda\\xac)\\x87dj\\xf3g\\x19#\\x14<\\x85g~\\xf5\\x83\\xe0ED,\\xdd!\\xf2!K\\xcc\\xb1\\x17<\\xa0\\xf8`\\xe9/\\x9a\\x17\\x86P\\xba\\x15 H1\\xcbc\\xb5\\x9d\\x95y8\\xba\\xab\\xda\\xdd \\xcc\\x93\tu\\xb8\\xe1\\x05\\xdc\\x92\\xb2\\x06\\x9d\\x81O\\xcf3\\xa7\\x83\\xce\\xfaU\\xb7\\xba\\x8b\\xea\\xeb\\xdf$\\xc7\\xcf6(N\\xbc0\\xd0\\xa2\\xd8^\\xfa\\xf6\\x81\\xdc\\xaa\\xa8\\x83K\\xe4\\xb3\\xe9?\\x9a\\xea\\x8f?|\\x94$\\xf6\\x12==\\x82:u\\xde#\\xe5&\\x06\\xfcn\\x0f\\xf9@\\xd8\\xcc\\\\\\xa0E>q\\xd8\\xb4\\xcb\\xc5\\xf4\\x82\\xc6\\xfe\\xdd\\xf56\\xc4\\x8bE-\\xcbY)\\x9dmTb\\xde\\xc9\\x171Mt\\\\m\\x97\\xba(\\xfbS\\x8b\\xdb\\x8fv\\x9d~\\x11\\xf6\\xb2\\x8bN\\xba\\x9ay\\x1a\\xb4\\x9d\\xb5&\\xaf'\\xf5\\xc8\\x83\\x9a\\xec\\x19A\\x93?6h&\\xfcH\\xbc\\x8c\\xed\\xbd|\\x05\\x9as\\x89\\xec\\x18\\x05\\xe9s_e8a\\n\\x9d\\xa7A\\xf6WK|\\xd1\\xc5\\xad~\\xa9\\x19\\x8e\\xee\\x9f\\xae\\x97\\xd8s\\x8c\\xdc\\x7fU\\xef\\x9b\\x08\\xc2\\xcc\\xe5p\\xb8En=[uM\\x8e\\x90y?\\x00s\\xb9\\xc9b\\x9aer\\xd7\\x9fx\\x04\\xdf&\\xc7\\x0e\\x1c\\x84\\xd9Sa\\x8b\\x81> \\x97_e\\x01i\\x12\\xb9\\n\\x0b\\x0e|u\\xf6:]\\x85\\xb1\\xf7\\x88\\xe8\\xeb\\xd8\\x13z\\xb4\\xab\\xb8T\\x07=\\xe5\\xa7?y\\xe1$\\xf5\\x16\\x89\\x86\\x05\\x0e\\xed4\\xff\\xb6\\x0cm>p/\\x9e\\xa1\\xdf,\\x0f\\x0b\\x0fc\\xf8\\xc8e\\x86-w\\xaa\\x80\\xfe\\xd9\\x1f\\x8fu\\xd4\\x03\\x92[T9\\xc7Q\\xcb\\xb8D\\xa7\\x0d\\x9f\\xe4\\x8aZ\\xc0\\xb8\\xe8\\xff\\xc7\\x0fN4\\x83r\\x1f\\xbcxU\\x15\\xd7\\xb13\\xadv\\xb8\\x03\\xe2\\x0c\\x07l\\x0b\\x18\\xe4\\xa4\\xf9_F\\xdd\\x95Y\\xec\\\"\\xf3\\x98\\xb5\\x83\\xb9\\x18P\\x0e<A\\x18P\\xc7\\xb6\\xf83\t<\\xabn\\x16\\xe8\\x12gk\\x8cV\\x82u\\xc0\\x90t\\x99\\x97^\\xa0]d\\x07nyn\\x86\\xb9\\xaa^\\x96\\xd5'>\\x0e\\xca\\xa2\\xd3\\\\3\\x0f\\x95s\\xce}\\x98\\xb8\\xf7Y\\xf6B~w\\x8ef\\xcc\\xa8V\\x06-\\x0f\\x80\\x13}E\\xcf\\xfe\\xb4\\x89-\\xbc\\xf5\\x0bO*\\x05\\xeb\\xa1\\x9e\\xfd\\xa1X\\xcf\\xd7i\\x1a\\x06\\xec\\xdb}\\xc2u\\x9a\\x0d.\\xbc\\x02\\x0bx\\xd7\\x0b66\\xf6\\xdc\\x03\\xbfVIV\\xf6\\x03\\xeat\\xfbI\\xc7\\x98\\xc0O\\xdb\\x0e\\x03\\xffu\\x81\\xb83Fe\\xd0{\\xc4\\xc4\\x9b\\xa7\\x18\\xac\\xea\\x1e:\\x7f\\xbc\\xa7\\xcc\\xd9\\xca\\x13\\xbb\\x8ba\\xf6\\xa7\\xb3\\x8e\\xf1\\x8f\\xae\\x9d\\xda\\xe7\\x9eo/\\xd1\\xcbd\\xb3\\xfcy\\xe7\\xe3\\xc9\\xdcN\\xd0\\xa0\\x7f\\xf6\\xdb\\xaf7\\xbdo\\xfb\\x8b\\xfe\\xfc\\xcbn\\xed<\\xea\\x9e\\xfd\\xeb\\x9d\\xee\\\\\\x86\\x9bw\\xa6k\\xba{\\xcb\\x9c\\xed\\xad\\x8d\\xe3;\\x9b\\xd9\\xfdt;{5~t}\\xc7\\xbb\\xfe\\xf5[\\xf4\\xedw\\xf7\\xd5\\xdc\\\\\\x8e\\xaf\\xef\\xa7\\xcb\\xd9\\xab\\xe9\\xbe\\xf8{\\xfd\\xf3\\xf5\\xab\\xe9\\xf2\\xfar\\xb7\\xfd\\xfa\\xfb]x\\xfd\\xe6v|\\xfd\\xa0\\xeff\\xfb\\xbe>\\xfb\\xb8\\\\\\xde\\xec\\xfb\\xfd\\x9b\\x8f\\xf8\\xfe\\xdd\\xfd\\xb59\\xfb\\xa0\\xafg\\xf7_\\xfb\\xef\\xee\\x9d\\xed\\xfb\\xfa\\xe7\\x07\\xf3\\xfd\\xab\\xe9\\xf6\\xfaU\\x7f\\x7f\\xb3\\xef\\xefo\\xee\\x97\\xeb\\xd9\\xbd\\xb3\\xcf0\\xb3\\x0f\\xf9s\\xeb\\xe6\\x1e'\\xef>\\xce\\xd6\\xef?N\\xfb\\xd7\\x97\\xb3\\xf5\\xfb\\xcb\\x9b\\xfbw\\x1fj|\\x9aa\\x9b\\x9f\\x1f\\xcc\\xf7\\x1f\\xa6\\xdb\\xf9+\\xfd\\xf1\\xdd\\xfd\\xc3\\xf6}\\xfe\\xdf\\xe5\\xe3\\xd7}V\\x9f\\x93\\xbe\\xbb\\xbf\\xee\\xdd\\xd4?\\x17u\\xbc\\xfb\\x90\\xd5\\xf1\\x90=\\xdb\\xe5|\\xef\\x97\\xeb\\x9b\\xc7\\xa9U\\xfd\\xfc\\xfe\\xa3\\xd3\\xbf\\xbe\\xbc\\x98\\xcd>N\\x97\\xb3\\x8f\\xaf\\x93\\xb2m\\xe9l\\xdf\\xdf\\xdd\\\\\\xbe\\x1e\\\\{\\xa3\\x9f\\x7f+\\xf4\\xf4\\xf3O\\x9d<\\xaf[\\x9c\\xfc*b\\xceN\\x10j1\\x8a\\x90\\x9d\\x92\\xf3ZqS\\x9f{#\\x84<\\xa3\\xd9SK|f0\\x95(\\xa8Y\\xb9G\\x11\\xb2\\xe3,Z(F\\xa4\\xfcEm\\xecC\\xe6w\\xc0\\xdd\\xff\\xe9\\xafq\\xeaE\\x18\\xfd\\xabJ\\xfeZ\\xd4\\xc15\\x0b\\xf4V\\x80\\xd1\\x9f\\xde]\\xe9\\xbd\\x07.\\x89\\xd8\\xcbg\\xd8\\xa3\\xee\\x94\t8\\x19#\\x9d\\xbd\\xe0\\xa5\\x94\\xdd}\\xea\\x99\\xa4\\xfch\\xe1?\\xb3%\\xf5/\\xc8\\xb7=\\xfc\\xaf3A\\xe9\\xc2\\xc3HX\\x18\\xd9I\\xb2\\x0dcW\\x08H\\x90\\x1d;+aq\\xb6\\x1e\\xa3\\x0b\\xb3'v\\x8clRE:\\x91l\\xa2\\x1dh\\xc4\\x0c\\x8f\\xc4\\x86\\xa1;\\xce\\xfe\\xb4\\x0d\\x8f\\x8b\\x85\\x9a\\x15\\xff\\xf3\\xd5\\xd5\\xbct&\\xdf\\x8a\\x91\\x1b\\xbb\\xeaO\\xd2V\\xb4\\x81\\xea\\xd6\\xb4\\x01\\xcbV\\xb5\\xc1\\xf2\\xd6\\x81\\xa0\\xaa\\x95\\x7f\\xca0\\x00d\\x8ar6\\x07C\\x7fq6\\xd6_\\x00Y\\xb6:\\xa5k\\xba?jF\\xb4\\xcbF]0\\xe5K\\x96\\xff\\xbb\\xa7\\xbf8\\x1b\\xb5\\xf2\\xeb\\xc9\\xd9U\\xc5\\xff6\\xf5\\x17g\\x96\\xfe\\xe2l\\xd8\\xcaQ\\xeb\\xb7HX\\x95\\xff\\xbb\\xaf\\xbf8\\x1b\\xb4\\xf2kaWs#3k\\xff\\xab\\xd1g\\xd1(8\\x1403\\x07y|\\xbc\\xd9\\x9a\\xeaQ\\xb7\\xe8\\xf9\\xd5\\x137l\\x92\\x01u\\xcb\\xbb(\\x8e:-\\x00\\xccMUK\\x8aw|\\x1d\\xf8\\xd0\\x17\\xb8\\x1fU\\x0f\\x11\\xce:\\xe6\\x0f%\\x13[r\\xe4d\\xc2\\x9c\\xd5\\x88QN\\\"P\\xc0\\xb3\\x9f\\xd9rV\\xc8y\\x98\\x87\\xbb\\x03\\x19\\xf5\\x97+Y`mD\\xeez\\x08\\x1eW*\\xd5\\xb3?peOx\\xfd\\x86\\x80aD\\x1dD\\xef\\xeb:\\xf1\\xd1\\x8d\\xc2\\x0e\\xe4y\\xb9J\\xf3,HU\\x8bP\\xba\\xae\\x16\\x85\\x98L\\xaag\\xff\\xaa\\x9b\\xca/\\xa5\\xa5t?\\xe7\\x8a\\xfa{\\xb7xC\\x8f\\xf0\\x8dJt.K#\\xf7\\xcb\\xf27/Tn7 \\xcf\\x91\\x8f\\xca\\xedn2\\x0ef\\xcf|\\xd0[Q\\x8c\\xff\\xa1Q\\xf6G\\xf4\\xb2$=_\\x02T i!\\x97\\x08\\\"\\xde\\xf1\\x90\\xf7\\x83\\xfa\\xa7\\x13U\\xd7\\xfe\\xca_\\x85WFKk;\\xcf\\x7fB.e0^Y\\xf9\\x1a\\xf8/\\xc0\\\"\\xd8Y\\xd9q\\x82\\xd2_\\xd6\\xe9B\\x1b\\x9d\\xbd0_%\\x9be'\\xb7\\xe0/?\\x18\\xfa\\x0f\\x9d\\xc2\\x82\\xbf\\xfc0\\xfa\\xa1\\xb3\\xf1\\xd0\\xf6\\\"\\xdc\\xfd\\xf2\\x83\\xd9\\x19v\\x0c\\xbd3\\xfa\\xa1\\xb3\\xf3q\\x90\\xfc\\xf2\\xc3*M\\xa3\\xf3\\x97/\\xb7\\xdbmwkv\\xc3x\\xf9\\xb2\\xa7\\xebzV\\xc7\\x0f/\\xcc\\xab\\x17\\xe6\\xab\\xc8NW\\x9d\\x85\\x87\\xf1/?\\xbc\\xe8\\x99}\\xa3?\\xec_\\xfd\\x90?\\xd0\\xe25F\\xbf\\xfc\\x806(\\x08]\\xf7\\x87\\x8e\\xfb\\xcb\\x0f\\xb3A\\xd74\\xcd\\x8ea\\xbd3;\\x86\\xd1\\x1d\\x0c\\x86\\xd8\\xc8\\x9eh\\xd9\\xbf\\xfdN\\xaf\\xd3{W<\\xce\\xc40;\\xa3\\xac\\xec\\xf1\\x87\\x97EMY\\xa5/\\xcc\\xab\\xbf\\xfc\\xd4\\xb1\\xf4\\x17\\xcdZ\\x93\\xd6\\xa8\\xeb\\xd98\\\\j\\xeb\\x1d\\xf35\\x9d\t\\xf9\\xa2U\\xea\\x1e\\x8b^\\x1dV\\xaa^\\x03,`\\xd8\\xe9f\\xbaw\\xe30\\x02\\xb8K\\x19\\x8an\\xc1\\x8c~\\x12V\\xe5\\x87\\xae\\x8d\\xa9z\\xea-m\\xae!\\xd4\\xfe63)\\x16\\xbf\\x9a\\xe5\\xdcP\\x7f\\xf3\\xc3\\xe2\\x86\\xe2\\x937\\xf8\\xf9\\x05JuY\\xafm\\x81\\\"\\xc8\\x07\\xe8\\xd1\\xaeS\\x9c\\x9c\\x92\\xbe\\x04Z\\x8ckUj\\xb5\\xb1&;\\x06g\\xf5\\xc90\\x82O*J\\xd8\\xd2\\x17U\\x80{6U\\x9e\\x9c\\x9fk\\x95V\\xb8\\xd2\\xba\\xe9K>#f\\x81=h\\x16\\xd8O8\\x9a\\x04\\xd5\\xff\\x94\\xd7\\xce\\xd5\\xb1J\\xaf8/':*[:\\x16\\xe96'\\x9d\\xffQmM\\xa7\\xeb\\xe00AZ\\xfe\\xf8\\x88\\x94\\xfc\\xf3e\\x9bd\\xc2\\xad\\xc8\\x0f\\x83\\xf7\\xd8c?\\x03\\xf2\\x0d^\\x8d\\xe8\\\\\\x1eN\\xb4Ir\\x82[\\xf8\\xa1+O\\xef\\x98\\xfa\\x91g\\xea\\x85\\xb5t\\xba\\xc4}\\xd9$\\xb2\\x99\\x1b\\x11<&u\\xabc\\xb9\\xb6\\x9e\\xfd\\x11\\x9d\\xcc\\xe5(\\xff\\x9e\\xba\\xcc\\x8dK\\xf5w\\x0f\\xe5\\xcc\\xb44\\\\.1b\\x8fh\\xc1\\x81\\xd7@\\x14x\\x95\\xa6\\xccF\\xa9N\\xd7D\\xbe\\xc2\\xebo\\xb8\\xe1]\\xf8*`u\\xe4\\xa9\\x08\\xe8C\\x0e$\\x03~**\\xcf\\xf1\\x8cu\\x17-\\x81\\xf3=\\xe5s\\x8eN\\x0bc/\\xcf\\xa6\\xe9/\\xb2(a\\\"*\\x10\\x1b\\xaa\\xeb\\x84\\x18\\xdbQ\\x82\\\\\\xf1\\xa9#\\x81P\\xf9c1\\xe7\\xf2\\xac\\x1et\\x02\\x8d\\xdd\\xc0\\x12\\\\\\xa1=*\\xd2k\\x0f\\xe0\\xaa`\\xb0\\xd7o\\x82\\xc1\\xec\\xe7:\\x1a\\xcc\\x83\\xea~\\xa7\\xd7'c\\xbd,\\x8c3\\xf4\\xce\\xe0\\xdd\\xa8k\\x8d;\\xc3n\\xdf\\xe8\\x18f\\xd7\\x18v\\x8c\\x1e\\xd6\\xfa]k\\xd4\\xe9w\\xad\\xf1;C\\xef\\x18#<\\xd0\\x06m\\xf1\\x1b\\xb7W\\x90\\x05/\\x90\\x16\\xef\\xd7~\\xa4\\xa5a\\xfe60`\\xe1\\\";\\x01\\xc43\\x10\\xbfz\\x8a:;\\xa8u\\xfb\\\\g\\x03-\\\\\\xdc\\x87\\x97\\x1f\\xe3$\\xa0\\xd5\\xbb\\xa5\\x8aG+/H\\x0f\\xc4!\\xbb\\xfcG\\xf6cc\\x04T \\xab\\xd1\\x1d!\\x7f\\xc2\\x9f\\xe3\\xab\\x86\\xff\\xae\\x81\\xfcN~\\x14\\x08\\xf8\\x1eo9<\\xaa\\x04od\\xb85\\x84\\x1c\\x9e\\xb8D\\x95\\xad\\xfb\\x99\\xc3F\\xe5\\xc9\\xb2\\x02\\x9a\\xd4W0ub\\xf2\\x97\\xbdR\\x9a\\x97M\\xc2\\xbdz\\xc1)1{\\xeb\\xfc\\x0b\\x0f`\\x9a,\\x96b\\\"7Qh\\\"\\x7f\\xef5\\xcd\\x9e\t\\xd1\\x9e\\xe5-\\x86'\\x85Ap\\xb2\\xe8Y\\xdf\\x13.\\x0f\\\"\\x06:w\\xbc\\x86S\\xd5\\x13_\\xa3\\x0d\\xf0;\\xe9\\xcd\\xde\\x1c\\x9f\\xe3\\xde_\\xce\\x92[\\xac\\x07\\x90\\xddEo\\xdd\\xf6\\x02\\x0e\\x0b05\\xa8\\x0d\\x99\\xf9\\xeaQ\\xda\\x17*F\\xc0e\\x97\\xfa\\x82\\xc3Q\\x1f\\x1c\\x02\\xde\\xc6\\xa7>\\xd8\\xb0\\xdf\\xeej\\x91\\xb5\\xc5F\\xc3\\xe3\\x98\\xd1Q \\xf1\\xda\\x90\\xa3\\xb8\\xe4\\xa7\\x83\\x18&\\xad#\\x12\\xc7\\xa6|\\x90\\x08\\x0cLM\\x0b\\xa3\\xfa\\nVf\\xab\\xe6\\x15;\\x96B\\x85\\xf3pw\\x90\\x1e\\xdai`T\\xc2\\x19\\x8ca\\x95\\xcd\\xcc\\xbe\\xcc\\xa7\\xae\\xe4\\x08\\xb7\\xe6Ni\\xd5L\\xba\\xd0\\x0b\\x87,\\xf1\\xa4\\xce\\xf4Ty\\xcf\\xb4\\xf4\\xec\\x0f\\xc4\\xac\\xa9U\\xdb\\xdaq\\xe0\\x05K\\x903\\xb7|\\xab^\\xdcR\\xddn\\x17\\x1fV\\xe4_Q\\x97\\x8du\\x7f\\xcf\\xfe)\\xa7\\xe5\\xee<\\xb6\\x1d\\xa4\\xe5\\xabZjF\\x84\\xceBEq\\x18i\\x81\\xed\\xb3\\x87\\xb8\\xa9\\x15I#\\x1d@\\x9c\\xfbx\\xa5\\x18\\xcb\\x06\\x10(X\\xfb\\xb2\\x0b\\x8f9(\\x0b\\xb1\\xed\\xf4 \\x9e4\\xba\t\\x8a7(\\x16\\\\\\x1f{\\xb6\\x0bYd%\\xa2\\xebW\\xf47f@\\x06\\x9dU\\xbf[\\x9d%\\xaf\\xee\\x1e\\x94\\x01E\\x8fUcE\\x92\\xdas\\x8c:i\\xf55\\x16So\\x01\\xba\\\"\\x9b\\xd5\\xd2eQ \\xf8\\x85\\xdb\tu\\x1f\\x82H\\x82i\\xc4\\x9dNy\\xe5\\xf0\\xeb\\xfaKWik\\xa3\\xdb\\xe1^\\x0eE\\x1c|\\x87I\\xbbN\\xe8G\\xeb\\xack\\xadc\\\\\\x0f\\xcd\\xfc\\x91~\\x10_\\x1cC\\x07\\xf5E\\x9c\\xaa\\x9d\\x88&l\\xce\\xf5\\x978\\x9c\\xdbX+\\xea\\xfa\\x8f\\xbe%*\\x90\\xb4\\xd6S9\\x00\\x92g\\x9c{\\xd50$~=S\\xf5\\xaa/\\xc0\\xdd\\xcb1C\\xe0\\xed\\xb9\\x03@/\\xc3\\xa12nZ\\xb5>?\\xaf~\\xe0\\x99\\x94\\xc3]\\x9a\\x9fLJ\\xe3\\xac?\\xd4\\xbcX\\xafg?\\xd6,`\\xc0\\xf8tu\\\"\\xa5O\\xbe\\xe2\\xab\\xd8\\x84\\x82ZU\\xde\\xefN2IZ\\x12dp\\xa7|j\\xda\\xac\\xec\\\\\\x80B\\xaa7\\xb7)\\xe9E\\xa2\\x91fl\\xe9Q{\\x0f\\x03\\xe2\\xe6\t\\xf0V\\x9f\\x92m\\xfe\\xea\\xc6\\x9c\\xed\\x99\\xact\\xd5vz\\x8cI%\\x13\\xd7b\\xf2c\\xf2\\x8a\\xeb\\xb7\\x9e\\xda\\xa9Bf\\xae\\xaa\\xbe\\x8c\\x93\\xb0/\\x93\\xe0\\xce\\x02\\xc1\\x1f\\xd52\\xf9\\x17>Ix\\xd2\\x97\\xcdJ\\x86B\\xfa?\\xfe\\xc8grI\\xc4\\xd1\\xd7O\\x99\\x14\\x99\\n\\xba1\\xfa\\xef\\xb5\\x17W\\xaf\\xc7\\x11\\x0d\\x12\\\"*\\xf86+\\x1c\\xe0i\\x03\\xfasCM\\xca\\xac\\xe2\\xf6\\x97R\\xf0\\xf2e\\xd0V1\\n\\x0e\\xd8o\\xae6\\xb2\\xa0]\\x8a\\x82\\xc4\\x0b\\x99l2\\x81\\xf0\\x14^\\x9csLW\\xe5?\\xccBT&|m\\xfe\\x13+\\x8d\\x91+V\\x81\\x1f\\xa5\\xfb?66^\\xa3?\\xf8\\xc4\\xb5ID\\x03\\xe5\\xda\\x91\\x8b\\x0e\\xb8\\x17\\x0cJ\\xb9\\x97\\x93=\\x15L\\x0e\\x8f\\xe2\\xd0\\xad\\xee%5\\xc1<\\xffjH\\x8c\\x80\\xab\\xee\\xfc\\xa6^\\x1aFs\\x9b\\xfeb\\x0dpE\\xa7|s\\x0eDZ\\xfd\\x17~\\xcd`\\x89\\xb1O\\xdb%{r\\xbe\\x07\\x14\\x98:U\\x95\\xe7\\x06\\xd9!U%WB\\x8eb\\xf9^3\\xbbIR\\x1c\\xb9\\x90\\xaf_\\xd8cD\\x95\\x84E\\xca\\x06\\xd8\\xcc\\xe2#\\xd1\\xca\\n\\xf5+J\\xd61\\xae_\\xd3\\xf7d\\xad\\xe7m5\\x9b\\xd6\\x9b\\x93\\xea\t\\x01\\xca/r\\xa2\\xc0e\\xaevfO\\xd8{\\x9dy)\\n\\\\\\xf56\\xb4\\xcc$\\xa5\\x86\\xf8seV\\x7f\\xb8\\x80\\xbeJV]h\\x12\\xdf*\\x91\\x8b\\xd3-f!\\xed\\xf4\\xb3WOw\\xeb\t8\\x99\\x0e\\xa8\\xe3p\\xa76\\xa9\\xbcgG\\xcf\\x9aJ\\x1d\\x82\\xf6\\xd2<\\xc0\\x92\\xbf\\x19\\xf2\\x18\\xa1\\x8a\\xa9\\x9f\\x93\\xa3\\xd7\\xc8\\xd1\\x9b\\x94\\xff!\\x94#t\\x0b\\xea\\x04$\\xb0\\xee(\\xcf\\x0dR\\xbf\\x1f#<\\xf5\\xb4\\xbc\\xd5$\\x89D\\xc88\\xae_\\x1e\\xf2\\x90\\x9c\\xe1$\\xae\\xd5Q\\x8b\\xa8\\xb2qG\\x0e:^\\xb0\\x08\\xeb;\\x1d\\xc0K(\\xb3\\xf2\\xce*\\xbf\\xee\\xd7\\xf5m/`\\x97urt\\x87=\\xc4\\n\\xc0\\xb1w\\xc6?\\x8c\\x80g\\xc5z\\x89\\xe0w\\xda+\\x0f\\x0b\\x19\\x0d\\xa0\\x02\\xf6\\xf3\\xc8\\xc5C\\x13z\\xd8\\x87\\x1eZ\\xc7\\xbf9\\xa0\\xa0,\\xdenU\\xad\\x8f\\x8b\\xdbb\\xea\\xe9C\\xdd:\\xf2\\xa4.\\xf4\\xee\\xf7\\\\\\x0e\\x9b\\xd5\\xeeQ\\x1b\\x11-\\xb6\\x80\\xae\\xc9\\x16\\xb5\\xd2\\xef\\xbc3\\x16\\x83\\xb1\\x03xay7\\x9f\\xdc\\x9f\\x02\\x98u\\xe7v\\x824\\xe0\\xe80\\xa9\\x0b\\x93:\\xdbZ\\xcf#G)Qh\\xcc.\\x9bF5\\x07O{w/\\xc1\\x95\\xff2\\xaad\\xc1`\\xb5\\x1c\\xae(\\xd6\\xef\\xe4\\xcb\\x9d{\\xc5\\xc0\\xc2.\\x8d\\x93u\\xc4\\x1dd\\xb5\\x86\\xcc\\x01\\xb7\\xa1;\\xea\\x8f!\\xf3\\x92\\x92\\xe7\\xaf\\xdbST\\x057T\\xd9\\xebt\\xa5\\xcd\\xd3\\xe0i\\x01\\x0e\\xbd6\\x7f\\x8e\\x17U\\xc8\\xa5,\\xeeK\\xbba\\x80\\x0e\\xf2\\x14rN\\xf8\\xa4\\xa6)M\\xd4\\xcf\\x1a\\xbb\\x912w\\x88\\xd7\\x040)\\xd0&4\\xd1\\x9a\\x97\\xe3\\x01\\x9c\\xc0\\xe4\\xa1\\xc1\\xdeo(\\xd2\\x89-\\xa7\\xe6d\\xdc\\xe1M)a\\x1dl8E3#v\\xcd\\xcbc\\xffV\\xb4\\x13\\x1d\\xb7bH\\xeb\\x8f\\x8e\\xf3\\xc1\\xbe\\x94\\xae\\xf5&\\x9a\\x84\\xa0\\x08\\xa3\\xd9\\x1b\\x90R)Q\\x1c\\x87q\\xc2\\x0e\\xa8\\xd4\\x06\\x18?Y=y0M\\x9c0BIg\\xd5{\\xfa\\x94\\x9f\\xb3\\xd2\\\\\\xb4\\x90\\x1f\\x8b(\\x1b\\xaa1V\\xe9\\xc1\\x0eXu$\\xe2\\x92\\x9acc\\xf4)b^\\x80E>\\xe5C\\xd2\\xea\\xfaZ\\xebd/\\xf9&\\x15-v\\xf9;\\xdb\\nx\\xd3\\x0b$e\\x8fl\\x08\\xdf=\\x7f\\x92]\\x05U&\\xc4\\x8b\\x9f\\xc0M/\\x86\\xae\\x882\\x9f>P\\x9e\\xb4\\x06S\\x90\\x8c\\xd6a\\x8f\\xba\\xac\\xa44P+\\xb99t\\xc7\\xb1\\xf0\\xb7\\x03x9\\xad\\xbc\\x971\\x02\\xeej\\x8c~\\x9a4\\xaf\\xc6\\x02\\xdfAV\\x00\\x0d\\x9e\\xd6hH\\x0d\\xfav\\xe0\\xff\\xb4,\\x94\\x9d\\xee\\xf2kaq\\xb7\\no\\x9aTZ\\xe5\\x1d\\xf9J\\xef\\xff\\xbc\\xfc\\xdb_;I\\xb8\\x8e\\x1d4\\xb3\\xa3\\xc8\\x0b\\x96\\x9f\\xee\\xde\\xfd\\xd20\\xea:I\\xd2\\xf5\\xed\\xe8o/\\xff\\x7f\\x01\\x00\\x00\\xff\\xffPK\\x07\\x08_;\\x94/\\xe8Y\\x00\\x00\\xa8X\\x02\\x00PK\\x03\\x04\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x0c\\x00\t\\x00swagger.yamlUT\\x05\\x00\\x01\\x80Cm8\\xec\\xbdk\\x93\\xdb\\xc6\\x92&\\xfc\\xbd\\x7fE\\xad>\\x8c\\xa5\\x19\\x89\\xed\\xcb\\xf1\\xc4\\xac\\xde\\xf5\\xc4Jm\\xc9\\xee\t[\\xea\\x95Zgc\\xe3\\xc4\t\\xaa\\x08\\x16I\\x9c\\x06Q4\\xaa\\xd0\\x97\\xa3\\xf1\\x7f\\x7f\\xa3n@\\x01\\xac\\x1b@t\\x8b\\x963?Xm\\x02HT%\\xea\\x9a\\xcf\\x93Y\\xec\\x06\\xaf\\xd7\\xa4z\\x8e\\xbe\\xfav\\xf6\\xf5W'y\\xb9\\xa2\\xcfO\\x10\\xe29/\\xc8st\\xfe\\xee\\xfc\\xfd\\xa6^\\xa0g\\xe8\\xdd\\xab\\xf7\\x97\\x08\\x97K\\xb4~wq\\x86~\\xc2\\x9c\\xdc\\xe0;\\xb4\\xa4\\x19;AhIXV\\xe5;\\x9e\\xd3\\xf29z\\xa1\\xee\\xcdKN\\xaa\\x15\\xce\\x08Z\\xd1\\n1\\x8e9A\\xbf\\xd5\\xa4\\xca\t{\\x8a\\n\\xb2\\xc6\\xd9\\x1d\\xe2\\x15.\\x19\\xce\\xc4sB\\xcd5\\xa9\\x98T\\xf1\\xed\\xec\\xeb\\xd9\\xd7';\\xcc7L\\x14\\xe64\\xafr\\xb6\\xa5\\xcbSN\\xafHyz\\xfd\\xcd\\xe9\\x0eWx+\\xaf!\\xb4&\\\\\\xfd\\x81\\x10\\xab\\xb7[\\\\\\xdd=G\\x17\\xf2\\xbay\\x1f\\xe2\\x1b\\x82\\xe4\\xb3H>H8\\xa9\\x98~\\x84\\xeeH\\x85E\\x01\\xce\\x97\\xcf\\xd1\\xa5\\xb8G=\\xab/W\\x84\\xedh\\xc9\\x083\\xaf@\\xe8\\xabo\\xbf\\xfe\\xfa\\xab\\xf6\\x7f\\xf7j\\xcf\\xea,#\\x8c\\xad\\xea\\xa2yzf\\xdd\\xcd\\xb2\\x0d\\xd9b\\xfby\\x84\\xf8\\xdd\\x8e<Gt\\xf1\\x0f\\x92\\xf1\\xce\\x85]%\\xca\\xc7s\\xfb\\xfd\\xfa\\x8ae\\x01[\\xbc\\xaaPP\\x9d|T\\xd4~\\xce\\xf1\\xed\\xbc\\xc2\\x9c\\xb8\\xee0\\xea\\x19\\xaf\\xf2r\\xed\\xb8!g\\xac&s\\xa5h\\x81\\x19\\x99\\xafHP\\x91\\xa7\\x9c(ZV$\\xed^\\xd2\\xad\\xefb\\xb4\\xa8B\\xf0\\x96\\xd6%?@E\\xe7\\xd3\\xff\\xe73\\x8f\\xa23\\x9a\\x97hIVyI\\x18\\xc2\\xba%\\xde\\xe4|\\x83\\xb0\\xaaD^\\xca&(\\xfb\\x17.u\\xb1f''\\x1e}o\\xde^\\xbez\\x8e.7D\\xdf\\x89V9)\\x96(g\\xe2\\xe1\\xf3\\x92\\xa3\\x9bM\\x9emP\\xbe\\xdd\\x15dKJ.;\\x80GWV3N\\xb7hK\\xf8\\x86.}/d\\xf9\\xba\\xc4\\xbc\\xae\\x08C\\x15\\xf9\\xad\\xce+\\xb2D\\x8b;\\xb4\\xa6k\\xba\\xab(\\xa73\\xc7s\\xdb\\xbc\\xe4\\xba%\\xac\\x08\\x99\\xcbN6\\xa2M\\xe9\\x81HwhcDe\\xc2-]\\xd6\\x05\\xf9\\x8a\\xed\\xf7j#\\x95\\xab\\xf5\\x1c\\xd0EJr\\xcb\\xe7W\\xe4nDE\\x84\\xach\\xb5\\xc5\\xfc9Z\\xdcq\\xf7\\xf7\\xe8\\xb4\\xa7\\xff\\xf6\\xb5'S\\n\\xf1\\xc5\\xc5\\xd0&\\xfe\\xe4\\x14-\\x08\\xdaa\\xc6\\xc8R\\xfc\\xcf\\x05^\\x93w\\xe4\\xb7\\x9a0>S\\xd7=\\xca\\xc4\\x18y'\\xd5\\x08\\xb5h\\x87\\xd7\\x04m)\\xe3\\x88\\xacVy\\x96\\x93\\x92\\x17w3t\\xce\\xd1M^\\x14\\xe2\\x1dd\\xbb\\xe3w(_y\\xf4\\xf1\\x0d\\xa9\\x08\\xc2\\x15A%E[Z\\x11\\xf1\\x11\\xea\\x823W#\\xe1\\x94\\xe3\\xe2@c\\xd6y\\xc9\\xff\\xfd/n\\x1d\\xaa\\xf1x;\\xa6|\\xbd\\xb4\\xa2\\xfc\\xa3\\xac\\xb7\\x0bR!\\xba2EF\\xf8\\x1a\\xe7\\x05^\\x14\\xc4__\\xdb\\xd0\\x99\\xe8\\x8ds\\xa9\\xcc\\xd7\\x95n0C\\x8c\\xf0\\xa7(\\xe7\\x0c]\\xe3\\xa2&\\xe2\\xfdu\\xa9Z\\xf6\\x12Qa\\xbf\\x9b\\x9c\\xed\\xb7\\x8f\\xf8X\\xa3\\x8a\\xa2\\xa6\\x1cU+\\xf5\\xbd\\x16d\\xb9$K\\x94\\x97j\\xf26\\xb3\\x12\\xda\\x12\\xc6\\xf0\\x9a0t#\\xbe\\x99\\xeb\\xf3l\\x88\\xab\\x1e\\x19\\xad\\x94\\x8ee^\\xae\\xe5\\x88@\\x187\\xda\\xd0\\x063T\\x8bVh[\\xc6i\\x0e\\xf3\\xc4{\\xbam\\xcb\\xfd\\xc9;\\x1a\\xcb\\xfe\\xbc#\\x98\\x93%z\\x89\\xab\\xe6#\\xfd\\x80\\xbe\\xf9\\xffB\\x0fu\\xcc\\\"\\xdb\\xf7\\x0f\\xe8[\\xe7\\x13\\xbfw~\\xf4\\xb5\\x9e\\xff#z\\xccE3\\xe4\\xd8\\x16oL+Z\\xaf\\\\\\xf8\\x88\\x8e%\\x1f8\\xbd\\xf0\\x0dR\\xe2\\x9b\\xe8\\xf1\\xd7\\xfc\\xb4$+\\\\\\x17\\xdc\\xbf\\xca(Q]\\x92\\xdb\\x1d\\xc9\\x841HU\\xd1\\xea>\\x17\\x1b\\xf2\\x05\\xbe\\x81\\xd4\\xd9E3\\xbatL\\xfc\\xea\\x01\\xb12\\\\\\x93j\\xef\\xaa\\xe9\\xd0y\\xc9\\xbf\\xfb\\xb6wU7\\x95AeX\\x12\\x8e\\xf3\\xc2;\\x01\\xe0\\xaa\\xc2w{\\xd7rN\\\\\\xcb\\xaa\\xe8\\x82%\\xb6\\\\\\x11\\x8f\\xcf\\xeb\\xca3\\xd8%\\x0cw)\\x03\\x80\\x92\\x17\\xe8\\xc3\\xbb_N+\\xc2h]e\\x04\\x95xK\\x10\\xdf`\\x8e\\xea2\\xff\\xad&\\xc5\\x1d\\xca\\x97\\xa4\\xe4\\xf9\\xaaY\\x1a\\x8b\\xc6J}\\x03\\x9c\\x1c\\x06\\x10#U\\x8e\\x8b\\xfc\\x9f\\xc4\\xbbH\\x906\\xe04\\xa3\\x05Z\\xd4\\xab\\x15\\xa9\\xccG\\x9b\\xa1\\xcbM\\xcet\\xdd\\xd0\\xb6f\\x1ce\\xb4\\xe48/\\x11v\\xaf\\xfd\\x84\\x14\\x043\\xee\\x7f\\x17-\tzt\\xfa\\x08e\\x1b\\\\\\xe1\\x8c\\x93j&\\x17D\\x05f\\x1c1\\xb2\\x16\\xcb\\x1e1\\x90\\x8b\\xa2\\x7fx\\xf7\\x8b\\\\#\\xf0\\x8dW\\x9b,TEv\\x15a\\xa4\\x0c\\xbcU\\xa8[\\xd5Eq\\x87~\\xabq!,\\xb8T\\xf6\\xd5\\xaf\\x92\\x96|\\x8c\\x19\\xcaK\\xbf\\x92\\x8f\\xa2(\\xa7kJ\\xd7\\x05\\x99I\\x9b-\\xea\\xd5\\xec\\xc7Z\\xedC>>Q5\\x91j\\xd9\\x86\\xd6\\xc5R\\x8c\\xe2y\\xe9\\xd5\\x87Q\\x86KZ\\xe6\\x19.d\\x1f\\xf2\\xbf\\xf91\\x99\\xadgb\\xf7\\x85\\xe5\\xc8\\xfdh\\xf6H\\x0cZ%\\xe5\\x08g\\x19\\xd9q\\xb2|\\xe2_u\\\"t^\\xa2\\x9d0v\\x9e\\x91\\xa7\\x88\\x13\\xb1 \\xabY\\x8d\\x859v\\x15\\xc9\\xe8v\\x97\\x8b\\x99\\xb2\\xe4T\\x1ac\\x91\\x97\\xb8\\xda\\xefaFpQH{1\\xd58\\xf9\\x86\\xdc\\xf9_\\xad\\xc6:\\x94s1\\xa9\\xd5b\\xb0-\\xe5;DC\\x12\\xcb\\x16\\xbaB/\\xca\\xbb\\x19\\xfa\\x99\\xde\\x90kR=\\x15\\x86\\xf0*\\xfb\\xf0\\xee\\x17\\xa6\\xd7\\xc8B\\x95g\\x96S\\\"GP\\x82>n8\\xdf}|\\xaa\\xfee\\x1f\\x9f\\\"Z\\x89\\xf5\\x8d\\xba\\xfaT\\xb6\\xc6\\x0c\\x97\\x88\\xca\\xde),\\xe2WH8\\xaawb\\x1bp\\xb7\\x0b\\xbd\\x97T\\xd7\\xa4R\\xa6\\xd9\\xe2\\x1dSMK\\x96\\x9c\\xd3f\\xe6\\x94\\xab\\x86\\\\\\xee\\x9f\\x11\\xee\\xcf+\\xad\\xachQ\\xd0\\x1b\\xf6<\\xf0m\\xff\\x15\\x9d\\xaf\\xda\\x1a\\x89f\\xb1\\xab\\xe8u\\xbe$\\xcb\\xa6\\xd2r\\x83\\xc1X\\xbd%K\\xf7|\\xae\\x15\\xbd(\\xd1\\xcf\\x97\\x97\\x17\\xe8\\xa7W\\x97\\x88\\x96\\xa6\\x0b\\xaa>v'w*\\xd8\\xfb\\xf4\\xdf\\xfa\\xdd\\xe2\\xf2nG\\xfe\\xfe\\xb7\\xbf{\\x1f@f\\x11U\\xea\\xf6\\xa6\\xa7\\x11\\xf9\\x85v\\x15]\\xd6\\x19\\x11\\xdb\\\"9\\x85\\xb9\\x96\\xa0J\\xfe\\x15\\xbd\\xd8\\xed\\x8a<\\xc3\\xda\\x96b\t+l\\xa6\\x16\\xd3\\x19\\xce\\xc4\\xd8B\\xe9U\\xbdk\\x96\\x1db\\x7f\\xbb\\x0c\\x8cO\\x81M\\x17R\\x8dP\\x96q\\x83\\xafe\\x13\\xdcZ}h\\xa9:\\x116U\\x12\\x7f_\\xd3\\\\l\\x0e\\xfd\\x0d\\x0b\\xe9\\x02\\xca\\xe1\\xa3\\\"+Z\\x91\\xa7F\\x81\\xd0\\x8by\\xbe\\xc8\\x8b\\x9c\\xdf\\xa1\\x92\\x90\\xa5Y\\x1d\\xca!\\xaf\\xba\\x0e\\xd4D\\xd6%\\xdb\\xe0r-7^\\xaa\\xcf\\xce\\xd0\\xe3\\x0f\\x8c\\x18\\x8f\\x8d\\xb0\\x92h\\x9eb\\xccR\\xed\\x13\\x97x\\x1d\\xaa\\xfd\\xa2\\\"\\xf8J\\x8cAZ\\xf1\\xec\\x89\\xbfE\\xbd\\xa1\\x9c<G\\\\\\xcc!\\xab\\xba\\xccT\\x0f\\x13\\xf5\\xd0cWVW\\x95\\xdc\\xa6\\xd8\\xcbu\\xffp)\\xda#\\x95{\\x1b\\xff*]\\xcfe\\x8bZl\\x05\\xc4LD\\x9e\\xca\\xcdy\\xce\\xcdK\\xe5\\nW.\\xf0L\\xbf\\xf4\\xaaZ\\x90u^\\x96\\xa2\\xb2b\\xcf\\x1f\\x98\\\\\\xeevd\\xa6\\xda?\\xde\\xe5l\\x96\\xd1mh4~/{*S;\\x061P\\x94\\xfdQ\\n=\\xd6\\x0bP\\xb5eS]\\xfb\\x89\\x7f\\x12\\xcc\\xd7\\x1b\\x8e\\x16\\x81AIVZ:.\\x1a\\xdf\\x82r\\\\\\xb0\\x1d\\xc9\\xf2U\\x9e!F\\xb6\\xb8\\xe4y\\xe6\\xdc\\xed\\xe9\\xbez\\xc0\\x12(\\xba\\x81N_%\\xfd*\\x86\\xa3\\x05AX\\x14*_Z\\x0b\\x9c\\xbdu\\x8c\\x9e\\xdc\\xf1\\x82^\\xfb\\xdb\\xb46\\x81\\xee\\n\\xae\\xea\\xa7\\x94\\xec\\xe3\\x8b\\xf2\\xee\\xa3Y\\x1eI\\x7f\\x0e\\xae\\x169\\xafD'\\xf6\\x97\\xd0\\xa9\\xca\\xcc\\x11\\xb8\\xa0\\xba\\xe9!\\xec\\xfe\\xb4bt\\x96\\x13\\x8d*\\xe1\\xa2\\xbb,\\xec-\\xff\\x9aU\\x9d\\xa7i^\\x98\\x8eS\\xe4\\x0bYl=\\x8f0\\xc4\\xea\\xdd\\x8eVr\\x06\\xdf\\xe1\\xec\\xea\\xb4.\\xc5?b\\xdeV\\xed\\xc2\\xdd\\x83\\xf4D\\xef_\\xd8\\xd0\\x15\\xaa\\xb9\\x1a\\xd8\\xcc\\xf0\\xc0\\xc4\\xc0\\x8a\\x97\\xcb\\\\\\x8d\\x15hMJR\\xc9}\\xa3\\xdag1]-\\xa7>Q\\x1e\\xf5\t\\xdd\\xef{u\\x8bE\\xe3G\\xdf<G\\x17\\xa2\\xfcb\\\\\\xd0U\\xc1\\x8d\\xd1\\xf3\\x12\\x9d\\xfd\\xdb\\xbf\\x05\\xa6\\xc9\\xd7\\x94\\xa2\\x15\\xa5\\xe8\\x074\\x9b\\xcd\\xfc\\xdbWQ\\x18\\\\\\xde\\xf9o\\xc0\\xe5\\xddL\\x14\\xe3uE\\xb7\\x8fW\\x94>\\xf1\\xdf:\\x9b\\xf9\\xe7\\xbf|\\x85\\x1e\\x0bU\\x1fdE.\\xe9\\xe3\\x7f\\x11\\xba\\x9e\\x04w\\xe3!}\\xbf\\x87m\\xf7m\\xc4v\\xff\\x85\\xaf\\xf1d\\xc6C?\\xc8\\xb5\\xa1x\\xcb\\x04\\x16\\xca\\xd9\\xe3\\xd7\\x94\\xce\\xb2\\x023\\x161\\x90*\\xa2xH\\xd5\\xd1z\\xd0_\\x06\\x8f\\xe5\\x1a\\xd3}\\x171\\xdd\\xc5\\x1d\\xdf\\xd02`<U\\xaa\\xd7\\x94>\\x9e\\xcdf\\xfe\\xd9\\xa01\\xdc\\xe3\\xe0=\\xb2\\xf1I\\xb3\\x8e\\xb5\\xaaPr\\xae\\x8c\\xfa\\xe3\\xab\\xf7g\\xef\\xce/.\\xdf\\xbe{\\xe2w\\xca\\xab\\xd7\\xaa\\x86\\x1a~\\xb1zu\\xd8\\x9c\\x7f\\x89\\x98\\xf3'\\xea\\xb7\\xa44\\xe5\\xf3\\x1f\\xd0\\xbf\\xec\\x16\\xb3\\xd7\\x94~\\x9a\\xcdf\\xbf\\xfbo\\xc6\\xe5\\xddS\\xb1\\x0c\\x15O\\xe0\\xf2n\\xb7\\x98\\xbd!7\\x91\\n\\xe4+\\xf9\\xc4\\xff\\xf8\\x01\\x95y\\x11v\\x8d\\x85\\xac\\x8c\\x02\\xc5\\n>\\xd7\\xab`@\\x8d.\\xa9\\xaa\\xdb\\xecC\\xb9\\xc5\\x15\\xdb\\xe0\\xe2\\x92\\xaa.7U5\\x9c\\xd7\\xc4vY~93\\xba\\x9b\\xad\\x0bZ\\xdc\\xb5\\x0b93\\x1f)?\\xb6{\\x1d\\xad\\xfdnb\\xa1\\xe3~\\xd5W\\x8eE\\xda\\xe9\\xaa.\\x8a\\x99\\xbc \\x16\\xc0_!l\\xcd\\x9fbn\\x15m\\xcb7\\xdb\\xa86\\xe7~Y3Y\\x95\\xc5\\x9d\\xd9\\xa9\\xee\\xb9\\x1f\\x9a\\x857\\xc2+.\\x17\\x82\\xee\\x17I\\xcf\\xc8W\\xa7_\\xb9_\\xa5gYSd\\xb9\\x7fFD\\xf7\\x91G+Jg\\x0b\\\\\\xc9\\xca\\xde\\x9e\\xde\\xcd\\xfe\\xf9HYQ\\xee\\xe6\\x9c\\xfa\\xfc\\x9b[Y\\xd4GB\\x87\\x98`\\x9d\\xb7\\xfc\\xd7\\xfb\\xb7o\\xdcW~\\xf8\\xe1\\x87\\x1f\\xfcm@<\\xd7zq\\xd4\\xca\\x94\\x8a\\x01F/\\xab\\xd4N\\xb1fz}S\\x91u]\\xe0\\xca\\xado_\\x8dxdI\\xda\\x85\\xd0\\xd3\\xd6\\xb3\\xae\\xc7\\x8b\\xa7j\\x81\\xefR\\x87=\\xfe k\\x91\\xa2@\\xbc\\x8f\\xff[\\x98\\xee\\xa3vO4\\x0bA\\xfb\\xe3\\xb8;\\x88\\x1e\\xd0\\x9e\\x07\\xb648\\xbb\\x12\\xa3Z\\xbb\\xc5^\\xe5\\x05\\xf1\\xcfDf\\x14\\xbc \\x15\\xa3e\\xb0\\xdbj\\xdf\\xde*\\xaf\\x18\\x9f\\xcb/\\x1cq\\xca\\xeb\\x07D\\xa34\\xf7\\xbb]\\xf2R|s\\\"B\\xc1R=\\x92\\xb6|\\xf4\\x1c=r\\xf5\\xda\\xae\\x19f\\xaa\\x96\\x8f\\x9e\\x86\\xf4\\xc9\\xfa\\xbd\\xc1[\\xa1\\xf3\\x7f\\xa9*\\xfcg\\xf0\\x01Q\\xbf\\xde\\xfdC+y\\xbe\\xd2[\\xb8n[S\\xad!g\\xe8\\x86\\x14\\xc5\\xb3\\xab\\x92\\xde(\\xf8x\\x83\\x19\\xc2\\x1a\\xd5\\x1d\\xd8\\xb9\\xbaM\\xfe\\xa9\\xda\\x12\\xf4\\xfaA\\x0b\\x02\\xea\\xe2\\x88\\x06\\xec\\xd9\\xaea\\xd5\\xa4\\xdd/\\xfb(;\\xa3i\\xe7\\x1bZ,U#\\xd7x\\xb4\\xec\\xcay\\xd9\\xf4\\x0f\\xa4|\\x8anU\\xaa\\xcb\\xb8\\xdf#\\x8b0k\\xa6\\xfb\\xc7b\\\\3&\\xdcs6\\x19\\x1f\\xec\\xdf\\xff\\xf6\\xf7'\\x81\\x8e4E\\x9b\\xeb\\xbe0\\xdc\\xec\\xa4\\xa9\\x84\\xcaof\\xdf~\\xf3-{\\x14hB\\xea_\\x8e\\xd7\\x16\\x0c\\xf1L\\x01P\\xd6\\xffK\\x9e\\xcb_\\xbfqRk\\xe4\\x1f\\x01j\\x8d|\\x96\\xa1\\x8a\\xf0\\xba*mjM\\x913\\xe3\\xcd\\xdf'\\xd5\\x1c=\\x9f\\xe6\\xd2\\xaa\\xb6-\\x80\\x15\\x01V\\xd4\\x15\\xc0\\x8a\\x00+r\\x0b`E\\x80\\x15\\x01V\\x04X\\x11`E\\x80\\x15\\x01V\\x04X\\x11`E\\x8d\\x00V\\x04X\\x11`E\\x80\\x15I\\x01\\xac\\x08\\xb0\\\"K\\x00+\\xea\\n`E\\xce\\x07\\x00+j\\x05\\xb0\\\"\\xc0\\x8a\\xdc*\\x07cEFvx\\xad\\xc3P!b\\x12\\\"&!b\\x12\\\"&'\\x8e\\x98T\\x08kj\\xb4\\xa4\\x86\\x99\\xdf]\\x9c\\xf5tA\\xa4$DJ\\xc6\\\\\\xbf\\xf1\\x8e\\xaf\\x04\\xd0o@\\xbf\\xdd\\x02\\xe8\\xb7\\x14@\\xbf\\xf7\\x05\\xd0o@\\xbf}\\x02\\xe87\\xa0\\xdfR\\x00\\xfd\\x06\\xf4\\x1b\\xd0o@\\xbf\\x95\\x00\\xfa\\x0d\\xe87\\xa0\\xdf\\x80~K\\x01\\xf4\\x1b\\xd0oK\\xfc\\x9b[@\\xbf;\\xbf\\x03\\xfa\\x0d\\xe8\\xb7\\x12@\\xbf\\x01\\xfdv\\xab\\x1c\\x8c~\\xb7\\x99\\x83\\xedxI\\xd1\\xcf\\x9e#zSv6\\x8cy\\xf9\\\\a\\xbf\\xd6o&\\x1d\\xf2s\\xb4\\xc2E\\x07\\x82t\\xee\\xd1\\x8d\\xea\\x16l\\x9f]\\x11[_\\x08\\xce\\xd6\\xf85\\xd6\\xa3\\xb3\\x8a\\xc0T(\\xa5\\x0d\\xd8\\xcd\\x1a\\xb0[\\xfa\\xad\\xd6=\\x07\\x8f\\xac\\x81\\x18Qb\\x00\\xf6[1\\x97\\xd2Rnl\\xe9j\\xc5\\x08\\x17{\\xc5nq\\x91\\xe5wg\\x84\\xcf\\xa6\\xb5\\x96\\xc7\\x8b\\xe10\\xa2*\\x9f\\xcf\\x8e=\\x0f\\x82\\xae\\x8c4eYoI\\x95g\\xe67\\xd9\\x913\\\\\\x8a\\xfa(\\x17\\xce\\x86\\x94\\xc6\\xf0u\\xd9x\\xcdzk\\xe5s\\xa9\\xad \\x8c\\xb5&T~\\xa6\\x9a\tS_\\x91\\x81\\xf6\\xec\\xaa\\xbfg\\xe3\\xf6\\xe8\\x00\\x0e\\xf3\\x16\\xf96O\\xb5\\xae\\xbc\\xd7\\xf0,|,\\x01\\xe5Q\\xb5[\\xb0Zf\\x88\\xab\\x1dm;\\xe5?\\xb1\\x7f:_\\xa1\\x82\\xac\\xb8aUh\\x9a\\x85Y\\x8fJg\\xb0\\xea \\xea%\\xc2\\xce\\x8b;Dp\\xb6Ax\\xb7\\xfb\\x8cV\\xb4\\xb9\\x0e\\xed\\xf3![ZO\\x08\\x8b\\xca\\x16J\\x11\\xafj\\x82\\xc4\\x1fy\\xb9\\xcc3\\xccI\\x03\\x0bi\\x0b\\xca\\x1buC\\xb2\\xd5\\xe5eV\\xd4\\xcb\\xdej\\x13\\xab\\xb74\\xb8\\\\\\xef\\x8bI\\x94\\xd7r\\x17\\x8bY\\xa1\\xadS\\xdf{\\xfc\\xe1\\x9c\\xf5\\xbeV\\xaf\\nr\\x81^\\x11\\xa6\\xf1x\\xd9\\xbd\\xda\\xfe(\\xba\\xdcL\\xf7\\xa6|]\\xd2\\xaa\\xe7l7\\xbd\\xb1\\xfb\\ne\\x99C?\\xec\\x82\\xd2\\x82\\xe02\\xf4\\x01+rM\\xaa\\xce\\xa3\\xa1\\x8f\\xa7\\xef\\xee\\x7f\\xb8\\xdc\\xe2\\xcaT\\xc4\\xdd\\x13:z\\xc4;\\x88\\\"\\x8e\\xd0jI\\xaa\\xbe\\xb7\\xed}^f\\xe49\\xca(\\xdbR\\xf6\\x8c-\\xaf\\xd0\\xd7\\xb3\\xbf|7\\xa95\\x0e\\xcf'p\\xfaI\\x1et\\xf0{$\\xaf@\\x9bV\\xa0=#A\\xfd)>\\x86~d?\\xbb\\xc0\\x89\\xa9\\xd41'\\x17\\x98\\x94V\\xc7\\x83$\\x89(>\\x90\\xe2`\\x9f\\x9c\\x1e\\x91F\\x8e\\x18C\\x8d\\x08S F\\x11 \\xe4+<\\n\\xa3\\xf4\\x87\t\\xc8\\x0f#\\xa9\\x0f^\\xc08\\x8d\\xf8p\\x10\\xeda\\x14\\xe9\\x01\\xe1\\xa2\\xf0Y1\\x8d\\xf20\\x86\\xf0\\x10\\x82!\\x93\\xe8\\x0e\\x13\\x93\\x1d\\x92\\xa8\\x0e\\x13\\x12\\x1d\\xa24\\x87\\x89H\\x0e\\x87P\\x1c\\x06\\x13\\x1c&\\xa07LLn\\x88P\\x1b&'6\\xdc\\x0f\\xadarRC:\\xa5a\\x1c\\xa1!`\\xf4\\x18\\x9da22C\\x1a\\x95\\xc1\\xe1\\xf9\\xf0\\x8f\\xaf\\x13\\xd3\\x18b$\\x86\\x03)\\x0c\\x01\\x02Cty\\x12%/\\xa4\\xad_\\xa6%.\\xc4h\\x0b\\xf12\\x8d\\xa3,\\x98\\x91\\xdd\\xa10FX\\x98\\x90\\xaep\\x00Y\\xc1M1\\nQ\\x15\\xa6%*\\x84i\\nS\\x90\\x14\\x92P\\xf6\\x08A!\\x99\\x9e\\xe0\\xc7\\xfd\\x86S\\x13\\xfc\\xba\\x9c>\\xf6IH\tC\\x8c\\x95JH\\x88\\xdb$\\x99\\x8c0\\x82\\x8a\\xe0\\xc6#&\\xa2!$\\x91\\x10\\xe2\\x14\\x84\\x14\\x02B\\xd0\\x8aC\\xc9\\x07\\xa9\\xd4\\x03\\x1f\\xf1`\\x02\\xda\\xc1\\x00\\xd2\\xc1p\\xcaA2\\xe1 \\x80\\xd3{\\x8b\\x13x&\\x95h0\\x0d\\xcd Xx\\xc7\\x95Q\\x04\\x03\\xe3\\xbcu\\xe8\\xf3\\xd0\\x0b&&\\x17\\xf8\\xa9\\x05c\\x89\\x05\\xd2\\xbb\\xe0*\\xb8\\x9bV0-\\xa9\\xc0\\xb7\\x89\\x8c\\x12\\n|\\x88\\xa7\\x8fL0-\\x95`<\\x91\\xc0C\\x1a\\x18E\\x19\\x88\\xd2\\x03\\x86\\x91\\x03\\x92\\xa9\\x01\\x03\\x89\\x01Ch\\x01^R\\x80\\xbf4\\xa9\\xe0l\\x1a!` \\x1d`\\x00\\x19\\xc0Y\\xb5i\\x89\\x00\\xbeNq\\x00\t\\xc0\\xe9\\xf3\\xf0R\\x00\\xc6\\x11\\x00B`\\xff\\xf4P\\xff\\xe1-)\\x19\\xe6O\\x05\\xf9\\x9d\\xa1\\xa9m$\\xea\\xa0@T8\\xa3S\\x0bD\\x9eB\\xe4i+\\x10y\\n\\x91\\xa7\\xad\\x8c\\x01b\\xbc\\xca \\xf2t_&\\x02e\\x0e\\x83eF\\x003\\x93@3\\x93\\x833Qx\\xe6\\x1e\\x00\\x9a\\xfb\\x82h\\xee\\x01\\xa4\\x19\\x02\\xd3\\x8c\\x05j\\x82cx\\x0c\\xaa\\x99\\x10\\xacI\\x85k\\x06\\x026\\x93C6q\\xd0\\xe6`\\xd8\\x06\\\"O\\xa3%\\x1b\\x07\\xe38UA\\xe4\\xe9\\x18@'\\x06\\xe9L\\x03\\xea$\\\"\\x15Q`g\\x00\\xb4\\x13\\x8d\\x00\\x1c\\x08\\xef@\\xe4)D\\x9e\\xa6\\x00?Q\\xab\\x0e\\x05\\x7f\\xd2\\xe1\\x1f\\x88<5\\x02\\x91\\xa7\\x10y\\n\\x91\\xa7\\xe9p\\xd1!\\x80\\x91S\\x1dD\\x9e:\\x1fH\\x82\\x98 \\xf2t:\\xc0\t\\\"O\\x0f\\x86\\xa3\\xa6is\\xc9\\x90T:(\\x95\\x16y*ce,\\x0dy\\xf9\\xbc\\xef\\x1bo\\x03xxUG\\xc2\\xd4\\xa6\\x08\\xdfaw\\xdb\\x05-~?]\\x11\\x128\\x1c\\xf45!\\xdd\\xa3A\\xc5\\xed2T\\x8d\\xb1\\x9a\\x88\\x1d\\xdf6/9\\xc2*\\xa8G?\\xdd\\x89\\xe7\\x11\\x1aNL\\x15\\x8f4\\x9c\\x87\\xdc\\xe6\\x8c\\xfb \\xab~\\x1c\\x99\\x12Y\\xff\\xf9\\x8ax\\xd1\\xb1QQ@\\xb2\\x9d\\x8c\\xe2\\xd8\\xe2-\\xadKG\\x1d\\xa2\\x8f\\xc6\\x1d$g4/\\x95\\xd3\\x9b0\\xf3\\xa5\\xb5kC\\x15\\xd8\\xc4\\x0e\\x8a\\xa1\\x10\\x97\\xba(\\xee\\x9d\\xfc\\x9b\\xb7\\x97\\xaf\\x9e\\xcbu\\x83\\xbaKO\\xc0\\xb9\\xf4\\xba\\x9c\\x97\\\\\\x0fM\\x8d\\xa7\\xcb\\x1e\\x9f\\x1c\\xea4\\x82\\xeb\\xb8\\xc2\\xf2u\\x89y]\\xc9\\xe6\\xabz\\x96X\\x98\\xae\\xe9\\x9a\\xca\\x81\\xa0?\\x9f\\x8bf\\x0c\\x9f\\xf3\\x0b\\xf9\\x9c67@\\x8c?\\xa9\\xd4\\x009\\xda\\x013@\t0\\x03\\x80\\x19\\xd0\\n0\\x03\\x80\\x19\\xd0\\n0\\x0380\\x03\\xdc\\x02\\xcc\\x00#\\xc0\\x0c\\x00f\\x000\\x03\\x12WI\\xc0\\x0ch\\x04\\x98\\x01\\xb6\\x003\\x00\\x98\\x01\\x0e\\x01f\\x80\\xf3\\x1e`\\x06\\x003\\x00\\x013\\x00\\x98\\x01]\\xf1on\\x81\\x19\\xd0\\xf9\\x1d\\x98\\x01\\xc0\\x0cP\\x02\\xcc\\x00`\\x06\\xb8UN\\xca\\x0cP0\\xbc\\xa5\\xe2\\xb3R\\x038.\\xe6\\x8b\\xba*\\xfd\\x84\\x80Kq\\xcf\\xcb\\xba*e\\x06\\xd2\\x9c0\\xe58\\xde\\x10$\\x9e\\xe3(\\xa3yiv\\x8e\\xbd\\xbc\\x9e\\xfa\\xc1\\x13S\\xa9#%\\x03,d\\xe2\\xd6\\xb9\\xac\\xc8q\\x80U\\x01\\x189\\xc1M\\x13\\x82\\x92\\xa3\\x8f\\xa78I\\xa6\\x04\\x94'\\x87\\x94C\\xa0\\xf2HX\\xd9w\\x1a\\xb2n\\xdf\\xa9`s\\xbfC\\x18\\x01\\xfcY\t\\xe0\\xcf\\x80?\\xb7\\x02\\xf83\\xe0\\xcf\\xad\\x00\\xfe\\xcc\\x01\\x7fv\\x0b\\xe0\\xcfF\\x00\\x7f\\x06\\xfc\\x19\\xf0\\xe7\\xc4U\\x12\\xe0\\xcf\\x8d\\x00\\xfel\\x0b\\xe0\\xcf\\x80?;\\x04\\xf0g\\xe7=\\x80?\\x03\\xfe\\x8c\\x00\\x7f\\x06\\xfc\\xb9+\\xfe\\xcd-\\xe0\\xcf\\x9d\\xdf\\x01\\x7f\\x06\\xfcY\t\\xe0\\xcf\\x80?\\xbbU\\x0e\\xc6\\x9fGc\\xc2\\x12\\xb8\\x0eD\\x87_\\xc8\\xeb\\x0d\\x12,G%\\x89\\xfe\\xb5\\x88\\xb7~\\xa4\\x03\\x05\\xffB\\xd68SI\\x9b\\x95\\x06}\\xd3\\xd1B\\xc2\\xb6\\x1dl\t\\x82@\\x91\\xf3\\x1eE\\xed\\xe7\\x1c\\xdf\\xce\\xc5N\\xd4\\x0f\\x12\\x05< *\\x04])Z`\\xe6\\x89FG\\xb1r\\xa2hYQ\\x0c\\x83\\x8e\\x16\\x15Eq\\xe8\\x04\\x15)\\x0e\\x93\\xa9\\xd1\\xe8\\x91x\\xb4G\\x97\\x1e\\xcdB\\x88\\xf4PLZ\\x89\\x8c^W-aE\\xc8\\\\v\\xb5\\x11mJ\\x03\\xdc\\xba[\\x1b#*\\x13n\\xe9\\xb2.\\x88D\\xcez}\\xdbH\\xe5j=\\x07t\\x11s\\xec\\xf9\\x88\\x8a\\xa0\\x14\\xe7\\xe02p4{+\\xcd\\xe1\\xeb\\xfa\\x04\\xec\\xe6\\x1cv\\xb4\\xc3\\x8c)@@\\x9d\\xd6\\xfe[M\\x18\\x9f\\xa9\\xeb\\x1ee\\xf2\\xd4^\\xa9&tP\\xfb9\\xb7&Vy&v\\xe0\\x04\\xd6\\x8aHx\\xa2\\xa4hK+s`\\xb4\\xd3\\xdf*\\xe9=\\x07\\x1a\\xb3w(\\xb6->vDs\\xdd\\x1c\\x19\\xed;C\\xdcr\\xd7\\xfb\\xeak\\x1b\\xda>}\\xdbs\\xfb\\x0d\\x96G5?E9g\\x06\\x18b\\xa8.U\\xcb^*_\\xf9M\\xce\\xf6\\xdbG|\\xac\\xb1O\\xe8W\\xb5\\xea,\\x84\\xf2\\x12\\xad\\xdf]\\x9c\\xb5\\x0c\\x10\\xbd\\xca`\\xe8F|3\\xd7\\xe7q\\xe3\\x8e\\x19\\xad\\x94\\x0e\\x89\\xd1V\\xaa\\xf2\\xcd\\x9aE\\xac\\xef\\xa4\\x1b\\xde\\xb6\\x8c\\xd3\\x1c\\xe6\\x89\\xf7t\\xdb\\x96;\\xb8\\xf7\\xae\\xc8\\x8eH/\\xe9K\\\\5\\x1f)\\xb2\\x90\\xef\\x9aE\\xb6o\\xdfR\\xdey\\x9c\\x83\\x9b[s\\xd1\\x0c9\\xa9\\xe4\\x9a\\x0b\\xdf \\x05\\xec\\x1a%\\xc0\\xae\\x01vM+\\xc0\\xae\\x01vM+\\xc0\\xae\\xe1\\xc0\\xaeq\\x0b\\xb0k\\x8c\\x00\\xbb\\x06\\xd85\\xc0\\xaeI\\\\%\\x01\\xbb\\xa6\\x11`\\xd7\\xd8\\x02\\xec\\x1a`\\xd78\\x04\\xd85\\xce{\\x80]\\x03\\xec\\x1a\\x04\\xec\\x1a`\\xd7t\\xc5\\xbf\\xb9\\x05vM\\xe7w`\\xd7\\x00\\xbbF\t\\xb0k\\x80]\\xe3Vy_\\xec\\x9a\\x05\\xe1\\xd8A\\xb1Q\\xc71\\xf8)6\\xf2\\xe9\\xee\\x11\\x0c\\n\\x8f/rf\\xfc\\xf9>r\\xcd\\xd1\\xf3j.\\xad\\xca\\xdb\\x02\\x98\\x11`F]\\x01\\xcc\\x080#\\xb7\\x00f\\x04\\x98\\x11`F\\x80\\x19\\x01f\\x04\\x98\\x11`F\\x80\\x19\\x01f\\xd4\\x08`F\\x80\\x19\\x01f\\x04\\x98\\x91\\x14\\xc0\\x8c\\x003\\xb2\\x040\\xa3\\xae\\x00f\\xe4|\\x000\\xa3V\\x003\\x02\\xcc\\xc8\\xadr0fdd\\x87\\xd7:\\x1c\\x15\\\"'!r\\x12\\\"'!rr\\xe2\\xc8I\\x85\\xb0\\xa6FMj\\xb0\\xf9\\xdd\\xc5YO\\x17DLB\\xc4d\\xcc\\xf5\\x1b\\xef\\xf8J\\x00\\xfd\\x06\\xf4\\xdb-\\x80~K\\x01\\xf4{_\\x00\\xfd\\x06\\xf4\\xdb'\\x80~\\x03\\xfa-\\x05\\xd0o@\\xbf\\x01\\xfd\\x06\\xf4[\t\\xa0\\xdf\\x80~\\x03\\xfa\\x0d\\xe8\\xb7\\x14@\\xbf\\x01\\xfd\\xb6\\xc4\\xbf\\xb9\\x05\\xf4\\xbb\\xf3;\\xa0\\xdf\\x80~+\\x01\\xf4\\x1b\\xd0o\\xb7\\xca\\xc1\\xe8w\\xe8<lzSv6\\x8cy\\xf9\\\\a\\xbf\\xd6o\\xedy\\xd8+\\\\t H\\xe7\\x1e\\xdd\\xa8n\\xc1\\xf6\\xd9\\x15\\xb1\\xf5\\x85\\xe0l\\x8d_c=:\\xab8L\\x85R\\xda\\x80\\xdd\\xac\\x01\\xbb\\xa5\\xdfj\\xdds\\xf0\\xc8\\x1a\\x88\\x11%\\x06`\\xbf\\x15s)-\\xe5\\xc6\\x96\\xaeV\\x8cp\\xb1W\\xec\\x16\\x17Y~wF\\xf8lZky\\xbc\\x18\\x0e#\\xaa\\xf2\\xf9\\xec\\xd8\\xf3 \\xe8\\xcaHS\\x96\\xf5\\x96Tyf~\\x93\\x1d9\\xc3\\xa5\\xa8\\x8fr\\xe1lHi\\x0c_\\x97\\x8d\\xd7\\xac\\xb7V>\\x97\\xda\\n\\xc2XkB\\xe5g\\xaa\\x990\\xf5\\x15\\x19h\\xcf\\xae\\xfa{6n\\x8f\\x0e\\xe00o\\x91o\\xf3T\\xeb\\xca{\\x0d\\xcf\\xc2\\xc7\\x12P\\x1eU\\xbb\\x05\\xabe\\x86\\xb8\\xda\\xd1\\xb6S\\xfe\\x13\\xfb\\xa7\\xf3\\x15*\\xc8\\x8a\\x1bV\\x85\\xa6Y\\x98\\xf5\\xa8t\\x06\\xab\\x0e\\xa2^\\\"\\xec\\xbc\\xb8C\\x04g\\x1b\\x84w\\xbb\\xcfhE\\x9b\\xeb\\xd0>\\x1f\\xb2\\xa5\\xf5\\x84\\xb0\\xa8l\\xa1T\\x9e\\xbc\\x8f\\xc4\\x1fy\\xb9\\xcc3\\xccI\\x03\\x0bi\\x0b\\xca\\x1buC\\xb2\\xd5\\xe5eV\\xd4\\xcb\\xdej\\x13\\xab\\xb74\\xb8\\\\\\xef\\x8bI\\x94\\xd7r\\x17\\x8bY\\xa1\\xadS\\xdf{\\xfc\\xe1\\x9c\\xf5\\xbeV\\xaf\\nr\\x81^\\x11\\xa6\\xf1x\\xd9\\xbd\\xda\\xfe(\\xba\\xdcL\\xf7\\xa6|]\\xd2\\xaa\\xe7l7\\xbd\\xb1\\xfb\\ne\\x99C?\\xec\\x82\\xd2\\x82\\xe02\\xf4\\x01+rM\\xaa\\xce\\xa3\\xa1\\x8f\\xa7\\xef\\xee\\x7f\\xb8\\xdc\\xe2\\xcaT\\xc4\\xdd\\x13:z\\xc4;\\x88\\\"\\x8e\\xd0jI\\xaa\\xbe\\xb7\\xed}^f\\xe49\\xca(\\xdbR\\xf6\\x8c-\\xaf\\xd0\\xd7\\xb3\\xbf|7\\xa95\\xa6\\xc8+p\\xfaI\\x1ey\\xf0{$\\xbf@\\x9b^\\xa0=-A\\xfd)>\\x87~\\xc4\\x97e\\xe0\\xc4T\\xee\\x98\\x93\\x0cLJ\\xaf\\xe3A\\xb2D\\x14'Hq\\xb4ON\\x93H#I\\x8c\\xa1H\\x84\\xa9\\x10\\xa3\\x88\\x10\\xf2\\x15\\x1e\\x85Q\\x1a\\xc4\\x04$\\x88\\x91\\x14\\x08/p\\x9cF\\x808\\x88\\xfe0\\x8a\\xfc\\x80pQ\\xf8\\xac\\x98F}\\x18C|\\x08\\xc1\\x91I\\xb4\\x87\\x89I\\x0fI\\x94\\x87\t\t\\x0fQ\\xba\\xc3Dd\\x87C\\xa8\\x0e\\x83\\x89\\x0e\\x13\\xd0\\x1c&&9D(\\x0e\\x93\\x13\\x1c\\xee\\x87\\xde09\\xb9!\\x9d\\xda0\\x8e\\xd8\\x100z\\x8c\\xd60\\x19\\xa9!\\x8d\\xd2\\xe0\\xf0\\x80\\xf8\\xc7\\xd7\\x89\\xe9\\x0c12\\xc3\\x81T\\x86\\x00\\x91!\\xba<\\x89\\x92\\x18\\xd2\\xd6/\\xd3\\x12\\x18b\\xf4\\x85x\\x99\\xc6Q\\x17\\xcc\\xc8\\xeeP\\x18#.LH[8\\x80\\xb4\\xe0\\xa6\\x1a\\x85(\\x0b\\xd3\\x12\\x16\\xc2t\\x85)\\xc8\\nIh{\\x84\\xa8\\x90LS\\xf0\\xe3\\x7f\\xc3)\\n~]N_\\xfb$\\xe4\\x84!\\xc6J%&\\xc4m\\x92LJ\\x18AIp\\xe3\\x12\\x13\\xd1\\x11\\x92\\xc8\\x08q*B\\n\\x11!h\\xc5\\xa1$\\x84T\\n\\x82\\x8f\\x800\\x01\\xfd`\\x00\\xf9`8\\xf5 \\x99x\\x10\\xc0\\xeb\\xbd\\xc5\t<\\x93J8\\x98\\x86n\\x10,\\xbc\\xe3\\xca(\\xa2\\x81q\\xe2:\\xf4yh\\x06\\x13\\x93\\x0c\\xfc\\x14\\x83\\xb1\\x04\\x03\\xe9]p\\x15\\xdcM/\\x98\\x96\\\\\\xe0\\xdbDF\\x89\\x05>\\xe4\\xd3G*\\x98\\x96R0\\x9eP\\xe0!\\x0f\\x8c\\xa2\\x0eDi\\x02\\xc3H\\x02\\xc9\\x14\\x81\\x81\\x04\\x81!\\xf4\\x00/9\\xc0_\\x9aT\\x906\\x8d\\x180\\x90\\x160\\x80\\x14\\xe0\\xac\\xda\\xb4\\x84\\x00_\\xa78\\x80\\x0c\\xe0\\xf4yx\\xa9\\x00\\xe3\\x88\\x00!\\xd0\\x7fz\\xc8\\xff\\xf0\\x96\\x94\\x0c\\xf7\\xa7\\x82\\xfd\\xce\\x10\\xd56\\\"uP@*\\x9c\\xd9\\xa9\\x05\\\"P!\\x02\\xb5\\x15\\x88@\\x85\\x08\\xd4V\\xc6\\x001^e\\x10\\x81\\xba/\\x13\\x812\\x87\\xc12#\\x80\\x99I\\xa0\\x99\\xc9\\xc1\\x99(<s\\x0f\\x00\\xcd}A4\\xf7\\x00\\xd2\\x0c\\x81i\\xc6\\x025\\xc11<\\x06\\xd5L\\x08\\xd6\\xa4\\xc25\\x03\\x01\\x9b\\xc9!\\x9b8hs0l\\x03\\x11\\xa8\\xd1\\x92\\x8d\\x83q\\x9c\\xaa \\x02u\\x0c\\xa0\\x13\\x83t\\xa6\\x01u\\x12\\x91\\x8a(\\xb03\\x00\\xda\\x89F\\x02\\x0e\\x84w \\x02\\x15\\\"PS\\x80\\x9f\\xa8U\\x87\\x82?\\xe9\\xf0\\x0fD\\xa0\\x1a\\x81\\x08T\\x88@\\x85\\x08\\xd4t\\xb8\\xe8\\x10\\xc0\\xc8\\xa9\\x0e\\\"P\\x9d\\x0f$AL\\x10\\x81:\\x1d\\xe0\\x04\\x11\\xa8\\x07\\xc3Q\\xd3\\xb4\\xb9dH*\\x1d\\x94J\\x8b@\\x95\\x113\\x96\\x86\\xbc|\\xde\\xf7\\x8d\\xb7\\x81<\\xbc\\xaa#\\xe1j\\xd3\\x84\\xf1\\xb0\\xbb\\xed\\x82\\x16\\xbf\\x9f\\xae\\x08\t\\x1c\\x16\\xfa\\x9a\\x90\\xeeQ\\xa1\\xe2v\\x19\\xb4\\xc6XM\\xc4\\x9eo\\x9b\\x97\\x1ca\\x15\\xdc\\xa3\\x9fv\\xc4\\xf5\\x08='\\xa6\\xaaG\\x1a\\xd6Cns\\xc6}\\xd0U?\\xaeL\\x89\\xb4\\xc2|E\\xbc(\\xd9\\xa8h \\xd9^Fqm\\xf1\\x96\\xd6\\xa5\\xa3\\x0e\\xd1G\\xe3\\x8e\\x923\\x9a\\x97\\xca\\xf9M\\x98\\xf9\\xde\\xda\\xc5\\xa1\\nlb\t\\xc5\\x90\\x88K]\\x14\\xf7\\x8e\\xfe\\xcd\\xdb\\xcbW\\xcf\\xe5\\xfaA\\xdd\\xa5'\\xe2\\\\z_\\xceK\\xae\\x87\\xa8\\xc6\\xe3e\\x8fS\\x0eu\\x1a\\xc9u\\\\a\\xf9\\xba\\xc4\\xbc\\xaed#V=L,P\\xd7tM\\xe5\\x80\\xd0\\x9f\\xd7Ec\\x86\\xcf\\xf9\\x85|N\\x9b# \\xc6\\x9fT\\x8a\\x80\\x1c\\xf3\\x80!\\xa0\\x04\\x18\\x02\\xc0\\x10h\\x05\\x18\\x02\\xc0\\x10h\\x05\\x18\\x02\\x1c\\x18\\x02n\\x01\\x86\\x80\\x11`\\x08\\x00C\\x00\\x18\\x02\\x89\\xab$`\\x084\\x02\\x0c\\x01[\\x80!\\x00\\x0c\\x01\\x87\\x00C\\xc0y\\x0f0\\x04\\x80!\\x80\\x80!\\x00\\x0c\\x81\\xae\\xf87\\xb7\\xc0\\x10\\xe8\\xfc\\x0e\\x0c\\x01`\\x08(\\x01\\x86\\x000\\x04\\xdc*'e\\x08(0\\xdeR\\xf1\\x99)\\x02\\x1c\\x17\\xf3E]\\x95~b\\xc0\\xa5\\xb8\\xe7e]\\x952'iN\\x98r\\x1do\\x08\\x12\\xcfq\\x94\\xd1\\xbc4{Gg\\x9eO\\xfd\\xf8\\x89\\xa9\\xdc\\x91\\x92\\x02\\x162\\xa1\\xeb\\\\V\\xe78@\\xab\\x00\\x9c\\x9c\\xe0\\xae\tA\\xca\\xd1\\xc7S\\x9c%S\\x02\\xcb\\x93C\\xcb!py$\\xbc\\xec;%Y\\xb7\\xefT\\xd0\\xb9\\xdf!\\x8c\\x00\\x0e\\xad\\x04ph\\xc0\\xa1[\\x01\\x1c\\x1ap\\xe8V\\x00\\x87\\xe6\\x80C\\xbb\\x05ph#\\x80C\\x03\\x0e\\x0d8t\\xe2*\tp\\xe8F\\x00\\x87\\xb6\\x05ph\\xc0\\xa1\\x1d\\x028\\xb4\\xf3\\x1e\\xc0\\xa1\\x01\\x87F\\x80C\\x03\\x0e\\xdd\\x15\\xff\\xe6\\x16p\\xe8\\xce\\xef\\x80C\\x03\\x0e\\xad\\x04ph\\xc0\\xa1\\xdd*\\x07\\xe3\\xd0c\\xb1\\xe1\\x0d/2\\xf9\\x1fv\\xfa)_\\x06\\x0e\\x80\\xfc\\xf9\\xf2\\x97\\xb3\\x06\\x15\\x16\\x9fM\\xfe\\xb0\\xb8S{\\xc5f'\\xbc\\xc1l\\x83\\n\\x9a]\\xe9\\xe7;(\\xb1xD\\xff~\\xb4\\xd0\\xb0\\xb0\\x85\\x0f?\\x1a\\x15(\\x9c/\\xfd\\xf0P\\xc0\\xf7\\xc1H\\xb9$\\x0e\\x04.\\xe1QNG=V\\x91\\x8c\\xe4\\xd7\\xa4\\x9a\\xd3r.=L\\xf3l\\x83s\\xc7\\x91\\x98\t\\xbaT\\xe9\\xa7\\xd0\\x14\\x8f\\x96v\\xa3z(\\x84\\xec\\xa1\\xd8'U\\x12C\\xf8P\\x0c\\xb8G\\xf1\\xfa)\t\\x03\\xf8(MM\\x8a\\xb7\tM\\x0e\\xe6\\xa3\\xb1\\x80\\xbeW\\x9b\\x9e\\x10B\\xa0>\\x1a\\x0c\\xec+\\x11\\xc3\\xd3\\\\\\x0cO\\xa3\\xda\\\"#YE\\xc6D\\xee#\\xc4\\xf3-a\\x1cow\\xa3\\x9e\\xf6\\x9ed\\xdd\\n\\xb9\\xdd\\xe5j\\xa4\\x9doH\\xbe\\xde\\x8c+f\\xc2\\x8b\\x18\\xc7|\\xec\\x99q\\xa4\\xac\\xbd}\\xe5\\x99\\x9c\\x1e\\xe6\\xef/_\\\\\\xbe\\x9a\\xbf\\xbdx\\xf5&\\xe5\\xbe\\xb3\\xb7\\xbf^\\xfc\\xf2\\xea\\xf2\\xd5\\x8f)7\\xbf{\\xf5\\xfa\\xc3\\x9b\\x1f=\\xf7\\x1a\\xfeER):=\\xed\\xbf}=m\\xafF{\\xca\\xdb^X\\x8a\\x99\\xb2T\\xc6\\xf5n\\x87\\xddU\\x7f\\xee\\xfc\\xd5\\xea\\xe0\\x19\\x15\\xfd\\x8e\\x93\\xe5\\x10\\xf5\\xc6X\\xcf]?Z\\xca+\\xb2\\xaa\\xcbeX\\xb7&\\xd5\\x08E\\xef\\xc5]\\xcd\\xe3r\\xed \\x7fQ\\x9b6k\\x81`KVPF\\x96\\xf3\\xc5\\xe8\\x8e\\x9b\\xd0\\xacy\\x85K\\xb6\\n\\xcf\\xb8\\xeet1B\\x96yE\\xa4\\x1fzd\\xf1\\xc2\\x1d\\xe3\\xcd\\xdb7\\xaf\\xbc\\x17\\xcf\\xdf\\x9c\\xbd\\xfd\\xf5\\xfc\\xcdO\\xde\\x1b\\xde~\\xb8\\xfc\\xe9\\xad\\xef\\x86\\xa6\\xd9{\\xdf\\x91\\xda\\xd6\\x85\\x02\\xa5\\xc6n\\xd5\\x1b^pT\\xd2\\x92\\xb4&\\n\\xb4?S\\x97\\xe7\\xcd_{\\xba\\xf22\\x13\\x13\\xd4:I\\x9f\\xa9\\xfa\\xf3\\xe6\\xaf=}\\xb4\\xe6k\\x9a\\xa0O\\xb7\\xe1\\xf77x\\xf7\\xa3\\xb9\\xb3\\xd3\\x8e\\x9b\\xe7\\xdb\\xb6|\\xb9\\xa7\\xc9\\xea\t\\xbdNP\\xd5\\x19\\xf7\\xf5\\x82 )\\xed%.p\\x99\\x11\\x9b\\x92\\xa6\\\\\\x1d~Z\\x9a|\\xfd\\xbb\\x8b~W\\x03F\\x1a0\\xd2\\xc2\\xc3\\xd4=\\x80\\xb9!\\x02un{\\x1a\\xef\\x99<\\xad;]wc,\\x0b\\x17H\\xa4v!\\xafw\\xb6\\xc5\\xe29\\xabR\\xfa\\x89\\xbdm\\xb0z\\xf2\\xc4\\xd4\\xe3H7\\xc3v\\xfdm9`;\\x8c\\x19#|\\xeeS\\x8c\\xbe\\xa8]\\x1d\\xabw\\xbb\\xe2n^\\xe4\\xdb<ao\\x17,4J,\\xb8\\x90\\xe8\\xfbPj\\x05\\x90\\xde\\xb9\\xa8*\\x10\\x8f'\\xc3\\xba7\\xb2L\\xb2\\xee\\x14Zw\\xa4\\xcai\\xa2\\xd2\\xd4\\x92J\\x8eV\\xdc\\xe4(U1\\xcex~\\xed\\x1d\\xf3Pr\\xa5\\x97dW\\xf3\\xbb9^.+\\xc2\\x82\\x1f0\\xa9X\\xab\\xfc\\x96,\\xddI\\xedZI\\xd2\\xb4\\xcd\\xcb9\\xbb\\xc1\\xbb\\xf9$>\\x08\\x84\\xb6\\xf8vZ}y\\xa9V\\xfe\\x81}\\xbb\\x92$u\t[\\x01%\\xa2\\x1e\\x0f\\xf9^\\xbd\\xc8\\xd3SJ\\xb38\\x94\\xce\\x99-]\\xd6\\x05\\x91\\x94\\xe6\\xde\\xc4\\xd2y\\xd6\\xbd@T\\x1aSC\\x16.\\x9a7\\xc0\\n\\x11V\\x88\\xae\\xeb\\x0f\\xbdB\\x1c\\xb5r\\x93So\\x1eJ\\x82\\xfbB,D\\xde\\xeb\\xdb:K8\\xf3\\xac\\xdc\\x8e\\x15\\x85Z\\xb28Wr\\x1d\\x1d\\xfa\\x86\\xa3]\\xcc\\xa9\\x95W\\xd70\\xb6|\\x8e\\xf6fv\\xf3\\xaaXw\\xe1\\x86s$\\xab\\xbaI\\xe65\\xf0\\xd5G}\\xf5\\xa8\\xf1\\xcd@\\xeb\\xf0\\xc8\\x9f\\xbau\\xe8 \\x00h\\x1c\\x1e\\xf9S7\\x0e{\\xd7:\\x87\\x96\\x02-%\\xdcRH\\x81w\\xcc\\xef\\xdf\\xf0\\xda:\\xb8\\xf1\\xea\\xac\\x0e\\xa3\\xfb/\\x97\\x86\\xd3\\xee\\\"Ul\\xc8z\\xb7\\xc1\\x8e\\x0cvd\\x7f\\xac\\x1d\\xd9\\xe9'9\\xa4\\x04\\xa8fm\\xa3\\xbf\\xdb\\xdf\\x97\\xddi\\x90L\\xeef\\xf4\\x93\\x9e=\\x99)\\xd2\\x1faG\\xe6\\x98\\x95\\x82\\x0d'\\xc29K\\xd9VE\\xe7\\xbbX\\xd3\\x8c\\xceu\t\\xad+6\\xcfEU\\xa4\\xcdqS\\xcfpS\\xceoI\\xb3\\xdb\\x98\\xb9-i\\xfb\\x04\\xad\\xe0\\x0bo\\x05)\\x8b_h\\x04_x#\\x18\\xbc\\x1d\\x82\\x16\\xf1gh\\x11\\xc1m\\xcf\\xa1\\x9b\\x9e\\xbbC\\xb7<w\\xb0\\xe1\\x81\\x0d\\x8f\\xf3\\xfaCox\\x8e\\xe8\\x1c\\xc8\\xfe\\xdeJ\\xe60\\xbc\\xc1\\xbb\\xd3\\x1d\\xa5E\\x00\\xee\\xfa%\\xff\\xad\\xce\\x979\\xbf\\xbb\\x10\\xf75\\xa7?\\x9a\\xfc\\x8e\\x85\\xb9\\x8c\\xa4\\x9e6\\xaf\\x8a\\xd6\\xd3\\xd9buu\\x9d\\x98J\\x1e\\xe9.\\xcb2\\x8c-\\x9f\\xa3m\\xfbb\\x81\\x12\\xda\\xa5\\xb0\\x1c\\xbd\\x89\\xf1G\\xa2j\\x9a\\xd1[\\xe9C8\\xcb\\xd4\\x14E+\\xb4$;\\xcad\\xbe\\xad+R\\xbaSs0\\x8e\\xcb%\\xae\\xfc\\xd5P\\xca\\xb78/\\xf5<\\xbaP\\xf4\\xd4`y\\xc1\\xe7z\\xf8\\xa2c\\xdaeG\\xe2\\xc2c\\xdc\\xd2\\x03\\xa9\\xdaF\\xda\\x90l\\x97\\xa4\\xda\\xe1\\x8a\\xdfA[\\x82\\xb6\\xe4kK\\xc5\\xce\\x9f\\xf8V\\xb5\\xa4vn\\x83f\\x04\\xcd\\xc8\\xd3\\x8c\\x02T\\xca\\x04\\x13\\xef\\xb54\\xb1\\xe8\\x10:{\\xf7\\xef\\xf0Z\\x1b\\xd1\\xb7 \\x19\\xe5\\xef-\\xc9-\\x9f_\\x91\\xe0^>P\\xfeh\\x8e\\xb5\\xb4\\x18 S\\n\\x13\\x82\\\"\\xfe\\xd4)\\x071c*\\xaf\\xe2\\x05^\\x93w\\xe4\\xb7\\x9a0>S\\xd7=\\xca~\\x13\\xeb^\\xa9F\\xa8\\x15\\x86#hK\\x19GD&\\xf2\\x93\\xd9\\xfff\\xe8\\x9c[\\xf9\tv\\xfc\\x0e\\xe5\\xbe\\x9c\\xb6|C*\\\"\\xb3<\\x96\\x14miELVG\\xe7\\xe6\\x98r\\xec\\xd9\\x80$\\x1b3@/\\xf5m\\xa0\\x9b\\xeb\\xe2\\xf5\\xd2\\x8a\\xf2\\x8f\\xb2\\xde.TN:\\x93\\x88\\xd2\\xcaz\\xe8\\xab\\xafmh9\\x95\\xce\\xa52_\\xb7\\xb9\\xc1\\x0c1\\xc2\\x9f\\xa2\\x9c3\\x93_\\x93\\xa1\\xbaT\\xc3\\xc1R\\xa5\\x1c\\xbc\\xc9\\xd9~\\xfb\\x88\\x8f.\\xaa(Vx\\x12\\xed\\xe4\\x93\\xc8K\\xb4~wq\\xd6\\xba\\x08\\xf4\\x16\\x96\\xa1\\x1b\\xf1\\xcd\\\\\\x9f\\xc7\\x9d\\xbe5\\xa3\\x95\\xd2!S\\xddV\\xaa\\xf2M\\xea\\x87\\x0df*\\x9b\\xa1m\\x19\\xa79\\xcc\\x13\\xef\\xe9\\xb6-w0\\x85QEvD&\\x9b{\\x89\\xab\\xe6#E\\xf2\\xa1t\\xcd\\\"\\xdb\\xb7/#J7\tS\\xd0\\xfd\\xd2\\xdd\\x9a\\x8d\\xf3\\xc0\\xf4\\xb6\\x8a\\xe0\\x84\\x01'\\x8c\\xeb\\xfa19a\\xdayU\\xcc*\\xbev\\xd8\\x9b\\xb9\\xf4T\\x85\\xf5x\\xa7\\\\\\\"j@\\xb2\\xfb\\xe6\\xac\\x99\\xd7\\xe4\\xc0\\xb5\\xee%\\x9a\\x95\\x13\\x95\\x18pbs\\xd5\\xdb\\xb2\\xb8\\x93i\\xa3\\xe9\\n\\xd1\\xd5\\x8a\\x11\\x8eh\\x85\\xba\\xc5EV\\xfeoF\\xb8\\xdd9\\xf2\\xf2\\xb9z\\x97\\xf5[\\xebXZ\\xe1\\x82E<K\\xc87\\xd3;\\x8c\\xa8\\xca\\xe7\\xb3co\\xe8\\xd1\\x95\\x91\\xa6,\\xeb-\\xa9\\xf2\\xcc\\xfc&\\x13\\ne\\xb8\\x14\\xf5Q\\xa9d7\\xa44\\x86\\xaf\\xcbf\\x1e\\xeb\\x0d\\xc4\\xe7R[A\\x18kM\\xa8\\xf2\\xdd\\xd6L\\x98\\xfa\\x8a\\x0c\\xb4gW\\xfd=\\x1b\\xb77\\xf3;\\xcc+\\x91\\x98D\\xeb\\xca{\\xcd\\x92\\xca\\xb7 PS\\xaa\\xdd\\x82u\\x0cp]\\xf4FM\\x95\\xc7\\xd5\\xfe\\xe9|\\x85\\n\\xb2\\xe2f\\x01\\xa5WT&/\\x9eLJ\\xad:\\x88z\\x89\\xb0\\xf3\\xe2\\x0e\\x11\\x9cm\\x10\\xde\\xed>\\xa3\\x15\\xedeM\\xfb|\\xc8\\x96\\xd6\\x13\\xc2\\xa2\\xb2\\x85R\\xe9\\x94\\x15\\x8b.\\x94\\x97\\xcb<\\xc3\\x9c4\\xe9\\xe9\\xb5\\x05\\xe5\\x8d\\xba!\\xd9\\xea\\xf22+\\xeaeo-\\x82\\xd5[\\x9a\\xf3\\x01z_L\\x8e\\xd8\\xd6\\x02NL\\xc4m\\x9d\\xfaY\\xac?\\x9c\\xb3\\xde\\xd7\\xeaUA&\\n\\x14s\\xa9\\x9a[e\\xf7j\\xfb\\xa3\\xe8r3\\xdd\\x9b\\xf2uI\\xab^\\xd2o\\xd3\\x1b\\xbb\\xafP\\x969\\xf4\\xc3\\xf6\\x03\\xe2\\x1c\\x1f\\xb0\\\"\\xd7\\xa4\\xea<\\x1a\\xfax\\xfa\\xee\\xfe\\x87\\xcb\\xadeqE\\xdc=\\xa1\\xa3G\\xbc\\x83\\xa85\\\"\\xad\\x96\\xa4\\xeao`\\xdf\\xe7e&\\xfdOlK\\xd93\\xb6\\xbcB_\\xcf\\xfe\\xf2\\xdd\\xa4\\xd6\\x889\\xf9\\xcf\\xb4S\\xdf\\xef\\xe8?\\xfdT\\xec\\xf8<\\xc6\\xa4\\xb2&\\xbc\\xce\\xa2\\xaeq\\xff\\xef\\xbb\\xfe\\x9bp0\\x93Q\\xb3\\xd1\\xd0\\xbcP\\xff\\xe2\\x87\\x04\\xf4\\x0dG\\x8d\\x08L\\xba\\xff\\x1e\\x99\\xe3+\\xc5\\xa7\\x1f]+\\x1d\\xe0\\xcf\\x0f{\\xf3\\x87\\xf9\\xf2\\xa3n\\xb3\\xd8\\x923\\xea2\\x8bZ\\\"\\xee.\\x8b\\xaa\\x88of\\xd1=8\\xca\\xa6t\\x93%9\\xc9\\xc6\\xb8\\xc8\\x02>\\xfbq\\x1e{h1_x\\x8b\\xf1z\\xe6G\\xf8\\xe5\\xa1\\xb1|\\xe1\\x8d\\xc5\\xeb\\x7f\\x8f\\x1a5\\xcd\\xf7\\x9e\\xee5\\x9b\\xc0i\\x06>3\\xf0\\x999\\xaf\\x1f\\x93\\xcf\\xac\\xbf\\x9eG\\xf7O^r\\xedkV\\xb8\\xda\\xca\\xff\\x90\\x8a\\x9d~R\\x7f\\xecoi:\\x9b\\x8d\\xd7\\xf2\\xa6\\x13S\\xbe#\\xdde\\x149s\\xcc\\x15\\x9f\\xa3e\\x8a\\x01q~\\x00\\xf7\\xa8\\xa0\\xd9U,8\\x0e\\x00\\xf3\\xc3'\\xeai\\xa7\\xea\\xc4\\xc9z\\xdct\\x8d\\xd0N\\xf9P\\xe6\\x15\\xb9\t\\x11\\xc2\\x02\\xcd]I0\\x9dWR\\xebJk_\t-,\\xa9q\\xa0\\xa4V\\x96\\xa8*\\xb5\\xa5\\x0dnk\\xd1\\xc2\\x87Z\\xe1\\xd4\\xed0\\xb9%\\x0eo\\x8b\\xbe\\\\\\xc7A\\xeb[\\xcb\\x10\\xcb\\xc3\\x0c+\\xb2\\xdeUX\\x91=\\xf0\\x8ale\\xafk\\xd0\\xe1\\xcb1\\xcb\\xe9\\xaeV\\x00=\\xd5C\\x9d\\xd8\\x83\\xd6zb\\x91\\xb6\\xb7\\xce\\xbb\\x9f\\x84\\x9a\\xe2U\\x7f\\xda\\x84\\x9a\\xf2\\xd3f\\x15Q\\xb9\\xdf#\\xdbhp\\xa0\\x8cY\\x97M9\\x1b&\\xcd\\x84CgA\\xa4\\xf3\\x15\\xaa\\xb5\\xd8<\\xc3\\x9c\\xaci\\x15\\x1c\\x17\\xfdS\\x02\\xf2\\xce\\x90\\x96\\x06\\xf1\\xb2a\\xe7\\x00\\xc0\\xf4\\xda\\xbb\\n\\xd3\\xeb=L\\xaf\\xe3f%J\\x0b\\xf7\\xf1G\\xfb\\xd3\\x0c\\xc0\\x9b\\xadD>\\x91\\x9c\\x94\\\\\\x9d,\\xe1Y\\xdbpc\\x9eg\\x1cW|\\x9a\\x93P\\xbc'\\xae\\x94\\xcb{~\\xc12\\xe7xQ\\x04\\x07Y\\x7f\\xdaay L8\\xb6\\xd7\\xff\\xb0\\xe4\\x97\\xcc\\x8b\\x1d\\x9f\\x87|?\\xb0\\xa6\\xf8\\xc2\\xd7\\x14\\xaa\\x19\\x84<<\\xa1y\\x07\\xc5\\xbc;\\xd1\\xf6\\x93\\xd2\\x82\\xa2m(\\xa1\t\\xa0\\x84v\\x94\\xa4&\\xad-M\\xdf\\x9a\\xa6mO\\x89-j\\\\\\x9b\\xaa\\xc8\\x16\\xe7e\\xccs\\x08\\xed\\xaa#\\xd0\\xae\\x12\\xda\\x95\\xdc\\xfb\\xecH\\x15?(\\n\\xda\\x95\\x16hW\\x9ev\\x05\\xbb\\xd5\\xdeU\\xd8\\xad\\xde\\xc3n\\xf5X\\x0e?\\xf2\\xee\\x8a\\xf7]\\xb5\\xce\\x1d\\xf1\\xf1\\xfb]\\xbf\\x88\\x1c \\xc1\\x0du\\xc2\\xf3\\xd1Mu\\x82\\x8e\\xf8\\xc6:AI|\\xef\\x1b\\xdf^O\\xf5\\x9a\\xe0&\\xdb\\xbc$t\\xbaOp\\xa3\\x9d\\xa2 m\\xb3\\x1dmx(\\xa1\\xf1!X~(9\\xf2\\xe5\\x87-\\xf1Mx|Y\\x0b4\\x8b\\xa4v6\\xb8\\xa5E\\x0b\\xff\\x85\\xd0,\\x94\\xa4m\\xdd\\xa15Bk\\x94r\\xef\\xad1e\\xc3\\x0f\\xad\\x11Z\\xa3\\x94{k\\x8d\\x90\\xd3\\x07r\\xfa@N\\x1f\\xc8\\xe9\\x83F\\xe6\\xf4\\x01Wc\\xef*\\xb8\\x1a\\x1f\\xd8\\xd5\\x08\\xd9s\\xe2tW\\x04\\xd9s\\xb4\\xdc\\xb3q\\xe3y_ {\\xce\\x14V\\x84\\xec9\\x90=\\xe7\\xcb\\xcc\\x9e\\xd3G\\xb3\\xca\\x15?\\xcdhQ\\x90LX\\xc6\\x1c@6w\\xf1=\\x9b@\\x84\\xb3\\xe6\\xfeN0\\xc2\\x9b\\xd7\\x97\\xcc\\xb4M\\xd1j\\xf2UN\\x96\\xc8\\x9b\\x15\\xa7\\xd5rb*z\\xa4\\x00Yk\\x9fI7\\xb1\\x01\\x7fG\\xd4\\xab\\x12[e\\x85\\xa0\\xb4\\xa4U\\x92\\xecQ\\x87(p\\xd9\\xde\\x96\\x04\\x15\\x11H/I\\x07\\xbb\\xdb.\\\\\\x8c_#\t*\\xb6y\\xc9\\xe7\\x15\\x11\\xf7\\x88\\x910\\xa6+\\x84f!T\\xef\\x96\\x98\\x93\\xc9\\xd4%\\xa0\\x96Iu\\xac\\xab\\xfc\\xd0\\xe7\\xe7\\x1b\\xcc6\\x07)Yb~H\\x83\\xd1^\\x86\\x1fE\\xb7\\xb2]qw;\\xb9\\x90{\\xf3\\xfa\\xd2\\xf1X\\xb9\\xe2\\x81\\x8d\\xca\\xe7fC\\x85:q\\x82EP\\xb4#'*\t6\\x8fD\\x1d\\xe1\\xaf\\x9b\\xa8\\x84\\xde\\x94$0 $j\\x89\\xb7\\xd6$E\\xba\\xc1\\xbd\\xc4\\x8c\\xbcy}i5\\xb9\\x92\\x96\\xcfVu\\xb9\\xce\\xc52L\\xba\\x82\\xf74\\xe8g\\xad\\xa9t\\xbf\\xc5f\\xfd\\x19\\xd2\\x08xU\\xc1\\xab\\n^U\\xf0\\xaa\\xa2\\x91^U\\x14h=r\\xc3\\xd0\\x0eK\\x1d\\x8b\\xabmkb\\xd2'kh\\x83\\x8cO\\xe0\\xe7u]?&?\\xaf\\xd9\\xf7Z\\xda\\x0e$\\x96\\x82\\x0fy\\xac\\x83\\x0e|\\xc8\\xf7h\\xdc\\xb8\\xf7\\x13|\\xc8SX\\x11|\\xc8\\xe0C\\xfe2}\\xc8\\xca\\x93\\x92\\xe0B>\\xb5O\\xd1vy\\x92\\xf5Q\\xc6\\xb6\\x17Y\\xb5\\x1d\\xf5\\xa0h\\x91\\x18\\xad\\xf3kR\\xaa\\xf9Y\\x0c\\xa1\\xd2\\x05\\xa0\\x15u\\x1c\\xcaJ\\xd9\\x89\\xa9\\xf1\\x91:\\x93}\\xdc\\xb4\\xe0\\x8a&\\xb0\\x1b\\x0c\\xae\\xe3\\xf7\\xcf\\x9a\\xf6\\xae\\xe1\\xf5\\xaa\\xdd:\\\\\\xba\\xab\\x0f\\x16\\xec\\xb0`\\xff\\xd3,\\xd8\\xed1\\x06\\x8d\\x1cS;\\xaaG\\x0c\\xa9\\xb2~\\xcc?vJ?w\\x9b\\x0e\\xcc\\x1cV\\xad\\x1e\\xd37w\\xc6\\xc7\\x1f\\xed+G;>\\xda\\xd5\\xb6\\xe5st\\x89\\x03\\xc2\\xd1Bn\\xf7\\xe8\\xc3a\\xec,\\xfa\\xf8\\xa1\\xa1pa\\xcc,\\xfax\\\"^\\xe6^\\x87\\xd9\\x92\\x8c\\x95\\xc5U%\\xe0d\\xd1z\\x05@\\x90\\x94g\\x83\\x88CTA\\x08=\\x89<<\\x18\\x17\\x03x\\x01\\xe0\\x05\\x80\\x17\\x00^@\\xf7\\x05/\\xa8\\x95\\xc8\\x90m\\x89^\\xec\\xc0\\xb6\\x04\\xb6%\\x8e\\xeb\\xc7\\xb4-\\x01_\\x7f|7\\x84\\xc0\\xd7\\xaf\\xe5\\x9e\\x8d\\x1b\\xf7R\\x83\\xaf\\x7f\\n+\\x82\\xaf\\x1f|\\xfd\\x7f\\x1a_\\xbf\\xf2\\xd0$1\\xc5\\xd5\\x9e\\xd3v\\xef\\xcb\\xa5z.\\x1bX\\xdf\\xb9\\xaf\\x1f\\xde\\xf7Y\\x9d\\x98\\x8a\\x1d\\xb3\\xcbj\\xd2\\xad\\xf2\\xc8\\xa4\\xc2~\\xa7S\\xe4\\xc1\\x90\\xc3)\\xf2\\xe8!\\x89\\x8cC\\x8e\\xa6\\xc8\\xa3IN\\xa6\\x98_(\\xd1\\xc1\\x14S\\x13u.E\\xea\\xe2u,\\xc5\\x9f\\x0b8\\x95\\\"\\x0f\\xfb\\x1dJ\\xc1\\x07\\x07:\\x93\\xe2\\xdb\\xc0\\xc1\\xbb@\\xd8\\x04\\xc2&\\xd0u\\xfd\\x986\\x81\\xd3cS#\\xe6\\xe96\\xb4\\xc155\\xbfy}\\xc9\\xde\\xae\\xde\\xde\\x94\\xa4J\\x88\\xe2\\xf2\\x82\\xee\\x96\\x9a\\x13S\\xab#\\x9d\\xa6=\\xb1\\x03\\x07L\\xd3\\x87\\x1cN\\x9e/\\xe7\\x16i\\\"\\xa4\\xe2\\xf3\\x86\\xa0\\x98\\xa6\\xec\\xbf#ZU}\\x13\\xbd\\\"\\xe5<_\\x06\\xde\\x15\\xaf\\xb1\\x92HN\\\"\\x94V\\xa4\\x98\\x83\\x1b\\xa1\\xf3\\x1f\\x13\\xe33T\\xa6\\x9f\\xa6\\xbb\\x04\\x14\\xee7?U\\n\\xd5\\x11\\xf7\\xdf\\xd1G\\xa2\\x11\\xe03\\x80\\xcfH\\x895_\\xc0g\\x00\\x9f\\xb1e\\x00>cM\\xeaI\\xcbs\\x97\\x8eS{\\x81\\x01\\x01 \\xb0fw]\\xff\\x03\\xac\\xd9\\x87\\xba\\xd7zE\\xba7F\\x19 N\\xc3\\xac\\x05\\x88\\x93\\x92{6n\\x1c+\\x01\\xc4i\\n+\\x02\\xe2\\x04\\x88\\xd3\\x9f\\x06q*W\\xbc\\x13V\\xf2\\xc9\\xf8\\x12\\x02\\xd0\\xd3\\x9b\\xd7\\x97}\\xbfV\\xe3M\\xb6#Jp\\xb9\\xd4\\xd9z\\x9b\\xcdy\\xdf\\xc1ub\\xaay\\xa4\\x8e\\xadr\\xe5\\x8d'\\x19\\xe5\\x08xh\\xf4i,\\xfe1\\x12\\xc2\\x08f\\x11\\x89\\x17u,\\xe426[\\x88~\\xcel\\xcc\\x926d\\xed\\x16Ll\\xbd`\\xaf\\x05{\\xad?\\xc4^\\xeb\\x00|\\xa4\\xd5m\\xe6\\x86\\xe9t\\x0f\\x9c\\xb1\\x18\\xa9\\xae\\xf3\\x8c\\x9c.r9\\xd1\\xb2\\xd3O\\xfa\\x97\\xb9(``\\xcaz\\xa9\\x1f\\xd03\\xb8\\x8a\\xe9\\xd1\\xcf\\xb6\\x17\\x95\\xabY\\xff*4\\xca)\\xcc\\x0b\\xd0\\x98\\xe7NL\\xbd\\x8ft\\x12362V;\\x8e\\x8ee\\x7f\\xb9\\xd1\\xddcW\\xd1\\xeb|\\xe9\\xcf[\\x15U\\xb0$;\\xca\\xf2\\xc8YOp\\x88\\x83G\\xe2\\xbee#p\\x88C\\xe0H\\x91]\\x95gy\\xb9\\x1e\\xdd\\x88\\x7f\\xa3\\x11\\xa82i\\x82\t\\x00\\\"t\\x17\\x80R\\x13^\\xd2\\xecK\\xc3\\x1a\\x82af9\\x13\\n\\x96s\\x9e\\x1f0^\\xb4\\xb5]bN\\x9e\t]\\xee\\n\\x87\\x92\\xe1E\\xde\\xa2W\\x95\\xef\\xd5\\xf8\\xa6'\t\\xab\\xed3\\x8e\\xcb%\\xae\\x96rEif\\x1b=6\\xf7\\xd4\\x01\\x1c\tp$\\xc0\\x91\\x00G\\xa2\\xfb\\x82#\\x7fl8\\xc3\\x9d\\x98\\xb1\\xd0\\xce\\xb7\\xb7\\xea5\\x02\\x9ba%\\xb0\\x19>\\xa2\\xcd\\xb0\\xbd\\xc7\\xb04\\x1e\\xb8i\\x05\\xe8\\x11\\xa0G\\x80\\x1e\\x01z\\x9c\\xde\\x8a\\x00=\\x02\\xf4\\xf8eB\\x8fz7<\\xc0\\x99{\\xfa\\xc98\\xf7\\xe2~\\xdd\\xc6\\xad\\xdbs\\xe9z<\\xbaF\\xb1\\xd6\\xe6r\\xea\\x9e\\x18#\\xfc1|\\xba\\x93\\xba\\x07\\xe2\\x9e\\xd9\\xc8J-\\xec\\x95\\x8d<\\x1c\\xf4\\xc8\\x86\\x16\\xbd(\\xe6\\x8d\\x8d,~Q\\xd40J\\xa2~\\xd8\\x84ul\\x8a\\x0f6AM|3\\xadd\\xa0\\xf75\\xc1\\xc7:\\xad\\x875\\xd1\\xbf:\\xc6\\xbb\\x1a\\xf4\\xadFL\\xec\\xf5\\xabF?M\\xd4\\xab\\x13\\xf4\\xa8F\\xd4G\\xbc\\xa9\\xee\\xc9\\xaa\\x95\\x04Ojr\\xfdB^\\xd4\\xb1T\\x80\\xc9\\xfc\\xa7\\x89\\x9e\\x8f\\x81\\x8e\\x0f\\x08\\x92\\x04\\xbf\\x87\\xeb\\xfa\\x9f\\xc9\\xef\\xd1[@M\\xa0\\xfb\\x80\\xf5cFKNn9;\\xfd\\xa4}\\xb8s\\xfdK\\x98\\xc5\\xa6}\\xbag\\xea\\xdef\\x05\\xa9\\xf6H\\xca\\x17\\xac\\xf5\\xe8';\\xcb\\xc4\\xee\\xd3'\\xa6\\xc2G\\xbaZ\\xec\\x19\\xc6\\xd7\\xa9>\\xefj18\\x19\\x1e\\xb4\\xe4\\xf3\\xbe:\\xa3%\\xab\\xb7\\xa3f)\\xd1\\xe2wup\\x99\\xea}\\xd2\\x98lE\\xc8<\\xc3\\xbb{\\xab7,u\\xffTK\\xdd-]\\xd6\\xc5\\x01\\x1dQ\\xac\\xe3\\xe8\\xc8&\\xddY\\x008W\\xbc\\x06\\xf4\\n\\xa9\\xf7/Z\\xcd\\xd3\\xf3\\x95\\x1c\\xcb\\xca\\xecP\\xf0\\xda\\xbb2o\\xde4\\x05\\xaa\\xeb{\\xc9\\x02\\xf3l3\\x97\\x9e\\xaf\\x91\\xa3OBM\\xd4K\\xda\\xb1\\xdf\\xdb\t\\xc3+;\\x94\\\\\\x1f3\\x83=\\xe8\\xbb\\xf8\\xa6\\\"lC\\x8b`\\xc3:\\xe4}\\x0f\\xf7&U3\\xc61\\x1f\\xd7\\x81\\x11\\\"e\\xed\\x1d\\xaf\\x9f\\xa1\\x97/.\\xcf~\\x9e\\xbf\\xfb\\xf0\\xe6\\xcd\\xf9\\x9b\\x9f\\\"w\\x9d\\xbd\\xfd\\xf5\\xe2\\x97W\\x97\\xaf\\xf6\\xc3\\xea\\x91\\xb5\\xc5IP\\x996p\\xf7\\n\\xd7S\\xdc\\x0c\\xe8ruV\\x97\\xa5\\xd8\\x87Iky\\xd4\t\\x1b\\xd6N\\xae\\x86\\x94\\xbdJ>\\xef\\xff\\xd0ycF\\xc5\\xd8.6k\\xf2\\x9dA\\xed1\\xb2Fw\\xe1\\xf8R\\xe8{/>\\xb8\\x02\\x9b\\xc4\\x07F\\xb8\\xc81S\\x1e\\xfb\\x8a\\xec*\\xc2\\xe4\\xa4\\x82=\\n\\xcdbU\\x99#h\\x0f\\x84\\xc5;<\\xb4\\x9d\\xfbkv\\xb1\\x06w\\xf1\\xe2\\xc3{O;\\x13\\x97\\x13[\\xe2\\x14m\\xb0i}\\xa1v\\xe7\\xde\\x1d\\xf4EY\\xdc\\xdf\\x00U\\xa5\\x9f\\xeb\\x7f;/\\xdaa\t,\\xf6\\xde\\x13\\xd5h5\\xe6X3\\x1e\\xa0zX{\\x9e\\xa6)[\\xad\\xd5\\xd7\\xa0\\x9d\\x8dX\\x97\\xb5\\xb7\\xb3\\xf3x\\x8eB\\x9f1\\xe89\\xea\\xaa\\x8fz\\x8f\\\\*N{E\\x84 ~\\xf0)\\xb9\\xae\\x1f\\x93Oi\\xdf\\xb9b\\xe9\\xfd|\\xde\\x9f6\\xebez4H\\xeb\\xfb\\xdd\\x03\\x0e[u\\xfa!\\xda\\xcd\\x99\\xd9\\xbbz\\xb4\\x1e\\x1fc\\x89\\xb6>\\xbeV?\\xca\\xe93z\\x8f\\xb9<0\\xa1c\\xb7\\xa5\\xec?x\\x90\\xbf\\xc4\\x8f\\xb8\\xd4|32\\x11\\xa7zt~h\\xbdU\\xb3\\x18\\x83\\x17u\\xe1\\x14\\xab\\xe9G\\x10\\x95\\xbd\\x9e\\xd0Q7\\x15\\xa8\\xb2\\xd7\\xa3\\x8c\\x00\\x9fT\t\\xcc\\x81G4\\x07\\xde\\x0f\\xaer\\xc0\\xec\\xb7\\\"\\x84%\\x11e^\\xe1\\xaa$\\xcb\\xd7\\x84\\xb0\\x0e\\xd2A\\xe4\\xcfM\\x9f_\\x11\\xc5=,I\\x90#\\xd3*;1\\xb5=\\xd2iP\\xd8\\xe78\\x9az\\xd0\\x95\\x1em\\xa9a\\x17\\xfa\\x809\\xd7\\xb7\\x91\\x9b\\xd6m>\\xcae\\xae]\\xe3N\\x85!w\\xf90Wyp\\xfej\\x1bv\\xea\\xfc\\xb5\\xd7\\x15\\x8c\\xc0\\xfc\\xa5\\x04\\xe6\\xaf#\\x9a\\xbf\\x8e\\n\\xb7\\x97\\xfc v\\xfaI\\xfe\\xfb\\xfb\\xa9\\x18l\\x96\\x15\\xbey\\xd6I\\xfd\\xeb\\x9a\\xcb\\xfe\\xaf\\xbe\\xf3\\x85\\xba\\xb13\\xa1\\x19-&\\x81\\xb0!-k~\\x90?\\x98\\xbf\\xa7\\xf4\\xc4\\x98\\xe2H'6S\\xcf\\xb97Q\\xb2\\xb7\\xf5\\x04G\\xc0\\x9e\\x19\\xa2\\xc3\\xa0K\\xc7i\\xdf\\x96\\xbd\\x9b`hT\\x02C\\xe3\\x11\\x0d\\x8d\\xaeP\\xae\\xcf3.\\xcaR\\x06\\x86\\xbf\\x0by\\xbd\\x93\\x81\\xcb\\xac\\xdf\\xdb\\n\\xea\\x87:C\\x9c~\\xa7z\\xfe\\xc4\\xd4\\xe9H\\x078\\xdb\\n\\xb6\\x04\\x9be\\xb8Qn\\xf1m\\x83\\x86\\xdf/\\xd7a\\x9b\\x97s\\xcdc\\x9fo\\xeb\\x82\\xe7\\xbb0Yw\\x9aW\\x85\\xdep\\x90_\\x0cxD\\x87n\\x88\\xd0\\xd8M\\x91W\\xdb=\\xf2\\x88lz\\x1a\\xc7\\xb7\\xa3\\x1a.+0\\xdb\\xccW\\x15\\xceF\\xbb<%\\\\\\x89\\xd5aD\\xbc\\xa22 l\\x94\\\"\\\\-r\\xae\\x86A\\xd9\\xef\\xe72\\x00q\\x94*~;g\\xf9?\\x0f\\xd1\\x90\\xc4\\xdbad\\x1e\\xe82\\x917\\xb4g.\\xcd\\xed/\\x19U\\xe8#_\\xe9\\xf5\\xa2\\x9evL\\x970S\\x8e\\\"\\x9d}\\xc5\\xf6\\xe7\\x1e#\\x95\\xdf\\x053j\\x18\\x87\\xec%\\x90\\xbd\\xa4'\\x90\\xbd\\xe4O\\x99\\xbd\\xe4\\xa2\\x19r\\xa2\\xfbT\\xbd3\\xbd\\xf0\\x0dR\\xb0'U\\x02{\\xd2\\x07\\xde\\x93\\x1e\\xb0Q\\xd4\\x9d\\x9e\\x85#`N?u\\xc8\\xc6\\xf1\\x88\\x18\\xf6\\xf2\\xee\\x1d\\xf9\\xed\\x8c\\xdfv\\x92e\\x9a\\x97\\x19|\\xc8\\xcc\\xff\\x99\\xb8hS1]a2\\x8dJ}\\xcf\\xd1\\xee:M-\\x8f\\xa3\\xbd\\xfa\\x8f\\x06\\x8b\\xb6\\xb5xTN\\x82\\x92\\x83\\xb3k\\x86\\xe3k\\x12\\x14\\x04bl\\x12\\x9e\\xb6\\x96\\xbfa\\x1d\\x90\\xe0\\xd3#\\xf1\\xf5\\x8e\\x91\\x81\\xfb\\xe5h\\xe1\\xbf\\xa8\\x04\\x9ffX\\xde\\x90|\\xbd\\x19\\xdf\\x9e\\xe3\\xde \\x84\\xc8\\xed.\\xd7{\\xdd\\x07x\\xdb\\xfe|3\\xfau}U\t!2\tZ\\x13\\xb6(]\\xd6p\\x84.\\xdc{\\x1e\\x12t\\xc2\\x16\\x17\\xb6\\xb8\\xb0\\xc5E\\xf7\\xb5\\xc5\\xed/\\xa0\\xa3\\x1b]\\x97\\x92\\xd3\\xbdex\\xef.\\xd8\\xfd*\\x81\\xdd\\xef\\x03\\xef~?W\\xc0A\\xfb\\x96\\xce2c\\xca\\x17xg\\x0e\\xc8\\xf09.}\\\"d\\xf8\\xbcG\\xe3\\xc6\\xdb(d\\xf8\\x9c\\xc2\\x8a\\x90\\xe1\\x132|\\xfe\\xe92|6\\x8e\\xea\\xc6?\\x9d\\x92\\x99\\xc9\\x95\\x92I\\xdf\\xea\\xf21\\x9f\\x98J\\x1d\\xb7kyR?\\xc1\\xc8\\xe3\\x04\\xe3\\xce\\xe1\\x88\\x82\\x83\\x12|~\\xfe\\xa4K\\xa1\\xe7\\x81(\\xa5%\\xee\\x07P2\\xd0\\xf1\\x9b\\xe0\\xde\\x9d\\xd6\\xb9\\x9b\\xe8\\xda\\x1d\\xe3\\xd8Mq\\xebF-\\x1ds\\xb2&:t\\x0f~O\\xaa+7\\xf2\\xa2\\x11n\\xdc\\xe4\\xa2{\\\\p\\xe3\\x1d\\xb8)\\xae\\x97\\xa8\\xc7\\xa5\\xebc\\x81\\xf4\\xa0\\xe0Yq]?F\\xcf\\xca\\x94\\x1e\\x95I\\x96\\x87\\xc3\\x13\\xc0\\xf7\\xd7\\x8a!\\xaa\\x82\\x9c\\x94Bq\\xad\\xc6Mzb\\xaa\\x7f\\xdcK\\xc9#i\\xfd\\x07`~\\xf1\\x85h\\x82\\x12`)\\xc4\\x16\\xa7\\xd1O\\xac$\\xf6\\xa1\\x95D\\x97\\xa8\tUV\\x12_\\xa6&\\xaaJ]\\xaa\\x0e^\\xacF\\x0b\\x0f,\\x05\\x97\\xc4\\x96\\x9a\\xc9\\x8b\\xda\\x89\\xde\\x96\\xba\\xb4Mx\\xdd\\x88\\xe5m\\x82\\xd6\\xe8\\x12\\xf7\\x90E.\\xb0\\x14\\x80\\xa5\\x80\\x10\\xb0\\x14\\x80\\xa5\\x80\\xee\\x9b\\xa50p\\xaf\\xcc`\\xb3\\x0c\\x9be\\xd7\\xf5c\\xda,\\xdfO\\xce\\xa7\\xfb\\xcc\\xc9\\x01\\x14\\x83\\xb1\\xf8-P\\x0c\\xee\\xd1\\xb8qp\\x1c(\\x06SX\\x11(\\x06@1\\xf8\\x13R\\x0c\\xb4\\xaf\\xf6\\xe0\\x188\\xad\\xa7\\xe7Q6\\xbf\\x0e\\x8c~\\xd3\\x8f\\x9d\\x18k\\x1c\\xadCy\\xaf`F>\\xc7\\x12\\xf1\\xf3{tU\\xd7\\x19\\xfd8\\xad\\xf9!\\x1e\\xe1/\\xca_\\xa5w\\x81^\\x87\\x95\\xba\\xde\\xd3\\x00\\x1e+\\xf0X\\x81\\xc7\\n<V\\xe8\\xfe<Vz\\xc6KwYu\\xe7r#\\x10:\\xa3\\x04|VG\\xe4\\xb3\\xda_@Xz'\\xf3.A\\xe8\\x0c\\xf8\\xb5\\xc0\\xaf\\x95\\xd0F\\xc1\\xaf5\\x85\\x15\\xc1\\xaf\\x05~-\\xf0kEcg\\xf4\\x12\\xb6\\x1b<\\xa3\\x7f\\x94C\\x88\\xcd\\x10q\\xba\\xabNL\\x1d\\x8f\\xdc[5\\xa9k\\xe0\\xf3\\x85\\xb4\\x84|M\\x91GC~\\xa6\\xe8[\\xd3|L\\x03\\xd5$\\xf8\\x97\\xa2\\xcb\\xddT\\xba\\xff\\x08\\xcfR\\xd2\\x9ep\\xe8\\x96\\x10X\\x0c\\xb0#t]?\\xc6\\x1d\\xe1\\x94;\\xc1\\x03\\xa65}\\x9c\\xdd\\xe9'\\xf5G\\xec\\xc0\\xc6\\xf7\\xf2\\xae\\xce\\x9c\\xa6\\x1e\\xd47v\\xa6\\xb1\\xf7\\xf6\\x95\\xa3\\x9d\\xc4\\\\jP\\xe8\\xd3\\x07\\x87.U\\xe7\\xd4\\x81K\\x9b\\x13\\x86-\\x18\\xb6\\x1c\\xd7\\x8fi\\xd8\\xb2\\x86\\x07K\\xe1\\xc3\\x8f[\\xb4\\xc2Y!\\x8f\\xdb[2\\xff0\\xf5Z\\\\\\xee\\x1c\\xcc!\\x1e@E\\xee^o\\xcb\\xdbOL\\xf9\\x8ft\\x9c\\xb2\\xaal\\xcb\\xe7h\\xbc\\xa2(\\xe1\\xa6wp\\xfc\\xb5xE0\\x1a\t\\xa55\\xf3\\xee\\xc7:T\\x17^\\xaf+\\xb2\\xc6\\x9c\\xccWu\\x99\\x1d\\xacN\\xf6\\xe1\\xf9?\\x18-\\xe7\\xa2\\x17\\x1d\\xac\\xaf\\xc0\\\\\\x86\\x8d\\xe4\\x8c\\xd3\\xca\\x83\\xad*IR\\x17\\xdd\\x00\\x18I\\xdd\\xc2(IzwV\\x11\\xcc}'\\xfd*I\\xd0\\xa3\\xa7j\\xd1\\xbf;\\x07\\xf0\\xcb\\xd1\\xc0lR\\x9c\\xcfN\\x1a\\x10\\xe7m\\xe7\\xa1\\xce\\xab$)\\x9c,P\\x84\\xc3\\\"\\xe2\\x82\\x87\\xf3$<\\x9f\\x12\\x13d\\x1f\\x8d\\x91\\xe1\\xdd=\\x9b\\n\\\"\\xef \\xf2.\\x18y\\xa7p\\xf1\\xf9J\\x8eie\\xe6\\x1dE\\x13\\xbeJ\\xc2\\xe8i\\xd6\\x0bs\\xbe\\xa9\\x08\\xdb\\xd0\\\"2\\xaf\\xfa\\xd6\\xcaJ\\x12:\\x1b\\xc7|\\xfcx\\x86\\x10)\\xeb@\\xc3\\x7f\\x86\\xde}x\\xf3\\xe6\\xfc\\xcdO\\x81;.^|x\\xff\\xea\\xc7\\xc0\\x0dgo\\x7f\\xbd\\xf8\\xe5\\xd5\\xa5\\xf7\\x1e\\xb3\\x17\\x8a\\xbc+\\xb5C4en\\x14vf\\x8a\\xaa.K\\x9b\\x9c\\xa1\\xa78\\xaf:a\\xe0\\xbaOM\\xb0\\xc4\\x18\\xe0\\xb9\\xfe\\xb7\\xf3\\xb2\\x1d\\x96X]\\xef]\t:\\x1b\\x9b=o\\xff\\xech\\x96G8\\x11>Ty\\x8c\\xf7\\x83L\\x18\\xe4\\x99\\xd2\\xf6^4/\\x05H\\x8a\\xc6\\x84p\\x91c\\xa6P\\x9d\\x8a\\xec*\\xc2d\\x0f\\xc7^m\\xa6p\\xaaP\\x08\\x8b{\\xbd7{\\xc8_\\xd6\\x9c\\xafK\\xb5?\\xf5\\xb7\\x95\\xaf\\xea\\xbd\\xd9 HyS\\xca-\\xe0\\xa8\\x19IKDek\\xc3\\x85}\\xd9\\xec\\xf7+g<hdV\\x02\\x0e\\x1dp\\xe8\\x80C\\xa7\\x058t\\xe4\\xb9\\xf2\\x90HwE\\xaa\\x8bQ\\xb9B\\x80\\x1c\\xa7\\x04|\\x8a\\xc7\\xe4S\\x14\\xab\\x05K\\xd5\\x18|\\xbfW\\x1e\\xe0\\xa5\\x0d\\xb1\\x16\\xf0\\xd2\\x94\\xdc\\xb3q\\xe3\\x8c*\\xe0\\xa5MaE\\xe0\\xa5\\x01/\\xed\\xcb\\xe4\\xa5\\xbd\\x95\\xa8\\x97\\x0f\\x07;\\xfd\\xd4\\xa0%\\x01\\xe8^:\\xc1\\xfb\\x90\\x98\\xbei\\x0f\\x0d;1\\xb58b0\\xcc\\xb7\\xe8\\x1a\\xb5\\x99\\xf6CZQ\\xbfqlY\\x96\\x04f%\\xac\\xae\\x92\\x80\\xac\\x04=\\xa9 V\\x82\\xaad\\x00+AW*x\\x95\\xa0*i?>\\x0c\\xb6Jxk\\x14\\xb2\\x8a\\xea\\x18\\x0bW\\xc5\\xc1\\xaa\\xc8\\xab#@Uh3\\x83b\\xc8K\\xe4\\xd5\\xe3\\xf3\\x88\\x07\\xc1\\xa9\\xa8\\xadc\\xbe\\xf2$Xj\\x02\\xc3\\x1c\\x8c\\x94G\\xc1\\xa8\\xa8)P\\x12\\x10\\x95\\xa0&\\xee\\x15R2\\x10\\x82J\\x00\\x9a\\xa6\\x85\\x99\\x12A\\xa61\\x10S*\\xc0\\x14\\xb5vt\\x84K\\x85\\x96x\\xd0a\\x82R\\xba\\x8a\\x1fT\\x8aV#\\x04(\\xc5\\xe0\\xa4\\x08\\x98\\x14\\x83\\x92\\x92\\x80\\xa4\\xb4&=)\\x88\\x14\\x86{\\xa6\\x07\\x90\\xee\\x0b>\\x8a9\\xbc\\xa7\\x84\\x8e\\x06\\x00GN\\xbc\\xe3@\\xd0\\xa8\\xef\\x9d\\x1d\\xe2\\x9c\\x05\\xdf\\xac\\x16\\xf0\\xcd\\x1e\\x91o\\xb6\\xd9\\xb2X\\xea\\xee\\x99\\xed\\x99\\xbe\\xc9=\\x95\\xc6\\x88\\xf0?\\xff*}T{\\x1cP\\xf9\\xa8\\xbe\\x7fo\\xdb\\xfbW\\xeb\\xe2Q\\xef}\\xe7\\xb6\\x05l\\xf9\\x1cm{\\x89\\xb9\\x83?\\xaf$\\xda2\\xc5*\\x9eq\\xbc\\x8d\\x10\\xbf\\x92\\xda\\xf6\\x12s\\xf2L(t\\xd5\\xb1\\x1d\\xe1U\\xcb\\xd8\\x1b\\xdf\\x8do\\xcf\\xb5\\xcf\\nr\\xfe\\x1b\\x9dC\\x86}\\xbb\\xa9\\x19\\x81\\x99@\t\\xcc\\x040\\x13tg\\x82\\n\\x97K\\xba=\\xfd\\xad&\\xa6\\xea\\xce\\x98[y\\x97^W\\xfe\\x1fqog\\xfcWJ\\x9a\\xb5\\xa2T\\xa6Ut\\xc3o\\xf7\\xd4\\x9c\\x98:\\x1e\\xe9\\x94\\xa0\\xabt$-\\xfc\\x01\\x0e\\x1288\\xaf\\x1c\\xbf\\x9do0\\xf3z,\\xa3\\xcf\\xab\\xa5I\\xf8\\xf1>\\xe2aK\\x92{)\\xfc\\xf9\\x94\\x00\\xeb9\\xba;G\\xc3]N\\xd1\\xc2\\x7fQ\\xacg\\xd3\\x18\\xe3\\x8e\\xf0\\xc8W\\xf1\\x9c\\x8d\\xe1\\x18|C\\xab\\xac=\\xae\\xa1\\n\\n\\xdf\\x1b\\x95\\xa3\\xcb-\\x97\\x9aS\\xc7$\\x01\\xeb.%\\xb0\\xee:\\xa2u\\x97\\x9aE-]c`\\xe6\\xbd\\x02\\xb9\\xa6\\xd6\\xd8rL\\xf5\\x18\\xc7rL\\xfd\\xa32\\xa2D\\xb2\\xa1\\xa8\\xde\\xef\\\\\\x8dY\\x9c\\x14\\xc72L_9\\xde\\xa5\\x97,\\xa5\\xaf\\x89\\x8f\\xc2\\xa2\\x0d.\\x19\\\\\\xa3D\\x1a\\xdc\\xbd\\x9eP\\x1a\\xe8\tA\\xddfzP_>\\x0d\\xe1\\x0c\\xee\\xbc/\\x9a\\xfe\\x13\\x9d\\x0b:\\xa3?D\\xdc\\xc3\\xf8\\xef\\xba~L\\xe3\\xbf\\x1aS-]\\xf7\\xbc\\xe9v\\x8c\\xf2$\\xa3\\x95\\xf9G\\x8e\\xf2\\xe2\\x8fX\\xda+qOw\\xa0W?-T`\\xc7:\\xbf&\\xa5\\xf9\\xed\\xdc s\\xdd\\x81_^<1U<\\xd6\\x81_\\x96r\\xd2\\x81\\xff\\x90\\x01_\\xae\\xddK\\x97\\x0b\\x00E:\\x1c\\x8a\\xed\\\"#\\x1d\\x0fE\\xeb\\xa5d\\x99\\xaf\\x9d\\xc7\\xee\\xb7\\x92\\xd0\\x89\\x8c\\x9a9.\\xd6\\xf4`]u\\x95\\x1f\\xaccK\\xfc\\xdeo\\x94\\xa6D\\xcfqg\\xea\\x13v&F5\\x84J\\xe2\\xa2\\x1a?LP\\x19\\xd6\\x0d\\xd0\\xd5\\x14BD\\xa4\\xa4\tZ\\xf5\\xce\\xce\\xf6M\\xfd4|\\x8aV\\xba:\\x91@v\\\"<\\xd7\\x14\\xad^\\x05S4L\\xd1\\x8e\\xeb\\xc75E\\xeb\t\\xd1Rw\\xdf\\xb3\\xb4\\xe9\\xf4r\\x96\\xde\\xd4\\x8b\\xd3m^\\xf2SYJ\\xe6\\x9f\\x96\\xe5B\\xb9\\x9b\\x11G<g\\xd5N?\\xd1\\x99\\x88\\x7f\\xcdK\\xae\\x9e<159\\xd2\\xc9\\xd8\\xae\\xbf-\\x07L\\xc6\\xc2>\\xf3\\x80\\xcf3\\xda\\x9c\\xf4\\xb0(G8\\xbaB\\x19\\xcdK\\xc4\\xa9\\xd4\\xeb\\xb8?/W\\x85'\\xe8\\x18\\x0dx[\\xa3\\x06U\\xd8\\xcfs\\xd1\\xcd\\xc1\\x0c\\xf0\\xb2)l\\xe9\\xb2.\\xc8Wl\\xbfM\\x18\\xa9\\xfc\\x80\\xf3(\\x0bC\\x003\\x040\\xf7\\x04\\x02\\x98\\xbf\\xf0\\x00\\xe6\\x80\\x1f'\\xd9\\x87\\xd3z}`\\x91\\x08\\x8bD\\xd7\\xf5\\x87^$\\xc6Vm\\xbf\\xaa9\\xbfY\\xb3\\xadk\\\\-s\\\\\\x9e\\xb2z\\xd7\\xac,\\x9d\\xf9V\\xe5\\xf5\\xce\\x11x\\xea'}cg\\xb9\\xd6\\xb9r\\xb4K5\\xbb\\xca\\xb6|\\x8e\\xb6\\x94\\x10R\\x15m\\x108\\xd3\\x13\\x95\\xb8q\\xac\\x92xf\\xa5\\x9f^\\xbdy\\xf5\\xfe\\xfc}\\xe0\\x8e\\xb7\\xef~<\\x7f\\xf3\\xe2\\xdd\\xff\\xf3\\xdc\\xd2\\xd0\\xdd\\xc3\\x9a\\xd2\\x16MV\\x89\\x1a\\x85\\x16\\xbc\\xbe&%a93\\xb6\\x91\\xf5\\xf7j\\xb2\\x8a\\xfe\\xbc\\xf9\\xcbRF\\xabe^\\xe2\\xea.E\\x9b\\x9ee^\\xa8;/\\xc5\\xdca{1d\\xdb\\x8b\\xeb\\xc1\\xcbeEX\\xc4\\x1f\\x16j\\x12b\\x850_\\x8c\\xcd\\x1d\\xa6+!\\xbb\\xb3\\xa3\\xf8\\x9e@08\\xa9\\x0f\\x16\\xe9\\xb0H\\x87E:\\xba\\xafE\\xbaZ^\\xa4.\\xd2\\xf5\\xca\\x05\\x16\\xe8\\xb0@w\\\\\\x7f\\xe8\\x05z\\xc8\\x8b\\x0b\\xb9\\x82\\x86Q\\x87 W\\xd0=\\x1a7\\x9e\\xe5\\x06r\\x05MaE\\xc8\\x15\\x04\\xb9\\x82\\xbe\\xcc\\\\A?i\\xdf\\xd2\tB\\xa7D,\\xad%@H\\xae\\xb7\\xa7\\xd7\\xdf\\x9c\\xea\\xad\\xef\\xe9'\\xbd\\xc5\\x0d0y\\xf4\\x1e\\xba\\xc1\\x0cq\\x89^\\xc9\\x9dN\\xbd5;h\\xf3\\x99;^\\xa8W\\xd7[\\xfd\\xe8\\x89\\xa9\\xde\\x91z\\xa2\\x16\\xb8\\xc0\\xe2s\\xf5~\\x8e\\xac1:E\\xd5*\\xcc\\x10k\\xfeW\\xf7\\xdfW\\x7f\\xfd\\xb5\\x13\\\\\\xd0\\xdf\\x0f\\x8a\\xa5\\xa3\\x87\\xf1\\x93^\\x84F\\x89)\\xc4\\x86\\xdc>S\\x03!\\x97Q\\xebK\\\"\\xa7l\\x86V\\x15\\xdd\\xaar\\xbd}\\xd1/JI\\x87[\\\"\\xb2\\x1d\\xed\\x94R\\xea7%\\xd4\\xcd\\xe7+\\xd1\\x19e\\x12\\x0c\\xa2\\x07\\xb9\\xd9^g\\xf3o\\xffd\\xbb\\xd7-m\\x08\\xbd\\xa4\\xdb8\\x8d\\xb4!\\x00m\\x19`k\\xd2\\xbb\\n[\\x93X\\xa3l\\xe5\\x05\\xfa\\xf0\\xee\\x97\\xd3\\x8a0ZW\\xa2}\\xe3\\xad^\\x1a\\xd4e\\xfe[M\\x8a;\\x94/I\\xc9\\xf3\\x95\\xe1cp\\xc5\\x13\\xf0*\\x94\\x0e@R\\xe5\\xb8\\xc8\\xffI\\x02A@2\\xce'\\xa3\\x05Z\\xd4\\xab\\x15\\xa9\\xccG\\x9b\\xa1\\xcb\\x8d\\x98\\xfdd\\xdd\\xd0\\xb6\\xd69<p^\\\"\\xecc\\xf5!T\\x10\\xcc\\xb8\\xff]b\\x05\\xfd\\xe8\\xf4\\x11\\xca6\\xb8\\xc2\\x19'\\xd5L\\x06=\\x15\\x98\\x89u\\xcfzK\\xda\\xb5\\xcc\\x87w\\xbfHnA\\x87\\x19\\xd3\\x15Y\\xa8&\\xd9\\x87\\xff\\xad\\x920^\\x17\\xc5\\x1d\\xfa\\xad\\xc6\\x85\\xb0\\xe0R\\xd9\\xd7,\\x9b\\x84%\\x1fc&\\x16D^%\\x1fEQN\\xd7\\x94\\xae\\x0b2\\x936[\\xd4\\xab\\xd9\\x8f\\xb5\\x9a\\xc8>>Q5\\x91j\\xdbmU\\xee\\x0f\\x0c\\xc3b\\xabB\\xcb<\\xc3\\x85\\xecC\\xfe7?&\\xb3\\xf5\\xec\\xa90\\xad\\\\G<\\x9a=\\x12\\xc3VI\\xb9\\x18\\x17\\xc9\\x8e\\x93\\xe5\\x93Pt\\xd9y\\x89v\\xc2\\xd8yF\\x9e\\\"N\\xf0V,\\xd5j,\\xcc\\xb1\\xabHF\\xb7\\xbb\\xbc\\x10%\\x15k\\x1c1%I\\xdf\\xb9\\xbf\\xd8E!\\xed\\xc5\\x9au\\xeb\\x9d\\xff\\xd5j\\xac\\x13\\xcb|N\\xc5\\xfa\\xd0\\xec\\x15Lf\\x14\\xbaB/\\xca\\xbb\\x19\\xfa\\x99\\xde\\x88\\xf5\\xd6Sa\\x08\\xaf\\xb2\\x0f\\xef~a:\\x0eN\\xa8\\xf28\\xde\\x94\\xc8\\x11\\x94\\xa0\\x8f\\x1b\\xcew\\x1f\\x9f\\xaa\\x7f\\xd9\\xc7\\xa7b\\xcfVR}\\xf5\\xa9l\\x8d\\x99\\x95\\x87\\xbf\\xf0W[,\\x02\\xeb\\x9d\\xce5\\x13x/\\xa9\\xaeI\\xa5L\\xb3\\xc5;\\xa6\\x9a\\x96,9\\xa7\\x8d3O:2s\\xf1N\\x86\\xb0\\xff\\x9c\\x86\\x15-\\nz\\xc3\\x9e\\x07\\xbe\\xed\\xbf\\x8a\\x0dUS#\\xd1,tf\\xb6eSi\\xb9Uf\\xac\\xde\\x92\\xa5\\xdb\\xc5\\xa8\\x15\\xbd(\\xd1\\xcf\\x97\\x97\\x17\\xe8\\xa7W\\x97\\x88\\x96\\xa6\\x0b\\xaa>v'\\xa3\\x11\\xfd\\xc70\\xfc\\xad\\xdf-.\\xefv\\xe4\\xef\\x7f\\xfb\\xbb\\xf7\\x01d\\xfc\\xba\\xa5noz\\x1a\\x91_hW\\xd1e\\x9d\\x11\\xb1\\x80\\x94S\\x98;\\x06\\x11\\xa9R\\xefv\\x85\\xd8F)[VD\\xb4Oz\\xa3\\xfc\\xfb\\x19\\xce\\xc4\\xd8B\\xe9U\\xbdk\\x96\\xed\\x0b\\xcc\\x88\\xfb\\x04'$\\xc7\\xa7\\xbd\\x15|W>\\xbc\\xfbE\\x96q\\x83\\xafe\\x13\\xdcZ}h\\xa9:\\x116U\\x12\\x7f_\\xd3|\\x89p\\xe9oXH\\x17P\\x0e\\x1f\\x15Y\\xd1\\x8a<5\\n\\x84^\\xcc\\xf3E^\\xe4\\xfc\\x0e\\x9521\\xbb\\x061\\xc4\\x90W]\\x07j\\\"\\xeb\\x92mp\\xb9&\\xf2!\\xd9gg\\xe8\\xf1\\x07F\\x90\\xd8\\xda\\xe4T\\xecXd\\xf3\\x14c\\x96j\\x9f\\xb8\\xc4\\xebP\\xed\\x17\\x15\\xc1Wb\\x0c\\xd2\\x8agO\\x02\\x19\\xd6('\\xcf\\x11\\x17s\\xc8\\xaa.3\\xd5\\xc3D=\\xf4\\xd8\\x95\\xd5U%\\x9dU6\\x82\\xe0\\x1f.E{\\xa4\\xd2=\\xe3\\x07\\x0e\\xf4\\\\\\xb6\\xa8\\xc5.M\\xccD\\xe4\\xa9\\x0c\\xcfU.\\x0d\\xf1R\\xe9\\x16\\x92\\xcb;\\xd3/\\xbd\\xaa\\xa4\\xf3Mf\\xe1\\xba\\xc9\\xf9&0\\xb9\\xdc\\xed\\xc8L\\xb5\\x7f\\xbc\\xcb\\xd9,\\xa3\\xdb\\xd0h,O\\xf0$L\\x81\\x18\\xca\\xcd\\xd4\\x1b\\xa5\\xd0c\\xbd\\xfcT>\\x12\\xd5\\xb5\\x9f\\xf8'\\xc1|\\xbd\\xe1h\\x11\\x18\\x94\\x94/,\\xe7V\\xfc\\xb0\\xda\\xff\\x8b\\x8d|\\xbe\\xca3\\xc4\\xc8\\x16\\x97<\\xcf\\x9c\\x00\\xd4\\xbd\\xf8W\\xfb\\x92\\xbaJ\\xfaU\\x0cG\\x0b\\xa2\\xdcD\\xf9\\xd2Z\\xe0\\xec\\xadc\\xf4\\xe4\\x8e\\x17\\xf4\\xda\\xdf\\xa6\\xb5\ttWpU?\\xa5d\\x1f_\\x94w\\x1f\\xcd\\xf2H\\xee|q\\xb5\\xc8y%:\\xb1\\xbf\\x84NUf\\x8e\\xc0\\x05\\xd5M\\xcf\\x97\\x99L\\x8c\\xcer\\xa2Q%\\\\t\\x97\\x85\\xbd\\xe5_\\xb3\\xaa\\xf34\\xcd\\x0b\\xd3q\\x8a|!\\x8b\\xad\\xe7\\x11\\x86X\\xbd\\xdb\\xd1J\\xce\\xe0;\\x9c]\\x9d\\xd6\\xa5\\xf8G\\xcc\\xdb\\xaa]\\xb8{\\x90\\x9e\\xe8\\xfd\\x0b\\x1b\\xbaB5W\\x03\\x9b\\x19\\x1e\\x98\\x18X\\xf1r\\x99\\xab\\xb1B\\x92\\x02*\te\\xa9\\x8d\\x16\\xd3\\xd5r\\xea\\x13\\xe5Q\\x9f\\xd0\\xfd\\xbeW\\xb7X4~\\xf4\\xcdst!\\xca/\\xc6\\x05]\\x15\\xdc\\x18=/\\xd1\\xd9\\xbf\\xfd[`\\x9a|M)ZQ\\x8a~@\\xb3\\xd9\\xcc\\x8f\\xa8\\x89\\xc2\\xe0\\xf2\\xce\\x7f\\x03.\\xeff\\xa2\\x18\\xaf+\\xba}\\xbc\\xa2\\xf4\\x89\\xff\\xd6\\xd9\\xcc?\\xff\\xe5+\\xf4X\\xa8\\xfa +rI\\x1f\\xff\\x8b\\xd0\\xf5$\\x08\\x10\\x86\\xf4\\xfd\\x1e\\xb6\\xdd\\xb7\\x11\\xdb\\xfd\\x17\\xbe\\xc6\\x93\\x19\\x0f\\xfd \\xd7\\x86\\xe2-\\x13X(g\\x8f_S:\\xcb\\n\\xccX\\xc4@\\xaa\\x88\\xe2!UG\\xebA\\x7f\\x19<\\x96kL\\xf7]\\xc4t\\x17w|C\\xcb\\x80\\xf1T\\xa9^S\\xfax6\\x9b\\xf9g\\x83\\xc6p\\x8f\\x83\\xf7\\xc8\\xc6'\\xcd:\\xd6\\xaaB\\xc9\\xb92\\xea\\x8f\\xaf\\xde\\x9f\\xbd;\\xbf\\xb8|\\xfb\\xee\\x89o\\x92@\\xfa\\xb5\\xaa\\xa1\\x86_\\xac^\\x1d6\\xe7_\\\"\\xe6\\xfc\\x89\\xfa-)M\\xf9\\xfc\\x07\\xf4/\\xbb\\xc5\\xec5\\xa5\\x9ff\\xb3\\xd9\\xef\\xfe\\x9bqy\\xf7T,C\\xc5\\x13\\xb8\\xbc\\xdb-fo\\xc8M\\xa4\\x02\\xf9J>\\xf1?~@e^\\x84\\xd1\\xfa\\x90\\x95Q\\xa0X\\xc1\\xe7z\\x15\\x0c\\xa8\\xd1%Uu\\x9b}(\\xb7\\xb8b\\x1b\\\\\\\\R\\xd5\\xe5\\xa6\\xaa\\x86\\xf3\\xda\\xa5\\xcc?\\x9a]5\\xa3\\xbb\\xd9\\xba\\xa0\\xc5]\\xbb\\x903\\xf3\\x91\\xa2\\xd6\\xb8\\xd7\\xd1\\x06>\\xaa\\x99g\\x15\\xf4\\x95c\\x91v\\xba\\xaa\\x8bb&/\\x88\\x05\\xf0W\\x08[\\xf3\\xa7\\x98[E\\xdb\\xf2\\xcd6\\xaa\\xcd\\xb9_\\xd6LVeqgv\\xaa{\\xee\\x87f\\xe1\\x8d\\xf0\\x8a\\x13W\\xf2\\x11%\\xd23\\xf2\\xd5\\xe9W\\xeeW\\xe9Y\\xd6\\x14Y\\xee\\x9f\\x11\\xd1}\\xe4\\xd1\\x8a\\xd2\\xd9\\x02W\\xb2\\xb2\\xb7\\xa7w\\xb3\\x7f>RV\\x94\\xbb9\\xa7>\\xff\\xe6V\\x16\\xf5\\x91\\xd0!&X\\xe7-\\xff\\xf5\\xfe\\xed\\x1b\\xf7\\x95\\x1f~\\xf8\\xe1\\x07\\x7f\\x1b\\x10\\xcf\\xb5^\\x1c\\xb52\\xa5b\\x80\\xd1\\xcb*\\xb5S\\xacY\\x13X\\xb8\\xae\\x0b\\\\\\xb9\\xf5\\xed\\xab\\xe12&\\xb2]\\x08=m\\xc9>z\\xbcx\\xaa\\x16\\xf8.u\\xd8\\xe3\\x0f\\xb2\\x16)*Q\\xcf\\xc7\\xff-L\\xf7Q\\xbb'\\x9a\\x85\\xa0\\xfdq\\xdc\\x1dD\\x0fh\\xcf\\x03[\\x1a\\x9c]\\x89Q\\xad\\xddb\\xaf\\xf2\\x82\\xf8g\\\"3\\n^\\x90\\x8a\\xd12\\xd8m\\xb5oo\\x95W\\x8c\\xcb\\x8cm1\\x9e\\x90~@4Js\\xbf\\x9b%$\\xc57'\\\"\\x14,\\xd5#i\\xcbG\\xcf\\xd1#W\\xaf\\xed\\x9aa\\xa6j\\xf9\\xe8iH\\x9f\\xac\\xdf\\x1b\\xbc\\x15:\\xff\\x97\\xaa\\xc2\\x7f\\x06\\x1f\\x10\\xf5\\xeb\\xdd?\\xb4\\x92\\xe7+\\xbd\\x85\\xeb\\xb65\\xd5\\x1ar\\x86nHQ<\\xbb*\\xe9\\x8dJ \\xb5\\xc1\\x0ca\\x9d\\xb5i`\\xe7\\xea6\\xf9\\xa7\\xbd\\x0c\\xc8\\xaa\\x1f\\xb4\\xbcD]\\x1c\\xd1\\x80}\\\\T\\xd5\\xa4\\xdd/\\xfb(;\\xa3i\\xe7\\x1bZ,u\\xbeg\\x95oJv\\xe5\\xbcl\\xfa\\x07R>E\\xb7*\\xd5e\\xdc\\xef\\x91E\\x985\\xd3\\xfdc1\\xae\\x19\\x13\\xee9\\x9b\\x8c\\x0f\\xf6\\xef\\x7f\\xfb\\xfb\\x93@G\\x9a\\xa2\\xcdu_\\x18nv\\xd2TB\\xe57\\xb3o\\xbf\\xf9\\x96=\\n4!\\xf5o\\x88s\\xa4\\xe1WKGg_\\xaa/\\x1b8\\x8b\\x18\\xdcuCn\\x9bk\\x9cZDVCi^u\\xddk\\xf7\\x1c\\x8c\\xfa\\xeaz\\xebD\\x995\\x0c\\xcaR`f\\x8bW\\xf5R\\xa3\\xa7v\\x94\\xaa\\x85\\xa8b\\xe4\\xc2Tu0<\\xcb\\xcbu\\xd1V\\xe7\\x15\\xdf\\xbc\\x08c\\xd4\\xfae\\xfa*`\\xd4n\\x8c:\\x01\\x82\\xd5\\x86\\x1c\\x02\\xc1vmo\\x04 X-\\x00\\xc1\\x02\\x04\\xdb\\n@\\xb0\\x00\\xc1\\xb6\\x02\\x10,\\x07\\x08\\xd6-\\x00\\xc1\\x1a\\x01\\x08\\x16 X\\x80`\\x13WI\\x00\\xc16\\x02\\x10\\xac-\\x00\\xc1\\x02\\x04\\xeb\\x10\\x80`\\x9d\\xf7\\x00\\x04\\x0b\\x10,\\x02\\x08\\x16 \\xd8\\xae\\xf87\\xb7\\x00\\xc1v~\\x07\\x08\\x16 X%\\x00\\xc1\\x02\\x04\\xebVy\\xd4\\x10\\xac\\xc1\\xd5\\x8e\\x05\\x82e\\xf2p1?\\xf0\\xfa\\x9f6\\xf0\\xca\\xc8k\\xd2\\x07^\\x99<\\x96\\xc3\\x8c\\xf8;\\\\\\x91\\x92\\xa3EA\\xb3+\\xf3\\x9bv8\\xa9\\x1f\\x9f\\xb6\\xed$\\x97\\xa1\\x9d\\xf96/p%\\x8c\\xb4\\\"d\\x8b\\xab+b%\\x99US\\xfaS\\xb4\\xa89\\xc2\\x05\\xa3(\\xdb\\x90\\xec\\x8a\\xa1\\x82\\x96K\\xda\\xfa\\xac6\\xb8Z\\xaehu\\xa5\\x0fvv\\x82\\xb9\\xba\\xf4\\xfa\\xd2\\x11#\\xb9\\xf6\\x17\\xb1%\\xe8\\xef\\xd1)y\\xcc\\xd3\\xa6=\\xbe:\\xbf\\xf8\\xe6\\xfb\\xef\\xffg\\xf3\\x99:\\xcfu\\xea\\xa7AZi\\xa3\\x06\\xa45\t\\x05]\\xaa\\x00}\\x05\\xf4\\x15\\xd0W-\\x80\\xbe\\x02\\xfa\\xda\\n\\xa0\\xaf\\x1c\\xd0W\\xb7\\x00\\xfaj\\x04\\xd0W@_\\x01}M\\\\%\\x01\\xfa\\xda\\x08\\xa0\\xaf\\xb6\\x00\\xfa\\n\\xe8\\xabC\\x00}u\\xde\\x03\\xe8+\\xa0\\xaf\\x08\\xd0W@_\\xbb\\xe2\\xdf\\xdc\\x02\\xfa\\xda\\xf9\\x1d\\xd0W@_\\x95\\x00\\xfa\\n\\xe8\\xab[\\xe5`\\xf4u,v\\x99\\xd1eZ\\xec\\xe8\\x19]\\xfa\\xa3E\\x8bB\\x1e\\xb9\\xc9:\\x01\\xa2\\xc1\\xcc\\xc5B\\x9d\\xfe\\xfdhQ\\xc4\\x10\\xa2\\x15I\\xd3\\xeb\\xf4V\\xec\\xa5\\x12n\\xbb\\x9a\\xee\t\\xbd\\xfc\\xc1\\xb8l\\xb1p\\xfd\\x85\\x02!\\xa3{\\x07\\xfa\\xc86 \\x0c=$^T~g\\xdfI\\\"\\x00W\\x02\\\\\tp\\xa5\\x16\\x80+\\x01\\xael\\x05\\xe0J\\x0ep\\xa5[\\x00\\xae4\\x02p%\\xc0\\x95\\x00W&\\xae\\x92\\x00\\xael\\x04\\xe0J[\\x00\\xae\\x04\\xb8\\xd2!\\x00W:\\xef\\x01\\xb8\\x12\\xe0J\\x04p%\\xc0\\x95]\\xf1on\\x01\\xae\\xec\\xfc\\x0ep%\\xc0\\x95J\\x00\\xae\\x04\\xb8\\xd2\\xadr0\\\\\\xf9\\x90\\xc1\\xa2\\x12U;\\x8eHQuV\\xed|\\xc0\\xc9\\xb0g\\xf2\\x89\\x84\\xf3a\\xbfb\\xfa^\\xf4\\xa2\\x8b\\x14\\xf6`WK\\xdd\\x89\\xa9\\xf8\\xd1\\xe2\\xaf\\xcaZ\\xaa>\\x83\\x90\\xb5=\\xb0\\xd5\\xd6d\\x9a\\x8e\\xfa\\xb5i4\\xc6\\x89\\xd2E\\xad\\x8d\\x98\\xd3S\\x07\\x16c\\xc8\\xb9\\xad\\xcd\\x01\\xad\\xc3\\x8enE\\xe6\\xc6\\xb9\\xba:m\tuLl\\xf7\\x15\\xbd\\x12\\xeabu\\x9eM\\xc8f\\xdci\\x8cI\\x18\\xb5K\\xcbi\\xb7M\\xf7n\\x81D\\xc7Z\\x00\\xbb\\x06\\xec\\xba\\x15\\xc0\\xae\\x01\\xbbn\\x05\\xb0k\\x0e\\xd8\\xb5[\\x00\\xbb6\\x02\\xd85`\\xd7\\x80]'\\xae\\x92\\x00\\xbbn\\x04\\xb0k[\\x00\\xbb\\x06\\xec\\xda!\\x80];\\xef\\x01\\xec\\x1a\\xb0k\\x04\\xd85`\\xd7]\\xf1on\\x01\\xbb\\xee\\xfc\\x0e\\xd85`\\xd7J\\x00\\xbb\\x06\\xec\\xda\\xad\\xf2\\xa8\\xb1\\xeb\\xe3:k\\x960\\x9eo1'\\xf35f~\\xc8\\xfa\\x95\\xbe\\xeb'\\xccZO\\x86\\xaa\\xf0G\\xc27s\\xd2^\\xff\\x88\\xaa]\\x86\\xf0.\\xd7:\\xba\\x07\\xc7\\xb6\\xf7\\x9d\\x98:\\x1e)R\\xdd\\xd8\\xc3\\x96\\xa0\\xc7%\\x0du]c\\xd6I\\x1flL\\xb7\\x14WN\\x1c\\x0fX6k\\x00U\\xe9\\xc6&\\xac\\xf3]\\x8c-\\x1a\\x1d\\x80\\x89\\xf6\\xae\\x02&\\x9a\\xe6SC\\x80\\x89\\x02&\\xea\\xbd\\x130Q)\\x80\\x89\\xee\\x0b`\\xa2\\x80\\x89\\xfa\\x040Q\\xc0D\\xa5\\x00&\\n\\x98(`\\xa2\\x80\\x89*\\x01L\\x140Q\\xc0D\\x01\\x13\\x95\\x02\\x98(`\\xa2\\x96\\xf87\\xb7\\x80\\x89v~\\x07L\\x140Q%\\x80\\x89\\x02&\\xeaV9-&Z\\xad\\xfd\\x80h\\xb5f\\xed\\xf8\\xc8D\\xbf\\xfc\\x87\\xe8\\xfaj\\xdbm\\xe65\\xf9\\x93F\\n\\xfb0\\xe8o\\x1d\\xec\\xd2\\xc6AW\\xb8`\\x11 \\x14\\xf9v\\xf8\\xa6\\xeck\\xcc\\xe6\\x19\\xde\\xf9\\x8a\\xaf/7\\x10\\x9b\\x1a\\xb1\\xd5\\x8c\\xbe\\xc6\\x0c\\x89k\\xca\\xebU3\\xb2\\xbc\\xb7\\xa2\\xf7@DS\\xf8]Ew\\x94\\x91j\\x1eA\\xa5\\xfb\\xf7\\x99\\xb9G\\x94\\x870\\xb1\\x89U'\\xd1\\xe6\\xa5\\x04\\xaa\\xd5[\\xef\\xad2\\xce\\xef\\x90mp^\\xce\\xf3\\xa5\\xaf\\n=\\xe7\\x86\\xb9\\xbd\\x01\\xda\\xf3\\xdd7\\xdf\\x7f\\xaf~F\\xf9R4W\\xe9M\\xab\\xe8\\xd6U\\xd3\\x8e\\xae\\x0d\\xc1K\\xb2\\x87\\xbeOV]\\xfb\\xd3\\x8d\\xc6\\xe5\\xf9f\\x9e\\xe1\\xa2\\x08`\\xf2|s\\x86\\x8b\\xc2\\x89\\xc7\\x8b'\\xc3@\\xbczX_:Z\\x10~\\x83\\xd9f\\x10\\\\\\xdb\\xa0\\xe6N\\xd7\\x98PgzBC\\xd4\\xe0\\x15.\\x19\\x96.\\x9f^wP\\x90\\xa3x\\xc8\\xa1k\\x99\\xafV\\xa4bM\\x83s\\x8d\\xf4\\x97\\xa4\\\\\\xaa\\xcf\\x8a\\xd8\\x06\\x7f\\xfb\\xfd\\xbfwJ`\\xbfXf\\x08\\x9f\\xa1\\xf7\\xc4\\xa9Gzb\\x9f\\x9f\\x9e\\xaes\\xbe\\xa9\\x17r\\x12\\xe0\\x8dj\\xfb\\xcf\\x9c\\xb1\\x9a\\xb0\\xd3\\x7f\\xff\\xfe\\xbb\\xff\\xe9\\x01\\xaf*\\xb2\\\"\\x15)\\xb3\\xfe,X\\xd0\\xf5\\x91\\x80\\xdc\\xde\\xdc\\x00J\\x12\\x1c\\xbc&\\xbe\\xbd;\\xf4\\x89ep\\x853\\xae\\x96$\\xad7O6\\x86kR\\xbaQdNwy\\x16)\\x8c\\xdb>J\\xbcVR\\x92P\\x9bN\\xc7S\\xc5\\x91 \\x1a*r\\xa6\\xe0i\\xf5\\x9b\\xbd_\\xb5\\xeb\\xeb^\\xe9/1\\xc7\\x07\\x988\\xc1\\x87\\x1e\\xea\\x88JD\\x19\\xf4\\xda-W\\x9e\\xdd\\\"\\xdf/\\xffS\\x83\\x0f{\\xf5\\xbcxy\\xfe\\x8c\\x94\\x19]z\\x00(9\\x01x3)(\\x19Pg\\x0f\\xbfGI\\xbc\\xd6viL\\xdbl&ce\\x8d\\xfe\\xe8p\\x13\\x80e\\xf32+j_\\xcd\\xf9\\xed\\xdc=\\x84\\xea\\xcb\\xf1J\\xeb\\xfahEf\\xf2\\xb5\\x0b\\xe7\\x19\\x1f\\xe5\\xcb\\xf3rIn\\x0fx\\xfb\\x10\\x93\\x9b\\xd7\\xb9\\x86W\\xed\\x99\\xd8_\t\\x18Q\\x1fe\\x1a[E\\xbf\\xbd=\t\\xdc\\xd7\\x97\\x7fH\\xcbw\\xcc^\\xd0u\\xdc\\xdc\\x15\\xd9\\xd2k\\xb2\\x0c\\x97oAiA\\xb0\\x0f\\x83M\\x01\\xc2P\\xfb*\\xd9r\\xab\\x9a\\xa0|\\xa5P`Q\\xce\\x1bI\\x9b\\xbb&\\x95\\x98\\x07\\x965\\x91\\x18\\xb9ZR\\xfa7n\\x15\\xa1\\xd5\\x1a\\x979\\x93\\x8b\\xa9\\x19\\xfa\\x7f\\xb4V\\xb4\\x84\\x1d\\xbeC\\x98sR\\xb6{\\xcd\\x9ci\\x8fL\\xee'F\\xdd\\xd1\\x1aU$#\\xf9\\xb54\\x1e\\xf3\\xbf\\x99o*Z\\xaf7rO\\\\pR\\xa9\\x15\\xebX\\x94\\xf0\\x17\\xba\\xb6\\x0f+\\xc1e\\xeb\\xe54H\\x7fA\\xda\\x9cD\\xe2v1s:u\\x99\\xcd\\x12nFmw-\\x84\\xd1\\xe5\\\\+\\xf9\\x05LO\\xbc\\x8a*\\xd1\\xce\\xc8z\\x02\\xf8\\xe5\\xedO\\x88\\xeed\\xaa'\\\\\\xba[9\\xe3\\xb4\\\"\\xcbS\\xd9\\x00\\xe5\\x83\\xee\\xd7\\nm%]z\\xd1\\xb87o/_5\\xeb\\x85\\xa7fB\\xc5\\xe5RMQ\\xa2t\\x99X\\xe1\\x96\\xac\\xd6\\x1f\\x94\\xc9\\nx\\xda6kXc\\xea^\\x8f\\xd7\\xae\\x12\\x1b\\xcb*\\xbf&\\xcb\\xa7(\\x9f\\x91\\x99\\xf8\\xaa\\x8a\\xb6a, \\xca\\xcc\\x9e\\xa2E\\xcd%]\\x80\\x91\\xac\\xaeT5]\\n\\x9b\\\"\\xee\\xb7\\x88x{\\x10-\\xaf\\xe7)\\xec\\x8d\\xf1\\xc6\\x03\\xad\\x9a\\xc9\\xb3\\xb6\\x8d8\\xb4\\x99\\xc5\\xb5\\xab\\xe6\\xe2M\\xfd\\x12V\\x84\\x0f\\\\\\xe6\\x07\\x17 \\xa1\\x81\\xb8\\\"\\xbc\\xcdG\\xc4\\xeb\\xaa$\\xfa+\\xcb\\x85<\\xb9\\xde6\\x000z\\xacX:\\x88V\\xf2\\x0e\\x87\\xb2f\\xcd\\\"\\x91q5\\x94\\xb8\\xea\\xac\\x9aq\\x1f\\xa3\\xb9\\xde\\xce\\x87\\x93b\\x9b\\xda\\x99\\xa7\\x9b\\x0d\\xb1&\\xf0\\xea:-\\xee\\xd0\\xf5\\x16\\x91[\\x92\\xd5\\xa22=-k\\xcc\\xe65s\\x8d\\xc0IV\\x0fS\\x9c\\x9dv7ol8\\x0e\\x0cm\\xe8\\x0d\\xda\\xd6\\xd9F\\xfaU\\xc4X,Zp\\xbdmF\\x00\\x87\\x16\\xabQv\\xaev\\x1a\\xf8\\xaflm\\x86\\xad\\xcb\\xdb=\\xce\\xb4\\xb0\\xd5\\xafl}\\xda\\xde\\xd2ML\\xd5\\xb6M P\\xf7\\xae\\x02\\x81:e(U\\x02\\x04j P\\xbb\\x05\\x08\\xd4R\\x80@\\xbd/@\\xa0\\x06\\x02\\xb5O\\x80@\\x0d\\x04j)@\\xa0\\x06\\x025\\x10\\xa8\\x81@\\xad\\x04\\x08\\xd4@\\xa0\\x06\\x025\\x10\\xa8\\xa5\\x00\\x81\\x1a\\x08\\xd4\\x96\\xf87\\xb7@\\xa0\\xee\\xfc\\x0e\\x04j P+\\x01\\x025\\x07\\x02\\xb5S%\\x10\\xa8\\x81@\\x0d\\x04j%\\x7f\\x00\\x02\\xb5\\xec}\\x81\\x94f\\x17\\xf2zs\\xfc\\x96$64\\x1dV|\\xed[\\xa1\tm\\xe9\\xb2.\\x1aGR\\x97C}\\xbdUJ\\xf4\\xc5\\xa3eQ\\xdb\\xa6\\xb0\\xa5\\xdb\\xe0\\x95=T\\xafU\\x0d\\xa4\\xa9\\xbee\\x99\\xfde\\x8f\\xb7@(\\n\\xc8\\x92\\xeb\\xed|IJ\\xba\\xf5\\xa3\\xb5AWd\\x8a/\\xcfz\\x8bMw\\x92K9zEJ$/\\xe5\\xa5\\x9aY\\xa5o\\x95ST\\xd5>\\xd7\\xb5x\\xf0\\xd5_\\x7fE\\x8cc\\xeeu\\xd2J\\x9a\\x82B\\x84\\\\\\xebDR\\xe2EA\\xe6YE0\\xf78by\\x94\\x02\\x17c\\x1bv^\\x828]\\xaf\\x0b\\xc2T\\xb1\\xed\\xf2iPZ#pnU\\xd7\\xdb\\xd9\\x99Rc|{\\x81J5A\\x0b}\\x99\\xaeJ\\x12\\xb4L\\xaa\\x90,z\\x1b\\xe8\\xd0\\x97Puny\\x85\\xe7$\\xdf\\x05\\xa8\\x04!\\xeaw\\x90\\xf8\\x1dm\\xd9\\xee\\xb1\\xb0+\\xdaZmA;S\\xae\\xb5\\xa7yu~\\xc1\\x90>nM\\x1a\\x84\\x96\\xab\\xdc\\xf5^5Ed\\xf2\\xb2\\xa7\\xd6\\x91/dk\\xe8\\x14Gt\\x195\\xd5\\xa8\\x8bz\\xc9\\xe5Q\\xd3\\x8e7\\x01\\xdb{Y \\xb1aG\\xc8\\x86n\\xc5\\xe4\\x86\\x97s9\\xbb\\xf9\\x1d]\t\\x9f*n\\x16\\xb4\\xffF\\xc4nr\\x9em\\xd0\\xe32/PI\\xc5\\xf7\\xb9z\\x8a\\xbeF? \\\\T\\x04/C\\x10c\\xa3\\xca\\xe7\\xb4Zb:\\x17\\n\\x1f\\xacr\\xdd\\x17\\xa2\\x8cVj>S\\x08\\xe7\\xe5\\x86\\xfc\\xf8\\xe2-\\xda\\xe0j\\xf9L\\xdc\\xa5\\xeb\\x1e\\xd0\\xa7\\xd4\\xd8\\xb6\\x89VU\\x03\\x1b\\xb1\\xca\\x86Y\\xc5\\x03kk\\xc0\\x14\\xd3\\xd2o6D\\xe3\\x80\\x9a\\xbci\\xe0\\x16\\x86\\x02L\\x08\\xb1\\xae\\x10\\x8bM\\xd5S:\\x96\\xf2\\x0d\\x84b\\xed\\xf6\\xf5\\x83}\\xdd\\xce\\xeb\\xc4p\\xf2\\xcd\\xf7_\\xf7\\xe3\\xce~\\xc2\\x0c\\xed\\xaa<#\\x06L\\x0exl\\xd1cGD\\x93\\xe1\\x8c\\x9e\\x8a\\xe1\\xcaD2}\\xf3\\xfd\\xd7O\\xf4\\x0b\\x03\\xea~~=\\xa0\\xc1\\xe8\\xca\\x84\\xb8\\xfe\\xd3\\x9bN\\xbe\\xcdX\\xee\\xe7\\xd7\\x8aP\\xfb\\xb8$d\\xa9\\x01l\\xb5\\xa2\\x96N\\xc6\\x80\\xb6\\xac\\xc8\\x15_Z\\xbb#\\xd7\\xda\\xe8-\\x86\\xef\\x1d\\x12\\xd4r\\x7f\\xca&\\xf3UG\\xa5\\xaa\\xdc\\xf7/\\xe5w0\\x1f\\xe4\\xabPa\\xfec\\xfa\\xc2\\xfcG\\xa70\\xff\\x11-\\xc7\\xe2\\xee\\x9f\\xb8\\xe4y\\xbd\\x9d\\xb2(\\xc1\\xf6\\xd0\\x7f#zi~0\\x13\\xc2~K\\x0e\\xb9%\\xac\t\\x03\\xc98B\\xad\\xcd\\xd7\\x0c2Z2.n)\\xe9\\xae \\x0fVm\\xe7k\\xd1Y\\xe7\\xd7}\\x03\\x04\\x14\\xbafL\\x843\\x9e_c\\xee\\xef\\x04;\\xb9\\xa6X\\xd4\\xd5\\xfa\\xc1j\\xbe\\xf7Jt\\xd1\\xfc\\xe2\\xf8\\xe4\\xd2\\xdd\\x13 \\x91\\xa1\\x9e\\xd1|5\\xcd\\xc5=\\x8b\\xbax\\xb0z\\xf6^\\x88\\xce\\xf5\\xff\\x07\\x9a5\\n\\x8d\\xe9\\x9dfm\\x94\\xfbj\\xbb\\xad\\xf3j\\xbe.p\\x96\\x93\\xea\\xc1j\\xecx)z\\x95\\xef\\x9e}\\xfb\\xdd\\x7f\\xfc\\x05=^\\xd0\\xed\\x02-I\\x81\\xef\\x9etL\\x10P\\xe8]\\n\\xc6\\x1b\\xf6\\x82TE^>X\\xd5;\\xafC/\\xe5\\xff9>\\xf4\\x0f\\x9d\\xda\\x04\\xf4\\xd9#\\x98T\\xe6\\xabgA\\xcb%}\\xb8zv^\\x87~\\x91\\xff7Q=\\x95j_=qU\\xd1\\x9b\\x07o\\xd1\\xae\\xb7\\xca&\\xfd\\x97\\xef\\xfe\\xf2\\xbd\\xabI\\x87\\x9a\\x88\\xcf<\\xe9\\x8dz]\\xe1\\xbb\\x07\\xb7\\x81\\xe3\\xa5b5\\xf1\\xec\\xfbo\\xbe\\xfbn|\\xaf\\x1ek\\x82-\\xa9\\xd6d^\\x12\\xcevE\\xce\\x1f\\xcc\\x08\\xce\\xd7\\xa2\\xbf\\xe6\\x15\\xaf\\x15\\xbd\\xfdJ\\xe3\\xdc\\x97\\x1b\\x82~\\x157#N\\x03\\xfaj&&5\\x84QI\\xf8\\x8d\\xdc\\x00\\n\\xbd\\xdc\\xc3\\x99C\\x88\\x89\\xb5\\xec\\x06\\xe7\\x0fV\\xe1\\xee\\x0b'\\xea\\xe2F\\xa9w-\\x86\\xcb\\xac~\\xb8\\xc1\\xcc~]\\xb4\\x86\t^\\x08Zj\\x95\\xee\\xfa\\xa59g\\xcf68/\\xcf\\x1c\\xfe\\\"\\x13wj\\xdf\\x10q\\x0b\\x89v&vB\\xff\\xca\\x96W\\xb3\\xf3\\x92\\x1bB\\xa3\\xe7\\xe6\\xbc\\x94>\\x14DW\\xe8_\\x17\\xf9Z<\\xe1r\\xd6J\\x06\\xfa\\xbc.w\\x15\\xe52\\xd2k\\xceo\\x83>\\xc1\\x90\\x87!\\xcd(\\xceW6\\xe6\\xc9W\\xa8\\\"\\xbb\\x02\\xdf=k\\xae\\xa3\\xc7\\xf9\\x8c\\xa0\\xd2\\xebOS{3\\x9f!X\\xbe.\\xc9\\xf2\\x89\\x1d\\\\\\xc7d \\xc5\\x82\\xe8\\x00B\\xb241\\x04\\xca\\xdd\\xba\\xc5\\xd9&/\\x1d\\xfcZ\\xdd\\x0e/l0\\xa1u\\x00\\xee\\xa1\t\\x9d\\xe7\\xc3\\xb6\\x91\\xb8\\x8f\\xd2\\xeb\\x0c\\xe9\\xeb\\xc4\\xf0\\xc9-\\xb5\\x84\\xa3D{\\x90HNO\\x9d\\x0b\\xd1\\x80x\\xbf\\xdeU\\x88\\xf7\\x8b\\xb5\\xcaV \\xde\\x0f\\xe2\\xfd\\xdc\\x02\\xf1~R \\xdeo_ \\xde\\x0f\\xe2\\xfd|\\x02\\xf1~\\x10\\xef'\\x05\\xe2\\xfd \\xde\\x0f\\xe2\\xfd \\xdeO\t\\xc4\\xfbA\\xbc\\x1f\\xc4\\xfbA\\xbc\\x9f\\x14\\x88\\xf7\\x83x?K\\xfc\\x9b[\\x88\\xf7\\xeb\\xfc\\x0e\\xf1~\\x10\\xef\\xa7\\x04\\xe2\\xfd8\\xc4\\xfb9U\\x0e\\x8e\\xf7\\x1b\\x1b\\xa9\\xc48\\xad\\xf0\\x9a\\x9c~\\xd2\\xa1f\\xbf\\x9f~\\xba\\\"w\\xbf+U\\xae\\xd0\\xa5\\xf7\\xea\\x81N\\xec\\xd2\\x02\\x17\\xb8\\xcc\\xe4\\xce\\x11\\x17\\x05\\xca\\xa8\\x18\\xbf\\x84\\xd91by\\xb9.\\x08\\xc2YF\\xeb\\x16\\xe2\\xec\\x842i\\x8d\\xfa\\xd2\\xd1\\x062y\\x1c\\x19A\\x17F|\\xff\\xaf&(\\x1bK\\xd4_D\\x83\\x9d\\xea\\xbaJ\\x81\\xcb\\x18\\xcdr\\xb9\\xa7\\x95[{w\\xe7X\\xe7\\xd7\\xa4DW\\xa4\\x97\\x9a9\\x01\\xdf\\xd4\\xdf\\xa1\\x018s\\x1f\\xb6)~\\x95O\\x9cv?\\x9d\\x91w\\x17g\\xfd\\x9e\\xa4\\xd65\\x80v\\x02\\xda\th\\xa7\\x16@;\\x01\\xedl\\x05\\xd0N\\x0eh\\xa7[\\x00\\xed4\\x02h'\\xa0\\x9d\\x80v&\\xae\\x92\\x00\\xedl\\x04\\xd0N[\\x00\\xed\\x04\\xb4\\xd3!\\x80v:\\xef\\x01\\xb4\\x13\\xd0N\\x04h'\\xa0\\x9d]\\xf1on\\x01\\xed\\xec\\xfc\\x0eh'\\xa0\\x9dJ\\x00\\xed\\x04\\xb4\\xd3\\xadr0\\xda\\x19\\xccn\\x1a\\xce\\xadiRj\\x9aD\\x94&\\xd4sCn\\x9bk\\x9c\\xaa\\xf8=\\xb4\\x8f\\xc7\\xad\\xe8^\\xe6\\xc9\\x9e\\xe3\\xbdM<\\xc9\\xab:\\x9aw\\xd2\\x94\\xfa\\x8a\\xdc\\xf9J|E\\xee:\\x00\\xa1\\xf8\\x7f\\xb3k\\xb5\\xcb6]\\xb1\\xc6\\x82\\xc9\\xbc\\xc2Y'\\xad\\x8b\\x0b@\\xb6\\x1c\\x03\\x97\\xe2~\\x95\\xb4\\xa7\\x97\\xd0\\xe9\\xe3\\x92,\\xea\\xf5\\x9c77\\xbc\\xbc{#\\x0f\\xad\\xfe\\xd89\\x8e\\xd5q\\xdb\\xcf\\x98m>\\x9a\\xdc\\xb4\\xfa\\xc6\\x0e\\xdc\\xdc\\xbeT_=Z\\xc4\\xd9}Lz\\xd0\\x8b\\x94r2\\xa9<p\\xb4\\x0f\\xeeZ\\xfe\\x0fy\\x04,\\xefy+\\xf4\\xb3\\xb2%\\xb4\\x16\\xdc\\x0b\\x86\\xb5\\xbe\\xa8Q\\xdd\\xa8\\x01\\xcc\\xb7w\\x150\\xdf4\\x9f!\\x02\\xcc\\x170_\\xef\\x9d\\x80\\xf9J\\x01\\xccw_\\x00\\xf3\\x05\\xcc\\xd7'\\x80\\xf9\\x02\\xe6+\\x050_\\xc0|\\x01\\xf3\\x05\\xccW\t`\\xbe\\x80\\xf9\\x02\\xe6\\x0b\\x98\\xaf\\x14\\xc0|\\x01\\xf3\\xb5\\xc4\\xbf\\xb9\\x05\\xcc\\xb7\\xf3;`\\xbe\\x80\\xf9*\\x01\\xcc\\x170_\\xb7\\xcaI1_\\x05<\\xaa\\xc3\\x9df\\xf2\\x7f\\xec\\xedcg\\x8f\\xaa\\xaeJ\\xb7\\x9f\\xf9.\\xff\\xc0\\xd7X\\xdd\\xa1\\xaf\\xf6\\x11\\xde\\x03\\xcf\\x16t\\x972\\xdf\\x12Zs_1{[i}7\\xa2\\xd7\\xa4\\xaa\\xe4\\xc6\\x93['[6WW\\xe8{\\xc4H&\\x8f>\\xea;\\x8b\\xc5\\xf6\\xe3\\xbd|\\xc13\\xe9\\xe5\\x93\\xc5\\x11\\xc5\\xec\\xdc\\x95\\xe1\\xa2`\\x0fQ\\xff\\x8a\\x90[\\x92%V_\\xdd\\xdcA\\xc1K\t\\x07\\x8b*K\\xbcY\\xcf&\\xcd\\xc7\\x15}Z\\x0c\\xc6\\x9c\\xa2u79\\xf8\\x02gW\\x13W0z\\xf0g\\xa7\\xe6\\xcb\\x9c\\xc9\\x93\\xe4\\x18\\xc7\\x9d\\xdc\\xed\\x1d\\x03tn\\xd2\t\\xb3\\xd5\\x81s\\xd9\\x15\\xca\\xf0\\x8e\\xd7\\x159\\xb4\\x16\\xfd\\\\\\xd1\\x91\\xd2\\xf6C}=\\xe5\\xd5\\x8c\\x84\\xb6\\xc4\\xea\\x87\\x07-3Y\\xd4koI\\xc5E\\x93a\\xda\\x1c\\xb9\\xb8\\xab\\xf2\\x92#Z\\xf3]\\xcd\\xd1\\xb2\\x96\\xf3\\xb8.1\\\"\\xe5\\xc1\\x07\\xc5&\\x95\\xba\\xc8\\xb7y\\xeax \\xef\\xed\\xf4\\x87-\\xbe\\xcd\\xb7\\xf5\\x16\\x15\\xa4\\\\\\xf3\\x8d\\xe8\\x17\\xaa6O\\xd1\\xa2\\xe6\\xe8\\x9f\\xa4\\xa2hKp\\xd9\\xf5G\\xd5\\xa5Tt\\xf8I\\xb8\\xfb\\xf0\\xb7\\x1b\\xf8vV\\xbc\\x19\\xd4f\\xbdc\\xea|\\xc6\\x18z\\x9a\\x9duf\\xdd\\xa1\\x15M\\x19\\xda\\xda\\xfatO\\xa6K\\xfc\\xb6\\xa3\\x8e\\xb3\\xeb\\x1eq\\xd3\\xd1'\\xcf#\\xfbL\\xf5\\xd6\\xee\\xd1\\xa15\\x1ft\\xb4\\x9d}\\x80]G]\\xc7N\\x87\\x1a \\xa9\\x0b\\xb7\\x16\\xb0O\\xadK\\xac\\xfd\\x04\\x07\\xdd\\x8d9\\xda\\xae{\\x80]G\\x9d9\\xcc\\xeeP\\xdb\\x0dk<\\xd6\\xa9u\\xc3,7\\xe4\\x9c\\xbb\\xfeiv\\x1d}\\xae\\x93\\xed>\\x83\\x0d\\xbe\\x0f7\\x9f\\x84#\\xf0f_=|\\xa9\\xff#\\xa5\\xd4\\xbe\\xb3\\xf2\\x1e\\xb8\\xc0\\xbd\\x03\\xf1\\x12\\x9b\\xdb\\xa8c\\xf4z\\x87\\xe5\\xb9\\x15>p+s\\x1d\\x8c\\x97h\\x83qg\\xea\\xf9\\xcf\\xb1\\xd9?\\x94\\xe8aM\\xd1?)/\\xd1\\x0c\\x13\\x1c\\xb0\\xd7;R\\xefa\\xab\\xdd=8/\\xb1\\xd2\\xa3N\\xdb\\xf3\\xb7\\xfe\\xe6|\\xbd\\x87\\xad\\xfa\\xfe\tz\\x89\\xd5\\x1fw\\xf4^\\xe0PM\\xf7\\xa1\\\\\\x0fk\\x0d\\xfbP\\xbdD;\\x8c:\\x87\\xcf;\\x04\\xaa\\x93\\xf7\\x1e\\xb6\\xd2\\xf6\t{\\x89\\x95\\x1eu(\\x9f\\xaf\\xd2\\xfa\\x18\\xbe\\x87\\xad\\xb4\\xe3\\x9c\\xbd\\xc4\\xba\\x0f>\\xa1\\xafo\\x91\\x8e\\xb6\\xd0\\x81t\\x0fk\\x91\\xfdS\\xf7\\x12\\x0d2\\xee\\xb8\\xbe\\xa3\\xb7\\x87\\xeb\\x00\\xbeD\\x8b\\x8c:\\xbb\\xaf9\\xa1\\xaf\\xa3\\xaa\\x7fZ\\xdf\\xc3\\xda\\xa0{&_b\\xed\\x07\\x1e\\xe4\\xe7\\x1b\\x16\\x9a\\xa3\\xfb\\x1e\\xb6\\xca\\xf6\\x11}\\xbe\\n\\x8f:\\xc6\\xcf:\\xac\\xef!jDJ\\xe9\\x89\\xdc\\x92-\\xed\\xe8\\xeeT\\xa4sS\\xeb\\xad\\xd4\\xff\\xff\\x90\\xceJ]\\x92\\x8a\\xf0\\xba*\\xe7K\\xccq\\xa4\\xcc\\xd6\\x9dm\\xc1%\\xcc\\xa4\\x1d\\x96t\\x85\\xd4=2\\xd4\\xe7A*\\xa1\\x1c\\xef\\xf3\\x7f0Z\\xea\\x9f|\\x95\\xd8\\xbf\\x13\\xa9\\x7f\\xea\\x8at\\x9c\\xf8\\xea8E\\xacP3\\xf5\\xdd\\x0f\\xad\\x8a\\xa7\\xf5\\xc8\\x06<W\\x80\\x82\\xaf\\xd8\\xf6=M`\\x84(\\xe8Ro\\\\\\xa7-Z\\xc7\\x7f\\xea\\x00\\x14TqB.\\x92\\xf6\\x0e\\xf4xCn\\x9f<@\\xa1\\xbb\\x85\\xe3\\xf9\\xd6\\x8b\\x16\\xb4w<@\\xb1Z[.1'\\xcf:\\xe52E\\xdeUtG\\x19\\xa9\\xe6\\x91\\xe8\\xd1\\xfe}&\\x8e\\xce\\xfc\\xaf\\xae\\x8d(!a\\xfc\\xde+\\xd4\\xa1\\x0c\\x9b\\xbad\\x1b\\x9c\\x97\\xf3|\\xe9\\xabC\\x7f'\\xafoo\\\"b\\xa5WI\\xfd\\x8c\\xf2%\\xda\\xe1J\\xd2\\xc2+\\xbau\\xd5\\xad\\xa3K9\\xd8\\xee\\xad\\xbav_8,F\\x95\\xdf\\xfa\\x03Te\\x0c\\xe3\\xe5m($\\xf5\\xb2=\\xac4\\x1ekzy\\xab/A\\xa0\\xe9\\x98@\\xd3\\xcb[w\\x94\\xe9\\xe5-\\x84\\x98J\\x81\\x10S_#U\\x12\\x1a\\xfcl\\x81\\x10S\\x081u\\x0b\\x84\\x98J\\x81\\x10\\xd3}\\x81\\x10S\\x081\\xf5\t\\x84\\x98B\\x88\\xa9\\x14\\x081\\xf5\\xb7i\\x081U\\x02!\\xa6\\x10b\\n!\\xa6R \\xc4T\\n\\x84\\x98J\\x81\\x10\\xd3\t\\xaa\\xe1\\xbc\\x06!\\xa6%\\x84\\x98B\\x88)\\x84\\x98\\xf6$5\\xdc\\x0fBL\\xa5@\\x88\\xe9\\x9f!\\xc4t\\xcb\\xd63I\\xa70\\x88\\x84\\xa5-\\xb4C\\x1d\\x8b*\\xec}6\\x1f\\x920\\x06=p\\xa1\\x04\\xa3\\x90\\x81 \\x020\\xda\\xeb?\\xd2\\xd3o{\\xf4;\\xfa\\xf67\\xc1#<\\xfa\\xa3\\xbc\\xf8=o}\\xdf<=\\xcf\\xfd\\x18o}\\xcf+\\xdf\\x7fC\\xf7\\x05c\\xbd\\xf2\\x8d\\xf7\\xbd\\xab~o\\xb12\\xc6\\xfb\\xee\\xf3\\xb2\\x1f\\xe4YO\\xf2\\xa6\\xa7z\\xcdG{\\xca\\xc7z\\xc7\\xdd^\\xf0\\x89<\\xdfSz\\xbb'\\xf2p\\xc7\\xbc\\xda\\xe3<\\xd9\\x01\\x8f\\xf5p/u\\xd0\\x1b\\x9d\\xe0\\x81\\x1e\\xebu\\xf6x\\x97Gz\\x94'`\\xe3\\xec\\xcd\\x87\\xb2wXO\\x85&\\xc3\\x91\\xce\\xe3\\xd6I\\xbco\\xf6ik\\x17\\xa1V\\x89J\\xb3\\xfc\\x9f\\xde\\xea\\x8ak\\x0d\\x8f\\xaa\\xcc\\xa8X\\xe95\\x11\\xf1\\xe2Z\\xcbv3\\xfc!\\xf4\\xf8\\xc7W\\x17\\xef^\\x9d\\xbd\\xb8|\\xf5\\xe3\\xc1\\xf4\\xd8=\\x0ec\\xc3|\\xa3\\xf5\\xa2p\\xd7'D\\\"\\x94\\xf4AG\\x99\\xf3R\\x9e\\x97\\xa0\\xb4\\x1fZ\\xe8@\\x03[U\\x9d\\xd5x\\xa8iI~Z\\xffP\\x07\\x96\\xafKR\\xb5g>t\\x8a\\xad\\x16H\\xfb\\x84\\xbff\\xc0g(\\xdb\\x90\\xec\\xaa\\xbf\\xe0\\xc2k\\xb1\\xb5\\xe4\\xaayj\\xcdKR\\xe5\\xd76KN\\xbc\\x19K6\\xee\\xe3\\xbf>E\\xef\\x9e\\xa2\\xf7O4\\xa3u\\x7fR&\\xd9\\xee\\xdb\\xef\\xff\\xfd\\xea\\x1bD\\x8aB\\xd4.\\x13\\x03\\xda\\xf5\\xd4M;\\xc0\\xdb\\xf5\\x99X3q!W\\x8a,N\\x0e\\xb9R&\\xa8 \\xe4J\\x81\\\\)\\x87\\x97\\x1ar\\xa5@\\xae\\x14y\\x0dr\\xa5@\\xae\\x14\\xc8\\x95\\x02\\xb9R W\\xca}\\x17\\x18r\\xa5@\\xae\\x14\\xc8\\x95\\x02\\xb9R\\x06U\\x1fr\\xa5(\\x81\\\\)\\x90+\\x05r\\xa5@\\xae\\x14d\t\\xe4J\\x81\\\\)\\x90+e\\x90\\xcf\\x00r\\xa5\\xfc\\x11s\\xa5TM\\xc6\\x08\\x0bC\\x9c\\xb8|\\x93&Ly\\xa02w\\xcb\\x96\\x9e/\\xe5!\\xca\\xf6\\x10IS\\xcc\\xef_B\\xd6\\x14\\xfe\\xe5gN\\x91\\x94\\x0d\\xcci5\\xc7YF\\xeb\\x92\\x9f~\\xcah\\xc9\\xccW\\xfd\\xdd\\x9fQ\\xc5\\xb2\\xdd_\\x8d\\x92\\x17J\\x87\\xacbNd\\xc8\\xde+\\x03\\xdbk\\xfd_1e;\\xcd\\x16\\x11O5z\\xc4\\x9bI\\xc9j\\xcb\\xa9\\xfbB\\x95\\xc3\\xd8\\xb0\\x93\\x88\\xa5\\xffZ}\\xcf\\xd1fd\\xd1\\x160\\xb6\\x1d\\x94\\xbf#\\xdcp\\x95\\xf4\\xf4\\x9bV\\x9cQ\\xb6\\xa5\\xac\\x9f\\xcdH\\xdf,\\x19p$\\xdb\\xec%\\x19AMC\\x9b\\xf5\\xae0\\xd1\\xe2\\xcblX\\xfe\\x11/Bl\\xa4S=\\xf3\\x8a&\\x13S\\xd3v\\x9a+j&\\xea\\x97\\xcd\\x98@]\\x9d\\xb6\\x84:\\x89M\\xf7\\x15\\xbd\\x12\\xee\\x93uz5\\xfb\\xef\\xfe\\x87\\x93\\x1d\\xb5\\xdf\\x92\\x9b\\xe48\\xfdD;\\xa2\\xfc\\x8a\\xc3\\xb6\\xc7$\\x94\\x8aN\\xf7\\xba\\xe2\\xbb\\x8b3\\x1d;\\xd3\\xda\\n2\\xea\\xf4\\xaeBF\\x9d\\x94\\xf1E\\xc9X\\xee\\xbbW!\\x87\\x8c:Z\\xf8Xn\\xbd-#y\\xf6^}\\x90Q\\x072\\xea@F\\x9d\\xe1q\\x02\\xb6\\x8c\\x8d\\x19\\x08\\x8cO\\x8e\\x15\\x80-\\x13\\xc5\\x15\\xd82e\\x8c\\x81-\\x13\\xc5\\x1b\\xd8\\x12\\x8b=\\xb0e\\\\\\x1cBp\\x0c\\x87\\x8c:\\x0e\\x81\\x8c:\tA\\x11\\xfe\\x01\\x1b2\\xeaH\\x81\\x8c:\\x90Q\\x072\\xeaH\\x81\\x8c:R \\xa3\\x8e\\x14\\xc8\\xa83A5\\x9c\\xd7 \\xa3N\t\\x19u \\xa3\\x0ed\\xd4\\xe9Ijv\\x13\\xc8\\xa8#\\x052\\xea\\xfc\\x192\\xea\\xd8\\xe0\\xb1\\xa5\\xa8\\xcb\\xa1\\xb2\\xee1\\x08W\\x03\\x06\\xcb\\xab\\x0dX\\xc9\\xa9\\x82\\xcb\\x91\\x8d\\xb1\\xad\\xe8\\x1e\\xa6\\xdes\\xbf\\xb7\\x90:\\xaf\\xea\\x08\\xa2>\\x189_\\x11\\xb2\\xc5\\xd5\\x15\\xe1\\xa7\\xd7\\xdf\\x9c.0#\\xf3\\x15!~\\x9c\\xfc%f\\xe45!\\x0d&.}\\xd7\\x98\\x11\\xb4\\\"\\xcd\\xfew\\x87+RrM$\\xd3\\xbfi\\xbfS\\x976\\xd1\\xc1\\xbf_\\x13\\xf2\\xab,\\x88~\\xc5\\x89\\xa9\\xfc\\x91\\xe2\\xdf][\\xd9\\x12\\xf4\\xcdh\\xdc\\xd5<mZ\\x8c\\n\\xf7\\xf9\\x9f\\x8d-;\\xcfu\\xea'\\xbf\\xa8\\xb6Q\\x83\\xac*\\x82\\x98[\\x15 \\xa5\\x80\\x94z\\xdd\\x84\\xf7\\xe0d\\x8c\\x0dA\\xaf\\xcd\\x88\\x13\\x1a\\x88$\\x9bl\\x8dY`$\\x12\\xb7\\xfc\\x84Yg(Zc\\xa6\\x1c\\xaf\\x98#\\x8c\\xd6\\xf95)\\xf58\\xb4!\\xf9zcL\\xdc\\x19x\\x8c\\\"}\\xedh\\x07\\x9c\\xc6\\x1a\\xb6\\x04?\\x91\\x9bo\\xd8<\\xaaF\\\"a\\xb2\\x86\\x98!F\\x11C\\xfe\\x12W:\\x0f9\\x86!m\\xba\\xbdq\\xa8Q\\xd0\\xfa\\xfe\\xcd\\xe7P\\x1f\\x02\\x06%\\x18\\x94\\xfeh\\x83\\x92\\\\)\\x06F\\xa4\\x0by\\xbd3\\x1e\\xb5\\x8bK\\xb1\\x10\\xbam\\xf5\\xa1-]\\xd6\\x05\t\\xaf\\x84\\x94B}\\xcb\\xd1\\x8eK\\xb6Yl\\xe9\\x12l\\x95mT\\x06\\x00\\xb5I\\xbb\\xdej#XV\\xda\\xdf\\xae\\x07\\xdbb\\xb8%\\x96t\\xee_\\xa4\\xa1Fw\\x9f\\x11\\xdf\\xb9C\\x8d\\x91^h\\xccz\\x85hu\\x19i\\x96`\\xcf:k0\\xb1\\xf4\\xff\\xda\\x0e^\\xf7\\xe8\\xfb\\xda\\xa4\\x03\\xc0E\\xc1\\\\\\xbeN\\xf3\\xb6\\xb9\\xc2\\x82\\xe7KR\\xd2m^\\x8a\\xbdF\\xa8\\x8e\\xbeq\\x08Eg\t\\x94\\x08\\xc6\\x05\\x8b\\x86\\x16\\xb4.\\xf5\\xa6\\x15o\\xe5\\xb6\\xc7\\xde8x\\x14f\\xd8`\\xe9\\xbe\\xed\\xe5\\x82\\xf0\\x1bb\\xa6x'\\x8cJ\\n\\xccx\\x9e\\xe5\\xfcn\\xbe\\xad\\x0b\\x9e\\xef\\x8a\\xdc\\xc5\\xa4D\\x0fj)g\\xa1l\\x1b\\x99\\xec/b\\x02U\\xb9a<\\xed\\x13YMMN\\xb9[\\xec%\\x06m\\xf0\\xb5\\x13j\\xd5q(j^\\x0e\\x99&0\\xe6Nf\\x19\\xbb,M\\xbe\\x10\\xcc\\xb5\\xeb\\xc3^\\xca\\xa5\\xb5\\xa0\\\"\\xab\\x0b\\xe5\\x8d\\xc9\\x99\\xd6\\xbet\\x19!e\\xa0\\x08\\xd4\\xbf\\x1b\\na\\x8d\\x08\\xbd\\xef\\xe3l\\xa3\\xdb\\xbc\\x14K\\xdd\\xb9\\xec\\xfa#\\x0b\\x10\\x1b\\xa8:\\xef\\xe8f\\x1a\\xca\\xcb\\xa6\\xad\\xa9\\xab\\xca\\xf5\\xeb\\x1f\\xa4\\x0c\\x05\\xbb\\\\\\\"\\xc27v\\x84\\x87\\x0b\\x956oN\\xeb~\\x13T\\xd1\\xd3\\xa5\\xacj\\x9a4Q\\x0bo\\xbb\\xd9\\xe0j\\xedgor\\x8a\\x18)\\x97bVo\\x92\\xa16]u\\xef\\x19]\\xee\\x0b{\\x06\\xd4\\xd3\\xc4_\\x7f\\xdd\\x9f\\x02;\\xcf\\x87{\\x8d\\\\\\xc4(\\xbd{\\x07\\x90r'\\xd1Z\\xba\\x9f\\xf2r\\x8dnO\\xc9u\\xdf\\xe7\\xe9\\x9a\\x86au\\xde\\xbb\\n\\xab\\xf3\\xcf\\xbd:\\xcf\\x17\\xd9)\\xde\\xed\\xd8\\xa9\\x1cxV\\xa4\\x12ks\\xb1N(I\\xc1N?\\xe9\\xbf\\xe6\\xf9\\xf2\\xf7S\\x99S\\xea\\xf4\\x93\\xf8G\\xfe\\xbfh\\xb9\\xf4\\xa6\\x1b\\xb2\\x12\\x89\\x06z%\\x1f\\xd1\\x81;\\x1d?\\x9bR\\xd68w\\xd5\\x1ew\\x87+\\x9e\\x8b9\\xa7B\\x92\\xbf\\x83\\xcb\\x16\\xf3\\xd3%C\\xf9\\xd2\\xb9\\xec\\xef\\xbcI\\xdfp\\xb4\\x8b~\\x97%m\t\\xb6\\x03=\\\"\\xdaF\\xd4\\xcepW\\xaa\\xd3\\x841\\xb0c\\xbap\\xb8\\x89\\x93\\xcc\\xd4\\xfd\\xc8\\x10d\\xa2\\x05\\xc6\\xc1\\x07\\x1e\\x07\\x83XT3\\xae\\xf9\\xda\\xa0\\nY\\xb1\\x86\\x19\\x1d\\xb8b\\x7f\\xd8\\x03\\xe1%+\\xb2V\\x8d\\xa9\\x91\\xb2\\xc81\\xf0>\\n\\x12\\x9b1\\xce_\\x9ey\\xe7\\n\\xb91\\x95a\\xd4\\x84\\x9d~\\x92\\xf1\\xe9\\x81\\xc8\\xd0\\x1f\\xc5\\xdd?c\\xb6i\\xe3@Q\\xb3\\xb5\\x15\\x1b\\x0b\\x19\\x8f\\x9d\\x97\\xeasZa\\xce\\x9d\\xc1\\xbd\\xd1rb\\xeaz\\xa4\\x03\\xbb\\xcc\\xba\\xb7\\xd7b\\x83\\xcd\\xb9SN\\x95\\xa5\\xaf\\x93\\xc6\\xfaI\\xcb\\x08\\xb1\\xcc&\\xed\\xee\\xb2\\x9bC\\xa9{\\xd4ol:>\\xc0\\xb0\\xfd\\xb8\\xef.\\xce\\xfa\\xcb}\\x98\\x03`\\x0e8\\xae9@\\xf6\\x19_\\xf3\\xbbt\\xf7\\xb0\\xc7\\x7f\\xd3C\\xf5\\xdfO\\xff\\xd6\\xce!\\x7f\\x7f\\xf2o\\xa7\\x7f\\x93w\\xdb\\xe1B\\x9f}P\\x96E\\x0e,\\xcce\\x7f\\xbd\\x947\\xb5\\xc3qQ8\\xea\\xed\\x0e\\xb2\\xb7\\x9e?1\\xf5;\\xd2\\x81x\\xdf \\xb6|\\x8e\\xde\\\"Z\\xc6\\x01m=\\xcd\\x03\\xa8^\\xd3qc\\xa8l\\x15t%W\\x13\\xa7\\xfb\\xcb\\x1b\\xe5\\xd0\\xf1\\xea\\x93\\xe3\\xbfJ\\x8e\\x8f\\xc2\\xe1\\x8b*\\x06XOV\\xab\\xba\\\\\\xe7\\x8b\\x82 N\\xafH\\xe9\\xe6\\x11JO\\x9f\\xfcPS\\xd9E:4;\\xad\\xb9\\xc9<R\\xe0;\\xb2L(V\\x8a\\x9d\\xdb~\\xd0\\xa5M\\xee\\xbf^X\\xef\\xfc\\xec\\xfd\\xb7_7ov*\\x94\\xa5a\\x0d{\\xd7y\\x8f\\xb6\\xaf\\xf9\\x16\\xd6\\xd4/\\xbf\\xf9~]:5\\xb1\\xfbC\\xb3\\x0f\\xef\\xf7}\\x16[V\\x88\\xe6\\xb5\\xd67\\xef\\x7f\\xb3\\x1eden\\xec\\xb4F\\xebgM\\x04v\\x0d\\x02J\\x82\\x1d.\\x02^\\x91[>\\xbf\\\"w\\xfe\\x89+\\xc9!\\xef\\x0d\\xfe\\xeaTu/\\x8f\\x83\\x11S\\n\\xb3\\xb2\\x12\\x7f\\xeaXH\\xcc\\xb4\\x17\\xf5\\x02\\xaf\\xc9;\\x957f\\xa6\\xae{\\x94\\xb5\\xdc7\\xa1V\\x18\\x92\\xa0-e\\x1c\\x11\\x19a(\\xc3\\x12g\\xe8\\x9c[\\xc4\\xc9\\x1d\\xbfC\\xb9/\\xd8^\\xe6b\\x91\\xe1\\xa7%E[Z\\x11\\x13n\\xea\\xea\\x15\\x9cr\\xec\\x99\\xe7\\x93\\x8d\\xe9I\\xa5!$\\xe6\\x9c\\x96\\xaf\\x97V\\x94\\x7f\\xd8\\x99\\xa7T\\x84\\xac\\x15\\x8e\\xe9\\xab\\xafmh\\x95\\xb5C*\\xf3\\x0dh7\\x98!F\\xf8S\\x94s\\xd6\\x9e\\x17S\\x97\\xaa1/U,\\xe4M\\xce\\x02\\\\3\\xf7\\xba\\xfb\\x8c\\x96%Q\\xfe\\xfe\\x03W\\xdez&\\x87\\xb57\\xac\\xbd\\x9d\\xd7\\x8fi\\xed\\xdd\\x8e\\xfbb\\x94\\xf3\\xb5\\xc3\\xdeH\\xaa\\x87N\\xac\\xfb_C\\xb0\\xcaK\\xdd\\x9bu\\x0bm\\xc6Y9\\xb8\\xae{\\x11\\xd9\\x0dj\\x13\\x1b;\\xdf\\x96\\xc5\\x9d\\xcc\\xaf@W\\x88\\xaeV\\x8cpD+\\xd4-.\\xb2\\x12e02\\xf5\\xd1X\\x91\\x14f\\x96\\x11U\\xf9|v\\xec\\x8d<\\xba2\\xd2\\x94e\\xbd%U\\x9e\\x99\\xdf$\\xf3\\xde>\\xff\\xe5fCJc\\xf8\\xbal\\xc6\\xd5^p\\xdb\\xb9\\xd4V\\x10\\xc6Z\\x13\\xaa\\xc0p\\x95\\xa9\\xf0\\x8a\\x0c\\xb4gW\\xfd=\\x1b\\xd7s0\\x91e\\xde\\xe1\\xc7\\xcf\\x984q\\x9e\tJM\\xfbv\\x0b\\xd6\\x03~]\\xf4FM\\x15\\xf0l\\xfft\\xbeB\\x05Yq3\\xa1\\xeb\\x19\\xbe9\\xef\\x8a6\\x1dD\\xbdD\\xd8yq\\x87\\x08\\xce6\\x08\\xefv\\x9f\\xd1\\x8a\\xf64\\xdb>\\x1f\\xb2\\xa5\\xf5\\x84\\xb0\\xa8l\\xa1T\\xee\\x9d%n\\x9c\\x97\\xcb<\\xc3\\x9c4y\\\\\\xb4\\x05\\xe5\\x8d\\xba!\\xd9\\xea\\xf22+\\xeaeoA\\x8d\\xd5[\\x9aD:\\xbd/&GlkA!\\xa6\\xe1\\xce\\xaa\\xb5\\xa3\\xec\\xc39\\xeb}\\xad^\\x15dD\\x9d\\x98K\\xd5\\xdc*\\xbbW\\xdb\\x1fE\\x97\\x9b\\xe9\\xde\\x94\\xafKZ\\xf5vb\\xa67v_\\xa1,s\\xe8\\x87\\xf5\\xe52\\xb5>`E\\xaeI\\xc5\\xbc>\\x93\\xde\\xc7\\xd3w\\xf7?\\\\n-\\xd3*\\xe2\\xee\t\\x1d=\\xe2\\x1d\\xa4\\x94y\\x83h%\\x93&v\\xab\\xff>/3\\x19^\\xc2\\xb6\\x94=c\\xcb+\\xf4\\xf5\\xec/\\xdfMj\\x8d\\xa9|1\\xa7\\x9f6\\x98mb\\xfeq\\xb5\\x95\\xf48\\xc8\\xbd[2\\x8fk\\xe6\\xc4\\xd4\\xf7\\xf8=3\\xbe\\xa5\\xd4\\xa8-\\x9f\\xdf\\xbf\\x12]\\xcd\\xa4\\xec\\xf9\\xa7\\xf6\\xac$\\xfaU\\x86zUb>\\x95a\\xb68\\xd8\\x9f\\x12\\xb7\\xec\\xc4\\xbe\\x94\\xb8'e\\x90\\x1f%a?\\xd7V`\\x8a\\xed\\x1c\\xec\\xe6`7\\xe7\\xbe~L\\xbb\\xb9\\x01\\xc7\\x91\\xb9\\x11\\xcdJum\\xf4xU\\x1b\\x1f\\xa4\\xce\\xf6\\xb4\\xc8\\xd0\\xae\\\"\\xab\\xfc\\xf6\\x89\\x8bl\\x9263\\xa2\\xcf\\x0b\\xc6\\x0c\\x8ct\\xc0E\\xd1\\x8bt\\x10\\x83G\\xbe\\xc8\\x9e\\x19\\xa5\\xa1p\\x87K}\\xcf\\x97\\x1a\\xed\\xe0\\x8a\\x04\\x91\\x8c\\xd4\\x8eIZ9`\\x05\\xc1H\\xb9\\x9ck\\x96sh\\xf6\\x0c\\x85<\\xc4'<\\xd4{\\x93\\xe6U\\xcbDR\\xfa\\xe0X\\xd5&\\xb2\\x8a2\\xf6L-2\\xe4\\xb4\\xe6\\xeb\\xde\\xba\\x050\\x93\\x88<g\\xbe\\xd5\\x84T\\xe6Z6T$#\\xf95y\\x98\\xda\\xf7^6\\xa1\\x01d\\xe8\\xfe\\xa0\\xea'L\\xf0=\\x8aphr\\xd7\\xd3\\xb9\\xee\\xe0b*\\xef\\xea\\x83\\x99\\x1cf\\xf2\\x87\\x9f\\xc9\\x07\\xcce\\xea \\xd0\\x94I\\xecL\\xde\\x99:\\x95\\xe9\\x13F\\x9d3\\x98\\xadI_\\x87\\xf9k\\xcc\\xfc\\xa5\\xd3\\xc8\\xce\\xf5i\\xae\\xa1A\\xdc\\xdd)P\\xa8c\\xa0\\x94\\xf6\\x976\\x01\\xf4\\n\\xda\\xb1T\\x913\\xe9\\x9a39q\\xd5=\\x88q\\xec\\xcd\\xc3\\xc9e\\x9a\\xd8\\xce\\xc5\\x84a\\xddnvI\\x83\\xbbK\\xc9i\\xa7\\x1b\\xc0\\xde\\x0dF|\\xe7\\xf5!\\x1c\\x16H\\xb7\\x0f\\xe9\\xf6\\xb5@\\xba}H\\xb7\\x0f\\xe9\\xf6!\\xdd>\\xa4\\xdb\\x87t\\xfb\\x90n?u\\x95\\x04\\xe9\\xf6\\x1b\\x81t\\xfb\\xb6@\\xba}H\\xb7\\xef\\x10H\\xb7\\xef\\xbc\\x07\\xd2\\xedC\\xba}\\x04\\xe9\\xf6!\\xdd~W\\xfc\\x9b[H\\xb7\\xdf\\xf9\\x1d\\xd2\\xedC\\xba}%\\x90n\\x9fC\\xba}\\xa7\\xca\\xc1\\xe9\\xf6\\x87@\\xb9\\xb4\\\"\\x16\\x9e\\xab\\xfe\\x9aK\\x1c-\\n\\xeb\\xbe\\x97wu`]\\xf1\t\\xcf_\\x9e\\xa1B\\xfa\\x12\\x0cr'\\x06\\xe1.\\xad\\xc2\\x01\\xed*m\\xfa\\xfa\\xd1B\\xbb\\x0e\\x03\\xd9\\xf29\\xa0%]\\xa4\\xdc\\xc3\\xc7Ir\\xac\\xe8\\xd0J\\x0d\\xa3:\\x93\\xc9\\xb4b\\xdb \\xfcNo\\x9dPB\\xbdP\\x02l\\x86\\xd2\\xaa\\x87\\x12\\xdd/F\\x86BhAen?J`[15\\x94\\x86\\xe2p\\x1a\\x1a\\x01\\xa9\\x85+\\x80\\xf9&\\x19VCSAkh$\\xbc\\x16T(\\x8c\\x9b\\x0c\\xb1\\xa1\\xc3a64\\x18j\\x0b\\xaa\\xd2\\x10\\xc0 \\xb8\\x0dM\\x0d\\xb9\\xa1\\x81\\xb0\\x1b\\x1a\\n\\xbd\\x85[v\\x03\\xcb\\xa5\\xc2ohj\\x08\\x0e\\xa5\\xc1phJ(\\x0e\\x1d\\x0c\\xc7\\xa1q\\x90\\x1c\\x9a\\n\\x96C\\xa3\\xa0\\xb9pw0\\xc9dc\\xfd\\xe6^ :t\\x8f0\\x1d\\xba\\x1f\\xa8\\x0e\\x0d\\x84\\xeb\\xd08\\xc8.6\\x04\\xa7\\xc1vhZ\\xe8\\x0e\\x0d\\x80\\xef\\xd0p\\x08\\x0f\\x8d\\x80\\xf1\\x12\\x86\\xcc'\tP\\x1e\\x9a\\x02\\xceC1H\\x0f\\xa5/\\xcf\\x12\\xa0=4p\\x157\\x18\\xe2\\x0bj\\x93\\xf0_\\x02\\xcc\\x87\\x06\\x94rB\\xb8\\x0f\\x0d\\x82\\xfc\\xd0\\xd4\\xb0\\x1f\\x1a\t\\xfd\\x85\\xdb\\x15\\x8b\\xc3\\x7fh<\\x04\\xe8\\xd5'\\xde\\x18\\x83\\x01\\xd1dP JG\\xb4P\\n$\\x88\\x86\\xc1\\x82(\\xe6u\\x1f\t\\x0f\\xa2\\x04\\xbd\\x01\\xc7\\xdeDP!\\x1ae\\xdct\\xc8\\x10%\\xd4r\\x04t\\x88\\xc6\\xc2\\x87(l\\xd5\\xe9`D\\x94\\x0e%\\xa2D8\\x11%C\\x8a(\\xcd\\xea\\xc3\\xa1E4\\x08^DA\\x88\\x11M\\x053\\xa2\\xa1P#\\x1a\t7\\xa2a\\x90#J\\xf8\\n!\\xe8\\x11\\xa5<\\x9f\\x0eA\\xa2\taH\\x94R\\xb4@?\\x9b\\x0e\\x92D)\\xb0$:\\x00\\x9a\\xf4*\\x147\\x86\\xe0I45D\\x89\\xa20%\\x1a\\x0bUz\\xb5\\xa9\\x1dp\\xd8\\x19\\x90\\x00Y\\xa2 \\xb2\\x82\\x82\\xd0%\\x1a\\x05_zU\\x05aM4\\x16\\xda\\xf4jS\\xab\\xcc\\x80On:\\x88\\x13%\\xc1\\x9ch\\x04\\xd4\\x89\\x86\\xc1\\x9dh\\x0c\\xe4\\x89\\x06\\xc3\\x9e(2\\x97G\\xa0(4\\x00\\x8eJ\\x85@\\xd1\\x18\\x18\\x14\\x0d\\x85BQ\\xb8\\xe2c Q\\xaf2\\x0bpL\\xed2i\\xd0h\\xb0C\\x94\\xeb0<\\x8a\\xa6\\x85HQ\\x0c&Ea\\xa8\\xd4\\xfb\\xccX\\x08\\x15M\\xd8v\\x07@\\xa9h\\x10\\x9c\\x8a\\x02\\xcb\\x97.`\\xe6\\x8b;L\\xf1\\x03\\x9c\\x1b$ii\\xe1\\xa0\\xed\\xb1l\\x9dW4\\xa3\\xadK\\x915\\xd0\\xaag\\xdc\\xe6o\\xc1=\\xfd\\xc5\\xf7\\xee\\xea\\x94\\xdaDZ2N+\\xb2\\xec\\\"\\xbf\\xe6\\xdcqW\\xbe\\x80P\\n`m<+_\\x9aAl\\xf7o\\x1d\\x1f\\xe8\\n\\xd9}!\\xbboO\\x1e$\\xbb/J\\xea\\xf8vjRU\\xab\\x0e\\xaf&/\\xd1\\xfa\\xdd\\xc5Y\\x1bc\\xacGb\\x86n\\xc47s}\\x1e7\\x9e\\x96\\xd1J\\xe9\\x90\\x93N\\xa5*\\xdfL\\x99\\x1bsR\\x9fm\\x19\\xa79\\xcc\\x13\\xef\\xe9\\xb6-wp\\x08\\xaf\\xc8\\x8eH\\x8f\\xdbK\\\\5\\x1f)\\xb6H\\xea\\x98E\\xb6o\\xdf\\x12\\xa9;2'\\x87r\\xab\\xa1\\xeb\\xd0Pn=\\x00B(7\\x84r;\\xafC(\\xb7%\\x10\\xca\\x0d\\xa1\\xdc\\xadL\\xca+\\x19\\xc2)\\x19\\xc4'\\x81P\\xeeC\\xb9##x#\\x93pF\\x86\\xf3E \\x94\\xfb\\x10~\\xc8\\x10n\\xc8\\x08^\\x08\\x84rC(7\\x84r\\xa7\\xf2:&\\xe5t\\x8c\\xe1s@(\\xb7\\xef\\xb6(oc\\x00g#%Py\\x08W\\x03B\\xb9!\\x94;\\x85w\\x01\\xa1\\xdcR\\xc6p+\\x06\\xf0* \\x94{\\x02\\xdeD\\x9431\\x96/\\xe1\\x9dm \\x94{_ \\x94{\\x04\\xcf!\\xceq\\x18\\xcao\\x18\\xc0m\\x18\\xcck\\x18\\xc6i\\x80P\\xeea\\xbc\\x05\\x08\\xe5n\\xe4O\\x19\\xca\\x0d\\xa7%\\x0e>\\xa3k\\xcf\\xed\\x00\\xa7%\\\"8-\\x11NK\\x84\\xd3\\x12\\x95\\xc0i\\x89G\\x7fZb(+\\xc9\\xe9\\xa7&\\xe1E\\xe0\\xc4D\\x9bK\\xd7$()\\xf7r\\x93\\x98\\xef\\xed\\xcbGrb*\\xfa\\x07HG\\xe2cG\\x8c\\\"\\xcf\\xf1 \\xc9!\\xea\\xdfOq\\x90ONoH#7\\x8c\\xa16\\x84)\\x0c\\xa3\\x08\\x0c\\xf2\\x15\\x1e\\x85Q\\xfa\\xc2\\x04\\xe4\\x85\\x91\\xd4\\x05/\\xe0\\x9bF\\\\8\\x88\\xb60\\x8a\\xb4\\x80\\xb07\\xfa\\x83\\xa7Q\\x16\\xc6\\x10\\x16B0b\\x12]ab\\xb2B\\x12UaB\\xa2B\\x94\\xa60\\x11I\\xe1\\x10\\x8a\\xc2`\\x82\\xc2\\x04\\xf4\\x84\\x89\\xc9\t\\x11j\\xc2\\xe4\\xc4\\x84\\xfb\\xa1%LNJH\\xa7$\\x8c#$\\x04\\x8c\\x1e\\xa3#LFFH\\xa3\\\"8<\\x17\\xfe\\xf1ub\\x1aB\\x8c\\x84p \\x05!@@\\x88.O\\xa2\\xe4\\x83\\xb4\\xf5\\xcb\\xb4\\xc4\\x83\\x18\\xed ^\\xa6q\\x94\\x83@\\x90O\\x8cp0!\\xdd\\xe0\\x00\\xb2\\x81\\x9b\\\"\\x14\\xa2\\x1aLK4\\x08\\xd3\\x0c\\xa6 \\x19$\\xa1\\xe4\\x11\\x82A2\\xbd\\xc0\\x8f\\xdb\\x0d\\xa7\\x16\\xf8u9}\\xe4\\x93\\x90\\n\\x86\\x18+\\x95P\\x10\\xb7I2\\x99`\\x04\\x95\\xc0\\x8d'LD#H\\\"\\x11\\xc4)\\x04)\\x04\\x82\\xa0\\x15\\x87\\x92\\x07R\\xa9\\x03>\\xe2\\xc0\\x04\\xb4\\x81\\x01\\xa4\\x81\\xe1\\x94\\x81d\\xc2@\\x00g\\xf7\\x16'\\xf0L*Q`\\x1a\\x9a@\\xb0\\xf0\\x8e+\\xa3\\x08\\x02\\xc6\\xaf\\xeb\\xd0\\xe7\\xa1\\x07LL\\x0e\\xf0S\\x03\\xc6\\x12\\x03\\xa4w\\xc1Up7-`ZR\\x80o\\x13\\x19%\\x04\\xf8\\x10K\\x1f\\x19`Z*\\xc0x\\\"\\x80\\x07\\xf4\\x1f\\x05\\xf9G\\xe1\\xfda\\xe0~2\\xb4?\\x10\\xd8\\x1f\\x02\\xeb{A}\\x7fiR\\xc1\\xd54@\\x7f \\x9c?\\x00\\xccwVmZ \\xdf\\xd7)\\x0e\\x00\\xf1\\x9d>\\x0f/\\x84?\\x0e\\xc0\\x0f\\x81\\xf5\\xd3C\\xf5\\x87\\xb7\\xa4d\\x98>\\x15\\xa4\\xdf\\x9f\\x19\\x1dI\\x01\\x10f\\x8cf\\xb9\\xdcH\\xc8\\x91D\\x8dQ*\\n\\xd7\\x9bg{WQ\\xba\\x1a\\x14!\\x19\\xd9\\xd3\\xea\\x92mIuU\\x10\\xa5^\\x8c\\x7f\\xe46g\\x9c\\x94Y\\xff\\x01y\\xc3|C\\xc4\\x0e\\xde\\x1b\\xbe\\xaf.#\\xccu\\xc3\\x115S\\x9ao0C\\x15\\xe1UN\\\\n\\x9f\\x03P\\x89\\x8a\\\\\\xe7,\\xa7\\xe5\\\\A\\x8b\\x07\\xee\\xfe\\xe3\\xc1\\xe8\\xeac\\xa9w\\xb6\\xf8\\xa8\\xc9\\x92\\xce,\\xf7\\x10umA\\x9b\\xe2\\xfa,\\x89\\xa6/\\xae\\xfe*\\xa2\\xad\\xe9I\\x7f\\x9d_\\x93\\xb2)\\xcb\\xde\\xf3q\\xb7\\xc2\\x1bQ\\x00\\xb1\\\"\\x11\\xda\\xdei=?\\xab\\xf7\\xe4b\\xf7\\x9dU\\xd2{#\\x86\\x1f\\xae0rU\\n\\x87\\xae\\x9bM^\\x10tE\\xc8NT\\xd7q\\x83\\xd1\\xffF\\x81\\xc7\\xd2\\x85\\x80\\xb7\\xa4q\\xaf#F\\xb7\\xd2\\xf7\\xceH\\xc9j\\x86p\\xb1\\xa6U\\xce7[\\x86\\xb6\\xce\\xc3\\xca\\xb3\\x0d\\xa5b]\\xe5\\\\\\xc6\\x8b\\xb1\\x94\\xdbv\\xcbK\\x94\\x91J\\xc2>\\x19-\\x97\\xda\\xcfMf\\xeb\\x19\\xda\\xe0J\\xba\\xe6\\xae\\x98k\\xec\\x90\\xbd\\xfd\\xd9\\x16g\\x9b\\xbct.\\x8e\\xfaNIt.?\\x0f#(\\xc3\\x8c\\xb0\\xa7\\x1d\\xeb\\xea\\xda\\xe7.\\xef\\x9fmoFe\\xb3t\\xbdOWH,B\\xf2\\xb2&\\xc6\\x1d\\xbb\\xa5e\\xce\\x15RS\\xdc)]X\\xd2K\\x88h%\\xd8\\x97[\\xaa\\xfb\\xd9]\\xef[\\x13\\xce\\x94=;\\x17\\x87\\x05\\xe6O\\x12\\x97\\x1f\\x08\\xcbG/\t\\x93N%\\xab\\x1f\\xcb/\\xf7T\\xfa`\\x15\\xb5A\\xcc\\xd6j s\\xaf\\xe8\\xb5eW\\x15\\xdds.\\x05GBH\\n\\x00I\\x01 )\\x80\\x16H\\n\\x00I\\x01Z\\x19\\x83\\xb1{\\x95AR\\x80}\\x99\\x08o?\\x0cq\\x1f\\x81\\xb9O\\x82\\xbaO\\x8e\\xbbG\\x91\\xf7{\\xc0\\xde\\xef\\x0b}\\xbf\\x07\\xfc}\\x08\\x02?\\x16\\x83\\x0f\\x8e\\xe11\\x14~B\\x1c>\\x15\\x89\\x1f\\x88\\xc5O\\x8e\\xc6\\xc7\\xf1\\xf8\\x83\\x11yH\\n\\x10-\\xd98\\x84\\xde\\xa9\\n\\x92\\x02\\x8c\\xc1\\xeach\\xfd4x}\\\"\\x08\\x1d\\xc5\\xec\\x07\\xa0\\xf6\\xd1\\xe0\\xec\\x81\\xc8=$\\x05\\x80\\xa4\\x00)\\x98~\\xd4\\xaaCq\\xfdtd\\x1f\\x92\\x02\\x18\\x81\\xa4\\x00\\x90\\x14\\x00\\x92\\x02\\xa43\\x01\\x0e\\xe1\\x028\\xd5AR\\x00\\xe7\\x03I\\xec\\x01H\\n0\\x1d\\x97\\x00\\x92\\x02\\x1c\\xcc4\\x98\\xa6\\xcd%\\xb3\\x0d\\xd2\\xf9\\x06iI\\x01\\x9a\\xe0HKKgg\\xdaa'(\\xc8\\xc0MD\\xc8\\xcb\\xe7}\\xafz\\x1b\\xf0\\xc9\\xab:\\x12\\xd6<I\\xb8g\\x9d\\x18\\xee\\xf9^\\xde\\xdbDz\\xca-\\xad\\xfaIM\\x10\\xe7/\\xcf\\xd2\\\">\\xeb\\xa3?\\x81^\\xd5k\\x00R6\\x08\\x81\\xad'I\\x8d^\\x87R\\xa3\\xa3s\\xaeC\\x95\\xcd\\x90 \\xfd{\\xd6\\x07\\x13\\xbf\\xee\\x7f1\\x80M\\x016uH\\x8a\\xdb\\x0d\\x01l\\n\\xb0\\xa9\\xf7N\\x80M\\xa5\\x00l\\xba/\\x00\\x9b\\x02l\\xea\\x13\\x80M\\x016\\x95\\x02\\xb0)\\xc0\\xa6\\x00\\x9b\\x02l\\xaa\\x04`S\\x80M\\x016\\x05\\xd8T\\n\\xc0\\xa6\\x00\\x9bZ\\xe2\\xdf\\xdc\\x02l\\xda\\xf9\\x1d`S\\x80M\\x95\\x00l\\n\\xb0\\xa9[\\xe5g\\x81M\\x8f\\x1305\\xd1\\xb0\\x83R\\xe4Z\\x89\\xe1\\xcf\\x8c\\x02}\\xaeq\\x931\\xb7(\\x8c?Y\\x87\\xdb\\xba\\x83\\xda\\xb1\\n2n\\xf4\\x85\\xa0\\xd6\\xee\\xab\\xf4-G\\x8b\\xb6\\xf6M{\\x1c\\xb0Y(\\x9e\\xbcMC\\xd0\\xfbh\\xde\\x98l\\x14/\\x10J(\\x14J\\x0d\\xd0W\\x92\\xe0\\xd7Bi\\xd1\\xefJ\\xa6\t\\xd9W\\x92\\x14\\xb8\\xaf\\xe4\\x1e\\xab18\\x94_I\\x8aC\\x0d\\x8d\\n\\xeb\\xf7\\xaa2%\\x8d\\x05\\xf7+\\x19\\x18\\xe2\\xef\\xd5\\xd3\\x0d\\xfd\\x0f\\x07\\xfa+\\x99.\\xdc_I4\\xe8_\\xc9d\\xa1\\xffJ\\x12\\x13\\x00(\\x19\\x99\\x06\\xc0\\xabo\\xbf\\xb1\\xf8\\xdf\\xedI\t`\\xa47\\xb6\\x86\\x1d\\xe0\\x07\\x0fM<B5@\\xe9\\x9d9\\xb5\\x87\\xa1\\x11\\xb4\\x83\\xa02\\xb7\\xef9\\xe0\\x8a\\x99\\x9a~\\x80\\xe2\\x14\\x044\\x82\\x86\\x10\\xae\\x80\\xc9\\x96\\x9eBE@S\\xd1\\x11\\xd0HJBP\\xa10n2-\\x01\\x1dNM@\\x83\\xe9\tAUmF\\xf5t\\x8a\\x02\\x9a\\x9a\\xa6\\x80\\x06R\\x15\\xd0P\\xbaB\\xb8e7T\\x86T\\xca\\x02\\x9a\\x9a\\xb6\\x80\\xd2\\xa8\\x0bhJ\\xfa\\x02:\\x98\\xc2\\x80\\xc6\\xd1\\x18\\xd0TT\\x064\\x8a\\xce\\x10\\xee\\x0e\\x98\\x91e\\x9c\\xd2\\x80\\xee\\x87\\xd6\\x80\\xee\\x91\\xda\\x80\\xee\\x87\\xde\\x80\\x06R\\x1c\\xd08\\x9aCl\\x08N\\xa3:\\xa0i\\xe9\\x0eh\\x00\\xe5\\x01\\x0d\\xa7=\\xa0\\x11\\xd4\\x87\\x84!\\xf3I\\x02\\xfd\\x01MA\\x81@1\\x1a\\x04J_\\x9e%\\xd0!\\xd0\\xc0U\\xdc`ZDP\\x9b\\xa4L$P#\\xd0\\x80RNH\\x91@\\x83h\\x12hj\\xaa\\x04\\x1aI\\x97\\x08\\xb7+\\x16\\xa7L\\xa0\\xf1\\xb4\t\\xaf>\\xf1\\xc6\\x18u\\x02MF\\x9f@\\xe9,\\x00\\x94B\\xa3@\\xc3\\xa8\\x14(\\x86T\\x8e\\xa4T\\xa0\\x04\\xbd\\x010d\\\"z\\x05\\x1ae\\xdct\\x9a\\x05J\\xa8\\xe5\\x08\\xba\\x05\\x1aK\\xb9@a\\xabNG\\xbd@\\xe9\\xf4\\x0b\\x94H\\xc1@\\xc94\\x0c\\x94f\\xf5\\xe1t\\x0c4\\x88\\x92\\x81\\x82\\xb4\\x0c4\\x155\\x03\\x0d\\xa5g\\xa0\\x91\\x14\\x0d4\\x8c\\xa6\\x81\\x12\\xbeB\\x88\\xae\\x81R\\x9eO\\xa7m\\xa0\t\\xa9\\x1b(\\xa5h\\x81~6\\x1d\\x8d\\x03\\xa5P9\\xd0\\x01t\\x0e\\xafBqc\\x88\\xd2\\x81\\xa6\\xa6u\\xa0(\\xb5\\x03\\x8d\\xa5wx\\xb5\\xa9\\x1dp\\xd8\\x19\\x90@\\xf3@A4\\x1a\\x05\\xe9\\x1eh\\x14\\xe5\\xc3\\xab*H\\x05Ac\\xe9 ^m\\x81L\\xfbJ\\xa6\\xa3\\x85\\xa0$j\\x08\\x1aA\\x0fA\\xc3(\\\"h\\x0cM\\x04\\x0d\\xa6\\x8a\\xa0\\xc8\\\\\\x1e\\x81\\xef\\xd1\\x00\\x08?\\x956\\x82\\xc6PG\\xd0P\\xfa\\x08\\nW|\\x0c\\x8d\\xc4\\xab\\xcc\\\"i\\xa4v\\x994:I\\xb0C\\x94\\xeb0\\xa5\\x04MK+A1j\t\\n\\xd3K\\xbc\\xcf\\x8c\\xa5\\x9d\\xa0\t\\xdb\\xee\\x00\\xfa\t\\x1aDAA\\x81\\xe5\\x8b\\x1b\\xaew\\xdc\\x9c\\xe2\\n\\xe8\\xd2+\\xfeo\\xce7\\x1a\\xd1\\x95\\xcee\\x99\\xda\\xba\\xcf\\x0b0\\xc3\\xaeK\\x9d5\\xe2n\\x02`\\x9f\\xfa\\xde{\\x97\\xdc5c\\xce3\\x11\\xfcg!4Gg;\\xb8\\x17\\xea\\x05\\xd6Q\\xe2\\x86\\n\\xb2\\x7f\\xeb\\xf8S\\x07Jr\\xcb\\xe7W\\xe4\\xce\\x1f\\xc2\\x9c\\x94\\xbf?\\xed\\xb0\\xc1\\xff\\xf6\\xb9xL)L\\\\\\xbe\\xf8S{t1c\\xca\\x85}\\x81\\xd7\\xe4\\x9d:\\\\b\\xa6\\xae{\\x94\\xc9\\x93\\xbc\\xa5\\x1a\\xa1V\\x1e\\x90\\x8f\\xb6\\x94qD\\xa4_T:Te\\xa0~;\\x14\\xc9s\\xf2\\x03G/WD:\\xd4K\\x8a\\xb6\\xb42\\x87\\xc8;\\xbd}\\xf2\\x1c\\xf7\\x03\\x8d\\x19?\\x0c\\xc1\\xeb+k\\x8e\\x91\\xef\\x9fR\\xdf\\x9c\\xa8\\xde\\xc6\\xcb\\xf9\\xeak\\x1b\\xda>\\x91\\xdfs\\xfb\\x0d\\x96\\xc7\\xb7?E9g\\x06\\xce`\\xa8.U\\xa7\\\\*\\x8f\\xedM\\xeeh\\xb6\\xf1>\\xaf\\x8ab\\xe5l\\xa0\\x1d&b^\\xa2\\xf5\\xbb\\x8b\\xb36\\x8d\\x83\\x1e\\x87\\x19\\xba\\x11\\xdf\\xcc\\xf5y\\xdchZF+\\xa5CN9\\xe6\\x08\\x133a\\x8a\\x99Q:\\x81m\\xcb8\\xcda\\x9exO\\xb7m\\xb9\\x83\\x03xEvD\\x0e\\x16/q\\xd5|\\xa4\\xd8\\x12\\xa9c\\x16\\xd9\\xbe}\\x0b\\xa4\\xee\\xb8\\xac[\\xcf^7Ty2\\xba\\xe4\\xb5\\x03Re\\xf4\\x08w\\xe2\\x0b\\xa9\\x0dPs;$\\xbb\\xe8]\\x85d\\x17)\\xc3\\x81\\x92\\xa1\\xac\\x13\\xe3\\xaa\\xf7*Le\\x9cL\\xca6\\x81d\\x17\\x90\\xec\\xa2\\x95IY$C\\x18$\\x83\\xd8#\\x90\\xec\\xe2P\\xa6\\xc8\\x08\\x96\\xc8$\\x0c\\x91\\xe1\\xec\\x10Hvq\\x08\\x1bd\\x08\\x13d\\x04\\x0b\\x04\\x92]@\\xb2\\x0bHv\\x91\\xca\\xe2\\x98\\x94\\xc11\\x86\\xbd\\x01\\xc9.|\\xb7EY\\x1a\\x03\\x18\\x1a)\\xa9\\x1c\\x8603 \\xd9\\x05$\\xbbHaY@\\xb2\\x0b)c\\x98\\x14\\x03X\\x14\\x90\\xecb\\x02\\x96D\\x94!1\\x96\\x1d\\xe1\\x9dm \\xd9\\xc5\\xbe@\\xb2\\x8b\\x11\\xac\\x868\\xa3a(\\x9ba\\x00\\x93a0\\x8ba\\x18\\x83\\x01\\x92]\\x0cc)@\\xb2\\x8bF \\xd9\\x85\\x96\\xa1\\xc9.\\xee#\\xcbE[\\x8a\\x16\\xb5\\x9f]\\x91;_Qz@\\x9c\\x06\\xc0\\xb1\\x1e\\xc8U\\x1ey\\x05s\\xda\\x88\\xdf\\xacA\\xcb\\xa5\\x8bk\\xdd\\xf3\\x05I\\xf8[\\x0c>1\\x04\\xfcm)\\x13\\x05\\xc8=0]\\xad\\x18\\xe1b[\\xd9-.\\xb2\\\\\\xf4\\x8c\\xf0Y\\xcfV\\xbfu\\xd2x\\xd8\\xc6Z\\xe1\\x82E\\xad\\xe5qx8\\x8c\\xa8\\xca\\xe7\\xb3c\\xcf\\xd9\\xa0+#MY\\xd6[R\\xe5\\x99\\xf9M\\xf6\\xf9\\x0c\\x97\\xa2>\\xca\\xdb\\xb3!\\xa51|]6\\x0e\\xb6\\xde\\xb2\\xfa\\\\j+\\x08c\\xad\t\\x95K\\xaa\\x96\\x81\\xe5Wd\\xa0=\\xbb\\xea\\xef\\xd9\\xb8=>\\x81\\xc3\\xbcE\\xbe\\xcdS\\xad+\\xef5\\xa8\\xb0\\x8ff\\xa0\\x9c\\xafv\\x0b\\xd6\\x18r]\\xf4@Y\\xe5j\\xb1\\x7f:_\\xa1\\x82\\xac\\xb8\\xa1eh\\x9e\\x86Y\\xbaJ\\xbf\\xb1\\xea \\xea%\\xc2\\xce\\x8b;\\x99\\xc3\\x01\\xe1\\xdd\\xee3Z\\xd1&K\\xb4\\xcf\\x87li=!,*[(\\x95\\x03\\x0d\\x12\\x7f\\xe4\\xe52\\xcf0'm\\xae\\x0feAy\\xa3nH\\xb6:}\\xc6\\x7f\\xd7\\x9cX\\xbd\\xa5\\x81\\xf0z_L\\x02\\xc2\\x96gYL \\x16\\xe7\\xa87\\xb8|8g\\xbd\\xaf\\xd5\\xab\\x82\\\\\\xcbW\\x84i\\xe8^v\\xaf\\xb6?\\x8a.7\\xd3\\xbd)_\\x97\\xb4\\xea\\xf9\\xe5Mo\\xec\\xbeBY\\xe6\\xd0\\x0f\\xbb\\xa0\\xb4 \\x16\\x15\\xcc\\xf1\\x01+rM\\xaa\\xce\\xa3\\xa1\\x8f\\xa7\\xef\\xee\\x7f\\xb8\\xdc\\\"\\xdbT\\xc4\\xdd\\x13:z\\xc4;\\x88b\\x9e\\xd0jI\\xaa\\xbec\\xee}^f\\x92i\\xc6\\xb6\\x94=c\\xcb+\\xf4\\xf5\\xec/\\xdfMj\\x8d\\xfbI\\xcft\\xaahuZ\\xb3+M\\xd3\\x7f\\xfa\\xd24)b_\\xf7\\xd0\\x1b\\x9d\\xed\\x83\\xae\\x900\\xfc\\xdd\\x1e\\xf5\\xaeQ\\xe5\\xc9\\xe0\\x94\\x9e\\xb9I\\xbf]\\xdf\\xf8G\\xc9\\xdf4\\xef\\x98\\xdb\\x16\\xfe\\x19\\x08!\\x89\\xd9\\x92\\x06\\x80\\\"\\xc1\\xf4BSeHJ\\xcc\\x8et\\x0f\\xc5\\x1e\\x91\\x11)\\x05q\\x19\\x9e\t)\\x94L+!\\x0b\\xd2\\xc0\\x0cHV\\xa6#\\xa7\\xba\\x84\\xecGSf>J\\xc8z4a\\xc6\\xa3\\xe4lG#3\\x1dy\\xf7\\x94)Y\\x8e\\x82\\x19\\x8e\\xc2D\\xd4\\xb6}aQF\\xea,\\xe3\\x12\\xf3\\x10K\\xc4^\\xaaK|\\xbf\\x12Mt\\x8d\\xf3\\x92q\\x84K\\x05\\x0b\\xeb\\x17i:\\\"\\xda\\xd5\\xd5\\x8e2\\x0f\\xd2FW\\xa8\\xde-1\\x97Q\\x05\\xa5g\\xdf\\xbe\\xaa\\x08\\xf9\\xa7\\xfc\\xb8r\\xcc\\xd8\\xd7\\x14L@\\xd7\\xbf\\x1d\\xf8\\xddJ\\x80\\xdf\\x8d\\xd2f\\x04\\xe0w\\x03\\xbf\\xfbA\\xf8\\xddz\\x89;\\x15\\xcb\\xdb\\xac\\xd7\\x81\\xeb\\xad\\x04\\xb8\\xde\\xc0\\xf5n\\x05\\xb8\\xde\\xc0\\xf5n\\x05\\xb8\\xde\\x1c\\xb8\\xden\\x01\\xae\\xb7\\x11\\xe0z\\x03\\xd7\\x1b\\xb8\\xde\\x89\\xab$\\xe0z7\\x02\\\\o[\\x80\\xeb\\x0d\\\\o\\x87\\x00\\xd7\\xdby\\x0fp\\xbd\\x81\\xeb\\x8d\\x80\\xeb\\x0d\\\\\\xef\\xae\\xf87\\xb7\\xc0\\xf5\\xee\\xfc\\x0e\\\\o\\xe0z+\\x01\\xae7\\x07\\xae\\xb7S%p\\xbd\\x95\\x00\\xd7[\tp\\xbd\\xa75n\\x9c\\xa5\\x0c\\\\\\xef)\\xac\\x08\\\\o\\xe0z\\x03\\xd7\\xdb\\xe2z\\x1b\\x9a\\xea\\xe9\\xa7\\x1e\\xf3\\xd7\\xd0\\xc0\\xad\\x0b\\xea\\x87\\xc0\\xf1\\xbd^^x{zo\\xc2\\xb9\\xbdz\\xf6\\xef\\xa6\\x9c\\xb5\\x19\\x96\\x86\\x18\\xae\\xca\\x93@\\x0c\\xd7w\\xfcQ\\x18\\xe1>\\xba\\xc8(&!\\x0f\\xb2>\\xa2\\x80G\\nb09\\xdf#\\x8d\\xed1\\x86\\xeb\\x11\\xe6t\\x8cbt\\xc8Wx\\x14F\\xf9\\x1c\\x13\\xb09Fr9\\xbc\\x08x\\x1a\\x93\\xe3 \\x1e\\xc7(\\x16\\x07\\xc2\\xde\\x83\\x0ex\\x1a\\x87c\\x0c\\x83#\\x84\\xab&\\xf17&fo$q7&dnDy\\x1b\\x13\\xb16\\x0e\\xe1l\\x0cflL\\xc0\\xd7\\x98\\x98\\xad\\x11\\xe1jL\\xce\\xd4\\xb8\\x1f\\x9e\\xc6\\xe4,\\x8dt\\x8e\\xc68\\x86F\\xc0\\xe81~\\xc6d\\xec\\x8c4n\\x86\\xc3\\x95\\xe3\\x1f_'\\xe6e\\xc4X\\x19\\x07r2\\x02\\x8c\\x8c\\xe8\\xf2$\\xca\\xc6H[\\xbfL\\xcb\\xc4\\x88\\xf10\\xe2e\\x1a\\xc7\\xc10#\\xbbCa\\x8c\\x811!\\xff\\xe2\\x00\\xf6\\x85\\x9b3\\x15\\xe2^L\\xcb\\xbc\\x08\\xf3.\\xa6`]$\\xd1\\x06\\\"\\x8c\\x8bd\\xbe\\x85\\x1f\\xc8\\x1c\\xce\\xb5\\xf0\\xebr\\x82\\x06\\x93\\xb0,\\x86\\x18+\\x95a\\x11\\xb7I2\\xbbb\\x04\\xb7\\xc2\\x0d\\xb0L\\xc4\\xabHbU\\xc49\\x15)\\x8c\\x8a\\xa0\\x15\\x87\\xb2)R\\xb9\\x14>&\\xc5\\x04<\\x8a\\x01,\\x8a\\xe1\\x1c\\x8ad\\x06E\\x80x\\xe0-N\\xe0\\x99T\\xe6\\xc44\\xbc\\x89`\\xe1\\x1dWF1&\\x8c\\x8b\\xd9\\xa1\\xcf\\xc3\\x97\\x98\\x98-\\xe1\\xe7J\\x8ceJH\\xef\\x82\\xab\\xe0n\\x9e\\xc4\\xb4,\t\\xdf&2\\xca\\x90\\xf0A\\xb8>v\\xc4\\xb4\\xdc\\x88\\xf1\\xcc\\x08\\x0f\\x0bb\\x14\\x07\\\"\\xcaw\\x18\\xc6vH\\xe6:\\x0cd:\\x0c\\xe19xY\\x0e\\xfe\\xd2\\xa4\\xa2\\xcdi\\x0c\\x87\\x81\\xfc\\x86\\x01\\xec\\x06g\\xd5\\xa6e6\\xf8:\\xc5\\x01\\xac\\x06\\xa7\\xcf\\xc3\\xcbi\\x18\\xc7h\\x08\\xb1\\x17\\xa6\\xe7.\\x1c\\xde\\x92\\x92y\\x0b\\xa9\\xac\\x85\\xfd\\x991\\x14\\xcf\\x1d\\x030\\xb8\\x95\\xb9\\xa4!0 \\xe5\\x9at\\xa8\\xb3\\xa1\\x8c\\xde\\xe5]E\\xe9jP\\xbcidC\\xac\\xab\\xb5%\\xd5UA\\x94z\\x99\\x97\\xe76g\\x9c\\x94Y\\xff\\x01y\\x837\\xa3\\xca\\x01\\x98DR\\x92\\x99\\xe4\\xbd\\x7f<.\\x9f\\x1f\\x96^&)\\xb9\\xcc\\xc4\\xc5\\x1d\\x9cV&\\xeeT\\x982\\xa5L4\\xa1\\xcc\\xf8t2h\\xeb\\x88\\x89F\\xe1d2\\xd3\\xa5\\x92\\x89&\\x92\\x99,\\x8dLb\\x12\\x99iS\\xc8\\xc4\\x13\\xc8\\x04\\xd2\\xc7\\x84F\\xc5\\xc3S\\xc7L\\x9c8&!mL0i\\x8c\\xaf\\xb2\\x8e\\xa4\\x0cSec\\xe8\\x97\\x11\\xb22(\\x81\\xac\\x0c\\x90\\x95\\xa1\\x15\\xc8\\xca\\x00Y\\x19Z\\x19\\x83\\xe9{\\x95AV\\x86}\\x99\\x08\\xdf?\\x0c\\xe1\\x1f\\x81\\xf1O\\x82\\xf2O\\x8e\\xf3G\\x91\\xfe{\\xc0\\xfa\\xef\\x0b\\xed\\xbf\\x07\\xbc\\x7f\\x08\\xe2?\\x16\\xf3\\x0f\\x8e\\xe11\\xd4\\x7fB\\xdc?\\x15\\xf9\\x1f\\x88\\xfdO\\x8e\\xfe\\xc7\\xf1\\xff\\x83\\x19\\x00\\x90\\x95!Z\\xb2q\\x8c\\x00\\xa7*\\xc8\\xca0\\x86\\x1b\\x10c\\x07L\\xc3\\x0fH\\x04\\xbd\\xa3\\x1c\\x81\\x01,\\x81ht\\xfc@\\xa6\\x00de\\x80\\xac\\x0c)\\x1c\\x82\\xa8U\\x87\\xf2\\x08\\xd2\\x99\\x04\\x90\\x95\\xc1\\x08de\\x80\\xac\\x0c\\x90\\x95!\\x9dyp\\x08\\xf7\\xc0\\xa9\\x0e\\xb228\\x1fHb+@V\\x86\\xe9\\xb8\\x0b\\x90\\x95\\xe1`f\\xc34m.\\x99\\xdd\\x90\\xceo\\xf8#ee\\xe8Q\\x03\\xbce\\xe9\\x910\\x1at\\x7f\\xef\\xb1\\x83K\\x16\\x0d/\\xef\\xd1\\x03\\x06\\x17y\\xef\\xb1\\xfb/r\\x819a<R\\xe0~R\\x01\\xfb\\x19D\\xafIUUr\\xfbn\\xc1\\xeej\\xaa\\x12\\xc3\\x8d}\\x02\\x94z\\xb2\\xa3\\x8cq\\x19X\\xde\\xf9\\xad\\x0b\\x86N\\x1bK>>z\\xba\\xde\\xad+\\xbc$\\xcb\\xb9\\xee\\x1f*\\x86\\xda\\x1f\\x03\\xfdA\\xdf\\x7f&o\\xefE?\\x97\\xcde\\xf1FT(h\\xdf\\x7f\\xbe\\x95C\\xd9\\x89\\xa9\\xfe\\x91\\xc62;\\xed5){\\x88CD3D4CD3\\x1a\\x89~BD3D4\\xbbdb\\xa4\\x13\\\"\\x9a\\x9d\\x92\\x8eo\\x8eC7\\x03F\\x8fa\\x9b\\x93!\\x9bi\\xb8\\xa6c\\x1b\\x04\\x11\\xcd\tHf\\xda\\xfaeZ\\x143\\x86a\\xc6\\xcb4\\x0e\\xbf\\x84\\x88\\xe6\\x03QK\\x88h\\xf6\\x8e\\xc4\\x10\\xd1\\xbc'#pI\\x88hvH*\\x0e\t\\x11\\xcd\\x0e\\x81\\x88f-\\x10\\xd1<\\x02a\\xf4m\\\"\\xa3\\xe8\\\"D4CD\\xb3\\x92T\\xa4&\\x0d\\x1d\\x1c\\x88\\x0d\\x0e@\\x06!\\xa2\\x19\\\"\\x9a\\xbdM\\xa3\\xff\\x8b9\\xff\\xdc\\xca\\xad\\xea\\x8c\\\\6\\x87,;Q\\xbepnt\\x1d\\xd4\\xe6\\xc0,\\xc6\\x07\\xc8\\xb9\\xd0\\x946,\\xae\\x9d\\x9f!.\\xaew\\x15\\xe2\\xe2R\\xbc\\x12J&\\xc6zR\\xd1\\x9eqx\\x8fW\\x19\\xc4\\xc5A\\\\\\\\+c\\x90!\\xaf2\\x88\\x8b\\xdb\\x97\\x89P\\xa2\\xc3p\\xa2\\x11H\\xd1$X\\xd1\\xe4hQ\\x14/\\xba\\x07\\xc4\\xe8\\xbe0\\xa3{@\\x8d\\x86\\xe0Fc\\x91\\xa3\\xe0\\x18\\x1e\\xc3\\x8e&D\\x8fR\\xf1\\xa3\\x81\\x08\\xd2\\xe4\\x18R\\x1cE:\\x18G\\x82\\xb8\\xb8h\\xc9\\xc6\\xe1JNU\\x10\\x177\\x06a\\x8aaL\\xd3\\xa0L\\x89\\xd0I\\x14i\\x1a\\x805E\\xe3\\x93\\x06\\xe2M\\x10\\x17\\x07qq)HT\\xd4\\xaaC\\xd1\\xa8t<\\n\\xe2\\xe2\\x8c@\\\\\\x1c\\xc4\\xc5A\\\\\\\\:~u\\x08\\x82\\xe5T\\x07qq\\xce\\x07\\x920/\\x88\\x8b\\x9b\\x0e\\x01\\x83\\xb8\\xb8\\x83\\xf1\\xb1\\xff\\x9f\\xbdw\\xed\\x8e#7\\xd2\\x84\\xbf\\xfbW`\\xf5a$\\xd9\\xec\\xa2%_\\xf6\\xacv{\\xcf\\xe8\\xd6\\xdd\\x1c\\xab%.%\\xcd\\xee\\x8c\\x8f_\\nU\\x85\\\"s\\x98\\x95Y\\x9d\\x17R\\xe5\\x9e\\xfe\\xef\\xef\\xc1-o\\x85K\\x00\t^\\xda\\x13\\xf1\\xc1V\\xb32\\x91@\\x00\\x08\\x04\\xe2y\\x02H3\\xe6\\xc0\\x18\\x19\\x1c%\\xeb\\x97\\xf9\\x14\\xe9A\\x93[\\x16\\x01\\x19B\\x96+\\x12'IB\\x93\\xbc1w\\x9e\\xd0\\xaf\\xea\\xdaC\\x9b\\xee0[\\x08\\x84\\x1f\\xc5\\xa0G\\x98-\\x84\\xd9BA\\x98\\x10f\\x0ba\\xb6\\x90I\\x12\\xe3?\\x98-d\\x148\\xea\\x13\\x87\\xf98\\x94\\xeeC|\\x92\\xe1=0\\xb4'\\x08\\xebI\\x8c\\xf4\\xf8p\\x9e\\x99(\\x0ff\\x0b\\x1dH\\x1c\\xaa\\x83\\xd9B3\\xb1\\x1c\\xcc\\x16\\xb2Zb\\xcc\\x16:\\x90\\x08\\xb4\\x06\\xb3\\x85\\x0c\\x02Eg0[\\xc8 \\x98-\\xa4\\x04\\xb3\\x85\\\"p\\x17\\xdb&\\xd2\\x8b\\xb9`\\xb6\\x10f\\x0bI\\x81\\xc6\\xafa\\x98I b\\x12\\x80\\x97`\\xb6\\x10f\\x0bY\\x87\\xc6\\xf4/*[\\xe85\\xe0\\xaa\\xc3\\x84\tC\\x89.\\xd5\\xb2\\xe0+\\x986\\xa4\\x04\\xd3\\x860m\\xa8\\x17L\\x1b\\xc2\\xb4\\xa1^b \\\"ka\\x986t(\\x89\\xe0\\xa2y\\x80Q\\x04d\\x94\\x044J\\x0e\\x1by\\x81\\xa3[\\x80\\x8en\\x0b<\\xba\\x05\\xf8(\\x04@\\x8a\\x85\\x90\\x9c6\\xdc\\x07\\\"%\\x84\\x91\\xa0@R \\x94\\x94\\x1cL\\xf2\\xc3I\\xb3\\x01%L\\x1b\\xf2\\xd6,\\x0e`2\\x16\\x85iC1P\\x93\\x0flJ\\x037\\x011\\x14/\\xe4\\x14\\x00:y\\xd37\\x02\\x81'L\\x1b\\xc2\\xb4!\\x08$\\xe5\\xd5j(,\\x05\\x07\\xa60mH\\x0b\\xa6\\x0da\\xda\\x10\\xa6\\x0d\\xc1\\x81\\xac9P\\x96\\xb18L\\x1b2\\xbe\\x00\\x02\\xbf0m(\\x1d\\x14\\x86iC\\xb3\\x81\\xb24c\\x0e\\x0c\\x96\\xc1\\xe1\\xb2\\x19iCeQ0\\xb1s:\\xbe~\\xa6\\x92\\x88\\xce\\xfb?\\xd6\\xc7?w\\x97p\\xfdb\\xcf\\x1f\\x1a\\xa0h\\xf2X\\xbc\\xd7}\t\\xa3{\\x97\\xfa\\x92ET\\xbe>\\xc0\\xef\\xa8:\\x0f\\xb0+\\xcf\\x9eat\\xf0%\\xf5\\xd0\\x83M.\\xea\\x1b\\x7f.\\x1a\\x9f\\x14\\x9e\\xb2\\x04OF\\x0d\\xad\\xf3l%\\xf6\\xf5\\\"\\x00\\x1f\\xd2\\x1d\\xd3\\x85gW\\x95\\xe5&\\x08\\x92\\xf3Dp\\x14\\xbc\\xbbe\\xd5U\\xced\\xf1\\xbc\\xa2\\xeckV7\\xacXM_\\x10\\x0f\\xa8\\x8b\\xbf\\x0c\\xd5\\x90\\x85\\xa9\\x1b\\xc0h\\xa3L\\x0do\\xb1,\\xf9\\x86\\xd6}d\\xc0\\xd2\\x8a\\xa8\\xd4\\xae\\xc9]q3)\\xd4\\x93\\xab\\xd2\\x86\\xa2\\x9a(\\x9d\\x19uk\\x9b\\x06S\\xbak\\xf1\\xeaA\\x80\\xb44\\x85E'\\xf7\\xc4\\xddIuU\\xaf\\xf0\\xe1\\xa5\\\\\\xcf\\x8b\\xec\\x9a\\x15]]\\xdcC\\xd8\\x18<{\\xcf+\\xc0}c^\\xda\\x99*\\xe7\\x07\\xf9\\x9d\\xac&Y\\xb1\\xaaD\\xc4\\x92/Z\\x0da\\x94/;\\xd3{\\xe6\\xb4\\xdc\\\\f9#W\\x8c\\xedxs\\x0d\\x0f\\xe8\\xf2\\xdf\\x8b\\x1e\\x96!2\\xbae\\x1d\\x00E\\xear\\xcb\\x06)\\x924\\xbf(\\xab\\xac\\xb9\\xdc\\xd6dk\\x98\\xd6\\x84\\xac.\\xcb\\x92{\\xf8\\xc6\\xed&_\\x81\\x9b\\xa1\\xde\\xb2\\x82\\xacX% \\xd4UY\\xac\\x15\\x02\\xc4\\x16\\x17\\x0brI+\\x11\\x98\\xbe\\xaaMk\\x8a0\\xa4\\xdfl\\xe9\\xea2+\\x8c\\x0e\\xfa40OND\\xf7\\xd4\\x8c\\xach\\xcd\\xea\\xa3\\x91vU\\xeb3S\\xe4n\\xa8\\xef\\xba\\x14\\xc3\\xd2\\xf4=\\xd5 \\xee\\xe8fE\\xcb4,\\xb1-\\x8b\\xac\\x91\\x98f\\xbe\\x97e\\xd1\\x9aW\\x8b\\xf1Q\\\"7X\\x8en\\x91\\xddn\\xfa\\xde\\x05kj\\xa9\\xcf\\xd1\\x8fjh\\x9a\\x89 \\x07kL<\\x07\\xe4pa\\xec\\xe9\\x1f\\xdd\\x0b\\xc8\\xfe\\x98\\xfc\\x8a\\xec\\x0f\\x88\\x01\\x94\\x82\\xec\\x0fd\\x7f\\x98\\x05\\xd9\\x1fB\\x90\\xfdq(\\xc8\\xfe@\\xf6\\x87M\\x90\\xfd\\x81\\xec\\x0f!\\xc8\\xfe@\\xf6\\x07\\xb2?\\x90\\xfd!\\x05\\xd9\\x1f\\xc8\\xfe@\\xf6\\x07\\xb2?\\x84 \\xfb\\x03\\xd9\\x1f\\x03\\xb1on\\x91\\xfd1\\xfa;\\xb2?\\x90\\xfd!\\x05\\xd9\\x1f\\x0d\\xb2?\\x8cE\\x06\\xb3?v\\xb4\\xa2[\\xd6\\xb0j\\xc4\\x01\\xe1\\xf3L\\xdf\\xb3x\\x9e\\x0d\\xed\\xf6hg\\xaaQ\\xe3.k\\xda\\xc4\\x06\\xe8\\xe0\\xabA)Y\\xf1b\\x1ae\\xaf\\xd8OmV\\xb1\\xf5\\x0b\\xd2T\\xed\\xb0\\xf7\\x0c{\\xfd\\x99\\x94\\x95\\x1eP\\xb3\\xf3SLt\\x14\\xcd\\x81P\\x07\\xdav\\xbf\\xf3\\x85\\x83\\xac.iV\\x98Y'\\xbfF\\xbe\\xc9\\x03\\xc1\\xc2\\xb2\\xf5\\x8c\\x10\\xd0x\\xac\\xf6\\xc4\\x95~\\xbc\\x9a\\xd7\\xc7n\\xdc'\\xfb\\xb6\\x9c'\\x87'\\x0fd\\xf5\\xa0^\\x968\\x98\\x8c\\x9bZ\\xf4\\xe3\\xee\\x15)\\xd6\\xbe\\x91\\xe2\\xe9!)\\xbe~\\x92\\xd2+\\xd6\\xf5\\x14H\\x7f\\xeaA\\x89\\xb4K4R\\xab\\xc2vJ\\xc3X6\\x8c6m\\xe5\\xae/D{R<:\\x94\\x12\\xda,G\\xc8QJ\\x9e\\xd5\\x02\\xaf\\xd2m\\xe9\\x82\\xf39\\xeb\\xcf\\xae\\xe8\\xa2\\x89\\x9e\\xc2\\x00Z\\x83\\x84\\x1d\\xa5\\xfc\\xab\\xea\\n\\x81*)'Yu\\x0fw\\xd6\\x144$\\x82\\xc0M\\xe9(\\xa7`\\x17e\\xc3\\xa7DgX\\xafY\\x95q\\x1f\\xd2\\x05\\x8b\\x12\\x0d\\xe8\\xe9\\x19}I\\x8bu}I\\xaf\\x8c\\xc1T\\x02\\xd2\\xb8\\xfa\\xb6h\\x95\\xf2\\xa8i\\xc1\\xfd\\x17\\x111\\x94\\x0d!k\\xbeRn\\xb3\\x82\\x11V\\xacJ\\xee\\xce\\xd8c\\xf9\\x12T\\x12\\xb1\\xd7Z`\\x8c\\xd6'W\\x97\\xb4(X.B\\x91\\xdc\\xf3fM\\xad\\xbe\\xcau9\\xb1\\x12\\xc6R,'\\x8eK\\x19\\x9b\\\"\\x89\\x80\\xa8\\xb3P\\xd4^e\\xa0IV\\xac\\xad:\\xf4\\x0foV\\xb4[\\xfb,\\xf9\\x86|\\xfc\\xf4\\xf2\\xd3\\xdb\\xf3\\xcf\\xefO\\xde\\x9f|:y\\xf9\\xee\\xe4\\xdf\\xdf\\xbe9\\xff\\xfc\\xfe\\xe3\\xe9\\xdb\\xd7'\\xdf\\x9d\\xbc}\\xe3}\\x93\\xbf\\xe7}\\xe8\\xd3\\xd9\\xbf}8}\\xfb\\xde\\xfb\\x9c\\xe3!M\\xaa\\x89\\xaa\\xf0\\xaal\\x8b\\x86U;Z5{X\\x9f\\x0c^\\x90~D\\xdcR\\x01\\xb2\\xe5\\x10K\\xee]\\x00\tl8\\x90 \\x9bB\\xa6d\\x13\\xb5l\\x96\\x1a\\xbf\\x9fj\\xc9Y\\xd6\\xa1'*H\\x83.\\xa3B\\x00\\x1a\\x1eqr\\xef]A\\xa3ykR\\x94\\xbb\\xb5\\xc6\\xa1fA~\\xb4H\\xea%DQ\\xbb\\x8am\\xb2\\xaf.\\x0dMf\\xc1v\\x9b5\\x82\\x8d\\xd3qzy\\x01\\xbd\\x91\\x9a\\xf6\\xbf#\\xfc\\x07\\x99\t\\x048\\x1b\\xb8\\\\\\xb1\\xfd\\xb9\\xbf=\\x04\\xde\\xeb\\x04\\x06Q\\x12\\xd0\\xda\\xc5\\xe5G\\xa1\\xb3S\\xa9\\xb2\\xac\\xeetH\\x9bK\\xa5H\\xb9\\x84qU^\\xb1\\xbd#\\xeaOT\\x8clU\\x16uS\\xb5\\x827x\\xc5\\xf6dS\\x95[\\xf1\\xfa)\\x15g\\xf0\\xaduYb\\xab\\xef,n\\xc9\\x08\\xdd\\xedX\\xb1~\\xc2\\xdf]\\xfc\\x85\\xed\\xf9\\xff\\x1f\\xb9\\xeb0}C4\\xe2HT~\\xb1xj\\x0e\\x85\\xafYN\\xf7\\xe7;Ve\\xe5\\x1c\\xef\\x1d\\xc0O\\x9e\\x8c^\\xf1a\\\"?\\x1cc\\xbd!V\\xe0D\\xcf\\xfeu\\xbf\\xa5\\xec<\\xb0\\xe1N[M\\xe4.`h,m\\xe0R\\x18\\x7f\\x1f\\xec\\xeaed\\xe4\\xe0\\xa9Q\\x9d\\xb5\\xafZ7e\\xc5\\xd6\\xd3\\xfd\\xb1\\x98\\xc0\\xa69\\xbb\\xa3\\x17Y!\\xb6\\xca\\x86\\x0d\\xa7\\x1c\\xf8\\xfd#\\xdd\\xd6\\xf7\\xf0\\xd1x\\x02~\\xc1\\xbe6\\xe7W\\xcc\\xb2T{\\x07\\x8bw\\x12\\xbb\\x0f\\x8f\\xd3\\xa2k\\xa1Y\\xc2\\xfc\\x9f\\x8avCk\\xe5}\\x9e\\xd2\\x0bv&O\\xaa[\\xc8\\xdf-\\x85\\xfd\\xd4\\xb2JR\\xdby\\xb1\\\\\\x81\\x8cl\\xcb\\xba!L\\x90Y\\x04\\x03fAN\\x9aA\\x8cn\\xd7\\xecI\\xe6\\xb8\\xca\\xa5b\\x82\\xe9T\\x94d[VL3\\x9bL#\\xb9)\\x1b\\x1a{Q\\x0d`\\xde\\xf9\\xac\\xa1\\xf8\\xbc\\xd0\\xa2\\xf8\\x87\\xcc\\xaa\\xe0CP\\x93\\xb1\\x06\\xcc\\x1f[{\\x87\\x8a\\x16\\xcb\\xce\\xb9(\\xccf\\xaenhMj\\xd6\\x1c\\x91\\xac\\xa95\\xc7\\xac&m!\\xa7\\xe6Z\\xd2nn2\\xc3\\xb0\\xf5\\xcfzY\\x95\\x01\\x83\\xbc\\x1c\\xc5T\\xb3\\x82\\\\\\x9c\\x9d\\xbe\\xeeI\\xe5*`Y\\x93\\x1b\\xdeg\\xa6\\xee1S\\x18We%\\xcb\\x10tO}\\x1e\\xa2\\x0e\\x7f^\\xd2Zn\\xe6\\x86\\x9a1\\xaaC\\xbf\\xf1\\xb1\\xdc\\xf6\\xf5v\\xc2x\\x15\\xdb1a*_\\xd1\\xaa\\xeb$\\x0f&0V\\x8b\\x18\\xdf6T`\\nDz2\\x80\\xe4\\xd4Y\\xe6\\xe5\\xea\\xca\\x96\\xf11\\xc3\\xd6`\\xb2\\x8f\\xb7\\xba\\x98\\xec3\\x11L\\xf6\\xb9\\xd7d\\x1f\\xf7\\xf0\\x92)?I\\x92}\\xc6i>\\xd3\\x1a\\xe2\\xa1\\xaf\\x98\\xf6\\xe3\\xdd\\xb6\\xf8M\\xa1\\x14L\\xfb\\xc1\\xb4\\x1f\\xb3`\\xda\\x8f\\x10L\\xfb9\\x14L\\xfb\\xc1\\xb4\\x1f\\x9b`\\xda\\x0f\\xa6\\xfd\\x08\\xc1\\xb4\\x1fL\\xfb\\xc1\\xb4\\x1fL\\xfb\\x91\\x82i?\\x98\\xf6\\x83i?\\x98\\xf6#\\x04\\xd3~0\\xedg \\xf6\\xcd-\\xa6\\xfd\\x8c\\xfe\\x8ei?\\x98\\xf6#\\x05\\xd3~\\x1aL\\xfb1\\x16\\x994\\xed\\xa7\\xe7\\xdb,\\xae\\xd8p\\x15t1Y\\x14u\\x85*\\x13Z\\xb1\\xa6\\xad\\nIP\\x18b\\xf5\\x8b\\x8e\\xe7\\\"\\x82K\\x17\\x93(\\x8c@\\xdf%\\xe9\\xd9\\xcd]\\xf9P\\x08\\xccZ\\xec>\\xcb\\xcd\\xa6f\\x0d\\xdf\\xd0\\x8d\\xabK\\x06\\xc1\\xf1\\x9a\\x8d\\x0e$\\xcd\\n\\x85\\xf4\\x0f\\xfe\\xd6' mh^{2\\x90\\x88-\\xd4`P\\xa2\\xac\\x9fM\\x8f\\x93m\\xbej\\x8cPe\\xd1nY\\x95\\xad\\xf4\\xdf\\xc4l\\xd3\\xa4t\\x11g\\xb9d\\x85V|[t\\xa1\\xad\\x89C{\\\"J\\xcbY]\\xf7*\\x94\\xc1\\xa0V\\xe0\\xa6W,P\\x9f\\xe3\\xe2oY\\xb9\\x13\\xd2\\x80A\\xbdy\\xb6\\xcd\\xa0\\xda\\x15\\xcfjl\\xd6F\\x10\\x92a\\xcf\\xe1\\x08VH\\xee\\xf4\\xce\\xea\\x9d\\x0cr\\x0c\\xfft\\xb2!9\\xdb4\\x9aP\\xa5\\x18V\\xdai\\x14\\x11[9A\\xe4G\\xb8\\x9e\\x97{I9\\xa0\\xbb\\xdd=jqHs\\xea\\xdfw\\xe9r\\xf0\\x06\\xd7\\xa8\\x18\\xa1\\xa5H\\xde#\\xfc\\x1fY\\xb1\\xceV2\\xb1C\\xd1N\\xa4\\x06\\xc5\\x83j \\x0d\\x8b\\xcb\\x8aU\\xde\\xae'.!\\x95_\\xe9\\xc0\\xb3I\\x8f\t(v\\x10\\xd3\\xdd\\x88\\x04\\x8a\\x8e-81.\\x9fO\\xeaIoM\\x9a \\xbc\\xe8\\x8a\\xd5\\n4\\x17\\xd3\\xab\\x9f\\x8f|\\xca-\\xd4l\\xca.\\x8a\\xb2\\x9aD\\xc4\\xf5l\\x1c\\x7fBjfn\\xc7.\\xcb2g\\xb4pu`\\xc5\\xaeY5z\\xd5\\xd5y\\xea\\xe9i\\xc7e\\x03\\x9a\\\\\\xc5\\xcc3aT\\x0e\\xff\\x06\\x93\\x9c\\xb1\\xb2Z\\xb3j\\x1a\\x12\\xfb\\x98\\x15+\\xf6\\x82\\xac\\xcaz[\\xd6\\xdf\\xd4\\xeb+\\xf2\\xfb\\xc5\\x1f\\xff\\x90T\\x1b\\xc9\\x92A\\x8f\\x7f\\x1eQ\\xfb\\x1d\\x87\\x97\\x0f\\xe8\\xb7]nh1I\\x0b\\x1df\\xd2X\\xd2A\\x7f\\xa3\\x9b\\xfb\\xe0\\xb3A\\xadt\\xb9A{#\\xeeU&>\\xd6\\x84\\x9b3\\xe1IS\\xf1\\xa2\\x05\\x89r4\\xdd\\x19\\x9a\\x8d'\\xc3\\xd0\\x99Y\\xe8T\\x8e\\x14\\x1f\\xad\\x84\\x80\\xf32\\xbd\\xfaR\\x8f\\xc5\\xe6dB22}\\xda\\x92\\x02\\xc8\\xc6\\x0ck\\x8c'\\xb7\\\"a\\x1e\\xa6WO\\x10\\x0c\\x88\\x84f`\\xf6y\\x96\\xd6\\xf2\\x9a\\x80\\xfc\\xcb&(\\xfb\\x12\\xd6\\xa2\\xc4\\xf9\\x97\\xd0\\xec\\xcb\\xa0\\xdcKS\\xfb\\x1c\\xa9\\x97i\\x12/\\xbd#\\xd9\\x95t\\x19\\x9br\tH\\xb8\\x84\\xa5[z\\x93-g\\xa4Z\\xfa\\x13-o%\\xcd\\xd2k\\x94\\xfd&\\x19\\x90`\\xe9\\xedv\\x02\\x9eZ$ijeDb\\xa5O\\xa3\\xe0\\xa4\\xca[V\\xca\\x9ct\\xca\\x88dJh*\\xa5/\\xf1\\xf0\\xd6\\xd2(\\xbd#\\x9d\\x80F;\tH\\xa0\\x04\\xf50\\x81\\x11=`\\xcb{\\xca\\xc4\\xc9\\xf0\\xb4I\\xb2t\\x91\\xa0B\\x93&\\xc3S&\\xfd\t\\x93\\xde\\x1e\\x01\\xe4w\\xc0\\xa6\\xe4(\\x87R\\xf2\\x1a\\xdb\\xba\\x11\tpd)\\xe8j2\\xcbQeN\\xc8\\x95tEm\\xc6J\\x87\\xc9\\x1c\\xab\\xbf\\\\\\xf1\\xbf\\xe1>\\xcfFQ\\xfb\\xc8\\xfb\\x0f\\x9f\\xdeN\\xf29\\xf3\\xf2\\\"[\\xe9\\x08\\x81\\xa5\\xa8\\x8e\\xef$A\\xc5\\xba\\xdcZiR\\xd2\\xf8\\x1a\\x08P~5\\xf5\\x9b\\xc7\\xb7\\xc5z\\x90\\xfb)t\\xc1\\xb7\\x83r\\xb2r\\xdb\\xa5\\x8e$\\xd2\\xf6\\xc5\\xe8\\x976%\\xa1\\x85\\xa0\\x87\\x99\\xeaZ\\xb3\\x1d\\xad\\x84\\xb7RL\\xe3\\\\R\\xa4\\xaadv\\xa0\\xe8*\\x11AY2\\xf2\\x9c\\xe8\\xdc\\xb7Q\\x85El\\x8d\\xd5\\x0d]\\xe6Ym\\xe4\\xb9\\x8d\\xb2X\\x97\\xac\\xb9a\\xac \\xcdM)\\xdbr\\xa0\\xb2\\x7f\\x80K\\xa5*\\xd6T\\x193\\xd1+g\\xec\\x8c1\\xcf\\xcc[]\\xcc3\\x9b\\x08\\xe6\\x99\\xfdz\\xf2\\xccR\\xa4\\x999\\xb2\\xcc\\xc8+V\\x0bB\\xe6\\xa1W|$\\x18\\xce2V\\xcf\\x17\\x1ei\\xc8\\xcc\\xfc\\x15\\xa5Y\\xee\\x00M?\\xe4\\xb4\\x84\\x98\\xe5\\x86Yn\\x98\\xe5\\xa6\\x04\\xb3\\xdc0\\xcb\\xad\\x17\\xccrk0\\xcb\\xcd,\\x98\\xe5\\xa6\\x05\\xb3\\xdc0\\xcb\\x0d\\xb3\\xdc\\x80^\\x12f\\xb9u\\x82YnC\\xc1,7\\xccr3\\x08f\\xb9\\x19\\x9f\\xc1,7\\xccr#\\x98\\xe5\\x86Ync\\xb1on1\\xcbm\\xf4w\\xccr\\xc3,7)\\x98\\xe5\\xd6`\\x96\\x9b\\xb1\\xc8\\xa4Yn#\\xc6\\xd9\\xa0\\xa4\t\\x99\\xaa\\xc3\\xbe\\x14\\xdf\\xd9\\xc8\\xdf}(\\xd7YM3\\x18\\x8e\\x15\\xcfp\\xc0Q5\\xa53\\x0cR\\xf9zx\\xf0\\xb5x\\xf5\\xa3\\xe0\\xd8\\xe8$\\x87\\x01\\xa8/\\xc97\\x06\\xce\\x7fW\\xd4!\\xaf\\xcd\\x92\\x061\\xf8\\x92z\\xf0\\xc1fDt\\xbd\\xbf>?T\\xedPtz\\x84GY\\x9a~|\\xf8~<\\xf7cnV\\xc4\\xb8\\xeaN\\xbe\\xba[\\x07\\xc4\\xd7\\x0e\\xe2m\\x0b\\x01 \\x86\\x80&\\x11`\\xd4IJ\\x14n\\xe8(\\xef t\\xe4\\xd8I\\xa5\\xc5\\x0e\\xbd\\xe8aj\\xfc\\x10\\x8e &\\xc2\\x10\\xe3PDGqY\\x11\\x80#\\xceF\\x12Sc\\x89\\x81hbb<1\\x0cQ\\x0c\\xc4\\x14]c\\xb8C\\x1b\\xa1\\xa8bb\\\\\\x11\\x84,&\\xc4\\x16\\xe7\\xa2\\x8bQ\\xf8b\\\"\\x841\\x06ct\\x14&\\xd0G?\\xcax+8\\xe3\\xed!\\x8d\\xb7\\x825\\x86\\xa1\\x8d\\xc9\\xf1F(\\xe2\\x98\\x14s\\x84\\xa3\\x8e\\xc1\\xb8c8\\xf2\\xe85\\x85O\\x01\\xd8c\\x02\\xf4\\xd1\\x83?\\x02\\x1d*\\x00\\x06\\x19\\xe2u\\x05\\xe3\\x90\\xaeEpY^3\\x00\\x12\t\\xad_B42\\x04\\x8fL\\x8cH\\xc6a\\x92\\xae\\x11T\\xfbQ\\xc9h\\\\\\xd2R\\x1a\\xff\\x9a\\x0f\\x99L\\x85M\\x82\\x016\\x00>\\x19\\x84Pz\\xc2\\xffQ(\\xa5\\xafLkl1\\x11V\\x19\\xaeL8^\\xe9k[\\x04f\\x19\\x89Z\\xbab\\xb4\\xc9\\x90K0v\tC/\\xa1\\xf8%@\\xcb\\xe1\\x18f\\x08\\x8a\\xe9\\xc21\\x13!\\x99\\x81Xf\\x1c\\x9a\\x19\\x84g\\xfa\\xb4\\xee\\xc24\\xbd\\xef\\xc2q\\xcdt\\xc8\\xa6\\xb7R\\xd6\\x19\\x94\\x0e\\xdf\\x04 \\x9c\\xf1\\x18\\xa7\\xa58\\xfe\\x98\\x0b\\xe5L\\x8cs\\xfa\\x90\\xceH\\xac\\xd3R\\x96\\xdcq\\xba6\\xdd\\x00\\xbc\\xd3\\x05\\xca\\xb80\\xcf\\xf4\\xa8gr\\xdc\\xd3\\x8e|\\xa6\\xc4>!\\xe8g8\\xfe\\x19\\x84\\x80F`\\xa0\\xa1(\\xa8\\x13\\x07u\\xa3Rp\\\\\\n\\x8a\\x85F\\xa0\\xa1\\x81x\\xa8\\xa3\\xb91\\x98\\xa8\\xa5\\xa8\\x01\\xde\\x08\\x9b\\x120\\\\\\xd41\\xe4\\x8b\\x0b72\\x9a\\x14\\x1b\\xf5\\xa0\\xa3\\xb7\\x83\\x8f\\xa6\\x1a\\x8b\\x01\\x18i\\x08Jjs\\x1d\\x0c\\xd8\\xd5\\xc1s\\xfe}\\xf3\\xe0\\xb2\\xe2\\x01\\x928\\xb8\\xadx\\x08\\x8d\\xc9]\\xb0)v40\\x8e\\xf2\\x0d\\x93\\xba}W\\x15c\\x9a8\\xa6\\x89w\\x12V]L\\x13\\x9f\\x08\\xa6\\x89\\xdfk\\x9a\\xb8\\x1a\\x9a\\x07\\xf7\\x88O\\x12\\xc4\\x0767E\\xae\\xf8\\xd0\\x84\\x9f\\x9d\\xbeV;\\x95\\xee%L\\xd3\\x9e\\xfc\\x8ai\\xda\\x10C(%\\x8an\\x81i\\xda\\x10\\x92\\x85)~\\x10L\\xb1\\x88!X`\\x9avBZE\\x08\\xa9\\\"\\x88R\\x81i\\xdas\\x89\\x14\\x114\\x8a$$\\x8ap\\n\\x05\\xa6i\\xcf\\xa1N\\x84\\x10'\\x12\\xd3&\\x1a\\x10i\\\"!e\\x02J\\x980\\xc4,0M{,\\x00\\x8a\\x04\\xd4K\\n\\xa6G`\\x9a6\\x88\\x14\\x11C\\x89\\xc04m\\xdbc^\\x1aD\\x00\t\\x02\\x92\\x84\\x1cB\\x80\\xc04mL\\xd3\\x86\\xd0\\x1c0M[H\\x0c\\xb1!\\x80\\xd6\\x80i\\xda\th\\x0c^\\x12C,\\x85\\xc1\\xba\\xda`\\x9a\\xf6\\xa1`\\x9av\\x04U\\xc1OT\\x08\\xa5)\\x04\\x90\\x14\\x82)\\na\\x04\\x05L\\xd3\\x0e\\xa3$`\\x9av'\\xb7ACH1\\xe6\\x02(\\x08p\\x02\\xc2m\\xa4i\\xff\\xca\\xf2\\xb35\\xee*sh\\x8f5\\xaa|\\xfc\\xf3\\x04\\x9a\\xff\\xe5X\\xe2\\x8f\\x83\\x1f\\xe4\\x1f\\x1c\\xb7\\xd4\\x99\\xd3\\xba\\xf5\\x17\\x0d\\x99\\xdd\\x93\\x9b\\x15\\xd2$w\\x8f\\xbe\\xa7\\x9e}\\xb0\\xf9\\xdd\\x93\\xfe\\xb0aqQd\\x0b7\\xa4\\xe6\\x8d&A\\xc21\\xc9\\xc14\\x18\\x94\\x16\\x03\\xa4\\xb9\\x01\\xb3(\\xb8L|\\xc2R\\xa0\\x17,K\\x00\\x95E\\x02evJ\\x1e\\x08&\\x9b\\x05\\x92EAd\\x84Zi\\xc0@\\x80,\\x06\\x1es\\x05\\xadA\\xe0Xbh\\x0c\\x04\\x8c%\\x84\\xc5\\xbc\\xa0X\\\"Hl\\x0e \\x16\\x0c\\x87%\\x00\\xc3\\x12Ca\\x1e ,9\\x0cv; Xr\\x08\\x0c\\x0e\\x80\\xc5\\xc1_\\x0e\\xa5\\xfb\\xc0\\xafd\\xd0\\x17\\x0c\\xf8\\n\\x82\\xbd\\x12\\x83^>\\xc8k&\\xe0\\xe5\\x80\\xbb\\xbc\\xee\\x89\\x17\\xea\\x82\\xf9/ia.\\x1f\\xc8\\xe5\\xafS\\x1c\\xc0\\xa5-\\xbb\\xa1@\\x1f\\xbc\\x95\\x10\\xdc\\x9a\\x01m\\x99\\x01i\\x17\\xb0\\x95\\x16\\xd6r\\x83Z) -\\x10&\\xe3\\x81\\xb3\\xc0`\\x96=J\\x1c\\x0ed\\xd9\\xcb2Fd\\x92@X!\\xca\\x82\\xc2W~\\x9d\\x80\\xa1\\xab\\x08\\xe0\\xca\\x1c\\xbdJ\\x04Z\\x81 +?`\\x05\\x81\\xab\\x9cZ\\x0c\\x85\\xaa\\xa0@\\x95\\x0d\\xa6J\\x00R\\x05@T\\xe1\\x00\\x15\\x18\\x9er\\xa0:\\xd6\\xea8\\xde\\x81\\xc2Ri@)g\\xe5\\x0d\\xbfD\\xc1Q\\x1az2\\x94g\\x01\\xa3\\x12CQv *\\x16\\x86\\x12\\xd1\\x05S\\xc5\\xcd TZ\\x08\\xca\\xb6\\x89\\xf4\\xc2O\\xb6\\xf8\\xb8\\x0dzJ\\x0b<\\xc5\\xc3N\\x16\\x88)\\n`\\xf2\\x82IaP\\x12\\x18H\\n\\x84\\x91B@$+\\x84d\\xaf\\x0d4\\x94\\x0f\\x83\\x8f\\x02\\xc1\\xa3\\x00\\xe8\\xc8\\xd8\\xb4\\xb4\\xb0\\x91mR\\xcc\\x80\\x8c\\x8c1\\x0f+`\\x14\\x07\\x17\\xb9\\xa0\\xa1\\xf4\\xc0\\xd0\\xfc\\x91\\x04\\x06\\x85\\xa0\\x90\\xd0\\xe1\\xca\\xa8sQ\\xfd\\xd0\\x84\\xe5(U\\xc7i\\xa8\\xce=\\xed8\t\\xf6\\xe4\\x8d\\xf9\\x93\\xe3jM\\n\\xc1\\xacS\\xcc:\\xed$\\xac\\xba\\x98u:\\x11\\xcc:\\xfdUd\\x9d\\x8e\\xc0\\xde$\\x89\\xa7c\\xb8\\x1asO\\xa5`\\xee)\\xe6\\x9e\\xf6\\x82\\xb9\\xa7\\x98{\\xdaK\\x0c\\xb8n-\\x0csO\\x0f%\\x11\\xd0>\\x0fj\\x8f\\x00\\xdb\\x93\\xc0\\xed\\xc9\\x01w/\\xe4~\\x0b\\xa0\\xfbm\\xc1\\xee\\xb7\\x00\\xbc\\x87@\\xef\\xb1\\xe0\\xbb\\xd3\\x86\\xfb\\xe0\\xf7\\x84\\x00<\\x14\\x82\\x0f\\x04\\xe1\\x93\\xc3\\xf0~ ~6\\x14\\x8f\\xb9\\xa7\\xde\\x9a\\xc5A\\xf3\\xc6\\xa20\\xf74\\x06\\xa4\\xf7\\xc1\\xf4i\\x80z \\xfa\\xec\\x05\\xeb\\x03\\xe0zo\\x0e` d\\x8f\\xb9\\xa7\\x98{\\n\\x01\\xf3\\xbdZ\\x0d\\x05\\xf4\\xe1\\x90>\\xe6\\x9ej\\xc1\\xdcS\\xcc=\\xc5\\xdcS8\\x05`\\x0e\t\\xc0X\\x1c\\xe6\\x9e\\x1a_\\x00\\xd1\\x060\\xf74\\x1d\\x89\\x00sOgS\\x0c\\xd2\\x8c90\\xcd\\x00N4\\xf8\\xf5\\xe4\\x9e\\xf6\\xb5\\x99\\xc0\\xe6)?a\\x85\\xa7\\x0f\\xbe}\\x00\t\\xdf\\xd6\\xb7\\x83sn%\\xfbC$\\xdc\\xca\\x7f\\xd6\\xf6\\xcc\\xd8\\xd7\\xea\\x89.\\xfdU\\x04\\xd8/\\x19/U\\xf3H\\xc4\\xc6\\x97\\xf2\\xff\\xca,9\\xae\\xea9\\xf5\\xdb\\xc3\\xcdi\\x1d\\xa9c(\\xcd=\\x80{\\x8e\\xbb\\x82{\\xd2\\x8d\\x8cR*\\xae\\x8f\\xf2'T3\\x08\\xb3_\\xb0\\xe2\\x0f\\x8a\\xb1\\xa2\\xdd\\xda\\xb7K\\xdf\\x90\\x8f\\x9f^~z{\\xfe\\xf9\\xfd\\xc9\\xfb\\x93O'/\\xdf\\x9d\\xfc\\xfb\\xdb7\\xe7\\x9f\\xdf\\x7f<}\\xfb\\xfa\\xe4\\xbb\\x93\\xb7o\\xbco\\xf2\\xf7\\xbc\\x0f}:\\xfb\\xb7\\x0f\\xa7o\\xdf{\\x9f\\x03=\\xf4\\xfa\\xdd\\x87\\x8f\\xd6\\x8ail<\\xb2]\\x90(\\x1c\\x97\\xf1\\xd1\\xfe\\x99\\x9a6\\xa2\\xb7\\x04\\xb3D`>\\xaa\\x1b%\\xbe\\xe2\\xbaWP\\xf4z\\xedXSd\\x93\\x8f\\x08o\\xcc\\x11Q\\xda<\\\"\\xfc\\x7fIY\\x91Q+]\\xb7hy\\xbb\\xfb\\x05y\\xa369\\x1f\\x8d\\x97 \\x1c\\x94\\xc4\\xcb\\xe1\\x13[\\xb7\\x9e{\\x18\\xff\\xd1\\xd6b$W\\x0d[\\xcb\\x80\\xfa\\x8e\\x89\\x08\\xf7%-\\xd6\\xf5%\\xbd\\xb2\\xdcL8*X5rZ6]qo&g\\xeb\\x0bUvW&\\xa9\\x1b\\xb6\\xd3\\x90\\xd2\\xaal\\x8b\\x86U;Z5\\xfb\\xb1As|\\xd2\\xf4\\xbdU\\xc9=\\x83f\\xfa\\xb1\\x05\\xf9\\xb0cEo8ie\\xd7U\\xc5\\xe8Z\\xa045+\\xd6\\xc2\\x0d\\xab\\xd8\\x8ae\\xd7r[\\xca\\x1a\\xeb\\x95\\x95\\x07c~Z\\xb9%\\xe3u\\xc8\\xcb\\x9a\\xc9rW\\xb4 EI\\xf2\\xb2\\xb8`\\x15w\\xc4DH^\\x7fY\\xb0@\\xc4\\x87\\xad\\xdfsV\\xa8\\xac\\xd6\\x8c\\x1b\\x1a\\x8f)\\xbb\\xb9d\\ns`\\xc39!\\xdef\\xa2\\x16m\\xa1\\xfe\\xe3\\xf6\\xac\\xda\\x87\\xb37o\\xcf\\xce\\xdf\\x7fx\\xff\\x160\\xe9\\xfb\\x17>\\xbf\\x17\\xff\\x0fx\\xd2\\xfd\\\\g\\x85\\x82\\xea\\x015>\\xb6\\xe6\\xbd \\x7fgU\\xf9\\x8d\\xdc\\xc8rW\\xd6v\\xd5\\xbe\\x16\\xdd\\xa3\\xae\\xf17Q\\xcc\\x0b=F\\xc4`[r\\x1b\\x98g\\xd7\\xa2g\\xb9C^\\xece\\xa1G\\xcau\\xdf\\xd2=Yg\\x02'\\xd9T\\xe5VZ\\x03\\xfe\\x80\\x0b\\x83\\xebh\\x99{r\\xc3*\\xc6Go\\xe3\\x9c#\\xa3.\\xe9kH\\xaba\\xf5\\xd8W\\xbaj\\x04ulP\\x0b\\xd3\\xa7\\x8c_\\x1a\\x1a\\x14\\xdfZ>\\xb1=\\xa05\\xdc\\xea]\\x10\\x80\\x87!\\x9e)+3\\xe7\\xb7\\x17\\xc0\\xbc\\\"\\x01\\xc3\\x90\\xa8\\xaf\\xdam\\xaeRoy\\xa3b\\x14\\x02\\x8ct\\x96'\\xec\\xd4\\xc8\\xfb\\xb1w\\xbcz M\\xa3u\\xdf\\xf5\\xddeo\\x96e\\x80t;\\xa7\\xcbrg\\xed(\\x97\\x03*\\xc5\\xea\\x86J\\x01\\xb4G\\xb5\\xc5\\xd1uyV\\x0bV\\x8cq'W\\x1f\t\\x07FNc\\x85\\x0f\\xf2~\\xb4\\x0f=5\\xdfjA\\xabrp\\x9b\\x04J\\xafU,\\x82\\x05ME\\xaf-\\x06J\\xb1\\x07f\\xe0\\xc1~=\\x94;\\xfaS\\xdb/S\\xea\\x93\\xdaxe5\\xa1\\x17\\x15ck\\xd2\\xee\\xca\\x82\\xac[\\x11\\x95r\\x117:\\xff\\xc0\\xf8\\x84g\\x8a\\xc2[$f\\x9dq\\xeb\\xdd\\x8b\\x7fv\\xc0\\xbf\\xd7-\\xe3\\xaeOB\\xcc\\xc6\\xe0\\x86,U\\xe4\\xe0v\\xacn\\\\4\\x97\\xc3\\xc8\\xa7h\\xac\\xed\\x8eI\\xbd\\xc2\\x19\\x7f\\x9c\\xde\\x91e\\xf0kF\\x95\\xd6\\xb3\\xa2nJ\\xbe`\\x0cw\\xc5\\xca \\x1d\\xba\\x91;z\\x91\\x15b\\x83l\\xd8l\\xaa\\xde\\xea\\x1e\\xe9\\xf6\\xbc\\x87\\x8f\\xc6\\xe7\\x16\\x14\\xecks~\\xc5,\\xab\\x92\\xb7\\x93\\xbd\\xa4\\x89\\x91\\x8a\\x0e\\xe8\\xd0Zt-4\\xf3\\x99\\xffSq\\x88h\\xad\\xbc\\xd0Sz\\xc1\\xce\\xd8O-\\xab\\x9b\\x85\\xfc\\xddR\\xd8O-\\xab$k\\x9f\\x17\\xcb\\x15\\xc8\\xc8\\xb6\\xac\\x1b\\xc2\\x043G\\xd0y\\x16\\xe4\\xa4\\x19\\x04\\x1cw\\xcd\\x9ed\\x8e3\\x9d*&\\xdc\\x81\\xa2$\\xdb\\xb2b\\x9a\\xa6eZ\\\\\\x9a\\xb2\\xa1\\xb1'V\\xc1S\\x1e\\xacFI|^hQ\\xfcCF\\xbe\\xf8\\x10\\xd4\\xcc\\xb2\\x01\\x8d\\xc9\\xd6\\xde\\xa1\\xa2\\xc5\\xf2u.\\n\\xb3\\x19\\xe6\\x1b\\xcamwsD\\xb2\\xa6\\xd6\\x84\\xb9\\x9a\\xb4\\x85\\x9c\\x9bk\\xb9l\\xdfd\\x86a\\xeb\\x9f\\xf3\\xb2*\\x03V|9\\n\\x10g\\x05\\xb98;}\\xdd\\x13\\xe5U\\xf4\\xb5\\xe6\\xdb\\x08\\xe3\\x9e\\xca\\xc2\\xc7\\\\\\x95\\x95,CpW+\\xd9\\xf8.\\x96\\xcb7Kb/4\\xd4\\x8cQ\\x1d\\xfa\\x8d\\x8f\\xe5\\xb6\\xaf\\xb7\\x13\\x93\\xac\\xd8\\x8e\t\\xf6\\xc8+Zu\\x9d\\xe4\\xbb\\xffs\\xa4\\x161\\xbem\\x10\\xc7\\x14U\\xf5$7\\xc9\\xa9\\xb3\\xcc\\xcb\\xd5\\x95-\\x99e\\x86\\xad\\xc1<&ou1\\x8fi\\\"\\x98\\xc7t\\xafyL\\xee\\xe1%\\xb3\\x99\\x94\\xa3\\x03\\xca^\\xd2\\xf9Jc(@K\\x9f\\xad\\xd4/\\xad\\x98\\xae4\\xf9\\x15\\xd3\\x95|\\xc3\\xb2\\x17LW\\xc2t%\\xb3`\\xba\\x92\\x10LW:\\x14LW\\xc2t%\\x9b`\\xba\\x12\\xa6+\t\\xc1t%LW\\xc2t%LW\\x92\\x82\\xe9J\\x98\\xae\\x84\\xe9J\\x98\\xae$\\x04\\xd3\\x950]i \\xf6\\xcd-\\xa6+\\x8d\\xfe\\x8e\\xe9J\\x98\\xae$\\x05\\xd3\\x95\\x1aLW2\\x16\\x994]\\xa9\\xa7\\xd6,\\xae\\xd8p\\x15t\\x91V\\x14K\\x85*\\x13Z\\xb1\\xa6\\xad\\n\\xc9E\\x18\\xc2\\xf2\\x8b\\x8e\\xd2\\\"\\x82K\\x17\\x93(\\x8c\\x00\\xda\\x15\\x1f\\xccIS\\xf9P\\x08xZ\\xec>\\xcb\\xcd\\xa6f\\x0d\\xdf\\xd0\\x8d\\xabK\\x06\\xc1\\xf1\\x9a\\x8d\\xc8\\xaeY\\xa1@\\xfd\\xc1\\xdf\\xfat\\xa3\\x0d\\xcd\\xeb\\x80|\\xa3Q\\xa8\\xc1\\xa0DY?\\x9b\\x1e'\\xdb|\\xd5\\x18\\xa1\\xca\\xa2\\xdd\\xb2*[\\xe9\\xbf\\x89\\xd9\\xa6\\x08\\xc22\\xcer\\xc9\\n\\xad\\xf8\\xb6\\xe8B[\\x13\\x87\\xf6D\\x94\\x96\\xb3\\xba\\xeeU(\\x83A\\xad\\x80H\\xafX\\xa0>\\xc7\\xc5\\xdf\\xb2r-\\x89d\\x03\\xf5\\xe6\\xd96\\x83jW<\\xab\\x91X\\x1b\\x17H\\x86=\\x87#X\\xe1\\xb6\\xd3s\\xeaw2\\xc81\\xfc\\xd3\\xc9\\x86\\xe4l\\xd3h\\xee\\x94\\\"Si\\xa7QDl\\xe5\\x04\\x91\\x1f\\xe1z^\\xee%\\xbb\\x80\\xeev\\xf7\\xa8\\xc5!\\xa3\\xa9\\x7f\\xdf\\xa5\\xcb\\xc1\\x1b\\\\\\xa3b\\x84\\x96\\\"U\\x8f\\xf0\\x7fd\\xc5:[\\xd1\\x86\\xf5\\x0c\\x13\\xa9A\\xf1\\xa0\\x1aH\\xc3\\xe2\\xb2b\\x95\\xb7\\xeb\\x89KH\\xe5W:\\xf0l\\xd2c\\x02\\x8a\\x1d\\xc4t\\xb9\\xe9\\x1e\\x10\\x03'\\xc6\\xe5\\xf3I=\\xe9\\xadI\\x13\\x84\\x17]\\xb1Z\\x81\\xe6bz\\xf5\\xf3\\x91O\\xb9\\x85\\x9aM\\xd9EQNS-\\xf4l\\x1c\\x7fBjfn\\xc7.\\xcb2g\\xb4pu`\\xc5\\xaeY5z\\xd5\\xd5y\\xea\\xe9i\\xc7e\\x03F\\\\\\xc5\\xcc3aT\\x0e\\xff\\x06\\x93\\xf40\\xc1m\\x9e\\x86\\xc4>f\\xc5J\\xb0\\xf7\\xebmY\\x7fS\\xaf\\xaf\\xc8\\xef\\x17\\x7f\\xfcCRm$\\xc8\\xf0<\\xfe\\xb9'\\xf6\\xfer\\xbc+\\xab\\xa6>\\xfeY\\x11\\x8b\\x1d\\x17\\xa3j\\xbam\\x97\\xfdY\\x88\\xc4\\xcf\\xd7c\\x8e\\xbd)\\xd9\\xf37\\xba\\xa1\\x0f;\\xd7\\xd3J\\x88\\xd3\\xb4b\\xd3a\\xe6\\x9a&8\\xe0\\xbe\\x1f\\x16\\x13\\xcf\\x96s$~\\xceI\\xfb\\xf4B\\x0b\\xae\\xe4(o\\x06\\xa0\\xe7=G\\xba',\\xd9\\x13\\x90\\xea\tH\\xf4\\x9c\\x95\\xe6\t\\xc1.\\xd2\\xa6xz\\x12<\\xd3\\xa4wz\\xbb\\x16\\x98\\xdcyK\\xa9\\x9dw\\x9e\\xd8y\\xabi\\x9d\\xf1I\\x9dw\\x9a\\xd2\\xe9\\xa8\\x8c;\\x9d3Q2\\xe7L[\\x15\\x94>\tM\\xe2\\x84\\xa4p\\xc6$p\\xc2\\x12%B\\x937\\xbdI\\x9a\\xf7\\x90\\xa2\\x19\\x94\\xa0y\\x07\\xe9\\x99\\xfe\\xe4\\xcc\\x98\\xd4L\\xe7\\xcaO\\xbc\\xab?\\xf1g|\\x01\\xe6\\x07\\x01\\xafW$y:&<\\x19\\xd3\\x9fl\\x06l\\xea\\xcc4LP\\x12f\\xe3I\\xc1t&`z[\\xe1\\xcb\\xefI\\x99z\tL\\xbc\\x0cH\\xbbt&]\\xcen{\\xdatK{\\xb2\\xa5\\x7f\\xc2L\\xd3\\x0fw\\xd9\\x8e\\xe5Y\\xc14T\\xc4M\\xd17e\\xb1\\xd2\\xcb\\xb96T\\xa6\\x11\\xb3d\\xcd\\x0d_\\xb55o\\xc8\\xd4\\x0d\\xdbr\\xdd\\xe6\\x8c\\xef\\xdbI\\xcdv\\xb4\\xe2\\xae\\xa5H\\xd2\\x11#\\xb9\\xd6*\\x10\\x8eP#\\xe9\\xc2\\xc2\\xbf4\\xdb\\xa6\\x15\\xdd\\x89 B\\xb91}\\xabV\\xbb\\xdc\\xce\\xce\\x8aI$\\xca\\x1a\\xbc\\xa9\\x1c\\x87\\xc1\\x83\\x07\\xa9\\x8dx\\x99\\x13&Ai\t\\xab.&AM\\x04\\x93\\xa0~%IP\\x119P\\x93\\xd2\\x86)P\\x93\\x9f^\\xb1Z\\x90\\x07y\\x11\\xaf{\\x17\\xe7HPqeP\\xb9&T\\xd9/E\\xb4\\xd0*\\xe4\\xbe\\xf9\\xa4\\xb8\\xce\\xe2M\\xbfc0\\x80\\x98\\x8e\\x85\\xe9X\\x98\\x8e\\xa5\\x04\\xd3\\xb10\\x1d\\xab\\x17L\\xc7j0\\x1d\\xcb,\\x98\\x8e\\xa5\\x05\\xd3\\xb10\\x1d\\x0b\\xd3\\xb1\\x80^\\x12\\xa6cu\\x82\\xe9XC\\xc1t,L\\xc72\\x08\\xa6c\\x19\\x9f\\xc1t,L\\xc7\\\"\\x98\\x8e\\x85\\xe9Xc\\xb1on1\\x1dk\\xf4wL\\xc7\\xc2t,)\\x98\\x8e\\xd5`:\\x96\\xb1\\xc8\\xa4\\xe9X=\\x0dhP\\xcchk\\xaa\\xa9\\x1f\\x12.\\xb8\\xe5\\xeb\\xa3\\x14\\xfb\\xcaV\\x17\\xb1a\\xbc\\xc5\\x8a\\xdc6\\xdb\\xffXR\\x00\\xce\\x074s\\x13\\xf5\\x7f\\x10\\x0dP\\x98\\xe3k\\xf1\\x9e\\xe47\\xeb\\x84\\x00\\x8dl*Z\\x81$\\xa4w\\x7f\\x9c\\x00\\x9d=\\x97\\xbe\\x1f\\xc8\\x1d\\xa9\\xbes\\x90:\\xbehOor%\\x1a\\x0cj\\xa5\\x9ez\\xb09\\x07]\\x8b\\xd6\\xe7\\x87}0\\x14Mg\\x1b*\\xd5\\x94\\x880Up\\xf7~<KEU\\xcc\\xc6\\xc8\\xf3\\x06\\xc4\\xc6Uw\\x9e\\xfc\\xee\\xd6\\x01\\xf1\\xb5\\x83x\\xdbB\\x00 '\\xa0I\\x04\\x18(\\x93\\x12\\x05u:\\xca;\\x88v96\\x7fi\\xe1N/\\xe0\\x99\\x1a\\xf2\\x84\\x83\\x9e\\x89`\\xcf8\\xe0\\xd3Q\\x1cW(\\x18\\xfa\\x9c\\x0d~\\xa6\\x86?\\x03\\x01\\xd0\\xc4\\x10h\\x18\\x08\\x1a\\x08\\x83\\xba\\xc6p\\x07\\x90B\\x81\\xd0\\xc4P(\\x08\\x0cM\\x08\\x87\\xce\\x05D\\xa3 \\xd1D\\xa0h\\x0c,\\xea(L\\x00\\xa6~`\\xf4V\\xa0\\xd1\\xdb\\x03Go\\x05\\x1e\\x0d\\x03H\\x93C\\xa4P\\x904)L\\n\\x07J\\x83\\xa1\\xd2p\\xb0\\xd4k\\n\\x9f\\x02\\xe0\\xd2\\x04\\x80\\xa9\\x072\\x05:T\\x00\\xd84\\xc4\\xeb\\n\\x86N]\\x8b\\xe0\\xb2\\xbcf\\x00\\xf0\\x14Z\\xbf\\x84\\x00j\\x08\\x84\\x9a\\x18D\\x8d\\x83Q]#\\xa8\\xf6\\x03\\xa9\\xd1P\\xaa\\xa54\\xfe5\\x1f\\x98\\x9a\\nN\\x05c\\x82\\x00H5\\x08T\\xf5 \\x16Q\\xc0\\xaa\\xafLk84\\x11\\xbc\\x1a\\xaeL8\\xc4\\xeak[\\x04\\xcc\\x1a\t\\xb4\\xba\\xc2\\xca\\xc9\\xc0V0\\xdc\\n\\x03\\\\\\xa1\\x90+@\\xcb\\xe1\\xb0k\\x08\\xf0\\xea\\x82^\\x13\\x81\\xaf\\x81\\xf0k\\x1c\\x00\\x1b\\x04\\xc1\\xfa\\xb4\\xee\\x82a\\xbd\\xef\\xc2\\xa1\\xd8t`\\xac\\xb7R\\xd6\\x19\\x94\\x0e\\x92\\x05\\x80\\xb2\\xf1\\xb0\\xac\\xa58\\xfe\\x98\\x0b\\x98M\\x0c\\xcd\\xfa\\xc0\\xd9Hx\\xd6R\\x96\\xdcq\\xba6\\xdd\\x00\\x88\\xd6\\x85#\\xb9`\\xda\\xf4@mr\\xa8\\xd6\\x0e\\xd6\\xa6\\x84k!\\x80m8d\\x1b\\x04\\xdaF\\xc0\\xb6\\xa1\\xc0\\xad\\x13\\xbau\\x03ip(\\x0d\\n\\xdfF\\x00\\xb8\\x81\\x10\\xae\\xa3\\xb910\\xae\\xa5\\xa8\\x01D\\n\\x9b\\x120(\\xd71\\xe4\\x8b\\x0b7\\x98\\x9b\\x14\\xce\\xf5\\x00\\xba\\xb7\\x03\\xe9\\xa6\\x1a\\x8b\\x01\\xb0n\\x08\\xb0ks\\x1d\\x0c\\xd8\\xd5\\xc1s\\xfe}\\xf3\\xe0\\xc6\\xdf\\x01\\xea8\\xb8\\xf5w\\x08\\x8d\\xc9]\\xb0)v40\\x8e\\xf2\\x0d\\x93\\xba\\xa7\\xf7\\xfdbB\\xbb\\x16Lh?\\x90\\xb0\\xeabB\\xfbD0\\xa1\\xfd^\\x13\\xda\\xd5\\xd0<8ej\\x98\\xca>0\\xb8\\xd3\\xac\\xf63SV\\xbb\\xa9\\xa8cK\\x81\\x83,\\xf7\\xee5L,\\x9f\\xfc\\x8a\\x89\\xe5\\x10;(%\\x8am\\x81\\x89\\xe5\\x10\\x8e\\x85)|\\x10\\xcc\\xb0\\x88\\xe1W`byBVE\\x08\\xa7\\\"\\x88Q\\x81\\x89\\xe5sy\\x14\\x11,\\x8a$\\x1c\\x8ap\\x06\\x05&\\x96\\xcfaN\\x84\\xf0&\\x12\\xb3&\\x1a\\x10g\\\"!c\\x02\\xca\\x970\\x84,0\\xb1|,\\x00\\x86\\x04\\xd4K\\nfG`b9\\x88\\x13\\x11\\xc3\\x88\\xc0\\xc4r\\xdbc^\\x16D\\x00\\x07\\x02\\x926\\x1d\\xc2\\x7f\\xc0\\xc4rL,\\x87\\xb0\\x1c0\\xb1\\\\H\\x0c\\xaf!\\x80\\xd5\\x80\\x89\\xe5\tX\\x0c^\\x0eC,\\x83\\xc1\\xba\\xda`b\\xf9\\xa1`by\\x04S\\xc1\\xcfS\\x08e)\\x04p\\x14\\x82\\x19\\na\\xfc\\x04L,\\x0fc$`by'\\xb7\\xc1BH1\\xe6\\x02\\x18\\x08p\\xfe\\x01&\\x96\\x93\\xc0\\x8a\\xdc~b\\xb9\\xc6\\x81eN\\xef\\xb1F\\xb9\\x8f\\x7f\\x9eP\\x05~9\\x96x\\xe8\\xe0\\x07\\xf9\\x07\\xc7Ut\\xffy\\x98\\x8f\\xae?gII\\xefPihVz\\x82d\\xf4Q\\x95\\xd4\\x83\\x0f6\\x1f}\\xd2_6\\xf00\\x8a\\x1c\\xd281@o\\xf8\\x0b\\x12?J\\x8e\\xfe\\xc1\\xb0\\xbf\\x18\\xe4\\xcf\\x8d\\xf0E\\xe1{\\xe2\\x13\\x96\\x02\\xbd\\xe8^\\x02l/\\x12\\xd9\\xb3S\\x08A\\xb8\\xde,T/\\n\\xd3#\\xd4J[n`\\x88^\\x0c\\x9e\\xe7\\x8a\\xb2\\x83\\xd0\\xbc\\xc4X\\x1e\\x08\\xc9K\\x88\\xe3yQ\\xbcD\\x18\\xde\\x1c\\x04/\\x18\\xbfK\\x80\\xde%\\xc6\\xee<\\xc8]r\\xdc\\xeevP\\xbb\\xe4\\x98\\x1d\\x1c\\xb1\\x8b\\xc3\\xeb\\x1cJ\\xf7\\xa1u\\xc9\\xb0:\\x18Rgp\\xec\\xed\\xf651J\\xe7\\xc3\\xe8f\\\"t\\x0e|\\xce\\xeb\\x9ex\\xb19\\x98\\xff\\x92\\x16\\x97\\xf3\\xa1r\\xfe:\\xc5!r\\xda\\xb2\\x1b\\n\\xf4\\xe1q\t\\xd1\\xb8\\x19X\\x9c\\x19Aw!qiq87\\n\\x97\\x02\\x83\\x03\\x81H\\x1e\\xfc\\x0d\\x8c\\xbe\\xd9\\xc3\\xda\\xe1\\xc8\\x9b\\xbd,c\\x08)\t\\xe6\\x16\\xa2,(\\xde\\xe6\\xd7\t\\x18k\\x8b@\\xda\\xcc\\xe1\\xb6D(\\x1b\\x08c\\xf3#l\\x10|\\xcd\\xa9\\xc5Pl\\x0d\\x8a\\xac\\xd9p\\xb5\\x04\\xa8Z\\x00\\xa6\\x16\\x8e\\xa8\\x81\\xf14\\x07\\x0ce\\xad\\x8e\\xe3\\x1d(\\x8e\\x96\\x06EsV\\xde\\xf0K\\x14~\\xa6\\xb12Cy\\x16\\xf4,1vfG\\xcebq3\\x11]0U\\xdc\\x8c\\x9a\\xa5\\xc5\\xccl\\x9bH/^f\\x0b\\xe8\\xdb\\xb0\\xb2\\xb4HY<Nf\\xc1\\xc4\\xa2\\x101/\\xfa\\x15\\x86}\\x81\\x91\\xaf@\\xdc+\\x04\\xf5\\xb2b^\\xf6\\xda@\\xb1\\x07\\x18\\xde\\x15\\x88v\\x05`]\\xc6\\xa6\\xa5\\xc5\\xb9l\\x93b\\x06\\xc6e\\x8cyX\\x11\\xae8|\\xcb\\x85e\\xa5G\\xb2\\xe6\\x8f$0\\x8a\\x05\\xc5\\xb0\\x0eW\\xc6\\xee\\xba\\xf91r\\x01?\\xfa\\xd5qz\\xabsO;N\\xda=yc\\xfe\\xe4\\xb8Z\\x93B0K\\x16\\xb3d;\t\\xab.f\\xc9N\\x04\\xb3d1K\\x16\\xb3d1K\\xd6\\x97\\\"\\xe2\\xb7\\x83R\\x12\\xe3\\xe4P\\xa4<\\x0e+\\xb7\\x16\\x86Y\\xb2\\x98%\\xdbK\\x0c\\xaan-\\x0c\\xb3d\\x0f%\\x11\\xc2>\\x0fc\\x8f@\\xd9\\x93\\xe0\\xec\\xc9\\x91v/\\xd6~\\x0bh\\xfbm\\xe1\\xed\\xb7\\x80\\xb8\\x87`\\xee\\xb1\\xa8\\xbb\\xd3\\x86\\xfbp\\xf7\\x84\\xc8;\\x14{\\x0fD\\xdf\\x93\\xe3\\xef~\\x04~6\\x06\\x8fY\\xb2\\xde\\x9a\\xc5a\\xf2\\xc6\\xa20K6\\x06\\x9d\\xf7\\xe1\\xf3i\\x10z \\xec\\xecE\\xe9\\x03pzo\\xb6b V\\x8fY\\xb2\\x98%\\x0bA\\xf1\\xbdZ\\x0dE\\xf2\\xe1X>f\\xc9j\\xc1,Y\\xcc\\x92\\xc5,Y8\\xf6?\\x07\\xfd7\\x16\\x87Y\\xb2\\xc6\\x17@|\\x01\\xcc\\x92M\\xc7\\x1e\\xc0,\\xd9\\xd9\\xdc\\x824c\\x0e\\xcc/\\x803\\x0c0KVJ\\\\E&\\xc8\\xbd\\xadB\\x1d\\xd8.\\x1f\\xd3\\x0b\\x83\\x9d-1\\xbb\\x82V|\\xfd\\xa0\\xe6\\x07\\x98\\xb6\\xb9\\xe6\\nw\\xbd\\xb7\\x9a\\xdfzfr\\xc1\\xbe6\\xe75\\xfb\\xa9e\\xc5\\nv\\xe7\\xf5{\\xf6\\xb5\\xf9\\xa8^8c+\\x96]s\\xf7\\xa0i+\\xb5\\xf4\\xf2\\x12I\\xa5~\\xd0%\\x0b\\x1f\\x89J\\xf6BW\\x92\\xaa\\x971m\\xd8\\xf0\\x15\\xf5\\xd8\\x83M\\x1a\\x1e\\xa9\\xf2\\\\i \\x08\\x85\\xf5\\xd2C\\x14\\xfe.T\\xdc\\xa9V\\xeb\\xfa`2\\x12$\\x1f!\\xf9h(a\\xd5E\\xf2\\xd1D\\x90|\\xf4p\\xc9G\\xfdZ1\\xa6\\x1c\\xf1U\\x98\\xd5\\x8d\\xdc\\x02x\\x19G\\x86U\\xa7+\\x10\\xa9GR\\x90z\\x84\\xd4\\xa3^\\x90z\\x84\\xd4\\xa3^\\x90z\\xd4 \\xf5\\xc8,H=\\xd2\\x82\\xd4#\\xa4\\x1e!\\xf5\\x08\\xe8%!\\xf5\\xa8\\x13\\xa4\\x1e\\x0d\\x05\\xa9GH=2\\x08R\\x8f\\x8c\\xcf \\xf5\\x08\\xa9G\\x04\\xa9GH=\\x1a\\x8b}s\\x8b\\xd4\\xa3\\xd1\\xdf\\x91z\\x84\\xd4#)H=j\\x90zd,\\x12\\xa9G\\xb7V\\x91[\\xa7\\xc1p\\xa3\\xcb\\x9as\\xba\\xe2S4g\\xeb\\x0b\\x115\\xa9A\\x84\\x98S\\xf1\\xee\\xcb\\xc9\\xab\\x1d'F\\x04\\xd0\\x95\\xeb\\xc3\\x1a2\\xfdDWL\\x7f\\xb0L?\\xa4e8\\xc0I\\x941\\x7f]=\\xf9`\\xb92fE\\x0f\\xa5\\xb9\\x07\\xf4O\\x0d\\x87\\x19\\x91/\\xe3\\x0c\\x15\\xb3\\xa3\\x9f\\x16f\\xc7\\xa0\\x1f\\x9d\\xa9?\\x7f0/\\xcd\\x15\\x18\\x93\\xc0\\x0e\\x05\\xf0y\\x00\\xbfdj8\\xe4\\xa4\\xd0\\xdf6\\xd7lM\\x1b\\x9a\\xa0V\\xd0hd\\xb7h\\xf2\\xefN\\x96\\xd7\\xba\\xabqC\\x9b\\xe8\\xf0\\xa1\\x9c\\xb3\\xf2D\\x13\\x81\\x0d)WW\\x04\\xc0\\xb2\\x95\\xda,0>\\x0f\\x15\\xae\\xa09P\\xc6\\xe2\\xb8CQ7eeq\\xe5U\\x8dW\\xe5v\\x9b5b\\xb6\\x1d\\x1d\\xcc?\\x197\\x17L\\xb2]S[v\\xe3\\xafi\\x9e\\x0b*\\x89\\xb6\\x0c\\xd92\\x97\\xa4\\n^\\x18w\\x14\\x87X\\xdf\\xb0\\xfe\\xc6\\xe2\\xb2\\xa2a\\xd5\\xae\\x12\\xac\\x99\\xac6\\x7fR\\x1f\\xf3\\xc5\\x8d`W\\xff\\x83\\xea\\x0b\\x84\\x86\\xea\\xeaO{eG/\\xb2B\\xd8K+\\x01\\xad\\x7f\\xa43z\\x16\\x83\\x14E6\\x13\\xcc\\xc0+\\xb6\\x9fI\\xdb\\x82\\x9d\\xa9}\\xc0\\x8f\\xd1\\xa2k\\xa1\\xa91\\xfc\\x9f\\n]\\xa2u-!\\xb4Sz\\xc1\\xce$ef!\\x7f\\xb7\\x14\\xf6\\x13_\\x81E1\\x82\\x8c\\xb8\\xe3\\x8e\\xda\\xb6\\xac\\x1b\\xc2\\x04f#\\x80\\x9e\\x059i\\x06\\xae\\xe8\\xae\\xd9\\x93\\xccq\\xc3H\\xc5\\x04\\xa0W\\x94d[VL\\x03x\\xa69\\xd6\\x94\\x0d\\x8d\\xbd?\\x05`\\xa3\\xd4\\xa0\\xb0\\xa2\\x12\\xe2\\xf3B\\x8b\\xe2\\x1f=\\xbbYc\\x8e\\x03\\x80\\xcb\\xd6\\xde\\xa1\\xa2We[4\\xe7\\xa20\\x9b7{CkR\\xb3\\xe6\\x88dM\\xad\\xa1\\xd4\\x9a\\xb4\\x85\\xb4\\x1ek\\x89.\\xddd\\x86a\\xeb\\xb7G\\xb2*\\x03\\xdaT9\\xda:d\\x05\\xb98;}\\xddM\\x0c\\xed\\x97\\xd7\\xe4\\x86\\xf7\\x99\\xa9{\\xccH\\xfd\\xaa\\xacd\\x19\\x82\\xd5\\xa0\\x89Y\\xda\\xcb\\xe7;\\\"\\x01\\\\\\x0d5cT\\x87~\\xe3c\\xb9\\xed\\xeb\\xed\\x8cVUl\\xc7\\x04\\xae\\xf0\\x8aV]'y\\xb6\\xbec\\xb5\\x88\\xf1m\\xdb\\xfcN\\xe3m\\x1e\\xb6\\xab\\x9c:\\xcb\\xbc\\\\]\\xd9\\xd8\\x8d3l\\x0d\\x12[\\xbd\\xd5Eb\\xebD\\x90\\xd8\\xfap\\x89\\xad\\x86\\xfd]S\\xcfc\\xb9Z6\\xacHp\\x95\\x82\\x04\\xd7\\x80M&\\x12\\\\\\x91\\xe0\\xaa\\x04\t\\xaeHpE\\x82+\\x12\\\\\\x91\\xe0\\x8a\\x04W$\\xb8B\\xbd$$\\xb8v\\x82\\x04\\xd7\\xa1 \\xc1\\x15\t\\xae\\x06A\\x82\\xab\\xf1\\x19$\\xb8\\\"\\xc1\\x95 \\xc1\\x15\t\\xaec\\xb1on\\x91\\xe0:\\xfa;\\x12\\\\\\x91\\xe0*\\x05\t\\xae\\x0d\\x12\\\\\\x8dE\\\"\\xc1\\xf5.*\\xd2Q\\x91\\x16Wlo\\xab\\xcf\\x04+T\\xac\\x1e\\xaa\\x96\\x16I=\\x95\\xdc\\x8d!\\x8da\\xd1Q\\x80D\\xd0\\xedb\\x12\\x9d\\x12\\xc4\\x04M\\xe3r\\xd1z>\\x14\\x02\\xce\\x17\\xbb\\xf2r\\xb3\\xa9Y\\xc37\\xba\\xe3\\xea\\x92\\x01hP\\xb3\\x11)\\x8b\\xeb\\xea\\xa7\\x11\\x83w\\xa8\\xac\\x0d\\xcdk\\xaf\\xb6,!\\x18\\x83\\x12e\\xfdlz\\x9c\\x84?Tc\\x84*\\x8bv+\\xc8x\\xeao\\xc2\\n\\xadh\\xc1\\xdb#\\xe3O\\x97\\xac\\xd0\\x8ao\\x8b.\\xe47q\\xf4ODi9\\xab\\xeb^\\x852H\\xd6\\nH\\xf9\\x8a\\x05\\xeas\\\\\\xfc-+\\xd7r\\x8a\\xe2@\\xbdy\\xb6\\xcd\\xa0\\xda\\x15\\xcfj\\xc8\\xda\\xc6\\x9d\\x92\\xe1\\xe0\\xe1\\x08\\x96>R=\\xbdez'\\x83?\\xc3?\\x9dlH\\xce6\\x8d\\xe6\\x9a)\\xf2\\x99v\\xa6E$[N\\x10\\xf9\\x11\\xae\\xe7\\xe5^\\xb21\\xe8nw\\x8fZ\\x1c2\\xc0\\xfa\\xf7]\\xba\\x1c\\xbc\\xc15*Fh)\\x0c\\x0d\\xe1\\xff\\xc8\\x8au\\xb6\\xa2\\x0d\\xeb\\x199R\\x83\\xe2A5\\x90\\x86\\xc5e\\xc5*o\\xd7\\x13W\\x99\\xca\\xaft\\xa0\\xe2\\xa4\\xc7\\x04D=\\x88u\\xf3%m@\\xa4\\x9c\\x18\\x97\\xcf'SZ\\xe9\\xa4\tbwQ\\xb1Z\\x91\t\\xc4\\xf4\\xea\\xe7#\\x9fr\\x0b5\\x9b\\xb2\\x8b\\xa2\\xac&H\\x81\\x9e\\x8d\\xe3OH\\xcd\\xcc\\xed\\xd8eY\\xe6\\x8c\\x16\\xae\\x0e\\xac\\xd85\\xabF\\xaf\\xba:O==\\xed\\xb8l\\xc0 \\xac\\x98y&\\x8c\\xca\\xe1\\xdf`\\x92NWVkVMC\\x85\\x1f\\xb3b%n\\xcd\\xad\\xb7e\\xfdM\\xbd\\xbe\\\"\\xbf_\\xfc\\xf1\\x0f\\xb7\\xa6\\x0d\\x91B\\xd1\\xd3t\\xbb\\xb30k\\x9bZ\\xf2\\xac\\x16\\xa3k\\xc2\\x02\\xaf\\xe7v\\xd8\\x94Ra SX\\x83\\xfcV*\\xd9\\xaa\\xccs&\\xc2\\xba\\xdf\\xa9G\\xb6m\\xded\\xea\\x89;\\xccP\\xa9\\x8f\\x7f\\xd6\\x9a\\xfaE~\\xd2\\x94\\xa0b$\\xf9\\x08Mf\\x8c/o\\x820\\xbe\\xb6d\\xa5p\\xf7\\xfd\\x12\\x9en\\xa2\\x1e\\xfc\\xb5d\\x9b\\x04\\xb1w`\\xc7\\xa1j5\\x1a.\\x87\\xd6\\xdc,\\xb1\\x03\\x98b\\x0bx<+\\xb2X;\t\\xab.\\xb2X'\\x82,\\xd6\\x87\\xc0b=\\x18Xv\\xcai\\xc7b\\x1d\\xe6@\\xa997]\\xf2\\xc9`}\\x11\\x9e\\xe6\\x01\\x86\\xacL\\xb04Q4\\xafK\\xed\\xd4\\xf2\\xd5N\\x9a+\\x15\\x00\\xd7\\x1a\\xdbT\\xe5\\xb67i\\x07\\xe59,\\x1c\\xf2b'\\xbf\\\"/\\x16b_\\xa5 /\\x16y\\xb1fA^\\xac\\x10\\xe4\\xc5\\x1e\\n\\xf2b\\x91\\x17k\\x13\\xe4\\xc5\\\"/V\\x08\\xf2b\\x91\\x17\\x8b\\xbcX\\xe4\\xc5JA^,\\xf2b\\x91\\x17\\x8b\\xbcX!\\xc8\\x8bE^\\xec@\\xec\\x9b[\\xe4\\xc5\\x8e\\xfe\\x8e\\xbcX\\xe4\\xc5JA^l\\x83\\xbcXc\\x91\\xc8\\x8b\\xbd\\x83\\x8ah\\xca\\x8b\\xb5&c\\x0eQ\\xca*X\\x90\\xf9\\xbb\\xa2\\xfc\\x0c\\x0en\\xb4\\xd3}\\xfesz\\x1e\\xed\\xeb\\xfe-\\xdbQ\\xb4\\x83\\x82\\x05\\xe1\\x87\\xd5\\xc3Chuq\\xe03h\\x07_T\\x0f=XB\\xd0\\x81J\\x87\\xd2\\xdc\\x03\\xfc\\x88'\\xcf\\xe2\\xc9\\xb3x\\xf2,\\x9e<\\x8b'\\xcf\\xe2\\xc9\\xb3x\\xf2,\\x9e<\\x8b'\\xcf\\xfagI\\x83\\x9c]\\xe4\\xec\\\"g7\\x01g\\xd7u\\xf2\\xec`W\\x97\\xe2\\xd4\\xd9\\xe1\\xb6\\x14\\x0f\\x9c\\x95\\x82\\xc4\\xda\\x80\\xbd%\\x12k\\x91X\\xab\\x04\\x89\\xb5H\\xacEb-\\x12k\\x91X\\x8b\\xc4Z$\\xd6B\\xbd$$\\xd6v\\x82\\xc4\\xda\\xa1 \\xb1\\x16\\x89\\xb5\\x06Ab\\xad\\xf1\\x19$\\xd6\\\"\\xb1\\x96 \\xb1\\x16\\x89\\xb5c\\xb1on\\x91X;\\xfa;\\x12k\\x91X+\\x05\\x89\\xb5\\x0d\\x12k\\x8dE\\\"\\xb1\\xf6.*\\x82\\x07\\xce\\x06\\x9d\\xe6\\x89\\x07\\xce\\xde\\xa2r\\xfdG\\xa5\\xe2\\x81\\xb3)\\xb4\\x88\\x07\\xce\\xe2\\x81\\xb3\\xbf\\xce\\x03g\\xef!\\xeb\\xe2\\xf8\\xe7]w\\xf8j\\x7f\\xa8\\xed/\\xc7m!x\\xbf\\xd7l-\\x8ee\\x95\\xb52%g\\x0cz\\xe3s\\xf7\\xce\\xcb\\xd5\\xd5afF_$o\\xc8\\x01Y\\xba+f\\x90\\xa7\\xd1\\xfdm\\x9c\\xa8!\\xb9\\xd9\\xd3\\x13uGi\\x1b\\xe3\\xba\\xa8'\\x1el\\xceF\\xd7\\x96\\xa4\\xbc\\x16+\\xea\\xe2!\\xf6)\\xe6\\x94>\\xc1x\\xd0o\\xd3\\xa3tM\\xa7 \\x13\\xe4j6\\xc8\\xd5D\\xae&r5\\x0dO\\xc4p5\\xc7\\xa6\\xfc\\x90\\xa8\\xa9\\xfe\\xbb\\xf115'\\xcb\\x1324\\xa5 C\\x13\\x19\\x9a\\xbd C\\x13\\x19\\x9a\\xbd C\\xb3A\\x86\\xa6Y\\x90\\xa1\\xa9\\x05\\x19\\x9a\\xc8\\xd0D\\x86&\\xd0KB\\x86f'\\xc8\\xd0\\x1c\\n24\\x91\\xa1i\\x10dh\\x1a\\x9fA\\x86&24\t24\\x91\\xa19\\x16\\xfb\\xe6\\x16\\x19\\x9a\\xa3\\xbf#C\\x13\\x19\\x9aR\\x90\\xa1\\xd9 C\\xd3X$24\\xef\\xa2\\\"\\x06\\xf6\\x89\\xadV\\x9a\\x90\\x00a!\\x84W\\xf0\\x8e.V^\\xd5\\xd7\\x83\\xdf\\xb7Yq\\\"\\xbeC\\x9e\\xa9\\xbf\\xde'\\x07\\xc8t\\xbf\\xf5\\x88\\n$\\x9f\\x0be\\x03\\xc9\\xd3q\\xbc\\x84 U\\xf8\\xf4\\xa2\\xe1\\xae\\xc0A\\x18%\\x86\\x07\\xa4j\\xa1\\x1eB*\\x90\\x94h*\\xd0nr\\xaf\\xf9\\xe4Ud\\x00!\\x03\\x08\\x19@\\x87%!\\x03h\\x16\\x03H\\x19\\xf1\\x14$ <\\xb3\\x0d\\x19A\\x96\\xdf\\x91\\x114\\x10d\\x04!#\\xa8\\x17d\\x045\\xc8\\x082\\x0b2\\x82\\xb4 #\\x08\\x19A\\xc8\\x08\\x02zI\\xc8\\x08\\xea\\x04\\x19ACAF\\x102\\x82\\x0c\\x82\\x8c \\xe33\\xc8\\x08BF\\x10AF\\x102\\x82\\xc6b\\xdf\\xdc\\\"#h\\xf4wd\\x04!#H\\n2\\x82\\x90\\x11d.\\x12\\x19AwQ\\x11;\\x17\\xc5V9MOpp\\x12\\xc2\\xab\\xf7_\\x99\\x0f\\xa45\\xf8\\x8b\\x9d\\xe93\\x85O\\x05\\xa5#c\\xdc\\xe8\\x89[S\\xd7\\x877\\xa4\\x8a\\x8b\\x98\\x8d,\\x9dia\\xea\\x99\\x07K\\xd2\\xe9\\xdb\\x14\\x04\\x84z\\xe2f\\xdd\\xb5\\xa9Bo\\x13\\x1a\\x94\\xf2\\x94\\xe4\\xadd\\xc2\\x98N\\xc34\\xbb\\xaa,7\\xb7P\\x9f-\\xab\\xaer&\\x8b\\xe7\\xb3\\x8c}\\xcd\\xeafr\\x0f9\\xd1\\xdf\\xb7rXTa\\x8an@\\x1b\\xb5\\xe0\\xf0V\\xc9\\x92oh\\xdd]\\xc8{\\xe8\\xcbZ;\\x89x1_d\\x03y\\xab\\x8bl\\xa0\\x89 \\x1b\\xe8!\\xb0\\x81\\x0e\\x06\\x96\\xf1\\xb2\\xc5\\x8e\\x0c4\\xbc\\xf4[M7\\xc93\\xb4\\xdc>\\xbd\\x11\\xf7[Ks;\\xad\\x9c\\xb4N4\\xafK}\\x9c#_\\xd9\\xa4\\xa5Ra\\x04\\xad\\xacMUn\\xa7\\xd6lZ\\x1a=\\xb8\\x89\\xfb\\xd0\\xd4!\\xd7h\\xf2+r\\x8d \\x86V\\nr\\x8d\\x90kd\\x16\\xe4\\x1a\tA\\xae\\xd1\\xa1 \\xd7\\x08\\xb9F6A\\xae\\x11r\\x8d\\x84 \\xd7\\x08\\xb9F\\xc85B\\xae\\x91\\x14\\xe4\\x1a!\\xd7\\x08\\xb9F\\xc85\\x12\\x82\\\\#\\xe4\\x1a\\x0d\\xc4\\xbe\\xb9E\\xae\\xd1\\xe8\\xef\\xc85B\\xae\\x91\\x14\\xe4\\x1a5\\xc852\\x16\\x89\\\\\\xa3;\\xa8\\x88\\xe6\\xb9Xk2&\\x14\\xa5\\xac\\x82\\x05\\xa2\\xbf+\\xba\\x8f8\\x05a\\x07\\xe4\\xfa\\x0c\\xe2\\x16\\x12|=\\x93ow\\x9c\\x1f\\xee\\xd1+\\xca\\xc0De\\xc26-\\x99\\xe0\\x12\\xa8\\x93c\\x06t\\x82Q\\x14^\\x16\\xb6\\xe6C\\xb1\\x8b\\xe4\\x19XB\\xea\\xdb\\xea\\x81\\x07K\\x11\\xd2\\xcd\\xb5!\\x91\\xd3{\\xf0\\xba_%\\xf4\\xad*I69\\xbd\\x10~\\x99\\xb8\\xcfNj]\\x10p\\x90\\xfd\\xa3\\x05\\xd9?\\x07\\x12V]d\\xffL\\x04\\xd9?\\x0f\\x9d\\xfd\\xa3\\x16\\x018\\xf5G\\x92}\\xa66\\xcbH\\xfd\\xd1f\\xd6A\\x01:rs\\x80L\\xa6\\x119@\\xc8\\x01\\xb2\\xfd\\x8e\\x1c\\xa0\\x81 \\x07\\x089@\\xbd \\x07\\xa8A\\x0e\\x90Y\\x90\\x03\\xa4\\x059@\\xc8\\x01B\\x0e\\x10\\xd0KB\\x0eP'\\xc8\\x01\\x1a\\nr\\x80\\x90\\x03d\\x10\\xe4\\x00\\x19\\x9fA\\x0e\\x10r\\x80\\x08r\\x80\\x90\\x034\\x16\\xfb\\xe6\\x169@\\xa3\\xbf#\\x07\\x089@R\\x90\\x03\\xd4 \\x07\\xc8X$r\\x80\\xee\\xa0\\\"\\xffX\\x1c\\xa0\\xb2(\\xe4\\xf9B\\xf5\\xf1\\xcf\\xfd\\x7f\\xfc\\xd2\\x91\\x83\\xec$\\x9f\\xc1\\xd5+\\xaf\\xbb\\x17_\\xab\\xd7\\xfa\\xd3}\\xd4\\xdd]\\xba\\xbc\\x83cj(\\xe9?\\xdb\\x15\\xc8\\x8a\\xb5\\xf1\\xdc\\x9f\\xc3\\x0f\\xa9\\xa7\\x1e,\\xadg\\xac\\xc7\\xa14\\xf7\\x00.\\n\\x06\\x815\\xac&at\\x15%\\x95\\xcfj\\x7fFOuV\\xd8\\xe2\\xbf\\x80\\xa0\\x1c+\\xda\\xad}\\xbb\\xf6\\x0d\\xf9\\xf8\\xe9\\xe5\\xa7\\xb7\\xe7\\x9f\\xdf\\x9f\\xbc?\\xf9t\\xf2\\xf2\\xdd\\xc9\\xbf\\xbf}s\\xfe\\xf9\\xfd\\xc7\\xd3\\xb7\\xafO\\xbe;y\\xfb\\xc6\\xfb&\\x7f\\xcf\\xfb\\xd0\\xa7\\xb3\\x7f\\xfbp\\xfa\\xf6\\xbd\\xf79\\xd0C\\xaf\\xdf}\\xf8h\\xad\\x98\\xc6\\xe6#\\xdb\\x05\\x89\\x02r\\xf9(\\xfaI\\x13\\x1a\\x04\\xb3N\\xf7\\x96`\\xce\\x08\\xccIu\\xa3\\xc4w\\xec=\\xa4FH\\xedX\\xd3d\\x93\\x8f\\x08o\\xcc\\x11Q\\xda<\\\"\\xfc\\x7fIY\\x91Q+\\x1d\\xc1\\x05\\x7fw\\xbf o\\xd4&K\\xb4\\xd0_\\x12/\\x87Ol\\xddz\\xee\\xe1\\xfcG[\\x8b\\x91\\\\q{#\\x02\\xfa;&\\\"\\xec\\x97\\xb4X\\xd7\\x97\\xf4\\xca\\x18\\x80\\x9d\\x14\\xac\\x1a9-{p\\xad\\xa4\\xe2v\\xe82I\\xdd\\xb0\\x9d\\x86\\xb4Ve[4\\xac\\xda\\xd1\\xaa\\xd9K\\xae\\\"\\xe0\\x93\\xa6\\xef\\xadJ\\xee\\x994\\xd3\\x8f-\\xc8\\x87\\x1d+\\x06\\x06\\xb6\\xb2\\xeb\\xaabt-P\\xa2\\x9a\\x15k\\xe1\\x06*\\xda\\xa1\\xbeL\\x11P59\\x00\\xa6\\x95\\x13\\x94\\xcdU^\\xd6L\\x96\\xbb\\xa2\\x05)J\\x92\\x97\\xc5\\x05\\xab\\xb8#( \\x01\\xfde\\xc1B\\x11\\x1f\\xb6~\\xcfY\\xa1\\xb2Z3nh<\\xa6\\xec\\xe6\\x92)\\xcc\\x83\\x0d\\xe7\\x84x\\x9b\\x89Z\\xb4\\x85\\xfa\\x8f\\xdb\\xb3j\\x1f\\xce\\xde\\xbc=;\\x7f\\xff\\xe1\\xfd[\\xc0\\xa4\\xef_\\xf8\\xfc^\\xfc?\\xe0I\\xf7s\\x9d\\x15\\n\\xaa\\x07\\xd4\\xf8\\xd8\\x9a\\xf7\\x82\\xfc\\x9dU\\xe57r#\\xcd]i\\xa5~kA\\xbaG]\\xe3o\\xa2\\x98\\x17\\xdd\\x0d\\xa0|\\xb0-\\xb9\\x0d\\xcc\\xb3k\\xd1\\xb3|CP\\xece\\xa1Gj\\xeb\\xb0\\xa5{\\xb2\\xce\\x04N#\\xd8W\\xc2\\x1a\\xf0\\x07\\\\\\x18`G\\xd1\\xda\\x93\\x1bV1>z\\x1b\\xe7\\x1c\\x19uI_CZ\\x0d\\xab\\xc7\\xbe\\xd2U#\\xa8q\\x83Z\\x98>e\\xfc\\xd2\\xd0\\xa0\\xf8\\xd6\\xf2\\x89\\xed\\x01\\xad\\xe1V\\xef\\x82\\x00<\\x0c\\xf1\\x8ct\\xd5]\\x91Y\\xc0\\xbc\\\"\\x01\\xc3\\x90\\xa8\\xaf\\xdam\\xaeRoy\\xa3b$\\x02\\x0cu\\x96'\\xec\\xd4\\xc8\\xfb\\xb1w|\\xbfWJ\\xd0h\\xddw}w\\xd9\\x9be\\x19 \\xdaK>\\xbf,w\\xd6\\x8er9\\xa0R\\xacn\\xa8\\x14@{l\\xd4\\xcc^\\xf4Y\\xac}\\xa5\\x07\\xfb\\xb7\\xfaH80r\\x1a+|\\x92\\xf7\\xa3}\\xe8\\xa9\\xf9V\\x0bZ\\x97\\x83[%X\\x02Z\\xc5\\\"X\\xd1T\\xf4\\xdab\\xa0\\x14{a\\x06\\x1e\\xed\\xd7C\\xb9\\xa3|\\xef\\xaa\\xab\\xa4>\\xa9\\x8dWV\\x13zQ1\\xb6&\\xed\\xae,\\xc8\\xba\\x15Q1\\x17q\\xa4\\xf3\\x0f\\x8cOx\\xa6(\\xbcEb\\xd6\\x197\\xdc\\xbd\\xf8g\\x07\\xfc{\\xdd2\\xee\\xfa$\\xc4l\\x9c\\xe8\\x02\\xd6j+\\xd9\\xb9\\xd0t0.\\xf8\\x06\\xb5\\x8f\\xbc\\x8a\\xc6R\\x8b\\xf9\\xd4+\\x9c\\xf1\\xc7\\xbe\\xba\\xea,\\xd6C[b<\\xa1\\x18\\xb4m\\x9e\\x96\\xb5\\xa3\\x17Y!\\xf6\\xcc\\x86]\\xa7>3V?b;\\xecpV\\x12E\\xc1\\xbe6\\xe7W\\xcc\\xb2<y{\\xdb\\xcb\\xde\\x18\\xe9\\xea\\xe0\\x0eX-\\xba\\x16\\xfa\\xd6W\\xfeOEf\\xa2\\xb5rGO\\xe9\\x05;\\x93\\xa7\\xe4.\\xe4\\xef\\x96\\xc2$=\\x9c\\x17\\xc3\\x8b\\xe5\\ndd[\\xd6\\x0da\\x82\\\"$xE\\x0br\\xd2\\x0c\\\"\\x9f\\xbbfO2\\x1b[\\x96\\xaf?L\\xf8\\x05EI\\xb6e\\xc54_\\xcc\\xb4\\xca4eC-\\x8c`\\xb02\\xfd\\xb9\\x1dV\\xeb$>/\\xb4(\\xfe!3c\\xf8\\xf0\\xd4\\x14\\xb7\\x01\\x9f\\xca\\xd6\\xde\\xa1\\xa2\\xc5:v.\\n\\xb3Y\\xe8\\x1b\\xca\\x8dxsD\\xb2\\xa6\\xd6\\xcc\\xbd\\x9a\\xb4\\x85\\x9c\\xa4k\\xb9~\\xdfd\\x86a\\xeb\\x9f\\xfc\\xb2*\\x83\\x1b\\x81\\xcbQ\\xa4:+\\xc8\\xc5\\xd9\\xe9\\xeb>\\x15@\\x85\\x81k\\xbe\\x9f0n\\xae,\\xc4\\xd0UY\\xc92\\x04\\x89V\\x9f\\xc5\\xac\\x83\\xca|\\xd7$6EC\\xcd\\x18\\xd5\\xa1\\xdf\\xf8Xn\\xfbz;\\xc1\\xd1\\x8a\\xed\\x98\\xb0\\x15\\xafh\\xd5u\\x92\\x07i\\x19\\xabE\\x8co\\x1b\\xd62\\x85w\\xf1\\xf2vL\\xd8\\xc2\\x84\\xad\\xc3\\x920a+\\xe2\\xf2\\xf6\\xc3\\x18\\xff\\xf4\\xf6\\xf63\\xf0\\xed\\xed\\x96\\x02\\xf1\\xe6v%\\x98I\\x85\\x99T\\xbd`&\\x15fR\\xf5\\x82\\x99T\\x0dfR\\x99\\x053\\xa9\\xb4`&\\x15fRa&\\x15\\xd0K\\xc2L\\xaaN0\\x93j(\\x98I\\x85\\x99T\\x06\\xc1L*\\xe33\\x98I\\x85\\x99T\\x043\\xa90\\x93j,\\xf6\\xcd-fR\\x8d\\xfe\\x8e\\x99T\\x98I%\\x053\\xa9\\x1a\\xcc\\xa42\\x16\\x996\\x93\\xea0\\xc1e\\x9aI\\xd5\\x93\\xdf\\xee$\\x87\\xa9\\xa7\\xff,\\xae\\xd8\\xdeV\\xab\t>\\xa7\\x984T\\x19\\xf5\\x8a5mUH\\xbe\\xc4\\x90:\\xb0\\xe8h7\\\"\\xdcu1\\x89\\x0b\t2\\x80\\\"\\xaf9\\xa94\\x1f\\n\\x01\\xa1\\x8b\\xfdp\\xb9\\xd9\\xd4\\xac\\xe1[\\xccqu\\xc9 \\\\_\\xb3\\x113\\x97\\xeb\\xea\\xa7Q\\\"\\xd4PY\\x1b\\x9a\\xd7^mY\\x82\\x1f\\x06%\\xca\\xfa\\xd9\\xf48\t<\\xa8\\xc6\\x08U\\x16\\xed\\x96U\\xd9J\\xffM\\xcc\\x7f\\xc5f\\x96\\x91\\x9fKVh\\xc5\\xb7E\\x17l\\x9b\\xb8\\xd8'\\xa2\\xb4\\x9c\\xd5u\\xafB\\x19\\x9ej\\x05\\x8c{\\xc5\\x02\\xf59.\\xfe\\x96\\x95;\\xe10\\x18\\xd4\\x9bg\\xdb\\x0c\\xaa]\\xf1\\xacF\\x8am|%\\x19\\x88\\x1d\\x8e`\\xe9\\x9d\\xf0_G\\xa5\\xedd\\xd8e\\xf8\\xa7\\x93\\x0d\\xc9\\xd9\\xa6\\xd1\\xfc.E\\xf8\\xd2n\\xac\\x88!\\xcb\t\\\"?\\xc2\\xf5\\xbc\\xdcK\\x06\\x04\\xdd\\xed\\xeeQ\\x8bC\\xd6U\\xff\\xbeK\\x97\\x837\\xb8F\\xc5\\x08-\\x85\\xa1!\\xfc\\x1fY\\xb1\\xceV\\xb4a=\\x0bFjP<\\xa8\\x06\\xd2\\xb08u*\\xeaX\\x9dT~\\xa5\\x83\\xf3&=&\\xc0\\xe1A\\x94\\x99/&\\x03\\xf2\\xe2\\xc4\\xb8|>\\xa9'\\xbd5i\\x82\\xf0\\xeb+V+\\x18_L\\xaf~>\\xf2)\\xb7P\\xb3)\\xbb(\\xcai^\\x88\\x9e\\x8d\\xe3OH\\xcd\\xcc\\xed\\xd8\\xe9\\xf9\\xde\\x86\\x0e\\xac\\xd85\\xabjk\\xe2\\xe9\\xa4\\xf3\\xd4\\xd3\\xd3\\x8e\\xcb\\x06\\xac\\xbd\\x8a\\x99g\\xc2\\xa8\\x1c\\xfe\\x0d&)l\\x82\\x88=\\x0d\\xd2}\\xcc\\x8a\\x95X\\xe4\\xeamY\\x7fS\\xaf\\xaf\\xc8\\xef\\x17\\x7f\\xfcCRm\\x00\\x13\\\\e\\x15\\x8ei\\xdb\\\\\\x1e_?[\\xb2\\x86>;\\xa6+1\\x02\\x1cy\\xac/\\xd5\\x13J\t}\\xca\\xaa8\\xb9\\x9c7[\\x97\\xa1\\xde\\x1c)\\xfd\\xb1\\xb9\\xf9\\x8f\\xd5\\xb3\\xa3\\xec\\xd5\\x97\\xe3r\\x1el\\xce\\xeaXgCi\\x90\\xc6\\x814\\x8e\\x91 \\x8d\\x03i\\x1cfA\\x1a\\x07\\xd28\\x90\\xc6\\x814\\x0e\\xa4q \\x8d\\x03i\\x1cH\\xe3@\\x1aG'H\\xe3@\\x1a\\x07\\xd28\\x90\\xc6!\\x04i\\x1cH\\xe3\\x18\\x88}s\\x8b4\\x8e\\xd1\\xdf\\x91\\xc6\\x814\\x0e)H\\xe3@\\x1a\\x87\\xb9\\xc8`\\x1aG/*GYc!\\x12,s\\xa0BZ\\\\\\x87\\xafL\\xce\\x89\\xedP\\xcc\\xe1m\\x94#pSY\\xdbC\\xa4G\\x8a\\x13Y\\xc1\\x13Z\\xf0\\x84\\x96\\x87wB\\x8b;\\x94#\\x80]\\x0d\\x93N\\xd3\\xfe+S\\xda\\xbfJ\\xf4\\x7fi\\x9e\\x8c}\\x9e\\xffaL\\xc2\\x83[\\xe3y\\x00\\x93_\\xf1<\\x00\\xdf\\xe8\\xed\\x05\\x81d\\x04\\x92\\xcd\\x82@\\xb2\\x10\\x04\\x92\\x0f\\x05\\x81d\\x04\\x92m\\x82@2\\x02\\xc9B\\x10HF \\x19\\x81d\\x04\\x92\\xa5 \\x90\\x8c@2\\x02\\xc9\\x08$\\x0bA \\x19\\x81\\xe4\\x81\\xd87\\xb7\\x08$\\x8f\\xfe\\x8e@2\\x02\\xc9R\\x10HF \\xd9\\\\d0\\x90\\xec:\\x0f\\x00\\xb3\\xef\\xc3R\\x9b1\\xfb\\xfe\\x16\\x95\\xeb\\xcf\\x1b\\xc7\\xec\\xfb\\x14Z\\xc4\\xec{\\xcc\\xbe\\xff\\xc7\\xcc\\xbe\\x7f\\xd9\\n\\x8f\\xdb\\x99~\\x7f\\xfc3]\\xaf+V\\xd7\\xbfx\\x13\\xf1\\xfb<|\\xf5\\xdf\\x8aD \\xd1\\x1eR\\n\\x8f\\x84\\x17\\xa5\\xfb\\xdc\\x94c\\xff\\x1b\\xdd\\xd0\\x87\\x9dbo#FDQ\\xba\\x1a'\\xbf\\xc1\\x1b\\xda\\x87\\xc4\\xc6\\x933\\x1b`\\xbc\\x86\\x18V\\x83\\x9b\\xbd\\x10\\xc5]\\x10\\x9f\\xb0\\x14\\xe8e.$\\xe0-D\\xb2\\x16\\xacX/\\x8c\\xb30\\x8b\\xb1\\x10\\xc5W 4\\xb7]\\x14\\xdb\\xc0\\xd8\\n1\\\\\\x05\\x17\\x82\\x08b*$\\xe6)\\x80X\\n\t9\\n^\\x86B\\\"~\\xc2\\x1cvB07!\\x013!1/\\xc1\\xc3JH\\xceI\\xb8\\x1dFBr>\\x02\\x9c\\x8d\\x10\\xc7Ep(\\xdd\\xc7DH\\xc6C\\x80\\xb1\\x10\\x0cA\\x0b\\xbb}M\\xcc@\\xf0\\xf1\\x0ff\\xb2\\x0f\\x1c\\xdc\\x03\\xaf{\\xe2\\xe5\\x1d\\xc0\\xfc\\x97\\xb4\\x9c\\x03\\x1f\\xe3\\xc0_\\xa78\\xb6\\x81\\xb6\\xec\\x86\\x02}\\\\\\x83\\x84L\\x83\\x19<\\x033;\\xc8\\xc52H\\xcb1p3\\x0cR\\xf0\\x0b@\\x00\\xb9\\x87[\\x00f\\x16\\xd8!\\xbbpV\\x81\\xbd,cx<\t\\x9f DYP.\\x81_'`\\x1eA\\x04\\x8b\\xc0\\x0c%$b\\x10\\x80\\xf8\\x03~\\xf6\\x00\\x84;\\xe0\\xd4b(o\\x00\\xca\\x1a\\xb0q\\x06\\x120\\x06\\x02\\xf8\\x02\\xe1l\\x010W\\xc0\\x01\\xb1[\\xab\\xe3x\\x07\\xca\\x11H\\xc3\\x10pV\\xde\\xf0K\\x147@\\x87t\\x0d\\xe5Y\\x98\\x01\\x89y\\x01vV@,'@D\\x17L\\x1573\\x02\\xd2\\xf2\\x01l\\x9bH/\\x17\\xc0\\x06V\\xdax\\x00iY\\x00\\xf1\\x1c\\x00\\x0b\\xde\\x1f\\x85\\xf6{\\x91\\xfd0\\\\\\x1f\\x8c\\xea\\x07b\\xfa!\\x88\\xbe\\x15\\xcf\\xb7\\xd7\\x06\\x8a\\xab\\xc2\\xb0\\xfc@$?\\x00\\xc776--\\x86o\\x9b\\x143\\xf0{c\\xcc\\xc3\\x8a\\xde\\xc7a\\xf7.\\x9c>=J?\\x7f$\\x81\\x11z(>?^\\x19\\xe1\\xb9\\xa8\\x11\\xa9\\xa8\\x93\\xd2\\x86\\x99\\xa8\\xfd\\xf71\\xc5t$\\x98b\\xea\\x1b\\x94\\xbd$\\x06b\\xa0PL\\x1c\\x18c-\\x0cSL1\\xc5\\xb4\\x97\\x18\\xd8\\xc6Z\\x18\\xa6\\x98\\x1eJ\\\"\\x08g\\x1e\\x88\\x13\\x01\\xe3$\\x01r\\x92C9^0\\xe7\\x16\\xe0\\x9c\\xdb\\x02tn\\x01\\xd2\t\\x01uba\\x1d\\xa7\\x0d\\xf7\\x01;\t\\xa1\\x1d(\\xb8\\x13\\x08\\xef$\\x07x\\xfc\\x10\\xcfl\\x90\\x07SL\\xbd5\\x8b\\x03}\\x8cEa\\x8ai\\x0c\\xfc\\xe3\\x03\\x80\\xd2@@@\\\\\\xc3\\x0b\\x03\\x05\\x00A\\xdeT\\xbf@0\\x08SL1\\xc5\\x14\\x02\\x13y\\xb5\\x1a\\n\\x15\\xc1\\xc1\\\"L1\\xd5\\x82)\\xa6\\x98b\\x8a)\\xa6ppi\\x0e\\xbcd,\\x0eSL\\x8d/\\x80\\x00)L1M\\x07Oa\\x8a\\xe9l\\xf0*\\xcd\\x98\\x03\\x03Xp\\x08\\x0b\\x96b\\xaaRd\\x06e\\x8c\\xf6\\xa5\\xea\\xe7\\xd1\\xc1\\xc3\\xfaoM\\xa9N\\xd2\\xdd\\x8cCi3/\\x9f\\x9e\\x95E$\\xabv\\xbe\\xdc\\x9fg\\xeb\\xe3\\x9f\\xb3\\xb5?\\x8b\\xe8\\xa5|\\xe5\\xd5\\xfe\\xe4\\xcdAB\\x91ni\\x9fP\\xa4~\\x90\\x89o\\xba\\xd1\\x80{>\\xff\\xbcx\\xee\\xba\\xe9sP\t\\xf5\\xd4COH:W\\xba\t\\x80\\xe0\\xc2\\xd4\\xa4\\n\\xb3\\x1cg<\\xc4\\\\\\x07\\xca\\xf3\\xc2\\xaf\\x93bLc`\\xb7R\\x9eV\\xf7,\\xc2\\xaf\\x93_\\x11~\\x85\\x85\\xef\\x08\\xc2\\xaf\\x08\\xbfZ\\x9fD\\xf8U\\x08\\xc2\\xaf\\x87\\x82\\xf0+\\xc2\\xaf6A\\xf8\\x15\\xe1W!\\x08\\xbf\\\"\\xfc\\x8a\\xf0+\\xc2\\xafR\\x10~E\\xf8\\x15\\xe1W\\x84_\\x85 \\xfc\\x8a\\xf0\\xeb@\\xec\\x9b[\\x84_G\\x7fG\\xf8\\x15\\xe1W)\\x08\\xbf\\\"\\xfcj.2)\\xfc\\x9a\\x0d\\x0d\\xb6\\xebT\\xdfl\\xad1\\xad1\\x06\\xd9m\\x87{Pv\\xc9\\x04.\\x9b\\xb1\\xb5\\x8a\\xf5o\\x0e\\x16\\x06\\x15\\xc9\\x16\\xd1\\xae%c|\\xb0\\xaa\\x93I\\xc9\\x93<\\xbb\\x12\\xe1\\xb6\\xc9\\x87\\xea\\xa72\\xe8\\xa2\\xc6\\xdc\\xa8\\xb8v\\xb7\\x16\\xfb\\xb9\\xa6\\xd4\\xa5\\xf0\\xc1B6m\\xd3V]X\\xaa\\xabi\\xdb\\\\J\\xe08!hL\\xc6\\x88Uw\\xc2\\xea\\x1c0y\\xc9V\\x97\\x7fxn\\x07\\x90_\\x89\\xdfO+\\xb6\\xc9\\xbe*\\x8d\\xd7d9\\xf8\\xa3z\\x01\\x82{\\x1a\\xc1\\xe1W\\x87e=XXX\\xb6\\xfb|'*\\x1b\\x00\\x0c\\xba\\xc30C\\x0dx\\xb1\\xddq\\x87T\\xbb\\xd5\\xa4\\xb0\\xa0\\xfb]\\xff\\xdc=\\x84\\xe8\\xef\\x81\\x1e\\x11\\xfd\\x85D\\x0f\t\\xa2\\xbf\\x88\\xfeZ\\x9fD\\xf4W\\x08\\xa2\\xbf\\x87\\x82\\xe8/\\xa2\\xbf6A\\xf4\\x17\\xd1_!\\x88\\xfe\\\"\\xfa\\x8b\\xe8/\\xa2\\xbfR\\x10\\xfdE\\xf4\\x17\\xd1_D\\x7f\\x85 \\xfa\\x8b\\xe8\\xef@\\xec\\x9b[D\\x7fG\\x7fG\\xf4\\x17\\xd1_)\\x88\\xfe\\\"\\xfak.2\\x18\\xfd\\x9d\\x8f@vW\\xe2\\x9d\\xf3\\xad\\xb6\\xf3b<\\x9d\\xc7\\xd8\\xb0\\xfaS\\xf9Q\\xce\\xebUY\\\\\\xb3\\xaa\\xa9\\xbbk\\xf3^\\xea\\xacV\\xfe\\x18\\xef\\xcc\\xd16?\\x1a\\xad4}\\\\=\\xf7`QK\\xadX\\xa9\\x81\\x00D\\xcb\\x1d?0\\xa9\\xc2\\x0b_\\x9a\\xcbP\\x9d\\xd8g\\xa5\\\"~9|\\x01\\xf1K\\xcb\\xef\\x88_\\x0e\\x04\\xf1K\\xc4/{A\\xfc\\xb2A\\xfc\\xd2,\\x88_jA\\xfc\\x12\\xf1K\\xc4/\\x81^\\x12\\xe2\\x97\\x9d ~9\\x14\\xc4/\\x11\\xbf4\\x08\\xe2\\x97\\xc6g\\x10\\xbfD\\xfc\\x92 ~\\x89\\xf8\\xe5X\\xec\\x9b[\\xc4/G\\x7fG\\xfc\\x12\\xf1K)\\x88_\\\"~i.2\\x18\\xbf\\x04\\x1c\\x1e,q\\xc9AI\t\\x939\\x07\\xbb\\xf3\\x94H\\xaa\\xfc\\x9e\\x1fJ\\x95\\xf0\\xdb\\xa7R@y\\x03(UA\\xa8\\xca\\xf44%\\x19\\xaa`.\\x84:\\xfa\\xa8z\\xee\\xc1C\\xa8B\\x01A\\x98\\x9a#\\x04\\x03\\x82WGj\\xf2\\xc2\\xab#PvR \\xa2\\xab\\xe6\\x17\\x10]\\xb5\\xfc\\x8e\\xe8\\xea@\\x10]Et\\xb5\\x17DW\\x1bDW\\xcd\\x82\\xe8\\xaa\\x16DW\\x11]Et\\x15\\xe8%!\\xba\\xda\t\\xa2\\xabCAt\\x15\\xd1U\\x83 \\xbaj|\\x06\\xd1UDW\t\\xa2\\xab\\x88\\xae\\x8e\\xc5\\xbe\\xb9Etu\\xf4wDW\\x11]\\x95\\x82\\xe8*\\xa2\\xab\\xe6\\\"o\\x05]=\\xd8g\\xcf\\x84W\\xe7\\xe0\\xa8\\xdbr\\xdd\\xe6\\xec\\\\\\x1d\\x0d\\\\\\xdb\\xf1\\xd3\\x1f\\xc5\\x83*\\xe5\\xb4\\xeeoV\\xcds9I\\xbefu#@\\x06\\xf1\\x9c>k\\xb8\\x0bFDC\\xa8\\xe3\\xef\\xaa'\\x1e.x:\\xd2\\xe3P\\x1aD\\xbe\\x10\\xf9\\x1a\t\\\"_\\x88|\\x99\\x05\\x91/D\\xbe\\x10\\xf9B\\xe4\\x0b\\x91/D\\xbe\\x10\\xf9B\\xe4\\x0b\\x91\\xafN\\x10\\xf9B\\xe4\\x0b\\x91/D\\xbe\\x84 \\xf2\\x85\\xc8\\xd7@\\xec\\x9b[D\\xbeF\\x7fG\\xe4\\x0b\\x91/)\\x88|!\\xf2e.2\\x18\\xf9\\x92\\xe2\\xdeo\\ndj\\x8c\\xe8\\xf8\\xf3\\xbc\\x0e\\xbb@\\x14s<A\\xa4\\xceN_c\\xce\\x97\\xe1\\x05\\xcc\\xf9\\xb2\\xfc\\x8e\\xc8\\xd7@\\x10\\xf9B\\xe4\\xab\\x17D\\xbe\\x1aD\\xbe\\xcc\\x82\\xc8\\x97\\x16D\\xbe\\x10\\xf9B\\xe4\\x0b\\xe8%!\\xf2\\xd5\t\\\"_CA\\xe4\\x0b\\x91/\\x83 \\xf2e|\\x06\\x91/D\\xbe\\x08\\\"_\\x88|\\x8d\\xc5\\xbe\\xb9E\\xe4k\\xf4wD\\xbe\\x10\\xf9\\x92\\x82\\xc8\\x17\\\"_\\xe6\\\"\\x83\\x91\\xaf\\x84\\xf9W\\xc7?\\xf3\\xe9\\xe98\\xc6r\\x04z\\xbd\\xda\\xf3\\xd1\\xde\\xe5b\\xf1\\x0e\\x1d\\xa7_\\x91\\xac\\xd8\\x94|YV\\x7f\\xe6\\x85\\xab\\x12\\xedIV\\xb2T\\xf5\\xd8C\\xcf\\xb4\\xb2\\xc1M\\x16\\xe4\\xc8\\x8d\\x1b\\xb9Q#o\\xc0\\x04\\x12qH\\x8e\\x17\\xc1\\xd0\\xa2\\x18\\xac\\xc8\\x8d\tE!B\\xe2\\x13\\x96\\x02\\xbdxP\\x024(\\x12\\x0b\\xb2F\\xd0aH\\xd0,\\x1c(\\n\\x05\\\"4\\xcfmZ\\x84a@1\\x08\\x90+.\\x0b\\xc2\\x7f\\x12\\xa3? \\xec'!\\xf2\\xe3\\xc5}\\x12\\xa1>s0\\x9f`\\xc4'\\x01\\xde\\x93\\x18\\xed\\xf1`=\\xc9\\x91\\x9e\\xdb\\xc1y\\x92\\xa3<p\\x8c'\\x0e\\xe1q(\\xdd\\x87\\xef$Cw`\\xd8N\\x10\\xb2\\x93\\x18\\xd7\\xf1\\xa1:31\\x1d\\x07\\xa2\\xe3uO\\xbch\\x0e\\xcc\\x7fI\\x8b\\xe4\\xf8p\\x1c\\x7f\\x9d\\xe20\\x1cm\\xd9\\x0d\\x05\\xfa\\x10\\x9c\\x84\\xf8\\xcd\\x0c\\xf4\\xc6\\x8c\\xb9\\xba\\xb0\\x9b\\xb4\\xc8\\x8d\\x1b\\xb7I\\x81\\xda\\x80`\\x07\\x0fb\\x03\\xc6k\\xec\\x81\\xd0p\\xac\\xc6^\\x961\\xe8\\x90\\x04\\xa5\tQ\\x16\\x14\\xa1\\xf1\\xeb\\x04\\x8c\\xceD`3\\xe6\\x00M\\\"\\\\\\x06\\x84\\xca\\xf81\\x19\\x08\\\"\\xe3\\xd4b(\\x1a\\x03\\xc5blHL\\x02\\x1c&\\x00\\x85\t\\xc7`\\xc0\\x08\\x8c\\x03\\xb8\\xb0V\\xc7\\xf1\\x0e\\x14yI\\x83\\xbb8+o\\xf8%\\nq\\xd1\\xe8\\x8a\\xa1<\\x0b\\xde\\x92\\x18m\\xb1c-\\xb1H\\x8b\\x88.\\x98*n\\xc6Y\\xd2\\xa2,\\xb6M\\xa4\\x17a\\xb1\\x85\\x80m\\xe8JZl%\\x1eY\\xb1\\xa0(Q\\x18\\x8a\\x17/\tCK\\xc0XI R\\x12\\x82\\x93XQ\\x12{m\\xa0\\xd1j\\x18B\\x12\\x88\\x8f\\x04\\xa0#\\xc6\\xa6\\xa5EFl\\x93b\\x06*b\\x8cyX1\\x918D\\xc4\\x85~\\xa4\\xc7>\\xe6\\x8f$0\\xee\\x01E=\\xe6e\\xfbHh!Q\\xca\\x8fB?\\x86y?}\\xbd0\\xa1g$\\x98\\xd0\\xe3\\x1b\\xac\\xbd$\\x06h\\xa0\\x10M\\x1cHc-\\x0c\\x13z0\\xa1\\xa7\\x97\\x188\\xc7Z\\x18&\\xf4\\x1cJ\\\"hg\\x1e\\xb8\\x13\\x01\\xef$\\x01x\\x92C<^\\x90\\xe7\\x16`\\x9e\\xdb\\x02zn\\x01\\xea\t\\x01{b\\xe1\\x1e\\xa7\\x0d\\xf7\\x01>\t!\\x1f(\\xe8\\x13\\x08\\xfb$\\x07~\\xfc\\xd0\\xcfl\\xf0\\x07\\x13z\\xbc5\\x8b\\x03\\x83\\x8cEaBO\\x0c,\\xe4\\x03\\x86\\xd2@C@\\xbc\\xc3\\x0b\\x0f\\x05\\x00D\\xde\\xc4\\x8a@\\x90\\x08\\x13z0\\xa1\\x07\\x02\\x1fy\\xb5\\x1a\\n!\\xc1A$L\\xe8\\xd1\\x82\t=\\x98\\xd0\\x83\t=p\\xd0i\\x0e\\xecd,\\x0e\\x13z\\x8c/\\x80\\x80*L\\xe8I\\x07[aB\\xcflP+\\xcd\\x98\\x03\\x03[ph\\x0bv\\x89\\xd3 \\x85\\x86\\xdc\\xef\\xd5M\\xa2\\x96\\x8e\\x1b\\x9bN\\xc5\\xef\\xe4\\xa7\\x96U\\x19\\x9375\\xf5\\x0d\\xd3Fp\\x94\\x06\\xc4\\xbf&\\xdf\\xfa\\x8dn\\xca\\x03\\xcd\\xfe\\x19\\xb6}(\\xa3\\xca\\xc8\\x87d\\x90W\\xadY\\xbd\\x02\\xf4\\x92$3\\xa3\\x0e\\xd7\\x04'^\\xe5F\\xab\\xb6\\xf4\\xeb\\xf9\\x96m\\xcb\\xf3\\x0e\\\\q\\x80Z \\xcan\\x9b\\x15\\xcd\\x9f\\xffhx\\xa4\\xf9z^g\\x17\\xe7y\\xb6\\xcd\\x0c\\xa9P$\\xdd7\\xfe\\xce\\xceWe\\xdd\\x9c\\xefXu\\xbe\\xdc7s9\\xc8\\xd6\\x8f\\xf1\\xd6\\\\\\xb3*\\xdb\\xec\\xe5\\xf7\\xd8\\xfa\\xf9\\x9f\\xfe\\xf4\\xec\\x7f\\xdc\\xd5\\xe7j\\xb6\\xda=\\xff\\xd3\\x9f\\xaf\\x9e\\xa5\\xff \\x00+\\x97s\\x0f\\x04\\x8f+@\\\\\\xcd\\xf1\\xb3\\xd3\\xd7\\x93\\xf2\\x10\\x11GD\\xdc\\x1b\\x0e\\x86DT\t\\\"\\xe2\\x88\\x88[\\x9fDD\\\\\\x08\\\"\\xe2\\x87\\x82\\x888\\\"\\xe26AD\\x1c\\x11q!\\x88\\x88#\\\"\\x8e\\x888\\\"\\xe2R\\x10\\x11GD\\x1c\\x11qD\\xc4\\x85 \\\"\\x8e\\x88\\xf8@\\xec\\x9b[D\\xc4G\\x7fGD\\x1c\\x11q)\\x88\\x88#\\\"n.2\\x18\\x11\\x0f\\xc4\\xa9\\x97\\xb4\\xb8\\xeap\\xea%\\xcdi\\xb1b\\xf5\\xf1\\xcft\\xbd\\xaeX];\\x8e\\xb7|\\x99\\xe7\\xaf\\xd4\\xe3\\x1dp-\\\"\\xbf\\xf2\\x8f\\xc2\\xf8\\xe69Y\\x95\\xdc\\x84q\\xcdSRg\\xc5E\\x7f\\xe2\\xa5\\x19\\xd7\\xeeKU??X`[+\\xeba`LkV\\x94\\xdb\\xe8\\xe8\\n\\xdd\\x9aO\\xe8\\x94\\xe2y\\x1d\\x12\\xdbx]fE\\x07\\xefS\\xd2\\x94W\\xacPq\tY\\xf5\\xac\\x90F\\x86\\xdb1Z\\xa8\\n\\xd9\\xb6\\xe1\\xef?|z\\xfbB,\\xfb\\xf29\\xb5~f\\\"hrR4\\xca\\xb2t\\x81\\xaa\\xa1y1\\x16(\\xbd-\\xf3\\xc7\\xea\\xec\\xa2\\xa0M[\\xb1\\xba\\xe3\\x8bp\\xdf\\xf2\\xa2\\xbc(\\xc5\\\\>\\\\\\x92G\\n\\xd1\\xc3Dc\\xc4\\xdd\\x7f\\xab\t\\\"\\x91\\x8c\\xac8\\x88\\x9a\\xed\\xe8\\x85R\\x8a\\x97<\\xa1\\x1f\\x9c\\x10(\\xba?+\\x0f\\xcf4\\x19\\xa48\\x07\\x9f{\\xe8\\x15\\xecks~\\xc5\\xf63ax\\xd8Qg\\xffi\\x8b\\xe9\\xe9Zh-\\xf3\\x7f\\xaa 7\\xadk\\x19\\xc9?\\xa5\\x17\\xec\\x8c\\xfd\\xd4\\xb2\\xbaY\\xc8\\xdf-\\x85qs\\xb6\\x17\\xc5\\xf0b\\xb9\\\"\\x19\\xd9\\x96uC\\x98\\x08\\x1d\\x8bx\\xf3\\x82\\x9c4\\x83\\x15q\\xd7\\xecI\\xe68\\xf8\\xb5b\\x02W(J\\xb2-+\\xa6q\\x04\\x937\\xd7\\x94\\x0d\\x8d=\\xd6\\xd6K\\xa2 \\xa4\\xc9\\x9a\\x9c9\\x82\\xa3\\xe2\\xf3B\\x8b\\xe2\\x1fE\\xbb]\\xca(\\xa8\\x86>\\x06qv[{\\x87\\x8a\\x16\\xa6\\xfe\\\\\\x14f[TohMj\\xd6\\x1c\\x91\\xac\\xa95\\xa2S\\x93\\xb6\\x90\\x83y-\\x83\\xdc7Y=\\x1e\\x1f\\x00\\x92\\xc6`1\\x0115Le\\x1c\\x0f\\xd7\\xb9\\xb3\\xd3\\xd7\\xd3F {\\x03\\xd9\\x1b\\x9eYy\\x0b\\xc0\\x87\\x8b\\xf6\\xa8\\\\7\\xdb\\x00T?\\xeb\\x89\\xa0\\xff\\xb3)\\x95\\xd9\\xeb\\xd6\\xa7\\xcd\\x183\\x9dI\\x9f\\xec\\xeb\\xd7\\xafK\\xdc\\n\\xdb\\xaa9\\xb1\\xf4\\xca\\xb4Se\\x1f\\xe49\\xea\\x02+U\\xd6F\\xcd\\xa0n\\x1d\\x10\\xc6\\xffb\\x02\\x05\\x8a\\x16\\xf2\\xbd\\xa7\\xcf\\xb6\\x7f(\\xf2\\xbd\\x00\\xf6\\xcb\\x0d)7\\x9b\\x9a5\\xa4\\xac\\xc8\\xb8\\xbad\\xc0\\xd0\\xa8Y3\\xd5\\xd5O#\\xbf{\\xa8\\xac\\x0d\\xcdk\\xaf\\xb6,+\\xa3A\\x89\\xb2~6=N,\\xa3j\\x8cPe\\xd1nY\\x95\\xad\\xf4\\xdf\\xc4\\x96oE\\x0b\\xde\\x1e\t\\xf6]\\xb2B+\\xbe-:\\xbb?\\x89\\xaa\\x9e\\x88\\xd2r>\\x86:\\x15JD\\xb2\\xe5\\xfe>/ L\\x9f\\xe3\\xe2oY\\xb9\\x93\\x95\\xd2\\xa0^A\\xd8\\x04jW<\\xabg\\x96m\\x01\\x95n\\xc9p\\x04\\xab\\x05iz\\x02\\xdcN\\\"m\\xc3?\\x9dlH\\xce6\\x8dv8\\x94\\x07\\xa2#\\x97\\x826 '\\x88\\xfc\\x08\\xd7\\xf3rO\\x18]]\\x12\\xba\\xdb\\xdd\\xa3\\x16\\x87n@\\xff\\xbeK\\x97\\x837\\xb8F\\xc5\\x08-\\x85\\xa1\\xe1N\\n\\xc9\\x8au\\xb6\\xa2\\x0d\\xeb\\x08DJ\\x83\\xe2A5\\x90\\x86\\xc5e\\xc5*o\\xd7\\x93\\xb8$\\x95_\\xe9\\x18\\\\\\x93\\x1e\\x13+\\xca\\xc0\\xe1\\xe1n\\xc2\\xc8\\xab\\x1e\\x15\\xf6\\xf9\\xa4\\x9e\\xf4\\xd6\\xa4\t\\\"\\x94\\xcb\\xd7z\\xb9\\xf6\\x8b\\xe9\\xd5\\xcfG>\\xe5\\x16j6e\\x17EYMh\\x19z6\\x8e?!53\\xb7c\\x97e\\x993Z\\xb8:\\xb0b\\xd7\\xac\\x1a\\xbd\\xea\\xea<\\xf5\\xf4\\xb4\\xe3\\xb2\\x81\\x1bY1\\xf3L\\x18\\x95\\xc3\\xbf\\xc1\\nAX+\\xab5\\xab\\xa6\\x1bB\\xe3m\\xf1\\x7fH\\xaa\\x0d_<\\xe5\\x15-\\xae\\xe0\\xf1\\x94\\xe3\\xe5\\xfe|\\xb0U7\\x05V\\x94\\xb7i\\x0d\\xaa\\xe80\\n\\xdf4\\xc2\\x03+\\xaa\\xd4\\xdfh\\x15<\\xec\\xa0\\x8a\\xcd\\xf3\\x8b\\xda\\xa1:B#\\x1e\\xef\\xcb\\x15\\x16q\\xbe\\xea\\x0f\\x89\\xa4\\x0c\\x88$\\x0e\\x87\\xd8\\x83!a\\xa1\\x10\\xc0\\x0eM\\x8dJ\\xd0\\xeeL\\xed\\xc7\\xc6\\x03Y\\x0b\\x1e-\\xa7\\x04\\xb7b\\xb8\\x15\\xf3zn\\xba~\\xc2\\xd0\\xd8j'~\\xd4u[Is\\xc5\\xff\\x02\\xaa^\\xe8\\x9a;\\xaa\\xe0\\x9c%W\\xd4\\xf1\\xbc\\xbc)XU\\x1f\\xff,\\xfe\\xcb\\x01b\\x0c\\xac\\xd2\\x1b\\xfe\\xe8\\x07\\xf1^\\xb7\\xf4\\x8a\\xd55\\xcf\\xbb;\\xbaT\\x0fi\\xda\\xba\\xc0\\xdd\\xf8\\x00h\\xb2\\x95@\\x93\\xbb6qk\\xde\\x1b\\xd0\\xa1=\\xd7\\x8a\\x1a\\xa9\\xfa\\xb1\\xd1\\x8f\\xf9\\xf3c\\xf5\\xech!\\x1f\\xd4S\\xfd\\xfc`\\x17\\xf3a_<\\x0c\\x03\\xa2:p\\x86\\x05\\xf0\\xaf\\xecR\\xf4d\\x1eF\\xe4\\xbb\t\\xae\\x06Om\\x1e=S1\\x0d\\x9f\\xb1X\\xbd&)\\x1e\\xa5\\x11\\x80\\xe2\\x88\\x0fb\\\"0\\xf5\\xf9\\xa0&\\x02+\\x06\\xda\\x0b)\\xbd,)Q\\xbe\\x96\\xb54\\x85x\\xbb\\xe0'\\x12\\xecwI\\x81\\xa8\\xa8\\xb7%\\x9d\\x92\\xea\\xa6jW\\xfcS=\\xfa/\\x0el.:#\\xc8G\\xaf\\xb141\\xa2\\xcbJ\\x01\\xfa\\x16\\xbeq?\\xde\\xfb\\x0e\\x10\\xf0\\xcc\\x15+\\xc4\\xf6wD{Q\\xdft\\xcde\\xd9u\\xea9\\xd7\\xec\\xe8y<\\xd3\\xcfZ\\xba\\xdbl\\x94'\\x8f\\\"J'\\x04Q\\xba\\xfe'\\xa82\\x11\\xa5\\x13\\x8e\\xdd\\xc0\\xa1\\xe9\\xf6\\x81\\xc3\\x19\\xc2\\xb7v\\xdd\\x86P\\x04@\\x0e] -\\xfcY1.\\x0e\\xe7\\xb4g6\\xe3fq\\xf2+n\\x16\\xefx\\xb3\\xe8\\xdc\\x8cM\\xa6\\x8e\\xdc\\x89\\x0dgI\\xbfA\\xd3\\xcbI\\xb7O\\x1b\\xee`\\xf8\\xda<\\x9d6\\xb7\\xb5\\xbbD\\xa0\\xcf\\xbf\\xd5%\\x08\\xf4)\\xb9e\\xe5\\xfa!*\\x04\\xfaRh\\x11\\x81>\\x04\\xfa\\xfe\\xeb\\x01}b\\xe1\\xad\\xcf\\xb7\\xac\\xa1k\\xdaP{\\xc0\\xf1?'\\x01\\xc7\\xfaG\\xf5\\xca\\x08\\xee[\\xe5\\xc2\\xb8\\xea\\xe2\\xba8d\\xc5.\\xb2\\xbaa|\\xfb\\xcf\\xd7\\xfb\\xae\\xa8\\xe1\\xbao>/l\\xfc1\\xf5\\xc4\\x83\\x0d\\x1c\\xea\\x86?\\x10Or\\xa8\\x03\\xe3\\x03\\x00wP\\xc6B\\xdb\\\"k<\\xd1Gs\\xd3\\xa4X\\x1b(\\x05\\x10\\xe7\\xf37V\\x8a7\\xd6\\x07h\\xb2\\x16H$j\\xf84wm\\xbb\\xe0\\x93\\x9c\\x10\\xf2+\\xa3\\xe3v.\\xb2kf?\\xe8aX\\x16W\\xba8\\xfe\\x86\\xb4\\xb4)\\xb7O\\xcd1T)\\xec\\xeb\\xae,\\x98;>\\xe9\\xdbU\\x0de\\xb0\\xc3\\xb2l\\xf5\\xb5\\x84iI\\xd7s\\xa8\\xa8]y#\\x97\\xb3g\\xbf\\xef\\x7f\\x97\\xb1\\xe6\\xc2\\x1e\\x82\\x94\\xb2m]\\x07.I\\xa9h\\xa6\\xf2\\x10\\x97\\xb4f\\xe7\\x1d\\x1a\\x94\\x15\\xd2f\\xf3\\x7f\\xb3\\x9fZ\\x9a;C\\x9eRD\\xefI\\xab\\xf4\\xb9\\xc8\\x9a\\xc7\\xb5\\xda\\xfex^{\\xa6\\xba\\xf4[\\xf2\\xec\\xf7\\xff_\\xd7\\xc6\\xbe:\\xbe\\xf7\\xc5!H:\\x00<hE\\xb9\\x91c\\xa3?\\xcdgU1\\xeet\\xd8O\\xab\\x91\\xd2\\xb5\\x80\\x17\\xf1\\x98\\x17\\xf1\\xd8s\\xd2\\x87\\x94\\xae\\xee\\xdf\\x92?\\x1f\\x91\\xe6\\xb2\\xad_\\x90g\\x84\\xbf/\\xdb\\xf6g\\xc0X\\xa5yFk\\xf74\\x86\\x18\\x15)\\x1e\\xd3\\\"\\x05<\\xe5}\\xf1+-\\xaa\tr\\x9b\\x92g\\xb5P\\xa3\\x9a\\xec\\xfa7\\x0d\\xff\\x83'\\xbc\\xf5\\x19X\\x90\\x92\\x8c\\xbau0\\xbf\\xa8\\n\\x8eO\\xcf\\xcb\\xa0\\xde\\xaa\\x8d\\xf6\\xe5\\xad\\x1a-j\\\"e+\\x1d\\x856\\xbf\\xebW\\xe5`i\\x99\\xdaM\\xad\\xd2\\xe1D\\x13\\xce\\x84\\xb5091G\\xde\\xc5P\\xf8\\x9c\\x89^\\x03\\xe1F\\x8e\\x7ff\\xda\\x16\\xf179]\\x9f\\xf4\\x1br\\xfeK\\xd7:kyb\\xc6\\x0f\\xe6\\xdc\\xef-\\x13k\\x9d\\xd5\\xbb\\x9cZ\\xa2\\xe4\\xe1-t\\x8c1\\xf5\\xa5n{\\xa3\\xd6\\xb9\\xf6\\xe2\\x82\\xd5|\\xd3\\xa0\\xac+\\x1fi]c}\\x85I\\xd7Z:\\x8f\\x96Cx\\x84\\xbb\\x9f\\xa8uf\\xd4\\xfa\\x0f\\x8f\\xdd\\x03\\xf9\\xb1X\\xc4\\x87\\xa1\\xab\\xd1!z\\x02\\xa1{\\xc2.^\\x90\\xd7\\xa2X\\xf2\\x92\\x9bAs\\x99\\xf5~\\xbb,\\xe3\\xe3{\\xf0\\xe1(?\\xd4\\xef\\xf7y\\x1d\\xd5\\xdf\\xf4!x\\xf5eyS\\x90\\xb2 \\xec\\xab:\\xd6\\xcaZ\\x9ah\\xdd\\xcbO\\x1f~|\\xaaNG\\\\\\xd92\\xc4\\x89\\x8c\\x8b\\x88\\x91!\\xb2\\xfce\\x05Tw;\\x0f\\x88\\xf2\\xed\\x97zi\\xab\\xec\\x0eT\\xf8\\xf9\\xecD\\x86-\\xd6\\xe5\\xaa\\x15'4>)\\xb9\\xdf\\xc07\\xc6\\xdf\\xac.iV<U\\x81)\\x85\\xffYK\\x1a\\xa4\\xcdg\\x85\\xf4\\xaf\\xf8\\xbe\\x95|\\xd8\\xc9\\xbf\\x06\\xabe\\n\\xe9Ii\\xab\\xec\\xfc\\x92\\xd6\\x97w\\xa3\\x9b\\x1fh})W\\xc1\\xfa\\x92>\\xff\\xd3\\x9f\t\\xff\\xb4D;:\\x85\\xedJ\\xeeq\\n\\xe4\\xf7\\xf3\\xd9\\x89\\xdd38\\xe1V\\xbeUp\\x9a<2W\\x82\\xb6\\xd67\\xc4\\xa0\\xd2\\x9fYg\\xeb\\xe2q\\xa3\\x0egK\\xacV\\x88u\\xecv\\xc4\\xfe\\xa5\\xd7\\xf8>u\\xaf\\xaa\\xfeN\\xe9\\xb6\\xdd\\xdd\\xe9U\\x83=\\xf9`\\xc8u\\xdbr\\xb3\\xbb;\\xd8\\xac\\x8b\\xaa`\\x82'B\\xc7\\xe2a\\x84\\x8e\\x93B\\xc7]T\\x0b\\xc4\\\"6\\x15s<\t\\xc5a\\x9a'\\xc2\\xc5\\xc6\\xdf\\x1f\\x12\\\\\\x8c\\xe8j\\x18t\\x85\\xe8\\xea-*\\xd7\\x8f\\x0b\\\"\\xba\\x9aB\\x8b\\x88\\xae\\\"\\xba\\xfa_\\x1e]\\xf5\\xa7u\\x04@\\xabb\\x8b\\xdd\\x07=\\x8dd\\xfbC$\\xf5\\xd7\\x06\\xa4\\xda\\\\\\xac\\xa8\\x0d\\xa1\\x17\\x0e\\xf58;^(\\xd4\\x87Y8\\xb1\\n\\x8f\\x1bH\\xbc\\xcd\\x93\\xe2\\x05@\\x01\\x1e\\x1d\\xf1\\xeeb\\xa6\\xcf\\x06@\\x9f\\x1e\\xac\\x83\\x88\\xf3E\\xa1\\xc0'\\x04\\xf6t\\xef\\x0dz\\x81B\\x9e!\\x9aI\\x0bw\\xfa\\xc1\\xce \\xa8\\xd3\\x0b\\xff\\x90P\\xa0s\\x1e\\xcc\\x99\\x18\\xe4\\x8c\\x838\\xe7\\x03\\x9c\\x00x\\xd3g(\\xa4\\x00\\xa0M\\xe0d\\xf6\\xc5V\\xa4\\xa4\\x055]\\xd3\\x1c\\x16:K\\x0cg\\xc6\\x83\\x99>\\xf5\\xc5\\x00\\x99\\xce\\xcaZ`L;\\x88\\xe9\\x1d\\x070\\xa3\\x95\\x16\\xbe\\x84\\x81\\x97N\\xe82\\xac]\\xd6\\x91\\x94\\x10\\xb4\\x84B\\x96v\\xc02\\xacMA`ej\\xa8\\xd2\\x05T\\x865\\xc3:\\xe4\\xa2 JQ{K\\x81@\\x802\\x06\\x9e\\xf4n7\\xb4X\\xa1\\xc9DJK\\x05J\\xc6C\\x92`\\xe4\\xcc\\x0dG\\xa6\\xd3G: 2\\x14\\x86\\x9c\\x07B\\x02\\x15\\xe9\\xb7s\\xf3\\xe0G\\x07\\xf8\\x08\\xc53\\x12\\xc1\\x19\\x88f \\x9a\\xf1\\xebA3\\xa6^\\xeeh\\xf8I\\xb7\\xc2q\\x12\t\\xff\\xfb\\x90,?\\x0d\\xe4\\xcdHg\\x9b\\x13\\xb7\\n\\xbc\\xf6\\xbb9\\xb8\\xf5\\xfa\\xab(or\\xf1\\xf5\\xe4X\\xaf\\xe2\\xea\\xd7}\\x0f\\xf8\\x8c@T\\xcd\\x8a\\xf59+\\xe82gk\\xd7\\xba\\xf8\\x8f\\x10Ir6S\\x8a)\\xec:\\x15\\x98\\x1f@\\xc8GV\\xac\\xdf\\xcaO\\xca+H\\xc7\\xd3\\x8e\\x8etO\\xea\\x866\\xad\\x83\\xf0vs\\xc9\\xc4E\\x85\\xb4\\x9b\\xca\\xf6\\xe0\\x01/\\x98\\x97j\\xde\\xe4\\xc8\\x85\\xea\\x1c\\xda\\xf36e\\x8c\\xd4p\\xea\\xbc|^\\xef\\xd4\\x0d3\\xd1P\\x96y]\\x9f\\xdc\\x16>\\xfc\\xd2\\xe1\\xaa\\xde\\xa1\\xabr\\xf6\\x9b\\xa6\\x91\\xa8\\x19.\\xdf\\xb8|\\xdf\\xe5\\xf2=g%\\xacwjV\\x9f\\x87\\\\12\\xf0\\xcf?\\xea\\x02\\x8cw\\x8e\\xf0\\xe2\\x05\\xb4\\xe8\\xbd|\\xa4+prV& V`>\\x8e\\xeb\\xa0b\\xea\\xa1\\x07\\xbb\\x0e\\xe3\\xb5%J Ka\\xda\\xf3\\xa3\\xa2\\xce\\x8ez \\xd7\\x96t3\\x18/0\\x19\\x0b\\xf2[\\xa7\\x0f#\\xbf5\\x15\\xbf\\xf5`q1\\xba\\x90\\x17\\xa3\\x13\\x92\\xba\\x03\\xdc&\\x05\\x0e]\\xcbiC\\xfa\\xd3\\xdd\\x1e\\xd7\\x86\\x99\\x8e\\x87)\\x0d_@\\x87\\xd4\\xf2\\xfb];\\xa4\\xb7x\\xf2\\xaea\\xb5K\\x1bVB\\x1eo,I\\x12y\\xbc\\xb7\\xa8\\\\?\\x03\\x15y\\xbc)\\xb4\\x88<^\\xe4\\xf1\\xfe\\xd7\\xe3\\xf1\\xd6\\xedn\\x97\\xef\\xed\\xf1\\x9eO|h|\\x14\\x0f\\x8d\\xc2;r\\xc8\\xc8\\xb7G\\xa1\\x1d#$2(\\xe57\\xba\\x85\\x0f4\\x163T\\xc8P\\xee\\xc3\\xc3\\xc3H\\xcc\\xc3\\x89\\xc4\\xa8=\\xae\\x1a\\xf1:\\x02\\xd3\\x8d\\xff.\\xe22y\\x11\\x1cp1F!\\\"\\xa20\\x86R\\xbc&H\\n\\xc6k\\x86\\x82\\xf1\\x9a_A\\xbc\\xc6\\xd6\\x10\\xb1\\x02\\x0e\\x16\\x9dx\\xde\\xcep\\xfd\\xb3\\xb2v\\xba?b\\x90\\xe5@?\\x18d\\xb9\\xd3 \\x0b\\x86.\\xc2\\xf6\\x85\\x18\\xba\\xb8E\\xe5\\xfa7\\xdd\\x18\\xbaH\\xa1E\\x0c]`\\xe8\\xe2\\xbfj\\xe8\\x02p{\\xabt\\xdf>l\\xc6\\xfc\\x94>t1\\xbc\\xbd\\xd5\\x18\\xbe\\xd0\\x05\\xfcF7\\xf1\\x81\\xc6.l;\\xfe\\x19;;G\\x08\\xc2\\xe3\\xbc\\xe0E\\xadc\t\\x0b9@\\x90h5*A\\x9b\\x1b\\xb5\\x9d\\x99\\x8cd-xU\\xab\\x12\\xdc\\xcb<\\xa0\\xbd\\xcc\\xbc\\x04\\x84\\x87s\\x15j\\xcd\\x8e\\x1bV\\xacY\\xb5\\xcd\\x8a\\xa6[\\xbe\\xe8r\\x95\\x9d\\x8b\\x8a\\xd8W\\xae\\xc1\\xc4\\x7f\\xf9\\xea\\xf5\\x89\\xf8\\xd2\\xc0\\xf0\\xc9\\x86^\\xd2b\\x9d\\xb3J\\xe5x\\xb6\\xbb]Y5\\xb5x\\xbe[\\xf0\\xd6Y\\xc5VM.\\xc2]]\\x89\\x02e\\xdf\\xedr\\xee\\xe9eeqD\\x96\\xfb\\x1d\\xad\\xc5\\xb6\\xe2SW]\\xb2*\\xb9\\xe5k\\x18\\xdf\\xb8q+\\xd9\\x95\\xbb\\x9f\\xe4\\xec\\xab|<\\xe9$gka{Um\\xd8Z\\xe0\\xf2G\\xcaO\\x14I\\xd7\\xbb\\xdd\\x91\\xb2\\xa2Gd\\xf7|w\\xc4\\x9f\\xef\\xca\\xaa\\x9b\\xb2b\\xb3y\\xa0\\x9d\\xca\\xd4\\x8f\\x0fv\\xdd\\x9ei\\xa9\\x0e\\xa2|yiH!u\\xcc\\xcf\\xac\\xd8\\x94\\x81/\\xac\\xd9\\xd7\\xa07\\xdc\\x156\\x86\\x8eA\\xa5\\x19B\\xc6\\x16+\\x15[\\xdc\\xae*\\xcb\\xcdy\\xb9\\xb3\\x1a\\xf1(\\xbf\\xcaX\\x1e\\xf1,\\x0c\\xe4\\x8e\\xd2cD1\\xd6_A\\xa6\\xde\\xd2\\xa7\\xbd\\x80\\xca\\x00@\\x03\\\\\\xcc\\xc7\\xe9\\xf4\\x92\\xee[~\\xdfT\\xca)\\x1f4\\x1fv\\xbd\\xad.z\\xd3$\\xe3?\\xdc/[\\xd1|\\xd5\\xe6T\\xdc\\xe6\\xfa#\\xab\\xaer{\\x13\\xab\\xb2l\\xa4\\x01\\x16\tu\\xab\\xc3X\\xceP\\x96\\x8c\\xd0j\\x995\\x15\\xad\\xf6\\xaaYGD\\x1e\\x9d+\\x0e\\xaeau\\xcdV\\xfc7\\x9d\\x9dg-\\x89}\\xa5\\xdc\\xfe\\x93\\x82e\\x17\\x97\\xcb\\xb2\\xad\\xc4\\xfb\\xe5t\\xaf?\\x94KZ_:\\xaf\\xeb-\\x1b\\xf6B&\\xb1\\x0b\\x0fU\\x84\\xcb\\xd6\\xad\\\\\\x88\\xbaT~\\xadA\\xe1\\x1b\\x8b\\x07\\xed\\xdd\\xaf0\\x82\\xccqdw\\xbf\\xa2yH\\xd6\\xc6NU\\x95\\x11\\xe44\\xd9Q\\xd2,t\\x9f^J\\xa8H\\x1f\\x89\\xa1\\x9f\\xb7l9B\\x14P\\xbb5\\xe0n\\xbb\\xbd\\xd5\\x97\\xbc?\\xad[\\xc5\\x08\\x13\\xce\\xd7\\xb0zGM7^[\\xcbt+\\xbe[\\xbe\\xddIZ\\xfd\\xed\\xc8z\\xab3]\\xf7\\xb5\\\\\\x18\\x00\\x1c\\xe1\\xc9\\x1cv\\x13\\xac\\x8bt\\xc5\\xa4_f\\xed'{\\x1f\\x99\\xfa\\x07\\xf7]\\x93_q\\xdf\\xe5\\x9b)\\xbd\\xbc$\\x9f\\xcf\\xde\\x1dW\\xac.\\xdbj\\xa5\\xceF\\x11\\xfb\\x82\\xb6\\xc8~jY\\xbe'\\xd9\\x9a\\x15M\\xb6\\xe9x<|t\\x976\\x10Wn\\x12jVe4\\xcf\\xfe\\xce\\x1c+\\x8e\\x18\\xfc\\xab2'\\xcbv\\xb3a\\x95\\xee4uX\\x89l\\x9b\\xd80\\xf4\\xfb\\x04\\x9b\\x87BH\\xce\\xa8\\xeb4\\xb0\\xb2`\\xe4\\xd1\\xf1#\\xb2\\xba\\xa4\\x15]5\\xac\\x92\\x0bcN\\xeb\\x86\\xd4\\xecB\\x1cV\\xa1f\\xe8\\xe7\\xb3w\\x8f\\xeb))x,\\xa2R\\xdd\\xc1\\x12\\xf6\\xaf\\xf2\\xe26m.xP4\\xe7\\x1a\\\\\\x8f\\xcf\\x9e\\xe1\\x9a|Bk\\xe72\\xf4\\x85W\\xe5\\xf8\\xa2,/r\\xb6\\x10:[\\xb6\\x9b\\xc5\\x9bVz\\x06_\\x9e\\xca\\x96\\x88b{\\xfc\\xcbr\\xef\\x0b\\x911vZ\\x94E\\xb6\\xa2\\xb9\\x98C\\xf6/\\x8b\\x13\\xc8\\x8e\\xb8j\\x85\\x0b\\xf0h\\xf1\\x88\\x1b\\xb5\\xa2l\\x08]\\xad\\xd8\\xaea\\xeb\\xa7\\xaeE\\xfb\\xa4 ;\\xae\\xecl\\xc5\\x8eH\\xc3\\xe8\\xb6\\xee\\xce\\xb0\\xd9U\\x8co\\x12\\xb3\\x9c\\xd7\\x94[\\xc0KF\\x96YA\\x0f\\xeco/\\\"Gi\\xbf\\x13cP\\x02\\x0c{\\xfb\\xa7\\xa5\\xad#\\x99\\x88t\\xb75\\xd3\\xa0\\x0e\\x1fH\\xec\\xab\\xe8\\xea\\x97\\xc5~A~(o\\xd85\\xab\\x8e\\x9c\\xfe\\xcc\\xe7\\xb3w\\xb5\\n\\xe9\\xb5\\xf289\\xfb\\x87\\x85\\x05e\\xe4\\xcbe\\xd3\\xec\\xbe\\x1c\\xc9\\xff\\xaf\\xbf\\x1c\\x91\\xb2\\\"E\\xa9~\\xed\\x0fn+\\xc5\\xec\\xe4\\x1a\\xb1\\x17\\xc8\\x1a\\xd2\\xee\\x08\\x95\\x8b\\x84\\xe3\\xb1\\xeaZ\\xef\\xe7E\\xa2\\xb7\\x18Z\\xa2\\xe6M\\xa9g\\x96\\\\U\\xc4\\x1175\\xa1\\xf6D\\xefM\\x99\\xe7\\xe5M\\xfd\\xc2\\xd1\\xb7\\xbf%'\\x9b\\xbeE|X\\xa8[\\x16\\xd6]\\xa3\\xc5\\x02X\\xd7\\xed\\x96\\xad\\x8d\\x14#]\\xd0\\xcb\\x82\\xfc\\xf0\\xe9\\xd3)\\xf9\\xfe\\xed'R\\x16z\\n\\xca9\\xb6\\x17\\x81U\\xfb\\xc1v\\x7f\\x9dN\\x8bO\\xfb\\x1d\\xfb\\xdb_\\xfff}\\x81h\\xa2H\\xa1\\xc6[\\xe7\\xea\\x96\\x15o\\xc2\\xba]1\\xeey\\x8b%\\xccD\\xb3\\x91\\xf2[\\xf2\\xb2\\x8f\\x82H\\xec\\x84r\\x9dI\\xc2\\xd0\\x8a\\xae\\xb8m)\\xcb\\xabv\\xd7\\xe1+KZO\\x00\\xa4\\xa1\\x94\\x87P\\xcbX>\\x9f\\xbd\\x13u\\xbc\\xa4\\xd7b\\x08n\\x07sh-'\\x11\\xd5M\\xe2\\xff\\xbe.E<\\xc5>\\xb0\\x88\\xaa\\xa00\\x1f\\x15\\xdb\\x94\\x15;\\xd2\\x05\\xf0ri\\x93-\\xb3<k\\xf6\\xa4`l\\xadQRa\\xf2\\xaakGKD[\\xf4\\xc1T\\xca\\xb9\\xa9\\x17\\xe4\\xc9\\xe7\\x9a\\x91kV\\xd5Y\\xc9\\xfd\\x1a1<\\xb9\\xcd\\x92\\xe3\\x93\\x16\\xf4\\xc2\\xd5\\xfae\\xc5\\xe8\\x15\\xb7A\\xaa\\xe0\\xc5S\\xdf^\\xa1\\xe1k\\xc8\\xa6-Vr\\x86\\xf1v(\\xdb\\xb5j\\xabJ\\xb0\\n\\x86\\x94$\\xbb\\xb9\\xe4\\xe3\\xb1\\x148\\xba\\x9d\\x89\\xa4\\xd6\\xb2e\\xbb!\\x15\\xe3+\\x11\\x13\\xb1)\\\"\\xb1g\\xfe\\xd1n\\xff\\xd6\\xcdKkQ\\x82%Q\\xf0\\xc6\\xba\\x8fg\\xe4%-\\xe4\\xf8\\xa7\\xbb\\xac^\\xac\\xca\\xad\\xf3r\\x171Sk\\xc9\\x8a\\x92|\\x80\\x89\\x95\\\"O\\x943,\\xc1l9\\xb5\\x9f\\xda\\x17A\\xbe\\x1b K\\x87Q\\x92\\xa4\\x85\\xac\\x19@!r7[\\xef\\xd8*\\xdbd+R\\xb3--\\x9ale\\xb9\\xe6\\xea\\x16\\x82\\xc7S\\x81zI?rs\\xc4\\xf7\\xc8*T\\xd9;8\\x07~\\x8cZ\\xdc\\xe9\\xb2\\xbc\\xb6\\x8fi\\xa5\\x025\\x15L\\xcd\\x87\\xd4\\xec\\xcb\\xcbb\\xff\\xa5;\\xd6L\\xe0V\\xdd\\x1e\\xde^CcQz\\x8d\\xa0y\\xa9\\x86\\x1e\\xa1\\xe6\\xae\\xe5\\xd6yr\\xd8\\xe4\\xc0-\\x9c\\xb8\\x7f\\x9dWg\\x19\\x9a\\xa7z\\xe2\\xe4\\xd9RT\\xbb\\xbb\\xadG\\x05\\x82\\xb9}\\xd8\\xd1\\xd5\\xd5q[\\xf0\\xff\\xe3\\xeb\\xb6\\x1c\\x17\\xe6\\x19\\xa4\\x16z\\xbbcSnH\\xdbH\\xc3\\xa6\\xcdC\\xcd\\x0d\\xeb\\xe0\\xf0\\xb7\\x0bV\\xb0\\x8a6\\xa2\\xf2\\xcde\\xb9\\xaeU\\xb3\\x8c\\xe5\\xf1\\xfa\\xc8.4\\x7f\\xef\\xad\\x8a\\x86<{ANy\\xfd\\xb9]PM\\xa1\\x9d\\xd2\\xb3\\x82\\xbc\\xfe\\xdd\\xef\\x1c\\xcb\\xe4weI6eI\\xbe%\\x8b\\xc5\\xe2\\x7fZ\\x1f\\xe3\\x95\\xa1\\xc5\\xde\\xfe\\x00-\\xf6\\x0b^\\x8d\\xef\\xaar\\xfbdS\\x96O\\xed\\x8f.\\x16\\xf6\\xf5/\\xdb\\x90'\\xbc\\xa8\\xcf\\xa2!\\x9f\\xca'\\xff\\xc4\\xcbzJ~v\\xd8pWy\\xbf\\xb8u\\xf7\\xdc\\xa3\\xbb\\x7f\\xa1\\xd74\\x99\\xf2\\xc8\\xb7\\xc27\\xe4_I\\xa0\\xa1\\xac~\\xf2]Y.V9\\xadk\\x8f\\x82d\\x15\\xf9K\\xb2\\x8d\\x83\\x17\\xedu\\xb0h\\xaeS\\xdd\\x1f<\\xaa;\\xdd7\\x97e\\xe1P\\x9e\\xac\\xd5we\\xf9d\\xb1X\\xd8W\\x83NqO\\x9c\\xcf\\x88\\xc1'\\xd4\\x1a\\xabU^\\xc8\\x89T\\xea\\x9b\\xb7\\x1f_\\x9f\\x9d\\x9c~\\xfap\\xf6\\xd4\\x15\\xca\\xed\\x07\\xaa\\xfb\\xc3\\xf2\\xd3nu\\xfe\\xd1\\xa3\\xce\\xefK\\xbb&\\x85*_|K\\xfei\\xb7\\\\|W\\x96?/\\x16\\x8b_\\xec\\x0f\\xd3b\\x7f\\xc4\\xddP\\xfe\\x06-\\xf6\\xbb\\xe5\\xe2=\\xbb\\xf14 \\xdb\\x887\\xfe\\xdb\\xb7\\xa4\\xc8r\\xe7Xsj\\x998\\xaa\\xe5|o\\xd2@G1\\xaa\\xa6\\xb2m\\x8b\\xcf\\xc5\\x96V\\xf5%\\xcd?\\x95r\\xca\\xa5j\\x86\\xf1\\xb7O\\\"\\x1dbu\\xd5Yw\\xbdu!\\xcb}\\xef\\xc8\\xe9\\xf5Hr\\xf5\\xcd~\\xb4\\xe6\\xf9\\xb5\\xb5\\xc5\\x0bzlp\\xd2\\x8e7m\\x9e/\\xc4\\x0f\\xdc\\x01~\\xac\\xcf[\\xd5\\x9e\\xa1\\x18[\\xb6\\xd5F\\x8e9\\xf3\\xc7\\xba\\xc5\\xaa\\xc8\\xf7z\\xa7z\\x10~\\xe8\\x1coB7\\x0d3\\x91\\xd8\\xa5\\x88\\xc8\\xc8\\xe3\\xe3\\xc7\\xe6O\\xa9UVWY\\xec\\x9f\\xbb\\xb8\\xff\\xa3MY.\\x96\\xb4\\x12\\x8d\\xfdz\\xbc_\\xfc\\xfd\\x91\\xd4\\xa2\\xd8\\xcd\\x19\\xcb\\xb3onEU\\x1f\\xf12\\xf8\\x02k|\\xe4_>~xo\\xfe\\xe5\\xdbo\\xbf\\xfd\\xd6>\\x06\\xf8{}\\x14Gz\\xa6%70\\xca\\xad\\x92;\\xc5\\xb6\\xee\\xa2\\xc7\\x17mN+sy\\x87\\xc5\\xf0W\\xd6\\xacw\\x84\\x8e\\x08\\xdb.\\xd9z\\xdd\\xbbDG\\xd2\\xc17\\x15g;\\xa8w\\xe0\\xa4H\\xce\\xd1\\x97\\x7f\\xe6\\xaa\\xfb\\xa2\\xc2\\x13\\x9d#8\\xec\\x1c\\xf3\\x04Q\\x06\\xed\\x85cKCWW\\xdc\\xaa\\xf5[\\xecM\\x963\\xfbJ\\xa4\\xad\\xe0)\\xab\\xea\\xb2pN[\\x15\\xdb\\xdbdU\\xdd\\x9c\\x8b\\x1e\\xfe\\x96<\\xb3\\x97\\xdc\\xbd\\xc0\\x07\\xa5~\\xfey\\xf8\\x9aH\\x88\\xb3V\\x8f\\x84.\\x1f\\xbd \\x8fL\\xb3v\\xac\\x86\\x85l\\xe5\\xa3#Wy\\xa2}\\xef\\xe9\\x96\\x97\\xf9\\xbfd\\x13\\xfe\\xb7\\xf3\\x05\\xde\\xbe\\xc9\\xf3\\xa1\\x8d<\\xd9\\xa8-\\xdcx\\xacu\\x90\\xc4\\x0d\\xcb\\xf3o\\xae\\x8a\\xf2F2\\xdd.iM\\xa8+#\\xce>\\xb9\\xc6C\\xfeHn\t&\\xf3\\xa0OtR\\xd5\\xe1\\x03\\xd8\\x96{(\\x87\\xb4\\xf9c_\\xc4d\\xd4\\xe3\\xfc\\xb2\\xcc\\xd7CR\\x9d\\x9c\\xcaY\\xd1\\xcd\\x0f\\\"c\\x8a\\xe6\\xa2\\xe4\\x941\\x7fGTa\\xd1-\\xf7O\\xb8]\\xd3*<\\x086\\xe9\\x18\\xec\\xdf\\xfe\\xfa\\xb7\\xa7\\x8e\\x89\\x94b\\xcc\\x8d?\\xe8\\x1evBU\\xbc\\xc8g\\x8b\\xe7\\xcf\\x9e\\xd7\\x8f\\x1cCH\\xfe\\xbf\\x93P\\xd5_\\x8fCR0\\xa1\\x88?\\x91bd\\x13\\x13|P\\x97,\\xf1\\xcb\\xb4e\\xdb\\x00\\xce\\xae5\\xd58\\x08\\x10\\xf3I7\\xfd\\xf9#\\xab\\xae\\xb3\\xd5P\\x8f=B\\x08\\xa0\\x94-\\xf3ruU\\x1f\\xe7\\xb4a\\xb5\\x02\\x10M\\xac\\xb2\\xefY\\xf3N<\\xf2\\x8a?\\xaf(\\xe2r\\n\\xcaW\\x89(\\xc8H\\x85\\x1e\\xbf\\xfb\\x1b\\xdd\\xe8\\x07J\\xac\\x12\\xed8\\xcf\\x0c\\xe7\\x91Z\\x0b#^@o\\xc6\\x91\\xef\\x9e\\x18\\xd6\\x8eV\\xcdy\\xcd\\x9a\\xf3KF\\xd7\\xcc\\x80\\xba\\x12_\\xcd\\x89\\xb7\\xf6\\\\\\x1c\\xe9\\xa5\\xc4\\x0b\\xd5jq\\x91\\x01\\xb4\\xb8.\\xeb\\x06\\xa8\\x8b\\xf8U\\xd6\\xe5\\x80\\x9e\\xd2\\xaa\\xa9Y\\xf3\\x83\\xd0\\xdcaw\\xcb\\x87\\xc4\\xa0=yc\\x1a%\\x86!\\xa2n\\x9cx\\xc3\\x97\\xc1\\x15m\\xf8\\xa4\\xde\\x89\\x80\\xb0p\\xc8\\xbf\\xd4\\xeb\\xabs\\xf1\\xea\\x17\\x92\\x15u\\xc3\\xe8\\xfa\\xf0\\x9e\\x899\\xc3\\xecv\\xc7\\x80\\n\\xdf;zG6_\\x9e\\x9d/\\xda)x\\x82\\x9e\\xdetr\\xcf \\xf5\\\"\\xf6\\x0e\\x19\\nh\\xec\\x10X:\\xb4\\x14\\xba\\xdb\\xdd\\xed'!1a)\\xaf\\xb9y,\\xea\\xb6&+\\xba\\x93)\\x04\\n\\x00U\\x7f\\xae\\xda\\\\]`\\xb4\\xabJnW\\xddU\\xa4]\\x7fJ\\xb0\\x96\\xff\\x87\\xb8Z\\xe3\\xc8\\x11\\xf0\\x18\\x92w\\xb9#\\xd8\\xbd$Id\\x1d\\x0d\\xa7\\xd6{^Y+G\\x81:\\xb6\\xde\\xa3o\\x8f\\x1d\\x87P\\x13q\\xa45#ME\\x8bZ:\\x86[\\xba\\xba\\xcc\\nc\\xc0\\x9d\\x8b\\xa8\\x9d\\xd1\\xfak\\x01t\\xa9\\x8d(\\xa5\\x05P\\x04\\xccV6\\x99\\xedV\\x1d\\x12\\xfa\\x995m\\xd87\\xbc<\\xcb\\x93b\\xebe_\\x1b\\xb5$\\x9c\\xd1\\xee\\x85\\x80@\\x1bH \\x0b\\x82\\x14\\xd0Z\\xaa\\x05\\xd4R\\x02n-\\xf1\\xaf\\xb1\\xddc\\xa0\\xb5V\\x0bd\\x1ci\\xf1\\xab\\x9c\\x84\\xa8\\x9d\\xc0U\\x0f\\\\\\x93'\\x0f\\x9b\\xd7f-b\\xc8\\xae\\xca\\xed6k\\x1cw\\xee\\x10h\\x8b@-Q\\x15\\xe3\\x9f\\x93G\\xebJ\\xab9\\xd9E\\x0d\\x85\\xfftG\\xd5\\x13\\xc8%m\\xca\\xaa\\xbe\\xa3\\x0fN\\xf5\\xb1\\xa9\\xc4\\xbdb\\xc2~\\x93\\xb2mvm\\xd3\\xffmW\\xb1k\\xa9.Ki\\xe2(\\x81;oC\\xb7b\\xde\\xd1\\xf7\\xe8nwG_\\x12\\xf3C\\xd1S\\xee\\xe8\\x93\\xec:[\\xb3b\\xc5\\xee\\xe8s\\xdd\\xf8\\xeb\\xdd\\x1e\\x87?\\xca\\x0duY\\xb3\\xea\\\\\\x9d#z\\xdb\\xf5\\x1b9s\\xd2\\xe0\\x8d\\xe8\\xca=KYd\\x1c\\x0f\\x12\\xac\\xa4Q\\x91\\xab\\x94\\x91:`Mn\\xf0\\xaeZ\\xfe\\xd5\\xaa\\xf9\\xea\\xd5\\x8c\\xfb*O\\xefE\\x9e \\xf5\\x02\\x14L\\x82<\\xe6O_\\x15\\xb5P\\x07-\\x85\\x93)Q!\\xe9F\\xfe\\xb3\\nr\\xfc \\xfc\\xbb\\xdf=s\\xa0\\xa6:IX\\x90%\\xf3\\x9c+\\x8dt\\xa79\t\\x1b\\xb6 \\xe4\\xff\\xb2\\xc7\\x15#\\xff\\xd1\\xd6\\x0d\\xa1\\x17\\x15c\\xee\\xe6*n\\x9c\\xbc\\xb8V\\x84\\x96\\x9d\\xdf\\x17$\\xda-\\xa3\\x85j\\x95\\xac\\xfa\\xcb\\xddN\\\\\\x0d\\xb7.\\x99$&\\xa9c\\x18x\\xd1\\xb5k\\x81n\\xbeZ8:\\xbe\\x83\\xa1\\xde\\xc8\\xdc\\x93\\x010!\\x0e\\x1b\\xd9H\\xa7\\x9c*\\x02\\x86\\xaa\\x86\\xf1\\xcc\\x81^l\\xab\\x836+\\xb76\\xe6\\xdd\\x1f i\\x07\\xbe\\xd7\\xa7\\xf4\\xd7WJ\\x97|p~]6\\xec\\xdc\\xdf\\x08)\\xc0Z\\x90\\x80\\x9ap\\x11up\\xe6\\\\i\t\\xa8\\x00\t\\xac\\x04\\xd1\\xc5\\x83\\x9e\\x04\\x9b\\xa2\\xa1\\xb0\\xa2u\\xde\\x135\\x96o\\xc8\\xc7\\x93\\xef\\xdf\\xbf}s\\xfe\\xe3\\xc7\\xef\\xcf?\\xfd\\xdb\\xe9\\xdb\\xf3\\xcf\\xef\\xff\\xf2\\xfe\\xc3\\xff}?\\xa3\\x84\\xd3\\xb3\\xb7\\xff\\xfa\\xe1\\xd3\\xdby%\\xbc\\xfe\\xf0\\xe3\\x8f'\\x9ff\\x95\\xf1\\xe1\\xf4\\xc3\\xc7\\x97\\xef\\x80E\\xe8\\x1c\\x96\\x99\\xfa\\x80\\xdb\\xfb\\xb1|\\xcc.\\n\\xb6\\xfe\\xb1\\xbe\\xf8\\xd4\\xe5\\xee4\\x8a\\xd0V\\x8b\\x9f\\xc0%\\x0d\\xd8 \\xa3\\x88\\x8b\\xd3ZO\\xc4\\xda\\xa7/\\xc8\\xbf\\x96\\x8d3B2\\x11{\\xbf\\xbc \\xa7\\xc2\\xe1\\xa19\\xac8_Tc,\\x11\\x13'd\\xa7*\\xa5*\\xdb\\xc2y\\x97\\xdaP\\xc2\\xb6\\xcdR\\\\9Ff\\xf1\\x87H\\xc6\\x12h\\xebH\\x84\\xbd#\\xe0\\x9d}/\\x11\\xddG\\xa0.\\xd9T\\x82\\xc2.c\\x89\\xd0\\x1e\\x89\\xd4 \\x17`\\x80f,1\\xe3NK\\xf8\\x94\\xd0\\x12\\xda\\xe1$\\xbe\\xd3Il\\xc7\\x07\\x06}\\xc6\\x02\\n\\x01\\x8d\\xa5\\xc9\\xb6\\xacn\\xe8\\xd6\\x13\\xb4\\xef%B!\\xd0x\\xeaX\\xba\\xa8\\x86\\x7f\\xef9\\x96\\x195\\x04wU_9\\xcb\\x19\\x0ef\\x89\\x19\\xf7\\xe1\\xf6\\xb6;\\\")\\xacZ\\xb7\\xa9\\xb1\\x18\\x17\\x84\\xaf\\xea\\xe3\\xab\\xaaw\\x15\\xe3\\x1e\\xf3\\x91\\xca\\xf3\\xd9f\\\"G\tT\\x98|\\\\8\\xdc2\\xbc\\xd6\\x07\\xcdx[`~\\xc8\\xc0o\\xf1=*<\\xfb%\\xa4\\x03\\x02\\xedu\\xa8\\x9dF\\xcf~\\\"\\xe8\\xd9\\xa3g\\xef\\x17\\xf4\\xec}O\\x13\\xf4\\xec\\xc3\\xd6@)\\xe8\\xd9[%|Jh\t\\xedp\\x12\\xdf\\xe9$\\xb6\\xe3\\xd1\\xb3\\xd7\\x82\\x9e\\xbd\\x94p{\\x8b\\x9e\\xfd\\xa1\\xdc\\xb5g/\\xcc\\xe2\\xf9u\\xd9d\\xc5\\xc5\\xf9\\xae\\xbc\\x81\\xd9\\xf0\\xc0\\x8e\\x083\\x85\\xfd\\x98}\\x18\\xf5\t2=\\x915\\x81\\x9a\\x9c\\xd0\\xf1\\xf9F\\x03D|\\x90\\xbeU\\xf0P\\x0f\\xd6i\\xc0H\\xe0\\xcf\\xde\\xc2\\xba\\x8eQn5inJ^\\xd6&\\xcfV\\xe2\\xb8:>j=c.\\xe7\\x8e\\xe8\\xf9*\\xcfX\\xd1\\x9c\\xd3\\xa6\\xa1\\xab\\xab\\xfb\\x86\\xad\\x06-8\\x07\\x90L\\xa5\\x04\\xd4\\x85\\x04\\xd6\\x87(\\xd3\\xc8\\xd6\\x81^U`\\x9dHD\\xbd\\x88\\x87\\x83l\\x96\\x88\\x8a\\x91\\xc8\\xca\\x11\\x08\\x8b\\xd9,\\xa1\\xdcf\\xb3D\\xb6\\x95\\xcch/\\x81\\xb1\\xa3\\xcd\\x12h\\xb0\\xa6\\xa2\\x0d\\x98\\x97Im\\x16/\\xbf\\xda,\\xf7Y\\xe9P\\x13<\\x15\\x18o;\\xb8\\xd81\\xcf{\\xc2\\xe6\\x0e.\\x0d\\xc8\\xfe6\\x0b\\x94\\x13\\x1e\\\\\\xf0\\x88C\\x1e\\xcc\\x147K(\\x7f\\xdc,~V\\xb9Y\\xa2\\x07rXDGK\\xf4\\xe7B}\\xa6\\xa1\\xb89\\xecfIPQ\\xa8K5\\x16 \\x0b\\xde,\\xf7d\\xfbc\\xe2\\x05d\\x9e\\x92I\\xf8\\xd6j,3\\x02GZfh\\x9b\\xcc\\xd48\\x89\\x0d(i\\x89\\xd9`O%~Fj\\x89\\x1d8d\\xfe\\xe0!s\\x07\\xd0\\xac\\x00\\x94\\x96\\x88@\\x94\\x16x\\xee\\x81Yf\\xe8o\\x86\\xde\\xc2\\xb3\\x17\\xcc\\x02\\xc8i0\\xcb}4\\x1b\\x9cQ`\\x96\\xfb\\xa8\\xb2\\x9fuk\\x17h*Fp\\xc1\\xae\\xd4\\x0d\\xb3\\x84%t\\x98\\xe5>\\xd4\\x0fM\t1\\xcb}\\xd4\\xd8\\x9fTb\\x96\\xfb\\xa8k@Z\\x8aY\\xee\\xa3\\xd2\\xc0\\xc4\\x16\\xb3\\xdcG\\x85\\xc3Rc\\xcc\\x02O\\x981\\xcb\\xdd\\xb7{\\xce\\xee\\xdc\\x9b\\xa1\\x13TZ@6\\x8fY\\xa4s\\x11\\xa2\\xf2H\\x8f8\\xd6\\x13\\xfe\\x15\\xedA\\x83\\xd8\\x06Z\\xe68\\xe9\\xe1h\\x98\\x16\\xdc|B$\\xd2<H\\xc1\\xcdg\\xf4\\xb8\\xd6\\x12?\\x15\\xb5\\xc4\\x0e\\x1c2\\x7f\\xf0\\x90\\xb9\\x03\\xe8\\xbe7\\x9f\\xfd\\xb5\\xa1\\xa1\\x1a\\x94\\x9asg\\xb1\\x99\\xc5\\x9b\\xdbf\\x96Y\\x13e\\xde4\\xd1\\x96\\xf4|\\x93S\\xc3\\xddw\\x10\\x99=\\xd0\\xc2\\x18\\xa5c\\xf9\\x86\\xbcz\\xf7\\xe1\\xf5_\\xceO\\xde\\x9c\\x7f\\xf7\\xee\\xe5\\xf7\\x81l\\xca\\xa9LK{\\xf9\\xea\\xe3\\xdb\\xf7p\\x92\\xe8X\\xa6\\x85\\x052N\\xc72-\\xec\\xfd\t\\x94x:\\x96\\x8e\\x86\\x9aNm\\xf1\\xbbp)rr\\xaf\\xbf\\xcb\\xe9Ew\\x7f\\xba\\xbej\\xe4U\\xbe*\\xafN\\xdeD\\xe13R:3@2\\xc9\\x0e\\xf1\\xbdp(\\xd1\\xec\\xa5\\xb1\\xcc\\x9e'\\xb3\\xcdq\\x00G\\xe3P\\x92U?\\x0et\\x90\\x12L\\x87\\x1aK\\xb26Du\\xc1\\x9c}\\x97\\x94\\xd7b\\xbb\\xf31\\xbb\\x90\\x0cn\\xee\\xa3i\\x88O0\\xact\\x02yD\\xd1\\xe2\\x02ZY>|\\xfb5\\xafM\\xf2k\\xe3\\xb4\\xf8\\x8em#\\xd2\\xf5\\xc3v\\x93r\\x0byCk\\xb5-l\\xe4\\xb1\\x05T\\xe5\\xda\\x07\\x95\\xd5\\x07\\xe4`\\xda\\xe8mD\\xcd\\xc0\\xdb\\xbd\\x88u?f\\xb5\\xef\\xdb\\x02\\x7f'\\xd6\\x0b\\x8a\\xf0\\x80\\\"\\xb4 %F\\x17R\\xa2\\xed\\xf8,\\x032\\xc3x\\xec\\xda\\xe5\\xb9\\xe7^X\\xb3D+\\x97\\xccR0\\x17\\xb6~\\xfe\\xa7?=\\xfb\\x1f1\\xaf\\xceT4\\x99\\xa7l\\\"\\xae\\x12[\\xed\\x9e\\xff\\xe9\\xcfW\\xcf~\\x8d\\xd5\\x9f\\xe3\\x91\\x9d\\xb6\\xcb<[\\xfd\\x85\\xedG1\\xbe+\\xb6\\xaf\\x077E\\xc5\\xf9Qm\\xcd\\xe4\\x95:\\x83\\xb0\\xdf\\xbfv\\xb6)\\xb0\\xc0P:\\xeeXf\\xf5\\xcf\\x9c}}\\x17-\\xdeUYYeM\\xf4\\x94\\xbe\\xd3\\xba\\xebZ\\x87T6\\xd2\\xf2\\xc4\\xda\\x9cH\\x93>C\\x99\\xd1S4\\xd2\\x98G*\\x94\\xccP*\\x99g\\xc6g(\\x97\\xccQ0\\x99k\\xc0\\xef\\xaf\\xe2\\xf1\\xa6\\xfb\\xd6\\x0cwB\\xb3=\\xc7h\\xcf\\xe8\\x938\\xa3GR\\x98\\xeb;\\xafu\\\\\\xb2\\x8a\\x96\\xc8\\xea\\x86U\\x95\\xef\\xce\\xca\\xe2\\x1c\\x0e\\x8d\\x05\\xd6*\\xac6\\xcb\\xfd\\xdfi\\xd1d\\x05;\\x0f\\xdb'\\x85\\xed\\x8f\\x02\\xf6E\\xc1v>\\xdc\\xba\\x07/\\x96\\x81= %\\xc2\\x0c\\x06/\\x8d\\xc1\\xca\\\"Q\\n#\\xb1\\x0ba\\x94\\xe2H\\x9c\\xf2H\\xfc\\xb2w\\xb7\\xd5\\x8cY\\xe4nayK\\xb2\\xb0\\xc5Y\\xda(}\\x87\\xd95)3\\x16\\xb0;\\xa8c\\xdcb\\x15X\\xb1\\xc0*\\x85D\\xc9#k\\x02\\x8d\\x80\\x87\\x06W\\xdf\\xf1\\x05\\xf5\\xb5\\xc8\\x1b|)\\xd2\\x06\\xe7f3\\xaaCJ\\x07\\xf9\\xb5\\xb4i\\xd8v'2\\x19\\x9b\\x92l\\xb3:gtM\\xa8\\xccY\\xf4\\x96's\\x1aM\\x11\\xd5\\x01U\\xd8\\xacx\\xaf\\xa1\\xf7\\x1bu\\x9f\\xc3\\x01\\xeaM\\xc8h\\xf20i\\xe4w|\\xdc\\x02\\x08;\\xc6\\xcf\\x83\\xf1\\xaa\\x8d\\x80TG@d\\x04\\x90\\x02\t|\\xd5\\x08\\xe2\\xa0\\x80ZJ\\xc0\\xad%\\x04\\xcc \\x81\\xf5\\xa7\\x16\\xc8\\x00\\xd2\\xe2W9\tQ;\\x81\\xab>\\x90\\xbd\\x01\\xe2i@\\x18\\x19\\x10\\xaf\\xda\\xebK\\x03\\x87\\x02t \\x04q$\\x02:\\x03\\xc6{\\x88e8Dr\\x19\\\"Y\\x0b\\xe1\\xfc\\x84YL\\x04\\xb8\\x07\\x99\\x8a]\\x10\\xc4#\\x08f\\x0c\\x04\\x8c\\x9a\\x80\t\\x0c\\xf4d\\\">\\x0e\\xf3`\\xc0h}D\\x0d<\\xcd\\x0fq\\x9d\\xa0\\xa8\\xba\\xc0\\xc8\\x01%\\x99\\x11cX\\x8d\\x00\\x98\\xb8\\x05\\xe7\\xb6\\x14H\\x0f\\x9d\\xb8i\\xfd\\xba\\xfb\\xd8\\x0e\\xbbI_\\xe5\\xf61+V\\x82&_o\\xcb\\xfa\\x9bz}E~\\xbf\\xf8\\xe3\\x7f\\xc7k\\xdb|\\x8b\\x8c\\xbf^\\x04v0\\x01x\\x86\\xe8\\xf9\\xe1\\xcd\\xdb\\xf7\\x1e+\\x90\\xfa\\x93\\xb0\t@\\xc0\\xe9\\xff\\x04\\xafm\\x1b\\x8b?\\xc1\\x1e\\xd0\\xa5w\\xb6I\\xc2k\\xdb\\xfc\\x0d$\\xf0\\x05\\x0f\\xf7J^\\x95\\x93\\x10\\xb5\\x13\\xb8\\xeaoc\\xaf\\x04O\\x9d\\x06\\xb5\\x08\\xd4\\x92\\xf0\\xc4g@\\x8as\\xaa\\xea\\x813dS}p\\xaa\\x0fo\\xae0^\\xdb\\x06\\xc8\\xb0M\\xf5\\xa5\\x80\\xfc\\xd8T\\x9f\\x04f\\xb7\\xa6\\xfa\\\\Xn*<\\x0b\\x15T?\\xb8\\xaf6\\xfd0\\xdfC\\xc9\\x1b\\xba\\xb2\\x8b\\xac\\xa0\\xcaq\\xea\\x1es\\x94\\xa4\\n8R\\xca\\xe1\\xbb\\x1a\\xca\\xf7c\\xaf\\xd8\\xea\\xf2\\x0f\\xcfU\\x8d\\x9d\\xa7L\\x9f\\x14\\x03(\\xe7\\x884\\x97\\xbc.\\xea\\xbc\\xeb/\\\\\\xd5\\xf5\\x97#\\xb2l\\x1b\\xed\\x08~|\\xf3\\x97#Gq7\\xc2\\xe5\\xbcfUC\\xb2\\x864\\xe5\\xb4.\\xae\\xaap\\xdft\\xc9\\x9a\\x86U\\xe4\\xf3\\xff\\x03l\\x08\\xbdy\\xb5!\\xb9\\xb2x\\xf3]'\\xf0\\x81\\x8c7\\xdf\\xb9|\\x1c\\xbc\\xf9\\x0eo\\xbe;\\x14hM\\x08\\xde|g\\x11\\xbc\\x1fC\t\\xde\\x8f1\\x10\\xbc\\x1f\\x03\\xf4N\\xd0\\x89\\x15a\\x91\\x07)\\x10\\x0c~,\\xfe(\\xd3X\\x02m\\x1d\\x89\\xb0w\\x04\\x1c\\x1c\\xe9%\\xa2\\xfb\\x08\\xd4%\\x9bJP\\xe4j,\\x11\\xda#\\x91\\x1a\\xe4\\x02\\x8cq\\x8d%f\\xdci\t\\x9f\\x12ZB;\\x9c\\xc4w:\\x89\\xed\\xf8\\xc0\\xb8\\xd9X@Q\\xb4\\xb1\\x80\\x01Q-\\x11\\n\\x81\\x86\\xa4\\xc7\\x12\\x8c\\x17k\\x99QCpW\\xe1\\xfd\\x18a\\x1a\\x8bqA~\\xd5\\xf7c\\xe0\\xcdw&A\\xcf^\tz\\xf6\\x03A\\xcf\\x1e\\xf4\\x0ez\\xf6\\xbeg\\xb5\\x84:z\\x11\\xddG\\xc2\\xd7@)\\xe8\\xd9[%|Jh\t\\xedp\\x12\\xdf\\xe9$\\xb6\\xe3\\xd1\\xb3\\xd7\\x82\\x9e\\xbd\\x94p{\\x8b\\x9e\\xfd\\xa1\\xdc\\xb5g\\xff\\x00\\xf3\\xb3\\xf0\\xe6;\\xbb\\x84\\x8eO\\xbc\\xf9\\xceW(\\xde|\\x17R/\\x827\\xdfy$\\xb2\\xaddF{\t\\x8c`n\\x96@\\x835\\x15m\\xc0\\xbcdt\\xb3x)\\xeaf\\xb9\\xcfJ\\x87\\x9a\\xe0\\xa9\\xc0\\xa8\\xef\\xc1\\xc5\\xe2\\xcdw>\\xb2\\xbdYB)\\xf8f\\xf1\\x13\\xf3\\xcd\\x12=\\x90\\xc3\\\":Z\\xa2?\\x17\\xea3\\x0d\\x05o\\xbe\\x03\\xc8\\x1c\\xdb\\x1f\\x13/ \\xf3\\x94L\\xc2\\xb7Vc\\x99\\x118\\xd22C\\xdbd\\xa6\\xc6Il@IK\\xcc\\x06{*\\xf13RK\\xec\\xc0!\\xf3\\x07\\x0f\\x99;\\x80f\\x05\\xa0\\xb4D\\x04\\xa2\\xb4\\xc0\\xd37\\xcc2C\\x7f3\\xf4\\x16\\x9e\\x00b\\x16@Z\\x88Y\\xee\\xa3\\xd9\\xe0\\xa4\\x0c\\xb3\\xdcG\\x95\\xfd\\xac[\\xbb@\\xb3Y\\x82\\x0b\\xc6\\x9b\\xef`r\\x1f5\\xf6\\xe7\\xe5\\x98\\xe5>\\xea\\x1a\\x90\\xd9c\\x96\\xfb\\xa8407\\xc8,\\xf7Q\\xe1\\xb0\\xec\\\"\\xb3\\xc0s\\x8e\\xccr\\xf7\\xed\\x9e\\xb3;\\xf7f\\xe8\\x04\\x95\\x16\\x90\\xcdc\\x16\\xbc\\xf9n*\\xf1\\x1eo\\x10\\xdb@\\xcb\\x1c'=\\x1c\\x0d\\xd3\\x82\\x9bO\\x88D\\x9a\\x07)\\xb8\\xf9\\x8c\\x1e\\xd7Z\\xe2\\xa7\\xa2\\x96\\xd8\\x81C\\xe6\\x0f\\x1e2w\\x00\\xdd\\xf7\\xe6\\x13r\\xce\\x9aY\\xa4\\xe6\\xa0g\\x1a\\x0f\\xc5\\x9b\\xdbf\\x96Y\\x13e\\xde4\t:\\xd5\\xcd,\\xb3\\x07Z\\x18\\xa3t,\\xb1\\xe7\\xc2\\x99%\\xf2\\xb48\\xb3D\\x9e!g\\x96\\xf0\\x93\\xe5\\xcc2\\xeb\\xbc9\\xb3\\xc4\\xef\\xc2\\xa5\\xa4:\\x9b\\xce,A'\\xd6\\x99%\\x9a\\xbd4\\x96\\xd9\\xf3d\\xb69\\x0e\\xe0h\\x1cJ\\xb2\\xea\\xc7\\x81\\x0eR\\x82\\xe9PcI\\xd6\\x86\\xa8.\\x98\\xb3\\xef\\x92\\x02=\\xa3/\\xa2h\\xbc\\xf9n$x\\xf3]\\x9c\\x17\\x14\\xe1\\x01EhAJ\\x8c.\\xa4D\\xdb\\xf1Y\\x06d\\x86\\xf1\\x08\\xbe\\x11BK\\xb4r\\xc9,\\x05\\x93\\xd8\\x9b\\\"\\xb4\\xccR4\\x99\\xa7l\\x12\\x7f\\x83\\x84\\x96\\xfb\\xad\\xfe\\x1c\\x8f\\xec\\x16n\\x98\\xd0\\x92\\xe4\\xa6\t-\\xa1t\\xdc\\xb1\\xcc\\xea\\x9f9\\xfb\\xfa]\\xfcM\\x14Z\\xee\\xa1\\xee;\\xbc\\xf9\\xeeP\\xa2\\xa7h\\xa41\\x8fT(\\x99\\xa1T2\\xcf\\x8c\\xcfP.\\x99\\xa3`2\\xd7\\x80\\xdf_\\xc5\\xe3M\\xf7\\xad\\x19\\xee\\x84f{\\x8e\\xd1\\x9e\\xd1'qF\\x8f\\xa40\\xd7w^\\xeb\\xb8d\\x15-\\x91\\xd5\\x0d\\xab*\\xde|\\xe7\\x94`;\\x1fn\\xdd\\x83\\x17\\xcb\\xc0\\x1e\\x90\\x12a\\x06\\x83\\x97\\xc6`e\\x91(\\x85\\x91\\xd8\\x850Jq$Ny$~\\xd9\\xbb\\xdbj\\xc6,r\\xb7\\xb0\\xbc%Y\\xd8\\xe2,m\\x94\\xbe\\xc3\\xec\\x9a\\x94\\x19\\x0b\\xd8\\x1d\\xd41n\\xb1\\n\\xacX`\\x95B\\xa2\\xe4\\x915\\x81F\\xc0C\\x83\\xabx\\xf3\\x9d\\xd3\\xa8\\xfb\\x1c\\x0ePoBF\\x13\\xde|\\xe7\\x99\\x0e\\xc0U#\\x88\\x83\\x02j)\\x01\\xb7\\x96\\x100\\x83\\x04\\xd6\\x9fZ \\x03H\\x8b_\\xe5$D\\xed\\x04\\xae\\xfa@\\xf6\\x06\\x88\\xa7\\x01ad@\\xbcj\\xaf/\\x0d\\x1c\\n\\xd0\\x81\\x10\\xc4\\x91\\x08\\xe8\\x0c\\x18\\xef!\\x96\\xe1\\x10\\xc9e\\x88d-\\x84\\xf3\\x13f1\\x11\\xe0\\x1ed*vA\\x10\\x8f \\x981\\x100j\\x02&0\\xd0\\x93\\x89\\xf88\\xcc\\x83\\x01\\xa3\\xf5\\x115\\xf04?\\xc4u\\x82\\xa2\\xea\\xff\\xa87\\xdfA\\xea\\xf6JfJ\\xd7\\xa4\\xe9\\xf7J\\xbc\\xd7\\xe4\\x0fGr\\x1f\\xc5+\\xab\\x08\\xe2;\\xfbM\\x17jJ\\x98\\xd2\\x907\\x19\\xcb\\xd7\\xfa\\xba\t\\xb6\\xe6.\\xe6r|\\xef\\xc5\\xf0iw\\xad\\xbfg\\xcd;>\\xd7\\x1bQ\\xc33V\\xef\\xca\\xa2f\\xfab\\x8eJ\\xff\\xb7h\\xc4\\xa6\\xac\\x0cF\\xe0\\xff\\xb4\\xac\\xda\\x1f\\x8f\\xcb!g\\xa7\\xaf\\xa75\\xdf\\xb2\\xe6\\xb2\\\\\\xf7u\\xd3\\x96m\\xf0\\xd8\\xa8\\xaa/\\x0b\\xd2\\x16\\xec\\xeb\\x8e\\xadx\\x1bYU\\x95UW\\x9fa\\x0b\\xeb\\xd5%\\xdbN\\xce\\x8a\\xb7.m\\xf6\\xc5L|\\xe0p\\x06:\\xe6\\xdc\\xaa\\\\\\x1b\\xa6\\xac\\xdb\\xcdq\\xb9\\xab\\xea\\xc8\\xc0\\xa0:\\xacYC\\xb3\\xdc`8]\\x1e\\x82\\xd53\\xf0x\\x04>O\\x80\\xbf~\\xdeVV_\\x10`\\xbf\\xfcSL\\xcaK\\xf2\\xf9\\xec\\xddq\\xc5\\xea\\xb2\\xadV\\x8c\\x14t\\xab\\xe6}[d?\\xb5,\\xdf\\x13n\\x0c\\x9al\\x93\\xa9\\x10H#\\x8fq\\xb4\\x16(/\\x9b\\xa82\\x9ag\\x7fgk{\\xf2\\xff\\xae*\\x9brU\\xe6d\\xd9n6\\xac\\xd2\\x9d\\xb6\\x90wh\\xc8\\xb6\\x91m[w\\xc6\\x89P\\xbbs\\x953Z7\\xf6o\\x95\\x05#\\x8f\\x8e\\x1f\\x91\\xd5%\\xad\\xe8\\xaaa\\x15\\xff\\n\\x13\\x9b@R\\xb3\\x8b-+:\\x0b\\xfc\\xf9\\xec\\xdd\\xe3\\x9a\\xechsi-MT\\xaa;\\\\\\xca\\xfeU^\\xdc\\xa6\\xcd\\xf3=\\xf9\\xa9\\xa59\\xd7\\xe0Z\\xeaW}Jh\\xf2\t\\xadIV\\xd8\\x0b\\xf9\\xc2\\xabr|Q\\x96\\x179[\\x08\\x9d-\\xdb\\xcd\\xe2M[\\x89\\xd3\\x15\\xbe<\\x95-\\x11\\xc5\\xd6\\x97e\\x9b\\xaf\\xc9\\x92\\xaf \\xd6\\xf2(Y\\xd1\\xa2,\\xb2\\x15\\xcd\\xc5\\x1c\\xb2\\x7f\\xf9\t[\\\\,\\x8e\\xb8j\\xc5\\xb9\\x11\\x8f\\x16\\x8f\\xb81\\x13w\\xab\\xacVl\\xd7\\xb0\\xf5\\xd3\\xc5o\\xec\\xaf\\x9f\\x14d\\xc7\\x95\\x9d\\xad\\xd8\\x11i\\x18\\xdd\\xd6\\xa4\\xad[\\xca\\xd5!\\x8f\\xe0\\xdae9\\xafiS\\ne,\\xb3\\x82Vv\\x1f\\\\\\\\\\xe7\\xb2\\xdf1u\\xafJs\\xc9\\xf6\\xf6OK[\\xa7\\xae\\x0fj\\xeb\\xe1\\xd9\\xa1\\x0d\\xfb*\\xba\\xfae\\xb1_\\x90\\x1f\\xca\\x1bv\\xcd\\xaa#\\xa7\\x7f\\xf5\\xf9\\xec\\x9d\\xf6\\xdfxQ\\xdcl[\\x9f\\x15\\x16\\x94\\x91/\\x97M\\xb3\\xfbr$\\xff\\xbf\\xferD\\xca\\x8a\\x14\\xa5\\xfa\\xf5H\\x8c\\xc6\\x15-H)f'\\xd7\\x88\\xbd@\\xd6\\x90v\\xa7\\x0eOu|\\x97U\\xd7\\xac\\x92\\xaa\\xd9\\xd2\\x9d\\xba\\x7fI\\xd4\\xbc)\\xbb\\x13TE 3\\x93W\\xbfP{\\xbcqS\\xe6yyS\\xbfp\\xf4\\xedo\\xc9\\xc9\\xa6o\\x11\\x1f\\x16\\xbb\\xaa\\xe4^\\xc3\\xbak\\xb4\\xf0m\\xea\\xba\\xdd\\xb2\\xb5\\xe3\\xa4\\xd6\\xdf\\xf2\\xc5\\xe9\\x87O\\x9fN\\xc9\\xf7o?\\xe9\\xcbv>\\x9f\\xbd\\x93sl/\\x96g\\xbb\\x0b\\xf4\\xd7\\xe9\\xb4\\xf8\\xb4\\xdf\\xb1\\xbf\\xfd\\xf5o\\xd6\\x17\\x84\\xa7\\xdc\\x8a\\xf1 \\xc7\\x9bZFD\\x0f\\xed\\xaar\\xdd\\xae\\x18\\xa1\\x85\\\\\\xc2\\xecD\\xbc\\xdf\\x92\\x97\\xfd\\x01'\\xb5\\xb8]\\x88r\\x9dI\\x0fbEW\\xdc\\xb6\\x94\\xe5U\\xbb#*\\xa5\\x92,i\\xed\\xa0I\\x96\\xbe\\x13a>\\x9f\\xbd\\x13u\\xbc\\xa4\\xd7b\\x08n\\x07sh-'\\x11\\xd5M\\xe2\\xff\\xbe.\\xb35\\xa1\\x85\\x0b)\\x92\\x15\\x14\\xe6\\xa3b\\x9b\\xb2bG\\xba\\x00^.m\\xb2e\\x96g\\xcd\\x9e\\x14\\x8c\\xadk\\xe9\\x19\\x11a\\xf2\\xaak'\\xe1\\xb3,\\xb8\\x99-.\\x98xI\\xcc\\xd9\\x05y\\xf2\\xb9f\\xfa\\x0c(\\xae%><\\xb9\\xcd\\x92\\xe3\\x93\\x16\\xf4\\xc2\\xd5\\xfae\\xc5\\xe8\\x15\\xb7A\\xaa\\xe0\\xc5S\\xfb\\x88z_6\\xec\\x85\\xbc\\x84l\\xd3\\x16+9\\xc3x;\\x94\\xedZ\\xb5U\\xc5\\x8a&\\xdf\\x0f\\xc2\\xf8\\x0es).\\x7f\\xdal\\xb2UFs\\xcfZ\\xb6l7\\xa4b|%bG\\xe2X\\x9c\\xac\\xd1\\x1fmk\\xb6\\x96N\\x9f\\x9e\\x97\\xd6\\xa2\\x96\\xec\\\"+\\n\\xdeX\\xee\\xe2:\\x16\\x97\\xfd\\x8e-\\xe4\\xf8\\xa7\\xbb\\xac^\\xac\\xca\\xad\\xcb\\x1a\\x7f\\x143\\xb5&es)\\x0dE1\\xb5R\\xe4\\x89tJ\t\\xdb\\xee\\x9a\\xbd\\x9a\\xdaO\\xed\\x8b`vq\\xd9\\x90\\xa5\\xc3(\\x89F\\x0b?=\\xdb\\xeer\\xc6\\x17Y1aH\\xbdc\\xabl\\x93\\xadH\\xcd\\xb6\\xb4h\\xb2\\x95\\x85\\xf3*\\xe6\\xea\\x0c\\x17\\x08\\xb0u\\x83zI?rs\\xb4d\\x84\\xcam\\xcd\\xc0\\xc19\\xf0c\\xf4\\x11H\\xcb\\xf2\\xda>\\xa6\\x95\\n\\xd4T0\\xde&\\x07\\xa8\\xd9\\x97\\x97\\xc5\\xfeK\\xbfw\\xa3\\x05\\xa1\\xd52k*>\\x89\\xed54\\x16\\xa5\\xd7\\x08\\x9a\\x97j\\xe8\\x11j\\xeeZn\\x9d\\xc5B#k\\xb8\\x1c\\xbb\\x85\\x13\\xf7\\xaf\\xf3\\xea,C\\xf3TO\\x9c<[\\x8aj\\xabu\\xa4&u\\xbb\\xdb\\x95\\x95X\\xc1wtuu\\xdc\\x16\\xfc\\xff\\xf8\\xba-\\xc7\\x85y\\x06\\xa9\\x85\\xde\\xee\\xd8\\x94\\x1b\\xd26\\xd2\\xb0i\\xf3Ps\\xc3J\\xd7\\xebL\\xda\\nr\\xc1\\nV\\xd1FT\\x9eo\\xb4\\xf4\\xa9V\\xc6\\xf2x}d\\x17\\x9a\\xbf\\xf7\\xf6+\\xe5\\x83\\x9f<{ANy\\xfd\\xb9]PM\\xa1\\xc3\\xa3\\xcd_\\xff\\xeew\\x8ee\\xf2\\xbb\\xb2$\\x9b\\xb2$\\xdf\\x92\\xc5b\\xf1?\\xad\\x8f\\xf1\\xca\\xd0bo\\x7f\\x80\\x16\\xfb\\x05\\xaf\\xc6wU\\xb9}\\xb2)\\xcb\\xa7\\xf6G\\x17\\x0b\\xfb\\xfa\\x97m\\xc8\\x13^\\xd4g\\xd1\\x90O\\xe5\\x93\\x7f\\xe2e=%?;l\\xb8\\xab\\xbc_\\xdc\\xba{\\xee\\xd1\\xdd\\xbf\\xd0k\\x9aLy\\xe4[\\xe1\\x1b\\xf2\\xaf$\\xd0PV?\\xf9\\xae,\\x17\\xab\\x9c\\xd6\\xb5GA\\xb2\\x8a\\xfc%\\xd9\\xc6\\xc1\\x8b\\xf6:X4\\xd7\\xa9\\xee\\x0f\\x1e\\xd5\\x9d\\xee\\x9b\\xcb\\xb2p(O\\xd6\\xea\\xbb\\xb2|\\xb2X,\\xec\\xabA\\xa7\\xb8'\\xceg\\xc4\\xe0\\x13j\\x8d\\xd5*/\\xe4D*\\xf5\\xcd\\xdb\\x8f\\xaf\\xcfNN?}8{\\xea\\x8a\\xf7\\xf5\\x03\\xd5\\xfda\\xf9i\\xb7:\\xff\\xe8Q\\xe7\\xf7\\xa5\\xe3\\xb0;\\xae\\xca\\x17\\xdf\\x92\\x7f\\xda-\\x17\\xdf\\x95\\xe5\\xcf\\x8b\\xc5\\xe2\\x17\\xfb\\xc3\\xb4\\xd8\\x1fq7\\x94\\xbfA\\x8b\\xfdn\\xb9x\\xcfn<\\x0d\\xc86\\xe2\\x8d\\xff\\xf6-)\\xb2\\xdc9\\xd6\\x9cZ&\\x8ej9\\xdf\\x9b4\\xd0Q\\x8c\\xaa\\xa9l\\xdb\\xe2s\\xb1\\xa5U}I\\xf3O\\xa5\\x9cr\\xa9\\x9aa\\xfc\\x8do\\x97E\\xcfi\\xeb\\xae\\xb7.d\\xb9\\xef\\x1d9\\xbd\\x1e\\xc9kI\\xcd~\\xb4\\x8a\\xbbqG\\xc7\\xfc\\xa9\\xc7\\x06'\\xedx\\xd3\\xe6\\xf9B\\xfc\\xc0\\x1d\\xe0\\xc7\\x84\\x0e\\xd6O\\xbe\\xb6\\xaa\\x03\\x15\\x8d\\x05\\xca1g\\xfeX\\xb7X\\x15\\xf9^\\xefT\\x0f\\xc2\\x0f\\x9d\\xe3M\\xe8\\xa6a\\xa6 \\xa4\\x14\\x11\\x19y|\\xfc\\xd8\\xfc)\\xb5\\xca\\xea*\\x8b\\xfd3aj\\x8e<\\xda\\x94\\xe5bI+\\xd1\\xd8\\xaf\\xc7\\xfb\\xc5\\xdf\\x1fI-\\x8a\\xdd\\x9c\\xb1<\\xfb\\xe6VT\\xf5\\x11/\\x83/\\xb0\\xc6G\\xfe\\xe5\\xe3\\x87\\xf7\\xe6_\\xbe\\xfd\\xf6\\xdbo\\xedc\\x80\\xbf\\xd7Gq\\xa4gZr\\x03\\xa3\\xdc*\\xb9Slk\\xa6\\x03\\xb8\\x17mN-\\x87}\\x1f\\x16\\xc3_Y\\xb3\\xde\\x11:\\\"l\\xbbd\\xebu\\xef\\x12\\xc9\\x18\\xb6\\xb18j\\x89\\x07\\x0d\\x9c\\x14\\x19\\xb9\\xfe\\xf2\\xcf\\\\u_Txb\\x14\\xc4\\xd7\\x9dc\\x9e \\xca\\xa0\\xbdpli\\xe8\\xea\\x8a[\\xb5~\\x8b\\xbd\\xc9rf_\\x89\\xb4\\x15<eU]\\x16\\xcei\\xabb{\\xe26\\xdds\\xd1\\xc3\\xdf\\x92g\\xf6\\x92\\xbb\\x17\\x04gC=\\xff<|M$\\xc4Y\\xabGB\\x97\\x8f^\\x90G\\xa6Y;V\\xc3B\\xb6\\xf2\\x91\\xeb\\x1e\\xebG\\xa2}\\xef\\xe9\\x96\\x97\\xf9\\xbfd\\x13\\xfe\\xb7\\xf3\\x05\\xde\\xbe\\xc9\\xf3\\xa1\\x8d<\\xd9\\xa8-\\xdcx\\xac\\xc9\\xd1\\x90\\xd5\\xe4\\x86\\xe5\\xf97WEyS\\x08;s)\\xae\\xfa^\\xb5uSn\\x03'\\xd7x\\xc8\\x1f\\xc9-\\xc1d\\x1e\\xe8;\\x9d\\xbb\\xea\\xf0\\x01l\\xd9\\xaeQ9\\xa4\\xcd\\x1f\\xfb\\\"&\\xa3\\x1e\\xe7\\x97e\\xbeV\\x07\\xf4\\x8a\\x9a\\xcb\\xa9\\x9c\\x15\\xdd\\xfc 2\\xa6h.JN\\x19\\xf3wD\\x15\\x16\\xddr\\xff\\x84\\xdb5\\xad\\xc2\\x83`\\x93\\x8e\\xc1\\xfe\\xed\\xaf\\x7f{\\xea\\x98H)\\xc6\\xdc\\xf8\\x83\\xeea'T\\xc5\\x8b|\\xb6x\\xfe\\xecy\\xfd\\xc81\\x84\\xe4\\xff7\\xf4b\\x00C|C>\\xb2\\xea:[\\xb1\\xc1_z\\xbe\\xe2o\\x089^\\x95\\xf5\\xb6\\xac\\x8f\\x97\\xb4f\\xc7=:w|\\xfdl\\xc9\\x1a\\xfa\\xecX\\xa0\\x85\\xf5\\xf1\\xcf\\x92\\xfd\\xf4\\x8b,\\xf9\\xa2OR\\xad\\xdb\\xed\\x96V\\xfb\\x17\\xe4{&!\\xaeW{y\\xb57\\xf9\\xa9eU\\xc6j\\x857r\\xdd_d\\xd7\\xacP<*m\\xc8\\xca\\x1d\\x93j8Y\\x1f\\x96\\xa1\\x9e\\xd1\\xe8\\xd6\\xa0]\\x8f\\x9f\\xff\\xfe\\xf7\\x8f\\xed\\x10\\x19\\xa9\\xdb\\xd5\\x8a\\xd5\\xf5\\xa6\\xcdo\\x13\\x1b\\xb3\\x13\\xa8\\x9c\\x88\\x91\\x1b/\\xb2\\xb3v\\xbcA\\x12O\\x88\\x04D\\x88r\\xd6\\x9cxkO\\xfc\\xc4\\xa7\\x06Dx\\x82\\x10\\x9d\\xdc\\x04'\\xaf\\xba\\x88_e@\\\"\\x93\\x93\\xc0d98^\\xbd\\xf3\\xf8\\x0d\\xb7\\xb2+\\xda\\xb0\\xf5\\x0b\\xb2\\x13\\xf1F\\xe1\\xef}\\xa9\\xd7W\\xf2\\x98\\xe4/$+\\xea\\x86\\xd1\\xf5\\xe3\\xa4\\xc3\\xecv\\xc7\\x80\\xf7\\x86\\x80\\xd0\\xbb\\x00\\xbcu\\\"\\xa0z\\x11\\xd8I\\xfe\\xa0\\xb1C\\x06\\xe3\\xc7{\\xd0\\xbd\\xf7\\x1c\\xfe\\xd4\\x9f\\x84\\x84\\x1c\\xa5\\xc0\\xce\\xcb'\\xe3\\xf3\\xef]M\\x1d\\x9d\\x8c\\x0f=\\xe9\\x1ez\\xa6\\xfd\\xf8\\x8czG\\x81\\xa1\\xa7\\xd7\\x87\\x9eS\\xef?\\x91\\x1e\\xd0\\xa5w\\xc6*v\\x9f\\x11\\x1f\\xf4\\x19\\x1f}\\x0bx\\xc2{\\xc2\\x19\\xedg\\xba\\x82\\x1aH \\x0b\\x82\\x14\\xd0Z\\xaa\\x05\\xd4R\\x02n-\\xf1\\xaf\\xb1\\xddc\\xa0\\xb5V\\x0bd\\x1ci\\xf1\\xab\\x9c\\x84\\xa8\\x9d\\xc0U\\x0f\\\\\\x93'\\x0f\\xbb\\xc9\\xc5\\xf0\\xb3\\xc6A-\\x02\\xb5$\\xfc\\xa4p\\xc0\\x99\\xe0\\xa9\\xaa\\x07>R:\\xd5\\x07\\xa7\\xfa\\xf0\\x1e\\xae\\xed<,;\\xecX\\xecTm\\x80\\x1ej\\x9d\\xea{\\xfe#\\xa9S})\\xe0@\\xe9T\\x9f\\x04\\x1e\\x07\\x9d\\xeasa\\x879\\xc3\\x8fmNS\\xbf\\x913\\xe7=E9\\xe4ddnSnm\\x17\\xd0|\\xf5j&I\\xb2\\x86w\\x81\\xf1*\\x98\\x04y\\xcc\\x9f\\xbe*\\xe6\\x9a\\x8e\\x89\t'S\\x82\\x0e\\xd2\\x8d\\xfcg\\xa9\\xf8\\x85\\x0cd\\xfc\\xee\\x99\\xf3~\\xeb\\xf7\\xe2\\xeej\\xc1\\xc5\\xcbs\\xae4r\\xc9*&\\x98H\\xc2\\x86-\\x08\\xf9\\xbf\\xecq\\xc5\\xc8\\x7f\\xb4uC\\xe8E\\xc5\\x98\\xbb\\xb9\\x8azUV|\\x9c\\x88\\xc8\\xa5\\xf3\\xfb\\x82\\xa3\\xb9e\\xb4P\\xad\\x92U\\x7f\\xb9\\xdb\\xfd@\\xebK\\xb2.\\x99\\xe4\\xbd(&;/\\xbav-\\xd0\\xcdW\\x0b\\x05\\xc4\\x97w\\xf1\\x86{\\xfa\\xa3\\xb8\\xb7b\\x9f\\x0b\\xa7\\x9c*|\\x7fH\\xa8\\xb7\\xf3\\xacl\\xab\\x83\\xfb*\\xc4\\x04c\\xde\\x7f\\xd7b\\xc2\\x81\\xef\\xf5)\\xfd\\xf5\\x95\\xb2\\xd6\\xd7X\\x9e_\\x97\\x0d\\xbb\\xef\\x0b#E\\x1d,fi,\\x01\\x15 \\x81\\x95 \\xbax\\xd0\\x93`S4\\x14X\\x0e\\x97\\x96\\xc3\\xdb\\xeaa\\xe9N\\xbdXo\\xce\\x9fW\\x020\\xcbK\\x8b\\xfd\\xd6}`\\x11]\\xf2\\xd7<}\\xc0\\xed\\xfdX>\\x8a\\xabC\\x7f\\xac/>)\\x1cF\\x12z\\xb9\\xa1\\x92\\xb7\\x8a\\x82K\\x1a\\x90\\x0dF\\x11\\x17\\xa7\\xb5\\x9e\\x88\\xb5O_\\x88\\xfc#\\xe8I\\x04\\xce~yAN\\x85\\xc3CsXq\\xbe\\xa8\\xc6X\\\"&N\\xc8NUJ\\xd0\\xfd\\x04a\\xdbf)\\xae\\x14\\x16\\xb3\\xf8C$c\t\\xb4u$\\xc2\\xde\\x11\\xf0\\xce\\xbe\\x97\\x88\\xee#P\\x97l*Aa\\x97\\xb1Dh\\x8fDj\\x90\\x0b0@3\\x96\\x98q\\xa7%|Jh\t\\xedp\\x12\\xdf\\xe9$\\xb6\\xe3\\x03\\x83>c\\x01\\x85\\x80\\xc6\\x02N\\x7f\\xd5\\x12\\xa1\\x10h<u,\\xc1\\xd9\\xc1Zf\\xd4\\x10\\xdcU}\\xe5\\xb2b\\xcd\\xbe\\x86U-l\\xdc\\x87\\xdb[pB\\xb1\\x96\\xdb\\xd7X\\x8c\\x0b\\\"\\xb2\\x8a;n\\x86\\xc89\\xae\\x18\\xf7\\x98\\x8fT\\x1a\\xc96\\x13)0\\xa0\\xc2\\xe4\\xe3\\xc2\\xe1\\x96\\xe1\\xb5\\xc1i-\\x9b\\xd2B\\x90\\x9a\\xca\\xc0o\\xf1=*<\\xfb%\\xa4\\x03\\x02\\xedu\\xa8\\x9dF\\xcf~\\\"\\xe8\\xd9\\xa3g\\xef\\x17\\xf4\\xec}O\\x13\\xf4\\xec\\xc3\\xd6@)\\xe8\\xd9[%|Jh\t\\xedp\\x12\\xdf\\xe9$\\xb6\\xe3\\xd1\\xb3\\xd7\\x82\\x9e\\xbd\\x94p{\\x8b\\x9e\\xfd\\xa1\\xdc\\xb5g\\xff\\x00O\\xe3\\xec\\xc7\\xec\\xc3\\xa8O\\x90\\xe9\\x89\\xac\t\\xd4\\xe4\\x84\\x8e\\xcf7\\x1a \\xe2\\x83t\\xee\\xc9\\xa0]\\xc7(\\xb7\\x9a47%/k\\x93g+q:(\\x1f\\xb5\\x9e1'\\xce\\x0c=\\x97g\\x82\\x9eSq`\\xe9}\\xc3V\\x83\\x16\\x9c\\x03H\\xa6R\\x02\\xeaB\\x02\\xebC\\x94id\\xeb@\\xaf*\\xb0N$\\xa2^\\xc4\\xc3A6KD\\xc5Hd\\xe5\\x08\\x84\\xc5l\\x96Pn\\xb3Y\\\"\\xdbJf\\xb4\\x97\\xc0\\xd8\\xd1f\t4XS\\xd1\\x06\\xcc\\xcb\\xa46\\x8b\\x97_m\\x96\\xfb\\xact\\xa8\t\\x9e\\n\\x8c\\xb7\\x1d\\\\\\xec\\x98\\xe7=as\\x07\\x97\\x06d\\x7f\\x9b\\x05\\xca\t\\x0f.x\\xc4!\\x0ff\\x8a\\x9b%\\x94?n\\x16?\\xab\\xdc,\\xd1\\x039,\\xa2\\xa3%\\xfas\\xa1>\\xd3P\\xdc\\x1cv\\xb3$\\xa8(\\xd4\\xa5\\x1a\\x0b\\x90\\x05o\\x96{\\xb2\\xfd1\\xf1\\x022O\\xc9$|k5\\x96\\x19\\x81#-3\\xb4Mfj\\x9c\\xc4\\x06\\x94\\xb4\\xc4l\\xb0\\xa7\\x12?#\\xb5\\xc4\\x0e\\x1c2\\x7f\\xf0\\x90\\xb9\\x03hV\\x00JKD J\\x0b<\\xf7\\xc0,3\\xf47Co\\xe1\\xd9\\x0bf\\x01\\xe44\\x98\\xe5>\\x9a\\x0d\\xce(0\\xcb}T\\xd9\\xcf\\xba\\xb5\\x0b4\\x15#\\xb8`W\\xea\\x86Y\\xc2\\x12:\\xccr\\x1f\\xea\\x87\\xa6\\x84\\x98\\xe5>j\\xecO*1\\xcb}\\xd45 -\\xc5,\\xf7Qi`b\\x8bY\\xee\\xa3\\xc2a\\xa91f\\x81'\\xcc\\x98\\xe5\\xee\\xdb=gw\\xee\\xcd\\xd0\t*- \\x9b\\xc7,\\xae\\x9b\\x91\\xcc\\x12\\xe9\\x11\\xc7z\\xc2\\xbf\\xa2=h\\x10\\xdb@\\xcb\\x1c'=\\x1c\\x0d\\xd3\\x82\\x9bO\\x88D\\x9a\\x07)\\xb8\\xf9\\x8c\\x1e\\xd7Z\\xe2\\xa7\\xa2\\x96\\xd8\\x81C\\xe6\\x0f\\x1e2w\\x00\\xdd\\xf7\\xe6\\x13r\\xab\\x96Y\\xa4\\xe6\\xa07\\xd8\\x0e\\xc5\\x9b\\xdbf\\x96Y\\x13e\\xde4\t\\xba\\xc3\\xcb,\\xb3\\x07Z\\x18\\xa3t,\\xb1\\xb7\\x80\\x99%\\xf2n0\\xb3D\\xde\\x18f\\x96\\xf0{\\xc4\\xcc2\\xebv1\\xb3\\xc4\\xef\\xc2\\xa5\\xa4\\xba\\x89\\xcc,A\\xf7\\x93\\x99%\\x9a\\xbd4\\x96\\xd9\\xf3d\\xb69\\x0e\\xe0h\\x1cJ\\xb2\\xea\\xc7\\x81\\x0eR\\x82\\xe9PcI\\xd6\\x86\\xa8.\\x98\\xb3\\xef\\x92\\x02\\xbd\\x91-\\xa2\\xe8\\xac \\xd4yO\\x9bY\\xe6\\xb4\tp\\xa7[Py\\xe6\\xfb\\xdf\\xba\\x9b\\xde\\x82\\xcar\\xdd\\ng\\x92\\xdeF\\xd4\\x0c\\xbc\\xdd\\x8bX\\xf7cV\\xfb\\xb0\\xfb\\xfb\\xb5\\xc4yA\\x11\\x1eP\\x84\\x16\\xa4\\xc4\\xe8BJ\\xb4\\x1d\\x9fe@f\\x18\\x8f\\xe0\\xfb\\xff\\xb5D+\\x97\\xccR0\\x17\\xb6~\\xfe\\xa7?=\\xfb\\x1f1\\xaf\\xceT4\\x99\\xa7l\\\"n\\xaaZ\\xed\\x9e\\xff\\xe9\\xcfW\\xcf~\\x8d\\xd5\\x9f\\xe3\\x91\\x9d\\xb6\\xcb<[\\xfd\\x85\\xedG1\\xbe+\\xb6\\xaf\\x07\\x17\\x11\\xc5\\xf9Qm\\xcd\\xe4\\x8d-\\x83\\xb0\\xdf\\xbfv\\xb6)\\xb0\\xc0P:\\xeeXf\\xf5\\xcf\\x9c}}\\x17-\\xdeUYYeM\\xf4\\x94\\xbe\\xd3\\xba\\xebZ\\x87T6\\xd2\\xf2\\xc4\\xda\\x9cH\\x93>C\\x99\\xd1S4\\xd2\\x98G*\\x94\\xccP*\\x99g\\xc6g(\\x97\\xccQ0\\x99k\\xc0\\xef\\xaf\\xe2\\xf1\\xa6\\xfb\\xd6\\x0cwB\\xb3=\\xc7h\\xcf\\xe8\\x938\\xa3GR\\x98\\xeb;\\xafu\\\\\\xb2\\x8a\\x96\\xc8\\xea\\x86U\\x95\\xef\\xce\\xca\\xe2\\x1c\\x0e\\x8d\\x05\\xd6*\\xac6\\xcb\\xfd\\xdfi\\xd1d\\x05;\\x0f\\xdb'\\x85\\xed\\x8f\\x02\\xf6E\\xc1v>\\xdc\\xba\\x07/\\x96\\x81= %\\xc2\\x0c\\x06/\\x8d\\xc1\\xca\\\"Q\\n#\\xb1\\x0ba\\x94\\xe2H\\x9c\\xf2H\\xfc\\xb2w\\xb7\\xd5\\x8cY\\xe4nayK\\xb2\\xb0\\xc5Y\\xda(}\\x87\\xd95)3\\x16\\xb0;\\xa8c\\xdcb\\x15X\\xb1\\xc0*\\x85D\\xc9#k\\x02\\x8d\\x80\\x87\\x06W\\xdf\\xf1\\x05\\xf5\\xb5\\xc8\\x1b|)\\xd2\\x06\\xe7f3\\xaaCJ\\x07\\xf9\\xb5\\xb4i\\xd8v'2\\x19\\x9b\\x92l\\xb3:gtM\\xa8\\xccY\\xf4\\x96's\\x1aM\\x11\\xd5\\x01U\\xd8\\xacx\\xaf\\xa1\\xf7\\x1bu\\x9f\\xc3\\x01\\xeaM\\xc8h\\xf20i\\xe4w|\\xdc\\x02\\x08;\\xc6\\xcf\\x83\\xf1\\xaa\\x8d\\x80TG@d\\x04\\x90\\x02\t|\\xd5\\x08\\xe2\\xa0\\x80ZJ\\xc0\\xad%\\x04\\xcc \\x81\\xf5\\xa7\\x16\\xc8\\x00\\xd2\\xe2W9\tQ;\\x81\\xab>\\x90\\xbd\\x01\\xe2i@\\x18\\x19\\x10\\xaf\\xda\\xebK\\x03\\x87\\x02t \\x04q$\\x02:\\x03\\xc6{\\x88e8Dr\\x19\\\"Y\\x0b\\xe1\\xfc\\x84YL\\x04\\xb8\\x07\\x99\\x8a]\\x10\\xc4#\\x08f\\x0c\\x04\\x8c\\x9a\\x80\t\\x0c\\xf4d\\\">\\x0e\\xf3`\\xc0h}D\\x0d<\\xcd\\x0fq\\x9d\\xa0\\xa8\\xba\\xc0\\xc8\\x01%\\x99\\x11cX\\x8d\\x00\\x98\\xb8\\x05\\xe7\\xb6\\x14H\\x0f\\x9d\\xb8i\\xfd\\xba\\xfb\\xd8\\x0e\\xbbI_\\xe5\\xf61+V\\x82&_o\\xcb\\xfa\\x9bz}E~\\xbf\\xf8\\xe3\\x7f\\xc7k\\xdb|\\x8b\\x8c\\xbf^\\x04v0\\x01x\\x86\\xe8\\xf9\\xe1\\xcd\\xdb\\xf7\\x1e+\\x90\\xfa\\x93\\xb0\t@\\xc0\\xe9\\xff\\x04\\xafm\\x1b\\x8b?\\xc1\\x1e\\xd0\\xa5w\\xb6I\\xc2k\\xdb\\xfc\\x0d$\\xf0\\x05\\x0f\\xf7J^\\x95\\x93\\x10\\xb5\\x13\\xb8\\xeaoc\\xaf\\x04O\\x9d\\x06\\xb5\\x08\\xd4\\x92\\xf0\\xc4g@\\x8as\\xaa\\xea\\x813dS}p\\xaa\\x0fo\\xae0^\\xdb\\x06\\xc8\\xb0M\\xf5\\xa5\\x80\\xfc\\xd8T\\x9f\\x04f\\xb7\\xa6\\xfa\\\\Xn*<\\x0b\\x15T?\\xb8\\xaf6\\xfd0\\xdfC\\xc9\\x1b\\xba\\xb2\\x8b\\xac\\xa0\\xcaq\\xea\\x1es\\x94\\xa4\\n8R\\xca\\xe1\\xbb\\x1aq\\xed\\xff+\\xb6\\xba\\xfc\\xc3sUc\\xe7)\\xd3'\\xc5\\x00\\xca9\\\"\\xcd%\\xaf\\x8b:\\xef\\xfa\\x0bWu\\xfd\\xe5\\x88,\\xdbF;\\x82\\x1f\\xdf\\xfc\\xc5uE\\xfd\\x8dp9\\xafY\\xd5\\x90\\xac!M9\\xad\\x8b\\xab*\\xdc7]\\xb2\\xa6a\\x15\\xf9\\xfc\\xff\\x00\\x1bBo^mH\\xae,\\xde|\\xd7\t| \\xe3\\xcdw.\\x1f\\x07o\\xbe\\xc3\\x9b\\xef\\x0e\\x05Z\\x13\\x827\\xdfY\\x04\\xef\\xc7P\\x82\\xf7c\\x0c\\x04\\xef\\xc7\\x00\\xbd\\x13tbEX\\xe4A\\n\\x04\\x83\\x1f\\x8b?\\xca4\\x96@[G\\\"\\xec\\x1d\\x01\\x07Gz\\x89\\xe8>\\x02u\\xc9\\xa6\\x12\\x14\\xb9\\x1aK\\x84\\xf6H\\xa4\\x06\\xb9\\x00c\\\\c\\x89\\x19wZ\\xc2\\xa7\\x84\\x96\\xd0\\x0e'\\xf1\\x9dNb;>0n6\\x16P\\x14m,`@TK\\x84B\\xa0!\\xe9\\xb1\\x04\\xe3\\xc5Zf\\xd4\\x10\\xdcUx?F\\x98\\xc6b\\\\\\x90_\\xf5\\xfd\\x18x\\xf3\\x9dI\\xd0\\xb3W\\x82\\x9e\\xfd@\\xd0\\xb3\\x07\\xbd\\x83\\x9e\\xbd\\xefY-\\xa1\\x8e^D\\xf7\\x91\\xf05P\\nz\\xf6V\t\\x9f\\x12ZB;\\x9c\\xc4w:\\x89\\xedx\\xf4\\xec\\xb5\\xa0g/%\\xdc\\xde\\xa2g\\x7f(w\\xed\\xd9?\\xc0\\xfc,\\xbc\\xf9\\xce.\\xa1\\xe3\\x13o\\xbe\\xf3\\x15\\x8a7\\xdf\\x85\\xd4\\x8b\\xe0\\xcdw\\x1e\\x89l+\\x99\\xd1^\\x02#\\x98\\x9b%\\xd0`ME\\x1b0/\\x19\\xdd,^\\x8a\\xbaY\\xee\\xb3\\xd2\\xa1&x*0\\xea{p\\xb1x\\xf3\\x9d\\x8flo\\x96P\\n\\xbeY\\xfc\\xc4|\\xb3D\\x0f\\xe4\\xb0\\x88\\x8e\\x96\\xe8\\xcf\\x85\\xfaLC\\xc1\\x9b\\xef\\x002\\xc7\\xf6\\xc7\\xc4\\x0b\\xc8<%\\x93\\xf0\\xad\\xd5Xf\\x04\\x8e\\xb4\\xcc\\xd06\\x99\\xa9q\\x12\\x1bP\\xd2\\x12\\xb3\\xc1\\x9eJ\\xfc\\x8c\\xd4\\x12;p\\xc8\\xfc\\xc1C\\xe6\\x0e\\xa0Y\\x01(-\\x11\\x81(-\\xf0\\xf4\\x0d\\xb3\\xcc\\xd0\\xdf\\x0c\\xbd\\x85'\\x80\\x98\\x05\\x90\\x16b\\x96\\xfbh68)\\xc3,\\xf7Qe?\\xeb\\xd6.\\xd0l\\x96\\xe0\\x82\\xf1\\xe6;\\x98\\xdcG\\x8d\\xfdy9f\\xb9\\x8f\\xba\\x06d\\xf6\\x98\\xe5>*\\x0d\\xcc\\x0d2\\xcb}T8,\\xbb\\xc8,\\xf0\\x9c#\\xb3\\xdc}\\xbb\\xe7\\xec\\xce\\xbd\\x19:A\\xa5\\x05d\\xf3\\x98\\x05o\\xbe\\x9bJ\\xbc\\xc7\\x1b\\xc46\\xd02\\xc7I\\x0fG\\xc3\\xb4\\xe0\\xe6\\x13\\\"\\x91\\xe6A\\nn>\\xa3\\xc7\\xb5\\x96\\xf8\\xa9\\xa8%v\\xe0\\x90\\xf9\\x83\\x87\\xcc\\x1d@\\xf7\\xbd\\xf9\\x84\\x9c\\xb3f\\x16\\xa99\\xe8\\x99\\xc6C\\xf1\\xe6\\xb6\\x99e\\xd6D\\x997M\\x82Nu3\\xcb\\xec\\x81\\x16\\xc6(\\x1dK\\xec\\xb9pf\\x89<-\\xce,\\x91g\\xc8\\x99%\\xfcd9\\xb3\\xcc:o\\xce,\\xf1\\xbbp)\\xa9\\xce\\xa63K\\xd0\\x89uf\\x89f/\\x8de\\xf6<\\x99m\\x8e\\x038\\x1a\\x87\\x92\\xac\\xfaq\\xa0\\x83\\x94`:\\xd4X\\x92\\xb5!\\xaa\\x0b\\xe6\\xec\\xbb\\xa4@\\xcf\\xe8\\x8b(\\x1ao\\xbe\\x1b\t\\xde|\\x17\\xe7\\x05Ex@\\x11Z\\x90\\x12\\xa3\\x0b)\\xd1v|\\x96\\x01\\x99a<\\x82o\\x84\\xd0\\x12\\xad\\\\2K\\xc1$\\xf6\\xa6\\x08-\\xb3\\x14M\\xe6)\\x9b\\xc4\\xdf \\xa1\\xe5~\\xab?\\xc7#\\xbb\\x85\\x1b&\\xb4$\\xb9iBK(\\x1dw,\\xb3\\xfag\\xce\\xbe~\\x17\\x7f\\x13\\x85\\x96{\\xa8\\xfb\\x0eo\\xbe;\\x94\\xe8)\\x1ai\\xcc#\\x15Jf(\\x95\\xcc3\\xe33\\x94K\\xe6(\\x98\\xcc5\\xe0\\xf7W\\xf1x\\xd3}k\\x86;\\xa1\\xd9\\x9ec\\xb4g\\xf4I\\x9c\\xd1#)\\xcc\\xf5\\x9d\\xd7:.YEKdu\\xc3\\xaa\\x8a7\\xdf9%\\xd8\\xce\\x87[\\xf7\\xe0\\xc52\\xb0\\x07\\xa4D\\x98\\xc1\\xe0\\xa51XY$Ja$v!\\x8cR\\x1c\\x89S\\x1e\\x89_\\xf6\\xee\\xb6\\x9a1\\x8b\\xdc-,oI\\x16\\xb68K\\x1b\\xa5\\xef0\\xbb&e\\xc6\\x02v\\x07u\\x8c[\\xac\\x02+\\x16X\\xa5\\x90(ydM\\xa0\\x11\\xf0\\xd0\\xe0*\\xde|\\xe74\\xea>\\x87\\x03\\xd4\\x9b\\x90\\xd1\\x847\\xdfy\\xa6\\x03p\\xd5\\x08\\xe2\\xa0\\x80ZJ\\xc0\\xad%\\x04\\xcc \\x81\\xf5\\xa7\\x16\\xc8\\x00\\xd2\\xe2W9\tQ;\\x81\\xab>\\x90\\xbd\\x01\\xe2i@\\x18\\x19\\x10\\xaf\\xda\\xebK\\x03\\x87\\x02t \\x04q$\\x02:\\x03\\xc6{\\x88e8Dr\\x19\\\"Y\\x0b\\xe1\\xfc\\x84YL\\x04\\xb8\\x07\\x99\\x8a]\\x10\\xc4#\\x08f\\x0c\\x04\\x8c\\x9a\\x80\t\\x0c\\xf4d\\\">\\x0e\\xf3`\\xc0h}D\\x0d<\\xcd\\x0fq\\x9d\\xa0\\xa8\\xfa?\\xea\\xcdw\\x90\\xba\\xbd\\x92\\x99\\xd25i\\xfa\\xbd\\x12\\xef5\\xf9\\xc3\\x91\\xdcG\\xf1\\xca*\\x82\\xf8\\xce~\\xd3\\x85\\x9a\\x12\\xa64\\xe4M\\xc6\\xf2\\xb5\\xben\\x82\\xad\\xb9\\x8b\\xb9\\x1c\\xdf{1|\\xda]\\xeb\\xefY#\\xea\\xf6j/o*8c\\xf5\\xae,j\\xa6\\xaf\\xe6\\xa8\\xf4\\x7f\\x8bfl\\xca\\xca`\\x06\\xfeO\\xcb\\xaa\\xfd\\xf1\\xb4\\xa4i\\xcd\\xcfN_\\x93-k.\\xcbu_?m\\xdd\\x06\\x8f\\x8e\\xaa\\xfb\\xb2 m\\xc1\\xbe\\xee\\xd8\\x8a\\xb7\\x93UUYu5\\x1a\\xb6\\xb2^]\\xb2\\xed\\xe4\\xbcx\\xeb\\xf2f_\\xd0\\xc4\\x07\\x0eg\\xa1c\\xde\\xad\\xca\\xb5a\\xda\\xba]\\x1d\\x97\\xcb\\xaa\\x8e\\x0d\\x0c\\xaa\\xc3\\x9a54\\xcb\\x0d\\xc6\\xd3\\xe5%X\\xbd\\x03\\x8fW\\xe0\\xf3\\x06\\xf8\\xeb\\xe7me\\xf5\\x07\\x016\\xcc?\\xcd\\xa4\\xbc$\\x9f\\xcf\\xde\\x1dW\\xac.\\xdbj\\xc5HA\\xb7j\\xee\\xb7E\\xf6S\\xcb\\xf2=\\xe1\\x06\\xa1\\xc96\\x99\\n\\x834\\xf2(Gk\\x81\\xf2\\xc2\\x89*\\xa3y\\xf6w\\xb6\\xb6\\x1f\\x00\\xb0\\xab\\xca\\xa6\\\\\\x959Y\\xb6\\x9b\\x0d\\xabt\\xa7-\\xe4=\\x1a\\xb2md\\xdb\\xd6\\x9d\\x81\\\"\\xd4\\xee`\\xe5\\x8c\\xd6\\x07s\\xa5\\x97\\xb2`\\xe4\\xd1\\xf1#\\xb2\\xba\\xa4\\x15]5\\xac\\xe2_ab#Hjv\\xb1eEg\\x85?\\x9f\\xbd{\\\\\\x93\\x1dm.\\xad\\xa5\\x89Ju\\x07L\\xd9\\xbf\\xca\\x8b\\xdb\\xb4y\\xbe'?\\xb54\\xe7\\x1a\\\\K\\xfd\\xaaO\tM>\\xa15\\xc9\\n{!_xU\\x8e/\\xca\\xf2\\\"g\\x0b\\xa1\\xb3e\\xbbY\\xbci+q\\xc2\\xc2\\x97\\xa7\\xb2%\\xa2\\xd8\\xfa\\xb2l\\xf35Y\\xf2U\\xc4Z\\x1e%+Z\\x94E\\xb6\\xa2\\xb9\\x98C\\xf6/?a\\x8b\\x8b\\xc5\\x11W\\xad8;\\xe2\\xd1\\xe2\\x117g\\xe2~\\x95\\xd5\\x8a\\xed\\x1a\\xb6~\\xba\\xf8\\x8d\\xfd\\xf5\\x93\\x82\\xec\\xb8\\xb2\\xb3\\x15;\\\"\\x0d\\xa3\\xdb\\x9a\\xb4uK\\xb9:\\xe41\\\\\\xbb,\\xe75mJ\\xa1\\x8ceV\\xd0\\xca\\xee\\x87\\x8b+]\\xf6;\\xa6\\xeeVi.\\xd9\\xde\\xfeii\\xeb\\xd4\\x15Bm=<?\\xb4a_EW\\xbf,\\xf6\\x0b\\xf2Cy\\xc3\\xaeYu\\xe4\\xf4\\xb1>\\x9f\\xbd\\xd3>\\x1c/\\x8a\\x1bn\\xeb\\xb3\\xc2\\x822\\xf2\\xe5\\xb2iv_\\x8e\\xe4\\xff\\xd7_\\x8eHY\\x91\\xa2T\\xbf\\x1e\\x89\\xd1\\xb8\\xa2\\x05)\\xc5\\xec\\xe4\\x1a\\xb1\\x17\\xc8\\x1a\\xd2\\xee\\xd4\\x01\\xaa\\x8e\\xef\\xb2\\xea\\x9aUR5[\\xbaSw0\\x89\\x9a7ew\\x8a\\xaa\\x08ff\\xf2\\xfa\\x17j\\x8f9n\\xca</o\\xea\\x17\\x8e\\xbe\\xfd-9\\xd9\\xf4-\\xe2\\xc3bW\\x95\\xdcsXw\\x8d\\x16\\xfeM]\\xb7[\\xb6v\\x9c\\xd6\\xfa[\\xbe8\\xfd\\xf0\\xe9\\xd3)\\xf9\\xfe\\xed'}\\xe1\\xce\\xe7\\xb3wr\\x8e\\xed\\xc5\\x12\\xfd\\xff\\xb3\\xf7~\\xdfq\\xe3H\\xba\\xe0{\\xfd\\x15\\xb1\\xf5p]\\xb5\\xd7\\x96\\xba\\xba\\xe7\\xde\\x07\\xdf\\xed=\\xeb\\xb6]=\\x9a\\xdbmk-\\xbb\\xea\\xcc\\x993'\\x8b\\xca\\x84R\\x1ce\\x92\\xd9$S\\xb6\\xb6f\\xfe\\xf7=D\\x00$\\xc8\\xc4\\x8f\\x00\\x12)\\xab\\xbb\\\"^\\xca\\x95\\\"\\x83@\\x10\\xbf\\x88\\xef\\x8b\\x0f\\xeee\\xd0\\xbf\\xcd\\xbb\\xc5\\xc7\\x87\\x9d\\xf8\\xf7\\x7f\\xfbw\\xe7\\x0dr\\xb5\\xbc\\x97\\xed\\x01\\xdb\\x9b\\x9aF\\xe4\\x1b\\xda5\\xf5j\\xbf\\x14PT8\\x85\\xb9\\xc9x\\xff'\\xbc\\x1aENZy\\xc2P\\xd1\\xc7\\x0cW\\x11\\xcbb\\xd9\\x8f-u}\\xb7\\xdf\\x81J\\xab\\x84\\xeb\\xa2\\xf5P%\\xeb\\x90*\\xcc\\xa7\\x0f\\x7f\\x91e\\xbc-\\xeee\\x13\\xdc\\x1a}h\\x85\\x9d\\xa8\\xd0U\\xea\\xff}_\\x97+(*\\x1fZ\\x84\\x05\\x94\\xc3G#n\\xeaF<\\xd7\\x0ez\\xbfEW^\\x97\\x9b\\xb2{\\x80J\\x88U\\x8b\\xab#\\x90C^s\\xef%}\\xd6U?\\xccVk!o\\x92}\\xf6\\x0c\\xbe\\xfb\\xd4\\n\\xad\\x03\\xd5G\\xa9o\\x9e\\xfd\\x98\\x85\\xed\\xb3\\xa8\\x8a\\xb5\\xaf\\xf6\\xd7\\x8d(\\xee\\xfa1H9>\\xfb\\xde\\xdd\\xa2\\xde\\xd5\\x9dx\\x89\\x07\\x91\\xdd\\xec\\xab%\\xf6\\xb0\\xbe\\x1ej\\xecZ\\xee\\x9bFT\\xdd\\xe6\\xc1\\xd8\\xca\\xf7\\x0c\\x97\\xf2\\x00\\xa8\\x9b\\x9brY\\x16\\x9b\\xc0\\\\v\\xbd\\xbf\\x81F\\xf43\\x91x.\\xa5q\\xcaN?t\\xdf\\x8a\\x15.\\xfbt\\xbft\\xba\\xba\\x16\\xeb\\xb2\\xaa\\xfa\\xca\\xf6\\xcb\\\\\\xcf\\xe4\\xf2\\xb0\\x13g\\xd8\\xfe\\x8b]\\xd9\\x9e-\\xeb\\xado4\\xbe\\x92=\\xb5\\x85\\xba\\xbb\\xc5\\x81\\xa2\\x9a\\x8fR\\xf0\\x1d.KAlw\\xdd\\x83\\xea\\xda\\xdf\\xbb'\\xc1~u\\n\\xd7\\x9eAIVZ\\xae\\xd5\\xcb\\xedn#\\xfaIVv\\x18hwbY\\xde\\x94Kh\\xc5\\xb6\\xa8\\xbar\\xe9\\xe0\\xbd\\xca\\xbez\\xc4\\x12\\x88\\xf0\\xf9F]%\\xfd\\xb5\\x1f\\x8e\\xae\\x05\\x14\\xf8ic,p\\x0e\\xd61Z\\x06\\xe9\\xba\\xbew\\xb7i\\x15\\x02\\xd5\\x15\\xac'\\xca\\x11J\\xf6\\xcb\\xab\\xea\\xe1\\x97\\xf1\\xfb\\xad\\xa8\\xa0h\\xae\\xcb\\xae\\xe9;\\xb1\\xbb\\x84VWz\\x8e(6\\xb5jzP\\xd8_m?:\\xcb\\x89\\x06Kx=]\\x16\\xce\\x96\\x7f\\xc3\\xaa\\xce\\xd14/u\\xc7\\xd9\\x94\\xd7\\xb2\\xd8j\\x1ei\\xa1\\xdd\\xefvu#g\\xf0]\\xb1\\xbc;\\xdfW\\xfd\\x7f\\xfay\\x1b\\xdb\\x85\\xbd\\x07\\xa9\\x89\\xde\\xbd\\xb0\\xa9o`\\xdf\\xe1\\xc0\\xa6\\x87\\x87\\xb6\\x1fX\\x8b\\xd5\\xaa\\xc4\\xb1\\x02\\xd6\\xa2\\x12M\\xd1\\xc9\\xc2\\xf7\\x1fZZ\\xd9\\xca\\xea\\xaf/\\x0f\\xbeB\\xfb\\xf3\\xde~)\\xfa\\xc6\\x0f?\\xbc\\x84\\xcb\\xbe\\xfc\\xfd\\xb8\\xa0\\xaaR\\x98\\xf2\\xe6\\xaf\\xff\\xfb\\x7f\\xf7L\\x93?\\xd65\\xdc\\xd45\\xfc\\x11\\xce\\xce\\xce\\xfe\\x97\\xf3\\xb2\\xbe0E\\xf5\\xe0\\xbe\\xa0\\xa8\\x1e\\xce\\xfab\\xfc\\xd8\\xd4\\xdb\\xefn\\xea\\xfa{\\xf7\\xa5gg\\xee\\xf9\\xaf\\xbc\\x81\\xefzW\\x9fdE>\\xd6\\xdf\\xfd\\xb7\\xde\\xd7\\xf7\\xf0\\xabg\\x0c\\xf7\\xf9\\xfb/\\x7f\\xec~\\x1f\\x88\\xdd\\xbf\\x14\\xf7E\\xb6\\xe0\\xc1\\x1f\\xe5\\xda\\xb0\\x7fJ\\x86\\x08\\x95\\xedw?\\xd6\\xf5\\xd9rS\\xb4m @X\\xc4\\xfe&\\xac\\xa3q\\xa3\\xbb\\x0c\\x8e\\xc8\\x0d\\xa1\\xfbC t\\x97\\x0f\\xddm]y\\x82\\x87\\xa5\\xfa\\xb1\\xae\\xbf;;;s\\xcf\\x06C\\xe0\\xbe\\xf3^#\\x1b\\x9f\\x0ckjT{'\\x17\\x18\\xd47o\\xaf^\\x7f\\xb8\\xb8\\xfc\\xf8\\xfe\\xc3\\xf7\\xbe=\\xbf\\xb1\\xa1\\xfa\\x1f\\x8c\\x8f\\xf6\\x87\\xf3\\x9f\\x02\\xe1\\xfcs\\xed\\x11\\xbc\\xebC\\xf9\\xf2\\x8f\\xf0\\xdfv\\xd7g?\\xd6\\xf5\\xafggg\\xff\\xe5\\xbe\\xb8\\xa8\\x1e\\x9e\\xf7\\xcb\\xd0\\xfe\\x8e\\xa2z\\xd8]\\x9f\\xbd\\x13\\x9f\\x03\\x15(o\\xe4\\x1d\\xff\\xc7\\x1f\\xa1*7\\xde\\xb6\\xe6\\x8d2x\\x8a\\xe5\\xbdoVA\\x8f\\x1bUR\\xac\\xdb\\xd9\\xa7j[4\\xedm\\xb1\\xf9Xc\\x97\\xcbU\\x0d\\xeb\\xdf\\xfa\\xcfe\\xf9\\xe6\\xf4\\xe8\\xae?]\\xe0\\xfaa\\\\\\xc8\\xe9\\xf9\\x08\\x8f&\\xb5\\xaf\\xa3\\xd5\\xbe[\\xbf\\xd0\\xb1?\\xea\\x99e\\x91v~\\xb3\\xdfl\\xce\\xe4\\x1f\\xfa\\x05\\xf03(\\x8c\\xf9\\xb3\\x9f[\\x95\\xa8\\xa2\\xd5!\\xb69\\xfb\\xc3\\x86\\xc9\\xaa\\xda<\\xe8/\\xd5\\x83\\xed\\x87a\\xe1\\x0d\\xc5M'l\\xdb\\x90hrg\\xe4\\xd9\\xf93\\xfb\\xa3\\xd4,\\xab\\x8b,\\xbf\\x9fA\\xa8>\\xf2\\xedM]\\x9f]\\x17\\x8d\\xac\\xec\\x97\\xf3\\x87\\xb3\\xff\\xef[\\x8c\\xa2\\xfc\\x9a\\xb3\\xfas\\x7f\\xdc\\xca\\xa2~\\xdb\\xfb\\xe8'X\\xeb%\\xffr\\xf5\\xfe\\x9d\\xfd/\\x7f\\xfc\\xe3\\x1f\\xff\\xe8n\\x03\\xfd}\\xe3.\\x0e\\xaeL\\xeb~\\x80Q\\xcb*\\xfcR\\xdc\\xb7Bo\\xe1\\xae\\xf7\\x9b\\xc2!\\xf8}\\xe8\\xa6\\xbfe%\\xc6\\x85\\xd0s\\x10\\xdbk\\xb1Z\\x8dK\\\"\\xdc\\xc7\\xb6\\xba+\\x1c\\xfbA\\xc6\\\"\\x05w\\xaf\\x7f\\xf9\\x7f\\xfa\\xd0\\xfd\\xa2\\xb6'&\\x1b\\xf9\\xfa\\xe5\\xd8;\\x88\\x1a\\xd0^z>i\\x8a\\xe5]?\\xaa\\x8d\\x9f\\xd87\\xe5F\\xb8g\\\"=\\n^\\x8a\\xa6\\xad+o\\xb7U{{\\xf2D\\xdd\\x85|\\xc3\\x7f\\x84\\x1f\\xdc\\x9e\\x87\\x1b$oC]\\xff\\xfb\\xf89\\x11\\xc0[\\xaaoe,\\xbf}\t\\xdf\\xdaz\\xed4\\x0cgX\\xcbo}gY\\x7f+\\xeb\\xf7\\xae\\xd8\\xf6>\\xff/\\xac\\xc2\\xff\\xed\\xbd\\xa1\\xaf\\xdf\\xec\\xfa\\xd8J^\\xdc\\xa8O\\xb8i[\\xc3\\xd6P\\xb6\\xf0Yl6/\\xee\\xaa\\xfas%\\xc7\\x99[y\\xdc\\xf7r\\xdfv\\xf56\\xb2sM\\x9b\\xfcs\\xfc$\\x98\\xf5\\x03}\\xae\\xf3P\\x9c\\xbe\\x01;>\\xd7\\nl\\xd2\\xf6\\x87\\xfd\\\";\\xa3n\\xe7\\xb7\\xf5f\\xa5Dze\\xc9\\xb1+\\x97\\xd5\\xd0?\\x00\\xf7\\x14\\xed\\xae\\xb0\\xcb\\xd8\\x9f#\\x8bp6L\\xf7\\xdf\\xf5\\xe3\\x9a\\x0e\\xe1\\xc1f\\x93\\xde\\x83\\xfd\\xf7\\x7f\\xfb\\xf7\\xef=\\x1d)G\\x9b\\x9b>\\xd0\\xdf\\xecd\\xa8z\\x97?\\x9c\\xfd\\xfe\\x87\\xdf\\xb7\\xdfz\\x9a\\x10\\xfewW4\\xc5Vt\\xc2\\xa4\\\"\\xbf\\x90#\\xefKEc2\\\\\\x94\\xd5\\xcb\\xf9\\xe6x#\\xfe\\xb6/\\x1b\\xb1z\t]\\xb37\\x83\\xee\\xf8D\\xb7\\x91R\\xbab=y\\xfa\\x95h\\xee\\xcb\\xa50~\\x19y\\x93\\xdf\\x00\\x9c/\\xebv[\\xb7\\xe7\\xd7E+\\xceG\\x94\\xf0\\xfc\\xfe\\x87k\\xd1\\x15?\\x9cW\\xf5J,\\xca\\xea\\xa6F\\x9f\\xeb1M\\xb6\\xddo\\xb7E\\xf3\\xf0\\x12\\xfe,\\xbaw\\xf5J\\\\T75\\xfcm/\\x1a\\x0do\\xa8\\xfd!\\xe8]H\\x81.=\\x80\\xd6;\\x81\\xe1\\xbfXM\\xeeV\\x7f\\xd6\\x80\\x9aQ\\x8dg\\xbf\\xff\\xdd\\xef\\x9e\\xb9Q9h\\xf7\\xcb\\xa5h\\xdb\\x9b\\xfd\\xe6\\x94p\\x9cZ\\xa5,f11\\xcd\\x8bV\\xf9\\xb1*\\xbd\\xb7\\xb0\\xf0\\x8a\\xbc{\\x1f\\x00\\xc1\\x87\\xc8+~\\xef\\xe1\\x16\\x106\\x83\\xc6v\\xe7U\\x19\\x0f\\xe8\\xb6\\xe7{\\x90Wi=\\xcfc\\xa6o\\xdeA\\xdc\\x0b<jS\\xb6\\x9d\\xa8$\\xb5$\\xe9\\xfeJt\\x9f\\xeb\\xc6\\x11\\xd1\\xc0\\xbd\\x84&\\xe5\\xbcwy[T\\x95\\xb0\\xe1\\xb9\\x84\\x9b\\x83[\\x87\\xdb\\xba*\\xef\\\\$\\xc1\\x80s\\xb9\\x03{\\xb2n\\xd2}\t\\x9d,\\x14\\xac;@\\xb3[\\x86\\xc9D\\x1e?\\x86\\x04\\xbc{\\\\8b\\xd0\\x91sSJ\\xec\\x8b\\xddn\\x91|\\xf31\\xcdq]R\\x18\\xc7\\xce\\xdb\\xaf\\xf7\\xe5f\\xb5\\x98N\\x92\\x11\\xb7\\xafk\\xca\\xf0\\x1cx\\xfaJ\\xec\\xbcOw\\xf3(\\xbd\\x1c\\xca`\\x9b\\x0f5\\x06uM\\xd1y\\xd9\\xab\\x84V//C\\xae\\xdf\\xb6^\\xed7\\xc2\\xcf\\x02 \\x9cj\\x92\\xf4P\\xe5\\xd7y}\\xeb'r\\xc6=sy+\\x96w\\xed\\xde\\xbe\\xf8\\x1f\\xae\\xfa+\\x96\\xac4\\xbe,\\xfb\\x95\\xf1OX\\xd2\\x0b\\xbb\\x8a).\\xd1\\x16\\xed\\xea\\xee\\xa8\\xc67\\x14\\xe2\\xd9UY-\\xa5|j\\xef\\xf7E\\xbb\\xba\\x83\\xdf\\x9d\\xfd\\xd3\\x1f\\x9e\\x1d\\xdc3Ye\\x19e<(\\x7f\\xff?\\xc6Bn m\\x0d\\x98\\x85\\xd3\\xab\\x8d\\x00v\\xe0\\xc6\\xc7\\xfd\\x1a\\xd9^\\xb3e\\xa4\\xb6\\x0f\\x97\\xaf\\xe7\\x9f\\x14L\\xfbb\\xdaW\\xb0oS`C`\\xda\\x17\\xd3\\xbe\\x9cW2\\xedK\\x1a\\xd3\\xbe\\x0e\\x8di_L\\xfbr\\x19\\xd3\\xbe\\x98\\xf6%\\x8di_L\\xfbb\\xda\\x17\\xd3\\xbe\\xd0\\x98\\xf6\\xc5\\xb4/\\xa6}1\\xedK\\x1a\\xd3\\xbe\\x98\\xf6e\\x98\\xfb\\xe3\\x96i_\\x93\\xdf\\x99\\xf6\\xc5\\xb4/4\\xa6}1\\xed\\xcb\\xee2\\x9a\\xf6\\x95\\x99r\\xd5>T\\xcb\\xb2R\\x925\\x0e\\xc2\\xd5\\x15^3\\xf0\\xad$\\xc7J\\xdd\\xe8\\xa2Y\\xa9{\\xd4_\\x9f,\\xcbjR}\\xd3\\xd0\\xd7u]oD1\\xddo\\n\\\"\\x8a\\xaa\\xea\\x91\\x80\\xe24`\\xdaX7B\\x19\\x03\\x88\\x0c \\x8e\\xc6\\x00\\\"\\x03\\x88\\xa31\\x80\\xd81\\x80h7\\x06\\x10\\xb51\\x80\\xc8\\x00\\\"\\x03\\x88\\xc4U\\x12\\x03\\x88\\x831\\x80h\\x1a\\x03\\x88\\x0c Z\\x8c\\x01D\\xeb5\\x0c 2\\x80\\x08\\x0c 2\\x8085\\xf7\\xc7-\\x03\\x88\\x93\\xdf\\x19@d\\x00\\x11\\x8d\\x01D\\x06\\x10\\xed.\\xbf6\\x808j\\xc6\\x8b\\xae=\\xdf\\x14\\x9dh;/\\x9a\\xf8\\x17y\\xc9p\\x88\\xd6\\x95\\xe8\\x06`\\x11\\xef\\x1ee\\xe8_\\xb4\\xa2s\\x01\\x8c\\x87n\\xd4\\x85O\\x16k\\xc43B\\\\'\\x0cy78|\\x07\\xc2\\xf8\\x8e$\\xec\\xbe\\x02\\x98\\x15\\xc8@\\x0fn\\xe4\\x04\\xce\\xf7\\x0b\\x94\\x0e\\x08%\\x04\\x02\\xe4\\x06\\x94\\xa2\\xa2Q\\xb6n\\xb4\\xc5\\xc2o^g\\xf6=\\x18\\xcf'In\\x18\\x0e\\xc2P\\x1c$\\xc0q\\xfe\\n\\x14\\xdd-\\x19\\x92\\x83\\\\\\xb0\\x1c$Bs^\\x87}p\\xc9\\xf0\\x1c\\x1c\\x0f\\xd1A4L\\xe7u\\xa5\\xe0\\x83(\\xa8\\x0er\\xc3u\\x10\t\\xd9A,l\\xe7o\\xd9\\x03\\xa4G\\x85\\xee 7|\\x074\\x08\\x0fr\\xc2xp4\\x94\\x07ip\\x1e\\xe4\\x82\\xf4 \t\\xd6\\xf3w\\x87\\xa2\\x15\\xab0\\xb4\\x07\\xa7\\x81\\xf7\\xe0\\x84\\x10\\x1f\\x9c\\x06\\xe6\\x83H\\xa8\\x0f\\xd2\\xe0\\xbe\\xd0\\x10L\\x83\\xfc /\\xec\\x07\\x11\\xd0\\x1f\\xc4\\xc3\\x7f\\x90\\x00\\x01\\x12\\x86\\xcc\\xef\t0 \\xe4\\x80\\x02!\\x04\\x07\\x02}yF\\x80\\x05!r\\x15\\x17\\x0d\\x0fz\\xbdI\\xe8\\x90\\x00\\x11BD)3B\\x85\\x10\\x05\\x17Bn\\xc8\\x10\\x12aC\\x7f\\xbbj\\xc3\\xd0!\\xa4\\xc3\\x87N\\x7f\\xfd\\x13C\\x10\\\"d\\x83\\x11\\x81\\x8e\\x86\\x01\\x05N\\x848H\\x11B;\\xf6\\x89\\xd0\\\"\\x10\\xfcz6\\x053\\xc1\\x8c\\x90\\x14\\\\:\\xdc\\x08\\x84Z&\\xc0\\x8e\\x90\\n=\\x82?\\xaa\\xf9 H\\xa0\\xc3\\x90@\\x84\\\"\\x81\\x0cG\\x02-\\xea\\xf1\\xb0$DA\\x93\\xe0\\x85'!\\x17D\t\\xb10%$B\\x95\\x10\\x07W\\x02\\xe1-\\xf8`K\\xa0\\xdcO\\x87/!#\\x84\t\\x94\\xa2y\\xfaY>8\\x13(\\x90&\\x1c\\x01k:\\x1d\\xf6\\x17\\xfa\\xa0M\\xc8\\x0doB\\x10\\xe2\\x84T\\x98\\xd3\\xe9\\x0d\\xbf\\x80\\xfd\\x9b\\x01\\x04\\xb8\\x13\\xbc\\xa8\\x0cxaOH\\x82>\\x9d\\xae\\xbc\\x90(\\xa4\\xc2\\xa2No\\xb8\\xca\\xf4\\xec\\xc9\\xe5\\x83G\\x81\\x04\\x91B\\x02L\\nqP)\\xa4\\xc0\\xa5\\x10\\x0d\\x99B`.\\x0f\\xc0X\\x10\\x01eQ\\xe1SH\\x81P!\\x16F\\x05\\x7f\\xc5S\\xe0T\\xa73\\x03\\xac\\xa4v\\x19\\x1a\\xac\\xea\\xed\\x10\\xd5\\xda\\x0f\\xadB^x\\x15B\\x10+\\xf8aV\\xe7=\\xa9\\xf0+dl\\xbb\\x110,DA\\xb1\\xe0\\\\\\xbe\\xdc\\xd7]Y\\xad\\x17\\xbb\\xfa\\xb3Kl\\x9a\\xb4\\xef\\xe1\\xc3\\x0b\\xd1\\xf4\\xe1\\xdb\\x8b]S\\xd6M\\xd9\\x05\\xf0\\xb6\\xa3\\x9e6Uv\\xd5p\\xa5U\\xd7\\xd5\\n\\xfdj\\xdb\\x15\\xeb\\xb2\\x92\\xef\\xe2\\xb0\\xb0\\x93g\\x8c\\x17\\xe2.\\xba\\x90; \\xc6\\xaf\\xfaq6\\xb4\\x17\\xad\\xf3\\xc1\\x8c\\x01\\x99k\\xf1\\xa5s#\\x98\\xc1x\\x06\\xf7\\xab&U\\xfdO\\xd7\\x1e\\x90.\\x85\\x0es\\xffO\\xb5\\xe5[\\xb4-\\xeeq_\\x16k\\xf1A\\xfcm/\\xda\\xee\\x0c\\xff\\xeep\\xf6\\xb7\\xbdh\\x1e\\xa4\\x9b\\xdem\\x1fI\\x01\\xdb\\xba\\xed@\\xc8\\x8dS\\xb9\\xe3z\\x06\\x17\\x9d1V\\xed\\xba\\x07(];!\\xdd\\xadh\\x84\\xdcq\\xafj\\xd8\\xd6\\x8d\\xd0;\\xec\\xb6\\xf9\\xb9\\xab\\xbb\\xc2\\x81\\xd3\\x92\\x83\\xe9\\xd1\\xf4W:\\xc5\\xce\\xcd4\\xf9x\\x19E\\xf9\\x8fj\\xbf\\xbd\\xc6}=\\x9d\\xebc$\\x96\\xb8\\xeak\\x06zY\\xef\\xabn!\\x9d\\xb9\\x86\\xb1\\xcfE\\x0b\\xad\\xe8\\x9eC\\xd9\\xb5\\x1a\\xefha_ac^\\xe1\\x96\\xee\\xe7\\xb2\\x9d\\xb6\\x0f\\x7f\\xbb\\xb0R&H9\\xca3GC\\xc6\\xb2\\xe9H\\x9f{\\xcf\t\\xcb\\xda8a\\x99\\x13\\x96G\\xe3\\x84eNX\\x1e-+\\x03\\\"\\x86\\xfd\\x10\\xc5|\\xe0\\x84\\xe5cY\\x0e\t\\x0c\\x87,\\xec\\x86xf\\x03',\\x1f\\xc3d\\x88a1$0\\x188a\\x99\\x13\\x969a\\x99\\xca@\\xc8\\xca>Ha\\x1ep\\xc2\\xb2\\xeb\\xb2 \\xc3 \\x82]@I\\xc7\\x8da\\x15p\\xc22',S\\x18\\x02\\x9c\\xb0,-\\x85\\x05\\x10\\xc1\\x00\\xe0\\x84\\xe5\\x0c\\x08\\x7f\\x10\\xddOE\\xf6\\x9d\\xb3\\x0d',\\x1f\\x1a',' \\xf2a4>\\x16\\x89\\x8f@\\xe1\\xa3\\x11\\xf88\\xf4\\x9d\\x13\\x96\\xe3\\x10vNX\\x1e\\xec7\\x99\\xb0\\xec;\\xe8~\\xc4t\\xcf\\xee\\x849\\x0b\\xfa\\xc00\\x85\\x8a\\x16j\\x08mD\\xb7o*\\xb9M\\xa5\\x80:\\x05=\\x0d\\x10\\xaa\\xdc\\\\Z\\xcfva$&\\xdaw\\xfb\\x10,\\xfa\\xbe\\x9f\\xf0\\xeaJ~}\\xd677\\xad\\xe8\\xfa\\x0f\\xbaiq\\xc1\\xd8\\x1c\\x9f!\\xdfe\\xf5\\x12\\x9fe\\xfc6\\x9e\\xdd\\x7fSl&0\\xa0c\\xdb\\xc1\\xba\\xd5`\t\\\"\\x96\\xcf\\x15\\xc7\\xd9g\\xbe\\xaa\\x8c\\x0ce\\xb5\\xdf\\x8a\\xa6\\\\\\xea\\xdfdo[\\x16U_\\x1f\\xdcg\\xb9\\x15\\x95\\x0e\\xfc\\xbe\\x1a\\xb6\\xb6f\\x0b\\xda\\x0b\\xe9m#\\xdav\\x0c!n\\x06\\xed\\xdb>\\xd4w\\\"2\\x9eS\\xf7'\\x0e\\xee\\x0cd\\xb6\\x84wSnKjt\\xe5\\xb5\\x03I\\xc2\\x81=\\xe3\\xb6\\xa7\\xd9\\x82\\x15\\x8c\\xbb\\xdf\\xcc\\xe0P\\xdc\\xe40\\x7f\\xba\\xb8\\x81\\x8d\\xb8\\xe94V\\xaf\\xc0{\\xbdh\\x94;\\xb6\\xd8A\\xf0!}\\x9c\\xaf\\x1f@\\x14\\xcb[(v\\xbb\\xaf\\x18E\\x13A\\x1f\\xef\\xf7\\xc5\\xd2\\xb8\\xa3\\x8f\\xa8l\\xa15t\\xcd^@\\xff\\x8f\\xb2Z\\x95\\xcb\\xa2\\x13\\x03v\\xa3\\\"(/T\\x0d\\xc9tWV\\xcb\\xcd~5[\\x12\\x16\\xf8\\x94\\x01<\\x9b\\xbd1\t\\xc5\\x1a{\\xba\\xfd\\xd0m0Rf\\x83\\xcb\\xa7\\x8bv\\xf6\\xb6fU\\x90\\xab\\xe8F\\xb4\\n4\\x97\\xddk\\xec\\x8f}\\x97;S\\xbd\\xa9\\\\Wu3\\xdb\\x11\\xd7\\xbdq\\xfa\\x08\\x8c\\xcc\\xb1/v\\xae\\x99ny\\x81\\x8d\\xb8\\x17\\xcd\\xe4V\\xdf\\xcbSW\\xcf_\\\\i00\\x1aa\\xef\t\\x13?\\xfd3D%\\xb1\\xc2\\xbaY\\x89f\\xbe%f?\\xa8:k4N\\xaa\\xbd\\xf1+JK\\xfc\\x17>\\xc0\\xa1\\xbea%mh\\xfd\\x8d\t\\xfb\\n\\x8a\\x0e\\nX\\x97\\xf7\\xa2\\x02\\xf4\\xac[\\xc6\\\\\\x8a\\xc3\\xe6\\xf3\\x1b\\x1d\\x1e\\x16\\xe3\\xd0\\xd6}\\x05\\xa2\\x06\\x8bqx,\\x96Z\\xe2uf\\xc7\\x17<\\xdbm\\xb9)&\\x10\\xa6\\x99@\\x02\\xd5\\xc4_\\x01\\x16\\xe3H\\xa5\\x9f@4\\x05\\xc5\\xeb\\x8a\\xc58X\\x8c#\\x95\\xa6\\x02iT\\x15\\xc8EW\\x81$\\xca\\x8a\\xbf;\\xb0\\x18G\\x1c\\x85\\x05\\\"i,\\x90Fe\t\\x0d\\xc14:\\x0b\\xe4\\xa5\\xb4@\\x04\\xad\\x05\\xe2\\xa9-\\x90@o!\\x0c\\x99,\\xc6\\x81\\x16M}\\xf1zc1\\x0e\\x16\\xe3\\x98Y\\x1e\\x8a\\x0c\\xd0\\x99\\x1e@\\xa1\\xca@\\x1c]\\x06Bht\\\"m\\x06\\x08~Y\\x8c\\xc3cI\\xb4\\x1a`1\\x0eeI\\x94\\x1b\\x88\\xa2\\xdd\\x00\\x8bq\\x84\\xde\\x02\\x8bq\\x1cI\\xd5\\x01\\n]\\x07\\x8e\\xa0\\xec8\\x1dv,\\xc6\\x81F\\xa0\\xf2\\x00\\x8bq\\xb8.\\xc8G\\xfd\\x01\\x12\\xfd\\x07\\x12(@\\x10G\\x03\\x82\\x14*\\x10D\\xd3\\x81\\x80\\xc58\\xac\\x96B\\x15r:c1\\x0em,\\xc6a1\\x16\\xe3`1\\x0e\\xeb\\x05\\xc1\\xfd*\\x16\\xe3\\x18\\xffD\\x0d&\\x8bq8H\\x13,\\xc71\\x9a\\xa75\\xb1\\x1c\\x87\\xe5v\\x96\\xe3\\x88\\xe0J\\xb0\\x1c\\x07\\xcbq\\x8c\\x96\\x95\\x03\\x11\\xc3\\x7f\\x88\\xe2>\\xb0\\x1c\\xc7\\xb1<\\x87\\x04\\x8eC\\x16~C<\\xb7\\x81\\xe58\\x8e\\xe12\\xc4\\xf0\\x18\\x128\\x0c,\\xc7\\xc1r\\x1c,\\xc7A\\xe5 d\\xe5\\x1f\\xa4p\\x0fX\\x8e\\xc3uY\\x90c\\x10\\xc1/\\xa0\\x88M\\xc4\\xf0\\nX\\x8e\\x83\\xe58(\\x1c\\x01\\x96\\xe3\\x90\\x96\\xc2\\x03\\x88\\xe0\\x00\\xb0\\x1cG\\x06\\x8c?\\x88\\xef\\xa7b\\xfb\\xce\\xd9\\x86\\xe58\\x0e\\x8d\\xe58\\x120\\xf90\\x1e\\x1f\\x8b\\xc5G\\xe0\\xf0\\xd1\\x18|\\x1c\\xfe\\xcer\\x1cq\\x18;\\xcbq\\x0c\\xc6r\\x1c\\xcat\\x8e\\xf7\\xad\\x99\\xfb\\x0b*ez\\xb69>fLw\\xcd>B\\x17 (\\x0b\\xc0\\x02 \\x10\\x8e\\\"\\x0b\\x80\\x9c0\\xb8a\\xe9\\n\\x16\\x00\\xc9\\x11E\\x16\\x00a\\x01\\x90\\xdf\\x94\\x00\\xc8\\xaa\\xec{\\xcb\\xf5\\xbe\\x0f\\xcf\\xa0\\xfe\\xb1\\xac\\xb7\\xdb}Uv\\x0f\\x8b]]+\\xec\\xdf\\xa6\\xfa\\xf1Z_wY\\xd7\\x9bA\\xeb\\x03\\x01N\\xf5\\x17\\xe8=\\xc0\\xb2.\\xabao}\\\"\\xf21q\\xf1\\x8d\\xae\\xf8\\x13\\x95\\xf6\\x18\\xa3aZ\\xf7\\x15x\\x19+Q\\xd5\\xdbdD\\xa2\\xd8\\xf6=>\\xf1v\\n\\x1e\\xf0F,_\\xd7\\xa5A\\xcb\\x83\\xae\\xbe\\x13\\x95\\xda\\xce\\xc7\\xd2\\xeb\\xe1\\xa9_\\xfe\\xf7?-\\xcbma\\xe7\\xd9cq]\\x1b\\xdb\\xef\\xde\\x7f|\\xfbR~H\\xe3u\\xea\\x8b\\xb4\\x940\\xc4\\x1b\\xb1Tk\\xf5\\x01\\xfa1\\x17\\xecV\\x87\\xb8\\x7fa\\x7fX[\\xae\\xab\\xa2\\xdb7\\xa2\\x1d\\xbag?s\\xad\\xebu-W\\xc7\\x87\\x1f\\xb9S\\xc6b\\xdf\\x19tP\\xa6}\\xe4Y;\\xed%\\x96\\xbb\\x0f\\x82-\\x19Z\\x93\\x1e\\x94\\xce\\xf3\\x9av\\xc4\\xd9%L\\xf6R\\xc6d/\\xdf\\xb8r\\x02\\x9ct>\\xad\\xfd\\xbf\\x93I\\xf2\\x05\\xbc1\\xe6\\xaf\\xd0\\xb4\\xb6\\x12\\x1b\\xb1\\x96\\x12J\\xe7\\xbf\\x0e\\xff^(!\\xa3\\xff:o\\xc4\\xe7\\xa2Y\\xb5\\xee\\xe9\\xce\\xf8\\xd6{\\x83\\xb7\\x97u\\xf5\\xb1_6}\\xc0['S \\xae\\xa7\\x94S(\\x96\\xcbf\\x8f\\x83E!\\x17\\xba\\x83\\xab\\x81\\x0bm\\x9d\\x1f\\xed\\x0fRW>\\xd9\\x89r\\x12J\\xd3\\xbeF\\xb3\\x1e\\x02\\xbc8V\\xb3\\n\\xab\\xe5\\xbf\\xdd^74g\\x0d\\xd1\\x02\\xf5D\\x0b\\xd5\\x16\\xcd\\xbb>@\\x0b\\xd6\\x16\\xcd\\xbfV@#\\xb9\\xa2\\xac\\x1b\\xd0\\xa2W\\x0f\\xde@\\xc8uE`\\x0d\\x81\\x96\\xb4\\x92\\xf0\\xf8S\\x9b\\x82\\xbe\\xf5\\x04Z\\xfc\\xaa\\\"D\\x03G\\x1b\\x07\\x8f7z\\xb8\\xc3\\x01d\\xdc\\x1f\\xc5\\xb1jlTV?\\xf5\\x8d\\x0c\\xbbr\\xf1\\xac\\xd5\\xff\\xee_\\x00\\xf6\\x89\\xc0\\xbaG\\x8f\\x82\\xc3\\x1b\\xddl\\xd4\\xf2\\xc42:\\x0e\\x0f\\x9a;ud\\x08|\\x8d1\\x85\\xd7\\xdf\\x83%\\xf5\\x9a\\xaf\\xb4\\xfe\\xc69YGE2\\x84\\xf6[\\xd9\\xbc\\xa7\\x0d\\xd2\\xb3\\x08?\\xe8jrEb\\x9f\\xa6\\xd3W\\xe3\\x8e\\xf5\\x05\\xaf\\xc3\\x95\\xf1:\\xfc\\x91\\xd7\\xe1>l\\xe6`-\\xedj\\x8a\\x07\\x17N\\xba\\xe2\\xf0W\\xad-\\n]\\xadR\\xd2n\\xa6\\x93\\xc1\\x91\\xd8\\xcf\\xe3\\x7fS\\x9c\\xffz\\xb0\\x08\\xf5\\x88\\xe9\\x8e\\x9d?\\xf2\\xbbb\\x9c\\x96\\x03\\xdf\\x12\\xfc\\x19q\\xf8\\xe7P\\xaf\\xe4)\\x7f\\xb0\\xbf\\xa7)\\x7f\\xbe\\xf4\\x0c-;\\x8d\\xcec\\xf1\\x16\\x9a\\xfd3N\\xfc<\\xe7\\xcf\\x8c\\xe7|\\x9e\\xf3\\x93\\xe7\\xfc\\xb1\\xe4\\x073\\xb1\\xab\\xe4\\x07\\x17NJ>\\xfc\\xf5\\xd4%\\x7f\\xc4\\xd5\\xca\\\\c\\xde\\xb38\\xa9\\x9b!+|\\xba<\\x19}\\xcc\\xb6\\x0d|K\\x12\\xd3\\xdb7:DOtQr\\\"!~G\\xe7\\x0cO\\xfdF\\xc0\\xad\\xed\\xb35_B?!\\xe9\\x89\\xce:\\x14\\xdc\\xcc\\xb7]\\xe8\\xd3\\x9f\\xf9\\x12\\x8f\\x9e\\x00'\\xed\\x8b\\xa7@e<\\x05\\xf2\\x14\\xf8\\xf70\\x91\\xf4\\x1f\\x1d\\xab\\xa6\\xf8<E\\\\\\xbc\\xd3\\xc9\\xcf\\xea\\x96W*\\x08zN\\xd1\\xae\\x86\\xe8\\xc4\\xcc*3\\xa7\\xdf\\xe8\\xa0=\\xd1\\xa9\\xc5\\x1e6\\xd3\\xe8s\\xc5\\xdcWb\\x9b\\x8b\\x9b\\x00f\\xf1\\xce0\\x0b\\xcc\\x9b\\x05O\\x05\\xcax*\\xe0\\xa9\\xe0IL\\x052.\\x9e\\x11\\xfeR\\xfe}\\x18\\xcf\\xf1\\xf2!3\\xc9\\xf0\\x08\\xdbz\\xb5\\xdf\\x08\\xfb\\x88n\\\\\\x87\\x0e\\xbf\\xd1\\xb5~\\xa2c\\xb9\\x19\\x16\\xd3\\xa6|0\\x0c\\x86\\xd9\\x06\\xc6f\\xa6c4\\x0d\\xcbh\\xde>\\xe6\\xefa#\\xc1\\xb3+\\xbe\\xb8\\xbb\\xa0\\xa7\\x93\\\\\\x17\\xadX\\x0c\\xea\\x82>bD\\xc8Q]\\xed\\xdb,\\x9e&3\\xdeBT\\xc5\\xf5Fx=\\xcd\\xe9\\xc4\\x10\\xfc\\xde\\x92\\xfd\\x04\\xdb\\x1finS\\xb3\\x99\\xea\\x02\\x1f._\\xcf\\xfc\\xf1L\\xc63\\xd9\\xe3\\xcfd9G\\xffq\\x9b\\xc1\\x86qI&y\\xd9\\xb6\\xa5\\xd6\\xf2\\xb4M\\x10\\xc3\\x87\\xfe\\xeb\\xe1\\xe2a\\xb6(\\x96\\xcb\\xfdv\\xbf\\x91\\\"\\x18\\xa3/\\xd9\\xbd\\x8a\\x00s\\xce\\xe2V]\\xf6d\\xe7\\x8cy\\xb4L\\x9b\\x14\\xc8\\x08\\x859w\\xe0\\xcf\\xa5R\\xaf\\x1aw(\\x1b\\xb1\\x14\\xe5\\xbd\\xb0\\xb0t\\x8e\\x9cC\\\\\\x85\\x85@o\\x83\\x10\\x19.\\xd0\\xeb X:\\xb4 \\x0d\\x8e\\xd0\\x81B\\xd8\\x1d\\xd0\\xdc\\x847\\xf2\\xd0\\xa2q<O\\xe5\\xa9\\xd4\\xb7$<\\xcf\\xe9\\x8dH{\\x8b\\xc3\\xf5\\x94|\\xab\\xfd\\xfb\\xd3\\xd2\\xd5I\\xd3\\xb3\\xcd\\xd7\\xb9m8\\x1a\\xbf:\\x87[x\\xaa\\x9e\\xfd\\x95\\xa7\\xea\\x13L\\xd5\\xbe\\x8f\\xce\\xdf2\\x90\\x15Xv\\xd4\\xfb\\xae\\xed\\n\\x99\\x90\\xb7\\x08\\xd2\\xfa\\x87\\x0e\\xff~\\xbckN\\xbc\\xd1\\x8c\\x01\\xb9\\xf9x\\x101\\xff\\xfa\\xe3\\xd0\\xed7:xOt\\x1d\\x12\\xe0\\xdd$-\\x17\\x9c>\\x81\\xd7\\ns\\xe3\\xb5\\xc2\\xcc\\xe2\\xd6\\n@\\n\\xa1\\xaf\\xdb\\x1b\\xf4xc(\\xb18\\xf9n_\\xbd\\xd0\\xfb\\x0e\\xd5\\xf7\\xba\\x91\\xdb*2\\xfbd\\x81R.\\x0e\\xaa\\xb6\\xbc\\x17\\x98w\\\\,\\xef\\x9e\\xa3zk\\x0b\\xad\\x0c\\x1f\\xb4EUZO\\xec\\\\\\xde\\x8a\\xe5]|\\xaa\\xa0\\xa7\\xca\\xc1\\xf5\\xd2\\xcc\\x9fE}x\\xb6|\\xb2\\x84\\x957\\xef\\x95\\xf1:\\x8a\\xd7Q\\x7f\\x0f\\xeb\\xa8vS\\xb4\\xb7\\x82\\xb2v\\xba\\xc2+\\x87\\x05\\x93\\xbc\\x13\\xc4=\\x8e\\xa17\\xf4\\xdd\\x1a\\xe5\\xe8\\x1b\\x1d\\x97'\\xbaD\\x9aD\\xc6\\xb4\\xaf\\xd1\\xe3\\xc67\\xb7\\x13MY\\x072\\x14I}\\xc7s\\x92\\xca\\x8d\\x14\\xd3wm\\xfb\\x04\\x9f\\x12\\x9e\\x99a\\xd6\\x1a\\xde\\xf6\\xad\\xc8\\x9c\\x93\\xcdy\\xd4hh\\x0e\\xd1Lu`I\\xd9\\xcaEI\\xb9\\x94r4\\xdd\\xad\\x12\\xb4i\\xbb\\xba\\x91\\xc7\\xe68\\xee\\x96\\x87@\\x94\\xadT\\x1f\\xd7\\xb2\\xea\\x9b\\xa5\\xdc\\x92\\x84b\\xd7\\xbf\\x99\\xa6\\x94\\xff\\xdej\\x89\\x96\\xb6\\x93\\x1a\\xe1Vor}f]\\x1f\\xe0\\na$!k\\xa9\\xff\\xa2\\x11\\x03\\xb2Q)\\xb1\\xc4B\\xd5\\xfa\\xd6!\\x9e_/\\xa5\\xb8x(+O\\xb5\\xe1i>\\x94\\xfa\\x8d\\xb6\\x81x\\xccQM\\x08v\\x19*5\\x93uG\\xd6\\xadJ>\\xaa\\x89\\x8fj\\x9a\\xd9\\x138\\xaai\\xba$W\\xf3^p\\x1d\\x1e\\xde\\xb7\\xd4S1\\xaf\\xb6\\x95\\xf1j\\x9bW\\xdb\\xc9\\xab\\xed\\xb1\\xe4mW4\\xf2\\xd8\\xc6\\x03-J\\xdf\\x92fv\\xd7\\xa4\\x12\\xfa\\xdc\\x9d\\xe1\\\"%s9\\xd6e\\xde\\xd9\\xd5\\xf4<\\xaf_\\xact\\xd8\\xc1\\x0b\\x0d(\\xe4\\xa1\\xb6\\xd9\t*\\xaeD\\xd3\\x9eh\\xb5Y\\x024.\\x8c,\\x01z\\xc2\\xe0\\x86\\xdb(K\\x80\\xe6\\x88\\\"K\\x80\\xb2\\x04\\xe8?\\x86\\x04(qcP\\xdc\\x97+Q-\\xc5\\xb0)\\xa8\\x7fpo\\xfb\\xbd\\xdal\\xde\\xaa\\x8bF\\xaa\\xd6f\\x03\\xfaN\\xeb\\x16\\x9fq\\xd37\\xbazOtwo\\x1a\\x01\\xd3\\xfe.\\x97\\xf8\\xb4M7\\xe0CX\\xf9\\x10V\\xe7\\x95|\\x08\\xab4>\\x84\\xf5\\xd0\\xf8\\x10V>\\x84\\xd5e|\\x08+\\x1f\\xc2*\\x8d\\x0fau\\xb7i>\\x84\\x15\\x8d\\x0fa\\xe5CX\\xf9\\x10Vi|\\x08\\xab4>\\x84U\\x1a\\x1f\\xc2\\x9a\\xa1\\x1a\\xd6\\xbf\\xf1!\\xac|\\x08+\\x1f\\xc2\\xca\\x87\\xb0\\xce\\x8dz &\\x1f\\xc2*\\x8d\\x0fa\\xfdG9\\x84u\\xb4\\xc97\\xa7FD\\x14\\x066\\x85{\\x0e\\xbe\\xd8\\x99\\x17*\\x8dy\\xa1\\xe3\\x9f\\xa8\\xc1\\xfc\\xcd\\xf1B\\xed\\xa9Z\\x06X\\x9aN\t5a\\xda\\x0f\\x97\\xaf\\xe7\\x95`r(\\x93C\\x83\\xdb\\xa6\\x94\\x9dG`\\xe4\\x98\\x91c\\xe7\\x95\\x8c\\x1cKc\\xe4\\xf8\\xd0\\x189f\\xe4\\xd8e\\x8c\\x1c3r,\\x8d\\x91cF\\x8e\\x199f\\xe4\\x18\\x8d\\x91cF\\x8e\\x199f\\xe4X\\x1a#\\xc7\\x8c\\x1c\\x1b\\xe6\\xfe\\xb8e\\xe4x\\xf2;#\\xc7\\x8c\\x1c\\xa31r\\xcc\\xc8\\xb1\\xdde4r\\xecS}\\xe0L\\xfa\\xb84e\\xce\\xa4?ap\\xc39\\xe0\\x9cI\\x9f#\\x8a\\x9cI\\xcf\\x99\\xf4\\xff\\x98\\x99\\xf4F\\x1e{0\\x8b\\xfe\\xfcW\\xfd\\xaf\\xc5m\\xd1\\xdez\\xce\\xfd?H\\xa9\\x1fHW\\x12\\xf5\\x81\\xba\\x1a\\x7f\\xe9]\\xe9\\x160\\xc9\\xb2\\xffGI\\xb1O\\\"tu^\\xbeCp\\xab\\x9f\\xb2W\\x9e\\x9d\\xe9@\\xe39\\xa4\\xb0\\x1c\\xfcl\\x86$.\\x83|\\x84\\xc3a\\x90\\xc9\\x90\\x81\\xc7\\x90\\xc8bpb\\xbf4\\x0e\\xc3Q\\x0c\\x86$\\xfe\\x02\\x14\\x9b\\x8d+\\x8a4\\xf6B\\nw\\xc1\\x87(\\x92\\x98\\x0b\\x99y\\x0b$\\xd6BF\\xceB\\x90\\xb1\\x90\\x89\\xafp\\x0c[!\\x9a\\xab\\x90\\x81\\xa9\\x90\\x99\\xa7\\x10`)d\\xe7(\\x9c\\x86\\xa1\\x90\\x9d\\x9f@g'\\xa4q\\x13<A\\x0f1\\x13\\xb2\\xf1\\x12h\\xac\\x04\\xcb&\\x86{|\\xcd\\xccH\\x08\\xf1\\x11\\x8ed#x\\xb8\\x08\\xc1\\xe5I\\x90\\x87@[\\xbf\\xe4\\xe5 \\x84\\x18\\x08\\xe12\\xa5\\xb1\\x0f\\xf4\\xc8nq\\x18\\xe2\\x1edd\\x1e\\x1c\\xc1;\\xb0\\xb3\\x85|\\xac\\x83\\xbc\\x9c\\x03?\\xe3 \\x07\\xdf\\x80\\x04\\x98\\x07\\xb8\\x06d\\xa6\\x81\\x1b\\xc2\\x8bg\\x19\\xb8}Y\\xb7\\xcb\\xb3\\xf0\\x0bb\\x82E\\xe5\\x16\\x84cB\\xe6\\x15$\\xb0\\n\\xec\\xd0B&F\\x01\\x89O\\x10f\\x13P\\xb8\\x04\\xde(\\xc6\\xf2\\x08\\xa8,\\x02\\x17\\x87 \\x03\\x83 \\x82?\\x10\\xcf\\x1e s\\x07<\\x90\\xbb\\xb38\\x9e{\\xa8\\x9c\\x81<\\x8c\\x01o\\xe1-\\x7fI\\xe2\\n\\xe8-^\\x8b?\\x07S 3O\\xc0\\xcd\\x12H\\xe5\\x08\\xc8\\xdd\\x05[\\xc1\\xed\\x0c\\x81\\xbc\\xfc\\x00\\xd7Gd\\x90\\x1b\\xe0\\x02/]\\xbc\\x80\\xbc\\xac\\x80tN\\x80\\x03\\xffOB\\xff\\x83H\\x7f\\x1c\\xceOF\\xf9#1\\xfe\\x18\\x84\\xdf\\x89\\xef\\xbbKC\\xc5Yi\\xd8~$\\xb2\\x1f\\x81\\xeb[\\xab\\x96\\x17\\xd3wu\\x8a#\\xf0|\\xeb\\x9e\\x87\\x13\\xcdO\\xc3\\xf2}\\xb8}~\\xd4\\xfe\\xf8\\x96DF\\xec\\xa9x\\xfdtf$d\\xa2F\\xa5\\xa1\\xaa\\xc4\\xd3\\x19\\x08\\xa1\\x8dO$Q\\xc6I\\xa7\\x9ct:\\x1a'\\x9dr\\xd2\\xe9h)\\xc0\\x8d\\xd3\\x19'\\x9d\\x1eZ&\\x10\\xe78\\x18'\\x01\\xc8\\xc9\\x02\\xe5d\\x07s\\x82p\\xce\t\\x00\\x9dSA:'\\x00ub`\\x9dT`\\xc7;\\x86\\x87\\xa0\\x9d\\x8c\\xe0\\x0e\\x15\\xde\\x89\\x04x\\xb2C<a\\x90\\xe7h\\x98\\x87\\x93N\\x83%K\\x83}\\xac\\xae8\\xe94\\x05\\x00\\nA@y@ \\\"\\xb2\\x11\\x04\\x82\\\"\\xa0\\xa0`\\xf2_$\\x1c\\xc4I\\xa7\\x9ctJ\\x01\\x8a\\x82Q\\x8d\\x05\\x8b\\xe8p\\x11'\\x9dj\\xe3\\xa4SN:\\xe5\\xa4S:\\xbct\\x0c\\xc0du\\xc7I\\xa7\\xd6\\x1bH\\x90\\x14'\\x9d\\xe6\\x03\\xa88\\xe9\\xf4h\\xf8*O\\x9b#CXt\\x10\\x8b\\x96t:\\xc9\\xbb1<Y\\x85\\x8d\\xe5E\\x13\\x11b\\xf9\\x83\\x1a\\x0d\\x1b\\x94\\x84\\x15\\xab\\x83#.\\x012\\x1c1n\\xfd\\xdcOHBZ\\xd7\\xf7C\\xfe\\x91\\x8cL{\\xfe+\\xfew\\xd1?\\xd7\\x93{t)\\xaf\\x9a\\x1c\\xe69\\x86VGa]\\xdf\\xc3\\xb6^\\xed7\\xf6\\x03>\\xff\\\\\\xdf\\xa3\\x1b\\xf5\\xc7'\\x9b{t_\\xcb\\x83\\xc912\\x87\\xcb\\xefI\\x99&\\xd7\\xceD\\xaa\\x87\\xf84b#\\xbf\\xb9\\xbbZ]\\x7f8q9\\x8b\tAHM\\x17A4e\\xbdJ\\xe4\\x0eO\\xea\\xf4\\x17Q\\xad\\xbb\\xa1m\\xa3{@\\xf7\\xf3\\x82\\xaf\\xc4\\xaen\\xcb\\x8e\\x16\\xab\\xe9\\xc5\\x84`\\xa9\\x1b\\xb2Fk[V\\x0b\\xe5\\xd7\\x17+;&\\n>\\\\\\x14B\\x05C\\x0b\\xe1\\xa3 \\xc3V\\xd5[\\xdf\\x87_\\xf0\\x85\\xf6Vl\\xeb}\\xe5\\xa8%\\x1a\\xc1\\x0de\\xaf\\xae\\xb7\\xd7u9\\x8a\\xb4\\x17\\xd0\\xd5w\\xa2R{mX\\x1d\\x9d\\\"\\xdb\\xcf\\xcdE\\xa5\\n\\xe7\\xdb\\xd6}\\xf7\\xfe\\xe3\\xdb\\x97r9\\x8b\\xd7\\xaaua)7\\x03/\\xaaN\\xcd\\x98\\xc3\\x06l\\xeb\\xc5\\x19\\xd4t\\x8a_\\x12\\xee\\x87\\xb6\\xe5\\xba*\\xba}#\\xdaa\\x8c\\xee\\xbf\\x9d\\xd6\\xf5\\xba\\x96s\\x95}\\xc99\t\\xd2_\\xcb\\xaa\\xdc\\xee\\xb7\\xba\\xf5\\xca\\x0f\\x88B\\xbe\\xf6\\xba-6}\\xbb\\x16U\\xff}\\xe2\\xedX\\xbdm\\x8b/\\x8b\\xa1\\xcfd\\xeb\\xddn\\xe2\\x7f\\xf1E\\x96\\x1b\\x1f%\\x8b\\xfd\\xaa\\x0fY\\xbf$\\xe9;\\xe6\\xd8!\\xa1\\x7f\\x8dC\\x8d\\\\\\x9f\\xa9\\x17U\\xd9\\x95\\xc5Fmu\\xc3\\x9c\\xc80\\xd8\\xb6\\xae\\xba\\xdb\\x83m\\xf2\\xae\\xd8l\\x1eh\\xe3\\x8ay)aT\\x91\\x97g\\x1dS\\xfe\\xb6\\xaf\\x9b\\xbd\\xa3\\xbf\\x06_Np'\\x9f\\xf8\\xf6T\\xab\\xdb\\x89f\\xd9/R\\xd7\\xb8c-\\x13\\xcd\\xdb\\xae\\xb8\\x13\\x12\\xec\\x1a&!\\xa4\\xe4\\xb8\\xe0G\\x957/\\x811\\xd7k[\\xd6U[\\xaeD\\xdfA$n`k\\x06\\xddm#\\xda\\xbe\\xfd<\\x91\\xd8\\xf4-\\xb6\\xd1\\x9f\\xb1\\xff*Z\\x19\\x89\\x16\\x93\\xf8\\x8d\\xfe\\xb9+Z\\x07l\\x03\\xf0Fm\\x8c\\xa8V\\xfd\\xbb\\xb3\\xffa\\xbb\\xf2^t\\xf5\\xe2\\x89\\xd5\\x1e?\\xfa\\xeb\\x1b\\xf8I\\xa86 \\xfb\\xf4G\\xd9D\\xf0\\x7f\\xe5b\\xcd\\xc3\\x180\\x83\\xe4n\\x19}\\xe5\\xc5\\xeal\\x1e\\xaa\\x1f\\xce\\xff0\\x0d\\x15\\x81]\\x86\\x0b\\xc6\\x18n\\x99Z\\xa9~\\xb8|=\\xf3\\xc7\\xcc2f\\x96e[\\xed0\\xb3\\x8c\\x99evcf\\x994f\\x96\\x1d\\x1a3\\xcb\\x98Y\\xe62f\\x961\\xb3L\\x1a3\\xcb\\x98Y\\xc6\\xcc2f\\x96\\xa11\\xb3\\x8c\\x99e\\xcc,cf\\x994f\\x961\\xb3\\xcc0\\xf7\\xc7-3\\xcb&\\xbf3\\xb3\\x8c\\x99eh\\xcc,cf\\x99\\xddeVf\\x99\\xc1\\xa92\\xfc\\xf8\\xbeM\\x8d;\\x06\\x04\\x1b_\\x9b\\x81aw\\xb5:\\xbf\\xfd\\xa6n\\x9ekY~T\\xd0\\x9f8\\xfb\\x16\\x99\\x05\\xdf>\\x9f\\x86\\xf7[\t|\\xf7\\x7f\\xe8?\\xdd\\xbeUX\\xfe\\xb7\\x19\\x99j!J\\xda\\x9f\\xeb\\xfb\\x9f\\x90~\\xe6\\\"\\xa5)|Qy\\xb12\\xd1\\xf4%S2\\xda\\xf0\\xeb\\xa0\\x85\\xbd.\\xefE\\x05mWt\\xfb\\xd6\\xcaG\\x1b<}\\xa3k\\xfaD\\xf9h\\xb3\\xa8\\x98\\xd6}\\x05\\x98M\\x17gQ:\\x80\\xed\\xa8m&\\xcf\\x81\\xfe\\x12xp\\x13\\x98\\x02\\xd5\\x00BU\\x80\\x80\\x1a\\x02\\xad>@\\xdc}\\xd2\\x16\\x8b z\\x9d\\xd9\\xb7\\x91<_U\\xb9\\x91D\\x08\\xa3\\x89\\x90\\x80(\\xfa+\\xa0\\x05\\xc7)\\xa8\\\"\\xe4B\\x16!\\x11]\\xf4:\\xec\\x83KF\\x18\\xe1x\\x94\\x11\\xa2\\x91F\\xaf\\xabQ\\x94\\x9c\\x8e6Bn\\xc4\\x11\\\"QG\\x88E\\x1e\\xfd-{@%\\xa9\\xe8#\\xe4F \\x81\\x86BBN$\\x12\\x8eF#!\\x0d\\x91\\x84\\\\\\xa8$$!\\x93\\xfe\\xee\\xa0\\x97 \\xa1~s\\x12\\x84\\x12N\\x88R\\xc2i\\x90J\\x88D+!\\x0d\\xb1\\x0c\\x0d\\xc14\\xd4\\x12\\xf2\\\"\\x97\\x10\\x81^B<\\x82\t\t(&a\\xc8\\xfc\\x9e\\x80dB\\x0e4\\x13B\\x88&\\xd0\\x97g\\x04d\\x13\\\"Wq\\xd1\\x08\\xa7\\xd7\\x9bD?\t('D\\x942#\\xda\tQ\\x88'\\xe4F=!\\x11\\xf9\\xf4\\xb7\\xab6\\x8c~B:\\x02\\xea\\xf4\\xd7?1\\x84\\x82B6$\\x14\\xe8\\x80\\x1eP\\x10Q\\x88CE!\\x04:$\\xa2\\xa3@\\xf0\\xeb\\xd9\\xd7\\xcc\\x84\\x94BRp\\xe9\\x88)\\x10j\\x99\\x80\\x9cB*z\\n\\xfe\\xa8\\xe6CQ\\x81\\x8e\\xa4\\x02\\x11M\\x052\\xa2\\n\\xb4\\xa8\\xc7#\\xab\\x10\\x85\\xae\\x82\\x17a\\x85\\\\(+\\xc4\\\"\\xad\\x90\\x88\\xb6B\\x1c\\xe2\\n\\x84\\xb7\\xe0C^\\x81r?\\x1d\\x81\\x85\\x8c(,P\\x8a\\xe6\\xe9g\\xf9\\x10Y\\xa0\\xa0\\xb2p\\x042\\xebt\\xd8_\\xe8Cg!7B\\x0bA\\x94\\x16R\\x91Z\\xa77\\xfc\\x02\\xf6o\\x06\\x10\\x10[\\xf0\\x02K\\xe0En!\t\\xbdu\\xba\\xf2\\xa2\\xba\\x90\\x8a\\xec:\\xbdy\\xc4\\xea\\xd1\\xf2!\\xbc@By!\\x01\\xe9\\x858\\xb4\\x17R\\x10_\\x88F}!0\\x97\\x07\\x908\\x88@\\xe3\\xa8\\x080\\xa4\\xa0\\xc0\\x10\\x8b\\x04\\x83\\xbf\\xe2)\\x88\\xb0\\xd3\\x99\\x81\\xb7R\\xbb\\x0c\\x0d\\x19\\xf6v\\x88j\\xedG\\x87!/B\\x0c!\\x94\\x18\\xfcH\\xb1\\xf3\\x9eT\\x04\\x192\\xb6\\xdd\\x08$\\x19\\xa2\\xd0dp._\\x10\\xb8<\\x02`\\x13\\x95+%\\x19$\\x18{\\xf9\\xe1\\xfd\\xe5\\xfb\\xabW\\x7fY\\\\}|\\xf5\\xf1\\xd3\\xd5\\xe2\\xd3\\xbb\\xab\\xcb\\xb7\\xaf/~\\xbcx\\xfb&\\xe2\\xae7o/\\xdf_]|\\\\\\\\\\xbe\\xfdp\\xf1>\\xe6\\xc6\\x9f\\xde\\x7f\\xbcx\\xf7\\xe7\\xf8\\xfb._]]E\\x95\\xf0\\xc3\\xdb\\x7fy\\xfb\\xfac\\xd4-?\\xbe\\xba\\xf8\\x8b\\xf3\\x06\\x9d7\\x9a\\x10@\\xea\\x9e\\x8dF\\xa6\\xafd\\x1b\\x90oR\\xee,`\\xe7T;M\\xf2oB\\xd2\\xac\\xddC\\xcf\\x98\\xa3\\xefn\\x82\\xde\\xa6\\xe0\\xad\\xe6$\\xd9^\\xaf \\x87\\x1c\\xe1)\\xf4Nz\\xf0\\xb45\\x1d>{\\xfawCnb\\xf6PX\\xed\\xe5,\\x88\\xe5\\x92<\\x07w\\x88\\x9c\\xfa\\x0b\\xca\\x02m\\xf7\\xb0\\x94\\x93?\\xd3\\n\\x89\\x8c\\x8d\\x9ce\\xc4~rX8\\xfc\\xddS\\xaa\\xbe=\\x19\\x89\\xde\\xfd4t\\xebA\\x9dvE\\xdb\\x8a\\xb8\\xa2\\xe9\\x1eyX8\\xfd\\x97|\\xc5\\xbb\\x16\\xa2\\x82F\\xfc\\x87\\xcc\\xe2\\x8e*%\\x0e\\x02\\x87e\\xc4\\xdf\\xf3\\x95\\xf0\\xa6(7\\xae\\xa2\\xdd\\x94U\\xb1Y\\xa0\\xbe\\x05\\\"O\\xae\\x11\\x9d:\\xb4\\x1cz\\xd4I\\xf5\\xf2/(\\x8e\\xa1\\xf5\\x1f\\x02[\\xd6\\xc3\\xe0\\x02?\\xdf\\n\\xcf\\xf2\\\\\\x92\\x96p=2\\x84\\xe5\\xbe,`\\xfd\\xe1\\xf2\\xf5s\\x05\\xe1hi\\x97\\xaa\\xf6\\xf4\\xd4z\\xb7G\\x15\\x8f}\\xd5\\x95\\x1b?\\xbc\\xab\\x9f\\xf4\\xac\\x9d\\n\\xad\\xc8\\xb5\\x9a\\xa8V\\xee\\xd6\\x90\\x89W\\xf2\\xecA\\xb4\\xcf\\x8eF-\\x8a\\xeb\\xb6\\xffv9\\xda\\xcf\\xb3\\xaa>\\xbe0U\\xbd\\xe8\\xbf\\xc5\\x16\\xf7\\xa2\\xab\\x8fr\\xd6\\xee\\xaf\\xb7e\\xb7\\xe8\\xcam\\x8eL\\xb5U\\xd1\\x89\\x17\\xbd/\\xebuZAGT\\xab\\xc7y\\xa0\\xd4\\\\\\xf1kL\\xf9\\x89[h^\\x9d)R+\\xa5\\xb5S\\x82\\xda\\x14)8@R\\x9c\\\"\\xba\\xa2\\x0eg\\xd1\\xbaS\\xc1\\xc2\\xfb\\xc1\\xd4\\xbc\\x9aTdU\\xaaT]*%\\x0d\\xd7vE\\xf3H\\xbdM=\\xf1\\x91:\\x1b\\xa5\\x99\\xe8\\xc5\\xf4d\\xb1\\xba\\xac\\x1b\\xa1\\xde\\xdd\\xb6\\xff\\x9an\\xd4\\xb4\\xbd\\xae\\xefES\\x15\\x87g\\x93\\xa1\\xb9$\\xafv\\xc5Z5\\xb3\\xc3\\nO\\xca8^8\\x13\\xaa\\x1a~V{\\x8f6:)\\x9a\\xb7\\xe3\\xfb;|%\\xbet\\x8b;\\xf1`\\x7f+\\xc1w\\x12\\xc4\\xcf'U\\xfdOW\\xaf\\xd5\\xa5\\xd0\\x0b\\x8f\\xfe\\x9f\\x8a\\x82\\\"\\xd7\\x92\\xfd\\xff\\\\\\x16k\\xf1\\x01E5\\xcf\\xf0\\xef\\x0egH\\x88\\xee\\xdd\\xf4n\\xfb@\\n\\xd8\\xd6m\\x07B\\x129$\\x03\\xe4\\x0c.:c\\xefd\\xd7=@\\xe9Bf\\xbb[\\xd1\\x08\\xc9\\x00\\xaaj\\xd8\\xf6\\xadD1~l\\x1dL\\x8e\\xf4G\\x06\\xd3\\xc3\\x7f\\xed\\xcan#<\\xc3\\x1f\\x8a{\\xf5Q\\x94\\xff\\xa8\\xf6}C\\xee\\xdb\\xb1\\x96O0r\\xf5]\\xf55\\x03\\xbd\\xecG\\xb4\\x85t\\xe6\\x1a\\x8a>\\x17-\\xb4\\xa2{\\x0ee\\xd7j\\xfeU\\x0b\\xfb\\n\\x1b\\xf3\\n)&\\x9f\\xcbv\\xda>(BO\\x9a\\xe3L\\xd2z\\xb2y8\\x1f\\x99\\xe1\\x1f._\\xcf+\\xc0\\xeaO\\xac\\xfe\\x14\\x9cr(\\xd3\t$p\\xb7\\xb1\\xed\\xb2\\xfa\\x13\\x81\\xa7\\x9d\\x85\\xa3\\x9d\\xc2\\xcff\\xf5\\xa7\\x8c\\\\\\xec\\x18\\x1ev\\x14\\x07\\x9b\\xd5\\x9f\\x8e\\xe5['p\\xad\\xb3\\xf0\\xac\\xe39\\xd6\\xac\\xfet\\x0c\\xa7:\\x86O\\x9d\\xc0\\xa5f\\xf5'V\\x7fb\\xf5'*\\x17:+\\x0f:\\x85\\x03\\xcd\\xeaO\\xae\\xcb\\x82\\\\\\xe7\\x08\\x9e3E\\xdb(\\x86\\xdf\\xcc\\xeaO\\xac\\xfeD\\xe1*\\xb3\\xfa\\x93\\xb4\\x14>r\\x04\\x17\\x99\\xd5\\x9f2p\\x8d\\x83<\\xe3T\\x8e\\xb1s\\xb6a\\xf5\\xa7Cc\\xf5\\xa7\\x04np\\x98\\x17\\x1c\\xcb\t\\x8e\\xe0\\x03Gs\\x81\\xe3x\\xc0\\xac\\xfe\\x14\\xc7\\xf5e\\xf5\\xa7\\xc1X\\xfdI\\xd9\\xa0\\xfe\\xa4\\xf5q\\x90\\x0ff\\xf8\\xf2\\xe1\\xa3\\xb3\\xbb&\\xf0\\xf0H,\\x93`\\xb1\\xc6\\xb9\\xe6+\\xafG%r~=\\xf2\\xa6\\x95\\x0c\\xf9\\x95H\\x9a\\xc4\\xb2\\x9c\\x92\\x8ci%`>>\\xe9\\xd2G\\xb4|\\\\r\\xe5!\\xa1\\xb2\\xac^\\\"Q\\xc0\\xf8m\\xd45\\xbb)6m@\\xd8\\x0c\\xac|z:\\x87>\\xd4Y\\x02\\x17\\xbb\\xb9\\xf2$~<\\x91\\x13O\\xe0\\xc1Gq\\xdf\\xf5xx_w\\x93\\x0d\\xb4\\xc9((\\xff8\\x19~\\xf0\\x97b\\xb5jD\\xdbj\\xc0\\xdf\\x1c\\xf4FO\\x19\\xde\\xab.\\xa4\\x1ahjgA\\x87\\x0bfc%\\x1e\\x88\\xa7\\x8a+Z\\xb8i\\xea\\xed\\xa3\\x94x\\xe4\\x0c\\x9d\\xdd\\x89\\x07W\\xb1g\\xb3\\x8c\\xa2\\xdd\\x14j\\xa5\\xde\\x88n\\xdfT\\x12\\x0dQL\\x10\\xc5p\\x188:\\x12\\xc3X\\xcf6\\xfb\\x07Bo\\x17\\xe0\\xdd\\xbc\\xef\\xbf\\xabP\\xa1\\x10\\xea\\x9b\\x9bVtP70-.\\x18\\x18l+\\xba\\xcc\\xd1r\\xech[\\x82\\x88\\xe5s\\xc5q\\xb6\\x9b\\xac*#C)\\xb33\\xca\\xa5\\xfeM\\x8eIJ\\x9c\\x11\\xb7\\xf3oE\\xa5\\x03\\xbf\\xaf\\x06\\x04e6{_Ho\\x9b\\xbe\\xcd\\x0f!D\\xcca\\xdf\\xf6\\xa1\\xbe\\x13\\x91\\xf1\\x9c\\xba?qpg,&Kx7\\xe5\\xb6\\xa4FW^\\xab\t@.r\\x13\\xa2kf\\x0b\\xc6O\\xce\\xfe\\xaf\\x13o;\\xdcK7\\x7f\\xba\\xb8\\x81\\x8d\\xb8\\xe94\\x19L\\xb1\\xc3\\xf4\\xc2G\\x02\\x83\\xd8A\\xf0!}\\x9c\\xaf\\x1f@\\x14\\xcb[(v\\xbb\\xaf\\x18E\\x93\\xa25\\xde\\xef\\x8b\\xa5qG\\x1fQ\\xd9Bk\\xa9\\xe5\t\\xfd?\\xcajU.\\x8bN\\x0c\\x14\\x01\\xcd\\xfd\\xef/T\\x0d\\xc9tWV\\xcb\\xcd~5\\xdby(\\xf0)\\x03Gc\\xf6\\xc6$\\xe3\\xc7\\x80\\x0e\\xe5q\\x8b&\\xe3q\\xe2\\xec\\xd3\\xc5|a;\\xab\\x82\\xdc\\xaciD\\xab\\xb8Y\\xb2{\\x8d\\xfd\\xb1\\xefrg\\xaa7\\x95\\xeb\\xaanf\\xc0\\xab\\xee\\x8d\\xd3G`d\\x8e}\\xb1\\xd7u\\xbd\\x11\\x06\\xc7\\xd8\\xf2\\x02\\x1bq/\\x9a\\xc9\\xad\\xbe\\x97\\xa7\\xae\\x9e\\xbf\\xb8\\xd2\\xa0\\xf85\\xc2\\xde\\x13&~\\xfag\\x88JRR\\xeaf%\\x9a9\\xf2rUVK\\xf1\\x12P\\x91\\xf5E\\xbb\\xba\\x83\\xdf\\x9d\\xfd\\xd3\\x1f\\xb2F#\\x9f6\\xec\\xf9\\xaf\\xc3\\xb7R\\xb9\\xf2\\x9dY\\xaeW\\x89Z(v72\\x81%om\\x14j\\xd3\\x97^\\xbc\\xd1M\\xc0\\xaa\\x14\\xfb\\x8d\\xae\\xf8\\x13\\x17\\x8au\\x11\\xf2\\x92H\\xc3F\\xb0OEu\\xf5\\n\\xbdz\\x8b\\x0e\\xc1\\xe2\\x03\\x81\\x1aH\\xa8\\x03\\x10\\xe1e\\xb4$\\x82\\xa0\\xc7_\\x94\\xb4kV\\x92`\\x90&\\x98\\x9b(H\\xa7\\nf\\\"\\x0b\\xa6\\xd1\\x05=\\xee\\\"\\xc5\\\\\\x8f\\xa4\\x0c\\xe6&\\x0dF\\xd2\\x063\\x13\\x07\\xe3\\xa8\\x83\\x91\\xe4A_\\x1bN\\x90o\\xcdJ $Q\\x083\\x92\\x08\\x8f\\xa5\\x11&\\x11\t3Q\tS\\xc8\\x84\\x1egd\\xb9\\xd6\\x13\\x10\\nOG)<\t\\xa90\\x8eV\\x98\\x9dXH\\xa5\\x16f%\\x17\\xd2\\xe9\\x85\\xd1\\x04\\xc3x\\x8aap(\\xa4\t\\xb3\\x1eM3\\x0c\\x8a\\xb2\\x92\\x16T\\x04\\xb2a\\xcc\\xaa+\\x9ap\\xe8\\x9b\\x04\\xc9R\\xac\\xb4\\xf2e\\xa4\\x1d\\xc6\\x10\\x0f3S\\x0f\\xd3\\xc8\\x87\\xbe\\x16D\\x92_M$ :\\xbcu$\\xe9\\xd5<$D2\\x93\\x8e@D\\x8c\\xa2\\\"\\x86\\xb4\\x05S\\xe8\\x88!\\x9fN\\x12A&Rb|0\\xe9\\xc4\\xc4P\\xdd\\x12\\xc8\\x89\\x89\\xf4D\\x1f\\x19#\\x1bE\\x91LR\\xa4\\xd1\\x14\\xa9DEB\\x94\\xe3\\xc9\\x8a1tE\\xbf\\x98j\\x16\\xcab$i1\\x8d\\xb6\\x18E\\\\\\x0cE\\xdd/\\xa0\\x1a\\xb8\\x97N`\\xccGa\\x0c\\x16\\xca\\xd9\\x83\\xf2\\x11\\x19\tT\\xc6t2\\xa3\\xc3]\\x17\\x94K\\xcdJh\\x0cQ\\x1a\\x13I\\x8d\\x0e_a\\x99T\\x02\\xb1\\xd1/\\x91\\xea\\x13H\\xcdMo\\xccNptS\\x1cs\\x92\\x1c)4\\xc7x\\xa2c\\x14\\xd51\\x81\\xec\\x18Kw\\x0c\\x88\\x9e\\xfaKG%\\xa0QI\\x8f\t\\xb4\\xc7H\\xe2\\xa3\\xa7\\xba)\\xe4G\\x87+\\x82\\xcci\\n\\x01\\xd2\\xd3\\xe4\\xc3\\x12\\xa7\\x19I\\x90Ay\\xd3S\\x10!s\\xb5\\xc5\\x082d\\x0c\\x1d\\xd2\\xbet\\xf0I\\x97\\x06\\xf7\\x05|\\xb2\\xa5t\\xc2\\x95\\xef\\x1e\\x92di\\x0c\t\\xcbw\\x97W\\xae\\x94H\\xcc\\xf2\\xdd\\xe0\\x91*\\x8d\\\"kMo\\xa4\\xech\\xe4\\x12)\\x1d5\\x95\\\\\\xcd\\xecQy\\xad\\xbe\\xc7>\\x16\\xc3u\\xb4\\x80\\xf0\\xe7Wb\\xbd\\x8e\\x16]\\xbeS2aG\\x0b\\x88\\x92>>;v4\\x9a \\xe9\\xe32fGs\\x8b\\x91R\\xa5Hi\\x83G>\\x19\\xd2a\\xf8\\xf0\\x8a\\x90FJ\\x90\\x8eR\\xa3\\x0e\\x7fA\\x01R\\xfd\\x94X\\xf9\\xd1\\x0cl\\x87\\x80\\xf0hp\\x06&\\x88\\x8e\\x12|\\xf8\\x05G\t\\x0ehb\\xa3\\x01GA\\xa1\\xd1`Ah2\\x84\\x14\\x89\\xd1,\\x8f\\\"\\x88\\x8bv\\x1e\\xf1-\\x08\t\\x8b\\x06\\xdb\\x1f\\xa5\\x05\\x12$E\\x83\\xc1\\x00\\x92\\x9c(\\xc1\\x0dm@\\x8a\\x16\\x12%\\xc8\\x85\\xe6\\x15\\x0b%J\\x85\\xa6\\x08\\x85\\x12eB\\x83\\xc1\\xa64`\\x92@h\\x86'\\x85_{>a\\xd0q\tk\\xfe\\x1a\\xa1zH\\x12=\\x9c\\xc9\\x1c\\xce\\xfc}\\xb8|\\xcd\\\"\\x87\\xc0\\\"\\x87\\xd9\\xc6\\xc3$\\x0e#\\x8b\\x1cR\\x98\\x8bYx\\x8b)\\xacE\\x169\\xcc\\xc8U\\x8ca*F\\xf1\\x14Y\\xe4\\xf0Xvb\\x0271\\x0b31\\x9e\\x97\\xc8\\\"\\x87\\xc7\\xf0\\x11c\\xd8\\x88\\x99\\xb9\\x884&bF\\x1e\\\"\\x95\\x85h\\x01\\x02X\\xe4pj\\x04\\xde!u\\x95\\x14\\xcd9d\\x91C\\x12\\xd30\\x85g\\xc8\\\"\\x87\\xae\\xcb\\x82\\xdc\\xc2\\x08f!E\\xc2/\\x86U\\xc8\\\"\\x87,rH\\xe1\\x0e\\xb2\\xc8\\xa1\\xb4\\x14\\xb6`\\x04W\\x90E\\x0e3p\\x03\\x83\\xcc\\xc0T^\\xa0s\\xb6a\\x91\\xc3Cc\\x91\\xc3\\x04\\xfe_\\x98\\xfd\\x17\\xcb\\xfd\\x8b`\\xfeE\\xf3\\xfe\\xe2X\\x7f,r\\x18\\xc7\\xf3c\\x91\\xc3\\xc1N\\xc1\\xed\\xcb\\xd1\\xe6\\\"x}tV_\\x94\\xc8ai\\x8e\\xdc\\xd3\\xb3\\xee\\xc6K&\\x10\\x1b\\xe2\\x07P\\xae`&hh\\x8eH\\xa5<,o2\\x0c\\x8ez#]\\xb3OU\\xd59\\x95\\x0c\\xc9\\xb9\\x82\\xe4\\x95s\\x9b\\x1e\\xc9\\x1bu\\xc5\\xa0GRH\\xcd!\\xf5\\xa3D\\x19\\xdb\\xb2Zo\\x0e\\x032\\x11#\\xd1n\\xd4\\xdf\\x9e\\xac\\x18\\xc94 \\xa6u_\\x018\\x0b\\xaa\\x98Dm\\x1cy\\x0e\\xed\\x1bt\\xe2\\x92\\x1f\\xe3g=\\xf8\\x82\\x87\\xc6\\x07\\xc7\\x12\\xf6\\xed\\xa2\\xf9\\x1e\\xc1\\xc2\\xff\\x03\\x1d\\x1cK\t\\xa2\\x1a\\x86\\xc6\\x08jF\\x8c\\xee\\x01\\xf8\\x9c\\xfe\\xe7%\\xaa\\x83iIG\\xc7Y\\x9e\\xf2\\xca\\xae\\xbcw,\\xf8\\xed\\x1c\\x0b>zU\\x99O\\xf4q4>z\\x15h\\xa3\\xf8o\\xe9\\xe8U\\xbd\\xa0\\x88!!\\xcd\\x16!\\xda\\x98\\x84\\xa4\\x8cIHLB\\x1a\\x8dIHLB\\x1a\\x8dIH\\x1d\\x93\\x90\\xec\\xc6$$mLBb\\x12\\x12\\x93\\x90\\x88\\xab$&!\\x0d\\xc6$$\\xd3\\x98\\x84\\xc4$$\\x8b1\t\\xc9z\\x0d\\x93\\x90\\x98\\x84\\x04LBb\\x12\\xd2\\xd4\\xdc\\x1f\\xb7LB\\x9a\\xfc\\xce$$&!\\xa11\t\\x89IHv\\x97LB\\x92\\xc6\\x87\\xf8\\xa5\\x9d\\x90\\xc6\\x87\\xf8\\x9d0\\xb8\\xe16\\xca\\x87\\xf8\\xe5\\x88\\\"\\x1f\\xe2\\xc7\\x87\\xf8\\xf1!~V\\xf6\\xec\\xf9\\xaf\\x03\\x7f\\xd2s\\xb2\\x9f\\x11`MC\\xd3\\x9cZ\\xc5\\xa0\\xd5\\xe7\\xf2\\x96\\x15v\\xcb\\xbe\\x89\\xe29?\\xfa\\xb1\\x17o\\xc6u\\x8a\\xba\\xfa\\xd5j\\xd5\\xf8(\\xb7\\xeaOO\\x9dq\\xeb\\\"\\x89$\\xf1\\xd6\\x82\\xbc\\xd9 \\xd2\\x11d[\\x05\\x18\\xb3\\x81\\x07\\xf8\\x98\\xa3]\\x80+\\xcbJhV\\x8bd\\xc6\\x12\\xf8\\xafy\\xd9\\xafD\\xeek<\\xf35\\x1c\\xa0\\xcc\\xacW/\\xe75YUL\\x152\\x81\\xcf7\\xf3\\xc6t>eL\\xe7\\xcb3\\xb20\\x9d\\x8f\\xe9|vc:\\x9f4\\xa6\\xf3\\x1d\\x1a\\xd3\\xf9\\x98\\xce\\xe72\\xa6\\xf31\\x9dO\\x1a\\xd3\\xf9\\x98\\xce\\xc7t>\\xa6\\xf3\\xa11\\x9d\\x8f\\xe9|L\\xe7c:\\x9f4\\xa6\\xf31\\x9d\\xcf0\\xf7\\xc7-\\xd3\\xf9&\\xbf3\\x9d\\x8f\\xe9|hL\\xe7c:\\x9f\\xdd%\\xd3\\xf9\\xa4\\xe9\\x1a\\x0cP\\xb6\\xab\\xfc\\xc3\\x05\\xb3\\x93)\\x11UTX\\xa1h\\xe1\\xa6\\xa9\\xb7\\x93z\\xb4\\x19+r2\\x16\\x87<\\xb5\\xcfM\\xdb\\xf8\\xd8\\xff\\xf9\\x032\\x934_C\\xce\\x1er\\x9f~zN\\xe1}\\xdd\t+\\x17\\xc3p\\xf2\\x8d\\xae\\xfa\\x13\\xe5c\\x18\\xe10mR\\x16\\xac\\xbb\\xd9\\x18\\x1a\\x94\\x84\\xe9\\xd7O\\xfd\\xdf\\x0e\\xa7TgI \\x08\\xf6y\\x8e\\x06\\x0clqy\\x8f\\x04\\x0c\\xdc\\xeb>\\n0pc\\xf8\\x08@\\xa7\\x03\\x02Ln\\xb4\\xa4\\x18\\xa8\\xfc\\xa3\\x05Ca\\xa0\\\\\\x19\\x03\\xe5\\x0c\\x94\\x8f\\xc6@9\\x03\\xe5\\xa31P\\xde1Pn7\\x06\\xca\\xb51P\\xce@9\\x03\\xe5\\xc4U\\x12\\x03\\xe5\\x831Pn\\x1a\\x03\\xe5\\x0c\\x94[\\x8c\\x81r\\xeb5\\x0c\\x943P\\x0e\\x0c\\x943P>5\\xf7\\xc7-\\x03\\xe5\\x93\\xdf\\x19(g\\xa0\\x1c\\x8d\\x81r\\x06\\xca\\xed.\\x19(?%\\xf0|_w\\x1a\\xb4\\xb1\\x01\\xcf?\\xf5\\x7f\\x1e gy1\\xc2\\xcd\\xeb\\xf2^T\\x07!\\x98\\xe0\\xcd\\xf2^\\xf5\\x87'\\x8b4\\x1b\\xf57\\xad\\xfb\\n YP0 j\\x93\\xc8sDK_\\xe7\\xf4C\\xb6p\\x97\\xdfu;e\\x9b\\x070\\x1d\\xbc\\x11\\xcb\\xa2\\xeb\\xfb\\xc5e#n\\xfa\\xb5\\x1bb\\x1b\\xbf\\xe0\\x03\\xda_\\xa0\\xac\\xdaN\\x14+\\x85\\xa0\\xdd8\\x97[0(\\x98\\xf4\\x83\\xa6j\\xac\\xee\\x01L~u\\xadp]Y\\xde\\xc0/\\x1bQ}\\xa7\\x9e\\xf9=\\xfc\\xf1\\x8f\\xf0\\xc3/j\\xcdZt\\xaa\\xb2\\xfd\\xbc\\xe2t\\xf7Y\\xc8\\x9d\\xc3\\x1f\\xce\\xe0\\xa2\\x82b\\xe3\\xd9U\\xc5\\xbd\\xcae\\xd1\\x8a\\xf6\\xb9\\xda\\xd1\\x95\\xab\\x9e\\x99\\xfa\\x8e\\xf3\\xfe\\x9f\\xde\\x7f|\\xbbx\\x7f\\xf9\\xf1\\xe2\\xfd\\xbb\\xc5\\xa7wW\\x97o__\\xfcx\\xf1\\xf6\\x8d\\xeb\\x93!\\xf8&\\x01D\\xb5\\xf7(,\\xbcp=\\x91x\\xc7\\xbf\\xbe\\xbd\\\"^\\xf9\\xeaOW\\x1f_]\\xbc#^\\xfd\\xee=\\xf9\\xc2\\xc5\\xcf\\x17\\x1f\\xffy\\xf1\\xd3\\xdb\\x8f\\xae[4\\xd7 \\xaa\\xaa\\xaa\\xb5\\xf8\\xbb\\xd0\\xd38h\\xce\\xdf[\\xd1\\x08\\x0d\\x05\\xcd\\xdf\\\\\\xd0\\xe2\\x1b\\x8d\\xed>_\\xd3\\xb1]\\x1fj@\\xb6{<\\xcd\\xc8~y\\xb01\\xa1%5\\xa9\\xf1f\\xda\\xf8\\x89\\xd6O\\xb1\\xefq\\x88\\x12R\\x87\\xad\\xe8\\xd4j\\x05\\xb7\\xf5\\xfb\\x91^\\xb7V\\xf9Q\\xeb\\xc6\\x1e\\xd1pZ_\\xd7\\xf7\\xa2\\xa9\\x8aji.r\\x02w\\xba_\\xbc3\\x10\\x86RJU\\xbf\\xa8wfq=\\xfb \\xb6\\xc7\\xfd\\xeb\\xdb\\xab\\x97\\xf3\\x1f\\x0c\\xf7\\x0fj\\xf1\\x92\\xe6\\\\5\\xae\\x97\\xb6\\x1f'z&\\xc8\\xf4:\\xe2I\\xef\\xde\\xbf\\x9c\\xfd\\xff$FGy\\x1e[\\xef\\xfc\\x19\\xe3_\\xa6O\\x93\\xa8\\xc9\\xbd\\xe8\\xc8\\xcf\\xc5\\xa90\\xc3`C\\xef\\x05?\\xcbG\\x8a\\x95\\xd1\\x13\\xc6:\\xec\\xabR\\x92#d\\xf1\\xfb\\xe6\\xdf\\xff\\xc3\\xe3\\xac\\xddm\\xca\\xc0i\\x94A\\xa90\\xd3\\xd4Yx\\xcf\\xec7=\\xb3\\xdcE\\xa9x_U\\xa3\\x92\\xf8n\\xaa~MN\\xee\\xb6\\xaf\\xd0\\xc9\\xb2\\xae\\xda\\xb2\\xd5G\\xe8\\x0e\\x0c\\xd2\\x8b7\\xcfq\\x0c\\xe9\\xd7\\x89\\xcf\\xf5\\x06\\x9e;x\\xae\\x861\\xa9\\x0c~;\\xe8#\\xf7z\\x7f\\xb8P\\xc3A\\xea\\x001\\xe5\\xc3)\\xa5\\xad<b\\xa6\\xa3\\xf1\\xe1\\x94@\\xfb\\xf2\\xf9-\\x1dN)?\\xbfc\\xe8\\xb9\\xf8\\xad\\xff\\xe1\\xf2\\xf5\\xcc\\x1b\\xd3s\\x99\\x9e\\x1b\\x9c\\xb3)\\x13\\x170=\\x97\\xe9\\xb9\\xce+\\x99\\x9e+\\x8d\\xe9\\xb9\\x87\\xc6\\xf4\\\\\\xa6\\xe7\\xba\\x8c\\xe9\\xb9L\\xcf\\x95\\xc6\\xf4\\\\\\xa6\\xe72=\\x97\\xe9\\xb9hL\\xcfez.\\xd3s\\x99\\x9e+\\x8d\\xe9\\xb9L\\xcf5\\xcc\\xfdq\\xcb\\xf4\\xdc\\xc9\\xefL\\xcfez.\\x1a\\xd3s;\\xa6\\xe7Z]2=W\\x1a\\x1fK\\x99v\\xe6\\x1f\\x1fKy\\xc2\\xe0\\x86\\xdb(\\x1fK\\x99#\\x8a|,%\\x1fK\\xc9\\xc7R\\x1e\\xe6\\x95\\x9c\\xff*)d\\x9e\\xf3(%\\x0d\\xcdL/YY\\x0e\\x9e\\xac\\xc7D\\x93\\x8b7\\xcf\\x91\\x96\\xe6<q\\xf2\\xa7\\x91\\xa5\\xf6\\xa4\\x93N\\\\\\xcc\\x8f$\\x1aZ0u$\\x08_\\x04\\xc9S\\x9e\\xa4\\x91\\x80s\\x1f\\x05\\x9d\\x02;$'\\x8b@\\xe9\\xc2\\xbdh\\xa9\\\"Y\\x13E\\xa8i\\\"\\xc7%\\x89D\\xa5\\x88\\x04\\x1b\\x85\\x8f\\xef\\x1f\\xcb\\xf3\\xa7\\xf2\\xfbcx\\xfdD>\\x7f$\\x8f?\\x81\\xbf\\xefM\\x08\\xe9\\x02\\xe9 \\x8fq\\x96j8\\x0d$\\xd8\\x18\\xd0\\xc2) \\xb1\\x0d\\xc3vW(\\xfd#\\xa6\\x91\\xd8\\xee\\x08\\xa4~D6\\x18\\xb4\\x84f3\\xdeJ\\x19\\x05\\xd12\\xa7|$'|<j\\xba\\xc7\t\\x93=\\x1e+\\xd5\\xe3T\\x89\\x1e\\x8f\\x9e\\xe6\\x11N\\xf2 \\x0c%\\xd4\\x16\\x9f1\\xbd#\\x98\\xdc\\x11\\\\n\\x8f\\x16\\x9b\\xd8\\x11\\xae\\xee\\xd1I\\x1d9S:lM\\x80\\xc88\\x8f%\\x9c3\\xdf\\x9c\\xf9\\xe6\\xd6\\xbfg\\x1a@\\x98o\\xce|s\\xbb1\\xdf\\\\\\x1a\\xf3\\xcd\\x0f\\x8d\\xf9\\xe6\\xcc7w\\x19\\xf3\\xcd\\x99o.\\x8d\\xf9\\xe6\\xcc7g\\xbe9\\xf3\\xcd\\xd1\\x98o\\xce|s\\xe6\\x9b3\\xdf\\\\\\x1a\\xf3\\xcd\\x99on\\x98\\xfb\\xe3\\x96\\xf9\\xe6\\x93\\xdf\\x99o\\xce|s4\\xe6\\x9bw\\xcc7\\xb7\\xbad\\xbe\\xb94]\\x03\t\\xe8\\xb9\\xca.\\xff8)5\\xfe\\xa2NK\\x1e\\xe0\\xb8\\xdd\\xd3:*\\xf9\\\\\\xbe\\xb2\\xf6\\xfcW\\xfc\\xef\\xa2\\xf7\\xee\\xe1\\x10^\\xca\\xab\\x06\\x16a\\xb1\\xd9\\x18\\xef\\\\\\xbf\\x9du}\\x0f\\xdbz\\xb5\\xdf\\xd8\\xcfF\\x96\\xa5AG\\xdf\\xe8\\xba>]\\xf2`Y\\xad\\x17\\x18\\x9b\\xc3/\\x83y\\x03\\x18\\xaf\\x9d\\xe9\\xe3\\x0d\\x11j\\xc4Fn\\x07 \\x01\\xa0\\xac\\xd6\\x87s\\xaa\\xb3\\x98\\x10D\\xfbt\\x11DS\\xd6\\xa9\\xe4\\xc4I\\x9d\\xfe\\\"\\xaauw\\xab\\xdf+\\xba\\x07t?/\\xb8:\\x1d\\x9c\\x16\\xab\\xe9\\xc5\\x84`\\xa9\\x1b\\xb2Fk[V\\x0b\\xe5\\xf7\\xe9\\x92\\xc9V\\xa2\\xaa\\xbd$\\xb0\\xe0\\x0b\\xed\\xad\\xd8\\xd6\\xfb\\xea\\xb1x$\\xaf\\xeb\\xd2d\\x8et\\xf5\\x9d\\xa8\\xd46 VG\\xd3\\xde\\xfbeCQ\\xa9\\xc2\\xf9v\\x9c\\xdf\\xbd\\xff\\xf8\\xf6\\xa5\\\\i\\xe3\\xb5\\x03\\xe5\\xb4\\xbf\\xfd\\xa2\\xea\\xd4d>\\xec\\x0d\\xb7^\\x08D\\xcd\\xf4\\xf8\\x91\\xe3~h[\\xae\\xab\\xa2\\xdb7\\xa2\\x1d\\xc6\\xe2\\xfe\\xb3n]\\xafk9\\x8d\\xdaW\\xc3\\x93 \\xfd\\xb5\\xac\\xca\\xed~;\\x9c\\x9c/)b#Q\\xa4\\xabAT\\xfd\\x1c\\xe1\\xedX\\xbdm\\x8b/\\x8b\\xa1\\xcfd\\xeb\\xdd\\xcew\\xf8\\xd7\\xe2\\x8b,7>J\\x16\\xfbU\\x1f\\xb2~\\xb5\\xd4w\\xcc\\xb1C\\\"o\\xc66\\x1d\\x9bvQ\\x95]Yl\\xd4.<\\xcc9\\x16\\x83m\\xeb\\xaa\\xbb=\\xd8\\xc1\\x97\\x07\\xcc\\xd3\\xc6\\x15\\xf3R\\xc2\\xa8\\x92\\xff\\xe8\\xfa\\xbf\\xed\\xeb\\xc6E\\xda\\xcc\\xf5rT\\xa3\\xda\\x89f\\xd9/\\x8f\\xd7\\xb8W.sC\\xda\\xae\\xb8\\x13\\x12f\\x1b\\xe6\\x18\\xe1%&\\xaaT\\x17\t\\xc9\\xb9\\xde\\x8a\\xa49\\xadD\\xdf\\xfe%ba{\\xcb\\xddm#\\xda\\xbey<N\\xd5\\xfb\\xf6\\xd6\\xe8\\xef\\xe3\\x7f\\x1dN\\xcb\\xb8A\\xe8u\\xe8]\\xbb\\xa2u\\xe0A\\x00o\\xd4\\x8e\\x8bj\\x93\\xbf;\\xfb\\x1f\\xb6+\\xefEW/\\x1e\\xb7r\\xb8YP\\xdf\\xc0O\\x9a&(;\\xdcG\\xf9\\x82\\xf1\\x7f\\xe5Z\\xca\\xc340c\\xe0~\\xaf}\\xdd\\xc4\\xeal\\x1e\\x89\\x1f\\xce\\xff\\x10\\xcdF\\xc3\\xd5\\\\\\x0c\\x1fM-$\\x99\\x91\\xc6\\x8c4\\xdb\\xdf3-E\\x98\\x91\\xc6\\x8c4\\xbb1#M\\x1a3\\xd2\\x0e\\x8d\\x19i\\xccHs\\x193\\xd2\\x98\\x91&\\x8d\\x19i\\xccHcF\\x1a3\\xd2\\xd0\\x98\\x91\\xc6\\x8c4f\\xa41#M\\x1a3\\xd2\\x98\\x91f\\x98\\xfb\\xe3\\x96\\x19i\\x93\\xdf\\x99\\x91\\xc6\\x8c44f\\xa4u\\xccH\\xb3\\xba\\xcc\\xcbH\\x1b)O\\x86\\x1f\\xdf\\xb7\\xa9q\\xc7\\x00/\\xe3k3\\x00\\xe6\\xaeV\\xe7:\\xde\\xd4\\xcds\\xad\\x83\\x89\\x92\\x95\\x13g\\xdf\\\"\\xec\\xff\\xed\\xf3ix\\xbf\\x95\\xa8t\\xff\\x87\\xfe\\xd3\\xed[\\x05\\xb4\\x7f\\xfb\\xd8t1\\x0bSL3\\xd7\\xf0^+=L_2e\\x88\\x0d\\xbf\\x0e\\x1as(\\x85\\xd3vE\\xb7o=$1u\\xe37\\xba\\x8eO\\x94&6\\x8b\\x8ci\\xddW\\x00\\xd8\\\\\\xc2tQ\\xfbJ\\x9e\\x93=\\xd5\\xa0\\x11\\xa0>=\\x8d3\\xd9\\xbb\\x00\\xd88^\\x15$Q\\x01q\\xe3j\\xb4X\\xf81\\xe0\\xce\\xbe\\x0b\\xe5\\xf9(\\x93\\x16\\x0dE\\x06\\xfc\\x15]\\x08\\x90D\\x8b\\x85%C\\xd5(\\xba[28\\x89\\x96\\x05\\xa2D\\x8b\\x06*\\x03\\xfe$\\x8c\\x19\\x01W\\xa2\\x1d\tZ\\xa2\\xc5A\\x97\\xa1z \\xa8\\x12\\x05`\\xa2\\xc5\\xc2\\x98\\x01w\\xfdb&\\x06\\xccD\\x8b\\x824C\\xed}\\x00<\\xa9\\xc0&Z4\\xbc\\x19\\xea\\x9f-\\x05\\xe4D\\xcb\\x06ujw\\xc7\\x00\\x9eh\t\\xb0'Z\\x16\\xf0\\x13-\\x1e\\x02\\x0du\\x13\\xbd\\xee\t\\xf7\\xa8\\x93\\xc0\\xa1h\\xa7\\x02E\\xd1N\\x00\\x8d\\xa2\\xc5\\x00\\xa4hd\\x984\\xd4\\x95\\x0c\\x10\\x95\\x08\\x96\\xa2e\\x84L\\xd1\\xa8\\xc0)\\x9a\\xe5{+</\\xc4\\x82\\xa8\\xa1a\\x0d!V\\x02\\x94\\x8av4\\xa0\\x8a\\xe6\\x85U\\xd1\\xc8\\x8b=\\x02\\xc4\\x8a\\x16\\xb7*\\x8c\\x86[C\\xad\\xf4\\xba\\xbe\\x17\\x04\\xd0\\x15\\x8d^\\xd6\\x8c\\x00,\\x1a\\x1d\\x86E\\xcb\\n\\xc6\\xa2\\xa5@\\xb2\\xa1\\xd6\\xd6\\x86\\x81Y\\xb4\\x14x\\xd6\\xef\\xae\\x7fj\\x08\\xa4E\\xcb\\x03\\xd5\\xa2\\x111G\\xb4 l\\x8b\\x16\\x01\\xde\\xa2y\\xd1\\x11i)@.Z\\xd8\\xb7g\\x1b6\\x1b\\xb4\\x8b\\x96\\x12l:\\xcc\\x8b\\x16\\xaeo\\x02\\xe4\\x8b\\x96\\x04\\xfc\\xa2yc\\x9c\\x0f\\x04F#B\\xc1h\\x14@x\\xb8\\x92\\x00\\x0b\\xa3\\x91\\xdeB<D\\x8cF\\x07\\x8a\\xd1\\xdcp1Z\\x16\\xd0\\x18-\\n:FK\\x01\\x90\\xd1\\\"`d\\xb4\\xf0[\\xf1A\\xcah\\x04\\x1ftx\\x19-\\x17\\xc8\\x8cF(\\xa0\\xb77\\xe6\\x83\\x9d\\xd1\\x82\\xe03Z\\n\\x04\\xedq\\xa7\\x95\\x9a}@4Z\\n\\x1c\\xedq\\xd7\\xe9}1'(\\x8d\\x96\\x04M{\\xfc\\xe1\\x17yh\\x93\\x82\\x00S\\xa3\\xb9\\xf1447d\\x8d\\x16\\x0f\\\\{\\x9cy!m}I\\x02\\xb0\\xed\\xf1\\x87+Z\\xef^b>\\x90\\x1b-\\x0cu\\xa3\\xc5\\x02\\xdeh\\x11\\xb07Z4\\xf8=\\xb9\\x8d\\x08\\x81\\xa3\\xf9W\\x07\\x01h\\x12\\x8d\\nPRAq\\xe55\\x16\\x1aW\\xb7\\xc5\\x00\\xe4h\\xde\\x10\\xa4\\x80\\xe5\\x1ew\\x06\\x18M\\xefR4\\xe0<\\xd0]\\xaa\\xb5\\x1f>G\\xcb\\x08\\xa2+\\x87>(\\x1d\\xcd\\x03\\xa8{\\xeeJ\\x85\\xda\\xd1\\xf2\\xb5\\xea\\x08\\xd8]9&\\x83\\xefh\\xf65\\x0cb\\xbeG\\x00\\x94\\xfeSq^\\xc0\\xe5\\x87\\xf7\\x97\\xef\\xaf^\\xfdeq\\xf5\\xf1\\xd5\\xc7OW\\xa4ca\\x0e\\xefz\\xf3\\xf6\\xf2\\xfd\\xd5\\xc5\\xc7\\xc5\\xe5\\xdb\\x0f\\x17\\xefcn\\xfc\\xe9\\xfd\\xc7\\x8bw\\x7f\\x8e\\xbf\\xef\\xf2\\xd5\\xd5UT\t?\\xbc\\xfd\\x97\\xb7\\xaf?F\\xdd\\xf2\\xe3\\xab\\x8b\\xbf8o\\x18\\xce\\xd4\\x89\\x0f uOI\\xe3\\xf9W\\xb2\\x0d\\xd8\\xcf\\xd4\\xc1\\xf6!\\xf0P\\x0d\\xa7'\\xca\\xc99\\xde\\xa6\\xe0\\xad\\xe6D:@\\xafE\\x87\\xa4\\xea)k\\x81\\xf4\\xe0ik:|\\xf6\\xf4\\xef\\x86x\\xc6\\xec\\xa1\\xb0\\xda7\\xfa\\xd4YE\\x0cq\\x87\\xc8\\xa9&\\xa1,\\xd0v\\x0fK9\\xf93\\xad\\x90Hq\\xc9YF\\xec'\\x87\\x85\\xc3\\xdf=\\xa5\\x9a\\x1e\\xd2\\\"'&\\xf7\tr \\xb5\\x03D\\\\\\xd1t\\x8f<,\\x9c\\xfeK\\xbe\\xe2]\\x0bQA#\\xfeC\\xa6\\xbdG\\x95\\x12\\x07\\x81\\xc32\\xe2\\xef\\xf9JxS\\x94\\x1bW\\xd1n\\xca\\xaa\\xd8,P\\xad\\x03\\x114\\xd7\\x88N\\x1dZ\\x0e=j\\x15\\x02\\xf9\\x17\\x94\\xfa\\xd0r\\x17\\x81m\\xf5ap\\x81\\x9fo\\x85g9?\\x1c\\x02m\\x84\\xe5\\xbe,`\\xfd\\xe1\\xf2\\xf5\\xe4<AD}\\xdc\\xcf\\xabw{\\xd4$\\xd9W]\\xb9\\xf1\\x03\\xd7\\xfaI\\xcf\\xda\\xa9l\\x8c\\\\\\xc1\\x89j\\xe5n\\x0d\\x04V\\x0d\\x85S\\xf3 \\xda\\xc52\\x83\\x9c\\x10\\xe8\\x83\\xbd2y\\xab\\xea|\\x8e\\xfa/\\xb9\\x85\\xd4\\xfe8\\xdee\\xbb\\xbf\\xde\\x96\\xdd\\xa2+\\xb79\\xd2\\xfdVE'^\\xf4\\xbe\\xac\\xd7i\\x8d Q\\xad\\x1e\\xe7\\x81Rv\\xc6\\xaf\\xa2\\xf5\\xb4\\xf8`A=-Rp\\x80\\xa4\\xa9EtE\\x1d\\xe2\\xa2\\x95\\xb5\\x82\\x85\\xf7CFyU\\xb7\\xc8\\xba[\\xa9\\xca[J\\xfc\\xae\\xed\\x8a\\xe6\\x91z\\x9bz\\xe2\\xa3u\\xb6\\xad\\xe8\\x8aU\\xd1\\x15G<\\x88\\xda\\xd6\\xf4\\xa3\\xf0m?\\x18\\xc8\\xef\\xf0\\x97\\xa2\\xeb\\x8a\\xe5\\xad\\x12\\xd2\\xa2\\xcc\\xa6\\x96+(\\xc5\\xd1\\x1f\\x0d\\x93E\\xf9\\xb2n\\x84j\\x8f[\\xb1\\xbdV\\xe2\\x93\\xe6\t~V_\\xae\\xb2\\x8c\\xc7\\x93\\x1f\\xc6v\\xaaP:\\x1e\\xda>\\x95\\x173\\xcer\\x97\\xbf\\xd8\\xd8\\xc6h\\xde\\xc1\\xcc?\\x88U\\xe2K\\xb7\\xb8\\x13\\x0f\\xf6\\x06\\x10|\\xfdA>\\xc3\\xa4\\xaa\\xff\\xe9j\\x1d\\xba\\x14z\\x81\\xd5\\xffS\\x91\\x85\\xe4\\x9a\\xb9\\xff\\x9f\\xcbb->\\x88\\xbf\\xedE\\xdb\\x9d\\xe1\\xdf\\x1d\\xce\\x90)\\xdf\\xbb\\xe9\\xdd\\xf6\\x81\\x14\\xb0\\xad\\xdb\\x0e\\x84\\xa4\\xdaH\\x96\\x8e<\\xcc~\\xdc5\\xdau\\x0fP\\xba$z\\xba[\\xd1\\x08\\xc9\\xd8\\xaaj\\xd8\\xf6\\xadD1\\xb4l\\xcdO\\xce^G\\x06\\xd3\\xc3\\x93V'W:\\xbb\\xd9p\\x9e?\\xfe\\xa3\\xda\\xf7\\x0d\\xb9o\\xc7\\xc3\\xd1\\xf6#\\xff\\xc8U_3\\xd0r\\xad\\xb2\\x90\\xce\\\\\\xc3\\xeb\\xe7B\\x9e\\xa3\\xff\\x1c\\xca\\xae\\xd5\\x8c\\xb9\\x16\\xf6\\x156\\xe6\\x15\\x92\\x7f>\\x97\\xed\\xb4}P\\x14\\xc04\\x05\\x9e$\\x02f\\xf3p>&\\x0f|\\xb8|=\\xaf\\x00\\xcb\\x82\\xb1,X\\xb6\\xd9-\\x96\\x97\\x8fm\\x97e\\xc1\\x08\\xcc{\\x1b\\x10\\x1a\\xcd\\xb9\\x8ff\\xdb\\xb3,X4\\x9f\\x9ee\\xc1L#0\\xe6\\xb3q\\xe5\\x8fc\\xc9'\\xf0\\xe3\\xb30\\xe3\\xe39\\xf1,\\x0bv\\x0c\\xf7=\\x86\\xf5N\\xe6\\xbb\\xb3,\\x18\\xcb\\x82\\x91WI\\xd1<u\\x96\\x05#1\\xd1S8\\xe8,\\x0b\\xe6\\xba,\\xc8/\\x8f`\\x96SD\\xafb\\xd8\\xe4,\\x0b\\xc6\\xb2`\\x14\\xfe7\\xcb\\x82IKauG\\xf0\\xb9Y\\x16,\\x03?;\\xc8\\xccN\\xe1d\\xb3,\\x98i\\x04\\xbe5\\xcb\\x82%0\\xa6\\xc3\\\\\\xe9X\\x96t\\x04?:\\x9a\\x19\\x1d\\xc7\\x89fY\\xb08\\xa63\\xcb\\x82\\x0d\\xc6\\xb2`\\xca\\x0e\\x0e\\xaaD\\xde\\x9b\\xe1\\xcb\\x87\\x8f\\xce\\xee\\x9a\\xc0\\xc3#\\x81\\xae\\x9b\\x9e\\x009-\\xe7\\xa3\\x12V\\xbf\\x1eI\\xd5J\\xfa\\xfcJdTbYNI:\\xb5\\x12M\\x1f\\x9f\\\\\\xea#\\x94>.\\x89\\xf4\\x908ZV/\\x91(`\\xfc6\\n\\xde\\xdd\\x14\\x9b6\\xa0x\\x07\\xd6\\xbc\\x01z\\xae@\\xa8\\xb3\\x04.v\\xe7\\x04\\x90\\xf2\\x00\\x88\\xdc\\x7f\\x02\\xdf?\\x8a\\xe3\\xff8\\xc7\\xde\\x1e\\xf9^u!\\xd5@S;\\x0b:\\\\0\\x1b+\\xf1\\x18CU\\\\\\xd1\\xc2MSo\\x1f\\xa5\\xc4#g\\xe8\\xecN<\\xb8\\x8a=\\x9be\\x14\\xed\\xa6P+\\xf5Ft\\xfb\\xa6\\x92h\\x88b\\x82(\\x86\\xc3\\xc0\\xd1\\x91\\x18\\xc6z\\xb6\\xd9?\\x10\\x97\\xbb\\x00\\xef\\xe6}\\xff]\\x85\\xd2\\x95P\\xdf\\xdc\\xb4\\xa2\\x83\\xba\\x81iq\\xc1\\xc0`[\\xd1e\\x8e\\x96cG\\xdb\\x12D,\\x9f+\\x8e\\xb3\\xdddU\\x19\\x19J\\x99\\x85R.\\xf5orLR\\xaa\\x9d\\xb8\\x9d\\x7f+*\\x1d\\xf8}5 (\\xb3\\xd9\\xfbBz\\xdb\\xf4m~\\x08!b\\x0e\\xfb\\xb6\\x0f\\xf5\\x9d\\x88\\x8c\\xe7\\xd4\\xfd\\x89\\x83\\xeb8\\xf1\\xda\\x08\\xef\\xa6\\xdc\\x96\\xd4\\xe8\\xcak5\\x01\\xc8EnBt\\xcdl\\xc1\\xf8\\xc9\\xd9\\xffu\\xe2m\\x87{\\xe9\\xe6O\\x177\\xb0\\x117\\x9d&\\x83)v\\x98^\\xf8H`\\x10;\\x08>\\xa4\\x8f\\xf3\\xf5\\x03\\x88by\\x0b\\xc5n\\xf7\\x15\\xa3hR\\xb4\\xc6\\xfb}\\xb14\\xee\\xe8#*[h-E^\\xa1\\xffGY\\xad\\xcae\\xd1\\x89\\x81\\\"\\xa0s\\x1c\\xfa\\x0b-R\\x84e\\xb5\\xdc\\xecW\\xb3\\x9d\\x87\\x02\\x9f2p4foL2~\\x0c\\xe8P\\x1e\\xb3i2\\x1e'\\xce>]\\xcc\\x17\\xb6\\xb3*\\xc8\\xcd\\x9aF\\xb4\\x8a\\x9b%\\xbb\\xd7\\xd8\\x1f\\xfb.w\\xa6zS\\xb9\\xae\\xeaf\\x06\\xbc\\xea\\xde8}\\x04F\\xe6\\xd8\\x17{]\\xd7\\x1ba\\xf0\\xa6-/\\xb0\\x11\\xf7\\xa2\\x99\\xdc\\xea{y\\xea\\xea\\xf9\\x8b+\\x0d\\x8a_#\\xec=a\\xe2\\xa7\\x7f\\x86\\xa8$%\\xa5nV\\xa2\\x99#/We\\xb5\\x14/\\x01\\xf5z_\\xb4\\xab;\\xf8\\xdd\\xd9?\\xfd!k4\\x8e\\x15\\x0d>\\xffu\\xf8B*W\\xbe\\x13\\xe6\\xf5\\xdaP+\\x08\\xefF\\xfe\\xafd\\xab\\x8dbz\\xfa\\xd2\\x8b7\\xfa\\xc5\\xff\\xfdK\\x08\\xbb\\xb8xI|a\\x97\\x10p\\x10G\\x0e\\x92[\\xfd\\x12\\xc0] \\xe1\\xe31\\x0eN\\xef\\x08\\xc2\\xbf\\xc18\\xa0Q`im\\xb1\\xd4B\\xaf3;\\xbe\\xec\\x81[rS\\x0c!L3\\x84\\x04\\xaa\\xa1\\xbf\\x02\\xb1B\\xbf\\xb6=\\xffh\\xca!$\\xd2\\x0e\\xbd\\x0e\\xa3%~\\x8f\\xa4\\x1fB4\\x05\\xd1\\xeb*U\\xdc7+\\x15\\x11\\\"\\xe9\\x88\\x10KI\\xf4\\xb7\\xec$Q\\xdf\\xac\\xd4D\\xa0\\xd1\\x13!'E\\x11\\x8e\\xa6)B\\x1aU\\x11r\\xd1\\x15!\\x89\\xb2\\xe8\\xef\\x0et\\x11\\xdf\\x13P\\x17\\xe1\\x84\\xf4E8\\x0d\\x85\\x11\\\"i\\x8c\\x90Fe\\x0c\\x0d\\xc1\\x1d\\x89\\xce\\x08y)\\x8d\\x10Ak\\x84xj#$\\xd0\\x1b\tC&U\\xae\\xf7h\\x9a#\\x84\\xa8\\x8e@_\\x9e\\x11(\\x8f\\x10\\xb9\\x8a\\x8b\\xa6>z\\xbd\\xc5\\x08\\xf4RK\\x99\\x91\\x06\tQTH\\xc8M\\x87\\x84DJ\\xa4\\xbf]\\x11Ey\\x13\\xa9\\x91N\\x7f\\x1dQ\\x907\\x0fE\\x12\\xe8L?\\xa0P%!\\x8e.\t!6R\\\"m\\x12\\x08~=\\x84\\x87L\\x14JH\\n.\\x9dJ\t\\x84Z&P*!\\x95V\t\\x01E\\xb9l\\xf4J\\xa0S,\\x81H\\xb3\\x042\\xd5\\x12hQ\\x8f\\xa7\\\\B\\x14\\xed\\x12\\x82\\x12\\xbbY\\xe8\\x97\\x10K\\xc1\\x84D\\x1a&\\xc4Q1\\x81\\xf0\\x16B\\xb2\\xba\\xc1\\xfb\\xe9\\xd4L\\xc8H\\xcf\\x04J\\xd1<\\xfd,\\x1fU\\x13(tM8\\x82\\xb2\\xe9t\\xd8\\x11Dt\\xb3R7!H\\xdf\\x84T\\n\\xa7\\xd3\\x1bE<\\x97@\\xe5\\x84\\xa0p\\xae_67\\x9e\\xd6\\xe9t\\x15\\x94\\xccM\\xa2|:\\xbd\\x05\\xe5r\\xf3Q?\\x81D\\xff\\x84\\x04\\n(\\xc4\\xd1@!\\x85\\n\\n\\xd1tP\\x08\\xa9\\xc3\\x86\\x85D\\xa94=*5\\x14R\\xe8\\xa1\\x10K\\x11\\x05\\x7f\\xc5S\\xa8\\xa2Ng$I\\xdc\\x14\\xca\\xa8\\xb7CP\\xe4p3RG!D\\x1f\\x85D!\\xdcTj)dl\\xbb\\x11\\x14S\\x88\\xa2\\x99\\x82c\\xf9\\xe2\\x13\\xbf\\x0d\\xeev\\xf8\\x84o\\xe9T6\\xdf=$\\xd1\\xdb\\x18z\\x9b\\xef.\\xaf\\xe0-\\x91\\xf2\\xe6\\xbb\\xc1#v\\x1bE\\x83\\x9b\\xdeH\\xd9\\x9d\\xc9%s;\\xaaU\\xb9\\x1a\\xda\\xa32\\x86}\\x8f},\\xee\\xf0h\\x01\\xe9\\xd8\\xaf\\xc4'\\x1e-\\xba|\\xa7\\xe4\\x18\\x8f\\x16\\x90\\xb5}|\\xde\\xf1h4I\\xdb\\xc7\\xe5\\\"\\x8f\\xe6\\x96\\xb3\\xa5\\x8a\\xd9\\xd2\\x06\\x8f|B\\xb6\\xc3\\xf0\\xe1\\x95\\xb1\\x8d\\x14\\xb1\\x1d\\xc5j\\x1d\\xfe\\x82\\x12\\xb6\\xfa)\\xb1\\x02\\xb6A^H\\x98\\x15B\\x90\\xae\\x0d\\xce\\xc2d\\xd9Z\\x82\\xa7\\xb0d-\\xcd\tY\\xae6\\xe0.(U\\x1b,\\x0eE\\xc8\\x92&R\\x9b\\xe5Q\\x04y\\xda\\xee\tp\\x95\\x82\\xa2\\xb4\\xc1`\\x00I\\x90\\x96\\xe0\\x866HEK\\xd1\\x12\\x04g\\xf3\\xca\\xcd\\x12\\xc5fS\\xa4f\\x89B\\xb3\\xc1`S\\x1a0Ib6\\xcb\\x93\\xfc\\xe2\\xb2\\xc1G\\xd0\\xdaM6Y\\xd9qi<\\xffK\\xb8 \\xf9\\x04e\\xed\\xa5\\x88P\\xcb$\\x89e\\xce\\xe41g\\xfe>\\\\\\xbefqL`q\\xccl#{,\\x83U\\xc3\\xfeN\\x87T\\xf6jV\\xe6*\\x8bc\\xb28\\xe6hY\\x19\\xa91l\\xd4(&*\\x8bc\\x1e\\xcb:M`\\x9cfa\\x9b\\xc63MY\\x1c\\xf3\\x18fi\\x0c\\xab4\\x81Q\\xca\\xe2\\x98,\\x8e\\xc9\\xe2\\x98TFhV6h\\n\\x13\\x94\\xc51]\\x97\\x05\\x19\\x9f\\x11lO\\x8a\\xf4c\\x0c\\xcb\\x93\\xc51Y\\x1c\\x93\\xc2\\xd8dqLi)\\xac\\xcc\\x08F&\\x8bcf`\\\\\\x06\\xd9\\x96\\xa9LK\\xe7l\\xc3\\xe2\\x98\\x87\\xc6\\xe2\\x98\t\\x0c\\xc90;2\\x96\\x19\\x19\\xc1\\x8a\\x8cfD\\xc6\\xb1!Y\\x1c3\\x8e\\xf1\\xc8\\xe2\\x98\\x83\\xb18\\xa6\\xb2\\x03q\\xcc\\xd2\\x1c\\xb9'\\xdf\\xa6\\xc6%\\x13\\x88\\x0d\\xf1\\x03(W0\\x13\\xc24G\\xa4R\\x1e\\xb28\\x19\\x06G\\x9d\\x9a\\xae\\xd9\\x1f\\xca\\xd4\\xd0\\xd4\\x98\\xf2\\xca\\xd7\\x9c+J\\x81ri\\xd3\\xb1y\\xa3\\xae\\x18tl\\n\\xa9P\\xa5~\\x94\\xd8b[V\\xeb\\xcda\\x18\\x0eEl\\xdeL\\x98pOV\\xc3f\\x1a\\x14\\xd3\\xba\\xaf\\x00\\x99\\x19\\xef+\\xc3\\x96\\x91\\xe7\\x98\\xc7AY0\\xf91~\\xe6\\x86/xh||2a\\xc7.\\x9a\\xb3\\x12,\\xfc?\\xd0\\xf1\\xc9\\x94 \\xaaQh\\x8c\\xa0f\\xf5\\xe8\\x1e\\x80\\xcf\\xe9\\x7f^\\xa2\\x9e\\x9c\\x16\\x01u\\x9c\\xfe*\\xaf\\xec\\xca{\\xc7R\\xdf\\xc5\\xf1\\xe0\\xc3z\\xa5\\xf9dBG\\xe3\\xc3z\\x816\\x8a\\xff\\x96\\x0e\\xeb\\xd5k\\x93\\x18\\xfa\\x91\\xbeg\\xe6\\x8f\\xe9G\\xca\\x98~\\xc4\\xf4\\xa3\\xd1\\x98~\\xc4\\xf4\\xa3\\xd1\\x98~\\xd41\\xfd\\xc8nL?\\xd2\\xc6\\xf4#\\xa6\\x1f1\\xfd\\x88\\xb8Jb\\xfa\\xd1`L?2\\x8d\\xe9GL?\\xb2\\x18\\xd3\\x8f\\xac\\xd70\\xfd\\x88\\xe9G\\xc0\\xf4#\\xa6\\x1fM\\xcd\\xfdq\\xcb\\xf4\\xa3\\xc9\\xefL?b\\xfa\\x11\\x1a\\xd3\\x8f\\x98~dw\\xc9\\xf4#i|\\xecc\\xda\\x99z|\\xec\\xe3\t\\x83\\x1bn\\xa3|\\xecc\\x8e(\\xf2\\xb1\\x8f|\\xec#\\x1f\\xfbh\\xf0f\\xcf\\x7f\\x1dX\\x93\\x9e\\xb3 \\x8d\\xb0j\\xf2\\x99f\\xd3*\\xee\\xac>\\xbf\\xb9\\xac\\xb03\\xf6\\x0d\\x13\\xcfi\\xd2\\x8f\\xbdx3\\xaeN\\xd4\\xd5\\xafV\\xab\\xe6\\x1f\\x85l\\xeb\\xe2\\x87$Q\\xd6\\x82\\x94\\xd9 \\xc8\\x11$Z\\x05\\xc8\\xb2\\x81\\x07\\xf8H\\xa3]\\x80&\\xcbBnV\\x8b$\\xc5\\x12\\xa8\\xafy\\x89\\xafD\\xdak<\\xe95\\x1c\\xa0\\xcc\\x84W/\\xdd5YJL\\x152\\x81\\xca7\\xf3\\xc6L>e\\xcc\\xe4\\xcb3\\xb20\\x93\\x8f\\x99|vc&\\x9f4f\\xf2\\x1d\\x1a3\\xf9\\x98\\xc9\\xe72f\\xf21\\x93O\\x1a3\\xf9\\x98\\xc9\\xc7L>f\\xf2\\xa11\\x93\\x8f\\x99|\\xcc\\xe4c&\\x9f4f\\xf21\\x93\\xcf0\\xf7\\xc7-3\\xf9&\\xbf3\\x93\\x8f\\x99|h\\xcc\\xe4c&\\x9f\\xdd%3\\xf9\\xa4\\xe9\\x1a\\x0cP\\xb6\\xab\\xfc\\xc3\\x05\\xb3\\xc36\\x11UTX\\xa1h\\xe1\\xa6\\xa9\\xb7\\x93z\\xb4\\x19+\\x92\\x99\\xc0!\\x8f\\x1ft36>\\xf6\\x7f\\xfe\\x80T$M\\xd5\\x90s\\x86\\xdc\\x9d\\x9f\\x1e\\xb8x_w\\xc2M\\xc30<}\\xa3k\\xfdD\\xa9\\x18FLL\\x9b\\x94\\x05\\x03`\\xb6\\x83\\x06\\x85`\\xfa\\xa5S\\xff\\xb7\\xc3\\xd9\\xd4Y\\x12\\x08\\xe2|\\x81\\x83\\x0e\\x03;\\\\\\x84\\x03\\x0e\\x03\\x1e\\xfc\\x07\\x1b\\x86o&\\x1dh\\xe8tC@\\xcd\\x8d\\xd6\\x15\\x83\\x9c\\x7f\\xb4@*\\x8c\\x9b+c\\xdc\\x9cq\\xf3\\xd1\\x187g\\xdc|4\\xc6\\xcd;\\xc6\\xcd\\xed\\xc6\\xb8\\xb96\\xc6\\xcd\\x197g\\xdc\\x9c\\xb8Jb\\xdc|0\\xc6\\xcdMc\\xdc\\x9cqs\\x8b1nn\\xbd\\x86qs\\xc6\\xcd\\x81qs\\xc6\\xcd\\xa7\\xe6\\xfe\\xb8e\\xdc|\\xf2;\\xe3\\xe6\\x8c\\x9b\\xa31n\\xce\\xb8\\xb9\\xdd%\\xe3\\xe6\\xf9q\\xe8\\xfb\\xba\\xd3P\\x8d\\x0d\\x87\\xfe\\xa9\\xff\\xf3\\x80@\\xcb\\x8b\\x11}^\\x97\\xf7\\xa2:\\xa8\\xf8!\\xfc,\\x1d\\xa8\\xbf>Y\\xe0\\xd9\\x08\\x82i\\xddW\\xc0\\xc7\\x82\\xd2\\x01Q\\xfbC\\x9esZ\\xfa:\\xa7\\x9f\\xb4\\x85\\x1b\\xfc\\x01\\x19\\x80\\xa7q\\xd4\\x16\\x16\\xd5w\\x05\\xa1\\xbe\\xdaD\\xb5\\x0f\\x1c\\xdb\\xd5\\xf7\\xc1\\x9f\\xde\\x7f|\\xbbx\\x7f\\xf9\\xf1\\xe2\\xfd\\xbb\\xc5\\xa7wW\\x97o__\\xfcx\\xf1\\xf6M\\xd4}\\xff\\xfa\\xf6*\\xea\\xfaW\\x7f\\xba\\xfa\\xf8\\xea\\xe2]\\xd4=\\xef\\xdeG^\\xbe\\xf8\\xf9\\xe2\\xe3?/~z\\xfb\\xd1\\x7f\\xa3\\x86\\xed\\x93\\x02A\\xd9\\x1e\\x1c\\xad\\x1f_\\xde\\xcb\\x8b\\xe5\\xbb\\x91\\xdb[8J\\xe3vf\\xdf\\xccuk\\x95\\x8by7\\xe6\\x82\\x86\\x03\\xdb\\xba\\xbe\\x17MUTKsp\\x0f\\xdc\\xe9~\\xf1\\xce@\\x18\\x82\\x11U\\xfd\\xa2\\xde\\x99\\xc5\\xf5|\\xff\\xd9\\x1e\\xf7\\xafo\\xaf^\\xce\\x7f0\\xdc?\\xa8\\xe1;\\xcd\\xb9j\\\\/m?Nd\\x1d\\x90\\xf1r\\xc4\\x93\\xde\\xbd\\x7f9\\xfb\\xffI\\x8c\\x8e\\xf2<\\xb6\\xde\\xf93\\xc6\\xbfL\\x9f&w\\x8b\\xefEG~\\xeegQ\\xaeo\\x1f\\xf74\\xbe\\x9f\\xe5#\\xc5\\xca\\xe8\tc\\x1d\\xf6U)AaY\\xfc\\xbe\\xf9\\xf7\\xff\\xf08kw\\x9b\\xb2\\xb3Wp+\\xbabUtE\\xf2\\x9cA\\xaf\\x94~\\x14j\\x9d<\\x80\\xb1\\xf9?\\xfc\\xa9\\xab\\xa1\\xe8\\xbaby\\x8b\\xd0\\xa4\\x0fd4\tr\\xa6Q\\x8a\\xd3G\\xd5\\x88'6\\x83\\xaa_\\x00\\x91G\\x88W\\xe8dYWm\\xd9\\xea3K\\x07\\xf6\\xde\\xc5\\x9b\\xe78\\\\\\xf5\\xf3\\xf1s\\xbdG\\xe2~O\\xae68\\xa9\\x0c.\\xd4\\xf4\\xf9f\\xbd?\\\\\\xc2\\xe1xx\\x00J\\xf1I\\x80\\xd2V\\x1e\\xe5\\xc8\\xd1\\xf8$@\\xa0\\xad0\\x7fK'\\x01\\xca\\xcf\\x9c\\x18\\x06$~X}\\xb8|=\\xf3\\xc6\\x0cHf@f\\x9bG\\x99\\x01\\xc9\\x0cH\\xbb1\\x03R\\x1a3 \\x0f\\x8d\\x19\\x90\\xcc\\x80t\\x193 \\x99\\x01)\\x8d\\x19\\x90\\xcc\\x80d\\x06$3 \\xd1\\x98\\x01\\xc9\\x0cHf@2\\x03R\\x1a3 \\x99\\x01i\\x98\\xfb\\xe3\\x96\\x19\\x90\\x93\\xdf\\x99\\x01\\xc9\\x0cH4f@v\\xcc\\x80\\xb4\\xbad\\x06\\xa44>\\x030\\xed\\x805>\\x03\\xf0\\x84\\xc1\\x0d\\xb7Q>\\x030G\\x14\\xf9\\x0c@>\\x03\\x90\\xcf\\x00\\xd4\\xd4\\xfd\\xf3_%q\\xccs\\xf8\\x9f$\\x9f\\x99\\x0c\\xfe\\x95\\xe5\\x94\\xbfz\\xe4\\xf2_\\xbcy\\x8ed4\\xff\\xf1~?\\x8d\\x04\\xb5'\\xcd\\xebw\\x91>\\x92\\x18hAv~\\x10\\xb9\\x08\\xf2\\xa6<\\xbc\\xfc\\x80s/'\\xbf\\x0b0\\xf2\\x1f\\xe3T\\xbf0\\x13?\\x18>\\xb40\\x0b?\\x8d\\x83\\x1f\\xc7\\xc0\\x8f\\xe7\\xdfG\\xb1\\xef\\x93\\xb8\\xf7G0\\xef)\\xa0\\x94\\xb6\\xcc\\xac\\xfbd\\xce\\xfd\\xa32\\xeeO\\xc8\\xb7\\x7f,\\xb6\\xfd\\xa9\\xb8\\xf6\\x8f\\xce\\xb4\\x0f\\xf3\\xec\tC\t\\xb5\\xc5gd\\xd8;\\xf9\\xf5~v}\\xb02\\xb4\\xaad\\xe5\\xd5\\xdbY\\xf5\\xe1\\x82\\x1c\\xcd\\xa8\\xcf\\xc9\\xa7\\xb7\\xb53\\\"\\xdd7\\x96\\xed\\xcbd_&\\xfbZ\\xff\\x9ei\\x94b\\xb2/\\x93}\\xed\\xc6d_iL\\xf6=4&\\xfb2\\xd9\\xd7eL\\xf6e\\xb2\\xaf4&\\xfb2\\xd9\\x97\\xc9\\xbeL\\xf6Ec\\xb2/\\x93}\\x99\\xec\\xcbd_iL\\xf6e\\xb2\\xafa\\xee\\x8f[&\\xfbN~g\\xb2/\\x93}\\xd1\\x98\\xec\\xdb1\\xd9\\xd7\\xea\\x92\\xc9\\xbe\\xd2t\\x0d$\\xa0\\xe7*\\xbb\\xfc\\xe3\\xa4\\xd4\\xf8\\x8b:\\x1ct\\x80\\xe3vO\\xe0dP\\xf9\\x9a\\xda\\xf3\\xfb\\x1f\\xaeEW\\xfc\\xa0\\xfe\\xd7\\xcd\\xdf2\\xe8\\xcb\\x97\\xf2\\xd2\\x81\\xccU\\x8c\\x1b0\\xc3\\xabG4t[\\xaf\\xf6\\x1b\\xf1\\\\\\x11+\\xca\\xae\\xff\\n\\xbfnw\\x85\\xdc\\x14\\x1d\\x1b\\xc0\\x9dx\\xb0\\x12\\xbc\\xf09\\xea/O\\x96\\xdd%\\xeb|\\xf8\\xc10\\x13,k\\x8a\\xed\\xa4]h!\\xb4!b\\x87\\xf3\\xaa\\xb3,\\x10D\\xfct\\x98\\x93`\\xfcTi3\\xcf\\xf6\\x9a\\xf3N\\x02\\xc8\\x8d\\xad\\xc0\\x84\\xb9}\\x10\\xb7j\\x9b\\x0cr3\\xc8m\\xfb\\xbbw\\x87\\xf7\\x04\\xfb\\xc3\\xbe\\xb9PwRW\\x0b\\x1c\\xc6Js\\xdc\\xc0!\\xb5_\\x90\\x8c\\x9a}\\xe3\\xa8{3E\\x99R\\xb8\\xc2\\xb3\\x1a\\xea\\xc2z\\x12[\\xee\\xc4\\xf4$\\xe4\\xfe\\xff\\xf5\\x14=\\x94L}\\xe2\\xe9:e-eh\\xe6\\x1b\\xe6\\x11\\xc7\\xd4\\xa7\\x0b\\xe5\\x99\\xfd\\x8c\\xa1\\xe9J_=L\\x80\\x92Y\\xb8\\xe9'\\x99u\\xd9v\\xa2\\x11\\xab\\xa1\\x9e\\xad\\\\\\x16\\xf7\\x7f\\xbc\\x13\\x0fs\\x0e\\xe2<\\x18\\x93\\xa8>\\xb32\\xc1\\xff\\xe73u\\xedd\\xa2\\x1c\\x8a\\xa4\\xfe\\xf8d\\xe7\\xcaY\\xa4M\\xfb\\x1a#\\x86\\x7f\\x9a$\\xf4\\xf9\\xfe\\xa5\\xfao>Z|\\xdc\\xf9t\\n\\xa0s5\\x1fB\\n\\xa3K\\x0e\\xe3\\x0b\\xee\\xdf\\xa8v\\xaaz\\xb0\\x1d\\x0e\\x91\\x1fe\\xe2K\\xd9v\\x92\\xe2\\xe0\\xb8\\xc6\\xec\\xe6\\xf6k\\xecm{r)ae04\\xfbaq0=\\x90\\xddX%`\\xd7\\x1b\\xb2\\xe5\\x0e\\xf9\\x19\\xc5\\xe6\\x00\\x8e%vgOe\\x03\\xd5\\xe4%\\xc8\\xec\\xaf\\xbc\\x049\\xc1\\x12$zvl7E{[Vk\\xf2\\xa7\\xe1\\xec{p2\\xf1K\\xb0S{T\\xab\\x17u\\xfft\\nS\\x97\\xfc\\x1d}\\xf39\\xdb\\\\\\xda'[\\xb9\\xae\\xc4jq\\xbd\\xa9\\x97w\\xed\\xe2sY\\xad\\xea\\xcf\\xeeFFJ\\xeeq\\xe5\\xf6l\\xcbj\\xa1\\x1e\\xb7\\x13M\\x9eg98\\x11\\xab\\xfas\\xd5\\x95[\\xb1\\xf8\\x8f\\xa2\\xdc,Vj\\xc3)\\xe9Y\\xb2\\x11-n$\\x05\\xb0\\xae\\x16\\xabz\\x7f\\xbd\\x11\\xb2\\x1eI\\xee\\x82E?x\\x1e\\xd6\\xe4\\x14\\x0f\\x0bO\\xe5\\xaa\\x8b\\x0d\\xfb\\xa1\\x07\\xbdl`\\x04]\\xe37\\x81\\xeer\\xb6\\xd7/;\\xe1t\\xbf\\xc1%\\x92\\xed\\xf8\\x02?\\x98_\\xe3\\xbe\\xc2\\x87\\x1fy\\x06<\\x88\\x0f\\xcf\\x80\\x8f>\\x03^\\x8d}\\xc59\\x07\\xf6\\xe3LY\\xad\\x17euS{\\xa6\\xc2+\\xbc\\xec\\xa2\\xbfj\\x98\\x10\\xd5\\xbd2\\xdfUn\\x8cn6H\\xfb*\\xba\\xba\\xd1s\\xddt64\\xdc\\xa8\\xbf?\\xd9\\xb9\\xb0\\xaf\\xd5\\xd3h{j\\x97=\\xb9\\xf1\\xb4]\\xd1t\\x8b[oNW\\xd0Ix\\xfa\\x05\\xcfx;\\xda?\\xcbb@\\xd1)\\x90jh0\\xf2\\xf4\\x00\\x89\\x05\\\"\\xf7~\\xd5\\xff,\\xe0\\xfd\\x87\\xfe\\x0fNw\\xfb\\xaa\\x9f\\x81\\x1dD\\xdb\\xb2Z\\x89/\\x0b\\xcc\\xdc?q\\xc5\\xc3S\\x1d\\xdaE_$U\\xf5\\xb2\\x85\\xb2Z6\\x92\\xf1\\xd9O\\x03\\xc5\\xf2\\x16\\xfa\\xa9\\x18\\x01\\x96I\\\\\\xdc\\xdc\\xee\\xeb\\xbaZ\\xf9\\xd2G\\xca\\n\\n\\x90\\xab/\\xf9\\x8d\\xb7-\\x1e\\x90\\x1c\\x8d\\x0b%\\x99\\xda%\\x96\\xf5v[v\\xc8\\xbe\\xef0\\xb1\\xc4\\xe7oYW\\xff\\xa18\\x81\\xc8\\x80\\xf4r\\xfd\\x7f\\xb9\\x92O\\xfa\\x93\\\\\\x00\\xfe,\\xd7d\\xbf\\x0c\\xc0A'\\x9a\\xed\\xf0e+_\\x97M\\\\`\\xe2\\xee\\xafe\\xdbjw\\x7f*\\xbbW}W\\xfc\\xc5\\x8e\\xdec\\xd3X\\xec\\xab\\xaeL\\x1f\\xb8\\xc7\\xf7\\xdf\\xb7\\xc7\\x17\\xfd\\x0b:\\xb2\\x0d|,\\xb7\\xa2\\xed\\x8a\\xed\\x0ed\\xc9Tk\\x98\\xbe\\xf4\\xb2U\\xa5\\x87\\x95\\x14\tq:\\xdb\\x94\\xf7\\xa2\\x12m;,I\\xed\\xa1\\xe8\\xea\\xedu\\xdb\\xd5\\x95\\x08\\x9c{7\\x17\\x98\\x98\\x1a\\xb5\\x86?\\xdf\\n\\xc9\\x9f\\xc6\\x16\\xa5\\xd9\\xc0\\xb2b\\xb7E\\x0b\\xd7BTF\\x89\\xe0\\xbb\\xbbr\\xe3\\xea\\xc3\\xbd\\xd5{\\xcc\\x01\\x1d\\x9c\\xb4\\xa2\\xfb^Kp\\xb4\\xc2\\x9b\\xd0\\xb4\\x9cw'l\\xec\\x92\\x05,\\xfe\\xb6/\\xef\\xeb\\xa5\\\"\\xa34\\xb8\\xef\\xe1I\\x06@R\\xf8\\xb2\\xaen\\xca\\xf5\\xbe\\x11+\\xd8\\x96\\xed\\xb5\\xb8-\\x8b{W\\x16\\xc4V6V\\xfd\\xf5#eF\\x8e8\\x160\\xefP\\xf4\\nTy\\xe0N\\xec\\xba1\\x1db_U\\xa2\\x9f_\\x8b\\xe6\\x01':hD\\xb1\\x9aK\\xa6\\x98\\xf6\\xae\\xd6\\xf2.\\xbf\\\\\\xed\\xb7\\xdf\\xd9z\\xe8\\xf7\\xbf@\\xb1\\xf9\\\\<\\xb4}\\xd0\\x8b\\x8d{|\\x99\\xf4\\xef\\xd7X@k\\xf7\\xa6T\\xf3'\\xfd\\xd6\\x8d\\x85\\x87\\x99\\x1c\\xab\\xff\\xfcl\\xb6\\x98q\\xe59m\\xeb\\xaa\\xec\\xeaF\tS\\x95\\x8e\\x9d\\xc2\\xa1K\\xf6\\x9fX\\xf7e\\xf7`\\xc1@q\\x9e\\x94\\x0fS\\xdf\\x1d\\xa4\\xd5\\x946\\xdf\\x91RG|\\xac\\xf3\\x11P|\\x04\\xd4\\xcc\\x1e\\xe5\\x08( \\xf5gS?\\x0ek5!M\\x95\\x15\\xac?\\\\\\xbe\\x1e?\\xe0\\xd5Gg\\x0b\\x9f\\xfbwf{=\\xf6u\\xcb\\xb2n\\xd0\\x87\\xcc\\xe7l\\xb0\\xf2\\x03\\xbf\\xa9\\x9f\\xc0\\xe4\\xae\\x84\\x19\\x19k8\\xf4\\x1dW\\xf5v,\\xb7\\x97\\xa7\\xdb\\x88\\x9d\\x90\\x19\\x15\\x7f*\\x9a\\xe1%\\x05H\\x7f\\xd3\\xb0\\xc8\\xf6\\xed\\xa2\\xfdM\\x99\\xc6\\xde\\xbd\\x11\\xf3K\\x8d\\xb4Cbsr>\\xf9l\\xfcp\\xf9z\\x1e&\\xde6\\xe1m\\x93G\\xdf6\\xf1\\xf2\\xf8X\\xf22HK\\x00\\x96\\xbcTv\\xe2\\xe0\\x86\\xc5\\x1aY\\xf22G\\x14Y\\xf2\\x92%/\\xff1%/\\xa3\\x11\\x80\\xf3_\\x97u\\xd5.\\xd4\\x8e\\xb3G\\xf6\\xd2\\xfc\\xa06\\x01\\xf2\\xf9W,R\\xa4\\x97R\\xfe\\x01\\x9d*O.\\\\\\xe0\\x1b\\x1d\\x87'\\n\\x0b\\xdc\\x17\\x9b\\x85\\x19\\xb2\\xac\\xdf\\xdf\\xde\\x9d\\xfe\\xc0j'\\xbc\\xcb\\x1f\\\\.\\x85w\\x97B_\\x9cYw\\xf7={\\xfb\\xe1\\x9d\\xfd\\x0c\\x95\\x0d\\x7f\\x91B\\xfe\\x1d}\\xff~~\\xe2n\\xbe[\\xb9#f/?\\xebN>}\\x1f?\\xbc\\x8bO~\\xd7\\xfe\\x1d|\\xda\\xfb\\xce\\xb8{O\\xda\\xbb\\x0f\\xed\\xdc\\x87\\xf7\\xedi\\xf5J\\xdb\\xb3\\x87z\\xefR\\x1bK\\xd9\\xb1\\xcf\\xb9_\\x1f\\xbb[\\x1f\\xb1WOnp\\xc7\\x0e.\\xb9\\xf6\\xe8\\xf3\\xed\\xd0\\x13\\xf7\\xe7\\xc3\\xd5\\xcb\\xbb7O\\xd9\\x99\\xa7\\xef\\xcb[\\x0b<\\x9f\\xf9]\\x1b\\xf7j\\xc3P\\xac\\xfa;\\xe4\\xd2\\xc7\\xe2l\\xba\\x18B\\xa3n\\xc8e\\xd9\\x8f\\xe3\\xed8\\xde\\x8e\\xb3\\xfe\\xfd)m\\xc7\\x99\\x1f#\\xaeVh^\\xa3{\\x84\\xfe\\xdf!\\x9dh\\xd6G\\x0d_'\\xceN\\xb5}\\x81uR\\xa4m\\xf8\\x00[\\x89\\x8dX\\xa3D\\xde\\xf9\\xaf\\xea\\x7f\\xeaFV\\xc9\\xf3\\x01f\\x8c\\x12o\\xf4=oFOc\\x16\\xab\\xdc\\x83\\x19\\x7f\\x97\t\\xac\\xf8U6<k\\xf0\\xa4\\xe2f\\xcdZ\\xb5=E]\\xf7d?\\xd6\\xc6\\x8a/,e\\xd4\\xf65z\\xe2X2\\x7fo:\\xfaT\\x80i\\x83\\xf2\\xd0\\xc8\\x80\\xd6\\x83\\x814\\xb9\\x9b\\xd7\\xce\\x9e\\xaf\\xfb\\xe8\\xb5X\\xde\\xfe\\xe1\\xf7/D\\xd5\\x8f\\xd2\\xab\\xa1\\xcbz\\x14s{\\xeb\\xa4^\\x88ri\\xe7\\\\\\x00\\x8eS\\xb8z\\xf8J\\xb5>x\\xfe\\xf1\\xb5\\x1e\\\\\\xbak\\xdd\\xde\\x16\\x8d\\xaf-\\xa4U\\x15\\xbd\\xaa\\xa5\\x99\\xf9\\x02\\xa4F!\\xfe\\xb1\\x11KQ\\xde\\x8b\\x95\\xabl\\xd4\\xd8\\x8dc\\xcb\\x9c\\x13\\xde\\x7f\\x17\\xab/\\xd4\\xfaNT-\\xdc\\x8a\\x8d\\x94\\\"r\\x92\\x95\\x00\\x8a\\xa5\\\\=\\xab\\xef\\x0e\\x0fK\\xe8s\\x85\\xb2Fue\\xb4.%N)\\xe5Y\\xebe)q\\xd9\\xe1\\x13\\xd9\\xe5\\xea\\xbe\\xee\\xfayfW\\x7f\\xc6m\\xda\\xba\\xf2P\\xe3\\x02\\xaf\\xf4\\xba\\xd8\\x14U(\\x8b/\\xc3\\x00Q\\xd5\\xde\\xe3>Hm\\xa6\\xd8\\xf6\\x91>\\xd2\\x0d\\xb5\\x95\\xbc\\xaeK\\xf3\\x8c\\x00\\xd9 \\x94\\x16#VG\\xef\\x82\\xcb\\xac\\xb6J\\x15\\xce'\\xfb\\xf9\\xee\\xfd\\xc7\\xb7/\\xa5\\xdc\\x11^\\xabt\\x83\\xa4\\x90?\\\\Tz;k\\x10\\xe8l\\xbd\\x8d@\\xc9\\xad\\xa8\\xe5\\xb4\\xbb\\xbb\\x96\\xeb\\xaa\\xe8\\xf6\\xd8\\x7fp\\xc9\\xd17\\xc2u\\xbd\\xae\\xa5\\x96I*\\xebi\\xecD\\xe6\\x97\\x82\\xfcx.6\\x12\\x01\\xab\\xcd\\x8e&\\xbe,\\xe5\\xb7\\xe5\\xadC7\\xbc\\xec\\x0c\\xe9L{mTK\\x9dk\\xcb\\xa8\\xc1a\\xd8\\x1b\\x93t\\x99v_v\\x1a\\xb1\\xb0:[n$L7L\\xd8)\\x1f\\x97\\xb6\\x89\\x7fl1*\\x1d\\xd4X\\x16=\\x1biWno\\x87\\xfd\\xd4G\\xc3\\x9a\\x14\\xd2@f\\xcc\\\\\\xce\t`3\\xf9\\x96\\xb3|\\x9a\\xa6o+3\\xad\\x8bi]3{\\x14Z\\x97\\xbf]\\xc8O%\\xdbWEP\\x13\\xc5\\xe6\\xe8\\xdc\\xfa\\x15\\xf4\\xe1\\xf25+\\xa4\\x00okd[z\\xf01 |\\x0c\\x88\\xdd\\xf8\\x18\\x10i|\\x0c\\xc8\\xa1\\xf11 |\\x0c\\x88\\xcb\\xf8\\x18\\x10>\\x06D\\x1a\\x1f\\x03\\xe2n\\xd3|\\x0c\\x08\\x1a\\x1f\\x03\\xc2\\xc7\\x80\\xf01 \\xd2\\xf8\\x18\\x10i|\\x0c\\x884>\\x06$C5\\xac\\x7f\\xe3c@\\xf8\\x18\\x10>\\x06\\x84\\x8f\\x01\\x99\\x1b\\xf5H\\x06>\\x06D\\x1a\\x1f\\x03\\xf2[8\\x06dJv2\\\\M>O\\xa7WM\\x00\\xe1\\xe1O\\x87\\x14F\\x8b\\x06\\xfa\\x11\\xbcENyN\\xcd'\\xe5\\x94\\xe7\\x13\\x067\\x9c\\xac\\xcb)\\xcf9\\xa2\\xc8)\\xcf\\x9c\\xf2\\xfc\\x0f\\x9a\\xf2\\x8c\\xec\\xfa0\\xdf\\xben\\x0e\\xe9\\xf6\\xe7\\x8d0Ha\\xf8\\x18\\x1b\\xf9\\xfe\\x83y\\xd9@\\xb5\\x9f\\xdc<&?\\xfbH\\xf5\\x13G\\xdf\\xe8x<Q6\\xbdY\\xbf\\xa7\\xc6\\xa77\\xcbvr\\xc2\\xeco\\x9bQ\\xdf6\\xcb\\xafTsk\\x19t\\xed\\xc7\\x8cQ\\xb3-x\\xfd)\\x12\\x0f\\xf6\\xc8q\\xcdM\t\\xc2\\xaa\\xed\\xbez\\x10\\x8c2\\x1c\\x11\\x84\\x95h;=\\x85\\xd2#!\\xaa\\xae\\xf1\\xf6\\x12\\xff00Z\\xe0\\xb0\\x18\\xa0\\xf5[4J\\xefE[6\\x02\\x871\\xbf*\\xf2h\\xc4\\x17\\x89\\x16\\xce\\xfe5-\\xe6\\xe5\\xa3\\xcdJ\\x0f\\x93OH\\xf5\\xdb\\x90\\x96N\\xf0g\\xb6\\x15\\xe8\\xea\\xfa\\x0ev\\x9b\\xd9aV6[\\xd6\\xfdg\\xbf,\\x88\\xfb\\x04\\x01\\xd3\\x92\\x82\\x18R\\xdd\\x1d-!\\x90\\xd3\\x1a\\xcc\\xcf\\xe5\\xfc\\x82\\xe2\\x0d>\\xba\\xd3h\\x93 \\x8e\\x8eCA\\x94\\x14\\xa3b\\xb3\\x08${\\x8c\\x16\\x15\\xc4\\xf8\\x90\\xcc\\xca3\t\\x89\\xfa\\x9b\\xa6\\xfb\\x13\\xbc\\xc9U\\xf2$2R\\xa6\\xc4\\x9d(\\xa4\\x0dS\\x07\\xfa!\\xee\\xabGd,\\xca\\x90^\\xbaU\\x9f)\\x84\\xbb\\x8d\\xe1\\xf5\\x85!\\x87\\x80\\x99\\x11\\xb2#K(\\x85\\xe0\\xc9\\x0c\\xa3?|qu4\\xd7\\xa0o\\xab\\xaey0Rk&\\xaf\\x8e0\\x02\\x03r!\\x1a\\xb1\\x11\\xf7E\\xd5\\xc1Vt\\xc5\\xaa\\xe8\\n_y'\\xa5U\\xf3\\n~\\x8f\\xc8\\xafH\\xa3\\x00\\xea\\x8f.g\\xd4j\\x7f\\x98\\xf6T\\x03\\x05\\xd8\\x94m\\x87\\x19\\xb2\\xbb\\xa2\\xe9\\xca\\xa5\\x840\\\\n\\x86E\\xd33s\\xe9_\\xade\\xaa\\x9a'\\xdb\\xec\\xa6\\xa9\\xb7\\x93'\\xe8u\\xc8\\xd8<\\xe4\\xce\\x01\\xa9\\x08\\xe3\\xdc\\x1dH&\\x0bL\\xd8\\xe1\\xc9\\x9at\\xaa[\\xa0\\x89\\xd0&\\xe8\\xc9wF_nG\\xe2\\x8a6\\xd2\\xa3\\x81\\xfcx\\xe0\\xf5\\xc1\\xccx}\\xc0\\xeb\\x03m\\xbc>\\x98\\x1b\\xaf\\x0fN\\xbb> \\xb5|\\xd2;\\xa6\\xd7\\xfb\\xa0\\xce\\xeeLZ7\\xdf\\xde\\x16:#\\xd9\\x16JO2\\x0c\\x18<\\xd5\\x98\\xf4Z\\x8fC3\\xf1V%\\xd9\\xfa\\x9e\\xef\\xc9\\xbf\\xa5E\\xd2\\xac\\xbc'|\\xd3\\xe5\\x18\\xc6\\xc7\\xeaO\\xc5\\xac\\xd5K\\x19{\\xe1\\x87\\xec\\xa7\\xa3\\xa3F\\x8e\\x973R\\x9c\\x1e,\\xcd\\x9f\\x06\\xaa\\x8d\\xd3\\x83\\xe1\\xb7\\x9c\\x1e|P\\x1d\t\\xecL\\xf0\\x91\\xb4\\xbc\\xe0)V\\xe3T=\\x1b_$\\xe7\\x07\\x1f\\x04\\x88\\xf3\\x83)\\x13\\x1ep~0\\xe7\\x07;\\xaf\\xe4\\xfc`i\\x9c\\x1f|h\\x9c\\x1f\\xcc\\xf9\\xc1.\\xe3\\xfc`\\xce\\x0f\\x96\\xc6\\xf9\\xc1\\x9c\\x1f\\xcc\\xf9\\xc1\\x9c\\x1f\\x8c\\xc6\\xf9\\xc1\\x9c\\x1f\\xcc\\xf9\\xc1\\x9c\\x1f,\\x8d\\xf3\\x839?\\xd80\\xf7\\xc7-\\xe7\\x07O~\\xe7\\xfc`\\xce\\x0fF\\xe3\\xfc\\xe0\\x8e\\xf3\\x83\\xad.\\x7f\\xf3\\xf9\\xc1m\\xb3\\\\L\\x8f3p\\x95\\xfb\\xf0\\xcaI\\xd9Gv\\x8bQ\\xf6\\x81@\\\"$/r^\\x83\\xd8\\\\1G\\x1dVmG\\xac\\xc3\\xe1\\x95Qu\\x98\\x8a\\xb6g\\xac\\x01giS\\xa2\\xc5Y\\xdah'\\x0en8\\xbf\\x98\\xb3\\xb4sD\\x91\\xb3\\xb49K\\x9b\\xb3\\xb4\\x0f\\xb3\\xb4\\xf7\\xd5u-\\xeb\\xb70\\xa8=\\xf88\\xeaQi\\x9f\\xb4\\x0b\\xd7\\x99i\\xc33\\x0eNO\\x1b\\x9c\\xc9\\xf4\\xee1\\xb4\\x07k3\\xdd\\xc0\\xec\\xc7\\xa8\\xd9J\\xa0nx\\xb2\\x19\\xe0c\\xe0\\x9fX\\xfa\\xf7\\xb4\\x85x\\x92r\t8\\x17\\x05*\\x02\\xdb3\\x83y\\xd8^Tzp\\xe7D\\xefh'\\x9ae\\xaca\\xfc)f\\xde\\x1a\\xfe\\xe3d(E\\xa5\\x07\\x11^\\x08\\x1a=-\\x88\\xfa\\x02\\xd1\\xe6\\xe9@\\xa5=\\x11h\\xec\\xdd\\x01\\x7f\\xb4\\x0c\\xa0\\xa8\\xec\\x9f\\xe8\\x18\\xd1\\xb2~\\\"\\xe34\\xcb\\xf6)-\\x89>\\xe4 \\xd12|\\xa2\\xb2{\\xc8A\\x8a\\xab\\xb6/\\xa3G\\x9d\\xb5\\xa7.\\xf10\\xab\\xd0\\xfaif\\xb5\\xdf qG\\x9d\t\\x08\\xfd\\x07\\x12)\\x18_3\\x08\\x9e\\xcaO\\xaa\\x92\\xe1\\xad\\xd3\\x0bfY\\\"\\xcc\\x12p*c\\x9d\\x12L\\xbf\\x89K\\xbd\\x99\\x14s\\x9e\\x96k[\\x1d\\xf9\\xd2s)u\\xb6\\xd4\\x16\\xda\\xaen\\xd4\\x82L\\xa6\\xe5\\xf6\\x1f\\xc7\\x1ba\\xa6\\xdeZ]\\x8d\\xc5\\xf3\\xe4\\xe2\\xca\\xd3\\xe3\\xb5G\\xe3\\xec\\xfe\\xaa\\x0fk\\xdf\\xdf_\\xc8\\xd5\\xb3X\\xc9\\xb4\\xe0y\\xad8\\xb7C\\x1a\\xe7v\\x8c\\x7f\\xa2\\x06\\x93s;\\xe4\\xe7\\xe0\\xbc\\xbf\\xd3\\xcf\\x80\\x9by\\xb3p\\x881\\xf5\\xc3\\xfb\\x04>\\x1bN\\x1b\\xe7~\\xe4\\xf9\\\\\\xe2\\xdc\\x0f\\xce\\xfd\\xb0\\x1b\\xe7~H\\xe3\\xdc\\x8fC\\xe3\\xdc\\x0f\\xce\\xfdp\\x19\\xe7~p\\xee\\x874\\xce\\xfd\\xe0\\xdc\\x0f\\xce\\xfd\\xe0\\xdc\\x0f4\\xce\\xfd\\xe0\\xdc\\x0f\\xce\\xfd\\xe0\\xdc\\x0fi\\x9c\\xfb\\xc1\\xb9\\x1f\\x86\\xb9?n9\\xf7c\\xf2;\\xe7~p\\xee\\x07\\x1a\\xe7~t\\x9c\\xfbau\\xf9\\x9b\\xcf\\xfd\\xe0\\xac\\x838J7g\\x1d\\x9c0\\xb8a\\xbe<g\\x1d\\xe4\\x88\\\"g\\x1dp\\xd6\\x01g\\x1d\\x1cf\\x1d\\x0c\\x141O\\xaa\\xc1\\x7fZR\\x0d~\\x1a\\xee\\x9b$\\x18\\x8c\\xee\\xa0\\xacnj\\xd9b\\xf1\\xc0\\xb8\\xe1\\xc1\\x83/_B\\x81\\xaa\\x94\\xe5q\\xea\\xea'\\x9bM0\\x0f\\xa8i\\xddW\\xa0\\x8a\\xe8\\xd3\\xaf\\x1e\\x91a?\\x7f\\xe4d\\xc17\\xa5\\xd5\\x8f\\xe1r\\x90\\x1eM\\x7f\\xffKR\\xf4A\\x13\\xf4\\xcbJ.\\xec\\xed\\x1f\\xb0\\xcb\\xfe\\xf5V\\xed\\xbe]\\xec\\xf6\\xd7N\\xaa`0\\xba@\\x880\\x10\\x089@\\x8b0DD\\x19\\x12\\xc89^gv\\x84\\xc6\\xb3a\\x99\\x9b\\xa4\\x03a\\xa2\\x0e$\\x90u\\xfc\\x15(\\xba[2a\\x07r\\x91v \\x91\\xb8\\xe3u(\\xf5\\xe1\\xa9\\xe4\\x1d8\\x9e\\xc0\\x03\\xd1$\\x1e\\xaf+E.\\x88\\\"\\xf2@n2\\x0fD\\x12z \\x96\\xd4\\xe3o\\xd9\\x03\\xe1\\x87J\\xec\\x81\\xdc\\xe4\\x1e\\xa0\\x11| '\\xc9\\x07\\x8e&\\xfa@\\x1a\\xd9\\x07r\\x11~ \\x89\\xf4\\xe3\\xef\\x0eE\\xff\t\\x1c$\\xfe\\xc0i\\xc8?pB\\x02\\x10\\x9c\\x86\\x04\\x04\\x91D H#\\x03\\x85\\x86`\\x1a!\\x08\\xf2\\x92\\x82 \\x82\\x18\\x04\\xf1\\xe4 H \\x08\\x11\\x86\\xcc\\xef\t$!\\xc8A\\x14\\x82\\x10Y\\x08\\xe8\\xcb3\\x02i\\x08\\\"Wq\\xd1\\xe4!\\xaf7I,\\\"\\x10\\x88 \\xa2\\x94\\x19\\x89D\\x10E&\\x82\\xdc\\x84\\\"H$\\x15\\xf9\\xdbU\\x1b&\\x16A:\\xb9\\xc8\\xe9\\xaf\\x7fb\\x88`\\x04\\xd9HF@\\xe7\\xca\\x00\\x85l\\x04q\\x84#\\x08\\xe1\\xf9\\x89\\xc4# \\xf8\\xf5@\\x86\\x99HH\\x90\\x14\\\\:\\x19\t\\x08\\xb5L %A*1\t\\xfcQ\\xcdGP\\x02:I\t\\x88D% \\x93\\x95\\x80\\x16\\xf5x\\xd2\\x12D\\x11\\x97\\xc0K^\\x82\\\\\\x04&\\x88%1A\\\"\\x91\t\\xe2\\xc8L@x\\x0b>R\\x13P\\xee\\xa7\\x93\\x9b #\\xc1\t(E\\xf3\\xf4\\xb3|d'\\xa0\\x10\\x9e\\xe0\\x08\\xd2\\x93\\xd3a'S\\xb7\\xdd\\xc4'\\xc8M~\\x82 \\x01\\nRIPNo\\xf8\\x05\\xec\\xdf\\x0c \\x90\\xa1\\xc0\\xcb\\xd9\\x00/)\\n\\x92\\x88QNW^\\xc2\\x14\\xa4\\x92\\xa6\\x9c\\xdep\\x95\\xe9\\xd9\\x93\\xcbG\\x9e\\x02\\x12\\x81\\n\\x12HT\\x10G\\xa4\\x82\\x142\\x15D\\x13\\xaa 0\\x97\\x07H.\\x10At\\xa1\\x92\\xab \\x85`\\x05\\xb1$+\\xf0W<\\x85l\\xe5tfP\\x99\\xa8]\\x86F\\xba\\xf2v\\x88j\\xed'^A^\\xf2\\x15\\x84\\x08X\\xe0'a9\\xefI%gA\\xc6\\xb6\\x1bA\\xd2\\x82(\\xa2\\x168\\x97/\\xffQ\\x94\\x1b\\xb1\\xf2c_s\\xec}j\\xd4\\x1d\\x02|\\x12h\\xfd\\x84\\xcf\\xb7B\\xed\\x13\\x99*$}\\x0b\\xbf\\x16\\xa2RW\\xbb\\xdfpSo\\xa5\\xc8\\x89XA\\xdb\\x15\\xdd\\xbe\\xc5\\xcd\\xf4\\x03\\xbd\\x124\\xbc\\xc4UKj\\x0d\\xd4\\x83\\xca\\xb9&.\\xfe\\xee\\xbc\\xed;,\\xe7(\\xdf\\xa7\\xfe%\\xc1\\x13\\xfb-\\x84\\x9d&Q\\xed\\xb7\\xee\\xf5\\xff\\x0b\\xf8\\xd3\\xfbwo\\x16W\\x1f_}\\xfct\\xb5\\xf8\\xf4\\xee\\xea\\xf2\\xed\\xeb\\x8b\\x1f/\\xde\\xbe!\\xdf\\xd1\\xff_\\xe4\\xe5\\x17\\xef\\xfeL\\xbc\\xde\\xeb\\\\\\x8bQDU\\x01E\\x8b\\x1e\\x01\\xbaV\\xeaH\\xd8\\x8c\\xc1 (\\xca]|\\xf9\\xb7\\xef\\xcaj\\xb9qO\\xfc\\xad\\xd8\\xdc\\xbc\\x18\\xf5\\x83\\x1c\\x8d`\\xa4a\\xe0\\xc9\\xcd\\x8fP\\xb5\\xf9#GT^\\xf2\\x83\\xd4\\x8fe\\xdb\\xee\\x11\\xb1pOE\\x06f?zul\\xbd\\x9a\\xa5;\\xba\\x02\\xc3u3\\n\\xe9\\xf8{'\\x9am\\x0b\\xf6\\x93sG\\x0bh\\xf6ec\\x05l\\xeb\\xaa\\xbc\\x13\\x16\\xad\\x93\\xd1\\x08/\\x18\\\"b\\x04\\xe3S\\x8d\\x03\\xedo\\xf7\\xdb\\xa2z\\xd1\\x88b%idrE\\x17\\x8a\\x11P\\xe2\\x04\\x8a_\\xd09\\xf9\\x15p\\x9a:\\xea\\xc7\\x9a\\xa2a\\x1a=\\x1d\\xff\\xd8\\x96\\xeb\\xaa\\xe8\\xf6\\x8d\\x80\\xef\\xc4\\x17\\xffG\\xf2\\xa7\\xcb\\xba\\x91\\x9c\\xd0\\xff-\\x1e\\xae\\x8bV8\\x07o\\x80\\xcf\\xe2\\xba-\\xbb\\x1cX\\xc2\\xa4\\xc6\\xca\\xad\\xb5F\\xfao\\x9b\\xb2\\xba\\xf3\\x0d=\\xcb}Sv\\x0f\\x0b\\xf9\\xad\\xb2\\xf4*8\\xa6\\x940\\xf0N\\xe6\\x8f\\xb7\\xd6Dl\\x8br\\x13\\x84\\xe0\\xb5+P\\xae\\xdcuv\\xca\\xf2\\x8c\\x96RU\\xe5VO\\x04\\x08z\\x0d\\x95P\\x7f\\xb5\\x97j\\x94\\x93\\xf5\\xebh\\x12\\x8aE\\xd1\\xce\\xa4\\xbe\\xa1y\\xb1\\xf4\\xdby\\x0e\\xe5\\xcd\\xf8\\xc7\\xe7rDUWx\\xa8:Z_\\xb3l\\x0f\\x96w\\xeb\\xbd\\xa1\\xdf\\x17\\n\\x91OD3\\\"@!\\xe1\\xcc\\xf8 IiLO\\x88\\xb6e5\\xc8g:\\xddM\\x17\\x92]\\xad\\x95\\x14E(@\\xcbz\\xbb-\\xdb\\x96:i\\x8e\\x97O&F\\xe3\\xe71\\x87\\xe3\\xc4S\\xde\\xf8\\xccESt~\\xc1Y\\xea[\\x01\\x8b\\xdfIE\\x95\\x92\\xa7q\\x91\\xd7\\x17:@\\xc2\\xc2\\x00\\xb2\\xa3\\x9e\\xac\\xfc\\xde%L{\\xa4x\\x011f\\xa0\\xca\\x14\\xda\\xf0't\\x08m1\\xa1\\x05\\xf5x\\xfd\\xe9c4\\x1b\\xf9\\xf3\\xf2\\xb6h\\xd6rM\\x18t3\\xae\\x06\\x9f\\x83L\\x1d\\xbb\\x91\\xe40\\xbfB*\\xc0\\xb6\\xf8\\xb2\\xf8\\xca\\x01\\xd0E\\x98\\xb4\\xabm\\xf1\\xa5\\xdc\\xee\\xb7\\xf3\\x88\\x04\\x9d\\xe1\\xe88\\xf6\\xfceQ\\x81\\xb8\\x17\\x8d\\netl\\x90\\xcd\\xf2\\x14Bd\\x94\\xc4\\x1a\\xa9UQ\\x06\\xf5te.D#\\x8aV\\x1c\\x90\\x80\\x8dHc\\x90\\x82\\xae\\xc2A\\xdc\\xef\\xfa\\xd9!(\\xd7L\\x0c\\x1cu\\xc6\\x81\\xc8\\x00\\x1b\\xa5\\xd4\\xfdPB\\x0c\\xf2\\x07[\\xaf\\xfc\\x1c \\xf1\\xe1\\x9bZ\\xd9\\xe3\\xb2-\\xabE\\xff\\xa1j\\x1c5p\\xc4,L\\xad\\xa7\\xe5\\xa9\\x07\\xdb-\\xcfZ\\xf9\\x05\\x0d+\\xb1\\xdc\\x14\\xf3\\x14\\x94\\x993\\xd9\\xe2\\xd4\\xd5\\xda\\xa1W\\xe3\\xc8\\x96\\xac\\xf1?-\\x97S*4d$\\x18\\xdfYC-\\x9eCW\\xafq\\x07L\\xe2\\x0e\\x9dN\\xee\\xb1\\xba*\\xb6F\\x12\\x90\\xbd\\xf8?\\x19\\xf1\\xe9W\\x0e\\xfas]\\x89\\x01\\x94\\x0d\\x88/\\xf8\\xc6\\xb1u\\xc8\\xb5FY9f\\xfb\\xabM\\xd1\\xde\\xf6s\\x9dN\\x86qq\\x95\\x8b\\xfe=`WUp\\xd6\\xe41\\xcf\\x91\\xe1(\twu\\xd3\\xb8f\\xc2e\\xb1Y\\xee7\\x03\\x8as\\xb3\\xef?\\xc9\\xec\\x0f\\xdcW\\xe6\\xc1\\x14}\\xec\\xea}\\x07e'SC\\xaa5\\xd4\\xf7\\xf2\\xc3v\\xd8s\\x80\\x9foE\\x85U\\xb5W\\xa0\\x99\\xee\\xe0\\xd8\\x9f:]\\xc7>\\x9f\\x8dIe\\xdb/\\x0eVe\\xa7Yh\\x85\\xd1\\xde\\xac\\xfe>\\xdf\\xd6\\xad\\x18\\xf3\\xb8\\xec\\x0f5_c\\xd9N\\xf8\\x9eF\\x8b\\x90U\\x1b\\xab`\\xf5\\xb4*\\x07\\xc8\\x16\\xf7\\xdd%i\\xd1\\xfe\\xd4\\xc9\\xfb;\\x83\\x9fj\\x19\\xd6]\\xfdY4:\\xf7R\\xbf.\\xb1\\x920\\xac\\xb3\\xd9\\xea\\x0dZY\\x05\\xfb\\xd3\\xb6\\xfbMW\\xee6%\\x16n\\xfa\\xec\\x83\\x1b&\\xbd\\xceH$\\xb2\\x1eU\\xd6>\\xc3\\x04#)\\xa0\\xed<e\\x82\\xf5\\xac\\xa5M\\xaa\\xcaz\\xd6\\xa4`\\xfe\\xe6\\xf4\\xac\\x0f\\xda\\x85L4\\xb4d\\xe0yU\\xac-{\\x8a([m\\xcb\\x1cd\\xb1je,V\\x9dg\\x85\\x19\\x9b\\x0f\\x87\\xcd\\x96\\xc5\\xaa\t\\xb9o]\\x8e\\xbc\\xb7\\x94\\x9c7\\x16\\xab\\xce\\x98\\xdf\\x16\\x93\\xdb\\x16\\x95\\xd7\\xc6b\\xd5\\xc7\\xe6\\xb0%\\xe4\\xafe\\xc9]\\x8b\\xcf[c\\xb1\\xeac\\xf2\\xd4br\\xd4\\x12\\xf2\\xd3X\\xac\\x9a\\xc5\\xaa\\x03\\xab\\xa4\\xe8|3\\x16\\xab&\\xe5\\x96\\xa5\\xe4\\x95\\xb1X\\xb5\\xeb\\xb2`\\xfeXD\\xee\\x18E\\x8a9&g\\x8c\\xc5\\xaaY\\xac\\x9a\\x92\\xff\\xc5b\\xd5\\xd2Rr\\xbc\\\"\\xf2\\xbbX\\xac:C\\xfeV0w+5o\\xcb9\\xdb\\xb0X\\xf5\\xa1\\xb1XuB\\xbeU8\\xd7*6\\xcf*\\\"\\xc7*:\\xbf*.\\xb7\\x8a\\xc5\\xaa\\xe3\\xf2\\xa7X\\xacz0\\x16\\xabV\\xc6b\\xd5,V\\xcdb\\xd5\\xe3o\\xc9\\xc1\\x0d\\xcb,\\xb3Xu\\x8e(\\xb2X5\\x8bU\\xb3X\\xb5O\\xac\\xfa\\xfc\\xd7\\xe1\\xdf\\xf87|h\\xb4z\\xf5 ^m\\xd0\\xfd\\x1c\\xba\\xd5\\xe3%\\x83\\xbf]Q\\x0e\\xb3\\xfeD\\xbe\\xfa\\xf0A\\xea\\xaa\\xa7/[\\xed\\xe2\\x8c$\\x11\\xdbh\\xe2\\xd3A\\xf4\\x83\\x02\\x1f\\xe4\\x96\\x9d\\x8e\\x17\\x9d\\xa6IN{\\xa3\t\\xc1\\x88\\x02\\x81PC\\x88(\\x90\\xa3\\n\\xa9\\xb4\\x1a\\x8f\\xbf(\\x91\\xe9\\xac\\xd4\\x9a \\xb9&7\\xbd\\x86N\\xb0\\xc9D\\xb1I#\\xd9x\\xdcE\\xcaJ\\x1fI\\xb4\\xc9M\\xb5\\x89$\\xdbd\\xa6\\xdb\\xc4\\x11n\\\")7\\xbe6<\\x90q\\xa8\\xa4\\x9b\\xcc\\xb4\\x1b\\x12\\xf1&#\\xf5\\xe6X\\xf2M\\x12\\xfd&\\x13\\x01'\\x85\\x82\\xe3qF\\x16\\x8e>\\x01\\x0d\\xe7tD\\x9c\\x93Pq\\xe2\\xc88\\xd9\\xe98TBNVJ\\x0e\\x9d\\x94\\x13M\\xcb\\x89'\\xe6\\x04\\x87B\\x9aD\\xf4\\xd1\\xe4\\x9c\\xa0<4iAE\\xa0\\xe8\\xc4\\xac\\xba\\xa2i:\\xbeI\\x90,\\nM+_F\\xb2N\\x0c]'3a'\\x8d\\xb2\\xe3kA$!\\xe8D\\xda\\x8e\\xc3[G\\x12\\x81\\xceC\\xdd!\\xf3O\\x08\\xf4\\x9d(\\x02OH\\xe54\\x85\\xc4\\x13\\xf2\\xe9\\x84\\xde2Qy\\xe2\\x83I\\xa7\\xf3\\x84\\xea\\x96@\\xe9I$\\xf5\\xf8 \\xccl\\xc4\\x1e2\\xb5\\x87F\\xee\\xa1\\xd2{\\x08Q\\x8e\\xa7\\xf8\\xc4\\x90|\\xfc\\xb2\\xceY\\x88>\\x91T\\x9f4\\xb2O\\x14\\xdd'\\x14u\\xbf\\x94s\\xe0^:\\xed'\\x1f\\xf1'X(g\\x0f\\xcaG\\xff!\\x10\\x80\\xd2)@\\x0ew]P\\xb89+\\x0d(D\\x04J\\xa4\\x029|\\x85\\x05\\x9b\tt \\xbfX\\xb3O\\xaa97)(;-\\xc8M\\x0c\\xcaI\\x0d\\xa2\\x90\\x83\\xe2\\xe9AQ\\x04\\xa1\\x04\\x8aP,I( \\xbf\\xec/\\x1d\\x95\\xb6A\\xa5\\n%\\x90\\x85\\\"\\xe9B\\x9e\\xea\\xa6P\\x86\\x1c\\xae\\x08\\x82\\xcb)\\xb4!O\\x93\\x0f\\x8b-g\\xa4\\x0e\\x05\\x85\\x96OA\\x1f\\xca\\xd5\\x16#(D1$\\\"\\xfb\\xd2\\xc1'\\xa2\\xdcY\\x11a\\xd3h\\xdf\\xd3)\\xf2\\xc9R&\\xd9\\xe1\\x8f*\\x9e\\xec\\x93N\\xa6\\x95<I69Z49\\xb8\\xff\\xe2\\x13L\\x8e\\x95K\\x8e\\x12K\\x8e\\x93J&\\x0b%'\\xc8$\\xfbD\\x92\\x83\\xf1\\xa3\\xbd\\xecc\\xe5\\x91)\\xe2\\xc84i\\xe4L\\x15\\xca%\\x8aL\\x97D6\\xcbuT\\xc1\\x87\\xab\\x8e\\x12C\\x0eh\\x1dv\\xc7\\xa3\\xd5A\\x11\\xe4\\xe0\\xab\\x04rT \\xa3\\xfcqP\\x052,}\\x9c\\xb9f\\x99E\\x8f\\xc9\\x92\\xc7A\\xc1\\xe3\\xf8z\\x1e+vL\\x97:\\x8e/\\x9b\\xf7\\x1dd\\x139\\xa6J\\x1c\\x07\\x05\\x8e\\xe3+\\x98,nL\\x936\\x0e\\x16(,kL{\\x1f9%\\x8d\\x8f\\x114\\xa6\\xc8\\x19\\x93\\x83\\xe2\\x17\\x96\\x8c\\x0dL\\x8c\\x8c1e\\x96\\x00\\xb2\\x88qH\\xc2xR\\x93\\xe3\\x05\\x8c3LTt\\xe9b\\xda[\\x80x\\xd9b\\x94&\\xf6\\xf8;J\\xb48\\x18# \\xc5\tHr\\xc5\\xc1\\x06\\xaf\\x8d\\x1eL \\x0b\\x15\\x9bB\\xc4\\x01\\x87d)^\\x9aH\\xf1\\x89\\xaa\\x1d#O\\x8ccY\\xc0a\\x0eq\\xe2(i\\xe2\\x13\\x06\\x86$J<\\x88\\x0e\\x07\\x1c\\x06%\\x89\\x83\\xa1!\t\\x0e\\x93\\xc2A\\x9b\\x13 *h\\x99\\x85\\x86=2\\xc3d\\x91\\xe1`,h\\xb5\\xcb(/\\x1c-.L\\x94\\x16\\x0eW$MVX\t\\xc6Z\\xfc\\xb9E\\x85sJ\\n\\x13\\x05\\x85\\xa3\\xe5\\x84M\\xe9`{\\xe5\\xdcb\\xc2y\\xa5\\x84)B\\xc2ye\\x84\t\\\"\\xc2I\\x12\\xc2Z.\\xd8\\xe6/( \\x9c&\\x1f\\xac\\xb6#-\\xfe\\xdc\\xe2\\xc1d\\xe9\\xe0I\\x9f\\xa2\\x8a\\x98\\x0e\\x1a\\xa6\\xc7\\x08\\x98\\xb2~\\xa96\\xd6/e\\xfd\\xd2\\xd1X\\xbf\\x94\\xf5KG\\xcb\\x9aP\\x11\\x93N\\x11\\x95L\\xc1\\xfa\\xa5\\xc7\\xa6P$$PdI\\x9f\\x88O\\x9e`\\xfd\\xd2c\\x92&bR&2'Lt\\xa4t\\x89\\x8c\\xc9\\x12\\xd4T\\x89..Q\\\"6M\\x82\\xf5K'\\x16\\x9d\\x18\\xc1\\xfa\\xa5\\xa4t\\x88\\x94d\\x08\\xd6/u]\\x16L\\x80\\x88H\\x7f\\xa0\\xa8s\\xc6\\xa4>\\xb0~)\\xeb\\x97R\\x12\\x1cX\\xbfTZJJCDB\\x03\\xeb\\x97fH`\\x08\\xa6/\\xa4&/8g\\x1b\\xd6/=4\\xd6/MHR\\x08\\xa7(\\xc4&(D\\xa4'D''\\xc4\\xa5&\\xb0~i\\\\2\\x02\\xeb\\x97\\x0ev\\x8a\\x04\\x84\\x1cm.\\\"\\xf9\\x80\\x9ez\\xf0\\x8f\\xaa_:\\x95is\\x95yz\\x95\\xfd\\xc4\\xcfS\\x97\\xf9x\\xe9\\xba\\xdb\\xb2\\xed\\xea\\xa6\\\\\\x16\\x9bEY\\xdd\\xd4\\xe7\\xbf\\\"\\xe9\\xd0\\xa3M\\xf7\\xcf\\xc3\\x1d\\x17\\xd5M=\\x88\\xd1\\xf5\\xf5\\x1e\\x9d\\xcd\\x15\\xe9\\xd0\\xab\\xae\\xf9Dwn\\xea\\xef\\x1b\\x1d\\x84'\\xaa9\\xd7W\\xf1\\xf0caR\\x94\\xfe\\x92Is\\x98\\x87E\\xc9Y\\xda\\\"3\\x9a\\xb3l\\x10\\x84\\xffnE\\xb1r\\x91\\xd7\\xbdn!\\xe8\\xba7\\xb5\\x0b\\xeb\\xe1\t\\xe1Y\\xa3\\xd7E[.\\xe1zS/\\xefd\\xbd\\xdd\\xd7\\x87\\xca\\x04\\xa4r\\xf5&\\x9f\\x96\\x89\\xd4E8U\\x15\\xad\\xd8\\xed\\x1e\\xf7\\x91\\x94\\xad=\\xb4\\xd7Z\\xdf\\x0f\\x96\\xc5\\xae\\xdb7\\x03IU\\xff\\xdc\\xec7\\x02\\xf3-vM\\xdd\\xf7\\x1f\\x7f\\x11\\x8b\\xe1}\\\"\\xe6\\xd6\\xff\\xcf\\xf2\\xb6(\\xab\\xe7\\x9e\\xefV%\\xcd*9\\x9f\\xfd|>\\xdc\\x04\\xab\\xa2+\\xfa\\xb8\\xec\\x97X6\\xf5\\xe9\\x82\\xa5\\xf28\\xd4[\\xa4#\\x88\\xf2\\xccq\\x9a3Z\\xdbI6PST-\\xce\\xef\\xdbby[V\\x0e9\\x19\\xc9\\x10+\\xabE\\xe9H\\xa0\\x03\\xda+\\xf5\\xf1\\xcd\\x81\\xe6\\x82\\xc2;\\x07xD\\xd6\\x9e\\\\A\\xcb\\x17\\xe8\\x8f\\x0e\\x8e\\x00\\xbbF\\xdc?\\xf2\\x00p[\\xb4\\xb7\\x99;\\xa3W\\x1aI\\xae~\\xbaE+\\xba\\x85o\\xd8\\xd5F\\xaa)\\x90k\\xdb\\x9b\\xe7\\xe0\\xe8\\xc9e^2\\xcc\\xdc(\\xcdN[8\\xe4\\x10\\x13v\\xa0\\x87~hh\\x97E\\xd3\\xb5\\xa2\\xfbg\\xf9\\x06|MW\\x12E\\xbb\\x85\\xbf\\xc8\\xa4\\xa2\\x92\\x8a\\xa8\\x8a\\xd7?NH\\x14\\x00;C?\\xec9\\xee\\xe9\\xff\\xf4H\\xc5\\x1b\\x95\\x89\\x1f\\xe9\\x81\\xf3x\\xdc4\\xf5V\\x8f\\xe3P\\xef\\xbb\\xdd\\xbe\\x1b\\x7f\\x1b\\xc7\\x0e\\x877y\\x10\\xc0\\xa3\\xd7a\\x14\\xcc}\\x9c\\xe7\\x15\\xbb\\xdd#=I\\xf6\\x0f\\xc56x\\xa4G\\x8a\\xfbr%\\xaa\\xa5x\\xa4\\xc7\\x0d\\xedo\\\\\\xfex\\xa6\\xa5~\\x04\\xae[\\x11\\xd0\\x81\\x86l\\xe5\\x9b,\\xeap$\\x9b|E\\x0c\\xcb$\\xb9\\xc9\\x08\\x1fE\\xb5\\x12\\xcd\\xb6\\xac:5\\xa8\\xe0\\xf4c[\\xd1\\xdc\\x17\\x9bVx\\x13\\xdf\\xec\\xe4D\\xf0\\x11\\x14\\x816\\x9bQ\\xe61\\x9a\\xe26\\x1a)\\xd61+\\xe4(\\x0dn\\xaf\\x1f\\x93\\xb0\\x1f\\xaf\\xc4\\x8dF\\xd3\\xe3F#D\\x1f\\x88o\\x00\\x94;\\xbfB\\xf7x\\x1d\\xe1\\x0d@\\xe4[\\x80\\x04*i\\xd0ag\\xe5\\x14\\xf8\\xbe\\x14\\xd0\\xc8\\xd4\\xd2\\xa0\\xa7\\x91z\\x1a\\xa2\\x98j\\x8b\\xa5\\x9a\\x06\\x1d\\xee\\x8a\\xee\\x96L9\\xd5f\\xc3~\\xa2\\xa9\\xa7\\xda\\xe8\\x14\\xd4\\xa0+\\x93\\xa2\\x1aAE\\xd5v$%U[\\x1c55\\xe8N\\xd1\\xe6\\xa2(\\xaa\\xdab\\xa9\\xaaA\\x877u\\x13EY\\xd5\\x16E]\\x0dzKQ\\x03G#QY\\x83^\\xa6TW\\n\\xa5U[6j\\xeb\\xe8\\xf0\\x18\\x8a\\xab\\xb6\\x04\\xaa\\xab\\xb6,\\x94Wmt\\xeak\\xd0\\xd5\\x84\\x1a\\x1b\\xa6\\xc0j;\\x01\\x15V\\xdb\\xa9(\\xb1\\xdaN@\\x8d\\xd5\\x16C\\x91\\xd5F\\xa6\\xca\\x06=\\x99TZ\\xd9\\xbe\\xc3\\x94YmQ\\xd4\\xd9\\xa079NP)\\xb4\\xda\\xba8*\\xad\\xb6XJm\\xd0a\\x8c\\xfe8\\xda\\xd1\\x14[m\\x01-r\\xb4\\x88\\xa5c\\xf0si\\xb4\\xd8Uf\\x14\\x157\\xe8\\xad\\xd3T]\\x02%W[L\\x89#)\\xba^_\\xd3\\xd5,\\x81\\xaa\\xab-\\x8a\\xb2\\xeb\\xf5\\x14T7GK\\xa1\\xf5\\x86\\xdb'I\\xe9\\x1c-\\x85\\xe6\\x1br\\xd8\\x91T\\xcf\\xd1\\xf2\\xd0~\\xb5\\x11\\x19\\xac\\xda\\x824`m\\x11t`m\\x01\\xd9`i)\\xf4`m\\x14\\xff^\\xe5\\xd1l\\xb4ami\\xc1\\xa7\\xd3\\x88\\xb5Qj\\x9e@+\\xd6\\x96D/\\xd6\\x16\\x88x>\\xba\\xb16\\\"\\xedX\\x1b\\x85~l\\\\K\\xa0!k#\\xbe\\x95xZ\\xb26:=Y\\x9bO\\x7f\\x1d-\\x0b]Y[\\x14mY[\\n}Y[\\x04\\x8dY\\x1b\\xe5-\\xf95\\xda\\xd1H~\\xe84gm\\xb9\\xe8\\xce\\xdaH\\xc5\\x0c\\xf4\\xd9x\\x1a\\xb4\\xd7\\xdd\\xf5C\\x98\\x0e\\xad-\\x85\\x16\\xedu\\xa8y\\x07~ew\\xb4\\x14\\x9a\\xb4\\xd7a\\xa7w\\xf7<*\\xefh\\xb1\\xb4i\\xaf\\xb3\\x91RM\\xd8X!\\xd0\\xa8\\xb5\\xf9\\xc4\\xa7\\xd1|\\x1a\\xf0h\\xf1\\xf4j\\xaf\\xbb\\x80J\\xbc\\xbe\\x88N\\xc1\\x0e4\\x10\\x83\\x9e\\xedQ\\x8cG\\x8b\\xa5d{\\x9d}\\xfa\\xf0\\x973\\x025[[,E[[\\x04U[[4e{v#\\x91\\xba\\xad-\\xb4\\xde\\x08\\xaaz\\xa3Q\\xe9\\xb5TJ\\xf7\\xe07\\x96\\xda=\\xdc\\x18C\\xf1\\xd6\\x16\\x08F\\n\\xe5\\xdb\\xeb\\x90\\xa0B\\x8f\\x96B\\x01\\x0fv\\xa6\\xb0\\\"=Z<%<8\\x8a\\x07\\xd4\\xe9\\xd1<\\x14q\\xef}\\xa9\\xf4qm9\\xdb{\\x04\\x9d|pM\\xa6\\x95ks\\xaf\\x8b|\\xea\\xf6h\\xb8\\xd3\\xe4\\xd3\\xb8G\\x8b\\xd9\\x89I\\xd1\\xbb\\xf7\\xb7\\x84\\xa6\\xde\\x92U\\xef\\xd1|\\xda\\xf7h15J\\xd2\\xc1G\\x8bV\\xc3G#\\xee\\x00\\xfa\\x94\\xf1\\xd1b\\xf5\\xf1\\xedwyU\\xf2\\xdd\\xb7\\xb8\\xb5\\xf2m\\xf7\\x04\\x1f\\x92\\xa0\\x9b\\x8f\\xe6S\\xcfWW\\xd0\\xe2\\x1d\\xd3h\\x8e\\xd5\\xd3G\\xa3\\xa8\\xea\\xa3\\xd1\\xb4\\xf5\\xd1NP\\xdd\\\\j\\xfbht\\xcd}4\\xb3\\xa4\\xd9*4\\\\{\\x94\\n?\\x1aA\\xc27;S%\\xa8\\xce\\x8fFl\\x0c\\x10\\x19?\\xc8\\xa8\\xd7\\x8fF\\x8a!E\\xbb\\x1f\\xed\\x84\\xf5\\x8eT\\xf3\\x0f\\xfa\\xfbN|9\\xa3k\\xfa\\xa3\\x05\\x95\\xfd\\xd1R\\xa3p\\xac\\xca?\\x1a]\\xeb\\x1f-\\xb5\\xb4\\x84w\\x96M\\xfd\\x7f\\xea.t\\x06\\x00Z\\xf0$\\x00\\xb4\\xd4\\xea'\\x9f\\n\\x80F;\\x1b\\x00\\x8dXD*q>\\xe6-\\xc6\\x9f\\x19\\xe0uWtG\\x9d\\x1c\\x80F9?\\x00-2p\\xa1\\x0c\\x14H\\x0e\\x1e\\xf5\\\\\\x01\\xaf;5\\xa6\\xa7\\x9c.\\x80\\x16:c\\x00mR\\xc3\\xe3O\\x1a@\\xcb<\\x0d\\xd3\\xcf\\x1e@\\x8byk\\x10\\x7f\\x0eA\\xd0\\x1f:9\\xea4\\x024b\\x1c!\\\"\\x96@:\\x9f\\x00\\x8d\\xd8\\xa1\\xb4\\xc5\\x86\\x1d\\xc8'\\x16\\x90\\\\\\x19\\xa7\\x1a\\xd0\\xa4\\xe8G\\xa3\\x9d^\\x80\\xf6\\x08A\\x899\\xcf\\x80\\xe4\\x10G\\xe1\\xc0\\xa9\\x06$Oq1%\\x9f\\x7f\\x80\\xf6H\\xa1%\\x9d\\x88@\\xf2\\xa6OM\\x08\\x9f\\x8b@rG\\x0b.\\xe9\\x04\\x05\\xb4\\x88\\x80\\xc6\\xcc\\x8a\\x90\\x10\\xfc\\xd8\\x93\\x15\\x82\\x0e?\\x17\\xad\\xef|\\x054\\xf2)\\x0bh\\xc4x\\xc5\\xd4=\\xe3\\xb9\\x0b\\x83\\xc3\\xb8\\xd3\\x17\\xd0\\x88g0\\xa0Q+\\x98v\\x1e\\x83\\xd3\\xdd\\xa8\\xca\\xef\\xe5\\x81\\xc7\\x9f\\xcd\\xe0t\\x85g6POh@\\x8b>\\xa7\\xc1\\xfd\\xf4\\xf1\\xfc\\x06\\xffi\\x0dhIg6\\xf8\\xabN:\\xb9\\x01-\\xf6\\xfc\\x06\\xa7#\\xa3#\\x10Nq@K:\\xcb\\xc1]\\x82r\\xa0\\x0ft\\xfe\\x13\\x1d\\xd0\\xd2\\xceu\\xf0VF\\xac<\\xa7;\\xa0\\xa5\\x9d\\xf1p\\xd0[\\xa5R\\xcbT\\xfad8\\xdf\\xa1l#\\x8ex\\x98\\xc9\\xb1|\\xb8|=/;\\x9f\\xf60\\xfd.\\xe7\\xd3\\x1e,F\\x9d[bS\\xf4\\xb0\\x01\\xf3i\\x0f\\x84\\xd4;\\x1b\\x8f(:\\xe5\\x8e\\x9ej\\xc7\\xa7=h\\x8bM\\xa1\\xf3\\xee\\x93\\xc6\\xa4\\xceE\\xa5\\xcc\\xf1i\\x0f\\xc7\\xa6\\xc2%\\xa4\\xc0eI}\\xa3\\xa7\\xbc\\xf1i\\x0f9R\\xdabR\\xd9\\xc8)l|\\xda\\x03\\x9f\\xf6@^%E\\xa5\\x98\\xe1\\xe7\\x12\\x9f\\xf6\\xc0\\xa7=\\xe4J\\xfb\\\"f\\x1c\\x05\\xd3\\xbc\\\"\\xd2\\xbb(g\\x19\\xc4\\xa4s\\xf1i\\x0f|\\xda\\x03%\\xcd\\x8aO{\\x90\\x96\\x92.\\x15\\x91&\\xc5\\xa7=D\\xa49\\xf1i\\x0f3\\x8bM[\\xe2\\xd3\\x1e\\xf8\\xb4\\x07\\xc3\\xa2S\\x87\\xe2R\\x86\\xf8\\xb4\\x87\\xb8\\xd4\\x1f>\\xeda0>\\xedA\\x99>9\\xe1\\x80}8\\xf9,\\x9d\\xb2\\x17G\\x1e\\xa2\\xfa}8#\\xa1;\\xd4\\xcc7\\x87\\xa5#\\xcfL\\x00\\x07K\\xf3\\xf8\\xb3\\x14dd\\x94\\x0f\\xdb\\xc9\t\\x97C\\xe4&\\xa7&(7\\x16\\x12\\xdf\\xe4\\x9c\\x04\\xf5|\\xe9D\\x7f\\xcd>\\xd9c\\x12\\xccP\\x986)\\x0c^\\xa4\\xfa\\xa7\\xdc\\xb1\\x97k\\xad!Hr^,[\\xd8\\xd6\\xab\\xfd\\xc6\\xb2\\xeb\\xe1E\\xcd\\xfc\\x98\\x19\\x85\\xbe\\x1a\\xdc2\\x9aTf\\xc63Ud\\x12\\xe4\\x9c\\xaa\\x8e(w\\x13|\\x0c\\xd1m\\xf1\\xc5P4\\xf6\\x95\\xca\\xa7\\xe3\\x1d\\xa6 O\\n>}\\xa8.\\xb8f]\\x0d,\\x00C.\\xdaUtQu\\x8d\\x17\\xa3\\xccZn\\xe7\\xf6\\x9bQ\\x14\\xa36\\xa0\\x7f\\x92\\x8b\\xcfR\\xeek\\x0e/\\xc3\\xe1\\xc9\\xe0DH\\x0c\\xdc\\xf8\\xff\\xefv\\xa2\\x81]Q6\\xe7]S\\xd6\\xd6\\x94\\x05\\xe3h\\x95'\\x12\\x99\\xc3\\x12\\xe9\\x00\\x8d\\xaf\\xd9\\x18x\\xf55N\\xa6\\xceN4m\\xd9ZS\\x00\\xfa\\xc0.V\\xa2\\xaa\\x1dy|q\\x9dk\\xf46\\xa1\\x06\\xf6?\\xcb\\x1d\\xf9e]V \\xff^V\\x8awu\\xe8q[V\\x8b\\x19\\xa78\\xb1lJF\\xda\\xdd\\x02\\x0f\\x9f4\\xb0io\\x8b\\xb2z\\xf1\\xb9\\\\\\x89\\x812\\x16\\xa40#]\\xaa_0\\x153\\xb6(\\x12E\\x01\\xe9U#\\xc7h\\xe2\\x87\\xc0C\\xc19%\\xc8?Q\\x8c\\x13\\xbcZ2M\\xa6\\xbe\\x98h\\xc2D\\x93 \\xcaB\\x1b\\xa9\\x98h\\xc2D\\x13\\xd7\\x95L4\\x91\\xc6D\\x93Cc\\xa2\t\\x13M\\\\\\xc6D\\x13&\\x9aHc\\xa2\t\\x13M\\x98h\\xc2D\\x134&\\x9a0\\xd1\\x84\\x89&L4\\x91\\xc6D\\x13&\\x9a\\x18\\xe6\\xfe\\xb8e\\xa2\\xc9\\xe4w&\\x9a0\\xd1\\x04\\x8d\\x89&L4\\xb1\\xbb\\x8c&\\x9ad d\\xd4\\xf5\\xc6C\\xc7\\xa8\\xeb\\xcd\\x84\\x88\\xd1_>a\\x9bL\\xf8\\x17\\xfd\\xe5\\xea\\xf7\\xa7K\\xbb\\x18*l\\xda\\x94t\\xd1W\\xd2\\x04Q\\x0fj=\\x9a\\x17-\\xf2cEU\\xdd-0\\xa3~\\xe1S)\\x0d\\xec\\x96\\x1c\\xe3aRk\\x849\\xebzC\\x069\\xfb\\xa8|\\xb8|\\xcd\\xa0&0\\xa8\\x19\\xdc\\xd1\\xa3l\\x8a\\x01\\x83\\x9a\\x0cj:\\xafdPS\\x1a\\x83\\x9a\\x87\\xc6\\xa0&\\x83\\x9a.cP\\x93AMi\\x0cj2\\xa8\\xc9\\xa0&\\x83\\x9ah\\x0cj2\\xa8\\xc9\\xa0&\\x83\\x9a\\xd2\\x18\\xd4dP\\xd30\\xf7\\xc7-\\x83\\x9a\\x93\\xdf\\x19\\xd4dP\\x13\\x8dAM\\x065\\xed.\\xbf\\x02\\xa89O\\x10\\xb6A\\x9b?\\x8d\\xf9\\xbc\\x1a\\xe0,6\\x1b#\\x85W\\xef^vKT\\x80_\\x97\\xf7\\xa2R\\xe7>Z\\xd1\\xcf\\xd1\\xa3\\xfa\\xeb\\x93\\xc5@}\t\\xd4_\\x03^\\xc20\\xd6\\xcd\\xa2X\\xad\\x1a\\xd1:\\xae\\\"\\xed\\xb1P\\xb6)\\xc0\\xf2\\xc8\t\\xde\\xab\\x7f\\x9b\\x1f\\x8e\\xf1\\xcc\\xbdM\\xa6\\xfd\\xfd/\\xb8\\x16\\xcb[\\x10\\xd5\\xb2^\\xc9\\x9dP9\\x18\\xd8'\\xbde\\xffz\\xabv\\xdf.v\\xfb\\xeb;\\xe1<\\xb5.\\x10] D\\x18\\x08 \\x1e\\xd0\\\"\\x0c\\x11Q\\x86\\x04@\\xcf\\xeb\\xcc\\xbe\\xab\\xe3\\xf9\\xc8\\xc9\\x0d\\xecA\\x18\\xdc\\x83\\x04\\x80\\xcf_\\x81\\xa2\\xbb%\\x83|\\x90\\x0b\\xe8\\x83D\\xb0\\xcf\\xeb\\xb0\\x0f.\\x19\\xf0\\x83\\xe3A?\\x88\\x06\\xfe\\xbc\\xae\\x14 \\x11\\x05\\xfeAn\\x00\\x10\\\"A@\\x88\\x05\\x02\\xfd-{\\x00\t\\xa9` \\xe4\\x06\\x04\\x81\\x06\\nBN`\\x10\\x8e\\x06\\x07!\\x0d \\x84\\\\ !$\\x01\\x85\\xfe\\xee`\\x9cf\\x12\\xa8\\xc2\t\\x00C8!h\\x08\\xa7\\x01\\x0e!\\x12<\\x844\\x0014\\x04\\xd3@D\\xc8\\x0b$B\\x04\\x98\\x08\\xf1\\x80\\\"$\\x80\\x8a\\x84!\\xf3{\\x02\\xb0\\x089\\xc0E\\x08\\x01\\x8c@_\\x9e\\x11\\x80F\\x88\\\\\\xc5E\\x03\\x8e^o\\x12\\x8c$\\x80\\x8e\\x10Q\\xca\\x8c\\xe0#D\\x01\\x90\\x90\\x1b\\x84\\x84D \\xd2\\xdf\\xae\\xda0\\x18\t\\xe9\\x80\\xa4\\xd3_\\xff\\xc4\\x10(\t\\xd9\\x80I\\xa0\\xe3k@\\x01(!\\x0e\\xa4\\x84\\x10\\x06\\x90\\x08V\\x02\\xc1\\xafg\\x9b1\\x13p\tI\\xc1\\xa5\\x03\\x98@\\xa8e\\x02\\x90\t\\xa9`&\\xf8\\xa3\\x9a\\x0f\\xd4\\x04:\\xb0\tDp\\x13\\xc8\\x00'\\xd0\\xa2\\x1e\\x0ftB\\x14\\xd8\t^\\xc0\\x13r\\x81\\x9e\\x10\\x0b|B\\\"\\xf8\tq\\x00(\\x10\\xde\\x82\\x0f\\x08\\x05\\xca\\xfdt@\\x142\\x82\\xa2@)\\x9a\\xa7\\x9f\\xe5\\x03H\\x81\\x02\\x92\\xc2\\x11@\\xa9\\xd3a\\x7f\\xa1\\x0f,\\x85\\xdc\\x80)\\x04ASH\\x05N\\x9d\\xde\\xf0\\x0b\\xd8\\xbf\\x19@\\x00P\\xc1\\x8b\\xf3\\x80\\x17H\\x85$0\\xd5\\xe9\\xca\\x0b\\xb2B*\\xd0\\xea\\xf4\\x86\\xabL\\xdf\t\\xae\\xd9\\x00W \\x81\\xae\\x90\\x00\\xbcB\\x1c\\xf8\\n)\\x00,D\\x83\\xb0\\x10\\x98\\xcb\\x03\\xc0\\x18D\\x80cT@\\x16R@Y\\x88\\x05f\\xc1_\\xf1\\x14\\x80\\xd6\\xe9\\xcc\\x80?\\xa9]\\x86\\x06\\xd4z;D\\xb5\\xf6\\x83\\xb5\\x90\\x17\\xb0\\x85\\x10h\\x0b~\\xe0\\xd6yO*\\xa0\\x0b\\x19\\xdbn\\x04\\xb0\\x0bQ\\xe0.8\\x97/\\xffQ\\x94\\x1b\\xb1\\xf2c_\\xd7u\\xbd\\x11\\xce\\x8di\\xea\\x0e\\x01>I!}+\\xf8|+\\xd4>\\x91y\\x1et\\xdf\\xc2\\xaf\\x85\\xa8\\xd4\\xd5\\xee7\\xdc\\xd4\\xdb\\xe1@d\t\\n\\xe3f\\xbaU\\xea\\x17\\xd4%\\xaeZRk\\xa0\\x1e4?\\x86]\\xfd\\xee\\xbc\\xed;,\\xe7\\xf9 \\xe6\\xac\\xfe%\\xc1\\x13\\xfb-\\x84\\x9d&Q\\xed\\x1d\\xca\\xc5 q\\xfa?\\xbd\\x7f\\xf7fq\\xf5\\xf1\\xd5\\xc7OW\\x8bO\\xef\\xae.\\xdf\\xbe\\xbe\\xf8\\xf1\\xe2\\xed\\x1b\\xf2\\x1d\\xfd\\xffE^~\\xf1\\xee\\xcf\\xc4\\xeb\\xbd\\xceu\\x02kT\\x15|\\x19\\xb8\\xa4xR\\x1b\\x01>H5c\\xb5\\xde\\x18\\xcfA\\x97\\x7f\\xfb\\xae\\xac\\x96\\x1b\\xf7\\xc4\\xdf\\x8a\\xcd\\xcd\\x8bQ\\xa9\\xdb\\xd1\\x08\\x06\\xb1\\xe4\\x05\\x1e\\xf8\\xfd\\x08U\\x9b?rD\\xe5\\xeb\\xae\\xd8\\x8c\\xe7\\xa8\\xb7{D,\\xdcS\\x91\\x81\\xd9\\x9b'\\xcb;*:\\x96\\xee\\xe8\\n\\x0c\\xd7M\\x18\\x05\\xe6\\xef\\x9dh\\xb6-\\xd8\\x0f,\\x1fm\\xa8\\x80\\xbf\\x87\\x1e\\xcd\\n\\xd8\\xd6Uy',\\xf9\\xd1\\xa3\\x11^0D\\xc4\\x08\\xc6\\xa7\\x8e\\x07]\\xc0\\xed~[T/\\x1aQ\\xa0\\\\\\xb9\\\\\\xd1\\x85b\\x04\\x948\\x81\\xe2\\x17tN~\\x05\\x9c\\xa6\\x8e\\xfa\\xb1c%\\xc7\\x14\\xcb\\xf1\\x8fm\\xb9\\xae\\x8an\\xdf\\x08\\xf8N|\\xf1\\x7f$\\x7f\\xba\\xac\\x9b\\xae\\x9fe\\xfe\\xb7x\\xb8.Z\\xe1\\x1c\\xbc\\x01>\\x8b\\xeb\\xb6t\\x89\\xb7\\xa3\\xa5\\xd4X\\xb9\\xb5\\xd6H\\xffmSVw\\xbe\\xa1g\\xb9o\\xca\\xeea!\\xbfU\\x96]\\xee\\x12\\x06\\xde\\xc9\\xfc\\xf1\\xd6\\x9a\\x88mQn\\x82\\x10\\xbcv\\x05\\xca\\x95\\xbb\\xce\\xceT\\xfe\\xd1R\\xaa\\xaa\\xdc\\xea\\x89\\x00A\\xaf\\xa1\\x12\\xea\\xaf\\xf6R\\x8d'q\\xe0\\xc12G\\x0c\\xed\\xe1\\x83\\x17\\xe8oh^,\\xfdv\\x9eCi\\x1c\\x0b\\xf2\\\\\\x8e\\xa8\\xea\\n\\x0fU\\x07\\xd7\\xfa\\x128\\x9d/\\xef\\xd6\\xfb\\xca\\x7f\\xcc\\x08\\xed\\xf8\\x93\\xa8\\x00\\xad\\x8aN\\xbc\\xe8}e\\x0b\\x12\\x9e\\x9c\\xe2\\x0e\\xd1\\xb6\\xac\\xf0t\\x15_S\\x9e.$\\xbbZ\\x02\\xe7\\x1b\\xd1\\x89P\\x80\\xc63\\x19H\\x93\\xe6x\\xf9db4~><\\xdcgn\\x99\\xa6\\xbc\\xd9\\xb9\\x13\\xde\\x8eI}+`\\xf1;\\xa9\\xa8$\\xb6\\x14\\x9b\\xf0Q\\x16h\\xe8\\x00\t\\x0b\\x03\\xc8\\xbelD\\xd1\\xe1\\xf7.a\\xda#\\xc5\\x0b\\x881\\x03U\\xa6\\xd0\\x86?\\xa1Ch\\x8b\t-\\xe83>\\xca\\x83f#\\x7f\\xc6S>V\\xeesXF\\x1bW\\x83\\xcfA\\xd2\\xcdo$9\\xcc~ \\xcah\\xdb\\xe2\\x8b\\xe7<\\x94\\xd1N\\x18\\x00]\\x84I\\xbb\\xd2\\xa7\\x10\\xcd\\\"\\x12t\\x86\\xa3\\xe3\\xf4\\xac\\x14q/\\x1a\\x15\\xca\\xe8\\xd8 \\x9b\\xe5)\\x84\\xc8(\\x895R\\xab\\xa2\\xf4(\\\\h+\\xab\\xbe\\xb7\\xb5\\xe2\\x80\\x04lD\\x1a\\x83\\x14t\\x15\\x0e\\xe2~\\xd7\\xcf\\x0e\\xde\\x99\\x06\\xe8\\x81\\xa3\\xce8\\x10\\x19`\\xa3\\x94\\xba\\x1fJ\\x88A\\xfe`\\xeb\\x95\\x9f\\x03$>|S+{\\\\\\xb6e\\xb5\\xe8?T\\x17\\xe3\\x87\\xea\\x11\\xb30\\xb5\\x9e\\x96\\xa7\\x1el\\xb7<k\\xe5\\x174\\xac\\xc4rS4\\x9e=\\\"}|\\x91\\xbaZ;\\xf4\\xea\\\"\\x94\\xd5R\\xf4\\xb3e\\xbb\\xad\\xdb\\x17\\xed\\xea\\x0e~w\\xf6O\\xff\\xd3r9\\xa5BCF\\x82\\xf1\\x9d5\\xd4\\xe29t\\xf5\\x1aw\\xc0$\\xee 1\\x83\\xfe3\\xdb\\xea\\xaa\\xd8\\xd6\\xfb\\x81\\xb3l/\\xfeOF|\\xfa\\x95\\x83\\xfe\\\\W\t\\x84e\\x03\\xe2\\x0b\\xbequ\\\\S-\\x0f\\xa5r\\xcc\\xf6W\\x9b\\xa2\\xbd\\xed\\xe7:\\xadX\\xe2\\xe2*\\x17\\xfd{\\xc0\\xae\\xaa\\xe0\\xac\\xc9c\\x9e#\\xc3Q\\x12\\xee\\xea\\xa6q\\xcd\\x84\\xcbb\\xb3\\xdco\\x06\\x14\\xe7f\\xdf\\x7f\\x92\\xd9\\x1f\\xb8\\xaf\\xc6W\\xd9\\xca\\xd8\\xd5\\xfb\\x0e\\xcaN\\xa6\\x82Tk\\xa8\\xef\\x85y\\xd2\\xd4\\x19\\xfc|+*\\xac\\xaa\\xbd\\x02\\xcdt\\x07\\xc7\\xfe\\xd4\\xe9:\\xf6\\xf9lL*\\xdb~q\\xb0*;\\xcdB+\\x8c\\xf6f\\xf5\\xf7\\xf9\\xb6n\\x8dC\\xcd\\xec\\x0f5_c\\xd9N\\xf8\\x9eF\\x8b\\x90U\\x1b\\xab`\\xf5\\xb4*\\x07\\xc8\\x16\\xf7\\xdd%i\\xd1\\xfe\\xd4\\xc9\\xfb;\\x83\\x9fj\\x19\\xd6]\\xfdY\\xe04u-\\x86\\xd7%V\\x12\\x86u6[\\xbdA+\\xab`\\x7f\\xdav\\xbf\\xe9\\xca\\xdd\\xa6\\xc4\\xc2M\\x9f}p\\xc3\\xa4\\xd7\\x19\\xb9B#\\xedL\\x9d\\xd1\\x889E+p\\x1f\t\\xb8+\\xd6\\xea$\\xb6\\xc3am\\xf2\\x98\\xf1\\xc2\\xa9(\\xe1\\xf8\\xb3j\\xf7\\xb6\\x8c!4\\xefB0\\xa0R(\\xbet\\x0bgrJp\\xe4\\x0dR\\x11'U\\xfdO\\xd7\\xc0\\xacK\\xa1\\xc7\\xe2\\xfe\\x9f\\x8a\\xcd[\\xb4-n\\x06^\\x16k\\xf1A\\xfcm/\\xda\\xee\\x0c\\xff\\xeep6\\x1e\\xa1\\xda\\xbb\\xed\\x03)`[\\xb7\\x1d\\x08\\xc9\\x89\\x95d\\xda3\\xb8\\xe8\\x0c\\x18j\\xd7=@\\xe9\\\"\\xb9\\xf5c\\xa8\\x90\\xdd\\xb8\\xaaa[7B\\x8fY\\xb6\\x91M\\xb6\\xd5#\\x83\\xb9w\\x7fl\\x87\\xce\\xdd\\xc3\\x8d\\xd4R\\xef\\xa8\\x8e\\x87\\x1a\\xeaa\\xd6P!r\\xd5\\xd7\\x0c\\xf4\\xb2\\x1f\\x04\\x16\\xd8\\x01\\x1d\\x97\\x7f.\\xfa\\xf9\\xb2{\\x0ee\\xd7j*{+GQ\\xc4a\\xe4\\xc6\\xc5\\xe7\\xb2\\x9d\\xb6\\x0fWEd6\\xe0\\x98jG\\x15\\xab<H\\xce\\xd36\\nX\\x0e\\x7f`\\xfd\\xca\\xd9_Y\\xbf\\x92\\xb6\\xde\\x82\\x84t7l\\xac\\xac_IHm\\xebr\\xa4\\xb5\\xa5\\xa4\\xb4\\xb1~e\\xc6\\xf4\\xb5\\x98\\xd4\\xb5\\xa8\\xb45\\xd6\\xaf<6E-!=-KjZ|Z\\x1a\\xebW\\x1e\\x93\\x86\\x16\\x93\\x82\\x96\\x90~\\xc6\\xfa\\x95\\xac_\\xc9\\xfa\\x95\\xd4\\xf4\\xb1\\xac\\xa9c)ic\\xac_\\xe9\\xba,\\x98\\x1e\\x16\\x91\\x1aFQg\\x8cI\tc\\xfdJ\\xd6\\xaf\\xa4\\xa4w\\xb1~\\xa5\\xb4\\x94\\x14\\xae\\x88\\xf4-\\xd6\\xaf\\xcc\\x90\\x9e\\x15L\\xcdJM\\xcbr\\xce6\\xac_yh\\xac_\\x99\\x90N\\x15N\\xa5\\x8aM\\xa3\\x8aH\\xa1\\x8aN\\x9f\\x8aK\\x9db\\xfd\\xca\\xb8\\xf4(\\xd6\\xaf\\x1c\\xec7\\xa9_9\\xf2\\x18\\xc7e\\xd4\\x0b9\\xf2\\xbe<L\\xd4\\x99|\\x96\\xaa\\xf4\\x1eQ\\x15\\xd7\\x1b\\xdc\\xcaA\\xa8\\xb2\\x0f\\x9b\\x016KMJ\\xa4\\x01\\xdaD)A\\xce(/\\xf1^\\xe3\\xb7F\\xfcm_6b\\xf5\\x12n\\x8a\\xcd\\x04m\\xb3~\\xfb\\xeb\\\"\\x8f8\\xf3\\xd9\\x9dxp\\x15}\\x86\\xdc*\\xa8\\xb6P\\xa3~#\\xba}S\\xa1\\x1e\\\"\\xa2\\x87\\n-\\x1bp]\\xb9\\x1f\\xb6\\x9em\\x1c\\xc9\\x1a\\xf4\\x15\\x0da\\xb5\\xef\\xfb9\\xba\\xae\\xe4\\x07s}s\\xd3\\nI\\x93\\x9f\\x16\\x17\\x8c\\xfd\\xfcVt\\x99\\xa3\\xe5\\xd8\\x1d\\xb1\\x04\\x11\\xcb\\xe7\\x8a\\xe3lgBUF\\x86\\xb2\\xdaoES.\\xf5or\\x80Pt\\x08\\xdc\\x1a\\xba\\x15\\x95\\x0e\\xfc\\xbe\\x1av\\xe3fk\\xf0\\x0b\\xe9m#\\xdav\\x0c!\\xee_\\xed\\xdb>\\xd4w\\\"2\\x9eS\\xf7'\\x0e\\xee\\x0c\\xf9\\xb6\\x84wSnKjt\\xe5\\xb5\\x9aR\\xe0\\x02\\xc4q\\xa7\\xd6l\\xc1\\x8ak\\xb1\\xdf\\xcc\\x10\\\\\\xdc\\x971\\x7f\\xba\\xb8\\x81\\x8d\\xb8\\xe94\\x81@1\\n\\xf4:Wn2c\\x07\\xc1\\x87\\xf4q\\xbe~\\x00Q,o\\xa1\\xd8\\xed\\xbeb\\x14MX\\x7f\\xbc\\xdf\\x17K\\xe3\\x8e>\\xa2\\xb2\\x85\\xd6\\xd05{\\x01\\xfd?\\xcajU.%\\xebK\\xc1M*\\x82\\xf2B\\xd5\\x90Lwe\\xb5\\xdc\\xecW\\xb3Ul\\x81O\\x19\\xf0\\xbe\\xd9\\x1b\\x93\\xe8\\xb1\\xb1\\x0d\\xdd\\x0f\\x9b\\x13\\x96\\xcc\\xc4\\xd9\\xa7\\x8bv\\xf6\\xb6fU\\x90\\x0b\\xffF\\xb4\\n\\xe7\\x97\\xddk\\xec\\x8f}\\x97;S\\xbd\\xa9\\\\W\\xf5\\x9c\\x07\\xa8{\\xe3\\xf4\\x11\\x18\\x99c_\\xec<\\x1d\\xd6\\xf2\\x02\\x1bq/\\x9a\\xc9\\xad\\xbe\\x97\\xa7\\xae\\x9e\\xbf\\xb8\\xd2\\xa0\\x854\\xc2\\xde\\x13&~\\xfag\\x08\\x993\\x00u\\xb3\\x12\\xcd|\\x17\\xcf\\xcan\\xfcC\\xd6h\\xe4T\\x8f>\\xffu\\xf8\\xb7\\xd4\t\\xfe/t\\xec\\x95\\x93\\x1e\\xd4\\xa4\\x0dr^uS\\xcb\\xc6\\x88\\xb3\\xf5\\xf8\\x07\\xa53\\xac\\x9b\\x83]M\\xfa\\x1b\\x1d\\x85\\xa7.&\\xed\\xa2z$\\xd1\\xceh\\x92\\xd0A\\xd0\\x82\\xb2\\xeb\\x9f[\\x0c:^\\n\\x9a&\\x04\\xed\\x8d&\\x04#\\n\\x04\\x1e\\x0c!\\xa2@\\x8e*\\xa4\\xb2a<\\xfe\\xa2\\xa4\\x9f\\xb32b\\x82\\x9c\\x98\\xdc\\xac\\x18:/&\\x133&\\x8d\\x1b\\xe3q\\x17)\\xf6|$?&7C&\\x92#\\x93\\x99%\\x13\\xc7\\x93\\x89d\\xca\\xf8\\xda\\xf0\\xc0\\xa1\\xa1re2\\xb3eH|\\x99\\x8c\\x8c\\x99c93I\\xac\\x99L\\xbc\\x99\\x14\\xe6\\x8c\\xc7\\x19Y\\xce\\xf9\\x04\\xec\\x99\\xd3\\xf1gN\\xc2\\xa0\\x89\\xe3\\xd0dg\\xd1Py4Y\\x994t.M4\\x9b&\\x9eO\\x13\\x1c\\ni\\xc2\\xcdGsj\\x82\\xa2\\xcd\\xa4\\x05\\x15\\x81Y\\x13\\xb3\\xea\\x8af\\xd7\\xf8&A\\xb2T3\\xad|\\x19961,\\x9b\\xcc<\\x9b4\\xa6\\x8d\\xaf\\x05\\x91\\xe4\\x99\\x13\\xd96\\x0eo\\x1dI\\x9a9\\x0f\\xe3\\x86L\\x1b!\\xb0n\\xa2x7!\\xed\\xd1\\x14\\xeeM\\xc8\\xa7\\x131\\xcb\\xc4\\xc0\\x89\\x0f&\\x9d\\x85\\x13\\xaa[\\x02\\x13'\\x91\\x8b\\xe3C\\x1e\\xb3\\xf1q\\xc8\\x8c\\x1c\\x1a'\\x87\\xca\\xca!D9\\x9e\\x99\\x13\\xc3\\xcd\\xf1\\x8b-g\\xe1\\xe7D2t\\xd28:Q,\\x9dP\\xd4\\xfd\\x02\\xcb\\x81{\\xe9l\\x9d||\\x9d`\\xa1\\x9c=(\\x1fk\\x87\\xc0\\xdbIg\\xee8\\xdcuA9\\xe5\\xac\\xec\\x9d\\x10\\x7f'\\x91\\xc1\\xe3\\xf0\\x15\\x96Q&\\xb0x\\xfc\\x12\\xca>\\x01\\xe5\\xdc\\\\\\x9e\\xecl\\x1e7\\x9f''\\xa3\\x87\\xc2\\xe9\\x89g\\xf5D\\xf1z\\x12\\x98=\\xb1\\xdc\\x9e\\x80(\\xb2\\xbftT\\xb6\\x05\\x95\\xe1\\x93\\xc0\\xf1\\x89d\\xf9x\\xaa\\x9b\\xc2\\xf4q\\xb8\\\"\\xc8 \\xa7\\xb0}<M>,\\x81\\x9c\\x91\\xf1\\x13\\x94?>\\x05\\xeb'W[\\x8c`\\xfe\\xc4p\\x7f\\xecK\\x07\\x9f\\xb4qgErM\\xa3}O\\xa7\\x88\\x1aK\\xf1b\\x87?\\xaa\\xa4\\xb1O\\xd0\\x98V\\xf2$1\\xe3h)\\xe3\\xe0\\xfe\\x8bO\\xc68V\\xc48J\\xc28N\\xc0\\x98,_\\x9c ^\\xec\\x93.\\x0e\\xc6\\x8f\\xf6\\xb2\\x8f\\x15-\\xa6H\\x16\\xd3\\x04\\x8b3U(\\x97T1]\\xa8\\xd8,\\xd7Q\\x05\\x1f\\xae:J\\xa28\\xa0@\\xd8\\x1d\\x8fV\\x07\\xa5\\x89\\x83\\xaf\\x12\\xc8Q\\x81\\x8c\\xa2\\xc4Am\\xc6\\xb0 q\\xe6\\x9ae\\x96\\\"&\\x0b\\x11\\x07e\\x88\\xe3\\xeby\\xac\\x041]\\x808\\xbel\\xdew\\x90Mz\\x98*<\\x1c\\x94\\x1d\\x8e\\xaf`\\xb2\\xe40Mp8X\\xa0\\xb0\\xd80\\xed}\\xe4\\x14\\x1a>Ff\\x98\\\"2L\\x0e\\x8a_\\xee1601\\xe2\\xc2\\x94Y\\x02\\xc8\\xd2\\xc2!a\\xe1IM\\x8e\\x97\\x15\\xce0Q\\xd1\\x05\\x85io\\x01\\xe2\\xc5\\x84Q0\\xd8\\xe3\\xef()\\xe1`\\x8c\\x80\\x14' \\x89\\x08\\x07\\x1b\\xbc6z0\\x81,\\x1fl\\xca\\x03\\x07\\x1c\\x92\\x05ri\\xd2\\xc1'\\xaav\\x8ch0\\x8ee\\x01\\x879$\\x83\\xa3\\x04\\x83O\\x18\\x18\\x92T\\xf0 \\x05\\x1cp\\x18\\x14\\n\\x0e\\x86\\x86$\\x03L\\n\\x07mN\\x80\\xa8\\xa0e\\x96\\xff\\xf5\\x88\\xff\\x92\\xa5\\x7f\\x83\\xb1\\xa0\\xd5.\\xa3\\xe8o\\xb4\\xe4/Q\\xf07\\\\\\x914\\xb1_%\\xe3j\\xf1\\xe7\\x96\\xfa\\xcd)\\xf4K\\x94\\xf9\\x8d\\x16\\xf95\\x05}\\xed\\x95sK\\xfc\\xe6\\x15\\xf8\\xa5\\xc8\\xfb\\xe6\\x15\\xf7%H\\xfb&\t\\xfbj\\x11_\\x9b\\xbf\\xa0\\xaco\\x9a\\xa8\\xaf\\xda\\x8e\\xb4\\xf8sK\\xfa\\x92\\x05}i\\x12\\xa3\\xd1\\n\\xa33o,0\\x8a\\xc6\\x02\\xa3,0:\\x1a\\x0b\\x8c\\xb2\\xc0\\xe8hYS'b\\x12'\\xa2\\xd2&X`\\xf4\\xd8d\\x89\\x84T\\x89,\\x89\\x12\\xf1i\\x12,0zLzDLrD\\xe6\\xd4\\x88\\x8e\\x94\\x18\\x911-\\x82\\x9a\\x14\\xd1\\xc5\\xa5D\\xc4&D\\xb0\\xc0\\xe8\\xc4\\xa2S X`\\x94\\x94\\xf8\\x90\\x92\\xf6\\xc0\\x02\\xa3\\xae\\xcb\\x82\\xa9\\x0e\\x11\\x89\\x0e\\x14\\xf9\\xcc\\x98$\\x07\\x16\\x18e\\x81QJ*\\x03\\x0b\\x8cJKI^\\x88H]`\\x81\\xd1\\x0c\\xa9\\n\\xc1D\\x85\\xd44\\x05\\xe7l\\xc3\\x02\\xa3\\x87\\xc6\\x02\\xa3\t\\xe9\\x08\\xe1d\\x84\\xd8T\\x84\\x88D\\x84\\xe84\\x84\\xb8$\\x04\\x16\\x18\\x8dK;`\\x81\\xd1\\xc1N\\x91j\\x90\\xa3\\xcdE\\xa4\\x19\\xd0\\x93\\x0c(\\x02\\xa3S\\xc12\\xc3\\xd5\\xe4\\xf3tz\\xd5\\x84\\xfap\\xa0N6\\x91!5\\x07\\xa7R\\x9eM9\\x19\\x11G\\xa9\\xb6\\xae\\xd9\\x07\\x04\tO*\\xd4vn \\xb8\\xf8\\x10\\xafh\\xdb\\x1b\\x03\\xef\\xd5\\xfam\\x1a\\xf6t\\xca\\xb7\\xe9X\\xd8e\\xdb\\x0c\\x97\\xdf\\xe8\\xe0<Q\\x05\\xb71V\\x0bK\\x19\\xb5u_\\x01V\\x0b\\xf1?\\x82\\x0f\\x00\\xc2C`\\xc2\\xe6\\xf7\\xea\\xcd\\xa1\\x11v\\xb2\\x80\\xb8!4^;{\\xbe\\xe6\\x9f\\\\\\x8b\\xe5\\xed\\x1f~\\xffB\\x8b\\xc8\\x8dbt^w\\xdd\\x98_\\xe1\\xdb\\x16\\x9fv\\x9a\\xc7\\xaf\\xf5\\xc1\\xf3\\x8f\\xaf5\\x81\\xcc\\xe8K\\x0eAK\\xa9\\xea$\\x0b\\xc4|\\x01r\\x03\\x15\\xff\\xd8\\x88\\xa5(\\xef]\\x07\\x9e\\xd3c7\\x8e-\\xe3\\x04\\xae\\x02WWj\\x0bW%\\xd5\\xdc\\xf6\\xab\\xce\\xeb\\x07\\xf0\\x88~\\x15K)|\\xaa\\xc4L\\xdd\\xf3b\\xfd\\xb9\\xc2o\\xae\\xba2Z\\x97\\xda9\\x97\\xd8Q\\xbd,\\x8b\\x81\\xa4\\xe2\\xc3G\\xeeM\\xf6G}\\xd3{t?7\\xf0J\\xaf\\x8bMQ-\\x03\\xdb\\xce\\x19\\x06\\x88\\xaav\\xa6\\x89\\x01\\xb5\\xcd \\xb5\\xe6H7\\xd4V\\xf2\\xba.+\\x83\\x0b&\\x1b\\xc4\\xc8\\x1f\\xaa\\xea\\xad\\x16\\xc6\\xed_`Q\\xa9\\xc2\\xf90\\x89w\\xef?\\xbe})\\xbf\\xc5\\x14G\\x08?jJ\\xb9\\x93}Quj\\xb97\\xa0\\x07\\xad\\xb7\\x11\\xa8\\xb5\\xa0\\xe2\\xc6\\xb8\\xbb\\xab\\xceJi\\x87\\xe5E\\xdf\\x08\\xd7\\xf5\\xba\\x96\\x0b\\xad\\xd4\\xbd\\xf8\\xb1\\x13\\x99\\x0c\\x9f\\xfe\t\\xf7\\xc5F\\x8ab\\xd7fG\\x13_\\x96b\\x87\\xaa\\xdbVweg\\xec\\xeb\\xdbk\\xa3Z\\xea|\\xe1\\xab\\x06\\x07\\x15\\xbb\\x16O\\x90n\\xf7e\\xa7E\\x8c\\xad\\xce\\x96\\x1b\\xa9\\xdc=L\\xd8\\xf30\\xf0\\xf1\\xe2\\xd2&U\\xe5\\xe3\\xc5I\\xc1\\xfc\\x0d\\x1d/~\\xd0\\\"\\xa6\\xdc?c\\x11\\x1f\\xa4\\x01\\xda\\x1c\\x9d[\\xbf0\\x98\\x11\\x88\\xc6\\x8c\\xc0<\\x13=3\\x02\\x99\\x11h7f\\x04JcF\\xe0\\xa11#\\x90\\x19\\x81.cF 3\\x02\\xa51#\\x90\\x19\\x81\\xcc\\x08dF \\x1a3\\x02\\x99\\x11\\xc8\\x8c@f\\x04JcF 3\\x02\\x0ds\\x7f\\xdc2#p\\xf2;3\\x02\\x99\\x11\\x88\\xc6\\x8c\\xc0\\x8e\\x19\\x81V\\x97\\xbfQF \\x9f9\\x9ez\\xa03\\x9f9~\\xc2\\xe0\\x86O\\xcb\\xe63\\xc7sD\\x91\\xcf\\x1c\\xe73\\xc7\\xf9\\xccq/\\x95\\xfd\\xfc\\xd7)Q\\xd8s \\xb9A]#3\\xdaGV'\\xec\\x8a\\xd2Np\\x7f3W\\x1e\\xfb{\\xa2\\xb5\\xbb\\xa8!I\\xd4\\xb5\\x109\\xdd\\xeb\\x1a\\x82\\xee!\\x8e\\x96N\\x00Sh\\x88\\x84\\xbe2\\x96\\x90\\x1e\\x80?\\x83t\\xf4\\x082z\\xe6\\xba\\xc6\\xd3\\xd0\\x03u\\x0d\\x92\\xd0C\\x14\\xf4\\xf8\\n\\x1eO?\\xa7\\xc5+'\\xf5\\x9cF<\\x8f\\xa7\\x9d+z\\xb9\\xc3\\x1f\\x85t\\xee}\\x81^\\xc2y\\x96N\\xef\\xa5\\x9a\\x13\\xdaF\\x88f\\x1etAk\\x0b\\xb9\t\\xe69\\xe9\\xe5$ry<\\xb5<\\x1c\\x98tZ9\\x94\\xb6\\x16\\xe3'\\x95g\\xa4\\x94\\xfb\t\\xe5\\xfe\\x8a\\xcb\\x05\\x8f\\xbd\\xe6>\\xc9\\xcc\\x83\\xb5\\x84\\xb6\\x91!;\\x96\\x82)\\xb2\\xb3\\xbf2E6\\xd4,Gc\\x8a,Sd\\xed\\xc6\\x14YiL\\x91=4\\xa6\\xc82E\\xd6eL\\x91e\\x8a\\xac4\\xa6\\xc82E\\x96)\\xb2L\\x91Ec\\x8a,Sd\\x99\\\"\\xcb\\x14YiL\\x91e\\x8a\\xaca\\xee\\x8f[\\xa6\\xc8N~g\\x8a,Sd\\xd1\\x98\\\"\\xdb1E\\xd6\\xea\\xf27O\\x91\\x9d\\x124\\\\e\\x9e^5;\\xef_s}N\\\\\\xe6\\xaf\\xc7\\x8e:\\x1f\\x8f\\xb3\\x9e\\x93ul\\x94)\\x83O\\xfcI\\xdfh\\xa1Q\\x0dN\t<\\xaa\\xc1\\xa1\\x93Oey\\x92\\xba\\xec\\xc9\\x12\\xab0\\x00\\xa7\\xe0R\\x85\\xc8?\\xc1\\xed0\\xca~Rfr\\x93\\x97\\xd8D$5e\\xaaWV\\\"\\x93\\x97\\x03#\\xaa\\xae\\xf1\\xe2\\xba.,\\x19|x2\\x84\\x1a\\x11Z\\x08W\\xee\\x0d\\xcf7\\xaf+u\\xc0\\xbf\\xef\\xd39\\x18|4\\x03\\x8aw\\x88\\xa3\\xa1\\xd1^\\x15\\xda\\xac\\x94\\xfau\\xa9\\xff\\xc3u@\\xff\\xc30\\xe4x\\xbduu}\\x07\\xbbM\\xb1\\xb4n\\xb5\\xa2\\xa9#\\xf8\\xfbg\\xfa\\x8f\\x99\\x8e\\x8eK\\xf8\\xa8\\xe9\\xc8\\xd8LK\\xaac\\xb3\\xaf\\xca/x\\xe4t?\\xf0\\xd2\\x023\\xba\\xf2\\xec\\xba\\xe0\\x91\\xfa\\x8b\\x80\\x9c(\\xd0\\x03\\x13S\\xd9\\xd9\\xd3'\\x13\\xb5\\xa2\\xd3\\xa9K<0*\\xa8!~\\xb5\\xdf F\\xa7\\x08\\x7fPt\\xa4\\x10\\x9c\\xa8\\xea\\x9e:\\xc5\\x96\\x91\\x1aR\\xcb\\xa4\\xfa\\xb6\\xea\\x9a\\x87\\x91\\xadV\\x19\\xd3\\xb8w\\xb0\\x01\\x84\t\\x1a\\xb1\\x11\\xf7E\\xd5\\xc1Vt\\xc5\\xaa\\xe8\\n\\x02\\x89R\\x0d\\x92\\xc8c7{\\xb1\\xc9\\xcdT\\x17\\xa5P\\xcdl\\x8b\\x94\\xb6\\xab\\xe5Q\\xdc\\x9b\\x8d\\xfc\\xcc\\x87\\xb6\\xac\\xd6\\x1bc\\xb1\\xf7\\xcc\\x86(\\x8c\\x05\\xeb\\xffkeb\\xf6\\x9dm\\xf06.t\\xfa\\xcf\\x91Jv\\xc7\\x17\\x92|/V\\xb0)\\xdb\\xee\\x94\\xdc1\\xdb\\xed\\xe7\\xb6U\\xd4\\xecB\\xe6\\x94)cN\\x19s\\xcaFcN\\x19s\\xcaFcNY\\xc7\\x9c2\\xbb1\\xa7L\\x1bs\\xca\\x98S\\xc6\\x9c2\\xe2*\\x899e\\x831\\xa7\\xcc4\\xe6\\x941\\xa7\\xccb\\xcc)\\xb3^\\xc3\\x9c2\\xe6\\x94\\x01s\\xca\\x98S65\\xf7\\xc7-s\\xca&\\xbf3\\xa7\\x8c9eh\\xcc)cN\\x99\\xdd%s\\xca\\x98S\\xe6\\xa4\\x8d\\xb5n\\xde\\x98\\xb1\\xc70\\x9c\\xf7f\\x01$[\\x0b\\x83\\xcc\\xf0/\\xa7\\xd0\\xc1\\xd1\\x01\\xfb\\xc6~\\xca\\xb4\\xed1\\xea\\x86'N\\x1f\\xeb\\xa3\\xfb4O\\x9b\\x0e\\x91\\xb5H;h\\x94M(\\xc8ME\\x0b\\x90\\xd1\\xc8t\\xb4\\xac5\\xccJJ\\x0bjky\\x89iajZ\\x80\\x9c\\x16lbh\\xa1\\x86\\x86\\x16AQ#\\xbd\\x104*M\\x8d\\xfe\\x02\\xd1\\xf2R\\xd5hd\\xb5(\\xbaZB\\x8c(\\x94\\xb5\\xe88\\xe5\\xa3\\xad\\xd1\\x88kQ\\xd4\\xb5\\x88 \\xc5U;\\x1b\\x81\\xed8\\n\\x1b\\x89\\xc4v\\xb2 P\\x99n\\x19\\xde:\\xbd`Y\\xb9pql\\xb8\\xac|8Z\\x9d\\xb3q\\xe2H\\xac\\xb8\\xe3xq|H\\xb7\\xb2IU\\xf9\\x90nR0\\x7f\\x0b\\x87t\\x13\\x88\\xa3\\xde/!/\\x97t\\xe6\\xcd\\xc2N\\x9a\\x1d\\xe1m\\xfd\\xa4cV\\xa92f\\x95\\xe6\\xf9\\\\bV)\\xb3J\\xed\\xc6\\xacRi\\xcc*=4f\\x952\\xab\\xd4e\\xcc*eV\\xa94f\\x952\\xab\\x94Y\\xa5\\xcc*EcV)\\xb3J\\x99U\\xca\\xacRi\\xcc*eV\\xa9a\\xee\\x8f[f\\x95N~gV)\\xb3J\\xd1\\x98U\\xda1\\xab\\xd4\\xea\\xf27\\xcf*\\xe5\\xc3\\xbc\\xe3NJ\\xe6\\xc3\\xbcO\\x18\\xdc\\xf01\\xd4|\\x98w\\x8e(\\xf2a\\xde|\\x98\\xf7o\\xe50\\xef\\xee\\xcb\\x90U\\xd0\\x96\\xdb\\xfd\\xa6\\xe8\\xd4.\\xf9\\xaen\\x0f\\xb3\\x05\\xae\\xd4%\\xa0\\xafmA|\\x11\\xcb}\\xd7W\\xba\\x80\\xae)\\xaa\\xb6\\x90\\x1b\\xa1\\xf8\\x19\\xd7v\\xe5\\xb6\\x90\\x7f\\\\\\x17}\\xab\\x91\\x83\\x04\\xfa\\x9c\\xe4\\x04h\\xbf\\xdf\\xe8J?Q\\xfa\\xff\\xbah\\x17euS\\x07\\x18o\\xfa2=\\xba\\xf6\\xff\\xee\\x07\\x1fy\\x9e\\xecu\\xbd\\xefT8\\xc6\\x11U\\xc5\\xd3J\\x9bt\\x96\\x13\\x82\\xec\\x8f\\xbe \\x9f\\x8b\\xaa\\x13\\x16\\xc5[\\xa0\\x00\\x1f\\x04\\xc6\\x16\\x05\\\\\\x00\\xf8s\\xd1\\xfe,\\x0b\\xa2c\\xb2-\\xbe\\x94\\xdb\\xfd\\x16\\xf6U\\xd9\\xc9]\\xf1\\xcfus\\x07\\x9f\\x15\\xfa\\x89\\xa0[\\xf7\\xc5M\\x82\\xdb\\x89\\xa6/\\x9c\\xed\\x93\\xb4\\xafu\\x1f\\xdcG\\xaa\\xf3\\x9f\\x8b\\xf6S;VL\\x9d\\xff[\\xdf\\xc8\\x97\\\\,;\\xe4),\\xebJ\\x01\\xd8SW8\\xc6\\x04\\x1a\\x94\\x9a.\\xca\\xd6\\x9c<4@r\\x9a\\xa6\\xb3*\\xba\\xe2\\xc8\\x00\\xd28\\x93\\xce&\\xf3\\xa6\\xe8\\n\\xb9\\xf8\\xab\\x1edi\\xc6\\xc1\\xf7\\xa6\\x91\\xc7#\\xe3\\xb7\\x94D\\xb2\\xab\\xd5\\xc6\\x01F\\x81\\x1e\\xa1\\xeaJ\\xceX\\x7f\\xfdt\\xf5\\xd1\\x035nD\\xb5\\xeena\\xd7\\x88\\x9b\\xf2\\x0b\\xf6O9\\x98\\xf7\\xe3\\x7f+\\xfa\\xcf\\x9bN`i\\xb0\\x10\\xfbMW\\xee6.pN\\x97q(\\xc2|\\xd6\\x1d\\xedM\\xff\\xb9\\xdb/\\x12V\\x8a\\xb54\\x1c \\xddv\\xfd\\xbaiW\\xef\\xe4\\x10\\xb9z\\x0e\\xd7\\xfbN\\x16\\xd0Y\\xe3m;\\xe6'AY\\xb5\\x9d(\\x9c\\xe4\\xa9k\\xb1,$\\xad\\xa5\\x83b\\xd3\\xd6\\xd3\\x8d\\x9f\\xbf\\xb6\\xeb)\\xf9\\xd0\\xb1\t\\xb4\\xa9\\xd7\\x89m\\x85\\xd6\\x14\\xfeR\\xaf\\xa7\\x05\\xdb\\xd4\\xeb\\xc9\\xa8\\x9a\\xda\\\",\\x17\\x88{QuOX\\x1dZ\\xbaq\\xfe\\x95\\x10\\xf2\\xde\\x8a\\xaek\\xca\\xeb}\\xe7\\xcf\\xf2\tU\\x17-\\x90u\\x04\\xb4\\xaa\\xa3Q\\x02\\x80\\xe6\\xa4t\\x9bF\\x8a\\x85\\xb6\\xe0\\xb05\\x9a\\x97M0\\xda\\xa9\\x1e_V+\\xf1\\x85\\xfa\\xf8\\xf9z\\xd9f\\xb4^\\xa8\\xedm\\xdfC^\\xe9\\x16\\x84\\xdf\\xe7*\\x8b\\xe0N<\\xbc\\xc0\\x8f\\xba]Q6\\xbe\\xbd\\xa5\\xde\\x8a\\xb6\\xad\\x97\\xa5\\x84\\xc7\\x91%Pa\\xef#edx\\x8a)\\x0b\\x88\\x0b\\x89\\xb6\\xff\\x96\\xd4\\xf4*X\\x89{\\xb1\\xe9[\\x98\\xfc\\xb2-\\xbaN~l\\x0e;\\xe1N\\x87\\xe6P\\xd3yp9\\xbd\\xb5\\xf3'\\xb1.\\xab?m\\xea\\xe5\\xdd\\xf3\\xe1\\xb7\\xb7\\xd5j\\xf6\\xcb\\xeb[\\xb1\\xbc\\xfb\\xf8\\xc5\\xddI\\xab\\xd5p\\xed\\x1b\\xb1)\\xefE\\xf3\\xf1\\x8b\\x07_\\xfdK\\xd1\\x89\\xe6\\xb9\\xb9\\noa[<\\xf4\\xdf-\\x98\\xbd\\xbbR\\xdb\\x1c\\xdd\\xadh\\x85\\x1a\\xe8\\xec\\xb1\\xa6EZ\\xc6\\xb95H#\\xd0n\\xca\\xa5\\xdc8\\xc1W\\x80=^\\xf1,?\\x8bF\\x80\\xd8\\x96]\\xe7\\xe4|\\xad\\xf6\\xc8\\xd4\\xc5\\x81\\xdcU\\xd3q|\\xf7\\x8f\\xe4\\xe64\\xf8\\xc4\\x07t\\x1fA\\x1b\\xe8#\t\\xed\\xb5\\xa1\\xc5\\x92\\xb5\\x83\\x03\\xfc!c\\xc7\\x03`\\xe7&mC\\x98\\xb8\\xfd\\xff\\xb3\\xf7\\xeeMr\\x1bG\\xbe\\xe8\\xff\\xfa\\x14yun\\x1cR{\\xc8\\xa1%[^/\\xe3\\xea\\xc4\\x1d\\x0e\\x872w)\\x92K\\x0e\\xed\\xbb\\xb1\\xb1\\xd1\\xc2tWw\\xe3\\xb2\\x1bh\\x03\\xe8yX\\xeb\\xef~\\xa2\\x1e\\x00\\n@=\\xb2\\n\\xd5\\xd2\\xd8\\xca\\xfc\\xc3\\x16{\\xaa\\x12\\xf5~\\xe4\\xef\\x97Y\\x10A\\xdevW k\\xb6h\\x027@\\\"\\x127D\\x12\\xb9\\x9d\\ny\\xe3\\xa2\\xc9\\xdc0\\x9f\\xd0\\x0d\\xc1\\xa4n\\xa7*E6\\x0d\\\"vCjr7\\x04\\x12\\xbc!\\x94\\xe4\\xed\\x1e\\xd9\\x1d\\x01\\x1cK\\xf4\\x86\\xd4do\\xc0\\x11\\xbe!%\\xe9\\x1bf\\x13\\xbf!\\x8e\\xfc\\x0d\\xa9\\x08\\xe0\\x10E\\x02wO\\x87\\xacf+?\\x11\\x1cNC\\x06\\x87\\x13\\x12\\xc2\\xe14\\xa4p\\x08$\\x86C\\x1c9\\xdc\\xb7\\x047(\\x828\\xa4%\\x89C\\x00Q\\x1c\\xc2\\xc9\\xe2\\x10A\\x18G,\\x99_!H\\xe3\\x90\\x828\\x0e\\x98\\xeb\\x1e\\xf2x\\x86\\xbc\\xe2\\x85\\x9c\\xe2\\x82\\xc9\\xe4Nm\\x82h\\x8e \\x94C@)\\x13\\x12\\xcb!\\x88\\\\\\x0e\\xa9\t\\xe6\\x10I2w\\x8f\\xab\\xdaO4\\x87x\\xb2\\xb9U\\x1f\\xff\\xa2\\x8fp\\x0e\\xc9H\\xe7\\x80\\xe7N\\x03\\x86|\\x0ea\\x04t\\xf0\\xf1;#\\x89\\xe8\\x80\\xd0\\xeb\\xa0\\x90%\\\"\\xa5CT\\xe3\\xe2\\xc9\\xe9\\x80\\xa8e\\x04I\\x1db\\x89\\xea\\xe0n\\xd5t\\x84u\\xc0\\x93\\xd6\\x01I\\\\\\x074y\\x1dp\\xad\\x1eNb\\x87 \\\";8\\xc9\\xec\\x90\\x8a\\xd0\\x0e\\xa1\\xa4v\\x88$\\xb6C\\x18\\xb9\\x1d\\x10\\xbd\\xe0\\\"\\xb9\\x03&?\\x9e\\xec\\x0e\t\t\\xef\\x80)\\x9ac\\x9e\\xa5#\\xbf\\x03\\x86\\x00\\x0f3H\\xf0V\\x85\\x8d\\x08\\xe5c'\\xc2Cj2<x\t\\xf1\\x10K\\x8a\\xb7j\\x937`\\xb71\\x00A\\x8e\\x07'\\x87\\x17\\x9c$y\\x88\\\"\\xca[U9\t\\xf4\\x10K\\xa2\\xb7jS\\xe0\\x84\\xfds\\xe9\\xc8\\xf4\\x80\\\"\\xd4C\\x04\\xa9\\x1e\\xc2\\x88\\xf5\\x10C\\xae\\x87`\\x82=x\\xf6r\\x0f\\xe9\\x19\\x02\\x88\\xcfX\\xb2=\\xc4\\x10\\xee!\\x94t\\x0f\\xee\\x8a\\xc7\\x90\\xef\\xad\\xca4j;v\\xca\\xe0H\\xf8\\xce\t!(a\\x0e\\\">\\xa4%\\xe3\\x83\\x8f\\x90\\x0fnR\\xbe5O,Y\\x1f\\x12\\x8e\\xdd\\x00\\xd2>\\x04\\x11\\xf7\\xc1z|\\xc1\\xdd\\xef\\x07\\x18\\xdb\\x94<\\xd2\\xe2t}\\x12\\xb1\\x0d\\x99u\\xf1\\x15MRn\\xce\\x8b\\xfb\\xda~)5\\x12)\\x7f?H\\xec\\x8e\\xca\\xd6\\xd2\\x0d\\xf5\\x18[\\x8d\\x16\\x80N\\xce2\\xf3\\x9b\\xad\\x1fYu\\x93/\\xd9Y\\xa7\\x83\\x82hI\\xa1 Z\\x14D\\xab\\x17\\n\\xa2EA\\xb4zI\\x8a\\xb3\\x86`\\xacA\\xf8*\\x05\\xd1\\x9a\\x8b\\xa5F\\xe0\\xa8I0\\xd4p\\xfc\\x94\\x82h\\xcd\\xc1KC\\xb0\\xd2\\x08\\x9c\\x94\\x82hQ\\x10-\\n\\xa2\\x85\\xc59\\x93b\\x9c1\\xf8&\\x05\\xd1\\xb2%\\xf3\\xe2\\x98\\x01\\x18&&DT\\x08vIA\\xb4(\\x88\\x16\\x06\\x87\\xa4 ZBb\\xb0\\xc6\\x00\\x9c\\x91\\x82h%\\xc0\\x11\\xbd\\x18b,~h\\xddm(\\x88\\xd6T(\\x88V\\x04\\xee\\xe7\\xc7\\xfcB\\xf1\\xbe\\x00\\xac/\\x18\\xe7\\x0b\\xc3\\xf8(\\x88V\\x18\\x8eGA\\xb4:\\xa1 ZJ\\xda('\\xd7\\xe5J\\xdf\\xfb\\xf2b\\xf2\\x935\\xd0\\x95\tM\\xfa\\xbf+\\xb6~\\x0e\\x8f\\xfe\\xc73\\xcd\\x14\\xa9B\\x83\\x9c5wg*4H\\x0fv\\xc9Ws\\x1e)\\x1d\\xe3p#\\n\\x1b\\xd3~\\x11\\xde\\x8d\\x86X#\\xcd\\x9d\\xcahz\\x93\\xf4{\\xd6\\\\\\xdd\\xd5\\xd2\\x83p\\xcd\\x9a\\xe5\\x96\\xaf\\xf8w\\xb5\\x88\\x0e\\xa4\\xbb\\x87\\x0eB\\x88h\\x99\\xd4\\x9f\\x7f\\x9e(\\\"\\xc8\\x16\\xd4\\x8a\\xd7\\xa2\\x8e\\x8f\\xbe\\xe8KAx\\xe1@\\x08/\\xc4\\xd9\\x9b\\x80\\xf0B\\xc2\\x0b\\xad)\t/\\x14Bx\\xe1T\\x08/$\\xbc\\xd0&\\x84\\x17\\x12^(\\x84\\xf0B\\xc2\\x0b\t/$\\xbcP\\n\\xe1\\x85\\x84\\x17\\x12^Hx\\xa1\\x10\\xc2\\x0b\t/\\xd4\\xc4~\\xb9%\\xbcp\\xf0;\\xe1\\x85\\x84\\x17J!\\xbc\\x90\\xf0B\\xb3\\xca\\xa4x\\xa1\\x0c\\xf2\\xa9\\xa9\\x18\\\\K\\xe5_[\\xf7\\xb7]^K+\\xba\\x16\\xc6_\\xa4\\x98\\xdcqc^*\\x18\\x030\\x06\\xe8\\xc5b\\x12X\\x96\\xbb\\x1d\\x13\\xc5y\\xa5\\x0c\\x02\\\"\\xec\\xf6\\xa4\\xae\\xf4XO\\xd8K(\\xf4X\\xcf\t\\x1b\\xd7\\xff\\xcc\\x0c=\\xd6\\x93\\xa2\\x15\\xe9\\xb1\\x1ez\\xac\\xe7\\xef\\xf3\\xb1\\x9e\\xbe5D\t\\x16\\xd7\\xf6-\\xeb\\x9b\\x91\\xf9\\xf8)\\xbc\\xfb\\xf0\\xf2\\xf2\\xc3\\xe2\\xc5\\x7f,>\\xbd\\xfd\\xf8\\xfe\\xf2\\xe2\\xf5\\xab\\xd7\\x97/\\x9f\\x1b\\x7f\\xedL\\xd5\\xc2\\xbe|,\\xe4\\xe1\\xb1.\\xab\\xa6\\xaf<\\xbc\\xe3\\xff\\xf7\\xe2\\xbe\\x9d\\xf0b-9\\xffx![.\\xafa\\x99\\xd5c#\\xb7V\\x86\\xf3\\x8f\\x17\\xcf\\x07\\xff\\xea\\x9e\\xed\\xcb\\x86\\xadl\\xd5\\xf0\\xf2r\\xa0\\x82\\xff\\xb3\\xd31\\xee\\xaa\\x99\\x9d0YkXq\\xdc\\x0f\\xcf!\\xe6\\xe6\\xb5%9\\xffxa\\xfb\\x13\\xaf\\xc7\\xa0S%\\xcf\\xc7\\xad^\\x9b#\\xd8Y!\\x0e\\x1bjw\\x10\\xff\\xad\\x96\\x9a\\xf6}\\xc4'P7Y\\xc5'G\\x03_\\x9fI\\xec\\xb7\\xd1 \\xdfI\\xf8 m\\xe1\\x17\\xb7 \\xb5e\\xf4\t\\x92\\xb4\\xbcg\\x95\\xa7\\x0d2\\xb0\\xe9\\x90|<\\xcb\\xe3^/\\xaa2[-\\xb3\\xba\\xb9\\xba\\x83\\xeb\\xf6\\xbf\\xf5\\xcb\\x80\\x91w\\xa7\\xe5R\\x7f\\xfeyxwM8\\xaf\\xad\\xb9\\xebB\\x95\\xd8XbQO%mY\\xbe\\xd9\\x1a\\x9ep\\x02\\x0c\\xca\\xa9\\xd1\\xe0,\\x8fM5y\\xb3c\\xcf\\x85\\xc9\\xebzW.?\\xab\\xef\\x19\\xd26w\\xdb\\xac\\xdeF\\x16d\\xd0%\\xfcc\\xfa5\\x90\\xeb5\\x19\\xa2\\x96\\xe5\\x8a\\xd5\\x87liAy\\xbd\\x1fUu{\\x9b\\xed\\xa5\\x9a6\\xe8\\n\\\\\\x94+\\xd3\\xf5\\xdfL4\\x04/\\xd9\\x10P-=h\\x82.8\\x0c\\xff\\xa6\\x11\\xe0\\x8d\\x7f!k\\xfc!\\xbe\\x84\\xf0\\xdbX\\xfd\\xa4\\x85H\\x0c\\xd9\\xaa\\xecvq\\xea\\x87\\x96x\\xbf\\x97\\xc7\\xe6p\\xec\\x8e\\xae\\xda\\xf3)\\x8fj\\xd8\\x95\\x9b\\x0d\\xab\\xe0q\\x95\\xdd\\xaa\\x8f}u\\x06?X\\x9f\\x07\\xb2\\xb3\\x0b\\x8a\\xb2x\\xbab\\x0d\\xab\\xf6y\\x91\\xd7M\\xbe4\\xd5xWn\\x1e\\xf0\\xbb\\x1d\\xfbz\\xb3\\xf0\\xbe\\xc4\\xe3\\x1f\\x96R\\xfc\\x83\\x13\\\\\\xeflI\\xf1\\x0e\\x02\\xf0\\xbco%\\xc5\\xd7\\xb8R~\\x99g\\x9f\\x84JO\\x1adCH\\xc1\\xbd\\x84%\\x05\\xd70R\\x10\\xcd#\\x05\\xddHR\\xf0M%\\x05\\xf5N\\x96\\x94\\x80V\\x93\\xe2\\x8d\\x8b\\xaeK\\xa0v\\xdcz5\\x94\\xfeM\\xaa\\xee\\xfeQ\\xf4\\x1d\\x0c\\xb7Uv8\\xb0\\x8a_x+\\x17[\\xad\\x17\\xbe\\x00~f\\xf7\\xc2\\xd4.OwY\\xe5\t8\\xdf\\x8a\\xach\\xdd>\\xbf'\\x8e\\xa1\\xd9\\xad\\\\\\xe5\\x1d\\x98gp\\xcd?\\x8a\\xefHg\\x89\\xb6\\xd6\\xac\\x18\\xbc\\xbf\\x14Tq\\xc1\\xd3\\xe5\\xeb~7/|\\xf5m\\xd9\\xdd\\x9f\\xd9\\xfd\\xb3\\xfe\\xed/\\xc5\\xf3\\xe5\\xb7\\xf1QSx\\xd4a\\x1b*\\xa4\\x99\\xc2\\x1f\\xaar\\xaaS\\x8fX\\xb5\\xcfU\\xd5\\xe5\\xde3(\\x9c\\xcfTA@e\\xce_\\\\\\xbc\\xfeA\\xe2\\x19o\\xcaM?\\xccy\\x1b\\x1f\\x97\\xcd\\xb1bm%E\\xf8\\xc5B>\\x15\\xe7\\xa0{6wBg\\x07\\x92\\xec\\xca\\x8d\\xb9\\x8c\\xb8\\x12b\\xcf\\x0f|1X\\xc9\\xa3\\x83\\xfdi\\\"\\xd4\\x19\\xc1\\xfc\\x1c/`\\x16\\x9c\\xe1%\\xa4\\x87f\\xb5\\xd7\\xde\\xda\\x12\\xe2\\xca\\x92\\xec\\xb9]\\xe4\\x11\\xf5|\\xf0\\xd4l%\\x9d\\xb3Z\\xa2\\xea\\xf4\\xde\\xa6K\\xa27r\\xa3\\n\\xda>\\x85\\xcb/\\xc8\\x9eb6\\x96\\xc3\\x95w\\xd3\\xf4o\\x93\\x8d\\xf7\\xd95o+\\x00z^@\\xac\\xa3\\x8eC_\\xd0skI\\x9du\\xbc\\xee:\\xa9\\x1dv\\xf0.;\\x89\\x9cv\\xe2\\xdcv\\x1c\\xea\\x02\\x1fX\\x9b\\xe9\\xba\\x93\\xday'\\xd0}'\\xb1\\x03O\\x98\\x0bO\\xa0\\x13\\x8fk\\x0cw\\xee=X7\\x9e\\xc4\\x8e<(W\\x9e\\x84\\xce<s\\xddy\\xa2\\x1cz\\x12\\xb9\\xf4\\xc48\\xf58\\x94\\xa1\\x9fP;\\x81c\\xcf\\xe9\\\\{N\\xe2\\xdc\\x13\\xe6\\xde\\x93\\xdc\\xc1\\x07\\xeb\\xe2\\x93\\xd4\\xc9\\x07\\xef\\xe6#\\x8f\\x11\\x01\\x8e>\\xe1\\xae>\\xde\\xa5\\x10\\xf7X\\xdalw\\x1f\\xafA\\x00u\\xa0B8\\xfd\\x84\\x9c\\xba\\x82\\x1d\\x7f\\\\\\x9b \\xfay4\\\\\\xf9\\x12\\xba\\xff\\x848\\x00%v\\x01\\x8as\\x02r\\x8d \\xd4\\x93h\\x91\\x8e@\\x16m\\x0d\\xea9\\xb44\\xce@h\\x8f\\x16\\x84CP\\x90K\\x90\\xef\\xbd\\x9f\\x18\\xb7 \\x9fN+\\x997\\x91sPxc\\xe2\\x1d\\x84|u\\x8bp\\x12\\x8at\\x13r\\x91\\xa2\\x93\\xb9\\n\\xa1\\x9d\\x85p\\xeeBX\\x87!D+\\x87;\\x0d\\x85\\xb8\\x0d\\xb9\\x1f8K\\xe2:\\x14\\xe8<\\x14\\xe7>\\x14\\xe4@\\xe4ku\\xf7\\xa3f\\x9e\\xbcxG\\xa2t\\xaeD\\xdeBYgP:\\x87\\\"\\x84KQ\\xbcS\\x91E]\\xe3}\\xc2,\\xa9c\\x91\\xcf\\xb5(\\xd2\\xb9\\xc8\\xa2\\xcb\\xfft\\x19\\xc2\\xc1\\xc8\\xfdl\\x99\\xeb\\xd1\\xb2\\xd4nF\\xc9\\x1d\\x8d\\xec\\xaeF)\\x9d\\x8d0\\xeeF\\xe1\\x0eGA.G\\x11NG\\xa1nG\\x9e\\x87\\xc8\\xdc\\xa5\\xc3:\\x82`\\x9d\\x8f\\\"\\xdc\\x8f\\x02\\x1d\\x90\\x1c\\xd5\\x8dqB\\xb2\\xa8B<=\\x16\\xe3\\x88\\xe4\\x18\\xf2\\xfeg\\xc7\\x12:#y\\x9f\\x1c;\\x85CR\\xaa\\xb1\\x18\\xe0\\x94\\x14\\xe2\\x96d>:4\\xf9\\x9e\\xd5M\\xb6?D\\\"N\\xb8\\x1b\\xf5U\\xde\\x1b\\xfa\\x0f\\x15\\xbb\\xc9\\xcbc-Ysg\\xf0\\xaa\\xac\\x14u\\xae\\x86\\xff\\x0d_?\\x81\\xbcy\\xe4zf\\xf2V\\xa4\\x15\\xc3\\x7f\\x95g|\\xad\\xb6u\\x89XA\\xdb\\xfa\\xb5\\xd1&\\x94\\xbd\\xe1\\xa6l\\xfa\\xfb\\xac,\\xc9\\x9b\\xacn.\\xca\\xfd>ol\\xcbm_T\\xf8\\xee;\\xf8\\xfa\\x89u\\xab\\xe55\\xe0\\xb7\\xdc:\\xafE\tL\\n]\\x84\\x9f\\xe6\\x01\\xf0\\xa8\\x1a\\x0f\\xa5\\xc7;4\\x00M\\xe3\\xf1UW\\n\\x82\\xba\\x83\\xa8\\xba\\x14L\\x03HA\\x11uPm\\xd1\\n\\xca\\x92&\\x05\\xc9\\xe49\\xd5\\xe7\\xbd4:)\\xf2\\xf3c/\\n\\x93\\xe0V\\x8bV\\x04\\x07\\xa4'\\x0f\t\\x1f\\xb6:/6;\\xc1\\xfey\\xda\\x93Z|\\xef.fu].saqRo\\xc6\\x0e#\\x96\\x8e\\x05[LIR\\x11hF\\xad3*`\\xc5n\\xd8\\x8e\\x8f0a\\xaa\\xcf\\x9aF\\xf0\\xcd\\xbb\\x83\\x9fU\\xa1Fq\\x80\\xc6qqmI\\xb0/\\xd8&/^\\xf0\\xd5\\xebI\\xf7\\xdbe\\xb1\\x1a\\xfdr\\xb1e\\xcb\\xcf\\x1d\\x0f|*\\xfc\\xb0\\xd0\\xa6}\\xc9v\\xf9\\x0d\\xab\\xae\\xee\\x1c\\x06\\x897Y\\xc3\\xaa':G\\xa0\\x86\\xbd\\xe4c\\xfc\\xe5\\xc8*~m\\x91\\xae\\x80\\xcd\\x96\\xd5L-ts\\x0c\\xb2\\x8a'\\xd4\\xd1j\\x14\\x17J\\xb9\\xc9\\xb6\\xb4\\x1fy+\\\\\\xb2Z|\\xdbv\\xf2\\xd1\\x99\\x0d\\x02\\xf3\\xb0\\xae\\xe2z\\xe9[w2h\\xb6%\\xff\\xd1\\xfcIY.\\x8b:u\\xbc\\xa8U \\x8a\\xd2~\\x13m\\xb5\\xaf\\xabr/*\\x9a\\x15\\x0d;\\x83?oY\\xc5\\xb2\\x1a\\xde\\x94\\x9b\\xd1\\x93\\x9e\\xb2\\x8c\\xb6Y\\xe0\\x02B\\xb4\\xcb\\xc8\\x9e5\\xd9*k\\xb2'\\xdd\\xf7\\xc5\\xc5tXE\\x7f\\xf5\\x02\\xdf\\x07\\xfd\\xe6\\xec\\xeb\\xaf\\x9f\\xf0\\xff\\xf8\\xdd\\xd9\\xb7\\xe2\\xff\\xbf\\x9d\\xe4\\xf6\\x8f\\x91\\xab\\xbb\\x8e\\x15\\xee\\xa1^Ul\\xc7n\\xb2\\xa2\\x81\\xe6N\\x10\\xc5-\\x17\\xf8\\xb6-\\x04\\xd4g\\xaaO\\x93mj\\x8dD'\\xef\\xea*\\xc2\\x08\\xec\\xca\\x0d_\\xac\\xc4\\x81u\\xc5\\x96\\xe5\\x8a\\xad\\x86\\xa3\\xdf\\xe5\\xf8\\x0c\\xba\\xeb\\xc6\\x9c\\x97Pu\\xbf\\x11z\t\\x95\\\"\\x1b{\\x8f\\x08\\xfey&%\\x8a0E\\x91\\x8d14\\xa9$$\\xa9\\x18\\x8a\\x14E6NH\\x8c\\n\\xa1E\\x05\\x91\\xa2(\\xb2\\xf1\\\\*T\\x04\\x11*\t\\x0d*\\x9c\\x04E\\x91\\x8d\\xe7\\x90\\x9fB\\xa8O\\x89\\x89O8\\xdaSB\\xd2\\x13\\x96\\xf2d\\xb0:Rd\\xe3\\xa1 l#\\xd8SR0\\xc1\\x89\\\"\\x1b\\xa3hM1\\xa4&\\x8allK\\xe6%2\\x05\\xd0\\x980q{C(L\\x14\\xd9\\x98\\\"\\x1bc\\x88J\\x14\\xd9XH\\x0c5)\\x80\\x98D\\x91\\x8d\\x13\\x10\\x91\\xbc4\\xa4X\\x12\\x92u\\xb7\\xa1\\xc8\\xc6S\\xa1\\xc8\\xc6\\x11d#?\\xd5(\\x94h\\x14@3\\n&\\x19\\x85Q\\x8c(\\xb2q\\x18\\xa9\\x88\\\"\\x1bwr\\n\\\"Q\\x8a1\\x17@\\\"\\xc2S\\x880\\x91\\x8d\\x13\\xbf\\x84j\\x85E\\x9c\\xf1\\xc4D\\x94\\x8a 0\\xc7s\\xf7\\x1f\\xdc\\xad\\xdb\\x0ft\\xa8\\\\v\\xebr\\x98\\xdf;\\xb0*KY\\xa6\\xb1\\x0f\\xa5<\\x85\\x17\\x1f\\xde\\x9d\\xbf\\xbc8\\xffx\\xb5\\xf8\\xe1\\xdd\\xcbKk\\x1cDK\\xf2\\x17o\\xde]\\xfc\\x1b&\\xe1\\xc7\\xffx{\\x81IwnL\\xd8\\x05T\\x0c(\\xad\\xdfz\\xd1\\x01\\x9a?\\x94+\\xa6\\x85\\xcf\\x14X@\\x17\\x18\\x8f\\xb7\\xb6\\x05\\x19\\x05\\x01\\x15O\\xf0Q\\xf8\\xf0\\xfe\\xa2CHMc\\xdf\\xd5\\xea\\xcf\\xe1\\xaf\\xac*\\x15\\x17EL~\\xfe}\\x11\\x10\\xd3\\xb2n\\x99;e\\xd2V\\xe2W\\x0d\\xcen\\xb4\\xe8\\x7f\\x02\\xe7\\xe2\\xdf\\x11\\x91c\\xe4\\xba\\xb6\\x13q\\x98o\\xb3\\xbc\\xa9-\\xe0\\x84\\xd8\\xe3\\xef\\x94]v)\\x88n\\x8d\\x0c\\xb7\\x98)\\x06\\x1c\\xaa\\xb8\\xbc\\xc7'\\xa5\\xe5?&-l\\x06\\x8a\\xb5\\xd2\\x07i\\xe9\\xd1o~`\\xc5\\x15\\xf6\\xdcX\\xda\\xf3\\xa8\\xe2\\xca\\x00\\x95&+R\\xbe\\x17\\\\\\xc4\\x86\\x8d\\x8b\\xe5\\x1e\\xd4\\x03\\xa0_\\x04\t\\xe9q~\\xf9\\xcf&\\x08\\xe6WJ\\xc6cX\\x1f\\xde\\xf2\\x17d@J\\xf3\\x03\\xd1\\xcf\\xc4Xy\\xf6\\x93$B\\xfeM\\xea\\xb1\\xbc\\x17-\\x88H\\x7f\\xce\\x9b\\xed\\xd5]\\xdd\\xbd\\x19\\xadF\\x9b4\\x19*~\\x044w\\x9dIw\\xd0h\\x8f\\x8c\\xac\\x91o\\xcf\\xbei\\x9fi\\x1e\\xbf6\\xad\\x7fR%\\xf9y\\\"_\\xe2_\\x9c\\xd6\\x8bH\\xafN\\x0b!n\\x06q3z!n\\x06q3z!nFC\\xdc\\x0c\\xb3\\x107\\xa3\\x15\\xe2f\\x107\\x83\\xb8\\x19\\xc8S\\x12q3:!n\\x86.\\xc4\\xcd n\\x86A\\x88\\x9baLC\\xdc\\x0c\\xe2f\\x00q3\\x88\\x9b1\\x14\\xfb\\xe5\\x96\\xb8\\x19\\x83\\xdf\\x89\\x9bA\\xdc\\x0c)\\xc4\\xcd n\\x86YeRn\\xc6\\xe4\\x85\\xb2\\xc1\\xb5TE6Q\\x10\\xa4\\xfa\\x97Z\\xfc$b\\xd7\\xbe[\\xa8\\xafBy\\xf1|l_\\xb7\\x12<,\\xb7|\\xf3\\xab\\x05\\xf4|t\\xdc\\xd3\\x83\\xf4|\\xf4\t\\x1b\\xd7\\xff\\xf01\\xbd\\x8e\\x99\\xa2\\x15\\xe9\\xf9hz>\\xfa\\xef\\xf3\\xf9\\xe8y\\xdc\\x9a\\x9f\\xb6Y\\xbdusj\\xae\\xee4&Ms\\xc7'\\xac\\xfe\\x0c\\xe8\\x98\\x0f\\xf33\\xbf\\xff\\x8ag\\xc1\\xf4\\xd1M\\x88\\xfbB\\xdc\\x17\\xe2\\xbe(!\\xee\\x0bq_z!\\xeeKC\\xdc\\x17\\xb3\\x10\\xf7\\xa5\\x15\\xe2\\xbe\\x10\\xf7\\x85\\xb8/\\xc8S\\x12q_:!\\xee\\x8b.\\xc4}!\\xee\\x8bA\\x88\\xfbbLC\\xdc\\x17\\xe2\\xbe\\x00q_\\x88\\xfb2\\x14\\xfb\\xe5\\x96\\xb8/\\x83\\xdf\\x89\\xfbB\\xdc\\x17)\\xc4}!\\xee\\x8bYeZ\\xeeKV\\xebK\\xd4\\x90\\xf9\\x92\\xd5\\xdb\\x0e\\x86\\xbf\\x93\\xffl\\xb9.O\\x80\\x15\\xd2E]\\x8c\\xb0-\\xbbS\\x938!\t&\\x103<\\x1e6U\\xb6b\\x1dp(^\\x1ea\\xab\\xc5a\\x97\\x15\\xcf~\\xe2\\xd5u \\x88\\xe72\\xf1\\xfb]V\\xa8\\xd7:x\\xb5\\xdaG\\x99v\\xf7\\xa0\\xb4\\x81\\xfa\\np\\xad\\xfc@\\x917\\xb5hJ#\\xd0\\xa8i\\xfd\\xa2\\xad\\xff\\xcf\\x017Z\\xd1);.%\\x89MA\\x88\\x9a\\x8d\\xa2\\xd4\\x8a\\x83F%\\x89S\\xea\\xb7\\xacQ\\xf3\\x9e\\xffE\\xb4\\xebmV\\xb7\\x0d>\\xdc\\xde\\xdcF\\x93\\x7f\\xe7#Sk\\xf3\\x98w\\\"\\x84\\x8eg\\xfap\\xf8\\xf0\\xfeb<\\xf9\\xe9\\xe1\\x08\\x02h\\xbd\\xd6I\\x8c\\x81\\x0f\\x08\\xa0%\\x80\\xd6\\x9a\\x92\\x00Z!\\x04\\xd0N\\x85\\x00Z\\x02hmB\\x00-\\x01\\xb4B\\x08\\xa0%\\x80\\x96\\x00Z\\x02h\\xa5\\x10@K\\x00-\\x01\\xb4\\x04\\xd0\\n!\\x80\\x96\\x00ZM\\xec\\x97[\\x02h\\x07\\xbf\\x13@K\\x00\\xad\\x14\\x02h\t\\xa05\\xabL\\n\\xd0\\xf2\\xff\\xd5\\x14\\x0c.\\xa5b&*lK7k\\xb7X\\xa5\\xc0\\xd2Z\\xc4\\x96o\\x11'\\x04g\\xff}\\xe0\\x1e\\xfa\\x14>I\\x9c\\xd4\\x85\\xcf\\x1e\\x9bmY\\xe5\\xcd\\xbd\\x1d\\x95\\xfd c\\xcb\\xcbJ-\\xa5\\x97\\xb1\\xbc\\x19\\xb7y\\x85\\xb9\\xaf,V\\xc7e\\xd3B\\xb3\\xed\\xbd\\x14\\x110\\xfd\\xf7\\xc6p\\xe9\\xe7\\xadr\\xf5\\xc7\\x07\\x8b\\xd9f\\xabU\\xc5\\xea\\x90\\x17=B\\xdaD\\xa9\\xca\\x9b\\x1d{\\xae\\xa0\\xd5\\xb6a\\xfc\\xc0\\xaa\\x82QG-IH)!\\xa5\\x06\\xc1X\\xda\\x80\\x90RBJ\\xad)\t)\\x15BH\\xe9T\\x08)%\\xa4\\xd4&\\x84\\x94\\x12R*\\x84\\x90RBJ\t)%\\xa4T\\n!\\xa5\\x84\\x94\\x12RJH\\xa9\\x10BJ\t)\\xd5\\xc4~\\xb9%\\xa4t\\xf0;!\\xa5\\x84\\x94J!\\xa4\\x94\\x90R\\xb3\\xca`\\xa4t>\\xea\\xa8l*\\xc2+\\xd4\\x0e<^\\xc8T\\x03wP\\xd9\\x89\\xe2\\xf7\\x81\\x17\\xa8\\xd1\\xf3SS\\xa0\\xfe\\xfc`Q\\xc4\\xbe%t\\x19\\x14E\\x00\\xc9\\xb9\\xbf\tzq\\x82JnHI\\xe0\\xde\\xc6\\x91\\xe0\\xb5\\xa3`\\x0c\\x11\\x00\\x1fY\\xa3a\\xe6\\xca\\x0d\\xb4\\xad\\x8f\\xc2t\\xc4\\x9f\\xda5AX\\x87,\\x07+\\xd03[!$eN\\xec\\x8c\\x0e\\xe5\\xba\\xb9U\\xb1\\x9b\\xb3\\xc3a'os\\xc2\\xd0\\x92\\xed\\xe0\\xcb\\xb2x\\xaa\\x14\\xdaf\\xc4\\xb2\\xdc\\xef\\xb3bU\\xc3\\xea(\\x1a\\xc3Q4\\xb1\\xb4\\xc3\\x0b\\xb6\\xc9\\x0b\\xf1\\xc2\\xb6:|\\xf5\\x87\\xaa\\xae's\\x8b\\xd3m/2\\xaev\\xb6\\xab\\x05Ta\\xadmS\\xc2\\x8a5l\\xd9\\xc0\\xed\\x96\t#^\\xd6W\\xb9m\\x8aeV\\xc06+V;\\x06\\x19l\\xf2\\x1bf3lv\\x1d#\\xec\\xf8\\xb6o\\xb6\\x95\\x90*+i\\x16j\\xba\\xae\\xe4\\xbb\\xc75c\\x85@)\\x0c!\\xb2{i\\x0b\\xfa\\xa4\\x0b\\x0co7\\x1c*\\xd0\\xa0\\x8f\\x9e\\xde\\xd52\\xaf\\xa1<6O\\xcb\\xf5\\xd3U\\xd60\\x19v\\\\kk\\x8b\\xbe\\xab|\\xcf\\xa0\\xac\\xe0\\x8f\\xad\\xb3\\xb4\\xed\\xc3\\x15\\xcb\\x96[\\xbeI\\xc9\\x03x\\xff]Q`v\\x977\\xa6.l\\xf2\\xe8\\x99\\xd5\\xda'ym\\x9er=3\\xe6\\xdfK\\xbe\\xf3.\\xb3\\x86\\xad\\x9e\\xcb\\x1a\\x0b\\xc0\\xa1\\xa3oH\\xe0@t\\xd6\\xaaKy&RZ\\x14\\x0e\\xf2\\xc3\\xae\\xdc\\xe4K[\\xc3u\\xe3\\xa0b\\xfb\\xf2\\x86\\xad`]\\x95{\\xd1\\x84\\x1f_\\xfe\\x9b\\xd5\\xb6 \\x8e*y\\xadN\\xb2\\xcaP.l\\xcfO:\\x08\\xa6[-\\x9amU\\xde\\x1a\\x96D\\xbb\\x8f=\\x84\\xf4\\x80\\xd9\\xd7\\x1e\\xc6\\xad\\xff\\xdf\\xb6\\xd6\\xbf\\xea_1\\x198\\xde\\xb7\\xcd\\xb7W\\xe6\\xe3\\x03\\xab\\xf8'\\xed\\x8b\\xc1;uy[\\xf1+\\xb2\\xe8G\\xd50\\xa3P\\xfa\\xad\\xe4\\xc5\\xba\\x8c\\xac\\xbb\\\"\\xa1XG\\x94\\xb0\\x87\\xf50Wo\\xb5\\xef\\x96\\xb6b]*\\\\H=a`\\x83\\x85\\xca\\xe2\\xe9r\\x9b\\xd9Q\\xee\\xfa\\xb8\\xdc\\xca\\x98\\x17\\x9b\\xbc\\x11\\xebp\\xae\\x1e\\xfd\\x10\\xd6\\xf6\\xac)\\xab\\x1a\\x96\\x02\\xdc\\xce\\x8eM\\xb9\\xcf\\x9a|\\xe9\\x80M\\xdb\\x026\\xa5!A\\xbb\\xab,\\x96\\xbb\\x9c\\x9fY\\xea&k\\x9c\\x13\\xd8J\\xe2\\xf0\\xed\\xb9\\x80 r \\xfa\t\\xd0k\\x00\\xc4\\xd29\\x1c\\xfa&\\x16}\\x87\\x81+-\\xa5\\xc3K\\xeaHM\\xeb\\xc0\\x13;\\x12Q;\\xe2\\xc8\\x1d\\x0eu\\xbcA\\xd1\\xf4\\x8e\\xd9\\x04\\x8f\\xd4\\x14\\x8f@\\x92Gb\\x9aG\\x18\\xd1#\\x90\\xea\\xe1\\x1a\\xc3\\x1d\t\\x04K\\xf6HL\\xf7@\\x11>\\x12R>\\xe6\\x92>\\xa2h\\x1f\\x89\\x88\\x1f1\\xd4\\x0f\\x872y\\xc6\\xf2\\x92?NB\\xff8\\x1d\\x01\\xe4$\\x14\\x900\\x12Hr\\x1a\\x08\\x96\\x08\\x92\\x94\\n\\x82'\\x83\\x04\\xd3A\\xc2\t!\\xde\\xa5\\xf0+\\x04%$\\x01)\\xc4C\\x0bA\\x1e\\xa8\\x10\\xd4\\x90\\x90SW0=\\xc4\\xb5\t^\\x977\\x0cA\\x10\\xc1\\x96/!I$\\x84&\\x92\\x98(\\x12G\\x15q\\x8d\\xa0\\xdaO\\x16\\x89\\xa6\\x8bX\\xb4\\xf1\\xaf\\xf9\\x08#\\xa9(#h\\xde\\x03\\x826\\x12D\\x1c\\xf1\\xa0\\xb2Q\\xe4\\x11\\x9fN+\\xe4\\x93\\x88B\\x12\\xde\\x98x\\x1a\\x89\\xafn\\x11T\\x92H2\\x89\\x0b:KF(ASJp\\xa4\\x12,\\xad\\x04\\xd1\\xca\\xe1\\xd4\\x92\\x10r\\x89\\x8b^\\x92\\x88`\\x12H1\\x89#\\x99\\x04\\xd1L|\\xad\\xee\\xa2\\x9ax\\xf3\\xe2\\xe9&\\xe9\\x08'\\xdeBYgP:\\xda\t\\x82x\\x12O=\\xb1\\xa8\\x13\\xc6L\\x07\\xf9$1\\xfd\\xc4G@\\x89\\xa4\\xa0Xt\\xc9\\x1b\\xa7\\xeb\\xd2\\x8d\\xa0\\xa1\\xb8\\xb0r\\x17\\x15%=\\x19%9\\x1d\\xc5NHIII\\xc1\\x90R\\xc2i)A\\xc4\\x94\\x08jJ(9\\xc5IOq\\x93\\x05\\xf0t\\x01,E%\\x82\\xa4\\x12HSqT7\\x86\\xaabQ\\xa5\\xd1@pS\\x02GWq\\x0c\\xf9b\\xe3&\\xac$\\xa5\\xacxH+\\xa7\\xa1\\xad\\xa4\\x1a\\x8b\\x01\\xd4\\x95\\x10\\xf2\\xca\\xf8\\xe8\\x80\\x08b\\xad\\xd1G\\xfc\\xbe\\xd6\\xb6 \\xd6:\\x89\\x85\\x82X\\x93k\\xb6\\xf1\\xef\\xe4\\x9a\\xad\t\\xb9f\\x93kv/I1\\xbb\\x10\\xc4.\\x08\\xaf#\\xd7\\xec\\xb9(]\\x04F\\x97\\x04\\xa1\\x0b\\xc7\\xe7\\xc85{\\x0e.\\x17\\x82\\xca%\\xc6\\xe4p\\x88\\\\B<\\x0e\\x8b\\xc6\\x19\\x0e\\xc4\\xe4\\x9a=\\x14\\x04\\xfe\\x86=%\\x05co\\xe4\\x9a\\x8dB\\xdcb\\xf06r\\xcd\\xb6%\\xf3bl\\x01\\x08\\x1b\\xc6\\xf18\\x04]#\\xd7lr\\xcd\\xc6`h\\xe4\\x9a-$\\x065\\x0b\\xc0\\xcc\\xc85;\\x01F\\xe6E\\xc8b\\xf11\\xebnC\\xae\\xd9S!\\xd7\\xec\\x08\\x1c\\xcc\\x8f\\x82\\x85b`\\x01\\x08X0\\xfe\\x15\\x86~\\x91kv\\x18\\xdeE\\xae\\xd9\\x9d\\x9c\\x02\\xe3J1\\xe6\\x02\\xf0-<\\xba\\x95\\xce5{_\\xae\\x8e;\\xb6P\\xf6\\x9d\\xda\\xee\\x9d\\xfd\\x83H\\xf8'\\x95n\\xe0\\xa0\\xbd\\xcbka\\x98\\x95\\xbaZ[Q-\\xdd\\xfc\\x84\\xffT\\xbb\\x92!B!\\xff\\xd6\\x18\\x1ez\\xf8u\\x95\\xe2\\xc1zw\\x1b\\x1bU\\x97_\\x02\\x98\\xb2\\xbbx\\xa3,2\\xca\\x1d\\xb0\\x18\\x86<WU5\\xe6Q\\xd5\\x9f\\xf1\\xcd\\xd6\\nt\\xb4\\xfb_v\\x05[\\xf2\\xbe,\\xeac=\\xf6\\xfbv\\x96\\x12\\xe3\\xbe9\\x18{\\x9d\\xf9\\x87\\xaf\\xbej\\xc0K\\x83a=-\\x82\\xe5Nb\\x1e\\xf7\\x93\\xa4~3\\xd2h\\x9c\t\\xbb\\xfdx6JS\\xad\\xf2\\xccfy\\xd5\\x97\\xd2\\xa0\\xb0\\xd54<y \\xb0\\xf3\\xe1\\xfc\\x8c\\x87\\xcfG\\xf3|\\x94\\xe6\\xc3\\xfb\\x8b\\x0eA\\x1f\\xff\\xcd\\xd3\\xa8\\x04\\xb4\\x8f\\xfeJ@\\xbbo`\\xf7B@;\\x01\\xedf!\\xa0]\\x08\\x01\\xedS!\\xa0\\x9d\\x80v\\x9b\\x10\\xd0N@\\xbb\\x10\\x02\\xda\th'\\xa0\\x9d\\x80v)\\x04\\xb4\\x13\\xd0N@;\\x01\\xedB\\x08h'\\xa0]\\x13\\xfb\\xe5\\x96\\x80\\xf6\\xc1\\xef\\x04\\xb4\\x13\\xd0.\\x85\\x80v\\x02\\xda\\xcd*\\x83\\x81v\\xd7k\\xd1\\n\\x85+\\x1c\\x8fF\\x8f\\x90E-\\x87\\xc4\\xec\\xe4J\\xd5\\xbd\\x1a\\x9d\\xf5\\xd7\\x7f\\x03r9E:5\\xa0\\x1d\\xde\\xb0\\xec\\x86/\\x04\\xc2\\xba#\\xcd\\x14\\x93\\xd0\\x06k\\xd6\\xa8\\x00\\xb4|\\xef\\x0b\\xc0\\xef\\x01\\xe4\\x1b\\xd6\\x7f\\x19\\xf0\\x0c\\xf4G\\xac\\xd7\\xd9\\xae\\xd6\\x8bk0A\\xcc'-\\xf41Z\\xdb\\xa6\\x90aZ\\x9f\\xfd$\\x96?\\x19i\\xf7ov.\\x83f*P\\x1f[]\\xb4\\x9a>rE\\xc3\\xf8\\xf3]{\\x8b\\x8f\\xc8Y,\\xa6\\xad\\xb0\\xf3\\xf5\\xa3Z,\\x14Mu\\xac\\xf9\\xbd\\xf83\\xab\\n\\xb6\\xeb\\\"\\x9d\\x17\\xec\\xae\\x19\\\"\\xd3y\\x0d\\\"\\xe8\\xed\\x19\\xbcV\\xea\\xc4\\xa9D\\xb7\\x16\\xd5MY\\xf1\\x15A\\xc6\\xb9\\x16\\xe7\\x0d\\x15Ex\\xa8\\xe1\\x0b_u>\\xbc\\xbf\\x90Q\\x82\\xa5\\xc1\\xa0\\xb59\\xed\\xd8&[\\xde\\xab\\xcaj\\xdb\\xb6@\\x97\\xaa\\xc3\\x92\\x0f\\xce>\\x1c4\\x14\\xe5\\xad\\xac\\xfc\\xeb\\x17\\x17bY\\xcc\\x9b\\x1a\\xf82Y\\xb1\\xc3.[\\n\\xebU\\xaf\\xe4\\xb10\\x99=\\x7f\\xf6l\\x937\\xdb\\xe3\\xb5\\x98\\xad\\xaa?\\xf3\\xeb\\xe5\\xd3M\\xf9\\xeczW^?\\xfbf\\xf9\\x87?\\xfc&\\xfb\\xe6\\x1b\\xf6/\\xeb\\x7fY.\\xff\\xf9\\xdb\\xf5\\xef\\xbf\\xb9\\xfe\\xf6\\x9b\\x7f^f\\xff\\xf2\\xbb,\\xfb\\xe7o\\x97\\xec\\xeb\\xaf\\x7f\\xf3\\xfb\\xdf\\xfc\\xe6\\xebgb\\x8a\\xf3\\xac\\xcf\\x96e\\xc5\\x9e\\xc9\\xf0\\xbc\\xcfn\\xbe~&\\x06\\xa3\\\\\\x01\\xfe\\xc7\\x9bo\\x7f\\xd7\\x1e\\xfe\\x87O\\x03\\x88\\x0f\\x9b[G\\xa5\\x7f\\xb0l\\x12\\xdbh\\x0f\\x82n=\\x96>E\\xa2\\xf0Pr\\xa4 \\xe8\\x00\\xe6\\x86\\x8e\\xa7\\x05X:n\\x94V\\xa7\\x07\\xb4\\xbf\\x11\\xee?\\xfa+\\xe1\\xfe\\xbe\\x11\\xdc\\x0b\\xe1\\xfe\\x84\\xfb\\x9b\\x85p\\x7f!\\x84\\xfbO\\x85p\\x7f\\xc2\\xfdmB\\xb8?\\xe1\\xfeB\\x08\\xf7'\\xdc\\x9fp\\x7f\\xc2\\xfd\\xa5\\x10\\xeeO\\xb8?\\xe1\\xfe\\x84\\xfb\\x0b!\\xdc\\x9fp\\x7fM\\xec\\x97[\\xc2\\xfd\\x07\\xbf\\x13\\xeeO\\xb8\\xbf\\x14\\xc2\\xfd\t\\xf77\\xabL\\x8a\\xfbkX\\xb3\\xa6\\xc7\\x85\\xfbO\\x10\\xdc\\xfeeo\\x01\\xe4v\\xef\\xc0\\xf2a\\xc2;\\xadb\\x7f9\\xb2zh\\xda\\x17{b^\\xb7 \\x9aRw,V\\xacRc@`\\xcdc\\xd4Z\\xe0\\x06e50O\\xe5\\xc5\\xf3\\xb15\\xbfG\\xf2\\x9b\\xea\\xe8\\x01\\xf2\\x01\\xcc/\\xe4\\x86\\x03\\xfc\\xd9\\xb1\\xd9\\xfe\\xb5\\x83\\xf77UV4\\x8eP\\x04\\x1fXs\\xac\\x8a\\xba\\xe3-\\xfcx~l\\xb6e\\x95\\xffU\\x9a\\xfd\\x9f\\x80P \\x0d\\x8e\\xbc\\x89\\xe4?\\x19?\\xc3\\xf4\\xff\\xecL\\x98\\x03\\x9c\\xf8{\\xf1i\\xf5\\x97\\x07\\x8b\\x08\\xeb\\x0d\\xa4K\\xf3\\x0b\\xc0q\\x99\\xde\\xf6n\\x83\\x94\\xe3\\xa5\\\\\\xffw\\x00\\x01\\xfd\\x01\\xce\\xf6\\x05H\\x13R+\\xa10\\xa0S\\x99\\xd9\\x16\\xe4\\xb8\\x1a\\xa5\\x86\\x03\\xc1\\x0f\tB\\x04,\\xe8\\xae@\\xd6l\\xd1\\xd0 \\xa4\\x82\\x07!\\x12\\\"t*\\x0c|Cw6T\\x08\\xc1p\\xa1S\\x95\\x821\\x82 CH\\x0d\\x1bB t\\x08\\xa1\\xf0\\xa1{dG\\xbc\\xa8\\x9b\\x18F\\x04\\x1c\\x94\\x08)\\xe1D\\x98\\x0d)B\\x1c\\xac\\x08\\xa9\\xa0E\\x88\\x82\\x17\\xdd\\xd3\\x01\\xfb\\xc2\\xeeI`F8!\\xd4\\x08\\xa7\\x81\\x1b!\\x10r\\x848\\xd8\\xd1\\xb7\\x04\\xe3\\xa0GH\\x0b?B\\x00\\x04\t\\xe10$D@\\x91\\x88%\\x13\\xf7\\xeen\\x02H\\x12|\\xb0$\\xe0\\x8fg\\x08x\\x12\\x02Oq\\xc10\\xa5S\\x1b\\xfe\\x15^|)\\x13B\\x96\\x10\\x04[Bj\\xe8\\x12\\\"\\xe1K\\xf7\\xb8B\\xbd\\xc8\\x1b\\x0dcZ\\xf55\\xa8WyS\\xc1\\x99\\x80G\\xe5\\x00\\x03kB\\x18\\xb4\t>\\xe4 \\x12\\xe2\\x04\\x84^\\x87q2\\x11\\xdc\tQ\\x8d\\x8b\\x87=\\x01Q\\xcb\\x08\\xf8\\x13b!P\\xf0\\xbc'\\x98\\x0c\\n\\x05<\\x1c\\nHH\\x14\\xd0\\xb0(\\xe0Z=\\x1c\\x1e\\x85 \\x88\\x14<o\\xf8&\\x82J!\\x14.\\x85H\\xc8\\x14\\xc2`S@\\xf4\\x82\\xfb=_D~<\\x8c\\n\t\\xa1T\\xc0\\x14\\xcd1\\xcf\\xd2\\xc1\\xaa\\x80\\x81Va\\x06\\xbcjU\\xd8x_\\xf8M\\x0c\\xb3\\x82\\x17j\\x85X\\xb8\\xd5\\xaa\\xcd\\xff\\xd2/\\nv\\x05\\xcfk\\xbf\\xee\\xf7~c X\\xab*\\xcfK\\xc0\\x91\\xf0\\xacU\\x9b<e:lr\\xe9`Z@A\\xb5\\x10\\x01\\xd7B\\x18d\\x0b1\\xb0-\\x04C\\xb7\\xe0{\\x1b\\xd8\\xf7\\\"+\\x1eR\\xc3\\xc2\\xb8\\x10\\x03\\xe5B(\\x9c\\x0b\\xee\\x8a\\xc7\\xc0\\xbaVe\\x88\\x97\\x82\\xe3\\xe0]\\xe7\\x84\\xf0\\xbf\\x16\\x9c\\x14\\xe6\\x05\\x1f\\xd4\\x0bn\\xb8\\xd7\\x9a'\\x16\\x06\\x86\\x84c7\\x00\\x0e\\x86 H\\x18\\xac\\xc7\\x17vw\\xc8+\\x04\\xfe\\x85\\\"d\\xaf\\xb2\\x86=m\\xf2\\xbd\\xad\\x95\\x95\\xa7\\xa6\\xc3\\x8c\\xc03\\xc3\\xed\\x96\\x15=\\xda)\\x87\\xa3(\\xa7\\x0cW\\xdd\\x0e\\xcfCu,\\xd8\\xea\\x0c^\\xdb\\xaf\\xbf\\xc5q\\xb7\\xe3c\\\\\\xd7g\\xef\\xcaU\\xc9\\xea\\xe2Q#\\xad\\xa4\\x99,K\\xdf>\\xf0X\\x1a\\xb6\\x96e\\xb1RVr\\x97\\x83\\xc1\\x8f\\x03p\\xd11X\\xf7\\xd9=d\\x87\\xc3NX^\\xf3B\\x18x\\xa4\\xab\\xb6*\\xb0\\xe9\\x98\\x8b\\x89\\xfd-\\xf0`\\xd8\\xe47\\xac\\x86\\x03\\xab\\xf6y-]\\xe3\\x9b\\x12\\xd8\\x1d[\\x1e-\\xd6)\\xfe]u\\xc6S\\x87\\\"\\xb93j-\\xc1[f\\xba\\xb1\\xf9ME\\x83&\\x19\\x85\\xfc\\x96\\xb8p\\x07\\x7f\\xf3)\\xdbc\\xdf\\x06]#$\\xbc\\x95C\\xb6\\xc9\\x0b\\xcbx\\x1e\\x14\\xb0O(\\x81\\x0f&\\x8cV\\xda\\xaf\\xad\\xf7\\xbb\t\\x0b\\x97\\xe2D\\x86\\xdd\\x98p\\xc1\\xee\\x9a\\xc5gvow\\x13uN9\\xaf\\x89\\x113>\\xfaR\\xb4|\\x0c\\xfe\\x9f\\xcaJ\\x9f\\xd5\\xb5\\x84%\\xdeg\\x1b\\xf6AR9\\xce\\xe4\\xdf-\\xcad\\xf8\\x87\\xa6\\x8d\\x17p\\xe0\\xfb\\xd8\\xbe\\xac\\x1b`\\xc2\\xd6-\\x8c\\xe4}\\xbc\\x80\\xeb\\xd6\\x1f%\\xb7\\xcd^>\\xd9\\x98\\x00I\\x8a\\x12\\xf6e\\xc5ZP\\xc4t\\xa4j\\xca&\\xb3@\\xeb\\xe8\\xc6tD\\xea\\xf7-\\\\\\xe2\\xf3\\xa2\\x15\\xc5\\x7f\\x14\\xc7\\xfd\\xb54\\xc5\\xb6nb\\x9aO\\x92\\xad\\xbezC/\\xcbc\\xd1,\\x842\\xdb\\xc2q\\x9b\\xd5P\\xb3\\xe6\\x89\\x08d\\xa0 \\xaaZPi\\xf8`^I+\\xfcm^\\x0f\\xc7\\x07\\xc2\\xff]\\xd2H\\xe2\\xfd\\xdd\\xcf\\x87\\x93\\x9c\\x1c\\xdb\\x95\\x90c;9\\xb6\\xf7B\\x8e\\xed\\xe4\\xd8\\xdeKR\\x86J\\x08;%\\x88\\x99B\\x8e\\xedsY(\\x11\\x0c\\x94$\\xec\\x93p\\xe6\t9\\xb6\\xcfa\\x9a\\x84\\xb0L\\\"\\x18&\\xe4\\xd8N\\x8e\\xed\\xe4\\xd8\\x8ee\\x88$e\\x87\\xc40C\\xc8\\xb1\\xdd\\x96\\xcc\\xcb\\x00\t`\\x7f`\\xdc\\xb6CX\\x1f\\xe4\\xd8N\\x8e\\xed\\x18\\x06\\x079\\xb6\\x0b\\x89ai\\x0404\\xc8\\xb1=\\x01\\x03\\xc3\\xcb\\xbe\\x88e^Xw\\x1brl\\x9f\\n9\\xb6G0&\\xfcl\\x89P\\xa6D\\x00K\\\"\\x98!\\x11\\xc6\\x8e \\xc7\\xf60\\x06\\x049\\xb6wB\\x8e\\xedJZ\\xc7v\\x05\\x0bk:f\\xc7|\\x1f+g\\xa7Q\\xbe\\xaf7\\x8b\\x16F\\xd1\\xf2\\xb8\\xae\\xd5\\xef\\x94=\\xf6\\xc9 \\xf3\\x13I\\xa0\\x10\\xe0\\xa0\\x18\\xd0\\x12\\x99\\x15\\xdb\\xacB\\xd9\\xf7Y\\xb3\\xdc\\x8e\\x07\\xf6&\\xbfa\\x05\\xd74\\xb9\\xe2'\\xace\\x0f\\xb0\\x9f}f\\xf7\\xb6z\\x8e\\x10k\\x05Qgj\\x8b\\xab\\x84\\x0f\\xbd0#*\\xd4TA\\x83\\x1d\\x9e-\\x8c\\x7f\\x9b\\x91\\x95L\\xd4@>/\\xe0\\xc6\\xa8\\xdf\\xf1\\x96*\\x0ba\\x1d(\\xd7\\xeb\\x9a5\\xfc\\xc2=,.h\\xe0E\\xcd\\x9a\\xc4\\xade1\\x05\\x19\\x1aQ\\x96\\x0f9^TeDS\\x16\\xc7=\\xab\\xf2e\\xfb\\x9bX\\x0d\\x97Y\\xc1\\xeb#\\xed`|\\x0c\\xa9\\x86?\\x16\\x9d\\xe9qt\\xe1x-\\xb4\\xedX]\\xf7M(\\x8du\\xc7\\x9a7\\xf5g\\x16\\xd8\\x9eC\\xf5'n\\xdc\\x11\\xe2oh\\xde]\\xbe\\xcf\\xb1\\xad+\\xd2\\xb6x\\xb9\\x8d\\x08 \\xcd\\xd2\\xfa\\x08V\\xe8\\xfaq7\\x82\\xab\\xa5\\x11J\\xff\\xe9\\xf5\\x1avl\\xdd\\xb4\\xc4\t\\xc5\\xa4h\\x0f\\xf5\\xc2\\xa2.'\\x88\\xfc\\x08o\\xe7\\xeb{`\\xd9r\\x0b\\xd9\\xe1\\xf0\\x0b\\xb6\\xa2Ng\\xe8\\xf3\\xbb\\xdaR\\xcb!\\xa2\\x7f0Q\\xbf\\xa6:2\\x904\\xa9U\\xbe\\xec\\xde\\xb3\\xe8[P$T\\x03IW\\x97\\x17\\xcb\\xddq5:\\xb2g\\xf2+\\x1d\\xb89\\xea1\\x01\\x95k6w\\xbe\\xb5j\\xf4\\xa0\\xd1\\xe2\\xf2\\xe9u=\\xea\\xadQ\\x15\\xc4\\xf2[\\xb1Z\\x91\\x1a\\xc4\\xf4\\xea\\xe7#\\x9frgj6\\xe5\\x9bb\\x14\\xeb\\x04\\xba\\xd98\\xfc\\x84l\\x99\\xb9\\x1d{]\\x96;\\xa6\\xf9\\x9d\\x1b:\\xb0b7\\xac\\x1aduu\\x9eJ=\\xee\\xb8\\\\\\xa3\\xc3T\\xcc<\\x13\\x06z\\xf87X!\\xb0\\xdc\\xb2Z\\xb1jl\\xb24?\\xf8\\x90\\xb45|\\xe1`\\xce\\x8f\\xcd\\xf6\\xaf\\x9e`0\\xcf\\xd4\\xb1\\xe1\\xd9O\\xea?\\x1c\\xaf\\xbb|/SH\\x0e\\x8ej\\x1c\\x9d%\\xf7\\xa3\\xf8\\xcb0f\\x0c\\x9f\\xe4Js;\\x14\\x06\\xbdc~\\x18\\xe3\\xf7\\xed\\xc3\\x18\\xd3\\x182\\xed\\xf7U\\x02\\n%\\x83 \\xc0\\xa8sg4\\xf8\\xa3:0:?\\x85\\xb2\\xa1P6\\x14\\xca\\xc6!3\\xc9A\\x10L\\x10r\\xaa\\xa2P6\\x14\\xca&\\x96D\\x04qD\\\"HE&\\x82(B\\x91{:P(\\x9b0\\x82\\x11\\x04\\x92\\x8c \\x8eh\\xe4[\\x82qd#HK8\\x82\\x00\\xd2\\x11\\x84\\x13\\x8f \\x82|\\x84X2)\\x94\\x8d\\x94`b\\x92S\\x1b\\x85\\xb2\\xa1P6#IC`\\x02<\\x0f\\x070D&\\x08#3\\x81\\x8f+\\x10Ij\\x02\\x84^\\ne\\xe3\\x90(\\xd2\\x13P(\\x1b%Q\\x84(\\x08\\\"E\\x01\\x85\\xb2\\xf1\\xf5\\x02\\x85\\xb2\\x99I\\xa4\\x02\\x0c\\x99\\nf\\x10\\xaa\\xac\\n\\x1b\\ne#\\x05A\\xb4\\x02\\necK\\x90\\x8e\\x98\\x05(r\\x16D\\x10\\xb4 \\x8c\\xa4\\x051D-\\x08&k\\x01\\x85\\xb21J\\x0c\\x91\\xcb\\xaa\\x8cB\\xd9\\xb4B\\xa1l\\x0c\\xf2\\x0b\\x87\\xb2qG\\x83\\x98\\\"\\xb4\\xc0\\xee\\x1aV\\xacj\\xc8\\xba\\x886\\xcd\\x16\\xae\\xcbf+\\x86N\\xb6ZU\\xac\\xae-\\x0eBj'hc\\xa1\\xf0\\xb9\\xd3\\x85>1fx\\xdd\\x11\\n\\xf8@\\xe4W\\xec:\\xafe\\x97\\x88\\xdc\\x02\\x10\\x97\\xff\\x9e\\xe4\\x1f\\x98H\\x14W\\xcc\\x15\\xa5e\\xf8H\\xc9x\\x83\\xa0X,B(\\x16K\\xff'lcR,\\x96>\\x16KK\\xc7\\x88\\x0f\\xc92d\\x95PD\\x16%\\x14\\x91\\x85\\\"\\xb2\\xf4B\\x11Y(\\\"K/I\\x89\\x16!$\\x8b \\x82\\x05Ed\\x99K\\xa6\\x88 R$!Q\\x84\\x13((\\\"\\xcb\\x1c\\xc2D\\x08Y\\\"\\x82(A\\x11Y(\\\"\\x0bEd\\xc1\\x12\\x1d\\x92\\x92\\x1cb\\x08\\x0e\\x14\\x91\\xc5\\x96\\xccKd\\x08 1`\\xe2\\x8d\\x84\\x90\\x17(\\\"\\x0bEd\\xc1\\x10\\x11(\\\"\\x8b\\x90\\x18\\xb2A\\x00\\xd1\\x80\\\"\\xb2$ \\x12xI\\x04\\xb1\\x04\\x02\\xebnC\\x11Y\\xa6B\\x11Y\\\"\\x80\\x7f?\\xe8\\x1f\\n\\xf8\\x07\\x80\\xfd\\xc1@\\x7f\\x18\\xc8O\\x11Y\\xc2\\x80|\\x8a\\xc8\\xd2\tEdQ\\xe2\\x0e\\x9a2\\xb2\\x8e\\xf7^\\xd9Mu\\xf4\\xc6\\x1e\\xa0`\\\"q\\x91\\x1a(\\x98\\xc8\t\\x1b\\xd7\\x1f\\x06\\x83\\x82\\x89\\xa4hE\\n&B\\xc1D~\\xf5\\xc1D\\xaa6\\x98H\\xe5\\x0d&R\\x8d\\x82\\x89\\xb8B\\x89<\\xe9\\x98]]L\\x91\\x0e\\xc3\\x9a\\x19S\\xa4\\xa2\\x98\\\"c\\xf1Q8(\\xa6\\xc84\\x0d\\xc2i\\x15\\x03{\\xb4\\x12J]q*3\\xe3\\x17\\x0es^j\\n\\x0b\\xf8i,\\x10AeqW\\x80b\\x8a\\xc4\\xd2[ \\x98\\xe2\\xe2TE1E(\\xa6H,\\x0d\\x06\\xe2\\xa80\\x90\\x8a\\x0e\\x03Q\\x94\\x18\\xf7t\\xa0\\x98\\\"a\\x14\\x19\\x08\\xa4\\xc9@\\x1cU\\xc6\\xb7\\x04\\xe3\\xe82\\x90\\x962\\x03\\x01\\xb4\\x19\\x08\\xa7\\xce@\\x04}\\x06\\xb1dRL\\x11)\\xc1\\xd4\\x1a\\xa76\\x8a)B1EF\\x92\\x86\\x82\\x03x&\t`\\xa88\\x10F\\xc7\\x01\\x1f\\xda\\x1dI\\xcb\\x01\\x84^\\x8a)\\xe2\\x90(\\xda\\x0ePL\\x11%Q\\x94\\x1e\\x08\\xa2\\xf5\\x00\\xc5\\x14\\xf1\\xf5\\x02\\xc5\\x14\\x99I\\x05\\x02\\x0c\\x1d\\x08fP\\x82\\xac\\n\\x1b\\x8a)\\\"\\x05A\\x15\\x02\\x8a)bK\\x90\\x8eZ\\x04(z\\x11DP\\x8c \\x8cf\\x041T#\\x08\\xa6\\x1b\\x01\\xc5\\x141J\\x0c\\x15\\xc9\\xaa\\x8cb\\x8a\\xb4B1E\\x0cB1E\\x1eHL\\x91\\xeb{\\xadp\\x13\\x931\\xc5\\x14\\x11B1E\\xfa?a\\x1b\\x93b\\x8ah1E\\xaa41E*\\x8a)2\\x14\\x8a)B1Ez\\xa1\\x98\\\"\\x14S\\xa4\\x97\\xa4D\\x8b\\x10\\x92E\\x10\\xc1\\x82b\\x8a\\xcc%SD\\x10)\\x92\\x90(\\xc2\t\\x14\\x14Sd\\x0ea\\\"\\x84,\\x11A\\x94\\xa0\\x98\\\"\\x14S\\x84b\\x8a`\\x89\\x0eII\\x0e1\\x04\\x07\\x8a)bK\\xe6%2\\x04\\x90\\x180\\x113B\\xc8\\x0b\\x14S\\x84b\\x8a`\\x88\\x08\\x14SDH\\x0c\\xd9 \\x80h@1E\\x12\\x10\t\\xbc$\\x82X\\x02\\x81u\\xb7\\xa1\\x98\\\"S\\xa1\\x98\\\"\\x11\\xc0\\xbf\\x1f\\xf4\\x0f\\x05\\xfc\\x03\\xc0\\xfe`\\xa0?\\x0c\\xe4\\xa7\\x98\\\"a@>\\xc5\\x14\\xe9\\x84b\\x8a(\\x19\\xc6\\x14\\xd1\\xaf\\x8c\\x14S\\x84b\\x8aPL\\x11\\x8a)\\x12\\xd7\\x8a\\x14S\\x84b\\x8a\\xfc:b\\x8a\\xac\\x19\\x13\\x9bg\\x17VD DY\\xb1d}D\\x91\\xf6\\xbf\\x98#\\xb6\\xc8y\\x9b\\xad\\x8b+\\xb2f\\xcc\\xf2.\\x94\\x85\\xd25\\x08\\x12\\xd2\\xe9\\xfb\\xa2m\\x85\\x07\\x1a \\xa4k/\\x0f\\xff\\xacK'w\\xb3\\xfe\\x9fm\\x1b\\xf1\\xe9\\xaa5\\x90\\x85\\xef6\\x8b\\x85\\xe6\\x0c \\xe2E*0\\xa6\\xfe\\xee\\x1b\\xed\\xb6\\xa2\\x88\\x87\\xed\\x9au\\xac\\x99\\xaa\\xa5`\\xc2\\x16};X\\xd4\\xc9|y\\x05\\xebc\\xb12\\x020\\xce\\xa8&I+\\xc5\\\\\\x95\\xbaf\\xbcFmgZ\\xe3\\x12\\xf4\\xfd..\\xf1\\x12\\xe7\\xe2\\n\\x1e\\xd5\\xf6*:\\xc6\\x18\\xa0\\xeb\\xd0\\x7fY\\x9d\\x9a\\xb2\\xe2\\x9e\\x17\\xe2:\\xab\\xf3\\xe5\\x138\\xb0*/W\\xfc\\xbfZ\\x8cx\\xcdl\\x9d\\xd2\\xa92\\xdf\\xda\\x9d#\\x14\\xbc\\xa3\\x14\\x10\\xcc\\\"D\\xcf\\x02\\xbae \\x96_\\xe4\\xd0\\x17\\x14\\xf6%)\\xc7\\xc8\\xcb2J\\xcd3\\xc23\\x8d\\x12q\\x8d\\xe2\\xd8F\\x0eu\\x81\\x81^f2\\x8eRs\\x8e\\x02YG\\x89yGa\\xcc\\xa3@\\xee\\x91k\\x0cG\\x84vI\\xca?B1\\x90\\x12r\\x90\\xe6\\xb2\\x90\\xa2xH\\x89\\x98H1\\\\$\\x872t(\\x97\\x13\\xf0\\x91N\\xc7H:\t')\\x8c\\x95\\x94\\x9c\\x97\\x84e&%\\xe5&\\xe1\\xd9I\\xc1\\xfc\\xa4p\\x86\\x92w)\\xc4\\x05m\\x99\\xcdR\\xf2\\x06lA\\x1d\\xa8\\x10\\\\\\xa5\\x90SW0_\\xc9\\xb5\t\\xa2\\xc2\\xb4\\xb8<;\\x84\\xef\\x820\\x024e\\xd5\\xdb\\xba\\xfe\\xedO\\x1f\\xf9\\xbf\\xf9t\\xe3\\x8bG\\xb5\\x1a\\xfaX\\xf1\\xe3\\x8cA\\x99\\xdaL\\x07\\x7fAxct\\xf7\\xdexO\\x8c\\xfe*N^\\x18J\\xc8\\x0b\\x83\\xbc0z!/\\x0c\\xf2\\xc2\\xe8%\\xe9m(\\xe4.\\x14t\\x13\\\"/\\x8c\\xb9\\xf7\\x9f\\x88\\xdbO\\x92\\xbbO\\xf8\\xcd\\x87\\xbc0\\xe6\\xdcxB\\xee;\\x89o;\\xb8\\xbbN\\xc2\\x9b\\x0e\\xf6\\x9e\\x13x\\xcb\t\\xbd\\xe3\\x90\\x17\\xc6@\\x82o5\\xe4\\x85A^\\x18@^\\x18\\xbd\\x90\\x17\\x06ya\\x90\\x17\\x06ya\\x08!/\\x0c\\xf2\\xc2\\xd0\\xc4~\\xb9%/\\x8c\\xc1\\xef\\xe4\\x85A^\\x18R\\xc8\\x0b\\xa3!/\\x0c\\xa3\\xca\\x13{a\\xb8\\xee\\xa5\\xb1D\\xc1\\x8e\\x128\\xd06\\xe1\\xce%s\\x00Q\\xdc\\xbf\\xa0Z\\x051\\x05\\x07U\\x1b(\\xf3\\xf1\\x03g\\xd6\\xd1\\xc7\\x15~\\xa5\\xb8\\xc1(\\xbap\\x1d\\xc4\\x12\\xee\\x9f\\x1f\\x14\\xb6\\xfa\\x96\\x0c\\\\\\x8b\\xc3\\x81j47/\\xf8\\xc1\\xbf\\x1c\\xd8\\xb7\\xcc\\xc3\\x80\t\\x9d\\xe4_\\x94\\x89\\x0cce\\x82\\x193\\xdb\\xaa\\xd0O\\x02\\x9e\\xff\\xb8ah\\xf5\\x82\\xa6\\xb8UW\\x14\\x1d\\xd8K\\x08\\xc6\\xd7%!)\\xd8K\\x0b\\xf6\\x8e`@\\x8cb@\\x00\\xde\\x80\\xebo\\x08h'\\x88\\x00\\xbf\\x9d\\xca\\xcc\\x16P\\x87A 5\\x08\\x0e~ \\x1c\\\"\\xc0pw\\x05\\xe8m\\xc8X\\x80\\x1c\\x82Ar\\xa7*z\\x1b2\\x8a@\\x9c\\x18<\\x07\\x1c\\x80\\x0e)At\\x98\\x0d\\xa4C\\x1c\\x98\\x0e\\xa9\\x00u\\x88\\x02\\xd5\\xdd\\xd3\\x01K(>\t\\xb8\\x0e'\\x04\\xd8\\xe14 ;\\x04\\x02\\xed\\x10\\x07\\xb6\\xfb\\x96`\\x1c\\xe0\\x0eiAw\\x08\\x00\\xde!\\x1c|\\x87\\x08\\x00\\x1e\\xb1d\\xe2h\\xc6\t\\x80x\\xf0\\x81\\xf1\\x80?\\x9e!@y\\x08<\\xc5\\x05\\x83\\xf3Nm8\\xd2\\xb1/\\xa0|R\\xe2\\xb1\\x99z\\x0cV\\x7fTm\\xf5\\xe4\\xff|T\\x07z\\xa4\\xd2\\x0b\\x0cB\\\\\\xe1@z\\xa1\\x17\\x18\\x80^`\\xd0d\\xc8\\xf9\\x9f\\xf1\\xfc\\x82fY#\\xd6\\xbf\\x12b\\xfd\\xa71x\\x85\\x1a>Z\\xe3\\x86U!\\xd6\\xe8\\x91\\xd4\\xe0A\\xac\\x7fb\\xfd\\xf7\\x92\\xd4\\x90\\x11b\\xc4\\x082`\\x10\\xeb\\x7f\\xae\\xb1\\\"\\xc2P\\x91\\xc4H\\x11n\\xa0 \\xd6\\xff\\x1c\\x83D\\x881\\\"\\xc2\\x10A\\xac\\x7fb\\xfd\\x13\\xeb\\x9fX\\xff\\x0d\\xb1\\xfe{\\xc1p\\xda\\x89\\xf5o\\xfb\\x1b\\xb1\\xfe\\x8di\\x88\\xf5O\\xac\\x7f \\xd6?\\xb1\\xfe\\x87b\\xbf\\xdc\\x12\\xeb\\x7f\\xf0;\\xb1\\xfe\\x89\\xf5/\\x85X\\xff\\x0d\\xb1\\xfe\\x8d*O\\xc0\\xfa\\xd7[r&-\\x9d\\xde^\\x88\\x0dlOo/\\x9c\\xb0q\\xfd\\xaf\\x06\\xd0\\xdb\\x0b)Z\\x91\\xde^\\xa0\\xb7\\x17\\xfe1\\xdf^\\xc0\\xf8S\\xe5u}d\\xab\\xfe\\xed\\x05\\xa9\\xcf\\xedK\\xf5\\xe2\\xfe{\\xe5qcq\\xaa\\xda\\xe47\\xac\\xe0\\xd3;+Zw\\x15\\xa5m\\xd03\\x8f\\x8cm\\xf4\\xfbG*\\xad\\xc5\\x0f\\xab\\xfb\\xbaJF\\x0eYJ|\\x0c\\x0er\\xc8JZ=r\\xc8\\xb2+#\\x87,\\x0fxN\\x0eY~\\xae\\x12\\xa4\\xe2+A$g\\xc9\\xa9\\x90\\x1c\\xb2\\xe6\\xf3\\x98 \\x90\\xcb\\x04\\xa1|&\\xf7\\xc8&\\x87\\xac8\\x8e\\x13\\xc4\\xf1\\x9c \\x15\\xd7\t\\xa2\\xf8N\\xee\\xe9@\\x0eYa\\xfc'\\x08\\xe4@A\\x1c\\x0f\\xca\\xb7\\x04\\xe3\\xb8P\\x90\\x96\\x0f\\x05\\x01\\x9c(\\x08\\xe7EA\\x047\\n\\xb1d\\x92C\\x96\\x94`\\xde\\x94S\\xdb?\\x84C\\x96\\xd8\\xcc\\xc4zv\\xcdX\\x01\\xd2&`y5\\xb1\\x15r\\xc3\\x12BnX\\xfd\\x9f\\xb0\\x8dInX#7\\xac\\xce\\xa4\\x95\\xc2\\x1f\\xab\\xb7\\xce\\xe9\\x8eY\\xe3\\xda\\x99Mo]\\\"\\xf2\\xdf\\x1a\\xfd\\x95\\xfc\\xb7|c\\xba\\x97P;Ik\\x0b\\xb1*\\xc4\\xdaH\\x92\\xdaG\\xc8\\x7f\\x8b\\xfc\\xb7zIj\\xf7\\x08\\xb1y\\x04\\xd9;\\xc8\\x7fk\\xaem#\\xc2\\xae\\x91\\xc4\\xa6\\x11n\\xcf \\xff\\xad9\\xf6\\x8b\\x10\\xdbE\\x84\\xdd\\x82\\xfc\\xb7\\xc8\\x7f\\x8b\\xfc\\xb7\\xc8\\x7f\\xab!\\xff\\xad^0\\xdeI\\xe4\\xbfe\\xfb\\x1b\\xf9o\\x19\\xd3\\x90\\xff\\x16\\xf9o\\x01\\xf9o\\x91\\xff\\xd6P\\xec\\x97[\\xf2\\xdf\\x1a\\xfcN\\xfe[\\xe4\\xbf%\\x85\\xfc\\xb7\\x1a\\xf2\\xdf2\\xaa<\\x81\\xff\\x96~e$\\xff-\\xf2\\xdf\\\"\\xff-\\xf2\\xdf\\x8akE\\xf2\\xdf\\\"\\xff\\xad_\\x8d\\xff\\xd6\\xa6*\\x8f\\x87g7_\\xcb\\xffX\\xe4\\xc5\\xba|\\xf6\\x93\\xfa\\xef\\x95\\xc3y\\xeb{\\x9e\\xe4u\\xb1.E\\x91sV\\x83\\xc8\\x04\\\\AO~U\\xbfuq|\\x07\\x1eX\\x9d\\x8a/\\xda\\xba>P\\xbf+^'\\x0f'MT[-\\xa6}\\xd3\\xb4D4\\xd1\\x0cIYh\\xf9\\xeat\\x94\\xa9a\\xc5Vm\\xb5$\\xd7\\x02^\\xbfl\\x97 K\\xad\\xf8\\x15p\\x9f\\x1bH|\\x80)\\xdf\\x90Q\\xc8\\x15u^QK\\xb9\\x00\\x8e\\xbc\\xa3D)\\x1e\\xd52\\xad\\xa94{\\xd6d\\xab\\xac\\xc9R\\x14\\xc8\\x8a\\xbe\\xb4\\x1f\\x11\\xa7\\x95\\xe2^\\xc38\\xba\\xbf\\xf0\\x1d\\xafi\\xb2\\xe5V\\\"\\xb0v,\\xd5\\xda\\xae\\n\\x9b\\x8c\\xac\\x08\\xa2\\xe7}d9U\\x80v\\x0b\\x90ke\\xb6\\xfc\\xac\\x83\\xa9Y\\xd7#{~\\xa5\\xaa\\xeam~\\xb0\\xa8\\xab\\x9b\\xea\\xb8l\\x8e\\x95\\xdc\\x18m\\xb7\\x93[yp\\xadX\\xf6\\x19\\xd8]^\\x0b'?>;\\xca:\\xdb\\xd5g\\xf0\\xe7-+\\xf8\\x12.\\xda]}\\xd3\\xa6\\x8a\t@0\\xafU\\x81WOl\\x1f-uu\\xa2S\\xc5\\xddP\\x90\\xd2\\xf6\\xe5\\x0d\\xaf\\xfb6\\xaf\\xb5\\x06\\xb1\\xe8\\xc9\\x8be%PE\\xe1\\xb4\\xb7\\x12g \\xdb7\\x97\\xd9\\xb1f}\\xcd\\xfaU\\xb4\\xdc\\xadX\\xd5~K\\x0d\\xfc\\xbc]p\\xad\\xac\\xceu\\x96\\x9b\\xc8\\xbcb\\x8b_\\xc8\\x96\\x88\\x1cI\\x83)\\xa1\\xebk\\xa7j}\\xdc\\x0f\\xa6g\\xdb-\\x8fT\\x0f\\x18\\xb1\\xd4e\\xc5\\xb2\\x86\\xad\\x16Yl\\xb1\\xda\\x01\\xbe\\xca\\x1a\\xf6\\xb4\\xc9\\xf7\\x08~\\xadu\\xa4\\xf7\\x85\\x91\\xf7\\x0f\\xae\\xaen\\xb2\\xfdA\\xa1\\xa2\\xe2f&\\x8e9j\\xbc\\xc3\\xad\\x95\\xad\\xa2t\\x0d\\xeb<(\\x86\\xd8\\xa7\\xbbmc\\xcc\\xd9\\x94|\\xcc~W\\x19p8{\\xad\\xc4\\xb0\\x1c\\xfd\\x95\\x18\\x96\\xd8\\xd1N\\x0cKbX\\xdaR\\x12\\xc3R\\x081,\\xa7B\\x0cKbX\\xda\\x84\\x18\\x96\\xc4\\xb0\\x14B\\x0cKbX\\x12\\xc3\\x92\\x18\\x96R\\x88aI\\x0cKbX\\x12\\xc3R\\x081,\\x89a\\xa9\\x89\\xfdrK\\x0c\\xcb\\xc1\\xef\\xc4\\xb0$\\x86\\xa5\\x14bX6\\xc4\\xb04\\xaaL\\xcc\\xb0\\x94|\\x10M\\xc9\\xe0b\\xda\\xfe\\x1dO\\x15\\x98\\xcd\\xd0\\xb4\\xe0\\xd9>\\x06\\x8c@\\xd1\\xec\\xf4\\x17\\x85S\\xe2\\x190?\\xc8\\x0c\\x1d\tF)\\x10[\\x88\\xac\\xb5\\xca6e\\xbe\\xfc0\\x80\\xaa\\x1f,\\xf9E\\xd5\\xe8a bm\\xb7$0\\x079h\\x10\\xb3Gw/\\xb2\\xf5l\\xc5\\x1d|\\xa6\\xe7\\x1ap\\x9d\\xea_\\xab\\xac\\xc9l\\x87[O[\\x02\\xa2=A\\x1e'*V;\\x12\\xa0\\x9a\\x15\\xa6\\xdc\\x1dI\\xd3\\x19\\xd4\\xe7Q=\\xa6\\xf1\\xd8O\\xee.\\x8a\\x82\\x94\\x98byb\\xb9\\x0dy\\x0c]\\xa1oJ\\xc1:Q\\x7f\\x15\\x9b\\x1c.\\xa8\\xebF`\\xff\\xca\\xd4\\xfa\\x1b{e\\xdd$%)'\\xa8.\\x82\\xb6\\x84\\xe3,\\xb5\\xeax{\\xd9k)H4V\\x82\\x87\\x14d-qd\\x0f)!-\\xd2\\x16\\xd1O\\xfbP3\\xd4\\xce\\xfb\\xd0\\x14\\xc6\\x9av\\xb5\\x8d\\xa2?U\\xb57\\x91\\x9d\\x04\\x9e\\xb6\\xf9\\x01\\xaeYs\\xcb42JV\\x98\\xafX\\x99\\xb5\\x8b\\x0cK\\x91\\\"\\xbev\\xf3`H\\xb9\\x93\\xd6a\\x19\\x98\\xbf]!\\xc7j\\xe7\\x84\\xf4k\\xc4\\x05]#0\\xabZSH?\\n\\xe9\\xf7\\xeb\t\\xe9\\xa7\\x9f\\x14\\x1d\\xbc\\xb0Q\\x8a\\x91&\\\"\\x8c\\xf5B\\x841\\\"\\x8c\\xf5B\\x841\\\"\\x8c\\xf5B\\x84\\xb1\\x86\\x08cf!\\xc2X+D\\x18#\\xc2\\x18\\x11\\xc6\\x90\\xa7$\\\"\\x8cuB\\x841]\\x880F\\x841\\x83\\x10a\\xcc\\x98\\x86\\x08cD\\x18\\x03\\\"\\x8c\\x11al(\\xf6\\xcb-\\x11\\xc6\\x06\\xbf\\x13a\\x8c\\x08cR\\x880\\xd6\\x10a\\xcc\\xa8\\xf2WJ\\x18\\xa3X\\x7f\\xb1\\x81\\xd4(\\xd6\\xdf\t\\x1b\\xd7?F)\\xd6_\\x8aV\\xa4X\\x7f\\x14\\xeb\\xef\\x1f3\\xd6\\x9f\\x87\\xe9|(w|M\\xac\\x17\\xd7\\xf7\\x0b\\x11:\\xed\\xd9O\\xe2\\xff|\\x84\\xe7\\xfa\\xc5\\xfd\\xb9\\x88\\xca6\\x0c\\xfb\\xd7\\xaa\\xe3\\xd3ZFm\\x1b\\xf1;\\xa7\\xfc\\xe7\\xf7*\\x8bR\\xf8E\\xdb\\x08\\x0f\\x94\\x07=l\\xb6\\x87\\xc1\\xf7\\xf0Pw\\x11X\\x87\\x8b\\xb2k\\x08\\xb8\\xa7u\\xf6\\xbd\\xf9\\x86\\xf8w\\xc7\\xd0v\\x04+D\\x95v\\xd4\\x82\\xc8\\x80\\x85\\xf6p\\x85~.ph\\xa1\\x1c\\xf8\\x14\\x82\\xff\\x8b\\x0e[\\x08\\x88\\xd1\\xe1\\x8c`\\x88\\xaaY\\xf8\\xe0pT?(\\x9e\\xa1UK\\xbf\\x9a\\xdd\\x8b\\xf8l\\xb8\\xb0\\x86m`C\\x19\\x1d\\x0e2X\\xe5\\xeb5\\xab\\xf8)U\\x9d\\x18\\xca\\x022\\xa8\\x8e\\x12\\xd5m\\xc3\\x02\\x9a\\xdbu\\xc5\\x969\\xaf\\x89\\\\\\x9f,DV\\xefr\\x03\\x88%\\x07\\x1043\\xc0u%\\x04\\xf4\\x14DP\\xce\\x9c\\xca\\x1a#\\xee\\xe80\\xc3\\xa7\\xa6\\x9e\\x81\\x9f~\\x06\\x11\\x144w\\x05\\xb2f\\x8b\\xa6\\xa1A**\\x1aD\\xd2\\xd1\\x9c\\ny\\xe3\\xa2)i0\\x9f\\x96\\x06\\xc1\\xd44\\xa7*E\\x99\t\\xa2\\xa7Aj\\x8a\\x1a\\x04\\xd2\\xd4 \\x94\\xaa\\xe6\\x1e\\xd9\\x1d\\x8d\\x0dKW\\x83\\xd4\\x945\\xc0\\xd1\\xd6 %u\\x0df\\xd3\\xd7 \\x8e\\xc2\\x06\\xa9hl\\x10EesO\\x876\\xd4\\xado\\xde\\x9c\\x84\\xd2\\x06'\\xa4\\xb5\\xc1i\\xa8m\\x10Ho\\x838\\x8a\\x9bo\t\\xc6\\xd1\\xdc -\\xd5\\x0d\\x02\\xe8n\\x10Ny\\x83\\x08\\xda\\x1bb\\xc9\\xfc\\nA}\\x83\\x14\\xf47\\xf0Q\\xe0\\x00\\x7f<CP\\xe1 \\xf0\\x14\\x17L\\x89sj\\x13t9\\x04-\\x0e\\x02J\\x99\\x90\\x1e\\x07A\\x149HM\\x93\\x83H\\xaa\\x9c{\\\\\\xd5~\\xba\\x1c\\xc4S\\xe6\\xac\\xfa\\xf8\\x17}\\xb49HF\\x9d\\x03<\\x03\\x0c0\\x14:\\x08\\xa3\\xd1\\x81\\x8f\\xa5\\x12I\\xa7\\x03\\x84^\\x07\\x10\\x9e\\x88Z\\x07Q\\x8d\\x8b\\xa7\\xd8\\x01\\xa2\\x96\\x11T;\\x88\\xa5\\xdb\\x81\\xbbU\\xd3\\xd1\\xee\\x00O\\xbd\\x03$\\xfd\\x0e\\xd0\\x14<\\xc0\\xb5z8\\x15\\x0f\\x82\\xe8x\\xe0\\xa4\\xe4A*Z\\x1e\\x84R\\xf3 \\x92\\x9e\\x07a\\x14=@\\xf4\\x82\\x8b\\xaa\\x07\\x98\\xfcx\\xca\\x1e$\\xa4\\xed\\x01\\xa6h\\x8ey\\x96\\x8e\\xc2\\x07\\x18\\x1a\\x1f\\xcc\\xa0\\xf2Y\\x15J\\xf3\\xb6\\x9d\\xce\\x07\\xa9)}\\xe0\\xa5\\xf5A,\\xb5\\xcf\\xaaM\\xde\\x80\\xdd\\xc6\\x00\\x04\\xc5\\x0f\\x9cL$pR\\xfd \\x8a\\xeegU\\xe5\\xa4\\x01B,\\x15\\xd0\\xaaM\\x9e2\\x1d6\\xb9t\\x94@@\\xd1\\x02!\\x82\\x1a\\x08a\\xf4@\\x88\\xa1\\x08B0M\\x10<{\\xb9\\x87\\xba\\x05\\x01\\xf4-,e\\x10bh\\x83\\x10J\\x1d\\x04w\\xc5c(\\x84Ve\\x1aA\\x0f;epTB\\xe7\\x84(6n:!\\xa4\\xa5\\x14\\x82\\x8fV\\x08nj\\xa15O,\\xe5\\x10\\x12\\x8e\\xdd\\x00\\xea!\\x04\\xd1\\x0f\\xc1z|\\xf1= \\x85\\xb2z`\\xe3\\na\\x8d\t\\xe1\\x0fII\\x08\\xcf\\xbe\\xb4g\\xb5\\xf9E))\\x98r\\x8d\\x01\\xcbQd\\xa1m\\xbe\\xd9>\\xdd\\xb1\\x1b\\xb6\\x83\\xb2x\\xba\\xdcf\\x16?\\xd7\\xbc\\x90\\x8d\\xc5\\x879\\x1f\\x96\\x99\\x07\\x00\\xf6\\x17m\\xc8\\xb1\\xe8\\xc2\\x0f\\x8d(&\\xe2\\xadE\\xb1\\xc3\\xb5\\xe77\\x83*#\\xbeN\\xf1\\x88\\x84P<\\xa2\\xfeO\\xd8\\xc6\\xa4xD}<\\xa2\\x11sk\\x14\\x97\\xc8\\x94\\xed\\x99)\\x1f\\xc5%\\xd2\\x84\\xe2\\x12\\xa5a4\\x85\\x92DZ\\xcb\\xbaU!\\x96 \\x92\\x94\\x1cBq\\x89(.Q/II\\x1f!\\x84\\x8f \\xb2\\x07\\xc5%\\x9aK\\xec\\x88 u$!t\\x84\\x939(.\\xd1\\x1c\\xf2F\\x08q#\\x82\\xb4Aq\\x89(.\\x11\\xc5%\\xc2\\x92.\\x92\\x12.b\\xc8\\x16\\x14\\x97\\xc8\\x96\\xccK\\xaa\\x08 T`\\xa2\\xee\\x84\\x10)(.\\x11\\xc5%\\xc2\\x90\\\"(.\\x91\\x90\\x18\\xe2C\\x00\\xe9\\x81\\xe2\\x12% 5x\t\\x0d\\xb1d\\x06\\xebnCq\\x89\\xa6Bq\\x89\\\"H\\x08~\\x02B(\\xf9 \\x80x\\x10L:\\x08#\\x1cP\\\\\\xa20R\\x01\\xc5%\\xea\\x84\\xe2\\x12)i\\x03GdZ\\xa4\\x01p;o\\xebA\\x0c\\x86\\xae\\xdbS|{vp\\\"\\x8aA\\x14\\x17\\xe0\\x85b\\x10\\x9d\\xb0q\\xfd\\xd1s(\\x06Q\\x8aV\\xa4\\x18D\\x14\\x83\\xe8W\\x1f\\x83H\\xfe\t\\xfd\\xeejO%\\x11\\xfftD#\\x92\\xbf\\xf4o\\xd3\\xb9\\x02\\x11\\xb5\\xe5\\x05\\nD4\\x14\\x1f\\xc1\\x83\\x02\\x115\\x14\\x88\\xc8$\\x18\\xd8\\x07(\\x10\\x11\\x05\\\"\\x9a\\x88o\\xc9\\x01\\x04\\xaf\\x0cp]\t\\x01=\\x05\\x11\\x1c3\\xa7\\xb2\\x86\\x02\\x11Q \\xa2\\x00\\x1e\\x1a\\x04s\\xd1\\x9c\\xaa(\\x10\\x11\\x05\\\"\\x8a\\xe5\\xabA\\x1cg\\x0dR\\xf1\\xd6 \\x8a\\xbb\\xe6\\x9e\\x0e\\x14\\x88(\\x8c\\xcb\\x06\\x81|6\\x88\\xe3\\xb4\\xf9\\x96`\\x1c\\xaf\\x0d\\xd2r\\xdb \\x80\\xdf\\x06\\xe1\\x1c7\\x88\\xe0\\xb9!\\x96L\\nD$%\\x98\\x03\\xe7\\xd4F\\x81\\x88(\\x10\\xd1H\\xd2p\\xe5\\x00O\\xf9\\x02\\x0cg\\x0e\\xc2xs\\xe0\\xa3\\xa5D\\xf2\\xe7\\x00\\xa1\\x97\\x02\\x119$\\x8a_\\x07\\x14\\x88HI\\x14\\xf7\\x0e\\x82\\xf8w@\\x81\\x88|\\xbd@\\x81\\x88fr\\xf6\\x00\\xc3\\xdb\\x83\\x19\\xdc=\\xab\\xc2\\x86\\x02\\x11IAp\\xfa\\x80\\x02\\x11\\xd9\\x12\\xa4\\xe3\\x00\\x02\\x8a\\x07\\x08\\x11\\\\@\\x08\\xe3\\x03B\\x0c'\\x10\\x82y\\x81@\\x81\\x88\\x8c\\x12\\xc3\\x19\\xb4*\\xa3@D\\xadP \\\"\\x83P \\xa2_} \\xa2\\xac\\xae\\xcbe.l\\x07b\\xb33O\\xb2\\xee\\x80g$\\x00P\\\\\\\"!\\x14\\x97\\xa8\\xff\\x13\\xb61).\\x91).\\x91\\xf8gD\\\\\\\"I&\\xa3\\xb8D\\xbdP\\\\\\xa24\\x04\\xa7P\\xceHkh\\xb7*\\xc4\\xf2E\\x92rE(.\\x11\\xc5%\\xea%)\\x07$\\x84\\xff\\x11\\xc4\\xfd\\xa0\\xb8Dsy\\x1e\\x11\\x1c\\x8f$\\xfc\\x8epn\\x07\\xc5%\\x9a\\xc3\\xe5\\x08\\xe1qDp8(.\\x11\\xc5%\\xa2\\xb8DX\\x0eFR\\xfeE\\x0c\\xf7\\x82\\xe2\\x12\\xd9\\x92y9\\x16\\x01\\xfc\\nL\\xd4\\x9d\\x10^\\x05\\xc5%\\xa2\\xb8D\\x18\\x8e\\x04\\xc5%\\x12\\x12\\xc3\\x83\\x08\\xe0@P\\\\\\xa2\\x04\\x1c\\x07/\\xbf!\\x96\\xdb`\\xddm(.\\xd1T(.Q\\x04'\\xc1\\xcfG\\x08\\xe5\\\"\\x04\\xf0\\x10\\x829\\x08a\\xfc\\x03\\x8aK\\x14\\xc61\\xa0\\xb8D\\x9dP\\\\\\\"%m0\\x89\\xd6o\\\\S\\x12\\xe1W\\xae\\x00\\xefG\\xf5\\x14e\\x9e\\x1d\\xa1($\\xa0\t\\x85.\\x02\\x7f3R\\xe8\\xa2\\x136\\xae\\x7f\\x8cR\\xe8\\xa2\\x14\\xadH\\xa1\\x8b(t\\xd1\\xaf7t\\xd1\\xfd\\\"/\\xd6\\xe5\\xb3\\x9fT\\\\\\x15G\\xcc\\\"\\xad\\x1d\\xc7\\x9c7C\\xe4\\xa2{\\xc9,\\xeb|\\x91\\xa7\\xf1[:m&\\xa2\\x9b%\\xc2\\x91\\xf8\\x9cJ\\xf2`\\x83\\x1b\\xf1\\x8a\\xdb\\xb8!Q\\x9c5gd\\\"/\\xb8\\x918*\\x91;&\\x91\\xb74\\x08\\xceW\\xc4\\xa9\\xd1TPG,\\\"o)S\\xc7!rG!\\n+\\x8e\\x15zJ\\x19\\x7f\\xc87\\n\\x9c\\xb1\\x87\\xbc\\xf5\t\\x1d\\x04\\xd6*\\xa7\\x889\\x14\\x17q(Y\\xbc!T\\xb4!\\xe7\\xe2\\x01\\xde\\x05\\x04\\x10<1D\\xb7\\x01\\xba_ \\x96-\\xe6\\xd0\\x17\\x14_()c\\xcc\\xcb\\x19K\\xcd\\x1a\\xc3\\xf3\\xc6\\x121\\xc7\\xe2\\xb8c\\x0eu\\x81\\x11\\x85f\\xf2\\xc7R3\\xc8\\x029d\\x89Yda<\\xb2@&\\x99k\\x0cG\\xc4\\x10J\\xca&C\\xf1\\xc9\\x122\\xca\\xe6r\\xca\\xa2Xe\\x89xe1\\xcc2\\x872t\\xcc\\xa0\\x13\\xb0\\xcbN\\xc7/;\t\\xc3,\\x8cc\\x96\\x9ce\\x86\\xe5\\x99%e\\x9a\\xe1\\xb9f\\xc1l\\xb3p\\xbe\\x99w)\\xc4E\\x07\\x9a\\xcd9\\xf3F\\x06B\\x1d\\xa8\\x10\\xcc\\xb3\\x90SW0\\xfb\\xcc\\xb5\t\\xa2\\xe3\\x01\\xe1\\xca\\x97\\x90\\x83\\x16\\xc2BK\\xccC\\x8bc\\xa2\\xb9F\\x10*\\x06P$\\x1b\\xcd\\xa2\\xadA\\xc5\\xffI\\xc3HC\\xd3\\xaa\\x10\\xac\\xb4 ^\\x9a/\\xc0E\\x0c7\\xcd\\xa7\\xd3\\x8a('b\\xa8\\x857&\\x9e\\xa5\\xe6\\xab[\\x04S-\\x92\\xab\\xe6B\\xe6\\x93\\xf1\\xd5\\xd0\\x8c5\\x1cg\\x0d\\xcbZC\\xb4r8s-\\x84\\xbb\\xe6\\x8e\\xe8\\x93\\x84\\xbf\\x16\\xc8`\\x8b\\xe3\\xb0\\x05\\xb1\\xd8|\\xad\\xee\\x8e\\xe2\\xe3\\xc9\\x8bg\\xb3\\xa5\\xe3\\xb3y\\x0be\\x9dA\\xe9Xm\\x08^[<\\xb3\\xcd\\xa2\\xae\\xf1\\xc6\\xecI\\xcan\\xf3\\xf1\\xdb\\\"\\x19n\\x16]\\xfeX=\\x08\\x96\\x9b;N\\x8f+JOj\\xae[r\\xb6\\x9b\\x9d\\xef\\x96\\x92\\xf1\\x86\\xe1\\xbc\\x85\\xb3\\xde\\x82xo\\x11\\xcc\\xb7P\\xee\\x9b'\\xf2\\x8e\\xbbtX6\\x12\\x96\\x01\\x17\\xc1\\x81\\x0bd\\xc19\\xaa\\x1b\\xc3\\x84\\xb3\\xa8B\\xc4\\xda\\x89a\\xc39\\x86\\xbc?\\xceNBF\\x9c7\\xc6\\xce)Xq\\xa9\\xc6b\\x003.\\x84\\x1bg>:\\xf8\\xe2\\xe7xm\\x03\\xb8\\xd89\\xb8\\x8bw\\xe2\\xb89\\xce\\xa89\\xfe\\x12\\x85G\\xcc\\xd1\\xa3\\xe3\\x18\\x14\\xfa\\xe2\\xe5\\x04\\xc5\\xde\\x10e\\x1a\\x85\\xdd\\x98\\x04\\xdah\\x0b.S\\x8d\\x146\\x14q\\x83\\\"nP\\xc4\\x8d^(\\xe2\\x06E\\xdc\\xe8%)V\\x1a\\x82\\x94\\x06\\xe1\\xa4\\x14qc.:\\x1a\\x81\\x8d&AF\\xc3qQ\\x8a\\xb81\\x07\\x0f\\x0dAC\\x13c\\xa18$4!\\x0e\\x8aEA\\x0d\\x17\\x11\\x8a\\xb81\\x14\\x04\\xee\\x89=%\\x05c\\x9e\\x14q\\x03\\x85t\\xc6\\xe0\\x9c\\x14q\\xc3\\x96\\xcc\\x8bm\\x06 \\x9b\\x98x\\x12!\\xa8&E\\xdc\\xa0\\x88\\x1b\\x18\\xec\\x92\\\"n\\x08\\x89A+\\x03\\xb0J\\x8a\\xb8\\x91\\x00\\x9b\\xf4\\\"\\x93\\xb1\\xb8\\xa4u\\xb7\\xa1\\x88\\x1bS\\xa1\\x88\\x1b\\x11\\xf8\\xa3\\x1f}\\x0c\\xc5\\x1e\\x03\\x90\\xc7`\\xdc1\\x0cu\\xa4\\x88\\x1ba8#E\\xdc\\xe8\\xe4\\x14\\xd8b\\x8a1\\x17\\x80+\\xe2QEL\\xc4\\x0d\\xe5\\x83\\xa8\\xe9\\x08\\xf4\\xf5lFQ7\\xf4\\xe5hf\\xb4\\x8dy\\xbe\\xc9\\xf5\\xe2\\xfa~!\\xbc)\\x9f\\xfd$\\xfe\\xcf\\xe1\\x97,4\\xd5/\\xee\\xcf\\x85\\x9b\\xe6\\xc0\\x15\\xb9\\xe6\\xa7\\x06\\xe9\\xbe\\xa9j\\xdd\\xd6p\\xea_\\xdcj\\xf8\\xa2\\xad\\xeb\\x03\\xf5.\\x96\\x15{\\x18H\\x98\\xcd\\x0b8\\xc8\\x00\\xe4p\\x02\\x1d5q\\x8c\\x17\\xb0\\xd3\\x0f\\x18U\\xce8_\\xe0G\\xb5\\xdd\\x1b\\xd8\\xe7\\x0f\\x1c^,\\x87q,\\xa5W0\\xb8\\xda\\xd9\\xe9\\x12\\x8c\\xaa\\x12jD\\xf8^\\x04\tt\\n\\x86=\\xdf\\xff\\xaaz\\x9b\\x1f\\xac\\nq\\x1e\\xc1\\xadO\\xb0\\xb0\\x87\\x03\\xbb\\xcb\\xebF\\xf7\\xfd\\xad\\xcf\\xe0\\xcf[V\\xb0\\x1bV\\x89~P\\xdf\\xb5+c\\xc2\\x86\\x9b\\xd7\\xaa\\xd8\\xab'\\xf6\\x0f\\x97\\xbaJ\\xd1\\xd1bC\\x17L\\x82}y\\xc3\\xdb`\\x9b\\xd7Z\\xc3X5\\xe5\\xc5\\xb2\\x12\\xc6`~\\x1e(V\\x92\\xabhM\\xbd\\xcc\\xf8U\\xa6\\xaba\\xefEV\\xeeV\\xacj\\xbf\\xa7&F\\xde\\xc6\\x87\\xb0>d\\x03\\xb0\\xcer35RD*Y\\xc86\\x991\\xc2\\x06\\x93F\\xd7\\xd9N\\xe9\\xfa\\xb8\\x1fn\\x8c\\xaa\\x9b\\x1e\\xa9\\xfe\\xb0\\x18\\xc3}l\\x1fT\\xe1p\\x8c\\x1f\\xfc\\xcc\\x0fg\\xfd\\xdc:\\x80\\xc7\\x14\\xcfdE\\xd0}\\xac\\xe8of[\\x8b\\xa6\\xe1#F\\x8f_\\xa9G\\xaf\\xda\\x97\\xaez\\x13\\x83q\\xc1\\xa6w\\xad\\x84\\x0c\\xaaJ\\xefZ\\xa1\\x1a\\x93\\xde\\xb5\\xea\\xb9u\\xed\\xf1\\xda\\xc1\\xac\\x1b'\\x19\\xe9\\xa2\\x17\\xadz!~]\\xc0>O\\xfc:\\xe2\\xd7)!~\\x1d\\xf1\\xeb\\x88_G\\xfc:\\xe2\\xd7\\x11\\xbf\\x8e\\xf8u\\xd8S\\x12\\xf1\\xeb:!~\\x9d.\\xc4\\xaf#~\\x9dA\\x88_gLC\\xfc:\\xe2\\xd7\\x01\\xf1\\xeb\\x88_7\\x14\\xfb\\xe5\\x96\\xf8u\\x83\\xdf\\x89_G\\xfc:)\\xc4\\xafk\\x88_gT\\x99\\x98_\\xb7\\x1f\\x18G\\x82\\x98@\\x99\\x9d\\x074\\x93ZG\\xefU\\xc5>\\x06D\\xefU\\x9d\\xb0q\\xfd/-\\xd1{U)Z\\x91\\xde\\xab\\xa2\\xf7\\xaa~\\x8d\\xefU\tN\\xb8\\xa4\\xe3a\\x9e\\xabj)%?HR\\xe4\\x94\\x17\\xae\\xd8\\x92\\x18b\\xb8\\xd4\\xf1E[gb\\x86{9\\x1c\\xc4\\x0c'fx'\\xc4\\x0c'f81\\xc3g\\x14\\x8e\\x98\\xe1\\xbf03\\\\\\xefq\\\"\\x88\\x1b\\x13\\x10A\\xbc\\xff\\x13\\xb61\\x89 > \\x88\\xcbc\\xb6\\x9b!\\xae\\x8e\\xf3\\x14z\\x95\\xa8\\xe1\\x96\\xbf\\x87l\\xf4D\\x0d'j\\xb8\\x12\\xa2\\x86\\x135\\x9c\\xa8\\xe1D\\x0d'j8Q\\xc3\\x89\\x1a\\x8e=%\\x115\\xbc\\x13\\xa2\\x86\\xebB\\xd4p\\xa2\\x86\\x1b\\x84\\xa8\\xe1\\xc64D\\x0d'j8\\x105\\x9c\\xa8\\xe1C\\xb1_n\\x89\\x1a>\\xf8\\x9d\\xa8\\xe1D\\x0d\\x97B\\xd4\\xf0\\x86\\xa8\\xe1F\\x95\\x89\\xa9\\xe1!\\xa1Wu\\xf8xL8\\x03\\\"\\x84\\x13!\\x9c\\x08\\xe1B\\x88\\x10\\xde\\xff\\x8coE\\\"\\x84\\x13!\\xfcWF\\x08o\\x89\\x85\\xcf~j\\xffk\\x91\\xaf\\x1cd\\xf0\\xf7*UG\\x03\\xcf:nbOM\\xec~\\xc9Wv6x\\xab\\xe9\\x8b\\xb6\\xbe\\x0f\\x94\\x0c\\xdeV\\xc6\\xc7I\\xeb\\xea\\xac\\xc8h\\xdd\\xbf\\x8bu\\x99\\x94\\x7ffc\\x84{\\xf1\\n\\x04Y\\xca\\xcd\\x05\\xcfW\\xed\\\"\\xd4\\xd6\\xcet\\xf7\\x13ck!\\xe3\\xe0/\\xd4\\x19-\\xb2\\xc4\\x18\\x88\\xc2\\xfcA\\x07\\x7f|\\xa3\\xe6\\x82IL\\x8f^Kq\\xd3\\xc9\\x13\\xd5$%\\x91\\xdc\\xd5E\\xf2o\\x83\\xf3\\xb8.\\x8d\\x83\\x90\\x04.R\\x12\\x047EW\\x92\\x8e?:\\xea1V\\x0f\\xc7\\x1c\\xab\\x8cX^}\\xbc\\xde\\xe7\\xcd\\xa2\\xc9\\xf7\\x16<\\xcf[,\\x1c5\\x18\\xd7\\x8fZi\\xfc\\xbc\\xe0n\\xa5\\xb0S\\x83\\xa5>\\x0b5X\\x0e\\x7f\\xa7k\\x00\\xba\\xf2\\xd8\\xa5\\xc13\\x17[\\x16\\xbc\\xf0\t\\x90\\x13\\xb1\\xfdi\\xc0\\xfc\\xce\\x9a\\xae\\xf6\\xae\\x9a\\xd7<\\xa7\\x15B\\x10l.i\\xad\\xcak\\x10\\xccS~\\x06\\xd2\\x08\\xce\\xd9\\x0e\\x0e\\xc7\\x8a\\x0f\\x1ey\\xbe\\xf1\\xaeZ\\x0f\\xaa1\\x87e\\xf2\\xb5\\xa9sa\\xd3\\x1b\\x1c\\xd3\\xb4\\x7f\\x96#t\\xc5\\x96\\xb9\\xf8\\x90\\xd2\\xa29L\\x18\\x9c0`]Yl=|\\xe1a7yy\\xac\\x95&\\xdbw;\\xaf\\x06e\\xdfY\\x96|\\\"\\x15\\x12\\x19\\xefH\\xe5?\\x9e\\xbfx\\xf7\\xe1\\xea\\xf2\\xe5\\x8fP7Ys\\x1c\\x1fl{I3B\\xe4G\\xccc\\x02\\xd7\\x9fR\\x83\\x89\\x9d\\x0f\\x92\\x9d\\x7f(\\xeb\\xbc\\xd1\\xf8\\xeb\\xbb|m[\\xde\\x97\\xf7\\xcb\\x1d\\x9bl\\xc7\\xf0\\xba\\xc8\\x9b<\\xdb\\xf5\\xac\\xe2\\x8f\\xae\\xa5\\x031\\x98Yq\\xdc\\xdb\\x96\\xfa\\xa7\\xf0\\xfe\\xc3\\xbb\\xf7\\xef>\\x9e\\xbfY|\\xbc:\\xbf\\xfa\\xf4q\\xf1\\xe9\\xed\\xc7\\xf7\\x97\\x17\\xaf_\\xbd\\xbe|\\x89\\xce\\xf3\\xf1\\xd3\\x8b\\x1f^_]\\x05\\xe48\\xbf\\xb8\\xb8|\\x1f\\x92\\xe1\\xc3\\xe5\\xbf^^\\x84dP#\\x0b\\x9d\\xfe\\xcf\\xaf\\xaf\\xfe\\xf8\\xf2\\xc3\\xf9\\x9f\\xdfZF\\x87\\xa4O\\x076\\xd7:/\\xb2\\xdd\\xa2\\xc9v\\xbb\\xfb\\x85\\xbc\\x91\\xcc\\x19|SmCs~}\\xdc\\xcbp\\x0b\\xbb\\x9dr\\xc4a+\\xb8)\\x1b\\x0b\\x0f\\x02$\\xdbh\\x9b\\xd7\\xb6Y\\xd7-4\\x02\\xbb\\xe1\\xb7{\\xaeMq\\x12\\xdbK\\xa4\\xb4\\x11d\\x8d\\xb6\\x1a\\xd9l\\x8fY\\xb1\\x12s\\xd3\\xfa\\xbd\\xf2p\\xdc\tV\\x85B\\x9exU\\xf3b\\xf3\\x84\\xab\\xbf)\\xe5\\\"\\xc5\\xaa\\xbc\\\\\\x01+\\x84\\xe7\\x96\\x95\\xee\\xdb\\x15\\x9d\\xdd\\xb1\\xe5\\xb1\\x11\\x85\\xb2$\\x15\\x06c\\xe1q\\xb6\\xcd\\x0e\\x07V\\xd4\\x12up\\xcd6+i\\xdbw\\xf2\\xe7r\\xcf\\xea\\x858 \\xd9\\x11i\\xef\\x9c\\x86\\xf1\\xa0\\xe9\\x94\\xb6\\xc7\\xe6n\\x00(g\\xad{V\\xcb\\xb1`CC\\xb3\\xeb\\x9a\\x0f\\xa5\\xf4E\\x1b(\\xb6\\x15O%\\xb2\\x9c\\x0d\\xb9\\x14e\\xfa\\xa2\\xb5:m\\xa5*Jw\\x9b\\x15\\xe5\\x82\\xefe\\x8b\\x1b\\xd6\\x9c\\xa6t#\\xed\\xb6r\\xf2\\x14\\xa62\\xca9\\xb3\\x90sf\\xc1\\x8a\\xb9\\xf7\\xce\\x14'\\xebI\\x99:Cfw\\xc2\\xbe\\x16\\\\S\\x85\\xe4\\xc8\\xf4\\x16e{\\xc5\\xb9[\\x95\\xc5\\xd8\\x86\\xd9\\xcb\\xa7B\\x98\\x8d3\\xcd\\xdc\\xb0\\x83\\x1f\\xea\\xcd\\xe5\\x1d[\\x8a\\x93P\\xb6\\xdb\\xb1U\\xfb\\xd5\\xc7M\\xa9\\x16\\x0d\\xdb\\xc6\\xad\\x1f\\xf8\\xb7\\xa5\\x0d\\xd8\\x07\\xb9|\t\\xdbTo\\xe6P\\x1f\\x11g\\xbf\\xf1\\x82V\\x7fe[8\\xdb\\x85\\xb0C\\xcbx}m\\x9f\\x15v\\xca\\x9c\\x1f\\xd0\\xf2\\xa2y\\xd2r\\x05\\xe0\\xc7\\xe9\\xf6\\xf1#\\xff\\xdb\\x8f\\xf2L\\xf3\\xa3u\\xd3a\\xbbUw\\x8c\\xb3~s\\xb9,\\xabU^lv\\xf7p<\\xacl>\\x90\\xb2]\\xcb*\\xc1f8R\\xd5\\x0e\\\"Q\\xc9\\xd6F;:[95\\xc9\\x1dm|\\xf6z[6\\x1f\\x8e\\x16\\xf7t\\xef\\xacA\\x1e\\xbc.\\xff\\xbf\\xcb\\x8bOW\\xef>,>\\\\~\\xfc\\xf4\\xe6*\\xec\\x046\\xce\\xfc\\xf6\\xdd\\xd5\\xe2\\xc3'\\xf3!\\xc6\\x99\\xf1\\xe3\\xa7\\x8b\\x8b\\xcb\\x8f\\x1f\\xc33\\xbe:\\x7f\\xfd\\xe6\\xd3\\x87KKW\\x8e\\x8fMa\\x95U\\xb8\\xea\\xe9\\x8c\\x1c\\x8e\\x8d\\x1c\\xb3\\x95\\xfb\\xbd\\xb0\\x003P\\xa4\\xe0\\xc6\\xbd\\x94P\\x8f,\\xa7\\xb2\\xc6H\\xcb\\xb5\\xa3\\xd5\\x90\\xda3\\x0b\\xfc\\xdeY\\x10\\xe1\\xa1\\xe5\\xae@\\xd6l\\xd1^Z\\\\\\x9a\\x14\\x9eZ\\x10\\xe9\\xad\\xe5T\\xc8\\x1b\\x17\\xed\\xb1\\x05\\xf3\\xbd\\xb6 \\xd8s\\xcb\\xa9Jy\\x94\\x04yoAj\\x0f.\\x08\\xf4\\xe2\\x82PO.\\xf7\\xc8\\xee\\xbc\\xbc\\xb0\\xde\\\\\\x90\\xda\\xa3\\x0bp^]\\x90\\xd2\\xb3\\x0bf{wA\\x9c\\x87\\x17\\xa4\\xf2\\xf2\\x82(O/\\xf7th18\\xdf\\xbc9\\x89\\xc7\\x17\\x9c\\xd0\\xeb\\x0bN\\xe3\\xf9\\x05\\x81\\xde_\\x10\\xe7\\x01\\xe6[\\x82\\x1b\\x94\\x17\\x18\\xa4\\xf5\\x04\\x83\\x00o0\\x80`\\x8f0\\x88\\xf0\\nC,\\x99_!<\\xc3 \\x85w\\x18\\xf8<\\xc4\\x00\\x7f<Cx\\x8aA\\xe0).\\xd8c\\xcc\\xa9Mx\\x93!\\xbc\\xc6 \\xa0\\x94\t\\xbd\\xc7 \\xc8\\x83\\x0cR{\\x91A\\xa4'\\x99{\\\\\\xd5~o2\\x88\\xf7(\\xb3\\xea\\xe3_\\xf4y\\x95A2\\xcf2\\xc0;H\\x01\\xc6\\xc3\\x0c\\xc2\\xbc\\xcc\\xc0\\xe7\\xc4\\x11\\xe9m\\x06\\x08\\xbd\\x0e\\x9ex\\\"\\xcf3\\x88j\\\\\\xbc\\x07\\x1a j\\x19\\xe1\\x89\\x06\\xb1\\xdeh\\xe0n\\xd5t^i\\x80\\xf7L\\x03\\xa4w\\x1a\\xa0=\\xd4\\x00\\xd7\\xea\\xe1\\x9ej\\x10\\xe4\\xad\\x06N\\x8f5H\\xe5\\xb5\\x06\\xa1\\x9ek\\x10\\xe9\\xbd\\x06a\\x1el\\x80\\xe8\\x05\\x97'\\x1b`\\xf2\\xe3=\\xda \\xa1W\\x1b`\\x8a\\xe6\\x98g\\xe9<\\xdc\\x00\\xe3\\xe5\\x063<\\xdd\\xac\\n\\x1b\\xc1k\\xb3{\\xbbAj\\x8f7\\xf0z\\xbdA\\xac\\xe7\\x9bU\\x9b\\xbc\\x01\\xbb\\x8d\\x01\\x08\\x0f8p:\\xea\\x80\\xd3\\x13\\x0e\\xa2\\xbc\\xe1\\xac\\xaa\\x9c^r\\x10\\xeb)g\\xd5&O\\x99\\x0e\\x9b\\\\:\\x8f9@y\\xcdA\\x84\\xe7\\x1c\\x84y\\xcfA\\x8c\\x07\\x1d\\x04{\\xd1\\x81g/\\xf7x6A\\x80w\\x13\\xd6\\xa3\\x0eb\\xbc\\xea \\xd4\\xb3\\x0e\\xdc\\x15\\x8f\\xf1\\xb0\\xb3*\\xd3\\xfc\\xd7\\xb0S\\x06\\xe7i\\xe7\\x9c\\x10\\xc5\\xc6\\xedm\\x07i=\\xee\\xc0\\xe7u\\x07n\\xcf;k\\x9eX\\x8f<H8v\\x03<\\xf3 \\xc8;\\x0f\\xac\\xc7\\x17\\xdc\\xfd\\xbe\\x85\\xd7$\\xc3u\\x97\\xd7\\xc2h\\xfec\\xbd\\xfa|\\xf6C\\xbd\\xf9QY\\xe2\\xbbq#A\\xf1\\x953hh\\x0f\\x8d\\x8b \\xa6#\\xbb\\xcc\\xa0X\\xc2\\xc3\\xa1\\xf5!0G\\xba\\xec|\\x15Z\\xef\\x80\\x91Q\\x83\\xa2Z\\x8e\\xfeJQ-\\xb1c?\\x1cCm\\x0dOV\\x85X\\xfc4)vJQ-)\\xaae/I1\\xd1\\x10<4\\x08\\x0b\\xa5\\xa8\\x96sq\\xcf\\x08\\xcc3\t\\xde\\x19\\x8euRT\\xcb9\\xd8f\\x08\\xae\\x19\\x81iRTK\\x8ajIQ-\\xb1\\x98dR<2\\x06\\x8b\\xa4\\xa8\\x96\\xb6d^\\xcc1\\x00o\\xc4\\xc4l\\x0c\\xc1\\x19)\\xaa%E\\xb5\\xc4`\\x86\\x14\\xd5RH\\x0c.\\x18\\x80\tRT\\xcb\\x04\\x98\\x9f\\x17\\xef\\x8b\\xc5\\xfa\\xac\\xbb\\x0dE\\xb5\\x9c\\nE\\xb5\\x8c\\xc0\\xe8\\xfc\\xf8\\\\(6\\x17\\x80\\xcb\\x05crax\\x1cE\\xb5\\x0c\\xc3\\xdc(\\xaae'\\x14\\xd5RI\\x17\\x93\\xac\\x0f\\xa6\\xa5\\xe91\\x06\\x8cZX\\x9e\\xdc\\xed\\xfdD\\xf5\\xa5hv\\x80KKx\\x92\\xd9\\x01\\xc4\\xeaa\\x04\\xb1g\\xc2STj4\\xc5\\x11\\xd3n\\xe6W<\\xe5\\x07\\xe9s)\\xc3\\xac\\xa9\\x95X\\xd8\\xbc{g\\xccL\\x0fs1\\xf4\\xcd\\x04=\\nA\\xdd\\xf0\\xe9\\x93\\x17C\\x17Y>\\xd3X!\\x0d\\\\\\xf2\\xb9\\xc3e\\xb9?\\x1c\\x1b\\xd6\\xce\\x08a\\xde\\x92\\x1f\\xd5Te\\x0d\\xd3\\\\\\xff\\xe5<\\x92&\\x9c\\xa2\\x14\\x96\\x0d\\xe12z\\x06\\xef\\x14\\x85_\\x98\\x89\\xb6Y\\xb1z\\xc2\\x0fk\\xa32\\xca\\xc4\\x9a>Q\\xa4\\xbc\\x81:\\xdf\\x1fD]\\xfb\\xda\\x9b\\x1cney\\xa0n\\xca\\xaa\\x8fD\\xd7)\\xeb?\\xd4\\xd4l\\xb7nG\\xcd4\\xf2\\x9a\\xd6\\xe0*\\xcd\\x83\\x0d\\xbe\\xa6\\x8d\\\"]\\x06e\\x91\\xe3D\\x7f\\x08\\xb4\\x92O1\\xf2s\\x1b\\xff\\xdbt+w\\xc2\\x8cn\\x90\\xd1\\x13\\x7f\\xc1k^K\\x18w\\x01\\x11s!\\xac8\tb-\\xb8\\xe3,\\x84\\x15gN|\\x05ll\\x85\\xe0\\x12E\\xc7T\\x98\\xb2\\x17\\xb4yh&0\\x0cWF\\xe20\\xb4B\\x1c\\x06\\xe20\\xf4B\\x1c\\x06\\xe20\\xf4B\\x1c\\x86\\x868\\x0cf!\\x0eC+\\xc4a \\x0e\\x03q\\x18\\x90\\xa7$\\xe20tB\\x1c\\x06]\\x88\\xc3@\\x1c\\x06\\x83\\x10\\x87\\xc1\\x98\\x868\\x0c\\xc4a\\x00\\xe20\\x10\\x87a(\\xf6\\xcb-q\\x18\\x06\\xbf\\x13\\x87\\x818\\x0cR\\x88\\xc3\\xd0\\x10\\x87\\xc1\\xa8\\xf2\\xe1p\\x18\\xe4SQ\\x7fo\\x1c\\x86\\xc5\\xf5\\xfdB\\x7ft\\xe5\\xd9O\\xea\\x15\\\"\\xc7\\x8bh\\xda\\xfd\\xbcu8\\xae_\\xdc\\xcb'\\xce\\xe4s)\\xedSi\\xfd\\x0b)]\\x94\\xc6\\xe9\\xf3T\\x9d2\\xf9B\\xce\\xf0A\\xaa\\x01\\x96o\\xfe\\x9aJ\\xf9`\\x11\\xfd\\xae\\x11\\x1e\\x06\\xdaf{L-\\xc8\\xc8\\xe4x\\xe8g\\xd4\\xca\\x91O\\xaa\\x85<\\xaa\\x86*9\\xc6\\xc2\\x04i\\x9fVs=\\xae\\xe6{^-i\\x9dR>\\xb2\\xe6~f\\xcd\\xfb\\xd0\\x9a{\\xccKq\\xc6!\\x0fo\\x98\\xaeD3\\x1f\\\\C<\\xb9\\x86*\\x1c\\xeeq\\x08|\\xefF=\\xbdf\\xd5v\\x9b\\xd5\\xee\\xc7\\xd7P\\xcf\\xaf\\x055\\x04~1\\xf1\\xce[\\xe4\\x93a.p\\xbd#\\x95!^\\x0bK\\xf5\\xd0V\\xc8cl\\xbfT\\xd3&y\\x94-\\xf6Y\\xb6\\xc8\\x87\\xd9\\xac\\xda\\xd6U\\xb9\\xc7>\\xcd\\x96\\xfcq\\xb6t\\xa3\\xc6\\xf5@\\x1b\\xbe\\x7fS>\\xd2\\x96\\xec\\x996\\xd40w\\xbd\\x18\\x12\\xf7X[\\xccsm\\x11\\x0f\\xb6E<\\xd9\\x16\\xfeh[\\xf8\\xb3m\\x10\\xfbp\\x1b\\xfe\\xe96\\xfc\\xb0\\x8cy\\xbe\\xcd>\\x85\\xcb\\x86\\xd5\\xe0{\\xc0-\\xf0\t7\\xfb\\x8c\\xea\\x9fv\\xf3>\\xe2\\x96\\xf4\\x19\\xb7\\xa0\\x87\\xdc\\x02\\x9fr\\xf3\\xde<\\x00q\\xfb\\x00?\\xa1X\\nb\\xf6CZr\\xb1\\x14\\x04\\xc5XJL\\x01\\x13\\xd0\\x8d\\xa5\\xf8\\x1fw\\x8b+\\xe0\\x1c\\x02\\xb2\\x14,\\x0dYJd\\x19\\xa3)\\xc9\\xad \\x1fzC\\x150\\xf5y>\\xe9\\x83o\\xc8'\\xdf\\\"\\x1e}\\xb3jRq\\xef\\xd0\\xcf\\xbe\\xa5|\\xf8-\\xf0\\xe9\\xb7\\xd4\\x8f\\xbfa\\x9f\\x7fC?\\x00\\x87|\\x02\\x0e?\\xb8\\xd2=\\x03\\x17\\xff\\x10\\x1cjV\\xa1\\x8fva/\\xa4y\\xb3\\xbb\\x1f\\x84\\x9b\\xf1$\\\\\\xf4\\xa3p\\xa6CYh\\xa5\\xdb\\xc8\\x95'6\\xca8\\x8f\\x06\\xb8\\xc3\\x81\\xdf\\x1d\\xa0O\\x85\\xd89\\xf03CJ\\xa8\\x83\\x80G]c\\xe4\\x899h\\x13B\\x82\\x9d\\x05<\\xfa\\xb2\\xc6\\xe72 %\\xd4q\\xc0W\\x8d\\xd0'\\xe3\\x129\\x11H\tv%\\xf0\\xe8\\x13\\x8e\\x06\\x01\\x0e\\x05Rf\\xba\\x15H\ts.\\xf0\\xd5#\\xf2\\xf9\\xb8pG\\x03\\x8f:~\\xc3\\nq7\\x90\\x12\\xe4t\\xe0\\x1b\\xef\\x9dK\\x02\\xd6\\xf5@J\\xb0\\x03\\x82o~\\xd6\\x187\\x04)\\xc9\\x9c\\x11Zus\\\\\\x12\\xa4D8&HI\\xe2\\x9e %\\xdcI\\xc17M\\xf0\\xcf\\xca\\x9d\\xc4aA\\xca\\xa9\\xdc\\x16\\xa4\\x9c\\xc0yAJ\\x88\\x0b\\x83\\x14\\xb4#\\x83o*in\\x0eb,\\xfb\\xdd\\x19\\xa4$tj\\x90\\x82um\\x90\\xd2\\x8498H\tus\\xf0-kA\\x8f\\xcd%py\\x90\\xe2}p.\\xe0\\xb0\\x87p\\x82\\x90\\x12v*\\x0cv\\x88\\xf0\\x8d\\xd2\\x80\\xa7\\xe7B\\xca\\x9a\\xd0EB\\n\\xdeQBJRw\t)1N\\x13\\xbe\\xd1\\x86|\\x86.\\xce\\x81\\xc2\\xad\\xaeA>E\\x97\\xca\\x99B\\n\\xd2+@\\x8a\\xd7\\xb1BJ\\x80{\\x85\\x14\\xef\\xfbKQ\\xae\\x16R\\xfc\\xba\\x9d\\x0f\\xaf$r\\xbe\\x90\\x12\\xd3\\xd8xG\\x0c)\\xfe\\xfaF8eH\\x89r\\xcd\\x90\\xe2~\\xdc&\\x99\\x9b\\x86\\x14\\xa4\\xb3\\x86\\x14\\x8c\\xcbF\\x97\\x12\\xe1\\xb8!\\x05\\xd5\\x0b\\xe1N\\x1cR\\xf0\\xae\\x1cR\\xdc\\x0f\\xd7%r\\xeb\\x90\\x12\\xe4\\xdc!%\\xc6\\xc5CJ\\x80\\xa3\\x87\\x14\\x7f\\xaf\\xf8\\x1e\\xb1C\\xe9\\xc0;\\x80HI\\xe5\\x06\\\"\\x05Q@\\xe7lL\\xe7\\x18\\\"\\xc5\\xeb\\x1e\\\"%\\xc6I\\xc4\\xa1\\xae\\xb5\\xd7\\xfb\\x9e\\xb5\\x8bs\\x18q\\xa8kZ\\xbb\\x98\\xf3i\\xbbH\\xe7\\x11\\x87>\\xcc\\xf3v(G\\x12)\\xeeW\\xb2|\\x8f\\xdc\\xc5\\xb8\\x968\\x94y\\x1f\\xba\\x8bt=q\\xe8\\xf3>v\\x97\\xd2\\x0dE\\x8a\\xdf\\x19EJ\\xa8K\\x8a\\x94\\x00\\xc7\\x14)\\xc1\\xee)\\x83lH'\\x15)\\x9e\\xa7\\xef\\xfc\\x0f\\x88\\xe1]\\x08\\xb0n+Jk\\xa8\\xf3\\x8a\\xca\\x16\\xe2\\xc2\\\"\\xc5\\xd9\\x041\\xee,\\x0eu\\xa8\\x87\\xf0\\xe2\\\\[<\\xd3\\x05\\xf3\\x18^R7\\x17\\xa5\\xd0\\xf7 ^\\xdc\\x93x\\xf3\\x1e\\xc5K9\\xaa\\x03\\x1cc\\x94b\\xb4{\\x8c\\x14\\xdb\\x19\\x06k\\x81haF\\x08z \\xcf\\xaan\\x1cO\\xd2\\xf4D\\x9e\\x14L\\x01\\xbb\\xc7\\xf1\\xda\\xc0\\x89Y\\xebq\\xd2\\x91\\x14\\xf9el\\xcf\\x07y%}y\\xe4\\xdfm@\\x82\\xa4I\\xeb\\xa4jc2>\\xc6\\xb2\\x81s\\x0b\\x1f\\xca+\\xb6\\xccW\\x0c\\x8e\\x07\\xebM\\xe7\\xbc\\xaf\\xf8\\xb2,\\xea\\xbcn$\\xddM`\\x15\\xf6f5\\xea\\xd2\\xde\\\"\\x1cb\\xfb\\xc6\\xd4\\xb2\\x9d\\xf91\\x8c/9\\xfc\\xff\\xebr\\xcf:\\xb8\\xa4\\xf7\\x1a\\xc8\\xea\\xba\\\\\\xe6\\xc2\\xf8\\xd1\\xd2`\\xcd\\n\\xad.\\x03F\\xe7\\xaa\\x9e\\xa9\\xdf\\xff\\\"\\xf4o\\xf2\\x1bV\\x18\\xfd\\x84\\xba/e\\x9b\\xbc\\x10\\xd3cz\\xc1\\x1a~\\xabK8\\x08\\xa4\\xa9\\xfd\\xac\\x8en&\\xcf )N\\xcc\\xdb\\x8du\\x17\\xec\\xaeY|f\\x86@\\x9f\\x801wz\\xcd\\x9c\\x83\\xaa\\xfe\\xb7m\\xc2\\xb6\\xa5hY \\xfc?\\x15\\x86\\xc0G\\x80\\x80N\\xdeg\\x1b\\xf6AF\\x17=\\x93\\x7f\\xb7(\\x93!f\\xb9\\x1a\\xae\\x967$\\x83}Y7\\xc0\\x84\\x05^\\x18\\xef\\x05\\x81\\xb2\\xdfL\\x0e\\xcd\\xbd\\xf3q\\xcc\\x8a\\x89\\x81P\\x94\\xb0/+\\xd6\\x027\\xa6\\xf9\\xdf\\x94Mf!\\x0c\\xa0\\x1b\\xd3\\xc1\\x95o\\xf2f\\xc7\\x1c+\\x9f\\xf8\\xbchE\\xf1\\x1f\\xc5\\xb1]B\\xda\\x80X\\x1a,a\\xab\\xaf\\xde\\xd0\\x82\\xd5\\xb6\\x10\\xcal\\xbb\\x8b\\xf0\\xd3`\\xcd\\x13\\xc8\\x9b\\xba\\xa7\\xdd\\x1c\\x0b9\\x98W\\x12\\x13\\xb8\\xcd\\xeb\\xe1\\xf8p\\xaf\\x93\\x83\\x17F\\x87Nv\\xa3p\\x9d\\xa6\\x8c\\xdd\\xeb\\xa3C_@\\n\\xe3\\xd9\\x0b\\x85\\xf1\\x0c\\xf0\\xdb\\xa20\\x9eal\\x1c\\n\\xe39\\x9fo\\x13\\xc6\\xb4\\xa10\\x9ef\\x858.M0\\x8b\\x86\\xc2x\\xce\\xe1\\xc9\\x843d(\\x8c\\xe7\\x1c&L\\x08\\x07\\x06\\xcd~\\xa10\\x9e\\x14\\xc6\\x13}J\\nf\\xadP\\x18O\\x14/%\\x86\\x91Ba<m\\xc9\\xbcl\\x93\\x00\\x9e\t&He\\x08\\xb7\\x84\\xc2xR\\x18O\\x0c\\x1b\\x84\\xc2x\\n\\x89\\xe1x\\x04\\xb0;(\\x8cg\\x02\\xb6\\x86\\x97\\xa7\\x11\\xc3\\xd0\\xa00\\x9e\\xba \\xd8\\x17\\x14\\xc63\\x82?\\xe1gN\\x84r&\\x02\\xd8\\x12\\xc1<\\x890\\x86\\x04\\x85\\xf1\\x0c\\xe3=P\\x18\\xcfN(\\x8c\\xa7\\x926\\x8c\\xa7\\n\\xeb\\xa6\\xe9p\\xddK\\xfd1\\xfe\\x9a.l\\xd8\\xa1\\x85\\xb4d\\xb8\\x96\\x11\\x16\\xda\\x81\\xd5\\xfa\\xf25;\\xf4g\\x17\\x9c\\xb4C\\xa6\\xcf>\\xb3{[\\xe5FX\\xaf\\x02w3\\xb51\\xc8\\xe76\\xe5K\\x9a\\x12oT\\x80Z\\x87\\x04\\x0b\\x93\\xd9fd[\\x12\\xd0._\\xcc|\\xe8\\xee;\\xbe\\x8d\\x97\\x85\\xb8S\\x97\\xeb\\xb5 *T0,.h&\\xff\\x9a5\\xe3\\xb6\\xfa\\xcb \\x84\\xa9\\xdeX\\xeblW{[\\xcbb@14\\xa2,\\x1fr\\x90\\xa8\\xca\\x88\\xa6,\\x8e{V\\xe5\\xcb\\xf67\\xb1\\x86,\\xb3\\x82\\xd7GZ\\x8f\\xb6\\xach\\x1b\\xfeXt\\x06\\xbb\\xd11]F\\x12\\x1217\\xba&\\x94&\\xaec\\xcd\\x9b\\xfa3\\x0bl\\xcf\\xa1\\xfa\\x137\\xee\\x08+74\\xef.\\xdf\\xe7\\xd8\\xd6\\x15i\\xbb('\\x16\\x08]\\x1as\\xf5\\x11\\xac\\xd8\\x19\\xfd\\xa3\\xaeR\\x0e\\xd2t\\xa3\\xff\\xf4z\\x0d;\\xb6nZ\\xca\\x81\\xe2 \\xb4Gaa\\x87\\x96\\x13D~\\x84\\xb7\\xf3\\xf5\\xbd\\x0c\\xff\\x94\\x1d\\x0e\\xbf`+\\xeaD\\x80>\\xbf\\xab-\\xb5\\x1c\\\"\\xa2\\n\\x13\\xf5\\xe3\\x0b\\x0d\\xf0\\xff\\xc8\\x8bU\\xbe\\xcc\\x1a\\xd6!Rm\\xd0\\x0f\\x9e\\xd0\\xe0\\x07\\x9f\\x17\\xcb\\xddq5:\\xe8f\\xf2+\\x1d$8\\xea1\\x010k\\x96j\\xbe!\\x0dx5\\x03e\\x9f^\\x8f#\\xe5\\x8d\\xaa \\xee\\x06\\x15\\xab\\x15\\x15@L\\xaf~>\\xf2)\\xd7\\xc6\\xe5\\xca7EY\\x8d\\xec\\xfc\\xedl\\x1c~B\\xb6\\xcc\\xdc\\x8e\\xbd.\\xcb\\x1d\\xd3\\xc8a\\x86\\x0e\\xac\\xd8\\x0d\\xab\\x06Y]\\x9d\\xa7R\\x8f;.\\xd7\\x88$\\x153\\xcf\\x84\\x81\\x1e\\xfe\\x0dV\\x08\\x04\\xb4\\xacV\\xac\\x1a\\x1b\\xfa>\\xe6\\xc5\\x92=\\x07\\x19\\x15\\xfai\\xbd\\xfa\\x0c\\xbf9\\xfb\\xddo\\x93\\xb6Fth\\xea\\x9b\\xb2a\\x8b\\xeb\\xfbE\\xbb\\x9b.\\xf8\\x0f\\xd5\\xe8\\xad\\xed\\x9f\\xc4\\x8f\\x8e\\x18\\xd5\\x7f*\\x1b\\xf6\\xa2\\xe3\\xb2\\xf0\\x7fU]T\\xeaL\\xc6t\\x937gI\\xb0\\x13\\xc0\\xd3J\\xfc\\xdeAh\\x83\\xd0\\xd3\\x06}_\\xb4\\xcd\\xf2@\\xe3N\\xf3\\xcaxHp\\xa2\\x1d\\xd4\\xba+\\xfe[c\\xd9i\\xed=m\\x9b^\\xac\\x05\\x03/eD\\xfb\\xc2\\xe9\\xa8[F\\x82!\\x98\\x9e\\x9fo<!\\xa9E\\x03D\\x16t\\xd2\\xea\\x95\\xe7\\xbcii\\xed6f\\x85\\xb9\\x18\\x83\\xaf\\xc8\\x84z\\xefV\\x8fjXn\\xcb|\\xc9Z\\xd0\\xdaU]D\\xad\\\\1\\x9a\\x9e\\xc2\\x9f\\xde]].\\xde\\xbd\\xbfz\\xfd\\xee\\xad7>\\xd18\\xfd\\x7f\\\\\\xda\\xc2(\\x0d\\xd3\\x9d\\xbf\\xf8xu\\xfe\\xda\\x16\\xadi\\x98\\xf6\\xed;d2\\x11$s\\xf1\\xa7\\xcb+s\\x86.\\x1a\\x13\\xbe\\x82\\xeeX\\xdf\\xdev\\xc6\\xc0ji\\xa3|\\xf3\\xe1b\\x1a\\x14\\xde\\x08\\xd8\\xde\\xba\\xe0\\xa2\\xe5\\x0dj<\\np\\xdd\\x0cB\\xe1\\x89\\xfd\\xbd_\\xbf\\xec\\xd1\\xab\\x11\\xd4G\\xc3\\\"o~\\xa6\\xdc\\xbe\\x1b\\xb4B\\xac\\xc7^\\x88\\xf5H\\xac\\xc7^\\x88\\xf5H\\xac\\xc7^\\x88\\xf5\\xd8\\x10\\xeb\\xd1,\\xc4zl\\x85X\\x8f\\xc4z$\\xd6#\\xf2\\x94D\\xac\\xc7N\\x88\\xf5\\xa8\\x0b\\xb1\\x1e\\x89\\xf5h\\x10b=\\x1a\\xd3\\x10\\xeb\\x91X\\x8f@\\xacGb=\\x0e\\xc5~\\xb9%\\xd6\\xe3\\xe0wb=\\x12\\xebQ\\n\\xb1\\x1e\\x1bb=\\x1aU&e=jh\\xba\\xa6\\xc7\\x08\\x7fO\\x1f/\\x97\\x08\\xf8\\xcf\\xfbxy_\\xf4\\x9b\\x11\\x80fF\\xcb\\xb5\\xf7\\xa4\\xe4o#\\xe8<a\\x99g\\x91Wj\\x9d\\xbd2\\xe4\\xad\\xb8\\xf9*u\\x0f):\\xb8*Vz\\x8a\\x96\\xfd\\x8b\\xb6\\xca\\x0f\\x98\\x9a\\xf2@\\xf0;/\t%\\xc8~\\x85\\x7fow\\x16\\x15\\xc5IFA\\x158\\x1d!\\xc5MIINJA\\xd5\\xce\\xf7x\\x18\\x9e\\xb9a\\xcaa'\\xa7\\x84\\xd1S\\xd0\\x04\\x95`\\x8aJ\\x14I\\xc5GSA\\xb5<\\xc6\\x16\\n\\x89\\xc9*v\\xba\\n\\x82\\xb0\\x82\\xaa\\x15\\x8e\\xb4\\x82\\xaf}\\x18\\xa3\\xc5\\xa3\\xc6\\xf2t\\xe0\\xa0,|\\x7f\\xd0\\x1fxV\\xdb\\x8a\\x0cM\\x88\\x8c\\xce'\\x9f\\xd0m#\\xf3\\xb5\\xc1\\x1do\\xba\\x87u'\\xb4\\xc1\\xb1>\\x8a\\xcd'\\xc4\\xe5\\xaf\\xd1\\x0b\\xc5\\xe6\\x03\\xdc\\xbe\\xfak\\x8a\\xcd7:\\xe6\\xd9\\xc9i\\xfaQ\\xb2\\x9d$#\\x85\\x0d\\x11\\xd3\\x88\\x98\\x96f3'b\\x1a\\x11\\xd3\\xccB\\xc44!DL\\x9b\\n\\x11\\xd3\\x88\\x98f\\x13\\\"\\xa6\\x111M\\x08\\x11\\xd3\\x88\\x98F\\xc44\\\"\\xa6I!b\\x1a\\x11\\xd3\\x88\\x98F\\xc44!DL#b\\x9a&\\xf6\\xcb-\\x11\\xd3\\x06\\xbf\\x131\\x8d\\x88iR\\x88\\x98\\xd6\\x101\\xcd\\xa8\\x92\\x88i\\x14s/&\\xa0\\x19\\xc5\\xdc;a\\xe3\\xfa\\xc7(\\xc5\\xdcK\\xd1\\x8a\\x14s\\x8fb\\xee\\xfd\\nc\\xee\t\\xda\\xb2\\x8a\\xb5\\x87\\x89\\xaeW\\xbf\\xb8\\xb7\\x85\\xd5s\\x87\\xd1k3~\\xd1V\\x91H\\xca>.\\x07\\x91\\x94\\x89\\xa4L$e)DR\\xf6Lo\\\")[H\\xca\\xd7\\xf7\\x8a\\xa3l\\\\&\\x88\\x9d,\\x84\\xd8\\xc9\\xfd\\x9f\\xb0\\x8d\\xf9\\xabc'\\xebddO\\x98\\xcc\\xee\\x98H\\x111{!\\xe2q\\x9a\\x0d\\x9a\\x88\\xc7D<6\\x0b\\x11\\x8f\\x85\\x10\\xf1x*D<&\\xe2\\xb1M\\x88xL\\xc4c!D<&\\xe21\\x11\\x8f\\x89x,\\x85\\x88\\xc7D<&\\xe21\\x11\\x8f\\x85\\x10\\xf1\\x98\\x88\\xc7\\x9a\\xd8/\\xb7D<\\x1e\\xfcN\\xc4c\\\"\\x1eK!\\xe2qC\\xc4c\\xa3\\xca\\xa4\\xc4\\xe3\\x07\\x17V\\x92\\x88\\xc5\\xb1\\xacM\\\"\\x16\\x9f\\xb0q\\xfd\\x94X\\\"\\x16\\xa7hE\\\"\\x16\\x13\\xb1\\xf8\\x1f\\x99X\\xacAt<\\xb1,\\xd0\\xd9uV\\xb33\\xf1\\xf9\\xb3\\x9b\\xaf\\xafY\\x93}}\\xa6\\x11V\\xa4\\xd6f\\xcc8\\x98r\\x0c\\x06\\x94'\\xe3T4\\xee\\x15\\xf6\\xfd4\\xc5n\\x9at/5\\xee\\xa421\\xb2\\xe6\\xa3%\\xc8^\\xf7$;`\\xafn\\xde\\xf67]\\xa9\\x86M 6\\x94\\x04-0\\x98\\x9e)w\\xa9\\xc9\\x1e\\x95f\\x87\\xd2V\\xceq\\xed\\xc7k\\x95\\xbd\\x9eIw\\x10\\xc3\\xfe1w\\xf7\\x98\\xec\\x18s\\xf7\\x0b\\x91d8\\xcdu\\xf5\\xc3\\xbdB-\\xd1\\xf1\\xcd;c\\x8d\\xd7\\xd6u}fNWx\\xc7\\xfan\\x9e\\xe1\\xed\\xa5\\xefc\\xb9o\\x97\\xd9\\xe9E\\xeeUYB]\\xee\\xd9\\xa2\\xbbA\\x19\\x0d\\x19\\xdaR\\xadw\\x9cn\\xc3\\x90W1Et\\xec\\n\\xa1g\\xcc\\xdb\\xa9\\xd4\\xdd\\xa5\\xf3\\x026\\x1f\\xde_\\x88m\\x88\\xa7PE\\x96\\x81\\x84\\xbb5D\\xa9\\xd2v`\\xb8\\xbc\\xc3l-r\\xe9F\\xef-SNm\\x8a\\x0df6G6\\x05/\\xd6\\xcb\\x855\\xae/\\xb8\\xd5u\\xdc\\xe5\\x9d:@\\xf2Y\\xad\\xcc\\xd5^_\\x18Y\\xd5\\xdc\\x19\\xfa\\x98p\\x8eE\\x95\\xa4\\x1b\\x8c\\xb7\\xa2\\xf1\\xfa\\xf3\\xd8\\xb2\\xacd\\\"q\\x18\\x1b\\x8d]a\\x8f\\x12;\\xa6^\\xabn\\\"\\x0f'\\xa5\\xfa\\xd2dVV\\xec\\xc0\\x04z\\xfb\\\"\\xab\\xba&\\xb3\\xcfK\\xa5F\\x8c\\x8c\\xf1\\x94\\xd4\\xe7H;;.\\xca\\xbc@\\xcf\\x8a\\x15+\\xca\\xbdsdd{\\xdeg\\x8e$\\xe6\\xfe\\xe0\\xa5\\xe8\\xa8\\xf3\\x194\\xe5gV(\\xd4^~\\xb4]e\\xb2b%x\\x01\\xe23]S\\xbe}wu\\xf9\\\\X\\xc1\\xe5\\x1f\\x949Y\\xf8h\\xc0\\xeb\\xa2Q\\x86\\xb6\\x8e\\xb71\\xb0\\xb6I\\xa0Ai\\xaa\\xf3M\\x915\\xc7\\x8a\\xd5\\xddyX8\t\\x94\\x9bR\\xd8\\xad\\xf8\\x1c\\x19\\xdb\\xb1\\xce\\x8b{t\\x0b6\\x13&\\xacqz\\xd9\\xb7\\x97X~\\xeb\\xe8\\x0eaf\\xb4\\xc6pX\\xa7\\\\\\xd5(v\\xaa\\x83\\x85j\\x02~\\x10\\xbc\\xd3H\\xa6\\xa9\\xce(\\xd5\\xb4\\x8d)\\x18\\xc1l\\xd2(\\xfe\\xe8\\x88':l\\x94\\xc1)&\\x86#:\\xe2\\x82\\x0e\\xb5\\xeb\\xcacy\\xa0v\\xbeg\\x0c\\xc3\\xd3\\xcc\\xe4\\x9c\\xc1\\xddD\\xb15q\\xac\\xccH\\x1ef,\\xf3\\xd2\\xc4\\xb0L\\xc2\\xa9L\\xc7\\xa2L\\xc2\\x9bt3%\\xe3\\xb8\\x91\\xa2\\x97M\\x1c\\xc8p\\xd6\\xa3\\x83\\xddh\\x00@Fg\\xf8H\\x06\\xa3\\x91\\xa9\\x18\\xc1M\\x1c\\xb1\\x11#\\x8f\\xb7\\x83\\xbd)\\x92U\\xd8\\xb3\\x07\\xc7\\xed\\xf7\\x85\\xfd{q\\\\A\\x03/P\\xe9\\xeb\\xd8\\x813\\xf9\\x803\\x18\\x80&\\xb6\\xdf\\x0c~\\x9f\\x81\\xcb\\x17\\xcb\\xde\\xb3R\\xce\\x0c\\x0c=''oHp\\xc1\\xf1\\xee\\x86y\\xfe6\\xaeK0\\x9b\\xceW\\x19\\x17c\\xce\\\\~'+\\x0e\\xc9\\x83\\xeb\\x01\\xf0\\x19\\\\7+\\xbb\\xcd\\xccg\\xb31\\xd8&\\xb5\\xc4\\xb0\\xd4\\\\\\xbc4\\x9d\\x89\\x16\\xc9=\\xf3\\xb0\\xcdp\\xfc2'\\xa3lD\\xbe\\x1a\\xa8\\x1f\\xfd\\xcd\\xc5\\x0c\\x8b\\xe7\\x82M\\n\\xa0\\xfe\\x15\\xc5\\xf02\\xb1\\xb9\\xe6\\xf0\\xb7F\\\\\\xadXv\\xd6\\x84\\x895\\x83{58T\\x1a\\x99U:\\xddCgO\\xcd\\xe7K\\xc53\\xa446T\\x14\\xff\\xc9\\xc8u\\xf2\\xb3\\x9b\\x9c|&\\x04\\x83\\xc9\\xc7Y\\x1a\\x10x\\x86\\xda\\xb1\\xac\\x10;\\x13\t\\xc1=\\xf2\\xb0\\x8d\\xba\\xe2\\xcd`\\x14\\x0d\\x86\\xd3\\x0c\\xbe\\xd0\\x98\\x1b\\x14\\xc7\\x06\\x1a3\\x7f\\xd2p}\\xe2z\\xce\\xc9\\xe7q1x\\xf8\\xca\\xb9\\xa9\\x0e\\xcb\\xb3M\\xd6\\xb0\\xdb\\xec\\xfe\\xac:\\x16M\\xbegg\\x97\\xbd\\xd35\\xc2\\xaa2r\\xd16\\x9ce\\x87.\\xd9\\x8d\\xd1\\x15\\xdb\\xe4\\x82=q\\xbd6\\xe8\\x9e\\xb8Z7\\x06\\x17\\xeb\\x89k\\xf5\\xa4ZRl\\xae\\xd4\\x8d\\xc5\\x85\\xdaxn\\x97\\xe2s\\xb9IdJ\\x92\\xe2r\\x91NcV\\x92\\x12o\\\\\\x9a\\xa8r\\xb8<G\\x9a\\x9c\\xa4D\\x1b\\x9e&\\x9a|\\xae\\xcd\\xc1F()3MQ\\x86\\xd6\\xb2\\xba0\\xcf4KM\\xf4Y]\\x96g\\x9a\\xa8&\\xfal.\\xca\\xe9\\x0cWRf\\x98\\xafZ\\x05\\xc9\\x8cXR\\\"MY]i\\x92\\x19\\xb4\\xa4$1kIIg\\xdc\\x92\\x92\\xc4\\xc4%\\x05\\xe3\\x12\\x1co\\xee\\x9a\\xae\\xa2V\\x17\\xe09F\\xb0\\x892\\xb3\\xcb\\xaf\\xe1,aZ\\xa5\\xe6\\x19\\xc8&\\xeaL\\xae\\xbd\\x11f3)FW^\\xc7V\\xecp\\xdd\\xf5\\xed\\xd2\\x91F\\xb5\\xe9\\xc2eu\\xd1u\\x95 \\x85\\x99m\\xa0\\xd0\\xe4\\x8a;\\xd3\\xe4&e\\xbe\\xe1m\\xa0n\\xba\\xe1\\xce4\\xc5\\x0dt5\\x06\\x17\\xdbX\\xe3\\x9c\\x14\\x8fW\\xa8\\xd5\\x95\\x16\\xe1Bk\\xf2J\\xc3\\x99\\xee\\xec\\xf9\\xfff\\xae{\\xb01O\\n\\xae\\xf2~WXWM\\x11\\xae\\xafHS\\x9f\\x94\\xb1\\xc7\\xcb\\x0c\\xb3\\x9f\\x14\\x8fk\\xab\\xcb\\xa5\\xd5\\xed\\xcaji\\x15\\x8cQP\\x8a\\xdfeu\\xea\\xaa\\x1ai&\\x94\\x82rM\\xc5\\x99\\x0c\\xa5 \\\\Q\\x8d\\xbe\\x9b\\x86\\xcf\\x1a\\xd3\\xf9]M\\xe3\\xcd\\x8aR,\\xc5\\x1b\\xfc\\x96\\xcc\\xd0(%\\xa1\\xb9QJ2\\xa3\\xa3\\x94T\\xa6G)\\x0e\\xd7\\xce\\xa9\\xd7\\xd9\\xd4\\x95s\\xbeIRJ\\x12\\xc3\\xa4\\x94t\\xe6I)~#\\xa5\\x14\\x84\\xeb%\\xc2`9H\\xe8q\\xb54x\\x1f\\x9a\\xbe\\x8a5\\x87\\xf9\\\\*\\x11\\xe6L\\x95\\x10\\xe3B9*|*\\x03\\xa7\\x94\\x84fN)i\\x8c\\x9dR\\xd2\\x98<\\xa5\\xcc\\xe9o\\x84;\\xa3\\xdf\\x8d\\x91\\xaf\\xf9y\\x95\\xd7\\xfbru&\\xf8og7_\\x9f\\xbd\\xcf\\xaa\\xac5\\x1bN\\x0c\\x86\\x06v\\x19\\xcf\\xb7h\\xb2\\xbb\\x05?\\x85:\\x8d\\x96y]\\x1f\\xd9Bf\\xe07\\xf0\\xc5\\x9aM2\\x8c\\x8c\\x93f\\xd3\\xe4\\x88\\x13h\\xf9\\x1c\\x18\\xb8\\x81\\xd6\\xa4v\\x02\\xedL\\x9e $\\xe5\\n\\x02\\x92/\\x08\\\"\\xbc\\x94`\\xb2\\xf2\\xd6^3\\xb6\\x10#\\xc5\\xd1?\\x8aG+\\xbb\\xbf\\x8f),\\xaa\\xbb/W\\xc7\\x1d\\x13\\x96\\xcd\\xd6\\xd1\\xd54t\\x84C\\xce+\\xc6\\xea`\\xee3\\xbb\\xcb\\xeb\t\\x85sH\\x80\\x97\\xa3\\x87\\x86\\xcc\\xc9\\x87\\x0c5\\xf1\\xe9\\x9aXM\\xb2\\xc9D\\xe1_\\x1d\\x84&\\x96\\xf6\\xae.\\x861O\\x0b\\x1f\\xde_\\xf4\\xdf5O>9{\\x83\\xa7\\xdfA[\\xf3\\x8dY\\xcc\\xd9\\xc0\\xb1\\xfe\\x83\\xbd\\xfb\\xdd\\xfb\\x00\\xd8\\x81*W\\xd4_\\xc3\\xe8\\x03\\xb7\\x81\\xcc4\\n\\x9dY\\xdcf\\xb3\\xe8\\x119\\xd23gX\\x8eT\\xa9\\xc12\\xfa\\x157R\\x95\\x06\\xe7\\x1e\\x02\\xb6\\xd6\\n\\xdfK@\\xbe\\xc1\\x125\\x04\\xcd\\xc1\\xe8\\xad\\xddh5\\x8c\\xba\\xa2\\x1e$p\\xa4\\x81D\\xce4\\x00\\x08\\x87\\x1a\\x91h\\x1aT\\xde\\xdb(\\x86 \\xf2\\xb6\\xe0\\xf1AN6\\xa3\\xbc\\xc8`\\xf1a~7\\xe0\\xec\\xc3d\\xfe70\\xd3\\x07\\x07\\xd0~8\\x10\\xe2\\x8b\\x03^\\x7f\\x1c\\x18\\xbb\\xc9u]\\xda\\xef\\x1db>bw\\xa5>\\x07\\xdf\\x9b\\x94.\\xcf\\x0eu\\xc5\\xff\\x15\\xbcA\\x89\\\\Q\\x8bCc$1D\\xae\\xf1\t\\xe9\\x0bv\\xf2B:\\xeaB2\\xe2\\x82\\x95\\xb60\\x83\\xb4\\x90\\x8a\\xb2\\xe0&,D\\xd1\\x15\\xd2\\x92\\x15\\xacT\\x85\\xb4D\\x05\\x0bMa&Ia\\xd2\\xdc\\x8d\\x81\\xa2\\x90\\x96\\xa00\\x93\\x9e\\x90\\x98\\x9c0\\x83\\x9a\\x90\\x9a\\x98\\x90\\x8c\\x96\\x90\\x96\\x94\\x90\\x8c\\x92\\xe0'$$\\xa3#\\xd8\\xc8\\x08s\\xa8\\x08F\\xeaA\\x83!\\x1e\\xcc\\xa3\\x1d\\x18h\\x06\\x91$\\x03\\x03\\xc5\\xc0{`t\\x9f\\xa2';h$\\xb5\\xc0\\xe8\\xaf\\x03m\\xfb~\\xe1\\xffvbR\\xc1\\x94R\\x90\\x80P\\x90\\x94N0\\xde\\x0cgR\tTC\\xeb\\x1a\\xe7\\x90\\x07\\x9c\\xe8\\xb9\\x858\\xe0\\xa5\\x0dL\\xf1F<e`\\x9a\\xf7o\\xa6\\xbaF\\x91\\x050\\x95\\xf5\\x11\\x05\\xecu\\xf3\\x92\\x04\\x02(\\x02C\\\\g&=\\xc0I\\x0e\\xb0S\\x03\\\\\\xc4\\x00c+`I\\x01>J\\xc0\\x98\\x100\\x83\\x0e\\x80 \\x03\\xe0\\xa9\\x00^\\\"\\x80\\x01g\\x9f|\\xce\\x90\\xc6G\\x00\\x98\\x07\\xff\\x1b\\x0b\\xa5\\xfd\\x92\\x14\\xf8O\\x0c\\xfb'\\x05\\xfdSB\\xfeV\\xc0\\x7f\\x8c\\xa2\\x8e\\xc1\\xfe4P\\x7f2\\xa0?-\\xcc\\x8f\\x03\\xf9\\xbd\\x10?\\x12\\xe0\\xc7\\xc0\\xfb\\x13p\\x7f\\xfa5,\\xd0\\xeb\\x06\\xf6\\x91\\xb0>\\x02\\xd4\\x1f\\x149%\\xa0\\x9f\\x18\\xceO\\x07\\xe6\\xa7\\x83\\xf2\\xe3{\\xd7\\x0b\\xe3\\xfb@\\xfc\\x81=oj`\\xf3Y\\xf0Db\\x0c\\xb0$\\x12\\x86\\x03K2\\xdb\\xd8pGnJ\\xad\\xa4\\xb3\\xf5%\\xb4\\xf6\\x91\\x9bR\\\"\\xcb\\x1f\\xb9)\\xc5[\\x01g\\xdb\\x01\\x93[\\x02g\\xd9\\x02\\xd3[\\x03\\x13\\xda\\x03S[\\x04\\x13\\xda\\x041V\\xc1\\x84vArSR\\x12iA$7\\xa5X\\x8b\\\"\\xb9)Ii\\xc8M\\xc9X\\xf7(\\xcb#\\xb6\\xf2>\\xeb#\\xb9)\\x91\\x9b\\x12\\xb9)\\xa5\\xb2V&\\xb7W&\\xb6X\\xa6\\xb5Y\\x92\\x9b\\x92\\xcf~\\x89\\xb5`\\\"l\\x98h+&\\xce\\x8eInJ\\xe4\\xa64\\xab\\xbf\\xbd\\xf6M\\xbf\\x85S\\x7fe\\xad\\x8d\\xc0\\x1f\\xc5\\x04$\\x9a0\\xd1\\x84\\xdb\\x1cD\\x13\\x0e\\xa0\t\\x1b\\x00\\x00\\x14\\xae\\x80\\xf2X\\xb9\\xe2\\x1d\\xfa\\xe2X\\x85s\\x82\\xaf\\xc5;&\\x8be\\x99\\x9f\\x1aa0\\xfa\\x96X\\xe7\\x88\\xd9\\xaf\\xc4\\x92\\xdc\\xb5\\x98D{\\x94\\xe8J\\xe6\\xb8\\x93L\\xbd\\x9c\\xb0\\xde#\\xc3\\x913\\xeaa\\xff\\xe0Q\\x19\\\\\\xe3\\x87\\xdcT\\xff!\\x1c\\xe2|.F\\x93V\\x08w-\\x1a\\x8e\\x1b\\xf2Q\\x95\\xf2\\xf7=^\\xa8\\x89O\\xd7\\xc4\\xa7\\xf2Q%\\x07UrP\\x1d\\xa9\\\"\\x07U\\xbay\\x066\\n\\xdd<\\x7fE7\\xcf\\x9f\\xd3A\\x95\\xbcS5!\\xef\\xd4DL5\\xf2N\\x95B\\xde\\xa9m\\xf6\\xa4\\x9c\\xb4\\x19\\x8c\\xb4\\xd4|\\xb4dl\\xb4\\xb4\\\\\\xb4dL4?\\x0f-\\x19\\x0b\\x8d\\xbcS\\xc9;u\\x0e\\x97\\x8c\\xbcS\\xe7q\\xc60\\x0e\\x9b\\xe4\\x9d\\xaa\ty\\xa7\\x02y\\xa7\\x868\\x82\\xfa\\xd3\\xf8x_\\xf3X_\\xe4\\x9d\\xaa$%\\xd3\\x8b\\xbcS\\xc9;u\\xa8\\x05\\xc7\\xe6Bp\\xb9\\xc8;5\\x9e\\xc1\\x15\\xdf\\xbb^\\xf6\\x96\\x8f\\xbbuj\\xefTrM\\x9dc\\xe4#\\xd7TMR\\x19\\xfc|&\\xbfH\\xa3_j\\xb3\\x1f\\xb9\\xa6\\xc6\\x9b\\x00g\\x1b\\x01\\x93\\x9b\\x01g\\x19\\x02\\xd3\\x9b\\x02\\x13\\x1a\\x03S\\x9b\\x03\\x13\\x1a\\x041&\\xc1\\x84FArMU\\x12i>$\\xd7\\xd4Xs\\\"\\xb9\\xa6Ji\\xc85\\xd5X\\xf7(\\xb3#\\xb6\\xf2>\\xd3#\\xb9\\xa6\\x92k*\\xb9\\xa6\\xa62U&7V&6W\\xa65X\\x92k\\xaa\\xcfx\\x895_\\\"\\x0c\\x98h\\x13&\\xce\\x88I\\xae\\xa9\\xe4\\x9a:\\xab\\xbf\\xbd\\xc6M\\xbfy\\x93\\\\S\\x89 L\\x04\\xe1_\\x92 |\\x12\\xd7T\\xf2K%\\xbfT\\xf3\\xc8q\\xfa\\xa5n\\x9b\\xdd\\xf2\\xec\\xbc\\xaeY#h\\xe7\\xe8\\xf12\\xeaEC\\x87\\xd4\\xc7\\xc3aw\\xbf\\xd8\\xe5\\xfb|\\xe2\\x80\\x88\\xda_F9-\\x9f\\x11?\\xe7{&?\\xc4V\\xa6\\x0cC\\x7f\\xc7.\\xc7\\x81Uyi\\xcc`\\xfe\\x820\\x1f\\x8f+d\\xc9\\x94-\\x9b\\xfcf\\xe2\\xee7,\\xc8\\x8a\\x1d\\x8e\\xcd\\xfd\\\"[\\xad*VOf\\xdd@\\xdd:\\xbfc+\\x93\\x03\\xe1 \\xd5>/\\x16\\xf5mvX\\x8cg\\x8d)mv\\x87O\\x9b\\x17\\x8b\\xeb]\\xb9\\xfc\\xbc\\xe0\\xff\\xe3Lj\\xd9\\xd2\\xf8\\xd7\\xe25L\\x07\\xebG1\\xb8\\xd0\\xa35/\\x96|\\x82o\\x16\\xb5\\x96\\xcf\\x98\\xd7\\x9c\\x1f\\xc8\\x0b\\x13\\xb5R\\x01\\x94\\xc7fSRK\\xff\\x0c-\\xad0\\x18j\\xe8S7\\xb4\\xbe\\xbb,\\xa8\\xd5\\x7f\\xceVg\\xbb\\xecP\\xeb{\\xfa\\xa8\\xf6\\x83\\x8d\\xe1\\x8fWo.\\xf0;\\x82]\\xa9(%+V\\xacr&i\\\\\\x01\\x1f\\xf8\\x05b\\xc9\\xf2\\x1bV-\\xcab!\\xeeK\\x8b\\xe56\\xcb'7m\\xc3WCr\\x987o:\\xb0\\xb7\\x92v\\xec\\xe2G\\xef6\\xab\\xb7\\xfe\\xa3N\\xcd\\x96\\x15s\\x1f\\xbd\\xf84\\xa8\\x9bl\\x7fp\\xa6\\xb2\\x9c\\xba\\xd8\\xdd!\\x97\\x96\\xa2\\xc5\\x96\\xe5\\x9b\\xad\\xfbS\\x16%u\\xe3\\x8b=\\x03\\xc0\\x8a\\xe3`\\x84<\\x05>\\x19\\x17\\x1f\\xaf\\xce\\xaf.\\x17\\xef\\xde_\\xbe\\xb5\\xfd\\xed\\xe2\\xdd\\x0f\\xef\\xdf\\\\^]\\xbe\\xb4%\\xf8p\\xf9\\xea\\xd3\\xdb\\x97\\xda\\xdf\\x15\\x06\\xf0\\xdc\\xfa\\x05\\xfb\\x98\\x9a\\x94j\\xa2\\xa4\\x1fo\\x05\\x94\\x07V\\xc8\\xca\\x0f\\xe0\\x0cs\\xf1\\x9f\\x1b\\x7f\\xd5\\x86\\xef\\xb2\\xe4C\\xaca+\\x9f\\xca\\xb6\\xc2\\xcfM?j\\n+\\xb6>\\x16\\xab\\xa9>uY\\xe4\\x99?\\xf2\\xbf\\xf4q\\x02\\xb6L\\xa6U\\x86~\\x9eB\\xe5Z\\xeeJ~\\xb3\\xb9\\xf6\\x0eX\\xcb\\x10i\\xaa\\xac\\xa8\\xd7\\xd3\\xf5rt\\xdd\\xc9+\\xb64Y\\x1b\\xbd\\x83\\xe9\\xed\\xbb\\xb7\\x97\\x83\\x1f^\\xbf\\xbdx\\xf7\\xc3\\xeb\\xb7\\xdf\\x0f~|\\xf7\\xe9\\xea\\xfbw\\xfa\\x8f\\xddP\\x19\\xe4w\\x8d\\x0f\\x9eP&\\xd7G\\xc2\\xb6\\xd95P\\x94\\x05\\xeb\\xab0\\xea\\xbf\\xb6<\\xcf\\xbb\\xff\\x9a\\xe4o\\xaf V\\x1dm\\xf1\\x9fw\\xff5\\xd1\\xd1\\x1e\\xaeM:T\\xbf\\x7f\\xbc\\xcd\\x0e/\\xdb\\xbf\\x0e\\xfa\\xbe\\xcb\\xd3\\xf7\\xff\\xd5\\x170\\x1c1\\xa3\\xc1R\\x1d\\x97\\xcdp\\xb4L6\\xdc\\x8f\\xfd\\xea0\\xe9L\\xbd#m+\\x82s5\\xb0\\xaf\\x04\\xceU\\xc0\\xdc\\xc3\\xb3g\\x7f\\xe2\\x99\\x9fl\\xd6\\x87\\xce\\xf8A\\x1f\\x06F$\\xcb\\xf8\\xe5{a\\x0el\\xf3K\\x9e:\\xcc\\xc6&=\\x93!\\xec\\x8d+\\xf0\\x8d\\xd1\\xfc$\\xc5Z\\x08\\x00\\x97)J\\xcf<5Hi\\xb9Mf)=\\xb3\\xeb\\xcbV\\x13\\x95G\\xc1\\xd8\\\\\\xa5'7\\x15\\xd6f\\xba\\xd2\\xf3\\x19>c0cyrXMZ\\xbe|6\\xf3\\x96/\\x9f\\xc5\\xd4\\xe5\\xc9\\xe6Drl\\xc6\\xaf\\x18\\x9d\\xe11\\x80\\x06\\xd3]\\xd8\\x84{\\x0bZ\\x1e\\x11QN.\\x01\\xb5\\xca~\\xdaE\\xc0j\\xb7sjsi\\x04\\xdb\\xd2\\x02\\xbe\\xf9e\\x0bl\\xe5\\xcc\\xe6\\xa3\\\\F_r&\\x9a\\xe6\\xdct&\\xca\\xcc!\\xae\\xf0\\xd7\\x1f)V[\\xa0\\x14\\xea\\xbd^\\x1e`\\xef\\xd9,]R\\xa8\\xf3zy\\x80\\x9d\\x87\\xb2Y\\xaa\\xa4\\xd4\\x93\\x9d<\\xd4\\x9e\\x9c\\xd8A\\xd5\\xdf\\xc6mf\\x8c@f\\xdc\\xee}\\xb0\\xf1 \\x93\\xd2\\xf6\\xe1\\xfdE[\\x1b3\\x8e<\\xfa\\xdc\\xfd\\x9c\\xb3E\\x9cm\\xddy`\\xb0\\x8et\\x8a\\x7f\\x192\\xb2\\xe7\\xc7\\xbft\\x1e\\x0c\\xa8\\x97\\x1eH/\\xb9\\xb6\\x0d\\xea\\xa4\\x07\\xd2I\\xe8\\x8d\\x9ez\\xec!\\xf5\\x98qC\\xb7m\\xe7\\xffm\\xd9\\xce\\xef\\xc37\\xf3{WH\\xd1~\\x0f\\xff\\xe3\\xd5\\x9b\\x8b\\xe0\\xcd\\x9bg\\x8f\\xdb\\xb4}\\xed e\\x8c\\xc9:\\x926\\x98p\\xca\\x08\\x8c\\xd6\\x91\\xd7\\x83\\xd5:r\\x9a&\\x89L:4\\x9e\\x80\\xc9\\x80\\x02\\xae\\xa9L'\\xf69S;\\xcd\\x89\\xdd\\x80\\xfc\\x82k\\x14\\x0d\\x11`GR\\x03\\x12\\xecH\\xed0H:P\\xe18\\x85#\\x84\\xd8\\xa9d\\x0c\\xee\\x81\\x07-\\x9e\\xfc\\xdd\\x84\\x18O\\x12MPc\\xf0aF}\\\"\\x973\\xc2l\\x0c\\xc9\\xa8h>\\x96dT;\\x07Sj%\\x14[j\\xc5\\x8c(C\\xd4\\xf0\\x9a\\xa2\\xcb\\xbd\\x9e)6a@\\x99!|@\\x8e\\x10g\\xb0\\xa1\\xce`F\\x9e\\xc1\\x8a>\\x03b\\x8c\\xc5\\xa1\\xd0\\x90\\x08\\x89\\x86\\x14h4\\xc0\\x1cD\\x1a \\x0c\\x95\\x1eR\\xe4_d\\xbb\\xacX\\x0e\\x9dN\\x84\\x0f\\xa3\\xfd\\x80$\\xbeb\\xe7\\xc7\\xffB\\x8f\\x80\\x98\\xc1Vx\\xd0\\xc7\\x05\\x17\\x10\\x0b\\xee\\xc2\\x80\\xa7@\\xe0\\x02e\\xc1W0\\x00?8\\x0b\\x8euEK\\xe1\\x06i\\x01]\\x12\\x0fX\\x0b>Ef\\xd0\\x16\\xbc\\x95p\\x83\\xb7\\xe0\\xfb\\xac\\x15\\xc4\\xf5\\xe6\\xf4\\x80\\xb9\\xfe\\xfcnP\\xd7\\x9f\\xdf\t\\xeez\\xb3;A^\\xf0\\x02\\xbd\\x10\\xad?\\x1c\\xf4\\x1d\\xae\\x88\\xc3\\xa5\\xcbw[\\x1c\\xbe?aY\\x12\\xe5m\\xf2M?v\\x11K\\xa1\\xd1\\x15h\\xd0\\x16\\xe6\tj\\x1a\\xcd\\xc6Ih\\xd3h\\x9ch\\xa3\\xc4\\xc3\\xda\\xe9{\\x96^?M\\xf7\\x90\\xdd\\xa4m\\xf2\\x93\\x83\\xc2\\xe8\\x800=\\x18\\xd8\\x08K\\xe1\\x07\\x81\\xb9\\x07\\x80Y\\x1b\\x7f\\xec\\x86\\xdf6\\xbdp>\\xbc\\xcd\\x0eg\\xef\\xcbr\\xf7\\xbaX\\x97\\xe8\\x91\\xe5as\\xf3\\xe6-oQ\\x8eV]-d\\x1e\\xc8\\x96Ky\\xad,+\\xben\\x96\\xb5\\x88/\\xf7\\x99\\x15-(R7Y\\xb1\\xca*\\xbd\\x00R\\xc1>\\xcb\\x0b5G\\xaf\\xe5\\x89d\\xf4]\\xd4\\x19\\x80\\x9c\\x050\\x17\\xeff\\xf4\\x96\\x8d\\xec\\x01\\xd1s\\xac:dUsO=\\xf1\\xf3\\xf4\\xc4\\xee\\xd0L\\xfaa\\x97\\xff\\xe5\\x98\\xafr\\xea\\x84\\x9f\\xab\\x13|~\\xa2\\x86\\x9e9\\x94\\xe5\\x8e\\xe73-\\xc7\\xe2X\\xf0\\xa6M\\xca\\x17\\xe7\\xf0[PY\\xee\\xc6EBu8\\xd26l[\\xe1\\x1dY\\x82Wz0\\xae\\xf6\\x80Z\\xf1\\xc1Vk \\x04\\xc67\\x0fF\\xaa\\x12 0\\xc3\\xdd\\x02\\x82v\\x0c\\xa0\\x9e|8=9\\xd8m\\x00\\xbf\\xe3\\x00u\\xe2\\xc3\\xe9D\\xcb;\\xb5\\xf6\\x05\\xdb\\xb8kY\\xc8O\\xc6m\\xcbw\\x03\\x1edR\\xda\\\\\\xe4'\\xc7N\\x19a0\\xe4\\xb9\\xc6{ebZ\\xb5\\x9fI\\xd6\\x8akcu\\x8e\\xfc\\x88\\xcd\\xd5\\xb6\\xbdb7X\\xc7\\x9c>\\x85\\xa93\\xca\\x08\\xf5+FF\\x8d\\x1bo\\xe8\\xd6K}\\xac\\xcb\\x03\\xec\\xe3\\xc9\\x96\\x1c\\xb4)S\\xf7\\xea\\xf2\\x00\\xbb7\\xc4w\\xcb\\xb7aS\\x04B\\x8a@H\\x11\\x08\\x7f\\x89\\x08\\x84\\x8e32\\x1a&\\x1a\\xe6R\\xfa\\\\\\xa7\\xe4uV\\xed\\xcf^e\\xd5\\x9eg\\xb8,\\x9a* ~\\x97\\xdb\\xbe\\xbf\\xacX\\xd6\\x94\\xeep-\\xfa\\xf8p\\xa5\\xab\\x9b\\xacj\\xc2\\xc2e\\x0cBn\\x14\\xab\\x19\\x99Wy\\xc3\\xa7\\xcd8\\xeb\\x10\\xfa\\x12\\xfc-/>\\xc6g\\xd5bwh\\x04\\x149M\\x8dZ_\\xc9\\xda\\x8a\\xd9\\x18eSW\\xecv\\x88\\x02\\x9d\\xe0\\xdef<\\xe4XWv\\xf3\\xe1\\xc6\\x92\\xfc\\x1f6\\x12O\\xc5\\xf8\\xad1/6\\xd4C\\x0f\\xb6\\x87x\\xbf,\\x0e\\xac2G\\xa0\\xa1\\x1ej\\xe5\\x97\\xe8\\xa1\\xc1\\xee\\xfdF\\xec%A\\xd0<?\\xf1/<\\xfb7mQ\\x91]\\x88\\xe9@.\\x07&\\xce\\xab\\xb4\\x04>\\xf4\t\\x16\\x18\\x8eGL.q\\xfa\\xcd\\xcb\\xc2\\x14\\x1e\\x98\\xe6\\x90\\xb7\\x970}\\x04\\x8a\\xdc\\xa7\\xb6\\xaae\\xd6\\xb0MY\\x0d\\x9aQ6C^4l\\xc3\\xaa\\xeeW\\xd3)\\xbf\\xe1\\x8a\\\\1\\xf5\\x06#B\\\\\\xb6\\xda[S\\x14\\x98\\x105&\\x90\\xb8\\xfb\\xe4\\xe6\\xe5Hk\\xbc\\x819\\xd2\\x9bob\\x8e\\x0c\\xe6\\xe6\\x06\\xcb\\xad,N\\xd1\\xe4\\x86\\xd6\\xab\\x99\\xd2m'75Wb\\xfb\\x8d\\x0d\\xec\\x8b0\\xa1\\x95af\\xd0\\xf9h\\xa5\\xf9\\xb6\\x07\\x96\\xcd\\x14\\x1e\\x04)\\x9f\\xcc\\xdca}l\\xbf3\\x02\\xf5\\xf3?T?\\xdbn\\x9e@\\xfd\\xfc\\x0f\\xd0\\xcf\\xf6\\x83\\xd4\\xdf;-\\xc3x\\xeeBn\\xd4\\xd8<\\xf6\\xf3\\x97s\\x9c\\xd9\\x8eN\\xf6SX\\xac:\\xe3Y\\xcc~\\xc0\\xb2\\x9c\\xc7\\\\\\x19\\xdcg2\\x9a\\xf5\\xba<\\x98Y\\xdf\\x8b\\xfd\\xacf_\\xdd-\\xeb\\xbb\\xb3\\xaf\\xdd\\xbd\\xed\\xe8oO\\x8f\\xbb\\xfa\\xdc\\x93\\xd5\\xd7\\xef){>q\\xdf\\xdb{?\\xb4\\xff\\xdd\\xe78\\x1a\\x03\\xbf\\x8e1\\xe0:\\xe3\\xd1\\x18\\xf8\\xc7\\x1e\\x03D0\\\"\\x82\\x11\\x11\\x8c~6\\x82\\x91\\xf9\\xc2\\xc5\\xaa\\xe0\\xdb\\xd6.\\xaf'\\x04\\x9a\\xb4\\x97\\xad\t.\\xa9k1\\x0cc\\xba\\x00\\xf8\\x96\\xff\\xa4\\x8b\\x7f\\x9a\\x0b\\x80\\x0d\\xf7\\x94B[\\x7f\\xb2\\xbeO\\xdc\\xfb)\\xb6\\xfe(\\x16\\xdet\\x01\\xfb\\xf9\\xc3\\xfe8@]\\xab&\\xbb6 $\\xe8DH\\x90\\x07\\x10\\x86\\xae\\xb9\\xc6\\xa008\\xccZSp\\x18\\xa6\\xcd\\xde\\x8e\\xd2b\\xdd\\x9c\\xbd\\xc8j\\xf6\\xf6\\xd5\\x15z`z\\xa88E\\xb6w\\xfb\\x8e\\x1f\\xab\\xdc\\xf9\\xf7U\\xd6d\\xce\\x04\\xe5m\\xe1yY\\xf1X\\xe5\\x8bmVo\\x1d\\x89\\xd4\\xc9QU^\\x1bZEY<]\\x1f\\x8bM\\xce\\x0f\\x87b\\x9c\\x8d\\xda\\xeb\\xa2\\xdc\\xed\\xa6q]\\x9cM6\\x9a>\\x01S\\x19\\x89\\xa2\\x0f\\x1b\\xdd\\x91\\xb0^n\\xd9>C%\\x0dA\\xe6\\xeb\\xfb\\xfdu\\x89;\\xcf\\xef\\xf3\\xa2YT\\x8c\\xff\\xbeD\\xbf\\xb6}<\\xac\\xb2\\x86\\x05g\\x0b%\\x0c\\x0c\\x86\\xa6;\\xddh|9\\x12\\x0f\\xc7\\xb35\\xa1\\x1a\\x90/\\xf9P\\xd1W\\xba\\xfb\\x83\\x88\\x90\\xf8\\xf6U\\x1b\\xd9\\xaeX7\\x0f\\x07F\\x98\\x0e<G\\xe2I\\xf3\\xba\\xb6\\x83I\\xab9\\x12\\x8fV\\x04Ojs\\xefY3\\x84\\xad\\x14]\\xfa~\\x990\\xf4\\xe6\\xb2\\xfb\\xe3hqy\\xd9\\xaf\\x14\\x88ue\\xeeR<^\\x0d\\x0cI0\\x9e\\x11\\xe3\\xd9oHb\\x9d\\xf5\\xa6\\xa9\\xeb\\x98\\xed\\xa6\\xe4X\\xc7\\x0c\\xdf\\xc6\\x83\\xd85\\xbc\\xbb\\x13j\\x16\\xeb\\x1d\\xfe\\xfae\\xec~\\xe2\\xe3\\xc4\\x8a\\x11\\xb9\\xc8Wq\\x8b\\xc5\\xb4NzI\\x9dCZ\\x9e\\xcb\\xea\\x03[\\xe6\\xeb\\x9c\\xad\\xe0\\xf5\\xcbQ\\x9d\\xdf\\xf5\\xd3\\x15QYL\\xd0\\xad|\\xb5\\xe8\\xbf\\x1fWa\\xf4\\xea8m|]\\x8da\\xbd1t\\x84\\x9e#\\xf8\\xfah[\\xa1\\xe6uP\\xa7F\\xf4\\x8e!\\xbfXdG=).8\\xfdW\\x83/9\\xcb\\xd1\\xd87f3g\\x05\\xf3\\xb5\\xc4\\xd2\\x99\\xae\\xcb\\xcd\\xb4+\\x1d\\x9di\\xde\\xf2\\x9c\\x19Lg.O\\x16\\x0b:\\xef\\xfe\\x8c\\xe1\\x0c\\xe6\\xc9\\xe2<\\x8b\\x81e\\xb9m\\xc5s&\\xf3ew\\x10\\n\\x9ce6\\x1c\\\"|\\xe9\\x8d\\xbb\\xbd3\\x93\\xe9\\xf4\\xe1\\x9a\\xe1\\x98U\\xbf\\x95\\xe1\\xf9\\x0d\\x1c\\xeb@J\\x9e\\x90i\\x90;\\x9b\\xc06\\xd0=\\x99\\x8c\\xdd\\xe3\\xc9cnmO&\\xe3\\x99\\xcf\\x9b\\xcb>\\x1a\\x9c\\x19C\\xcf\\x80Z\\x1e\\xe4\\x9a\\xac\\xb2\\x11\\xdcDp\\x13\\xc1M?\\x1b\\xdc\\xd4u\\xe9\\xf0\\x85\\x9c\\xe9\\x89\\x06\\x101\\xe0\\xb5\\x99\\xeex#\\xa7;6\\x89\\xdd\\\"\\xf8\\xc4D\\xa6\\xa4\\xfeg2%\\x99\\x13\\\"\\x8f#*\\xd9t0b\\x06\\xbbTn\\x0c\\xef=\\x1c\\xe1\\xe1\\xc8\\x87\\x18\\xe2'\\xbe\\xc4\\x05\\\\\\xdf\\x82L\\\\\\xe6\\xb3\\xbe5y(\\x0b\\xd7|\\xc6\\xb7&\\xf7\\x9c\\xefmc\\xdd;I\\\\Yc\\x88\\xc2!\\x86\\xc1@\\xeb]\\x90%\\x119q\\xe8\\x98F\\xc74:\\xa6\\xfd\\x12\\xc74\\xc3\\xb6\\x82\\xde\\xac,\\x8fQt\\xbb\\xd5\\xdbWW\\xc1[U\\xb1\\x9e\\xf0\\x03P\\x0b@\\xea\\xb3\\x18\\xf6\\xb4\\x81<@\\x18o\\xd7\\xf3\\x0f0\\xa1\\xb7h\\xbd\\xd3\\xb5\\xde\\xc1\\xf48\\xd7\\xef\\xed\\xee\\xfa\\xddZ\\x18;\\x83\\xbb\\xdd\\x88@\\xa3:>$\\xbe\\xb8\\xcd\\xa8\\xddg9\\xad\\xc9\\xc8f\\xe8\\x06\\xd7\\xb2,\\xfeh3x\\x83\\xa3\\xe4R,\\x86op\\x7f2\\x91\\x01\\\\S\\xe53\\x82\\x03\\x1d\\x02\\xe8\\x10@\\x87\\x80_\\xe4\\x100\\x8c=hX\\xc7\\x91\\x1bD\\x9bMisE\\x1e\\xecv\\x8d\\xe1\\xb3\\xc9\\xe8\\x0dc\\xcc\\x863\\x0eh\\xc3`\\xd6w\\xc0\\xe9\\x8b\\xcd\\xbe:\\xf6\\x0f6OkT\\xb3\\xea&_\\xb2\\xd0x1\\x92\\xb2&\\x86\\xc6\\xa2\\xc9\\xf7\\xac<bk\\xa5\\xcf\\xd0}^,T\\x10\\xef\\xc5\\xfe\\xb8k\\xf2\\xc34da\\x98\\x9aq\\xee\\xb4\\xd6\\x02#\\xfd\\xd1\\xba(\\x99\\xa9\\x8f\\xb6\\x13\\xd9?bD\\\"\\x91N\\x0e\\xb0\\xc5\\x9a\\xb1E\\x93\\xdd9\\xbb\\xb7\\xdee\\xf5v\\xb1\\xae2#\\x14<H*\\x1e\\xb0\\xcd\\xa4]\\xa3\\xa9J\\xbe\\x87\\xbbG`V]\\xe7\\x8dz\\xad\\xb8\\x7f\\x1d\\xce\\x99\\xa5\\xb9[\\xd4\\xf9_1)-;\\xd0uV\\xb3\\x85\\xd1R;\\xc8\\xdd\\x9bW\\x16zk\\x193\\xea\\xa6\\x16\\xb5*\\x8c^\\xf3S*,\\xef\\xf9\\x8d\\xe7\\xbdX!^\\xe4b'\\x08^\\xce\\xda\\xd2^\\xcb\\xfcQ\\xc7\\x9fV\\x07\\xfa\\x8es\\xa8\\xca\\x9b\\x1c\\xfb~\\xfbdY\\x00\\xcb\\xd2\\x00\\xa784O\\x7f\\xf6\\x9c\\x98\\xc91\\x03\\xbf\\xb0\\x80\\xe8\\x81|9\\x18x`o\\xaa\\xbf\\x94\\xb8\\xeb\\x96\\xe34Y\\x1e\\xacW\\xb0\\x89\\x9a\\xee\\xf8hJmzm\\xba\\xe6\\x89WbmB}\\xa0/\\xe7*k\\xd8S\\x9eO/*\\xf2\\xe2\\xae\\xd6\\x90\\x8fr\\x16\\xaa\\x85@\\x1b-\\xedC\\x1a\\xe2H\\xd1.-j\\xbe\\x7f\\x010\\xb6\\xc8\\xac\\xf3\\\"\\x1f\\xe3e\\xae\\xa3I\\xfbA\\xe7\\xd9D_\\xa3\\xc2a\\x84\\xd1\\\"ub@\\xc1\\xbe\\x9c9:\\xd2\\xbc\\xa492\\x18\\x975\\xfb\\xc2F~H\\xc1K]\\xe2\\xc5.\\x85\\x1f\\x92\\x14\\xe3\\x92\\xe7h\\xb8\\xc9\\xb2\\xe7ld\\xc7E\\xda\\xb8\\xf89\\x94Y\\x16@\\xfb\\x12\\xe8\\\\\\x04Q\\xa56-\\x84a\\xac\\xf0\\xd9\\xcb!\\x99\\x83\\xc8\\x1cD\\xe6\\xa0_\\xde\\x1c\\xd4\\x1fE\\xd0\\xefP\\xb4'\\x0c\\x17kgp$\\x99\\x1ew\\x82\\x0f%\\xabNE\\xdcb\\x81\\xbd4\\x85\\xd2V\\x9al3\\x1fi\\x98\\x9e\\x89\\x8f\\xcd\\x16I\\xff\\x91I\\x17\\xa1\\xe5\\x96\\xbc\\x0b\\xcc\t}\\xb8\\xd2\\xf7]\\xe9[\\xec\\xfb\\x1e\\xc3\\x0c>\\xec\\xd8\\xd3\\xbe\\x8f\\x1d}\\x97YU\\xb0\\xd5+\\xc6\\xc2\\x8f\\xc4k\\xc6N|\\x0c&KY/\\xb8\\xf3\\x9dq M\\xfb\\xd87\\x90\\xfa\\x1c\\xe8\\x81\\xf4\\xf3;\\xa6;\\xad\\xc7\\x80\\xd9\\xd9\\xc7\\x1b\\xbb\\xdb\\x92<W\\xe5\\xec\\x95\\x90\\xccG0sbM\\x94\\xa50\\x1fYm\\xd3\\xe0\\xd8a,6jG\\x16\\xb7\\xad\\xda\\x91\\xd1g\\xb3vd\\xb5\\xd8\\xae\\x1d9\\x1c\\xc7f\\x93\\x1d\\xdb\\xa1\tg\\xcf\\xee\\x15\\x8c\\xaf\\x821vm\\xf5\\xdd\\xa8\\xe5\\x88\\xae\\\\t\\xe5js\\xd0\\x95+\\xfa\\xca\\xf5\\xbe\\x9b\\x8f\\xd8\\xc3J\\x9f\\x03}XQ\\xadqQ\\x16\\x0d\\xbbk\\x82\\x0f-\\xed\\xa9c)\\xf3G-\\x17\\xd1\\x88\\xd5\tnT\\xcb\\xb2\\xa8\\x8f{\\x94\\xa5\\x1f /\\x0e\\xc8\\x83\\x96\\xbel/\\xb3\\xc3\\xecr\\xd3\\xf9\\x07\\x1e\\xe2\\xf9Gn\\xa5\\xf8\\x81\\x9c\\xe6\\xac\\xde\\xaeH\\x98\\xa3@\\x9fz\\xb1\\x16s\\xb7X\\x86n\\xd3\\x93\\x1d\\xa9\\xd3\\x18\\xb3\\xbfM\\x8fF\\xcdr\\xbbPo\\x8e\\x07\\xea2\\x9c\\xb3\\xb8\\xb2~\\x8d\\xb2<\\x91\\x14\\x12\\x06\\xaaU)\\xd7\\xc9\\x93\\xe8l\\xb6\\x15\\xab\\xb7\\xe5\\xce\\xd8\\xa1!z\\xd3k\\x94%\\xad\\x1b_\\x1c\\xac^Xq\\x9c\\xac;O\\xe1\\xc5\\xf9\\xd5\\xc5\\x1f\\x17\\x1f>\\xbd}\\xfb\\xfa\\xed\\xf7\\x96\\xbf^\\xbc\\xfb\\xe1\\xfd\\x9b\\xcb\\xab\\xcb\\x97\\x83\\xbf\\xaf\\xd8:;\\xee\\x9a\\xe7\\x0e\\x15\\xeec\\xe3\\xe8\\xe3#E\\xdd\\xc2$8`\\xc7\\xa2\\xe0\\xc7\tQk\\xe0\\xb5>\\xd6g#u\\xd3\\xe2>\\x1f\\xff0\\xd0)\\xee.\\x8c\\x9f\\x1f\\xecZm\\x07\\xbc\\xe1^\\xfd\\x82\\xe7\\xff\\xc8\\xbbB\\xacx\\xf2<\\x90\\xed\\xf2\\x8c\\x7f(k\\xf8\\xb4\\xacX-\\x96\\xbd\\xac\\xdd\\xa7G\\nE\\x11&\\x91\\xd6D\\x89 \\xe3\\xd9FG\\xf2\\xf9\\x1do\\xeb\\xf2\\xf7\\xe7\\x9f>\\x8ez\\x9a\\xff\\xec\\x19\\x031\\xbd\\xdf\\xf5\\xbb\\xab\\xc7\\xdb\\x03\\xa4:\\xd6\\xa86\\x99v\\xbd,\\xf6s\\xf5\\xff\\x03U\\x87L\\x9c8\\xb1\\x9a\\xb4\\xe1\\xe3\\x1b8\\x08\\x95\\xb8\\x114o\\xf0h\\xe3d<\\x84\\x06\\xc3F\\x95e\\xf8i\\x9bUxT\\xb7/\\xc0v86\\x9f[}\\x07\\xe4a.\\xa5\\xcfEP5\\x9d\\x95c\\x0f\\xc9Q\\x87c\\xa4GK\\xf4\\x19\\x1a\\x95\\xf8\\xf4\\xa7b:\\x11\\xffc\\x9e\\x88\\xdb\\xb3W\\x9a7\\xfe\\xee\\x0e\\xb9\\xb2\\xde%\\xd17\\xba\\xbcN\\\\r,\\n\\xc7\\xd9\\x12\\x1eY\\x87k\\xa5g\\x91\\xfcB\\xcbaZ\\x9f\\x90\\x8b!\\x82+\\xa6R\\xd6/\\xf8\\x7f]4w\\xb1+\\xe0\\x89A\\xb2\\x00\\xe7\\xf3\\x9f\\x87Vf^7\\x1d\\x19\\x0ck'\\xa2\\x12\\x93\\xf5\\xd3\\xbe\\x82\\x12s-xMM\\xbc\\xaa\\xa6c\\xae\\xb9\\xd6Vg\\xfb\\xd9\\xd6C\\xef\\n\\x1b\\xa9\\xd5\\xb7\\xce:\\xd4\\x06\\xac\\xb5\\xa8\\xc2ML\\x04\\xe1+.1\\xd2\\x08\\x1e!x\\xe4\\x97\\x87Gl\\x87\\x12\\xeb\\xb1G\\xcf\\xfcl\\x9c\\xbb\\xad.\\xfe0D\\x87 \\\\\\x06:\\x04\\xd1!h\\xaa\\x8e\\x0eA\\xf8yJ\\x87 :\\x04\\xd1!\\x88\\x0eA\\x13K\\x0f\\x9a\\x18\\xd2\\xa6G\\x1do\\xa4\\x9a\\x88\\xe3\\x8d\\x9e\\xc1\\x98\\xc9\\x9c\\x11Nj\\x8e\\x96\\xcd\\x8fJZ\\x1e\\x1b\\xac\\xe9\\xda\\xb7\\x9a#\\xb3\\x9d\\xc2t\\xa8F\\x81u\\x11\\x97\\x7f7\\x0c\\xa9a\\xbf\\xfb\\x87\\x94\\xfa\\x1b~H\\xc5\\x1c\\x99U\\xce\\xf1\\xa0J{f>\\xfd\\x99\\xd64\\n\\x1d\\xc9M#1\\xe0\\x80\\xf0 \\xcf\\x16\\x01\\xe3\\x92N\\x17t\\xba\\xa0\\xd3\\xc5/x\\xba\\x18\\xad\\xd7\\xd8\\xbd\\x00s\\xbe\\xf8(<\\xca\\x82w\\x02\\xef\\x93J\\x83\\x90N\\x83o\\xf8J/S#\\x8a\\xfe\\xe7\\xbc\\xd9\\xae\\xaa\\xec\\xf6\\\\\\x06\\x1b\\x0c\\xae\\xc3\\xad\\xca\\xbf\\xf0?\\xbdc\\xb4xY\\xbe\\x8f3x\\x8d2\\xa3\\xec]j\\xa0\\xa2+\\xe8y9\\xc9lo2$\\x9c\\xee\\xc7\\x86D\\xd3=\\xd8\\x90hdKr\\x14j`?:\\xc5!\\x83\\\\\\xf8z\\xc1\\xdaxl\\xd6\\x1dc;\\x98l/\\x0e[\\x0eZ\\x87\\xebteP\\x82<Q9??\\x0dU\\x87\\xb6\\xcdX\\xe6\\xf0\\x85N\\xd0GL\\xe5\\xe0\\xb9\\x1awD?\\xf1\\x8c\\x1e\\x92\\xed\\x03\\xcaE\\xb3\\xfa\\x84\\xb3\\xdaH\\x9374B| \\xc4)%^f\\x1d\\xd2\\xe1]Tx\\xec\\xf4\\xb4\\xd3\\xdf\\xd1\\x85\\x9d\\xb9@xh\\xeeR\\xcd\\x98\\xe4m/\\x87\\x8d\\xda\\x1e\\xad\\xc7@>\\xc7\\xebJ\\xa3\\xc5H[7\\xb6\\xef\\x98\\xb5l\\xa7\\xaa\\xdbi\\xea\\x1e\\x8a\\xba}Z\\xa7\\xa4\\xa6'\\xa6\\xa5\\x9bn|I\\xe9\\xe8\\x13*\\xba\\x85\\x86\\x1e\\xd7\\x89\\xa6\\xee\\x9bP\\xceMts+\\xd5\\xdc\\xd5\\x8b\\x89(\\xe6i\\xe8\\xe5)\\xa9\\xe5\\xfeQ\\x108\\x00\\xa6\\xe5\\x1d\\xd3\\xc9\\xbb\\xae\\x9fI#w\\x1f\\x8b\\xfa\\xc1\\xab\\x1f\\x90\\xb4a\\xa5\\x0f)\\xf3\\x9a`^\\x0f\\x1ck\\x81y\\x04\\xa5Z\\x03\\x12\\xce\\x7f\\xd5\\xf2]\\x11\\xe7\\xcf{5\\xdb\\xa5:\\xc3Dww\\x16\\xbe\\x9f\\xc6=4\\x98\\xf2\\xe3\\xe9n\\x9c\\xea\\xb6NJ0\\xc5\\xe7O\\xefTS\\xdb\\xdd\\xc1\\xa1}\\xab\\xfb\\x85H}\\xd6^\\x0d\\xb4\\x9f\\xa43\\x0b\\x8c\\xcd\\xf1\\x86$c\\x13\\xbcQ\\xcb\\x83\\xb8\\x18\\xa2\\x0d\\xeb\\xe3\\x0e\\x18F\\xe5CwC\\xf0\\xd5\\xd0\\x99\\x88\\x02\\x8d?\\xd0[\\xda$0\\xa6\\xa1\\x01\\x06\\xc10\\xb1\\x03\\xd7\\x10\\xfa\\xd2\\x90\\xd5\\x10\\xee\\xb21\\xdc\\xe1,!.\\x9de\\x19\\x87\\xb54>;\\xa3\\xe5\\x1d\\x866\\x0b\\x0ebi\\x99v}\\x882\\xf4\\xcc\\xf3\\xce8cx7C\\xbaa8\\xba\\x80\\x197\\xec\\xa2Q\\xf89k\\x12s\\xd89C\\xf2I\\xb89O_D\\x86\\x99k{\\xa4\\xac\\xb2\\xe5\\x8e\\x9d\\xbdb\\xad\\xa5\\x00\\xd1\\x07k\\xc6V\\xfe\\xa5\\x0f[\\xe1l\\xb3\\xa9\\xd8&k\\xd8b},\\x96\\xce\\xa4\\x02\\xecZ\\xfc\\xffuY,\\x0eY\\xb3u\\xa6\\xdde\\x8d0\\x9b\\xe6uSV\\x91V\\x8d\\xa0\\xbdm\\xf2\\xe0\\xa2\\xad\\xe3x[\\x0fN(\\xbc=\\xbb.3\\xf7M\\xa8\\xedr\\xcd\\xa6\\x96\\x1f\\x14ll\\xe8[c]\\xa4\\x84\\xc6R\\xb4\\xf5\\xb5#\\x8b\\xb5\\xcf\\x1dyl}\\xef\\xc8\\xe2\\x00{}\\xd4\\x02\\x8bF\\xfc\\xcb\\xb4\\xd8q\\x011'\\x8f\\x04\\x8b\\x9c\\xdf\\xde\\x1co\\xa6$K\\xf5\\x03?\\x03\\xa5\\xb2\\x10\\xa70b\\x92\\xe5+\\xe0j\\x0c\t\\xaf\\xc7\\x00\\x0f\\xc2\\xf2\\xa5\\xed\\x84\\xd3\\x85\\xb2/vu\\\\6\\xe6m\\xf4O|3Ao\\xa2\\xc3'--\\xcb^\\xddd\\xfb\\xc9\\xb2\\x85:uk\\x95\\x12\\xe5\\x9aVI\\xde\\xd1\\x1dG\\x03\\xc1k\\xe0\\n\\x82\\x0d\t\\xb3\\x0e\\x08\\xa6=\\xcd\\xe02bw\\x17\\xb1\\x9c2\\xc0\\xb5\\x1c;N\\x1b\\x9e|\\xaeS\\x87'\\xab\\xf3\\xf4\\xe1\\xc9\\xeb:\\x85x\\xb2:\\xa9g\\xfe\\x13\t\\xb8\\xb5[\\x9e\\x06w\\xe4\t9\\xa1\\xc0\\x9cX\\x1c\\xb5)uP\\x14\\x8c\\x89j|0\\x8e4\\xb1\\xc8(\\xd0]/\\xd1'\\x9f\\x89\\xa69\\xc7\\x9f\\x89\\xb24a=\\xd2\\x07\\x91\\xb3\\x9f\\x91\\xc0zN\\x02\\xd7P\\xa4`UCe)\\xceT\\x90\\xf8\\\\\\x05\\x96\\xb3\\x15\\xcc=_\\x8dt\\x05\\x06\\xab\\n;k\\x0d\\xc9\\xa7\\xfa\\x89\\xc4G=\\x15{\\x8a\\x91\\x829>\\xe3\\x88CR\\xd4Ag!\\xb6\\xf1\\xb8\\x9b0\\xfer9y\\x00\\xdd\\xb9\\xa1NN\\x8e\\x9e\\x1cv\\xdb-@\\xdcYr\\xdag\\x83\\x16\\xc6t\\x9c\\xfc\\x16\\xaa\\xf7\\xc2\\xb9\\xc2\\xbc\\xd8'\\xee\\xb3\\xe9a6z\\xd7u\\x1ci=;\\xaf\\xf3X\\xeb\\xdb\\xb5=G[Ov\\xef\\xf1\\xd6\\x93\\xdfw\\xc4\\xf5d\\xf7\\x1csq\\x07]\\xcf7\\xac\\x87]g\\xbe\\xd0\\x03\\xef\\xccH\\x02\\x96\\xa3_\\xb0\\xdf\\xbe\\xe1\\x13a\\xa1\\x04\\x8cG`\\xd4\\xaa4\\xed@\\xe7A8\\xba\\x8a\\x14\\x9a\\xe0\\xef*4\\x81\\xfb\\x90\\x8c\\x1aY\\x86\\xb5\\xc1wTv\\x1d\\x96\\x9dCvz`v\\x16\\xd1th\\xb6\\x1f\\x9b\\xad\\x07g\\xfb\\xd1\\xd9sx\\xf6\\x1d\\x9f\\x13\\x1f\\xa0S\\x1e\\xa1\\xd3\\x1f\\xa2\\xed\\xc7\\xe8\\xb4\\x07i\\xe7Q\\x1a\\xc6\\x1e\\x94\\x91\\xc7i\\x8b\\xff\\xa7T\\xd6\\xff\\xa9_?\\nE)\\xc8v\\xfa\\x9f\\xdb#\\xdb\\xb8&\\xc6\\xb5\\x94\\x1cI\\x95\\x90#)9\\x92\\x1a\\x12\\xc78\\x92\\x0e\\xae>\\x98+\\x95\\xc5\\x81\\xb4\\xca\\x8aU\\xb9W\\xc1\\x04\\xc4\\x7f\\xab\\x9a\\xff\\xfb\\x91E\\xdc\\x8aU\\x9b\\x9e\\xf8z\\x950vPp\\xb8\\x81\\xe6n\\xb1\\xcd\\xea\\xc9\\x95\\xc6\\x9a^\\xdeW\\xcd\\xc9M\\x0f\\x0b\\xd3\\xe9\\xf6W\\x7f\\xbam\\x87@p\\xcc\t\\x8bC\\xa3\\xd8\\xa8\\xc5\\xdc\\xd6!\\xd2\\x89\\xb9\\xe6\\xbf\\x07\\x1e\\xd1\\xf6\\xc5\\x00\\xe7\\x14=\\xcd\\x8f_\\x80B\\x17\\x1d\\x91m\\xbc\\xe4\\xa0\\x0e!\\xad!\\xc08\\xab-\\xad\\x9c$@\\xf6M\\x8f\\x18;u\\xb4]*\\xbb\\xcfm2\\xd0\\xf7\\x87\\xf0\\x17\\xae\\xd4'\\\\\\x9d\\xf4AkhL\\xbf\\xd8\\x1a\\xd7P\\xd3h\\x17\\xe2QCN\\xf2\\xe1\\x1bp\\\\YYztm\\xa3k\\x80\\xa2\\xd5c\\xdap\\xbc\\xd5\\x986\\x19\\xe2E=p^\\x94k\\xf1\\xb7\\x0e\\xee\\xa0\\x05\\xbf\\x1b\\xe7lYV\\xab3q{,\\xf0\\xe3|\\x95o\\x0c/n\\x0c:H&Yd\\xbbM\\xe9Lw\\xacr\\xe7\\xdf\\xf7\\xccI\\x94Q\\xb5W\\x15\\x18\\xd4~\\xc5\\x9a,\\xdf\\x89\\x0b\\x82\\x9cr\\xed\\xa5\\x95_\\xbey\\xb5\\xa7\\xed\\xa0\\xe2\\xb3\\xf0\\xff\\x0e\\xdf\\x81D\\xb6\\xa8\\x1d(d\\xe7Y\\xca\\x9a\\xd6\\xa6\\xc4'\\xc6\\xfeG\\x9d\\xde\\x8bu:\\x83m  \\xf3\\x0e\\x06\\x072\\xcfp\\xc0\\xa02\\xcd\\x1cD\\xad\\x04\\xb3r\\xe5H\\x1bNY\\xf9\\x93uO\\x1f\\x0e\\xce\\xd6\\xa2\\xe1\\x8e\\x1e$4\\x9a\\xf7t9\\xec?hC\\x171\\xd21\\xfb\\xd0t\\x98\\x9eds1\\x0eIkO;\\x86\\xa25\\x8fa\\x08Z\\xd3\\x9a\\x86\\x9e%q\\x82!\\x87v\\n@\\x0d3>$\\xb6\\xc7\\xeb\\xb3}^4g\\xef\\xb5\\xc7\\xd2\\x11\\x03\\x82\\xe7\\x19\\xbf\\x97\\xec\\x1a\\xf7b\\x94\\x96kX\\xf2M\\xba)E~\\x95&/\\xd6;c`:\\xb3\\xa6.9T\\xd9\\x90\\xcf9z\\x8e\\x99\\x7f\\xc2\\xf2\\x16\\xf3\\xa0\\xe6\\xfd\\xc19\\x1cT\\x9e\\xf3\\xc4\\xbc\\xa1\\x05\\xc15\\xd4\\xfc-\t\\xe6\\xd6\\xc4h5\\xb4*\\xc4\\xb4,H8%\\xaaE\\xc84L\\xa6\\xe16\\x07\\x99\\x86CM\\xc3\\xc3\\x15\\xccw\\xed\\x1f>l=<&\\xf0\\x95qs\\xcc\\xaaU\\x9e\\x15g\\xe7K\\xd1\\xafW|\\xc0\\xc9o\\x8e\\x87\\xde0B\\xc0\\xf7\\x97o/?\\xbe\\xfe\\xd8\\xfd\\xfb\\xdd\\x87\\x97\\xaf\\xdf\\x9e\\x7f\\xf8\\x0f\\xf1C\\x87>\\xea\\xa9l\\x11\\x01T\\x9a.\\xb1v\\xb7\\xdb\\xb0\\x82\\xd5\\xfcN&\\x0b'\\xca\\xd4\\xb6N\\xff\\xc9\\xe7\\xdd\\x7fiY\\xcbj\\x95\\x17Yu?\\xcd\\xab\\x1aS\\xab\\xf0`\\xff\\xac\\x8f\\x07V\\x8dsM\\x9aKFK\\xe4I\\xc37\\x13\\xf1\\x85S\\x1f\\x9f\\xec\\xec \\xeb\\x9a\\xa2\\xea\\xbch\\xba1\\x80\\xc8dG\\xb3\\x87#D\\xff\\xcb`\\xac\\xf4b\\x1c5\\xfa\\x9f}\\x98u\\xe4H\\xd2UD\\x8e\\xa9^bFW/\\x93\\xf8\\x96J\\xa9\\xb5\\xcb\\xf8Z\\xb8\\xb8\\xc6\\xf2#T\\xe1\\xc4\\xb85\\x14k\\xc4P\\xa2P\\xc2\\xb4\\xcd\\xd36\\xff\\x0bm\\xf3\\xc3\\xbd\\xc5\\xb7\\xcd\\xcb\\xd4\\x9e-^$B\\xefRhG|\\xe3\\xaea\\x1c\\xd1S'\\xcb\\xe9Jo\\xd8\\x1d\\xac\\xfb\\x82\\xcb\\xa1r\\xc6^0k\\x17\\x88]\\xff\\xfd\\x91\\x8dM\\xab\\xfd$\\x11~\\x85g|\\x92\\x8a\\x8b1\\xbb\\xd9\\x9f\\xdd|}v\\xb1\\xcd\\xf2\\xe2\\xa2,\\xd69>\\xa2\\xcd\\xb6\\xdc\\xb3\\xbaa\\xd9jq\\xbd+\\x97\\x9f=\\xfd\\xaf\\n7\\xca\\x04\\xf5m\\xde,\\xb7\\xf0\\xb8\\xc8w|\\xdd\\\\\\x97\\xd5\\xe7'\\xf0\\x1b\\xf8\\x0e\\xb2]\\xc5\\xb2\\xd5}\\x9f\\xe1\\xabvlf\\xe5\\x82'\\x0b\\xf9\\xea`\\xa1\\x1c*\\xd0\\xd6\\x0d\\xb1\\x00]m\\xd9\\xcb\\xf3w\\xb0\\xcd\\xaa\\xd5S\\x9e\\xaa-\\xa1L\\xac\\xca\\xa9i\\xe3i&E\\xab\\x8f\\x87CYM,\\xe9cR\\x80\\xb3tJG\\xd7\\x91\\xb7[\\xd1kr\\xa7*W\\xac\\x06\\x95\\xa2\\x86\\xb2\\x82\\xf2p(k\\xd5\\xdd/\\xcf\\xdfi\\n\\xbb\\x9a\\xa8\\xdfX~\\xf8\\xfa\\xdb\\xdfD\\xb7\\xde ;\\\\\\xbe~\\xff\\xf5\\xb7\\xbf\\x19C%\\xdfg\\xb5\\x08\\x84\\xc3`\\xb9\\xcd\\x8a\\x0d\\xab\\xf5\\x85\\xf6\\xf1\\xb6i\\x0e\\xf5\\xf3g\\xcf6y\\xc3\\x97\\xa8e\\xb9\\x7f&j\\xc6\\x8e\\xfbg\\x97\\xaf\\xdf\\xd7\\xcf\\xf2\\xba>\\xb2\\xfa\\xd9\\xd7\\xdf\\xfe\\xe6\\xab\\xf6\\x03\\x7f|\\x85\\xea\\x00U8\\xaf\\x19\\xd3Y5\\x91[\\xfb0\\xff7<.\\x18\\xe3{\\x12_z\\xb7,[\\xf1m\\xb5\\xd8\\xdd\\xc3r\\x97K\\xe6_-\\xfe\\xadi\\xdb\\xa8F\\xe0\\xbb\\x91l\\x86\\xd5\\xa0\\x98\\xdf\\x86t\\xc1\\xa3A\\x16Y\\xb8o_\\x88\\x16i\\x9b\\xe6\\x91\\xae\\xfc\\x0f\\xe1\\xca\\xff0P\\xfe\\x87\\x89\\xde\\xeb\\xfb\\xbffE\\x93\\x1f\\xf7!\\xaa\\x07\\xed;\\xd6\\x00/\\xda\\x1f\\x8c\\x93\\xcc\\xb0\\x18\\x94\\x85I]\\xdb\\xac\\xcb\\xb2\\xe0k\\\\\\x93\\x17\\xe5a\\xc7\\xa2\\x8biT\\x03\\x17\\x83_=\\x05\\xd6\\xb4\\xb5E\\xcf\\x96M~\\xc3O\\x0dmi\\x0f\\xe2f~}\\xac6!%}4\\xc9\\x06\\xef\\xbb_\\x0c\\xa5\\xaa\\xb3=\\xe3\\x83sX\\xfc\\xaf\\xdaN\\xcd\\xf9\\x8f\\xd7\\xc7]H\\x11\\x06\\x8d5R\\x00\\xaf\\xd5\\xbf\\xa3z\\xb4U\\xd66\\xd1\\xfe\\x98W\\x8b\\xcd.[\\xe6\\xac\\x8a.\\xa1A\t\\\\\\xe6\\x87\\xa7\\xdf\\xfc\\xf6\\x0f\\xbf\\x83\\xc7\\xd7\\xe5\\xfe\\x1aVl\\x97\\xdd\\x7f\\xe5,\\xb2\\xa6\\xf0;{\\x9f^\\xb3j\\x97\\x17\\xd1E\\x1dd\\x87\\x17\\xe2_\\x86R}\\x87hJ\\xa9\\xaa-\\xd7\\xae,Ve|\\xb9\\x06\\xd9\\xe1\\x8d\\xf8Wd\\xb9\\xa4\\xaa\\xb6\\\\YU\\x95\\xb7\\xb3{\\xd8\\xa4Et\\xf1\\xef~\\xfb\\xbbo}]\\xfc\\xddt7\\x19\\x16\\x7f\\xd2\\xc9\\x9b*\\xbb\\x9f]f\\x83\\x12\\xbe\\xf0>\\xfd\\xf6\\xeb\\xdf\\xfe\\x16SdYPM\\xa1\\xb3\\xc8{Vm\\xd8\\xa2`M}\\xd8\\xe5Mt\\xa1\\x8dj\\xe0Oy\\xd5\\x1c\\xb3\\x9d(\\x11d\\xeb\\x86U\\x82[\\xf1\\x03O\\xccOT\\xc7\\x9a\\xc98\\xa5\\x05kn\\xfbs\\x08\\x17\\xa1\\xa7\\xe9\\xbc-j\\xbeMn\\xb3<\\xa4\\x80\\xc3<!\\xa3\\xb2\\xcb\\xda\\xed\\x1fY\\xb1<\\x06\\xcd\\x12=G\\xd0\\xa7eF\\xf9a31R;\\x91\\x0f\\xce\\xf2\\x97\\xea\\xa84H\\xd0\\xc33p\\xac\\xf9\\x81\\xe3\\x9f\\xea\\xd5\\xe7\\xb3\\xd7\\x1dh$\\x9dY\\xdbSX^\\x88\\x035\\x94k\\xf8\\xa7\\xeb|\\xc3\\xd3\\x9d\\x99.\\x05\\x97u\\x93\\xef\\xb3\\x86}\\x9f\\x85\\xdb97\\xcext`7o\\xa8\\x96\\xe5\\xa7\\xa7\\x8a5\\xc7\\xaa\\x90\\xd5f\\xaa,+\\xfe\\x97/\\xb4\\x84\\x86Bv\\xed\\xa5\\xfdM\\x8f\\xe89\\xa9\\xe8\\x9b\\x12\\x7f\\xeb\\xc1\\xdc\\xd5\\xba\\xc2\\xa9\\xc4\\xbc\\xa5\\x05\\x85\\xa8,\\x9a*[6\\xd2o\\x84_E+Q%Q\\xc1\\x1b\\xd6uWS\\x1e\\xf2e\\x9c\\x91xT\\x8e\\xc1\\xd8\\x92j\\xa5\\x13\\xcb.\\xaf\\x1bQ,\\xf9\\x9b\\xf2*\\x14\\xbc%\\xbd\\xa4\\xad\\xed\\xca\\x1b\\xd7\\xc6b\\xc3S\\xed\\xc0\\xb3\\xb7\\xac*yo\\xd9\\xe5\\xd3\\x8f=\\x81c}\\xccv\\xbb{8\\x7f\\xf1\\xfa)+\\x96\\xe5\\x8a\\xb5\\xf6H1\\xab\\x16\\xd2\\xa0\\x85,\\x88y`\\xe9\\x8a\\xda~\\x91S6/T\\x11\\xf9OM\\x95\\x155_G\\xcbB\\x98\\xbc\\xf2b\\xb9;\\xf6\\xc5\\xc1p%\\xbaO\\xaa\\xc4\\xad\\x95RW\\xcd\\x7f\\xefU\\xe6\\xc5\\x8a\\xdd\\xcd\\xaa]\\xab\\xa4\\xad\\x99\\xfe\\xad\\xbc\\xe8+;hU|M\\xfa\\xf4\\xf1M7\\xbf\\x92\\x83\\x1a\\xee\\xca\\x8d\\xa9f\\x15\\xdb\\x977\\xbe\\xa7,\\\\\\xa4t\\xa5@tZud\\x90\\xf3\\xcf\\xe5\\xb5\\xf8\\xde\\xadXOnX\\xc5'\\xef\\xea(v\\xb9\\x8c_\\xf2\\xf2\\xe2\\x8b\\x81\\x8a\\xb2\\xdadE^\\x0b;\\xfa\\x19\\xfcGy\\x84\\xfd\\xb1n\\xe0\\x90\\xddC\\xd64\\xac\\x10m\\xd4\\x94R\\xb3b!\\xae\\xe1\\xbe<B\\xc5\\x96,\\xbf\\xd1MS\\xbbr3\\xb8G7\\xdb\\xaa<n\\xb6\\x90\\xc1:\\xdf\\xf1MW\\x18\\xb2\\xe5\\x845W\\xebM\\xb9\\x198\\xab\\x15 \\xe8\\x89\\xd7\\xc7\\xb5\\xf0\\x9a\\xcb\\x9a\\xfcz\\xa7m0<\\xb9X\\xa8z\\xf3W;S\\xdbr\\xf0\\xc6\\x10\\x0b\\xd7\\x19\\xdf\\xf2k\\xb5\\x8a\\xd5\\xc2\\n\\xde/oj\\x9a\\xbfy\\xf7=\\x94\\x07>\\xa9\\x05;\\xb3n\\xca\\x8a\\xad\\x9e\\x89\\xce\\xec\\xa7\\xf9}\\xab\\xba5s\\xf4\\xf4~I\\xdbTK\\xea\\x93v\\xe5\\xe2\\xaa\\xc4\\xf2\\xc2\\xbf\\xc9\\xafn\\xac\\xa8\\x8f\\xaa1kQ,\\xbe\\xf47j\\xb8(U\\xf2\\xaf\\xadb\\x9es\\xc5\\xaa\\xfc\\x86\\xad\\x9e@~\\xc6\\xcex\\x8bJ\\xa6N[vapy\\x02\\xd7\\xc7\\x06\\x8a\\xb2\\x81\\x9a-\\x8f\\x8a\\xe5\\xd9}\\xd2\\xb8\\x85\\xfePo\\xda\\xf6\\xbc\\xbaC\\xef1\\xa6\\xd5\\x16\\x05\\xbb\\xf0\\xa4\\x8bc\\x85E\\x18\\xdc.\\x19\\xe7\\xf0\\xe9\\xc3\\x9bg\\x15\\xab\\xcbc\\xb5d\\\"\\x8c\\xae\\x1c\\x0f\\xc7\\\"\\xff\\xcb\\x91\\xed\\xee!_\\xf1!\\xbc\\xce\\xd5\\xd1\\xa4Q\\xac\\x95\\xa1]\\x1e$\\xf35\\xcfv\\xf9_\\xd9\\xc4\\x85B\\x8c\\xc0e\\xb9\\x83\\xeb\\xe3z\\xcd\\xaa\\xd6\\n\\xcf;\\x8e\\xef\\x14\\xa2\\xccr\\xd2\\xf0\\xb1\\x97\\xe5\\x05d\\x0d\\xecXV7cMe\\xc1\\xe0\\xcbg_\\xf2i\\xc8\\x87(\\xabd\\xe7\\xef\\xb2\\x9a\\xf7\\xd7f\\xcf\\x8av\\x10\\xf0z\tNK\\xb3\\x15\\xaaG\\x8a\\xba)2\\xfe\\x02\\xcf\\xba>\\xf2\\xfd\\xe9/\\xc7l\\xc7\\xeb\\xbd\\x92\\xad\\xd2.\\xb6\\xbc\\xfe\\x8f\\xc5\\x8a7\\xce\\xfa#\\xff\\xd8\\xb3MYnv\\xec\\xac\\x9dug/\\x8f\\xf2\\x95\\xad\\x1f\\xbf\\x92e\\x15\\xca\\xeamy\\xdc\\xad\\xe0\\x9a\\xf1\\xe1\\x97\\x8d\\xf4,\\xb3\\xa2,\\xf2\\xa5<m\\xef\\xc7_y\\xcc\\xce6gOx\\xf3\\x08\\x0c\\xe4\\xcb\\xb3/\\xf9\\xf2\\xc5\\x07l\\xb6\\\\\\xb2\\x03\\xbf\\x10L\\xbde^\\xf3e\\x80/\\xd7K\\xf6\\x04\\x1a\\x96\\xed\\xebn\\x1b>T\\x8c/\\x0c\\xf9\\x8e\\x97E,S\\\"B\\xb3\\xb0\\x7f\\xefv\\xa2\\xbe\\x13\\x7fZ>@\\x9a-\\xbb\\x1f\\x7f\\x86\\xdd\\x1d\\xd8\\xb2\\x81\\xbci\\xaf\\x04j\\xd1n\\x1dY\\xcb5\\x9c\\x17\\xf7g\\xf0\\xc7\\xf2\\x96\\xaf\\xacO\\x84\\xa5\\xed\\xd3\\x877\\xb5\\xdcYF\\xda\\xb8\\x02>\\xcc\\xc6\\xe3l\\xb9e{\\x06?n\\x9b\\xe6\\xf0\\xe3\\x13\\xf9\\xff\\xf5\\x8fO\\xa0\\xac\\xf8I\\\\\\xfe\\xf5\\x89\\x18)K\\xcd\\xfbuw\\x0f5k\\xe0x\\x9847\\xaf\\xe1\\xe4\\x1b\\xac\\xba\\x11f\\xd8\\xac\\x81}v\\xa8e\\xb7\\x8b\\x926e\\x87\\\"\\x895SDN\\x16\\xb6\\xc1u\\xb9\\xdb\\x95\\xb7\\xf5\\xf3I\\xeb\\xff\\x13\\xbc^\\xf7e\\xe3\\xdd\\xd5\\x1e\\xc5\\xba\\xe2\\x8b\\x03[]\\x1f\\xf7lu6\\xcd~^\\xc0\\x1f\\xaf\\xae\\xde\\xc3\\xf7\\x97W\\xfcb\\xa1\\x86\\xb7\\x9c2\\xf7bG\\xc9\\xe0?\\xc7\\x03\\xef\\xea\\xfe\\xc0\\xfe\\xeb?\\xffk\\xa4\\x0cZ<\\xafh{Y\\xee\\xc3\\xa2\\xfd\\x0eU\\xb9:.\\xf9\\xd2\\x0d\\xac\\xaa\\xca\\xealZ\\x12~\\xaa[f\\xaa\\xce\\x15\\xe3c\\xa4\\xbc\\x95(\\xec2[\\x8a\\xbd\\xba\\xfc|<t\\x90\\xd9uV\\xb3\\x95*\\xf4\\xa4(\\x9f>\\xbc\\x11\\xdf\\xddf7\\xa2\\xab\\xf7\\xdah\\\\\\xc9\\xe1\\x98\\xb5\\xc5\\xe4\\xff}S\\xe6+\\xc8\\x8a\\xb1\\xeb\\x1c\\xa8\\x8f\\x8a\tV\\xb1uY\\xb1'm\\xb6v\\xd3\\xcbwys\\x0f\\x85\\xf0\\xa4T\\xf01_\\x00\\xaa\\x1b\\xb6\\x9ah\\xe3w7i\\xd3\\x16\\xfb6\\x9f\\x01g\\xf0\\xf8S\\xcd\\xe0\\x86Uu^\\x16\\xbc\\xbe|@\\xf0\\xb9,GDVd\\x9bi\\xfd\\xae+\\x96}\\xeem\\xc3\\xf5\\xd9W\\xe3\\xbe}[6\\xfcD'\\x8e\\x06\\xc7b)\\xc7*/\\xa9\\x9a\\xd3\\xcbcU\ttZGuM\\x8dY\\n {\\n\\xe5v\\xbb\\x7f\\xc5\\xf8\\x8a\\xca\\x9e\\x88\\xcd4o\\xda\\x0f\\x08\\xbcT`\\x8d\\xdd\\x08\\xbff\\x9b\\\\\\xba\\xff\\xdf\\xe6\\xcdv\\xb2@\\xde\\x1f\\xd8\\x99\\x1ck\\xd9!\\xaf\\xcf\\x96\\xe5~\\xba\\xde\\x88\\x87CY-\\x81b>\\x8d\\x8a\\xf1|\\x85\\xc7\\n\\xdf\\x94H\\xbb\\x9c\\x1a_\\xc1>\\xdfl\\x1b\\xb8\\x9eLHQL\\xe1\\x03\\xd2\\xc1\\x10\\x92\\xe5X\\x1f\\xd82_\\xe7K\\xa8\\xd9>+\\x9a|9\\x80\\xe2\\xb1nZ\\x80\\xe6'Lv\\xd0\\x1f\\xf8$\\xbcf\\x90\\xf1\\x8f\\xe5+m\\x1b\\x9c\\xec{j\\x0b\\xc9\\xae\\xcb\\x1b\\xd6\\x16|2\\xfcD\\xfb~\\xe1\\xff\\xf6\\x8f\\xe7\\xc5\\xfd\\x8f\\xed\\x86)\\x0ezYu\\x9d7\\x15\\x1f\\xf4\\x8e2\\xb4kW\\xb6+\\x07\\xf5\\x97\\xfe5z\\xb3\\xf3\\x15F\\x1d\\x0dy\\x19\\xae\\xa7\\x07\\x00\\xfd;\\xed\\x9e>\\x18\\n\\xef\\xdb\\xc1\\xb7\\xcb\\xafE\\xc1\\xd4\\xba\\xd7\\xc1Z|\\xee\\x1c\\xb2\\xe5\\xe7g\\xc7\\x82\\xff\\x1f\\xdf\\x1d\\x94\\x1dc:\\xca\\xc7\\x9ba\\xb9\\x86c#\\xa7u;u\\x04J\\x96\\xadV\\xb9\\x9cG\\xda\\xf1T\\x82\\xe6\\xdd%\\x9d\\x7fG6\\xb4\\xae\\xf1\\xf2.\\xe3\\x83\\x0b\\xbe~\\x0e\\xefyi\\xf8LQ\\x05\\xcb\\xba\\x86\\xcb\\x0b\\xb8\\xf8_\\xffk\\xb2H\\xbf*KX\\x97%|\\x07gggc\\x92\\x00\\xff\\\\V\\xdc\\x8f\\x7f\\xce\\x8a\\xfb3\\xfe\\xa1WU\\xb9\\x7f\\xbc.\\xcb\\xaf\\xc6\t\\xce\\xce\\xc6+p\\xbe\\x86\\xc7<\\xdb'Q\\xac\\xab\\xf2\\xf1\\xff\\xe4\\xf9\\xbe2p\\x18\\xa6y\\xfff\\xaa\\xeb7\\x9e\\xba\\xfekv\\x93EU\\x16\\xbe\\x13{=\\xd7\\x18X\\xb7\\xbc~\\xfc\\xaa,\\xcf\\x96\\xbb\\xac\\xae\\x8dU\\x93\\x9f\\xe6Ie\\x89\\xb5\\xe4\\xe3\\xaf\\x0c\\xea\\xdcU\\xfa\\xb7\\x9eJ\\xbf\\xbfo\\xb6e1\\xa9\\xb6\\xfc\\xee\\xab\\xb2||vv\\xf6\\xd5\\xb43e\\x95\\x1f\\x1b\\xfe\\\"\\xbaY4\\x03\\xa6\\x15x\\x86\\xd7\\xb2\\x11^^~\\xbc\\xf8\\xf0\\xfa\\xfd\\xd5\\xbb\\x0f_=\\x9f\\xb4C?\\x10L\\xaa\\xa5rS\\xf5\\x7f\\xe7\\xa9\\xfe\\xf7\\xe5\\xb8\\xe6\\xa2\\xea\\xcf\\xbf\\x83\\xffy\\xb8>{U\\x96?\\x9d\\x9d\\x9d\\xfdm\\x9c$+\\xee\\x9f\\xf0c\\x03O\\x97\\x15\\xf7\\x87\\xeb\\xb3\\xb7\\xec\\xd6X\\xb0|-\\xd2\\xfd_\\xdfA\\x91\\xefL\\xf4\\x9bi\\xab\\xc0\\xe4s\\x864\\xa3BN\\xb2\\xa8\\xef\\xca\\xf2\\x9d}*\\xf6YUo\\xb3\\xddU)\\x07hL\\xa1\\xb4_\\xaeD\\xa8\\x9b\\xe5\\xe7n\\xad\\xd1\\xedm\\x87\\xf1J(\\x89f\\xf7-\\xf7\\x85op\\xba\\xb2G\\x86m\\xf6\\x19\\xbf\\x97\\x9c\\x89?\\xf0\\x83\\xc7#\\xc8\\xb4\\x15\\x99\\xaf\\xd6\\xbc?\\xf9\\x0f\\xb2Ouu\\xdd\\xf2W\\xec\\xee\\xdbs\\xf5\\xe4\\x9a\\xd3\\x1di\\x94\\x81\\xbfioV\\x8f\\x9e=\\xd2\\x95\\xa9C}\\xfbYy\\x8agjl}\\xb9.\\xcb\\xb3\\xeb\\xac\\x12\\x05\\xbe{v\\x7f\\xf6\\xd7/e]\\xe59u|\\xd8\\x16\\x9f\\xfb\\x92\\xa7\\xe2K\\xb1\\xf6\\x87\\x7f\\xfd\\xf8\\xee\\xad\\xfe\\xef\\xef\\xbe\\xfb\\xee\\xbbqk\\xf34\\xfdMN\\x9e\\x07J>}\\xd4\\xe6(O\\xba\\xc7\\xbas\\x9c\\xd9\\x1cwY\\xa5k\\x99fn\\x84\\x17O\\xbf\\xb1=\\xe9\\xa9jj\\x86<Q{\\xe5\\xe0\\xfe\\xa7m:\\xd2\\xc4\\xf3\\xe3\\xff\\xcb\\xab\\xfa\\xa32\\x99u\\xdb\\xb4\\xdepg\\xed\\x84|>9\\xb4e\\xcb\\xcf|.\\xf6G\\xfau\\xbec\\xe3\\xb5\\xad\\x9d\\xb1\\xefYU\\x97\\x85a\\xc8\\xaa\\x9b\\xf5:\\xaf\\xeaF\\x04\\xa03\\x13\\xd8T2\\xde\\xd5m\\xaao\\xdc\\xeb(\\x80\\xe1k_\\x8a\\x1a\\x7f\\xf9\\x1c\\xbe4\\x8d\\xddaU\\xced\\x99\\xbf|2\\xd5\\\"J\\xfb6\\xdbsM\\xff\\x8f,\\xda\\xff6$\\xe3\\xa5\\x1d\\xa5r\\x15\\xf9\\xf5Z\\x1d6\\x87})\\xfb\\\"\\xaf\\xe1\\x96\\xedvO?\\x17\\xe5\\xad\\xf4*\\xde\\n,Ky\\x03\\x8f\\x87\\xe2p\\xd0<\\x19\\x05\\x88\\x92#\\xa9\\xe7\\x91\\xaa\\x0f\\xf2\\x01Rl\\x84!\\x8f\\xed\\x06\\x16\\x92\\x1f\\xc50mG\\xca\\xb6\\xdc\\xad\\x06\\xbe\\xc8b\\x90\\xe7E7\\xc2@\\xdd\\xd1\\xd5\\x00\\xd35\t\\xd5\\xdd\\xa8\\x82\\xc7|^\\xb6\\x15\\x9d\\\\\\x0f[\\xbb\\xc4\\x7f\\xfd\\xe7\\x7f}5\\x19\\x80\\xf1\\xbd;Tn\\xea`Q]\\xae\\xe8\\xeb\\xb3o\\xbe\\xfe\\xa6\\xfer\\xd2m\\xed\\x7f\\xe9\\xb8B\\xce\\x0f\\x84\\x05_\\x944\\xc3\\xb3\\xf8\\x8b\\x9a\\xb3\\x9dESK\\xa04\\xd5\\xf9_'\\xc4E\\x89\\x0dt?v1T\\xcb\\xe3\\xf5n\\x82lp\\x05\\xada_!\\x16\\xc2\\xb2\\xc9\\xdbU\\xfc\\xcd`\\x88\\x7f\\xfc\\xf2\\xf2\\xfd\\x87\\xcb\\x8b\\xf3\\xab\\xcb\\x97\\xed\\xfe\\x877\\xc1\\xeb\\xc6\\xf7\\x91u\\x7f\\xcb\\xeeTiU\\xa6u\\x85u\\xdd\\x1b\\\\\\x1fx\\xb6\\xaeNm\\xdb\\xd5\\xf9\\x86\\xb7q\\x8bh\\x0d>\\xa7\\xacu\\xed\\xdfD/j\\xfa\\xf2\\x1a\\x96[\\xb6\\xfc<\\xb4\\xfee\\x1b\\xbe\\xea5\\xf2\\xda\\xa3r*+\\xac,\\x81\\xb8E\\xb4\\xae\\xf5\\xf0\\xf8OO\\xe0\\xc3\\x13\\xf8\\xf8\\x95B8G\\xd6\\x9f\\x9a-\\x0f\\xdf|\\xfb\\xfb\\xcf_\\x03\\xdb\\xed\\xf8\\xa5h\\xc9\\xef\\xc7\\xca\\x80>\\xb8)\\x0dL\\xb2\\xbc\\xcf\\xb2C}\\x14QI\\xf9\\xee`\\x1a+\\x02\\xbd.\\xe0\\xe3\\xcb\\x7f\\xeb\\xaf2>[o0`\\x8a\\x1f\\x01\\x83\\xbe\\xd2\\x87\\x033\\x95\\xdd\\xd4Q\\\"\\xd3*\\xe7\\x97\\xbeZ\\xb4\\xb5\\xa6p\\xd4\\xaeW\\xacX\\xc9jB\\xbd\\xcd\\xbe\\xf9\\xf6\\xf7\\xd6\\x01\\xc8\\xef\\xc6\\xf5\\x19|d\\x83\\xfc\\x06\\xb2_\\xd3\\xa9\\xd4\\xffS\\x91\\xfe~\\xff\\xedo\\xff\\x05\\xe4\\x0b\\x8ckV\\xb1b\\xd9\\x0e\\xa4]\\x19\\xf9\\xf8\\x1a\\xdam&\\xd4\\xffb.\\xca\\xabt\\x8c\\xb0^\\xfd\\xa3\\xc1\\xb1\\xa0\\x8c\\xa5L\\x85\\x01+m!1\\xab\\x1d\\x96\\x93\\x84\\xd8\\xb0\\x143B\\xac>\\xe5/\\xa01\\x9cpR\\xccX\\xa9\\x0c\\x0c2\\x16\\x88\\\"w\\x1f\\x19\\xc1\\xac\\xde\\xaf`\\xda!\\x10]\\x96b\\xc2\\x98\\x95Vo\\x9dS\\xe0\\xcdRN\\xd1\\x1c\\x18\\x1cZ\\xca\\x04\\x8dVz\\x8c\\x98\\xb4\\x14_\\xb8\\xb4\\x04\\xf8t\\xab(\\x1a\\xa56\\xe8\\x12\\xa8\\xf5\\x04\\xab\\x96\\xe2B\\xac\\xa5\\xb8*=\\x1b\\xbd\\x1eh\\x1b#\\xd9Rf\\xe0\\xd9\\x03=Cl[C\\xb5\\xa54\\x13l[JB\\x84[\\xca\\x10\\xe7\\x962\\x07\\xed\\x1e7a\\x8f|K\\xb1;\\xe5\\xf0\\x111\\xba\\xea\\x8e\\x16\\xb0\\xceD!\\xba\\xf5\\xa9\\xd6\\xa7\\xed\\xb9f\\xa4\\xae\\x7fn\\x0e\\x1b\\x9a\\xcbDM\\x1a\\x91>\\x9a>\\xf6Js\\xac\\n\\xa6\\x9a^\\x1cH\\xd9\\xcd\\xbe3'\\xc3c\\xf5:BY\\xc9\\x14\\xed\\xc6\\xa5i\\x13\\xb6\\x009\\x0f\\xf5.\\x90c\\xa6=\\xf9\\xdf\\xec\\x17\\x02O\\xc3\\x9d\\xfd\\xda\\xd4\\xdd\\xf1\\\\\\xfc\\xa3+\\xeb\\xf5=\\xdc\\xec\\x81\\xdd\\xb1\\xe5Q\\xbb\\xe4l\\xb2zq\\xac\\xa7d\\x98 \\xd2M\\xab\\xa4\\x03'j\\xd8\\x96\\xb7\\xb0?.\\xb7\\x82\\xac\\xc7\\xd7\\x1c\\x15\\xee\\xac\\x9b!\\xe3\\xfb\\x96\\xfd\\x1c>\\xa1\\xee\\xf1\\xec?\\xd4\\x9bg\\xdaQ}\\xe0\\x03g<\\x81\\x07\\xc67a7{Tx\\x13\\xfb\\xa8\\xee4\\xe8+\\x93\\xa8\\xb9\\x08L6\\x88HvT\\x0e\\xa9\\xd5Q\\xee\\x12\\x97\\x7f\\xfaA\\x06\\x0f\\xd7\\xf4\\x89\\x06\\x93\\xa8q;\\xbaY\\x91]\\xef\\xd8BD\\x85\\xf1\\x04\\x803\\x8f\\xe9\\x81\\x02h\\xca\\xcdf\\xc7j\\xf9e\\xfd{\\x8a\\xda\\xa1\\xec\\x7f7\\xfb\\xb3\\x0b\\x91AS\\xd4\\x0e\\xfdQ\\xc1\\xb2\\xdd\\x0eY,-GH9x\\xf2\\xf1\\xb7\\xef\\x9a*[\\xb0\\xfc\\x10w%\\x98\\xec\\xf8\\xe6P\\x8em\\xb1\\xbb\\x8f\\x0dF\\xa7f\\xd6\\xbb|\\xfd\\xbe\\x86\\xd6)\\x93\\x17Y\\xb0r\\x95\\x1e\\xb1\\xed.\\x96\\x9ao\\x9d\\xa6[\\xff\\xe3\\x90\\xe6\\xfb\\xa7\\x1f\\xe4\\x1fA\\xfeQ\\x19M\\xa6\\x81X,\\xd7\\x1c\\xf3%\\xc7\\xea\\xb2\\x07\\xae\\xd3Pky\\x98\\xed\\xba\\x07\\x0e\\xf7=L\t&\\xc7\\xa0\\xb9\\xae|#u\\xaa\\x16\\xc6\\xe2N\\\\\\xfa\\xc0y\\x80\\xf3\\x968\\xda\\xbdo\\xa4pPC}\\xda\\x1b\\xdd\\xfc \\xa6\\x95g\\xbb\\xfcA\\x12\\xb7?\\x7fg\\x19\\xdd\\xff`F\\x95#]\\x01G\\xca\\xc4_\\x1d\\xee\\x80`u\t\\x04D\\xd9\\x03\\\\\\x03\\xc1\\xea\\x1e\\x88\\xff\\x90\\xcfM\\x10\\\\\\xae\\x82\\x98\\xcfL\\xfab\\xb6\\xdb\\xe0\\xa4;\\xa6\\xae\\x83\\xe0u\\x1f\\x84\\x98\\xa2\\xcfv%\\x1c\\xe9s\\xb8\\xf8\\x80\\xd3\\xa5\\x10bJ\\x1f\\xe7j8R2r<\\xd4\\xfej\\xf3=\\x84\\x98\\xb2&\\xf5C\\x04\\x83/\\\"x\\xfc\\x11!\\xa6\\xd4\\xf3|\\x13G\\xca\\x10\\xaek`\\xf5Q\\x84\\x98\\xe2'\\xf4W\\x84\\x89\\xcf\\\"X\\xfd\\x16!\\xa6\\xac\t}\\x18a\\xe2\\xc7\\x08>_F\\x88)rJ\\xbfF\\xc0\\x0f\\x10\\x97\\x7f#\\xc4\\xd4c\\xae\\xafc\\\\5\\xdc>\\x8f\\x10S\\x91y\\xfe\\x8f#e\\xca\\x1br\\xec\\x03\t\\x0e?H\\x88)t\\xbc\\x83\\xa4E\\xd1`\\xcf4\\xbaL\\x02\\xa2\\x9cI\\\\'\\xc1i3L\\xeaB\t\\x137J\\xb0\\xbbR\\x82p\\xfc\\xdf\\x95\\xb7\\x8bcq\\xa8\\xca\\x86-\\x1b\\xb6Z4w\\x93\\xeb\\xaa\\xd3\\x1fi`j0\\xaa\\xeb\\xaa\\x95\\xaf\\xa1b\\x87]v\\xff\\xb4\\xfb;<\\xce\\xcf\\xf8U\\xa2PGB}|\\xe5\\x9b\\x82\\xad\\xbe\\xd2\\xed3\\xb5`\\xc4_3e<\\xeax\\xd9\\xea\\x82\\xbe\\xcf\\x96\\xdb\\xbcP\\xe4S\\xd5\\x83\\xa3\\x80\\xa1\\xed\\xadU\\xc6\\x0c\\x1d^T'\\x96\\x1a\\x11\\xb9H\\xc5\\xc9\t\\x86J\\xaf\\xb3]V,}\\x01\\x87\\x06M\\xa9\\xb2\\xb4f\\xb3\\xf6\\x9f-A\\xe0O?\\x0cl5m\\x17.\\xcb\\x15\\xc3x\\xc7\\x0d>\\xd5ej?\\xb6ewO\\xa5\\x81\\xa1\\x11\\x0fw\\xad\\x98\\xc4J{\\x94\\xfb\\xf2\\xddy\\xfb\\xc9\\xa2\\xf4\\xd7\\xccb\\xa8\\x1b\\x94B\\xe8iK\\xa0B\\x0e=\\xaa\\xa1\\x96o\\xea1Erpy\\x8b\\x99\\xba\\x08\\x10\\x81\\xa9U\\x16\\xf8\\xf0\\xfeBi\\x92\\x0c3\\xa3\\xc5Ndy!{\\xe3\\xa1\\x8e\\x03G\\xf3\\x8cJ\\x8ei\\x1e\\x95%\\xa8yj\\xf6\\x8a\\xc54O-\\x1e\\x83\\xf0\\xb4O\\x0b\\xb5\\xfd\\x1f\\xf6\\xde\\xb7=n\\xdc\\xc8\\x17}\\x9fOQ\\xc7/b;\\xd1\\xb4cO\\x92\\xf3\\x1c\\x9f\\xe3}\\xd6\\xfffF\\x89\\xc7\\xd6\\xb1\\xe4\\xec\\xee\\xcd3WfwC\\x12W\\xddd\\x87dK\\xee\\xec\\xe6\\xbb\\xdf\\x07\\xffH\\x90,\\x00\\x05\\x90\\xd2\\x8csQ/\\x92\\xb1\\x9a(\\x00\\x05\\xa0P\\xf8U\\xa1\\xa0\\xbe\\xd6}\\x90J\\xe3\\x7f\\x89\\xbf\\xc3\\x05C\\x02)\\xb0\\xc6\\xf5\\xeel\\x0fY\\xd8\\xbb\\xf8\\xba\\\\\\x87\\xf7\\x8f\\xaf$\\xe2J\\xe9\\x01\\xff\\xa3\\xd5:\\x04o\\x87K4+\\xba\\xd0\\n\\xe5\\x9cAfF\\xff\\x8d\\x1d\\xb3G\\x94i\\xc1\\xbf\\x0f\\x98\\x13\\xaf\\xcbz[\\xd6\\xb1\\nt%J\\x9f\\xd3\\xae\\xb2\\x0f\\xc4e\\x96\\xd4\\x1d\\x93\\x7f\\x1d\\xc6A(\\xad\\xa35\\x9bV=\\xc4!s)\\xb7V\\x8b\\xd1\\xf4[\\x97\\xa7n\\x86\\xfb\\xe3}V\\x83\\x16\\x98\\xb1c\\x0e\\xb5\\x81\\x8e\\x9es\\x96\\x98\\xa5\\x9f\\xf4\\x8akk\\xa4K\\xffg\\x9f53%@\\xef\\xf5lgZ\\x01\\xa2\\x03\\xecf;6\\x02\\x16\\x03\\x99\\x93\\xe0j\\xc4A\\x03.\\xd3\\xd2\\xed3\\x9f\\xe8\\xac\\x19p\\x93\\xae\\x9b\\xc1\\x1f\\x11\\xff\\x0d\\xd8}8`5\\x03\\xc1a\\xcf\\xcf\\xe6\\xcf\\x81\\xb1O\\x07l~\\x1d\\x98\\xd4\\xd4p\\x87\\x0f\\xa1\\x99\\x88\\x0b\\x08\\xdaV\\x06=\\x99\\x82\\xcc$\\x9bK\\x08`.\\xb7\\x10X]CF\\x1ds\\xb8\\x87\\xc0\\xb6\\xe6\\xc0\\x11\\x0b\\xe7q\\x15\\x81[v3\\xbb\\x8c\\xc0\\xe36\\x02bk\\x90(\\x9aI.$\\x84\\x9b\\xd93k\\x17PW\\x128W\\x18P{\\x11\\xe5VB\\x1862\\x8f$\\xeaZ\\x02\\xa7{\t\\xa6\\x8c\\xc6,\\xae&\\x98\\xean\\n\\x1cX\\xab\\xdb\tf\\x10\\xc5<.( \\xba\\xa1\\xc0\\xe9\\x8a\\x02b\\x7f\\x02]R\\xe0tKAP\\xa5\\x14\\xf7\\x14\\xf8\\\\T@\\xac\\x12\\x1d\\xb7hw\\x15\\xc2\\xcb\\x80\\xbdP\\x97\\x15\\x90\\xdcV0\\xa5;\\xd1.,\\x84\\x17\\x11\\xb9\\x05\\xaf+\\x0b\\xa6\\xf4h\\x16\\xb7\\x168][\\xe0qo\\xc1\\x94\\xf6G\\xba\\xba\\xdc\\xd3\\x0bsw\\x01\\xc1\\xe5\\x05Sz2\\xab\\xfb\\x0b\\xc2&\\x98\\xdd\\x0d\\x06S\\xba4\\xc9%\\x86\\xf0\\xe3+\\x7f\\xe4\\x16\\x03\\xa7k\\x0c\\xa6\\xb4\\x7f\\x92\\x9b\\x0co\\xff\\xd8U\\x06\\x14w\\x19L\\xe9\\xc64\\xd7\\x19\\xc2\\x10\\xb5V\\xad\\x93\\xcb\\xe7B\\x83)}\\x9b\\xe4N\\x9b\\xdc5\\xbf[\\x0d\\xa6tnV\\x17\\x1b\\xb8\\xddl\\xe0q\\xb5\\xc1\\x94\\x8e\\xcc\\xe6v\\x03\\x8b\\xeb\\x0d\\x9c\\xee7\\x98\\xd2\\xf6X\\xdf\\x9c\\x95U\\xbf\\xddn\\x98f\\x92\\xd7n\\xc0K\\xfb\\xf0\\x10\\xcf\\x1d\\xb8\\xbdw\\xe0\\xf7\\xe0\\x01\\xb8NlvO\\x9e\\x95u\\xa47\\x0f\\xa6{\\xf4\\x00b\\xbczN\\x8cs\\xf0T\\x99\\xc9o\\x8cp\\x8a\\x8b \\xfcH\\xf2\\xe5\t\\xbb\\xd1q\\xfe}\\xf0\\x10G4O\\xe5U\\xdb`H\\xd3\\xf7\\xb4\\xb8\\xbdsm\\xe9\\xfe\\x0b\\x1b\\xfa\\xca\\xaf\\x90\\xad\\xfc]^j\\xa8\\xebr\\x95\\x8bk#\\xe2:\\x00\\xff\\xf82\\xbfa\\xe6d\\xb9fX\\xda\\xc6\\xbe?a\\xd0Q\\x8aKA\\x15\t\\xf0*\\x9cU\\xd9\\x8a\\x89sZ\\xb0@\\xe7H\\x10;\\xec\\x93\\x91B(W\\xf7K\\x7fe\\x94\\xb14\\xb9\\x1d\\x97\\xee'g\\xf2\\xdf\\x8eM\\xc4\\xad\\xdd\\x9f\\xb5\\xdb\\xc8\\xb5\t\\xf5w\\x7f\\x87\\xff\\x92m\\xf2u\\xd6\\x94U\\xac\\x0fI\\xfbA\\\"\\x9cH\\x83\\xa2$/\\x92\\x10\\x05[]}\\xfbL\t4\\xb9\\x95F:\\xc26\\xa6t\\xcf\\xd2\\x90\\x83\\xcf\\xab$\\xa6[\\xe0\\xb3A\\x0d/\\xe3\\x13\\x96\\x92\\x8a\\xfcV\\xdeVV9/\\xfe3\\xbb\\xc9\\xa4\\x04\\xd4\\xaf\\x9am\\xbee\\xe5\\xdew\\x13\\x0c\\xb3zTI(oXU\\x89\\x0cd\\x8dH\\xf4\\\"\\x93\\xef\\xb4\\xbf^\\xc0\\x1f\\xa0f+\\x81\\x0c_\\x94\\xa6\\x1d\\xf9\\xa7\\xec&;\\x15M\\xfaF\\xa64\\xe4\\x0d\\xe3\\xb5\\x1a\\xdf\\xac\\xb2\\xcd\\xa6{;\\x97o\\xc9\\x93\\xa6\\x8bd\\xd1\\xdb\\x82\\xba\\xeb\\xc9\\xc2TS\\xae\\xadV\\x80\\xb7\\xf9f#\\xf2&\\x94pY\\xc22kQ\\xceu^\\x0b/M\\xddd\\xa6\\x11\\x89[6Zo\\x99e\\x94\\x85(};\\xabkXe\\xbbf_\\xb1\\x11{\\xb1\\x1b\\x05W\\xa0\\xf6\\xd5\\xae\\n\\xf9\\x87A%l\\xb9\\xbf\\xa4\\xb2\\xe6\\xdfj\\xdbH\\xfb\\xf9vU^4P\\xee\\x9b\\xdd\\xbe\\x81\\xf5\\xbe\\x12\\xf0\\xa8\\xac\\x02X{\\xb9s\\x93o\\xf3\\xd1\\x0c\\xcb\\x8b\\x86]\\\"\\xf9B\\xf2\\xa2\\xf9\\xf6\\xd9\\xb0r\\xc1\\xa17l\\xdb\\xecK\\xbe\\xddoa\\xc3\\x8a\\xcbF\\\\s\\x96\\xad\\x90\\xd7/\\xff\\xce\\xaa\\x12\\xb6,+j\\xd8\\x17\\xa2p{\\xc3\\xb0\\x9d\\xae\\xcf\\x87\\x95t\\x13y\\xd0Ke\tB&\\xe7\\x85\\nt\\xbb\\xd8\\x8bn\\x8a\\xb3U\\xb5\\xdf\\xb0t\\xb3h\\x9a[\\x88xY%\\xdd,\\x9a\\xc9\\xdd3\\xc9\\xd5C\\x1c\\xact\\xb3\\xc8\\xef\\xc6I7\\x8b\\xd2\\xcd\\\"b\\xebgq\\xc1\\xa4\\x9bE\\x8eV\\xcf\\xeaZ!\\xc2\\xc3\\xe9fQ\\xb8\\xcb$\\xdd,2(\\xb8\\x1f\\x93\\\\!\\xd1\\xdd\\xf0\\xbb@\\x82;2\\xab\\xdb#\\xdd,\\x8a\\xf2^|57\\x8bTX\\xe5\\x96m\\xcbj\\xf4\\x1e\\xb4;\\xf7\\x86,\\xd3\\x1d\\xa7\\xd5\\xbf\\xfb\\xa7i\\xf5\\xad\\x0c\\xe5?\\xc7 Nw%F\\xc1\\xae&\\x81\\xf0\\xa9\\x13\\xb5x\\x90\\x9e\\x7f#\\x00P\\xc5EB\\x15\\xe7\\xffY\\x97H\\xb6\\x0c/Fd\\x96kc\\\"Y\\x0f\\x04\\x91\\xc2\\xcfd\\xd6T\\x83Wo\\x98\\x0dDK\\xe5[\\x15q\\x9e\\xe6 6\\xa5:>\\xb7\\xa9\\xe5\\xfb\\xd8\\xd8\\x05c\\xdb\\xac\\xbafMDJ\\x9a\\xa2<\\xb7]\\xdb\\xa0\\xe4z1\\x8a\\xf3)\\xbe\\xd2\\xd3\\xf2\\xf8\\xe4\\x9b\\xdeM\\x0c\\xde\\x87\\xdf\\xf5\\x8e\\x1b\\xbf\\x93g\\xac\\xde\\x02\\xdclj\\xbd\\x184\\xd7sy\\xc08o\\x83\\xa5\\xc7\\x89\\x8b\\x1cx\\x88\\x0dx\\xed\\xb9\\xc7\\x1cU\\xc1\\xb2\\xdc\\x17*\\x05n\\xb6\\x95\\xaf\\xa8\\x8b[<\\xaaW\\xabL\\xbf\\xcea\\xf2c\\xcd-c\\x85B\\xc5\\xda5\\xb4\\xc9\\xea&_\\xe5\\xcd\\xe1|\\xbb\\xdf4\\xf9n\\x93\\x8fA\\xc9\\x88\\xae\\xf4\\x86\\x03\\xad\\xc4\\xec\\x84\\x06\\x7f\\xf8\\x11NBCYa\\x8c\\xd6\\xa6\\x1f\\x8b\\xb8\\xcdzy\\xc4\\xae\\xb2\\x1b6P\tW,\\xbf\\xbc\\xf2a\\xa0\\xc1\\xbd0yw\\xe9\\xd4\\x1a\\x95\\x82O\\xaaV\\xf5\\xeb`86\\xab\\xfd&\\x1b\\x04n\\xe7\\xb5\\xe2\\xb8^\\x0c&\\x97\\xa7\\xdd\\x83\\x8b\\\\\\xdd4\\x1fH\\xac\\x1d\\xe3m^\\x9c_f\\xf5\\xb9\\x98\\xd94e\\xd2\\xebx\\xaf|\\x1f\\xb4\\xcb\\x8bv\\xdc\\xe4\\xaf\\xd2\\xe5\\xc7\\x1b\\xa3\\xdd\\x18\\xc5\\x9a\\xeb\\x04\\x83\\x9d\\xe9\\x9b\\x1d\\xb4\\xd0>\\x05\\xf1f\\xfe7\\xd6L\\xcb\\x143\\x9a\\xaaq\\xc0\\xa5\\xc0R\\xaa\\xcb^\\xb6\\xb2\\xa6\\x84Z\\xa4c5\\x1e\\xe6i\\xe7\\xe5\\xaf\\x8c\\xca\\x03<\\xc4\\x16\\xa5\\xf8\\xcf|\\xad\\x0d\\xe9(\\x9f\\x94w\\xfb\\x86\\xaa\\xf5\t\\xd5a2;\\xb9X\\xf5\\x13\\xaaH\\xbf\\x07mm;\\xde\\x16\\xec^\\x05\\xca\\xa4#[-}\\x9f\\x14\\xbe\\xb6\\xbbG\\xe8N\\x0c\\xd6\\xdd\\x18,:\\x04f\\xde\\x95a\\xb83\\x03uw\\x06\\xeb\\xb6\\x06\\xce\\xeb.\\xeeh\\x9di\\xbb\\xf5\\xb0cr\\xef\\x1eV\\x81n\\xe0\\xe0\\xdf\\xc4\\xe1Nz<mS\\x1f\\xf6M,\\xab\\xc1\\xc6\\x0e\\x83\\xcd\\x1d\\xec\\x1b<\\xd84\\x03L\\xe9a\\xe4\\x86?\\x9e\\xa6z\\xfbG6}@U9\\xb8\\xfa\\x13l\\x00\\x80\\xdd\\x08pVd=\\xa5O4\\x08\\x86rn\\xae0\\xa3\\x00<\\x86\\x01\\x10\\x9a>\\n8\\x9b\\xc9H\\x00\\x92\\xa1\\x00Q\\xc6\\xc2\\xbd\\x86\\x93\\xe5\\xcb\\xd5\\\"3\\x1e,\\\\\\x88\\x81\\xb8`\\x15\\xdf\\xb0\\xdep%&N\\x82\\x01\\xfbT\\x13\\x94%\\xa27\\xb7\\xc4K\\xa4f\\x97\\xe4\\xd5\\xbe\\xf2\\x02ve\\xd5<\\xe1j\\xb1`\\x9b\\xee\\xb9\\xd5\\xca\\xd8\\x85u\\xacA\\xc7m\\xf82\\x82|\\xbeU\\x85\\xd3\\\\\\xec\\x8bK\\x91TW\\\\z\\xedY\\xe0\\xc1\\xa9P\\xc5\\xba\\xef]\\x9bU\\x95Tl\\x93\\x1dx\\xfb\\x90\\xcap)t\\x12\\xef'\t\\x1eW\\xc1\\xfb|\\xfc\\xfa\\xf4\\xd9\\xef\\x06\\xdc\\xcd\\x05fH@\\xf5^I\t\\xf2B*EyW\\xb2\\xb9\\xf2N\\x85\\xc0\\xf3;_\\x18\\xe7J\\xd3\\xf9\\x0e\\xf0\\xf6\\xf9`rQzS\\xf8jUTD-^_]Ue]\\x7f#g\\x8a\\xbc\\xc1\\xac\\xdb\\x8d\\xbc\\xe9\\x90\\xf7\\xb0%QH\\x8f\\xbd\\xca\\xd9=\\xbd\\xd5\\x03FQ\\x0doJZ\\xb3\\xf1V \\xca\\xa6f\\\"t\\xe7\\xf8\\xd5\\xeb\\xb6\\x96\\x9e&P%e\\xe6\\xed\\xb3\\x12v\\x95H\\xf9\\x0d\\x19\\xd4yq\\xa9'\\x97\\xcc\\x03\\xb1d\\\"\\x80F\\xb1\\xa9\\xd8\\xfaH\\xb07f\\xdb\\x99\\xee\\xc8[%\\x83\\xb6*\\x89\\x1a\\xed\\x99\\xcer]\\xe8\\xa2\\xb0\\xcc\\x8ak\\xa5\\x0f\\x1f\\xea-\\xe0\\x94\\x15k\\xc5\\xe2W\\xad\\x82\\xd1\\x9ct\\x94goY4%\\\\d\\x9b\\x9ay'\\xb4\\xd0\\xa6b\\xb9\\xfd\\x90\\xd5W\\xc1\\xf6xh6\\x1c\\xe9\\xd7\\xee=B\\xf2\\xb8{K\\xcb\\xec\\x80X\\xfc\\xc6\\xfa\\xf4\\x86\\xc4\\x8e:A\t\\x8am\\x0b\\xa1a\\xb1D\\xc9\tE\\x15,:\\xd1\\xdd\\xf3\\xa6\\xdbV\\xd0rxY\\x18m1@\\xb6\\x94\\xc6\\xde\\xd7\\xf8\\xedf\\xc0I\\xabU\\xec)f\\xc2\\xb6\\x03\\x96\\xad\\x07\\xc8}\\x8b\\xda\\x82F\\\\z\\x12\\x9aa+2\\xb8\\xa9\\xe5\\x8el\\xc8\\xae-\\xc9?\\xef{S\\x90<\\xf1e\\xb7\\xa6\\xce\\xfc\\xf0S\\xbc1\\xf5G\\x90\\x06)c7\\xf9\\x11\\x9f\\xf1\\\"qL%\\xdfB\\x99s\\xa98\\x17\\x0b}\\xb9\\xd8\\x17\\x0c\\xbd\\x9f\\xd1\\x8b\\xc6-\\xafy\\x17\\x0e\\xbat\\x88\\x8bg\\xd4Rs\\xfe\\xb5\\x90\\x16\\xb7E\\xccf\\xd5\\xb6=\\x88O\\x83K\\xf5\\xd1s\\xbc\\x82\\xee\\x83\\xdel1\\xfe\\xac\\xde\\x86\\xd1K4\\x0e\\x93b_\\x9a\\xf3kv jJ\\xf4\\xe6\\x018\\x9d/`\\xd4\\xa2\\xb5\\n\\xffO\\xf5,zV\\xab\\xc3\\xe1\\x89\\xb8\\x8b\\xf2\\xb7=\\xab\\x9b\\x85\\xfc}\\xc0D\\x1c\\xc1Dq\\xce\\x8e\\x0b\\x82\\xc1\\xb6\\xac\\x1b`\\xe21r\\xf1n\\xf9\\x02\\x8e\\x1b\\xe35\\xc4]s\\x80\\xfcb8\\xa7\\xafX\\xc5\\xc4\\x9b%E\t\\xdb\\xb2b\\xfa\\xf5xsV6e\\x93\\xa1\\xc9j\\x1cBA\\x1e\\xf6\\xb1\\x1d\\xfb\\x05{!\\x0d\\xf1\\x1f]\\xa0\\xb5~\\xc8\\xdex\\x7f}\\xd8~SP2\\xc2_0\\x19*\\x80\\xdb\\xac\\xe6\\x06\\xe1\\x11\\xe4M\\xad_\\xe1\\xafa_\\xc8\\xc9\\xb4\\x96\\x8f\\xa5\\xdf\\xe65\\x82W\\xf7\\xcf\\xc9\\xaf\\xcb\\xa2`\\x12N\\x88\\xdb\\x1d\\xf4\\x1a\\xe4\\x9b\\x84\\xfa\\xcf\\x90]\\xe2m\\xbd\\xaa\\xca\\xdb\\x97\\xf2\\x0eG\\xf0>\\xc1Di\\xe2\\x9d\\x12\\xed\\xff\\xbdb\\xaa\\\\{]B\\x95\\xf7\\xc9\\nm+.-\\x9d \\xd0,\\x11\\xb9\\x8f\\xde9\\x10\\xaeUO\\xeb\\xb0V\\x8d\\x97g\\x8c(\\xc5\\x83\\x1fk\\xc1zH\\x04\\xef\\xd6:\\xf5\\x88;`\\xa7Ri\\xe6\\xa3\\xe0\\xe0\\xdeQ\\x17\\\\\\xc7]\\x98\\xd0\\x9b\\xe8\\xa3\\xefP\\xd3\\x18\\x07a_w\\xc6\\xce\\x9b\\x01FFX\\xf6\\xea\\xc0\\xdc\\xbf\\xe5\\xc3\\xa7\\xf0\\xaa\\xac\\xd8B\\x86\\x1d\\xf3\\x89\\xfb\\xbaTO=\\x9d6Y\\xc3\\xfe-o\\xae~0\\x80h\\xc2\\xec\\x1d9\\xa6U\\xa8\\x8e\\xe6\\xab.N\\xca\\xcfbfh\\xc5n\\xf2:/\\x0b\\xf4\\x01\\xc0\t\\x9b\\x81\\x94\\xa0\\xe4-3\\x95\t+PH\\x86Kx\\xb5\\xaf*\\xb1\\x99\\xf5\\xa3\\x9a\\xda\\xe6D\\x01\\xf6\\xee\\xe6(\\xe4\\xfd6o\\xae\\x94Q!\\xfdp\\xbaN\\\\E\\xf4\\xe6\\xec{^\\xd1f#7\\xe8\\x8f\\xaa\\x9c\\x1cR\\x10\\xcf\\xe9\\xae*\\x11\\x81\\xcf\\xd6\\x905\\xc0\\xb2\\xd5U[\\xebU\\xbe1\\x8d\\x89k\\xc6vy\\xff\\xaa\\x93\\xe6\\xf7^\\xee\\x93\\xbc\\x8a:\\xdb\\xb2\\x05\\xfcP\\xde\\xb2\\x1bVA]n\\xcd\\x87\\xcc\\xb2\\xcdeY\\xe5\\xcd\\xd5\\xb6\\x86mv\\x80\\xd5UY\\xd6\\xbdG\\x91zO\\xceWL\\x03'\\xaaEy\\x01+V5*\\x17\\xdaZ%\\x95c\\x8b\\xcb\\x85\\xb8\\xbd\\xc0\\x85z]\\x1f\\xc9\t\\xf6\\x8d\\xba\\xf5l2\\\\V,\\xbb\\xeeb\\xe7k8\\x16B\\xad\\x19\\xac\\xb2\\x9a\\xd5G=\\x19\\xbdo\\xaf\\xe7\\x992\\xaa\\xfb\\xa8U\\xd6{\\xeeK5\\x93\\x9b\\xc4y\\xb1g\\xb5\\xb2\\xa5\\xb6e\\x917e\\x91\\xaf\\xc48\\x08n\\x99\\x08Pb|,\\xe5\\xf3\\xed\\x88P\\xe5 \\x99\\xfc/YSK\\xa9\\xa8?\\xb6\\x92=\\x17}\\x8e\\xc2\\x1a\\xf8\\xa7\\xe7\\xfb\\x8ajT\\xb9\\xb5\\xe3K\\xf8\\xf4\\xf1\\xdd\\x93\\x8a)\\xdb]\\xbc#.\\x93\\xfe\\x15\\xf9\\xdf\\xf6\\x8cw_\\x9f\\x9f\\xa4\\xca2\\xb6\\xdc\\x01\\xab\\xeen\\xecP3\\x8aW\\xe3V\\xe5\\x06\\x96\\xfb\\x8b\\x0b\\xd6>n\\xad^\\xbc\\x95m\\x96\\xef\\x1a\\xaa\\xc3\t\\x9f\\xd9\\x1b\\x96\\xd5\\xcd\\x90SY0x\\xf0\\xe4\\x81\\xf0~d\\xab\\x86U\\xf2\\x8d=\\xf1\\xdc}\\xcd.\\xf9\\x98\\xeb-\\xf5\\xd3\\xc7w\\x0fkyH\\xe4\\xac\\x07\\x8c\\xda4\\x93\\xa34\\x91\\xc8\\x0b\\xfbB*\\xfa]M\\xde\\xffG\\xe2)\\xcba\\xd1\\xcf\\xbc2\\xeb\\x9b\\xda\\x9f\\x1f\\xcb\\xb6\\nf\\xf5U\\xb9\\xdf\\xac\\xf9\\\\\\xe3\\x9d\\x1d\\xf0Ye\\x85\\x9c|B\\xe9\\x8c\\xae\\xd4\\xf0\\xe5s\\xc4\\xc5#^&\\x7f\\xb0x\\xc0\\xa7|Q6\\xdc\\xc4b\\xbb\\x86\\xad\\x1f\\x0f\\xdf.\\x04\\xbenv\\\\`\\xf9\\x8a\\x1dA\\xc3\\xf8\\xc6\\xa2\\xdfl\\xddUlUnw9\\xb7\\x90\\x0b\\xf5H\\xf92/\\xb2\\xea \\xb6E\\xde\\xdf\\xe1\\x8e\\xaeu\\xed\\xc83\\xca\\xbe\\xec\\xd8\\xaa\\x81\\xbc\\xd1\\x11\\xb0J\t\\xf2a\\xe5G\\x8d\\xf2\\x02^\\x16\\x87V\\xdb\\x1c\\x89-\\xef\\xd3\\xc7w\\xb5t_\\x0e\\xb8\\xa9\\xbc\\x93#\\xf4ju\\xc5\\xb6\\x0c>_5\\xcd\\xee\\xf3\\x91\\xfc\\xff\\xfa\\xf3\\x11\\xdf\\xd0\\x8bR\\xfdz$f\\xca*+\\xa0\\x143_\\xf4\\x94+\\xa7\\xfdn$n\\xde\\xc3Q\\x1d\\xac\\xba\\x11\\xfa1k`\\x9b\\xedj9\\xec\\xa2\\xa5M\\xd9>\\xce.l:\\xa5\\xd4\\xb2\\x1a.\\xca\\xcd\\xa6\\xbc\\xad\\x9f\\x8f\\xa4\\xff\\x1b8\\xbe\\xe8\\xda\\xc6\\x87K\\xbf\\xe7\\xdb6_\\xdc\\xa3\\xad\\xc5\\x0b}\\x8bq\\xf1\\x97\\x05\\xfcpvv\\x02\\xdf\\xbf=\\xd3\\x99\\\">}|'\\x97\\xccA<\\xfa\\x99\\x8d_\\x8a?;\\xec\\xd8O\\x7f\\xfdi\\xc0LgH\\xc8\\x0b=\\xcarg\\x13\\xf2\\xdbU\\xe5z\\xbfb\\\"\\xabrU\\x95\\xd5b\\xdc\\x12\\xc3~\\x16G?\\x91-C\\x1e<W\\xd9J<\\xb6Z^\\xefw\\xed\\xf9\\xabuC\\x8e\\x15\\x06\\xf0N\\x88z\\xaf\\xb2\\x1b1\\xd4[c6\\xae\\xe5t\\xcct3\\xf9\\x7f\\xdf\\x94\\xf9\\x1a\\xb2b\\x9c\\xccHV*\\x16X\\xc5.\\xca\\x8a\\x1d\\xe9b\\xfa\\xad\\xca|\\x937\\x07(\\x18[k-/\\x14@u3\\xf2\\xa1\\x8a\\xbbBz\\xc3\\xe1\\x0b\\x82\\xaf\\x80\\x05<\\xfaT3\\xb8a\\x15\\xd7\\xf4\\xbc\\xbf|B\\xf0\\xb5,gDVd\\x97\\xe3\\xfe\\x0d\\xf7\\xaf\\xc5\\xe3\\xe1\\xd8\\xbe/\\x1ba:\\xe4u\\x1b\\xb2\\x9a\\x89\\x96\\xaa5\\xdd\\xd90\\xc6A\\x16\\x13f)\\xce\\xee\\xe3\\xd3k\\xfb\\x10k\\xc5\\xb8FeG\\x02\\xbb\\xc9\\x1b]A\\xe7\\xaclg\\xf8\\x92]\\xe6E\\xc1\\x9b\\xcd\\xed\\x98\\x91\\x82<\\xec\\xd8B\\xce\\xb5l\\x97\\xd7\\x8bU\\xb9\\x1d\\xeb\\x9bS1\\xd3ky6\\xe6\\xcb\\xa8\\x18\\xaeWx\\xa4\\xac]\t.\\xc8\\xa5\\xf1\\x18\\xb6bC^\\x8e\\x16\\xa4h\\xa6\\xc8\\xd2\\xd1^A\\x94\\xd8\\x8dz\\xf2r\\x055\\xdbfE\\x93\\xafz\\xe8\\xc3 \\x97\\x08P,<7$3\\xdaA\\x7f\\xe4\\x8bp\\xc9 \\xe3\\x95\\xe5k3E\\xc4p\\xdf\\xd3i\\x13\\x96\\xe5\\x0dk\\xdf\\xea\\x1c\\xb9\\xf0\\xd5\\x0b\\x9a\\xbe\\xba?\\xbf,\\x0e\\x9f;4/+ \\xab\\x96yS\\xf1I\\xefh\\x83\\xd6]\\xd9\\xa6\\xec\\xf5_\\xc863\\xc5\\xce5\\x8cz\\xa5\\x97\\xb7a96\\x00\\xccz\\xda\\xd7\\xf7M\\x16'z\\xf2m\\xf2\\xa5h\\x98\\xd2{\\xed5Wq\\xbf;[]?\\xd9\\x17\\xfc\\xff\\xf8\\xee\\xa0\\xe2\\xed\\xc7\\xb3|\\xb8\\x19\\x96\\x17\\xb0o\\xe4\\xb2n\\xa3\\xbd\\xb921\\xb2\\xfcv\\xef\\x02\\xcb#T{\\xde\\xe6\\xf5HA\\x9b\\x1c\\xdf~\\xc9\\xf8\\xe4\\x82\\xa7\\xcf\\xe1\\x84\\xb7\\x86\\xaf\\x14\\xd5\\xb0\\xac\\x15\\\\^\\xc0\\xeb\\xdf\\xfev\\xa4\\xa4\\xbf+K\\xb8(Kx\\x01\\x8b\\xc5\\xe2\\x7f\\x0f~\\xe4\\xd5e\\xc5a\\xf8\\xe7\\xac8,xE\\xdfU\\xe5\\xf6\\xd1EY>\\x1e~\\xb0X\\x0c5p~\\x01\\x8fx\\xb1O\\xa2Yg\\xe5\\xa3_\\xf3r\\x8f\\xe1\\xbfF\\xbag\\\\\\xf6\\x1fX_\\x9fy\\xfa\\xfa\\xa7\\xec&\\x8b\\xea,\\xbc\\x10{=\\xe7\\x18\\xd8\\xb7\\xbc~\\xf4]Y.V\\x9b\\xac\\xae\\xd1\\xae\\xc9\\xaa\\xf9\\xa7\\xb2\\xc5\\xc6\\xe7\\xc3Zz}n;\\xfd\\xad\\xa7\\xd3'\\x87\\xe6\\xaa,F\\xdd\\x96\\xf5~W\\x96\\x8f\\x16\\x8b\\xc5(i\\x9e\\xee\\xf2#\\xe4\\x171\\xccB\\x0c\\x14)\\xf0\\x02\\xc7R\\x08o\\xde\\x9e\\xbe\\xfex|r\\xf6\\xe1\\xe3\\xe3\\xa1KA2\\x96\\x13\\x01c-\\x99c\\xdd\\xff\\xbd\\xa7\\xfb\\xdf\\x97\\xc3\\x9e\\x8b\\xae?\\x7f\\x01\\xbf\\xde-\\x17\\xdf\\x95\\xe5\\x7f-\\x16\\x8b\\x7f\\x0c?\\xc9\\x8a\\xc3\\x117\\x1b\\xf8wYq\\xd8-\\x17\\xef\\xd9-\\xda\\xb0\\xfcB|\\xf7?^@\\x91o\\x90\\xf1E\\xa4\\x02\\xa3\\xea\\x90o\\x06\\x8d\\x1c\\x15Q\\xf5\\xca\\xf6->\\x15\\xdb\\xac\\xaa\\xaf\\xb2\\xcdY)'hL\\xa3\\x8c\\xbf\\x9c\tdou\\xdd\\xea\\x1am\\xe4\\xc1\\xf2\\xd0m\\xc3Z\\x13Jl\\xfd\\xd0\\xe62\\xd9\\xd7\\xbd=\\xef!\\xb2\\xcd>\\xe1\\xe7\\x92\\x85\\xf8\\x81\\x1b\\x1e\\x0f\\xd5I\\xb4\\xdd\\xb9\\xdbW\\xba\\xe5\\x98\\x9a\\xecZ\\xf5Wl\\x0em>\\xf7\\xe11\\xa75i\\xd4}\\xb6F\\x9f\\xac\\x1e>yh2SF\\xbd\\xaeVZ\\xf1L\\xcd\\xad\\x07\\x17e\\xb9Xf\\x95h\\xf0\\x97'\\x87\\xc5\\xdf\\x1f\\xc8\\xbeJ;uhl\\x8b\\xea\\x1e\\xf0\\xaf\\xb8*6~\\xf8\\xd3\\xe9\\x87\\xf7\\xe6\\xbf_\\xbcx\\xf1b(mq[\\xa8=\\xc9\\xb5\\xee2nl\\x88\\xcdQZ\\xba\\xfb\\xba\\x0dF\\xbb\\xdco\\xb2\\xca\\xe42.\\xdc\\x88\\xe0\\x87nc;\\x02\\xb6]\\xb2\\xf5\\xba\\xdb\\xe2\\x8e\\xd4^\\xd9;\\xff\\x19\\x9b\\x8e|\\x85\\xff\\xf3\\xbf\\xf2\\xae~Vq\\x99\\xfd\\xd7\\xd5\\x95\\xe0\\x16zA>\\x1f\\x19m\\xd9\\xea\\x9a\\xaf\\xc5\\xce\\xa4\\xbf\\xc87l\\xa8\\xdb\\xf4\\x8a=aU]\\x16\\xc8\\x94U'\\xeb\\x8b\\xbc\\xaa\\x9bs!\\xe9\\x17\\xf0t\\xc8\\xa5\\xfd\\x8c\\x0f\\xb5\\xfe\\xea\\x99[\\x8f\\x02 \\xb5=\\x10=~\\xf0\\x1c\\x1e`s\\xb7\\xdf\\x95\\x85l\\xf3\\x83\\xa31\\x17\\xd1\\xda\\xf7\\xd9\\x96s\\xfa?\\xb2i\\xff\\x82|\\xc6[;\\xf8\\xca\\xd5\\xe4\\xe3\\x0bel\\xf6\\xc7R\\x8eE^\\xc3-\\xdbl\\xbe\\xb9.\\xca\\xdbB\\xac\\xa2\\xab\\xccHk4\\x9c\\x8a\\xfdIs$\\x8d\\xa4\\xc1L\\xea\\\\g\\xaaB>A\\xc4\\x1571=Lv\\x9f\\xc54\\xd53E^l\\x13\\x87\\xe6\\xaev\\x81\\x12\\xa8\\x19\\x06\\xea\\x8c\\xae&\\x98\\xc9I\\xb0ng\\x15<\\xe2\\xebRwtt<\\xd4\\xb8\\xc4O\\x7f\\xfd\\xe9\\xf1h\\x02\\xc6\\x8fn\\x9f96\\xc0\\xa2\\xbb\\x9c\\xd1\\xd3\\xc5\\xb3\\xa7\\xcf\\xea\\x07\\xa3a\\xd3\\xff\\x85\\x03\\xd1\\xe2g\\xdc,\\xb6A\\xe1]\\x9c\\xf4\\x08\\xd5VK\\xd9X\\xbf\\x8a\\xd7U\\x0f\\xcc\\x93\\x92\\xc5\\x01\\xf8@\\xb8\\xdd\\x8a\\x86\\xa3\\x07\\x13w\\xaa\\xa9\\x08\\x04\\xdc\\x8a~GVOB\\xbcq\\xa7\\xf6D\\xa4\\xbb\\xc5\\xb7%\\xb7Y\\xa0\\xed\\xceY>\\x0f\\x96-y\\xcd\\x02cK\\xf0Z2\\x9c\\x80[\\x0f\\xd1j\\xc9p\\x00T\\x0f\\xbd\\xed\\xdd\\xa0d\\xbc\\x92\\x12\\xadD\\xdc)6\\xf7w1!U\\x9a+\\x01\\xc3T|$/\\xf9>\\xd8@VHl@\\xb1\\xd6\\xbe\\xaf\\xdd\\xbe\\x929\\x8f\\xf8\\xe9n\\xb7\\xce\\x9an\\x80\\xb3\\xa2U\\x9b\\x17\\x15c\\x7f\\x17\\x02\\x95\\xd9w\\xf0\\x85y\\xac\\x91\\xeb\\xf5k\\xf1\\xb7\\xd3\\x0er'\\xacS\\xc9\\xe7<\\x1fE\\xdd\\xe2\\xaen\\xbd\\xe8\\xdah\\xa3>\\x9b\\x04\\xf7'\\xb8?\\xc1\\xfd\t\\xeeOp\\x7f\\x82\\xfb\\x13\\xdc\\x9f\\xe0\\xfe\\x96\\x9a\\x04\\xf7'\\xb8_Q\\x82\\xfb\\x13\\xdc\\x9f\\xe0~A\t\\xeeOp\\xffP\\xda\t\\xeeOp\\x7f\\x82\\xfb;N\\xff\\xa4p\\xbf\\x04\\xd2,X\\x7f\\x0b\\x1e\\xa3\\xe0\\x9e\t\\xf4\\x1bl\\x10\\x94_\\xfd\\xae\\x98u\\xa8\\x9d\\x13\\xe9\\x0fL8\\xa0\\xce\\xca\\xe7\\n\\xa4\\x1c\\xa2\\x7f\\xa4\\xcb\\x95\\xae\\xfb\\xdb\\x03\\xfe\\xbd+&\\x9b\\xbc\\x16\\xf8\\x8b>\\xaf\\xf7\\xc4!\\x8f\\xb8c\\xe1\\xba\\xef\\xe8o$\\xe6,\\x19\\x8d3v\\x0cd%o<\\x89\\x7f~\\x8d\\xb7j\\xacc\\x07\\x96\\xf1\\x83\\xe0w\\xcc\\xefv,\\x07W\\xcf\\x90\\x81\\xa0\\\\B1\\xcb)~\\xd6\\xcbg\\xf6\t \\xd6f\\xf0\\xf8'\\xe4<!\\xe7\t9O\\xc8yB\\xce\\x13r\\x9e\\x90\\xf3\\x84\\x9c'\\xe4<!\\xe7\t9\\x87\\x84\\x9c+J\\xc8yB\\xce\\x13r\\x9e\\x90\\xf3\\x84\\x9c'\\xe4<!\\xe7\\x03\\xe4\\x1c}\\xdc\\xbe\\x92\\xc9\\xae\\xc6A\\xaa\\xbb\\xaa,/\\x88\\xa1\\xe0\\xd8[\\xe9[V]o\\x98d\\xc3u\\x03\\xfb\\x92\\xd7\\x0d+\\xda\\xec\\xf8\\xe2\\x87q\\xc4\\xb9,\\xac\\x82\\x99\\xdb\\x1c\\xe6\\x02\\xcb\\x15\\x9cn3\\x91\\x11\\xae\\xca\\x99y\\xf8\\x0c@\\x00S\\xe6\\x99\\x94y& Z\\xdf`8K\\xc8\\xbe\\xd9\\xdc\\x9f7\\xf3\\x8c\\xd75\\xd0\\x83\\xe8\\xe9\\x9e\\x81\\xd3\\xd6K\\x879\\x06\\xe0\\x15\\xab\\xdbG\\xdbM\\xedt$p\\x95b\\xb5\\xd9\\xaf\\x85\\xb3N.wm\\x95)\\xd9\\x88D\\xd9\\x8a\\xa1S3\\x10\\x1d\\x10\\xe1\\x1e(\\xd3\\x03\\x11\\xe7\\xbe#\\xe7FEn\\x1b\\x98|\\x10\\xb5\\xe0\\xbdy\\xd0c<\\xf0\\xa2\\x98\\xbcGm\\x04G;\\xc1\\xeaW\\xe9~\\xb34\\x17\\xbc\\x08\\x91\\xa4\\x19=-\\x92\\xec\\xfe\\x16I\\xf3y]$\\xcd\\xe6{\\x91d\\xf5\\xc0H\\xc2\\x0e(D?\\x8c\\xa4\\xb9\\xbc1\\x92\\xdc>\\x19IQ\\x9e\\x19I\\xd1\\xfe\\x19\\\\v\\x87\\x9d\\x98C\\x16/\\x8d\\xa4h_\\x0d\\xcaMj2\\x8b\\xc7F\\xd2\\x14\\xbf\\x0d\\xcap\\xbf\\x83\\x0c\\xf5\\xdeH\\x8a\\xf1\\xe1\\xa0\\x8c\\xac~\\x1dI\\x13\\xbd;\\x9a\t\\xc1\\xc7\\x83\\x96$\\xfb}$M\\xf0\\xfeH\\x9a\\xe0\\x03\\xb2-tKSg\\xf3\\x0eI\\x9a\\xd7G$i6O\\x91$\\xbf\\xbfH\\xd2l^#I6\\xdf\\x91\\xa4)\\x1e$\\\\W ^%I\\xc8\\xd1\\xd2\\xa61c=L(3\\x9b\\xd7IR\\xa4\\xefI\\x12\\xe2\\x81\\x92\\xe41)\\xac\\xde(I\\x14\\x8b#\\xd23\\x85+S\\xed\\xad\\x1a\\xf8\\xa7$\\xf9Z3\\xcdW5b'|W\\x88\\xc7J\\xd2\\x0c~+I\\xd3\\xbcW#v\\xc2\\xa2A\\x8d\\x87\\x89\\x9e\\xacqM#\\xcf\\x96\\xa4)\\xfe-IN\\xc7\\x8f$\\x8b\\xafK\\x92\\xd7\\xe3%\t\\x81\\xda\\x05\\xd1\\xbd_\\x92l|Fh\\xe6D\\x7f\\x98$\\xbap|\\xbe1I>)x\\xfdd\\x92\\x02\\xbce\\x92\\x10\\xe9L\\xf5\\x9cIr\\xfa\\xcf$\\xd9\\xbdh\\xed\\xefV_\\x9a$\\x87\\xd4\\xa8~5I>\\xef\\x9a\\xa4\\xa1\\x8fM\\xd2\\x04O\\x9b$\\x82\\xbfM\\x12\\xdd\\xeb&\\xc9\\xeb{\\x93d\\x93\\xe2\\xd8\\x0f'\\xc9\\xfa\\xbd\\xcf''i\\x9agN\\x92\\xa3\\xc9\\xa3\\xbfO\\xf2\\xd5\\x8d\\xb8\\x0d|w\\x92\\xa6x\\xf0\\xc65\\x8c<z\\x92&\\xf9\\xf5\\xc6M\\xee\\xfb\\xf9$\\xcd\\xe9\\xed\\x93d\\xf5\\xf9I\\x1a\\xba[$\\x0d\\xfd\\x7f\\x92\\xe6\\xf1\\x02J\\x9a\\xcd\\x17(i^\\x8f\\xa0$\\x9a_P\\x92\\xd7;(\\x89\\xe8#\\xec}\\xec\\xf4\\x14J\\xc2\\xf6\\x10\\xd4\\xaf$\\x89\\xea]r\\xfb\\x0e\\x15/\\x9a\\x07Q}\\xec\\xf7#JB:4\\xa7OQ\\xd2$\\xcf\\xe2\\x88\\xdb\\xc8\\xd3(i>\\x7f\\xa3Q\\xcd,^GIS\\xe7\\x88\\xd7\\x03\\xa9\\xd8y\\xfc\\x90\\x92\\x86\\xfb\\x95\\xed6\\x8f$\\xd79h\\xe2\\xcd\\x9e\\x1e/u\\xcb\\xa7\\xf77\\xec\\xb2\\x0f\\xd2*}\\xeb\\xa2n\\xca\\x8a\\xad\\xc1t$h\\x95\\xd7{\\xc0\\x04{\\x87J\t\\xc1xjJ\\xbbT\\xbaO\\xe8\\xde\\xcc\\xf4\\xc4TzbJ\\x97\\xb0\\x8f\\xa1\\xac\\xd2p\\xe4\\x95=%\\x98\\x17p\\xf9\\xf1\\xe4u\\xe7\\xdbS\\x1a\\xa8\\x86[!\\xeb\\xbeQ\\xb5*+\\xf9\\xa1\\xd0\\x9c:~@+\\xad+\\xfd$\\xb5\\xd9\\xcd^\\xdf\\xf4\\x97\\xa7\\xe5\\xb6k\\x14\\xaa\\xb7*\\xb6c\\xe2\\xd8\\xfe*\\xabZ\\xc9\\xdav\\xd8^\\x1f\\xc5\\xe4\\x1a\\xee\\xafR\\x1d\\xd1\\xdc\\x9e\\x117\\xa2d9\\xc5/\\xf2F\\xd4>\\xdc!Y\\x8bb\\x8e@\\x0dR\\x87\\xf7\\x91\\x1d\\xde\\xdb;\\xcc\\x97\\xb2~\\xbbOn\\x91\\x02WU\\x0d\\xd6\\xfa\\xf2\\xf8\\xd5k\\xa5\\x91\\x9d\\x12\\xeaeq\\x94\\xae\\xedpQ\\x0d^ZQ!\\x17w\\xec\\xc5u\\xc6\\x9b8\\x91L\\x87^\\x9a\\x1au\\xe2\\x89;\\x99\\xa5Y\\xe4\\xe8\\x13\\xf7\\xd6?_\\x04\\n\\x1a\\x8325\\n\\xa5\\xc7\\xaaK\\x189\\x90uT$J\\x8f\\x875*e\\x8e\\xb8\\x94~M\\xe5(2e\\xae\\xd8\\x14Wt\\n\\xf22\\x12Xw\\xe0\\xb8\\xe4\\x93\\x8a\\xe3\\xb4\\x14\\x94=^:\\x1d\\xa5\\x99\\x88R\\x12\\x92\\x8eRU\\xefzJM\\x7f\\x96\\x0cG\\x83\\x92\\xe1()\\x19\\x8e?\\xab\\xe1\\xa8\\x86\\xb4\\xff\\xb8\\xb7\\xd30q\\x9aR&\\x97'(\\x1b\\xe3\\x9dG\\xb2i4\\xd5&\\x1a\\xdaB$]\\xd2\\xa4K\\xf5\\xd3\\x03\\xbb\\xd2\\xa5zZ\\xd0\\x96\\xe8o\\xbaT\\xdf\\xc2\\xde\\xe9R}d@\\x15\\xa20f\\x0c\\x9b\\x9a7`j\\xb6P)\\x7f\\x90\\xd4l\\xe1Q\\xe9R}\\xbaT\\x1f\\x10\\xa8\\x94.\\xd5+A\\x9b\\x1c\\xa7\\x04\\x1dQ\\xee\\x99\\xa7K\\xf5\\x06\\xa5K\\xf5\\x90.\\xd5\\x87\\xdc_\\xf7\\x7f\\xe3\\x0b\\xe0\\x99\\x16\\xba\\x93.\\xd5+\\x9a3\\xcc&]\\xaaO\\x97\\xea\\xfb\\\\h!1\\x84`\\x98t\\xa9>>\\xbc%~t\\xbd!-\\xbe`\\x96\\xd1\\xa5\\xfa\\x9e\\xd5;\\x04\\xf2\\xb1K\\xf6\\xa3\\xeb\\x98\\xa0\\x1cu\\xc2#f0\\xbb2\\x1f\\xe0\\xfa\\x99n\\xe0\\xd3q\\xbft\\x95>]\\xa5OW\\xe9u\\x13\\x10\\xdd\\x10\\xef\\xa6\\x9c\\xcfIisQ\\xa2\\x0e\\xcaa'\\x1c\\x1e\\x86X\\xe7\\x86nC\\x84scr\\xc4\\xc7\\x1d\\x87zXB)\\\\\\x0e\\xdf\\xe1\\xb7q\\xb7\\xef=1&\\xe0\\xd2\\x7f\\x92\\x9cA\\x1d0Y5K\\xf2\\xc4\\x9c\\xc0\\xbc\\xcd$\\xablI\\xbekx\\xf3\\xa9oIh,\\nLV\\xe5#v\\x96\\x98\\x14\\x88W\\xeb#>\\x8e\\xd8\\x14\\x88V\\xf6#6\\xd8\\xd3\\xa7\\xa3\\x8f\\xe6Q\\xfc\\x92\\\\\\xb1*`\\x8bWqxT%E.\\xf1&%\\xd8H\t6R\\x82\\x0d\\xaf\\xdf\\x16\\xe5\\x96\\x12l\\xc4zz5\\x13\\x82\\xbf\\x17-I\\xf6\\x01K\\x9a\\xe0\t\\x964\\xc1\\x1fl[\\xe8\\x96\\xa6\\xce\\xe6)\\x964\\xaf\\xbfX\\xd2l^cI~\\xdf\\xb1\\xa4\\xd9<\\xc8\\x92R\\x82\\x0d\\x8b\\x07ZR\\xa4\\x1fZRJ\\xb01\\xd9o=b\\x97\\x12l\\xa4\\x04\\x1b)\\xc1\\x86\\xdfg.)\\xc0s.)%\\xd8\\x10\\xe4\\xf3\\xb4KJ\t6\\x04\\xa5\\x04\\x1b\\xc3?N\\xf1\\xe6\\x8fkH\t6R\\x82\\x0dj\\x8c\\x80$o\\xa4\\x80$b\\xbc@\\xef\\xe3\\x94`C\\xd0\\x9c\\xf1\\x05\\x92&E\\x19\\x8c\\xb8\\xa5\\x04\\x1bw\\x97`\\xa3\\xefj2>r\\x1d\\x85\\xfa\\xbe\\xb6\\x7f\\xcb\\x9b+\\xe5\\xdd0\\xd2l\\x0c|XZ\\xbd\\x98l\\x0c\\xcdr\\x85\\x00\\xe7\\x83\\xf4\\x1ax\\x8bk4\\x8ab\\xfcDA\\xba%\\xd9Q\\xba%))\\xdd\\x92\\xfc\\xa5\\xdf\\x92\\x9c|?\\x92x3\\xf2\\xd3\\xee\\xb2\\xca\\xd6\\xbd\\x94A\\xc1\\x01\\x04{\\xc5\\xe3<\\xbd<<\\xc1E7\\x9bs.]\\x92\\xa49\\xde$\\xd8?\\x92Q\\xba$\\x99.I\\x869\\xc5\\xd0\\xf3\\xfel\\xae\\xafy\\x9d^\\xb3\\xb9\\xbb\\xfc\\x8e\\xae\\xd9\\\\\\\\\\xe9\\x92d\\xba$\\x19\\xe0lJ\\x97$\\x11\\xf7\\xd1\\x14\\xc7\\x11\\xe5\\xde`\\xba$iP\\xba$\t\\xe9\\x92d\\xc8}D\\xff7>'\\xcc4\\xf7K\\xba$\\xa9hNWI\\xba$\\x99.I\\xf6\\xb9\\xd0\\xdc\\x1a\\x04\\x87F\\xba$\\x19\\xef\\xa2\\x88\\x1f]\\xaf[\\xc2\\xe7\\x90\\x98\\xed\\xe5a\\x1cf\\xf5\\x01zt(\\x11ab\\xc0\\x89\\x0b\\n\\x9e8-\\xe3Z\\x07)\\xa6\\xd4k\tUL\\xa8bB\\x15\\x13\\xaa\\x08\tUL\\xa8bB\\x15\\x13\\xaa\\x98P\\xc5\\x84*\\nJ\\xa8\\\"$TQPB\\x15\\x13\\xaa\\x98P\\xc5\\x84*&T1\\xa1\\x8a]\\x90\\xf2\\xdd\\x00\\x8b\\x133\\x1d\\xe1|\\xac\\xf0b\\xb9\\xdd\\xe6\\xcdVA\\x8c?\\x8alm'\\x15\\xbb\\xc8\\xbf\\x90\\xb1\\xc4kv8\\xdf\\x19E\\xc0v\\xa6\\x19\\x9dg\\x86q\\x9af\\xf5\\xbc\\xc3:y\\\\\\xd6\\\\\\x81\\xacA\\x9e\\xeb\\x1b\\x19\\x9f\\xacw\\xbf3\t\\xe8\\xd4M\\xb5_\\xf1A\\xb8f\\x07\\xb8\\xa8\\xca\\xad\\xf8\\xee$\\x13\\xaaq\\xad\\x0b\\xb5\\x0b!\\xdb\\xedX\\xb1~\\xc4\\x7f_\\xfc\\x99\\x1d\\xf8\\xff\\xeb\\xb91\\xfcIT}$\\xaa\\\\,\\x1e?\\xee\\xcb\\xaf(\\x980\\xf5\\xb9\\xfc^\\xb7\\xffz[\\xac\\xc9\\x02Ta\\x9d\\xf9\\xda#\\xbf\\xde\\xe4Q\\xd0\\xf6x\\xee\\xe55\\x18\\x8dR\\x85\\x15Lp\\xc7\\xb9\\xa7\\xba\\xc9\\x8e'\\x9cA\\xafr\\xabI \\xe1]\\xdd\\xd0q\\x9c\\xbd\\xa4\\x0b\\x965\\xfbj\\x9c\\x9b\\x06\\xeb\\x8d\\xa4Q\\x9f\\xcc\\x02\\xae\\x06\\xe9w6u\\x95-p\\xb3a\\xdd2\\xef.}\\xa3\\x0dv\\x1d\\xd4\\xff\\xa2z\\xaao6pv\\xaa\\xf7\\\\/+hn\\xafB\\xef\\x0bvY6|\\x9c\\xc5w\\xc7\\xaf^\\xf7x\\xdd\\xb0*\\xe7;\\xee\\x10\\x02VP\\xa7\\x9a\\x0cp\\x95\\x15\\xeb\\xfa*\\xbb&\\x1d\\xe7\\x8f_\\xbdnGC\\xd9\\x0c2\\x15\\x9c8\\xe3\\xaaf\\xadY\\xc3\\xaam^0`\\xc5\\xaa\\xe4\\x1bJ\\xad`;q\\xc67q\\xda\\x8b\\xb2g\\xe8\\xac\\xae\\xb2\\xa2`\\x1b\\xf9y\\xb6\\xbafM\\xad8\\xf3\\xde[\\xa6\\xf1\\xc0G\\xd1_\\x10\\xc6\\xd3~-\\x1e`t\\x9e\\x15\\xe6\\x95\\x0fl\\xf8Y\\xb1\\xdf\\x9a3\\xe5\\x1b8={y\\xf6\\xf6\\xfc\\xd3\\xfb\\xe3\\xf7\\xc7g\\xc7/\\xdf\\x1d\\xff?o\\xdf\\x9c\\x7fz\\x7fz\\xf2\\xf6\\xf5\\xf1w\\xc7o\\xdf \\xdf\\xf2/\\x91?\\x9f}\\xfc\\x8f\\x0f'o\\xdf#\\xbf\\xf4\\xfe\\xacl\\xef\\xe7\\xc4\\x8a\\xc5\\xd5\\x02V\\xed\\xb2\\xaa9\\xd8\\xa4b|\\\"\\xdf\\x85\\xa5\\xaa\\x8c \\x17\\x10\\xa2\\xc2 \\xde\\x074\\xf0\\xf0(UWj\\xe8\\xde\\xdb\\xa3!\\xa0.3\\x9c\\x0e\\xfe\\x88\\xf5\\xd8\\xfc\\xeb]u\\xa67#I\\x9d\\x1a0\\xc4\\xb3:\\xc8\\xbcrx\\xa7\\x86\\xbb3\\x8cg\\x89\\xb6\\x02\\xba\\x84\\xadb\\x13n\\x97\\xd1\\xb0y\\x0bD4H>1{61\\xccj\\xd0\\xe4P\\xce\\x0eT\\xd4v\\x91'\\xd8\\xaa\\x18\\x94\\x8f2/\\x06<Pc\\xc3\\xf3\\xcd\\xd8\\xea\\x001n\\x9b\\xecp\\xbecU^\\xfa\\xec\\x05\\xcb\\xa5'\\xfbt\\x15\\xbcA\\xf2V\\xae\\xa6}\\xdd\\x88\\x0b`\\xb0\\x14^\\x0c\\xe4\\xfe\\x9d\\xde\\x15\\x14lo\\xf6J\\xea\\xf5o\\xf8\\xeet\\xa1|4\\xf0\\xfe\\xc3\\xd9\\xdb\\xe7\\xfd\\x9a6\\xe5e\\xbe\\xe2##\\xc0\\x80\\x16N\\x178\\x85\\xc1\\xad.\\xb7\\xbd\\x93\\xba\\xca\\x19*g\\\"nX\\xf7\\xec1\\xe3\\x0e\\xa1h\\xf9\\xc5~\\xa3\\xa6,_\\x85\\x99Zvj\\x05\\xc9)\\xa1\\x92\\x9c*n5\\xdbe\\x95\\xd8\\\\\\x8av\\x07\\x95\\xdd\\x91\\xf7\\xd5\\x84\\xb0D\\x1f\\x96\\x0c\\x9e\\x81\\xbe\\xc5\\xd5k\\x84p\\xce\\xb0\\xba\\xc9\\x96\\x9b\\xbc\\xd6\\xfe\\xc5\\xcc\\xd4\\nK\\xd6\\xdc2V@s[\\xca&\\xd5\\x0b\\x97\\xc19\\xdc\\x01\\xee\\xca\\xde\\xecM\\x949\\x15\\xf4H9\\x8fu\\x98E)Ol\\xf4$E<V\\xc26\\x05<Tr\\xb3)\\xde\\x80\\xed\\xd9\\xa6l\\xad\\x8a\\xd6\\x95\\xd2\\xbb'\\xd4)\\xcau\\xaab\\xf5)U\\x8aB\\xc5\\xa7\\x8b\\xb9\\xacz\\x06:en\\x1bs@\\xb1S\\xa6\\xa7e\\x0d\\x1f\\xeby\\xb9\\xee4\\x05y-\\x87\\xad\\x07c\\xcew\\xe7\\x95\\xc5\\x14\\xb5\\x90\\x8e\\xa1c\\xfe\\xe9\\x18\\x1a|\\x0c\\xc5T\\xcb/\\xe9\\x00\\xaa\\xca\\xa5\\xf3g:\\x7f\\x12z\\x94\\xce\\x9f\\xe9\\xfc\\xd9\\xd1\\x14\\x13\tf0\\x93\\x80`*a\\xdf\\xdc\\xcb\\xf9\\xb3w\\x10$i\\x06\\xfc\\xa4\\x87\\x19Q\\xfd\\xa41\\xfa\\x8fr\\xfav\\xde\\xd1\\x91\\x927^\\xc8i\\x13\\xc5XL7\\x99XB\\xa8\\x87\\xae\\xda\\xa8\\x17\\\"\\xf4\\xa2\\xe7\\xb3\\\"\\xce<rYi\\xf5&_\\x89=I\\x04\\xd0\\xf6\\xb5\\x80\\xa8\\x11\\xb3be\\xe0\\xb9b\\xf83\\xbd\\x03$\\x0b\\xab\\x84\\xfaY\\xa3\\xec\\x00\\xde\\x03\\xc9\\xe96\\xab\\xbb\\x98\\xaaA\\xebH\\x1bGz>(=\\x1f\\x04\\xe9\\xf9 [\\xce\\x1c\\x9bj\\xa3\\xbb\\xa3G,lys\\x10\\xc5\\xda\\xfeiJ\\xf6\\x9cV\\x9d[\\xf3\\xe7\\x10\\xef\\n\\xa9\\x03C\\x8c\\x96\t5O\\xfbMB\\xcftx_ \\xce\\x18j\\xac\\x0f{8M!\\xb7\\xe1\t\\xf3\\xde\\xe6\\x01\\xef\\x83\\x1e\\xf3\\xdd\\xea\\x819o\\xf6\\x80\\xef)\\x8f&\\xfe\\x86\\x0f\\xccx\\xcb\\x07\\xbc7} \\xf6\\xb6\\x0fL\\xb9\\xf1\\x83I\\xcc\\xff|G\\xf4\\xcd\\x1f\\x84\\x97\\xf7\\xe9\\x8e)7\\x80\\x10v\\xceg;\\xe6\\xbd\t\\x04\\xd3o\\x03\\xc1\\xfc7\\x82`\\xda\\xad \\x98v3\\x08_\\xa2h#g\\xbb/\\x04\\xb3\\xdf\\x19\\x829\\xef\\x0d\\x01\\xe9\\xee\\x10\\xccy\\x7f\\x08<\\xcfnL\\xb9G\\x84\\xadq\\xcb\\x93\\x1b\\x0d\\xe5v\\x11L\\xbea\\x840\\xc4\\x1f\\xdb\\x88\\xbcw\\x04\\xf6\\x876\\xe2\\xd0\\x0e \\xed\\xff\\x91w\\x910\\xb5\\xe7x^\\xc3\\xdd\\x8ei\\xf7\\x92\\x06\\xcc\\\\\\x0fk\\xccp?\t\\xe6\\xbe\\xa3\\x04\\xc8=%\\x98~Wi\\xc0\\xadA\\x9f\\xd3\\x98r{\t|\\x97z\\xc0\\xfd\\x90\\x86\\xf7&\\x13X\\xf3\\xe1\\xd3o4\\xd9y\\x8c\\xa2\\xd3'\\xddn\\x82\\x00a\\xf8n9\\x81\\xb7\\xdf\\xde\\xdbN\\x10v\\xe3\t\\xd0\\xdc\\xe0\\x13o>\\x81\\xef\\xf6\\x13x\\x9f\\xca\\xf0=\\x94a\\x95\\x12\\xf56\\x14\\x10nD\\x81\\xe5\\x81\\x8c\t7\\xa3\\x80v;\\n\\x82nH\\x01\\xe5\\x96\\x14\\xd8\\xdf\\x98@\\xab\\xb7|\\xeb\\xbb5\\x05\\x93oN\\x81\\xab\\xa1\\x83\\xbf\\xcez\\x8b\\n&\\xde\\xa4\\x1a\\xb0\\xc2\\x1f\\xbd\\x98\\xf5n\\x15\\xcc|\\xbf\\n|\\xcf[`y\\xff\\xb1\\xa7-\\xe6\\xb9o\\x05s\\xde\\xb9\\x82\\xd9\\xef]\\x01\\xf9\\xee\\x15P\\xee_\\x01\\xfd\\x0e\\x16\\x10\\xefa\\x81\\xed)\\x0b\\xbcv\\xea\\xad\\x1d\\xff3\\x16\\xc4{Y@\\xbb\\x9b\\x05X7\\xe6\\xbc\\xa3\\x05S\\xefi\\x0dx\\xa1OW\\xccws\\x0bf\\xbd\\xbd\\x05\\x93\\xe7\\x83\\xf7\\x16\\x17\\x10nr\\xc1h#B\\xb0\\xdf\\xf6w\\xdc\\xd1\\x08}g\\xa3\\x91\\xc0\\xc9\\xf06\\x9aP\\xb2\\xd2\\x13=\\x97\\xa3\\xf8\\xdd`\\x88\\xb9\\x1c\\xe1\\x97\\xedu\\xabXS\\xe5\\xec&y\\xdd\\x92\\xd7-y\\xddf\\xf6\\xba\\xb9\\xfc^\\x01\\x9e7\\x8cM\\x94\\xf7mZ\\xae\\xb9\\x94bn\\x9a3j6GTJ1Gs8I\\xa0|$\\xa3\\x94b.\\xc4\\xb14\\xd1\\xa94\\xb3Ci\\x823i\\x82#\tQ\\x183\\xba\\x8c\\xe6u\\x17\\xcd\\xe6*\\xf2\\xbb\\x89fs\\x11\\xa5\\x14s)\\xc5\\\\\\x80+'\\xa5\\x98C\\x1c5S\\x9c4\\x94\\xack)\\xc5\\x9cA)\\xc5\\x1c\\xa4\\x14s!\\xd9\\xdc\\xfc\\xdf\\xf8\\x9c%\\xd3\\x1c%)\\xc5\\x9c\\xa29] )\\xc5\\\\J1\\xd7\\xe7Bse\\x10\\xdc\\x18)\\xc5\\\\\\xbc\\x93\\\"~t\\xbd\\xce\t\\x9fcb\\xfcp\\x05!\\xc5\\\\?\\x1e\\x9dz{\\xbb\\xef\\xf18~\\x83\\xb3.\\xb1\\xc7\\xbb\\x937\\xc2\\xfc\\x81\\x06\\xff'oD\\xf2F\\xfc\\xd3x#&f\\xa6\\xb4q\\x8a\\xf1I\\xc4x!z\\xb95\\xa0\\xa7l\\xf5e\\xc8\\x80T\\x9eh\\xbdx\\xdd\\x10q\\x05hB\\x96\\x0d@3mt\\xb5\\x8d\\xf3S\\xa0\\xd9)\\xd0\\xceI\\xb2\\xdf$re\\xdf\\x00W\\x7f\\xd5\\xcf!Y8\\xc0\\x91\\x89\\x03\\x1c\\xbd\\x95d\\xc9\\xc8\\x01\\xe4F\\xce\\x91\\x99\\x03\\xbcP\\xdb\\xbc\\x19:\\xc0\\x91\\xa5\\x03\\x80\\x92\\xa9\\x03\\xbc-\\x9e\\x90\\xb7c<\\xcdd\\x16\\x8fa\\xee\\x0e\\x08\\xcd\\xdfa\\xb6\\x1f\\xb92\\x17\\x9f\\xc8\\x03\\\\\\xd3e\\x98\\xd0\\x03\\x02\\x93z\\x80=\\xb1\\x078\\x93{\\x80-\\xc1\\x07\\x84'\\xf9\\x00k\\xa2\\x0f\\x983\\xd9\\x07\\xb84\\x8e]\\xdfX\\xd4*\\xf8V\\xb1o\\xd1MI\\x02\\x820Sw\\xea\\xd1D `M\\x06\\x02\\xee\\x84 0\\x7f'\\x89\\xc9A\\x10N\\xe3\\x1c(\\xc8G\\xae$!`I\\x14\\x02s'\\x0b\\x01\\xf7\\xde\\xe6\\xde\\xdd\\xdc\\x89C\\xc07\\\"\\xe0\\xbbRcK\\\"\\x023$\\x12\\x81\\x99\\x92\\x89\\x001\\xa1\\x08\\xf6\\x1d\\x9eT\\x04\\xac\\x89E \\xf2\\xcc\\xe3\\x9e\\xfaS\\x13]\\x0e\\xd8!\\xbb\\xd3\\xd4\\xd4\\x97\\x03v\\xcb\\xc3(\\xfd%\\x0cS`\\x82\\xb3\\xdb\\x13Sa\\x1a\\x9ctRL\\xe3O\\xfd\\xcc\\x98\\xc6\\x0f\\x13\\xd3c\\x9a\\xb5\\x9a\\xca\t\\xcf\\x91\t\t\\xa3\\xa0/\\x90\\x84Q$\\x8c\\xe2k\\xc4(\\xf0A\\xb7\\xa0\\x03Nlb\\x84J\\xc0\\xc7\\x93\\xd7\\xbaf\\xf5T\\x06\\xbcb\\xb5\\xf0\\xdd\\x8f\\xad\\xa3#\\x11PR\\xac6\\xfb\\xb5P\\xa4r\\xa1\\xeb\\xddSJE1\\xe3\\x1b\\xacf\\xec\\xd4\\x0c\\x0b2\\xfe1%\\xc9T\\\\~\\xa9\\x80\\xf4\\x9b8\\x92\\x80\\x9aD\\x03\\xcb\\xae\\x15\\xf08=\\xa9$\\xab\\xbdO\\xae#\\x18J\\xb1\\x81).\\x80\\xc1\\x99\\xee3\\xca\\xect\\xc3*\\x04\\xb33\\x18Zq\\x83+>x\\xc5\t\\xb0\\xd0\\x9b;\\x17\\xc8\\xe2\\xb3\\x08a\\x1a\\xd0\\x82pS0\\x88\\x15j\\xa1\\x82-\\xae3\\xc1|P\\x8b\\x07l\t\\x84[z\\xa5\\x11\\xbce*\\xe2\\xe2\\x9c?\\x18\\xea\\x12\\x8e\\xbb8\\x91\\x17\\x1f\\xf6\\xe2@_\\xa2\\xf0\\x17\\x17\\x0233\\x06\\x13\\x8d\\xfb:\\x90\\x18\\xefr\\xf7\\xaf\\xcd\\x99\\xf1\\x18?\\\"\\xe3\\xc2d\\xbc\\xa8\\xcc\\x9dt8\\x1e\\x9b!\\xa23~|\\xc6\\x8e\\xd0\\xdc\\x01F\\xe3\\xd9.}\\x1b\\xa6\\x1f\\xa9\\xf1\\x8e\\x12\\xf8\\xd0\\x1a7^3\\x0fb3\\x1ffCGmBp\\x1b\\x17r\\xe3\\x94\\xb0\\xe348\\x98M\\xe1Ib\\x11&\\xff\\xdd\\x1f\\xa2\\x19\\x13\\xc6J\\xb2\\xdd\\xe1\\x1c4C\\x1b4uSVlmZ\\xe5\\xed\\xda0\\x97\\xc3.\\xbb\\xcc\\x0b\\x01\\x1f\\x8d\\xd0\\x86\\xee\\xa7\\xf6|\\xd3}BG\\x16\\n\\xf6\\xa59\\xbff\\x87\\xc03\\xbc;b\\xfc\\xbf\\x87\\xebA\\xd7\\xa2Od\\xfc?\\xd5\\x95\\x84\\xacV\\x86\\xcaIv\\xc9>Jg\\xebB\\xfe>`\\xf27~\\x06\\x12\\xc59;.\\x00~\\xce\\xac\\x1b`\\xe2\\\"\\x80\\xc0)\\x16p\\xdc\\x18\\x91H\\xbb\\xe6\\x00\\xf9\\xc5pR\\n<*\\xab\\x18\\x14%l\\xcb\\x8a\\xe9\\x9b\\x1b\\xe6\\xe4i\\xca&\\xa3\\xde7\\xf3\\x03\\x1b#\\x05!\\xd8\\x0bi\\x88\\xff\\x90\\xb0\\x0e\\x9f\\x02\\xfa\\x12\\x89q\\xf7a\\xd8~SPB\\x93\\x9e\\x0b&\\xc3\\x95\\xcc\\x8f\\x965k\\xf8A\\xb5\\xd67`j\\xd8\\x17\\x1ay\\x130\\xdem^S\\xae<\\xcb*\\x8dSu\\xd9\\x8b\\xf4\\xca\\x0b\\xb8\\xfcx\\xf2\\xba;h\\xab\\x10\\xac\\x1an\\x85\\xac\\xfb&\\xf2\\xaa\\xac\\xe4\\x87\\\"<L\\xfb\\xd7u\\xd4\\xd6UVK#\\xdb\\xecf\\xafo\\xfa\\xcb\\xd3r\\xdb5\\n\\xbd_^\\xb1\\x1d\\x13\\xaa\\xe2UV\\xb5\\x92\\xb5\\xe5;\\xe8\\xf5QL\\xaeaP\\xa0\\x8e\\xd3\\xb2\\xe0\\x7fr~.7\\xe5\\xea\\xba\\x0f\\x00\\x04-\\xc8\\x04\\xf5%\\xa8/A}T\\xa8\\x8f\\x96\\x92x\\x84\\xf5\\xe9\\xeb\\x9dc\\xc8\\xcf\\x0e\\xc1\\x9dv\\x07\\xd9\\xd1\\xbc7\\x0f\\x9d\\xd4\\xa3&r\\xc0\\xc4\\x8f\\x95\\xa3\\xc3d\\xd0\\x11\\x12W\\xea\\xfd\\x9c\\x15\\xf9E\\xdf\\xe6\\x11\\xb3B\\xdc'UF\\x89\\xbc\\xe7)`\\x10^\\xb0UX\\xbc\\xe2#P\\xcd=\\x02\\xfe\\xbfPV\\xd0kQ\\xa7\\xbc\\xbd\\x92y\\x0eo\\xd4\\xdd\\x80S3\\x17\\x87)\\xa9\\xe7\\xf0rx\\x16\\xe2;\\xc6\\x7f\\xeek\\x01 T\\xc2_u\\xc5\\xa0\\xdc1\\x01\\xdb\\x8ca\\x95\\x81\\x90-\\x0c\\xb3\\xd5uQ\\xden\\xd8\\xfaR1l\\x19A\\xdd\\xb0\\x1dv\\x00S\\x15\\xf4\\xcf3\\xe6\\xe0Y\\xaaZ\\x95\\xdb\\xdd\\x865\\xc3z\\x1cSQAU\\xe6d\\xa4%\\xc16\\xb6\\x13Tw\\x13Q\\xc212\\x18\\x80$\\xe3UNC\\xfa\\xf0I>\\x01\\xd1\\x1b\\xe2w\\xaa\\xad\\x0e\\xc8\\xae\\x1b*\t\\x95\\x89\\xf7\\xf9\\xe4\\x7f\\x92\\xc7\\xc9\\x92\\x9a\\x1c\\xc5\\xc7$k>\\x89\\xdcC\\xfa\\xf3?+\\xd4\\xfd\\xf9\\xf5\\xbb\\x0f\\xa7F\\x05Az\\x0c\\x9c\\x06*\\xa6\\xcf\\x94\\x84\\xc8\\xca\\x8c\\x93l\\xe1Q\\xa0b\\x03\\x8a\\\\-\\xca\\x0d0\\x05\\xa7\\x9a\\x1e\\xa8\\xd9\\xc0\\xa2\\xdd\\x0cn\\x11j\\x0d\\x01hFJ\\xcd\\xa8\\xc1\\xa6\\xcd\\xe0\\xc3\\x8e\\x15\\x1d\\x8e\\x9cU\\xa6\\x04*\\x96\\xad\\xc5\\x89\\xb0\\xe6J1+\\xd6P\\xb1\\x15\\xcbo\\x98\\x06\\x9b\\xd1\\xea\\xe5`\\x0d\\x1b\\xb0d\\xbc\\x9eM\\xc9\\x975\\xe7\\xb4\\xca\\n~\\xd0\\xdb\\x94\\xc5%\\xab\\xda\\xb7Ju]e\\xa5\\xab2j\\x18TZVk\\xc6\\xd7\\xd4he\\xde^1u\\xdb\\x9b\\x99\\xd3M|\\xcf\\x04\\xef}\\xa1\\xfe\\x11\\xbaH?||\\xf3\\xf6\\xe3\\xf9\\xfb\\x0f\\xef\\xdfZ\\xd7\\xa6\\xfc\\xe4\\xd3{\\xf1\\xff\\xe8o\\xc3_\\xda\\x05\\xe7\\xe1n_g\\xb6\\x86=\\x87\\xbf\\xb3\\xaa\\xfcF\\x1e3\\xb9\\xd5\\xa5\\xc5\\xa1e\\xd7\\x1f\\xbfA\\xd3\\x9f\\xb7>\\x05\\xe5\\xc0X\\xb3M~#d\\x98\\x17\\xe2\\x9a\\xa9`s\\xa4\\xbc\\x1c\\xdc\\xb8^\\xe7\\xe2nw\\x0b\\x84\\x89\\x0f\\xa0\\x87\\x7f\\xb6\\xbe\\xd6\\x03\\xdc\\xf2Shm<h\\xd3k\\xc7\\xa8\\x15Ye6\\x81}\\xc9V\\x8d0m\\x8d\\x9a0\\xe6\\x8a7\\x0e\\xd6\\xb7\\xd1\\xe6\\xfd\\x95eQ\\xe2\\xa4\\xa3\\xe2\\xae\\xacbC\\xcaG\\x80\\x84\\xb8\\x9an\\x87\\xd3ew\\xcb[u\\x9fO&9\\x10\\xeb\\x07\\xcb\\x8b\\xa3\\xb7\\xc0_\\x8d\\xfeDo\\xae\\x96W'\\\"/\\xe8m\\xc0\\xf2W\\xe5nN\\xeb\\xa4\\xb7\\x06\\xb4\\xa9\\x82\\xfa\\xab\\xeb#\\xb1\\xdb\\xc8\\xe9\\xaa\\xd2E\\x0b\\xd9\\xe9\\xb9UK\\xbf\\x85Y\\xb1\\x800U?\\x05v\\xd5T\\xd9M{\\xb5\\xeb\\xc64\\xf6|\\x0d-w\\x19\\xb7\\xdc47UV/\\x9c\\xbc\\x86\\xec\\xb2bl\\x0d\\xfb\\x1d\\xb7\\x8b\\xf6\\x95\\xf4\\xde\\x19zZ0\\xc4\\xd7\\xbf\\xb2f\\xda]v\\x97\\xef\\xd8&/\\x98\\xbe\\x0c\\xcb\\x17\\xc97e\\xb1\\xd2J[/\\xa1C\\x1b\\xb0\\xa53W(\\x86\\xdbr\\xbd\\xdf\\xb0\\x9a\\x8fk\\x1bB&\\xe0\\x13\\x19\\xd4\\xa5[-\\xf6-\\x95\\x1dI\\xec\\xe3Lh\\xf5\\x9d@\\xc7J\\x8d\\x8eqm\\xce{\\xd3\\xaea1a\\x86\\x1f+eo|h\\xb5\\xddb\\xdeV\\x1e\\xadHt\\xac\\xec+q\\xb6U8X\\x81\\xd8\\xeasM#\\xfa\\xaaS\\x05\\xd0's\\xb3\\x1e\\x9f\\xc1Q\t\\x93\\xb9\\x81\\xca'\\xcb\\xb9\\xf7\\xe7d9'\\xcb9Y\\xce\\xa4E\\x9a,\\xe7d9'\\xcb9d\\x0fO\\x96\\xf3l\\x963\\xd5\\x04\\xd4N|>wF\\xf0j\\xac\\xb5F\\x02EG6\\x16b\\xae\\x0dc\\x1eD3\\xc5\\x8e ?P\\xac\\x861\\x0fV[\\xfa\\x03\\x1fT\\xd3\\x96\\xb3\\xbaN\\x9c\\xea\\xd5\\xa6\\xb81\\xa5MQ\\xd8\\xb8\\x80&+\\xea{P\\xd2N\\x05}'\\xcaYM51\\x92VkQ\\xd5(\\xed\\xbdn4\\xb0)q\\\"\\xda4\\xf2\\xa9\\xcd}\\xba\\xd2\\x8d\\x1b,\\xb4\\xe0s\\x11\\xcaT\\xb9I\\xc6lk\\xf6\\xb7=+V\\xa3d\\xc7\\x03\\xa6\\x94\\x17\\xb2\\xd5QZs\\xd45\\xac\\xb3&#r\\xef\\x85\\xea\\xf4x\\xb7\\xf1\\x1b\\x9c\\xdb \\xa7O\\xdd\\xd6\\xcc\\x87h\\xe1X/\\xc6H\\xf6<-\\\"\\x13a\\xbe\\x12\\x8d\\x83\\x82\\xadX]\\xab\\xa4\\xa6\\xfa\\xc2\\x83P)\\\"\\x12J\\x0f\\xb0\\xac\\xb2\\x0b\\x1f\\xac\\x8fL\\xbb[\\xffE\\x1b\\xb9\\xbb\\xce\\xd0|\\x9dm6\\xd2\\x9d\\xad\\x1c\\xc0\\xc2q\\xc4W)/\\xadu\\xb5N\\xca\\xdbkM.\\xb6\\xc4J\\xf8\\xe2s\\xed\\x18\\xd6yw\\x84_T\\xb7f\\xd4\\x18\\x91\\xc95\\xd3\\x8d\\xb1i?\\xe9\\xb2\\x96\\xffNO\\xd9\\xa6\\xa7l!=e\\x9b\\x9e\\xb2U\\xd4\\xa4\\xa7lg\\xca8\\x0e\\xd3\\xb3\\x8e\\xc3\\xfc\\x99\\xc7aZ\\xf6q\\x98\\x96\\x81\\x1c_\\xa2h#g\\xcbK\\x0e\\xb3\\xe7&\\x879\\xf3\\x93\\x03)G9\\xcc\\x99\\xa7\\x1c\\xd2S\\xb6X5\\x91\\xf9\\xcd!=e\\x1b\\x97\\xff|\\xc0,=e\\x9b\\x9e\\xb2%\\xf0HO\\xd9\\xf6)=e\\x9b\\x9e\\xb2%\\x7f\\xeb\\xcb\\xce\\x0e\\x933\\xb4Cz\\xca\\xb6!\\xe6p\\x87\\x99\\xf3\\xb8Cz\\xca6 \\xbf;\\x005\\xc7;P\\xf2\\xbc\\x03=\\xd7;\\x10\\xf3\\xbdCz\\xca\\x96\\x94\\x0b\\x1e\\xa6\\xe6\\x83\\x1f\\xf0JO\\xd9\\\"\\xcc\\xd2S\\xb6\\xfaK\\xd9\\xaf\\x94\\x98\\xadI\\xb75\\x0dN\\xe9\\xb6\\xe6/\\xec\\xb6\\xe60\\xdc\\xc3\\xe3\\xf4\\xd2\\xd75?z\\xd3\\xc6[\\x18\\xd9\\xb2\\xc6[\\xdcn\\xe9\\x0d\\xdb\\xf4\\x86mz\\xc36\\xbda\\x1b\\xe2Q\\x9a\\xe8M\\x9a\\xd9\\x934\\xc1\\x8b4\\xc1\\x83\\x84(\\x8c\\x19}E\\xf3\\xfa\\x89f\\xf3\\x11\\xf9\\xfdC\\xb3\\xf9\\x86\\xd2\\x1b\\xb6\\xe9\\x0d\\xdb\\x00\\x1fNz\\xc3\\x16\\xf1\\xd0L\\xf1\\xceP\\x9euMo\\xd8\\x1a\\x94\\xde\\xb0\\x85\\xf4\\x86m\\xc8s\\xb1\\xfeo|^\\x92i\\x1e\\x92\\xf4\\x86\\xad\\xa29}\\x1f\\xe9\\x0d\\xdb\\xf4\\x86m\\x9f\\x0b\\xcd\\x87A\\xf0_\\xa47l\\xe3\\xbd\\x13\\xf1\\xa3\\xeb\\xf5J\\xf8<\\x12\\xe9\\x0d[Hn\\x08M\\xc9\\x0d\\x91\\xdc\\x10\\x8a\\x92\\x1b\\xc2(\\x18\\xeex\\x90\\xe5\\xc6W|\\xd4\\x0d4\\xda\\x83\\xb5u\\x8cJ\\xc1\\xee\\xe3\\x04f\\xd5\\x00\\xd7j\\xffe\\xbe\\x8ei\\xcd\\xb8\\x011Y7\\xc0\\xe9|\\x87\\x19\\xb3o\\xc0\\xa4\\x0c\\x1c@\\x91\\xbd#\\x0b\\x07\\xcc\\x9b\\x89\\x03\\xee+\\x1b\\x07\\xdcEF\\x0e\\x08\\xce\\xca\\x01\\xf7\\x91\\x99\\x03\\xc6\\xd99\\x00\\xcd\\xd0\\x010)K\\x07\\x84/zo\\xc6\\x0e\\xf0d\\xed\\x00G\\xe6\\x0e ^\\x06\\xef\\xbeu\\xad\\xd7\\xc9\\x97\\xc3\\x87\\x8c\\xee\\xf0\\x92\\xb8&o6\\x0f\\xb8\\xabK\\xe3\\x92\\xec\\x8f\\xd7P3{\\x80m\\xeb\\x02\\xe7eP4\\xcb\\x07\\xb8\\xe6'x\\xfd\\x060w\\xc6\\x0f\\xc0\\xb3~\\x80#\\xf3\\x07\\xf8\\xba\\x10\\x91\\x01\\x04\\\\Y@\\xba\\n\\x83\\x1e\\x8f\\xb7\\xdf\\x07\\x1e\\x89uzf\\x90\\x01\\xc3r\\xe4\\xe7\\xf7$\\x0b\\x01,a\\x08\\x10\\xfa2W\\xe2\\x10\\xd7\\xcc\\x9b\\x9cz\\xcf\\xe0\\xd5&\\xe13\\xfe6S&>\\xb3\\x96\t\\xe9\\xf8 \\x9d\\xd4\\xa3\\x8e\\xc6\\xe9\\xa4\\x9eN\\xea_\\xcdI\\x1d\\x1ft\\xec\\xb4\\x0c\\x94\\xa7\\x1d\\x94\\x82\\xfcx\\xf2Zq\\xd2\\xef9\\xa8\\x7f\\x9a/\\xb9\\xbe\\xee\\xf6E\\xca3\\xae\\xd2\\xc0j5\\xc1\\xafL\\x0d\\xe2z\\xc0\\x15\\xc7\\x00\\\"\\x9enU\\x05\\x87\\xda\\x90\\x94\\x95\\x8b\\xfcn+\\xfaNc\\xcc\\x89\\xdfi\\x9b\\xfc\\xd2_gt\\x9e\\xff#\\x11\\x00\\xdf\\x99b^\\x14`*\\x0e@\\x18\\x0d\\x0f\\x120;\\x16p\\x8fh\\xc0\\x1d\\xe1\\x011\\x88\\xc0=a\\x02(*`\\xc3\\x05&#\\x03Q\\xca\\x81pj\\x07\\x02B\\xe0\\xc6\\x08\\xc2P\\x02\\xff\\x9a\\x9e\\x0d)\\xb8W\\xac\\x80\\x88\\x16\\xdc)^\\xe0~\\xee6\\x043p\\xa0\\x06.\\xdc\\xc0\\x81\\x1cx\\x0e\\xde\\x14\\xf4`\\n~\\x80\\xb23\\xd6\\xe0x\\xa0\\\\\\x18\\x82\\xb73\\x918\\x82\\x07I\\xb0c\t\\x9e\\x97\\xd3\\xd1v\\xda\\x10\\x85\\x89\\x98\\xc2\\x88\\x9b\\xce>:n\\x9b\\x1fW\\xb0 \\x0b\\x91\\xfd\\x8a\\x04\\x1cF|\\xc6\\x00\\x04\\xd8\\xa7\\xbe\\xbf\\xa5x.SI\\xf6Y\\xe8\\xe7\\xdbn/\\x18k\\x97\\x16\\x9e1\\xd3\\xa9$4\\xdf)\\xd2\\x8e\\xe1#\\xaf\\xda.H/\\xbc\\xa6\\x17^\\xd3\\x0b\\xaf\\xe9\\x85\\xd7\\x04\\x01&\\x080A\\x80\\x14\\x080\\xecyW\\xbd\\xcf\\x8eA@\\x17,\\xd7Z\\x87\t\\xa0K\\x00]\\x02\\xe8\\x12@\\x97\\x00\\xbaP\\xe5@\\x02\\xcc\\x12@\\x97\\x00\\xba\\x04\\xd0\\x8d>H\\x00]\\x02\\xe8\\x12@\\xf7\\xf3\\x00t\\x9dA0\\x88\\xa3\\xcf\\x8c9\\x99\\x90\\xba\\x84\\xd4%\\xa4.!u\t\\xa9\\x13\\x94\\x90\\xba\\xff\\x1f\\\"uj\\xa2\\x0c\\xae\\xd5Y\\x91\\xb3\\xd0ku#F\\xc4ku\\xef\\xd9\\x97\\xe6T\\xbd\\x8c\\xf6Q\\x1e\\x9e\\x83\\xc1;\\xb1\\x1d\\xea\\xe7\\xd5\\xce\\xd5\\x11|\\x88\\xe4Y\\x02\\x8f\\x07KJII\\xec\\x88\\x9ac\\x8b\\\"H\\x15\\xa2\\xbeM\\xd1\\xcd\\xe6\\x0f4\\x0d\\x95\\x14fR\\x98_\\xb7\\xc2\\xecT\\xd5\\xd0\\xa9!\\xcd.\\xb7\\x96t(;\\xa2\\xba\\x94/5\\xbe\\xec\\xbfa\\x18\\xac0\\x07o N\\xd0b\\xea\\xae\\x8a\\xeb\\x12\\xb3<\\xc6\\x99ZmB}Ik&\\xad\\x99\\xb4\\xe6\\xd7\\xa65\\x9dZ\\xab\\xf7\\xe2\\xac\\x9a\\xd9\\xf2\\xec\\xd7\\x9e\\x7f\\xb9B\\xd5\\xc9c\\x95\\xc6\\x91+8\\xdb\\xd4e\\xe8\\xdd\\x0f\\xc5\\x06]\\xf7az7\\xdc\\xcd<|\tw\\xa8\t\\xe7u7\\x87\\xc3\\x8c\\xbd%\\xab\\xf1;\\xcb\\xc3\\xcb\\x92\\xa2PG\\xb4\\x1a\\xebS\\xcc\\x92\\xc6\\x0f2{\\xabq\\xe8\\xb3A\\x1bv\\xf8\\x13\\xcd\\xea\\xcb\\xdeC\\xcd\\x92\\x08\\xb5\\\"\\xaf\\xd4\\xf5\\xea\\x0c}\\xba\\x19a1\\xc0\\xc1fy\\xc6\\xb9?\\x83\\\"^s\\xee1\\x98\\xe3Q\\xe7\\x1eC\\xf1\\xc0s\\x7fb4q\\xef<C\\x02\\x84\\xfbL\\x12 ,)\\x01\\xc2\t\\x10\\x0e\\x9f\\x82\\xc9RO\\x96\\xfa?\\xa5\\xa5\\xde \\x11\\x9c\\x14\\xb0\\x037\\x99\\x83p\\x8e\\xd7\\xed~\\x1eliw\\xa6\\xc0\\x04\\xb4!\\xa1\\x1b\\x92\\x92\\xceL:3\\xe9L\\xc4\\xdct\\xea\\xaa(`CW\\x1e\\x8dotk^\\xb3\\n\\x008\\xbaN\\x84c\\x1b\\xc6!1\\xc1\\x1a\t\\xd6H\\xb0F\\x825ZJ\\xb0F\\x94A\\x92`\\x0d\\x83Y\\x825$%\\x13=\\x99\\xe8\\xc9D\\xef~\\xa1\\xc3\\x1a\\x88u\\x1b\\x03i\\x18l\\x82\\xd0\\x8c\\x8fr\\x93\\x0e6\\xacU\\xf8\\xd9\\xe8M\\x8deYnXV\\x0c\\xf5I\\xbd_qs\\x03.6\\xd9\\xa5\\xe8J~\\xa1\\xed\\x03\t($\\xb4\\\"^\\xf7$U\\x98T\\xe1\\xd7\\xa6\\n1\\xb4b\\xa0\\x8b\\xa8P\\xc5\\x00\\xa4\\xd0j\\xc5\\x01V\\x1cQ\\xd0\\n\\xc5.\\x14\\xb3\\xf8Th\\xd5\\xf8ru\\x1d\\x0eX\\xe8cq\\x1c\\\\1Z\\xb3\\xee\\x88b}_i\\xdf\\xb6yx\\x94\\xeb\\xda\\xa3\\xca&{Q\\xb3\\x9e\\xd6\\x9c\\xa4$\\x93\\x924~\\xa1\\xd8\\x8b\\xb8f\\x01W\\x06\\x13\\xb3\\xf8\\x93~y\\xa2\\x95\\xd8\\x15\\x92:\\xfa\\xeb\\xd3h\\x03\\xbc1)\\xb2\\xa4\\xc8\\x92\\\"\\xfb\\x85(\\xb2\\x81N\\x89\\xd1e\\x11\\xc7\\xdf\\xd3.\\xe3\\xd1h\\xf2\\x9b\\xa9H\\xbc\\xf9p\\x06\\xdf\\x199\\x89\\xf0LDH\\xfe!$\\xebPP\\xae!\\x1c\\xe7\\x9c#\\xafP\\\\6!\\xaf\\xcc,9\\x84f\\xca\\x1ct\\xe7\\xf9\\x82f\\xcd\\x12D\\xcf\\x0dt\\xa7\\x19\\x81\\x8c\\xcaVe\\xbd-\\xebE\\xb6o\\xae\\x167O\\x97\\xac\\xc9\\x9e.^\\xae\\xd7\\x15\\xab\\xebW\\x87\\x86\\xd5g\\xe5\\xa9X+\\xc1V@&\\x99\\x9c\\xcb\\xa5\\xe6\\x00x\\xf0m\\xc2\\xd5\\x06\\xbb\\xd6P\\xa5\\xe4\\xe7P\\xedV\\x8a[\\xfb\\x86\\x83^.y\\xb1\\x12\\xa9ex\\xe7\\xbf\\xa9\\xd7\\xd7\\xf0\\xbb\\xc5\\xef\\xff\\xe8\\x16\\x87dzV\\x8a&E\\x8bcyh\\xc6\\x86\\x91\\x0f\\xeer\\x8a\\x08m\\x97WD\\xe2\\xeb\\xb9$\\xf4\\x8a\\xad\\xae\\xbe}vR\\xb1\\x8b\\xfcK\\xb0d\\x96\\xa2\\xf0\\xf9N\\x94\\xa6\\xce\\x93V\\xf1aU\\xdb;o~\\xcd;?|\\xdc#\\xa8\\xd7'Y\\x95i\\x0b\\x96\\xd0\\xcfm\\xf6\\xe5|\\xcb\\xb6\\xe5\\xf9\\xea*\\xab\\xb2U\\xc3*\\xea<\\xe8\\xd9c\\xcd\\x97\\xf3:\\xbf<\\xdf\\xe4\\xdb\\x9c\\x1aT6.\\xffwv\\xbe*\\xeb\\xe6|\\xc7*1#c\\x18\\xf1V\\xdc\\xb0*\\xbf8H^l\\xfd\\xec\\x0f\\x7fx\\xfa\\xbf\\xe6`U\\xb3\\xd5\\xee\\xd9\\x1f\\xfex\\xfd4\\x9cYo\\x96\\xc8\\x11\\xea\\xc1J;\\xfe'\\xc6\\x85\\xaf\\xcd\\x0c\\xe0\\x83\\xaa\\x1e\\xae\\xb2iDa\\x83\\xbc\\\\\\x89m\\xa2]@\\xc7o\\x82\\xe7z&Y\\x9c+m@\\x9d\\xed\\x0f\\xf1y\\xb9x\\xf6PV\\x8c!l\\xf6\\xd6Z\\x97\\x87*>.i,\\x15\\x82\\x80b\\xa52\\x94\\x06\\xe9\\xe0\\xc5?=\\xdfWTo\\xb7+\\xc2\\x03\\xe0%|\\xfa\\xf8\\xeeI\\xc5\\xear_\\xad\\x18\\x88\\xc7\\xf0\\xc5\\xa1K\\x86\\xcfpCY\\x07\\xd0H\\x11\\n\\xc9\\xa1\\xaf\\xf1\\xd5\\xac\\xca\\xb3M\\xfew\\xb6\\x1e\\xba\\xb6\\xc5#\\xe9\\xabr\\x03\\xcb\\xbdH\\xd4\\xa6<\\xc2\\x0b8\\xbb\\xcak\\xd5f\\xd8r\\x0b\\x88\\xdb\\xec\\xfc\\\\\\xa1_J\\x1br\\xe26\\xdd\\x83'\\x0f\\xa0U(\\x9c\\x07\\x13\\x0f\\xf9C\\xcd.\\x05\\x9c\\xa7l\\xbeO\\x1f\\xdf=\\xaca\\x97\\xf1\\x99\\xbe\\xaf\\x9b\\x01\\xa364fX\\x830\\x17\\xf7\\xfc\\x84\\xf0\\xb7}\\xb6\\x11\\x19\\x96\\xa4T\\x14[\\xd1\\xffG\\x19\\xb70\\x87E?\\xf3\\xca\\xac\\x0f\\xc3\\x7f~,\\xdb*\\x98\\xd5W\\xe5~\\xb3\\xe6f\\x0b\\xef\\xec\\x80\\xcf*+\\xe41E\\xac\\xf6a-\\x8f\\xf8A\\xeb\\x88\\x8bG\\xf8\\xe3\\x1f,\\x1e\\xf0\\xd9]\\x94\\x0d\\x9fTl\\xd7\\xb0\\xf5\\xe3nO\\xd3t\\\\\\xc0\\x8e\\x0b,_\\xb1#h\\x18W\\x11\\xfbz/\\x0eB\\xbb\\x8aq\\xa3.\\xdf\\xf0\\xb6\\xa8\\x97\\xf6\\x97y\\x91U\\x07\\xc86\\x1b\\xd1\\xdfa\\xc20}*?\\x0c\\xaba_vl\\xd5@\\xdepCl_3\\x9d\\x1aO\\x07\\xe4\\x94\\x17\\xf0\\xb28\\xb4\\xe7\\xd2#\\xa1\\x90>}|WK`z\\xc0\\x8d30\\x1e\\x8d\\xd2T\\xaf\\xae\\xd8\\x96\\xc1\\xe7\\xab\\xa6\\xd9}>\\x92\\xff_\\x7f\\x16\\x019E\\xa9~=\\x123\\x85\\xdb\\x88\\xa5\\x98\\xf9\\xa2\\xa7\\xfc\\x18\\xbb\\xdf\\x8d\\xc4\\xcd{8\\xaa\\x83U7\\xe2$\\x9d5\\xb0\\xcdv\\xb5\\x1cv\\xd1\\xd2\\xa6l#\\x1a\\x84\\x96U\\xc7\\xdf\\xacV\\xa7\\x8c\\xfa\\xf9H\\xfa\\xbf\\x81\\xe3\\x8b\\xaem|\\xb8vUy\\x93\\xaf\\xd9\\xbam>\\xffcV\\xd7\\xfb-[\\x8f\\xd2\\x96\\xfe\\x06^\\x16\\xf0\\xc3\\xd9\\xd9\t|\\xff\\xf6L\\xdb\\xef\\x9f>\\xbe\\x93K\\xe6\\x90\\xb3\\xcd\\x1a2\\xf8\\xebp\\xe2\\x9d\\x1dv\\xec\\xa7\\xbf\\xfe4`\\x06:\\xb6\\xa4\\xd0\\xa3,\\xb7\\x14!\\xbf]U\\xae\\xf7+\\x06Y\\x01\\xac\\xaa\\xcaj\\x98r\\xef7\\xf0r\\xb7\\xdb\\xe4\\xabL\\xf5\\xb9b|\\x8e\\x94\\xb7\\xd2\\xf2^e+\\xbe\\x16\\xcb\\xf2z\\xbfk\\xc37\\x96\\x19\\xb7\\xcbe\\xa3GM\\xf9\\xf4\\xf1\\x9d\\xa8\\xf7*\\xbb\\x11C\\xbd5f\\xe3ZN\\xc7L7\\x93\\xff\\xf7M\\x99s\\xeb\\x7f\\x98X\\x0fT\\xa5b\\x81U\\xec\\xa2\\xac\\xd8\\x91.\\xc6\\xb9eM\\xbe\\xcc7ys\\x80\\x82\\xb1\\xb5\\xc6\\x03\\x84\\x02\\xa8nFI<\\xb9\\x96i\\xa1\t\\xbe \\xf8\\nX\\xc0\\xa3O5\\xd3\\xf9\\xe8x\\x7fE\\xf0[\\xb6\\x95\\xdfl\\xb3\\\"\\xbb\\x1c\\xf7o\\x88t,\\x1e\\x0f\\xc7\\xf6}\\xd9\\x08\\x90)\\xaf\\xe1b_\\xac\\xe4\\\\\\xe5-Uk\\xbaC\\xbb\\x8c\\x08#L\\x98\\xa5\\x08\\xaa\\x1a\\x87\\x15\\xe9\\xe9\\x00\\x15\\xe3\\x1a\\x95I\\xbfP\\xde\\xe8\\n\\xc4\\xb1I\\xd8\\x05\\xed\\x0c_\\xb2\\xcb\\xbc\\x10\\x87\\xcf\\xdb\\xbc\\xb9\\x1a)\\xc8\\xc3\\x8e-\\xe4\\\\\\xcbvy\\xbdX\\x95\\xdb\\xb1\\xbe9\\x153\\xbdV\\xf9\\x1d\\x9b\\xab\\xac\\x18\\xaeWx\\xa4l\\x11\\x19\\xf5%\\x97\\xc6c\\xd8\\n\\xe8f9Z\\x90\\xa2\\x99\\xe2\\x12@\\xce\\x0f\\xa0\\\\\\xd1\\xcb`:\\xfd$'\\xd4l\\x9b\\x15M\\xbe\\xea\\x85\\x85\\x89\\xb9N\\xdc(i\\xb1r\\xa3\\x1d\\xf4G\\xbe\\x08\\x97\\x0c2^Y\\xbe6\\xb6\\xc1\\xd1\\xbe\\xa7\\xb6\\x90lY\\xde0\\xddp4\\x87\\xac%\\xf7^\\xaf\\xee\\xcf/\\x8b\\xc3g\\xbda\\xd6|\\xc9f\\xd52o*>\\xe9\\x1dm\\xd0\\xbaK\\xa4\\x854\\xd8\\xc9\\xdc}\\xa6\\xd8\\xb9\\x86\\x11\\nP\\xb6a96\\x00\\xccz\\xf4\\x9e\\xde\\x9b\\n'z\\xf2m\\xf2\\xa5h\\x98\\xd2{5\\xd4\\xfb\\x9d\\x88\\x03nJq4\\x7f\\xb2/\\xf8\\xff\\xf1\\xddA\\x8eY=\\x9e\\xe5\\xc3\\xcd\\xb0\\xbc\\x80}#\\x97\\xb5^:\\xb5\\x88\\xca\\xec2\\x1e\\x8aHU\\x11Q&M\\xb9\\xf6\\x1d\\x11^\\x8f\\x14\\xb4\\xc9\\xf1\\xed\\x97\\x8cO.x\\xfa\\\\\\xc4\\xbe\\x8a\\x95\\xa2\\x1a\\x96\\xb5\\x82\\xcb\\x0bx\\xfd\\xdb\\xdf\\x8e\\x94\\xf4we\t\\x17e\t/`\\xb1X\\x0c\\x03\\xd6xuYq\\x18\\xfe9+\\x0e\\x0b^\\xd1wU\\xb9}tQ\\x96\\x8f\\x87\\x1f,\\x16C\\x0d\\x9c_\\xc0#^\\xec\\x93h\\xd6Y\\xf9\\xe8\\xd7\\xbc\\xdcc$\\x9en\\\\\\xf6\\x1fX_\\x9fy\\xfa\\xfa\\xa7\\xec&\\x8b\\xea,\\xbc\\x10{=\\xe7\\x18\\xd8\\xb7\\xbc~\\xf4]Y.V\\x9b\\xac\\xae\\xd1\\xae\\xc9\\xaa\\xf9\\xa7\\xb2\\xc5\\xc6\\xe7\\xc3Zz}n;\\xfd\\xad\\xa7\\xd3'\\x87\\xe6\\xaa,F\\xdd\\x96\\xf5~W\\x96\\x8f\\x16\\x8b\\xc5\\xe3\\xf1`\\xca.?B~\\x11\\xc3,\\xc4@\\x91\\x02/p,\\x85\\xf0\\xe6\\xed\\xe9\\xeb\\x8f\\xc7'g\\x1f>>~>\\x92C7\\x110\\xd6\\x929\\xd6\\xfd\\xdf{\\xba\\xff}9\\xec\\xb9\\xe8\\xfa\\xf3\\x17\\xf0\\xeb\\xddr\\xf1]Y\\xfe\\xd7b\\xb1\\xf8\\xc7\\xf0\\x93\\xac8\\x1cq\\xb3\\x81\\x7f\\x97\\x15\\x87\\xddr\\xf1\\x9e\\xdd\\xa2\\x0d\\xcb/\\xc4w\\xff\\xe3\\x05\\x14\\xf9\\x06\\x0b\\x05\\x1dK\\x05F\\xd5!\\xdf\\x0c\\x1a9*\\xa2\\xea\\x95\\xed[|*\\xb6YU_e\\x9b\\xb3RN\\xd0\\x98F\\x19\\x7f9\\xbb\\x92\\x98f\\xabk\\xb4\\x91\\x07\\xcbC\\xb7\\x0dkM(\\x83\\x9e\\x0f\\x1a\t\\xe7\\x1b\\x9c\\xc9\\xec!\\xb2\\xcd>\\xe1\\xe7\\x92\\x85\\xf8\\x81\\x1b\\x1e\\x0f\\x95\\xcf\\xa2\\xdd\\xb9\\xdb\\x88\\x0f9\\xa6&\\xbbV\\xfd\\x15\\x9b\\x83\\xb6\\xabG\\xc7\\x9c\\xd6\\xa4\\x81\\xec\\xa2Q~$q\\xb2z\\xf8\\xe4\\xa1\\xc9L\\x19\\xf5\\xbaZi\\xc535\\xb7\\x1e\\\\\\x94\\xe5b\\x99U\\xa2\\xc1_\\x9e\\x1c\\x16\\x7f\\x7f \\xfb*\\xed\\xd4\\xa1\\xb1-\\xaa{\\xc0\\xbf\\xe2\\xaa\\xd8\\xf8\\xe1O\\xa7\\x1f\\xde\\x9b\\xff~\\xf1\\xe2\\xc5\\x8b\\xa1\\xb4\\xf97\\xddIN\\xda\\x03\\xe2\\x9a\\x8e\\xda\\x1c\\xa5\\xa5\\xbb\\xaf\\x99>\\xfd_\\xee7Yer\\x19\\x17\\xe6\\x1f\\xaeY\\xb7\\xb1\\x1dua\\xd3j\\x85\\x1c\\xa9\\xbd\\xb2w\\xfe36\\x1dq3\\x11>\\xff+\\xef\\xeag\\x15q\\xd3n\\xd3\\xa6\\xe0\\x16zA>\\x1f\\x19m\\xd9\\xea\\x9a\\xaf\\xc5\\xce\\xa4\\xbf\\xc87l\\xa8\\xdb\\xf4\\x8a=aU]\\x16\\xc8\\x94U'\\xeb\\x8b\\xbc\\xaa\\x9bs!i4\\x98Z}\\xc6\\x87Z\\x7f\\xf5\\xcc\\xadG\\x01\\x90\\xda\\x1e\\x88\\x1e?x\\x0e\\x0f\\xb0\\xb9\\xdb\\xef\\xcaB\\xb6\\xf9\\xc1\\xd1\\x98\\x8bh\\xed\\xfbl\\xcb9\\xfd\\x1f\\xd9\\xb4\\x7fA>\\xe3\\xad\\x1d|\\xe5j\\xf2\\xf1\\x8526\\xfbc)\\xc7\\\"\\xaf\\xe1\\x96m6\\xdf\\\\\\x17\\xe5m!V\\xd1\\x95\\xbc\\xff\\xb1\\xaf\\x9br;\\x9a\\x8a\\xfdIs4\\xb8k#gRw\\xa7AU\\xc8'Hq\t\\x99\\x9c\\x1e&\\xbb\\xcfb\\x9a\\xea\\x99rUn\\xd6*\\x1c\\xac\\xab]\\xa0\\x04j\\x86\\x81:\\xa3\\xab\tfr\\x12\\xac\\xdbY\\x05\\x8f\\xf8\\xba\\xd4\\x1d\\x1d\\x1d\\x0f5.\\xf1\\xd3_\\x7fz<\\x9a\\x80\\xf1\\xa3\\xdbg\\x8e\\x0d\\xb0\\xe8.g\\xf4t\\xf1\\xec\\xe9\\xb3\\xfa\\xc1h\\xd8\\xc0j\\xf7b\\x98\\x9b\\xd3\\xa1\\xaa\\\\\\xa9\\xaa\\x08\\xfa\\xba\\x8d\\x0f\\xdb\\x8bp|\\xa8\\x82Ct\\x8f\\x14\\x0cB\\xbe\\x8d\\xd7\\xa00\\xa0\\xe3|\\xe3;\\xc8\\xcc\\n\\x06\\xba\\xe0\\xc09\\x01\\xc1\\x19!A\\x07(8\t\\x16\\x9c\\x0f\\x18\\xf4A\\x83\\x91\\xe0\\xe0\\xdc\\xf0\\xa0\\x03 \\x9c\\x1b\\\"\\xb4\\x82\\x84\\x93a\\xc2\\x11\\xbf\\x0c\\x05\\n\\xe7\\x86\\n'\\x83\\x85\\xb3\\xc3\\x85\\x93\\x00\\xc3\\xf9!\\xc3\\x19A\\xc3\\xb9a\\xc3\\x19\\x81C\\nt8#xh\\x87\\x0f\\xa7\\x01\\x88#f\\x18\\xa0H\\x84\\x14\\xa7\\x82\\x8a#vc\\x901\\x1afD\\x81F\\xe7VL\\xbd\\xd5\\x8d\\xec\\xd2\\x91\\x80\\xe3Xqi\\x00r\\x009\\xba[03\\xec\\x88\\x01\\x8f\\xb3@\\x8f3\\x83\\x8fc\\xf8q2\\x00\\xd9\\xe3\\xd5\\x8c\\xc0\\xc8ip\\xa4\\x07\\xa3\\xb3B\\x92\\x04P\\x12EB\\x02\\x80I\\xbc\\xfc?\\xf0\\xbeG\\xc1\\x93\\xd4\\xce\\xfb JwO\\xbd0e\\x10P9>bO\\x04+=p\\xa5\\x0b\\xb0tC\\x96V\\xa9PaK?p9\\x86.'\\x81\\x97$\\xf82\\x04\\xc0$@\\x98\\xb8\\x94\\xc60\\xa6\\xe5;\\x1f\\x949\\x15\\xcc\\xb46\\xaf\\xf7\\xb7Y!\\xcd\\xd9A\\xcd\\x99a\\xcdy\\x81M\\x07\\xb49\\x067\\xc7\\xf0\\xe6\\\\\\x00\\xe7\\x8c\\x10\\xe7\\xdc '\\x15\\xe6$\\x00\\x9dd\\xa8\\x93\\x06v\\\"p'\\x06\\x89\\xd1A17\\xe4I\\x06=I\\xb0\\xe7\\xa8\\xf1sB\\x9f\\xb3\\x83\\x9fs\\xc2\\x9fs\\x02\\xa0\\xd3\\xc6\\xdb\\x0b\\x82\\xfaaPs\\xabP\\xd1\\x8e\\x1aW\\x14\\x87h1\\xa4_\\xf2\\xba\\x11\\x82U\\xbf\\xa8\\x12X\\x1a\\xa2A~\\xaa6\\x19Q?R\\xb4\\xfd\\xb3R\\x85\\x1aT\\xed\\xb6\\n\\x14\\xa5L\\xb9\\x8a\\x14\\xa5\\\\EH\\xae\\\"?\\x96O\\x08\\xe2\\x1f\\x81\\xf9\\xd8[\\xf5\\xba\\x9dh\\xf0\\xf0\\xb7.\\xb0\\xffG\\x11\\x0c\\xadX\\xbf:p\\x15\\x1b\\x8b\\xfb\\xa7\\xa0\\xde@\\x0c\\x7f6\\x04?\\x05\\xf5N@\\xedSPo\\x18R?\\x11\\xa7\\x9f\\x19\\xa5\\x9f\\x80\\xd1\\xcf\\x8d\\xd0\\xcf\\x86\\xcf\\xcf\\x8b\\xce\\xcf\\x86\\xcd\\xfb\\x91\\xf9\\xd9p\\xf9\\x14\\xd4\\x9b\\x82z\\xa7\\xa0\\xeb)\\xa8w\\x1a\\x8aN\\x89sMA\\xbd\\x06\\xa5\\xa0^HA\\xbd!\\xf1\\xb3\\xfeo|H\\xf84\\x1c<\\x05\\xf5*\\x9a\\x13\\xfbNA\\xbd)\\xa8\\xb7\\xcf\\x85\\x86o\\x13\\xd0\\xed\\x14\\xd4\\x1b\\x8fi\\xc7\\x8f\\xae\\x17\\xcf\\xf6\\xa1\\xd9\\xde\\xa0^\\x07\\xfeF\\xcf\\x98\\x84012%9\\x83}{ES\\xc8o\\x0cT\\x98B~\\x0d\\x9a\\x0b6\\xf4\\x01\\x87\\x91\\xd0\\xe1\\xdc\\xe0a\\n\\xf9\\x8d\\x07\\x12'C\\x89\\xb3\\x83\\x89\\x93\\xe0\\xc4\\xf9\\x01\\xc5\\x19!\\xc5\\xb9A\\xc5\\x19aE\\n\\xb08#\\xb4\\x98B~\\x15E\\x82\\x90)\\xe47\\x16\\x94L!\\xbf\\x92\\x9a\\x14\\xf2\\x8b\\xf6=\\n\\xbc\\xa4v\\xde\\x07`\\xa6\\x90\\xdf\\x14\\xf2\\x9bB~\\xe7\\x02<g\\x87<g\\x06=\\xe7\\x85=S\\xc8\\xaf\\x0f\\x02\\xa5\\x82\\xa0\\x04\\x18\\x94\\x0c\\x84\\xd2\\xa0\\xd0\\x14\\xf2\\x9bB~'\\x8d\\xb7\\x17\\\"\\xf5\\x83\\xa4\\xa10)-j\\xd2,\\xdeGH\\xeb\\x1e8\\xaa\\xc5\\x11\\x94\\x10X\\xbdlTe\\xdbp\\xcctg$\\x13\\x1eu{\\xe7\\xccc\\xab4Z\\x97\\xc1V\\x12\\n\\xa7\\xe2`\\xaa351P\\\"JF\\x11\\xb9x\\x9a\\xe2\t\\xbc\\xec)\\x8b\\xe3\\x98z\\xd3\\x17\\xcf\\xc3\\x16Ie\\x1c\\xca\\xb87\\x15\\x909F\t\\x13V\\x99\\x90Q\\xfc\\x7f\\x99\\x15\\xd7\\xed\\x1c~\\xc3\\x8ar\\xfb\\xe1\\xb6\\xd0o\\x98\\x10\\xa6\\xae?\\x99\\xf1\\xa8\\x17\\xaaHoF\\xeb\\xbf\t\\x85Z\\xde\\x16\\xe2\\xf1\\xae\\xacj\\xf2\\x15\\xdf\\xd3a\\xcd\\x1b\\xa6\\x02\\xf2\\xf5$_f\\x9b\\xac\\xf7ju\\xc0\\x9c\\x17\\xfcH\\x83\\x92m\\xfb\\x81\\xcc\\xd6O\\xed\\xa1\\xf9\\xaf\\xcb\\xbc\\xbb\\\\\\x90AS^\\xb3B\\x99\\x18\\xbd\\x8e\\x89\\x0d(+T\\x95\\xbd\\x13\\xc0\\xfb\\x0fgo\\x9f\\x0b\\xa3H\\xfe\\xa8,\\x90\\\\@\\x10\\xc7\\x85~\\xfe\\xac\\x85mz\\x9bH\\x9b\\xbbYS\\x9d_\\x16Y\\xb3\\xafX-\\x1e\\x9d\\xcc+i\\xd2^\\x96\\x97\\xa5P\\xdf\\x8b\\xf1\\xcck;\\xd4M\\x91\\xb6KuS\\xedW\\x9c]\\xb7\\x13\\x8a\\xfd\\xae\\xd0\\xbe cT\\xcbJmr\\xdd\\x93\\xf3\\xe3A\\x16\\xe8\\xe85+\\xc45\\x83\\x9e]\\xa5\\x19\\xea\\xe9\\\"$&\\xff\\xd6\\x9f\\x15\\x9d\\xa57\\xe4IU\\xee\\xe3\\x85\\xf1\\xa9\\xd0\\xda\\x8c\\xb0.\\x063\\xcc?eD\\x01\\xf3\\x9dr\\x81\\xf3H{\\xcd\\xf4\\xb5\\xc8\\xf7v\\xe4\\xd7\\xfb\\\"o\\x84\\xd7\\x03\\xf6YSn\\x1f\\xeb\\xa5\\xc1\\xbe\\xec\\xca\\x82\\x8d\\xe3\\xef\\xf3\\xa2a\\x97\\xacj\\xff\\xaa\\xf5M_\\x8f\\xd9\\x010\\xcd\\xb7\\xf7\\x9czy+\\xb1\\xb6\\xa7\\xbf\\xeb~\\x97\\x03^0\\xe9i28TY\\xae\\x0e*\\xcb\\xacf\\xe7\\xb2\\x1b\\xe2Ir(\\xab5?\\x9f\\x94\\xc0\\xf8\\xe9\\xc5\\xe8k+\\xfc\\x87\\xb5\\xec\\xb7\\xc9\\xf0\\xa9\\x12\\xc5\\x0bx\\xfa\\xbb\\xff\\xb7\\xad\\xbfcn~+\\xfcCz\\xe5\\x19\\xf5\\x97\\x17R~\\x9dCdU1\\xf1\\xf4yW7\\xff\\xe8!\\xff\\xe8\\xa1\\xc1p\\x08\\xe8\\xb6\\xf5\\xbf\\x80?r\\xe3p_?\\x87\\xa7\\xc0K\\xc9\\xf6\\xfdq0N\\xd9&\\xcf\\xeay\\x9e\\xca\\xd2\\x17\\xa3$G\\xa1\\x19\\xda\\xe7\\xb1\\xd4,\\xd2\\xbf\\xe9\\xcd\\xc1\\x98I\\xbe\\x05/$`\\x0cz\\xa6\\x16\\xfd\\x10\\xa7\\xcc$Ss\\x0dh\\xe5\\xb6WBTc\\x9f\\xaf\\xf4z\\xc4W\\xdc\\x8f\\xac\\xc9\\xd6Y\\x93\\x05,\\xb8\\xae\\xf5\\xaee'\\x1au\\xce[\\x13'w\\xb2\\x8b\\x1a\\xd9c&\\xf9\\xa7')\\x88\\x11\\xb7\\xfeD\\x944V\\x1b\\x92p\\xe5!\tW!\\x92|=\\x9a\\xaeN$MT*\\xb8\\xa4\\xc7\\xd5\\x84\\xa8\\x1aI\\x13\\x15\\xce\\x88\\x9fT@\\x16?R\\xa8\\xf2\\x914RA\\x92\\xb0\\x05!i\\xb4,\\xcc\\x02\\xe8\\xc4\\x9eA5Ir\\xdd~\\x9c\\xa0\\xa64s\\x9a\\xb2\\xea\\xf5\\xc9P&\\xc3\\x95\\xa9{h\\xee^\\xf2\\x01[\\xd9\\xb9U\\x99\\xeb\\x06\\xf0\\x99\\x11b*\\xf4\\x96\\x12/<\\xac[\\xfcMN\\xb5G]L\\x05\\xff\\xa5\\x13\\x93\\x98\\x95z\\xce\\x18\\xfc^\\xc0\\xef\\xda)\\xb2\\xce\\xeb\\xdd&;\\x84\\xb4\\xad7,\\xaa<\\xe4\\xc5:_e\\x8d\\xb2\\xf5\\xeb\\xfd\\xe5%\\xab\\xb9E\\xa6V*\\x1f\\x9c\\xb6\\x99\\xe3\\xe2\\xc2\\xaf\\xad\\x9e=l\\x1d\\x8f\\\\\\xe3\\x85\\xb4\\x0b\\x7fE\\xe5\\xdb\\x87\\xc3\\x11}(T\\xa9y4\\xe9\\x05\\xba\\x08\\xdb\\xfd\\x11\\xbb|\\x0e\\xaf\\x05#x\\xc9\\x97\\x94\\xe6R\\x1f\\xb6\\xcbr\\x13\\xd2\\xac\\xdeP\\xca\\xe2\\xfaD'\\xebR\\x7f\\xd3\\x01)\\xf5Uy[@Y\\x00\\xfb\\xa2}\\xed\\xa25/\\xcf>\\xfc\\xf8XF\\x10\\x19\\x0cW}\\x0cS\\xcd\\x81Z\\xa0\\xc1\\xb2\\x12%\\xe2\\xbe\\xf3\\xcdzg\\x94\\xd3\\xbe\\xca\\xa3;\\xf8\\xe9\\xe3\\xb1\\x08J\\x80u\\xb9\\xda\\x8b\\xd8\\xa4G%\\xd7\\xd1P^\\\\|#^^{,gC\\xe7amAW\\x83M^\\xc8]\\x87\\x1f\\x06\\xe1\\x83\\x8a]!t\\xe1\\x8f]\\x17\\xce\\xaf\\xb2\\xfajJ?~\\xc8\\xea+\\xa9\\xca\\xea\\xab\\xec\\xd9\\x1f\\xfe\\x08\\x9c\\xa1\\x80\\xa7\\xbb\\xce\\xed\\xca\\\\<\\xd1\\xb8<\\xf0\\x12\\xfc4\\xf3\\xb0\\xd6\\x8f\\xb3\\x19\\xdc$b\\x00\\xc3\\xb7\\x1b\\xc5\\xf0hV\\xeb|]<lT8DD\\xa7\\xf15\\xaa\\x8d,\\x82\\xceT%2\\x8a\\xed\\x16\\xf86V\\xcd\\x8a\\xf59+\\xb2\\xe5\\x86\\xad\\x7fI&\\xd9\\xa8I\\xe6\\xf7\\xcb\\xb2\\xdc\\xb0\\xcc\\xdcB\\\\\\xd6\\xce)+\\xd6o%;\\x19&\\xb5\\x92\\x98\\x802T\\xb2\\x9e\\x0c\\xc4\\xcb\\x8c\\xfb\\x1a\\x1e\\xdd^1\\x11\\xec\\x91\\x8d;\\x01y\\xdd\\xb7\\x008\\x03^\\xba\\xd3\\xdd\\xd2\\x0fu\\xee\\x92\\xae\\xd9\\x89^\\xf3iog\\xf1A\\x1f\\xbf\\x9d\\xd5\\x9b\\n\\xf2j\\xfbf\\xf3J\\x1e\\xcb\\xc3\\xa1Qu\\x9e\\xffE\\xd9\\xea\\x18&d\\xfd\\xdce\\xb4\\xcc\\x80\\x0c\\xcd\\x8d\\x0dQ\\xd1\\xa1Q\\xd7\\xf4@\\xe9\\xed\\xab\\xfd7\\xd7\\x89\\x1biz\\xf3Y\\xdf\\xee\\xe0)5GJ\\xcd\\xf1\\x95\\xa4\\xe6\\x18\\xeb/\\n\\xecn\\x14S\\xdc>\\x9e\\xbc\\xd6\\x8dt\\x03\\xf1\\x82\\x81*\\x1c\\xab2\\x87\\x1a\\x93\\xb4\\x1a\\x10Eh\\x19\\xf5\\x04\\x8c#3e0d\\x94Y\\xa2\\x8a\\xb8\\x12\\xb2\\x8f\\xa7\\x868\\xc6i\\xeb-x\\x82l{\\xd8\\x1aZ\\x08/8\\xec\\xbd\\x7f\\xf0-x\\x1bX\\xf6q\\xb0\\x01\\x0c\\x96\\xfd\\x1c\\x1c{:\\xd8\\xf6up\\xa92]\\xce\\x8d\\\\\\x01\\xc4\\xe3q(3\\x04\\xc4\\xef\\xc8\\x86\\xcbA\\xdb\\x11\\x1c\\x9b\\x03\\x0f>\\x07\\xc4\\x9e\\xce\\x85\\xd3A\\x1cV\\x87\\xf2q:\\x05:\\n\\xc7\\xec`\\\"n\\x872l\\x9d\\x07\\x16\\xec\\x0e\\xa2\\xf1;\\xb0cx\\xe0Xd\\x92,X\\x1e\\xf8\\x17\\xc8l\\x98\\x1exM\\xa7\\x19\\xb0=\\x08\\xc6\\xf7\\x00f\\xc6\\xf8`\\x84\\xf3\\x81K\\xca\\xeee9\\x05\\xf3\\x1b\\xb02f\\xdd\\xefzSk\\x84\\xfd\\x01\\xb9\\xbd\\xa3!\\x9c\\x88\\x03\\x82\\x07\\x0b\\x84\\x11\\x1e\\x08\\xe4\\xb6zqA\\x80y\\xb0A@\\xf0A 7s4\\x05&c\\x85\\x03~\\xe2\\xee\\xe1j\\x18\\xf3H\\xc7\\x0c\\xc1\\x87\\x1b\\xc2\\x10;\\x84\\xf8\\xce\\xcf\\x84#\\x02\\x0dK\\x04\\x1f\\x9e\\x08(\\xa6\\x08\\x93\\xfa7\t_\\x1c\\xb0kJ\\x1b\\xc6\\x08\\x10\\x833\\x82_ v}\\x10\\x8e9\\x02\\x86;:\\xcdp\\xd4<\\xa6\\x87\\x06\\xf6\\x8a\\x07\\x1e\\xda\\xba\\xf8\\x98p\\xacK\\xee4\\xa5(<\\xb4\\xcd\\xe7\\xc5\\xbbFQ[&\\x17\\xbfwz\\xa6\\x08.I\\xa3\\xe3\\xaa\\xd9\\x96{\\xb2\\xf8qD\\xcfS\\xccg:G\\x1foG\\x9c\\xa6\\x9crG\\xcc\\xd4\\xa9w\\xf4w\\xda\\xe1W\\x92\\xab\\xeb\\x93#\\xc4z\\xdct\\xb4X\\xef\\x8f\\x93\\x83\\xc6\\xfa\\x8bA\\x05\\x90a\\xb3\\xd2\\x15G\\xd6\\xfb\\xde\\xa9\\x0f\\x13\\xd4\\x99\\xa0\\xce\\xaf\\x03\\xeaD\\xb6\\xaf\\xde\\x8c\\xfcx\\xf2\\xba\\xdb@\\x855b\\x9400,1~\\xf4Hz\\xcb>ZO\\x86\\xb8\\xeex\\x1f\\xb5\\x82aN\\xd3\\xcf\\x02\\x88\\xb9N\\xeb\\xce\\xa8\\x1bt\\x93to\\x93\\x8e\\x8d\\xd2{\\xf6\\xf7\\xef|\\xfa\\xab\\x19\\x012\\x0fD\\xe6\\x06\\xc9\\xfc0\\x99\\x1f(\\xa3\\xf6zN\\xb0l>\\xb8\\x8c\\x0c\\x98\\xc5Bf1\\xa0\\x99\\xaf\\xa5$\\xd8l\\np\\xe6\\x84\\xce|\\xe0\\x99\\x13>#,\\xa2Y!4\\xdf\\xa6\\x0cs\\xc1h1@\\xda\\x1d@i\\x18\\x986\\xc9X\\x9f\\x11Rs\\x80j\\x16X\\x8d\\xderd`g\\x00\\xd7\\xfc\\xf0\\x1a\\x06\\xb0\\xd1[M\\x02\\xd9\\xe6\\x83\\xd9p\\xa0\\x8d\\xde\\\\dz\\xc4\\xc3m#VF\\xa8\\x1e\\x06\\xb8\\x85An\\x04\\xd0\\x0d\\x81\\xdd&\\x89bF\\xf0\\x8d\\x0c\\xbfy\\xf1&\\xb0BpS\\xfb:'\\x10\\xe7\\x83\\xe2b\\xc18\\x82x\\\\Z$\\x0e\\x92CA\\xb9QU=\\xa1j\\xab\\xbcKF#p\\n\\xa1n\\xcc\\xa9 5\\xbf\\n\\x1a\\xaa\\xd8e^7\\xac\\xeaIST\\x99B\\x89\\xd2\\xf9\\xfak<_\\x8f\\x8e\\xb5\\x81\\xd0t\\x1d\\x89M\\xcft;=`E\\xe0\\xc1\\xa7\\xe0\\xb0\\xad\\x7f\\xfe\\xe8\\x0fK\\xd8oWn\\x1c\\xfa\\x0b\\x84\\xadd\\xce\\x10`hO\\xd7\\xc30`\\xc0B\\x81\\xe5\\xe7\\xaep`\\xb0v\\xae\\xd7\\xad\\xa8\\xb0`\\xe7z\\x18\\\\f79\\x8f\\x17\\x83PZ\\xfc\\\\\\xf4\\xe5\t\\xaf\\xc3\\x9c\\x9e\\xa2\\x05\\xce\\xc9\\x7f\\xbaSbI\\xa1\\xc8\\xd8\\xbe\\x12\\xed\\xac0\\x99L\\xf1S\\xdca(r\\xad\\x87>\\x05%\\xf7(Y\\x12\\xc36|E\\x96\\x84U\\x9f\\xf5\\xe6\\xe5e\\x0f\\xb0\\xef\\xfcp\\x17\\xad\\x9bM+U\\xdd\\xd0\\xce)\\xf7\\xb0FV\\xce\\x14L\\xfft\\xbf\\xdbm\\x0e\\x1f.\\x825\\xefP\\xcb\\x05\\xac$D\\x9dZfL\\nh\\xc6f\\xd9`\\xc8(\\x11\\xcd\\xbaLXH\\xf3\\x19_-\\xb2h\\xf0\\xfc\\xa8E\\xb1\\xb4/\\xff\\xf2\\xf6e\\xa5i\\xe5\\x00\\xb5\\xfb\\xb1\\xfc\\x97\\x02\\xf4\\xc4\\xfe\\xab\\nx\\xb7\\xdf\\x9et\\\"\\xf6b\\xa3\\xb4\\x078\\x0b\\xd01i\\xb7N\\xbb5 \\x0d\\xb5\\xe95\\x8a\\x125\\x8a)n\\xa3\\xb3\\xbeE\\x9b\\x1a\\x07M\\xb2\\x02\\x1d(7d\\x94Bo\\x90\\xb6\\xd3w\\xe2\\xb9\\xb7;\\xe7Jv\\xbd\\xc3m\\xdb\\xfd\\x9a-\\x1aV\\xacY\\xb5\\xcd\\x8b\\xa6\\x95\\xc4\\xcbW\\xaf\\x8f\\x854\\x837\\x94U\\xb9\\x1e\\xdd\\x9f\\xa2$O\\xda\\x94\\x97N)\\xe6\\xc5E\\xe9\\xf9`\\xcd\\xbe8\\xbf\\xc0+\\xeei\\x1fg)C\\xeb\\x0c\\xd2\\xb6S\\x8b\\xed\\xaa\\xb2\\xbc8/wq\\x90P\\xaf\\x1cX6k\\x98\\x19\t\\x12\\xc5F\\x7fu\\xa8#\\x18\\xca\\x94X\\xc6\\x99\\xdb\\x1e\\xa0\\x7f\\xeb\\xaa\\xa3x\\x9e>\\xd8\\xe9\\x84\\x0f\\xd6\\x87]gB\\x14\\xc0\\xc5\\xa4\\xbc\\xb7\\xfa\\xf5\\x82U\\xb6Y\\xed7\\x99\\x88\\xca\\xfb\\x91U\\xd7\\x1b\\x06UY6c\\x8f9\\xb7!\\x04\\xf2\\xb8*\\xf7\\xc3\\\\\\xa6 }W]F|\\xfdT\\x86D\\xfbE\\xd8\\x07\\xabk\\xb6\\xe2\\xbf\t&F\\x86\\xe1\\x11\\xa7\\x82\\xe5\\x97W\\xcbr/\\xc3E\\xca5\\xf2^\\xc1UV_\\xa1\\xe1\\x92\\xe2e\\x08\\xe1`kT\\x9a\\xd7\\x0c\\xd6{\\xf9\\x10G\\xebH\\xd4\\x92\\x11\\x16\\x8b\\xfcP\\xa9\\xf5\\x11C\\xecY\\x9b\\xb3N\\xdf\\xb4\\xbf\\xd97pU\\x99\\x80$\\x94\\x80\\xc52\\xd2Ur\\xf3\\xa91\\xdc\\xe0\\xfa\\xfb\\xfe\\xd9 \\xa4_5\\xd21\\xe8\\xf9\\xd0\\xc7=\\xb8\\xe22\\x1f\\x9d\\xb3\\x08\\xea\\x87\\xeb\\xcbz\\x97\\x8d/\\x9d\\x1aeq\\xe1\\x8ct4\\x8e\\x01\\xf6N\\xae\\xe2\\xa7\\xb6\\xa08\\xe3*n:\\xecL\\xfe\\x8b&/]\\xb1d\\xe6\\x12Z_`\\x9e\\xcd\\xe7\\xd5\\xa6\\\\]\\x937\\x9c+\\x96\\xadu\\xd6M\\xb4\\x08^\\x0cd\\xfa\\x90:\\x1f]\\xc6\\x94\\xa6\\x88\\xf4\\xcf-yS\\xc4\\xde\\xd3\\xff\\xc6\\xa6K\\xed\\x9at\\xd9u\\xca$\\xa7\\xfarXv\\x00\\xd9n7\\x1f;\\xb7.|\\xcd\\x07\\xb9\\xa8\\xf75\\xac\\xb2\\x9d<\\xbc\\xc8\\xe3\\x87\\xfes\\xb5\\xdf\\xa8X\\x9b]U\\xaeX]\\xcb\\xac\\xcdZz\\x03v\\x02\\xe9\\xe6?\t\\x97\\xf7\\xd1PA\\xe4\\xc5j\\xb3\\x97y\\x9f\\xb9!\\xdd~(\\x15_;\\x9d\\xeb6\\xc3\\xbb\\xac\\x1d}N,\\xeb\\xde\\x10z8\\xc2\\xfb\\xb9\\xc5\\xc4\\xa0\\xa9\\xb2\\xa2\\x96)\\xa2\\xb7\\xd9\\xea*/zO\\x9a\\x88\\x9a\\xcfs\\x14\\xf0\\x1f\\x89y\\xa8\\x04\\x1c\\x9f\\xda\\xa3\\xe6\\x9a\\x9c|\\x1dK\\xb3Xg\\x0d\\xfb\\x86\\x973~\\x15\\x89\\xca\\x85\\xf0,\\xad\\x0f\\x9a\\xbdXp\\x00q\\xb6!;\\xef.\\xab\\x9a\\xf3\\x9a5\\xe7\\xc3\\xb5\\xab\\xc9a\\xab\\xf8\\x823\\x91\\x93S\\xfb\\x13j\\x8c\\x9a\\xe4\\x8bd\\xc4\\xc5\\x00>Q\\x80\\xcf\\xb8Q:\\xe7$\\xab\\x9a\\x9a5?\\x08\\xa9\\xfc\\n\\xf9@h\\xc6\\xe37\\xc3a^\\x95\\xdbm\\xde\\x84\\\\\\xa2\\xb2\\xb6FU\\xc4Y\\xc95%\\xd70_z\\xc6w\\xfc\\x9f3T'\\xde!\\xca\\x9a\\xb2\\xaag`6l\\xfbE%b\\xb7\\x18\\xd7\\x01P\\xee\\x9b\\xdd\\xbe\\xe9\\xfe\\xb6\\xab\\xd8\\x8d\\xec\\x9a\\xc1A\\xc0\\x04\\xb3\\xb6\\xa9\\xd5\\x903\\xf0\\xcav\\xbb\\x19\\xb8\\x88\\xf9\\xa2N\\xf93\\xb0c7\\xf9\\x9a\\x15+6\\x03\\xabv\\xfc\\xbame\\xb0\\xef\\xf2\\x85_\\xd6\\xac:G\\xef`Y\\xebs\\xefmC\\xa6\\x1aa(\\xab\\xfc2/2\\xb5\\x01\\xb5\\x9f\\xe9\\xab0G\\xaa\\x1b\\xcd\\xc8\\xe6\\x15\\xcf \\xbcb\\xab\\xabo\\x9f\\xa9\\xd6\\x8c\\x9e\\xd89.\\x0c\\x83\\xe8H>\\xc4\\xa6\\xcd\\xac\\xcf\\\\,\\xf5\\xe7#X\\xee\\x1b\\x0d\\xc2\\x9d\\xbe\\xf9\\xf3\\x11\\xdc\\x8a\\x0d\\xf7\\x86U\\x0d\\x8c\\x02\\xbd\\x05\\x1a\\xd0\\xabsX%\\xdf\\x9b\\x97\\xaciX\\x05\\x9f\\xfe\\xddbvK\\xbd\\xd3\\xb3\\\";\\xe3Q\\x84mu\\xadVb\\x91\\n\\\\\\xf3\\x8b\\xce\\x8c\\xd1|\\x99~\\xb2Eu/\\x0d0\\x1cM\\x8a\\xb3/\\xb5\\x8c\\xde\\xd2X\\x9e\\xb0#\\xe4YCZ\\x0d\\xff*\\x05\\xb0\\xf8Al\\xf9\\xbf}:\\x1ac\t\\x1c\\x8b\\x1747\\x1b\\xdeAhq?\\xa1b\\x16\\x00\\xff\\xc6\\x1eV\\x0c\\xfes_7\\x90]V\\x8cq\\x93\\x07}\\xbdP\\xc6\\xab\\x8b\\xb7>F\\xf5\\x08\\x1b}\\xcb\\xb2B\\xb5X6\\xeb\\xe5n'\\xa2\\xef\\xd6%\\x93\\xaf\\xedI\\xa3J\\x84G\\xd6\\x8c7g\\x044\\xbf\\x91gS\\xe3\\xf6W\\xcdd\\x8027\\x902\\xf5L\\x99\\xe2\\xb3\\xd6S\\xd3\\xd4\\xa1Z\\x19DM\\x81qa\\x88\\x9b\\x07\\xc1\\x08G{\\xac9\\xbf)\\x1bv\\x8e7D\\x92\\xd3.\\xf1Y&\\x00\\x82?\\x8ab\\x80\\x9f9\\x10*\\x00\\xcd\\xc6\\xfa+\\xc1R\\x91\\xc4\\x8a\\xbd\\xe5\\x8e\\x8b\\xa6o\\xe0\\xf4\\xf8\\xfb\\xf7o\\xdf\\x9c\\xffx\\xfa\\xfd\\xf9\\xd9\\x7f\\x9c\\xbc=\\xff\\xf4\\xfe\\xcf\\xef?\\xfc\\xdb\\xfb\\xc0R'\\x1f\\xdf\\xfe\\xe5\\xc3\\xd9\\xdb\\xf0R\\xaf?\\xfc\\xf8\\xe3\\xf1Yp\\xb9\\x0f'\\x1fN_\\xbes\\x14S\\x01?\\xcf#\\xfa\\xe7\\xc3\\x94L:\\xcd/\\x0b\\xb6\\xfe\\xb1\\xbe<kO\\xd8\\x8dz\\xa8\\xb0\\x16?\\x99\\xaf\\x93\\xe1O\\x9av\\xd4n\\x9a\\xc8{n=\\xb2\\xca\\xff9\\xfc\\xa5l\\x907y\\xbd\\xa5\\xa5<\\x9f\\xc3\\x89\\xd8\\\"\\xb3\\x8d\\x9d\\x05v>\\xea\\x13qr\\xfa\\xectIU\\xb9/\\xd0`4M\\xfe\\x03\\x81$\\xa3\\xbao\\x9fY\\xbf\\xc3\\x0f[}\\\"\\xacq \\xaesp\\x9eG:\\\"\\x8a\\x14|g\\x14\\x93\\xbc\\x07\\xb8>\\x11{\\x0d\\x01=\\x07p\\x1e\\xf5\\x06\\x1f\\x12\\xc7Y\\x13mzi\\xa2\\x0c\\x02\\x84\\x0d\\x04\\x84\\x0c\\x06\\xe1\\xf8\\x88~>>L\\x0e?\\xdb\\xb2\\xba\\xc9\\xb6\\x08\\xccd|D\\xeb\\x94\\x0b\\xa9\\xe8S{\\xfe\\xc2\\xad\\xfc>\\x05\\xd6\\xee\\x14eW\\xf1\\xc0\\x934&\\xea|\\xa2\\xe9\\x8d6$\\xc0_\\xe5\\x1c=\\xa5nQ|7\\xe8_k\\xe0\\x87\\xe6\\xb2aG\\xea\\xdd\\xecm.\\xdf\\xf2\\x96\\xff)\\x8c\\x1b+3q\\xf0\\xee\\x8e\\xd6\\xbc\\x9d\\xf6}\\xca\\xd8\\xcb\\xb0\\x9f\\x85\\x15\\xb5LVT\\xb2\\xa2 YQ(\\x11''m\\x9bKV\\x14\\xd0E\\n4\\x1d,)YQ\\x06Q\\x06\\x01\\xc2\\x06\\x02B\\x06#YQ\\xd4\\xda\\x93\\x15\\x15\\xb0E\\xfdb\\xad(\\xb1\\xec\\xcfo\\xca&/.\\xcfE\\x96\\x0d\\xb7E\\xe5\\x14\\x9a\\x7f\\xa9w\\xf3\\xe2\\xee\\xeb\\xf2.\\xb9\\x80Z\\\\K\\x8d2\\x07\\xdehp\\x91O\\x84\\xb7\\nZ\\xec`V\\x0d6Jx\\xbd\\x15\\x12\\xcaJ\\x993\\xcdm\\xc9\\xcb_l\\xf2\\x95\\x08:\\xe23\\x06\\x19\\xe3\\x0d7\\x12\\xce\\xe5\\x05\\xe1\\xf3\\xaci\\xb2\\xd5\\xf5]B\\x9bF\\x8b\\xce-\\xa1\\x0e\\x92\\x08\\xbb\\x98\\xaf.h\\x85A\\xd89\t\\xf5\\x01\\xb1N@\\xa2Mp\\\"V\\n\\x01\\x15\\x83-^\\x05'J\\x14\\x8b\\xa5$\\xbd\\xed\\x10\\xd8~\\xb0\\xc7\\xc1\\xe0DX\\xa8C\\xd2\\x0b\\x17\\x8d\\x99\\xc1\t\\x8d\\xa4\\xc1\\xe9>\\x1aDQ+C\\xa2G\\xe8\\x90\\xd8\\xa1Q<\\xbe\\xb8\\x1d\\x9cB\\xa2yH\\x0c\\x87\\x11?\\xee\\x18\\x1f\\x9c(\\x91?8\\xe1\\xf1@8\\x05M\\x16\\xff\\xa9NS\\x10[\\xca~i\\xd28\\xfa\\xc8\\xf2]\\\\#\\xfc\\x96\\xab&G\\xfc\\x12Nw\\xac\\xb7\\xa8\\xe7\\x13\\x08\\x17\\x0e\\xd0L\\xce>\\x05\\x1e\\x1e5\\x05J\t\\\"$\\x05!\\x87JM\\xd4\\xc3\\xc0\\x90\\xc2f\\xb7\\xa6\\x90\\xc1\\x84\\xb8\\x01\\x85\\x98A\\x0d>\\x84\\x0e\\x8a\\xf9\\x0e\\xa3\\x9a\\xdcQc8\\x05\\xca \\xb0\\xef\\xb4\\xb83\\x9c,\\xd1h8\\xdde7\\x9c\\xb1c8\\xddes\\xec\\xf7\\xbfp\\xa2\\x06\\xce\\x91\\x98\\x0d\\x83\\xebp\\xf2\\x87\\xdc\\xe1t\\x97bs\\x05\\xed\\xe1t\\x97\\xad\\xc1\\xc3\\xfep\\xba\\xcbvx\\x02\\x07q\\xba\\xcb\\x069B\\x0fq\\xba\\xcb\\xc6\\xf8\\x83\\x17qr\\x874\\xe2tw\\xfd\\x08=y\\x84\\x04\\x0cz\\x99a\\x01\\x858\\xc9\\x8d\\xcb'\\xaa\\x00K'\\xc4\\xc2\\xf9\\x85\\xd8\\xe9^\\xaf\\x8c\\xa6P\\xc3\\x8a\\x86\\xb6jJ\\x06\\xba\\x95\\x92\\x81.(lZk\\n\\x19L\\x88\\x1bP\\x88\\x19\\xd4\\xfb2\\xd0\\xbb4\\x11\\x14)\\xc8\\xde\\xdb\\xb3-\\xf7\\xc9\\x99{\\xb9O\\xc1\\x931|*j\\x0dr~\\xb1\\xc9\\x90\\x94\\xaf6\\x8a\\x1ap\\x7f4F\\x9f\\xbe\\x81W\\xef>\\xbc\\xfe\\xf3\\xf9\\xf1\\x9b\\xf3\\xef\\xde\\xbd\\xfc\\x9e\\x10\\xb90\\xa4!\\x87\\x97\\xafN\\xdf\\xbew\\x07[\\xf4i\\xc8\\x80\\x10\\xad\\xd1\\xa7!\\x83\\xf7\\xc7\\xae\\xa0\\x8d>\\xb5!\\x1c\\xd3\\xc4\\x10v\\n\\x91$\\x17\\xca\\xfa\\xbbMvi\\xa4g\\x96\\xc9V^mV\\xe5\\xf5\\xf1\\x1bo4G\\x9f\\xda%\\x059\\x1d\\x08\\x0d\\xf4\\xa4\\xf6)j\\x8eF\\xa9$\\x82\\x8b\\xb9O\\x93\\x9aF\\x07\\xf1$\\x91\\\\\\xb3}\\x9a\\xd4>\\xb2\\xe8B\\xed]I\\xaf\\x85\\xf9y\\x9a_\\xcah#\\xbe\\xcfk(Zx{\\xf5\\x15\t\\\"\\xbb\\xbc\\x80L\\xf1\\xf4\\xc1\\xcf\\xa1\\xed\\x95\\\\\\xfb\\x97:Z\\x8f\\xa3\\xb8-\\xa2\\xd1\\xfd\\xdb\\xcc\\x13\\xb2\\xd4\\x9a\\xdd*Ys\\xa6o\\x87t\\x87w{\\xeb\\xbb5T3B\\xe0\\x92w\\xbf\\xa1\\xee2]\\xdb|3\\x8f\\xbe\\x83\\x12wObO$Q\\xfb#)H\\x0f\\x05/\\xa4\\xc0E\\xb4\\xdb/\\xc7\\xf9\\x9bl\\x14$\\x14\\x08\\x16\\x0c'\\xb6~\\xf6\\x87?<\\xfd_\\xd4\\xcf#\\x04\\x04\\xe1B\\x02\\x91}g\\xb5{\\xf6\\x87?^?\\xfd\\xa55-tw>\\xd9/7\\xf9\\xea\\xcf\\xec\\xd0;\\xf7_\\xb3\\x83\\x995\\x8a\\xbe\\xbf\\xeek&\\x93\\xb2\\x19w\\x0b\\xff\\xd2\\xae[\\x02\\x13J\\x08K\\x9f\\x82\\xe5\\x1az\\x86iQ\\x9d]\\x95\\x97U\\xde\\x04-\\x8f;i\\x97n\\x91\\xaf!\\x01+4dm\\x06\\xa8\\xac@!\\x04M\\xf7\\x00e\\x15 \\x08\\x08\\x14\\x06\\x84\\xab\\xa9@\\xa1@\\xa8` FA\\xdd}\\xa3\\xc2T\\x13U1q\\x95Cb8A-\\x85*\\xa5@Y\\xd2\\x17>\\xc4\\xaa\\xa3;k\\x11=\\xf0\\xb0-Ao\\x8a\\xbf\\x19\\xdc\\x8a-\\x8bs7\\x8cK\\xa8\\xd1_\\xd3\\xf2\\xf0\\xf7\\xach\\xf2\\x82\\x9d\\xfb\\xedP\\xbf\\xfd\\xe9\\xb1;I\\xfa\\x8a\\xa6\\xa5H\\xca\\x9a !I\\xc4%OR\\xcd\\xa4N\\x02\\xb9\\xa3\\x10\\xa2\\x88\\xc9\\x1d\\x06z\\xa7!L\\xed\\xdeM\\x13\\xa8J6D\\xbd\\xe2o{\\xf5)T\\xb1\\xd25\\x06YN\\xfe5,)P\\x81\\xceX?]Y\\x12*%T\\xe7C\\x92\\x02j\\x99\\x1a9\\xfd\\x8e+\\xe8\\xd7\\\"~\\xf9\\xa5\\x08_\\xf6EOK@\\x02\\xe5e\\xc4\\xccgM\\xc3\\xb6;\\x119\\xdd\\x94\\xb0\\xcd\\xeb\\x0d\\xcb\\xd6\\xe2\\xfd\\xc0\\xcb\\xabF=\\xa8\\xa4\\x91\\x0c#L\\xa6\\x13\\x08\\xaa\\x84p\\x853K>0\\xc4\\xd3'y`\\xbe\\x18\\x9b\\xf7.%\\x02\\xeb\\xfdd\\x95\\x9f&\\xdfR\\xf9\\xe5%\\x02\\xb3y\\x8cl\\x96\\xc5\\x9c\\x19T\\xbc>\\x1c\\x8fP\\xec~\\x99\\x10\\x0fL\\x80\\xaf%\\xc0\\xabB\\xf3\\x9f\\x04{Jz\\xe3\\xe8us\\xf8\\x9d\\x17$7\\x85g\\x18<3\\xd3\\xb15\\x10\\x19\\xdb\\xb7\\x04\\xa7\\x8b\\x80\\xc8\\x1divo\\x9f\\xa1\\xe2\\xf68\\\"o\\xdf\\xb2\\x82Pv\\x1cE7\\xb8\\x0d\\xf1t<\\xf7\\xeb+\\x19\\x93_C\\x97>U\\x88I\\xfep$\\x8f\\xae\\xbc!*Dg7H_\\xa6\\xd8\\xc8\\xc7\\x0cTZ1\\x99\\x07\\x7f\\xd9\\xcf\\\\\\xe6M\\xd6\\xfa=kD\\x9d\\xaf\\x0e2\\x15Vp\\xc2\\xf0\\xf1\\xd6\\x14\\xb2\\xc3NN;\\xe7\\xdc\\x82\\\"6H\\xcb\\xb6\\xe3\\xder\\\\\\xdb\\xcd\\x9c;\\xaes{A\\xb7\\x96\\xc1u\\x1d\\xf5\\xcd\\xc37lW1\\xae\\xac\\xd6\\xcfa\\xb7aY\\xcd\\x84\\xd9\\xff\\xb9^_\\xcb\\xa0\\xfd\\xcf\\x90\\x17u\\xc3\\xb2\\xf5\\xc3\\xa8a\\x9dg,\\xac\\xf7\\xa5\\xa8\\xb7\\xa3&\\x98\\x1f\\x8e{Nd\\x13\\xc1ze\\xc8zci*k\\xbfaN\\xbfi\\x84\\xdc\\\"B\\xf8\\xd1\\xee\\x15\\x85\\xdc\\\"\\xf2\\xe5\\x04\\x06_^`\\x08\\xb8!d\\xbf\\x0f\\xe4\\x18\\n\\x1b\\xf8DZ\\xd4\\xd8\\xc0\\xe1\\xb7vH\\xecl{\\xb2\\xe7\\xfe\\xcd\\x84\\x95qW\\xb63\\xe18\\x01\\xbe\\x96\\x83\\xb7\\xf5`\\xd7\\xf1\\xed\\xcf\\xde\\xe3\\x05\\x10\\x8e\\x18\\xe0\\x0d\\x83\\xf3\\x8a\\x0b\\xfc\\\"#\\x1c9\\xc0\\xb67h\\xf2\\xdf&!\\xcdD\\xd7\\x81\\x88p/\\xc4q\\x0b$\\xb6z\\xef\\xc5\\x84X\\xc6\\xc3~y\\xaf\\\\\\xa0\\xea\\x93vy\\\"\\xb6\\x8d\\xbek\\x10\\xb1|\\xed\\x17\\x1ab9\\x12\\xae&\\xc4\\xb2\\xf6\\\\2\\x88eK\\xbb.\\xe0\\xbf\\x1c\\x10W\\xff\\xbcI\\x7f\\x01}\\x9c%\\xc2Z\\x1b%\\x01\\x86\\x96\\x0f\\xee\\x18\\xb1\\xbaD\\xe2\\x0f\\x8c\\x14\\x0bh\\x86\\xe4\\xc00s\\x82`\\xf0$\t\\x86Y\\x12\\x05C7o\\xa7'\\x0b\\x06O\\xce\\xdf\\xa0\\xa9cOl1a\\xfeD\\xe7\\xc2\\x08H(\\x0c\\xfe\\xda\\x80P#x\\x93\\x0b\\x03\\xad\\\" V\\x06\\x9a\\x9d\\xf3\\x0b\\xefJ4\\x89\\x16\\x9c\\x1d\\x97.\\x0f/II\\x99g-I\\x0c\\xc4\\x8eJ\\x9d\\x07\\xd3\\xd2\\xe7\\x01I\\x8d\\xf5i\\xd64z\\x10\\x92J\\x0f&\\xa7\\xd3\\xb3q\\xa0\\xa7\\xd4\\x03\\xf2\\xc5\\xae\\x80\tM1\\xf0%\\x91.s\\xd1N\\x15\\x92ln\\xa01Q/p\\x11u\\x07\\x04\\xe8\\x0f\\xf0\\x1ep:\\n\\x10;\\xf8v\\xf8!\\x91N\\x8d}\\n\\x90\\x06\\x04J\\x84S\\xd0\\xe5\\xac\\x90y\\xa1\\x89>55Q\\x07\\n\\xc2\\x07\\x0bB\\x07\\x8cxfE\\x8bP.`y\\xbd\\xe0\\xed\\x87\\xf4\\x8e\\xfa\\xe0\\x96>\\x91\\xbc9&E\\xb4\\xc4+\\xea\\x80T~\\x108\\x0f\\xe9\\xfa\\x89|wd~\t\\x84l\\xa1\\xb3\\xa6\\xf9\\xe3\\x14\\x94\\xea\\x0f\\xfc\\xe9\\xfe\\xc0\\x9b8\\x19\\xe8z\\x8d\\xaa\\xcf\\x92\\x85\\x98,D;%\\x0b\\x91\\xbe\\x0d'\\x0b\\xd1G\\x01b\\x07\\xfa\\x1e )Y\\x88\\x04\\xa2\\x0e\\x14\\x84\\x0f\\x16\\x84\\x0eX\\xb2\\x10G\\x14\\xd1\\x12\\xaf\\xa8\\x93\\x85H\\xdfB\\xbf\\n\\x0b\\x91\\x1en\\x0ct\\x81\\xd2T\t1A4\\xcc]/i)\\x07\\xd6\\xe8[\\xc2\\xd4y3c\\xf2h\\x08N \\x0d\\x11I\\xa4\\x81\\xb6\\xf3Qv;rBi\\xa0\\xd5\t\\xc4z!$\\xb94\\xd0\\xeb\\x86\\x80\\xfa\\x81\\x9ch\\x1a\\xc2\\x1a\\x00\\x81\\x8d\\x80\\xb0\\xa4\\xd3\\x00\\xf4\\xd0*\\x9c\\x02\\xfb\\x02\\x11\\xfd\\x81\\xd0$\\xd4@W\\x00C\\xd2\\n\\x81\\x9c\\xfbYR@Bj\\xb8\\xe7\\xc6QU\\xd7\\x90hacdv\\xd6\\xa7\\xe6I'OM\\x9e\\xa03\\x9c\\xa8\\xa1hd\\x86X\\xc8\\x9a?@\\x0d'j\\xd8\\x1aN!\\xc9\\xad!f\\xe2\\xd1N\\xd0\\x9a\\x82\\xd9S\\xf7|\\x93\\xa8\t\\xafaZ\\x83|&A\\x9f\\x82\\x93_\\xc3\\xfd\\xe9\\xce\\x90s\\x1e\\xc4\t\\x0d\\xe8&x\\x9f\\\"\\x0e\\xea\\x9a\\\"\\xa4\\x07\\x91\\x12\\x84\\xd0\\x03\\xbc\\xa6\\x90\\x03\\xd4\\x90\\xc2W\\x86\\xa6\\xd0\\x01\\x87\\xf8A\\x87\\xd8\\x81\\x8f:\\xf0k\\n8\\xf8k\\xf2\\x87<\\xe2\\x14!\\x97\\x08y\\xd0\\x83&q\\nJ\\xa8\\x0d\\xf7\\xd4-o\\xa0#N\\xf7\\xd14\\xfa%\\xea\\x8e\\xa8\\x91\\x9fd\\x86\\xb6\\x00\\xfb1\\xd1\\xe2Fq\\xba\\x0fq\\xfa\\\"Oq\\xba\\x8f\\x96\\x85$\\xe3\\x86{j\\x13!\\xfa\\x15\\xa7\\xfbh\\\\p\\x92n\\xb8\\xa7\\x86\\xd1\\\"pq\\xf2\\xc7\\xe5\\xe2t\\xf7\\xfd\\x8a9\\x9d\\x85\\x04\\x00\\x93\\x18\\xda\\x82\\x84q\\xa2%\\xf3\\x86p\\x0b-\\xd42\\xfb\\x05\\x9eMH^?M1\\xc6!\\x1de\\xd7\\x94\\x0e%\\x01\\xcbQR:\\x94X)|Ih\\n\\x1dp\\x88\\x1ft\\x88\\x1d\\xf8\\xfb>\\x94\\x84%\\x0d\\x87V\\\"\\x94\\xb4\\xa7\\x9a\\x88\\xe9O5EM\\xe0\\xb8\\xe9\\xebMBa\\xa7\\xe8\\x89A\\x8bH\\xeaSHJ\\x0b;\\x05$\\xbb\\xb0S@\\x1a\\x0c;\\xd1\\x12d\\xd8)8u\\x86\\x9d\\xc2Oa\\x92\\x88Y8\\x02\\xb9zsv\\xd8)\\xd8\\xbb\\xdf\\xa7\\xe8\\xf9\\x1c\\xad\\xe6\\x08>\\xd41Mnf\\x18\\xa8*\\x89\\x1c.\\xd0\\xa7\\xc9m\\x0d\\x12i\\x8c\\x1d/\\x89\\x9a\\xe4$\\x80e@\\x82r\\x88l;9\\x85\\n\\x89\\x9b5\\xcd\\n)Y9\\x84$,\\x87\\xb0=.dg\\xf3'\\x8d4)l'\\x0f\\xd8\\xc5\\x03z')\\xa4\\x8f\\x92\\x82u\\\\\\xd4b\\x8cX\\x88\\xa4\\xa4\\x94&\\x05\\x0b\\x0b\\xa2\\x04\\x06!\\x89+M\\x8a\\x12\\x1c\\xc4\t\\x0f\\xc2\\x92[\\x9at\\xbf\\xcd\\x8c\\xb1\\x1a\\xa8\\xc90\\x03XNN\\x84\\x0eAI2M\\x8a\\x92w\\xcc\\xd9m\\x17\\x96H\\xd3\\xa4{h\\xe3\\x8e\\x98$\\x1d\\xc2Wz\\xe8\\x1a\\x0fT\\x89\\x11\\xc2\t^*\\x81\\xca0P@\\x10!$\\x88S\\x83\\x11\\xc2\\x82\\x18\\x81A\\xac\\x02\\xbc\\xbf\\x06\\x86\\xab\\xbe\\xd9\\x15\\xdf\\x0cj/F\\xe9E\\xc88L\\x99\\xc0\\x14uw\\xe7\\xad\\x0b\\x0b\\xf4mK\\x855\\x8b\\xd6$RBv\\xa0\\xd7N\\xab5$9;\\x90\\xedk\\x82]M\\xd6\\x8btmH\\xde,\\x88\\x12\\x94\\x14\\xa0N\\xc8[\\x03\\xb9\\xf3\\x10$\\x00\\x08\\xdd\\x08\\x82\\x04\\x01a\\xc2\\x80p\\xb5\\x7f\\xb7\\xcd\tQ\\xf2T\\xf5N|C#Z\\xb1\\x87i\\xa6 \\xf9\\xd1\\xf4\\x83\\xa4\\x08\\x05~\\x07m\tS\\xd6\\xc4\\x06\\x10\\xab\\xa6 {\\x815\\xfaP;*\\x804g\\x82x\\x88O\\x12\\x0f\\xb6D\\xf1\\xe0Rxv\\xe56{rH\\x8b\\x17Y\\xf2#d\\xa4\\x1dy\\x86SVH\\x94RV\\xc8\\x1e\\xb9\\xbc\\x91.k\\xea\\xae\\xb2r\\x91\\xfc\\x83\\x04\\xe1\\xb9}~\\xa1\\xde\\xbd@?^\\xa0\\xc7\\x8e\\xee\\x9b\\x8b\\xf2\\xc2\\xcd\\x9d\\xc4\\x1eB\\\\_\\x84\\xa1\\\"\\xcc\\xf2\\xfby\\xef\\x84\\xe0v\\n\\xa8\\xc9\\xd2\\x9d\\x19\\x93\\xdd\\x8f\\xd8\\x8d\\xb6a\\xb2\\xc7\\xc6\\xe2\\x8d\\x19\\xb0C}3m2\\xf1Nf:\\xff\\xf8i^\\xacD\\xf0^\\xbd-\\xebo\\xea\\xf55\\xfcn\\xf1\\xfb\\xff\\x99r\\x8d\\x8f\\xc8;\\xad\\xf4\\xa4J\\xb9\\xc6\\xbb\\xafh\\x17\\xbcR\\xaeq\\xf3\\xaf\\x14v)\\xd7\\xf8\\x90|FK\\xb2*\\xb1\\xa9\\x92r\\x8d\\x0f\\x7f\\x0c\\xe8\\x97\\xf7\\xc6I\\xca5\\xee\\xe0H\\xb8m\\x11\\xcb\\xfak\\xce5\\xee\\xdf\\xcb\\x87\\x15\\x88\\xc7\\x8b\\xae\\x18\\x94U~\\x99\\x17\\x99\\xdah\\xdb\\xcf4\\xa8}\\x84\\xb0\\x92\\x9d\\xe5\\xd6d\\xc6m\\xdbW\\xfd\\x17\\x8b\\x90\\x02\\xc7\\x85\\x01B\\x1eAs\\xc5\\xebVY\\xcc>s\\x91\\xd5\\x9f\\x8f`\\xb9o\\xb4\\x81p\\xfa\\xe6\\xcfGp\\x8b\\xa90\\xf5T\\x12\\xe4\\x0d4\\xe5\\xb0n\\xacjn\\x9b,Y\\xd3\\xb0\\n>\\xfd\\xbb\\xc3\\xc0\\x0e\\xb9\\x85\\x91\\xd2\\xb0CJ\\xc3\\x9e\\xd2\\xb0\\xfbl\\xa7\\x94\\x86\\xbd\\xff\\x8d\\xcfz\\x93D\\x0biOI6i\\xfd\\xf5\\xab\\xb1>\\xa5$\\x9b\\xfe8\\x00\\x08\\x9b\\xd0\\x94\\xb3\\x8f$\\xd2u;\\xda\\x81K\\x92\\xcb\\x89\\xd2'\\xea\\xb5:\\xa2\\xee\\x80\\x00\\xfd\\x01\\xde\\xb3_G\\x01b\\x07\\xdf\\x0e?$\\xd2\\x81\\xbaO\\x01\\xd2\\x80@\\x89p\\n\\xba\\x0e\\x172/4\\xd1\\xa7\\xa6&\\xea@A\\xf8`A\\xe8\\x80\\x11\\x8f\\xf3h\\x11\\xca\\xb56/8\\xdf~H\\xef\\xa8\\x0f\\x89\\xea\\x13\\xd9\\x17\\xa1)\\xa2%^Q\\xa7$\\x9b\\xf4-\\xf4\\xabH\\xb2\\x99\\xd2\\xb0\\x87\\x96L\\x16bG\\xc9BL\\x16\\xa2\\x8b\\x88\\xba\\x03\\x02\\xf4\\x07\\x04\\x18\\x1e\\x01b\\x07\\xfa\\x1e )Y\\x88\\x04\\xa2\\x0e\\x14\\x84\\x0f\\x16\\x84\\x0eX\\xb2\\x10G\\x14\\xd1\\x12\\xaf\\xa8\\x93\\x85H\\xdfB\\xbf\\n\\x0b\\xf1g\\x0c\\xf8Mi\\xd8\\xc7\\x94\\xd2\\xb0\\xa74\\xec\\xbe\\xef\\x82\\x1a\\x00\\x81\\x8d\\x80\\x94\\x86]\\x12Q\\x01\\x0cI+\\x84\\xa0L\\xe7)\\x0d\\xbb\\x9fR\\x1av\\x9c\\xa8\\x11}8\\xa54\\xecn\\x9a\\xd0 \\x9fI\\xd0\\xa7\\x94\\x86\\x9dj\\x82\\xf7)\\xe2\\xa0\\xae)Bz\\x10)A\\x08=\\xc0k\\n9@\\x0d)|eh\\n\\x1dp\\x88\\x1ft\\x88\\x1d\\xf8\\xa8\\x03\\xbf\\xa6\\x80\\x83\\xbf&\\x7f4(N\\x11r\\x89\\x90\\x07=\\x9e\\x14\\xa7\\x94\\x86=\\xaciaW\\x9d%Q\\x83b\\xc9\\x0c\\xe9i\\xcah!\\xb58\\xdd\\x878}A\\xb98\\xddG\\xcbR\\x1a\\xf6\\xc0\\xc6\\xa54\\xec\\x06\\xdd}\\xbfbNg!\\x01\\xc0$\\x86)\\x0d;N\\xe1\\x16\\x18\\xc9\\xeb\\xa7)\\xc68\\xa4\\xa3\\xec\\x9a\\xd2\\xa1$`9JJ\\x87\\x12+\\x85/\tM\\xa1\\x03\\x0e\\xf1\\x83\\x0e\\xb1\\x03\\x7f\\xdf\\x87\\x92\\x94\\x86\\xdd\\x9bf\\x01\\xa7\\xe8\\x89A\\x8bH\\xeaSh\\xa2\\x06\\x9c\\x02\\xd37\\xe0\\x14\\x98\\xd4\\x01'z\\xaa\\x07\\x9c\\xa2\\x12@\\xe0\\x14~\\n\\x93D\\xcc#\\x11\\xc8\\x95\\x94u\\x02\\xa7`\\xef~\\x9f\\xa2\\xe7s\\xb4\\x9a#\\xf8P\\xc74\\xb9\\x99a\\xa0\\xaa$r\\xb8@\\x9f&\\xb75H\\xa41v\\xbc$j\\xfa\\x8d\\x00\\x96)\\x0d\\xbb\\xeb\\xd3\\xa0=.dg\\xa3\\xa5\\x87\\xd4\\x14\\xb6\\x93\\x07\\xec\\xe2\\x01\\xbd\\x93\\x14\\xd2GI\\xc1:.j1F,DrzIM\\xc1\\xc2\\x82(\\x81Ah\\xdaIMQ\\x82\\x838\\xe1Ax:JM\\xf7\\xdb\\xcc\\x18\\xab\\x81\\x9a\\xae2\\x80\\xe5\\x0c\\xf9\\x88C\\xd3Wj\\x8a\\x92w\\xcc\\xd9m\\x17\\x9e\\xd6R\\xd3=\\xb4q\\x97\\xd2\\xb0;(P\\x19\\x06\\n\\x08\\\"\\x84\\x04qj0BX\\x10#0\\x88U\\x80\\xf7\\xd7\\xc0p\\xd57\\xbb\\xe2\\x9bA\\xed\\xc5(\\xbd\\x08\\x19\\x87)\\x13\\x98\\xa2\\xee\\xee\\xbcua\\x81\\xbem\\xa9\\xb0f\\xd1\\x9a\\x94\\xd2\\xb0\\xe3D\\xd7\\x86\\xe4\\xcd\\x82(AI\\x01\\xea\\x84\\xbc5\\x90;\\x0fA\\x02\\x80\\xd0\\x8d H\\x10\\x10&\\x0c\\x08W\\xfbw\\xdb\\x9c\\x10%OU\\xef)\\x0d\\xbb\\x8d\\xee\\xa0-a\\xca\\x9a\\xd8\\x00b\\xd5\\x14d/\\xb0F\\x1fjG\\x05\\x90R\\x1a\\xf6\\x8e\\\\\\xa3\\x99\\xd2\\xb0\\x13\\xfc\\xaf\\xde\\x9d\\xc9\\xbf\\x1b\\xa5\\x84\\x99=Ji\\xd8)n\\xac@?^\\xa0\\xc7\\x8e\\xee\\x9b\\x8b\\xf2\\xc2\\xa54\\xec\\xe4m\\xcd\\xebv\\n\\xa8\\xc9\\xd2\\x9d\\x7f\\xba4\\xec\\x836\\xfc\\xb7\\xd9\\x86W\\xf2\\xbeO\\x0dMg]r\\x11\\xca\\x1f\\x8e\\xa4\\xe5\\xc9\\x1b\\xa5\\xc2\\xdbv\\x83\\xf4\\x9e\\x06\\xab\\x8b\\x9cm\\xd6:\\xc1&[\\xf3\\x1d\\x7f\\xd9\\xcf\\xec9jJ+\\x8e\\xefY#*|u\\x90\\xb9\\x1e?\\xb2zW\\x165\\xd3IF+\\xfdo\\xd16n8w~\\xe4\\xff\\xbbg\\xd5\\xe1\\xc9\\x90\\x83\\xbe\\xeb\\xf3\\xf1\\xe45lYsU\\xaey\\xfd2\\xdf\\xfcb\\x99\\xd5l\\xd1\\xf5xq\\xf3t\\xc9\\x9a\\xec\\xe9\\xe2{\\xd6\\xbc\\xe3\\x8bN\\xb2\\xd2\\x8d\\x90Sm\\xa46\\xc7\\x8ar\\xbc\\xa1\\xa3\\xba\\x16\\xd7\\xb0\\xe3\\xdd\\xc8:\\x95-\\x13\\xd8\\xb9AGXP\\x96\\x8d\\x98l\\xf0\\x8c6\\xde9\\xf3\\xe2:7VtC\\x1d\\\\V\\xd4/\\x11\\xbca\\xbb\\x8aqU\\xbb~\\x0e\\xbb\\x0d\\xcbj&\\xb0\\xb4\\xcf\\xed\\xe3\\x05\\x9f!/\\xea\\x86e\\xeb\\xf4:\\xc1\\x88\\xbc\\xdaV\\x8f_z\\x9d\\xa0\\xfb\\x8av\\xef1\\xbdN`\\xfe\\x95\\xc2.\\xbdN0$\\x9f-\\x9f\\x0e[\\xd8TI\\xaf\\x13\\x0c\\x7f\\x0c\\xe8\\x97\\xf7\\\"Vz\\x9d\\xc0\\xc1\\x91p\t)\\x96\\xf5\\xd7\\xfc:\\x81\\xb5\\xfe\\x94\\x82\\xdf10~\\x0b(\\xa5\\xe0O)\\xf8\\x9d\\x06BJ\\xc1\\xdf\\xff\\xc6g\\xa2H\\xa2]gH\tVi\\xfd\\xf5\\xab\\xb1>\\xa5\\x04\\xab\\xfe\\x18\\x10\\x08\\x9b\\xd0\\x14\\x03_\\x12\\xe9\\xaa%\\xedT!\\xc9\\xe5@\\xeb\\x13\\xf5J%Qw@\\x80\\xfe\\x00\\xef\\x01\\xa7\\xa3\\x00\\xb1\\x83o\\x87\\x1f\\x12\\xe9\\xd4\\xd8\\xa7\\x00i@\\xa0D8\\x05]\\x85\\x0c\\x99\\x17\\x9a\\xe8SS\\x13u\\xa0 |\\xb0 t\\xc0\\x88gV\\xb4\\x08\\xe5J\\xa3\\xd71\\xd3~H\\xef\\xa8\\x0fn\\xe9\\x13\\xd9\\x0f\\xa5)\\xa2%^Q\\xa7\\x04\\xab\\xf4-\\xf4\\xabH\\xb0\\x9aR\\xf0\\x87\\x96L\\x16bG\\xc9BL\\x16\\xa2\\x8b\\x88\\xba\\x03\\x02\\xf4\\x07\\x04\\x18\\x1e\\x01b\\x07\\xfa\\x1e )Y\\x88\\x04\\xa2\\x0e\\x14\\x84\\x0f\\x16\\x84\\x0eX\\xb2\\x10G\\x14\\xd1\\x12\\xaf\\xa8\\x93\\x85H\\xdfB\\xbf\\n\\x0b\\xf1g\\x0c\\xf6N)\\xf8\\xc7\\x94R\\xf0\\xa7\\x14\\xfc\\xbe\\xef\\x82\\x1a\\x00\\x81\\x8d\\x80\\x94\\x82_\\x12Q\\x01\\x0cI+\\x84\\xa0,\\xf7)\\x05\\xbf\\x9fR\\n~\\x9c\\xa8ak8\\xa5\\x14\\xfcn\\x9a\\xd0 \\x9fI\\xd0\\xa7\\x94\\x82\\x9fj\\x82\\xf7)\\xe2\\xa0\\xae)Bz\\x10)A\\x08=\\xc0k\\n9@\\x0d)|eh\\n\\x1dp\\x88\\x1ft\\x88\\x1d\\xf8\\xa8\\x03\\xbf\\xa6\\x80\\x83\\xbf&\\x7f\\xc8#N\\x11r\\x89\\x90\\x07=h\\x12\\xa7\\x94\\x82?\\xacia\\xd7\\xdc%Q#?\\xc9\\x0c\\xe9)\\xeahq\\xa38\\xdd\\x878}\\x91\\xa78\\xddG\\xcbR\\n\\xfe\\xc0\\xc6\\xa5\\x14\\xfc\\x06\\xdd}\\xbfbNg!\\x01\\xc0$\\x86\\xb6 a\\x9cR\\n~;\\x91\\xbc~\\x9ab\\x8cC:\\xca\\xae)\\x1dJ\\x02\\x96\\xa3\\xa4t(\\xb1R\\xf8\\x92\\xd0\\x14:\\xe0\\x10?\\xe8\\x10;\\xf0\\xf7}(I)\\xf8\\xbd)6p\\x8a\\x9e\\x18\\xb4\\x88\\xa4>\\x85&\\xe9\\xc0)0u\\x07N\\x81\t=p\\xa2\\xa7\\xf9\\xc0)*\\xf9\\x07N\\xe1\\xa70I\\xc4\\x1c\\\"\\x81\\\\I\\x19Gp\\n\\xf6\\xee\\xf7)z>G\\xab9\\x82\\x0fuL\\x93\\x9b\\x19\\x06\\xaaJ\\\"\\x87\\x0b\\xf4ir[\\x83D\\x1ac\\xc7K\\xa2\\xa6^\t`\\x99R\\xf0\\xbb>\\x0d\\xda\\xe3Bv6ZjPMa;y\\xc0.\\x1e\\xd0;I!}\\x94\\x14\\xac\\xe3\\xa2\\x16c\\xc4B$\\xa7\\x16\\xd5\\x14,,\\x88\\x12\\x18\\x84\\xa6\\x1c\\xd5\\x14%8\\x88\\x13\\x1e\\x84\\xa7\\\"\\xd5t\\xbf\\xcd\\x8c\\xb1\\x1a\\xa8\\xa9J\\x03X\\xce\\x90\\x8b:4u\\xa9\\xa6(y\\xc7\\x9c\\xddv\\xe1)M5\\xddC\\x1bw)\\x05\\xbf\\x83\\x02\\x95a\\xa0\\x80 BH\\x10\\xa7\\x06#\\x84\\x051\\x02\\x83X\\x05x\\x7f\\x0d\\x0cW}\\xb3+\\xbe\\x19\\xd4^\\x8c\\xd2\\x8b\\x90q\\x982\\x81)\\xea\\xee\\xce[\\x17\\x16\\xe8\\xdb\\x96\\nk\\x16\\xadI)\\x05?NtmH\\xde,\\x88\\x12\\x94\\x14\\xa0N\\xc8[\\x03\\xb9\\xf3\\x10$\\x00\\x08\\xdd\\x08\\x82\\x04\\x01a\\xc2\\x80p\\xb5\\x7f\\xb7\\xcd\tQ\\xf2T\\xf5\\x9eR\\xf0\\xdb\\xe8\\x0e\\xda\\x12\\xa6\\xac\\x89\\x0d VMA\\xf6\\x02k\\xf4\\xa1vT\\x00)\\xa5\\xe0\\xef\\xc85\\x9a)\\x05?\\xc1\\xff\\xea\\xdd\\x99\\xfc\\xbbQ\\xca\\n\\xd9\\xa3\\x94\\x82\\x9f\\xe2\\xc6\\n\\xf4\\xe3\\x05z\\xec\\xe8\\xbe\\xb9(/\\\\J\\xc1O\\xde\\xd6\\xbcn\\xa7\\x80\\x9a,\\xdd\\xf9\\xa7K\\xc1\\xdf&\\x13\\xefd\\xa6\\xf3\\x8f\\x9f\\xe6\\xc5J\\x04\\xef\\xd5\\xdb\\xb2\\xfe\\xa6^_\\xc3\\xef\\x16\\xbf\\xff\\x9f)\\xd7\\xf8\\x88\\xbc\\xd3JO\\xaa\\x94k\\xbc\\xfb\\x8av\\xc1+\\xe5\\x1a7\\xffJa\\x97r\\x8d\\x0f\\xc9g\\xb4$\\xab\\x12\\x9b*)\\xd7\\xf8\\xf0\\xc7\\x80~yo\\x9c\\xa4\\\\\\xe3\\x0e\\x8e\\x84\\xdb\\x16\\xb1\\xac\\xbf\\xe6\\\\\\xe3\\xfe\\xbd|X\\x81~\\xa4\\xa8\\xac\\xf2\\xcb\\xbc\\xc8\\xd4F\\xdb~\\xa6A\\xed#\\x84\\x95\\xec,\\xb7&3n\\xdb\\xbe\\xea\\xbf\\x97\\x84\\x148.\\x0c\\x10\\xf2\\x08\\x9a+^\\xb7\\xcab\\xf6\\x99\\x8b\\xac\\xfe|\\x04\\xcb}\\xa3\\x0d\\x84\\xd37\\x7f>\\x82[L\\x85\\xa9\\x87\\x9a o\\xa0)\\x87ucUs\\xdbd\\xc9\\x9a\\x86U\\xf0\\xe9\\xdf\\x1d\\x06v\\xc8-\\x8c\\x94\\x86\\x1dR\\x1a\\xf6\\x94\\x86\\xddg;\\xa54\\xec\\xfdo|\\xd6\\x9b$ZH{J\\xb2I\\xeb\\xaf_\\x8d\\xf5)%\\xd9\\xf4\\xc7\\x01@\\xd8\\x84\\xa6\\x9c}$\\x91\\xae\\xdb\\xd1\\x0e\\\\\\x92\\\\N\\x94>Q\\xaf\\xd5\\x11u\\x07\\x04\\xe8\\x0f\\xf0\\x9e\\xfd:\\n\\x10;\\xf8v\\xf8!\\x91\\x0e\\xd4}\\n\\x90\\x06\\x04J\\x84S\\xd0u\\xb8\\x90y\\xa1\\x89>55Q\\x07\\n\\xc2\\x07\\x0bB\\x07\\x8cx\\x9cG\\x8bP\\xae\\xb5y\\xc1\\xf9\\xf6CzG}HT\\x9f\\xc8\\xbe\\x08M\\x11-\\xf1\\x8a:%\\xd9\\xa4o\\xa1_E\\x92\\xcd\\x94\\x86=\\xb4d\\xb2\\x10;J\\x16b\\xb2\\x10]D\\xd4\\x1d\\x10\\xa0? \\xc0\\xf0\\x08\\x10;\\xd0\\xf7\\x00I\\xc9B$\\x10u\\xa0 |\\xb0 t\\xc0\\x92\\x858\\xa2\\x88\\x96xE\\x9d,D\\xfa\\x16\\xfaUX\\x88?c\\xc0oJ\\xc3>\\xa6\\x94\\x86=\\xa5a\\xf7}\\x17\\xd4\\x00\\x08l\\x04\\xa44\\xec\\x92\\x88\\n`HZ!\\x04e:Oi\\xd8\\xfd\\x94\\xd2\\xb0\\xe3D\\x8d\\xe8\\xc3)\\xa5aw\\xd3\\x84\\x06\\xf9L\\x82>\\xa54\\xecT\\x13\\xbcO\\x11\\x07uM\\x11\\xd2\\x83H\tB\\xe8\\x01^S\\xc8\\x01jH\\xe1+CS\\xe8\\x80C\\xfc\\xa0C\\xec\\xc0G\\x1d\\xf85\\x05\\x1c\\xfc5\\xf9\\xa3Aq\\x8a\\x90K\\x84<\\xe8\\xf1\\xa48\\xa54\\xecaM\\x0b\\xbb\\xea,\\x89\\x1a\\x14KfHOSF\\x0b\\xa9\\xc5\\xe9>\\xc4\\xe9\\x0b\\xca\\xc5\\xe9>Z\\x96\\xd2\\xb0\\x076.\\xa5a7\\xe8\\xee\\xfb\\x15s:\\x0b\t\\x00&1Li\\xd8q\\n\\xb7\\xc0H^?M1\\xc6!\\x1de\\xd7\\x94\\x0e%\\x01\\xcbQR:\\x94X)|Ih\\n\\x1dp\\x88\\x1ft\\x88\\x1d\\xf8\\xfb>\\x94\\xa44\\xec\\xde4\\x0b8EO\\x0cZDR\\x9fB\\x135\\xe0\\x14\\x98\\xbe\\x01\\xa7\\xc0\\xa4\\x0e8\\xd1S=\\xe0\\x14\\x95\\x00\\x02\\xa7\\xf0S\\x98$b\\x1e\\x89@\\xae\\xa4\\xac\\x138\\x05{\\xf7\\xfb\\x14=\\x9f\\xa3\\xd5\\x1c\\xc1\\x87:\\xa6\\xc9\\xcd\\x0c\\x03U%\\x91\\xc3\\x05\\xfa4\\xb9\\xadA\\\"\\x8d\\xb1\\xe3%Q\\xd3o\\x04\\xb0Li\\xd8]\\x9f\\x06\\xedq!;\\x1b-=\\xa4\\xa6\\xb0\\x9d<`\\x17\\x0f\\xe8\\x9d\\xa4\\x90>J\\n\\xd6qQ\\x8b1b!\\x92\\xd3Kj\\n\\x16\\x16D\t\\x0cB\\xd3Nj\\x8a\\x12\\x1c\\xc4\t\\x0f\\xc2\\xd3Qj\\xba\\xdff\\xc6X\\x0d\\xd4t\\x95\\x01,g\\xc8G\\x1c\\x9a\\xbeRS\\x94\\xbcc\\xcen\\xbb\\xf0\\xb4\\x96\\x9a\\xee\\xa1\\x8d\\xbb\\x94\\x86\\xddA\\x81\\xca0P@\\x10!$\\x88S\\x83\\x11\\xc2\\x82\\x18\\x81A\\xac\\x02\\xbc\\xbf\\x06\\x86\\xab\\xbe\\xd9\\x15\\xdf\\x0cj/F\\xe9E\\xc88L\\x99\\xc0\\x14uw\\xe7\\xad\\x0b\\x0b\\xf4mK\\x855\\x8b\\xd6\\xa4\\x94\\x86\\x1d'\\xba6$o\\x16D\tJ\\nP'\\xe4\\xad\\x81\\xdcy\\x08\\x12\\x00\\x84n\\x04A\\x82\\x800a@\\xb8\\xda\\xbf\\xdb\\xe6\\x84(y\\xaazOi\\xd8mt\\x07m\tS\\xd6\\xc4\\x06\\x10\\xab\\xa6 {\\x815\\xfaP;*\\x80\\x94\\xd2\\xb0w\\xe4\\x1a\\xcd\\x94\\x86\\x9d\\xe0\\x7f\\xf5\\xeeL\\xfe\\xdd(%\\xcc\\xecQJ\\xc3Nqc\\x05\\xfa\\xf1\\x02=vt\\xdf\\\\\\x94\\x17.\\xa5a'ok^\\xb7S@M\\x96\\xee\\xfc\\xd3\\xa5a\\x1f\\xb4\\xe1\\xbf\\xcd6\\xbc\\x92\\xf7}jh:\\xeb\\x92\\x8bP\\xfep$-O\\xde(\\x15\\xde\\xb6\\x1b\\xa4\\xf74X]\\xe4l\\xb3\\xd6\t6\\xd9\\x9a\\xef\\xf8\\xcb~f\\xcfQSZq|\\xcf\\x9aw|\\xb67\\xa2\\xda\\x8f\\xac\\xde\\x95E\\xcdt\\x8a\\xd1J\\xff[\\xb4\\x8c\\x9b\\xcd\\xfc\\xaf\\xffw\\xcf\\xaa\\xc3\\x93~I\\xc5\\xee\\xe3\\xc9k}\\xd7g\\xcb\\x9a\\xabr\\xcd\\xeb\\x96\\xb9\\xe6\\x17\\xcb\\xacf\\x8b\\xae\\xb7\\x8b\\x9b\\xa7K\\xd6dO\\x17-\\xa3\\xd6\\xb8>e\\x8dn\\x89\\x9cm#\\xcd9\\xd6\\x95R;\\x0em\\x0ftRb[\\x14v\\x88\\xc6\\x94\\xfcH\\xb9[\\x94\\xbaM\\x99[t\\x82u\\xf1XN\\xa6\\x8e\\xad\\xc4\\xb5\\x8d\\xf0b\\xe7\\xfb\\n\\xdd\\xe4=\\xeb\\x97b\\xd4\\xbe\\x84O\\x1f\\xdf=\\xa9X]\\xee\\xab\\x15\\x83\\\"\\xdb\\xaa\\xa5\\xb4/\\xf2\\xbf\\xed\\xd9\\xe6\\x00|}5\\xf9E\\xae\\xcee\\x8d\\xca\\xbfb\\x8bM\\xa8Y\\x95g\\x9b\\xfc\\xefl\\x8d\\xdf \\xdbUeS\\xae\\xca\\x0d,\\xf7\\x17\\x17\\xac\\xd2\t\\\\\\x162W\\xa8\\xec\\x0bl\\xf7u\\xbb\\xce!k`\\xc3\\xb2\\xba\\xc1\\xf9\\x95\\x05\\x83\\x07O\\x1e\\xc0\\xea*\\xab\\xb2U\\xc3*\\xce\\x89\t\\xeb\\x18jv\\xb9eE\\xab\\x84>}|\\xf7\\xb0\\x86]\\xd6\\\\\\x89\\nPv\\xedmy\\xbc6\\xce\\xe6b\\xbf\\xd9\\x1c\\xe0o\\xfbl\\xc3\\xa5\\xb2\\x962SU\\x08\\xe9<\\xcaj\\xc8\\x0b\\x9c\\xc1g^\\xfd\\x93\\xcb\\xb2\\xbc\\xdc\\xb0\\x85\\x90\\xc5r\\x7f\\xb1x\\xb3\\xaf\\xc4\\xb5\\xbb\\xcf\\x8fe\\xeb\\x05\\xcb\\xfa\\xaa\\xdco\\xd6\\xb0\\x14\\xc9m\\xf0K\\x14\\xab\\xac(\\x8b|\\x95m\\xc4\\x02\\xc1k|\\xc4\\x16\\x97\\x8b#.Bq\\x81\\xf0\\xc1\\xe2\\x01W\\x15\\\"\\x07\\xecj\\xc5v\\x0d[?^\\xfc\\n/z\\\\\\xc0\\x8e\\x0b5_\\xb1#hX\\xb6\\xada_\\xef3\\xde}\\x99?`\\x97ox\\xeb\\x9aR\\xa6Z\\xcd\\x8b\\xac:@\\xb6\\xd9\\xe0\\xb2;\\xec\\x98\\xca\\x03\\xdb\\\\\\xb1\\x03^%\\xfb\\xb2c+\\x9drx_\\xeb\\xc4>b2\\xb0/b(_\\x16\\x87\\x05\\xfcP\\xde\\xb2\\x1bV\\x1d\t\\x0d\\xf7\\xe9\\xe3;\\xfcp/\\xed\\x01\\xce\\x86OW|\\xbe\\xae\\xae\\xd8\\x96\\xc1\\xe7\\xab\\xa6\\xd9}>\\x92\\xff_\\x7f\\x16Y\\x11\\x8aR\\xfdz$f\\xd9*+\\xa0\\x14\\xabIH`\\xbc\\xa1H\\xda\\xefT\\x96\\\"K}\\xac\\xbaa\\x95\\x14\\xc36\\xdb\\xa9\\xdc\\xcc\\xbc\\x07\\xe2\\xd8\\xa7\\xd2\\x19\t$$\\x97\\x19m3\\xbco\\x17\\xe5fS\\xde\\xd6\\xcf-c\\xf7\\x1b8\\xbe\\xe8z\\xc0\\x87|W\\x95|\\xb3\\\\\\xb7\\x9d\\x14\\xdbt]\\xef\\xb7lmI\\x87\\xf4\\x1bxY\\xc0\\x0fgg'\\xf0\\xfd\\xdb3\\x95\\x06\\x98\\xb7U.\\xd0\\x83\\xd8\\xc4\\xf0\\x99\\xf9\\xd7\\xe1\\x14?;\\xec\\xd8O\\x7f\\xfd\t\\xfdX\\xe8\\xf2\\xbd\\x18k5\\x87\\xa4\\xbe\\x17\\xa3\\xb0\\xab\\xca\\xf5~\\xc5 +\\x80UUi\t\\xef\\xfe\\x0d\\xbc\\xecn\\xaf\\xd6\\\"\\xa3q\\xc6\\xe5#\\xf7\\xd6U\\xb6\\xe2:\\xa1,\\xaf\\xf7;P\\xf7\\x16\\x80onk(\\x0b\\xdbB\\xb74\\xf5\\xd3\\xc7w\\xa2]W\\xd9\\x8d\\x98V[c-\\xac\\xe5b\\xc8t7\\xf8\\x7f\\xdf\\x94\\xf9\\x1a\\xb2\\xc2\\x06\\xe1\\xcaF\\x89e_\\xb1\\x8b\\xb2bG\\xba0\\xe7\\x995\\xf92\\xdf\\xe4\\xcd\\x01\\n\\xc6\\xd6\\xb5\\xb4\\x13@\\xa8\\xa8\\xea\\xc6\\x1aQS\\x16\\\\\\x1d\\x16\\x97L\\x14\\x10\\xebn\\x01\\x8f>\\xd5L_\\xac\\xe7R\\xe1\\xd3\\x8e\\xeb\\x199\\xef\\xb2\\\"\\xbb\\xb4\\xf5xY\\xb1\\xec\\x9a\\xeb\\x0e\\xc5t\\xf1\\x18\\x9f-\\xef\\xcb\\x86=\\x97\t\\xc7/\\xf6\\xc5J\\xae\\x14\\xdev\\xa5oV\\xfb\\xaabE\\xb39\\x18\\xb8\\x9e\\xe3\\xf6tyq\\x91\\xaf\\xf2l\\xe3\\xd8G\\x96\\xfb\\x0b\\xa8\\x18\\xdf\\x1d\\xd8\\x91\\xb8\\xd3\\x9c7\\xba\\xb2=\\x1f\\\\a\\xfe\\xb4\\xebk\\xc9.\\xf3\\xa2\\xb0\\xd9\\xba\\xdcz\\xb3(\\xfd\\xc3\\x8e-\\xe4|\\xcevy\\xbdX\\x95[\\x9b\\xc6<\\x15\\xab\\xad\\x86\\xb2\\xb9\\x92\\x8b\\xbc\\x18j\\x16x\\xa4L2\\xb6\\xdd5\\x07\\xb5<\\x1f\\xa3\\xcc\\xb6\\x02\\xf9YZ\\x14\\x89\\xe8\\xa009\\xf3\\xedn\\xc3\\xf8F'&?\\xd4;\\xb6\\xca/\\xf2\\x15\\xd4l\\x9b\\x15M\\xbeB\\x02\\x8f\\xc4z\\x8b0)B\\x8e\\x03\\x16\\x8b\\xe3G\\xae:\\x96Lg\\x0f1\\x0c\\x86\\x91m\\xa0\\xef\\xa5/\\xcb\\x1b\\x8b\\xb1!\\xbb\\xaa\\xa6\\xf3\\xb0\\x9b\\xbe\\xd6|~Y\\x1c>w\\xc7\\x89\\xac\\x80\\xacZ\\xe6M\\xc5\\x17\\x9f\\xa3UJG\\x8f\\xd8e\\x9b\\xb2\\xb8\\x94#\\x92\\x8d\\x87\\x8ckM\\xa1\\xf4e\\xab\\x96cs\\xca\\xacS[E\\xc84;\\xd1\\x13\\x7f\\x93/ES\\x95^\\xaf\\xa1\\xde\\xefve%v\\xce]\\xb6\\xba~\\xb2/\\xf8\\xff\\xf1\\xfdR\\x8e\\xb7\\xb0J\\x86\\xec\\x84E\\x83\\x1a\\x0f\\xe5\\x05\\xec\\x1b\\xa9|\\xf4r\\xae\\xb9\\xe2\\xcb\\xd6\\xeb\\\\\\xaem\\xb8d\\x05\\xab\\xb2F4\\x98\\x1f\\x1d\\xdaT\\x02/\\x11}'\\x87h\\\\\\xcf\\xdb/\\x19\\x9f\\xc0\\xf0\\xf49\\x9c\\xf0\\xf6\\xf2u\\xac\\x9a\\x9e\\x99\\xf9\\xfd^\\xff\\xf6\\xb7\\x96m\\xea\\xbb\\xb2\\x84\\x8b\\xb2\\x84\\x17\\xb0X,\\xfe7\\xfa\t\\x17BV\\x1c\\xf0\\x1f\\xb3\\xe2\\xb0\\xe0U\\x7fW\\x95\\xdbG\\x17e\\xf9\\x18\\xffl\\xb1\\xc0\\xf7\\x9e\\xfc\\x02\\x1eq\\x16\\x9fD\\xa3\\xcf\\xcaG\\xbf\\xe6<\\x1e\\xc3\\x7fY\\xf4\\xa9\\x8d\\xcf?\\xec\\xb2y\\xe6\\x91\\xcd\\x9f\\xb2\\x9bl\\xb2p\\xe0\\x85\\xb0\\xad8\\xf7\tR\\xc8\\xebG\\xdf\\x95\\xe5b\\xb5\\xc9\\xea\\xda!\\x04\\xd9$^@\\xf6\\xc7(\\x84\\xd7\\x8bH\\xa7\\x15\\xcf\\xb7\\x1e\\xf1\\x9c\\x1c\\x9a\\xab\\xb2\\xb0\\x08H\\xb6\\xe4\\xbb\\xb2|\\xb4X,pM\\xdc\\n\\xe7\\x91\\xf5w1\\x81\\x84\\xd8B\\xa5\\xc6\\x0b\\x1fK\\xa1\\xbdy{\\xfa\\xfa\\xe3\\xf1\\xc9\\xd9\\x87\\x8f\\x8fm\\x98M7\\xd1\\xec\\x95\\xc9\\xea\\xec\\xe2\\xfa\\xbdG\\\\\\xdf\\x97\\x96\\xec\\x1f\\\\T\\xcf_\\xc0\\xafw\\xcb\\xc5we\\xf9_\\x8b\\xc5\\xe2\\x1f\\xf8\\x87Yq8\\xe2\\xe6\\x1a\\xff:+\\x0e\\xbb\\xe5\\xe2=\\xbbu48\\xbf\\x10_\\xff\\x8f\\x17P\\xe4\\x1b\\xeb\\x9c\\xb1J\\x11,\\xcd\\xb0~?\\xe8\\x88\\xa5\\xb8j\\x95\\xec\\xc3\\xe2S\\xb1\\xcd\\xaa\\xfa*\\xdb\\x9c\\x95ryLm\\xf2\\xe8\\xef\\xfc\\xe8'FCkSm\\xb2\\xc3\\xf2\\xd0\\x19<Z\\xef\\xcb\\xa7@\\x0e\\x1aF\\x1dq\\xdb\\xd7\\x88\\xe5\\xf0\\x101f\\x9e\\xf0\\x13\\xedB\\xfc\\xc0\\x0d\\xc2\\x87\\x90\\x19{\\x13\\xdf\\xb7T\\xb6\\x98q\\x0db\\xee\\x8c+i7\\x83bs\\xd0\\xa7\\xaf\\xd1\\xb1\\xb95@!\\xbbh\\x98\\xb4\\x89\\xf8\\xa9}\\xdc\\xe4'\\x0f\\xc7U\\xa8c\\xa1n\\xa2<\\x0725\\xbf\\x1f\\\\\\x94\\xe5b\\x99U\\xa2s_\\x9e\\x1c\\x16\\x7f\\x7f \\xa5%O,\\xf8\\xe1L4\\xe5\\x01\\xff\\x96oR\\xa3\\x9f\\xfft\\xfa\\xe1\\xfd\\xf8\\xaf/^\\xbcx\\x81\\x8f#\\xff\\xbeC\\x13\\xa4eV\\xf2\\xc5\\xae\\xcc\\x0ey\\xe2\\xd9\\xd7L\\xc3v\\x97\\xfbM\\x86d\\xd3\\x1b\\xb3\\xe0\\x9f\\xafYg,\\x1c\\x01\\xdb.\\xd9z\\xdd\\x99\\x0d\\n\\x8a\\xcc\\x10\\x0c\\xc2\\xd8\\xbc%\\x06\\xf9\\xf9_\\xb98>\\xab\\xa3r\\x0f[\\xd5\\xc2]h\\xc5\\xf1\\xdcb\\x8ag\\xabk\\xae9\\xba#\\xdfE\\xbea\\xb8\\x16\\xd7Z\\xe6\\x84UuYX\\x97\\x8d\\xc2\\x81\\xc4\\xcb2\\xe7bd^\\xc0S\\x9cc\\xfb\\xb1p\\x88\\xaao\\x9f\\xd1\\xf7\\x10\\x00k+\\x1e\\x08\\xd9<x\\x0e\\x0f\\xb0U\\xd3\\xef\\xeeB\\xf6\\xe8\\x01\\xf6\\x86\\x93\\xe0%\\xfa\\xf2>\\xdbr~\\xffG6\\xf9_\\xac\\x1f\\xf3\\xbe\\x0c\\xbe\\xa5v\\xe8\\xf8B\\x1d/\\xfasB\\x8ef^\\xc3-\\xdbl\\xbe\\xb9.\\xca\\xdbB\\xac\\xeb+\\xf1\\xac\\xd4j_7\\xe5\\xd62\\xc9\\xfbS\\xf0H\\x9a\\xb1\\x83y\\xa9\\xdf%j\\xab\\xe5\\x13\\xad\\xb8D\\xd0\\x011\\xed\\xc6\\x95|\\x16\\x0bB\\xcf\\xc3\\xabr\\xb3V\\xd9\\xba\\xba\\x96\t\\x1cL\\xcd_P\\x98\\x93\\x9a\\xbec~\\xa2\\x9av\\xe6\\xc2#\\xae\\x1f\\xb4(F\\xe0\\x84\\xc6\\xdf~\\xfa\\xebO\\x8f-\\x93|\\xea\\x1c\\xe9Wd\\x9f&B\\x0c\\x9c\\xdd\\xd3\\xc5\\xb3\\xa7\\xcf\\xea\\x07\\x96a7\\xff\\xe5\\x8a\\xd2p\\x9c\\xe7\\xecn_o\\x08J\\x04\\xd7\\xdea\\xacu\\x1bh\\xafEc:+Z`\\xff\\x9b\\x9a\\xb5\\x0e\\xa2]v\\x99\\x17Bv]cz<\\xbb\\x0f\\xda8\\xa2\\xac0\\xff\\xaa\\xd9k\\x0fI\\xb7/7\\x184\\x8f\\x83\\xf2\\\"\\x8f\\xc9\\x08\\xdd\\xb7\\xca\\xc3z^\\xb6{\\x99\\xc0\\xa8E\\x8b\\x87\\xff\\xa7\\x82~\\xb2\\xba\\x96\\x98\\xd6Iv\\xc9>\\xb2\\xbf\\xedY\\xdd,\\xe4\\xef\\x03&\\x7f\\xdb\\xb3\\xea \\x8asv\\\\\\x12\\x0c\\xb6e\\xdd\\x00\\x13\\xc0\\x8a@b\\x16p\\xdc\\x18kw\\xd7\\x1c \\x1fF\\xab4\\xed\\x1baE\t\\xdb\\xb2b\\x1aA3\\x0d\\x1b$\\x10\\xc1+\\x14$\t\\xa0-nL\\xb0\\x17\\xd2\\x10\\xffQ\\xec\\xb7K\\x89\\x0fh0\\xcf@\\x94\\x86\\xed7\\x05\\xb5*\\xf7Es.\\x98\\x0c\\x97\\xf9mVC\\xcd\\x9a#\\xc8\\x9bZ\\xe3\\x915\\xec\\x0b9\\x99\\xd6\\x12\\xd2\\xb9\\xcdU\\x0c\\x1a>~N\\xbf\\x98\\xd3C\\xa7\\x18\\xb4~:\\x93\\xc1\\xab\\x83|\\xd4\\x0d>\\x9e\\xbc\\x0e\\xf2\\xd1\\xbd/\\xd7\\xec\\xb8\\xb8(\\x83=s\\xca\\xa4</\\xca5;\\xcf\\x8b\\x8br\\xe8a#\\xad\\x15\\x0d\\x9c\\x9c\\xa3\\xe9<QFvf\\xe2\\x97g\\x88\\xd3\\xdc\\x89X9\\xa6\\x9a5#g<C4\\x87f\\x1c\\xbb\\xfe\\x08\\xacI+k\\x93\\xd7\\x0d+D\\x0c\\x03\\xe9\\xfb\\x825\\xb7euM\\xfa\\xd61\\x84\\xa3oWWYQ\\xb0MM\\xfa\\xd8\\xaa#\\xb7e\\x91_\\xe3o\\x95\\x8f\\x98\\x88\\xb59yz5_l9\\xc5\\x1dcX\\xedVA\\xcf\\x88\\x1aI6\\xc7\\xeb\\\"`qqC\\x97$\\x9bl\\xb7;'\\x7f\\x1c2\\xcc\\x97\\xb9+\\xfep\\xf4\\xf9r\\x9fo\\xd6\\xe7MvI\\x9b\\x17\\x97\\xa5KmX\\xb8\\xaf\\xd9\\x0e\\xe5>\\x8e\\xfaB#\\xbe\\xacs\\xc6\\xed\\xa2\\xdfe\\x0d\\x1a\\x1b\\xe7\\\\\\xf9\\xed^\\xb7-\\xd7\\xfb\\x0d\\x13LF\\x1f9\\xf2 \\x071W|F\\xdf\\xd5xX\\x19\\x8d\\xf7\\xea\\x8a\\xad\\xae\\xeb\\xfdv(D\\xf9\\xeb\\x8f\\xb2\\xe6\\xa1}\\xf7\\x17\\xd9\\x92\\xe3~\\xde+\\xb9\\x95\\x9d\\xd7\\xeb\\xeb\\xa0Ao+{x\\x9a\\x17+\\x91X\\x8b\\xf3\\xf9\\xa6^_\\xc3\\xef\\x16\\xbf\\xff\\xf6a\\xfbm\\xdf\\xfa\\xec\\xda\\x80\\xda\\x9f\\xc8\\xce\\xd9\\x01\\xf2#n\\xe6\\xe6?*F\\x0b\\xca\\xd1\\xc5D,\\x8ed\\x16\\xb2\\xcd\\x9f\\x1e\\x8aU^\\\\\\x06\\xef\\xf2\\xb5,7T?\\xcb\\xb2\\xdc\\xb0\\xac\\x18\\xf7\\xd4\\x8c@\\x1a\\xd4I\\xec\\xa8*\\x15\\xd9O\\xcc&\\n\\xeet\\n:\\xd2%R\\xd0Q\\n:JAG\\x90\\x82\\x8eR\\xd0Q\\n:JAG\\x92R\\xd0Q\\n:\\x12\\x92JAG&\\xa5\\xa0\\xa3\\x11\\xd1\\xe3jR\\xd0\\x11\\xf6I\\n:JAG)\\xe8hL)\\xe8(\\x05\\x1diJAG)\\xe8(\\x05\\x1d\\xa5\\xa0\\xa3!Q\\xe7H\\n:JAG\\x06\\xa5\\xa0\\xa3\\x7f\\xd2\\xa0#\\x97g\\xec\\x9e\\xc3\\x8e~0\\x12\\xde\\x8c\\xa6\\xf8xz\\x8fC <o\\xf9\\x06,\\x1b$\\xbe'|z\\x8cbzBY\\xd8\\x01!\\xda\\xfb\\xb4@}w\\xd6\\xf2\\xb2,\\xf5\\xedX\\xf4M\\xd8\\xbe \\xf0\\xd7a}\\xef\\xbf\\x8e_xED\\x18\\xed\\x90\\xed\\xbf\\xa5\\xea,6\\xcc\\x96by\\xf14`\\x86\\x8d\\xb3\\\"yg\\xc7@);\\x13E\\xa1-\\x01w\\x0c\\x13\\x9e\\x10Jr\\\"$\\xde\\x1a\\xc5\\xb4\\xe1\\x89\\x9f\\x1c{\\xb1c\\xffq&xB\\x13;\\xd9\\xdf\\xbct\\x8et\\xaff\\xff\\xcb\\x94\\xc8\\xdb\\x93T\\xf6\\xd6'\\x0d\\xa9\\x0c\\x86\\xed\\xf3>\\xce\\xd8{\\x94\\xc0\\xfd\\xac\\\"\\xb5\\x0d\\xb6\\xc7\\x0f\\xa9\\xe5\\xc7O\\x14RK:\\x1e\\x12\\xa4\\xb2\\xb0<\\xf7G-\\xee~\\x94og}v\\x0f\\xe5o\\xd7\\xf5CFzW.\\xab\\x9c\\xdb\\x8aJ1\\xc30e\\xd0\\x91jr\\xc3\\x0f7\\xa6K6\\x83W\\xfd|A\\xc6o\\xc7\\x85\\x91\\xff\\xf2H\\xfa\\xc6\\xf4A\\xec3\\xefz\\xfd\\xf9\\x08\\x96\\xfbF\\xe3\\x19\\xa7o\\xfe|\\x04\\xb7L\\xa7#\\x92~p{]fU|oZ\\xb2\\xa6a\\x15|\\xfaw$8*\\xe4\\xa1\\xbf\\xd1#~\\x1eKCF\\x98\\x91-\\x8d~\\x94\\x1e:|\\xd6\\x88<K\\xa0\\xa6\\xb3x?\\xe6\\xae\\x17i\\xe7*\\xdd\\x8b\\xaa\\x0b\\x89\\xa5\\xf3H\\xeb\\xa4*\\xcb\\x8b\\x0f;\\xb2\\xb8\\xc4'\\xae\\x16\\xf7\\xce#\\xd4\\xd5\\xc65mh)|Q\\xa9\\xfe\\x98\\xc7.\\xde\\x05y\\xeaj\\xfd\\xb0\\xabl\\xb3\\xdao2\\x91U\\xf3GV]o\\x18Te\\xd9\\xc8\\x80\\x17c\\x07X\\x95\\xfb\\x0e\\x1fX2\\xc3'\\xa7\\x83\\x02$*\\xca\\xf9\\x14\\xac\\xae\\xd9\\x8a\\xff&,(\\x13\\x03,\\xb8\\x15\\xb3,\\xf7F\\x87\\x8ar\\xdd\\xe2~\\\\Cu\\xce(\\xe9\\xb9>3Wg\\x06\\xeb\\xbd\\xb4\\xb2Z\\xff\\x9c\\xee\\xa78\\xcd\\xcb\\x0f\\xf5\\xe1\\xa0\\x0b\\xf7\\xe9\\x16\\x11a\\xdd(\\x8e5y*\\x94\\xbb;\\x0ev\\xeb\\xcf5\\x93\\x05baX\\xa3\\xdc\\x9c\\xc8\\xc0\\xf8,\\xdc\\x9b\\x89\\xb1|\\\\\\xde\\xde\\xe93t\\xd4\\xe0\\xfe<\\x95\\x14=[{\\\\\\xcc\\x99\\xdb\\x9b\\xb3\\x92\\xfa3W\\xd2\\x8c\\xf3WR\\x7f\\x16\\xdb\\x8e\\xbbz\\xfa\\xf2\\xfa\\x94\\xc0v\\xfcO-\\xdb\\xa5\\xc4\\x1f6y-\\\"\\xb7\\xf4\\xf7\\x8b\\xa8uW[\\x1a\\x8e\\xb5\\xd8\\xb3\\xee\\xda\\xb35y\\xe1Q\\x8c\\x8eQ\\xe0'\\xba\\xf6\\xf0\\x95\\xd7\\xa0a\\x9e\\xd6U\\xe0\\x0em\\x981\\xa8\\xd3\\x1e\\xce9_ \\xe7l!\\x9c\\xd6\\xe0M\\xcc\\xffD\\x0c\\xdb\\x9c+`\\xd3\\x1d\\xaa\\x19\\x15\\xa4\\x19\\x1d\\x9e)\\xfa;\\x8c*\\xb4\\x06fF\\x87dJ,\\x7f\\xc0\\xcd\\x12\\x8c9%\\x0cS\\x84\\\\\\x0e{\\x83\\xf8\\xf8bB/\\xeda\\x96\\x13\\x03,I\\xa1\\x95\\xf40\\xca\t\\x01\\x94\\x13B'\\x11\\x851c\\x80\\xe4\\xbc\\xa1\\x91\\xb3\\x05E\\xfa\\xc3!g\\x0b\\x84\\xb4\\x85@N\t~D\\x03\\x1d\\x1bJ\\x88clp\\xa35\\x9012\\x84\\x11\t^\\xb4n\\x944\\x07\\xcch\\x07\\x8d\\x0cR\\xec\\x02\\x121\\xf9\\xfe\\xca_\\xf7\\xb4\\x90D\\x19\\x82h\\xb0\\x1b\\x07#\\xce\\x10\\x868-\\x00q0\\xcb\\x87\\x9b\\xe1\\xc4\\xa0C%h\\x93\\xe3\\x94\\xf0Bg\\xec\\x9c%\\xa4\\xd0\\x1bL8\\x8e\\x08\\xa2\\x07\\x10\\x8e\\xcb\\xfe\\x03\\xebkT\\xb8 \\xa5\\xb3\\xbe\\x10A{\\xdf\\xbca\\x81\\x01\\x01\\x81\\xfd\\xa8\\x87\\x89A\\x80\\xce\\xf0?{\\xe0\\x9f+\\xe4\\x0f\\x95\\x025\\xcc\\xcf\\x17\\xe07\\x0c\\xed\\x9b\\x10\\xd4G\\x08\\xe7\\xa3\\x07\\xf2yC\\xf8\\x90H\\xb8Qu\\xc87\\xbeP\\xbdiAzh\\xa3\\x8c\\xbfL\\n\\xc9\\x1b\\x86\\xe0M\t\\xbeC\\x82\\xed&\\x85\\xd9\\x0d\\xc3\\xea\\xe6\\x0c\\xa8\\xb3\\x86\\xd2\\x0d\\xe3\\x8b\\x86\\xe1s\\xf3\\x04\\xce\\xcd\\x1627o\\xb0\\x1c-L\\xce\\x1b \\xa7N\\xd6\\xbe\\xd08\\xf5\\x993(n\\x14=6\\xae\\x8d\\x1a\\xde\\xe4\\x0e\\x81#\\x06\\xbf\\x11\\xc2\\xdezM\\x9e3\\xd4mR\\x90\\xdb8\\xa8m\\xbep\\xb6\\xf9\\x02\\xd9\\xe2G\\xd7\\x1b\\xbc\\xe6\\x0b[\\xd3Z\\x1b\\x0fUC\\xadw\\xcc\\x13\\xee\\x08L#\\xf2\\x98\\x12\\x86\\xe6\\x03\\x15;\\x1f\\x10\\x19V\\xecg\\x03A\\xfa0N\\x19\\x82|D\\xf1\\x89a)B\\x90\\xcf\\xb0\\xd4 \\x187$%\\x88\\x95[?\\x15Hs\\x07^\\x0b,\\xed\\x87\\xf5H\\xe8M\\xf7aI\\xf5Af\\x88\\xa5\\xf8@\\xd2{\\xf8\\xf9!i=B\\xdc\\x90\\xe0I\\xe7\\x816\\x80\\x92\\xc6c\\xce\\x14\\x1e\\xc6BZU\\x87]S.\\xdaG(\\xc9\\xabh\\xf4\\xf8\\xa7S\\x19\\x18P\\x00\\xf2P'\\xad\\xa8\\x0e\\x9f\tx/\\xd3\\xfd\\x1a\\xa6!\\x86\\xdd\\xb3\\xdd\\xe2\\x8d4 \\xb5\\xe0\\xc8\\x92\\xb0\\xe7\\xf9BW\\x94%Y\\xd80\\xb7\\x97u\\xa6ZC\\xf5~\t\\xf1~\\xd6\\xbc]\\x08\\x1b4_\\x17\\xf2\\xdd(OW\\xa46\\x1e\\xe7\\xe5\\xa2\\xcd;$\\x17\\x17Rp\\x90\\x83+`\\xe8\\xf1\\xbc[\\x16\\xb9[\\xf3m\\x0d\\xbew\\xcf\\xed\\x0f]c\t\\x13|\\xdc@\\xa4qh\\xc3\\xdc\\x8d:Q\\x0b\\xe7/\\xe6\\xe0\\x11\\xda\\xd3[+\\xce1\\xec\\xcd\\xcd\\xc1\\xfa\\xa0\\x17\\xec\\xad\tZ1\\xa3\\xa7\\x8d@\\xbd_u\\x95\\x13z8\\x8c\\x86\\x0c\\x98Mx\\x02)OT\\xb1\\xb5\\x0epF[\\xfe\\x923\\x08\\xfa\\xd0\\xe6\\xa9\\xd1\\xc7\\x03v\\xc2\\xd9\\x87G \\xc3\\x8cQ\\xc8\\xe0\\x8aD\\x06B42\\xa0\\x11\\xc9`\\x173\\xf66\\xaewO\\x18\\x0eF?J\\x99\\xc4\\x02{\\xdb\\xd1\\x12\\xb1\\x0cq\\xb3w\\xce\\xd0^\\xc2\\x93\\xb7\\xd6\\x16\\x82\\xb3\\x95\\xa2\\xa8\\xfd\\x99[\\xc9\\xd5\\xf5\\xc4\\xadmL4\\xdd\\xd5+\\xc0\\xde\\xe7l\\xadO\\xd9\\xda\\xa3\\x9e\\x812slq\\xd7\\x8e\\x08h\\xc0\\xa3\\xa0!\\xa2:k4r\\x0c\\xb3i\\xd1\\xd1\\xe0\\x8d\\x90\\x86\\x886\\xd9\\xa2\\xa5cx\\x8d#\\xa7c\\xb88\\xa2\\xa8c\\xd8Y\\\"\\xaacX\\xb9\\xa3\\xab\\xc1\\x19a\\x0d\\xc1\\xf5\\xcd\\x17z\\x0c\\x96XU\\x92\\x05\\xd2|A{\\x11\\x94\\x84\\x14U:\\x91~\\xe5\\xb3/*\\x03\\x9a\\x86\\x12\\xc5\\x06*\\xbd\tr\\xbb\\xfcW)\\x80\\x85\\xbc\\xf0\\xf5\\xdb\\xa7#\\x7f\\xd5\\xfb\\x0fgo\\x9f\\xcb\\xd0\\xa0\\xcd\\x86w\\x10\\xda\\xfbybm-\\x00\\xfe\\x8d=\\xac\\x18\\xfc\\xe7\\xben \\xbb\\xac\\x18\\xe3{=\\x1a\\xacQV|\\\\\\x048;\\xaaG\\x84qmYV\\xa8\\x16\\xcbf\\xbd\\xdc\\xed~\\xc8\\xea+X\\x97L\\x86\\x1a\\xa8\\x97\\x849\\xf3\\x9a\\xf1\\xe6\\x18\\xd7*\\xe5|{#\\xa3%\\x0d\\xac\\\\\\xbe\\xc4/-\\x83L\\xf9x\\xcd\\x17\\x89[\\x03F\\xb1\\xd2\\xab j\\n\\x8c\\x0bC\\xdc<\\x08N\\xdd\\xd8\\x062\\x9e\\xdf\\x94\\x0d;\\xc7\\x1b\\\"\\xc9\\xb9!\\xfb\\xb6d\\x01\\xab\\xb2\\xf3Q\\x0c\\xad&\\x0fs T\\x00\\x9a\\x8d\\xf5W\\xc2\\x16-\\xc9\\xfd\\x80:\\x88g\\xcbO\\x8f\\xbf\\x7f\\xff\\xf6\\xcd\\xf9\\x8f\\xa7\\xdf\\x9f\\x9f\\xfd\\xc7\\xc9[\\xef3\\xeax\\xa9\\x93\\x8fo\\xff\\xf2\\xe1\\xecmx)\\xcf\\xb3\\xea\\xb6r\\x1fN>\\x9c\\xbe\\xb4\\xbd\\xb0\\x0e\\x1d\\\"\\xf1<\\xa2\\x7f\\xbe\\\\V&\\x9d\\xe6\\x97\\x05[\\xffX_\\x9e\\xb51\\xb5\\x8d\\x8a\\xef\\xa8\\xc5O\\xa6[\\xd8\\x9e\\xe8NR\\xbb[X\\xb2\\xe7\\xb4d\\x95\\xffs\\xf1\\xe48\\x9e\\xc4\\xd0YZ\\xca\\xf39\\x9c\\x88})\\xdb\\xd8Y`\\x07\\x83>\\x11'\\xa7\\xcf@\\x95T\\x95\\xfbb\\xed\\xaf\\xcde\tK2\\xaa\\xfb\\xf6\\x99\\xf5;\\xfc\\x94\\xd1'\\xc2\\x1a\\x07\\xe2:\\x07\\xa7!\\xde\\x11Q\\xa4\\xe03\\xceM\\xf2\\x9e\\\\\\xfaD\\xec5\\x04\\xf4\\x9c\\x93\\xe3\\x8c3\\xf8\\x908\\xce\\x9ah\\xd3K\\x13e\\x10 l  d0\\x08\\xe7&\\xf4\\xf3\\xf1)j\\xf8\\xd9\\x96\\xd5M\\xb6E\\xf0\\x15\\xe3#Z\\xa7\\\\G\\xf4>\\xb5\\x07\\x0f\\xfb\\x1b\\x01\\x1d\\x05\\xd6\\xee\\x14eW\\xb1\\xe5I\\x83\\x8e\\xa8\\xf3\\x89\\xa67\\xb8\\xb2\\xcf\\xb8\\x8d\\xed\\xafr\\x8e\\x9eR\\xb7(\\xbe\\x1bt\\x9eu\\xbe;\\xf1\\xd3b\\xd9\\xb0#\\x15(\\xbc\\xcde\\xe0\\xb2\\xfcOa\\xdcX\\x99\\x89\\x13gw\\xa6\\xe4\\xed\\xb4\\xefS\\xc6^\\x86\\xfd,\\xac\\xa8e\\xb2\\xa2\\x92\\x15\\x05\\xc9\\x8aB\\x8989i\\xdb\\\\\\xb2\\xa2\\x80.R\\xa0\\xe9`I\\xc9\\x8a2\\x882\\x08\\x106\\x10\\x102\\x18\\xc9\\x8a\\xa2\\xd6\\x9e\\xac\\xa8\\x80-\\xea\\x17kE\\x89e\\x7f\\xee\\xcaI\\xd7~\\xe9\\x17\\x9a\\x7f\\xa9w\\xf3\\xe2\\xee\\xeb\\xf2.\\xb9\\x80Z\\\\K\\x8d2\\x07\\xdehp\\x91O\\x84\\xb7\\nZ\\xec`V\\x0d6Jx\\xbd\\x15\\x12\\xcaJ\\x993\\xcdm\\xc9\\xcb_l\\xf2\\x95\\xb8\\x02\\xcfg\\x0c2\\xc6\\x1bn$\\x9c\\xaf69+\\x9a\\xf3\\xaci\\xb2\\xd5\\xf5]B\\x9bF\\x8b\\xce->~I\\x84]\\xccW\\x17\\xb4\\xc2 \\xec\\x9c\\x84\\xfa\\x80X' a\\x168\\x11+\\x85\\x80\\x8a\\xc1\\xfd\\xb8\\xd9\\x90(\\xe1\\x1b\\x96\\x92\\xf4\\xb6C`\\xfb\\xc1\\x1e\\x00\\x82\\x13a\\xa1\\x0eI/\\\\4X\\x04'4\\x84\\x04\\xa7\\xfbh\\x10E\\xad\\x0c\\x89\\x1e\\x9aBbgM\\x9e\\xe7\\nX\\xc1)$\\x8c\\x85\\xc4p\\x18\\xea\\xe2\\x0en\\xc1\\x89\\x12\\xf2\\x82\\x13\\x1e\\x08\\x83S\\xd0d\\xf1\\x9f\\xea4\\x05\\xb1\\xa5\\xec\\x97&\\x8d\\xc3n,\\xdf\\xc55\\xc2o\\xb9jr\\x04\\xee\\xe0t\\xc7z\\x8bz>\\x81p\\xe1\\x00\\xcd\\xe4\\xecS\\xe0\\xe1QS\\xa0\\x94 BR\\x10r\\xa8\\xd4D=\\x0c\\x0c)lvk\\n\\x19L\\x88\\x1bP\\x88\\x19\\xd4\\xe0C\\xe8\\xa0\\x98\\xef0\\xaa\\xc9\\x1d.\\x85S\\xa0\\x0c\\x02\\xfbN\\x0b\\xb8\\xc2\\xc9\\x12\\x86\\x85\\xd3]v\\xc3\\x194\\x85\\xd3]6\\x07\\xacy\\x9aq\\xa2F\\x8c\\x91\\x98\\x0d\\xa3\\xcap\\xf2\\xc7\\x9a\\xe1t\\x97bsE\\xab\\xe1t\\x97\\xad\\xc1\\xe3\\xddp\\xba\\xcbvx\\\"\\xe6p\\xba\\xcb\\x069b\\xeep\\xba\\xcb\\xc6\\xf8\\xa3\\xf6pr\\xc7\\xf2\\xe1tw\\xfd\\x08=y\\x84\\x04\\x0cz\\x99a\\x01\\x858aO\\xa8\\x8f)\\xc0\\xd2\t\\xb1p~!v\\xba\\xd7+\\xa3)\\xd4\\xb0\\xa2\\xa1\\xad\\x9a\\x92\\x81n\\xa5d\\xa0\\x0b\\n\\x9b\\xd6\\x9aB\\x06\\x13\\xe2\\x06\\x14b\\x06\\xf5\\xbe\\x0c\\xf4\\xd6\\x9bA\\x1aR\\xd9\\xfbq\\x94,Nh\\xec,N\\xc1\\x931|*j\\x0dr~\\xb1\\xc9.\\xa9\\x85\\\"\\x07\\xdc\\x1f\\x8d\\xd1\\xa7o\\xe0\\xd5\\xbb\\x0f\\xaf\\xff|~\\xfc\\xe6\\xfc\\xbbw/\\xbf'D.\\x0ci\\xc8\\xe1\\xe5\\xab\\xd3\\xb7\\xef\\xdd\\xc1\\x16}\\x1a2 Dk\\xf4i\\xc8\\xe0\\xfd\\xb1+h\\xa3Om\\x08\\xc741\\x84\\x9dB$\\xc9\\x85\\xb2\\xfen\\x93]B^\\xac\\x85\\x0bEe\\xaa\\x84W\\x9bUy}\\xfc\\xc6\\x1b\\xcd\\xd1\\xa7vIAN\\x07B\\x03=\\xa9}\\x8a\\x9a\\xa3Q*\\x89\\xe0b\\xee\\xd3\\xa4\\xa6\\xd1A<I$\\xd7l\\x9f&\\xb5\\x8f,\\xbaP{W\\xd2ka~\\x9e\\xe6\\x972\\xda\\x88\\xef\\xf3\\x1a\\x8a\\x16\\xde^}E\\x82\\xc8./ S<}\\xf0sh{%\\xd7\\xfe\\xa5\\x8e\\xd6\\xe3(n\\x8bht\\xff\\xd6\\xf2z\\xbdI\\xd2\\xecn\\xe4-\\x98L\\xdf\\x0e\\xe9\\x0e\\xef\\xf6\\xd6wk\\xa8f\\x84\\xc0%\\xef~C\\xdde\\xba\\xb6\\xf9f\\x1e}\\x07%\\xee\\x9e\\xc4\\x9eH\\xa2\\xf6GR\\x90\\x1e\\n^H\\x81\\x8bh\\x94L\\xdbEAB\\x81`\\xc1\\x00\\x96c\\xc4G\\xc1\\x02\\x82p!\\x01\\x9e\\xc3\\xc4G\\xf7\\xd3\\xb4\\xd0\\xdd\\x99\\x9aL\\x85\\xc8\\xce\\x9br\\xc5G\\x94\\x10\\x96>\\x05\\xcb5\\xf4\\x0c\\xb3\\xf3=\\xcc\\x88\\xd3\\x1d\\xb6K\\xb7\\xc8\\xd7\\x90\\x80\\x15\\x1a\\xb26\\x03TV\\xa0\\x10\\x82\\xa6{\\x80\\xb2\\n\\x10\\x04\\x04\\n\\x03\\xc2\\xd5T\\xa0P T0\\x10\\xa3\\xa0\\xee\\xbeQa\\xaa\\x89\\xaa\\x98D\\xbaO\\x1f3\\xd0i\\x99\\xe3\\xd4R\\xa8R\\n\\x94%}\\xe1C\\xac:\\xba\\xb3\\x16\\xd1\\x03\\x0f\\xdb\\x12\\xf4\\xa6\\xf8\\x9b\\xc1\\xad\\xd8\\xb28w\\xc3\\xb8\\x84\\x1a\\xfd5-\\x0f\\x7f\\xcf\\x8a&/\\xd8\\xb9\\xdf\\x0e\\xf5\\xdb\\x9f\\x1e\\xbb\\x93\\xa4\\xafhZ\\x8a\\xa4\\xac\t\\x12\\x92D\\\\\\xf2$\\xd5L\\xea$\\x90;\\n!\\x8a\\x98\\xdca\\xa0w\\x1a\\xc2\\xd4\\xee\\xdd4\\x81\\xaadC\\xd4\\xab|\\xbc\\xc0\\xcd/T\\xb1\\xd25\\x06YN\\xfe5,)P\\x81\\xceX?]Y\\x12*%T\\xe7C\\x92\\x02j\\x99\\x1a9\\xfd\\x8e+\\xe8\\xd7\\\"~\\xf9\\xa5\\x08_\\xf6EOK@\\x02\\xe5e\\xc4\\xccgM\\xc3\\xb6;\\x119\\xdd\\x94\\xb0\\xcd\\xeb\\x0d\\xcb\\xd6\\x90\\xc9xi\\x90\\xf1\\xd2\\x1a\\xc90\\xc2d:\\x81\\xa0J\\x08W8\\xb3$\\xc2B<}\\x92\\x07\\xe6\\x8b\\xb1y\\xefR\\x06\\xac\\xdeOV\\xf9i\\xf2-\\x95_^\\x06,\\x9b\\xc7\\xc8fY\\xcc\\x99A\\xc5\\xeb\\xc3\\xf1\\x08\\xc5\\xee\\x97\t\\xf1\\xc0\\x04\\xf8Z\\x02\\xbc*4\\xffI\\xb0\\xa7\\xa47\\x8e^7\\x87\\xdfyArSx\\x86\\xc133\\x1d[\\x03\\x91\\xb1}Kp\\xba\\x08\\x88\\xdc\\x91f\\xf7\\xf6\\x19*n\\x8f#\\xf2\\xaeG\\xe9\\x03Pv\\x1cE7\\xb8\\xf5\\xf1t<)\\xe8\\xf1\\x1b)\\xa6\\xd1r\\x1d/\\xd2\\xab\\xa8'\\x9e\\xadz9`\\xf3C\\xf4/i\\xdf\\xea\\xe9\\xdb\\xa9\\xf9\\xd4\\xac\\xfat\\xa4Gm\\x92\\xfe\\xaeUi\\xa3\\x9aM\\xb5\\xe5VTN\\xd5\\xe4TF6\\xf5CP8\\xd3U\\xccH&\\xaf\\x0d[\\x882\\xf9\\x06\\xf6\\x8fs\\xfa\\x99C?\\xb0y\\xf0y\\x83\\xd9:c;'`\\xc6N\\x9dl\\x1e{&\\xc2\\xda\\xb2\\xd80n\\xfb\\xc5e\\xbb\\xcci\\xbe9m\\x15\\xd4N\\xc1l\\x14\\xcc>\\x99\\xfa\\xce\\x80\\xd3\\x1eqt\\x16\\xb7C\\xa86\\x08\\xd1\\xfe \\xda\\x1e~\\xbb\\x83\\xa0\\x02:\\x9a\\xae\\x0c:\\xf2\\xda\\x1a\\x0e\\x11;f\\x93\\xc5\\xbe 0\\xc3\\xed\\n\\xabMA\\xe08h\\xdeLv\\x04nC\\xccg?xl\\x87\\xb6\\xe1d\\x05nYH\\xa8\\x00\\x87\\x8b\\xc7\\xbfl\\xbc\\x0b\\xc6\\xbbT\\\\\\x8b\\x84\\xb8<\\xe6Y\\x18\\x8e%A\\xb5\\xb9\\x90\\x05\\xe0,:\\x9c\\xf4\\xc8t\\xa7U=\\xcb\\xe4\\x1eM\\xb67m.X\\xc2<\\xeb\\xe5\\x7f\\x0d\\xd8\\x11Fk\\x18]\\xbfv\\xd3}b\\x9e\\xd7I9^eVW\\xb3\\xed\\xa3\\xfc\\xae\\xd3r\\xbb\\xce\\x92\\xd7u<\\xaeXB\\x03\\xf2@\\x0f3\\xa0\\x06Xg\\xe2S\\xe3\\xdf\\x0e=\\x8e\\xed\\xe3\\xd4<[\\xd4\\xccZ\\xf4\\\\Z\\xc4\\xecYA\\xf9\\xb2\\xf0\\x87\\xfe5\\x85\\xe6\\xc4r\\xe5\\xbd\\n\\xcdt\\x15\\x9a\\xdb*a\\xa4\\x900\\xd2!\\xdd\\x11Fj\\xb11\\xbd\\xd3\\x0d\\xb3/=F\\xb0\\x97\\xe7\\xa0k\\xce\\xbcI\\xe1s\\xd9b\\xfb\\x86\\xb5\\xca\\xbeo\\xc6d5\\x1af/\\xfaU\\xafvS\\xef\\x8c2\\x17\\x0d3>\\xa6]\\xa3\\xa5\\xb4k\\xb4\\xe4\\x9d\\xdci\\xd70(\\xed\\x1ai\\xd7\\xf8\\xe7\\xde5\\\\\\xb1\\x13h\\x97\\xb0\\xa9i\\xcd[G\\xe60\\xed\\\\\\x8fK3.\\xab\\x9c\\x91AN\\xf1A\\xf3\\xc8\\x8d\\x8e|\\xc1\\xa7<\\xef\\x8b\\x1a\\x01\\x1b8\\xf6fF\\x84v\\x1d\\xdb\\x01\\xe0S)6\\xaf4\\xd5&\\xc0\\xbf\\xb5\\xe7i\\xa6\\xdb\\x06\\xb6\\xaf-9\\x99\\x83l\\x04\\xf0\\xda\t0\\xb3\\xad\\x00\\x11\\xf6\\x82\\xad\\x8c/\\x8b\\xb2-\\xec\\x93\\xb4\\xcdb[\\x96\\xe5\\x1e\\xbe{\\x1f\\xb4\\xe9_p\\xde\\xa8\\x9f\\xb0c\\xdf\\xd5\\xa6J\\xb03\\xc0\\xd7r\\xf0\\xb6\\x1e\\xdc6\\x07x\\xe5\\xad\\xc9g{\\x80\\xf7\\xe6\\xb9W\\\\\\xe0\\x17\\x19\\xc1\\x16\\x01\\x97=\\x02v\\x9b\\x04|Mt{L\\xbc\\xf6\tP\\xf9#]\\xf7f\\x06\\x8e_3\\x8e\\xe8\\x91\\xb8\\xd6\\xba\\xe3\\x13\\xa3\\xed\\x18\\x9bD\\xd0L\\xbeh\\xfe^\\xec\\xed\\x83\\xb4\\x1b\\xa6\\xdd0\\xed\\x86=J\\xbba\\xda\\x0d\\xd5O\\x94\\xa9\\x9cvC\\xf8*wC\\xdf\\xed\\x08kwmS\\xdf\\x99\\xa5>\\x98\\xdb|\\xc0\\x91}\\x04\\xe6B\\x02\\xc0\\x86\\x06\\x009\\x97<\\xaa\\xd7p]\\xe6\\xc9\\x16\\x1fa\\xd1x\\xf2\\xc1O\\xd9-\\xeeV\\x95{s\\xba\\x87fr\\xf7\\xb6\tH\\xed\\x02Z\\xaev\\xd2\\x16\\x00\\xc6\\xe4\\xf6\\xa6A\\xf7fc\\x9f\\xbbJ\\xcae$I\\xf4,\\xeb\\xd0ePwu5*\\xb7zHF\\xf5.[\\xba\\x83ah\\x1e\\xf5\\xd0\\xec\\xe9\\xfe\\x9c\\xe9\\x84!\\xf5\\xe5]$\\xb0\\xa0\\x99<\\xee\\x0c\\xe8A\\xd5\\xf8\\x12%\\x11s\\x9c\\xcf\\xb8\\xa2\\xfdy\\xf5H\\x1d\\x04\\x8a]'\\x89d\\x12k\\\"\\xf5\\x14\\xc8\\xbd\\x05\\xbf\\xa9\\xdc~F2\\x995Q\\xe6\\x91&\\xbf\\xc8!D\\xec@\\x17=\\xd1\\xb4\\x1e|\\xecNQH\\xcf\\x1cN\\xea\\x11\\xa9'\\xe1\\xb9\\xc1\t\\x19\\xc1\\xe7j\\x1e9y\\xf5\\\\\\x15\\x0e\\xe5\\xe1M\\xd7\\xedL\\xc5\\x1d\\x96\\x80{\\xae>PSl\\xcfU\\x9f?\\x89\\xf6\\\\5\\x05\\xa4\\xc9\\x9e\\xabJb\\\"\\xec\\xb9\\xaa\\x83\\xa0T\\xd7;r\\x82\\xeby\\xda\\xd73\\xe6B\\xf2S{\\xf3O\\xbb\\xb2N{\\xf7-\\xff~uo\\xf6\\x8d's4m#t\\xe1\\x0f\\x9a\\xfe?\\xf6\\xde\\xb6I\\x8e\\x1b9\\x17\\xfd\\xbe\\xbf\\\"\\x0f\\xef\\x0d\\x93\\xb4G\\xcd\\xa3\\xb5}#.\\xcf\\xd1\\xc6\\xa1HJ\\x1a[\\\"y\\xc9\\xd1\\xeeq86\\x865\\xdd\\x98\\x992\\xbb\\xabZU\\xd5C\\x8e\\x8f\\xf7\\xbf\\xdf\\xc0[\\x15\\nH\\x00\\x89\\x02z\\xa4\\xb5\\xbb\\xbeH\\x9c\\xaeJ\\xbc%\\x12\\x89D>\\x0fN\\x8e\\xcd\\xf4\\x90Z\\n\\xe4\\xd6\\xc2\\xc9\\xb1)\\xed\\xd8P\\x18\\x97e[\\xc2,\\x91Q~H\\xa2*P\\x15!\\x8a\\xbd7\\x9f\\x84\\xc1\\xa0q%\\xc7A>\\xb4\\xef\\x88\\xbc\\xc8Q@\\x10\\xed\\xb38\\x072\\x11<\\x84?TF\\x9dr,\\xc7Qz\\x00\\xf3!D\\xb5\\xe7O\\x82\\xd6$L`\\\"g\\xf1\\x82\\xc2c\\xdbn\\xf9\\x90Y\\x89\\x17\\xd4 \\xd2|z\\xc4\\x89\\xce6,\\x00Y\\x04Ix\\x90\\x86V\\xa3\\xe5HE\\x8f@\\x02\\x8bp\\x84;8hM\\xc364\\xc6\\xca\\x16\\xb3\\xf6AKO\\xb0\\xf2\\x14\\x0bO\\x98\\xa1D\\xf5$\\xa9&\\x81\\x85\\x8d\\xd00 6\\x0e\\xe8\\xfck\\xc4F\\x02\\xb5\\xa1\\x90\\xc2\\xbcV\\xbep\\xda\\nQ\\x96q-\\x8do\\x8dB9\\x06\\xf4\\xbe\\xa1\\xf9\\x95\\xfb\\x14\\x9e\\xb5B%\\xef\\x83\\xcc\\xb8Qm\\x8f\\xebyt\\n\\x93\\x1aBP\\xac\\xe8\\xe4\\x8d6\\x06H\\x0d\\x02\\xea\\xb4%5\\x0ch\\x8d\\x03\\xfa\\x84-[,e\\xaa\\x96\\x9c\\xa8)\\xd3\\x946II\\xfd\\x11\\x9b&\\x906=\\x8b\\x94\\x19;\\xde\\x1f\\xdf\\x8b\\x15\\xe6+(\\xc0\\x05\\xeb\\x95\\xe9\\x93\\x15g{\\xf5\\xf9\\x13%\\x99\\xd8\\x8eD\\xfe\\x150-\\x11\\xa3\\x123'\\x11C\\x12\\x1dZ\\xc2,\\x8e\\x9a\\x8d\\xfcB\\xc2F\\\"\\xd9<\\xc4\\xae\\xcd\\x0b\\x18\\x86\\xd8l!j\\x01>%I\\x06`a\t\\xb1\\xc9\\x9e<!\\x1f\\\"\\xfbf!G)\\x8eg\\xa22\\x93z\\xf19?\\xd6=\\x9d\\x9b\\xcb\\x97\\xbfC\\xe2\\xddp\\xa6\\xbbo\\x9aG\\x91@A\\xa9!\\xc9\\xe0\\xc1\\x06\\xc9'\\xd3*\\x89\\xcf\\xd1_\\xa2\\xfa\\x0d\\xd1\\xd8YJ\\xc6\\xb4\\xef\\x0b\\x7f\\xdet\\xe0\\x8bH\\xb4,!\\x87Z>\\xc9\\x99\\xd4\\xfa3J\\xac!=\\xab\\xda+(\\x92m-\\x9f%9\\xd7\\xfe/c\\x99\\xd7\\xf2y\\x00\\x12\\xfa\\xe0i\\x8f,!|6\\x10?\\xe9\\x89\\x9d\\xf3\\x10\\xb6\\x1d\\xb1\\xf9\\x08\\x84\\xe3\\x06BwA|%\\x97O\\xc2\\xd9\\x0e\\xa1u@l!\\x00\\xf1T\\x872n\\xfa\\x89\\xab\\x88~b\\x1d\\x0c\\xf4N\\x06jG'\\x9d\\xe4\\x10\\xceq\\xa2aeB\\x03hadr\\x14=\\xa1DoWE\\xb3\\xc5\\xe5C\\xd1\\x8b\\xf8|\\x8e\\x06\\xc6\\xf3[DY\\x02J\\xe5\\x95\\xcb'\\x9c].\\x1f4\\xc7\\\\}\\x8e\\xe0\\xae\\xe4s\\xf24N\\x9e\\xc6\\xf8\\x9c<\\x8d\\xa3Z\\xa6\\x93\\xa7q\\xf24\\x90\\x87\\xd4\\xd1'O\\x03(]u\\xf24~eO#\\x16\\x07So\\x85;&<\\x15\\x83(7\\xf9d\\xc9?\\xe6U\\x11\\xb1\\xf1\\xcc\\xc2\\xc3\\xb9-\\xf9\\xdc\\xfaQq\\xf2\\xa1a\\xe3\\x94\\xb8ea\\xae\\x08ZN>\\x99~h\\x04?'\\x1f\\xc2\\n\\x14+\\x07\\\"\\x88:\\xf9\\x10\\n\\x02ba@\\xc1\\xd8\\xc9'\\x15i\\xa7\\xbe\\xa2\\xd5\\x15\\x12\\xea\\x0b4\\xec\\x9d|\\x086\\xd2|\\xf4\\x04\\x8b\\xe2\\xf0\\xe4\\x13E\\xe3\\xc9\\xe7\\x98\\x95\\x88My\\xfb\\xa1\\xa3\\xf4\\xa2\\xa2&\\x14\\xdfB\\xac\\x9e|R\\x11{Q\\x81\\xb2\\x05\\xa9\\xb8=\\xf9\\xa4\\xa2\\xf7\\xe4\\x13\\xc7\\xf0\\xc9\\x87\\xac\\x08\\xb1|w\\xf9\\x90\\xc5\\xc5\\xd6$\\xf3\t#\\xfc\\xd4;\\xe9\\x05\\xd3\\xd2\\x0e\\x89\\x98?\\xf9\\x1c\\xc9\\xb6P\\xfcoH\\xeb\\x04\\x88\\xbbb\\xf3'a\\xe3\\xa3\\x9f\\x84\\xde\\x80\\xc4\\x1e\\x01\\xea\\x86H?\\x14\\x07\\xd8~\\xe8\\x1a\\xaa\\x1f\\xea@A\\xfa`A\\xea\\x80%m\\xa0\\xacO\\xc2\\xa9\\xf7\\xf2\\xa1#\\x0b\\xe5\\x93\\xd0\\xde\\x84v\\xa6c\\x0d\\xe5C@\\x1c\\xca\\xe7\\x18\\xd5&\\xe3\\xf7\\xe4s\\x8c*\\x94E%\\xca'\\x0d\\x9b(\\x9fc\\xb4\\x8d\\x8aV\\x94\\xcf1j\\x10\\xc7/\\xca\\xe7\\x18e' \\x1a\\xe5s\\x8cJ\\x101\\x8e\\xf29F\\x05\\xd2P\\x8f\\xf2\\xa1c\\x1f\\xe5S\\xbe\\xde)\\xaes:X2(\\xce\\x0f\\xa4\\x94O\\x08N)\\x1f\\xe2rO]\\xe6\\x7fE\\x873\\x02\\xb9\\x94O\\x8aG\\x11\\x0f\\xad\\xe9\\xe7\\xe4i\\x9e<\\xcd\\xd8\\xdb\\x900P\\x90>X\\x90:`\\xc7\\xf64)PO\\xf9\\xc8\\x96\\x86\\x01\\x9f\\xf2\\x89\\xc2>\\xe5\\x93\\xa4Xij\\x95\\x04\\x04\\x95O\\xf2@\\xd2@\\xa1\\xf2Y\\n\\x0d\\x95\\xcfB\\x80\\xa8|\\x16\\xc2D\\xe5\\x93\\x0e\\x16\\x95O\\x16dT>\\x14\\xac\\x81\\xf9\\x94\\x82\\x8f\\xca'\tD*\\x1f\\xf2\\xd1\\xd4\\xfcI\\xd6\\xbbd\\xf3A\\x04\\x97\\xcagquh\\x11\\x1f\\xf9D\\xcf\\xba\\xe6\\xcf\\xe2:\\x91\\xba(\\xc5/\\x94O9\\x18\\xaa)/\\x14sL\\xa9c\\x1205(\t\\xbd^3\\x00O\\x95O\\x04\\xa4*\\x1f\\x82\\xed\\xa7X\\xfc\\x18lU>\\xb4\\x95\\x8b\\xb0j\\x11j-\\x1fJ\\xdd\\xe5C\\xb6\\x15I\\x93 a\\x02D\\x91r\\xfa!7\\x1e\\x92:\\x00\\xe2\\xc0\\x97\\xf9\\x93\\xd4\\x11\\x90\\xd6\\x19@\\x81\\xc8\\xcc\\x9f\\xe3V'e\\x15L\\x81\\xd6\\x10\\xc4Y\\xe0\\x9b8\\x02O?\\xb1\\xf3\\xfa\\xf9\\x93\\xd4\\x7f)\\xbe<\t\\xa03\\x7f\\x8eP\\x970\\xa4V>\\xc4\\x99E\\x9dSD\\x93\\x92\\xd0X\\xb2\\xca\\x12\\x8d\t\\xb1\\xc1\\x90\\xd0hH3#\t\\x8d\\x87\\x94\\x0e\\x80T\\x03r\\xbc\\x8a\\xd0MGQ\\xc3\\xb1\\xd0l\\xa4\\x18\\x8d\\x84>\\xa3MRXb.\\x8a\\xd7\\x82\\x96\\xed4\\xbeM+>\\\\t\\x00\\xf4+\\x9fH)a\\xe9q\\x18\\xb0|\\xc2\\xfeY\\xc0/\\x8b\\xda\\x91\\xb8\\xf5\\x88\\x1aKR?\\x13\\xa6e\\xd44F\\x1b\\x03\\xa4\\x06\\x01\\xd5\\x10\\x92\\x1a\\x06\\xb4\\xc6\\x01\\xdd\\xec\\x95-\\x96b\\xe4R\\xcc\\xdb\\x89\\x91`|\\xc2e\\xd2\\x8cU\\x96\\xf9\\xf85S'\\x17\\x82\\x99\\x1d9F\\x02\\xecbH\\xf3\\x0fF\\xa8\\xde1\\x12\\xaeAp\\x12\\xfcb\\xa9|\\xa8\\xe1\\xc1\\x0d\\x8d\\xf7~\\x02d \\xf4\\x108ymN\\x1a]\\xaa\\x08\\xff\\xe0\\xd1\\xd3\\xdd\\xfc\\xe9lvs\\xdd\\xc4\\xb6\\xd4\\x14\\xb6Y\\x8a\\xda\\xbc#\\xf0d\\xb5XZ\\x9a\\x9b\\x80\\x86t\\xa1\\xbd\\xa8\\xa3\\xbd\\x8c\\xcd\\xc0yJX\\xf03{zy\\x12\\xba\\x124\\xcc={\\x89j\\x87\\xb5@\\x04\\x8f\\xb8\\xbc\\x8b\\xac\\x7fa\\xf5\\x1cPII\\x84;i\\x1c\\xcb\\x86\\x1f/\\x05\\x0d\\x9aw-\\x0c\\x1e\\x0e\\xa1\\xc7@\\xfe\\xd4\\xa2\\xe0H\\xcfJ\\x8e'\\x06!)@T\\xf1\\xde$\\x17\\xaa\\x80\\xbc\\xf4\\x9bp\\xa2\\x0d\\xb5\\x0e\\xbe4\\x19\\xea\\xf7n\\x92\\x0b\\xf5\\xcb@\\x8a\\nU\\x84'\\xc1\\x84\\xfay8=\\xc4\\x9f\\x08B\\x93_\\x8e\\xd4\\xdaYh\\xc5\\xa2\\xff\\xed\\xb4\\xc4\\x11\\x16[\\x0fT \\xc5\\xe0\\x95\\xb1R\\xde\\xb4\\xfe\\xd8\\xea?\\xbe\\x17\\xda~\\x84\\xb7\\x1d\\x81\\xf4\\xfc\\xa8\\xa7\\xe9\\xf5\\x12\\xf4\\xe3M\\xba\\xcf\\x15\\x1ds\\x013\\xbd\tD\\x1e-]\\xbe\\x94w\\xa1\\x9fhJ|\\xcc\\xdb\\xd0\\x8f?\\xed=0\\x14\\xc5\\xafU\\xc4\\x13\\xd6I\\xe2|\\x9b\\x81H\\x1az\\xc6\\xcc\\xf0g\\x92\\x90\\xb5\\xd7\\xb3\\xfd%%\\xf2\\x04k\\x0e\\xd1\\xda\\x83\\xdf\\xfb\\x19\\x7f\\x0ezA\\xfa\\xa1l_\\xc3I7\\xd1\\xee\\x82x\\x97\\x11Si\\x82\\xc93\\xf1\\xc4l\\x92&\\xa25\\x8c{U\\xfa\t$X/->\\x9aZ\\xbcTp\\x9e7\\xa6\\x1fZ\\xfa\\xf3\\xd2:\\xc6\\x92\\x9a\\x97\\xca\\xf5\\xa7*/\\x95HH@^*:\\x92V\\xbcT,-Y8\\x9e\\x1e\\xbc\\xac\\xfcr\\xde\\xa2~\\xb0\\\\\\xdd\\x05\\xfeZ\\xf1u\\xf1t\\xdd\\xf0iA\\xb4\\x9f\\x07X\\x10C\\xf9\\xa3\\xb2\\x8e\\xf8\\xb9\\x8e\\xf7T'2D\\xb1\\x01\\\"e~\\x12:/F&\\x94\\x96\\xd8\\x98\\x98\\xc1\\x99\\x98\\xb3I\\xcf\\xd2\\\\\\x94\\x979\\x1b\\xffh\\x82%-u\\x92\\x9c,I\\x18*\\x82\\x96?\\x14=I4\\xb11\\xa1$Osf+ZR&\\\"\\x9ag\\x18\\xde\\x05'\\xe5\\x12\\\"\\xf9\\x82\\x9684{\\xd0\\x93/\\x88\\xda\\x01|\\xf6\\x9fH\\xa6\\xcd/#\\x06\\xf2D2}\\\"\\x99\\x16\\x0f\\x9e\\x99\\xb6\\xc0\\x95-\\xec\\xb2\\x07\\x94?\\xc3\\xf1\\x0c\\xaa}T\\x1f#\\xda\\x18Q\\xf8<\\xf1!U/\\xac\\xe8^5\\x0f+9i\\x9c1\\x05'\\xa8\\xf7\\\"\\xd9\\xb1\\xe4\\x04\\xafP[ ~D\\x80\\xe5\\x05\\xc8\\x02\\x1c\\x05u\\x952@`\\x94\\xb0\\xe4\\x05(\\x8a\\x16\\xcc`\\xdf\\x96)c\\xbe\\x05i\\x86\\xa8g\\x12\\x10\\xab\\x03D\\xeb\\x01q\\xfa\\xa0\\xe8\\xf4\\x04C3\\x82,=A\\x82\\xa0R\\xc5\\xc4\\xcf-`\\xf9\\xd9E\\xa8\\x07\\x89\\xe7\\x17\\x90s\\x86\\xe1\\x91G\\xa6\\xf6\\xa1\\x9ee@\\x94\\xc6'2\\\\!\\x04ut\\xa4c\\xdb\\x7f?)\\x0fYth\\x9fB\\xa0\\xdd)0\\xeb\\x1e\\\"~A\\x0c\\xfb\\x00\\xa5E@j\\x15@4\\x04\\x04ci\\xb10\\x10\\x10tA?qP2\\xa9K\\x81\\xd6\\xad\\xc4\\xd0\\x90\\xf1\\xa2\\x1fl\\x1c?3\\x01J\\xed\\xa3\\xb5\\xa6\\x9f\\x9f@\\x9c\\xa4&\\xb7:\\xd1\\xb3\\n(PH\\x99\\xb3\\x15 \\x9f\\xaf@\\x81:\\xc7\\xceZ\\xa0@\\x19a\\x8a\\x98\\\\\\xe9\\x843\\x18(P\\x0c\\x81\\xe6%\\xb7\\x08\\xda\\xd9\\x0c\\x90\\xceg \\xbb>\\xe5\\xcfj \\xc0\\xad\\x92\\xe1\\xdb\\x1eu\\xed\\x0f\\xf0\\xa3\\xc4\\x17\\x15C8\\xca\\x85rZ\\xf4\\x91'\\xde*8-\\xfa\\xf8\\x8b\\xfeE?\\xc6+\\\"\\xeb\\xfd\\xeb^(L:+\\x02z'\\xc7\\x19AR\\xcf\\x8d\\xb0o\\x08\\xec\\x1f\\x89\\xe7G\\xd8'a\\xa6\\x8fE\\xe7H\\x00\\xb1\\xb8\\xad~\\x96\\x1c5\\xc5\\x94\\xdf\\xfb;\\xf9(\\n\\xe8\\x9a@\\x9cl\\x04f\\x8e\\xc4\\x02\\xe3,\\x1c\\xd1#*H/5\\xd0\\xcc\\xc2\\xc7U\\x8eHO\\xe2\\xe6\\xf2c+\\xcc\\x96\\x85\\x88/\\x02t\\x17^3\\x15H\\xe3\\x0d\\x00%C&\\xf3X\\xc7\\xe9\\x0fp:\\x1b\\x01F\\x16\\xb2\\xf5\\x04H$\\xa11@i\\x10\\xc4O\\x04\\xe4S\\xae\\xc0\\xb8YM>)\\xf0J\\xa2C cGc@\\xeb\\x83\\xb8\\xb3D8G\\x90Ofi\\xf8\\x91\\x19\\xc4\\xb44\\xac\\x9fG\\xdcQE&Wtj\\xc5'VtZE\\x1b\\x00\\xf1F\\x00mB\\x95)*6\\x95JM$\\xea4\\x8aO\\xa2h\\xbbc\\x13\\x888}\\xb2\\xca\\x89\\x1d\\xc9A\\xac\\x00L\\xb8\\x87\\xbe\\x00\\x95\\x83}\\x1f&(\\xc0\\xd6\\xdb\\xdc;\\x80=\\x93=\\xd0r\\xaf\\xc2z\\xa6v`R\\x87\\xa6s`\\\"G\\xc6=8\\xa3\\x82\\xd3v\\xb9`\\xff$M\\x9e\\x9e\\xa1\\x13q\\xcf\\xc4\\x0ci1a$\\xdd\\xe9\\x11\\x9d\\x80\\x89RC\\x93\\x8d<9\\x90\\xedI\\xf0\\xdb\\xf9\\xd6\\x03w\\xd2\\x17\\xc2\\xea\\xdd;\\xc2\\x17\\x83\\xe9\\xdfU\\xdd\\xf0A\\x876d\\xcb\\x9c\\x19\\xe3\\xce\\x13+\\xf8#\\xbf\\xb0\\x03=X'.APz\\x820NS\\xe4M\\x8d\\x89-\\xc9@*\\xa2G\\xfa\\x94\\xa3|\\xafI\\xf2\\x1b$\\xcf\\x91=i\\x85@\\xcf\\xce\\xd1\\xa3\\xf9\\xa5\\xe2bI\\x93\\x8b\\x8e\\xde\\xc7\\xde\\xb3\\xc4E\\x8e\\xdc\\x17\\x1f\\xb5#p\\xc1\\xe0\\x11;\\xe5h\\x1d?R\\xf7t3\\x16F\\xf7\\x8e\\x88\\xcfx\\xbaG\\xe5Q\\x11X\\x8c$p$\\xbe@{\\xcb\\\"h\\xa2\\xd1\\xee\\xa0\\x1f\\x1f\\xf6\\xe1\\x03Qm\\xdc\\xc8\\x99O\\xcc\\xaf<\\xd6\\xc1U4J\\xed\\x8dN\\x87\\x8f\\xa2\\xa3\\x9a\\xe3\\xd4\\x86v\\xe4\\xec9jN-.x<\\x9b*,\\xff\\xe88~d\\x9cZ\\xa7\\xd0\\xd1p\\xaa,\\xfc\\x088UJ\\xe4\\xa87U\\\\\\xe0H7UT\\xfc\\xe86|d\\x9bV^\\xd9\\xa3Y\\xfbH6\\xc1\\x07)\\xb2f G\\xac~cg\\x08\\x99\\x1d\\xa9\\x9e\\x16\\x8b\\xd9O\\xff\t\\x17\\x0b\\xdf\\x11\\xa6\\xac\\xcfqa%\\xd1\\xa3\\xc9H\\xa7\\xf8\\x8f\\\"S\\x8e \\x13\\x8e\\x1e\\x13\\x8e\\x1ciG\\x8d\\xc9G\\x8c\\xa5aj\\xa4s\\xc1\\xc80D4\\xf3x\\xfcv\\x91s>\\xa2t\\xa4\\xda\\x05\\xcf\\xf3B4n\\xcb\\xcf\\xef\\\\&\\xbe\\xf9\\xb9\\x9dg\\x1b\\xfdS\\x7fs\\xc1;E|\\xe7t\\x8f9\\x9d\\xbe\\x82\\x0f\\xe7\\xdf\\xbfy\\xfd\\xea\\xf2\\xa7\\x0f\\xdf_^\\xfc\\xcb\\xbb\\xd7\\x96N\\xba\\xbf\\xbf{\\xff\\xfa\\x8fo/^\\x87~\\x9fM\\x17\\xec\\x8d\\xb7\\xef\\xde~x!\\xe7\\xc983B\\xf5\\x98u\\xee\\x7f\\xe8\\xce\\x9d\\xb5U\\x0e\\x1ao+\\x1f4\\x89(\\x80\\x1d\\xeb\\xfb\\xea\\x86\\xe9\\\\o\\xe3rn\\xdd\\xa3\\xde\\xf6=\\x17\\x83\\xde\\x87\\xde\\x93\\xadx\\x0e\\xef\\x84oRm{l@\\xc6\\xa8\\x9b9\\x18\\xc1\\xa0\\xc6B*)$\\x86\\x9a\\xe0\\x8a\\xa0\\x11\\xd3\\xa8/bM)O|4M\\x0c\\x16\\x0d-\\x14\\x07u\\\"\\xa0\\x99A\\xc5@\\xa4\\x93$\\xc3\\xaf,\\x1f\\xf4\\xe9;A_N\\xd1\\xfeS\\xb4\\xff?O\\xb4\\xdf=\\x95N\\xb0b\\x056\\x87\\x1e\\xe5\\xf4\\xaa\\xa6_1\\xbdj\\x19\\xd4\\x9d\\x80\\xe6\\x04\\x14r\\x99H\\x9f*\\x16TDT\\x0d\\x0b`\\x19\\xf5\\x13Q\\xbf$y\\xd9\\x07M\\xae=o\\x07:\\x96r\\x18=6o\\x81\\xf6F(\\xe6\\xbd\\xe1\\xef\\xcc=8\\xef;\\xce\\xa6'\\xe2\\xc9\\x01\\xd5\\x9b\\x03\\xafG\\x07\\x85\\xbc:o\\x9b\\x10\\xcf\\xce\\xf7.\\xe6\\xddA\\x0e\\x13\\xb1\\x15\\xa8\\x91\\xdf\\x05\\x8e\\xdd\\xc6\\x00\\x8d\\x1b\\x9cI0\\x89\\xf9\\xc1\\xb9\\x13\\x05\\xb1\\xf5\\xe3<\\xb8\\x92w\\xb2\\x1c\\xdc\\x99\\x07\\xe5\\x18U\\x9fD\\xd4\\xcd\\x86}Y\\xa2c\\xc8\\x06\\x9bV:>\\x91\\xc5\\x86\\xb9c\\xfb\\x8e\\xf5\\xac\\x19\\xc4v\\xbacw\\xed\\xc0\\xce\\xf8\\xff\\xc8=\\xee\\x19\\xb4\\x9d\\xda\\xee\\xf2\\x15\\x81\\xc9\\x08\\xbd\\xc11?\\xc51\\x8c)>\\xb3\\xb2\\xea\\x10w5\\x1eR\\x92\\x8d-\\nV\\xf7\\xb4uvf:;z\\xa5~\\x86\\x07\\x07r\\x8fV\\x8d3O\\xe4H\\xb5\\xc4Q*z\\x84\\x1a::]\\xb7\\xfd\\xae\\xedWWU\\xcfVw__\\xb1\\xa1\\xfaz\\xf5\\x8a\\xad_\\xb6uC\\x1e\\x9a\\x0dk\\xda]\\xb0\\x8f\\xab]{hB&\\x18WJU\\x91\\xd1\\xa9\\xa9`h?\\xb1Fz0\\x95,\\xb7nDkE\\xa7\\xf0?\\xad\\xeb]\\xb5U\\x05\\x8e\\xeb\\xcb\\x1b\\xb1\\x8a\\\\\\xdc2\\xf5\\x03\\\\\\xd7l\\xbb\\x11kU\\xc3KQ\\x01\\xbaz\\xb7\\xdf\\xb2\\x9d\\xd0\\x7f1\\xae\\x87~hw\\xb0c\\xc3m\\xbb\\xb1\\xa7]\\x0f\\x1d\\xfb\\xe5Pw2\\xees\\xd3\\xde\\xb4\\xfb\\xae\\x1dZ\\xa3O75o\\xe0\\xd5\\x81W\\xcf\\xe8\\xdb-\\xbb\\x115V\\xff\\xd7v\\xef\\xd9\\xe7\\xaa\\xdb\\x90{;\\xcd\\xfct\\x86\\xf0\\xe9\\x95\\xb2\\xfbLk\\xfcM\\x19\\x885\\xb7u!\\xf8\\xba\\xdf\\xeb(\\xa8\\x1d\\xf2)\\xa7#\\xf2\\xa1h\\x8a_\\xf1=Zb\\x9ahy4\\xaa\\x87D})\\x0e\\xc06\\xfa\\xa3\\xc7\\xbd\\xfe\\x7f\\xde\tR\\x17b\\x1a\\xfa\\xae\\xea\\xaa\\x1d\\xdd.\\xf3\\xf5\\xe0\\xd0\\xd4\\xc3\\xfd\\xe5P9\\x0b\\xd9l<\\xb9\\x8d\\xb9\\x1c\\xdd\\x7f\\\\1\\xe7\\x1f\\xb4\\xcd\\xa1O\\xfa\\x82\\x0f\\xfd\\xa6\\xab>\\x8b\\xa9q\\xc9\\x1a\\xbe\\xefq\\xbe\\xb8j\\xdb-\\xab\\x1a\\xb7\\xfbe\\xcb\\xe7'\\x8b2\\x01l/\\x7f\\xe1\\x86\\x9d\\xff\\xd5\\xec7\\xd8\\xb5\\x9b\\xc3\\x96\\xc5z\\xf5\\xff;\\xb0\\xee\\xfe\\xa5\\xee\\xabwm\\xbb}\\xcf\\xfa=_8\\xc8=\\xbdo['\t\\xec4\\x91\\x7f+\\x13\\xd9i$\\x1f\\xae\\xb1I\\xe3,\\x11\\x7f~\\xcc\\xffP7=b\\x02F_\\xc3\\xaf0\\xbc%b\\xf9\\xd7\\xff\\xe6]\\xaeu\\xd3\\xfc\\xfa\\xd9\\xecs\\xddI\\xef\\xdf\\xbdT\\xad$\\xe9\\xecd\\x8a\\xa4\\x05\\xea\\x93\\xf5V\\xce\\xdb#\\xc7:O\\xaa[Pu\\xd5\\x88\\xcd,\\xa1\\xfe[\\xb5^w\\x07}\\xd85-.\\xa1\\xd5,\\xacGtuvD,\\xd7\\xe5\\x0b\\xbe\\xa5\\xfdM+t\\xf4\\xfc\\xd7\\xab\\xdc\\xf6:i\\xbe\\x8e\\xc1\\xf7<\\xe0=O}\\xe5\\x13\\xce\\xd4@'\\xa3|\\xbc\\xb5\\x96\\x0f>1\t\\x9f\\xc6Q\\x99\\x8b\\xa7\\xaa\\xb7\\x9a\\xab\\xdfa<P9s\\x18\\x11\\xa7f5\\xf2\\x0b}r\\xc7l\\xd8RgS>4\\x97\\x13\\xa9\\x87mf\\xf8\\xb67fj\\xda1\\x8d\\x0bM\\x8a/;\\x07O\\x8bJ\\xc1EE\\x8c\\xd7\\xdc\\xb9>\\xec\\x84\\xf2\\xcc\\x87=a%\\xc1\\xac\\xf8\\x92\\xe5\\xc4\\x94\\xb3pMi\\xbb\\xe9\\xe0$yA\\xc9<\\x10\\xb6\\x94k\\xd6uFt\\xce\\xecz\\xf3b\\xc8ij\\xf1\\xbe\\xd3\\x93\\xb7\\xb9\\xe1\\x9dF\\x1d\\x0c\\xac\\xf9\\xc9#a\\nY<\\x0c\\x7fR[\\xc0\\x17r\\xd5L\\x1e\\x8b\\xd9\\x162\\x16]\\xb1\\xba\\xc6\\xfev\\xd6\\xe5S/\\xeb_\\x87\\x16~\\xe1uO\\xebhO\\x03\\x17\\xf4\\xb6%)\\xb5\\xcb\\xe5v9\\xb9\\x83\\xf7F|\\xc1i\\xf3\\xde\\xdd\\x82\\x8b?\\xb1\\x81u:\\xd4i\\xec\\xb8\\xcd\\x81!\\x1d\\xaex\\xa2\\x15\\xe07\\xd4\\xe1\\xa8E\\xe8\\xc3p\\xf4\\\"\\xf0e$\\x8a1}\\xe9\\x8dd \\xe3\\x13\\xd4\\x0f\\xa5\\x19*\\x00\\x92\\xa8\\x07\\xe3\\xa4\\x15ys}/\\xfc\\xf3D\\xa5X\\x8f\\x9fz\\x14cza\\xa6\\x1c\\xf2\\xcf\\xfc\\xaf3\\xab\\x06\\x1d[\\xb3\\xfa\\x8em\\x16+\\x89]\\x19\\x08\\xb8\\xd0%3o\\xbd\\xaes\\xd0\\xfb\\xf5\\xbb\\xcd\\x81\\xcfb.\\xf3b7\\xc4S=\\xcc]\\xce\\xf1M\\x1ca>W\\x99\\xe6\\xb0\\xa8\\xb3\\xc2\\xb9\\xd5\\x0d\\xe86\\xdd\\xe0\\\"B\\x8c9\\x964\\xc5\\xde\\x1e\\x86~\\xa8\\x9aM\\xdd\\xdc\\x14\\xde\\xbd\\x92f\\x86\\xf3-\\x9c\\xa6\\xc5\\x7f\\xf2i\\x01\\xc1.\t(\\xa6\\xb9{l\\xa7_\\xe1\\xc9\\xa1\\xf9J\\xafp\\xcdSW\\xb9\\xcc\\x8a\\xf2\\xd9T\\x19f\\xbdn\\xd8\\x97=k\\xfa\\xfa\\x8eq\\xefi\\xe8\\xaa\\xf5\\xa73\\xbe\\x81h?\\xf7\\xd0\\x8b\\xee\\x80\\xbe\\x12q\\xd6\\xf5-[\\x7f\\x8ao&\\x083k\\xc1DGzc\\xe9\\xa2\\xfaa+\\x10r\\xc9\\xd3\\xbc\\x97\\xdf\\xd9\\xd3\\x9c\\xb4\\xa1 o\\x90\\xa7 \\xd5\\x9euu\\xeb\t:\\xa1\\xd3\\x0c=\\xabW?u\\xd5zpV\\xdfE[\\xe9y7\\xbe\\xbec\\xcd0\\xcfr\\x98tKt\\x18\\xb0;\\x05\\xdd\\x9f\\x9e\\x1fD\\xfe\\x10\\xd7\\x02\\xae`\\xf5\\xba\\x1e\\xc4\\\\W\\xc9L\\xfd\\xd0v\\\"\\xd5n\\xfe\\xd1\\xc5-\\x7f\\xbf\\x87\\x86\\xb1\\x0d\\xdbpe]W\\xdb\\xf5a[\\x0d\\x02\\xe3\\xd8\\xb5\\xfb\\xae\\x16\\xff/\\xe7w{\\x0d\\xfdP}\\x92\\x84\\x02\\x9fX3\\x8f\\xb0p]\\x9b\\x82*\\x1aNRult\\x15\\x1b\\xa8\\xae\\x07\\xc6'\\x8bl\\xc6m\\xd5C\\xbb^\\x1f\\xba\\x8e\\xf9\\xa2/JA\\xe6;r\\xf5\\xb7\\xb03\\xb5\\xafn\\x94\\x81\\xf3z\\xf1\\xfa\\x05\\xcb\\x93\\x1f\\xff\\xac:OO\\xa9En\\x9a@\\x80z\\xf2>\\x11\\x95\\xf3f\\x10\\x85\\xf4g*E[\\x01\\xfe\\xbfC\\x0bW\\xbc9}/\\x87\\xf6]u\\xc3\\xde\\xb3_\\x0e\\xac\\x1fV\\xf2wK\\x88\\xdc\\xe6\\xf1\\xcf\\xb98\\xde\\x11|\\x17\\xd3\\x0f\\xc0\\xae\\xaf\\xebu\\xcd\\x9aa{\\xbf\\x82s\\xaeX\\xdb-\\x97\\xcdv\\xfb\\xe1\\x1ej\\x9b\\x90~\\xb8e\\x1d\\x13\\x03\\xdf\\xb4\\xb0\\xe3\\x8a\\xa7\\xd0\\xa1\\xa6\\xf2!\\xe9Z\\xd1NAf\\xa1/\\xd7T\\xc6qxo\\x88\\xffi\\x0e\\xbb+\\xd6q\\x05VU12N\\x9d\\xfa\\x9b\\x1d\\xb5\\xe6\\x8a\\x7f)\\x84\\xd8k\\xd3\\xe7\\xaa\\x87\\x9e\\x0dgP\\x0f=\\xd7\\xc3\\x83\\xb0\\xc1\\x87F*\\xd3\\x06Z\\xde\\x0f\\x9f\\xeb>\\x94\\xd0\\x14\\xb4\\xa2\\x0bL\\xba\\x92\\x90`\\xc7\\xc7O_\\xac\\xd7\\x87\\x9d\\x98\\xfa\\x9b\\x97\\xd6\\xd6\\x82`\\xc8\\xb1\\xdd\\xc81l\\xf9)\\xd8\\xb9<\\xd8\\x8970\\xac\\x00\\xb3uhz\\xc1\\x18o%\\xc6v\\x82>\\xb1\\xfd\\x00\\x15\\xef\\xa9\\xee\\xd04|\\xc9\\x10S\\x89ug\\xb0\\xae\\x1an=\\x8cUa\\x80\\xaa\\xb9\\x17)\\x8fduu\\x9d\\x17\\xb2\\xae>\\xc8\\xc9\\xd8IQ\\x8f\\xa6\\xa8K\\xbd\\xf8\\xd1w\\x97\\xf2\\x8a\\xb8\\xed$]\\x9d\\xdc:\\xb2\\x8e\\xfa}VT)\\xd0\\x15\\xd2\\xf5P\\x9do#=\\xbd\\xc8\\x1fM\\xf4D\\x0b\\xf9\\xa0\\xf9\\xde\\xa7\\x1aJ\\x8d\\xa1\\x9d\\xeft^l\\xb7\\x9a\\x86+y\\x93\\xc3f\\xd7_\\xc1\\x91\\x0c\\x0e\\x7f\\xfd\\xf2\\xd09)\\xf0\\x19A\\x84\\x17\\xf0\\xf3\\xfb\\x1f\\x9fu\\xaco\\x0f\\xdd\\x9aAS\\xed\\x14\\xb2\\xf8\\xd0\\xd4\\xbf\\x1c\\xd8\\xf6\\x1ex\\xc3\\x86\\xfa\\xbaV\\xbe\\xf3\\xa0\\x10\\x15.k\\x12@\\xcf\\xba\\xba\\xda\\xd6\\xff\\xce\\x90M\\xbe\\x98\\xfb\\xebv\\x0bW\\x87\\xebk\\xd6i(\\xc6J*\\x87\\xac;\\xec\\x0e\\xfd\\x08w\\xe6K\\xc6\\x96U\\xfd\\xe0\\xcaj\\x1b\\x06\\x8f\\x9e=\\x82\\xf5m\\xc5\\xf5\\x9fu+a\\xbf\\xb6U?@\\xcfn\\xb8\\x95\\xd2!\\xfa\\x9f\\xdf\\xff\\xf8\\xb8\\x87}5\\xdc\\n\\xe1\\x8e\\xa8Q\\xe7\\xddR\\xf8\\xe7\\xd7\\x87\\xed\\xf6\\x1e~9T[\\xde\\x03\\x1b\\xd9?J\\xb4\\xe8\\x89'U\\x0fu\\xe3~\\xfc\\x91\\x17\\xf9\\xec\\xa6mo\\xb6l%\\xda~u\\xb8^\\xbd:tBw?>\\x955\\x16\\xe2\\xfa\\xdb\\xf6\\xb0\\xdd\\xf0\\xe5\\x927\\xda\\x91\\xb4\\xae\\x9a\\xb6\\xa9\\xd7\\xd5VX\\x00\\xb7\\xa4'lu\\xb3:\\xe3]%\\xec\\xe1\\xa3\\xd5#1\\xd5\\xda\\x81/\\xe6l?\\xb0\\xcdS,\\xb2s\\xde\\xc0^\\x18\\x8f5;\\x83\\x81U\\xbb\\x1e\\x0e\\xfd\\xa1\\xe2\\xcd\\x95y\\xf6\\xfb\\x9a;\\xce\\x0d7\\x93\\xb7\\x0c\\xae\\xea\\xa6\\xea\\xee\\xe5\\x11\\xe9\\xfd\\x9e\\xb9\\x0c\\x9dBi\\x86[v\\xef\\x16\\xc5m\\xeez\\x80z\\xe03\\xff\\xd0\\x9b\\xf0\\x9b\\x81\\xefB\\xdakx\\xd1\\xdc\\xaf\\xe0\\x87\\xf63\\xbb\\xe3\\xde\\x03\\x9f\\xe8?\\xbf\\xffQ\\xcdpG\\x1e\\x17\\xc1\\xd5\\xcf\\xd5\\xbf\\xf5-\\xdb1\\xf8x;\\x0c\\xfb\\x8fg\\xf2\\xbf\\xfdG\\x81\\x16hZ\\xf5\\xeb\\x99\\xd0\\x1e\\xee\\x9f\\xb4bV\\x88\\x16\\xf7l\\x80\\xc3\\xde\\x91'\\xf1CH9\\xac\\xbbc\\x9dl\\xf2\\xae\\xda\\xf7R\\x15D\\x8d\\x87v\\x04\\x19\\x89\\xf5\\xb9\\x96\\xa6\\xaa\\xea\\xe1\\xba\\x15\\xcb\\xccsd,\\xfe\\x16\\xce\\xaf\\xa7\\x1a\\xf2\\xe1\\xdbw-\\xb7(\\x9b\\xb1\\x11b=\\xee\\xfb\\xc3\\x8e\\x1b2D\\xc0\\x8b\\x06~\\xb8\\xb8x\\x07\\xdf\\xbf\\xbe\\x00u\\x08\\xf1\\xf3\\xfb\\x1f\\xe5\\x84\\xba\\x17\\x0bz\\x05\\xffj\\xab\\xe3\\xc5\\xfd\\x9e\\xfd\\xf9_\\xff\\xec\\x88\\x03\\xbd\\xd7i\\xf4\\xb8\\xcb\\xc5G\\xf4\\xe4\\xbek7\\x875\\xe3\\xde\\x01\\xeb\\xba\\xd6\\xb9hD\\xd4f\\xca\\xfe\\xef\\x85\\x81\\x16K\\xac6\\xfdk>W\\xdb\\xf6\\xd3a?n\\xd5\\xae*\\xbe\\x83m\\x1b\\xd4\\xac\\x00o\\x8a(\\xfb\\xb6\\xba\\x13C\\xbf3tt#\\x95\\xb4\\xd2U\\xe5\\xff\\x7f\\xd7\\xd6\\x1b\\xeeo\\\"\\xa2d\\xc1b\\xfau\\xec\\xba\\xed\\xd8\\x99\\xfe\\x90\\xcb\\xab\\x86\\xfa\\xaa\\xde\\xf2\\xf5\\x9f\\xafU\\xbd\\xde`s\\x13\\xd1\\xdd\\xb1\\x0d\\\"\\xafm\\xb8\\x19jn\\x98xY\\xcc\\x8d\\x15<\\xf9\\xb9g\\x9a'\\x90\\xb7\\x9a\\xab\\x07\\x9f\\xebR?\\xaa\\xa6\\xba\\xc1Zy\\xd51\\xb9\\xea)\\x81\\xab\\xa7H@\\xb6\\x1d\\xd8s\\x18\\xb8\\xcd\\xbc>4k\\xa9\\xc1\\xbc\\xbej\\xce\\x8b\\xb5\\x8e\\xef\\xe2\\xcd\\xdd/\\xde\\xad\\xad\\xd8\\xf2\\xbb\\x9b^e\\xab\\xaf\\x0e|'\\xcd-0;\\x13~d=\\xe8B\\x0e|\\xb0\\xc4&u\\xd4\\xfb+vS\\x8b=\\x80#Lp\\xff\\xba\\xe6\\xe2~\\xcfVR\\x1f\\xab}\\xdd\\xaf\\xd6\\xed\\x0e\\xb3R\\x1f\\xc4\\x8c\\xe8\\xe5F\\x9bO\\xb8\\xc6\\x9e\\xdd\\xf0D\\x9d\\x1c\\xcaH\\x85\\x9cBOa\\xc7\\x1d\\x14G\\xdc\\x152\\x99Ec\\x84\\xef<\\xba\\xb8\\xd2w\\xee\\xf7l]_\\xd7k\\xe8\\xd9\\xaej\\x86z\\xdd\\xcfU]\\xcc\\x91\\x84\\xa58\\x80\\xcf\\x8d\\xad\\xd2?\\xf1i|\\xc5\\xb4[f,\\xb4\\xce\\xba\\xaa\\x16\\xa7\\xea\\xaa\\xbdC\\x16h\\xd9$\\xa5\\x92fsB5\\xf8\\xf8\\xa2\\xb9\\xff8\\xb1\\x90T\\x0dT\\xddU=t|\\xd2\\x04j\\xa2\\xed`\\xb5m\\xad\\xbe\\x90;\\x95\\xf9Ppk%\\x0c\\xaa\\xac\\xc9\\x95\\xebn\\x98ei\\xef\\xc1R\\x99wZq\\xb7\\xf5\\x95\\xa8\\x9e\\xb2\\xa3=\\xf4\\x87\\xfd\\xbe\\xed\\xc4\\n\\xb4\\xaf\\xd6\\x9f\\x9e\\x1d\\x1a\\xfe\\x1f\\xbe\\xee\\xc8q\\xec\\xb1Y\\xe2.\\xb8\\xed5\\x1c\\x06i \\xf4\\xf4\\xebAfR\\xd4r.\\xc2\\x0dkX'6\\xd0rs4f\\x0b\\xbc\\xb0\\xec\\x91\\x1c\\x82\\xb9\\xfc\\xd7_*\\xb1\t\\xf9\\xfa9\\xbc\\xe3\\xf5\\xe3\\xf3NU\\xb52\\xd1\\xab/\\xff\\xee\\xef\\x90e\\xe0\\xbb\\xb6\\x85\\xeb\\xb6\\x85o`\\xb5Z\\xfd\\x0f\\xe7g\\xde\\xd8\\xaa\\xb9w\\x7f\\xa8\\x9a\\xfb\\x15/\\xee\\xbb\\xae\\xdd=\\xb9n\\xdb\\xa7\\xee+\\xab\\x95k\\xe7\\xebkx\\xc2?\\xfdYT\\xf0\\xa2}\\xf27\\xfc\\xdb\\xa7\\xf0\\x7f\\x10\\xdb\\x86}\\xff\\x17\\xbc\\xed\\xbf\\x8f\\xb4\\xfd\\x9f\\xaa\\xbbjq\\xe3\\xe1\\x1b\\xe1kp\\xa9\\x0bZZ\\xf7O\\xbek\\xdb\\xd5z[\\xf5\\xbd\\xa7\\xa1\\xb2\\n\\xfceYw\\xe3\\x03\\xb7,\\xab\\x07\\xc6.\\xf8\\xfbH\\x17\\xbc\\xbb\\x1fn\\xdb\\x06\\xe9\\x04Y\\xfawm\\xfbd\\xb5Z=\\xc5\\x06Zv\\xc0\\x13\\xf47\\xa1\\x04\\xa2[\\xa8\\xbd\\xc2?:\\x97\\x9d\\xf2\\xea\\xf5\\x87\\x97\\xef\\xcf\\xdf]\\xbc}\\xff\\xd46\\x8a\\xa0\\xc4KE\\xc1\\x0b\\x90E\\xe0\\xdd\\xf1\\x0f\\x91\\xee\\xf8\\xbeu{Bt\\xc5\\xf3o\\xe0o\\xf6W\\xab\\xef\\xda\\xf6\\xff\\xacV\\xab\\xbf\\xb8/U\\xcd\\xfd\\x19wc\\xf8\\x9bUs\\xbf\\xbfZ\\xbda\\x9f=\\x15\\xac\\xaf\\xc5\\x9b\\xff\\xed\\x1bh\\xea-:\\xf6h/\\x01R,\\xfa\\x9eUa\\xe43U\\x03Y\\xd7\\xd5\\xcf\\xcd\\xae\\xea\\xfa\\xdbj{\\xd1JU^Z\\xbd\\xd9\\xdf.\\xc4\\xf9\\xc8\\xfa\\xd3h\\xbd\\xb4+\\nW\\xf7\\x93c\\xa0\\xed\\xab<&\\xb8\\xd7\\xe8}\\xbe\\x98\\xce\\xc5=F\\x16\\xfag|W%x\\x0eV\\xdc)z\\xcc\\xbd\\xe3\\xd1\\xd6\\xf3u@\\xe3J\\xe5X\\xcf\\x05\\x8eF\\xb5\\xd9\\xde\\xeb\\x9d\\x80\\xb3M\\x1b\\x1d.\\x15\\x0f\\x18\\xf4\\xee\\xf0\\xf1\\xb3\\xc7sqj+\\xa2\\x8b\\x96{\\x0f\\xa6\\xf4\\xee\\xd1u\\xdb\\xae\\xae\\xaaNT\\xfa\\xcb\\xb3\\xfb\\xd5\\xbf?\\x92-\\x96\\x1e\\xb5\\xbb9\\x10E>\\xe2\\xefq\\xc3>\\xfb\\xe9\\x9f>\\xbc}3\\xff\\xcb7\\xdf|\\xf3\\x8d\\xdb\\xf7\\xfc\\xbdiW*=\\x91\\x96O4\\xb5\\x0cK\\xcf\\xfc\\xd0\\x8fh\\x88\\x9b\\xc3\\xb6\\xea\\xe6r\\xdc\\xcf\\x07\\x91\\xf77-\\xa0g\\xc0vWl\\xb3\\x99\\x96\\xd23\\xb5*[{Yca\\x93q\\xc1\\x8f\\xff\\x8b7\\xfb\\xa3\\n\\xbe\\xcc\\xa8\\xc9t'\\xae\\xf4\\xc4}\\x8e\\xb8\\x96\\xd5\\xfa\\x13\\x9f\\xb5\\xd3V\\xe4\\xba\\xde2\\xd72\\xea\\xd9\\xfd\\x8eu}\\xdb\\xa0\\xea\\xacb\\x06\\xd7u\\xd7\\x0f\\x97\\xa2\\xe7\\xbf\\x81\\xaf]I\\xe3\\x8b\\x82\\xc4T\\xbd\\xf7\\xfb\\xb8-\\x06@K}$\\xda\\xff\\xe89<\\xc24{\\xde\\xac\\x95\\xac\\xfd\\xa33L\\x8e\\xa8\\xf7\\x9bj\\xc7e\\xfdOY\\xc5?\\xa0/\\xf2z[\\xef\\xc5*\\x7f~\\xad\\\\\\xe2\\xf9\\x18\\xcb\\x11\\xaa{\\xf8\\xcc\\xb6\\xdb\\xaf>5\\xedg\\x19!\\xbe\\x15A|\\x15\\xd2u\\x15u\\xaeNg\\xd2M\\xb3tl:/TEr\\xc5\\x11\\x98s\\xa16s\\x81\\x1f\\x85\\x12k\\x1d\\xbam\\xb7\\x9bYPYL\\x81\\xba\\x19u\\x0fT\\x0cB\\xa9\\xde\\\\\\x96\\x10?j\\x1c<\\xe1\\xf3W7\\xd7\\xd9\\xf0\\xea\\xf8\\xcb\\x9f\\xff\\xf5\\xcfO\\x11\\xe5\\xcc\\x19\\xefy\\x01\\xf8\\x90\\x8bfsQ_\\xaf~\\xff\\xf5\\xef\\xfbG\\xc80\\xea\\xff\\x9b\\xf9\\xe3#\\xe7_\\xc7\\x86C\\xd7H\\x80\\x82\\xfec\\x7f:\\x0d?\\x9d\\x86\\xff\\xd6O\\xc3\\xe7hR$\\xd2N\\xc9\\n6>S\\xd2\\xde\\xbf{\\xa9+\\xe9\\x1c\\x85\\xe3A\\xfe\\xe2\\x11~\\xd2\\x9c\\x18\\xd0\\xc0\\xbdw\\xf8\\xc3\\xe1\\x80\\x82!{\\x7f\\xc0\\xbe\\\\\\xb8\\xbeX\\xb0\\xde\\x1b\\xaa\\xcf\\x08\\xd4\\x97\\n\\xd3\\x87\\x83\\xf4\\x8bB\\xf4e\\x03\\xf4\\xde\\xf0|\\xd9\\xe0\\xbc'4\\x9f\\x19\\x98w\\xba\\xdb\\xf5\\xbcK\\x07\\xe53C\\xf2\\x85\\x03\\xf2\\x19\\xe1\\xf8\\xd2\\xc1\\xf8b\\xa1\\xf8\\xb2\\x81\\xf8ba\\xf8x\\x10\\xbeX\\x08\\xde\\x17\\x80\\xcf\t\\xbf\\xa3\\xe1v\\xc4su\\xedM^\\xa8\\x1d\t\\xad/\\x0c\\xac#a\\xf5\\xa8\\x9f\\x14v\\x1e\\x9d\\x15ta8}\\n\\x9fc\\xfd\\xfb\\xbbx\\xd9\\x85\\x03\\xe9n\\x18\\xbd@\\x10\\xbdh\\x08\\xdd^\\x0c3\\xc3\\xe7H\\xc8<'`\\x1e\\x8c\\x18{\\x82\\xe5\\xd1P\\xb9\\x1bc\\xa3\\x87\\xc9\\xddo\\xff\\x82\\xb5uQ\\x80\\x9c\\xd2\\xd8Xp\\xdc\\xdf\\xb6h`<!,>\\x8fed\\x86\\xc4\\x83\\x01q\\x7f8<\\x14\\x0cG{\\x81\\x1a\\x08\\x8f\\x85\\xc1\\xed xF\\x08\\x9c\\x10\\x00\\xa7\\x87\\xbf\\xa3\\xc1o$\\xb6\\xec\\x14\\x87\\xbc\\x13\\x0bz\\xe7\\x85\\xbc\\xd1J\\x19\\x7f)\\x1a\\xec.\\x1c\\xea.\\x1a\\xe8.\\x19\\xe6\\xf6\\x06\\xb9\\xed\\xc8\\xa1\\x1d\\xe0.\\x13\\xde.\\x16\\xdc.\\x1b\\xda\\xa6\\x05\\xb6\\xa3ambP\\x9b\\x12\\xd2v\\x02\\xdani\\xd4\\xe0f8\\x98M\\x0ce\\x13\\x02\\xd9\\xb3*\\x97\\x0cb\\x17\\x0ea\\x97\\x0b`\\x97\\x0b_/\\x1f\\xddh\\xe8:\\x16\\xb8\\x96V;\\x10\\xf0[\\x12\\xed\\x1b\\xaf\\xc4}\\xff\\xee\\xa5\\x92\\xe5\\xc4\\xf8n\\xda;\\x83\\xd0t\\xdf\\xf65=\\xfdz\\xaf\\xd8\\xb9\\x11zlJ\\xe6\\xf5F\\x16\\xd7\\x86\\x99\\xdeq\\xbe\\xd9\\xb2Y\\xc1\\xbf\\x12\\x0c!\\x0d\\x83\\xd0,\\x00\\x1f\\x9c7\\xc3C\\x82\\x0f\\x94\\x02Mm\\xd2u\\xd6c\\xad\\x18\\xa0\\x1a\\xa8\\xd6\\\"Jn\\xf2\\xa7\\x88\\xbf\\x0e\\xf5\\x98s\\xa5\\xb5+\\xac\\xac\\x89\\x14\\xa7\\xbb\\xba\\xb9\\xdc\\x98j\\x0e'\\x95\\xfa\\x8d\\xa8\\x94\\xd3\\xb4\\x9f\\xea\\xa6\\xde\\x1dvZw\\x14\\x14E\\xab\\x05W\\x19\\xd6p\\x8fM^\\x1a\\x01\\x12\\x02\\xa2e\\xed\\xaa/z\\xa0i\\xe0\\x10\\x7f\\xcc\\xe1\\xa7\\xea\\x8b\\xa8\\x87\\x14#\\xaa\\xf1\\x82\\xb7\\x94/Z\\xac\\x13\\xba\\xab\\xab\\xc8;vR\\\\8o\\xea\\xa1\\x9e\\xb1\\x05\\xc8\\xd0\\x0c\\x98\\xd7?\\xc2\\xaem\\x86[\\x0c\\xde>Sq\\x97H\\xa7Wp\\x0e\\xf1\\x12\\xf7r\\xe1\\xa6\\xbdc]Sq\\x93\\xaf+\\xd1{\\xa6\\x8f\\xbeY\\x81<s2\\x8d\\xbd\\x08\\x86\\xbbv\\xfct\\xf6s:\\xfb9\\x9d\\xfd\\xe8\\xe7t\\xf6\\xa3??\\x9d\\xfd\\x9c\\xce~Ng?\\xa7\\xb3\\x9f\\xd3\\xd9\\x8f\\xf1\\xef\\xd3\\xd9\\xcf\\xe9\\xec\\xe7t\\xf6s:\\xfb\\x99\\x9e\\xd3\\xd9\\xcf\\xe9\\xec\\xe7t\\xf63=\\xa7\\xb3\\x9f\\xf19\\x9d\\xfd\\xfcu\\x9d\\xfd\\xc8\\xbb\\xfd\\x0e\\x0e\\xe1\\x92\\xe5\\xb7\\xbb\\xb7\\xd0\\xea\\xdbR/?\\\\\\xbc\\xb8\\xf8\\xf9\\xc3\\xe5\\xcfo>\\xbc{\\xfd\\xf2\\xfc\\xbb\\xf3\\xd7\\xaf\\x82\\xef\\xbdz\\xfd\\xee\\xed\\x87\\xf3\\x8b\\xcbw\\xaf\\xdf\\x9f\\xbf\\x0d\\xbf\\xfa\\xc7\\xb7\\x17\\xe7o\\xbe\\xa7\\xbc\\xf9\\xee\\xc5\\x87\\x0f\\x91r\\xdf\\xbf\\xfe\\xa7\\xd7//\\\"/}\\xf7\\xe2\\xfcG\\xe3\\x95\\xf1j[Jc\\xfd\\xf1q\\x1d\\xf4\\xfc zZ\\xf4\\xa5\\xf0\\x96\\x0d\\x96D5\\n\\xf22F#\\x96;\\xd3\\x97`\\xa7\\x07+i\\xd1\\xc8\\xcb\\x95p\\x0ci\\xcb\\xb2W\\xe1\\xa2\\xe6\\xe3\\xe6\\x966\\xff\\xdd8\\x0c\\xb0\\x8a\\x81\\xcdAXAY\\x13\\x11D6\\n\\x9eG\\xd3=U\\x99\\xe9\\x85[\\x93\\xd9\\xcf\\xb4\\x8a\\xc8X~j=\\xa4\\xd6\\xb9\\x15\\x90\\x7f\\x0f\\x94<\\x1bci\\xd6n+3\\xf8'\\xa10\\x91\\xe2\\xb5F\\xbb\\x15\\xd0\\xbf\\xe4T\\xe1\\x8a\\xb1\\x06:\\xf6ol=Dk\\\"\\xa7\\x8d[\\x0f\\xf9\\xf7\\x9cZ\\\\W\\xf5v*\\xfe\\xban\\xaa\\xed\\xe5Pm\\xb7\\xf7\\x972\\xee\\xf5\\x9c0\\xfd\\xdc\\xaf\\xf4)\\xb6\\xf8\\x05\\xc4/*\\x8e\\xa6=\\x93\\xe90\\xe5O\\xb7\\xac1\\x84\t\\xe4\\x91\\\\`\\xc6z\\xdf\\xd5\\x15\\xdc\\xbc\\x7f\\xf7\\xf2L\\xc5\\x97\\xf4\\xb1U\\xd3\\x0e\\xb0o\\xf7\\x8a\\x95\\xef\\xd0\\x0c\\xf5\\xd6\\xdajk\\x11\\x8f\\xfb\\xf9q\\x92X\\x17Y\\xb3YH?\\xff\\xf8\\x9e\\xf5\\x8fI\\xd1\\x98\\xea\\xaa\\xe7\\xfe\\x12\\xe9\\xdd\\xc7MK\\x13\\xda\\xb4\\x97\\xdcs\\xbb\\xbccC\\x1b\\xfd\\xa0?\\\\\\xed\\xea\\xe1r\\xa8w\\xd4{\\x88\\xed\\xdb\\x94\\xf5y\\x1bk69b\\xe4U\\xf0\\xa7S\\xda\\xdf\\xe8)\\xad\\xba\\xa3\\xbf\\x1f\\xaa.K[\\x94\\x9c,e\\x99u\\xb2^\\xdd\\xad[%:\\xa6zf\\xc7]\\xd3N\\xd9:\\xe4\\xa84rR\\xfa\\xc1p\\xcf\\x9c*\\x9an\\x19\\xc5%\\x8b-\\xeb\\xde\\xd70W,\\xe2\\x86E]\\xb0\\xa0\\xfbEv\\xbdp\\x85/\\xe1r=\\x90\\xbb\\x15\\x1b\\x93c\\xb8Z\\x96{\\xf3\\xe0.V\\xb4\\xfc\\xe3\\xb8V\\x96[\\xf5\\x90.\\x15\\xeeN=\\x94+5\\xb9Q\\x88\\xa5Q\\x97C\t\\xfdHF\\xd7z\\xd6K\\x92\\x9b\\x82\\xe6v\\x00\\xe5\\xe8\\xc8\\x81W#I}\\x01A\\xd8\\x8a\\x8a\\xad\\xf3\\xf0\\x9f\\xf7\\x0e\\x92\\xc5\\xbe\\x80#)\\xc7!p\\x84\\x15\\xbeid\\xe6\\x00\\x15M\\x13\\x04+U0\\x98EkM.J\\x12\\xad\\xae,1\\x87\\xd6,&\\xfd\\xa6\\x0f\\x9d\\xccu\\\\\\xaf\\xd7;\\xdd\\x83\\x8a\\x1c`T\\xf0L\\xfa\\x85\\xae\\xf4\\x7f\\xe1\\x8bm\\xcb\\x19\\x83\\xc2\\xe6\\xe0(\\x97\\xd7\\xfe\\xc1fe\\xcf2\\x0bs\\xfd\\x92&\\x02U{]\\x9f\\x13\\xdb\\xcb\\x89\\xed\\xe5\\xaf\\x83\\xed\\xc5^O\\x12\\xd6\\xad>i\\xe1Zx\\x0f\\xa8\\xda\\xca\\x07\\xaf\\x03\\x9d\\xbd\\xe3&3\\xcb[A;&CtC\\xab\\xde_4\\xa3tQ\\xc8=V^\\x0d\\x9a\\xd5\\xf5G\\xd6\\xdc\\x0c\\xb7:\\x04\\x89\\xe6\\x97\\x8f\\xb9\\xe5\\xa16\\xcf_\\\"4Z}\\xb0\\xa8\\xd5(\\xb4\\x01N\\x0e\\xf5\\xf25\\xb4\\xe8\\n\\x9a\\xefP\\x83\\xdd\\xf8,\\x80\\x04D@\\x12@\\x9e-n\\x82`A\\xc0\\x04x@\\x13`\\x01'@\\x9e\\x1e\\x84\\xe7\\xa3\\xf9\\na6\\x8a\\xd7\\x17\\xcd\\xc5_\\x0emw\\xd8\\x11;\\x93\\xb6\\xa2\\xbb\\xbd\\xacF\\x7f\\xcf\\xba5k\\x06\\xbe\\x16s\\x83%V\\xb3~\\xa8>1\\xe3\\xb2\\x90\\xbbv`J=\\xd4\\xf1\\x8a\\xb3\\xb6_9\\xc9\\xbc\\xeb\\xb6\\xe9\\xeb\\x0d\\xe3\\n)\\xe2t\\xb3\\xc5\\xf9\\xb6c=\\x1f\\xcf\\x07j#\\xd7\\x90nP\\x19+\\xff\\xc2\\xc4)\\x0d\\x93\\x00\\x18S\\xdf\\xb9/\\xb3\\x82W2\\xd0\\x87k\\xd1\\x7f_\\xfd\\xa3\\xd9\\x90;6\\xb4\\x97\\x0f\\xdc\\x1a\\xe9\\n\\xb4\\xd7\\xf0G\\xa6\\xc6F\\xcc\tqu\\xbd\\xfa\\xa7H&\\xb0\\x9b\\x17\\x1d1\\xde\\x18\\xb6\\x19;@7\\xf9\\xebg\\x7f\\x8f\\xec\\x8c\\x8fp\\xb1\\xb4\\xebO\\xa8\\xca'{\\x14\\xba\\xd5\\xcf\\x97\\xcc\\xbe\\x82\\xe1,\\x07\\xb6\\x04\\xa15\\xd2\\xbfB\\x0e\\x9e{g\\xb2w\\x8c\\x05\\xe1L\\x10\\xb9\\x7f\\xa6$\\xac\tJB\\x9b |\\x0bM\\x16\\xc4\t\\n\\xc2\\x9c \\nu\\x82\\xa5p'\\xc8\\x81<a=v\\xbf\\x17\\xfa\\xe2\\xbd\\x91&\\x03\\xfa\\x84\\xc8\\x92\\x8e\\x94\\xf7V\\x9a<\\x08\\x14\\\"\\xee\\xb0\\xf7\\xdeLS\\x1a\\n\\x05\\xf9p((\\x0f\\x89\\x82<X\\x14\\xe4A\\xa3\\xf0)\\x8aV\\xb2\\x18`\\n\\x8a\\x83\\xa6\\xa0$p\\nH\\xe0)(\t\\xa0\\x82\\xe0\\x0d6y@*l\\x8e\\xa3\\xb7\\xd8HS\\x13\\x85WA6\\xc4\\n\\x11\\x88\\xdde\\xb3\\x18x\\x05\\xbe\\xfbl\\\"K|\\xe0N\\x1b\\xca\\xfa\\xbf\\x10\\x8c\\x85\\x99=\\xef\\xcd6\\xb1z\\xe4\\x01\\xb3,a\\x02\\xa6\\x85\\xdeoS\\x04\\xa0\\x05\\xa5AZ\\x80\\x00\\xb5 \\x1f\\xaceI\\x1b\\x90\\x9bn\\xf2\\xe0[\\x10C5A\\xe8\\xbe\\x1b\\x02\\x94\\x0b|\\xd7e$@\\xba\\xfc2\\x9c\\xf4\\xfc,x\\x17$tF\\x0c\\xe6\\x05\\xd1vG\\xe1^\\x90\\x06\\xf9\\x02\\xf4\\xee\\x85L\\xe8\\x17\\xc4\\xe0_\\x10\\xb9\\x0d'v\\x1fN\\xa0\\x97\\xa8p0 @\\xc2\\x00\\xbd\\x17'\\x0b\\x1a\\x064x\\x18$A\\xc4\\x80\\x02\\x13\\x03o\\xafaw\\xe4x\\xdf\\x8d\\xc1\\xc6 \\x1b:\\x06\\xa1\\x8aZ\\x7f-\\n#\\x83L(\\x99%\\n\\xbb?\\xa70\\xb8\\x0c\\n\\x03\\xcc |\\x8b\\x0ev\\x8f\\x0ev\\x93N)\\xc0\\x19\\x94\\x04\\x9dAq\\xe0\\x19\\x00\\x15|\\x06\\x14\\x00\\x1a\\xd0Ah@\\x04\\xa2\\x01~\\xb3\\x0e~\\xd7\\n\\x1d\\xb6\\x14\\xbb]\\x87\\x0cL\\x03\\x1a8\\x0d\\xb0f\\x94\\x04\\xa9A.P\\xcd\\x92\\x85\\xdc\\xbaS\\x12\\xba\\x06E\\xe1k\\x90\\xad\\x0fQ\\x18\\x1b\\x10\\xa0l`-D6\\xa4\\x0dB\\xbb!\\x1b\\xda\\x06\\xb1\\xd4\\xdf\\xe8\\xbb^\\x88\\x1b\\xfe\\xba\\x0f\\xe6\\x86\\xbf\\xed@\\xdd\\xf0\\xd7\\x10\\xb8\\x1b\\xfe\\xa2\\x05y\\x83\\x94\\xdc\\xeb\\xe9\\x83P\\x0eH\\x89\\\\l\\xfd<PN\\xb6\\xbf\\xb8\\xe3\\xe7f\\xeb\\x07\\x81\\xa0\\xe1U:r\\xaevr}\\x8e\\x93\\xbb=V\\xc3\\x85\\xc6\\xe1\\xd58^.\\xb7~\\xfc\\x109\\xbcF\\xc7\\xc9\\xed\\xd6\\xcf\\x1c*\\x07\\x11\\xb8\\x1cD\\xc3+\\x05`s\\x96\\xc4L\\xec\\x9c%\\x0d\t\\xd9k\\xa9\\x148\\x1d,;QC\\xa0u\\x10\\x8e\\xb5\\xa1\\x10\\xbb\\xc87.\\xd4.\\xf2\\x81\\x1fr\\x17\\xf8\\x10\\x85\\xde\\x05\\xde\\xf7\\x83\\xaa\\xc0HMr\\x91U\\x8bEz y\\x93\\xbcSv\\xd1_\\x7fvQ\\x00\\xd8\\x07K\\x15\\xc7\\x0b\\xf2[(\\xb18\\xe0/\\x98wi\\xa7/\\x90\\xf2#t\\xa5\\x92\\xf2.\\xd5G\\xe9\\xa9\\x97\\xba-\\x7fm\\x90\\x014\\xb1b\\xb1\\x81\\x18\\xbc\\xe9\\x15\\x11\\x1b\\x11\\x9f\\xf0P>\\xc9\\\"\\x96fQ:\\xd1\\xa2p\\xaaE$\\xd9\\\";\\xdd\\xa2l\\xc2\\x05%\\xe5\\\"#\\xe9\\xa2l\\xda\\x05)\\xf1\\xa2l\\xea\\x05!\\xf9\\xa2x\\xfaE$\\x01cY\\n\\x06*(\\x98\\x96Q$1\\x83\\x98\\x9a\\x81~\\x99\\x94\\xae\\x91\\x9d\\xb0Q:e\\xc3\\x9f\\xb4Q8m\\xe3\\x18\\x89\\x1b\\x85S7\\xa8\\xc9\\x1b\\x85\\xd37\\xc2\t\\x1c\\xc5S8\\xfcI\\x1c\ti\\x1c\\xcb\\x139Pa>\\xfe\\\\\\xf9d$sx\\xd39\\xa2.E0\\xa5\\x83\\xe6q\\x94K\\xeb\\x08'v\\xc4kS4\\xb9#\\x9c\\xdeQ,\\xc1#7\\xc5\\xc3\\x11'<\\x1a\\xd4y(\\x9b\\xe6\\xe1K\\xf4\\xc8O\\xf5 \\xe47\\x04\\xd3=\\x88\t\\x1f\\xdeS\\xdf\\xc4\\xa4\\x0f\\xbf\\x1c\\xe4(,;\\xf5#\\xa5s(\\xe9\\x1f\\xf1^ \\xa5\\x80$'\\x81\\xe0\\x07\\x85\\x05\\x12A\\x08\\xa9 \\xb1d\\x90x:H\\xb0\\xd7RRBhI!xZHvb\\x0895$59\\x84\\x98\\x1e\\xe2\\xefE<E$\\xf0>%M\\xa4D\\xa2H\\xb0\\xca\\xce\\xdf\\xb3\\xd2E\\x1ciH\\xfaH\\xd1\\x04\\x12_\\nIf\\x12\\x89[e7\\xa9\\xa4|ZI$\\xb1\\x04O-\\xc1\\x93KJ\\xa6\\x97\\x14N09F\\x8aIJ\\x92\t1\\xcd$)\\xd1\\x84\\x9ej\\xe2I6\\xf1\\xa5\\x17\\xd0\\x13\\x0c\\xe2\t'I)'\\xe4\\xa4\\x13\\xb4A\\xa5\\x13O\\xca\\xa6\\x9ex\\x92OJ\\xa7\\x9f\\x94N@\\xc9\\xd7\\x11R\\x12\\n-\\x0d\\xc5^\\xee\\xb0T\\x94\\xe0N\\x0eKGIKH\\x89\\xa7-\\x10>\\x08%\\xa5\\x90\\xd3R\\x12\\x12S\\x88\\xa9)\\x0b\\x92Sb\\xe9)e\\x13T\\x1e<E%>\\xda\\xc7LR\\xf1\\xa6\\x85Du\\xeax\\x89*Iu:n\\xb2\\x8a7]\\xe5\\xd7IX\\x89\\xa5\\xac<|\\xd2\\n\\x96\\xb6\\x12O\\\\\\x89\\x87\\x8f\\xb2\\x92W\\x1ciX2K\\xe9t\\x164\\xa1%=\\xa5e\\xf1Y\\xa6'\\xb1%\\x96\\xec\\xe0Kn\\x89|\\x87'\\xb8D>\\n'\\xb9\\x04>\\xf6&\\xba\\x90\\x8e\\x91\\xb1\\x04\\x83X\\xbaK\\x86\\xe0@\\xd2\\x8b?\\xed\\xe5DU\\x97\\x9c\\x08S8\\x15\\xa6\\x14U]4!&C\\xb5\\x82i1\\x8b\\xe5\\x1e!9\\xe6\\xc4\\x92wb\\xc9\\xfb\\xed\\xb2\\xe4\\xfd\\x07\\x9a\\xad\\x95Fg\\xa3?J\\xca\\xd7\\xba\\xe0^\\xcb{\\xd1\\x05\\xc9\\x19[\\xc2\\xe3\\xf1\\xcc%\\xe9\\x0d\\x99\\xd3\\xa8\\x93\\x1d\\xc8Uo1\\x1b\\xd5_\\xcf-\\x14\\x81\\\\<\\xa4\\xcb)\\xe3+>K\\x1a\\xdb?\\xb6\\x03K\\x1e\\xd4\\xbbvpn0 \\x8d\\x8d7\\xb1.}\\x16\\xf3:\\xd0h\\xb7e\\x82\\xce\\xfc\\xd5\\xf0\\x8a\\xff\\x8a\\xed;\\xb6\\xe6>3_Y\\xd85\\xebt\\xea\\xd1G)\\xac\\xff\\x08u\\xd3\\x0f\\xac\\xda\\xa8$\\xb5q\t\\xef\\xd9\\xe0\\x1e\\xa9r\\x1bY\\xb3\\xde\\xb6\\x05\\xe2\\xa0g#C\\xe2\\xf55|\\xdc\\xb2\\xe6\\x89\\x92\\xff\\x14\\xbe\\xf9\\x06\\xbe\\xfe\\xa8\\xc2\\xec\\xd5\\xa0\\x1a!\\xdc\\xef\\xcfL$\\x01|m{\\xe0\\xe7\\x8d\\xc8\\xb3\\xb2\\xfe*\\xd3\\x0e\\xd6U\\xcf\\xfa\\xd9\\xee@\\x98c\\xbd\\xdb\\x1fZ\\xf8\\xe3\\xdb\\x8b\\xd7\\x97o\\xdf]\\x9c\\xbf}c\\x06\\x07\\xb0\\xccud\\x98p4\\x93Gf\\xf0\\xbd\\x7fy\\xfd!\\xf8\\xfb\\x8bo?\\\\\\xbc8\\x7f\\x13|\\xe7\\xcd\\xdb\\xc8\\xcf\\x97\\x7f:\\xbf\\xf8\\xe1\\xf2\\x8f\\xaf/\\xdeZZ\\xa1\\x82<\\xf1\\x8a\\xabq\\xc2\\x14\\xf0\\xb8\\xd9\\xe1\\x986\\xcb'\\xe2\\x1d\\xe3\\x11>H\\x18(\\xecmw\\xb8\\xb0\\xb7\\xf0A\\xc3\\xdet\\x86\\x0e\\x7f\\xc93\\x80\\xf2I\\x18\\xc6\\xe9\\x93\\xd8\\x0e\\x00\\x80\\x9b\\xca\\xb7r\\x1a\\xa2\\xb1:A;\\xa8\\xf4\\x02$\\xfd\\xe0M}\\xc7\\xf0d2\\xd4\\x07E\\xdf\\xf4\\x0f\\x8f\\xb7\\x81\\xc6N\\xa5i\\xbfj\\xf7f\\xd5<G\\x8f\\xce\\xa8>\\xb7\\xff`\\x08\\xbdW\\x94\\x84)\\\"\\x95\\n<\\xc7\\xfe\\x08&\t\\xb6\\\\\\x94\\x93\\xe5\\xbfy\\xfb\\xdc\\xfa\\xf7\\xac\\x17\\x16\\xc8\\x9bt\\xcc\\x96<\\xfd2/Cl\\x08\\xef4\\xcd\\xa1\\xb74i\\xc0\\x13\\xa7p,\\x9a\\xfc'!\\x94m\\x0c-\\x9d\\xeavhj\\x11o\\x1a\\x991\\xc5\\xff\\xf4\\xfbmm\\xdf\\xb3\\xc4\\x9f\\x0fu\\xb3f\\xcf\\x95\\xcb\\xf0U\\xbf\\xf9\\x04\\xff}\\xf5\\x0f\\x7f?\\xb7t\\xd2\\x83~\\x8c\\xbf\\xfax|\\xd7_k^O\\xa3\\x86\\xb2\\xc3\\x9a\\xf0\\xee\\x0cDv\\xba\\xf8R\\xd0u\\xf6\\x83\\x1d\\xef;\\x7fu\\xa6#\\xb4\\xac;\\x1bo\\xccu\\x86\\xc3\\xe5\\x864\\x1d!\\x8a\\xab%jA\\xe3\\x85\\xe4\\xaf\\xa6c\\x1d\\x045\\xa6\\xede\\xfd\\xc6q\\x0e\\x88S\\x16\\x10\\x85/e1S\\x9c\\xe7\\x9c9\\xe2\\xea\\xc6\\xe7\\x9e\\x15w\\xd0|.Za'-8x\\xbes>\\xeaR\\x19_\\xfdi+\\x7ft\\xd5'\\xaf\\xf8I\\xab=\\xea\\xb6=l|\\xd3\\xef\\xc0E]\\xb8\\x90\\x13\\x972\\x88\\xd8\\xfb>G\\x8e:\\xa0\\xd8\\xbb\\x1eg.ap\\xe5\\x934\\xc4\\xd3Gq\\x97\\xae\\xb0S\\x97\\xe4\\xd6=\\x90cw\\x14\\xd7\\xee\\xf8\\xce]y\\xf7\\xee\\x01\\x1d\\xbc\\x90\\x8b\\x97r\\x14\\x81\\xb8yE\\x1d=\\x92\\xabGw\\xf6\\xc2\\xb5_\\xea\\xf0\\x95r\\xf9\\x9c\\xfaI\\xeeq\\x1dx\\xe5\\xdfHG@N\\xfa\\xfet$p:\\x12\\xf8\\xad\\x1f\t\\xb8\\xdb\\x0b\\xea\\xd6\\x85\\xc0i/\\x82\\xc9\\xef\\x8c\\x1b&\\x08\\x9b\\x16\\xfb*\\x08t(P\\xdd\\xf4\\xebe\\xee\\xd5\\x0f\\xd6\\xd5\\x01\\xbe\\x8b\\x1e\\x90k\\x11\\x16\\xd6\\xfe\\x0fh\\xed\\xbb\\x05\\x97:\\xb8\\xa0,\\xe3B\\x07\\xdfe\\x0e\\x0bk\\x8d\\xf6\\xf9\\xd2\\xcb\\x1b\\xac>O\\xba\\xaa\\xc1\\xd0;\\xcb\\xa0\\x8a?\t]\\xe6\\xaf\\xd4\\xcd\\x8d\\xaaB\\xdb`\\x8bH\\x1f\\xd2\\xeb\\xf7F~\\x0fA\\xaf\\xadC%\\xa4\\x8b\\x9d\\xc3$\\xe4\\x9d\\xf9!\\x12\\xf2\\x02~x\\xe4\\xbc\\xe8v\\x97l\\x8e\\xb1\\xbc\\xf6C\\xd5l\\xaaN\\x1d\\xa4i\\xcf\\x95|\\x0d\\xf4\\x1f\\xc7\\x13\\x1eB\\xe7\\xa0a\\x84\\xa0\\x16\\xce\\x0c\\xb0\\x154@>\\xb4\\xb7L\\xfe\\xd9\\x96\\x17\\x1c\\x98\\x9f\\xdc a\\x81\\xdc\\x80\\x00\\x9c\\x9b\\x05X\\xa1\\x80bA\\x00\\xb4\\xeb\\xed\\x9d#e\\xb7\\x18\\xda!\\xc6v\\x85\\x81\\x9d a\\xf7G\\xdc\\xf19\\xdb\\xf9cD\\xc9\\xf0\\x0d\\xfb)\\xc6B\\xcc|F\\xb6\\xde\\xc56\\xdd\\xc4\\xed\\xf6\\xd17\\xda\\x85\\xb7\\xd8\\xc7\\xdc\\\\\\x97\\xdcV?\\xc8\\x86\\x1a\\xdfJ{\\xa6_hwSh\\xe3\\x1c\\xd92S6\\xcbx-\\x97l\\x90Kl\\x8d=\\xcb\\xff[\\xc3\\xec9\\xbdm\\x9a\\xb8\\x98a\\xf3\\x99\\xb3\\x90\\x11\\xf3\\x98\\xae\\x88\\xc1\\\"\\x99)\\xdc8-5I\\xc6\\xe0(I\\xae!:\\x92\\xf9)bt\\xca\\x9b\\x9a|\\x03sD\\xb3\\x82\\xebz\\xdd\\xdc$\\xees=\\x97\\xae\\xa2Vi\\xa6p\\xd1\\xcbVgo\\x9bu\\xf3\\xed\\x85\\x94\\x8c\\xb4=\\x90k\\x0b\\xc9M\\xb7\\xdd\\xa1\\xff:\\xdef\\xc8\\xb1)g?\\x00\\xb5!nK\\x8a\\xd9\\x11W\\xf4B[\\xe2\\n*aO\\\\\\xa9Kl\\n&\\xa5\\xa0]\\x01\\xc4Q\to\\xdb\\xc7e?\\xdb-\\xf1:$\\xb3y\\xbfzeB;\\x08\\xf3<sW\\xaf\\x90$mxgoC6\\x8e\\xb1\\x7fC\\x01%\\xde\\xed\\x1b\\x0e\\\"Y\\xe0n.\\x86\\x8c\\x98Br\\xb0\\\"\\x1a\\x19b\\xca\\xa3AB\\xf0f)\\x05\\x9a\\xcd[Y)5\\xd6R\\x16\\xff\\xf3Z\\x84\\xbb\\xa1\\xdal:\\xd6\\x8b\\x88\\xa1\\xf8\\xebP\\xdf\\xb9^\\x92GO\\x13\\x17d\\xf4>\\xf0\\x936\\xfd\\x16\\xb4\\xc9iZ\\xd6M\\xde\\xa1[\\xbc\\xe3\\xee\\xd7<4_\\xf0\\xe6n\\xec\\xd6n\\xf3\\xc6\\xeeY-f*\\xee\\xf3\\xebT\\xd1\\xf4\\xe8\\xf6J\\xa3;\\xc8\\x93f\\x99eW\\x94\tG\\x8e\\xba\\x0d\\x1e\\x92\\xdb@\\xdc-\\x16v*Jl\\x1b\\\"\\xb5-Ih[\\x90\\xcc6@d;\\xe4\\x90\\xd8\\x96#\\xb0\\x8d\\x91\\xd7.$\\xae]LZ+\\xda\\xed\\x82\\xc7\\x03\\x84\\xb5\\x8b\\xc9j\\xa5\\xedu\\xe4y\\x89jsHj\\xe1\\xb0w\\xe4\\xf9\\x08j\\x97\\x90\\xd3\\x86\\x88h\\xb3IhI\\x04\\xb4)d\\xb3YD\\xb3\\x19$\\xb3\\xa8Y)J&[\\x9aH\\xb6 \\x89,\\x85@\\xb6 y\\xac\\x9f8\\xb6(i,N\\x18;\\xd0\\xc8b\\x97\\x12\\xc5zn\\xfc\\xc5Hb\\x17\\x13\\xc4\\xa2\\xe4\\xb0\\x81\\xa58@\\n\\x1b[\\xa5K\\x91\\xc1\\xfa\\x89`C5\\xc8#\\x80\\x95\\x84\\xaf3\\x81\\x18\\xf9k\\x11\\xe2\\xd7<\\xd2Wg\\x96\\xb8\\x0bnI\\xb2\\xd7\\x01!z\\xcd#y\\x8dp\\x98z\\xc9]\t\\xc4\\xae\\x18?c\\n\\xa1+\\xf6\\xfd_\\xf0\\xb6/$q\\xa55>N\\xde\\x1aj)\\x81\\xb45\\x89\\xb0\\xd5\\xe6\\xa5\\xcb&j\\x8d\\x90\\xb4\\x86\\x08Z\\xc3\\xe4\\xac\\x9e^\\xa1\\x93\\xb2\\xc6\tY]2\\xd6,\\\"V\\x12\tk\\n\\x01+\\x81|\\x15e1E\\x8aE\\xdf\\x8b\\x93\\xad\\xe6\\x12\\xadz\\xaa7\\xfb[\\x16\\xb9\\xaaK\\xa6\\x9aC\\xa4\\x8a\\x12\\xa7f\\x91\\xa6\\xba$\\xa9e\tR\\x03\\xe4\\xa8.g\\xa4K\\x8aZ\\x8a\\x10\\xb5 \\x19ji\\\"T*\t*\\x81\\x00U\\xc5\\x0c\\xe2\\xe4\\xa7\\xea\\xc5\\x08\\xf1)\\xc2\\x11\\x8a\\x95J%\\xb2\\x8c\\x91\\x9d\\x92\\x89NI$\\xa7V\\xe5\\xcb\\x92\\x9bf\\x11\\x9bbD\\xa6%ILK\\x12\\x98\\xe6\\x8c7\\x81\\xb84NZ\\xaam\\xbeMU\\x8a\\xee*\\xdc\\xf3d\\x1a\\x0fg\\x8c\\xa42\\xf8\\xaa\\x8f\\x8c\\x94@CJ\\\" \\x8dR\\x8f&\\x91\\x8e\\xfaO\\x0fJ\\x11\\x8d> \\xc5hl\\xdc\\x8eE.\\x8aPx\\xfe*\\x84\\xa2\\xa4z\\x1c\\x8fD\\x14\\xa1\\x0f}h\\xe2P?e\\xe8C\\x92\\x85\\xceiBC\\x04\\xa1\\xfe\\xe9\\x97E\\n*I@'a\\x99\\xec\\x9f\\xd6\\xb6_\\x8b\\xa0\\xd0|\\xa2\\xe77\\xf8\\xe9\\xcd=\\xeb/\\xd7\\xee\\xc1\\xa7'^\\xa4\\x92?\\x12\\xbeh\\xda\\xb4\\x97GL\\x05\\xf13\\x94\\xb8\\x13\\x15\\xef#(\\xf4\\xd3t&\\x89\\xf1\\x90r\\x0eG8o;\\x9dkO\\x0f\\xf5\\\\;@\\x99\\x994\\xcc^\\x82\\xcc$);6T\\x9bj\\xa8R\\xce\\xc3\\xf57\\xb2\\xaf\\xee\\x8d`\\xe7\\xf8K5\\x0c\\xd5\\xfaV\\x9eg\\x0c\\x0e_\\xf1LZ\t\\x16N\\xfcH\\xfb\\x83\\xe1$:\\xad\\x9a'#\\xc7}\\xa5\\x98s\\xe1}\\x0ds\\x08#\\xce`\\xd4\\x11\\x0c:\\x81d\\x07\\x10\\x9fb%\\x1c\\xbf\\x07r\\xfabcr\\x0c\\x87\\xcfr\\xb2\\x1e\\xdc\\xd1\\x8b\\x96\\x7f\\x1c\\x07\\xcfr\\xee\\x1e\\xd2\\xb1\\xc3\\x9d\\xba\\x87r\\xe8&gnnd\\x04*Z\\xe5\\xe4$\\xd34y\\x16g\\x92\\x9f\\xa4+Z\\x80\\x0e\\x13I\\xb7\\x0c\\x08\\xc2\\x96o\\xcc\\xa9\\x80\\xc2\\xe4\\x85\\xa7\\xab\\xedc|\\xde\\xf9W\\xdb\\xfb\\xbd\\xad\\xa2\t\\x9c`%q\\xfaz\\x1c\\x9b\\\\\\x14\\x92\\x02]\\xd9(\\x99\\xedl\\xfa\\xa6\\xd3\\xac\\xe94\\xbb\\xe3z\\xd7\\xde\\x99N:EG\\xf8*<\\xf3}\\xa1\\xcb\\xfe0\\xccW'f\\xff\\x14KP\\x8a\\xd9?\\xd4\\x05\\x99\\x16a\\xae_\\xd2:\\xa0j\\xaf\\xebs\\xe2\\xd29q\\xe9\\xfcV\\xb9t\\xd0\\x15+\\x89WG\\x7fC]\\xb3d\\xfew\\xf2\\x8a\\xa5\\xb1\\x87\\x06@\\xc2i\\xcc\\xec\\x1d7\\xc3\\x9c\\x0d|\\x1b\\xde1\\x19\\x19\\x1cZ\\xf5\\xfe\\xa2\\xc9\\xe4\\x81BBHy\\xd2 \\x91S8-\\xd8\\xe6\\xf9K\\x84F\\xab\\x0f\\x16\\xb5\\x1a\\xc5\\x9b\\xc0\\xc9\\x8d^\\xbe|\\x16]<\\xf3\\xddh\\xb0\\x1b\\x9f\\x85Z\\x81\\x08r\\x05\\xc8\\xb3\\xc5\\x19\\x83\\x92(\\x16\\xf0 Y\\xc0B\\xb3\\xa8{=\\xc2\\xf3\\xd1|\\x850\\x1b\\x97\\xdf\\xf8a\\x93\\x8eAFgfr\\x8dY\\xe2\\xae\\x9c\\xb4T\\x1f\\xfb\\x18\\x00\\xca@\\x06\\x05\\x9a\\xd2- \\x1e\\xc3u\\xc2 \\x1f\\x83\\x00\\x01\\x19\\xe4Wz)\\xefX\\xb4\\xff\\x93\\x98\\xc8\\x90U\\x9a\\xe2\\x07(\\\\W\\x80`o5\\xbb\\xc2'\\xd9\\x03\\xd0\\x0d~\\xbed\\xb6\\xe4\\xc7\\x9a\\\\\\x00\\x18<\\xd0\\xc27x@a\\x10[\\xfbbz'\\x9f\\xa2\\x001\\x88\\x80\\xc4\\x00\\xca\\x02\\xc5\\xa0,X\\x0c\\xc2\\x801\\x80L\\xd0\\x18\\x14\\x05\\x8e\\x01\\x01<\\x06\\xcb\\x01d\\x90\\x03\\\"\\xc3\\xfb\\xee~/t\\xc8\\x0b$\\x83\\x1c0\\x19*M\\xfaO^@\\x19d\\x82\\xcaP\\x81\\x87\\xbd\\x17X\\x06\\x0b\\xc1e\\xa8\\xa0\\x00\\xe0\\x0cJ\\x80\\xce\\x80\\n<C\\xbfL\\x00\\xa3A. \\x0d\\xf2@i\\xbe\\x89\\xee\\xa9jA\\xb0\\x1a\\x1c\\x01\\xb0\\x06eAk@\\x04\\xaeAY\\xf0\\x1a\\x04\\x01l\\x00\\x85Al\\xe0\\x05\\xb2\\x812\\\\\\x040\\x1bd\\x00\\xdaPa\\x02\\xe4\\x86\\x82\\xda \\x07\\xd8\\x06>p\\x1b\\xc4]\\x8a\\x00\\xc8\\x0d\\x88\\x1eG)\\xb0\\x1b\\x04\\x01o@\\xa8M\\x1e\\xf0\\xcd\\x11'\\x80p(\\xf8\\x0dJ\\x01\\xe0 \\x1b\\x04\\xe7\\x88\\x13\\x1e\\x0d\\xea<\\x94\\x04\\xc3\\x81\\x9eFH\\x83\\xf2@q\\x10\\xc7\\x86A\\x08\\x1c\\x074\\x80\\x1c\\xf8\\xf05\\x89@9\\x08\\xc8A \\n\\x99\\xa09H\\xea\\x9c8x\\x0e\\x08\\xbd@\\x00\\xd1A*\\x90\\x0e\\xf0\\xde\\xc9\\x07\\xd4A\\x1cT\\x07\\x11`\\x1dD\\xc1u\\x10\\xee5:\\xc8\\x0eH@;@\\xc1v\\x90\\x0b\\xb8\\x03*\\xe8\\x0e\\x12\\x81w@\\x03\\xdfA\\xa0\\x171\\x10\\x1e\\x84\\xde\\x8f\\x83\\xf1\\xa0\\x00 \\x0f\\xc2Uv\\xfe\\x9e\\x05\\xces\\xa49`=\\xc8\\x04\\xec\\xb9% \\x00>\\xc8\\x05\\xf1\\xb9U\\xb6A}P\\x1c\\xd8\\x07ap\\x1f\\xa0\\x00?@A~P\\x10\\xe8\\x07e\\xc1~p\\x04\\xc0\\x1f\\x00\\x1d\\xf4\\x074\\xe0\\x1f\\xa4\\x80\\xff\\x80\\x0c\\x00\\x04\\xcf\\x1a\\xe2\\x01\\x86A\\x028,\\x06\\x06\\x84\\x14@ PA\\x81\\x807\\xa8,8\\x10r\\x01\\x82\\x8e4\\x040\\x08\\x85A\\x83P\\x188\\x08\\x05t\\x84\\x00 \\x04\\x12\\x88\\x10\\xac\\xe5\\xce\\x06\\x13Bh\\x17\\x87_Z\\x1dK\\xb5\\x0e\\xbd\\xeb\\x05\\x17\\xe2\\xaf\\xfb\\x00\\x86\\xf8\\xdb\\x0e\\xc8\\x10\\x7f\\x0d\\x01\\x1a\\xe2/Z`CH\\xc97\\x9f>\\x08e\\xc0\\x94\\xc8?\\xd7\\xcf\\x03\\xe5\\xa1\\xfb\\x8b;~>\\xba~\\x10\\xf0\\x1f^\\xa5#\\xe7\\xa7'\\xd7\\xe78\\xf9\\xeac5\\\\P\\\"^\\x8d\\xe3\\xe5\\xaf\\xeb\\xc7\\x0fN\\xc4kt\\x9c|v\\xfd\\xccA\\x8a\\x10\\x01*B4\\x18T\\x00\\xb0hI\\xccD-Z\\xd2\\x90\\xe3\\x0b-\\x95\\x02d\\x84\\xd0\\xf9\\xa3\\xff\\xf4\\xd1\\x03j\\x84p\\x9c0\\x00n\\x8c|\\x89\\x83\\x1c\\xe3\\x1f\\x05\\xc1\\x8e\\x81\\xcfQ\\xd0c\\xe0}?\\x10\\x0d\\x8c\\x8c-\\x17\\xd3\\xb6X\\xa4\\x07\\x0c\t\\x0ft\\xf6|J\\xbaz\\x88\\xa4\\xab\\x00\\xa4\\x12\\x96*\\x8e\\x17^\\xb9X\\xa2\\x0b\\xb5\\x0c\\x8a*\\x0b\\xb9t$\\x96\\x80]\\x06\\x93a\\xedD\\x15R\\x12\\x8c\\xae\\x145\\x19V\\xbd\\x9f\\x9e\\x0f\\xab\\x9bqd\\x08G)\\xe4\\x06\\x9e=\\xe3\\xb7a\\xc7@b\\x0c\\x81<\\x9a\\xe8\\xb1W\\xdc>\\xc9gi6\\x8dG\\xdc\\xfcP\\xc8\\x13\\x93-\\x9eQS<\\xa7&\\x9aUS \\xaf\\xa6tf\\x0d-\\xb7&+\\xbb\\xa6t~\\x0d1\\xc3\\xa6t\\x8e\\x0d)\\xcbfy\\x9e\\x8dO\\x9c\\xa0t\\x0ef\\xda\\x14\\xcc\\xb5\\x89f\\xdb\\x14\\xca\\xb7\\xc9\\xc9\\xb8I\\xce\\xb9)\\x90u\\xb3<\\xef\\xc6ky\\xd0\\x83\\x06\\xfd\\x14\\xce\\xbd9N\\xf6M\\xf1\\xfc\\x1bz\\x06N\\xf1\\x1c\\x9cX\\x16\\xce\\x92<\\x1c\\x8f\\xa01;'\\x90\\x89\\x93\\x94\\x8bS8\\x1b'\\x96\\x8f\\x93\\x99\\x91\\x13\\xc8\\xc9!\\xb8'\\x91\\xbc\\x1c\\xaa\\xffR27'\\x96\\x9dC\\xa9S\\xe1\\x0c\\x9dX\\x8eN\\xc1,\\x9d\\xe2y:\\xa1L\\x9d\\xac\\\\\\x1dD\\x1a\\xaf\\xc9\\xe0\\xc9\\xd6)\\x91\\xafCJJ\\x89\\xe4\\xec\\x90\\xb3v\\x02G\\xf0\\xc9\\x99;!Y\\xe8\\xd9b\\x81\\xfc\\x9d\\xb4\\xce\\xa2\\xe5\\xf0P\\xfa\\x84\\x98\\xc7\\xb3 \\x93\\xc7w\\x0e[$\\x9b\\x87\\x94\\xcf\\x13\\xcf\\xe8\\xa1\\xe4\\xf4Dz1-\\xaf\\x87\\x9a\\xd9\\xe3\\xcb\\xed)\\x90\\xdd\\x93\\x90\\xdf\\x93\\x9e\\xe1C\\xce\\xf1\t\\xf5\\xaa/\\xcf'\\xf8\\x0d-\\xd7\\xa7L\\xb6O\\xa4\\xf2\\xc8/es~<Y?\\x85\\xf3~\\xfc\\x99?\\xa5s\\x7f<\\xd9?Y\\xf9?\\x884\\xdf&2\\x92\\x13\\xe4\\xcb\\n\\xf2\\xe5\\x05\\x95\\xcd\\x0c*\\x9e\\x1bt\\x9c\\xec\\xa0\\xb4\\xfc r\\x86Pb\\x8ePJ\\x96\\x907O\\xc8\\x9f\\x05B\\xcf\\x03\\xa1\\xe4\\n%f\\x0b%\\xe4\\x0by\\x9a\\x96\\x913\\x940)\\xca\\xe6\\x11y3\\x89\\xca\\xe7\\x12\\x95\\xcf&*\\xa1I\\xc4\\x8c\\\"jN\\x91\\xbd\\xb8byE\\xc1\\x9d(\\x96[\\x94\\x96]\\x14\\xcfA!|\\x10\\xca0\\\"\\xe7\\x18%d\\x19\\x11\\xf3\\x8c\\x16d\\x1a\\xc5r\\x8d\\xcaf\\x1b=x\\xbeQ|\\xb4\\x8f\\x99q\\xe4\\xcd\\xf1\\x89\\xea\\xd4\\xf1\\xb2\\x8e\\x92\\xeat\\xdc\\xcc#o\\xee\\xd1\\xaf\\x93}\\x14\\xcb?z\\xf8\\x0c$,\\x07)\\x9e\\x85\\x14\\x0fzee\\\"9\\xd2\\xb0\\xcc\\xa4\\xd2\\xb9IhvRz~\\xd2\\xe2,\\x95@\\x96R,S%\\x9c\\xa9\\x14\\xf9\\xda\\x9f\\xad\\x14\\xff0\\x9a\\xb1\\x14\\x10\\xe1\\xcdZ\\\"\\x1d\\xcfc\\xb9\\x1d\\xb1\\xdc\\xa5\\x0c\\xc1\\x81\\x0c\\xa6\\x87=\\xff?11\\xa6\\xe45\\x95bb\\x8cf7e\\xa8V0\\xc7)C.\\x9e\\xe9D\\xcf^+\\x92\\xedt\\x94|\\xa7\\x13\\x1b\\xe5\\x89\\x8d\\xf2\\xb7\\xcbF\\xf9\\x1fh\\x02^\\x1a\\x0d\\x95\\xfe\\x88\\x9a\\x82w\\xc1\\xbd\\xa9\\xf7\\xa2\\xf5\\xc9Ix\\xc2\\x13\\xf3L#\\xe9\\xa5\\x993\\xa8\\x93}\\xc7\\xb5n1\\xeb\\xdb_\\xf7%3\\x81lKd\\x18(\\xc3->\\xa3\\x0e\\xf5\\x1f\\xdb\\x81%\\x8f\\xf1];8w\\x93\\x90\\x86J\\x1b\\xde\\x02<\\xf7\\xbc\\x0e4\\x8e{\\x995\\xf5+\\x90\\x94\\xc9\\x82\\x93\\xbcX\\xf9\\xe01#\\x10\\xfb\\xb9?\\xbe\\xbdx}\\xf9\\xf6\\xdd\\xc5\\xf9\\xdb7\\xc1\\x98\\x91\\xfb\\xf6\\xbf\\xbc\\xfe@x\\xeb\\xc5\\xb7\\x1f.^\\x9c\\xbf!\\xbc\\xf9\\xe6-\\xe9\\xa5\\xcb?\\x9d_\\xfcp\\xf9\\xc7\\xd7\\x17\\xd8\\xebc\\xf4\\x87\\xde\\xac\\xb8\\xff\\x08\\xc0\\xb5\\xfa\\xadx\\x05\\x8f\\xfe\\x08\\xc6F\\xa5\\x17 \\x99\\x1bo\\xea;\\x86\\x93\\x1e\\xa1\\x8e\\x03\\xfa\\xa6\\x7fx\\xbc\\x0d4\\xfc\\xdc\\xa6\\xfd\\xaa\\xdd\\x9bU\\xf3\\x1c\\x999\\xa3\\xfa\\xdc\\xfe\\x83!\\xf4^\\xd1<\\xa6\\x88T*\\xf0\\x1c\\xfb#\\x98\\x0c\\xe1\\xd2\\x94&\\xcb\\x7f\\xf3\\xf6\\xb9\\xf5\\xefY/,\\x907\\xe9\\x98-y\\xfae^\\x86\\xd8N\\xdciNIoi\\x9fY}s\\x9b\\xb6\\x11\\xb54\\xf4OB\\x02\\xdb\\x18*9U\\xe4\\xd0\\xd4\\\"\\\\12\\x88\\x8a\\xff\\xe9\\xf7[\\x93\\x8c\\xb8,\\xca\\x00s\\xbc\\x87\\xd6\\xf1\\xbdyE\\xa6*\\xf8=J\\xde,\\xa3A\\xb23\\x9b\\xb0\\xbb\\x0d\\\"'\\\\|)XP\\xfb\\xc1\\x8e.\\x9d\\xbf:\\x1bk\\xd1\\x9d\\x8dW#;C\\xe5\\x92t\\x9a\\xeb\\x19e\\xb1\\x14\\xb5\\x88\\x12t\\xf2\\xb7\\xd2\\xf1\\x08\\x82\\x9e\\xd4^'\\xcbb\\x11\\xbc\\x0b*i\\xa7\\x878\\xc9\\xc8\\xb2\\x1a\\x10\\x85.\\xad\\x0f\\x1b\\xc1\\xf0/\\xb2\\xd1e6\\xb4\\xd0\\xa6.\\xb5\\xd4\\xc56e\\xb9%.\\xb8\\x89K\\xee\\xa2E\\x97\\xb6\\xec\\x16^x\\x93\\x96\\xde\\x07Z|\\x8f\\xb2\\xfc\\x1e\\x7f\\x01.\\xbf\\x04?\\xe0\\\"\\x1cZ\\x86S\\x82\\x8d%\\x96\\xe2\\xf2\\x81\\xb0E\\x0br8\\xc8\\xb3tQ.\\xb5,;\\xf5\\x93D\\xdd:\\xda\\xc1\\xbf\\xf9\\xe5\\xc0\\xba\\x9aI\\x83\\xd0\\x9f\\xe2p\\xa78\\xdco=\\x0e\\xe7\\xfa\\x81T\\xf72L\\x00/\\xa25\\xef\\x8c\\xeb\\x13\\x08\\x8e\\xa5}\\xcf\\x01:\\n~\\xed\\xcb\\xbd\\xdb\\xc0b\\xd3\\xf7\\xddd\\x80\\\\\\x08\\x10\\xaf\\xe8\\x1f\\xd0\\x8av\\x0bn.p\\x91#\\xc6\\xad\\x05\\xbe\\x1b\\x0b\\xe2\\x15D{r\\xe9-\\x05VO&\\xddI`(\\x8ee\\x0c\\xc5\\x9f\\x84\\x1e\\xf2W\\xea\\xe6FU\\xa1m\\xb0\\x05\\xa0\\xf7\\xe8\\xe4{\\xe3\\xa0\\x9e\\xa0\\x93H\\x14\\x16\\xe9LO\\xf4\\x15y\\xd3\\x8d\\xba\\xe2/y\\xa3\\xad\\xce\\xebn\\xef\\xc9&\\x1a+e?T\\xcd\\xa6\\xeaT4Z;\\xa8\\x94\\xfb\\x89\\xff8\\x86D\t}\\x85\\xee\\xdaP\\xd5C\\xcd\\xa8\\xb5GC>t\\xf6e\\xc7\\xd8{\\xe2;\\xaf\\x80\\x1b\\xe4K\\x85\\xa3nC\\xe2;,\\xda\\xde*\\xba\\xab\\\"\\xef\\xa7\\x12wR\\xb1=T\\xb1\\xdd\\x13q\\xdft\\xf4\\x1dS\\xe1\\xbd\\xd21wI%\\xf7G\\x0f\\xb23\\xc2\\xf7D\\x9e\\xe9Wt\\x1fT\\xe2~\\xf9\\xe4]\\x0f\\xbe\\x08/\\xd9\\xe9\\x94\\xd8\\xe3\\xb8\\xc6\\xff\\xada\\x0d\\x9d\\xee\\x98_L\\x1f6\\x16>+\\x17\\xb2m\\x1e\\x8b\\x16\\xb1c$\\xeb\\x85\\xdb\\xac\\xa5\\x96\\xca\\x18\\x17%\\xc9\\xb5OG\\xb2JElQy\\x0b\\x94ow\\x8ehm\\x1c5\\xaf\\x9b\\x9b\\xc4\\xbd\\x8a\\xe7V\\xc8\\xb8\\xc5\\x88\\xde\\x069{\\xdb\\xac\\x9b\\xcf\\x1dV2\\xc8n\\xb0k'\\xc9\\xad\\xb6}#\\xb4\\xb9\\xb6?\\x14\\xb3\\x0c\\xee;s\\x1f(\\xe6\\xfd\\x04\\xfc\\x1e\\x82\\xc7C\\xb2\\x16\\x10\\xf4r\\xcaY\\x0d@-\\x87\\xdb\\x92b\\xd6\\xc3\\x15\\xbd\\xd0\\x82\\xb8\\x82JX\\x11W\\xea\\x12K\\x82I)hM\\x00\\xf1Z\\xc2\\xbb\\xb4\\x1cOE\\xcde9\\xffWw__\\xb1\\xa1\\xfaz%,\\xc4K\\xc1\\x17B\\x9e\\xcc\\xfd\\xe1\\xaa\\xdfWk'\\xe5e6\\x9dg\\xf1B\\xe4w+\\x1a\\x11n\\xf7\\xe8\\xdf\\x18\\xd55U\\xa1n6\\xf5]\\xbd9T\\xdb\\xe9\\x0eM\\xc5\\x82\\\"1\\x9f\\x92\\xbf\\xc8\\x14\\xc2_\\x91\\x82\\xde\\xb9\\x9bX\\xab\\x93r.%\\x16\\xa2\\x9e\\xe3\\xc6@\\xfc6\\xb3\\xce:\\x0c<\\xb6bQ\\xc0\\xd6\\x1d \\xf0\\xbb\\xc2\\xd4\\xc0.B<\\x12\\x1e4\\xcf%\\x91K/\\x88\\xc4\\xc6\\xe4\\x83jh\\xfa\\xb0\\xe8.:rL\\x00\\x1f\\x89@T\\xe0\\x13\\xbb/u|\\x1c\\xde\\xf4X\\xdbm\\xdd\\x93\\x86=\\x99f\\x92n\\x85\\x02c7\\x1b\\xa8\\xb6[\\x1d\\xa4\\x97Tb3a\\xecK\\xdd\\x8b{\\x80\\xe7{l\\xfe\\x81\\x16eg\\xa7\\x7f\\xa8\\x9b5{\\xae\\xc6\\xfa\\xab~\\xf3\t\\xfe\\xfb\\xea\\x1f\\xfe\\x1fW\\xa9\\xe6\\xe9\\x9f\\xce\\xf8\\xcf&\\xd3L\\xd3\\xe4\\x02:bZ\\xc4j:R\\xa4u\\xec\\xa6\\xee\\x07\\x11\\xb2\\x1d\\x15cl\\xa7h\\xa3\\\\}\\x8d\\xdaG\\xaa\\x8d+\\xed\\x87\\x99:$\\xa8i\\xcc\\xd4.S\\xe3\\xa8\\xb9\\xcd\\xd5\\nC\\x13T\\xb9s\\x15P\\xa5D:\\xb1\\xdfV\\xfdm\\xdd\\xdc\\xcc\\x17-\\xba\\xcb\\xdd\\xd77\\x0d\\xdb\\\\^m\\xdb\\xf5\\xa7\\xfe\\xf2s\\xddl\\xda\\xcf\\x11WT\\xc7\\x19\\xcd0\\xe3\\xaen.\\x95\\xa8=\\xeb\\xd2\\xe4\\x18ga\\x9b\\xf6s3\\xd4;v\\xf9oU\\xbd\\xbd\\xdc(`nP\\x8e\\xe8\\x80\\xcbkA\\x02\\xd86\\x97\\x9b\\xf6p\\xb5e\\xa2.\\xe9\\xc5;\\xb2dmR\\x05\\xcd\\xf4E\\x99\\xed\\x11\\xa4m\\xec4\\xe4m\\xd6#\\xbd\\xd7\\x95<\\x9c\\xd3#\\n\\xbbvs\\xd8\\xb2U`\\xac\\xb3\\xd7^gj\\xd0\\x96\\xd0\\xa0\\xce@\\xc8\\x84c\\xba\\x03q\\xfd!\\xc9\\xb4\\xceTc\\xba\\x14\\x90I\\xd1\\xa9\\xc0\\xe7\\xde*E\\xf5+]hq]\\x1b\\xcf\\\\K\\xddc\\x1d\\xd3\\xdf\\x0f\\xf5MS77\\xe7\\xcdu\\x9b\\xac\\xc4w\\xd5V\\x0cK\\xdd\\xdc\\\\\\xd6\\xcdu\\xbbH\\x9d\\xab\\xcd\\xa6c}O\\x1a\\x05\t\\xc2\\xbaE\\xc2\\xa9\\xd1a\\xf3\\x1en\\xff \\xa4A\\xa5\\xf1eb\\x7f[\\x0dm'\\x8e\\xa0\\x05\\x8d\\x05T\\xb0\\xae\\x9a\\x0d\\xff3\\x83\\xb7\\xef\\xc5\\x0f\\x87\\xe6\\xdf\\x04|\\xd6\\x10Y7\\x1b\\xf6\\xe5\\xb2\\xbd\\xbe\\xeeY~\\xed\\xc2\\x07\\x10\\xe7\\xbc(\\x0d\\x88\\xeb\\xa1n\\xd6\\x9d\\xc0\\xc4\\xb1\\x0d\\xb0j}\\x0b\\\\\\xaf\\xa7\\xdd\\xfa\\xd8\\x9a\\n\\xae\\xdaf\\xe32\\xf1\\xd6\\x0d\\xff\\x89\\x1b\\x14\\xb1X\\xee\\xaa{\\xc9P)m\\x82\\x88\\xb9\\xb2u\\xbb\\xdb\\xf1]\\\\\\x07M;(n^\\x87\\xe6m\\xdd6\\xff\\xa6\\xe8\\xdb\\xe4\\xe6\\x12A\\xd6~\\xfc \\xa4~+\\xec\\xd7\\x9f\\x84\\xa9\\xf98\\xee7\\x06\\xd6\\xedF/It(\\xce\\xee\\xf8\\xf1\\xa7\\xba\\xef\\xb5\\x90o\\xeb\\xe1\\x05w*>\\x9a\\xdbc9<\\x97\\x02\\xf0\\x9b8\\x1a>\\x88ihD.\\xea\\x1d\\xeb\\x87j\\xb7\\x97\\x10c56\\xf3!\\xa8{U+\\xd8\\x1c\\x18\\x0c-l\\xeb;\\xd6\\xb0\\xde\\x86fk\\xcbd6ghwW\\xfd\\xd06\\x0c\\x85c\\\\\\xb5\\xed\\x96UMB}\\xfft\\xcb\\x04\\xa9\\xa4\\x1cOM\\x98(\\xaay[\\xf5\\x12\\xad>\\x95\tO>\\xd5[^\\xf1\\xf60\\xb8t\\xcf\\xd3\\xa7=\\x1b\\x9e\\x8a$\\x96Zdo\\xd8C\\xdf6k[-\\xa5Z\\x89\\xad2\\xfb\\xe5P\\xdf\\xb5k\\xc5\\x05\\xd4I\\xc7\\xb6\\xb9\\x97\\xa9\\x1e\\xae\\xa2]\\xd77\\x07\\xee\\x16\\xef\\xea\\xfe\\x8a\\xdd\\xd6\\xd5\\xdd\\x9c\\xe4u'\\x14D/\\x93\\xe2\\xc4\\x99\\x88BY>-_\\x80*\\x07>\\xb1\\xfd01\\xb8\\x1e\\x9a\\x86\\xadY\\xdf\\x0b\\xf6c\\xae\\xa9\\xd0\\xb1j\\xd3;\\x07}o\\xdaA\\xf1m\\x7f\\xfcp\\xd8=\\xc1t\\xfc\\xe9G\\xa8\\xb6\\x9f\\xab\\xfb\\x9ewW\\xb5\\xb5Ug6/^\\xca\\xca\\x18\\xd3\\\"\\x10\\xf0\\xd3#b,\\x08\\xe6q\\x8d\\xfe\\xf9q\\x0f\\xca\\xe4\\x037\\xf9b\\x90vmS\\x0f\\xad\\xd5\\x8b\\xc3-\\xabg\\xbb,\\xad\\xec\\xc0\\xd7\\xdf\\xbbz0!d\\xd2\\x14\\xdb\\xeb\\x89^\\xf0f\\x05\\x8a,#\\x0dE\\xbb\\xab\\xb6\\xe2tH\\xaf\\\"\\xbf3\\xa4\\xcd\\x11Z\\xc8:GYO\\x8d\\xcf\\x94\\xb4\\xf7\\xef^\\xeaV%\\xaf\\xb0\\xe9~\\\"\\xb6\\xac\\x926P\\xe48\\x00\\xba\\xfe\\x06\\xe6\\x86\\x7f\\x0d\\x0e|\\x14\\x9aRGX\\x89Ck\\xf1\\xe2Z\\xc6R\\x02\\n\\xaf\\xc9\\x05We\\xda\\xba\\\\he\\xa6\\xac\\xcd\\xa1\\xd5\\x994>\\xf8\\n\\x1d\\x1f\\xa3\\x92\\xab4\\xbeN\\xfbW\\xea\\xd0Z\\x1d\\xafy\\xc9\\xf5:a\\xc5.\\xb9fSVm\\xd2\\xbaMR\\x91%S8w\\xfd.\\xb1\\x82G\\xd7\\xf0p32\\xd6\\xf1\\xf90\\x8ck\\xba\\xbb\\x92S\\xd6\\xf2\\xd0\\xfa]m\\xb7SEt\\xfb\\xb1\\x8c\\xf2\\x84m\\xe4)\\x13\\xfc\\x94\t\\xae\\xbf\\xf0\\x8f\\xa1,\\xd2p\\xff\\xda\\x19Wc\\xdd\\x08\\n\\xa9\\xc9#\\xd4\\x17\\xff\\xc0g\\xd1\\xd7\\xf3\\xd5n\\xddv\\xf2EA\\xf0\\xa8\\x9c\\xd2\\x91U\\x91[e\\x11\\xf01\\x9b9k\\x9b~\\xf3C\\xbb\\x9b*\\x85\\xd2*vl\\xcf\\x04}\\xd5\\xb7U7\\xf6\\xac\\x8f,t\\xd6F\\xa1\\\\6Q\\xa8\\xe4I\\x8c\\xb9\\xc9Iq'\\xf3;%/\\xc5Q\\xc6\\xac\\x16\\xd9Gv<XD\\xc1q\\xaf\\x15\\x9d\t\\xf8\\x02R\\xd4G\\xc5\\xbd\\xd3\\x84\\xda\\xf8W\\x80\\x82^\\xe8r\\xff\\xd3\\xf47\\x0d\\x81\\x98\\xe7\\x99\\xeds\\x86\\xbdM\\xdc\\xcf\\x0c\\xf6\\xb4\\xeb[\\xfa{\\xbb\\x94?i{\\x92\\x98\\x0f\\x89{\\x8f\\xfe\\xba\\x95\\xf2\\x18I\\xbeb\\x86\\x97hx\\x85\\x86@\\xc4?\\x8cx\\x86E\\xa6O\\x8e\\x07\\x98\\xe7\\xfb\\x05\\xbc>Ob\\xe7rO\\xcf\\x8d\\xd8\\xcc|<\\xd4\\xbb\\xd3\\xa6{\\x10\\x17\\xf9\\x8c\\x96\\xfb\\xdb\\xb6\\xd9|0\\x98v\\x9dQ\\x98'\\xd4~\\xfb\\xf6\\xcd+?m\\xac\\xfd;\\xffW\\xf0\\xc7\\xf37\\xdf\\xa3\\xbf\\x1a\\x1f\\x8e\\xc9p\\xa1\\xa2q\\x8faj\\xdb\\xe8\\xc9\\x1a\\x04\\x9bc\\x07\\x9b\\xf9\\xb0\\x9eB\\x9e\\x03\\x9a\\xc5\\xd6@\\xdd\\xa8|\\xbai\\x92\\xcd\\xc9f\\xf1.\\xe1\\xf2\\xe4\\xffa#.\\x95Pq_J\\xbb\\x1e\\x94w\\xfe\\xe6{-\\xf0\\xfc\\xcd\\xf7A\\x89\\x87\\xe6J\\xfa;\\x1e\\x81\\xbaz\\x84\\xcaM\\x15\\xf3\\xa8\\xd6Kn@\\xfa\\xbeNH\\xe6\\\\\\x8f\\x9f\\\\\\x8a\\x8c\\xc5\\xe7\\x84)o\\x7f3K\\xd4\\x10\\x17\\xab\\x89 \\xa3~\tT*\\xa4\\xf0\\x1c\\xf5\\x89\\x9e)\\xaec\\xd5 \\xb9I\\x0d\\x0d\\xd1\\xbf&\\xechx9D\\xc7}\\xd68\\xfe\\x9d\\xd6W\\xab\\xda\\xe2B\\xc4\\x1b\\xb9M\\xd9\\xb0-\\xbb\\x11\\x1b\\xb03\\x10\\x0e\\x80>\\x18\\x9d\\x05\\xd1\\xab/\\x97K\\xeb\\xe1\\xec\\x15\\xb4\\xb0Y\\x07\\xef\\xaa/\\x02\\x97g\\xd7\\xd4v\\xaf\\xd6N\\xc4\\x84\\xdd\\xc9L\\xba\\xee\\x86EZ \\xd3\\xed\\xca6\\xc4\\x90\\x89\\xb6gS\\xd5\\xdb{\\xe9~U=\\xc3\\xaf*\\xb2\\xd6J\\xd1zOS\\x0e{\\xee\\x96\\\\&\\xe4CD\\xdc\\x18C\\xa0V\\x16q=\\xe6\\xe8\\x1f:\\x03R\\xf5*o\\x11K\\xea\\x9e\\xe6\\xea\\xd8\\x1b\\x86\\x00\\xe3\\x0c\\xdc\\xcc\\x15\\x9e\\xcd\\x8f\\xa8\\x11x?Mh\\x82%\\x98\\x0f6\\xdaSG\\x995\\xee\\x8c\\x89\\x97=S\\xb0\\xdcY\\\"\\xe6\\x85i\\x8fB3\\xc4;;\\x16Tz\\xd1\\x8c\\x98\\xeanV9<\\x1b\\xf0jX\\x8a\\x92a\\xc5\\xb5\\x05\\xd7\\xcbzER\\xd4WR3RV\\xabQ\\x99.)[X\\xab\\xe1\\xce\\xc7Z{\\xaf\\xd8\\xfa\\xf6\\xef\\x7f\\xff\\x15k\\xd6\\xad\\xba\\x7fB\\xfc:^\\xae\\xa2>\\xd3*0\\xb6mI%\\x9c\\x8fi\\x95p\\x16\\xc6\\xfe\\xb6\\xea\\xdc\\x84\\xd7P\\xc9\\xf2\\x0b5\\xcaf\\xcb\\xf8\\xe0\\xaa\\x1f;\\xb6f\\xf5\\x1dj\\xafF\\x1fo\\x1a6;q\\x87\\xfb'j\\xcb\\xda~bM\\x0f\\xb7l+\\x88\\x82\\xab\\x06\\xaa\\xb5\\xd8&\\xa8\\xcd\\x90\\x12\\xd5~n$\\x93p\\xdb\\x18\\xfd\\xac\\xee\\x93\\x147\\xa7\\xb6\\xebZ\\x84q\\xf4Fx\\xc4\\xca\\xb4\\x9fe\\xd4\\xacm\\x98=,$\\x95K>W\\xdcX\\xda\\x8a~\\x86\\x7f\\na\\xcd\\x05\\xf2\\xbaZJ\\x83!\\xac\\xc5\\xf4\\n\\x95\\xd2f@4\\x9a^\\x8bt\\xcdvD\\xccb\\x9e\\x055\\x1cJk9\\xd8\\x9a\\xce\\x9f\\xabj[5nb1Q1\\x1d\\x96tO\\xafc\\xac\\xe8q\\xb33\\xeb\\xd9\\xc5\\xec\\xe7\\x93\\x88\\x1c\\xd2\\xf3)\\xac\\xaa\\x1f\\x1a\\xb3y\\xcc\\x10\\x9aq_\\x11\\xb9\\xa9\\xb6\\xac\\x11\\xb1\\x10C\\x95\\xd8\\x97\\xb5\\x08\\x90\\x88\\xcd\\xdc`\\\\q:\\x1fD\\xfb\\x9a\\\"\\xa5\\xbfc|R\\x1c[\\xf4\\x87z\\x10G\\x04\\xdc9\\\\ok^\\x9a\\x0e6\\xf7A\\xfb75\\x84j\\xf8vmS\\x7f\\x8a\\x86\\x8df]\\xa4>1F\\xfa\\xf6\\xb0\\xab\\x9a\\xaf:VmD\\xb5E\\x96\\xb9\\x8e\\x87;\\xea,o\\xcc\\x1f\\xc2\\x98\\xa3\\x90s\\xa5\\x05\\x98q\\x03\t\\xd5\\xaa\\xb6\\xd3\\x8f\\xe3\\xd8\\xc3\\x13\\xf6e\\x05?\\xbfk\\xbb\\x01fn\\xd5?\\xb3\\xfb\\xab\\xaagOu\\xc5>\\xb3\\xab\\xbeNs\\xfa\\xd4'hM\\xf4o\\xdb\\xba\\xf94\\xae\\xebl}\\xe8\\xea\\xe1\\xfeR\\xe8\\xc7:\\x16\\xec\\x9e\\xdbA\\xeb[\\xb4P\\xb6\\xabjq\\xc1\\xfd\\xf8:\\xa8\\xd7u\\x156l\\xa8\\xeam\\x92o\\xa1>\\xd1&XF)\\xc7\\\"\\xd5\\xaf\\xc8\\\\2\\xf4\\x11\\x8d|\\x18/\\x07\\xb4\\xfa\\x87\\xba\\x1f\\xda\\xae^W\\xdb\\xa4S\\x90[Vm\\\\\\xbd&\\x19Mu\\xa9\\xb7e\\x0b\\xe5\\x81\\xc7U\\xd5\\xd7ku\\nPOYP\\x812 \\x90l\\x04R\\x92\\xfd\\xc7\\xc0\\xd2\\x08\\xe1sI\\x80j\\xbf/'.\\xbc\\xef\\x7f\\xc9\\x0dR\\xd3\\x1fzXW{if\\xe5vQ\\xff\\xb9;l'\\xae\\xa35\\xeb{\\x19\\x07\\xd2\\xbdg\\x89\\x13K0\\xffi}[\\xd5\\xcd\\x99\\x9b\\x94\\xbb\\xde\\x1e\\xe4\\xddq\\xdb\\xad\\xf1\\\"\\x08\\x06\\x86~\\xe8\\x0ekY\\x07M| KG#\\x0d\\xd5t\\xc7\\xfd\\xe3\\xde.\\xa8\\x1f\\xf8\\x96m\\xe8\\xaa\\xa6\\x97vzW\\xado\\xebf\\x96\\xd6\\\"J\\xa6r\\x81\\x17I\\xd0^\\x90\\x9a\\x8fe\\x05\\x89\\xeb\\x12E\\xe7\\xb9\\xb5\\x97\\x1a\\xbe\\xef\\xd8]A\\x05\\xbf\\xad\\xfa\\xdb\\x85\\n\\x89\\\\~\\xbe\\xaf\\xba\\xe1\\xb2g\\xc3\\xa5=\\xbd\\xf5\\xe3\\xad!\\x04k)>uS\\x03\\xc6\\x9f\\x84\\xd4\\xba\\x19\\xd8\\x0d\\x92\\xc6\\x03\\x914\\x1b\\xf0v\\x03\\xc4\\xba\\x02\\xc2\\xdd1\\x0e\\xda\\xbb\\xaa\\x1bz6\\xfc z\\xc5\\x1eny\\xf2t\\xe9V!\\xaaAN\\x91\\xaa8.J\\xce-\\xa9(|\\n\\x1a\\xef\\xf1\\x7f\\x16(n\\xca\\x89) \\xcc\\xae\\xfbu\\xd7\\xee\\x84\\x99\\xa8\\xf6{h\\x0f\\xc3\\xfe0L\\x7f\\x9b\\xe6\\x80!A$\\xbb\\x14\\xad\\xd3h)\\x0b\\xc8\\xaa\\xf6\\xfb\\x02R\\x84\\xbe\\xa8\\x8c\\x8a\\x02\\xe2\\xd8\\x1d\\xf7\\xc7\\xd6\\xac\\x80\\xa8q\\xfc\\xa6\\xe5\\xc52O\\x92U\\x81\\xa5ny\\xe3@&9\\xabf\\x11\\xb4q\\xb9\\x91g_\\x17\\xac\\xd9\\x88\\xb3\\xf9AM\\x08i\\x9e\\x8c\\x98\\x12\\x92\\xd9P6o\\x99\\xff\\xd5\\xbf\\xe1\\x0f\\x9a\\x99\\xf0*\\xef\\x8a\\x9e\\xf5\\x84o\\xf3\\xff\\xd8M\\xe4\\xd3r\\xfe\\x87\\x08 \\x80\\x0e\\x1f\\xd4\\x8d\\xb8\\xc1u5{\\x7f\\x9a\\x1a\\xfb\\xc3\\x95\\x93\\xc7\\x16\\xb4\\xf3!+\\xcf?\\xbb<t\\xa8\\x99\\x8f\\x18\\xe2X/\\x818.\\xff\\xf9\\xfd\\x8f\\xcf:\\xd6\\xb7\\x87N\\xc3m\\xc5\\x96\\xf0\\xd0\\xd4\\xbf\\x1c\\xd8\\xf6^\\xedO\\xaek\\xd5{\\xbcL\\xdcE\\x91\\xcft\\xf33B\\x82&\\xdb:\\xb4\\xebv\\x0bW\\x87\\xebk6\\xdea\\xab2Od[`w\\xe8\\xc7\\x1d)T\\x03lY\\xd5#\\x99\\xad \\xf2\\x16\\x18<z\\xf6HD\\xc9\\xab\\xf5\\xc0\\xba\\x95\\xd8\\x8c\\x8b\\xa3\\x90\\x9e\\xdd\\xf0-\\xb7\\x1e\\xe9\\x9f\\xdf\\xff\\xf8\\xb8\\x87}5\\xdc\\x8a\\x02Pqc\\x80\\x05/m@\\xae\\x12\\x17}\\xa6\\x8a\\x10\\xbd\\xf3\\xa4\\x12)\\xdc\\xa8\\x80\\x8f\\xbcx\\xef\\x15\\xba\\x1f\\x9f\\xca\\xda\\x0b\\x91\\xfdm{\\xd8n\\xe0Jn\\xc1Qi\\xeb\\xaai\\x1b\\xbe\\xd1\\x106\\x01/\\xf1\t[\\xdd\\xac\\xcex\\x17\\nW\\xf4\\xd1\\xea\\x91>X\\xae\\xd6k\\xb6\\x1f\\xd8\\xe6)~\\x9d\\x1b\\xc0y\\x03{\\x11\\xb8_\\xb33\\x18X\\xb5\\xeb\\xe1\\xd0\\x1f\\x04]\\xa3\\xcc\\x1c\\xda\\xd7[^;E vU7\\\"\\xbbb\\xeb\\xde\\xcf\\x08J[{\\xa9\\\\\\xc3-\\xbb\\xc7\\x8bd_\\xf6l-\\x02\\x12C\\xab\\x985\\xb4\\x8b>\\xb0/b(_4\\xf7+\\xf8\\xa1\\xfd\\xcc\\xeeX'\\x198~~\\xff\\xa3;w\\xf9#\\xa3\\x14\\xea\\x0ex\\xbc\\xc0~}\\xcbv\\x0c>\\xde\\x0e\\xc3\\xfe\\xe3\\x99\\xfco\\xff\\xf1L&\\xdd\\xa8_\\xcf\\x84\\x96\\xad\\x8dm\\xeb\\xf6^\\xe4\\xcf`\\x02\\x0f{\\xa8D[=\\xe5\\xb1\\xee\\x8e\\xa93\\xf4]\\xb5\\xef\\xa5\\xca\\xf0\\x16\\xf0\\x16\\xeb\\x8cBa\\xaf\\x84/\\xdf\\x03r\\xf1'\\x88U`\\xbbm?\\xf7\\xcf=c\\xf7\\xb7p~=\\xb5\\x80\\x0f\\xb9\\xbe\\xd6\\x7fl\\xa4\\x8a\\xf6\\x1dvl\\xe3az\\xff[x\\xd1\\xc0\\x0f\\x17\\x17\\xef\\xe0\\xfb\\xd7\\x17\\xd06z\\x1a\\xc9\t*\\xee\\xb2\\xf7h\\xa6s%\\xf5\\xc5\\xfd\\x9e\\xfd\\xf9_\\xff\\x8c\\xbe\\xac\\x08@\\xf8X+\\x1d\\x92K\\x9c\\x18\\x85}\\xd7n\\x0ek&\\xb2\\x90\\xba\\xceN6\\xd7\\xcf\\xdf\\xc2\\x8bi\\x87\\xd4\\x8b\\x9c\\xda\\x8a\\xf7\\x8f<\\xf4[Wkn\\x13\\xda\\xf6\\xd3a?\\xa6_^U=\\xdb@\\x8b\\xf3\\xe1\\xfb\\xcc\\x1b\\xc8\\xbb\\xfeE\\n\\xd6\\x9dP\\xab\\x9d1\\x176r2T\\xba\\x19c\\xf6Q\\xd5\\xd8\\xf4\\x1a\\xfa\\x91\\x95\\x12\\xd3\\xbec\\xd7m\\xc7\\xce\\xf4\\xc7\\\\f5\\xd4W\\xf5\\xb6\\x1e\\xee\\x05M\\xb0>\\xee\\x12&\\xaa\\xbb\\xb3\\x103\\xd3\\xd36\\xea\\xa0W| \\xe6\\xdd\\n\\x9e\\xfc\\xdc3\\x1d(\\xe0\\xbd\\xc2\\xd5\\x8e\\xdb\\x19\\xa9wUS\\xdd\\xf8Z|\\xd51\\x11\\xe0\\xd0BWOqmy\\xd3\\x0e\\xec\\xb9\\xba\\xbcU\\xe5\\x0eV\\xa2\\xee\\xca\\xde\\xac\\x0f]'r\\xa3\\xcd\\x9cb\\x1c\\x81\\xc2\\x9fV$S\\xbb\\xe9\\xc4\\xf2\\xd1\\x8a\\x05\\x1d\\xe3\\xab\\x03S\\xf1\\xeb1kf\\x84jO\\xf3\\xeb\\x8a\\xdd\\xd4M\\xe3\\xdb\\xb4|\\xae\\x87[\\x8f\\xd1w/A\\xf7Y\\xcc\\x0fb\\xb6\\xf5*\\xe24\\xdcV\\x8dmY\\xe0\\x89\\n3\\xca\\x9cp9=\\x9f\\xa2\\xc2v\\\"S\\xf5\\xcacHD\\x03E\\xacz\\x8c-\\xab\\x13\\x86=[\\xd7\\xd7\\xf5\\x1az\\xb6\\xab\\x9a\\xa1^#\\x17_#\\x84;\\xf2\\x89\\xb8\\x14\\xc1\\x9d\\x1d\\xcd\\xe3\\xf8\\x89\\x9b\\x8e+\\xa6\\xe3j\\x86\\xc3\\xe0\\xf8\\x06jQ\\xad\\xae\\xda;\\x8f\\xb3!\\x9b\\xaa\\xd4\\xd9nf\\xac6\\x1f_4\\xf7\\x1f\\x8d\\xc0wc\\x10e\\x06j\\xa5l\\xb4#\\xae\\xda\\xb6\\xcd\\x8d:=p\\x87\\x8c[Ma\\xf4e\\xad\\xae\\\\w\\xca,S{E\\x88\\x9a\\xbd\\xd3\\x8a\\xbf\\xad\\xafDU\\x95]\\xef\\xa1?\\xec\\xf7m7Hv\\xee\\xf5\\xa7g\\x87\\x86\\xff\\x87\\xaf\\x97r\\xbcQ`\\x99\\xf0hP\\xe7\\xa1\\xbd\\x86\\xc3 \\x8d\\x8f\\x9e\\xce=7|\\xfa4\\xa0\\xda\\xc2\\x0dk\\x04\\xb1\\xdcF\\x9dd\\x8cN\\xf5\\x0b\\xc4\\xde\\xc9!r\\xcby\\xfd\\xa5\\xe2\\n\\x0c_?\\x87w\\x95JUVU\\xaf\\xc6\\x05\\xb1n\\xe0\\xe5\\xdf\\xfd\\x9dg\\x99\\xfa\\xaem\\xe1\\xbam\\xe1\\x1bX\\xadVhJ\\xbd\\xe8\\x84\\xaa\\xb9\\xc7\\x7f\\xac\\x9a\\xfb\\x15/\\xfa\\xbb\\xae\\xdd=\\xb9n\\xdb\\xa7\\xf8k\\xab\\x15\\xbe\\xf6\\xd4\\xd7\\xf0\\x84\\x8b\\xf8YT\\xfa\\xa2}\\xf27\\\\\\xc6S\\x1c\t\\x10\\x90\\xf3\\x17\\x7f\\xdf\\xfc>\\xd27\\xffT\\xddU\\xd9\\x9d\\x03\\xdf\\x08\\xdf\\x8aK\\xcf\\xe8\\x85\\xba\\x7f\\xf2]\\xdb\\xae\\xd6\\xdb\\xaa\\xef\\x03\\x9d \\xab\\xc4?\\x90\\xed1>\\xc2\\xcbEzg\\xec\\x9e\\xbf\\x8ft\\xcf\\xbb\\xfb\\xe1\\xb6m<\\x1d$k\\xf2]\\xdb>Y\\xadV\\xb8%\\x1e;\\xe7\\x89\\xf7w\\xa1@\\xa2\\xdbR{\\x8d\\x7f|.;\\xed\\xd5\\xeb\\x0f/\\xdf\\x9f\\xbf\\xbbx\\xfb\\xfe)\\x1ez\\x93EIE\\xf3\\x17&\\x8b\\xf3w\\xd7?D\\xba\\xeb\\xfb\\x16\\xef)\\xd1U\\xcf\\xbf\\x81\\xbf\\xd9_\\xad\\xbek\\xdb\\xff\\xb3Z\\xad\\xfe\\x82\\xbfX5\\xf7g\\xdc]\\xe3oW\\xcd\\xfd\\xfej\\xf5\\x86}\\x0eT\\xb8\\xbe\\x16o\\xff\\xb7o\\xa0\\xa9\\xb7^\\x9d\\xf1\\xf6\\\"x\\xaa\\xe1}\\xdfj\\x88\\xe7sU+\\xd9\\x86\\xd5\\xcf\\xcd\\xae\\xea\\xfa\\xdbj{\\xd1\\xca\\xe9\\x91[e\\xe7\\xef\\x17\\x82mf\\xfdi\\xb4\\xa6\\xdae\\x87\\xab\\xfb\\xc9\\xe1\\xd1v_\\x82\\xcb\\xeeu~\\xb4#\\xed\\xd0#\\x9e\\xc3c\\xc4\\x99y\\xc6w\\xb4+\\xf1\\x03w\\x08\\x1fCe\\xacM|\\xddR\\xe7\\x13n\tBw\\xdcB\\xc6\\xc5\\xa0\\xd9\\xde\\xeb\\xdd\\x97\\xb3m\\x1e\\x1dP\\xa8\\xae\\x07&}\\\"\\xbekw\\xab\\xfc\\xec\\xb1[\\x84\\xda\\x16\\xea*\\xca} S\\xfa\\xfd\\xe8\\xbamWWU'\\x1a\\xf7\\xe5\\xd9\\xfd\\xea\\xdf\\x1f\\xc9\\xde\\x92;\\x16|s&\\xaa\\xf2\\x88\\xbf\\xcb\\x17)\\xe7\\xe7\\x7f\\xfa\\xf0\\xf6\\x8d\\xfb\\xd7o\\xbe\\xf9\\xe6\\x1b|\\x1c\\xf9\\xfbS4A\\x01'\\xf8dWn\\x87\\xdc\\xf1\\x1c\\xfa\\x91O\\xee\\xe6\\xb0\\xad:W\\x96+B&\\x94L\\xce\\xc2\\xd9\\x04\\x7fSs\\xf8Ly!H\\x0c\\xc2X\\xbce\\xa2\\xc2\\xc7\\xff\\xc5\\xbb\\xe3\\xa3\\xda*\\x8f\\xce\\x90\\xd9\\xb9+m8\\x9e{\\\\\\xf1j\\xfd\\x89[\\x8ei\\xcbw]o\\x19n\\xc5\\xb5\\x95y\\xc7\\xba\\xbem\\xbc\\xd3F\\xc5\\x81\\x04\\x1c\\xebR\\x8c\\x8c\\x0f,7\\xbd,\\\"\\xc1\\xea\\xdd\\xdf\\xd3\\xd7\\x10\\x00o-\\x1e\\x89\\xbey\\xf4\\x1c\\x1ea\\xb3f\\xde\\xdc\\x95l\\xd1\\xa33\\x9f,\\xd1\\x967\\xd5\\x8e\\xcb\\xfb\\x9f\\xb2\\xca\\x7f\\xf0\\xbe\\xcc\\xdbb\\xbdKm\\xd0\\xf9\\xb5\\xda^\\xccuB\\x8ef\\xdd\\xc3g\\xb6\\xdd~\\xf5\\xa9i?\\xcb\\xac\\x96[\\x91\\x9f\\xa9\\xf2Qp%\\x9f\\xab\\xe0\\x99tc-\\xbd\\x9c\\x90\\xae\\xaaX\\xaeh\\xcd\\x0d\\x12\\x1d\\x10j\\xe7\\x16\\xf2QL\\x08\\xad\\x87\\xb7\\xedv3\\xcb\\x94\\x11\\xd3\\xc9JE\\xe1?+\\xf5u\\xe5\\x89bF\\xcd\\x85'\\x024\\xa3\\xba\\xc2\tN\\xe8\\xf8\\xdb\\x9f\\xff\\xf5\\xcfO=J\\x9e\\xab#\\xf3\\x82\\xfcj\\\"\\xba\\x81\\x8b\\xfbz\\xf5\\xfb\\xaf\\x7f\\xdf?\\xf2\\x0c\\xbb\\xf9/\tN\\xc3\\xe3\\xcd\\xcb\\xb8\\n4\\xdcM\\x01t?+ \\xda,\\\\>a\\xd0\\xd4\\xdb\\xe2,J\\x81\\x10m\\x81\\x1av#Q\\x86\\xbfs\\x7f\\xb2k?O$\\x99Axl\\xa4\\x0d<\\x91\\x85>\\x1b\\xa1-\\xea\\xffDds.6\\xb0\\xbd\\xf5\\xdd\\x98\\x12\\x06<\\xf9\\xdf\\x9cA\\x9f\\xc2\\xafM (\\xdf{\\xa80\\x120J?2Ap\\xe9\\x19\\x8bJ/tS\\x1aE|M\\xfc\\xf6\\xa4n\\xd6\\xdb\\x15\\xf4l{\\xfd\\xd5\\x94\\xefh\\x8d\\xc0\\x941\\x8a\\xa5W\\xd2\\xeb\\x83\\xe8\\xac-z:\\xf3\\x91\\x97m\\xc9?\\xd6}\\x7f\\x901\\xc1*x\\xf23\\xc1\\x04\\xec\\x06X\\x19k\\xf8O\\xe6?f\\x87O\\xe6\\xdf\\x07\\xd6\\xe9\\xcb\\xa3|I\\xa8\\xb0\\xfc\\xe0\\xc8\\xc9\\x93\\x9b\\x9eH\\x90\\xa7d\\xee\\xdc\\xf4\\xb8Yt\\xd3\\x93R!OXiy\\x8e\\x1d*\\xae\\xed\\x9cl\\xbb\\xe9q\\xf2\\xee\\xa6'\\xa5%\\xa9\\xb9x\\xd3\\xe3\\xcf\\xca\\x9b\\x9e\\x94\\x9ax\\xfata\\x02\\x1f*\\xcbJ\\xea\\x9b\\x1e'\\xbdozR\\x9a\\x90\\x90\\xf2\\xa7\\x9fq\\xbd(K\\x86\\x15\\xebY\\xbbX\\xdd\\xabg|\\xbf9\\xfe(o\\xc6\\xb9\\xb5\\xd8\\n\\x86\\xdb\\xda\\xb5U\\xf6\\x92|sh\\x10\\x98\\xa7U\\xb6\\x9b\\x9dEj\\xf0R\\xde\\xa6y\\xc1\\xa1&\\xef\\xf8\\xd6\\xae\\x9elJ\\xa0\\xb9C+\\x0eI\\xb6l`\\xbe\\x06\\xaf-\\x08\\xea\\xf4\\xccj\\xbcv\\xd1o\\xc3\\x1cG6!\\xe0\\n\\xd9g?\\xd2uzb\\xbd\\x8a\\xc9I\\xc0M\\xa1\\xf2\\xc6\\x83\\x930\\x0evz\\x02\\xed\\x87h\\n\\x1b\\x86\\x92\\x9d\\x9e\\x88\\x01\\x00b\\x17\\x81*f\\x01<\\xd0+\\x0f\\x83\\xaaN\\x0f\\x0e\\xbb\\x9d\\x9e\\x82\\x0dK\\x87\\x1bzE\\xb90\\xc48<wz\\x82@\\xdd\\xe9)\\xdc\\xf4d\\xd0\\xa2W\\xda\\xe0\\x92_\\x84\\x00\\xbd\\xd3\\x83B{\\x0d\\xb9\\xb4#5\\x9fe\\x05b\\x87,\\xc1\\x03\\xe3\\x06\\xc5\\xc4\\x08\\xebG\\x10\\x8c\\xb3\\xed\\xf5%\\x86;\\x93O\\x86\\xef\\x8eHwv{\\x8f{\\xb1\\xb7\\x80\\x0d[o+I@'.\\x84u\\x84\\xa9\\xb7\\xb4 \\xec\\xc8)p#\\x84|B\\x15\\xfe\\xa3\\x01\\x07p \\x02g0\\xb47r\\xb7<\\xa2\\xa7\\xe4\\x06D\\xc1\\x83T\\xea\\x14.\\xf1\\xb1$U\\xd0\\x9b\\x15\\x15w\\xad;`_\\xe4\\xa8\\xc8\\x91\\x13\\xeb^\\xdd\\xf4+\\xf8\\xa0x\\x98f\\xe2t\\x82\\x83\\x9d\\x83T\\xf1\\xbe\\x93\\xd3@\\x85Ogb\\xcfd\\xc6\\x848\\xe8o\\xbb\\x8e\\xad\\x07XW\\xdb\\xf5a\\xab#\\x8f3a\\xd7\\x07\\xeeF\\xcf\\x0b84S\\xb7\\xf7\\xa2\\xfd\\xeda\\x80z`\\x9d\\\\H\\xda;\\xb1\\x91\\x18wV\\xf0\\xa7[\\xd6\\xc8\\xa6@\\xd5\\xcd\\x15\\xdf\\xdc_\\xceK\\x11\t\\x06f\\x87\\xdbd=\\xeb\\x8em\\xea\\x11\\xbfV\\x99\\xe8\\xbb\\xcf\\xb7m?/g$<\\x9b\\x17b\\x0eC=\\xe5\\x8a\\x88\\xc2\\xa6\\x91\\x94U\\x9f\\xaa*n\\n\\x92\\xe1z\\xdbsQ\\xc9\\x0f\\xf3Rf\\xfd\\xbfR\\x17\\xab)\\x98\\x1d7\\xc1Wl\\x1c\\x02\\xb6\\x11ay\\xa1J2\\xb8\\xa1\\xaa7\\x97\\xb8;l\\x87z\\xbf\\xade%\\xe6\\xf2\\xc5\\x8b\\xb8f\\xcf!+S\\x18Xf\\x85\\nE4\\xba\\xb8\\x916\\x8bw\\xe8\\xb5s3\\xaaH'\\x1dO\\x9f\\x14\\xd7\\xd0\\xd0v\\xb2\\x01\\xfb\\xaa\\x13=\\xa703\\x8a8\\x9f\\xcf\\xedA\\xa8\\xa0ts\\xf7\\xac\\x93\\xf7E\\x8a\\x10_\\xf3Q\t\\xdb\\xb5S\\x16`\\xc7\\xd6\\xac\\x19\\xac\\x8a\\xeb\\x1f\\x9f|l>*\\x8e\\xa3\\x91\\xaa\\xdf.\\xf0\\xe3\\xed\\xf8\\xe9%k\\x86\\xaef\\xfd\\xc7\\xc9\\xcb\\x13\\xbb>\\x0f\\xbe'\\xf1\\x8a\\x10\\x9f\\xcf\\x8d\\xda\\xcb\\xd9\\xf0XN\\xb3\\xb2\\x88\\xd2\\x81V\\x81DqJo\\xbb\\xbe|]\\x9c\\xd2\\xbe\\xed\\x12mP\\x00\\x81ai.PWD/\\xb1\\x13g\\xe0\\xf4\\x8eY\\x15\\xd5\\xbb\\x05\\xea\\xe1P\\x16(\\xd1F\\x8d@\\xffI\\x1c\\x08\\xd5\\xc2\\x12\\x8f\\x1dd\\x9a\\x82\\x19\\xb2\\xaec\\xc6/O\\xf6\\xac\\x83}Uw\\xcf\\x86\\xaen\\xc7\\xfd\\xbf\\xab/\\x05Z\\xe4\\n\\xd5m\\x99zuzgl\\xdc\\xd0\\xea9\\xa2k\\xc7[xi\\x81g\\xe3\\x1a6}5s\\x9e\\xf8\\x9fEpg-\\x01\\xb2\\x13\\x12v\\x1cWq\\xb1\\xf8l\\xe7\\x11)\\x17#\\xa0D\\xa4\\x8c>\\xfamU7_}\\xae7L/\\xf4\\x8e\\x03#\\xce!L\\x0f}\\xee\\xbfJ\\xd7U-\\xa0\\xd3\\xaa\\xf3;\\xa7\\x13|7YN|'\\xae\\x01\t\\x99\\x87\\xb6\\xdd\\x92\\x8dC\\xd3\\x0e\\x97\\xd2\\x9c_\\xda\\x11Z\\xa4\\x17\\xa9o\\xce\\x9a7]p\\xd7\\xb6\\x82\\xe9sJ\\x8d\\xeb\\xaa\\xb5h\\x93ZP\\xb8\\x99o\\xda\\xe1+\\xf5O\t\\x87\\xee\\x0f\\xfb\\xfd\\xf6^\\x1f<\\xf2\\x9f\\x948[-<\\xdd!\\xe8%\\x8b\\x10\\x1d\\\\v\\xb3o\\xd1\\xefq\\x19s9s\\xc7\\xd5\\xbb}\\xf5o\\\\#\\xe4\t\\x10s\\xfac\\xee0R\\x02\\x89\\xc8 $\\xc8\\xde\\xb6D\\xf8\\x16 \\xbf\\x0d\\xcb\\xc8\\x18B\\x82\\xec6\\xe0g\\x08)\\x15_F\\xd5\\xe0\\x88q\\xda\\x9fM\\xd9`\\xc9\\xab\\x1d\\xccg>\\x8b\\x83-\\xb0q\\x92\\\"\\xd0\\x8ew\\xc8\\x1d`\\xe9$r\\x88\\x1e <v\\x18\\xe1C\\xf0\\x93\\xf0\\x18-&\\x7f\\xb0\\xe4\\xe40@X\\xa2\\x14\\x1f\\x84\\xad\\xe6$R\\x08\\x086\\xb8\\x0c9\\x84!p\\x96\\xe2\\x9a\\xc9\\x15aH\\x9a\\xb1F\\xf8\\x1a\\xe4YR r\\x03\\xa8\\xd1\\xbe\\xf7\\xef^*Y\\xce]\\xa0\\xa1\\xf5\\xab\\xed&\\x19\\xe9W\\x81 +\\x99\\xb3\\x88\\x97\\x85\\xd8\\xc5\\x825\\xc9Ak\\xc2\\xca\\x17\\x0dx\\xc5W\\x8e\\x82\\xeb_`\\x05$\\xad\\x81EZSl%\\x0c\\xac\\x85\\xfe\\xd50\\xad\t\\xcbW\\xc4x_\\xe4\\xad\\x8a\\x8e8Il\\xe4\\xfc9set\\xe5]ck\\xa3w(\\xd0\\xf51c\\xc2\\xa1\\xabddL}+eV\\x90\\xb6\\xd4zYt\\xc5\\xf4\\xad\\x99)\\xabf\\xb8\\xe9Y+\\xe7L\\x92A\\xb1\\x84iL\\x81\\xd5\\xd3Y?\\xc1n\\x1c\\xb6\\x06M\\x83\\xaa\\xee\\xd85\\xa2\\xb8\\x8f\\xa7;?\\\\K\\x8a\\xdd\\xf81+mz\\xc1\\xda]\\x8f\\x7fV\\x81h]\\x97\\xa9\\xd6\t;\\xbb\\xd3\\xcd!\\xa7\\x9bC\\xc0;~Q\\xff\\xcd\\xeb6\\x9a\\x02\\x9ea\\x12\\xf0\\xcb\\xe4\\xc3\\x0e\\xe4\\xcf:\\x16\\x99\\xe3IN\\x81\\xe1\\x87u$\\x8fB\\xd6P\\xc8\\xd7\\xf3\\xf8yQ\\x1f/\\xa3\\xe6\\x85\\xfc:\\x8f#\\xe1\\x04\\x99\\xe5\\x83\\x0d\\xaf|\\x827\\xf6/\\\"\\x18\\x92) m\\xe3I\\x90\\x92O\\xc4\\xbb\\x8c3\\x0d\\xc5;Z>Vmtg\\xab\\x7fM7wL\\xe1\\xfe\\xa1m?y\\x84\\xed\\xb7\\xe2\\x9ax\\xf7\\x07\\x95Q\\xc4\\xcb\\xf1\\x9d\\xe8'\\xb49t\\xaao\\xb5\\xdb*X7\\xef\\xd0\\xd4_\\xa6\\x84\\xa8\\xa9m\\xd3\\xebX+T\\xe2\\xcf\\xa5\\xc7\\x1b\\x95O\\xb4\\x15\\xb4q\\xb1\\xca\\x9a-\\xf5\\xca\\x9dW\\xafl%\\xe0ys\\xd8\\xcas]\\\\\\x9e\\xda^@5D\\x1aY\\xb0q\\x81\\xba\\x0f-\\xb5F\\xf1\\xeeB\\xac\\xff\\xebf\\xe8fY\\xab\\xd3\\x10\\xcb9+\\x91\\xe9\\xae\\xac\\x8em\\xd9]\\xd5\\x0c|\\x05\\xaa6\\xd5P\\x05\\xb7c\\xfa\\xe4\\xa8\\x92\\xb7`\\xe1gb\\xea%\\xaak\\x8c\\xb4F\\x1e\\xf5JWR8\\x8d}\\xdd\\xdcl\\x8d}\\xd8c\\xe3\\n\\x8a\\x990\\xfe7k7'\\x0f\\x97\\x95\\x04\\xf3\\xfc\\x99w\\x13\\x9f\\x12_\\xb5\\xdd\\x86q\\xc7~k\\x9c\\x84\\x9d\\xbc\\xd2\\x93W\\xfa\\xd7\\xe1\\x95\\xda\\xf3'\\xc3=\\x0d\\x8aZ\\xe2\\xa7\\x8e9I\\xc9\\xce\\xe98Qm\\x97\\x944m\\xc2\\xac`^M\t\\x9b\\xde\\x85|`\\x13\\xff\\x97%/\\xc6\\x06\\x16\\xe6\\x02\\xf3:d~gl\\xf0\\xb2\\x80\\x05\\x97\\xb9\\xf8\\x82T\\x98\\xff+\\xcc\\xfeU\\x96\\xfb\\xab(\\xf3W\\x90\\xf7k\\xc8c\\xfd*\\xc9\\xf9\\x15g\\xfcZ\\xcc\\xf7U\\x92\\xedk\\x88s}\\x95d\\xfa\\x8a\\xf2|\\x15f\\xf9\\nr|-a\\xf8\\n\\xb3y\\x15\\xe0\\xf2\\\"1y\\xa5\\xb1verv\\x95e\\xec\\xf2\\x9d\\x97\\x14e\\xeb*\\xcf\\xd5U\\x94\\xa9\\x8b\\xc6\\xd3U\\x94\\xa5+\\xc4\\xd1U\\x98\\xa1\\xcb\\xc7\\xcf5P\\xd9\\xb9\\x96rsI\\x1e.D \\xce\\xcc\\x95\\xc1\\xcb\\xe5a\\xe5\\n.\\xf1AF\\xae\\xf8\\xfa_\\x8e\\x8d+\\xc4\\xc5\\x15\\xaeGQ\\x1e\\xae\\x10\\x0bW!\\x0e\\xae<\\x06.d&aKyY\\xf6\\xad\\x01\\xe5\\xde\\xcae\\xde\\x8aRK\\x05X\\xb7H\\x9c[8yN\\x1a\\xdf\\x16.\\xc3!\\xce\\xc8f\\xda\\xa2v\\x06\\x85e+\\xdcn\\x12\\xc3V\\\"\\xbf\\x96K$R\\x80[+\\xca\\xac\\x15\\xe6\\xd5\\x8a\\xb1jy{)\\x85Q\\x8b\\xc2\\xa7\\x85\\xb1ieri\\x11\\x99\\xb4\\xd2x\\xb4H,Z\\x1eB*\\xb4x\\xcf\\xbb\\x14\\xf6\\xac|\\xee,oE\\xad\\xbff\\xb1fa,Y\\x059\\xb2p\\x86\\xac,~,\\x8c\\x0f\\xab4\\x1bV\\x90\\x0b\\x0b#\t\\xc2x\\xb0\\xca\\xb1`\\x15\\xe5\\xc0*\\xcf\\x80E\\xe7\\xbf\\\"\\xb1_\\xa98\\x08\\x85\\xfbJ\\xbd\\x1ae\\xbeBy\\xaf\\xf0\\xd2\\xa9|Fq\\xce\\xab\\x04\\xc6+\\\"\\xdf\\x95\\xd3\\x8c\\xd2\\\\W%\\x99\\xaeP\\x9e\\xab\\xb2,We9\\xae\\xf2\\xf4\\x81\\xc4oEa\\xb72W\\x13\\x8c\\xd9J\\xee\\x860^\\xab\\xf0.\\xa30\\xa7\\x95\\x97\\xd1\\n\\xe3\\xb3\\x9agX\\x16b\\xb3\\xf2n\\x0b1&+*\\x8f\\x15\\x89\\xc5\\x8a\\xc6a\\x15e\\xb0J\\xe0\\xaf\\xc2\\xd8\\xab\\xbc\\xed\\x9f\\xf5v\\x19\\xe6\\xaa)Ge\\xf9\\xb5\\xa0\\x8eF\\xdaBs\\x18\\xab&|\\x9b\\xef\\xf0\\xd6_1\\xe3\\x1fy\\\\UC\\xfa\\xc1\\x86\\x97\\xa5*\\x18\\xf4\\x98U\\xbf\\x10C\\x95\\x9f\\x9f\\x8a^\\x154\\xc4\\xb2\\x9c\\x99j\\x8eQ\\xd5\\x8f\\x8f\\x97\\xca\\xcbJE\\xaf\\xffRF\\xaa8\\x1f\\x15\\xbd\\x0eh\\x1f\\x96c\\xa2\\xf2\\xf0PyY\\xa8\\xe8\\x15Of\\xa0\\n\\xf3Oy\\x0b\\xf6\\xa7S\\x85\\xfb\\xb10\\xef\\x94\\xbdhzY\\xa7B\\x9cS\\xd1F\\xe2\\xf9S\\xd4\\x86frMMM\\x8c2M\\xf9x\\xa6\\xec\\x0c\\xaf\\x85,S\\x0b,k\\x9c_*>\\xed\\xcarK%2Ky\\xdb\\x0c\\xd1\\xbcE?\\xffPp:\\x03\\xa9S\\xa08\\x9bT\\x88W)\\xcc$U\\xa89\\xc58\\xa4\\xe6\\x08\\xfc4\\x06)\\x12\\x7fT\\xc1\\x06'3Gy\\xce\\xc0`\\xden*oT\\x905*\\xd8\\xccxn\\xe9\\xac\\x13\\x96\\x10Ca$PQ\\n\\xa8\\x85np\\x0e\\xf9\\x93\\xf8\\xab%o\\x12\\xe3\\x9exD\\x88\\x9f\\xfc\\x15-M\\xfaT\\x94\\xf2\t'|*H\\xf7\\xe4\\x92=\\x95\\xa3z2\\xb7cf\t%i\\x9eP\\x92\\xa7\\xab\\xb2\\x14O\\x08\\xc1Siz\\xa74r'\\x0f\\x02\\xc6I\\xec#d\\x17\\xba\\x1fg\\xa5\\x14\\xa6\\x03^&b\\xa1\\xc9\\xe4\\xc8\\xcf\\xca\\xe2\\\\\\xc2\\xd9\\x87A\\xbb\\x1c[x\\x16\\xe6 z\\xe5\\x9c\\xee$%\\xe6$\\xc6\\xb2\\x12K\\xe7%\\x16\\xceL<\\xddI:{Jf)\\x92\\xf2\\x14\\xcbf*\\x12r\\x15\\x8bg+\\x9e\\xee$\\x95ORvcv~c\\xe9\\x0c\\xc7\\xd3\\x9d\\xa4\\xe6C\\xcbu,\\x9c\\xedx\\xba\\x93\\xf4t'\\xe9\\xe9N\\xd2\\xd3\\x9d\\xa4\\xf1\\xccHB:\\xe0\\xe9NRJ\\xe7P\\xb2%\\xe3\\xbd@\\xca\\x98L\\xce\\x99<\\xddI\\xaa\\x1eJ\\x0e\\xe5\\xe9NR\\xf5\\x9c\\xee$\\xb5\\xffX0\\xdf\\xf2t'\\xe9\\xe9NR\\xf1\\xd0s2\\x89Y\\x99Iy\\x99\\xf4\\xcc\\xcc\\xd3\\x9d\\xa4K\\xf24\\xcbfj\\x9e\\xee$\\x0d\\xe5l\\xd2\\xb26Ow\\x92.\\xcc\\xe2\\x0cnoOw\\x92\\xda\\xd2\\x8bgv\\xbai\\x98K\\xeb\\x13\\xa46\\xcb\\xcf\\xf0\\x04O\\x8e'\\xf8\\xb3<\\x9d\\x04\\xb5By\\x9e\\x8b\\x0f\\x8eNw\\x92\\x123?Qq\\xa7;I\\x8bf\\x82\\x9e\\xee$\\x9d\\x9e\\xc2\\xb9\\xa1\t\\xd9\\xa1\\xa7;I\\x8d\\xa7P\\xb6\\xe8b\\xfb\\x1c\\xcf\\x19\\x8d\\xf7*&'/o49s4\\x92;\\x1a\\xcb\\x1e=\\xddI\\x9a\\xdb\\xb0b\\xf9\\xa4y\\x19\\xa5\\xc4\\x9c\\xd2\\xe2MO\\xce,\\xf5J\\x1bNw\\x92\\x8a\\xe7t'i\\xb8\\xc2\\xa5\\xd3S\\x0b'\\xa8\\x9e\\xee$MHV\\xfd\\xafw')\\xd8\\xda=\\xa5{\\xce\\xec\\xe7\\xf4\\xe7\\xd3\\xb5\\x04\\xfa9\\x11\\xc0\\xdau\\xf8+\\\"\\x80\\x0d\\xa4F\\xd3h_\\x11\\x01\t\\x99\\xd9\\xf3\\xcbs\\x93\\x93\\xb2o\\xeb~\\xf0\\xcc0\\xfe\\xd3ln\\x19w\\x98\\x8a\\x99+\\x13.\\xe5\\xc5\\xc1jG\\xb9h\\x92\\xc9\\x0b\\x8a1mJ\\x02\\xcb\\xa9\\x1c4\\xd7URZvU\\xf5\\xf5Z^m,\\xea\\xef\\xbe\\x17\\xdap\\x84\\xb7\\x1bB*\\xee\\x99F\\xfd\\xd2\\xc0\\xfc\\x90O\\xb5\\xdf\\x1fGt\\xcc}\\x02x\\xa9\\x93\\xcfa]\\xed\\xe5E<\\xd2\\xe5\\xd3\\x7f\\xee\\x0e[uO\\xef\\xbek\\xd7\\xac\\xef\\xe5\\xc6N\\xf4\\x07\\\"O\\xd9d\\xf1\\xb3\\xb8\\x1d\\xf6\\x0c;\\x15\\xa9\\x9b\\xf5\\xf6 \\x8fy\\xb8\\xa9\\x1a_\\xe6\\xbel\\xc5\\xdb{X\\xcb\\xba(GF\\xd5\\xc2\\x9b=^M)\\x9c\\x8f\\x91\\xcb\\xa6\\xe4Y\\x01\\x83\\xa1\\xab\\x9a^\\x9e\\x02\\xed\\xaa\\xf5m\\xdd8\\x99_\\xa2\\x16\\x97\\xb5s&\\x12\\x1c\\n\\xdf\\xbd\\x0b\\xc1\\xd1\\x0b\\x05\\x82\\x8e\\x007\\x13g\\x9c\\xa2\\xa3\\xf1\\xd6\\xc9\\x19\\xb4\\xef\\xd8\\xdd\\x91&\\xd0m\\xd5\\xdff*\\xb9'wp_u\\xc3e\\xcf\\x86K\\xcc\\xcc\\xe8'\\x12k\\x88\\xd5\\x1e\\xf0%q\\xf6\\xb3(\\xc1\\xbe]\\xda~\\xe2\\xd7l\\x84\\xba\\n(\\xdd\\x05\\xf1.\\x1b\\x07\\xfc]\\xd5\\x0d=\\x1b~\\x10=\\x87\\xa9\\x8c\\xd8\\xfb\\x0d\\x97x\\x95H\\x1a\\x89VA\\x15\\xcf\\xc5\\xcay-\\x95\\x8eO\\x7f\\xeb]\\xfe\\xa7\\xc2\\xc5O\\x1eja\\xc1v\\xbb\\xc4\\xc1\\xa6p\\xfc\\xf7{h\\x0f\\xc3\\xfe0L\\x7f\\x9b\\xe6\\x9a%E8\\x8bG\\xab\\xe3\\x846*+\\xb7\\xda\\xef\\x0bK\\x14\\xfa\\xa7\\xfc\\xc1\\xc2\\xa2\\x19\\xdfm5kVX\\xec8\\xfe\\xd3\\xf2\\x89\\x98Qni\\xda\\x9e-\\xbd\\xd3\\x99\\xb6\\x05\\x913z\\xe6\\xdd\\x8d\\xcb\\xaa\\xdc\\x91]\\xb0f\\xc3\\xba]\\xdd\\x0cj\\xf2I\\xf3i\\xae\\x88w\\xd5\\xb6g(\\xe3\\x85{\\xb3\\x11z\\xafQ\\xc0\\xea\\x86\\xecm\\x0c\\xe0\\x07\\xb1>\\xa2x>\\xe5\\xc0~\\x90\\x08\\xf8\\x03\\x02\\xe8\\x0f\\xe2kVl\\xc5\\x1a\\x02\\x00@\\x88\\xf7 \\x10{\\x112\\xc0\\x80^\\x81\\xc3,\\xab\\xdd\\x93T\\xba\\x10\\x14\\xe8\\x15\\x16\\x00\\x0b\\xc2R\\xc0\\xa0W\\x9a\\xa8T\\x044\\x08P\\x008\\x08\\xcb\\xc1\\x83^y\\x15\t@\\x08y BX\\n$\\xf4W{\\xbb\\x15\\xfd\\x15\\x05\\x13\\xc2B@\\xa1W\\x98\\x80\\x11\\x11@\\x85\\x90\\x01,\\xf4\\x0bdC\\x0c\\\\\\x08%\\x01\\x86\\x10\\x07\\x19B)\\xa0!d\\x81\\x0d!\\x1dp\\x08%@\\x87\\x90\\x01<\\x0c\\xd8'\\xcf\\xeeX?\\x85\\x01\\x88p$\\x10\\\"\\x94\\x07\\\"B\\x02\\x18\\x11\\x16\\x03\\x12\\x836<\\x0cJ\\x84E\\xc0D\\xaf\\xa8\\x11\\xb0\\x18\\x00'\\x82r\\x01\\x88\\x00E(\\x0dR\\x84(P\\x11r\\xc1\\x8a\\x10\\x02,\\x02\\xcd\\x05\\x8a\\xee\\xa4\\xe9^RI\\x00#DA\\x8c@\\xac\\xd920#*J\\xaf\\x11a@#\\x94\\x045B\\x1e\\xb0\\x11\\x95\\xa7\\x16z\\xbfc\\x93\\x01pD\\xe5\\xf1\\xfa\\x0c\\x1e\\x90#\\x14\\x01:\\x02\\x0d\\xcf\\x071\\xc0#\\xd0A\\x8f\\x10\\xc20-\\x00?BD\\x9e\\x07\\xa2Q\\x00\\x08\t\\xc9\\x9dG\\x03D\\x02\\xb1\\x87\\x88\\xc0HX\\x02\\x8e\\x04\\x7f\\xcf\\x95\\x01I\\x02\\x0d(\t\\x04\\xb0$\\x90\\x00\\x93\\x10\\xef\\xd54\\xe0$\\x90\\xc1\\x93\\xe0\\x05PB\t\\x10%\\xa4\\x00)a\\x01\\x98\\x12\\xe8\\x80J\\x88\\xf4\\xb2\\x0fX\t\\xb1\\xefh\\x00K(\\x04\\xb2\\x84Xu<sc\\x11\\xe0\\x12\\x95\\x14\\xb8\\xe2B>E\\x81\\x97\\x10\\x00_B\\x06\\x00\\x13\\x15\\xe6\\xbb\\x08C>\\x19@LT\\x9e\\x7fs\\x1b\\x01h\\x82\\x17\\xa4\t^\\xa0&\\x14\\x06kB\\x16`\\x13\\x15\\x87\\x818a)\\x90\\x13\\x95\\x14\\x06wB\\\"\\xc0\\x13\\xe8 OH\\x05zB\\x12\\xd8\\x13\\x02kb\\x00\\xd0\\x07\t\\xa0>\\n\\xf0\\x13R\\xc1\\x9f\\x90\\x02\\x00\\x05\\x7f#3\\x80\\xa0\\x89\\x93+\\x03 \\x8a\\xeb\\xb6\\x0f$\\n\\x8b\\x81\\xa2\\xb8(\\x1fx\\x14\\x8e\\x00 \\x85B:G\\x04\\x92\\x02\\x19L\\n\\xe82\\x8f\\x83Ja\\xdcm\\xe3\\xc0R \\xeeV\\x17\\x03LQi:\\x1f\\xd2\\x0f2\\x05/\\xd0\\x14\\xec\\x1a\\x97\\x03\\x9bB<4\\x81\\x83N!\tx\\x8a\\xbd\\xed\\x01\\x9f\\xfa^\\xc5\\x00\\xa8\\xee\\xbb^\\xa1I@T\\x00\\x1f\\x18\\x15\\xe2\\xfd5\\x1b\\xa9R\\xa0T\\x98\\xd2\\x8d\\xbd\\xc0TH\\xac\\x9bG\\xef\\x93A\\xaa\\xa8\\x143'\\xde\\x07T\\x05\\xabF\\xb1\\n\\x1b\\xff\\xc8\\x05\\xacB\\xfe\\xa1g\\x00\\xbc\\n\\xf1\\x91\\x00\\xbbq\\xc5@\\xac\\x10\\x01\\xb2\\xc2\\x82\\xca\\x05B\\x8dK@\\xad^a\\xfa\\x9a\\x93\\x00\\xb0\\x15\\xc2\\xe0VX\\xd0\\xba\\xe5 W \\x02]aA\\xad\\x02}^\\x12\\xf4\\n!\\xe0+\\x88Jy\\xc1\\xaf\\xb0\\xa0Y\\x0b@\\xb0@\\x00\\xc2B\\xbc*\\xb1\\x848J\\xefg\\x00cQys\\xa0H\\x1c\\x1c\\x0bQ\\x80,\\xd0;\\\"\\x1b\\xceU\\x0e0\\x0b\\xa9\\xa0Y\\x08\\x02g\\xc1nA\\x0ex\\x16\\xf2\\xd7\\n\\n\\x90\\x16\\x88\\xbd\\x0e\\x19\\x80Z\\xaf\\xc0+\\x96\\x0e\\xaa\\x85x\\xbf\\x00\\xa1o \\x02\\xb0\\x85\\xb8B\\xeb\\x87\\xda}\\xb0\\x08l\\x1b\\x14G\\x00\\x9f\\x02\\x01t\\x0b\\xc7ilA\\x00.d\\x83p\\x81\\x0e\\xc4\\x85\\xe3uG\\x1a(7(\\xceN\\xdcK\\x01\\xe6B\\x1c\\x9c\\x0b\\xb4N\\xa0XuH\\xe8\\xa8b`]\\xf0\\x01v\\x81\\x06\\xda\\x85x\\xfb)m*\\n\\xe0\\x05\\x1a\\x88\\x17(@^ 4 \\x17\\xd0\\xeb\\x08D\\xf3\\xc2\\x16\\x83|\\x1dI\\x1a\\xf4\\xeb\\x05\\xfaBi\\xb0/x\\x00\\xbfP\\x18\\xf4\\x0b\\xd3\\x16\\x19\\x01\\xfe\\x82\\xe3\\xd3%\\x81\\x7f\\x1dY\\x02\\x0c\\xec\\x03\\x00C\\x01\\x100\\xa6\\x188\\x10\\x18r\\xc1\\xc0\\x8e4\\x0c\\x1c\\x0c\\x14\\x800>[\\x02\\x18F/zR\\xe1&\\xe7_)y\\xef\\xdf\\xbd\\xd4u\\xa3\\xe1'\\xdfq\\x172\\xfd2\\x1b\\xe1y\\x1a\\xce\\xd1\\xacu\\xf2G\\x15C\\x16Y\\xa5\\xe2<P\\xfb\\xaar\\xed\\xa9{\\xd8\\xb5\\x9b\\xc3v\\x190y\\xd1\\x85\\x8c\\xb3JZ\\x1b\\x01eU\\xe5\\xa6@\\x05\\x81E&\\x0b\\xe6\\xca\\xf3\\xb5x\\x82\\xa0`\\xa5c@'\\xff^n\\x1eT\\x99\t\\xd7\\x15\\xd3K\\xfc\\x84\\x05\\x9e\\xde\\xb1\\xab\\xc6\\x9a\\xa1s\\\\\\xd7\\xecz9\\x16\\xde(\\xca\\xa8%\\xe8?\\x89\\x03\\xcbZX\\xf8\\xb1\\x13M\\xce\\x00'\\x1f\\xb8c\\xc6\\xafO\\xf6\\xac\\x83}Uw\\xcf\\x86\\xaeng1\\x95\t\\x87{\\xa4\\x96\\xba\\x05\\xe8\\xf6M\\xbdo\\x80\\x81\\xf5;C\\x0b{\\xd6\\xf5u?\\x0bJ\\xf0\\x96_nX\\xd3\\xee\\x96h\\xe9\\xf4\\xf5\\xcc\\xe1\\xe3\\x7f\\x16\\x016n$A\\xfc\\xae`\\xff3]\\xa8\\x9bKk\\xd7E\\xac\\x83\\x0f\\x98\\x8eH\\x1c\\xf7#\\xb7U\\xdd|\\xf5\\xb9\\xde\\xb0\\xf1b;\\xdb\\xd9\\x1an\\x1dxAe\\xf9\\xe5\\xd2%W\\x0b\\xf7\\xb4\\xba\\x89\\xaff\\x1d\\x83\\x18\\xaf\\x98\\xc1\\x94o'`\\xcb\\xdf\\xb5\\xed6\\xdd2\\xb6\\xed\\xd6g\\x17\\xdbv;gk\\xe0\\x7f\\xa8\\x9b\\xebv\\x91\\x0dl\\xda\\xe1R\\xaeR\\x97\tw\\x8b\\xa7|\\x81\\xf4\\xb8\\xd1%\\xd1\\xfe\\xe6\\xad\\xa3\\xf7\\xf6{c\\xfa\\xa7/H\\xa6\\xf1\\xb8\\xd4\\xb52\\xda'E\\x94\\xbdi\\xcd,\\xd3\\xde\\x00\\x04\\x82\\x0c\\xa1\\xe0\\xc2t\\x90q\\\\p\\x97S\\x8e\\x9e\\xc6Wl}\\xfb\\xf7\\xbf\\xffJ#\\xb4\\xe68\\xaf\\xb0(\\xd7\\xa3\\x1e\\xe7\\xf6e\\xdf\\xad\\x8f\\xdc\\\"\\xb4,\\xf7\\xb8q\\xb6\\xc8H@\\x16*N#\\xd6t\\x0f\\x84\\x1a\\xb7\\xe9\\x87\\x07k\\x9cQV\\xb8q\\x9e\\xb1\\xea\\x07\\xcd\\x0f\\x13o!\\xba\\xba\\xca\\x07\\x9bN\\xd3\\x83\\xa2\\x1d\\xcd\\x0f\\xb3\\x90\\xe62\\xd6\\xd76\\x81\\xa8\\xba|\\x08\\x01\\x88x\\x84]>\\x94A\\x92\\x8fU;\\x98S\\x88\\xc8\\xbfi\\xd2\\xc9P\\x88f\\xa6\\xa8C\\xdb~\\x82\\xfd\\xb6Z\\xa3y\\xec \\xa3\\xab\\xfb-\\x13\\x05\\x87b2\\x89\\x9d\\x12\\x8b\\xcb$u\\xcc\\xbc\\x86\\xb3~94\\xf5\\x97)\\xd8\\x1eUc[\\xa0\\xafSTT\\xf9\\xf2\\xaa\\xdaV\\xcd:\\xb7S\\xe8M\\xb5\\xcaE#\\xdd\\xfa\\xb7\\xcf\\xb7,\\xd4\\xc8\\xb9\\xbd\\x1a\\xaan\\xc0\\\"R\\xf2\\x91{Sn\\\"\\x1e\\xac\\xa5S\\x91\\xda\\x1aM\\x1bx\\xc3\\xd8|5\\xda\\xa8\\xa8,9\\x81\\xe46\\xdal\\xbc\\xef\\xa0\\x8fRS\\xd3\\xb5x\\xdd\\x0c\\x9dq\\xf0;\\xef`i\\x97\\xfcY\\x83 \\xd0GwU3p\\xa7\\xa6\\xdaTC\\x85\\xd5kV+\\xbd=\\xa8:\\x19\\x82\\x9c\\x15\\xa8~\\xb4\\x85\\xc4\\x9ae6h\\x9e\\x93\\xb8\\xad\\xfbA\\\"\\xd8\\xf7U7\\xd4\\xeb\\xc3\\xb62\\x1ci\\x04\\x9e=U\\xa7\\xb9\\x11\\xce!\\x12\\xdc\\x10\\xac\\x0c3\\x89\\n\\xca<;\\xfe\\xb2\\x8a\\x1c\\x07\\xdf\\x11\\xe79\\xa1\\xf1,7\\xfe\\xa5\\xc6\\xb3\\xcc\\x04\\x97\\x98\\xc8\\xa5\\xfb\\xa6\\x17\\xc9\\xeb\\xe3\\xc9F8\\xadb\\xa7U\\xec\\xb4\\x8a\\x9dV1\\xaf\\xac\\xff\\x0c\\xabXP\\xdf\\x82#\\x10o\\x8f\\xd3\\x163\\xa8\\xc0~9\\xd4w\\xd5\\x965\\x83\\\\V\\x9c\\x97\\x11\\x81\\xec\\xcb\\x9a\\xed\\x07\\x99\\\"]\\xa3\\x84\\x11\\x13\\x86s\\xd4Z+\\x9fY\\x0d\\x9d\\xb4k\\\">\\x8d\\x9c\\xa3\\x00\\xf4\\x87z\\x10\\xc17\\x91x\\xb0\\xad=\\x04\\x15c\\x10\\xc2\\xec\\xdbP\\xcf\\x98\\xcd\\xa4v\\x87\\xd5\\xee\\xf9\\xf2\\xae\\x16\\xd4y\\xe5F\\xa6\\x8f\\x94^\\x98\\xb5y.\\x0ei\\xbf\\xd3\\xf2\\x13\\x9b\\xe9\\x89\\xcd\\xf4\\xb7\\xcaf:?\\x8aC\\x83\\x90\\xb1@\\xe7\\xec#%-\\xf9 \\xeeg}F\\xf2\\xca1\\x02\\xe4 \\xa8<g\\xb1\\x83\\x9e\\xa4\\xb9\\x11\t<z\\xf5a\\xd6\\x97\\xcb\\xa2\\x8ax\\x04q\\nyeT\\xc8\\x11B\\xab\\x10\\xbaA\t\\x9c5\\x1d\\x97\\xef\\x8b\\xb0S\\x88\\xf8C\\xb1\\xddA|\\xbdvw\\x045\\xbe\\x170\\xce\\xfa\\xb8\\xbb\\x8f\\x8a\\xf2l\\x01\\x08\\xce?\\xb1\\x9d\\xe4$Q\\xdb\\x9b\\xaf1G~jQ\\xc8W'x\\xe9\\x05\\x02\\xc1!\\x9f\\\\a3\\xd4+[\\xc9/\\xb29le\\xca\\x07&\\xadckV\\xdf1\\xa8\\x86`\\xd3\\n5)P\\xe7\\xa1\\xa5\\xd5%\\xd6E\\x88\\x11\\xb5<e#K9\\xe8'G<\\xe4`\\x84\\x07=\\xeev\\\"=~/\\x02i\\x05\\xf4C+\\xb2\\x9a\\xb6[\\x19\\xdd\\xe9\\xeb\\xe6f\\xcb\\xcc\\xc8\\x8eQ\\xac\\x0c\\xe3L\\x02\\xb9\\x16\\x8f\\x9f\\x18i=\\x0d\\xef\\x0f\\xae\\xe7_\\xb5\\xdd\\x86ul#\\xc2G\\xb2\\x8ax\\xf5L\\xcao\\xcbM\\x0d\\xad\\x90H\\x8b\\x94@\\xfa\\xf9\\xe0\\x98\\xe8\\xf5\\xca]\\xa1\\xc9+\\xa4\\x11\\xdey\\xa0C\\xc2\\xa9\\xc4B\\xcbAd\\xa5\\x96O\\xca\\xbc\\xfc\\x8d\\x1c\\x11\\x1e\\xb75\\xcb<\\x81\\xb0(\\xb75e@n3\\x0c\\x9b\\xe9!\tC \\x7fT\\xe6\\xd2\\x89\\xa2\\xc4\\xfa\\xc20)#\\x92x\\xca)Q\\xb9\\x98\\xd2(\\xdf\\xb2\\xad\\x88_T\\x0dTk\\xe1|\\xbb\\x0d>\\xe7\\x8e\\x80\\xbb\\xfbm?72\\xf6\\xd16\\x86\\x8dR\\x94]\\x82\\xb4\\xae]\\xd7\\xd5\\x98N(|.#/\\xcf\\x95w\\xcd%\\xb9\\xe5x\\x86\\xc2\\xb3`-\\x9epN\\xf2\\x8e|\\x82c*#H\\x89\\x9f\\xc5F\\xef\\xa5L\\xf7\\xd1Q\\x1f1PSF\\xe6\\x94\\x05$:\\x9a\\x8f\\xdbN\\x0e\\x9b\\xdbso\\xde^\\xbc~.H\\x1aT\\xa8K\\xb2\\x1d\\xd4b\\x89<o\\xb4G7\\xd2\\x8a\\xa9$\\x1f\\x1c\\xc6.\\x0d\\xb8[\\xc8\\x88\\xa0\\xe3\\xfa\\xfa\\xcb\\xa1\\xee\\xa4R\\xdc\\xb47\\xad@\\\\S##\\xf8\\x823\\x8f\\x8b\\xbc\\xf2\\xc5Df\\x92\\xa6 \\xd0\\xef0\\x8dI\\x8e\\x85\\xe8\\xf8\\x87)\\xeb\\x14\\xfe8\\x85?\\xcc\\xbf\\xff\\xd6\\xc2\\x1f\\xaa\\xa2s\\x9f.\\xe4]y\\xbd;S\\xc03L\\x82\\xe1\\xdeQ\\xbd\\xbbd\\x97n\\\\\\x03\\x16\\xc5=\\xc2d\\xda\\xb4(\\x833\\xe4\\x0b\\xa9\\xb3'\\x9alK^\\x8c4;L\\x97\\xed]\\xf6\\xfc\\x8b\\xde\\xe0%\\xc7\\x0e\\xaey\\xb1\\xe5k9\\x15\\xb6\\xc7\\x19\\x0b\\x93`/\\xa1\\xbf\\xf6\\xd3\\\\/\\\"\\xb8\\x16\\xe2\\x11aAj\\xeb!\\x8f\\xd4z!\\x9d5J\\x8a\\x10'\\xb2^La\\xbd\\x88\\xbc\\x9ao\\x80\\xb1\\x1e\\x8b\\xd3V/!\\xac\\xf6\\xd1\\xc8F\\xa9\\xaa\\x97\\x92Ts+\\x8e\\x88\\x0b\\xd2S/!\\xa6\\x0e\\x13P\\x17\\xa0\\x9e&\\x91N\\xa7\\x91Kg\\xd2J/%\\x94\\x06\\xf4\\xf4\\xde\\xb77,J\\\"]\\x9e>\\xba(q4\\x8d2z\\x19Y\\xb4\\xa7\\x83C4\\xd1\\xe9\\x04\\xd1\\x13\\x1146\\xc7=\\xd4\\xd0\\x03\\x95\\x14z)\\x1d\\xb4\\xa4}F\\x04\\xe2D\\xd0\\x19\\x14\\xd0\\x1e\\xf2\\xe7\\xe0\\x12\\x1f$|\\x8e\\xaf\\xff\\xe5H\\x9eC\\xf4\\xce\\xe1z,\\xa3t\\xd6\\x96\\xd4\\x12\\x16\\\"s.D\\xe3\\x9cA\\xe0\\x8c\\xcf$l)\\xcf m\\xe6\\xe5Y\\xd2\\x06\\x94\\xae9\\x97\\xa89\\xca2\\x1c g&\\xd12\\xe3\\\\\\xa7iT\\xcc\\xb8\\x0c\\x87K0\\x9bx\\x99\\xda\\x19\\x14\\xb2\\xe5p\\xbbI\\x04\\xcb\\x89\\xd4\\xca.\\xb7b\\x01:\\xe5(\\x91r\\x98B9F\\x9e\\xec\\xed\\xa5\\x14\\xc2d\\nU2F\\x92\\x9cI\\x8fL$FN\\xa3D&\\x91!{\\xf8\\x83\\xd1\\xe2=\\xefRH\\x8f\\xf3\\xe9\\x8e\\xbd\\x15\\xb5\\xfe\\xba\\x88\\xdc\\x18\\x02D\\xc6\\x05)\\x8cq\\xf2\\xe2\\xa5\\xb4\\xc5^\\x8a\\xe2\\x0crbt\\x1b\\x13\\xa4 \\xc6\\xf8Q1\\xda\\xe1r\\x84\\xc3\\xcb\\xa9\\x86\\x11Z\\xe1E\\x84\\xc2A\\xf2`:m0\\x890X\\xc5A(T\\xc1\\xea\\xd5(I0\\xca\\x9c\\x8b\\x97N\\xa5g\\x8dS\\x02'\\x90\\x01\\x13i\\x80\\x9dfdP\\xff\\xa2j\\x9cA\\xf0\\xebDkPj\\xdfe\\xa4\\xbe>\\x02\\xdf\\xb2\\xd4\\xbdy\\xfa@\\xa2\\xeb\\xa5\\x10\\xf5\\x9a\\xab\tF\\xce+wC\\x18-ox\\x97\\xb1\\x98\\x8a\\x17g\\x1e\\xf1\\x92\\xf0b\\xf4\\xbb\\xf3\\xd3\\xe4B\\xc4\\xbb\\xdem!F\\xb6K\\xa5\\xd9%\\x11\\xec\\xd2\\xa8u\\xa3\\xa4\\xba\tt\\xba$t\\xfc$\\xd7\\xe8\\xed2\\xe4\\xb9S\\xee\\x05\\x96Q@\\xab\\x89\\xa3\\x91\\xb6\\xd0\\xe9T\\xc2C\\x92k\\x9eM\\xf8dy\\xb3\\xdb\\xfd\\x153\\xfe1;\\x181\\xffN\\xa2\\xc4\\x1d\\xd2\\x0f6\\xbc\\x04\\xb8\\xc1\\xa0\\xc7\\xac\\xfa\\x85Ho\\xfdt\\xb7\\xf4\\xaa\\xa0!\\x96%\\xe4\\xb6#\\x89-\\\"\\xcfGk\\xeb%\\xb4\\xa5\\xd7\\x7f)\\x89m\\x9c\\xbe\\x96^\\x07\\xb4\\x0f\\xcb\\x91\\xd5zhj\\xbd\\x04\\xb5\\xf4\\x8a'\\x93\\xd2\\x86\\xe9h\\xbd\\x05\\x13Is\\x9c~\\xcc\\xa0\\x9d\\x15\\xe1bK\\x9c\\xbdhz\tg\\x17QC\\x853\\x87\\xa9\\x0d\\xcd\\xa4\\x94\\x9d\\xa1i\\xc3d\\xb2>\\x1a\\xd9YM\\x97\\x13\\xc8.\\xb0\\xacq\\xba\\xd8\\xf8\\xb4[J\\x11\\x0bWX\\x848\\x91\\x1c\\xd6\\xdbf\\x88\\xe2y\\xfdt\\xa0\\xc1\\xe9\\x0c\\xa4N\\x81E\\xc4\\xaf\\x82\\xc3\\xd3#-\\xc4\\xec\\x19&{-\\xd4\\x9cb\\xd4\\xaes\\xf2\\xa84RW\\x12\\x9dk\\xc1\\x06\\xa7\\x91\\xb7\\x86\\x12Pg\\xed\\xa6\\xd2\\xb6\\x06\t[\\x83\\xcd\\x8c\\xa3*f\\x9d\\xb0\\x84\\x83\\x15\\xe3Z\\x8d\\xb2\\xac.t\\x83s8U\\xc5_-y&\\xb8\\xd7\\xde\\xe7FxT\\xfd\\x15\\xcd\\xe5N\\x05+1a1K\\xea\\xc8\\x8aj\\x08\\xc3\\xf9Q\\x0b2\\xa3\\xba\\x9c\\xa8\\xe5\\xd8P\\xcd\\xed\\x98YB\\x06\\x03\\xaad<5d\\xa1\\xdc\\xa7W\\x99\\xac\\xa7\\x969@\\xf8N\\xb3\\x98N\\x11f\\xd3(\\xa7\\xa9\\xca$\\xc4\\x13\\xf8b\\x98\\x90I\\xc5\\xd3\\x93\\x04\\x11<I:\\x16d\\xf2\\xdb\\x1e\\x16\\n\\xe2\\xc7:\\x04\\xccpl\\x9d)\\x84\\xd6\\xf0 5\\xa2(\\x8d\\x8c\\x9a\\x17Bf\\xfcvIe\\x08\\xf8M\\x82\\xa3\\x11\\xc3p\\xc6;Z>\\x05q\\x9c^$'\t\\xcb\\x99\\xd0\\xe60\\x81\\x8b\\xbd\\xe7)\\x85\\xe8$a:\t\\xad\\xa0\\x8dKYd'\\x19\\xdb\\x99C\\xf3\\x01v\\xe3\\n <)\\xddU\\x0e\\xe5\\x19\\xc5yZ\\xd5Y\\x86\\xf4\\x0c\\xb7)\\x17\\xed9\\x13v\\xe5\\x12x-\\x01\\x7f\\x9e0+'\\xcc\\xcao\\n\\xb3\\x82\\x8f\\x1f\\xdd)L\\x84\\xb0`\\xa2\\x96@\\x95\\xd3\\x9d\\xd2q\\x82\\x1e\\xd9\\x17\\x0d\\xe3^\\xb2\\x1c\\xba\\x85\\xe8\\x17\\xaf\\x9c\\xff\\x11\\xc5\\xbf\\xc4\\x100A\\xf7-\\xe4\\xbc\\x0d^\\x1cLti\\x8c\\xf5\\x12\\x94G\\xc3\\xc4\\xf00\\xa5\\x111\\x8511\\x11TL6.\\xa6,2\\x86\\x82\\x8d\\xc9@\\xc7\\x94\\xc5\\xc7Hm\\x8d d\\xcabd\\x08(\\x99\\xe28\\x99\\x08Rf\\x19V\\x06\\x15\\x14\\xc4\\xcf\\x14A\\xd0\\x1014\\xe8\\x97I\\xb8\\x9aldMil\\x8d\\x1f]S\\x18_s\\x0c\\x84Ma\\x8c\\x0d\\x15eS\\x18g\\x13F\\xda\\x14\\xc7\\xda\\xf8\\xd16\\xd2p\\x91\\xf06\\xcb\\x117\\xa80\\x81\\xc2\\xf1`n\\xb2P7^\\xdcM\\xd4\\xa5\\x08boh\\x1eG9\\xfcM\\x18\\x81\\x13\\xafMQ\\x14N\\x18\\x87S\\x0c\\x89\\x93\\x8b\\xc5q\\xc4\t\\x8f\\x06u\\x1e\\xca\\xe2q\\xd44B\\x1a\\x94\\x8b\\xc9!\\x00Q\\x82\\xb8\\x1c\\\"2\\xc7\\x9b\\x9e\\x9f\\x88\\xce\\xf1\\xcbAr\\x96\\xb31:)\\x9dC\\xc1\\xe9\\xc4{\\x81\\x84\\xd5IF\\xeb\\xe0\\x19\\xdd\\x05\\x10;\\x04\\xccN\\x0c\\xb5\\x13\\xc7\\xed\\x04{-\\x05\\xbbCC\\xef\\xe0\\xf8\\x9dl\\x04\\x0f\\x19\\xc3\\x93\\x8a\\xe2!\\xe2x\\xfc\\xbd\\x88cy\\x02\\xefS\\xf0<%\\x10=\\xc1*;\\x7f\\xcf\\xc2\\xf58\\xd2\\x10\\x9cOQ\\xa4\\x8f\\x0f\\xeb\\x93\\x89\\xf6q\\xab\\xec\\xa2\\x7f\\xca\\xe3\\x7f\\\"\\x08 \\x1c\\x03\\x84\\xa3\\x80J\\xe2\\x80\\n#\\x81\\x8e\\x81\\x05JA\\x03\\x11\\xf1@I\\x88 :&\\xc8\\x83\\n\\xf2\\xe1@\\xe8H\\x9082(\t\\x1bDF\\x07\\xa1\\x0d*\\x8d\\x10*\\x8b\\x11\\xf2\\xa0\\x84J\\xe3\\x84J#\\x85\\xf2u\\x84\\x84\\x16\\xa2\\xe1\\x85\\xec\\xe5\\x0e\\xc3\\x0c\\xe9\\x9d\\x1c\\x86\\x1a\\x8a\\xef\\x8c\\n#\\x87\\x02\\xd8!\\x1c=d\\xd5\\xb0\\x14~(\\xb8\\xbd\\xc50Dt\\x14\\x11\\x11GDE\\x12\\x11\\xb0D\\x90\\x82&\\xc2\\xf1D\\xf43\\x962\\x98\\\"\\x88\\xa0\\x8a\\xe8\\xf5\t\\xa6\\x1f\\xe5c\\x8b\\xc0\\x83.\\x9a\\xd7\\\"TA\\xe3\\x1fy\\x08\\xa3\\xc5\\x07G^\\x9cQ4\\xc83kH!\\xacQ\\x08m\\x94V!OXi9\\xe6\\x08\\x15\\xd7v^\\xd4Q\\x00w\\x94\\xd6\\x92\\xa5\\xd8#\\n\\xfa(\\xad&\\x9e>-\\x87A\\xf2\\xa2\\x90\\xc0\\x8fCJkB2\\x16)\\x86F\\n\\x16\\x1fJ\\x85\\x8b\\xf5laTR\\x02.)\\x8cL\\\"5\\xd8\\x97\\x07Got&B)\t\\xa3\\xe4G)\\xb99{\\x0bqJ\\x8b\\xeds\\x1c\\xad\\x14\\xefULN\\x1eb)\\x19\\xb3\\x14\\xc9K\\x8de\\xa6\\x86\\x90KQ\\x03\\x00\\xc4.\\x82\\xe2\\xf8\\xa50\\x82)\\x86a*\\xda\\xb0bH\\xa6<,\\x13\\x11\\xcdT\\xbc\\xe9\\xc9\\x98&\\xaf\\xb4\\xf9\\xde\\x82\\x8cj\\x8a\\xe0\\x9a\\xa2\\x0d\\x8eYV v\\xc8\\x12\\xd0\\x13nP\\\\ \\x14\\x01\\n\\x95\\xe5\\xbb\\xe7\\x00\\xa2\\x1ca\\xea-?$*\\n\\x8a\\nW\\xb840\\xaa04\\xca\\x07\\x8e*\\n\\x8f\\xc2\\x00R%!R\\xe0\\x05I\\x95\\x85Iy\\x80R\\xc5\\xa1R(X\\xaa<\\\\\\x8a\\x00\\x98\\x02[\\xbb\\xa7tO\\xe3(|\\xbb\\x15-\\xfd\\xe5\\xc0:.jzG\\x0b9%g\\x9f\\x92\\xb3\\x7fC\\xc9\\xd9vE=9\\xd0d@\\xa0H\\xb5V\\xb2b\\xb8@\\xf3\\xeeE\\xd9\\xe5\\x8e\\x02{o\\x81\\xc2\\xb2\\x9f\\xd1\\x81\\xb2\\xf6\\xbaK\\x90v.\\xb2n\\xc2\\xbd\\xf5\\xddzIEf\\x8a\\x81Js\\x83\\xb6\\xf3\\x8b\\x98e\\xda\\xb1\\xce\\xb36\\xa4\\xa9\\xef\\xdd\\xaan\\xfa\\xa1`U\\x0di\\x91\\xaa\\xe2\\xd7\\xc9\\xeb\\x9a\\xdb\\xf5u@\\x7f\\xc3\\x112\\xe8#\\xb0>\\xc2v~I\\xfc\\\"\\xe9bv\\xf7\\xfauG\\x1e\\x82\\xe0\\x8b`\\xf7\\x08\\x0d[\\x1a\\xa7(t\\xb9\\xba\\x0f]\\x16\\x81\\xf3e\\xb8\\xd0\\xa9W\\xa5\\x87\\xeb\\x8f^\\x90\\xee\\xbf\\x16=\\xa3\\xde\\xc9\\x17\\x9f[\\xd7\\x9b;\\x02\\x03\\xd7\\x9d\\x87\\xea\\xb2\\xe4j\\xf3\\x11\\xba7\\x93\\xe4\\xc2\\xf8f\\xe5\\xda\\x00\\xbe\\x99\\xf0\\x19p\\x0f\\xaf\\xee\\xec\\xee\\xed\\xd9y\\xfd\\xb6\\xee\\x07\t\\xd6\\xdbW\\xddPs\\xb7\\xb1\\x9b\\x01\\xf6\\xa6\\xa2\\xc6a\\x9a\\xa1\\xf5\\xc4\t\\xde\\xecke\\x9fg!7K\\xfc8D\\xf3(\\x11a\\xb1\\x14\\xddL^1\\xbd\\xc6\\x0eU>\\xdc\\xc0\\xcdc~yvln\\xb7\\xbc\\x16+X;\\xd7J\\xd9Q\\xc9\\x05\\xc6\\x081>^\\xb3\\x13_7\\xb3\\xec\\x8amG0\\x0b\\x12\\xaf\\xc2l\\xa6\\xe6\\xda\\x0b\\xb82\\xcf'\\\\K1+9\\xcb(\\xcc\\x0c\\x01u:$\\xa3\\xf5\\xccj\\\\\\xb2iF\\xa1\\x9f\\xe3\\\" \\xe6JD\\xb7\\x0e\\xa9\\xc4l\\x99S\\xcf\\x92\\xe68\\x10A\\xf7!\\xda\\x18\\x02\\x01[\\xb1\\x89\t1\\x9f\\xc0[\\xdbp\\x07g\\xcdZK\\x16\\xe2\\x0b\\xf8<\\x81\\x85\\xb5\\xcd\\x9d\\xd3\\x968\\xaf\\x07\\xe0\\xafE\\xd6D7\\xe4\\xd8k\\x7f\\xdc\\xe0\\xc6\\x17\\xf9\\x99]\\x00\\xe7\\xd6\\xc9\\n\\xa9\\xbcq\\xfd\\xa4\\x12X\\x8f\\x91\\xa7)\\xc8\\x93}\\xe5\\xe4h\\x82\\x8c\\xdb&\t\\x86.\\xcb\\xc6-\\xb2n\\xa3\\x13\\x94s\\xc7\\x9e#d\\xe1\\xae\\x1b\\xe2;oz\\xa5\\x9c\\xb9\\xb4|\\x17n\t\\xf2\\xedl!\\xbe\\x1b\\x87\\x12\\xd5\\xcf\\xdd\\x99C\\xa4\\x0d(-\\x0f\\xb6K\\x07\\x1f%\\x8fg\\xb7\\x0e\\xb1\\x83\\xdf8\\x19O`?\\x05\\x04\\\"\\x9e\\xd8\\x9e\\x0b\\xb2\\x96`T\\x9c\\xeb\\x11\\x1bE\\xc5\\x99x\\x88\\x0d\\xce=#[\\xb6nGD\\xb9\\x0d&\\x90\\xf6D\\x1aLiL\\xea\\x1a\\x8f\\n\ty\\xeb\\xd3\\xe3\\xdf\\xf9C\\x99\\xb6,\\xf5\\x00\\xfc\\xaa-\\x0f@|\\x91\\x00 \\xd4\\xab\\x94O \\x1f\\x9c\\xdcgad\\xc0\\xf9\\xd4\\xeb\\xcc\\xa4E\\x08\\x0c!f\\xac\\xc0\\xe5\\xf4\\xc9\\x8b\\x14\\x18\\x82\\x9c\\xcc\\x92\\x07\t\\x9c\\x866MA\\x81!\\xa1p\\xb2\\xedKL\\xdd\\xc9\\xb6#\\xcf\\xc9\\xb6\\xff\\xf5\\xdb\\xf6\\xb4\\x18\\x7fRl:i78\\x13e\\xec\\x0c\\x8d=\\xa1|\\n\\xec\\x0c\\xe7\\xf2f\\xbbD\\xf9\\xcc\\xf6\\x8a\\x94\\xdd/\\xb5\\xa9V\\xcb\\xb4\\xf6\\xa8\\xe5\\xc4\\xda\\xfcf\\xb4p\\xc1\\xde\\x17\\xa1\\xf2\\\"o}\\x03;\\xd7x\\xe0\\xb4\\xd4\\x8eu\\xda\\x94-\\xa8\\x84\\xf31\\xad\\x12\\xbf\\x8ec\\xf0\\x00'\\xaa\\xcb\\xd8O\\x7f\\xc5S\\xd2B|\\xa6\\xbf\\xce\\xd1g\\x1ao)\\x81\\x1f4\\xb3\\xfa\\x99\\xfc\\xa4\\xa1\\xaeX\\xccIZ\\xe4\\x183\\xceC:\\xfb|\\xcc\\xb1\\xca\\xe5\\x1eU{\\x13),\\x9dh\\x94n\\xb2\\x7fc\\xa7\\x95K\\xcc\\xc6\\x83\\x1cR&\\x9b\\x87\\x8c\\xc3\\xc9\\xd9\\x0cXl\\x06\\x8cig\\x88s+\\xba\\xa0\\x82\\x8b\\xa7;\\xde\\xccbS\\x9cp49\\xe6\\xc2\\x91u\\xdeO\\xe8\\x19\\xef\\xa8\\xd9H.\\xa4\\xef\\xb4\\xe8:\\x0d\\x81\\x1e\\xe2N?e'\\xea6\\xe0N\\xc3\\x80\\x12tz\\xd7\\x83\\xf0bV\\x90\\x8e\\xd3O\\xc4Y\\x8e\\x82\\xb3\\x18\\xf9\\xa6\\x97vsXN\\xb8Y\\x8aj3L\\xb2\\xb9\\x88^s1\\xb1\\xa6h\\xaf\\xbd3\\xf6Rj.&\\xd3DqB\\x1e\\x1a\\xcd\\x1c\\x02MA\\x96i\\xb7\\x06agYB\\x9a\\xe9'\\xc8\\xcc\\xa4\\xc6$\\x91b\\xd2\t03\\xa8/3H/\\x11\\x83Q\\x90\\xda\\xb2,\\xa9e1:\\xcb8\\x91e1\\nK\\x1fye\\x0em%JQ9P\\xc8)\\x97\\xd2Rz)(\\x17\\x92O\\\"\\xb4\\x93\\xde\\x85\\x92\\x86\\xd5pV\\xd0\\x85\\xf4\\x92\\x13\\x95$\\xd6\\xbf\\xbf\\x8b\\x97\\x9dG&)\\xc9#\\x0dq.\\x8dd\\x01\\x02\\xc9<\\xeaHK\\xcb\\xed\\xc50\\x93.Ru\\xb4)1\\x87\\x182\\xc8z\\xe8!\\x83\\x8c\\xd2@\\xba\\\\nt\\xeaG\\xf7\\xdb\\xbf`m]D\\xf4Hil\\x8c\\xdc\\xd1\\xdf\\xb6(\\xa1c\\x02\\x95\\xe3\\x9c\\xaf*\\x93\\xbe1H\\xdc\\xe8\\xa7l\\x0c\\x915\\xa2\\xbd@%h\\x8cQ3\\xda\\xa4\\x8c\\x19t\\x8c\\x04\\\"F:\\x05c\\x94|\\x11\\xe10t\\x8aC\\xde\\x89\\x91,\\xe6\\xd1+\\xa2\\x952\\xfe\\x92E\\xa6h\\x93'\\xe6\\xd0&\\\"4\\x89Y\\x04\\x896!bI*D/\t\\xa2\\xcd\\x0cg\\x13\\x1f\\x96\\xa1<,FvX\\x96\\xe6\\x90Fp\\x18\\xa56T;\\xeb\\x18\\xa9\\xa1z-Hg\\xe8\\xf0\\xfe\\xb9\\xa5Q\\x89\\xe9\\xc2\\xe4\\x85D\\xdaB\\x02a\\xe1\\xac\\xca%I\\n\\xb3\\xe8\t]:\\xc2rD\\x84\\xe5(\\x08\\x97\\x8fn\\x94v0F8\\xa8\\xad\\xb6M2(\\xfdv\\x9b^\\xd0\\xef\\x1f\\x17\\xa4\\x14D\\xc9\\x04m\\x1a\\xc1YMJ\\x10\\x08\\xa2\\x1b\\x15\\x9b4\\x90B\\x17\\x18%\\n\\x8cS\\x04\\x06\\xc9\\x01\\x89\\xb4\\x806! \\xda\\xbeY/\\xe6\\x93\\x00N\\x07\\xd26\\xfd_\\xbc\\xf4\\x996\\xd9\\x82\\xa6\\x08q\\x1a\\xd9\\xdf(\\xa7\\x9f\\xaa8\\x95\\x89W\\xc4\\xf8\\xc7,0m\\xfe=J\\xed7\\xd0\\x03\\xcc(\\x91\\x9fw\\xdb<\\xabj\\x01\\xf2>\\x9c\\xb6\\x8fV\\xbc\\x0bKYL\\xd2\\x07Vn\t\\xa0\\xf4|(1\\x1f\\xad\\xaeK\\xc8\\xf8\\xc24|\\xb4r\\x17r\\xeca|z(\\x93\\x1e\\xad\\x16I\\xecy~\\xde<\\xb40\\xc2\\xe1\\xe6LQ\\n\\xf2\\xe3\\xd9+\\x0b\\xca\\x8c\\xe7\\xe3\\xc4\\x0b6&r(\\xeai\\xd0\\x90\\xc8}75\\xc0\\x10\\x17d\\xbd\\xc3\\xf8\\xee\\xec\\xe3\\xda\\x05Lw\t\\xe6*\\xcck\\x17\\xb6\\x0f\\x19\\\\v\\\"$i\\x89\\xa3\\xb1\\xd8\\xa1m\\x83`\\xa2/\\xceo\\xe6\\x9dj\\x10m8\\x14e\\xa8\\xf3Q\\x95\\xf9Y\\xe92\\xab\\x9e\\xceA\\x87j\\xb6~\\xd2\\xd8\\xe7\\xa2\\xbcs\\x05\\x1a\\x97\\xcc2\\x87\\x1c\t\\xc0\\x9ca\\x8f\\xc2/\\xe7e\\x96\\xf36)\\x01\\xc4\\xba\\x840\\xce&\\x87\\x0b\\xd2\\xc2%\\xfat9$p\\xe2\\xaf\\xbf3\\x1b:e\\x06\\x9b\\x9b\\xa9\\x00\\xf1\\x1b^\\xb1\\x92do\\xf94o\\xfa\\x18O\t\\x9c\\xce\\xbcs\\xa9\\xdd,:\\xb7L\\\"\\xb7i_\\xa0\\xe4M\\x14n\\xd9\\xe4m\\x8alJ\\x89\\x9bh\\xdb\\n\\x12\\xb6YTm%I\\xda\\\"\\xf4l*\\x15\\x87W~U]\\xad\\xeb1\\x19\\xe7\\xc5\\xb7/\\xcf\\x7f\\x92\\xa1\\x83\\x1f\\xdb\\x1brF\\xce\\xae\\xbf\\xb9\\xac\\x9b\\x0d\\xfbbO\\xca\\xba\\x19\\xd8\\x0d\\x9bl/\\xe6\\xa3muA\\x80\\xcfev\\xc7\\x9a\\xe1\\xc8\\xf9\\xb8\\xe2\\xf5\\xd9_\\x02\\xb6\\xaf\\x1a\\x86\\xae\\xbe: \\\\\\xbaX\\xd5\\xe4\\x83\\x02;\\x03>\\x01D\\x19m\\x91\\xab\\x7f\\xe5\\x13\\\\\\x86\\x02W\\xf2e/`/t\\xbf\\x98{\\x8b\\xb1\\xb3\\xe0sW\\xed\\xf7\\xdc\\x84\tb\\xb9A\\xf1\\xdbq\\xa3$\\xaa\\x84\\x08\\xacl\\xe2G\\xf9\\xc8\\n\\xf6P7\\xfd\\xc0\\xaa\\x8d\\xe0\\x83\\xab>\\x8b\\x03\\\\\\xffU\\xf4\\x16\\xd9\\xde\\x07!\\xe35W\\xad\\xb1\\xb6\\xac\\x01\\xf9\\x07\\x9d\\xd06\\xab\\xb0\\xe6*\\x9cF\\x7f&P\\xa70}b\\xf7\\xcfd\\x00z_\\xd5]/\\xa3\\x84\\xdcV\\xd1j\\xed\\xaf\\xb3\\xa8\\x9a\\xc9\\x9d\\x08\\xfd\\xb6^\\x0b\\x1f\\xc0\\xac\\xb5*\\xf13\\xaf2\\xdb\\xd5\\x83\\xb0>\\x07\\x11\\xe9\\xed\\xdb\\xd92\\xcd\\xbe\\xb0\\xf5a\\x88d\\x02\\xce\\x0d\\x82\\xb18\\xf5CwX\\x8b\\xcd\\xb3\\xaa\\x91\\xf0}\\x1b\\x10f\\x80{\\x90_\\xc4\\xb7\\xd6-\\x86\\xdb\\xf6&l\\x7ft\\xe7\\x92M\\x0f\\x92N7S`K\\xdd\\x9d7\\xf0\\x0e\\xcfSe\\x83d46\\xea\\xde\\x9e\\xf8\\xbe\\xea\\xcf\\x9b\\xeb\\x96\\xdc\\x0f7U\\x7f\\xf9\\xb9j\\x067v\\xea\\xd9Y\\x1e\\x02\\xfb\\xe4\\xef\\xab\\xfeOB\\x96v\\x8c\\xb4\\xffyh\\xeaA\\x9c\\xa6\\x7fn\\xbbO\\xf0Y\\xe5\\x01\\xc9\\xd5v\\xf8\\\"\\x8e\\xf5Y\\xc7KX\\x19\\xd5\\xe2;\\xa62\\x95\\xfa\\xb9\\x9f\\xaa4-\\xb67\\xdc\\xaf]\\x0f2\\xafm\\xdd6*\\x9d\\n\\x13\\xc0\\xbbtr\\xac\\xbfLs@\\x08Q\\xf9j\\xc1qy/<#\\xf2\\xb0l\\xaa\\xa1\\\"\\xb6}\\x96\\x80\\xe2\\xb7\\xb6\\xaf\\xaa\\xa1\\x12ic\\xcd\\xbd\\x90\\x0e\\x1d\\x1b\\x0e]\\xa3\\xa3\\xd8:\\xf0/b\\x11\\xcdf\\xcb:c\\xa2\\xc3\\xf9\\x00?\\xfd\\xfc\\xe1\\xc2\\x107\\xcf\\xb9\\xd9\\xb2\\xe6f\\xb8\\x85}\\xc7\\xae\\xeb/2\\x91Ud\\xb2\\x0b\\xc8\\x12\\xe3;v>%x\\xa9\\xb20\\xe9f0\\xe4\\xae\\xd2\\xb1\\xd0~v\\x18\\xfd\\x8a\\xed;\\xb6\\xe6\\x1e\\x8cJ\\x03\\x95\\xc7f\\\"\\x1f\\xb4\\xdena\\xdf\\xee\\xa5\\x83s\\x06W\\x87AT\\x84u\\xc2\\xbf\\xd0\\x08(C\\x98\\x9aT\\xbf\\x9b5g]\\x89\\x0c\\xc4\\x01\\xaam\\xdf\\xceO\\xe0~\\xeao\\xe6\\xb4\\x9c?\\xbf\\xffQ+j\\xcc\\x0b\\xb1\\x86\\x84\\x1b\\xc39\\xe4\\xb9\\xbd\\x81\\xba\\x91c\\xc9\\xf5)>\\x18J\\xf0\\xc9\\xbd)\\xea\\xde\\x04\\x12\\xba\\xe4\\xb3\\xd4\\xff\\x81\\xb8h\\xcb\\x056\\x1f)\\x1a\\xbf%\\x8b\\xe2[\\x89%~Z\\x95\\xea~\\xc2\\x9f|b\\xf7_M\\x1e\\x07\\xdf\\xe5\\xf7\\xed\\xba\\xae\\xa6\\xbd\\x0d\\x86\\xda\\x15Z\\xe7u\\x96\\xac*H\\xffB\\x98\\xfa\\x1e\\xaa)\\x15\\x146\\xec\\x8em\\xf9(\\x8a\\xe0X5\\x0c\\xd5\\xfa\\xd6<\\x137&\\xc4\\\\\\x1f\\xadL\\x13\\x0d\\xbe\\xfc\\x96\\xdd\\xd4\\xcd\\xb7\\xdbv\\xfd\\xe9l\\xfc\\xdb\\xebfc\\xfd\\xe5\\xe5-[\\x7f\\xba\\xf8\\xc2\\xd7[T\\xca+\\xb6\\xad\\xefXw\\xf1\\xc5\\xca\\xe4\\xf9\\xb1\\x1a\\x18\\xdf\\nvU\\xd3W*qlW\\xdd\\xf3\\x8d\\x95&\\xa0>\\xf4\\x02\\xd1r\\xcbz\\xa6&\\xa6\\xc75\\xfbCQ\\xd7\\xcc\\x90\\xa5-\\xa9\\xf1\\xa7\\x90\\xf50-\\xe3\\x03\\x18\\x11\\x17\\x80\\x10\\x9c51\\xbd.\\x08C\\x08\\x01\\x11JB\\x11\\n\\x82\\x11\\x02p\\x84,@B9HB\\x0c\\x94\\xb0\\x10\\x96P\\x1a\\x98\\x10\\x80&\\x94\\x06'x\\xe1\t\\xd9\\x00\\x05G^%\\xda\\x8a\\x94S\\x14\\xa4\\x90\\x0dS(\\x0eT\\xc8\\x82*\\x94\\x07+\\x14\\x84+\\x94\\x06,\\x14\\x84,P@\\x0b\\x05a\\x0b~\\xe0B\\x1et\\xc1\\x11\\x86A\\x19\\xe4\\x92\\x15\\x053\\xe4\\xc2\\x19\\x1cq.\\xbca1\\xc0\\xc1\\xe3\\xc6\\x06\\x96\\xe2\\x80\\xeb\\x1a[\\xa5\\x17B\\x1d\\\\\\xc3\\xa5\\xa1\\x0f\\xb2\\xff\\x8d\\xdfC5(\\x0cx\\xc0 \\x0fE@\\x0f\\x85a\\x0f.\\xf0!\\x1b\\xfa0\\x93580\\x88< D\\x04\\x1d\\xe0\\x05C\\x10\\xe0\\x10\\xf8\\xe5\\xf6tH\\x04\\xfe\\xfd_\\xf0\\xb6/\\x02FP\\x1b\\x1f\\x03G\\x84[\\x1a\\x05H$A$\\xdc\\xe4\\xdeL\\x98D\\x04(\\x11\\x82J\\x84\\xc1\\x12\\xde^\\xa1\\x02&\\xe2\\x90\t\\x174\\x91\\x05\\x9b \\x01'R\\xa0\\x13\\x04\\xf0\\x04\\xdeK.\\x80\\xc2\\xf3^\\x0cD\\x91\\x0b\\xa3\\xf0Vo\\xf6\\xb7\\xa2`\\x8a\\xe2p\\x8a\\xc2\\x80\\x8a\\xb2\\x90\\x8a\\x00\\xa8\\xc2\\x85U\\xb8\\xc0\\x8aR\\xd0\\x8a\\x82\\xe0\\x8a\\xd2\\xf0\\n*\\xc0\\x82\\x00\\xb1 \\x83,h0\\x0b\\x04h\\x81%\\xe3\\xd3\\xd3\\xf1\\xc3`\\x0b2\\xdc\\x82\\x04\\xb8p*_\\x12tQ\\x1cvQ\\x12xQ\\x12z\\x917\\xdeQ\\xf8E\\x1c\\x80a.\\x15\\xfeS\\xe8Y\\xbc\\xd1=]\\xd1q\\xca\\xe9\\x151\\xe8|\\xde\\xc9\\xd3\\xa4\\x17\\xcd\\xfd\\xfc@\\x88\\x9a)%\\xcf\\xdd\\x0c\\xd6\\x1fiZt\\xcc\\xf7;\\xb1\\xbd\\x11\\xfad\\x85\\x89\\x83\\xa7yF\\x1a\\x00\\xf9Ho\\x98\\x1d\\xa6 [.\\xec\\x00e8B@\\x169\\\"\\xf1n\\x00S\\xb6\\x8b\\xa1\\xbc\\x89b\\x07\\xe3\\xf2\\x89\\x1d\\x8f\\xfb*S0}#;q\\xc3\\xab\\\\\\x17_\\x92o \\xc8HtWW\\x13\\xf2U\\xfcj\\xdb\\xae?)YZi\\xbf\\xdcV\\xfdm\\xca\t'\\x17d\\x1c\\x95p3}\\xbb\\x1a\\xfbl\\xc3\\xfa}\\x15\\xe5\\xa8Ru\\xe2\\xeb\\x87x}\\xcc7\\x7f\\xd9n\\x98!\\xcb\\x16CI\\x1bs\\xed\\x83<\\xd7\\xe5\\xf2t=\t\\xa7\\xef\\x98\\x91\\x11C{\\xa6w\\x18\\xea\\xd5\\xae\\xfa|\\x99xH<\\x9b;\\xbc?\\xdb\\xc3\\xb0?\\x8c\\xa7\\x03\\xc6I\\xda\\xe3\\x1e\\xb6\\xed\\xcd\\x0d\\xeb\\xe0\t\\xd7-)\\xf4\\xe9\\n~\\x12\\xc7S\\x86\\x94\\xa6m\\xbe\\xda\\xb0\\x81u\\xbb\\xba\\xa9\\xfb\\xa1^\\x1b\\xe7\\xd7G67H\\x92\\x9f)\\xc7\\x1e3\\xf9\\xf8\\xe9*g}i\\nB\\xac\\x97}Fn\\xbe\\xfe0\\xc7\\xd1\\x03r\\x82n\\xfc\\xe2?4\\xf6\\x9f\\xa6\\x9b\\x9fc\\x8d\\x90\\x8f\\xa7)\\xf2\t6H>\\xe1f\\xc9\\xc7{\\xd6.\\x9fH\\x0b\\xe5\\x138V\\x97\\x0fAJ,\\x10\\xa9\\x9f\\xa5\\x8bP\\xb8\\xf2\\xbetC\\xf9\\xc4V\\x81\\xf9\\x13o\\xc9\\xe2\\x15,\\xa8cX\\xfd\\xb3\\x178\\xf3\\x895l\\xf9Q\\xb8\\xdb\\x87F\\xd6\\xa2\\xf3\\xa3s\\x10\\x0e\\x91\\xca\\xe5&2\\xce\\x84i\\x17_\\xa53\\xc6J\\xa7\\x9a~>E6IV\\xbf\\x1eS\\x04\\x81\\xb4\\\"\\xbd@s3t\\x89\\xfer\\x92\\xb3\\x0b\\x03+\\xf5\\x8bY\\xe2^'\\xafh\\xd6G:\\x93\\xc3\\xb10\\x83\\x90\\\\\\xb0N\\x14\\x149\\xf9n\\xb1\\x83\\x93\\xcbNB\\xa5\\x0d'\\x96\\xc6\\xfc\\xc4\\x88\\x13KcF2\\xc4\\x89\\xa51-\\x01\\\"3\\xfd\\xa1p\\xf2CF\\xeaC\\xe9\\xc4\\x87bi\\x0fe\\x93\\x1e\\x8a\\xa5<\\xc4\\x13\\x1e\\x8a\\xa5;\\x9cX\\x1aO,\\x8d9I\\x0b'\\x96\\xc6\\xbc\\xe4\\x04\\nq\\xe1\\x89\\xa5\\xd1xN,\\x8dpbiL!D\\x8c\\xbf\\x13K0\\xc8K/8\\xb14\\xaa\\xa7dJ\\xc1\\x89\\xa5\\xf1\\xc4\\xd28\\x97BK\\x1b $\\x0d\\x9cX\\x1a\\x97\\xa7\\n,\\x1f\\xddh\\x9a@,I@[\\xed\\xa1\\xde\\xb1~\\xa8v\\xfb\\x94\\xe0\\xe3<&ZOa\\x9b}\\xc7\\xee\\xea\\xf6\\xd0\\xcb\\x83\\xcb\\x15|\\xc7w\\x9d\\xe2\\xf4\\xb2\\x87?\\xc0\\xd7gP\\x0f\\x8fe\\xb7\\x7f\\x16\\x7f\\x15*\\xb2\\xa9g\\xc0\\xb6\\x89\\xa1\\x03T\\xa0h\\xac\\xe3\\xfc\\x0e\\x17\\xb8k\\x87\\xd1\\x83U%\\xfeX\\xf5\\xc3\\xcbv\\xb7\\xab\\x07\\xb3\\xf0\\x99\\x81\\x83\\xaf\\xcfff\\x96\\xd7\\x88{\\xb0}\\xdd\\x8b\\x92\\xf4\\xf2s\\x82s\\x9e\\xe0\\x9c\\xb1C\\x92\\x13\\x9c\\xf3\\xaf\\x01\\xce9\\x1e\\x11\\xa9\\xcc\\x11)`DnJ\\xbfq\\xcd\\xfa^.\\x1d\\xc8\\x19\\x02\\xa8\\x18\\xd2\\x99e\\x9a\\xc6\\xda@\\xdd\\xac\\xb7\\x87\\x0d\\xf7\\xf8\\xda\\x9e\\xf9D\\xab\\xf2\\xd5b\\xd1[\\x1d%>5\\x0b\\xd0R\\x04\\x02]\\x844\\x9a\\x81\t\\xea\\xa4\\x8eU=\\xfc\\xd8\\xdeX\\x89[\\xb2.gN@\\xc9\\x18y}\\x8f\\xd7\\xd9(]8\\xab\\xf3\\x8a\\x9a\\x95$\\xd0a\\xfd~\\xf5\\xf5\\xd7g\\xfc\\x7f\\xfea\\xf5\\x8f\\xe2\\xbf\\xff(\\xbe\\xc0\\xc7e\\xca\\xa5\\x89\\x1d\\xdd\\xe9\\x1b\\xc8`\\xf8\\\"\\x99\\n\\xb8\\xcb`_2x1E\\xae\\x87\\xea\\xa67\\x8eA\\xa5\\xb7\\xad\\x9du\\x81\\xea\\xef\\xe52\\xbfa\\xe2r/#\\xe5g\\xdd\\xdd\\xef\\x87v%X\\x10\\xfaz\\xba\\xd2\\xece\\xbb\\xdbW\\xeb\\xe1\\xdbzx\\xc1\\x8d\\xab4!\\x8e\\xf1t\\x0d&\\xfb2t\\xd5\\xe5U=\\xf4\\x97\\xe2jB\\xe7\\xcc\\x8b\\x92\\x17\\xc3\\xb63\\xdb\\x8d\\x1aA\\xc7\\xf0\\xe1i+V;$\\xeb\\x84\\x1d\\xe3\\x937'\\x8a\\xec\\x1e&\\xc2\\x9c\\xdc\\xb8\\\\\\xd5\\x83\\\\X\\xa6\\x0e\\xaf\\x05_\\x96\\x08\\x15\\x0e-\\xb0\\xa6?tl<\\xac\\x18oN\\x13#6T\\x9fX/N\\x03$\\xef\\x9aIt\\xa6\\xe4\\xc9\\x02\\xe5VH86R\\x82\\xc1P\\xa9KlZ^B\\xc7\\xaa\\x0d\\xf4\\xd5\\xb5\\x0e\\xb1\\xca\\xbf\\xf3\\xfe\\x14\\xecY\\x82\\xc1\\xb1mT@\\x17\\x0e2Z6\\x0e\\xf4\\xf0e\\xd5\\xd77\\x8dym\\xdd\\x87\\xfa\\xa6\\xf9iL]rz\\xd9$l\\xfe\\n>\\x9c\\x7f\\xff\\xe6\\xf2\\xa7\\xb7\\xaf^#\\xfc\\xc8\\xe6\\xaf\\xaf\\xce\\xdf\\xbf~y\\x81\\xfcp\\xf1\\xfa\\x7f_\\xfc\\xfc\\xe2G\\xef'\\x97/~\\xfe\\xdf\\xc8\\x8f?\\xbe\\xfe\\xfe\\xc5\\xcb\\x7f\\xb9|\\xf1\\xd3\\xf9\\x9b\\xb7\\x97\\xc2Sv\\xdfy}\\xfe\\xee\\xf2\\xeb\\xff\\xf7k\\xa5\\x06\\x8a\\xd2\\xd9_aO>\\x9e\\xea\\x8d\\xc9\\xd3\\x96+\\x9a\\xe83\\xd8\\xf1_d|x\\xe8\\x81\\xbb\\xf1#\\xbd\\xec\\xcd\\xa1\\xea\\xb8}bSV\\xa8\\x188\\xde\\x7f\\xc6A\\xdc\\xbam\\xfaZ\\xde\\xa8Y\\xf1\\xadb\\xdd\\x0f\\xdd\\xbdP\\xbd\\xed\\x16\\xe4\\xce\\x80\\x17&J\\x9aX\\xeb\\x84f\\xbd\\x14C\\x08l\\xdd\\xf6\\xf7\\xfd\\xc0v+x\\xb1\\xdf\\xcb\\x19\\xcfU@\\x9e\\x8aI\\xa5\\xd4q\\xcfQ\\xa8V\\xb6Q\\xb4\\xfaX&/\\x88\\xcam\\xebO\\xcc\\xfcVm\\x0c\\x8co\\x8c\\xa4G\\xae\\xa3\\x87\\xaeR\\x0c\\x9b\\xed\\x9e5\\xbc\\x97v\\xbc\\xbcw\\xef\\xa1\\xba\\xe1&yP\\x07\\x0e\\xf5V\\xc8\\xad6\\xbc\\xc9\\x0d\\xfb\\x0c\\xebj$?\\x11\\xbb\\x8c\\xba\\x9f\\xba]t\\x97\\n\\x05+S\\\\wS\\x1d\\xa0oU\\xb4\\xb8\\xbe\\xbef\\x82tN\\n\\xaaxk\\xc4\\x01O%\\xfb\\xb8\\x1f\\xb8\\xfe\\xab\\x93\\x14\\xe97\\xab\\xd1\\x98V_\\x8f>{\\xb4f\\x8c\\xa5\\xab[#\\xa7\\xd1\\x1aU\\x83\\xcfH\\xb5'Set\\xec\\xdf\\xc4\\xa8\\xac\\xb02\\xa5\\xca?w\\xfeb\\x96d\\xe9\\x9e\\xd8\\xbd\\x89X\\x03\\xef\\xb2W\\xedZY\\x01%\\xfe\\x8eu\\xd2\\xee\\xcb;,u\\xf2\\x8b\\\\Be\\n\\xb1S\\x0b5%\\x9f\\xbb\\x7f\\x92\\xee\\x9cd:\\x9c\\xd7C\\xea\\x0do\\xa9(\\xf1\\xde\\xa4\\xe4\\xb2\\x18\\xb3\\x07\\xf6e8T['\\x08\\xc2\\xb7\\x98{\\xbd\\xa1Q\\xc7h\\xf3w\\x94<Qw\\xbb\\x8b\\x04\\x03P\\xdd\\x1b'W|\\x0e(\\xdd\\x0dv7\\xb70n\\x97\\xf3\\xbfR\\xba\\xdd0\\x13\\xaf\\xda\\xf5\\xab\\xbac\\xeb\\xe1\\xc5\\xe1\\xcb\\n^\\xf4\\xd0\\xee\\xf7\\xadZ\\x15l\\xf1gR\\xfd&=\\xde\\xb4LX\\xeeQM~9\\xd4\\xaa\\x93\\xb9\\xd7\\xaaK\\x17\\xbc\\x91\\xf2xK\\xfd\\xf4\\x18>\\xca\\xff\\xbb\\xe4N\\xecG\\xd1\\x0f\\x82 H\\xba\\xc1\\xba\\xcf\\xd4\tEs\\x03\\x17\\xf5^n\\x12\\x0d\\xf7r\\x9c\\x02\\x81\\xa4\\xf5\\x98\\x05~\\x1e\\xfaQj\\xceU\\xb5\\xfe\\xf4\\xb9\\xea6\\xbdu>\\x8a\\xf7\\xe9\\x8b]\\xdd\\xb4\\xd2C1\\xe6\\x11tl\\xd7\\xde\\xc9\\x9c{\\x19N\\xe4\\xda\\x88\\x8e\\xafZ\\x00\\x9e\\xbb\\x7f2FV\\x1c(\\x8d\\xc3\\xc0\\xfb\\xe9\\xf5\\xf9;\\x10\\xef\\xe8>7\\xcd\\xad\\xee\\xa7W\\xff\\xbc\\x82\\xf7\\xec\\xfa9\\x88s\\xc5\\xe7\\xcf\\x9e\\xb1z\\xdf\\xaf\\x04\\x95);\\xecVmw\\xf3\\xec\\xf5\\xf9\\xbb\\x0f\\xfc\\xcf_\\xf1EH}\\xf7R\\xab\\xe7\\x19R\\xa9\\xbaW+\\x80\\\\\\x0ex\\x8f\\xcd\\xed\\xe0]\\xd5\\xd5U3\\xe8\\xe8\\xc6\\xd5a<O\\x1d]\\x97\\x89\\xb3\\xf3\\xc3\\xab\\x7f6\\\"\\xbd+\\xb8\\xe0\\x9e\\x84\\x98\\x81\\xaf\\xcf\\xdf\\xf1:\\x9d\\xc1}{\\x10g\\xd3\\x93\\xf1\\xddW\\xbd\\x11\\x82\\xfax\\xf1\\xe5e\\xdb\\\\\\xd77\\x1f\\xe5\\x04\\x17\\xf1)\\xc4OR\\xdf\\x7f\\xd4\\xb5\\xfdA\\x82%>\\xea\\xee\\xe4\\xa5\\xc94\\x14^)\\xbe\\x95\\xd9\\xb0u\\xbd\\x11\\xcb\\x80\\x0c\\x07\\xab\\x89\\xaa\\x04\\xa9O\\xec!\\x0e\\xe9\\xe8?\\xae~?\\xf3jF\\xde\\xbd\\xc3p\\x9bD7gL\\xa6\\xd4`\\xc7\\xff\\xddq\\x85x\\xfc\\x7f=324\\x9e\\xb9U\\xfa J\\xe0\\x95z<~\\xec\\xdf\\xb3\\x99\\xf5\\x991'\\x9b\\x06i\\xba)A\\x19\\x8e\\x8d6\\x0f\\xa2\\xdb\\x0dq\\x8a\\xfc\\xd5\\xf8\\x0b\\x9f[\\x92\\n\\xad\\xbd\\x16>\\xb6\\xf0qD\\x92\\xc7\\xae\\x1a\\xd4\\xa5\\xd8\\xb6X\\xbd\\x80|\\xdbn\\xee\\x1f\\xf7\\xf3\\x98\\xbf\\xda'\\x89\\xf1\\x16aU-Uc\\\\\\xf6]\\xbd\\x13\\xe7\\xc5B\\xd6\\xb8%i\\x1b\\xe6$\\xe4\\xec\\xab\\xfb\\xde\\x0e\\x7f]\\xb3q\\xba_3#B\\xe2\\xef\\xc3\\xef\\xd8H\\xd0|\\xcd\\xe4\\xaa|S\\xf5\\xb0\\xadw\\xf50\\xf6\\x9c\\xb9\\xcd5\\xea\\xae*9c\\xc5\\xb7\\xd2\\x83b\\xed\\x11\\xad\\x18\\xab.e3\\xa6\\xa8o\\x0d9\\x13\t\\xae)}F\\xc4\\xbbn{\\x91\\xcf\\xc4\\xee\\xaa\\xedAR\t\\x8b\\xe5\\xb2\\xddH0\\xca\\xa6\\x15\\x99\\xa5\\xfa\\xfe\\x07C\\x8c\\xf4\\x04d<\\xc4\\x14\\xaf\\xcf\\xd4'u\\xe1\\xab\\xa8d\\xe5e\\xfdP\\xefD\\x80\\xe6\\xae\\xe6+\\xe0N\\xf1\\x1d\\xaf\\xacyAJ \\x94\\x1b\\x1d,+\\xc2\\x0d\\xd4\\xa1a\\xba@\\x90.\\x14\\xa2\\xdb\\xb0\\xa6\\xdda\\xc1\\xae`\\x14\\x0d\\xabm\\xf4\\xb3Xx\\xece[7\\xc6._\\\\\\xf92\\xd147\\xed\\xaen\\xa4I\\xe5CY5\\xaa\\x12\\x18\\x81\\xc7\\x9b\\xb7\\x17\\xaf%\\x92E\\xed\\x1fG\\xb6\\xc1\\xaa\\x81\\xf3F\\xdf\\xe60Zj3\\xb6\\xef\\x08\\x93\\xc7tn!\\xa3\\x1a\\xf5\\xd3\\xfc\\xbf\\xba\\x87\\x9b\\xf6\\xa6\\x15;\\xd3\\xf9\\xc1\\xa4\\x82\\xc4\\xa8\\xfa8\\\\\\x96\\x928Z\\xe5@U\\xb5Z\\xdf\\xae\\x99\\xa9\\xa37U\\x7f)&eb\\xee\\xcc\\xc1\\x05a\\xa8\\xda8\\x830\\x16\\x01\\x16\\x01\\xe8M\\xa5v?J\\xf7\\xc5~~\\xee&\\xb9J\\xa7\\x02Dv\\xd7]\\x89d0q\\x01\\xc9aL\\xcb\\x15\\xa9m\\xd0\\xae\\xd7\\x87\\xce\\xb4%\\xfb\\xea~\\xd9\\xd54N\\xd3\\xc4m\\x18=\\x1b$'\\xb8e\\xbd4p\\xb1\\xe6\\x0e\\x007y\\xfb\\xea^[\\x8fk\\xbeI\\x85\\xf3kK\\xde(j\\xa27\\xa9\\xd6k1\\x9ebu\\xd8W\\xf7\\xd3\\xe7v\\x17\\x08;\\xcf\\x9b&\\xdf\\x15\\x99J\\xc3\\x17]\\x9f'\\xd2F\\x1e\\xd4\\x16M\\xfcu\\xa3\\xb7\\x87B\\x91\\xed\\xce\\xd6\\xeb\\xf8S\\xa7\\xa4\\x9e\\x0d\\xca\\x0e\\x8e_\\x0bg\\xfao\\x9bv\\xf8[\\x95\\x02'\\xed1_\\xe4\\x84Cw=\\xea\\xb3-K\\xafn\\xc8\\x9a`\\xea\\xa9\\xd8\\xd9SG\\xcd\\xa7\\x8a\\xf5\\xf5\\xd4\\xc5|=\\x90\\xdd\\xf5\\x84\\xd5\\xe3\\xbd^\\xb31\\x9c.49xR\\xa1\\xa5\\x00\\xd1\\x05Ou\\xfa\\xb9FC\\x88\\x12D\\xbd\\xc7\\xab>\\xec\\x11k\\xc5\\x88\\xf2\\xd14\\x01\\x13\\xb3\\xda=\\x96A\\x8e\\xabj[5k\\xc6u\\xc6\\x8d\\xdaW{n\\x8d\\xbb\\xba\\x1a\\x98Q\\xa8\\xde\\xdf\\x00\\xfbR\\xf3%L6f}[q\\x8b\\xd8\\xba\\xf8\\x0ec\\xf76I\\xe9\\xd5\\xb6Il\\x05\\xae\\xabz\\xab>\\x1a\\xea=\\xc5\\x0d\\xb8\\xa8\\xf7z\\xd6\\x8f7\\xf3\\x0c\\xf5\\xdeHF4#\\xee\\xa2#\\x84\\xa5\\xaa\\xb9A\\x16\\x9b.C\\x98\\xb0\\xd7s\\xd3<\\xa7}\\xado\\x9a\\x96[\\xcc\\xfa\\xdalj\\xbdi\\x1e\\x0f\\xda\\x11\\x1f\\xea}\\x7f\\x06\\xf5\\x8a\\xad\\xf4\\x0f\\xd5f\\x1e\\x01\\x9f\\xf9\\x19\\x1f/\\xea\\xfd+\\xb6n\\xbbjh\\xbb\\x8f\\xbcZ\\xf5\\xd0\\xc3\\xbe\\xed\\x07\\x85N&\\xc4\\xa6\\xc7\\xbd\\xdci\\xe9\\x9e=\\xa7\\xa5\\xdb\\xbft\\x0bKX\\x9b<~C\\xbd\\xdf\\xa7\\xda?\\xf9\\xcd(}\\xb3\\xe9X?\\x1e`\\xeb\\x85E\\xadJ\\xa3\\xfdU\\xa5\\xe2\\xb1Y\\xbd&X\\xa9\\xa2\\xda\\xc5WvS\\xee\\x8fFL\\x98\\x8e\\xd3\\x8b=\\xbfN\\xca\\xb7\\xec\\xbc\\xbbg\\xfb\\xb6k\\xab\\xcd\\xba\\xea\\x07rd\\xfc\\xdb\\xf7o_\\xbcz\\xf9\\xe2\\xc3\\x85?<n\\xbd\\xf2\\xed\\x8fo_\\xfe\\xb3\\xef\\xc7\\x0f\\xff\\xf2\\xe6\\xa5\\xef\\xb7\\x17\\xe3\\x8f\\xd3\\xcd\\x85\\xe1\\xd2qm\\x9f5\\xd2\\n\\x91\\\\\\xe9\\xdf\\xa68\t\\xff\\xf3\\xc5\\x97\\x0f\\xac\\xbb\\xab\\xd7l\\xea!x\\xffN\\xd7Tj\\xa7\\x19_\\xf5\\xd7\\xeb9\\xfc;\\xebZu@,RHx9z\\xcd\\xf6J\\x10\\x9d\\xe6\\xb4W\\xfc\\xd5\\x9c\\xae_\\xa6\\x06\\x18A<\\x8d\\xa2\\\\o\\xc5\\xd9\\xce\\xe7\\x8a\\xdb\\xd3\\xeb\\xf1F%\\xa1\\x81_\\x94\\xcf*\\xee\\xf2\\x11\\x07\\x84|9P\\xe9\\x15\\xdej\\xf1\\x11qj\\xc5\\xff\\x98]\\xa9\\n\\xf4\\xb1\\xf2D\\xf1>R\\x7f\\xb7\\xcd\\xf6\\xde_\\xa9\\x17h\\xad^,\\xaa\\x96\\xe4f\\x1fO$v\\\"me`\\xb2\\xf8\\xc0\\xfc\\xb9\\xf8\\xf2^:&\\xe4\\x80\\xcc\\xf0\\xe5R\\xc4\\xacSO\\xfe\\xc0\\xd6s-H\\x9b\\xa0\\xae\\xfa\\x8c9x;\\x04\\xb6o\\x95\\x85\\\\Z\\x1a\\x9b\\xed\\xe8k\\xe6\\x8cG_0f=\\xfa\\xfb\\x8b\\xd9\\x0b\\xd4\\xd9\\x0f\\xc1\\xf5\\xae\\x8c\\x150\\x04\\xbe\\x7f\\xf7\\xd2\\xb1\\x04hk\\x92\\xad\\x01*\\xe5\\x98\\x16\\x01\\x92\\xac\\x02Z\\xbd\\xe3Y\\x06H\\xb2\\x0eh\\xe5\\x8eg!\\xc0\\xb5\\x12\\xbee\\xdd\\xb5\\x15\\xe3\\x8cU\\xff\\xe4\\x93rT>G\\xf5\\xc6\\xcf\\x94<S\\xff\\xa2\\xb6)\\x91\\xd6d\\xf82\\x92\\x06\\xd96\\x83\\xe4Y\\xdb\\xb4(@\twx\\xa3\\x1d\\x1e\\x8a\\x14\\xf1\\x86E\\x93\\x02\\xe48C\\x88.\\x05p\\xca\\x94\\xa0p\\nu\\n8\\xf4)\\x93H\\x8c\\x8e\\xc3\\xdf3\\xb3\\xa6\\xa0T*\\xe2\\xad\\x19\\x9d\\n\\x90\\xfb&D\\xab\\x02\\x18\\xb5\\n]\\xf4\\x7f\\xd8{\\x10*\\xd6>L\\xb3\\x02!\\xd0=8t+\\xf0@;=/\\x05\\x0b\\x04\\xc7]>\\xfe\\xd1\\x07\\x9c\\x8e\\x05b[H\\x9c\\x96\\x05\\x02\\x9d!\\x9f\\x00\\xa7I\\xa0c\\xe4\\x13\\xe73\\x11\\\"<\\xbfE\\x1a$\\x9f\\x18e\\x0bD\\x1b(\\x9f u\\x0bP\\x1a+\\x9fx\\x93\\xe5\\x13\\xa1q\\x01Z\\xeb\\xe5\\x13\\xa5s\\x01\\xba\\xb4X\\xd0\\xc0|\\x96P\\xbb\\x04\\x05\\xce\\xb9\\xc7\\x82\\xaf\\xca\\x86\\xd0xP\\xe4CkYI\\xaa\\x17\\x88\\xd2\\xbd\\xc0r\\xca\\x17\\x8f4o\\x07P\\x9a_\\x90\\x10\\x86?AR\\x18\\xf0\\x11\\xc3\\x00\\xa1\\xb2E\tb\\xc0G\\x12\\x03\\xd1\\x9aP\\x17\\xb0\\xc1G\\x16\\x03\\xb1\\xb5kN\\x1a\\x03\\xe4\\xb5v)y\\x0cx\\x08d\\x82%\\x13}\\x95D2\\x19@\te\\xa0xE\\\"\\xe42\\xa2\\xc0/X\\x05\\x90\\xc5\\xc0o\\xfe\\x07\\xcf\\x8d<\\x11\\xcb\\x1c\\x9b\tE\\x89g r3OI\\x02\\x1a(IB\\x03\\xe1\\xfby\\xb2\\xc8h\\xa0 !\\x0dDIi`)1\\x0d\\xe4\\x90\\xd3`=v\\xbf\\xd71f\\xfc\\xae\\x9e\\x0c\\x92\\x1aD\\xd6\\x98*\\x07\\xe8}=yd5\\x888\\x91\\xb0>\\xa0w\\xf6\\x94&\\xad\\x81|\\xe2\\x1a(O^\\x03y\\x046\\x90Gb\\x83OQ\\xb4\\x92\\xc5\\xa8m\\xa08\\xbd\\x0d\\x94\\xa4\\xb8\\x01\\x12\\xcd\\x0d\\x94\\xa4\\xba\\x81\\xe0\\xdd>y\\x947\\xd8\\x1cG\\xef\\xf7\\x91\\xa6&J\\x84\\x03\\xd9d8\\x88@\\xec\\x96\\x9f\\xc5\\x149\\xe0\\xdf\\x8a\\x05\\x97\\xf8 \\xb21\\xbe\\xfe/\\xa4\\xcd\\xc1\\xcc\\x9e\\xf7\\xce\\x9fX=\\xf2(t,a\\x82P\\x07\\xbd\\xf9\\xa7\\x08\\x95\\x0e\\x94\\xa6\\xd3\\x01\\x84R\\x07\\xf2iu,i\\x03r\\x07P\\x1e\\xd1\\x0e\\xc4\\xf8g t\\x13\\x10\\x81t\\x07|\\x17\\x89$\\x90\\xef\\xf8e8D\\nYD<\\x90\\xd0\\x191B\\x1e\\x88\\xb6;J\\xcc\\x03i\\xe4<\\x80\\xdeJ\\x91I\\xd2\\x031\\xa2\\x1e\\x88\\xdc\\x13\\x14\\xbb)(\\xd0KT\\xe2\\x1e \\x90\\xf7\\x00zcP\\x16\\x89\\x0f\\xd0\\x88| \\x89\\xcc\\x07(\\x84>\\xe0\\xed5\\xec\\xf6 \\xef\\xbb1\\x82\\x1f\\xc8&\\xf9\\x81PE\\xad\\xbf\\x16%\\xfc\\x81L\\xd2\\x1fK\\x14v\\xb3Pa\\x1a (L\\x05\\x04\\xe1\\xfb\\x85\\xb0\\x1b\\x86\\xb0;\\x86JQ\\x03AIz (N\\x11\\x04d\\x9a \\xa0P\\x05\\x01\\x9d.\\x08\\x88\\x94A\\x80\\xdf9\\x84\\xdfBC'\\x98\\x89\\xdd;D\\xa6\\x10\\x02\\x1a\\x8d\\x10`\\xcd(I'\\x04\\xb9\\x94B\\x96,\\xe4>\\xa2\\x92$CP\\x94h\\x08\\xb2\\xf5!J8\\x04\\x04\\xd2!\\xb0\\x16\\\"\\x84|\\x08\\xc8Al7\\xde\\x9eED\\xe4\\xd8\\xf0M]5\\x16\\x19\\x11@.!\\x91%LV\\xc9%%\\x82\\x101\\x11x\\x0el\\x87\\x078\\xb7\\x1e<G\\xb2\\xc1=l\\xf8\\x18\\xd6Wm\\xf9\\x1c\\xf7\\x849x\\xd0\\x1al\\x93~\\\"\\xccC\\x10?\\x81-UL\\x80\\xe4\\x08\\xc6b|DG\\x10\\x9d]\\xfaYNx\\xe4\\x11X5.\\xe9\\x11\\x10\\xaa\\xb3\\x94\\xfc\\xc8\\x11d\\x1c\\x819\\x04HP\\x8c\\x04\t\\xfe\\x7f\\xf6\\xde\\xb4;r\\x1bI\\x1b\\xfd\\xee_\\x81\\xeb\\x0fo\\x95gTYc\\xf7r\\xce\\xe8^\\xcfyU*\\xd9\\xd6t-\\xbaZ\\xec\\x993\\xa7O\\x8a\\xca\\x84R\\x9c\\xca$\\xb3\\xb9\\xa8\\x94=\\xb7\\xff\\xfb=@\\x00$\\x08\\x04\\x16\\x92P\\xb5\\xdd/\\xf0\\xc5\\xae\\x14\\x19X\\x88%\\\"\\x9e'\\x02\\x01\\x89\\x90\\xc8\\xfcdH\\xc4;rQ\\x93\\\"\\x11,1\\x12!\\x11\\x92#i\\xf2@\\xff.Mm>Z\\x92$\\x125Q\\x12\\x19\\x99,\\x89\\xb8#yf%MR\\x04u\\xe9\\x93\\xd4\\xc4I\\xacLI\\x9e\\x14Dh\\x14\\xcd\\xee\\x18\\x8d\\xe2\\xdf\\x8dBi\\x14\\xaf!\\xc4F'\\x8f\\xf1\\x07\\x1a\\xce[\\xd4cd\\xb0Cgn2?4z\\xc7\\xba\\xbb\\xe3Q;\\x96\\xc7]L\\xb9\\xc9\\x91:\\xaa\\x909A:2(G\\x95\\x17\\x1e\\x8f33\\x8c\\x16\t\\xa1E\\xc7\\xd0\\x12:\\x8b\\xc5*F\\n\\x99\\xc5\\xc3eCCe\\xb50Y\\xb4O\\xf6\\xfdbvh,\\x8f\\xd4T\\x97\\xc2\\x84\\xb0\\xd8&bH,\\x1e\\x0e;+\\x14V\\x06\\xbf*\\xf2\\x1ca\\xb0F\\x08,\\xfaE\\xb0\\xe9\\x145\\xecuz\\xc8\\xeb\\xe4pW5\\xc0U\\x1d\\xabI\\xa1\\xae#\\xc2\\\\\\xf1\\xd9\\xcdS[\\x80:\\x81o\\x152\\x82\\x95wT\\x1e`b\\x05\\x7f\\xd5o\\x1abK\\xe1K\\xf8\\xee`|u\\xbe\\x15r[\\x97p7\\x1a\\xdf\\x07\\xe9\\xfd=]5y\\x07\\x8f}\\xbd\\xc9\\xea}\\x95\\xaf\\xe8\\xd7\\x9d\\xfa\\x03\\xdbd7\\xdf\\xe1\\n\\x8arG\\xc9.\\xdf\\xe5E\\xbb\\x13\\xd5J\\xaaFO\\xb7\\xd8\\xd1\\xdd\\xbe,\\xb7\\xf8I\\xf7#m\\xb8\\x96\\xf9K\\xde<\\\\?\\xd5\\x13X\\xfb\\xcf\\x94\\xda\\xe5\\xfa\\xc9\\x92\\xd2\\xa5y\\x02mB\\x1bW\\xcd8\\x16\\xef\\xf2\\x7f,s#IbXDA8\\xcd\\xdfbD\\xed\\xb3\\xaaY\\xd6\\xb4Y>\\xd0l\\x8dGy\\x8e#s\\x95Mfer\\xd9X\\xdd.N\\xb7\\xd9E\\xe2\\xb3\\x1b\\xad\\xf6\\xa2\\xd8\\xa1.\\xb2\\xaa\\xa9i\\xf3\\x13\\xef\\xf1W\\xda\\x1f\\xf9\\\\;\\x7f\\xab~\\x9di\\x9f&\\xcex\\n\\xaa\\x042\\x02\\xd0\\xdc\\xbb\\xac\\xceW\\\"\\x0e\\x84\\xd9r\\x96\\x91\\x9a\\x94\\xedX\\xeb\\xbcZ\\xbcv\\xbb#[\\x07\\x94l\\xbf\\x7f\\x1e\\xd1>\\xd3\\x99)\\x8dEM\\x8b\\xba\\xad\\xc9*\\xdb\\x83\\x9e\\xd6\\x009K\\xfc\\\\\\xb5[\\x91ei`\\x06\\xf2\\xf1@\\xe4\\xa9\\xcb\\x9a\\xef\\xfc\\x86A\\x08O\\xb1\\x8d[Z{\\xfd\\xc3`\\xa9t\\xf6L\\xbfoC+\\xact\\xc4\\x01\\x9f\\x16\\xab\\xb0n\\xb2Fl@\\xe0p\\xdde\\xab\\x87\\xbc\\xa0\\xba\t\\xcb[1\\xd8\\x81dq|\\n,\\x96\\xc9\\xf3\\x8a{\\x9d7\\xf9n*=d\\x9d5\\xf4\\x15{_{\\x82C\\x07\\xe6\\xfe*\\xcb\\x8c\\x95\\x81oJ\\xc4\\xd7`\\xe2wf9\\xf7cY\\\"8\\xff,\\xfbt\\xf7g\\xe7~-\\x8b;\\x16\\x07\\x8a}\\xa8H\\xc8p\\x11\\xff\\x90y\\xf6u\\xed\\xa1\\xe1\\xfe.\\x0b\\x9f*\\x10\\xdf\\xb9\\x8cy\\xe2\\x90\\xbeb&\\x16\\xd63\\xec\\xd6l\\xd9k\\xcf\\xb2\\x9f\\\"W\\xcf}\\xf3YSVud\\xc1z\\xbfz\\x17\\xd4~/\\x99\\xff\\xddo\\xfb\\x8a>\\xa2\\xdbgA\\x9f\\x9a\\xe5\\xb3\\xb5\\xb1\\xdb\\xd1#\\xcb\\xcd\\xf6\\xfb\\xc8\\x12\\xf9\\xfc\\x13T\\xd0\\xc8\\xa2\\xe9c\\xbe\\xa6\\xc5\\x8aF\\x16\\xdb}\\xff\\xfe\\xd8D\\xf4\\x0f\\xb6\\x11\\x955\\xad\\x96\\\"\\x05H\\xac\\xfa\\x07\\x87<,\\xf8a\\xbe\\xc4\\xce=\\xc8\\x13{_\\xd3b\\xcd#:\\x9a.d\\x96\\xbd\\x12\\x12\\x15:J[\\x1b\\xd8\\x1a\\xdd\\x8f\\x88\\xcd!\\x8b\\x15\\xe1\\xf1l\\x8c3\\x99\\x91\\xd7O\\xb5\\x92\\xc5\\xf7N\\x04\\xe7\\x805\\x08j\\xc3\\xff\\x16V\\xcaO\\xfc\\x9c\\xff\\xe7oQ\\x0e\\x148\\xce8\\xfd~\\xbb\\xe5f\\x0f\\xc4}U\\x02\\x13\\\\\\x10\\xf2\\x0b}QQ\\xf2\\xdf\\xcc&\\xcc6\\x15\\xa5}\\x8eUD\\x1ed\\xa6\\xe4\\x1e\\x01\\xb4>\\x1eJ\\xb1\\xa3Y!Z\\x0fM<\\xd9\\xef\\x7f\\xca\\xea\\x87\\xde\\x14\\xef=\\xee\\xb4\\xa6\\xacYC\\x8dG\\xcc\\xdb\\xb7L\\xed\\x1a8\\xc7k\\nA\\x15C\\x93\\x8d\\xcbZ\\x0f\\x94<E\\x9c\\\\]\\xb3\\xa7\\x0e.\\x88\\xcc\\x9b?V\\x15\\xc1\\xa7 \\xac[P.\\xe9\\xf2\\xb1l\\xe8\\xd2\\xde8(^\\x85\\xc4_#+\\xbc\\xae\\xcc\\xfe\\xf7\\xa0\\x8aH`eD\\x8as>\\xe1]\\x89j\\xd1S\\x85\\xe0\\x05\\xb2\\x16\\x9f\\xbd]\\xbe\\xbf\\xfaqy\\xfd\\x9f\\x17g\\xcb\\x9b\\x0f\\x7f\\xfa\\xf0\\xf1\\x97\\x0f\\x13\\xde\\xbc\\xb8<\\xfb\\xf9\\xe3\\xf5\\xd9\\xb47O?\\xbe\\x7f\\x7f~=\\xe9\\xdd\\x8f\\x17\\x1f\\xaf\\xbaD\\xfe\\xb62\\xc8\\xc3?\\xbe\\xbf\\xfemlXx\\xaa\\xdd\\xf5\\xfbzs-\\x182\\x10\\xc6\\xc2\\x96\\xb4p\\xb0*\\xd4E{\\\\j_\\xba\\x93\\x0d\\xdd\\x8c\\xb4b\\xfd6\\xc7\\xe4\\xe7\\xb21 \\xbd@\t0\\xce\\xc7\\xe4\\x82\\x9f\\xa3\\xd9\\xd6-\\xc6f\\x94\\x0d\\xcb\\x88\t\\x1d\\xa2\\xe0C\\xa9\\xca\\xb6@l\\xaca\t\\xb3*\\xa0(U\\xff\\xee;\\xe7\\xb3v\\x0boX\\x02\\xf7\\x0e2b\\xff ^\\x03\\xa7/#\\x86\\x9d\\xf8Nx\\xbd\\x04Y\\x8d\\xc32b4\\xc8\\xc8\\x11a\\xc5c_\\x0e\\xcb\\x98y!K\\xf8\\xd4\\x94%\\xf4C\\x91\\xf1\\x1f\\x8b\\x8c\\xfd`\\x816+\\xfa\\nn\\xc1\\xea\\x8f\\xa2\\xe42\\xe4\\xc1\\xf0\\x8e\\xfa\\xdc-\\xc3\\xd2\\x19uv\\xd5\\x7fX&\\xb4\\xc4;\\xd4}#<\\x04!(c\\xe6a\\xf8\\xfe\\xd4\\xc1\\xc1a\\xd5\\xc7\\x1c\\x811G(;\\xa5\\x86\\x17\\xdf0\\xab\\xbdl\\xe8\\x91\\x08+\\xdc\\xe5\\x10\\x00\t\\xff\\xcb\\x955\\xa7@n\\xfd\\xf7\\xb6=k\\xb3\\xfb\\x1cU\\xce[\\xdb#\\\\C\\xbcK\\x1ab\\xf8\\x9bIC\\xecK\\xd2\\x10\\x93\\x86\\xe8*\\x81{\\x07\\x19\\xb1\\x7f\\x90\\x11\\x8a\\xc7\\x88a'\\xe1g\\x00\\x94\\xa4!\\x06\\x94\\xd0\\x0fE\\xc6\\x7f,2\\xf6\\x83%\\x0d\\xd1(\\x13Z\\xe2\\x1d\\xea\\xa4!\\x86\\x1f\\xa1\\xbf\t\\x0d\\x91o+\\xcb\\xc7\\xb2\\xc9\\x8b\\xcdr_~v\\xefu\\x81\\x03\\x1a\\xb6\\x95\\xf4s\\xe9\\xcb\\xd6\\x1b\\xb4\\x94G\\xd6\\xe8[\\xc2\\xa1\\xf3\\xe6\\xadt$\\xb3\\xc9s&\\xdc\\xc8\\xbd\\xdb]:\\x96\\x01\\xa6\\xe9\\x06\\xd0*N2%?\\x97L\\xc6\\xfd6_q\\x0e$\\x8f=\\xc2\\xe7\\xc4\\x96)<KHS\\xbb\\xe4\\xf1\\x10\\x9f\\xbe\\x94;[i\\xe1\\xd2\\xc1\\xa5\\x81\\x12P'\t\\xac\\x97t\\x03\\x15x\\xda\\x07\\xd6MF\\xd4O,\\x14(\\xbc\\x8ch\\x00\\x19\\xd9\\x08\\xe2\\\"Q\\xe1%\\x94Z\\x85\\x97\\x91}!\\x13\\xfaC\\xdc\\xe4,\\xbc\\x04n\\x00z\\x91\\x1b\\x82\\x95\\xc8\\x85\\x17+\\xbd\\x0b/_\\xb2q\\xa1[\\x97^\\xc2hc\\xc1\\xe2pzY\\xa8\\xe5)\\x8b\\x87t\\x86\\x97P*Z\\xb0@\\x8c\\xb2\\xe6'\\xa8\\xe1%\\x94\\xb6\\x86\\x17;\\x99\\x0d/\\xa3'^\\x98\\x05-\\xcbh\\xf1\\xa1g\\xbeZp\\xea\\x1c^f4\\xc8\\xa7\\x12\\x0c\\x8b\\x87|\\x87\\x97/\\xb4w\\x8e\\xb1\\xf3\\xc8\\xb4A#\\xe1*\\xf8\\xb0L0\\xd4e\\x990zd\\xe2\\x08\\x92\\xb1\\x06\\xbc,c\\x0c(\\xbd\\x8c_\\x19\\xb2\\x8c\\xfd\\xe0d\\xfaG'S?\\xfc$\\x83_\\x96\\x11\\x86\\xbf,~\\xca#^&\\x8c\\xcb\\x84\\xf1\\x08'M\\xe2\\xc5A\\xa5\\xc4\\xcb\\x97\\xe8\\x96\\x97\\xe8\\x88\\x97/\\xd14<|\\xcb]B\\x99\\x9f\\xc1\\x02m\\x04{\\xb3\\x84\\xf1F\\xf1\\xf2%\\x86\\xd3\\xc7<\\xc5\\xcb\\x97h\\x99\\x9d\\xbb\\x8a\\x97/\\xd1\\xa6\\x00\\xf6+^\\xbeD\\xe3<\\xfcY\\xbc|\\x89\\x86\\x851p\\xf1\\xe2\\xe7\\xe5\\xe2\\xe5\\xf9\\xfb5\\xc5:\\x1bC\\x00\\x0e\\x12h#\t\\xe3\\x05\\x0e\\xd1\\x90!\\x1c\\xa9\\xa1\\x8d\\xd5\\xcc~\\x85\\xb6I\\x10\\xea'\\xcb\\x14\\xe50\\xdc\\xcb.K2JF,G(\\xc9(\\xb1\\x96\\xf1KB\\x96\\xb1\\x1f\\x9cL\\xff\\xe8d\\xea\\x87\\xff\\xd2FI\\x9f:#td`D\\xdcW\\x18\\x0d\\x8b\\xf7B\\xa3a\\x994\\x81\\xa7M_\\xb93-\\xef\\xb7\\x19z\\x8f\\x95\\xbdL\\x9e\\x18a\\x8c\\xa4ayE\\xf8\\x0d\\x8b\\xcb\\xf3\\xb7\\xcb\\x1f\\xde\\x9d\\xfc\\x18\\xc8\\xd6\\xd1\\x8b.\\xe5\\xe4\\xcd\\xd5\\xd9\\x07?\\xd9hXt!\\x81\\x8c\\xa5a\\xd1\\x85|8\\xf7\\x11\\x97\\x86\\xa5\\xbf\\x8bs\\xf6\\xb0\\x8c\\xb7\\xc2\\xa0\\xc0\\\"[\\xff\\xb0\\xcd6$/\\xd6\\x1cr\\xabEF\\x867\\xdbU\\xf9\\xe9\\xfc\\xed(\\xbf2\\x94n9\\x92\\\\\\xbf|\\xd2WF\\xa3\\xfb\\xc32y>O\\xde\\xe6\\x020T\\xb3\\xccn\\xe68\\xa7*\\x94`\\xba\\xc0\\xb0\\xccn\\xeb\\xa8!\\x9d\\xa2\\xc7C\\x81\\x8c\\x91W\\xf9\\x06\\x18zL\\xf7\\x90\\x90\\x02g \\xc8\\x90\\xac\\x11\\\"\\xf9}\\xad\\\"\\x13e\\xc0kS\\xda\\x0e\\xd2\\xf5lk\\x02\\xdd\\x169j\\xc2\\xfd\\x1b\\x9f\\xf9\\xedK\\xbb>Y\\\\&\\xa3\\xd3z\\xa7\\x87\\xbb'\\xfd\\xfa\\xab\\xa9\\xd7$\\x18q\\xc6\\x8d9\\xd9\\xfa\\xb6\\xfa\\x9f\\x1d{\\x92\\x8f8\\xc5G\\xf4\\x0e\\xca\\x98>B\\x19\\xbd\\xc7MZ\\x8c\\x13\\x16\\xe2\\xbe\\xbd[\\x06\\xdc\\xa8\\xd8\\x97\\xd1\\x83E&\\x0d\\x18+t\\xfd\\xdd\\x1f\\xfe\\xf0\\xed\\xbf\\x8eye\\xe2\\xc0\\x91i\\x83Gx\\x9a\\xad\\xd5\\xfe\\xbb?\\xfc\\xf1\\xd3\\xb7\\xbf\\xe6fN\\xd1\\x1a.\\xda\\xbbm\\xbe\\xfa\\x13=\\x0c\\xfc&\\x9f\\xe8\\xa1V.\\xc7\\x19w\\xe6\\xb75\\x85\\xe4{J\\xbc\\xf5\\xcf\\xdd\\x1e\\x10((\\x94\\xba5,\\x93\\xc6{\\x8a\\xed\\xd6y\\xce\\xf6U^Vy3zi=k\\x1be\\xebB\\x1a5r\\xa5\\x8f]\\xe3#\\xb7\\xc4\t\\x833z\\xa9\\x8c\\xdc\\x0cG\\x0e\\x10\\x990Hd\\xda68a\\xb0\\xc8\\x94\\x01#S7\\xc0/\\xd7\\xc0\\xf1[_\\xf4\\x8d/\\xc2\\xb67e\\xd3\\x9b0\\xc6\\xe36\\x132g\\xbb{\\xf6\\xd6\\x8d#\\xfavo\\x8dkVX\\x93\\x98\\xa6^\\x16K\\xbf\\xfb=\\xb0\\xf6\\xb0Z\\xef\\x0e\\x7f\\xcd\\x8a&/\\xe82L\\xcf\\x0e\\xd3\\xaf\\x03\\xf4\\xea\\xe0}1|7\\x0c>,\\x02G\\x10\\xca\\x88\\xed$\\xf8h\\x08\\xee<\\x195\\x00d\\xecA0j \\xc8\\xb8\\xc1 \\xe3\\xb7\\xfd\\xe7m\\xce\\x98M>t{\\xe7\\xb7#\\xf9\\x84\\x91\\xe9\\x1b\\xfb\\xb8\\x9di\\xd4\\xf8\\x85\\xed\\x0fP&l\\xe0\\xcf\\xd0\\x96q\\x9bu`\\x03\\x02\\xab\\x0e\\xf1\\xec\\x8d\\xac\\xd1\\xe7\\xb5\\x0bu \\xbdc\\x07\\xc6)\\x8fM8\\xe1\\xa1\t\\xbe\\x08\tp\\x02Y\\xe5)\\xb14Y\\xd3\\xd0\\xdd\\x1e2D\\x97d\\x97\\xd7[\\x9a\\xadI\\x06\\xf1\\x10\\x04\\xe2!T\\x0f\\x92B\\x07\\x1b\\x0e\\x94u\\xc3\\xb3on\\xd1\\x93CZPd\\x90\\x17\\x90U\\xd6@\\x86SVH\\xb4\\xa4\\xac\\x90\\x83\\xe2B#]\\xda\\xd4se\\xe5\\n\\xc2\\x07\\x03\\x06\\xcf\\x8d\\xf9\\x8dE\\xf7F\\xe2x#\\x11\\xbbpln\\x12\\n7\\xf8\\xfe^\\xf8,\\x0c\\x10\\x0b\\x86\\xbe\\x02>U\\xc0,\\xf7\\x1co#*q\\x1fk^\\xd8iDM\\x96\\xee\\x0c\\xce\\xcdP\\x1c\\xc8\\x8e\\xee\\xb8\\x8f\\xe1`\\xc4\\xc6\\x82\\xc6h\\xe2Plf\\x9fm\\xc4\\x0d$\\xfd\\xa0\\x0dZ\\xd5?\\xa0\\\\c\\xa2\\xfc(oe\\x90w\\xc7(w\\x87`{\t\\xbe\\x83p\\xb6\\xaca\\xddX?\\x97\\xf5#\\xb9nb\\xe9k\\x917\\x87\\xb0\\xff\\x95w\\x97\\xd45\\\\}\\x7f\\x91m\\xe8%\\xdc\\xdc\\xb0\\x80\\xbfkB\\xfe\\xd2\\xd2\\nn$`\\xe2\\xd8HP\\xb2+\\xeb\\x86P~\\x1b;\\xbf\\xbc}A\\xce\\x1b\\xe5\\xaa\\xc2}s \\xb9\\xae\\x135]&\\xca\\xa2$\\xbb\\xb2\\xa2\\xf2\\xa2}u\\x86 \\xc7\\x9dwP\\x90P3\\x9bu\\xc2\\xc5\\xf3\\xd1\\xe0\\xffS\\xb4\\xbb;\\xb8j\\\\\\xde\\xf9\\xaf\\\\B\\xaf\\xb7_\\x1d(~\\xdf\\xc8\\x92\\x0b\\xd1\\xc3\\xa8\\xd8\\xcc\\xe4\\x17l\\xe4M-\\xae\\xcd\\xc8k\\xd2\\x160\\x97\\xd6p\\x1f\\xfc\\xe7\\\\X:\\xf8z\\xb0\\\\\\xb00\\xe6\\xd6\\\"MDws\\x91l.z\\x19\\xd4\\x1f\\x16\\xdf\\xd9.|\\xe8\\xefN\\x82\\xafc\\xccus\\x9e7J\\xec\\xfe\\xfc\\x0b\\x1cd\\xe7\\xe5\\xadc\\xc8\\xa5(\\xcd\\xd3\\xb2\\x1a4\\x12m(\\xdeXbQ\\x92\\xbd\\xb3\\xcf:\\xf9\\xaeenR!W\\x9d\\xe5O\\xa6\\xb6e\\xadh0\\x0e\\xd7\\xc3\\x0b,\\xb8\\xd6\\xa6\\xae\\x9fU\\xb9\\xa6\\xf5>\\xc3\\xb3\\x9f\\\"\\xc2E[?d;x\\xad\\xdb\\xddN\\xcb5\\xd5\\xe4b\\\"1\\xcd\\xd3>2\\x83\\xaet\\xb3\\x9a\\xc9\\x0e\\xc9\\xfb\\xeb\\x1b\\x9bK\\xbe\\x86\\xf9\\x1eY\\x1f\\xc9\\x8b\\xb9\\x95\\xc7\\xab\\xec\\xf3r[n\\xa6\\x886vV\\xf6\\x1dD`\\x05\\x16[I\\xb6\\xe5fC+\\xf2\\xb2\\xca>\\x0b\\xe1\\xdf,\\xc8{~o\\x9e&\\xa9(\\x8bWk\\xdap_F^7\\xf9j`\\x02\\x96\\x9b\\x1ak\\xef\\xf3\\xde\\xaa\\xb9\\xab7\\xf6\\xdc\\x1b>\\x8b\\xc3mk\\x18\\xe3\\x0f\\xc5\\xa9\\xa7`\\x97\\x8b\\xaa\\xaf\\xfd}\\xee\\xea\\xe4\\\",\\x7f\\x0bR\\xbc\\xdc\\xd7\\x90Bqw\\x10\\x8a\\xd7=\\xec\\xed,\\x14\\x7f\\x97\\xa1\\x04\\xf8d\\x03z\\x0f\\xc5s\\x17)\\x94@i\\xa1\\x1e\\x1eV\\xfa\\x0bC;\\x15\\xaf\\xe8?\\x08\\xf9\\\\e\\xfb=\\xad\\xc8g\\xae\\xb2\\x08\\xcd\\xc9)0+\\xd6\\xe2\\xb0\\xcf*\\xe3N\\xc8a\\x81\\x8e\\x0cn\\xbdb\\xbb\\x04\\xdf\\xb6p\\x02QX\\xcf\\xae\\xb8\\\\\\xb8\\x86T\\xf6\\x8a\\x16\\xe2^R\\xf8\\xfaZ\\xc7\\xc4\\x1d\\x97\\xde\\xf9i\\xeb\\x8f\\xd0\\xd3\\xd9\\xe0\\xbc\\xee/Z\\x95\\xf7\\x7fu\\x977\\xea]\\xb5H\\xb3\\x0e@H\\xf7\\xc5-\\xa2\\x9d\\xe5\\x90\\x91z\\x9b\\x83\\x8bN\\x1d\\x00\\x99c\\x9d\\xf5^\\xdc\\xa3\\x89\\x8fx\\xcb\\x1a\\xce\\xaf\\xca\\xc2;O\\x9f\\xe8\\xaam\\x90\\xdbG}\\x8d=ysz\\xfe\\x1eR\\xda\\xbd+7\\xbe\\xeb3\\xb3\\x02\\xee\\xd1e\\xfa\\xce\\x13\\x7f\\xd7\\x10(\\xf3\\xe3m\\xcb\\xcd\\x18S+\\xf4\\x00c\\x8bo=\\xe9\\xec\\xca\\x8b\\xfbr\\xcaY{\\xd2_z\\xaa\\\\\\x85+[\\xe0\\xaes\\x93\\xd5\\xcb\\xcfY\\xd1\\xd0u`\\xcd\\x81\\xba\\xcaIw\\xab\\xdb&\\xab\\xe5Ewt\\x0d\\xda\\x12~\\x15-kJ[?oCVeQ\\xb7;qe\\x1c\\xde\\x8c\\xe6\tk\\xc0(\\xdf1{e\\xd9V\\xd6;\\xc4,;\\xb3o%\\x10rBn.\\xdf\\xbd\\xaeh]\\xb6\\xd5\\x8a\\x92\\\"\\xdb\t+\\xbf-\\xf2\\xbf\\xb4t{ \\xcc\\xf4o\\xf2\\xfb\\\\@F\\x8dH\\x0d\\x89oZ5\\xad\\xf2l\\x9b\\xff\\x95\\x1a\\xf7\\xe0\\x13\\xe8_S\\xae\\xca-\\xb9k\\xef\\xefiws\\xfd\\x02\\xae0\\x80>\\xc0Myr[\\xcb\\x1a\\xb2\\xa5Y\\xdd`\\xd2\\xca\\x82\\x92\\xaf_\\x7fMV\\x0fY\\x95\\xad\\x1aZ\\xc1\\x15}\\xdb\\xacnHM7;Zt\\xeb\\xea\\xe6\\xf2\\xdd\\x8b\\x9a\\xec\\xb3\\x06.\\xe2C\\x84u\t\\xbc\\xb0\\x9a\\x98\\x88\\xfbv\\xbb=\\x90\\xbf\\xb4\\xd9\\x16.\\xbc\\xe4#%\\xc4\\xf31y\\x99\\xb1M\\x16{\\xfd\\x96Ul\\xbd8\\xff\\xf6\\x1bh7\\x17X?\\x94\\xedv\\xcd\\xd6\\x18\\xeb<\\\"k\\x95\\x15e\\x91\\xaf\\xb2-\\x9f\\xadXm/\\xe9b\\xb38b\\xc3\\xc6s\\x99|\\xbd\\xf8\\x9a\\x99m\\xfc:\\nq\\xc5\\xe07\\xe6\\xbd\\xc4\\xac\\x9c\\x17d\\xcf\\x062_\\xd1#\\xd2\\xd0lW\\x93\\xb6n3\\xd6mHd\\xb6\\xcf\\x99M.\\xaf'\\xbc\\xcb\\x8b\\xac:\\xb0\\x03\\x0c\\x1b\\xb1\\xc3\\x9e\\x8a\\x8d\\xbey\\xa0\\x07\\xac:\\xfa\\xb4g\\xc7a\\xde\\x90\\xa6\\xe4d\\x11q\\x97\\x04\\xfb\\xf4\\xf4\\x89\\x7f\\xba\\x93\\xe2\\xb0 ?\\x95\\x9f\\xe9#\\xad\\x8e\\xf8B\\xbf\\xb9|\\x87!\\x8c\\xe0\\x92dB\\x9a\\x07\\xf4\\xb4\\xa8W\\x0ftG\\xc9\\xedC\\xd3\\xeco\\x8f\\xe0\\xbf\\xf5-O\\xcbV\\x94\\xe2\\xafG|F\\xad\\xb2\\x82\\x94{\\xd8\\xfc\\xb6\\x07\\xc4\\xa3\\xc5J\\xbb\\x17IR\\xd1\\xbah\\xf5\\xc8\\xaf\\xf1\\xcc\\x1a\\xb2\\xcb\\xf65L\\x0f\\xd6r\\x8e9\\x89\\xb3B1\\xc2IV\\x93\\xfb\\x92\\xdfZ~\\x8c~\\x99\\x7f\\\"\\xe7\\xf7};\\xd9\\xe7\\xdcW\\xe5c\\xbe\\xa6\\xeb\\xae+\\xdc\\x1bX\\xf3\\x9d\\x08\\xcd\\xba\\xfaO\\xe4\\xa4 ?]__\\x90\\x1f\\xcf\\xae\\xc5]#\\xacM\\xb0\\xdc\\xf8\\x85\\x96$#\\xff\\xa5O\\xd2\\xeb\\xc3\\x9e\\xfe\\xf9\\xbf\\xfe\\x8c\\x08$\\xd2\\xb1R\\xc8\\x99\\x00\\xdb'\\x1f\\xd3}U\\xae\\xdb\\x15\\xbf\\xd3\\x96_d\\x8b\\xa9\\x14\\xffDN\\xfa\\xd3\\x0e\\xae\\x86\\xe47\\xb7\\x83Kl\\x95\\xad\\xf8-\\xd3\\xe5\\xa7v\\xdfy\\x86\\xee\\xb2\\x9a_\\xba\\x8d/Q\\xb4\\x917\\x97\\xefx\\x8b\\xf8\\x8d\\xb2\\xcd\\x03\\xdd)sY\\xdc\\xb5\\x99\\xc9\\x0e\\xb0\\xff\\x7f,\\xf353ZQa\\xd0\\x1c\\xbe\\\\+~i\\xef\\x91|\\x95I\\xcc\\x9a\\xfc.\\xdf\\xe6\\xcd\\x81\\x14\\x94\\xae\\xbb\\x1b\\x8a\\xd9\\xb6R=Z\\x94\\x9c\\xb2\\x10w\\xd2\\xf2\\xc7\\xf9\\xaaY\\x90\\x9775\\x95\\xd9\\xb9\\xd8h\\xb0\\xe9\\xc3v\\x07\\x98?Y\\x91m\\xf0\\xbe\\xdeU4\\xfb\\xc4\\xd6\\xbc\\x10\\xb9\\xf8\\x06\\xbd\\x9e\\xa6l\\xe8\\xb1\\xb8\\x1f\\xb7-V0\\xd3Y\\xab\\xc5.\\xb1j\\xab\\x8a;\\x14UG\\x9c\\xf5n\\x1a\\xee\\x7f4=pD\\xee\\xf6w\\xed=\\xbf\\x80<\\xab\\xe9\\x11\\xd7\\xd0\\xe1\\x0eeV\\x11\\xbfh\\x95\\x9f\\xde\\xdd\\xfa\\xb8\\xa3\\x9b\\xbc(p\\x1b\\x03\\xbb\\x9c\\x9d\\x88\\xadf\\x01\\xf36\\xdb\\xe7\\xf5bU\\xee\\xf0\\xfd\\xed\\x8a\\xaf\\x9e\\x1a\\xbc\\x7fly\\x16\\xfa~@^\\n\\xcf\\x0b\\xb8Oa\\xb9}Cv\\x9a\\xebH\\x96;t\\xf9\\xf3nq~Dw568\\xad\\xc5e\\xc9+R\\xd3]V4\\xf9\\xca\\xd0\\xb4-\\xa6\\x98\\xf3\\x88wb\\x07\\xfe\\xf3\\xff}w\\x0f3w\\xd3+\\x07\\xb8qZK\\x1d\\xf5\\xae|D\\x8f\\xfe\\xee.h\\xfeE\\x06O\\xb8\\xdbq{R\\x1cn\\x15\\xbb\\xa1 Yu\\x977\\x15[X\\x8e\\xf6\\x88\\x9dT\\x13\\x96m\\xcbb#.;\\xd7?\\x0f\\xdb\\xef\\xf8\\xb6\\x0c\\xed\\xb93U\\x1a\\xb5>\\xa9\\x9d\\x18\\x93\\xe9BN\\xecm~\\xc7\\x1b)v\\xe3\\xba\\xbb\\xc7\\x98\\xdf\\xac\\xbc\\xfa\\xf4\\xba-\\xd8\\x7f\\xd89\\x06\\xdf\\xb6\\xc6W\\x12v\\x94\\x97\\xf7\\xa4m`;\\x91\\xcb\\xb4f\\x1bY\\xd6\\xab\\xe6\\x1bZ\\xd0*kxS\\x9b\\x87r\\xdd\\xe5\\x18;1\\xf6/\\xf8$z\\x1dgO\\x19\\x9b\\xa2\\xe4\\xdbcr\\xc1\\xda\\xc9\\xd6\\xa7hr\\xa6&\\xfd>\\xfd\\xe7\\x7fF\\x0f\\x95\\x1f\\xca\\x92\\xdc\\x97%\\xf9\\x9e,\\x16\\x8b\\xff\\x1by\\x80u<+\\x0e\\xd8\\x9f\\xb2\\xe2\\xb0`\\x95\\xfeP\\x95\\xbb\\x97\\xf7e\\xf9\\x0d\\xf6\\xd0b\\x81\\x9d\\x1c\\xf9=y\\xc9^\\xbf\\xe1M\\xbd._\\xfe/\\xf6\\xfe7\\xe4\\x7f\\xd0]\\x11\\x97\\xf17\\xdbX|\\xe7\\x19\\x8b\\x7f\\xcf\\x1e\\xb3Y\\x83A\\xbe\\xe7z\\x0d\\x93<\\xb1\\xdfy\\xfd\\xf2\\x87\\xb2\\\\\\xac\\xb6Y][\\xbb\\x0dMa\\x8fC/\\x94W\\xb0\\x1a\\x8d\\xf1\\xe8\\x06\\xe4w\\x9e\\x01\\xb984\\x0f\\xcc\\xdeA\\x84B\\x1b~(\\xcb\\x97\\x8b\\xc5\\xe2\\x1b|\\x12\\xc0p\\xbc\\xb4\\xfc\\x95O\\x11>LcF\\x89\\xbdx\\x0e\\x83\\xf4\\xf6\\xec\\xea\\xf4\\xf2\\xfc\\xe2\\xfa\\xe3\\xe57\\xb8\\x8f\\xab\\x9fH\\xb6j\\xa0\\\"\\xdb\\xf0\\xfc\\xde3<?\\x96\\xa8\\xf7\\x82\\x0d\\xcd\\xf1\\xf7\\xe4\\x7f\\xed\\xef\\x16?\\x94\\xe5\\xff,\\x16\\x8b\\xbfa\\x8fe\\xc5\\xe1\\x88\\xa9P\\xec\\xd9\\xac8\\xec\\xef\\x16\\x1f\\xe8gkC\\xf3{\\xfe\\xec\\xff\\xf5=)\\xf2\\xade^XF\\x8d\\xa0\\xd5[\\x9e\\xd5\\x1a\\x8f\\xbe*\\xda\\x02\\xed^\\xdc\\x14\\xbb\\xac\\xaa\\x1f\\xb2\\xedu\t\\x93~NC\\xb5_\\x99\\xf1\\xc4\\xc7]\\xee\\x82R9f&\\xf9^\\xdf\\xab\\x01!=H^\\x04\\xe7;j\\x02_ *\\xc5kf\\xff-\\xf8\\x1f\\x98*\\xf6\\x82\\xe9\\xec\\xdd\\xd9\\xc1\\xce\\x15\\x91\\xecQ\\x13\\x053B\\xaf\\xa0\\xdb\\xae\\x8b\\xedAZ-\\x86\\x81\\xd9\\xa9}$\\xbbo(\\xe8%\\xdc\\xb6}\\xf1\\xfa\\x85.P\\x98N\\xb21`+Q1C\\xbf\\xbe/\\xcb\\xc5]V\\xf1n<\\xbd>,\\xfe\\xfa5\\x8c\\x02h\\xfd\\x98\\x19\\xc3\\xab\\xfd\\x9a=\\xc9\\x0e\\x0d\\xed\\x8f\\xff~\\xf5\\xf1\\x83\\xfe\\xdb\\xf7\\xdf\\x7f\\xff=\\xf6]\\xd8\\xb3\\xbdm\\x0dzP\\xc9\\x16\\xa88\\xf4\\xc1\\x86hk*Q\\xd5M\\xbb\\xcd\\x8ct\\xd7\\xa6\\x00\\xf6\\xf0\\x9a\\xf6\\x87\\xf5\\x11\\xa1\\xbb;\\xba^\\xf7\\xc7\\xf6\\x91\\xd0\\x01\\x0c\\x8b\\\\9@\\xef\\xf9\\x00\\xdc\\xfeo6\\x04\\xb7\\xc2\\x88\\x1c\\x10\\x1f\\xe4\\x80.\\xe4r?F\\x15\\xddl\\xf5\\x89\\xad\\xf6\\xdex\\xba\\xcf\\xb7\\x14\\xdbe\\xe5\\xbepA\\xab\\xba,,\\x13_\\xf8A\\xf8\\x85\\x8fK\\xfe%\\xbe'\\xdfb\\xd2\\xbaG9KQ<\\xf9]\\xd8\\xeeN\\x88\\xa5\\xf6\\xaf\\xf9h|}L\\xbe\\xc6V\\xc1\\xb0\\x8b\\x0b\\xe8\\xc7\\xd7G\\xb8$\\xde\\x83\\x0f\\xd9\\x8eI\\xfb\\x7f\\xa0\\xa9\\xfffy\\x94\\xf5@{2\\xa4\\x1b\\xe7\\xf7B]\\x1f~{\\xf8nyM>\\xd3\\xed\\xf6\\xd5\\xa7\\xa2\\xfc\\\\\\xf0\\xf5\\xf9\\x90\\xd5$#\\xab\\xb6n\\xca\\x1d:\\x8d\\x87\\x13\\xed\\x08\\x94Em\\xf6\\xf5\\x14\\x0bQ)\\x9bP\\xc5\\xc6\\xf0\\xd6\\xf0\\xc9\\xa5Wp\\xcb'\\xbc\\x9ck\\x0f\\xe5v-\\xd2\\xe5\\xf6m\\xe2\\x9e\\x1f1G\\x89\\xf0\\xb5\\x88)\\xaaK\\xe3Uts\\x93\\xbcd\\xab^\\x0e\\x81a\\xcaK\\x7f\\xd3\\x9f\\xff\\xeb\\xcf\\xdf\\xa0\\xd3x\\xde|\\x18Vb\\x9b\\x12\\xbc\\xfbL\\xd8\\xb7\\x8b\\xef\\xbe\\xfd\\xae\\xfe\\x1a\\xfd\\xc8\\xfd\\xff[h\\\\V\\x83\\xc8\\xe3o\\xcf{\\x97\\xdd\\xbe\\xa2\\x8fy\\xd9\\xd6\\xe2\\xb6T\\xf2CY\t\\x8e@M\\xfe\\x8d|{D\\xf2\\xe6\\x05|\\x9a\\xcf\\xfcW\\xc3~\\xdf\\xd1u\\x9e\\xb1\\xbdH\\x1fJ\\xbeo\\xc8vw*9XW<#\\xfb\\xe0\\xd2\\xd4\\xc5\\xbb\\xacn\\x04K\\x8b5B\\x13\\x06M\\\"\\xdf\\x7fO\\xbe52\\x19\\xf3\\x162\\x1b\\xa0\\xcek^\\xa3z\\\\b\\x80m\\xf3\\x05p\\xeb\\xc6\\x02\\xc9:mX7\\x0ckk6\\x94\\xe7E\\x98\\x9d@\\xab\\xb3O\\xb2x\\xa9\\x8a^\\x046V5\\x9e\\xab<\\xa0\\x9a\\xbb\\xb2\\xdc\\xd2\\x0c\\xf3\\xb0\\xf9V\\x97,\\x1c\\xeb\\xeb\\xc1]\\xceR\\xac\\xf3b\\xb3\\xe5\\x08\\xee\\xab\\x1e\\xa4<\\\"Y]\\x97\\xab\\x9c[\\xb0\\xdc\\xbb\\x83\\x0b\\xcc\\n\\x98\\xcdca>\\x00\\x1d\\xb9O\\xb1V\\x915\\xb2\\xa6\\x8ft\\xcb\\xbe<w\\xa8\\xf1\\xdb\\x0f\\x1e\\x14\\xb5\\xc0\\x10\\xa4@`\\xa4A\\xd4y\\xc9\\xa2yC7y\\xc1\\x19_G\\xddog\\xc5Z\\xfb\\xe5\\xf4\\x81\\xae>]?\\xb1\\x03\\xc9*\\xe9-\\xdd\\xe6\\x8f\\xb4\\xba~B\\xcc\\xaawYC\\xab\\xa3\\xe1}\\xcc;\\xc0\\xe5$/\\xab\\xe5\\xb9\\xd3\\xe1\\xa2g\\xd8\\x08\\xc6\\xb8c\\x04\\x8e\\xdb\\xc1\\xa2\\x80P\\x0bA\\x12\\xb2\\x15\\xbau\\x9f\\xa7\\xdd\\x82}\\x11\\xe1q4v/\\xb5u\\xca\\xdd\\xd4eMmU\\x88v\\x88\\x03N\\x87\\x01@\\xff.Mm^J\\xeb\\x13\\xb2\\x16\\x0d]\\x90_\\x1ehE\\xb3\\x9a\\xbc+7\\xb5\\xcevem:B\\x1d\\x8e\\x8a\\xf2\\xb8\\xa3M\\xb6\\xce\\x9a\\xec\\xa8\\xab\\x81\\xab\\xf3\\xc3F\\xab\\x0d6\\xfd/(\\x01\\xf0\\xbb\\xc5\\xb7\\xdf\\x1e\\xb1\\xff\\xf9\\xfd\\xe2\\x0f\\xfc\\xbf\\x7f\\xe8\\xde\\xb2\\x7f\\xb7\\x9e\\x1a\\xe8\\x83\\xb3+\\xba\\xa5\\x8fY\\xd1\\x90\\xe6\t\\x12\\xdb\\x0f\\xe7\\xa1\\xec\\x15wr\\xab\\xedm\\xb2M\\xad\\x10\\n\\xc0F\\x91\\x19\\xee\\xb7%\\xa7#s\\xf5eMW\\xe5\\x9a\\xaea\\x12\\x0cZ<\\xa00:\\x89\\x94*\\x85\\xf2\\xfa\\xa9#NZy\\x915\\x9f\\xb3\\x13\\xd8\\x91\\xca\\xc6\\x8f\\x1d3\\xc6\\xe12\\x9fCY\\xcb\\x8eo\\xf3\\x9a\\x83\\\\\\x08\\x99\\xb2F\\xd8\\x94c[j9\\xfclG\\x1e\\x1e\\x9c\\xe48z\\\\\\x1c3?\\xfb\\x12\\xe7_:+\\x1c\\xc5\\xc1\\xb4\\xb20\\x9dU\\x84211.\\xa6\\x14\\x8c\\xb3\\xf2\\\\\\xa3\\x15\\xc6\\xc8\\xc48\\x99\\xe1\\xe3\\xe5\\xe3eZ\\x98\\x99\\xe1\\x15\\x18\\xec\\xccpz\\x8b\\x9f\\x9f\\xe9a\\xb9`\\x1cM\\x97\\xdahQ\\x19\\x9d\\xea\\xa2[Ut\\xb25\\xdd3\\x03\\x8a/:\\xcc\\xc2\\xd9\\xf4*\\x87v\\xde\\xa6O\\xaf\\xf6\\x90\\x1a\\xbd\\xba\\xb5o\\xc8\\xa0\\xd8\\xcc\\x85\\xc1\\xdf}\\xbao\\x08\\x8b\\xd3\\xdf](^&gP\\xd7\\xa1\\x84\\x0c\\x00\\x94\\x00>g\\xe0X@\t\\xe2t\\x8e\\x90\\xe8S\\xb5\\x87e,\\xb3\\xd3?8c\\xb8\\x9dS\\xd8\\x9d\\xe1=\\x9c\\xc4\\xf0\\xb4O\\x7f\\xb6)z9\\x9e\\xb1Y\\x9e\\x0e\\x9eg\\xe8@D\\xe6z\\x06\\xb0=\\x1d|\\xcf\\x90F\\xcf\\xe0|Z\\xa4\\xd9Y\\x9f\\xfe\\xf6\\x84\\x1e\\x8d\\x8d\\x8b\\xf9\\xe9=\\x15M\\xf6g\\xf8y>\\x87\\x01j\\xe7\\x80N\\xd6(\\xe72Am\\\\\\xd0\\xe7hP\\x00#\\xd4\\xe4\\x84:\\x8f\\x15\\x9f\\xc3\\x0dg\\x86z\\xf7w\\xdf,%\\xf1\\xf9\\xa1>\\x86hl\\x8ehd\\x96\\xa8\\x87':\\x9b)\\x1a\\x97+\\x1a\\xc2\\x16\\x9d\\xc1\\x17\\x8d\\xcb\\x18\\x85\\xd9\\xea\\xe1\\x8c\\xc6e\\x8d\\x06\\xf0F\\xa33G=\\xdc\\xd1i\\xecQT\\x90\\x93Q\\x1a\\x85S\\x1a\\xc8*E\\xdf\\x1c\\xc54\\x9d\\xcd5\\x8d\\xcd6\\xb5\\xf3M#3N\\x9f\\x83s\\x1a\\x99u\\x1a\\xca;\\x8d\\xcc<usO\\xa3\\xb3O\\xed\\xfcS\\xd8\\xb8\\x82\\x18\\xa8\\xd39\\xa8\\xa80\\xceK\\xb5\\xb0Pg\\xf1P\\x1d\\x06\\xa4G\\xa5\\x18\\x93\\xc9\\xc2\\xa2q\\xc4c\\xa4\\xba9\\xa9\\xfe\\xd6D\\xe5\\xa5\\xba\\x99\\xa9\\xd1\\xb8\\xa9s\\xd9\\xa9\\x868\\xae\\xd1\\xa0\\xcaC\\\\\\x86\\xaaXFH\\x87\\xe6\\xb2T\\x03\\xa8\\x99N\\xa6j W\\xd5JX\\x1b\\xc9W\\xb5\\xcbAX<\\xb3Y\\xabc\\x06'\\x84\\xb9\\xea\\x1f\\x85 \\xf6\\xeah\\xfe*\\xceq\\x8a\\xc0a\\x0d`\\xb1\\xfax\\xac~&\\xabs\\xd4\\xc6\\xb0Y\\xc3\\xf8\\xac8\\xa3u6\\xa75\\x98\\xd5:\\x96\\xd7\\x1a\\xc8l\\xb5\\x8f\\\"\\xcenu<\\x1f\\xc2p\\x8d\\xc1qu6\\xd9\\xf8}\\x16\\xd3\\xd5\\x90\\x860_\\xa3r_m\\xec\\xd7\\x99\\xfcW\\xb3\\xc9&\\x1f6>#\\xd6\\xc3\\x89\\xc5Y\\xb18/6&3627\\xf69\\xd8\\xb1c\\xf8\\xb1\\x81\\x0c\\xd9Q\\x1c\\xd9p\\x96\\xac\\x85'kcF\\x86s#\\xfd\\\\\\xd9Ql\\xd9`\\xbe,\\xda\\xa1\\xd8\\x9c\\xd9\\xb8\\xacY\\x0bo66s66wv\\xfe\\x1c\t\\xe2\\xcf\\x861h\\xf5\\xe3\\xce\\x9a\\x0c\\xd1a\\xcc\\xf9l\\xa3\\xa8\\\\Z\\x07\\x9b62\\x9f\\xd6\\xcd\\xa8\\xf5pjmpz\\xf3\\x05\\x99\\x06\\x8d\\x150\\xf7X\\xe6>\\x90\\xdc\\xde\t(_\\x82\\x0d\\xe0\\x81\\xc1==\\x94%\\x80\\n\\x1b\\x80\\x90\\xc7\\xac\\xcc\\xc3\\xbc\\x95\\x95\\xb9\\xb8\\xb7\\xfe\\x15)\\xcb$\\xfe\\xadU\\x9aP\\x14p\\x06nH\\xa3\\xa2\\xb1p\\xfd<\\xdc\\x98L\\xdc0.n\\x146\\xae\\x7f\\x14'1r\\xcd]G\\xc1\\\"qN\\xeetV\\xae!H\\x92^\\xed\\xbc\\xdc\\xc8\\xcc\\xdc\\xd8\\xdc\\xdc\\xf1\\xec\\\\\\xf7w\\x8c\\xc6\\xd0upt\\xa7\\xb2t\\x8d\\xb6\\xab\\xbcS\\x1b_\\xb5\\xefPx^\\xdf\\x01Kpz\\x92_B\\xde2\\xedr\\xc5=\\x8b\\xfb\\xb2n\\xc8\\xe3\\xbf,~\\xff\\xc7\\xc5\\xd31X\\x93\\x90a\\x16\\xa80\\xfd[\\xe8!\\x95R\\x03\\x8b\\x92R\\x03#\\xa9\\x81\\x8d\\x1e\\xa3\\xbd\\xb5\\xf4T\\xf42\\xbcS\\xfcM|\\xca ,\\xf70\\x02\\xfd\\xf5S\\xfd\\xe6\\x00\\xe7\\x87\\x10uyq\\xea$\\xd4\\xbf/\\xd7\\xf4\\xbcc\\x0e\\x19\\x8b\\xc6\\\\0\\xa0\\\\\\x1c\\xeb\\xfd\\x16:Gg\\x07*zH\\x9do\\n\\x85\\x08;ba\\xee\\xcc\\x1c\\xb8P\\x1b\\xfb\\x83\\x1c\\x11&\\x9e\\xb3D\\xd8o\\x12;Ak&\\xae\t\\x8c\\xdd\\x07\\xf0\\x8a\\\\\\x9d\\xff\\xf8a\\xf9\\xfe\\xe3\\xdb\\xb3\\xe5\\xcd\\x87\\xab\\x8b\\xb3\\xd3\\xf3\\x1f\\xce\\xcf\\xf4\\x1b\\x12\\xd4\\xa7\\xde\\x9e_\\x9e\\x9d\\xea\\x89\\xfc\\xd5\\x07\\xae\\xcf\\xfe\\xe3\\xfa\\xe6DO\\xdfo\\x8aX\\x9e\\xdc\\xfc\\x87\\xe3\\xa1wg?\\x9e\\x9c\\xfe\\xe7\\xf2\\xe4\\xfd\\xf9\\x87\\x8fKn\\xa7\\xdb\\x9f=;\\xbfX~\\xfb\\xaf\\xdf\\x0e\\x9e\\xe8\\xee\t\\xf0w\\xd0\\xad\\xae\\\\\\xe5\\x9b\\x82\\xcd!\\xfd\\xcb+\\xdf\\x04P\\xc9\\xa6&\\xe5\\xe7\\x82\\xd4t\\xd5Vy\\xa3[\\x1d\\x9b6\\xab\\x98>\\x80\\x9d\\xcd\\x9c\\n\\xc4>\\x8f\\xc2\\x81Y\\x95E\\x9d\\xafi\\xc5\\xce;R\\xd1M^7\\xd5\\x81{\\xd4\\xb6[\\x02\\xee\\x0c\\xd6\\x06\\xde\\x00\\x83i),\\xc8S\\xbe\\x18\\x08]\\x95\\xf5\\xa1n\\xe8nAN\\xf6\\xfbZl\\x8a\\x8d\\xe0\\x9e\\xc0\\xbe,\\xb14\\x93\\xcc\\xc2\\xeb\\xd2+\\xe8\\xab\\x162\\x81\\x17\\xc9\\x1b\\xbf\\xcd?QU\\xa4\\xf0h(\\xef`\\xa4WZ\\xac\\xca\\xb6\\xca6\\xd0\\x9crO\\x0b6\\xca;\\xd6\\xdb\\x8bK\\x92m\\x98\\xd2\\xd4\\x08\\xb0=\\xdf\\xf2\\n\\xb25\\x1b\\x9b\\x82~&\\xab\\xcc\\xd4\\xc7\\xb8\\xc3$\\xaf\\xfb\\xef\\xc7\\x07X\\xa0\\x91B_\\xca\\xab\\xbeU\\xa4.\\x05`\\x99\\xdf\\xdf\\xd3\\n\\xa1De\\xac\\xa3\\x9c\\x06\\x91\\xc1\\xe7\\xa9\\x1bf\\x0b\\x08\\x8e\\x01\\xacL\\xf1!M\\xdd\\xda\\xb2\\xd2,\\xf3\\xb3Cz9L\\xdb\\x16\\xfd\\x07\\xef&\\x1d\\xd3\\x82\\xc4\\x19\\xa8\\xd5U\\xd1\\xff\\xe6\\xdf\\xd50o\\xccExl\\xfc\\xa2\\xd6\\xac\\xcdrI.\\x821}[\\xae\\x80\\x82\\xa0\\xd3u\\x1ei\\x05z\\x1a_\\x16\\x1dS\\x19\\xd4bfv8Z%6\\x8fc\\xf3'0\\xfc\\xee[\\xae]\\x0e\\xda\\x05S\\x8f\\x8d\\x04\\xaf\\xf9\\x00\\xa4\\xdba\\x1d\\x0f\\xed.+^U4[\\xf3\\xd3\\xb6\\xa1OM\\x9bm\\x0dg3\\xb3\\xc3\\xf6r\\x8b\\x05Z\\x8a1\\xb6\\xea\\x1b\\xfaW\\xe6]\\xd4G\\x94k+y\\xad\\xd0A\\xd8\\xe2\\x13\\xab#\\xe8+\\xb1\\xad\\xd2\\xfcR\\xec\\xd7\\x90\\xaf\\x85\\xecgo\\xcb\\xd5\\xdb\\xbc\\xa2\\xab\\xe6\\xa4}Z\\x90\\x93\\x9a\\x94\\xfb})44\\xbd\\x9a#\\x98\\xd5\\xdd:\\xd1\\xc4\\xadK\\xca\t(\\xfaPT\\xf4/m^\\xc9\\x13\\xaa\\xee\\x1aW>2m\\x81\\xd3E\\xc4\\x9f^\\x90[\\xf8\\xbf%3\\x88o\\xf9pe\\xdbZW\\x0c\\xc1\\xe46F\\\\\\x00\\xf4\\xc5\\x86\\\\\\xe7{\\xf0\\x9d\\x0d\\x02\\xcf\\xf4\\x17P+\\xe8\\x8f\\xaeo`\\x9cD\\xc7\\xae?\\xc2<\\xbd\\xcbV\\x9f>g\\xd5\\xba\\xd6XM\\xeeOs\\xb2\\xcb\\x8b\\x12\\xec\\x19eu\\x93\\x8a\\xee\\xcaG\\xb8\\x01\\x05\\x80%\\xb6\\x06\\x9c\\xd3F\\x1c\\x88\\xc7\\xe6O\\xca\\x84\\x91\\xaa\\x054\\x8a\\x0d\\xe4\\xd9\\xf9\\x05\\xe1\\xcf\\xc8o\\xa5\\x1e#\\xfa8\\xbe\\xfd\\xd3\\x82\\\\\\xd2\\xfbc\\xc2y>\\xc7\\xaf_\\xd3|_/(\\xd7\\xbb\\xdb\\xdd\\xa2\\xac6\\xaf\\xcf\\xce/\\xae\\xd8\\xcf\\xaf\\xd8\\xe1\\xac\\x7f\\x88S\\xb9\\x1c\\x8e\\x90V\\xe6\\xb58\\xf3\\xe0\\x00dC:\\xd8\\xc7\\xf5-'\\xab\\xf2\\xach\\x0c\\x07\\xc0]\\xdb\\xf1\\xa3:\\xd2\\x107\\x9eA\\xa7|\\xfb'\\x05O\\\\\\x90\\xeb\\x92\\xd0\\x82\\xef\\x0fg\\xe7\\x17\\xac\\xcd\\xba\\xd3\\xfaP\\xb6\\x9c\\x97\\x86\\x1c5\\xcc\\xc2\\xe9q\\x85\\xdb\\xeb\\xa7\\xd3\\xb2\\xb8\\xcf7\\xb7\\xb0;q\\xd0\\xa1\\xd0\\x89K\\xa6w\\xf8Vv\\xf2\\xa7\\xacXoiu+?\\x0bk\\x0dPeY\\xa3w\\x19k\\xf5*_\\xf3c\\x10\\x80F\\xb1\\x9f\\xe8\\x12\\xc5\\xbb\\xfa\\xdc\tZ\\x15pu\\x07+\\xbbv\\xdb\\xe4\\xbd\\xee\\x18\\x185*5\\xef\\xc5{\\xf6z\\x1fA*U\\\\\\xf6\\xebP\\xab*\\x80\\xf8\\xce\\xffR\\xe7\\x1bU\\xbd\\x1d(iR\\xb2F.\\xd2\\x15\\xe5NA/+\\x8bh\\xb7\\xc9\\x00\\x0d\\x0f6\\x1c\\xee\\xf2\\x86\\xfb\\x9b\\x0d\\xd3A\\xfeAY|\\xb0\\x07\\xf0\\xfb*\\xd91)>O\\xd7\\xba\\xac?\\xe4za\\xe1f\\x05}j\\xaaly\\x977\\xf5\\xb2n\\xca\\n\\xcf\\x18=\\xe6\\x9e\\x0d\\xba5\\xbc\\xe5^Cy\\xe0=\\xb0\\xeb\\xd8\\xa7l\\x83\\\\5o\\xf2\\xe6\\x84\\x8fQ\\x8e/\\x15\\xf61y\\x0ck\\xe7\\x07`\\xc3\\n\\x0e\\xfe\\x81\\xb6\\xc5\\x95if\\x03\\x8b\\xf3\\x8c\\x16u[\\xd1\\x8e\\x87\\xcd\\x15\\xcd5]\\x83+\\xaa\\xc9>\\xd1\\x1a(\\xcc\\xbb\\xbc\\xc8w\\xd9\\x96d<\\xf8A\\x118\\\\\\xa6\\xd0\\x08\\x80\\xf09\\xcc\\x05\\x02\\xf3b\\x83\\xb6\\x82m=\\xcd\\x03S<H\\x9d\\xddK\\xd6\\xa6\\xd8\\x92\\x8a\\x86\\x16kA\\xdb\\\\\\x95\\x85P\\x10H\\x0bT8\\x10\\xc4\\xe62?\\x18\\xc7\\x06L\\x8f\\\\\\xa4\\xc6\\xf2\\x1c\\xb8w\\xfaVH\\xa3tUV`\\xa9\\xaf\\xe5\\x8a\\xab{\\xdb\\x14\\x8e|\\xf1O9\\xa9\\x15q\\x12|g\\xe6\\x82\\xf4\\xca\\xea\\x0bt\\xcfox\\xe5K\\xe4+\\xa5Y|I\\xcaF\\x80\\x95\\xcc6\\x02\\xae\\x07`/\\xbb\\x17\\xf8\\x95b\\xeb\\x07\\xac\\xf0\\xa1\\xb9>\\xcbTG\\x97\\x8fn\\xa2\\xfb\\xcds\\xa7i\\xee6\\xcb\\xbd&y\\xa89\\xee2\\xc5\\x03\\xcdp\\xfb\\xf60\\xd5\\xfc\\xb6\\x1a\\xdcQ\\x8d\\xedY\\x86\\xb6iZ\\xc75\\xab\\xa3\\x9a\\xd4q\\xcd\\xe9\\xc9\\xa6\\xf4\\x172\\xa3Q\\x13\\xfa\\xf9\\xcd\\xe71\\xa6\\xf3s\\x9b\\xcdQLf\\xbb\\xb9<\\xdbT~F3y\\xae\\x89\\xcc\\x8dbE\\x9ef\\x1eG5\\x8dM\\xb3x\\x94I\\xec7\\x87\\xbf\\xbc)<\\xd9\\x0c\\xfe\\x82&\\xf0,\\xf3w\\x96\\xe9\\x8b\\x1a\\xbbs\\x0d]f\\xda\\xaa\\x13V3r\\xa3\\x18\\xb8q\\x8d\\xdb\\x00\\xc3\\xd6i\\xd4\\xeaZ.h\\x826\\xc5r\\xa0\\xc3\\xc9]\\xaaC\\xbb\\xc5g\\x1a\\x06\\xca\\xb0\\xd3\\x94\\xad\\xcdn=6\\n\\x0d\\xb5&u\\xbbz`\\xafm\\xcbU\\xb6\\x85\\xb9\\x87l\\xdej\\xb4\\x18t\\x11\\xd5g?VkZ\\xbd9\\xa8z\\xac\\xa2Y\\xaaZ\\xe5+\\xf2\\xf1\\xf2\\xed\\xd9\\xe5\\xf2\\xcd\\x7f\\\"z\\x98\\xf2\\xc7\\x93\\xabS\\xf3\\xc7\\xb7g\\xe2\\xd7N\\xab\\xb3\\n\\xc3\\x15:\\xbcv\\\\\\x8c\\xe5\\xec.\\xab\\xa6\\xd7\\x98K\\xd6\\xef\\x05\\x11\\xdd\\x97\\xcd\\xe2\\x04\\x9c\\x93\\xabS\\x18>v\\x9cd\\n\\xda>\\xec\\xe4\\xf1\\xe0_=p_\\xaf(X6\\xbc\\n\\xe4]6\\x16\\xc7\\xc3\\x7fvo\\xb3\\xce\\x1b\\xaf\\x8b\t\\xa7\\xb4\\x95?\\xcb\\xb7 \\xe8T\\xf7\\xb0\\xf9\\x81\\xaf\\xf8\\xc4\\x1b\\x05c\\x82\t4D\\xfdG\\xb8\\x10\\x1a4\\x0e\\xdfj\\xf4\\xbb1\\xb4\\x88Q\\xf7\\xf6x\\xfbx\\x91\\xf6\\xd1b\\xec\\xad\\xd1\\xf5\\xcd\\xf4\\xb8\\xfaX\\x11\\xf5\\xeeX\\xfaIQ\\xf4\\x93\\xe3\\xe7y\\x7fu\\x0f\\xb35r~r\\xcc<\\xa8\\x1b\\x9a4K\\xb4\\xfc\\x9c8y\\xeeP\\xd2{\\x83\\x04aL\\x89\\x8d\\xb7\\xc7\\xc1\\xcf\\x8c\\x80\\x0f\\x8a}\\x0f\\x8fs\\x9f\\x11\\xe1>#\\xb6\\x1d\\xd90\\\"F\\xb0\\xc7\\x8d]\\x8f\\x16\\xb5\\xee\\x8fW\\x8f\\x16\\xa9n\\x8bQ\\x9f\\x13\\x9d\\x8e\\xd2\\x1f\\x9b\\x90\\x18\\xf4\\xa9\\xd1\\xe7\\xd6H\\xf3\\x891\\xe6\\x08\\xf9z\\x9cw\\x9cxO\\xd0\\x89Q\\xe4}\\xc486\\xbe_\\xf9\\xeb\\x9e\\x173\\x0e1\\xe2\\x8a83Z<B\\x9c\\xf8\\xbc\\x08qm\\x96\\xeb\\x87\\xe1\\xcc\\xa8p1\\xd0\\x03\\xcbeF\\xfc\\xb73\\xb8\\xd9\\x12\\xf3\\xed\\x8d\\xf66C6\\xc3#\\xbc\\xcdw\\xff\\x86\\xf5uR<wHg}1\\xdc\\xf6\\xbey\\xe3\\xb6GDl\\x0f\\xc3\\xd2fFi;\\xe3\\xb3\\xed\\x91\\xd9\\xae\\x98lt\\x14B\\xe3\\xb0}\\x11\\xd8z\\xec\\xf5\\x8c\\xa8\\xeb\\x80x\\xeb\\xf0Hko\\x8c5\\x12\\xaalT\\x87<\\xe3\\x8b\\xa5\\x9e\\x17E\\x8d6J\\xf9eV\\xcc\\xb4\\x1e#=':\\x1a\\x89\\x86\\x9e\\x15\\x07\\xad\\xc7=\\xc7\\x8cx\\xb6\\xc6:\\xeb\\x01\\xa0z|s\\x9c\\xc8\\xe6h1\\xcdq\\xa3\\x99\\xc3\\xe2\\x98\\xbd\\x11\\xcc\\x81\\xb1\\xcb!Q\\xcbFx\\xafY[h\\xfc\\xa9;F90:9 .y\\xd0\\xe4\\x98\\xb1\\xc8\\xb3\\xa2\\x90\\xcd\\xa8\\xe3x\\xf1\\xc6\\xf1\\\"\\x8d\\xa7\\x7f]ot\\xb1/\\xaeX\\xee\\xda\\x1d\\xb1a2\\xbb)\\x908\\xe1\\xa1*5\\x1doB2D$\\x1bJ\\x11\\xd6\\x87W)80\\xc2\\x9b\\xf8D\\x0f/\\xa47\\xa5\\xa6\\x7fii\\xa1\\xa6\\x8dGM\\x13K\\xcc\\x87\\xdd0\\x90r;\\xe6\\x83\\xfc\\xb74?V<j\\xe5HL\\xb8A\\xef\\x07[s\\x17?\\xb2\\xe2Q\\xce\\x8dvu\\x00\\x8c\\n?\\xdd2\\xb2\\xc9\\x1f)\\x9f\\xa3\\x15\\xadk\\xe9\\x86gF\\x9b\\\"p\\x18I\\xb9\\xafx\\x90\\x1d[8\\xdb\\xec\\x00a\\x99\\x9f\\x84\\xf1\\x86\\x87\\xa6\\xf4\\xaeV\\xed\\x93\\xf5\\x9c\\x12\\xfe\\x89\\xacd\\xb3\\xa6\\xdc\\xbf\\xda\\xd2G*\\x89\\xf4.\\xa6\\xd9U\\xbek\\xb7Y##}\\x82\\x9d\\xbbj\\xba\\xd5\\xc0\\xf9j\\xbd\\xc3a0_\\x9b'\\xf9A\\xd5\\xeb\\x08\\xd8t\\x13-\\xc5\\xa3\\xd6\\x16\\xe4\\x8a\\x16k\\x8eX7O\\x02\\xb4\\xd6\\x02\\xd6\\x9a\\xa7%\\xff=p\\\"\\xda\\xd9cZ{\\x97\\xa26q\\xfa\\xb2\\x16\\xa8Ij\\x95gQ<\\xe8w\\xce\\xa90\\xf8:}\\x84\\x12\\xfc\\xb3\\xc1\\x02\\x94\\xe4;B\\x84/:\\xa9\\xafb\\xe4]\\x1f\\x9b\\xac\\xd6\\xf6\\xadA\\x1f\\xe4\\x9fe\\x9b\\xd5X\\xe3\\xec\\xael\\x1b\\x9e\\xda\\x97\\xfb;\\x84\\xa2%>\\xf0 \\xb3\\xaf\\xd1\\x0e\\xbc-\\xc4\\x91\\\"\\xd9\\xeb\\x08A\\xe2\\xe9\\xdc\\xae\\x90\\x1f\\xb3\\xfa\\x17^Q\\x07\\xd6eO\\xf9\\xae\\xdd\\x91\\xb6\\xe0$\\xa0{\\xf2\\xb9\\xac>\\x91\\xcf\\xc2k\\x08n\\xaf\\xe6\\xc9\\x0c5\\xdc\\xd3\\x8a5b\\xa1\\xf5\\xc2\\xcc\\xaa<\\xbb\\x0f?f\\xf5M\\xdd78\\x1b\\xe4W\\xceV\\x0d\\xf8\\xc8e\\xa2e\\xd9 pnZ>0\\xfc\\xb1\\x9f\\x92\\xfc_\\xddA2\\xebS\\x9a\\x17sx\\x07`\\xa47\\xebm\\xd6d@\\xf4<\\x00\\x0f\\xb3\\xa2M[\\x152vZj\\x13\\xdcg\\xcb\\xb1b%Y:9\\xd7Q\\x96\\xf77W\\xd7\\x883oK\\x8bM\\xf3\\xc0N\\x80\\xfb\\xfc\t\\xe69\\x07\\xd8\\xf8nF\\xf7Y\\x955\\x14j\\x87J\\xd9\\x01\\xca\\x14\\x1a<\\xdfa\\xd7\\x80\\xda0\\xd8\\xd5m\\xf0\\x1a\\xd8TL7\\xe7\\xa0\\x13S\\xd0\\xf6\\xe5\\x9e\\xaf\\xf1\\xf5\\x11\\xc7\\xe9Y\\x83h\\xc5\\xef\\xd8\\x90\\xb1\\x8e\\x9a@\\xb1s\\xea\\xf5\\xdc\\xd1U\\xc6\\xe1\\x0e \\x81\\x0c\\xd5\\xfd\\xf7\\xf5f\\x18:\\xc9T\\x7fE\\x80q\\xe3\\x86\\xf5\\x9b\\xba?\\xdd\\xbbr3\\xac\\x98Ga+\\xbb\\x8b\\xe5\\x0b\\xda\\x86Smc\\xba\\xe4\\xcf\\xd9\\x05(\\xfe\\xc4#\\xe9\\x92?\\xa5\\xb8g\\xb3,\\x93\\x92\\x8c\\xa4K\\xfe\\x06\\x92~\\x0d\\x97\\xfcM\\xb8\\xc0C\\\\\\xd5\\xa1\\xc9\\x93\\x87\\x80\\xf63z\\\")\\xcf\\xa8\\x9b\\xfa\\xdfi#K\\x97'\\xa4\\xcb\\x13Pi\\xe9\\xf2\\x04\\x92.O\\xc0\\xeb\\x99I\\x1d\\x91B\\x02\\x08$\\xe8\\x9b\\xc1\\xa4\\x12(3\\xa8%Pf\\x10Ll\\x0b\\xdd\\xd2\\xd4h\\xd4\\x13(q\t(P\\xa2\\xd1P\\xa0\\xf8\\xc9(P\\xa2QR\\xa0\\xa4\\xcb\\x13\\xd2\\xe5\t\\xe0[I\\x97'(e\\x1e5\\xc6\\x10\\xd7\\xa4\\xcb\\x13\\xfct\\x1a(\\xbek\\x03\\xfc\\xd4\\x1a(\\xe9\\xf2\\x84qT\\x1c(\\xe9\\xf2\\x04^|\\xd4\\x1d(\\xe9\\xf2\\x04^\\xd2\\xe5\t\\xfa\\x8fs\\xe8Af\\x0d\\xe9\\xf2\\x84tyB(\\xe9\\x08\\x8a\\x97z\\x04%\\x90\\x804x8]\\x9e\\xc0KL\\xc2\\x12\\x94Y\\xb4%CZ\\xba<!\\xf6\\xe5\tn;g\\xe0\\xbf6\\x01F\\xe9\\xfb\\xee\\x1f\\xe1\\x13\\x85\\xadi\\xee\\xce\\xd0\\xa4\\x9d\\x14\\x87q\\x19\\xd8|4\\x8c\\x80L\\xb1\\xf2\\x1d\\x8d\\x8e\\xe1\\xe3a\\\\\\xe7\\xfb`\\xea\\x05\\xc0\\xf7:\\x8f\\xc5\\x93\\x8e\\xc7\\x90\\x0b\\xc5\\xe6\\xcd_\\xd3\\xa24\\xb2\\xb5Z\\xedm\\xbdE\\xce\\xc7\\xedd\\x1aBN\\xcb\\\\\\xcd^\\xdd\\x94\\x9fh!\\xce\\x07h\\x92Lf\\xcdv\\x03f\\x03\\xf3\\x8a5\\xf5\\xf1\\xc3\\xc7\\xeb\\xb3c~\\xae\t\\xa2C\\x87\\x87g\\x059/\\x1a\\xb1l;O\\xc4`\\xed\\xc2G\\x1a\\xc8\\xab\\xf3M\\x915mEk\\x99:\\x81\\xeb8\\x9brS\\xf2\\xb5\\xa2\\x90\\x1c\\x80\\x81'\\xaa5\\xd8\\x16\\xfc\\x9c\\xca\\xf7_\\xc9\\x87\\xf7{Z\\xe9\\x9fQ\\x1b.\\x99\\xf4\\x98?\\xdbI\\x04\\x02\\x9aFu#\\xfb\\xec\\xc0\\xcf!\\xe1\\xb3\\x915\\xe1\\xe3}\\x9d\\xef;\\xa6U\\xbe\\xef=P;\\xdad\\xaf\\xb4|\\x0d\\xf0\\x86u\\xdd`\\\\\\xaf\\xe0\\xc9|W\\xae\\x91\\x84e\\xe5\\xba\\xcb\\xe2-2\\xccs\\x07\\x1cw\\xac+c\\xd97S\\x1b\\xc5 \\x9e\\x89LV\\x9fp\\xb2&\\xe1d\t'K8Y\\xc2\\xc9\\x12N\\x96p\\xb2aI8Y\\xc2\\xc9\\xfc\\x1aG\\xc2\\xc9\\x12N6(\t'\\x13%\\xe1d\t'K8\\xd9D\\xd0\t\\xfd9\\xe1d\\xfa\\x8f\t'K8Y\\xc2\\xc9\\xb42\\x17\\x03I8Y\\xc2\\xc9|s\\xe4\\xef\\x87\\x93\t\\xd75D\\n\\xc9\\xabD\\xbb_\\xc1\\xa3\\x00\\x11\\\"\\x10\\x15H;\\xe8B\\x93\\xd4_\\x96\\xa0\\x0f\\x11\\\\S\\xdb\\xc9\\x04T\\x86\\x7f\\x1f\\x113\\xcff\\x1aD4\\x96\\xf7\\xfc\\x86\\x0eq\\xcb\\xad&\\xe7\\xa4m\\x1ex\\xa2\\x02\\xe3\\xf2$%\\xb74\\\\l{\\xfd\\xf4\\xa2V\\xe0\\x96\\x059\\xcbV\\x0f=\\xe8\\\"\\x13\\x14\\x08\\xf8\\xc3\\xb8\\xf9+\\xe3\\x93\\xd4\\x8c6j\\xba\\xebV\\xd9\\xd9\\xc5\\xcf-\\xb6n\\xf9\\x85\\xe4$oH\\xb9Z\\xb5\\x95\\x19W\\xf9\\x86\\x87\\xc4>\\xd2B\\xae\\x10\\xf9\\x9e\\xde\\xa0\\x97\\xd2\\x81\\xda\\xdd\\xbc\\xcb\\x9f\\xc3\\xbf\\x99\\xe1g\\xe1\t\\x97\\xefiU\\x81[+\\x93\\xb0G\\xbe\\xe36k\\x9f\\x94a\\x9f\\x1d\\xe0o\\xf7T\\x87\\x1be\\xf9\\xfcPn\\xcd\\x9b\\xe8\\xd4x\\xf4\\xfe\\xe7\\x1d\\xdd\\x95\\x18\\xf41:$\\x93\t\\x92\\xd1\\xb4\\xbd\\xb1]\\x94\\x0d}\\xbd*w\\xdcY\\x0f\\x13R~\\x1f\\xa2\\x817\\xc6\\xc8\\xffrr\\xf9\\xe1\\xfc\\xc3\\x8f\\xc7lsXms\\xb8\\xa5\\x98\\x89\\x87\\x1c\\x08\\xdb\\x03\\xa1O\\\"\\x1b:}j\\xa4S\\xbd(\\x1b\\xf32\\xbaU\\xb6\\xdd\\xf2\\x0dsW\\xa2\\xd73)\\x970\\xc0\\x93\\xb7\\xac\\xe1\\xb72\\x06\\x96\\xbc\\xac\\xa9.Rf\\xdc\\xde\\xe4\\xcdC{\\xc7\\xb7\\x04\\x80\\xc0^\\xf7\\xd8\\xd8\\xeb\\xbc\\xae[Z\\xbf\\xfe\\xd7o\\xbf\\xfb\\xee\\x1bu\\xd4\\xd9\\x9c+\\xdbf\t\\xf7\\xe6\\x07\\x8e\\xbf\\xff\\xeeW\\xe32\\\\Q\\x8fD\\xd1\\xf8e\\xfe\\xf2\\xb2~\\xd0\\xcd`S\\x86\\xe8t%\\xd7\\x02\\xdf\\xf4\\x8bR\\x9f\\xbdw\\x1d\\x12\\x07\\x9a+\\xdf\\xc6\\x1f\\xb2\\xc1j\\xa7O\\x0d-\\xea\\xbc,\\x96\\xe0RO\\xc8ZB\\xd6\\x12\\xb2\\x96\\x90\\xb5\\x84\\xac%d-!kzI\\xc8ZB\\xd6\\xfc\\x1aGB\\xd6\\x12\\xb26(\tY\\x13%!k\tYK\\xc8\\xdaD\\x98\\n\\xfd9!k\\xfa\\x8f\tYK\\xc8ZB\\xd6\\xb42\\x175I\\xc8ZB\\xd6|s\\xe4\\x19\\x915\\xe117,\\x1c\\xc3{\\x0dn\\x91\\xce\\xc6\\x91\\xbf\\xf2\\xef\\xb9\\xca\\x8a\\x1e\\xd1\\xb8\\xd3\\xb5w\\xee\\x187\\xe0\\xae\\xcf\\x0f\\xb4\\x10\\xdb\\x11\\xdc\\x86\\xa0\\xd6\\x03\\x17\\xcd\\xca\\xbb\\xe5\\x17l^25\\n6\\xb0\\x9a\\xf2\\xbb\\x95\\x87\\xe2,\\x9eW6KWY\\xf1\\x82[\\x8d\\x100\\xb7\\x06\\xf0\\xca\\xf0\\xf2\\xf3KM\\xe1\\xa2aEHQ\\x16\\xcbU\\x957\\xf9*\\xdb.\\x93K?\\xb9\\xf4\\x07%\\xb9\\xf4\\x93K?\\xb9\\xf4\\x93K?\\xb9\\xf4\\x91\\x92\\\\\\xfa\\xc9\\xa5\\xef\\xd78\\x92K?\\xb9\\xf4\\x07%\\xb9\\xf4EI.\\xfd\\xe4\\xd2O.\\xfd\\x89\\xfeq\\xf4\\xe7\\xe4\\xd2\\xd7\\x7fL.\\xfd\\xe4\\xd2O.}\\xad\\xccu\\xd7&\\x97~r\\xe9\\xfb\\xe6Hr\\xe9Gw\\xe9\\x1f\\xbaY\\x97o\\x8aR\\x0d\\xee\\x19X~\\xd7Oo\\x94\\x84Z<\\xb9\\x16\\xbf0rp\\xc5\\\"\\x1b\\x82l\\xbb\\xed\\x02\\x82\\xd8\\x7fI\\xf9H;wS\\xd66\\x0f\\xd3\\xae*\\xed\\\"\\x80\\xba\\x17\\xb1\\xa8\\x85N~\\x97\\xe6\\xacm\\x1e\\xca*\\xff+\\xac\\xaf\\x8a\\xf2;\\xcc\\x1c9\\xc0\\xd4\\x19%]\\x00\\xe0\\xa8\\x84.\\x1d\\xc9`\\x9a]\\xc9\\x8cE6\\xaa\\xf7]pG\\x1fu4)\\xb1\\x9e\\xe1/\\xf0\\xdf#9\\xbc\\xce\\xb4\\xcf17\\x08\\xe9R~\\x17\\x0e\\xd3f\\xf5 NLq\\xc1\\\\\\x17\\x86\\xa5\\x88\\x1bFs\\xf5\\x11X\\xc3\\x90\\xab\\xa6\\x14W\\x14\\xae\\xca\\xa2\\xa0\\xab\\x86mW]\\x85<\\x13\\x9cz\\x8d\\x93\\\"p\\x9b\\x7f\\x1a\\xe8\\x0f\\xae\\xabI\\x99\\xe2V\\xd6|n\\xc0L\\xd2\\xa6\\xa6\\xfc\\xdau\\x93\\x15\\xeb\\xac\\x12jQ\\xe7\\xbc\\xba\\xab\\xcal\\xbd\\xcaj\\xde\\xb8a^:<\\xf3\\xdc\\x9b.\\xa1\\\\\\xe3\\xcf>'\\xa3\\xdb&}\\xf3\\xe0d\\x8a\\x8d\\x05\\xc1r\\xb8\\x9a|\\x9e\\x9b\\xa8\\xa8\\x95\\x0b\\xb1\\x8a\\x89VED\\xaa\\x1c(\\xd5,\\x84*\\x1e:\\xe5C\\xa6&\\xa2R\\x93\\x11)\\xf0\\x82#\\xa3eE\\xa3&#Q\\xa0\\xc2\\x18\\xf2\\xac(\\xd4\\x1c\\x04\\x8a\\xb4{C\\x9e\\x0d}\\x9a\\x82<\\xb9P\\xa6\\xd9\\x08S\\x10\\xba4\\x06I\\x9a\\x85\\\"\\xcd@\\x90\\xd0m%*R\\x14\\x1b%\\x8a\\x88\\x10\\x85\\xa0C\\x11\\x91!;*\\x14\\x15\\x11\\xc2\\xd1 D\\xc5\\xc7v\\xa9\\xa9(\\x10 >\\x868\\x0c\\x01\\x9a\\x8c\\xfe\\xa0\\xc8\\x8f\\xe3(v >\\xbeS:\\x16\\xd2cGy\\\\-\\x98\\x87\\xee\\x00\\x9a3\\x10\\x88!;QP\\x9dy\\x88\\x8e\\xb1J\\xcc\\x037&\\x92\\xd3 (\\xce<\\x04\\xc7\\x03PX\\x91\\x9b\\x00\\xd4\\x06s\\xbe\\x8eAk\\xb0\\xf7\\xff\\x86\\xf7}\\\"B\\x13\\xd6y?2\\xe3\\xeai\\x00\\\"3\\n\\x8d\\xd1\\x9dN\\xb3Q\\x18\\x0f\\x02\\xe3B_\\xdc\\xc8\\x8beT\\xc2\\x11\\x17?\\xdab\\\"-\\xb3P\\x96 \\x84e\\x0c\\xba\\x12\\x80\\xac\\xa0\\x10\\x05R-\\xfa\\x9c\\x1fI\\x99\\x8b\\xa2X\\x9a7\\xf8m\\x16rb\\\"%sP\\x12\\x14\\x15\\x99\\x85\\x88\\x98\\x08H\\\\\\xf4\\xc3\\x81|\\x98\\x0ea\\x13\\xf1\\x88\\x85vDD:b\\xa3\\x1c\\xa1\\x08G\\x00\\xba\\x11\\x8cl\\x84\\xa1\\x1a\\x08\\x00\\x80\\xd5\\x1a\\xea\\xa5\\xf6!\\x19\\xc1(F\\x10\\x82\\xa15>.r1\\x0b\\xb5\\xc0P\\x8a\\x98\\x08ELtb\\xce\\xf7\\x0e@%\\xfc\\x88D\\xbf\\xe7\\xdb\\xf5q\\xe9j\\x9c\\x90\\xb2\\xcb\\x92\\xa4kr\\x82.KJ\\xae\\x98\\xe9\\xb8\\xb0T\\\\\\xcd\\xf84\\\\\\x11Sp\\x89q\\x1a\\xd8\\xe6\\xb3Ro\\x99\\xc9\\xb6\\x90D[\\xc3$[\\xa8\\x95\\xe9\\x9a21\\x13k\\xcdI\\xaa%\\x92cim\\x1b$\\xd4\\x9a\\x90Lkr\\\"-[\\x12-t|-\\xc9\\xb30\\x08*f\\xd2,_\\xc2,GdM\\x930\\x88AI\\x18D\\xc2 \\x12\\x06\\x910\\x88\\x84A$\\x0c\\\"a\\x10\\xda\\x9f|\\xa7t\\xc2 \\x9a\\x84A$\\x0c\\\"a\\x10\t\\x83H\\x18D\\xc2 \\x12\\x06\\x910\\x88\\x84A\\xa8%a\\x10\\xff`\\x18\\x04\\x16\\x0d1'\\x12\\x02\\x89}\\x88\\x18\\xf7\\x80\\xf8\\xd0f\\xa50\\nM_\\x94\\x9c\\xac\\xc3\\x92\\x9c\\xac\\xc9\\xc9\\x9a\\x9c\\xac\\xc9\\xc9\\x9a\\x9c\\xac\\xc9\\xc9\\x9a\\x9c\\xac\\xda\\x9f|\\xa7tr\\xb2&'kr\\xb2&'kr\\xb2&'kr\\xb2&'kr\\xb2&'\\xeb\\xa0$'kr\\xb2\\xfeF\\x9c\\xacxR\\x99\\xc8\te\\x1aZ\\xaci\\xb5\\xcb\\x8bf\\x91\\xdd\\xad\\xf2\\xc5\\xd9#-\\x9a\\xe0\\xb4\\x1d\\xfc\\x91\\xfeS\\x98&]\\xd64U~\\xd76\\xcf\\x9d\\xd9\\xe3\\x13=\\xc400\\xa3Y\\xaay\\xb1\\xa6O\\xb8\\xa0\\xbb\\xb2\\xdc\\xd2L\\xcd\\xe22\\xf8\\xa4\\xfc\\x03\\x9c\\xc8a\\x83 \\x85:/6[\\xca:\\xf9\\nN\\xb5}\\x96WG$\\xab\\xebr\\x95s\\x0bJ\\x1cI\\x84\\xb2\\xb7\\x17\\xe6D\\xe9\\x96\\x07\\x17\\x0f^\\xa6\\x9ad\\xbd\\xf7\\x89\\xac\\xe9#\\xdd\\xb2\\xc1\\x85t4M\\x93\\xad\\x1e\\xd4CMI@\\xa3\\x84\\x13\\\\\\xd2z_\\x165}C7y\\xf1f[\\xae>\\x1du\\xbf\\x9d\\x15k\\xed\\x97\\xd3\\x07\\xba\\xfat\\xfd\\xc4\\xa6\\xbc\\xf6\\xfe[\\xba\\xcd\\x1fiu\\xfd\\xd4i\\xb6\\xef\\xb2\\x86VG\\x83L3d\\x97\\x1d\\xd8r\\xf8KK+\\xa6\\xbc\\xb45\\xcfE\\xc3\\x97\\x19\\xefxm\\x9d\\xd1\\xdd\\x80\\x06O\\xed\\xc1\\x8cB\\xa7\\x00\\xf2\\xf1\\xb5\\xf9\\x13\\xfa\\x9a6[\\xccy\\xf2\\x1c3D\\xe4\\xeci\\xf7\\x9b*[\\xd3.q\\xcf\\xfbr\\xddn\\xe9\\xcf\\xe0\\x92\\x0b\\x1e-\\xa6-x\\xfa-6j\\x15\\x18\\xc8\\xf6{\\xb2\\xe3\\xf5\\xc9\\xf1S\\xab\\xb5Jr\\x07\\x12\\xac\\xd8|*\\xea\\xb6\\x96\\xd2,\\xb5\\x0d\\xc6\\xb4\\x8b>\\x18t\\xbfs\\x03\\xb1!\\x86W\\x85\\x83\\xaf6\\xab\\xe9f\\xeeU^\\xacx;d\\xe8\\x04\\xf9\\x97\\xc5\\xef\\x7fg\\x1f\\xf1\\x8bm\\x16u\\xa0\\xed\\x1e\\xaa+\\xda\\xc0I\\xc1?\\x82\\x0c\\x9f\\x91\\xed\\x01\\x80\\x89\\xffI\\x1e<\\xad\\x123!\\x1e\\x1bh(\\xda\\x08\\xd7\\xe5}\\xf3\\x99\\x1d\\x8al\\x07\\xd9\\xef\\xb7\\xe0H\\xe0\\x83\\x98m\\xc9\\xd7e\\xf1J\\x08\\xf9\\x9a\\xac\\xca\\xdd.+\\xd6*<\\xb2ny7\\x94_\\x9a.\\xcc\\xa8\\xdf_\\x84]\\xa3\\xd8+B&_\\x08lC\\xa3\\xeb\\x059\\xe7.\\xd8l[\\x97\\x8a8\\xd6\\x9b\\x81\\xf8\\x92\\xaciCW\\x0d;\\xe1\\xb9\\xdf4\\xeb\\xbb \\xbb\\xc6\\xd4\\x038\\x95IF6\\xf9#-\\xfa\\x01\\xe3`\\x84*Q6\\x05^\\xa8`\\xd15\\xdd\\xb02\\xf5\\xf1\\x8e\\xd2\\x82\\xc3(\\xc2\\xa0\\x92\\x15\\x1e\\x91\\xbc\\xe1\\xe3\\xae\\x88\\x1bza\\x05\\xaa\\xd1\\x01H}[\\xf3\\x9a\\x94m\\xf3\\xaa\\xbc\\x7f\\xb5\\xce\\x1a\\xda\\xeb+\\xb29\\xd79[sj^\\xb2\\x9f \\x96&\\x1f\\xe89\\x15\\xcdV\\x0fL#\\x15Ve'\\x9fO\\x07\\xfa\\x947j\\xdcO\\xe0\\\"e-z\\xc5\\x9e\\x0f\\x98\\x9fo\\x99\\xaa\\xbcb\\xdb\\xd51\\xb4\\x19\\xd0\\x0e\\xd1\\x8d\\x1aP\\x0d>\\x80\\xeb\\xee\\xc9\\x85\\xf2$\\xf2%\\xb6\\xe5&_\\xa9\\x9d\\xec\\xbeAEw\\xe5#]\\xf7\\x81jWo\\xff4\\xf0\\xabp\\xdb \\xaf\\x859'<\\xfa\\xdcy~\\xd4a:\\xddJi\\x1e\\xaa\\xf2s\\x17m6*\\x1ej\\xb8\\x8b\\xe1\\xdb\\x12\\x11F\\xaf\\x8c\\x81j\\xba\\x00\\xa8\\xfe+\\xef\\x84\\xef{O+&\\x9a\\xaeU\\x1f\\xc6G\\xe1\\x05X\\x93\\xfc\\x1eFLt\\xa8\\xa6\\xddW\\x1d\\xe6\\x14tm\\xe2\\x83vq\\x87\\xa1\\xa2Itp@\\xb70\\x8b\\xfbR\\x00Dy\\xb1\\xda\\xb6k\\x8e`\\xbdR\\x83\\xb0X\\xa9[\\xa6q\\xd4|\\x995|\\x83\\xc8\\x1b\\x98\\xec\\xdc\\x97\\x9f5e\\xc5\\xb6\\xddv\\xbb&Y\\xdb\\x94L\\x17\\x81\\xb4\\x82\\xb2\\x9eF.v\\xb9U-!\\xbcnY7Yc\\xccWM\\xb7\\xc45\\xcb\\x06%\\x12X5B7<\\x11\\x91B`'\\x10\\xc4\\xa3\\x0fD#\\x0fX\\xa9\\x03\\x98G*\\x908\\x10\\x8b6\\xe0&\\x0dL\\xa2\\x0c\\xc4%\\x0cX\\xe9\\x02q\\xc9\\x02\\x16\\xaa\\xc0L\\xa2\\x801\\xdc\\x0dB\\x13\\x88K\\x12\\x98I\\x11\\x88L\\x10\\x98A\\x0f\\x88M\\x0e\\x88F\\x0d\\x88K\\x0c\\x88F\\x0b\\xf0\\x93\\x02\\xa2Q\\x02l\\x84\\x809t\\x00\\x14\\xfeG<i\\xe6~3\\x0f\\xfaG\\xa0\\xfe\\x89@?\\xe2<\\xb1\\x1e\\x94V\\xc7\\x89\\xfb\\x04\\x9d\\x08\\xef\\xf7p>6\\xbe_\\xf9\\xeb\\x8e\\x0c\\xec\\x9b\\xb0~\\x04P?*\\xa4\\xaf\\x1f\\x863\\xe1|1\\xd0\\xaa\\xc49\\x00\\xbe\\x13\\xc1\\xb6\\x80\\xf7^\\xe8\\xde\\xc4\\xfc\\xc2a{\\xf3\\xdd\\xbfa}\\x9d\\x04\\xd8\\x87t\\xd6\\x07\\xd6\\xdb\\xfb\\xe6\\x05\\xeaG\\xc0\\xf4Cle&D\\xef\\x04\\xe8\\xed\\xf0\\xbc\\x0b\\x9cGG!\\x14\\x98\\xf7\\xc1\\xf2:(?\\x03\\x92\\x0f\\x00\\xe4\\xc3\\xe1x/\\x18\\x8f`\\xddFu\\xc83>\\x10~\\x1e\\x04\\x8f6J\\xf9%*\\xf8\\x1e\\x19z\\x8f\\n\\xbc\\xc7\\x84\\xdd\\xad\\xa0\\xbb\\x8ed\\xea\\x80{\\x1c\\xb8=\\x1a\\xd8\\x1e\\x17j\\x0f\\x03\\xda\\xbd0{ \\xc8\\x1e\\x02\\xb1\\x1b\\x00\\xbbY[(\\xd8\\xea\\x06\\xd7\\x03\\xa1\\xf5\\x00`}\\xd0\\xe4\\x98\\xa0zdH=\\x1e\\xa0\\x1e\\x0fN\\x9f\\xfeu\\xbdP\\xba\\x0fH\\x87]\\x1b\\xd7{/\\xb6\\x99\\n\\x80\\xa8\\xf8_vW\\xb6\\x0d\\xc9\\xc8~\\x9b\\x15E\\xef\\xa0\\xe5_\\x93;\\x9fs\\x99\\x82J\\xc8\\xe2\\x19\\xc5\\x1c\\xa0\\xd3\\xff\\xdb\\xd2\\xeap\\x02\\xce{V\\xaf\\x84\\x05\\x83a\\x91X\\x0e\\xd7\\x07\\xe9\\x17\\x07\\xd7\\xcc \\xef\\x94\\xease='\\x9f\\xb3\\x1eqp\\x0c\\xa4\\xads\\xb2\\x96J\\xfe\\x9b\\xaf\\x0f\\x89\\xca\\xf0\\xb7^+\\xaf\ti\\x97\\x17\\xa7r\\x02\\xc1A\\xe3\\x1dV\\xb8\\xbd\\xa59\\x8c\\x1eT\\x91P\\xce1\\xaa\\x83\\x0e\\xbf@\\x81\\xaf?\\xc2e3\\xc2q\\x8c\\xb7\\xc8>\\x12b\\x14\\xe4\\x0b\\x9e\\xae\\x9e\\x82\\x01?i\\x06\\xed;\\x14\\xce\\xe8\\x18\\xff\\xd8\\xb9\\xdc(x\\x15\\xdd\\x94g\\x7f[h\\x03\\x14\\xe4Y\\x1e\\x02yd\\xbaWy\\x0e\\xa8\\xa7\\x89\\xc2 >\\x12\\x1b\\xe6#(\\xd4G\\xe6\\xc3}\\x9a\\xb4l[\\x97\\x06\\xe4G\\\"\\xc0~\\x9a8\\x03\\x04$\\xf3\\x81@M\\x9a\\xf8rz%1\\x01Ab\\x03\\x05\\xc9(`\\x90\\x18\\xe0 \tq\\x03\\x99 !\\xf1\\xce\\xfb\\x88`!q\\x01\\x86d\\x14hH\\xe6\\x01\\x87\\x049\\xcbH\\xc8\\x08\\x0e\\xcf4\\xe2\\x04\\x12\\xc9\\\\0\\x91\\x04\\x02\\x8a\\xc4\\x00\\x15\\x89\\xab/\\xb6\\xdb\\xe3\\xe6\\x01\\x8c\\x9a\\xb0\\xb9(\\xa3\\xb1\\x99(?xpGb;!\\x88\\x83\\xd9f\\xc3 \\x89k$\\x89w\\xf5\\x90\\xb8x$\\xf1\\x045\\xc7\\xc4%ILl\\x92\\xb8C\\x9bga\\x94$\\\"NI\\xbcX%\\x99\\x8aW\\x929\\x98%6b\\x87\\xbd\\xbc%\\x0f\\x0fs\\x9e\\x81]\\\"\\xb2`\\xef\\xb2\\x86:\\xcf\\xc30\\x11q\\xed\\xde\\x1a\\xee\\x1c\\x1b\\xcb$\\xf3\\xf1L\\x12\\x1f\\xd3$\\xf3pM2\\x0f\\xdb\\xc4\\x97(\\xda\\xc8h\\x88'\\x89\\x8ez\\x92\\x98\\xc8'\tB?IL\\x04\\x948\\xc3\\xa2\\xe7!\\xa1\\xd8\\x1aGC\\xa3\\x03\\xf1Q2\\x1b#E\\x04b\\x01\\xd2\\x93\\x91Sb\\xa3\\x9e{\\x8exG\\xa0t\\xc8\\xf9?\\x11M\\xc5\\xb6=k\\xb8\\xb4\\xaf\\x1d\\xf3\\x90UM\\x18\\xc7Y\\xd1\\xa0\\xe9(\\x08+\\x89\\x8d\\xb2\\x124tz6\\xda\\xaaIk\\x90\\xf0\\xe9y\\xf8+\\xf1\\xc1\\x92\\xc4\\x15D\\x1d\\x80\\xc5\\x12[\\x0c\\xe6\\x08L\\xd6.\\xc3\\xf0\\xaf\\xcf\\xc2g\\xc9\\x88\\xc1\\xf0\\xe1\\xb4\\xc4\\xdbo/^K\\xc6a\\xb6\\x04\\x0d\\xe8\\x9b\\x89\\xdd\\x12\\x1f~K<!\\xd6\\xbe k\\xc7(\\x85\\xe2\\xb9$\\x00\\xd3%h\\xb0\\xf5,l\\x97\\x84\\xe1\\xbbd\\x14\\xc6KBp^b\\x1d5,\\xf0\\xda\\xfa\\xac\\x0f\\xf7%\\xb3\\xb1_\\xe2j\\xa8\\xf6kT\\x1c\\x98\\xcc\\xc4\\x825QXPvdt\\x98DF\\x88\\x89;4\\x1b\\x0b\\xce\\xc6\\xc2\\xb3c!\\xc6$&jL\\xa2#\\xc7$\\x18=&!\\x082\tG\\x91I \\x92L\\xf0pm<\\x807\\x1cw\\xf4\\x85l\\x07#\\xcb$\\x0c]&X7b\\xa2\\xccd.\\xd2\\xac\\xc9BB\\xb9cb\\xcf$*\\xfeLf\\xcf\\x07/\\x0eM\\x02\\xb0h\\xe2\\xc1\\xa3m\\x08_\\x08\\x8c\\xaa\\xbc&\\xa4\\x8d\\x86Q\\x07\\x81\\x81\\xf5hx\\x11\\xa2\\x07\\x97\\xc2\\xb2\\x7f\\xe6hh\\x13[t\\x1a\\x92!\\x91\\x99P\\x8c\\xf8L\\xaflK\\xac\\xa6xo\\\\\\xc4&\\x14\\x17\\xae\\x11!z\\x13\\x8a5\\x86\\x13i\\xc3\\xf0\\xaa\\xb0\\xe1w&\\xc3K\\xe6\\xa0\\x11\\xe0\\xcf\\x11\\x90 \\xcd\\xab\\xbe5\\x8a )\\xc1\\xcb,\\xc0'\\xa6sU\\xa8\\xaf\\xbf\\x1e\\xbe\\xffU\\xbf>\\xba\\x85!\\x7f\\x1b\\x1b\\xd8\\xca\\xe5\\xdf\\x08L\\xe4T\\xf6\\xf1\\xaa\\xc9\\x1a:z\\xfd\\xf4\\xd0\\x8a\\x94\\x83Gu\\xf9\\x83\\xad\\xbbi\\x87\\xf3\\x15~\\xf7\\xc27\\xe0\\xee\\x1e\\x85\\x0f<.\\x07\\xfb\\x00\\xdd\\x08gm\\xf3\\xf0\\xd7n|\\x7f\\xac\\xb2\\x11\\xb9\\x1a2 Q\\xfc\\x95\\xef\\xd1\\xfa\\xb0\\x05Q\\x16\\x9a\\x14\\x0c7\\x1fpJ\\xc1pa\\xc0\\x128\\xc4\\x8d1J\\xc1pc\\x00\\xa4\\x99\\xe0Qd\\xe0h\\x06h4\\x030B6\\x8c\\x88\\xd0P\\\\X(\\x1a$\\xe4\\x87\\x83\\xa2AA)\\x18.\\x05\\xc3\\x8d\\x80lR0\\x9c\\x18hU\\xe2\\x1c0&$>,\\x05\\xc3)%\\x05\\xc3\\x91\\x14\\x0c7&\\xee\\xcc\\xff\\x8c\\x0f\\x14\\x99\\x07\\x88\\xa4`8QbB\\x1d)\\x18.\\x05\\xc3\\x0d\\xa5\\x84A\\x16\\x01pE\\n\\x86\\x9b\\x0eFL\\xff\\xba^\\x10\\xc2\\x07@\\xc8]\\x9b>\\xed\\xf3\\n\\xf5\\x92Y\\x9c\\x8bf\\xf4\\x02\\xc6dg\\x0f\\xf4\\x91\\x18\\x9b*+\\x1a\\x19?\\xb1\\xcf+\\x11<'>\\xde\\xbej\\x0b\\x1e\\xd7rO\\x8av\\xbb\\xe5\\xe9`u\\xad\\x94KP\\x87o]\\xd2\\xbax\\xd1\\x80M\\x9bA}}_\\xc8K0\\x89Ve\\xb1\\x16\\x9e\\x03\\xf6qo\\x07n\\xc1\\xc1G\\xdde\\x07\\x11\\xde\\xd3\\x94$/\\x04=\\x9e\\xf6\\xcd\\x87\\xe3\\x15\\xf7\\xc7s\\xdf$\\x0f\\x9c\\xa9\\xc9\\x9eV\\xbb\\xbc\\x06\\x7fxS\\x12\\xfaDWmg\\xe90i\\xe2\\xbc\\x92\\xb1>|\\x97SZ\\xcez\\xe2v\\x82\\x9e\\x98\\xbe\\xcd\\x00\\x8f(\\xef\\x04\\xad\\x9c_\\x19\\x9e\\xf1$\\xb9M\\x9e\\xd5\\xe4YM\\x9e\\xd5\\xe4YM\\x9e\\xd5\\xe4YM\\x9e\\xd5\\xe4YM\\x9e\\xd5\\xe4YM\\x9eU\\x92<\\xab\\xa2$\\xcfj\\xf2\\xac&\\xcfj\\xf2\\xac&\\xcfj\\xf2\\xac&\\xcf\\xead\\xcf\\xaa\\xeeU5]\\x7fp\\xf3\\xd7\\x9ag\\xf7\\x10\\x0e\\xd6\\xe6\\x81\\xdc\\x95\\xc0\\xb4\\x95\t\\xadh\\xa73\\n\\xef\\x9e\\x90\\xc7f\\x89\\xf0\tv\\x87,\\\\$\\x02yN\\n\\xae|\\xd6y\\x0d\\x83\\xc2\\x9f\\xffKK\\xab\\x03\\xfc\\xdb\\xe6\\xa1\\xe4l\\xcf\\x1f\\xa1&\\xfe\\x9f\\xf1\\xecq\\xde\\xaag&\\x8d\\x1b\\xdePU\\nb[\\x19\\x9eQ\\xcf\\xf3\\x16/\\xa9\\xfa\\x16\\x92\\x16\\xc5\\x95\\x18\\xc5\\xe67\\xed\\xfff\\x8d\\x9c\\xf6Y\\x80P\\\"zR\\xa1\\xb8S\\xa4\\xc4\\xf4\\xaaB\\x89\\xe6[\\x85\\xe2L\\x942\\xcb\\xcf\\n%\\x96\\xb7\\x15\\x8a?]\\xcaD\\xcf+\\x94\\xc9\\xfeW|\\xec\\xfcISf\\xf8bQi\\xde\\xc4)\\xf3\\xfc\\xb2\\xa8@g\\xf2\\x94i>ZT\\x903\\xa5\\xcal\\xef\\xad\\x14\\x12\\xe0\\xc3E\\xdf\\x0c\\xf6\\xebB\\x99\\xe1\\xdd\\x852\\xc3\\xc7k[\\xe8\\x96\\xa6F\\xf3\\xfeB\\x89\\xeb\\x03\\x86\\x12\\xcd\\x13\\x0c\\xc5\\xef\\x0f\\x86\\x12\\xcd+\\x0c\\xc5\\x95|e\\x9e\\x87\\x18\\xdf+,\tX\\x02}\\xc7P\\xa6z\\x90Qa6\\xaf2\\x94\\x89\\xbee(\\x96T,^\\x95\\xc2\\x99\\x8e%L\\xe3\\x98\\xe8y\\xc67SGR\\x16\\x7fk\\xe6\\xf9\\xa2\\x0dq\\xae\\xd4,Q\\xfc\\xd2P\\xe6y\\xa7\\x0dq\\\\\\xa3A\\x95\\x87\\x99\\x9ej\\xb3&4I\\xcb<\\xff5\\x14on\\x12g\\xaa\\x96\\x00\\x8f6\\x14K\\xc6\\x86\\x11\\xdem(69H\\x18\\xfb,\\x7f7\\x94\\xf0\\xc1\\xf1\\xf9\\xbe\\xa1\\xf8F\\xc1\\xeb\\x07\\x872\\xc2\\x1b\\x0e\\x05\\x0b\\xf2\\x9f\\xe9\\x19\\x87\\xe2M\\xe3\\xe2K\\xe4\\xe2O\\xe5\\xe2\\x1c\\xb5P\\xbf9\\x14\\x9f\\xf7\\x1c\\n\\x96\\xd2e\\x96'\\x1dJ\\x80?\\x1dJ\\xb8W\\x1d\\x8a\\xd7\\xb7\\x0e\\xc56\\x8axz\\x17\\xc7\\xf3>\\x9f;\\x94y\\x9ew(\\x8e&\\x1b\\xbf\\xcf\\xf2\\xc5\\x1b\\xd2\\x90\\xd4/\\xf3<\\xf4f\\x0dh\\xfa\\x97\\x99~{\\xb3\\xc9fB\\x98\\xb8\\xde|(\\xce\\xa40xZ\\x18<1L,/?\\x94h\\xbe~(q=\\xfeP\\xc2\\xfc\\xfeP\\xbc\\xde\\x7f(\\x81\\x18\\xc0\\xe0ao\\x9a\\x18K\\xa2\\x18[j\\x90p\\xef\\xb1?YL0B \\x1e\\xf6\\xe3\\x04P\\x90\\x0e\\xc5\\xc4\\x0c\\xa0\\xccB\\x0e\\x0cih\\xe2\\x98\\x98x\\x82RM\\x14T\\x01\\xca\\xdc9\\xe2E\\x18\\x84\\xb8\\x80\\x142\\xfaq\\x87a\\x0eP\\x1c\\xd6\\x9c+/=\\x9e\\xa5|6\\x161\\x90&|\\xeb(\\\"\\x01e\\x1c.\\x01e`\\xf2\\x01\\xa40\\xccO\\\"~\\x83\\x1a\\xd7r\\x16\\x89\\xc6\\xc8\\x93z\\x9fm\\xf2B\\x1b\\xd0\\xe1u\\x19\\xdd\\x03\\xe0\\xa9\\xa3\\xdczT~\\x95\\xb9yd\\x8a\\x8c^\\x07@a\\x00\\xcb\\xfd\\x19\\xf4\\xa9Y~\\xa2\\x87\\xa8L0#M\\xbe\\xacEf\\xf5`\\xff+\\xdcLY]\\xc3\\x18]d\\x1bzI\\xff\\xd2\\xd2\\xbaY\\xc0\\xdf5!\\xfc[\\xf0\\xd7\\x9986\\x12\\x94\\xec\\xca\\xba!\\x94;q\\xb8\\xd7\\x87\\xdfa\\xd1\\xef\\x13\\xfb\\xe6@\\xf2{}\\xc2>\\xd0\\x8ar\\xef]Q\\x92]YQ\\xe9\\xadS\\x95\\xa8\\xa6l\\xb2P\\x1e\\xb9#9\\x8f-\\x17?\\x17\\xcfG\\x83\\xffO\\xd1\\xee\\xee\\xc0\\x17!\\x1d\\x87\\x8a\\xf7Jo\\xbf:P\\xab\\xb2-\\x9a%\\x17\\xa2o)\\x9f\\xb3\\x9a\\xd4\\xb49\\xe2\\x89z\\x84\\xef\\xb3&m\\x01\\x93i\\x0d\\xee\\xa3\\xcfy\\x0d\\xdf\\xd1\\x91\\xa8\\x05\\xc5\\xdc\\xc2\\xf3\\xb3\\x0c^\\x0f\\xc9\\xc7\\xa2TZ%\\xa0/\\x01}\t\\xe8K@\\x9fQ\\x9a\\x04\\xf4%\\xa0\\x0f}8\\x01}\t\\xe83K\\x02\\xfa\\x12\\xd0G\\x12\\xd0\\xa7\\x0bJ@\\x9fQ\\xc2\\xb1\\xac\\x04\\xf4a\\x8f$\\xa0/\\x01}\t\\xe83K\\x02\\xfa\\x12\\xd0'K\\x02\\xfa\\x12\\xd0\\x97\\x80\\xbe\\x04\\xf4\\xe9%t\\x8e$\\xa0\\xef\\xd7\\x08\\xf4\\xc1e\\xf0}\\x03@J\\x02\\xfa\\x12\\xd0\\xf7[\\x02\\xfa\\xaay@_5\\x05\\xe8\\xfbu\\\"|\t\\x81K\\x08\\\\B\\xe0\\x12\\x02\\x97\\x10\\xb8\\x84\\xc0%\\x04.!p\t\\x81CJB\\xe0\\x12\\x027(\t\\x81\\x13%!p\t\\x81K\\x08\\xdcD8\\x0b\\xfd9!p\\xfa\\x8f\t\\x81K\\x08\\\\B\\xe0\\xb42\\x17]I\\x08\\\\B\\xe0|s\\xe4\\xb7\\x84\\xc0\\x11\\x07>1\\xefB\\x15S\\xd8@\\x8e9\\xf4S.W1\\xe7\\x96\\xfd\\xb2\\x15(\\x81W\\xae@q\\x01Z\\xc1\\xd7\\xaf@i\\xc2/aA\\xea\\x1e\\xf4\\xca\\x8d4\\xb2\\xd9/1\\xcf\\xbbCB\\x1c\\x13\\xe2\\xa8\\xfc\\xfe[C\\x1c\\xc3\\xa0F\\x012\\x9e\\x0c\\x17\\xc9\\xe5\\xc5\\xa9\\x90g`\\x8d\\xf7\\x94\\xf2u1\\xf1\\x9ew#\\xbc\\x0f\\xfdFv\\x9f\\x94x_\\xf6I\\xd0\\x17\\xa4\\xc2\\xd7\\xd6T\\xac`~\\xaa\\x16\\xe0\\xdd\\xce\\x8a\\x95\\xf4\\x1e\\xe5\\x95\\\"\\xeb\\xbe-\\xd6\\xdd\\x142\\xe2\\x08'5\\x8c\\xba\\x1avGY\\xab\\xe4f\\xa3\\xb5N\\x11\\x95\\x15\\xb0_\\xb3\\x97^\\xd4\\xc3fv\\xafX\\xf6\\xa0^\\xe4*+\\xb8\\x03\\xb18\\xb0F\\xdceu\\xbe:b\\xbbm^\\xae\\xd9\\xffI\\xbf\\xff=\\xa5\\xfdK\\x936\\xa4&]\\x0f5\\x1fWM\\xd7C\\x85a\\xa6\\x80\\xd3\\x18c\\x94\\xae\\x872\\xf1\\xd0t=T\\xba\\x1eJ+~\\x8c2\\x1a:\\x99\\xae\\x87\\xfa\\x87\\xbb\\x1eJ\\xa8\\xc6`\\xbd\\xf1\\x83\\xb2\\xac\\x80\\xf8\\xc9\\xa4\\xfc\\xe9\\xe7+\\xf6o6\\xfb\\xd8\\x9a\\xa9\\xd6C\\xc6);\\xc3\\xe4\\xbe\\xeb\\xd0&\\xb9:z\\\"\\xf5\\x91\\xd1\\xfc\\xb5p\\xf5\\x88\\xdb\\x81\\xfd?\\xc3L\\xc0Qz\\x11\\x9a\\xc9b\\xa2Z\\x14S\\xed%\\xba\\xeaKli4f56\\x8a*L<\\xea0\\xc1\\xbf9y.\\xb5\\x98\\xd8\\xa6\\x00q\\x12\\x14q\\x15\\x99\\xb8}O\\xbea&q\\xd5e\\xe2\\xa5%\\xc6S\\x9bIL\\xd5\\x99\\xf8\\x08\\x893Th\\x12Q\\x8d&^U\\x9aLU\\xa7\\xc9\\x1c\\x95\\x1a\\x1b1?\tq\\xb2j\\x8d\\xc8\\xf2\\x12\\x10\\xe7\\xa8\\xd8\\x888'\\xf90\\xae\\xaaM\\xe6\\xab\\xdb$\\xbe\\xcaM\\xe6\\xa9\\xddd\\x9e\\xea\\x8d/Q\\xb4\\x91\\xd1\\x14r\\x12])'1\\x15s\\x12\\xa4\\x9c\\x93\\x98\\n:\\xf1\\x90\\x07\\xe7(\\xea\\xd8\\x1a\\xb7\\x10\\x07\\x83\\xd4w2[\\x85G\\x04\\xe2\\x94\\xc1\\x89\\x8a=\\xb1\\xd3\\x05\\x9dG\\xbc\\x93*\\xe8?\\xff'*\\xfb\\xd8\\xb6g!\t\\xc6T\\xfa\\x9dNkC\\xe9\\x0f\\xf2[wz\\xdd\\x18\\x97\\xf5\\xb0\\xbe\\xfa\\x8d\\x0c\\xd1\\x99nn<s\\xc8\\x0cjJ8g\\x96o\\xea\\xcc0(\\xcc\t\\xce\\x0c\\x0cS/\\x1f\\x9f\\x9b/\\xb4\\xd9\\xd1L\\x0b\\xbfqa5/\\x9e\\xd1\\xc0p\\x98\\x18)\\nj\\xba\\xc1\\x11\\xd9\\xe4HQP\\x83\\x12\\xd3\\xfc\\x082@\\xe2\\x9a \\x01FHt3$EAA\\x19e\\xb6\\xcc6\\\\b\\x9b.)\\nJ-aFLd3&EA\\xa5(\\xa8\\x19QPqM\\x1cbU\\x0d\\xc5\\x81\\xc67\\x83;J\\x0b\\x92\\xd7u\\x9b\\x12\\\\\\x90D7\\xfbm\\xd3\\xcd\\x1c\\x96\\xb4\\xd3\\x86We\\xbcF\\x84\\x0c\\x92]\\xc8\\xd6_\\xe5\\xcc\\x14\\x13\\xa6\\xfd\\xabz\\xfd\\x89\\xfc\\xcb\\xe2\\xf7\\x7f\\x0c7\\xf6\\x93\\x8d\\x9fl\\xfcd\\xe3'\\x1b?\\xd9\\xf8\\xc9\\xc6\\xc7\\x1eI6~\\xb2\\xf1\\x91\\x92l\\xfc\\xbe$\\x1b?\\xd9\\xf8\\xa2$\\x1b\\xdf\\xb0\\xf1\\xbb\\xad\\x86\\xfd\\xf3E\\n.K\\xd6\\xbe\\xf2\\xce?\\x94\\xb5\\x1fd\\xe4\\x1b\\xe6\\xbd\\x0b\\xa9\\xdfTe\\xbb_<~\\xbb\\xf8\\x91\\xfd\\xcfyq_\\x06\\x9b\\xe9\\xf9Z7\\xcf\\xb5Oc\\xf9,\\x83\\x9e\\xe6k\\xd9\\x170w\\xc8\\xf9[\\xb9\\xe9@\\xd3\\xc4k\\xd9z\\x97\\x17\\x9e\\xfa\\x86\\xfb\\x03{\\xa1\\xb3hW\\xfc;\\xe9\\x96-\\xaf\\xe1E\\x0d\\xcf.\\xfa!\\xca\\xd6Y\\x93\\x8d\\xa9L\\xbe\\xc3\\xf5\\xb9\\xe2\\xa0\\xe4k\\xea\\xfe\\xc2\\x14\\x91\\xa6aZ\\x90r\\x91\\xa6\\xd2A\\xa1\\x17L\\x1bRl\\x96\\x0b\\x81Df\\x0bf\\x95V\\xd9\\xea\\x93\\xaa\\x98d\\xdd\\x10\\xec([\\x00\\xf5C\\xbegU\\xb6\\xab\\xa6\\xad\\xd4\\xfd\\x85)\\xcb\\xea\\xfc\\xfe\\x0c\\x86\\x11SK\\x08}\\xcak\\xee\\xd1`S\\xa4\\xac\\xb3m\\xbd \\xbf<\\xd0\\x82Y\\x07|4\\x84l\\xf2\\x99\\xf2\\xe34W\\xb5ih\\xcc\\xfaH\\x15^\\xaa\\xaf\\xf1!\\xe5\\x91\\xfbeE*\\xba+\\x1fY_\\x98\\x86\\xa3t0/V\\x15?\\x7f\\xb9o\\x02\\xc2\\xbcU\\x89\\xab\\x8cY ]\\xfb\\xfa\\x90\\x94r\\xbb\\xa6\\x95\\x94$\\xe6E^\\xc3\\xa8\\xb0\\x01\\xba\\xcfriJ\\xf15\\xbe\\x84>\\x8c\\x99\\x1b\\xea{r>\\xd6\\xedn0\\x07\\xe5\\x10\\xbd\\x10c\\xd4\\xed\\x84\\xab\\x8af\\x0d]/3_\\x95\\xf6\\xb0\\xf9Aczy|\\\\y\\x14w\\xddd\\xbb\\xbd8\\xc8\\x0f<\\xe6\\xe3\\x81\\x16rj\\xf0]L\\xbc\\xb507\\xaan\\xd7\\xe8\\xcdv\\xe8\\xe1C\\xbeyx\\xb5\\xa5\\x8ftK\\xca\\xe2\\xd5\\xea!c\\x8b\\xb1\\x80V\\xca\\xb33\\xebW\\x00\\xba\\x1b\\xbd\\xe7\\x83\\x12\\xbc\\x1f\\xf1\\x97\\x97Qv%)*lo\\xda)\\xed4D\\xf5\\xb3\\x98\\xbd'\\xfe\\xc5v\\x84I\\xda\\x82\\xd8\\xc0\\x02\\xcfEmC\\x84\\xbdo\\xd0\\x12\\xb6\\xf9\\x0d\\xf7F\\xf5\\x0c\\xd6'{xe\\xc6y;\\x9c\\xff]\\xe5\\x8f%\\xdf9\\xc4_\\xb9I\\xde;]6|\\xda\\x81\\x12\\xaf\\x89\\xfb\\x17\\xb5\\x99\\xe6\\x8eM\\x82\\x1b\\x1a\\xb0s\\xeb\\xdb64~1\\xfc*\\xda\\x1au6\\xc0\\x9d\\xe2B\\xffh\\x81\\xabU\\xcc,\\xb6\\\\\\xf9K\\xb6\\xc5\\n\\x8bJ_\\xae\\x15\\xdd\\x82\\xdd\\xce\\x0e\\x80;\\xda|\\xa6\\xca\\x16\\xc0v\\xd4L\\xe96\\xbaX/\\xcam\\xbe:\\x8cR \\x8c\\xc9\\xec\\xdfL\\xb5I\\x8c\\x9c\\xeb\\xd0\\xe4=o\\xcd\\xe2\\xef\\xbd3<\\x9f\\xd6\\xf2w\\xd5Y\\xb4\\xe1\\x9d\\xa5\\xba\\xd8\\xb7\\x8dq\\n\\x8c6\t\\x159\\x9d>c\\xd1b\\xe0t#\\x19Y\\xe7\\xcc\\xe6\\xa5E#\\x8c\\x00\\xa6 d\\xa4j!\\x12Rj\\x0f\\xb2\\xd7k\\xba\\xcaY\\xfb\\x960\\x18z\\xef\\x83\\xb6\\xf3&\\x05\\xf2\\xcf\\x87\\x0dR \\x7f\\x18$\\xc0\\xfb\\x9b\\x02\\xf9\\xe1\\xb3O\\x8d.\\x9a\\xe9\\xd4\\x0fr\\xe7\\x87\\xbb\\xeeg8\\xedg\\xb8\\xeb\\x91\\x0d#\\xa2S>\\xae;>\\x9a#\\xde\\xef\\x82\\x8f\\xe6|O\\x81\\xfc\\xffp\\x81\\xfc\\xee\\xba\\xe7%\\xfc\\x86\\x04\\xdf\\x8a83\\xd5w\\x84$\\xdf\\xf3\\xd2{k\\xb3\\\\?\\x0cg\\xa6\\xf4\\x16\\x03\\xadJ\\x9c\\x93\\xbc\\xdb\\x99\\x99\\xda\\x92\\xb0\\xdb\\x9b\\xaa\\xdb\\xcc\\xb7\\x1b\\x9e\\x9e\\xdb|\\xf7oX_'%\\xe3\\x0e\\xe9\\xac/\\x01\\xb7\\xbdo\\xde\\xa4\\xdb#\\xd2m\\x0fs\\x8a\\xceL\\xb1\\xedL\\xaemO\\xab\\xedJ\\xa8\\x8d\\x8eBh\\x12m_\\xfal=q\\xf6\\x8c\\x94\\xd9\\x01\\xc9\\xb2\\xc3\\xd3d{\\x13d#y\\xa6\\x8d\\xea\\x90g|\\x89\\xb0\\xe7\\xa5\\xc0F\\x1b\\xa5\\xfc2+\\xe15\\xd1\\x12\\\\\\xcfIm\\x8d\\xa4\\xb2\\x9e\\x95\\xc4ZOZ\\x1d3]\\xb55Q\\xb5\\x9e\\xbdWON\\x1d'-u\\xb4\\x84\\xd4qSQ\\x87%\\xa1\\xf6\\xa6\\x9f\\x16\\x96\\xb5/\\xf1\\xb4x\\xcc\\x99r\\xda\\xc8\\xcdl\\xd6\\x16\\x9a<\\xd8\\x9d`:0\\xb5t@R\\xe9A\\x93c&\\x92\\x9e\\x95B\\xdaL\\x19\\x1d/Yt\\xbc4\\xd1\\xd3\\xbf\\xae75\\xb4/)\\xb4\\xdc\\xb5\\xff\\xfe(\\x16\\xf8\\xe8<`V\\xa7\\x93k\\xbe\\xc4\\x19\\xd8\\x96\\x10\\xd8\\xfbKu\\xdf\\xf9H\\x8ck\\xbe\\xcb\\xdc\\x87\\xfb\\x8c\\x078\\xe7B;=\\x98\\xf3Lnl7\\x80c\\x827s\\xa6fT\\xc0\\xa6\\xa3\\xf1\\x98\\xa0M6\\x00\\x8e\\xe51\\xa6\\x7fT\\xb9d\\x8b\\xb2x\\xf5WZ\\x95\\xe2k\\x1c)cS\\xac\\xfb6w\\xcd\\xc5f\\xea\\x85\\xf0\\x7f\\x07\\xcf\\xd5(x\\x8b\\x81\\xb4\\xe4ky\\xb4\\xeb\\x0ey\\x80f`\\xa9-',\\x14\\xec\\xfd\\x91@\\xd33M`\\x04\\x87\\xd1;\\x0f\\xff\\xa6\\xd5\\xb4\\x90\\x19W\\xfb:\\xc9\\xdcG\\x88\\x0cFw\\x93u\\xff\\xa8lU\\xdd\\xde\\xed\\xf2f\\xc9\\xe6U\\xe0\\\\\\xf0,/E\\xa0\\x7f\\x85\\xc91\\x02&\\x16\\x7f\\xb3\\xdb\\xf8\\xe5t\\x89\\x87]\\xfd\\x7f\\xc3\\xdc\\xd4\\x8ap\\x80\\xad`\\\"\\xc9\\x9f\\x86X^\\xd3\\xb7\\x95\\xb7\\x93g\\xe7WM\\x14\\x8e\\xae\\x806\\x9a\\xd7\\x84\\xf3\\xe7\\xd8)\\xa3\\x9c:\\xd9\\x96\\xec\\xdb\\x8a\\x0d?\\x98\\x06\\xe8\\xaa\\x88\\xd7\\xdb\\x7f3{;\\xac\\xc3\\xdbiq$gz\\xa4\\x961\\n\\xca\\xdf\\x7f\\x81\\x0f+\\xa17)#\\xaf;\\x1e\\x11\\xc2F\\\"\\xf7U\\xc9\\xbd\\xd1\\x8fy\\xd9\\xaa\\xf8\\x07\\xbc\\xad\\xca\\xef\\x88@B\\xe7[\\x95l\\x9e\\xc1\\xbd\\x0b\\xb0\\xc7ru\\xed\\xe4\\xcd\\xc7\\xcb\\xeb\\xb3\\xb7\\xb7\\xa4n\\xb2\\xa6\\xad\\x17_E\\xf9R \\xec8`\\xbc\\xe1IL-!\\xa0\\x96\\xec\\xcb\\x1a\\x14La\\xdfm\\xf3{JV\\x87\\xd5\\x16\\xc1\\xfb\\xba\\x9d\\x84\\x9c\\x17y\\x93g\\xdb\\x9e\\xabx\\xa5\\xaf\\x19\\xcb\\x84\\xa1E\\xbbS7\\x95W\\xe4\\xe2\\xf2\\xe3\\xc5\\xc7\\xab\\x93w\\xcb\\xab\\xeb\\x93\\xeb\\x9b\\xab\\xe5\\xcd\\x87\\xab\\x8b\\xb3\\xd3\\xf3\\x1f\\xce\\xcf\\xde:\\x9f\\xbb\\xbay\\xf3\\xfe\\xfc\\xfa\\xda\\xf3\\xd4\\xc9\\xe9\\xe9\\xd9\\x85\\xef\\xa1\\xcb\\xb3\\x7f?;\\xf5=$\\xbe\\xa4\\xf3\\x99_\\xce\\xaf\\x7fz{y\\xf2\\xcb\\x07\\xe5\\xcbpC\\xff8\\xa0\\x9b\\xf7y\\x91m\\x97M\\xb6\\xdd\\x1e\\x96\\x80\\xa3\\x84|`\\xf3\\xad\\xa1\\xd9Y\\xb7;\\xbe\\xe9f\\xdb\\xad8\\xd2\\xe9\\x9a)\\\\\\xb4\\x16$\\xd0\\xbc\\xfe\\n[V\\xdc\\xba\\xcfV\\x0f\\xfcY\\x81\\xa7q\\xc6n^\\x0b\\xe7=\\xd3\\xd2\\xba\\xb5\\x07\\x00\\x03\\x9b\\xa3\\x03i\\xe5\\xbe\\xddrO\\xac\\xf0-\\xb0f\\xe6\\xc5\\xe6\\x88\\xbd,\\xb4>\\x88\\xcc#\\xb4\\xe0\\xb4=e\\x7fS\\xe4\\xc0\\xc5#\\xac\\x1aU:7\\x9d8u\\xf0!\\xdb\\xefiQ\\x83\\xcd\\xab\\xcf\\xc0 x\\xfd@\\xeb%?\\xaa\\x02a\\x83\\xc1\\x07\\xe9^\\x96:@7\\xd0\\x82\\xbdw\\xa05\\x8c\\xb9\\xbaQgw5\\xfbL\\xd3\\xab\\x1d\\x08\\xb0U-\\x1eRNZ\\xc2\\xb5\\xbc\\xe9\\xd5\\xcawm5\\x16\\xa5\\xd9\\xd7\\xa2\\\\\\xb2=q\\xf9H\\x9by5kRlm`Ot\\x9c\\x13>\\xcf\\x960\\xcf\\x96\\xb4\\x08\\xd55=\\xfa\\xc5\\x90\\x80\\xa2\\xd7!\\x1b\\xd6+\\x1dw\\x1c\\xa1\\x14\\xf6\\xbe\\x98\\xfb;\\x81\\\"\\xad\\xcb\\x82\\x0e\\x8e\\x86\\x9bb\\xcbt\\xc7\\x8c\\xd4\\xedjE\\xeb\\x9a\\x079\\xbc\\xaf7gOt\\xc5\\xcf\\xb0l\\xbb\\xa5k)\\xf3e\\x7f7\\x8f\\xa2\\xcb\\x0cVJ9t4\\xf2\\x85\\xc8\\x04\\xf5\\xf2\\xa50~\\n\\xebK\\xb3\\xfe\\xe6\\xa8[\\xbc\\xf2\\xc4S\\xc4\\xb1\\xf6\\x0f\\xfcb\\x0d\\x80\\x9b\\xfb2/\\x9a\\xa3\\xceCyknV\\xb7\\xeco\\xb7pJ\\xdd\\xc2a\\xd8\\x1d\\xa9\\x03\\x89\\xabUY\\xad\\xf3b\\xb3=\\x90v\\xbf\\xce\\x94\\x93\\x06z^V#6M\\xed\\x15\\xf9\\xb1x\\xf3:F\\xcf\\xd0t\\xe8\\xf7\\xa0\\xee\\xf4S\\xbf\\xbf<\\x07?\\x94\\xcde[L?\\x04\\xcf\\xfe\\xe3\\xec\\xf4\\xe6\\xfa\\xe3\\xe5\\xf2\\xf2\\xec\\xea\\xe6\\xdd\\xb5\\xff4\\xd4_\\xf8\\xf0\\xf1zyy\\xf3!\\xec\\xe1\\xab\\x9b\\xd3\\xd3\\xb3\\xab\\xab\\xb0\\x87\\x7f89\\x7fwsy\\xa6\\x0c\\xaf~\\xb4\\xf9\\x1b/\\xfcR\\xd3L\\x8f\\xe0h\\xfd\\xc6\\x12\\x86m\\xdde|hoT\\xc6\\x94;\\xec:\\x1ek*\\\"o\\xca\\x19j\\xddL\\xe7N\\xc5cO\\xf9\\xf8S\\x13\\x19T\\xb19T\\x0e\\x16Ul\\x1e\\x95\\x95I5\\x9bKe\\xc8\\xb3\\x85P\\xc7\\xe5S\\xcdfTE\\xe7T\\xcdbU\\xc5\\xe7UEdV\\xc5\\xe6VEdW\\x85\\xf0\\xab\\\"2\\xac\\\\\\xa1\\xcdsXV\\x860<\\xa4\\xb9\t\\xe1]\\xcde^\\x19\\xe2\\xb00\\xe6\\x89\\\\,K\\xf8\\xb2\\xe3(v\\x84-\\xfbN\\xe9\\x89\\xac,s\\xe3\\xb2\\x86*\\xbbZ\\x10\\x99\\x9b\\x85\\xb1\\xb3\\xa2\\xf0\\xb3\\\"3\\xb4L\\x8e\\xd6l\\x96\\xd6@Vc0\\xb6\\xe6q\\xb6<D&+o+\\x80\\xb9\\x85\\xdf\\x95\\x1e\\xce\\xde\\xc2\\xdf\\xff\\x1b\\xde\\xf7I\\x1c\\xae\\xd0\\xce\\xfbx\\\\\\xee\\x9ez\\xb9\\\\\\xa3\\xd8\\\\&\\x0fa&\\xa3\\xcb\\xc3\\xe9r\\xb1\\xba\\xdc\\xbc.\\xeb\\xa8\\x84r\\xbb\\xfc\\xec.\\x93\\xdf5\\x8b\\xe1\\x15\\xc4\\xf1\\x1a\\xc3\\xf2\\n\\xe0y\\xe1\\xa3dr\\xbd,\\xcf\\xf9\\xf8^s\\x19_\\xd6\\xe6\\x0d~\\x8b\\xca\\xfb\\x8a\\xce\\xfc\\x8a\\xcc\\xfd\\x8a\\xcb\\xfer\\xf0\\xbfL\\x06\\x98\\xc9\\x01\\x8b\\xc5\\x02\\x8b\\xc8\\x03\\x8b\\xcd\\x04\\x0b\\xe5\\x82\\x05\\xb0\\xc1\\x82\\xf9`a\\x8c0\\xf4\\xbe~\\xac\\xd6P\\xe6\\x90\\x9b\\x17\\x16\\xcc\\x0c\\x0b\\xe2\\x86\\x19\\x8d\\x8f\\xc9\\x0f\\x8b\\xce\\x10\\x8b\\xc9\\x11\\x8b\\xc9\\x12\\x9b\\xf7\\xbd\\xbdL1?WL=*\\xec\\xfa\\xb8t5\\x92\\xc1\\xa5\\xf2\\xb7\\xf5\\xfa\\xd3\\xe2}\\xbd\\xb9\\xad\\xe1\\xf3t\\xdf\\x03\\xdc\\xe7kvv\\xa8n_E O\\x7fS#\\xdc\\x9b\\xaeZ\\xc9{\\xe9\\x93\\x00I\\x00\\xbb\\x03NO\\xfal\\x15l\\xb7\\x12\\x7f_e\\x85`\\x1dt\\x8e\\xad\\xae\\x01\\xe2\\xdf\\nSLb\\xd9M\\xc9\\xe1\\xed5%\\xed^\\xd1rNz\\x9f\\xf5\\xaa,\\xea\\xbcn\\x00\\x00\\xe4\\xde\\x9b\\xf0!\\xb0\\xb4\\x03F\\x81\\x1dElq\\xb0\\xff\\xd6\\xe5\\x8evN\\\"\\x85.T\\xd7\\xe5*\\xe7\\n~\\x07\\x87\\xabT\\x14\\x1bi\\xe8L\\xf8\\xe6/\\x15o\\xbea-\\xaa\\x1e\\xf4Q\\xde\\xf3`\\xcfy\\xb0\\xd7<\\xd0c>\\xde[\\x8eSF\\xf0a\\xeaf\\x1cw\\xac\\xb0\\xaf\\xac\\xe1\\x16<#\\x8a\\xc8\\x9c$\\xe7t\\xd8\\xc0\\x1d\\x93\\x93B8\\x0d:\\x94\\x83{M\\xc1U\\xb5\\x08\\x90&F\\xf6\\x98\\xfcB\\xc15\\xc5\\xde?\\xd0\\x86T-\\xa8\\x15\\xb2\\x8d!\\xc2\\xc4\\xe8\\x1fs-\\xa0\\xeb\\x1c\\xf0v:,\\x8b\\xed\\xd6\\x82b\\xb4&\\x19\\xb7?%l\\xc4)\\x114\\xa4&\\xf1\\xf9\\xb4\\x9a*\\xda\\xb4U\\x01\\x99m\\xb9c\\x0f\\xadl\\x9d\\xaf\\x8b\\x17\\x8d\\xa8\\xb3\\xaf\\xd26\\xe9\\xaf\\x14BG\\xe8d\\xb7\\x12\t\\xfc\\\\\t/O\\xc2\\xcb\\x91\\xf0\\xf1#|\\xdc\\x88`^\\x84{\\x15\\xc0\\xb8u\\xb3\\xbf'\\x05\\xf1\\xdf)>\\xd9\\xcd\\x9a\\xb09.\\xb9<\\xec\\xebz\\xe6\\xbb>\\xca\\xc7\\x1d?F\\xd0o\\xf8\\xf6\\xdbs\\xcc\\x1eha\\x92\\xcc\\x1c\\x1f\\xe5\\x98\\xfc\\xc0\\x91I\\xbb\\xb4\\x1e\\xbd\\xec\\x90\\xdduY\\xd0\\xceB(\\xdbfUvH\\xb6\\xd8\\xc3\\x1b\\x8d`\\xf5\\xa2\\xd6\\xe9R\\x8e\\xb6\\xc9\\xf9\\x10\\xbbmyM*\\xfa\\xdft\\xd5\\xa8\\xb9\\xf7'\\xb6QL\\xc9\\xb0&\\x0e\\x8e\\xd6\\xbc&\\xbbr\\x0dFR\\x8f\\x8b\\x8b\\x9a\\x94\\xce8*\\xef\\xe6\\xfb\\xf1\\xe0D\\x86\\xe4\\xd4\\xecD\\\\W\\xd9\\xe7\\x02A\\xdd\\xeb&\\xab\\x80`+\\x07\\xa0\\xfc\\\\\\xf4$\\xe4_\\xa0\\xc1y\\xdd\\xb1^\\xfa\\x01\\x16=\\xcck\\xf2\\x8b\\xac\\x00\\xdbux\\xd6\\xb7.\\x1f\\xd3\\xe8\\xa4\\xeby\\x97\\xb9\\x85\\x18\\x1c\\xdc\\xe2\\xbe\\x94hz\\x9f\\xf0If\\x9b\\x1b$<\\x19E\\xcfQ\t\\xc2\\xc4\\xe5>v\\xe4\\xf7s\\x93\\x85-iY\\x88\\x99\\x9a\\x85\\x04\\xf3U\\x82S\\xb4\\xe8\\x89\\xe5\\xc8\\xf3\\xa7*\\xf2%\\x99#X\\xb6\\x16g\\x0b&\\xa4V\\x1c\\x97\\xb7\\xc5\\x93x\\x8e\\x103\\xf9\\x1c\\x89\\x99\\x80\\x8eX\\x92\\xd0\\x91\\x18\\x89\\xe8\\xf4Fki\\xe9H\\xa4\\xd4t\\xac\\xe0\\xe9\\xe9H\\xf0\\xec\\x9a\\x95\\xa6\\x8eX\\x82|\\x9c\\xd5\\x8fH\\x835>\\xe0\\xc7\\x1d\\xe9\\x83\\xef\\x95\\xb2\\xdb\\x90?SMm\\xa7d\\xd9to\\xbd\\x10\\xa81\\xfe\\xca\\x0b1\\xb0\\xcf\\xcb\\xa0\\x01\\x9a\\xb6\\xbe\\xeb\\x06\\xc1v\\xc8\\xf2G\\xa3'\\xc6\\xec\\xc0f\\xe2<Dl@\\xfa<(\\x96\\xb1 \\x8e\\xf1 \\xb6\\x84zP\\x1c\\xc3B\\xccCaT\\x90U_\\xb0\\x05\\x0beL\\xf5\\x96D\\xcf3\\\"\\xb3Py\\xc3h\\xad\\xbe\\xe0\\xa7\\x9axgD7\\x02N8\\x7f2>(xJ>(\\x9e&\\xb9\\xf7%(\\xfa\\xc7\\x0f\\xdc\\x9b\\xf0\\x98/D\\xa4\\xf6Age\\xeeC\\x96\\\\_/\\xb2\\xd8\\xfa@\\x1f\\xf9\\xef\\xc1\\x19\\xc0\\xfd>\\x9b\\xfc\\x91\\x16\\xdd\\x9a\\x97\\xe2\\xa6\\xa4\\xd4\\xe6\\x1e\\xa4\\xfeg\\x01I\\xa4\\x94\\xda)\\xa5v\\xdc\\x94\\xda\\xd63\\x1a9\\xf5\\xf5'F(\\x00<j8\\xa7\\xf5\\x9b\\xc3\t\\xd3\\xfdG+\\x02J(U\\xfe\\xdc\\x8cZ\\xcb\\xd9\\xe7\\xd8\\x1e]g^`\\x88$\\x94_\\x9d*\\x82\\x98\\x83cF\\\"\\xd0$4\\x0dB\\xfb\\xe1\\x19Z9r\\xf6\\x07\\x9c\\xa36K\\xd1\\x90\\x85}=\\xd4\\x84\\x8c\\xf4\\xf1\\x90\\xee\\x8c3(\\xed\\x89@\\xa1\\xd8\\xd3\\x81B\\x99\\x95\\x14\\x14\\x8a55(\\x94\\x89\\xaaj\\x93\\xee!K\\xf7\\x90\\xa5{\\xc8\\xbc\\xc4yTZ\\xba\\x87l:\\xc1\\x9e\\x84\\x92\\xec\\xd17G\\x10\\xef\\xc9\\\\\\xf2=\\x99G\\xc0\\xb7-tKS#\\x12\\xf3\\xc93\\x90\\xf3I\\\\\\x82>\t$\\xe9\\x93\\xb8D}\\x92\\xee!K\\xf7\\x90\\xb9\\x89\\xfd\\xc4I\\xee'\\x01\\xad\\x99G\\xf27\\xc4q\\xd2?J\\xf4'\\xb1\\xc8\\xfed6\\xe1\\xdf\\x10\\xc75\\x1aTy\\x88I\\xfc'r\\x19!\\x1d\\x9a\\x17\\x00@\\xfc<x\\xe2\\n\\x04 a\\xc1\\x00\\xc4\\xc6%\\x1e\\x19\\x14@\\x1cr\\x10:\\xe6\\xcc\\x00\\x012jp\\xfc\\x81\\x02$`\\x14\\x02\\x02\\x06\\xc8\\xd8\\xa0\\x01\\x82\\x8f\\xce\\xfc\\xe0\\x01\\xe2\\x0f  \\x9e \\x02\\xe2\\x0d$ \\xeeQ\\x0b\\x0f( AA\\x05\\x04\\x0d, s\\x83\\x0bHh\\x80\\x01\\x19\\x19d@\\xc2\\x02\\x0d\\x88c\\x14\\xb1\\x80\\x03\\xe2z\\xde\\x1fx@\\\"\\x04\\x1f\\x10w\\x93\\x8d\\xdfg\\x05\\\"\\x18\\xd2\\x8c\\xc0\\x04238\\xc1\\xac\\x01\tV s\\x03\\x16\\xcc&\\xeb\\x01\\x0c$z\\x10\\x03q\\x072\\x104\\x98\\x81\\xa0\\x01\\x0d$bP\\x03\\x89\\x1b\\xd8@\\x9e!\\xb8\\x81\\x8c\\x08p aA\\x0edL\\xa0\\x03\t\\x0ev \\x963\\xc4B\\x82'#\\x88\\xf0\\xbe\\xc0\\x072&\\xf8\\x81\\x84\\x06@\\x10\\xbcCq\\x03!\\xc8\\xdc`\\x08C\\x1a\\x12\\x1cA\\\"\\x07H\\x90\\xc8A\\x12$\\xc2\\x1c\t\\x08\\x96 A\\x01\\x13\\xc48\\xeel\\x1c\\x9c \\xdf\\xbc\\x0d\\xef\\xf6\\x19O\\xe3\\xc99}6^\\x9b\\xb0Q\\xc0\\xf8\\xccL\\xbd\\x03\\x818d\\x85\\xc0K\\x12\\xa2\\xeb\\xc0r\\xe5\\xcd\\x9c\\x1bX\\xf7%l\\xbe\\xdd\\xd1=\\x00\\x7f\\x12V\\x9e\\xb0\\xf2_+V>\\xbc~\\xda\\x85k#\\xe0\\xb9\\xf6\\xa4\\x904\tB\\xe7\\xffL\\x10z\\x82\\xd0\\x13\\x84>\\xe6\\xe3%\\x08=A\\xe8\tBO\\x10z\\x82\\xd0\\x13\\x84\\x9e \\xf4\\x04\\xa1\\x93\\x04\\xa1'\\x08=A\\xe8\tBO\\x10z\\x82\\xd0\\xa1$\\x08\\x9d\\x97\\x04\\xa1c%A\\xe8\tBO\\x10z\\x82\\xd0\\x13\\x84\\x9e t\\xa5\\x9a\\x04\\xa1{}\\xf3\tB\\x0f\\x83\\xd0m\\xb7\\x07\\xfa\\xf0t$\\xfd\\xa0\\\"\\xa8;\\xe0\\x07\\xe0T\\x02\\xda\\x13\\xd0\\xfe\\x9b\\x04\\xda\\x07\\xe8\\xb7\\x13h\\xffQ\\x81\\x1d\\xc7\\x02\\xed\\x87\\x08\\xd9\\xc2F,\\x03\\x140\\xb7~\\xf0H`9\\x0e\\x95O\\x99f3A\\xf2\\xe7O:\\x167\\xe5\\x98\\xb1\\x9c\\xe2\\xc1\\xe2\\xe6W\\x8a\\x96\\x98\\xcc\\xdd\\x85\\x98P\\xb8\\x1b\\x08\\x9f\\x0d\\x83;Apt\\xd1\\x11'\\x00\\xdeX\\xe1o\\xa7\\xa7\\xda\\xa7\\xbdD\\x07\\xbe\\xdd\\xb0w\\\\\\xd0;*\\xe4\\xed\\x04\\xbc1\\xbb}\\x04\\xdc\\x1d\\x13\\xec\\xf6C\\xdd\\x93\\x81\\xee\\x980w\\xe3\\x07\\xb9cB\\xdc^\\x80;2\\xbc\\xed\\x04\\xb7\\xa7@\\xdbn\\x18;\\x02\\x88\\x1d\\x04a\\x8f\\x83\\xabg\\x82\\xd5q\\xa1j\\x1bz\\x1a\\x15\\xa6\\x8e\\x0fRG\\x85\\xa8\\xc3\\x00\\xea\\xa8\\xf0\\xb4\\x0b\\x9c\\x8e\\x0cM\\xdb\\x80i\\xc4\\xdf\\x80\\xefoSAi\\xcb\\xa5l\\xf8\\xb5l\\xb3\\x00i\\x0b\\x1c\\xed<\\xe2\\x9dP\\xb4\\xff\\xfc\\x8f\\x07C\\xbb@hw;\\xa2\\x02\\xd0.\\xf89\\x12\\xf8<\\x0fzFV\\x12v\\x94\\xc7\\x85\\x9d\\x1b\\x14t\\x9e\\x0b9{1U\\x07\\xdc\\x1c\\x046\\xe3\\xa8\\xd18\\xa0\\x19\\x97ax\\x8cgC\\xcc\\xa1\\x83\\x11\\x02/\\xbb\\xfb\\x1d\\x04-\\x8f\\x04\\x96M\\x0fz\\x04P\\xd9\\x0b)\\xbb\\x01e\\x1f\\x9cl\\x1d\\xa51Pr\\x08\\x90\\x8c\\xc1\\xc83A\\xe4@\\x08y\\x1c\\x80\\x1c\\x04\\x1f[\\x90X\\xb4z\\xcb\\xb3!\\xb0\\xf1|\\xd0\\xd8\\xdaP\\xed\\xd7Yp1\\x06\\x0fG\\x04\\x87qhx\\x160\\x8c\\x01\\xc1\\xb1a`'\\x08\\x8c\\xa1c\\x18\\x00\\x1c\\x0f\\xfe\\x8d\\n\\xfe\\xc6\\x87~\\xc3\\x81\\xdf \\xd8w\\x04\\xe8\\x1b\\n\\xf9\\xa2\\x80/^{(\\x90\\xe7\\x07{G@\\xbd\\x81@\\xaf\\xd1\\x8d\\xd8 oL\\x88\\x17\\x05x\\xe3\\xc2\\xbbq\\xc1\\xddy\\xf3!\\x08\\xd8\\x0d\\x81u\\xd5\\xd3\\xe49o&0\\xcc\\x90\\x88P\\xae\\x01\\xe4\\xdak\\x8e\\x0c\\xe2\\x9a@\\xca\\xa0j\\x17\\x84d\\x03\\xaa\\x0ec\\xafR\\x98\\x97B\\xf9\\x99\\xe3>\\x9f)\\xecr\\x0c\\x96\\xf4\\xa5\\x02.\\xb1kl\\xe6\\x87\\\\\\xce\\x00\\x92\\x86\\x0d\\x89\\x1cHi\\xc3\\x91\\xc7\\xe2F\\xfd\\xb56\\x86\\xa0\\xb0\\xe8\\xc9HW\\xdb\\xd8/\\xb7\\x99y\\xbd\\x8d!\\x8d\\x1d\\x8d\\xd8\\x057\\xf1\\xae\\xb8q]r\\x13>\\xf3f_t\\xf3%8B\\xe3O\\x11\\xe3\\xc2\\x1bD*\\xc6\\xfc\\x89q\\\\\\x10}a\\x9a0\\xb9\\xc6\\xebQ\\xf3c4p\\x87h\\xca\\x91\\x91\\xa8;\\x83\\xf2\\x9b\\xa3\\xee\\x04$\\xc70\\x1e\\x91\\x13S\\x08\\x0bR\\x8b\\xe0z\\x8a\\xa4\\x17%\\xbd(\\xe9EI/\\\"I/\\xfa?@/R\\x87?\\xa9GI=\\xfa\\xb5\\xabG\\x0e\\x85\\x05W\\x8b\\xba\\xdb\\xedB\\x1cD\\xf2\\xa6\\xf0\\xd1:\\x90\\xdclm\\x0bF\\xde\\xe8,\\x9a\\xd8\\xff\\xbb\\xb8/'-\\x8e\\xe8\\xa4cC\\x15\\xca\\xd7r\\x8b\\xc6(\\xa4|\\xdc\\x04\\x7ft9\\x83|\\x8d\\xc9qhI\\xa6\\x03\\x11\\xca\\x1c2\\xf24\\xd5\\x08\\x1b\\x14\\xf8mp\\xdf*\\xb1(\\xc4\\x04S\\x8aIp\\x9b\\xbb\\x9a\\xbam^\\x1b,Z\\x0f\\xbf\\x1e\\xad\\x06{\\x08\\\\(\\xbfd\\xc7\\\\\\xe0\\x90\\xcd\\xf1]+\\xb5\\xf9\\x8f\\xd7nm\\x98\\x8ek\\xf3\\x1a\\xfcn&~!\\x92\\xf7\\xa02\\xd0Ga\\xae\\xca\\x9f\\x86\\x9c\\xf9\\xa6\\xeb\\x0d\\xd6\\x93\\x9a\\xbda`\\xf7\\x9cm\\x0c\\xd8_^\\x13~ \\xb0\\xf3_\\xd1\\x07\\xb2-\\xd9\\xb7\\x15\\xfb\\xa8\\x00\\xd2Z\\xd7\\xe5\\x17\\x1d\\x94a\\x9d\\xde\\xb1\\x11\\xe8D\\x86\\xa5Y\\xe3\\x9f\\xdf1D\\xbf\\xc0L\\xd1\\xee\\xf6g\\xc3%\\x95oD\\x91'\\xf7U\\xb93*\\xa3\\x8fy\\xd9\\xd6B\\x82^O\\xa7)\\x8bc{U\\xb2\t\\\\\\x00\\x17\\xad\\xd3\\xa5nO\\xde|\\xbc\\xbc>{{+n\\xd4\\x8f\\xfcEA\\xe8\\xf1\\x88\\xef!.\\xf6G\\x94L\\x02J\\xe6\\xbe\\xacsUM\\xdb\\xe6\\xf7\\x94\\xac\\x0e\\xab\\xad\\x85;\\xdf\\xedu\\xe4\\xbc\\xc8\\x9b<\\xdb\\xf6\\x87\\xf6\\x15\\xb6$\\x1d\\x93\\x8c\\x16\\xedN\\xdf\\xf2^\\x91\\x8b\\xcb\\x8f\\x17\\x1f\\xafN\\xde-\\xaf\\xaeO\\xaeo\\xae\\x967\\x1f\\xae.\\xceN\\xcf\\x7f8?{\\xeb}\\xf6\\xea\\xe6\\xcd\\xfb\\xf3\\xeb\\xeb\\x80'ONO\\xcf.B\\x1e\\xbc<\\xfb\\xf7\\xb3\\xd3\\x90\\x07\\xc5\\x97\\xf7>\\xf7\\xcb\\xf9\\xf5Oo/O~\\xf9\\xa0}EN\\xf28\\x0e\\xec\\xfe}^d\\xdbe\\x93m\\xb7\\x87%\\xe8bc&\\x85\\xf9\\xf6\\x90LP\\xb7;~dd\\xdb\\xad0\\xc2\\xe8\\x9a<\\x96\\x0d\\xad\\xd9d\\xd5\\x841\\xb3Q\\x9f\\xe5\\xdd\\xc2\\xe5\\xec\\x8el\\xf5\\xc0\\xdf\\x16lu\\xae\\xfc\\xe6\\xb5\\xd0{\\xb3FY\\xdd@\\xbce\\xb3\\xde\\x90X\\xee\\xdb-g\\x10\\n\\x8e\tk|^l\\x8e\\x98\\x00q\\xd9\\xf4\\x9eVy\\xb9&\\xb4\\xe0v\\xb4}\\xc3\\xa5Ot\\xd5\\xb2\\x96\\x18v9\\x07\\xbb\\xb9}\\xff\\x90\\xed\\xf7\\xb4\\xa8\\x81\\xdb\\x80\\xcd\\xe7QA1\\x07Z/\\xf9\\x91\\xac\\xff\\xc1i\\xb5j\\x9f\\xb1\\x13\\\"u\\xa2\\xee\\xd3\\x08\\x13\\xfa@k\\xf8J\\x0bMPvW\\xb3\\x8f;\\xbf\t\\x03A\\xb6f\\x88\\x874-\\x83\\x95\\xa2\\x9c\\xdf\\x04)\\xc3V{Q\\xe2cP\\x94K\\xb6K/\\x1fi\\x13\\xa7\\x15\\x9a4[{\\xd8\\x13j[`\\xae.a\\xae.i1Vw\\x9f\\xa2s\\x19u\\xca\\xc6\\xf6\\xba\\xd7\\x1d\\x8f\\x12\\x10l\\x0f\\xb1\\x9ev\\xc0\\xb8\\xd6\\x84\\xad\\xcb\\x82\\x1a\\xc7\\xdaM\\xb1eZyF\\xeav\\xb5\\xa2u}\\xdfn\\xb7\\xe4}\\xbd9{\\xa2+~\\x16g\\xdb-]\\xcbZ^6\\xa5X\\x84\\xd4 \\xa3\\xf4*\\xdfCi\\x12\\xde\\xf8\\xb2g\\x02\\xfbz\\xa4P\\xae]\\xe8\\x1bA\\xfd\\xcdQ\\xb7U\\x80\\x87l(\\xef\\x8e\\xf2\\xfe\\x18\\xcc\\xab\\x06\\xbca\\xfb2/\\x9a#\\xc9\\x98#\\xb7\\xe6\\xc6y\\xcb\\xfev\\x0b\\xa7\\xec-\\x1c\\xec\\xba\\xa6*\\x14\\x06\\xa3\\x8e\\xd5\\xaa\\xac\\xd6y\\xb1\\xd9\\x1eH\\xbb_\\xeb\\xce#\\x18\\x9f\\xb2\\x9a\\xb0\\xbdk\\xaf\\xca\\x8f\\xcd\\x1b\\xdf\\xc5\\x05\\x0e\\xcd\\xb9~O\\xd4\\xd7\\x8dq\\xca\\x7f(\\x9b\\xcb\\xb6\\x88s\\xc4\\x9f\\xfd\\xc7\\xd9\\xe9\\xcd\\xf5\\xc7\\xcb\\xe5\\xe5\\xd9\\xd5\\xcd\\xbb\\xeb\\xb0\\xb3^\\x7f\\xe9\\xc3\\xc7\\xeb\\xe5\\xe5\\xcd\\x87\\xf0\\x17\\xaenNO\\xcf\\xae\\xae\\xc2_\\xf8\\xe1\\xe4\\xfc\\xdd\\xcd\\xe5\\x99\\xf6\t\\xf4\\x03;\\xac3\\x82\\xf54\\xdf,L\\x89\\x89\\xa3\\xc6hF\\x8e\\xd2L\\x89\\x89\\x07%f\\xc4&\\xcc\\xd6:%&\\x9e\\x10\\xbd\\x89\\nJ\\x89\\x89\\xd5\\x127\\xda3%&VKX\\xdcg\\xe4\\xc8\\xcf\\x94\\x988%&N\\x89\\x89Sbb\\x7f\\x94h@hdJL\\x1c28!\\x91\\xa3\\xfeQ\\x08\\x8a\\x1e\\x1d\\x1d?\\x9a\\x12\\x13\\x8b\\x12\\x12O\\x9a\\x12\\x13\\x8b\\x92\\x12\\x13\\xeb?F\\x8c=M\\x89\\x89Sbb^\\xc2\\xe3S\\x03#TG\\xc5\\xa8\\x86G\\xa9\\xa6\\xc4\\xc4dB\\xccj\\xdc\\xa8\\xd5\\x94\\x98\\xd8\\x15\\xbf\\x1a\\x16\\xc1\\xaa\\x1fwn;G\\xba\\xae\\x81\\xb7\\xb3\\xcdk\\xeeD\\xbb\\xad\\xd7\\x9f\\x16\\xef\\xeb\\xcd\\xad\\xf0\\xc8u\\xdf\\x0f\\x00\\x9e5;\\xfb\\xec4\\x02`V\\n\\xbb\\xd2d\\xf7\\xe9$\\xbc!\\xafO\\xfeu$\\xa3Of3\\x85\\x98\\xd1\\xc9\\xfc\\xbe\\x7f\\x900\\x077\\xb7/\\x84\\xdd\\xe7l\\xd9s0\\xfc\\xfe^!\\x10\\xf8\\x00Y\\x98~vP\\xc7\\x02\\xeb\\x84\\xb7~.\\xe3\\xcf\\xc1\\xf9\\x0b\\x9aeA4z\\xc4M\\x12\\x8b\\xfbga\\xff9\\xf9\\x7fA\\x1d\\xf3/\\x1f\\xa4W\\xb1x\\x80N&\\xe0\\\\\\xe6X\\x08\\x1b\\xf0\\xb9\\x87(\\x12+0\\x8c\\x17\\x18\\x91\\x19\\xe8\\xe5\\x06Fc\\x07\\xce\\xff\\xca\\x18C\\xd0\\xff}\\xe6\\xb1\\x04\\xcd}L\\xdd+\\x83y\\x82\\xce\\xe9\\x87\\x11\t\\xc6\\xb1\\x05\\xc7\\xf0\\x05G0\\x06Gp\\x06\\xc3Y\\x83\\xe1\\xbc\\xc1\\xd1\\xccA?w\\xd0?]\\xa2\\xf2\\x07q\\x06\\xe1L\\x0e\\xa1!\\x0d\\xe3\\x14\\xc6e\\x15\\xbax\\x85\\x81\\xcc\\xc2\\xc9\\xd4\\x0e\\x07\\xbf\\xd0\\x0b\\xc4D\\xe2\\x18zY\\x86\\xe3\\x1a2\\x93i\\xe8\\xe2\\x1a\\x8ek\\xc8T\\xbea\\x18\\xe3pt[&\\xb2\\x0e\\xbd\\xbc\\xc3\\xa0\\xb3\\x7f\\xaa\\xde\\x17\\x95\\x7fha \\xc6\\xe4 \\xfaX\\x88\\xf3x\\x88\\xe6\\xde ,f\\x8c\\x89\\x18\\x99\\x8bhe#z\\xf9\\x88\\x1eF\\xa2\\x7f\\x12De%\\x06\\xf2\\x12\\xe7\\xa9\\x14a\\x84>\\xefk8?q\\x02Cq4Gq:K\\xd1\\xc6S\\x9cl\\xd4\\xa2G\\x9a\\xfbPs3\\x16\\xbd;\\xa7\\x7fFB\\x99\\xca[\\xb4\\x88k\\x06\\xf0\\xbb\\x05\\xfd\\x8a\\xce]\\x8c\\xce^\\xf4\\xf2\\x17#0\\x18cs\\x18\\xc3X\\x8c\\xb3x\\x8c\\xb1\\x99\\x8c\\x81\\\\\\xc6\\xd8l\\xc6 >\\xe3tF\\xa3M\\x1cm|\\x9c\\xc6\\x88\\xacF/\\xaf1\\x12\\xb3q\\x0e\\xb7q4\\xbb1\\x02\\xbfq:\\xc3\\xd1\\xba\\xf3\\x10;\\xc71:\\xcb\\xf1yx\\x8e\\xd1\\x99\\x8e\\xe1\\\\\\xc7\\xe8lG\\x1f\\xdfq\\n\\xe3\\xd1\\\"\\xa8\\xe3A:8\\x8f\\xa3X\\x8f\\x91y\\x8f>\\xe6\\xe3L\\xee\\xa3\\x83\\xfd\\x18\\xa0\\x9ex\\x18\\x90\\xa1\\xfaKL\\x16\\xa4\\x8f\\x07\\x19\\xd2\\xa6\\xc8\\\\H\\x1f\\x1b2\\\"\\x1f2:#\\xd2\\xc5\\x89\\x9c\\xc5\\x8aD\\xa4\\xb1\\x964\\x16^d\\x0cfd\\x10\\xfd\\xcf\\xc3\\x8e\\x0c\\xe6G:\\xc8N\\xa39\\x92.Y(\\x8b#\\x02Sr\\xdc`\\x85\\xb1%C\\xc6$\\x9019\\x813ic\\xbcD\\xe1M\\x061'\\xfd\\xdc\\xc9\\x10\\xf6\\xa4g\\x14\\xc71(C9\\x946\\x16e\\x04\\x1e\\xe5\\x08&\\xe5x.e0\\x9b\\xd25\\xaa6F\\xa5\\xf3\\x9d0Ve\\x1c^\\xa5\\xa7\\xf1\\xc8_\\xe2\\xb2+-\\xfc\\xca\\xc8\\x0cK;\\xc726\\xcb\\xd2\\xc2\\xb3\\x9c\\xc5\\xb4D\\xa4\\xd9\\x8cH\\x0f\\xfb\\xd2\\xc6\\xbf\\xb410\\xe3r0\\xa3\\xb30\\x9f\\x87\\x879\\x8e\\x89\\x19\\xcc\\xc5\\x1c\\xc9\\xc6\\x1c\\xc3\\xc7\\xb422\\xed|\\xbbp\\xc6]\\x08+s$/s\\x043\\xd3\\xd2\\xb5\\x19\\xec\\xcc\\x11\\x8b\\\".c\\xd3\\xca\\xd9\\x8c\\xcf\\xda\\x8c\\xcf\\xdb\\x8c1\\x93\\x02\\xb9\\x9b\\xa1\\xecM\\xf3p\\xf5\\xd9g19\\x9c\\x16\\x16'\\x14WC:\\xde\\xa6\\xcc\\x18\\xda]S\\xd2\\x91FN\\xfa\\xe4\\xb8l\\x9f\\x15\\x7f_e\\x85\\xa0~\\x0d\\xe4\\xf5d\\xb1\\xe1\\x97\\xe3\\xb9R\\x87l\\xa2\\xa6\\xe4\\x84\\xa05%\\xed\\xde\\xd0GO\\xfa\\x0e\\xad\\xca\\xa2\\xce\\xeb\\x06h\\x0c\\xdcs\\x196L\\x03y*\\x965\\xac\t\\xc6\\x8b\\x1d\\xdel\\x99\\xb2\\xff\\xd6\\xe5\\x8ev.\\xd4\\x9e\\x85\\x98\\xd5u\\xb9\\xca\\xb9\t(iDCA\\x06%\\x11a\\nf\\xdb\\x9e)\\xd8\\xff\\xc2\\xe5m\\xf2GZ\\xa0D\\xcb\\x94\\xf95e~\\xfd\\xb5f~\\x1d&\\xc6w\\xf3\\xbaq\\xca\\xf8\\xe0Q!,\\x8cE~\\x9dm\\xb7Lx\\xbbmFS\\xc79ZoYN@)PWR\\x05c\\xc8f\\x1f\\xfb\\xdb\\xa4\\xe5ca\\x06Y\\xa7J\\x046\\x90\\x83\\x07\\x14V\\xed\\x0c\\xee\\x0f\\xce\\xfa\t\\xabv\\n\\xd3\\xc7\\xc7\\xf1\t\\xaey4\\xaf\\xc7\\x8c\\x95@&\\xe6p\\xee+\\x0f\\x04\\xce\\xf5\\x9f\\xcb\\x86\\xbe\\xe9\\xd6\\x17\\xfb\\xd7\\xf8+!\\xd8\\x98Y\\xa6<'\\xf4\\x89&\\xf2\\xffW\\x8e$yN-9\\x1a\\x04\\xf4\\xc1j\\xd2\\x12P$\\x05~\\x9c\\xd0\\xec\\xa7\\x9d\\xb60\\x8c\\xa8\\xe8/\\x8e\\xc0\\x02\\x06xG\\x02\\x1bb\\x8cVE\\xec\\xd1\\x12r\\x14\\x07\\xb8\\x1fh\\x14\\xc7v\\xa9\\xf0\\x80\\xfa\\x15\\xaa\\x175Y=\\x94\\xf9\\x8aJ,\\x13\\x8f{\\xb0\\xb6\\x1aO\\xfa\\xf5\\xf3\\xc7\\xeb\\xb3\\xe5\\xc7\\x8b\\xeb\\xf3\\x8f\\x1f\\x9cy\\xbe\\xd4\\xe7\\xfe\\xf3\\xcc\\xcc\\xd2\\xa5\\xfe\\xfd\\xe4\\xcd\\xd5\\xf5\\xc9\\xb9\\x99\\xfaK}\\xe6\\xc3G\\xcf\\x9f9\\xb3v\\xf9\\xf3\\xd9\\xf5Gm\\x94\\x04u\\xc6\\xdf\\xf0/\\x9fq\\x9a}'\\xf5k<k\\x0eg-l\\xa3\\x19\\x10\\xf7x\\xb4F\\xbf\\x80\\xd9\\x99>\\xa4w;\\x0en\\xc7\\xf62\\xdc\\xb9\\x90\\x07G\\xddj\\xc3\\xde\\xa8\\xdfLO\\xe9\\xce\\xf7\\xfdcm\\xf3\\x89\\x1b\\xeee\\xdd\\xa5\\x82\\x98\\x99\\xfe\\xa8\\x8cI{\\x15\\xba[9\\x1b4\\x7f\\xc7\\xc2\\xf7\\xach\\xbb\\xd6$J\\xa0\\x7f\\x0b\\xc0\\x9e4w\\xaf\\xb0\\xfd\\xcb\\xbb\\x83\\x05\\xefa\\xa3v\\xb1\\xbfWT\\x9d\\xbe\\x97}\\x91\\xe8\\xb4y{\\x1a\\\"\\x90m1j\\x00M\\x06/\\x83\\x0b\\xc2c\\xa5Ch\\x84\\xb4\\xd0\\xa5S\\xa6\\x0b\\x9805\\xa2d\\xa3'\\x1b\\xfd\\xd7n\\xa3\\xbb\\x0e^\\xf3tW\\x1e\\x1aa\\x9b\\xd4o\\x0e\\xd3\\x8d\\x92t\\xa0w%t\\x83O\\x07\\xba\\xe7\\x89t\\xa0\\xa7\\x03\\xdds\\xa0\\xdf\\x1d\\xc4y>X(\\xe9$O'\\xf9o\\xe1$\\xf7\\x18\\xe9\\xf2\t\\xff\\x19\\xae8#\\x83Om\\xc4\\x99\\x8d~\\x85\\x99Nl\\x8b\\x03\\xdb_\\xd5D\\xc7\\xb5\\xe9\\xb4\\xf6W5\\xd6Y\\xedrT\\x07\\xd56\\xcfA=t=\\x0f\\xb2\\x0c\\x88\\x17\\xcd8q3\\xe8\\x1b\\x99F?w\\xde\\xe5\\x80\\xf9\\x83\\xaadh\\xef-kx\\x9e\\x02\\xa6\\xa9^\\xfea\\x1f\\xadn\\xe9\\x8aV\\x04\\x15\\x0bm\\xa5\\xaeV\\x85(T.U\\xca\\xa7D9\\xd4\\xa7\\x00\\xc5)Pe2\\x95%\\xff\\x17\\x9a\\xaf \\xa1\\xaa\\x91sN\\x9a\\xeaPDEh\\x9a\\n\\x84\\xad\\xca\\x8f\\xca\\\\4\\xfa\\xa3N \\xdf\\xe4\\xb1M\\x1c\\xd7\\xa4\\xb1L\\x18\\xcfd\t\\x9a(\\xb8j\\xd3\\xf7\\x98\\xf7\\x8d\\xb3\\xf6\\xc5B\\xe3Q\\x19\\xca6VK^\\xca\\xc0\\xab\\xd3SQ\\xac\\xe3amW\\xcf\\xa3)H[\\xf4!\\x1cJ\\xa5\\x82W\\xa5\\\\\\x81S\\xd1\\xa6\\xad\\n3X\\xcc\\x18\\xeec\\xfd\\x07\\x85\\xb6#\\xcfNe\\x87\\xb6\\x7f\\x9bc\\xecG\\xb5\\xed\\xe2h\\x0c\\x90\\xf8\\xe1\\xe3\\xb1\\xf6o\\xa5Q\\xe2\\xec\\xf3I\\xe8?\\xbe.\\xab\\xff\\xcbP*\\x87'\\xd9\t7\\x94\\xff\\xff\\x07\\x00\\x00\\xff\\xffPK\\x07\\x08AK\\xd0Y\\xc6\\x0e\\x03\\x00\\xea\\xc1-\\x00PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\xd4`4t\\xc7\\x01\\x00\\x00\\xbd\\x01\\x00\\x00\\x11\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81\\x00\\x00\\x00\\x00favicon-16x16.pngUT\\x05\\x00\\x01\\x80Cm8PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(6B\\xc8\\xd7\\x7f\\x04\\x00\\x00u\\x04\\x00\\x00\\x11\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81\\x0f\\x02\\x00\\x00favicon-32x32.pngUT\\x05\\x00\\x01\\x80Cm8PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(\\xb9\\xb1\\xf1mT\\x02\\x00\\x008\\x05\\x00\\x00\\n\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81\\xd6\\x06\\x00\\x00index.htmlUT\\x05\\x00\\x01\\x80Cm8PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(J\\xbc\\x1fy@9\\x05\\x00\\xf7\\x0c\\x1b\\x00\\x14\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81k\t\\x00\\x00swagger-ui-bundle.jsUT\\x05\\x00\\x01\\x80Cm8PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(v\\xf2\\x8aA\\x86\\xba\\x01\\x00\\xc5\\x87\\x08\\x00\\x1f\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81\\xf6B\\x05\\x00swagger-ui-standalone-preset.jsUT\\x05\\x00\\x01\\x80Cm8PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(_;\\x94/\\xe8Y\\x00\\x00\\xa8X\\x02\\x00\\x0e\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81\\xd2\\xfd\\x06\\x00swagger-ui.cssUT\\x05\\x00\\x01\\x80Cm8PK\\x01\\x02\\x14\\x03\\x14\\x00\\x08\\x00\\x08\\x00\\x00\\x00!(AK\\xd0Y\\xc6\\x0e\\x03\\x00\\xea\\xc1-\\x00\\x0c\\x00\t\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xa4\\x81\\xffW\\x07\\x00swagger.yamlUT\\x05\\x00\\x01\\x80Cm8PK\\x05\\x06\\x00\\x00\\x00\\x00\\x07\\x00\\x07\\x00\\xfa\\x01\\x00\\x00\\x08g\\n\\x00\\x00\\x00\"\n\tfs.Register(data)\n}\n"
  },
  {
    "path": "client/lite/swagger-ui/index.html",
    "content": "<!-- HTML for static distribution bundle build -->\n<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\">\n    <title>Swagger UI</title>\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"swagger-ui.css\" >\n    <link rel=\"icon\" type=\"image/png\" href=\"favicon-32x32.png\" sizes=\"32x32\" />\n    <link rel=\"icon\" type=\"image/png\" href=\"favicon-16x16.png\" sizes=\"16x16\" />\n    <style>\n      html\n      {\n        box-sizing: border-box;\n        overflow: -moz-scrollbars-vertical;\n        overflow-y: scroll;\n      }\n\n      *,\n      *:before,\n      *:after\n      {\n        box-sizing: inherit;\n      }\n\n      body\n      {\n        margin:0;\n        background: #fafafa;\n      }\n    </style>\n  </head>\n\n  <body>\n    <div id=\"swagger-ui\"></div>\n\n    <script src=\"swagger-ui-bundle.js\"> </script>\n    <script src=\"swagger-ui-standalone-preset.js\"> </script>\n    <script>\n    window.onload = function() {\n\n      // Build a system\n      const ui = SwaggerUIBundle({\n        url: \"./swagger.yaml\",\n        dom_id: '#swagger-ui',\n        deepLinking: true,\n        presets: [\n          SwaggerUIBundle.presets.apis,\n          SwaggerUIStandalonePreset\n        ],\n        plugins: [\n          SwaggerUIBundle.plugins.DownloadUrl\n        ],\n        layout: \"StandaloneLayout\"\n      })\n\n      window.ui = ui\n    }\n  </script>\n  </body>\n</html>\n"
  },
  {
    "path": "client/lite/swagger-ui/swagger-ui-bundle.js",
    "content": "! function(e, t) {\n    \"object\" == typeof exports && \"object\" == typeof module ? module.exports = t() : \"function\" == typeof define && define.amd ? define([], t) : \"object\" == typeof exports ? exports.SwaggerUIBundle = t() : e.SwaggerUIBundle = t()\n}(this, function() {\n    return function(e) {\n        var t = {};\n\n        function n(r) {\n            if (t[r]) return t[r].exports;\n            var o = t[r] = {\n                i: r,\n                l: !1,\n                exports: {}\n            };\n            return e[r].call(o.exports, o, o.exports, n), o.l = !0, o.exports\n        }\n        return n.m = e, n.c = t, n.d = function(e, t, r) {\n            n.o(e, t) || Object.defineProperty(e, t, {\n                configurable: !1,\n                enumerable: !0,\n                get: r\n            })\n        }, n.n = function(e) {\n            var t = e && e.__esModule ? function() {\n                return e.default\n            } : function() {\n                return e\n            };\n            return n.d(t, \"a\", t), t\n        }, n.o = function(e, t) {\n            return Object.prototype.hasOwnProperty.call(e, t)\n        }, n.p = \"/dist\", n(n.s = 445)\n    }([function(e, t, n) {\n        \"use strict\";\n        e.exports = n(75)\n    }, function(e, t, n) {\n        e.exports = n(853)()\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.default = function(e, t) {\n            if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(262),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = function() {\n            function e(e, t) {\n                for (var n = 0; n < t.length; n++) {\n                    var r = t[n];\n                    r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), (0, i.default)(e, r.key, r)\n                }\n            }\n            return function(t, n, r) {\n                return n && e(t.prototype, n), r && e(t, r), t\n            }\n        }()\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(766),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(45),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = function(e, t) {\n            if (!e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n            return !t || \"object\" !== (void 0 === t ? \"undefined\" : (0, i.default)(t)) && \"function\" != typeof t ? e : t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r = a(n(768)),\n            o = a(n(349)),\n            i = a(n(45));\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e, t) {\n            if (\"function\" != typeof t && null !== t) throw new TypeError(\"Super expression must either be null or a function, not \" + (void 0 === t ? \"undefined\" : (0, i.default)(t)));\n            e.prototype = (0, o.default)(t && t.prototype, {\n                constructor: {\n                    value: e,\n                    enumerable: !1,\n                    writable: !0,\n                    configurable: !0\n                }\n            }), t && (r.default ? (0, r.default)(e, t) : e.__proto__ = t)\n        }\n    }, function(e, t, n) {\n        var r;\n        r = function() {\n            \"use strict\";\n            var e = Array.prototype.slice;\n\n            function t(e, t) {\n                t && (e.prototype = Object.create(t.prototype)), e.prototype.constructor = e\n            }\n\n            function n(e) {\n                return a(e) ? e : J(e)\n            }\n\n            function r(e) {\n                return u(e) ? e : Y(e)\n            }\n\n            function o(e) {\n                return s(e) ? e : K(e)\n            }\n\n            function i(e) {\n                return a(e) && !l(e) ? e : G(e)\n            }\n\n            function a(e) {\n                return !(!e || !e[f])\n            }\n\n            function u(e) {\n                return !(!e || !e[p])\n            }\n\n            function s(e) {\n                return !(!e || !e[d])\n            }\n\n            function l(e) {\n                return u(e) || s(e)\n            }\n\n            function c(e) {\n                return !(!e || !e[h])\n            }\n            t(r, n), t(o, n), t(i, n), n.isIterable = a, n.isKeyed = u, n.isIndexed = s, n.isAssociative = l, n.isOrdered = c, n.Keyed = r, n.Indexed = o, n.Set = i;\n            var f = \"@@__IMMUTABLE_ITERABLE__@@\",\n                p = \"@@__IMMUTABLE_KEYED__@@\",\n                d = \"@@__IMMUTABLE_INDEXED__@@\",\n                h = \"@@__IMMUTABLE_ORDERED__@@\",\n                v = 5,\n                m = 1 << v,\n                g = m - 1,\n                y = {},\n                b = {\n                    value: !1\n                },\n                _ = {\n                    value: !1\n                };\n\n            function w(e) {\n                return e.value = !1, e\n            }\n\n            function E(e) {\n                e && (e.value = !0)\n            }\n\n            function x() {}\n\n            function S(e, t) {\n                t = t || 0;\n                for (var n = Math.max(0, e.length - t), r = new Array(n), o = 0; o < n; o++) r[o] = e[o + t];\n                return r\n            }\n\n            function C(e) {\n                return void 0 === e.size && (e.size = e.__iterate(A)), e.size\n            }\n\n            function k(e, t) {\n                if (\"number\" != typeof t) {\n                    var n = t >>> 0;\n                    if (\"\" + n !== t || 4294967295 === n) return NaN;\n                    t = n\n                }\n                return t < 0 ? C(e) + t : t\n            }\n\n            function A() {\n                return !0\n            }\n\n            function O(e, t, n) {\n                return (0 === e || void 0 !== n && e <= -n) && (void 0 === t || void 0 !== n && t >= n)\n            }\n\n            function P(e, t) {\n                return M(e, t, 0)\n            }\n\n            function T(e, t) {\n                return M(e, t, t)\n            }\n\n            function M(e, t, n) {\n                return void 0 === e ? n : e < 0 ? Math.max(0, t + e) : void 0 === t ? e : Math.min(t, e)\n            }\n            var I = 0,\n                j = 1,\n                N = 2,\n                R = \"function\" == typeof Symbol && Symbol.iterator,\n                D = \"@@iterator\",\n                L = R || D;\n\n            function U(e) {\n                this.next = e\n            }\n\n            function q(e, t, n, r) {\n                var o = 0 === e ? t : 1 === e ? n : [t, n];\n                return r ? r.value = o : r = {\n                    value: o,\n                    done: !1\n                }, r\n            }\n\n            function F() {\n                return {\n                    value: void 0,\n                    done: !0\n                }\n            }\n\n            function z(e) {\n                return !!H(e)\n            }\n\n            function B(e) {\n                return e && \"function\" == typeof e.next\n            }\n\n            function V(e) {\n                var t = H(e);\n                return t && t.call(e)\n            }\n\n            function H(e) {\n                var t = e && (R && e[R] || e[D]);\n                if (\"function\" == typeof t) return t\n            }\n\n            function W(e) {\n                return e && \"number\" == typeof e.length\n            }\n\n            function J(e) {\n                return null === e || void 0 === e ? ie() : a(e) ? e.toSeq() : function(e) {\n                    var t = se(e) || \"object\" == typeof e && new te(e);\n                    if (!t) throw new TypeError(\"Expected Array or iterable object of values, or keyed object: \" + e);\n                    return t\n                }(e)\n            }\n\n            function Y(e) {\n                return null === e || void 0 === e ? ie().toKeyedSeq() : a(e) ? u(e) ? e.toSeq() : e.fromEntrySeq() : ae(e)\n            }\n\n            function K(e) {\n                return null === e || void 0 === e ? ie() : a(e) ? u(e) ? e.entrySeq() : e.toIndexedSeq() : ue(e)\n            }\n\n            function G(e) {\n                return (null === e || void 0 === e ? ie() : a(e) ? u(e) ? e.entrySeq() : e : ue(e)).toSetSeq()\n            }\n            U.prototype.toString = function() {\n                return \"[Iterator]\"\n            }, U.KEYS = I, U.VALUES = j, U.ENTRIES = N, U.prototype.inspect = U.prototype.toSource = function() {\n                return this.toString()\n            }, U.prototype[L] = function() {\n                return this\n            }, t(J, n), J.of = function() {\n                return J(arguments)\n            }, J.prototype.toSeq = function() {\n                return this\n            }, J.prototype.toString = function() {\n                return this.__toString(\"Seq {\", \"}\")\n            }, J.prototype.cacheResult = function() {\n                return !this._cache && this.__iterateUncached && (this._cache = this.entrySeq().toArray(), this.size = this._cache.length), this\n            }, J.prototype.__iterate = function(e, t) {\n                return le(this, e, t, !0)\n            }, J.prototype.__iterator = function(e, t) {\n                return ce(this, e, t, !0)\n            }, t(Y, J), Y.prototype.toKeyedSeq = function() {\n                return this\n            }, t(K, J), K.of = function() {\n                return K(arguments)\n            }, K.prototype.toIndexedSeq = function() {\n                return this\n            }, K.prototype.toString = function() {\n                return this.__toString(\"Seq [\", \"]\")\n            }, K.prototype.__iterate = function(e, t) {\n                return le(this, e, t, !1)\n            }, K.prototype.__iterator = function(e, t) {\n                return ce(this, e, t, !1)\n            }, t(G, J), G.of = function() {\n                return G(arguments)\n            }, G.prototype.toSetSeq = function() {\n                return this\n            }, J.isSeq = oe, J.Keyed = Y, J.Set = G, J.Indexed = K;\n            var $, Z, X, Q = \"@@__IMMUTABLE_SEQ__@@\";\n\n            function ee(e) {\n                this._array = e, this.size = e.length\n            }\n\n            function te(e) {\n                var t = Object.keys(e);\n                this._object = e, this._keys = t, this.size = t.length\n            }\n\n            function ne(e) {\n                this._iterable = e, this.size = e.length || e.size\n            }\n\n            function re(e) {\n                this._iterator = e, this._iteratorCache = []\n            }\n\n            function oe(e) {\n                return !(!e || !e[Q])\n            }\n\n            function ie() {\n                return $ || ($ = new ee([]))\n            }\n\n            function ae(e) {\n                var t = Array.isArray(e) ? new ee(e).fromEntrySeq() : B(e) ? new re(e).fromEntrySeq() : z(e) ? new ne(e).fromEntrySeq() : \"object\" == typeof e ? new te(e) : void 0;\n                if (!t) throw new TypeError(\"Expected Array or iterable object of [k, v] entries, or keyed object: \" + e);\n                return t\n            }\n\n            function ue(e) {\n                var t = se(e);\n                if (!t) throw new TypeError(\"Expected Array or iterable object of values: \" + e);\n                return t\n            }\n\n            function se(e) {\n                return W(e) ? new ee(e) : B(e) ? new re(e) : z(e) ? new ne(e) : void 0\n            }\n\n            function le(e, t, n, r) {\n                var o = e._cache;\n                if (o) {\n                    for (var i = o.length - 1, a = 0; a <= i; a++) {\n                        var u = o[n ? i - a : a];\n                        if (!1 === t(u[1], r ? u[0] : a, e)) return a + 1\n                    }\n                    return a\n                }\n                return e.__iterateUncached(t, n)\n            }\n\n            function ce(e, t, n, r) {\n                var o = e._cache;\n                if (o) {\n                    var i = o.length - 1,\n                        a = 0;\n                    return new U(function() {\n                        var e = o[n ? i - a : a];\n                        return a++ > i ? {\n                            value: void 0,\n                            done: !0\n                        } : q(t, r ? e[0] : a - 1, e[1])\n                    })\n                }\n                return e.__iteratorUncached(t, n)\n            }\n\n            function fe(e, t) {\n                return t ? function e(t, n, r, o) {\n                    if (Array.isArray(n)) return t.call(o, r, K(n).map(function(r, o) {\n                        return e(t, r, o, n)\n                    }));\n                    if (de(n)) return t.call(o, r, Y(n).map(function(r, o) {\n                        return e(t, r, o, n)\n                    }));\n                    return n\n                }(t, e, \"\", {\n                    \"\": e\n                }) : pe(e)\n            }\n\n            function pe(e) {\n                return Array.isArray(e) ? K(e).map(pe).toList() : de(e) ? Y(e).map(pe).toMap() : e\n            }\n\n            function de(e) {\n                return e && (e.constructor === Object || void 0 === e.constructor)\n            }\n\n            function he(e, t) {\n                if (e === t || e != e && t != t) return !0;\n                if (!e || !t) return !1;\n                if (\"function\" == typeof e.valueOf && \"function\" == typeof t.valueOf) {\n                    if ((e = e.valueOf()) === (t = t.valueOf()) || e != e && t != t) return !0;\n                    if (!e || !t) return !1\n                }\n                return !(\"function\" != typeof e.equals || \"function\" != typeof t.equals || !e.equals(t))\n            }\n\n            function ve(e, t) {\n                if (e === t) return !0;\n                if (!a(t) || void 0 !== e.size && void 0 !== t.size && e.size !== t.size || void 0 !== e.__hash && void 0 !== t.__hash && e.__hash !== t.__hash || u(e) !== u(t) || s(e) !== s(t) || c(e) !== c(t)) return !1;\n                if (0 === e.size && 0 === t.size) return !0;\n                var n = !l(e);\n                if (c(e)) {\n                    var r = e.entries();\n                    return t.every(function(e, t) {\n                        var o = r.next().value;\n                        return o && he(o[1], e) && (n || he(o[0], t))\n                    }) && r.next().done\n                }\n                var o = !1;\n                if (void 0 === e.size)\n                    if (void 0 === t.size) \"function\" == typeof e.cacheResult && e.cacheResult();\n                    else {\n                        o = !0;\n                        var i = e;\n                        e = t, t = i\n                    }\n                var f = !0,\n                    p = t.__iterate(function(t, r) {\n                        if (n ? !e.has(t) : o ? !he(t, e.get(r, y)) : !he(e.get(r, y), t)) return f = !1, !1\n                    });\n                return f && e.size === p\n            }\n\n            function me(e, t) {\n                if (!(this instanceof me)) return new me(e, t);\n                if (this._value = e, this.size = void 0 === t ? 1 / 0 : Math.max(0, t), 0 === this.size) {\n                    if (Z) return Z;\n                    Z = this\n                }\n            }\n\n            function ge(e, t) {\n                if (!e) throw new Error(t)\n            }\n\n            function ye(e, t, n) {\n                if (!(this instanceof ye)) return new ye(e, t, n);\n                if (ge(0 !== n, \"Cannot step a Range by 0\"), e = e || 0, void 0 === t && (t = 1 / 0), n = void 0 === n ? 1 : Math.abs(n), t < e && (n = -n), this._start = e, this._end = t, this._step = n, this.size = Math.max(0, Math.ceil((t - e) / n - 1) + 1), 0 === this.size) {\n                    if (X) return X;\n                    X = this\n                }\n            }\n\n            function be() {\n                throw TypeError(\"Abstract\")\n            }\n\n            function _e() {}\n\n            function we() {}\n\n            function Ee() {}\n            J.prototype[Q] = !0, t(ee, K), ee.prototype.get = function(e, t) {\n                return this.has(e) ? this._array[k(this, e)] : t\n            }, ee.prototype.__iterate = function(e, t) {\n                for (var n = this._array, r = n.length - 1, o = 0; o <= r; o++)\n                    if (!1 === e(n[t ? r - o : o], o, this)) return o + 1;\n                return o\n            }, ee.prototype.__iterator = function(e, t) {\n                var n = this._array,\n                    r = n.length - 1,\n                    o = 0;\n                return new U(function() {\n                    return o > r ? {\n                        value: void 0,\n                        done: !0\n                    } : q(e, o, n[t ? r - o++ : o++])\n                })\n            }, t(te, Y), te.prototype.get = function(e, t) {\n                return void 0 === t || this.has(e) ? this._object[e] : t\n            }, te.prototype.has = function(e) {\n                return this._object.hasOwnProperty(e)\n            }, te.prototype.__iterate = function(e, t) {\n                for (var n = this._object, r = this._keys, o = r.length - 1, i = 0; i <= o; i++) {\n                    var a = r[t ? o - i : i];\n                    if (!1 === e(n[a], a, this)) return i + 1\n                }\n                return i\n            }, te.prototype.__iterator = function(e, t) {\n                var n = this._object,\n                    r = this._keys,\n                    o = r.length - 1,\n                    i = 0;\n                return new U(function() {\n                    var a = r[t ? o - i : i];\n                    return i++ > o ? {\n                        value: void 0,\n                        done: !0\n                    } : q(e, a, n[a])\n                })\n            }, te.prototype[h] = !0, t(ne, K), ne.prototype.__iterateUncached = function(e, t) {\n                if (t) return this.cacheResult().__iterate(e, t);\n                var n = V(this._iterable),\n                    r = 0;\n                if (B(n))\n                    for (var o; !(o = n.next()).done && !1 !== e(o.value, r++, this););\n                return r\n            }, ne.prototype.__iteratorUncached = function(e, t) {\n                if (t) return this.cacheResult().__iterator(e, t);\n                var n = V(this._iterable);\n                if (!B(n)) return new U(F);\n                var r = 0;\n                return new U(function() {\n                    var t = n.next();\n                    return t.done ? t : q(e, r++, t.value)\n                })\n            }, t(re, K), re.prototype.__iterateUncached = function(e, t) {\n                if (t) return this.cacheResult().__iterate(e, t);\n                for (var n, r = this._iterator, o = this._iteratorCache, i = 0; i < o.length;)\n                    if (!1 === e(o[i], i++, this)) return i;\n                for (; !(n = r.next()).done;) {\n                    var a = n.value;\n                    if (o[i] = a, !1 === e(a, i++, this)) break\n                }\n                return i\n            }, re.prototype.__iteratorUncached = function(e, t) {\n                if (t) return this.cacheResult().__iterator(e, t);\n                var n = this._iterator,\n                    r = this._iteratorCache,\n                    o = 0;\n                return new U(function() {\n                    if (o >= r.length) {\n                        var t = n.next();\n                        if (t.done) return t;\n                        r[o] = t.value\n                    }\n                    return q(e, o, r[o++])\n                })\n            }, t(me, K), me.prototype.toString = function() {\n                return 0 === this.size ? \"Repeat []\" : \"Repeat [ \" + this._value + \" \" + this.size + \" times ]\"\n            }, me.prototype.get = function(e, t) {\n                return this.has(e) ? this._value : t\n            }, me.prototype.includes = function(e) {\n                return he(this._value, e)\n            }, me.prototype.slice = function(e, t) {\n                var n = this.size;\n                return O(e, t, n) ? this : new me(this._value, T(t, n) - P(e, n))\n            }, me.prototype.reverse = function() {\n                return this\n            }, me.prototype.indexOf = function(e) {\n                return he(this._value, e) ? 0 : -1\n            }, me.prototype.lastIndexOf = function(e) {\n                return he(this._value, e) ? this.size : -1\n            }, me.prototype.__iterate = function(e, t) {\n                for (var n = 0; n < this.size; n++)\n                    if (!1 === e(this._value, n, this)) return n + 1;\n                return n\n            }, me.prototype.__iterator = function(e, t) {\n                var n = this,\n                    r = 0;\n                return new U(function() {\n                    return r < n.size ? q(e, r++, n._value) : {\n                        value: void 0,\n                        done: !0\n                    }\n                })\n            }, me.prototype.equals = function(e) {\n                return e instanceof me ? he(this._value, e._value) : ve(e)\n            }, t(ye, K), ye.prototype.toString = function() {\n                return 0 === this.size ? \"Range []\" : \"Range [ \" + this._start + \"...\" + this._end + (1 !== this._step ? \" by \" + this._step : \"\") + \" ]\"\n            }, ye.prototype.get = function(e, t) {\n                return this.has(e) ? this._start + k(this, e) * this._step : t\n            }, ye.prototype.includes = function(e) {\n                var t = (e - this._start) / this._step;\n                return t >= 0 && t < this.size && t === Math.floor(t)\n            }, ye.prototype.slice = function(e, t) {\n                return O(e, t, this.size) ? this : (e = P(e, this.size), (t = T(t, this.size)) <= e ? new ye(0, 0) : new ye(this.get(e, this._end), this.get(t, this._end), this._step))\n            }, ye.prototype.indexOf = function(e) {\n                var t = e - this._start;\n                if (t % this._step == 0) {\n                    var n = t / this._step;\n                    if (n >= 0 && n < this.size) return n\n                }\n                return -1\n            }, ye.prototype.lastIndexOf = function(e) {\n                return this.indexOf(e)\n            }, ye.prototype.__iterate = function(e, t) {\n                for (var n = this.size - 1, r = this._step, o = t ? this._start + n * r : this._start, i = 0; i <= n; i++) {\n                    if (!1 === e(o, i, this)) return i + 1;\n                    o += t ? -r : r\n                }\n                return i\n            }, ye.prototype.__iterator = function(e, t) {\n                var n = this.size - 1,\n                    r = this._step,\n                    o = t ? this._start + n * r : this._start,\n                    i = 0;\n                return new U(function() {\n                    var a = o;\n                    return o += t ? -r : r, i > n ? {\n                        value: void 0,\n                        done: !0\n                    } : q(e, i++, a)\n                })\n            }, ye.prototype.equals = function(e) {\n                return e instanceof ye ? this._start === e._start && this._end === e._end && this._step === e._step : ve(this, e)\n            }, t(be, n), t(_e, be), t(we, be), t(Ee, be), be.Keyed = _e, be.Indexed = we, be.Set = Ee;\n            var xe = \"function\" == typeof Math.imul && -2 === Math.imul(4294967295, 2) ? Math.imul : function(e, t) {\n                var n = 65535 & (e |= 0),\n                    r = 65535 & (t |= 0);\n                return n * r + ((e >>> 16) * r + n * (t >>> 16) << 16 >>> 0) | 0\n            };\n\n            function Se(e) {\n                return e >>> 1 & 1073741824 | 3221225471 & e\n            }\n\n            function Ce(e) {\n                if (!1 === e || null === e || void 0 === e) return 0;\n                if (\"function\" == typeof e.valueOf && (!1 === (e = e.valueOf()) || null === e || void 0 === e)) return 0;\n                if (!0 === e) return 1;\n                var t = typeof e;\n                if (\"number\" === t) {\n                    if (e != e || e === 1 / 0) return 0;\n                    var n = 0 | e;\n                    for (n !== e && (n ^= 4294967295 * e); e > 4294967295;) n ^= e /= 4294967295;\n                    return Se(n)\n                }\n                if (\"string\" === t) return e.length > je ? function(e) {\n                    var t = De[e];\n                    void 0 === t && (t = ke(e), Re === Ne && (Re = 0, De = {}), Re++, De[e] = t);\n                    return t\n                }(e) : ke(e);\n                if (\"function\" == typeof e.hashCode) return e.hashCode();\n                if (\"object\" === t) return function(e) {\n                    var t;\n                    if (Te && void 0 !== (t = Pe.get(e))) return t;\n                    if (void 0 !== (t = e[Ie])) return t;\n                    if (!Oe) {\n                        if (void 0 !== (t = e.propertyIsEnumerable && e.propertyIsEnumerable[Ie])) return t;\n                        if (void 0 !== (t = function(e) {\n                            if (e && e.nodeType > 0) switch (e.nodeType) {\n                                case 1:\n                                    return e.uniqueID;\n                                case 9:\n                                    return e.documentElement && e.documentElement.uniqueID\n                            }\n                        }(e))) return t\n                    }\n                    t = ++Me, 1073741824 & Me && (Me = 0);\n                    if (Te) Pe.set(e, t);\n                    else {\n                        if (void 0 !== Ae && !1 === Ae(e)) throw new Error(\"Non-extensible objects are not allowed as keys.\");\n                        if (Oe) Object.defineProperty(e, Ie, {\n                            enumerable: !1,\n                            configurable: !1,\n                            writable: !1,\n                            value: t\n                        });\n                        else if (void 0 !== e.propertyIsEnumerable && e.propertyIsEnumerable === e.constructor.prototype.propertyIsEnumerable) e.propertyIsEnumerable = function() {\n                            return this.constructor.prototype.propertyIsEnumerable.apply(this, arguments)\n                        }, e.propertyIsEnumerable[Ie] = t;\n                        else {\n                            if (void 0 === e.nodeType) throw new Error(\"Unable to set a non-enumerable property on object.\");\n                            e[Ie] = t\n                        }\n                    }\n                    return t\n                }(e);\n                if (\"function\" == typeof e.toString) return ke(e.toString());\n                throw new Error(\"Value type \" + t + \" cannot be hashed.\")\n            }\n\n            function ke(e) {\n                for (var t = 0, n = 0; n < e.length; n++) t = 31 * t + e.charCodeAt(n) | 0;\n                return Se(t)\n            }\n            var Ae = Object.isExtensible,\n                Oe = function() {\n                    try {\n                        return Object.defineProperty({}, \"@\", {}), !0\n                    } catch (e) {\n                        return !1\n                    }\n                }();\n            var Pe, Te = \"function\" == typeof WeakMap;\n            Te && (Pe = new WeakMap);\n            var Me = 0,\n                Ie = \"__immutablehash__\";\n            \"function\" == typeof Symbol && (Ie = Symbol(Ie));\n            var je = 16,\n                Ne = 255,\n                Re = 0,\n                De = {};\n\n            function Le(e) {\n                ge(e !== 1 / 0, \"Cannot perform this action with an infinite size.\")\n            }\n\n            function Ue(e) {\n                return null === e || void 0 === e ? Xe() : qe(e) && !c(e) ? e : Xe().withMutations(function(t) {\n                    var n = r(e);\n                    Le(n.size), n.forEach(function(e, n) {\n                        return t.set(n, e)\n                    })\n                })\n            }\n\n            function qe(e) {\n                return !(!e || !e[ze])\n            }\n            t(Ue, _e), Ue.of = function() {\n                var t = e.call(arguments, 0);\n                return Xe().withMutations(function(e) {\n                    for (var n = 0; n < t.length; n += 2) {\n                        if (n + 1 >= t.length) throw new Error(\"Missing value for key: \" + t[n]);\n                        e.set(t[n], t[n + 1])\n                    }\n                })\n            }, Ue.prototype.toString = function() {\n                return this.__toString(\"Map {\", \"}\")\n            }, Ue.prototype.get = function(e, t) {\n                return this._root ? this._root.get(0, void 0, e, t) : t\n            }, Ue.prototype.set = function(e, t) {\n                return Qe(this, e, t)\n            }, Ue.prototype.setIn = function(e, t) {\n                return this.updateIn(e, y, function() {\n                    return t\n                })\n            }, Ue.prototype.remove = function(e) {\n                return Qe(this, e, y)\n            }, Ue.prototype.deleteIn = function(e) {\n                return this.updateIn(e, function() {\n                    return y\n                })\n            }, Ue.prototype.update = function(e, t, n) {\n                return 1 === arguments.length ? e(this) : this.updateIn([e], t, n)\n            }, Ue.prototype.updateIn = function(e, t, n) {\n                n || (n = t, t = void 0);\n                var r = function e(t, n, r, o) {\n                    var i = t === y;\n                    var a = n.next();\n                    if (a.done) {\n                        var u = i ? r : t,\n                            s = o(u);\n                        return s === u ? t : s\n                    }\n                    ge(i || t && t.set, \"invalid keyPath\");\n                    var l = a.value;\n                    var c = i ? y : t.get(l, y);\n                    var f = e(c, n, r, o);\n                    return f === c ? t : f === y ? t.remove(l) : (i ? Xe() : t).set(l, f)\n                }(this, nn(e), t, n);\n                return r === y ? void 0 : r\n            }, Ue.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = 0, this._root = null, this.__hash = void 0, this.__altered = !0, this) : Xe()\n            }, Ue.prototype.merge = function() {\n                return rt(this, void 0, arguments)\n            }, Ue.prototype.mergeWith = function(t) {\n                return rt(this, t, e.call(arguments, 1))\n            }, Ue.prototype.mergeIn = function(t) {\n                var n = e.call(arguments, 1);\n                return this.updateIn(t, Xe(), function(e) {\n                    return \"function\" == typeof e.merge ? e.merge.apply(e, n) : n[n.length - 1]\n                })\n            }, Ue.prototype.mergeDeep = function() {\n                return rt(this, ot, arguments)\n            }, Ue.prototype.mergeDeepWith = function(t) {\n                var n = e.call(arguments, 1);\n                return rt(this, it(t), n)\n            }, Ue.prototype.mergeDeepIn = function(t) {\n                var n = e.call(arguments, 1);\n                return this.updateIn(t, Xe(), function(e) {\n                    return \"function\" == typeof e.mergeDeep ? e.mergeDeep.apply(e, n) : n[n.length - 1]\n                })\n            }, Ue.prototype.sort = function(e) {\n                return Pt(Wt(this, e))\n            }, Ue.prototype.sortBy = function(e, t) {\n                return Pt(Wt(this, t, e))\n            }, Ue.prototype.withMutations = function(e) {\n                var t = this.asMutable();\n                return e(t), t.wasAltered() ? t.__ensureOwner(this.__ownerID) : this\n            }, Ue.prototype.asMutable = function() {\n                return this.__ownerID ? this : this.__ensureOwner(new x)\n            }, Ue.prototype.asImmutable = function() {\n                return this.__ensureOwner()\n            }, Ue.prototype.wasAltered = function() {\n                return this.__altered\n            }, Ue.prototype.__iterator = function(e, t) {\n                return new Ke(this, e, t)\n            }, Ue.prototype.__iterate = function(e, t) {\n                var n = this,\n                    r = 0;\n                return this._root && this._root.iterate(function(t) {\n                    return r++, e(t[1], t[0], n)\n                }, t), r\n            }, Ue.prototype.__ensureOwner = function(e) {\n                return e === this.__ownerID ? this : e ? Ze(this.size, this._root, e, this.__hash) : (this.__ownerID = e, this.__altered = !1, this)\n            }, Ue.isMap = qe;\n            var Fe, ze = \"@@__IMMUTABLE_MAP__@@\",\n                Be = Ue.prototype;\n\n            function Ve(e, t) {\n                this.ownerID = e, this.entries = t\n            }\n\n            function He(e, t, n) {\n                this.ownerID = e, this.bitmap = t, this.nodes = n\n            }\n\n            function We(e, t, n) {\n                this.ownerID = e, this.count = t, this.nodes = n\n            }\n\n            function Je(e, t, n) {\n                this.ownerID = e, this.keyHash = t, this.entries = n\n            }\n\n            function Ye(e, t, n) {\n                this.ownerID = e, this.keyHash = t, this.entry = n\n            }\n\n            function Ke(e, t, n) {\n                this._type = t, this._reverse = n, this._stack = e._root && $e(e._root)\n            }\n\n            function Ge(e, t) {\n                return q(e, t[0], t[1])\n            }\n\n            function $e(e, t) {\n                return {\n                    node: e,\n                    index: 0,\n                    __prev: t\n                }\n            }\n\n            function Ze(e, t, n, r) {\n                var o = Object.create(Be);\n                return o.size = e, o._root = t, o.__ownerID = n, o.__hash = r, o.__altered = !1, o\n            }\n\n            function Xe() {\n                return Fe || (Fe = Ze(0))\n            }\n\n            function Qe(e, t, n) {\n                var r, o;\n                if (e._root) {\n                    var i = w(b),\n                        a = w(_);\n                    if (r = et(e._root, e.__ownerID, 0, void 0, t, n, i, a), !a.value) return e;\n                    o = e.size + (i.value ? n === y ? -1 : 1 : 0)\n                } else {\n                    if (n === y) return e;\n                    o = 1, r = new Ve(e.__ownerID, [\n                        [t, n]\n                    ])\n                }\n                return e.__ownerID ? (e.size = o, e._root = r, e.__hash = void 0, e.__altered = !0, e) : r ? Ze(o, r) : Xe()\n            }\n\n            function et(e, t, n, r, o, i, a, u) {\n                return e ? e.update(t, n, r, o, i, a, u) : i === y ? e : (E(u), E(a), new Ye(t, r, [o, i]))\n            }\n\n            function tt(e) {\n                return e.constructor === Ye || e.constructor === Je\n            }\n\n            function nt(e, t, n, r, o) {\n                if (e.keyHash === r) return new Je(t, r, [e.entry, o]);\n                var i, a = (0 === n ? e.keyHash : e.keyHash >>> n) & g,\n                    u = (0 === n ? r : r >>> n) & g;\n                return new He(t, 1 << a | 1 << u, a === u ? [nt(e, t, n + v, r, o)] : (i = new Ye(t, r, o), a < u ? [e, i] : [i, e]))\n            }\n\n            function rt(e, t, n) {\n                for (var o = [], i = 0; i < n.length; i++) {\n                    var u = n[i],\n                        s = r(u);\n                    a(u) || (s = s.map(function(e) {\n                        return fe(e)\n                    })), o.push(s)\n                }\n                return at(e, t, o)\n            }\n\n            function ot(e, t, n) {\n                return e && e.mergeDeep && a(t) ? e.mergeDeep(t) : he(e, t) ? e : t\n            }\n\n            function it(e) {\n                return function(t, n, r) {\n                    if (t && t.mergeDeepWith && a(n)) return t.mergeDeepWith(e, n);\n                    var o = e(t, n, r);\n                    return he(t, o) ? t : o\n                }\n            }\n\n            function at(e, t, n) {\n                return 0 === (n = n.filter(function(e) {\n                    return 0 !== e.size\n                })).length ? e : 0 !== e.size || e.__ownerID || 1 !== n.length ? e.withMutations(function(e) {\n                    for (var r = t ? function(n, r) {\n                        e.update(r, y, function(e) {\n                            return e === y ? n : t(e, n, r)\n                        })\n                    } : function(t, n) {\n                        e.set(n, t)\n                    }, o = 0; o < n.length; o++) n[o].forEach(r)\n                }) : e.constructor(n[0])\n            }\n\n            function ut(e) {\n                return e = (e = (858993459 & (e -= e >> 1 & 1431655765)) + (e >> 2 & 858993459)) + (e >> 4) & 252645135, e += e >> 8, 127 & (e += e >> 16)\n            }\n\n            function st(e, t, n, r) {\n                var o = r ? e : S(e);\n                return o[t] = n, o\n            }\n            Be[ze] = !0, Be.delete = Be.remove, Be.removeIn = Be.deleteIn, Ve.prototype.get = function(e, t, n, r) {\n                for (var o = this.entries, i = 0, a = o.length; i < a; i++)\n                    if (he(n, o[i][0])) return o[i][1];\n                return r\n            }, Ve.prototype.update = function(e, t, n, r, o, i, a) {\n                for (var u = o === y, s = this.entries, l = 0, c = s.length; l < c && !he(r, s[l][0]); l++);\n                var f = l < c;\n                if (f ? s[l][1] === o : u) return this;\n                if (E(a), (u || !f) && E(i), !u || 1 !== s.length) {\n                    if (!f && !u && s.length >= lt) return function(e, t, n, r) {\n                        e || (e = new x);\n                        for (var o = new Ye(e, Ce(n), [n, r]), i = 0; i < t.length; i++) {\n                            var a = t[i];\n                            o = o.update(e, 0, void 0, a[0], a[1])\n                        }\n                        return o\n                    }(e, s, r, o);\n                    var p = e && e === this.ownerID,\n                        d = p ? s : S(s);\n                    return f ? u ? l === c - 1 ? d.pop() : d[l] = d.pop() : d[l] = [r, o] : d.push([r, o]), p ? (this.entries = d, this) : new Ve(e, d)\n                }\n            }, He.prototype.get = function(e, t, n, r) {\n                void 0 === t && (t = Ce(n));\n                var o = 1 << ((0 === e ? t : t >>> e) & g),\n                    i = this.bitmap;\n                return 0 == (i & o) ? r : this.nodes[ut(i & o - 1)].get(e + v, t, n, r)\n            }, He.prototype.update = function(e, t, n, r, o, i, a) {\n                void 0 === n && (n = Ce(r));\n                var u = (0 === t ? n : n >>> t) & g,\n                    s = 1 << u,\n                    l = this.bitmap,\n                    c = 0 != (l & s);\n                if (!c && o === y) return this;\n                var f = ut(l & s - 1),\n                    p = this.nodes,\n                    d = c ? p[f] : void 0,\n                    h = et(d, e, t + v, n, r, o, i, a);\n                if (h === d) return this;\n                if (!c && h && p.length >= ct) return function(e, t, n, r, o) {\n                    for (var i = 0, a = new Array(m), u = 0; 0 !== n; u++, n >>>= 1) a[u] = 1 & n ? t[i++] : void 0;\n                    return a[r] = o, new We(e, i + 1, a)\n                }(e, p, l, u, h);\n                if (c && !h && 2 === p.length && tt(p[1 ^ f])) return p[1 ^ f];\n                if (c && h && 1 === p.length && tt(h)) return h;\n                var b = e && e === this.ownerID,\n                    _ = c ? h ? l : l ^ s : l | s,\n                    w = c ? h ? st(p, f, h, b) : function(e, t, n) {\n                        var r = e.length - 1;\n                        if (n && t === r) return e.pop(), e;\n                        for (var o = new Array(r), i = 0, a = 0; a < r; a++) a === t && (i = 1), o[a] = e[a + i];\n                        return o\n                    }(p, f, b) : function(e, t, n, r) {\n                        var o = e.length + 1;\n                        if (r && t + 1 === o) return e[t] = n, e;\n                        for (var i = new Array(o), a = 0, u = 0; u < o; u++) u === t ? (i[u] = n, a = -1) : i[u] = e[u + a];\n                        return i\n                    }(p, f, h, b);\n                return b ? (this.bitmap = _, this.nodes = w, this) : new He(e, _, w)\n            }, We.prototype.get = function(e, t, n, r) {\n                void 0 === t && (t = Ce(n));\n                var o = (0 === e ? t : t >>> e) & g,\n                    i = this.nodes[o];\n                return i ? i.get(e + v, t, n, r) : r\n            }, We.prototype.update = function(e, t, n, r, o, i, a) {\n                void 0 === n && (n = Ce(r));\n                var u = (0 === t ? n : n >>> t) & g,\n                    s = o === y,\n                    l = this.nodes,\n                    c = l[u];\n                if (s && !c) return this;\n                var f = et(c, e, t + v, n, r, o, i, a);\n                if (f === c) return this;\n                var p = this.count;\n                if (c) {\n                    if (!f && --p < ft) return function(e, t, n, r) {\n                        for (var o = 0, i = 0, a = new Array(n), u = 0, s = 1, l = t.length; u < l; u++, s <<= 1) {\n                            var c = t[u];\n                            void 0 !== c && u !== r && (o |= s, a[i++] = c)\n                        }\n                        return new He(e, o, a)\n                    }(e, l, p, u)\n                } else p++;\n                var d = e && e === this.ownerID,\n                    h = st(l, u, f, d);\n                return d ? (this.count = p, this.nodes = h, this) : new We(e, p, h)\n            }, Je.prototype.get = function(e, t, n, r) {\n                for (var o = this.entries, i = 0, a = o.length; i < a; i++)\n                    if (he(n, o[i][0])) return o[i][1];\n                return r\n            }, Je.prototype.update = function(e, t, n, r, o, i, a) {\n                void 0 === n && (n = Ce(r));\n                var u = o === y;\n                if (n !== this.keyHash) return u ? this : (E(a), E(i), nt(this, e, t, n, [r, o]));\n                for (var s = this.entries, l = 0, c = s.length; l < c && !he(r, s[l][0]); l++);\n                var f = l < c;\n                if (f ? s[l][1] === o : u) return this;\n                if (E(a), (u || !f) && E(i), u && 2 === c) return new Ye(e, this.keyHash, s[1 ^ l]);\n                var p = e && e === this.ownerID,\n                    d = p ? s : S(s);\n                return f ? u ? l === c - 1 ? d.pop() : d[l] = d.pop() : d[l] = [r, o] : d.push([r, o]), p ? (this.entries = d, this) : new Je(e, this.keyHash, d)\n            }, Ye.prototype.get = function(e, t, n, r) {\n                return he(n, this.entry[0]) ? this.entry[1] : r\n            }, Ye.prototype.update = function(e, t, n, r, o, i, a) {\n                var u = o === y,\n                    s = he(r, this.entry[0]);\n                return (s ? o === this.entry[1] : u) ? this : (E(a), u ? void E(i) : s ? e && e === this.ownerID ? (this.entry[1] = o, this) : new Ye(e, this.keyHash, [r, o]) : (E(i), nt(this, e, t, Ce(r), [r, o])))\n            }, Ve.prototype.iterate = Je.prototype.iterate = function(e, t) {\n                for (var n = this.entries, r = 0, o = n.length - 1; r <= o; r++)\n                    if (!1 === e(n[t ? o - r : r])) return !1\n            }, He.prototype.iterate = We.prototype.iterate = function(e, t) {\n                for (var n = this.nodes, r = 0, o = n.length - 1; r <= o; r++) {\n                    var i = n[t ? o - r : r];\n                    if (i && !1 === i.iterate(e, t)) return !1\n                }\n            }, Ye.prototype.iterate = function(e, t) {\n                return e(this.entry)\n            }, t(Ke, U), Ke.prototype.next = function() {\n                for (var e = this._type, t = this._stack; t;) {\n                    var n, r = t.node,\n                        o = t.index++;\n                    if (r.entry) {\n                        if (0 === o) return Ge(e, r.entry)\n                    } else if (r.entries) {\n                        if (o <= (n = r.entries.length - 1)) return Ge(e, r.entries[this._reverse ? n - o : o])\n                    } else if (o <= (n = r.nodes.length - 1)) {\n                        var i = r.nodes[this._reverse ? n - o : o];\n                        if (i) {\n                            if (i.entry) return Ge(e, i.entry);\n                            t = this._stack = $e(i, t)\n                        }\n                        continue\n                    }\n                    t = this._stack = this._stack.__prev\n                }\n                return {\n                    value: void 0,\n                    done: !0\n                }\n            };\n            var lt = m / 4,\n                ct = m / 2,\n                ft = m / 4;\n\n            function pt(e) {\n                var t = Et();\n                if (null === e || void 0 === e) return t;\n                if (dt(e)) return e;\n                var n = o(e),\n                    r = n.size;\n                return 0 === r ? t : (Le(r), r > 0 && r < m ? wt(0, r, v, null, new mt(n.toArray())) : t.withMutations(function(e) {\n                    e.setSize(r), n.forEach(function(t, n) {\n                        return e.set(n, t)\n                    })\n                }))\n            }\n\n            function dt(e) {\n                return !(!e || !e[ht])\n            }\n            t(pt, we), pt.of = function() {\n                return this(arguments)\n            }, pt.prototype.toString = function() {\n                return this.__toString(\"List [\", \"]\")\n            }, pt.prototype.get = function(e, t) {\n                if ((e = k(this, e)) >= 0 && e < this.size) {\n                    var n = Ct(this, e += this._origin);\n                    return n && n.array[e & g]\n                }\n                return t\n            }, pt.prototype.set = function(e, t) {\n                return function(e, t, n) {\n                    if ((t = k(e, t)) != t) return e;\n                    if (t >= e.size || t < 0) return e.withMutations(function(e) {\n                        t < 0 ? kt(e, t).set(0, n) : kt(e, 0, t + 1).set(t, n)\n                    });\n                    t += e._origin;\n                    var r = e._tail,\n                        o = e._root,\n                        i = w(_);\n                    t >= Ot(e._capacity) ? r = xt(r, e.__ownerID, 0, t, n, i) : o = xt(o, e.__ownerID, e._level, t, n, i);\n                    if (!i.value) return e;\n                    if (e.__ownerID) return e._root = o, e._tail = r, e.__hash = void 0, e.__altered = !0, e;\n                    return wt(e._origin, e._capacity, e._level, o, r)\n                }(this, e, t)\n            }, pt.prototype.remove = function(e) {\n                return this.has(e) ? 0 === e ? this.shift() : e === this.size - 1 ? this.pop() : this.splice(e, 1) : this\n            }, pt.prototype.insert = function(e, t) {\n                return this.splice(e, 0, t)\n            }, pt.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = this._origin = this._capacity = 0, this._level = v, this._root = this._tail = null, this.__hash = void 0, this.__altered = !0, this) : Et()\n            }, pt.prototype.push = function() {\n                var e = arguments,\n                    t = this.size;\n                return this.withMutations(function(n) {\n                    kt(n, 0, t + e.length);\n                    for (var r = 0; r < e.length; r++) n.set(t + r, e[r])\n                })\n            }, pt.prototype.pop = function() {\n                return kt(this, 0, -1)\n            }, pt.prototype.unshift = function() {\n                var e = arguments;\n                return this.withMutations(function(t) {\n                    kt(t, -e.length);\n                    for (var n = 0; n < e.length; n++) t.set(n, e[n])\n                })\n            }, pt.prototype.shift = function() {\n                return kt(this, 1)\n            }, pt.prototype.merge = function() {\n                return At(this, void 0, arguments)\n            }, pt.prototype.mergeWith = function(t) {\n                return At(this, t, e.call(arguments, 1))\n            }, pt.prototype.mergeDeep = function() {\n                return At(this, ot, arguments)\n            }, pt.prototype.mergeDeepWith = function(t) {\n                var n = e.call(arguments, 1);\n                return At(this, it(t), n)\n            }, pt.prototype.setSize = function(e) {\n                return kt(this, 0, e)\n            }, pt.prototype.slice = function(e, t) {\n                var n = this.size;\n                return O(e, t, n) ? this : kt(this, P(e, n), T(t, n))\n            }, pt.prototype.__iterator = function(e, t) {\n                var n = 0,\n                    r = _t(this, t);\n                return new U(function() {\n                    var t = r();\n                    return t === bt ? {\n                        value: void 0,\n                        done: !0\n                    } : q(e, n++, t)\n                })\n            }, pt.prototype.__iterate = function(e, t) {\n                for (var n, r = 0, o = _t(this, t);\n                     (n = o()) !== bt && !1 !== e(n, r++, this););\n                return r\n            }, pt.prototype.__ensureOwner = function(e) {\n                return e === this.__ownerID ? this : e ? wt(this._origin, this._capacity, this._level, this._root, this._tail, e, this.__hash) : (this.__ownerID = e, this)\n            }, pt.isList = dt;\n            var ht = \"@@__IMMUTABLE_LIST__@@\",\n                vt = pt.prototype;\n\n            function mt(e, t) {\n                this.array = e, this.ownerID = t\n            }\n            vt[ht] = !0, vt.delete = vt.remove, vt.setIn = Be.setIn, vt.deleteIn = vt.removeIn = Be.removeIn, vt.update = Be.update, vt.updateIn = Be.updateIn, vt.mergeIn = Be.mergeIn, vt.mergeDeepIn = Be.mergeDeepIn, vt.withMutations = Be.withMutations, vt.asMutable = Be.asMutable, vt.asImmutable = Be.asImmutable, vt.wasAltered = Be.wasAltered, mt.prototype.removeBefore = function(e, t, n) {\n                if (n === t ? 1 << t : 0 === this.array.length) return this;\n                var r = n >>> t & g;\n                if (r >= this.array.length) return new mt([], e);\n                var o, i = 0 === r;\n                if (t > 0) {\n                    var a = this.array[r];\n                    if ((o = a && a.removeBefore(e, t - v, n)) === a && i) return this\n                }\n                if (i && !o) return this;\n                var u = St(this, e);\n                if (!i)\n                    for (var s = 0; s < r; s++) u.array[s] = void 0;\n                return o && (u.array[r] = o), u\n            }, mt.prototype.removeAfter = function(e, t, n) {\n                if (n === (t ? 1 << t : 0) || 0 === this.array.length) return this;\n                var r, o = n - 1 >>> t & g;\n                if (o >= this.array.length) return this;\n                if (t > 0) {\n                    var i = this.array[o];\n                    if ((r = i && i.removeAfter(e, t - v, n)) === i && o === this.array.length - 1) return this\n                }\n                var a = St(this, e);\n                return a.array.splice(o + 1), r && (a.array[o] = r), a\n            };\n            var gt, yt, bt = {};\n\n            function _t(e, t) {\n                var n = e._origin,\n                    r = e._capacity,\n                    o = Ot(r),\n                    i = e._tail;\n                return a(e._root, e._level, 0);\n\n                function a(e, u, s) {\n                    return 0 === u ? function(e, a) {\n                        var u = a === o ? i && i.array : e && e.array,\n                            s = a > n ? 0 : n - a,\n                            l = r - a;\n                        l > m && (l = m);\n                        return function() {\n                            if (s === l) return bt;\n                            var e = t ? --l : s++;\n                            return u && u[e]\n                        }\n                    }(e, s) : function(e, o, i) {\n                        var u, s = e && e.array,\n                            l = i > n ? 0 : n - i >> o,\n                            c = 1 + (r - i >> o);\n                        c > m && (c = m);\n                        return function() {\n                            for (;;) {\n                                if (u) {\n                                    var e = u();\n                                    if (e !== bt) return e;\n                                    u = null\n                                }\n                                if (l === c) return bt;\n                                var n = t ? --c : l++;\n                                u = a(s && s[n], o - v, i + (n << o))\n                            }\n                        }\n                    }(e, u, s)\n                }\n            }\n\n            function wt(e, t, n, r, o, i, a) {\n                var u = Object.create(vt);\n                return u.size = t - e, u._origin = e, u._capacity = t, u._level = n, u._root = r, u._tail = o, u.__ownerID = i, u.__hash = a, u.__altered = !1, u\n            }\n\n            function Et() {\n                return gt || (gt = wt(0, 0, v))\n            }\n\n            function xt(e, t, n, r, o, i) {\n                var a, u = r >>> n & g,\n                    s = e && u < e.array.length;\n                if (!s && void 0 === o) return e;\n                if (n > 0) {\n                    var l = e && e.array[u],\n                        c = xt(l, t, n - v, r, o, i);\n                    return c === l ? e : ((a = St(e, t)).array[u] = c, a)\n                }\n                return s && e.array[u] === o ? e : (E(i), a = St(e, t), void 0 === o && u === a.array.length - 1 ? a.array.pop() : a.array[u] = o, a)\n            }\n\n            function St(e, t) {\n                return t && e && t === e.ownerID ? e : new mt(e ? e.array.slice() : [], t)\n            }\n\n            function Ct(e, t) {\n                if (t >= Ot(e._capacity)) return e._tail;\n                if (t < 1 << e._level + v) {\n                    for (var n = e._root, r = e._level; n && r > 0;) n = n.array[t >>> r & g], r -= v;\n                    return n\n                }\n            }\n\n            function kt(e, t, n) {\n                void 0 !== t && (t |= 0), void 0 !== n && (n |= 0);\n                var r = e.__ownerID || new x,\n                    o = e._origin,\n                    i = e._capacity,\n                    a = o + t,\n                    u = void 0 === n ? i : n < 0 ? i + n : o + n;\n                if (a === o && u === i) return e;\n                if (a >= u) return e.clear();\n                for (var s = e._level, l = e._root, c = 0; a + c < 0;) l = new mt(l && l.array.length ? [void 0, l] : [], r), c += 1 << (s += v);\n                c && (a += c, o += c, u += c, i += c);\n                for (var f = Ot(i), p = Ot(u); p >= 1 << s + v;) l = new mt(l && l.array.length ? [l] : [], r), s += v;\n                var d = e._tail,\n                    h = p < f ? Ct(e, u - 1) : p > f ? new mt([], r) : d;\n                if (d && p > f && a < i && d.array.length) {\n                    for (var m = l = St(l, r), y = s; y > v; y -= v) {\n                        var b = f >>> y & g;\n                        m = m.array[b] = St(m.array[b], r)\n                    }\n                    m.array[f >>> v & g] = d\n                }\n                if (u < i && (h = h && h.removeAfter(r, 0, u)), a >= p) a -= p, u -= p, s = v, l = null, h = h && h.removeBefore(r, 0, a);\n                else if (a > o || p < f) {\n                    for (c = 0; l;) {\n                        var _ = a >>> s & g;\n                        if (_ !== p >>> s & g) break;\n                        _ && (c += (1 << s) * _), s -= v, l = l.array[_]\n                    }\n                    l && a > o && (l = l.removeBefore(r, s, a - c)), l && p < f && (l = l.removeAfter(r, s, p - c)), c && (a -= c, u -= c)\n                }\n                return e.__ownerID ? (e.size = u - a, e._origin = a, e._capacity = u, e._level = s, e._root = l, e._tail = h, e.__hash = void 0, e.__altered = !0, e) : wt(a, u, s, l, h)\n            }\n\n            function At(e, t, n) {\n                for (var r = [], i = 0, u = 0; u < n.length; u++) {\n                    var s = n[u],\n                        l = o(s);\n                    l.size > i && (i = l.size), a(s) || (l = l.map(function(e) {\n                        return fe(e)\n                    })), r.push(l)\n                }\n                return i > e.size && (e = e.setSize(i)), at(e, t, r)\n            }\n\n            function Ot(e) {\n                return e < m ? 0 : e - 1 >>> v << v\n            }\n\n            function Pt(e) {\n                return null === e || void 0 === e ? It() : Tt(e) ? e : It().withMutations(function(t) {\n                    var n = r(e);\n                    Le(n.size), n.forEach(function(e, n) {\n                        return t.set(n, e)\n                    })\n                })\n            }\n\n            function Tt(e) {\n                return qe(e) && c(e)\n            }\n\n            function Mt(e, t, n, r) {\n                var o = Object.create(Pt.prototype);\n                return o.size = e ? e.size : 0, o._map = e, o._list = t, o.__ownerID = n, o.__hash = r, o\n            }\n\n            function It() {\n                return yt || (yt = Mt(Xe(), Et()))\n            }\n\n            function jt(e, t, n) {\n                var r, o, i = e._map,\n                    a = e._list,\n                    u = i.get(t),\n                    s = void 0 !== u;\n                if (n === y) {\n                    if (!s) return e;\n                    a.size >= m && a.size >= 2 * i.size ? (r = (o = a.filter(function(e, t) {\n                        return void 0 !== e && u !== t\n                    })).toKeyedSeq().map(function(e) {\n                        return e[0]\n                    }).flip().toMap(), e.__ownerID && (r.__ownerID = o.__ownerID = e.__ownerID)) : (r = i.remove(t), o = u === a.size - 1 ? a.pop() : a.set(u, void 0))\n                } else if (s) {\n                    if (n === a.get(u)[1]) return e;\n                    r = i, o = a.set(u, [t, n])\n                } else r = i.set(t, a.size), o = a.set(a.size, [t, n]);\n                return e.__ownerID ? (e.size = r.size, e._map = r, e._list = o, e.__hash = void 0, e) : Mt(r, o)\n            }\n\n            function Nt(e, t) {\n                this._iter = e, this._useKeys = t, this.size = e.size\n            }\n\n            function Rt(e) {\n                this._iter = e, this.size = e.size\n            }\n\n            function Dt(e) {\n                this._iter = e, this.size = e.size\n            }\n\n            function Lt(e) {\n                this._iter = e, this.size = e.size\n            }\n\n            function Ut(e) {\n                var t = Qt(e);\n                return t._iter = e, t.size = e.size, t.flip = function() {\n                    return e\n                }, t.reverse = function() {\n                    var t = e.reverse.apply(this);\n                    return t.flip = function() {\n                        return e.reverse()\n                    }, t\n                }, t.has = function(t) {\n                    return e.includes(t)\n                }, t.includes = function(t) {\n                    return e.has(t)\n                }, t.cacheResult = en, t.__iterateUncached = function(t, n) {\n                    var r = this;\n                    return e.__iterate(function(e, n) {\n                        return !1 !== t(n, e, r)\n                    }, n)\n                }, t.__iteratorUncached = function(t, n) {\n                    if (t === N) {\n                        var r = e.__iterator(t, n);\n                        return new U(function() {\n                            var e = r.next();\n                            if (!e.done) {\n                                var t = e.value[0];\n                                e.value[0] = e.value[1], e.value[1] = t\n                            }\n                            return e\n                        })\n                    }\n                    return e.__iterator(t === j ? I : j, n)\n                }, t\n            }\n\n            function qt(e, t, n) {\n                var r = Qt(e);\n                return r.size = e.size, r.has = function(t) {\n                    return e.has(t)\n                }, r.get = function(r, o) {\n                    var i = e.get(r, y);\n                    return i === y ? o : t.call(n, i, r, e)\n                }, r.__iterateUncached = function(r, o) {\n                    var i = this;\n                    return e.__iterate(function(e, o, a) {\n                        return !1 !== r(t.call(n, e, o, a), o, i)\n                    }, o)\n                }, r.__iteratorUncached = function(r, o) {\n                    var i = e.__iterator(N, o);\n                    return new U(function() {\n                        var o = i.next();\n                        if (o.done) return o;\n                        var a = o.value,\n                            u = a[0];\n                        return q(r, u, t.call(n, a[1], u, e), o)\n                    })\n                }, r\n            }\n\n            function Ft(e, t) {\n                var n = Qt(e);\n                return n._iter = e, n.size = e.size, n.reverse = function() {\n                    return e\n                }, e.flip && (n.flip = function() {\n                    var t = Ut(e);\n                    return t.reverse = function() {\n                        return e.flip()\n                    }, t\n                }), n.get = function(n, r) {\n                    return e.get(t ? n : -1 - n, r)\n                }, n.has = function(n) {\n                    return e.has(t ? n : -1 - n)\n                }, n.includes = function(t) {\n                    return e.includes(t)\n                }, n.cacheResult = en, n.__iterate = function(t, n) {\n                    var r = this;\n                    return e.__iterate(function(e, n) {\n                        return t(e, n, r)\n                    }, !n)\n                }, n.__iterator = function(t, n) {\n                    return e.__iterator(t, !n)\n                }, n\n            }\n\n            function zt(e, t, n, r) {\n                var o = Qt(e);\n                return r && (o.has = function(r) {\n                    var o = e.get(r, y);\n                    return o !== y && !!t.call(n, o, r, e)\n                }, o.get = function(r, o) {\n                    var i = e.get(r, y);\n                    return i !== y && t.call(n, i, r, e) ? i : o\n                }), o.__iterateUncached = function(o, i) {\n                    var a = this,\n                        u = 0;\n                    return e.__iterate(function(e, i, s) {\n                        if (t.call(n, e, i, s)) return u++, o(e, r ? i : u - 1, a)\n                    }, i), u\n                }, o.__iteratorUncached = function(o, i) {\n                    var a = e.__iterator(N, i),\n                        u = 0;\n                    return new U(function() {\n                        for (;;) {\n                            var i = a.next();\n                            if (i.done) return i;\n                            var s = i.value,\n                                l = s[0],\n                                c = s[1];\n                            if (t.call(n, c, l, e)) return q(o, r ? l : u++, c, i)\n                        }\n                    })\n                }, o\n            }\n\n            function Bt(e, t, n, r) {\n                var o = e.size;\n                if (void 0 !== t && (t |= 0), void 0 !== n && (n === 1 / 0 ? n = o : n |= 0), O(t, n, o)) return e;\n                var i = P(t, o),\n                    a = T(n, o);\n                if (i != i || a != a) return Bt(e.toSeq().cacheResult(), t, n, r);\n                var u, s = a - i;\n                s == s && (u = s < 0 ? 0 : s);\n                var l = Qt(e);\n                return l.size = 0 === u ? u : e.size && u || void 0, !r && oe(e) && u >= 0 && (l.get = function(t, n) {\n                    return (t = k(this, t)) >= 0 && t < u ? e.get(t + i, n) : n\n                }), l.__iterateUncached = function(t, n) {\n                    var o = this;\n                    if (0 === u) return 0;\n                    if (n) return this.cacheResult().__iterate(t, n);\n                    var a = 0,\n                        s = !0,\n                        l = 0;\n                    return e.__iterate(function(e, n) {\n                        if (!s || !(s = a++ < i)) return l++, !1 !== t(e, r ? n : l - 1, o) && l !== u\n                    }), l\n                }, l.__iteratorUncached = function(t, n) {\n                    if (0 !== u && n) return this.cacheResult().__iterator(t, n);\n                    var o = 0 !== u && e.__iterator(t, n),\n                        a = 0,\n                        s = 0;\n                    return new U(function() {\n                        for (; a++ < i;) o.next();\n                        if (++s > u) return {\n                            value: void 0,\n                            done: !0\n                        };\n                        var e = o.next();\n                        return r || t === j ? e : q(t, s - 1, t === I ? void 0 : e.value[1], e)\n                    })\n                }, l\n            }\n\n            function Vt(e, t, n, r) {\n                var o = Qt(e);\n                return o.__iterateUncached = function(o, i) {\n                    var a = this;\n                    if (i) return this.cacheResult().__iterate(o, i);\n                    var u = !0,\n                        s = 0;\n                    return e.__iterate(function(e, i, l) {\n                        if (!u || !(u = t.call(n, e, i, l))) return s++, o(e, r ? i : s - 1, a)\n                    }), s\n                }, o.__iteratorUncached = function(o, i) {\n                    var a = this;\n                    if (i) return this.cacheResult().__iterator(o, i);\n                    var u = e.__iterator(N, i),\n                        s = !0,\n                        l = 0;\n                    return new U(function() {\n                        var e, i, c;\n                        do {\n                            if ((e = u.next()).done) return r || o === j ? e : q(o, l++, o === I ? void 0 : e.value[1], e);\n                            var f = e.value;\n                            i = f[0], c = f[1], s && (s = t.call(n, c, i, a))\n                        } while (s);\n                        return o === N ? e : q(o, i, c, e)\n                    })\n                }, o\n            }\n\n            function Ht(e, t, n) {\n                var r = Qt(e);\n                return r.__iterateUncached = function(r, o) {\n                    var i = 0,\n                        u = !1;\n                    return function e(s, l) {\n                        var c = this;\n                        s.__iterate(function(o, s) {\n                            return (!t || l < t) && a(o) ? e(o, l + 1) : !1 === r(o, n ? s : i++, c) && (u = !0), !u\n                        }, o)\n                    }(e, 0), i\n                }, r.__iteratorUncached = function(r, o) {\n                    var i = e.__iterator(r, o),\n                        u = [],\n                        s = 0;\n                    return new U(function() {\n                        for (; i;) {\n                            var e = i.next();\n                            if (!1 === e.done) {\n                                var l = e.value;\n                                if (r === N && (l = l[1]), t && !(u.length < t) || !a(l)) return n ? e : q(r, s++, l, e);\n                                u.push(i), i = l.__iterator(r, o)\n                            } else i = u.pop()\n                        }\n                        return {\n                            value: void 0,\n                            done: !0\n                        }\n                    })\n                }, r\n            }\n\n            function Wt(e, t, n) {\n                t || (t = tn);\n                var r = u(e),\n                    o = 0,\n                    i = e.toSeq().map(function(t, r) {\n                        return [r, t, o++, n ? n(t, r, e) : t]\n                    }).toArray();\n                return i.sort(function(e, n) {\n                    return t(e[3], n[3]) || e[2] - n[2]\n                }).forEach(r ? function(e, t) {\n                    i[t].length = 2\n                } : function(e, t) {\n                    i[t] = e[1]\n                }), r ? Y(i) : s(e) ? K(i) : G(i)\n            }\n\n            function Jt(e, t, n) {\n                if (t || (t = tn), n) {\n                    var r = e.toSeq().map(function(t, r) {\n                        return [t, n(t, r, e)]\n                    }).reduce(function(e, n) {\n                        return Yt(t, e[1], n[1]) ? n : e\n                    });\n                    return r && r[0]\n                }\n                return e.reduce(function(e, n) {\n                    return Yt(t, e, n) ? n : e\n                })\n            }\n\n            function Yt(e, t, n) {\n                var r = e(n, t);\n                return 0 === r && n !== t && (void 0 === n || null === n || n != n) || r > 0\n            }\n\n            function Kt(e, t, r) {\n                var o = Qt(e);\n                return o.size = new ee(r).map(function(e) {\n                    return e.size\n                }).min(), o.__iterate = function(e, t) {\n                    for (var n, r = this.__iterator(j, t), o = 0; !(n = r.next()).done && !1 !== e(n.value, o++, this););\n                    return o\n                }, o.__iteratorUncached = function(e, o) {\n                    var i = r.map(function(e) {\n                            return e = n(e), V(o ? e.reverse() : e)\n                        }),\n                        a = 0,\n                        u = !1;\n                    return new U(function() {\n                        var n;\n                        return u || (n = i.map(function(e) {\n                            return e.next()\n                        }), u = n.some(function(e) {\n                            return e.done\n                        })), u ? {\n                            value: void 0,\n                            done: !0\n                        } : q(e, a++, t.apply(null, n.map(function(e) {\n                            return e.value\n                        })))\n                    })\n                }, o\n            }\n\n            function Gt(e, t) {\n                return oe(e) ? t : e.constructor(t)\n            }\n\n            function $t(e) {\n                if (e !== Object(e)) throw new TypeError(\"Expected [K, V] tuple: \" + e)\n            }\n\n            function Zt(e) {\n                return Le(e.size), C(e)\n            }\n\n            function Xt(e) {\n                return u(e) ? r : s(e) ? o : i\n            }\n\n            function Qt(e) {\n                return Object.create((u(e) ? Y : s(e) ? K : G).prototype)\n            }\n\n            function en() {\n                return this._iter.cacheResult ? (this._iter.cacheResult(), this.size = this._iter.size, this) : J.prototype.cacheResult.call(this)\n            }\n\n            function tn(e, t) {\n                return e > t ? 1 : e < t ? -1 : 0\n            }\n\n            function nn(e) {\n                var t = V(e);\n                if (!t) {\n                    if (!W(e)) throw new TypeError(\"Expected iterable or array-like: \" + e);\n                    t = V(n(e))\n                }\n                return t\n            }\n\n            function rn(e, t) {\n                var n, r = function(i) {\n                        if (i instanceof r) return i;\n                        if (!(this instanceof r)) return new r(i);\n                        if (!n) {\n                            n = !0;\n                            var a = Object.keys(e);\n                            ! function(e, t) {\n                                try {\n                                    t.forEach(function(e, t) {\n                                        Object.defineProperty(e, t, {\n                                            get: function() {\n                                                return this.get(t)\n                                            },\n                                            set: function(e) {\n                                                ge(this.__ownerID, \"Cannot set on an immutable record.\"), this.set(t, e)\n                                            }\n                                        })\n                                    }.bind(void 0, e))\n                                } catch (e) {}\n                            }(o, a), o.size = a.length, o._name = t, o._keys = a, o._defaultValues = e\n                        }\n                        this._map = Ue(i)\n                    },\n                    o = r.prototype = Object.create(on);\n                return o.constructor = r, r\n            }\n            t(Pt, Ue), Pt.of = function() {\n                return this(arguments)\n            }, Pt.prototype.toString = function() {\n                return this.__toString(\"OrderedMap {\", \"}\")\n            }, Pt.prototype.get = function(e, t) {\n                var n = this._map.get(e);\n                return void 0 !== n ? this._list.get(n)[1] : t\n            }, Pt.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = 0, this._map.clear(), this._list.clear(), this) : It()\n            }, Pt.prototype.set = function(e, t) {\n                return jt(this, e, t)\n            }, Pt.prototype.remove = function(e) {\n                return jt(this, e, y)\n            }, Pt.prototype.wasAltered = function() {\n                return this._map.wasAltered() || this._list.wasAltered()\n            }, Pt.prototype.__iterate = function(e, t) {\n                var n = this;\n                return this._list.__iterate(function(t) {\n                    return t && e(t[1], t[0], n)\n                }, t)\n            }, Pt.prototype.__iterator = function(e, t) {\n                return this._list.fromEntrySeq().__iterator(e, t)\n            }, Pt.prototype.__ensureOwner = function(e) {\n                if (e === this.__ownerID) return this;\n                var t = this._map.__ensureOwner(e),\n                    n = this._list.__ensureOwner(e);\n                return e ? Mt(t, n, e, this.__hash) : (this.__ownerID = e, this._map = t, this._list = n, this)\n            }, Pt.isOrderedMap = Tt, Pt.prototype[h] = !0, Pt.prototype.delete = Pt.prototype.remove, t(Nt, Y), Nt.prototype.get = function(e, t) {\n                return this._iter.get(e, t)\n            }, Nt.prototype.has = function(e) {\n                return this._iter.has(e)\n            }, Nt.prototype.valueSeq = function() {\n                return this._iter.valueSeq()\n            }, Nt.prototype.reverse = function() {\n                var e = this,\n                    t = Ft(this, !0);\n                return this._useKeys || (t.valueSeq = function() {\n                    return e._iter.toSeq().reverse()\n                }), t\n            }, Nt.prototype.map = function(e, t) {\n                var n = this,\n                    r = qt(this, e, t);\n                return this._useKeys || (r.valueSeq = function() {\n                    return n._iter.toSeq().map(e, t)\n                }), r\n            }, Nt.prototype.__iterate = function(e, t) {\n                var n, r = this;\n                return this._iter.__iterate(this._useKeys ? function(t, n) {\n                    return e(t, n, r)\n                } : (n = t ? Zt(this) : 0, function(o) {\n                    return e(o, t ? --n : n++, r)\n                }), t)\n            }, Nt.prototype.__iterator = function(e, t) {\n                if (this._useKeys) return this._iter.__iterator(e, t);\n                var n = this._iter.__iterator(j, t),\n                    r = t ? Zt(this) : 0;\n                return new U(function() {\n                    var o = n.next();\n                    return o.done ? o : q(e, t ? --r : r++, o.value, o)\n                })\n            }, Nt.prototype[h] = !0, t(Rt, K), Rt.prototype.includes = function(e) {\n                return this._iter.includes(e)\n            }, Rt.prototype.__iterate = function(e, t) {\n                var n = this,\n                    r = 0;\n                return this._iter.__iterate(function(t) {\n                    return e(t, r++, n)\n                }, t)\n            }, Rt.prototype.__iterator = function(e, t) {\n                var n = this._iter.__iterator(j, t),\n                    r = 0;\n                return new U(function() {\n                    var t = n.next();\n                    return t.done ? t : q(e, r++, t.value, t)\n                })\n            }, t(Dt, G), Dt.prototype.has = function(e) {\n                return this._iter.includes(e)\n            }, Dt.prototype.__iterate = function(e, t) {\n                var n = this;\n                return this._iter.__iterate(function(t) {\n                    return e(t, t, n)\n                }, t)\n            }, Dt.prototype.__iterator = function(e, t) {\n                var n = this._iter.__iterator(j, t);\n                return new U(function() {\n                    var t = n.next();\n                    return t.done ? t : q(e, t.value, t.value, t)\n                })\n            }, t(Lt, Y), Lt.prototype.entrySeq = function() {\n                return this._iter.toSeq()\n            }, Lt.prototype.__iterate = function(e, t) {\n                var n = this;\n                return this._iter.__iterate(function(t) {\n                    if (t) {\n                        $t(t);\n                        var r = a(t);\n                        return e(r ? t.get(1) : t[1], r ? t.get(0) : t[0], n)\n                    }\n                }, t)\n            }, Lt.prototype.__iterator = function(e, t) {\n                var n = this._iter.__iterator(j, t);\n                return new U(function() {\n                    for (;;) {\n                        var t = n.next();\n                        if (t.done) return t;\n                        var r = t.value;\n                        if (r) {\n                            $t(r);\n                            var o = a(r);\n                            return q(e, o ? r.get(0) : r[0], o ? r.get(1) : r[1], t)\n                        }\n                    }\n                })\n            }, Rt.prototype.cacheResult = Nt.prototype.cacheResult = Dt.prototype.cacheResult = Lt.prototype.cacheResult = en, t(rn, _e), rn.prototype.toString = function() {\n                return this.__toString(un(this) + \" {\", \"}\")\n            }, rn.prototype.has = function(e) {\n                return this._defaultValues.hasOwnProperty(e)\n            }, rn.prototype.get = function(e, t) {\n                if (!this.has(e)) return t;\n                var n = this._defaultValues[e];\n                return this._map ? this._map.get(e, n) : n\n            }, rn.prototype.clear = function() {\n                if (this.__ownerID) return this._map && this._map.clear(), this;\n                var e = this.constructor;\n                return e._empty || (e._empty = an(this, Xe()))\n            }, rn.prototype.set = function(e, t) {\n                if (!this.has(e)) throw new Error('Cannot set unknown key \"' + e + '\" on ' + un(this));\n                if (this._map && !this._map.has(e) && t === this._defaultValues[e]) return this;\n                var n = this._map && this._map.set(e, t);\n                return this.__ownerID || n === this._map ? this : an(this, n)\n            }, rn.prototype.remove = function(e) {\n                if (!this.has(e)) return this;\n                var t = this._map && this._map.remove(e);\n                return this.__ownerID || t === this._map ? this : an(this, t)\n            }, rn.prototype.wasAltered = function() {\n                return this._map.wasAltered()\n            }, rn.prototype.__iterator = function(e, t) {\n                var n = this;\n                return r(this._defaultValues).map(function(e, t) {\n                    return n.get(t)\n                }).__iterator(e, t)\n            }, rn.prototype.__iterate = function(e, t) {\n                var n = this;\n                return r(this._defaultValues).map(function(e, t) {\n                    return n.get(t)\n                }).__iterate(e, t)\n            }, rn.prototype.__ensureOwner = function(e) {\n                if (e === this.__ownerID) return this;\n                var t = this._map && this._map.__ensureOwner(e);\n                return e ? an(this, t, e) : (this.__ownerID = e, this._map = t, this)\n            };\n            var on = rn.prototype;\n\n            function an(e, t, n) {\n                var r = Object.create(Object.getPrototypeOf(e));\n                return r._map = t, r.__ownerID = n, r\n            }\n\n            function un(e) {\n                return e._name || e.constructor.name || \"Record\"\n            }\n\n            function sn(e) {\n                return null === e || void 0 === e ? vn() : ln(e) && !c(e) ? e : vn().withMutations(function(t) {\n                    var n = i(e);\n                    Le(n.size), n.forEach(function(e) {\n                        return t.add(e)\n                    })\n                })\n            }\n\n            function ln(e) {\n                return !(!e || !e[fn])\n            }\n            on.delete = on.remove, on.deleteIn = on.removeIn = Be.removeIn, on.merge = Be.merge, on.mergeWith = Be.mergeWith, on.mergeIn = Be.mergeIn, on.mergeDeep = Be.mergeDeep, on.mergeDeepWith = Be.mergeDeepWith, on.mergeDeepIn = Be.mergeDeepIn, on.setIn = Be.setIn, on.update = Be.update, on.updateIn = Be.updateIn, on.withMutations = Be.withMutations, on.asMutable = Be.asMutable, on.asImmutable = Be.asImmutable, t(sn, Ee), sn.of = function() {\n                return this(arguments)\n            }, sn.fromKeys = function(e) {\n                return this(r(e).keySeq())\n            }, sn.prototype.toString = function() {\n                return this.__toString(\"Set {\", \"}\")\n            }, sn.prototype.has = function(e) {\n                return this._map.has(e)\n            }, sn.prototype.add = function(e) {\n                return dn(this, this._map.set(e, !0))\n            }, sn.prototype.remove = function(e) {\n                return dn(this, this._map.remove(e))\n            }, sn.prototype.clear = function() {\n                return dn(this, this._map.clear())\n            }, sn.prototype.union = function() {\n                var t = e.call(arguments, 0);\n                return 0 === (t = t.filter(function(e) {\n                    return 0 !== e.size\n                })).length ? this : 0 !== this.size || this.__ownerID || 1 !== t.length ? this.withMutations(function(e) {\n                    for (var n = 0; n < t.length; n++) i(t[n]).forEach(function(t) {\n                        return e.add(t)\n                    })\n                }) : this.constructor(t[0])\n            }, sn.prototype.intersect = function() {\n                var t = e.call(arguments, 0);\n                if (0 === t.length) return this;\n                t = t.map(function(e) {\n                    return i(e)\n                });\n                var n = this;\n                return this.withMutations(function(e) {\n                    n.forEach(function(n) {\n                        t.every(function(e) {\n                            return e.includes(n)\n                        }) || e.remove(n)\n                    })\n                })\n            }, sn.prototype.subtract = function() {\n                var t = e.call(arguments, 0);\n                if (0 === t.length) return this;\n                t = t.map(function(e) {\n                    return i(e)\n                });\n                var n = this;\n                return this.withMutations(function(e) {\n                    n.forEach(function(n) {\n                        t.some(function(e) {\n                            return e.includes(n)\n                        }) && e.remove(n)\n                    })\n                })\n            }, sn.prototype.merge = function() {\n                return this.union.apply(this, arguments)\n            }, sn.prototype.mergeWith = function(t) {\n                var n = e.call(arguments, 1);\n                return this.union.apply(this, n)\n            }, sn.prototype.sort = function(e) {\n                return mn(Wt(this, e))\n            }, sn.prototype.sortBy = function(e, t) {\n                return mn(Wt(this, t, e))\n            }, sn.prototype.wasAltered = function() {\n                return this._map.wasAltered()\n            }, sn.prototype.__iterate = function(e, t) {\n                var n = this;\n                return this._map.__iterate(function(t, r) {\n                    return e(r, r, n)\n                }, t)\n            }, sn.prototype.__iterator = function(e, t) {\n                return this._map.map(function(e, t) {\n                    return t\n                }).__iterator(e, t)\n            }, sn.prototype.__ensureOwner = function(e) {\n                if (e === this.__ownerID) return this;\n                var t = this._map.__ensureOwner(e);\n                return e ? this.__make(t, e) : (this.__ownerID = e, this._map = t, this)\n            }, sn.isSet = ln;\n            var cn, fn = \"@@__IMMUTABLE_SET__@@\",\n                pn = sn.prototype;\n\n            function dn(e, t) {\n                return e.__ownerID ? (e.size = t.size, e._map = t, e) : t === e._map ? e : 0 === t.size ? e.__empty() : e.__make(t)\n            }\n\n            function hn(e, t) {\n                var n = Object.create(pn);\n                return n.size = e ? e.size : 0, n._map = e, n.__ownerID = t, n\n            }\n\n            function vn() {\n                return cn || (cn = hn(Xe()))\n            }\n\n            function mn(e) {\n                return null === e || void 0 === e ? wn() : gn(e) ? e : wn().withMutations(function(t) {\n                    var n = i(e);\n                    Le(n.size), n.forEach(function(e) {\n                        return t.add(e)\n                    })\n                })\n            }\n\n            function gn(e) {\n                return ln(e) && c(e)\n            }\n            pn[fn] = !0, pn.delete = pn.remove, pn.mergeDeep = pn.merge, pn.mergeDeepWith = pn.mergeWith, pn.withMutations = Be.withMutations, pn.asMutable = Be.asMutable, pn.asImmutable = Be.asImmutable, pn.__empty = vn, pn.__make = hn, t(mn, sn), mn.of = function() {\n                return this(arguments)\n            }, mn.fromKeys = function(e) {\n                return this(r(e).keySeq())\n            }, mn.prototype.toString = function() {\n                return this.__toString(\"OrderedSet {\", \"}\")\n            }, mn.isOrderedSet = gn;\n            var yn, bn = mn.prototype;\n\n            function _n(e, t) {\n                var n = Object.create(bn);\n                return n.size = e ? e.size : 0, n._map = e, n.__ownerID = t, n\n            }\n\n            function wn() {\n                return yn || (yn = _n(It()))\n            }\n\n            function En(e) {\n                return null === e || void 0 === e ? On() : xn(e) ? e : On().unshiftAll(e)\n            }\n\n            function xn(e) {\n                return !(!e || !e[Cn])\n            }\n            bn[h] = !0, bn.__empty = wn, bn.__make = _n, t(En, we), En.of = function() {\n                return this(arguments)\n            }, En.prototype.toString = function() {\n                return this.__toString(\"Stack [\", \"]\")\n            }, En.prototype.get = function(e, t) {\n                var n = this._head;\n                for (e = k(this, e); n && e--;) n = n.next;\n                return n ? n.value : t\n            }, En.prototype.peek = function() {\n                return this._head && this._head.value\n            }, En.prototype.push = function() {\n                if (0 === arguments.length) return this;\n                for (var e = this.size + arguments.length, t = this._head, n = arguments.length - 1; n >= 0; n--) t = {\n                    value: arguments[n],\n                    next: t\n                };\n                return this.__ownerID ? (this.size = e, this._head = t, this.__hash = void 0, this.__altered = !0, this) : An(e, t)\n            }, En.prototype.pushAll = function(e) {\n                if (0 === (e = o(e)).size) return this;\n                Le(e.size);\n                var t = this.size,\n                    n = this._head;\n                return e.reverse().forEach(function(e) {\n                    t++, n = {\n                        value: e,\n                        next: n\n                    }\n                }), this.__ownerID ? (this.size = t, this._head = n, this.__hash = void 0, this.__altered = !0, this) : An(t, n)\n            }, En.prototype.pop = function() {\n                return this.slice(1)\n            }, En.prototype.unshift = function() {\n                return this.push.apply(this, arguments)\n            }, En.prototype.unshiftAll = function(e) {\n                return this.pushAll(e)\n            }, En.prototype.shift = function() {\n                return this.pop.apply(this, arguments)\n            }, En.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = 0, this._head = void 0, this.__hash = void 0, this.__altered = !0, this) : On()\n            }, En.prototype.slice = function(e, t) {\n                if (O(e, t, this.size)) return this;\n                var n = P(e, this.size);\n                if (T(t, this.size) !== this.size) return we.prototype.slice.call(this, e, t);\n                for (var r = this.size - n, o = this._head; n--;) o = o.next;\n                return this.__ownerID ? (this.size = r, this._head = o, this.__hash = void 0, this.__altered = !0, this) : An(r, o)\n            }, En.prototype.__ensureOwner = function(e) {\n                return e === this.__ownerID ? this : e ? An(this.size, this._head, e, this.__hash) : (this.__ownerID = e, this.__altered = !1, this)\n            }, En.prototype.__iterate = function(e, t) {\n                if (t) return this.reverse().__iterate(e);\n                for (var n = 0, r = this._head; r && !1 !== e(r.value, n++, this);) r = r.next;\n                return n\n            }, En.prototype.__iterator = function(e, t) {\n                if (t) return this.reverse().__iterator(e);\n                var n = 0,\n                    r = this._head;\n                return new U(function() {\n                    if (r) {\n                        var t = r.value;\n                        return r = r.next, q(e, n++, t)\n                    }\n                    return {\n                        value: void 0,\n                        done: !0\n                    }\n                })\n            }, En.isStack = xn;\n            var Sn, Cn = \"@@__IMMUTABLE_STACK__@@\",\n                kn = En.prototype;\n\n            function An(e, t, n, r) {\n                var o = Object.create(kn);\n                return o.size = e, o._head = t, o.__ownerID = n, o.__hash = r, o.__altered = !1, o\n            }\n\n            function On() {\n                return Sn || (Sn = An(0))\n            }\n\n            function Pn(e, t) {\n                var n = function(n) {\n                    e.prototype[n] = t[n]\n                };\n                return Object.keys(t).forEach(n), Object.getOwnPropertySymbols && Object.getOwnPropertySymbols(t).forEach(n), e\n            }\n            kn[Cn] = !0, kn.withMutations = Be.withMutations, kn.asMutable = Be.asMutable, kn.asImmutable = Be.asImmutable, kn.wasAltered = Be.wasAltered, n.Iterator = U, Pn(n, {\n                toArray: function() {\n                    Le(this.size);\n                    var e = new Array(this.size || 0);\n                    return this.valueSeq().__iterate(function(t, n) {\n                        e[n] = t\n                    }), e\n                },\n                toIndexedSeq: function() {\n                    return new Rt(this)\n                },\n                toJS: function() {\n                    return this.toSeq().map(function(e) {\n                        return e && \"function\" == typeof e.toJS ? e.toJS() : e\n                    }).__toJS()\n                },\n                toJSON: function() {\n                    return this.toSeq().map(function(e) {\n                        return e && \"function\" == typeof e.toJSON ? e.toJSON() : e\n                    }).__toJS()\n                },\n                toKeyedSeq: function() {\n                    return new Nt(this, !0)\n                },\n                toMap: function() {\n                    return Ue(this.toKeyedSeq())\n                },\n                toObject: function() {\n                    Le(this.size);\n                    var e = {};\n                    return this.__iterate(function(t, n) {\n                        e[n] = t\n                    }), e\n                },\n                toOrderedMap: function() {\n                    return Pt(this.toKeyedSeq())\n                },\n                toOrderedSet: function() {\n                    return mn(u(this) ? this.valueSeq() : this)\n                },\n                toSet: function() {\n                    return sn(u(this) ? this.valueSeq() : this)\n                },\n                toSetSeq: function() {\n                    return new Dt(this)\n                },\n                toSeq: function() {\n                    return s(this) ? this.toIndexedSeq() : u(this) ? this.toKeyedSeq() : this.toSetSeq()\n                },\n                toStack: function() {\n                    return En(u(this) ? this.valueSeq() : this)\n                },\n                toList: function() {\n                    return pt(u(this) ? this.valueSeq() : this)\n                },\n                toString: function() {\n                    return \"[Iterable]\"\n                },\n                __toString: function(e, t) {\n                    return 0 === this.size ? e + t : e + \" \" + this.toSeq().map(this.__toStringMapper).join(\", \") + \" \" + t\n                },\n                concat: function() {\n                    return Gt(this, function(e, t) {\n                        var n = u(e),\n                            o = [e].concat(t).map(function(e) {\n                                return a(e) ? n && (e = r(e)) : e = n ? ae(e) : ue(Array.isArray(e) ? e : [e]), e\n                            }).filter(function(e) {\n                                return 0 !== e.size\n                            });\n                        if (0 === o.length) return e;\n                        if (1 === o.length) {\n                            var i = o[0];\n                            if (i === e || n && u(i) || s(e) && s(i)) return i\n                        }\n                        var l = new ee(o);\n                        return n ? l = l.toKeyedSeq() : s(e) || (l = l.toSetSeq()), (l = l.flatten(!0)).size = o.reduce(function(e, t) {\n                            if (void 0 !== e) {\n                                var n = t.size;\n                                if (void 0 !== n) return e + n\n                            }\n                        }, 0), l\n                    }(this, e.call(arguments, 0)))\n                },\n                includes: function(e) {\n                    return this.some(function(t) {\n                        return he(t, e)\n                    })\n                },\n                entries: function() {\n                    return this.__iterator(N)\n                },\n                every: function(e, t) {\n                    Le(this.size);\n                    var n = !0;\n                    return this.__iterate(function(r, o, i) {\n                        if (!e.call(t, r, o, i)) return n = !1, !1\n                    }), n\n                },\n                filter: function(e, t) {\n                    return Gt(this, zt(this, e, t, !0))\n                },\n                find: function(e, t, n) {\n                    var r = this.findEntry(e, t);\n                    return r ? r[1] : n\n                },\n                forEach: function(e, t) {\n                    return Le(this.size), this.__iterate(t ? e.bind(t) : e)\n                },\n                join: function(e) {\n                    Le(this.size), e = void 0 !== e ? \"\" + e : \",\";\n                    var t = \"\",\n                        n = !0;\n                    return this.__iterate(function(r) {\n                        n ? n = !1 : t += e, t += null !== r && void 0 !== r ? r.toString() : \"\"\n                    }), t\n                },\n                keys: function() {\n                    return this.__iterator(I)\n                },\n                map: function(e, t) {\n                    return Gt(this, qt(this, e, t))\n                },\n                reduce: function(e, t, n) {\n                    var r, o;\n                    return Le(this.size), arguments.length < 2 ? o = !0 : r = t, this.__iterate(function(t, i, a) {\n                        o ? (o = !1, r = t) : r = e.call(n, r, t, i, a)\n                    }), r\n                },\n                reduceRight: function(e, t, n) {\n                    var r = this.toKeyedSeq().reverse();\n                    return r.reduce.apply(r, arguments)\n                },\n                reverse: function() {\n                    return Gt(this, Ft(this, !0))\n                },\n                slice: function(e, t) {\n                    return Gt(this, Bt(this, e, t, !0))\n                },\n                some: function(e, t) {\n                    return !this.every(Nn(e), t)\n                },\n                sort: function(e) {\n                    return Gt(this, Wt(this, e))\n                },\n                values: function() {\n                    return this.__iterator(j)\n                },\n                butLast: function() {\n                    return this.slice(0, -1)\n                },\n                isEmpty: function() {\n                    return void 0 !== this.size ? 0 === this.size : !this.some(function() {\n                        return !0\n                    })\n                },\n                count: function(e, t) {\n                    return C(e ? this.toSeq().filter(e, t) : this)\n                },\n                countBy: function(e, t) {\n                    return function(e, t, n) {\n                        var r = Ue().asMutable();\n                        return e.__iterate(function(o, i) {\n                            r.update(t.call(n, o, i, e), 0, function(e) {\n                                return e + 1\n                            })\n                        }), r.asImmutable()\n                    }(this, e, t)\n                },\n                equals: function(e) {\n                    return ve(this, e)\n                },\n                entrySeq: function() {\n                    var e = this;\n                    if (e._cache) return new ee(e._cache);\n                    var t = e.toSeq().map(jn).toIndexedSeq();\n                    return t.fromEntrySeq = function() {\n                        return e.toSeq()\n                    }, t\n                },\n                filterNot: function(e, t) {\n                    return this.filter(Nn(e), t)\n                },\n                findEntry: function(e, t, n) {\n                    var r = n;\n                    return this.__iterate(function(n, o, i) {\n                        if (e.call(t, n, o, i)) return r = [o, n], !1\n                    }), r\n                },\n                findKey: function(e, t) {\n                    var n = this.findEntry(e, t);\n                    return n && n[0]\n                },\n                findLast: function(e, t, n) {\n                    return this.toKeyedSeq().reverse().find(e, t, n)\n                },\n                findLastEntry: function(e, t, n) {\n                    return this.toKeyedSeq().reverse().findEntry(e, t, n)\n                },\n                findLastKey: function(e, t) {\n                    return this.toKeyedSeq().reverse().findKey(e, t)\n                },\n                first: function() {\n                    return this.find(A)\n                },\n                flatMap: function(e, t) {\n                    return Gt(this, function(e, t, n) {\n                        var r = Xt(e);\n                        return e.toSeq().map(function(o, i) {\n                            return r(t.call(n, o, i, e))\n                        }).flatten(!0)\n                    }(this, e, t))\n                },\n                flatten: function(e) {\n                    return Gt(this, Ht(this, e, !0))\n                },\n                fromEntrySeq: function() {\n                    return new Lt(this)\n                },\n                get: function(e, t) {\n                    return this.find(function(t, n) {\n                        return he(n, e)\n                    }, void 0, t)\n                },\n                getIn: function(e, t) {\n                    for (var n, r = this, o = nn(e); !(n = o.next()).done;) {\n                        var i = n.value;\n                        if ((r = r && r.get ? r.get(i, y) : y) === y) return t\n                    }\n                    return r\n                },\n                groupBy: function(e, t) {\n                    return function(e, t, n) {\n                        var r = u(e),\n                            o = (c(e) ? Pt() : Ue()).asMutable();\n                        e.__iterate(function(i, a) {\n                            o.update(t.call(n, i, a, e), function(e) {\n                                return (e = e || []).push(r ? [a, i] : i), e\n                            })\n                        });\n                        var i = Xt(e);\n                        return o.map(function(t) {\n                            return Gt(e, i(t))\n                        })\n                    }(this, e, t)\n                },\n                has: function(e) {\n                    return this.get(e, y) !== y\n                },\n                hasIn: function(e) {\n                    return this.getIn(e, y) !== y\n                },\n                isSubset: function(e) {\n                    return e = \"function\" == typeof e.includes ? e : n(e), this.every(function(t) {\n                        return e.includes(t)\n                    })\n                },\n                isSuperset: function(e) {\n                    return (e = \"function\" == typeof e.isSubset ? e : n(e)).isSubset(this)\n                },\n                keyOf: function(e) {\n                    return this.findKey(function(t) {\n                        return he(t, e)\n                    })\n                },\n                keySeq: function() {\n                    return this.toSeq().map(In).toIndexedSeq()\n                },\n                last: function() {\n                    return this.toSeq().reverse().first()\n                },\n                lastKeyOf: function(e) {\n                    return this.toKeyedSeq().reverse().keyOf(e)\n                },\n                max: function(e) {\n                    return Jt(this, e)\n                },\n                maxBy: function(e, t) {\n                    return Jt(this, t, e)\n                },\n                min: function(e) {\n                    return Jt(this, e ? Rn(e) : Un)\n                },\n                minBy: function(e, t) {\n                    return Jt(this, t ? Rn(t) : Un, e)\n                },\n                rest: function() {\n                    return this.slice(1)\n                },\n                skip: function(e) {\n                    return this.slice(Math.max(0, e))\n                },\n                skipLast: function(e) {\n                    return Gt(this, this.toSeq().reverse().skip(e).reverse())\n                },\n                skipWhile: function(e, t) {\n                    return Gt(this, Vt(this, e, t, !0))\n                },\n                skipUntil: function(e, t) {\n                    return this.skipWhile(Nn(e), t)\n                },\n                sortBy: function(e, t) {\n                    return Gt(this, Wt(this, t, e))\n                },\n                take: function(e) {\n                    return this.slice(0, Math.max(0, e))\n                },\n                takeLast: function(e) {\n                    return Gt(this, this.toSeq().reverse().take(e).reverse())\n                },\n                takeWhile: function(e, t) {\n                    return Gt(this, function(e, t, n) {\n                        var r = Qt(e);\n                        return r.__iterateUncached = function(r, o) {\n                            var i = this;\n                            if (o) return this.cacheResult().__iterate(r, o);\n                            var a = 0;\n                            return e.__iterate(function(e, o, u) {\n                                return t.call(n, e, o, u) && ++a && r(e, o, i)\n                            }), a\n                        }, r.__iteratorUncached = function(r, o) {\n                            var i = this;\n                            if (o) return this.cacheResult().__iterator(r, o);\n                            var a = e.__iterator(N, o),\n                                u = !0;\n                            return new U(function() {\n                                if (!u) return {\n                                    value: void 0,\n                                    done: !0\n                                };\n                                var e = a.next();\n                                if (e.done) return e;\n                                var o = e.value,\n                                    s = o[0],\n                                    l = o[1];\n                                return t.call(n, l, s, i) ? r === N ? e : q(r, s, l, e) : (u = !1, {\n                                    value: void 0,\n                                    done: !0\n                                })\n                            })\n                        }, r\n                    }(this, e, t))\n                },\n                takeUntil: function(e, t) {\n                    return this.takeWhile(Nn(e), t)\n                },\n                valueSeq: function() {\n                    return this.toIndexedSeq()\n                },\n                hashCode: function() {\n                    return this.__hash || (this.__hash = function(e) {\n                        if (e.size === 1 / 0) return 0;\n                        var t = c(e),\n                            n = u(e),\n                            r = t ? 1 : 0;\n                        return function(e, t) {\n                            return t = xe(t, 3432918353), t = xe(t << 15 | t >>> -15, 461845907), t = xe(t << 13 | t >>> -13, 5), t = xe((t = (t + 3864292196 | 0) ^ e) ^ t >>> 16, 2246822507), t = Se((t = xe(t ^ t >>> 13, 3266489909)) ^ t >>> 16)\n                        }(e.__iterate(n ? t ? function(e, t) {\n                            r = 31 * r + qn(Ce(e), Ce(t)) | 0\n                        } : function(e, t) {\n                            r = r + qn(Ce(e), Ce(t)) | 0\n                        } : t ? function(e) {\n                            r = 31 * r + Ce(e) | 0\n                        } : function(e) {\n                            r = r + Ce(e) | 0\n                        }), r)\n                    }(this))\n                }\n            });\n            var Tn = n.prototype;\n            Tn[f] = !0, Tn[L] = Tn.values, Tn.__toJS = Tn.toArray, Tn.__toStringMapper = Dn, Tn.inspect = Tn.toSource = function() {\n                return this.toString()\n            }, Tn.chain = Tn.flatMap, Tn.contains = Tn.includes, Pn(r, {\n                flip: function() {\n                    return Gt(this, Ut(this))\n                },\n                mapEntries: function(e, t) {\n                    var n = this,\n                        r = 0;\n                    return Gt(this, this.toSeq().map(function(o, i) {\n                        return e.call(t, [i, o], r++, n)\n                    }).fromEntrySeq())\n                },\n                mapKeys: function(e, t) {\n                    var n = this;\n                    return Gt(this, this.toSeq().flip().map(function(r, o) {\n                        return e.call(t, r, o, n)\n                    }).flip())\n                }\n            });\n            var Mn = r.prototype;\n\n            function In(e, t) {\n                return t\n            }\n\n            function jn(e, t) {\n                return [t, e]\n            }\n\n            function Nn(e) {\n                return function() {\n                    return !e.apply(this, arguments)\n                }\n            }\n\n            function Rn(e) {\n                return function() {\n                    return -e.apply(this, arguments)\n                }\n            }\n\n            function Dn(e) {\n                return \"string\" == typeof e ? JSON.stringify(e) : String(e)\n            }\n\n            function Ln() {\n                return S(arguments)\n            }\n\n            function Un(e, t) {\n                return e < t ? 1 : e > t ? -1 : 0\n            }\n\n            function qn(e, t) {\n                return e ^ t + 2654435769 + (e << 6) + (e >> 2) | 0\n            }\n            return Mn[p] = !0, Mn[L] = Tn.entries, Mn.__toJS = Tn.toObject, Mn.__toStringMapper = function(e, t) {\n                return JSON.stringify(t) + \": \" + Dn(e)\n            }, Pn(o, {\n                toKeyedSeq: function() {\n                    return new Nt(this, !1)\n                },\n                filter: function(e, t) {\n                    return Gt(this, zt(this, e, t, !1))\n                },\n                findIndex: function(e, t) {\n                    var n = this.findEntry(e, t);\n                    return n ? n[0] : -1\n                },\n                indexOf: function(e) {\n                    var t = this.keyOf(e);\n                    return void 0 === t ? -1 : t\n                },\n                lastIndexOf: function(e) {\n                    var t = this.lastKeyOf(e);\n                    return void 0 === t ? -1 : t\n                },\n                reverse: function() {\n                    return Gt(this, Ft(this, !1))\n                },\n                slice: function(e, t) {\n                    return Gt(this, Bt(this, e, t, !1))\n                },\n                splice: function(e, t) {\n                    var n = arguments.length;\n                    if (t = Math.max(0 | t, 0), 0 === n || 2 === n && !t) return this;\n                    e = P(e, e < 0 ? this.count() : this.size);\n                    var r = this.slice(0, e);\n                    return Gt(this, 1 === n ? r : r.concat(S(arguments, 2), this.slice(e + t)))\n                },\n                findLastIndex: function(e, t) {\n                    var n = this.findLastEntry(e, t);\n                    return n ? n[0] : -1\n                },\n                first: function() {\n                    return this.get(0)\n                },\n                flatten: function(e) {\n                    return Gt(this, Ht(this, e, !1))\n                },\n                get: function(e, t) {\n                    return (e = k(this, e)) < 0 || this.size === 1 / 0 || void 0 !== this.size && e > this.size ? t : this.find(function(t, n) {\n                        return n === e\n                    }, void 0, t)\n                },\n                has: function(e) {\n                    return (e = k(this, e)) >= 0 && (void 0 !== this.size ? this.size === 1 / 0 || e < this.size : -1 !== this.indexOf(e))\n                },\n                interpose: function(e) {\n                    return Gt(this, function(e, t) {\n                        var n = Qt(e);\n                        return n.size = e.size && 2 * e.size - 1, n.__iterateUncached = function(n, r) {\n                            var o = this,\n                                i = 0;\n                            return e.__iterate(function(e, r) {\n                                return (!i || !1 !== n(t, i++, o)) && !1 !== n(e, i++, o)\n                            }, r), i\n                        }, n.__iteratorUncached = function(n, r) {\n                            var o, i = e.__iterator(j, r),\n                                a = 0;\n                            return new U(function() {\n                                return (!o || a % 2) && (o = i.next()).done ? o : a % 2 ? q(n, a++, t) : q(n, a++, o.value, o)\n                            })\n                        }, n\n                    }(this, e))\n                },\n                interleave: function() {\n                    var e = [this].concat(S(arguments)),\n                        t = Kt(this.toSeq(), K.of, e),\n                        n = t.flatten(!0);\n                    return t.size && (n.size = t.size * e.length), Gt(this, n)\n                },\n                keySeq: function() {\n                    return ye(0, this.size)\n                },\n                last: function() {\n                    return this.get(-1)\n                },\n                skipWhile: function(e, t) {\n                    return Gt(this, Vt(this, e, t, !1))\n                },\n                zip: function() {\n                    return Gt(this, Kt(this, Ln, [this].concat(S(arguments))))\n                },\n                zipWith: function(e) {\n                    var t = S(arguments);\n                    return t[0] = this, Gt(this, Kt(this, e, t))\n                }\n            }), o.prototype[d] = !0, o.prototype[h] = !0, Pn(i, {\n                get: function(e, t) {\n                    return this.has(e) ? e : t\n                },\n                includes: function(e) {\n                    return this.has(e)\n                },\n                keySeq: function() {\n                    return this.valueSeq()\n                }\n            }), i.prototype.has = Tn.includes, i.prototype.contains = i.prototype.includes, Pn(Y, r.prototype), Pn(K, o.prototype), Pn(G, i.prototype), Pn(_e, r.prototype), Pn(we, o.prototype), Pn(Ee, i.prototype), {\n                Iterable: n,\n                Seq: J,\n                Collection: be,\n                Map: Ue,\n                OrderedMap: Pt,\n                List: pt,\n                Stack: En,\n                Set: sn,\n                OrderedSet: mn,\n                Record: rn,\n                Range: ye,\n                Repeat: me,\n                is: he,\n                fromJS: fe\n            }\n        }, e.exports = r()\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = function(e) {};\n        e.exports = function(e, t, n, o, i, a, u, s) {\n            if (r(t), !e) {\n                var l;\n                if (void 0 === t) l = new Error(\"Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.\");\n                else {\n                    var c = [n, o, i, a, u, s],\n                        f = 0;\n                    (l = new Error(t.replace(/%s/g, function() {\n                        return c[f++]\n                    }))).name = \"Invariant Violation\"\n                }\n                throw l.framesToPop = 1, l\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(34);\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(e) {\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.getCommonExtensions = t.getExtensions = t.escapeDeepLinkPath = t.createDeepLinkPath = t.shallowEqualKeys = t.buildFormData = t.sorters = t.btoa = t.serializeSearch = t.parseSearch = t.getSampleSchema = t.validateParam = t.validatePattern = t.validateMinLength = t.validateMaxLength = t.validateGuid = t.validateDateTime = t.validateString = t.validateBoolean = t.validateFile = t.validateInteger = t.validateNumber = t.validateMinimum = t.validateMaximum = t.propChecker = t.memoize = t.isImmutable = void 0;\n            var r = _(n(41)),\n                o = _(n(18)),\n                i = _(n(91)),\n                a = _(n(23)),\n                u = _(n(42)),\n                s = _(n(45));\n            t.isJSONObject = function(e) {\n                try {\n                    var t = JSON.parse(e);\n                    if (t && \"object\" === (void 0 === t ? \"undefined\" : (0, s.default)(t))) return t\n                } catch (e) {}\n                return !1\n            }, t.objectify = function(e) {\n                return S(e) ? E(e) ? e.toJS() : e : {}\n            }, t.arrayify = function(e) {\n                return e ? e.toArray ? e.toArray() : x(e) : []\n            }, t.fromJSOrdered = function e(t) {\n                if (E(t)) return t;\n                if (t instanceof y.default.File) return t;\n                return S(t) ? Array.isArray(t) ? l.default.Seq(t).map(e).toList() : l.default.OrderedMap(t).map(e) : t\n            }, t.bindToState = function(e, t) {\n                var n = {};\n                return (0, u.default)(e).filter(function(t) {\n                    return \"function\" == typeof e[t]\n                }).forEach(function(r) {\n                    return n[r] = e[r].bind(null, t)\n                }), n\n            }, t.normalizeArray = x, t.isFn = function(e) {\n                return \"function\" == typeof e\n            }, t.isObject = S, t.isFunc = function(e) {\n                return \"function\" == typeof e\n            }, t.isArray = function(e) {\n                return Array.isArray(e)\n            }, t.objMap = function(e, t) {\n                return (0, u.default)(e).reduce(function(n, r) {\n                    return n[r] = t(e[r], r), n\n                }, {})\n            }, t.objReduce = function(e, t) {\n                return (0, u.default)(e).reduce(function(n, r) {\n                    var o = t(e[r], r);\n                    return o && \"object\" === (void 0 === o ? \"undefined\" : (0, s.default)(o)) && (0, a.default)(n, o), n\n                }, {})\n            }, t.systemThunkMiddleware = function(e) {\n                return function(t) {\n                    t.dispatch, t.getState;\n                    return function(t) {\n                        return function(n) {\n                            return \"function\" == typeof n ? n(e()) : t(n)\n                        }\n                    }\n                }\n            }, t.defaultStatusCode = function(e) {\n                var t = e.keySeq();\n                return t.contains(w) ? w : t.filter(function(e) {\n                    return \"2\" === (e + \"\")[0]\n                }).sort().first()\n            }, t.getList = function(e, t) {\n                if (!l.default.Iterable.isIterable(e)) return l.default.List();\n                var n = e.getIn(Array.isArray(t) ? t : [t]);\n                return l.default.List.isList(n) ? n : l.default.List()\n            }, t.highlight = function(e) {\n                var t = document;\n                if (!e) return \"\";\n                if (e.textContent.length > 5e3) return e.textContent;\n                return function(e) {\n                    for (var n, r, o, i, a, u = e.textContent, s = 0, l = u[0], c = 1, f = e.innerHTML = \"\", p = 0; r = n, n = p < 7 && \"\\\\\" == n ? 1 : c;) {\n                        if (c = l, l = u[++s], i = f.length > 1, !c || p > 8 && \"\\n\" == c || [/\\S/.test(c), 1, 1, !/[$\\w]/.test(c), (\"/\" == n || \"\\n\" == n) && i, '\"' == n && i, \"'\" == n && i, u[s - 4] + r + n == \"--\\x3e\", r + n == \"*/\"][p])\n                            for (f && (e.appendChild(a = t.createElement(\"span\")).setAttribute(\"style\", [\"color: #555; font-weight: bold;\", \"\", \"\", \"color: #555;\", \"\"][p ? p < 3 ? 2 : p > 6 ? 4 : p > 3 ? 3 : +/^(a(bstract|lias|nd|rguments|rray|s(m|sert)?|uto)|b(ase|egin|ool(ean)?|reak|yte)|c(ase|atch|har|hecked|lass|lone|ompl|onst|ontinue)|de(bugger|cimal|clare|f(ault|er)?|init|l(egate|ete)?)|do|double|e(cho|ls?if|lse(if)?|nd|nsure|num|vent|x(cept|ec|p(licit|ort)|te(nds|nsion|rn)))|f(allthrough|alse|inal(ly)?|ixed|loat|or(each)?|riend|rom|unc(tion)?)|global|goto|guard|i(f|mp(lements|licit|ort)|n(it|clude(_once)?|line|out|stanceof|t(erface|ernal)?)?|s)|l(ambda|et|ock|ong)|m(icrolight|odule|utable)|NaN|n(amespace|ative|ext|ew|il|ot|ull)|o(bject|perator|r|ut|verride)|p(ackage|arams|rivate|rotected|rotocol|ublic)|r(aise|e(adonly|do|f|gister|peat|quire(_once)?|scue|strict|try|turn))|s(byte|ealed|elf|hort|igned|izeof|tatic|tring|truct|ubscript|uper|ynchronized|witch)|t(emplate|hen|his|hrows?|ransient|rue|ry|ype(alias|def|id|name|of))|u(n(checked|def(ined)?|ion|less|signed|til)|se|sing)|v(ar|irtual|oid|olatile)|w(char_t|hen|here|hile|ith)|xor|yield)$/.test(f) : 0]), a.appendChild(t.createTextNode(f))), o = p && p < 7 ? p : o, f = \"\", p = 11; ![1, /[\\/{}[(\\-+*=<>:;|\\\\.,?!&@~]/.test(c), /[\\])]/.test(c), /[$\\w]/.test(c), \"/\" == c && o < 2 && \"<\" != n, '\"' == c, \"'\" == c, c + l + u[s + 1] + u[s + 2] == \"\\x3c!--\", c + l == \"/*\", c + l == \"//\", \"#\" == c][--p];);\n                        f += c\n                    }\n                }(e)\n            }, t.mapToList = function e(t) {\n                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"key\";\n                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : l.default.Map();\n                if (!l.default.Map.isMap(t) || !t.size) return l.default.List();\n                Array.isArray(n) || (n = [n]);\n                if (n.length < 1) return t.merge(r);\n                var a = l.default.List();\n                var u = n[0];\n                var s = !0;\n                var c = !1;\n                var f = void 0;\n                try {\n                    for (var p, d = (0, i.default)(t.entries()); !(s = (p = d.next()).done); s = !0) {\n                        var h = p.value,\n                            v = (0, o.default)(h, 2),\n                            m = v[0],\n                            g = v[1],\n                            y = e(g, n.slice(1), r.set(u, m));\n                        a = l.default.List.isList(y) ? a.concat(y) : a.push(y)\n                    }\n                } catch (e) {\n                    c = !0, f = e\n                } finally {\n                    try {\n                        !s && d.return && d.return()\n                    } finally {\n                        if (c) throw f\n                    }\n                }\n                return a\n            }, t.extractFileNameFromContentDispositionHeader = function(e) {\n                var t = /filename=\"([^;]*);?\"/i.exec(e);\n                null === t && (t = /filename=([^;]*);?/i.exec(e));\n                if (null !== t && t.length > 1) return t[1];\n                return null\n            }, t.pascalCase = C, t.pascalCaseFilename = function(e) {\n                return C(e.replace(/\\.[^./]*$/, \"\"))\n            }, t.sanitizeUrl = function(e) {\n                if (\"string\" != typeof e || \"\" === e) return \"\";\n                return (0, c.sanitizeUrl)(e)\n            }, t.getAcceptControllingResponse = function(e) {\n                if (!l.default.OrderedMap.isOrderedMap(e)) return null;\n                if (!e.size) return null;\n                var t = e.find(function(e, t) {\n                        return t.startsWith(\"2\") && (0, u.default)(e.get(\"content\") || {}).length > 0\n                    }),\n                    n = e.get(\"default\") || l.default.OrderedMap(),\n                    r = (n.get(\"content\") || l.default.OrderedMap()).keySeq().toJS().length ? n : null;\n                return t || r\n            }, t.deeplyStripKey = function e(t, n) {\n                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : function() {\n                    return !0\n                };\n                if (\"object\" !== (void 0 === t ? \"undefined\" : (0, s.default)(t)) || Array.isArray(t) || null === t || !n) return t;\n                var o = (0, a.default)({}, t);\n                (0, u.default)(o).forEach(function(t) {\n                    t === n && r(o[t], t) ? delete o[t] : o[t] = e(o[t], n, r)\n                });\n                return o\n            }, t.stringify = function(e) {\n                if (\"string\" == typeof e) return e;\n                e.toJS && (e = e.toJS());\n                if (\"object\" === (void 0 === e ? \"undefined\" : (0, s.default)(e)) && null !== e) try {\n                    return (0, r.default)(e, null, 2)\n                } catch (t) {\n                    return String(e)\n                }\n                return e.toString()\n            }, t.numberToString = function(e) {\n                if (\"number\" == typeof e) return e.toString();\n                return e\n            };\n            var l = _(n(7)),\n                c = n(571),\n                f = _(n(572)),\n                p = _(n(280)),\n                d = _(n(284)),\n                h = _(n(287)),\n                v = _(n(650)),\n                m = _(n(105)),\n                g = n(192),\n                y = _(n(32)),\n                b = _(n(723));\n\n            function _(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n            var w = \"default\",\n                E = t.isImmutable = function(e) {\n                    return l.default.Iterable.isIterable(e)\n                };\n\n            function x(e) {\n                return Array.isArray(e) ? e : [e]\n            }\n\n            function S(e) {\n                return !!e && \"object\" === (void 0 === e ? \"undefined\" : (0, s.default)(e))\n            }\n            t.memoize = d.default;\n\n            function C(e) {\n                return (0, p.default)((0, f.default)(e))\n            }\n            t.propChecker = function(e, t) {\n                var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : [],\n                    r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : [];\n                return (0, u.default)(e).length !== (0, u.default)(t).length || ((0, v.default)(e, function(e, n) {\n                    if (r.includes(n)) return !1;\n                    var o = t[n];\n                    return l.default.Iterable.isIterable(e) ? !l.default.is(e, o) : (\"object\" !== (void 0 === e ? \"undefined\" : (0, s.default)(e)) || \"object\" !== (void 0 === o ? \"undefined\" : (0, s.default)(o))) && e !== o\n                }) || n.some(function(n) {\n                    return !(0, m.default)(e[n], t[n])\n                }))\n            };\n            var k = t.validateMaximum = function(e, t) {\n                    if (e > t) return \"Value must be less than Maximum\"\n                },\n                A = t.validateMinimum = function(e, t) {\n                    if (e < t) return \"Value must be greater than Minimum\"\n                },\n                O = t.validateNumber = function(e) {\n                    if (!/^-?\\d+(\\.?\\d+)?$/.test(e)) return \"Value must be a number\"\n                },\n                P = t.validateInteger = function(e) {\n                    if (!/^-?\\d+$/.test(e)) return \"Value must be an integer\"\n                },\n                T = t.validateFile = function(e) {\n                    if (e && !(e instanceof y.default.File)) return \"Value must be a file\"\n                },\n                M = t.validateBoolean = function(e) {\n                    if (\"true\" !== e && \"false\" !== e && !0 !== e && !1 !== e) return \"Value must be a boolean\"\n                },\n                I = t.validateString = function(e) {\n                    if (e && \"string\" != typeof e) return \"Value must be a string\"\n                },\n                j = t.validateDateTime = function(e) {\n                    if (isNaN(Date.parse(e))) return \"Value must be a DateTime\"\n                },\n                N = t.validateGuid = function(e) {\n                    if (e = e.toString().toLowerCase(), !/^[{(]?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}[)}]?$/.test(e)) return \"Value must be a Guid\"\n                },\n                R = t.validateMaxLength = function(e, t) {\n                    if (e.length > t) return \"Value must be less than MaxLength\"\n                },\n                D = t.validateMinLength = function(e, t) {\n                    if (e.length < t) return \"Value must be greater than MinLength\"\n                },\n                L = t.validatePattern = function(e, t) {\n                    if (!new RegExp(t).test(e)) return \"Value must follow pattern \" + t\n                };\n            t.validateParam = function(e, t) {\n                var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],\n                    r = [],\n                    o = t && \"body\" === e.get(\"in\") ? e.get(\"value_xml\") : e.get(\"value\"),\n                    i = e.get(\"required\"),\n                    a = n ? e.get(\"schema\") : e;\n                if (!a) return r;\n                var u = a.get(\"maximum\"),\n                    c = a.get(\"minimum\"),\n                    f = a.get(\"type\"),\n                    p = a.get(\"format\"),\n                    d = a.get(\"maxLength\"),\n                    h = a.get(\"minLength\"),\n                    v = a.get(\"pattern\");\n                if (f && (i || o)) {\n                    var m = \"string\" === f && o,\n                        g = \"array\" === f && Array.isArray(o) && o.length,\n                        b = \"array\" === f && l.default.List.isList(o) && o.count(),\n                        _ = \"file\" === f && o instanceof y.default.File,\n                        w = \"boolean\" === f && (o || !1 === o),\n                        E = \"number\" === f && (o || 0 === o),\n                        x = \"integer\" === f && (o || 0 === o),\n                        S = !1;\n                    if (n && \"object\" === f)\n                        if (\"object\" === (void 0 === o ? \"undefined\" : (0, s.default)(o))) S = !0;\n                        else if (\"string\" == typeof o) try {\n                            JSON.parse(o), S = !0\n                        } catch (e) {\n                            return r.push(\"Parameter string value must be valid JSON\"), r\n                        }\n                    var C = [m, g, b, _, w, E, x, S].some(function(e) {\n                        return !!e\n                    });\n                    if (i && !C) return r.push(\"Required field is not provided\"), r;\n                    if (v) {\n                        var U = L(o, v);\n                        U && r.push(U)\n                    }\n                    if (d || 0 === d) {\n                        var q = R(o, d);\n                        q && r.push(q)\n                    }\n                    if (h) {\n                        var F = D(o, h);\n                        F && r.push(F)\n                    }\n                    if (u || 0 === u) {\n                        var z = k(o, u);\n                        z && r.push(z)\n                    }\n                    if (c || 0 === c) {\n                        var B = A(o, c);\n                        B && r.push(B)\n                    }\n                    if (\"string\" === f) {\n                        var V = void 0;\n                        if (!(V = \"date-time\" === p ? j(o) : \"uuid\" === p ? N(o) : I(o))) return r;\n                        r.push(V)\n                    } else if (\"boolean\" === f) {\n                        var H = M(o);\n                        if (!H) return r;\n                        r.push(H)\n                    } else if (\"number\" === f) {\n                        var W = O(o);\n                        if (!W) return r;\n                        r.push(W)\n                    } else if (\"integer\" === f) {\n                        var J = P(o);\n                        if (!J) return r;\n                        r.push(J)\n                    } else if (\"array\" === f) {\n                        var Y;\n                        if (!b || !o.count()) return r;\n                        Y = a.getIn([\"items\", \"type\"]), o.forEach(function(e, t) {\n                            var n = void 0;\n                            \"number\" === Y ? n = O(e) : \"integer\" === Y ? n = P(e) : \"string\" === Y && (n = I(e)), n && r.push({\n                                index: t,\n                                error: n\n                            })\n                        })\n                    } else if (\"file\" === f) {\n                        var K = T(o);\n                        if (!K) return r;\n                        r.push(K)\n                    }\n                }\n                return r\n            }, t.getSampleSchema = function(e) {\n                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"\",\n                    n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\n                if (/xml/.test(t)) {\n                    if (!e.xml || !e.xml.name) {\n                        if (e.xml = e.xml || {}, !e.$$ref) return e.type || e.items || e.properties || e.additionalProperties ? '<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n\\x3c!-- XML example cannot be generated --\\x3e' : null;\n                        var o = e.$$ref.match(/\\S*\\/(\\S+)$/);\n                        e.xml.name = o[1]\n                    }\n                    return (0, g.memoizedCreateXMLExample)(e, n)\n                }\n                var i = (0, g.memoizedSampleFromSchema)(e, n);\n                return \"object\" === (void 0 === i ? \"undefined\" : (0, s.default)(i)) ? (0, r.default)(i, null, 2) : i\n            }, t.parseSearch = function() {\n                var e = {},\n                    t = y.default.location.search;\n                if (!t) return {};\n                if (\"\" != t) {\n                    var n = t.substr(1).split(\"&\");\n                    for (var r in n) n.hasOwnProperty(r) && (r = n[r].split(\"=\"), e[decodeURIComponent(r[0])] = r[1] && decodeURIComponent(r[1]) || \"\")\n                }\n                return e\n            }, t.serializeSearch = function(e) {\n                return (0, u.default)(e).map(function(t) {\n                    return encodeURIComponent(t) + \"=\" + encodeURIComponent(e[t])\n                }).join(\"&\")\n            }, t.btoa = function(t) {\n                return (t instanceof e ? t : new e(t.toString(), \"utf-8\")).toString(\"base64\")\n            }, t.sorters = {\n                operationsSorter: {\n                    alpha: function(e, t) {\n                        return e.get(\"path\").localeCompare(t.get(\"path\"))\n                    },\n                    method: function(e, t) {\n                        return e.get(\"method\").localeCompare(t.get(\"method\"))\n                    }\n                },\n                tagsSorter: {\n                    alpha: function(e, t) {\n                        return e.localeCompare(t)\n                    }\n                }\n            }, t.buildFormData = function(e) {\n                var t = [];\n                for (var n in e) {\n                    var r = e[n];\n                    void 0 !== r && \"\" !== r && t.push([n, \"=\", encodeURIComponent(r).replace(/%20/g, \"+\")].join(\"\"))\n                }\n                return t.join(\"&\")\n            }, t.shallowEqualKeys = function(e, t, n) {\n                return !!(0, h.default)(n, function(n) {\n                    return (0, m.default)(e[n], t[n])\n                })\n            };\n            var U = t.createDeepLinkPath = function(e) {\n                return \"string\" == typeof e || e instanceof String ? e.trim().replace(/\\s/g, \"_\") : \"\"\n            };\n            t.escapeDeepLinkPath = function(e) {\n                return (0, b.default)(U(e))\n            }, t.getExtensions = function(e) {\n                return e.filter(function(e, t) {\n                    return /^x-/.test(t)\n                })\n            }, t.getCommonExtensions = function(e) {\n                return e.filter(function(e, t) {\n                    return /^pattern|maxLength|minLength|maximum|minimum/.test(t)\n                })\n            }\n        }).call(t, n(54).Buffer)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            for (var t = arguments.length - 1, n = \"Minified React error #\" + e + \"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=\" + e, r = 0; r < t; r++) n += \"&args[]=\" + encodeURIComponent(arguments[r + 1]);\n            n += \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\";\n            var o = new Error(n);\n            throw o.name = \"Invariant Violation\", o.framesToPop = 1, o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(7),\n            o = \"<<anonymous>>\",\n            i = {\n                listOf: function(e) {\n                    return l(e, \"List\", r.List.isList)\n                },\n                mapOf: function(e, t) {\n                    return c(e, t, \"Map\", r.Map.isMap)\n                },\n                orderedMapOf: function(e, t) {\n                    return c(e, t, \"OrderedMap\", r.OrderedMap.isOrderedMap)\n                },\n                setOf: function(e) {\n                    return l(e, \"Set\", r.Set.isSet)\n                },\n                orderedSetOf: function(e) {\n                    return l(e, \"OrderedSet\", r.OrderedSet.isOrderedSet)\n                },\n                stackOf: function(e) {\n                    return l(e, \"Stack\", r.Stack.isStack)\n                },\n                iterableOf: function(e) {\n                    return l(e, \"Iterable\", r.Iterable.isIterable)\n                },\n                recordOf: function(e) {\n                    return u(function(t, n, o, i, u) {\n                        for (var s = arguments.length, l = Array(s > 5 ? s - 5 : 0), c = 5; c < s; c++) l[c - 5] = arguments[c];\n                        var f = t[n];\n                        if (!(f instanceof r.Record)) {\n                            var p = a(f),\n                                d = i;\n                            return new Error(\"Invalid \" + d + \" `\" + u + \"` of type `\" + p + \"` supplied to `\" + o + \"`, expected an Immutable.js Record.\")\n                        }\n                        for (var h in e) {\n                            var v = e[h];\n                            if (v) {\n                                var m = f.toObject(),\n                                    g = v.apply(void 0, [m, h, o, i, u + \".\" + h].concat(l));\n                                if (g) return g\n                            }\n                        }\n                    })\n                },\n                shape: p,\n                contains: p,\n                mapContains: function(e) {\n                    return f(e, \"Map\", r.Map.isMap)\n                },\n                list: s(\"List\", r.List.isList),\n                map: s(\"Map\", r.Map.isMap),\n                orderedMap: s(\"OrderedMap\", r.OrderedMap.isOrderedMap),\n                set: s(\"Set\", r.Set.isSet),\n                orderedSet: s(\"OrderedSet\", r.OrderedSet.isOrderedSet),\n                stack: s(\"Stack\", r.Stack.isStack),\n                seq: s(\"Seq\", r.Seq.isSeq),\n                record: s(\"Record\", function(e) {\n                    return e instanceof r.Record\n                }),\n                iterable: s(\"Iterable\", r.Iterable.isIterable)\n            };\n\n        function a(e) {\n            var t = typeof e;\n            return Array.isArray(e) ? \"array\" : e instanceof RegExp ? \"object\" : e instanceof r.Iterable ? \"Immutable.\" + e.toSource().split(\" \")[0] : t\n        }\n\n        function u(e) {\n            function t(t, n, r, i, a, u) {\n                for (var s = arguments.length, l = Array(s > 6 ? s - 6 : 0), c = 6; c < s; c++) l[c - 6] = arguments[c];\n                return u = u || r, i = i || o, null != n[r] ? e.apply(void 0, [n, r, i, a, u].concat(l)) : t ? new Error(\"Required \" + a + \" `\" + u + \"` was not specified in `\" + i + \"`.\") : void 0\n            }\n            var n = t.bind(null, !1);\n            return n.isRequired = t.bind(null, !0), n\n        }\n\n        function s(e, t) {\n            return u(function(n, r, o, i, u) {\n                var s = n[r];\n                if (!t(s)) {\n                    var l = a(s);\n                    return new Error(\"Invalid \" + i + \" `\" + u + \"` of type `\" + l + \"` supplied to `\" + o + \"`, expected `\" + e + \"`.\")\n                }\n                return null\n            })\n        }\n\n        function l(e, t, n) {\n            return u(function(r, o, i, u, s) {\n                for (var l = arguments.length, c = Array(l > 5 ? l - 5 : 0), f = 5; f < l; f++) c[f - 5] = arguments[f];\n                var p = r[o];\n                if (!n(p)) {\n                    var d = u,\n                        h = a(p);\n                    return new Error(\"Invalid \" + d + \" `\" + s + \"` of type `\" + h + \"` supplied to `\" + i + \"`, expected an Immutable.js \" + t + \".\")\n                }\n                if (\"function\" != typeof e) return new Error(\"Invalid typeChecker supplied to `\" + i + \"` for propType `\" + s + \"`, expected a function.\");\n                for (var v = p.toArray(), m = 0, g = v.length; m < g; m++) {\n                    var y = e.apply(void 0, [v, m, i, u, s + \"[\" + m + \"]\"].concat(c));\n                    if (y instanceof Error) return y\n                }\n            })\n        }\n\n        function c(e, t, n, r) {\n            return u(function() {\n                for (var o = arguments.length, i = Array(o), a = 0; a < o; a++) i[a] = arguments[a];\n                return l(e, n, r).apply(void 0, i) || t && (s = t, u(function(e, t, n, r, o) {\n                    for (var i = arguments.length, a = Array(i > 5 ? i - 5 : 0), u = 5; u < i; u++) a[u - 5] = arguments[u];\n                    var l = e[t];\n                    if (\"function\" != typeof s) return new Error(\"Invalid keysTypeChecker (optional second argument) supplied to `\" + n + \"` for propType `\" + o + \"`, expected a function.\");\n                    for (var c = l.keySeq().toArray(), f = 0, p = c.length; f < p; f++) {\n                        var d = s.apply(void 0, [c, f, n, r, o + \" -> key(\" + c[f] + \")\"].concat(a));\n                        if (d instanceof Error) return d\n                    }\n                })).apply(void 0, i);\n                var s\n            })\n        }\n\n        function f(e) {\n            var t = void 0 === arguments[1] ? \"Iterable\" : arguments[1],\n                n = void 0 === arguments[2] ? r.Iterable.isIterable : arguments[2];\n            return u(function(r, o, i, u, s) {\n                for (var l = arguments.length, c = Array(l > 5 ? l - 5 : 0), f = 5; f < l; f++) c[f - 5] = arguments[f];\n                var p = r[o];\n                if (!n(p)) {\n                    var d = a(p);\n                    return new Error(\"Invalid \" + u + \" `\" + s + \"` of type `\" + d + \"` supplied to `\" + i + \"`, expected an Immutable.js \" + t + \".\")\n                }\n                var h = p.toObject();\n                for (var v in e) {\n                    var m = e[v];\n                    if (m) {\n                        var g = m.apply(void 0, [h, v, i, u, s + \".\" + v].concat(c));\n                        if (g) return g\n                    }\n                }\n            })\n        }\n\n        function p(e) {\n            return f(e)\n        }\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        /*\n        object-assign\n        (c) Sindre Sorhus\n        @license MIT\n        */\n        var r = Object.getOwnPropertySymbols,\n            o = Object.prototype.hasOwnProperty,\n            i = Object.prototype.propertyIsEnumerable;\n        e.exports = function() {\n            try {\n                if (!Object.assign) return !1;\n                var e = new String(\"abc\");\n                if (e[5] = \"de\", \"5\" === Object.getOwnPropertyNames(e)[0]) return !1;\n                for (var t = {}, n = 0; n < 10; n++) t[\"_\" + String.fromCharCode(n)] = n;\n                if (\"0123456789\" !== Object.getOwnPropertyNames(t).map(function(e) {\n                    return t[e]\n                }).join(\"\")) return !1;\n                var r = {};\n                return \"abcdefghijklmnopqrst\".split(\"\").forEach(function(e) {\n                    r[e] = e\n                }), \"abcdefghijklmnopqrst\" === Object.keys(Object.assign({}, r)).join(\"\")\n            } catch (e) {\n                return !1\n            }\n        }() ? Object.assign : function(e, t) {\n            for (var n, a, u = function(e) {\n                if (null === e || void 0 === e) throw new TypeError(\"Object.assign cannot be called with null or undefined\");\n                return Object(e)\n            }(e), s = 1; s < arguments.length; s++) {\n                for (var l in n = Object(arguments[s])) o.call(n, l) && (u[l] = n[l]);\n                if (r) {\n                    a = r(n);\n                    for (var c = 0; c < a.length; c++) i.call(n, a[c]) && (u[a[c]] = n[a[c]])\n                }\n            }\n            return u\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(87),\n            i = n(350),\n            a = (n(8), o.ID_ATTRIBUTE_NAME),\n            u = i,\n            s = \"__reactInternalInstance$\" + Math.random().toString(36).slice(2);\n\n        function l(e, t) {\n            return 1 === e.nodeType && e.getAttribute(a) === String(t) || 8 === e.nodeType && e.nodeValue === \" react-text: \" + t + \" \" || 8 === e.nodeType && e.nodeValue === \" react-empty: \" + t + \" \"\n        }\n\n        function c(e) {\n            for (var t; t = e._renderedComponent;) e = t;\n            return e\n        }\n\n        function f(e, t) {\n            var n = c(e);\n            n._hostNode = t, t[s] = n\n        }\n\n        function p(e, t) {\n            if (!(e._flags & u.hasCachedChildNodes)) {\n                var n = e._renderedChildren,\n                    o = t.firstChild;\n                e: for (var i in n)\n                    if (n.hasOwnProperty(i)) {\n                        var a = n[i],\n                            s = c(a)._domID;\n                        if (0 !== s) {\n                            for (; null !== o; o = o.nextSibling)\n                                if (l(o, s)) {\n                                    f(a, o);\n                                    continue e\n                                }\n                            r(\"32\", s)\n                        }\n                    }\n                e._flags |= u.hasCachedChildNodes\n            }\n        }\n\n        function d(e) {\n            if (e[s]) return e[s];\n            for (var t, n, r = []; !e[s];) {\n                if (r.push(e), !e.parentNode) return null;\n                e = e.parentNode\n            }\n            for (; e && (n = e[s]); e = r.pop()) t = n, r.length && p(n, e);\n            return t\n        }\n        var h = {\n            getClosestInstanceFromNode: d,\n            getInstanceFromNode: function(e) {\n                var t = d(e);\n                return null != t && t._hostNode === e ? t : null\n            },\n            getNodeFromInstance: function(e) {\n                if (void 0 === e._hostNode && r(\"33\"), e._hostNode) return e._hostNode;\n                for (var t = []; !e._hostNode;) t.push(e), e._hostParent || r(\"34\"), e = e._hostParent;\n                for (; t.length; e = t.pop()) p(e, e._hostNode);\n                return e._hostNode\n            },\n            precacheChildNodes: p,\n            precacheNode: f,\n            uncacheNode: function(e) {\n                var t = e._hostNode;\n                t && (delete t[s], e._hostNode = null)\n            }\n        };\n        e.exports = h\n    }, function(e, t) {\n        var n = e.exports = {\n            version: \"2.5.5\"\n        };\n        \"number\" == typeof __e && (__e = n)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(107),\n            o = [\"kind\", \"resolve\", \"construct\", \"instanceOf\", \"predicate\", \"represent\", \"defaultStyle\", \"styleAliases\"],\n            i = [\"scalar\", \"sequence\", \"mapping\"];\n        e.exports = function(e, t) {\n            var n, a;\n            if (t = t || {}, Object.keys(t).forEach(function(t) {\n                if (-1 === o.indexOf(t)) throw new r('Unknown option \"' + t + '\" is met in definition of \"' + e + '\" YAML type.')\n            }), this.tag = e, this.kind = t.kind || null, this.resolve = t.resolve || function() {\n                return !0\n            }, this.construct = t.construct || function(e) {\n                return e\n            }, this.instanceOf = t.instanceOf || null, this.predicate = t.predicate || null, this.represent = t.represent || null, this.defaultStyle = t.defaultStyle || null, this.styleAliases = (n = t.styleAliases || null, a = {}, null !== n && Object.keys(n).forEach(function(e) {\n                n[e].forEach(function(t) {\n                    a[String(t)] = e\n                })\n            }), a), -1 === i.indexOf(this.kind)) throw new r('Unknown kind \"' + this.kind + '\" is specified for \"' + e + '\" YAML type.')\n        }\n    }, function(e, t, n) {\n        var r = n(242)(\"wks\"),\n            o = n(167),\n            i = n(33).Symbol,\n            a = \"function\" == typeof i;\n        (e.exports = function(e) {\n            return r[e] || (r[e] = a && i[e] || (a ? i : o)(\"Symbol.\" + e))\n        }).store = r\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r = i(n(568)),\n            o = i(n(91));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function() {\n            return function(e, t) {\n                if (Array.isArray(e)) return e;\n                if ((0, r.default)(Object(e))) return function(e, t) {\n                    var n = [],\n                        r = !0,\n                        i = !1,\n                        a = void 0;\n                    try {\n                        for (var u, s = (0, o.default)(e); !(r = (u = s.next()).done) && (n.push(u.value), !t || n.length !== t); r = !0);\n                    } catch (e) {\n                        i = !0, a = e\n                    } finally {\n                        try {\n                            !r && s.return && s.return()\n                        } finally {\n                            if (i) throw a\n                        }\n                    }\n                    return n\n                }(e, t);\n                throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")\n            }\n        }()\n    }, function(e, t, n) {\n        var r = n(162)(\"wks\"),\n            o = n(116),\n            i = n(21).Symbol,\n            a = \"function\" == typeof i;\n        (e.exports = function(e) {\n            return r[e] || (r[e] = a && i[e] || (a ? i : o)(\"Symbol.\" + e))\n        }).store = r\n    }, function(e, t, n) {\n        var r = n(21),\n            o = n(15),\n            i = n(49),\n            a = n(50),\n            u = n(52),\n            s = function(e, t, n) {\n                var l, c, f, p = e & s.F,\n                    d = e & s.G,\n                    h = e & s.S,\n                    v = e & s.P,\n                    m = e & s.B,\n                    g = e & s.W,\n                    y = d ? o : o[t] || (o[t] = {}),\n                    b = y.prototype,\n                    _ = d ? r : h ? r[t] : (r[t] || {}).prototype;\n                for (l in d && (n = t), n)(c = !p && _ && void 0 !== _[l]) && u(y, l) || (f = c ? _[l] : n[l], y[l] = d && \"function\" != typeof _[l] ? n[l] : m && c ? i(f, r) : g && _[l] == f ? function(e) {\n                    var t = function(t, n, r) {\n                        if (this instanceof e) {\n                            switch (arguments.length) {\n                                case 0:\n                                    return new e;\n                                case 1:\n                                    return new e(t);\n                                case 2:\n                                    return new e(t, n)\n                            }\n                            return new e(t, n, r)\n                        }\n                        return e.apply(this, arguments)\n                    };\n                    return t.prototype = e.prototype, t\n                }(f) : v && \"function\" == typeof f ? i(Function.call, f) : f, v && ((y.virtual || (y.virtual = {}))[l] = f, e & s.R && b && !b[l] && a(b, l, f)))\n            };\n        s.F = 1, s.G = 2, s.S = 4, s.P = 8, s.B = 16, s.W = 32, s.U = 64, s.R = 128, e.exports = s\n    }, function(e, t) {\n        var n = e.exports = \"undefined\" != typeof window && window.Math == Math ? window : \"undefined\" != typeof self && self.Math == Math ? self : Function(\"return this\")();\n        \"number\" == typeof __g && (__g = n)\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(262),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = function(e, t, n) {\n            return t in e ? (0, i.default)(e, t, {\n                value: n,\n                enumerable: !0,\n                configurable: !0,\n                writable: !0\n            }) : e[t] = n, e\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(533),\n            __esModule: !0\n        }\n    }, function(e, t) {\n        var n = Array.isArray;\n        e.exports = n\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(23),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = i.default || function(e) {\n            for (var t = 1; t < arguments.length; t++) {\n                var n = arguments[t];\n                for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])\n            }\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = !(\"undefined\" == typeof window || !window.document || !window.document.createElement),\n            o = {\n                canUseDOM: r,\n                canUseWorkers: \"undefined\" != typeof Worker,\n                canUseEventListeners: r && !(!window.addEventListener && !window.attachEvent),\n                canUseViewport: r && !!window.screen,\n                isInWorker: !r\n            };\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.hasOwnProperty;\n\n        function o(e, t) {\n            return !!e && r.call(e, t)\n        }\n        var i = /\\\\([\\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;\n\n        function a(e) {\n            return !(e >= 55296 && e <= 57343) && (!(e >= 64976 && e <= 65007) && (65535 != (65535 & e) && 65534 != (65535 & e) && (!(e >= 0 && e <= 8) && (11 !== e && (!(e >= 14 && e <= 31) && (!(e >= 127 && e <= 159) && !(e > 1114111)))))))\n        }\n\n        function u(e) {\n            if (e > 65535) {\n                var t = 55296 + ((e -= 65536) >> 10),\n                    n = 56320 + (1023 & e);\n                return String.fromCharCode(t, n)\n            }\n            return String.fromCharCode(e)\n        }\n        var s = /&([a-z#][a-z0-9]{1,31});/gi,\n            l = /^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i,\n            c = n(416);\n\n        function f(e, t) {\n            var n = 0;\n            return o(c, t) ? c[t] : 35 === t.charCodeAt(0) && l.test(t) && a(n = \"x\" === t[1].toLowerCase() ? parseInt(t.slice(2), 16) : parseInt(t.slice(1), 10)) ? u(n) : e\n        }\n        var p = /[&<>\"]/,\n            d = /[&<>\"]/g,\n            h = {\n                \"&\": \"&amp;\",\n                \"<\": \"&lt;\",\n                \">\": \"&gt;\",\n                '\"': \"&quot;\"\n            };\n\n        function v(e) {\n            return h[e]\n        }\n        t.assign = function(e) {\n            return [].slice.call(arguments, 1).forEach(function(t) {\n                if (t) {\n                    if (\"object\" != typeof t) throw new TypeError(t + \"must be object\");\n                    Object.keys(t).forEach(function(n) {\n                        e[n] = t[n]\n                    })\n                }\n            }), e\n        }, t.isString = function(e) {\n            return \"[object String]\" === function(e) {\n                return Object.prototype.toString.call(e)\n            }(e)\n        }, t.has = o, t.unescapeMd = function(e) {\n            return e.indexOf(\"\\\\\") < 0 ? e : e.replace(i, \"$1\")\n        }, t.isValidEntityCode = a, t.fromCodePoint = u, t.replaceEntities = function(e) {\n            return e.indexOf(\"&\") < 0 ? e : e.replace(s, f)\n        }, t.escapeHtml = function(e) {\n            return p.test(e) ? e.replace(d, v) : e\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return \"object\" == typeof e ? null !== e : \"function\" == typeof e\n        }\n    }, function(e, t, n) {\n        var r = n(33),\n            o = n(60),\n            i = n(58),\n            a = n(73),\n            u = n(120),\n            s = function(e, t, n) {\n                var l, c, f, p, d = e & s.F,\n                    h = e & s.G,\n                    v = e & s.S,\n                    m = e & s.P,\n                    g = e & s.B,\n                    y = h ? r : v ? r[t] || (r[t] = {}) : (r[t] || {}).prototype,\n                    b = h ? o : o[t] || (o[t] = {}),\n                    _ = b.prototype || (b.prototype = {});\n                for (l in h && (n = t), n) f = ((c = !d && y && void 0 !== y[l]) ? y : n)[l], p = g && c ? u(f, r) : m && \"function\" == typeof f ? u(Function.call, f) : f, y && a(y, l, f, e & s.U), b[l] != f && i(b, l, p), m && _[l] != f && (_[l] = f)\n            };\n        r.core = o, s.F = 1, s.G = 2, s.S = 4, s.P = 8, s.B = 16, s.W = 32, s.U = 64, s.R = 128, e.exports = s\n    }, function(e, t, n) {\n        var r = n(29),\n            o = n(101),\n            i = n(53),\n            a = /\"/g,\n            u = function(e, t, n, r) {\n                var o = String(i(e)),\n                    u = \"<\" + t;\n                return \"\" !== n && (u += \" \" + n + '=\"' + String(r).replace(a, \"&quot;\") + '\"'), u + \">\" + o + \"</\" + t + \">\"\n            };\n        e.exports = function(e, t) {\n            var n = {};\n            n[e] = t(u), r(r.P + r.F * o(function() {\n                var t = \"\" [e]('\"');\n                return t !== t.toLowerCase() || t.split('\"').length > 3\n            }), \"String\", n)\n        }\n    }, function(e, t) {\n        var n;\n        n = function() {\n            return this\n        }();\n        try {\n            n = n || Function(\"return this\")() || (0, eval)(\"this\")\n        } catch (e) {\n            \"object\" == typeof window && (n = window)\n        }\n        e.exports = n\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(91),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        e.exports = function() {\n            var e = {\n                location: {},\n                history: {},\n                open: function() {},\n                close: function() {},\n                File: function() {}\n            };\n            if (\"undefined\" == typeof window) return e;\n            try {\n                e = window;\n                var t = !0,\n                    n = !1,\n                    r = void 0;\n                try {\n                    for (var o, a = (0, i.default)([\"File\", \"Blob\", \"FormData\"]); !(t = (o = a.next()).done); t = !0) {\n                        var u = o.value;\n                        u in window && (e[u] = window[u])\n                    }\n                } catch (e) {\n                    n = !0, r = e\n                } finally {\n                    try {\n                        !t && a.return && a.return()\n                    } finally {\n                        if (n) throw r\n                    }\n                }\n            } catch (e) {\n                console.error(e)\n            }\n            return e\n        }()\n    }, function(e, t) {\n        var n = e.exports = \"undefined\" != typeof window && window.Math == Math ? window : \"undefined\" != typeof self && self.Math == Math ? self : Function(\"return this\")();\n        \"number\" == typeof __g && (__g = n)\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e) {\n            return function() {\n                return e\n            }\n        }\n        var o = function() {};\n        o.thatReturns = r, o.thatReturnsFalse = r(!1), o.thatReturnsTrue = r(!0), o.thatReturnsNull = r(null), o.thatReturnsThis = function() {\n            return this\n        }, o.thatReturnsArgument = function(e) {\n            return e\n        }, e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = i(n(25));\n        t.isOAS3 = a, t.isSwagger2 = function(e) {\n            var t = e.get(\"swagger\");\n            if (\"string\" != typeof t) return !1;\n            return t.startsWith(\"2.0\")\n        }, t.OAS3ComponentWrapFactory = function(e) {\n            return function(t, n) {\n                return function(i) {\n                    if (n && n.specSelectors && n.specSelectors.specJson) {\n                        var u = n.specSelectors.specJson();\n                        return a(u) ? o.default.createElement(e, (0, r.default)({}, i, n, {\n                            Ori: t\n                        })) : o.default.createElement(t, i)\n                    }\n                    return console.warn(\"OAS3 wrapper: couldn't get spec\"), null\n                }\n            }\n        };\n        var o = i(n(0));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n\n        function a(e) {\n            var t = e.get(\"openapi\");\n            return \"string\" == typeof t && (t.startsWith(\"3.0.\") && t.length > 4)\n        }\n    }, function(e, t, n) {\n        var r = n(28);\n        e.exports = function(e) {\n            if (!r(e)) throw TypeError(e + \" is not an object!\");\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(278),\n            o = \"object\" == typeof self && self && self.Object === Object && self,\n            i = r || o || Function(\"return this\")();\n        e.exports = i\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = typeof e;\n            return null != e && (\"object\" == t || \"function\" == t)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = null;\n        e.exports = {\n            debugTool: r\n        }\n    }, function(e, t, n) {\n        var r = n(36),\n            o = n(238),\n            i = n(157),\n            a = Object.defineProperty;\n        t.f = n(44) ? Object.defineProperty : function(e, t, n) {\n            if (r(e), t = i(t, !0), r(n), o) try {\n                return a(e, t, n)\n            } catch (e) {}\n            if (\"get\" in n || \"set\" in n) throw TypeError(\"Accessors not supported!\");\n            return \"value\" in n && (e[t] = n.value), e\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(516),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(517),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(354),\n            a = n(69),\n            u = n(355),\n            s = n(88),\n            l = n(147),\n            c = n(8),\n            f = [],\n            p = 0,\n            d = i.getPooled(),\n            h = !1,\n            v = null;\n\n        function m() {\n            E.ReactReconcileTransaction && v || r(\"123\")\n        }\n        var g = [{\n            initialize: function() {\n                this.dirtyComponentsLength = f.length\n            },\n            close: function() {\n                this.dirtyComponentsLength !== f.length ? (f.splice(0, this.dirtyComponentsLength), w()) : f.length = 0\n            }\n        }, {\n            initialize: function() {\n                this.callbackQueue.reset()\n            },\n            close: function() {\n                this.callbackQueue.notifyAll()\n            }\n        }];\n\n        function y() {\n            this.reinitializeTransaction(), this.dirtyComponentsLength = null, this.callbackQueue = i.getPooled(), this.reconcileTransaction = E.ReactReconcileTransaction.getPooled(!0)\n        }\n\n        function b(e, t) {\n            return e._mountOrder - t._mountOrder\n        }\n\n        function _(e) {\n            var t = e.dirtyComponentsLength;\n            t !== f.length && r(\"124\", t, f.length), f.sort(b), p++;\n            for (var n = 0; n < t; n++) {\n                var o, i = f[n],\n                    a = i._pendingCallbacks;\n                if (i._pendingCallbacks = null, u.logTopLevelRenders) {\n                    var l = i;\n                    i._currentElement.type.isReactTopLevelWrapper && (l = i._renderedComponent), o = \"React update: \" + l.getName(), console.time(o)\n                }\n                if (s.performUpdateIfNecessary(i, e.reconcileTransaction, p), o && console.timeEnd(o), a)\n                    for (var c = 0; c < a.length; c++) e.callbackQueue.enqueue(a[c], i.getPublicInstance())\n            }\n        }\n        o(y.prototype, l, {\n            getTransactionWrappers: function() {\n                return g\n            },\n            destructor: function() {\n                this.dirtyComponentsLength = null, i.release(this.callbackQueue), this.callbackQueue = null, E.ReactReconcileTransaction.release(this.reconcileTransaction), this.reconcileTransaction = null\n            },\n            perform: function(e, t, n) {\n                return l.perform.call(this, this.reconcileTransaction.perform, this.reconcileTransaction, e, t, n)\n            }\n        }), a.addPoolingTo(y);\n        var w = function() {\n            for (; f.length || h;) {\n                if (f.length) {\n                    var e = y.getPooled();\n                    e.perform(_, null, e), y.release(e)\n                }\n                if (h) {\n                    h = !1;\n                    var t = d;\n                    d = i.getPooled(), t.notifyAll(), i.release(t)\n                }\n            }\n        };\n        var E = {\n            ReactReconcileTransaction: null,\n            batchedUpdates: function(e, t, n, r, o, i) {\n                return m(), v.batchedUpdates(e, t, n, r, o, i)\n            },\n            enqueueUpdate: function e(t) {\n                m(), v.isBatchingUpdates ? (f.push(t), null == t._updateBatchNumber && (t._updateBatchNumber = p + 1)) : v.batchedUpdates(e, t)\n            },\n            flushBatchedUpdates: w,\n            injection: {\n                injectReconcileTransaction: function(e) {\n                    e || r(\"126\"), E.ReactReconcileTransaction = e\n                },\n                injectBatchingStrategy: function(e) {\n                    e || r(\"127\"), \"function\" != typeof e.batchedUpdates && r(\"128\"), \"boolean\" != typeof e.isBatchingUpdates && r(\"129\"), v = e\n                }\n            },\n            asap: function(e, t) {\n                c(v.isBatchingUpdates, \"ReactUpdates.asap: Can't enqueue an asap callback in a context whereupdates are not being batched.\"), d.enqueue(e, t), h = !0\n            }\n        };\n        e.exports = E\n    }, function(e, t, n) {\n        e.exports = !n(51)(function() {\n            return 7 != Object.defineProperty({}, \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r = a(n(519)),\n            o = a(n(521)),\n            i = \"function\" == typeof o.default && \"symbol\" == typeof r.default ? function(e) {\n                return typeof e\n            } : function(e) {\n                return e && \"function\" == typeof o.default && e.constructor === o.default && e !== o.default.prototype ? \"symbol\" : typeof e\n            };\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = \"function\" == typeof o.default && \"symbol\" === i(r.default) ? function(e) {\n            return void 0 === e ? \"undefined\" : i(e)\n        } : function(e) {\n            return e && \"function\" == typeof o.default && e.constructor === o.default && e !== o.default.prototype ? \"symbol\" : void 0 === e ? \"undefined\" : i(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            current: null\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return null != e && \"object\" == typeof e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(69),\n            i = n(34),\n            a = (n(9), [\"dispatchConfig\", \"_targetInst\", \"nativeEvent\", \"isDefaultPrevented\", \"isPropagationStopped\", \"_dispatchListeners\", \"_dispatchInstances\"]),\n            u = {\n                type: null,\n                target: null,\n                currentTarget: i.thatReturnsNull,\n                eventPhase: null,\n                bubbles: null,\n                cancelable: null,\n                timeStamp: function(e) {\n                    return e.timeStamp || Date.now()\n                },\n                defaultPrevented: null,\n                isTrusted: null\n            };\n\n        function s(e, t, n, r) {\n            this.dispatchConfig = e, this._targetInst = t, this.nativeEvent = n;\n            var o = this.constructor.Interface;\n            for (var a in o)\n                if (o.hasOwnProperty(a)) {\n                    0;\n                    var u = o[a];\n                    u ? this[a] = u(n) : \"target\" === a ? this.target = r : this[a] = n[a]\n                }\n            var s = null != n.defaultPrevented ? n.defaultPrevented : !1 === n.returnValue;\n            return this.isDefaultPrevented = s ? i.thatReturnsTrue : i.thatReturnsFalse, this.isPropagationStopped = i.thatReturnsFalse, this\n        }\n        r(s.prototype, {\n            preventDefault: function() {\n                this.defaultPrevented = !0;\n                var e = this.nativeEvent;\n                e && (e.preventDefault ? e.preventDefault() : \"unknown\" != typeof e.returnValue && (e.returnValue = !1), this.isDefaultPrevented = i.thatReturnsTrue)\n            },\n            stopPropagation: function() {\n                var e = this.nativeEvent;\n                e && (e.stopPropagation ? e.stopPropagation() : \"unknown\" != typeof e.cancelBubble && (e.cancelBubble = !0), this.isPropagationStopped = i.thatReturnsTrue)\n            },\n            persist: function() {\n                this.isPersistent = i.thatReturnsTrue\n            },\n            isPersistent: i.thatReturnsFalse,\n            destructor: function() {\n                var e = this.constructor.Interface;\n                for (var t in e) this[t] = null;\n                for (var n = 0; n < a.length; n++) this[a[n]] = null\n            }\n        }), s.Interface = u, s.augmentClass = function(e, t) {\n            var n = function() {};\n            n.prototype = this.prototype;\n            var i = new n;\n            r(i, e.prototype), e.prototype = i, e.prototype.constructor = e, e.Interface = r({}, this.Interface, t), e.augmentClass = this.augmentClass, o.addPoolingTo(e, o.fourArgumentPooler)\n        }, o.addPoolingTo(s, o.fourArgumentPooler), e.exports = s\n    }, function(e, t, n) {\n        var r = n(94);\n        e.exports = function(e, t, n) {\n            if (r(e), void 0 === t) return e;\n            switch (n) {\n                case 1:\n                    return function(n) {\n                        return e.call(t, n)\n                    };\n                case 2:\n                    return function(n, r) {\n                        return e.call(t, n, r)\n                    };\n                case 3:\n                    return function(n, r, o) {\n                        return e.call(t, n, r, o)\n                    }\n            }\n            return function() {\n                return e.apply(t, arguments)\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(40),\n            o = n(95);\n        e.exports = n(44) ? function(e, t, n) {\n            return r.f(e, t, o(1, n))\n        } : function(e, t, n) {\n            return e[t] = n, e\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            try {\n                return !!e()\n            } catch (e) {\n                return !0\n            }\n        }\n    }, function(e, t) {\n        var n = {}.hasOwnProperty;\n        e.exports = function(e, t) {\n            return n.call(e, t)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            if (void 0 == e) throw TypeError(\"Can't call method on  \" + e);\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(e) {\n            /*!\n             * The buffer module from node.js, for the browser.\n             *\n             * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n             * @license  MIT\n             */\n            var r = n(528),\n                o = n(529),\n                i = n(261);\n\n            function a() {\n                return s.TYPED_ARRAY_SUPPORT ? 2147483647 : 1073741823\n            }\n\n            function u(e, t) {\n                if (a() < t) throw new RangeError(\"Invalid typed array length\");\n                return s.TYPED_ARRAY_SUPPORT ? (e = new Uint8Array(t)).__proto__ = s.prototype : (null === e && (e = new s(t)), e.length = t), e\n            }\n\n            function s(e, t, n) {\n                if (!(s.TYPED_ARRAY_SUPPORT || this instanceof s)) return new s(e, t, n);\n                if (\"number\" == typeof e) {\n                    if (\"string\" == typeof t) throw new Error(\"If encoding is specified then the first argument must be a string\");\n                    return f(this, e)\n                }\n                return l(this, e, t, n)\n            }\n\n            function l(e, t, n, r) {\n                if (\"number\" == typeof t) throw new TypeError('\"value\" argument must not be a number');\n                return \"undefined\" != typeof ArrayBuffer && t instanceof ArrayBuffer ? function(e, t, n, r) {\n                    if (t.byteLength, n < 0 || t.byteLength < n) throw new RangeError(\"'offset' is out of bounds\");\n                    if (t.byteLength < n + (r || 0)) throw new RangeError(\"'length' is out of bounds\");\n                    t = void 0 === n && void 0 === r ? new Uint8Array(t) : void 0 === r ? new Uint8Array(t, n) : new Uint8Array(t, n, r);\n                    s.TYPED_ARRAY_SUPPORT ? (e = t).__proto__ = s.prototype : e = p(e, t);\n                    return e\n                }(e, t, n, r) : \"string\" == typeof t ? function(e, t, n) {\n                    \"string\" == typeof n && \"\" !== n || (n = \"utf8\");\n                    if (!s.isEncoding(n)) throw new TypeError('\"encoding\" must be a valid string encoding');\n                    var r = 0 | h(t, n),\n                        o = (e = u(e, r)).write(t, n);\n                    o !== r && (e = e.slice(0, o));\n                    return e\n                }(e, t, n) : function(e, t) {\n                    if (s.isBuffer(t)) {\n                        var n = 0 | d(t.length);\n                        return 0 === (e = u(e, n)).length ? e : (t.copy(e, 0, 0, n), e)\n                    }\n                    if (t) {\n                        if (\"undefined\" != typeof ArrayBuffer && t.buffer instanceof ArrayBuffer || \"length\" in t) return \"number\" != typeof t.length || (r = t.length) != r ? u(e, 0) : p(e, t);\n                        if (\"Buffer\" === t.type && i(t.data)) return p(e, t.data)\n                    }\n                    var r;\n                    throw new TypeError(\"First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\")\n                }(e, t)\n            }\n\n            function c(e) {\n                if (\"number\" != typeof e) throw new TypeError('\"size\" argument must be a number');\n                if (e < 0) throw new RangeError('\"size\" argument must not be negative')\n            }\n\n            function f(e, t) {\n                if (c(t), e = u(e, t < 0 ? 0 : 0 | d(t)), !s.TYPED_ARRAY_SUPPORT)\n                    for (var n = 0; n < t; ++n) e[n] = 0;\n                return e\n            }\n\n            function p(e, t) {\n                var n = t.length < 0 ? 0 : 0 | d(t.length);\n                e = u(e, n);\n                for (var r = 0; r < n; r += 1) e[r] = 255 & t[r];\n                return e\n            }\n\n            function d(e) {\n                if (e >= a()) throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\" + a().toString(16) + \" bytes\");\n                return 0 | e\n            }\n\n            function h(e, t) {\n                if (s.isBuffer(e)) return e.length;\n                if (\"undefined\" != typeof ArrayBuffer && \"function\" == typeof ArrayBuffer.isView && (ArrayBuffer.isView(e) || e instanceof ArrayBuffer)) return e.byteLength;\n                \"string\" != typeof e && (e = \"\" + e);\n                var n = e.length;\n                if (0 === n) return 0;\n                for (var r = !1;;) switch (t) {\n                    case \"ascii\":\n                    case \"latin1\":\n                    case \"binary\":\n                        return n;\n                    case \"utf8\":\n                    case \"utf-8\":\n                    case void 0:\n                        return F(e).length;\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                        return 2 * n;\n                    case \"hex\":\n                        return n >>> 1;\n                    case \"base64\":\n                        return z(e).length;\n                    default:\n                        if (r) return F(e).length;\n                        t = (\"\" + t).toLowerCase(), r = !0\n                }\n            }\n\n            function v(e, t, n) {\n                var r = e[t];\n                e[t] = e[n], e[n] = r\n            }\n\n            function m(e, t, n, r, o) {\n                if (0 === e.length) return -1;\n                if (\"string\" == typeof n ? (r = n, n = 0) : n > 2147483647 ? n = 2147483647 : n < -2147483648 && (n = -2147483648), n = +n, isNaN(n) && (n = o ? 0 : e.length - 1), n < 0 && (n = e.length + n), n >= e.length) {\n                    if (o) return -1;\n                    n = e.length - 1\n                } else if (n < 0) {\n                    if (!o) return -1;\n                    n = 0\n                }\n                if (\"string\" == typeof t && (t = s.from(t, r)), s.isBuffer(t)) return 0 === t.length ? -1 : g(e, t, n, r, o);\n                if (\"number\" == typeof t) return t &= 255, s.TYPED_ARRAY_SUPPORT && \"function\" == typeof Uint8Array.prototype.indexOf ? o ? Uint8Array.prototype.indexOf.call(e, t, n) : Uint8Array.prototype.lastIndexOf.call(e, t, n) : g(e, [t], n, r, o);\n                throw new TypeError(\"val must be string, number or Buffer\")\n            }\n\n            function g(e, t, n, r, o) {\n                var i, a = 1,\n                    u = e.length,\n                    s = t.length;\n                if (void 0 !== r && (\"ucs2\" === (r = String(r).toLowerCase()) || \"ucs-2\" === r || \"utf16le\" === r || \"utf-16le\" === r)) {\n                    if (e.length < 2 || t.length < 2) return -1;\n                    a = 2, u /= 2, s /= 2, n /= 2\n                }\n\n                function l(e, t) {\n                    return 1 === a ? e[t] : e.readUInt16BE(t * a)\n                }\n                if (o) {\n                    var c = -1;\n                    for (i = n; i < u; i++)\n                        if (l(e, i) === l(t, -1 === c ? 0 : i - c)) {\n                            if (-1 === c && (c = i), i - c + 1 === s) return c * a\n                        } else -1 !== c && (i -= i - c), c = -1\n                } else\n                    for (n + s > u && (n = u - s), i = n; i >= 0; i--) {\n                        for (var f = !0, p = 0; p < s; p++)\n                            if (l(e, i + p) !== l(t, p)) {\n                                f = !1;\n                                break\n                            }\n                        if (f) return i\n                    }\n                return -1\n            }\n\n            function y(e, t, n, r) {\n                n = Number(n) || 0;\n                var o = e.length - n;\n                r ? (r = Number(r)) > o && (r = o) : r = o;\n                var i = t.length;\n                if (i % 2 != 0) throw new TypeError(\"Invalid hex string\");\n                r > i / 2 && (r = i / 2);\n                for (var a = 0; a < r; ++a) {\n                    var u = parseInt(t.substr(2 * a, 2), 16);\n                    if (isNaN(u)) return a;\n                    e[n + a] = u\n                }\n                return a\n            }\n\n            function b(e, t, n, r) {\n                return B(F(t, e.length - n), e, n, r)\n            }\n\n            function _(e, t, n, r) {\n                return B(function(e) {\n                    for (var t = [], n = 0; n < e.length; ++n) t.push(255 & e.charCodeAt(n));\n                    return t\n                }(t), e, n, r)\n            }\n\n            function w(e, t, n, r) {\n                return _(e, t, n, r)\n            }\n\n            function E(e, t, n, r) {\n                return B(z(t), e, n, r)\n            }\n\n            function x(e, t, n, r) {\n                return B(function(e, t) {\n                    for (var n, r, o, i = [], a = 0; a < e.length && !((t -= 2) < 0); ++a) n = e.charCodeAt(a), r = n >> 8, o = n % 256, i.push(o), i.push(r);\n                    return i\n                }(t, e.length - n), e, n, r)\n            }\n\n            function S(e, t, n) {\n                return 0 === t && n === e.length ? r.fromByteArray(e) : r.fromByteArray(e.slice(t, n))\n            }\n\n            function C(e, t, n) {\n                n = Math.min(e.length, n);\n                for (var r = [], o = t; o < n;) {\n                    var i, a, u, s, l = e[o],\n                        c = null,\n                        f = l > 239 ? 4 : l > 223 ? 3 : l > 191 ? 2 : 1;\n                    if (o + f <= n) switch (f) {\n                        case 1:\n                            l < 128 && (c = l);\n                            break;\n                        case 2:\n                            128 == (192 & (i = e[o + 1])) && (s = (31 & l) << 6 | 63 & i) > 127 && (c = s);\n                            break;\n                        case 3:\n                            i = e[o + 1], a = e[o + 2], 128 == (192 & i) && 128 == (192 & a) && (s = (15 & l) << 12 | (63 & i) << 6 | 63 & a) > 2047 && (s < 55296 || s > 57343) && (c = s);\n                            break;\n                        case 4:\n                            i = e[o + 1], a = e[o + 2], u = e[o + 3], 128 == (192 & i) && 128 == (192 & a) && 128 == (192 & u) && (s = (15 & l) << 18 | (63 & i) << 12 | (63 & a) << 6 | 63 & u) > 65535 && s < 1114112 && (c = s)\n                    }\n                    null === c ? (c = 65533, f = 1) : c > 65535 && (c -= 65536, r.push(c >>> 10 & 1023 | 55296), c = 56320 | 1023 & c), r.push(c), o += f\n                }\n                return function(e) {\n                    var t = e.length;\n                    if (t <= k) return String.fromCharCode.apply(String, e);\n                    var n = \"\",\n                        r = 0;\n                    for (; r < t;) n += String.fromCharCode.apply(String, e.slice(r, r += k));\n                    return n\n                }(r)\n            }\n            t.Buffer = s, t.SlowBuffer = function(e) {\n                +e != e && (e = 0);\n                return s.alloc(+e)\n            }, t.INSPECT_MAX_BYTES = 50, s.TYPED_ARRAY_SUPPORT = void 0 !== e.TYPED_ARRAY_SUPPORT ? e.TYPED_ARRAY_SUPPORT : function() {\n                try {\n                    var e = new Uint8Array(1);\n                    return e.__proto__ = {\n                        __proto__: Uint8Array.prototype,\n                        foo: function() {\n                            return 42\n                        }\n                    }, 42 === e.foo() && \"function\" == typeof e.subarray && 0 === e.subarray(1, 1).byteLength\n                } catch (e) {\n                    return !1\n                }\n            }(), t.kMaxLength = a(), s.poolSize = 8192, s._augment = function(e) {\n                return e.__proto__ = s.prototype, e\n            }, s.from = function(e, t, n) {\n                return l(null, e, t, n)\n            }, s.TYPED_ARRAY_SUPPORT && (s.prototype.__proto__ = Uint8Array.prototype, s.__proto__ = Uint8Array, \"undefined\" != typeof Symbol && Symbol.species && s[Symbol.species] === s && Object.defineProperty(s, Symbol.species, {\n                value: null,\n                configurable: !0\n            })), s.alloc = function(e, t, n) {\n                return function(e, t, n, r) {\n                    return c(t), t <= 0 ? u(e, t) : void 0 !== n ? \"string\" == typeof r ? u(e, t).fill(n, r) : u(e, t).fill(n) : u(e, t)\n                }(null, e, t, n)\n            }, s.allocUnsafe = function(e) {\n                return f(null, e)\n            }, s.allocUnsafeSlow = function(e) {\n                return f(null, e)\n            }, s.isBuffer = function(e) {\n                return !(null == e || !e._isBuffer)\n            }, s.compare = function(e, t) {\n                if (!s.isBuffer(e) || !s.isBuffer(t)) throw new TypeError(\"Arguments must be Buffers\");\n                if (e === t) return 0;\n                for (var n = e.length, r = t.length, o = 0, i = Math.min(n, r); o < i; ++o)\n                    if (e[o] !== t[o]) {\n                        n = e[o], r = t[o];\n                        break\n                    }\n                return n < r ? -1 : r < n ? 1 : 0\n            }, s.isEncoding = function(e) {\n                switch (String(e).toLowerCase()) {\n                    case \"hex\":\n                    case \"utf8\":\n                    case \"utf-8\":\n                    case \"ascii\":\n                    case \"latin1\":\n                    case \"binary\":\n                    case \"base64\":\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                        return !0;\n                    default:\n                        return !1\n                }\n            }, s.concat = function(e, t) {\n                if (!i(e)) throw new TypeError('\"list\" argument must be an Array of Buffers');\n                if (0 === e.length) return s.alloc(0);\n                var n;\n                if (void 0 === t)\n                    for (t = 0, n = 0; n < e.length; ++n) t += e[n].length;\n                var r = s.allocUnsafe(t),\n                    o = 0;\n                for (n = 0; n < e.length; ++n) {\n                    var a = e[n];\n                    if (!s.isBuffer(a)) throw new TypeError('\"list\" argument must be an Array of Buffers');\n                    a.copy(r, o), o += a.length\n                }\n                return r\n            }, s.byteLength = h, s.prototype._isBuffer = !0, s.prototype.swap16 = function() {\n                var e = this.length;\n                if (e % 2 != 0) throw new RangeError(\"Buffer size must be a multiple of 16-bits\");\n                for (var t = 0; t < e; t += 2) v(this, t, t + 1);\n                return this\n            }, s.prototype.swap32 = function() {\n                var e = this.length;\n                if (e % 4 != 0) throw new RangeError(\"Buffer size must be a multiple of 32-bits\");\n                for (var t = 0; t < e; t += 4) v(this, t, t + 3), v(this, t + 1, t + 2);\n                return this\n            }, s.prototype.swap64 = function() {\n                var e = this.length;\n                if (e % 8 != 0) throw new RangeError(\"Buffer size must be a multiple of 64-bits\");\n                for (var t = 0; t < e; t += 8) v(this, t, t + 7), v(this, t + 1, t + 6), v(this, t + 2, t + 5), v(this, t + 3, t + 4);\n                return this\n            }, s.prototype.toString = function() {\n                var e = 0 | this.length;\n                return 0 === e ? \"\" : 0 === arguments.length ? C(this, 0, e) : function(e, t, n) {\n                    var r = !1;\n                    if ((void 0 === t || t < 0) && (t = 0), t > this.length) return \"\";\n                    if ((void 0 === n || n > this.length) && (n = this.length), n <= 0) return \"\";\n                    if ((n >>>= 0) <= (t >>>= 0)) return \"\";\n                    for (e || (e = \"utf8\");;) switch (e) {\n                        case \"hex\":\n                            return P(this, t, n);\n                        case \"utf8\":\n                        case \"utf-8\":\n                            return C(this, t, n);\n                        case \"ascii\":\n                            return A(this, t, n);\n                        case \"latin1\":\n                        case \"binary\":\n                            return O(this, t, n);\n                        case \"base64\":\n                            return S(this, t, n);\n                        case \"ucs2\":\n                        case \"ucs-2\":\n                        case \"utf16le\":\n                        case \"utf-16le\":\n                            return T(this, t, n);\n                        default:\n                            if (r) throw new TypeError(\"Unknown encoding: \" + e);\n                            e = (e + \"\").toLowerCase(), r = !0\n                    }\n                }.apply(this, arguments)\n            }, s.prototype.equals = function(e) {\n                if (!s.isBuffer(e)) throw new TypeError(\"Argument must be a Buffer\");\n                return this === e || 0 === s.compare(this, e)\n            }, s.prototype.inspect = function() {\n                var e = \"\",\n                    n = t.INSPECT_MAX_BYTES;\n                return this.length > 0 && (e = this.toString(\"hex\", 0, n).match(/.{2}/g).join(\" \"), this.length > n && (e += \" ... \")), \"<Buffer \" + e + \">\"\n            }, s.prototype.compare = function(e, t, n, r, o) {\n                if (!s.isBuffer(e)) throw new TypeError(\"Argument must be a Buffer\");\n                if (void 0 === t && (t = 0), void 0 === n && (n = e ? e.length : 0), void 0 === r && (r = 0), void 0 === o && (o = this.length), t < 0 || n > e.length || r < 0 || o > this.length) throw new RangeError(\"out of range index\");\n                if (r >= o && t >= n) return 0;\n                if (r >= o) return -1;\n                if (t >= n) return 1;\n                if (t >>>= 0, n >>>= 0, r >>>= 0, o >>>= 0, this === e) return 0;\n                for (var i = o - r, a = n - t, u = Math.min(i, a), l = this.slice(r, o), c = e.slice(t, n), f = 0; f < u; ++f)\n                    if (l[f] !== c[f]) {\n                        i = l[f], a = c[f];\n                        break\n                    }\n                return i < a ? -1 : a < i ? 1 : 0\n            }, s.prototype.includes = function(e, t, n) {\n                return -1 !== this.indexOf(e, t, n)\n            }, s.prototype.indexOf = function(e, t, n) {\n                return m(this, e, t, n, !0)\n            }, s.prototype.lastIndexOf = function(e, t, n) {\n                return m(this, e, t, n, !1)\n            }, s.prototype.write = function(e, t, n, r) {\n                if (void 0 === t) r = \"utf8\", n = this.length, t = 0;\n                else if (void 0 === n && \"string\" == typeof t) r = t, n = this.length, t = 0;\n                else {\n                    if (!isFinite(t)) throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");\n                    t |= 0, isFinite(n) ? (n |= 0, void 0 === r && (r = \"utf8\")) : (r = n, n = void 0)\n                }\n                var o = this.length - t;\n                if ((void 0 === n || n > o) && (n = o), e.length > 0 && (n < 0 || t < 0) || t > this.length) throw new RangeError(\"Attempt to write outside buffer bounds\");\n                r || (r = \"utf8\");\n                for (var i = !1;;) switch (r) {\n                    case \"hex\":\n                        return y(this, e, t, n);\n                    case \"utf8\":\n                    case \"utf-8\":\n                        return b(this, e, t, n);\n                    case \"ascii\":\n                        return _(this, e, t, n);\n                    case \"latin1\":\n                    case \"binary\":\n                        return w(this, e, t, n);\n                    case \"base64\":\n                        return E(this, e, t, n);\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                        return x(this, e, t, n);\n                    default:\n                        if (i) throw new TypeError(\"Unknown encoding: \" + r);\n                        r = (\"\" + r).toLowerCase(), i = !0\n                }\n            }, s.prototype.toJSON = function() {\n                return {\n                    type: \"Buffer\",\n                    data: Array.prototype.slice.call(this._arr || this, 0)\n                }\n            };\n            var k = 4096;\n\n            function A(e, t, n) {\n                var r = \"\";\n                n = Math.min(e.length, n);\n                for (var o = t; o < n; ++o) r += String.fromCharCode(127 & e[o]);\n                return r\n            }\n\n            function O(e, t, n) {\n                var r = \"\";\n                n = Math.min(e.length, n);\n                for (var o = t; o < n; ++o) r += String.fromCharCode(e[o]);\n                return r\n            }\n\n            function P(e, t, n) {\n                var r = e.length;\n                (!t || t < 0) && (t = 0), (!n || n < 0 || n > r) && (n = r);\n                for (var o = \"\", i = t; i < n; ++i) o += q(e[i]);\n                return o\n            }\n\n            function T(e, t, n) {\n                for (var r = e.slice(t, n), o = \"\", i = 0; i < r.length; i += 2) o += String.fromCharCode(r[i] + 256 * r[i + 1]);\n                return o\n            }\n\n            function M(e, t, n) {\n                if (e % 1 != 0 || e < 0) throw new RangeError(\"offset is not uint\");\n                if (e + t > n) throw new RangeError(\"Trying to access beyond buffer length\")\n            }\n\n            function I(e, t, n, r, o, i) {\n                if (!s.isBuffer(e)) throw new TypeError('\"buffer\" argument must be a Buffer instance');\n                if (t > o || t < i) throw new RangeError('\"value\" argument is out of bounds');\n                if (n + r > e.length) throw new RangeError(\"Index out of range\")\n            }\n\n            function j(e, t, n, r) {\n                t < 0 && (t = 65535 + t + 1);\n                for (var o = 0, i = Math.min(e.length - n, 2); o < i; ++o) e[n + o] = (t & 255 << 8 * (r ? o : 1 - o)) >>> 8 * (r ? o : 1 - o)\n            }\n\n            function N(e, t, n, r) {\n                t < 0 && (t = 4294967295 + t + 1);\n                for (var o = 0, i = Math.min(e.length - n, 4); o < i; ++o) e[n + o] = t >>> 8 * (r ? o : 3 - o) & 255\n            }\n\n            function R(e, t, n, r, o, i) {\n                if (n + r > e.length) throw new RangeError(\"Index out of range\");\n                if (n < 0) throw new RangeError(\"Index out of range\")\n            }\n\n            function D(e, t, n, r, i) {\n                return i || R(e, 0, n, 4), o.write(e, t, n, r, 23, 4), n + 4\n            }\n\n            function L(e, t, n, r, i) {\n                return i || R(e, 0, n, 8), o.write(e, t, n, r, 52, 8), n + 8\n            }\n            s.prototype.slice = function(e, t) {\n                var n, r = this.length;\n                if (e = ~~e, t = void 0 === t ? r : ~~t, e < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), t < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), t < e && (t = e), s.TYPED_ARRAY_SUPPORT)(n = this.subarray(e, t)).__proto__ = s.prototype;\n                else {\n                    var o = t - e;\n                    n = new s(o, void 0);\n                    for (var i = 0; i < o; ++i) n[i] = this[i + e]\n                }\n                return n\n            }, s.prototype.readUIntLE = function(e, t, n) {\n                e |= 0, t |= 0, n || M(e, t, this.length);\n                for (var r = this[e], o = 1, i = 0; ++i < t && (o *= 256);) r += this[e + i] * o;\n                return r\n            }, s.prototype.readUIntBE = function(e, t, n) {\n                e |= 0, t |= 0, n || M(e, t, this.length);\n                for (var r = this[e + --t], o = 1; t > 0 && (o *= 256);) r += this[e + --t] * o;\n                return r\n            }, s.prototype.readUInt8 = function(e, t) {\n                return t || M(e, 1, this.length), this[e]\n            }, s.prototype.readUInt16LE = function(e, t) {\n                return t || M(e, 2, this.length), this[e] | this[e + 1] << 8\n            }, s.prototype.readUInt16BE = function(e, t) {\n                return t || M(e, 2, this.length), this[e] << 8 | this[e + 1]\n            }, s.prototype.readUInt32LE = function(e, t) {\n                return t || M(e, 4, this.length), (this[e] | this[e + 1] << 8 | this[e + 2] << 16) + 16777216 * this[e + 3]\n            }, s.prototype.readUInt32BE = function(e, t) {\n                return t || M(e, 4, this.length), 16777216 * this[e] + (this[e + 1] << 16 | this[e + 2] << 8 | this[e + 3])\n            }, s.prototype.readIntLE = function(e, t, n) {\n                e |= 0, t |= 0, n || M(e, t, this.length);\n                for (var r = this[e], o = 1, i = 0; ++i < t && (o *= 256);) r += this[e + i] * o;\n                return r >= (o *= 128) && (r -= Math.pow(2, 8 * t)), r\n            }, s.prototype.readIntBE = function(e, t, n) {\n                e |= 0, t |= 0, n || M(e, t, this.length);\n                for (var r = t, o = 1, i = this[e + --r]; r > 0 && (o *= 256);) i += this[e + --r] * o;\n                return i >= (o *= 128) && (i -= Math.pow(2, 8 * t)), i\n            }, s.prototype.readInt8 = function(e, t) {\n                return t || M(e, 1, this.length), 128 & this[e] ? -1 * (255 - this[e] + 1) : this[e]\n            }, s.prototype.readInt16LE = function(e, t) {\n                t || M(e, 2, this.length);\n                var n = this[e] | this[e + 1] << 8;\n                return 32768 & n ? 4294901760 | n : n\n            }, s.prototype.readInt16BE = function(e, t) {\n                t || M(e, 2, this.length);\n                var n = this[e + 1] | this[e] << 8;\n                return 32768 & n ? 4294901760 | n : n\n            }, s.prototype.readInt32LE = function(e, t) {\n                return t || M(e, 4, this.length), this[e] | this[e + 1] << 8 | this[e + 2] << 16 | this[e + 3] << 24\n            }, s.prototype.readInt32BE = function(e, t) {\n                return t || M(e, 4, this.length), this[e] << 24 | this[e + 1] << 16 | this[e + 2] << 8 | this[e + 3]\n            }, s.prototype.readFloatLE = function(e, t) {\n                return t || M(e, 4, this.length), o.read(this, e, !0, 23, 4)\n            }, s.prototype.readFloatBE = function(e, t) {\n                return t || M(e, 4, this.length), o.read(this, e, !1, 23, 4)\n            }, s.prototype.readDoubleLE = function(e, t) {\n                return t || M(e, 8, this.length), o.read(this, e, !0, 52, 8)\n            }, s.prototype.readDoubleBE = function(e, t) {\n                return t || M(e, 8, this.length), o.read(this, e, !1, 52, 8)\n            }, s.prototype.writeUIntLE = function(e, t, n, r) {\n                (e = +e, t |= 0, n |= 0, r) || I(this, e, t, n, Math.pow(2, 8 * n) - 1, 0);\n                var o = 1,\n                    i = 0;\n                for (this[t] = 255 & e; ++i < n && (o *= 256);) this[t + i] = e / o & 255;\n                return t + n\n            }, s.prototype.writeUIntBE = function(e, t, n, r) {\n                (e = +e, t |= 0, n |= 0, r) || I(this, e, t, n, Math.pow(2, 8 * n) - 1, 0);\n                var o = n - 1,\n                    i = 1;\n                for (this[t + o] = 255 & e; --o >= 0 && (i *= 256);) this[t + o] = e / i & 255;\n                return t + n\n            }, s.prototype.writeUInt8 = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 1, 255, 0), s.TYPED_ARRAY_SUPPORT || (e = Math.floor(e)), this[t] = 255 & e, t + 1\n            }, s.prototype.writeUInt16LE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 2, 65535, 0), s.TYPED_ARRAY_SUPPORT ? (this[t] = 255 & e, this[t + 1] = e >>> 8) : j(this, e, t, !0), t + 2\n            }, s.prototype.writeUInt16BE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 2, 65535, 0), s.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 8, this[t + 1] = 255 & e) : j(this, e, t, !1), t + 2\n            }, s.prototype.writeUInt32LE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 4, 4294967295, 0), s.TYPED_ARRAY_SUPPORT ? (this[t + 3] = e >>> 24, this[t + 2] = e >>> 16, this[t + 1] = e >>> 8, this[t] = 255 & e) : N(this, e, t, !0), t + 4\n            }, s.prototype.writeUInt32BE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 4, 4294967295, 0), s.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 24, this[t + 1] = e >>> 16, this[t + 2] = e >>> 8, this[t + 3] = 255 & e) : N(this, e, t, !1), t + 4\n            }, s.prototype.writeIntLE = function(e, t, n, r) {\n                if (e = +e, t |= 0, !r) {\n                    var o = Math.pow(2, 8 * n - 1);\n                    I(this, e, t, n, o - 1, -o)\n                }\n                var i = 0,\n                    a = 1,\n                    u = 0;\n                for (this[t] = 255 & e; ++i < n && (a *= 256);) e < 0 && 0 === u && 0 !== this[t + i - 1] && (u = 1), this[t + i] = (e / a >> 0) - u & 255;\n                return t + n\n            }, s.prototype.writeIntBE = function(e, t, n, r) {\n                if (e = +e, t |= 0, !r) {\n                    var o = Math.pow(2, 8 * n - 1);\n                    I(this, e, t, n, o - 1, -o)\n                }\n                var i = n - 1,\n                    a = 1,\n                    u = 0;\n                for (this[t + i] = 255 & e; --i >= 0 && (a *= 256);) e < 0 && 0 === u && 0 !== this[t + i + 1] && (u = 1), this[t + i] = (e / a >> 0) - u & 255;\n                return t + n\n            }, s.prototype.writeInt8 = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 1, 127, -128), s.TYPED_ARRAY_SUPPORT || (e = Math.floor(e)), e < 0 && (e = 255 + e + 1), this[t] = 255 & e, t + 1\n            }, s.prototype.writeInt16LE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 2, 32767, -32768), s.TYPED_ARRAY_SUPPORT ? (this[t] = 255 & e, this[t + 1] = e >>> 8) : j(this, e, t, !0), t + 2\n            }, s.prototype.writeInt16BE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 2, 32767, -32768), s.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 8, this[t + 1] = 255 & e) : j(this, e, t, !1), t + 2\n            }, s.prototype.writeInt32LE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 4, 2147483647, -2147483648), s.TYPED_ARRAY_SUPPORT ? (this[t] = 255 & e, this[t + 1] = e >>> 8, this[t + 2] = e >>> 16, this[t + 3] = e >>> 24) : N(this, e, t, !0), t + 4\n            }, s.prototype.writeInt32BE = function(e, t, n) {\n                return e = +e, t |= 0, n || I(this, e, t, 4, 2147483647, -2147483648), e < 0 && (e = 4294967295 + e + 1), s.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 24, this[t + 1] = e >>> 16, this[t + 2] = e >>> 8, this[t + 3] = 255 & e) : N(this, e, t, !1), t + 4\n            }, s.prototype.writeFloatLE = function(e, t, n) {\n                return D(this, e, t, !0, n)\n            }, s.prototype.writeFloatBE = function(e, t, n) {\n                return D(this, e, t, !1, n)\n            }, s.prototype.writeDoubleLE = function(e, t, n) {\n                return L(this, e, t, !0, n)\n            }, s.prototype.writeDoubleBE = function(e, t, n) {\n                return L(this, e, t, !1, n)\n            }, s.prototype.copy = function(e, t, n, r) {\n                if (n || (n = 0), r || 0 === r || (r = this.length), t >= e.length && (t = e.length), t || (t = 0), r > 0 && r < n && (r = n), r === n) return 0;\n                if (0 === e.length || 0 === this.length) return 0;\n                if (t < 0) throw new RangeError(\"targetStart out of bounds\");\n                if (n < 0 || n >= this.length) throw new RangeError(\"sourceStart out of bounds\");\n                if (r < 0) throw new RangeError(\"sourceEnd out of bounds\");\n                r > this.length && (r = this.length), e.length - t < r - n && (r = e.length - t + n);\n                var o, i = r - n;\n                if (this === e && n < t && t < r)\n                    for (o = i - 1; o >= 0; --o) e[o + t] = this[o + n];\n                else if (i < 1e3 || !s.TYPED_ARRAY_SUPPORT)\n                    for (o = 0; o < i; ++o) e[o + t] = this[o + n];\n                else Uint8Array.prototype.set.call(e, this.subarray(n, n + i), t);\n                return i\n            }, s.prototype.fill = function(e, t, n, r) {\n                if (\"string\" == typeof e) {\n                    if (\"string\" == typeof t ? (r = t, t = 0, n = this.length) : \"string\" == typeof n && (r = n, n = this.length), 1 === e.length) {\n                        var o = e.charCodeAt(0);\n                        o < 256 && (e = o)\n                    }\n                    if (void 0 !== r && \"string\" != typeof r) throw new TypeError(\"encoding must be a string\");\n                    if (\"string\" == typeof r && !s.isEncoding(r)) throw new TypeError(\"Unknown encoding: \" + r)\n                } else \"number\" == typeof e && (e &= 255);\n                if (t < 0 || this.length < t || this.length < n) throw new RangeError(\"Out of range index\");\n                if (n <= t) return this;\n                var i;\n                if (t >>>= 0, n = void 0 === n ? this.length : n >>> 0, e || (e = 0), \"number\" == typeof e)\n                    for (i = t; i < n; ++i) this[i] = e;\n                else {\n                    var a = s.isBuffer(e) ? e : F(new s(e, r).toString()),\n                        u = a.length;\n                    for (i = 0; i < n - t; ++i) this[i + t] = a[i % u]\n                }\n                return this\n            };\n            var U = /[^+\\/0-9A-Za-z-_]/g;\n\n            function q(e) {\n                return e < 16 ? \"0\" + e.toString(16) : e.toString(16)\n            }\n\n            function F(e, t) {\n                var n;\n                t = t || 1 / 0;\n                for (var r = e.length, o = null, i = [], a = 0; a < r; ++a) {\n                    if ((n = e.charCodeAt(a)) > 55295 && n < 57344) {\n                        if (!o) {\n                            if (n > 56319) {\n                                (t -= 3) > -1 && i.push(239, 191, 189);\n                                continue\n                            }\n                            if (a + 1 === r) {\n                                (t -= 3) > -1 && i.push(239, 191, 189);\n                                continue\n                            }\n                            o = n;\n                            continue\n                        }\n                        if (n < 56320) {\n                            (t -= 3) > -1 && i.push(239, 191, 189), o = n;\n                            continue\n                        }\n                        n = 65536 + (o - 55296 << 10 | n - 56320)\n                    } else o && (t -= 3) > -1 && i.push(239, 191, 189);\n                    if (o = null, n < 128) {\n                        if ((t -= 1) < 0) break;\n                        i.push(n)\n                    } else if (n < 2048) {\n                        if ((t -= 2) < 0) break;\n                        i.push(n >> 6 | 192, 63 & n | 128)\n                    } else if (n < 65536) {\n                        if ((t -= 3) < 0) break;\n                        i.push(n >> 12 | 224, n >> 6 & 63 | 128, 63 & n | 128)\n                    } else {\n                        if (!(n < 1114112)) throw new Error(\"Invalid code point\");\n                        if ((t -= 4) < 0) break;\n                        i.push(n >> 18 | 240, n >> 12 & 63 | 128, n >> 6 & 63 | 128, 63 & n | 128)\n                    }\n                }\n                return i\n            }\n\n            function z(e) {\n                return r.toByteArray(function(e) {\n                    if ((e = function(e) {\n                        return e.trim ? e.trim() : e.replace(/^\\s+|\\s+$/g, \"\")\n                    }(e).replace(U, \"\")).length < 2) return \"\";\n                    for (; e.length % 4 != 0;) e += \"=\";\n                    return e\n                }(e))\n            }\n\n            function B(e, t, n, r) {\n                for (var o = 0; o < r && !(o + n >= t.length || o >= e.length); ++o) t[o + n] = e[o];\n                return o\n            }\n        }).call(t, n(31))\n    }, function(e, t) {\n        var n, r, o = e.exports = {};\n\n        function i() {\n            throw new Error(\"setTimeout has not been defined\")\n        }\n\n        function a() {\n            throw new Error(\"clearTimeout has not been defined\")\n        }\n\n        function u(e) {\n            if (n === setTimeout) return setTimeout(e, 0);\n            if ((n === i || !n) && setTimeout) return n = setTimeout, setTimeout(e, 0);\n            try {\n                return n(e, 0)\n            } catch (t) {\n                try {\n                    return n.call(null, e, 0)\n                } catch (t) {\n                    return n.call(this, e, 0)\n                }\n            }\n        }! function() {\n            try {\n                n = \"function\" == typeof setTimeout ? setTimeout : i\n            } catch (e) {\n                n = i\n            }\n            try {\n                r = \"function\" == typeof clearTimeout ? clearTimeout : a\n            } catch (e) {\n                r = a\n            }\n        }();\n        var s, l = [],\n            c = !1,\n            f = -1;\n\n        function p() {\n            c && s && (c = !1, s.length ? l = s.concat(l) : f = -1, l.length && d())\n        }\n\n        function d() {\n            if (!c) {\n                var e = u(p);\n                c = !0;\n                for (var t = l.length; t;) {\n                    for (s = l, l = []; ++f < t;) s && s[f].run();\n                    f = -1, t = l.length\n                }\n                s = null, c = !1,\n                    function(e) {\n                        if (r === clearTimeout) return clearTimeout(e);\n                        if ((r === a || !r) && clearTimeout) return r = clearTimeout, clearTimeout(e);\n                        try {\n                            r(e)\n                        } catch (t) {\n                            try {\n                                return r.call(null, e)\n                            } catch (t) {\n                                return r.call(this, e)\n                            }\n                        }\n                    }(e)\n            }\n        }\n\n        function h(e, t) {\n            this.fun = e, this.array = t\n        }\n\n        function v() {}\n        o.nextTick = function(e) {\n            var t = new Array(arguments.length - 1);\n            if (arguments.length > 1)\n                for (var n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];\n            l.push(new h(e, t)), 1 !== l.length || c || u(d)\n        }, h.prototype.run = function() {\n            this.fun.apply(null, this.array)\n        }, o.title = \"browser\", o.browser = !0, o.env = {}, o.argv = [], o.version = \"\", o.versions = {}, o.on = v, o.addListener = v, o.once = v, o.off = v, o.removeListener = v, o.removeAllListeners = v, o.emit = v, o.prependListener = v, o.prependOnceListener = v, o.listeners = function(e) {\n            return []\n        }, o.binding = function(e) {\n            throw new Error(\"process.binding is not supported\")\n        }, o.cwd = function() {\n            return \"/\"\n        }, o.chdir = function(e) {\n            throw new Error(\"process.chdir is not supported\")\n        }, o.umask = function() {\n            return 0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            if (\"function\" != typeof e) throw new TypeError(e + \" is not a function\");\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            return e === t\n        }\n\n        function o(e) {\n            var t = arguments.length <= 1 || void 0 === arguments[1] ? r : arguments[1],\n                n = null,\n                o = null;\n            return function() {\n                for (var r = arguments.length, i = Array(r), a = 0; a < r; a++) i[a] = arguments[a];\n                return null !== n && n.length === i.length && i.every(function(e, r) {\n                    return t(e, n[r])\n                }) || (o = e.apply(void 0, i)), n = i, o\n            }\n        }\n\n        function i(e) {\n            for (var t = arguments.length, n = Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];\n            return function() {\n                for (var t = arguments.length, r = Array(t), o = 0; o < t; o++) r[o] = arguments[o];\n                var i = 0,\n                    a = r.pop(),\n                    u = function(e) {\n                        var t = Array.isArray(e[0]) ? e[0] : e;\n                        if (!t.every(function(e) {\n                            return \"function\" == typeof e\n                        })) {\n                            var n = t.map(function(e) {\n                                return typeof e\n                            }).join(\", \");\n                            throw new Error(\"Selector creators expect all input-selectors to be functions, instead received the following types: [\" + n + \"]\")\n                        }\n                        return t\n                    }(r),\n                    s = e.apply(void 0, [function() {\n                        return i++, a.apply(void 0, arguments)\n                    }].concat(n)),\n                    l = function(e, t) {\n                        for (var n = arguments.length, r = Array(n > 2 ? n - 2 : 0), o = 2; o < n; o++) r[o - 2] = arguments[o];\n                        var i = u.map(function(n) {\n                            return n.apply(void 0, [e, t].concat(r))\n                        });\n                        return s.apply(void 0, function(e) {\n                            if (Array.isArray(e)) {\n                                for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];\n                                return n\n                            }\n                            return Array.from(e)\n                        }(i))\n                    };\n                return l.resultFunc = a, l.recomputations = function() {\n                    return i\n                }, l.resetRecomputations = function() {\n                    return i = 0\n                }, l\n            }\n        }\n        t.__esModule = !0, t.defaultMemoize = o, t.createSelectorCreator = i, t.createStructuredSelector = function(e) {\n            var t = arguments.length <= 1 || void 0 === arguments[1] ? a : arguments[1];\n            if (\"object\" != typeof e) throw new Error(\"createStructuredSelector expects first argument to be an object where each property is a selector, instead received a \" + typeof e);\n            var n = Object.keys(e);\n            return t(n.map(function(t) {\n                return e[t]\n            }), function() {\n                for (var e = arguments.length, t = Array(e), r = 0; r < e; r++) t[r] = arguments[r];\n                return t.reduce(function(e, t, r) {\n                    return e[n[r]] = t, e\n                }, {})\n            })\n        };\n        var a = t.createSelector = i(o)\n    }, function(e, t, n) {\n        var r = n(117),\n            o = n(243);\n        e.exports = n(100) ? function(e, t, n) {\n            return r.f(e, t, o(1, n))\n        } : function(e, t, n) {\n            return e[t] = n, e\n        }\n    }, function(e, t, n) {\n        var r = n(74);\n        e.exports = function(e) {\n            if (!r(e)) throw TypeError(e + \" is not an object!\");\n            return e\n        }\n    }, function(e, t) {\n        var n = e.exports = {\n            version: \"2.5.5\"\n        };\n        \"number\" == typeof __e && (__e = n)\n    }, function(e, t, n) {\n        var r = n(277);\n        e.exports = function(e) {\n            return null == e ? \"\" : r(e)\n        }\n    }, function(e, t, n) {\n        var r = n(77),\n            o = n(574),\n            i = n(575),\n            a = \"[object Null]\",\n            u = \"[object Undefined]\",\n            s = r ? r.toStringTag : void 0;\n        e.exports = function(e) {\n            return null == e ? void 0 === e ? u : a : s && s in Object(e) ? o(e) : i(e)\n        }\n    }, function(e, t, n) {\n        var r = n(592),\n            o = n(595);\n        e.exports = function(e, t) {\n            var n = o(e, t);\n            return r(n) ? n : void 0\n        }\n    }, function(e, t, n) {\n        var r = n(295),\n            o = n(632),\n            i = n(78);\n        e.exports = function(e) {\n            return i(e) ? r(e) : o(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(140),\n            o = Object.keys || function(e) {\n                var t = [];\n                for (var n in e) t.push(n);\n                return t\n            };\n        e.exports = f;\n        var i = n(106);\n        i.inherits = n(81);\n        var a = n(305),\n            u = n(195);\n        i.inherits(f, a);\n        for (var s = o(u.prototype), l = 0; l < s.length; l++) {\n            var c = s[l];\n            f.prototype[c] || (f.prototype[c] = u.prototype[c])\n        }\n\n        function f(e) {\n            if (!(this instanceof f)) return new f(e);\n            a.call(this, e), u.call(this, e), e && !1 === e.readable && (this.readable = !1), e && !1 === e.writable && (this.writable = !1), this.allowHalfOpen = !0, e && !1 === e.allowHalfOpen && (this.allowHalfOpen = !1), this.once(\"end\", p)\n        }\n\n        function p() {\n            this.allowHalfOpen || this._writableState.ended || r.nextTick(d, this)\n        }\n\n        function d(e) {\n            e.end()\n        }\n        Object.defineProperty(f.prototype, \"writableHighWaterMark\", {\n            enumerable: !1,\n            get: function() {\n                return this._writableState.highWaterMark\n            }\n        }), Object.defineProperty(f.prototype, \"destroyed\", {\n            get: function() {\n                return void 0 !== this._readableState && void 0 !== this._writableState && (this._readableState.destroyed && this._writableState.destroyed)\n            },\n            set: function(e) {\n                void 0 !== this._readableState && void 0 !== this._writableState && (this._readableState.destroyed = e, this._writableState.destroyed = e)\n            }\n        }), f.prototype._destroy = function(e, t) {\n            this.push(null), this.end(), r.nextTick(t, e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(312)();\n        e.exports = function(e) {\n            return e !== r && null !== e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(670),\n            o = Math.max;\n        e.exports = function(e) {\n            return o(0, r(e))\n        }\n    }, function(e, t, n) {\n        \"use strict\"\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(8), function(e) {\n                if (this.instancePool.length) {\n                    var t = this.instancePool.pop();\n                    return this.call(t, e), t\n                }\n                return new this(e)\n            }),\n            i = function(e) {\n                e instanceof this || r(\"25\"), e.destructor(), this.instancePool.length < this.poolSize && this.instancePool.push(e)\n            },\n            a = o,\n            u = {\n                addPoolingTo: function(e, t) {\n                    var n = e;\n                    return n.instancePool = [], n.getPooled = t || a, n.poolSize || (n.poolSize = 10), n.release = i, n\n                },\n                oneArgumentPooler: o,\n                twoArgumentPooler: function(e, t) {\n                    if (this.instancePool.length) {\n                        var n = this.instancePool.pop();\n                        return this.call(n, e, t), n\n                    }\n                    return new this(e, t)\n                },\n                threeArgumentPooler: function(e, t, n) {\n                    if (this.instancePool.length) {\n                        var r = this.instancePool.pop();\n                        return this.call(r, e, t, n), r\n                    }\n                    return new this(e, t, n)\n                },\n                fourArgumentPooler: function(e, t, n, r) {\n                    if (this.instancePool.length) {\n                        var o = this.instancePool.pop();\n                        return this.call(o, e, t, n, r), o\n                    }\n                    return new this(e, t, n, r)\n                }\n            };\n        e.exports = u\n    }, function(e, t) {\n        e.exports = {}\n    }, function(e, t, n) {\n        var r = n(154),\n            o = n(155);\n        e.exports = function(e) {\n            return r(o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(155);\n        e.exports = function(e) {\n            return Object(r(e))\n        }\n    }, function(e, t, n) {\n        var r = n(33),\n            o = n(58),\n            i = n(118),\n            a = n(167)(\"src\"),\n            u = Function.toString,\n            s = (\"\" + u).split(\"toString\");\n        n(60).inspectSource = function(e) {\n            return u.call(e)\n        }, (e.exports = function(e, t, n, u) {\n            var l = \"function\" == typeof n;\n            l && (i(n, \"name\") || o(n, \"name\", t)), e[t] !== n && (l && (i(n, a) || o(n, a, e[t] ? \"\" + e[t] : s.join(String(t)))), e === r ? e[t] = n : u ? e[t] ? e[t] = n : o(e, t, n) : (delete e[t], o(e, t, n)))\n        })(Function.prototype, \"toString\", function() {\n            return \"function\" == typeof this && this[a] || u.call(this)\n        })\n    }, function(e, t) {\n        e.exports = function(e) {\n            return \"object\" == typeof e ? null !== e : \"function\" == typeof e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(264),\n            i = n(536),\n            a = n(541),\n            u = n(76),\n            s = n(542),\n            l = n(545),\n            c = n(546),\n            f = n(548),\n            p = u.createElement,\n            d = u.createFactory,\n            h = u.cloneElement,\n            v = r,\n            m = function(e) {\n                return e\n            },\n            g = {\n                Children: {\n                    map: i.map,\n                    forEach: i.forEach,\n                    count: i.count,\n                    toArray: i.toArray,\n                    only: f\n                },\n                Component: o.Component,\n                PureComponent: o.PureComponent,\n                createElement: p,\n                cloneElement: h,\n                isValidElement: u.isValidElement,\n                PropTypes: s,\n                createClass: c,\n                createFactory: d,\n                createMixin: m,\n                DOM: a,\n                version: l,\n                __spread: v\n            };\n        e.exports = g\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(46),\n            i = (n(9), n(266), Object.prototype.hasOwnProperty),\n            a = n(267),\n            u = {\n                key: !0,\n                ref: !0,\n                __self: !0,\n                __source: !0\n            };\n\n        function s(e) {\n            return void 0 !== e.ref\n        }\n\n        function l(e) {\n            return void 0 !== e.key\n        }\n        var c = function(e, t, n, r, o, i, u) {\n            var s = {\n                $$typeof: a,\n                type: e,\n                key: t,\n                ref: n,\n                props: u,\n                _owner: i\n            };\n            return s\n        };\n        c.createElement = function(e, t, n) {\n            var r, a = {},\n                f = null,\n                p = null;\n            if (null != t)\n                for (r in s(t) && (p = t.ref), l(t) && (f = \"\" + t.key), void 0 === t.__self ? null : t.__self, void 0 === t.__source ? null : t.__source, t) i.call(t, r) && !u.hasOwnProperty(r) && (a[r] = t[r]);\n            var d = arguments.length - 2;\n            if (1 === d) a.children = n;\n            else if (d > 1) {\n                for (var h = Array(d), v = 0; v < d; v++) h[v] = arguments[v + 2];\n                0, a.children = h\n            }\n            if (e && e.defaultProps) {\n                var m = e.defaultProps;\n                for (r in m) void 0 === a[r] && (a[r] = m[r])\n            }\n            return c(e, f, p, 0, 0, o.current, a)\n        }, c.createFactory = function(e) {\n            var t = c.createElement.bind(null, e);\n            return t.type = e, t\n        }, c.cloneAndReplaceKey = function(e, t) {\n            return c(e.type, t, e.ref, e._self, e._source, e._owner, e.props)\n        }, c.cloneElement = function(e, t, n) {\n            var a, f, p = r({}, e.props),\n                d = e.key,\n                h = e.ref,\n                v = (e._self, e._source, e._owner);\n            if (null != t)\n                for (a in s(t) && (h = t.ref, v = o.current), l(t) && (d = \"\" + t.key), e.type && e.type.defaultProps && (f = e.type.defaultProps), t) i.call(t, a) && !u.hasOwnProperty(a) && (void 0 === t[a] && void 0 !== f ? p[a] = f[a] : p[a] = t[a]);\n            var m = arguments.length - 2;\n            if (1 === m) p.children = n;\n            else if (m > 1) {\n                for (var g = Array(m), y = 0; y < m; y++) g[y] = arguments[y + 2];\n                p.children = g\n            }\n            return c(e.type, d, h, 0, 0, v, p)\n        }, c.isValidElement = function(e) {\n            return \"object\" == typeof e && null !== e && e.$$typeof === a\n        }, e.exports = c\n    }, function(e, t, n) {\n        var r = n(37).Symbol;\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(285),\n            o = n(187);\n        e.exports = function(e) {\n            return null != e && o(e.length) && !r(e)\n        }\n    }, function(e, t, n) {\n        var r = n(24),\n            o = n(190),\n            i = n(640),\n            a = n(61);\n        e.exports = function(e, t) {\n            return r(e) ? e : o(e, t) ? [e] : i(a(e))\n        }\n    }, function(e, t, n) {\n        var r = n(128),\n            o = 1 / 0;\n        e.exports = function(e) {\n            if (\"string\" == typeof e || r(e)) return e;\n            var t = e + \"\";\n            return \"0\" == t && 1 / e == -o ? \"-0\" : t\n        }\n    }, function(e, t) {\n        \"function\" == typeof Object.create ? e.exports = function(e, t) {\n            e.super_ = t, e.prototype = Object.create(t.prototype, {\n                constructor: {\n                    value: e,\n                    enumerable: !1,\n                    writable: !0,\n                    configurable: !0\n                }\n            })\n        } : e.exports = function(e, t) {\n            e.super_ = t;\n            var n = function() {};\n            n.prototype = t.prototype, e.prototype = new n, e.prototype.constructor = e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(66);\n        e.exports = function(e) {\n            if (!r(e)) throw new TypeError(\"Cannot use null or undefined\");\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(728),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = function(e) {\n            if (Array.isArray(e)) {\n                for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];\n                return n\n            }\n            return (0, i.default)(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.default = function(e, t) {\n            var n = {};\n            for (var r in e) t.indexOf(r) >= 0 || Object.prototype.hasOwnProperty.call(e, r) && (n[r] = e[r]);\n            return n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e) {\n            return void 0 === e || null === e\n        }\n        e.exports.isNothing = r, e.exports.isObject = function(e) {\n            return \"object\" == typeof e && null !== e\n        }, e.exports.toArray = function(e) {\n            return Array.isArray(e) ? e : r(e) ? [] : [e]\n        }, e.exports.repeat = function(e, t) {\n            var n, r = \"\";\n            for (n = 0; n < t; n += 1) r += e;\n            return r\n        }, e.exports.isNegativeZero = function(e) {\n            return 0 === e && Number.NEGATIVE_INFINITY === 1 / e\n        }, e.exports.extend = function(e, t) {\n            var n, r, o, i;\n            if (t)\n                for (n = 0, r = (i = Object.keys(t)).length; n < r; n += 1) e[o = i[n]] = t[o];\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(85),\n            o = n(107),\n            i = n(16);\n\n        function a(e, t, n) {\n            var r = [];\n            return e.include.forEach(function(e) {\n                n = a(e, t, n)\n            }), e[t].forEach(function(e) {\n                n.forEach(function(t, n) {\n                    t.tag === e.tag && t.kind === e.kind && r.push(n)\n                }), n.push(e)\n            }), n.filter(function(e, t) {\n                return -1 === r.indexOf(t)\n            })\n        }\n\n        function u(e) {\n            this.include = e.include || [], this.implicit = e.implicit || [], this.explicit = e.explicit || [], this.implicit.forEach(function(e) {\n                if (e.loadKind && \"scalar\" !== e.loadKind) throw new o(\"There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.\")\n            }), this.compiledImplicit = a(this, \"implicit\", []), this.compiledExplicit = a(this, \"explicit\", []), this.compiledTypeMap = function() {\n                var e, t, n = {\n                    scalar: {},\n                    sequence: {},\n                    mapping: {},\n                    fallback: {}\n                };\n\n                function r(e) {\n                    n[e.kind][e.tag] = n.fallback[e.tag] = e\n                }\n                for (e = 0, t = arguments.length; e < t; e += 1) arguments[e].forEach(r);\n                return n\n            }(this.compiledImplicit, this.compiledExplicit)\n        }\n        u.DEFAULT = null, u.create = function() {\n            var e, t;\n            switch (arguments.length) {\n                case 1:\n                    e = u.DEFAULT, t = arguments[0];\n                    break;\n                case 2:\n                    e = arguments[0], t = arguments[1];\n                    break;\n                default:\n                    throw new o(\"Wrong number of arguments for Schema.create function\")\n            }\n            if (e = r.toArray(e), t = r.toArray(t), !e.every(function(e) {\n                return e instanceof u\n            })) throw new o(\"Specified list of super schemas (or a single Schema object) contains a non-Schema object.\");\n            if (!t.every(function(e) {\n                return e instanceof i\n            })) throw new o(\"Specified list of YAML types (or a single Type object) contains a non-Type object.\");\n            return new u({\n                include: e,\n                explicit: t\n            })\n        }, e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11);\n        n(8);\n\n        function o(e, t) {\n            return (e & t) === t\n        }\n        var i = {\n                MUST_USE_PROPERTY: 1,\n                HAS_BOOLEAN_VALUE: 4,\n                HAS_NUMERIC_VALUE: 8,\n                HAS_POSITIVE_NUMERIC_VALUE: 24,\n                HAS_OVERLOADED_BOOLEAN_VALUE: 32,\n                injectDOMPropertyConfig: function(e) {\n                    var t = i,\n                        n = e.Properties || {},\n                        a = e.DOMAttributeNamespaces || {},\n                        s = e.DOMAttributeNames || {},\n                        l = e.DOMPropertyNames || {},\n                        c = e.DOMMutationMethods || {};\n                    for (var f in e.isCustomAttribute && u._isCustomAttributeFunctions.push(e.isCustomAttribute), n) {\n                        u.properties.hasOwnProperty(f) && r(\"48\", f);\n                        var p = f.toLowerCase(),\n                            d = n[f],\n                            h = {\n                                attributeName: p,\n                                attributeNamespace: null,\n                                propertyName: f,\n                                mutationMethod: null,\n                                mustUseProperty: o(d, t.MUST_USE_PROPERTY),\n                                hasBooleanValue: o(d, t.HAS_BOOLEAN_VALUE),\n                                hasNumericValue: o(d, t.HAS_NUMERIC_VALUE),\n                                hasPositiveNumericValue: o(d, t.HAS_POSITIVE_NUMERIC_VALUE),\n                                hasOverloadedBooleanValue: o(d, t.HAS_OVERLOADED_BOOLEAN_VALUE)\n                            };\n                        if (h.hasBooleanValue + h.hasNumericValue + h.hasOverloadedBooleanValue <= 1 || r(\"50\", f), s.hasOwnProperty(f)) {\n                            var v = s[f];\n                            h.attributeName = v\n                        }\n                        a.hasOwnProperty(f) && (h.attributeNamespace = a[f]), l.hasOwnProperty(f) && (h.propertyName = l[f]), c.hasOwnProperty(f) && (h.mutationMethod = c[f]), u.properties[f] = h\n                    }\n                }\n            },\n            a = \":A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\",\n            u = {\n                ID_ATTRIBUTE_NAME: \"data-reactid\",\n                ROOT_ATTRIBUTE_NAME: \"data-reactroot\",\n                ATTRIBUTE_NAME_START_CHAR: a,\n                ATTRIBUTE_NAME_CHAR: a + \"\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\",\n                properties: {},\n                getPossibleStandardName: null,\n                _isCustomAttributeFunctions: [],\n                isCustomAttribute: function(e) {\n                    for (var t = 0; t < u._isCustomAttributeFunctions.length; t++) {\n                        if ((0, u._isCustomAttributeFunctions[t])(e)) return !0\n                    }\n                    return !1\n                },\n                injection: i\n            };\n        e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(783);\n        n(39), n(9);\n\n        function o() {\n            r.attachRefs(this, this._currentElement)\n        }\n        var i = {\n            mountComponent: function(e, t, n, r, i, a) {\n                var u = e.mountComponent(t, n, r, i, a);\n                return e._currentElement && null != e._currentElement.ref && t.getReactMountReady().enqueue(o, e), u\n            },\n            getHostNode: function(e) {\n                return e.getHostNode()\n            },\n            unmountComponent: function(e, t) {\n                r.detachRefs(e, e._currentElement), e.unmountComponent(t)\n            },\n            receiveComponent: function(e, t, n, i) {\n                var a = e._currentElement;\n                if (t !== a || i !== e._context) {\n                    0;\n                    var u = r.shouldUpdateRefs(a, t);\n                    u && r.detachRefs(e, a), e.receiveComponent(t, n, i), u && e._currentElement && null != e._currentElement.ref && n.getReactMountReady().enqueue(o, e)\n                }\n            },\n            performUpdateIfNecessary: function(e, t, n) {\n                e._updateBatchNumber === n && e.performUpdateIfNecessary(t)\n            }\n        };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(217),\n            o = n(149),\n            i = n(218),\n            a = n(359),\n            u = \"undefined\" != typeof document && \"number\" == typeof document.documentMode || \"undefined\" != typeof navigator && \"string\" == typeof navigator.userAgent && /\\bEdge\\/\\d/.test(navigator.userAgent);\n\n        function s(e) {\n            if (u) {\n                var t = e.node,\n                    n = e.children;\n                if (n.length)\n                    for (var r = 0; r < n.length; r++) l(t, n[r], null);\n                else null != e.html ? o(t, e.html) : null != e.text && a(t, e.text)\n            }\n        }\n        var l = i(function(e, t, n) {\n            11 === t.node.nodeType || 1 === t.node.nodeType && \"object\" === t.node.nodeName.toLowerCase() && (null == t.node.namespaceURI || t.node.namespaceURI === r.html) ? (s(t), e.insertBefore(t.node, n)) : (e.insertBefore(t.node, n), s(t))\n        });\n\n        function c() {\n            return this.node.nodeName\n        }\n\n        function f(e) {\n            return {\n                node: e,\n                children: [],\n                html: null,\n                text: null,\n                toString: c\n            }\n        }\n        f.insertTreeBefore = l, f.replaceChildWithTree = function(e, t) {\n            e.parentNode.replaceChild(t.node, e), s(t)\n        }, f.queueChild = function(e, t) {\n            u ? e.children.push(t) : e.node.appendChild(t.node)\n        }, f.queueHTML = function(e, t) {\n            u ? e.html = t : o(e.node, t)\n        }, f.queueText = function(e, t) {\n            u ? e.text = t : a(e.node, t)\n        }, e.exports = f\n    }, function(e, t, n) {\n        var r = n(146),\n            o = n(344);\n        e.exports = function(e, t, n, i) {\n            var a = !n;\n            n || (n = {});\n            for (var u = -1, s = t.length; ++u < s;) {\n                var l = t[u],\n                    c = i ? i(n[l], e[l], l, n, e) : void 0;\n                void 0 === c && (c = e[l]), a ? o(n, l, c) : r(n, l, c)\n            }\n            return n\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(447),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(448);\n        for (var r = n(21), o = n(50), i = n(70), a = n(19)(\"toStringTag\"), u = \"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList\".split(\",\"), s = 0; s < u.length; s++) {\n            var l = u[s],\n                c = r[l],\n                f = c && c.prototype;\n            f && !f[a] && o(f, a, l), i[l] = i.Array\n        }\n    }, function(e, t) {\n        var n = {}.toString;\n        e.exports = function(e) {\n            return n.call(e).slice(8, -1)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            if (\"function\" != typeof e) throw TypeError(e + \" is not a function!\");\n            return e\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return {\n                enumerable: !(1 & e),\n                configurable: !(2 & e),\n                writable: !(4 & e),\n                value: t\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(239),\n            o = n(163);\n        e.exports = Object.keys || function(e) {\n            return r(e, o)\n        }\n    }, function(e, t, n) {\n        var r = n(40).f,\n            o = n(52),\n            i = n(19)(\"toStringTag\");\n        e.exports = function(e, t, n) {\n            e && !o(e = n ? e : e.prototype, i) && r(e, i, {\n                configurable: !0,\n                value: t\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(455)(!0);\n        n(237)(String, \"String\", function(e) {\n            this._t = String(e), this._i = 0\n        }, function() {\n            var e, t = this._t,\n                n = this._i;\n            return n >= t.length ? {\n                value: void 0,\n                done: !0\n            } : (e = r(t, n), this._i += e.length, {\n                value: e,\n                done: !1\n            })\n        })\n    }, function(e, t) {\n        var n = {}.toString;\n        e.exports = function(e) {\n            return n.call(e).slice(8, -1)\n        }\n    }, function(e, t, n) {\n        e.exports = !n(101)(function() {\n            return 7 != Object.defineProperty({}, \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(e, t) {\n        e.exports = function(e) {\n            try {\n                return !!e()\n            } catch (e) {\n                return !0\n            }\n        }\n    }, function(e, t) {\n        e.exports = {}\n    }, function(e, t, n) {\n        var r = n(119),\n            o = Math.min;\n        e.exports = function(e) {\n            return e > 0 ? o(r(e), 9007199254740991) : 0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            for (var t = arguments.length - 1, n = \"Minified React error #\" + e + \"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=\" + e, r = 0; r < t; r++) n += \"&args[]=\" + encodeURIComponent(arguments[r + 1]);\n            n += \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\";\n            var o = new Error(n);\n            throw o.name = \"Invariant Violation\", o.framesToPop = 1, o\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return e === t || e != e && t != t\n        }\n    }, function(e, t, n) {\n        (function(e) {\n            function n(e) {\n                return Object.prototype.toString.call(e)\n            }\n            t.isArray = function(e) {\n                return Array.isArray ? Array.isArray(e) : \"[object Array]\" === n(e)\n            }, t.isBoolean = function(e) {\n                return \"boolean\" == typeof e\n            }, t.isNull = function(e) {\n                return null === e\n            }, t.isNullOrUndefined = function(e) {\n                return null == e\n            }, t.isNumber = function(e) {\n                return \"number\" == typeof e\n            }, t.isString = function(e) {\n                return \"string\" == typeof e\n            }, t.isSymbol = function(e) {\n                return \"symbol\" == typeof e\n            }, t.isUndefined = function(e) {\n                return void 0 === e\n            }, t.isRegExp = function(e) {\n                return \"[object RegExp]\" === n(e)\n            }, t.isObject = function(e) {\n                return \"object\" == typeof e && null !== e\n            }, t.isDate = function(e) {\n                return \"[object Date]\" === n(e)\n            }, t.isError = function(e) {\n                return \"[object Error]\" === n(e) || e instanceof Error\n            }, t.isFunction = function(e) {\n                return \"function\" == typeof e\n            }, t.isPrimitive = function(e) {\n                return null === e || \"boolean\" == typeof e || \"number\" == typeof e || \"string\" == typeof e || \"symbol\" == typeof e || void 0 === e\n            }, t.isBuffer = e.isBuffer\n        }).call(t, n(54).Buffer)\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            Error.call(this), this.name = \"YAMLException\", this.reason = e, this.mark = t, this.message = (this.reason || \"(unknown reason)\") + (this.mark ? \" \" + this.mark.toString() : \"\"), Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = (new Error).stack || \"\"\n        }\n        r.prototype = Object.create(Error.prototype), r.prototype.constructor = r, r.prototype.toString = function(e) {\n            var t = this.name + \": \";\n            return t += this.reason || \"(unknown reason)\", !e && this.mark && (t += \" \" + this.mark.toString()), t\n        }, e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(86);\n        e.exports = new r({\n            include: [n(340)],\n            implicit: [n(751), n(752)],\n            explicit: [n(753), n(754), n(755), n(756)]\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(110),\n            o = n(211),\n            i = n(351),\n            a = n(352),\n            u = (n(9), r.getListener);\n\n        function s(e, t, n) {\n            var r = function(e, t, n) {\n                var r = t.dispatchConfig.phasedRegistrationNames[n];\n                return u(e, r)\n            }(e, n, t);\n            r && (n._dispatchListeners = i(n._dispatchListeners, r), n._dispatchInstances = i(n._dispatchInstances, e))\n        }\n\n        function l(e) {\n            e && e.dispatchConfig.phasedRegistrationNames && o.traverseTwoPhase(e._targetInst, s, e)\n        }\n\n        function c(e) {\n            if (e && e.dispatchConfig.phasedRegistrationNames) {\n                var t = e._targetInst,\n                    n = t ? o.getParentInstance(t) : null;\n                o.traverseTwoPhase(n, s, e)\n            }\n        }\n\n        function f(e, t, n) {\n            if (n && n.dispatchConfig.registrationName) {\n                var r = n.dispatchConfig.registrationName,\n                    o = u(e, r);\n                o && (n._dispatchListeners = i(n._dispatchListeners, o), n._dispatchInstances = i(n._dispatchInstances, e))\n            }\n        }\n\n        function p(e) {\n            e && e.dispatchConfig.registrationName && f(e._targetInst, 0, e)\n        }\n        var d = {\n            accumulateTwoPhaseDispatches: function(e) {\n                a(e, l)\n            },\n            accumulateTwoPhaseDispatchesSkipTarget: function(e) {\n                a(e, c)\n            },\n            accumulateDirectDispatches: function(e) {\n                a(e, p)\n            },\n            accumulateEnterLeaveDispatches: function(e, t, n, r) {\n                o.traverseEnterLeave(n, r, f, e, t)\n            }\n        };\n        e.exports = d\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(210),\n            i = n(211),\n            a = n(212),\n            u = n(351),\n            s = n(352),\n            l = (n(8), {}),\n            c = null,\n            f = function(e, t) {\n                e && (i.executeDispatchesInOrder(e, t), e.isPersistent() || e.constructor.release(e))\n            },\n            p = function(e) {\n                return f(e, !0)\n            },\n            d = function(e) {\n                return f(e, !1)\n            },\n            h = function(e) {\n                return \".\" + e._rootNodeID\n            };\n        var v = {\n            injection: {\n                injectEventPluginOrder: o.injectEventPluginOrder,\n                injectEventPluginsByName: o.injectEventPluginsByName\n            },\n            putListener: function(e, t, n) {\n                \"function\" != typeof n && r(\"94\", t, typeof n);\n                var i = h(e);\n                (l[t] || (l[t] = {}))[i] = n;\n                var a = o.registrationNameModules[t];\n                a && a.didPutListener && a.didPutListener(e, t, n)\n            },\n            getListener: function(e, t) {\n                var n = l[t];\n                if (function(e, t, n) {\n                    switch (e) {\n                        case \"onClick\":\n                        case \"onClickCapture\":\n                        case \"onDoubleClick\":\n                        case \"onDoubleClickCapture\":\n                        case \"onMouseDown\":\n                        case \"onMouseDownCapture\":\n                        case \"onMouseMove\":\n                        case \"onMouseMoveCapture\":\n                        case \"onMouseUp\":\n                        case \"onMouseUpCapture\":\n                            return !(!n.disabled || (r = t, \"button\" !== r && \"input\" !== r && \"select\" !== r && \"textarea\" !== r));\n                        default:\n                            return !1\n                    }\n                    var r\n                }(t, e._currentElement.type, e._currentElement.props)) return null;\n                var r = h(e);\n                return n && n[r]\n            },\n            deleteListener: function(e, t) {\n                var n = o.registrationNameModules[t];\n                n && n.willDeleteListener && n.willDeleteListener(e, t);\n                var r = l[t];\n                r && delete r[h(e)]\n            },\n            deleteAllListeners: function(e) {\n                var t = h(e);\n                for (var n in l)\n                    if (l.hasOwnProperty(n) && l[n][t]) {\n                        var r = o.registrationNameModules[n];\n                        r && r.willDeleteListener && r.willDeleteListener(e, n), delete l[n][t]\n                    }\n            },\n            extractEvents: function(e, t, n, r) {\n                for (var i, a = o.plugins, s = 0; s < a.length; s++) {\n                    var l = a[s];\n                    if (l) {\n                        var c = l.extractEvents(e, t, n, r);\n                        c && (i = u(i, c))\n                    }\n                }\n                return i\n            },\n            enqueueEvents: function(e) {\n                e && (c = u(c, e))\n            },\n            processEventQueue: function(e) {\n                var t = c;\n                c = null, s(t, e ? p : d), c && r(\"95\"), a.rethrowCaughtError()\n            },\n            __purge: function() {\n                l = {}\n            },\n            __getListenerBank: function() {\n                return l\n            }\n        };\n        e.exports = v\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(48),\n            o = n(213),\n            i = {\n                view: function(e) {\n                    if (e.view) return e.view;\n                    var t = o(e);\n                    if (t.window === t) return t;\n                    var n = t.ownerDocument;\n                    return n ? n.defaultView || n.parentWindow : window\n                },\n                detail: function(e) {\n                    return e.detail || 0\n                }\n            };\n\n        function a(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(a, i), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            remove: function(e) {\n                e._reactInternalInstance = void 0\n            },\n            get: function(e) {\n                return e._reactInternalInstance\n            },\n            has: function(e) {\n                return void 0 !== e._reactInternalInstance\n            },\n            set: function(e, t) {\n                e._reactInternalInstance = t\n            }\n        };\n        e.exports = r\n    }, function(e, t, n) {\n        var r;\n        /*!\n          Copyright (c) 2016 Jed Watson.\n          Licensed under the MIT License (MIT), see\n          http://jedwatson.github.io/classnames\n        */\n        /*!\n          Copyright (c) 2016 Jed Watson.\n          Licensed under the MIT License (MIT), see\n          http://jedwatson.github.io/classnames\n        */\n        ! function() {\n            \"use strict\";\n            var n = {}.hasOwnProperty;\n\n            function o() {\n                for (var e = [], t = 0; t < arguments.length; t++) {\n                    var r = arguments[t];\n                    if (r) {\n                        var i = typeof r;\n                        if (\"string\" === i || \"number\" === i) e.push(r);\n                        else if (Array.isArray(r)) e.push(o.apply(null, r));\n                        else if (\"object\" === i)\n                            for (var a in r) n.call(r, a) && r[a] && e.push(a)\n                    }\n                }\n                return e.join(\" \")\n            }\n            void 0 !== e && e.exports ? e.exports = o : void 0 === (r = function() {\n                return o\n            }.apply(t, [])) || (e.exports = r)\n        }()\n    }, function(e, t) {\n        e.exports = !0\n    }, function(e, t, n) {\n        var r = n(160),\n            o = Math.min;\n        e.exports = function(e) {\n            return e > 0 ? o(r(e), 9007199254740991) : 0\n        }\n    }, function(e, t) {\n        var n = 0,\n            r = Math.random();\n        e.exports = function(e) {\n            return \"Symbol(\".concat(void 0 === e ? \"\" : e, \")_\", (++n + r).toString(36))\n        }\n    }, function(e, t, n) {\n        var r = n(59),\n            o = n(459),\n            i = n(460),\n            a = Object.defineProperty;\n        t.f = n(100) ? Object.defineProperty : function(e, t, n) {\n            if (r(e), t = i(t, !0), r(n), o) try {\n                return a(e, t, n)\n            } catch (e) {}\n            if (\"get\" in n || \"set\" in n) throw TypeError(\"Accessors not supported!\");\n            return \"value\" in n && (e[t] = n.value), e\n        }\n    }, function(e, t) {\n        var n = {}.hasOwnProperty;\n        e.exports = function(e, t) {\n            return n.call(e, t)\n        }\n    }, function(e, t) {\n        var n = Math.ceil,\n            r = Math.floor;\n        e.exports = function(e) {\n            return isNaN(e = +e) ? 0 : (e > 0 ? r : n)(e)\n        }\n    }, function(e, t, n) {\n        var r = n(121);\n        e.exports = function(e, t, n) {\n            if (r(e), void 0 === t) return e;\n            switch (n) {\n                case 1:\n                    return function(n) {\n                        return e.call(t, n)\n                    };\n                case 2:\n                    return function(n, r) {\n                        return e.call(t, n, r)\n                    };\n                case 3:\n                    return function(n, r, o) {\n                        return e.call(t, n, r, o)\n                    }\n            }\n            return function() {\n                return e.apply(t, arguments)\n            }\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            if (\"function\" != typeof e) throw TypeError(e + \" is not a function!\");\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(465),\n            o = n(53);\n        e.exports = function(e) {\n            return r(o(e))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(58),\n            o = n(73),\n            i = n(101),\n            a = n(53),\n            u = n(17);\n        e.exports = function(e, t, n) {\n            var s = u(e),\n                l = n(a, s, \"\" [e]),\n                c = l[0],\n                f = l[1];\n            i(function() {\n                var t = {};\n                return t[s] = function() {\n                    return 7\n                }, 7 != \"\" [e](t)\n            }) && (o(String.prototype, e, c), r(RegExp.prototype, s, 2 == t ? function(e, t) {\n                return f.call(e, this, t)\n            } : function(e) {\n                return f.call(e, this)\n            }))\n        }\n    }, function(e, t, n) {\n        var r = n(116)(\"meta\"),\n            o = n(28),\n            i = n(52),\n            a = n(40).f,\n            u = 0,\n            s = Object.isExtensible || function() {\n                return !0\n            },\n            l = !n(51)(function() {\n                return s(Object.preventExtensions({}))\n            }),\n            c = function(e) {\n                a(e, r, {\n                    value: {\n                        i: \"O\" + ++u,\n                        w: {}\n                    }\n                })\n            },\n            f = e.exports = {\n                KEY: r,\n                NEED: !1,\n                fastKey: function(e, t) {\n                    if (!o(e)) return \"symbol\" == typeof e ? e : (\"string\" == typeof e ? \"S\" : \"P\") + e;\n                    if (!i(e, r)) {\n                        if (!s(e)) return \"F\";\n                        if (!t) return \"E\";\n                        c(e)\n                    }\n                    return e[r].i\n                },\n                getWeak: function(e, t) {\n                    if (!i(e, r)) {\n                        if (!s(e)) return !0;\n                        if (!t) return !1;\n                        c(e)\n                    }\n                    return e[r].w\n                },\n                onFreeze: function(e) {\n                    return l && f.NEED && s(e) && !i(e, r) && c(e), e\n                }\n            }\n    }, function(e, t) {\n        t.f = {}.propertyIsEnumerable\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {};\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.CLEAR_BY = t.CLEAR = t.NEW_AUTH_ERR = t.NEW_SPEC_ERR_BATCH = t.NEW_SPEC_ERR = t.NEW_THROWN_ERR_BATCH = t.NEW_THROWN_ERR = void 0, t.newThrownErr = function(e) {\n            return {\n                type: a,\n                payload: (0, i.default)(e)\n            }\n        }, t.newThrownErrBatch = function(e) {\n            return {\n                type: u,\n                payload: e\n            }\n        }, t.newSpecErr = function(e) {\n            return {\n                type: s,\n                payload: e\n            }\n        }, t.newSpecErrBatch = function(e) {\n            return {\n                type: l,\n                payload: e\n            }\n        }, t.newAuthErr = function(e) {\n            return {\n                type: c,\n                payload: e\n            }\n        }, t.clear = function() {\n            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};\n            return {\n                type: f,\n                payload: e\n            }\n        }, t.clearBy = function() {\n            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function() {\n                return !0\n            };\n            return {\n                type: p,\n                payload: e\n            }\n        };\n        var r, o = n(179),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        var a = t.NEW_THROWN_ERR = \"err_new_thrown_err\",\n            u = t.NEW_THROWN_ERR_BATCH = \"err_new_thrown_err_batch\",\n            s = t.NEW_SPEC_ERR = \"err_new_spec_err\",\n            l = t.NEW_SPEC_ERR_BATCH = \"err_new_spec_err_batch\",\n            c = t.NEW_AUTH_ERR = \"err_new_auth_err\",\n            f = t.CLEAR = \"err_clear\",\n            p = t.CLEAR_BY = \"err_clear_by\"\n    }, function(e, t, n) {\n        var r = n(62),\n            o = n(47),\n            i = \"[object Symbol]\";\n        e.exports = function(e) {\n            return \"symbol\" == typeof e || o(e) && r(e) == i\n        }\n    }, function(e, t, n) {\n        var r = n(63)(Object, \"create\");\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(600),\n            o = n(601),\n            i = n(602),\n            a = n(603),\n            u = n(604);\n\n        function s(e) {\n            var t = -1,\n                n = null == e ? 0 : e.length;\n            for (this.clear(); ++t < n;) {\n                var r = e[t];\n                this.set(r[0], r[1])\n            }\n        }\n        s.prototype.clear = r, s.prototype.delete = o, s.prototype.get = i, s.prototype.has = a, s.prototype.set = u, e.exports = s\n    }, function(e, t, n) {\n        var r = n(105);\n        e.exports = function(e, t) {\n            for (var n = e.length; n--;)\n                if (r(e[n][0], t)) return n;\n            return -1\n        }\n    }, function(e, t, n) {\n        var r = n(606);\n        e.exports = function(e, t) {\n            var n = e.__data__;\n            return r(t) ? n[\"string\" == typeof t ? \"string\" : \"hash\"] : n.map\n        }\n    }, function(e, t, n) {\n        var r = n(611),\n            o = n(639),\n            i = n(191),\n            a = n(24),\n            u = n(644);\n        e.exports = function(e) {\n            return \"function\" == typeof e ? e : null == e ? i : \"object\" == typeof e ? a(e) ? o(e[0], e[1]) : r(e) : u(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return e.webpackPolyfill || (e.deprecate = function() {}, e.paths = [], e.children || (e.children = []), Object.defineProperty(e, \"loaded\", {\n                enumerable: !0,\n                get: function() {\n                    return e.l\n                }\n            }), Object.defineProperty(e, \"id\", {\n                enumerable: !0,\n                get: function() {\n                    return e.i\n                }\n            }), e.webpackPolyfill = 1), e\n        }\n    }, function(e, t) {\n        var n = 9007199254740991,\n            r = /^(?:0|[1-9]\\d*)$/;\n        e.exports = function(e, t) {\n            var o = typeof e;\n            return !!(t = null == t ? n : t) && (\"number\" == o || \"symbol\" != o && r.test(e)) && e > -1 && e % 1 == 0 && e < t\n        }\n    }, function(e, t) {\n        var n = Object.prototype;\n        e.exports = function(e) {\n            var t = e && e.constructor;\n            return e === (\"function\" == typeof t && t.prototype || n)\n        }\n    }, function(e, t, n) {\n        var r = n(634),\n            o = n(181),\n            i = n(635),\n            a = n(636),\n            u = n(637),\n            s = n(62),\n            l = n(286),\n            c = l(r),\n            f = l(o),\n            p = l(i),\n            d = l(a),\n            h = l(u),\n            v = s;\n        (r && \"[object DataView]\" != v(new r(new ArrayBuffer(1))) || o && \"[object Map]\" != v(new o) || i && \"[object Promise]\" != v(i.resolve()) || a && \"[object Set]\" != v(new a) || u && \"[object WeakMap]\" != v(new u)) && (v = function(e) {\n            var t = s(e),\n                n = \"[object Object]\" == t ? e.constructor : void 0,\n                r = n ? l(n) : \"\";\n            if (r) switch (r) {\n                case c:\n                    return \"[object DataView]\";\n                case f:\n                    return \"[object Map]\";\n                case p:\n                    return \"[object Promise]\";\n                case d:\n                    return \"[object Set]\";\n                case h:\n                    return \"[object WeakMap]\"\n            }\n            return t\n        }), e.exports = v\n    }, function(e, t, n) {\n        var r = n(139);\n        e.exports = function(e, t, n) {\n            var o = null == e ? void 0 : r(e, t);\n            return void 0 === o ? n : o\n        }\n    }, function(e, t, n) {\n        var r = n(79),\n            o = n(80);\n        e.exports = function(e, t) {\n            for (var n = 0, i = (t = r(t, e)).length; null != e && n < i;) e = e[o(t[n++])];\n            return n && n == i ? e : void 0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t) {\n            !t.version || 0 === t.version.indexOf(\"v0.\") || 0 === t.version.indexOf(\"v1.\") && 0 !== t.version.indexOf(\"v1.8.\") ? e.exports = {\n                nextTick: function(e, n, r, o) {\n                    if (\"function\" != typeof e) throw new TypeError('\"callback\" argument must be a function');\n                    var i, a, u = arguments.length;\n                    switch (u) {\n                        case 0:\n                        case 1:\n                            return t.nextTick(e);\n                        case 2:\n                            return t.nextTick(function() {\n                                e.call(null, n)\n                            });\n                        case 3:\n                            return t.nextTick(function() {\n                                e.call(null, n, r)\n                            });\n                        case 4:\n                            return t.nextTick(function() {\n                                e.call(null, n, r, o)\n                            });\n                        default:\n                            for (i = new Array(u - 1), a = 0; a < i.length;) i[a++] = arguments[a];\n                            return t.nextTick(function() {\n                                e.apply(null, i)\n                            })\n                    }\n                }\n            } : e.exports = t\n        }).call(t, n(55))\n    }, function(e, t, n) {\n        var r = n(54),\n            o = r.Buffer;\n\n        function i(e, t) {\n            for (var n in e) t[n] = e[n]\n        }\n\n        function a(e, t, n) {\n            return o(e, t, n)\n        }\n        o.from && o.alloc && o.allocUnsafe && o.allocUnsafeSlow ? e.exports = r : (i(r, t), t.Buffer = a), i(o, a), a.from = function(e, t, n) {\n            if (\"number\" == typeof e) throw new TypeError(\"Argument must not be a number\");\n            return o(e, t, n)\n        }, a.alloc = function(e, t, n) {\n            if (\"number\" != typeof e) throw new TypeError(\"Argument must be a number\");\n            var r = o(e);\n            return void 0 !== t ? \"string\" == typeof n ? r.fill(t, n) : r.fill(t) : r.fill(0), r\n        }, a.allocUnsafe = function(e) {\n            if (\"number\" != typeof e) throw new TypeError(\"Argument must be a number\");\n            return o(e)\n        }, a.allocUnsafeSlow = function(e) {\n            if (\"number\" != typeof e) throw new TypeError(\"Argument must be a number\");\n            return r.SlowBuffer(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(675)(\"forEach\")\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(314),\n            o = n(311),\n            i = n(196),\n            a = n(684);\n        (e.exports = function(e, t) {\n            var n, i, u, s, l;\n            return arguments.length < 2 || \"string\" != typeof e ? (s = t, t = e, e = null) : s = arguments[2], null == e ? (n = u = !0, i = !1) : (n = a.call(e, \"c\"), i = a.call(e, \"e\"), u = a.call(e, \"w\")), l = {\n                value: t,\n                configurable: n,\n                enumerable: i,\n                writable: u\n            }, s ? r(o(s), l) : l\n        }).gs = function(e, t, n) {\n            var u, s, l, c;\n            return \"string\" != typeof e ? (l = n, n = t, t = e, e = null) : l = arguments[3], null == t ? t = void 0 : i(t) ? null == n ? n = void 0 : i(n) || (l = n, n = void 0) : (l = t, t = n = void 0), null == e ? (u = !0, s = !1) : (u = a.call(e, \"c\"), s = a.call(e, \"e\")), c = {\n                get: t,\n                set: n,\n                configurable: u,\n                enumerable: s\n            }, l ? r(o(l), c) : c\n        }\n    }, function(e, t, n) {\n        var r = n(49),\n            o = n(329),\n            i = n(330),\n            a = n(36),\n            u = n(115),\n            s = n(164),\n            l = {},\n            c = {};\n        (t = e.exports = function(e, t, n, f, p) {\n            var d, h, v, m, g = p ? function() {\n                    return e\n                } : s(e),\n                y = r(n, f, t ? 2 : 1),\n                b = 0;\n            if (\"function\" != typeof g) throw TypeError(e + \" is not iterable!\");\n            if (i(g)) {\n                for (d = u(e.length); d > b; b++)\n                    if ((m = t ? y(a(h = e[b])[0], h[1]) : y(e[b])) === l || m === c) return m\n            } else\n                for (v = g.call(e); !(h = v.next()).done;)\n                    if ((m = o(v, y, h.value, t)) === l || m === c) return m\n        }).BREAK = l, t.RETURN = c\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(86);\n        e.exports = r.DEFAULT = new r({\n            include: [n(108)],\n            explicit: [n(757), n(758), n(759)]\n        })\n    }, function(e, t, n) {\n        var r = n(344),\n            o = n(105),\n            i = Object.prototype.hasOwnProperty;\n        e.exports = function(e, t, n) {\n            var a = e[t];\n            i.call(e, t) && o(a, n) && (void 0 !== n || t in e) || r(e, t, n)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(8), {}),\n            i = {\n                reinitializeTransaction: function() {\n                    this.transactionWrappers = this.getTransactionWrappers(), this.wrapperInitData ? this.wrapperInitData.length = 0 : this.wrapperInitData = [], this._isInTransaction = !1\n                },\n                _isInTransaction: !1,\n                getTransactionWrappers: null,\n                isInTransaction: function() {\n                    return !!this._isInTransaction\n                },\n                perform: function(e, t, n, o, i, a, u, s) {\n                    var l, c;\n                    this.isInTransaction() && r(\"27\");\n                    try {\n                        this._isInTransaction = !0, l = !0, this.initializeAll(0), c = e.call(t, n, o, i, a, u, s), l = !1\n                    } finally {\n                        try {\n                            if (l) try {\n                                this.closeAll(0)\n                            } catch (e) {} else this.closeAll(0)\n                        } finally {\n                            this._isInTransaction = !1\n                        }\n                    }\n                    return c\n                },\n                initializeAll: function(e) {\n                    for (var t = this.transactionWrappers, n = e; n < t.length; n++) {\n                        var r = t[n];\n                        try {\n                            this.wrapperInitData[n] = o, this.wrapperInitData[n] = r.initialize ? r.initialize.call(this) : null\n                        } finally {\n                            if (this.wrapperInitData[n] === o) try {\n                                this.initializeAll(n + 1)\n                            } catch (e) {}\n                        }\n                    }\n                },\n                closeAll: function(e) {\n                    this.isInTransaction() || r(\"28\");\n                    for (var t = this.transactionWrappers, n = e; n < t.length; n++) {\n                        var i, a = t[n],\n                            u = this.wrapperInitData[n];\n                        try {\n                            i = !0, u !== o && a.close && a.close.call(this, u), i = !1\n                        } finally {\n                            if (i) try {\n                                this.closeAll(n + 1)\n                            } catch (e) {}\n                        }\n                    }\n                    this.wrapperInitData.length = 0\n                }\n            };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(111),\n            o = n(358),\n            i = {\n                screenX: null,\n                screenY: null,\n                clientX: null,\n                clientY: null,\n                ctrlKey: null,\n                shiftKey: null,\n                altKey: null,\n                metaKey: null,\n                getModifierState: n(215),\n                button: function(e) {\n                    var t = e.button;\n                    return \"which\" in e ? t : 2 === t ? 2 : 4 === t ? 1 : 0\n                },\n                buttons: null,\n                relatedTarget: function(e) {\n                    return e.relatedTarget || (e.fromElement === e.srcElement ? e.toElement : e.fromElement)\n                },\n                pageX: function(e) {\n                    return \"pageX\" in e ? e.pageX : e.clientX + o.currentScrollLeft\n                },\n                pageY: function(e) {\n                    return \"pageY\" in e ? e.pageY : e.clientY + o.currentScrollTop\n                }\n            };\n\n        function a(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(a, i), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(26),\n            i = n(217),\n            a = /^[ \\r\\n\\t\\f]/,\n            u = /<(!--|link|noscript|meta|script|style)[ \\r\\n\\t\\f\\/>]/,\n            s = n(218)(function(e, t) {\n                if (e.namespaceURI !== i.svg || \"innerHTML\" in e) e.innerHTML = t;\n                else {\n                    (r = r || document.createElement(\"div\")).innerHTML = \"<svg>\" + t + \"</svg>\";\n                    for (var n = r.firstChild; n.firstChild;) e.appendChild(n.firstChild)\n                }\n            });\n        if (o.canUseDOM) {\n            var l = document.createElement(\"div\");\n            l.innerHTML = \" \", \"\" === l.innerHTML && (s = function(e, t) {\n                if (e.parentNode && e.parentNode.replaceChild(e, e), a.test(t) || \"<\" === t[0] && u.test(t)) {\n                    e.innerHTML = String.fromCharCode(65279) + t;\n                    var n = e.firstChild;\n                    1 === n.data.length ? e.removeChild(n) : n.deleteData(0, 1)\n                } else e.innerHTML = t\n            }), l = null\n        }\n        e.exports = s\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /[\"'&<>]/;\n        e.exports = function(e) {\n            return \"boolean\" == typeof e || \"number\" == typeof e ? \"\" + e : function(e) {\n                var t, n = \"\" + e,\n                    o = r.exec(n);\n                if (!o) return n;\n                var i = \"\",\n                    a = 0,\n                    u = 0;\n                for (a = o.index; a < n.length; a++) {\n                    switch (n.charCodeAt(a)) {\n                        case 34:\n                            t = \"&quot;\";\n                            break;\n                        case 38:\n                            t = \"&amp;\";\n                            break;\n                        case 39:\n                            t = \"&#x27;\";\n                            break;\n                        case 60:\n                            t = \"&lt;\";\n                            break;\n                        case 62:\n                            t = \"&gt;\";\n                            break;\n                        default:\n                            continue\n                    }\n                    u !== a && (i += n.substring(u, a)), u = a + 1, i += t\n                }\n                return u !== a ? i + n.substring(u, a) : i\n            }(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(13),\n            i = n(210),\n            a = n(804),\n            u = n(358),\n            s = n(805),\n            l = n(214),\n            c = {},\n            f = !1,\n            p = 0,\n            d = {\n                topAbort: \"abort\",\n                topAnimationEnd: s(\"animationend\") || \"animationend\",\n                topAnimationIteration: s(\"animationiteration\") || \"animationiteration\",\n                topAnimationStart: s(\"animationstart\") || \"animationstart\",\n                topBlur: \"blur\",\n                topCanPlay: \"canplay\",\n                topCanPlayThrough: \"canplaythrough\",\n                topChange: \"change\",\n                topClick: \"click\",\n                topCompositionEnd: \"compositionend\",\n                topCompositionStart: \"compositionstart\",\n                topCompositionUpdate: \"compositionupdate\",\n                topContextMenu: \"contextmenu\",\n                topCopy: \"copy\",\n                topCut: \"cut\",\n                topDoubleClick: \"dblclick\",\n                topDrag: \"drag\",\n                topDragEnd: \"dragend\",\n                topDragEnter: \"dragenter\",\n                topDragExit: \"dragexit\",\n                topDragLeave: \"dragleave\",\n                topDragOver: \"dragover\",\n                topDragStart: \"dragstart\",\n                topDrop: \"drop\",\n                topDurationChange: \"durationchange\",\n                topEmptied: \"emptied\",\n                topEncrypted: \"encrypted\",\n                topEnded: \"ended\",\n                topError: \"error\",\n                topFocus: \"focus\",\n                topInput: \"input\",\n                topKeyDown: \"keydown\",\n                topKeyPress: \"keypress\",\n                topKeyUp: \"keyup\",\n                topLoadedData: \"loadeddata\",\n                topLoadedMetadata: \"loadedmetadata\",\n                topLoadStart: \"loadstart\",\n                topMouseDown: \"mousedown\",\n                topMouseMove: \"mousemove\",\n                topMouseOut: \"mouseout\",\n                topMouseOver: \"mouseover\",\n                topMouseUp: \"mouseup\",\n                topPaste: \"paste\",\n                topPause: \"pause\",\n                topPlay: \"play\",\n                topPlaying: \"playing\",\n                topProgress: \"progress\",\n                topRateChange: \"ratechange\",\n                topScroll: \"scroll\",\n                topSeeked: \"seeked\",\n                topSeeking: \"seeking\",\n                topSelectionChange: \"selectionchange\",\n                topStalled: \"stalled\",\n                topSuspend: \"suspend\",\n                topTextInput: \"textInput\",\n                topTimeUpdate: \"timeupdate\",\n                topTouchCancel: \"touchcancel\",\n                topTouchEnd: \"touchend\",\n                topTouchMove: \"touchmove\",\n                topTouchStart: \"touchstart\",\n                topTransitionEnd: s(\"transitionend\") || \"transitionend\",\n                topVolumeChange: \"volumechange\",\n                topWaiting: \"waiting\",\n                topWheel: \"wheel\"\n            },\n            h = \"_reactListenersID\" + String(Math.random()).slice(2);\n        var v = o({}, a, {\n            ReactEventListener: null,\n            injection: {\n                injectReactEventListener: function(e) {\n                    e.setHandleTopLevel(v.handleTopLevel), v.ReactEventListener = e\n                }\n            },\n            setEnabled: function(e) {\n                v.ReactEventListener && v.ReactEventListener.setEnabled(e)\n            },\n            isEnabled: function() {\n                return !(!v.ReactEventListener || !v.ReactEventListener.isEnabled())\n            },\n            listenTo: function(e, t) {\n                for (var n = t, r = function(e) {\n                    return Object.prototype.hasOwnProperty.call(e, h) || (e[h] = p++, c[e[h]] = {}), c[e[h]]\n                }(n), o = i.registrationNameDependencies[e], a = 0; a < o.length; a++) {\n                    var u = o[a];\n                    r.hasOwnProperty(u) && r[u] || (\"topWheel\" === u ? l(\"wheel\") ? v.ReactEventListener.trapBubbledEvent(\"topWheel\", \"wheel\", n) : l(\"mousewheel\") ? v.ReactEventListener.trapBubbledEvent(\"topWheel\", \"mousewheel\", n) : v.ReactEventListener.trapBubbledEvent(\"topWheel\", \"DOMMouseScroll\", n) : \"topScroll\" === u ? l(\"scroll\", !0) ? v.ReactEventListener.trapCapturedEvent(\"topScroll\", \"scroll\", n) : v.ReactEventListener.trapBubbledEvent(\"topScroll\", \"scroll\", v.ReactEventListener.WINDOW_HANDLE) : \"topFocus\" === u || \"topBlur\" === u ? (l(\"focus\", !0) ? (v.ReactEventListener.trapCapturedEvent(\"topFocus\", \"focus\", n), v.ReactEventListener.trapCapturedEvent(\"topBlur\", \"blur\", n)) : l(\"focusin\") && (v.ReactEventListener.trapBubbledEvent(\"topFocus\", \"focusin\", n), v.ReactEventListener.trapBubbledEvent(\"topBlur\", \"focusout\", n)), r.topBlur = !0, r.topFocus = !0) : d.hasOwnProperty(u) && v.ReactEventListener.trapBubbledEvent(u, d[u], n), r[u] = !0)\n                }\n            },\n            trapBubbledEvent: function(e, t, n) {\n                return v.ReactEventListener.trapBubbledEvent(e, t, n)\n            },\n            trapCapturedEvent: function(e, t, n) {\n                return v.ReactEventListener.trapCapturedEvent(e, t, n)\n            },\n            supportsEventPageXY: function() {\n                if (!document.createEvent) return !1;\n                var e = document.createEvent(\"MouseEvent\");\n                return null != e && \"pageX\" in e\n            },\n            ensureScrollValueMonitoring: function() {\n                if (void 0 === r && (r = v.supportsEventPageXY()), !r && !f) {\n                    var e = u.refreshScrollValues;\n                    v.ReactEventListener.monitorScrollValue(e), f = !0\n                }\n            }\n        });\n        e.exports = v\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r() {\n            this.__rules__ = [], this.__cache__ = null\n        }\n        r.prototype.__find__ = function(e) {\n            for (var t = this.__rules__.length, n = -1; t--;)\n                if (this.__rules__[++n].name === e) return n;\n            return -1\n        }, r.prototype.__compile__ = function() {\n            var e = this,\n                t = [\"\"];\n            e.__rules__.forEach(function(e) {\n                e.enabled && e.alt.forEach(function(e) {\n                    t.indexOf(e) < 0 && t.push(e)\n                })\n            }), e.__cache__ = {}, t.forEach(function(t) {\n                e.__cache__[t] = [], e.__rules__.forEach(function(n) {\n                    n.enabled && (t && n.alt.indexOf(t) < 0 || e.__cache__[t].push(n.fn))\n                })\n            })\n        }, r.prototype.at = function(e, t, n) {\n            var r = this.__find__(e),\n                o = n || {};\n            if (-1 === r) throw new Error(\"Parser rule not found: \" + e);\n            this.__rules__[r].fn = t, this.__rules__[r].alt = o.alt || [], this.__cache__ = null\n        }, r.prototype.before = function(e, t, n, r) {\n            var o = this.__find__(e),\n                i = r || {};\n            if (-1 === o) throw new Error(\"Parser rule not found: \" + e);\n            this.__rules__.splice(o, 0, {\n                name: t,\n                enabled: !0,\n                fn: n,\n                alt: i.alt || []\n            }), this.__cache__ = null\n        }, r.prototype.after = function(e, t, n, r) {\n            var o = this.__find__(e),\n                i = r || {};\n            if (-1 === o) throw new Error(\"Parser rule not found: \" + e);\n            this.__rules__.splice(o + 1, 0, {\n                name: t,\n                enabled: !0,\n                fn: n,\n                alt: i.alt || []\n            }), this.__cache__ = null\n        }, r.prototype.push = function(e, t, n) {\n            var r = n || {};\n            this.__rules__.push({\n                name: e,\n                enabled: !0,\n                fn: t,\n                alt: r.alt || []\n            }), this.__cache__ = null\n        }, r.prototype.enable = function(e, t) {\n            e = Array.isArray(e) ? e : [e], t && this.__rules__.forEach(function(e) {\n                e.enabled = !1\n            }), e.forEach(function(e) {\n                var t = this.__find__(e);\n                if (t < 0) throw new Error(\"Rules manager: invalid rule name \" + e);\n                this.__rules__[t].enabled = !0\n            }, this), this.__cache__ = null\n        }, r.prototype.disable = function(e) {\n            (e = Array.isArray(e) ? e : [e]).forEach(function(e) {\n                var t = this.__find__(e);\n                if (t < 0) throw new Error(\"Rules manager: invalid rule name \" + e);\n                this.__rules__[t].enabled = !1\n            }, this), this.__cache__ = null\n        }, r.prototype.getRules = function(e) {\n            return null === this.__cache__ && this.__compile__(), this.__cache__[e] || []\n        }, e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i = -1,\n                a = e.posMax,\n                u = e.pos,\n                s = e.isInLabel;\n            if (e.isInLabel) return -1;\n            if (e.labelUnmatchedScopes) return e.labelUnmatchedScopes--, -1;\n            for (e.pos = t + 1, e.isInLabel = !0, n = 1; e.pos < a;) {\n                if (91 === (o = e.src.charCodeAt(e.pos))) n++;\n                else if (93 === o && 0 === --n) {\n                    r = !0;\n                    break\n                }\n                e.parser.skipToken(e)\n            }\n            return r ? (i = e.pos, e.labelUnmatchedScopes = 0) : e.labelUnmatchedScopes = n - 1, e.pos = u, e.isInLabel = s, i\n        }\n    }, function(e, t, n) {\n        var r = n(93);\n        e.exports = Object(\"z\").propertyIsEnumerable(0) ? Object : function(e) {\n            return \"String\" == r(e) ? e.split(\"\") : Object(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            if (void 0 == e) throw TypeError(\"Can't call method on  \" + e);\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(28),\n            o = n(21).document,\n            i = r(o) && r(o.createElement);\n        e.exports = function(e) {\n            return i ? o.createElement(e) : {}\n        }\n    }, function(e, t, n) {\n        var r = n(28);\n        e.exports = function(e, t) {\n            if (!r(e)) return e;\n            var n, o;\n            if (t && \"function\" == typeof(n = e.toString) && !r(o = n.call(e))) return o;\n            if (\"function\" == typeof(n = e.valueOf) && !r(o = n.call(e))) return o;\n            if (!t && \"function\" == typeof(n = e.toString) && !r(o = n.call(e))) return o;\n            throw TypeError(\"Can't convert object to primitive value\")\n        }\n    }, function(e, t, n) {\n        e.exports = n(50)\n    }, function(e, t, n) {\n        var r = n(36),\n            o = n(452),\n            i = n(163),\n            a = n(161)(\"IE_PROTO\"),\n            u = function() {},\n            s = function() {\n                var e, t = n(156)(\"iframe\"),\n                    r = i.length;\n                for (t.style.display = \"none\", n(240).appendChild(t), t.src = \"javascript:\", (e = t.contentWindow.document).open(), e.write(\"<script>document.F=Object<\\/script>\"), e.close(), s = e.F; r--;) delete s.prototype[i[r]];\n                return s()\n            };\n        e.exports = Object.create || function(e, t) {\n            var n;\n            return null !== e ? (u.prototype = r(e), n = new u, u.prototype = null, n[a] = e) : n = s(), void 0 === t ? n : o(n, t)\n        }\n    }, function(e, t) {\n        var n = Math.ceil,\n            r = Math.floor;\n        e.exports = function(e) {\n            return isNaN(e = +e) ? 0 : (e > 0 ? r : n)(e)\n        }\n    }, function(e, t, n) {\n        var r = n(162)(\"keys\"),\n            o = n(116);\n        e.exports = function(e) {\n            return r[e] || (r[e] = o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(21),\n            o = r[\"__core-js_shared__\"] || (r[\"__core-js_shared__\"] = {});\n        e.exports = function(e) {\n            return o[e] || (o[e] = {})\n        }\n    }, function(e, t) {\n        e.exports = \"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")\n    }, function(e, t, n) {\n        var r = n(165),\n            o = n(19)(\"iterator\"),\n            i = n(70);\n        e.exports = n(15).getIteratorMethod = function(e) {\n            if (void 0 != e) return e[o] || e[\"@@iterator\"] || i[r(e)]\n        }\n    }, function(e, t, n) {\n        var r = n(93),\n            o = n(19)(\"toStringTag\"),\n            i = \"Arguments\" == r(function() {\n                return arguments\n            }());\n        e.exports = function(e) {\n            var t, n, a;\n            return void 0 === e ? \"Undefined\" : null === e ? \"Null\" : \"string\" == typeof(n = function(e, t) {\n                try {\n                    return e[t]\n                } catch (e) {}\n            }(t = Object(e), o)) ? n : i ? r(t) : \"Object\" == (a = r(t)) && \"function\" == typeof t.callee ? \"Arguments\" : a\n        }\n    }, function(e, t, n) {\n        var r = n(99),\n            o = n(17)(\"toStringTag\"),\n            i = \"Arguments\" == r(function() {\n                return arguments\n            }());\n        e.exports = function(e) {\n            var t, n, a;\n            return void 0 === e ? \"Undefined\" : null === e ? \"Null\" : \"string\" == typeof(n = function(e, t) {\n                try {\n                    return e[t]\n                } catch (e) {}\n            }(t = Object(e), o)) ? n : i ? r(t) : \"Object\" == (a = r(t)) && \"function\" == typeof t.callee ? \"Arguments\" : a\n        }\n    }, function(e, t) {\n        var n = 0,\n            r = Math.random();\n        e.exports = function(e) {\n            return \"Symbol(\".concat(void 0 === e ? \"\" : e, \")_\", (++n + r).toString(36))\n        }\n    }, function(e, t, n) {\n        var r = n(74),\n            o = n(33).document,\n            i = r(o) && r(o.createElement);\n        e.exports = function(e) {\n            return i ? o.createElement(e) : {}\n        }\n    }, function(e, t, n) {\n        var r = n(242)(\"keys\"),\n            o = n(167);\n        e.exports = function(e) {\n            return r[e] || (r[e] = o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(117).f,\n            o = n(118),\n            i = n(17)(\"toStringTag\");\n        e.exports = function(e, t, n) {\n            e && !o(e = n ? e : e.prototype, i) && r(e, i, {\n                configurable: !0,\n                value: t\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(121);\n        e.exports.f = function(e) {\n            return new function(e) {\n                var t, n;\n                this.promise = new e(function(e, r) {\n                    if (void 0 !== t || void 0 !== n) throw TypeError(\"Bad Promise constructor\");\n                    t = e, n = r\n                }), this.resolve = r(t), this.reject = r(n)\n            }(e)\n        }\n    }, function(e, t, n) {\n        var r = n(256),\n            o = n(53);\n        e.exports = function(e, t, n) {\n            if (r(t)) throw TypeError(\"String#\" + n + \" doesn't accept regex!\");\n            return String(o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(17)(\"match\");\n        e.exports = function(e) {\n            var t = /./;\n            try {\n                \"/./\" [e](t)\n            } catch (n) {\n                try {\n                    return t[r] = !1, !\"/./\" [e](t)\n                } catch (e) {}\n            }\n            return !0\n        }\n    }, function(e, t, n) {\n        t.f = n(19)\n    }, function(e, t, n) {\n        var r = n(21),\n            o = n(15),\n            i = n(114),\n            a = n(174),\n            u = n(40).f;\n        e.exports = function(e) {\n            var t = o.Symbol || (o.Symbol = i ? {} : r.Symbol || {});\n            \"_\" == e.charAt(0) || e in t || u(t, e, {\n                value: a.f(e)\n            })\n        }\n    }, function(e, t) {\n        t.f = Object.getOwnPropertySymbols\n    }, function(e, t) {}, function(e, t, n) {\n        \"use strict\";\n        (function(t) {\n            /*!\n             * @description Recursive object extending\n             * @author Viacheslav Lotsmanov <lotsmanov89@gmail.com>\n             * @license MIT\n             *\n             * The MIT License (MIT)\n             *\n             * Copyright (c) 2013-2018 Viacheslav Lotsmanov\n             *\n             * Permission is hereby granted, free of charge, to any person obtaining a copy of\n             * this software and associated documentation files (the \"Software\"), to deal in\n             * the Software without restriction, including without limitation the rights to\n             * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n             * the Software, and to permit persons to whom the Software is furnished to do so,\n             * subject to the following conditions:\n             *\n             * The above copyright notice and this permission notice shall be included in all\n             * copies or substantial portions of the Software.\n             *\n             * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n             * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n             * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n             * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n             * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n             * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n             */\n            function n(e) {\n                return e instanceof t || e instanceof Date || e instanceof RegExp\n            }\n\n            function r(e) {\n                if (e instanceof t) {\n                    var n = t.alloc ? t.alloc(e.length) : new t(e.length);\n                    return e.copy(n), n\n                }\n                if (e instanceof Date) return new Date(e.getTime());\n                if (e instanceof RegExp) return new RegExp(e);\n                throw new Error(\"Unexpected situation\")\n            }\n\n            function o(e, t) {\n                return \"__proto__\" === t ? void 0 : e[t]\n            }\n            var i = e.exports = function() {\n                if (arguments.length < 1 || \"object\" != typeof arguments[0]) return !1;\n                if (arguments.length < 2) return arguments[0];\n                var e, t, a = arguments[0];\n                return Array.prototype.slice.call(arguments, 1).forEach(function(u) {\n                    \"object\" != typeof u || null === u || Array.isArray(u) || Object.keys(u).forEach(function(s) {\n                        return t = o(a, s), (e = o(u, s)) === a ? void 0 : \"object\" != typeof e || null === e ? void(a[s] = e) : Array.isArray(e) ? void(a[s] = function e(t) {\n                            var o = [];\n                            return t.forEach(function(t, a) {\n                                \"object\" == typeof t && null !== t ? Array.isArray(t) ? o[a] = e(t) : n(t) ? o[a] = r(t) : o[a] = i({}, t) : o[a] = t\n                            }), o\n                        }(e)) : n(e) ? void(a[s] = r(e)) : \"object\" != typeof t || null === t || Array.isArray(t) ? void(a[s] = i({}, e)) : void(a[s] = i(t, e))\n                    })\n                }), a\n            }\n        }).call(t, n(54).Buffer)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return \"object\" == typeof e ? function e(t, n) {\n                var r;\n                r = Array.isArray(t) ? [] : {};\n                n.push(t);\n                Object.keys(t).forEach(function(o) {\n                    var i = t[o];\n                    \"function\" != typeof i && (i && \"object\" == typeof i ? -1 !== n.indexOf(t[o]) ? r[o] = \"[Circular]\" : r[o] = e(t[o], n.slice(0)) : r[o] = i)\n                });\n                \"string\" == typeof t.name && (r.name = t.name);\n                \"string\" == typeof t.message && (r.message = t.message);\n                \"string\" == typeof t.stack && (r.stack = t.stack);\n                return r\n            }(e, []) : \"function\" == typeof e ? \"[Function: \" + (e.name || \"anonymous\") + \"]\" : e\n        }\n    }, function(e, t, n) {\n        var r = n(589),\n            o = n(605),\n            i = n(607),\n            a = n(608),\n            u = n(609);\n\n        function s(e) {\n            var t = -1,\n                n = null == e ? 0 : e.length;\n            for (this.clear(); ++t < n;) {\n                var r = e[t];\n                this.set(r[0], r[1])\n            }\n        }\n        s.prototype.clear = r, s.prototype.delete = o, s.prototype.get = i, s.prototype.has = a, s.prototype.set = u, e.exports = s\n    }, function(e, t, n) {\n        var r = n(63)(n(37), \"Map\");\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(130),\n            o = n(613),\n            i = n(614),\n            a = n(615),\n            u = n(616),\n            s = n(617);\n\n        function l(e) {\n            var t = this.__data__ = new r(e);\n            this.size = t.size\n        }\n        l.prototype.clear = o, l.prototype.delete = i, l.prototype.get = a, l.prototype.has = u, l.prototype.set = s, e.exports = l\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            for (var n = -1, r = t.length, o = e.length; ++n < r;) e[o + n] = t[n];\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(627),\n            o = n(294),\n            i = Object.prototype.propertyIsEnumerable,\n            a = Object.getOwnPropertySymbols,\n            u = a ? function(e) {\n                return null == e ? [] : (e = Object(e), r(a(e), function(t) {\n                    return i.call(e, t)\n                }))\n            } : o;\n        e.exports = u\n    }, function(e, t, n) {\n        var r = n(629),\n            o = n(47),\n            i = Object.prototype,\n            a = i.hasOwnProperty,\n            u = i.propertyIsEnumerable,\n            s = r(function() {\n                return arguments\n            }()) ? r : function(e) {\n                return o(e) && a.call(e, \"callee\") && !u.call(e, \"callee\")\n            };\n        e.exports = s\n    }, function(e, t, n) {\n        (function(e) {\n            var r = n(37),\n                o = n(630),\n                i = \"object\" == typeof t && t && !t.nodeType && t,\n                a = i && \"object\" == typeof e && e && !e.nodeType && e,\n                u = a && a.exports === i ? r.Buffer : void 0,\n                s = (u ? u.isBuffer : void 0) || o;\n            e.exports = s\n        }).call(t, n(134)(e))\n    }, function(e, t) {\n        var n = 9007199254740991;\n        e.exports = function(e) {\n            return \"number\" == typeof e && e > -1 && e % 1 == 0 && e <= n\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return function(t) {\n                return e(t)\n            }\n        }\n    }, function(e, t, n) {\n        (function(e) {\n            var r = n(278),\n                o = \"object\" == typeof t && t && !t.nodeType && t,\n                i = o && \"object\" == typeof e && e && !e.nodeType && e,\n                a = i && i.exports === o && r.process,\n                u = function() {\n                    try {\n                        var e = i && i.require && i.require(\"util\").types;\n                        return e || a && a.binding && a.binding(\"util\")\n                    } catch (e) {}\n                }();\n            e.exports = u\n        }).call(t, n(134)(e))\n    }, function(e, t, n) {\n        var r = n(24),\n            o = n(128),\n            i = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n            a = /^\\w*$/;\n        e.exports = function(e, t) {\n            if (r(e)) return !1;\n            var n = typeof e;\n            return !(\"number\" != n && \"symbol\" != n && \"boolean\" != n && null != e && !o(e)) || a.test(e) || !i.test(e) || null != t && e in Object(t)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.memoizedSampleFromSchema = t.memoizedCreateXMLExample = t.sampleXmlFromSchema = t.inferSchema = t.sampleFromSchema = void 0, t.createXMLExample = f;\n        var r = n(10),\n            o = a(n(656)),\n            i = a(n(669));\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var u = {\n                string: function() {\n                    return \"string\"\n                },\n                string_email: function() {\n                    return \"user@example.com\"\n                },\n                \"string_date-time\": function() {\n                    return (new Date).toISOString()\n                },\n                number: function() {\n                    return 0\n                },\n                number_float: function() {\n                    return 0\n                },\n                integer: function() {\n                    return 0\n                },\n                boolean: function(e) {\n                    return \"boolean\" != typeof e.default || e.default\n                }\n            },\n            s = function(e) {\n                var t = e = (0, r.objectify)(e),\n                    n = t.type,\n                    o = t.format,\n                    i = u[n + \"_\" + o] || u[n];\n                return (0, r.isFunc)(i) ? i(e) : \"Unknown Type: \" + e.type\n            },\n            l = t.sampleFromSchema = function e(t) {\n                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                    o = (0, r.objectify)(t),\n                    i = o.type,\n                    a = o.example,\n                    u = o.properties,\n                    l = o.additionalProperties,\n                    c = o.items,\n                    f = n.includeReadOnly,\n                    p = n.includeWriteOnly;\n                if (void 0 !== a) return (0, r.deeplyStripKey)(a, \"$$ref\", function(e) {\n                    return \"string\" == typeof e && e.indexOf(\"#\") > -1\n                });\n                if (!i)\n                    if (u) i = \"object\";\n                    else {\n                        if (!c) return;\n                        i = \"array\"\n                    }\n                if (\"object\" === i) {\n                    var d = (0, r.objectify)(u),\n                        h = {};\n                    for (var v in d) d[v] && d[v].deprecated || d[v] && d[v].readOnly && !f || d[v] && d[v].writeOnly && !p || (h[v] = e(d[v], n));\n                    if (!0 === l) h.additionalProp1 = {};\n                    else if (l)\n                        for (var m = (0, r.objectify)(l), g = e(m, n), y = 1; y < 4; y++) h[\"additionalProp\" + y] = g;\n                    return h\n                }\n                return \"array\" === i ? Array.isArray(c.anyOf) ? c.anyOf.map(function(t) {\n                    return e(t, n)\n                }) : Array.isArray(c.oneOf) ? c.oneOf.map(function(t) {\n                    return e(t, n)\n                }) : [e(c, n)] : t.enum ? t.default ? t.default : (0, r.normalizeArray)(t.enum)[0] : \"file\" !== i ? s(t) : void 0\n            },\n            c = (t.inferSchema = function(e) {\n                return e.schema && (e = e.schema), e.properties && (e.type = \"object\"), e\n            }, t.sampleXmlFromSchema = function e(t) {\n                var n, o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                    i = (0, r.objectify)(t),\n                    a = i.type,\n                    u = i.properties,\n                    l = i.additionalProperties,\n                    c = i.items,\n                    f = i.example,\n                    p = o.includeReadOnly,\n                    d = o.includeWriteOnly,\n                    h = i.default,\n                    v = {},\n                    m = {},\n                    g = t.xml,\n                    y = g.name,\n                    b = g.prefix,\n                    _ = g.namespace,\n                    w = i.enum,\n                    E = void 0;\n                if (!a)\n                    if (u || l) a = \"object\";\n                    else {\n                        if (!c) return;\n                        a = \"array\"\n                    }(y = y || \"notagname\", n = (b ? b + \":\" : \"\") + y, _) && (m[b ? \"xmlns:\" + b : \"xmlns\"] = _);\n                if (\"array\" === a && c) {\n                    if (c.xml = c.xml || g || {}, c.xml.name = c.xml.name || g.name, g.wrapped) return v[n] = [], Array.isArray(f) ? f.forEach(function(t) {\n                        c.example = t, v[n].push(e(c, o))\n                    }) : Array.isArray(h) ? h.forEach(function(t) {\n                        c.default = t, v[n].push(e(c, o))\n                    }) : v[n] = [e(c, o)], m && v[n].push({\n                        _attr: m\n                    }), v;\n                    var x = [];\n                    return Array.isArray(f) ? (f.forEach(function(t) {\n                        c.example = t, x.push(e(c, o))\n                    }), x) : Array.isArray(h) ? (h.forEach(function(t) {\n                        c.default = t, x.push(e(c, o))\n                    }), x) : e(c, o)\n                }\n                if (\"object\" === a) {\n                    var S = (0, r.objectify)(u);\n                    for (var C in v[n] = [], f = f || {}, S)\n                        if (S.hasOwnProperty(C) && (!S[C].readOnly || p) && (!S[C].writeOnly || d))\n                            if (S[C].xml = S[C].xml || {}, S[C].xml.attribute) {\n                                var k = Array.isArray(S[C].enum) && S[C].enum[0],\n                                    A = S[C].example,\n                                    O = S[C].default;\n                                m[S[C].xml.name || C] = void 0 !== A && A || void 0 !== f[C] && f[C] || void 0 !== O && O || k || s(S[C])\n                            } else {\n                                S[C].xml.name = S[C].xml.name || C, void 0 === S[C].example && void 0 !== f[C] && (S[C].example = f[C]);\n                                var P = e(S[C]);\n                                Array.isArray(P) ? v[n] = v[n].concat(P) : v[n].push(P)\n                            }\n                    return !0 === l ? v[n].push({\n                        additionalProp: \"Anything can be here\"\n                    }) : l && v[n].push({\n                        additionalProp: s(l)\n                    }), m && v[n].push({\n                        _attr: m\n                    }), v\n                }\n                return E = void 0 !== f ? f : void 0 !== h ? h : Array.isArray(w) ? w[0] : s(t), v[n] = m ? [{\n                    _attr: m\n                }, E] : E, v\n            });\n\n        function f(e, t) {\n            var n = c(e, t);\n            if (n) return (0, o.default)(n, {\n                declaration: !0,\n                indent: \"\\t\"\n            })\n        }\n        t.memoizedCreateXMLExample = (0, i.default)(f), t.memoizedSampleFromSchema = (0, i.default)(l)\n    }, function(e, t) {\n        function n() {\n            this._events = this._events || {}, this._maxListeners = this._maxListeners || void 0\n        }\n\n        function r(e) {\n            return \"function\" == typeof e\n        }\n\n        function o(e) {\n            return \"object\" == typeof e && null !== e\n        }\n\n        function i(e) {\n            return void 0 === e\n        }\n        e.exports = n, n.EventEmitter = n, n.prototype._events = void 0, n.prototype._maxListeners = void 0, n.defaultMaxListeners = 10, n.prototype.setMaxListeners = function(e) {\n            if (\"number\" != typeof e || e < 0 || isNaN(e)) throw TypeError(\"n must be a positive number\");\n            return this._maxListeners = e, this\n        }, n.prototype.emit = function(e) {\n            var t, n, a, u, s, l;\n            if (this._events || (this._events = {}), \"error\" === e && (!this._events.error || o(this._events.error) && !this._events.error.length)) {\n                if ((t = arguments[1]) instanceof Error) throw t;\n                var c = new Error('Uncaught, unspecified \"error\" event. (' + t + \")\");\n                throw c.context = t, c\n            }\n            if (i(n = this._events[e])) return !1;\n            if (r(n)) switch (arguments.length) {\n                case 1:\n                    n.call(this);\n                    break;\n                case 2:\n                    n.call(this, arguments[1]);\n                    break;\n                case 3:\n                    n.call(this, arguments[1], arguments[2]);\n                    break;\n                default:\n                    u = Array.prototype.slice.call(arguments, 1), n.apply(this, u)\n            } else if (o(n))\n                for (u = Array.prototype.slice.call(arguments, 1), a = (l = n.slice()).length, s = 0; s < a; s++) l[s].apply(this, u);\n            return !0\n        }, n.prototype.addListener = function(e, t) {\n            var a;\n            if (!r(t)) throw TypeError(\"listener must be a function\");\n            return this._events || (this._events = {}), this._events.newListener && this.emit(\"newListener\", e, r(t.listener) ? t.listener : t), this._events[e] ? o(this._events[e]) ? this._events[e].push(t) : this._events[e] = [this._events[e], t] : this._events[e] = t, o(this._events[e]) && !this._events[e].warned && (a = i(this._maxListeners) ? n.defaultMaxListeners : this._maxListeners) && a > 0 && this._events[e].length > a && (this._events[e].warned = !0, console.error(\"(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.\", this._events[e].length), \"function\" == typeof console.trace && console.trace()), this\n        }, n.prototype.on = n.prototype.addListener, n.prototype.once = function(e, t) {\n            if (!r(t)) throw TypeError(\"listener must be a function\");\n            var n = !1;\n\n            function o() {\n                this.removeListener(e, o), n || (n = !0, t.apply(this, arguments))\n            }\n            return o.listener = t, this.on(e, o), this\n        }, n.prototype.removeListener = function(e, t) {\n            var n, i, a, u;\n            if (!r(t)) throw TypeError(\"listener must be a function\");\n            if (!this._events || !this._events[e]) return this;\n            if (a = (n = this._events[e]).length, i = -1, n === t || r(n.listener) && n.listener === t) delete this._events[e], this._events.removeListener && this.emit(\"removeListener\", e, t);\n            else if (o(n)) {\n                for (u = a; u-- > 0;)\n                    if (n[u] === t || n[u].listener && n[u].listener === t) {\n                        i = u;\n                        break\n                    }\n                if (i < 0) return this;\n                1 === n.length ? (n.length = 0, delete this._events[e]) : n.splice(i, 1), this._events.removeListener && this.emit(\"removeListener\", e, t)\n            }\n            return this\n        }, n.prototype.removeAllListeners = function(e) {\n            var t, n;\n            if (!this._events) return this;\n            if (!this._events.removeListener) return 0 === arguments.length ? this._events = {} : this._events[e] && delete this._events[e], this;\n            if (0 === arguments.length) {\n                for (t in this._events) \"removeListener\" !== t && this.removeAllListeners(t);\n                return this.removeAllListeners(\"removeListener\"), this._events = {}, this\n            }\n            if (r(n = this._events[e])) this.removeListener(e, n);\n            else if (n)\n                for (; n.length;) this.removeListener(e, n[n.length - 1]);\n            return delete this._events[e], this\n        }, n.prototype.listeners = function(e) {\n            return this._events && this._events[e] ? r(this._events[e]) ? [this._events[e]] : this._events[e].slice() : []\n        }, n.prototype.listenerCount = function(e) {\n            if (this._events) {\n                var t = this._events[e];\n                if (r(t)) return 1;\n                if (t) return t.length\n            }\n            return 0\n        }, n.listenerCount = function(e, t) {\n            return e.listenerCount(t)\n        }\n    }, function(e, t, n) {\n        (t = e.exports = n(305)).Stream = t, t.Readable = t, t.Writable = n(195), t.Duplex = n(65), t.Transform = n(310), t.PassThrough = n(664)\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t, r, o) {\n            var i = n(140);\n\n            function a(e) {\n                var t = this;\n                this.next = null, this.entry = null, this.finish = function() {\n                    ! function(e, t, n) {\n                        var r = e.entry;\n                        e.entry = null;\n                        for (; r;) {\n                            var o = r.callback;\n                            t.pendingcb--, o(n), r = r.next\n                        }\n                        t.corkedRequestsFree ? t.corkedRequestsFree.next = e : t.corkedRequestsFree = e\n                    }(t, e)\n                }\n            }\n            e.exports = y;\n            var u, s = !t.browser && [\"v0.10\", \"v0.9.\"].indexOf(t.version.slice(0, 5)) > -1 ? r : i.nextTick;\n            y.WritableState = g;\n            var l = n(106);\n            l.inherits = n(81);\n            var c = {\n                    deprecate: n(663)\n                },\n                f = n(306),\n                p = n(141).Buffer,\n                d = o.Uint8Array || function() {};\n            var h, v = n(307);\n\n            function m() {}\n\n            function g(e, t) {\n                u = u || n(65), e = e || {};\n                var r = t instanceof u;\n                this.objectMode = !!e.objectMode, r && (this.objectMode = this.objectMode || !!e.writableObjectMode);\n                var o = e.highWaterMark,\n                    l = e.writableHighWaterMark,\n                    c = this.objectMode ? 16 : 16384;\n                this.highWaterMark = o || 0 === o ? o : r && (l || 0 === l) ? l : c, this.highWaterMark = Math.floor(this.highWaterMark), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n                var f = !1 === e.decodeStrings;\n                this.decodeStrings = !f, this.defaultEncoding = e.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = function(e) {\n                    ! function(e, t) {\n                        var n = e._writableState,\n                            r = n.sync,\n                            o = n.writecb;\n                        if (function(e) {\n                            e.writing = !1, e.writecb = null, e.length -= e.writelen, e.writelen = 0\n                        }(n), t) ! function(e, t, n, r, o) {\n                            --t.pendingcb, n ? (i.nextTick(o, r), i.nextTick(S, e, t), e._writableState.errorEmitted = !0, e.emit(\"error\", r)) : (o(r), e._writableState.errorEmitted = !0, e.emit(\"error\", r), S(e, t))\n                        }(e, n, r, t, o);\n                        else {\n                            var a = E(n);\n                            a || n.corked || n.bufferProcessing || !n.bufferedRequest || w(e, n), r ? s(_, e, n, a, o) : _(e, n, a, o)\n                        }\n                    }(t, e)\n                }, this.writecb = null, this.writelen = 0, this.bufferedRequest = null, this.lastBufferedRequest = null, this.pendingcb = 0, this.prefinished = !1, this.errorEmitted = !1, this.bufferedRequestCount = 0, this.corkedRequestsFree = new a(this)\n            }\n\n            function y(e) {\n                if (u = u || n(65), !(h.call(y, this) || this instanceof u)) return new y(e);\n                this._writableState = new g(e, this), this.writable = !0, e && (\"function\" == typeof e.write && (this._write = e.write), \"function\" == typeof e.writev && (this._writev = e.writev), \"function\" == typeof e.destroy && (this._destroy = e.destroy), \"function\" == typeof e.final && (this._final = e.final)), f.call(this)\n            }\n\n            function b(e, t, n, r, o, i, a) {\n                t.writelen = r, t.writecb = a, t.writing = !0, t.sync = !0, n ? e._writev(o, t.onwrite) : e._write(o, i, t.onwrite), t.sync = !1\n            }\n\n            function _(e, t, n, r) {\n                n || function(e, t) {\n                    0 === t.length && t.needDrain && (t.needDrain = !1, e.emit(\"drain\"))\n                }(e, t), t.pendingcb--, r(), S(e, t)\n            }\n\n            function w(e, t) {\n                t.bufferProcessing = !0;\n                var n = t.bufferedRequest;\n                if (e._writev && n && n.next) {\n                    var r = t.bufferedRequestCount,\n                        o = new Array(r),\n                        i = t.corkedRequestsFree;\n                    i.entry = n;\n                    for (var u = 0, s = !0; n;) o[u] = n, n.isBuf || (s = !1), n = n.next, u += 1;\n                    o.allBuffers = s, b(e, t, !0, t.length, o, \"\", i.finish), t.pendingcb++, t.lastBufferedRequest = null, i.next ? (t.corkedRequestsFree = i.next, i.next = null) : t.corkedRequestsFree = new a(t), t.bufferedRequestCount = 0\n                } else {\n                    for (; n;) {\n                        var l = n.chunk,\n                            c = n.encoding,\n                            f = n.callback;\n                        if (b(e, t, !1, t.objectMode ? 1 : l.length, l, c, f), n = n.next, t.bufferedRequestCount--, t.writing) break\n                    }\n                    null === n && (t.lastBufferedRequest = null)\n                }\n                t.bufferedRequest = n, t.bufferProcessing = !1\n            }\n\n            function E(e) {\n                return e.ending && 0 === e.length && null === e.bufferedRequest && !e.finished && !e.writing\n            }\n\n            function x(e, t) {\n                e._final(function(n) {\n                    t.pendingcb--, n && e.emit(\"error\", n), t.prefinished = !0, e.emit(\"prefinish\"), S(e, t)\n                })\n            }\n\n            function S(e, t) {\n                var n = E(t);\n                return n && (! function(e, t) {\n                    t.prefinished || t.finalCalled || (\"function\" == typeof e._final ? (t.pendingcb++, t.finalCalled = !0, i.nextTick(x, e, t)) : (t.prefinished = !0, e.emit(\"prefinish\")))\n                }(e, t), 0 === t.pendingcb && (t.finished = !0, e.emit(\"finish\"))), n\n            }\n            l.inherits(y, f), g.prototype.getBuffer = function() {\n                for (var e = this.bufferedRequest, t = []; e;) t.push(e), e = e.next;\n                return t\n            },\n                function() {\n                    try {\n                        Object.defineProperty(g.prototype, \"buffer\", {\n                            get: c.deprecate(function() {\n                                return this.getBuffer()\n                            }, \"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.\", \"DEP0003\")\n                        })\n                    } catch (e) {}\n                }(), \"function\" == typeof Symbol && Symbol.hasInstance && \"function\" == typeof Function.prototype[Symbol.hasInstance] ? (h = Function.prototype[Symbol.hasInstance], Object.defineProperty(y, Symbol.hasInstance, {\n                value: function(e) {\n                    return !!h.call(this, e) || this === y && (e && e._writableState instanceof g)\n                }\n            })) : h = function(e) {\n                return e instanceof this\n            }, y.prototype.pipe = function() {\n                this.emit(\"error\", new Error(\"Cannot pipe, not readable\"))\n            }, y.prototype.write = function(e, t, n) {\n                var r, o = this._writableState,\n                    a = !1,\n                    u = !o.objectMode && (r = e, p.isBuffer(r) || r instanceof d);\n                return u && !p.isBuffer(e) && (e = function(e) {\n                    return p.from(e)\n                }(e)), \"function\" == typeof t && (n = t, t = null), u ? t = \"buffer\" : t || (t = o.defaultEncoding), \"function\" != typeof n && (n = m), o.ended ? function(e, t) {\n                    var n = new Error(\"write after end\");\n                    e.emit(\"error\", n), i.nextTick(t, n)\n                }(this, n) : (u || function(e, t, n, r) {\n                    var o = !0,\n                        a = !1;\n                    return null === n ? a = new TypeError(\"May not write null values to stream\") : \"string\" == typeof n || void 0 === n || t.objectMode || (a = new TypeError(\"Invalid non-string/buffer chunk\")), a && (e.emit(\"error\", a), i.nextTick(r, a), o = !1), o\n                }(this, o, e, n)) && (o.pendingcb++, a = function(e, t, n, r, o, i) {\n                    if (!n) {\n                        var a = function(e, t, n) {\n                            e.objectMode || !1 === e.decodeStrings || \"string\" != typeof t || (t = p.from(t, n));\n                            return t\n                        }(t, r, o);\n                        r !== a && (n = !0, o = \"buffer\", r = a)\n                    }\n                    var u = t.objectMode ? 1 : r.length;\n                    t.length += u;\n                    var s = t.length < t.highWaterMark;\n                    s || (t.needDrain = !0);\n                    if (t.writing || t.corked) {\n                        var l = t.lastBufferedRequest;\n                        t.lastBufferedRequest = {\n                            chunk: r,\n                            encoding: o,\n                            isBuf: n,\n                            callback: i,\n                            next: null\n                        }, l ? l.next = t.lastBufferedRequest : t.bufferedRequest = t.lastBufferedRequest, t.bufferedRequestCount += 1\n                    } else b(e, t, !1, u, r, o, i);\n                    return s\n                }(this, o, u, e, t, n)), a\n            }, y.prototype.cork = function() {\n                this._writableState.corked++\n            }, y.prototype.uncork = function() {\n                var e = this._writableState;\n                e.corked && (e.corked--, e.writing || e.corked || e.finished || e.bufferProcessing || !e.bufferedRequest || w(this, e))\n            }, y.prototype.setDefaultEncoding = function(e) {\n                if (\"string\" == typeof e && (e = e.toLowerCase()), !([\"hex\", \"utf8\", \"utf-8\", \"ascii\", \"binary\", \"base64\", \"ucs2\", \"ucs-2\", \"utf16le\", \"utf-16le\", \"raw\"].indexOf((e + \"\").toLowerCase()) > -1)) throw new TypeError(\"Unknown encoding: \" + e);\n                return this._writableState.defaultEncoding = e, this\n            }, Object.defineProperty(y.prototype, \"writableHighWaterMark\", {\n                enumerable: !1,\n                get: function() {\n                    return this._writableState.highWaterMark\n                }\n            }), y.prototype._write = function(e, t, n) {\n                n(new Error(\"_write() is not implemented\"))\n            }, y.prototype._writev = null, y.prototype.end = function(e, t, n) {\n                var r = this._writableState;\n                \"function\" == typeof e ? (n = e, e = null, t = null) : \"function\" == typeof t && (n = t, t = null), null !== e && void 0 !== e && this.write(e, t), r.corked && (r.corked = 1, this.uncork()), r.ending || r.finished || function(e, t, n) {\n                    t.ending = !0, S(e, t), n && (t.finished ? i.nextTick(n) : e.once(\"finish\", n));\n                    t.ended = !0, e.writable = !1\n                }(this, r, n)\n            }, Object.defineProperty(y.prototype, \"destroyed\", {\n                get: function() {\n                    return void 0 !== this._writableState && this._writableState.destroyed\n                },\n                set: function(e) {\n                    this._writableState && (this._writableState.destroyed = e)\n                }\n            }), y.prototype.destroy = v.destroy, y.prototype._undestroy = v.undestroy, y.prototype._destroy = function(e, t) {\n                this.end(), t(e)\n            }\n        }).call(t, n(55), n(308).setImmediate, n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return \"function\" == typeof e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(690)() ? Array.from : n(691)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(704),\n            o = n(67),\n            i = n(82),\n            a = Array.prototype.indexOf,\n            u = Object.prototype.hasOwnProperty,\n            s = Math.abs,\n            l = Math.floor;\n        e.exports = function(e) {\n            var t, n, c, f;\n            if (!r(e)) return a.apply(this, arguments);\n            for (n = o(i(this).length), c = arguments[1], t = c = isNaN(c) ? 0 : c >= 0 ? l(c) : o(this.length) - l(s(c)); t < n; ++t)\n                if (u.call(this, t) && (f = this[t], r(f))) return t;\n            return -1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t, n) {\n            var r, o;\n            r = function(e) {\n                if (\"function\" != typeof e) throw new TypeError(e + \" is not a function\");\n                return e\n            }, o = function(e) {\n                var t, n, o = document.createTextNode(\"\"),\n                    i = 0;\n                return new e(function() {\n                    var e;\n                    if (t) n && (t = n.concat(t));\n                    else {\n                        if (!n) return;\n                        t = n\n                    }\n                    if (n = t, t = null, \"function\" == typeof n) return e = n, n = null, void e();\n                    for (o.data = i = ++i % 2; n;) e = n.shift(), n.length || (n = null), e()\n                }).observe(o, {\n                    characterData: !0\n                }),\n                    function(e) {\n                        r(e), t ? \"function\" == typeof t ? t = [t, e] : t.push(e) : (t = e, o.data = i = ++i % 2)\n                    }\n            }, e.exports = function() {\n                if (\"object\" == typeof t && t && \"function\" == typeof t.nextTick) return t.nextTick;\n                if (\"object\" == typeof document && document) {\n                    if (\"function\" == typeof MutationObserver) return o(MutationObserver);\n                    if (\"function\" == typeof WebKitMutationObserver) return o(WebKitMutationObserver)\n                }\n                return \"function\" == typeof n ? function(e) {\n                    n(r(e))\n                } : \"function\" == typeof setTimeout || \"object\" == typeof setTimeout ? function(e) {\n                    setTimeout(r(e), 0)\n                } : null\n            }()\n        }).call(t, n(55), n(308).setImmediate)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.SHOW = t.UPDATE_MODE = t.UPDATE_FILTER = t.UPDATE_LAYOUT = void 0, t.updateLayout = function(e) {\n            return {\n                type: o,\n                payload: e\n            }\n        }, t.updateFilter = function(e) {\n            return {\n                type: i,\n                payload: e\n            }\n        }, t.show = function(e) {\n            var t = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1];\n            return e = (0, r.normalizeArray)(e), {\n                type: u,\n                payload: {\n                    thing: e,\n                    shown: t\n                }\n            }\n        }, t.changeMode = function(e) {\n            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"\";\n            return e = (0, r.normalizeArray)(e), {\n                type: a,\n                payload: {\n                    thing: e,\n                    mode: t\n                }\n            }\n        };\n        var r = n(10),\n            o = t.UPDATE_LAYOUT = \"layout_update_layout\",\n            i = t.UPDATE_FILTER = \"layout_update_filter\",\n            a = t.UPDATE_MODE = \"layout_update_mode\",\n            u = t.SHOW = \"layout_show\"\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.validateBeforeExecute = t.canExecuteScheme = t.operationScheme = t.hasHost = t.operationWithMeta = t.parameterWithMeta = t.parameterInclusionSettingFor = t.parameterWithMetaByIdentity = t.allowTryItOutFor = t.mutatedRequestFor = t.requestFor = t.responseFor = t.mutatedRequests = t.requests = t.responses = t.taggedOperations = t.operationsWithTags = t.tagDetails = t.tags = t.operationsWithRootInherited = t.schemes = t.host = t.basePath = t.definitions = t.findDefinition = t.securityDefinitions = t.security = t.produces = t.consumes = t.operations = t.paths = t.semver = t.version = t.externalDocs = t.info = t.isOAS3 = t.spec = t.specJsonWithResolvedSubtrees = t.specResolvedSubtree = t.specResolved = t.specJson = t.specSource = t.specStr = t.url = t.lastError = void 0;\n        var r, o = n(83),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.getParameter = function(e, t, n, r) {\n            return t = t || [], e.getIn([\"meta\", \"paths\"].concat((0, i.default)(t), [\"parameters\"]), (0, s.fromJS)([])).find(function(e) {\n                return s.Map.isMap(e) && e.get(\"name\") === n && e.get(\"in\") === r\n            }) || (0, s.Map)()\n        }, t.parameterValues = function(e, t, n) {\n            return t = t || [], P.apply(void 0, [e].concat((0, i.default)(t))).get(\"parameters\", (0, s.List)()).reduce(function(e, t) {\n                var r = n && \"body\" === t.get(\"in\") ? t.get(\"value_xml\") : t.get(\"value\");\n                return e.set(t.get(\"in\") + \".\" + t.get(\"name\"), r)\n            }, (0, s.fromJS)({}))\n        }, t.parametersIncludeIn = function(e) {\n            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"\";\n            if (s.List.isList(e)) return e.some(function(e) {\n                return s.Map.isMap(e) && e.get(\"in\") === t\n            })\n        }, t.parametersIncludeType = T, t.contentTypeValues = function(e, t) {\n            t = t || [];\n            var n = d(e).getIn([\"paths\"].concat((0, i.default)(t)), (0, s.fromJS)({})),\n                r = e.getIn([\"meta\", \"paths\"].concat((0, i.default)(t)), (0, s.fromJS)({})),\n                o = M(e, t),\n                a = n.get(\"parameters\") || new s.List,\n                u = r.get(\"consumes_value\") ? r.get(\"consumes_value\") : T(a, \"file\") ? \"multipart/form-data\" : T(a, \"formData\") ? \"application/x-www-form-urlencoded\" : void 0;\n            return (0, s.fromJS)({\n                requestContentType: u,\n                responseContentType: o\n            })\n        }, t.operationConsumes = function(e, t) {\n            return t = t || [], d(e).getIn([\"paths\"].concat((0, i.default)(t), [\"consumes\"]), (0, s.fromJS)({}))\n        }, t.currentProducesFor = M;\n        var a = n(57),\n            u = n(10),\n            s = n(7);\n        var l = [\"get\", \"put\", \"post\", \"delete\", \"options\", \"head\", \"patch\", \"trace\"],\n            c = function(e) {\n                return e || (0, s.Map)()\n            },\n            f = (t.lastError = (0, a.createSelector)(c, function(e) {\n                return e.get(\"lastError\")\n            }), t.url = (0, a.createSelector)(c, function(e) {\n                return e.get(\"url\")\n            }), t.specStr = (0, a.createSelector)(c, function(e) {\n                return e.get(\"spec\") || \"\"\n            }), t.specSource = (0, a.createSelector)(c, function(e) {\n                return e.get(\"specSource\") || \"not-editor\"\n            }), t.specJson = (0, a.createSelector)(c, function(e) {\n                return e.get(\"json\", (0, s.Map)())\n            })),\n            p = (t.specResolved = (0, a.createSelector)(c, function(e) {\n                return e.get(\"resolved\", (0, s.Map)())\n            }), t.specResolvedSubtree = function(e, t) {\n                return e.getIn([\"resolvedSubtrees\"].concat((0, i.default)(t)), void 0)\n            }, function e(t, n) {\n                return s.Map.isMap(t) && s.Map.isMap(n) ? n.get(\"$$ref\") ? n : (0, s.OrderedMap)().mergeWith(e, t, n) : n\n            }),\n            d = t.specJsonWithResolvedSubtrees = (0, a.createSelector)(c, function(e) {\n                return (0, s.OrderedMap)().mergeWith(p, e.get(\"json\"), e.get(\"resolvedSubtrees\"))\n            }),\n            h = t.spec = function(e) {\n                return f(e)\n            },\n            v = (t.isOAS3 = (0, a.createSelector)(h, function() {\n                return !1\n            }), t.info = (0, a.createSelector)(h, function(e) {\n                return j(e && e.get(\"info\"))\n            })),\n            m = (t.externalDocs = (0, a.createSelector)(h, function(e) {\n                return j(e && e.get(\"externalDocs\"))\n            }), t.version = (0, a.createSelector)(v, function(e) {\n                return e && e.get(\"version\")\n            })),\n            g = (t.semver = (0, a.createSelector)(m, function(e) {\n                return /v?([0-9]*)\\.([0-9]*)\\.([0-9]*)/i.exec(e).slice(1)\n            }), t.paths = (0, a.createSelector)(d, function(e) {\n                return e.get(\"paths\")\n            })),\n            y = t.operations = (0, a.createSelector)(g, function(e) {\n                if (!e || e.size < 1) return (0, s.List)();\n                var t = (0, s.List)();\n                return e && e.forEach ? (e.forEach(function(e, n) {\n                    if (!e || !e.forEach) return {};\n                    e.forEach(function(e, r) {\n                        l.indexOf(r) < 0 || (t = t.push((0, s.fromJS)({\n                            path: n,\n                            method: r,\n                            operation: e,\n                            id: r + \"-\" + n\n                        })))\n                    })\n                }), t) : (0, s.List)()\n            }),\n            b = t.consumes = (0, a.createSelector)(h, function(e) {\n                return (0, s.Set)(e.get(\"consumes\"))\n            }),\n            _ = t.produces = (0, a.createSelector)(h, function(e) {\n                return (0, s.Set)(e.get(\"produces\"))\n            }),\n            w = (t.security = (0, a.createSelector)(h, function(e) {\n                return e.get(\"security\", (0, s.List)())\n            }), t.securityDefinitions = (0, a.createSelector)(h, function(e) {\n                return e.get(\"securityDefinitions\")\n            }), t.findDefinition = function(e, t) {\n                var n = e.getIn([\"resolvedSubtrees\", \"definitions\", t], null),\n                    r = e.getIn([\"json\", \"definitions\", t], null);\n                return n || r || null\n            }, t.definitions = (0, a.createSelector)(h, function(e) {\n                return e.get(\"definitions\") || (0, s.Map)()\n            }), t.basePath = (0, a.createSelector)(h, function(e) {\n                return e.get(\"basePath\")\n            }), t.host = (0, a.createSelector)(h, function(e) {\n                return e.get(\"host\")\n            }), t.schemes = (0, a.createSelector)(h, function(e) {\n                return e.get(\"schemes\", (0, s.Map)())\n            }), t.operationsWithRootInherited = (0, a.createSelector)(y, b, _, function(e, t, n) {\n                return e.map(function(e) {\n                    return e.update(\"operation\", function(e) {\n                        if (e) {\n                            if (!s.Map.isMap(e)) return;\n                            return e.withMutations(function(e) {\n                                return e.get(\"consumes\") || e.update(\"consumes\", function(e) {\n                                    return (0, s.Set)(e).merge(t)\n                                }), e.get(\"produces\") || e.update(\"produces\", function(e) {\n                                    return (0, s.Set)(e).merge(n)\n                                }), e\n                            })\n                        }\n                        return (0, s.Map)()\n                    })\n                })\n            })),\n            E = t.tags = (0, a.createSelector)(h, function(e) {\n                return e.get(\"tags\", (0, s.List)())\n            }),\n            x = t.tagDetails = function(e, t) {\n                return (E(e) || (0, s.List)()).filter(s.Map.isMap).find(function(e) {\n                    return e.get(\"name\") === t\n                }, (0, s.Map)())\n            },\n            S = t.operationsWithTags = (0, a.createSelector)(w, E, function(e, t) {\n                return e.reduce(function(e, t) {\n                    var n = (0, s.Set)(t.getIn([\"operation\", \"tags\"]));\n                    return n.count() < 1 ? e.update(\"default\", (0, s.List)(), function(e) {\n                        return e.push(t)\n                    }) : n.reduce(function(e, n) {\n                        return e.update(n, (0, s.List)(), function(e) {\n                            return e.push(t)\n                        })\n                    }, e)\n                }, t.reduce(function(e, t) {\n                    return e.set(t.get(\"name\"), (0, s.List)())\n                }, (0, s.OrderedMap)()))\n            }),\n            C = (t.taggedOperations = function(e) {\n                return function(t) {\n                    var n = (0, t.getConfigs)(),\n                        r = n.tagsSorter,\n                        o = n.operationsSorter;\n                    return S(e).sortBy(function(e, t) {\n                        return t\n                    }, function(e, t) {\n                        var n = \"function\" == typeof r ? r : u.sorters.tagsSorter[r];\n                        return n ? n(e, t) : null\n                    }).map(function(t, n) {\n                        var r = \"function\" == typeof o ? o : u.sorters.operationsSorter[o],\n                            i = r ? t.sort(r) : t;\n                        return (0, s.Map)({\n                            tagDetails: x(e, n),\n                            operations: i\n                        })\n                    })\n                }\n            }, t.responses = (0, a.createSelector)(c, function(e) {\n                return e.get(\"responses\", (0, s.Map)())\n            })),\n            k = t.requests = (0, a.createSelector)(c, function(e) {\n                return e.get(\"requests\", (0, s.Map)())\n            }),\n            A = t.mutatedRequests = (0, a.createSelector)(c, function(e) {\n                return e.get(\"mutatedRequests\", (0, s.Map)())\n            }),\n            O = (t.responseFor = function(e, t, n) {\n                return C(e).getIn([t, n], null)\n            }, t.requestFor = function(e, t, n) {\n                return k(e).getIn([t, n], null)\n            }, t.mutatedRequestFor = function(e, t, n) {\n                return A(e).getIn([t, n], null)\n            }, t.allowTryItOutFor = function() {\n                return !0\n            }, t.parameterWithMetaByIdentity = function(e, t, n) {\n                var r = d(e).getIn([\"paths\"].concat((0, i.default)(t), [\"parameters\"]), (0, s.OrderedMap)()),\n                    o = e.getIn([\"meta\", \"paths\"].concat((0, i.default)(t), [\"parameters\"]), (0, s.OrderedMap)());\n                return r.map(function(e) {\n                    var t = o.get(n.get(\"name\") + \".\" + n.get(\"in\")),\n                        r = o.get(n.get(\"name\") + \".\" + n.get(\"in\") + \".hash-\" + n.hashCode());\n                    return (0, s.OrderedMap)().merge(e, t, r)\n                }).find(function(e) {\n                    return e.get(\"in\") === n.get(\"in\") && e.get(\"name\") === n.get(\"name\")\n                }, (0, s.OrderedMap)())\n            }),\n            P = (t.parameterInclusionSettingFor = function(e, t, n, r) {\n                var o = n + \".\" + r;\n                return e.getIn([\"meta\", \"paths\"].concat((0, i.default)(t), [\"parameter_inclusions\", o]), !1)\n            }, t.parameterWithMeta = function(e, t, n, r) {\n                var o = d(e).getIn([\"paths\"].concat((0, i.default)(t), [\"parameters\"]), (0, s.OrderedMap)()).find(function(e) {\n                    return e.get(\"in\") === r && e.get(\"name\") === n\n                }, (0, s.OrderedMap)());\n                return O(e, t, o)\n            }, t.operationWithMeta = function(e, t, n) {\n                var r = d(e).getIn([\"paths\", t, n], (0, s.OrderedMap)()),\n                    o = e.getIn([\"meta\", \"paths\", t, n], (0, s.OrderedMap)()),\n                    i = r.get(\"parameters\", (0, s.List)()).map(function(r) {\n                        return O(e, [t, n], r)\n                    });\n                return (0, s.OrderedMap)().merge(r, o).set(\"parameters\", i)\n            });\n        t.hasHost = (0, a.createSelector)(h, function(e) {\n            var t = e.get(\"host\");\n            return \"string\" == typeof t && t.length > 0 && \"/\" !== t[0]\n        });\n\n        function T(e) {\n            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"\";\n            if (s.List.isList(e)) return e.some(function(e) {\n                return s.Map.isMap(e) && e.get(\"type\") === t\n            })\n        }\n\n        function M(e, t) {\n            t = t || [];\n            var n = d(e).getIn([\"paths\"].concat((0, i.default)(t)), null);\n            if (null !== n) {\n                var r = e.getIn([\"meta\", \"paths\"].concat((0, i.default)(t), [\"produces_value\"]), null),\n                    o = n.getIn([\"produces\", 0], null);\n                return r || o || \"application/json\"\n            }\n        }\n        var I = t.operationScheme = function(e, t, n) {\n            var r = e.get(\"url\").match(/^([a-z][a-z0-9+\\-.]*):/),\n                o = Array.isArray(r) ? r[1] : null;\n            return e.getIn([\"scheme\", t, n]) || e.getIn([\"scheme\", \"_defaultScheme\"]) || o || \"\"\n        };\n        t.canExecuteScheme = function(e, t, n) {\n            return [\"http\", \"https\"].indexOf(I(e, t, n)) > -1\n        }, t.validateBeforeExecute = function(e, t) {\n            t = t || [];\n            var n = !0;\n            return e.getIn([\"meta\", \"paths\"].concat((0, i.default)(t), [\"parameters\"]), (0, s.fromJS)([])).forEach(function(e) {\n                var t = e.get(\"errors\");\n                t && t.count() && (n = !1)\n            }), n\n        };\n\n        function j(e) {\n            return s.Map.isMap(e) ? e : new s.Map\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.execute = t.executeRequest = t.logRequest = t.setMutatedRequest = t.setRequest = t.setResponse = t.updateEmptyParamInclusion = t.validateParams = t.invalidateResolvedSubtreeCache = t.updateResolvedSubtree = t.requestResolvedSubtree = t.resolveSpec = t.parseToJson = t.SET_SCHEME = t.UPDATE_RESOLVED_SUBTREE = t.UPDATE_RESOLVED = t.UPDATE_OPERATION_META_VALUE = t.CLEAR_VALIDATE_PARAMS = t.CLEAR_REQUEST = t.CLEAR_RESPONSE = t.LOG_REQUEST = t.SET_MUTATED_REQUEST = t.SET_REQUEST = t.SET_RESPONSE = t.VALIDATE_PARAMS = t.UPDATE_EMPTY_PARAM_INCLUSION = t.UPDATE_PARAM = t.UPDATE_JSON = t.UPDATE_URL = t.UPDATE_SPEC = void 0;\n        var r = b(n(25)),\n            o = b(n(84)),\n            i = b(n(23)),\n            a = b(n(42)),\n            u = b(n(203)),\n            s = b(n(338)),\n            l = b(n(339)),\n            c = b(n(45));\n        t.updateSpec = function(e) {\n            var t = L(e).replace(/\\t/g, \"  \");\n            if (\"string\" == typeof e) return {\n                type: _,\n                payload: t\n            }\n        }, t.updateResolved = function(e) {\n            return {\n                type: N,\n                payload: e\n            }\n        }, t.updateUrl = function(e) {\n            return {\n                type: w,\n                payload: e\n            }\n        }, t.updateJsonSpec = function(e) {\n            return {\n                type: E,\n                payload: e\n            }\n        }, t.changeParam = function(e, t, n, r, o) {\n            return {\n                type: x,\n                payload: {\n                    path: e,\n                    value: r,\n                    paramName: t,\n                    paramIn: n,\n                    isXml: o\n                }\n            }\n        }, t.changeParamByIdentity = function(e, t, n, r) {\n            return {\n                type: x,\n                payload: {\n                    path: e,\n                    param: t,\n                    value: n,\n                    isXml: r\n                }\n            }\n        }, t.clearValidateParams = function(e) {\n            return {\n                type: I,\n                payload: {\n                    pathMethod: e\n                }\n            }\n        }, t.changeConsumesValue = function(e, t) {\n            return {\n                type: j,\n                payload: {\n                    path: e,\n                    value: t,\n                    key: \"consumes_value\"\n                }\n            }\n        }, t.changeProducesValue = function(e, t) {\n            return {\n                type: j,\n                payload: {\n                    path: e,\n                    value: t,\n                    key: \"produces_value\"\n                }\n            }\n        }, t.clearResponse = function(e, t) {\n            return {\n                type: T,\n                payload: {\n                    path: e,\n                    method: t\n                }\n            }\n        }, t.clearRequest = function(e, t) {\n            return {\n                type: M,\n                payload: {\n                    path: e,\n                    method: t\n                }\n            }\n        }, t.setScheme = function(e, t, n) {\n            return {\n                type: D,\n                payload: {\n                    scheme: e,\n                    path: t,\n                    method: n\n                }\n            }\n        };\n        var f = b(n(207)),\n            p = n(7),\n            d = b(n(209)),\n            h = b(n(179)),\n            v = b(n(342)),\n            m = b(n(763)),\n            g = b(n(765)),\n            y = n(10);\n\n        function b(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var _ = t.UPDATE_SPEC = \"spec_update_spec\",\n            w = t.UPDATE_URL = \"spec_update_url\",\n            E = t.UPDATE_JSON = \"spec_update_json\",\n            x = t.UPDATE_PARAM = \"spec_update_param\",\n            S = t.UPDATE_EMPTY_PARAM_INCLUSION = \"spec_update_empty_param_inclusion\",\n            C = t.VALIDATE_PARAMS = \"spec_validate_param\",\n            k = t.SET_RESPONSE = \"spec_set_response\",\n            A = t.SET_REQUEST = \"spec_set_request\",\n            O = t.SET_MUTATED_REQUEST = \"spec_set_mutated_request\",\n            P = t.LOG_REQUEST = \"spec_log_request\",\n            T = t.CLEAR_RESPONSE = \"spec_clear_response\",\n            M = t.CLEAR_REQUEST = \"spec_clear_request\",\n            I = t.CLEAR_VALIDATE_PARAMS = \"spec_clear_validate_param\",\n            j = t.UPDATE_OPERATION_META_VALUE = \"spec_update_operation_meta_value\",\n            N = t.UPDATE_RESOLVED = \"spec_update_resolved\",\n            R = t.UPDATE_RESOLVED_SUBTREE = \"spec_update_resolved_subtree\",\n            D = t.SET_SCHEME = \"set_scheme\",\n            L = function(e) {\n                return (0, v.default)(e) ? e : \"\"\n            };\n        t.parseToJson = function(e) {\n            return function(t) {\n                var n = t.specActions,\n                    r = t.specSelectors,\n                    o = t.errActions,\n                    i = r.specStr,\n                    a = null;\n                try {\n                    e = e || i(), o.clear({\n                        source: \"parser\"\n                    }), a = f.default.safeLoad(e)\n                } catch (e) {\n                    return console.error(e), o.newSpecErr({\n                        source: \"parser\",\n                        level: \"error\",\n                        message: e.reason,\n                        line: e.mark && e.mark.line ? e.mark.line + 1 : void 0\n                    })\n                }\n                return a && \"object\" === (void 0 === a ? \"undefined\" : (0, c.default)(a)) ? n.updateJsonSpec(a) : {}\n            }\n        };\n        var U = !1,\n            q = (t.resolveSpec = function(e, t) {\n                return function(n) {\n                    var r = n.specActions,\n                        o = n.specSelectors,\n                        i = n.errActions,\n                        a = n.fn,\n                        u = a.fetch,\n                        s = a.resolve,\n                        l = a.AST,\n                        c = void 0 === l ? {} : l,\n                        f = n.getConfigs;\n                    U || (console.warn(\"specActions.resolveSpec is deprecated since v3.10.0 and will be removed in v4.0.0; use requestResolvedSubtree instead!\"), U = !0);\n                    var p = f(),\n                        d = p.modelPropertyMacro,\n                        h = p.parameterMacro,\n                        v = p.requestInterceptor,\n                        m = p.responseInterceptor;\n                    void 0 === e && (e = o.specJson()), void 0 === t && (t = o.url());\n                    var g = c.getLineNumberForPath ? c.getLineNumberForPath : function() {},\n                        y = o.specStr();\n                    return s({\n                        fetch: u,\n                        spec: e,\n                        baseDoc: t,\n                        modelPropertyMacro: d,\n                        parameterMacro: h,\n                        requestInterceptor: v,\n                        responseInterceptor: m\n                    }).then(function(e) {\n                        var t = e.spec,\n                            n = e.errors;\n                        if (i.clear({\n                            type: \"thrown\"\n                        }), Array.isArray(n) && n.length > 0) {\n                            var o = n.map(function(e) {\n                                return console.error(e), e.line = e.fullPath ? g(y, e.fullPath) : null, e.path = e.fullPath ? e.fullPath.join(\".\") : null, e.level = \"error\", e.type = \"thrown\", e.source = \"resolver\", Object.defineProperty(e, \"message\", {\n                                    enumerable: !0,\n                                    value: e.message\n                                }), e\n                            });\n                            i.newThrownErrBatch(o)\n                        }\n                        return r.updateResolved(t)\n                    })\n                }\n            }, []),\n            F = (0, m.default)((0, l.default)(s.default.mark(function e() {\n                var t, n, r, o, i, a, c, f, d, h, v, m, y, b, _, w, E;\n                return s.default.wrap(function(e) {\n                    for (;;) switch (e.prev = e.next) {\n                        case 0:\n                            if (t = q.system) {\n                                e.next = 4;\n                                break\n                            }\n                            return console.error(\"debResolveSubtrees: don't have a system to operate on, aborting.\"), e.abrupt(\"return\");\n                        case 4:\n                            if (n = t.errActions, r = t.errSelectors, o = t.fn, i = o.resolveSubtree, a = o.AST, c = void 0 === a ? {} : a, f = t.specSelectors, d = t.specActions, i) {\n                                e.next = 8;\n                                break\n                            }\n                            return console.error(\"Error: Swagger-Client did not provide a `resolveSubtree` method, doing nothing.\"), e.abrupt(\"return\");\n                        case 8:\n                            return h = c.getLineNumberForPath ? c.getLineNumberForPath : function() {}, v = f.specStr(), m = t.getConfigs(), y = m.modelPropertyMacro, b = m.parameterMacro, _ = m.requestInterceptor, w = m.responseInterceptor, e.prev = 11, e.next = 14, q.reduce(function() {\n                                var e = (0, l.default)(s.default.mark(function e(t, o) {\n                                    var a, u, l, c, p, d, m;\n                                    return s.default.wrap(function(e) {\n                                        for (;;) switch (e.prev = e.next) {\n                                            case 0:\n                                                return e.next = 2, t;\n                                            case 2:\n                                                return a = e.sent, u = a.resultMap, l = a.specWithCurrentSubtrees, e.next = 7, i(l, o, {\n                                                    baseDoc: f.url(),\n                                                    modelPropertyMacro: y,\n                                                    parameterMacro: b,\n                                                    requestInterceptor: _,\n                                                    responseInterceptor: w\n                                                });\n                                            case 7:\n                                                return c = e.sent, p = c.errors, d = c.spec, r.allErrors().size && n.clear({\n                                                    type: \"thrown\"\n                                                }), Array.isArray(p) && p.length > 0 && (m = p.map(function(e) {\n                                                    return e.line = e.fullPath ? h(v, e.fullPath) : null, e.path = e.fullPath ? e.fullPath.join(\".\") : null, e.level = \"error\", e.type = \"thrown\", e.source = \"resolver\", Object.defineProperty(e, \"message\", {\n                                                        enumerable: !0,\n                                                        value: e.message\n                                                    }), e\n                                                }), n.newThrownErrBatch(m)), (0, g.default)(u, o, d), (0, g.default)(l, o, d), e.abrupt(\"return\", {\n                                                    resultMap: u,\n                                                    specWithCurrentSubtrees: l\n                                                });\n                                            case 15:\n                                            case \"end\":\n                                                return e.stop()\n                                        }\n                                    }, e, void 0)\n                                }));\n                                return function(t, n) {\n                                    return e.apply(this, arguments)\n                                }\n                            }(), u.default.resolve({\n                                resultMap: (f.specResolvedSubtree([]) || (0, p.Map)()).toJS(),\n                                specWithCurrentSubtrees: f.specJson().toJS()\n                            }));\n                        case 14:\n                            E = e.sent, delete q.system, q = [], e.next = 22;\n                            break;\n                        case 19:\n                            e.prev = 19, e.t0 = e.catch(11), console.error(e.t0);\n                        case 22:\n                            d.updateResolvedSubtree([], E.resultMap);\n                        case 23:\n                        case \"end\":\n                            return e.stop()\n                    }\n                }, e, void 0, [\n                    [11, 19]\n                ])\n            })), 35);\n        t.requestResolvedSubtree = function(e) {\n            return function(t) {\n                q.push(e), q.system = t, F()\n            }\n        };\n        t.updateResolvedSubtree = function(e, t) {\n            return {\n                type: R,\n                payload: {\n                    path: e,\n                    value: t\n                }\n            }\n        }, t.invalidateResolvedSubtreeCache = function() {\n            return {\n                type: R,\n                payload: {\n                    path: [],\n                    value: (0, p.Map)()\n                }\n            }\n        }, t.validateParams = function(e, t) {\n            return {\n                type: C,\n                payload: {\n                    pathMethod: e,\n                    isOAS3: t\n                }\n            }\n        }, t.updateEmptyParamInclusion = function(e, t, n, r) {\n            return {\n                type: S,\n                payload: {\n                    pathMethod: e,\n                    paramName: t,\n                    paramIn: n,\n                    includeEmptyValue: r\n                }\n            }\n        };\n        t.setResponse = function(e, t, n) {\n            return {\n                payload: {\n                    path: e,\n                    method: t,\n                    res: n\n                },\n                type: k\n            }\n        }, t.setRequest = function(e, t, n) {\n            return {\n                payload: {\n                    path: e,\n                    method: t,\n                    req: n\n                },\n                type: A\n            }\n        }, t.setMutatedRequest = function(e, t, n) {\n            return {\n                payload: {\n                    path: e,\n                    method: t,\n                    req: n\n                },\n                type: O\n            }\n        }, t.logRequest = function(e) {\n            return {\n                payload: e,\n                type: P\n            }\n        }, t.executeRequest = function(e) {\n            return function(t) {\n                var n = t.fn,\n                    r = t.specActions,\n                    o = t.specSelectors,\n                    u = t.getConfigs,\n                    s = t.oas3Selectors,\n                    l = e.pathName,\n                    c = e.method,\n                    f = e.operation,\n                    p = u(),\n                    v = p.requestInterceptor,\n                    m = p.responseInterceptor,\n                    g = f.toJS();\n                if (g && g.parameters && g.parameters.length && g.parameters.filter(function(e) {\n                    return e && !0 === e.allowEmptyValue\n                }).forEach(function(t) {\n                    if (o.parameterInclusionSettingFor([l, c], t.name, t.in)) {\n                        e.parameters = e.parameters || {};\n                        var n = e.parameters[t.name];\n                        (!n || n && 0 === n.size) && (e.parameters[t.name] = \"\")\n                    }\n                }), e.contextUrl = (0, d.default)(o.url()).toString(), g && g.operationId ? e.operationId = g.operationId : g && l && c && (e.operationId = n.opId(g, l, c)), o.isOAS3()) {\n                    var b = l + \":\" + c;\n                    e.server = s.selectedServer(b) || s.selectedServer();\n                    var _ = s.serverVariables({\n                            server: e.server,\n                            namespace: b\n                        }).toJS(),\n                        w = s.serverVariables({\n                            server: e.server\n                        }).toJS();\n                    e.serverVariables = (0, a.default)(_).length ? _ : w, e.requestContentType = s.requestContentType(l, c), e.responseContentType = s.responseContentType(l, c) || \"*/*\";\n                    var E = s.requestBodyValue(l, c);\n                    (0, y.isJSONObject)(E) ? e.requestBody = JSON.parse(E): E && E.toJS ? e.requestBody = E.toJS() : e.requestBody = E\n                }\n                var x = (0, i.default)({}, e);\n                x = n.buildRequest(x), r.setRequest(e.pathName, e.method, x);\n                e.requestInterceptor = function(t) {\n                    var n = v.apply(this, [t]),\n                        o = (0, i.default)({}, n);\n                    return r.setMutatedRequest(e.pathName, e.method, o), n\n                }, e.responseInterceptor = m;\n                var S = Date.now();\n                return n.execute(e).then(function(t) {\n                    t.duration = Date.now() - S, r.setResponse(e.pathName, e.method, t)\n                }).catch(function(t) {\n                    return r.setResponse(e.pathName, e.method, {\n                        error: !0,\n                        err: (0, h.default)(t)\n                    })\n                })\n            }\n        };\n        t.execute = function() {\n            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                t = e.path,\n                n = e.method,\n                i = (0, o.default)(e, [\"path\", \"method\"]);\n            return function(e) {\n                var o = e.fn.fetch,\n                    a = e.specSelectors,\n                    u = e.specActions,\n                    s = a.specJsonWithResolvedSubtrees().toJS(),\n                    l = a.operationScheme(t, n),\n                    c = a.contentTypeValues([t, n]).toJS(),\n                    f = c.requestContentType,\n                    p = c.responseContentType,\n                    d = /xml/i.test(f),\n                    h = a.parameterValues([t, n], d).toJS();\n                return u.executeRequest((0, r.default)({}, i, {\n                    fetch: o,\n                    spec: s,\n                    pathName: t,\n                    method: n,\n                    parameters: h,\n                    requestContentType: f,\n                    scheme: l,\n                    responseContentType: p\n                }))\n            }\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(732),\n            __esModule: !0\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n, r) {\n            if (!(e instanceof t) || void 0 !== r && r in e) throw TypeError(n + \": incorrect invocation!\");\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(94);\n        e.exports.f = function(e) {\n            return new function(e) {\n                var t, n;\n                this.promise = new e(function(e, r) {\n                    if (void 0 !== t || void 0 !== n) throw TypeError(\"Bad Promise constructor\");\n                    t = e, n = r\n                }), this.resolve = r(t), this.reject = r(n)\n            }(e)\n        }\n    }, function(e, t, n) {\n        var r = n(50);\n        e.exports = function(e, t, n) {\n            for (var o in t) n && e[o] ? e[o] = t[o] : r(e, o, t[o]);\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(741);\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(86);\n        e.exports = new r({\n            explicit: [n(744), n(745), n(746)]\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t) {\n            var r = n(761),\n                o = n(762),\n                i = /^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\S\\s]*)/i,\n                a = /^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//,\n                u = [\n                    [\"#\", \"hash\"],\n                    [\"?\", \"query\"],\n                    [\"/\", \"pathname\"],\n                    [\"@\", \"auth\", 1],\n                    [NaN, \"host\", void 0, 1, 1],\n                    [/:(\\d+)$/, \"port\", void 0, 1],\n                    [NaN, \"hostname\", void 0, 1, 1]\n                ],\n                s = {\n                    hash: 1,\n                    query: 1\n                };\n\n            function l(e) {\n                var n, r = {},\n                    o = typeof(e = e || t.location || {});\n                if (\"blob:\" === e.protocol) r = new f(unescape(e.pathname), {});\n                else if (\"string\" === o)\n                    for (n in r = new f(e, {}), s) delete r[n];\n                else if (\"object\" === o) {\n                    for (n in e) n in s || (r[n] = e[n]);\n                    void 0 === r.slashes && (r.slashes = a.test(e.href))\n                }\n                return r\n            }\n\n            function c(e) {\n                var t = i.exec(e);\n                return {\n                    protocol: t[1] ? t[1].toLowerCase() : \"\",\n                    slashes: !!t[2],\n                    rest: t[3]\n                }\n            }\n\n            function f(e, t, n) {\n                if (!(this instanceof f)) return new f(e, t, n);\n                var i, a, s, p, d, h, v = u.slice(),\n                    m = typeof t,\n                    g = this,\n                    y = 0;\n                for (\"object\" !== m && \"string\" !== m && (n = t, t = null), n && \"function\" != typeof n && (n = o.parse), t = l(t), i = !(a = c(e || \"\")).protocol && !a.slashes, g.slashes = a.slashes || i && t.slashes, g.protocol = a.protocol || t.protocol || \"\", e = a.rest, a.slashes || (v[2] = [/(.*)/, \"pathname\"]); y < v.length; y++) s = (p = v[y])[0], h = p[1], s != s ? g[h] = e : \"string\" == typeof s ? ~(d = e.indexOf(s)) && (\"number\" == typeof p[2] ? (g[h] = e.slice(0, d), e = e.slice(d + p[2])) : (g[h] = e.slice(d), e = e.slice(0, d))) : (d = s.exec(e)) && (g[h] = d[1], e = e.slice(0, d.index)), g[h] = g[h] || i && p[3] && t[h] || \"\", p[4] && (g[h] = g[h].toLowerCase());\n                n && (g.query = n(g.query)), i && t.slashes && \"/\" !== g.pathname.charAt(0) && (\"\" !== g.pathname || \"\" !== t.pathname) && (g.pathname = function(e, t) {\n                    for (var n = (t || \"/\").split(\"/\").slice(0, -1).concat(e.split(\"/\")), r = n.length, o = n[r - 1], i = !1, a = 0; r--;) \".\" === n[r] ? n.splice(r, 1) : \"..\" === n[r] ? (n.splice(r, 1), a++) : a && (0 === r && (i = !0), n.splice(r, 1), a--);\n                    return i && n.unshift(\"\"), \".\" !== o && \"..\" !== o || n.push(\"\"), n.join(\"/\")\n                }(g.pathname, t.pathname)), r(g.port, g.protocol) || (g.host = g.hostname, g.port = \"\"), g.username = g.password = \"\", g.auth && (p = g.auth.split(\":\"), g.username = p[0] || \"\", g.password = p[1] || \"\"), g.origin = g.protocol && g.host && \"file:\" !== g.protocol ? g.protocol + \"//\" + g.host : \"null\", g.href = g.toString()\n            }\n            f.prototype = {\n                set: function(e, t, n) {\n                    var i = this;\n                    switch (e) {\n                        case \"query\":\n                            \"string\" == typeof t && t.length && (t = (n || o.parse)(t)), i[e] = t;\n                            break;\n                        case \"port\":\n                            i[e] = t, r(t, i.protocol) ? t && (i.host = i.hostname + \":\" + t) : (i.host = i.hostname, i[e] = \"\");\n                            break;\n                        case \"hostname\":\n                            i[e] = t, i.port && (t += \":\" + i.port), i.host = t;\n                            break;\n                        case \"host\":\n                            i[e] = t, /:\\d+$/.test(t) ? (t = t.split(\":\"), i.port = t.pop(), i.hostname = t.join(\":\")) : (i.hostname = t, i.port = \"\");\n                            break;\n                        case \"protocol\":\n                            i.protocol = t.toLowerCase(), i.slashes = !n;\n                            break;\n                        case \"pathname\":\n                        case \"hash\":\n                            if (t) {\n                                var a = \"pathname\" === e ? \"/\" : \"#\";\n                                i[e] = t.charAt(0) !== a ? a + t : t\n                            } else i[e] = t;\n                            break;\n                        default:\n                            i[e] = t\n                    }\n                    for (var s = 0; s < u.length; s++) {\n                        var l = u[s];\n                        l[4] && (i[l[1]] = i[l[1]].toLowerCase())\n                    }\n                    return i.origin = i.protocol && i.host && \"file:\" !== i.protocol ? i.protocol + \"//\" + i.host : \"null\", i.href = i.toString(), i\n                },\n                toString: function(e) {\n                    e && \"function\" == typeof e || (e = o.stringify);\n                    var t, n = this,\n                        r = n.protocol;\n                    r && \":\" !== r.charAt(r.length - 1) && (r += \":\");\n                    var i = r + (n.slashes ? \"//\" : \"\");\n                    return n.username && (i += n.username, n.password && (i += \":\" + n.password), i += \"@\"), i += n.host + n.pathname, (t = \"object\" == typeof n.query ? e(n.query) : n.query) && (i += \"?\" !== t.charAt(0) ? \"?\" + t : t), n.hash && (i += n.hash), i\n                }\n            }, f.extractProtocol = c, f.location = l, f.qs = o, e.exports = f\n        }).call(t, n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(8), null),\n            i = {};\n\n        function a() {\n            if (o)\n                for (var e in i) {\n                    var t = i[e],\n                        n = o.indexOf(e);\n                    if (n > -1 || r(\"96\", e), !l.plugins[n]) {\n                        t.extractEvents || r(\"97\", e), l.plugins[n] = t;\n                        var a = t.eventTypes;\n                        for (var s in a) u(a[s], t, s) || r(\"98\", s, e)\n                    }\n                }\n        }\n\n        function u(e, t, n) {\n            l.eventNameDispatchConfigs.hasOwnProperty(n) && r(\"99\", n), l.eventNameDispatchConfigs[n] = e;\n            var o = e.phasedRegistrationNames;\n            if (o) {\n                for (var i in o) {\n                    if (o.hasOwnProperty(i)) s(o[i], t, n)\n                }\n                return !0\n            }\n            return !!e.registrationName && (s(e.registrationName, t, n), !0)\n        }\n\n        function s(e, t, n) {\n            l.registrationNameModules[e] && r(\"100\", e), l.registrationNameModules[e] = t, l.registrationNameDependencies[e] = t.eventTypes[n].dependencies\n        }\n        var l = {\n            plugins: [],\n            eventNameDispatchConfigs: {},\n            registrationNameModules: {},\n            registrationNameDependencies: {},\n            possibleRegistrationNames: null,\n            injectEventPluginOrder: function(e) {\n                o && r(\"101\"), o = Array.prototype.slice.call(e), a()\n            },\n            injectEventPluginsByName: function(e) {\n                var t = !1;\n                for (var n in e)\n                    if (e.hasOwnProperty(n)) {\n                        var o = e[n];\n                        i.hasOwnProperty(n) && i[n] === o || (i[n] && r(\"102\", n), i[n] = o, t = !0)\n                    }\n                t && a()\n            },\n            getPluginModuleForEvent: function(e) {\n                var t = e.dispatchConfig;\n                if (t.registrationName) return l.registrationNameModules[t.registrationName] || null;\n                if (void 0 !== t.phasedRegistrationNames) {\n                    var n = t.phasedRegistrationNames;\n                    for (var r in n)\n                        if (n.hasOwnProperty(r)) {\n                            var o = l.registrationNameModules[n[r]];\n                            if (o) return o\n                        }\n                }\n                return null\n            },\n            _resetEventPlugins: function() {\n                for (var e in o = null, i) i.hasOwnProperty(e) && delete i[e];\n                l.plugins.length = 0;\n                var t = l.eventNameDispatchConfigs;\n                for (var n in t) t.hasOwnProperty(n) && delete t[n];\n                var r = l.registrationNameModules;\n                for (var a in r) r.hasOwnProperty(a) && delete r[a]\n            }\n        };\n        e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i = n(11),\n            a = n(212);\n        n(8), n(9);\n\n        function u(e, t, n, r) {\n            var o = e.type || \"unknown-event\";\n            e.currentTarget = s.getNodeFromInstance(r), t ? a.invokeGuardedCallbackWithCatch(o, n, e) : a.invokeGuardedCallback(o, n, e), e.currentTarget = null\n        }\n        var s = {\n            isEndish: function(e) {\n                return \"topMouseUp\" === e || \"topTouchEnd\" === e || \"topTouchCancel\" === e\n            },\n            isMoveish: function(e) {\n                return \"topMouseMove\" === e || \"topTouchMove\" === e\n            },\n            isStartish: function(e) {\n                return \"topMouseDown\" === e || \"topTouchStart\" === e\n            },\n            executeDirectDispatch: function(e) {\n                var t = e._dispatchListeners,\n                    n = e._dispatchInstances;\n                Array.isArray(t) && i(\"103\"), e.currentTarget = t ? s.getNodeFromInstance(n) : null;\n                var r = t ? t(e) : null;\n                return e.currentTarget = null, e._dispatchListeners = null, e._dispatchInstances = null, r\n            },\n            executeDispatchesInOrder: function(e, t) {\n                var n = e._dispatchListeners,\n                    r = e._dispatchInstances;\n                if (Array.isArray(n))\n                    for (var o = 0; o < n.length && !e.isPropagationStopped(); o++) u(e, t, n[o], r[o]);\n                else n && u(e, t, n, r);\n                e._dispatchListeners = null, e._dispatchInstances = null\n            },\n            executeDispatchesInOrderStopAtTrue: function(e) {\n                var t = function(e) {\n                    var t = e._dispatchListeners,\n                        n = e._dispatchInstances;\n                    if (Array.isArray(t)) {\n                        for (var r = 0; r < t.length && !e.isPropagationStopped(); r++)\n                            if (t[r](e, n[r])) return n[r]\n                    } else if (t && t(e, n)) return n;\n                    return null\n                }(e);\n                return e._dispatchInstances = null, e._dispatchListeners = null, t\n            },\n            hasDispatches: function(e) {\n                return !!e._dispatchListeners\n            },\n            getInstanceFromNode: function(e) {\n                return r.getInstanceFromNode(e)\n            },\n            getNodeFromInstance: function(e) {\n                return r.getNodeFromInstance(e)\n            },\n            isAncestor: function(e, t) {\n                return o.isAncestor(e, t)\n            },\n            getLowestCommonAncestor: function(e, t) {\n                return o.getLowestCommonAncestor(e, t)\n            },\n            getParentInstance: function(e) {\n                return o.getParentInstance(e)\n            },\n            traverseTwoPhase: function(e, t, n) {\n                return o.traverseTwoPhase(e, t, n)\n            },\n            traverseEnterLeave: function(e, t, n, r, i) {\n                return o.traverseEnterLeave(e, t, n, r, i)\n            },\n            injection: {\n                injectComponentTree: function(e) {\n                    r = e\n                },\n                injectTreeTraversal: function(e) {\n                    o = e\n                }\n            }\n        };\n        e.exports = s\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = null;\n\n        function o(e, t, n) {\n            try {\n                t(n)\n            } catch (e) {\n                null === r && (r = e)\n            }\n        }\n        var i = {\n            invokeGuardedCallback: o,\n            invokeGuardedCallbackWithCatch: o,\n            rethrowCaughtError: function() {\n                if (r) {\n                    var e = r;\n                    throw r = null, e\n                }\n            }\n        };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t = e.target || e.srcElement || window;\n            return t.correspondingUseElement && (t = t.correspondingUseElement), 3 === t.nodeType ? t.parentNode : t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(26);\n        o.canUseDOM && (r = document.implementation && document.implementation.hasFeature && !0 !== document.implementation.hasFeature(\"\", \"\"))\n            /**\n             * Checks if an event is supported in the current execution environment.\n             *\n             * NOTE: This will not work correctly for non-generic events such as `change`,\n             * `reset`, `load`, `error`, and `select`.\n             *\n             * Borrows from Modernizr.\n             *\n             * @param {string} eventNameSuffix Event name, e.g. \"click\".\n             * @param {?boolean} capture Check if the capture phase is supported.\n             * @return {boolean} True if the event is supported.\n             * @internal\n             * @license Modernizr 3.0.0pre (Custom Build) | MIT\n             */\n            , e.exports = function(e, t) {\n            if (!o.canUseDOM || t && !(\"addEventListener\" in document)) return !1;\n            var n = \"on\" + e,\n                i = n in document;\n            if (!i) {\n                var a = document.createElement(\"div\");\n                a.setAttribute(n, \"return;\"), i = \"function\" == typeof a[n]\n            }\n            return !i && r && \"wheel\" === e && (i = document.implementation.hasFeature(\"Events.wheel\", \"3.0\")), i\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            Alt: \"altKey\",\n            Control: \"ctrlKey\",\n            Meta: \"metaKey\",\n            Shift: \"shiftKey\"\n        };\n\n        function o(e) {\n            var t = this.nativeEvent;\n            if (t.getModifierState) return t.getModifierState(e);\n            var n = r[e];\n            return !!n && !!t[n]\n        }\n        e.exports = function(e) {\n            return o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(89),\n            o = n(789),\n            i = (n(14), n(39), n(218)),\n            a = n(149),\n            u = n(359);\n\n        function s(e, t) {\n            return Array.isArray(t) && (t = t[1]), t ? t.nextSibling : e.firstChild\n        }\n        var l = i(function(e, t, n) {\n            e.insertBefore(t, n)\n        });\n\n        function c(e, t, n) {\n            r.insertTreeBefore(e, t, n)\n        }\n\n        function f(e, t, n) {\n            Array.isArray(t) ? function(e, t, n, r) {\n                var o = t;\n                for (;;) {\n                    var i = o.nextSibling;\n                    if (l(e, o, r), o === n) break;\n                    o = i\n                }\n            }(e, t[0], t[1], n) : l(e, t, n)\n        }\n\n        function p(e, t) {\n            if (Array.isArray(t)) {\n                var n = t[1];\n                d(e, t = t[0], n), e.removeChild(n)\n            }\n            e.removeChild(t)\n        }\n\n        function d(e, t, n) {\n            for (;;) {\n                var r = t.nextSibling;\n                if (r === n) break;\n                e.removeChild(r)\n            }\n        }\n        var h = o.dangerouslyReplaceNodeWithMarkup;\n        var v = {\n            dangerouslyReplaceNodeWithMarkup: h,\n            replaceDelimitedText: function(e, t, n) {\n                var r = e.parentNode,\n                    o = e.nextSibling;\n                o === t ? n && l(r, document.createTextNode(n), o) : n ? (u(o, n), d(r, o, t)) : d(r, e, t)\n            },\n            processUpdates: function(e, t) {\n                for (var n = 0; n < t.length; n++) {\n                    var r = t[n];\n                    switch (r.type) {\n                        case \"INSERT_MARKUP\":\n                            c(e, r.content, s(e, r.afterNode));\n                            break;\n                        case \"MOVE_EXISTING\":\n                            f(e, r.fromNode, s(e, r.afterNode));\n                            break;\n                        case \"SET_MARKUP\":\n                            a(e, r.content);\n                            break;\n                        case \"TEXT_CONTENT\":\n                            u(e, r.content);\n                            break;\n                        case \"REMOVE_NODE\":\n                            p(e, r.fromNode)\n                    }\n                }\n            }\n        };\n        e.exports = v\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            html: \"http://www.w3.org/1999/xhtml\",\n            mathml: \"http://www.w3.org/1998/Math/MathML\",\n            svg: \"http://www.w3.org/2000/svg\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return \"undefined\" != typeof MSApp && MSApp.execUnsafeLocalFunction ? function(t, n, r, o) {\n                MSApp.execUnsafeLocalFunction(function() {\n                    return e(t, n, r, o)\n                })\n            } : e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(807),\n            i = n(268)(n(75).isValidElement),\n            a = (n(8), n(9), {\n                button: !0,\n                checkbox: !0,\n                image: !0,\n                hidden: !0,\n                radio: !0,\n                reset: !0,\n                submit: !0\n            });\n\n        function u(e) {\n            null != e.checkedLink && null != e.valueLink && r(\"87\")\n        }\n\n        function s(e) {\n            u(e), (null != e.value || null != e.onChange) && r(\"88\")\n        }\n\n        function l(e) {\n            u(e), (null != e.checked || null != e.onChange) && r(\"89\")\n        }\n        var c = {\n                value: function(e, t, n) {\n                    return !e[t] || a[e.type] || e.onChange || e.readOnly || e.disabled ? null : new Error(\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.\")\n                },\n                checked: function(e, t, n) {\n                    return !e[t] || e.onChange || e.readOnly || e.disabled ? null : new Error(\"You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.\")\n                },\n                onChange: i.func\n            },\n            f = {};\n\n        function p(e) {\n            if (e) {\n                var t = e.getName();\n                if (t) return \" Check the render method of `\" + t + \"`.\"\n            }\n            return \"\"\n        }\n        var d = {\n            checkPropTypes: function(e, t, n) {\n                for (var r in c) {\n                    if (c.hasOwnProperty(r)) var i = c[r](t, r, e, \"prop\", null, o);\n                    if (i instanceof Error && !(i.message in f)) {\n                        f[i.message] = !0;\n                        p(n)\n                    }\n                }\n            },\n            getValue: function(e) {\n                return e.valueLink ? (s(e), e.valueLink.value) : e.value\n            },\n            getChecked: function(e) {\n                return e.checkedLink ? (l(e), e.checkedLink.value) : e.checked\n            },\n            executeOnChange: function(e, t) {\n                return e.valueLink ? (s(e), e.valueLink.requestChange(t.target.value)) : e.checkedLink ? (l(e), e.checkedLink.requestChange(t.target.checked)) : e.onChange ? e.onChange.call(void 0, t) : void 0\n            }\n        };\n        e.exports = d\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(8), !1),\n            i = {\n                replaceNodeWithMarkup: null,\n                processChildrenUpdates: null,\n                injection: {\n                    injectEnvironment: function(e) {\n                        o && r(\"104\"), i.replaceNodeWithMarkup = e.replaceNodeWithMarkup, i.processChildrenUpdates = e.processChildrenUpdates, o = !0\n                    }\n                }\n            };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.hasOwnProperty;\n\n        function o(e, t) {\n            return e === t ? 0 !== e || 0 !== t || 1 / e == 1 / t : e != e && t != t\n        }\n        e.exports = function(e, t) {\n            if (o(e, t)) return !0;\n            if (\"object\" != typeof e || null === e || \"object\" != typeof t || null === t) return !1;\n            var n = Object.keys(e),\n                i = Object.keys(t);\n            if (n.length !== i.length) return !1;\n            for (var a = 0; a < n.length; a++)\n                if (!r.call(t, n[a]) || !o(e[n[a]], t[n[a]])) return !1;\n            return !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n = null === e || !1 === e,\n                r = null === t || !1 === t;\n            if (n || r) return n === r;\n            var o = typeof e,\n                i = typeof t;\n            return \"string\" === o || \"number\" === o ? \"string\" === i || \"number\" === i : \"object\" === i && e.type === t.type && e.key === t.key\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            escape: function(e) {\n                var t = {\n                    \"=\": \"=0\",\n                    \":\": \"=2\"\n                };\n                return \"$\" + (\"\" + e).replace(/[=:]/g, function(e) {\n                    return t[e]\n                })\n            },\n            unescape: function(e) {\n                var t = {\n                    \"=0\": \"=\",\n                    \"=2\": \":\"\n                };\n                return (\"\" + (\".\" === e[0] && \"$\" === e[1] ? e.substring(2) : e.substring(1))).replace(/(=0|=2)/g, function(e) {\n                    return t[e]\n                })\n            }\n        };\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(46), n(112)),\n            i = (n(39), n(43));\n        n(8), n(9);\n\n        function a(e) {\n            i.enqueueUpdate(e)\n        }\n\n        function u(e) {\n            var t = typeof e;\n            if (\"object\" !== t) return t;\n            var n = e.constructor && e.constructor.name || t,\n                r = Object.keys(e);\n            return r.length > 0 && r.length < 20 ? n + \" (keys: \" + r.join(\", \") + \")\" : n\n        }\n\n        function s(e, t) {\n            var n = o.get(e);\n            return n || null\n        }\n        var l = {\n            isMounted: function(e) {\n                var t = o.get(e);\n                return !!t && !!t._renderedComponent\n            },\n            enqueueCallback: function(e, t, n) {\n                l.validateCallback(t, n);\n                var r = s(e);\n                if (!r) return null;\n                r._pendingCallbacks ? r._pendingCallbacks.push(t) : r._pendingCallbacks = [t], a(r)\n            },\n            enqueueCallbackInternal: function(e, t) {\n                e._pendingCallbacks ? e._pendingCallbacks.push(t) : e._pendingCallbacks = [t], a(e)\n            },\n            enqueueForceUpdate: function(e) {\n                var t = s(e);\n                t && (t._pendingForceUpdate = !0, a(t))\n            },\n            enqueueReplaceState: function(e, t, n) {\n                var r = s(e);\n                r && (r._pendingStateQueue = [t], r._pendingReplaceState = !0, void 0 !== n && null !== n && (l.validateCallback(n, \"replaceState\"), r._pendingCallbacks ? r._pendingCallbacks.push(n) : r._pendingCallbacks = [n]), a(r))\n            },\n            enqueueSetState: function(e, t) {\n                var n = s(e);\n                n && ((n._pendingStateQueue || (n._pendingStateQueue = [])).push(t), a(n))\n            },\n            enqueueElementInternal: function(e, t, n) {\n                e._pendingElement = t, e._context = n, a(e)\n            },\n            validateCallback: function(e, t) {\n                e && \"function\" != typeof e && r(\"122\", t, u(e))\n            }\n        };\n        e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        n(13);\n        var r = n(34),\n            o = (n(9), r);\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t, n = e.keyCode;\n            return \"charCode\" in e ? 0 === (t = e.charCode) && 13 === n && (t = 13) : t = n, t >= 32 || 13 === t ? t : 0\n        }\n    }, function(e, t, n) {\n        var r = n(62),\n            o = n(228),\n            i = n(47),\n            a = \"[object Object]\",\n            u = Function.prototype,\n            s = Object.prototype,\n            l = u.toString,\n            c = s.hasOwnProperty,\n            f = l.call(Object);\n        e.exports = function(e) {\n            if (!i(e) || r(e) != a) return !1;\n            var t = o(e);\n            if (null === t) return !0;\n            var n = c.call(t, \"constructor\") && t.constructor;\n            return \"function\" == typeof n && n instanceof n && l.call(n) == f\n        }\n    }, function(e, t, n) {\n        var r = n(297)(Object.getPrototypeOf, Object);\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(291);\n        e.exports = function(e) {\n            var t = new e.constructor(e.byteLength);\n            return new r(t).set(new r(e)), t\n        }\n    }, function(e, t) {\n        var n = this && this.__extends || function(e, t) {\n                for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);\n\n                function r() {\n                    this.constructor = e\n                }\n                e.prototype = null === t ? Object.create(t) : (r.prototype = t.prototype, new r)\n            },\n            r = Object.prototype.hasOwnProperty;\n        /*!\n         * https://github.com/Starcounter-Jack/JSON-Patch\n         * (c) 2017 Joachim Wester\n         * MIT license\n         */\n        function o(e, t) {\n            return r.call(e, t)\n        }\n\n        function i(e) {\n            if (Array.isArray(e)) {\n                for (var t = new Array(e.length), n = 0; n < t.length; n++) t[n] = \"\" + n;\n                return t\n            }\n            if (Object.keys) return Object.keys(e);\n            t = [];\n            for (var r in e) o(e, r) && t.push(r);\n            return t\n        }\n\n        function a(e) {\n            return -1 === e.indexOf(\"/\") && -1 === e.indexOf(\"~\") ? e : e.replace(/~/g, \"~0\").replace(/\\//g, \"~1\")\n        }\n\n        function u(e, t) {\n            var n;\n            for (var r in e)\n                if (o(e, r)) {\n                    if (e[r] === t) return a(r) + \"/\";\n                    if (\"object\" == typeof e[r] && \"\" != (n = u(e[r], t))) return a(r) + \"/\" + n\n                }\n            return \"\"\n        }\n        t.hasOwnProperty = o, t._objectKeys = i, t._deepClone = function(e) {\n            switch (typeof e) {\n                case \"object\":\n                    return JSON.parse(JSON.stringify(e));\n                case \"undefined\":\n                    return null;\n                default:\n                    return e\n            }\n        }, t.isInteger = function(e) {\n            for (var t, n = 0, r = e.length; n < r;) {\n                if (!((t = e.charCodeAt(n)) >= 48 && t <= 57)) return !1;\n                n++\n            }\n            return !0\n        }, t.escapePathComponent = a, t.unescapePathComponent = function(e) {\n            return e.replace(/~1/g, \"/\").replace(/~0/g, \"~\")\n        }, t._getPathRecursive = u, t.getPath = function(e, t) {\n            if (e === t) return \"/\";\n            var n = u(e, t);\n            if (\"\" === n) throw new Error(\"Object not found in root\");\n            return \"/\" + n\n        }, t.hasUndefined = function e(t) {\n            if (void 0 === t) return !0;\n            if (t)\n                if (Array.isArray(t)) {\n                    for (var n = 0, r = t.length; n < r; n++)\n                        if (e(t[n])) return !0\n                } else if (\"object\" == typeof t) {\n                    var o = i(t),\n                        a = o.length;\n                    for (n = 0; n < a; n++)\n                        if (e(t[o[n]])) return !0\n                }\n            return !1\n        };\n        var s = function(e) {\n            function t(t, n, r, o, i) {\n                e.call(this, t), this.message = t, this.name = n, this.index = r, this.operation = o, this.tree = i\n            }\n            return n(t, e), t\n        }(Error);\n        t.PatchError = s\n    }, function(e, t, n) {\n        var r = n(49),\n            o = n(154),\n            i = n(72),\n            a = n(115),\n            u = n(917);\n        e.exports = function(e, t) {\n            var n = 1 == e,\n                s = 2 == e,\n                l = 3 == e,\n                c = 4 == e,\n                f = 6 == e,\n                p = 5 == e || f,\n                d = t || u;\n            return function(t, u, h) {\n                for (var v, m, g = i(t), y = o(g), b = r(u, h, 3), _ = a(y.length), w = 0, E = n ? d(t, _) : s ? d(t, 0) : void 0; _ > w; w++)\n                    if ((p || w in y) && (m = b(v = y[w], w, g), e))\n                        if (n) E[w] = m;\n                        else if (m) switch (e) {\n                            case 3:\n                                return !0;\n                            case 5:\n                                return v;\n                            case 6:\n                                return w;\n                            case 2:\n                                E.push(v)\n                        } else if (c) return !1;\n                return f ? -1 : l || c ? c : E\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.authorizeRequest = t.authorizeAccessCodeWithBasicAuthentication = t.authorizeAccessCodeWithFormParams = t.authorizeApplication = t.authorizePassword = t.preAuthorizeImplicit = t.CONFIGURE_AUTH = t.VALIDATE = t.AUTHORIZE_OAUTH2 = t.PRE_AUTHORIZE_OAUTH2 = t.LOGOUT = t.AUTHORIZE = t.SHOW_AUTH_POPUP = void 0;\n        var r = l(n(45)),\n            o = l(n(23)),\n            i = l(n(41));\n        t.showDefinitions = function(e) {\n            return {\n                type: c,\n                payload: e\n            }\n        }, t.authorize = function(e) {\n            return {\n                type: f,\n                payload: e\n            }\n        }, t.logout = function(e) {\n            return {\n                type: p,\n                payload: e\n            }\n        }, t.authorizeOauth2 = function(e) {\n            return {\n                type: d,\n                payload: e\n            }\n        }, t.configureAuth = function(e) {\n            return {\n                type: h,\n                payload: e\n            }\n        };\n        var a = l(n(209)),\n            u = l(n(32)),\n            s = n(10);\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = t.SHOW_AUTH_POPUP = \"show_popup\",\n            f = t.AUTHORIZE = \"authorize\",\n            p = t.LOGOUT = \"logout\",\n            d = (t.PRE_AUTHORIZE_OAUTH2 = \"pre_authorize_oauth2\", t.AUTHORIZE_OAUTH2 = \"authorize_oauth2\"),\n            h = (t.VALIDATE = \"validate\", t.CONFIGURE_AUTH = \"configure_auth\");\n        t.preAuthorizeImplicit = function(e) {\n            return function(t) {\n                var n = t.authActions,\n                    r = t.errActions,\n                    o = e.auth,\n                    a = e.token,\n                    s = e.isValid,\n                    l = o.schema,\n                    c = o.name,\n                    f = l.get(\"flow\");\n                delete u.default.swaggerUIRedirectOauth2, \"accessCode\" === f || s || r.newAuthErr({\n                    authId: c,\n                    source: \"auth\",\n                    level: \"warning\",\n                    message: \"Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server\"\n                }), a.error ? r.newAuthErr({\n                    authId: c,\n                    source: \"auth\",\n                    level: \"error\",\n                    message: (0, i.default)(a)\n                }) : n.authorizeOauth2({\n                    auth: o,\n                    token: a\n                })\n            }\n        };\n        t.authorizePassword = function(e) {\n            return function(t) {\n                var n = t.authActions,\n                    r = e.schema,\n                    i = e.name,\n                    a = e.username,\n                    u = e.password,\n                    l = e.passwordType,\n                    c = e.clientId,\n                    f = e.clientSecret,\n                    p = {\n                        grant_type: \"password\",\n                        scope: e.scopes.join(\" \")\n                    },\n                    d = {},\n                    h = {};\n                return \"basic\" === l ? h.Authorization = \"Basic \" + (0, s.btoa)(a + \":\" + u) : ((0, o.default)(p, {\n                    username: a\n                }, {\n                    password: u\n                }), \"query\" === l ? (c && (d.client_id = c), f && (d.client_secret = f)) : h.Authorization = \"Basic \" + (0, s.btoa)(c + \":\" + f)), n.authorizeRequest({\n                    body: (0, s.buildFormData)(p),\n                    url: r.get(\"tokenUrl\"),\n                    name: i,\n                    headers: h,\n                    query: d,\n                    auth: e\n                })\n            }\n        }, t.authorizeApplication = function(e) {\n            return function(t) {\n                var n = t.authActions,\n                    r = e.schema,\n                    o = e.scopes,\n                    i = e.name,\n                    a = e.clientId,\n                    u = e.clientSecret,\n                    l = {\n                        Authorization: \"Basic \" + (0, s.btoa)(a + \":\" + u)\n                    },\n                    c = {\n                        grant_type: \"client_credentials\",\n                        scope: o.join(\" \")\n                    };\n                return n.authorizeRequest({\n                    body: (0, s.buildFormData)(c),\n                    name: i,\n                    url: r.get(\"tokenUrl\"),\n                    auth: e,\n                    headers: l\n                })\n            }\n        }, t.authorizeAccessCodeWithFormParams = function(e) {\n            var t = e.auth,\n                n = e.redirectUrl;\n            return function(e) {\n                var r = e.authActions,\n                    o = t.schema,\n                    i = t.name,\n                    a = t.clientId,\n                    u = t.clientSecret,\n                    l = {\n                        grant_type: \"authorization_code\",\n                        code: t.code,\n                        client_id: a,\n                        client_secret: u,\n                        redirect_uri: n\n                    };\n                return r.authorizeRequest({\n                    body: (0, s.buildFormData)(l),\n                    name: i,\n                    url: o.get(\"tokenUrl\"),\n                    auth: t\n                })\n            }\n        }, t.authorizeAccessCodeWithBasicAuthentication = function(e) {\n            var t = e.auth,\n                n = e.redirectUrl;\n            return function(e) {\n                var r = e.authActions,\n                    o = t.schema,\n                    i = t.name,\n                    a = t.clientId,\n                    u = t.clientSecret,\n                    l = {\n                        Authorization: \"Basic \" + (0, s.btoa)(a + \":\" + u)\n                    },\n                    c = {\n                        grant_type: \"authorization_code\",\n                        code: t.code,\n                        client_id: a,\n                        redirect_uri: n\n                    };\n                return r.authorizeRequest({\n                    body: (0, s.buildFormData)(c),\n                    name: i,\n                    url: o.get(\"tokenUrl\"),\n                    auth: t,\n                    headers: l\n                })\n            }\n        }, t.authorizeRequest = function(e) {\n            return function(t) {\n                var n = t.fn,\n                    u = t.getConfigs,\n                    s = t.authActions,\n                    l = t.errActions,\n                    c = t.oas3Selectors,\n                    f = t.specSelectors,\n                    p = t.authSelectors,\n                    d = e.body,\n                    h = e.query,\n                    v = void 0 === h ? {} : h,\n                    m = e.headers,\n                    g = void 0 === m ? {} : m,\n                    y = e.name,\n                    b = e.url,\n                    _ = e.auth,\n                    w = (p.getConfigs() || {}).additionalQueryStringParams,\n                    E = void 0;\n                E = f.isOAS3() ? (0, a.default)(b, c.selectedServer(), !0) : (0, a.default)(b, f.url(), !0), \"object\" === (void 0 === w ? \"undefined\" : (0, r.default)(w)) && (E.query = (0, o.default)({}, E.query, w));\n                var x = E.toString(),\n                    S = (0, o.default)({\n                        Accept: \"application/json, text/plain, */*\",\n                        \"Content-Type\": \"application/x-www-form-urlencoded\"\n                    }, g);\n                n.fetch({\n                    url: x,\n                    method: \"post\",\n                    headers: S,\n                    query: v,\n                    body: d,\n                    requestInterceptor: u().requestInterceptor,\n                    responseInterceptor: u().responseInterceptor\n                }).then(function(e) {\n                    var t = JSON.parse(e.data),\n                        n = t && (t.error || \"\"),\n                        r = t && (t.parseError || \"\");\n                    e.ok ? n || r ? l.newAuthErr({\n                        authId: y,\n                        level: \"error\",\n                        source: \"auth\",\n                        message: (0, i.default)(t)\n                    }) : s.authorizeOauth2({\n                        auth: _,\n                        token: t\n                    }) : l.newAuthErr({\n                        authId: y,\n                        level: \"error\",\n                        source: \"auth\",\n                        message: e.statusText\n                    })\n                }).catch(function(e) {\n                    var t = new Error(e).message;\n                    if (e.response && e.response.data) {\n                        var n = e.response.data;\n                        try {\n                            var r = \"string\" == typeof n ? JSON.parse(n) : n;\n                            r.error && (t += \", error: \" + r.error), r.error_description && (t += \", description: \" + r.error_description)\n                        } catch (e) {}\n                    }\n                    l.newAuthErr({\n                        authId: y,\n                        level: \"error\",\n                        source: \"auth\",\n                        message: t\n                    })\n                })\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.parseYamlConfig = void 0;\n        var r, o = n(207),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.parseYamlConfig = function(e, t) {\n            try {\n                return i.default.safeLoad(e)\n            } catch (e) {\n                return t && t.errActions.newThrownErr(new Error(e)), {}\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.loaded = t.TOGGLE_CONFIGS = t.UPDATE_CONFIGS = void 0;\n        var r, o = n(22),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.update = function(e, t) {\n            return {\n                type: a,\n                payload: (0, i.default)({}, e, t)\n            }\n        }, t.toggle = function(e) {\n            return {\n                type: u,\n                payload: e\n            }\n        };\n        var a = t.UPDATE_CONFIGS = \"configs_update\",\n            u = t.TOGGLE_CONFIGS = \"configs_toggle\";\n        t.loaded = function() {\n            return function() {}\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t, n, r, o) {\n            this.src = e, this.env = r, this.options = n, this.parser = t, this.tokens = o, this.pos = 0, this.posMax = this.src.length, this.level = 0, this.pending = \"\", this.pendingLevel = 0, this.cache = [], this.isInLabel = !1, this.linkLevel = 0, this.linkContent = \"\", this.labelUnmatchedScopes = 0\n        }\n        r.prototype.pushPending = function() {\n            this.tokens.push({\n                type: \"text\",\n                content: this.pending,\n                level: this.pendingLevel\n            }), this.pending = \"\"\n        }, r.prototype.push = function(e) {\n            this.pending && this.pushPending(), this.tokens.push(e), this.pendingLevel = this.level\n        }, r.prototype.cacheSet = function(e, t) {\n            for (var n = this.cache.length; n <= e; n++) this.cache.push(0);\n            this.cache[e] = t\n        }, r.prototype.cacheGet = function(e) {\n            return e < this.cache.length ? this.cache[e] : 0\n        }, e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.setSelectedServer = function(e, t) {\n            return {\n                type: r,\n                payload: {\n                    selectedServerUrl: e,\n                    namespace: t\n                }\n            }\n        }, t.setRequestBodyValue = function(e) {\n            var t = e.value,\n                n = e.pathMethod;\n            return {\n                type: o,\n                payload: {\n                    value: t,\n                    pathMethod: n\n                }\n            }\n        }, t.setRequestContentType = function(e) {\n            var t = e.value,\n                n = e.pathMethod;\n            return {\n                type: i,\n                payload: {\n                    value: t,\n                    pathMethod: n\n                }\n            }\n        }, t.setResponseContentType = function(e) {\n            var t = e.value,\n                n = e.path,\n                r = e.method;\n            return {\n                type: a,\n                payload: {\n                    value: t,\n                    path: n,\n                    method: r\n                }\n            }\n        }, t.setServerVariableValue = function(e) {\n            var t = e.server,\n                n = e.namespace,\n                r = e.key,\n                o = e.val;\n            return {\n                type: u,\n                payload: {\n                    server: t,\n                    namespace: n,\n                    key: r,\n                    val: o\n                }\n            }\n        };\n        var r = t.UPDATE_SELECTED_SERVER = \"oas3_set_servers\",\n            o = t.UPDATE_REQUEST_BODY_VALUE = \"oas3_set_request_body_value\",\n            i = t.UPDATE_REQUEST_CONTENT_TYPE = \"oas3_set_request_content_type\",\n            a = t.UPDATE_RESPONSE_CONTENT_TYPE = \"oas3_set_response_content_type\",\n            u = t.UPDATE_SERVER_VARIABLE_VALUE = \"oas3_set_server_variable_value\"\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(114),\n            o = n(20),\n            i = n(158),\n            a = n(50),\n            u = n(70),\n            s = n(451),\n            l = n(97),\n            c = n(241),\n            f = n(19)(\"iterator\"),\n            p = !([].keys && \"next\" in [].keys()),\n            d = function() {\n                return this\n            };\n        e.exports = function(e, t, n, h, v, m, g) {\n            s(n, t, h);\n            var y, b, _, w = function(e) {\n                    if (!p && e in C) return C[e];\n                    switch (e) {\n                        case \"keys\":\n                        case \"values\":\n                            return function() {\n                                return new n(this, e)\n                            }\n                    }\n                    return function() {\n                        return new n(this, e)\n                    }\n                },\n                E = t + \" Iterator\",\n                x = \"values\" == v,\n                S = !1,\n                C = e.prototype,\n                k = C[f] || C[\"@@iterator\"] || v && C[v],\n                A = k || w(v),\n                O = v ? x ? w(\"entries\") : A : void 0,\n                P = \"Array\" == t && C.entries || k;\n            if (P && (_ = c(P.call(new e))) !== Object.prototype && _.next && (l(_, E, !0), r || \"function\" == typeof _[f] || a(_, f, d)), x && k && \"values\" !== k.name && (S = !0, A = function() {\n                return k.call(this)\n            }), r && !g || !p && !S && C[f] || a(C, f, A), u[t] = A, u[E] = d, v)\n                if (y = {\n                    values: x ? A : w(\"values\"),\n                    keys: m ? A : w(\"keys\"),\n                    entries: O\n                }, g)\n                    for (b in y) b in C || i(C, b, y[b]);\n                else o(o.P + o.F * (p || S), t, y);\n            return y\n        }\n    }, function(e, t, n) {\n        e.exports = !n(44) && !n(51)(function() {\n            return 7 != Object.defineProperty(n(156)(\"div\"), \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(e, t, n) {\n        var r = n(52),\n            o = n(71),\n            i = n(453)(!1),\n            a = n(161)(\"IE_PROTO\");\n        e.exports = function(e, t) {\n            var n, u = o(e),\n                s = 0,\n                l = [];\n            for (n in u) n != a && r(u, n) && l.push(n);\n            for (; t.length > s;) r(u, n = t[s++]) && (~i(l, n) || l.push(n));\n            return l\n        }\n    }, function(e, t, n) {\n        var r = n(21).document;\n        e.exports = r && r.documentElement\n    }, function(e, t, n) {\n        var r = n(52),\n            o = n(72),\n            i = n(161)(\"IE_PROTO\"),\n            a = Object.prototype;\n        e.exports = Object.getPrototypeOf || function(e) {\n            return e = o(e), r(e, i) ? e[i] : \"function\" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? a : null\n        }\n    }, function(e, t, n) {\n        var r = n(33),\n            o = r[\"__core-js_shared__\"] || (r[\"__core-js_shared__\"] = {});\n        e.exports = function(e) {\n            return o[e] || (o[e] = {})\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return {\n                enumerable: !(1 & e),\n                configurable: !(2 & e),\n                writable: !(4 & e),\n                value: t\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(245)(!0);\n        n(246)(String, \"String\", function(e) {\n            this._t = String(e), this._i = 0\n        }, function() {\n            var e, t = this._t,\n                n = this._i;\n            return n >= t.length ? {\n                value: void 0,\n                done: !0\n            } : (e = r(t, n), this._i += e.length, {\n                value: e,\n                done: !1\n            })\n        })\n    }, function(e, t, n) {\n        var r = n(119),\n            o = n(53);\n        e.exports = function(e) {\n            return function(t, n) {\n                var i, a, u = String(o(t)),\n                    s = r(n),\n                    l = u.length;\n                return s < 0 || s >= l ? e ? \"\" : void 0 : (i = u.charCodeAt(s)) < 55296 || i > 56319 || s + 1 === l || (a = u.charCodeAt(s + 1)) < 56320 || a > 57343 ? e ? u.charAt(s) : i : e ? u.slice(s, s + 2) : a - 56320 + (i - 55296 << 10) + 65536\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(247),\n            o = n(29),\n            i = n(73),\n            a = n(58),\n            u = n(102),\n            s = n(461),\n            l = n(170),\n            c = n(467),\n            f = n(17)(\"iterator\"),\n            p = !([].keys && \"next\" in [].keys()),\n            d = function() {\n                return this\n            };\n        e.exports = function(e, t, n, h, v, m, g) {\n            s(n, t, h);\n            var y, b, _, w = function(e) {\n                    if (!p && e in C) return C[e];\n                    switch (e) {\n                        case \"keys\":\n                        case \"values\":\n                            return function() {\n                                return new n(this, e)\n                            }\n                    }\n                    return function() {\n                        return new n(this, e)\n                    }\n                },\n                E = t + \" Iterator\",\n                x = \"values\" == v,\n                S = !1,\n                C = e.prototype,\n                k = C[f] || C[\"@@iterator\"] || v && C[v],\n                A = k || w(v),\n                O = v ? x ? w(\"entries\") : A : void 0,\n                P = \"Array\" == t && C.entries || k;\n            if (P && (_ = c(P.call(new e))) !== Object.prototype && _.next && (l(_, E, !0), r || \"function\" == typeof _[f] || a(_, f, d)), x && k && \"values\" !== k.name && (S = !0, A = function() {\n                return k.call(this)\n            }), r && !g || !p && !S && C[f] || a(C, f, A), u[t] = A, u[E] = d, v)\n                if (y = {\n                    values: x ? A : w(\"values\"),\n                    keys: m ? A : w(\"keys\"),\n                    entries: O\n                }, g)\n                    for (b in y) b in C || i(C, b, y[b]);\n                else o(o.P + o.F * (p || S), t, y);\n            return y\n        }\n    }, function(e, t) {\n        e.exports = !1\n    }, function(e, t, n) {\n        var r = n(464),\n            o = n(250);\n        e.exports = Object.keys || function(e) {\n            return r(e, o)\n        }\n    }, function(e, t, n) {\n        var r = n(119),\n            o = Math.max,\n            i = Math.min;\n        e.exports = function(e, t) {\n            return (e = r(e)) < 0 ? o(e + t, 0) : i(e, t)\n        }\n    }, function(e, t) {\n        e.exports = \"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")\n    }, function(e, t, n) {\n        var r = n(33).document;\n        e.exports = r && r.documentElement\n    }, function(e, t, n) {\n        var r = n(59),\n            o = n(121),\n            i = n(17)(\"species\");\n        e.exports = function(e, t) {\n            var n, a = r(e).constructor;\n            return void 0 === a || void 0 == (n = r(a)[i]) ? t : o(n)\n        }\n    }, function(e, t, n) {\n        var r, o, i, a = n(120),\n            u = n(479),\n            s = n(251),\n            l = n(168),\n            c = n(33),\n            f = c.process,\n            p = c.setImmediate,\n            d = c.clearImmediate,\n            h = c.MessageChannel,\n            v = c.Dispatch,\n            m = 0,\n            g = {},\n            y = function() {\n                var e = +this;\n                if (g.hasOwnProperty(e)) {\n                    var t = g[e];\n                    delete g[e], t()\n                }\n            },\n            b = function(e) {\n                y.call(e.data)\n            };\n        p && d || (p = function(e) {\n            for (var t = [], n = 1; arguments.length > n;) t.push(arguments[n++]);\n            return g[++m] = function() {\n                u(\"function\" == typeof e ? e : Function(e), t)\n            }, r(m), m\n        }, d = function(e) {\n            delete g[e]\n        }, \"process\" == n(99)(f) ? r = function(e) {\n            f.nextTick(a(y, e, 1))\n        } : v && v.now ? r = function(e) {\n            v.now(a(y, e, 1))\n        } : h ? (i = (o = new h).port2, o.port1.onmessage = b, r = a(i.postMessage, i, 1)) : c.addEventListener && \"function\" == typeof postMessage && !c.importScripts ? (r = function(e) {\n            c.postMessage(e + \"\", \"*\")\n        }, c.addEventListener(\"message\", b, !1)) : r = \"onreadystatechange\" in l(\"script\") ? function(e) {\n            s.appendChild(l(\"script\")).onreadystatechange = function() {\n                s.removeChild(this), y.call(e)\n            }\n        } : function(e) {\n            setTimeout(a(y, e, 1), 0)\n        }), e.exports = {\n            set: p,\n            clear: d\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            try {\n                return {\n                    e: !1,\n                    v: e()\n                }\n            } catch (e) {\n                return {\n                    e: !0,\n                    v: e\n                }\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(59),\n            o = n(74),\n            i = n(171);\n        e.exports = function(e, t) {\n            if (r(e), o(t) && t.constructor === e) return t;\n            var n = i.f(e);\n            return (0, n.resolve)(t), n.promise\n        }\n    }, function(e, t, n) {\n        var r = n(74),\n            o = n(99),\n            i = n(17)(\"match\");\n        e.exports = function(e) {\n            var t;\n            return r(e) && (void 0 !== (t = e[i]) ? !!t : \"RegExp\" == o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(20),\n            o = n(15),\n            i = n(51);\n        e.exports = function(e, t) {\n            var n = (o.Object || {})[e] || Object[e],\n                a = {};\n            a[e] = t(n), r(r.S + r.F * i(function() {\n                n(1)\n            }), \"Object\", a)\n        }\n    }, function(e, t, n) {\n        var r = n(93);\n        e.exports = Array.isArray || function(e) {\n            return \"Array\" == r(e)\n        }\n    }, function(e, t, n) {\n        var r = n(239),\n            o = n(163).concat(\"length\", \"prototype\");\n        t.f = Object.getOwnPropertyNames || function(e) {\n            return r(e, o)\n        }\n    }, function(e, t, n) {\n        var r = n(125),\n            o = n(95),\n            i = n(71),\n            a = n(157),\n            u = n(52),\n            s = n(238),\n            l = Object.getOwnPropertyDescriptor;\n        t.f = n(44) ? l : function(e, t) {\n            if (e = i(e), t = a(t, !0), s) try {\n                return l(e, t)\n            } catch (e) {}\n            if (u(e, t)) return o(!r.f.call(e, t), e[t])\n        }\n    }, function(e, t) {\n        var n = {}.toString;\n        e.exports = Array.isArray || function(e) {\n            return \"[object Array]\" == n.call(e)\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(531),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(96),\n            o = n(176),\n            i = n(125),\n            a = n(72),\n            u = n(154),\n            s = Object.assign;\n        e.exports = !s || n(51)(function() {\n            var e = {},\n                t = {},\n                n = Symbol(),\n                r = \"abcdefghijklmnopqrst\";\n            return e[n] = 7, r.split(\"\").forEach(function(e) {\n                t[e] = e\n            }), 7 != s({}, e)[n] || Object.keys(s({}, t)).join(\"\") != r\n        }) ? function(e, t) {\n            for (var n = a(e), s = arguments.length, l = 1, c = o.f, f = i.f; s > l;)\n                for (var p, d = u(arguments[l++]), h = c ? r(d).concat(c(d)) : r(d), v = h.length, m = 0; v > m;) f.call(d, p = h[m++]) && (n[p] = d[p]);\n            return n\n        } : s\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(104),\n            o = n(13),\n            i = n(265),\n            a = (n(266), n(126));\n        n(8), n(535);\n\n        function u(e, t, n) {\n            this.props = e, this.context = t, this.refs = a, this.updater = n || i\n        }\n\n        function s(e, t, n) {\n            this.props = e, this.context = t, this.refs = a, this.updater = n || i\n        }\n\n        function l() {}\n        u.prototype.isReactComponent = {}, u.prototype.setState = function(e, t) {\n            \"object\" != typeof e && \"function\" != typeof e && null != e && r(\"85\"), this.updater.enqueueSetState(this, e), t && this.updater.enqueueCallback(this, t, \"setState\")\n        }, u.prototype.forceUpdate = function(e) {\n            this.updater.enqueueForceUpdate(this), e && this.updater.enqueueCallback(this, e, \"forceUpdate\")\n        }, l.prototype = u.prototype, s.prototype = new l, s.prototype.constructor = s, o(s.prototype, u.prototype), s.prototype.isPureReactComponent = !0, e.exports = {\n            Component: u,\n            PureComponent: s\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        n(9);\n        var r = {\n            isMounted: function(e) {\n                return !1\n            },\n            enqueueCallback: function(e, t) {},\n            enqueueForceUpdate: function(e) {},\n            enqueueReplaceState: function(e, t) {},\n            enqueueSetState: function(e, t) {}\n        };\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = !1;\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && Symbol.for && Symbol.for(\"react.element\") || 60103;\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(543);\n        e.exports = function(e) {\n            return r(e, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = \"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\"\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = n(271),\n            o = n(560),\n            i = n(561),\n            a = n(562),\n            u = n(275);\n        n(274);\n        n.d(t, \"createStore\", function() {\n            return r.b\n        }), n.d(t, \"combineReducers\", function() {\n            return o.a\n        }), n.d(t, \"bindActionCreators\", function() {\n            return i.a\n        }), n.d(t, \"applyMiddleware\", function() {\n            return a.a\n        }), n.d(t, \"compose\", function() {\n            return u.a\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n.d(t, \"a\", function() {\n            return i\n        }), t.b = function e(t, n, a) {\n            var u;\n            \"function\" == typeof n && void 0 === a && (a = n, n = void 0);\n            if (void 0 !== a) {\n                if (\"function\" != typeof a) throw new Error(\"Expected the enhancer to be a function.\");\n                return a(e)(t, n)\n            }\n            if (\"function\" != typeof t) throw new Error(\"Expected the reducer to be a function.\");\n            var s = t;\n            var l = n;\n            var c = [];\n            var f = c;\n            var p = !1;\n\n            function d() {\n                f === c && (f = c.slice())\n            }\n\n            function h() {\n                return l\n            }\n\n            function v(e) {\n                if (\"function\" != typeof e) throw new Error(\"Expected listener to be a function.\");\n                var t = !0;\n                return d(), f.push(e),\n                    function() {\n                        if (t) {\n                            t = !1, d();\n                            var n = f.indexOf(e);\n                            f.splice(n, 1)\n                        }\n                    }\n            }\n\n            function m(e) {\n                if (!r.a(e)) throw new Error(\"Actions must be plain objects. Use custom middleware for async actions.\");\n                if (void 0 === e.type) throw new Error('Actions may not have an undefined \"type\" property. Have you misspelled a constant?');\n                if (p) throw new Error(\"Reducers may not dispatch actions.\");\n                try {\n                    p = !0, l = s(l, e)\n                } finally {\n                    p = !1\n                }\n                for (var t = c = f, n = 0; n < t.length; n++) {\n                    var o = t[n];\n                    o()\n                }\n                return e\n            }\n            m({\n                type: i.INIT\n            });\n            return u = {\n                dispatch: m,\n                subscribe: v,\n                getState: h,\n                replaceReducer: function(e) {\n                    if (\"function\" != typeof e) throw new Error(\"Expected the nextReducer to be a function.\");\n                    s = e, m({\n                        type: i.INIT\n                    })\n                }\n            }, u[o.a] = function() {\n                var e, t = v;\n                return (e = {\n                    subscribe: function(e) {\n                        if (\"object\" != typeof e) throw new TypeError(\"Expected the observer to be an object.\");\n\n                        function n() {\n                            e.next && e.next(h())\n                        }\n                        n();\n                        var r = t(n);\n                        return {\n                            unsubscribe: r\n                        }\n                    }\n                })[o.a] = function() {\n                    return this\n                }, e\n            }, u\n        };\n        var r = n(272),\n            o = n(557),\n            i = {\n                INIT: \"@@redux/INIT\"\n            }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(549),\n            o = n(554),\n            i = n(556),\n            a = \"[object Object]\",\n            u = Function.prototype,\n            s = Object.prototype,\n            l = u.toString,\n            c = s.hasOwnProperty,\n            f = l.call(Object);\n        t.a = function(e) {\n            if (!i.a(e) || r.a(e) != a) return !1;\n            var t = o.a(e);\n            if (null === t) return !0;\n            var n = c.call(t, \"constructor\") && t.constructor;\n            return \"function\" == typeof n && n instanceof n && l.call(n) == f\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(550).a.Symbol;\n        t.a = r\n    }, function(e, t, n) {\n        \"use strict\"\n    }, function(e, t, n) {\n        \"use strict\";\n        t.a = function() {\n            for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n            if (0 === t.length) return function(e) {\n                return e\n            };\n            if (1 === t.length) return t[0];\n            return t.reduce(function(e, t) {\n                return function() {\n                    return e(t.apply(void 0, arguments))\n                }\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e) {\n            return e && \"@@redux/INIT\" === e.type ? \"initialState argument passed to createStore\" : \"previous state received by the reducer\"\n        }, e.exports = t.default\n    }, function(e, t, n) {\n        var r = n(77),\n            o = n(279),\n            i = n(24),\n            a = n(128),\n            u = 1 / 0,\n            s = r ? r.prototype : void 0,\n            l = s ? s.toString : void 0;\n        e.exports = function e(t) {\n            if (\"string\" == typeof t) return t;\n            if (i(t)) return o(t, e) + \"\";\n            if (a(t)) return l ? l.call(t) : \"\";\n            var n = t + \"\";\n            return \"0\" == n && 1 / t == -u ? \"-0\" : n\n        }\n    }, function(e, t, n) {\n        (function(t) {\n            var n = \"object\" == typeof t && t && t.Object === Object && t;\n            e.exports = n\n        }).call(t, n(31))\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            for (var n = -1, r = null == e ? 0 : e.length, o = Array(r); ++n < r;) o[n] = t(e[n], n, e);\n            return o\n        }\n    }, function(e, t, n) {\n        var r = n(576)(\"toUpperCase\");\n        e.exports = r\n    }, function(e, t) {\n        e.exports = function(e, t, n) {\n            var r = -1,\n                o = e.length;\n            t < 0 && (t = -t > o ? 0 : o + t), (n = n > o ? o : n) < 0 && (n += o), o = t > n ? 0 : n - t >>> 0, t >>>= 0;\n            for (var i = Array(o); ++r < o;) i[r] = e[r + t];\n            return i\n        }\n    }, function(e, t) {\n        var n = RegExp(\"[\\\\u200d\\\\ud800-\\\\udfff\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff\\\\ufe0e\\\\ufe0f]\");\n        e.exports = function(e) {\n            return n.test(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n, r) {\n            var o = -1,\n                i = null == e ? 0 : e.length;\n            for (r && i && (n = e[++o]); ++o < i;) n = t(n, e[o], o, e);\n            return n\n        }\n    }, function(e, t, n) {\n        var r = n(180),\n            o = \"Expected a function\";\n\n        function i(e, t) {\n            if (\"function\" != typeof e || null != t && \"function\" != typeof t) throw new TypeError(o);\n            var n = function() {\n                var r = arguments,\n                    o = t ? t.apply(this, r) : r[0],\n                    i = n.cache;\n                if (i.has(o)) return i.get(o);\n                var a = e.apply(this, r);\n                return n.cache = i.set(o, a) || i, a\n            };\n            return n.cache = new(i.Cache || r), n\n        }\n        i.Cache = r, e.exports = i\n    }, function(e, t, n) {\n        var r = n(62),\n            o = n(38),\n            i = \"[object AsyncFunction]\",\n            a = \"[object Function]\",\n            u = \"[object GeneratorFunction]\",\n            s = \"[object Proxy]\";\n        e.exports = function(e) {\n            if (!o(e)) return !1;\n            var t = r(e);\n            return t == a || t == u || t == i || t == s\n        }\n    }, function(e, t) {\n        var n = Function.prototype.toString;\n        e.exports = function(e) {\n            if (null != e) {\n                try {\n                    return n.call(e)\n                } catch (e) {}\n                try {\n                    return e + \"\"\n                } catch (e) {}\n            }\n            return \"\"\n        }\n    }, function(e, t, n) {\n        var r = n(610)(n(647));\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(618),\n            o = n(47);\n        e.exports = function e(t, n, i, a, u) {\n            return t === n || (null == t || null == n || !o(t) && !o(n) ? t != t && n != n : r(t, n, i, a, e, u))\n        }\n    }, function(e, t, n) {\n        var r = n(619),\n            o = n(290),\n            i = n(622),\n            a = 1,\n            u = 2;\n        e.exports = function(e, t, n, s, l, c) {\n            var f = n & a,\n                p = e.length,\n                d = t.length;\n            if (p != d && !(f && d > p)) return !1;\n            var h = c.get(e);\n            if (h && c.get(t)) return h == t;\n            var v = -1,\n                m = !0,\n                g = n & u ? new r : void 0;\n            for (c.set(e, t), c.set(t, e); ++v < p;) {\n                var y = e[v],\n                    b = t[v];\n                if (s) var _ = f ? s(b, y, v, t, e, c) : s(y, b, v, e, t, c);\n                if (void 0 !== _) {\n                    if (_) continue;\n                    m = !1;\n                    break\n                }\n                if (g) {\n                    if (!o(t, function(e, t) {\n                        if (!i(g, t) && (y === e || l(y, e, n, s, c))) return g.push(t)\n                    })) {\n                        m = !1;\n                        break\n                    }\n                } else if (y !== b && !l(y, b, n, s, c)) {\n                    m = !1;\n                    break\n                }\n            }\n            return c.delete(e), c.delete(t), m\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            for (var n = -1, r = null == e ? 0 : e.length; ++n < r;)\n                if (t(e[n], n, e)) return !0;\n            return !1\n        }\n    }, function(e, t, n) {\n        var r = n(37).Uint8Array;\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(293),\n            o = n(184),\n            i = n(64);\n        e.exports = function(e) {\n            return r(e, i, o)\n        }\n    }, function(e, t, n) {\n        var r = n(183),\n            o = n(24);\n        e.exports = function(e, t, n) {\n            var i = t(e);\n            return o(e) ? i : r(i, n(e))\n        }\n    }, function(e, t) {\n        e.exports = function() {\n            return []\n        }\n    }, function(e, t, n) {\n        var r = n(628),\n            o = n(185),\n            i = n(24),\n            a = n(186),\n            u = n(135),\n            s = n(296),\n            l = Object.prototype.hasOwnProperty;\n        e.exports = function(e, t) {\n            var n = i(e),\n                c = !n && o(e),\n                f = !n && !c && a(e),\n                p = !n && !c && !f && s(e),\n                d = n || c || f || p,\n                h = d ? r(e.length, String) : [],\n                v = h.length;\n            for (var m in e) !t && !l.call(e, m) || d && (\"length\" == m || f && (\"offset\" == m || \"parent\" == m) || p && (\"buffer\" == m || \"byteLength\" == m || \"byteOffset\" == m) || u(m, v)) || h.push(m);\n            return h\n        }\n    }, function(e, t, n) {\n        var r = n(631),\n            o = n(188),\n            i = n(189),\n            a = i && i.isTypedArray,\n            u = a ? o(a) : r;\n        e.exports = u\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return function(n) {\n                return e(t(n))\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(38);\n        e.exports = function(e) {\n            return e == e && !r(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return function(n) {\n                return null != n && n[e] === t && (void 0 !== t || e in Object(n))\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(642),\n            o = n(643);\n        e.exports = function(e, t) {\n            return null != e && o(e, t, r)\n        }\n    }, function(e, t, n) {\n        var r = n(649);\n        e.exports = function(e) {\n            var t = r(e),\n                n = t % 1;\n            return t == t ? n ? t - n : t : 0\n        }\n    }, function(e, t, n) {\n        var r = n(38),\n            o = n(128),\n            i = NaN,\n            a = /^\\s+|\\s+$/g,\n            u = /^[-+]0x[0-9a-f]+$/i,\n            s = /^0b[01]+$/i,\n            l = /^0o[0-7]+$/i,\n            c = parseInt;\n        e.exports = function(e) {\n            if (\"number\" == typeof e) return e;\n            if (o(e)) return i;\n            if (r(e)) {\n                var t = \"function\" == typeof e.valueOf ? e.valueOf() : e;\n                e = r(t) ? t + \"\" : t\n            }\n            if (\"string\" != typeof e) return 0 === e ? e : +e;\n            e = e.replace(a, \"\");\n            var n = s.test(e);\n            return n || l.test(e) ? c(e.slice(2), n ? 2 : 8) : u.test(e) ? i : +e\n        }\n    }, function(e, t, n) {\n        var r = n(652),\n            o = n(655)(r);\n        e.exports = o\n    }, function(e, t, n) {\n        var r = n(105),\n            o = n(78),\n            i = n(135),\n            a = n(38);\n        e.exports = function(e, t, n) {\n            if (!a(n)) return !1;\n            var u = typeof t;\n            return !!(\"number\" == u ? o(n) && i(t, n.length) : \"string\" == u && t in n) && r(n[t], e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t, r) {\n            var o = n(140);\n            e.exports = b;\n            var i, a = n(261);\n            b.ReadableState = y;\n            n(193).EventEmitter;\n            var u = function(e, t) {\n                    return e.listeners(t).length\n                },\n                s = n(306),\n                l = n(141).Buffer,\n                c = t.Uint8Array || function() {};\n            var f = n(106);\n            f.inherits = n(81);\n            var p = n(659),\n                d = void 0;\n            d = p && p.debuglog ? p.debuglog(\"stream\") : function() {};\n            var h, v = n(660),\n                m = n(307);\n            f.inherits(b, s);\n            var g = [\"error\", \"close\", \"destroy\", \"pause\", \"resume\"];\n\n            function y(e, t) {\n                i = i || n(65), e = e || {};\n                var r = t instanceof i;\n                this.objectMode = !!e.objectMode, r && (this.objectMode = this.objectMode || !!e.readableObjectMode);\n                var o = e.highWaterMark,\n                    a = e.readableHighWaterMark,\n                    u = this.objectMode ? 16 : 16384;\n                this.highWaterMark = o || 0 === o ? o : r && (a || 0 === a) ? a : u, this.highWaterMark = Math.floor(this.highWaterMark), this.buffer = new v, this.length = 0, this.pipes = null, this.pipesCount = 0, this.flowing = null, this.ended = !1, this.endEmitted = !1, this.reading = !1, this.sync = !0, this.needReadable = !1, this.emittedReadable = !1, this.readableListening = !1, this.resumeScheduled = !1, this.destroyed = !1, this.defaultEncoding = e.defaultEncoding || \"utf8\", this.awaitDrain = 0, this.readingMore = !1, this.decoder = null, this.encoding = null, e.encoding && (h || (h = n(309).StringDecoder), this.decoder = new h(e.encoding), this.encoding = e.encoding)\n            }\n\n            function b(e) {\n                if (i = i || n(65), !(this instanceof b)) return new b(e);\n                this._readableState = new y(e, this), this.readable = !0, e && (\"function\" == typeof e.read && (this._read = e.read), \"function\" == typeof e.destroy && (this._destroy = e.destroy)), s.call(this)\n            }\n\n            function _(e, t, n, r, o) {\n                var i, a = e._readableState;\n                null === t ? (a.reading = !1, function(e, t) {\n                    if (t.ended) return;\n                    if (t.decoder) {\n                        var n = t.decoder.end();\n                        n && n.length && (t.buffer.push(n), t.length += t.objectMode ? 1 : n.length)\n                    }\n                    t.ended = !0, S(e)\n                }(e, a)) : (o || (i = function(e, t) {\n                    var n;\n                    r = t, l.isBuffer(r) || r instanceof c || \"string\" == typeof t || void 0 === t || e.objectMode || (n = new TypeError(\"Invalid non-string/buffer chunk\"));\n                    var r;\n                    return n\n                }(a, t)), i ? e.emit(\"error\", i) : a.objectMode || t && t.length > 0 ? (\"string\" == typeof t || a.objectMode || Object.getPrototypeOf(t) === l.prototype || (t = function(e) {\n                    return l.from(e)\n                }(t)), r ? a.endEmitted ? e.emit(\"error\", new Error(\"stream.unshift() after end event\")) : w(e, a, t, !0) : a.ended ? e.emit(\"error\", new Error(\"stream.push() after EOF\")) : (a.reading = !1, a.decoder && !n ? (t = a.decoder.write(t), a.objectMode || 0 !== t.length ? w(e, a, t, !1) : k(e, a)) : w(e, a, t, !1))) : r || (a.reading = !1));\n                return function(e) {\n                    return !e.ended && (e.needReadable || e.length < e.highWaterMark || 0 === e.length)\n                }(a)\n            }\n\n            function w(e, t, n, r) {\n                t.flowing && 0 === t.length && !t.sync ? (e.emit(\"data\", n), e.read(0)) : (t.length += t.objectMode ? 1 : n.length, r ? t.buffer.unshift(n) : t.buffer.push(n), t.needReadable && S(e)), k(e, t)\n            }\n            Object.defineProperty(b.prototype, \"destroyed\", {\n                get: function() {\n                    return void 0 !== this._readableState && this._readableState.destroyed\n                },\n                set: function(e) {\n                    this._readableState && (this._readableState.destroyed = e)\n                }\n            }), b.prototype.destroy = m.destroy, b.prototype._undestroy = m.undestroy, b.prototype._destroy = function(e, t) {\n                this.push(null), t(e)\n            }, b.prototype.push = function(e, t) {\n                var n, r = this._readableState;\n                return r.objectMode ? n = !0 : \"string\" == typeof e && ((t = t || r.defaultEncoding) !== r.encoding && (e = l.from(e, t), t = \"\"), n = !0), _(this, e, t, !1, n)\n            }, b.prototype.unshift = function(e) {\n                return _(this, e, null, !0, !1)\n            }, b.prototype.isPaused = function() {\n                return !1 === this._readableState.flowing\n            }, b.prototype.setEncoding = function(e) {\n                return h || (h = n(309).StringDecoder), this._readableState.decoder = new h(e), this._readableState.encoding = e, this\n            };\n            var E = 8388608;\n\n            function x(e, t) {\n                return e <= 0 || 0 === t.length && t.ended ? 0 : t.objectMode ? 1 : e != e ? t.flowing && t.length ? t.buffer.head.data.length : t.length : (e > t.highWaterMark && (t.highWaterMark = function(e) {\n                    return e >= E ? e = E : (e--, e |= e >>> 1, e |= e >>> 2, e |= e >>> 4, e |= e >>> 8, e |= e >>> 16, e++), e\n                }(e)), e <= t.length ? e : t.ended ? t.length : (t.needReadable = !0, 0))\n            }\n\n            function S(e) {\n                var t = e._readableState;\n                t.needReadable = !1, t.emittedReadable || (d(\"emitReadable\", t.flowing), t.emittedReadable = !0, t.sync ? o.nextTick(C, e) : C(e))\n            }\n\n            function C(e) {\n                d(\"emit readable\"), e.emit(\"readable\"), T(e)\n            }\n\n            function k(e, t) {\n                t.readingMore || (t.readingMore = !0, o.nextTick(A, e, t))\n            }\n\n            function A(e, t) {\n                for (var n = t.length; !t.reading && !t.flowing && !t.ended && t.length < t.highWaterMark && (d(\"maybeReadMore read 0\"), e.read(0), n !== t.length);) n = t.length;\n                t.readingMore = !1\n            }\n\n            function O(e) {\n                d(\"readable nexttick read 0\"), e.read(0)\n            }\n\n            function P(e, t) {\n                t.reading || (d(\"resume read 0\"), e.read(0)), t.resumeScheduled = !1, t.awaitDrain = 0, e.emit(\"resume\"), T(e), t.flowing && !t.reading && e.read(0)\n            }\n\n            function T(e) {\n                var t = e._readableState;\n                for (d(\"flow\", t.flowing); t.flowing && null !== e.read(););\n            }\n\n            function M(e, t) {\n                return 0 === t.length ? null : (t.objectMode ? n = t.buffer.shift() : !e || e >= t.length ? (n = t.decoder ? t.buffer.join(\"\") : 1 === t.buffer.length ? t.buffer.head.data : t.buffer.concat(t.length), t.buffer.clear()) : n = function(e, t, n) {\n                    var r;\n                    e < t.head.data.length ? (r = t.head.data.slice(0, e), t.head.data = t.head.data.slice(e)) : r = e === t.head.data.length ? t.shift() : n ? function(e, t) {\n                        var n = t.head,\n                            r = 1,\n                            o = n.data;\n                        e -= o.length;\n                        for (; n = n.next;) {\n                            var i = n.data,\n                                a = e > i.length ? i.length : e;\n                            if (a === i.length ? o += i : o += i.slice(0, e), 0 === (e -= a)) {\n                                a === i.length ? (++r, n.next ? t.head = n.next : t.head = t.tail = null) : (t.head = n, n.data = i.slice(a));\n                                break\n                            }++r\n                        }\n                        return t.length -= r, o\n                    }(e, t) : function(e, t) {\n                        var n = l.allocUnsafe(e),\n                            r = t.head,\n                            o = 1;\n                        r.data.copy(n), e -= r.data.length;\n                        for (; r = r.next;) {\n                            var i = r.data,\n                                a = e > i.length ? i.length : e;\n                            if (i.copy(n, n.length - e, 0, a), 0 === (e -= a)) {\n                                a === i.length ? (++o, r.next ? t.head = r.next : t.head = t.tail = null) : (t.head = r, r.data = i.slice(a));\n                                break\n                            }++o\n                        }\n                        return t.length -= o, n\n                    }(e, t);\n                    return r\n                }(e, t.buffer, t.decoder), n);\n                var n\n            }\n\n            function I(e) {\n                var t = e._readableState;\n                if (t.length > 0) throw new Error('\"endReadable()\" called on non-empty stream');\n                t.endEmitted || (t.ended = !0, o.nextTick(j, t, e))\n            }\n\n            function j(e, t) {\n                e.endEmitted || 0 !== e.length || (e.endEmitted = !0, t.readable = !1, t.emit(\"end\"))\n            }\n\n            function N(e, t) {\n                for (var n = 0, r = e.length; n < r; n++)\n                    if (e[n] === t) return n;\n                return -1\n            }\n            b.prototype.read = function(e) {\n                d(\"read\", e), e = parseInt(e, 10);\n                var t = this._readableState,\n                    n = e;\n                if (0 !== e && (t.emittedReadable = !1), 0 === e && t.needReadable && (t.length >= t.highWaterMark || t.ended)) return d(\"read: emitReadable\", t.length, t.ended), 0 === t.length && t.ended ? I(this) : S(this), null;\n                if (0 === (e = x(e, t)) && t.ended) return 0 === t.length && I(this), null;\n                var r, o = t.needReadable;\n                return d(\"need readable\", o), (0 === t.length || t.length - e < t.highWaterMark) && d(\"length less than watermark\", o = !0), t.ended || t.reading ? d(\"reading or ended\", o = !1) : o && (d(\"do read\"), t.reading = !0, t.sync = !0, 0 === t.length && (t.needReadable = !0), this._read(t.highWaterMark), t.sync = !1, t.reading || (e = x(n, t))), null === (r = e > 0 ? M(e, t) : null) ? (t.needReadable = !0, e = 0) : t.length -= e, 0 === t.length && (t.ended || (t.needReadable = !0), n !== e && t.ended && I(this)), null !== r && this.emit(\"data\", r), r\n            }, b.prototype._read = function(e) {\n                this.emit(\"error\", new Error(\"_read() is not implemented\"))\n            }, b.prototype.pipe = function(e, t) {\n                var n = this,\n                    i = this._readableState;\n                switch (i.pipesCount) {\n                    case 0:\n                        i.pipes = e;\n                        break;\n                    case 1:\n                        i.pipes = [i.pipes, e];\n                        break;\n                    default:\n                        i.pipes.push(e)\n                }\n                i.pipesCount += 1, d(\"pipe count=%d opts=%j\", i.pipesCount, t);\n                var s = (!t || !1 !== t.end) && e !== r.stdout && e !== r.stderr ? c : b;\n\n                function l(t, r) {\n                    d(\"onunpipe\"), t === n && r && !1 === r.hasUnpiped && (r.hasUnpiped = !0, d(\"cleanup\"), e.removeListener(\"close\", g), e.removeListener(\"finish\", y), e.removeListener(\"drain\", f), e.removeListener(\"error\", m), e.removeListener(\"unpipe\", l), n.removeListener(\"end\", c), n.removeListener(\"end\", b), n.removeListener(\"data\", v), p = !0, !i.awaitDrain || e._writableState && !e._writableState.needDrain || f())\n                }\n\n                function c() {\n                    d(\"onend\"), e.end()\n                }\n                i.endEmitted ? o.nextTick(s) : n.once(\"end\", s), e.on(\"unpipe\", l);\n                var f = function(e) {\n                    return function() {\n                        var t = e._readableState;\n                        d(\"pipeOnDrain\", t.awaitDrain), t.awaitDrain && t.awaitDrain--, 0 === t.awaitDrain && u(e, \"data\") && (t.flowing = !0, T(e))\n                    }\n                }(n);\n                e.on(\"drain\", f);\n                var p = !1;\n                var h = !1;\n\n                function v(t) {\n                    d(\"ondata\"), h = !1, !1 !== e.write(t) || h || ((1 === i.pipesCount && i.pipes === e || i.pipesCount > 1 && -1 !== N(i.pipes, e)) && !p && (d(\"false write response, pause\", n._readableState.awaitDrain), n._readableState.awaitDrain++, h = !0), n.pause())\n                }\n\n                function m(t) {\n                    d(\"onerror\", t), b(), e.removeListener(\"error\", m), 0 === u(e, \"error\") && e.emit(\"error\", t)\n                }\n\n                function g() {\n                    e.removeListener(\"finish\", y), b()\n                }\n\n                function y() {\n                    d(\"onfinish\"), e.removeListener(\"close\", g), b()\n                }\n\n                function b() {\n                    d(\"unpipe\"), n.unpipe(e)\n                }\n                return n.on(\"data\", v),\n                    function(e, t, n) {\n                        if (\"function\" == typeof e.prependListener) return e.prependListener(t, n);\n                        e._events && e._events[t] ? a(e._events[t]) ? e._events[t].unshift(n) : e._events[t] = [n, e._events[t]] : e.on(t, n)\n                    }(e, \"error\", m), e.once(\"close\", g), e.once(\"finish\", y), e.emit(\"pipe\", n), i.flowing || (d(\"pipe resume\"), n.resume()), e\n            }, b.prototype.unpipe = function(e) {\n                var t = this._readableState,\n                    n = {\n                        hasUnpiped: !1\n                    };\n                if (0 === t.pipesCount) return this;\n                if (1 === t.pipesCount) return e && e !== t.pipes ? this : (e || (e = t.pipes), t.pipes = null, t.pipesCount = 0, t.flowing = !1, e && e.emit(\"unpipe\", this, n), this);\n                if (!e) {\n                    var r = t.pipes,\n                        o = t.pipesCount;\n                    t.pipes = null, t.pipesCount = 0, t.flowing = !1;\n                    for (var i = 0; i < o; i++) r[i].emit(\"unpipe\", this, n);\n                    return this\n                }\n                var a = N(t.pipes, e);\n                return -1 === a ? this : (t.pipes.splice(a, 1), t.pipesCount -= 1, 1 === t.pipesCount && (t.pipes = t.pipes[0]), e.emit(\"unpipe\", this, n), this)\n            }, b.prototype.on = function(e, t) {\n                var n = s.prototype.on.call(this, e, t);\n                if (\"data\" === e) !1 !== this._readableState.flowing && this.resume();\n                else if (\"readable\" === e) {\n                    var r = this._readableState;\n                    r.endEmitted || r.readableListening || (r.readableListening = r.needReadable = !0, r.emittedReadable = !1, r.reading ? r.length && S(this) : o.nextTick(O, this))\n                }\n                return n\n            }, b.prototype.addListener = b.prototype.on, b.prototype.resume = function() {\n                var e = this._readableState;\n                return e.flowing || (d(\"resume\"), e.flowing = !0, function(e, t) {\n                    t.resumeScheduled || (t.resumeScheduled = !0, o.nextTick(P, e, t))\n                }(this, e)), this\n            }, b.prototype.pause = function() {\n                return d(\"call pause flowing=%j\", this._readableState.flowing), !1 !== this._readableState.flowing && (d(\"pause\"), this._readableState.flowing = !1, this.emit(\"pause\")), this\n            }, b.prototype.wrap = function(e) {\n                var t = this,\n                    n = this._readableState,\n                    r = !1;\n                for (var o in e.on(\"end\", function() {\n                    if (d(\"wrapped end\"), n.decoder && !n.ended) {\n                        var e = n.decoder.end();\n                        e && e.length && t.push(e)\n                    }\n                    t.push(null)\n                }), e.on(\"data\", function(o) {\n                    (d(\"wrapped data\"), n.decoder && (o = n.decoder.write(o)), !n.objectMode || null !== o && void 0 !== o) && ((n.objectMode || o && o.length) && (t.push(o) || (r = !0, e.pause())))\n                }), e) void 0 === this[o] && \"function\" == typeof e[o] && (this[o] = function(t) {\n                    return function() {\n                        return e[t].apply(e, arguments)\n                    }\n                }(o));\n                for (var i = 0; i < g.length; i++) e.on(g[i], this.emit.bind(this, g[i]));\n                return this._read = function(t) {\n                    d(\"wrapped _read\", t), r && (r = !1, e.resume())\n                }, this\n            }, Object.defineProperty(b.prototype, \"readableHighWaterMark\", {\n                enumerable: !1,\n                get: function() {\n                    return this._readableState.highWaterMark\n                }\n            }), b._fromList = M\n        }).call(t, n(31), n(55))\n    }, function(e, t, n) {\n        e.exports = n(193).EventEmitter\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(140);\n\n        function o(e, t) {\n            e.emit(\"error\", t)\n        }\n        e.exports = {\n            destroy: function(e, t) {\n                var n = this,\n                    i = this._readableState && this._readableState.destroyed,\n                    a = this._writableState && this._writableState.destroyed;\n                return i || a ? (t ? t(e) : !e || this._writableState && this._writableState.errorEmitted || r.nextTick(o, this, e), this) : (this._readableState && (this._readableState.destroyed = !0), this._writableState && (this._writableState.destroyed = !0), this._destroy(e || null, function(e) {\n                    !t && e ? (r.nextTick(o, n, e), n._writableState && (n._writableState.errorEmitted = !0)) : t && t(e)\n                }), this)\n            },\n            undestroy: function() {\n                this._readableState && (this._readableState.destroyed = !1, this._readableState.reading = !1, this._readableState.ended = !1, this._readableState.endEmitted = !1), this._writableState && (this._writableState.destroyed = !1, this._writableState.ended = !1, this._writableState.ending = !1, this._writableState.finished = !1, this._writableState.errorEmitted = !1)\n            }\n        }\n    }, function(e, t, n) {\n        (function(e) {\n            var r = void 0 !== e && e || \"undefined\" != typeof self && self || window,\n                o = Function.prototype.apply;\n\n            function i(e, t) {\n                this._id = e, this._clearFn = t\n            }\n            t.setTimeout = function() {\n                return new i(o.call(setTimeout, r, arguments), clearTimeout)\n            }, t.setInterval = function() {\n                return new i(o.call(setInterval, r, arguments), clearInterval)\n            }, t.clearTimeout = t.clearInterval = function(e) {\n                e && e.close()\n            }, i.prototype.unref = i.prototype.ref = function() {}, i.prototype.close = function() {\n                this._clearFn.call(r, this._id)\n            }, t.enroll = function(e, t) {\n                clearTimeout(e._idleTimeoutId), e._idleTimeout = t\n            }, t.unenroll = function(e) {\n                clearTimeout(e._idleTimeoutId), e._idleTimeout = -1\n            }, t._unrefActive = t.active = function(e) {\n                clearTimeout(e._idleTimeoutId);\n                var t = e._idleTimeout;\n                t >= 0 && (e._idleTimeoutId = setTimeout(function() {\n                    e._onTimeout && e._onTimeout()\n                }, t))\n            }, n(662), t.setImmediate = \"undefined\" != typeof self && self.setImmediate || void 0 !== e && e.setImmediate || this && this.setImmediate, t.clearImmediate = \"undefined\" != typeof self && self.clearImmediate || void 0 !== e && e.clearImmediate || this && this.clearImmediate\n        }).call(t, n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(141).Buffer,\n            o = r.isEncoding || function(e) {\n                switch ((e = \"\" + e) && e.toLowerCase()) {\n                    case \"hex\":\n                    case \"utf8\":\n                    case \"utf-8\":\n                    case \"ascii\":\n                    case \"binary\":\n                    case \"base64\":\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                    case \"raw\":\n                        return !0;\n                    default:\n                        return !1\n                }\n            };\n\n        function i(e) {\n            var t;\n            switch (this.encoding = function(e) {\n                var t = function(e) {\n                    if (!e) return \"utf8\";\n                    for (var t;;) switch (e) {\n                        case \"utf8\":\n                        case \"utf-8\":\n                            return \"utf8\";\n                        case \"ucs2\":\n                        case \"ucs-2\":\n                        case \"utf16le\":\n                        case \"utf-16le\":\n                            return \"utf16le\";\n                        case \"latin1\":\n                        case \"binary\":\n                            return \"latin1\";\n                        case \"base64\":\n                        case \"ascii\":\n                        case \"hex\":\n                            return e;\n                        default:\n                            if (t) return;\n                            e = (\"\" + e).toLowerCase(), t = !0\n                    }\n                }(e);\n                if (\"string\" != typeof t && (r.isEncoding === o || !o(e))) throw new Error(\"Unknown encoding: \" + e);\n                return t || e\n            }(e), this.encoding) {\n                case \"utf16le\":\n                    this.text = s, this.end = l, t = 4;\n                    break;\n                case \"utf8\":\n                    this.fillLast = u, t = 4;\n                    break;\n                case \"base64\":\n                    this.text = c, this.end = f, t = 3;\n                    break;\n                default:\n                    return this.write = p, void(this.end = d)\n            }\n            this.lastNeed = 0, this.lastTotal = 0, this.lastChar = r.allocUnsafe(t)\n        }\n\n        function a(e) {\n            return e <= 127 ? 0 : e >> 5 == 6 ? 2 : e >> 4 == 14 ? 3 : e >> 3 == 30 ? 4 : e >> 6 == 2 ? -1 : -2\n        }\n\n        function u(e) {\n            var t = this.lastTotal - this.lastNeed,\n                n = function(e, t, n) {\n                    if (128 != (192 & t[0])) return e.lastNeed = 0, \"�\";\n                    if (e.lastNeed > 1 && t.length > 1) {\n                        if (128 != (192 & t[1])) return e.lastNeed = 1, \"�\";\n                        if (e.lastNeed > 2 && t.length > 2 && 128 != (192 & t[2])) return e.lastNeed = 2, \"�\"\n                    }\n                }(this, e);\n            return void 0 !== n ? n : this.lastNeed <= e.length ? (e.copy(this.lastChar, t, 0, this.lastNeed), this.lastChar.toString(this.encoding, 0, this.lastTotal)) : (e.copy(this.lastChar, t, 0, e.length), void(this.lastNeed -= e.length))\n        }\n\n        function s(e, t) {\n            if ((e.length - t) % 2 == 0) {\n                var n = e.toString(\"utf16le\", t);\n                if (n) {\n                    var r = n.charCodeAt(n.length - 1);\n                    if (r >= 55296 && r <= 56319) return this.lastNeed = 2, this.lastTotal = 4, this.lastChar[0] = e[e.length - 2], this.lastChar[1] = e[e.length - 1], n.slice(0, -1)\n                }\n                return n\n            }\n            return this.lastNeed = 1, this.lastTotal = 2, this.lastChar[0] = e[e.length - 1], e.toString(\"utf16le\", t, e.length - 1)\n        }\n\n        function l(e) {\n            var t = e && e.length ? this.write(e) : \"\";\n            if (this.lastNeed) {\n                var n = this.lastTotal - this.lastNeed;\n                return t + this.lastChar.toString(\"utf16le\", 0, n)\n            }\n            return t\n        }\n\n        function c(e, t) {\n            var n = (e.length - t) % 3;\n            return 0 === n ? e.toString(\"base64\", t) : (this.lastNeed = 3 - n, this.lastTotal = 3, 1 === n ? this.lastChar[0] = e[e.length - 1] : (this.lastChar[0] = e[e.length - 2], this.lastChar[1] = e[e.length - 1]), e.toString(\"base64\", t, e.length - n))\n        }\n\n        function f(e) {\n            var t = e && e.length ? this.write(e) : \"\";\n            return this.lastNeed ? t + this.lastChar.toString(\"base64\", 0, 3 - this.lastNeed) : t\n        }\n\n        function p(e) {\n            return e.toString(this.encoding)\n        }\n\n        function d(e) {\n            return e && e.length ? this.write(e) : \"\"\n        }\n        t.StringDecoder = i, i.prototype.write = function(e) {\n            if (0 === e.length) return \"\";\n            var t, n;\n            if (this.lastNeed) {\n                if (void 0 === (t = this.fillLast(e))) return \"\";\n                n = this.lastNeed, this.lastNeed = 0\n            } else n = 0;\n            return n < e.length ? t ? t + this.text(e, n) : this.text(e, n) : t || \"\"\n        }, i.prototype.end = function(e) {\n            var t = e && e.length ? this.write(e) : \"\";\n            return this.lastNeed ? t + \"�\" : t\n        }, i.prototype.text = function(e, t) {\n            var n = function(e, t, n) {\n                var r = t.length - 1;\n                if (r < n) return 0;\n                var o = a(t[r]);\n                if (o >= 0) return o > 0 && (e.lastNeed = o - 1), o;\n                if (--r < n || -2 === o) return 0;\n                if ((o = a(t[r])) >= 0) return o > 0 && (e.lastNeed = o - 2), o;\n                if (--r < n || -2 === o) return 0;\n                if ((o = a(t[r])) >= 0) return o > 0 && (2 === o ? o = 0 : e.lastNeed = o - 3), o;\n                return 0\n            }(this, e, t);\n            if (!this.lastNeed) return e.toString(\"utf8\", t);\n            this.lastTotal = n;\n            var r = e.length - (n - this.lastNeed);\n            return e.copy(this.lastChar, 0, r), e.toString(\"utf8\", t, r)\n        }, i.prototype.fillLast = function(e) {\n            if (this.lastNeed <= e.length) return e.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed), this.lastChar.toString(this.encoding, 0, this.lastTotal);\n            e.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, e.length), this.lastNeed -= e.length\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = i;\n        var r = n(65),\n            o = n(106);\n\n        function i(e) {\n            if (!(this instanceof i)) return new i(e);\n            r.call(this, e), this._transformState = {\n                afterTransform: function(e, t) {\n                    var n = this._transformState;\n                    n.transforming = !1;\n                    var r = n.writecb;\n                    if (!r) return this.emit(\"error\", new Error(\"write callback called multiple times\"));\n                    n.writechunk = null, n.writecb = null, null != t && this.push(t), r(e);\n                    var o = this._readableState;\n                    o.reading = !1, (o.needReadable || o.length < o.highWaterMark) && this._read(o.highWaterMark)\n                }.bind(this),\n                needTransform: !1,\n                transforming: !1,\n                writecb: null,\n                writechunk: null,\n                writeencoding: null\n            }, this._readableState.needReadable = !0, this._readableState.sync = !1, e && (\"function\" == typeof e.transform && (this._transform = e.transform), \"function\" == typeof e.flush && (this._flush = e.flush)), this.on(\"prefinish\", a)\n        }\n\n        function a() {\n            var e = this;\n            \"function\" == typeof this._flush ? this._flush(function(t, n) {\n                u(e, t, n)\n            }) : u(this, null, null)\n        }\n\n        function u(e, t, n) {\n            if (t) return e.emit(\"error\", t);\n            if (null != n && e.push(n), e._writableState.length) throw new Error(\"Calling transform done when ws.length != 0\");\n            if (e._transformState.transforming) throw new Error(\"Calling transform done when still transforming\");\n            return e.push(null)\n        }\n        o.inherits = n(81), o.inherits(i, r), i.prototype.push = function(e, t) {\n            return this._transformState.needTransform = !1, r.prototype.push.call(this, e, t)\n        }, i.prototype._transform = function(e, t, n) {\n            throw new Error(\"_transform() is not implemented\")\n        }, i.prototype._write = function(e, t, n) {\n            var r = this._transformState;\n            if (r.writecb = n, r.writechunk = e, r.writeencoding = t, !r.transforming) {\n                var o = this._readableState;\n                (r.needTransform || o.needReadable || o.length < o.highWaterMark) && this._read(o.highWaterMark)\n            }\n        }, i.prototype._read = function(e) {\n            var t = this._transformState;\n            null !== t.writechunk && t.writecb && !t.transforming ? (t.transforming = !0, this._transform(t.writechunk, t.writeencoding, t.afterTransform)) : t.needTransform = !0\n        }, i.prototype._destroy = function(e, t) {\n            var n = this;\n            r.prototype._destroy.call(this, e, function(e) {\n                t(e), n.emit(\"close\")\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(66),\n            o = Array.prototype.forEach,\n            i = Object.create;\n        e.exports = function(e) {\n            var t = i(null);\n            return o.call(arguments, function(e) {\n                r(e) && function(e, t) {\n                    var n;\n                    for (n in e) t[n] = e[n]\n                }(Object(e), t)\n            }), t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function() {}\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(67);\n        e.exports = function(e, t, n) {\n            var o;\n            return isNaN(e) ? (o = t) >= 0 ? n && o ? o - 1 : o : 1 : !1 !== e && r(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(678)() ? Object.assign : n(679)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i, a, u, s = n(67),\n            l = function(e, t) {\n                return t\n            };\n        try {\n            Object.defineProperty(l, \"length\", {\n                configurable: !0,\n                writable: !1,\n                enumerable: !1,\n                value: 1\n            })\n        } catch (e) {}\n        1 === l.length ? (r = {\n            configurable: !0,\n            writable: !1,\n            enumerable: !1\n        }, o = Object.defineProperty, e.exports = function(e, t) {\n            return t = s(t), e.length === t ? e : (r.value = t, o(e, \"length\", r))\n        }) : (a = n(316), u = [], i = function(e) {\n            var t, n = 0;\n            if (u[e]) return u[e];\n            for (t = []; e--;) t.push(\"a\" + (++n).toString(36));\n            return new Function(\"fn\", \"return function (\" + t.join(\", \") + \") { return fn.apply(this, arguments); };\")\n        }, e.exports = function(e, t) {\n            var n;\n            if (t = s(t), e.length === t) return e;\n            n = i(t)(e);\n            try {\n                a(n, e)\n            } catch (e) {}\n            return n\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(82),\n            o = Object.defineProperty,\n            i = Object.getOwnPropertyDescriptor,\n            a = Object.getOwnPropertyNames,\n            u = Object.getOwnPropertySymbols;\n        e.exports = function(e, t) {\n            var n, s = Object(r(t));\n            if (e = Object(r(e)), a(s).forEach(function(r) {\n                try {\n                    o(e, r, i(t, r))\n                } catch (e) {\n                    n = e\n                }\n            }), \"function\" == typeof u && u(s).forEach(function(r) {\n                try {\n                    o(e, r, i(t, r))\n                } catch (e) {\n                    n = e\n                }\n            }), void 0 !== n) throw n;\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(56),\n            o = n(142),\n            i = Function.prototype.call;\n        e.exports = function(e, t) {\n            var n = {},\n                a = arguments[2];\n            return r(t), o(e, function(e, r, o, u) {\n                n[r] = i.call(t, a, e, r, o, u)\n            }), n\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return !!e && (\"object\" == typeof e || \"function\" == typeof e) && \"function\" == typeof e.then\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e) {\n            return {\n                statePlugins: {\n                    err: {\n                        reducers: (0, i.default)(e),\n                        actions: a,\n                        selectors: u\n                    }\n                }\n            }\n        };\n        var r, o = n(320),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = s(n(127)),\n            u = s(n(325));\n\n        function s(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = s(n(22)),\n            o = s(n(23));\n        t.default = function(e) {\n            var t;\n            return t = {}, (0, r.default)(t, i.NEW_THROWN_ERR, function(t, n) {\n                var r = n.payload,\n                    i = (0, o.default)(l, r, {\n                        type: \"thrown\"\n                    });\n                return t.update(\"errors\", function(e) {\n                    return (e || (0, a.List)()).push((0, a.fromJS)(i))\n                }).update(\"errors\", function(t) {\n                    return (0, u.default)(t, e.getSystem())\n                })\n            }), (0, r.default)(t, i.NEW_THROWN_ERR_BATCH, function(t, n) {\n                var r = n.payload;\n                return r = r.map(function(e) {\n                    return (0, a.fromJS)((0, o.default)(l, e, {\n                        type: \"thrown\"\n                    }))\n                }), t.update(\"errors\", function(e) {\n                    return (e || (0, a.List)()).concat((0, a.fromJS)(r))\n                }).update(\"errors\", function(t) {\n                    return (0, u.default)(t, e.getSystem())\n                })\n            }), (0, r.default)(t, i.NEW_SPEC_ERR, function(t, n) {\n                var r = n.payload,\n                    o = (0, a.fromJS)(r);\n                return o = o.set(\"type\", \"spec\"), t.update(\"errors\", function(e) {\n                    return (e || (0, a.List)()).push((0, a.fromJS)(o)).sortBy(function(e) {\n                        return e.get(\"line\")\n                    })\n                }).update(\"errors\", function(t) {\n                    return (0, u.default)(t, e.getSystem())\n                })\n            }), (0, r.default)(t, i.NEW_SPEC_ERR_BATCH, function(t, n) {\n                var r = n.payload;\n                return r = r.map(function(e) {\n                    return (0, a.fromJS)((0, o.default)(l, e, {\n                        type: \"spec\"\n                    }))\n                }), t.update(\"errors\", function(e) {\n                    return (e || (0, a.List)()).concat((0, a.fromJS)(r))\n                }).update(\"errors\", function(t) {\n                    return (0, u.default)(t, e.getSystem())\n                })\n            }), (0, r.default)(t, i.NEW_AUTH_ERR, function(t, n) {\n                var r = n.payload,\n                    i = (0, a.fromJS)((0, o.default)({}, r));\n                return i = i.set(\"type\", \"auth\"), t.update(\"errors\", function(e) {\n                    return (e || (0, a.List)()).push((0, a.fromJS)(i))\n                }).update(\"errors\", function(t) {\n                    return (0, u.default)(t, e.getSystem())\n                })\n            }), (0, r.default)(t, i.CLEAR, function(e, t) {\n                var n = t.payload;\n                if (!n || !e.get(\"errors\")) return e;\n                var r = e.get(\"errors\").filter(function(e) {\n                    return e.keySeq().every(function(t) {\n                        var r = e.get(t),\n                            o = n[t];\n                        return !o || r !== o\n                    })\n                });\n                return e.merge({\n                    errors: r\n                })\n            }), (0, r.default)(t, i.CLEAR_BY, function(e, t) {\n                var n = t.payload;\n                if (!n || \"function\" != typeof n) return e;\n                var r = e.get(\"errors\").filter(function(e) {\n                    return n(e)\n                });\n                return e.merge({\n                    errors: r\n                })\n            }), t\n        };\n        var i = n(127),\n            a = n(7),\n            u = s(n(321));\n\n        function s(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var l = {\n            line: 0,\n            level: \"error\",\n            message: \"Unknown error\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e, t) {\n            var n = {\n                jsSpec: t.specSelectors.specJson().toJS()\n            };\n            return (0, i.default)(u, function(e, t) {\n                try {\n                    var r = t.transform(e, n);\n                    return r.filter(function(e) {\n                        return !!e\n                    })\n                } catch (t) {\n                    return console.error(\"Transformer error:\", t), e\n                }\n            }, e).filter(function(e) {\n                return !!e\n            }).map(function(e) {\n                return !e.get(\"line\") && e.get(\"path\"), e\n            })\n        };\n        var r, o = n(726),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n\n        function a(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n        var u = [a(n(322)), a(n(323)), a(n(324))]\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.transform = function(e) {\n            return e.map(function(e) {\n                var t = e.get(\"message\").indexOf(\"is not of a type(s)\");\n                if (t > -1) {\n                    var n = e.get(\"message\").slice(t + \"is not of a type(s)\".length).split(\",\");\n                    return e.set(\"message\", e.get(\"message\").slice(0, t) + function(e) {\n                        return e.reduce(function(e, t, n, r) {\n                            return n === r.length - 1 && r.length > 1 ? e + \"or \" + t : r[n + 1] && r.length > 2 ? e + t + \", \" : r[n + 1] ? e + t + \" \" : e + t\n                        }, \"should be a\")\n                    }(n))\n                }\n                return e\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.transform = function(e, t) {\n            t.jsSpec;\n            return e\n        };\n        var r, o = n(138);\n        (r = o) && r.__esModule, n(7)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.transform = function(e) {\n            return e.map(function(e) {\n                return e.set(\"message\", (t = e.get(\"message\"), n = \"instance.\", t.replace(new RegExp(n, \"g\"), \"\")));\n                var t, n\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.lastError = t.allErrors = void 0;\n        var r = n(7),\n            o = n(57),\n            i = t.allErrors = (0, o.createSelector)(function(e) {\n                return e\n            }, function(e) {\n                return e.get(\"errors\", (0, r.List)())\n            });\n        t.lastError = (0, o.createSelector)(i, function(e) {\n            return e.last()\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                statePlugins: {\n                    layout: {\n                        reducers: i.default,\n                        actions: a,\n                        selectors: u\n                    }\n                }\n            }\n        };\n        var r, o = n(327),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = s(n(200)),\n            u = s(n(328));\n\n        function s(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o, i = n(22),\n            a = (r = i) && r.__esModule ? r : {\n                default: r\n            },\n            u = n(7),\n            s = n(200);\n        t.default = (o = {}, (0, a.default)(o, s.UPDATE_LAYOUT, function(e, t) {\n            return e.set(\"layout\", t.payload)\n        }), (0, a.default)(o, s.UPDATE_FILTER, function(e, t) {\n            return e.set(\"filter\", t.payload)\n        }), (0, a.default)(o, s.SHOW, function(e, t) {\n            var n = t.payload.shown,\n                r = (0, u.fromJS)(t.payload.thing);\n            return e.update(\"shown\", (0, u.fromJS)({}), function(e) {\n                return e.set(r, n)\n            })\n        }), (0, a.default)(o, s.UPDATE_MODE, function(e, t) {\n            var n = t.payload.thing,\n                r = t.payload.mode;\n            return e.setIn([\"modes\"].concat(n), (r || \"\") + \"\")\n        }), o)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.showSummary = t.whatMode = t.isShown = t.currentFilter = t.current = void 0;\n        var r, o = n(83),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = n(57),\n            u = n(10),\n            s = n(7);\n        t.current = function(e) {\n            return e.get(\"layout\")\n        }, t.currentFilter = function(e) {\n            return e.get(\"filter\")\n        };\n        var l = t.isShown = function(e, t, n) {\n            return t = (0, u.normalizeArray)(t), e.get(\"shown\", (0, s.fromJS)({})).get((0, s.fromJS)(t), n)\n        };\n        t.whatMode = function(e, t) {\n            var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : \"\";\n            return t = (0, u.normalizeArray)(t), e.getIn([\"modes\"].concat((0, i.default)(t)), n)\n        }, t.showSummary = (0, a.createSelector)(function(e) {\n            return e\n        }, function(e) {\n            return !l(e, \"editor\")\n        })\n    }, function(e, t, n) {\n        var r = n(36);\n        e.exports = function(e, t, n, o) {\n            try {\n                return o ? t(r(n)[0], n[1]) : t(n)\n            } catch (t) {\n                var i = e.return;\n                throw void 0 !== i && r(i.call(e)), t\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(70),\n            o = n(19)(\"iterator\"),\n            i = Array.prototype;\n        e.exports = function(e) {\n            return void 0 !== e && (r.Array === e || i[o] === e)\n        }\n    }, function(e, t, n) {\n        var r = n(19)(\"iterator\"),\n            o = !1;\n        try {\n            var i = [7][r]();\n            i.return = function() {\n                o = !0\n            }, Array.from(i, function() {\n                throw 2\n            })\n        } catch (e) {}\n        e.exports = function(e, t) {\n            if (!t && !o) return !1;\n            var n = !1;\n            try {\n                var i = [7],\n                    a = i[r]();\n                a.next = function() {\n                    return {\n                        done: n = !0\n                    }\n                }, i[r] = function() {\n                    return a\n                }, e(i)\n            } catch (e) {}\n            return n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                statePlugins: {\n                    spec: {\n                        wrapActions: s,\n                        reducers: i.default,\n                        actions: a,\n                        selectors: u\n                    }\n                }\n            }\n        };\n        var r, o = n(333),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = l(n(202)),\n            u = l(n(201)),\n            s = l(n(346));\n\n        function l(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o = p(n(22)),\n            i = p(n(23)),\n            a = p(n(83)),\n            u = n(7),\n            s = n(10),\n            l = p(n(32)),\n            c = n(201),\n            f = n(202);\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = (r = {}, (0, o.default)(r, f.UPDATE_SPEC, function(e, t) {\n            return \"string\" == typeof t.payload ? e.set(\"spec\", t.payload) : e\n        }), (0, o.default)(r, f.UPDATE_URL, function(e, t) {\n            return e.set(\"url\", t.payload + \"\")\n        }), (0, o.default)(r, f.UPDATE_JSON, function(e, t) {\n            return e.set(\"json\", (0, s.fromJSOrdered)(t.payload))\n        }), (0, o.default)(r, f.UPDATE_RESOLVED, function(e, t) {\n            return e.setIn([\"resolved\"], (0, s.fromJSOrdered)(t.payload))\n        }), (0, o.default)(r, f.UPDATE_RESOLVED_SUBTREE, function(e, t) {\n            var n = t.payload,\n                r = n.value,\n                o = n.path;\n            return e.setIn([\"resolvedSubtrees\"].concat((0, a.default)(o)), (0, s.fromJSOrdered)(r))\n        }), (0, o.default)(r, f.UPDATE_PARAM, function(e, t) {\n            var n = t.payload,\n                r = n.path,\n                o = n.paramName,\n                i = n.paramIn,\n                u = n.param,\n                s = n.value,\n                l = n.isXml,\n                c = void 0;\n            c = u && u.hashCode && !i && !o ? u.get(\"name\") + \".\" + u.get(\"in\") + \".hash-\" + u.hashCode() : o + \".\" + i;\n            var f = l ? \"value_xml\" : \"value\";\n            return e.setIn([\"meta\", \"paths\"].concat((0, a.default)(r), [\"parameters\", c, f]), s)\n        }), (0, o.default)(r, f.UPDATE_EMPTY_PARAM_INCLUSION, function(e, t) {\n            var n = t.payload,\n                r = n.pathMethod,\n                o = n.paramName,\n                i = n.paramIn,\n                u = n.includeEmptyValue;\n            if (!o || !i) return console.warn(\"Warning: UPDATE_EMPTY_PARAM_INCLUSION could not generate a paramKey.\"), e;\n            var s = o + \".\" + i;\n            return e.setIn([\"meta\", \"paths\"].concat((0, a.default)(r), [\"parameter_inclusions\", s]), u)\n        }), (0, o.default)(r, f.VALIDATE_PARAMS, function(e, t) {\n            var n = t.payload,\n                r = n.pathMethod,\n                o = n.isOAS3,\n                i = e.getIn([\"meta\", \"paths\"].concat((0, a.default)(r)), (0, u.fromJS)({})),\n                l = /xml/i.test(i.get(\"consumes_value\")),\n                f = c.operationWithMeta.apply(void 0, [e].concat((0, a.default)(r)));\n            return e.updateIn([\"meta\", \"paths\"].concat((0, a.default)(r), [\"parameters\"]), (0, u.fromJS)({}), function(e) {\n                return f.get(\"parameters\", (0, u.List)()).reduce(function(e, t) {\n                    var n = (0, s.validateParam)(t, l, o);\n                    return e.setIn([t.get(\"name\") + \".\" + t.get(\"in\"), \"errors\"], (0, u.fromJS)(n))\n                }, e)\n            })\n        }), (0, o.default)(r, f.CLEAR_VALIDATE_PARAMS, function(e, t) {\n            var n = t.payload.pathMethod;\n            return e.updateIn([\"meta\", \"paths\"].concat((0, a.default)(n), [\"parameters\"]), (0, u.fromJS)([]), function(e) {\n                return e.map(function(e) {\n                    return e.set(\"errors\", (0, u.fromJS)([]))\n                })\n            })\n        }), (0, o.default)(r, f.SET_RESPONSE, function(e, t) {\n            var n = t.payload,\n                r = n.res,\n                o = n.path,\n                a = n.method,\n                u = void 0;\n            (u = r.error ? (0, i.default)({\n                error: !0,\n                name: r.err.name,\n                message: r.err.message,\n                statusCode: r.err.statusCode\n            }, r.err.response) : r).headers = u.headers || {};\n            var c = e.setIn([\"responses\", o, a], (0, s.fromJSOrdered)(u));\n            return l.default.Blob && r.data instanceof l.default.Blob && (c = c.setIn([\"responses\", o, a, \"text\"], r.data)), c\n        }), (0, o.default)(r, f.SET_REQUEST, function(e, t) {\n            var n = t.payload,\n                r = n.req,\n                o = n.path,\n                i = n.method;\n            return e.setIn([\"requests\", o, i], (0, s.fromJSOrdered)(r))\n        }), (0, o.default)(r, f.SET_MUTATED_REQUEST, function(e, t) {\n            var n = t.payload,\n                r = n.req,\n                o = n.path,\n                i = n.method;\n            return e.setIn([\"mutatedRequests\", o, i], (0, s.fromJSOrdered)(r))\n        }), (0, o.default)(r, f.UPDATE_OPERATION_META_VALUE, function(e, t) {\n            var n = t.payload,\n                r = n.path,\n                o = n.value,\n                i = n.key,\n                s = [\"paths\"].concat((0, a.default)(r)),\n                l = [\"meta\", \"paths\"].concat((0, a.default)(r));\n            return e.getIn([\"json\"].concat((0, a.default)(s))) || e.getIn([\"resolved\"].concat((0, a.default)(s))) || e.getIn([\"resolvedSubtrees\"].concat((0, a.default)(s))) ? e.setIn([].concat((0, a.default)(l), [i]), (0, u.fromJS)(o)) : e\n        }), (0, o.default)(r, f.CLEAR_RESPONSE, function(e, t) {\n            var n = t.payload,\n                r = n.path,\n                o = n.method;\n            return e.deleteIn([\"responses\", r, o])\n        }), (0, o.default)(r, f.CLEAR_REQUEST, function(e, t) {\n            var n = t.payload,\n                r = n.path,\n                o = n.method;\n            return e.deleteIn([\"requests\", r, o])\n        }), (0, o.default)(r, f.SET_SCHEME, function(e, t) {\n            var n = t.payload,\n                r = n.scheme,\n                o = n.path,\n                i = n.method;\n            return o && i ? e.setIn([\"scheme\", o, i], r) : o || i ? void 0 : e.setIn([\"scheme\", \"_defaultScheme\"], r)\n        }), r)\n    }, function(e, t, n) {\n        var r = n(36),\n            o = n(94),\n            i = n(19)(\"species\");\n        e.exports = function(e, t) {\n            var n, a = r(e).constructor;\n            return void 0 === a || void 0 == (n = r(a)[i]) ? t : o(n)\n        }\n    }, function(e, t, n) {\n        var r, o, i, a = n(49),\n            u = n(734),\n            s = n(240),\n            l = n(156),\n            c = n(21),\n            f = c.process,\n            p = c.setImmediate,\n            d = c.clearImmediate,\n            h = c.MessageChannel,\n            v = c.Dispatch,\n            m = 0,\n            g = {},\n            y = function() {\n                var e = +this;\n                if (g.hasOwnProperty(e)) {\n                    var t = g[e];\n                    delete g[e], t()\n                }\n            },\n            b = function(e) {\n                y.call(e.data)\n            };\n        p && d || (p = function(e) {\n            for (var t = [], n = 1; arguments.length > n;) t.push(arguments[n++]);\n            return g[++m] = function() {\n                u(\"function\" == typeof e ? e : Function(e), t)\n            }, r(m), m\n        }, d = function(e) {\n            delete g[e]\n        }, \"process\" == n(93)(f) ? r = function(e) {\n            f.nextTick(a(y, e, 1))\n        } : v && v.now ? r = function(e) {\n            v.now(a(y, e, 1))\n        } : h ? (i = (o = new h).port2, o.port1.onmessage = b, r = a(i.postMessage, i, 1)) : c.addEventListener && \"function\" == typeof postMessage && !c.importScripts ? (r = function(e) {\n            c.postMessage(e + \"\", \"*\")\n        }, c.addEventListener(\"message\", b, !1)) : r = \"onreadystatechange\" in l(\"script\") ? function(e) {\n            s.appendChild(l(\"script\")).onreadystatechange = function() {\n                s.removeChild(this), y.call(e)\n            }\n        } : function(e) {\n            setTimeout(a(y, e, 1), 0)\n        }), e.exports = {\n            set: p,\n            clear: d\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            try {\n                return {\n                    e: !1,\n                    v: e()\n                }\n            } catch (e) {\n                return {\n                    e: !0,\n                    v: e\n                }\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(36),\n            o = n(28),\n            i = n(205);\n        e.exports = function(e, t) {\n            if (r(e), o(t) && t.constructor === e) return t;\n            var n = i.f(e);\n            return (0, n.resolve)(t), n.promise\n        }\n    }, function(e, t, n) {\n        e.exports = n(739)\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(203),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = function(e) {\n            return function() {\n                var t = e.apply(this, arguments);\n                return new i.default(function(e, n) {\n                    return function r(o, a) {\n                        try {\n                            var u = t[o](a),\n                                s = u.value\n                        } catch (e) {\n                            return void n(e)\n                        }\n                        if (!u.done) return i.default.resolve(s).then(function(e) {\n                            r(\"next\", e)\n                        }, function(e) {\n                            r(\"throw\", e)\n                        });\n                        e(s)\n                    }(\"next\")\n                })\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(86);\n        e.exports = new r({\n            include: [n(341)]\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(86);\n        e.exports = new r({\n            include: [n(208)],\n            implicit: [n(747), n(748), n(749), n(750)]\n        })\n    }, function(e, t, n) {\n        var r = n(62),\n            o = n(24),\n            i = n(47),\n            a = \"[object String]\";\n        e.exports = function(e) {\n            return \"string\" == typeof e || !o(e) && i(e) && r(e) == a\n        }\n    }, function(e, t, n) {\n        var r = n(146),\n            o = n(79),\n            i = n(135),\n            a = n(38),\n            u = n(80);\n        e.exports = function(e, t, n, s) {\n            if (!a(e)) return e;\n            for (var l = -1, c = (t = o(t, e)).length, f = c - 1, p = e; null != p && ++l < c;) {\n                var d = u(t[l]),\n                    h = n;\n                if (l != f) {\n                    var v = p[d];\n                    void 0 === (h = s ? s(v, d, p) : void 0) && (h = a(v) ? v : i(t[l + 1]) ? [] : {})\n                }\n                r(p, d, h), p = p[d]\n            }\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(345);\n        e.exports = function(e, t, n) {\n            \"__proto__\" == t && r ? r(e, t, {\n                configurable: !0,\n                enumerable: !0,\n                value: n,\n                writable: !0\n            }) : e[t] = n\n        }\n    }, function(e, t, n) {\n        var r = n(63),\n            o = function() {\n                try {\n                    var e = r(Object, \"defineProperty\");\n                    return e({}, \"\", {}), e\n                } catch (e) {}\n            }();\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.validateParams = t.executeRequest = t.updateJsonSpec = t.updateSpec = void 0;\n        var r = i(n(42)),\n            o = i(n(138));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.updateSpec = function(e, t) {\n            var n = t.specActions;\n            return function() {\n                e.apply(void 0, arguments), n.parseToJson.apply(n, arguments)\n            }\n        }, t.updateJsonSpec = function(e, t) {\n            var n = t.specActions;\n            return function() {\n                for (var t = arguments.length, i = Array(t), a = 0; a < t; a++) i[a] = arguments[a];\n                e.apply(void 0, i), n.invalidateResolvedSubtreeCache();\n                var u = i[0],\n                    s = (0, o.default)(u, [\"paths\"]) || {};\n                (0, r.default)(s).forEach(function(e) {\n                    (0, o.default)(s, [e]).$ref && n.requestResolvedSubtree([\"paths\", e])\n                })\n            }\n        }, t.executeRequest = function(e, t) {\n            var n = t.specActions;\n            return function(t) {\n                return n.logRequest(t), e(t)\n            }\n        }, t.validateParams = function(e, t) {\n            var n = t.specSelectors;\n            return function(t) {\n                return e(t, n.isOAS3())\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e) {\n            var t = e.getComponents,\n                n = e.getStore,\n                i = e.getSystem,\n                a = r.getComponent,\n                u = r.render,\n                s = r.makeMappedContainer,\n                l = (0, o.memoize)(a.bind(null, i, n, t));\n            return {\n                rootInjects: {\n                    getComponent: l,\n                    makeMappedContainer: (0, o.memoize)(s.bind(null, i, n, l, t)),\n                    render: u.bind(null, i, n, a, t)\n                }\n            }\n        };\n        var r = function(e) {\n                if (e && e.__esModule) return e;\n                var t = {};\n                if (null != e)\n                    for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n                return t.default = e, t\n            }(n(348)),\n            o = n(10)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.getComponent = t.render = t.makeMappedContainer = void 0;\n        var r = g(n(45)),\n            o = g(n(42)),\n            i = g(n(23)),\n            a = g(n(25)),\n            u = g(n(4)),\n            s = g(n(2)),\n            l = g(n(3)),\n            c = g(n(5)),\n            f = g(n(6)),\n            p = n(0),\n            d = g(p),\n            h = g(n(774)),\n            v = n(851),\n            m = g(n(859));\n\n        function g(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var y = function(e, t, n) {\n                var r = function(e, t) {\n                        return function(n) {\n                            function r() {\n                                return (0, s.default)(this, r), (0, c.default)(this, (r.__proto__ || (0, u.default)(r)).apply(this, arguments))\n                            }\n                            return (0, f.default)(r, n), (0, l.default)(r, [{\n                                key: \"render\",\n                                value: function() {\n                                    return d.default.createElement(t, (0, a.default)({}, e(), this.props, this.context))\n                                }\n                            }]), r\n                        }(p.Component)\n                    }(e, t),\n                    o = (0, v.connect)(function(n, r) {\n                        var o = (0, i.default)({}, r, e());\n                        return (t.prototype.mapStateToProps || function(e) {\n                            return {\n                                state: e\n                            }\n                        })(n, o)\n                    })(r);\n                return n ? function(e, t) {\n                    return function(n) {\n                        function r() {\n                            return (0, s.default)(this, r), (0, c.default)(this, (r.__proto__ || (0, u.default)(r)).apply(this, arguments))\n                        }\n                        return (0, f.default)(r, n), (0, l.default)(r, [{\n                            key: \"render\",\n                            value: function() {\n                                return d.default.createElement(v.Provider, {\n                                    store: e\n                                }, d.default.createElement(t, (0, a.default)({}, this.props, this.context)))\n                            }\n                        }]), r\n                    }(p.Component)\n                }(n, o) : o\n            },\n            b = function(e, t, n, r) {\n                for (var o in t) {\n                    var i = t[o];\n                    \"function\" == typeof i && i(n[o], r[o], e())\n                }\n            },\n            _ = (t.makeMappedContainer = function(e, t, n, r, i, a) {\n                return function(t) {\n                    function r(t, n) {\n                        (0, s.default)(this, r);\n                        var o = (0, c.default)(this, (r.__proto__ || (0, u.default)(r)).call(this, t, n));\n                        return b(e, a, t, {}), o\n                    }\n                    return (0, f.default)(r, t), (0, l.default)(r, [{\n                        key: \"componentWillReceiveProps\",\n                        value: function(t) {\n                            b(e, a, t, this.props)\n                        }\n                    }, {\n                        key: \"render\",\n                        value: function() {\n                            var e = (0, m.default)(this.props, a ? (0, o.default)(a) : []),\n                                t = n(i, \"root\");\n                            return d.default.createElement(t, e)\n                        }\n                    }]), r\n                }(p.Component)\n            }, t.render = function(e, t, n, r, o) {\n                var i = n(e, t, r, \"App\", \"root\");\n                h.default.render(d.default.createElement(i, null), o)\n            }, function(e) {\n                var t = e.name;\n                return d.default.createElement(\"div\", {\n                    style: {\n                        padding: \"1em\",\n                        color: \"#aaa\"\n                    }\n                }, \"😱 \", d.default.createElement(\"i\", null, \"Could not render \", \"t\" === t ? \"this component\" : t, \", see the console.\"))\n            }),\n            w = function(e) {\n                var t = function(e) {\n                        return !(e.prototype && e.prototype.isReactComponent)\n                    }(e) ? function(e) {\n                        return function(t) {\n                            function n() {\n                                return (0, s.default)(this, n), (0, c.default)(this, (n.__proto__ || (0, u.default)(n)).apply(this, arguments))\n                            }\n                            return (0, f.default)(n, t), (0, l.default)(n, [{\n                                key: \"render\",\n                                value: function() {\n                                    return e(this.props)\n                                }\n                            }]), n\n                        }(p.Component)\n                    }(e) : e,\n                    n = t.prototype.render;\n                return t.prototype.render = function() {\n                    try {\n                        for (var e = arguments.length, r = Array(e), o = 0; o < e; o++) r[o] = arguments[o];\n                        return n.apply(this, r)\n                    } catch (e) {\n                        return console.error(e), d.default.createElement(_, {\n                            error: e,\n                            name: t.name\n                        })\n                    }\n                }, t\n            };\n        t.getComponent = function(e, t, n, o, i) {\n            if (\"string\" != typeof o) throw new TypeError(\"Need a string, to fetch a component. Was given a \" + (void 0 === o ? \"undefined\" : (0, r.default)(o)));\n            var a = n(o);\n            return a ? i ? \"root\" === i ? y(e, a, t()) : y(e, w(a)) : w(a) : (e().log.warn(\"Could not find component\", o), null)\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(772),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            hasCachedChildNodes: 1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11);\n        n(8);\n        e.exports = function(e, t) {\n            return null == t && r(\"30\"), null == e ? t : Array.isArray(e) ? Array.isArray(t) ? (e.push.apply(e, t), e) : (e.push(t), e) : Array.isArray(t) ? [e].concat(t) : [e, t]\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n) {\n            Array.isArray(e) ? e.forEach(t, n) : e && t.call(n, e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(26),\n            o = null;\n        e.exports = function() {\n            return !o && r.canUseDOM && (o = \"textContent\" in document.documentElement ? \"textContent\" : \"innerText\"), o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11);\n        var o = n(69),\n            i = (n(8), function() {\n                function e(t) {\n                    ! function(e, t) {\n                        if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                    }(this, e), this._callbacks = null, this._contexts = null, this._arg = t\n                }\n                return e.prototype.enqueue = function(e, t) {\n                    this._callbacks = this._callbacks || [], this._callbacks.push(e), this._contexts = this._contexts || [], this._contexts.push(t)\n                }, e.prototype.notifyAll = function() {\n                    var e = this._callbacks,\n                        t = this._contexts,\n                        n = this._arg;\n                    if (e && t) {\n                        e.length !== t.length && r(\"24\"), this._callbacks = null, this._contexts = null;\n                        for (var o = 0; o < e.length; o++) e[o].call(t[o], n);\n                        e.length = 0, t.length = 0\n                    }\n                }, e.prototype.checkpoint = function() {\n                    return this._callbacks ? this._callbacks.length : 0\n                }, e.prototype.rollback = function(e) {\n                    this._callbacks && this._contexts && (this._callbacks.length = e, this._contexts.length = e)\n                }, e.prototype.reset = function() {\n                    this._callbacks = null, this._contexts = null\n                }, e.prototype.destructor = function() {\n                    this.reset()\n                }, e\n            }());\n        e.exports = o.addPoolingTo(i)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            logTopLevelRenders: !1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(14);\n\n        function o(e) {\n            var t = e.type,\n                n = e.nodeName;\n            return n && \"input\" === n.toLowerCase() && (\"checkbox\" === t || \"radio\" === t)\n        }\n\n        function i(e) {\n            return e._wrapperState.valueTracker\n        }\n        var a = {\n            _getTrackerFromNode: function(e) {\n                return i(r.getInstanceFromNode(e))\n            },\n            track: function(e) {\n                if (!i(e)) {\n                    var t = r.getNodeFromInstance(e),\n                        n = o(t) ? \"checked\" : \"value\",\n                        a = Object.getOwnPropertyDescriptor(t.constructor.prototype, n),\n                        u = \"\" + t[n];\n                    t.hasOwnProperty(n) || \"function\" != typeof a.get || \"function\" != typeof a.set || (Object.defineProperty(t, n, {\n                        enumerable: a.enumerable,\n                        configurable: !0,\n                        get: function() {\n                            return a.get.call(this)\n                        },\n                        set: function(e) {\n                            u = \"\" + e, a.set.call(this, e)\n                        }\n                    }), function(e, t) {\n                        e._wrapperState.valueTracker = t\n                    }(e, {\n                        getValue: function() {\n                            return u\n                        },\n                        setValue: function(e) {\n                            u = \"\" + e\n                        },\n                        stopTracking: function() {\n                            ! function(e) {\n                                e._wrapperState.valueTracker = null\n                            }(e), delete t[n]\n                        }\n                    }))\n                }\n            },\n            updateValueIfChanged: function(e) {\n                if (!e) return !1;\n                var t = i(e);\n                if (!t) return a.track(e), !0;\n                var n, u, s = t.getValue(),\n                    l = ((n = r.getNodeFromInstance(e)) && (u = o(n) ? \"\" + n.checked : n.value), u);\n                return l !== s && (t.setValue(l), !0)\n            },\n            stopTracking: function(e) {\n                var t = i(e);\n                t && t.stopTracking()\n            }\n        };\n        e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            color: !0,\n            date: !0,\n            datetime: !0,\n            \"datetime-local\": !0,\n            email: !0,\n            month: !0,\n            number: !0,\n            password: !0,\n            range: !0,\n            search: !0,\n            tel: !0,\n            text: !0,\n            time: !0,\n            url: !0,\n            week: !0\n        };\n        e.exports = function(e) {\n            var t = e && e.nodeName && e.nodeName.toLowerCase();\n            return \"input\" === t ? !!r[e.type] : \"textarea\" === t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            currentScrollLeft: 0,\n            currentScrollTop: 0,\n            refreshScrollValues: function(e) {\n                r.currentScrollLeft = e.x, r.currentScrollTop = e.y\n            }\n        };\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(26),\n            o = n(150),\n            i = n(149),\n            a = function(e, t) {\n                if (t) {\n                    var n = e.firstChild;\n                    if (n && n === e.lastChild && 3 === n.nodeType) return void(n.nodeValue = t)\n                }\n                e.textContent = t\n            };\n        r.canUseDOM && (\"textContent\" in document.documentElement || (a = function(e, t) {\n            3 !== e.nodeType ? i(e, o(t)) : e.nodeValue = t\n        })), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            try {\n                e.focus()\n            } catch (e) {}\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            animationIterationCount: !0,\n            borderImageOutset: !0,\n            borderImageSlice: !0,\n            borderImageWidth: !0,\n            boxFlex: !0,\n            boxFlexGroup: !0,\n            boxOrdinalGroup: !0,\n            columnCount: !0,\n            columns: !0,\n            flex: !0,\n            flexGrow: !0,\n            flexPositive: !0,\n            flexShrink: !0,\n            flexNegative: !0,\n            flexOrder: !0,\n            gridRow: !0,\n            gridRowEnd: !0,\n            gridRowSpan: !0,\n            gridRowStart: !0,\n            gridColumn: !0,\n            gridColumnEnd: !0,\n            gridColumnSpan: !0,\n            gridColumnStart: !0,\n            fontWeight: !0,\n            lineClamp: !0,\n            lineHeight: !0,\n            opacity: !0,\n            order: !0,\n            orphans: !0,\n            tabSize: !0,\n            widows: !0,\n            zIndex: !0,\n            zoom: !0,\n            fillOpacity: !0,\n            floodOpacity: !0,\n            stopOpacity: !0,\n            strokeDasharray: !0,\n            strokeDashoffset: !0,\n            strokeMiterlimit: !0,\n            strokeOpacity: !0,\n            strokeWidth: !0\n        };\n        var o = [\"Webkit\", \"ms\", \"Moz\", \"O\"];\n        Object.keys(r).forEach(function(e) {\n            o.forEach(function(t) {\n                r[function(e, t) {\n                    return e + t.charAt(0).toUpperCase() + t.substring(1)\n                }(t, e)] = r[e]\n            })\n        });\n        var i = {\n            isUnitlessNumber: r,\n            shorthandPropertyExpansions: {\n                background: {\n                    backgroundAttachment: !0,\n                    backgroundColor: !0,\n                    backgroundImage: !0,\n                    backgroundPositionX: !0,\n                    backgroundPositionY: !0,\n                    backgroundRepeat: !0\n                },\n                backgroundPosition: {\n                    backgroundPositionX: !0,\n                    backgroundPositionY: !0\n                },\n                border: {\n                    borderWidth: !0,\n                    borderStyle: !0,\n                    borderColor: !0\n                },\n                borderBottom: {\n                    borderBottomWidth: !0,\n                    borderBottomStyle: !0,\n                    borderBottomColor: !0\n                },\n                borderLeft: {\n                    borderLeftWidth: !0,\n                    borderLeftStyle: !0,\n                    borderLeftColor: !0\n                },\n                borderRight: {\n                    borderRightWidth: !0,\n                    borderRightStyle: !0,\n                    borderRightColor: !0\n                },\n                borderTop: {\n                    borderTopWidth: !0,\n                    borderTopStyle: !0,\n                    borderTopColor: !0\n                },\n                font: {\n                    fontStyle: !0,\n                    fontVariant: !0,\n                    fontWeight: !0,\n                    fontSize: !0,\n                    lineHeight: !0,\n                    fontFamily: !0\n                },\n                outline: {\n                    outlineWidth: !0,\n                    outlineStyle: !0,\n                    outlineColor: !0\n                }\n            }\n        };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(87),\n            o = (n(14), n(39), n(803)),\n            i = (n(9), new RegExp(\"^[\" + r.ATTRIBUTE_NAME_START_CHAR + \"][\" + r.ATTRIBUTE_NAME_CHAR + \"]*$\")),\n            a = {},\n            u = {};\n\n        function s(e) {\n            return !!u.hasOwnProperty(e) || !a.hasOwnProperty(e) && (i.test(e) ? (u[e] = !0, !0) : (a[e] = !0, !1))\n        }\n\n        function l(e, t) {\n            return null == t || e.hasBooleanValue && !t || e.hasNumericValue && isNaN(t) || e.hasPositiveNumericValue && t < 1 || e.hasOverloadedBooleanValue && !1 === t\n        }\n        var c = {\n            createMarkupForID: function(e) {\n                return r.ID_ATTRIBUTE_NAME + \"=\" + o(e)\n            },\n            setAttributeForID: function(e, t) {\n                e.setAttribute(r.ID_ATTRIBUTE_NAME, t)\n            },\n            createMarkupForRoot: function() {\n                return r.ROOT_ATTRIBUTE_NAME + '=\"\"'\n            },\n            setAttributeForRoot: function(e) {\n                e.setAttribute(r.ROOT_ATTRIBUTE_NAME, \"\")\n            },\n            createMarkupForProperty: function(e, t) {\n                var n = r.properties.hasOwnProperty(e) ? r.properties[e] : null;\n                if (n) {\n                    if (l(n, t)) return \"\";\n                    var i = n.attributeName;\n                    return n.hasBooleanValue || n.hasOverloadedBooleanValue && !0 === t ? i + '=\"\"' : i + \"=\" + o(t)\n                }\n                return r.isCustomAttribute(e) ? null == t ? \"\" : e + \"=\" + o(t) : null\n            },\n            createMarkupForCustomAttribute: function(e, t) {\n                return s(e) && null != t ? e + \"=\" + o(t) : \"\"\n            },\n            setValueForProperty: function(e, t, n) {\n                var o = r.properties.hasOwnProperty(t) ? r.properties[t] : null;\n                if (o) {\n                    var i = o.mutationMethod;\n                    if (i) i(e, n);\n                    else {\n                        if (l(o, n)) return void this.deleteValueForProperty(e, t);\n                        if (o.mustUseProperty) e[o.propertyName] = n;\n                        else {\n                            var a = o.attributeName,\n                                u = o.attributeNamespace;\n                            u ? e.setAttributeNS(u, a, \"\" + n) : o.hasBooleanValue || o.hasOverloadedBooleanValue && !0 === n ? e.setAttribute(a, \"\") : e.setAttribute(a, \"\" + n)\n                        }\n                    }\n                } else if (r.isCustomAttribute(t)) return void c.setValueForAttribute(e, t, n)\n            },\n            setValueForAttribute: function(e, t, n) {\n                s(t) && (null == n ? e.removeAttribute(t) : e.setAttribute(t, \"\" + n))\n            },\n            deleteValueForAttribute: function(e, t) {\n                e.removeAttribute(t)\n            },\n            deleteValueForProperty: function(e, t) {\n                var n = r.properties.hasOwnProperty(t) ? r.properties[t] : null;\n                if (n) {\n                    var o = n.mutationMethod;\n                    if (o) o(e, void 0);\n                    else if (n.mustUseProperty) {\n                        var i = n.propertyName;\n                        n.hasBooleanValue ? e[i] = !1 : e[i] = \"\"\n                    } else e.removeAttribute(n.attributeName)\n                } else r.isCustomAttribute(t) && e.removeAttribute(t)\n            }\n        };\n        e.exports = c\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(219),\n            i = n(14),\n            a = n(43),\n            u = (n(9), !1);\n\n        function s() {\n            if (this._rootNodeID && this._wrapperState.pendingUpdate) {\n                this._wrapperState.pendingUpdate = !1;\n                var e = this._currentElement.props,\n                    t = o.getValue(e);\n                null != t && l(this, Boolean(e.multiple), t)\n            }\n        }\n\n        function l(e, t, n) {\n            var r, o, a = i.getNodeFromInstance(e).options;\n            if (t) {\n                for (r = {}, o = 0; o < n.length; o++) r[\"\" + n[o]] = !0;\n                for (o = 0; o < a.length; o++) {\n                    var u = r.hasOwnProperty(a[o].value);\n                    a[o].selected !== u && (a[o].selected = u)\n                }\n            } else {\n                for (r = \"\" + n, o = 0; o < a.length; o++)\n                    if (a[o].value === r) return void(a[o].selected = !0);\n                a.length && (a[0].selected = !0)\n            }\n        }\n        var c = {\n            getHostProps: function(e, t) {\n                return r({}, t, {\n                    onChange: e._wrapperState.onChange,\n                    value: void 0\n                })\n            },\n            mountWrapper: function(e, t) {\n                var n = o.getValue(t);\n                e._wrapperState = {\n                    pendingUpdate: !1,\n                    initialValue: null != n ? n : t.defaultValue,\n                    listeners: null,\n                    onChange: function(e) {\n                        var t = this._currentElement.props,\n                            n = o.executeOnChange(t, e);\n                        this._rootNodeID && (this._wrapperState.pendingUpdate = !0);\n                        return a.asap(s, this), n\n                    }.bind(e),\n                    wasMultiple: Boolean(t.multiple)\n                }, void 0 === t.value || void 0 === t.defaultValue || u || (u = !0)\n            },\n            getSelectValueContext: function(e) {\n                return e._wrapperState.initialValue\n            },\n            postUpdateWrapper: function(e) {\n                var t = e._currentElement.props;\n                e._wrapperState.initialValue = void 0;\n                var n = e._wrapperState.wasMultiple;\n                e._wrapperState.wasMultiple = Boolean(t.multiple);\n                var r = o.getValue(t);\n                null != r ? (e._wrapperState.pendingUpdate = !1, l(e, Boolean(t.multiple), r)) : n !== Boolean(t.multiple) && (null != t.defaultValue ? l(e, Boolean(t.multiple), t.defaultValue) : l(e, Boolean(t.multiple), t.multiple ? [] : \"\"))\n            }\n        };\n        e.exports = c\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(812),\n            a = n(366),\n            u = n(367),\n            s = (n(813), n(8), n(9), function(e) {\n                this.construct(e)\n            });\n\n        function l(e, t) {\n            var n;\n            if (null === e || !1 === e) n = a.create(l);\n            else if (\"object\" == typeof e) {\n                var o = e,\n                    i = o.type;\n                if (\"function\" != typeof i && \"string\" != typeof i) {\n                    var c = \"\";\n                    0, c += function(e) {\n                        if (e) {\n                            var t = e.getName();\n                            if (t) return \" Check the render method of `\" + t + \"`.\"\n                        }\n                        return \"\"\n                    }(o._owner), r(\"130\", null == i ? i : typeof i, c)\n                }\n                \"string\" == typeof o.type ? n = u.createInternalComponent(o) : ! function(e) {\n                    return \"function\" == typeof e && void 0 !== e.prototype && \"function\" == typeof e.prototype.mountComponent && \"function\" == typeof e.prototype.receiveComponent\n                }(o.type) ? n = new s(o) : (n = new o.type(o)).getHostNode || (n.getHostNode = n.getNativeNode)\n            } else \"string\" == typeof e || \"number\" == typeof e ? n = u.createInstanceForText(e) : r(\"131\", typeof e);\n            return n._mountIndex = 0, n._mountImage = null, n\n        }\n        o(s.prototype, i, {\n            _instantiateReactComponent: l\n        }), e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(75),\n            i = (n(8), {\n                HOST: 0,\n                COMPOSITE: 1,\n                EMPTY: 2,\n                getType: function(e) {\n                    return null === e || !1 === e ? i.EMPTY : o.isValidElement(e) ? \"function\" == typeof e.type ? i.COMPOSITE : i.HOST : void r(\"26\", e)\n                }\n            });\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = {\n                injectEmptyComponentFactory: function(e) {\n                    r = e\n                }\n            },\n            i = {\n                create: function(e) {\n                    return r(e)\n                }\n            };\n        i.injection = o, e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(8), null),\n            i = null;\n        var a = {\n            createInternalComponent: function(e) {\n                return o || r(\"111\", e.type), new o(e)\n            },\n            createInstanceForText: function(e) {\n                return new i(e)\n            },\n            isTextComponent: function(e) {\n                return e instanceof i\n            },\n            injection: {\n                injectGenericComponentClass: function(e) {\n                    o = e\n                },\n                injectTextComponentClass: function(e) {\n                    i = e\n                }\n            }\n        };\n        e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(46), n(814)),\n            i = n(815),\n            a = (n(8), n(223)),\n            u = (n(9), \".\"),\n            s = \":\";\n\n        function l(e, t) {\n            return e && \"object\" == typeof e && null != e.key ? a.escape(e.key) : t.toString(36)\n        }\n        e.exports = function(e, t, n) {\n            return null == e ? 0 : function e(t, n, c, f) {\n                var p, d = typeof t;\n                if (\"undefined\" !== d && \"boolean\" !== d || (t = null), null === t || \"string\" === d || \"number\" === d || \"object\" === d && t.$$typeof === o) return c(f, t, \"\" === n ? u + l(t, 0) : n), 1;\n                var h = 0,\n                    v = \"\" === n ? u : n + s;\n                if (Array.isArray(t))\n                    for (var m = 0; m < t.length; m++) h += e(p = t[m], v + l(p, m), c, f);\n                else {\n                    var g = i(t);\n                    if (g) {\n                        var y, b = g.call(t);\n                        if (g !== t.entries)\n                            for (var _ = 0; !(y = b.next()).done;) h += e(p = y.value, v + l(p, _++), c, f);\n                        else\n                            for (; !(y = b.next()).done;) {\n                                var w = y.value;\n                                w && (h += e(p = w[1], v + a.escape(w[0]) + s + l(p, 0), c, f))\n                            }\n                    } else if (\"object\" === d) {\n                        var E = \"\",\n                            x = String(t);\n                        r(\"31\", \"[object Object]\" === x ? \"object with keys {\" + Object.keys(t).join(\", \") + \"}\" : x, E)\n                    }\n                }\n                return h\n            }(e, \"\", t, n)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i, a, u, s, l, c = n(104),\n            f = n(46);\n        n(8), n(9);\n\n        function p(e) {\n            var t = Function.prototype.toString,\n                n = Object.prototype.hasOwnProperty,\n                r = RegExp(\"^\" + t.call(n).replace(/[\\\\^$.*+?()[\\]{}|]/g, \"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, \"$1.*?\") + \"$\");\n            try {\n                var o = t.call(e);\n                return r.test(o)\n            } catch (e) {\n                return !1\n            }\n        }\n        if (\"function\" == typeof Array.from && \"function\" == typeof Map && p(Map) && null != Map.prototype && \"function\" == typeof Map.prototype.keys && p(Map.prototype.keys) && \"function\" == typeof Set && p(Set) && null != Set.prototype && \"function\" == typeof Set.prototype.keys && p(Set.prototype.keys)) {\n            var d = new Map,\n                h = new Set;\n            r = function(e, t) {\n                d.set(e, t)\n            }, o = function(e) {\n                return d.get(e)\n            }, i = function(e) {\n                d.delete(e)\n            }, a = function() {\n                return Array.from(d.keys())\n            }, u = function(e) {\n                h.add(e)\n            }, s = function(e) {\n                h.delete(e)\n            }, l = function() {\n                return Array.from(h.keys())\n            }\n        } else {\n            var v = {},\n                m = {},\n                g = function(e) {\n                    return \".\" + e\n                },\n                y = function(e) {\n                    return parseInt(e.substr(1), 10)\n                };\n            r = function(e, t) {\n                var n = g(e);\n                v[n] = t\n            }, o = function(e) {\n                var t = g(e);\n                return v[t]\n            }, i = function(e) {\n                var t = g(e);\n                delete v[t]\n            }, a = function() {\n                return Object.keys(v).map(y)\n            }, u = function(e) {\n                var t = g(e);\n                m[t] = !0\n            }, s = function(e) {\n                var t = g(e);\n                delete m[t]\n            }, l = function() {\n                return Object.keys(m).map(y)\n            }\n        }\n        var b = [];\n\n        function _(e) {\n            var t = o(e);\n            if (t) {\n                var n = t.childIDs;\n                i(e), n.forEach(_)\n            }\n        }\n\n        function w(e, t, n) {\n            return \"\\n    in \" + (e || \"Unknown\") + (t ? \" (at \" + t.fileName.replace(/^.*[\\\\\\/]/, \"\") + \":\" + t.lineNumber + \")\" : n ? \" (created by \" + n + \")\" : \"\")\n        }\n\n        function E(e) {\n            return null == e ? \"#empty\" : \"string\" == typeof e || \"number\" == typeof e ? \"#text\" : \"string\" == typeof e.type ? e.type : e.type.displayName || e.type.name || \"Unknown\"\n        }\n\n        function x(e) {\n            var t, n = S.getDisplayName(e),\n                r = S.getElement(e),\n                o = S.getOwnerID(e);\n            return o && (t = S.getDisplayName(o)), w(n, r && r._source, t)\n        }\n        var S = {\n            onSetChildren: function(e, t) {\n                var n = o(e);\n                n || c(\"144\"), n.childIDs = t;\n                for (var r = 0; r < t.length; r++) {\n                    var i = t[r],\n                        a = o(i);\n                    a || c(\"140\"), null == a.childIDs && \"object\" == typeof a.element && null != a.element && c(\"141\"), a.isMounted || c(\"71\"), null == a.parentID && (a.parentID = e), a.parentID !== e && c(\"142\", i, a.parentID, e)\n                }\n            },\n            onBeforeMountComponent: function(e, t, n) {\n                r(e, {\n                    element: t,\n                    parentID: n,\n                    text: null,\n                    childIDs: [],\n                    isMounted: !1,\n                    updateCount: 0\n                })\n            },\n            onBeforeUpdateComponent: function(e, t) {\n                var n = o(e);\n                n && n.isMounted && (n.element = t)\n            },\n            onMountComponent: function(e) {\n                var t = o(e);\n                t || c(\"144\"), t.isMounted = !0, 0 === t.parentID && u(e)\n            },\n            onUpdateComponent: function(e) {\n                var t = o(e);\n                t && t.isMounted && t.updateCount++\n            },\n            onUnmountComponent: function(e) {\n                var t = o(e);\n                t && (t.isMounted = !1, 0 === t.parentID && s(e));\n                b.push(e)\n            },\n            purgeUnmountedComponents: function() {\n                if (!S._preventPurging) {\n                    for (var e = 0; e < b.length; e++) {\n                        _(b[e])\n                    }\n                    b.length = 0\n                }\n            },\n            isMounted: function(e) {\n                var t = o(e);\n                return !!t && t.isMounted\n            },\n            getCurrentStackAddendum: function(e) {\n                var t = \"\";\n                if (e) {\n                    var n = E(e),\n                        r = e._owner;\n                    t += w(n, e._source, r && r.getName())\n                }\n                var o = f.current,\n                    i = o && o._debugID;\n                return t += S.getStackAddendumByID(i)\n            },\n            getStackAddendumByID: function(e) {\n                for (var t = \"\"; e;) t += x(e), e = S.getParentID(e);\n                return t\n            },\n            getChildIDs: function(e) {\n                var t = o(e);\n                return t ? t.childIDs : []\n            },\n            getDisplayName: function(e) {\n                var t = S.getElement(e);\n                return t ? E(t) : null\n            },\n            getElement: function(e) {\n                var t = o(e);\n                return t ? t.element : null\n            },\n            getOwnerID: function(e) {\n                var t = S.getElement(e);\n                return t && t._owner ? t._owner._debugID : null\n            },\n            getParentID: function(e) {\n                var t = o(e);\n                return t ? t.parentID : null\n            },\n            getSource: function(e) {\n                var t = o(e),\n                    n = t ? t.element : null;\n                return null != n ? n._source : null\n            },\n            getText: function(e) {\n                var t = S.getElement(e);\n                return \"string\" == typeof t ? t : \"number\" == typeof t ? \"\" + t : null\n            },\n            getUpdateCount: function(e) {\n                var t = o(e);\n                return t ? t.updateCount : 0\n            },\n            getRootIDs: l,\n            getRegisteredIDs: a,\n            pushNonStandardWarningStack: function(e, t) {\n                if (\"function\" == typeof console.reactStack) {\n                    var n = [],\n                        r = f.current,\n                        o = r && r._debugID;\n                    try {\n                        for (e && n.push({\n                            name: o ? S.getDisplayName(o) : null,\n                            fileName: t ? t.fileName : null,\n                            lineNumber: t ? t.lineNumber : null\n                        }); o;) {\n                            var i = S.getElement(o),\n                                a = S.getParentID(o),\n                                u = S.getOwnerID(o),\n                                s = u ? S.getDisplayName(u) : null,\n                                l = i && i._source;\n                            n.push({\n                                name: s,\n                                fileName: l ? l.fileName : null,\n                                lineNumber: l ? l.lineNumber : null\n                            }), o = a\n                        }\n                    } catch (e) {}\n                    console.reactStack(n)\n                }\n            },\n            popNonStandardWarningStack: function() {\n                \"function\" == typeof console.reactStackEnd && console.reactStackEnd()\n            }\n        };\n        e.exports = S\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(34),\n            o = {\n                listen: function(e, t, n) {\n                    return e.addEventListener ? (e.addEventListener(t, n, !1), {\n                        remove: function() {\n                            e.removeEventListener(t, n, !1)\n                        }\n                    }) : e.attachEvent ? (e.attachEvent(\"on\" + t, n), {\n                        remove: function() {\n                            e.detachEvent(\"on\" + t, n)\n                        }\n                    }) : void 0\n                },\n                capture: function(e, t, n) {\n                    return e.addEventListener ? (e.addEventListener(t, n, !0), {\n                        remove: function() {\n                            e.removeEventListener(t, n, !0)\n                        }\n                    }) : {\n                        remove: r\n                    }\n                },\n                registerDefault: function() {}\n            };\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(827),\n            o = n(829),\n            i = n(360),\n            a = n(372);\n        var u = {\n            hasSelectionCapabilities: function(e) {\n                var t = e && e.nodeName && e.nodeName.toLowerCase();\n                return t && (\"input\" === t && \"text\" === e.type || \"textarea\" === t || \"true\" === e.contentEditable)\n            },\n            getSelectionInformation: function() {\n                var e = a();\n                return {\n                    focusedElem: e,\n                    selectionRange: u.hasSelectionCapabilities(e) ? u.getSelection(e) : null\n                }\n            },\n            restoreSelection: function(e) {\n                var t, n = a(),\n                    r = e.focusedElem,\n                    s = e.selectionRange;\n                n !== r && (t = r, o(document.documentElement, t)) && (u.hasSelectionCapabilities(r) && u.setSelection(r, s), i(r))\n            },\n            getSelection: function(e) {\n                var t;\n                if (\"selectionStart\" in e) t = {\n                    start: e.selectionStart,\n                    end: e.selectionEnd\n                };\n                else if (document.selection && e.nodeName && \"input\" === e.nodeName.toLowerCase()) {\n                    var n = document.selection.createRange();\n                    n.parentElement() === e && (t = {\n                        start: -n.moveStart(\"character\", -e.value.length),\n                        end: -n.moveEnd(\"character\", -e.value.length)\n                    })\n                } else t = r.getOffsets(e);\n                return t || {\n                    start: 0,\n                    end: 0\n                }\n            },\n            setSelection: function(e, t) {\n                var n = t.start,\n                    o = t.end;\n                if (void 0 === o && (o = n), \"selectionStart\" in e) e.selectionStart = n, e.selectionEnd = Math.min(o, e.value.length);\n                else if (document.selection && e.nodeName && \"input\" === e.nodeName.toLowerCase()) {\n                    var i = e.createTextRange();\n                    i.collapse(!0), i.moveStart(\"character\", n), i.moveEnd(\"character\", o - n), i.select()\n                } else r.setOffsets(e, t)\n            }\n        };\n        e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            if (void 0 === (e = e || (\"undefined\" != typeof document ? document : void 0))) return null;\n            try {\n                return e.activeElement || e.body\n            } catch (t) {\n                return e.body\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(89),\n            i = n(87),\n            a = n(75),\n            u = n(151),\n            s = (n(46), n(14)),\n            l = n(844),\n            c = n(845),\n            f = n(355),\n            p = n(112),\n            d = (n(39), n(846)),\n            h = n(88),\n            v = n(224),\n            m = n(43),\n            g = n(126),\n            y = n(364),\n            b = (n(8), n(149)),\n            _ = n(222),\n            w = (n(9), i.ID_ATTRIBUTE_NAME),\n            E = i.ROOT_ATTRIBUTE_NAME,\n            x = 1,\n            S = 9,\n            C = 11,\n            k = {};\n\n        function A(e) {\n            return e ? e.nodeType === S ? e.documentElement : e.firstChild : null\n        }\n\n        function O(e) {\n            return e.getAttribute && e.getAttribute(w) || \"\"\n        }\n\n        function P(e, t, n, r, o) {\n            var i;\n            if (f.logTopLevelRenders) {\n                var a = e._currentElement.props.child.type;\n                i = \"React mount: \" + (\"string\" == typeof a ? a : a.displayName || a.name), console.time(i)\n            }\n            var u = h.mountComponent(e, n, null, l(e, t), o, 0);\n            i && console.timeEnd(i), e._renderedComponent._topLevelWrapper = e, L._mountImageIntoNode(u, t, e, r, n)\n        }\n\n        function T(e, t, n, r) {\n            var o = m.ReactReconcileTransaction.getPooled(!n && c.useCreateElement);\n            o.perform(P, null, e, t, o, n, r), m.ReactReconcileTransaction.release(o)\n        }\n\n        function M(e, t, n) {\n            for (0, h.unmountComponent(e, n), t.nodeType === S && (t = t.documentElement); t.lastChild;) t.removeChild(t.lastChild)\n        }\n\n        function I(e) {\n            var t = A(e);\n            if (t) {\n                var n = s.getInstanceFromNode(t);\n                return !(!n || !n._hostParent)\n            }\n        }\n\n        function j(e) {\n            return !(!e || e.nodeType !== x && e.nodeType !== S && e.nodeType !== C)\n        }\n\n        function N(e) {\n            var t = function(e) {\n                var t = A(e),\n                    n = t && s.getInstanceFromNode(t);\n                return n && !n._hostParent ? n : null\n            }(e);\n            return t ? t._hostContainerInfo._topLevelWrapper : null\n        }\n        var R = 1,\n            D = function() {\n                this.rootID = R++\n            };\n        D.prototype.isReactComponent = {}, D.prototype.render = function() {\n            return this.props.child\n        }, D.isReactTopLevelWrapper = !0;\n        var L = {\n            TopLevelWrapper: D,\n            _instancesByReactRootID: k,\n            scrollMonitor: function(e, t) {\n                t()\n            },\n            _updateRootComponent: function(e, t, n, r, o) {\n                return L.scrollMonitor(r, function() {\n                    v.enqueueElementInternal(e, t, n), o && v.enqueueCallbackInternal(e, o)\n                }), e\n            },\n            _renderNewRootComponent: function(e, t, n, o) {\n                j(t) || r(\"37\"), u.ensureScrollValueMonitoring();\n                var i = y(e, !1);\n                m.batchedUpdates(T, i, t, n, o);\n                var a = i._instance.rootID;\n                return k[a] = i, i\n            },\n            renderSubtreeIntoContainer: function(e, t, n, o) {\n                return null != e && p.has(e) || r(\"38\"), L._renderSubtreeIntoContainer(e, t, n, o)\n            },\n            _renderSubtreeIntoContainer: function(e, t, n, o) {\n                v.validateCallback(o, \"ReactDOM.render\"), a.isValidElement(t) || r(\"39\", \"string\" == typeof t ? \" Instead of passing a string like 'div', pass React.createElement('div') or <div />.\" : \"function\" == typeof t ? \" Instead of passing a class like Foo, pass React.createElement(Foo) or <Foo />.\" : null != t && void 0 !== t.props ? \" This may be caused by unintentionally loading two independent copies of React.\" : \"\");\n                var i, u = a.createElement(D, {\n                    child: t\n                });\n                if (e) {\n                    var s = p.get(e);\n                    i = s._processChildContext(s._context)\n                } else i = g;\n                var l = N(n);\n                if (l) {\n                    var c = l._currentElement.props.child;\n                    if (_(c, t)) {\n                        var f = l._renderedComponent.getPublicInstance(),\n                            d = o && function() {\n                                o.call(f)\n                            };\n                        return L._updateRootComponent(l, u, i, n, d), f\n                    }\n                    L.unmountComponentAtNode(n)\n                }\n                var h = A(n),\n                    m = h && !!O(h),\n                    y = I(n),\n                    b = m && !l && !y,\n                    w = L._renderNewRootComponent(u, n, b, i)._renderedComponent.getPublicInstance();\n                return o && o.call(w), w\n            },\n            render: function(e, t, n) {\n                return L._renderSubtreeIntoContainer(null, e, t, n)\n            },\n            unmountComponentAtNode: function(e) {\n                j(e) || r(\"40\");\n                var t = N(e);\n                if (!t) {\n                    I(e), 1 === e.nodeType && e.hasAttribute(E);\n                    return !1\n                }\n                return delete k[t._instance.rootID], m.batchedUpdates(M, t, e, !1), !0\n            },\n            _mountImageIntoNode: function(e, t, n, i, a) {\n                if (j(t) || r(\"41\"), i) {\n                    var u = A(t);\n                    if (d.canReuseMarkup(e, u)) return void s.precacheNode(n, u);\n                    var l = u.getAttribute(d.CHECKSUM_ATTR_NAME);\n                    u.removeAttribute(d.CHECKSUM_ATTR_NAME);\n                    var c = u.outerHTML;\n                    u.setAttribute(d.CHECKSUM_ATTR_NAME, l);\n                    var f = e,\n                        p = function(e, t) {\n                            for (var n = Math.min(e.length, t.length), r = 0; r < n; r++)\n                                if (e.charAt(r) !== t.charAt(r)) return r;\n                            return e.length === t.length ? -1 : n\n                        }(f, c),\n                        h = \" (client) \" + f.substring(p - 20, p + 20) + \"\\n (server) \" + c.substring(p - 20, p + 20);\n                    t.nodeType === S && r(\"42\", h)\n                }\n                if (t.nodeType === S && r(\"43\"), a.useCreateElement) {\n                    for (; t.lastChild;) t.removeChild(t.lastChild);\n                    o.insertTreeBefore(t, e, null)\n                } else b(t, e), s.precacheNode(n, t.firstChild)\n            }\n        };\n        e.exports = L\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(365);\n        e.exports = function(e) {\n            for (var t;\n                 (t = e._renderedNodeType) === r.COMPOSITE;) e = e._renderedComponent;\n            return t === r.HOST ? e._renderedComponent : t === r.EMPTY ? null : void 0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r, o = n(1),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = i.default.shape({\n            subscribe: i.default.func.isRequired,\n            dispatch: i.default.func.isRequired,\n            getState: i.default.func.isRequired\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.default = function(e) {\n            \"undefined\" != typeof console && \"function\" == typeof console.error && console.error(e);\n            try {\n                throw new Error(e)\n            } catch (e) {}\n        }\n    }, function(e, t, n) {\n        var r = n(182),\n            o = n(860),\n            i = n(146),\n            a = n(861),\n            u = n(862),\n            s = n(865),\n            l = n(866),\n            c = n(867),\n            f = n(868),\n            p = n(292),\n            d = n(380),\n            h = n(137),\n            v = n(869),\n            m = n(870),\n            g = n(875),\n            y = n(24),\n            b = n(186),\n            _ = n(877),\n            w = n(38),\n            E = n(879),\n            x = n(64),\n            S = 1,\n            C = 2,\n            k = 4,\n            A = \"[object Arguments]\",\n            O = \"[object Function]\",\n            P = \"[object GeneratorFunction]\",\n            T = \"[object Object]\",\n            M = {};\n        M[A] = M[\"[object Array]\"] = M[\"[object ArrayBuffer]\"] = M[\"[object DataView]\"] = M[\"[object Boolean]\"] = M[\"[object Date]\"] = M[\"[object Float32Array]\"] = M[\"[object Float64Array]\"] = M[\"[object Int8Array]\"] = M[\"[object Int16Array]\"] = M[\"[object Int32Array]\"] = M[\"[object Map]\"] = M[\"[object Number]\"] = M[T] = M[\"[object RegExp]\"] = M[\"[object Set]\"] = M[\"[object String]\"] = M[\"[object Symbol]\"] = M[\"[object Uint8Array]\"] = M[\"[object Uint8ClampedArray]\"] = M[\"[object Uint16Array]\"] = M[\"[object Uint32Array]\"] = !0, M[\"[object Error]\"] = M[O] = M[\"[object WeakMap]\"] = !1, e.exports = function e(t, n, I, j, N, R) {\n            var D, L = n & S,\n                U = n & C,\n                q = n & k;\n            if (I && (D = N ? I(t, j, N, R) : I(t)), void 0 !== D) return D;\n            if (!w(t)) return t;\n            var F = y(t);\n            if (F) {\n                if (D = v(t), !L) return l(t, D)\n            } else {\n                var z = h(t),\n                    B = z == O || z == P;\n                if (b(t)) return s(t, L);\n                if (z == T || z == A || B && !N) {\n                    if (D = U || B ? {} : g(t), !L) return U ? f(t, u(D, t)) : c(t, a(D, t))\n                } else {\n                    if (!M[z]) return N ? t : {};\n                    D = m(t, z, L)\n                }\n            }\n            R || (R = new r);\n            var V = R.get(t);\n            if (V) return V;\n            if (R.set(t, D), E(t)) return t.forEach(function(r) {\n                D.add(e(r, n, I, r, t, R))\n            }), D;\n            if (_(t)) return t.forEach(function(r, o) {\n                D.set(o, e(r, n, I, o, t, R))\n            }), D;\n            var H = q ? U ? d : p : U ? keysIn : x,\n                W = F ? void 0 : H(t);\n            return o(W || t, function(r, o) {\n                W && (r = t[o = r]), i(D, o, e(r, n, I, o, t, R))\n            }), D\n        }\n    }, function(e, t, n) {\n        var r = n(295),\n            o = n(863),\n            i = n(78);\n        e.exports = function(e) {\n            return i(e) ? r(e, !0) : o(e)\n        }\n    }, function(e, t, n) {\n        var r = n(183),\n            o = n(228),\n            i = n(184),\n            a = n(294),\n            u = Object.getOwnPropertySymbols ? function(e) {\n                for (var t = []; e;) r(t, i(e)), e = o(e);\n                return t\n            } : a;\n        e.exports = u\n    }, function(e, t, n) {\n        var r = n(293),\n            o = n(379),\n            i = n(378);\n        e.exports = function(e) {\n            return r(e, i, o)\n        }\n    }, function(e, t, n) {\n        var r = n(885),\n            o = n(382),\n            i = n(383);\n        e.exports = function(e) {\n            return i(o(e, void 0, r), e + \"\")\n        }\n    }, function(e, t, n) {\n        var r = n(888),\n            o = Math.max;\n        e.exports = function(e, t, n) {\n            return t = o(void 0 === t ? e.length - 1 : t, 0),\n                function() {\n                    for (var i = arguments, a = -1, u = o(i.length - t, 0), s = Array(u); ++a < u;) s[a] = i[t + a];\n                    a = -1;\n                    for (var l = Array(t + 1); ++a < t;) l[a] = i[a];\n                    return l[t] = n(s), r(e, this, l)\n                }\n        }\n    }, function(e, t, n) {\n        var r = n(889),\n            o = n(891)(r);\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                fn: r\n            }\n        };\n        var r = function(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }(n(192))\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e) {\n            var t = {\n                    debug: 0,\n                    info: 1,\n                    log: 2,\n                    warn: 3,\n                    error: 4\n                },\n                n = function(e) {\n                    return t[e] || -1\n                },\n                r = e.configs.logLevel,\n                o = n(r);\n\n            function i(e) {\n                for (var t, r = arguments.length, i = Array(r > 1 ? r - 1 : 0), a = 1; a < r; a++) i[a - 1] = arguments[a];\n                n(e) >= o && (t = console)[e].apply(t, i)\n            }\n            return i.warn = i.bind(null, \"warn\"), i.error = i.bind(null, \"error\"), i.info = i.bind(null, \"info\"), i.debug = i.bind(null, \"debug\"), {\n                rootInjects: {\n                    log: i\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(387),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        e.exports = function(e) {\n            var t = e.configs;\n            return {\n                fn: {\n                    fetch: i.default.makeHttp(t.preFetch, t.postFetch),\n                    buildRequest: i.default.buildRequest,\n                    execute: i.default.execute,\n                    resolve: i.default.resolve,\n                    resolveSubtree: i.default.resolveSubtree,\n                    serializeRes: i.default.serializeRes,\n                    opId: i.default.helpers.opId\n                }\n            }\n        }\n    }, function(e, t, n) {\n        e.exports = function(e) {\n            function t(r) {\n                if (n[r]) return n[r].exports;\n                var o = n[r] = {\n                    i: r,\n                    l: !1,\n                    exports: {}\n                };\n                return e[r].call(o.exports, o, o.exports, t), o.l = !0, o.exports\n            }\n            var n = {};\n            return t.m = e, t.c = n, t.d = function(e, n, r) {\n                t.o(e, n) || Object.defineProperty(e, n, {\n                    configurable: !1,\n                    enumerable: !0,\n                    get: r\n                })\n            }, t.n = function(e) {\n                var n = e && e.__esModule ? function() {\n                    return e.default\n                } : function() {\n                    return e\n                };\n                return t.d(n, \"a\", n), n\n            }, t.o = function(e, t) {\n                return Object.prototype.hasOwnProperty.call(e, t)\n            }, t.p = \"\", t(t.s = 23)\n        }([function(e, t) {\n            e.exports = n(42)\n        }, function(e, t) {\n            e.exports = n(45)\n        }, function(e, t) {\n            e.exports = n(23)\n        }, function(e, t) {\n            e.exports = n(25)\n        }, function(e, t) {\n            e.exports = n(338)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e, t) {\n                var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : \"\",\n                    r = (arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}).v2OperationIdCompatibilityMode;\n                return e && \"object\" === (void 0 === e ? \"undefined\" : (0, c.default)(e)) ? (e.operationId || \"\").replace(/\\s/g, \"\").length ? h(e.operationId) : i(t, n, {\n                    v2OperationIdCompatibilityMode: r\n                }) : null\n            }\n\n            function i(e, t) {\n                if ((arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}).v2OperationIdCompatibilityMode) {\n                    var n = (t.toLowerCase() + \"_\" + e).replace(/[\\s!@#$%^&*()_+=[{\\]};:<>|.\\/?,\\\\'\"\"-]/g, \"_\");\n                    return (n = n || e.substring(1) + \"_\" + t).replace(/((_){2,})/g, \"_\").replace(/^(_)*/g, \"\").replace(/([_])*$/g, \"\")\n                }\n                return \"\" + d(t) + h(e)\n            }\n\n            function a(e, t) {\n                return d(t) + \"-\" + e\n            }\n\n            function u(e, t) {\n                return s(e, t, !0) || null\n            }\n\n            function s(e, t, n) {\n                if (!e || \"object\" !== (void 0 === e ? \"undefined\" : (0, c.default)(e)) || !e.paths || \"object\" !== (0, c.default)(e.paths)) return null;\n                var r = e.paths;\n                for (var o in r)\n                    for (var i in r[o])\n                        if (\"PARAMETERS\" !== i.toUpperCase()) {\n                            var a = r[o][i];\n                            if (a && \"object\" === (void 0 === a ? \"undefined\" : (0, c.default)(a))) {\n                                var u = {\n                                        spec: e,\n                                        pathName: o,\n                                        method: i.toUpperCase(),\n                                        operation: a\n                                    },\n                                    s = t(u);\n                                if (n && s) return u\n                            }\n                        }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var l = r(n(18)),\n                c = r(n(1));\n            t.isOAS3 = function(e) {\n                var t = e.openapi;\n                return !!t && (0, p.default)(t, \"3\")\n            }, t.isSwagger2 = function(e) {\n                var t = e.swagger;\n                return !!t && (0, p.default)(t, \"2\")\n            }, t.opId = o, t.idFromPathMethod = i, t.legacyIdFromPathMethod = a, t.getOperationRaw = function(e, t) {\n                return e && e.paths ? u(e, function(e) {\n                    var n = e.pathName,\n                        r = e.method,\n                        i = e.operation;\n                    if (!i || \"object\" !== (void 0 === i ? \"undefined\" : (0, c.default)(i))) return !1;\n                    var u = i.operationId;\n                    return [o(i, n, r), a(n, r), u].some(function(e) {\n                        return e && e === t\n                    })\n                }) : null\n            }, t.findOperation = u, t.eachOperation = s, t.normalizeSwagger = function(e) {\n                var t = e.spec,\n                    n = t.paths,\n                    r = {};\n                if (!n || t.$$normalized) return e;\n                for (var i in n) {\n                    var a = n[i];\n                    if ((0, f.default)(a)) {\n                        var u = a.parameters;\n                        for (var s in a) ! function(e) {\n                            var n = a[e];\n                            if (!(0, f.default)(n)) return \"continue\";\n                            var s = o(n, i, e);\n                            if (s) {\n                                r[s] ? r[s].push(n) : r[s] = [n];\n                                var c = r[s];\n                                if (c.length > 1) c.forEach(function(e, t) {\n                                    e.__originalOperationId = e.__originalOperationId || e.operationId, e.operationId = \"\" + s + (t + 1)\n                                });\n                                else if (void 0 !== n.operationId) {\n                                    var p = c[0];\n                                    p.__originalOperationId = p.__originalOperationId || n.operationId, p.operationId = s\n                                }\n                            }\n                            if (\"parameters\" !== e) {\n                                var d = [],\n                                    h = {};\n                                for (var v in t) \"produces\" !== v && \"consumes\" !== v && \"security\" !== v || (h[v] = t[v], d.push(h));\n                                if (u && (h.parameters = u, d.push(h)), d.length) {\n                                    var m = !0,\n                                        g = !1,\n                                        y = void 0;\n                                    try {\n                                        for (var b, _ = (0, l.default)(d); !(m = (b = _.next()).done); m = !0) {\n                                            var w = b.value;\n                                            for (var E in w)\n                                                if (n[E]) {\n                                                    if (\"parameters\" === E) {\n                                                        var x = !0,\n                                                            S = !1,\n                                                            C = void 0;\n                                                        try {\n                                                            for (var k, A = (0, l.default)(w[E]); !(x = (k = A.next()).done); x = !0) ! function() {\n                                                                var e = k.value;\n                                                                n[E].some(function(t) {\n                                                                    return t.name && t.name === e.name || t.$ref && t.$ref === e.$ref || t.$$ref && t.$$ref === e.$$ref || t === e\n                                                                }) || n[E].push(e)\n                                                            }()\n                                                        } catch (e) {\n                                                            S = !0, C = e\n                                                        } finally {\n                                                            try {\n                                                                !x && A.return && A.return()\n                                                            } finally {\n                                                                if (S) throw C\n                                                            }\n                                                        }\n                                                    }\n                                                } else n[E] = w[E]\n                                        }\n                                    } catch (e) {\n                                        g = !0, y = e\n                                    } finally {\n                                        try {\n                                            !m && _.return && _.return()\n                                        } finally {\n                                            if (g) throw y\n                                        }\n                                    }\n                                }\n                            }\n                        }(s)\n                    }\n                }\n                return t.$$normalized = !0, e\n            };\n            var f = r(n(47)),\n                p = r(n(14)),\n                d = function(e) {\n                    return String.prototype.toLowerCase.call(e)\n                },\n                h = function(e) {\n                    return e.replace(/[^\\w]/gi, \"_\")\n                }\n        }, function(e, t) {\n            e.exports = n(892)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e, t) {\n                var n = (arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}).loadSpec,\n                    r = void 0 !== n && n,\n                    o = {\n                        ok: e.ok,\n                        url: e.url || t,\n                        status: e.status,\n                        statusText: e.statusText,\n                        headers: i(e.headers)\n                    },\n                    a = o.headers[\"content-type\"],\n                    u = r || _(a);\n                return (u ? e.text : e.blob || e.buffer).call(e).then(function(e) {\n                    if (o.text = e, o.data = e, u) try {\n                        var t = function(e, t) {\n                            return \"application/json\" === t ? JSON.parse(e) : g.default.safeLoad(e)\n                        }(e, a);\n                        o.body = t, o.obj = t\n                    } catch (e) {\n                        o.parseError = e\n                    }\n                    return o\n                })\n            }\n\n            function i() {\n                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                    t = {};\n                return \"function\" == typeof e.forEach ? (e.forEach(function(e, n) {\n                    void 0 !== t[n] ? (t[n] = Array.isArray(t[n]) ? t[n] : [t[n]], t[n].push(e)) : t[n] = e\n                }), t) : t\n            }\n\n            function a(e) {\n                return \"undefined\" != typeof File ? e instanceof File : null !== e && \"object\" === (void 0 === e ? \"undefined\" : (0, h.default)(e)) && \"function\" == typeof e.pipe\n            }\n\n            function u(e, t) {\n                var n = e.collectionFormat,\n                    r = e.allowEmptyValue,\n                    o = \"object\" === (void 0 === e ? \"undefined\" : (0, h.default)(e)) ? e.value : e;\n                if (void 0 === o && r) return \"\";\n                if (a(o) || \"boolean\" == typeof o) return o;\n                var i = encodeURIComponent;\n                return t && (i = (0, y.default)(o) ? function(e) {\n                    return e\n                } : function(e) {\n                    return (0, p.default)(e)\n                }), \"object\" !== (void 0 === o ? \"undefined\" : (0, h.default)(o)) || Array.isArray(o) ? Array.isArray(o) ? Array.isArray(o) && !n ? o.map(i).join(\",\") : \"multi\" === n ? o.map(i) : o.map(i).join({\n                    csv: \",\",\n                    ssv: \"%20\",\n                    tsv: \"%09\",\n                    pipes: \"|\"\n                }[n]) : i(o) : \"\"\n            }\n\n            function s(e) {\n                var t = (0, f.default)(e).reduce(function(t, n) {\n                    var r = e[n],\n                        o = !!r.skipEncoding,\n                        i = o ? n : encodeURIComponent(n),\n                        a = function(e) {\n                            return e && \"object\" === (void 0 === e ? \"undefined\" : (0, h.default)(e))\n                        }(r) && !Array.isArray(r);\n                    return t[i] = u(a ? r : {\n                        value: r\n                    }, o), t\n                }, {});\n                return m.default.stringify(t, {\n                    encode: !1,\n                    indices: !1\n                }) || \"\"\n            }\n\n            function l() {\n                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                    t = e.url,\n                    r = void 0 === t ? \"\" : t,\n                    o = e.query,\n                    i = e.form;\n                if (i) {\n                    var l = (0, f.default)(i).some(function(e) {\n                            return a(i[e].value)\n                        }),\n                        p = e.headers[\"content-type\"] || e.headers[\"Content-Type\"];\n                    if (l || /multipart\\/form-data/i.test(p)) {\n                        var d = n(30);\n                        e.body = new d, (0, f.default)(i).forEach(function(t) {\n                            e.body.append(t, u(i[t], !0))\n                        })\n                    } else e.body = s(i);\n                    delete e.form\n                }\n                if (o) {\n                    var h = r.split(\"?\"),\n                        v = (0, c.default)(h, 2),\n                        g = v[0],\n                        y = v[1],\n                        b = \"\";\n                    if (y) {\n                        var _ = m.default.parse(y);\n                        (0, f.default)(o).forEach(function(e) {\n                            return delete _[e]\n                        }), b = m.default.stringify(_, {\n                            encode: !0\n                        })\n                    }\n                    var w = function() {\n                        for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n                        var r = t.filter(function(e) {\n                            return e\n                        }).join(\"&\");\n                        return r ? \"?\" + r : \"\"\n                    }(b, s(o));\n                    e.url = g + w, delete e.query\n                }\n                return e\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.shouldDownloadAsText = t.self = void 0;\n            var c = r(n(26)),\n                f = r(n(0)),\n                p = r(n(8)),\n                d = r(n(4)),\n                h = r(n(1)),\n                v = r(n(11));\n            t.serializeRes = o, t.serializeHeaders = i, t.encodeFormOrQuery = s, t.mergeInQueryOrForm = l, t.makeHttp = function(e, t, n) {\n                return n = n || function(e) {\n                    return e\n                }, t = t || function(e) {\n                    return e\n                },\n                    function(r) {\n                        return \"string\" == typeof r && (r = {\n                            url: r\n                        }), b.mergeInQueryOrForm(r), r = t(r), n(e(r))\n                    }\n            }, n(27);\n            var m = r(n(28)),\n                g = r(n(15)),\n                y = r(n(29)),\n                b = t.self = {\n                    serializeRes: o,\n                    mergeInQueryOrForm: l\n                };\n            t.default = function() {\n                var e = (0, v.default)(d.default.mark(function e(t) {\n                    var n, r, o, i, a = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\n                    return d.default.wrap(function(e) {\n                        for (;;) switch (e.prev = e.next) {\n                            case 0:\n                                if (\"object\" === (void 0 === t ? \"undefined\" : (0, h.default)(t)) && (t = (a = t).url), a.headers = a.headers || {}, b.mergeInQueryOrForm(a), !a.requestInterceptor) {\n                                    e.next = 10;\n                                    break\n                                }\n                                return e.next = 6, a.requestInterceptor(a);\n                            case 6:\n                                if (e.t0 = e.sent, e.t0) {\n                                    e.next = 9;\n                                    break\n                                }\n                                e.t0 = a;\n                            case 9:\n                                a = e.t0;\n                            case 10:\n                                return n = a.headers[\"content-type\"] || a.headers[\"Content-Type\"], /multipart\\/form-data/i.test(n) && (delete a.headers[\"content-type\"], delete a.headers[\"Content-Type\"]), r = void 0, e.prev = 13, e.next = 16, (a.userFetch || fetch)(a.url, a);\n                            case 16:\n                                return r = e.sent, e.next = 19, b.serializeRes(r, t, a);\n                            case 19:\n                                if (r = e.sent, !a.responseInterceptor) {\n                                    e.next = 27;\n                                    break\n                                }\n                                return e.next = 23, a.responseInterceptor(r);\n                            case 23:\n                                if (e.t1 = e.sent, e.t1) {\n                                    e.next = 26;\n                                    break\n                                }\n                                e.t1 = r;\n                            case 26:\n                                r = e.t1;\n                            case 27:\n                                e.next = 37;\n                                break;\n                            case 29:\n                                if (e.prev = 29, e.t2 = e.catch(13), r) {\n                                    e.next = 33;\n                                    break\n                                }\n                                throw e.t2;\n                            case 33:\n                                throw (o = new Error(r.statusText)).statusCode = o.status = r.status, o.responseError = e.t2, o;\n                            case 37:\n                                if (r.ok) {\n                                    e.next = 42;\n                                    break\n                                }\n                                throw (i = new Error(r.statusText)).statusCode = i.status = r.status, i.response = r, i;\n                            case 42:\n                                return e.abrupt(\"return\", r);\n                            case 43:\n                            case \"end\":\n                                return e.stop()\n                        }\n                    }, e, this, [\n                        [13, 29]\n                    ])\n                }));\n                return function(t) {\n                    return e.apply(this, arguments)\n                }\n            }();\n            var _ = t.shouldDownloadAsText = function() {\n                return /(json|xml|yaml|text)\\b/.test(arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : \"\")\n            }\n        }, function(e, t) {\n            e.exports = n(41)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                return Array.isArray(e) ? e.length < 1 ? \"\" : \"/\" + e.map(function(e) {\n                    return (e + \"\").replace(/~/g, \"~0\").replace(/\\//g, \"~1\")\n                }).join(\"/\") : e\n            }\n\n            function i(e, t, n) {\n                return {\n                    op: \"replace\",\n                    path: e,\n                    value: t,\n                    meta: n\n                }\n            }\n\n            function a(e, t, n) {\n                return f(c(e.filter(m).map(function(e) {\n                    return t(e.value, n, e.path)\n                }) || []))\n            }\n\n            function u(e, t, n) {\n                return n = n || [], Array.isArray(e) ? e.map(function(e, r) {\n                    return u(e, t, n.concat(r))\n                }) : p(e) ? (0, w.default)(e).map(function(r) {\n                    return u(e[r], t, n.concat(r))\n                }) : t(e, n[n.length - 1], n)\n            }\n\n            function s(e, t, n) {\n                var r = [];\n                if ((n = n || []).length > 0) {\n                    var o = t(e, n[n.length - 1], n);\n                    o && (r = r.concat(o))\n                }\n                if (Array.isArray(e)) {\n                    var i = e.map(function(e, r) {\n                        return s(e, t, n.concat(r))\n                    });\n                    i && (r = r.concat(i))\n                } else if (p(e)) {\n                    var a = (0, w.default)(e).map(function(r) {\n                        return s(e[r], t, n.concat(r))\n                    });\n                    a && (r = r.concat(a))\n                }\n                return c(r)\n            }\n\n            function l(e) {\n                return Array.isArray(e) ? e : [e]\n            }\n\n            function c(e) {\n                var t;\n                return (t = []).concat.apply(t, (0, _.default)(e.map(function(e) {\n                    return Array.isArray(e) ? c(e) : e\n                })))\n            }\n\n            function f(e) {\n                return e.filter(function(e) {\n                    return void 0 !== e\n                })\n            }\n\n            function p(e) {\n                return e && \"object\" === (void 0 === e ? \"undefined\" : (0, b.default)(e))\n            }\n\n            function d(e) {\n                return e && \"function\" == typeof e\n            }\n\n            function h(e) {\n                if (g(e)) {\n                    var t = e.op;\n                    return \"add\" === t || \"remove\" === t || \"replace\" === t\n                }\n                return !1\n            }\n\n            function v(e) {\n                return h(e) || g(e) && \"mutation\" === e.type\n            }\n\n            function m(e) {\n                return v(e) && (\"add\" === e.op || \"replace\" === e.op || \"merge\" === e.op || \"mergeDeep\" === e.op)\n            }\n\n            function g(e) {\n                return e && \"object\" === (void 0 === e ? \"undefined\" : (0, b.default)(e))\n            }\n\n            function y(e, t) {\n                try {\n                    return S.default.getValueByPointer(e, t)\n                } catch (e) {\n                    return console.error(e), {}\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var b = r(n(1)),\n                _ = r(n(34)),\n                w = r(n(0)),\n                E = r(n(35)),\n                x = r(n(2)),\n                S = r(n(36)),\n                C = r(n(4)),\n                k = r(n(37)),\n                A = r(n(38));\n            t.default = {\n                add: function(e, t) {\n                    return {\n                        op: \"add\",\n                        path: e,\n                        value: t\n                    }\n                },\n                replace: i,\n                remove: function(e, t) {\n                    return {\n                        op: \"remove\",\n                        path: e\n                    }\n                },\n                merge: function(e, t) {\n                    return {\n                        type: \"mutation\",\n                        op: \"merge\",\n                        path: e,\n                        value: t\n                    }\n                },\n                mergeDeep: function(e, t) {\n                    return {\n                        type: \"mutation\",\n                        op: \"mergeDeep\",\n                        path: e,\n                        value: t\n                    }\n                },\n                context: function(e, t) {\n                    return {\n                        type: \"context\",\n                        path: e,\n                        value: t\n                    }\n                },\n                getIn: function(e, t) {\n                    return t.reduce(function(e, t) {\n                        return void 0 !== t && e ? e[t] : e\n                    }, e)\n                },\n                applyPatch: function(e, t, n) {\n                    if (n = n || {}, \"merge\" === (t = (0, x.default)({}, t, {\n                        path: t.path && o(t.path)\n                    })).op) {\n                        var r = y(e, t.path);\n                        (0, x.default)(r, t.value), S.default.applyPatch(e, [i(t.path, r)])\n                    } else if (\"mergeDeep\" === t.op) {\n                        var a = y(e, t.path);\n                        for (var u in t.value) {\n                            var s = t.value[u],\n                                l = Array.isArray(s);\n                            if (l) {\n                                var c = a[u] || [];\n                                a[u] = c.concat(s)\n                            } else if (p(s) && !l) {\n                                var f = (0, x.default)({}, a[u]);\n                                for (var d in s) {\n                                    if (Object.prototype.hasOwnProperty.call(f, d)) {\n                                        f = (0, k.default)((0, A.default)({}, f), s);\n                                        break\n                                    }(0, x.default)(f, (0, E.default)({}, d, s[d]))\n                                }\n                                a[u] = f\n                            } else a[u] = s\n                        }\n                    } else if (\"add\" === t.op && \"\" === t.path && p(t.value)) {\n                        var h = (0, w.default)(t.value).reduce(function(e, n) {\n                            return e.push({\n                                op: \"add\",\n                                path: \"/\" + o(n),\n                                value: t.value[n]\n                            }), e\n                        }, []);\n                        S.default.applyPatch(e, h)\n                    } else if (\"replace\" === t.op && \"\" === t.path) {\n                        var v = t.value;\n                        n.allowMetaPatches && t.meta && m(t) && (Array.isArray(t.value) || p(t.value)) && (v = (0, x.default)({}, v, t.meta)), e = v\n                    } else if (S.default.applyPatch(e, [t]), n.allowMetaPatches && t.meta && m(t) && (Array.isArray(t.value) || p(t.value))) {\n                        var g = y(e, t.path),\n                            b = (0, x.default)({}, g, t.meta);\n                        S.default.applyPatch(e, [i(t.path, b)])\n                    }\n                    return e\n                },\n                parentPathMatch: function(e, t) {\n                    if (!Array.isArray(t)) return !1;\n                    for (var n = 0, r = t.length; n < r; n++)\n                        if (t[n] !== e[n]) return !1;\n                    return !0\n                },\n                flatten: c,\n                fullyNormalizeArray: function(e) {\n                    return f(c(l(e)))\n                },\n                normalizeArray: l,\n                isPromise: function(e) {\n                    return p(e) && d(e.then)\n                },\n                forEachNew: function(e, t) {\n                    try {\n                        return a(e, s, t)\n                    } catch (e) {\n                        return e\n                    }\n                },\n                forEachNewPrimitive: function(e, t) {\n                    try {\n                        return a(e, u, t)\n                    } catch (e) {\n                        return e\n                    }\n                },\n                isJsonPatch: h,\n                isContextPatch: function(e) {\n                    return g(e) && \"context\" === e.type\n                },\n                isPatch: g,\n                isMutation: v,\n                isAdditiveMutation: m,\n                isGenerator: function(e) {\n                    return C.default.isGeneratorFunction(e)\n                },\n                isFunction: d,\n                isObject: p,\n                isError: function(e) {\n                    return e instanceof Error\n                }\n            }, e.exports = t.default\n        }, function(e, t) {\n            e.exports = n(895)\n        }, function(e, t) {\n            e.exports = n(339)\n        }, function(e, t) {\n            e.exports = n(138)\n        }, function(e, t) {\n            e.exports = n(901)\n        }, function(e, t) {\n            e.exports = n(902)\n        }, function(e, t) {\n            e.exports = n(207)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                    n = t.requestInterceptor,\n                    r = t.responseInterceptor,\n                    o = e.withCredentials ? \"include\" : \"same-origin\";\n                return function(t) {\n                    return e({\n                        url: t,\n                        loadSpec: !0,\n                        requestInterceptor: n,\n                        responseInterceptor: r,\n                        headers: {\n                            Accept: \"application/json\"\n                        },\n                        credentials: o\n                    }).then(function(e) {\n                        return e.body\n                    })\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var i = r(n(4)),\n                a = r(n(11));\n            t.makeFetchJSON = o, t.clearCache = function() {\n                s.plugins.refs.clearCache()\n            }, t.default = function(e) {\n                function t(e) {\n                    var t = this;\n                    E && (s.plugins.refs.docCache[E] = e), s.plugins.refs.fetchJSON = o(w, {\n                        requestInterceptor: y,\n                        responseInterceptor: b\n                    });\n                    var n = [s.plugins.refs];\n                    return \"function\" == typeof g && n.push(s.plugins.parameters), \"function\" == typeof m && n.push(s.plugins.properties), \"strict\" !== p && n.push(s.plugins.allOf), (0, l.default)({\n                        spec: e,\n                        context: {\n                            baseDoc: E\n                        },\n                        plugins: n,\n                        allowMetaPatches: h,\n                        pathDiscriminator: v,\n                        parameterMacro: g,\n                        modelPropertyMacro: m\n                    }).then(_ ? function() {\n                        var e = (0, a.default)(i.default.mark(function e(n) {\n                            return i.default.wrap(function(e) {\n                                for (;;) switch (e.prev = e.next) {\n                                    case 0:\n                                        return e.abrupt(\"return\", n);\n                                    case 1:\n                                    case \"end\":\n                                        return e.stop()\n                                }\n                            }, e, t)\n                        }));\n                        return function(t) {\n                            return e.apply(this, arguments)\n                        }\n                    }() : c.normalizeSwagger)\n                }\n                var n = e.fetch,\n                    r = e.spec,\n                    f = e.url,\n                    p = e.mode,\n                    d = e.allowMetaPatches,\n                    h = void 0 === d || d,\n                    v = e.pathDiscriminator,\n                    m = e.modelPropertyMacro,\n                    g = e.parameterMacro,\n                    y = e.requestInterceptor,\n                    b = e.responseInterceptor,\n                    _ = e.skipNormalization,\n                    w = e.http,\n                    E = e.baseDoc;\n                return E = E || f, w = n || w || u.default, r ? t(r) : o(w, {\n                    requestInterceptor: y,\n                    responseInterceptor: b\n                })(E).then(t)\n            };\n            var u = r(n(7)),\n                s = n(31),\n                l = r(s),\n                c = n(5)\n        }, function(e, t) {\n            e.exports = n(203)\n        }, function(e, t) {\n            e.exports = n(91)\n        }, function(e, t) {\n            e.exports = n(2)\n        }, function(e, t) {\n            e.exports = n(3)\n        }, function(e, t, n) {\n            \"use strict\";\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.default = function(e, t) {\n                function n() {\n                    Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = (new Error).stack;\n                    for (var e = arguments.length, n = Array(e), r = 0; r < e; r++) n[r] = arguments[r];\n                    this.message = n[0], t && t.apply(this, n)\n                }\n                return n.prototype = new Error, n.prototype.name = e, n.prototype.constructor = n, n\n            }, e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.isFreelyNamed = function(e) {\n                var t = e[e.length - 1],\n                    n = e.join(\"/\");\n                return r.indexOf(t) > -1 || o.indexOf(n) > -1 || i.some(function(e) {\n                    return n.indexOf(e) > -1\n                })\n            };\n            var r = [\"properties\"],\n                o = [\"definitions\", \"parameters\", \"responses\", \"securityDefinitions\", \"components/schemas\", \"components/responses\", \"components/parameters\", \"components/securitySchemes\"],\n                i = [\"schema/example\"]\n        }, function(e, t, n) {\n            e.exports = n(24)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                var t = this,\n                    n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\n                if (\"string\" == typeof e ? n.url = e : n = e, !(this instanceof o)) return new o(n);\n                (0, a.default)(this, n);\n                var r = this.resolve().then(function() {\n                    return t.disableInterfaces || (0, a.default)(t, o.makeApisTagOperation(t)), t\n                });\n                return r.client = this, r\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var i = r(n(3)),\n                a = r((r(n(25)), n(6))),\n                u = r(n(14)),\n                s = r(n(10)),\n                l = n(7),\n                c = r(l),\n                f = n(16),\n                p = r(f),\n                d = r(n(48)),\n                h = n(49),\n                v = n(51),\n                m = n(5);\n            o.http = c.default, o.makeHttp = l.makeHttp.bind(null, o.http), o.resolve = p.default, o.resolveSubtree = d.default, o.execute = v.execute, o.serializeRes = l.serializeRes, o.serializeHeaders = l.serializeHeaders, o.clearCache = f.clearCache, o.parameterBuilders = v.PARAMETER_BUILDERS, o.makeApisTagOperation = h.makeApisTagOperation, o.buildRequest = v.buildRequest, o.helpers = {\n                opId: m.opId\n            }, o.prototype = {\n                http: c.default,\n                execute: function(e) {\n                    return this.applyDefaults(), o.execute((0, i.default)({\n                        spec: this.spec,\n                        http: this.http,\n                        securities: {\n                            authorized: this.authorizations\n                        },\n                        contextUrl: \"string\" == typeof this.url ? this.url : void 0\n                    }, e))\n                },\n                resolve: function() {\n                    var e = this;\n                    return o.resolve({\n                        spec: this.spec,\n                        url: this.url,\n                        allowMetaPatches: this.allowMetaPatches,\n                        requestInterceptor: this.requestInterceptor || null,\n                        responseInterceptor: this.responseInterceptor || null\n                    }).then(function(t) {\n                        return e.originalSpec = e.spec, e.spec = t.spec, e.errors = t.errors, e\n                    })\n                }\n            }, o.prototype.applyDefaults = function() {\n                var e = this.spec,\n                    t = this.url;\n                if (t && (0, u.default)(t, \"http\")) {\n                    var n = s.default.parse(t);\n                    e.host || (e.host = n.host), e.schemes || (e.schemes = [n.protocol.replace(\":\", \"\")]), e.basePath || (e.basePath = \"/\")\n                }\n            }, t.default = o, e.exports = t.default\n        }, function(e, t) {\n            e.exports = n(904)\n        }, function(e, t) {\n            e.exports = n(18)\n        }, function(e, t) {\n            e.exports = n(905)\n        }, function(e, t) {\n            e.exports = n(906)\n        }, function(e, t) {\n            e.exports = n(342)\n        }, function(e, t) {\n            e.exports = n(909)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.plugins = t.SpecMap = void 0;\n            var o = r(n(8)),\n                i = r(n(1)),\n                a = r(n(17)),\n                u = r(n(4)),\n                s = r(n(0)),\n                l = r(n(18)),\n                c = r(n(32)),\n                f = r(n(2)),\n                p = r(n(19)),\n                d = r(n(20));\n            t.default = function(e) {\n                return new w(e).dispatch()\n            };\n            var h = r(n(33)),\n                v = r(n(9)),\n                m = r(n(39)),\n                g = r(n(43)),\n                y = r(n(44)),\n                b = r(n(45)),\n                _ = r(n(46)),\n                w = function() {\n                    function e(t) {\n                        (0, p.default)(this, e), (0, f.default)(this, {\n                            spec: \"\",\n                            debugLevel: \"info\",\n                            plugins: [],\n                            pluginHistory: {},\n                            errors: [],\n                            mutations: [],\n                            promisedPatches: [],\n                            state: {},\n                            patches: [],\n                            context: {},\n                            contextTree: new _.default,\n                            showDebug: !1,\n                            allPatches: [],\n                            pluginProp: \"specMap\",\n                            libMethods: (0, f.default)((0, c.default)(this), v.default),\n                            allowMetaPatches: !1\n                        }, t), this.get = this._get.bind(this), this.getContext = this._getContext.bind(this), this.hasRun = this._hasRun.bind(this), this.wrappedPlugins = this.plugins.map(this.wrapPlugin.bind(this)).filter(v.default.isFunction), this.patches.push(v.default.add([], this.spec)), this.patches.push(v.default.context([], this.context)), this.updatePatches(this.patches)\n                    }\n                    return (0, d.default)(e, [{\n                        key: \"debug\",\n                        value: function(e) {\n                            if (this.debugLevel === e) {\n                                for (var t, n = arguments.length, r = Array(n > 1 ? n - 1 : 0), o = 1; o < n; o++) r[o - 1] = arguments[o];\n                                (t = console).log.apply(t, r)\n                            }\n                        }\n                    }, {\n                        key: \"verbose\",\n                        value: function(e) {\n                            if (\"verbose\" === this.debugLevel) {\n                                for (var t, n = arguments.length, r = Array(n > 1 ? n - 1 : 0), o = 1; o < n; o++) r[o - 1] = arguments[o];\n                                (t = console).log.apply(t, [\"[\" + e + \"]   \"].concat(r))\n                            }\n                        }\n                    }, {\n                        key: \"wrapPlugin\",\n                        value: function(e, t) {\n                            var n = this.pathDiscriminator,\n                                r = null,\n                                o = void 0;\n                            return e[this.pluginProp] ? (r = e, o = e[this.pluginProp]) : v.default.isFunction(e) ? o = e : v.default.isObject(e) && (o = function(e) {\n                                var t = function(e, t) {\n                                    return !Array.isArray(e) || e.every(function(e, n) {\n                                        return e === t[n]\n                                    })\n                                };\n                                return u.default.mark(function r(o, i) {\n                                    var a, c, f, p, d, h, m, g, y;\n                                    return u.default.wrap(function(r) {\n                                        for (;;) switch (r.prev = r.next) {\n                                            case 0:\n                                                y = function r(o, f, p) {\n                                                    var d, h, m, g, y, b, _, w, E, x, S, C, k, A, O, P;\n                                                    return u.default.wrap(function(a) {\n                                                        for (;;) switch (a.prev = a.next) {\n                                                            case 0:\n                                                                if (v.default.isObject(o)) {\n                                                                    a.next = 6;\n                                                                    break\n                                                                }\n                                                                if (e.key !== f[f.length - 1]) {\n                                                                    a.next = 4;\n                                                                    break\n                                                                }\n                                                                return a.next = 4, e.plugin(o, e.key, f, i);\n                                                            case 4:\n                                                                a.next = 48;\n                                                                break;\n                                                            case 6:\n                                                                d = f.length - 1, h = f[d], m = f.indexOf(\"properties\"), g = \"properties\" === h && d === m, y = i.allowMetaPatches && c[o.$$ref], b = !0, _ = !1, w = void 0, a.prev = 14, E = (0, l.default)((0, s.default)(o));\n                                                            case 16:\n                                                                if (b = (x = E.next()).done) {\n                                                                    a.next = 34;\n                                                                    break\n                                                                }\n                                                                if (S = x.value, C = o[S], k = f.concat(S), A = v.default.isObject(C), O = o.$$ref, y) {\n                                                                    a.next = 26;\n                                                                    break\n                                                                }\n                                                                if (!A) {\n                                                                    a.next = 26;\n                                                                    break\n                                                                }\n                                                                return i.allowMetaPatches && O && (c[O] = !0), a.delegateYield(r(C, k, p), \"t0\", 26);\n                                                            case 26:\n                                                                if (g || S !== e.key) {\n                                                                    a.next = 31;\n                                                                    break\n                                                                }\n                                                                if (P = t(n, f), n && !P) {\n                                                                    a.next = 31;\n                                                                    break\n                                                                }\n                                                                return a.next = 31, e.plugin(C, S, k, i, p);\n                                                            case 31:\n                                                                b = !0, a.next = 16;\n                                                                break;\n                                                            case 34:\n                                                                a.next = 40;\n                                                                break;\n                                                            case 36:\n                                                                a.prev = 36, a.t1 = a.catch(14), _ = !0, w = a.t1;\n                                                            case 40:\n                                                                a.prev = 40, a.prev = 41, !b && E.return && E.return();\n                                                            case 43:\n                                                                if (a.prev = 43, !_) {\n                                                                    a.next = 46;\n                                                                    break\n                                                                }\n                                                                throw w;\n                                                            case 46:\n                                                                return a.finish(43);\n                                                            case 47:\n                                                                return a.finish(40);\n                                                            case 48:\n                                                            case \"end\":\n                                                                return a.stop()\n                                                        }\n                                                    }, a, this, [\n                                                        [14, 36, 40, 48],\n                                                        [41, , 43, 47]\n                                                    ])\n                                                }, a = u.default.mark(y), c = {}, f = !0, p = !1, d = void 0, r.prev = 6, h = (0, l.default)(o.filter(v.default.isAdditiveMutation));\n                                            case 8:\n                                                if (f = (m = h.next()).done) {\n                                                    r.next = 14;\n                                                    break\n                                                }\n                                                return g = m.value, r.delegateYield(y(g.value, g.path, g), \"t0\", 11);\n                                            case 11:\n                                                f = !0, r.next = 8;\n                                                break;\n                                            case 14:\n                                                r.next = 20;\n                                                break;\n                                            case 16:\n                                                r.prev = 16, r.t1 = r.catch(6), p = !0, d = r.t1;\n                                            case 20:\n                                                r.prev = 20, r.prev = 21, !f && h.return && h.return();\n                                            case 23:\n                                                if (r.prev = 23, !p) {\n                                                    r.next = 26;\n                                                    break\n                                                }\n                                                throw d;\n                                            case 26:\n                                                return r.finish(23);\n                                            case 27:\n                                                return r.finish(20);\n                                            case 28:\n                                            case \"end\":\n                                                return r.stop()\n                                        }\n                                    }, r, this, [\n                                        [6, 16, 20, 28],\n                                        [21, , 23, 27]\n                                    ])\n                                })\n                            }(e)), (0, f.default)(o.bind(r), {\n                                pluginName: e.name || t,\n                                isGenerator: v.default.isGenerator(o)\n                            })\n                        }\n                    }, {\n                        key: \"nextPlugin\",\n                        value: function() {\n                            var e = this;\n                            return (0, h.default)(this.wrappedPlugins, function(t) {\n                                return e.getMutationsForPlugin(t).length > 0\n                            })\n                        }\n                    }, {\n                        key: \"nextPromisedPatch\",\n                        value: function() {\n                            if (this.promisedPatches.length > 0) return a.default.race(this.promisedPatches.map(function(e) {\n                                return e.value\n                            }))\n                        }\n                    }, {\n                        key: \"getPluginHistory\",\n                        value: function(e) {\n                            var t = this.getPluginName(e);\n                            return this.pluginHistory[t] || []\n                        }\n                    }, {\n                        key: \"getPluginRunCount\",\n                        value: function(e) {\n                            return this.getPluginHistory(e).length\n                        }\n                    }, {\n                        key: \"getPluginHistoryTip\",\n                        value: function(e) {\n                            var t = this.getPluginHistory(e);\n                            return t && t[t.length - 1] || {}\n                        }\n                    }, {\n                        key: \"getPluginMutationIndex\",\n                        value: function(e) {\n                            var t = this.getPluginHistoryTip(e).mutationIndex;\n                            return \"number\" != typeof t ? -1 : t\n                        }\n                    }, {\n                        key: \"getPluginName\",\n                        value: function(e) {\n                            return e.pluginName\n                        }\n                    }, {\n                        key: \"updatePluginHistory\",\n                        value: function(e, t) {\n                            var n = this.getPluginName(e);\n                            (this.pluginHistory[n] = this.pluginHistory[n] || []).push(t)\n                        }\n                    }, {\n                        key: \"updatePatches\",\n                        value: function(e, t) {\n                            var n = this;\n                            v.default.normalizeArray(e).forEach(function(e) {\n                                if (e instanceof Error) n.errors.push(e);\n                                else try {\n                                    if (!v.default.isObject(e)) return void n.debug(\"updatePatches\", \"Got a non-object patch\", e);\n                                    if (n.showDebug && n.allPatches.push(e), v.default.isPromise(e.value)) return n.promisedPatches.push(e), void n.promisedPatchThen(e);\n                                    if (v.default.isContextPatch(e)) return void n.setContext(e.path, e.value);\n                                    if (v.default.isMutation(e)) return void n.updateMutations(e)\n                                } catch (e) {\n                                    console.error(e), n.errors.push(e)\n                                }\n                            })\n                        }\n                    }, {\n                        key: \"updateMutations\",\n                        value: function(e) {\n                            \"object\" === (0, i.default)(e.value) && !Array.isArray(e.value) && this.allowMetaPatches && (e.value = (0, f.default)({}, e.value));\n                            var t = v.default.applyPatch(this.state, e, {\n                                allowMetaPatches: this.allowMetaPatches\n                            });\n                            t && (this.mutations.push(e), this.state = t)\n                        }\n                    }, {\n                        key: \"removePromisedPatch\",\n                        value: function(e) {\n                            var t = this.promisedPatches.indexOf(e);\n                            t < 0 ? this.debug(\"Tried to remove a promisedPatch that isn't there!\") : this.promisedPatches.splice(t, 1)\n                        }\n                    }, {\n                        key: \"promisedPatchThen\",\n                        value: function(e) {\n                            var t = this;\n                            return e.value = e.value.then(function(n) {\n                                var r = (0, f.default)({}, e, {\n                                    value: n\n                                });\n                                t.removePromisedPatch(e), t.updatePatches(r)\n                            }).catch(function(n) {\n                                t.removePromisedPatch(e), t.updatePatches(n)\n                            })\n                        }\n                    }, {\n                        key: \"getMutations\",\n                        value: function(e, t) {\n                            return e = e || 0, \"number\" != typeof t && (t = this.mutations.length), this.mutations.slice(e, t)\n                        }\n                    }, {\n                        key: \"getCurrentMutations\",\n                        value: function() {\n                            return this.getMutationsForPlugin(this.getCurrentPlugin())\n                        }\n                    }, {\n                        key: \"getMutationsForPlugin\",\n                        value: function(e) {\n                            var t = this.getPluginMutationIndex(e);\n                            return this.getMutations(t + 1)\n                        }\n                    }, {\n                        key: \"getCurrentPlugin\",\n                        value: function() {\n                            return this.currentPlugin\n                        }\n                    }, {\n                        key: \"getPatchesOfType\",\n                        value: function(e, t) {\n                            return e.filter(t)\n                        }\n                    }, {\n                        key: \"getLib\",\n                        value: function() {\n                            return this.libMethods\n                        }\n                    }, {\n                        key: \"_get\",\n                        value: function(e) {\n                            return v.default.getIn(this.state, e)\n                        }\n                    }, {\n                        key: \"_getContext\",\n                        value: function(e) {\n                            return this.contextTree.get(e)\n                        }\n                    }, {\n                        key: \"setContext\",\n                        value: function(e, t) {\n                            return this.contextTree.set(e, t)\n                        }\n                    }, {\n                        key: \"_hasRun\",\n                        value: function(e) {\n                            return this.getPluginRunCount(this.getCurrentPlugin()) > (e || 0)\n                        }\n                    }, {\n                        key: \"_clone\",\n                        value: function(e) {\n                            return JSON.parse((0, o.default)(e))\n                        }\n                    }, {\n                        key: \"dispatch\",\n                        value: function() {\n                            function e(e) {\n                                e && (e = v.default.fullyNormalizeArray(e), n.updatePatches(e, r))\n                            }\n                            var t = this,\n                                n = this,\n                                r = this.nextPlugin();\n                            if (!r) {\n                                var o = this.nextPromisedPatch();\n                                if (o) return o.then(function() {\n                                    return t.dispatch()\n                                }).catch(function() {\n                                    return t.dispatch()\n                                });\n                                var i = {\n                                    spec: this.state,\n                                    errors: this.errors\n                                };\n                                return this.showDebug && (i.patches = this.allPatches), a.default.resolve(i)\n                            }\n                            if (n.pluginCount = n.pluginCount || {}, n.pluginCount[r] = (n.pluginCount[r] || 0) + 1, n.pluginCount[r] > 100) return a.default.resolve({\n                                spec: n.state,\n                                errors: n.errors.concat(new Error(\"We've reached a hard limit of 100 plugin runs\"))\n                            });\n                            if (r !== this.currentPlugin && this.promisedPatches.length) {\n                                var u = this.promisedPatches.map(function(e) {\n                                    return e.value\n                                });\n                                return a.default.all(u.map(function(e) {\n                                    return e.then(Function, Function)\n                                })).then(function() {\n                                    return t.dispatch()\n                                })\n                            }\n                            return function() {\n                                n.currentPlugin = r;\n                                var t = n.getCurrentMutations(),\n                                    o = n.mutations.length - 1;\n                                try {\n                                    if (r.isGenerator) {\n                                        var i = !0,\n                                            a = !1,\n                                            u = void 0;\n                                        try {\n                                            for (var s, p = (0, l.default)(r(t, n.getLib())); !(i = (s = p.next()).done); i = !0) e(s.value)\n                                        } catch (e) {\n                                            a = !0, u = e\n                                        } finally {\n                                            try {\n                                                !i && p.return && p.return()\n                                            } finally {\n                                                if (a) throw u\n                                            }\n                                        }\n                                    } else e(r(t, n.getLib()))\n                                } catch (t) {\n                                    console.error(t), e([(0, f.default)((0, c.default)(t), {\n                                        plugin: r\n                                    })])\n                                } finally {\n                                    n.updatePluginHistory(r, {\n                                        mutationIndex: o\n                                    })\n                                }\n                                return n.dispatch()\n                            }()\n                        }\n                    }]), e\n                }(),\n                E = {\n                    refs: m.default,\n                    allOf: g.default,\n                    parameters: y.default,\n                    properties: b.default\n                };\n            t.SpecMap = w, t.plugins = E\n        }, function(e, t) {\n            e.exports = n(349)\n        }, function(e, t) {\n            e.exports = n(287)\n        }, function(e, t) {\n            e.exports = n(83)\n        }, function(e, t) {\n            e.exports = n(22)\n        }, function(e, t) {\n            e.exports = n(910)\n        }, function(e, t) {\n            e.exports = n(178)\n        }, function(e, t) {\n            e.exports = n(913)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e, t) {\n                if (!A.test(e)) {\n                    if (!t) throw new O(\"Tried to resolve a relative URL, without having a basePath. path: '\" + e + \"' basePath: '\" + t + \"'\");\n                    return x.default.resolve(t, e)\n                }\n                return e\n            }\n\n            function i(e, t) {\n                return new O(\"Could not resolve reference because of: \" + e.message, t, e)\n            }\n\n            function a(e) {\n                return (e + \"\").split(\"#\")\n            }\n\n            function u(e, t) {\n                var n = P[e];\n                if (n && !S.default.isPromise(n)) try {\n                    var r = l(t, n);\n                    return (0, b.default)(g.default.resolve(r), {\n                        __value: r\n                    })\n                } catch (e) {\n                    return g.default.reject(e)\n                }\n                return s(e).then(function(e) {\n                    return l(t, e)\n                })\n            }\n\n            function s(e) {\n                var t = P[e];\n                return t ? S.default.isPromise(t) ? t : g.default.resolve(t) : (P[e] = I.fetchJSON(e).then(function(t) {\n                    return P[e] = t, t\n                }), P[e])\n            }\n\n            function l(e, t) {\n                var n = c(e);\n                if (n.length < 1) return t;\n                var r = S.default.getIn(t, n);\n                if (void 0 === r) throw new O(\"Could not resolve pointer: \" + e + \" does not exist in document\", {\n                    pointer: e\n                });\n                return r\n            }\n\n            function c(e) {\n                if (\"string\" != typeof e) throw new TypeError(\"Expected a string, got a \" + (void 0 === e ? \"undefined\" : (0, v.default)(e)));\n                return \"/\" === e[0] && (e = e.substr(1)), \"\" === e ? [] : e.split(\"/\").map(f)\n            }\n\n            function f(e) {\n                return \"string\" != typeof e ? e : E.default.unescape(e.replace(/~1/g, \"/\").replace(/~0/g, \"~\"))\n            }\n\n            function p(e) {\n                return E.default.escape(e.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"))\n            }\n\n            function d(e, t) {\n                if (j(t)) return !0;\n                var n = e.charAt(t.length),\n                    r = t.slice(-1);\n                return 0 === e.indexOf(t) && (!n || \"/\" === n || \"#\" === n) && \"#\" !== r\n            }\n\n            function h(e, t, n, r) {\n                var o = T.get(r);\n                o || (o = {}, T.set(r, o));\n                var i = function(e) {\n                        return 0 === e.length ? \"\" : \"/\" + e.map(p).join(\"/\")\n                    }(n),\n                    a = (t || \"<specmap-base>\") + \"#\" + e;\n                if (t == r.contextTree.get([]).baseDoc && d(i, e)) return !0;\n                var u = \"\";\n                if (n.some(function(e) {\n                    return u = u + \"/\" + p(e), o[u] && o[u].some(function(e) {\n                        return d(e, a) || d(a, e)\n                    })\n                })) return !0;\n                o[i] = (o[i] || []).concat(a)\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var v = r(n(1)),\n                m = r(n(0)),\n                g = r(n(17)),\n                y = r(n(40)),\n                b = r(n(2)),\n                _ = n(41),\n                w = r(n(15)),\n                E = r(n(42)),\n                x = r(n(10)),\n                S = r(n(9)),\n                C = r(n(21)),\n                k = n(22),\n                A = new RegExp(\"^([a-z]+://|//)\", \"i\"),\n                O = (0, C.default)(\"JSONRefError\", function(e, t, n) {\n                    this.originalError = n, (0, b.default)(this, t || {})\n                }),\n                P = {},\n                T = new y.default,\n                M = {\n                    key: \"$ref\",\n                    plugin: function(e, t, n, r) {\n                        var s = n.slice(0, -1);\n                        if (!(0, k.isFreelyNamed)(s)) {\n                            var l = r.getContext(n).baseDoc;\n                            if (\"string\" != typeof e) return new O(\"$ref: must be a string (JSON-Ref)\", {\n                                $ref: e,\n                                baseDoc: l,\n                                fullPath: n\n                            });\n                            var f = a(e),\n                                p = f[0],\n                                d = f[1] || \"\",\n                                v = void 0;\n                            try {\n                                v = l || p ? o(p, l) : null\n                            } catch (t) {\n                                return i(t, {\n                                    pointer: d,\n                                    $ref: e,\n                                    basePath: v,\n                                    fullPath: n\n                                })\n                            }\n                            var g = void 0,\n                                y = void 0;\n                            if (!h(d, v, s, r)) {\n                                if (null == v ? (y = c(d), void 0 === (g = r.get(y)) && (g = new O(\"Could not resolve reference: \" + e, {\n                                    pointer: d,\n                                    $ref: e,\n                                    baseDoc: l,\n                                    fullPath: n\n                                }))) : g = null != (g = u(v, d)).__value ? g.__value : g.catch(function(t) {\n                                    throw i(t, {\n                                        pointer: d,\n                                        $ref: e,\n                                        baseDoc: l,\n                                        fullPath: n\n                                    })\n                                }), g instanceof Error) return [S.default.remove(n), g];\n                                var b = S.default.replace(s, g, {\n                                    $$ref: e\n                                });\n                                if (v && v !== l) return [b, S.default.context(s, {\n                                    baseDoc: v\n                                })];\n                                try {\n                                    if (! function(e, t) {\n                                        var n = [e];\n                                        return t.path.reduce(function(e, t) {\n                                            return n.push(e[t]), e[t]\n                                        }, e),\n                                            function e(t) {\n                                                return S.default.isObject(t) && (n.indexOf(t) >= 0 || (0, m.default)(t).some(function(n) {\n                                                    return e(t[n])\n                                                }))\n                                            }(t.value)\n                                    }(r.state, b)) return b\n                                } catch (e) {\n                                    return null\n                                }\n                            }\n                        }\n                    }\n                },\n                I = (0, b.default)(M, {\n                    docCache: P,\n                    absoluteify: o,\n                    clearCache: function(e) {\n                        void 0 !== e ? delete P[e] : (0, m.default)(P).forEach(function(e) {\n                            delete P[e]\n                        })\n                    },\n                    JSONRefError: O,\n                    wrapError: i,\n                    getDoc: s,\n                    split: a,\n                    extractFromDoc: u,\n                    fetchJSON: function(e) {\n                        return (0, _.fetch)(e, {\n                            headers: {\n                                Accept: \"application/json, application/yaml\"\n                            },\n                            loadSpec: !0\n                        }).then(function(e) {\n                            return e.text()\n                        }).then(function(e) {\n                            return w.default.safeLoad(e)\n                        })\n                    },\n                    extract: l,\n                    jsonPointerToArray: c,\n                    unescapeJsonPointerToken: f\n                });\n            t.default = I;\n            var j = function(e) {\n                return !e || \"/\" === e || \"#\" === e\n            };\n            e.exports = t.default\n        }, function(e, t) {\n            e.exports = n(914)\n        }, function(e, t) {\n            e.exports = n(925)\n        }, function(e, t) {\n            e.exports = n(926)\n        }, function(e, t, n) {\n            \"use strict\";\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var r = function(e) {\n                    return e && e.__esModule ? e : {\n                        default: e\n                    }\n                }(n(2)),\n                o = n(22);\n            t.default = {\n                key: \"allOf\",\n                plugin: function(e, t, n, i, a) {\n                    if (!a.meta || !a.meta.$$ref) {\n                        var u = n.slice(0, -1);\n                        if (!(0, o.isFreelyNamed)(u)) {\n                            if (!Array.isArray(e)) {\n                                var s = new TypeError(\"allOf must be an array\");\n                                return s.fullPath = n, s\n                            }\n                            var l = !1,\n                                c = a.value;\n                            u.forEach(function(e) {\n                                c && (c = c[e])\n                            }), delete(c = (0, r.default)({}, c)).allOf;\n                            var f = [i.replace(u, {})].concat(e.map(function(e, t) {\n                                if (!i.isObject(e)) {\n                                    if (l) return null;\n                                    l = !0;\n                                    var r = new TypeError(\"Elements in allOf must be objects\");\n                                    return r.fullPath = n, r\n                                }\n                                return i.mergeDeep(u, e)\n                            }));\n                            return f.push(i.mergeDeep(u, c)), c.$$ref || f.push(i.remove([].concat(u, \"$$ref\"))), f\n                        }\n                    }\n                }\n            }, e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var o = r(n(2)),\n                i = r(n(9));\n            t.default = {\n                key: \"parameters\",\n                plugin: function(e, t, n, r, a) {\n                    if (Array.isArray(e) && e.length) {\n                        var u = (0, o.default)([], e),\n                            s = n.slice(0, -1),\n                            l = (0, o.default)({}, i.default.getIn(r.spec, s));\n                        return e.forEach(function(e, t) {\n                            try {\n                                u[t].default = r.parameterMacro(l, e)\n                            } catch (e) {\n                                var o = new Error(e);\n                                return o.fullPath = n, o\n                            }\n                        }), i.default.replace(n, u)\n                    }\n                    return i.default.replace(n, e)\n                }\n            }, e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var o = r(n(2)),\n                i = r(n(9));\n            t.default = {\n                key: \"properties\",\n                plugin: function(e, t, n, r) {\n                    var a = (0, o.default)({}, e);\n                    for (var u in e) try {\n                        a[u].default = r.modelPropertyMacro(a[u])\n                    } catch (e) {\n                        var s = new Error(e);\n                        return s.fullPath = n, s\n                    }\n                    return i.default.replace(n, a)\n                }\n            }, e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e, t) {\n                return i({\n                    children: {}\n                }, e, t)\n            }\n\n            function i(e, t, n) {\n                return e.value = t || {}, e.protoValue = n ? (0, u.default)({}, n.protoValue, e.value) : e.value, (0, a.default)(e.children).forEach(function(t) {\n                    var n = e.children[t];\n                    e.children[t] = i(n, n.value, e)\n                }), e\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var a = r(n(0)),\n                u = r(n(3)),\n                s = r(n(19)),\n                l = r(n(20)),\n                c = function() {\n                    function e(t) {\n                        (0, s.default)(this, e), this.root = o(t || {})\n                    }\n                    return (0, l.default)(e, [{\n                        key: \"set\",\n                        value: function(e, t) {\n                            var n = this.getParent(e, !0);\n                            if (n) {\n                                var r = e[e.length - 1],\n                                    a = n.children;\n                                a[r] ? i(a[r], t, n) : a[r] = o(t, n)\n                            } else i(this.root, t, null)\n                        }\n                    }, {\n                        key: \"get\",\n                        value: function(e) {\n                            if ((e = e || []).length < 1) return this.root.value;\n                            for (var t = this.root, n = void 0, r = void 0, o = 0; o < e.length && (r = e[o], (n = t.children)[r]); o++) t = n[r];\n                            return t && t.protoValue\n                        }\n                    }, {\n                        key: \"getParent\",\n                        value: function(e, t) {\n                            return !e || e.length < 1 ? null : e.length < 2 ? this.root : e.slice(0, -1).reduce(function(e, n) {\n                                if (!e) return e;\n                                var r = e.children;\n                                return !r[n] && t && (r[n] = o(null, e)), r[n]\n                            }, this.root)\n                        }\n                    }]), e\n                }();\n            t.default = c, e.exports = t.default\n        }, function(e, t) {\n            e.exports = n(38)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var o = r(n(4)),\n                i = r(n(3)),\n                a = r(n(11)),\n                u = r(n(12)),\n                s = r(n(16)),\n                l = n(5);\n            t.default = function() {\n                var e = (0, a.default)(o.default.mark(function e(t, n) {\n                    var r, a, c, f, p, d, h, v, m, g, y = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\n                    return o.default.wrap(function(e) {\n                        for (;;) switch (e.prev = e.next) {\n                            case 0:\n                                return r = y.returnEntireTree, a = y.baseDoc, c = y.requestInterceptor, f = y.responseInterceptor, p = y.parameterMacro, d = y.modelPropertyMacro, h = {\n                                    pathDiscriminator: n,\n                                    baseDoc: a,\n                                    requestInterceptor: c,\n                                    responseInterceptor: f,\n                                    parameterMacro: p,\n                                    modelPropertyMacro: d\n                                }, v = (0, l.normalizeSwagger)({\n                                    spec: t\n                                }), m = v.spec, e.next = 5, (0, s.default)((0, i.default)({}, h, {\n                                    spec: m,\n                                    allowMetaPatches: !0,\n                                    skipNormalization: !0\n                                }));\n                            case 5:\n                                return g = e.sent, !r && Array.isArray(n) && n.length && (g.spec = (0, u.default)(g.spec, n) || null), e.abrupt(\"return\", g);\n                            case 8:\n                            case \"end\":\n                                return e.stop()\n                        }\n                    }, e, this)\n                }));\n                return function(t, n) {\n                    return e.apply(this, arguments)\n                }\n            }(), e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o() {\n                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};\n                return function(t) {\n                    var n = t.pathName,\n                        r = t.method,\n                        o = t.operationId;\n                    return function(t) {\n                        var i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\n                        return e.execute((0, a.default)({\n                            spec: e.spec\n                        }, (0, u.default)(e, \"requestInterceptor\", \"responseInterceptor\", \"userFetch\"), {\n                            pathName: n,\n                            method: r,\n                            parameters: t,\n                            operationId: o\n                        }, i))\n                    }\n                }\n            }\n\n            function i(e) {\n                var t = e.spec,\n                    n = e.cb,\n                    r = void 0 === n ? l : n,\n                    o = e.defaultTag,\n                    i = void 0 === o ? \"default\" : o,\n                    a = e.v2OperationIdCompatibilityMode,\n                    u = {},\n                    f = {};\n                return (0, s.eachOperation)(t, function(e) {\n                    var n = e.pathName,\n                        o = e.method,\n                        l = e.operation;\n                    (l.tags ? c(l.tags) : [i]).forEach(function(e) {\n                        if (\"string\" == typeof e) {\n                            var i = f[e] = f[e] || {},\n                                c = (0, s.opId)(l, n, o, {\n                                    v2OperationIdCompatibilityMode: a\n                                }),\n                                p = r({\n                                    spec: t,\n                                    pathName: n,\n                                    method: o,\n                                    operation: l,\n                                    operationId: c\n                                });\n                            if (u[c]) u[c]++, i[\"\" + c + u[c]] = p;\n                            else if (void 0 !== i[c]) {\n                                var d = u[c] || 1;\n                                u[c] = d + 1, i[\"\" + c + u[c]] = p;\n                                var h = i[c];\n                                delete i[c], i[\"\" + c + d] = h\n                            } else i[c] = p\n                        }\n                    })\n                }), f\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.self = void 0;\n            var a = r(n(3));\n            t.makeExecute = o, t.makeApisTagOperationsOperationExecute = function() {\n                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                    t = f.makeExecute(e),\n                    n = f.mapTagOperations({\n                        v2OperationIdCompatibilityMode: e.v2OperationIdCompatibilityMode,\n                        spec: e.spec,\n                        cb: t\n                    }),\n                    r = {};\n                for (var o in n)\n                    for (var i in r[o] = {\n                        operations: {}\n                    }, n[o]) r[o].operations[i] = {\n                        execute: n[o][i]\n                    };\n                return {\n                    apis: r\n                }\n            }, t.makeApisTagOperation = function() {\n                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                    t = f.makeExecute(e);\n                return {\n                    apis: f.mapTagOperations({\n                        v2OperationIdCompatibilityMode: e.v2OperationIdCompatibilityMode,\n                        spec: e.spec,\n                        cb: t\n                    })\n                }\n            }, t.mapTagOperations = i;\n            var u = r(n(50)),\n                s = n(5),\n                l = function() {\n                    return null\n                },\n                c = function(e) {\n                    return Array.isArray(e) ? e : [e]\n                },\n                f = t.self = {\n                    mapTagOperations: i,\n                    makeExecute: o\n                }\n        }, function(e, t) {\n            e.exports = n(927)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                var t = e.spec,\n                    n = e.operationId,\n                    r = (e.securities, e.requestContentType, e.responseContentType),\n                    o = e.scheme,\n                    a = e.requestInterceptor,\n                    s = e.responseInterceptor,\n                    c = e.contextUrl,\n                    f = e.userFetch,\n                    p = (e.requestBody, e.server),\n                    d = e.serverVariables,\n                    h = e.http,\n                    g = e.parameters,\n                    y = e.parameterBuilders,\n                    O = (0, x.isOAS3)(t);\n                y || (y = O ? _.default : b.default);\n                var P = {\n                    url: \"\",\n                    credentials: h && h.withCredentials ? \"include\" : \"same-origin\",\n                    headers: {},\n                    cookies: {}\n                };\n                a && (P.requestInterceptor = a), s && (P.responseInterceptor = s), f && (P.userFetch = f);\n                var T = (0, x.getOperationRaw)(t, n);\n                if (!T) throw new C(\"Operation \" + n + \" not found\");\n                var M = T.operation,\n                    I = void 0 === M ? {} : M,\n                    j = T.method,\n                    N = T.pathName;\n                if (P.url += i({\n                    spec: t,\n                    scheme: o,\n                    contextUrl: c,\n                    server: p,\n                    serverVariables: d,\n                    pathName: N,\n                    method: j\n                }), !n) return delete P.cookies, P;\n                P.url += N, P.method = (\"\" + j).toUpperCase(), g = g || {};\n                var R = t.paths[N] || {};\n                r && (P.headers.accept = r);\n                var D = A([].concat(S(I.parameters)).concat(S(R.parameters)));\n                D.forEach(function(e) {\n                    var n = y[e.in],\n                        r = void 0;\n                    if (\"body\" === e.in && e.schema && e.schema.properties && (r = g), void 0 === (r = e && e.name && g[e.name]) ? r = e && e.name && g[e.in + \".\" + e.name] : k(e.name, D).length > 1 && console.warn(\"Parameter '\" + e.name + \"' is ambiguous because the defined spec has more than one parameter with the name: '\" + e.name + \"' and the passed-in parameter values did not define an 'in' value.\"), null !== r) {\n                        if (void 0 !== e.default && void 0 === r && (r = e.default), void 0 === r && e.required && !e.allowEmptyValue) throw new Error(\"Required parameter \" + e.name + \" is not provided\");\n                        if (O && e.schema && \"object\" === e.schema.type && \"string\" == typeof r) try {\n                            r = JSON.parse(r)\n                        } catch (e) {\n                            throw new Error(\"Could not parse object parameter value string as JSON\")\n                        }\n                        n && n({\n                            req: P,\n                            parameter: e,\n                            value: r,\n                            operation: I,\n                            spec: t\n                        })\n                    }\n                });\n                var L = (0, u.default)({}, e, {\n                    operation: I\n                });\n                if ((P = O ? (0, w.default)(L, P) : (0, E.default)(L, P)).cookies && (0, l.default)(P.cookies).length) {\n                    var U = (0, l.default)(P.cookies).reduce(function(e, t) {\n                        var n = P.cookies[t];\n                        return e + (e ? \"&\" : \"\") + v.default.serialize(t, n)\n                    }, \"\");\n                    P.headers.Cookie = U\n                }\n                return P.cookies && delete P.cookies, (0, m.mergeInQueryOrForm)(P), P\n            }\n\n            function i(e) {\n                return (0, x.isOAS3)(e.spec) ? function(e) {\n                    var t = e.spec,\n                        n = e.pathName,\n                        r = e.method,\n                        o = e.server,\n                        i = e.contextUrl,\n                        a = e.serverVariables,\n                        u = void 0 === a ? {} : a,\n                        s = (0, f.default)(t, [\"paths\", n, (r || \"\").toLowerCase(), \"servers\"]) || (0, f.default)(t, [\"paths\", n, \"servers\"]) || (0, f.default)(t, [\"servers\"]),\n                        l = \"\",\n                        c = null;\n                    if (o && s && s.length) {\n                        var p = s.map(function(e) {\n                            return e.url\n                        });\n                        p.indexOf(o) > -1 && (l = o, c = s[p.indexOf(o)])\n                    }!l && s && s.length && (l = s[0].url, c = s[0]), l.indexOf(\"{\") > -1 && function(e) {\n                        for (var t = [], n = /{([^}]+)}/g, r = void 0; r = n.exec(e);) t.push(r[1]);\n                        return t\n                    }(l).forEach(function(e) {\n                        if (c.variables && c.variables[e]) {\n                            var t = c.variables[e],\n                                n = u[e] || t.default,\n                                r = new RegExp(\"{\" + e + \"}\", \"g\");\n                            l = l.replace(r, n)\n                        }\n                    });\n                    return function() {\n                        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : \"\",\n                            t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"\",\n                            n = h.default.parse(e),\n                            r = h.default.parse(t),\n                            o = P(n.protocol) || P(r.protocol) || \"\",\n                            i = n.host || r.host,\n                            a = n.pathname || \"\",\n                            u = void 0;\n                        return \"/\" === (u = o && i ? o + \"://\" + (i + a) : a)[u.length - 1] ? u.slice(0, -1) : u\n                    }(l, i)\n                }(e) : function(e) {\n                    var t = e.spec,\n                        n = e.scheme,\n                        r = e.contextUrl,\n                        o = void 0 === r ? \"\" : r,\n                        i = h.default.parse(o),\n                        a = Array.isArray(t.schemes) ? t.schemes[0] : null,\n                        u = n || a || P(i.protocol) || \"http\",\n                        s = t.host || i.host || \"\",\n                        l = t.basePath || \"\",\n                        c = void 0;\n                    return \"/\" === (c = u && s ? u + \"://\" + (s + l) : l)[c.length - 1] ? c.slice(0, -1) : c\n                }(e)\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.self = void 0;\n            var a = r(n(8)),\n                u = r(n(3)),\n                s = r(n(52)),\n                l = r(n(0)),\n                c = r(n(2));\n            t.execute = function(e) {\n                var t = e.http,\n                    n = e.fetch,\n                    r = e.spec,\n                    o = e.operationId,\n                    i = e.pathName,\n                    l = e.method,\n                    c = e.parameters,\n                    f = e.securities,\n                    h = (0, s.default)(e, [\"http\", \"fetch\", \"spec\", \"operationId\", \"pathName\", \"method\", \"parameters\", \"securities\"]),\n                    v = t || n || g.default;\n                i && l && !o && (o = (0, x.legacyIdFromPathMethod)(i, l));\n                var m = O.buildRequest((0, u.default)({\n                    spec: r,\n                    operationId: o,\n                    parameters: c,\n                    securities: f,\n                    http: v\n                }, h));\n                return m.body && ((0, p.default)(m.body) || (0, d.default)(m.body)) && (m.body = (0, a.default)(m.body)), v(m)\n            }, t.buildRequest = o, t.baseUrl = i;\n            var f = r((r(n(6)), n(12))),\n                p = r(n(53)),\n                d = r(n(54)),\n                h = r((r(n(13)), n(10))),\n                v = r(n(55)),\n                m = n(7),\n                g = r(m),\n                y = r(n(21)),\n                b = r(n(56)),\n                _ = r(n(57)),\n                w = r(n(62)),\n                E = r(n(64)),\n                x = n(5),\n                S = function(e) {\n                    return Array.isArray(e) ? e : []\n                },\n                C = (0, y.default)(\"OperationNotFoundError\", function(e, t, n) {\n                    this.originalError = n, (0, c.default)(this, t || {})\n                }),\n                k = function(e, t) {\n                    return t.filter(function(t) {\n                        return t.name === e\n                    })\n                },\n                A = function(e) {\n                    var t = {};\n                    e.forEach(function(e) {\n                        t[e.in] || (t[e.in] = {}), t[e.in][e.name] = e\n                    });\n                    var n = [];\n                    return (0, l.default)(t).forEach(function(e) {\n                        (0, l.default)(t[e]).forEach(function(r) {\n                            n.push(t[e][r])\n                        })\n                    }), n\n                },\n                O = t.self = {\n                    buildRequest: o\n                },\n                P = function(e) {\n                    return e ? e.replace(/\\W/g, \"\") : null\n                }\n        }, function(e, t) {\n            e.exports = n(84)\n        }, function(e, t) {\n            e.exports = n(227)\n        }, function(e, t) {\n            e.exports = n(24)\n        }, function(e, t) {\n            e.exports = n(930)\n        }, function(e, t, n) {\n            \"use strict\";\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            }), t.default = {\n                body: function(e) {\n                    var t = e.req,\n                        n = e.value;\n                    t.body = n\n                },\n                header: function(e) {\n                    var t = e.req,\n                        n = e.parameter,\n                        r = e.value;\n                    t.headers = t.headers || {}, void 0 !== r && (t.headers[n.name] = r)\n                },\n                query: function(e) {\n                    var t = e.req,\n                        n = e.value,\n                        r = e.parameter;\n                    if (t.query = t.query || {}, !1 === n && \"boolean\" === r.type && (n = \"false\"), 0 === n && [\"number\", \"integer\"].indexOf(r.type) > -1 && (n = \"0\"), n) t.query[r.name] = {\n                        collectionFormat: r.collectionFormat,\n                        value: n\n                    };\n                    else if (r.allowEmptyValue && void 0 !== n) {\n                        var o = r.name;\n                        t.query[o] = t.query[o] || {}, t.query[o].allowEmptyValue = !0\n                    }\n                },\n                path: function(e) {\n                    var t = e.req,\n                        n = e.value,\n                        r = e.parameter;\n                    t.url = t.url.replace(\"{\" + r.name + \"}\", encodeURIComponent(n))\n                },\n                formData: function(e) {\n                    var t = e.req,\n                        n = e.value,\n                        r = e.parameter;\n                    (n || r.allowEmptyValue) && (t.form = t.form || {}, t.form[r.name] = {\n                        value: n,\n                        allowEmptyValue: r.allowEmptyValue,\n                        collectionFormat: r.collectionFormat\n                    })\n                }\n            }, e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var o = r(n(0)),\n                i = r(n(1)),\n                a = r(n(58));\n            t.default = {\n                path: function(e) {\n                    var t = e.req,\n                        n = e.value,\n                        r = e.parameter,\n                        o = r.name,\n                        i = r.style,\n                        u = r.explode,\n                        s = (0, a.default)({\n                            key: r.name,\n                            value: n,\n                            style: i || \"simple\",\n                            explode: u || !1,\n                            escape: !1\n                        });\n                    t.url = t.url.replace(\"{\" + o + \"}\", s)\n                },\n                query: function(e) {\n                    var t = e.req,\n                        n = e.value,\n                        r = e.parameter;\n                    if (t.query = t.query || {}, !1 === n && (n = \"false\"), 0 === n && (n = \"0\"), n) {\n                        var u = void 0 === n ? \"undefined\" : (0, i.default)(n);\n                        \"deepObject\" === r.style ? (0, o.default)(n).forEach(function(e) {\n                            var o = n[e];\n                            t.query[r.name + \"[\" + e + \"]\"] = {\n                                value: (0, a.default)({\n                                    key: e,\n                                    value: o,\n                                    style: \"deepObject\",\n                                    escape: r.allowReserved ? \"unsafe\" : \"reserved\"\n                                }),\n                                skipEncoding: !0\n                            }\n                        }) : \"object\" !== u || Array.isArray(n) || \"form\" !== r.style && r.style || !r.explode && void 0 !== r.explode ? t.query[r.name] = {\n                            value: (0, a.default)({\n                                key: r.name,\n                                value: n,\n                                style: r.style || \"form\",\n                                explode: void 0 === r.explode || r.explode,\n                                escape: r.allowReserved ? \"unsafe\" : \"reserved\"\n                            }),\n                            skipEncoding: !0\n                        } : (0, o.default)(n).forEach(function(e) {\n                            var o = n[e];\n                            t.query[e] = {\n                                value: (0, a.default)({\n                                    key: e,\n                                    value: o,\n                                    style: r.style || \"form\",\n                                    escape: r.allowReserved ? \"unsafe\" : \"reserved\"\n                                }),\n                                skipEncoding: !0\n                            }\n                        })\n                    } else if (r.allowEmptyValue && void 0 !== n) {\n                        var s = r.name;\n                        t.query[s] = t.query[s] || {}, t.query[s].allowEmptyValue = !0\n                    }\n                },\n                header: function(e) {\n                    var t = e.req,\n                        n = e.parameter,\n                        r = e.value;\n                    t.headers = t.headers || {}, u.indexOf(n.name.toLowerCase()) > -1 || void 0 !== r && (t.headers[n.name] = (0, a.default)({\n                        key: n.name,\n                        value: r,\n                        style: n.style || \"simple\",\n                        explode: void 0 !== n.explode && n.explode,\n                        escape: !1\n                    }))\n                },\n                cookie: function(e) {\n                    var t = e.req,\n                        n = e.parameter,\n                        r = e.value;\n                    t.headers = t.headers || {};\n                    var o = void 0 === r ? \"undefined\" : (0, i.default)(r);\n                    if (\"undefined\" !== o) {\n                        var u = \"object\" === o && !Array.isArray(r) && n.explode ? \"\" : n.name + \"=\";\n                        t.headers.Cookie = u + (0, a.default)({\n                            key: n.name,\n                            value: r,\n                            escape: !1,\n                            style: n.style || \"form\",\n                            explode: void 0 !== n.explode && n.explode\n                        })\n                    }\n                }\n            };\n            var u = [\"accept\", \"authorization\", \"content-type\"];\n            e.exports = t.default\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                var t = (arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}).escape,\n                    n = arguments[2];\n                return \"number\" == typeof e && (e = e.toString()), \"string\" == typeof e && e.length && t ? n ? JSON.parse(e) : (0, s.stringToCharArray)(e).map(function(e) {\n                    return c(e) ? e : l(e) && \"unsafe\" === t ? e : ((0, u.default)(e) || []).map(function(e) {\n                        return e.toString(16).toUpperCase()\n                    }).map(function(e) {\n                        return \"%\" + e\n                    }).join(\"\")\n                }).join(\"\") : e\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var i = r(n(0)),\n                a = r(n(1));\n            t.encodeDisallowedCharacters = o, t.default = function(e) {\n                var t = e.value;\n                return Array.isArray(t) ? function(e) {\n                    var t = e.key,\n                        n = e.value,\n                        r = e.style,\n                        i = e.explode,\n                        a = e.escape,\n                        u = function(e) {\n                            return o(e, {\n                                escape: a\n                            })\n                        };\n                    if (\"simple\" === r) return n.map(function(e) {\n                        return u(e)\n                    }).join(\",\");\n                    if (\"label\" === r) return \".\" + n.map(function(e) {\n                        return u(e)\n                    }).join(\".\");\n                    if (\"matrix\" === r) return n.map(function(e) {\n                        return u(e)\n                    }).reduce(function(e, n) {\n                        return !e || i ? (e || \"\") + \";\" + t + \"=\" + n : e + \",\" + n\n                    }, \"\");\n                    if (\"form\" === r) {\n                        var s = i ? \"&\" + t + \"=\" : \",\";\n                        return n.map(function(e) {\n                            return u(e)\n                        }).join(s)\n                    }\n                    if (\"spaceDelimited\" === r) {\n                        var l = i ? t + \"=\" : \"\";\n                        return n.map(function(e) {\n                            return u(e)\n                        }).join(\" \" + l)\n                    }\n                    if (\"pipeDelimited\" === r) {\n                        var c = i ? t + \"=\" : \"\";\n                        return n.map(function(e) {\n                            return u(e)\n                        }).join(\"|\" + c)\n                    }\n                }(e) : \"object\" === (void 0 === t ? \"undefined\" : (0, a.default)(t)) ? function(e) {\n                    var t = e.key,\n                        n = e.value,\n                        r = e.style,\n                        a = e.explode,\n                        u = e.escape,\n                        s = function(e) {\n                            return o(e, {\n                                escape: u\n                            })\n                        },\n                        l = (0, i.default)(n);\n                    return \"simple\" === r ? l.reduce(function(e, t) {\n                        var r = s(n[t]);\n                        return (e ? e + \",\" : \"\") + t + (a ? \"=\" : \",\") + r\n                    }, \"\") : \"label\" === r ? l.reduce(function(e, t) {\n                        var r = s(n[t]);\n                        return (e ? e + \".\" : \".\") + t + (a ? \"=\" : \".\") + r\n                    }, \"\") : \"matrix\" === r && a ? l.reduce(function(e, t) {\n                        var r = s(n[t]);\n                        return (e ? e + \";\" : \";\") + t + \"=\" + r\n                    }, \"\") : \"matrix\" === r ? l.reduce(function(e, r) {\n                        var o = s(n[r]);\n                        return (e ? e + \",\" : \";\" + t + \"=\") + r + \",\" + o\n                    }, \"\") : \"form\" === r ? l.reduce(function(e, t) {\n                        var r = s(n[t]);\n                        return (e ? e + (a ? \"&\" : \",\") : \"\") + t + (a ? \"=\" : \",\") + r\n                    }, \"\") : void 0\n                }(e) : function(e) {\n                    var t = e.key,\n                        n = e.value,\n                        r = e.style,\n                        i = e.escape,\n                        a = function(e) {\n                            return o(e, {\n                                escape: i\n                            })\n                        };\n                    return \"simple\" === r ? a(n) : \"label\" === r ? \".\" + a(n) : \"matrix\" === r ? \";\" + t + \"=\" + a(n) : \"form\" === r ? a(n) : \"deepObject\" === r ? a(n) : void 0\n                }(e)\n            };\n            var u = r((r(n(59)), n(60))),\n                s = n(61),\n                l = function(e) {\n                    return \":/?#[]@!$&'()*+,;=\".indexOf(e) > -1\n                },\n                c = function(e) {\n                    return /^[a-z0-9\\-._~]+$/i.test(e)\n                }\n        }, function(e, t) {\n            e.exports = n(931)\n        }, function(e, t) {\n            e.exports = n(932)\n        }, function(e, t) {\n            e.exports = n(933)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                var t = e.request,\n                    n = e.securities,\n                    r = void 0 === n ? {} : n,\n                    o = e.operation,\n                    i = void 0 === o ? {} : o,\n                    a = e.spec,\n                    f = (0, s.default)({}, t),\n                    p = r.authorized,\n                    d = void 0 === p ? {} : p,\n                    h = i.security || a.security || [],\n                    v = d && !!(0, u.default)(d).length,\n                    m = (0, l.default)(a, [\"components\", \"securitySchemes\"]) || {};\n                return f.headers = f.headers || {}, f.query = f.query || {}, (0, u.default)(r).length && v && h && (!Array.isArray(i.security) || i.security.length) ? (h.forEach(function(e, t) {\n                    for (var n in e) {\n                        var r = d[n],\n                            o = m[n];\n                        if (r) {\n                            var i = r.value || r,\n                                a = o.type;\n                            if (r)\n                                if (\"apiKey\" === a) \"query\" === o.in && (f.query[o.name] = i), \"header\" === o.in && (f.headers[o.name] = i), \"cookie\" === o.in && (f.cookies[o.name] = i);\n                                else if (\"http\" === a) {\n                                    if (\"basic\" === o.scheme) {\n                                        var u = i.username,\n                                            s = i.password,\n                                            l = (0, c.default)(u + \":\" + s);\n                                        f.headers.Authorization = \"Basic \" + l\n                                    }\n                                    \"bearer\" === o.scheme && (f.headers.Authorization = \"Bearer \" + i)\n                                } else if (\"oauth2\" === a) {\n                                    var p = r.token || {},\n                                        h = p.access_token,\n                                        v = p.token_type;\n                                    v && \"bearer\" !== v.toLowerCase() || (v = \"Bearer\"), f.headers.Authorization = v + \" \" + h\n                                }\n                        }\n                    }\n                }), f) : t\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var i = r(n(8)),\n                a = r(n(1)),\n                u = r(n(0));\n            t.default = function(e, t) {\n                var n = e.operation,\n                    r = e.requestBody,\n                    s = e.securities,\n                    l = e.spec,\n                    c = e.attachContentTypeForEmptyPayload,\n                    p = e.requestContentType;\n                t = o({\n                    request: t,\n                    securities: s,\n                    operation: n,\n                    spec: l\n                });\n                var d = n.requestBody || {},\n                    h = (0, u.default)(d.content || {}),\n                    v = p && h.indexOf(p) > -1;\n                if (r || c) {\n                    if (p && v) t.headers[\"Content-Type\"] = p;\n                    else if (!p) {\n                        var m = h[0];\n                        m && (t.headers[\"Content-Type\"] = m, p = m)\n                    }\n                } else p && v && (t.headers[\"Content-Type\"] = p);\n                return r && (p ? h.indexOf(p) > -1 && (\"application/x-www-form-urlencoded\" === p || 0 === p.indexOf(\"multipart/\") ? \"object\" === (void 0 === r ? \"undefined\" : (0, a.default)(r)) ? (t.form = {}, (0, u.default)(r).forEach(function(e) {\n                    var n, o = r[e],\n                        u = void 0;\n                    \"undefined\" != typeof File && (u = o instanceof File), \"undefined\" != typeof Blob && (u = u || o instanceof Blob), void 0 !== f.Buffer && (u = u || f.Buffer.isBuffer(o)), n = \"object\" !== (void 0 === o ? \"undefined\" : (0, a.default)(o)) || u ? o : Array.isArray(o) ? o.toString() : (0, i.default)(o), t.form[e] = {\n                        value: n\n                    }\n                })) : t.form = r : t.body = r) : t.body = r), t\n            }, t.applySecurities = o;\n            var s = r(n(6)),\n                l = r(n(12)),\n                c = r(n(13)),\n                f = n(63)\n        }, function(e, t) {\n            e.exports = n(54)\n        }, function(e, t, n) {\n            \"use strict\";\n\n            function r(e) {\n                return e && e.__esModule ? e : {\n                    default: e\n                }\n            }\n\n            function o(e) {\n                var t = e.request,\n                    n = e.securities,\n                    r = void 0 === n ? {} : n,\n                    o = e.operation,\n                    s = void 0 === o ? {} : o,\n                    l = e.spec,\n                    c = (0, u.default)({}, t),\n                    f = r.authorized,\n                    p = void 0 === f ? {} : f,\n                    d = r.specSecurity,\n                    h = void 0 === d ? [] : d,\n                    v = s.security || h,\n                    m = p && !!(0, i.default)(p).length,\n                    g = l.securityDefinitions;\n                return c.headers = c.headers || {}, c.query = c.query || {}, (0, i.default)(r).length && m && v && (!Array.isArray(s.security) || s.security.length) ? (v.forEach(function(e, t) {\n                    for (var n in e) {\n                        var r = p[n];\n                        if (r) {\n                            var o = r.token,\n                                i = r.value || r,\n                                u = g[n],\n                                s = u.type,\n                                l = o && o.access_token,\n                                f = o && o.token_type;\n                            if (r)\n                                if (\"apiKey\" === s) {\n                                    var d = \"query\" === u.in ? \"query\" : \"headers\";\n                                    c[d] = c[d] || {}, c[d][u.name] = i\n                                } else \"basic\" === s ? i.header ? c.headers.authorization = i.header : (i.base64 = (0, a.default)(i.username + \":\" + i.password), c.headers.authorization = \"Basic \" + i.base64) : \"oauth2\" === s && l && (f = f && \"bearer\" !== f.toLowerCase() ? f : \"Bearer\", c.headers.authorization = f + \" \" + l)\n                        }\n                    }\n                }), c) : t\n            }\n            Object.defineProperty(t, \"__esModule\", {\n                value: !0\n            });\n            var i = r(n(0));\n            t.default = function(e, t) {\n                var n = e.spec,\n                    r = e.operation,\n                    i = e.securities,\n                    a = e.requestContentType,\n                    u = e.attachContentTypeForEmptyPayload;\n                if ((t = o({\n                    request: t,\n                    securities: i,\n                    operation: r,\n                    spec: n\n                })).body || t.form || u) a ? t.headers[\"Content-Type\"] = a : Array.isArray(r.consumes) ? t.headers[\"Content-Type\"] = r.consumes[0] : Array.isArray(n.consumes) ? t.headers[\"Content-Type\"] = n.consumes[0] : r.parameters && r.parameters.filter(function(e) {\n                    return \"file\" === e.type\n                }).length ? t.headers[\"Content-Type\"] = \"multipart/form-data\" : r.parameters && r.parameters.filter(function(e) {\n                    return \"formData\" === e.in\n                }).length && (t.headers[\"Content-Type\"] = \"application/x-www-form-urlencoded\");\n                else if (a) {\n                    var s = r.parameters && r.parameters.filter(function(e) {\n                            return \"body\" === e.in\n                        }).length > 0,\n                        l = r.parameters && r.parameters.filter(function(e) {\n                            return \"formData\" === e.in\n                        }).length > 0;\n                    (s || l) && (t.headers[\"Content-Type\"] = a)\n                }\n                return t\n            }, t.applySecurities = o;\n            var a = r(n(13)),\n                u = r(n(6));\n            r(n(7))\n        }])\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.hasOwnProperty,\n            o = function() {\n                for (var e = [], t = 0; t < 256; ++t) e.push(\"%\" + ((t < 16 ? \"0\" : \"\") + t.toString(16)).toUpperCase());\n                return e\n            }();\n        t.arrayToObject = function(e, t) {\n            for (var n = t && t.plainObjects ? Object.create(null) : {}, r = 0; r < e.length; ++r) void 0 !== e[r] && (n[r] = e[r]);\n            return n\n        }, t.merge = function(e, n, o) {\n            if (!n) return e;\n            if (\"object\" != typeof n) {\n                if (Array.isArray(e)) e.push(n);\n                else {\n                    if (\"object\" != typeof e) return [e, n];\n                    (o.plainObjects || o.allowPrototypes || !r.call(Object.prototype, n)) && (e[n] = !0)\n                }\n                return e\n            }\n            if (\"object\" != typeof e) return [e].concat(n);\n            var i = e;\n            return Array.isArray(e) && !Array.isArray(n) && (i = t.arrayToObject(e, o)), Array.isArray(e) && Array.isArray(n) ? (n.forEach(function(n, i) {\n                r.call(e, i) ? e[i] && \"object\" == typeof e[i] ? e[i] = t.merge(e[i], n, o) : e.push(n) : e[i] = n\n            }), e) : Object.keys(n).reduce(function(e, i) {\n                var a = n[i];\n                return r.call(e, i) ? e[i] = t.merge(e[i], a, o) : e[i] = a, e\n            }, i)\n        }, t.assign = function(e, t) {\n            return Object.keys(t).reduce(function(e, n) {\n                return e[n] = t[n], e\n            }, e)\n        }, t.decode = function(e) {\n            try {\n                return decodeURIComponent(e.replace(/\\+/g, \" \"))\n            } catch (t) {\n                return e\n            }\n        }, t.encode = function(e) {\n            if (0 === e.length) return e;\n            for (var t = \"string\" == typeof e ? e : String(e), n = \"\", r = 0; r < t.length; ++r) {\n                var i = t.charCodeAt(r);\n                45 === i || 46 === i || 95 === i || 126 === i || i >= 48 && i <= 57 || i >= 65 && i <= 90 || i >= 97 && i <= 122 ? n += t.charAt(r) : i < 128 ? n += o[i] : i < 2048 ? n += o[192 | i >> 6] + o[128 | 63 & i] : i < 55296 || i >= 57344 ? n += o[224 | i >> 12] + o[128 | i >> 6 & 63] + o[128 | 63 & i] : (r += 1, i = 65536 + ((1023 & i) << 10 | 1023 & t.charCodeAt(r)), n += o[240 | i >> 18] + o[128 | i >> 12 & 63] + o[128 | i >> 6 & 63] + o[128 | 63 & i])\n            }\n            return n\n        }, t.compact = function(e) {\n            for (var t = [{\n                obj: {\n                    o: e\n                },\n                prop: \"o\"\n            }], n = [], r = 0; r < t.length; ++r)\n                for (var o = t[r], i = o.obj[o.prop], a = Object.keys(i), u = 0; u < a.length; ++u) {\n                    var s = a[u],\n                        l = i[s];\n                    \"object\" == typeof l && null !== l && -1 === n.indexOf(l) && (t.push({\n                        obj: i,\n                        prop: s\n                    }), n.push(l))\n                }\n            return function(e) {\n                for (var t; e.length;) {\n                    var n = e.pop();\n                    if (t = n.obj[n.prop], Array.isArray(t)) {\n                        for (var r = [], o = 0; o < t.length; ++o) void 0 !== t[o] && r.push(t[o]);\n                        n.obj[n.prop] = r\n                    }\n                }\n                return t\n            }(t)\n        }, t.isRegExp = function(e) {\n            return \"[object RegExp]\" === Object.prototype.toString.call(e)\n        }, t.isBuffer = function(e) {\n            return null !== e && void 0 !== e && !!(e.constructor && e.constructor.isBuffer && e.constructor.isBuffer(e))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = String.prototype.replace,\n            o = /%20/g;\n        e.exports = {\n            default: \"RFC3986\",\n            formatters: {\n                RFC1738: function(e) {\n                    return r.call(e, o, \"+\")\n                },\n                RFC3986: function(e) {\n                    return e\n                }\n            },\n            RFC1738: \"RFC1738\",\n            RFC3986: \"RFC3986\"\n        }\n    }, function(e, t, n) {\n        var r = Array.prototype.slice,\n            o = n(911),\n            i = n(912),\n            a = e.exports = function(e, t, n) {\n                return n || (n = {}), e === t || (e instanceof Date && t instanceof Date ? e.getTime() === t.getTime() : !e || !t || \"object\" != typeof e && \"object\" != typeof t ? n.strict ? e === t : e == t : function(e, t, n) {\n                    var l, c;\n                    if (u(e) || u(t)) return !1;\n                    if (e.prototype !== t.prototype) return !1;\n                    if (i(e)) return !!i(t) && (e = r.call(e), t = r.call(t), a(e, t, n));\n                    if (s(e)) {\n                        if (!s(t)) return !1;\n                        if (e.length !== t.length) return !1;\n                        for (l = 0; l < e.length; l++)\n                            if (e[l] !== t[l]) return !1;\n                        return !0\n                    }\n                    try {\n                        var f = o(e),\n                            p = o(t)\n                    } catch (e) {\n                        return !1\n                    }\n                    if (f.length != p.length) return !1;\n                    for (f.sort(), p.sort(), l = f.length - 1; l >= 0; l--)\n                        if (f[l] != p[l]) return !1;\n                    for (l = f.length - 1; l >= 0; l--)\n                        if (c = f[l], !a(e[c], t[c], n)) return !1;\n                    return typeof e == typeof t\n                }(e, t, n))\n            };\n\n        function u(e) {\n            return null === e || void 0 === e\n        }\n\n        function s(e) {\n            return !(!e || \"object\" != typeof e || \"number\" != typeof e.length) && (\"function\" == typeof e.copy && \"function\" == typeof e.slice && !(e.length > 0 && \"number\" != typeof e[0]))\n        }\n    }, function(e, t, n) {\n        var r = {\n                strict: !0\n            },\n            o = n(390),\n            i = function(e, t) {\n                return o(e, t, r)\n            },\n            a = n(230);\n        t.JsonPatchError = a.PatchError, t.deepClone = a._deepClone;\n        var u = {\n                add: function(e, t, n) {\n                    return e[t] = this.value, {\n                        newDocument: n\n                    }\n                },\n                remove: function(e, t, n) {\n                    var r = e[t];\n                    return delete e[t], {\n                        newDocument: n,\n                        removed: r\n                    }\n                },\n                replace: function(e, t, n) {\n                    var r = e[t];\n                    return e[t] = this.value, {\n                        newDocument: n,\n                        removed: r\n                    }\n                },\n                move: function(e, t, n) {\n                    var r = l(n, this.path);\n                    r && (r = a._deepClone(r));\n                    var o = c(n, {\n                        op: \"remove\",\n                        path: this.from\n                    }).removed;\n                    return c(n, {\n                        op: \"add\",\n                        path: this.path,\n                        value: o\n                    }), {\n                        newDocument: n,\n                        removed: r\n                    }\n                },\n                copy: function(e, t, n) {\n                    var r = l(n, this.from);\n                    return c(n, {\n                        op: \"add\",\n                        path: this.path,\n                        value: a._deepClone(r)\n                    }), {\n                        newDocument: n\n                    }\n                },\n                test: function(e, t, n) {\n                    return {\n                        newDocument: n,\n                        test: i(e[t], this.value)\n                    }\n                },\n                _get: function(e, t, n) {\n                    return this.value = e[t], {\n                        newDocument: n\n                    }\n                }\n            },\n            s = {\n                add: function(e, t, n) {\n                    return a.isInteger(t) ? e.splice(t, 0, this.value) : e[t] = this.value, {\n                        newDocument: n,\n                        index: t\n                    }\n                },\n                remove: function(e, t, n) {\n                    return {\n                        newDocument: n,\n                        removed: e.splice(t, 1)[0]\n                    }\n                },\n                replace: function(e, t, n) {\n                    var r = e[t];\n                    return e[t] = this.value, {\n                        newDocument: n,\n                        removed: r\n                    }\n                },\n                move: u.move,\n                copy: u.copy,\n                test: u.test,\n                _get: u._get\n            };\n\n        function l(e, t) {\n            if (\"\" == t) return e;\n            var n = {\n                op: \"_get\",\n                path: t\n            };\n            return c(e, n), n.value\n        }\n\n        function c(e, n, r, o) {\n            if (void 0 === r && (r = !1), void 0 === o && (o = !0), r && (\"function\" == typeof r ? r(n, 0, e, n.path) : p(n, 0)), \"\" === n.path) {\n                var c = {\n                    newDocument: e\n                };\n                if (\"add\" === n.op) return c.newDocument = n.value, c;\n                if (\"replace\" === n.op) return c.newDocument = n.value, c.removed = e, c;\n                if (\"move\" === n.op || \"copy\" === n.op) return c.newDocument = l(e, n.from), \"move\" === n.op && (c.removed = e), c;\n                if (\"test\" === n.op) {\n                    if (c.test = i(e, n.value), !1 === c.test) throw new t.JsonPatchError(\"Test operation failed\", \"TEST_OPERATION_FAILED\", 0, n, e);\n                    return c.newDocument = e, c\n                }\n                if (\"remove\" === n.op) return c.removed = e, c.newDocument = null, c;\n                if (\"_get\" === n.op) return n.value = e, c;\n                if (r) throw new t.JsonPatchError(\"Operation `op` property is not one of operations defined in RFC-6902\", \"OPERATION_OP_INVALID\", 0, n, e);\n                return c\n            }\n            o || (e = a._deepClone(e));\n            var f = (n.path || \"\").split(\"/\"),\n                d = e,\n                h = 1,\n                v = f.length,\n                m = void 0,\n                g = void 0,\n                y = void 0;\n            for (y = \"function\" == typeof r ? r : p;;) {\n                if (g = f[h], r && void 0 === m && (void 0 === d[g] ? m = f.slice(0, h).join(\"/\") : h == v - 1 && (m = n.path), void 0 !== m && y(n, 0, e, m)), h++, Array.isArray(d)) {\n                    if (\"-\" === g) g = d.length;\n                    else {\n                        if (r && !a.isInteger(g)) throw new t.JsonPatchError(\"Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index\", \"OPERATION_PATH_ILLEGAL_ARRAY_INDEX\", 0, n.path, n);\n                        a.isInteger(g) && (g = ~~g)\n                    }\n                    if (h >= v) {\n                        if (r && \"add\" === n.op && g > d.length) throw new t.JsonPatchError(\"The specified index MUST NOT be greater than the number of elements in the array\", \"OPERATION_VALUE_OUT_OF_BOUNDS\", 0, n.path, n);\n                        if (!1 === (c = s[n.op].call(n, d, g, e)).test) throw new t.JsonPatchError(\"Test operation failed\", \"TEST_OPERATION_FAILED\", 0, n, e);\n                        return c\n                    }\n                } else if (g && -1 != g.indexOf(\"~\") && (g = a.unescapePathComponent(g)), h >= v) {\n                    if (!1 === (c = u[n.op].call(n, d, g, e)).test) throw new t.JsonPatchError(\"Test operation failed\", \"TEST_OPERATION_FAILED\", 0, n, e);\n                    return c\n                }\n                d = d[g]\n            }\n        }\n\n        function f(e, n, r, o) {\n            if (void 0 === o && (o = !0), r && !Array.isArray(n)) throw new t.JsonPatchError(\"Patch sequence must be an array\", \"SEQUENCE_NOT_AN_ARRAY\");\n            o || (e = a._deepClone(e));\n            for (var i = new Array(n.length), u = 0, s = n.length; u < s; u++) i[u] = c(e, n[u], r), e = i[u].newDocument;\n            return i.newDocument = e, i\n        }\n\n        function p(e, n, r, o) {\n            if (\"object\" != typeof e || null === e || Array.isArray(e)) throw new t.JsonPatchError(\"Operation is not an object\", \"OPERATION_NOT_AN_OBJECT\", n, e, r);\n            if (!u[e.op]) throw new t.JsonPatchError(\"Operation `op` property is not one of operations defined in RFC-6902\", \"OPERATION_OP_INVALID\", n, e, r);\n            if (\"string\" != typeof e.path) throw new t.JsonPatchError(\"Operation `path` property is not a string\", \"OPERATION_PATH_INVALID\", n, e, r);\n            if (0 !== e.path.indexOf(\"/\") && e.path.length > 0) throw new t.JsonPatchError('Operation `path` property must start with \"/\"', \"OPERATION_PATH_INVALID\", n, e, r);\n            if ((\"move\" === e.op || \"copy\" === e.op) && \"string\" != typeof e.from) throw new t.JsonPatchError(\"Operation `from` property is not present (applicable in `move` and `copy` operations)\", \"OPERATION_FROM_REQUIRED\", n, e, r);\n            if ((\"add\" === e.op || \"replace\" === e.op || \"test\" === e.op) && void 0 === e.value) throw new t.JsonPatchError(\"Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)\", \"OPERATION_VALUE_REQUIRED\", n, e, r);\n            if ((\"add\" === e.op || \"replace\" === e.op || \"test\" === e.op) && a.hasUndefined(e.value)) throw new t.JsonPatchError(\"Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)\", \"OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED\", n, e, r);\n            if (r)\n                if (\"add\" == e.op) {\n                    var i = e.path.split(\"/\").length,\n                        s = o.split(\"/\").length;\n                    if (i !== s + 1 && i !== s) throw new t.JsonPatchError(\"Cannot perform an `add` operation at the desired path\", \"OPERATION_PATH_CANNOT_ADD\", n, e, r)\n                } else if (\"replace\" === e.op || \"remove\" === e.op || \"_get\" === e.op) {\n                    if (e.path !== o) throw new t.JsonPatchError(\"Cannot perform the operation at a path that does not exist\", \"OPERATION_PATH_UNRESOLVABLE\", n, e, r)\n                } else if (\"move\" === e.op || \"copy\" === e.op) {\n                    var l = d([{\n                        op: \"_get\",\n                        path: e.from,\n                        value: void 0\n                    }], r);\n                    if (l && \"OPERATION_PATH_UNRESOLVABLE\" === l.name) throw new t.JsonPatchError(\"Cannot perform the operation from a path that does not exist\", \"OPERATION_FROM_UNRESOLVABLE\", n, e, r)\n                }\n        }\n\n        function d(e, n, r) {\n            try {\n                if (!Array.isArray(e)) throw new t.JsonPatchError(\"Patch sequence must be an array\", \"SEQUENCE_NOT_AN_ARRAY\");\n                if (n) f(a._deepClone(n), a._deepClone(e), r || !0);\n                else {\n                    r = r || p;\n                    for (var o = 0; o < e.length; o++) r(e[o], o, n, void 0)\n                }\n            } catch (e) {\n                if (e instanceof t.JsonPatchError) return e;\n                throw e\n            }\n        }\n        t.getValueByPointer = l, t.applyOperation = c, t.applyPatch = f, t.applyReducer = function(e, n) {\n            var r = c(e, n);\n            if (!1 === r.test) throw new t.JsonPatchError(\"Test operation failed\", \"TEST_OPERATION_FAILED\", 0, n, e);\n            return r.newDocument\n        }, t.validator = p, t.validate = d\n    }, function(e, t, n) {\n        var r = n(28);\n        e.exports = function(e, t) {\n            if (!r(e) || e._t !== t) throw TypeError(\"Incompatible receiver, \" + t + \" required!\");\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(22));\n        t.default = function() {\n            return {\n                afterLoad: function(e) {\n                    this.rootInjects = this.rootInjects || {}, this.rootInjects.initOAuth = e.authActions.configureAuth, this.rootInjects.preauthorizeApiKey = f.bind(null, e), this.rootInjects.preauthorizeBasic = c.bind(null, e)\n                },\n                statePlugins: {\n                    auth: {\n                        reducers: o.default,\n                        actions: i,\n                        selectors: a\n                    },\n                    spec: {\n                        wrapActions: u\n                    }\n                }\n            }\n        }, t.preauthorizeBasic = c, t.preauthorizeApiKey = f;\n        var o = l(n(394)),\n            i = s(n(232)),\n            a = s(n(395)),\n            u = s(n(396));\n\n        function s(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n\n        function c(e, t, n, o) {\n            var i = e.authActions.authorize,\n                a = e.specSelectors,\n                u = a.specJson,\n                s = (0, a.isOAS3)() ? [\"components\", \"securitySchemes\"] : [\"securityDefinitions\"],\n                l = u().getIn([].concat(s, [t]));\n            return l ? i((0, r.default)({}, t, {\n                value: {\n                    username: n,\n                    password: o\n                },\n                schema: l.toJS()\n            })) : null\n        }\n\n        function f(e, t, n) {\n            var o = e.authActions.authorize,\n                i = e.specSelectors,\n                a = i.specJson,\n                u = (0, i.isOAS3)() ? [\"components\", \"securitySchemes\"] : [\"securityDefinitions\"],\n                s = a().getIn([].concat(u, [t]));\n            return s ? o((0, r.default)({}, t, {\n                value: n,\n                schema: s.toJS()\n            })) : null\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o = c(n(22)),\n            i = c(n(23)),\n            a = c(n(18)),\n            u = n(7),\n            s = n(10),\n            l = n(232);\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = (r = {}, (0, o.default)(r, l.SHOW_AUTH_POPUP, function(e, t) {\n            var n = t.payload;\n            return e.set(\"showDefinitions\", n)\n        }), (0, o.default)(r, l.AUTHORIZE, function(e, t) {\n            var n = t.payload,\n                r = (0, u.fromJS)(n),\n                o = e.get(\"authorized\") || (0, u.Map)();\n            return r.entrySeq().forEach(function(e) {\n                var t = (0, a.default)(e, 2),\n                    n = t[0],\n                    r = t[1],\n                    i = r.getIn([\"schema\", \"type\"]);\n                if (\"apiKey\" === i || \"http\" === i) o = o.set(n, r);\n                else if (\"basic\" === i) {\n                    var u = r.getIn([\"value\", \"username\"]),\n                        l = r.getIn([\"value\", \"password\"]);\n                    o = (o = o.setIn([n, \"value\"], {\n                        username: u,\n                        header: \"Basic \" + (0, s.btoa)(u + \":\" + l)\n                    })).setIn([n, \"schema\"], r.get(\"schema\"))\n                }\n            }), e.set(\"authorized\", o)\n        }), (0, o.default)(r, l.AUTHORIZE_OAUTH2, function(e, t) {\n            var n = t.payload,\n                r = n.auth,\n                o = n.token,\n                a = void 0;\n            return r.token = (0, i.default)({}, o), a = (0, u.fromJS)(r), e.setIn([\"authorized\", a.get(\"name\")], a)\n        }), (0, o.default)(r, l.LOGOUT, function(e, t) {\n            var n = t.payload,\n                r = e.get(\"authorized\").withMutations(function(e) {\n                    n.forEach(function(t) {\n                        e.delete(t)\n                    })\n                });\n            return e.set(\"authorized\", r)\n        }), (0, o.default)(r, l.CONFIGURE_AUTH, function(e, t) {\n            var n = t.payload;\n            return e.set(\"configs\", n)\n        }), r)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.getConfigs = t.isAuthorized = t.authorized = t.definitionsForRequirements = t.getDefinitionsByNames = t.definitionsToAuthorize = t.shownDefinitions = void 0;\n        var r = u(n(42)),\n            o = u(n(18)),\n            i = n(57),\n            a = n(7);\n\n        function u(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var s = function(e) {\n            return e\n        };\n        t.shownDefinitions = (0, i.createSelector)(s, function(e) {\n            return e.get(\"showDefinitions\")\n        }), t.definitionsToAuthorize = (0, i.createSelector)(s, function() {\n            return function(e) {\n                var t = e.specSelectors.securityDefinitions() || (0, a.Map)({}),\n                    n = (0, a.List)();\n                return t.entrySeq().forEach(function(e) {\n                    var t = (0, o.default)(e, 2),\n                        r = t[0],\n                        i = t[1],\n                        u = (0, a.Map)();\n                    u = u.set(r, i), n = n.push(u)\n                }), n\n            }\n        }), t.getDefinitionsByNames = function(e, t) {\n            return function(e) {\n                var n = e.specSelectors;\n                console.warn(\"WARNING: getDefinitionsByNames is deprecated and will be removed in the next major version.\");\n                var r = n.securityDefinitions(),\n                    i = (0, a.List)();\n                return t.valueSeq().forEach(function(e) {\n                    var t = (0, a.Map)();\n                    e.entrySeq().forEach(function(e) {\n                        var n = (0, o.default)(e, 2),\n                            i = n[0],\n                            a = n[1],\n                            u = r.get(i),\n                            s = void 0;\n                        \"oauth2\" === u.get(\"type\") && a.size && ((s = u.get(\"scopes\")).keySeq().forEach(function(e) {\n                            a.contains(e) || (s = s.delete(e))\n                        }), u = u.set(\"allowedScopes\", s)), t = t.set(i, u)\n                    }), i = i.push(t)\n                }), i\n            }\n        }, t.definitionsForRequirements = function(e) {\n            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : (0, a.List)();\n            return function(e) {\n                return (e.authSelectors.definitionsToAuthorize() || (0, a.List)()).filter(function(e) {\n                    return t.some(function(t) {\n                        return t.get(e.keySeq().first())\n                    })\n                })\n            }\n        }, t.authorized = (0, i.createSelector)(s, function(e) {\n            return e.get(\"authorized\") || (0, a.Map)()\n        }), t.isAuthorized = function(e, t) {\n            return function(e) {\n                var n = e.authSelectors.authorized();\n                return a.List.isList(t) ? !!t.toJS().filter(function(e) {\n                    return -1 === (0, r.default)(e).map(function(e) {\n                        return !!n.get(e)\n                    }).indexOf(!1)\n                }).length : null\n            }\n        }, t.getConfigs = (0, i.createSelector)(s, function(e) {\n            return e.get(\"configs\")\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.execute = void 0;\n        var r, o = n(25),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.execute = function(e, t) {\n            var n = t.authSelectors,\n                r = t.specSelectors;\n            return function(t) {\n                var o = t.path,\n                    a = t.method,\n                    u = t.operation,\n                    s = t.extras,\n                    l = {\n                        authorized: n.authorized() && n.authorized().toJS(),\n                        definitions: r.securityDefinitions() && r.securityDefinitions().toJS(),\n                        specSecurity: r.security() && r.security().toJS()\n                    };\n                return e((0, i.default)({\n                    path: o,\n                    method: a,\n                    operation: u,\n                    securities: l\n                }, s))\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                fn: {\n                    shallowEqualKeys: r.shallowEqualKeys\n                }\n            }\n        };\n        var r = n(10)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = s(n(41)),\n            o = s(n(23));\n        t.default = function(e) {\n            var t = e.fn,\n                n = {\n                    download: function(e) {\n                        return function(n) {\n                            var r = n.errActions,\n                                i = n.specSelectors,\n                                a = n.specActions,\n                                s = n.getConfigs,\n                                l = t.fetch,\n                                c = s();\n\n                            function f(t) {\n                                if (t instanceof Error || t.status >= 400) return a.updateLoadingStatus(\"failed\"), r.newThrownErr((0, o.default)(new Error((t.message || t.statusText) + \" \" + e), {\n                                    source: \"fetch\"\n                                })), void(!t.status && t instanceof Error && function() {\n                                    try {\n                                        var t = void 0;\n                                        if (\"URL\" in u.default ? t = new URL(e) : (t = document.createElement(\"a\")).href = e, \"https:\" !== t.protocol && \"https:\" === u.default.location.protocol) {\n                                            var n = (0, o.default)(new Error(\"Possible mixed-content issue? The page was loaded over https:// but a \" + t.protocol + \"// URL was specified. Check that you are not attempting to load mixed content.\"), {\n                                                source: \"fetch\"\n                                            });\n                                            return void r.newThrownErr(n)\n                                        }\n                                        if (t.origin !== u.default.location.origin) {\n                                            var i = (0, o.default)(new Error(\"Possible cross-origin (CORS) issue? The URL origin (\" + t.origin + \") does not match the page (\" + u.default.location.origin + \"). Check the server returns the correct 'Access-Control-Allow-*' headers.\"), {\n                                                source: \"fetch\"\n                                            });\n                                            r.newThrownErr(i)\n                                        }\n                                    } catch (e) {\n                                        return\n                                    }\n                                }());\n                                a.updateLoadingStatus(\"success\"), a.updateSpec(t.text), i.url() !== e && a.updateUrl(e)\n                            }\n                            e = e || i.url(), a.updateLoadingStatus(\"loading\"), r.clear({\n                                source: \"fetch\"\n                            }), l({\n                                url: e,\n                                loadSpec: !0,\n                                requestInterceptor: c.requestInterceptor || function(e) {\n                                    return e\n                                },\n                                responseInterceptor: c.responseInterceptor || function(e) {\n                                    return e\n                                },\n                                credentials: \"same-origin\",\n                                headers: {\n                                    Accept: \"application/json,*/*\"\n                                }\n                            }).then(f, f)\n                        }\n                    },\n                    updateLoadingStatus: function(e) {\n                        var t = [null, \"loading\", \"failed\", \"success\", \"failedConfig\"];\n                        return -1 === t.indexOf(e) && console.error(\"Error: \" + e + \" is not one of \" + (0, r.default)(t)), {\n                            type: \"spec_update_loading_status\",\n                            payload: e\n                        }\n                    }\n                },\n                s = {\n                    loadingStatus: (0, i.createSelector)(function(e) {\n                        return e || (0, a.Map)()\n                    }, function(e) {\n                        return e.get(\"loadingStatus\") || null\n                    })\n                };\n            return {\n                statePlugins: {\n                    spec: {\n                        actions: n,\n                        reducers: {\n                            spec_update_loading_status: function(e, t) {\n                                return \"string\" == typeof t.payload ? e.set(\"loadingStatus\", t.payload) : e\n                            }\n                        },\n                        selectors: s\n                    }\n                }\n            }\n        };\n        var i = n(57),\n            a = n(7),\n            u = s(n(32));\n\n        function s(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                statePlugins: {\n                    spec: {\n                        actions: a,\n                        selectors: f\n                    },\n                    configs: {\n                        reducers: s.default,\n                        actions: i,\n                        selectors: u\n                    }\n                }\n            }\n        };\n        var r = c(n(934)),\n            o = n(233),\n            i = l(n(234)),\n            a = l(n(400)),\n            u = l(n(401)),\n            s = c(n(402));\n\n        function l(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = {\n            getLocalConfig: function() {\n                return (0, o.parseYamlConfig)(r.default)\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.getConfigByUrl = t.downloadConfig = void 0;\n        var r = n(233);\n        t.downloadConfig = function(e) {\n            return function(t) {\n                return (0, t.fn.fetch)(e)\n            }\n        }, t.getConfigByUrl = function(e, t) {\n            return function(n) {\n                var o = n.specActions;\n                if (e) return o.downloadConfig(e).then(i, i);\n\n                function i(n) {\n                    n instanceof Error || n.status >= 400 ? (o.updateLoadingStatus(\"failedConfig\"), o.updateLoadingStatus(\"failedConfig\"), o.updateUrl(\"\"), console.error(n.statusText + \" \" + e.url), t(null)) : t((0, r.parseYamlConfig)(n.text))\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        t.get = function(e, t) {\n            return e.getIn(Array.isArray(t) ? t : [t])\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o, i = n(22),\n            a = (r = i) && r.__esModule ? r : {\n                default: r\n            },\n            u = n(7),\n            s = n(234);\n        t.default = (o = {}, (0, a.default)(o, s.UPDATE_CONFIGS, function(e, t) {\n            return e.merge((0, u.fromJS)(t.payload))\n        }), (0, a.default)(o, s.TOGGLE_CONFIGS, function(e, t) {\n            var n = t.payload,\n                r = e.get(n);\n            return e.set(n, !r)\n        }), o)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return [r.default, {\n                statePlugins: {\n                    configs: {\n                        wrapActions: {\n                            loaded: function(e, t) {\n                                return function() {\n                                    e.apply(void 0, arguments);\n                                    var n = window.location.hash;\n                                    t.layoutActions.parseDeepLinkHash(n)\n                                }\n                            }\n                        }\n                    }\n                },\n                wrapComponents: {\n                    operation: o.default,\n                    OperationTag: i.default\n                }\n            }]\n        };\n        var r = a(n(404)),\n            o = a(n(406)),\n            i = a(n(407));\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.clearScrollTo = t.scrollToElement = t.readyToScroll = t.parseDeepLinkHash = t.scrollTo = t.show = void 0;\n        var r, o = f(n(22)),\n            i = f(n(18)),\n            a = n(405),\n            u = f(n(935)),\n            s = n(10),\n            l = n(7),\n            c = f(l);\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = t.show = function(e, t) {\n                var n = t.getConfigs,\n                    r = t.layoutSelectors;\n                return function() {\n                    for (var t = arguments.length, o = Array(t), u = 0; u < t; u++) o[u] = arguments[u];\n                    if (e.apply(void 0, o), n().deepLinking) try {\n                        var l = o[0],\n                            c = o[1];\n                        l = Array.isArray(l) ? l : [l];\n                        var f = r.urlHashArrayFromIsShownKey(l);\n                        if (!f.length) return;\n                        var p = (0, i.default)(f, 2),\n                            d = p[0],\n                            h = p[1];\n                        if (!c) return (0, a.setHash)(\"/\");\n                        2 === f.length ? (0, a.setHash)((0, s.createDeepLinkPath)(\"/\" + d + \"/\" + h)) : 1 === f.length && (0, a.setHash)((0, s.createDeepLinkPath)(\"/\" + d))\n                    } catch (e) {\n                        console.error(e)\n                    }\n                }\n            },\n            d = t.scrollTo = function(e) {\n                return {\n                    type: \"layout_scroll_to\",\n                    payload: Array.isArray(e) ? e : [e]\n                }\n            },\n            h = t.parseDeepLinkHash = function(e) {\n                return function(t) {\n                    var n = t.layoutActions,\n                        r = t.layoutSelectors;\n                    if ((0, t.getConfigs)().deepLinking && e) {\n                        var o = e.slice(1);\n                        \"!\" === o[0] && (o = o.slice(1)), \"/\" === o[0] && (o = o.slice(1));\n                        var i = o.split(\"/\").map(function(e) {\n                                return (e || \"\").replace(/_/g, \" \")\n                            }),\n                            a = r.isShownKeyFromUrlHashArray(i);\n                        n.show(a, !0), n.scrollTo(a)\n                    }\n                }\n            },\n            v = t.readyToScroll = function(e, t) {\n                return function(n) {\n                    var r = n.layoutSelectors.getScrollToKey();\n                    c.default.is(r, (0, l.fromJS)(e)) && (n.layoutActions.scrollToElement(t), n.layoutActions.clearScrollTo())\n                }\n            },\n            m = t.scrollToElement = function(e, t) {\n                return function(n) {\n                    try {\n                        t = t || n.fn.getScrollParent(e), u.default.createScroller(t).to(e)\n                    } catch (e) {\n                        console.error(e)\n                    }\n                }\n            },\n            g = t.clearScrollTo = function() {\n                return {\n                    type: \"layout_clear_scroll\"\n                }\n            };\n        t.default = {\n            fn: {\n                getScrollParent: function(e, t) {\n                    var n = document.documentElement,\n                        r = getComputedStyle(e),\n                        o = \"absolute\" === r.position,\n                        i = t ? /(auto|scroll|hidden)/ : /(auto|scroll)/;\n                    if (\"fixed\" === r.position) return n;\n                    for (var a = e; a = a.parentElement;)\n                        if (r = getComputedStyle(a), (!o || \"static\" !== r.position) && i.test(r.overflow + r.overflowY + r.overflowX)) return a;\n                    return n\n                }\n            },\n            statePlugins: {\n                layout: {\n                    actions: {\n                        scrollToElement: m,\n                        scrollTo: d,\n                        clearScrollTo: g,\n                        readyToScroll: v,\n                        parseDeepLinkHash: h\n                    },\n                    selectors: {\n                        getScrollToKey: function(e) {\n                            return e.get(\"scrollToKey\")\n                        },\n                        isShownKeyFromUrlHashArray: function(e, t) {\n                            var n = (0, i.default)(t, 2),\n                                r = n[0],\n                                o = n[1];\n                            return o ? [\"operations\", r, o] : r ? [\"operations-tag\", r] : []\n                        },\n                        urlHashArrayFromIsShownKey: function(e, t) {\n                            var n = (0, i.default)(t, 3),\n                                r = n[0],\n                                o = n[1],\n                                a = n[2];\n                            return \"operations\" == r ? [o, a] : \"operations-tag\" == r ? [o] : []\n                        }\n                    },\n                    reducers: (r = {}, (0, o.default)(r, \"layout_scroll_to\", function(e, t) {\n                        return e.set(\"scrollToKey\", c.default.fromJS(t.payload))\n                    }), (0, o.default)(r, \"layout_clear_scroll\", function(e) {\n                        return e.delete(\"scrollToKey\")\n                    }), r),\n                    wrapActions: {\n                        show: p\n                    }\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        t.setHash = function(e) {\n            return e ? history.pushState(null, null, \"#\" + e) : window.location.hash = \"\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(12));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e, t) {\n            return function(n) {\n                function l() {\n                    var e, n, i, u;\n                    (0, o.default)(this, l);\n                    for (var s = arguments.length, c = Array(s), f = 0; f < s; f++) c[f] = arguments[f];\n                    return n = i = (0, a.default)(this, (e = l.__proto__ || (0, r.default)(l)).call.apply(e, [this].concat(c))), i.onLoad = function(e) {\n                        var n = i.props.operation.toObject(),\n                            r = [\"operations\", n.tag, n.operationId];\n                        t.layoutActions.readyToScroll(r, e)\n                    }, u = n, (0, a.default)(i, u)\n                }\n                return (0, u.default)(l, n), (0, i.default)(l, [{\n                    key: \"render\",\n                    value: function() {\n                        return s.default.createElement(\"span\", {\n                            ref: this.onLoad\n                        }, s.default.createElement(e, this.props))\n                    }\n                }]), l\n            }(s.default.Component)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        n(1);\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e, t) {\n            return function(n) {\n                function l() {\n                    var e, n, i, u;\n                    (0, o.default)(this, l);\n                    for (var s = arguments.length, c = Array(s), f = 0; f < s; f++) c[f] = arguments[f];\n                    return n = i = (0, a.default)(this, (e = l.__proto__ || (0, r.default)(l)).call.apply(e, [this].concat(c))), i.onLoad = function(e) {\n                        var n = [\"operations-tag\", i.props.tag];\n                        t.layoutActions.readyToScroll(n, e)\n                    }, u = n, (0, a.default)(i, u)\n                }\n                return (0, u.default)(l, n), (0, i.default)(l, [{\n                    key: \"render\",\n                    value: function() {\n                        return s.default.createElement(\"span\", {\n                            ref: this.onLoad\n                        }, s.default.createElement(e, this.props))\n                    }\n                }]), l\n            }(s.default.Component)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                fn: {\n                    opsFilter: i.default\n                }\n            }\n        };\n        var r, o = n(409),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e, t) {\n            return e.filter(function(e, n) {\n                return -1 !== n.indexOf(t)\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                statePlugins: {\n                    spec: {\n                        wrapActions: {\n                            updateSpec: function(e) {\n                                return function() {\n                                    return r = !0, e.apply(void 0, arguments)\n                                }\n                            },\n                            updateJsonSpec: function(e, t) {\n                                return function() {\n                                    var n = t.getConfigs().onComplete;\n                                    return r && \"function\" == typeof n && (setTimeout(n, 0), r = !1), e.apply(void 0, arguments)\n                                }\n                            }\n                        }\n                    }\n                }\n            }\n        };\n        var r = !1\n    }, function(e, t) {\n        e.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwcHgiICBoZWlnaHQ9IjIwMHB4IiAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiIGNsYXNzPSJsZHMtcm9sbGluZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IGJhY2tncm91bmQtcG9zaXRpb246IGluaXRpYWwgaW5pdGlhbDsgYmFja2dyb3VuZC1yZXBlYXQ6IGluaXRpYWwgaW5pdGlhbDsiPjxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIGZpbGw9Im5vbmUiIG5nLWF0dHItc3Ryb2tlPSJ7e2NvbmZpZy5jb2xvcn19IiBuZy1hdHRyLXN0cm9rZS13aWR0aD0ie3tjb25maWcud2lkdGh9fSIgbmctYXR0ci1yPSJ7e2NvbmZpZy5yYWRpdXN9fSIgbmctYXR0ci1zdHJva2UtZGFzaGFycmF5PSJ7e2NvbmZpZy5kYXNoYXJyYXl9fSIgc3Ryb2tlPSIjNTU1NTU1IiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij48YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSJ0cmFuc2Zvcm0iIHR5cGU9InJvdGF0ZSIgY2FsY01vZGU9ImxpbmVhciIgdmFsdWVzPSIwIDUwIDUwOzM2MCA1MCA1MCIga2V5VGltZXM9IjA7MSIgZHVyPSIxcyIgYmVnaW49IjBzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSI+PC9hbmltYXRlVHJhbnNmb3JtPjwvY2lyY2xlPjwvc3ZnPgo=\"\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.Collapse = t.Link = t.Select = t.Input = t.TextArea = t.Button = t.Row = t.Col = t.Container = void 0;\n        var r = f(n(25)),\n            o = f(n(84)),\n            i = f(n(4)),\n            a = f(n(2)),\n            u = f(n(3)),\n            s = f(n(5)),\n            l = f(n(6)),\n            c = f(n(0));\n        f(n(1));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n\n        function p() {\n            for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n            return t.filter(function(e) {\n                return !!e\n            }).join(\" \").trim()\n        }\n        t.Container = function(e) {\n            function t() {\n                return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.fullscreen,\n                        n = e.full,\n                        i = (0, o.default)(e, [\"fullscreen\", \"full\"]);\n                    if (t) return c.default.createElement(\"section\", i);\n                    var a = \"swagger-container\" + (n ? \"-full\" : \"\");\n                    return c.default.createElement(\"section\", (0, r.default)({}, i, {\n                        className: p(i.className, a)\n                    }))\n                }\n            }]), t\n        }(c.default.Component);\n        var d = {\n            mobile: \"\",\n            tablet: \"-tablet\",\n            desktop: \"-desktop\",\n            large: \"-hd\"\n        };\n        t.Col = function(e) {\n            function t() {\n                return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.hide,\n                        n = e.keepContents,\n                        i = (e.mobile, e.tablet, e.desktop, e.large, (0, o.default)(e, [\"hide\", \"keepContents\", \"mobile\", \"tablet\", \"desktop\", \"large\"]));\n                    if (t && !n) return c.default.createElement(\"span\", null);\n                    var a = [];\n                    for (var u in d)\n                        if (d.hasOwnProperty(u)) {\n                            var s = d[u];\n                            if (u in this.props) {\n                                var l = this.props[u];\n                                if (l < 1) {\n                                    a.push(\"none\" + s);\n                                    continue\n                                }\n                                a.push(\"block\" + s), a.push(\"col-\" + l + s)\n                            }\n                        }\n                    var f = p.apply(void 0, [i.className].concat(a));\n                    return c.default.createElement(\"section\", (0, r.default)({}, i, {\n                        style: {\n                            display: t ? \"none\" : null\n                        },\n                        className: f\n                    }))\n                }\n            }]), t\n        }(c.default.Component), t.Row = function(e) {\n            function t() {\n                return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    return c.default.createElement(\"div\", (0, r.default)({}, this.props, {\n                        className: p(this.props.className, \"wrapper\")\n                    }))\n                }\n            }]), t\n        }(c.default.Component);\n        (t.Button = function(e) {\n            function t() {\n                return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    return c.default.createElement(\"button\", (0, r.default)({}, this.props, {\n                        className: p(this.props.className, \"button\")\n                    }))\n                }\n            }]), t\n        }(c.default.Component)).defaultProps = {\n            className: \"\"\n        };\n        t.TextArea = function(e) {\n            return c.default.createElement(\"textarea\", e)\n        }, t.Input = function(e) {\n            return c.default.createElement(\"input\", e)\n        };\n        (t.Select = function(e) {\n            function t(e, n) {\n                (0, a.default)(this, t);\n                var r = (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).call(this, e, n));\n                h.call(r);\n                var o = void 0;\n                return o = e.value ? e.value : e.multiple ? [\"\"] : \"\", r.state = {\n                    value: o\n                }, r\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.allowedValues,\n                        n = e.multiple,\n                        r = e.allowEmptyValue,\n                        o = this.state.value.toJS ? this.state.value.toJS() : this.state.value;\n                    return c.default.createElement(\"select\", {\n                        className: this.props.className,\n                        multiple: n,\n                        value: o,\n                        onChange: this.onChange\n                    }, r ? c.default.createElement(\"option\", {\n                        value: \"\"\n                    }, \"--\") : null, t.map(function(e, t) {\n                        return c.default.createElement(\"option\", {\n                            key: t,\n                            value: String(e)\n                        }, String(e))\n                    }))\n                }\n            }]), t\n        }(c.default.Component)).defaultProps = {\n            multiple: !1,\n            allowEmptyValue: !0\n        };\n        var h = function() {\n                var e = this;\n                this.onChange = function(t) {\n                    var n = e.props,\n                        r = n.onChange,\n                        o = n.multiple,\n                        i = [].slice.call(t.target.options),\n                        a = void 0;\n                    a = o ? i.filter(function(e) {\n                        return e.selected\n                    }).map(function(e) {\n                        return e.value\n                    }) : t.target.value, e.setState({\n                        value: a\n                    }), r && r(a)\n                }\n            },\n            v = (t.Link = function(e) {\n                function t() {\n                    return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n                }\n                return (0, l.default)(t, e), (0, u.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        return c.default.createElement(\"a\", (0, r.default)({}, this.props, {\n                            rel: \"noopener noreferrer\",\n                            className: p(this.props.className, \"link\")\n                        }))\n                    }\n                }]), t\n            }(c.default.Component), function(e) {\n                var t = e.children;\n                return c.default.createElement(\"div\", {\n                    style: {\n                        height: \"auto\",\n                        border: \"none\",\n                        margin: 0,\n                        padding: 0\n                    }\n                }, \" \", t, \" \")\n            });\n        (t.Collapse = function(e) {\n            function t() {\n                return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"renderNotAnimated\",\n                value: function() {\n                    return this.props.isOpened ? c.default.createElement(v, null, this.props.children) : c.default.createElement(\"noscript\", null)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.animated,\n                        n = e.isOpened,\n                        r = e.children;\n                    return t ? (r = n ? r : null, c.default.createElement(v, null, r)) : this.renderNotAnimated()\n                }\n            }]), t\n        }(c.default.Component)).defaultProps = {\n            isOpened: !1,\n            animated: !1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = d(n(25)),\n            o = d(n(4)),\n            i = d(n(2)),\n            a = d(n(3)),\n            u = d(n(5)),\n            s = d(n(6)),\n            l = d(n(0)),\n            c = d(n(989)),\n            f = d(n(12)),\n            p = d(n(1));\n\n        function d(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var h = function(e) {\n            function t() {\n                var e, n, r, a;\n                (0, i.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = r = (0, u.default)(this, (e = t.__proto__ || (0, o.default)(t)).call.apply(e, [this].concat(l))), r.getModelName = function(e) {\n                    return -1 !== e.indexOf(\"#/definitions/\") ? e.replace(/^.*#\\/definitions\\//, \"\") : -1 !== e.indexOf(\"#/components/schemas/\") ? e.replace(\"#/components/schemas/\", \"\") : void 0\n                }, r.getRefSchema = function(e) {\n                    return r.props.specSelectors.findDefinition(e)\n                }, a = n, (0, u.default)(r, a)\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        o = e.getConfigs,\n                        i = e.specSelectors,\n                        a = e.schema,\n                        u = e.required,\n                        s = e.name,\n                        c = e.isRef,\n                        f = e.specPath,\n                        p = e.displayName,\n                        d = t(\"ObjectModel\"),\n                        h = t(\"ArrayModel\"),\n                        v = t(\"PrimitiveModel\"),\n                        m = \"object\",\n                        g = a && a.get(\"$$ref\");\n                    if (!s && g && (s = this.getModelName(g)), !a && g && (a = this.getRefSchema(s)), !a) return l.default.createElement(\"span\", {\n                        className: \"model model-title\"\n                    }, l.default.createElement(\"span\", {\n                        className: \"model-title__text\"\n                    }, p || s), l.default.createElement(\"img\", {\n                        src: n(411),\n                        height: \"20px\",\n                        width: \"20px\",\n                        style: {\n                            marginLeft: \"1em\",\n                            position: \"relative\",\n                            bottom: \"0px\"\n                        }\n                    }));\n                    var y = i.isOAS3() && a.get(\"deprecated\");\n                    switch (c = void 0 !== c ? c : !!g, m = a && a.get(\"type\") || m) {\n                        case \"object\":\n                            return l.default.createElement(d, (0, r.default)({\n                                className: \"object\"\n                            }, this.props, {\n                                specPath: f,\n                                getConfigs: o,\n                                schema: a,\n                                name: s,\n                                deprecated: y,\n                                isRef: c\n                            }));\n                        case \"array\":\n                            return l.default.createElement(h, (0, r.default)({\n                                className: \"array\"\n                            }, this.props, {\n                                getConfigs: o,\n                                schema: a,\n                                name: s,\n                                deprecated: y,\n                                required: u\n                            }));\n                        case \"string\":\n                        case \"number\":\n                        case \"integer\":\n                        case \"boolean\":\n                        default:\n                            return l.default.createElement(v, (0, r.default)({}, this.props, {\n                                getComponent: t,\n                                getConfigs: o,\n                                schema: a,\n                                name: s,\n                                deprecated: y,\n                                required: u\n                            }))\n                    }\n                }\n            }]), t\n        }(c.default);\n        h.propTypes = {\n            schema: f.default.orderedMap.isRequired,\n            getComponent: p.default.func.isRequired,\n            getConfigs: p.default.func.isRequired,\n            specSelectors: p.default.object.isRequired,\n            name: p.default.string,\n            displayName: p.default.string,\n            isRef: p.default.bool,\n            required: p.default.bool,\n            expandDepth: p.default.number,\n            depth: p.default.number,\n            specPath: f.default.list.isRequired\n        }, t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.sanitizer = l;\n        var r = u(n(0)),\n            o = (u(n(1)), u(n(415))),\n            i = u(n(1052)),\n            a = u(n(113));\n\n        function u(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        i.default.addHook(\"beforeSanitizeElements\", function(e) {\n            return e.href && e.setAttribute(\"rel\", \"noopener noreferrer\"), e\n        });\n        var s = function(e) {\n            return /^[A-Z\\s0-9!?\\.]+$/gi.test(e)\n        };\n\n        function l(e) {\n            return i.default.sanitize(e, {\n                ADD_ATTR: [\"target\"]\n            })\n        }\n        t.default = function(e) {\n            var t = e.source,\n                n = e.className,\n                i = void 0 === n ? \"\" : n;\n            if (s(t)) return r.default.createElement(\"div\", {\n                className: \"markdown\"\n            }, t);\n            var u = new o.default({\n                    html: !0,\n                    typographer: !0,\n                    breaks: !0,\n                    linkify: !0,\n                    linkTarget: \"_blank\"\n                }).render(t),\n                c = l(u);\n            return t && u && c ? r.default.createElement(\"div\", {\n                className: (0, a.default)(i, \"markdown\"),\n                dangerouslySetInnerHTML: {\n                    __html: c\n                }\n            }) : null\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(1001)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            Aacute: \"Á\",\n            aacute: \"á\",\n            Abreve: \"Ă\",\n            abreve: \"ă\",\n            ac: \"∾\",\n            acd: \"∿\",\n            acE: \"∾̳\",\n            Acirc: \"Â\",\n            acirc: \"â\",\n            acute: \"´\",\n            Acy: \"А\",\n            acy: \"а\",\n            AElig: \"Æ\",\n            aelig: \"æ\",\n            af: \"⁡\",\n            Afr: \"𝔄\",\n            afr: \"𝔞\",\n            Agrave: \"À\",\n            agrave: \"à\",\n            alefsym: \"ℵ\",\n            aleph: \"ℵ\",\n            Alpha: \"Α\",\n            alpha: \"α\",\n            Amacr: \"Ā\",\n            amacr: \"ā\",\n            amalg: \"⨿\",\n            AMP: \"&\",\n            amp: \"&\",\n            And: \"⩓\",\n            and: \"∧\",\n            andand: \"⩕\",\n            andd: \"⩜\",\n            andslope: \"⩘\",\n            andv: \"⩚\",\n            ang: \"∠\",\n            ange: \"⦤\",\n            angle: \"∠\",\n            angmsd: \"∡\",\n            angmsdaa: \"⦨\",\n            angmsdab: \"⦩\",\n            angmsdac: \"⦪\",\n            angmsdad: \"⦫\",\n            angmsdae: \"⦬\",\n            angmsdaf: \"⦭\",\n            angmsdag: \"⦮\",\n            angmsdah: \"⦯\",\n            angrt: \"∟\",\n            angrtvb: \"⊾\",\n            angrtvbd: \"⦝\",\n            angsph: \"∢\",\n            angst: \"Å\",\n            angzarr: \"⍼\",\n            Aogon: \"Ą\",\n            aogon: \"ą\",\n            Aopf: \"𝔸\",\n            aopf: \"𝕒\",\n            ap: \"≈\",\n            apacir: \"⩯\",\n            apE: \"⩰\",\n            ape: \"≊\",\n            apid: \"≋\",\n            apos: \"'\",\n            ApplyFunction: \"⁡\",\n            approx: \"≈\",\n            approxeq: \"≊\",\n            Aring: \"Å\",\n            aring: \"å\",\n            Ascr: \"𝒜\",\n            ascr: \"𝒶\",\n            Assign: \"≔\",\n            ast: \"*\",\n            asymp: \"≈\",\n            asympeq: \"≍\",\n            Atilde: \"Ã\",\n            atilde: \"ã\",\n            Auml: \"Ä\",\n            auml: \"ä\",\n            awconint: \"∳\",\n            awint: \"⨑\",\n            backcong: \"≌\",\n            backepsilon: \"϶\",\n            backprime: \"‵\",\n            backsim: \"∽\",\n            backsimeq: \"⋍\",\n            Backslash: \"∖\",\n            Barv: \"⫧\",\n            barvee: \"⊽\",\n            Barwed: \"⌆\",\n            barwed: \"⌅\",\n            barwedge: \"⌅\",\n            bbrk: \"⎵\",\n            bbrktbrk: \"⎶\",\n            bcong: \"≌\",\n            Bcy: \"Б\",\n            bcy: \"б\",\n            bdquo: \"„\",\n            becaus: \"∵\",\n            Because: \"∵\",\n            because: \"∵\",\n            bemptyv: \"⦰\",\n            bepsi: \"϶\",\n            bernou: \"ℬ\",\n            Bernoullis: \"ℬ\",\n            Beta: \"Β\",\n            beta: \"β\",\n            beth: \"ℶ\",\n            between: \"≬\",\n            Bfr: \"𝔅\",\n            bfr: \"𝔟\",\n            bigcap: \"⋂\",\n            bigcirc: \"◯\",\n            bigcup: \"⋃\",\n            bigodot: \"⨀\",\n            bigoplus: \"⨁\",\n            bigotimes: \"⨂\",\n            bigsqcup: \"⨆\",\n            bigstar: \"★\",\n            bigtriangledown: \"▽\",\n            bigtriangleup: \"△\",\n            biguplus: \"⨄\",\n            bigvee: \"⋁\",\n            bigwedge: \"⋀\",\n            bkarow: \"⤍\",\n            blacklozenge: \"⧫\",\n            blacksquare: \"▪\",\n            blacktriangle: \"▴\",\n            blacktriangledown: \"▾\",\n            blacktriangleleft: \"◂\",\n            blacktriangleright: \"▸\",\n            blank: \"␣\",\n            blk12: \"▒\",\n            blk14: \"░\",\n            blk34: \"▓\",\n            block: \"█\",\n            bne: \"=⃥\",\n            bnequiv: \"≡⃥\",\n            bNot: \"⫭\",\n            bnot: \"⌐\",\n            Bopf: \"𝔹\",\n            bopf: \"𝕓\",\n            bot: \"⊥\",\n            bottom: \"⊥\",\n            bowtie: \"⋈\",\n            boxbox: \"⧉\",\n            boxDL: \"╗\",\n            boxDl: \"╖\",\n            boxdL: \"╕\",\n            boxdl: \"┐\",\n            boxDR: \"╔\",\n            boxDr: \"╓\",\n            boxdR: \"╒\",\n            boxdr: \"┌\",\n            boxH: \"═\",\n            boxh: \"─\",\n            boxHD: \"╦\",\n            boxHd: \"╤\",\n            boxhD: \"╥\",\n            boxhd: \"┬\",\n            boxHU: \"╩\",\n            boxHu: \"╧\",\n            boxhU: \"╨\",\n            boxhu: \"┴\",\n            boxminus: \"⊟\",\n            boxplus: \"⊞\",\n            boxtimes: \"⊠\",\n            boxUL: \"╝\",\n            boxUl: \"╜\",\n            boxuL: \"╛\",\n            boxul: \"┘\",\n            boxUR: \"╚\",\n            boxUr: \"╙\",\n            boxuR: \"╘\",\n            boxur: \"└\",\n            boxV: \"║\",\n            boxv: \"│\",\n            boxVH: \"╬\",\n            boxVh: \"╫\",\n            boxvH: \"╪\",\n            boxvh: \"┼\",\n            boxVL: \"╣\",\n            boxVl: \"╢\",\n            boxvL: \"╡\",\n            boxvl: \"┤\",\n            boxVR: \"╠\",\n            boxVr: \"╟\",\n            boxvR: \"╞\",\n            boxvr: \"├\",\n            bprime: \"‵\",\n            Breve: \"˘\",\n            breve: \"˘\",\n            brvbar: \"¦\",\n            Bscr: \"ℬ\",\n            bscr: \"𝒷\",\n            bsemi: \"⁏\",\n            bsim: \"∽\",\n            bsime: \"⋍\",\n            bsol: \"\\\\\",\n            bsolb: \"⧅\",\n            bsolhsub: \"⟈\",\n            bull: \"•\",\n            bullet: \"•\",\n            bump: \"≎\",\n            bumpE: \"⪮\",\n            bumpe: \"≏\",\n            Bumpeq: \"≎\",\n            bumpeq: \"≏\",\n            Cacute: \"Ć\",\n            cacute: \"ć\",\n            Cap: \"⋒\",\n            cap: \"∩\",\n            capand: \"⩄\",\n            capbrcup: \"⩉\",\n            capcap: \"⩋\",\n            capcup: \"⩇\",\n            capdot: \"⩀\",\n            CapitalDifferentialD: \"ⅅ\",\n            caps: \"∩︀\",\n            caret: \"⁁\",\n            caron: \"ˇ\",\n            Cayleys: \"ℭ\",\n            ccaps: \"⩍\",\n            Ccaron: \"Č\",\n            ccaron: \"č\",\n            Ccedil: \"Ç\",\n            ccedil: \"ç\",\n            Ccirc: \"Ĉ\",\n            ccirc: \"ĉ\",\n            Cconint: \"∰\",\n            ccups: \"⩌\",\n            ccupssm: \"⩐\",\n            Cdot: \"Ċ\",\n            cdot: \"ċ\",\n            cedil: \"¸\",\n            Cedilla: \"¸\",\n            cemptyv: \"⦲\",\n            cent: \"¢\",\n            CenterDot: \"·\",\n            centerdot: \"·\",\n            Cfr: \"ℭ\",\n            cfr: \"𝔠\",\n            CHcy: \"Ч\",\n            chcy: \"ч\",\n            check: \"✓\",\n            checkmark: \"✓\",\n            Chi: \"Χ\",\n            chi: \"χ\",\n            cir: \"○\",\n            circ: \"ˆ\",\n            circeq: \"≗\",\n            circlearrowleft: \"↺\",\n            circlearrowright: \"↻\",\n            circledast: \"⊛\",\n            circledcirc: \"⊚\",\n            circleddash: \"⊝\",\n            CircleDot: \"⊙\",\n            circledR: \"®\",\n            circledS: \"Ⓢ\",\n            CircleMinus: \"⊖\",\n            CirclePlus: \"⊕\",\n            CircleTimes: \"⊗\",\n            cirE: \"⧃\",\n            cire: \"≗\",\n            cirfnint: \"⨐\",\n            cirmid: \"⫯\",\n            cirscir: \"⧂\",\n            ClockwiseContourIntegral: \"∲\",\n            CloseCurlyDoubleQuote: \"”\",\n            CloseCurlyQuote: \"’\",\n            clubs: \"♣\",\n            clubsuit: \"♣\",\n            Colon: \"∷\",\n            colon: \":\",\n            Colone: \"⩴\",\n            colone: \"≔\",\n            coloneq: \"≔\",\n            comma: \",\",\n            commat: \"@\",\n            comp: \"∁\",\n            compfn: \"∘\",\n            complement: \"∁\",\n            complexes: \"ℂ\",\n            cong: \"≅\",\n            congdot: \"⩭\",\n            Congruent: \"≡\",\n            Conint: \"∯\",\n            conint: \"∮\",\n            ContourIntegral: \"∮\",\n            Copf: \"ℂ\",\n            copf: \"𝕔\",\n            coprod: \"∐\",\n            Coproduct: \"∐\",\n            COPY: \"©\",\n            copy: \"©\",\n            copysr: \"℗\",\n            CounterClockwiseContourIntegral: \"∳\",\n            crarr: \"↵\",\n            Cross: \"⨯\",\n            cross: \"✗\",\n            Cscr: \"𝒞\",\n            cscr: \"𝒸\",\n            csub: \"⫏\",\n            csube: \"⫑\",\n            csup: \"⫐\",\n            csupe: \"⫒\",\n            ctdot: \"⋯\",\n            cudarrl: \"⤸\",\n            cudarrr: \"⤵\",\n            cuepr: \"⋞\",\n            cuesc: \"⋟\",\n            cularr: \"↶\",\n            cularrp: \"⤽\",\n            Cup: \"⋓\",\n            cup: \"∪\",\n            cupbrcap: \"⩈\",\n            CupCap: \"≍\",\n            cupcap: \"⩆\",\n            cupcup: \"⩊\",\n            cupdot: \"⊍\",\n            cupor: \"⩅\",\n            cups: \"∪︀\",\n            curarr: \"↷\",\n            curarrm: \"⤼\",\n            curlyeqprec: \"⋞\",\n            curlyeqsucc: \"⋟\",\n            curlyvee: \"⋎\",\n            curlywedge: \"⋏\",\n            curren: \"¤\",\n            curvearrowleft: \"↶\",\n            curvearrowright: \"↷\",\n            cuvee: \"⋎\",\n            cuwed: \"⋏\",\n            cwconint: \"∲\",\n            cwint: \"∱\",\n            cylcty: \"⌭\",\n            Dagger: \"‡\",\n            dagger: \"†\",\n            daleth: \"ℸ\",\n            Darr: \"↡\",\n            dArr: \"⇓\",\n            darr: \"↓\",\n            dash: \"‐\",\n            Dashv: \"⫤\",\n            dashv: \"⊣\",\n            dbkarow: \"⤏\",\n            dblac: \"˝\",\n            Dcaron: \"Ď\",\n            dcaron: \"ď\",\n            Dcy: \"Д\",\n            dcy: \"д\",\n            DD: \"ⅅ\",\n            dd: \"ⅆ\",\n            ddagger: \"‡\",\n            ddarr: \"⇊\",\n            DDotrahd: \"⤑\",\n            ddotseq: \"⩷\",\n            deg: \"°\",\n            Del: \"∇\",\n            Delta: \"Δ\",\n            delta: \"δ\",\n            demptyv: \"⦱\",\n            dfisht: \"⥿\",\n            Dfr: \"𝔇\",\n            dfr: \"𝔡\",\n            dHar: \"⥥\",\n            dharl: \"⇃\",\n            dharr: \"⇂\",\n            DiacriticalAcute: \"´\",\n            DiacriticalDot: \"˙\",\n            DiacriticalDoubleAcute: \"˝\",\n            DiacriticalGrave: \"`\",\n            DiacriticalTilde: \"˜\",\n            diam: \"⋄\",\n            Diamond: \"⋄\",\n            diamond: \"⋄\",\n            diamondsuit: \"♦\",\n            diams: \"♦\",\n            die: \"¨\",\n            DifferentialD: \"ⅆ\",\n            digamma: \"ϝ\",\n            disin: \"⋲\",\n            div: \"÷\",\n            divide: \"÷\",\n            divideontimes: \"⋇\",\n            divonx: \"⋇\",\n            DJcy: \"Ђ\",\n            djcy: \"ђ\",\n            dlcorn: \"⌞\",\n            dlcrop: \"⌍\",\n            dollar: \"$\",\n            Dopf: \"𝔻\",\n            dopf: \"𝕕\",\n            Dot: \"¨\",\n            dot: \"˙\",\n            DotDot: \"⃜\",\n            doteq: \"≐\",\n            doteqdot: \"≑\",\n            DotEqual: \"≐\",\n            dotminus: \"∸\",\n            dotplus: \"∔\",\n            dotsquare: \"⊡\",\n            doublebarwedge: \"⌆\",\n            DoubleContourIntegral: \"∯\",\n            DoubleDot: \"¨\",\n            DoubleDownArrow: \"⇓\",\n            DoubleLeftArrow: \"⇐\",\n            DoubleLeftRightArrow: \"⇔\",\n            DoubleLeftTee: \"⫤\",\n            DoubleLongLeftArrow: \"⟸\",\n            DoubleLongLeftRightArrow: \"⟺\",\n            DoubleLongRightArrow: \"⟹\",\n            DoubleRightArrow: \"⇒\",\n            DoubleRightTee: \"⊨\",\n            DoubleUpArrow: \"⇑\",\n            DoubleUpDownArrow: \"⇕\",\n            DoubleVerticalBar: \"∥\",\n            DownArrow: \"↓\",\n            Downarrow: \"⇓\",\n            downarrow: \"↓\",\n            DownArrowBar: \"⤓\",\n            DownArrowUpArrow: \"⇵\",\n            DownBreve: \"̑\",\n            downdownarrows: \"⇊\",\n            downharpoonleft: \"⇃\",\n            downharpoonright: \"⇂\",\n            DownLeftRightVector: \"⥐\",\n            DownLeftTeeVector: \"⥞\",\n            DownLeftVector: \"↽\",\n            DownLeftVectorBar: \"⥖\",\n            DownRightTeeVector: \"⥟\",\n            DownRightVector: \"⇁\",\n            DownRightVectorBar: \"⥗\",\n            DownTee: \"⊤\",\n            DownTeeArrow: \"↧\",\n            drbkarow: \"⤐\",\n            drcorn: \"⌟\",\n            drcrop: \"⌌\",\n            Dscr: \"𝒟\",\n            dscr: \"𝒹\",\n            DScy: \"Ѕ\",\n            dscy: \"ѕ\",\n            dsol: \"⧶\",\n            Dstrok: \"Đ\",\n            dstrok: \"đ\",\n            dtdot: \"⋱\",\n            dtri: \"▿\",\n            dtrif: \"▾\",\n            duarr: \"⇵\",\n            duhar: \"⥯\",\n            dwangle: \"⦦\",\n            DZcy: \"Џ\",\n            dzcy: \"џ\",\n            dzigrarr: \"⟿\",\n            Eacute: \"É\",\n            eacute: \"é\",\n            easter: \"⩮\",\n            Ecaron: \"Ě\",\n            ecaron: \"ě\",\n            ecir: \"≖\",\n            Ecirc: \"Ê\",\n            ecirc: \"ê\",\n            ecolon: \"≕\",\n            Ecy: \"Э\",\n            ecy: \"э\",\n            eDDot: \"⩷\",\n            Edot: \"Ė\",\n            eDot: \"≑\",\n            edot: \"ė\",\n            ee: \"ⅇ\",\n            efDot: \"≒\",\n            Efr: \"𝔈\",\n            efr: \"𝔢\",\n            eg: \"⪚\",\n            Egrave: \"È\",\n            egrave: \"è\",\n            egs: \"⪖\",\n            egsdot: \"⪘\",\n            el: \"⪙\",\n            Element: \"∈\",\n            elinters: \"⏧\",\n            ell: \"ℓ\",\n            els: \"⪕\",\n            elsdot: \"⪗\",\n            Emacr: \"Ē\",\n            emacr: \"ē\",\n            empty: \"∅\",\n            emptyset: \"∅\",\n            EmptySmallSquare: \"◻\",\n            emptyv: \"∅\",\n            EmptyVerySmallSquare: \"▫\",\n            emsp: \" \",\n            emsp13: \" \",\n            emsp14: \" \",\n            ENG: \"Ŋ\",\n            eng: \"ŋ\",\n            ensp: \" \",\n            Eogon: \"Ę\",\n            eogon: \"ę\",\n            Eopf: \"𝔼\",\n            eopf: \"𝕖\",\n            epar: \"⋕\",\n            eparsl: \"⧣\",\n            eplus: \"⩱\",\n            epsi: \"ε\",\n            Epsilon: \"Ε\",\n            epsilon: \"ε\",\n            epsiv: \"ϵ\",\n            eqcirc: \"≖\",\n            eqcolon: \"≕\",\n            eqsim: \"≂\",\n            eqslantgtr: \"⪖\",\n            eqslantless: \"⪕\",\n            Equal: \"⩵\",\n            equals: \"=\",\n            EqualTilde: \"≂\",\n            equest: \"≟\",\n            Equilibrium: \"⇌\",\n            equiv: \"≡\",\n            equivDD: \"⩸\",\n            eqvparsl: \"⧥\",\n            erarr: \"⥱\",\n            erDot: \"≓\",\n            Escr: \"ℰ\",\n            escr: \"ℯ\",\n            esdot: \"≐\",\n            Esim: \"⩳\",\n            esim: \"≂\",\n            Eta: \"Η\",\n            eta: \"η\",\n            ETH: \"Ð\",\n            eth: \"ð\",\n            Euml: \"Ë\",\n            euml: \"ë\",\n            euro: \"€\",\n            excl: \"!\",\n            exist: \"∃\",\n            Exists: \"∃\",\n            expectation: \"ℰ\",\n            ExponentialE: \"ⅇ\",\n            exponentiale: \"ⅇ\",\n            fallingdotseq: \"≒\",\n            Fcy: \"Ф\",\n            fcy: \"ф\",\n            female: \"♀\",\n            ffilig: \"ﬃ\",\n            fflig: \"ﬀ\",\n            ffllig: \"ﬄ\",\n            Ffr: \"𝔉\",\n            ffr: \"𝔣\",\n            filig: \"ﬁ\",\n            FilledSmallSquare: \"◼\",\n            FilledVerySmallSquare: \"▪\",\n            fjlig: \"fj\",\n            flat: \"♭\",\n            fllig: \"ﬂ\",\n            fltns: \"▱\",\n            fnof: \"ƒ\",\n            Fopf: \"𝔽\",\n            fopf: \"𝕗\",\n            ForAll: \"∀\",\n            forall: \"∀\",\n            fork: \"⋔\",\n            forkv: \"⫙\",\n            Fouriertrf: \"ℱ\",\n            fpartint: \"⨍\",\n            frac12: \"½\",\n            frac13: \"⅓\",\n            frac14: \"¼\",\n            frac15: \"⅕\",\n            frac16: \"⅙\",\n            frac18: \"⅛\",\n            frac23: \"⅔\",\n            frac25: \"⅖\",\n            frac34: \"¾\",\n            frac35: \"⅗\",\n            frac38: \"⅜\",\n            frac45: \"⅘\",\n            frac56: \"⅚\",\n            frac58: \"⅝\",\n            frac78: \"⅞\",\n            frasl: \"⁄\",\n            frown: \"⌢\",\n            Fscr: \"ℱ\",\n            fscr: \"𝒻\",\n            gacute: \"ǵ\",\n            Gamma: \"Γ\",\n            gamma: \"γ\",\n            Gammad: \"Ϝ\",\n            gammad: \"ϝ\",\n            gap: \"⪆\",\n            Gbreve: \"Ğ\",\n            gbreve: \"ğ\",\n            Gcedil: \"Ģ\",\n            Gcirc: \"Ĝ\",\n            gcirc: \"ĝ\",\n            Gcy: \"Г\",\n            gcy: \"г\",\n            Gdot: \"Ġ\",\n            gdot: \"ġ\",\n            gE: \"≧\",\n            ge: \"≥\",\n            gEl: \"⪌\",\n            gel: \"⋛\",\n            geq: \"≥\",\n            geqq: \"≧\",\n            geqslant: \"⩾\",\n            ges: \"⩾\",\n            gescc: \"⪩\",\n            gesdot: \"⪀\",\n            gesdoto: \"⪂\",\n            gesdotol: \"⪄\",\n            gesl: \"⋛︀\",\n            gesles: \"⪔\",\n            Gfr: \"𝔊\",\n            gfr: \"𝔤\",\n            Gg: \"⋙\",\n            gg: \"≫\",\n            ggg: \"⋙\",\n            gimel: \"ℷ\",\n            GJcy: \"Ѓ\",\n            gjcy: \"ѓ\",\n            gl: \"≷\",\n            gla: \"⪥\",\n            glE: \"⪒\",\n            glj: \"⪤\",\n            gnap: \"⪊\",\n            gnapprox: \"⪊\",\n            gnE: \"≩\",\n            gne: \"⪈\",\n            gneq: \"⪈\",\n            gneqq: \"≩\",\n            gnsim: \"⋧\",\n            Gopf: \"𝔾\",\n            gopf: \"𝕘\",\n            grave: \"`\",\n            GreaterEqual: \"≥\",\n            GreaterEqualLess: \"⋛\",\n            GreaterFullEqual: \"≧\",\n            GreaterGreater: \"⪢\",\n            GreaterLess: \"≷\",\n            GreaterSlantEqual: \"⩾\",\n            GreaterTilde: \"≳\",\n            Gscr: \"𝒢\",\n            gscr: \"ℊ\",\n            gsim: \"≳\",\n            gsime: \"⪎\",\n            gsiml: \"⪐\",\n            GT: \">\",\n            Gt: \"≫\",\n            gt: \">\",\n            gtcc: \"⪧\",\n            gtcir: \"⩺\",\n            gtdot: \"⋗\",\n            gtlPar: \"⦕\",\n            gtquest: \"⩼\",\n            gtrapprox: \"⪆\",\n            gtrarr: \"⥸\",\n            gtrdot: \"⋗\",\n            gtreqless: \"⋛\",\n            gtreqqless: \"⪌\",\n            gtrless: \"≷\",\n            gtrsim: \"≳\",\n            gvertneqq: \"≩︀\",\n            gvnE: \"≩︀\",\n            Hacek: \"ˇ\",\n            hairsp: \" \",\n            half: \"½\",\n            hamilt: \"ℋ\",\n            HARDcy: \"Ъ\",\n            hardcy: \"ъ\",\n            hArr: \"⇔\",\n            harr: \"↔\",\n            harrcir: \"⥈\",\n            harrw: \"↭\",\n            Hat: \"^\",\n            hbar: \"ℏ\",\n            Hcirc: \"Ĥ\",\n            hcirc: \"ĥ\",\n            hearts: \"♥\",\n            heartsuit: \"♥\",\n            hellip: \"…\",\n            hercon: \"⊹\",\n            Hfr: \"ℌ\",\n            hfr: \"𝔥\",\n            HilbertSpace: \"ℋ\",\n            hksearow: \"⤥\",\n            hkswarow: \"⤦\",\n            hoarr: \"⇿\",\n            homtht: \"∻\",\n            hookleftarrow: \"↩\",\n            hookrightarrow: \"↪\",\n            Hopf: \"ℍ\",\n            hopf: \"𝕙\",\n            horbar: \"―\",\n            HorizontalLine: \"─\",\n            Hscr: \"ℋ\",\n            hscr: \"𝒽\",\n            hslash: \"ℏ\",\n            Hstrok: \"Ħ\",\n            hstrok: \"ħ\",\n            HumpDownHump: \"≎\",\n            HumpEqual: \"≏\",\n            hybull: \"⁃\",\n            hyphen: \"‐\",\n            Iacute: \"Í\",\n            iacute: \"í\",\n            ic: \"⁣\",\n            Icirc: \"Î\",\n            icirc: \"î\",\n            Icy: \"И\",\n            icy: \"и\",\n            Idot: \"İ\",\n            IEcy: \"Е\",\n            iecy: \"е\",\n            iexcl: \"¡\",\n            iff: \"⇔\",\n            Ifr: \"ℑ\",\n            ifr: \"𝔦\",\n            Igrave: \"Ì\",\n            igrave: \"ì\",\n            ii: \"ⅈ\",\n            iiiint: \"⨌\",\n            iiint: \"∭\",\n            iinfin: \"⧜\",\n            iiota: \"℩\",\n            IJlig: \"Ĳ\",\n            ijlig: \"ĳ\",\n            Im: \"ℑ\",\n            Imacr: \"Ī\",\n            imacr: \"ī\",\n            image: \"ℑ\",\n            ImaginaryI: \"ⅈ\",\n            imagline: \"ℐ\",\n            imagpart: \"ℑ\",\n            imath: \"ı\",\n            imof: \"⊷\",\n            imped: \"Ƶ\",\n            Implies: \"⇒\",\n            in : \"∈\",\n            incare: \"℅\",\n            infin: \"∞\",\n            infintie: \"⧝\",\n            inodot: \"ı\",\n            Int: \"∬\",\n            int: \"∫\",\n            intcal: \"⊺\",\n            integers: \"ℤ\",\n            Integral: \"∫\",\n            intercal: \"⊺\",\n            Intersection: \"⋂\",\n            intlarhk: \"⨗\",\n            intprod: \"⨼\",\n            InvisibleComma: \"⁣\",\n            InvisibleTimes: \"⁢\",\n            IOcy: \"Ё\",\n            iocy: \"ё\",\n            Iogon: \"Į\",\n            iogon: \"į\",\n            Iopf: \"𝕀\",\n            iopf: \"𝕚\",\n            Iota: \"Ι\",\n            iota: \"ι\",\n            iprod: \"⨼\",\n            iquest: \"¿\",\n            Iscr: \"ℐ\",\n            iscr: \"𝒾\",\n            isin: \"∈\",\n            isindot: \"⋵\",\n            isinE: \"⋹\",\n            isins: \"⋴\",\n            isinsv: \"⋳\",\n            isinv: \"∈\",\n            it: \"⁢\",\n            Itilde: \"Ĩ\",\n            itilde: \"ĩ\",\n            Iukcy: \"І\",\n            iukcy: \"і\",\n            Iuml: \"Ï\",\n            iuml: \"ï\",\n            Jcirc: \"Ĵ\",\n            jcirc: \"ĵ\",\n            Jcy: \"Й\",\n            jcy: \"й\",\n            Jfr: \"𝔍\",\n            jfr: \"𝔧\",\n            jmath: \"ȷ\",\n            Jopf: \"𝕁\",\n            jopf: \"𝕛\",\n            Jscr: \"𝒥\",\n            jscr: \"𝒿\",\n            Jsercy: \"Ј\",\n            jsercy: \"ј\",\n            Jukcy: \"Є\",\n            jukcy: \"є\",\n            Kappa: \"Κ\",\n            kappa: \"κ\",\n            kappav: \"ϰ\",\n            Kcedil: \"Ķ\",\n            kcedil: \"ķ\",\n            Kcy: \"К\",\n            kcy: \"к\",\n            Kfr: \"𝔎\",\n            kfr: \"𝔨\",\n            kgreen: \"ĸ\",\n            KHcy: \"Х\",\n            khcy: \"х\",\n            KJcy: \"Ќ\",\n            kjcy: \"ќ\",\n            Kopf: \"𝕂\",\n            kopf: \"𝕜\",\n            Kscr: \"𝒦\",\n            kscr: \"𝓀\",\n            lAarr: \"⇚\",\n            Lacute: \"Ĺ\",\n            lacute: \"ĺ\",\n            laemptyv: \"⦴\",\n            lagran: \"ℒ\",\n            Lambda: \"Λ\",\n            lambda: \"λ\",\n            Lang: \"⟪\",\n            lang: \"⟨\",\n            langd: \"⦑\",\n            langle: \"⟨\",\n            lap: \"⪅\",\n            Laplacetrf: \"ℒ\",\n            laquo: \"«\",\n            Larr: \"↞\",\n            lArr: \"⇐\",\n            larr: \"←\",\n            larrb: \"⇤\",\n            larrbfs: \"⤟\",\n            larrfs: \"⤝\",\n            larrhk: \"↩\",\n            larrlp: \"↫\",\n            larrpl: \"⤹\",\n            larrsim: \"⥳\",\n            larrtl: \"↢\",\n            lat: \"⪫\",\n            lAtail: \"⤛\",\n            latail: \"⤙\",\n            late: \"⪭\",\n            lates: \"⪭︀\",\n            lBarr: \"⤎\",\n            lbarr: \"⤌\",\n            lbbrk: \"❲\",\n            lbrace: \"{\",\n            lbrack: \"[\",\n            lbrke: \"⦋\",\n            lbrksld: \"⦏\",\n            lbrkslu: \"⦍\",\n            Lcaron: \"Ľ\",\n            lcaron: \"ľ\",\n            Lcedil: \"Ļ\",\n            lcedil: \"ļ\",\n            lceil: \"⌈\",\n            lcub: \"{\",\n            Lcy: \"Л\",\n            lcy: \"л\",\n            ldca: \"⤶\",\n            ldquo: \"“\",\n            ldquor: \"„\",\n            ldrdhar: \"⥧\",\n            ldrushar: \"⥋\",\n            ldsh: \"↲\",\n            lE: \"≦\",\n            le: \"≤\",\n            LeftAngleBracket: \"⟨\",\n            LeftArrow: \"←\",\n            Leftarrow: \"⇐\",\n            leftarrow: \"←\",\n            LeftArrowBar: \"⇤\",\n            LeftArrowRightArrow: \"⇆\",\n            leftarrowtail: \"↢\",\n            LeftCeiling: \"⌈\",\n            LeftDoubleBracket: \"⟦\",\n            LeftDownTeeVector: \"⥡\",\n            LeftDownVector: \"⇃\",\n            LeftDownVectorBar: \"⥙\",\n            LeftFloor: \"⌊\",\n            leftharpoondown: \"↽\",\n            leftharpoonup: \"↼\",\n            leftleftarrows: \"⇇\",\n            LeftRightArrow: \"↔\",\n            Leftrightarrow: \"⇔\",\n            leftrightarrow: \"↔\",\n            leftrightarrows: \"⇆\",\n            leftrightharpoons: \"⇋\",\n            leftrightsquigarrow: \"↭\",\n            LeftRightVector: \"⥎\",\n            LeftTee: \"⊣\",\n            LeftTeeArrow: \"↤\",\n            LeftTeeVector: \"⥚\",\n            leftthreetimes: \"⋋\",\n            LeftTriangle: \"⊲\",\n            LeftTriangleBar: \"⧏\",\n            LeftTriangleEqual: \"⊴\",\n            LeftUpDownVector: \"⥑\",\n            LeftUpTeeVector: \"⥠\",\n            LeftUpVector: \"↿\",\n            LeftUpVectorBar: \"⥘\",\n            LeftVector: \"↼\",\n            LeftVectorBar: \"⥒\",\n            lEg: \"⪋\",\n            leg: \"⋚\",\n            leq: \"≤\",\n            leqq: \"≦\",\n            leqslant: \"⩽\",\n            les: \"⩽\",\n            lescc: \"⪨\",\n            lesdot: \"⩿\",\n            lesdoto: \"⪁\",\n            lesdotor: \"⪃\",\n            lesg: \"⋚︀\",\n            lesges: \"⪓\",\n            lessapprox: \"⪅\",\n            lessdot: \"⋖\",\n            lesseqgtr: \"⋚\",\n            lesseqqgtr: \"⪋\",\n            LessEqualGreater: \"⋚\",\n            LessFullEqual: \"≦\",\n            LessGreater: \"≶\",\n            lessgtr: \"≶\",\n            LessLess: \"⪡\",\n            lesssim: \"≲\",\n            LessSlantEqual: \"⩽\",\n            LessTilde: \"≲\",\n            lfisht: \"⥼\",\n            lfloor: \"⌊\",\n            Lfr: \"𝔏\",\n            lfr: \"𝔩\",\n            lg: \"≶\",\n            lgE: \"⪑\",\n            lHar: \"⥢\",\n            lhard: \"↽\",\n            lharu: \"↼\",\n            lharul: \"⥪\",\n            lhblk: \"▄\",\n            LJcy: \"Љ\",\n            ljcy: \"љ\",\n            Ll: \"⋘\",\n            ll: \"≪\",\n            llarr: \"⇇\",\n            llcorner: \"⌞\",\n            Lleftarrow: \"⇚\",\n            llhard: \"⥫\",\n            lltri: \"◺\",\n            Lmidot: \"Ŀ\",\n            lmidot: \"ŀ\",\n            lmoust: \"⎰\",\n            lmoustache: \"⎰\",\n            lnap: \"⪉\",\n            lnapprox: \"⪉\",\n            lnE: \"≨\",\n            lne: \"⪇\",\n            lneq: \"⪇\",\n            lneqq: \"≨\",\n            lnsim: \"⋦\",\n            loang: \"⟬\",\n            loarr: \"⇽\",\n            lobrk: \"⟦\",\n            LongLeftArrow: \"⟵\",\n            Longleftarrow: \"⟸\",\n            longleftarrow: \"⟵\",\n            LongLeftRightArrow: \"⟷\",\n            Longleftrightarrow: \"⟺\",\n            longleftrightarrow: \"⟷\",\n            longmapsto: \"⟼\",\n            LongRightArrow: \"⟶\",\n            Longrightarrow: \"⟹\",\n            longrightarrow: \"⟶\",\n            looparrowleft: \"↫\",\n            looparrowright: \"↬\",\n            lopar: \"⦅\",\n            Lopf: \"𝕃\",\n            lopf: \"𝕝\",\n            loplus: \"⨭\",\n            lotimes: \"⨴\",\n            lowast: \"∗\",\n            lowbar: \"_\",\n            LowerLeftArrow: \"↙\",\n            LowerRightArrow: \"↘\",\n            loz: \"◊\",\n            lozenge: \"◊\",\n            lozf: \"⧫\",\n            lpar: \"(\",\n            lparlt: \"⦓\",\n            lrarr: \"⇆\",\n            lrcorner: \"⌟\",\n            lrhar: \"⇋\",\n            lrhard: \"⥭\",\n            lrm: \"‎\",\n            lrtri: \"⊿\",\n            lsaquo: \"‹\",\n            Lscr: \"ℒ\",\n            lscr: \"𝓁\",\n            Lsh: \"↰\",\n            lsh: \"↰\",\n            lsim: \"≲\",\n            lsime: \"⪍\",\n            lsimg: \"⪏\",\n            lsqb: \"[\",\n            lsquo: \"‘\",\n            lsquor: \"‚\",\n            Lstrok: \"Ł\",\n            lstrok: \"ł\",\n            LT: \"<\",\n            Lt: \"≪\",\n            lt: \"<\",\n            ltcc: \"⪦\",\n            ltcir: \"⩹\",\n            ltdot: \"⋖\",\n            lthree: \"⋋\",\n            ltimes: \"⋉\",\n            ltlarr: \"⥶\",\n            ltquest: \"⩻\",\n            ltri: \"◃\",\n            ltrie: \"⊴\",\n            ltrif: \"◂\",\n            ltrPar: \"⦖\",\n            lurdshar: \"⥊\",\n            luruhar: \"⥦\",\n            lvertneqq: \"≨︀\",\n            lvnE: \"≨︀\",\n            macr: \"¯\",\n            male: \"♂\",\n            malt: \"✠\",\n            maltese: \"✠\",\n            Map: \"⤅\",\n            map: \"↦\",\n            mapsto: \"↦\",\n            mapstodown: \"↧\",\n            mapstoleft: \"↤\",\n            mapstoup: \"↥\",\n            marker: \"▮\",\n            mcomma: \"⨩\",\n            Mcy: \"М\",\n            mcy: \"м\",\n            mdash: \"—\",\n            mDDot: \"∺\",\n            measuredangle: \"∡\",\n            MediumSpace: \" \",\n            Mellintrf: \"ℳ\",\n            Mfr: \"𝔐\",\n            mfr: \"𝔪\",\n            mho: \"℧\",\n            micro: \"µ\",\n            mid: \"∣\",\n            midast: \"*\",\n            midcir: \"⫰\",\n            middot: \"·\",\n            minus: \"−\",\n            minusb: \"⊟\",\n            minusd: \"∸\",\n            minusdu: \"⨪\",\n            MinusPlus: \"∓\",\n            mlcp: \"⫛\",\n            mldr: \"…\",\n            mnplus: \"∓\",\n            models: \"⊧\",\n            Mopf: \"𝕄\",\n            mopf: \"𝕞\",\n            mp: \"∓\",\n            Mscr: \"ℳ\",\n            mscr: \"𝓂\",\n            mstpos: \"∾\",\n            Mu: \"Μ\",\n            mu: \"μ\",\n            multimap: \"⊸\",\n            mumap: \"⊸\",\n            nabla: \"∇\",\n            Nacute: \"Ń\",\n            nacute: \"ń\",\n            nang: \"∠⃒\",\n            nap: \"≉\",\n            napE: \"⩰̸\",\n            napid: \"≋̸\",\n            napos: \"ŉ\",\n            napprox: \"≉\",\n            natur: \"♮\",\n            natural: \"♮\",\n            naturals: \"ℕ\",\n            nbsp: \" \",\n            nbump: \"≎̸\",\n            nbumpe: \"≏̸\",\n            ncap: \"⩃\",\n            Ncaron: \"Ň\",\n            ncaron: \"ň\",\n            Ncedil: \"Ņ\",\n            ncedil: \"ņ\",\n            ncong: \"≇\",\n            ncongdot: \"⩭̸\",\n            ncup: \"⩂\",\n            Ncy: \"Н\",\n            ncy: \"н\",\n            ndash: \"–\",\n            ne: \"≠\",\n            nearhk: \"⤤\",\n            neArr: \"⇗\",\n            nearr: \"↗\",\n            nearrow: \"↗\",\n            nedot: \"≐̸\",\n            NegativeMediumSpace: \"​\",\n            NegativeThickSpace: \"​\",\n            NegativeThinSpace: \"​\",\n            NegativeVeryThinSpace: \"​\",\n            nequiv: \"≢\",\n            nesear: \"⤨\",\n            nesim: \"≂̸\",\n            NestedGreaterGreater: \"≫\",\n            NestedLessLess: \"≪\",\n            NewLine: \"\\n\",\n            nexist: \"∄\",\n            nexists: \"∄\",\n            Nfr: \"𝔑\",\n            nfr: \"𝔫\",\n            ngE: \"≧̸\",\n            nge: \"≱\",\n            ngeq: \"≱\",\n            ngeqq: \"≧̸\",\n            ngeqslant: \"⩾̸\",\n            nges: \"⩾̸\",\n            nGg: \"⋙̸\",\n            ngsim: \"≵\",\n            nGt: \"≫⃒\",\n            ngt: \"≯\",\n            ngtr: \"≯\",\n            nGtv: \"≫̸\",\n            nhArr: \"⇎\",\n            nharr: \"↮\",\n            nhpar: \"⫲\",\n            ni: \"∋\",\n            nis: \"⋼\",\n            nisd: \"⋺\",\n            niv: \"∋\",\n            NJcy: \"Њ\",\n            njcy: \"њ\",\n            nlArr: \"⇍\",\n            nlarr: \"↚\",\n            nldr: \"‥\",\n            nlE: \"≦̸\",\n            nle: \"≰\",\n            nLeftarrow: \"⇍\",\n            nleftarrow: \"↚\",\n            nLeftrightarrow: \"⇎\",\n            nleftrightarrow: \"↮\",\n            nleq: \"≰\",\n            nleqq: \"≦̸\",\n            nleqslant: \"⩽̸\",\n            nles: \"⩽̸\",\n            nless: \"≮\",\n            nLl: \"⋘̸\",\n            nlsim: \"≴\",\n            nLt: \"≪⃒\",\n            nlt: \"≮\",\n            nltri: \"⋪\",\n            nltrie: \"⋬\",\n            nLtv: \"≪̸\",\n            nmid: \"∤\",\n            NoBreak: \"⁠\",\n            NonBreakingSpace: \" \",\n            Nopf: \"ℕ\",\n            nopf: \"𝕟\",\n            Not: \"⫬\",\n            not: \"¬\",\n            NotCongruent: \"≢\",\n            NotCupCap: \"≭\",\n            NotDoubleVerticalBar: \"∦\",\n            NotElement: \"∉\",\n            NotEqual: \"≠\",\n            NotEqualTilde: \"≂̸\",\n            NotExists: \"∄\",\n            NotGreater: \"≯\",\n            NotGreaterEqual: \"≱\",\n            NotGreaterFullEqual: \"≧̸\",\n            NotGreaterGreater: \"≫̸\",\n            NotGreaterLess: \"≹\",\n            NotGreaterSlantEqual: \"⩾̸\",\n            NotGreaterTilde: \"≵\",\n            NotHumpDownHump: \"≎̸\",\n            NotHumpEqual: \"≏̸\",\n            notin: \"∉\",\n            notindot: \"⋵̸\",\n            notinE: \"⋹̸\",\n            notinva: \"∉\",\n            notinvb: \"⋷\",\n            notinvc: \"⋶\",\n            NotLeftTriangle: \"⋪\",\n            NotLeftTriangleBar: \"⧏̸\",\n            NotLeftTriangleEqual: \"⋬\",\n            NotLess: \"≮\",\n            NotLessEqual: \"≰\",\n            NotLessGreater: \"≸\",\n            NotLessLess: \"≪̸\",\n            NotLessSlantEqual: \"⩽̸\",\n            NotLessTilde: \"≴\",\n            NotNestedGreaterGreater: \"⪢̸\",\n            NotNestedLessLess: \"⪡̸\",\n            notni: \"∌\",\n            notniva: \"∌\",\n            notnivb: \"⋾\",\n            notnivc: \"⋽\",\n            NotPrecedes: \"⊀\",\n            NotPrecedesEqual: \"⪯̸\",\n            NotPrecedesSlantEqual: \"⋠\",\n            NotReverseElement: \"∌\",\n            NotRightTriangle: \"⋫\",\n            NotRightTriangleBar: \"⧐̸\",\n            NotRightTriangleEqual: \"⋭\",\n            NotSquareSubset: \"⊏̸\",\n            NotSquareSubsetEqual: \"⋢\",\n            NotSquareSuperset: \"⊐̸\",\n            NotSquareSupersetEqual: \"⋣\",\n            NotSubset: \"⊂⃒\",\n            NotSubsetEqual: \"⊈\",\n            NotSucceeds: \"⊁\",\n            NotSucceedsEqual: \"⪰̸\",\n            NotSucceedsSlantEqual: \"⋡\",\n            NotSucceedsTilde: \"≿̸\",\n            NotSuperset: \"⊃⃒\",\n            NotSupersetEqual: \"⊉\",\n            NotTilde: \"≁\",\n            NotTildeEqual: \"≄\",\n            NotTildeFullEqual: \"≇\",\n            NotTildeTilde: \"≉\",\n            NotVerticalBar: \"∤\",\n            npar: \"∦\",\n            nparallel: \"∦\",\n            nparsl: \"⫽⃥\",\n            npart: \"∂̸\",\n            npolint: \"⨔\",\n            npr: \"⊀\",\n            nprcue: \"⋠\",\n            npre: \"⪯̸\",\n            nprec: \"⊀\",\n            npreceq: \"⪯̸\",\n            nrArr: \"⇏\",\n            nrarr: \"↛\",\n            nrarrc: \"⤳̸\",\n            nrarrw: \"↝̸\",\n            nRightarrow: \"⇏\",\n            nrightarrow: \"↛\",\n            nrtri: \"⋫\",\n            nrtrie: \"⋭\",\n            nsc: \"⊁\",\n            nsccue: \"⋡\",\n            nsce: \"⪰̸\",\n            Nscr: \"𝒩\",\n            nscr: \"𝓃\",\n            nshortmid: \"∤\",\n            nshortparallel: \"∦\",\n            nsim: \"≁\",\n            nsime: \"≄\",\n            nsimeq: \"≄\",\n            nsmid: \"∤\",\n            nspar: \"∦\",\n            nsqsube: \"⋢\",\n            nsqsupe: \"⋣\",\n            nsub: \"⊄\",\n            nsubE: \"⫅̸\",\n            nsube: \"⊈\",\n            nsubset: \"⊂⃒\",\n            nsubseteq: \"⊈\",\n            nsubseteqq: \"⫅̸\",\n            nsucc: \"⊁\",\n            nsucceq: \"⪰̸\",\n            nsup: \"⊅\",\n            nsupE: \"⫆̸\",\n            nsupe: \"⊉\",\n            nsupset: \"⊃⃒\",\n            nsupseteq: \"⊉\",\n            nsupseteqq: \"⫆̸\",\n            ntgl: \"≹\",\n            Ntilde: \"Ñ\",\n            ntilde: \"ñ\",\n            ntlg: \"≸\",\n            ntriangleleft: \"⋪\",\n            ntrianglelefteq: \"⋬\",\n            ntriangleright: \"⋫\",\n            ntrianglerighteq: \"⋭\",\n            Nu: \"Ν\",\n            nu: \"ν\",\n            num: \"#\",\n            numero: \"№\",\n            numsp: \" \",\n            nvap: \"≍⃒\",\n            nVDash: \"⊯\",\n            nVdash: \"⊮\",\n            nvDash: \"⊭\",\n            nvdash: \"⊬\",\n            nvge: \"≥⃒\",\n            nvgt: \">⃒\",\n            nvHarr: \"⤄\",\n            nvinfin: \"⧞\",\n            nvlArr: \"⤂\",\n            nvle: \"≤⃒\",\n            nvlt: \"<⃒\",\n            nvltrie: \"⊴⃒\",\n            nvrArr: \"⤃\",\n            nvrtrie: \"⊵⃒\",\n            nvsim: \"∼⃒\",\n            nwarhk: \"⤣\",\n            nwArr: \"⇖\",\n            nwarr: \"↖\",\n            nwarrow: \"↖\",\n            nwnear: \"⤧\",\n            Oacute: \"Ó\",\n            oacute: \"ó\",\n            oast: \"⊛\",\n            ocir: \"⊚\",\n            Ocirc: \"Ô\",\n            ocirc: \"ô\",\n            Ocy: \"О\",\n            ocy: \"о\",\n            odash: \"⊝\",\n            Odblac: \"Ő\",\n            odblac: \"ő\",\n            odiv: \"⨸\",\n            odot: \"⊙\",\n            odsold: \"⦼\",\n            OElig: \"Œ\",\n            oelig: \"œ\",\n            ofcir: \"⦿\",\n            Ofr: \"𝔒\",\n            ofr: \"𝔬\",\n            ogon: \"˛\",\n            Ograve: \"Ò\",\n            ograve: \"ò\",\n            ogt: \"⧁\",\n            ohbar: \"⦵\",\n            ohm: \"Ω\",\n            oint: \"∮\",\n            olarr: \"↺\",\n            olcir: \"⦾\",\n            olcross: \"⦻\",\n            oline: \"‾\",\n            olt: \"⧀\",\n            Omacr: \"Ō\",\n            omacr: \"ō\",\n            Omega: \"Ω\",\n            omega: \"ω\",\n            Omicron: \"Ο\",\n            omicron: \"ο\",\n            omid: \"⦶\",\n            ominus: \"⊖\",\n            Oopf: \"𝕆\",\n            oopf: \"𝕠\",\n            opar: \"⦷\",\n            OpenCurlyDoubleQuote: \"“\",\n            OpenCurlyQuote: \"‘\",\n            operp: \"⦹\",\n            oplus: \"⊕\",\n            Or: \"⩔\",\n            or: \"∨\",\n            orarr: \"↻\",\n            ord: \"⩝\",\n            order: \"ℴ\",\n            orderof: \"ℴ\",\n            ordf: \"ª\",\n            ordm: \"º\",\n            origof: \"⊶\",\n            oror: \"⩖\",\n            orslope: \"⩗\",\n            orv: \"⩛\",\n            oS: \"Ⓢ\",\n            Oscr: \"𝒪\",\n            oscr: \"ℴ\",\n            Oslash: \"Ø\",\n            oslash: \"ø\",\n            osol: \"⊘\",\n            Otilde: \"Õ\",\n            otilde: \"õ\",\n            Otimes: \"⨷\",\n            otimes: \"⊗\",\n            otimesas: \"⨶\",\n            Ouml: \"Ö\",\n            ouml: \"ö\",\n            ovbar: \"⌽\",\n            OverBar: \"‾\",\n            OverBrace: \"⏞\",\n            OverBracket: \"⎴\",\n            OverParenthesis: \"⏜\",\n            par: \"∥\",\n            para: \"¶\",\n            parallel: \"∥\",\n            parsim: \"⫳\",\n            parsl: \"⫽\",\n            part: \"∂\",\n            PartialD: \"∂\",\n            Pcy: \"П\",\n            pcy: \"п\",\n            percnt: \"%\",\n            period: \".\",\n            permil: \"‰\",\n            perp: \"⊥\",\n            pertenk: \"‱\",\n            Pfr: \"𝔓\",\n            pfr: \"𝔭\",\n            Phi: \"Φ\",\n            phi: \"φ\",\n            phiv: \"ϕ\",\n            phmmat: \"ℳ\",\n            phone: \"☎\",\n            Pi: \"Π\",\n            pi: \"π\",\n            pitchfork: \"⋔\",\n            piv: \"ϖ\",\n            planck: \"ℏ\",\n            planckh: \"ℎ\",\n            plankv: \"ℏ\",\n            plus: \"+\",\n            plusacir: \"⨣\",\n            plusb: \"⊞\",\n            pluscir: \"⨢\",\n            plusdo: \"∔\",\n            plusdu: \"⨥\",\n            pluse: \"⩲\",\n            PlusMinus: \"±\",\n            plusmn: \"±\",\n            plussim: \"⨦\",\n            plustwo: \"⨧\",\n            pm: \"±\",\n            Poincareplane: \"ℌ\",\n            pointint: \"⨕\",\n            Popf: \"ℙ\",\n            popf: \"𝕡\",\n            pound: \"£\",\n            Pr: \"⪻\",\n            pr: \"≺\",\n            prap: \"⪷\",\n            prcue: \"≼\",\n            prE: \"⪳\",\n            pre: \"⪯\",\n            prec: \"≺\",\n            precapprox: \"⪷\",\n            preccurlyeq: \"≼\",\n            Precedes: \"≺\",\n            PrecedesEqual: \"⪯\",\n            PrecedesSlantEqual: \"≼\",\n            PrecedesTilde: \"≾\",\n            preceq: \"⪯\",\n            precnapprox: \"⪹\",\n            precneqq: \"⪵\",\n            precnsim: \"⋨\",\n            precsim: \"≾\",\n            Prime: \"″\",\n            prime: \"′\",\n            primes: \"ℙ\",\n            prnap: \"⪹\",\n            prnE: \"⪵\",\n            prnsim: \"⋨\",\n            prod: \"∏\",\n            Product: \"∏\",\n            profalar: \"⌮\",\n            profline: \"⌒\",\n            profsurf: \"⌓\",\n            prop: \"∝\",\n            Proportion: \"∷\",\n            Proportional: \"∝\",\n            propto: \"∝\",\n            prsim: \"≾\",\n            prurel: \"⊰\",\n            Pscr: \"𝒫\",\n            pscr: \"𝓅\",\n            Psi: \"Ψ\",\n            psi: \"ψ\",\n            puncsp: \" \",\n            Qfr: \"𝔔\",\n            qfr: \"𝔮\",\n            qint: \"⨌\",\n            Qopf: \"ℚ\",\n            qopf: \"𝕢\",\n            qprime: \"⁗\",\n            Qscr: \"𝒬\",\n            qscr: \"𝓆\",\n            quaternions: \"ℍ\",\n            quatint: \"⨖\",\n            quest: \"?\",\n            questeq: \"≟\",\n            QUOT: '\"',\n            quot: '\"',\n            rAarr: \"⇛\",\n            race: \"∽̱\",\n            Racute: \"Ŕ\",\n            racute: \"ŕ\",\n            radic: \"√\",\n            raemptyv: \"⦳\",\n            Rang: \"⟫\",\n            rang: \"⟩\",\n            rangd: \"⦒\",\n            range: \"⦥\",\n            rangle: \"⟩\",\n            raquo: \"»\",\n            Rarr: \"↠\",\n            rArr: \"⇒\",\n            rarr: \"→\",\n            rarrap: \"⥵\",\n            rarrb: \"⇥\",\n            rarrbfs: \"⤠\",\n            rarrc: \"⤳\",\n            rarrfs: \"⤞\",\n            rarrhk: \"↪\",\n            rarrlp: \"↬\",\n            rarrpl: \"⥅\",\n            rarrsim: \"⥴\",\n            Rarrtl: \"⤖\",\n            rarrtl: \"↣\",\n            rarrw: \"↝\",\n            rAtail: \"⤜\",\n            ratail: \"⤚\",\n            ratio: \"∶\",\n            rationals: \"ℚ\",\n            RBarr: \"⤐\",\n            rBarr: \"⤏\",\n            rbarr: \"⤍\",\n            rbbrk: \"❳\",\n            rbrace: \"}\",\n            rbrack: \"]\",\n            rbrke: \"⦌\",\n            rbrksld: \"⦎\",\n            rbrkslu: \"⦐\",\n            Rcaron: \"Ř\",\n            rcaron: \"ř\",\n            Rcedil: \"Ŗ\",\n            rcedil: \"ŗ\",\n            rceil: \"⌉\",\n            rcub: \"}\",\n            Rcy: \"Р\",\n            rcy: \"р\",\n            rdca: \"⤷\",\n            rdldhar: \"⥩\",\n            rdquo: \"”\",\n            rdquor: \"”\",\n            rdsh: \"↳\",\n            Re: \"ℜ\",\n            real: \"ℜ\",\n            realine: \"ℛ\",\n            realpart: \"ℜ\",\n            reals: \"ℝ\",\n            rect: \"▭\",\n            REG: \"®\",\n            reg: \"®\",\n            ReverseElement: \"∋\",\n            ReverseEquilibrium: \"⇋\",\n            ReverseUpEquilibrium: \"⥯\",\n            rfisht: \"⥽\",\n            rfloor: \"⌋\",\n            Rfr: \"ℜ\",\n            rfr: \"𝔯\",\n            rHar: \"⥤\",\n            rhard: \"⇁\",\n            rharu: \"⇀\",\n            rharul: \"⥬\",\n            Rho: \"Ρ\",\n            rho: \"ρ\",\n            rhov: \"ϱ\",\n            RightAngleBracket: \"⟩\",\n            RightArrow: \"→\",\n            Rightarrow: \"⇒\",\n            rightarrow: \"→\",\n            RightArrowBar: \"⇥\",\n            RightArrowLeftArrow: \"⇄\",\n            rightarrowtail: \"↣\",\n            RightCeiling: \"⌉\",\n            RightDoubleBracket: \"⟧\",\n            RightDownTeeVector: \"⥝\",\n            RightDownVector: \"⇂\",\n            RightDownVectorBar: \"⥕\",\n            RightFloor: \"⌋\",\n            rightharpoondown: \"⇁\",\n            rightharpoonup: \"⇀\",\n            rightleftarrows: \"⇄\",\n            rightleftharpoons: \"⇌\",\n            rightrightarrows: \"⇉\",\n            rightsquigarrow: \"↝\",\n            RightTee: \"⊢\",\n            RightTeeArrow: \"↦\",\n            RightTeeVector: \"⥛\",\n            rightthreetimes: \"⋌\",\n            RightTriangle: \"⊳\",\n            RightTriangleBar: \"⧐\",\n            RightTriangleEqual: \"⊵\",\n            RightUpDownVector: \"⥏\",\n            RightUpTeeVector: \"⥜\",\n            RightUpVector: \"↾\",\n            RightUpVectorBar: \"⥔\",\n            RightVector: \"⇀\",\n            RightVectorBar: \"⥓\",\n            ring: \"˚\",\n            risingdotseq: \"≓\",\n            rlarr: \"⇄\",\n            rlhar: \"⇌\",\n            rlm: \"‏\",\n            rmoust: \"⎱\",\n            rmoustache: \"⎱\",\n            rnmid: \"⫮\",\n            roang: \"⟭\",\n            roarr: \"⇾\",\n            robrk: \"⟧\",\n            ropar: \"⦆\",\n            Ropf: \"ℝ\",\n            ropf: \"𝕣\",\n            roplus: \"⨮\",\n            rotimes: \"⨵\",\n            RoundImplies: \"⥰\",\n            rpar: \")\",\n            rpargt: \"⦔\",\n            rppolint: \"⨒\",\n            rrarr: \"⇉\",\n            Rrightarrow: \"⇛\",\n            rsaquo: \"›\",\n            Rscr: \"ℛ\",\n            rscr: \"𝓇\",\n            Rsh: \"↱\",\n            rsh: \"↱\",\n            rsqb: \"]\",\n            rsquo: \"’\",\n            rsquor: \"’\",\n            rthree: \"⋌\",\n            rtimes: \"⋊\",\n            rtri: \"▹\",\n            rtrie: \"⊵\",\n            rtrif: \"▸\",\n            rtriltri: \"⧎\",\n            RuleDelayed: \"⧴\",\n            ruluhar: \"⥨\",\n            rx: \"℞\",\n            Sacute: \"Ś\",\n            sacute: \"ś\",\n            sbquo: \"‚\",\n            Sc: \"⪼\",\n            sc: \"≻\",\n            scap: \"⪸\",\n            Scaron: \"Š\",\n            scaron: \"š\",\n            sccue: \"≽\",\n            scE: \"⪴\",\n            sce: \"⪰\",\n            Scedil: \"Ş\",\n            scedil: \"ş\",\n            Scirc: \"Ŝ\",\n            scirc: \"ŝ\",\n            scnap: \"⪺\",\n            scnE: \"⪶\",\n            scnsim: \"⋩\",\n            scpolint: \"⨓\",\n            scsim: \"≿\",\n            Scy: \"С\",\n            scy: \"с\",\n            sdot: \"⋅\",\n            sdotb: \"⊡\",\n            sdote: \"⩦\",\n            searhk: \"⤥\",\n            seArr: \"⇘\",\n            searr: \"↘\",\n            searrow: \"↘\",\n            sect: \"§\",\n            semi: \";\",\n            seswar: \"⤩\",\n            setminus: \"∖\",\n            setmn: \"∖\",\n            sext: \"✶\",\n            Sfr: \"𝔖\",\n            sfr: \"𝔰\",\n            sfrown: \"⌢\",\n            sharp: \"♯\",\n            SHCHcy: \"Щ\",\n            shchcy: \"щ\",\n            SHcy: \"Ш\",\n            shcy: \"ш\",\n            ShortDownArrow: \"↓\",\n            ShortLeftArrow: \"←\",\n            shortmid: \"∣\",\n            shortparallel: \"∥\",\n            ShortRightArrow: \"→\",\n            ShortUpArrow: \"↑\",\n            shy: \"­\",\n            Sigma: \"Σ\",\n            sigma: \"σ\",\n            sigmaf: \"ς\",\n            sigmav: \"ς\",\n            sim: \"∼\",\n            irisot: \"⩪\",\n            sime: \"≃\",\n            simeq: \"≃\",\n            simg: \"⪞\",\n            simgE: \"⪠\",\n            siml: \"⪝\",\n            simlE: \"⪟\",\n            simne: \"≆\",\n            simplus: \"⨤\",\n            simrarr: \"⥲\",\n            slarr: \"←\",\n            SmallCircle: \"∘\",\n            smallsetminus: \"∖\",\n            smashp: \"⨳\",\n            smeparsl: \"⧤\",\n            smid: \"∣\",\n            smile: \"⌣\",\n            smt: \"⪪\",\n            smte: \"⪬\",\n            smtes: \"⪬︀\",\n            SOFTcy: \"Ь\",\n            softcy: \"ь\",\n            sol: \"/\",\n            solb: \"⧄\",\n            solbar: \"⌿\",\n            Sopf: \"𝕊\",\n            sopf: \"𝕤\",\n            spades: \"♠\",\n            spadesuit: \"♠\",\n            spar: \"∥\",\n            sqcap: \"⊓\",\n            sqcaps: \"⊓︀\",\n            sqcup: \"⊔\",\n            sqcups: \"⊔︀\",\n            Sqrt: \"√\",\n            sqsub: \"⊏\",\n            sqsube: \"⊑\",\n            sqsubset: \"⊏\",\n            sqsubseteq: \"⊑\",\n            sqsup: \"⊐\",\n            sqsupe: \"⊒\",\n            sqsupset: \"⊐\",\n            sqsupseteq: \"⊒\",\n            squ: \"□\",\n            Square: \"□\",\n            square: \"□\",\n            SquareIntersection: \"⊓\",\n            SquareSubset: \"⊏\",\n            SquareSubsetEqual: \"⊑\",\n            SquareSuperset: \"⊐\",\n            SquareSupersetEqual: \"⊒\",\n            SquareUnion: \"⊔\",\n            squarf: \"▪\",\n            squf: \"▪\",\n            srarr: \"→\",\n            Sscr: \"𝒮\",\n            sscr: \"𝓈\",\n            ssetmn: \"∖\",\n            ssmile: \"⌣\",\n            sstarf: \"⋆\",\n            Star: \"⋆\",\n            star: \"☆\",\n            starf: \"★\",\n            straightepsilon: \"ϵ\",\n            straightphi: \"ϕ\",\n            strns: \"¯\",\n            Sub: \"⋐\",\n            sub: \"⊂\",\n            subdot: \"⪽\",\n            subE: \"⫅\",\n            sube: \"⊆\",\n            subedot: \"⫃\",\n            submult: \"⫁\",\n            subnE: \"⫋\",\n            subne: \"⊊\",\n            subplus: \"⪿\",\n            subrarr: \"⥹\",\n            Subset: \"⋐\",\n            subset: \"⊂\",\n            subseteq: \"⊆\",\n            subseteqq: \"⫅\",\n            SubsetEqual: \"⊆\",\n            subsetneq: \"⊊\",\n            subsetneqq: \"⫋\",\n            subsim: \"⫇\",\n            subsub: \"⫕\",\n            subsup: \"⫓\",\n            succ: \"≻\",\n            succapprox: \"⪸\",\n            succcurlyeq: \"≽\",\n            Succeeds: \"≻\",\n            SucceedsEqual: \"⪰\",\n            SucceedsSlantEqual: \"≽\",\n            SucceedsTilde: \"≿\",\n            succeq: \"⪰\",\n            succnapprox: \"⪺\",\n            succneqq: \"⪶\",\n            succnsim: \"⋩\",\n            succsim: \"≿\",\n            SuchThat: \"∋\",\n            Sum: \"∑\",\n            sum: \"∑\",\n            sung: \"♪\",\n            Sup: \"⋑\",\n            sup: \"⊃\",\n            sup1: \"¹\",\n            sup2: \"²\",\n            sup3: \"³\",\n            supdot: \"⪾\",\n            supdsub: \"⫘\",\n            supE: \"⫆\",\n            supe: \"⊇\",\n            supedot: \"⫄\",\n            Superset: \"⊃\",\n            SupersetEqual: \"⊇\",\n            suphsol: \"⟉\",\n            suphsub: \"⫗\",\n            suplarr: \"⥻\",\n            supmult: \"⫂\",\n            supnE: \"⫌\",\n            supne: \"⊋\",\n            supplus: \"⫀\",\n            Supset: \"⋑\",\n            supset: \"⊃\",\n            supseteq: \"⊇\",\n            supseteqq: \"⫆\",\n            supsetneq: \"⊋\",\n            supsetneqq: \"⫌\",\n            supsim: \"⫈\",\n            supsub: \"⫔\",\n            supsup: \"⫖\",\n            swarhk: \"⤦\",\n            swArr: \"⇙\",\n            swarr: \"↙\",\n            swarrow: \"↙\",\n            swnwar: \"⤪\",\n            szlig: \"ß\",\n            Tab: \"\\t\",\n            target: \"⌖\",\n            Tau: \"Τ\",\n            tau: \"τ\",\n            tbrk: \"⎴\",\n            Tcaron: \"Ť\",\n            tcaron: \"ť\",\n            Tcedil: \"Ţ\",\n            tcedil: \"ţ\",\n            Tcy: \"Т\",\n            tcy: \"т\",\n            tdot: \"⃛\",\n            telrec: \"⌕\",\n            Tfr: \"𝔗\",\n            tfr: \"𝔱\",\n            there4: \"∴\",\n            Therefore: \"∴\",\n            therefore: \"∴\",\n            Theta: \"Θ\",\n            theta: \"θ\",\n            thetasym: \"ϑ\",\n            thetav: \"ϑ\",\n            thickapprox: \"≈\",\n            thicksim: \"∼\",\n            ThickSpace: \"  \",\n            thinsp: \" \",\n            ThinSpace: \" \",\n            thkap: \"≈\",\n            thksim: \"∼\",\n            THORN: \"Þ\",\n            thorn: \"þ\",\n            Tilde: \"∼\",\n            tilde: \"˜\",\n            TildeEqual: \"≃\",\n            TildeFullEqual: \"≅\",\n            TildeTilde: \"≈\",\n            times: \"×\",\n            timesb: \"⊠\",\n            timesbar: \"⨱\",\n            timesd: \"⨰\",\n            tint: \"∭\",\n            toea: \"⤨\",\n            top: \"⊤\",\n            topbot: \"⌶\",\n            topcir: \"⫱\",\n            Topf: \"𝕋\",\n            topf: \"𝕥\",\n            topfork: \"⫚\",\n            tosa: \"⤩\",\n            tprime: \"‴\",\n            TRADE: \"™\",\n            trade: \"™\",\n            triangle: \"▵\",\n            triangledown: \"▿\",\n            triangleleft: \"◃\",\n            trianglelefteq: \"⊴\",\n            triangleq: \"≜\",\n            triangleright: \"▹\",\n            trianglerighteq: \"⊵\",\n            tridot: \"◬\",\n            trie: \"≜\",\n            triminus: \"⨺\",\n            TripleDot: \"⃛\",\n            triplus: \"⨹\",\n            trisb: \"⧍\",\n            tritime: \"⨻\",\n            trpezium: \"⏢\",\n            Tscr: \"𝒯\",\n            tscr: \"𝓉\",\n            TScy: \"Ц\",\n            tscy: \"ц\",\n            TSHcy: \"Ћ\",\n            tshcy: \"ћ\",\n            Tstrok: \"Ŧ\",\n            tstrok: \"ŧ\",\n            twixt: \"≬\",\n            twoheadleftarrow: \"↞\",\n            twoheadrightarrow: \"↠\",\n            Uacute: \"Ú\",\n            uacute: \"ú\",\n            Uarr: \"↟\",\n            uArr: \"⇑\",\n            uarr: \"↑\",\n            Uarrocir: \"⥉\",\n            Ubrcy: \"Ў\",\n            ubrcy: \"ў\",\n            Ubreve: \"Ŭ\",\n            ubreve: \"ŭ\",\n            Ucirc: \"Û\",\n            ucirc: \"û\",\n            Ucy: \"У\",\n            ucy: \"у\",\n            udarr: \"⇅\",\n            Udblac: \"Ű\",\n            udblac: \"ű\",\n            udhar: \"⥮\",\n            ufisht: \"⥾\",\n            Ufr: \"𝔘\",\n            ufr: \"𝔲\",\n            Ugrave: \"Ù\",\n            ugrave: \"ù\",\n            uHar: \"⥣\",\n            uharl: \"↿\",\n            uharr: \"↾\",\n            uhblk: \"▀\",\n            ulcorn: \"⌜\",\n            ulcorner: \"⌜\",\n            ulcrop: \"⌏\",\n            ultri: \"◸\",\n            Umacr: \"Ū\",\n            umacr: \"ū\",\n            uml: \"¨\",\n            UnderBar: \"_\",\n            UnderBrace: \"⏟\",\n            UnderBracket: \"⎵\",\n            UnderParenthesis: \"⏝\",\n            Union: \"⋃\",\n            UnionPlus: \"⊎\",\n            Uogon: \"Ų\",\n            uogon: \"ų\",\n            Uopf: \"𝕌\",\n            uopf: \"𝕦\",\n            UpArrow: \"↑\",\n            Uparrow: \"⇑\",\n            uparrow: \"↑\",\n            UpArrowBar: \"⤒\",\n            UpArrowDownArrow: \"⇅\",\n            UpDownArrow: \"↕\",\n            Updownarrow: \"⇕\",\n            updownarrow: \"↕\",\n            UpEquilibrium: \"⥮\",\n            upharpoonleft: \"↿\",\n            upharpoonright: \"↾\",\n            uplus: \"⊎\",\n            UpperLeftArrow: \"↖\",\n            UpperRightArrow: \"↗\",\n            Upsi: \"ϒ\",\n            upsi: \"υ\",\n            upsih: \"ϒ\",\n            Upsilon: \"Υ\",\n            upsilon: \"υ\",\n            UpTee: \"⊥\",\n            UpTeeArrow: \"↥\",\n            upuparrows: \"⇈\",\n            urcorn: \"⌝\",\n            urcorner: \"⌝\",\n            urcrop: \"⌎\",\n            Uring: \"Ů\",\n            uring: \"ů\",\n            urtri: \"◹\",\n            Uscr: \"𝒰\",\n            uscr: \"𝓊\",\n            utdot: \"⋰\",\n            Utilde: \"Ũ\",\n            utilde: \"ũ\",\n            utri: \"▵\",\n            utrif: \"▴\",\n            uuarr: \"⇈\",\n            Uuml: \"Ü\",\n            uuml: \"ü\",\n            uwangle: \"⦧\",\n            vangrt: \"⦜\",\n            varepsilon: \"ϵ\",\n            varkappa: \"ϰ\",\n            varnothing: \"∅\",\n            varphi: \"ϕ\",\n            varpi: \"ϖ\",\n            varpropto: \"∝\",\n            vArr: \"⇕\",\n            varr: \"↕\",\n            varrho: \"ϱ\",\n            varsigma: \"ς\",\n            varsubsetneq: \"⊊︀\",\n            varsubsetneqq: \"⫋︀\",\n            varsupsetneq: \"⊋︀\",\n            varsupsetneqq: \"⫌︀\",\n            vartheta: \"ϑ\",\n            vartriangleleft: \"⊲\",\n            vartriangleright: \"⊳\",\n            Vbar: \"⫫\",\n            vBar: \"⫨\",\n            vBarv: \"⫩\",\n            Vcy: \"В\",\n            vcy: \"в\",\n            VDash: \"⊫\",\n            Vdash: \"⊩\",\n            vDash: \"⊨\",\n            vdash: \"⊢\",\n            Vdashl: \"⫦\",\n            Vee: \"⋁\",\n            vee: \"∨\",\n            veebar: \"⊻\",\n            veeeq: \"≚\",\n            vellip: \"⋮\",\n            Verbar: \"‖\",\n            verbar: \"|\",\n            Vert: \"‖\",\n            vert: \"|\",\n            VerticalBar: \"∣\",\n            VerticalLine: \"|\",\n            VerticalSeparator: \"❘\",\n            VerticalTilde: \"≀\",\n            VeryThinSpace: \" \",\n            Vfr: \"𝔙\",\n            vfr: \"𝔳\",\n            vltri: \"⊲\",\n            vnsub: \"⊂⃒\",\n            vnsup: \"⊃⃒\",\n            Vopf: \"𝕍\",\n            vopf: \"𝕧\",\n            vprop: \"∝\",\n            vrtri: \"⊳\",\n            Vscr: \"𝒱\",\n            vscr: \"𝓋\",\n            vsubnE: \"⫋︀\",\n            vsubne: \"⊊︀\",\n            vsupnE: \"⫌︀\",\n            vsupne: \"⊋︀\",\n            Vvdash: \"⊪\",\n            vzigzag: \"⦚\",\n            Wcirc: \"Ŵ\",\n            wcirc: \"ŵ\",\n            wedbar: \"⩟\",\n            Wedge: \"⋀\",\n            wedge: \"∧\",\n            wedgeq: \"≙\",\n            weierp: \"℘\",\n            Wfr: \"𝔚\",\n            wfr: \"𝔴\",\n            Wopf: \"𝕎\",\n            wopf: \"𝕨\",\n            wp: \"℘\",\n            wr: \"≀\",\n            wreath: \"≀\",\n            Wscr: \"𝒲\",\n            wscr: \"𝓌\",\n            xcap: \"⋂\",\n            xcirc: \"◯\",\n            xcup: \"⋃\",\n            xdtri: \"▽\",\n            Xfr: \"𝔛\",\n            xfr: \"𝔵\",\n            xhArr: \"⟺\",\n            xharr: \"⟷\",\n            Xi: \"Ξ\",\n            xi: \"ξ\",\n            xlArr: \"⟸\",\n            xlarr: \"⟵\",\n            xmap: \"⟼\",\n            xnis: \"⋻\",\n            xodot: \"⨀\",\n            Xopf: \"𝕏\",\n            xopf: \"𝕩\",\n            xoplus: \"⨁\",\n            xotime: \"⨂\",\n            xrArr: \"⟹\",\n            xrarr: \"⟶\",\n            Xscr: \"𝒳\",\n            xscr: \"𝓍\",\n            xsqcup: \"⨆\",\n            xuplus: \"⨄\",\n            xutri: \"△\",\n            xvee: \"⋁\",\n            xwedge: \"⋀\",\n            Yacute: \"Ý\",\n            yacute: \"ý\",\n            YAcy: \"Я\",\n            yacy: \"я\",\n            Ycirc: \"Ŷ\",\n            ycirc: \"ŷ\",\n            Ycy: \"Ы\",\n            ycy: \"ы\",\n            yen: \"¥\",\n            Yfr: \"𝔜\",\n            yfr: \"𝔶\",\n            YIcy: \"Ї\",\n            yicy: \"ї\",\n            Yopf: \"𝕐\",\n            yopf: \"𝕪\",\n            Yscr: \"𝒴\",\n            yscr: \"𝓎\",\n            YUcy: \"Ю\",\n            yucy: \"ю\",\n            Yuml: \"Ÿ\",\n            yuml: \"ÿ\",\n            Zacute: \"Ź\",\n            zacute: \"ź\",\n            Zcaron: \"Ž\",\n            zcaron: \"ž\",\n            Zcy: \"З\",\n            zcy: \"з\",\n            Zdot: \"Ż\",\n            zdot: \"ż\",\n            zeetrf: \"ℨ\",\n            ZeroWidthSpace: \"​\",\n            Zeta: \"Ζ\",\n            zeta: \"ζ\",\n            Zfr: \"ℨ\",\n            zfr: \"𝔷\",\n            ZHcy: \"Ж\",\n            zhcy: \"ж\",\n            zigrarr: \"⇝\",\n            Zopf: \"ℤ\",\n            zopf: \"𝕫\",\n            Zscr: \"𝒵\",\n            zscr: \"𝓏\",\n            zwj: \"‍\",\n            zwnj: \"‌\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(418),\n            o = n(27).unescapeMd;\n        e.exports = function(e, t) {\n            var n, i, a, u = t,\n                s = e.posMax;\n            if (60 === e.src.charCodeAt(t)) {\n                for (t++; t < s;) {\n                    if (10 === (n = e.src.charCodeAt(t))) return !1;\n                    if (62 === n) return a = r(o(e.src.slice(u + 1, t))), !!e.parser.validateLink(a) && (e.pos = t + 1, e.linkContent = a, !0);\n                    92 === n && t + 1 < s ? t += 2 : t++\n                }\n                return !1\n            }\n            for (i = 0; t < s && 32 !== (n = e.src.charCodeAt(t)) && !(n > 8 && n < 14);)\n                if (92 === n && t + 1 < s) t += 2;\n                else {\n                    if (40 === n && ++i > 1) break;\n                    if (41 === n && --i < 0) break;\n                    t++\n                }\n            return u !== t && (a = o(e.src.slice(u, t)), !!e.parser.validateLink(a) && (e.linkContent = a, e.pos = t, !0))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(27).replaceEntities;\n        e.exports = function(e) {\n            var t = r(e);\n            try {\n                t = decodeURI(t)\n            } catch (e) {}\n            return encodeURI(t)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(27).unescapeMd;\n        e.exports = function(e, t) {\n            var n, o = t,\n                i = e.posMax,\n                a = e.src.charCodeAt(t);\n            if (34 !== a && 39 !== a && 40 !== a) return !1;\n            for (t++, 40 === a && (a = 41); t < i;) {\n                if ((n = e.src.charCodeAt(t)) === a) return e.pos = t + 1, e.linkContent = r(e.src.slice(o + 1, t)), !0;\n                92 === n && t + 1 < i ? t += 2 : t++\n            }\n            return !1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return e.trim().replace(/\\s+/g, \" \").toUpperCase()\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return {\n                components: a.default,\n                wrapComponents: u.default,\n                statePlugins: {\n                    spec: {\n                        wrapSelectors: r,\n                        selectors: i\n                    },\n                    auth: {\n                        wrapSelectors: o\n                    },\n                    oas3: {\n                        actions: s,\n                        reducers: c.default,\n                        selectors: l\n                    }\n                }\n            }\n        };\n        var r = p(n(422)),\n            o = p(n(423)),\n            i = p(n(424)),\n            a = f(n(425)),\n            u = f(n(434)),\n            s = p(n(236)),\n            l = p(n(442)),\n            c = f(n(443));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n\n        function p(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.isSwagger2 = t.isOAS3 = t.servers = t.schemes = t.produces = t.consumes = t.basePath = t.host = t.securityDefinitions = t.hasHost = t.definitions = void 0;\n        var r = n(57),\n            o = n(7),\n            i = n(35);\n\n        function a(e) {\n            return function(t, n) {\n                return function() {\n                    var r = n.getSystem().specSelectors.specJson();\n                    return (0, i.isOAS3)(r) ? e.apply(void 0, arguments) : t.apply(void 0, arguments)\n                }\n            }\n        }\n        var u = function(e) {\n                return e || (0, o.Map)()\n            },\n            s = a((0, r.createSelector)(function() {\n                return null\n            })),\n            l = (0, r.createSelector)(u, function(e) {\n                return e.get(\"json\", (0, o.Map)())\n            }),\n            c = (0, r.createSelector)(u, function(e) {\n                return e.get(\"resolved\", (0, o.Map)())\n            }),\n            f = function(e) {\n                var t = c(e);\n                return t.count() < 1 && (t = l(e)), t\n            };\n        t.definitions = a((0, r.createSelector)(f, function(e) {\n            return e.getIn([\"components\", \"schemas\"]) || (0, o.Map)()\n        })), t.hasHost = a(function(e) {\n            return f(e).hasIn([\"servers\", 0])\n        }), t.securityDefinitions = a((0, r.createSelector)(f, function(e) {\n            return e.getIn([\"components\", \"securitySchemes\"]) || null\n        })), t.host = s, t.basePath = s, t.consumes = s, t.produces = s, t.schemes = s, t.servers = a((0, r.createSelector)(f, function(e) {\n            return e.getIn([\"servers\"]) || (0, o.Map)()\n        })), t.isOAS3 = function(e, t) {\n            return function() {\n                var e = t.getSystem().specSelectors.specJson();\n                return (0, i.isOAS3)(o.Map.isMap(e) ? e : (0, o.Map)())\n            }\n        }, t.isSwagger2 = function(e, t) {\n            return function() {\n                var e = t.getSystem().specSelectors.specJson();\n                return (0, i.isSwagger2)(o.Map.isMap(e) ? e : (0, o.Map)())\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.definitionsToAuthorize = void 0;\n        var r = s(n(22)),\n            o = s(n(18)),\n            i = n(57),\n            a = n(7),\n            u = n(35);\n\n        function s(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var l;\n        t.definitionsToAuthorize = (l = (0, i.createSelector)(function(e) {\n            return e\n        }, function(e) {\n            return e.specSelectors.securityDefinitions()\n        }, function(e, t) {\n            var n = (0, a.List)();\n            return t.entrySeq().forEach(function(e) {\n                var t = (0, o.default)(e, 2),\n                    i = t[0],\n                    u = t[1],\n                    s = u.get(\"type\");\n                \"oauth2\" === s && u.get(\"flows\").entrySeq().forEach(function(e) {\n                    var t = (0, o.default)(e, 2),\n                        s = t[0],\n                        l = t[1],\n                        c = (0, a.fromJS)({\n                            flow: s,\n                            authorizationUrl: l.get(\"authorizationUrl\"),\n                            tokenUrl: l.get(\"tokenUrl\"),\n                            scopes: l.get(\"scopes\"),\n                            type: u.get(\"type\")\n                        });\n                    n = n.push(new a.Map((0, r.default)({}, i, c.filter(function(e) {\n                        return void 0 !== e\n                    }))))\n                }), \"http\" !== s && \"apiKey\" !== s || (n = n.push(new a.Map((0, r.default)({}, i, u))))\n            }), n\n        }), function(e, t) {\n            return function(n) {\n                for (var r = arguments.length, o = Array(r > 1 ? r - 1 : 0), i = 1; i < r; i++) o[i - 1] = arguments[i];\n                var a = t.getSystem().specSelectors.specJson();\n                return (0, u.isOAS3)(a) ? l.apply(void 0, [t].concat(o)) : e.apply(void 0, o)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.isSwagger2 = t.servers = void 0;\n        var r = n(57),\n            o = n(7),\n            i = n(35);\n        var a, u = function(e) {\n                return e || (0, o.Map)()\n            },\n            s = (0, r.createSelector)(u, function(e) {\n                return e.get(\"json\", (0, o.Map)())\n            }),\n            l = (0, r.createSelector)(u, function(e) {\n                return e.get(\"resolved\", (0, o.Map)())\n            });\n        t.servers = (a = (0, r.createSelector)(function(e) {\n            var t = l(e);\n            return t.count() < 1 && (t = s(e)), t\n        }, function(e) {\n            return e.getIn([\"servers\"]) || (0, o.Map)()\n        }), function() {\n            return function(e) {\n                for (var t = arguments.length, n = Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];\n                var o = e.getSystem().specSelectors.specJson();\n                return (0, i.isOAS3)(o) ? a.apply(void 0, n) : null\n            }\n        }), t.isSwagger2 = function(e, t) {\n            return function() {\n                var e = t.getSystem().specSelectors.specJson();\n                return (0, i.isSwagger2)(e)\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(426)),\n            o = f(n(427)),\n            i = f(n(428)),\n            a = f(n(429)),\n            u = f(n(430)),\n            s = f(n(431)),\n            l = f(n(432)),\n            c = f(n(433));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = {\n            Callbacks: r.default,\n            HttpAuth: l.default,\n            RequestBody: o.default,\n            Servers: a.default,\n            ServersContainer: u.default,\n            RequestBodyEditor: s.default,\n            OperationServers: c.default,\n            operationLink: i.default\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = a(n(25)),\n            o = a(n(0)),\n            i = (a(n(1)), a(n(12)), n(7));\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e) {\n            var t = e.callbacks,\n                n = e.getComponent,\n                a = e.specPath,\n                u = n(\"OperationContainer\", !0);\n            if (!t) return o.default.createElement(\"span\", null, \"No callbacks\");\n            var s = t.map(function(t, n) {\n                return o.default.createElement(\"div\", {\n                    key: n\n                }, o.default.createElement(\"h2\", null, n), t.map(function(t, s) {\n                    return \"$$ref\" === s ? null : o.default.createElement(\"div\", {\n                        key: s\n                    }, t.map(function(t, l) {\n                        if (\"$$ref\" === l) return null;\n                        var c = (0, i.fromJS)({\n                            operation: t\n                        });\n                        return o.default.createElement(u, (0, r.default)({}, e, {\n                            op: c,\n                            key: l,\n                            tag: \"\",\n                            method: l,\n                            path: s,\n                            specPath: a.push(n, s, l),\n                            allowTryItOut: !1\n                        }))\n                    }))\n                }))\n            });\n            return o.default.createElement(\"div\", null, s)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = i(n(0)),\n            o = (i(n(1)), i(n(12)), n(7));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e) {\n            var t = e.requestBody,\n                n = e.requestBodyValue,\n                i = e.getComponent,\n                a = e.getConfigs,\n                u = e.specSelectors,\n                s = e.fn,\n                l = e.contentType,\n                c = e.isExecute,\n                f = e.specPath,\n                p = e.onChange,\n                d = i(\"Markdown\"),\n                h = i(\"modelExample\"),\n                v = i(\"RequestBodyEditor\"),\n                m = t && t.get(\"description\") || null,\n                g = t && t.get(\"content\") || new o.OrderedMap;\n            l = l || g.keySeq().first();\n            var y = g.get(l),\n                b = \"object\" === y.getIn([\"schema\", \"type\"]);\n            if (!y) return null;\n            if (\"application/octet-stream\" === l || 0 === l.indexOf(\"image/\") || 0 === l.indexOf(\"audio/\") || 0 === l.indexOf(\"video/\")) {\n                var _ = i(\"Input\");\n                return c ? r.default.createElement(_, {\n                    type: \"file\",\n                    onChange: function(e) {\n                        p(e.target.files[0])\n                    }\n                }) : r.default.createElement(\"i\", null, \"Example values are not available for \", r.default.createElement(\"code\", null, \"application/octet-stream\"), \" media types.\")\n            }\n            if (b && (\"application/x-www-form-urlencoded\" === l || 0 === l.indexOf(\"multipart/\"))) {\n                var w = i(\"JsonSchemaForm\"),\n                    E = t.getIn([\"content\", l, \"schema\"], (0, o.OrderedMap)()),\n                    x = E.getIn([\"properties\"], (0, o.OrderedMap)());\n                return n = o.Map.isMap(n) ? n : (0, o.OrderedMap)(), r.default.createElement(\"div\", {\n                    className: \"table-container\"\n                }, r.default.createElement(\"table\", null, r.default.createElement(\"tbody\", null, x.map(function(e, t) {\n                    var a = E.get(\"required\", (0, o.List)()).includes(t),\n                        u = e.get(\"type\"),\n                        l = e.get(\"format\"),\n                        f = n.get(t),\n                        d = e.get(\"default\") || e.get(\"example\") || \"\",\n                        h = \"string\" === u && (\"binary\" === l || \"base64\" === l);\n                    return r.default.createElement(\"tr\", {\n                        key: t,\n                        className: \"parameters\"\n                    }, r.default.createElement(\"td\", {\n                        className: \"col parameters-col_name\"\n                    }, r.default.createElement(\"div\", {\n                        className: a ? \"parameter__name required\" : \"parameter__name\"\n                    }, t, a ? r.default.createElement(\"span\", {\n                        style: {\n                            color: \"red\"\n                        }\n                    }, \" *\") : null), r.default.createElement(\"div\", {\n                        className: \"parameter__type\"\n                    }, u, l && r.default.createElement(\"span\", {\n                        className: \"prop-format\"\n                    }, \"($\", l, \")\")), r.default.createElement(\"div\", {\n                        className: \"parameter__deprecated\"\n                    }, e.get(\"deprecated\") ? \"deprecated\" : null)), r.default.createElement(\"td\", {\n                        className: \"col parameters-col_description\"\n                    }, e.get(\"description\"), c ? r.default.createElement(\"div\", null, r.default.createElement(w, {\n                        fn: s,\n                        dispatchInitialValue: !h,\n                        schema: e,\n                        description: t + \" - \" + e.get(\"description\"),\n                        getComponent: i,\n                        value: void 0 === f ? d : f,\n                        onChange: function(e) {\n                            p(e, [t])\n                        }\n                    })) : null))\n                }))))\n            }\n            return r.default.createElement(\"div\", null, m && r.default.createElement(d, {\n                source: m\n            }), r.default.createElement(h, {\n                getComponent: i,\n                getConfigs: a,\n                specSelectors: u,\n                expandDepth: 1,\n                isExecute: c,\n                schema: y.get(\"schema\"),\n                specPath: f.push(\"content\", l),\n                example: r.default.createElement(v, {\n                    requestBody: t,\n                    onChange: p,\n                    mediaType: l,\n                    getComponent: i,\n                    isExecute: c,\n                    specSelectors: u\n                })\n            }))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(41)),\n            o = f(n(4)),\n            i = f(n(2)),\n            a = f(n(3)),\n            u = f(n(5)),\n            s = f(n(6)),\n            l = n(0),\n            c = f(l);\n        f(n(1)), f(n(12));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n            function t() {\n                return (0, i.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).apply(this, arguments))\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.link,\n                        n = e.name,\n                        o = (0, e.getComponent)(\"Markdown\"),\n                        i = t.get(\"operationId\") || t.get(\"operationRef\"),\n                        a = t.get(\"parameters\") && t.get(\"parameters\").toJS(),\n                        u = t.get(\"description\");\n                    return c.default.createElement(\"div\", {\n                        style: {\n                            marginBottom: \"1.5em\"\n                        }\n                    }, c.default.createElement(\"div\", {\n                        style: {\n                            marginBottom: \".5em\"\n                        }\n                    }, c.default.createElement(\"b\", null, c.default.createElement(\"code\", null, n)), u ? c.default.createElement(o, {\n                        source: u\n                    }) : null), c.default.createElement(\"pre\", null, \"Operation `\", i, \"`\", c.default.createElement(\"br\", null), c.default.createElement(\"br\", null), \"Parameters \", function(e, t) {\n                        if (\"string\" != typeof t) return \"\";\n                        return t.split(\"\\n\").map(function(t, n) {\n                            return n > 0 ? Array(e + 1).join(\" \") + t : t\n                        }).join(\"\\n\")\n                    }(0, (0, r.default)(a, null, 2)) || \"{}\", c.default.createElement(\"br\", null)))\n                }\n            }]), t\n        }(l.Component);\n        t.default = p\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = c(n(0)),\n            l = n(7);\n        c(n(1)), c(n(12));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onServerChange = function(e) {\n                    i.setServer(e.target.value)\n                }, i.onServerVariableValueChange = function(e) {\n                    var t = i.props,\n                        n = t.setServerVariableValue,\n                        r = t.currentServer,\n                        o = e.target.getAttribute(\"data-variable\"),\n                        a = e.target.value;\n                    \"function\" == typeof n && n({\n                        server: r,\n                        key: o,\n                        val: a\n                    })\n                }, i.setServer = function(e) {\n                    (0, i.props.setSelectedServer)(e)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    var e = this.props,\n                        t = e.servers;\n                    e.currentServer || this.setServer(t.first().get(\"url\"))\n                }\n            }, {\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    var t = this.props,\n                        n = t.servers,\n                        r = t.setServerVariableValue,\n                        o = t.getServerVariable;\n                    if (this.props.currentServer !== e.currentServer) {\n                        var i = n.find(function(t) {\n                            return t.get(\"url\") === e.currentServer\n                        });\n                        if (!i) return this.setServer(n.first().get(\"url\"));\n                        (i.get(\"variables\") || (0, l.OrderedMap)()).map(function(t, n) {\n                            o(e.currentServer, n) || r({\n                                server: e.currentServer,\n                                key: n,\n                                val: t.get(\"default\") || \"\"\n                            })\n                        })\n                    }\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        t = this.props,\n                        n = t.servers,\n                        r = t.currentServer,\n                        o = t.getServerVariable,\n                        i = t.getEffectiveServerValue,\n                        a = (n.find(function(e) {\n                            return e.get(\"url\") === r\n                        }) || (0, l.OrderedMap)()).get(\"variables\") || (0, l.OrderedMap)(),\n                        u = 0 !== a.size;\n                    return s.default.createElement(\"div\", {\n                        className: \"servers\"\n                    }, s.default.createElement(\"label\", {\n                        htmlFor: \"servers\"\n                    }, s.default.createElement(\"select\", {\n                        onChange: this.onServerChange\n                    }, n.valueSeq().map(function(e) {\n                        return s.default.createElement(\"option\", {\n                            value: e.get(\"url\"),\n                            key: e.get(\"url\")\n                        }, e.get(\"url\"))\n                    }).toArray())), u ? s.default.createElement(\"div\", null, s.default.createElement(\"div\", {\n                        className: \"computed-url\"\n                    }, \"Computed URL:\", s.default.createElement(\"code\", null, i(r))), s.default.createElement(\"h4\", null, \"Server variables\"), s.default.createElement(\"table\", null, s.default.createElement(\"tbody\", null, a.map(function(t, n) {\n                        return s.default.createElement(\"tr\", {\n                            key: n\n                        }, s.default.createElement(\"td\", null, n), s.default.createElement(\"td\", null, t.get(\"enum\") ? s.default.createElement(\"select\", {\n                            \"data-variable\": n,\n                            onChange: e.onServerVariableValueChange\n                        }, t.get(\"enum\").map(function(e) {\n                            return s.default.createElement(\"option\", {\n                                selected: e === o(r, n),\n                                key: e,\n                                value: e\n                            }, e)\n                        })) : s.default.createElement(\"input\", {\n                            type: \"text\",\n                            value: o(r, n) || \"\",\n                            onChange: e.onServerVariableValueChange,\n                            \"data-variable\": n\n                        })))\n                    })))) : null)\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specSelectors,\n                        n = e.oas3Selectors,\n                        r = e.oas3Actions,\n                        o = e.getComponent,\n                        i = t.servers(),\n                        a = o(\"Col\"),\n                        u = o(\"Servers\");\n                    return s.default.createElement(\"div\", null, i && i.size ? s.default.createElement(\"div\", {\n                        className: \"global-server-container\"\n                    }, s.default.createElement(a, {\n                        className: \"servers wrapper\",\n                        mobile: 12\n                    }, s.default.createElement(\"span\", {\n                        className: \"servers-title\"\n                    }, \"Server\"), s.default.createElement(u, {\n                        servers: i,\n                        currentServer: n.selectedServer(),\n                        setSelectedServer: r.setSelectedServer,\n                        setServerVariableValue: r.setServerVariableValue,\n                        getServerVariable: n.serverVariableValue,\n                        getEffectiveServerValue: n.serverEffectiveValue\n                    }))) : null)\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(4)),\n            o = p(n(2)),\n            i = p(n(3)),\n            a = p(n(5)),\n            u = p(n(6)),\n            s = n(0),\n            l = p(s),\n            c = (p(n(1)), n(7)),\n            f = n(10);\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = Function.prototype,\n            h = function(e) {\n                function t(e, n) {\n                    (0, o.default)(this, t);\n                    var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                    return i.setValueToSample = function(e) {\n                        i.onChange(i.sample(e))\n                    }, i.resetValueToSample = function(e) {\n                        i.setState({\n                            userDidModify: !1\n                        }), i.setValueToSample(e)\n                    }, i.sample = function(e) {\n                        var t = i.props,\n                            n = t.requestBody,\n                            r = t.mediaType,\n                            o = n.getIn([\"content\", e || r]),\n                            a = o.get(\"schema\").toJS();\n                        return (void 0 !== o.get(\"example\") ? (0, f.stringify)(o.get(\"example\")) : null) || (0, f.getSampleSchema)(a, e || r, {\n                            includeWriteOnly: !0\n                        })\n                    }, i.onChange = function(e) {\n                        i.setState({\n                            value: e\n                        }), i.props.onChange(e)\n                    }, i.handleOnChange = function(e) {\n                        var t = i.props.mediaType,\n                            n = /json/i.test(t) ? e.target.value.trim() : e.target.value;\n                        i.setState({\n                            userDidModify: !0\n                        }), i.onChange(n)\n                    }, i.toggleIsEditBox = function() {\n                        return i.setState(function(e) {\n                            return {\n                                isEditBox: !e.isEditBox\n                            }\n                        })\n                    }, i.state = {\n                        isEditBox: !1,\n                        userDidModify: !1,\n                        value: \"\"\n                    }, i\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"componentDidMount\",\n                    value: function() {\n                        this.setValueToSample.call(this)\n                    }\n                }, {\n                    key: \"componentWillReceiveProps\",\n                    value: function(e) {\n                        this.props.mediaType !== e.mediaType && this.setValueToSample(e.mediaType), !this.props.isExecute && e.isExecute && this.setState({\n                            isEditBox: !0\n                        })\n                    }\n                }, {\n                    key: \"componentDidUpdate\",\n                    value: function(e) {\n                        this.props.requestBody !== e.requestBody && this.setValueToSample(this.props.mediaType)\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this,\n                            t = this.props,\n                            n = t.isExecute,\n                            r = t.getComponent,\n                            o = t.mediaType,\n                            i = r(\"Button\"),\n                            a = r(\"TextArea\"),\n                            u = r(\"highlightCode\"),\n                            s = this.state,\n                            c = s.value,\n                            f = s.isEditBox,\n                            p = s.userDidModify;\n                        return l.default.createElement(\"div\", {\n                            className: \"body-param\"\n                        }, f && n ? l.default.createElement(a, {\n                            className: \"body-param__text\",\n                            value: c,\n                            onChange: this.handleOnChange\n                        }) : c && l.default.createElement(u, {\n                            className: \"body-param__example\",\n                            value: c\n                        }), l.default.createElement(\"div\", {\n                            className: \"body-param-options\"\n                        }, l.default.createElement(\"div\", {\n                            className: \"body-param-edit\"\n                        }, n ? l.default.createElement(i, {\n                            className: f ? \"btn cancel body-param__example-edit\" : \"btn edit body-param__example-edit\",\n                            onClick: this.toggleIsEditBox\n                        }, f ? \"Cancel\" : \"Edit\") : null, p && l.default.createElement(i, {\n                            className: \"btn ml3\",\n                            onClick: function() {\n                                e.resetValueToSample(o)\n                            }\n                        }, \"Reset\"))))\n                    }\n                }]), t\n            }(s.PureComponent);\n        h.defaultProps = {\n            mediaType: \"application/json\",\n            requestBody: (0, c.fromJS)({}),\n            onChange: d\n        }, t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(23)),\n            o = c(n(4)),\n            i = c(n(2)),\n            a = c(n(3)),\n            u = c(n(5)),\n            s = c(n(6)),\n            l = c(n(0));\n        c(n(1));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n                function t(e, n) {\n                    (0, i.default)(this, t);\n                    var r = (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).call(this, e, n));\n                    p.call(r);\n                    var a = r.props,\n                        s = a.name,\n                        l = a.schema,\n                        c = r.getValue();\n                    return r.state = {\n                        name: s,\n                        schema: l,\n                        value: c\n                    }, r\n                }\n                return (0, s.default)(t, e), (0, a.default)(t, [{\n                    key: \"getValue\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.name,\n                            n = e.authorized;\n                        return n && n.getIn([t, \"value\"])\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.schema,\n                            n = e.getComponent,\n                            r = e.errSelectors,\n                            o = e.name,\n                            i = n(\"Input\"),\n                            a = n(\"Row\"),\n                            u = n(\"Col\"),\n                            s = n(\"authError\"),\n                            c = n(\"Markdown\"),\n                            f = n(\"JumpToPath\", !0),\n                            p = (t.get(\"scheme\") || \"\").toLowerCase(),\n                            d = this.getValue(),\n                            h = r.allErrors().filter(function(e) {\n                                return e.get(\"authId\") === o\n                            });\n                        if (\"basic\" === p) {\n                            var v = d ? d.get(\"username\") : null;\n                            return l.default.createElement(\"div\", null, l.default.createElement(\"h4\", null, l.default.createElement(\"code\", null, o || t.get(\"name\")), \"  (http, Basic)\", l.default.createElement(f, {\n                                path: [\"securityDefinitions\", o]\n                            })), v && l.default.createElement(\"h6\", null, \"Authorized\"), l.default.createElement(a, null, l.default.createElement(c, {\n                                source: t.get(\"description\")\n                            })), l.default.createElement(a, null, l.default.createElement(\"label\", null, \"Username:\"), v ? l.default.createElement(\"code\", null, \" \", v, \" \") : l.default.createElement(u, null, l.default.createElement(i, {\n                                type: \"text\",\n                                required: \"required\",\n                                name: \"username\",\n                                onChange: this.onChange\n                            }))), l.default.createElement(a, null, l.default.createElement(\"label\", null, \"Password:\"), v ? l.default.createElement(\"code\", null, \" ****** \") : l.default.createElement(u, null, l.default.createElement(i, {\n                                required: \"required\",\n                                autoComplete: \"new-password\",\n                                name: \"password\",\n                                type: \"password\",\n                                onChange: this.onChange\n                            }))), h.valueSeq().map(function(e, t) {\n                                return l.default.createElement(s, {\n                                    error: e,\n                                    key: t\n                                })\n                            }))\n                        }\n                        return \"bearer\" === p ? l.default.createElement(\"div\", null, l.default.createElement(\"h4\", null, l.default.createElement(\"code\", null, o || t.get(\"name\")), \"  (http, Bearer)\", l.default.createElement(f, {\n                            path: [\"securityDefinitions\", o]\n                        })), d && l.default.createElement(\"h6\", null, \"Authorized\"), l.default.createElement(a, null, l.default.createElement(c, {\n                            source: t.get(\"description\")\n                        })), l.default.createElement(a, null, l.default.createElement(\"label\", null, \"Value:\"), d ? l.default.createElement(\"code\", null, \" ****** \") : l.default.createElement(u, null, l.default.createElement(i, {\n                            type: \"text\",\n                            onChange: this.onChange\n                        }))), h.valueSeq().map(function(e, t) {\n                            return l.default.createElement(s, {\n                                error: e,\n                                key: t\n                            })\n                        })) : l.default.createElement(\"div\", null, l.default.createElement(\"em\", null, l.default.createElement(\"b\", null, o), \" HTTP authentication: unsupported scheme \", \"'\" + p + \"'\"))\n                    }\n                }]), t\n            }(l.default.Component),\n            p = function() {\n                var e = this;\n                this.onChange = function(t) {\n                    var n = e.props.onChange,\n                        o = t.target,\n                        i = o.value,\n                        a = o.name,\n                        u = (0, r.default)({}, e.state.value);\n                    a ? u[a] = i : u = i, e.setState({\n                        value: u\n                    }, function() {\n                        return n(e.state)\n                    })\n                }\n            };\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(25)),\n            o = c(n(4)),\n            i = c(n(2)),\n            a = c(n(3)),\n            u = c(n(5)),\n            s = c(n(6)),\n            l = c(n(0));\n        c(n(1)), c(n(12));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                var e, n, a, s;\n                (0, i.default)(this, t);\n                for (var l = arguments.length, c = Array(l), f = 0; f < l; f++) c[f] = arguments[f];\n                return n = a = (0, u.default)(this, (e = t.__proto__ || (0, o.default)(t)).call.apply(e, [this].concat(c))), a.setSelectedServer = function(e) {\n                    var t = a.props,\n                        n = t.path,\n                        r = t.method;\n                    return a.forceUpdate(), a.props.setSelectedServer(e, n + \":\" + r)\n                }, a.setServerVariableValue = function(e) {\n                    var t = a.props,\n                        n = t.path,\n                        o = t.method;\n                    return a.forceUpdate(), a.props.setServerVariableValue((0, r.default)({}, e, {\n                        namespace: n + \":\" + o\n                    }))\n                }, a.getSelectedServer = function() {\n                    var e = a.props,\n                        t = e.path,\n                        n = e.method;\n                    return a.props.getSelectedServer(t + \":\" + n)\n                }, a.getServerVariable = function(e, t) {\n                    var n = a.props,\n                        r = n.path,\n                        o = n.method;\n                    return a.props.getServerVariable({\n                        namespace: r + \":\" + o,\n                        server: e\n                    }, t)\n                }, a.getEffectiveServerValue = function(e) {\n                    var t = a.props,\n                        n = t.path,\n                        r = t.method;\n                    return a.props.getEffectiveServerValue({\n                        server: e,\n                        namespace: n + \":\" + r\n                    })\n                }, s = n, (0, u.default)(a, s)\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.operationServers,\n                        n = e.pathServers,\n                        r = e.getComponent;\n                    if (!t && !n) return null;\n                    var o = r(\"Servers\"),\n                        i = t || n,\n                        a = t ? \"operation\" : \"path\";\n                    return l.default.createElement(\"div\", {\n                        className: \"opblock-section operation-servers\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"opblock-section-header\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"tab-header\"\n                    }, l.default.createElement(\"h4\", {\n                        className: \"opblock-title\"\n                    }, \"Servers\"))), l.default.createElement(\"div\", {\n                        className: \"opblock-description-wrapper\"\n                    }, l.default.createElement(\"h4\", {\n                        className: \"message\"\n                    }, \"These \", a, \"-level options override the global server options.\"), l.default.createElement(o, {\n                        servers: i,\n                        currentServer: this.getSelectedServer(),\n                        setSelectedServer: this.setSelectedServer,\n                        setServerVariableValue: this.setServerVariableValue,\n                        getServerVariable: this.getServerVariable,\n                        getEffectiveServerValue: this.getEffectiveServerValue\n                    })))\n                }\n            }]), t\n        }(l.default.Component);\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(435)),\n            o = c(n(436)),\n            i = c(n(437)),\n            a = c(n(438)),\n            u = c(n(439)),\n            s = c(n(440)),\n            l = c(n(441));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = {\n            Markdown: r.default,\n            AuthItem: o.default,\n            parameters: i.default,\n            JsonSchema_string: l.default,\n            VersionStamp: a.default,\n            model: s.default,\n            onlineValidatorBadge: u.default\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.Markdown = void 0;\n        var r = s(n(0)),\n            o = (s(n(1)), s(n(113))),\n            i = s(n(415)),\n            a = n(35),\n            u = n(414);\n\n        function s(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var l = new i.default(\"commonmark\");\n        l.set({\n            linkTarget: \"_blank\"\n        });\n        var c = t.Markdown = function(e) {\n            var t = e.source,\n                n = e.className,\n                i = void 0 === n ? \"\" : n;\n            if (t) {\n                var a = l.render(t),\n                    s = (0, u.sanitizer)(a),\n                    c = void 0;\n                return \"string\" == typeof s && (c = s.trim()), r.default.createElement(\"div\", {\n                    dangerouslySetInnerHTML: {\n                        __html: c\n                    },\n                    className: (0, o.default)(i, \"renderedMarkdown\")\n                })\n            }\n            return null\n        };\n        t.default = (0, a.OAS3ComponentWrapFactory)(c)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = a(n(84)),\n            o = a(n(0)),\n            i = n(35);\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = (0, i.OAS3ComponentWrapFactory)(function(e) {\n            var t = e.Ori,\n                n = (0, r.default)(e, [\"Ori\"]),\n                i = n.schema,\n                a = n.getComponent,\n                u = n.errSelectors,\n                s = n.authorized,\n                l = n.onAuthChange,\n                c = n.name,\n                f = a(\"HttpAuth\");\n            return \"http\" === i.get(\"type\") ? o.default.createElement(f, {\n                key: c,\n                schema: i,\n                name: c,\n                errSelectors: u,\n                authorized: s,\n                getComponent: a,\n                onChange: l\n            }) : o.default.createElement(t, n)\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = h(n(83)),\n            o = h(n(4)),\n            i = h(n(2)),\n            a = h(n(3)),\n            u = h(n(5)),\n            s = h(n(6)),\n            l = n(0),\n            c = h(l),\n            f = (h(n(1)), n(7)),\n            p = h(f),\n            d = (h(n(12)), n(35));\n\n        function h(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var v = function(e) {\n            function t(e) {\n                (0, i.default)(this, t);\n                var n = (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).call(this, e));\n                return n.onChange = function(e, t, r) {\n                    var o = n.props;\n                    (0, o.specActions.changeParamByIdentity)(o.onChangeKey, e, t, r)\n                }, n.onChangeConsumesWrapper = function(e) {\n                    var t = n.props;\n                    (0, t.specActions.changeConsumesValue)(t.onChangeKey, e)\n                }, n.toggleTab = function(e) {\n                    return \"parameters\" === e ? n.setState({\n                        parametersVisible: !0,\n                        callbackVisible: !1\n                    }) : \"callbacks\" === e ? n.setState({\n                        callbackVisible: !0,\n                        parametersVisible: !1\n                    }) : void 0\n                }, n.state = {\n                    callbackVisible: !1,\n                    parametersVisible: !0\n                }, n\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        t = this.props,\n                        n = t.onTryoutClick,\n                        o = t.onCancelClick,\n                        i = t.parameters,\n                        a = t.allowTryItOut,\n                        u = t.tryItOutEnabled,\n                        s = t.fn,\n                        l = t.getComponent,\n                        d = t.getConfigs,\n                        h = t.specSelectors,\n                        v = t.specActions,\n                        m = t.oas3Actions,\n                        g = t.oas3Selectors,\n                        y = t.pathMethod,\n                        b = t.specPath,\n                        _ = t.operation,\n                        w = l(\"parameterRow\"),\n                        E = l(\"TryItOutButton\"),\n                        x = l(\"contentType\"),\n                        S = l(\"Callbacks\", !0),\n                        C = l(\"RequestBody\", !0),\n                        k = u && a,\n                        A = h.isOAS3,\n                        O = _.get(\"requestBody\"),\n                        P = b.slice(0, -1).push(\"requestBody\");\n                    return c.default.createElement(\"div\", {\n                        className: \"opblock-section\"\n                    }, c.default.createElement(\"div\", {\n                        className: \"opblock-section-header\"\n                    }, c.default.createElement(\"div\", {\n                        className: \"tab-header\"\n                    }, c.default.createElement(\"div\", {\n                        onClick: function() {\n                            return e.toggleTab(\"parameters\")\n                        },\n                        className: \"tab-item \" + (this.state.parametersVisible && \"active\")\n                    }, c.default.createElement(\"h4\", {\n                        className: \"opblock-title\"\n                    }, c.default.createElement(\"span\", null, \"Parameters\"))), _.get(\"callbacks\") ? c.default.createElement(\"div\", {\n                        onClick: function() {\n                            return e.toggleTab(\"callbacks\")\n                        },\n                        className: \"tab-item \" + (this.state.callbackVisible && \"active\")\n                    }, c.default.createElement(\"h4\", {\n                        className: \"opblock-title\"\n                    }, c.default.createElement(\"span\", null, \"Callbacks\"))) : null), a ? c.default.createElement(E, {\n                        enabled: u,\n                        onCancelClick: o,\n                        onTryoutClick: n\n                    }) : null), this.state.parametersVisible ? c.default.createElement(\"div\", {\n                        className: \"parameters-container\"\n                    }, i.count() ? c.default.createElement(\"div\", {\n                        className: \"table-container\"\n                    }, c.default.createElement(\"table\", {\n                        className: \"parameters\"\n                    }, c.default.createElement(\"thead\", null, c.default.createElement(\"tr\", null, c.default.createElement(\"th\", {\n                        className: \"col col_header parameters-col_name\"\n                    }, \"Name\"), c.default.createElement(\"th\", {\n                        className: \"col col_header parameters-col_description\"\n                    }, \"Description\"))), c.default.createElement(\"tbody\", null, function(e, t) {\n                        return e.valueSeq().filter(p.default.Map.isMap).map(t)\n                    }(i, function(t, n) {\n                        return c.default.createElement(w, {\n                            fn: s,\n                            getComponent: l,\n                            specPath: b.push(n),\n                            getConfigs: d,\n                            rawParam: t,\n                            param: h.parameterWithMetaByIdentity(y, t),\n                            key: t.get(\"name\"),\n                            onChange: e.onChange,\n                            onChangeConsumes: e.onChangeConsumesWrapper,\n                            specSelectors: h,\n                            specActions: v,\n                            pathMethod: y,\n                            isExecute: k\n                        })\n                    }).toArray()))) : c.default.createElement(\"div\", {\n                        className: \"opblock-description-wrapper\"\n                    }, c.default.createElement(\"p\", null, \"No parameters\"))) : \"\", this.state.callbackVisible ? c.default.createElement(\"div\", {\n                        className: \"callbacks-container opblock-description-wrapper\"\n                    }, c.default.createElement(S, {\n                        callbacks: (0, f.Map)(_.get(\"callbacks\")),\n                        specPath: b.slice(0, -1).push(\"callbacks\")\n                    })) : \"\", A() && O && this.state.parametersVisible && c.default.createElement(\"div\", {\n                        className: \"opblock-section\"\n                    }, c.default.createElement(\"div\", {\n                        className: \"opblock-section-header\"\n                    }, c.default.createElement(\"h4\", {\n                        className: \"opblock-title parameter__name \" + (O.get(\"required\") && \"required\")\n                    }, \"Request body\"), c.default.createElement(\"label\", null, c.default.createElement(x, {\n                        value: g.requestContentType.apply(g, (0, r.default)(y)),\n                        contentTypes: O.get(\"content\").keySeq(),\n                        onChange: function(e) {\n                            m.setRequestContentType({\n                                value: e,\n                                pathMethod: y\n                            })\n                        },\n                        className: \"body-param-content-type\"\n                    }))), c.default.createElement(\"div\", {\n                        className: \"opblock-description-wrapper\"\n                    }, c.default.createElement(C, {\n                        specPath: P,\n                        requestBody: O,\n                        requestBodyValue: g.requestBodyValue.apply(g, (0, r.default)(y)) || (0, f.Map)(),\n                        isExecute: k,\n                        onChange: function(e, t) {\n                            if (t) {\n                                var n = g.requestBodyValue.apply(g, (0, r.default)(y)),\n                                    o = f.Map.isMap(n) ? n : (0, f.Map)();\n                                return m.setRequestBodyValue({\n                                    pathMethod: y,\n                                    value: o.setIn(t, e)\n                                })\n                            }\n                            m.setRequestBodyValue({\n                                value: e,\n                                pathMethod: y\n                            })\n                        },\n                        contentType: g.requestContentType.apply(g, (0, r.default)(y))\n                    }))))\n                }\n            }]), t\n        }(l.Component);\n        v.defaultProps = {\n            onTryoutClick: Function.prototype,\n            onCancelClick: Function.prototype,\n            tryItOutEnabled: !1,\n            allowTryItOut: !0,\n            onChangeKey: []\n        }, t.default = (0, d.OAS3ComponentWrapFactory)(v)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o = n(0),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = n(35);\n        t.default = (0, a.OAS3ComponentWrapFactory)(function(e) {\n            var t = e.Ori;\n            return i.default.createElement(\"span\", null, i.default.createElement(t, e), i.default.createElement(\"small\", {\n                style: {\n                    backgroundColor: \"#89bf04\"\n                }\n            }, i.default.createElement(\"pre\", {\n                className: \"version\"\n            }, \"OAS3\")))\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = n(35);\n        t.default = (0, r.OAS3ComponentWrapFactory)(function() {\n            return null\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = d(n(25)),\n            o = d(n(4)),\n            i = d(n(2)),\n            a = d(n(3)),\n            u = d(n(5)),\n            s = d(n(6)),\n            l = n(0),\n            c = d(l),\n            f = (d(n(1)), n(35)),\n            p = n(413);\n\n        function d(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var h = function(e) {\n            function t() {\n                return (0, i.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).apply(this, arguments))\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getConfigs,\n                        n = [\"model-box\"],\n                        o = null;\n                    return !0 === e.schema.get(\"deprecated\") && (n.push(\"deprecated\"), o = c.default.createElement(\"span\", {\n                        className: \"model-deprecated-warning\"\n                    }, \"Deprecated:\")), c.default.createElement(\"div\", {\n                        className: n.join(\" \")\n                    }, o, c.default.createElement(p.Model, (0, r.default)({}, this.props, {\n                        getConfigs: t,\n                        depth: 1,\n                        expandDepth: this.props.expandDepth || 0\n                    })))\n                }\n            }]), t\n        }(l.Component);\n        t.default = (0, f.OAS3ComponentWrapFactory)(h)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = a(n(84)),\n            o = a(n(0)),\n            i = n(35);\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = (0, i.OAS3ComponentWrapFactory)(function(e) {\n            var t = e.Ori,\n                n = (0, r.default)(e, [\"Ori\"]),\n                i = n.schema,\n                a = n.getComponent,\n                u = n.errors,\n                s = n.onChange,\n                l = i.type,\n                c = i.format,\n                f = a(\"Input\");\n            return \"string\" !== l || \"binary\" !== c && \"base64\" !== c ? o.default.createElement(t, n) : o.default.createElement(f, {\n                type: \"file\",\n                className: u.length ? \"invalid\" : \"\",\n                title: u.length ? u : \"\",\n                onChange: function(e) {\n                    s(e.target.files[0])\n                },\n                disabled: t.isDisabled\n            })\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.serverEffectiveValue = t.serverVariables = t.serverVariableValue = t.responseContentType = t.requestContentType = t.requestBodyValue = t.selectedServer = void 0;\n        var r = n(7),\n            o = n(35);\n\n        function i(e) {\n            return function() {\n                for (var t = arguments.length, n = Array(t), r = 0; r < t; r++) n[r] = arguments[r];\n                return function(t) {\n                    var r = t.getSystem().specSelectors.specJson();\n                    return (0, o.isOAS3)(r) ? e.apply(void 0, n) : null\n                }\n            }\n        }\n        t.selectedServer = i(function(e, t) {\n            var n = t ? [t, \"selectedServer\"] : [\"selectedServer\"];\n            return e.getIn(n) || \"\"\n        }), t.requestBodyValue = i(function(e, t, n) {\n            return e.getIn([\"requestData\", t, n, \"bodyValue\"]) || null\n        }), t.requestContentType = i(function(e, t, n) {\n            return e.getIn([\"requestData\", t, n, \"requestContentType\"]) || null\n        }), t.responseContentType = i(function(e, t, n) {\n            return e.getIn([\"requestData\", t, n, \"responseContentType\"]) || null\n        }), t.serverVariableValue = i(function(e, t, n) {\n            var r = void 0;\n            if (\"string\" != typeof t) {\n                var o = t.server,\n                    i = t.namespace;\n                r = i ? [i, \"serverVariableValues\", o, n] : [\"serverVariableValues\", o, n]\n            } else {\n                r = [\"serverVariableValues\", t, n]\n            }\n            return e.getIn(r) || null\n        }), t.serverVariables = i(function(e, t) {\n            var n = void 0;\n            if (\"string\" != typeof t) {\n                var o = t.server,\n                    i = t.namespace;\n                n = i ? [i, \"serverVariableValues\", o] : [\"serverVariableValues\", o]\n            } else {\n                n = [\"serverVariableValues\", t]\n            }\n            return e.getIn(n) || (0, r.OrderedMap)()\n        }), t.serverEffectiveValue = i(function(e, t) {\n            var n, o;\n            if (\"string\" != typeof t) {\n                var i = t.server,\n                    a = t.namespace;\n                o = i, n = a ? e.getIn([a, \"serverVariableValues\", o]) : e.getIn([\"serverVariableValues\", o])\n            } else o = t, n = e.getIn([\"serverVariableValues\", o]);\n            var u = o;\n            return (n = n || (0, r.OrderedMap)()).map(function(e, t) {\n                u = u.replace(new RegExp(\"{\" + t + \"}\", \"g\"), e)\n            }), u\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o = u(n(22)),\n            i = u(n(18)),\n            a = n(236);\n\n        function u(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = (r = {}, (0, o.default)(r, a.UPDATE_SELECTED_SERVER, function(e, t) {\n            var n = t.payload,\n                r = n.selectedServerUrl,\n                o = n.namespace,\n                i = o ? [o, \"selectedServer\"] : [\"selectedServer\"];\n            return e.setIn(i, r)\n        }), (0, o.default)(r, a.UPDATE_REQUEST_BODY_VALUE, function(e, t) {\n            var n = t.payload,\n                r = n.value,\n                o = n.pathMethod,\n                a = (0, i.default)(o, 2),\n                u = a[0],\n                s = a[1];\n            return e.setIn([\"requestData\", u, s, \"bodyValue\"], r)\n        }), (0, o.default)(r, a.UPDATE_REQUEST_CONTENT_TYPE, function(e, t) {\n            var n = t.payload,\n                r = n.value,\n                o = n.pathMethod,\n                a = (0, i.default)(o, 2),\n                u = a[0],\n                s = a[1];\n            return e.setIn([\"requestData\", u, s, \"requestContentType\"], r)\n        }), (0, o.default)(r, a.UPDATE_RESPONSE_CONTENT_TYPE, function(e, t) {\n            var n = t.payload,\n                r = n.value,\n                o = n.path,\n                i = n.method;\n            return e.setIn([\"requestData\", o, i, \"responseContentType\"], r)\n        }), (0, o.default)(r, a.UPDATE_SERVER_VARIABLE_VALUE, function(e, t) {\n            var n = t.payload,\n                r = n.server,\n                o = n.namespace,\n                i = n.key,\n                a = n.val,\n                u = o ? [o, \"serverVariableValues\", r, i] : [\"serverVariableValues\", r, i];\n            return e.setIn(u, a)\n        }), r)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(10),\n            o = n(1058);\n        o.keys().forEach(function(t) {\n            if (\"./index.js\" !== t) {\n                var n = o(t);\n                e.exports[(0, r.pascalCaseFilename)(t)] = n.default ? n.default : n\n            }\n        })\n    }, function(e, t, n) {\n        n(446), e.exports = n(515)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(32);\n        void 0 === ((r = o) && r.__esModule ? r : {\n            default: r\n        }).default.Promise && n(457), String.prototype.startsWith || n(486)\n    }, function(e, t, n) {\n        n(92), n(98), e.exports = n(456)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(449),\n            o = n(450),\n            i = n(70),\n            a = n(71);\n        e.exports = n(237)(Array, \"Array\", function(e, t) {\n            this._t = a(e), this._i = 0, this._k = t\n        }, function() {\n            var e = this._t,\n                t = this._k,\n                n = this._i++;\n            return !e || n >= e.length ? (this._t = void 0, o(1)) : o(0, \"keys\" == t ? n : \"values\" == t ? e[n] : [n, e[n]])\n        }, \"values\"), i.Arguments = i.Array, r(\"keys\"), r(\"values\"), r(\"entries\")\n    }, function(e, t) {\n        e.exports = function() {}\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return {\n                value: t,\n                done: !!e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(159),\n            o = n(95),\n            i = n(97),\n            a = {};\n        n(50)(a, n(19)(\"iterator\"), function() {\n            return this\n        }), e.exports = function(e, t, n) {\n            e.prototype = r(a, {\n                next: o(1, n)\n            }), i(e, t + \" Iterator\")\n        }\n    }, function(e, t, n) {\n        var r = n(40),\n            o = n(36),\n            i = n(96);\n        e.exports = n(44) ? Object.defineProperties : function(e, t) {\n            o(e);\n            for (var n, a = i(t), u = a.length, s = 0; u > s;) r.f(e, n = a[s++], t[n]);\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(71),\n            o = n(115),\n            i = n(454);\n        e.exports = function(e) {\n            return function(t, n, a) {\n                var u, s = r(t),\n                    l = o(s.length),\n                    c = i(a, l);\n                if (e && n != n) {\n                    for (; l > c;)\n                        if ((u = s[c++]) != u) return !0\n                } else\n                    for (; l > c; c++)\n                        if ((e || c in s) && s[c] === n) return e || c || 0; return !e && -1\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(160),\n            o = Math.max,\n            i = Math.min;\n        e.exports = function(e, t) {\n            return (e = r(e)) < 0 ? o(e + t, 0) : i(e, t)\n        }\n    }, function(e, t, n) {\n        var r = n(160),\n            o = n(155);\n        e.exports = function(e) {\n            return function(t, n) {\n                var i, a, u = String(o(t)),\n                    s = r(n),\n                    l = u.length;\n                return s < 0 || s >= l ? e ? \"\" : void 0 : (i = u.charCodeAt(s)) < 55296 || i > 56319 || s + 1 === l || (a = u.charCodeAt(s + 1)) < 56320 || a > 57343 ? e ? u.charAt(s) : i : e ? u.slice(s, s + 2) : a - 56320 + (i - 55296 << 10) + 65536\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(36),\n            o = n(164);\n        e.exports = n(15).getIterator = function(e) {\n            var t = o(e);\n            if (\"function\" != typeof t) throw TypeError(e + \" is not iterable!\");\n            return r(t.call(e))\n        }\n    }, function(e, t, n) {\n        n(458), n(244), n(469), n(473), n(484), n(485), e.exports = n(60).Promise\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(166),\n            o = {};\n        o[n(17)(\"toStringTag\")] = \"z\", o + \"\" != \"[object z]\" && n(73)(Object.prototype, \"toString\", function() {\n            return \"[object \" + r(this) + \"]\"\n        }, !0)\n    }, function(e, t, n) {\n        e.exports = !n(100) && !n(101)(function() {\n            return 7 != Object.defineProperty(n(168)(\"div\"), \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(e, t, n) {\n        var r = n(74);\n        e.exports = function(e, t) {\n            if (!r(e)) return e;\n            var n, o;\n            if (t && \"function\" == typeof(n = e.toString) && !r(o = n.call(e))) return o;\n            if (\"function\" == typeof(n = e.valueOf) && !r(o = n.call(e))) return o;\n            if (!t && \"function\" == typeof(n = e.toString) && !r(o = n.call(e))) return o;\n            throw TypeError(\"Can't convert object to primitive value\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(462),\n            o = n(243),\n            i = n(170),\n            a = {};\n        n(58)(a, n(17)(\"iterator\"), function() {\n            return this\n        }), e.exports = function(e, t, n) {\n            e.prototype = r(a, {\n                next: o(1, n)\n            }), i(e, t + \" Iterator\")\n        }\n    }, function(e, t, n) {\n        var r = n(59),\n            o = n(463),\n            i = n(250),\n            a = n(169)(\"IE_PROTO\"),\n            u = function() {},\n            s = function() {\n                var e, t = n(168)(\"iframe\"),\n                    r = i.length;\n                for (t.style.display = \"none\", n(251).appendChild(t), t.src = \"javascript:\", (e = t.contentWindow.document).open(), e.write(\"<script>document.F=Object<\\/script>\"), e.close(), s = e.F; r--;) delete s.prototype[i[r]];\n                return s()\n            };\n        e.exports = Object.create || function(e, t) {\n            var n;\n            return null !== e ? (u.prototype = r(e), n = new u, u.prototype = null, n[a] = e) : n = s(), void 0 === t ? n : o(n, t)\n        }\n    }, function(e, t, n) {\n        var r = n(117),\n            o = n(59),\n            i = n(248);\n        e.exports = n(100) ? Object.defineProperties : function(e, t) {\n            o(e);\n            for (var n, a = i(t), u = a.length, s = 0; u > s;) r.f(e, n = a[s++], t[n]);\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(118),\n            o = n(122),\n            i = n(466)(!1),\n            a = n(169)(\"IE_PROTO\");\n        e.exports = function(e, t) {\n            var n, u = o(e),\n                s = 0,\n                l = [];\n            for (n in u) n != a && r(u, n) && l.push(n);\n            for (; t.length > s;) r(u, n = t[s++]) && (~i(l, n) || l.push(n));\n            return l\n        }\n    }, function(e, t, n) {\n        var r = n(99);\n        e.exports = Object(\"z\").propertyIsEnumerable(0) ? Object : function(e) {\n            return \"String\" == r(e) ? e.split(\"\") : Object(e)\n        }\n    }, function(e, t, n) {\n        var r = n(122),\n            o = n(103),\n            i = n(249);\n        e.exports = function(e) {\n            return function(t, n, a) {\n                var u, s = r(t),\n                    l = o(s.length),\n                    c = i(a, l);\n                if (e && n != n) {\n                    for (; l > c;)\n                        if ((u = s[c++]) != u) return !0\n                } else\n                    for (; l > c; c++)\n                        if ((e || c in s) && s[c] === n) return e || c || 0; return !e && -1\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(118),\n            o = n(468),\n            i = n(169)(\"IE_PROTO\"),\n            a = Object.prototype;\n        e.exports = Object.getPrototypeOf || function(e) {\n            return e = o(e), r(e, i) ? e[i] : \"function\" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? a : null\n        }\n    }, function(e, t, n) {\n        var r = n(53);\n        e.exports = function(e) {\n            return Object(r(e))\n        }\n    }, function(e, t, n) {\n        for (var r = n(470), o = n(248), i = n(73), a = n(33), u = n(58), s = n(102), l = n(17), c = l(\"iterator\"), f = l(\"toStringTag\"), p = s.Array, d = {\n            CSSRuleList: !0,\n            CSSStyleDeclaration: !1,\n            CSSValueList: !1,\n            ClientRectList: !1,\n            DOMRectList: !1,\n            DOMStringList: !1,\n            DOMTokenList: !0,\n            DataTransferItemList: !1,\n            FileList: !1,\n            HTMLAllCollection: !1,\n            HTMLCollection: !1,\n            HTMLFormElement: !1,\n            HTMLSelectElement: !1,\n            MediaList: !0,\n            MimeTypeArray: !1,\n            NamedNodeMap: !1,\n            NodeList: !0,\n            PaintRequestList: !1,\n            Plugin: !1,\n            PluginArray: !1,\n            SVGLengthList: !1,\n            SVGNumberList: !1,\n            SVGPathSegList: !1,\n            SVGPointList: !1,\n            SVGStringList: !1,\n            SVGTransformList: !1,\n            SourceBufferList: !1,\n            StyleSheetList: !0,\n            TextTrackCueList: !1,\n            TextTrackList: !1,\n            TouchList: !1\n        }, h = o(d), v = 0; v < h.length; v++) {\n            var m, g = h[v],\n                y = d[g],\n                b = a[g],\n                _ = b && b.prototype;\n            if (_ && (_[c] || u(_, c, p), _[f] || u(_, f, g), s[g] = p, y))\n                for (m in r) _[m] || i(_, m, r[m], !0)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(471),\n            o = n(472),\n            i = n(102),\n            a = n(122);\n        e.exports = n(246)(Array, \"Array\", function(e, t) {\n            this._t = a(e), this._i = 0, this._k = t\n        }, function() {\n            var e = this._t,\n                t = this._k,\n                n = this._i++;\n            return !e || n >= e.length ? (this._t = void 0, o(1)) : o(0, \"keys\" == t ? n : \"values\" == t ? e[n] : [n, e[n]])\n        }, \"values\"), i.Arguments = i.Array, r(\"keys\"), r(\"values\"), r(\"entries\")\n    }, function(e, t, n) {\n        var r = n(17)(\"unscopables\"),\n            o = Array.prototype;\n        void 0 == o[r] && n(58)(o, r, {}), e.exports = function(e) {\n            o[r][e] = !0\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return {\n                value: t,\n                done: !!e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i, a, u = n(247),\n            s = n(33),\n            l = n(120),\n            c = n(166),\n            f = n(29),\n            p = n(74),\n            d = n(121),\n            h = n(474),\n            v = n(475),\n            m = n(252),\n            g = n(253).set,\n            y = n(480)(),\n            b = n(171),\n            _ = n(254),\n            w = n(255),\n            E = s.TypeError,\n            x = s.process,\n            S = s.Promise,\n            C = \"process\" == c(x),\n            k = function() {},\n            A = o = b.f,\n            O = !! function() {\n                try {\n                    var e = S.resolve(1),\n                        t = (e.constructor = {})[n(17)(\"species\")] = function(e) {\n                            e(k, k)\n                        };\n                    return (C || \"function\" == typeof PromiseRejectionEvent) && e.then(k) instanceof t\n                } catch (e) {}\n            }(),\n            P = function(e) {\n                var t;\n                return !(!p(e) || \"function\" != typeof(t = e.then)) && t\n            },\n            T = function(e, t) {\n                if (!e._n) {\n                    e._n = !0;\n                    var n = e._c;\n                    y(function() {\n                        for (var r = e._v, o = 1 == e._s, i = 0, a = function(t) {\n                            var n, i, a, u = o ? t.ok : t.fail,\n                                s = t.resolve,\n                                l = t.reject,\n                                c = t.domain;\n                            try {\n                                u ? (o || (2 == e._h && j(e), e._h = 1), !0 === u ? n = r : (c && c.enter(), n = u(r), c && (c.exit(), a = !0)), n === t.promise ? l(E(\"Promise-chain cycle\")) : (i = P(n)) ? i.call(n, s, l) : s(n)) : l(r)\n                            } catch (e) {\n                                c && !a && c.exit(), l(e)\n                            }\n                        }; n.length > i;) a(n[i++]);\n                        e._c = [], e._n = !1, t && !e._h && M(e)\n                    })\n                }\n            },\n            M = function(e) {\n                g.call(s, function() {\n                    var t, n, r, o = e._v,\n                        i = I(e);\n                    if (i && (t = _(function() {\n                        C ? x.emit(\"unhandledRejection\", o, e) : (n = s.onunhandledrejection) ? n({\n                            promise: e,\n                            reason: o\n                        }) : (r = s.console) && r.error && r.error(\"Unhandled promise rejection\", o)\n                    }), e._h = C || I(e) ? 2 : 1), e._a = void 0, i && t.e) throw t.v\n                })\n            },\n            I = function(e) {\n                return 1 !== e._h && 0 === (e._a || e._c).length\n            },\n            j = function(e) {\n                g.call(s, function() {\n                    var t;\n                    C ? x.emit(\"rejectionHandled\", e) : (t = s.onrejectionhandled) && t({\n                        promise: e,\n                        reason: e._v\n                    })\n                })\n            },\n            N = function(e) {\n                var t = this;\n                t._d || (t._d = !0, (t = t._w || t)._v = e, t._s = 2, t._a || (t._a = t._c.slice()), T(t, !0))\n            },\n            R = function(e) {\n                var t, n = this;\n                if (!n._d) {\n                    n._d = !0, n = n._w || n;\n                    try {\n                        if (n === e) throw E(\"Promise can't be resolved itself\");\n                        (t = P(e)) ? y(function() {\n                            var r = {\n                                _w: n,\n                                _d: !1\n                            };\n                            try {\n                                t.call(e, l(R, r, 1), l(N, r, 1))\n                            } catch (e) {\n                                N.call(r, e)\n                            }\n                        }): (n._v = e, n._s = 1, T(n, !1))\n                    } catch (e) {\n                        N.call({\n                            _w: n,\n                            _d: !1\n                        }, e)\n                    }\n                }\n            };\n        O || (S = function(e) {\n            h(this, S, \"Promise\", \"_h\"), d(e), r.call(this);\n            try {\n                e(l(R, this, 1), l(N, this, 1))\n            } catch (e) {\n                N.call(this, e)\n            }\n        }, (r = function(e) {\n            this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1\n        }).prototype = n(481)(S.prototype, {\n            then: function(e, t) {\n                var n = A(m(this, S));\n                return n.ok = \"function\" != typeof e || e, n.fail = \"function\" == typeof t && t, n.domain = C ? x.domain : void 0, this._c.push(n), this._a && this._a.push(n), this._s && T(this, !1), n.promise\n            },\n            catch: function(e) {\n                return this.then(void 0, e)\n            }\n        }), i = function() {\n            var e = new r;\n            this.promise = e, this.resolve = l(R, e, 1), this.reject = l(N, e, 1)\n        }, b.f = A = function(e) {\n            return e === S || e === a ? new i(e) : o(e)\n        }), f(f.G + f.W + f.F * !O, {\n            Promise: S\n        }), n(170)(S, \"Promise\"), n(482)(\"Promise\"), a = n(60).Promise, f(f.S + f.F * !O, \"Promise\", {\n            reject: function(e) {\n                var t = A(this);\n                return (0, t.reject)(e), t.promise\n            }\n        }), f(f.S + f.F * (u || !O), \"Promise\", {\n            resolve: function(e) {\n                return w(u && this === a ? S : this, e)\n            }\n        }), f(f.S + f.F * !(O && n(483)(function(e) {\n            S.all(e).catch(k)\n        })), \"Promise\", {\n            all: function(e) {\n                var t = this,\n                    n = A(t),\n                    r = n.resolve,\n                    o = n.reject,\n                    i = _(function() {\n                        var n = [],\n                            i = 0,\n                            a = 1;\n                        v(e, !1, function(e) {\n                            var u = i++,\n                                s = !1;\n                            n.push(void 0), a++, t.resolve(e).then(function(e) {\n                                s || (s = !0, n[u] = e, --a || r(n))\n                            }, o)\n                        }), --a || r(n)\n                    });\n                return i.e && o(i.v), n.promise\n            },\n            race: function(e) {\n                var t = this,\n                    n = A(t),\n                    r = n.reject,\n                    o = _(function() {\n                        v(e, !1, function(e) {\n                            t.resolve(e).then(n.resolve, r)\n                        })\n                    });\n                return o.e && r(o.v), n.promise\n            }\n        })\n    }, function(e, t) {\n        e.exports = function(e, t, n, r) {\n            if (!(e instanceof t) || void 0 !== r && r in e) throw TypeError(n + \": incorrect invocation!\");\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(120),\n            o = n(476),\n            i = n(477),\n            a = n(59),\n            u = n(103),\n            s = n(478),\n            l = {},\n            c = {};\n        (t = e.exports = function(e, t, n, f, p) {\n            var d, h, v, m, g = p ? function() {\n                    return e\n                } : s(e),\n                y = r(n, f, t ? 2 : 1),\n                b = 0;\n            if (\"function\" != typeof g) throw TypeError(e + \" is not iterable!\");\n            if (i(g)) {\n                for (d = u(e.length); d > b; b++)\n                    if ((m = t ? y(a(h = e[b])[0], h[1]) : y(e[b])) === l || m === c) return m\n            } else\n                for (v = g.call(e); !(h = v.next()).done;)\n                    if ((m = o(v, y, h.value, t)) === l || m === c) return m\n        }).BREAK = l, t.RETURN = c\n    }, function(e, t, n) {\n        var r = n(59);\n        e.exports = function(e, t, n, o) {\n            try {\n                return o ? t(r(n)[0], n[1]) : t(n)\n            } catch (t) {\n                var i = e.return;\n                throw void 0 !== i && r(i.call(e)), t\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(102),\n            o = n(17)(\"iterator\"),\n            i = Array.prototype;\n        e.exports = function(e) {\n            return void 0 !== e && (r.Array === e || i[o] === e)\n        }\n    }, function(e, t, n) {\n        var r = n(166),\n            o = n(17)(\"iterator\"),\n            i = n(102);\n        e.exports = n(60).getIteratorMethod = function(e) {\n            if (void 0 != e) return e[o] || e[\"@@iterator\"] || i[r(e)]\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n) {\n            var r = void 0 === n;\n            switch (t.length) {\n                case 0:\n                    return r ? e() : e.call(n);\n                case 1:\n                    return r ? e(t[0]) : e.call(n, t[0]);\n                case 2:\n                    return r ? e(t[0], t[1]) : e.call(n, t[0], t[1]);\n                case 3:\n                    return r ? e(t[0], t[1], t[2]) : e.call(n, t[0], t[1], t[2]);\n                case 4:\n                    return r ? e(t[0], t[1], t[2], t[3]) : e.call(n, t[0], t[1], t[2], t[3])\n            }\n            return e.apply(n, t)\n        }\n    }, function(e, t, n) {\n        var r = n(33),\n            o = n(253).set,\n            i = r.MutationObserver || r.WebKitMutationObserver,\n            a = r.process,\n            u = r.Promise,\n            s = \"process\" == n(99)(a);\n        e.exports = function() {\n            var e, t, n, l = function() {\n                var r, o;\n                for (s && (r = a.domain) && r.exit(); e;) {\n                    o = e.fn, e = e.next;\n                    try {\n                        o()\n                    } catch (r) {\n                        throw e ? n() : t = void 0, r\n                    }\n                }\n                t = void 0, r && r.enter()\n            };\n            if (s) n = function() {\n                a.nextTick(l)\n            };\n            else if (!i || r.navigator && r.navigator.standalone)\n                if (u && u.resolve) {\n                    var c = u.resolve();\n                    n = function() {\n                        c.then(l)\n                    }\n                } else n = function() {\n                    o.call(r, l)\n                };\n            else {\n                var f = !0,\n                    p = document.createTextNode(\"\");\n                new i(l).observe(p, {\n                    characterData: !0\n                }), n = function() {\n                    p.data = f = !f\n                }\n            }\n            return function(r) {\n                var o = {\n                    fn: r,\n                    next: void 0\n                };\n                t && (t.next = o), e || (e = o, n()), t = o\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(73);\n        e.exports = function(e, t, n) {\n            for (var o in t) r(e, o, t[o], n);\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(33),\n            o = n(117),\n            i = n(100),\n            a = n(17)(\"species\");\n        e.exports = function(e) {\n            var t = r[e];\n            i && t && !t[a] && o.f(t, a, {\n                configurable: !0,\n                get: function() {\n                    return this\n                }\n            })\n        }\n    }, function(e, t, n) {\n        var r = n(17)(\"iterator\"),\n            o = !1;\n        try {\n            var i = [7][r]();\n            i.return = function() {\n                o = !0\n            }, Array.from(i, function() {\n                throw 2\n            })\n        } catch (e) {}\n        e.exports = function(e, t) {\n            if (!t && !o) return !1;\n            var n = !1;\n            try {\n                var i = [7],\n                    a = i[r]();\n                a.next = function() {\n                    return {\n                        done: n = !0\n                    }\n                }, i[r] = function() {\n                    return a\n                }, e(i)\n            } catch (e) {}\n            return n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(29),\n            o = n(60),\n            i = n(33),\n            a = n(252),\n            u = n(255);\n        r(r.P + r.R, \"Promise\", {\n            finally: function(e) {\n                var t = a(this, o.Promise || i.Promise),\n                    n = \"function\" == typeof e;\n                return this.then(n ? function(n) {\n                    return u(t, e()).then(function() {\n                        return n\n                    })\n                } : e, n ? function(n) {\n                    return u(t, e()).then(function() {\n                        throw n\n                    })\n                } : e)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(29),\n            o = n(171),\n            i = n(254);\n        r(r.S, \"Promise\", {\n            try: function(e) {\n                var t = o.f(this),\n                    n = i(e);\n                return (n.e ? t.reject : t.resolve)(n.v), t.promise\n            }\n        })\n    }, function(e, t, n) {\n        n(487), n(488), n(489), n(244), n(492), n(493), n(494), n(495), n(497), n(498), n(499), n(500), n(501), n(502), n(503), n(504), n(505), n(506), n(507), n(508), n(509), n(510), n(511), n(512), n(513), n(514), e.exports = n(60).String\n    }, function(e, t, n) {\n        var r = n(29),\n            o = n(249),\n            i = String.fromCharCode,\n            a = String.fromCodePoint;\n        r(r.S + r.F * (!!a && 1 != a.length), \"String\", {\n            fromCodePoint: function(e) {\n                for (var t, n = [], r = arguments.length, a = 0; r > a;) {\n                    if (t = +arguments[a++], o(t, 1114111) !== t) throw RangeError(t + \" is not a valid code point\");\n                    n.push(t < 65536 ? i(t) : i(55296 + ((t -= 65536) >> 10), t % 1024 + 56320))\n                }\n                return n.join(\"\")\n            }\n        })\n    }, function(e, t, n) {\n        var r = n(29),\n            o = n(122),\n            i = n(103);\n        r(r.S, \"String\", {\n            raw: function(e) {\n                for (var t = o(e.raw), n = i(t.length), r = arguments.length, a = [], u = 0; n > u;) a.push(String(t[u++])), u < r && a.push(String(arguments[u]));\n                return a.join(\"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(490)(\"trim\", function(e) {\n            return function() {\n                return e(this, 3)\n            }\n        })\n    }, function(e, t, n) {\n        var r = n(29),\n            o = n(53),\n            i = n(101),\n            a = n(491),\n            u = \"[\" + a + \"]\",\n            s = RegExp(\"^\" + u + u + \"*\"),\n            l = RegExp(u + u + \"*$\"),\n            c = function(e, t, n) {\n                var o = {},\n                    u = i(function() {\n                        return !!a[e]() || \"​\" != \"​\" [e]()\n                    }),\n                    s = o[e] = u ? t(f) : a[e];\n                n && (o[n] = s), r(r.P + r.F * u, \"String\", o)\n            },\n            f = c.trim = function(e, t) {\n                return e = String(o(e)), 1 & t && (e = e.replace(s, \"\")), 2 & t && (e = e.replace(l, \"\")), e\n            };\n        e.exports = c\n    }, function(e, t) {\n        e.exports = \"\\t\\n\\v\\f\\r   ᠎             　\\u2028\\u2029\\ufeff\"\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(29),\n            o = n(245)(!1);\n        r(r.P, \"String\", {\n            codePointAt: function(e) {\n                return o(this, e)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(29),\n            o = n(103),\n            i = n(172),\n            a = \"\".endsWith;\n        r(r.P + r.F * n(173)(\"endsWith\"), \"String\", {\n            endsWith: function(e) {\n                var t = i(this, e, \"endsWith\"),\n                    n = arguments.length > 1 ? arguments[1] : void 0,\n                    r = o(t.length),\n                    u = void 0 === n ? r : Math.min(o(n), r),\n                    s = String(e);\n                return a ? a.call(t, s, u) : t.slice(u - s.length, u) === s\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(29),\n            o = n(172);\n        r(r.P + r.F * n(173)(\"includes\"), \"String\", {\n            includes: function(e) {\n                return !!~o(this, e, \"includes\").indexOf(e, arguments.length > 1 ? arguments[1] : void 0)\n            }\n        })\n    }, function(e, t, n) {\n        var r = n(29);\n        r(r.P, \"String\", {\n            repeat: n(496)\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(119),\n            o = n(53);\n        e.exports = function(e) {\n            var t = String(o(this)),\n                n = \"\",\n                i = r(e);\n            if (i < 0 || i == 1 / 0) throw RangeError(\"Count can't be negative\");\n            for (; i > 0;\n                   (i >>>= 1) && (t += t)) 1 & i && (n += t);\n            return n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(29),\n            o = n(103),\n            i = n(172),\n            a = \"\".startsWith;\n        r(r.P + r.F * n(173)(\"startsWith\"), \"String\", {\n            startsWith: function(e) {\n                var t = i(this, e, \"startsWith\"),\n                    n = o(Math.min(arguments.length > 1 ? arguments[1] : void 0, t.length)),\n                    r = String(e);\n                return a ? a.call(t, r, n) : t.slice(n, n + r.length) === r\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"anchor\", function(e) {\n            return function(t) {\n                return e(this, \"a\", \"name\", t)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"big\", function(e) {\n            return function() {\n                return e(this, \"big\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"blink\", function(e) {\n            return function() {\n                return e(this, \"blink\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"bold\", function(e) {\n            return function() {\n                return e(this, \"b\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"fixed\", function(e) {\n            return function() {\n                return e(this, \"tt\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"fontcolor\", function(e) {\n            return function(t) {\n                return e(this, \"font\", \"color\", t)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"fontsize\", function(e) {\n            return function(t) {\n                return e(this, \"font\", \"size\", t)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"italics\", function(e) {\n            return function() {\n                return e(this, \"i\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"link\", function(e) {\n            return function(t) {\n                return e(this, \"a\", \"href\", t)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"small\", function(e) {\n            return function() {\n                return e(this, \"small\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"strike\", function(e) {\n            return function() {\n                return e(this, \"strike\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"sub\", function(e) {\n            return function() {\n                return e(this, \"sub\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        n(30)(\"sup\", function(e) {\n            return function() {\n                return e(this, \"sup\", \"\", \"\")\n            }\n        })\n    }, function(e, t, n) {\n        n(123)(\"match\", 1, function(e, t, n) {\n            return [function(n) {\n                \"use strict\";\n                var r = e(this),\n                    o = void 0 == n ? void 0 : n[t];\n                return void 0 !== o ? o.call(n, r) : new RegExp(n)[t](String(r))\n            }, n]\n        })\n    }, function(e, t, n) {\n        n(123)(\"replace\", 2, function(e, t, n) {\n            return [function(r, o) {\n                \"use strict\";\n                var i = e(this),\n                    a = void 0 == r ? void 0 : r[t];\n                return void 0 !== a ? a.call(r, i, o) : n.call(String(i), r, o)\n            }, n]\n        })\n    }, function(e, t, n) {\n        n(123)(\"search\", 1, function(e, t, n) {\n            return [function(n) {\n                \"use strict\";\n                var r = e(this),\n                    o = void 0 == n ? void 0 : n[t];\n                return void 0 !== o ? o.call(n, r) : new RegExp(n)[t](String(r))\n            }, n]\n        })\n    }, function(e, t, n) {\n        n(123)(\"split\", 2, function(e, t, r) {\n            \"use strict\";\n            var o = n(256),\n                i = r,\n                a = [].push;\n            if (\"c\" == \"abbc\".split(/(b)*/)[1] || 4 != \"test\".split(/(?:)/, -1).length || 2 != \"ab\".split(/(?:ab)*/).length || 4 != \".\".split(/(.?)(.?)/).length || \".\".split(/()()/).length > 1 || \"\".split(/.?/).length) {\n                var u = void 0 === /()??/.exec(\"\")[1];\n                r = function(e, t) {\n                    var n = String(this);\n                    if (void 0 === e && 0 === t) return [];\n                    if (!o(e)) return i.call(n, e, t);\n                    var r, s, l, c, f, p = [],\n                        d = (e.ignoreCase ? \"i\" : \"\") + (e.multiline ? \"m\" : \"\") + (e.unicode ? \"u\" : \"\") + (e.sticky ? \"y\" : \"\"),\n                        h = 0,\n                        v = void 0 === t ? 4294967295 : t >>> 0,\n                        m = new RegExp(e.source, d + \"g\");\n                    for (u || (r = new RegExp(\"^\" + m.source + \"$(?!\\\\s)\", d));\n                         (s = m.exec(n)) && !((l = s.index + s[0].length) > h && (p.push(n.slice(h, s.index)), !u && s.length > 1 && s[0].replace(r, function() {\n                             for (f = 1; f < arguments.length - 2; f++) void 0 === arguments[f] && (s[f] = void 0)\n                         }), s.length > 1 && s.index < n.length && a.apply(p, s.slice(1)), c = s[0].length, h = l, p.length >= v));) m.lastIndex === s.index && m.lastIndex++;\n                    return h === n.length ? !c && m.test(\"\") || p.push(\"\") : p.push(n.slice(h)), p.length > v ? p.slice(0, v) : p\n                }\n            } else \"0\".split(void 0, 0).length && (r = function(e, t) {\n                return void 0 === e && 0 === t ? [] : i.call(this, e, t)\n            });\n            return [function(n, o) {\n                var i = e(this),\n                    a = void 0 == n ? void 0 : n[t];\n                return void 0 !== a ? a.call(n, i, o) : r.call(String(i), n, o)\n            }, r]\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = p(n(41)),\n            o = p(n(42)),\n            i = p(n(45)),\n            a = p(n(178)),\n            u = p(n(530)),\n            s = p(n(32)),\n            l = p(n(724)),\n            c = function(e) {\n                if (e && e.__esModule) return e;\n                var t = {};\n                if (null != e)\n                    for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n                return t.default = e, t\n            }(n(444)),\n            f = n(10);\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = !1,\n            h = \"gd265601d\",\n            v = \"3.18.2\",\n            m = \"banjo\",\n            g = \"Sat, 25 Aug 2018 07:52:26 GMT\";\n        e.exports = function(e) {\n            s.default.versions = s.default.versions || {}, s.default.versions.swaggerUi = {\n                version: v,\n                gitRevision: h,\n                gitDirty: d,\n                buildTimestamp: g,\n                machine: m\n            };\n            var t = {\n                    dom_id: null,\n                    domNode: null,\n                    spec: {},\n                    url: \"\",\n                    urls: null,\n                    layout: \"BaseLayout\",\n                    docExpansion: \"list\",\n                    maxDisplayedTags: null,\n                    filter: null,\n                    validatorUrl: \"https://online.swagger.io/validator\",\n                    configs: {},\n                    custom: {},\n                    displayOperationId: !1,\n                    displayRequestDuration: !1,\n                    deepLinking: !1,\n                    requestInterceptor: function(e) {\n                        return e\n                    },\n                    responseInterceptor: function(e) {\n                        return e\n                    },\n                    showMutatedRequest: !0,\n                    defaultModelRendering: \"example\",\n                    defaultModelExpandDepth: 1,\n                    defaultModelsExpandDepth: 1,\n                    showExtensions: !1,\n                    showCommonExtensions: !1,\n                    supportedSubmitMethods: [\"get\", \"put\", \"post\", \"delete\", \"options\", \"head\", \"patch\", \"trace\"],\n                    presets: [l.default],\n                    plugins: [],\n                    initialState: {},\n                    fn: {},\n                    components: {}\n                },\n                n = (0, f.parseSearch)(),\n                c = e.domNode;\n            delete e.domNode;\n            var p = (0, a.default)({}, t, e, n),\n                y = {\n                    system: {\n                        configs: p.configs\n                    },\n                    plugins: p.presets,\n                    state: (0, a.default)({\n                        layout: {\n                            layout: p.layout,\n                            filter: p.filter\n                        },\n                        spec: {\n                            spec: \"\",\n                            url: p.url\n                        }\n                    }, p.initialState)\n                };\n            if (p.initialState)\n                for (var b in p.initialState) p.initialState.hasOwnProperty(b) && void 0 === p.initialState[b] && delete y.state[b];\n            var _ = new u.default(y);\n            _.register([p.plugins, function() {\n                return {\n                    fn: p.fn,\n                    components: p.components,\n                    state: p.state\n                }\n            }]);\n            var w = _.getSystem(),\n                E = function(e) {\n                    var t = w.specSelectors.getLocalConfig ? w.specSelectors.getLocalConfig() : {},\n                        u = (0, a.default)({}, t, p, e || {}, n);\n                    if (c && (u.domNode = c), _.setConfigs(u), w.configsActions.loaded(), null !== e && (!n.url && \"object\" === (0, i.default)(u.spec) && (0, o.default)(u.spec).length ? (w.specActions.updateUrl(\"\"), w.specActions.updateLoadingStatus(\"success\"), w.specActions.updateSpec((0, r.default)(u.spec))) : w.specActions.download && u.url && (w.specActions.updateUrl(u.url), w.specActions.download(u.url))), u.domNode) w.render(u.domNode, \"App\");\n                    else if (u.dom_id) {\n                        var s = document.querySelector(u.dom_id);\n                        w.render(s, \"App\")\n                    } else null === u.dom_id || null === u.domNode || console.error(\"Skipped rendering: no `dom_id` or `domNode` was specified\");\n                    return w\n                },\n                x = n.config || p.configUrl;\n            return x && w.specActions && w.specActions.getConfigByUrl && (!w.specActions.getConfigByUrl || w.specActions.getConfigByUrl({\n                url: x,\n                loadRemoteConfig: !0,\n                requestInterceptor: p.requestInterceptor,\n                responseInterceptor: p.responseInterceptor\n            }, E)) ? (w.specActions.getConfigByUrl(x, E), w) : E()\n        }, e.exports.presets = {\n            apis: l.default\n        }, e.exports.plugins = c\n    }, function(e, t, n) {\n        var r = n(15),\n            o = r.JSON || (r.JSON = {\n                stringify: JSON.stringify\n            });\n        e.exports = function(e) {\n            return o.stringify.apply(o, arguments)\n        }\n    }, function(e, t, n) {\n        n(518), e.exports = n(15).Object.keys\n    }, function(e, t, n) {\n        var r = n(72),\n            o = n(96);\n        n(257)(\"keys\", function() {\n            return function(e) {\n                return o(r(e))\n            }\n        })\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(520),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(98), n(92), e.exports = n(174).f(\"iterator\")\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(522),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(523), n(177), n(526), n(527), e.exports = n(15).Symbol\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(21),\n            o = n(52),\n            i = n(44),\n            a = n(20),\n            u = n(158),\n            s = n(124).KEY,\n            l = n(51),\n            c = n(162),\n            f = n(97),\n            p = n(116),\n            d = n(19),\n            h = n(174),\n            v = n(175),\n            m = n(524),\n            g = n(258),\n            y = n(36),\n            b = n(28),\n            _ = n(71),\n            w = n(157),\n            E = n(95),\n            x = n(159),\n            S = n(525),\n            C = n(260),\n            k = n(40),\n            A = n(96),\n            O = C.f,\n            P = k.f,\n            T = S.f,\n            M = r.Symbol,\n            I = r.JSON,\n            j = I && I.stringify,\n            N = d(\"_hidden\"),\n            R = d(\"toPrimitive\"),\n            D = {}.propertyIsEnumerable,\n            L = c(\"symbol-registry\"),\n            U = c(\"symbols\"),\n            q = c(\"op-symbols\"),\n            F = Object.prototype,\n            z = \"function\" == typeof M,\n            B = r.QObject,\n            V = !B || !B.prototype || !B.prototype.findChild,\n            H = i && l(function() {\n                return 7 != x(P({}, \"a\", {\n                    get: function() {\n                        return P(this, \"a\", {\n                            value: 7\n                        }).a\n                    }\n                })).a\n            }) ? function(e, t, n) {\n                var r = O(F, t);\n                r && delete F[t], P(e, t, n), r && e !== F && P(F, t, r)\n            } : P,\n            W = function(e) {\n                var t = U[e] = x(M.prototype);\n                return t._k = e, t\n            },\n            J = z && \"symbol\" == typeof M.iterator ? function(e) {\n                return \"symbol\" == typeof e\n            } : function(e) {\n                return e instanceof M\n            },\n            Y = function(e, t, n) {\n                return e === F && Y(q, t, n), y(e), t = w(t, !0), y(n), o(U, t) ? (n.enumerable ? (o(e, N) && e[N][t] && (e[N][t] = !1), n = x(n, {\n                    enumerable: E(0, !1)\n                })) : (o(e, N) || P(e, N, E(1, {})), e[N][t] = !0), H(e, t, n)) : P(e, t, n)\n            },\n            K = function(e, t) {\n                y(e);\n                for (var n, r = m(t = _(t)), o = 0, i = r.length; i > o;) Y(e, n = r[o++], t[n]);\n                return e\n            },\n            G = function(e) {\n                var t = D.call(this, e = w(e, !0));\n                return !(this === F && o(U, e) && !o(q, e)) && (!(t || !o(this, e) || !o(U, e) || o(this, N) && this[N][e]) || t)\n            },\n            $ = function(e, t) {\n                if (e = _(e), t = w(t, !0), e !== F || !o(U, t) || o(q, t)) {\n                    var n = O(e, t);\n                    return !n || !o(U, t) || o(e, N) && e[N][t] || (n.enumerable = !0), n\n                }\n            },\n            Z = function(e) {\n                for (var t, n = T(_(e)), r = [], i = 0; n.length > i;) o(U, t = n[i++]) || t == N || t == s || r.push(t);\n                return r\n            },\n            X = function(e) {\n                for (var t, n = e === F, r = T(n ? q : _(e)), i = [], a = 0; r.length > a;) !o(U, t = r[a++]) || n && !o(F, t) || i.push(U[t]);\n                return i\n            };\n        z || (u((M = function() {\n            if (this instanceof M) throw TypeError(\"Symbol is not a constructor!\");\n            var e = p(arguments.length > 0 ? arguments[0] : void 0),\n                t = function(n) {\n                    this === F && t.call(q, n), o(this, N) && o(this[N], e) && (this[N][e] = !1), H(this, e, E(1, n))\n                };\n            return i && V && H(F, e, {\n                configurable: !0,\n                set: t\n            }), W(e)\n        }).prototype, \"toString\", function() {\n            return this._k\n        }), C.f = $, k.f = Y, n(259).f = S.f = Z, n(125).f = G, n(176).f = X, i && !n(114) && u(F, \"propertyIsEnumerable\", G, !0), h.f = function(e) {\n            return W(d(e))\n        }), a(a.G + a.W + a.F * !z, {\n            Symbol: M\n        });\n        for (var Q = \"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"), ee = 0; Q.length > ee;) d(Q[ee++]);\n        for (var te = A(d.store), ne = 0; te.length > ne;) v(te[ne++]);\n        a(a.S + a.F * !z, \"Symbol\", {\n            for: function(e) {\n                return o(L, e += \"\") ? L[e] : L[e] = M(e)\n            },\n            keyFor: function(e) {\n                if (!J(e)) throw TypeError(e + \" is not a symbol!\");\n                for (var t in L)\n                    if (L[t] === e) return t\n            },\n            useSetter: function() {\n                V = !0\n            },\n            useSimple: function() {\n                V = !1\n            }\n        }), a(a.S + a.F * !z, \"Object\", {\n            create: function(e, t) {\n                return void 0 === t ? x(e) : K(x(e), t)\n            },\n            defineProperty: Y,\n            defineProperties: K,\n            getOwnPropertyDescriptor: $,\n            getOwnPropertyNames: Z,\n            getOwnPropertySymbols: X\n        }), I && a(a.S + a.F * (!z || l(function() {\n            var e = M();\n            return \"[null]\" != j([e]) || \"{}\" != j({\n                a: e\n            }) || \"{}\" != j(Object(e))\n        })), \"JSON\", {\n            stringify: function(e) {\n                for (var t, n, r = [e], o = 1; arguments.length > o;) r.push(arguments[o++]);\n                if (n = t = r[1], (b(t) || void 0 !== e) && !J(e)) return g(t) || (t = function(e, t) {\n                    if (\"function\" == typeof n && (t = n.call(this, e, t)), !J(t)) return t\n                }), r[1] = t, j.apply(I, r)\n            }\n        }), M.prototype[R] || n(50)(M.prototype, R, M.prototype.valueOf), f(M, \"Symbol\"), f(Math, \"Math\", !0), f(r.JSON, \"JSON\", !0)\n    }, function(e, t, n) {\n        var r = n(96),\n            o = n(176),\n            i = n(125);\n        e.exports = function(e) {\n            var t = r(e),\n                n = o.f;\n            if (n)\n                for (var a, u = n(e), s = i.f, l = 0; u.length > l;) s.call(e, a = u[l++]) && t.push(a);\n            return t\n        }\n    }, function(e, t, n) {\n        var r = n(71),\n            o = n(259).f,\n            i = {}.toString,\n            a = \"object\" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [];\n        e.exports.f = function(e) {\n            return a && \"[object Window]\" == i.call(e) ? function(e) {\n                try {\n                    return o(e)\n                } catch (e) {\n                    return a.slice()\n                }\n            }(e) : o(r(e))\n        }\n    }, function(e, t, n) {\n        n(175)(\"asyncIterator\")\n    }, function(e, t, n) {\n        n(175)(\"observable\")\n    }, function(e, t, n) {\n        \"use strict\";\n        t.byteLength = function(e) {\n            var t = l(e),\n                n = t[0],\n                r = t[1];\n            return 3 * (n + r) / 4 - r\n        }, t.toByteArray = function(e) {\n            for (var t, n = l(e), r = n[0], a = n[1], u = new i(function(e, t, n) {\n                return 3 * (t + n) / 4 - n\n            }(0, r, a)), s = 0, c = a > 0 ? r - 4 : r, f = 0; f < c; f += 4) t = o[e.charCodeAt(f)] << 18 | o[e.charCodeAt(f + 1)] << 12 | o[e.charCodeAt(f + 2)] << 6 | o[e.charCodeAt(f + 3)], u[s++] = t >> 16 & 255, u[s++] = t >> 8 & 255, u[s++] = 255 & t;\n            2 === a && (t = o[e.charCodeAt(f)] << 2 | o[e.charCodeAt(f + 1)] >> 4, u[s++] = 255 & t);\n            1 === a && (t = o[e.charCodeAt(f)] << 10 | o[e.charCodeAt(f + 1)] << 4 | o[e.charCodeAt(f + 2)] >> 2, u[s++] = t >> 8 & 255, u[s++] = 255 & t);\n            return u\n        }, t.fromByteArray = function(e) {\n            for (var t, n = e.length, o = n % 3, i = [], a = 0, u = n - o; a < u; a += 16383) i.push(c(e, a, a + 16383 > u ? u : a + 16383));\n            1 === o ? (t = e[n - 1], i.push(r[t >> 2] + r[t << 4 & 63] + \"==\")) : 2 === o && (t = (e[n - 2] << 8) + e[n - 1], i.push(r[t >> 10] + r[t >> 4 & 63] + r[t << 2 & 63] + \"=\"));\n            return i.join(\"\")\n        };\n        for (var r = [], o = [], i = \"undefined\" != typeof Uint8Array ? Uint8Array : Array, a = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\", u = 0, s = a.length; u < s; ++u) r[u] = a[u], o[a.charCodeAt(u)] = u;\n\n        function l(e) {\n            var t = e.length;\n            if (t % 4 > 0) throw new Error(\"Invalid string. Length must be a multiple of 4\");\n            var n = e.indexOf(\"=\");\n            return -1 === n && (n = t), [n, n === t ? 0 : 4 - n % 4]\n        }\n\n        function c(e, t, n) {\n            for (var o, i, a = [], u = t; u < n; u += 3) o = (e[u] << 16 & 16711680) + (e[u + 1] << 8 & 65280) + (255 & e[u + 2]), a.push(r[(i = o) >> 18 & 63] + r[i >> 12 & 63] + r[i >> 6 & 63] + r[63 & i]);\n            return a.join(\"\")\n        }\n        o[\"-\".charCodeAt(0)] = 62, o[\"_\".charCodeAt(0)] = 63\n    }, function(e, t) {\n        t.read = function(e, t, n, r, o) {\n            var i, a, u = 8 * o - r - 1,\n                s = (1 << u) - 1,\n                l = s >> 1,\n                c = -7,\n                f = n ? o - 1 : 0,\n                p = n ? -1 : 1,\n                d = e[t + f];\n            for (f += p, i = d & (1 << -c) - 1, d >>= -c, c += u; c > 0; i = 256 * i + e[t + f], f += p, c -= 8);\n            for (a = i & (1 << -c) - 1, i >>= -c, c += r; c > 0; a = 256 * a + e[t + f], f += p, c -= 8);\n            if (0 === i) i = 1 - l;\n            else {\n                if (i === s) return a ? NaN : 1 / 0 * (d ? -1 : 1);\n                a += Math.pow(2, r), i -= l\n            }\n            return (d ? -1 : 1) * a * Math.pow(2, i - r)\n        }, t.write = function(e, t, n, r, o, i) {\n            var a, u, s, l = 8 * i - o - 1,\n                c = (1 << l) - 1,\n                f = c >> 1,\n                p = 23 === o ? Math.pow(2, -24) - Math.pow(2, -77) : 0,\n                d = r ? 0 : i - 1,\n                h = r ? 1 : -1,\n                v = t < 0 || 0 === t && 1 / t < 0 ? 1 : 0;\n            for (t = Math.abs(t), isNaN(t) || t === 1 / 0 ? (u = isNaN(t) ? 1 : 0, a = c) : (a = Math.floor(Math.log(t) / Math.LN2), t * (s = Math.pow(2, -a)) < 1 && (a--, s *= 2), (t += a + f >= 1 ? p / s : p * Math.pow(2, 1 - f)) * s >= 2 && (a++, s /= 2), a + f >= c ? (u = 0, a = c) : a + f >= 1 ? (u = (t * s - 1) * Math.pow(2, o), a += f) : (u = t * Math.pow(2, f - 1) * Math.pow(2, o), a = 0)); o >= 8; e[n + d] = 255 & u, d += h, u /= 256, o -= 8);\n            for (a = a << o | u, l += o; l > 0; e[n + d] = 255 & a, d += h, a /= 256, l -= 8);\n            e[n + d - h] |= 128 * v\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = y(n(42)),\n            o = y(n(22)),\n            i = y(n(23)),\n            a = y(n(2)),\n            u = y(n(3)),\n            s = y(n(0)),\n            l = n(270),\n            c = n(7),\n            f = y(c),\n            p = y(n(178)),\n            d = n(563),\n            h = y(n(179)),\n            v = n(127),\n            m = y(n(32)),\n            g = n(10);\n\n        function y(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var b = function(e) {\n            return e\n        };\n        var _ = function() {\n            function e() {\n                var t, n, r, o = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};\n                (0, a.default)(this, e), (0, p.default)(this, {\n                    state: {},\n                    plugins: [],\n                    system: {\n                        configs: {},\n                        fn: {},\n                        components: {},\n                        rootInjects: {},\n                        statePlugins: {}\n                    },\n                    boundSystem: {},\n                    toolbox: {}\n                }, o), this.getSystem = this._getSystem.bind(this), this.store = (t = b, n = (0, c.fromJS)(this.state), r = this.getSystem, function(e, t, n) {\n                    var r = [(0, g.systemThunkMiddleware)(n)],\n                        o = m.default.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || l.compose;\n                    return (0, l.createStore)(e, t, o(l.applyMiddleware.apply(void 0, r)))\n                }(t, n, r)), this.buildSystem(!1), this.register(this.plugins)\n            }\n            return (0, u.default)(e, [{\n                key: \"getStore\",\n                value: function() {\n                    return this.store\n                }\n            }, {\n                key: \"register\",\n                value: function(e) {\n                    var t = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1],\n                        n = function e(t, n) {\n                            if ((0, g.isObject)(t) && !(0, g.isArray)(t)) return t;\n                            if ((0, g.isFunc)(t)) return e(t(n), n);\n                            if ((0, g.isArray)(t)) return t.map(function(t) {\n                                return e(t, n)\n                            }).reduce(w, {});\n                            return {}\n                        }(e, this.getSystem());\n                    w(this.system, n), t && this.buildSystem(),\n                    function e(t, n) {\n                        var r = this;\n                        var o = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},\n                            i = o.hasLoaded;\n                        var a = i;\n                        (0, g.isObject)(t) && !(0, g.isArray)(t) && \"function\" == typeof t.afterLoad && (a = !0, E(t.afterLoad).call(this, n));\n                        if ((0, g.isFunc)(t)) return e.call(this, t(n), n, {\n                            hasLoaded: a\n                        });\n                        if ((0, g.isArray)(t)) return t.map(function(t) {\n                            return e.call(r, t, n, {\n                                hasLoaded: a\n                            })\n                        });\n                        return a\n                    }.call(this.system, e, this.getSystem()) && this.buildSystem()\n                }\n            }, {\n                key: \"buildSystem\",\n                value: function() {\n                    var e = !(arguments.length > 0 && void 0 !== arguments[0]) || arguments[0],\n                        t = this.getStore().dispatch,\n                        n = this.getStore().getState;\n                    this.boundSystem = (0, i.default)({}, this.getRootInjects(), this.getWrappedAndBoundActions(t), this.getWrappedAndBoundSelectors(n, this.getSystem), this.getStateThunks(n), this.getFn(), this.getConfigs()), e && this.rebuildReducer()\n                }\n            }, {\n                key: \"_getSystem\",\n                value: function() {\n                    return this.boundSystem\n                }\n            }, {\n                key: \"getRootInjects\",\n                value: function() {\n                    return (0, i.default)({\n                        getSystem: this.getSystem,\n                        getStore: this.getStore.bind(this),\n                        getComponents: this.getComponents.bind(this),\n                        getState: this.getStore().getState,\n                        getConfigs: this._getConfigs.bind(this),\n                        Im: f.default,\n                        React: s.default\n                    }, this.system.rootInjects || {})\n                }\n            }, {\n                key: \"_getConfigs\",\n                value: function() {\n                    return this.system.configs\n                }\n            }, {\n                key: \"getConfigs\",\n                value: function() {\n                    return {\n                        configs: this.system.configs\n                    }\n                }\n            }, {\n                key: \"setConfigs\",\n                value: function(e) {\n                    this.system.configs = e\n                }\n            }, {\n                key: \"rebuildReducer\",\n                value: function() {\n                    var e, t, n;\n                    this.store.replaceReducer((n = this.system.statePlugins, e = (0, g.objMap)(n, function(e) {\n                        return e.reducers\n                    }), t = (0, r.default)(e).reduce(function(t, n) {\n                        var r;\n                        return t[n] = (r = e[n], function() {\n                            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : new c.Map,\n                                t = arguments[1];\n                            if (!r) return e;\n                            var n = r[t.type];\n                            if (n) {\n                                var o = E(n)(e, t);\n                                return null === o ? e : o\n                            }\n                            return e\n                        }), t\n                    }, {}), (0, r.default)(t).length ? (0, d.combineReducers)(t) : b))\n                }\n            }, {\n                key: \"getType\",\n                value: function(e) {\n                    var t = e[0].toUpperCase() + e.slice(1);\n                    return (0, g.objReduce)(this.system.statePlugins, function(n, r) {\n                        var i = n[e];\n                        if (i) return (0, o.default)({}, r + t, i)\n                    })\n                }\n            }, {\n                key: \"getSelectors\",\n                value: function() {\n                    return this.getType(\"selectors\")\n                }\n            }, {\n                key: \"getActions\",\n                value: function() {\n                    var e = this.getType(\"actions\");\n                    return (0, g.objMap)(e, function(e) {\n                        return (0, g.objReduce)(e, function(e, t) {\n                            if ((0, g.isFn)(e)) return (0, o.default)({}, t, e)\n                        })\n                    })\n                }\n            }, {\n                key: \"getWrappedAndBoundActions\",\n                value: function(e) {\n                    var t = this,\n                        n = this.getBoundActions(e);\n                    return (0, g.objMap)(n, function(e, n) {\n                        var r = t.system.statePlugins[n.slice(0, -7)].wrapActions;\n                        return r ? (0, g.objMap)(e, function(e, n) {\n                            var o = r[n];\n                            return o ? (Array.isArray(o) || (o = [o]), o.reduce(function(e, n) {\n                                var r = function() {\n                                    return n(e, t.getSystem()).apply(void 0, arguments)\n                                };\n                                if (!(0, g.isFn)(r)) throw new TypeError(\"wrapActions needs to return a function that returns a new function (ie the wrapped action)\");\n                                return E(r)\n                            }, e || Function.prototype)) : e\n                        }) : e\n                    })\n                }\n            }, {\n                key: \"getWrappedAndBoundSelectors\",\n                value: function(e, t) {\n                    var n = this,\n                        r = this.getBoundSelectors(e, t);\n                    return (0, g.objMap)(r, function(t, r) {\n                        var o = [r.slice(0, -9)],\n                            i = n.system.statePlugins[o].wrapSelectors;\n                        return i ? (0, g.objMap)(t, function(t, r) {\n                            var a = i[r];\n                            return a ? (Array.isArray(a) || (a = [a]), a.reduce(function(t, r) {\n                                var i = function() {\n                                    for (var i = arguments.length, a = Array(i), u = 0; u < i; u++) a[u] = arguments[u];\n                                    return r(t, n.getSystem()).apply(void 0, [e().getIn(o)].concat(a))\n                                };\n                                if (!(0, g.isFn)(i)) throw new TypeError(\"wrapSelector needs to return a function that returns a new function (ie the wrapped action)\");\n                                return i\n                            }, t || Function.prototype)) : t\n                        }) : t\n                    })\n                }\n            }, {\n                key: \"getStates\",\n                value: function(e) {\n                    return (0, r.default)(this.system.statePlugins).reduce(function(t, n) {\n                        return t[n] = e.get(n), t\n                    }, {})\n                }\n            }, {\n                key: \"getStateThunks\",\n                value: function(e) {\n                    return (0, r.default)(this.system.statePlugins).reduce(function(t, n) {\n                        return t[n] = function() {\n                            return e().get(n)\n                        }, t\n                    }, {})\n                }\n            }, {\n                key: \"getFn\",\n                value: function() {\n                    return {\n                        fn: this.system.fn\n                    }\n                }\n            }, {\n                key: \"getComponents\",\n                value: function(e) {\n                    var t = this,\n                        n = this.system.components[e];\n                    return Array.isArray(n) ? n.reduce(function(e, n) {\n                        return n(e, t.getSystem())\n                    }) : void 0 !== e ? this.system.components[e] : this.system.components\n                }\n            }, {\n                key: \"getBoundSelectors\",\n                value: function(e, t) {\n                    return (0, g.objMap)(this.getSelectors(), function(n, r) {\n                        var o = [r.slice(0, -9)];\n                        return (0, g.objMap)(n, function(n) {\n                            return function() {\n                                for (var r = arguments.length, i = Array(r), a = 0; a < r; a++) i[a] = arguments[a];\n                                var u = E(n).apply(null, [e().getIn(o)].concat(i));\n                                return \"function\" == typeof u && (u = E(u)(t())), u\n                            }\n                        })\n                    })\n                }\n            }, {\n                key: \"getBoundActions\",\n                value: function(e) {\n                    e = e || this.getStore().dispatch;\n                    var t = this.getActions();\n                    return (0, g.objMap)(t, function(t) {\n                        return (0, l.bindActionCreators)(function e(t) {\n                            return \"function\" != typeof t ? (0, g.objMap)(t, function(t) {\n                                return e(t)\n                            }) : function() {\n                                var e = null;\n                                try {\n                                    e = t.apply(void 0, arguments)\n                                } catch (t) {\n                                    e = {\n                                        type: v.NEW_THROWN_ERR,\n                                        error: !0,\n                                        payload: (0, h.default)(t)\n                                    }\n                                } finally {\n                                    return e\n                                }\n                            }\n                        }(t), e)\n                    })\n                }\n            }, {\n                key: \"getMapStateToProps\",\n                value: function() {\n                    var e = this;\n                    return function() {\n                        return (0, i.default)({}, e.getSystem())\n                    }\n                }\n            }, {\n                key: \"getMapDispatchToProps\",\n                value: function(e) {\n                    var t = this;\n                    return function(n) {\n                        return (0, p.default)({}, t.getWrappedAndBoundActions(n), t.getFn(), e)\n                    }\n                }\n            }]), e\n        }();\n\n        function w() {\n            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\n            if (!(0, g.isObject)(e)) return {};\n            if (!(0, g.isObject)(t)) return e;\n            t.wrapComponents && ((0, g.objMap)(t.wrapComponents, function(n, r) {\n                var o = e.components && e.components[r];\n                o && Array.isArray(o) ? (e.components[r] = o.concat([n]), delete t.wrapComponents[r]) : o && (e.components[r] = [o, n], delete t.wrapComponents[r])\n            }), (0, r.default)(t.wrapComponents).length || delete t.wrapComponents);\n            var n = e.statePlugins;\n            if ((0, g.isObject)(n))\n                for (var o in n) {\n                    var i = n[o];\n                    if ((0, g.isObject)(i) && (0, g.isObject)(i.wrapActions)) {\n                        var a = i.wrapActions;\n                        for (var u in a) {\n                            var s = a[u];\n                            Array.isArray(s) || (s = [s], a[u] = s), t && t.statePlugins && t.statePlugins[o] && t.statePlugins[o].wrapActions && t.statePlugins[o].wrapActions[u] && (t.statePlugins[o].wrapActions[u] = a[u].concat(t.statePlugins[o].wrapActions[u]))\n                        }\n                    }\n                }\n            return (0, p.default)(e, t)\n        }\n\n        function E(e) {\n            var t = (arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}).logErrors,\n                n = void 0 === t || t;\n            return \"function\" != typeof e ? e : function() {\n                try {\n                    for (var t = arguments.length, r = Array(t), o = 0; o < t; o++) r[o] = arguments[o];\n                    return e.call.apply(e, [this].concat(r))\n                } catch (e) {\n                    return n && console.error(e), null\n                }\n            }\n        }\n        t.default = _\n    }, function(e, t, n) {\n        n(532);\n        var r = n(15).Object;\n        e.exports = function(e, t, n) {\n            return r.defineProperty(e, t, n)\n        }\n    }, function(e, t, n) {\n        var r = n(20);\n        r(r.S + r.F * !n(44), \"Object\", {\n            defineProperty: n(40).f\n        })\n    }, function(e, t, n) {\n        n(534), e.exports = n(15).Object.assign\n    }, function(e, t, n) {\n        var r = n(20);\n        r(r.S + r.F, \"Object\", {\n            assign: n(263)\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = function() {};\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(537),\n            o = n(76),\n            i = n(34),\n            a = n(538),\n            u = r.twoArgumentPooler,\n            s = r.fourArgumentPooler,\n            l = /\\/+/g;\n\n        function c(e) {\n            return (\"\" + e).replace(l, \"$&/\")\n        }\n\n        function f(e, t) {\n            this.func = e, this.context = t, this.count = 0\n        }\n\n        function p(e, t, n) {\n            var r = e.func,\n                o = e.context;\n            r.call(o, t, e.count++)\n        }\n\n        function d(e, t, n, r) {\n            this.result = e, this.keyPrefix = t, this.func = n, this.context = r, this.count = 0\n        }\n\n        function h(e, t, n) {\n            var r = e.result,\n                a = e.keyPrefix,\n                u = e.func,\n                s = e.context,\n                l = u.call(s, t, e.count++);\n            Array.isArray(l) ? v(l, r, n, i.thatReturnsArgument) : null != l && (o.isValidElement(l) && (l = o.cloneAndReplaceKey(l, a + (!l.key || t && t.key === l.key ? \"\" : c(l.key) + \"/\") + n)), r.push(l))\n        }\n\n        function v(e, t, n, r, o) {\n            var i = \"\";\n            null != n && (i = c(n) + \"/\");\n            var u = d.getPooled(t, i, r, o);\n            a(e, h, u), d.release(u)\n        }\n\n        function m(e, t, n) {\n            return null\n        }\n        f.prototype.destructor = function() {\n            this.func = null, this.context = null, this.count = 0\n        }, r.addPoolingTo(f, u), d.prototype.destructor = function() {\n            this.result = null, this.keyPrefix = null, this.func = null, this.context = null, this.count = 0\n        }, r.addPoolingTo(d, s);\n        var g = {\n            forEach: function(e, t, n) {\n                if (null == e) return e;\n                var r = f.getPooled(t, n);\n                a(e, p, r), f.release(r)\n            },\n            map: function(e, t, n) {\n                if (null == e) return e;\n                var r = [];\n                return v(e, r, null, t, n), r\n            },\n            mapIntoWithKeyPrefixInternal: v,\n            count: function(e, t) {\n                return a(e, m, null)\n            },\n            toArray: function(e) {\n                var t = [];\n                return v(e, t, null, i.thatReturnsArgument), t\n            }\n        };\n        e.exports = g\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(104),\n            o = (n(8), function(e) {\n                if (this.instancePool.length) {\n                    var t = this.instancePool.pop();\n                    return this.call(t, e), t\n                }\n                return new this(e)\n            }),\n            i = function(e) {\n                e instanceof this || r(\"25\"), e.destructor(), this.instancePool.length < this.poolSize && this.instancePool.push(e)\n            },\n            a = o,\n            u = {\n                addPoolingTo: function(e, t) {\n                    var n = e;\n                    return n.instancePool = [], n.getPooled = t || a, n.poolSize || (n.poolSize = 10), n.release = i, n\n                },\n                oneArgumentPooler: o,\n                twoArgumentPooler: function(e, t) {\n                    if (this.instancePool.length) {\n                        var n = this.instancePool.pop();\n                        return this.call(n, e, t), n\n                    }\n                    return new this(e, t)\n                },\n                threeArgumentPooler: function(e, t, n) {\n                    if (this.instancePool.length) {\n                        var r = this.instancePool.pop();\n                        return this.call(r, e, t, n), r\n                    }\n                    return new this(e, t, n)\n                },\n                fourArgumentPooler: function(e, t, n, r) {\n                    if (this.instancePool.length) {\n                        var o = this.instancePool.pop();\n                        return this.call(o, e, t, n, r), o\n                    }\n                    return new this(e, t, n, r)\n                }\n            };\n        e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(104),\n            o = (n(46), n(267)),\n            i = n(539),\n            a = (n(8), n(540)),\n            u = (n(9), \".\"),\n            s = \":\";\n\n        function l(e, t) {\n            return e && \"object\" == typeof e && null != e.key ? a.escape(e.key) : t.toString(36)\n        }\n        e.exports = function(e, t, n) {\n            return null == e ? 0 : function e(t, n, c, f) {\n                var p, d = typeof t;\n                if (\"undefined\" !== d && \"boolean\" !== d || (t = null), null === t || \"string\" === d || \"number\" === d || \"object\" === d && t.$$typeof === o) return c(f, t, \"\" === n ? u + l(t, 0) : n), 1;\n                var h = 0,\n                    v = \"\" === n ? u : n + s;\n                if (Array.isArray(t))\n                    for (var m = 0; m < t.length; m++) h += e(p = t[m], v + l(p, m), c, f);\n                else {\n                    var g = i(t);\n                    if (g) {\n                        var y, b = g.call(t);\n                        if (g !== t.entries)\n                            for (var _ = 0; !(y = b.next()).done;) h += e(p = y.value, v + l(p, _++), c, f);\n                        else\n                            for (; !(y = b.next()).done;) {\n                                var w = y.value;\n                                w && (h += e(p = w[1], v + a.escape(w[0]) + s + l(p, 0), c, f))\n                            }\n                    } else if (\"object\" === d) {\n                        var E = \"\",\n                            x = String(t);\n                        r(\"31\", \"[object Object]\" === x ? \"object with keys {\" + Object.keys(t).join(\", \") + \"}\" : x, E)\n                    }\n                }\n                return h\n            }(e, \"\", t, n)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && Symbol.iterator,\n            o = \"@@iterator\";\n        e.exports = function(e) {\n            var t = e && (r && e[r] || e[o]);\n            if (\"function\" == typeof t) return t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            escape: function(e) {\n                var t = {\n                    \"=\": \"=0\",\n                    \":\": \"=2\"\n                };\n                return \"$\" + (\"\" + e).replace(/[=:]/g, function(e) {\n                    return t[e]\n                })\n            },\n            unescape: function(e) {\n                var t = {\n                    \"=0\": \"=\",\n                    \"=2\": \":\"\n                };\n                return (\"\" + (\".\" === e[0] && \"$\" === e[1] ? e.substring(2) : e.substring(1))).replace(/(=0|=2)/g, function(e) {\n                    return t[e]\n                })\n            }\n        };\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(76).createFactory,\n            o = {\n                a: r(\"a\"),\n                abbr: r(\"abbr\"),\n                address: r(\"address\"),\n                area: r(\"area\"),\n                article: r(\"article\"),\n                aside: r(\"aside\"),\n                audio: r(\"audio\"),\n                b: r(\"b\"),\n                base: r(\"base\"),\n                bdi: r(\"bdi\"),\n                bdo: r(\"bdo\"),\n                big: r(\"big\"),\n                blockquote: r(\"blockquote\"),\n                body: r(\"body\"),\n                br: r(\"br\"),\n                button: r(\"button\"),\n                canvas: r(\"canvas\"),\n                caption: r(\"caption\"),\n                cite: r(\"cite\"),\n                code: r(\"code\"),\n                col: r(\"col\"),\n                colgroup: r(\"colgroup\"),\n                data: r(\"data\"),\n                datalist: r(\"datalist\"),\n                dd: r(\"dd\"),\n                del: r(\"del\"),\n                details: r(\"details\"),\n                dfn: r(\"dfn\"),\n                dialog: r(\"dialog\"),\n                div: r(\"div\"),\n                dl: r(\"dl\"),\n                dt: r(\"dt\"),\n                em: r(\"em\"),\n                embed: r(\"embed\"),\n                fieldset: r(\"fieldset\"),\n                figcaption: r(\"figcaption\"),\n                figure: r(\"figure\"),\n                footer: r(\"footer\"),\n                form: r(\"form\"),\n                h1: r(\"h1\"),\n                h2: r(\"h2\"),\n                h3: r(\"h3\"),\n                h4: r(\"h4\"),\n                h5: r(\"h5\"),\n                h6: r(\"h6\"),\n                head: r(\"head\"),\n                header: r(\"header\"),\n                hgroup: r(\"hgroup\"),\n                hr: r(\"hr\"),\n                html: r(\"html\"),\n                i: r(\"i\"),\n                iframe: r(\"iframe\"),\n                img: r(\"img\"),\n                input: r(\"input\"),\n                ins: r(\"ins\"),\n                kbd: r(\"kbd\"),\n                keygen: r(\"keygen\"),\n                label: r(\"label\"),\n                legend: r(\"legend\"),\n                li: r(\"li\"),\n                link: r(\"link\"),\n                main: r(\"main\"),\n                map: r(\"map\"),\n                mark: r(\"mark\"),\n                menu: r(\"menu\"),\n                menuitem: r(\"menuitem\"),\n                meta: r(\"meta\"),\n                meter: r(\"meter\"),\n                nav: r(\"nav\"),\n                noscript: r(\"noscript\"),\n                object: r(\"object\"),\n                ol: r(\"ol\"),\n                optgroup: r(\"optgroup\"),\n                option: r(\"option\"),\n                output: r(\"output\"),\n                p: r(\"p\"),\n                param: r(\"param\"),\n                picture: r(\"picture\"),\n                pre: r(\"pre\"),\n                progress: r(\"progress\"),\n                q: r(\"q\"),\n                rp: r(\"rp\"),\n                rt: r(\"rt\"),\n                ruby: r(\"ruby\"),\n                s: r(\"s\"),\n                samp: r(\"samp\"),\n                script: r(\"script\"),\n                section: r(\"section\"),\n                select: r(\"select\"),\n                small: r(\"small\"),\n                source: r(\"source\"),\n                span: r(\"span\"),\n                strong: r(\"strong\"),\n                style: r(\"style\"),\n                sub: r(\"sub\"),\n                summary: r(\"summary\"),\n                sup: r(\"sup\"),\n                table: r(\"table\"),\n                tbody: r(\"tbody\"),\n                td: r(\"td\"),\n                textarea: r(\"textarea\"),\n                tfoot: r(\"tfoot\"),\n                th: r(\"th\"),\n                thead: r(\"thead\"),\n                time: r(\"time\"),\n                title: r(\"title\"),\n                tr: r(\"tr\"),\n                track: r(\"track\"),\n                u: r(\"u\"),\n                ul: r(\"ul\"),\n                var: r(\"var\"),\n                video: r(\"video\"),\n                wbr: r(\"wbr\"),\n                circle: r(\"circle\"),\n                clipPath: r(\"clipPath\"),\n                defs: r(\"defs\"),\n                ellipse: r(\"ellipse\"),\n                g: r(\"g\"),\n                image: r(\"image\"),\n                line: r(\"line\"),\n                linearGradient: r(\"linearGradient\"),\n                mask: r(\"mask\"),\n                path: r(\"path\"),\n                pattern: r(\"pattern\"),\n                polygon: r(\"polygon\"),\n                polyline: r(\"polyline\"),\n                radialGradient: r(\"radialGradient\"),\n                rect: r(\"rect\"),\n                stop: r(\"stop\"),\n                svg: r(\"svg\"),\n                text: r(\"text\"),\n                tspan: r(\"tspan\")\n            };\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(76).isValidElement,\n            o = n(268);\n        e.exports = o(r)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(34),\n            o = n(8),\n            i = n(9),\n            a = n(13),\n            u = n(269),\n            s = n(544);\n        e.exports = function(e, t) {\n            var n = \"function\" == typeof Symbol && Symbol.iterator,\n                l = \"@@iterator\";\n            var c = \"<<anonymous>>\",\n                f = {\n                    array: v(\"array\"),\n                    bool: v(\"boolean\"),\n                    func: v(\"function\"),\n                    number: v(\"number\"),\n                    object: v(\"object\"),\n                    string: v(\"string\"),\n                    symbol: v(\"symbol\"),\n                    any: h(r.thatReturnsNull),\n                    arrayOf: function(e) {\n                        return h(function(t, n, r, o, i) {\n                            if (\"function\" != typeof e) return new d(\"Property `\" + i + \"` of component `\" + r + \"` has invalid PropType notation inside arrayOf.\");\n                            var a = t[n];\n                            if (!Array.isArray(a)) {\n                                var s = g(a);\n                                return new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + s + \"` supplied to `\" + r + \"`, expected an array.\")\n                            }\n                            for (var l = 0; l < a.length; l++) {\n                                var c = e(a, l, r, o, i + \"[\" + l + \"]\", u);\n                                if (c instanceof Error) return c\n                            }\n                            return null\n                        })\n                    },\n                    element: function() {\n                        return h(function(t, n, r, o, i) {\n                            var a = t[n];\n                            if (!e(a)) {\n                                var u = g(a);\n                                return new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + u + \"` supplied to `\" + r + \"`, expected a single ReactElement.\")\n                            }\n                            return null\n                        })\n                    }(),\n                    instanceOf: function(e) {\n                        return h(function(t, n, r, o, i) {\n                            if (!(t[n] instanceof e)) {\n                                var a = e.name || c,\n                                    u = function(e) {\n                                        if (!e.constructor || !e.constructor.name) return c;\n                                        return e.constructor.name\n                                    }(t[n]);\n                                return new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + u + \"` supplied to `\" + r + \"`, expected instance of `\" + a + \"`.\")\n                            }\n                            return null\n                        })\n                    },\n                    node: function() {\n                        return h(function(e, t, n, r, o) {\n                            if (!m(e[t])) return new d(\"Invalid \" + r + \" `\" + o + \"` supplied to `\" + n + \"`, expected a ReactNode.\");\n                            return null\n                        })\n                    }(),\n                    objectOf: function(e) {\n                        return h(function(t, n, r, o, i) {\n                            if (\"function\" != typeof e) return new d(\"Property `\" + i + \"` of component `\" + r + \"` has invalid PropType notation inside objectOf.\");\n                            var a = t[n],\n                                s = g(a);\n                            if (\"object\" !== s) return new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + s + \"` supplied to `\" + r + \"`, expected an object.\");\n                            for (var l in a)\n                                if (a.hasOwnProperty(l)) {\n                                    var c = e(a, l, r, o, i + \".\" + l, u);\n                                    if (c instanceof Error) return c\n                                }\n                            return null\n                        })\n                    },\n                    oneOf: function(e) {\n                        if (!Array.isArray(e)) return r.thatReturnsNull;\n                        return h(function(t, n, r, o, i) {\n                            for (var a = t[n], u = 0; u < e.length; u++)\n                                if (p(a, e[u])) return null;\n                            var s = JSON.stringify(e);\n                            return new d(\"Invalid \" + o + \" `\" + i + \"` of value `\" + a + \"` supplied to `\" + r + \"`, expected one of \" + s + \".\")\n                        })\n                    },\n                    oneOfType: function(e) {\n                        if (!Array.isArray(e)) return r.thatReturnsNull;\n                        for (var t = 0; t < e.length; t++) {\n                            var n = e[t];\n                            if (\"function\" != typeof n) return i(!1, \"Invalid argument supplied to oneOfType. Expected an array of check functions, but received %s at index %s.\", b(n), t), r.thatReturnsNull\n                        }\n                        return h(function(t, n, r, o, i) {\n                            for (var a = 0; a < e.length; a++) {\n                                var s = e[a];\n                                if (null == s(t, n, r, o, i, u)) return null\n                            }\n                            return new d(\"Invalid \" + o + \" `\" + i + \"` supplied to `\" + r + \"`.\")\n                        })\n                    },\n                    shape: function(e) {\n                        return h(function(t, n, r, o, i) {\n                            var a = t[n],\n                                s = g(a);\n                            if (\"object\" !== s) return new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + s + \"` supplied to `\" + r + \"`, expected `object`.\");\n                            for (var l in e) {\n                                var c = e[l];\n                                if (c) {\n                                    var f = c(a, l, r, o, i + \".\" + l, u);\n                                    if (f) return f\n                                }\n                            }\n                            return null\n                        })\n                    },\n                    exact: function(e) {\n                        return h(function(t, n, r, o, i) {\n                            var s = t[n],\n                                l = g(s);\n                            if (\"object\" !== l) return new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + l + \"` supplied to `\" + r + \"`, expected `object`.\");\n                            var c = a({}, t[n], e);\n                            for (var f in c) {\n                                var p = e[f];\n                                if (!p) return new d(\"Invalid \" + o + \" `\" + i + \"` key `\" + f + \"` supplied to `\" + r + \"`.\\nBad object: \" + JSON.stringify(t[n], null, \"  \") + \"\\nValid keys: \" + JSON.stringify(Object.keys(e), null, \"  \"));\n                                var h = p(s, f, r, o, i + \".\" + f, u);\n                                if (h) return h\n                            }\n                            return null\n                        })\n                    }\n                };\n\n            function p(e, t) {\n                return e === t ? 0 !== e || 1 / e == 1 / t : e != e && t != t\n            }\n\n            function d(e) {\n                this.message = e, this.stack = \"\"\n            }\n\n            function h(e) {\n                function n(n, r, i, a, s, l, f) {\n                    (a = a || c, l = l || i, f !== u) && (t && o(!1, \"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types\"));\n                    return null == r[i] ? n ? null === r[i] ? new d(\"The \" + s + \" `\" + l + \"` is marked as required in `\" + a + \"`, but its value is `null`.\") : new d(\"The \" + s + \" `\" + l + \"` is marked as required in `\" + a + \"`, but its value is `undefined`.\") : null : e(r, i, a, s, l)\n                }\n                var r = n.bind(null, !1);\n                return r.isRequired = n.bind(null, !0), r\n            }\n\n            function v(e) {\n                return h(function(t, n, r, o, i, a) {\n                    var u = t[n];\n                    return g(u) !== e ? new d(\"Invalid \" + o + \" `\" + i + \"` of type `\" + y(u) + \"` supplied to `\" + r + \"`, expected `\" + e + \"`.\") : null\n                })\n            }\n\n            function m(t) {\n                switch (typeof t) {\n                    case \"number\":\n                    case \"string\":\n                    case \"undefined\":\n                        return !0;\n                    case \"boolean\":\n                        return !t;\n                    case \"object\":\n                        if (Array.isArray(t)) return t.every(m);\n                        if (null === t || e(t)) return !0;\n                        var r = function(e) {\n                            var t = e && (n && e[n] || e[l]);\n                            if (\"function\" == typeof t) return t\n                        }(t);\n                        if (!r) return !1;\n                        var o, i = r.call(t);\n                        if (r !== t.entries) {\n                            for (; !(o = i.next()).done;)\n                                if (!m(o.value)) return !1\n                        } else\n                            for (; !(o = i.next()).done;) {\n                                var a = o.value;\n                                if (a && !m(a[1])) return !1\n                            }\n                        return !0;\n                    default:\n                        return !1\n                }\n            }\n\n            function g(e) {\n                var t = typeof e;\n                return Array.isArray(e) ? \"array\" : e instanceof RegExp ? \"object\" : function(e, t) {\n                    return \"symbol\" === e || \"Symbol\" === t[\"@@toStringTag\"] || \"function\" == typeof Symbol && t instanceof Symbol\n                }(t, e) ? \"symbol\" : t\n            }\n\n            function y(e) {\n                if (void 0 === e || null === e) return \"\" + e;\n                var t = g(e);\n                if (\"object\" === t) {\n                    if (e instanceof Date) return \"date\";\n                    if (e instanceof RegExp) return \"regexp\"\n                }\n                return t\n            }\n\n            function b(e) {\n                var t = y(e);\n                switch (t) {\n                    case \"array\":\n                    case \"object\":\n                        return \"an \" + t;\n                    case \"boolean\":\n                    case \"date\":\n                    case \"regexp\":\n                        return \"a \" + t;\n                    default:\n                        return t\n                }\n            }\n            return d.prototype = Error.prototype, f.checkPropTypes = s, f.PropTypes = f, f\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r, o) {}\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = \"15.6.2\"\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(264).Component,\n            o = n(76).isValidElement,\n            i = n(265),\n            a = n(547);\n        e.exports = a(r, o, i)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(126),\n            i = n(8),\n            a = \"mixins\";\n        e.exports = function(e, t, n) {\n            var u = [],\n                s = {\n                    mixins: \"DEFINE_MANY\",\n                    statics: \"DEFINE_MANY\",\n                    propTypes: \"DEFINE_MANY\",\n                    contextTypes: \"DEFINE_MANY\",\n                    childContextTypes: \"DEFINE_MANY\",\n                    getDefaultProps: \"DEFINE_MANY_MERGED\",\n                    getInitialState: \"DEFINE_MANY_MERGED\",\n                    getChildContext: \"DEFINE_MANY_MERGED\",\n                    render: \"DEFINE_ONCE\",\n                    componentWillMount: \"DEFINE_MANY\",\n                    componentDidMount: \"DEFINE_MANY\",\n                    componentWillReceiveProps: \"DEFINE_MANY\",\n                    shouldComponentUpdate: \"DEFINE_ONCE\",\n                    componentWillUpdate: \"DEFINE_MANY\",\n                    componentDidUpdate: \"DEFINE_MANY\",\n                    componentWillUnmount: \"DEFINE_MANY\",\n                    UNSAFE_componentWillMount: \"DEFINE_MANY\",\n                    UNSAFE_componentWillReceiveProps: \"DEFINE_MANY\",\n                    UNSAFE_componentWillUpdate: \"DEFINE_MANY\",\n                    updateComponent: \"OVERRIDE_BASE\"\n                },\n                l = {\n                    getDerivedStateFromProps: \"DEFINE_MANY_MERGED\"\n                },\n                c = {\n                    displayName: function(e, t) {\n                        e.displayName = t\n                    },\n                    mixins: function(e, t) {\n                        if (t)\n                            for (var n = 0; n < t.length; n++) p(e, t[n])\n                    },\n                    childContextTypes: function(e, t) {\n                        e.childContextTypes = r({}, e.childContextTypes, t)\n                    },\n                    contextTypes: function(e, t) {\n                        e.contextTypes = r({}, e.contextTypes, t)\n                    },\n                    getDefaultProps: function(e, t) {\n                        e.getDefaultProps ? e.getDefaultProps = h(e.getDefaultProps, t) : e.getDefaultProps = t\n                    },\n                    propTypes: function(e, t) {\n                        e.propTypes = r({}, e.propTypes, t)\n                    },\n                    statics: function(e, t) {\n                        ! function(e, t) {\n                            if (t)\n                                for (var n in t) {\n                                    var r = t[n];\n                                    if (t.hasOwnProperty(n)) {\n                                        var o = n in c;\n                                        i(!o, 'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\\'t be on the \"statics\" key. Define it as an instance property instead; it will still be accessible on the constructor.', n);\n                                        var a = n in e;\n                                        if (a) {\n                                            var u = l.hasOwnProperty(n) ? l[n] : null;\n                                            return i(\"DEFINE_MANY_MERGED\" === u, \"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.\", n), void(e[n] = h(e[n], r))\n                                        }\n                                        e[n] = r\n                                    }\n                                }\n                        }(e, t)\n                    },\n                    autobind: function() {}\n                };\n\n            function f(e, t) {\n                var n = s.hasOwnProperty(t) ? s[t] : null;\n                b.hasOwnProperty(t) && i(\"OVERRIDE_BASE\" === n, \"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.\", t), e && i(\"DEFINE_MANY\" === n || \"DEFINE_MANY_MERGED\" === n, \"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.\", t)\n            }\n\n            function p(e, n) {\n                if (n) {\n                    i(\"function\" != typeof n, \"ReactClass: You're attempting to use a component class or function as a mixin. Instead, just use a regular object.\"), i(!t(n), \"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.\");\n                    var r = e.prototype,\n                        o = r.__reactAutoBindPairs;\n                    for (var u in n.hasOwnProperty(a) && c.mixins(e, n.mixins), n)\n                        if (n.hasOwnProperty(u) && u !== a) {\n                            var l = n[u],\n                                p = r.hasOwnProperty(u);\n                            if (f(p, u), c.hasOwnProperty(u)) c[u](e, l);\n                            else {\n                                var d = s.hasOwnProperty(u);\n                                if (\"function\" != typeof l || d || p || !1 === n.autobind)\n                                    if (p) {\n                                        var m = s[u];\n                                        i(d && (\"DEFINE_MANY_MERGED\" === m || \"DEFINE_MANY\" === m), \"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.\", m, u), \"DEFINE_MANY_MERGED\" === m ? r[u] = h(r[u], l) : \"DEFINE_MANY\" === m && (r[u] = v(r[u], l))\n                                    } else r[u] = l;\n                                else o.push(u, l), r[u] = l\n                            }\n                        }\n                }\n            }\n\n            function d(e, t) {\n                for (var n in i(e && t && \"object\" == typeof e && \"object\" == typeof t, \"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.\"), t) t.hasOwnProperty(n) && (i(void 0 === e[n], \"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.\", n), e[n] = t[n]);\n                return e\n            }\n\n            function h(e, t) {\n                return function() {\n                    var n = e.apply(this, arguments),\n                        r = t.apply(this, arguments);\n                    if (null == n) return r;\n                    if (null == r) return n;\n                    var o = {};\n                    return d(o, n), d(o, r), o\n                }\n            }\n\n            function v(e, t) {\n                return function() {\n                    e.apply(this, arguments), t.apply(this, arguments)\n                }\n            }\n\n            function m(e, t) {\n                var n = t.bind(e);\n                return n\n            }\n            var g = {\n                    componentDidMount: function() {\n                        this.__isMounted = !0\n                    }\n                },\n                y = {\n                    componentWillUnmount: function() {\n                        this.__isMounted = !1\n                    }\n                },\n                b = {\n                    replaceState: function(e, t) {\n                        this.updater.enqueueReplaceState(this, e, t)\n                    },\n                    isMounted: function() {\n                        return !!this.__isMounted\n                    }\n                },\n                _ = function() {};\n            return r(_.prototype, e.prototype, b),\n                function(e) {\n                    var t = function(e, r, a) {\n                        this.__reactAutoBindPairs.length && function(e) {\n                            for (var t = e.__reactAutoBindPairs, n = 0; n < t.length; n += 2) {\n                                var r = t[n],\n                                    o = t[n + 1];\n                                e[r] = m(e, o)\n                            }\n                        }(this), this.props = e, this.context = r, this.refs = o, this.updater = a || n, this.state = null;\n                        var u = this.getInitialState ? this.getInitialState() : null;\n                        i(\"object\" == typeof u && !Array.isArray(u), \"%s.getInitialState(): must return an object or null\", t.displayName || \"ReactCompositeComponent\"), this.state = u\n                    };\n                    for (var r in t.prototype = new _, t.prototype.constructor = t, t.prototype.__reactAutoBindPairs = [], u.forEach(p.bind(null, t)), p(t, g), p(t, e), p(t, y), t.getDefaultProps && (t.defaultProps = t.getDefaultProps()), i(t.prototype.render, \"createClass(...): Class specification must implement a `render` method.\"), s) t.prototype[r] || (t.prototype[r] = null);\n                    return t\n                }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(104),\n            o = n(76);\n        n(8);\n        e.exports = function(e) {\n            return o.isValidElement(e) || r(\"143\"), e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(273),\n            o = n(552),\n            i = n(553),\n            a = \"[object Null]\",\n            u = \"[object Undefined]\",\n            s = r.a ? r.a.toStringTag : void 0;\n        t.a = function(e) {\n            return null == e ? void 0 === e ? u : a : s && s in Object(e) ? o.a(e) : i.a(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(551),\n            o = \"object\" == typeof self && self && self.Object === Object && self,\n            i = r.a || o || Function(\"return this\")();\n        t.a = i\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(e) {\n            var n = \"object\" == typeof e && e && e.Object === Object && e;\n            t.a = n\n        }).call(t, n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(273),\n            o = Object.prototype,\n            i = o.hasOwnProperty,\n            a = o.toString,\n            u = r.a ? r.a.toStringTag : void 0;\n        t.a = function(e) {\n            var t = i.call(e, u),\n                n = e[u];\n            try {\n                e[u] = void 0;\n                var r = !0\n            } catch (e) {}\n            var o = a.call(e);\n            return r && (t ? e[u] = n : delete e[u]), o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.toString;\n        t.a = function(e) {\n            return r.call(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(555).a(Object.getPrototypeOf, Object);\n        t.a = r\n    }, function(e, t, n) {\n        \"use strict\";\n        t.a = function(e, t) {\n            return function(n) {\n                return e(t(n))\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.a = function(e) {\n            return null != e && \"object\" == typeof e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(e, r) {\n            var o, i = n(559);\n            o = \"undefined\" != typeof self ? self : \"undefined\" != typeof window ? window : void 0 !== e ? e : r;\n            var a = i.a(o);\n            t.a = a\n        }).call(t, n(31), n(558)(e))\n    }, function(e, t) {\n        e.exports = function(e) {\n            if (!e.webpackPolyfill) {\n                var t = Object.create(e);\n                t.children || (t.children = []), Object.defineProperty(t, \"loaded\", {\n                    enumerable: !0,\n                    get: function() {\n                        return t.l\n                    }\n                }), Object.defineProperty(t, \"id\", {\n                    enumerable: !0,\n                    get: function() {\n                        return t.i\n                    }\n                }), Object.defineProperty(t, \"exports\", {\n                    enumerable: !0\n                }), t.webpackPolyfill = 1\n            }\n            return t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.a = function(e) {\n            var t, n = e.Symbol;\n            \"function\" == typeof n ? n.observable ? t = n.observable : (t = n(\"observable\"), n.observable = t) : t = \"@@observable\";\n            return t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.a = function(e) {\n            for (var t = Object.keys(e), n = {}, i = 0; i < t.length; i++) {\n                var a = t[i];\n                0, \"function\" == typeof e[a] && (n[a] = e[a])\n            }\n            var u = Object.keys(n);\n            0;\n            var s = void 0;\n            try {\n                ! function(e) {\n                    Object.keys(e).forEach(function(t) {\n                        var n = e[t],\n                            o = n(void 0, {\n                                type: r.a.INIT\n                            });\n                        if (void 0 === o) throw new Error('Reducer \"' + t + \"\\\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.\");\n                        var i = \"@@redux/PROBE_UNKNOWN_ACTION_\" + Math.random().toString(36).substring(7).split(\"\").join(\".\");\n                        if (void 0 === n(void 0, {\n                            type: i\n                        })) throw new Error('Reducer \"' + t + \"\\\" returned undefined when probed with a random type. Don't try to handle \" + r.a.INIT + ' or other actions in \"redux/*\" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')\n                    })\n                }(n)\n            } catch (e) {\n                s = e\n            }\n            return function() {\n                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},\n                    t = arguments[1];\n                if (s) throw s;\n                for (var r = !1, i = {}, a = 0; a < u.length; a++) {\n                    var l = u[a],\n                        c = n[l],\n                        f = e[l],\n                        p = c(f, t);\n                    if (void 0 === p) {\n                        var d = o(l, t);\n                        throw new Error(d)\n                    }\n                    i[l] = p, r = r || p !== f\n                }\n                return r ? i : e\n            }\n        };\n        var r = n(271);\n        n(272), n(274);\n\n        function o(e, t) {\n            var n = t && t.type;\n            return \"Given action \" + (n && '\"' + n.toString() + '\"' || \"an action\") + ', reducer \"' + e + '\" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            return function() {\n                return t(e.apply(void 0, arguments))\n            }\n        }\n        t.a = function(e, t) {\n            if (\"function\" == typeof e) return r(e, t);\n            if (\"object\" != typeof e || null === e) throw new Error(\"bindActionCreators expected an object or a function, instead received \" + (null === e ? \"null\" : typeof e) + '. Did you write \"import ActionCreators from\" instead of \"import * as ActionCreators from\"?');\n            for (var n = Object.keys(e), o = {}, i = 0; i < n.length; i++) {\n                var a = n[i],\n                    u = e[a];\n                \"function\" == typeof u && (o[a] = r(u, t))\n            }\n            return o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.a = function() {\n            for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n            return function(e) {\n                return function(n, i, a) {\n                    var u = e(n, i, a),\n                        s = u.dispatch,\n                        l = [],\n                        c = {\n                            getState: u.getState,\n                            dispatch: function(e) {\n                                return s(e)\n                            }\n                        };\n                    return l = t.map(function(e) {\n                        return e(c)\n                    }), s = r.a.apply(void 0, l)(u.dispatch), o({}, u, {\n                        dispatch: s\n                    })\n                }\n            }\n        };\n        var r = n(275),\n            o = Object.assign || function(e) {\n                for (var t = 1; t < arguments.length; t++) {\n                    var n = arguments[t];\n                    for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])\n                }\n                return e\n            }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.combineReducers = void 0;\n        var r, o = n(564),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.combineReducers = i.default\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o = n(7),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = n(565);\n        t.default = function(e) {\n            var t = Object.keys(e);\n            return function() {\n                var n = arguments.length <= 0 || void 0 === arguments[0] ? i.default.Map() : arguments[0],\n                    r = arguments[1];\n                return n.withMutations(function(n) {\n                    t.forEach(function(t) {\n                        var o = (0, e[t])(n.get(t), r);\n                        (0, a.validateNextState)(o, t, r), n.set(t, o)\n                    })\n                })\n            }\n        }, e.exports = t.default\n    }, function(e, t, n) {\n        \"use strict\";\n        \"create index\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.validateNextState = t.getUnexpectedInvocationParameterMessage = t.getStateName = void 0;\n        var r = a(n(276)),\n            o = a(n(566)),\n            i = a(n(567));\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.getStateName = r.default, t.getUnexpectedInvocationParameterMessage = o.default, t.validateNextState = i.default\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = i(n(7)),\n            o = i(n(276));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e, t, n) {\n            var i = Object.keys(t);\n            if (!i.length) return \"Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.\";\n            var a = (0, o.default)(n);\n            if (!r.default.Iterable.isIterable(e)) return \"The \" + a + ' is of unexpected type. Expected argument to be an instance of Immutable.Iterable with the following properties: \"' + i.join('\", \"') + '\".';\n            var u = e.keySeq().toArray().filter(function(e) {\n                return !t.hasOwnProperty(e)\n            });\n            return u.length > 0 ? \"Unexpected \" + (1 === u.length ? \"property\" : \"properties\") + ' \"' + u.join('\", \"') + '\" found in ' + a + '. Expected to find one of the known reducer property names instead: \"' + i.join('\", \"') + '\". Unexpected properties will be ignored.' : null\n        }, e.exports = t.default\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e, t, n) {\n            if (void 0 === e) throw new Error('Reducer \"' + t + '\" returned undefined when handling \"' + n.type + '\" action. To ignore an action, you must explicitly return the previous state.');\n            return null\n        }, e.exports = t.default\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(569),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(92), n(98), e.exports = n(570)\n    }, function(e, t, n) {\n        var r = n(165),\n            o = n(19)(\"iterator\"),\n            i = n(70);\n        e.exports = n(15).isIterable = function(e) {\n            var t = Object(e);\n            return void 0 !== t[o] || \"@@iterator\" in t || i.hasOwnProperty(r(t))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /^(%20|\\s)*(javascript|data)/im,\n            o = /[^\\x20-\\x7E]/gim,\n            i = /^([^:]+):/gm,\n            a = [\".\", \"/\"];\n        e.exports = {\n            sanitizeUrl: function(e) {\n                var t, n, u = e.replace(o, \"\");\n                return function(e) {\n                    return a.indexOf(e[0]) > -1\n                }(u) ? u : (n = u.match(i)) ? (t = n[0], r.test(t) ? \"about:blank\" : u) : \"about:blank\"\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(573),\n            o = n(581)(function(e, t, n) {\n                return t = t.toLowerCase(), e + (n ? r(t) : t)\n            });\n        e.exports = o\n    }, function(e, t, n) {\n        var r = n(61),\n            o = n(280);\n        e.exports = function(e) {\n            return o(r(e).toLowerCase())\n        }\n    }, function(e, t, n) {\n        var r = n(77),\n            o = Object.prototype,\n            i = o.hasOwnProperty,\n            a = o.toString,\n            u = r ? r.toStringTag : void 0;\n        e.exports = function(e) {\n            var t = i.call(e, u),\n                n = e[u];\n            try {\n                e[u] = void 0;\n                var r = !0\n            } catch (e) {}\n            var o = a.call(e);\n            return r && (t ? e[u] = n : delete e[u]), o\n        }\n    }, function(e, t) {\n        var n = Object.prototype.toString;\n        e.exports = function(e) {\n            return n.call(e)\n        }\n    }, function(e, t, n) {\n        var r = n(577),\n            o = n(282),\n            i = n(578),\n            a = n(61);\n        e.exports = function(e) {\n            return function(t) {\n                t = a(t);\n                var n = o(t) ? i(t) : void 0,\n                    u = n ? n[0] : t.charAt(0),\n                    s = n ? r(n, 1).join(\"\") : t.slice(1);\n                return u[e]() + s\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(281);\n        e.exports = function(e, t, n) {\n            var o = e.length;\n            return n = void 0 === n ? o : n, !t && n >= o ? e : r(e, t, n)\n        }\n    }, function(e, t, n) {\n        var r = n(579),\n            o = n(282),\n            i = n(580);\n        e.exports = function(e) {\n            return o(e) ? i(e) : r(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return e.split(\"\")\n        }\n    }, function(e, t) {\n        var n = \"[\\\\ud800-\\\\udfff]\",\n            r = \"[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]\",\n            o = \"\\\\ud83c[\\\\udffb-\\\\udfff]\",\n            i = \"[^\\\\ud800-\\\\udfff]\",\n            a = \"(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}\",\n            u = \"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\",\n            s = \"(?:\" + r + \"|\" + o + \")\" + \"?\",\n            l = \"[\\\\ufe0e\\\\ufe0f]?\" + s + (\"(?:\\\\u200d(?:\" + [i, a, u].join(\"|\") + \")[\\\\ufe0e\\\\ufe0f]?\" + s + \")*\"),\n            c = \"(?:\" + [i + r + \"?\", r, a, u, n].join(\"|\") + \")\",\n            f = RegExp(o + \"(?=\" + o + \")|\" + c + l, \"g\");\n        e.exports = function(e) {\n            return e.match(f) || []\n        }\n    }, function(e, t, n) {\n        var r = n(283),\n            o = n(582),\n            i = n(585),\n            a = RegExp(\"['’]\", \"g\");\n        e.exports = function(e) {\n            return function(t) {\n                return r(i(o(t).replace(a, \"\")), e, \"\")\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(583),\n            o = n(61),\n            i = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g,\n            a = RegExp(\"[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]\", \"g\");\n        e.exports = function(e) {\n            return (e = o(e)) && e.replace(i, r).replace(a, \"\")\n        }\n    }, function(e, t, n) {\n        var r = n(584)({\n            \"À\": \"A\",\n            \"Á\": \"A\",\n            \"Â\": \"A\",\n            \"Ã\": \"A\",\n            \"Ä\": \"A\",\n            \"Å\": \"A\",\n            \"à\": \"a\",\n            \"á\": \"a\",\n            \"â\": \"a\",\n            \"ã\": \"a\",\n            \"ä\": \"a\",\n            \"å\": \"a\",\n            \"Ç\": \"C\",\n            \"ç\": \"c\",\n            \"Ð\": \"D\",\n            \"ð\": \"d\",\n            \"È\": \"E\",\n            \"É\": \"E\",\n            \"Ê\": \"E\",\n            \"Ë\": \"E\",\n            \"è\": \"e\",\n            \"é\": \"e\",\n            \"ê\": \"e\",\n            \"ë\": \"e\",\n            \"Ì\": \"I\",\n            \"Í\": \"I\",\n            \"Î\": \"I\",\n            \"Ï\": \"I\",\n            \"ì\": \"i\",\n            \"í\": \"i\",\n            \"î\": \"i\",\n            \"ï\": \"i\",\n            \"Ñ\": \"N\",\n            \"ñ\": \"n\",\n            \"Ò\": \"O\",\n            \"Ó\": \"O\",\n            \"Ô\": \"O\",\n            \"Õ\": \"O\",\n            \"Ö\": \"O\",\n            \"Ø\": \"O\",\n            \"ò\": \"o\",\n            \"ó\": \"o\",\n            \"ô\": \"o\",\n            \"õ\": \"o\",\n            \"ö\": \"o\",\n            \"ø\": \"o\",\n            \"Ù\": \"U\",\n            \"Ú\": \"U\",\n            \"Û\": \"U\",\n            \"Ü\": \"U\",\n            \"ù\": \"u\",\n            \"ú\": \"u\",\n            \"û\": \"u\",\n            \"ü\": \"u\",\n            \"Ý\": \"Y\",\n            \"ý\": \"y\",\n            \"ÿ\": \"y\",\n            \"Æ\": \"Ae\",\n            \"æ\": \"ae\",\n            \"Þ\": \"Th\",\n            \"þ\": \"th\",\n            \"ß\": \"ss\",\n            \"Ā\": \"A\",\n            \"Ă\": \"A\",\n            \"Ą\": \"A\",\n            \"ā\": \"a\",\n            \"ă\": \"a\",\n            \"ą\": \"a\",\n            \"Ć\": \"C\",\n            \"Ĉ\": \"C\",\n            \"Ċ\": \"C\",\n            \"Č\": \"C\",\n            \"ć\": \"c\",\n            \"ĉ\": \"c\",\n            \"ċ\": \"c\",\n            \"č\": \"c\",\n            \"Ď\": \"D\",\n            \"Đ\": \"D\",\n            \"ď\": \"d\",\n            \"đ\": \"d\",\n            \"Ē\": \"E\",\n            \"Ĕ\": \"E\",\n            \"Ė\": \"E\",\n            \"Ę\": \"E\",\n            \"Ě\": \"E\",\n            \"ē\": \"e\",\n            \"ĕ\": \"e\",\n            \"ė\": \"e\",\n            \"ę\": \"e\",\n            \"ě\": \"e\",\n            \"Ĝ\": \"G\",\n            \"Ğ\": \"G\",\n            \"Ġ\": \"G\",\n            \"Ģ\": \"G\",\n            \"ĝ\": \"g\",\n            \"ğ\": \"g\",\n            \"ġ\": \"g\",\n            \"ģ\": \"g\",\n            \"Ĥ\": \"H\",\n            \"Ħ\": \"H\",\n            \"ĥ\": \"h\",\n            \"ħ\": \"h\",\n            \"Ĩ\": \"I\",\n            \"Ī\": \"I\",\n            \"Ĭ\": \"I\",\n            \"Į\": \"I\",\n            \"İ\": \"I\",\n            \"ĩ\": \"i\",\n            \"ī\": \"i\",\n            \"ĭ\": \"i\",\n            \"į\": \"i\",\n            \"ı\": \"i\",\n            \"Ĵ\": \"J\",\n            \"ĵ\": \"j\",\n            \"Ķ\": \"K\",\n            \"ķ\": \"k\",\n            \"ĸ\": \"k\",\n            \"Ĺ\": \"L\",\n            \"Ļ\": \"L\",\n            \"Ľ\": \"L\",\n            \"Ŀ\": \"L\",\n            \"Ł\": \"L\",\n            \"ĺ\": \"l\",\n            \"ļ\": \"l\",\n            \"ľ\": \"l\",\n            \"ŀ\": \"l\",\n            \"ł\": \"l\",\n            \"Ń\": \"N\",\n            \"Ņ\": \"N\",\n            \"Ň\": \"N\",\n            \"Ŋ\": \"N\",\n            \"ń\": \"n\",\n            \"ņ\": \"n\",\n            \"ň\": \"n\",\n            \"ŋ\": \"n\",\n            \"Ō\": \"O\",\n            \"Ŏ\": \"O\",\n            \"Ő\": \"O\",\n            \"ō\": \"o\",\n            \"ŏ\": \"o\",\n            \"ő\": \"o\",\n            \"Ŕ\": \"R\",\n            \"Ŗ\": \"R\",\n            \"Ř\": \"R\",\n            \"ŕ\": \"r\",\n            \"ŗ\": \"r\",\n            \"ř\": \"r\",\n            \"Ś\": \"S\",\n            \"Ŝ\": \"S\",\n            \"Ş\": \"S\",\n            \"Š\": \"S\",\n            \"ś\": \"s\",\n            \"ŝ\": \"s\",\n            \"ş\": \"s\",\n            \"š\": \"s\",\n            \"Ţ\": \"T\",\n            \"Ť\": \"T\",\n            \"Ŧ\": \"T\",\n            \"ţ\": \"t\",\n            \"ť\": \"t\",\n            \"ŧ\": \"t\",\n            \"Ũ\": \"U\",\n            \"Ū\": \"U\",\n            \"Ŭ\": \"U\",\n            \"Ů\": \"U\",\n            \"Ű\": \"U\",\n            \"Ų\": \"U\",\n            \"ũ\": \"u\",\n            \"ū\": \"u\",\n            \"ŭ\": \"u\",\n            \"ů\": \"u\",\n            \"ű\": \"u\",\n            \"ų\": \"u\",\n            \"Ŵ\": \"W\",\n            \"ŵ\": \"w\",\n            \"Ŷ\": \"Y\",\n            \"ŷ\": \"y\",\n            \"Ÿ\": \"Y\",\n            \"Ź\": \"Z\",\n            \"Ż\": \"Z\",\n            \"Ž\": \"Z\",\n            \"ź\": \"z\",\n            \"ż\": \"z\",\n            \"ž\": \"z\",\n            \"Ĳ\": \"IJ\",\n            \"ĳ\": \"ij\",\n            \"Œ\": \"Oe\",\n            \"œ\": \"oe\",\n            \"ŉ\": \"'n\",\n            \"ſ\": \"s\"\n        });\n        e.exports = r\n    }, function(e, t) {\n        e.exports = function(e) {\n            return function(t) {\n                return null == e ? void 0 : e[t]\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(586),\n            o = n(587),\n            i = n(61),\n            a = n(588);\n        e.exports = function(e, t, n) {\n            return e = i(e), void 0 === (t = n ? void 0 : t) ? o(e) ? a(e) : r(e) : e.match(t) || []\n        }\n    }, function(e, t) {\n        var n = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n        e.exports = function(e) {\n            return e.match(n) || []\n        }\n    }, function(e, t) {\n        var n = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n        e.exports = function(e) {\n            return n.test(e)\n        }\n    }, function(e, t) {\n        var n = \"\\\\xac\\\\xb1\\\\xd7\\\\xf7\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf\\\\u2000-\\\\u206f \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000\",\n            r = \"[\" + n + \"]\",\n            o = \"\\\\d+\",\n            i = \"[\\\\u2700-\\\\u27bf]\",\n            a = \"[a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff]\",\n            u = \"[^\\\\ud800-\\\\udfff\" + n + o + \"\\\\u2700-\\\\u27bfa-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xffA-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde]\",\n            s = \"(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}\",\n            l = \"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\",\n            c = \"[A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde]\",\n            f = \"(?:\" + a + \"|\" + u + \")\",\n            p = \"(?:\" + c + \"|\" + u + \")\",\n            d = \"(?:[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]|\\\\ud83c[\\\\udffb-\\\\udfff])?\",\n            h = \"[\\\\ufe0e\\\\ufe0f]?\" + d + (\"(?:\\\\u200d(?:\" + [\"[^\\\\ud800-\\\\udfff]\", s, l].join(\"|\") + \")[\\\\ufe0e\\\\ufe0f]?\" + d + \")*\"),\n            v = \"(?:\" + [i, s, l].join(\"|\") + \")\" + h,\n            m = RegExp([c + \"?\" + a + \"+(?:['’](?:d|ll|m|re|s|t|ve))?(?=\" + [r, c, \"$\"].join(\"|\") + \")\", p + \"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?=\" + [r, c + f, \"$\"].join(\"|\") + \")\", c + \"?\" + f + \"+(?:['’](?:d|ll|m|re|s|t|ve))?\", c + \"+(?:['’](?:D|LL|M|RE|S|T|VE))?\", \"\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])\", \"\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])\", o, v].join(\"|\"), \"g\");\n        e.exports = function(e) {\n            return e.match(m) || []\n        }\n    }, function(e, t, n) {\n        var r = n(590),\n            o = n(130),\n            i = n(181);\n        e.exports = function() {\n            this.size = 0, this.__data__ = {\n                hash: new r,\n                map: new(i || o),\n                string: new r\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(591),\n            o = n(596),\n            i = n(597),\n            a = n(598),\n            u = n(599);\n\n        function s(e) {\n            var t = -1,\n                n = null == e ? 0 : e.length;\n            for (this.clear(); ++t < n;) {\n                var r = e[t];\n                this.set(r[0], r[1])\n            }\n        }\n        s.prototype.clear = r, s.prototype.delete = o, s.prototype.get = i, s.prototype.has = a, s.prototype.set = u, e.exports = s\n    }, function(e, t, n) {\n        var r = n(129);\n        e.exports = function() {\n            this.__data__ = r ? r(null) : {}, this.size = 0\n        }\n    }, function(e, t, n) {\n        var r = n(285),\n            o = n(593),\n            i = n(38),\n            a = n(286),\n            u = /^\\[object .+?Constructor\\]$/,\n            s = Function.prototype,\n            l = Object.prototype,\n            c = s.toString,\n            f = l.hasOwnProperty,\n            p = RegExp(\"^\" + c.call(f).replace(/[\\\\^$.*+?()[\\]{}|]/g, \"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, \"$1.*?\") + \"$\");\n        e.exports = function(e) {\n            return !(!i(e) || o(e)) && (r(e) ? p : u).test(a(e))\n        }\n    }, function(e, t, n) {\n        var r, o = n(594),\n            i = (r = /[^.]+$/.exec(o && o.keys && o.keys.IE_PROTO || \"\")) ? \"Symbol(src)_1.\" + r : \"\";\n        e.exports = function(e) {\n            return !!i && i in e\n        }\n    }, function(e, t, n) {\n        var r = n(37)[\"__core-js_shared__\"];\n        e.exports = r\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return null == e ? void 0 : e[t]\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = this.has(e) && delete this.__data__[e];\n            return this.size -= t ? 1 : 0, t\n        }\n    }, function(e, t, n) {\n        var r = n(129),\n            o = \"__lodash_hash_undefined__\",\n            i = Object.prototype.hasOwnProperty;\n        e.exports = function(e) {\n            var t = this.__data__;\n            if (r) {\n                var n = t[e];\n                return n === o ? void 0 : n\n            }\n            return i.call(t, e) ? t[e] : void 0\n        }\n    }, function(e, t, n) {\n        var r = n(129),\n            o = Object.prototype.hasOwnProperty;\n        e.exports = function(e) {\n            var t = this.__data__;\n            return r ? void 0 !== t[e] : o.call(t, e)\n        }\n    }, function(e, t, n) {\n        var r = n(129),\n            o = \"__lodash_hash_undefined__\";\n        e.exports = function(e, t) {\n            var n = this.__data__;\n            return this.size += this.has(e) ? 0 : 1, n[e] = r && void 0 === t ? o : t, this\n        }\n    }, function(e, t) {\n        e.exports = function() {\n            this.__data__ = [], this.size = 0\n        }\n    }, function(e, t, n) {\n        var r = n(131),\n            o = Array.prototype.splice;\n        e.exports = function(e) {\n            var t = this.__data__,\n                n = r(t, e);\n            return !(n < 0 || (n == t.length - 1 ? t.pop() : o.call(t, n, 1), --this.size, 0))\n        }\n    }, function(e, t, n) {\n        var r = n(131);\n        e.exports = function(e) {\n            var t = this.__data__,\n                n = r(t, e);\n            return n < 0 ? void 0 : t[n][1]\n        }\n    }, function(e, t, n) {\n        var r = n(131);\n        e.exports = function(e) {\n            return r(this.__data__, e) > -1\n        }\n    }, function(e, t, n) {\n        var r = n(131);\n        e.exports = function(e, t) {\n            var n = this.__data__,\n                o = r(n, e);\n            return o < 0 ? (++this.size, n.push([e, t])) : n[o][1] = t, this\n        }\n    }, function(e, t, n) {\n        var r = n(132);\n        e.exports = function(e) {\n            var t = r(this, e).delete(e);\n            return this.size -= t ? 1 : 0, t\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = typeof e;\n            return \"string\" == t || \"number\" == t || \"symbol\" == t || \"boolean\" == t ? \"__proto__\" !== e : null === e\n        }\n    }, function(e, t, n) {\n        var r = n(132);\n        e.exports = function(e) {\n            return r(this, e).get(e)\n        }\n    }, function(e, t, n) {\n        var r = n(132);\n        e.exports = function(e) {\n            return r(this, e).has(e)\n        }\n    }, function(e, t, n) {\n        var r = n(132);\n        e.exports = function(e, t) {\n            var n = r(this, e),\n                o = n.size;\n            return n.set(e, t), this.size += n.size == o ? 0 : 1, this\n        }\n    }, function(e, t, n) {\n        var r = n(133),\n            o = n(78),\n            i = n(64);\n        e.exports = function(e) {\n            return function(t, n, a) {\n                var u = Object(t);\n                if (!o(t)) {\n                    var s = r(n, 3);\n                    t = i(t), n = function(e) {\n                        return s(u[e], e, u)\n                    }\n                }\n                var l = e(t, n, a);\n                return l > -1 ? u[s ? t[l] : l] : void 0\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(612),\n            o = n(638),\n            i = n(299);\n        e.exports = function(e) {\n            var t = o(e);\n            return 1 == t.length && t[0][2] ? i(t[0][0], t[0][1]) : function(n) {\n                return n === e || r(n, e, t)\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(182),\n            o = n(288),\n            i = 1,\n            a = 2;\n        e.exports = function(e, t, n, u) {\n            var s = n.length,\n                l = s,\n                c = !u;\n            if (null == e) return !l;\n            for (e = Object(e); s--;) {\n                var f = n[s];\n                if (c && f[2] ? f[1] !== e[f[0]] : !(f[0] in e)) return !1\n            }\n            for (; ++s < l;) {\n                var p = (f = n[s])[0],\n                    d = e[p],\n                    h = f[1];\n                if (c && f[2]) {\n                    if (void 0 === d && !(p in e)) return !1\n                } else {\n                    var v = new r;\n                    if (u) var m = u(d, h, p, e, t, v);\n                    if (!(void 0 === m ? o(h, d, i | a, u, v) : m)) return !1\n                }\n            }\n            return !0\n        }\n    }, function(e, t, n) {\n        var r = n(130);\n        e.exports = function() {\n            this.__data__ = new r, this.size = 0\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = this.__data__,\n                n = t.delete(e);\n            return this.size = t.size, n\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return this.__data__.get(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return this.__data__.has(e)\n        }\n    }, function(e, t, n) {\n        var r = n(130),\n            o = n(181),\n            i = n(180),\n            a = 200;\n        e.exports = function(e, t) {\n            var n = this.__data__;\n            if (n instanceof r) {\n                var u = n.__data__;\n                if (!o || u.length < a - 1) return u.push([e, t]), this.size = ++n.size, this;\n                n = this.__data__ = new i(u)\n            }\n            return n.set(e, t), this.size = n.size, this\n        }\n    }, function(e, t, n) {\n        var r = n(182),\n            o = n(289),\n            i = n(623),\n            a = n(626),\n            u = n(137),\n            s = n(24),\n            l = n(186),\n            c = n(296),\n            f = 1,\n            p = \"[object Arguments]\",\n            d = \"[object Array]\",\n            h = \"[object Object]\",\n            v = Object.prototype.hasOwnProperty;\n        e.exports = function(e, t, n, m, g, y) {\n            var b = s(e),\n                _ = s(t),\n                w = b ? d : u(e),\n                E = _ ? d : u(t),\n                x = (w = w == p ? h : w) == h,\n                S = (E = E == p ? h : E) == h,\n                C = w == E;\n            if (C && l(e)) {\n                if (!l(t)) return !1;\n                b = !0, x = !1\n            }\n            if (C && !x) return y || (y = new r), b || c(e) ? o(e, t, n, m, g, y) : i(e, t, w, n, m, g, y);\n            if (!(n & f)) {\n                var k = x && v.call(e, \"__wrapped__\"),\n                    A = S && v.call(t, \"__wrapped__\");\n                if (k || A) {\n                    var O = k ? e.value() : e,\n                        P = A ? t.value() : t;\n                    return y || (y = new r), g(O, P, n, m, y)\n                }\n            }\n            return !!C && (y || (y = new r), a(e, t, n, m, g, y))\n        }\n    }, function(e, t, n) {\n        var r = n(180),\n            o = n(620),\n            i = n(621);\n\n        function a(e) {\n            var t = -1,\n                n = null == e ? 0 : e.length;\n            for (this.__data__ = new r; ++t < n;) this.add(e[t])\n        }\n        a.prototype.add = a.prototype.push = o, a.prototype.has = i, e.exports = a\n    }, function(e, t) {\n        var n = \"__lodash_hash_undefined__\";\n        e.exports = function(e) {\n            return this.__data__.set(e, n), this\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return this.__data__.has(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return e.has(t)\n        }\n    }, function(e, t, n) {\n        var r = n(77),\n            o = n(291),\n            i = n(105),\n            a = n(289),\n            u = n(624),\n            s = n(625),\n            l = 1,\n            c = 2,\n            f = \"[object Boolean]\",\n            p = \"[object Date]\",\n            d = \"[object Error]\",\n            h = \"[object Map]\",\n            v = \"[object Number]\",\n            m = \"[object RegExp]\",\n            g = \"[object Set]\",\n            y = \"[object String]\",\n            b = \"[object Symbol]\",\n            _ = \"[object ArrayBuffer]\",\n            w = \"[object DataView]\",\n            E = r ? r.prototype : void 0,\n            x = E ? E.valueOf : void 0;\n        e.exports = function(e, t, n, r, E, S, C) {\n            switch (n) {\n                case w:\n                    if (e.byteLength != t.byteLength || e.byteOffset != t.byteOffset) return !1;\n                    e = e.buffer, t = t.buffer;\n                case _:\n                    return !(e.byteLength != t.byteLength || !S(new o(e), new o(t)));\n                case f:\n                case p:\n                case v:\n                    return i(+e, +t);\n                case d:\n                    return e.name == t.name && e.message == t.message;\n                case m:\n                case y:\n                    return e == t + \"\";\n                case h:\n                    var k = u;\n                case g:\n                    var A = r & l;\n                    if (k || (k = s), e.size != t.size && !A) return !1;\n                    var O = C.get(e);\n                    if (O) return O == t;\n                    r |= c, C.set(e, t);\n                    var P = a(k(e), k(t), r, E, S, C);\n                    return C.delete(e), P;\n                case b:\n                    if (x) return x.call(e) == x.call(t)\n            }\n            return !1\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = -1,\n                n = Array(e.size);\n            return e.forEach(function(e, r) {\n                n[++t] = [r, e]\n            }), n\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = -1,\n                n = Array(e.size);\n            return e.forEach(function(e) {\n                n[++t] = e\n            }), n\n        }\n    }, function(e, t, n) {\n        var r = n(292),\n            o = 1,\n            i = Object.prototype.hasOwnProperty;\n        e.exports = function(e, t, n, a, u, s) {\n            var l = n & o,\n                c = r(e),\n                f = c.length;\n            if (f != r(t).length && !l) return !1;\n            for (var p = f; p--;) {\n                var d = c[p];\n                if (!(l ? d in t : i.call(t, d))) return !1\n            }\n            var h = s.get(e);\n            if (h && s.get(t)) return h == t;\n            var v = !0;\n            s.set(e, t), s.set(t, e);\n            for (var m = l; ++p < f;) {\n                var g = e[d = c[p]],\n                    y = t[d];\n                if (a) var b = l ? a(y, g, d, t, e, s) : a(g, y, d, e, t, s);\n                if (!(void 0 === b ? g === y || u(g, y, n, a, s) : b)) {\n                    v = !1;\n                    break\n                }\n                m || (m = \"constructor\" == d)\n            }\n            if (v && !m) {\n                var _ = e.constructor,\n                    w = t.constructor;\n                _ != w && \"constructor\" in e && \"constructor\" in t && !(\"function\" == typeof _ && _ instanceof _ && \"function\" == typeof w && w instanceof w) && (v = !1)\n            }\n            return s.delete(e), s.delete(t), v\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            for (var n = -1, r = null == e ? 0 : e.length, o = 0, i = []; ++n < r;) {\n                var a = e[n];\n                t(a, n, e) && (i[o++] = a)\n            }\n            return i\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            for (var n = -1, r = Array(e); ++n < e;) r[n] = t(n);\n            return r\n        }\n    }, function(e, t, n) {\n        var r = n(62),\n            o = n(47),\n            i = \"[object Arguments]\";\n        e.exports = function(e) {\n            return o(e) && r(e) == i\n        }\n    }, function(e, t) {\n        e.exports = function() {\n            return !1\n        }\n    }, function(e, t, n) {\n        var r = n(62),\n            o = n(187),\n            i = n(47),\n            a = {};\n        a[\"[object Float32Array]\"] = a[\"[object Float64Array]\"] = a[\"[object Int8Array]\"] = a[\"[object Int16Array]\"] = a[\"[object Int32Array]\"] = a[\"[object Uint8Array]\"] = a[\"[object Uint8ClampedArray]\"] = a[\"[object Uint16Array]\"] = a[\"[object Uint32Array]\"] = !0, a[\"[object Arguments]\"] = a[\"[object Array]\"] = a[\"[object ArrayBuffer]\"] = a[\"[object Boolean]\"] = a[\"[object DataView]\"] = a[\"[object Date]\"] = a[\"[object Error]\"] = a[\"[object Function]\"] = a[\"[object Map]\"] = a[\"[object Number]\"] = a[\"[object Object]\"] = a[\"[object RegExp]\"] = a[\"[object Set]\"] = a[\"[object String]\"] = a[\"[object WeakMap]\"] = !1, e.exports = function(e) {\n            return i(e) && o(e.length) && !!a[r(e)]\n        }\n    }, function(e, t, n) {\n        var r = n(136),\n            o = n(633),\n            i = Object.prototype.hasOwnProperty;\n        e.exports = function(e) {\n            if (!r(e)) return o(e);\n            var t = [];\n            for (var n in Object(e)) i.call(e, n) && \"constructor\" != n && t.push(n);\n            return t\n        }\n    }, function(e, t, n) {\n        var r = n(297)(Object.keys, Object);\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(63)(n(37), \"DataView\");\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(63)(n(37), \"Promise\");\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(63)(n(37), \"Set\");\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(63)(n(37), \"WeakMap\");\n        e.exports = r\n    }, function(e, t, n) {\n        var r = n(298),\n            o = n(64);\n        e.exports = function(e) {\n            for (var t = o(e), n = t.length; n--;) {\n                var i = t[n],\n                    a = e[i];\n                t[n] = [i, a, r(a)]\n            }\n            return t\n        }\n    }, function(e, t, n) {\n        var r = n(288),\n            o = n(138),\n            i = n(300),\n            a = n(190),\n            u = n(298),\n            s = n(299),\n            l = n(80),\n            c = 1,\n            f = 2;\n        e.exports = function(e, t) {\n            return a(e) && u(t) ? s(l(e), t) : function(n) {\n                var a = o(n, e);\n                return void 0 === a && a === t ? i(n, e) : r(t, a, c | f)\n            }\n        }\n    }, function(e, t, n) {\n        var r = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g,\n            o = /\\\\(\\\\)?/g,\n            i = n(641)(function(e) {\n                var t = [];\n                return 46 === e.charCodeAt(0) && t.push(\"\"), e.replace(r, function(e, n, r, i) {\n                    t.push(r ? i.replace(o, \"$1\") : n || e)\n                }), t\n            });\n        e.exports = i\n    }, function(e, t, n) {\n        var r = n(284),\n            o = 500;\n        e.exports = function(e) {\n            var t = r(e, function(e) {\n                    return n.size === o && n.clear(), e\n                }),\n                n = t.cache;\n            return t\n        }\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            return null != e && t in Object(e)\n        }\n    }, function(e, t, n) {\n        var r = n(79),\n            o = n(185),\n            i = n(24),\n            a = n(135),\n            u = n(187),\n            s = n(80);\n        e.exports = function(e, t, n) {\n            for (var l = -1, c = (t = r(t, e)).length, f = !1; ++l < c;) {\n                var p = s(t[l]);\n                if (!(f = null != e && n(e, p))) break;\n                e = e[p]\n            }\n            return f || ++l != c ? f : !!(c = null == e ? 0 : e.length) && u(c) && a(p, c) && (i(e) || o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(645),\n            o = n(646),\n            i = n(190),\n            a = n(80);\n        e.exports = function(e) {\n            return i(e) ? r(a(e)) : o(e)\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            return function(t) {\n                return null == t ? void 0 : t[e]\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(139);\n        e.exports = function(e) {\n            return function(t) {\n                return r(t, e)\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(648),\n            o = n(133),\n            i = n(301),\n            a = Math.max;\n        e.exports = function(e, t, n) {\n            var u = null == e ? 0 : e.length;\n            if (!u) return -1;\n            var s = null == n ? 0 : i(n);\n            return s < 0 && (s = a(u + s, 0)), r(e, o(t, 3), s)\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n, r) {\n            for (var o = e.length, i = n + (r ? 1 : -1); r ? i-- : ++i < o;)\n                if (t(e[i], i, e)) return i;\n            return -1\n        }\n    }, function(e, t, n) {\n        var r = n(302),\n            o = 1 / 0,\n            i = 1.7976931348623157e308;\n        e.exports = function(e) {\n            return e ? (e = r(e)) === o || e === -o ? (e < 0 ? -1 : 1) * i : e == e ? e : 0 : 0 === e ? e : 0\n        }\n    }, function(e, t, n) {\n        var r = n(290),\n            o = n(133),\n            i = n(651),\n            a = n(24),\n            u = n(304);\n        e.exports = function(e, t, n) {\n            var s = a(e) ? r : i;\n            return n && u(e, t, n) && (t = void 0), s(e, o(t, 3))\n        }\n    }, function(e, t, n) {\n        var r = n(303);\n        e.exports = function(e, t) {\n            var n;\n            return r(e, function(e, r, o) {\n                return !(n = t(e, r, o))\n            }), !!n\n        }\n    }, function(e, t, n) {\n        var r = n(653),\n            o = n(64);\n        e.exports = function(e, t) {\n            return e && r(e, t, o)\n        }\n    }, function(e, t, n) {\n        var r = n(654)();\n        e.exports = r\n    }, function(e, t) {\n        e.exports = function(e) {\n            return function(t, n, r) {\n                for (var o = -1, i = Object(t), a = r(t), u = a.length; u--;) {\n                    var s = a[e ? u : ++o];\n                    if (!1 === n(i[s], s, i)) break\n                }\n                return t\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(78);\n        e.exports = function(e, t) {\n            return function(n, o) {\n                if (null == n) return n;\n                if (!r(n)) return e(n, o);\n                for (var i = n.length, a = t ? i : -1, u = Object(n);\n                     (t ? a-- : ++a < i) && !1 !== o(u[a], a, u););\n                return n\n            }\n        }\n    }, function(e, t, n) {\n        (function(t) {\n            var r = n(657),\n                o = n(658).Stream,\n                i = \"    \";\n\n            function a(e, t, n) {\n                n = n || 0;\n                var o, i, u = (o = t, new Array(n || 0).join(o || \"\")),\n                    s = e;\n                if (\"object\" == typeof e && ((s = e[i = Object.keys(e)[0]]) && s._elem)) return s._elem.name = i, s._elem.icount = n, s._elem.indent = t, s._elem.indents = u, s._elem.interrupt = s, s._elem;\n                var l, c = [],\n                    f = [];\n\n                function p(e) {\n                    Object.keys(e).forEach(function(t) {\n                        c.push(function(e, t) {\n                            return e + '=\"' + r(t) + '\"'\n                        }(t, e[t]))\n                    })\n                }\n                switch (typeof s) {\n                    case \"object\":\n                        if (null === s) break;\n                        s._attr && p(s._attr), s._cdata && f.push((\"<![CDATA[\" + s._cdata).replace(/\\]\\]>/g, \"]]]]><![CDATA[>\") + \"]]>\"), s.forEach && (l = !1, f.push(\"\"), s.forEach(function(e) {\n                            \"object\" == typeof e ? \"_attr\" == Object.keys(e)[0] ? p(e._attr) : f.push(a(e, t, n + 1)) : (f.pop(), l = !0, f.push(r(e)))\n                        }), l || f.push(\"\"));\n                        break;\n                    default:\n                        f.push(r(s))\n                }\n                return {\n                    name: i,\n                    interrupt: !1,\n                    attributes: c,\n                    content: f,\n                    icount: n,\n                    indents: u,\n                    indent: t\n                }\n            }\n\n            function u(e, t, n) {\n                if (\"object\" != typeof t) return e(!1, t);\n                var r = t.interrupt ? 1 : t.content.length;\n\n                function o() {\n                    for (; t.content.length;) {\n                        var o = t.content.shift();\n                        if (void 0 !== o) {\n                            if (i(o)) return;\n                            u(e, o)\n                        }\n                    }\n                    e(!1, (r > 1 ? t.indents : \"\") + (t.name ? \"</\" + t.name + \">\" : \"\") + (t.indent && !n ? \"\\n\" : \"\")), n && n()\n                }\n\n                function i(t) {\n                    return !!t.interrupt && (t.interrupt.append = e, t.interrupt.end = o, t.interrupt = !1, e(!0), !0)\n                }\n                if (e(!1, t.indents + (t.name ? \"<\" + t.name : \"\") + (t.attributes.length ? \" \" + t.attributes.join(\" \") : \"\") + (r ? t.name ? \">\" : \"\" : t.name ? \"/>\" : \"\") + (t.indent && r > 1 ? \"\\n\" : \"\")), !r) return e(!1, t.indent ? \"\\n\" : \"\");\n                i(t) || o()\n            }\n            e.exports = function(e, n) {\n                \"object\" != typeof n && (n = {\n                    indent: n\n                });\n                var r, s, l = n.stream ? new o : null,\n                    c = \"\",\n                    f = !1,\n                    p = n.indent ? !0 === n.indent ? i : n.indent : \"\",\n                    d = !0;\n\n                function h(e) {\n                    d ? t.nextTick(e) : e()\n                }\n\n                function v(e, t) {\n                    if (void 0 !== t && (c += t), e && !f && (l = l || new o, f = !0), e && f) {\n                        var n = c;\n                        h(function() {\n                            l.emit(\"data\", n)\n                        }), c = \"\"\n                    }\n                }\n\n                function m(e, t) {\n                    u(v, a(e, p, p ? 1 : 0), t)\n                }\n\n                function g() {\n                    if (l) {\n                        var e = c;\n                        h(function() {\n                            l.emit(\"data\", e), l.emit(\"end\"), l.readable = !1, l.emit(\"close\")\n                        })\n                    }\n                }\n                return h(function() {\n                    d = !1\n                }), n.declaration && (r = n.declaration, s = {\n                    version: \"1.0\",\n                    encoding: r.encoding || \"UTF-8\"\n                }, r.standalone && (s.standalone = r.standalone), m({\n                    \"?xml\": {\n                        _attr: s\n                    }\n                }), c = c.replace(\"/>\", \"?>\")), e && e.forEach ? e.forEach(function(t, n) {\n                    var r;\n                    n + 1 === e.length && (r = g), m(t, r)\n                }) : m(e, g), l ? (l.readable = !0, l) : c\n            }, e.exports.element = e.exports.Element = function() {\n                var e = {\n                    _elem: a(Array.prototype.slice.call(arguments)),\n                    push: function(e) {\n                        if (!this.append) throw new Error(\"not assigned to a parent!\");\n                        var t = this,\n                            n = this._elem.indent;\n                        u(this.append, a(e, n, this._elem.icount + (n ? 1 : 0)), function() {\n                            t.append(!0)\n                        })\n                    },\n                    close: function(e) {\n                        void 0 !== e && this.push(e), this.end && this.end()\n                    }\n                };\n                return e\n            }\n        }).call(t, n(55))\n    }, function(e, t) {\n        var n = {\n            \"&\": \"&amp;\",\n            '\"': \"&quot;\",\n            \"'\": \"&apos;\",\n            \"<\": \"&lt;\",\n            \">\": \"&gt;\"\n        };\n        e.exports = function(e) {\n            return e && e.replace ? e.replace(/([&\"<>'])/g, function(e, t) {\n                return n[t]\n            }) : e\n        }\n    }, function(e, t, n) {\n        e.exports = o;\n        var r = n(193).EventEmitter;\n\n        function o() {\n            r.call(this)\n        }\n        n(81)(o, r), o.Readable = n(194), o.Writable = n(665), o.Duplex = n(666), o.Transform = n(667), o.PassThrough = n(668), o.Stream = o, o.prototype.pipe = function(e, t) {\n            var n = this;\n\n            function o(t) {\n                e.writable && !1 === e.write(t) && n.pause && n.pause()\n            }\n\n            function i() {\n                n.readable && n.resume && n.resume()\n            }\n            n.on(\"data\", o), e.on(\"drain\", i), e._isStdio || t && !1 === t.end || (n.on(\"end\", u), n.on(\"close\", s));\n            var a = !1;\n\n            function u() {\n                a || (a = !0, e.end())\n            }\n\n            function s() {\n                a || (a = !0, \"function\" == typeof e.destroy && e.destroy())\n            }\n\n            function l(e) {\n                if (c(), 0 === r.listenerCount(this, \"error\")) throw e\n            }\n\n            function c() {\n                n.removeListener(\"data\", o), e.removeListener(\"drain\", i), n.removeListener(\"end\", u), n.removeListener(\"close\", s), n.removeListener(\"error\", l), e.removeListener(\"error\", l), n.removeListener(\"end\", c), n.removeListener(\"close\", c), e.removeListener(\"close\", c)\n            }\n            return n.on(\"error\", l), e.on(\"error\", l), n.on(\"end\", c), n.on(\"close\", c), e.on(\"close\", c), e.emit(\"pipe\", n), e\n        }\n    }, function(e, t) {}, function(e, t, n) {\n        \"use strict\";\n        var r = n(141).Buffer,\n            o = n(661);\n        e.exports = function() {\n            function e() {\n                ! function(e, t) {\n                    if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                }(this, e), this.head = null, this.tail = null, this.length = 0\n            }\n            return e.prototype.push = function(e) {\n                var t = {\n                    data: e,\n                    next: null\n                };\n                this.length > 0 ? this.tail.next = t : this.head = t, this.tail = t, ++this.length\n            }, e.prototype.unshift = function(e) {\n                var t = {\n                    data: e,\n                    next: this.head\n                };\n                0 === this.length && (this.tail = t), this.head = t, ++this.length\n            }, e.prototype.shift = function() {\n                if (0 !== this.length) {\n                    var e = this.head.data;\n                    return 1 === this.length ? this.head = this.tail = null : this.head = this.head.next, --this.length, e\n                }\n            }, e.prototype.clear = function() {\n                this.head = this.tail = null, this.length = 0\n            }, e.prototype.join = function(e) {\n                if (0 === this.length) return \"\";\n                for (var t = this.head, n = \"\" + t.data; t = t.next;) n += e + t.data;\n                return n\n            }, e.prototype.concat = function(e) {\n                if (0 === this.length) return r.alloc(0);\n                if (1 === this.length) return this.head.data;\n                for (var t, n, o, i = r.allocUnsafe(e >>> 0), a = this.head, u = 0; a;) t = a.data, n = i, o = u, t.copy(n, o), u += a.data.length, a = a.next;\n                return i\n            }, e\n        }(), o && o.inspect && o.inspect.custom && (e.exports.prototype[o.inspect.custom] = function() {\n            var e = o.inspect({\n                length: this.length\n            });\n            return this.constructor.name + \" \" + e\n        })\n    }, function(e, t) {}, function(e, t, n) {\n        (function(e, t) {\n            ! function(e, n) {\n                \"use strict\";\n                if (!e.setImmediate) {\n                    var r, o, i, a, u, s = 1,\n                        l = {},\n                        c = !1,\n                        f = e.document,\n                        p = Object.getPrototypeOf && Object.getPrototypeOf(e);\n                    p = p && p.setTimeout ? p : e, \"[object process]\" === {}.toString.call(e.process) ? r = function(e) {\n                        t.nextTick(function() {\n                            h(e)\n                        })\n                    } : ! function() {\n                        if (e.postMessage && !e.importScripts) {\n                            var t = !0,\n                                n = e.onmessage;\n                            return e.onmessage = function() {\n                                t = !1\n                            }, e.postMessage(\"\", \"*\"), e.onmessage = n, t\n                        }\n                    }() ? e.MessageChannel ? ((i = new MessageChannel).port1.onmessage = function(e) {\n                        h(e.data)\n                    }, r = function(e) {\n                        i.port2.postMessage(e)\n                    }) : f && \"onreadystatechange\" in f.createElement(\"script\") ? (o = f.documentElement, r = function(e) {\n                        var t = f.createElement(\"script\");\n                        t.onreadystatechange = function() {\n                            h(e), t.onreadystatechange = null, o.removeChild(t), t = null\n                        }, o.appendChild(t)\n                    }) : r = function(e) {\n                        setTimeout(h, 0, e)\n                    } : (a = \"setImmediate$\" + Math.random() + \"$\", u = function(t) {\n                        t.source === e && \"string\" == typeof t.data && 0 === t.data.indexOf(a) && h(+t.data.slice(a.length))\n                    }, e.addEventListener ? e.addEventListener(\"message\", u, !1) : e.attachEvent(\"onmessage\", u), r = function(t) {\n                        e.postMessage(a + t, \"*\")\n                    }), p.setImmediate = function(e) {\n                        \"function\" != typeof e && (e = new Function(\"\" + e));\n                        for (var t = new Array(arguments.length - 1), n = 0; n < t.length; n++) t[n] = arguments[n + 1];\n                        var o = {\n                            callback: e,\n                            args: t\n                        };\n                        return l[s] = o, r(s), s++\n                    }, p.clearImmediate = d\n                }\n\n                function d(e) {\n                    delete l[e]\n                }\n\n                function h(e) {\n                    if (c) setTimeout(h, 0, e);\n                    else {\n                        var t = l[e];\n                        if (t) {\n                            c = !0;\n                            try {\n                                ! function(e) {\n                                    var t = e.callback,\n                                        r = e.args;\n                                    switch (r.length) {\n                                        case 0:\n                                            t();\n                                            break;\n                                        case 1:\n                                            t(r[0]);\n                                            break;\n                                        case 2:\n                                            t(r[0], r[1]);\n                                            break;\n                                        case 3:\n                                            t(r[0], r[1], r[2]);\n                                            break;\n                                        default:\n                                            t.apply(n, r)\n                                    }\n                                }(t)\n                            } finally {\n                                d(e), c = !1\n                            }\n                        }\n                    }\n                }\n            }(\"undefined\" == typeof self ? void 0 === e ? this : e : self)\n        }).call(t, n(31), n(55))\n    }, function(e, t, n) {\n        (function(t) {\n            function n(e) {\n                try {\n                    if (!t.localStorage) return !1\n                } catch (e) {\n                    return !1\n                }\n                var n = t.localStorage[e];\n                return null != n && \"true\" === String(n).toLowerCase()\n            }\n            e.exports = function(e, t) {\n                if (n(\"noDeprecation\")) return e;\n                var r = !1;\n                return function() {\n                    if (!r) {\n                        if (n(\"throwDeprecation\")) throw new Error(t);\n                        n(\"traceDeprecation\") ? console.trace(t) : console.warn(t), r = !0\n                    }\n                    return e.apply(this, arguments)\n                }\n            }\n        }).call(t, n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = i;\n        var r = n(310),\n            o = n(106);\n\n        function i(e) {\n            if (!(this instanceof i)) return new i(e);\n            r.call(this, e)\n        }\n        o.inherits = n(81), o.inherits(i, r), i.prototype._transform = function(e, t, n) {\n            n(null, e)\n        }\n    }, function(e, t, n) {\n        e.exports = n(195)\n    }, function(e, t, n) {\n        e.exports = n(65)\n    }, function(e, t, n) {\n        e.exports = n(194).Transform\n    }, function(e, t, n) {\n        e.exports = n(194).PassThrough\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(311),\n            o = n(313),\n            i = n(674);\n        e.exports = function(e) {\n            var t, a = r(arguments[1]);\n            return a.normalizer || 0 !== (t = a.length = o(a.length, e.length, a.async)) && (a.primitive ? !1 === t ? a.normalizer = n(701) : t > 1 && (a.normalizer = n(702)(t)) : a.normalizer = !1 === t ? n(703)() : 1 === t ? n(707)() : n(708)(t)), a.async && n(709), a.promise && n(710), a.dispose && n(716), a.maxAge && n(717), a.max && n(720), a.refCounter && n(722), i(e, a)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(671),\n            o = Math.abs,\n            i = Math.floor;\n        e.exports = function(e) {\n            return isNaN(e) ? 0 : 0 !== (e = Number(e)) && isFinite(e) ? r(e) * i(o(e)) : e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(672)() ? Math.sign : n(673)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function() {\n            var e = Math.sign;\n            return \"function\" == typeof e && (1 === e(10) && -1 === e(-20))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return e = Number(e), isNaN(e) || 0 === e ? e : e > 0 ? 1 : -1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(56),\n            o = n(142),\n            i = n(68),\n            a = n(676),\n            u = n(313);\n        e.exports = function e(t) {\n            var n, s, l;\n            if (r(t), (n = Object(arguments[1])).async && n.promise) throw new Error(\"Options 'async' and 'promise' cannot be used together\");\n            return hasOwnProperty.call(t, \"__memoized__\") && !n.force ? t : (s = u(n.length, t.length, n.async && i.async), l = a(t, s, n), o(i, function(e, t) {\n                n[t] && e(n[t], l, n)\n            }), e.__profiler__ && e.__profiler__(l), l.updateEnv(), l.memoized)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(56),\n            o = n(82),\n            i = Function.prototype.bind,\n            a = Function.prototype.call,\n            u = Object.keys,\n            s = Object.prototype.propertyIsEnumerable;\n        e.exports = function(e, t) {\n            return function(n, l) {\n                var c, f = arguments[2],\n                    p = arguments[3];\n                return n = Object(o(n)), r(l), c = u(n), p && c.sort(\"function\" == typeof p ? i.call(p, n) : void 0), \"function\" != typeof e && (e = c[e]), a.call(e, c, function(e, r) {\n                    return s.call(n, e) ? a.call(l, f, n[e], e, n, r) : t\n                })\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(677),\n            o = n(315),\n            i = n(143),\n            a = n(687).methods,\n            u = n(688),\n            s = n(700),\n            l = Function.prototype.apply,\n            c = Function.prototype.call,\n            f = Object.create,\n            p = Object.defineProperties,\n            d = a.on,\n            h = a.emit;\n        e.exports = function(e, t, n) {\n            var a, v, m, g, y, b, _, w, E, x, S, C, k, A, O, P = f(null);\n            return v = !1 !== t ? t : isNaN(e.length) ? 1 : e.length, n.normalizer && (x = s(n.normalizer), m = x.get, g = x.set, y = x.delete, b = x.clear), null != n.resolvers && (O = u(n.resolvers)), A = m ? o(function(t) {\n                var n, o, i = arguments;\n                if (O && (i = O(i)), null !== (n = m(i)) && hasOwnProperty.call(P, n)) return S && a.emit(\"get\", n, i, this), P[n];\n                if (o = 1 === i.length ? c.call(e, this, i[0]) : l.call(e, this, i), null === n) {\n                    if (null !== (n = m(i))) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                    n = g(i)\n                } else if (hasOwnProperty.call(P, n)) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                return P[n] = o, C && a.emit(\"set\", n, null, o), o\n            }, v) : 0 === t ? function() {\n                var t;\n                if (hasOwnProperty.call(P, \"data\")) return S && a.emit(\"get\", \"data\", arguments, this), P.data;\n                if (t = arguments.length ? l.call(e, this, arguments) : c.call(e, this), hasOwnProperty.call(P, \"data\")) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                return P.data = t, C && a.emit(\"set\", \"data\", null, t), t\n            } : function(t) {\n                var n, o, i = arguments;\n                if (O && (i = O(arguments)), o = String(i[0]), hasOwnProperty.call(P, o)) return S && a.emit(\"get\", o, i, this), P[o];\n                if (n = 1 === i.length ? c.call(e, this, i[0]) : l.call(e, this, i), hasOwnProperty.call(P, o)) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                return P[o] = n, C && a.emit(\"set\", o, null, n), n\n            }, a = {\n                original: e,\n                memoized: A,\n                profileName: n.profileName,\n                get: function(e) {\n                    return O && (e = O(e)), m ? m(e) : String(e[0])\n                },\n                has: function(e) {\n                    return hasOwnProperty.call(P, e)\n                },\n                delete: function(e) {\n                    var t;\n                    hasOwnProperty.call(P, e) && (y && y(e), t = P[e], delete P[e], k && a.emit(\"delete\", e, t))\n                },\n                clear: function() {\n                    var e = P;\n                    b && b(), P = f(null), a.emit(\"clear\", e)\n                },\n                on: function(e, t) {\n                    return \"get\" === e ? S = !0 : \"set\" === e ? C = !0 : \"delete\" === e && (k = !0), d.call(this, e, t)\n                },\n                emit: h,\n                updateEnv: function() {\n                    e = a.original\n                }\n            }, _ = m ? o(function(e) {\n                var t, n = arguments;\n                O && (n = O(n)), null !== (t = m(n)) && a.delete(t)\n            }, v) : 0 === t ? function() {\n                return a.delete(\"data\")\n            } : function(e) {\n                return O && (e = O(arguments)[0]), a.delete(e)\n            }, w = o(function() {\n                var e, n = arguments;\n                return 0 === t ? P.data : (O && (n = O(n)), e = m ? m(n) : String(n[0]), P[e])\n            }), E = o(function() {\n                var e, n = arguments;\n                return 0 === t ? a.has(\"data\") : (O && (n = O(n)), null !== (e = m ? m(n) : String(n[0])) && a.has(e))\n            }), p(A, {\n                __memoized__: i(!0),\n                delete: i(_),\n                clear: i(a.clear),\n                _get: i(w),\n                _has: i(E)\n            }), a\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(314),\n            o = n(683),\n            i = n(66),\n            a = Error.captureStackTrace;\n        t = e.exports = function(e) {\n            var n = new Error(e),\n                u = arguments[1],\n                s = arguments[2];\n            return i(s) || o(u) && (s = u, u = null), i(s) && r(n, s), i(u) && (n.code = u), a && a(n, t), n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function() {\n            var e, t = Object.assign;\n            return \"function\" == typeof t && (t(e = {\n                foo: \"raz\"\n            }, {\n                bar: \"dwa\"\n            }, {\n                trzy: \"trzy\"\n            }), e.foo + e.bar + e.trzy === \"razdwatrzy\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(680),\n            o = n(82),\n            i = Math.max;\n        e.exports = function(e, t) {\n            var n, a, u, s = i(arguments.length, 2);\n            for (e = Object(o(e)), u = function(r) {\n                try {\n                    e[r] = t[r]\n                } catch (e) {\n                    n || (n = e)\n                }\n            }, a = 1; a < s; ++a) t = arguments[a], r(t).forEach(u);\n            if (void 0 !== n) throw n;\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(681)() ? Object.keys : n(682)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function() {\n            try {\n                return Object.keys(\"primitive\"), !0\n            } catch (e) {\n                return !1\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(66),\n            o = Object.keys;\n        e.exports = function(e) {\n            return o(r(e) ? Object(e) : e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(66),\n            o = {\n                function: !0,\n                object: !0\n            };\n        e.exports = function(e) {\n            return r(e) && o[typeof e] || !1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(685)() ? String.prototype.contains : n(686)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"razdwatrzy\";\n        e.exports = function() {\n            return \"function\" == typeof r.contains && (!0 === r.contains(\"dwa\") && !1 === r.contains(\"foo\"))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = String.prototype.indexOf;\n        e.exports = function(e) {\n            return r.call(this, e, arguments[1]) > -1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i, a, u, s, l, c = n(143),\n            f = n(56),\n            p = Function.prototype.apply,\n            d = Function.prototype.call,\n            h = Object.create,\n            v = Object.defineProperty,\n            m = Object.defineProperties,\n            g = Object.prototype.hasOwnProperty,\n            y = {\n                configurable: !0,\n                enumerable: !1,\n                writable: !0\n            };\n        u = {\n            on: r = function(e, t) {\n                var n;\n                return f(t), g.call(this, \"__ee__\") ? n = this.__ee__ : (n = y.value = h(null), v(this, \"__ee__\", y), y.value = null), n[e] ? \"object\" == typeof n[e] ? n[e].push(t) : n[e] = [n[e], t] : n[e] = t, this\n            },\n            once: o = function(e, t) {\n                var n, o;\n                return f(t), o = this, r.call(this, e, n = function() {\n                    i.call(o, e, n), p.call(t, this, arguments)\n                }), n.__eeOnceListener__ = t, this\n            },\n            off: i = function(e, t) {\n                var n, r, o, i;\n                if (f(t), !g.call(this, \"__ee__\")) return this;\n                if (!(n = this.__ee__)[e]) return this;\n                if (\"object\" == typeof(r = n[e]))\n                    for (i = 0; o = r[i]; ++i) o !== t && o.__eeOnceListener__ !== t || (2 === r.length ? n[e] = r[i ? 0 : 1] : r.splice(i, 1));\n                else r !== t && r.__eeOnceListener__ !== t || delete n[e];\n                return this\n            },\n            emit: a = function(e) {\n                var t, n, r, o, i;\n                if (g.call(this, \"__ee__\") && (o = this.__ee__[e]))\n                    if (\"object\" == typeof o) {\n                        for (n = arguments.length, i = new Array(n - 1), t = 1; t < n; ++t) i[t - 1] = arguments[t];\n                        for (o = o.slice(), t = 0; r = o[t]; ++t) p.call(r, this, i)\n                    } else switch (arguments.length) {\n                        case 1:\n                            d.call(o, this);\n                            break;\n                        case 2:\n                            d.call(o, this, arguments[1]);\n                            break;\n                        case 3:\n                            d.call(o, this, arguments[1], arguments[2]);\n                            break;\n                        default:\n                            for (n = arguments.length, i = new Array(n - 1), t = 1; t < n; ++t) i[t - 1] = arguments[t];\n                            p.call(o, this, i)\n                    }\n            }\n        }, s = {\n            on: c(r),\n            once: c(o),\n            off: c(i),\n            emit: c(a)\n        }, l = m({}, s), e.exports = t = function(e) {\n            return null == e ? h(l) : m(Object(e), s)\n        }, t.methods = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(689),\n            i = n(66),\n            a = n(56),\n            u = Array.prototype.slice;\n        r = function(e) {\n            return this.map(function(t, n) {\n                return t ? t(e[n]) : e[n]\n            }).concat(u.call(e, this.length))\n        }, e.exports = function(e) {\n            return (e = o(e)).forEach(function(e) {\n                i(e) && a(e)\n            }), r.bind(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(197),\n            o = Array.isArray;\n        e.exports = function(e) {\n            return o(e) ? e : r(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function() {\n            var e, t, n = Array.from;\n            return \"function\" == typeof n && (t = n(e = [\"raz\", \"dwa\"]), Boolean(t && t !== e && \"dwa\" === t[1]))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(692).iterator,\n            o = n(697),\n            i = n(698),\n            a = n(67),\n            u = n(56),\n            s = n(82),\n            l = n(66),\n            c = n(699),\n            f = Array.isArray,\n            p = Function.prototype.call,\n            d = {\n                configurable: !0,\n                enumerable: !0,\n                writable: !0,\n                value: null\n            },\n            h = Object.defineProperty;\n        e.exports = function(e) {\n            var t, n, v, m, g, y, b, _, w, E, x = arguments[1],\n                S = arguments[2];\n            if (e = Object(s(e)), l(x) && u(x), this && this !== Array && i(this)) t = this;\n            else {\n                if (!x) {\n                    if (o(e)) return 1 !== (g = e.length) ? Array.apply(null, e) : ((m = new Array(1))[0] = e[0], m);\n                    if (f(e)) {\n                        for (m = new Array(g = e.length), n = 0; n < g; ++n) m[n] = e[n];\n                        return m\n                    }\n                }\n                m = []\n            }\n            if (!f(e))\n                if (void 0 !== (w = e[r])) {\n                    for (b = u(w).call(e), t && (m = new t), _ = b.next(), n = 0; !_.done;) E = x ? p.call(x, S, _.value, n) : _.value, t ? (d.value = E, h(m, n, d)) : m[n] = E, _ = b.next(), ++n;\n                    g = n\n                } else if (c(e)) {\n                    for (g = e.length, t && (m = new t), n = 0, v = 0; n < g; ++n) E = e[n], n + 1 < g && (y = E.charCodeAt(0)) >= 55296 && y <= 56319 && (E += e[++n]), E = x ? p.call(x, S, E, v) : E, t ? (d.value = E, h(m, v, d)) : m[v] = E, ++v;\n                    g = v\n                }\n            if (void 0 === g)\n                for (g = a(e.length), t && (m = new t(g)), n = 0; n < g; ++n) E = x ? p.call(x, S, e[n], n) : e[n], t ? (d.value = E, h(m, n, d)) : m[n] = E;\n            return t && (d.value = null, m.length = g), m\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(693)() ? Symbol : n(694)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {\n            object: !0,\n            symbol: !0\n        };\n        e.exports = function() {\n            var e;\n            if (\"function\" != typeof Symbol) return !1;\n            e = Symbol(\"test symbol\");\n            try {\n                String(e)\n            } catch (e) {\n                return !1\n            }\n            return !!r[typeof Symbol.iterator] && (!!r[typeof Symbol.toPrimitive] && !!r[typeof Symbol.toStringTag])\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i, a, u = n(143),\n            s = n(695),\n            l = Object.create,\n            c = Object.defineProperties,\n            f = Object.defineProperty,\n            p = Object.prototype,\n            d = l(null);\n        if (\"function\" == typeof Symbol) {\n            r = Symbol;\n            try {\n                String(r()), a = !0\n            } catch (e) {}\n        }\n        var h, v = (h = l(null), function(e) {\n            for (var t, n, r = 0; h[e + (r || \"\")];) ++r;\n            return h[e += r || \"\"] = !0, f(p, t = \"@@\" + e, u.gs(null, function(e) {\n                n || (n = !0, f(this, t, u(e)), n = !1)\n            })), t\n        });\n        i = function(e) {\n            if (this instanceof i) throw new TypeError(\"Symbol is not a constructor\");\n            return o(e)\n        }, e.exports = o = function e(t) {\n            var n;\n            if (this instanceof e) throw new TypeError(\"Symbol is not a constructor\");\n            return a ? r(t) : (n = l(i.prototype), t = void 0 === t ? \"\" : String(t), c(n, {\n                __description__: u(\"\", t),\n                __name__: u(\"\", v(t))\n            }))\n        }, c(o, {\n            for: u(function(e) {\n                return d[e] ? d[e] : d[e] = o(String(e))\n            }),\n            keyFor: u(function(e) {\n                var t;\n                for (t in s(e), d)\n                    if (d[t] === e) return t\n            }),\n            hasInstance: u(\"\", r && r.hasInstance || o(\"hasInstance\")),\n            isConcatSpreadable: u(\"\", r && r.isConcatSpreadable || o(\"isConcatSpreadable\")),\n            iterator: u(\"\", r && r.iterator || o(\"iterator\")),\n            match: u(\"\", r && r.match || o(\"match\")),\n            replace: u(\"\", r && r.replace || o(\"replace\")),\n            search: u(\"\", r && r.search || o(\"search\")),\n            species: u(\"\", r && r.species || o(\"species\")),\n            split: u(\"\", r && r.split || o(\"split\")),\n            toPrimitive: u(\"\", r && r.toPrimitive || o(\"toPrimitive\")),\n            toStringTag: u(\"\", r && r.toStringTag || o(\"toStringTag\")),\n            unscopables: u(\"\", r && r.unscopables || o(\"unscopables\"))\n        }), c(i.prototype, {\n            constructor: u(o),\n            toString: u(\"\", function() {\n                return this.__name__\n            })\n        }), c(o.prototype, {\n            toString: u(function() {\n                return \"Symbol (\" + s(this).__description__ + \")\"\n            }),\n            valueOf: u(function() {\n                return s(this)\n            })\n        }), f(o.prototype, o.toPrimitive, u(\"\", function() {\n            var e = s(this);\n            return \"symbol\" == typeof e ? e : e.toString()\n        })), f(o.prototype, o.toStringTag, u(\"c\", \"Symbol\")), f(i.prototype, o.toStringTag, u(\"c\", o.prototype[o.toStringTag])), f(i.prototype, o.toPrimitive, u(\"c\", o.prototype[o.toPrimitive]))\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(696);\n        e.exports = function(e) {\n            if (!r(e)) throw new TypeError(e + \" is not a symbol\");\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return !!e && (\"symbol\" == typeof e || !!e.constructor && (\"Symbol\" === e.constructor.name && \"Symbol\" === e[e.constructor.toStringTag]))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.toString,\n            o = r.call(function() {\n                return arguments\n            }());\n        e.exports = function(e) {\n            return r.call(e) === o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.toString,\n            o = r.call(n(312));\n        e.exports = function(e) {\n            return \"function\" == typeof e && r.call(e) === o\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.toString,\n            o = r.call(\"\");\n        e.exports = function(e) {\n            return \"string\" == typeof e || e && \"object\" == typeof e && (e instanceof String || r.call(e) === o) || !1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(56);\n        e.exports = function(e) {\n            var t;\n            return \"function\" == typeof e ? {\n                set: e,\n                get: e\n            } : (t = {\n                get: r(e.get)\n            }, void 0 !== e.set ? (t.set = r(e.set), e.delete && (t.delete = r(e.delete)), e.clear && (t.clear = r(e.clear)), t) : (t.set = t.get, t))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t, n, r = e.length;\n            if (!r) return \"\u0002\";\n            for (t = String(e[n = 0]); --r;) t += \"\u0001\" + e[++n];\n            return t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return e ? function(t) {\n                for (var n = String(t[0]), r = 0, o = e; --o;) n += \"\u0001\" + t[++r];\n                return n\n            } : function() {\n                return \"\"\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(198),\n            o = Object.create;\n        e.exports = function() {\n            var e = 0,\n                t = [],\n                n = o(null);\n            return {\n                get: function(e) {\n                    var n, o = 0,\n                        i = t,\n                        a = e.length;\n                    if (0 === a) return i[a] || null;\n                    if (i = i[a]) {\n                        for (; o < a - 1;) {\n                            if (-1 === (n = r.call(i[0], e[o]))) return null;\n                            i = i[1][n], ++o\n                        }\n                        return -1 === (n = r.call(i[0], e[o])) ? null : i[1][n] || null\n                    }\n                    return null\n                },\n                set: function(o) {\n                    var i, a = 0,\n                        u = t,\n                        s = o.length;\n                    if (0 === s) u[s] = ++e;\n                    else {\n                        for (u[s] || (u[s] = [\n                            [],\n                            []\n                        ]), u = u[s]; a < s - 1;) - 1 === (i = r.call(u[0], o[a])) && (i = u[0].push(o[a]) - 1, u[1].push([\n                            [],\n                            []\n                        ])), u = u[1][i], ++a; - 1 === (i = r.call(u[0], o[a])) && (i = u[0].push(o[a]) - 1), u[1][i] = ++e\n                    }\n                    return n[e] = o, e\n                },\n                delete: function(e) {\n                    var o, i = 0,\n                        a = t,\n                        u = n[e],\n                        s = u.length,\n                        l = [];\n                    if (0 === s) delete a[s];\n                    else if (a = a[s]) {\n                        for (; i < s - 1;) {\n                            if (-1 === (o = r.call(a[0], u[i]))) return;\n                            l.push(a, o), a = a[1][o], ++i\n                        }\n                        if (-1 === (o = r.call(a[0], u[i]))) return;\n                        for (e = a[1][o], a[0].splice(o, 1), a[1].splice(o, 1); !a[0].length && l.length;) o = l.pop(), (a = l.pop())[0].splice(o, 1), a[1].splice(o, 1)\n                    }\n                    delete n[e]\n                },\n                clear: function() {\n                    t = [], n = o(null)\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(705)() ? Number.isNaN : n(706)\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function() {\n            var e = Number.isNaN;\n            return \"function\" == typeof e && (!e({}) && e(NaN) && !e(34))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return e != e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(198);\n        e.exports = function() {\n            var e = 0,\n                t = [],\n                n = [];\n            return {\n                get: function(e) {\n                    var o = r.call(t, e[0]);\n                    return -1 === o ? null : n[o]\n                },\n                set: function(r) {\n                    return t.push(r[0]), n.push(++e), e\n                },\n                delete: function(e) {\n                    var o = r.call(n, e); - 1 !== o && (t.splice(o, 1), n.splice(o, 1))\n                },\n                clear: function() {\n                    t = [], n = []\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(198),\n            o = Object.create;\n        e.exports = function(e) {\n            var t = 0,\n                n = [\n                    [],\n                    []\n                ],\n                i = o(null);\n            return {\n                get: function(t) {\n                    for (var o, i = 0, a = n; i < e - 1;) {\n                        if (-1 === (o = r.call(a[0], t[i]))) return null;\n                        a = a[1][o], ++i\n                    }\n                    return -1 === (o = r.call(a[0], t[i])) ? null : a[1][o] || null\n                },\n                set: function(o) {\n                    for (var a, u = 0, s = n; u < e - 1;) - 1 === (a = r.call(s[0], o[u])) && (a = s[0].push(o[u]) - 1, s[1].push([\n                        [],\n                        []\n                    ])), s = s[1][a], ++u;\n                    return -1 === (a = r.call(s[0], o[u])) && (a = s[0].push(o[u]) - 1), s[1][a] = ++t, i[t] = o, t\n                },\n                delete: function(t) {\n                    for (var o, a = 0, u = n, s = [], l = i[t]; a < e - 1;) {\n                        if (-1 === (o = r.call(u[0], l[a]))) return;\n                        s.push(u, o), u = u[1][o], ++a\n                    }\n                    if (-1 !== (o = r.call(u[0], l[a]))) {\n                        for (t = u[1][o], u[0].splice(o, 1), u[1].splice(o, 1); !u[0].length && s.length;) o = s.pop(), (u = s.pop())[0].splice(o, 1), u[1].splice(o, 1);\n                        delete i[t]\n                    }\n                },\n                clear: function() {\n                    n = [\n                        [],\n                        []\n                    ], i = o(null)\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(197),\n            o = n(317),\n            i = n(316),\n            a = n(315),\n            u = n(199),\n            s = Array.prototype.slice,\n            l = Function.prototype.apply,\n            c = Object.create;\n        n(68).async = function(e, t) {\n            var n, f, p, d = c(null),\n                h = c(null),\n                v = t.memoized,\n                m = t.original;\n            t.memoized = a(function(e) {\n                var t = arguments,\n                    r = t[t.length - 1];\n                return \"function\" == typeof r && (n = r, t = s.call(t, 0, -1)), v.apply(f = this, p = t)\n            }, v);\n            try {\n                i(t.memoized, v)\n            } catch (e) {}\n            t.on(\"get\", function(e) {\n                var r, o, i;\n                if (n) {\n                    if (d[e]) return \"function\" == typeof d[e] ? d[e] = [d[e], n] : d[e].push(n), void(n = null);\n                    r = n, o = f, i = p, n = f = p = null, u(function() {\n                        var a;\n                        hasOwnProperty.call(h, e) ? (a = h[e], t.emit(\"getasync\", e, i, o), l.call(r, a.context, a.args)) : (n = r, f = o, p = i, v.apply(o, i))\n                    })\n                }\n            }), t.original = function() {\n                var e, o, i, a;\n                return n ? (e = r(arguments), o = function e(n) {\n                    var o, i, s = e.id;\n                    if (null != s) {\n                        if (delete e.id, o = d[s], delete d[s], o) return i = r(arguments), t.has(s) && (n ? t.delete(s) : (h[s] = {\n                            context: this,\n                            args: i\n                        }, t.emit(\"setasync\", s, \"function\" == typeof o ? 1 : o.length))), \"function\" == typeof o ? a = l.call(o, this, i) : o.forEach(function(e) {\n                            a = l.call(e, this, i)\n                        }, this), a\n                    } else u(l.bind(e, this, arguments))\n                }, i = n, n = f = p = null, e.push(o), a = l.call(m, this, e), o.cb = i, n = o, a) : l.call(m, this, arguments)\n            }, t.on(\"set\", function(e) {\n                n ? (d[e] ? \"function\" == typeof d[e] ? d[e] = [d[e], n.cb] : d[e].push(n.cb) : d[e] = n.cb, delete n.cb, n.id = e, n = null) : t.delete(e)\n            }), t.on(\"delete\", function(e) {\n                var n;\n                hasOwnProperty.call(d, e) || h[e] && (n = h[e], delete h[e], t.emit(\"deleteasync\", e, s.call(n.args, 1)))\n            }), t.on(\"clear\", function() {\n                var e = h;\n                h = c(null), t.emit(\"clearasync\", o(e, function(e) {\n                    return s.call(e.args, 1)\n                }))\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(317),\n            o = n(711),\n            i = n(712),\n            a = n(714),\n            u = n(318),\n            s = n(199),\n            l = Object.create,\n            c = o(\"then\", \"then:finally\", \"done\", \"done:finally\");\n        n(68).promise = function(e, t) {\n            var n = l(null),\n                o = l(null),\n                f = l(null);\n            if (!0 === e) e = null;\n            else if (e = i(e), !c[e]) throw new TypeError(\"'\" + a(e) + \"' is not valid promise mode\");\n            t.on(\"set\", function(r, i, a) {\n                var l = !1;\n                if (!u(a)) return o[r] = a, void t.emit(\"setasync\", r, 1);\n                n[r] = 1, f[r] = a;\n                var c = function(e) {\n                        var i = n[r];\n                        if (l) throw new Error(\"Memoizee error: Detected unordered then|done & finally resolution, which in turn makes proper detection of success/failure impossible (when in 'done:finally' mode)\\nConsider to rely on 'then' or 'done' mode instead.\");\n                        i && (delete n[r], o[r] = e, t.emit(\"setasync\", r, i))\n                    },\n                    p = function() {\n                        l = !0, n[r] && (delete n[r], delete f[r], t.delete(r))\n                    },\n                    d = e;\n                if (d || (d = \"then\"), \"then\" === d) a.then(function(e) {\n                    s(c.bind(this, e))\n                }, function() {\n                    s(p)\n                });\n                else if (\"done\" === d) {\n                    if (\"function\" != typeof a.done) throw new Error(\"Memoizee error: Retrieved promise does not implement 'done' in 'done' mode\");\n                    a.done(c, p)\n                } else if (\"done:finally\" === d) {\n                    if (\"function\" != typeof a.done) throw new Error(\"Memoizee error: Retrieved promise does not implement 'done' in 'done:finally' mode\");\n                    if (\"function\" != typeof a.finally) throw new Error(\"Memoizee error: Retrieved promise does not implement 'finally' in 'done:finally' mode\");\n                    a.done(c), a.finally(p)\n                }\n            }), t.on(\"get\", function(e, r, o) {\n                var i;\n                if (n[e]) ++n[e];\n                else {\n                    i = f[e];\n                    var a = function() {\n                        t.emit(\"getasync\", e, r, o)\n                    };\n                    u(i) ? \"function\" == typeof i.done ? i.done(a) : i.then(function() {\n                        s(a)\n                    }) : a()\n                }\n            }), t.on(\"delete\", function(e) {\n                if (delete f[e], n[e]) delete n[e];\n                else if (hasOwnProperty.call(o, e)) {\n                    var r = o[e];\n                    delete o[e], t.emit(\"deleteasync\", e, [r])\n                }\n            }), t.on(\"clear\", function() {\n                var e = o;\n                o = l(null), n = l(null), f = l(null), t.emit(\"clearasync\", r(e, function(e) {\n                    return [e]\n                }))\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Array.prototype.forEach,\n            o = Object.create;\n        e.exports = function(e) {\n            var t = o(null);\n            return r.call(arguments, function(e) {\n                t[e] = !0\n            }), t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(82),\n            o = n(713);\n        e.exports = function(e) {\n            return o(r(e))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(196);\n        e.exports = function(e) {\n            try {\n                return e && r(e.toString) ? e.toString() : String(e)\n            } catch (e) {\n                throw new TypeError(\"Passed argument cannot be stringifed\")\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(715),\n            o = /[\\n\\r\\u2028\\u2029]/g;\n        e.exports = function(e) {\n            var t = r(e);\n            return t.length > 100 && (t = t.slice(0, 99) + \"…\"), t = t.replace(o, function(e) {\n                return JSON.stringify(e).slice(1, -1)\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(196);\n        e.exports = function(e) {\n            try {\n                return e && r(e.toString) ? e.toString() : String(e)\n            } catch (e) {\n                return \"[Non-coercible (to string) value]\"\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(56),\n            o = n(142),\n            i = n(68),\n            a = Function.prototype.apply;\n        i.dispose = function(e, t, n) {\n            var u;\n            if (r(e), n.async && i.async || n.promise && i.promise) return t.on(\"deleteasync\", u = function(t, n) {\n                a.call(e, null, n)\n            }), void t.on(\"clearasync\", function(e) {\n                o(e, function(e, t) {\n                    u(t, e)\n                })\n            });\n            t.on(\"delete\", u = function(t, n) {\n                e(n)\n            }), t.on(\"clear\", function(e) {\n                o(e, function(e, t) {\n                    u(t, e)\n                })\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(197),\n            o = n(142),\n            i = n(199),\n            a = n(318),\n            u = n(718),\n            s = n(68),\n            l = Function.prototype,\n            c = Math.max,\n            f = Math.min,\n            p = Object.create;\n        s.maxAge = function(e, t, n) {\n            var d, h, v, m;\n            (e = u(e)) && (d = p(null), h = n.async && s.async || n.promise && s.promise ? \"async\" : \"\", t.on(\"set\" + h, function(n) {\n                d[n] = setTimeout(function() {\n                    t.delete(n)\n                }, e), \"function\" == typeof d[n].unref && d[n].unref(), m && (m[n] && \"nextTick\" !== m[n] && clearTimeout(m[n]), m[n] = setTimeout(function() {\n                    delete m[n]\n                }, v), \"function\" == typeof m[n].unref && m[n].unref())\n            }), t.on(\"delete\" + h, function(e) {\n                clearTimeout(d[e]), delete d[e], m && (\"nextTick\" !== m[e] && clearTimeout(m[e]), delete m[e])\n            }), n.preFetch && (v = !0 === n.preFetch || isNaN(n.preFetch) ? .333 : c(f(Number(n.preFetch), 1), 0)) && (m = {}, v = (1 - v) * e, t.on(\"get\" + h, function(e, o, u) {\n                m[e] || (m[e] = \"nextTick\", i(function() {\n                    var i;\n                    \"nextTick\" === m[e] && (delete m[e], t.delete(e), n.async && (o = r(o)).push(l), i = t.memoized.apply(u, o), n.promise && a(i) && (\"function\" == typeof i.done ? i.done(l, l) : i.then(l, l)))\n                }))\n            })), t.on(\"clear\" + h, function() {\n                o(d, function(e) {\n                    clearTimeout(e)\n                }), d = {}, m && (o(m, function(e) {\n                    \"nextTick\" !== e && clearTimeout(e)\n                }), m = {})\n            }))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(67),\n            o = n(719);\n        e.exports = function(e) {\n            if ((e = r(e)) > o) throw new TypeError(e + \" exceeds maximum possible timeout\");\n            return e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = 2147483647\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(67),\n            o = n(721),\n            i = n(68);\n        i.max = function(e, t, n) {\n            var a, u, s;\n            (e = r(e)) && (u = o(e), a = n.async && i.async || n.promise && i.promise ? \"async\" : \"\", t.on(\"set\" + a, s = function(e) {\n                void 0 !== (e = u.hit(e)) && t.delete(e)\n            }), t.on(\"get\" + a, s), t.on(\"delete\" + a, u.delete), t.on(\"clear\" + a, u.clear))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(67),\n            o = Object.create,\n            i = Object.prototype.hasOwnProperty;\n        e.exports = function(e) {\n            var t, n = 0,\n                a = 1,\n                u = o(null),\n                s = o(null),\n                l = 0;\n            return e = r(e), {\n                hit: function(r) {\n                    var o = s[r],\n                        c = ++l;\n                    if (u[c] = r, s[r] = c, !o) {\n                        if (++n <= e) return;\n                        return r = u[a], t(r), r\n                    }\n                    if (delete u[o], a === o)\n                        for (; !i.call(u, ++a);) continue\n                },\n                delete: t = function(e) {\n                    var t = s[e];\n                    if (t && (delete u[t], delete s[e], --n, a === t)) {\n                        if (!n) return l = 0, void(a = 1);\n                        for (; !i.call(u, ++a);) continue\n                    }\n                },\n                clear: function() {\n                    n = 0, a = 1, u = o(null), s = o(null), l = 0\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(143),\n            o = n(68),\n            i = Object.create,\n            a = Object.defineProperties;\n        o.refCounter = function(e, t, n) {\n            var u, s;\n            u = i(null), s = n.async && o.async || n.promise && o.promise ? \"async\" : \"\", t.on(\"set\" + s, function(e, t) {\n                u[e] = t || 1\n            }), t.on(\"get\" + s, function(e) {\n                ++u[e]\n            }), t.on(\"delete\" + s, function(e) {\n                delete u[e]\n            }), t.on(\"clear\" + s, function() {\n                u = {}\n            }), a(t.memoized, {\n                deleteRef: r(function() {\n                    var e = t.get(arguments);\n                    return null === e ? null : u[e] ? !--u[e] && (t.delete(e), !0) : null\n                }),\n                getRefCount: r(function() {\n                    var e = t.get(arguments);\n                    return null === e ? 0 : u[e] ? u[e] : 0\n                })\n            })\n        }\n    }, function(e, t, n) {\n        (function(t) {\n            var n, r;\n            n = void 0 !== t ? t : this, r = function(e) {\n                if (e.CSS && e.CSS.escape) return e.CSS.escape;\n                var t = function(e) {\n                    if (0 == arguments.length) throw new TypeError(\"`CSS.escape` requires an argument.\");\n                    for (var t, n = String(e), r = n.length, o = -1, i = \"\", a = n.charCodeAt(0); ++o < r;) 0 != (t = n.charCodeAt(o)) ? i += t >= 1 && t <= 31 || 127 == t || 0 == o && t >= 48 && t <= 57 || 1 == o && t >= 48 && t <= 57 && 45 == a ? \"\\\\\" + t.toString(16) + \" \" : (0 != o || 1 != r || 45 != t) && (t >= 128 || 45 == t || 95 == t || t >= 48 && t <= 57 || t >= 65 && t <= 90 || t >= 97 && t <= 122) ? n.charAt(o) : \"\\\\\" + n.charAt(o) : i += \"�\";\n                    return i\n                };\n                return e.CSS || (e.CSS = {}), e.CSS.escape = t, t\n            }, e.exports = r(n)\n        }).call(t, n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            return [r.default, o.default]\n        };\n        var r = i(n(725)),\n            o = i(n(421));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function() {\n            var e = {\n                    components: {\n                        App: y.default,\n                        authorizationPopup: b.default,\n                        authorizeBtn: _.default,\n                        authorizeOperationBtn: w.default,\n                        auths: E.default,\n                        AuthItem: x.default,\n                        authError: S.default,\n                        oauth2: A.default,\n                        apiKeyAuth: C.default,\n                        basicAuth: k.default,\n                        clear: O.default,\n                        liveResponse: P.default,\n                        info: Q.default,\n                        InfoContainer: ee.default,\n                        JumpToPath: te.default,\n                        onlineValidatorBadge: T.default,\n                        operations: M.default,\n                        operation: j.default,\n                        OperationSummary: N.default,\n                        OperationSummaryMethod: R.default,\n                        OperationSummaryPath: D.default,\n                        highlightCode: q.default,\n                        responses: F.default,\n                        response: z.default,\n                        responseBody: B.default,\n                        parameters: V.default,\n                        parameterRow: J.default,\n                        execute: Y.default,\n                        headers: K.default,\n                        errors: G.default,\n                        contentType: $.default,\n                        overview: Z.default,\n                        footer: ne.default,\n                        FilterContainer: re.default,\n                        ParamBody: oe.default,\n                        curl: ie.default,\n                        schemes: ae.default,\n                        SchemesContainer: ue.default,\n                        modelExample: le.default,\n                        ModelWrapper: ce.default,\n                        ModelCollapse: se.default,\n                        Model: fe.default,\n                        Models: pe.default,\n                        EnumModel: de.default,\n                        ObjectModel: he.default,\n                        ArrayModel: ve.default,\n                        PrimitiveModel: me.default,\n                        Property: ge.default,\n                        TryItOutButton: ye.default,\n                        Markdown: xe.default,\n                        BaseLayout: Se.default,\n                        VersionPragmaFilter: be.default,\n                        VersionStamp: _e.default,\n                        OperationExt: L.default,\n                        OperationExtRow: U.default,\n                        ParameterExt: H.default,\n                        ParameterIncludeEmpty: W.default,\n                        OperationTag: I.default,\n                        OperationContainer: g.default,\n                        DeepLink: we.default,\n                        InfoUrl: X.InfoUrl,\n                        InfoBasePath: X.InfoBasePath,\n                        SvgAssets: Ee.default\n                    }\n                },\n                t = {\n                    components: Ce\n                },\n                n = {\n                    components: ke\n                };\n            return [d.default, f.default, s.default, a.default, i.default, r.default, o.default, u.default, e, t, l.default, n, c.default, p.default, h.default, v.default, m.default]\n        };\n        var r = Oe(n(319)),\n            o = Oe(n(326)),\n            i = Oe(n(332)),\n            a = Oe(n(347)),\n            u = Oe(n(384)),\n            s = Oe(n(385)),\n            l = Oe(n(386)),\n            c = Oe(n(393)),\n            f = Oe(n(397)),\n            p = Oe(n(398)),\n            d = Oe(n(399)),\n            h = Oe(n(403)),\n            v = Oe(n(408)),\n            m = Oe(n(410)),\n            g = Oe(n(936)),\n            y = Oe(n(937)),\n            b = Oe(n(938)),\n            _ = Oe(n(939)),\n            w = Oe(n(940)),\n            E = Oe(n(941)),\n            x = Oe(n(942)),\n            S = Oe(n(943)),\n            C = Oe(n(944)),\n            k = Oe(n(945)),\n            A = Oe(n(946)),\n            O = Oe(n(948)),\n            P = Oe(n(949)),\n            T = Oe(n(950)),\n            M = Oe(n(951)),\n            I = Oe(n(952)),\n            j = Oe(n(953)),\n            N = Oe(n(954)),\n            R = Oe(n(955)),\n            D = Oe(n(956)),\n            L = Oe(n(957)),\n            U = Oe(n(958)),\n            q = Oe(n(959)),\n            F = Oe(n(961)),\n            z = Oe(n(962)),\n            B = Oe(n(963)),\n            V = Oe(n(967)),\n            H = Oe(n(968)),\n            W = Oe(n(969)),\n            J = Oe(n(970)),\n            Y = Oe(n(971)),\n            K = Oe(n(972)),\n            G = Oe(n(973)),\n            $ = Oe(n(974)),\n            Z = Oe(n(975)),\n            X = n(976),\n            Q = Oe(X),\n            ee = Oe(n(977)),\n            te = Oe(n(978)),\n            ne = Oe(n(979)),\n            re = Oe(n(980)),\n            oe = Oe(n(981)),\n            ie = Oe(n(982)),\n            ae = Oe(n(984)),\n            ue = Oe(n(985)),\n            se = Oe(n(986)),\n            le = Oe(n(987)),\n            ce = Oe(n(988)),\n            fe = Oe(n(413)),\n            pe = Oe(n(990)),\n            de = Oe(n(991)),\n            he = Oe(n(992)),\n            ve = Oe(n(993)),\n            me = Oe(n(994)),\n            ge = Oe(n(995)),\n            ye = Oe(n(996)),\n            be = Oe(n(997)),\n            _e = Oe(n(998)),\n            we = Oe(n(999)),\n            Ee = Oe(n(1e3)),\n            xe = Oe(n(414)),\n            Se = Oe(n(1053)),\n            Ce = Ae(n(412)),\n            ke = Ae(n(1054));\n\n        function Ae(e) {\n            if (e && e.__esModule) return e;\n            var t = {};\n            if (null != e)\n                for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n            return t.default = e, t\n        }\n\n        function Oe(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(283),\n            o = n(303),\n            i = n(133),\n            a = n(727),\n            u = n(24);\n        e.exports = function(e, t, n) {\n            var s = u(e) ? r : a,\n                l = arguments.length < 3;\n            return s(e, i(t, 4), n, l, o)\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n, r, o) {\n            return o(e, function(e, o, i) {\n                n = r ? (r = !1, e) : t(n, e, o, i)\n            }), n\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(729),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(98), n(730), e.exports = n(15).Array.from\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(49),\n            o = n(20),\n            i = n(72),\n            a = n(329),\n            u = n(330),\n            s = n(115),\n            l = n(731),\n            c = n(164);\n        o(o.S + o.F * !n(331)(function(e) {\n            Array.from(e)\n        }), \"Array\", {\n            from: function(e) {\n                var t, n, o, f, p = i(e),\n                    d = \"function\" == typeof this ? this : Array,\n                    h = arguments.length,\n                    v = h > 1 ? arguments[1] : void 0,\n                    m = void 0 !== v,\n                    g = 0,\n                    y = c(p);\n                if (m && (v = r(v, h > 2 ? arguments[2] : void 0, 2)), void 0 == y || d == Array && u(y))\n                    for (n = new d(t = s(p.length)); t > g; g++) l(n, g, m ? v(p[g], g) : p[g]);\n                else\n                    for (f = y.call(p), n = new d; !(o = f.next()).done; g++) l(n, g, m ? a(f, v, [o.value, g], !0) : o.value);\n                return n.length = g, n\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(40),\n            o = n(95);\n        e.exports = function(e, t, n) {\n            t in e ? r.f(e, t, o(0, n)) : e[t] = n\n        }\n    }, function(e, t, n) {\n        n(177), n(98), n(92), n(733), n(737), n(738), e.exports = n(15).Promise\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o, i, a, u = n(114),\n            s = n(21),\n            l = n(49),\n            c = n(165),\n            f = n(20),\n            p = n(28),\n            d = n(94),\n            h = n(204),\n            v = n(144),\n            m = n(334),\n            g = n(335).set,\n            y = n(735)(),\n            b = n(205),\n            _ = n(336),\n            w = n(337),\n            E = s.TypeError,\n            x = s.process,\n            S = s.Promise,\n            C = \"process\" == c(x),\n            k = function() {},\n            A = o = b.f,\n            O = !! function() {\n                try {\n                    var e = S.resolve(1),\n                        t = (e.constructor = {})[n(19)(\"species\")] = function(e) {\n                            e(k, k)\n                        };\n                    return (C || \"function\" == typeof PromiseRejectionEvent) && e.then(k) instanceof t\n                } catch (e) {}\n            }(),\n            P = function(e) {\n                var t;\n                return !(!p(e) || \"function\" != typeof(t = e.then)) && t\n            },\n            T = function(e, t) {\n                if (!e._n) {\n                    e._n = !0;\n                    var n = e._c;\n                    y(function() {\n                        for (var r = e._v, o = 1 == e._s, i = 0, a = function(t) {\n                            var n, i, a, u = o ? t.ok : t.fail,\n                                s = t.resolve,\n                                l = t.reject,\n                                c = t.domain;\n                            try {\n                                u ? (o || (2 == e._h && j(e), e._h = 1), !0 === u ? n = r : (c && c.enter(), n = u(r), c && (c.exit(), a = !0)), n === t.promise ? l(E(\"Promise-chain cycle\")) : (i = P(n)) ? i.call(n, s, l) : s(n)) : l(r)\n                            } catch (e) {\n                                c && !a && c.exit(), l(e)\n                            }\n                        }; n.length > i;) a(n[i++]);\n                        e._c = [], e._n = !1, t && !e._h && M(e)\n                    })\n                }\n            },\n            M = function(e) {\n                g.call(s, function() {\n                    var t, n, r, o = e._v,\n                        i = I(e);\n                    if (i && (t = _(function() {\n                        C ? x.emit(\"unhandledRejection\", o, e) : (n = s.onunhandledrejection) ? n({\n                            promise: e,\n                            reason: o\n                        }) : (r = s.console) && r.error && r.error(\"Unhandled promise rejection\", o)\n                    }), e._h = C || I(e) ? 2 : 1), e._a = void 0, i && t.e) throw t.v\n                })\n            },\n            I = function(e) {\n                return 1 !== e._h && 0 === (e._a || e._c).length\n            },\n            j = function(e) {\n                g.call(s, function() {\n                    var t;\n                    C ? x.emit(\"rejectionHandled\", e) : (t = s.onrejectionhandled) && t({\n                        promise: e,\n                        reason: e._v\n                    })\n                })\n            },\n            N = function(e) {\n                var t = this;\n                t._d || (t._d = !0, (t = t._w || t)._v = e, t._s = 2, t._a || (t._a = t._c.slice()), T(t, !0))\n            },\n            R = function(e) {\n                var t, n = this;\n                if (!n._d) {\n                    n._d = !0, n = n._w || n;\n                    try {\n                        if (n === e) throw E(\"Promise can't be resolved itself\");\n                        (t = P(e)) ? y(function() {\n                            var r = {\n                                _w: n,\n                                _d: !1\n                            };\n                            try {\n                                t.call(e, l(R, r, 1), l(N, r, 1))\n                            } catch (e) {\n                                N.call(r, e)\n                            }\n                        }): (n._v = e, n._s = 1, T(n, !1))\n                    } catch (e) {\n                        N.call({\n                            _w: n,\n                            _d: !1\n                        }, e)\n                    }\n                }\n            };\n        O || (S = function(e) {\n            h(this, S, \"Promise\", \"_h\"), d(e), r.call(this);\n            try {\n                e(l(R, this, 1), l(N, this, 1))\n            } catch (e) {\n                N.call(this, e)\n            }\n        }, (r = function(e) {\n            this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1\n        }).prototype = n(206)(S.prototype, {\n            then: function(e, t) {\n                var n = A(m(this, S));\n                return n.ok = \"function\" != typeof e || e, n.fail = \"function\" == typeof t && t, n.domain = C ? x.domain : void 0, this._c.push(n), this._a && this._a.push(n), this._s && T(this, !1), n.promise\n            },\n            catch: function(e) {\n                return this.then(void 0, e)\n            }\n        }), i = function() {\n            var e = new r;\n            this.promise = e, this.resolve = l(R, e, 1), this.reject = l(N, e, 1)\n        }, b.f = A = function(e) {\n            return e === S || e === a ? new i(e) : o(e)\n        }), f(f.G + f.W + f.F * !O, {\n            Promise: S\n        }), n(97)(S, \"Promise\"), n(736)(\"Promise\"), a = n(15).Promise, f(f.S + f.F * !O, \"Promise\", {\n            reject: function(e) {\n                var t = A(this);\n                return (0, t.reject)(e), t.promise\n            }\n        }), f(f.S + f.F * (u || !O), \"Promise\", {\n            resolve: function(e) {\n                return w(u && this === a ? S : this, e)\n            }\n        }), f(f.S + f.F * !(O && n(331)(function(e) {\n            S.all(e).catch(k)\n        })), \"Promise\", {\n            all: function(e) {\n                var t = this,\n                    n = A(t),\n                    r = n.resolve,\n                    o = n.reject,\n                    i = _(function() {\n                        var n = [],\n                            i = 0,\n                            a = 1;\n                        v(e, !1, function(e) {\n                            var u = i++,\n                                s = !1;\n                            n.push(void 0), a++, t.resolve(e).then(function(e) {\n                                s || (s = !0, n[u] = e, --a || r(n))\n                            }, o)\n                        }), --a || r(n)\n                    });\n                return i.e && o(i.v), n.promise\n            },\n            race: function(e) {\n                var t = this,\n                    n = A(t),\n                    r = n.reject,\n                    o = _(function() {\n                        v(e, !1, function(e) {\n                            t.resolve(e).then(n.resolve, r)\n                        })\n                    });\n                return o.e && r(o.v), n.promise\n            }\n        })\n    }, function(e, t) {\n        e.exports = function(e, t, n) {\n            var r = void 0 === n;\n            switch (t.length) {\n                case 0:\n                    return r ? e() : e.call(n);\n                case 1:\n                    return r ? e(t[0]) : e.call(n, t[0]);\n                case 2:\n                    return r ? e(t[0], t[1]) : e.call(n, t[0], t[1]);\n                case 3:\n                    return r ? e(t[0], t[1], t[2]) : e.call(n, t[0], t[1], t[2]);\n                case 4:\n                    return r ? e(t[0], t[1], t[2], t[3]) : e.call(n, t[0], t[1], t[2], t[3])\n            }\n            return e.apply(n, t)\n        }\n    }, function(e, t, n) {\n        var r = n(21),\n            o = n(335).set,\n            i = r.MutationObserver || r.WebKitMutationObserver,\n            a = r.process,\n            u = r.Promise,\n            s = \"process\" == n(93)(a);\n        e.exports = function() {\n            var e, t, n, l = function() {\n                var r, o;\n                for (s && (r = a.domain) && r.exit(); e;) {\n                    o = e.fn, e = e.next;\n                    try {\n                        o()\n                    } catch (r) {\n                        throw e ? n() : t = void 0, r\n                    }\n                }\n                t = void 0, r && r.enter()\n            };\n            if (s) n = function() {\n                a.nextTick(l)\n            };\n            else if (!i || r.navigator && r.navigator.standalone)\n                if (u && u.resolve) {\n                    var c = u.resolve();\n                    n = function() {\n                        c.then(l)\n                    }\n                } else n = function() {\n                    o.call(r, l)\n                };\n            else {\n                var f = !0,\n                    p = document.createTextNode(\"\");\n                new i(l).observe(p, {\n                    characterData: !0\n                }), n = function() {\n                    p.data = f = !f\n                }\n            }\n            return function(r) {\n                var o = {\n                    fn: r,\n                    next: void 0\n                };\n                t && (t.next = o), e || (e = o, n()), t = o\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(21),\n            o = n(15),\n            i = n(40),\n            a = n(44),\n            u = n(19)(\"species\");\n        e.exports = function(e) {\n            var t = \"function\" == typeof o[e] ? o[e] : r[e];\n            a && t && !t[u] && i.f(t, u, {\n                configurable: !0,\n                get: function() {\n                    return this\n                }\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(20),\n            o = n(15),\n            i = n(21),\n            a = n(334),\n            u = n(337);\n        r(r.P + r.R, \"Promise\", {\n            finally: function(e) {\n                var t = a(this, o.Promise || i.Promise),\n                    n = \"function\" == typeof e;\n                return this.then(n ? function(n) {\n                    return u(t, e()).then(function() {\n                        return n\n                    })\n                } : e, n ? function(n) {\n                    return u(t, e()).then(function() {\n                        throw n\n                    })\n                } : e)\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(20),\n            o = n(205),\n            i = n(336);\n        r(r.S, \"Promise\", {\n            try: function(e) {\n                var t = o.f(this),\n                    n = i(e);\n                return (n.e ? t.reject : t.resolve)(n.v), t.promise\n            }\n        })\n    }, function(e, t, n) {\n        var r = function() {\n                return this\n            }() || Function(\"return this\")(),\n            o = r.regeneratorRuntime && Object.getOwnPropertyNames(r).indexOf(\"regeneratorRuntime\") >= 0,\n            i = o && r.regeneratorRuntime;\n        if (r.regeneratorRuntime = void 0, e.exports = n(740), o) r.regeneratorRuntime = i;\n        else try {\n            delete r.regeneratorRuntime\n        } catch (e) {\n            r.regeneratorRuntime = void 0\n        }\n    }, function(e, t) {\n        ! function(t) {\n            \"use strict\";\n            var n, r = Object.prototype,\n                o = r.hasOwnProperty,\n                i = \"function\" == typeof Symbol ? Symbol : {},\n                a = i.iterator || \"@@iterator\",\n                u = i.asyncIterator || \"@@asyncIterator\",\n                s = i.toStringTag || \"@@toStringTag\",\n                l = \"object\" == typeof e,\n                c = t.regeneratorRuntime;\n            if (c) l && (e.exports = c);\n            else {\n                (c = t.regeneratorRuntime = l ? e.exports : {}).wrap = _;\n                var f = \"suspendedStart\",\n                    p = \"suspendedYield\",\n                    d = \"executing\",\n                    h = \"completed\",\n                    v = {},\n                    m = {};\n                m[a] = function() {\n                    return this\n                };\n                var g = Object.getPrototypeOf,\n                    y = g && g(g(M([])));\n                y && y !== r && o.call(y, a) && (m = y);\n                var b = S.prototype = E.prototype = Object.create(m);\n                x.prototype = b.constructor = S, S.constructor = x, S[s] = x.displayName = \"GeneratorFunction\", c.isGeneratorFunction = function(e) {\n                    var t = \"function\" == typeof e && e.constructor;\n                    return !!t && (t === x || \"GeneratorFunction\" === (t.displayName || t.name))\n                }, c.mark = function(e) {\n                    return Object.setPrototypeOf ? Object.setPrototypeOf(e, S) : (e.__proto__ = S, s in e || (e[s] = \"GeneratorFunction\")), e.prototype = Object.create(b), e\n                }, c.awrap = function(e) {\n                    return {\n                        __await: e\n                    }\n                }, C(k.prototype), k.prototype[u] = function() {\n                    return this\n                }, c.AsyncIterator = k, c.async = function(e, t, n, r) {\n                    var o = new k(_(e, t, n, r));\n                    return c.isGeneratorFunction(t) ? o : o.next().then(function(e) {\n                        return e.done ? e.value : o.next()\n                    })\n                }, C(b), b[s] = \"Generator\", b[a] = function() {\n                    return this\n                }, b.toString = function() {\n                    return \"[object Generator]\"\n                }, c.keys = function(e) {\n                    var t = [];\n                    for (var n in e) t.push(n);\n                    return t.reverse(),\n                        function n() {\n                            for (; t.length;) {\n                                var r = t.pop();\n                                if (r in e) return n.value = r, n.done = !1, n\n                            }\n                            return n.done = !0, n\n                        }\n                }, c.values = M, T.prototype = {\n                    constructor: T,\n                    reset: function(e) {\n                        if (this.prev = 0, this.next = 0, this.sent = this._sent = n, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = n, this.tryEntries.forEach(P), !e)\n                            for (var t in this) \"t\" === t.charAt(0) && o.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = n)\n                    },\n                    stop: function() {\n                        this.done = !0;\n                        var e = this.tryEntries[0].completion;\n                        if (\"throw\" === e.type) throw e.arg;\n                        return this.rval\n                    },\n                    dispatchException: function(e) {\n                        if (this.done) throw e;\n                        var t = this;\n\n                        function r(r, o) {\n                            return u.type = \"throw\", u.arg = e, t.next = r, o && (t.method = \"next\", t.arg = n), !!o\n                        }\n                        for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n                            var a = this.tryEntries[i],\n                                u = a.completion;\n                            if (\"root\" === a.tryLoc) return r(\"end\");\n                            if (a.tryLoc <= this.prev) {\n                                var s = o.call(a, \"catchLoc\"),\n                                    l = o.call(a, \"finallyLoc\");\n                                if (s && l) {\n                                    if (this.prev < a.catchLoc) return r(a.catchLoc, !0);\n                                    if (this.prev < a.finallyLoc) return r(a.finallyLoc)\n                                } else if (s) {\n                                    if (this.prev < a.catchLoc) return r(a.catchLoc, !0)\n                                } else {\n                                    if (!l) throw new Error(\"try statement without catch or finally\");\n                                    if (this.prev < a.finallyLoc) return r(a.finallyLoc)\n                                }\n                            }\n                        }\n                    },\n                    abrupt: function(e, t) {\n                        for (var n = this.tryEntries.length - 1; n >= 0; --n) {\n                            var r = this.tryEntries[n];\n                            if (r.tryLoc <= this.prev && o.call(r, \"finallyLoc\") && this.prev < r.finallyLoc) {\n                                var i = r;\n                                break\n                            }\n                        }\n                        i && (\"break\" === e || \"continue\" === e) && i.tryLoc <= t && t <= i.finallyLoc && (i = null);\n                        var a = i ? i.completion : {};\n                        return a.type = e, a.arg = t, i ? (this.method = \"next\", this.next = i.finallyLoc, v) : this.complete(a)\n                    },\n                    complete: function(e, t) {\n                        if (\"throw\" === e.type) throw e.arg;\n                        return \"break\" === e.type || \"continue\" === e.type ? this.next = e.arg : \"return\" === e.type ? (this.rval = this.arg = e.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === e.type && t && (this.next = t), v\n                    },\n                    finish: function(e) {\n                        for (var t = this.tryEntries.length - 1; t >= 0; --t) {\n                            var n = this.tryEntries[t];\n                            if (n.finallyLoc === e) return this.complete(n.completion, n.afterLoc), P(n), v\n                        }\n                    },\n                    catch: function(e) {\n                        for (var t = this.tryEntries.length - 1; t >= 0; --t) {\n                            var n = this.tryEntries[t];\n                            if (n.tryLoc === e) {\n                                var r = n.completion;\n                                if (\"throw\" === r.type) {\n                                    var o = r.arg;\n                                    P(n)\n                                }\n                                return o\n                            }\n                        }\n                        throw new Error(\"illegal catch attempt\")\n                    },\n                    delegateYield: function(e, t, r) {\n                        return this.delegate = {\n                            iterator: M(e),\n                            resultName: t,\n                            nextLoc: r\n                        }, \"next\" === this.method && (this.arg = n), v\n                    }\n                }\n            }\n\n            function _(e, t, n, r) {\n                var o = t && t.prototype instanceof E ? t : E,\n                    i = Object.create(o.prototype),\n                    a = new T(r || []);\n                return i._invoke = function(e, t, n) {\n                    var r = f;\n                    return function(o, i) {\n                        if (r === d) throw new Error(\"Generator is already running\");\n                        if (r === h) {\n                            if (\"throw\" === o) throw i;\n                            return I()\n                        }\n                        for (n.method = o, n.arg = i;;) {\n                            var a = n.delegate;\n                            if (a) {\n                                var u = A(a, n);\n                                if (u) {\n                                    if (u === v) continue;\n                                    return u\n                                }\n                            }\n                            if (\"next\" === n.method) n.sent = n._sent = n.arg;\n                            else if (\"throw\" === n.method) {\n                                if (r === f) throw r = h, n.arg;\n                                n.dispatchException(n.arg)\n                            } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n                            r = d;\n                            var s = w(e, t, n);\n                            if (\"normal\" === s.type) {\n                                if (r = n.done ? h : p, s.arg === v) continue;\n                                return {\n                                    value: s.arg,\n                                    done: n.done\n                                }\n                            }\n                            \"throw\" === s.type && (r = h, n.method = \"throw\", n.arg = s.arg)\n                        }\n                    }\n                }(e, n, a), i\n            }\n\n            function w(e, t, n) {\n                try {\n                    return {\n                        type: \"normal\",\n                        arg: e.call(t, n)\n                    }\n                } catch (e) {\n                    return {\n                        type: \"throw\",\n                        arg: e\n                    }\n                }\n            }\n\n            function E() {}\n\n            function x() {}\n\n            function S() {}\n\n            function C(e) {\n                [\"next\", \"throw\", \"return\"].forEach(function(t) {\n                    e[t] = function(e) {\n                        return this._invoke(t, e)\n                    }\n                })\n            }\n\n            function k(e) {\n                var t;\n                this._invoke = function(n, r) {\n                    function i() {\n                        return new Promise(function(t, i) {\n                            ! function t(n, r, i, a) {\n                                var u = w(e[n], e, r);\n                                if (\"throw\" !== u.type) {\n                                    var s = u.arg,\n                                        l = s.value;\n                                    return l && \"object\" == typeof l && o.call(l, \"__await\") ? Promise.resolve(l.__await).then(function(e) {\n                                        t(\"next\", e, i, a)\n                                    }, function(e) {\n                                        t(\"throw\", e, i, a)\n                                    }) : Promise.resolve(l).then(function(e) {\n                                        s.value = e, i(s)\n                                    }, a)\n                                }\n                                a(u.arg)\n                            }(n, r, t, i)\n                        })\n                    }\n                    return t = t ? t.then(i, i) : i()\n                }\n            }\n\n            function A(e, t) {\n                var r = e.iterator[t.method];\n                if (r === n) {\n                    if (t.delegate = null, \"throw\" === t.method) {\n                        if (e.iterator.return && (t.method = \"return\", t.arg = n, A(e, t), \"throw\" === t.method)) return v;\n                        t.method = \"throw\", t.arg = new TypeError(\"The iterator does not provide a 'throw' method\")\n                    }\n                    return v\n                }\n                var o = w(r, e.iterator, t.arg);\n                if (\"throw\" === o.type) return t.method = \"throw\", t.arg = o.arg, t.delegate = null, v;\n                var i = o.arg;\n                return i ? i.done ? (t[e.resultName] = i.value, t.next = e.nextLoc, \"return\" !== t.method && (t.method = \"next\", t.arg = n), t.delegate = null, v) : i : (t.method = \"throw\", t.arg = new TypeError(\"iterator result is not an object\"), t.delegate = null, v)\n            }\n\n            function O(e) {\n                var t = {\n                    tryLoc: e[0]\n                };\n                1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t)\n            }\n\n            function P(e) {\n                var t = e.completion || {};\n                t.type = \"normal\", delete t.arg, e.completion = t\n            }\n\n            function T(e) {\n                this.tryEntries = [{\n                    tryLoc: \"root\"\n                }], e.forEach(O, this), this.reset(!0)\n            }\n\n            function M(e) {\n                if (e) {\n                    var t = e[a];\n                    if (t) return t.call(e);\n                    if (\"function\" == typeof e.next) return e;\n                    if (!isNaN(e.length)) {\n                        var r = -1,\n                            i = function t() {\n                                for (; ++r < e.length;)\n                                    if (o.call(e, r)) return t.value = e[r], t.done = !1, t;\n                                return t.value = n, t.done = !0, t\n                            };\n                        return i.next = i\n                    }\n                }\n                return {\n                    next: I\n                }\n            }\n\n            function I() {\n                return {\n                    value: n,\n                    done: !0\n                }\n            }\n        }(function() {\n            return this\n        }() || Function(\"return this\")())\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(742),\n            o = n(760);\n\n        function i(e) {\n            return function() {\n                throw new Error(\"Function \" + e + \" is deprecated and cannot be used.\")\n            }\n        }\n        e.exports.Type = n(16), e.exports.Schema = n(86), e.exports.FAILSAFE_SCHEMA = n(208), e.exports.JSON_SCHEMA = n(341), e.exports.CORE_SCHEMA = n(340), e.exports.DEFAULT_SAFE_SCHEMA = n(108), e.exports.DEFAULT_FULL_SCHEMA = n(145), e.exports.load = r.load, e.exports.loadAll = r.loadAll, e.exports.safeLoad = r.safeLoad, e.exports.safeLoadAll = r.safeLoadAll, e.exports.dump = o.dump, e.exports.safeDump = o.safeDump, e.exports.YAMLException = n(107), e.exports.MINIMAL_SCHEMA = n(208), e.exports.SAFE_SCHEMA = n(108), e.exports.DEFAULT_SCHEMA = n(145), e.exports.scan = i(\"scan\"), e.exports.parse = i(\"parse\"), e.exports.compose = i(\"compose\"), e.exports.addConstructor = i(\"addConstructor\")\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(85),\n            o = n(107),\n            i = n(743),\n            a = n(108),\n            u = n(145),\n            s = Object.prototype.hasOwnProperty,\n            l = 1,\n            c = 2,\n            f = 3,\n            p = 4,\n            d = 1,\n            h = 2,\n            v = 3,\n            m = /[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F-\\x84\\x86-\\x9F\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/,\n            g = /[\\x85\\u2028\\u2029]/,\n            y = /[,\\[\\]\\{\\}]/,\n            b = /^(?:!|!!|![a-z\\-]+!)$/i,\n            _ = /^(?:!|[^,\\[\\]\\{\\}])(?:%[0-9a-f]{2}|[0-9a-z\\-#;\\/\\?:@&=\\+\\$,_\\.!~\\*'\\(\\)\\[\\]])*$/i;\n\n        function w(e) {\n            return 10 === e || 13 === e\n        }\n\n        function E(e) {\n            return 9 === e || 32 === e\n        }\n\n        function x(e) {\n            return 9 === e || 32 === e || 10 === e || 13 === e\n        }\n\n        function S(e) {\n            return 44 === e || 91 === e || 93 === e || 123 === e || 125 === e\n        }\n\n        function C(e) {\n            var t;\n            return 48 <= e && e <= 57 ? e - 48 : 97 <= (t = 32 | e) && t <= 102 ? t - 97 + 10 : -1\n        }\n\n        function k(e) {\n            return 48 === e ? \"\\0\" : 97 === e ? \"\u0007\" : 98 === e ? \"\\b\" : 116 === e ? \"\\t\" : 9 === e ? \"\\t\" : 110 === e ? \"\\n\" : 118 === e ? \"\\v\" : 102 === e ? \"\\f\" : 114 === e ? \"\\r\" : 101 === e ? \"\u001b\" : 32 === e ? \" \" : 34 === e ? '\"' : 47 === e ? \"/\" : 92 === e ? \"\\\\\" : 78 === e ? \"\" : 95 === e ? \" \" : 76 === e ? \"\\u2028\" : 80 === e ? \"\\u2029\" : \"\"\n        }\n\n        function A(e) {\n            return e <= 65535 ? String.fromCharCode(e) : String.fromCharCode(55296 + (e - 65536 >> 10), 56320 + (e - 65536 & 1023))\n        }\n        for (var O = new Array(256), P = new Array(256), T = 0; T < 256; T++) O[T] = k(T) ? 1 : 0, P[T] = k(T);\n\n        function M(e, t) {\n            return new o(t, new i(e.filename, e.input, e.position, e.line, e.position - e.lineStart))\n        }\n\n        function I(e, t) {\n            throw M(e, t)\n        }\n\n        function j(e, t) {\n            e.onWarning && e.onWarning.call(null, M(e, t))\n        }\n        var N = {\n            YAML: function(e, t, n) {\n                var r, o, i;\n                null !== e.version && I(e, \"duplication of %YAML directive\"), 1 !== n.length && I(e, \"YAML directive accepts exactly one argument\"), null === (r = /^([0-9]+)\\.([0-9]+)$/.exec(n[0])) && I(e, \"ill-formed argument of the YAML directive\"), o = parseInt(r[1], 10), i = parseInt(r[2], 10), 1 !== o && I(e, \"unacceptable YAML version of the document\"), e.version = n[0], e.checkLineBreaks = i < 2, 1 !== i && 2 !== i && j(e, \"unsupported YAML version of the document\")\n            },\n            TAG: function(e, t, n) {\n                var r, o;\n                2 !== n.length && I(e, \"TAG directive accepts exactly two arguments\"), r = n[0], o = n[1], b.test(r) || I(e, \"ill-formed tag handle (first argument) of the TAG directive\"), s.call(e.tagMap, r) && I(e, 'there is a previously declared suffix for \"' + r + '\" tag handle'), _.test(o) || I(e, \"ill-formed tag prefix (second argument) of the TAG directive\"), e.tagMap[r] = o\n            }\n        };\n\n        function R(e, t, n, r) {\n            var o, i, a, u;\n            if (t < n) {\n                if (u = e.input.slice(t, n), r)\n                    for (o = 0, i = u.length; o < i; o += 1) 9 === (a = u.charCodeAt(o)) || 32 <= a && a <= 1114111 || I(e, \"expected valid JSON character\");\n                else m.test(u) && I(e, \"the stream contains non-printable characters\");\n                e.result += u\n            }\n        }\n\n        function D(e, t, n, o) {\n            var i, a, u, l;\n            for (r.isObject(n) || I(e, \"cannot merge mappings; the provided source object is unacceptable\"), u = 0, l = (i = Object.keys(n)).length; u < l; u += 1) a = i[u], s.call(t, a) || (t[a] = n[a], o[a] = !0)\n        }\n\n        function L(e, t, n, r, o, i, a, u) {\n            var l, c;\n            if (o = String(o), null === t && (t = {}), \"tag:yaml.org,2002:merge\" === r)\n                if (Array.isArray(i))\n                    for (l = 0, c = i.length; l < c; l += 1) D(e, t, i[l], n);\n                else D(e, t, i, n);\n            else e.json || s.call(n, o) || !s.call(t, o) || (e.line = a || e.line, e.position = u || e.position, I(e, \"duplicated mapping key\")), t[o] = i, delete n[o];\n            return t\n        }\n\n        function U(e) {\n            var t;\n            10 === (t = e.input.charCodeAt(e.position)) ? e.position++ : 13 === t ? (e.position++, 10 === e.input.charCodeAt(e.position) && e.position++) : I(e, \"a line break is expected\"), e.line += 1, e.lineStart = e.position\n        }\n\n        function q(e, t, n) {\n            for (var r = 0, o = e.input.charCodeAt(e.position); 0 !== o;) {\n                for (; E(o);) o = e.input.charCodeAt(++e.position);\n                if (t && 35 === o)\n                    do {\n                        o = e.input.charCodeAt(++e.position)\n                    } while (10 !== o && 13 !== o && 0 !== o);\n                if (!w(o)) break;\n                for (U(e), o = e.input.charCodeAt(e.position), r++, e.lineIndent = 0; 32 === o;) e.lineIndent++, o = e.input.charCodeAt(++e.position)\n            }\n            return -1 !== n && 0 !== r && e.lineIndent < n && j(e, \"deficient indentation\"), r\n        }\n\n        function F(e) {\n            var t, n = e.position;\n            return !(45 !== (t = e.input.charCodeAt(n)) && 46 !== t || t !== e.input.charCodeAt(n + 1) || t !== e.input.charCodeAt(n + 2) || (n += 3, 0 !== (t = e.input.charCodeAt(n)) && !x(t)))\n        }\n\n        function z(e, t) {\n            1 === t ? e.result += \" \" : t > 1 && (e.result += r.repeat(\"\\n\", t - 1))\n        }\n\n        function B(e, t) {\n            var n, r, o = e.tag,\n                i = e.anchor,\n                a = [],\n                u = !1;\n            for (null !== e.anchor && (e.anchorMap[e.anchor] = a), r = e.input.charCodeAt(e.position); 0 !== r && 45 === r && x(e.input.charCodeAt(e.position + 1));)\n                if (u = !0, e.position++, q(e, !0, -1) && e.lineIndent <= t) a.push(null), r = e.input.charCodeAt(e.position);\n                else if (n = e.line, W(e, t, f, !1, !0), a.push(e.result), q(e, !0, -1), r = e.input.charCodeAt(e.position), (e.line === n || e.lineIndent > t) && 0 !== r) I(e, \"bad indentation of a sequence entry\");\n                else if (e.lineIndent < t) break;\n            return !!u && (e.tag = o, e.anchor = i, e.kind = \"sequence\", e.result = a, !0)\n        }\n\n        function V(e) {\n            var t, n, r, o, i = !1,\n                a = !1;\n            if (33 !== (o = e.input.charCodeAt(e.position))) return !1;\n            if (null !== e.tag && I(e, \"duplication of a tag property\"), 60 === (o = e.input.charCodeAt(++e.position)) ? (i = !0, o = e.input.charCodeAt(++e.position)) : 33 === o ? (a = !0, n = \"!!\", o = e.input.charCodeAt(++e.position)) : n = \"!\", t = e.position, i) {\n                do {\n                    o = e.input.charCodeAt(++e.position)\n                } while (0 !== o && 62 !== o);\n                e.position < e.length ? (r = e.input.slice(t, e.position), o = e.input.charCodeAt(++e.position)) : I(e, \"unexpected end of the stream within a verbatim tag\")\n            } else {\n                for (; 0 !== o && !x(o);) 33 === o && (a ? I(e, \"tag suffix cannot contain exclamation marks\") : (n = e.input.slice(t - 1, e.position + 1), b.test(n) || I(e, \"named tag handle cannot contain such characters\"), a = !0, t = e.position + 1)), o = e.input.charCodeAt(++e.position);\n                r = e.input.slice(t, e.position), y.test(r) && I(e, \"tag suffix cannot contain flow indicator characters\")\n            }\n            return r && !_.test(r) && I(e, \"tag name cannot contain such characters: \" + r), i ? e.tag = r : s.call(e.tagMap, n) ? e.tag = e.tagMap[n] + r : \"!\" === n ? e.tag = \"!\" + r : \"!!\" === n ? e.tag = \"tag:yaml.org,2002:\" + r : I(e, 'undeclared tag handle \"' + n + '\"'), !0\n        }\n\n        function H(e) {\n            var t, n;\n            if (38 !== (n = e.input.charCodeAt(e.position))) return !1;\n            for (null !== e.anchor && I(e, \"duplication of an anchor property\"), n = e.input.charCodeAt(++e.position), t = e.position; 0 !== n && !x(n) && !S(n);) n = e.input.charCodeAt(++e.position);\n            return e.position === t && I(e, \"name of an anchor node must contain at least one character\"), e.anchor = e.input.slice(t, e.position), !0\n        }\n\n        function W(e, t, n, o, i) {\n            var a, u, m, g, y, b, _, k, T = 1,\n                M = !1,\n                j = !1;\n            if (null !== e.listener && e.listener(\"open\", e), e.tag = null, e.anchor = null, e.kind = null, e.result = null, a = u = m = p === n || f === n, o && q(e, !0, -1) && (M = !0, e.lineIndent > t ? T = 1 : e.lineIndent === t ? T = 0 : e.lineIndent < t && (T = -1)), 1 === T)\n                for (; V(e) || H(e);) q(e, !0, -1) ? (M = !0, m = a, e.lineIndent > t ? T = 1 : e.lineIndent === t ? T = 0 : e.lineIndent < t && (T = -1)) : m = !1;\n            if (m && (m = M || i), 1 !== T && p !== n || (_ = l === n || c === n ? t : t + 1, k = e.position - e.lineStart, 1 === T ? m && (B(e, k) || function(e, t, n) {\n                var r, o, i, a, u, s = e.tag,\n                    l = e.anchor,\n                    f = {},\n                    d = {},\n                    h = null,\n                    v = null,\n                    m = null,\n                    g = !1,\n                    y = !1;\n                for (null !== e.anchor && (e.anchorMap[e.anchor] = f), u = e.input.charCodeAt(e.position); 0 !== u;) {\n                    if (r = e.input.charCodeAt(e.position + 1), i = e.line, a = e.position, 63 !== u && 58 !== u || !x(r)) {\n                        if (!W(e, n, c, !1, !0)) break;\n                        if (e.line === i) {\n                            for (u = e.input.charCodeAt(e.position); E(u);) u = e.input.charCodeAt(++e.position);\n                            if (58 === u) x(u = e.input.charCodeAt(++e.position)) || I(e, \"a whitespace character is expected after the key-value separator within a block mapping\"), g && (L(e, f, d, h, v, null), h = v = m = null), y = !0, g = !1, o = !1, h = e.tag, v = e.result;\n                            else {\n                                if (!y) return e.tag = s, e.anchor = l, !0;\n                                I(e, \"can not read an implicit mapping pair; a colon is missed\")\n                            }\n                        } else {\n                            if (!y) return e.tag = s, e.anchor = l, !0;\n                            I(e, \"can not read a block mapping entry; a multiline key may not be an implicit key\")\n                        }\n                    } else 63 === u ? (g && (L(e, f, d, h, v, null), h = v = m = null), y = !0, g = !0, o = !0) : g ? (g = !1, o = !0) : I(e, \"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line\"), e.position += 1, u = r;\n                    if ((e.line === i || e.lineIndent > t) && (W(e, t, p, !0, o) && (g ? v = e.result : m = e.result), g || (L(e, f, d, h, v, m, i, a), h = v = m = null), q(e, !0, -1), u = e.input.charCodeAt(e.position)), e.lineIndent > t && 0 !== u) I(e, \"bad indentation of a mapping entry\");\n                    else if (e.lineIndent < t) break\n                }\n                return g && L(e, f, d, h, v, null), y && (e.tag = s, e.anchor = l, e.kind = \"mapping\", e.result = f), y\n            }(e, k, _)) || function(e, t) {\n                var n, r, o, i, a, u, s, c, f, p, d = !0,\n                    h = e.tag,\n                    v = e.anchor,\n                    m = {};\n                if (91 === (p = e.input.charCodeAt(e.position))) o = 93, u = !1, r = [];\n                else {\n                    if (123 !== p) return !1;\n                    o = 125, u = !0, r = {}\n                }\n                for (null !== e.anchor && (e.anchorMap[e.anchor] = r), p = e.input.charCodeAt(++e.position); 0 !== p;) {\n                    if (q(e, !0, t), (p = e.input.charCodeAt(e.position)) === o) return e.position++, e.tag = h, e.anchor = v, e.kind = u ? \"mapping\" : \"sequence\", e.result = r, !0;\n                    d || I(e, \"missed comma between flow collection entries\"), c = s = f = null, i = a = !1, 63 === p && x(e.input.charCodeAt(e.position + 1)) && (i = a = !0, e.position++, q(e, !0, t)), n = e.line, W(e, t, l, !1, !0), c = e.tag, s = e.result, q(e, !0, t), p = e.input.charCodeAt(e.position), !a && e.line !== n || 58 !== p || (i = !0, p = e.input.charCodeAt(++e.position), q(e, !0, t), W(e, t, l, !1, !0), f = e.result), u ? L(e, r, m, c, s, f) : i ? r.push(L(e, null, m, c, s, f)) : r.push(s), q(e, !0, t), 44 === (p = e.input.charCodeAt(e.position)) ? (d = !0, p = e.input.charCodeAt(++e.position)) : d = !1\n                }\n                I(e, \"unexpected end of the stream within a flow collection\")\n            }(e, _) ? j = !0 : (u && function(e, t) {\n                var n, o, i, a, u, s = d,\n                    l = !1,\n                    c = !1,\n                    f = t,\n                    p = 0,\n                    m = !1;\n                if (124 === (a = e.input.charCodeAt(e.position))) o = !1;\n                else {\n                    if (62 !== a) return !1;\n                    o = !0\n                }\n                for (e.kind = \"scalar\", e.result = \"\"; 0 !== a;)\n                    if (43 === (a = e.input.charCodeAt(++e.position)) || 45 === a) d === s ? s = 43 === a ? v : h : I(e, \"repeat of a chomping mode identifier\");\n                    else {\n                        if (!((i = 48 <= (u = a) && u <= 57 ? u - 48 : -1) >= 0)) break;\n                        0 === i ? I(e, \"bad explicit indentation width of a block scalar; it cannot be less than one\") : c ? I(e, \"repeat of an indentation width identifier\") : (f = t + i - 1, c = !0)\n                    }\n                if (E(a)) {\n                    do {\n                        a = e.input.charCodeAt(++e.position)\n                    } while (E(a));\n                    if (35 === a)\n                        do {\n                            a = e.input.charCodeAt(++e.position)\n                        } while (!w(a) && 0 !== a)\n                }\n                for (; 0 !== a;) {\n                    for (U(e), e.lineIndent = 0, a = e.input.charCodeAt(e.position);\n                         (!c || e.lineIndent < f) && 32 === a;) e.lineIndent++, a = e.input.charCodeAt(++e.position);\n                    if (!c && e.lineIndent > f && (f = e.lineIndent), w(a)) p++;\n                    else {\n                        if (e.lineIndent < f) {\n                            s === v ? e.result += r.repeat(\"\\n\", l ? 1 + p : p) : s === d && l && (e.result += \"\\n\");\n                            break\n                        }\n                        for (o ? E(a) ? (m = !0, e.result += r.repeat(\"\\n\", l ? 1 + p : p)) : m ? (m = !1, e.result += r.repeat(\"\\n\", p + 1)) : 0 === p ? l && (e.result += \" \") : e.result += r.repeat(\"\\n\", p) : e.result += r.repeat(\"\\n\", l ? 1 + p : p), l = !0, c = !0, p = 0, n = e.position; !w(a) && 0 !== a;) a = e.input.charCodeAt(++e.position);\n                        R(e, n, e.position, !1)\n                    }\n                }\n                return !0\n            }(e, _) || function(e, t) {\n                var n, r, o;\n                if (39 !== (n = e.input.charCodeAt(e.position))) return !1;\n                for (e.kind = \"scalar\", e.result = \"\", e.position++, r = o = e.position; 0 !== (n = e.input.charCodeAt(e.position));)\n                    if (39 === n) {\n                        if (R(e, r, e.position, !0), 39 !== (n = e.input.charCodeAt(++e.position))) return !0;\n                        r = e.position, e.position++, o = e.position\n                    } else w(n) ? (R(e, r, o, !0), z(e, q(e, !1, t)), r = o = e.position) : e.position === e.lineStart && F(e) ? I(e, \"unexpected end of the document within a single quoted scalar\") : (e.position++, o = e.position);\n                I(e, \"unexpected end of the stream within a single quoted scalar\")\n            }(e, _) || function(e, t) {\n                var n, r, o, i, a, u, s;\n                if (34 !== (u = e.input.charCodeAt(e.position))) return !1;\n                for (e.kind = \"scalar\", e.result = \"\", e.position++, n = r = e.position; 0 !== (u = e.input.charCodeAt(e.position));) {\n                    if (34 === u) return R(e, n, e.position, !0), e.position++, !0;\n                    if (92 === u) {\n                        if (R(e, n, e.position, !0), w(u = e.input.charCodeAt(++e.position))) q(e, !1, t);\n                        else if (u < 256 && O[u]) e.result += P[u], e.position++;\n                        else if ((a = 120 === (s = u) ? 2 : 117 === s ? 4 : 85 === s ? 8 : 0) > 0) {\n                            for (o = a, i = 0; o > 0; o--)(a = C(u = e.input.charCodeAt(++e.position))) >= 0 ? i = (i << 4) + a : I(e, \"expected hexadecimal character\");\n                            e.result += A(i), e.position++\n                        } else I(e, \"unknown escape sequence\");\n                        n = r = e.position\n                    } else w(u) ? (R(e, n, r, !0), z(e, q(e, !1, t)), n = r = e.position) : e.position === e.lineStart && F(e) ? I(e, \"unexpected end of the document within a double quoted scalar\") : (e.position++, r = e.position)\n                }\n                I(e, \"unexpected end of the stream within a double quoted scalar\")\n            }(e, _) ? j = !0 : ! function(e) {\n                var t, n, r;\n                if (42 !== (r = e.input.charCodeAt(e.position))) return !1;\n                for (r = e.input.charCodeAt(++e.position), t = e.position; 0 !== r && !x(r) && !S(r);) r = e.input.charCodeAt(++e.position);\n                return e.position === t && I(e, \"name of an alias node must contain at least one character\"), n = e.input.slice(t, e.position), e.anchorMap.hasOwnProperty(n) || I(e, 'unidentified alias \"' + n + '\"'), e.result = e.anchorMap[n], q(e, !0, -1), !0\n            }(e) ? function(e, t, n) {\n                var r, o, i, a, u, s, l, c, f = e.kind,\n                    p = e.result;\n                if (x(c = e.input.charCodeAt(e.position)) || S(c) || 35 === c || 38 === c || 42 === c || 33 === c || 124 === c || 62 === c || 39 === c || 34 === c || 37 === c || 64 === c || 96 === c) return !1;\n                if ((63 === c || 45 === c) && (x(r = e.input.charCodeAt(e.position + 1)) || n && S(r))) return !1;\n                for (e.kind = \"scalar\", e.result = \"\", o = i = e.position, a = !1; 0 !== c;) {\n                    if (58 === c) {\n                        if (x(r = e.input.charCodeAt(e.position + 1)) || n && S(r)) break\n                    } else if (35 === c) {\n                        if (x(e.input.charCodeAt(e.position - 1))) break\n                    } else {\n                        if (e.position === e.lineStart && F(e) || n && S(c)) break;\n                        if (w(c)) {\n                            if (u = e.line, s = e.lineStart, l = e.lineIndent, q(e, !1, -1), e.lineIndent >= t) {\n                                a = !0, c = e.input.charCodeAt(e.position);\n                                continue\n                            }\n                            e.position = i, e.line = u, e.lineStart = s, e.lineIndent = l;\n                            break\n                        }\n                    }\n                    a && (R(e, o, i, !1), z(e, e.line - u), o = i = e.position, a = !1), E(c) || (i = e.position + 1), c = e.input.charCodeAt(++e.position)\n                }\n                return R(e, o, i, !1), !!e.result || (e.kind = f, e.result = p, !1)\n            }(e, _, l === n) && (j = !0, null === e.tag && (e.tag = \"?\")) : (j = !0, null === e.tag && null === e.anchor || I(e, \"alias node should not have any properties\")), null !== e.anchor && (e.anchorMap[e.anchor] = e.result)) : 0 === T && (j = m && B(e, k))), null !== e.tag && \"!\" !== e.tag)\n                if (\"?\" === e.tag) {\n                    for (g = 0, y = e.implicitTypes.length; g < y; g += 1)\n                        if ((b = e.implicitTypes[g]).resolve(e.result)) {\n                            e.result = b.construct(e.result), e.tag = b.tag, null !== e.anchor && (e.anchorMap[e.anchor] = e.result);\n                            break\n                        }\n                } else s.call(e.typeMap[e.kind || \"fallback\"], e.tag) ? (b = e.typeMap[e.kind || \"fallback\"][e.tag], null !== e.result && b.kind !== e.kind && I(e, \"unacceptable node kind for !<\" + e.tag + '> tag; it should be \"' + b.kind + '\", not \"' + e.kind + '\"'), b.resolve(e.result) ? (e.result = b.construct(e.result), null !== e.anchor && (e.anchorMap[e.anchor] = e.result)) : I(e, \"cannot resolve a node with !<\" + e.tag + \"> explicit tag\")) : I(e, \"unknown tag !<\" + e.tag + \">\");\n            return null !== e.listener && e.listener(\"close\", e), null !== e.tag || null !== e.anchor || j\n        }\n\n        function J(e) {\n            var t, n, r, o, i = e.position,\n                a = !1;\n            for (e.version = null, e.checkLineBreaks = e.legacy, e.tagMap = {}, e.anchorMap = {}; 0 !== (o = e.input.charCodeAt(e.position)) && (q(e, !0, -1), o = e.input.charCodeAt(e.position), !(e.lineIndent > 0 || 37 !== o));) {\n                for (a = !0, o = e.input.charCodeAt(++e.position), t = e.position; 0 !== o && !x(o);) o = e.input.charCodeAt(++e.position);\n                for (r = [], (n = e.input.slice(t, e.position)).length < 1 && I(e, \"directive name must not be less than one character in length\"); 0 !== o;) {\n                    for (; E(o);) o = e.input.charCodeAt(++e.position);\n                    if (35 === o) {\n                        do {\n                            o = e.input.charCodeAt(++e.position)\n                        } while (0 !== o && !w(o));\n                        break\n                    }\n                    if (w(o)) break;\n                    for (t = e.position; 0 !== o && !x(o);) o = e.input.charCodeAt(++e.position);\n                    r.push(e.input.slice(t, e.position))\n                }\n                0 !== o && U(e), s.call(N, n) ? N[n](e, n, r) : j(e, 'unknown document directive \"' + n + '\"')\n            }\n            q(e, !0, -1), 0 === e.lineIndent && 45 === e.input.charCodeAt(e.position) && 45 === e.input.charCodeAt(e.position + 1) && 45 === e.input.charCodeAt(e.position + 2) ? (e.position += 3, q(e, !0, -1)) : a && I(e, \"directives end mark is expected\"), W(e, e.lineIndent - 1, p, !1, !0), q(e, !0, -1), e.checkLineBreaks && g.test(e.input.slice(i, e.position)) && j(e, \"non-ASCII line breaks are interpreted as content\"), e.documents.push(e.result), e.position === e.lineStart && F(e) ? 46 === e.input.charCodeAt(e.position) && (e.position += 3, q(e, !0, -1)) : e.position < e.length - 1 && I(e, \"end of the stream or a document separator is expected\")\n        }\n\n        function Y(e, t) {\n            e = String(e), t = t || {}, 0 !== e.length && (10 !== e.charCodeAt(e.length - 1) && 13 !== e.charCodeAt(e.length - 1) && (e += \"\\n\"), 65279 === e.charCodeAt(0) && (e = e.slice(1)));\n            var n = new function(e, t) {\n                this.input = e, this.filename = t.filename || null, this.schema = t.schema || u, this.onWarning = t.onWarning || null, this.legacy = t.legacy || !1, this.json = t.json || !1, this.listener = t.listener || null, this.implicitTypes = this.schema.compiledImplicit, this.typeMap = this.schema.compiledTypeMap, this.length = e.length, this.position = 0, this.line = 0, this.lineStart = 0, this.lineIndent = 0, this.documents = []\n            }(e, t);\n            for (n.input += \"\\0\"; 32 === n.input.charCodeAt(n.position);) n.lineIndent += 1, n.position += 1;\n            for (; n.position < n.length - 1;) J(n);\n            return n.documents\n        }\n\n        function K(e, t, n) {\n            var r, o, i = Y(e, n);\n            if (\"function\" != typeof t) return i;\n            for (r = 0, o = i.length; r < o; r += 1) t(i[r])\n        }\n\n        function G(e, t) {\n            var n = Y(e, t);\n            if (0 !== n.length) {\n                if (1 === n.length) return n[0];\n                throw new o(\"expected a single document in the stream, but found more\")\n            }\n        }\n        e.exports.loadAll = K, e.exports.load = G, e.exports.safeLoadAll = function(e, t, n) {\n            if (\"function\" != typeof t) return K(e, r.extend({\n                schema: a\n            }, n));\n            K(e, t, r.extend({\n                schema: a\n            }, n))\n        }, e.exports.safeLoad = function(e, t) {\n            return G(e, r.extend({\n                schema: a\n            }, t))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(85);\n\n        function o(e, t, n, r, o) {\n            this.name = e, this.buffer = t, this.position = n, this.line = r, this.column = o\n        }\n        o.prototype.getSnippet = function(e, t) {\n            var n, o, i, a, u;\n            if (!this.buffer) return null;\n            for (e = e || 4, t = t || 75, n = \"\", o = this.position; o > 0 && -1 === \"\\0\\r\\n\\u2028\\u2029\".indexOf(this.buffer.charAt(o - 1));)\n                if (o -= 1, this.position - o > t / 2 - 1) {\n                    n = \" ... \", o += 5;\n                    break\n                }\n            for (i = \"\", a = this.position; a < this.buffer.length && -1 === \"\\0\\r\\n\\u2028\\u2029\".indexOf(this.buffer.charAt(a));)\n                if ((a += 1) - this.position > t / 2 - 1) {\n                    i = \" ... \", a -= 5;\n                    break\n                }\n            return u = this.buffer.slice(o, a), r.repeat(\" \", e) + n + u + i + \"\\n\" + r.repeat(\" \", e + this.position - o + n.length) + \"^\"\n        }, o.prototype.toString = function(e) {\n            var t, n = \"\";\n            return this.name && (n += 'in \"' + this.name + '\" '), n += \"at line \" + (this.line + 1) + \", column \" + (this.column + 1), e || (t = this.getSnippet()) && (n += \":\\n\" + t), n\n        }, e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:str\", {\n            kind: \"scalar\",\n            construct: function(e) {\n                return null !== e ? e : \"\"\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:seq\", {\n            kind: \"sequence\",\n            construct: function(e) {\n                return null !== e ? e : []\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:map\", {\n            kind: \"mapping\",\n            construct: function(e) {\n                return null !== e ? e : {}\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:null\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                if (null === e) return !0;\n                var t = e.length;\n                return 1 === t && \"~\" === e || 4 === t && (\"null\" === e || \"Null\" === e || \"NULL\" === e)\n            },\n            construct: function() {\n                return null\n            },\n            predicate: function(e) {\n                return null === e\n            },\n            represent: {\n                canonical: function() {\n                    return \"~\"\n                },\n                lowercase: function() {\n                    return \"null\"\n                },\n                uppercase: function() {\n                    return \"NULL\"\n                },\n                camelcase: function() {\n                    return \"Null\"\n                }\n            },\n            defaultStyle: \"lowercase\"\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:bool\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                if (null === e) return !1;\n                var t = e.length;\n                return 4 === t && (\"true\" === e || \"True\" === e || \"TRUE\" === e) || 5 === t && (\"false\" === e || \"False\" === e || \"FALSE\" === e)\n            },\n            construct: function(e) {\n                return \"true\" === e || \"True\" === e || \"TRUE\" === e\n            },\n            predicate: function(e) {\n                return \"[object Boolean]\" === Object.prototype.toString.call(e)\n            },\n            represent: {\n                lowercase: function(e) {\n                    return e ? \"true\" : \"false\"\n                },\n                uppercase: function(e) {\n                    return e ? \"TRUE\" : \"FALSE\"\n                },\n                camelcase: function(e) {\n                    return e ? \"True\" : \"False\"\n                }\n            },\n            defaultStyle: \"lowercase\"\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(85),\n            o = n(16);\n\n        function i(e) {\n            return 48 <= e && e <= 55\n        }\n\n        function a(e) {\n            return 48 <= e && e <= 57\n        }\n        e.exports = new o(\"tag:yaml.org,2002:int\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                if (null === e) return !1;\n                var t, n, r = e.length,\n                    o = 0,\n                    u = !1;\n                if (!r) return !1;\n                if (\"-\" !== (t = e[o]) && \"+\" !== t || (t = e[++o]), \"0\" === t) {\n                    if (o + 1 === r) return !0;\n                    if (\"b\" === (t = e[++o])) {\n                        for (o++; o < r; o++)\n                            if (\"_\" !== (t = e[o])) {\n                                if (\"0\" !== t && \"1\" !== t) return !1;\n                                u = !0\n                            }\n                        return u && \"_\" !== t\n                    }\n                    if (\"x\" === t) {\n                        for (o++; o < r; o++)\n                            if (\"_\" !== (t = e[o])) {\n                                if (!(48 <= (n = e.charCodeAt(o)) && n <= 57 || 65 <= n && n <= 70 || 97 <= n && n <= 102)) return !1;\n                                u = !0\n                            }\n                        return u && \"_\" !== t\n                    }\n                    for (; o < r; o++)\n                        if (\"_\" !== (t = e[o])) {\n                            if (!i(e.charCodeAt(o))) return !1;\n                            u = !0\n                        }\n                    return u && \"_\" !== t\n                }\n                if (\"_\" === t) return !1;\n                for (; o < r; o++)\n                    if (\"_\" !== (t = e[o])) {\n                        if (\":\" === t) break;\n                        if (!a(e.charCodeAt(o))) return !1;\n                        u = !0\n                    }\n                return !(!u || \"_\" === t) && (\":\" !== t || /^(:[0-5]?[0-9])+$/.test(e.slice(o)))\n            },\n            construct: function(e) {\n                var t, n, r = e,\n                    o = 1,\n                    i = [];\n                return -1 !== r.indexOf(\"_\") && (r = r.replace(/_/g, \"\")), \"-\" !== (t = r[0]) && \"+\" !== t || (\"-\" === t && (o = -1), t = (r = r.slice(1))[0]), \"0\" === r ? 0 : \"0\" === t ? \"b\" === r[1] ? o * parseInt(r.slice(2), 2) : \"x\" === r[1] ? o * parseInt(r, 16) : o * parseInt(r, 8) : -1 !== r.indexOf(\":\") ? (r.split(\":\").forEach(function(e) {\n                    i.unshift(parseInt(e, 10))\n                }), r = 0, n = 1, i.forEach(function(e) {\n                    r += e * n, n *= 60\n                }), o * r) : o * parseInt(r, 10)\n            },\n            predicate: function(e) {\n                return \"[object Number]\" === Object.prototype.toString.call(e) && e % 1 == 0 && !r.isNegativeZero(e)\n            },\n            represent: {\n                binary: function(e) {\n                    return e >= 0 ? \"0b\" + e.toString(2) : \"-0b\" + e.toString(2).slice(1)\n                },\n                octal: function(e) {\n                    return e >= 0 ? \"0\" + e.toString(8) : \"-0\" + e.toString(8).slice(1)\n                },\n                decimal: function(e) {\n                    return e.toString(10)\n                },\n                hexadecimal: function(e) {\n                    return e >= 0 ? \"0x\" + e.toString(16).toUpperCase() : \"-0x\" + e.toString(16).toUpperCase().slice(1)\n                }\n            },\n            defaultStyle: \"decimal\",\n            styleAliases: {\n                binary: [2, \"bin\"],\n                octal: [8, \"oct\"],\n                decimal: [10, \"dec\"],\n                hexadecimal: [16, \"hex\"]\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(85),\n            o = n(16),\n            i = new RegExp(\"^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))$\");\n        var a = /^[-+]?[0-9]+e/;\n        e.exports = new o(\"tag:yaml.org,2002:float\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                return null !== e && !(!i.test(e) || \"_\" === e[e.length - 1])\n            },\n            construct: function(e) {\n                var t, n, r, o;\n                return n = \"-\" === (t = e.replace(/_/g, \"\").toLowerCase())[0] ? -1 : 1, o = [], \"+-\".indexOf(t[0]) >= 0 && (t = t.slice(1)), \".inf\" === t ? 1 === n ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY : \".nan\" === t ? NaN : t.indexOf(\":\") >= 0 ? (t.split(\":\").forEach(function(e) {\n                    o.unshift(parseFloat(e, 10))\n                }), t = 0, r = 1, o.forEach(function(e) {\n                    t += e * r, r *= 60\n                }), n * t) : n * parseFloat(t, 10)\n            },\n            predicate: function(e) {\n                return \"[object Number]\" === Object.prototype.toString.call(e) && (e % 1 != 0 || r.isNegativeZero(e))\n            },\n            represent: function(e, t) {\n                var n;\n                if (isNaN(e)) switch (t) {\n                    case \"lowercase\":\n                        return \".nan\";\n                    case \"uppercase\":\n                        return \".NAN\";\n                    case \"camelcase\":\n                        return \".NaN\"\n                } else if (Number.POSITIVE_INFINITY === e) switch (t) {\n                    case \"lowercase\":\n                        return \".inf\";\n                    case \"uppercase\":\n                        return \".INF\";\n                    case \"camelcase\":\n                        return \".Inf\"\n                } else if (Number.NEGATIVE_INFINITY === e) switch (t) {\n                    case \"lowercase\":\n                        return \"-.inf\";\n                    case \"uppercase\":\n                        return \"-.INF\";\n                    case \"camelcase\":\n                        return \"-.Inf\"\n                } else if (r.isNegativeZero(e)) return \"-0.0\";\n                return n = e.toString(10), a.test(n) ? n.replace(\"e\", \".e\") : n\n            },\n            defaultStyle: \"lowercase\"\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16),\n            o = new RegExp(\"^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$\"),\n            i = new RegExp(\"^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\\\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\\\.([0-9]*))?(?:[ \\\\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$\");\n        e.exports = new r(\"tag:yaml.org,2002:timestamp\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                return null !== e && (null !== o.exec(e) || null !== i.exec(e))\n            },\n            construct: function(e) {\n                var t, n, r, a, u, s, l, c, f = 0,\n                    p = null;\n                if (null === (t = o.exec(e)) && (t = i.exec(e)), null === t) throw new Error(\"Date resolve error\");\n                if (n = +t[1], r = +t[2] - 1, a = +t[3], !t[4]) return new Date(Date.UTC(n, r, a));\n                if (u = +t[4], s = +t[5], l = +t[6], t[7]) {\n                    for (f = t[7].slice(0, 3); f.length < 3;) f += \"0\";\n                    f = +f\n                }\n                return t[9] && (p = 6e4 * (60 * +t[10] + +(t[11] || 0)), \"-\" === t[9] && (p = -p)), c = new Date(Date.UTC(n, r, a, u, s, l, f)), p && c.setTime(c.getTime() - p), c\n            },\n            instanceOf: Date,\n            represent: function(e) {\n                return e.toISOString()\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:merge\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                return \"<<\" === e || null === e\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r;\n        try {\n            r = n(54).Buffer\n        } catch (e) {}\n        var o = n(16),\n            i = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\\n\\r\";\n        e.exports = new o(\"tag:yaml.org,2002:binary\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                if (null === e) return !1;\n                var t, n, r = 0,\n                    o = e.length,\n                    a = i;\n                for (n = 0; n < o; n++)\n                    if (!((t = a.indexOf(e.charAt(n))) > 64)) {\n                        if (t < 0) return !1;\n                        r += 6\n                    }\n                return r % 8 == 0\n            },\n            construct: function(e) {\n                var t, n, o = e.replace(/[\\r\\n=]/g, \"\"),\n                    a = o.length,\n                    u = i,\n                    s = 0,\n                    l = [];\n                for (t = 0; t < a; t++) t % 4 == 0 && t && (l.push(s >> 16 & 255), l.push(s >> 8 & 255), l.push(255 & s)), s = s << 6 | u.indexOf(o.charAt(t));\n                return 0 == (n = a % 4 * 6) ? (l.push(s >> 16 & 255), l.push(s >> 8 & 255), l.push(255 & s)) : 18 === n ? (l.push(s >> 10 & 255), l.push(s >> 2 & 255)) : 12 === n && l.push(s >> 4 & 255), r ? r.from ? r.from(l) : new r(l) : l\n            },\n            predicate: function(e) {\n                return r && r.isBuffer(e)\n            },\n            represent: function(e) {\n                var t, n, r = \"\",\n                    o = 0,\n                    a = e.length,\n                    u = i;\n                for (t = 0; t < a; t++) t % 3 == 0 && t && (r += u[o >> 18 & 63], r += u[o >> 12 & 63], r += u[o >> 6 & 63], r += u[63 & o]), o = (o << 8) + e[t];\n                return 0 == (n = a % 3) ? (r += u[o >> 18 & 63], r += u[o >> 12 & 63], r += u[o >> 6 & 63], r += u[63 & o]) : 2 === n ? (r += u[o >> 10 & 63], r += u[o >> 4 & 63], r += u[o << 2 & 63], r += u[64]) : 1 === n && (r += u[o >> 2 & 63], r += u[o << 4 & 63], r += u[64], r += u[64]), r\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16),\n            o = Object.prototype.hasOwnProperty,\n            i = Object.prototype.toString;\n        e.exports = new r(\"tag:yaml.org,2002:omap\", {\n            kind: \"sequence\",\n            resolve: function(e) {\n                if (null === e) return !0;\n                var t, n, r, a, u, s = [],\n                    l = e;\n                for (t = 0, n = l.length; t < n; t += 1) {\n                    if (r = l[t], u = !1, \"[object Object]\" !== i.call(r)) return !1;\n                    for (a in r)\n                        if (o.call(r, a)) {\n                            if (u) return !1;\n                            u = !0\n                        }\n                    if (!u) return !1;\n                    if (-1 !== s.indexOf(a)) return !1;\n                    s.push(a)\n                }\n                return !0\n            },\n            construct: function(e) {\n                return null !== e ? e : []\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16),\n            o = Object.prototype.toString;\n        e.exports = new r(\"tag:yaml.org,2002:pairs\", {\n            kind: \"sequence\",\n            resolve: function(e) {\n                if (null === e) return !0;\n                var t, n, r, i, a, u = e;\n                for (a = new Array(u.length), t = 0, n = u.length; t < n; t += 1) {\n                    if (r = u[t], \"[object Object]\" !== o.call(r)) return !1;\n                    if (1 !== (i = Object.keys(r)).length) return !1;\n                    a[t] = [i[0], r[i[0]]]\n                }\n                return !0\n            },\n            construct: function(e) {\n                if (null === e) return [];\n                var t, n, r, o, i, a = e;\n                for (i = new Array(a.length), t = 0, n = a.length; t < n; t += 1) r = a[t], o = Object.keys(r), i[t] = [o[0], r[o[0]]];\n                return i\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16),\n            o = Object.prototype.hasOwnProperty;\n        e.exports = new r(\"tag:yaml.org,2002:set\", {\n            kind: \"mapping\",\n            resolve: function(e) {\n                if (null === e) return !0;\n                var t, n = e;\n                for (t in n)\n                    if (o.call(n, t) && null !== n[t]) return !1;\n                return !0\n            },\n            construct: function(e) {\n                return null !== e ? e : {}\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:js/undefined\", {\n            kind: \"scalar\",\n            resolve: function() {\n                return !0\n            },\n            construct: function() {},\n            predicate: function(e) {\n                return void 0 === e\n            },\n            represent: function() {\n                return \"\"\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(16);\n        e.exports = new r(\"tag:yaml.org,2002:js/regexp\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                if (null === e) return !1;\n                if (0 === e.length) return !1;\n                var t = e,\n                    n = /\\/([gim]*)$/.exec(e),\n                    r = \"\";\n                if (\"/\" === t[0]) {\n                    if (n && (r = n[1]), r.length > 3) return !1;\n                    if (\"/\" !== t[t.length - r.length - 1]) return !1\n                }\n                return !0\n            },\n            construct: function(e) {\n                var t = e,\n                    n = /\\/([gim]*)$/.exec(e),\n                    r = \"\";\n                return \"/\" === t[0] && (n && (r = n[1]), t = t.slice(1, t.length - r.length - 1)), new RegExp(t, r)\n            },\n            predicate: function(e) {\n                return \"[object RegExp]\" === Object.prototype.toString.call(e)\n            },\n            represent: function(e) {\n                var t = \"/\" + e.source + \"/\";\n                return e.global && (t += \"g\"), e.multiline && (t += \"m\"), e.ignoreCase && (t += \"i\"), t\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r;\n        \"undefined\" != typeof window && (r = window.esprima);\n        var o = n(16);\n        e.exports = new o(\"tag:yaml.org,2002:js/function\", {\n            kind: \"scalar\",\n            resolve: function(e) {\n                if (null === e) return !1;\n                try {\n                    var t = \"(\" + e + \")\",\n                        n = r.parse(t, {\n                            range: !0\n                        });\n                    return \"Program\" === n.type && 1 === n.body.length && \"ExpressionStatement\" === n.body[0].type && (\"ArrowFunctionExpression\" === n.body[0].expression.type || \"FunctionExpression\" === n.body[0].expression.type)\n                } catch (e) {\n                    return !1\n                }\n            },\n            construct: function(e) {\n                var t, n = \"(\" + e + \")\",\n                    o = r.parse(n, {\n                        range: !0\n                    }),\n                    i = [];\n                if (\"Program\" !== o.type || 1 !== o.body.length || \"ExpressionStatement\" !== o.body[0].type || \"ArrowFunctionExpression\" !== o.body[0].expression.type && \"FunctionExpression\" !== o.body[0].expression.type) throw new Error(\"Failed to resolve function\");\n                return o.body[0].expression.params.forEach(function(e) {\n                    i.push(e.name)\n                }), t = o.body[0].expression.body.range, \"BlockStatement\" === o.body[0].expression.body.type ? new Function(i, n.slice(t[0] + 1, t[1] - 1)) : new Function(i, \"return \" + n.slice(t[0], t[1]))\n            },\n            predicate: function(e) {\n                return \"[object Function]\" === Object.prototype.toString.call(e)\n            },\n            represent: function(e) {\n                return e.toString()\n            }\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(85),\n            o = n(107),\n            i = n(145),\n            a = n(108),\n            u = Object.prototype.toString,\n            s = Object.prototype.hasOwnProperty,\n            l = 9,\n            c = 10,\n            f = 32,\n            p = 33,\n            d = 34,\n            h = 35,\n            v = 37,\n            m = 38,\n            g = 39,\n            y = 42,\n            b = 44,\n            _ = 45,\n            w = 58,\n            E = 62,\n            x = 63,\n            S = 64,\n            C = 91,\n            k = 93,\n            A = 96,\n            O = 123,\n            P = 124,\n            T = 125,\n            M = {\n                0: \"\\\\0\",\n                7: \"\\\\a\",\n                8: \"\\\\b\",\n                9: \"\\\\t\",\n                10: \"\\\\n\",\n                11: \"\\\\v\",\n                12: \"\\\\f\",\n                13: \"\\\\r\",\n                27: \"\\\\e\",\n                34: '\\\\\"',\n                92: \"\\\\\\\\\",\n                133: \"\\\\N\",\n                160: \"\\\\_\",\n                8232: \"\\\\L\",\n                8233: \"\\\\P\"\n            },\n            I = [\"y\", \"Y\", \"yes\", \"Yes\", \"YES\", \"on\", \"On\", \"ON\", \"n\", \"N\", \"no\", \"No\", \"NO\", \"off\", \"Off\", \"OFF\"];\n\n        function j(e) {\n            var t, n, i;\n            if (t = e.toString(16).toUpperCase(), e <= 255) n = \"x\", i = 2;\n            else if (e <= 65535) n = \"u\", i = 4;\n            else {\n                if (!(e <= 4294967295)) throw new o(\"code point within a string may not be greater than 0xFFFFFFFF\");\n                n = \"U\", i = 8\n            }\n            return \"\\\\\" + n + r.repeat(\"0\", i - t.length) + t\n        }\n\n        function N(e) {\n            this.schema = e.schema || i, this.indent = Math.max(1, e.indent || 2), this.skipInvalid = e.skipInvalid || !1, this.flowLevel = r.isNothing(e.flowLevel) ? -1 : e.flowLevel, this.styleMap = function(e, t) {\n                var n, r, o, i, a, u, l;\n                if (null === t) return {};\n                for (n = {}, o = 0, i = (r = Object.keys(t)).length; o < i; o += 1) a = r[o], u = String(t[a]), \"!!\" === a.slice(0, 2) && (a = \"tag:yaml.org,2002:\" + a.slice(2)), (l = e.compiledTypeMap.fallback[a]) && s.call(l.styleAliases, u) && (u = l.styleAliases[u]), n[a] = u;\n                return n\n            }(this.schema, e.styles || null), this.sortKeys = e.sortKeys || !1, this.lineWidth = e.lineWidth || 80, this.noRefs = e.noRefs || !1, this.noCompatMode = e.noCompatMode || !1, this.condenseFlow = e.condenseFlow || !1, this.implicitTypes = this.schema.compiledImplicit, this.explicitTypes = this.schema.compiledExplicit, this.tag = null, this.result = \"\", this.duplicates = [], this.usedDuplicates = null\n        }\n\n        function R(e, t) {\n            for (var n, o = r.repeat(\" \", t), i = 0, a = -1, u = \"\", s = e.length; i < s;) - 1 === (a = e.indexOf(\"\\n\", i)) ? (n = e.slice(i), i = s) : (n = e.slice(i, a + 1), i = a + 1), n.length && \"\\n\" !== n && (u += o), u += n;\n            return u\n        }\n\n        function D(e, t) {\n            return \"\\n\" + r.repeat(\" \", e.indent * t)\n        }\n\n        function L(e) {\n            return e === f || e === l\n        }\n\n        function U(e) {\n            return 32 <= e && e <= 126 || 161 <= e && e <= 55295 && 8232 !== e && 8233 !== e || 57344 <= e && e <= 65533 && 65279 !== e || 65536 <= e && e <= 1114111\n        }\n\n        function q(e) {\n            return U(e) && 65279 !== e && e !== b && e !== C && e !== k && e !== O && e !== T && e !== w && e !== h\n        }\n\n        function F(e) {\n            return /^\\n* /.test(e)\n        }\n        var z = 1,\n            B = 2,\n            V = 3,\n            H = 4,\n            W = 5;\n\n        function J(e, t, n, r, o) {\n            var i, a, u, s = !1,\n                l = !1,\n                f = -1 !== r,\n                M = -1,\n                I = U(u = e.charCodeAt(0)) && 65279 !== u && !L(u) && u !== _ && u !== x && u !== w && u !== b && u !== C && u !== k && u !== O && u !== T && u !== h && u !== m && u !== y && u !== p && u !== P && u !== E && u !== g && u !== d && u !== v && u !== S && u !== A && !L(e.charCodeAt(e.length - 1));\n            if (t)\n                for (i = 0; i < e.length; i++) {\n                    if (!U(a = e.charCodeAt(i))) return W;\n                    I = I && q(a)\n                } else {\n                for (i = 0; i < e.length; i++) {\n                    if ((a = e.charCodeAt(i)) === c) s = !0, f && (l = l || i - M - 1 > r && \" \" !== e[M + 1], M = i);\n                    else if (!U(a)) return W;\n                    I = I && q(a)\n                }\n                l = l || f && i - M - 1 > r && \" \" !== e[M + 1]\n            }\n            return s || l ? n > 9 && F(e) ? W : l ? H : V : I && !o(e) ? z : B\n        }\n\n        function Y(e, t, n, r) {\n            e.dump = function() {\n                if (0 === t.length) return \"''\";\n                if (!e.noCompatMode && -1 !== I.indexOf(t)) return \"'\" + t + \"'\";\n                var i = e.indent * Math.max(1, n),\n                    a = -1 === e.lineWidth ? -1 : Math.max(Math.min(e.lineWidth, 40), e.lineWidth - i),\n                    u = r || e.flowLevel > -1 && n >= e.flowLevel;\n                switch (J(t, u, e.indent, a, function(t) {\n                    return function(e, t) {\n                        var n, r;\n                        for (n = 0, r = e.implicitTypes.length; n < r; n += 1)\n                            if (e.implicitTypes[n].resolve(t)) return !0;\n                        return !1\n                    }(e, t)\n                })) {\n                    case z:\n                        return t;\n                    case B:\n                        return \"'\" + t.replace(/'/g, \"''\") + \"'\";\n                    case V:\n                        return \"|\" + K(t, e.indent) + G(R(t, i));\n                    case H:\n                        return \">\" + K(t, e.indent) + G(R(function(e, t) {\n                            var n, r, o = /(\\n+)([^\\n]*)/g,\n                                i = (u = e.indexOf(\"\\n\"), u = -1 !== u ? u : e.length, o.lastIndex = u, $(e.slice(0, u), t)),\n                                a = \"\\n\" === e[0] || \" \" === e[0];\n                            var u;\n                            for (; r = o.exec(e);) {\n                                var s = r[1],\n                                    l = r[2];\n                                n = \" \" === l[0], i += s + (a || n || \"\" === l ? \"\" : \"\\n\") + $(l, t), a = n\n                            }\n                            return i\n                        }(t, a), i));\n                    case W:\n                        return '\"' + function(e) {\n                            for (var t, n, r, o = \"\", i = 0; i < e.length; i++)(t = e.charCodeAt(i)) >= 55296 && t <= 56319 && (n = e.charCodeAt(i + 1)) >= 56320 && n <= 57343 ? (o += j(1024 * (t - 55296) + n - 56320 + 65536), i++) : (r = M[t], o += !r && U(t) ? e[i] : r || j(t));\n                            return o\n                        }(t) + '\"';\n                    default:\n                        throw new o(\"impossible error: invalid scalar style\")\n                }\n            }()\n        }\n\n        function K(e, t) {\n            var n = F(e) ? String(t) : \"\",\n                r = \"\\n\" === e[e.length - 1];\n            return n + (r && (\"\\n\" === e[e.length - 2] || \"\\n\" === e) ? \"+\" : r ? \"\" : \"-\") + \"\\n\"\n        }\n\n        function G(e) {\n            return \"\\n\" === e[e.length - 1] ? e.slice(0, -1) : e\n        }\n\n        function $(e, t) {\n            if (\"\" === e || \" \" === e[0]) return e;\n            for (var n, r, o = / [^ ]/g, i = 0, a = 0, u = 0, s = \"\"; n = o.exec(e);)(u = n.index) - i > t && (r = a > i ? a : u, s += \"\\n\" + e.slice(i, r), i = r + 1), a = u;\n            return s += \"\\n\", e.length - i > t && a > i ? s += e.slice(i, a) + \"\\n\" + e.slice(a + 1) : s += e.slice(i), s.slice(1)\n        }\n\n        function Z(e, t, n) {\n            var r, i, a, l, c, f;\n            for (a = 0, l = (i = n ? e.explicitTypes : e.implicitTypes).length; a < l; a += 1)\n                if (((c = i[a]).instanceOf || c.predicate) && (!c.instanceOf || \"object\" == typeof t && t instanceof c.instanceOf) && (!c.predicate || c.predicate(t))) {\n                    if (e.tag = n ? c.tag : \"?\", c.represent) {\n                        if (f = e.styleMap[c.tag] || c.defaultStyle, \"[object Function]\" === u.call(c.represent)) r = c.represent(t, f);\n                        else {\n                            if (!s.call(c.represent, f)) throw new o(\"!<\" + c.tag + '> tag resolver accepts not \"' + f + '\" style');\n                            r = c.represent[f](t, f)\n                        }\n                        e.dump = r\n                    }\n                    return !0\n                }\n            return !1\n        }\n\n        function X(e, t, n, r, i, a) {\n            e.tag = null, e.dump = n, Z(e, n, !1) || Z(e, n, !0);\n            var s = u.call(e.dump);\n            r && (r = e.flowLevel < 0 || e.flowLevel > t);\n            var l, f, p = \"[object Object]\" === s || \"[object Array]\" === s;\n            if (p && (f = -1 !== (l = e.duplicates.indexOf(n))), (null !== e.tag && \"?\" !== e.tag || f || 2 !== e.indent && t > 0) && (i = !1), f && e.usedDuplicates[l]) e.dump = \"*ref_\" + l;\n            else {\n                if (p && f && !e.usedDuplicates[l] && (e.usedDuplicates[l] = !0), \"[object Object]\" === s) r && 0 !== Object.keys(e.dump).length ? (! function(e, t, n, r) {\n                    var i, a, u, s, l, f, p = \"\",\n                        d = e.tag,\n                        h = Object.keys(n);\n                    if (!0 === e.sortKeys) h.sort();\n                    else if (\"function\" == typeof e.sortKeys) h.sort(e.sortKeys);\n                    else if (e.sortKeys) throw new o(\"sortKeys must be a boolean or a function\");\n                    for (i = 0, a = h.length; i < a; i += 1) f = \"\", r && 0 === i || (f += D(e, t)), s = n[u = h[i]], X(e, t + 1, u, !0, !0, !0) && ((l = null !== e.tag && \"?\" !== e.tag || e.dump && e.dump.length > 1024) && (e.dump && c === e.dump.charCodeAt(0) ? f += \"?\" : f += \"? \"), f += e.dump, l && (f += D(e, t)), X(e, t + 1, s, !0, l) && (e.dump && c === e.dump.charCodeAt(0) ? f += \":\" : f += \": \", p += f += e.dump));\n                    e.tag = d, e.dump = p || \"{}\"\n                }(e, t, e.dump, i), f && (e.dump = \"&ref_\" + l + e.dump)) : (! function(e, t, n) {\n                    var r, o, i, a, u, s = \"\",\n                        l = e.tag,\n                        c = Object.keys(n);\n                    for (r = 0, o = c.length; r < o; r += 1) u = e.condenseFlow ? '\"' : \"\", 0 !== r && (u += \", \"), a = n[i = c[r]], X(e, t, i, !1, !1) && (e.dump.length > 1024 && (u += \"? \"), u += e.dump + (e.condenseFlow ? '\"' : \"\") + \":\" + (e.condenseFlow ? \"\" : \" \"), X(e, t, a, !1, !1) && (s += u += e.dump));\n                    e.tag = l, e.dump = \"{\" + s + \"}\"\n                }(e, t, e.dump), f && (e.dump = \"&ref_\" + l + \" \" + e.dump));\n                else if (\"[object Array]\" === s) r && 0 !== e.dump.length ? (! function(e, t, n, r) {\n                    var o, i, a = \"\",\n                        u = e.tag;\n                    for (o = 0, i = n.length; o < i; o += 1) X(e, t + 1, n[o], !0, !0) && (r && 0 === o || (a += D(e, t)), e.dump && c === e.dump.charCodeAt(0) ? a += \"-\" : a += \"- \", a += e.dump);\n                    e.tag = u, e.dump = a || \"[]\"\n                }(e, t, e.dump, i), f && (e.dump = \"&ref_\" + l + e.dump)) : (! function(e, t, n) {\n                    var r, o, i = \"\",\n                        a = e.tag;\n                    for (r = 0, o = n.length; r < o; r += 1) X(e, t, n[r], !1, !1) && (0 !== r && (i += \",\" + (e.condenseFlow ? \"\" : \" \")), i += e.dump);\n                    e.tag = a, e.dump = \"[\" + i + \"]\"\n                }(e, t, e.dump), f && (e.dump = \"&ref_\" + l + \" \" + e.dump));\n                else {\n                    if (\"[object String]\" !== s) {\n                        if (e.skipInvalid) return !1;\n                        throw new o(\"unacceptable kind of an object to dump \" + s)\n                    }\n                    \"?\" !== e.tag && Y(e, e.dump, t, a)\n                }\n                null !== e.tag && \"?\" !== e.tag && (e.dump = \"!<\" + e.tag + \"> \" + e.dump)\n            }\n            return !0\n        }\n\n        function Q(e, t) {\n            var n, r, o = [],\n                i = [];\n            for (function e(t, n, r) {\n                var o, i, a;\n                if (null !== t && \"object\" == typeof t)\n                    if (-1 !== (i = n.indexOf(t))) - 1 === r.indexOf(i) && r.push(i);\n                    else if (n.push(t), Array.isArray(t))\n                        for (i = 0, a = t.length; i < a; i += 1) e(t[i], n, r);\n                    else\n                        for (o = Object.keys(t), i = 0, a = o.length; i < a; i += 1) e(t[o[i]], n, r)\n            }(e, o, i), n = 0, r = i.length; n < r; n += 1) t.duplicates.push(o[i[n]]);\n            t.usedDuplicates = new Array(r)\n        }\n\n        function ee(e, t) {\n            var n = new N(t = t || {});\n            return n.noRefs || Q(e, n), X(n, 0, e, !0, !0) ? n.dump + \"\\n\" : \"\"\n        }\n        e.exports.dump = ee, e.exports.safeDump = function(e, t) {\n            return ee(e, r.extend({\n                schema: a\n            }, t))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            if (t = t.split(\":\")[0], !(e = +e)) return !1;\n            switch (t) {\n                case \"http\":\n                case \"ws\":\n                    return 80 !== e;\n                case \"https\":\n                case \"wss\":\n                    return 443 !== e;\n                case \"ftp\":\n                    return 21 !== e;\n                case \"gopher\":\n                    return 70 !== e;\n                case \"file\":\n                    return !1\n            }\n            return 0 !== e\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = Object.prototype.hasOwnProperty;\n\n        function o(e) {\n            return decodeURIComponent(e.replace(/\\+/g, \" \"))\n        }\n        t.stringify = function(e, t) {\n            t = t || \"\";\n            var n = [];\n            for (var o in \"string\" != typeof t && (t = \"?\"), e) r.call(e, o) && n.push(encodeURIComponent(o) + \"=\" + encodeURIComponent(e[o]));\n            return n.length ? t + n.join(\"&\") : \"\"\n        }, t.parse = function(e) {\n            for (var t, n = /([^=?&]+)=?([^&]*)/g, r = {}; t = n.exec(e);) {\n                var i = o(t[1]),\n                    a = o(t[2]);\n                i in r || (r[i] = a)\n            }\n            return r\n        }\n    }, function(e, t, n) {\n        var r = n(38),\n            o = n(764),\n            i = n(302),\n            a = \"Expected a function\",\n            u = Math.max,\n            s = Math.min;\n        e.exports = function(e, t, n) {\n            var l, c, f, p, d, h, v = 0,\n                m = !1,\n                g = !1,\n                y = !0;\n            if (\"function\" != typeof e) throw new TypeError(a);\n\n            function b(t) {\n                var n = l,\n                    r = c;\n                return l = c = void 0, v = t, p = e.apply(r, n)\n            }\n\n            function _(e) {\n                var n = e - h;\n                return void 0 === h || n >= t || n < 0 || g && e - v >= f\n            }\n\n            function w() {\n                var e = o();\n                if (_(e)) return E(e);\n                d = setTimeout(w, function(e) {\n                    var n = t - (e - h);\n                    return g ? s(n, f - (e - v)) : n\n                }(e))\n            }\n\n            function E(e) {\n                return d = void 0, y && l ? b(e) : (l = c = void 0, p)\n            }\n\n            function x() {\n                var e = o(),\n                    n = _(e);\n                if (l = arguments, c = this, h = e, n) {\n                    if (void 0 === d) return function(e) {\n                        return v = e, d = setTimeout(w, t), m ? b(e) : p\n                    }(h);\n                    if (g) return d = setTimeout(w, t), b(h)\n                }\n                return void 0 === d && (d = setTimeout(w, t)), p\n            }\n            return t = i(t) || 0, r(n) && (m = !!n.leading, f = (g = \"maxWait\" in n) ? u(i(n.maxWait) || 0, t) : f, y = \"trailing\" in n ? !!n.trailing : y), x.cancel = function() {\n                void 0 !== d && clearTimeout(d), v = 0, l = h = c = d = void 0\n            }, x.flush = function() {\n                return void 0 === d ? p : E(o())\n            }, x\n        }\n    }, function(e, t, n) {\n        var r = n(37);\n        e.exports = function() {\n            return r.Date.now()\n        }\n    }, function(e, t, n) {\n        var r = n(343);\n        e.exports = function(e, t, n) {\n            return null == e ? e : r(e, t, n)\n        }\n    }, function(e, t, n) {\n        n(767), e.exports = n(15).Object.getPrototypeOf\n    }, function(e, t, n) {\n        var r = n(72),\n            o = n(241);\n        n(257)(\"getPrototypeOf\", function() {\n            return function(e) {\n                return o(r(e))\n            }\n        })\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(769),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(770), e.exports = n(15).Object.setPrototypeOf\n    }, function(e, t, n) {\n        var r = n(20);\n        r(r.S, \"Object\", {\n            setPrototypeOf: n(771).set\n        })\n    }, function(e, t, n) {\n        var r = n(28),\n            o = n(36),\n            i = function(e, t) {\n                if (o(e), !r(t) && null !== t) throw TypeError(t + \": can't set as prototype!\")\n            };\n        e.exports = {\n            set: Object.setPrototypeOf || (\"__proto__\" in {} ? function(e, t, r) {\n                try {\n                    (r = n(49)(Function.call, n(260).f(Object.prototype, \"__proto__\").set, 2))(e, []), t = !(e instanceof Array)\n                } catch (e) {\n                    t = !0\n                }\n                return function(e, n) {\n                    return i(e, n), t ? e.__proto__ = n : r(e, n), e\n                }\n            }({}, !1) : void 0),\n            check: i\n        }\n    }, function(e, t, n) {\n        n(773);\n        var r = n(15).Object;\n        e.exports = function(e, t) {\n            return r.create(e, t)\n        }\n    }, function(e, t, n) {\n        var r = n(20);\n        r(r.S, \"Object\", {\n            create: n(159)\n        })\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = n(775)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(14),\n            o = n(776),\n            i = n(373),\n            a = n(88),\n            u = n(43),\n            s = n(848),\n            l = n(849),\n            c = n(374),\n            f = n(850);\n        n(9);\n        o.inject();\n        var p = {\n            findDOMNode: l,\n            render: i.render,\n            unmountComponentAtNode: i.unmountComponentAtNode,\n            version: s,\n            unstable_batchedUpdates: u.batchedUpdates,\n            unstable_renderSubtreeIntoContainer: f\n        };\n        \"undefined\" != typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && \"function\" == typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.inject && __REACT_DEVTOOLS_GLOBAL_HOOK__.inject({\n            ComponentTree: {\n                getClosestInstanceFromNode: r.getClosestInstanceFromNode,\n                getNodeFromInstance: function(e) {\n                    return e._renderedComponent && (e = c(e)), e ? r.getNodeFromInstance(e) : null\n                }\n            },\n            Mount: i,\n            Reconciler: a\n        }), e.exports = p\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(777),\n            o = n(778),\n            i = n(782),\n            a = n(785),\n            u = n(786),\n            s = n(787),\n            l = n(788),\n            c = n(794),\n            f = n(14),\n            p = n(819),\n            d = n(820),\n            h = n(821),\n            v = n(822),\n            m = n(823),\n            g = n(825),\n            y = n(826),\n            b = n(832),\n            _ = n(833),\n            w = n(834),\n            E = !1;\n        e.exports = {\n            inject: function() {\n                E || (E = !0, g.EventEmitter.injectReactEventListener(m), g.EventPluginHub.injectEventPluginOrder(a), g.EventPluginUtils.injectComponentTree(f), g.EventPluginUtils.injectTreeTraversal(d), g.EventPluginHub.injectEventPluginsByName({\n                    SimpleEventPlugin: w,\n                    EnterLeaveEventPlugin: u,\n                    ChangeEventPlugin: i,\n                    SelectEventPlugin: _,\n                    BeforeInputEventPlugin: o\n                }), g.HostComponent.injectGenericComponentClass(c), g.HostComponent.injectTextComponentClass(h), g.DOMProperty.injectDOMPropertyConfig(r), g.DOMProperty.injectDOMPropertyConfig(s), g.DOMProperty.injectDOMPropertyConfig(b), g.EmptyComponent.injectEmptyComponentFactory(function(e) {\n                    return new p(e)\n                }), g.Updates.injectReconcileTransaction(y), g.Updates.injectBatchingStrategy(v), g.Component.injectEnvironment(l))\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            Properties: {\n                \"aria-current\": 0,\n                \"aria-details\": 0,\n                \"aria-disabled\": 0,\n                \"aria-hidden\": 0,\n                \"aria-invalid\": 0,\n                \"aria-keyshortcuts\": 0,\n                \"aria-label\": 0,\n                \"aria-roledescription\": 0,\n                \"aria-autocomplete\": 0,\n                \"aria-checked\": 0,\n                \"aria-expanded\": 0,\n                \"aria-haspopup\": 0,\n                \"aria-level\": 0,\n                \"aria-modal\": 0,\n                \"aria-multiline\": 0,\n                \"aria-multiselectable\": 0,\n                \"aria-orientation\": 0,\n                \"aria-placeholder\": 0,\n                \"aria-pressed\": 0,\n                \"aria-readonly\": 0,\n                \"aria-required\": 0,\n                \"aria-selected\": 0,\n                \"aria-sort\": 0,\n                \"aria-valuemax\": 0,\n                \"aria-valuemin\": 0,\n                \"aria-valuenow\": 0,\n                \"aria-valuetext\": 0,\n                \"aria-atomic\": 0,\n                \"aria-busy\": 0,\n                \"aria-live\": 0,\n                \"aria-relevant\": 0,\n                \"aria-dropeffect\": 0,\n                \"aria-grabbed\": 0,\n                \"aria-activedescendant\": 0,\n                \"aria-colcount\": 0,\n                \"aria-colindex\": 0,\n                \"aria-colspan\": 0,\n                \"aria-controls\": 0,\n                \"aria-describedby\": 0,\n                \"aria-errormessage\": 0,\n                \"aria-flowto\": 0,\n                \"aria-labelledby\": 0,\n                \"aria-owns\": 0,\n                \"aria-posinset\": 0,\n                \"aria-rowcount\": 0,\n                \"aria-rowindex\": 0,\n                \"aria-rowspan\": 0,\n                \"aria-setsize\": 0\n            },\n            DOMAttributeNames: {},\n            DOMPropertyNames: {}\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(109),\n            o = n(26),\n            i = n(779),\n            a = n(780),\n            u = n(781),\n            s = [9, 13, 27, 32],\n            l = 229,\n            c = o.canUseDOM && \"CompositionEvent\" in window,\n            f = null;\n        o.canUseDOM && \"documentMode\" in document && (f = document.documentMode);\n        var p, d = o.canUseDOM && \"TextEvent\" in window && !f && !(\"object\" == typeof(p = window.opera) && \"function\" == typeof p.version && parseInt(p.version(), 10) <= 12),\n            h = o.canUseDOM && (!c || f && f > 8 && f <= 11);\n        var v = 32,\n            m = String.fromCharCode(v),\n            g = {\n                beforeInput: {\n                    phasedRegistrationNames: {\n                        bubbled: \"onBeforeInput\",\n                        captured: \"onBeforeInputCapture\"\n                    },\n                    dependencies: [\"topCompositionEnd\", \"topKeyPress\", \"topTextInput\", \"topPaste\"]\n                },\n                compositionEnd: {\n                    phasedRegistrationNames: {\n                        bubbled: \"onCompositionEnd\",\n                        captured: \"onCompositionEndCapture\"\n                    },\n                    dependencies: [\"topBlur\", \"topCompositionEnd\", \"topKeyDown\", \"topKeyPress\", \"topKeyUp\", \"topMouseDown\"]\n                },\n                compositionStart: {\n                    phasedRegistrationNames: {\n                        bubbled: \"onCompositionStart\",\n                        captured: \"onCompositionStartCapture\"\n                    },\n                    dependencies: [\"topBlur\", \"topCompositionStart\", \"topKeyDown\", \"topKeyPress\", \"topKeyUp\", \"topMouseDown\"]\n                },\n                compositionUpdate: {\n                    phasedRegistrationNames: {\n                        bubbled: \"onCompositionUpdate\",\n                        captured: \"onCompositionUpdateCapture\"\n                    },\n                    dependencies: [\"topBlur\", \"topCompositionUpdate\", \"topKeyDown\", \"topKeyPress\", \"topKeyUp\", \"topMouseDown\"]\n                }\n            },\n            y = !1;\n\n        function b(e, t) {\n            switch (e) {\n                case \"topKeyUp\":\n                    return -1 !== s.indexOf(t.keyCode);\n                case \"topKeyDown\":\n                    return t.keyCode !== l;\n                case \"topKeyPress\":\n                case \"topMouseDown\":\n                case \"topBlur\":\n                    return !0;\n                default:\n                    return !1\n            }\n        }\n\n        function _(e) {\n            var t = e.detail;\n            return \"object\" == typeof t && \"data\" in t ? t.data : null\n        }\n        var w = null;\n\n        function E(e, t, n, o) {\n            var u, s;\n            if (c ? u = function(e) {\n                switch (e) {\n                    case \"topCompositionStart\":\n                        return g.compositionStart;\n                    case \"topCompositionEnd\":\n                        return g.compositionEnd;\n                    case \"topCompositionUpdate\":\n                        return g.compositionUpdate\n                }\n            }(e) : w ? b(e, n) && (u = g.compositionEnd) : function(e, t) {\n                return \"topKeyDown\" === e && t.keyCode === l\n            }(e, n) && (u = g.compositionStart), !u) return null;\n            h && (w || u !== g.compositionStart ? u === g.compositionEnd && w && (s = w.getData()) : w = i.getPooled(o));\n            var f = a.getPooled(u, t, n, o);\n            if (s) f.data = s;\n            else {\n                var p = _(n);\n                null !== p && (f.data = p)\n            }\n            return r.accumulateTwoPhaseDispatches(f), f\n        }\n\n        function x(e, t, n, o) {\n            var a;\n            if (!(a = d ? function(e, t) {\n                switch (e) {\n                    case \"topCompositionEnd\":\n                        return _(t);\n                    case \"topKeyPress\":\n                        return t.which !== v ? null : (y = !0, m);\n                    case \"topTextInput\":\n                        var n = t.data;\n                        return n === m && y ? null : n;\n                    default:\n                        return null\n                }\n            }(e, n) : function(e, t) {\n                if (w) {\n                    if (\"topCompositionEnd\" === e || !c && b(e, t)) {\n                        var n = w.getData();\n                        return i.release(w), w = null, n\n                    }\n                    return null\n                }\n                switch (e) {\n                    case \"topPaste\":\n                        return null;\n                    case \"topKeyPress\":\n                        return t.which && ! function(e) {\n                            return (e.ctrlKey || e.altKey || e.metaKey) && !(e.ctrlKey && e.altKey)\n                        }(t) ? String.fromCharCode(t.which) : null;\n                    case \"topCompositionEnd\":\n                        return h ? null : t.data;\n                    default:\n                        return null\n                }\n            }(e, n))) return null;\n            var s = u.getPooled(g.beforeInput, t, n, o);\n            return s.data = a, r.accumulateTwoPhaseDispatches(s), s\n        }\n        var S = {\n            eventTypes: g,\n            extractEvents: function(e, t, n, r) {\n                return [E(e, t, n, r), x(e, t, n, r)]\n            }\n        };\n        e.exports = S\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(69),\n            i = n(353);\n\n        function a(e) {\n            this._root = e, this._startText = this.getText(), this._fallbackText = null\n        }\n        r(a.prototype, {\n            destructor: function() {\n                this._root = null, this._startText = null, this._fallbackText = null\n            },\n            getText: function() {\n                return \"value\" in this._root ? this._root.value : this._root[i()]\n            },\n            getData: function() {\n                if (this._fallbackText) return this._fallbackText;\n                var e, t, n = this._startText,\n                    r = n.length,\n                    o = this.getText(),\n                    i = o.length;\n                for (e = 0; e < r && n[e] === o[e]; e++);\n                var a = r - e;\n                for (t = 1; t <= a && n[r - t] === o[i - t]; t++);\n                var u = t > 1 ? 1 - t : void 0;\n                return this._fallbackText = o.slice(e, u), this._fallbackText\n            }\n        }), o.addPoolingTo(a), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(48);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            data: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(48);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            data: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(110),\n            o = n(109),\n            i = n(26),\n            a = n(14),\n            u = n(43),\n            s = n(48),\n            l = n(356),\n            c = n(213),\n            f = n(214),\n            p = n(357),\n            d = {\n                change: {\n                    phasedRegistrationNames: {\n                        bubbled: \"onChange\",\n                        captured: \"onChangeCapture\"\n                    },\n                    dependencies: [\"topBlur\", \"topChange\", \"topClick\", \"topFocus\", \"topInput\", \"topKeyDown\", \"topKeyUp\", \"topSelectionChange\"]\n                }\n            };\n\n        function h(e, t, n) {\n            var r = s.getPooled(d.change, e, t, n);\n            return r.type = \"change\", o.accumulateTwoPhaseDispatches(r), r\n        }\n        var v = null,\n            m = null;\n        var g = !1;\n\n        function y(e) {\n            var t = h(m, e, c(e));\n            u.batchedUpdates(b, t)\n        }\n\n        function b(e) {\n            r.enqueueEvents(e), r.processEventQueue(!1)\n        }\n\n        function _() {\n            v && (v.detachEvent(\"onchange\", y), v = null, m = null)\n        }\n\n        function w(e, t) {\n            var n = l.updateValueIfChanged(e),\n                r = !0 === t.simulated && M._allowSimulatedPassThrough;\n            if (n || r) return e\n        }\n\n        function E(e, t) {\n            if (\"topChange\" === e) return t\n        }\n\n        function x(e, t, n) {\n            \"topFocus\" === e ? (_(), function(e, t) {\n                m = t, (v = e).attachEvent(\"onchange\", y)\n            }(t, n)) : \"topBlur\" === e && _()\n        }\n        i.canUseDOM && (g = f(\"change\") && (!document.documentMode || document.documentMode > 8));\n        var S = !1;\n\n        function C() {\n            v && (v.detachEvent(\"onpropertychange\", k), v = null, m = null)\n        }\n\n        function k(e) {\n            \"value\" === e.propertyName && w(m, e) && y(e)\n        }\n\n        function A(e, t, n) {\n            \"topFocus\" === e ? (C(), function(e, t) {\n                m = t, (v = e).attachEvent(\"onpropertychange\", k)\n            }(t, n)) : \"topBlur\" === e && C()\n        }\n\n        function O(e, t, n) {\n            if (\"topSelectionChange\" === e || \"topKeyUp\" === e || \"topKeyDown\" === e) return w(m, n)\n        }\n\n        function P(e, t, n) {\n            if (\"topClick\" === e) return w(t, n)\n        }\n\n        function T(e, t, n) {\n            if (\"topInput\" === e || \"topChange\" === e) return w(t, n)\n        }\n        i.canUseDOM && (S = f(\"input\") && (!document.documentMode || document.documentMode > 9));\n        var M = {\n            eventTypes: d,\n            _allowSimulatedPassThrough: !0,\n            _isInputEventSupported: S,\n            extractEvents: function(e, t, n, r) {\n                var o, i, u, s, l = t ? a.getNodeFromInstance(t) : window;\n                if (\"select\" === (s = (u = l).nodeName && u.nodeName.toLowerCase()) || \"input\" === s && \"file\" === u.type ? g ? o = E : i = x : p(l) ? S ? o = T : (o = O, i = A) : function(e) {\n                    var t = e.nodeName;\n                    return t && \"input\" === t.toLowerCase() && (\"checkbox\" === e.type || \"radio\" === e.type)\n                }(l) && (o = P), o) {\n                    var c = o(e, t, n);\n                    if (c) return h(c, n, r)\n                }\n                i && i(e, l, t), \"topBlur\" === e && function(e, t) {\n                    if (null != e) {\n                        var n = e._wrapperState || t._wrapperState;\n                        if (n && n.controlled && \"number\" === t.type) {\n                            var r = \"\" + t.value;\n                            t.getAttribute(\"value\") !== r && t.setAttribute(\"value\", r)\n                        }\n                    }\n                }(t, l)\n            }\n        };\n        e.exports = M\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(784),\n            o = {};\n        o.attachRefs = function(e, t) {\n            if (null !== t && \"object\" == typeof t) {\n                var n = t.ref;\n                null != n && function(e, t, n) {\n                    \"function\" == typeof e ? e(t.getPublicInstance()) : r.addComponentAsRefTo(t, e, n)\n                }(n, e, t._owner)\n            }\n        }, o.shouldUpdateRefs = function(e, t) {\n            var n = null,\n                r = null;\n            null !== e && \"object\" == typeof e && (n = e.ref, r = e._owner);\n            var o = null,\n                i = null;\n            return null !== t && \"object\" == typeof t && (o = t.ref, i = t._owner), n !== o || \"string\" == typeof o && i !== r\n        }, o.detachRefs = function(e, t) {\n            if (null !== t && \"object\" == typeof t) {\n                var n = t.ref;\n                null != n && function(e, t, n) {\n                    \"function\" == typeof e ? e(null) : r.removeComponentAsRefFrom(t, e, n)\n                }(n, e, t._owner)\n            }\n        }, e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11);\n        n(8);\n\n        function o(e) {\n            return !(!e || \"function\" != typeof e.attachRef || \"function\" != typeof e.detachRef)\n        }\n        var i = {\n            addComponentAsRefTo: function(e, t, n) {\n                o(n) || r(\"119\"), n.attachRef(t, e)\n            },\n            removeComponentAsRefFrom: function(e, t, n) {\n                o(n) || r(\"120\");\n                var i = n.getPublicInstance();\n                i && i.refs[t] === e.getPublicInstance() && n.detachRef(t)\n            }\n        };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = [\"ResponderEventPlugin\", \"SimpleEventPlugin\", \"TapEventPlugin\", \"EnterLeaveEventPlugin\", \"ChangeEventPlugin\", \"SelectEventPlugin\", \"BeforeInputEventPlugin\"]\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(109),\n            o = n(14),\n            i = n(148),\n            a = {\n                mouseEnter: {\n                    registrationName: \"onMouseEnter\",\n                    dependencies: [\"topMouseOut\", \"topMouseOver\"]\n                },\n                mouseLeave: {\n                    registrationName: \"onMouseLeave\",\n                    dependencies: [\"topMouseOut\", \"topMouseOver\"]\n                }\n            },\n            u = {\n                eventTypes: a,\n                extractEvents: function(e, t, n, u) {\n                    if (\"topMouseOver\" === e && (n.relatedTarget || n.fromElement)) return null;\n                    if (\"topMouseOut\" !== e && \"topMouseOver\" !== e) return null;\n                    var s, l, c;\n                    if (u.window === u) s = u;\n                    else {\n                        var f = u.ownerDocument;\n                        s = f ? f.defaultView || f.parentWindow : window\n                    }\n                    if (\"topMouseOut\" === e) {\n                        l = t;\n                        var p = n.relatedTarget || n.toElement;\n                        c = p ? o.getClosestInstanceFromNode(p) : null\n                    } else l = null, c = t;\n                    if (l === c) return null;\n                    var d = null == l ? s : o.getNodeFromInstance(l),\n                        h = null == c ? s : o.getNodeFromInstance(c),\n                        v = i.getPooled(a.mouseLeave, l, n, u);\n                    v.type = \"mouseleave\", v.target = d, v.relatedTarget = h;\n                    var m = i.getPooled(a.mouseEnter, c, n, u);\n                    return m.type = \"mouseenter\", m.target = h, m.relatedTarget = d, r.accumulateEnterLeaveDispatches(v, m, l, c), [v, m]\n                }\n            };\n        e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(87),\n            o = r.injection.MUST_USE_PROPERTY,\n            i = r.injection.HAS_BOOLEAN_VALUE,\n            a = r.injection.HAS_NUMERIC_VALUE,\n            u = r.injection.HAS_POSITIVE_NUMERIC_VALUE,\n            s = r.injection.HAS_OVERLOADED_BOOLEAN_VALUE,\n            l = {\n                isCustomAttribute: RegExp.prototype.test.bind(new RegExp(\"^(data|aria)-[\" + r.ATTRIBUTE_NAME_CHAR + \"]*$\")),\n                Properties: {\n                    accept: 0,\n                    acceptCharset: 0,\n                    accessKey: 0,\n                    action: 0,\n                    allowFullScreen: i,\n                    allowTransparency: 0,\n                    alt: 0,\n                    as: 0,\n                    async: i,\n                    autoComplete: 0,\n                    autoPlay: i,\n                    capture: i,\n                    cellPadding: 0,\n                    cellSpacing: 0,\n                    charSet: 0,\n                    challenge: 0,\n                    checked: o | i,\n                    cite: 0,\n                    classID: 0,\n                    className: 0,\n                    cols: u,\n                    colSpan: 0,\n                    content: 0,\n                    contentEditable: 0,\n                    contextMenu: 0,\n                    controls: i,\n                    controlsList: 0,\n                    coords: 0,\n                    crossOrigin: 0,\n                    data: 0,\n                    dateTime: 0,\n                    default: i,\n                    defer: i,\n                    dir: 0,\n                    disabled: i,\n                    download: s,\n                    draggable: 0,\n                    encType: 0,\n                    form: 0,\n                    formAction: 0,\n                    formEncType: 0,\n                    formMethod: 0,\n                    formNoValidate: i,\n                    formTarget: 0,\n                    frameBorder: 0,\n                    headers: 0,\n                    height: 0,\n                    hidden: i,\n                    high: 0,\n                    href: 0,\n                    hrefLang: 0,\n                    htmlFor: 0,\n                    httpEquiv: 0,\n                    icon: 0,\n                    id: 0,\n                    inputMode: 0,\n                    integrity: 0,\n                    is: 0,\n                    keyParams: 0,\n                    keyType: 0,\n                    kind: 0,\n                    label: 0,\n                    lang: 0,\n                    list: 0,\n                    loop: i,\n                    low: 0,\n                    manifest: 0,\n                    marginHeight: 0,\n                    marginWidth: 0,\n                    max: 0,\n                    maxLength: 0,\n                    media: 0,\n                    mediaGroup: 0,\n                    method: 0,\n                    min: 0,\n                    minLength: 0,\n                    multiple: o | i,\n                    muted: o | i,\n                    name: 0,\n                    nonce: 0,\n                    noValidate: i,\n                    open: i,\n                    optimum: 0,\n                    pattern: 0,\n                    placeholder: 0,\n                    playsInline: i,\n                    poster: 0,\n                    preload: 0,\n                    profile: 0,\n                    radioGroup: 0,\n                    readOnly: i,\n                    referrerPolicy: 0,\n                    rel: 0,\n                    required: i,\n                    reversed: i,\n                    role: 0,\n                    rows: u,\n                    rowSpan: a,\n                    sandbox: 0,\n                    scope: 0,\n                    scoped: i,\n                    scrolling: 0,\n                    seamless: i,\n                    selected: o | i,\n                    shape: 0,\n                    size: u,\n                    sizes: 0,\n                    span: u,\n                    spellCheck: 0,\n                    src: 0,\n                    srcDoc: 0,\n                    srcLang: 0,\n                    srcSet: 0,\n                    start: a,\n                    step: 0,\n                    style: 0,\n                    summary: 0,\n                    tabIndex: 0,\n                    target: 0,\n                    title: 0,\n                    type: 0,\n                    useMap: 0,\n                    value: 0,\n                    width: 0,\n                    wmode: 0,\n                    wrap: 0,\n                    about: 0,\n                    datatype: 0,\n                    inlist: 0,\n                    prefix: 0,\n                    property: 0,\n                    resource: 0,\n                    typeof: 0,\n                    vocab: 0,\n                    autoCapitalize: 0,\n                    autoCorrect: 0,\n                    autoSave: 0,\n                    color: 0,\n                    itemProp: 0,\n                    itemScope: i,\n                    itemType: 0,\n                    itemID: 0,\n                    itemRef: 0,\n                    results: 0,\n                    security: 0,\n                    unselectable: 0\n                },\n                DOMAttributeNames: {\n                    acceptCharset: \"accept-charset\",\n                    className: \"class\",\n                    htmlFor: \"for\",\n                    httpEquiv: \"http-equiv\"\n                },\n                DOMPropertyNames: {},\n                DOMMutationMethods: {\n                    value: function(e, t) {\n                        if (null == t) return e.removeAttribute(\"value\");\n                        \"number\" !== e.type || !1 === e.hasAttribute(\"value\") ? e.setAttribute(\"value\", \"\" + t) : e.validity && !e.validity.badInput && e.ownerDocument.activeElement !== e && e.setAttribute(\"value\", \"\" + t)\n                    }\n                }\n            };\n        e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(216),\n            o = {\n                processChildrenUpdates: n(793).dangerouslyProcessChildrenUpdates,\n                replaceNodeWithMarkup: r.dangerouslyReplaceNodeWithMarkup\n            };\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(89),\n            i = n(26),\n            a = n(790),\n            u = n(34),\n            s = (n(8), {\n                dangerouslyReplaceNodeWithMarkup: function(e, t) {\n                    if (i.canUseDOM || r(\"56\"), t || r(\"57\"), \"HTML\" === e.nodeName && r(\"58\"), \"string\" == typeof t) {\n                        var n = a(t, u)[0];\n                        e.parentNode.replaceChild(n, e)\n                    } else o.replaceChildWithTree(e, t)\n                }\n            });\n        e.exports = s\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(26),\n            o = n(791),\n            i = n(792),\n            a = n(8),\n            u = r.canUseDOM ? document.createElement(\"div\") : null,\n            s = /^\\s*<(\\w+)/;\n        e.exports = function(e, t) {\n            var n = u;\n            u || a(!1);\n            var r = function(e) {\n                    var t = e.match(s);\n                    return t && t[1].toLowerCase()\n                }(e),\n                l = r && i(r);\n            if (l) {\n                n.innerHTML = l[1] + e + l[2];\n                for (var c = l[0]; c--;) n = n.lastChild\n            } else n.innerHTML = e;\n            var f = n.getElementsByTagName(\"script\");\n            f.length && (t || a(!1), o(f).forEach(t));\n            for (var p = Array.from(n.childNodes); n.lastChild;) n.removeChild(n.lastChild);\n            return p\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(8);\n        e.exports = function(e) {\n            return function(e) {\n                return !!e && (\"object\" == typeof e || \"function\" == typeof e) && \"length\" in e && !(\"setInterval\" in e) && \"number\" != typeof e.nodeType && (Array.isArray(e) || \"callee\" in e || \"item\" in e)\n            }(e) ? Array.isArray(e) ? e.slice() : function(e) {\n                var t = e.length;\n                if ((Array.isArray(e) || \"object\" != typeof e && \"function\" != typeof e) && r(!1), \"number\" != typeof t && r(!1), 0 === t || t - 1 in e || r(!1), \"function\" == typeof e.callee && r(!1), e.hasOwnProperty) try {\n                    return Array.prototype.slice.call(e)\n                } catch (e) {}\n                for (var n = Array(t), o = 0; o < t; o++) n[o] = e[o];\n                return n\n            }(e) : [e]\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(26),\n            o = n(8),\n            i = r.canUseDOM ? document.createElement(\"div\") : null,\n            a = {},\n            u = [1, '<select multiple=\"true\">', \"</select>\"],\n            s = [1, \"<table>\", \"</table>\"],\n            l = [3, \"<table><tbody><tr>\", \"</tr></tbody></table>\"],\n            c = [1, '<svg xmlns=\"http://www.w3.org/2000/svg\">', \"</svg>\"],\n            f = {\n                \"*\": [1, \"?<div>\", \"</div>\"],\n                area: [1, \"<map>\", \"</map>\"],\n                col: [2, \"<table><tbody></tbody><colgroup>\", \"</colgroup></table>\"],\n                legend: [1, \"<fieldset>\", \"</fieldset>\"],\n                param: [1, \"<object>\", \"</object>\"],\n                tr: [2, \"<table><tbody>\", \"</tbody></table>\"],\n                optgroup: u,\n                option: u,\n                caption: s,\n                colgroup: s,\n                tbody: s,\n                tfoot: s,\n                thead: s,\n                td: l,\n                th: l\n            };\n        [\"circle\", \"clipPath\", \"defs\", \"ellipse\", \"g\", \"image\", \"line\", \"linearGradient\", \"mask\", \"path\", \"pattern\", \"polygon\", \"polyline\", \"radialGradient\", \"rect\", \"stop\", \"text\", \"tspan\"].forEach(function(e) {\n            f[e] = c, a[e] = !0\n        }), e.exports = function(e) {\n            return i || o(!1), f.hasOwnProperty(e) || (e = \"*\"), a.hasOwnProperty(e) || (i.innerHTML = \"*\" === e ? \"<link />\" : \"<\" + e + \"></\" + e + \">\", a[e] = !i.firstChild), a[e] ? f[e] : null\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(216),\n            o = n(14),\n            i = {\n                dangerouslyProcessChildrenUpdates: function(e, t) {\n                    var n = o.getNodeFromInstance(e);\n                    r.processUpdates(n, t)\n                }\n            };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(795),\n            a = n(796),\n            u = n(89),\n            s = n(217),\n            l = n(87),\n            c = n(362),\n            f = n(110),\n            p = n(210),\n            d = n(151),\n            h = n(350),\n            v = n(14),\n            m = n(806),\n            g = n(808),\n            y = n(363),\n            b = n(809),\n            _ = (n(39), n(810)),\n            w = n(817),\n            E = (n(34), n(150)),\n            x = (n(8), n(214), n(221), n(356)),\n            S = (n(225), n(9), h),\n            C = f.deleteListener,\n            k = v.getNodeFromInstance,\n            A = d.listenTo,\n            O = p.registrationNameModules,\n            P = {\n                string: !0,\n                number: !0\n            },\n            T = \"__html\",\n            M = {\n                children: null,\n                dangerouslySetInnerHTML: null,\n                suppressContentEditableWarning: null\n            },\n            I = 11;\n\n        function j(e) {\n            if (e) {\n                var t = e._currentElement._owner || null;\n                if (t) {\n                    var n = t.getName();\n                    if (n) return \" This DOM node was rendered by `\" + n + \"`.\"\n                }\n            }\n            return \"\"\n        }\n\n        function N(e, t) {\n            t && (J[e._tag] && (null != t.children || null != t.dangerouslySetInnerHTML) && r(\"137\", e._tag, e._currentElement._owner ? \" Check the render method of \" + e._currentElement._owner.getName() + \".\" : \"\"), null != t.dangerouslySetInnerHTML && (null != t.children && r(\"60\"), \"object\" == typeof t.dangerouslySetInnerHTML && T in t.dangerouslySetInnerHTML || r(\"61\")), null != t.style && \"object\" != typeof t.style && r(\"62\", j(e)))\n        }\n\n        function R(e, t, n, r) {\n            if (!(r instanceof w)) {\n                0;\n                var o = e._hostContainerInfo,\n                    i = o._node && o._node.nodeType === I ? o._node : o._ownerDocument;\n                A(t, i), r.getReactMountReady().enqueue(D, {\n                    inst: e,\n                    registrationName: t,\n                    listener: n\n                })\n            }\n        }\n\n        function D() {\n            f.putListener(this.inst, this.registrationName, this.listener)\n        }\n\n        function L() {\n            m.postMountWrapper(this)\n        }\n\n        function U() {\n            b.postMountWrapper(this)\n        }\n\n        function q() {\n            g.postMountWrapper(this)\n        }\n        var F = {\n            topAbort: \"abort\",\n            topCanPlay: \"canplay\",\n            topCanPlayThrough: \"canplaythrough\",\n            topDurationChange: \"durationchange\",\n            topEmptied: \"emptied\",\n            topEncrypted: \"encrypted\",\n            topEnded: \"ended\",\n            topError: \"error\",\n            topLoadedData: \"loadeddata\",\n            topLoadedMetadata: \"loadedmetadata\",\n            topLoadStart: \"loadstart\",\n            topPause: \"pause\",\n            topPlay: \"play\",\n            topPlaying: \"playing\",\n            topProgress: \"progress\",\n            topRateChange: \"ratechange\",\n            topSeeked: \"seeked\",\n            topSeeking: \"seeking\",\n            topStalled: \"stalled\",\n            topSuspend: \"suspend\",\n            topTimeUpdate: \"timeupdate\",\n            topVolumeChange: \"volumechange\",\n            topWaiting: \"waiting\"\n        };\n\n        function z() {\n            x.track(this)\n        }\n\n        function B() {\n            this._rootNodeID || r(\"63\");\n            var e = k(this);\n            switch (e || r(\"64\"), this._tag) {\n                case \"iframe\":\n                case \"object\":\n                    this._wrapperState.listeners = [d.trapBubbledEvent(\"topLoad\", \"load\", e)];\n                    break;\n                case \"video\":\n                case \"audio\":\n                    for (var t in this._wrapperState.listeners = [], F) F.hasOwnProperty(t) && this._wrapperState.listeners.push(d.trapBubbledEvent(t, F[t], e));\n                    break;\n                case \"source\":\n                    this._wrapperState.listeners = [d.trapBubbledEvent(\"topError\", \"error\", e)];\n                    break;\n                case \"img\":\n                    this._wrapperState.listeners = [d.trapBubbledEvent(\"topError\", \"error\", e), d.trapBubbledEvent(\"topLoad\", \"load\", e)];\n                    break;\n                case \"form\":\n                    this._wrapperState.listeners = [d.trapBubbledEvent(\"topReset\", \"reset\", e), d.trapBubbledEvent(\"topSubmit\", \"submit\", e)];\n                    break;\n                case \"input\":\n                case \"select\":\n                case \"textarea\":\n                    this._wrapperState.listeners = [d.trapBubbledEvent(\"topInvalid\", \"invalid\", e)]\n            }\n        }\n\n        function V() {\n            y.postUpdateWrapper(this)\n        }\n        var H = {\n                area: !0,\n                base: !0,\n                br: !0,\n                col: !0,\n                embed: !0,\n                hr: !0,\n                img: !0,\n                input: !0,\n                keygen: !0,\n                link: !0,\n                meta: !0,\n                param: !0,\n                source: !0,\n                track: !0,\n                wbr: !0\n            },\n            W = {\n                listing: !0,\n                pre: !0,\n                textarea: !0\n            },\n            J = o({\n                menuitem: !0\n            }, H),\n            Y = /^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,\n            K = {},\n            G = {}.hasOwnProperty;\n\n        function $(e, t) {\n            return e.indexOf(\"-\") >= 0 || null != t.is\n        }\n        var Z = 1;\n\n        function X(e) {\n            var t = e.type;\n            ! function(e) {\n                G.call(K, e) || (Y.test(e) || r(\"65\", e), K[e] = !0)\n            }(t), this._currentElement = e, this._tag = t.toLowerCase(), this._namespaceURI = null, this._renderedChildren = null, this._previousStyle = null, this._previousStyleCopy = null, this._hostNode = null, this._hostParent = null, this._rootNodeID = 0, this._domID = 0, this._hostContainerInfo = null, this._wrapperState = null, this._topLevelWrapper = null, this._flags = 0\n        }\n        X.displayName = \"ReactDOMComponent\", X.Mixin = {\n            mountComponent: function(e, t, n, r) {\n                this._rootNodeID = Z++, this._domID = n._idCounter++, this._hostParent = t, this._hostContainerInfo = n;\n                var o, a, l, f = this._currentElement.props;\n                switch (this._tag) {\n                    case \"audio\":\n                    case \"form\":\n                    case \"iframe\":\n                    case \"img\":\n                    case \"link\":\n                    case \"object\":\n                    case \"source\":\n                    case \"video\":\n                        this._wrapperState = {\n                            listeners: null\n                        }, e.getReactMountReady().enqueue(B, this);\n                        break;\n                    case \"input\":\n                        m.mountWrapper(this, f, t), f = m.getHostProps(this, f), e.getReactMountReady().enqueue(z, this), e.getReactMountReady().enqueue(B, this);\n                        break;\n                    case \"option\":\n                        g.mountWrapper(this, f, t), f = g.getHostProps(this, f);\n                        break;\n                    case \"select\":\n                        y.mountWrapper(this, f, t), f = y.getHostProps(this, f), e.getReactMountReady().enqueue(B, this);\n                        break;\n                    case \"textarea\":\n                        b.mountWrapper(this, f, t), f = b.getHostProps(this, f), e.getReactMountReady().enqueue(z, this), e.getReactMountReady().enqueue(B, this)\n                }\n                if (N(this, f), null != t ? (o = t._namespaceURI, a = t._tag) : n._tag && (o = n._namespaceURI, a = n._tag), (null == o || o === s.svg && \"foreignobject\" === a) && (o = s.html), o === s.html && (\"svg\" === this._tag ? o = s.svg : \"math\" === this._tag && (o = s.mathml)), this._namespaceURI = o, e.useCreateElement) {\n                    var p, d = n._ownerDocument;\n                    if (o === s.html)\n                        if (\"script\" === this._tag) {\n                            var h = d.createElement(\"div\"),\n                                _ = this._currentElement.type;\n                            h.innerHTML = \"<\" + _ + \"></\" + _ + \">\", p = h.removeChild(h.firstChild)\n                        } else p = f.is ? d.createElement(this._currentElement.type, f.is) : d.createElement(this._currentElement.type);\n                    else p = d.createElementNS(o, this._currentElement.type);\n                    v.precacheNode(this, p), this._flags |= S.hasCachedChildNodes, this._hostParent || c.setAttributeForRoot(p), this._updateDOMProperties(null, f, e);\n                    var w = u(p);\n                    this._createInitialChildren(e, f, r, w), l = w\n                } else {\n                    var E = this._createOpenTagMarkupAndPutListeners(e, f),\n                        x = this._createContentMarkup(e, f, r);\n                    l = !x && H[this._tag] ? E + \"/>\" : E + \">\" + x + \"</\" + this._currentElement.type + \">\"\n                }\n                switch (this._tag) {\n                    case \"input\":\n                        e.getReactMountReady().enqueue(L, this), f.autoFocus && e.getReactMountReady().enqueue(i.focusDOMComponent, this);\n                        break;\n                    case \"textarea\":\n                        e.getReactMountReady().enqueue(U, this), f.autoFocus && e.getReactMountReady().enqueue(i.focusDOMComponent, this);\n                        break;\n                    case \"select\":\n                    case \"button\":\n                        f.autoFocus && e.getReactMountReady().enqueue(i.focusDOMComponent, this);\n                        break;\n                    case \"option\":\n                        e.getReactMountReady().enqueue(q, this)\n                }\n                return l\n            },\n            _createOpenTagMarkupAndPutListeners: function(e, t) {\n                var n = \"<\" + this._currentElement.type;\n                for (var r in t)\n                    if (t.hasOwnProperty(r)) {\n                        var i = t[r];\n                        if (null != i)\n                            if (O.hasOwnProperty(r)) i && R(this, r, i, e);\n                            else {\n                                \"style\" === r && (i && (i = this._previousStyleCopy = o({}, t.style)), i = a.createMarkupForStyles(i, this));\n                                var u = null;\n                                null != this._tag && $(this._tag, t) ? M.hasOwnProperty(r) || (u = c.createMarkupForCustomAttribute(r, i)) : u = c.createMarkupForProperty(r, i), u && (n += \" \" + u)\n                            }\n                    }\n                return e.renderToStaticMarkup ? n : (this._hostParent || (n += \" \" + c.createMarkupForRoot()), n += \" \" + c.createMarkupForID(this._domID))\n            },\n            _createContentMarkup: function(e, t, n) {\n                var r = \"\",\n                    o = t.dangerouslySetInnerHTML;\n                if (null != o) null != o.__html && (r = o.__html);\n                else {\n                    var i = P[typeof t.children] ? t.children : null,\n                        a = null != i ? null : t.children;\n                    if (null != i) r = E(i);\n                    else if (null != a) {\n                        r = this.mountChildren(a, e, n).join(\"\")\n                    }\n                }\n                return W[this._tag] && \"\\n\" === r.charAt(0) ? \"\\n\" + r : r\n            },\n            _createInitialChildren: function(e, t, n, r) {\n                var o = t.dangerouslySetInnerHTML;\n                if (null != o) null != o.__html && u.queueHTML(r, o.__html);\n                else {\n                    var i = P[typeof t.children] ? t.children : null,\n                        a = null != i ? null : t.children;\n                    if (null != i) \"\" !== i && u.queueText(r, i);\n                    else if (null != a)\n                        for (var s = this.mountChildren(a, e, n), l = 0; l < s.length; l++) u.queueChild(r, s[l])\n                }\n            },\n            receiveComponent: function(e, t, n) {\n                var r = this._currentElement;\n                this._currentElement = e, this.updateComponent(t, r, e, n)\n            },\n            updateComponent: function(e, t, n, r) {\n                var o = t.props,\n                    i = this._currentElement.props;\n                switch (this._tag) {\n                    case \"input\":\n                        o = m.getHostProps(this, o), i = m.getHostProps(this, i);\n                        break;\n                    case \"option\":\n                        o = g.getHostProps(this, o), i = g.getHostProps(this, i);\n                        break;\n                    case \"select\":\n                        o = y.getHostProps(this, o), i = y.getHostProps(this, i);\n                        break;\n                    case \"textarea\":\n                        o = b.getHostProps(this, o), i = b.getHostProps(this, i)\n                }\n                switch (N(this, i), this._updateDOMProperties(o, i, e), this._updateDOMChildren(o, i, e, r), this._tag) {\n                    case \"input\":\n                        m.updateWrapper(this), x.updateValueIfChanged(this);\n                        break;\n                    case \"textarea\":\n                        b.updateWrapper(this);\n                        break;\n                    case \"select\":\n                        e.getReactMountReady().enqueue(V, this)\n                }\n            },\n            _updateDOMProperties: function(e, t, n) {\n                var r, i, u;\n                for (r in e)\n                    if (!t.hasOwnProperty(r) && e.hasOwnProperty(r) && null != e[r])\n                        if (\"style\" === r) {\n                            var s = this._previousStyleCopy;\n                            for (i in s) s.hasOwnProperty(i) && ((u = u || {})[i] = \"\");\n                            this._previousStyleCopy = null\n                        } else O.hasOwnProperty(r) ? e[r] && C(this, r) : $(this._tag, e) ? M.hasOwnProperty(r) || c.deleteValueForAttribute(k(this), r) : (l.properties[r] || l.isCustomAttribute(r)) && c.deleteValueForProperty(k(this), r);\n                for (r in t) {\n                    var f = t[r],\n                        p = \"style\" === r ? this._previousStyleCopy : null != e ? e[r] : void 0;\n                    if (t.hasOwnProperty(r) && f !== p && (null != f || null != p))\n                        if (\"style\" === r)\n                            if (f ? f = this._previousStyleCopy = o({}, f) : this._previousStyleCopy = null, p) {\n                                for (i in p) !p.hasOwnProperty(i) || f && f.hasOwnProperty(i) || ((u = u || {})[i] = \"\");\n                                for (i in f) f.hasOwnProperty(i) && p[i] !== f[i] && ((u = u || {})[i] = f[i])\n                            } else u = f;\n                        else if (O.hasOwnProperty(r)) f ? R(this, r, f, n) : p && C(this, r);\n                        else if ($(this._tag, t)) M.hasOwnProperty(r) || c.setValueForAttribute(k(this), r, f);\n                        else if (l.properties[r] || l.isCustomAttribute(r)) {\n                            var d = k(this);\n                            null != f ? c.setValueForProperty(d, r, f) : c.deleteValueForProperty(d, r)\n                        }\n                }\n                u && a.setValueForStyles(k(this), u, this)\n            },\n            _updateDOMChildren: function(e, t, n, r) {\n                var o = P[typeof e.children] ? e.children : null,\n                    i = P[typeof t.children] ? t.children : null,\n                    a = e.dangerouslySetInnerHTML && e.dangerouslySetInnerHTML.__html,\n                    u = t.dangerouslySetInnerHTML && t.dangerouslySetInnerHTML.__html,\n                    s = null != o ? null : e.children,\n                    l = null != i ? null : t.children,\n                    c = null != o || null != a,\n                    f = null != i || null != u;\n                null != s && null == l ? this.updateChildren(null, n, r) : c && !f && this.updateTextContent(\"\"), null != i ? o !== i && this.updateTextContent(\"\" + i) : null != u ? a !== u && this.updateMarkup(\"\" + u) : null != l && this.updateChildren(l, n, r)\n            },\n            getHostNode: function() {\n                return k(this)\n            },\n            unmountComponent: function(e) {\n                switch (this._tag) {\n                    case \"audio\":\n                    case \"form\":\n                    case \"iframe\":\n                    case \"img\":\n                    case \"link\":\n                    case \"object\":\n                    case \"source\":\n                    case \"video\":\n                        var t = this._wrapperState.listeners;\n                        if (t)\n                            for (var n = 0; n < t.length; n++) t[n].remove();\n                        break;\n                    case \"input\":\n                    case \"textarea\":\n                        x.stopTracking(this);\n                        break;\n                    case \"html\":\n                    case \"head\":\n                    case \"body\":\n                        r(\"66\", this._tag)\n                }\n                this.unmountChildren(e), v.uncacheNode(this), f.deleteAllListeners(this), this._rootNodeID = 0, this._domID = 0, this._wrapperState = null\n            },\n            getPublicInstance: function() {\n                return k(this)\n            }\n        }, o(X.prototype, X.Mixin, _.Mixin), e.exports = X\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(14),\n            o = n(360),\n            i = {\n                focusDOMComponent: function() {\n                    o(r.getNodeFromInstance(this))\n                }\n            };\n        e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(361),\n            o = n(26),\n            i = (n(39), n(797), n(799)),\n            a = n(800),\n            u = n(802),\n            s = (n(9), u(function(e) {\n                return a(e)\n            })),\n            l = !1,\n            c = \"cssFloat\";\n        if (o.canUseDOM) {\n            var f = document.createElement(\"div\").style;\n            try {\n                f.font = \"\"\n            } catch (e) {\n                l = !0\n            }\n            void 0 === document.documentElement.style.cssFloat && (c = \"styleFloat\")\n        }\n        var p = {\n            createMarkupForStyles: function(e, t) {\n                var n = \"\";\n                for (var r in e)\n                    if (e.hasOwnProperty(r)) {\n                        var o = 0 === r.indexOf(\"--\"),\n                            a = e[r];\n                        0, null != a && (n += s(r) + \":\", n += i(r, a, t, o) + \";\")\n                    }\n                return n || null\n            },\n            setValueForStyles: function(e, t, n) {\n                var o = e.style;\n                for (var a in t)\n                    if (t.hasOwnProperty(a)) {\n                        var u = 0 === a.indexOf(\"--\");\n                        0;\n                        var s = i(a, t[a], n, u);\n                        if (\"float\" !== a && \"cssFloat\" !== a || (a = c), u) o.setProperty(a, s);\n                        else if (s) o[a] = s;\n                        else {\n                            var f = l && r.shorthandPropertyExpansions[a];\n                            if (f)\n                                for (var p in f) o[p] = \"\";\n                            else o[a] = \"\"\n                        }\n                    }\n            }\n        };\n        e.exports = p\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(798),\n            o = /^-ms-/;\n        e.exports = function(e) {\n            return r(e.replace(o, \"ms-\"))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /-(.)/g;\n        e.exports = function(e) {\n            return e.replace(r, function(e, t) {\n                return t.toUpperCase()\n            })\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(361),\n            o = (n(9), r.isUnitlessNumber);\n        e.exports = function(e, t, n, r) {\n            if (null == t || \"boolean\" == typeof t || \"\" === t) return \"\";\n            var i = isNaN(t);\n            return r || i || 0 === t || o.hasOwnProperty(e) && o[e] ? \"\" + t : (\"string\" == typeof t && (t = t.trim()), t + \"px\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(801),\n            o = /^ms-/;\n        e.exports = function(e) {\n            return r(e).replace(o, \"-ms-\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /([A-Z])/g;\n        e.exports = function(e) {\n            return e.replace(r, \"-$1\").toLowerCase()\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t = {};\n            return function(n) {\n                return t.hasOwnProperty(n) || (t[n] = e.call(this, n)), t[n]\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(150);\n        e.exports = function(e) {\n            return '\"' + r(e) + '\"'\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(110);\n        var o = {\n            handleTopLevel: function(e, t, n, o) {\n                ! function(e) {\n                    r.enqueueEvents(e), r.processEventQueue(!1)\n                }(r.extractEvents(e, t, n, o))\n            }\n        };\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(26);\n\n        function o(e, t) {\n            var n = {};\n            return n[e.toLowerCase()] = t.toLowerCase(), n[\"Webkit\" + e] = \"webkit\" + t, n[\"Moz\" + e] = \"moz\" + t, n[\"ms\" + e] = \"MS\" + t, n[\"O\" + e] = \"o\" + t.toLowerCase(), n\n        }\n        var i = {\n                animationend: o(\"Animation\", \"AnimationEnd\"),\n                animationiteration: o(\"Animation\", \"AnimationIteration\"),\n                animationstart: o(\"Animation\", \"AnimationStart\"),\n                transitionend: o(\"Transition\", \"TransitionEnd\")\n            },\n            a = {},\n            u = {};\n        r.canUseDOM && (u = document.createElement(\"div\").style, \"AnimationEvent\" in window || (delete i.animationend.animation, delete i.animationiteration.animation, delete i.animationstart.animation), \"TransitionEvent\" in window || delete i.transitionend.transition), e.exports = function(e) {\n            if (a[e]) return a[e];\n            if (!i[e]) return e;\n            var t = i[e];\n            for (var n in t)\n                if (t.hasOwnProperty(n) && n in u) return a[e] = t[n];\n            return \"\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(362),\n            a = n(219),\n            u = n(14),\n            s = n(43);\n        n(8), n(9);\n\n        function l() {\n            this._rootNodeID && f.updateWrapper(this)\n        }\n\n        function c(e) {\n            return \"checkbox\" === e.type || \"radio\" === e.type ? null != e.checked : null != e.value\n        }\n        var f = {\n            getHostProps: function(e, t) {\n                var n = a.getValue(t),\n                    r = a.getChecked(t);\n                return o({\n                    type: void 0,\n                    step: void 0,\n                    min: void 0,\n                    max: void 0\n                }, t, {\n                    defaultChecked: void 0,\n                    defaultValue: void 0,\n                    value: null != n ? n : e._wrapperState.initialValue,\n                    checked: null != r ? r : e._wrapperState.initialChecked,\n                    onChange: e._wrapperState.onChange\n                })\n            },\n            mountWrapper: function(e, t) {\n                var n = t.defaultValue;\n                e._wrapperState = {\n                    initialChecked: null != t.checked ? t.checked : t.defaultChecked,\n                    initialValue: null != t.value ? t.value : n,\n                    listeners: null,\n                    onChange: function(e) {\n                        var t = this._currentElement.props,\n                            n = a.executeOnChange(t, e);\n                        s.asap(l, this);\n                        var o = t.name;\n                        if (\"radio\" === t.type && null != o) {\n                            for (var i = u.getNodeFromInstance(this), c = i; c.parentNode;) c = c.parentNode;\n                            for (var f = c.querySelectorAll(\"input[name=\" + JSON.stringify(\"\" + o) + '][type=\"radio\"]'), p = 0; p < f.length; p++) {\n                                var d = f[p];\n                                if (d !== i && d.form === i.form) {\n                                    var h = u.getInstanceFromNode(d);\n                                    h || r(\"90\"), s.asap(l, h)\n                                }\n                            }\n                        }\n                        return n\n                    }.bind(e),\n                    controlled: c(t)\n                }\n            },\n            updateWrapper: function(e) {\n                var t = e._currentElement.props,\n                    n = t.checked;\n                null != n && i.setValueForProperty(u.getNodeFromInstance(e), \"checked\", n || !1);\n                var r = u.getNodeFromInstance(e),\n                    o = a.getValue(t);\n                if (null != o)\n                    if (0 === o && \"\" === r.value) r.value = \"0\";\n                    else if (\"number\" === t.type) {\n                        var s = parseFloat(r.value, 10) || 0;\n                        (o != s || o == s && r.value != o) && (r.value = \"\" + o)\n                    } else r.value !== \"\" + o && (r.value = \"\" + o);\n                else null == t.value && null != t.defaultValue && r.defaultValue !== \"\" + t.defaultValue && (r.defaultValue = \"\" + t.defaultValue), null == t.checked && null != t.defaultChecked && (r.defaultChecked = !!t.defaultChecked)\n            },\n            postMountWrapper: function(e) {\n                var t = e._currentElement.props,\n                    n = u.getNodeFromInstance(e);\n                switch (t.type) {\n                    case \"submit\":\n                    case \"reset\":\n                        break;\n                    case \"color\":\n                    case \"date\":\n                    case \"datetime\":\n                    case \"datetime-local\":\n                    case \"month\":\n                    case \"time\":\n                    case \"week\":\n                        n.value = \"\", n.value = n.defaultValue;\n                        break;\n                    default:\n                        n.value = n.value\n                }\n                var r = n.name;\n                \"\" !== r && (n.name = \"\"), n.defaultChecked = !n.defaultChecked, n.defaultChecked = !n.defaultChecked, \"\" !== r && (n.name = r)\n            }\n        };\n        e.exports = f\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = \"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\"\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(75),\n            i = n(14),\n            a = n(363),\n            u = (n(9), !1);\n\n        function s(e) {\n            var t = \"\";\n            return o.Children.forEach(e, function(e) {\n                null != e && (\"string\" == typeof e || \"number\" == typeof e ? t += e : u || (u = !0))\n            }), t\n        }\n        var l = {\n            mountWrapper: function(e, t, n) {\n                var r = null;\n                if (null != n) {\n                    var o = n;\n                    \"optgroup\" === o._tag && (o = o._hostParent), null != o && \"select\" === o._tag && (r = a.getSelectValueContext(o))\n                }\n                var i, u = null;\n                if (null != r)\n                    if (i = null != t.value ? t.value + \"\" : s(t.children), u = !1, Array.isArray(r)) {\n                        for (var l = 0; l < r.length; l++)\n                            if (\"\" + r[l] === i) {\n                                u = !0;\n                                break\n                            }\n                    } else u = \"\" + r === i;\n                e._wrapperState = {\n                    selected: u\n                }\n            },\n            postMountWrapper: function(e) {\n                var t = e._currentElement.props;\n                null != t.value && i.getNodeFromInstance(e).setAttribute(\"value\", t.value)\n            },\n            getHostProps: function(e, t) {\n                var n = r({\n                    selected: void 0,\n                    children: void 0\n                }, t);\n                null != e._wrapperState.selected && (n.selected = e._wrapperState.selected);\n                var o = s(t.children);\n                return o && (n.children = o), n\n            }\n        };\n        e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(219),\n            a = n(14),\n            u = n(43);\n        n(8), n(9);\n\n        function s() {\n            this._rootNodeID && l.updateWrapper(this)\n        }\n        var l = {\n            getHostProps: function(e, t) {\n                return null != t.dangerouslySetInnerHTML && r(\"91\"), o({}, t, {\n                    value: void 0,\n                    defaultValue: void 0,\n                    children: \"\" + e._wrapperState.initialValue,\n                    onChange: e._wrapperState.onChange\n                })\n            },\n            mountWrapper: function(e, t) {\n                var n = i.getValue(t),\n                    o = n;\n                if (null == n) {\n                    var a = t.defaultValue,\n                        l = t.children;\n                    null != l && (null != a && r(\"92\"), Array.isArray(l) && (l.length <= 1 || r(\"93\"), l = l[0]), a = \"\" + l), null == a && (a = \"\"), o = a\n                }\n                e._wrapperState = {\n                    initialValue: \"\" + o,\n                    listeners: null,\n                    onChange: function(e) {\n                        var t = this._currentElement.props,\n                            n = i.executeOnChange(t, e);\n                        return u.asap(s, this), n\n                    }.bind(e)\n                }\n            },\n            updateWrapper: function(e) {\n                var t = e._currentElement.props,\n                    n = a.getNodeFromInstance(e),\n                    r = i.getValue(t);\n                if (null != r) {\n                    var o = \"\" + r;\n                    o !== n.value && (n.value = o), null == t.defaultValue && (n.defaultValue = o)\n                }\n                null != t.defaultValue && (n.defaultValue = t.defaultValue)\n            },\n            postMountWrapper: function(e) {\n                var t = a.getNodeFromInstance(e),\n                    n = t.textContent;\n                n === e._wrapperState.initialValue && (t.value = n)\n            }\n        };\n        e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(220),\n            i = (n(112), n(39), n(46), n(88)),\n            a = n(811),\n            u = (n(34), n(816));\n        n(8);\n\n        function s(e, t) {\n            return t && (e = e || []).push(t), e\n        }\n\n        function l(e, t) {\n            o.processChildrenUpdates(e, t)\n        }\n        var c = {\n            Mixin: {\n                _reconcilerInstantiateChildren: function(e, t, n) {\n                    return a.instantiateChildren(e, t, n)\n                },\n                _reconcilerUpdateChildren: function(e, t, n, r, o, i) {\n                    var s, l = 0;\n                    return s = u(t, l), a.updateChildren(e, s, n, r, o, this, this._hostContainerInfo, i, l), s\n                },\n                mountChildren: function(e, t, n) {\n                    var r = this._reconcilerInstantiateChildren(e, t, n);\n                    this._renderedChildren = r;\n                    var o = [],\n                        a = 0;\n                    for (var u in r)\n                        if (r.hasOwnProperty(u)) {\n                            var s = r[u],\n                                l = 0;\n                            0;\n                            var c = i.mountComponent(s, t, this, this._hostContainerInfo, n, l);\n                            s._mountIndex = a++, o.push(c)\n                        }\n                    return o\n                },\n                updateTextContent: function(e) {\n                    var t, n = this._renderedChildren;\n                    for (var o in a.unmountChildren(n, !1), n) n.hasOwnProperty(o) && r(\"118\");\n                    l(this, [(t = e, {\n                        type: \"TEXT_CONTENT\",\n                        content: t,\n                        fromIndex: null,\n                        fromNode: null,\n                        toIndex: null,\n                        afterNode: null\n                    })])\n                },\n                updateMarkup: function(e) {\n                    var t, n = this._renderedChildren;\n                    for (var o in a.unmountChildren(n, !1), n) n.hasOwnProperty(o) && r(\"118\");\n                    l(this, [(t = e, {\n                        type: \"SET_MARKUP\",\n                        content: t,\n                        fromIndex: null,\n                        fromNode: null,\n                        toIndex: null,\n                        afterNode: null\n                    })])\n                },\n                updateChildren: function(e, t, n) {\n                    this._updateChildren(e, t, n)\n                },\n                _updateChildren: function(e, t, n) {\n                    var r = this._renderedChildren,\n                        o = {},\n                        a = [],\n                        u = this._reconcilerUpdateChildren(r, e, a, o, t, n);\n                    if (u || r) {\n                        var c, f = null,\n                            p = 0,\n                            d = 0,\n                            h = 0,\n                            v = null;\n                        for (c in u)\n                            if (u.hasOwnProperty(c)) {\n                                var m = r && r[c],\n                                    g = u[c];\n                                m === g ? (f = s(f, this.moveChild(m, v, p, d)), d = Math.max(m._mountIndex, d), m._mountIndex = p) : (m && (d = Math.max(m._mountIndex, d)), f = s(f, this._mountChildAtIndex(g, a[h], v, p, t, n)), h++), p++, v = i.getHostNode(g)\n                            }\n                        for (c in o) o.hasOwnProperty(c) && (f = s(f, this._unmountChild(r[c], o[c])));\n                        f && l(this, f), this._renderedChildren = u\n                    }\n                },\n                unmountChildren: function(e) {\n                    var t = this._renderedChildren;\n                    a.unmountChildren(t, e), this._renderedChildren = null\n                },\n                moveChild: function(e, t, n, r) {\n                    if (e._mountIndex < r) return function(e, t, n) {\n                        return {\n                            type: \"MOVE_EXISTING\",\n                            content: null,\n                            fromIndex: e._mountIndex,\n                            fromNode: i.getHostNode(e),\n                            toIndex: n,\n                            afterNode: t\n                        }\n                    }(e, t, n)\n                },\n                createChild: function(e, t, n) {\n                    return function(e, t, n) {\n                        return {\n                            type: \"INSERT_MARKUP\",\n                            content: e,\n                            fromIndex: null,\n                            fromNode: null,\n                            toIndex: n,\n                            afterNode: t\n                        }\n                    }(n, t, e._mountIndex)\n                },\n                removeChild: function(e, t) {\n                    return function(e, t) {\n                        return {\n                            type: \"REMOVE_NODE\",\n                            content: null,\n                            fromIndex: e._mountIndex,\n                            fromNode: t,\n                            toIndex: null,\n                            afterNode: null\n                        }\n                    }(e, t)\n                },\n                _mountChildAtIndex: function(e, t, n, r, o, i) {\n                    return e._mountIndex = r, this.createChild(e, n, t)\n                },\n                _unmountChild: function(e, t) {\n                    var n = this.removeChild(e, t);\n                    return e._mountIndex = null, n\n                }\n            }\n        };\n        e.exports = c\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t) {\n            var r = n(88),\n                o = n(364),\n                i = (n(223), n(222)),\n                a = n(368);\n            n(9);\n\n            function u(e, t, n, r) {\n                var i = void 0 === e[n];\n                null != t && i && (e[n] = o(t, !0))\n            }\n            void 0 !== t && Object({\n                NODE_ENV: \"production\",\n                WEBPACK_INLINE_STYLES: !1\n            });\n            var s = {\n                instantiateChildren: function(e, t, n, r) {\n                    if (null == e) return null;\n                    var o = {};\n                    return a(e, u, o), o\n                },\n                updateChildren: function(e, t, n, a, u, s, l, c, f) {\n                    if (t || e) {\n                        var p, d;\n                        for (p in t)\n                            if (t.hasOwnProperty(p)) {\n                                var h = (d = e && e[p]) && d._currentElement,\n                                    v = t[p];\n                                if (null != d && i(h, v)) r.receiveComponent(d, v, u, c), t[p] = d;\n                                else {\n                                    d && (a[p] = r.getHostNode(d), r.unmountComponent(d, !1));\n                                    var m = o(v, !0);\n                                    t[p] = m;\n                                    var g = r.mountComponent(m, u, s, l, c, f);\n                                    n.push(g)\n                                }\n                            }\n                        for (p in e) !e.hasOwnProperty(p) || t && t.hasOwnProperty(p) || (d = e[p], a[p] = r.getHostNode(d), r.unmountComponent(d, !1))\n                    }\n                },\n                unmountChildren: function(e, t) {\n                    for (var n in e)\n                        if (e.hasOwnProperty(n)) {\n                            var o = e[n];\n                            r.unmountComponent(o, t)\n                        }\n                }\n            };\n            e.exports = s\n        }).call(t, n(55))\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(75),\n            a = n(220),\n            u = n(46),\n            s = n(212),\n            l = n(112),\n            c = (n(39), n(365)),\n            f = n(88),\n            p = n(126),\n            d = (n(8), n(221)),\n            h = n(222),\n            v = (n(9), 0),\n            m = 1,\n            g = 2;\n\n        function y(e) {}\n\n        function b(e, t) {\n            0\n        }\n        y.prototype.render = function() {\n            var e = l.get(this)._currentElement.type,\n                t = e(this.props, this.context, this.updater);\n            return b(e, t), t\n        };\n        var _ = 1,\n            w = {\n                construct: function(e) {\n                    this._currentElement = e, this._rootNodeID = 0, this._compositeType = null, this._instance = null, this._hostParent = null, this._hostContainerInfo = null, this._updateBatchNumber = null, this._pendingElement = null, this._pendingStateQueue = null, this._pendingReplaceState = !1, this._pendingForceUpdate = !1, this._renderedNodeType = null, this._renderedComponent = null, this._context = null, this._mountOrder = 0, this._topLevelWrapper = null, this._pendingCallbacks = null, this._calledComponentWillUnmount = !1\n                },\n                mountComponent: function(e, t, n, o) {\n                    this._context = o, this._mountOrder = _++, this._hostParent = t, this._hostContainerInfo = n;\n                    var a, u = this._currentElement.props,\n                        s = this._processContext(o),\n                        c = this._currentElement.type,\n                        f = e.getUpdateQueue(),\n                        d = function(e) {\n                            return !(!e.prototype || !e.prototype.isReactComponent)\n                        }(c),\n                        h = this._constructComponent(d, u, s, f);\n                    d || null != h && null != h.render ? ! function(e) {\n                        return !(!e.prototype || !e.prototype.isPureReactComponent)\n                    }(c) ? this._compositeType = v : this._compositeType = m : (a = h, b(), null === h || !1 === h || i.isValidElement(h) || r(\"105\", c.displayName || c.name || \"Component\"), h = new y(c), this._compositeType = g), h.props = u, h.context = s, h.refs = p, h.updater = f, this._instance = h, l.set(h, this);\n                    var w, E = h.state;\n                    return void 0 === E && (h.state = E = null), (\"object\" != typeof E || Array.isArray(E)) && r(\"106\", this.getName() || \"ReactCompositeComponent\"), this._pendingStateQueue = null, this._pendingReplaceState = !1, this._pendingForceUpdate = !1, w = h.unstable_handleError ? this.performInitialMountWithErrorHandling(a, t, n, e, o) : this.performInitialMount(a, t, n, e, o), h.componentDidMount && e.getReactMountReady().enqueue(h.componentDidMount, h), w\n                },\n                _constructComponent: function(e, t, n, r) {\n                    return this._constructComponentWithoutOwner(e, t, n, r)\n                },\n                _constructComponentWithoutOwner: function(e, t, n, r) {\n                    var o = this._currentElement.type;\n                    return e ? new o(t, n, r) : o(t, n, r)\n                },\n                performInitialMountWithErrorHandling: function(e, t, n, r, o) {\n                    var i, a = r.checkpoint();\n                    try {\n                        i = this.performInitialMount(e, t, n, r, o)\n                    } catch (u) {\n                        r.rollback(a), this._instance.unstable_handleError(u), this._pendingStateQueue && (this._instance.state = this._processPendingState(this._instance.props, this._instance.context)), a = r.checkpoint(), this._renderedComponent.unmountComponent(!0), r.rollback(a), i = this.performInitialMount(e, t, n, r, o)\n                    }\n                    return i\n                },\n                performInitialMount: function(e, t, n, r, o) {\n                    var i = this._instance,\n                        a = 0;\n                    i.componentWillMount && (i.componentWillMount(), this._pendingStateQueue && (i.state = this._processPendingState(i.props, i.context))), void 0 === e && (e = this._renderValidatedComponent());\n                    var u = c.getType(e);\n                    this._renderedNodeType = u;\n                    var s = this._instantiateReactComponent(e, u !== c.EMPTY);\n                    return this._renderedComponent = s, f.mountComponent(s, r, t, n, this._processChildContext(o), a)\n                },\n                getHostNode: function() {\n                    return f.getHostNode(this._renderedComponent)\n                },\n                unmountComponent: function(e) {\n                    if (this._renderedComponent) {\n                        var t = this._instance;\n                        if (t.componentWillUnmount && !t._calledComponentWillUnmount)\n                            if (t._calledComponentWillUnmount = !0, e) {\n                                var n = this.getName() + \".componentWillUnmount()\";\n                                s.invokeGuardedCallback(n, t.componentWillUnmount.bind(t))\n                            } else t.componentWillUnmount();\n                        this._renderedComponent && (f.unmountComponent(this._renderedComponent, e), this._renderedNodeType = null, this._renderedComponent = null, this._instance = null), this._pendingStateQueue = null, this._pendingReplaceState = !1, this._pendingForceUpdate = !1, this._pendingCallbacks = null, this._pendingElement = null, this._context = null, this._rootNodeID = 0, this._topLevelWrapper = null, l.remove(t)\n                    }\n                },\n                _maskContext: function(e) {\n                    var t = this._currentElement.type.contextTypes;\n                    if (!t) return p;\n                    var n = {};\n                    for (var r in t) n[r] = e[r];\n                    return n\n                },\n                _processContext: function(e) {\n                    var t = this._maskContext(e);\n                    return t\n                },\n                _processChildContext: function(e) {\n                    var t, n = this._currentElement.type,\n                        i = this._instance;\n                    if (i.getChildContext && (t = i.getChildContext()), t) {\n                        for (var a in \"object\" != typeof n.childContextTypes && r(\"107\", this.getName() || \"ReactCompositeComponent\"), t) a in n.childContextTypes || r(\"108\", this.getName() || \"ReactCompositeComponent\", a);\n                        return o({}, e, t)\n                    }\n                    return e\n                },\n                _checkContextTypes: function(e, t, n) {\n                    0\n                },\n                receiveComponent: function(e, t, n) {\n                    var r = this._currentElement,\n                        o = this._context;\n                    this._pendingElement = null, this.updateComponent(t, r, e, o, n)\n                },\n                performUpdateIfNecessary: function(e) {\n                    null != this._pendingElement ? f.receiveComponent(this, this._pendingElement, e, this._context) : null !== this._pendingStateQueue || this._pendingForceUpdate ? this.updateComponent(e, this._currentElement, this._currentElement, this._context, this._context) : this._updateBatchNumber = null\n                },\n                updateComponent: function(e, t, n, o, i) {\n                    var a = this._instance;\n                    null == a && r(\"136\", this.getName() || \"ReactCompositeComponent\");\n                    var u, s = !1;\n                    this._context === i ? u = a.context : (u = this._processContext(i), s = !0);\n                    var l = t.props,\n                        c = n.props;\n                    t !== n && (s = !0), s && a.componentWillReceiveProps && a.componentWillReceiveProps(c, u);\n                    var f = this._processPendingState(c, u),\n                        p = !0;\n                    this._pendingForceUpdate || (a.shouldComponentUpdate ? p = a.shouldComponentUpdate(c, f, u) : this._compositeType === m && (p = !d(l, c) || !d(a.state, f))), this._updateBatchNumber = null, p ? (this._pendingForceUpdate = !1, this._performComponentUpdate(n, c, f, u, e, i)) : (this._currentElement = n, this._context = i, a.props = c, a.state = f, a.context = u)\n                },\n                _processPendingState: function(e, t) {\n                    var n = this._instance,\n                        r = this._pendingStateQueue,\n                        i = this._pendingReplaceState;\n                    if (this._pendingReplaceState = !1, this._pendingStateQueue = null, !r) return n.state;\n                    if (i && 1 === r.length) return r[0];\n                    for (var a = o({}, i ? r[0] : n.state), u = i ? 1 : 0; u < r.length; u++) {\n                        var s = r[u];\n                        o(a, \"function\" == typeof s ? s.call(n, a, e, t) : s)\n                    }\n                    return a\n                },\n                _performComponentUpdate: function(e, t, n, r, o, i) {\n                    var a, u, s, l = this._instance,\n                        c = Boolean(l.componentDidUpdate);\n                    c && (a = l.props, u = l.state, s = l.context), l.componentWillUpdate && l.componentWillUpdate(t, n, r), this._currentElement = e, this._context = i, l.props = t, l.state = n, l.context = r, this._updateRenderedComponent(o, i), c && o.getReactMountReady().enqueue(l.componentDidUpdate.bind(l, a, u, s), l)\n                },\n                _updateRenderedComponent: function(e, t) {\n                    var n = this._renderedComponent,\n                        r = n._currentElement,\n                        o = this._renderValidatedComponent(),\n                        i = 0;\n                    if (h(r, o)) f.receiveComponent(n, o, e, this._processChildContext(t));\n                    else {\n                        var a = f.getHostNode(n);\n                        f.unmountComponent(n, !1);\n                        var u = c.getType(o);\n                        this._renderedNodeType = u;\n                        var s = this._instantiateReactComponent(o, u !== c.EMPTY);\n                        this._renderedComponent = s;\n                        var l = f.mountComponent(s, e, this._hostParent, this._hostContainerInfo, this._processChildContext(t), i);\n                        this._replaceNodeWithMarkup(a, l, n)\n                    }\n                },\n                _replaceNodeWithMarkup: function(e, t, n) {\n                    a.replaceNodeWithMarkup(e, t, n)\n                },\n                _renderValidatedComponentWithoutOwnerOrContext: function() {\n                    var e = this._instance;\n                    return e.render()\n                },\n                _renderValidatedComponent: function() {\n                    var e;\n                    if (this._compositeType !== g) {\n                        u.current = this;\n                        try {\n                            e = this._renderValidatedComponentWithoutOwnerOrContext()\n                        } finally {\n                            u.current = null\n                        }\n                    } else e = this._renderValidatedComponentWithoutOwnerOrContext();\n                    return null === e || !1 === e || i.isValidElement(e) || r(\"109\", this.getName() || \"ReactCompositeComponent\"), e\n                },\n                attachRef: function(e, t) {\n                    var n = this.getPublicInstance();\n                    null == n && r(\"110\");\n                    var o = t.getPublicInstance();\n                    (n.refs === p ? n.refs = {} : n.refs)[e] = o\n                },\n                detachRef: function(e) {\n                    delete this.getPublicInstance().refs[e]\n                },\n                getName: function() {\n                    var e = this._currentElement.type,\n                        t = this._instance && this._instance.constructor;\n                    return e.displayName || t && t.displayName || e.name || t && t.name || null\n                },\n                getPublicInstance: function() {\n                    var e = this._instance;\n                    return this._compositeType === g ? null : e\n                },\n                _instantiateReactComponent: null\n            };\n        e.exports = w\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = 1;\n        e.exports = function() {\n            return r++\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && Symbol.for && Symbol.for(\"react.element\") || 60103;\n        e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && Symbol.iterator,\n            o = \"@@iterator\";\n        e.exports = function(e) {\n            var t = e && (r && e[r] || e[o]);\n            if (\"function\" == typeof t) return t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        (function(t) {\n            n(223);\n            var r = n(368);\n            n(9);\n\n            function o(e, t, n, r) {\n                if (e && \"object\" == typeof e) {\n                    var o = e,\n                        i = void 0 === o[n];\n                    0, i && null != t && (o[n] = t)\n                }\n            }\n            void 0 !== t && Object({\n                NODE_ENV: \"production\",\n                WEBPACK_INLINE_STYLES: !1\n            }), e.exports = function(e, t) {\n                if (null == e) return e;\n                var n = {};\n                return r(e, o, n), n\n            }\n        }).call(t, n(55))\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(69),\n            i = n(147),\n            a = (n(39), n(818)),\n            u = [];\n        var s = {\n            enqueue: function() {}\n        };\n\n        function l(e) {\n            this.reinitializeTransaction(), this.renderToStaticMarkup = e, this.useCreateElement = !1, this.updateQueue = new a(this)\n        }\n        var c = {\n            getTransactionWrappers: function() {\n                return u\n            },\n            getReactMountReady: function() {\n                return s\n            },\n            getUpdateQueue: function() {\n                return this.updateQueue\n            },\n            destructor: function() {},\n            checkpoint: function() {},\n            rollback: function() {}\n        };\n        r(l.prototype, i, c), o.addPoolingTo(l), e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(224);\n        n(9);\n        var o = function() {\n            function e(t) {\n                ! function(e, t) {\n                    if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                }(this, e), this.transaction = t\n            }\n            return e.prototype.isMounted = function(e) {\n                return !1\n            }, e.prototype.enqueueCallback = function(e, t, n) {\n                this.transaction.isInTransaction() && r.enqueueCallback(e, t, n)\n            }, e.prototype.enqueueForceUpdate = function(e) {\n                this.transaction.isInTransaction() && r.enqueueForceUpdate(e)\n            }, e.prototype.enqueueReplaceState = function(e, t) {\n                this.transaction.isInTransaction() && r.enqueueReplaceState(e, t)\n            }, e.prototype.enqueueSetState = function(e, t) {\n                this.transaction.isInTransaction() && r.enqueueSetState(e, t)\n            }, e\n        }();\n        e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(89),\n            i = n(14),\n            a = function(e) {\n                this._currentElement = null, this._hostNode = null, this._hostParent = null, this._hostContainerInfo = null, this._domID = 0\n            };\n        r(a.prototype, {\n            mountComponent: function(e, t, n, r) {\n                var a = n._idCounter++;\n                this._domID = a, this._hostParent = t, this._hostContainerInfo = n;\n                var u = \" react-empty: \" + this._domID + \" \";\n                if (e.useCreateElement) {\n                    var s = n._ownerDocument.createComment(u);\n                    return i.precacheNode(this, s), o(s)\n                }\n                return e.renderToStaticMarkup ? \"\" : \"\\x3c!--\" + u + \"--\\x3e\"\n            },\n            receiveComponent: function() {},\n            getHostNode: function() {\n                return i.getNodeFromInstance(this)\n            },\n            unmountComponent: function() {\n                i.uncacheNode(this)\n            }\n        }), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11);\n        n(8);\n\n        function o(e, t) {\n            \"_hostNode\" in e || r(\"33\"), \"_hostNode\" in t || r(\"33\");\n            for (var n = 0, o = e; o; o = o._hostParent) n++;\n            for (var i = 0, a = t; a; a = a._hostParent) i++;\n            for (; n - i > 0;) e = e._hostParent, n--;\n            for (; i - n > 0;) t = t._hostParent, i--;\n            for (var u = n; u--;) {\n                if (e === t) return e;\n                e = e._hostParent, t = t._hostParent\n            }\n            return null\n        }\n        e.exports = {\n            isAncestor: function(e, t) {\n                \"_hostNode\" in e || r(\"35\"), \"_hostNode\" in t || r(\"35\");\n                for (; t;) {\n                    if (t === e) return !0;\n                    t = t._hostParent\n                }\n                return !1\n            },\n            getLowestCommonAncestor: o,\n            getParentInstance: function(e) {\n                return \"_hostNode\" in e || r(\"36\"), e._hostParent\n            },\n            traverseTwoPhase: function(e, t, n) {\n                for (var r, o = []; e;) o.push(e), e = e._hostParent;\n                for (r = o.length; r-- > 0;) t(o[r], \"captured\", n);\n                for (r = 0; r < o.length; r++) t(o[r], \"bubbled\", n)\n            },\n            traverseEnterLeave: function(e, t, n, r, i) {\n                for (var a = e && t ? o(e, t) : null, u = []; e && e !== a;) u.push(e), e = e._hostParent;\n                for (var s, l = []; t && t !== a;) l.push(t), t = t._hostParent;\n                for (s = 0; s < u.length; s++) n(u[s], \"bubbled\", r);\n                for (s = l.length; s-- > 0;) n(l[s], \"captured\", i)\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(13),\n            i = n(216),\n            a = n(89),\n            u = n(14),\n            s = n(150),\n            l = (n(8), n(225), function(e) {\n                this._currentElement = e, this._stringText = \"\" + e, this._hostNode = null, this._hostParent = null, this._domID = 0, this._mountIndex = 0, this._closingComment = null, this._commentNodes = null\n            });\n        o(l.prototype, {\n            mountComponent: function(e, t, n, r) {\n                var o = n._idCounter++,\n                    i = \" react-text: \" + o + \" \";\n                if (this._domID = o, this._hostParent = t, e.useCreateElement) {\n                    var l = n._ownerDocument,\n                        c = l.createComment(i),\n                        f = l.createComment(\" /react-text \"),\n                        p = a(l.createDocumentFragment());\n                    return a.queueChild(p, a(c)), this._stringText && a.queueChild(p, a(l.createTextNode(this._stringText))), a.queueChild(p, a(f)), u.precacheNode(this, c), this._closingComment = f, p\n                }\n                var d = s(this._stringText);\n                return e.renderToStaticMarkup ? d : \"\\x3c!--\" + i + \"--\\x3e\" + d + \"\\x3c!-- /react-text --\\x3e\"\n            },\n            receiveComponent: function(e, t) {\n                if (e !== this._currentElement) {\n                    this._currentElement = e;\n                    var n = \"\" + e;\n                    if (n !== this._stringText) {\n                        this._stringText = n;\n                        var r = this.getHostNode();\n                        i.replaceDelimitedText(r[0], r[1], n)\n                    }\n                }\n            },\n            getHostNode: function() {\n                var e = this._commentNodes;\n                if (e) return e;\n                if (!this._closingComment)\n                    for (var t = u.getNodeFromInstance(this).nextSibling;;) {\n                        if (null == t && r(\"67\", this._domID), 8 === t.nodeType && \" /react-text \" === t.nodeValue) {\n                            this._closingComment = t;\n                            break\n                        }\n                        t = t.nextSibling\n                    }\n                return e = [this._hostNode, this._closingComment], this._commentNodes = e, e\n            },\n            unmountComponent: function() {\n                this._closingComment = null, this._commentNodes = null, u.uncacheNode(this)\n            }\n        }), e.exports = l\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(43),\n            i = n(147),\n            a = n(34),\n            u = {\n                initialize: a,\n                close: function() {\n                    f.isBatchingUpdates = !1\n                }\n            },\n            s = [{\n                initialize: a,\n                close: o.flushBatchedUpdates.bind(o)\n            }, u];\n\n        function l() {\n            this.reinitializeTransaction()\n        }\n        r(l.prototype, i, {\n            getTransactionWrappers: function() {\n                return s\n            }\n        });\n        var c = new l,\n            f = {\n                isBatchingUpdates: !1,\n                batchedUpdates: function(e, t, n, r, o, i) {\n                    var a = f.isBatchingUpdates;\n                    return f.isBatchingUpdates = !0, a ? e(t, n, r, o, i) : c.perform(e, null, t, n, r, o, i)\n                }\n            };\n        e.exports = f\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(370),\n            i = n(26),\n            a = n(69),\n            u = n(14),\n            s = n(43),\n            l = n(213),\n            c = n(824);\n\n        function f(e) {\n            for (; e._hostParent;) e = e._hostParent;\n            var t = u.getNodeFromInstance(e).parentNode;\n            return u.getClosestInstanceFromNode(t)\n        }\n\n        function p(e, t) {\n            this.topLevelType = e, this.nativeEvent = t, this.ancestors = []\n        }\n\n        function d(e) {\n            var t = l(e.nativeEvent),\n                n = u.getClosestInstanceFromNode(t),\n                r = n;\n            do {\n                e.ancestors.push(r), r = r && f(r)\n            } while (r);\n            for (var o = 0; o < e.ancestors.length; o++) n = e.ancestors[o], h._handleTopLevel(e.topLevelType, n, e.nativeEvent, l(e.nativeEvent))\n        }\n        r(p.prototype, {\n            destructor: function() {\n                this.topLevelType = null, this.nativeEvent = null, this.ancestors.length = 0\n            }\n        }), a.addPoolingTo(p, a.twoArgumentPooler);\n        var h = {\n            _enabled: !0,\n            _handleTopLevel: null,\n            WINDOW_HANDLE: i.canUseDOM ? window : null,\n            setHandleTopLevel: function(e) {\n                h._handleTopLevel = e\n            },\n            setEnabled: function(e) {\n                h._enabled = !!e\n            },\n            isEnabled: function() {\n                return h._enabled\n            },\n            trapBubbledEvent: function(e, t, n) {\n                return n ? o.listen(n, t, h.dispatchEvent.bind(null, e)) : null\n            },\n            trapCapturedEvent: function(e, t, n) {\n                return n ? o.capture(n, t, h.dispatchEvent.bind(null, e)) : null\n            },\n            monitorScrollValue: function(e) {\n                var t = function(e) {\n                    e(c(window))\n                }.bind(null, e);\n                o.listen(window, \"scroll\", t)\n            },\n            dispatchEvent: function(e, t) {\n                if (h._enabled) {\n                    var n = p.getPooled(e, t);\n                    try {\n                        s.batchedUpdates(d, n)\n                    } finally {\n                        p.release(n)\n                    }\n                }\n            }\n        };\n        e.exports = h\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return e.Window && e instanceof e.Window ? {\n                x: e.pageXOffset || e.document.documentElement.scrollLeft,\n                y: e.pageYOffset || e.document.documentElement.scrollTop\n            } : {\n                x: e.scrollLeft,\n                y: e.scrollTop\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(87),\n            o = n(110),\n            i = n(211),\n            a = n(220),\n            u = n(366),\n            s = n(151),\n            l = n(367),\n            c = n(43),\n            f = {\n                Component: a.injection,\n                DOMProperty: r.injection,\n                EmptyComponent: u.injection,\n                EventPluginHub: o.injection,\n                EventPluginUtils: i.injection,\n                EventEmitter: s.injection,\n                HostComponent: l.injection,\n                Updates: c.injection\n            };\n        e.exports = f\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(13),\n            o = n(354),\n            i = n(69),\n            a = n(151),\n            u = n(371),\n            s = (n(39), n(147)),\n            l = n(224),\n            c = [{\n                initialize: u.getSelectionInformation,\n                close: u.restoreSelection\n            }, {\n                initialize: function() {\n                    var e = a.isEnabled();\n                    return a.setEnabled(!1), e\n                },\n                close: function(e) {\n                    a.setEnabled(e)\n                }\n            }, {\n                initialize: function() {\n                    this.reactMountReady.reset()\n                },\n                close: function() {\n                    this.reactMountReady.notifyAll()\n                }\n            }];\n\n        function f(e) {\n            this.reinitializeTransaction(), this.renderToStaticMarkup = !1, this.reactMountReady = o.getPooled(null), this.useCreateElement = e\n        }\n        var p = {\n            getTransactionWrappers: function() {\n                return c\n            },\n            getReactMountReady: function() {\n                return this.reactMountReady\n            },\n            getUpdateQueue: function() {\n                return l\n            },\n            checkpoint: function() {\n                return this.reactMountReady.checkpoint()\n            },\n            rollback: function(e) {\n                this.reactMountReady.rollback(e)\n            },\n            destructor: function() {\n                o.release(this.reactMountReady), this.reactMountReady = null\n            }\n        };\n        r(f.prototype, s, p), i.addPoolingTo(f), e.exports = f\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(26),\n            o = n(828),\n            i = n(353);\n\n        function a(e, t, n, r) {\n            return e === n && t === r\n        }\n        var u = r.canUseDOM && \"selection\" in document && !(\"getSelection\" in window),\n            s = {\n                getOffsets: u ? function(e) {\n                    var t = document.selection.createRange(),\n                        n = t.text.length,\n                        r = t.duplicate();\n                    r.moveToElementText(e), r.setEndPoint(\"EndToStart\", t);\n                    var o = r.text.length;\n                    return {\n                        start: o,\n                        end: o + n\n                    }\n                } : function(e) {\n                    var t = window.getSelection && window.getSelection();\n                    if (!t || 0 === t.rangeCount) return null;\n                    var n = t.anchorNode,\n                        r = t.anchorOffset,\n                        o = t.focusNode,\n                        i = t.focusOffset,\n                        u = t.getRangeAt(0);\n                    try {\n                        u.startContainer.nodeType, u.endContainer.nodeType\n                    } catch (e) {\n                        return null\n                    }\n                    var s = a(t.anchorNode, t.anchorOffset, t.focusNode, t.focusOffset) ? 0 : u.toString().length,\n                        l = u.cloneRange();\n                    l.selectNodeContents(e), l.setEnd(u.startContainer, u.startOffset);\n                    var c = a(l.startContainer, l.startOffset, l.endContainer, l.endOffset) ? 0 : l.toString().length,\n                        f = c + s,\n                        p = document.createRange();\n                    p.setStart(n, r), p.setEnd(o, i);\n                    var d = p.collapsed;\n                    return {\n                        start: d ? f : c,\n                        end: d ? c : f\n                    }\n                },\n                setOffsets: u ? function(e, t) {\n                    var n, r, o = document.selection.createRange().duplicate();\n                    void 0 === t.end ? r = n = t.start : t.start > t.end ? (n = t.end, r = t.start) : (n = t.start, r = t.end), o.moveToElementText(e), o.moveStart(\"character\", n), o.setEndPoint(\"EndToStart\", o), o.moveEnd(\"character\", r - n), o.select()\n                } : function(e, t) {\n                    if (window.getSelection) {\n                        var n = window.getSelection(),\n                            r = e[i()].length,\n                            a = Math.min(t.start, r),\n                            u = void 0 === t.end ? a : Math.min(t.end, r);\n                        if (!n.extend && a > u) {\n                            var s = u;\n                            u = a, a = s\n                        }\n                        var l = o(e, a),\n                            c = o(e, u);\n                        if (l && c) {\n                            var f = document.createRange();\n                            f.setStart(l.node, l.offset), n.removeAllRanges(), a > u ? (n.addRange(f), n.extend(c.node, c.offset)) : (f.setEnd(c.node, c.offset), n.addRange(f))\n                        }\n                    }\n                }\n            };\n        e.exports = s\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e) {\n            for (; e && e.firstChild;) e = e.firstChild;\n            return e\n        }\n\n        function o(e) {\n            for (; e;) {\n                if (e.nextSibling) return e.nextSibling;\n                e = e.parentNode\n            }\n        }\n        e.exports = function(e, t) {\n            for (var n = r(e), i = 0, a = 0; n;) {\n                if (3 === n.nodeType) {\n                    if (a = i + n.textContent.length, i <= t && a >= t) return {\n                        node: n,\n                        offset: t - i\n                    };\n                    i = a\n                }\n                n = r(o(n))\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(830);\n        e.exports = function e(t, n) {\n            return !(!t || !n) && (t === n || !r(t) && (r(n) ? e(t, n.parentNode) : \"contains\" in t ? t.contains(n) : !!t.compareDocumentPosition && !!(16 & t.compareDocumentPosition(n))))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(831);\n        e.exports = function(e) {\n            return r(e) && 3 == e.nodeType\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t = (e ? e.ownerDocument || e : document).defaultView || window;\n            return !(!e || !(\"function\" == typeof t.Node ? e instanceof t.Node : \"object\" == typeof e && \"number\" == typeof e.nodeType && \"string\" == typeof e.nodeName))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"http://www.w3.org/1999/xlink\",\n            o = \"http://www.w3.org/XML/1998/namespace\",\n            i = {\n                accentHeight: \"accent-height\",\n                accumulate: 0,\n                additive: 0,\n                alignmentBaseline: \"alignment-baseline\",\n                allowReorder: \"allowReorder\",\n                alphabetic: 0,\n                amplitude: 0,\n                arabicForm: \"arabic-form\",\n                ascent: 0,\n                attributeName: \"attributeName\",\n                attributeType: \"attributeType\",\n                autoReverse: \"autoReverse\",\n                azimuth: 0,\n                baseFrequency: \"baseFrequency\",\n                baseProfile: \"baseProfile\",\n                baselineShift: \"baseline-shift\",\n                bbox: 0,\n                begin: 0,\n                bias: 0,\n                by: 0,\n                calcMode: \"calcMode\",\n                capHeight: \"cap-height\",\n                clip: 0,\n                clipPath: \"clip-path\",\n                clipRule: \"clip-rule\",\n                clipPathUnits: \"clipPathUnits\",\n                colorInterpolation: \"color-interpolation\",\n                colorInterpolationFilters: \"color-interpolation-filters\",\n                colorProfile: \"color-profile\",\n                colorRendering: \"color-rendering\",\n                contentScriptType: \"contentScriptType\",\n                contentStyleType: \"contentStyleType\",\n                cursor: 0,\n                cx: 0,\n                cy: 0,\n                d: 0,\n                decelerate: 0,\n                descent: 0,\n                diffuseConstant: \"diffuseConstant\",\n                direction: 0,\n                display: 0,\n                divisor: 0,\n                dominantBaseline: \"dominant-baseline\",\n                dur: 0,\n                dx: 0,\n                dy: 0,\n                edgeMode: \"edgeMode\",\n                elevation: 0,\n                enableBackground: \"enable-background\",\n                end: 0,\n                exponent: 0,\n                externalResourcesRequired: \"externalResourcesRequired\",\n                fill: 0,\n                fillOpacity: \"fill-opacity\",\n                fillRule: \"fill-rule\",\n                filter: 0,\n                filterRes: \"filterRes\",\n                filterUnits: \"filterUnits\",\n                floodColor: \"flood-color\",\n                floodOpacity: \"flood-opacity\",\n                focusable: 0,\n                fontFamily: \"font-family\",\n                fontSize: \"font-size\",\n                fontSizeAdjust: \"font-size-adjust\",\n                fontStretch: \"font-stretch\",\n                fontStyle: \"font-style\",\n                fontVariant: \"font-variant\",\n                fontWeight: \"font-weight\",\n                format: 0,\n                from: 0,\n                fx: 0,\n                fy: 0,\n                g1: 0,\n                g2: 0,\n                glyphName: \"glyph-name\",\n                glyphOrientationHorizontal: \"glyph-orientation-horizontal\",\n                glyphOrientationVertical: \"glyph-orientation-vertical\",\n                glyphRef: \"glyphRef\",\n                gradientTransform: \"gradientTransform\",\n                gradientUnits: \"gradientUnits\",\n                hanging: 0,\n                horizAdvX: \"horiz-adv-x\",\n                horizOriginX: \"horiz-origin-x\",\n                ideographic: 0,\n                imageRendering: \"image-rendering\",\n                in : 0,\n                in2: 0,\n                intercept: 0,\n                k: 0,\n                k1: 0,\n                k2: 0,\n                k3: 0,\n                k4: 0,\n                kernelMatrix: \"kernelMatrix\",\n                kernelUnitLength: \"kernelUnitLength\",\n                kerning: 0,\n                keyPoints: \"keyPoints\",\n                keySplines: \"keySplines\",\n                keyTimes: \"keyTimes\",\n                lengthAdjust: \"lengthAdjust\",\n                letterSpacing: \"letter-spacing\",\n                lightingColor: \"lighting-color\",\n                limitingConeAngle: \"limitingConeAngle\",\n                local: 0,\n                markerEnd: \"marker-end\",\n                markerMid: \"marker-mid\",\n                markerStart: \"marker-start\",\n                markerHeight: \"markerHeight\",\n                markerUnits: \"markerUnits\",\n                markerWidth: \"markerWidth\",\n                mask: 0,\n                maskContentUnits: \"maskContentUnits\",\n                maskUnits: \"maskUnits\",\n                mathematical: 0,\n                mode: 0,\n                numOctaves: \"numOctaves\",\n                offset: 0,\n                opacity: 0,\n                operator: 0,\n                order: 0,\n                orient: 0,\n                orientation: 0,\n                origin: 0,\n                overflow: 0,\n                overlinePosition: \"overline-position\",\n                overlineThickness: \"overline-thickness\",\n                paintOrder: \"paint-order\",\n                panose1: \"panose-1\",\n                pathLength: \"pathLength\",\n                patternContentUnits: \"patternContentUnits\",\n                patternTransform: \"patternTransform\",\n                patternUnits: \"patternUnits\",\n                pointerEvents: \"pointer-events\",\n                points: 0,\n                pointsAtX: \"pointsAtX\",\n                pointsAtY: \"pointsAtY\",\n                pointsAtZ: \"pointsAtZ\",\n                preserveAlpha: \"preserveAlpha\",\n                preserveAspectRatio: \"preserveAspectRatio\",\n                primitiveUnits: \"primitiveUnits\",\n                r: 0,\n                radius: 0,\n                refX: \"refX\",\n                refY: \"refY\",\n                renderingIntent: \"rendering-intent\",\n                repeatCount: \"repeatCount\",\n                repeatDur: \"repeatDur\",\n                requiredExtensions: \"requiredExtensions\",\n                requiredFeatures: \"requiredFeatures\",\n                restart: 0,\n                result: 0,\n                rotate: 0,\n                rx: 0,\n                ry: 0,\n                scale: 0,\n                seed: 0,\n                shapeRendering: \"shape-rendering\",\n                slope: 0,\n                spacing: 0,\n                specularConstant: \"specularConstant\",\n                specularExponent: \"specularExponent\",\n                speed: 0,\n                spreadMethod: \"spreadMethod\",\n                startOffset: \"startOffset\",\n                stdDeviation: \"stdDeviation\",\n                stemh: 0,\n                stemv: 0,\n                stitchTiles: \"stitchTiles\",\n                stopColor: \"stop-color\",\n                stopOpacity: \"stop-opacity\",\n                strikethroughPosition: \"strikethrough-position\",\n                strikethroughThickness: \"strikethrough-thickness\",\n                string: 0,\n                stroke: 0,\n                strokeDasharray: \"stroke-dasharray\",\n                strokeDashoffset: \"stroke-dashoffset\",\n                strokeLinecap: \"stroke-linecap\",\n                strokeLinejoin: \"stroke-linejoin\",\n                strokeMiterlimit: \"stroke-miterlimit\",\n                strokeOpacity: \"stroke-opacity\",\n                strokeWidth: \"stroke-width\",\n                surfaceScale: \"surfaceScale\",\n                systemLanguage: \"systemLanguage\",\n                tableValues: \"tableValues\",\n                targetX: \"targetX\",\n                targetY: \"targetY\",\n                textAnchor: \"text-anchor\",\n                textDecoration: \"text-decoration\",\n                textRendering: \"text-rendering\",\n                textLength: \"textLength\",\n                to: 0,\n                transform: 0,\n                u1: 0,\n                u2: 0,\n                underlinePosition: \"underline-position\",\n                underlineThickness: \"underline-thickness\",\n                unicode: 0,\n                unicodeBidi: \"unicode-bidi\",\n                unicodeRange: \"unicode-range\",\n                unitsPerEm: \"units-per-em\",\n                vAlphabetic: \"v-alphabetic\",\n                vHanging: \"v-hanging\",\n                vIdeographic: \"v-ideographic\",\n                vMathematical: \"v-mathematical\",\n                values: 0,\n                vectorEffect: \"vector-effect\",\n                version: 0,\n                vertAdvY: \"vert-adv-y\",\n                vertOriginX: \"vert-origin-x\",\n                vertOriginY: \"vert-origin-y\",\n                viewBox: \"viewBox\",\n                viewTarget: \"viewTarget\",\n                visibility: 0,\n                widths: 0,\n                wordSpacing: \"word-spacing\",\n                writingMode: \"writing-mode\",\n                x: 0,\n                xHeight: \"x-height\",\n                x1: 0,\n                x2: 0,\n                xChannelSelector: \"xChannelSelector\",\n                xlinkActuate: \"xlink:actuate\",\n                xlinkArcrole: \"xlink:arcrole\",\n                xlinkHref: \"xlink:href\",\n                xlinkRole: \"xlink:role\",\n                xlinkShow: \"xlink:show\",\n                xlinkTitle: \"xlink:title\",\n                xlinkType: \"xlink:type\",\n                xmlBase: \"xml:base\",\n                xmlns: 0,\n                xmlnsXlink: \"xmlns:xlink\",\n                xmlLang: \"xml:lang\",\n                xmlSpace: \"xml:space\",\n                y: 0,\n                y1: 0,\n                y2: 0,\n                yChannelSelector: \"yChannelSelector\",\n                z: 0,\n                zoomAndPan: \"zoomAndPan\"\n            },\n            a = {\n                Properties: {},\n                DOMAttributeNamespaces: {\n                    xlinkActuate: r,\n                    xlinkArcrole: r,\n                    xlinkHref: r,\n                    xlinkRole: r,\n                    xlinkShow: r,\n                    xlinkTitle: r,\n                    xlinkType: r,\n                    xmlBase: o,\n                    xmlLang: o,\n                    xmlSpace: o\n                },\n                DOMAttributeNames: {}\n            };\n        Object.keys(i).forEach(function(e) {\n            a.Properties[e] = 0, i[e] && (a.DOMAttributeNames[e] = i[e])\n        }), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(109),\n            o = n(26),\n            i = n(14),\n            a = n(371),\n            u = n(48),\n            s = n(372),\n            l = n(357),\n            c = n(221),\n            f = o.canUseDOM && \"documentMode\" in document && document.documentMode <= 11,\n            p = {\n                select: {\n                    phasedRegistrationNames: {\n                        bubbled: \"onSelect\",\n                        captured: \"onSelectCapture\"\n                    },\n                    dependencies: [\"topBlur\", \"topContextMenu\", \"topFocus\", \"topKeyDown\", \"topKeyUp\", \"topMouseDown\", \"topMouseUp\", \"topSelectionChange\"]\n                }\n            },\n            d = null,\n            h = null,\n            v = null,\n            m = !1,\n            g = !1;\n\n        function y(e, t) {\n            if (m || null == d || d !== s()) return null;\n            var n = function(e) {\n                if (\"selectionStart\" in e && a.hasSelectionCapabilities(e)) return {\n                    start: e.selectionStart,\n                    end: e.selectionEnd\n                };\n                if (window.getSelection) {\n                    var t = window.getSelection();\n                    return {\n                        anchorNode: t.anchorNode,\n                        anchorOffset: t.anchorOffset,\n                        focusNode: t.focusNode,\n                        focusOffset: t.focusOffset\n                    }\n                }\n                if (document.selection) {\n                    var n = document.selection.createRange();\n                    return {\n                        parentElement: n.parentElement(),\n                        text: n.text,\n                        top: n.boundingTop,\n                        left: n.boundingLeft\n                    }\n                }\n            }(d);\n            if (!v || !c(v, n)) {\n                v = n;\n                var o = u.getPooled(p.select, h, e, t);\n                return o.type = \"select\", o.target = d, r.accumulateTwoPhaseDispatches(o), o\n            }\n            return null\n        }\n        var b = {\n            eventTypes: p,\n            extractEvents: function(e, t, n, r) {\n                if (!g) return null;\n                var o = t ? i.getNodeFromInstance(t) : window;\n                switch (e) {\n                    case \"topFocus\":\n                        (l(o) || \"true\" === o.contentEditable) && (d = o, h = t, v = null);\n                        break;\n                    case \"topBlur\":\n                        d = null, h = null, v = null;\n                        break;\n                    case \"topMouseDown\":\n                        m = !0;\n                        break;\n                    case \"topContextMenu\":\n                    case \"topMouseUp\":\n                        return m = !1, y(n, r);\n                    case \"topSelectionChange\":\n                        if (f) break;\n                    case \"topKeyDown\":\n                    case \"topKeyUp\":\n                        return y(n, r)\n                }\n                return null\n            },\n            didPutListener: function(e, t, n) {\n                \"onSelect\" === t && (g = !0)\n            }\n        };\n        e.exports = b\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = n(370),\n            i = n(109),\n            a = n(14),\n            u = n(835),\n            s = n(836),\n            l = n(48),\n            c = n(837),\n            f = n(838),\n            p = n(148),\n            d = n(840),\n            h = n(841),\n            v = n(842),\n            m = n(111),\n            g = n(843),\n            y = n(34),\n            b = n(226),\n            _ = (n(8), {}),\n            w = {};\n        [\"abort\", \"animationEnd\", \"animationIteration\", \"animationStart\", \"blur\", \"canPlay\", \"canPlayThrough\", \"click\", \"contextMenu\", \"copy\", \"cut\", \"doubleClick\", \"drag\", \"dragEnd\", \"dragEnter\", \"dragExit\", \"dragLeave\", \"dragOver\", \"dragStart\", \"drop\", \"durationChange\", \"emptied\", \"encrypted\", \"ended\", \"error\", \"focus\", \"input\", \"invalid\", \"keyDown\", \"keyPress\", \"keyUp\", \"load\", \"loadedData\", \"loadedMetadata\", \"loadStart\", \"mouseDown\", \"mouseMove\", \"mouseOut\", \"mouseOver\", \"mouseUp\", \"paste\", \"pause\", \"play\", \"playing\", \"progress\", \"rateChange\", \"reset\", \"scroll\", \"seeked\", \"seeking\", \"stalled\", \"submit\", \"suspend\", \"timeUpdate\", \"touchCancel\", \"touchEnd\", \"touchMove\", \"touchStart\", \"transitionEnd\", \"volumeChange\", \"waiting\", \"wheel\"].forEach(function(e) {\n            var t = e[0].toUpperCase() + e.slice(1),\n                n = \"on\" + t,\n                r = \"top\" + t,\n                o = {\n                    phasedRegistrationNames: {\n                        bubbled: n,\n                        captured: n + \"Capture\"\n                    },\n                    dependencies: [r]\n                };\n            _[e] = o, w[r] = o\n        });\n        var E = {};\n\n        function x(e) {\n            return \".\" + e._rootNodeID\n        }\n\n        function S(e) {\n            return \"button\" === e || \"input\" === e || \"select\" === e || \"textarea\" === e\n        }\n        var C = {\n            eventTypes: _,\n            extractEvents: function(e, t, n, o) {\n                var a, y = w[e];\n                if (!y) return null;\n                switch (e) {\n                    case \"topAbort\":\n                    case \"topCanPlay\":\n                    case \"topCanPlayThrough\":\n                    case \"topDurationChange\":\n                    case \"topEmptied\":\n                    case \"topEncrypted\":\n                    case \"topEnded\":\n                    case \"topError\":\n                    case \"topInput\":\n                    case \"topInvalid\":\n                    case \"topLoad\":\n                    case \"topLoadedData\":\n                    case \"topLoadedMetadata\":\n                    case \"topLoadStart\":\n                    case \"topPause\":\n                    case \"topPlay\":\n                    case \"topPlaying\":\n                    case \"topProgress\":\n                    case \"topRateChange\":\n                    case \"topReset\":\n                    case \"topSeeked\":\n                    case \"topSeeking\":\n                    case \"topStalled\":\n                    case \"topSubmit\":\n                    case \"topSuspend\":\n                    case \"topTimeUpdate\":\n                    case \"topVolumeChange\":\n                    case \"topWaiting\":\n                        a = l;\n                        break;\n                    case \"topKeyPress\":\n                        if (0 === b(n)) return null;\n                    case \"topKeyDown\":\n                    case \"topKeyUp\":\n                        a = f;\n                        break;\n                    case \"topBlur\":\n                    case \"topFocus\":\n                        a = c;\n                        break;\n                    case \"topClick\":\n                        if (2 === n.button) return null;\n                    case \"topDoubleClick\":\n                    case \"topMouseDown\":\n                    case \"topMouseMove\":\n                    case \"topMouseUp\":\n                    case \"topMouseOut\":\n                    case \"topMouseOver\":\n                    case \"topContextMenu\":\n                        a = p;\n                        break;\n                    case \"topDrag\":\n                    case \"topDragEnd\":\n                    case \"topDragEnter\":\n                    case \"topDragExit\":\n                    case \"topDragLeave\":\n                    case \"topDragOver\":\n                    case \"topDragStart\":\n                    case \"topDrop\":\n                        a = d;\n                        break;\n                    case \"topTouchCancel\":\n                    case \"topTouchEnd\":\n                    case \"topTouchMove\":\n                    case \"topTouchStart\":\n                        a = h;\n                        break;\n                    case \"topAnimationEnd\":\n                    case \"topAnimationIteration\":\n                    case \"topAnimationStart\":\n                        a = u;\n                        break;\n                    case \"topTransitionEnd\":\n                        a = v;\n                        break;\n                    case \"topScroll\":\n                        a = m;\n                        break;\n                    case \"topWheel\":\n                        a = g;\n                        break;\n                    case \"topCopy\":\n                    case \"topCut\":\n                    case \"topPaste\":\n                        a = s\n                }\n                a || r(\"86\", e);\n                var _ = a.getPooled(y, t, n, o);\n                return i.accumulateTwoPhaseDispatches(_), _\n            },\n            didPutListener: function(e, t, n) {\n                if (\"onClick\" === t && !S(e._tag)) {\n                    var r = x(e),\n                        i = a.getNodeFromInstance(e);\n                    E[r] || (E[r] = o.listen(i, \"click\", y))\n                }\n            },\n            willDeleteListener: function(e, t) {\n                if (\"onClick\" === t && !S(e._tag)) {\n                    var n = x(e);\n                    E[n].remove(), delete E[n]\n                }\n            }\n        };\n        e.exports = C\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(48);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            animationName: null,\n            elapsedTime: null,\n            pseudoElement: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(48),\n            o = {\n                clipboardData: function(e) {\n                    return \"clipboardData\" in e ? e.clipboardData : window.clipboardData\n                }\n            };\n\n        function i(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(i, o), e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(111);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            relatedTarget: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(111),\n            o = n(226),\n            i = {\n                key: n(839),\n                location: null,\n                ctrlKey: null,\n                shiftKey: null,\n                altKey: null,\n                metaKey: null,\n                repeat: null,\n                locale: null,\n                getModifierState: n(215),\n                charCode: function(e) {\n                    return \"keypress\" === e.type ? o(e) : 0\n                },\n                keyCode: function(e) {\n                    return \"keydown\" === e.type || \"keyup\" === e.type ? e.keyCode : 0\n                },\n                which: function(e) {\n                    return \"keypress\" === e.type ? o(e) : \"keydown\" === e.type || \"keyup\" === e.type ? e.keyCode : 0\n                }\n            };\n\n        function a(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(a, i), e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(226),\n            o = {\n                Esc: \"Escape\",\n                Spacebar: \" \",\n                Left: \"ArrowLeft\",\n                Up: \"ArrowUp\",\n                Right: \"ArrowRight\",\n                Down: \"ArrowDown\",\n                Del: \"Delete\",\n                Win: \"OS\",\n                Menu: \"ContextMenu\",\n                Apps: \"ContextMenu\",\n                Scroll: \"ScrollLock\",\n                MozPrintableKey: \"Unidentified\"\n            },\n            i = {\n                8: \"Backspace\",\n                9: \"Tab\",\n                12: \"Clear\",\n                13: \"Enter\",\n                16: \"Shift\",\n                17: \"Control\",\n                18: \"Alt\",\n                19: \"Pause\",\n                20: \"CapsLock\",\n                27: \"Escape\",\n                32: \" \",\n                33: \"PageUp\",\n                34: \"PageDown\",\n                35: \"End\",\n                36: \"Home\",\n                37: \"ArrowLeft\",\n                38: \"ArrowUp\",\n                39: \"ArrowRight\",\n                40: \"ArrowDown\",\n                45: \"Insert\",\n                46: \"Delete\",\n                112: \"F1\",\n                113: \"F2\",\n                114: \"F3\",\n                115: \"F4\",\n                116: \"F5\",\n                117: \"F6\",\n                118: \"F7\",\n                119: \"F8\",\n                120: \"F9\",\n                121: \"F10\",\n                122: \"F11\",\n                123: \"F12\",\n                144: \"NumLock\",\n                145: \"ScrollLock\",\n                224: \"Meta\"\n            };\n        e.exports = function(e) {\n            if (e.key) {\n                var t = o[e.key] || e.key;\n                if (\"Unidentified\" !== t) return t\n            }\n            if (\"keypress\" === e.type) {\n                var n = r(e);\n                return 13 === n ? \"Enter\" : String.fromCharCode(n)\n            }\n            return \"keydown\" === e.type || \"keyup\" === e.type ? i[e.keyCode] || \"Unidentified\" : \"\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(148);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            dataTransfer: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(111),\n            o = {\n                touches: null,\n                targetTouches: null,\n                changedTouches: null,\n                altKey: null,\n                metaKey: null,\n                ctrlKey: null,\n                shiftKey: null,\n                getModifierState: n(215)\n            };\n\n        function i(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(i, o), e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(48);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            propertyName: null,\n            elapsedTime: null,\n            pseudoElement: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(148);\n\n        function o(e, t, n, o) {\n            return r.call(this, e, t, n, o)\n        }\n        r.augmentClass(o, {\n            deltaX: function(e) {\n                return \"deltaX\" in e ? e.deltaX : \"wheelDeltaX\" in e ? -e.wheelDeltaX : 0\n            },\n            deltaY: function(e) {\n                return \"deltaY\" in e ? e.deltaY : \"wheelDeltaY\" in e ? -e.wheelDeltaY : \"wheelDelta\" in e ? -e.wheelDelta : 0\n            },\n            deltaZ: null,\n            deltaMode: null\n        }), e.exports = o\n    }, function(e, t, n) {\n        \"use strict\";\n        n(225);\n        var r = 9;\n        e.exports = function(e, t) {\n            var n = {\n                _topLevelWrapper: e,\n                _idCounter: 1,\n                _ownerDocument: t ? t.nodeType === r ? t : t.ownerDocument : null,\n                _node: t,\n                _tag: t ? t.nodeName.toLowerCase() : null,\n                _namespaceURI: t ? t.namespaceURI : null\n            };\n            return n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            useCreateElement: !0,\n            useFiber: !1\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(847),\n            o = /\\/?>/,\n            i = /^<\\!\\-\\-/,\n            a = {\n                CHECKSUM_ATTR_NAME: \"data-react-checksum\",\n                addChecksumToMarkup: function(e) {\n                    var t = r(e);\n                    return i.test(e) ? e : e.replace(o, \" \" + a.CHECKSUM_ATTR_NAME + '=\"' + t + '\"$&')\n                },\n                canReuseMarkup: function(e, t) {\n                    var n = t.getAttribute(a.CHECKSUM_ATTR_NAME);\n                    return n = n && parseInt(n, 10), r(e) === n\n                }\n            };\n        e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = 65521;\n        e.exports = function(e) {\n            for (var t = 1, n = 0, o = 0, i = e.length, a = -4 & i; o < a;) {\n                for (var u = Math.min(o + 4096, a); o < u; o += 4) n += (t += e.charCodeAt(o)) + (t += e.charCodeAt(o + 1)) + (t += e.charCodeAt(o + 2)) + (t += e.charCodeAt(o + 3));\n                t %= r, n %= r\n            }\n            for (; o < i; o++) n += t += e.charCodeAt(o);\n            return (t %= r) | (n %= r) << 16\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = \"15.6.2\"\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(11),\n            o = (n(46), n(14)),\n            i = n(112),\n            a = n(374);\n        n(8), n(9);\n        e.exports = function(e) {\n            if (null == e) return null;\n            if (1 === e.nodeType) return e;\n            var t = i.get(e);\n            if (t) return (t = a(t)) ? o.getNodeFromInstance(t) : null;\n            \"function\" == typeof e.render ? r(\"44\") : r(\"45\", Object.keys(e))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(373);\n        e.exports = r.renderSubtreeIntoContainer\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.connect = t.Provider = void 0;\n        var r = i(n(852)),\n            o = i(n(854));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.Provider = r.default, t.connect = o.default\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.default = void 0;\n        var r = n(0),\n            o = a(n(1)),\n            i = a(n(375));\n        a(n(376));\n\n        function a(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var u = function(e) {\n            function t(n, r) {\n                ! function(e, t) {\n                    if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                }(this, t);\n                var o = function(e, t) {\n                    if (!e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n                    return !t || \"object\" != typeof t && \"function\" != typeof t ? e : t\n                }(this, e.call(this, n, r));\n                return o.store = n.store, o\n            }\n            return function(e, t) {\n                if (\"function\" != typeof t && null !== t) throw new TypeError(\"Super expression must either be null or a function, not \" + typeof t);\n                e.prototype = Object.create(t && t.prototype, {\n                    constructor: {\n                        value: e,\n                        enumerable: !1,\n                        writable: !0,\n                        configurable: !0\n                    }\n                }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)\n            }(t, e), t.prototype.getChildContext = function() {\n                return {\n                    store: this.store\n                }\n            }, t.prototype.render = function() {\n                return r.Children.only(this.props.children)\n            }, t\n        }(r.Component);\n        t.default = u, u.propTypes = {\n            store: i.default.isRequired,\n            children: o.default.element.isRequired\n        }, u.childContextTypes = {\n            store: i.default.isRequired\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(34),\n            o = n(8),\n            i = n(269);\n        e.exports = function() {\n            function e(e, t, n, r, a, u) {\n                u !== i && o(!1, \"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types\")\n            }\n\n            function t() {\n                return e\n            }\n            e.isRequired = e;\n            var n = {\n                array: e,\n                bool: e,\n                func: e,\n                number: e,\n                object: e,\n                string: e,\n                symbol: e,\n                any: e,\n                arrayOf: t,\n                element: e,\n                instanceOf: t,\n                node: e,\n                objectOf: t,\n                oneOf: t,\n                oneOfType: t,\n                shape: t,\n                exact: t\n            };\n            return n.checkPropTypes = r, n.PropTypes = n, n\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0;\n        var r = Object.assign || function(e) {\n            for (var t = 1; t < arguments.length; t++) {\n                var n = arguments[t];\n                for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])\n            }\n            return e\n        };\n        t.default = function(e, t, n) {\n            var c = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {},\n                m = Boolean(e),\n                g = e || f,\n                y = void 0;\n            y = \"function\" == typeof t ? t : t ? (0, u.default)(t) : p;\n            var b = n || d,\n                _ = c.pure,\n                w = void 0 === _ || _,\n                E = c.withRef,\n                x = void 0 !== E && E,\n                S = w && b !== d,\n                C = v++;\n            return function(e) {\n                var t = \"Connect(\" + function(e) {\n                    return e.displayName || e.name || \"Component\"\n                }(e) + \")\";\n                var n = function(n) {\n                    function i(e, r) {\n                        ! function(e, t) {\n                            if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                        }(this, i);\n                        var o = function(e, t) {\n                            if (!e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n                            return !t || \"object\" != typeof t && \"function\" != typeof t ? e : t\n                        }(this, n.call(this, e, r));\n                        o.version = C, o.store = e.store || r.store, (0, l.default)(o.store, 'Could not find \"store\" in either the context or props of \"' + t + '\". Either wrap the root component in a <Provider>, or explicitly pass \"store\" as a prop to \"' + t + '\".');\n                        var a = o.store.getState();\n                        return o.state = {\n                            storeState: a\n                        }, o.clearCache(), o\n                    }\n                    return function(e, t) {\n                        if (\"function\" != typeof t && null !== t) throw new TypeError(\"Super expression must either be null or a function, not \" + typeof t);\n                        e.prototype = Object.create(t && t.prototype, {\n                            constructor: {\n                                value: e,\n                                enumerable: !1,\n                                writable: !0,\n                                configurable: !0\n                            }\n                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)\n                    }(i, n), i.prototype.shouldComponentUpdate = function() {\n                        return !w || this.haveOwnPropsChanged || this.hasStoreStateChanged\n                    }, i.prototype.computeStateProps = function(e, t) {\n                        if (!this.finalMapStateToProps) return this.configureFinalMapState(e, t);\n                        var n = e.getState(),\n                            r = this.doStatePropsDependOnOwnProps ? this.finalMapStateToProps(n, t) : this.finalMapStateToProps(n);\n                        return r\n                    }, i.prototype.configureFinalMapState = function(e, t) {\n                        var n = g(e.getState(), t),\n                            r = \"function\" == typeof n;\n                        return this.finalMapStateToProps = r ? n : g, this.doStatePropsDependOnOwnProps = 1 !== this.finalMapStateToProps.length, r ? this.computeStateProps(e, t) : n\n                    }, i.prototype.computeDispatchProps = function(e, t) {\n                        if (!this.finalMapDispatchToProps) return this.configureFinalMapDispatch(e, t);\n                        var n = e.dispatch,\n                            r = this.doDispatchPropsDependOnOwnProps ? this.finalMapDispatchToProps(n, t) : this.finalMapDispatchToProps(n);\n                        return r\n                    }, i.prototype.configureFinalMapDispatch = function(e, t) {\n                        var n = y(e.dispatch, t),\n                            r = \"function\" == typeof n;\n                        return this.finalMapDispatchToProps = r ? n : y, this.doDispatchPropsDependOnOwnProps = 1 !== this.finalMapDispatchToProps.length, r ? this.computeDispatchProps(e, t) : n\n                    }, i.prototype.updateStatePropsIfNeeded = function() {\n                        var e = this.computeStateProps(this.store, this.props);\n                        return (!this.stateProps || !(0, a.default)(e, this.stateProps)) && (this.stateProps = e, !0)\n                    }, i.prototype.updateDispatchPropsIfNeeded = function() {\n                        var e = this.computeDispatchProps(this.store, this.props);\n                        return (!this.dispatchProps || !(0, a.default)(e, this.dispatchProps)) && (this.dispatchProps = e, !0)\n                    }, i.prototype.updateMergedPropsIfNeeded = function() {\n                        var e = function(e, t, n) {\n                            var r = b(e, t, n);\n                            0;\n                            return r\n                        }(this.stateProps, this.dispatchProps, this.props);\n                        return !(this.mergedProps && S && (0, a.default)(e, this.mergedProps)) && (this.mergedProps = e, !0)\n                    }, i.prototype.isSubscribed = function() {\n                        return \"function\" == typeof this.unsubscribe\n                    }, i.prototype.trySubscribe = function() {\n                        m && !this.unsubscribe && (this.unsubscribe = this.store.subscribe(this.handleChange.bind(this)), this.handleChange())\n                    }, i.prototype.tryUnsubscribe = function() {\n                        this.unsubscribe && (this.unsubscribe(), this.unsubscribe = null)\n                    }, i.prototype.componentDidMount = function() {\n                        this.trySubscribe()\n                    }, i.prototype.componentWillReceiveProps = function(e) {\n                        w && (0, a.default)(e, this.props) || (this.haveOwnPropsChanged = !0)\n                    }, i.prototype.componentWillUnmount = function() {\n                        this.tryUnsubscribe(), this.clearCache()\n                    }, i.prototype.clearCache = function() {\n                        this.dispatchProps = null, this.stateProps = null, this.mergedProps = null, this.haveOwnPropsChanged = !0, this.hasStoreStateChanged = !0, this.haveStatePropsBeenPrecalculated = !1, this.statePropsPrecalculationError = null, this.renderedElement = null, this.finalMapDispatchToProps = null, this.finalMapStateToProps = null\n                    }, i.prototype.handleChange = function() {\n                        if (this.unsubscribe) {\n                            var e = this.store.getState(),\n                                t = this.state.storeState;\n                            if (!w || t !== e) {\n                                if (w && !this.doStatePropsDependOnOwnProps) {\n                                    var n = function(e, t) {\n                                        try {\n                                            return e.apply(t)\n                                        } catch (e) {\n                                            return h.value = e, h\n                                        }\n                                    }(this.updateStatePropsIfNeeded, this);\n                                    if (!n) return;\n                                    n === h && (this.statePropsPrecalculationError = h.value), this.haveStatePropsBeenPrecalculated = !0\n                                }\n                                this.hasStoreStateChanged = !0, this.setState({\n                                    storeState: e\n                                })\n                            }\n                        }\n                    }, i.prototype.getWrappedInstance = function() {\n                        return (0, l.default)(x, \"To access the wrapped instance, you need to specify { withRef: true } as the fourth argument of the connect() call.\"), this.refs.wrappedInstance\n                    }, i.prototype.render = function() {\n                        var t = this.haveOwnPropsChanged,\n                            n = this.hasStoreStateChanged,\n                            i = this.haveStatePropsBeenPrecalculated,\n                            a = this.statePropsPrecalculationError,\n                            u = this.renderedElement;\n                        if (this.haveOwnPropsChanged = !1, this.hasStoreStateChanged = !1, this.haveStatePropsBeenPrecalculated = !1, this.statePropsPrecalculationError = null, a) throw a;\n                        var s = !0,\n                            l = !0;\n                        w && u && (s = n || t && this.doStatePropsDependOnOwnProps, l = t && this.doDispatchPropsDependOnOwnProps);\n                        var c = !1,\n                            f = !1;\n                        i ? c = !0 : s && (c = this.updateStatePropsIfNeeded()), l && (f = this.updateDispatchPropsIfNeeded());\n                        return !(!!(c || f || t) && this.updateMergedPropsIfNeeded()) && u ? u : (this.renderedElement = x ? (0, o.createElement)(e, r({}, this.mergedProps, {\n                            ref: \"wrappedInstance\"\n                        })) : (0, o.createElement)(e, this.mergedProps), this.renderedElement)\n                    }, i\n                }(o.Component);\n                return n.displayName = t, n.WrappedComponent = e, n.contextTypes = {\n                    store: i.default\n                }, n.propTypes = {\n                    store: i.default\n                }, (0, s.default)(n, e)\n            }\n        };\n        var o = n(0),\n            i = c(n(375)),\n            a = c(n(855)),\n            u = c(n(856)),\n            s = (c(n(376)), c(n(227)), c(n(857))),\n            l = c(n(858));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n                return {}\n            },\n            p = function(e) {\n                return {\n                    dispatch: e\n                }\n            },\n            d = function(e, t, n) {\n                return r({}, n, e, t)\n            };\n        var h = {\n            value: null\n        };\n        var v = 0\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.default = function(e, t) {\n            if (e === t) return !0;\n            var n = Object.keys(e),\n                r = Object.keys(t);\n            if (n.length !== r.length) return !1;\n            for (var o = Object.prototype.hasOwnProperty, i = 0; i < n.length; i++)\n                if (!o.call(t, n[i]) || e[n[i]] !== t[n[i]]) return !1;\n            return !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.__esModule = !0, t.default = function(e) {\n            return function(t) {\n                return (0, r.bindActionCreators)(e, t)\n            }\n        };\n        var r = n(270)\n    }, function(e, t, n) {\n        var r;\n        r = function() {\n            \"use strict\";\n            var e = {\n                    childContextTypes: !0,\n                    contextTypes: !0,\n                    defaultProps: !0,\n                    displayName: !0,\n                    getDefaultProps: !0,\n                    getDerivedStateFromProps: !0,\n                    mixins: !0,\n                    propTypes: !0,\n                    type: !0\n                },\n                t = {\n                    name: !0,\n                    length: !0,\n                    prototype: !0,\n                    caller: !0,\n                    callee: !0,\n                    arguments: !0,\n                    arity: !0\n                },\n                n = Object.defineProperty,\n                r = Object.getOwnPropertyNames,\n                o = Object.getOwnPropertySymbols,\n                i = Object.getOwnPropertyDescriptor,\n                a = Object.getPrototypeOf,\n                u = a && a(Object);\n            return function s(l, c, f) {\n                if (\"string\" != typeof c) {\n                    if (u) {\n                        var p = a(c);\n                        p && p !== u && s(l, p, f)\n                    }\n                    var d = r(c);\n                    o && (d = d.concat(o(c)));\n                    for (var h = 0; h < d.length; ++h) {\n                        var v = d[h];\n                        if (!(e[v] || t[v] || f && f[v])) {\n                            var m = i(c, v);\n                            try {\n                                n(l, v, m)\n                            } catch (e) {}\n                        }\n                    }\n                    return l\n                }\n                return l\n            }\n        }, e.exports = r()\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r, o, i, a, u) {\n            if (!e) {\n                var s;\n                if (void 0 === t) s = new Error(\"Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.\");\n                else {\n                    var l = [n, r, o, i, a, u],\n                        c = 0;\n                    (s = new Error(t.replace(/%s/g, function() {\n                        return l[c++]\n                    }))).name = \"Invariant Violation\"\n                }\n                throw s.framesToPop = 1, s\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(279),\n            o = n(377),\n            i = n(881),\n            a = n(79),\n            u = n(90),\n            s = n(884),\n            l = n(381),\n            c = n(380),\n            f = l(function(e, t) {\n                var n = {};\n                if (null == e) return n;\n                var l = !1;\n                t = r(t, function(t) {\n                    return t = a(t, e), l || (l = t.length > 1), t\n                }), u(e, c(e), n), l && (n = o(n, 7, s));\n                for (var f = t.length; f--;) i(n, t[f]);\n                return n\n            });\n        e.exports = f\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            for (var n = -1, r = null == e ? 0 : e.length; ++n < r && !1 !== t(e[n], n, e););\n            return e\n        }\n    }, function(e, t, n) {\n        var r = n(90),\n            o = n(64);\n        e.exports = function(e, t) {\n            return e && r(t, o(t), e)\n        }\n    }, function(e, t, n) {\n        var r = n(90),\n            o = n(378);\n        e.exports = function(e, t) {\n            return e && r(t, o(t), e)\n        }\n    }, function(e, t, n) {\n        var r = n(38),\n            o = n(136),\n            i = n(864),\n            a = Object.prototype.hasOwnProperty;\n        e.exports = function(e) {\n            if (!r(e)) return i(e);\n            var t = o(e),\n                n = [];\n            for (var u in e)(\"constructor\" != u || !t && a.call(e, u)) && n.push(u);\n            return n\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = [];\n            if (null != e)\n                for (var n in Object(e)) t.push(n);\n            return t\n        }\n    }, function(e, t, n) {\n        (function(e) {\n            var r = n(37),\n                o = \"object\" == typeof t && t && !t.nodeType && t,\n                i = o && \"object\" == typeof e && e && !e.nodeType && e,\n                a = i && i.exports === o ? r.Buffer : void 0,\n                u = a ? a.allocUnsafe : void 0;\n            e.exports = function(e, t) {\n                if (t) return e.slice();\n                var n = e.length,\n                    r = u ? u(n) : new e.constructor(n);\n                return e.copy(r), r\n            }\n        }).call(t, n(134)(e))\n    }, function(e, t) {\n        e.exports = function(e, t) {\n            var n = -1,\n                r = e.length;\n            for (t || (t = Array(r)); ++n < r;) t[n] = e[n];\n            return t\n        }\n    }, function(e, t, n) {\n        var r = n(90),\n            o = n(184);\n        e.exports = function(e, t) {\n            return r(e, o(e), t)\n        }\n    }, function(e, t, n) {\n        var r = n(90),\n            o = n(379);\n        e.exports = function(e, t) {\n            return r(e, o(e), t)\n        }\n    }, function(e, t) {\n        var n = Object.prototype.hasOwnProperty;\n        e.exports = function(e) {\n            var t = e.length,\n                r = new e.constructor(t);\n            return t && \"string\" == typeof e[0] && n.call(e, \"index\") && (r.index = e.index, r.input = e.input), r\n        }\n    }, function(e, t, n) {\n        var r = n(229),\n            o = n(871),\n            i = n(872),\n            a = n(873),\n            u = n(874),\n            s = \"[object Boolean]\",\n            l = \"[object Date]\",\n            c = \"[object Map]\",\n            f = \"[object Number]\",\n            p = \"[object RegExp]\",\n            d = \"[object Set]\",\n            h = \"[object String]\",\n            v = \"[object Symbol]\",\n            m = \"[object ArrayBuffer]\",\n            g = \"[object DataView]\",\n            y = \"[object Float32Array]\",\n            b = \"[object Float64Array]\",\n            _ = \"[object Int8Array]\",\n            w = \"[object Int16Array]\",\n            E = \"[object Int32Array]\",\n            x = \"[object Uint8Array]\",\n            S = \"[object Uint8ClampedArray]\",\n            C = \"[object Uint16Array]\",\n            k = \"[object Uint32Array]\";\n        e.exports = function(e, t, n) {\n            var A = e.constructor;\n            switch (t) {\n                case m:\n                    return r(e);\n                case s:\n                case l:\n                    return new A(+e);\n                case g:\n                    return o(e, n);\n                case y:\n                case b:\n                case _:\n                case w:\n                case E:\n                case x:\n                case S:\n                case C:\n                case k:\n                    return u(e, n);\n                case c:\n                    return new A;\n                case f:\n                case h:\n                    return new A(e);\n                case p:\n                    return i(e);\n                case d:\n                    return new A;\n                case v:\n                    return a(e)\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(229);\n        e.exports = function(e, t) {\n            var n = t ? r(e.buffer) : e.buffer;\n            return new e.constructor(n, e.byteOffset, e.byteLength)\n        }\n    }, function(e, t) {\n        var n = /\\w*$/;\n        e.exports = function(e) {\n            var t = new e.constructor(e.source, n.exec(e));\n            return t.lastIndex = e.lastIndex, t\n        }\n    }, function(e, t, n) {\n        var r = n(77),\n            o = r ? r.prototype : void 0,\n            i = o ? o.valueOf : void 0;\n        e.exports = function(e) {\n            return i ? Object(i.call(e)) : {}\n        }\n    }, function(e, t, n) {\n        var r = n(229);\n        e.exports = function(e, t) {\n            var n = t ? r(e.buffer) : e.buffer;\n            return new e.constructor(n, e.byteOffset, e.length)\n        }\n    }, function(e, t, n) {\n        var r = n(876),\n            o = n(228),\n            i = n(136);\n        e.exports = function(e) {\n            return \"function\" != typeof e.constructor || i(e) ? {} : r(o(e))\n        }\n    }, function(e, t, n) {\n        var r = n(38),\n            o = Object.create,\n            i = function() {\n                function e() {}\n                return function(t) {\n                    if (!r(t)) return {};\n                    if (o) return o(t);\n                    e.prototype = t;\n                    var n = new e;\n                    return e.prototype = void 0, n\n                }\n            }();\n        e.exports = i\n    }, function(e, t, n) {\n        var r = n(878),\n            o = n(188),\n            i = n(189),\n            a = i && i.isMap,\n            u = a ? o(a) : r;\n        e.exports = u\n    }, function(e, t, n) {\n        var r = n(137),\n            o = n(47),\n            i = \"[object Map]\";\n        e.exports = function(e) {\n            return o(e) && r(e) == i\n        }\n    }, function(e, t, n) {\n        var r = n(880),\n            o = n(188),\n            i = n(189),\n            a = i && i.isSet,\n            u = a ? o(a) : r;\n        e.exports = u\n    }, function(e, t, n) {\n        var r = n(137),\n            o = n(47),\n            i = \"[object Set]\";\n        e.exports = function(e) {\n            return o(e) && r(e) == i\n        }\n    }, function(e, t, n) {\n        var r = n(79),\n            o = n(882),\n            i = n(883),\n            a = n(80);\n        e.exports = function(e, t) {\n            return t = r(t, e), null == (e = i(e, t)) || delete e[a(o(t))]\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            var t = null == e ? 0 : e.length;\n            return t ? e[t - 1] : void 0\n        }\n    }, function(e, t, n) {\n        var r = n(139),\n            o = n(281);\n        e.exports = function(e, t) {\n            return t.length < 2 ? e : r(e, o(t, 0, -1))\n        }\n    }, function(e, t, n) {\n        var r = n(227);\n        e.exports = function(e) {\n            return r(e) ? void 0 : e\n        }\n    }, function(e, t, n) {\n        var r = n(886);\n        e.exports = function(e) {\n            return null != e && e.length ? r(e, 1) : []\n        }\n    }, function(e, t, n) {\n        var r = n(183),\n            o = n(887);\n        e.exports = function e(t, n, i, a, u) {\n            var s = -1,\n                l = t.length;\n            for (i || (i = o), u || (u = []); ++s < l;) {\n                var c = t[s];\n                n > 0 && i(c) ? n > 1 ? e(c, n - 1, i, a, u) : r(u, c) : a || (u[u.length] = c)\n            }\n            return u\n        }\n    }, function(e, t, n) {\n        var r = n(77),\n            o = n(185),\n            i = n(24),\n            a = r ? r.isConcatSpreadable : void 0;\n        e.exports = function(e) {\n            return i(e) || o(e) || !!(a && e && e[a])\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n) {\n            switch (n.length) {\n                case 0:\n                    return e.call(t);\n                case 1:\n                    return e.call(t, n[0]);\n                case 2:\n                    return e.call(t, n[0], n[1]);\n                case 3:\n                    return e.call(t, n[0], n[1], n[2])\n            }\n            return e.apply(t, n)\n        }\n    }, function(e, t, n) {\n        var r = n(890),\n            o = n(345),\n            i = n(191),\n            a = o ? function(e, t) {\n                return o(e, \"toString\", {\n                    configurable: !0,\n                    enumerable: !1,\n                    value: r(t),\n                    writable: !0\n                })\n            } : i;\n        e.exports = a\n    }, function(e, t) {\n        e.exports = function(e) {\n            return function() {\n                return e\n            }\n        }\n    }, function(e, t) {\n        var n = 800,\n            r = 16,\n            o = Date.now;\n        e.exports = function(e) {\n            var t = 0,\n                i = 0;\n            return function() {\n                var a = o(),\n                    u = r - (a - i);\n                if (i = a, u > 0) {\n                    if (++t >= n) return arguments[0]\n                } else t = 0;\n                return e.apply(void 0, arguments)\n            }\n        }\n    }, function(e, t, n) {\n        var r = n(146),\n            o = n(90),\n            i = n(893),\n            a = n(78),\n            u = n(136),\n            s = n(64),\n            l = Object.prototype.hasOwnProperty,\n            c = i(function(e, t) {\n                if (u(t) || a(t)) o(t, s(t), e);\n                else\n                    for (var n in t) l.call(t, n) && r(e, n, t[n])\n            });\n        e.exports = c\n    }, function(e, t, n) {\n        var r = n(894),\n            o = n(304);\n        e.exports = function(e) {\n            return r(function(t, n) {\n                var r = -1,\n                    i = n.length,\n                    a = i > 1 ? n[i - 1] : void 0,\n                    u = i > 2 ? n[2] : void 0;\n                for (a = e.length > 3 && \"function\" == typeof a ? (i--, a) : void 0, u && o(n[0], n[1], u) && (a = i < 3 ? void 0 : a, i = 1), t = Object(t); ++r < i;) {\n                    var s = n[r];\n                    s && e(t, s, r, a)\n                }\n                return t\n            })\n        }\n    }, function(e, t, n) {\n        var r = n(191),\n            o = n(382),\n            i = n(383);\n        e.exports = function(e, t) {\n            return i(o(e, t, r), e + \"\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(896),\n            o = n(897);\n\n        function i() {\n            this.protocol = null, this.slashes = null, this.auth = null, this.host = null, this.port = null, this.hostname = null, this.hash = null, this.search = null, this.query = null, this.pathname = null, this.path = null, this.href = null\n        }\n        t.parse = b, t.resolve = function(e, t) {\n            return b(e, !1, !0).resolve(t)\n        }, t.resolveObject = function(e, t) {\n            return e ? b(e, !1, !0).resolveObject(t) : t\n        }, t.format = function(e) {\n            o.isString(e) && (e = b(e));\n            return e instanceof i ? e.format() : i.prototype.format.call(e)\n        }, t.Url = i;\n        var a = /^([a-z0-9.+-]+:)/i,\n            u = /:[0-9]*$/,\n            s = /^(\\/\\/?(?!\\/)[^\\?\\s]*)(\\?[^\\s]*)?$/,\n            l = [\"{\", \"}\", \"|\", \"\\\\\", \"^\", \"`\"].concat([\"<\", \">\", '\"', \"`\", \" \", \"\\r\", \"\\n\", \"\\t\"]),\n            c = [\"'\"].concat(l),\n            f = [\"%\", \"/\", \"?\", \";\", \"#\"].concat(c),\n            p = [\"/\", \"?\", \"#\"],\n            d = /^[+a-z0-9A-Z_-]{0,63}$/,\n            h = /^([+a-z0-9A-Z_-]{0,63})(.*)$/,\n            v = {\n                javascript: !0,\n                \"javascript:\": !0\n            },\n            m = {\n                javascript: !0,\n                \"javascript:\": !0\n            },\n            g = {\n                http: !0,\n                https: !0,\n                ftp: !0,\n                gopher: !0,\n                file: !0,\n                \"http:\": !0,\n                \"https:\": !0,\n                \"ftp:\": !0,\n                \"gopher:\": !0,\n                \"file:\": !0\n            },\n            y = n(898);\n\n        function b(e, t, n) {\n            if (e && o.isObject(e) && e instanceof i) return e;\n            var r = new i;\n            return r.parse(e, t, n), r\n        }\n        i.prototype.parse = function(e, t, n) {\n            if (!o.isString(e)) throw new TypeError(\"Parameter 'url' must be a string, not \" + typeof e);\n            var i = e.indexOf(\"?\"),\n                u = -1 !== i && i < e.indexOf(\"#\") ? \"?\" : \"#\",\n                l = e.split(u);\n            l[0] = l[0].replace(/\\\\/g, \"/\");\n            var b = e = l.join(u);\n            if (b = b.trim(), !n && 1 === e.split(\"#\").length) {\n                var _ = s.exec(b);\n                if (_) return this.path = b, this.href = b, this.pathname = _[1], _[2] ? (this.search = _[2], this.query = t ? y.parse(this.search.substr(1)) : this.search.substr(1)) : t && (this.search = \"\", this.query = {}), this\n            }\n            var w = a.exec(b);\n            if (w) {\n                var E = (w = w[0]).toLowerCase();\n                this.protocol = E, b = b.substr(w.length)\n            }\n            if (n || w || b.match(/^\\/\\/[^@\\/]+@[^@\\/]+/)) {\n                var x = \"//\" === b.substr(0, 2);\n                !x || w && m[w] || (b = b.substr(2), this.slashes = !0)\n            }\n            if (!m[w] && (x || w && !g[w])) {\n                for (var S, C, k = -1, A = 0; A < p.length; A++) {\n                    -1 !== (O = b.indexOf(p[A])) && (-1 === k || O < k) && (k = O)\n                } - 1 !== (C = -1 === k ? b.lastIndexOf(\"@\") : b.lastIndexOf(\"@\", k)) && (S = b.slice(0, C), b = b.slice(C + 1), this.auth = decodeURIComponent(S)), k = -1;\n                for (A = 0; A < f.length; A++) {\n                    var O; - 1 !== (O = b.indexOf(f[A])) && (-1 === k || O < k) && (k = O)\n                } - 1 === k && (k = b.length), this.host = b.slice(0, k), b = b.slice(k), this.parseHost(), this.hostname = this.hostname || \"\";\n                var P = \"[\" === this.hostname[0] && \"]\" === this.hostname[this.hostname.length - 1];\n                if (!P)\n                    for (var T = this.hostname.split(/\\./), M = (A = 0, T.length); A < M; A++) {\n                        var I = T[A];\n                        if (I && !I.match(d)) {\n                            for (var j = \"\", N = 0, R = I.length; N < R; N++) I.charCodeAt(N) > 127 ? j += \"x\" : j += I[N];\n                            if (!j.match(d)) {\n                                var D = T.slice(0, A),\n                                    L = T.slice(A + 1),\n                                    U = I.match(h);\n                                U && (D.push(U[1]), L.unshift(U[2])), L.length && (b = \"/\" + L.join(\".\") + b), this.hostname = D.join(\".\");\n                                break\n                            }\n                        }\n                    }\n                this.hostname.length > 255 ? this.hostname = \"\" : this.hostname = this.hostname.toLowerCase(), P || (this.hostname = r.toASCII(this.hostname));\n                var q = this.port ? \":\" + this.port : \"\",\n                    F = this.hostname || \"\";\n                this.host = F + q, this.href += this.host, P && (this.hostname = this.hostname.substr(1, this.hostname.length - 2), \"/\" !== b[0] && (b = \"/\" + b))\n            }\n            if (!v[E])\n                for (A = 0, M = c.length; A < M; A++) {\n                    var z = c[A];\n                    if (-1 !== b.indexOf(z)) {\n                        var B = encodeURIComponent(z);\n                        B === z && (B = escape(z)), b = b.split(z).join(B)\n                    }\n                }\n            var V = b.indexOf(\"#\"); - 1 !== V && (this.hash = b.substr(V), b = b.slice(0, V));\n            var H = b.indexOf(\"?\");\n            if (-1 !== H ? (this.search = b.substr(H), this.query = b.substr(H + 1), t && (this.query = y.parse(this.query)), b = b.slice(0, H)) : t && (this.search = \"\", this.query = {}), b && (this.pathname = b), g[E] && this.hostname && !this.pathname && (this.pathname = \"/\"), this.pathname || this.search) {\n                q = this.pathname || \"\";\n                var W = this.search || \"\";\n                this.path = q + W\n            }\n            return this.href = this.format(), this\n        }, i.prototype.format = function() {\n            var e = this.auth || \"\";\n            e && (e = (e = encodeURIComponent(e)).replace(/%3A/i, \":\"), e += \"@\");\n            var t = this.protocol || \"\",\n                n = this.pathname || \"\",\n                r = this.hash || \"\",\n                i = !1,\n                a = \"\";\n            this.host ? i = e + this.host : this.hostname && (i = e + (-1 === this.hostname.indexOf(\":\") ? this.hostname : \"[\" + this.hostname + \"]\"), this.port && (i += \":\" + this.port)), this.query && o.isObject(this.query) && Object.keys(this.query).length && (a = y.stringify(this.query));\n            var u = this.search || a && \"?\" + a || \"\";\n            return t && \":\" !== t.substr(-1) && (t += \":\"), this.slashes || (!t || g[t]) && !1 !== i ? (i = \"//\" + (i || \"\"), n && \"/\" !== n.charAt(0) && (n = \"/\" + n)) : i || (i = \"\"), r && \"#\" !== r.charAt(0) && (r = \"#\" + r), u && \"?\" !== u.charAt(0) && (u = \"?\" + u), t + i + (n = n.replace(/[?#]/g, function(e) {\n                return encodeURIComponent(e)\n            })) + (u = u.replace(\"#\", \"%23\")) + r\n        }, i.prototype.resolve = function(e) {\n            return this.resolveObject(b(e, !1, !0)).format()\n        }, i.prototype.resolveObject = function(e) {\n            if (o.isString(e)) {\n                var t = new i;\n                t.parse(e, !1, !0), e = t\n            }\n            for (var n = new i, r = Object.keys(this), a = 0; a < r.length; a++) {\n                var u = r[a];\n                n[u] = this[u]\n            }\n            if (n.hash = e.hash, \"\" === e.href) return n.href = n.format(), n;\n            if (e.slashes && !e.protocol) {\n                for (var s = Object.keys(e), l = 0; l < s.length; l++) {\n                    var c = s[l];\n                    \"protocol\" !== c && (n[c] = e[c])\n                }\n                return g[n.protocol] && n.hostname && !n.pathname && (n.path = n.pathname = \"/\"), n.href = n.format(), n\n            }\n            if (e.protocol && e.protocol !== n.protocol) {\n                if (!g[e.protocol]) {\n                    for (var f = Object.keys(e), p = 0; p < f.length; p++) {\n                        var d = f[p];\n                        n[d] = e[d]\n                    }\n                    return n.href = n.format(), n\n                }\n                if (n.protocol = e.protocol, e.host || m[e.protocol]) n.pathname = e.pathname;\n                else {\n                    for (var h = (e.pathname || \"\").split(\"/\"); h.length && !(e.host = h.shift()););\n                    e.host || (e.host = \"\"), e.hostname || (e.hostname = \"\"), \"\" !== h[0] && h.unshift(\"\"), h.length < 2 && h.unshift(\"\"), n.pathname = h.join(\"/\")\n                }\n                if (n.search = e.search, n.query = e.query, n.host = e.host || \"\", n.auth = e.auth, n.hostname = e.hostname || e.host, n.port = e.port, n.pathname || n.search) {\n                    var v = n.pathname || \"\",\n                        y = n.search || \"\";\n                    n.path = v + y\n                }\n                return n.slashes = n.slashes || e.slashes, n.href = n.format(), n\n            }\n            var b = n.pathname && \"/\" === n.pathname.charAt(0),\n                _ = e.host || e.pathname && \"/\" === e.pathname.charAt(0),\n                w = _ || b || n.host && e.pathname,\n                E = w,\n                x = n.pathname && n.pathname.split(\"/\") || [],\n                S = (h = e.pathname && e.pathname.split(\"/\") || [], n.protocol && !g[n.protocol]);\n            if (S && (n.hostname = \"\", n.port = null, n.host && (\"\" === x[0] ? x[0] = n.host : x.unshift(n.host)), n.host = \"\", e.protocol && (e.hostname = null, e.port = null, e.host && (\"\" === h[0] ? h[0] = e.host : h.unshift(e.host)), e.host = null), w = w && (\"\" === h[0] || \"\" === x[0])), _) n.host = e.host || \"\" === e.host ? e.host : n.host, n.hostname = e.hostname || \"\" === e.hostname ? e.hostname : n.hostname, n.search = e.search, n.query = e.query, x = h;\n            else if (h.length) x || (x = []), x.pop(), x = x.concat(h), n.search = e.search, n.query = e.query;\n            else if (!o.isNullOrUndefined(e.search)) {\n                if (S) n.hostname = n.host = x.shift(), (P = !!(n.host && n.host.indexOf(\"@\") > 0) && n.host.split(\"@\")) && (n.auth = P.shift(), n.host = n.hostname = P.shift());\n                return n.search = e.search, n.query = e.query, o.isNull(n.pathname) && o.isNull(n.search) || (n.path = (n.pathname ? n.pathname : \"\") + (n.search ? n.search : \"\")), n.href = n.format(), n\n            }\n            if (!x.length) return n.pathname = null, n.search ? n.path = \"/\" + n.search : n.path = null, n.href = n.format(), n;\n            for (var C = x.slice(-1)[0], k = (n.host || e.host || x.length > 1) && (\".\" === C || \"..\" === C) || \"\" === C, A = 0, O = x.length; O >= 0; O--) \".\" === (C = x[O]) ? x.splice(O, 1) : \"..\" === C ? (x.splice(O, 1), A++) : A && (x.splice(O, 1), A--);\n            if (!w && !E)\n                for (; A--; A) x.unshift(\"..\");\n            !w || \"\" === x[0] || x[0] && \"/\" === x[0].charAt(0) || x.unshift(\"\"), k && \"/\" !== x.join(\"/\").substr(-1) && x.push(\"\");\n            var P, T = \"\" === x[0] || x[0] && \"/\" === x[0].charAt(0);\n            S && (n.hostname = n.host = T ? \"\" : x.length ? x.shift() : \"\", (P = !!(n.host && n.host.indexOf(\"@\") > 0) && n.host.split(\"@\")) && (n.auth = P.shift(), n.host = n.hostname = P.shift()));\n            return (w = w || n.host && x.length) && !T && x.unshift(\"\"), x.length ? n.pathname = x.join(\"/\") : (n.pathname = null, n.path = null), o.isNull(n.pathname) && o.isNull(n.search) || (n.path = (n.pathname ? n.pathname : \"\") + (n.search ? n.search : \"\")), n.auth = e.auth || n.auth, n.slashes = n.slashes || e.slashes, n.href = n.format(), n\n        }, i.prototype.parseHost = function() {\n            var e = this.host,\n                t = u.exec(e);\n            t && (\":\" !== (t = t[0]) && (this.port = t.substr(1)), e = e.substr(0, e.length - t.length)), e && (this.hostname = e)\n        }\n    }, function(e, t, n) {\n        (function(e, r) {\n            var o; /*! https://mths.be/punycode v1.3.2 by @mathias */\n            ! function(i) {\n                \"object\" == typeof t && t && t.nodeType, \"object\" == typeof e && e && e.nodeType;\n                var a = \"object\" == typeof r && r;\n                a.global !== a && a.window !== a && a.self;\n                var u, s = 2147483647,\n                    l = 36,\n                    c = 1,\n                    f = 26,\n                    p = 38,\n                    d = 700,\n                    h = 72,\n                    v = 128,\n                    m = \"-\",\n                    g = /^xn--/,\n                    y = /[^\\x20-\\x7E]/,\n                    b = /[\\x2E\\u3002\\uFF0E\\uFF61]/g,\n                    _ = {\n                        overflow: \"Overflow: input needs wider integers to process\",\n                        \"not-basic\": \"Illegal input >= 0x80 (not a basic code point)\",\n                        \"invalid-input\": \"Invalid input\"\n                    },\n                    w = l - c,\n                    E = Math.floor,\n                    x = String.fromCharCode;\n\n                function S(e) {\n                    throw RangeError(_[e])\n                }\n\n                function C(e, t) {\n                    for (var n = e.length, r = []; n--;) r[n] = t(e[n]);\n                    return r\n                }\n\n                function k(e, t) {\n                    var n = e.split(\"@\"),\n                        r = \"\";\n                    return n.length > 1 && (r = n[0] + \"@\", e = n[1]), r + C((e = e.replace(b, \".\")).split(\".\"), t).join(\".\")\n                }\n\n                function A(e) {\n                    for (var t, n, r = [], o = 0, i = e.length; o < i;)(t = e.charCodeAt(o++)) >= 55296 && t <= 56319 && o < i ? 56320 == (64512 & (n = e.charCodeAt(o++))) ? r.push(((1023 & t) << 10) + (1023 & n) + 65536) : (r.push(t), o--) : r.push(t);\n                    return r\n                }\n\n                function O(e) {\n                    return C(e, function(e) {\n                        var t = \"\";\n                        return e > 65535 && (t += x((e -= 65536) >>> 10 & 1023 | 55296), e = 56320 | 1023 & e), t += x(e)\n                    }).join(\"\")\n                }\n\n                function P(e, t) {\n                    return e + 22 + 75 * (e < 26) - ((0 != t) << 5)\n                }\n\n                function T(e, t, n) {\n                    var r = 0;\n                    for (e = n ? E(e / d) : e >> 1, e += E(e / t); e > w * f >> 1; r += l) e = E(e / w);\n                    return E(r + (w + 1) * e / (e + p))\n                }\n\n                function M(e) {\n                    var t, n, r, o, i, a, u, p, d, g, y, b = [],\n                        _ = e.length,\n                        w = 0,\n                        x = v,\n                        C = h;\n                    for ((n = e.lastIndexOf(m)) < 0 && (n = 0), r = 0; r < n; ++r) e.charCodeAt(r) >= 128 && S(\"not-basic\"), b.push(e.charCodeAt(r));\n                    for (o = n > 0 ? n + 1 : 0; o < _;) {\n                        for (i = w, a = 1, u = l; o >= _ && S(\"invalid-input\"), ((p = (y = e.charCodeAt(o++)) - 48 < 10 ? y - 22 : y - 65 < 26 ? y - 65 : y - 97 < 26 ? y - 97 : l) >= l || p > E((s - w) / a)) && S(\"overflow\"), w += p * a, !(p < (d = u <= C ? c : u >= C + f ? f : u - C)); u += l) a > E(s / (g = l - d)) && S(\"overflow\"), a *= g;\n                        C = T(w - i, t = b.length + 1, 0 == i), E(w / t) > s - x && S(\"overflow\"), x += E(w / t), w %= t, b.splice(w++, 0, x)\n                    }\n                    return O(b)\n                }\n\n                function I(e) {\n                    var t, n, r, o, i, a, u, p, d, g, y, b, _, w, C, k = [];\n                    for (b = (e = A(e)).length, t = v, n = 0, i = h, a = 0; a < b; ++a)(y = e[a]) < 128 && k.push(x(y));\n                    for (r = o = k.length, o && k.push(m); r < b;) {\n                        for (u = s, a = 0; a < b; ++a)(y = e[a]) >= t && y < u && (u = y);\n                        for (u - t > E((s - n) / (_ = r + 1)) && S(\"overflow\"), n += (u - t) * _, t = u, a = 0; a < b; ++a)\n                            if ((y = e[a]) < t && ++n > s && S(\"overflow\"), y == t) {\n                                for (p = n, d = l; !(p < (g = d <= i ? c : d >= i + f ? f : d - i)); d += l) C = p - g, w = l - g, k.push(x(P(g + C % w, 0))), p = E(C / w);\n                                k.push(x(P(p, 0))), i = T(n, _, r == o), n = 0, ++r\n                            }++n, ++t\n                    }\n                    return k.join(\"\")\n                }\n                u = {\n                    version: \"1.3.2\",\n                    ucs2: {\n                        decode: A,\n                        encode: O\n                    },\n                    decode: M,\n                    encode: I,\n                    toASCII: function(e) {\n                        return k(e, function(e) {\n                            return y.test(e) ? \"xn--\" + I(e) : e\n                        })\n                    },\n                    toUnicode: function(e) {\n                        return k(e, function(e) {\n                            return g.test(e) ? M(e.slice(4).toLowerCase()) : e\n                        })\n                    }\n                }, void 0 === (o = function() {\n                    return u\n                }.call(t, n, t, e)) || (e.exports = o)\n            }()\n        }).call(t, n(134)(e), n(31))\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            isString: function(e) {\n                return \"string\" == typeof e\n            },\n            isObject: function(e) {\n                return \"object\" == typeof e && null !== e\n            },\n            isNull: function(e) {\n                return null === e\n            },\n            isNullOrUndefined: function(e) {\n                return null == e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        t.decode = t.parse = n(899), t.encode = t.stringify = n(900)\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            return Object.prototype.hasOwnProperty.call(e, t)\n        }\n        e.exports = function(e, t, n, i) {\n            t = t || \"&\", n = n || \"=\";\n            var a = {};\n            if (\"string\" != typeof e || 0 === e.length) return a;\n            var u = /\\+/g;\n            e = e.split(t);\n            var s = 1e3;\n            i && \"number\" == typeof i.maxKeys && (s = i.maxKeys);\n            var l = e.length;\n            s > 0 && l > s && (l = s);\n            for (var c = 0; c < l; ++c) {\n                var f, p, d, h, v = e[c].replace(u, \"%20\"),\n                    m = v.indexOf(n);\n                m >= 0 ? (f = v.substr(0, m), p = v.substr(m + 1)) : (f = v, p = \"\"), d = decodeURIComponent(f), h = decodeURIComponent(p), r(a, d) ? o(a[d]) ? a[d].push(h) : a[d] = [a[d], h] : a[d] = h\n            }\n            return a\n        };\n        var o = Array.isArray || function(e) {\n            return \"[object Array]\" === Object.prototype.toString.call(e)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = function(e) {\n            switch (typeof e) {\n                case \"string\":\n                    return e;\n                case \"boolean\":\n                    return e ? \"true\" : \"false\";\n                case \"number\":\n                    return isFinite(e) ? e : \"\";\n                default:\n                    return \"\"\n            }\n        };\n        e.exports = function(e, t, n, u) {\n            return t = t || \"&\", n = n || \"=\", null === e && (e = void 0), \"object\" == typeof e ? i(a(e), function(a) {\n                var u = encodeURIComponent(r(a)) + n;\n                return o(e[a]) ? i(e[a], function(e) {\n                    return u + encodeURIComponent(r(e))\n                }).join(t) : u + encodeURIComponent(r(e[a]))\n            }).join(t) : u ? encodeURIComponent(r(u)) + n + encodeURIComponent(r(e)) : \"\"\n        };\n        var o = Array.isArray || function(e) {\n            return \"[object Array]\" === Object.prototype.toString.call(e)\n        };\n\n        function i(e, t) {\n            if (e.map) return e.map(t);\n            for (var n = [], r = 0; r < e.length; r++) n.push(t(e[r], r));\n            return n\n        }\n        var a = Object.keys || function(e) {\n            var t = [];\n            for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && t.push(n);\n            return t\n        }\n    }, function(e, t, n) {\n        (function(t) {\n            ! function() {\n                \"use strict\";\n                e.exports = function(e) {\n                    return (e instanceof t ? e : new t(e.toString(), \"binary\")).toString(\"base64\")\n                }\n            }()\n        }).call(t, n(54).Buffer)\n    }, function(e, t, n) {\n        var r = n(903),\n            o = n(277),\n            i = n(301),\n            a = n(61);\n        e.exports = function(e, t, n) {\n            return e = a(e), n = null == n ? 0 : r(i(n), 0, e.length), t = o(t), e.slice(n, n + t.length) == t\n        }\n    }, function(e, t) {\n        e.exports = function(e, t, n) {\n            return e == e && (void 0 !== n && (e = e <= n ? e : n), void 0 !== t && (e = e >= t ? e : t)), e\n        }\n    }, function(e, t, n) {\n        var r = n(377),\n            o = 1,\n            i = 4;\n        e.exports = function(e) {\n            return r(e, o | i)\n        }\n    }, function(e, t) {\n        ! function(e) {\n            \"use strict\";\n\n            function t(e) {\n                if (\"string\" != typeof e && (e = String(e)), /[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(e)) throw new TypeError(\"Invalid character in header field name\");\n                return e.toLowerCase()\n            }\n\n            function n(e) {\n                return \"string\" != typeof e && (e = String(e)), e\n            }\n\n            function r(e) {\n                var t = {\n                    next: function() {\n                        var t = e.shift();\n                        return {\n                            done: void 0 === t,\n                            value: t\n                        }\n                    }\n                };\n                return h.iterable && (t[Symbol.iterator] = function() {\n                    return t\n                }), t\n            }\n\n            function o(e) {\n                this.map = {}, e instanceof o ? e.forEach(function(e, t) {\n                    this.append(t, e)\n                }, this) : Array.isArray(e) ? e.forEach(function(e) {\n                    this.append(e[0], e[1])\n                }, this) : e && Object.getOwnPropertyNames(e).forEach(function(t) {\n                    this.append(t, e[t])\n                }, this)\n            }\n\n            function i(e) {\n                if (e.bodyUsed) return Promise.reject(new TypeError(\"Already read\"));\n                e.bodyUsed = !0\n            }\n\n            function a(e) {\n                return new Promise(function(t, n) {\n                    e.onload = function() {\n                        t(e.result)\n                    }, e.onerror = function() {\n                        n(e.error)\n                    }\n                })\n            }\n\n            function u(e) {\n                var t = new FileReader,\n                    n = a(t);\n                return t.readAsArrayBuffer(e), n\n            }\n\n            function s(e) {\n                if (e.slice) return e.slice(0);\n                var t = new Uint8Array(e.byteLength);\n                return t.set(new Uint8Array(e)), t.buffer\n            }\n\n            function l() {\n                return this.bodyUsed = !1, this._initBody = function(e) {\n                    if (this._bodyInit = e, e)\n                        if (\"string\" == typeof e) this._bodyText = e;\n                        else if (h.blob && Blob.prototype.isPrototypeOf(e)) this._bodyBlob = e;\n                        else if (h.formData && FormData.prototype.isPrototypeOf(e)) this._bodyFormData = e;\n                        else if (h.searchParams && URLSearchParams.prototype.isPrototypeOf(e)) this._bodyText = e.toString();\n                        else if (h.arrayBuffer && h.blob && m(e)) this._bodyArrayBuffer = s(e.buffer), this._bodyInit = new Blob([this._bodyArrayBuffer]);\n                        else {\n                            if (!h.arrayBuffer || !ArrayBuffer.prototype.isPrototypeOf(e) && !g(e)) throw new Error(\"unsupported BodyInit type\");\n                            this._bodyArrayBuffer = s(e)\n                        } else this._bodyText = \"\";\n                    this.headers.get(\"content-type\") || (\"string\" == typeof e ? this.headers.set(\"content-type\", \"text/plain;charset=UTF-8\") : this._bodyBlob && this._bodyBlob.type ? this.headers.set(\"content-type\", this._bodyBlob.type) : h.searchParams && URLSearchParams.prototype.isPrototypeOf(e) && this.headers.set(\"content-type\", \"application/x-www-form-urlencoded;charset=UTF-8\"))\n                }, h.blob && (this.blob = function() {\n                    var e = i(this);\n                    if (e) return e;\n                    if (this._bodyBlob) return Promise.resolve(this._bodyBlob);\n                    if (this._bodyArrayBuffer) return Promise.resolve(new Blob([this._bodyArrayBuffer]));\n                    if (this._bodyFormData) throw new Error(\"could not read FormData body as blob\");\n                    return Promise.resolve(new Blob([this._bodyText]))\n                }, this.arrayBuffer = function() {\n                    return this._bodyArrayBuffer ? i(this) || Promise.resolve(this._bodyArrayBuffer) : this.blob().then(u)\n                }), this.text = function() {\n                    var e = i(this);\n                    if (e) return e;\n                    if (this._bodyBlob) return function(e) {\n                        var t = new FileReader,\n                            n = a(t);\n                        return t.readAsText(e), n\n                    }(this._bodyBlob);\n                    if (this._bodyArrayBuffer) return Promise.resolve(function(e) {\n                        for (var t = new Uint8Array(e), n = new Array(t.length), r = 0; r < t.length; r++) n[r] = String.fromCharCode(t[r]);\n                        return n.join(\"\")\n                    }(this._bodyArrayBuffer));\n                    if (this._bodyFormData) throw new Error(\"could not read FormData body as text\");\n                    return Promise.resolve(this._bodyText)\n                }, h.formData && (this.formData = function() {\n                    return this.text().then(f)\n                }), this.json = function() {\n                    return this.text().then(JSON.parse)\n                }, this\n            }\n\n            function c(e, t) {\n                var n = (t = t || {}).body;\n                if (e instanceof c) {\n                    if (e.bodyUsed) throw new TypeError(\"Already read\");\n                    this.url = e.url, this.credentials = e.credentials, t.headers || (this.headers = new o(e.headers)), this.method = e.method, this.mode = e.mode, n || null == e._bodyInit || (n = e._bodyInit, e.bodyUsed = !0)\n                } else this.url = String(e);\n                if (this.credentials = t.credentials || this.credentials || \"omit\", !t.headers && this.headers || (this.headers = new o(t.headers)), this.method = function(e) {\n                    var t = e.toUpperCase();\n                    return y.indexOf(t) > -1 ? t : e\n                }(t.method || this.method || \"GET\"), this.mode = t.mode || this.mode || null, this.referrer = null, (\"GET\" === this.method || \"HEAD\" === this.method) && n) throw new TypeError(\"Body not allowed for GET or HEAD requests\");\n                this._initBody(n)\n            }\n\n            function f(e) {\n                var t = new FormData;\n                return e.trim().split(\"&\").forEach(function(e) {\n                    if (e) {\n                        var n = e.split(\"=\"),\n                            r = n.shift().replace(/\\+/g, \" \"),\n                            o = n.join(\"=\").replace(/\\+/g, \" \");\n                        t.append(decodeURIComponent(r), decodeURIComponent(o))\n                    }\n                }), t\n            }\n\n            function p(e) {\n                var t = new o;\n                return e.split(/\\r?\\n/).forEach(function(e) {\n                    var n = e.split(\":\"),\n                        r = n.shift().trim();\n                    if (r) {\n                        var o = n.join(\":\").trim();\n                        t.append(r, o)\n                    }\n                }), t\n            }\n\n            function d(e, t) {\n                t || (t = {}), this.type = \"default\", this.status = \"status\" in t ? t.status : 200, this.ok = this.status >= 200 && this.status < 300, this.statusText = \"statusText\" in t ? t.statusText : \"OK\", this.headers = new o(t.headers), this.url = t.url || \"\", this._initBody(e)\n            }\n            if (!e.fetch) {\n                var h = {\n                    searchParams: \"URLSearchParams\" in e,\n                    iterable: \"Symbol\" in e && \"iterator\" in Symbol,\n                    blob: \"FileReader\" in e && \"Blob\" in e && function() {\n                        try {\n                            return new Blob, !0\n                        } catch (e) {\n                            return !1\n                        }\n                    }(),\n                    formData: \"FormData\" in e,\n                    arrayBuffer: \"ArrayBuffer\" in e\n                };\n                if (h.arrayBuffer) var v = [\"[object Int8Array]\", \"[object Uint8Array]\", \"[object Uint8ClampedArray]\", \"[object Int16Array]\", \"[object Uint16Array]\", \"[object Int32Array]\", \"[object Uint32Array]\", \"[object Float32Array]\", \"[object Float64Array]\"],\n                    m = function(e) {\n                        return e && DataView.prototype.isPrototypeOf(e)\n                    },\n                    g = ArrayBuffer.isView || function(e) {\n                        return e && v.indexOf(Object.prototype.toString.call(e)) > -1\n                    };\n                o.prototype.append = function(e, r) {\n                    e = t(e), r = n(r);\n                    var o = this.map[e];\n                    this.map[e] = o ? o + \",\" + r : r\n                }, o.prototype.delete = function(e) {\n                    delete this.map[t(e)]\n                }, o.prototype.get = function(e) {\n                    return e = t(e), this.has(e) ? this.map[e] : null\n                }, o.prototype.has = function(e) {\n                    return this.map.hasOwnProperty(t(e))\n                }, o.prototype.set = function(e, r) {\n                    this.map[t(e)] = n(r)\n                }, o.prototype.forEach = function(e, t) {\n                    for (var n in this.map) this.map.hasOwnProperty(n) && e.call(t, this.map[n], n, this)\n                }, o.prototype.keys = function() {\n                    var e = [];\n                    return this.forEach(function(t, n) {\n                        e.push(n)\n                    }), r(e)\n                }, o.prototype.values = function() {\n                    var e = [];\n                    return this.forEach(function(t) {\n                        e.push(t)\n                    }), r(e)\n                }, o.prototype.entries = function() {\n                    var e = [];\n                    return this.forEach(function(t, n) {\n                        e.push([n, t])\n                    }), r(e)\n                }, h.iterable && (o.prototype[Symbol.iterator] = o.prototype.entries);\n                var y = [\"DELETE\", \"GET\", \"HEAD\", \"OPTIONS\", \"POST\", \"PUT\"];\n                c.prototype.clone = function() {\n                    return new c(this, {\n                        body: this._bodyInit\n                    })\n                }, l.call(c.prototype), l.call(d.prototype), d.prototype.clone = function() {\n                    return new d(this._bodyInit, {\n                        status: this.status,\n                        statusText: this.statusText,\n                        headers: new o(this.headers),\n                        url: this.url\n                    })\n                }, d.error = function() {\n                    var e = new d(null, {\n                        status: 0,\n                        statusText: \"\"\n                    });\n                    return e.type = \"error\", e\n                };\n                var b = [301, 302, 303, 307, 308];\n                d.redirect = function(e, t) {\n                    if (-1 === b.indexOf(t)) throw new RangeError(\"Invalid status code\");\n                    return new d(null, {\n                        status: t,\n                        headers: {\n                            location: e\n                        }\n                    })\n                }, e.Headers = o, e.Request = c, e.Response = d, e.fetch = function(e, t) {\n                    return new Promise(function(n, r) {\n                        var o = new c(e, t),\n                            i = new XMLHttpRequest;\n                        i.onload = function() {\n                            var e = {\n                                status: i.status,\n                                statusText: i.statusText,\n                                headers: p(i.getAllResponseHeaders() || \"\")\n                            };\n                            e.url = \"responseURL\" in i ? i.responseURL : e.headers.get(\"X-Request-URL\");\n                            var t = \"response\" in i ? i.response : i.responseText;\n                            n(new d(t, e))\n                        }, i.onerror = function() {\n                            r(new TypeError(\"Network request failed\"))\n                        }, i.ontimeout = function() {\n                            r(new TypeError(\"Network request failed\"))\n                        }, i.open(o.method, o.url, !0), \"include\" === o.credentials && (i.withCredentials = !0), \"responseType\" in i && h.blob && (i.responseType = \"blob\"), o.headers.forEach(function(e, t) {\n                            i.setRequestHeader(t, e)\n                        }), i.send(void 0 === o._bodyInit ? null : o._bodyInit)\n                    })\n                }, e.fetch.polyfill = !0\n            }\n        }(\"undefined\" != typeof self ? self : this)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(907),\n            o = n(908),\n            i = n(389);\n        e.exports = {\n            formats: i,\n            parse: o,\n            stringify: r\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(388),\n            o = n(389),\n            i = {\n                brackets: function(e) {\n                    return e + \"[]\"\n                },\n                indices: function(e, t) {\n                    return e + \"[\" + t + \"]\"\n                },\n                repeat: function(e) {\n                    return e\n                }\n            },\n            a = Date.prototype.toISOString,\n            u = {\n                delimiter: \"&\",\n                encode: !0,\n                encoder: r.encode,\n                encodeValuesOnly: !1,\n                serializeDate: function(e) {\n                    return a.call(e)\n                },\n                skipNulls: !1,\n                strictNullHandling: !1\n            },\n            s = function e(t, n, o, i, a, s, l, c, f, p, d, h) {\n                var v = t;\n                if (\"function\" == typeof l) v = l(n, v);\n                else if (v instanceof Date) v = p(v);\n                else if (null === v) {\n                    if (i) return s && !h ? s(n, u.encoder) : n;\n                    v = \"\"\n                }\n                if (\"string\" == typeof v || \"number\" == typeof v || \"boolean\" == typeof v || r.isBuffer(v)) return s ? [d(h ? n : s(n, u.encoder)) + \"=\" + d(s(v, u.encoder))] : [d(n) + \"=\" + d(String(v))];\n                var m, g = [];\n                if (void 0 === v) return g;\n                if (Array.isArray(l)) m = l;\n                else {\n                    var y = Object.keys(v);\n                    m = c ? y.sort(c) : y\n                }\n                for (var b = 0; b < m.length; ++b) {\n                    var _ = m[b];\n                    a && null === v[_] || (g = Array.isArray(v) ? g.concat(e(v[_], o(n, _), o, i, a, s, l, c, f, p, d, h)) : g.concat(e(v[_], n + (f ? \".\" + _ : \"[\" + _ + \"]\"), o, i, a, s, l, c, f, p, d, h)))\n                }\n                return g\n            };\n        e.exports = function(e, t) {\n            var n = e,\n                a = t ? r.assign({}, t) : {};\n            if (null !== a.encoder && void 0 !== a.encoder && \"function\" != typeof a.encoder) throw new TypeError(\"Encoder has to be a function.\");\n            var l = void 0 === a.delimiter ? u.delimiter : a.delimiter,\n                c = \"boolean\" == typeof a.strictNullHandling ? a.strictNullHandling : u.strictNullHandling,\n                f = \"boolean\" == typeof a.skipNulls ? a.skipNulls : u.skipNulls,\n                p = \"boolean\" == typeof a.encode ? a.encode : u.encode,\n                d = \"function\" == typeof a.encoder ? a.encoder : u.encoder,\n                h = \"function\" == typeof a.sort ? a.sort : null,\n                v = void 0 !== a.allowDots && a.allowDots,\n                m = \"function\" == typeof a.serializeDate ? a.serializeDate : u.serializeDate,\n                g = \"boolean\" == typeof a.encodeValuesOnly ? a.encodeValuesOnly : u.encodeValuesOnly;\n            if (void 0 === a.format) a.format = o.default;\n            else if (!Object.prototype.hasOwnProperty.call(o.formatters, a.format)) throw new TypeError(\"Unknown format option provided.\");\n            var y, b, _ = o.formatters[a.format];\n            \"function\" == typeof a.filter ? n = (b = a.filter)(\"\", n) : Array.isArray(a.filter) && (y = b = a.filter);\n            var w, E = [];\n            if (\"object\" != typeof n || null === n) return \"\";\n            w = a.arrayFormat in i ? a.arrayFormat : \"indices\" in a ? a.indices ? \"indices\" : \"repeat\" : \"indices\";\n            var x = i[w];\n            y || (y = Object.keys(n)), h && y.sort(h);\n            for (var S = 0; S < y.length; ++S) {\n                var C = y[S];\n                f && null === n[C] || (E = E.concat(s(n[C], C, x, c, f, p ? d : null, b, h, v, m, _, g)))\n            }\n            var k = E.join(l),\n                A = !0 === a.addQueryPrefix ? \"?\" : \"\";\n            return k.length > 0 ? A + k : \"\"\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(388),\n            o = Object.prototype.hasOwnProperty,\n            i = {\n                allowDots: !1,\n                allowPrototypes: !1,\n                arrayLimit: 20,\n                decoder: r.decode,\n                delimiter: \"&\",\n                depth: 5,\n                parameterLimit: 1e3,\n                plainObjects: !1,\n                strictNullHandling: !1\n            },\n            a = function(e, t, n) {\n                if (e) {\n                    var r = n.allowDots ? e.replace(/\\.([^.[]+)/g, \"[$1]\") : e,\n                        i = /(\\[[^[\\]]*])/g,\n                        a = /(\\[[^[\\]]*])/.exec(r),\n                        u = a ? r.slice(0, a.index) : r,\n                        s = [];\n                    if (u) {\n                        if (!n.plainObjects && o.call(Object.prototype, u) && !n.allowPrototypes) return;\n                        s.push(u)\n                    }\n                    for (var l = 0; null !== (a = i.exec(r)) && l < n.depth;) {\n                        if (l += 1, !n.plainObjects && o.call(Object.prototype, a[1].slice(1, -1)) && !n.allowPrototypes) return;\n                        s.push(a[1])\n                    }\n                    return a && s.push(\"[\" + r.slice(a.index) + \"]\"),\n                        function(e, t, n) {\n                            for (var r = t, o = e.length - 1; o >= 0; --o) {\n                                var i, a = e[o];\n                                if (\"[]\" === a) i = (i = []).concat(r);\n                                else {\n                                    i = n.plainObjects ? Object.create(null) : {};\n                                    var u = \"[\" === a.charAt(0) && \"]\" === a.charAt(a.length - 1) ? a.slice(1, -1) : a,\n                                        s = parseInt(u, 10);\n                                    !isNaN(s) && a !== u && String(s) === u && s >= 0 && n.parseArrays && s <= n.arrayLimit ? (i = [])[s] = r : i[u] = r\n                                }\n                                r = i\n                            }\n                            return r\n                        }(s, t, n)\n                }\n            };\n        e.exports = function(e, t) {\n            var n = t ? r.assign({}, t) : {};\n            if (null !== n.decoder && void 0 !== n.decoder && \"function\" != typeof n.decoder) throw new TypeError(\"Decoder has to be a function.\");\n            if (n.ignoreQueryPrefix = !0 === n.ignoreQueryPrefix, n.delimiter = \"string\" == typeof n.delimiter || r.isRegExp(n.delimiter) ? n.delimiter : i.delimiter, n.depth = \"number\" == typeof n.depth ? n.depth : i.depth, n.arrayLimit = \"number\" == typeof n.arrayLimit ? n.arrayLimit : i.arrayLimit, n.parseArrays = !1 !== n.parseArrays, n.decoder = \"function\" == typeof n.decoder ? n.decoder : i.decoder, n.allowDots = \"boolean\" == typeof n.allowDots ? n.allowDots : i.allowDots, n.plainObjects = \"boolean\" == typeof n.plainObjects ? n.plainObjects : i.plainObjects, n.allowPrototypes = \"boolean\" == typeof n.allowPrototypes ? n.allowPrototypes : i.allowPrototypes, n.parameterLimit = \"number\" == typeof n.parameterLimit ? n.parameterLimit : i.parameterLimit, n.strictNullHandling = \"boolean\" == typeof n.strictNullHandling ? n.strictNullHandling : i.strictNullHandling, \"\" === e || null === e || void 0 === e) return n.plainObjects ? Object.create(null) : {};\n            for (var u = \"string\" == typeof e ? function(e, t) {\n                for (var n = {}, r = t.ignoreQueryPrefix ? e.replace(/^\\?/, \"\") : e, a = t.parameterLimit === 1 / 0 ? void 0 : t.parameterLimit, u = r.split(t.delimiter, a), s = 0; s < u.length; ++s) {\n                    var l, c, f = u[s],\n                        p = f.indexOf(\"]=\"),\n                        d = -1 === p ? f.indexOf(\"=\") : p + 1; - 1 === d ? (l = t.decoder(f, i.decoder), c = t.strictNullHandling ? null : \"\") : (l = t.decoder(f.slice(0, d), i.decoder), c = t.decoder(f.slice(d + 1), i.decoder)), o.call(n, l) ? n[l] = [].concat(n[l]).concat(c) : n[l] = c\n                }\n                return n\n            }(e, n) : e, s = n.plainObjects ? Object.create(null) : {}, l = Object.keys(u), c = 0; c < l.length; ++c) {\n                var f = l[c],\n                    p = a(f, u[f], n);\n                s = r.merge(s, p, n)\n            }\n            return r.compact(s)\n        }\n    }, function(e, t) {\n        e.exports = FormData\n    }, function(e, t, n) {\n        n(390);\n        var r = n(230),\n            o = n(391),\n            i = n(391);\n        t.applyOperation = i.applyOperation, t.applyPatch = i.applyPatch, t.applyReducer = i.applyReducer, t.getValueByPointer = i.getValueByPointer, t.validate = i.validate, t.validator = i.validator;\n        var a = n(230);\n        t.JsonPatchError = a.PatchError, t.deepClone = a._deepClone, t.escapePathComponent = a.escapePathComponent, t.unescapePathComponent = a.unescapePathComponent;\n        var u = [],\n            s = function() {\n                return function(e) {\n                    this.observers = [], this.obj = e\n                }\n            }(),\n            l = function() {\n                return function(e, t) {\n                    this.callback = e, this.observer = t\n                }\n            }();\n\n        function c(e) {\n            for (var t, n = 0, r = u.length; n < r; n++)\n                if (u[n].obj === e.object) {\n                    t = u[n];\n                    break\n                }\n            f(t.value, e.object, e.patches, \"\"), e.patches.length && o.applyPatch(t.value, e.patches);\n            var i = e.patches;\n            return i.length > 0 && (e.patches = [], e.callback && e.callback(i)), i\n        }\n\n        function f(e, t, n, o) {\n            if (t !== e) {\n                \"function\" == typeof t.toJSON && (t = t.toJSON());\n                for (var i = r._objectKeys(t), a = r._objectKeys(e), u = !1, s = a.length - 1; s >= 0; s--) {\n                    var l = e[p = a[s]];\n                    if (!r.hasOwnProperty(t, p) || void 0 === t[p] && void 0 !== l && !1 === Array.isArray(t)) n.push({\n                        op: \"remove\",\n                        path: o + \"/\" + r.escapePathComponent(p)\n                    }), u = !0;\n                    else {\n                        var c = t[p];\n                        \"object\" == typeof l && null != l && \"object\" == typeof c && null != c ? f(l, c, n, o + \"/\" + r.escapePathComponent(p)) : l !== c && (!0, n.push({\n                            op: \"replace\",\n                            path: o + \"/\" + r.escapePathComponent(p),\n                            value: r._deepClone(c)\n                        }))\n                    }\n                }\n                if (u || i.length != a.length)\n                    for (s = 0; s < i.length; s++) {\n                        var p = i[s];\n                        r.hasOwnProperty(e, p) || void 0 === t[p] || n.push({\n                            op: \"add\",\n                            path: o + \"/\" + r.escapePathComponent(p),\n                            value: r._deepClone(t[p])\n                        })\n                    }\n            }\n        }\n        t.unobserve = function(e, t) {\n            t.unobserve()\n        }, t.observe = function(e, t) {\n            var n, o = function(e) {\n                for (var t = 0, n = u.length; t < n; t++)\n                    if (u[t].obj === e) return u[t]\n            }(e);\n            if (o ? n = function(e, t) {\n                for (var n = 0, r = e.observers.length; n < r; n++)\n                    if (e.observers[n].callback === t) return e.observers[n].observer\n            }(o, t) : (o = new s(e), u.push(o)), n) return n;\n            if (n = {}, o.value = r._deepClone(e), t) {\n                n.callback = t, n.next = null;\n                var i = function() {\n                        c(n)\n                    },\n                    a = function() {\n                        clearTimeout(n.next), n.next = setTimeout(i)\n                    };\n                \"undefined\" != typeof window && (window.addEventListener ? (window.addEventListener(\"mouseup\", a), window.addEventListener(\"keyup\", a), window.addEventListener(\"mousedown\", a), window.addEventListener(\"keydown\", a), window.addEventListener(\"change\", a)) : (document.documentElement.attachEvent(\"onmouseup\", a), document.documentElement.attachEvent(\"onkeyup\", a), document.documentElement.attachEvent(\"onmousedown\", a), document.documentElement.attachEvent(\"onkeydown\", a), document.documentElement.attachEvent(\"onchange\", a)))\n            }\n            return n.patches = [], n.object = e, n.unobserve = function() {\n                c(n), clearTimeout(n.next),\n                    function(e, t) {\n                        for (var n = 0, r = e.observers.length; n < r; n++)\n                            if (e.observers[n].observer === t) return void e.observers.splice(n, 1)\n                    }(o, n), \"undefined\" != typeof window && (window.removeEventListener ? (window.removeEventListener(\"mouseup\", a), window.removeEventListener(\"keyup\", a), window.removeEventListener(\"mousedown\", a), window.removeEventListener(\"keydown\", a)) : (document.documentElement.detachEvent(\"onmouseup\", a), document.documentElement.detachEvent(\"onkeyup\", a), document.documentElement.detachEvent(\"onmousedown\", a), document.documentElement.detachEvent(\"onkeydown\", a)))\n            }, o.observers.push(new l(t, n)), n\n        }, t.generate = c, t.compare = function(e, t) {\n            var n = [];\n            return f(e, t, n, \"\"), n\n        }\n    }, function(e, t) {\n        function n(e) {\n            var t = [];\n            for (var n in e) t.push(n);\n            return t\n        }(e.exports = \"function\" == typeof Object.keys ? Object.keys : n).shim = n\n    }, function(e, t) {\n        var n = \"[object Arguments]\" == function() {\n            return Object.prototype.toString.call(arguments)\n        }();\n\n        function r(e) {\n            return \"[object Arguments]\" == Object.prototype.toString.call(e)\n        }\n\n        function o(e) {\n            return e && \"object\" == typeof e && \"number\" == typeof e.length && Object.prototype.hasOwnProperty.call(e, \"callee\") && !Object.prototype.propertyIsEnumerable.call(e, \"callee\") || !1\n        }(t = e.exports = n ? r : o).supported = r, t.unsupported = o\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function(e) {\n            return typeof e\n        } : function(e) {\n            return e && \"function\" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e\n        };\n\n        function o(e) {\n            return null === e ? \"null\" : void 0 === e ? \"undefined\" : \"object\" === (void 0 === e ? \"undefined\" : r(e)) ? Array.isArray(e) ? \"array\" : \"object\" : void 0 === e ? \"undefined\" : r(e)\n        }\n\n        function i(e) {\n            return \"object\" === o(e) ? u(e) : \"array\" === o(e) ? a(e) : e\n        }\n\n        function a(e) {\n            return e.map(i)\n        }\n\n        function u(e) {\n            var t = {};\n            for (var n in e) e.hasOwnProperty(n) && (t[n] = i(e[n]));\n            return t\n        }\n\n        function s(e) {\n            for (var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : [], n = {\n                arrayBehaviour: (arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}).arrayBehaviour || \"replace\"\n            }, r = t.map(function(e) {\n                return e || {}\n            }), i = e || {}, l = 0; l < r.length; l++)\n                for (var c = r[l], f = Object.keys(c), p = 0; p < f.length; p++) {\n                    var d = f[p],\n                        h = c[d],\n                        v = o(h),\n                        m = o(i[d]);\n                    if (\"object\" === v)\n                        if (\"undefined\" !== m) {\n                            var g = \"object\" === m ? i[d] : {};\n                            i[d] = s({}, [g, u(h)], n)\n                        } else i[d] = u(h);\n                    else if (\"array\" === v)\n                        if (\"array\" === m) {\n                            var y = a(h);\n                            i[d] = \"merge\" === n.arrayBehaviour ? i[d].concat(y) : y\n                        } else i[d] = a(h);\n                    else i[d] = h\n                }\n            return i\n        }\n        e.exports = function(e) {\n            for (var t = arguments.length, n = Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];\n            return s(e, n)\n        }, e.exports.noMutate = function() {\n            for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n            return s({}, t)\n        }, e.exports.withOptions = function(e, t, n) {\n            return s(e, t, n)\n        }\n    }, function(e, t, n) {\n        e.exports = {\n            default: n(915),\n            __esModule: !0\n        }\n    }, function(e, t, n) {\n        n(177), n(92), n(916), n(921), n(923), e.exports = n(15).WeakMap\n    }, function(e, t, n) {\n        \"use strict\";\n        var r, o = n(231)(0),\n            i = n(158),\n            a = n(124),\n            u = n(263),\n            s = n(919),\n            l = n(28),\n            c = n(51),\n            f = n(392),\n            p = a.getWeak,\n            d = Object.isExtensible,\n            h = s.ufstore,\n            v = {},\n            m = function(e) {\n                return function() {\n                    return e(this, arguments.length > 0 ? arguments[0] : void 0)\n                }\n            },\n            g = {\n                get: function(e) {\n                    if (l(e)) {\n                        var t = p(e);\n                        return !0 === t ? h(f(this, \"WeakMap\")).get(e) : t ? t[this._i] : void 0\n                    }\n                },\n                set: function(e, t) {\n                    return s.def(f(this, \"WeakMap\"), e, t)\n                }\n            },\n            y = e.exports = n(920)(\"WeakMap\", m, g, s, !0, !0);\n        c(function() {\n            return 7 != (new y).set((Object.freeze || Object)(v), 7).get(v)\n        }) && (u((r = s.getConstructor(m, \"WeakMap\")).prototype, g), a.NEED = !0, o([\"delete\", \"has\", \"get\", \"set\"], function(e) {\n            var t = y.prototype,\n                n = t[e];\n            i(t, e, function(t, o) {\n                if (l(t) && !d(t)) {\n                    this._f || (this._f = new r);\n                    var i = this._f[e](t, o);\n                    return \"set\" == e ? this : i\n                }\n                return n.call(this, t, o)\n            })\n        }))\n    }, function(e, t, n) {\n        var r = n(918);\n        e.exports = function(e, t) {\n            return new(r(e))(t)\n        }\n    }, function(e, t, n) {\n        var r = n(28),\n            o = n(258),\n            i = n(19)(\"species\");\n        e.exports = function(e) {\n            var t;\n            return o(e) && (\"function\" != typeof(t = e.constructor) || t !== Array && !o(t.prototype) || (t = void 0), r(t) && null === (t = t[i]) && (t = void 0)), void 0 === t ? Array : t\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(206),\n            o = n(124).getWeak,\n            i = n(36),\n            a = n(28),\n            u = n(204),\n            s = n(144),\n            l = n(231),\n            c = n(52),\n            f = n(392),\n            p = l(5),\n            d = l(6),\n            h = 0,\n            v = function(e) {\n                return e._l || (e._l = new m)\n            },\n            m = function() {\n                this.a = []\n            },\n            g = function(e, t) {\n                return p(e.a, function(e) {\n                    return e[0] === t\n                })\n            };\n        m.prototype = {\n            get: function(e) {\n                var t = g(this, e);\n                if (t) return t[1]\n            },\n            has: function(e) {\n                return !!g(this, e)\n            },\n            set: function(e, t) {\n                var n = g(this, e);\n                n ? n[1] = t : this.a.push([e, t])\n            },\n            delete: function(e) {\n                var t = d(this.a, function(t) {\n                    return t[0] === e\n                });\n                return ~t && this.a.splice(t, 1), !!~t\n            }\n        }, e.exports = {\n            getConstructor: function(e, t, n, i) {\n                var l = e(function(e, r) {\n                    u(e, l, t, \"_i\"), e._t = t, e._i = h++, e._l = void 0, void 0 != r && s(r, n, e[i], e)\n                });\n                return r(l.prototype, {\n                    delete: function(e) {\n                        if (!a(e)) return !1;\n                        var n = o(e);\n                        return !0 === n ? v(f(this, t)).delete(e) : n && c(n, this._i) && delete n[this._i]\n                    },\n                    has: function(e) {\n                        if (!a(e)) return !1;\n                        var n = o(e);\n                        return !0 === n ? v(f(this, t)).has(e) : n && c(n, this._i)\n                    }\n                }), l\n            },\n            def: function(e, t, n) {\n                var r = o(i(t), !0);\n                return !0 === r ? v(e).set(t, n) : r[e._i] = n, e\n            },\n            ufstore: v\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(21),\n            o = n(20),\n            i = n(124),\n            a = n(51),\n            u = n(50),\n            s = n(206),\n            l = n(144),\n            c = n(204),\n            f = n(28),\n            p = n(97),\n            d = n(40).f,\n            h = n(231)(0),\n            v = n(44);\n        e.exports = function(e, t, n, m, g, y) {\n            var b = r[e],\n                _ = b,\n                w = g ? \"set\" : \"add\",\n                E = _ && _.prototype,\n                x = {};\n            return v && \"function\" == typeof _ && (y || E.forEach && !a(function() {\n                (new _).entries().next()\n            })) ? (_ = t(function(t, n) {\n                c(t, _, e, \"_c\"), t._c = new b, void 0 != n && l(n, g, t[w], t)\n            }), h(\"add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON\".split(\",\"), function(e) {\n                var t = \"add\" == e || \"set\" == e;\n                e in E && (!y || \"clear\" != e) && u(_.prototype, e, function(n, r) {\n                    if (c(this, _, e), !t && y && !f(n)) return \"get\" == e && void 0;\n                    var o = this._c[e](0 === n ? 0 : n, r);\n                    return t ? this : o\n                })\n            }), y || d(_.prototype, \"size\", {\n                get: function() {\n                    return this._c.size\n                }\n            })) : (_ = m.getConstructor(t, e, g, w), s(_.prototype, n), i.NEED = !0), p(_, e), x[e] = _, o(o.G + o.W + o.F, x), y || m.setStrong(_, e, g), _\n        }\n    }, function(e, t, n) {\n        n(922)(\"WeakMap\")\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(20);\n        e.exports = function(e) {\n            r(r.S, e, {\n                of: function() {\n                    for (var e = arguments.length, t = new Array(e); e--;) t[e] = arguments[e];\n                    return new this(t)\n                }\n            })\n        }\n    }, function(e, t, n) {\n        n(924)(\"WeakMap\")\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(20),\n            o = n(94),\n            i = n(49),\n            a = n(144);\n        e.exports = function(e) {\n            r(r.S, e, {\n                from: function(e) {\n                    var t, n, r, u, s = arguments[1];\n                    return o(this), (t = void 0 !== s) && o(s), void 0 == e ? new this : (n = [], t ? (r = 0, u = i(s, arguments[2], 2), a(e, !1, function(e) {\n                        n.push(u(e, r++))\n                    })) : a(e, !1, n.push, n), new this(n))\n                }\n            })\n        }\n    }, function(e, t) {\n        var n = {};\n        ! function(e) {\n            \"use strict\";\n\n            function t(e) {\n                if (\"string\" != typeof e && (e = String(e)), /[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(e)) throw new TypeError(\"Invalid character in header field name\");\n                return e.toLowerCase()\n            }\n\n            function n(e) {\n                return \"string\" != typeof e && (e = String(e)), e\n            }\n\n            function r(e) {\n                var t = {\n                    next: function() {\n                        var t = e.shift();\n                        return {\n                            done: void 0 === t,\n                            value: t\n                        }\n                    }\n                };\n                return h.iterable && (t[Symbol.iterator] = function() {\n                    return t\n                }), t\n            }\n\n            function o(e) {\n                this.map = {}, e instanceof o ? e.forEach(function(e, t) {\n                    this.append(t, e)\n                }, this) : Array.isArray(e) ? e.forEach(function(e) {\n                    this.append(e[0], e[1])\n                }, this) : e && Object.getOwnPropertyNames(e).forEach(function(t) {\n                    this.append(t, e[t])\n                }, this)\n            }\n\n            function i(e) {\n                if (e.bodyUsed) return Promise.reject(new TypeError(\"Already read\"));\n                e.bodyUsed = !0\n            }\n\n            function a(e) {\n                return new Promise(function(t, n) {\n                    e.onload = function() {\n                        t(e.result)\n                    }, e.onerror = function() {\n                        n(e.error)\n                    }\n                })\n            }\n\n            function u(e) {\n                var t = new FileReader,\n                    n = a(t);\n                return t.readAsArrayBuffer(e), n\n            }\n\n            function s(e) {\n                if (e.slice) return e.slice(0);\n                var t = new Uint8Array(e.byteLength);\n                return t.set(new Uint8Array(e)), t.buffer\n            }\n\n            function l() {\n                return this.bodyUsed = !1, this._initBody = function(e) {\n                    if (this._bodyInit = e, e)\n                        if (\"string\" == typeof e) this._bodyText = e;\n                        else if (h.blob && Blob.prototype.isPrototypeOf(e)) this._bodyBlob = e;\n                        else if (h.formData && FormData.prototype.isPrototypeOf(e)) this._bodyFormData = e;\n                        else if (h.searchParams && URLSearchParams.prototype.isPrototypeOf(e)) this._bodyText = e.toString();\n                        else if (h.arrayBuffer && h.blob && m(e)) this._bodyArrayBuffer = s(e.buffer), this._bodyInit = new Blob([this._bodyArrayBuffer]);\n                        else {\n                            if (!h.arrayBuffer || !ArrayBuffer.prototype.isPrototypeOf(e) && !g(e)) throw new Error(\"unsupported BodyInit type\");\n                            this._bodyArrayBuffer = s(e)\n                        } else this._bodyText = \"\";\n                    this.headers.get(\"content-type\") || (\"string\" == typeof e ? this.headers.set(\"content-type\", \"text/plain;charset=UTF-8\") : this._bodyBlob && this._bodyBlob.type ? this.headers.set(\"content-type\", this._bodyBlob.type) : h.searchParams && URLSearchParams.prototype.isPrototypeOf(e) && this.headers.set(\"content-type\", \"application/x-www-form-urlencoded;charset=UTF-8\"))\n                }, h.blob && (this.blob = function() {\n                    var e = i(this);\n                    if (e) return e;\n                    if (this._bodyBlob) return Promise.resolve(this._bodyBlob);\n                    if (this._bodyArrayBuffer) return Promise.resolve(new Blob([this._bodyArrayBuffer]));\n                    if (this._bodyFormData) throw new Error(\"could not read FormData body as blob\");\n                    return Promise.resolve(new Blob([this._bodyText]))\n                }, this.arrayBuffer = function() {\n                    return this._bodyArrayBuffer ? i(this) || Promise.resolve(this._bodyArrayBuffer) : this.blob().then(u)\n                }), this.text = function() {\n                    var e = i(this);\n                    if (e) return e;\n                    if (this._bodyBlob) return function(e) {\n                        var t = new FileReader,\n                            n = a(t);\n                        return t.readAsText(e), n\n                    }(this._bodyBlob);\n                    if (this._bodyArrayBuffer) return Promise.resolve(function(e) {\n                        for (var t = new Uint8Array(e), n = new Array(t.length), r = 0; r < t.length; r++) n[r] = String.fromCharCode(t[r]);\n                        return n.join(\"\")\n                    }(this._bodyArrayBuffer));\n                    if (this._bodyFormData) throw new Error(\"could not read FormData body as text\");\n                    return Promise.resolve(this._bodyText)\n                }, h.formData && (this.formData = function() {\n                    return this.text().then(f)\n                }), this.json = function() {\n                    return this.text().then(JSON.parse)\n                }, this\n            }\n\n            function c(e, t) {\n                var n = (t = t || {}).body;\n                if (e instanceof c) {\n                    if (e.bodyUsed) throw new TypeError(\"Already read\");\n                    this.url = e.url, this.credentials = e.credentials, t.headers || (this.headers = new o(e.headers)), this.method = e.method, this.mode = e.mode, n || null == e._bodyInit || (n = e._bodyInit, e.bodyUsed = !0)\n                } else this.url = String(e);\n                if (this.credentials = t.credentials || this.credentials || \"omit\", !t.headers && this.headers || (this.headers = new o(t.headers)), this.method = function(e) {\n                    var t = e.toUpperCase();\n                    return y.indexOf(t) > -1 ? t : e\n                }(t.method || this.method || \"GET\"), this.mode = t.mode || this.mode || null, this.referrer = null, (\"GET\" === this.method || \"HEAD\" === this.method) && n) throw new TypeError(\"Body not allowed for GET or HEAD requests\");\n                this._initBody(n)\n            }\n\n            function f(e) {\n                var t = new FormData;\n                return e.trim().split(\"&\").forEach(function(e) {\n                    if (e) {\n                        var n = e.split(\"=\"),\n                            r = n.shift().replace(/\\+/g, \" \"),\n                            o = n.join(\"=\").replace(/\\+/g, \" \");\n                        t.append(decodeURIComponent(r), decodeURIComponent(o))\n                    }\n                }), t\n            }\n\n            function p(e) {\n                var t = new o;\n                return e.split(/\\r?\\n/).forEach(function(e) {\n                    var n = e.split(\":\"),\n                        r = n.shift().trim();\n                    if (r) {\n                        var o = n.join(\":\").trim();\n                        t.append(r, o)\n                    }\n                }), t\n            }\n\n            function d(e, t) {\n                t || (t = {}), this.type = \"default\", this.status = \"status\" in t ? t.status : 200, this.ok = this.status >= 200 && this.status < 300, this.statusText = \"statusText\" in t ? t.statusText : \"OK\", this.headers = new o(t.headers), this.url = t.url || \"\", this._initBody(e)\n            }\n            if (!e.fetch) {\n                var h = {\n                    searchParams: \"URLSearchParams\" in e,\n                    iterable: \"Symbol\" in e && \"iterator\" in Symbol,\n                    blob: \"FileReader\" in e && \"Blob\" in e && function() {\n                        try {\n                            return new Blob, !0\n                        } catch (e) {\n                            return !1\n                        }\n                    }(),\n                    formData: \"FormData\" in e,\n                    arrayBuffer: \"ArrayBuffer\" in e\n                };\n                if (h.arrayBuffer) var v = [\"[object Int8Array]\", \"[object Uint8Array]\", \"[object Uint8ClampedArray]\", \"[object Int16Array]\", \"[object Uint16Array]\", \"[object Int32Array]\", \"[object Uint32Array]\", \"[object Float32Array]\", \"[object Float64Array]\"],\n                    m = function(e) {\n                        return e && DataView.prototype.isPrototypeOf(e)\n                    },\n                    g = ArrayBuffer.isView || function(e) {\n                        return e && v.indexOf(Object.prototype.toString.call(e)) > -1\n                    };\n                o.prototype.append = function(e, r) {\n                    e = t(e), r = n(r);\n                    var o = this.map[e];\n                    this.map[e] = o ? o + \",\" + r : r\n                }, o.prototype.delete = function(e) {\n                    delete this.map[t(e)]\n                }, o.prototype.get = function(e) {\n                    return e = t(e), this.has(e) ? this.map[e] : null\n                }, o.prototype.has = function(e) {\n                    return this.map.hasOwnProperty(t(e))\n                }, o.prototype.set = function(e, r) {\n                    this.map[t(e)] = n(r)\n                }, o.prototype.forEach = function(e, t) {\n                    for (var n in this.map) this.map.hasOwnProperty(n) && e.call(t, this.map[n], n, this)\n                }, o.prototype.keys = function() {\n                    var e = [];\n                    return this.forEach(function(t, n) {\n                        e.push(n)\n                    }), r(e)\n                }, o.prototype.values = function() {\n                    var e = [];\n                    return this.forEach(function(t) {\n                        e.push(t)\n                    }), r(e)\n                }, o.prototype.entries = function() {\n                    var e = [];\n                    return this.forEach(function(t, n) {\n                        e.push([n, t])\n                    }), r(e)\n                }, h.iterable && (o.prototype[Symbol.iterator] = o.prototype.entries);\n                var y = [\"DELETE\", \"GET\", \"HEAD\", \"OPTIONS\", \"POST\", \"PUT\"];\n                c.prototype.clone = function() {\n                    return new c(this, {\n                        body: this._bodyInit\n                    })\n                }, l.call(c.prototype), l.call(d.prototype), d.prototype.clone = function() {\n                    return new d(this._bodyInit, {\n                        status: this.status,\n                        statusText: this.statusText,\n                        headers: new o(this.headers),\n                        url: this.url\n                    })\n                }, d.error = function() {\n                    var e = new d(null, {\n                        status: 0,\n                        statusText: \"\"\n                    });\n                    return e.type = \"error\", e\n                };\n                var b = [301, 302, 303, 307, 308];\n                d.redirect = function(e, t) {\n                    if (-1 === b.indexOf(t)) throw new RangeError(\"Invalid status code\");\n                    return new d(null, {\n                        status: t,\n                        headers: {\n                            location: e\n                        }\n                    })\n                }, e.Headers = o, e.Request = c, e.Response = d, e.fetch = function(e, t) {\n                    return new Promise(function(n, r) {\n                        var o = new c(e, t),\n                            i = new XMLHttpRequest;\n                        i.onload = function() {\n                            var e = {\n                                status: i.status,\n                                statusText: i.statusText,\n                                headers: p(i.getAllResponseHeaders() || \"\")\n                            };\n                            e.url = \"responseURL\" in i ? i.responseURL : e.headers.get(\"X-Request-URL\");\n                            var t = \"response\" in i ? i.response : i.responseText;\n                            n(new d(t, e))\n                        }, i.onerror = function() {\n                            r(new TypeError(\"Network request failed\"))\n                        }, i.ontimeout = function() {\n                            r(new TypeError(\"Network request failed\"))\n                        }, i.open(o.method, o.url, !0), \"include\" === o.credentials && (i.withCredentials = !0), \"responseType\" in i && h.blob && (i.responseType = \"blob\"), o.headers.forEach(function(e, t) {\n                            i.setRequestHeader(t, e)\n                        }), i.send(void 0 === o._bodyInit ? null : o._bodyInit)\n                    })\n                }, e.fetch.polyfill = !0\n            }\n        }(void 0 !== n ? n : this), e.exports = n\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = t,\n            o = n(54).Buffer;\n\n        function i(e, t) {\n            try {\n                return decodeURIComponent(e)\n            } catch (n) {\n                return r.unescapeBuffer(e, t).toString()\n            }\n        }\n        r.unescapeBuffer = function(e, t) {\n            for (var n, r, i, a = new o(e.length), u = 0, s = 0, l = 0; s <= e.length; s++) {\n                var c = s < e.length ? e.charCodeAt(s) : NaN;\n                switch (u) {\n                    case 0:\n                        switch (c) {\n                            case 37:\n                                n = 0, r = 0, u = 1;\n                                break;\n                            case 43:\n                                t && (c = 32);\n                            default:\n                                a[l++] = c\n                        }\n                        break;\n                    case 1:\n                        if (i = c, c >= 48 && c <= 57) n = c - 48;\n                        else if (c >= 65 && c <= 70) n = c - 65 + 10;\n                        else {\n                            if (!(c >= 97 && c <= 102)) {\n                                a[l++] = 37, a[l++] = c, u = 0;\n                                break\n                            }\n                            n = c - 97 + 10\n                        }\n                        u = 2;\n                        break;\n                    case 2:\n                        if (u = 0, c >= 48 && c <= 57) r = c - 48;\n                        else if (c >= 65 && c <= 70) r = c - 65 + 10;\n                        else {\n                            if (!(c >= 97 && c <= 102)) {\n                                a[l++] = 37, a[l++] = i, a[l++] = c;\n                                break\n                            }\n                            r = c - 97 + 10\n                        }\n                        a[l++] = 16 * n + r\n                }\n            }\n            return a.slice(0, l - 1)\n        }, r.unescape = i;\n        for (var a = new Array(256), u = 0; u < 256; ++u) a[u] = \"%\" + ((u < 16 ? \"0\" : \"\") + u.toString(16)).toUpperCase();\n        r.escape = function(e) {\n            \"string\" != typeof e && (e += \"\");\n            for (var t = \"\", n = 0, r = 0; r < e.length; ++r) {\n                var o = e.charCodeAt(r);\n                if (!(33 === o || 45 === o || 46 === o || 95 === o || 126 === o || o >= 39 && o <= 42 || o >= 48 && o <= 57 || o >= 65 && o <= 90 || o >= 97 && o <= 122))\n                    if (r - n > 0 && (t += e.slice(n, r)), o < 128) n = r + 1, t += a[o];\n                    else if (o < 2048) n = r + 1, t += a[192 | o >> 6] + a[128 | 63 & o];\n                    else if (o < 55296 || o >= 57344) n = r + 1, t += a[224 | o >> 12] + a[128 | o >> 6 & 63] + a[128 | 63 & o];\n                    else {\n                        var i;\n                        if (!(++r < e.length)) throw new URIError(\"URI malformed\");\n                        i = 1023 & e.charCodeAt(r), n = r + 1, t += a[240 | (o = 65536 + ((1023 & o) << 10 | i)) >> 18] + a[128 | o >> 12 & 63] + a[128 | o >> 6 & 63] + a[128 | 63 & o]\n                    }\n            }\n            return 0 === n ? e : n < e.length ? t + e.slice(n) : t\n        };\n        var s = function(e) {\n            return \"string\" == typeof e ? e : \"number\" == typeof e && isFinite(e) ? \"\" + e : \"boolean\" == typeof e ? e ? \"true\" : \"false\" : \"\"\n        };\n\n        function l(e, t) {\n            try {\n                return t(e)\n            } catch (t) {\n                return r.unescape(e, !0)\n            }\n        }\n        r.stringify = r.encode = function(e, t, n, o) {\n            t = t || \"&\", n = n || \"=\";\n            var i = r.escape;\n            if (o && \"function\" == typeof o.encodeURIComponent && (i = o.encodeURIComponent), null !== e && \"object\" == typeof e) {\n                for (var a = Object.keys(e), u = a.length, l = u - 1, c = \"\", f = 0; f < u; ++f) {\n                    var p = a[f],\n                        d = e[p],\n                        h = i(s(p)) + n;\n                    if (Array.isArray(d)) {\n                        for (var v = d.length, m = v - 1, g = 0; g < v; ++g) c += h + i(s(d[g])), g < m && (c += t);\n                        v && f < l && (c += t)\n                    } else c += h + i(s(d)), f < l && (c += t)\n                }\n                return c\n            }\n            return \"\"\n        }, r.parse = r.decode = function(e, t, n, o) {\n            t = t || \"&\", n = n || \"=\";\n            var a = {};\n            if (\"string\" != typeof e || 0 === e.length) return a;\n            \"string\" != typeof t && (t += \"\");\n            var u = n.length,\n                s = t.length,\n                c = 1e3;\n            o && \"number\" == typeof o.maxKeys && (c = o.maxKeys);\n            var f = 1 / 0;\n            c > 0 && (f = c);\n            var p = r.unescape;\n            o && \"function\" == typeof o.decodeURIComponent && (p = o.decodeURIComponent);\n            for (var d = p !== i, h = [], v = 0, m = 0, g = 0, y = \"\", b = \"\", _ = d, w = d, E = 0, x = 0; x < e.length; ++x) {\n                var S = e.charCodeAt(x);\n                if (S !== t.charCodeAt(m)) {\n                    if (m = 0, w || (37 === S ? E = 1 : E > 0 && (S >= 48 && S <= 57 || S >= 65 && S <= 70 || S >= 97 && S <= 102) ? 3 == ++E && (w = !0) : E = 0), g < u) {\n                        if (S === n.charCodeAt(g)) {\n                            if (++g === u) v < (k = x - g + 1) && (y += e.slice(v, k)), E = 0, v = x + 1;\n                            continue\n                        }\n                        g = 0, _ || (37 === S ? E = 1 : E > 0 && (S >= 48 && S <= 57 || S >= 65 && S <= 70 || S >= 97 && S <= 102) ? 3 == ++E && (_ = !0) : E = 0)\n                    }\n                    43 === S && (g < u ? (x - v > 0 && (y += e.slice(v, x)), y += \"%20\", _ = !0) : (x - v > 0 && (b += e.slice(v, x)), b += \"%20\", w = !0), v = x + 1)\n                } else if (++m === s) {\n                    var C, k = x - m + 1;\n                    if (g < u ? v < k && (y += e.slice(v, k)) : v < k && (b += e.slice(v, k)), _ && (y = l(y, p)), w && (b = l(b, p)), -1 === h.indexOf(y)) a[y] = b, h[h.length] = y;\n                    else(C = a[y]) instanceof Array ? C[C.length] = b : a[y] = [C, b];\n                    if (0 == --f) break;\n                    _ = w = d, E = 0, y = b = \"\", v = x + 1, m = g = 0\n                }\n            }\n            f > 0 && (v < e.length || g > 0) && (v < e.length && (g < u ? y += e.slice(v) : m < s && (b += e.slice(v))), _ && (y = l(y, p)), w && (b = l(b, p)), -1 === h.indexOf(y) ? (a[y] = b, h[h.length] = y) : (C = a[y]) instanceof Array ? C[C.length] = b : a[y] = [C, b]);\n            return a\n        }\n    }, function(e, t, n) {\n        var r = n(928),\n            o = n(381)(function(e, t) {\n                return null == e ? {} : r(e, t)\n            });\n        e.exports = o\n    }, function(e, t, n) {\n        var r = n(929),\n            o = n(300);\n        e.exports = function(e, t) {\n            return r(e, t, function(t, n) {\n                return o(e, n)\n            })\n        }\n    }, function(e, t, n) {\n        var r = n(139),\n            o = n(343),\n            i = n(79);\n        e.exports = function(e, t, n) {\n            for (var a = -1, u = t.length, s = {}; ++a < u;) {\n                var l = t[a],\n                    c = r(e, l);\n                n(c, l) && o(s, i(l, e), c)\n            }\n            return s\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        /*!\n         * cookie\n         * Copyright(c) 2012-2014 Roman Shtylman\n         * Copyright(c) 2015 Douglas Christopher Wilson\n         * MIT Licensed\n         */\n        t.parse = function(e, t) {\n            if (\"string\" != typeof e) throw new TypeError(\"argument str must be a string\");\n            for (var n = {}, o = t || {}, a = e.split(i), s = o.decode || r, l = 0; l < a.length; l++) {\n                var c = a[l],\n                    f = c.indexOf(\"=\");\n                if (!(f < 0)) {\n                    var p = c.substr(0, f).trim(),\n                        d = c.substr(++f, c.length).trim();\n                    '\"' == d[0] && (d = d.slice(1, -1)), void 0 == n[p] && (n[p] = u(d, s))\n                }\n            }\n            return n\n        }, t.serialize = function(e, t, n) {\n            var r = n || {},\n                i = r.encode || o;\n            if (\"function\" != typeof i) throw new TypeError(\"option encode is invalid\");\n            if (!a.test(e)) throw new TypeError(\"argument name is invalid\");\n            var u = i(t);\n            if (u && !a.test(u)) throw new TypeError(\"argument val is invalid\");\n            var s = e + \"=\" + u;\n            if (null != r.maxAge) {\n                var l = r.maxAge - 0;\n                if (isNaN(l)) throw new Error(\"maxAge should be a Number\");\n                s += \"; Max-Age=\" + Math.floor(l)\n            }\n            if (r.domain) {\n                if (!a.test(r.domain)) throw new TypeError(\"option domain is invalid\");\n                s += \"; Domain=\" + r.domain\n            }\n            if (r.path) {\n                if (!a.test(r.path)) throw new TypeError(\"option path is invalid\");\n                s += \"; Path=\" + r.path\n            }\n            if (r.expires) {\n                if (\"function\" != typeof r.expires.toUTCString) throw new TypeError(\"option expires is invalid\");\n                s += \"; Expires=\" + r.expires.toUTCString()\n            }\n            r.httpOnly && (s += \"; HttpOnly\");\n            r.secure && (s += \"; Secure\");\n            if (r.sameSite) {\n                var c = \"string\" == typeof r.sameSite ? r.sameSite.toLowerCase() : r.sameSite;\n                switch (c) {\n                    case !0:\n                        s += \"; SameSite=Strict\";\n                        break;\n                    case \"lax\":\n                        s += \"; SameSite=Lax\";\n                        break;\n                    case \"strict\":\n                        s += \"; SameSite=Strict\";\n                        break;\n                    default:\n                        throw new TypeError(\"option sameSite is invalid\")\n                }\n            }\n            return s\n        };\n        var r = decodeURIComponent,\n            o = encodeURIComponent,\n            i = /; */,\n            a = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n        function u(e, t) {\n            try {\n                return t(e)\n            } catch (t) {\n                return e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            return encodeURIComponent(e).replace(/[!'()*]/g, function(e) {\n                return \"%\" + e.charCodeAt(0).toString(16).toUpperCase()\n            })\n        }\n    }, function(e, t) {\n        e.exports = function(e) {\n            for (var t = [], n = 0; n < e.length; n++) {\n                var r = e.charCodeAt(n);\n                if (r >= 55296 && r <= 56319 && n + 1 < e.length) {\n                    var o = e.charCodeAt(n + 1);\n                    if (o >= 56320 && o <= 57343) {\n                        var i = 1024 * (r - 55296) + o - 56320 + 65536;\n                        t.push(240 + Math.floor(i / 64 / 64 / 64), 128 + Math.floor(i / 64 / 64) % 64, 128 + Math.floor(i / 64) % 64, 128 + i % 64), n += 1;\n                        continue\n                    }\n                }\n                r >= 2048 ? t.push(224 + Math.floor(r / 64 / 64), 128 + Math.floor(r / 64) % 64, 128 + r % 64) : r >= 128 ? t.push(192 + Math.floor(r / 64), 128 + r % 64) : t.push(r)\n            }\n            return t\n        }\n    }, function(e, t) {\n        ! function() {\n            var e;\n\n            function n(e, t) {\n                function n(e, t, n) {\n                    if (!r(e)) return n;\n                    var o = 0,\n                        i = 0;\n                    do {\n                        var a = t.exec(e);\n                        if (null === a) break;\n                        if (!(i < n)) break;\n                        o += a[0].length, i++\n                    } while (null !== a);\n                    return o >= e.length ? -1 : o\n                }\n\n                function r(e) {\n                    return a.test(e)\n                }\n\n                function o(e, n) {\n                    void 0 == e && (e = [\"[^]\"]), void 0 == n && (n = \"g\");\n                    var r = [];\n                    return t.forEach(function(e) {\n                        r.push(e.source)\n                    }), r.push(i.source), r = r.concat(e), new RegExp(r.join(\"|\"), n)\n                }\n                e.findCharIndex = function(e, t) {\n                    if (t >= e.length) return -1;\n                    if (!r(e)) return t;\n                    for (var n = o(), i = 0; null !== n.exec(e) && !(n.lastIndex > t);) i++;\n                    return i\n                }, e.findByteIndex = function(e, t) {\n                    return t >= this.length(e) ? -1 : n(e, o(), t)\n                }, e.charAt = function(e, t) {\n                    var n = this.findByteIndex(e, t);\n                    if (n < 0 || n >= e.length) return \"\";\n                    var r = e.slice(n, n + 8),\n                        o = a.exec(r);\n                    return null === o ? r[0] : o[0]\n                }, e.charCodeAt = function(e, t) {\n                    var r = function(e, t) {\n                        return n(e, new RegExp(i.source, \"g\"), t)\n                    }(e, t);\n                    if (r < 0) return NaN;\n                    var o = e.charCodeAt(r);\n                    return 55296 <= o && o <= 56319 ? 1024 * (o - 55296) + (e.charCodeAt(r + 1) - 56320) + 65536 : o\n                }, e.fromCharCode = function(e) {\n                    return e > 65535 ? (e -= 65536, String.fromCharCode(55296 + (e >> 10), 56320 + (1023 & e))) : String.fromCharCode(e)\n                }, e.indexOf = function(e, t, n) {\n                    void 0 !== n && null !== n || (n = 0);\n                    var r = this.findByteIndex(e, n),\n                        o = e.indexOf(t, r);\n                    return o < 0 ? -1 : this.findCharIndex(e, o)\n                }, e.lastIndexOf = function(e, t, n) {\n                    var r;\n                    if (void 0 === n || null === n) r = e.lastIndexOf(t);\n                    else {\n                        var o = this.findByteIndex(e, n);\n                        r = e.lastIndexOf(t, o)\n                    }\n                    return r < 0 ? -1 : this.findCharIndex(e, r)\n                }, e.slice = function(e, t, n) {\n                    var r, o = this.findByteIndex(e, t);\n                    return o < 0 && (o = e.length), void 0 === n || null === n ? r = e.length : (r = this.findByteIndex(e, n)) < 0 && (r = e.length), e.slice(o, r)\n                }, e.substr = function(e, t, n) {\n                    return t < 0 && (t = this.length(e) + t), void 0 === n || null === n ? this.slice(e, t) : this.slice(e, t, t + n)\n                }, e.substring = e.slice, e.length = function(e) {\n                    return this.findCharIndex(e, e.length - 1) + 1\n                }, e.stringToCodePoints = function(e) {\n                    for (var t = [], n = 0; n < e.length && (codePoint = this.charCodeAt(e, n), codePoint); n++) t.push(codePoint);\n                    return t\n                }, e.codePointsToString = function(e) {\n                    for (var t = [], n = 0; n < e.length; n++) t.push(this.fromCharCode(e[n]));\n                    return t.join(\"\")\n                }, e.stringToBytes = function(e) {\n                    for (var t = [], n = 0; n < e.length; n++) {\n                        for (var r = e.charCodeAt(n), o = []; r > 0;) o.push(255 & r), r >>= 8;\n                        1 == o.length && o.push(0), t = t.concat(o.reverse())\n                    }\n                    return t\n                }, e.bytesToString = function(e) {\n                    for (var t = [], n = 0; n < e.length; n += 2) {\n                        var r = e[n] << 8 | e[n + 1];\n                        t.push(String.fromCharCode(r))\n                    }\n                    return t.join(\"\")\n                }, e.stringToCharArray = function(e) {\n                    var t = [],\n                        n = o();\n                    do {\n                        var r = n.exec(e);\n                        if (null === r) break;\n                        t.push(r[0])\n                    } while (null !== r);\n                    return t\n                };\n                var i = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/,\n                    a = o([], \"\")\n            }\n            void 0 !== t && null !== t ? e = t : \"undefined\" != typeof window && null !== window && (void 0 !== window.UtfString && null !== window.UtfString || (window.UtfString = {}), e = window.UtfString);\n            e.visual = {}, n(e, []), n(e.visual, [/\\uD83C[\\uDDE6-\\uDDFF]\\uD83C[\\uDDE6-\\uDDFF]/])\n        }()\n    }, function(e, t) {\n        e.exports = '---\\nurl: \"https://petstore.swagger.io/v2/swagger.json\"\\ndom_id: \"#swagger-ui\"\\nvalidatorUrl: \"https://online.swagger.io/validator\"\\noauth2RedirectUrl: \"http://localhost:3200/oauth2-redirect.html\"\\n'\n    }, function(e, t, n) {\n        var r, o, i;\n        o = [], r = function() {\n            \"use strict\";\n            var e = function(e) {\n                return e && \"getComputedStyle\" in window && \"smooth\" === window.getComputedStyle(e)[\"scroll-behavior\"]\n            };\n            if (\"undefined\" == typeof window || !(\"document\" in window)) return {};\n            var t = function(t, n, r) {\n                    var o;\n                    n = n || 999, r || 0 === r || (r = 9);\n                    var i = function(e) {\n                            o = e\n                        },\n                        a = function() {\n                            clearTimeout(o), i(0)\n                        },\n                        u = function(e) {\n                            return Math.max(0, t.getTopOf(e) - r)\n                        },\n                        s = function(r, o, u) {\n                            if (a(), 0 === o || o && o < 0 || e(t.body)) t.toY(r), u && u();\n                            else {\n                                var s = t.getY(),\n                                    l = Math.max(0, r) - s,\n                                    c = (new Date).getTime();\n                                o = o || Math.min(Math.abs(l), n),\n                                    function e() {\n                                        i(setTimeout(function() {\n                                            var n = Math.min(1, ((new Date).getTime() - c) / o),\n                                                r = Math.max(0, Math.floor(s + l * (n < .5 ? 2 * n * n : n * (4 - 2 * n) - 1)));\n                                            t.toY(r), n < 1 && t.getHeight() + r < t.body.scrollHeight ? e() : (setTimeout(a, 99), u && u())\n                                        }, 9))\n                                    }()\n                            }\n                        },\n                        l = function(e, t, n) {\n                            s(u(e), t, n)\n                        };\n                    return {\n                        setup: function(e, t) {\n                            return (0 === e || e) && (n = e), (0 === t || t) && (r = t), {\n                                defaultDuration: n,\n                                edgeOffset: r\n                            }\n                        },\n                        to: l,\n                        toY: s,\n                        intoView: function(e, n, o) {\n                            var i = e.getBoundingClientRect().height,\n                                a = t.getTopOf(e) + i,\n                                c = t.getHeight(),\n                                f = t.getY(),\n                                p = f + c;\n                            u(e) < f || i + r > c ? l(e, n, o) : a + r > p ? s(a - c + r, n, o) : o && o()\n                        },\n                        center: function(e, n, r, o) {\n                            s(Math.max(0, t.getTopOf(e) - t.getHeight() / 2 + (r || e.getBoundingClientRect().height / 2)), n, o)\n                        },\n                        stop: a,\n                        moving: function() {\n                            return !!o\n                        },\n                        getY: t.getY,\n                        getTopOf: t.getTopOf\n                    }\n                },\n                n = document.documentElement,\n                r = function() {\n                    return window.scrollY || n.scrollTop\n                },\n                o = t({\n                    body: document.scrollingElement || document.body,\n                    toY: function(e) {\n                        window.scrollTo(0, e)\n                    },\n                    getY: r,\n                    getHeight: function() {\n                        return window.innerHeight || n.clientHeight\n                    },\n                    getTopOf: function(e) {\n                        return e.getBoundingClientRect().top + r() - n.offsetTop\n                    }\n                });\n            if (o.createScroller = function(e, r, o) {\n                return t({\n                    body: e,\n                    toY: function(t) {\n                        e.scrollTop = t\n                    },\n                    getY: function() {\n                        return e.scrollTop\n                    },\n                    getHeight: function() {\n                        return Math.min(e.clientHeight, window.innerHeight || n.clientHeight)\n                    },\n                    getTopOf: function(e) {\n                        return e.offsetTop\n                    }\n                }, r, o)\n            }, \"addEventListener\" in window && !window.noZensmooth && !e(document.body)) {\n                var i = \"history\" in window && \"pushState\" in history,\n                    a = i && \"scrollRestoration\" in history;\n                a && (history.scrollRestoration = \"auto\"), window.addEventListener(\"load\", function() {\n                    a && (setTimeout(function() {\n                        history.scrollRestoration = \"manual\"\n                    }, 9), window.addEventListener(\"popstate\", function(e) {\n                        e.state && \"zenscrollY\" in e.state && o.toY(e.state.zenscrollY)\n                    }, !1)), window.location.hash && setTimeout(function() {\n                        var e = o.setup().edgeOffset;\n                        if (e) {\n                            var t = document.getElementById(window.location.href.split(\"#\")[1]);\n                            if (t) {\n                                var n = Math.max(0, o.getTopOf(t) - e),\n                                    r = o.getY() - n;\n                                0 <= r && r < 9 && window.scrollTo(0, n)\n                            }\n                        }\n                    }, 9)\n                }, !1);\n                var u = new RegExp(\"(^|\\\\s)noZensmooth(\\\\s|$)\");\n                window.addEventListener(\"click\", function(e) {\n                    for (var t = e.target; t && \"A\" !== t.tagName;) t = t.parentNode;\n                    if (!(!t || 1 !== e.which || e.shiftKey || e.metaKey || e.ctrlKey || e.altKey)) {\n                        if (a) {\n                            var n = history.state && \"object\" == typeof history.state ? history.state : {};\n                            n.zenscrollY = o.getY();\n                            try {\n                                history.replaceState(n, \"\")\n                            } catch (e) {}\n                        }\n                        var r = t.getAttribute(\"href\") || \"\";\n                        if (0 === r.indexOf(\"#\") && !u.test(t.className)) {\n                            var s = 0,\n                                l = document.getElementById(r.substring(1));\n                            if (\"#\" !== r) {\n                                if (!l) return;\n                                s = o.getTopOf(l)\n                            }\n                            e.preventDefault();\n                            var c = function() {\n                                    window.location = r\n                                },\n                                f = o.setup().edgeOffset;\n                            f && (s = Math.max(0, s - f), i && (c = function() {\n                                history.pushState({}, \"\", r)\n                            })), o.toY(s, null, c)\n                        }\n                    }\n                }, !1)\n            }\n            return o\n        }(), void 0 === (i = \"function\" == typeof r ? r.apply(t, o) : r) || (e.exports = i)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(4)),\n            o = p(n(2)),\n            i = p(n(3)),\n            a = p(n(5)),\n            u = p(n(6)),\n            s = n(0),\n            l = p(s),\n            c = (p(n(1)), p(n(12)), n(387)),\n            f = n(7);\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = c.helpers.opId,\n            h = function(e) {\n                function t(e, n) {\n                    (0, o.default)(this, t);\n                    var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                    return i.toggleShown = function() {\n                        var e = i.props,\n                            t = e.layoutActions,\n                            n = e.tag,\n                            r = e.operationId,\n                            o = e.isShown,\n                            a = i.getResolvedSubtree();\n                        o || void 0 !== a || i.requestResolvedSubtree(), t.show([\"operations\", n, r], !o)\n                    }, i.onCancelClick = function() {\n                        i.setState({\n                            tryItOutEnabled: !i.state.tryItOutEnabled\n                        })\n                    }, i.onTryoutClick = function() {\n                        var e = i.props,\n                            t = e.specActions,\n                            n = e.path,\n                            r = e.method;\n                        i.setState({\n                            tryItOutEnabled: !i.state.tryItOutEnabled\n                        }), t.clearValidateParams([n, r])\n                    }, i.onExecute = function() {\n                        i.setState({\n                            executeInProgress: !0\n                        })\n                    }, i.getResolvedSubtree = function() {\n                        var e = i.props,\n                            t = e.specSelectors,\n                            n = e.path,\n                            r = e.method,\n                            o = e.specPath;\n                        return o ? t.specResolvedSubtree(o.toJS()) : t.specResolvedSubtree([\"paths\", n, r])\n                    }, i.requestResolvedSubtree = function() {\n                        var e = i.props,\n                            t = e.specActions,\n                            n = e.path,\n                            r = e.method,\n                            o = e.specPath;\n                        return o ? t.requestResolvedSubtree(o.toJS()) : t.requestResolvedSubtree([\"paths\", n, r])\n                    }, i.state = {\n                        tryItOutEnabled: !1,\n                        executeInProgress: !1\n                    }, i\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"mapStateToProps\",\n                    value: function(e, t) {\n                        var n = t.op,\n                            r = t.layoutSelectors,\n                            o = (0, t.getConfigs)(),\n                            i = o.docExpansion,\n                            a = o.deepLinking,\n                            u = o.displayOperationId,\n                            s = o.displayRequestDuration,\n                            l = o.supportedSubmitMethods,\n                            c = r.showSummary(),\n                            f = n.getIn([\"operation\", \"__originalOperationId\"]) || n.getIn([\"operation\", \"operationId\"]) || d(n.get(\"operation\"), t.path, t.method) || n.get(\"id\"),\n                            p = [\"operations\", t.tag, f],\n                            h = a && \"false\" !== a,\n                            v = l.indexOf(t.method) >= 0 && (void 0 === t.allowTryItOut ? t.specSelectors.allowTryItOutFor(t.path, t.method) : t.allowTryItOut),\n                            m = n.getIn([\"operation\", \"security\"]) || t.specSelectors.security();\n                        return {\n                            operationId: f,\n                            isDeepLinkingEnabled: h,\n                            showSummary: c,\n                            displayOperationId: u,\n                            displayRequestDuration: s,\n                            allowTryItOut: v,\n                            security: m,\n                            isAuthorized: t.authSelectors.isAuthorized(m),\n                            isShown: r.isShown(p, \"full\" === i),\n                            jumpToKey: \"paths.\" + t.path + \".\" + t.method,\n                            response: t.specSelectors.responseFor(t.path, t.method),\n                            request: t.specSelectors.requestFor(t.path, t.method)\n                        }\n                    }\n                }, {\n                    key: \"componentDidMount\",\n                    value: function() {\n                        var e = this.props.isShown,\n                            t = this.getResolvedSubtree();\n                        e && void 0 === t && this.requestResolvedSubtree()\n                    }\n                }, {\n                    key: \"componentWillReceiveProps\",\n                    value: function(e) {\n                        var t = e.response,\n                            n = e.isShown,\n                            r = this.getResolvedSubtree();\n                        t !== this.props.response && this.setState({\n                            executeInProgress: !1\n                        }), n && void 0 === r && this.requestResolvedSubtree()\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.op,\n                            n = e.tag,\n                            r = e.path,\n                            o = e.method,\n                            i = e.security,\n                            a = e.isAuthorized,\n                            u = e.operationId,\n                            s = e.showSummary,\n                            c = e.isShown,\n                            p = e.jumpToKey,\n                            d = e.allowTryItOut,\n                            h = e.response,\n                            v = e.request,\n                            m = e.displayOperationId,\n                            g = e.displayRequestDuration,\n                            y = e.isDeepLinkingEnabled,\n                            b = e.specPath,\n                            _ = e.specSelectors,\n                            w = e.specActions,\n                            E = e.getComponent,\n                            x = e.getConfigs,\n                            S = e.layoutSelectors,\n                            C = e.layoutActions,\n                            k = e.authActions,\n                            A = e.authSelectors,\n                            O = e.oas3Actions,\n                            P = e.oas3Selectors,\n                            T = e.fn,\n                            M = E(\"operation\"),\n                            I = this.getResolvedSubtree() || (0, f.Map)(),\n                            j = (0, f.fromJS)({\n                                op: I,\n                                tag: n,\n                                path: r,\n                                summary: t.getIn([\"operation\", \"summary\"]) || \"\",\n                                deprecated: I.get(\"deprecated\") || t.getIn([\"operation\", \"deprecated\"]) || !1,\n                                method: o,\n                                security: i,\n                                isAuthorized: a,\n                                operationId: u,\n                                originalOperationId: I.getIn([\"operation\", \"__originalOperationId\"]),\n                                showSummary: s,\n                                isShown: c,\n                                jumpToKey: p,\n                                allowTryItOut: d,\n                                request: v,\n                                displayOperationId: m,\n                                displayRequestDuration: g,\n                                isDeepLinkingEnabled: y,\n                                executeInProgress: this.state.executeInProgress,\n                                tryItOutEnabled: this.state.tryItOutEnabled\n                            });\n                        return l.default.createElement(M, {\n                            operation: j,\n                            response: h,\n                            request: v,\n                            isShown: c,\n                            toggleShown: this.toggleShown,\n                            onTryoutClick: this.onTryoutClick,\n                            onCancelClick: this.onCancelClick,\n                            onExecute: this.onExecute,\n                            specPath: b,\n                            specActions: w,\n                            specSelectors: _,\n                            oas3Actions: O,\n                            oas3Selectors: P,\n                            layoutActions: C,\n                            layoutSelectors: S,\n                            authActions: k,\n                            authSelectors: A,\n                            getComponent: E,\n                            getConfigs: x,\n                            fn: T\n                        })\n                    }\n                }]), t\n            }(s.PureComponent);\n        h.defaultProps = {\n            showSummary: !0,\n            response: null,\n            allowTryItOut: !0,\n            displayOperationId: !1,\n            displayRequestDuration: !1\n        }, t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"getLayout\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.layoutSelectors.current(),\n                        r = t(n, !0);\n                    return r || function() {\n                        return s.default.createElement(\"h1\", null, ' No layout defined for \"', n, '\" ')\n                    }\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.getLayout();\n                    return s.default.createElement(e, null)\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c, c.defaultProps = {}\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.close = function() {\n                    i.props.authActions.showDefinitions(!1)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.authSelectors,\n                        n = e.authActions,\n                        r = e.getComponent,\n                        o = e.errSelectors,\n                        i = e.specSelectors,\n                        a = e.fn.AST,\n                        u = void 0 === a ? {} : a,\n                        l = t.shownDefinitions(),\n                        c = r(\"auths\");\n                    return s.default.createElement(\"div\", {\n                        className: \"dialog-ux\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"backdrop-ux\"\n                    }), s.default.createElement(\"div\", {\n                        className: \"modal-ux\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"modal-dialog-ux\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"modal-ux-inner\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"modal-ux-header\"\n                    }, s.default.createElement(\"h3\", null, \"Available authorizations\"), s.default.createElement(\"button\", {\n                        type: \"button\",\n                        className: \"close-modal\",\n                        onClick: this.close\n                    }, s.default.createElement(\"svg\", {\n                        width: \"20\",\n                        height: \"20\"\n                    }, s.default.createElement(\"use\", {\n                        href: \"#close\",\n                        xlinkHref: \"#close\"\n                    })))), s.default.createElement(\"div\", {\n                        className: \"modal-ux-content\"\n                    }, l.valueSeq().map(function(e, a) {\n                        return s.default.createElement(c, {\n                            key: a,\n                            AST: u,\n                            definitions: e,\n                            getComponent: r,\n                            errSelectors: o,\n                            authSelectors: t,\n                            authActions: n,\n                            specSelectors: i\n                        })\n                    }))))))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onClick = function() {\n                    var e = i.props,\n                        t = e.authActions,\n                        n = e.authSelectors.definitionsToAuthorize();\n                    t.showDefinitions(n)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.authSelectors,\n                        n = (0, e.getComponent)(\"authorizationPopup\", !0),\n                        r = !!t.shownDefinitions(),\n                        o = !!t.authorized().size;\n                    return s.default.createElement(\"div\", {\n                        className: \"auth-wrapper\"\n                    }, s.default.createElement(\"button\", {\n                        className: o ? \"btn authorize locked\" : \"btn authorize unlocked\",\n                        onClick: this.onClick\n                    }, s.default.createElement(\"span\", null, \"Authorize\"), s.default.createElement(\"svg\", {\n                        width: \"20\",\n                        height: \"20\"\n                    }, s.default.createElement(\"use\", {\n                        href: o ? \"#locked\" : \"#unlocked\",\n                        xlinkHref: o ? \"#locked\" : \"#unlocked\"\n                    }))), r && s.default.createElement(n, null))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onClick = function(e) {\n                    e.stopPropagation();\n                    var t = i.props.onClick;\n                    t && t()\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props.isAuthorized;\n                    return s.default.createElement(\"button\", {\n                        className: e ? \"authorization__btn locked\" : \"authorization__btn unlocked\",\n                        \"aria-label\": e ? \"authorization button locked\" : \"authorization button unlocked\",\n                        onClick: this.onClick\n                    }, s.default.createElement(\"svg\", {\n                        width: \"20\",\n                        height: \"20\"\n                    }, s.default.createElement(\"use\", {\n                        href: e ? \"#locked\" : \"#unlocked\",\n                        xlinkHref: e ? \"#locked\" : \"#unlocked\"\n                    })))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(22)),\n            o = c(n(4)),\n            i = c(n(2)),\n            a = c(n(3)),\n            u = c(n(5)),\n            s = c(n(6)),\n            l = c(n(0));\n        c(n(1)), c(n(12));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t(e, n) {\n                (0, i.default)(this, t);\n                var a = (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).call(this, e, n));\n                return a.onAuthChange = function(e) {\n                    var t = e.name;\n                    a.setState((0, r.default)({}, t, e))\n                }, a.submitAuth = function(e) {\n                    e.preventDefault(), a.props.authActions.authorize(a.state)\n                }, a.logoutClick = function(e) {\n                    e.preventDefault();\n                    var t = a.props,\n                        n = t.authActions,\n                        r = t.definitions.map(function(e, t) {\n                            return t\n                        }).toArray();\n                    n.logout(r)\n                }, a.close = function(e) {\n                    e.preventDefault(), a.props.authActions.showDefinitions(!1)\n                }, a.state = {}, a\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        t = this.props,\n                        n = t.definitions,\n                        r = t.getComponent,\n                        o = t.authSelectors,\n                        i = t.errSelectors,\n                        a = r(\"AuthItem\"),\n                        u = r(\"oauth2\", !0),\n                        s = r(\"Button\"),\n                        c = o.authorized(),\n                        f = n.filter(function(e, t) {\n                            return !!c.get(t)\n                        }),\n                        p = n.filter(function(e) {\n                            return \"oauth2\" !== e.get(\"type\")\n                        }),\n                        d = n.filter(function(e) {\n                            return \"oauth2\" === e.get(\"type\")\n                        });\n                    return l.default.createElement(\"div\", {\n                        className: \"auth-container\"\n                    }, !!p.size && l.default.createElement(\"form\", {\n                        onSubmit: this.submitAuth\n                    }, p.map(function(t, n) {\n                        return l.default.createElement(a, {\n                            key: n,\n                            schema: t,\n                            name: n,\n                            getComponent: r,\n                            onAuthChange: e.onAuthChange,\n                            authorized: c,\n                            errSelectors: i\n                        })\n                    }).toArray(), l.default.createElement(\"div\", {\n                        className: \"auth-btn-wrapper\"\n                    }, p.size === f.size ? l.default.createElement(s, {\n                        className: \"btn modal-btn auth\",\n                        onClick: this.logoutClick\n                    }, \"Logout\") : l.default.createElement(s, {\n                        type: \"submit\",\n                        className: \"btn modal-btn auth authorize\"\n                    }, \"Authorize\"), l.default.createElement(s, {\n                        className: \"btn modal-btn auth btn-done\",\n                        onClick: this.close\n                    }, \"Close\"))), d && d.size ? l.default.createElement(\"div\", null, l.default.createElement(\"div\", {\n                        className: \"scope-def\"\n                    }, l.default.createElement(\"p\", null, \"Scopes are used to grant an application different levels of access to data on behalf of the end user. Each API may declare one or more scopes.\"), l.default.createElement(\"p\", null, \"API requires the following scopes. Select which ones you want to grant to Swagger UI.\")), n.filter(function(e) {\n                        return \"oauth2\" === e.get(\"type\")\n                    }).map(function(e, t) {\n                        return l.default.createElement(\"div\", {\n                            key: t\n                        }, l.default.createElement(u, {\n                            authorized: c,\n                            schema: e,\n                            name: t\n                        }))\n                    }).toArray()) : null)\n                }\n            }]), t\n        }(l.default.Component);\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1)), l(n(12));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.schema,\n                        n = e.name,\n                        r = e.getComponent,\n                        o = e.onAuthChange,\n                        i = e.authorized,\n                        a = e.errSelectors,\n                        u = r(\"apiKeyAuth\"),\n                        l = r(\"basicAuth\"),\n                        c = void 0,\n                        f = t.get(\"type\");\n                    switch (f) {\n                        case \"apiKey\":\n                            c = s.default.createElement(u, {\n                                key: n,\n                                schema: t,\n                                name: n,\n                                errSelectors: a,\n                                authorized: i,\n                                getComponent: r,\n                                onChange: o\n                            });\n                            break;\n                        case \"basic\":\n                            c = s.default.createElement(l, {\n                                key: n,\n                                schema: t,\n                                name: n,\n                                errSelectors: a,\n                                authorized: i,\n                                getComponent: r,\n                                onChange: o\n                            });\n                            break;\n                        default:\n                            c = s.default.createElement(\"div\", {\n                                key: n\n                            }, \"Unknown security definition type \", f)\n                    }\n                    return s.default.createElement(\"div\", {\n                        key: n + \"-jump\"\n                    }, c)\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props.error,\n                        t = e.get(\"level\"),\n                        n = e.get(\"message\"),\n                        r = e.get(\"source\");\n                    return s.default.createElement(\"div\", {\n                        className: \"errors\",\n                        style: {\n                            backgroundColor: \"#ffeeee\",\n                            color: \"red\",\n                            margin: \"1em\"\n                        }\n                    }, s.default.createElement(\"b\", {\n                        style: {\n                            textTransform: \"capitalize\",\n                            marginRight: \"1em\"\n                        }\n                    }, r, \" \", t), s.default.createElement(\"span\", null, n))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(23)),\n            o = c(n(4)),\n            i = c(n(2)),\n            a = c(n(3)),\n            u = c(n(5)),\n            s = c(n(6)),\n            l = c(n(0));\n        c(n(1));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n                function t(e, n) {\n                    (0, i.default)(this, t);\n                    var r = (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).call(this, e, n));\n                    p.call(r);\n                    var a = r.props,\n                        s = a.name,\n                        l = a.schema,\n                        c = r.getValue();\n                    return r.state = {\n                        name: s,\n                        schema: l,\n                        value: c\n                    }, r\n                }\n                return (0, s.default)(t, e), (0, a.default)(t, [{\n                    key: \"getValue\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.name,\n                            n = e.authorized;\n                        return n && n.getIn([t, \"value\"])\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.schema,\n                            n = e.getComponent,\n                            r = e.errSelectors,\n                            o = e.name,\n                            i = n(\"Input\"),\n                            a = n(\"Row\"),\n                            u = n(\"Col\"),\n                            s = n(\"authError\"),\n                            c = n(\"Markdown\"),\n                            f = n(\"JumpToPath\", !0),\n                            p = this.getValue(),\n                            d = r.allErrors().filter(function(e) {\n                                return e.get(\"authId\") === o\n                            });\n                        return l.default.createElement(\"div\", null, l.default.createElement(\"h4\", null, l.default.createElement(\"code\", null, o || t.get(\"name\")), \"  (apiKey)\", l.default.createElement(f, {\n                            path: [\"securityDefinitions\", o]\n                        })), p && l.default.createElement(\"h6\", null, \"Authorized\"), l.default.createElement(a, null, l.default.createElement(c, {\n                            source: t.get(\"description\")\n                        })), l.default.createElement(a, null, l.default.createElement(\"p\", null, \"Name: \", l.default.createElement(\"code\", null, t.get(\"name\")))), l.default.createElement(a, null, l.default.createElement(\"p\", null, \"In: \", l.default.createElement(\"code\", null, t.get(\"in\")))), l.default.createElement(a, null, l.default.createElement(\"label\", null, \"Value:\"), p ? l.default.createElement(\"code\", null, \" ****** \") : l.default.createElement(u, null, l.default.createElement(i, {\n                            type: \"text\",\n                            onChange: this.onChange\n                        }))), d.valueSeq().map(function(e, t) {\n                            return l.default.createElement(s, {\n                                error: e,\n                                key: t\n                            })\n                        }))\n                    }\n                }]), t\n            }(l.default.Component),\n            p = function() {\n                var e = this;\n                this.onChange = function(t) {\n                    var n = e.props.onChange,\n                        o = t.target.value,\n                        i = (0, r.default)({}, e.state, {\n                            value: o\n                        });\n                    e.setState(i), n(i)\n                }\n            };\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1)), l(n(12));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n                function t(e, n) {\n                    (0, o.default)(this, t);\n                    var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                    f.call(i);\n                    var u = i.props,\n                        s = u.schema,\n                        l = u.name,\n                        c = i.getValue().username;\n                    return i.state = {\n                        name: l,\n                        schema: s,\n                        value: c ? {\n                            username: c\n                        } : {}\n                    }, i\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"getValue\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.authorized,\n                            n = e.name;\n                        return t && t.getIn([n, \"value\"]) || {}\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.schema,\n                            n = e.getComponent,\n                            r = e.name,\n                            o = e.errSelectors,\n                            i = n(\"Input\"),\n                            a = n(\"Row\"),\n                            u = n(\"Col\"),\n                            l = n(\"authError\"),\n                            c = n(\"JumpToPath\", !0),\n                            f = n(\"Markdown\"),\n                            p = this.getValue().username,\n                            d = o.allErrors().filter(function(e) {\n                                return e.get(\"authId\") === r\n                            });\n                        return s.default.createElement(\"div\", null, s.default.createElement(\"h4\", null, \"Basic authorization\", s.default.createElement(c, {\n                            path: [\"securityDefinitions\", r]\n                        })), p && s.default.createElement(\"h6\", null, \"Authorized\"), s.default.createElement(a, null, s.default.createElement(f, {\n                            source: t.get(\"description\")\n                        })), s.default.createElement(a, null, s.default.createElement(\"label\", null, \"Username:\"), p ? s.default.createElement(\"code\", null, \" \", p, \" \") : s.default.createElement(u, null, s.default.createElement(i, {\n                            type: \"text\",\n                            required: \"required\",\n                            name: \"username\",\n                            onChange: this.onChange\n                        }))), s.default.createElement(a, null, s.default.createElement(\"label\", null, \"Password:\"), p ? s.default.createElement(\"code\", null, \" ****** \") : s.default.createElement(u, null, s.default.createElement(i, {\n                            required: \"required\",\n                            autoComplete: \"new-password\",\n                            name: \"password\",\n                            type: \"password\",\n                            onChange: this.onChange\n                        }))), d.valueSeq().map(function(e, t) {\n                            return s.default.createElement(l, {\n                                error: e,\n                                key: t\n                            })\n                        }))\n                    }\n                }]), t\n            }(s.default.Component),\n            f = function() {\n                var e = this;\n                this.onChange = function(t) {\n                    var n = e.props.onChange,\n                        r = t.target,\n                        o = r.value,\n                        i = r.name,\n                        a = e.state.value;\n                    a[i] = o, e.setState({\n                        value: a\n                    }), n(e.state)\n                }\n            };\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(22)),\n            o = f(n(4)),\n            i = f(n(2)),\n            a = f(n(3)),\n            u = f(n(5)),\n            s = f(n(6)),\n            l = f(n(0)),\n            c = (f(n(1)), f(n(947)));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n                function t(e, n) {\n                    (0, i.default)(this, t);\n                    var r = (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).call(this, e, n));\n                    d.call(r);\n                    var a = r.props,\n                        s = a.name,\n                        l = a.schema,\n                        c = a.authorized,\n                        f = a.authSelectors,\n                        p = c && c.get(s),\n                        h = f.getConfigs() || {},\n                        v = p && p.get(\"username\") || \"\",\n                        m = p && p.get(\"clientId\") || h.clientId || \"\",\n                        g = p && p.get(\"clientSecret\") || h.clientSecret || \"\",\n                        y = p && p.get(\"passwordType\") || \"request-body\";\n                    return r.state = {\n                        appName: h.appName,\n                        name: s,\n                        schema: l,\n                        scopes: [],\n                        clientId: m,\n                        clientSecret: g,\n                        username: v,\n                        password: \"\",\n                        passwordType: y\n                    }, r\n                }\n                return (0, s.default)(t, e), (0, a.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this,\n                            t = this.props,\n                            n = t.schema,\n                            r = t.getComponent,\n                            o = t.authSelectors,\n                            i = t.errSelectors,\n                            a = t.name,\n                            u = t.specSelectors,\n                            s = r(\"Input\"),\n                            c = r(\"Row\"),\n                            f = r(\"Col\"),\n                            p = r(\"Button\"),\n                            d = r(\"authError\"),\n                            h = r(\"JumpToPath\", !0),\n                            v = r(\"Markdown\"),\n                            m = u.isOAS3,\n                            g = m() ? \"authorizationCode\" : \"accessCode\",\n                            y = m() ? \"clientCredentials\" : \"application\",\n                            b = n.get(\"flow\"),\n                            _ = n.get(\"allowedScopes\") || n.get(\"scopes\"),\n                            w = !!o.authorized().get(a),\n                            E = i.allErrors().filter(function(e) {\n                                return e.get(\"authId\") === a\n                            }),\n                            x = !E.filter(function(e) {\n                                return \"validation\" === e.get(\"source\")\n                            }).size,\n                            S = n.get(\"description\");\n                        return l.default.createElement(\"div\", null, l.default.createElement(\"h4\", null, a, \" (OAuth2, \", n.get(\"flow\"), \") \", l.default.createElement(h, {\n                            path: [\"securityDefinitions\", a]\n                        })), this.state.appName ? l.default.createElement(\"h5\", null, \"Application: \", this.state.appName, \" \") : null, S && l.default.createElement(v, {\n                            source: n.get(\"description\")\n                        }), w && l.default.createElement(\"h6\", null, \"Authorized\"), (\"implicit\" === b || b === g) && l.default.createElement(\"p\", null, \"Authorization URL: \", l.default.createElement(\"code\", null, n.get(\"authorizationUrl\"))), (\"password\" === b || b === g || b === y) && l.default.createElement(\"p\", null, \"Token URL:\", l.default.createElement(\"code\", null, \" \", n.get(\"tokenUrl\"))), l.default.createElement(\"p\", {\n                            className: \"flow\"\n                        }, \"Flow: \", l.default.createElement(\"code\", null, n.get(\"flow\"))), \"password\" !== b ? null : l.default.createElement(c, null, l.default.createElement(c, null, l.default.createElement(\"label\", {\n                            htmlFor: \"oauth_username\"\n                        }, \"username:\"), w ? l.default.createElement(\"code\", null, \" \", this.state.username, \" \") : l.default.createElement(f, {\n                            tablet: 10,\n                            desktop: 10\n                        }, l.default.createElement(\"input\", {\n                            id: \"oauth_username\",\n                            type: \"text\",\n                            \"data-name\": \"username\",\n                            onChange: this.onInputChange\n                        }))), l.default.createElement(c, null, l.default.createElement(\"label\", {\n                            htmlFor: \"oauth_password\"\n                        }, \"password:\"), w ? l.default.createElement(\"code\", null, \" ****** \") : l.default.createElement(f, {\n                            tablet: 10,\n                            desktop: 10\n                        }, l.default.createElement(\"input\", {\n                            id: \"oauth_password\",\n                            type: \"password\",\n                            \"data-name\": \"password\",\n                            onChange: this.onInputChange\n                        }))), l.default.createElement(c, null, l.default.createElement(\"label\", {\n                            htmlFor: \"password_type\"\n                        }, \"type:\"), w ? l.default.createElement(\"code\", null, \" \", this.state.passwordType, \" \") : l.default.createElement(f, {\n                            tablet: 10,\n                            desktop: 10\n                        }, l.default.createElement(\"select\", {\n                            id: \"password_type\",\n                            \"data-name\": \"passwordType\",\n                            onChange: this.onInputChange\n                        }, l.default.createElement(\"option\", {\n                            value: \"request-body\"\n                        }, \"Request body\"), l.default.createElement(\"option\", {\n                            value: \"basic\"\n                        }, \"Basic auth\"), l.default.createElement(\"option\", {\n                            value: \"query\"\n                        }, \"Query parameters\"))))), (b === y || \"implicit\" === b || b === g || \"password\" === b && \"basic\" !== this.state.passwordType) && (!w || w && this.state.clientId) && l.default.createElement(c, null, l.default.createElement(\"label\", {\n                            htmlFor: \"client_id\"\n                        }, \"client_id:\"), w ? l.default.createElement(\"code\", null, \" ****** \") : l.default.createElement(f, {\n                            tablet: 10,\n                            desktop: 10\n                        }, l.default.createElement(\"input\", {\n                            id: \"client_id\",\n                            type: \"text\",\n                            required: \"password\" === b,\n                            value: this.state.clientId,\n                            \"data-name\": \"clientId\",\n                            onChange: this.onInputChange\n                        }))), (b === y || b === g || \"password\" === b && \"basic\" !== this.state.passwordType) && l.default.createElement(c, null, l.default.createElement(\"label\", {\n                            htmlFor: \"client_secret\"\n                        }, \"client_secret:\"), w ? l.default.createElement(\"code\", null, \" ****** \") : l.default.createElement(f, {\n                            tablet: 10,\n                            desktop: 10\n                        }, l.default.createElement(\"input\", {\n                            id: \"client_secret\",\n                            value: this.state.clientSecret,\n                            type: \"text\",\n                            \"data-name\": \"clientSecret\",\n                            onChange: this.onInputChange\n                        }))), !w && _ && _.size ? l.default.createElement(\"div\", {\n                            className: \"scopes\"\n                        }, l.default.createElement(\"h2\", null, \"Scopes:\"), _.map(function(t, n) {\n                            return l.default.createElement(c, {\n                                key: n\n                            }, l.default.createElement(\"div\", {\n                                className: \"checkbox\"\n                            }, l.default.createElement(s, {\n                                \"data-value\": n,\n                                id: n + \"-\" + b + \"-checkbox-\" + e.state.name,\n                                disabled: w,\n                                type: \"checkbox\",\n                                onChange: e.onScopeChange\n                            }), l.default.createElement(\"label\", {\n                                htmlFor: n + \"-\" + b + \"-checkbox-\" + e.state.name\n                            }, l.default.createElement(\"span\", {\n                                className: \"item\"\n                            }), l.default.createElement(\"div\", {\n                                className: \"text\"\n                            }, l.default.createElement(\"p\", {\n                                className: \"name\"\n                            }, n), l.default.createElement(\"p\", {\n                                className: \"description\"\n                            }, t)))))\n                        }).toArray()) : null, E.valueSeq().map(function(e, t) {\n                            return l.default.createElement(d, {\n                                error: e,\n                                key: t\n                            })\n                        }), l.default.createElement(\"div\", {\n                            className: \"auth-btn-wrapper\"\n                        }, x && (w ? l.default.createElement(p, {\n                            className: \"btn modal-btn auth authorize\",\n                            onClick: this.logout\n                        }, \"Logout\") : l.default.createElement(p, {\n                            className: \"btn modal-btn auth authorize\",\n                            onClick: this.authorize\n                        }, \"Authorize\")), l.default.createElement(p, {\n                            className: \"btn modal-btn auth btn-done\",\n                            onClick: this.close\n                        }, \"Close\")))\n                    }\n                }]), t\n            }(l.default.Component),\n            d = function() {\n                var e = this;\n                this.close = function(t) {\n                    t.preventDefault(), e.props.authActions.showDefinitions(!1)\n                }, this.authorize = function() {\n                    var t = e.props,\n                        n = t.authActions,\n                        r = t.errActions,\n                        o = t.getConfigs,\n                        i = t.authSelectors,\n                        a = o(),\n                        u = i.getConfigs();\n                    r.clear({\n                        authId: name,\n                        type: \"auth\",\n                        source: \"auth\"\n                    }), (0, c.default)({\n                        auth: e.state,\n                        authActions: n,\n                        errActions: r,\n                        configs: a,\n                        authConfigs: u\n                    })\n                }, this.onScopeChange = function(t) {\n                    var n = t.target,\n                        r = n.checked,\n                        o = n.dataset.value;\n                    if (r && -1 === e.state.scopes.indexOf(o)) {\n                        var i = e.state.scopes.concat([o]);\n                        e.setState({\n                            scopes: i\n                        })\n                    } else !r && e.state.scopes.indexOf(o) > -1 && e.setState({\n                        scopes: e.state.scopes.filter(function(e) {\n                            return e !== o\n                        })\n                    })\n                }, this.onInputChange = function(t) {\n                    var n = t.target,\n                        o = n.dataset.name,\n                        i = n.value,\n                        a = (0, r.default)({}, o, i);\n                    e.setState(a)\n                }, this.logout = function(t) {\n                    t.preventDefault();\n                    var n = e.props,\n                        r = n.authActions,\n                        o = n.errActions,\n                        i = n.name;\n                    o.clear({\n                        authId: i,\n                        type: \"auth\",\n                        source: \"auth\"\n                    }), r.logout([i])\n                }\n            };\n        t.default = p\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.default = function(e) {\n            var t = e.auth,\n                n = e.authActions,\n                r = e.errActions,\n                o = e.configs,\n                u = e.authConfigs,\n                s = void 0 === u ? {} : u,\n                l = t.schema,\n                c = t.scopes,\n                f = t.name,\n                p = t.clientId,\n                d = l.get(\"flow\"),\n                h = [];\n            switch (d) {\n                case \"password\":\n                    return void n.authorizePassword(t);\n                case \"application\":\n                    return void n.authorizeApplication(t);\n                case \"accessCode\":\n                    h.push(\"response_type=code\");\n                    break;\n                case \"implicit\":\n                    h.push(\"response_type=token\");\n                    break;\n                case \"clientCredentials\":\n                    return void n.authorizeApplication(t);\n                case \"authorizationCode\":\n                    h.push(\"response_type=code\")\n            }\n            \"string\" == typeof p && h.push(\"client_id=\" + encodeURIComponent(p));\n            var v = o.oauth2RedirectUrl;\n            if (void 0 === v) return void r.newAuthErr({\n                authId: f,\n                source: \"validation\",\n                level: \"error\",\n                message: \"oauth2RedirectUrl configuration is not passed. Oauth2 authorization cannot be performed.\"\n            });\n            if (h.push(\"redirect_uri=\" + encodeURIComponent(v)), Array.isArray(c) && 0 < c.length) {\n                var m = s.scopeSeparator || \" \";\n                h.push(\"scope=\" + encodeURIComponent(c.join(m)))\n            }\n            var g = (0, a.btoa)(new Date);\n            h.push(\"state=\" + encodeURIComponent(g)), void 0 !== s.realm && h.push(\"realm=\" + encodeURIComponent(s.realm));\n            var y = s.additionalQueryStringParams;\n            for (var b in y) void 0 !== y[b] && h.push([b, y[b]].map(encodeURIComponent).join(\"=\"));\n            var _ = l.get(\"authorizationUrl\"),\n                w = [_, h.join(\"&\")].join(-1 === _.indexOf(\"?\") ? \"?\" : \"&\"),\n                E = void 0;\n            E = \"implicit\" === d ? n.preAuthorizeImplicit : s.useBasicAuthenticationWithAccessCodeGrant ? n.authorizeAccessCodeWithBasicAuthentication : n.authorizeAccessCodeWithFormParams;\n            i.default.swaggerUIRedirectOauth2 = {\n                auth: t,\n                state: g,\n                redirectUrl: v,\n                callback: E,\n                errCb: r.newAuthErr\n            }, i.default.open(w)\n        };\n        var r, o = n(32),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = n(10)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = n(0),\n            l = c(s);\n        c(n(1));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onClick = function() {\n                    var e = i.props,\n                        t = e.specActions,\n                        n = e.path,\n                        r = e.method;\n                    t.clearResponse(n, r), t.clearRequest(n, r)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    return l.default.createElement(\"button\", {\n                        className: \"btn btn-clear opblock-control__btn\",\n                        onClick: this.onClick\n                    }, \"Clear\")\n                }\n            }]), t\n        }(s.Component);\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(42)),\n            o = c(n(4)),\n            i = c(n(2)),\n            a = c(n(3)),\n            u = c(n(5)),\n            s = c(n(6)),\n            l = c(n(0));\n        c(n(1)), c(n(12)), n(7);\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n                var t = e.headers;\n                return l.default.createElement(\"div\", null, l.default.createElement(\"h5\", null, \"Response headers\"), l.default.createElement(\"pre\", null, t))\n            },\n            p = function(e) {\n                var t = e.duration;\n                return l.default.createElement(\"div\", null, l.default.createElement(\"h5\", null, \"Request duration\"), l.default.createElement(\"pre\", null, t, \" ms\"))\n            },\n            d = function(e) {\n                function t() {\n                    return (0, i.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).apply(this, arguments))\n                }\n                return (0, s.default)(t, e), (0, a.default)(t, [{\n                    key: \"shouldComponentUpdate\",\n                    value: function(e) {\n                        return this.props.response !== e.response || this.props.path !== e.path || this.props.method !== e.method || this.props.displayRequestDuration !== e.displayRequestDuration\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.response,\n                            n = e.getComponent,\n                            o = e.getConfigs,\n                            i = e.displayRequestDuration,\n                            a = e.specSelectors,\n                            u = e.path,\n                            s = e.method,\n                            c = o().showMutatedRequest ? a.mutatedRequestFor(u, s) : a.requestFor(u, s),\n                            d = t.get(\"status\"),\n                            h = c.get(\"url\"),\n                            v = t.get(\"headers\").toJS(),\n                            m = t.get(\"notDocumented\"),\n                            g = t.get(\"error\"),\n                            y = t.get(\"text\"),\n                            b = t.get(\"duration\"),\n                            _ = (0, r.default)(v),\n                            w = v[\"content-type\"] || v[\"Content-Type\"],\n                            E = n(\"curl\"),\n                            x = n(\"responseBody\"),\n                            S = _.map(function(e) {\n                                return l.default.createElement(\"span\", {\n                                    className: \"headerline\",\n                                    key: e\n                                }, \" \", e, \": \", v[e], \" \")\n                            }),\n                            C = 0 !== S.length;\n                        return l.default.createElement(\"div\", null, c && l.default.createElement(E, {\n                            request: c\n                        }), h && l.default.createElement(\"div\", null, l.default.createElement(\"h4\", null, \"Request URL\"), l.default.createElement(\"div\", {\n                            className: \"request-url\"\n                        }, l.default.createElement(\"pre\", null, h))), l.default.createElement(\"h4\", null, \"Server response\"), l.default.createElement(\"table\", {\n                            className: \"responses-table\"\n                        }, l.default.createElement(\"thead\", null, l.default.createElement(\"tr\", {\n                            className: \"responses-header\"\n                        }, l.default.createElement(\"td\", {\n                            className: \"col col_header response-col_status\"\n                        }, \"Code\"), l.default.createElement(\"td\", {\n                            className: \"col col_header response-col_description\"\n                        }, \"Details\"))), l.default.createElement(\"tbody\", null, l.default.createElement(\"tr\", {\n                            className: \"response\"\n                        }, l.default.createElement(\"td\", {\n                            className: \"col response-col_status\"\n                        }, d, m ? l.default.createElement(\"div\", {\n                            className: \"response-undocumented\"\n                        }, l.default.createElement(\"i\", null, \" Undocumented \")) : null), l.default.createElement(\"td\", {\n                            className: \"col response-col_description\"\n                        }, g ? l.default.createElement(\"span\", null, t.get(\"name\") + \": \" + t.get(\"message\")) : null, y ? l.default.createElement(x, {\n                            content: y,\n                            contentType: w,\n                            url: h,\n                            headers: v,\n                            getComponent: n\n                        }) : null, C ? l.default.createElement(f, {\n                            headers: S\n                        }) : null, i && b ? l.default.createElement(p, {\n                            duration: b\n                        }) : null)))))\n                    }\n                }]), t\n            }(l.default.Component);\n        t.default = d\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = h(n(42)),\n            o = h(n(45)),\n            i = h(n(4)),\n            a = h(n(2)),\n            u = h(n(3)),\n            s = h(n(5)),\n            l = h(n(6)),\n            c = h(n(0)),\n            f = h(n(209)),\n            p = (h(n(1)), n(10)),\n            d = h(n(32));\n\n        function h(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var v = function(e) {\n            function t(e, n) {\n                (0, a.default)(this, t);\n                var r = (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).call(this, e, n));\n                r.getDefinitionUrl = function() {\n                    var e = r.props.specSelectors;\n                    return new f.default(e.url(), d.default.location).toString()\n                };\n                var o = (0, e.getConfigs)().validatorUrl;\n                return r.state = {\n                    url: r.getDefinitionUrl(),\n                    validatorUrl: void 0 === o ? \"https://online.swagger.io/validator\" : o\n                }, r\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    var t = (0, e.getConfigs)().validatorUrl;\n                    this.setState({\n                        url: this.getDefinitionUrl(),\n                        validatorUrl: void 0 === t ? \"https://online.swagger.io/validator\" : t\n                    })\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = (0, this.props.getConfigs)().spec,\n                        t = (0, p.sanitizeUrl)(this.state.validatorUrl);\n                    return \"object\" === (void 0 === e ? \"undefined\" : (0, o.default)(e)) && (0, r.default)(e).length ? null : !this.state.url || !this.state.validatorUrl || this.state.url.indexOf(\"localhost\") >= 0 || this.state.url.indexOf(\"127.0.0.1\") >= 0 ? null : c.default.createElement(\"span\", {\n                        style: {\n                            float: \"right\"\n                        }\n                    }, c.default.createElement(\"a\", {\n                        target: \"_blank\",\n                        rel: \"noopener noreferrer\",\n                        href: t + \"/debug?url=\" + encodeURIComponent(this.state.url)\n                    }, c.default.createElement(m, {\n                        src: t + \"?url=\" + encodeURIComponent(this.state.url),\n                        alt: \"Online validator badge\"\n                    })))\n                }\n            }]), t\n        }(c.default.Component);\n        t.default = v;\n        var m = function(e) {\n            function t(e) {\n                (0, a.default)(this, t);\n                var n = (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).call(this, e));\n                return n.state = {\n                    loaded: !1,\n                    error: !1\n                }, n\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    var e = this,\n                        t = new Image;\n                    t.onload = function() {\n                        e.setState({\n                            loaded: !0\n                        })\n                    }, t.onerror = function() {\n                        e.setState({\n                            error: !0\n                        })\n                    }, t.src = this.props.src\n                }\n            }, {\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    var t = this;\n                    if (e.src !== this.props.src) {\n                        var n = new Image;\n                        n.onload = function() {\n                            t.setState({\n                                loaded: !0\n                            })\n                        }, n.onerror = function() {\n                            t.setState({\n                                error: !0\n                            })\n                        }, n.src = e.src\n                    }\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    return this.state.error ? c.default.createElement(\"img\", {\n                        alt: \"Error\"\n                    }) : this.state.loaded ? c.default.createElement(\"img\", {\n                        src: this.props.src,\n                        alt: this.props.alt\n                    }) : null\n                }\n            }]), t\n        }(c.default.Component)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = c(n(0)),\n            l = (c(n(1)), c(n(7)));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = [\"get\", \"put\", \"post\", \"delete\", \"options\", \"head\", \"patch\"],\n            p = f.concat([\"trace\"]),\n            d = function(e) {\n                function t() {\n                    return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.specSelectors,\n                            n = e.getComponent,\n                            r = e.layoutSelectors,\n                            o = e.layoutActions,\n                            i = e.getConfigs,\n                            a = e.fn,\n                            u = t.taggedOperations(),\n                            c = n(\"OperationContainer\", !0),\n                            d = n(\"OperationTag\"),\n                            h = i().maxDisplayedTags,\n                            v = r.currentFilter();\n                        return v && !0 !== v && (u = a.opsFilter(u, v)), h && !isNaN(h) && h >= 0 && (u = u.slice(0, h)), s.default.createElement(\"div\", null, u.map(function(e, a) {\n                            var u = e.get(\"operations\");\n                            return s.default.createElement(d, {\n                                key: \"operation-\" + a,\n                                tagObj: e,\n                                tag: a,\n                                layoutSelectors: r,\n                                layoutActions: o,\n                                getConfigs: i,\n                                getComponent: n\n                            }, u.map(function(e) {\n                                var n = e.get(\"path\"),\n                                    r = e.get(\"method\"),\n                                    o = l.default.List([\"paths\", n, r]);\n                                return -1 === (t.isOAS3() ? p : f).indexOf(r) ? null : s.default.createElement(c, {\n                                    key: n + \"-\" + r,\n                                    specPath: o,\n                                    op: e,\n                                    path: n,\n                                    method: r,\n                                    tag: a\n                                })\n                            }).toArray())\n                        }).toArray(), u.size < 1 ? s.default.createElement(\"h3\", null, \" No operations defined in spec! \") : null)\n                    }\n                }]), t\n            }(s.default.Component);\n        t.default = d\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(4)),\n            o = f(n(2)),\n            i = f(n(3)),\n            a = f(n(5)),\n            u = f(n(6)),\n            s = f(n(0)),\n            l = (f(n(1)), f(n(12)), f(n(7))),\n            c = n(10);\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.tagObj,\n                        n = e.tag,\n                        r = e.children,\n                        o = e.layoutSelectors,\n                        i = e.layoutActions,\n                        a = e.getConfigs,\n                        u = e.getComponent,\n                        l = a(),\n                        f = l.docExpansion,\n                        p = l.deepLinking,\n                        d = p && \"false\" !== p,\n                        h = u(\"Collapse\"),\n                        v = u(\"Markdown\"),\n                        m = u(\"DeepLink\"),\n                        g = u(\"Link\"),\n                        y = t.getIn([\"tagDetails\", \"description\"], null),\n                        b = t.getIn([\"tagDetails\", \"externalDocs\", \"description\"]),\n                        _ = t.getIn([\"tagDetails\", \"externalDocs\", \"url\"]),\n                        w = [\"operations-tag\", (0, c.createDeepLinkPath)(n)],\n                        E = o.isShown(w, \"full\" === f || \"list\" === f);\n                    return s.default.createElement(\"div\", {\n                        className: E ? \"opblock-tag-section is-open\" : \"opblock-tag-section\"\n                    }, s.default.createElement(\"h4\", {\n                        onClick: function() {\n                            return i.show(w, !E)\n                        },\n                        className: y ? \"opblock-tag\" : \"opblock-tag no-desc\",\n                        id: w.join(\"-\")\n                    }, s.default.createElement(m, {\n                        enabled: d,\n                        isShown: E,\n                        path: n,\n                        text: n\n                    }), y ? s.default.createElement(\"small\", null, s.default.createElement(v, {\n                        source: y\n                    })) : s.default.createElement(\"small\", null), s.default.createElement(\"div\", null, b ? s.default.createElement(\"small\", null, b, _ ? \": \" : null, _ ? s.default.createElement(g, {\n                        href: (0, c.sanitizeUrl)(_),\n                        onClick: function(e) {\n                            return e.stopPropagation()\n                        },\n                        target: \"_blank\"\n                    }, _) : null) : null), s.default.createElement(\"button\", {\n                        className: \"expand-operation\",\n                        title: E ? \"Collapse operation\" : \"Expand operation\",\n                        onClick: function() {\n                            return i.show(w, !E)\n                        }\n                    }, s.default.createElement(\"svg\", {\n                        className: \"arrow\",\n                        width: \"20\",\n                        height: \"20\"\n                    }, s.default.createElement(\"use\", {\n                        href: E ? \"#large-arrow-down\" : \"#large-arrow\",\n                        xlinkHref: E ? \"#large-arrow-down\" : \"#large-arrow\"\n                    })))), s.default.createElement(h, {\n                        isOpened: E\n                    }, r))\n                }\n            }]), t\n        }(s.default.Component);\n        p.defaultProps = {\n            tagObj: l.default.fromJS({}),\n            tag: \"\"\n        }, t.default = p\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(4)),\n            o = p(n(2)),\n            i = p(n(3)),\n            a = p(n(5)),\n            u = p(n(6)),\n            s = n(0),\n            l = p(s),\n            c = (p(n(1)), n(10)),\n            f = n(7);\n        p(n(12));\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specPath,\n                        r = e.response,\n                        o = e.request,\n                        i = e.toggleShown,\n                        a = e.onTryoutClick,\n                        u = e.onCancelClick,\n                        s = e.onExecute,\n                        f = e.fn,\n                        p = e.getComponent,\n                        d = e.getConfigs,\n                        h = e.specActions,\n                        v = e.specSelectors,\n                        m = e.authActions,\n                        g = e.authSelectors,\n                        y = e.oas3Actions,\n                        b = e.oas3Selectors,\n                        _ = this.props.operation,\n                        w = _.toJS(),\n                        E = w.deprecated,\n                        x = w.isShown,\n                        S = w.path,\n                        C = w.method,\n                        k = w.op,\n                        A = w.tag,\n                        O = w.operationId,\n                        P = w.allowTryItOut,\n                        T = w.displayRequestDuration,\n                        M = w.tryItOutEnabled,\n                        I = w.executeInProgress,\n                        j = k.description,\n                        N = k.externalDocs,\n                        R = k.schemes,\n                        D = _.getIn([\"op\"]),\n                        L = D.get(\"responses\"),\n                        U = D.get(\"produces\"),\n                        q = (0, c.getList)(D, [\"parameters\"]),\n                        F = v.operationScheme(S, C),\n                        z = [\"operations\", A, O],\n                        B = (0, c.getExtensions)(D),\n                        V = p(\"responses\"),\n                        H = p(\"parameters\"),\n                        W = p(\"execute\"),\n                        J = p(\"clear\"),\n                        Y = p(\"Collapse\"),\n                        K = p(\"Markdown\"),\n                        G = p(\"schemes\"),\n                        $ = p(\"OperationServers\"),\n                        Z = p(\"OperationExt\"),\n                        X = p(\"OperationSummary\"),\n                        Q = p(\"Link\"),\n                        ee = d().showExtensions;\n                    if (L && r && r.size > 0) {\n                        var te = !L.get(String(r.get(\"status\"))) && !L.get(\"default\");\n                        r = r.set(\"notDocumented\", te)\n                    }\n                    var ne = [S, C];\n                    return l.default.createElement(\"div\", {\n                        className: E ? \"opblock opblock-deprecated\" : x ? \"opblock opblock-\" + C + \" is-open\" : \"opblock opblock-\" + C,\n                        id: (0, c.createDeepLinkPath)(z.join(\"-\"))\n                    }, l.default.createElement(X, {\n                        operationProps: _,\n                        toggleShown: i,\n                        getComponent: p,\n                        authActions: m,\n                        authSelectors: g,\n                        specPath: t\n                    }), l.default.createElement(Y, {\n                        isOpened: x\n                    }, l.default.createElement(\"div\", {\n                        className: \"opblock-body\"\n                    }, D && D.size || null === D ? null : l.default.createElement(\"img\", {\n                        height: \"32px\",\n                        width: \"32px\",\n                        src: n(411),\n                        className: \"opblock-loading-animation\"\n                    }), E && l.default.createElement(\"h4\", {\n                        className: \"opblock-title_normal\"\n                    }, \" Warning: Deprecated\"), j && l.default.createElement(\"div\", {\n                        className: \"opblock-description-wrapper\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"opblock-description\"\n                    }, l.default.createElement(K, {\n                        source: j\n                    }))), N && N.url ? l.default.createElement(\"div\", {\n                        className: \"opblock-external-docs-wrapper\"\n                    }, l.default.createElement(\"h4\", {\n                        className: \"opblock-title_normal\"\n                    }, \"Find more details\"), l.default.createElement(\"div\", {\n                        className: \"opblock-external-docs\"\n                    }, l.default.createElement(\"span\", {\n                        className: \"opblock-external-docs__description\"\n                    }, l.default.createElement(K, {\n                        source: N.description\n                    })), l.default.createElement(Q, {\n                        target: \"_blank\",\n                        className: \"opblock-external-docs__link\",\n                        href: (0, c.sanitizeUrl)(N.url)\n                    }, N.url))) : null, D && D.size ? l.default.createElement(H, {\n                        parameters: q,\n                        specPath: t.push(\"parameters\"),\n                        operation: D,\n                        onChangeKey: ne,\n                        onTryoutClick: a,\n                        onCancelClick: u,\n                        tryItOutEnabled: M,\n                        allowTryItOut: P,\n                        fn: f,\n                        getComponent: p,\n                        specActions: h,\n                        specSelectors: v,\n                        pathMethod: [S, C],\n                        getConfigs: d\n                    }) : null, M ? l.default.createElement($, {\n                        getComponent: p,\n                        path: S,\n                        method: C,\n                        operationServers: D.get(\"servers\"),\n                        pathServers: v.paths().getIn([S, \"servers\"]),\n                        getSelectedServer: b.selectedServer,\n                        setSelectedServer: y.setSelectedServer,\n                        setServerVariableValue: y.setServerVariableValue,\n                        getServerVariable: b.serverVariableValue,\n                        getEffectiveServerValue: b.serverEffectiveValue\n                    }) : null, M && P && R && R.size ? l.default.createElement(\"div\", {\n                        className: \"opblock-schemes\"\n                    }, l.default.createElement(G, {\n                        schemes: R,\n                        path: S,\n                        method: C,\n                        specActions: h,\n                        currentScheme: F\n                    })) : null, l.default.createElement(\"div\", {\n                        className: M && r && P ? \"btn-group\" : \"execute-wrapper\"\n                    }, M && P ? l.default.createElement(W, {\n                        operation: D,\n                        specActions: h,\n                        specSelectors: v,\n                        path: S,\n                        method: C,\n                        onExecute: s\n                    }) : null, M && r && P ? l.default.createElement(J, {\n                        specActions: h,\n                        path: S,\n                        method: C\n                    }) : null), I ? l.default.createElement(\"div\", {\n                        className: \"loading-container\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"loading\"\n                    })) : null, L ? l.default.createElement(V, {\n                        responses: L,\n                        request: o,\n                        tryItOutResponse: r,\n                        getComponent: p,\n                        getConfigs: d,\n                        specSelectors: v,\n                        oas3Actions: y,\n                        specActions: h,\n                        produces: U,\n                        producesValue: v.currentProducesFor([S, C]),\n                        specPath: t.push(\"responses\"),\n                        path: S,\n                        method: C,\n                        displayRequestDuration: T,\n                        fn: f\n                    }) : null, ee && B.size ? l.default.createElement(Z, {\n                        extensions: B,\n                        getComponent: p\n                    }) : null)))\n                }\n            }]), t\n        }(s.PureComponent);\n        d.defaultProps = {\n            operation: null,\n            response: null,\n            request: null,\n            specPath: (0, f.List)(),\n            summary: \"\"\n        }, t.default = d\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(4)),\n            o = f(n(2)),\n            i = f(n(3)),\n            a = f(n(5)),\n            u = f(n(6)),\n            s = n(0),\n            l = f(s),\n            c = (f(n(1)), n(7));\n        f(n(12));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.toggleShown,\n                        n = e.getComponent,\n                        r = e.authActions,\n                        o = e.authSelectors,\n                        i = e.operationProps,\n                        a = e.specPath,\n                        u = i.toJS(),\n                        s = u.summary,\n                        c = u.isAuthorized,\n                        f = u.method,\n                        p = u.op,\n                        d = u.showSummary,\n                        h = u.operationId,\n                        v = u.originalOperationId,\n                        m = u.displayOperationId,\n                        g = p.summary,\n                        y = i.get(\"security\"),\n                        b = n(\"authorizeOperationBtn\"),\n                        _ = n(\"OperationSummaryMethod\"),\n                        w = n(\"OperationSummaryPath\"),\n                        E = n(\"JumpToPath\", !0);\n                    return l.default.createElement(\"div\", {\n                        className: \"opblock-summary opblock-summary-\" + f,\n                        onClick: t\n                    }, l.default.createElement(_, {\n                        method: f\n                    }), l.default.createElement(w, {\n                        getComponent: n,\n                        operationProps: i,\n                        specPath: a\n                    }), d ? l.default.createElement(\"div\", {\n                        className: \"opblock-summary-description\"\n                    }, g || s) : null, m && (v || h) ? l.default.createElement(\"span\", {\n                        className: \"opblock-summary-operation-id\"\n                    }, v || h) : null, y && y.count() ? l.default.createElement(b, {\n                        isAuthorized: c,\n                        onClick: function() {\n                            var e = o.definitionsForRequirements(y);\n                            r.showDefinitions(e)\n                        }\n                    }) : null, l.default.createElement(E, {\n                        path: a\n                    }))\n                }\n            }]), t\n        }(s.PureComponent);\n        p.defaultProps = {\n            operationProps: null,\n            specPath: (0, c.List)(),\n            summary: \"\"\n        }, t.default = p\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = n(0),\n            l = c(s);\n        c(n(1)), n(7);\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props.method;\n                    return l.default.createElement(\"span\", {\n                        className: \"opblock-summary-method\"\n                    }, e.toUpperCase())\n                }\n            }]), t\n        }(s.PureComponent);\n        f.defaultProps = {\n            operationProps: null\n        }, t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(4)),\n            o = f(n(2)),\n            i = f(n(3)),\n            a = f(n(5)),\n            u = f(n(6)),\n            s = n(0),\n            l = f(s),\n            c = (f(n(1)), n(7), n(10));\n        f(n(12));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.operationProps.toJS(),\n                        r = n.deprecated,\n                        o = n.isShown,\n                        i = n.path,\n                        a = n.tag,\n                        u = n.operationId,\n                        s = n.isDeepLinkingEnabled,\n                        f = t(\"DeepLink\");\n                    return l.default.createElement(\"span\", {\n                        className: r ? \"opblock-summary-path__deprecated\" : \"opblock-summary-path\"\n                    }, l.default.createElement(f, {\n                        enabled: s,\n                        isShown: o,\n                        path: (0, c.createDeepLinkPath)(a + \"/\" + u),\n                        text: i\n                    }))\n                }\n            }]), t\n        }(s.PureComponent);\n        t.default = p\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.OperationExt = void 0;\n        var r = i(n(18)),\n            o = i(n(0));\n        i(n(1));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var a = t.OperationExt = function(e) {\n            var t = e.extensions,\n                n = (0, e.getComponent)(\"OperationExtRow\");\n            return o.default.createElement(\"div\", {\n                className: \"opblock-section\"\n            }, o.default.createElement(\"div\", {\n                className: \"opblock-section-header\"\n            }, o.default.createElement(\"h4\", null, \"Extensions\")), o.default.createElement(\"div\", {\n                className: \"table-container\"\n            }, o.default.createElement(\"table\", null, o.default.createElement(\"thead\", null, o.default.createElement(\"tr\", null, o.default.createElement(\"td\", {\n                className: \"col col_header\"\n            }, \"Field\"), o.default.createElement(\"td\", {\n                className: \"col col_header\"\n            }, \"Value\"))), o.default.createElement(\"tbody\", null, t.entrySeq().map(function(e) {\n                var t = (0, r.default)(e, 2),\n                    i = t[0],\n                    a = t[1];\n                return o.default.createElement(n, {\n                    key: i + \"-\" + a,\n                    xKey: i,\n                    xVal: a\n                })\n            })))))\n        };\n        t.default = a\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.OperationExtRow = void 0;\n        var r = i(n(41)),\n            o = i(n(0));\n        i(n(1));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var a = t.OperationExtRow = function(e) {\n            var t = e.xKey,\n                n = e.xVal,\n                i = n ? n.toJS ? n.toJS() : n : null;\n            return o.default.createElement(\"tr\", null, o.default.createElement(\"td\", null, t), o.default.createElement(\"td\", null, (0, r.default)(i)))\n        };\n        t.default = a\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(4)),\n            o = p(n(2)),\n            i = p(n(3)),\n            a = p(n(5)),\n            u = p(n(6)),\n            s = n(0),\n            l = p(s),\n            c = (p(n(1)), n(10)),\n            f = p(n(960));\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.initializeComponent = function(e) {\n                    i.el = e\n                }, i.downloadText = function() {\n                    (0, f.default)(i.props.value, i.props.fileName || \"response.txt\")\n                }, i.preventYScrollingBeyondElement = function(e) {\n                    var t = e.target,\n                        n = e.nativeEvent.deltaY,\n                        r = t.scrollHeight,\n                        o = t.offsetHeight,\n                        i = t.scrollTop;\n                    r > o && (0 === i && n < 0 || o + i >= r && n > 0) && e.preventDefault()\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    (0, c.highlight)(this.el)\n                }\n            }, {\n                key: \"componentDidUpdate\",\n                value: function() {\n                    (0, c.highlight)(this.el)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.value,\n                        n = e.className,\n                        r = e.downloadable;\n                    return n = n || \"\", l.default.createElement(\"div\", {\n                        className: \"highlight-code\"\n                    }, r ? l.default.createElement(\"div\", {\n                        className: \"download-contents\",\n                        onClick: this.downloadText\n                    }, \"Download\") : null, l.default.createElement(\"pre\", {\n                        ref: this.initializeComponent,\n                        onWheel: this.preventYScrollingBeyondElement,\n                        className: n + \" microlight\"\n                    }, t))\n                }\n            }]), t\n        }(s.Component);\n        t.default = d\n    }, function(e, t) {\n        e.exports = function(e, t, n) {\n            var r = new Blob([e], {\n                type: n || \"application/octet-stream\"\n            });\n            if (void 0 !== window.navigator.msSaveBlob) window.navigator.msSaveBlob(r, t);\n            else {\n                var o = window.URL.createObjectURL(r),\n                    i = document.createElement(\"a\");\n                i.style.display = \"none\", i.href = o, i.setAttribute(\"download\", t), void 0 === i.download && i.setAttribute(\"target\", \"_blank\"), document.body.appendChild(i), i.click(), document.body.removeChild(i), window.URL.revokeObjectURL(o)\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(18)),\n            o = p(n(4)),\n            i = p(n(2)),\n            a = p(n(3)),\n            u = p(n(5)),\n            s = p(n(6)),\n            l = p(n(0)),\n            c = n(7),\n            f = (p(n(1)), p(n(12)), n(10));\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = function(e) {\n            function t() {\n                var e, n, r, a;\n                (0, i.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = r = (0, u.default)(this, (e = t.__proto__ || (0, o.default)(t)).call.apply(e, [this].concat(l))), r.onChangeProducesWrapper = function(e) {\n                    return r.props.specActions.changeProducesValue([r.props.path, r.props.method], e)\n                }, r.onResponseContentTypeChange = function(e) {\n                    var t = e.controlsAcceptHeader,\n                        n = e.value,\n                        o = r.props,\n                        i = o.oas3Actions,\n                        a = o.path,\n                        u = o.method;\n                    t && i.setResponseContentType({\n                        value: n,\n                        path: a,\n                        method: u\n                    })\n                }, a = n, (0, u.default)(r, a)\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"shouldComponentUpdate\",\n                value: function(e) {\n                    return this.props.tryItOutResponse !== e.tryItOutResponse || this.props.responses !== e.responses || this.props.produces !== e.produces || this.props.producesValue !== e.producesValue || this.props.displayRequestDuration !== e.displayRequestDuration || this.props.path !== e.path || this.props.method !== e.method\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        n = this.props,\n                        o = n.responses,\n                        i = n.tryItOutResponse,\n                        a = n.getComponent,\n                        u = n.getConfigs,\n                        s = n.specSelectors,\n                        c = n.fn,\n                        p = n.producesValue,\n                        d = n.displayRequestDuration,\n                        h = n.specPath,\n                        v = (0, f.defaultStatusCode)(o),\n                        m = a(\"contentType\"),\n                        g = a(\"liveResponse\"),\n                        y = a(\"response\"),\n                        b = this.props.produces && this.props.produces.size ? this.props.produces : t.defaultProps.produces,\n                        _ = s.isOAS3() ? (0, f.getAcceptControllingResponse)(o) : null;\n                    return l.default.createElement(\"div\", {\n                        className: \"responses-wrapper\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"opblock-section-header\"\n                    }, l.default.createElement(\"h4\", null, \"Responses\"), s.isOAS3() ? null : l.default.createElement(\"label\", null, l.default.createElement(\"span\", null, \"Response content type\"), l.default.createElement(m, {\n                        value: p,\n                        onChange: this.onChangeProducesWrapper,\n                        contentTypes: b,\n                        className: \"execute-content-type\"\n                    }))), l.default.createElement(\"div\", {\n                        className: \"responses-inner\"\n                    }, i ? l.default.createElement(\"div\", null, l.default.createElement(g, {\n                        response: i,\n                        getComponent: a,\n                        getConfigs: u,\n                        specSelectors: s,\n                        path: this.props.path,\n                        method: this.props.method,\n                        displayRequestDuration: d\n                    }), l.default.createElement(\"h4\", null, \"Responses\")) : null, l.default.createElement(\"table\", {\n                        className: \"responses-table\"\n                    }, l.default.createElement(\"thead\", null, l.default.createElement(\"tr\", {\n                        className: \"responses-header\"\n                    }, l.default.createElement(\"td\", {\n                        className: \"col col_header response-col_status\"\n                    }, \"Code\"), l.default.createElement(\"td\", {\n                        className: \"col col_header response-col_description\"\n                    }, \"Description\"), s.isOAS3() ? l.default.createElement(\"td\", {\n                        className: \"col col_header response-col_links\"\n                    }, \"Links\") : null)), l.default.createElement(\"tbody\", null, o.entrySeq().map(function(t) {\n                        var n = (0, r.default)(t, 2),\n                            o = n[0],\n                            f = n[1],\n                            d = i && i.get(\"status\") == o ? \"response_current\" : \"\";\n                        return l.default.createElement(y, {\n                            key: o,\n                            specPath: h.push(o),\n                            isDefault: v === o,\n                            fn: c,\n                            className: d,\n                            code: o,\n                            response: f,\n                            specSelectors: s,\n                            controlsAcceptHeader: f === _,\n                            onContentTypeChange: e.onResponseContentTypeChange,\n                            contentType: p,\n                            getConfigs: u,\n                            getComponent: a\n                        })\n                    }).toArray()))))\n                }\n            }]), t\n        }(l.default.Component);\n        d.defaultProps = {\n            tryItOutResponse: null,\n            produces: (0, c.fromJS)([\"application/json\"]),\n            displayRequestDuration: !1\n        }, t.default = d\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = d(n(4)),\n            o = d(n(2)),\n            i = d(n(3)),\n            a = d(n(5)),\n            u = d(n(6)),\n            s = d(n(18)),\n            l = d(n(0)),\n            c = (d(n(1)), d(n(12)), d(n(113))),\n            f = n(7),\n            p = n(10);\n\n        function d(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var h = function(e) {\n            function t(e, n) {\n                (0, o.default)(this, t);\n                var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                return i._onContentTypeChange = function(e) {\n                    var t = i.props,\n                        n = t.onContentTypeChange,\n                        r = t.controlsAcceptHeader;\n                    i.setState({\n                        responseContentType: e\n                    }), n({\n                        value: e,\n                        controlsAcceptHeader: r\n                    })\n                }, i.state = {\n                    responseContentType: \"\"\n                }, i\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e, t, n, r, o = this.props,\n                        i = o.code,\n                        a = o.response,\n                        u = o.className,\n                        d = o.specPath,\n                        h = o.fn,\n                        v = o.getComponent,\n                        m = o.getConfigs,\n                        g = o.specSelectors,\n                        y = o.contentType,\n                        b = o.controlsAcceptHeader,\n                        _ = h.inferSchema,\n                        w = g.isOAS3,\n                        E = a.get(\"headers\"),\n                        x = a.get(\"examples\"),\n                        S = a.get(\"links\"),\n                        C = v(\"headers\"),\n                        k = v(\"highlightCode\"),\n                        A = v(\"modelExample\"),\n                        O = v(\"Markdown\"),\n                        P = v(\"operationLink\"),\n                        T = v(\"contentType\"),\n                        M = this.state.responseContentType || y;\n                    if (w()) {\n                        var I = a.getIn([\"content\", M], (0, f.Map)({})),\n                            j = I.get(\"schema\", (0, f.Map)({}));\n                        t = void 0 !== I.get(\"example\") ? (0, p.stringify)(I.get(\"example\")) : (0, p.getSampleSchema)(j.toJS(), this.state.responseContentType, {\n                            includeReadOnly: !0\n                        }), e = j ? t : null, n = j ? _(j.toJS()) : null, r = j ? (0, f.List)([\"content\", this.state.responseContentType, \"schema\"]) : d\n                    } else n = _(a.toJS()), r = a.has(\"schema\") ? d.push(\"schema\") : d, e = n ? (0, p.getSampleSchema)(n, M, {\n                        includeReadOnly: !0,\n                        includeWriteOnly: !0\n                    }) : null;\n                    x && (x = x.map(function(e) {\n                        return e.set ? e.set(\"$$ref\", void 0) : e\n                    }));\n                    var N = function(e, t, n) {\n                        return t && t.size ? t.entrySeq().map(function(e) {\n                            var t = (0, s.default)(e, 2),\n                                r = t[0],\n                                o = t[1],\n                                i = (0, p.stringify)(o);\n                            return l.default.createElement(\"div\", {\n                                key: r\n                            }, l.default.createElement(\"h5\", null, r), l.default.createElement(n, {\n                                className: \"example\",\n                                value: i\n                            }))\n                        }).toArray() : e ? l.default.createElement(\"div\", null, l.default.createElement(n, {\n                            className: \"example\",\n                            value: e\n                        })) : null\n                    }(e, x, k);\n                    return l.default.createElement(\"tr\", {\n                        className: \"response \" + (u || \"\"),\n                        \"data-code\": i\n                    }, l.default.createElement(\"td\", {\n                        className: \"col response-col_status\"\n                    }, i), l.default.createElement(\"td\", {\n                        className: \"col response-col_description\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"response-col_description__inner\"\n                    }, l.default.createElement(O, {\n                        source: a.get(\"description\")\n                    })), w ? l.default.createElement(\"div\", {\n                        className: (0, c.default)(\"response-content-type\", {\n                            \"controls-accept-header\": b\n                        })\n                    }, l.default.createElement(T, {\n                        value: this.state.responseContentType,\n                        contentTypes: a.get(\"content\") ? a.get(\"content\").keySeq() : (0, f.Seq)(),\n                        onChange: this._onContentTypeChange\n                    }), b ? l.default.createElement(\"small\", null, \"Controls \", l.default.createElement(\"code\", null, \"Accept\"), \" header.\") : null) : null, N ? l.default.createElement(A, {\n                        specPath: r,\n                        getComponent: v,\n                        getConfigs: m,\n                        specSelectors: g,\n                        schema: (0, p.fromJSOrdered)(n),\n                        example: N\n                    }) : null, E ? l.default.createElement(C, {\n                        headers: E,\n                        getComponent: v\n                    }) : null), g.isOAS3() ? l.default.createElement(\"td\", {\n                        className: \"col response-col_links\"\n                    }, S ? S.toSeq().map(function(e, t) {\n                        return l.default.createElement(P, {\n                            key: t,\n                            name: t,\n                            link: e,\n                            getComponent: v\n                        })\n                    }) : l.default.createElement(\"i\", null, \"No links\")) : null)\n                }\n            }]), t\n        }(l.default.Component);\n        h.defaultProps = {\n            response: (0, f.fromJS)({}),\n            onContentTypeChange: function() {}\n        }, t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = h(n(41)),\n            o = h(n(4)),\n            i = h(n(2)),\n            a = h(n(3)),\n            u = h(n(5)),\n            s = h(n(6)),\n            l = h(n(0)),\n            c = (h(n(1)), h(n(964))),\n            f = h(n(966)),\n            p = n(10),\n            d = h(n(32));\n\n        function h(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var v = function(e) {\n            function t() {\n                var e, n, r, a;\n                (0, i.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = r = (0, u.default)(this, (e = t.__proto__ || (0, o.default)(t)).call.apply(e, [this].concat(l))), r.state = {\n                    parsedContent: null\n                }, r.updateParsedContent = function(e) {\n                    var t = r.props.content;\n                    if (e !== t)\n                        if (t && t instanceof Blob) {\n                            var n = new FileReader;\n                            n.onload = function() {\n                                r.setState({\n                                    parsedContent: n.result\n                                })\n                            }, n.readAsText(t)\n                        } else r.setState({\n                            parsedContent: t.toString()\n                        })\n                }, a = n, (0, u.default)(r, a)\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    this.updateParsedContent(null)\n                }\n            }, {\n                key: \"componentDidUpdate\",\n                value: function(e) {\n                    this.updateParsedContent(e.content)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.content,\n                        n = e.contentType,\n                        o = e.url,\n                        i = e.headers,\n                        a = void 0 === i ? {} : i,\n                        u = e.getComponent,\n                        s = this.state.parsedContent,\n                        h = u(\"highlightCode\"),\n                        v = \"response_\" + (new Date).getTime(),\n                        m = void 0,\n                        g = void 0;\n                    if (o = o || \"\", /^application\\/octet-stream/i.test(n) || a[\"Content-Disposition\"] && /attachment/i.test(a[\"Content-Disposition\"]) || a[\"content-disposition\"] && /attachment/i.test(a[\"content-disposition\"]) || a[\"Content-Description\"] && /File Transfer/i.test(a[\"Content-Description\"]) || a[\"content-description\"] && /File Transfer/i.test(a[\"content-description\"]))\n                        if (\"Blob\" in window) {\n                            var y = n || \"text/html\",\n                                b = t instanceof Blob ? t : new Blob([t], {\n                                    type: y\n                                }),\n                                _ = window.URL.createObjectURL(b),\n                                w = [y, o.substr(o.lastIndexOf(\"/\") + 1), _].join(\":\"),\n                                E = a[\"content-disposition\"] || a[\"Content-Disposition\"];\n                            if (void 0 !== E) {\n                                var x = (0, p.extractFileNameFromContentDispositionHeader)(E);\n                                null !== x && (w = x)\n                            }\n                            g = d.default.navigator && d.default.navigator.msSaveOrOpenBlob ? l.default.createElement(\"div\", null, l.default.createElement(\"a\", {\n                                href: _,\n                                onClick: function() {\n                                    return d.default.navigator.msSaveOrOpenBlob(b, w)\n                                }\n                            }, \"Download file\")) : l.default.createElement(\"div\", null, l.default.createElement(\"a\", {\n                                href: _,\n                                download: w\n                            }, \"Download file\"))\n                        } else g = l.default.createElement(\"pre\", null, \"Download headers detected but your browser does not support downloading binary via XHR (Blob).\");\n                    else if (/json/i.test(n)) {\n                        try {\n                            m = (0, r.default)(JSON.parse(t), null, \"  \")\n                        } catch (e) {\n                            m = \"can't parse JSON.  Raw result:\\n\\n\" + t\n                        }\n                        g = l.default.createElement(h, {\n                            downloadable: !0,\n                            fileName: v + \".json\",\n                            value: m\n                        })\n                    } else /xml/i.test(n) ? (m = (0, c.default)(t, {\n                        textNodesOnSameLine: !0,\n                        indentor: \"  \"\n                    }), g = l.default.createElement(h, {\n                        downloadable: !0,\n                        fileName: v + \".xml\",\n                        value: m\n                    })) : g = \"text/html\" === (0, f.default)(n) || /text\\/plain/.test(n) ? l.default.createElement(h, {\n                        downloadable: !0,\n                        fileName: v + \".html\",\n                        value: t\n                    }) : /^image\\//i.test(n) ? n.includes(\"svg\") ? l.default.createElement(\"div\", null, \" \", t, \" \") : l.default.createElement(\"img\", {\n                        style: {\n                            maxWidth: \"100%\"\n                        },\n                        src: window.URL.createObjectURL(t)\n                    }) : /^audio\\//i.test(n) ? l.default.createElement(\"pre\", null, l.default.createElement(\"audio\", {\n                        controls: !0\n                    }, l.default.createElement(\"source\", {\n                        src: o,\n                        type: n\n                    }))) : \"string\" == typeof t ? l.default.createElement(h, {\n                        downloadable: !0,\n                        fileName: v + \".txt\",\n                        value: t\n                    }) : t.size > 0 ? s ? l.default.createElement(\"div\", null, l.default.createElement(\"p\", {\n                        className: \"i\"\n                    }, \"Unrecognized response type; displaying content as text.\"), l.default.createElement(h, {\n                        downloadable: !0,\n                        fileName: v + \".txt\",\n                        value: s\n                    })) : l.default.createElement(\"p\", {\n                        className: \"i\"\n                    }, \"Unrecognized response type; unable to display.\") : null;\n                    return g ? l.default.createElement(\"div\", null, l.default.createElement(\"h5\", null, \"Response body\"), g) : null\n                }\n            }]), t\n        }(l.default.PureComponent);\n        t.default = v\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(965),\n            o = function(e) {\n                return e.split(/(<\\/?[^>]+>)/g).filter(function(e) {\n                    return \"\" !== e.trim()\n                })\n            },\n            i = function(e) {\n                return /<\\/+[^>]+>/.test(e)\n            },\n            a = function(e) {\n                return /<[^>]+\\/>/.test(e)\n            },\n            u = function(e) {\n                return function(e) {\n                    return /<[^>!]+>/.test(e)\n                }(e) && !i(e) && !a(e)\n            };\n        e.exports = function(e) {\n            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                n = t.indentor,\n                s = t.textNodesOnSameLine,\n                l = 0,\n                c = [];\n            n = n || \"    \";\n            var f, p = (f = e, o(f).map(function(e) {\n                return {\n                    value: e,\n                    type: (t = e, i(t) ? \"ClosingTag\" : u(t) ? \"OpeningTag\" : a(t) ? \"SelfClosingTag\" : \"Text\")\n                };\n                var t\n            })).map(function(e, t, o) {\n                var i = e.value,\n                    a = e.type;\n                \"ClosingTag\" === a && l--;\n                var u = r(n, l),\n                    f = u + i;\n                if (\"OpeningTag\" === a && l++, s) {\n                    var p = o[t - 1],\n                        d = o[t - 2];\n                    \"ClosingTag\" === a && \"Text\" === p.type && \"OpeningTag\" === d.type && (f = \"\" + u + d.value + p.value + i, c.push(t - 2, t - 1))\n                }\n                return f\n            });\n            return c.forEach(function(e) {\n                return p[e] = null\n            }), p.filter(function(e) {\n                return !!e\n            }).join(\"\\n\")\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        /*!\n         * repeat-string <https://github.com/jonschlinkert/repeat-string>\n         *\n         * Copyright (c) 2014-2015, Jon Schlinkert.\n         * Licensed under the MIT License.\n         */\n        var r, o = \"\";\n        e.exports = function(e, t) {\n            if (\"string\" != typeof e) throw new TypeError(\"expected a string\");\n            if (1 === t) return e;\n            if (2 === t) return e + e;\n            var n = e.length * t;\n            if (r !== e || void 0 === r) r = e, o = \"\";\n            else if (o.length >= n) return o.substr(0, n);\n            for (; n > o.length && t > 1;) 1 & t && (o += e), t >>= 1, e += e;\n            return o = (o += e).substr(0, n)\n        }\n    }, function(e, t, n) {\n        var r = n(61);\n        e.exports = function(e) {\n            return r(e).toLowerCase()\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(4)),\n            o = f(n(2)),\n            i = f(n(3)),\n            a = f(n(5)),\n            u = f(n(6)),\n            s = n(0),\n            l = f(s),\n            c = (f(n(1)), f(n(12)), f(n(7)));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onChange = function(e, t, n) {\n                    var r = i.props;\n                    (0, r.specActions.changeParamByIdentity)(r.onChangeKey, e, t, n)\n                }, i.onChangeConsumesWrapper = function(e) {\n                    var t = i.props;\n                    (0, t.specActions.changeConsumesValue)(t.onChangeKey, e)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        t = this.props,\n                        n = t.onTryoutClick,\n                        r = t.onCancelClick,\n                        o = t.parameters,\n                        i = t.allowTryItOut,\n                        a = t.tryItOutEnabled,\n                        u = t.specPath,\n                        s = t.fn,\n                        f = t.getComponent,\n                        p = t.getConfigs,\n                        d = t.specSelectors,\n                        h = t.specActions,\n                        v = t.pathMethod,\n                        m = f(\"parameterRow\"),\n                        g = f(\"TryItOutButton\"),\n                        y = a && i;\n                    return l.default.createElement(\"div\", {\n                        className: \"opblock-section\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"opblock-section-header\"\n                    }, l.default.createElement(\"div\", {\n                        className: \"tab-header\"\n                    }, l.default.createElement(\"h4\", {\n                        className: \"opblock-title\"\n                    }, \"Parameters\")), i ? l.default.createElement(g, {\n                        enabled: a,\n                        onCancelClick: r,\n                        onTryoutClick: n\n                    }) : null), o.count() ? l.default.createElement(\"div\", {\n                        className: \"table-container\"\n                    }, l.default.createElement(\"table\", {\n                        className: \"parameters\"\n                    }, l.default.createElement(\"thead\", null, l.default.createElement(\"tr\", null, l.default.createElement(\"th\", {\n                        className: \"col col_header parameters-col_name\"\n                    }, \"Name\"), l.default.createElement(\"th\", {\n                        className: \"col col_header parameters-col_description\"\n                    }, \"Description\"))), l.default.createElement(\"tbody\", null, function(e, t) {\n                        return e.valueSeq().filter(c.default.Map.isMap).map(t)\n                    }(o, function(t, n) {\n                        return l.default.createElement(m, {\n                            fn: s,\n                            specPath: u.push(n.toString()),\n                            getComponent: f,\n                            getConfigs: p,\n                            rawParam: t,\n                            param: d.parameterWithMetaByIdentity(v, t),\n                            key: t.get(\"in\") + \".\" + t.get(\"name\"),\n                            onChange: e.onChange,\n                            onChangeConsumes: e.onChangeConsumesWrapper,\n                            specSelectors: d,\n                            specActions: h,\n                            pathMethod: v,\n                            isExecute: y\n                        })\n                    }).toArray()))) : l.default.createElement(\"div\", {\n                        className: \"opblock-description-wrapper\"\n                    }, l.default.createElement(\"p\", null, \"No parameters\")))\n                }\n            }]), t\n        }(s.Component);\n        p.defaultProps = {\n            onTryoutClick: Function.prototype,\n            onCancelClick: Function.prototype,\n            tryItOutEnabled: !1,\n            allowTryItOut: !0,\n            onChangeKey: [],\n            specPath: []\n        }, t.default = p\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.ParameterExt = void 0;\n        var r = o(n(0));\n        o(n(1));\n\n        function o(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var i = t.ParameterExt = function(e) {\n            var t = e.xKey,\n                n = e.xVal;\n            return r.default.createElement(\"div\", {\n                className: \"parameter__extension\"\n            }, t, \": \", String(n))\n        };\n        t.default = i\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.ParameterIncludeEmpty = void 0;\n        var r = i(n(0)),\n            o = i(n(113));\n        i(n(1)), i(n(12));\n\n        function i(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var a = t.ParameterIncludeEmpty = function(e) {\n            var t = e.param,\n                n = e.isIncluded,\n                i = e.onChange,\n                a = e.isDisabled;\n            return t.get(\"allowEmptyValue\") ? r.default.createElement(\"div\", {\n                className: (0, o.default)(\"parameter__empty_value_toggle\", {\n                    disabled: a\n                })\n            }, r.default.createElement(\"input\", {\n                type: \"checkbox\",\n                disabled: a,\n                checked: !a && n,\n                onChange: function(e) {\n                    i(e.target.checked)\n                }\n            }), \"Send empty value\") : null\n        };\n        t.default = a\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = d(n(4)),\n            o = d(n(2)),\n            i = d(n(3)),\n            a = d(n(5)),\n            u = d(n(6)),\n            s = n(0),\n            l = d(s),\n            c = n(7),\n            f = (d(n(1)), d(n(12)), d(n(32))),\n            p = n(10);\n\n        function d(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var h = function(e) {\n            function t(e, n) {\n                (0, o.default)(this, t);\n                var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                return i.onChangeWrapper = function(e) {\n                    var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],\n                        n = i.props;\n                    return (0, n.onChange)(n.rawParam, \"\" === e || e && 0 === e.size ? null : e, t)\n                }, i.onChangeIncludeEmpty = function(e) {\n                    var t = i.props,\n                        n = t.specActions,\n                        r = t.param,\n                        o = t.pathMethod,\n                        a = r.get(\"name\"),\n                        u = r.get(\"in\");\n                    return n.updateEmptyParamInclusion(o, a, u, e)\n                }, i.setDefaultValue = function() {\n                    var e = i.props,\n                        t = e.specSelectors,\n                        n = e.pathMethod,\n                        r = e.rawParam,\n                        o = t.parameterWithMetaByIdentity(n, r);\n                    if (void 0 === o.get(\"value\") && \"body\" !== o.get(\"in\")) {\n                        var a = void 0;\n                        t.isSwagger2() ? a = o.get(\"x-example\") || o.getIn([\"default\"]) || o.getIn([\"schema\", \"example\"]) || o.getIn([\"schema\", \"default\"]) : t.isOAS3() && (a = o.get(\"example\") || o.getIn([\"schema\", \"example\"]) || o.getIn([\"schema\", \"default\"])), void 0 !== a && i.onChangeWrapper((0, p.numberToString)(a))\n                    }\n                }, i.setDefaultValue(), i\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    var t = e.specSelectors,\n                        n = e.pathMethod,\n                        r = e.rawParam,\n                        o = t.isOAS3,\n                        i = t.parameterWithMetaByIdentity(n, r);\n                    i = i.isEmpty() ? r : i;\n                    var a = void 0;\n                    o() ? a = (i.get(\"schema\") || (0, c.Map)()).get(\"enum\") : a = i ? i.get(\"enum\") : void 0;\n                    var u = i ? i.get(\"value\") : void 0,\n                        s = void 0;\n                    void 0 !== u ? s = u : r.get(\"required\") && a && a.size && (s = a.first()), void 0 !== s && s !== u && this.onChangeWrapper((0, p.numberToString)(s)), this.setDefaultValue()\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.param,\n                        n = e.rawParam,\n                        r = e.getComponent,\n                        o = e.getConfigs,\n                        i = e.isExecute,\n                        a = e.fn,\n                        u = e.onChangeConsumes,\n                        s = e.specSelectors,\n                        c = e.pathMethod,\n                        d = e.specPath,\n                        h = s.isOAS3,\n                        v = o(),\n                        m = v.showExtensions,\n                        g = v.showCommonExtensions,\n                        y = r(\"JsonSchemaForm\"),\n                        b = r(\"ParamBody\"),\n                        _ = t.get(\"in\"),\n                        w = \"body\" !== _ ? null : l.default.createElement(b, {\n                            getComponent: r,\n                            fn: a,\n                            param: t,\n                            consumes: s.operationConsumes(c),\n                            consumesValue: s.contentTypeValues(c).get(\"requestContentType\"),\n                            onChange: this.onChangeWrapper,\n                            onChangeConsumes: u,\n                            isExecute: i,\n                            specSelectors: s,\n                            pathMethod: c\n                        }),\n                        E = r(\"modelExample\"),\n                        x = r(\"Markdown\"),\n                        S = r(\"ParameterExt\"),\n                        C = r(\"ParameterIncludeEmpty\"),\n                        k = s.parameterWithMetaByIdentity(c, n),\n                        A = t.get(\"format\"),\n                        O = h && h() ? t.get(\"schema\") : t,\n                        P = O.get(\"type\"),\n                        T = \"formData\" === _,\n                        M = \"FormData\" in f.default,\n                        I = t.get(\"required\"),\n                        j = O.getIn([\"items\", \"type\"]),\n                        N = k ? k.get(\"value\") : \"\",\n                        R = g ? (0, p.getCommonExtensions)(t) : null,\n                        D = m ? (0, p.getExtensions)(t) : null,\n                        L = void 0,\n                        U = void 0,\n                        q = void 0,\n                        F = !1;\n                    return void 0 !== t && (L = O.get(\"items\")), void 0 !== L ? (U = L.get(\"enum\"), q = L.get(\"default\")) : U = O.get(\"enum\"), void 0 !== U && U.size > 0 && (F = !0), void 0 !== t && (q = O.get(\"default\"), void 0 === t.get(\"example\") && t.get(\"x-example\")), l.default.createElement(\"tr\", {\n                        \"data-param-name\": t.get(\"name\"),\n                        \"data-param-in\": t.get(\"in\")\n                    }, l.default.createElement(\"td\", {\n                        className: \"col parameters-col_name\"\n                    }, l.default.createElement(\"div\", {\n                        className: I ? \"parameter__name required\" : \"parameter__name\"\n                    }, t.get(\"name\"), I ? l.default.createElement(\"span\", {\n                        style: {\n                            color: \"red\"\n                        }\n                    }, \" *\") : null), l.default.createElement(\"div\", {\n                        className: \"parameter__type\"\n                    }, P, j && \"[\" + j + \"]\", A && l.default.createElement(\"span\", {\n                        className: \"prop-format\"\n                    }, \"($\", A, \")\")), l.default.createElement(\"div\", {\n                        className: \"parameter__deprecated\"\n                    }, h && h() && t.get(\"deprecated\") ? \"deprecated\" : null), l.default.createElement(\"div\", {\n                        className: \"parameter__in\"\n                    }, \"(\", t.get(\"in\"), \")\"), g && R.size ? R.map(function(e, t) {\n                        return l.default.createElement(S, {\n                            key: t + \"-\" + e,\n                            xKey: t,\n                            xVal: e\n                        })\n                    }) : null, m && D.size ? D.map(function(e, t) {\n                        return l.default.createElement(S, {\n                            key: t + \"-\" + e,\n                            xKey: t,\n                            xVal: e\n                        })\n                    }) : null), l.default.createElement(\"td\", {\n                        className: \"col parameters-col_description\"\n                    }, t.get(\"description\") ? l.default.createElement(x, {\n                        source: t.get(\"description\")\n                    }) : null, !w && i || !F ? null : l.default.createElement(x, {\n                        className: \"parameter__enum\",\n                        source: \"<i>Available values</i> : \" + U.map(function(e) {\n                            return e\n                        }).toArray().join(\", \")\n                    }), !w && i || void 0 === q ? null : l.default.createElement(x, {\n                        className: \"parameter__default\",\n                        source: \"<i>Default value</i> : \" + q\n                    }), T && !M && l.default.createElement(\"div\", null, \"Error: your browser does not support FormData\"), w || !i ? null : l.default.createElement(y, {\n                        fn: a,\n                        getComponent: r,\n                        value: N,\n                        required: I,\n                        description: t.get(\"description\") ? t.get(\"name\") + \" - \" + t.get(\"description\") : \"\" + t.get(\"name\"),\n                        onChange: this.onChangeWrapper,\n                        errors: k.get(\"errors\"),\n                        schema: O\n                    }), w && O ? l.default.createElement(E, {\n                        getComponent: r,\n                        specPath: d.push(\"schema\"),\n                        getConfigs: o,\n                        isExecute: i,\n                        specSelectors: s,\n                        schema: t.get(\"schema\"),\n                        example: w\n                    }) : null, !w && i ? l.default.createElement(C, {\n                        onChange: this.onChangeIncludeEmpty,\n                        isIncluded: s.parameterInclusionSettingFor(c, t.get(\"name\"), t.get(\"in\")),\n                        isDisabled: N && 0 !== N.size,\n                        param: t\n                    }) : null))\n                }\n            }]), t\n        }(s.Component);\n        t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = n(0),\n            l = c(s);\n        c(n(1));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onClick = function() {\n                    var e = i.props,\n                        t = e.specSelectors,\n                        n = e.specActions,\n                        r = e.operation,\n                        o = e.path,\n                        a = e.method;\n                    n.validateParams([o, a]), t.validateBeforeExecute([o, a]) && (i.props.onExecute && i.props.onExecute(), n.execute({\n                        operation: r,\n                        path: o,\n                        method: a\n                    }))\n                }, i.onChangeProducesWrapper = function(e) {\n                    return i.props.specActions.changeProducesValue([i.props.path, i.props.method], e)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    return l.default.createElement(\"button\", {\n                        className: \"btn execute opblock-control__btn\",\n                        onClick: this.onClick\n                    }, \"Execute\")\n                }\n            }]), t\n        }(s.Component);\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(18)),\n            o = f(n(4)),\n            i = f(n(2)),\n            a = f(n(3)),\n            u = f(n(5)),\n            s = f(n(6)),\n            l = f(n(0)),\n            c = (f(n(1)), f(n(7)));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = {\n                color: \"#999\",\n                fontStyle: \"italic\"\n            },\n            d = function(e) {\n                function t() {\n                    return (0, i.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).apply(this, arguments))\n                }\n                return (0, s.default)(t, e), (0, a.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.headers,\n                            n = (0, e.getComponent)(\"Property\");\n                        return t && t.size ? l.default.createElement(\"div\", {\n                            className: \"headers-wrapper\"\n                        }, l.default.createElement(\"h4\", {\n                            className: \"headers__title\"\n                        }, \"Headers:\"), l.default.createElement(\"table\", {\n                            className: \"headers\"\n                        }, l.default.createElement(\"thead\", null, l.default.createElement(\"tr\", {\n                            className: \"header-row\"\n                        }, l.default.createElement(\"th\", {\n                            className: \"header-col\"\n                        }, \"Name\"), l.default.createElement(\"th\", {\n                            className: \"header-col\"\n                        }, \"Description\"), l.default.createElement(\"th\", {\n                            className: \"header-col\"\n                        }, \"Type\"))), l.default.createElement(\"tbody\", null, t.entrySeq().map(function(e) {\n                            var t = (0, r.default)(e, 2),\n                                o = t[0],\n                                i = t[1];\n                            if (!c.default.Map.isMap(i)) return null;\n                            var a = i.getIn([\"schema\"]) ? i.getIn([\"schema\", \"type\"]) : i.getIn([\"type\"]),\n                                u = i.getIn([\"schema\", \"example\"]);\n                            return l.default.createElement(\"tr\", {\n                                key: o\n                            }, l.default.createElement(\"td\", {\n                                className: \"header-col\"\n                            }, o), l.default.createElement(\"td\", {\n                                className: \"header-col\"\n                            }, i.get(\"description\")), l.default.createElement(\"td\", {\n                                className: \"header-col\"\n                            }, a, \" \", u ? l.default.createElement(n, {\n                                propKey: \"Example\",\n                                propVal: u,\n                                propStyle: p\n                            }) : null))\n                        }).toArray()))) : null\n                    }\n                }]), t\n            }(l.default.Component);\n        t.default = d\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = c(n(0)),\n            l = (c(n(1)), n(7));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.editorActions,\n                        n = e.errSelectors,\n                        r = e.layoutSelectors,\n                        o = e.layoutActions,\n                        i = (0, e.getComponent)(\"Collapse\");\n                    if (t && t.jumpToLine) var a = t.jumpToLine;\n                    var u = n.allErrors().filter(function(e) {\n                        return \"thrown\" === e.get(\"type\") || \"error\" === e.get(\"level\")\n                    });\n                    if (!u || u.count() < 1) return null;\n                    var l = r.isShown([\"errorPane\"], !0),\n                        c = u.sortBy(function(e) {\n                            return e.get(\"line\")\n                        });\n                    return s.default.createElement(\"pre\", {\n                        className: \"errors-wrapper\"\n                    }, s.default.createElement(\"hgroup\", {\n                        className: \"error\"\n                    }, s.default.createElement(\"h4\", {\n                        className: \"errors__title\"\n                    }, \"Errors\"), s.default.createElement(\"button\", {\n                        className: \"btn errors__clear-btn\",\n                        onClick: function() {\n                            return o.show([\"errorPane\"], !l)\n                        }\n                    }, l ? \"Hide\" : \"Show\")), s.default.createElement(i, {\n                        isOpened: l,\n                        animated: !0\n                    }, s.default.createElement(\"div\", {\n                        className: \"errors\"\n                    }, c.map(function(e, t) {\n                        var n = e.get(\"type\");\n                        return \"thrown\" === n || \"auth\" === n ? s.default.createElement(p, {\n                            key: t,\n                            error: e.get(\"error\") || e,\n                            jumpToLine: a\n                        }) : \"spec\" === n ? s.default.createElement(d, {\n                            key: t,\n                            error: e,\n                            jumpToLine: a\n                        }) : void 0\n                    }))))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = f;\n        var p = function(e) {\n                var t = e.error,\n                    n = e.jumpToLine;\n                if (!t) return null;\n                var r = t.get(\"line\");\n                return s.default.createElement(\"div\", {\n                    className: \"error-wrapper\"\n                }, t ? s.default.createElement(\"div\", null, s.default.createElement(\"h4\", null, t.get(\"source\") && t.get(\"level\") ? h(t.get(\"source\")) + \" \" + t.get(\"level\") : \"\", t.get(\"path\") ? s.default.createElement(\"small\", null, \" at \", t.get(\"path\")) : null), s.default.createElement(\"span\", {\n                    style: {\n                        whiteSpace: \"pre-line\",\n                        maxWidth: \"100%\"\n                    }\n                }, t.get(\"message\")), s.default.createElement(\"div\", {\n                    style: {\n                        \"text-decoration\": \"underline\",\n                        cursor: \"pointer\"\n                    }\n                }, r && n ? s.default.createElement(\"a\", {\n                    onClick: n.bind(null, r)\n                }, \"Jump to line \", r) : null)) : null)\n            },\n            d = function(e) {\n                var t = e.error,\n                    n = e.jumpToLine,\n                    r = null;\n                return t.get(\"path\") ? r = l.List.isList(t.get(\"path\")) ? s.default.createElement(\"small\", null, \"at \", t.get(\"path\").join(\".\")) : s.default.createElement(\"small\", null, \"at \", t.get(\"path\")) : t.get(\"line\") && !n && (r = s.default.createElement(\"small\", null, \"on line \", t.get(\"line\"))), s.default.createElement(\"div\", {\n                    className: \"error-wrapper\"\n                }, t ? s.default.createElement(\"div\", null, s.default.createElement(\"h4\", null, h(t.get(\"source\")) + \" \" + t.get(\"level\"), \" \", r), s.default.createElement(\"span\", {\n                    style: {\n                        whiteSpace: \"pre-line\"\n                    }\n                }, t.get(\"message\")), s.default.createElement(\"div\", {\n                    style: {\n                        \"text-decoration\": \"underline\",\n                        cursor: \"pointer\"\n                    }\n                }, n ? s.default.createElement(\"a\", {\n                    onClick: n.bind(null, t.get(\"line\"))\n                }, \"Jump to line \", t.get(\"line\")) : null)) : null)\n            };\n\n        function h(e) {\n            return (e || \"\").split(\" \").map(function(e) {\n                return e[0].toUpperCase() + e.slice(1)\n            }).join(\" \")\n        }\n        p.defaultProps = {\n            jumpToLine: null\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = c(n(0)),\n            l = (c(n(1)), c(n(12)), n(7));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onChangeWrapper = function(e) {\n                    return i.props.onChange(e.target.value)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    this.props.contentTypes && this.props.onChange(this.props.contentTypes.first())\n                }\n            }, {\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    e.contentTypes && e.contentTypes.size && (e.contentTypes.includes(e.value) || e.onChange(e.contentTypes.first()))\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.contentTypes,\n                        n = e.className,\n                        r = e.value;\n                    return t && t.size ? s.default.createElement(\"div\", {\n                        className: \"content-type-wrapper \" + (n || \"\")\n                    }, s.default.createElement(\"select\", {\n                        className: \"content-type\",\n                        value: r || \"\",\n                        onChange: this.onChangeWrapper\n                    }, t.map(function(e) {\n                        return s.default.createElement(\"option\", {\n                            key: e,\n                            value: e\n                        }, e)\n                    }).toArray())) : null\n                }\n            }]), t\n        }(s.default.Component);\n        f.defaultProps = {\n            onChange: function() {},\n            value: null,\n            contentTypes: (0, l.fromJS)([\"application/json\"])\n        }, t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.OperationLink = void 0;\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = c(n(0)),\n            l = (c(n(1)), n(412));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                var e;\n                (0, o.default)(this, t);\n                for (var n = arguments.length, i = Array(n), u = 0; u < n; u++) i[u] = arguments[u];\n                var s = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(i)));\n                return s.setTagShown = s._setTagShown.bind(s), s\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"_setTagShown\",\n                value: function(e, t) {\n                    this.props.layoutActions.show(e, t)\n                }\n            }, {\n                key: \"showOp\",\n                value: function(e, t) {\n                    this.props.layoutActions.show(e, t)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specSelectors,\n                        n = e.layoutSelectors,\n                        r = e.layoutActions,\n                        o = e.getComponent,\n                        i = t.taggedOperations(),\n                        a = o(\"Collapse\");\n                    return s.default.createElement(\"div\", null, s.default.createElement(\"h4\", {\n                        className: \"overview-title\"\n                    }, \"Overview\"), i.map(function(e, t) {\n                        var o = e.get(\"operations\"),\n                            i = [\"overview-tags\", t],\n                            u = n.isShown(i, !0);\n                        return s.default.createElement(\"div\", {\n                            key: \"overview-\" + t\n                        }, s.default.createElement(\"h4\", {\n                            onClick: function() {\n                                return r.show(i, !u)\n                            },\n                            className: \"link overview-tag\"\n                        }, \" \", u ? \"-\" : \"+\", t), s.default.createElement(a, {\n                            isOpened: u,\n                            animated: !0\n                        }, o.map(function(e) {\n                            var t = e.toObject(),\n                                o = t.path,\n                                i = t.method,\n                                a = t.id,\n                                u = a,\n                                l = n.isShown([\"operations\", u]);\n                            return s.default.createElement(p, {\n                                key: a,\n                                path: o,\n                                method: i,\n                                id: o + \"-\" + i,\n                                shown: l,\n                                showOpId: u,\n                                showOpIdPrefix: \"operations\",\n                                href: \"#operation-\" + u,\n                                onClick: r.show\n                            })\n                        }).toArray()))\n                    }).toArray(), i.size < 1 && s.default.createElement(\"h3\", null, \" No operations defined in spec! \"))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = f;\n        var p = t.OperationLink = function(e) {\n            function t(e) {\n                (0, o.default)(this, t);\n                var n = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e));\n                return n.onClick = n._onClick.bind(n), n\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"_onClick\",\n                value: function() {\n                    var e = this.props,\n                        t = e.showOpId,\n                        n = e.showOpIdPrefix;\n                    (0, e.onClick)([n, t], !e.shown)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.id,\n                        n = e.method,\n                        r = e.shown,\n                        o = e.href;\n                    return s.default.createElement(l.Link, {\n                        href: o,\n                        style: {\n                            fontWeight: r ? \"bold\" : \"normal\"\n                        },\n                        onClick: this.onClick,\n                        className: \"block opblock-link\"\n                    }, s.default.createElement(\"div\", null, s.default.createElement(\"small\", {\n                        className: \"bold-label-\" + n\n                    }, n.toUpperCase()), s.default.createElement(\"span\", {\n                        className: \"bold-label\"\n                    }, t)))\n                }\n            }]), t\n        }(s.default.Component)\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.InfoUrl = t.InfoBasePath = void 0;\n        var r = f(n(4)),\n            o = f(n(2)),\n            i = f(n(3)),\n            a = f(n(5)),\n            u = f(n(6)),\n            s = f(n(0)),\n            l = (f(n(1)), n(7)),\n            c = (f(n(12)), n(10));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.InfoBasePath = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.host,\n                        n = e.basePath;\n                    return s.default.createElement(\"pre\", {\n                        className: \"base-url\"\n                    }, \"[ Base URL: \", t, n, \" ]\")\n                }\n            }]), t\n        }(s.default.Component);\n        var p = function(e) {\n                function t() {\n                    return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.data,\n                            n = e.getComponent,\n                            r = t.get(\"name\") || \"the developer\",\n                            o = t.get(\"url\"),\n                            i = t.get(\"email\"),\n                            a = n(\"Link\");\n                        return s.default.createElement(\"div\", null, o && s.default.createElement(\"div\", null, s.default.createElement(a, {\n                            href: (0, c.sanitizeUrl)(o),\n                            target: \"_blank\"\n                        }, r, \" - Website\")), i && s.default.createElement(a, {\n                            href: (0, c.sanitizeUrl)(\"mailto:\" + i)\n                        }, o ? \"Send email to \" + r : \"Contact \" + r))\n                    }\n                }]), t\n            }(s.default.Component),\n            d = function(e) {\n                function t() {\n                    return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.license,\n                            n = (0, e.getComponent)(\"Link\"),\n                            r = t.get(\"name\") || \"License\",\n                            o = t.get(\"url\");\n                        return s.default.createElement(\"div\", null, o ? s.default.createElement(n, {\n                            target: \"_blank\",\n                            href: (0, c.sanitizeUrl)(o)\n                        }, r) : s.default.createElement(\"span\", null, r))\n                    }\n                }]), t\n            }(s.default.Component),\n            h = (t.InfoUrl = function(e) {\n                function t() {\n                    return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.url,\n                            n = (0, e.getComponent)(\"Link\");\n                        return s.default.createElement(n, {\n                            target: \"_blank\",\n                            href: (0, c.sanitizeUrl)(t)\n                        }, s.default.createElement(\"span\", {\n                            className: \"url\"\n                        }, \" \", t, \" \"))\n                    }\n                }]), t\n            }(s.default.PureComponent), function(e) {\n                function t() {\n                    return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.info,\n                            n = e.url,\n                            r = e.host,\n                            o = e.basePath,\n                            i = e.getComponent,\n                            a = e.externalDocs,\n                            u = t.get(\"version\"),\n                            f = t.get(\"description\"),\n                            h = t.get(\"title\"),\n                            v = t.get(\"termsOfService\"),\n                            m = t.get(\"contact\"),\n                            g = t.get(\"license\"),\n                            y = (a || (0, l.fromJS)({})).toJS(),\n                            b = y.url,\n                            _ = y.description,\n                            w = i(\"Markdown\"),\n                            E = i(\"Link\"),\n                            x = i(\"VersionStamp\"),\n                            S = i(\"InfoUrl\"),\n                            C = i(\"InfoBasePath\");\n                        return s.default.createElement(\"div\", {\n                            className: \"info\"\n                        }, s.default.createElement(\"hgroup\", {\n                            className: \"main\"\n                        }, s.default.createElement(\"h2\", {\n                            className: \"title\"\n                        }, h, u && s.default.createElement(x, {\n                            version: u\n                        })), r || o ? s.default.createElement(C, {\n                            host: r,\n                            basePath: o\n                        }) : null, n && s.default.createElement(S, {\n                            getComponent: i,\n                            url: n\n                        })), s.default.createElement(\"div\", {\n                            className: \"description\"\n                        }, s.default.createElement(w, {\n                            source: f\n                        })), v && s.default.createElement(\"div\", null, s.default.createElement(E, {\n                            target: \"_blank\",\n                            href: (0, c.sanitizeUrl)(v)\n                        }, \"Terms of service\")), m && m.size ? s.default.createElement(p, {\n                            getComponent: i,\n                            data: m\n                        }) : null, g && g.size ? s.default.createElement(d, {\n                            getComponent: i,\n                            license: g\n                        }) : null, b ? s.default.createElement(E, {\n                            target: \"_blank\",\n                            href: (0, c.sanitizeUrl)(b)\n                        }, _ || b) : null)\n                    }\n                }]), t\n            }(s.default.Component));\n        t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specSelectors,\n                        n = e.getComponent,\n                        r = t.info(),\n                        o = t.url(),\n                        i = t.basePath(),\n                        a = t.host(),\n                        u = t.externalDocs(),\n                        l = n(\"info\");\n                    return s.default.createElement(\"div\", null, r && r.count() ? s.default.createElement(l, {\n                        info: r,\n                        url: o,\n                        host: a,\n                        basePath: i,\n                        externalDocs: u,\n                        getComponent: n\n                    }) : null)\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = s(n(4)),\n            o = s(n(2)),\n            i = s(n(3)),\n            a = s(n(5)),\n            u = s(n(6));\n\n        function s(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var l = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    return null\n                }\n            }]), t\n        }(s(n(0)).default.Component);\n        t.default = l\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    return s.default.createElement(\"div\", {\n                        className: \"footer\"\n                    })\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onFilterChange = function(e) {\n                    var t = e.target.value;\n                    i.props.layoutActions.updateFilter(t)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specSelectors,\n                        n = e.layoutSelectors,\n                        r = (0, e.getComponent)(\"Col\"),\n                        o = \"loading\" === t.loadingStatus(),\n                        i = \"failed\" === t.loadingStatus(),\n                        a = n.currentFilter(),\n                        u = {};\n                    return i && (u.color = \"red\"), o && (u.color = \"#aaa\"), s.default.createElement(\"div\", null, null === a || !1 === a ? null : s.default.createElement(\"div\", {\n                        className: \"filter-container\"\n                    }, s.default.createElement(r, {\n                        className: \"filter wrapper\",\n                        mobile: 12\n                    }, s.default.createElement(\"input\", {\n                        className: \"operation-filter-input\",\n                        placeholder: \"Filter by tag\",\n                        type: \"text\",\n                        onChange: this.onFilterChange,\n                        value: !0 === a || \"true\" === a ? \"\" : a,\n                        disabled: o,\n                        style: u\n                    }))))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(4)),\n            o = p(n(2)),\n            i = p(n(3)),\n            a = p(n(5)),\n            u = p(n(6)),\n            s = n(0),\n            l = p(s),\n            c = (p(n(1)), n(7)),\n            f = n(10);\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = Function.prototype,\n            h = function(e) {\n                function t(e, n) {\n                    (0, o.default)(this, t);\n                    var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                    return v.call(i), i.state = {\n                        isEditBox: !1,\n                        value: \"\"\n                    }, i\n                }\n                return (0, u.default)(t, e), (0, i.default)(t, [{\n                    key: \"componentDidMount\",\n                    value: function() {\n                        this.updateValues.call(this, this.props)\n                    }\n                }, {\n                    key: \"componentWillReceiveProps\",\n                    value: function(e) {\n                        this.updateValues.call(this, e)\n                    }\n                }, {\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            n = e.onChangeConsumes,\n                            r = e.param,\n                            o = e.isExecute,\n                            i = e.specSelectors,\n                            a = e.pathMethod,\n                            u = e.getComponent,\n                            s = u(\"Button\"),\n                            f = u(\"TextArea\"),\n                            p = u(\"highlightCode\"),\n                            d = u(\"contentType\"),\n                            h = (i ? i.parameterWithMetaByIdentity(a, r) : r).get(\"errors\", (0, c.List)()),\n                            v = i.contentTypeValues(a).get(\"requestContentType\"),\n                            m = this.props.consumes && this.props.consumes.size ? this.props.consumes : t.defaultProp.consumes,\n                            g = this.state,\n                            y = g.value,\n                            b = g.isEditBox;\n                        return l.default.createElement(\"div\", {\n                            className: \"body-param\",\n                            \"data-param-name\": r.get(\"name\"),\n                            \"data-param-in\": r.get(\"in\")\n                        }, b && o ? l.default.createElement(f, {\n                            className: \"body-param__text\" + (h.count() ? \" invalid\" : \"\"),\n                            value: y,\n                            onChange: this.handleOnChange\n                        }) : y && l.default.createElement(p, {\n                            className: \"body-param__example\",\n                            value: y\n                        }), l.default.createElement(\"div\", {\n                            className: \"body-param-options\"\n                        }, o ? l.default.createElement(\"div\", {\n                            className: \"body-param-edit\"\n                        }, l.default.createElement(s, {\n                            className: b ? \"btn cancel body-param__example-edit\" : \"btn edit body-param__example-edit\",\n                            onClick: this.toggleIsEditBox\n                        }, b ? \"Cancel\" : \"Edit\")) : null, l.default.createElement(\"label\", {\n                            htmlFor: \"\"\n                        }, l.default.createElement(\"span\", null, \"Parameter content type\"), l.default.createElement(d, {\n                            value: v,\n                            contentTypes: m,\n                            onChange: n,\n                            className: \"body-param-content-type\"\n                        }))))\n                    }\n                }]), t\n            }(s.PureComponent);\n        h.defaultProp = {\n            consumes: (0, c.fromJS)([\"application/json\"]),\n            param: (0, c.fromJS)({}),\n            onChange: d,\n            onChangeConsumes: d\n        };\n        var v = function() {\n            var e = this;\n            this.updateValues = function(t) {\n                var n = t.param,\n                    r = t.isExecute,\n                    o = t.consumesValue,\n                    i = void 0 === o ? \"\" : o,\n                    a = /xml/i.test(i),\n                    u = /json/i.test(i),\n                    s = a ? n.get(\"value_xml\") : n.get(\"value\");\n                if (void 0 !== s) {\n                    var l = !s && u ? \"{}\" : s;\n                    e.setState({\n                        value: l\n                    }), e.onChange(l, {\n                        isXml: a,\n                        isEditBox: r\n                    })\n                } else a ? e.onChange(e.sample(\"xml\"), {\n                    isXml: a,\n                    isEditBox: r\n                }) : e.onChange(e.sample(), {\n                    isEditBox: r\n                })\n            }, this.sample = function(t) {\n                var n = e.props,\n                    r = n.param,\n                    o = (0, n.fn.inferSchema)(r.toJS());\n                return (0, f.getSampleSchema)(o, t, {\n                    includeWriteOnly: !0\n                })\n            }, this.onChange = function(t, n) {\n                var r = n.isEditBox,\n                    o = n.isXml;\n                e.setState({\n                    value: t,\n                    isEditBox: r\n                }), e._onChange(t, o)\n            }, this._onChange = function(t, n) {\n                (e.props.onChange || d)(t, n)\n            }, this.handleOnChange = function(t) {\n                var n = e.props.consumesValue,\n                    r = /json/i.test(n),\n                    o = /xml/i.test(n),\n                    i = r ? t.target.value.trim() : t.target.value;\n                e.onChange(i, {\n                    isXml: o\n                })\n            }, this.toggleIsEditBox = function() {\n                return e.setState(function(e) {\n                    return {\n                        isEditBox: !e.isEditBox\n                    }\n                })\n            }\n        };\n        t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = c(n(0)),\n            l = (c(n(1)), c(n(983)));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"handleFocus\",\n                value: function(e) {\n                    e.target.select(), document.execCommand(\"copy\")\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props.request,\n                        t = (0, l.default)(e);\n                    return s.default.createElement(\"div\", null, s.default.createElement(\"h4\", null, \"Curl\"), s.default.createElement(\"div\", {\n                        className: \"copy-paste\"\n                    }, s.default.createElement(\"textarea\", {\n                        onFocus: this.handleFocus,\n                        readOnly: \"true\",\n                        className: \"curl\",\n                        style: {\n                            whiteSpace: \"normal\"\n                        },\n                        value: t\n                    })))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = u(n(41)),\n            o = u(n(18)),\n            i = u(n(91));\n        t.default = function(e) {\n            var t = [],\n                n = \"\",\n                u = e.get(\"headers\");\n            if (t.push(\"curl\"), t.push(\"-X\", e.get(\"method\")), t.push('\"' + e.get(\"url\") + '\"'), u && u.size) {\n                var s = !0,\n                    l = !1,\n                    c = void 0;\n                try {\n                    for (var f, p = (0, i.default)(e.get(\"headers\").entries()); !(s = (f = p.next()).done); s = !0) {\n                        var d = f.value,\n                            h = (0, o.default)(d, 2),\n                            v = h[0],\n                            m = h[1];\n                        n = m, t.push(\"-H \"), t.push('\"' + v + \": \" + m + '\"')\n                    }\n                } catch (e) {\n                    l = !0, c = e\n                } finally {\n                    try {\n                        !s && p.return && p.return()\n                    } finally {\n                        if (l) throw c\n                    }\n                }\n            }\n            if (e.get(\"body\"))\n                if (\"multipart/form-data\" === n && \"POST\" === e.get(\"method\")) {\n                    var g = !0,\n                        y = !1,\n                        b = void 0;\n                    try {\n                        for (var _, w = (0, i.default)(e.get(\"body\").entrySeq()); !(g = (_ = w.next()).done); g = !0) {\n                            var E = (0, o.default)(_.value, 2),\n                                x = E[0],\n                                m = E[1];\n                            t.push(\"-F\"), m instanceof a.default.File ? t.push('\"' + x + \"=@\" + m.name + \";type=\" + m.type + '\"') : t.push('\"' + x + \"=\" + m + '\"')\n                        }\n                    } catch (e) {\n                        y = !0, b = e\n                    } finally {\n                        try {\n                            !g && w.return && w.return()\n                        } finally {\n                            if (y) throw b\n                        }\n                    }\n                } else t.push(\"-d\"), t.push((0, r.default)(e.get(\"body\")).replace(/\\\\n/g, \"\"));\n            return t.join(\" \")\n        };\n        var a = u(n(32));\n\n        function u(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                var e, n, i, u;\n                (0, o.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = i = (0, a.default)(this, (e = t.__proto__ || (0, r.default)(t)).call.apply(e, [this].concat(l))), i.onChange = function(e) {\n                    i.setScheme(e.target.value)\n                }, i.setScheme = function(e) {\n                    var t = i.props,\n                        n = t.path,\n                        r = t.method;\n                    t.specActions.setScheme(e, n, r)\n                }, u = n, (0, a.default)(i, u)\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentWillMount\",\n                value: function() {\n                    var e = this.props.schemes;\n                    this.setScheme(e.first())\n                }\n            }, {\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    this.props.currentScheme && e.schemes.includes(this.props.currentScheme) || this.setScheme(e.schemes.first())\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.schemes,\n                        n = e.currentScheme;\n                    return s.default.createElement(\"label\", {\n                        htmlFor: \"schemes\"\n                    }, s.default.createElement(\"span\", {\n                        className: \"schemes-title\"\n                    }, \"Schemes\"), s.default.createElement(\"select\", {\n                        onChange: this.onChange,\n                        value: n\n                    }, t.valueSeq().map(function(e) {\n                        return s.default.createElement(\"option\", {\n                            value: e,\n                            key: e\n                        }, e)\n                    }).toArray()))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specActions,\n                        n = e.specSelectors,\n                        r = e.getComponent,\n                        o = n.operationScheme(),\n                        i = n.schemes(),\n                        a = n.securityDefinitions(),\n                        u = r(\"Col\"),\n                        l = r(\"authorizeBtn\", !0),\n                        c = r(\"schemes\");\n                    return s.default.createElement(\"div\", null, i && i.size || a ? s.default.createElement(\"div\", {\n                        className: \"scheme-container\"\n                    }, s.default.createElement(u, {\n                        className: \"schemes wrapper\",\n                        mobile: 12\n                    }, i && i.size ? s.default.createElement(c, {\n                        currentScheme: o,\n                        schemes: i,\n                        specActions: t\n                    }) : null, a ? s.default.createElement(l, null) : null)) : null)\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(4)),\n            o = c(n(2)),\n            i = c(n(3)),\n            a = c(n(5)),\n            u = c(n(6)),\n            s = n(0),\n            l = c(s);\n        c(n(1));\n\n        function c(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var f = function(e) {\n            function t(e, n) {\n                (0, o.default)(this, t);\n                var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                i.toggleCollapsed = function() {\n                    i.props.onToggle && i.props.onToggle(i.props.modelName, !i.state.expanded), i.setState({\n                        expanded: !i.state.expanded\n                    })\n                };\n                var u = i.props,\n                    s = u.expanded,\n                    l = u.collapsedContent;\n                return i.state = {\n                    expanded: s,\n                    collapsedContent: l || t.defaultProps.collapsedContent\n                }, i\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    var e = this.props,\n                        t = e.hideSelfOnExpand,\n                        n = e.expanded,\n                        r = e.modelName;\n                    t && n && this.props.onToggle(r, n)\n                }\n            }, {\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    this.props.expanded !== e.expanded && this.setState({\n                        expanded: e.expanded\n                    })\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.title,\n                        n = e.classes;\n                    return this.state.expanded && this.props.hideSelfOnExpand ? l.default.createElement(\"span\", {\n                        className: n || \"\"\n                    }, this.props.children) : l.default.createElement(\"span\", {\n                        className: n || \"\"\n                    }, t && l.default.createElement(\"span\", {\n                        onClick: this.toggleCollapsed,\n                        style: {\n                            cursor: \"pointer\"\n                        }\n                    }, t), l.default.createElement(\"span\", {\n                        onClick: this.toggleCollapsed,\n                        style: {\n                            cursor: \"pointer\"\n                        }\n                    }, l.default.createElement(\"span\", {\n                        className: \"model-toggle\" + (this.state.expanded ? \"\" : \" collapsed\")\n                    })), this.state.expanded ? this.props.children : this.state.collapsedContent)\n                }\n            }]), t\n        }(s.Component);\n        f.defaultProps = {\n            collapsedContent: \"{...}\",\n            expanded: !1,\n            title: null,\n            onToggle: function() {},\n            hideSelfOnExpand: !1\n        }, t.default = f\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1)), l(n(12));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t(e, n) {\n                (0, o.default)(this, t);\n                var i = (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).call(this, e, n));\n                i.activeTab = function(e) {\n                    var t = e.target.dataset.name;\n                    i.setState({\n                        activeTab: t\n                    })\n                };\n                var u = i.props,\n                    s = u.getConfigs,\n                    l = u.isExecute,\n                    c = s().defaultModelRendering;\n                return \"example\" !== c && \"model\" !== c && (c = \"example\"), i.state = {\n                    activeTab: l ? \"example\" : c\n                }, i\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    e.isExecute && e.isExecute !== this.props.isExecute && this.setState({\n                        activeTab: \"example\"\n                    })\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.specSelectors,\n                        r = e.schema,\n                        o = e.example,\n                        i = e.isExecute,\n                        a = e.getConfigs,\n                        u = e.specPath,\n                        l = a().defaultModelExpandDepth,\n                        c = t(\"ModelWrapper\");\n                    return s.default.createElement(\"div\", null, s.default.createElement(\"ul\", {\n                        className: \"tab\"\n                    }, s.default.createElement(\"li\", {\n                        className: \"tabitem\" + (\"example\" === this.state.activeTab ? \" active\" : \"\")\n                    }, s.default.createElement(\"a\", {\n                        className: \"tablinks\",\n                        \"data-name\": \"example\",\n                        onClick: this.activeTab\n                    }, i ? \"Edit Value\" : \"Example Value\")), r ? s.default.createElement(\"li\", {\n                        className: \"tabitem\" + (\"model\" === this.state.activeTab ? \" active\" : \"\")\n                    }, s.default.createElement(\"a\", {\n                        className: \"tablinks\" + (i ? \" inactive\" : \"\"),\n                        \"data-name\": \"model\",\n                        onClick: this.activeTab\n                    }, \"Model\")) : null), s.default.createElement(\"div\", null, \"example\" === this.state.activeTab && o, \"model\" === this.state.activeTab && s.default.createElement(c, {\n                        schema: r,\n                        getComponent: t,\n                        getConfigs: a,\n                        specSelectors: n,\n                        expandDepth: l,\n                        specPath: u\n                    })))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = f(n(25)),\n            o = f(n(4)),\n            i = f(n(2)),\n            a = f(n(3)),\n            u = f(n(5)),\n            s = f(n(6)),\n            l = n(0),\n            c = f(l);\n        f(n(1));\n\n        function f(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var p = function(e) {\n            function t() {\n                var e, n, r, a;\n                (0, i.default)(this, t);\n                for (var s = arguments.length, l = Array(s), c = 0; c < s; c++) l[c] = arguments[c];\n                return n = r = (0, u.default)(this, (e = t.__proto__ || (0, o.default)(t)).call.apply(e, [this].concat(l))), r.onToggle = function(e, t) {\n                    r.props.layoutActions && r.props.layoutActions.show([\"models\", e], t)\n                }, a = n, (0, u.default)(r, a)\n            }\n            return (0, s.default)(t, e), (0, a.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.getConfigs,\n                        o = t(\"Model\"),\n                        i = void 0;\n                    return this.props.layoutSelectors && (i = this.props.layoutSelectors.isShown([\"models\", this.props.name])), c.default.createElement(\"div\", {\n                        className: \"model-box\"\n                    }, c.default.createElement(o, (0, r.default)({}, this.props, {\n                        getConfigs: n,\n                        expanded: i,\n                        depth: 1,\n                        onToggle: this.onToggle,\n                        expandDepth: this.props.expandDepth || 0\n                    })))\n                }\n            }]), t\n        }(l.Component);\n        t.default = p\n    }, function(e, t, n) {\n        (function(e, t, n) {\n            \"use strict\";\n            t = t && \"default\" in t ? t.default : t;\n            var r = Object.assign || function(e) {\n                    for (var t = 1; t < arguments.length; t++) {\n                        var n = arguments[t];\n                        for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])\n                    }\n                    return e\n                },\n                o = function() {\n                    function e(e, t) {\n                        for (var n = 0; n < t.length; n++) {\n                            var r = t[n];\n                            r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)\n                        }\n                    }\n                    return function(t, n, r) {\n                        return n && e(t.prototype, n), r && e(t, r), t\n                    }\n                }();\n            var i = function(e) {\n                function i() {\n                    return function(e, t) {\n                        if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                    }(this, i),\n                        function(e, t) {\n                            if (!e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n                            return !t || \"object\" != typeof t && \"function\" != typeof t ? e : t\n                        }(this, (i.__proto__ || Object.getPrototypeOf(i)).apply(this, arguments))\n                }\n                return function(e, t) {\n                    if (\"function\" != typeof t && null !== t) throw new TypeError(\"Super expression must either be null or a function, not \" + typeof t);\n                    e.prototype = Object.create(t && t.prototype, {\n                        constructor: {\n                            value: e,\n                            enumerable: !1,\n                            writable: !0,\n                            configurable: !0\n                        }\n                    }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)\n                }(i, t.Component), o(i, [{\n                    key: \"shouldComponentUpdate\",\n                    value: function(e) {\n                        var t = this,\n                            o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                            i = this.state || {};\n                        return !(this.updateOnProps || Object.keys(r({}, e, this.props))).every(function(r) {\n                            return n.is(e[r], t.props[r])\n                        }) || !(this.updateOnStates || Object.keys(r({}, o, i))).every(function(e) {\n                            return n.is(o[e], i[e])\n                        })\n                    }\n                }]), i\n            }();\n            e.ImmutablePureComponent = i, e.default = i, Object.defineProperty(e, \"__esModule\", {\n                value: !0\n            })\n        })(t, n(0), n(7))\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = d(n(18)),\n            o = d(n(83)),\n            i = d(n(4)),\n            a = d(n(2)),\n            u = d(n(3)),\n            s = d(n(5)),\n            l = d(n(6)),\n            c = n(0),\n            f = d(c),\n            p = d(n(7));\n        d(n(1));\n\n        function d(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var h = function(e) {\n            function t() {\n                var e, n, r, u;\n                (0, a.default)(this, t);\n                for (var l = arguments.length, c = Array(l), f = 0; f < l; f++) c[f] = arguments[f];\n                return n = r = (0, s.default)(this, (e = t.__proto__ || (0, i.default)(t)).call.apply(e, [this].concat(c))), r.getSchemaBasePath = function() {\n                    return r.props.specSelectors.isOAS3() ? [\"components\", \"schemas\"] : [\"definitions\"]\n                }, r.getCollapsedContent = function() {\n                    return \" \"\n                }, r.handleToggle = function(e, t) {\n                    r.props.layoutActions.show([\"models\", e], t), t && r.props.specActions.requestResolvedSubtree([].concat((0, o.default)(r.getSchemaBasePath()), [e]))\n                }, u = n, (0, s.default)(r, u)\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        t = this.props,\n                        n = t.specSelectors,\n                        i = t.getComponent,\n                        a = t.layoutSelectors,\n                        u = t.layoutActions,\n                        s = t.getConfigs,\n                        l = n.definitions(),\n                        c = s(),\n                        d = c.docExpansion,\n                        h = c.defaultModelsExpandDepth;\n                    if (!l.size || h < 0) return null;\n                    var v = a.isShown(\"models\", h > 0 && \"none\" !== d),\n                        m = this.getSchemaBasePath(),\n                        g = i(\"ModelWrapper\"),\n                        y = i(\"Collapse\"),\n                        b = i(\"ModelCollapse\"),\n                        _ = i(\"JumpToPath\");\n                    return f.default.createElement(\"section\", {\n                        className: v ? \"models is-open\" : \"models\"\n                    }, f.default.createElement(\"h4\", {\n                        onClick: function() {\n                            return u.show(\"models\", !v)\n                        }\n                    }, f.default.createElement(\"span\", null, \"Models\"), f.default.createElement(\"svg\", {\n                        width: \"20\",\n                        height: \"20\"\n                    }, f.default.createElement(\"use\", {\n                        xlinkHref: v ? \"#large-arrow-down\" : \"#large-arrow\"\n                    }))), f.default.createElement(y, {\n                        isOpened: v\n                    }, l.entrySeq().map(function(t) {\n                        var l = (0, r.default)(t, 1)[0],\n                            c = [].concat((0, o.default)(m), [l]),\n                            d = n.specResolvedSubtree(c) || p.default.Map(),\n                            v = n.specJson().getIn(c, p.default.Map()),\n                            y = d.get(\"title\") || v.get(\"title\") || l;\n                        a.isShown([\"models\", l], !1) && void 0 === d && e.props.specActions.requestResolvedSubtree([].concat((0, o.default)(e.getSchemaBasePath()), [l]));\n                        var w = p.default.List([].concat((0, o.default)(m), [l])),\n                            E = f.default.createElement(g, {\n                                name: l,\n                                expandDepth: h,\n                                schema: d || p.default.Map(),\n                                displayName: y,\n                                specPath: w,\n                                getComponent: i,\n                                specSelectors: n,\n                                getConfigs: s,\n                                layoutSelectors: a,\n                                layoutActions: u\n                            }),\n                            x = f.default.createElement(\"span\", {\n                                className: \"model-box\"\n                            }, f.default.createElement(\"span\", {\n                                className: \"model model-title\"\n                            }, y));\n                        return f.default.createElement(\"div\", {\n                            id: \"model-\" + l,\n                            className: \"model-container\",\n                            key: \"models-section-\" + l\n                        }, f.default.createElement(\"span\", {\n                            className: \"models-jump-to-path\"\n                        }, f.default.createElement(_, {\n                            specPath: w\n                        })), f.default.createElement(b, {\n                            classes: \"model-box\",\n                            collapsedContent: e.getCollapsedContent(l),\n                            onToggle: e.handleToggle,\n                            title: x,\n                            displayName: y,\n                            modelName: l,\n                            hideSelfOnExpand: !0,\n                            expanded: h > 1\n                        }, E))\n                    }).toArray()))\n                }\n            }]), t\n        }(c.Component);\n        t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = o(n(0));\n        o(n(12));\n\n        function o(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e) {\n            var t = e.value,\n                n = (0, e.getComponent)(\"ModelCollapse\"),\n                o = r.default.createElement(\"span\", null, \"Array [ \", t.count(), \" ]\");\n            return r.default.createElement(\"span\", {\n                className: \"prop-enum\"\n            }, \"Enum:\", r.default.createElement(\"br\", null), r.default.createElement(n, {\n                collapsedContent: o\n            }, \"[ \", t.join(\", \"), \" ]\"))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = v(n(41)),\n            o = v(n(25)),\n            i = v(n(18)),\n            a = v(n(84)),\n            u = v(n(4)),\n            s = v(n(2)),\n            l = v(n(3)),\n            c = v(n(5)),\n            f = v(n(6)),\n            p = n(0),\n            d = v(p),\n            h = (v(n(1)), n(7));\n        v(n(12));\n\n        function v(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var m = function(e) {\n            function t() {\n                return (0, s.default)(this, t), (0, c.default)(this, (t.__proto__ || (0, u.default)(t)).apply(this, arguments))\n            }\n            return (0, f.default)(t, e), (0, l.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.schema,\n                        n = e.name,\n                        u = e.displayName,\n                        s = e.isRef,\n                        l = e.getComponent,\n                        c = e.getConfigs,\n                        f = e.depth,\n                        p = e.onToggle,\n                        v = e.expanded,\n                        m = e.specPath,\n                        g = (0, a.default)(e, [\"schema\", \"name\", \"displayName\", \"isRef\", \"getComponent\", \"getConfigs\", \"depth\", \"onToggle\", \"expanded\", \"specPath\"]),\n                        y = g.specSelectors,\n                        b = g.expandDepth,\n                        _ = y.isOAS3;\n                    if (!t) return null;\n                    var w = c().showExtensions,\n                        E = t.get(\"description\"),\n                        x = t.get(\"properties\"),\n                        S = t.get(\"additionalProperties\"),\n                        C = t.get(\"title\") || u || n,\n                        k = t.get(\"required\"),\n                        A = l(\"JumpToPath\", !0),\n                        O = l(\"Markdown\"),\n                        P = l(\"Model\"),\n                        T = l(\"ModelCollapse\"),\n                        M = function() {\n                            return d.default.createElement(\"span\", {\n                                className: \"model-jump-to-path\"\n                            }, d.default.createElement(A, {\n                                specPath: m\n                            }))\n                        },\n                        I = d.default.createElement(\"span\", null, d.default.createElement(\"span\", null, \"{\"), \"...\", d.default.createElement(\"span\", null, \"}\"), s ? d.default.createElement(M, null) : \"\"),\n                        j = y.isOAS3() ? t.get(\"anyOf\") : null,\n                        N = y.isOAS3() ? t.get(\"oneOf\") : null,\n                        R = y.isOAS3() ? t.get(\"not\") : null,\n                        D = C && d.default.createElement(\"span\", {\n                            className: \"model-title\"\n                        }, s && t.get(\"$$ref\") && d.default.createElement(\"span\", {\n                            className: \"model-hint\"\n                        }, t.get(\"$$ref\")), d.default.createElement(\"span\", {\n                            className: \"model-title__text\"\n                        }, C));\n                    return d.default.createElement(\"span\", {\n                        className: \"model\"\n                    }, d.default.createElement(T, {\n                        modelName: n,\n                        title: D,\n                        onToggle: p,\n                        expanded: !!v || f <= b,\n                        collapsedContent: I\n                    }, d.default.createElement(\"span\", {\n                        className: \"brace-open object\"\n                    }, \"{\"), s ? d.default.createElement(M, null) : null, d.default.createElement(\"span\", {\n                        className: \"inner-object\"\n                    }, d.default.createElement(\"table\", {\n                        className: \"model\"\n                    }, d.default.createElement(\"tbody\", null, E ? d.default.createElement(\"tr\", {\n                        style: {\n                            color: \"#666\",\n                            fontStyle: \"italic\"\n                        }\n                    }, d.default.createElement(\"td\", null, \"description:\"), d.default.createElement(\"td\", null, d.default.createElement(O, {\n                        source: E\n                    }))) : null, x && x.size ? x.entrySeq().map(function(e) {\n                        var t = (0, i.default)(e, 2),\n                            r = t[0],\n                            a = t[1],\n                            u = _() && a.get(\"deprecated\"),\n                            s = h.List.isList(k) && k.contains(r),\n                            p = {\n                                verticalAlign: \"top\",\n                                paddingRight: \"0.2em\"\n                            };\n                        return s && (p.fontWeight = \"bold\"), d.default.createElement(\"tr\", {\n                            key: r,\n                            className: u && \"deprecated\"\n                        }, d.default.createElement(\"td\", {\n                            style: p\n                        }, r, s && d.default.createElement(\"span\", {\n                            style: {\n                                color: \"red\"\n                            }\n                        }, \"*\")), d.default.createElement(\"td\", {\n                            style: {\n                                verticalAlign: \"top\"\n                            }\n                        }, d.default.createElement(P, (0, o.default)({\n                            key: \"object-\" + n + \"-\" + r + \"_\" + a\n                        }, g, {\n                            required: s,\n                            getComponent: l,\n                            specPath: m.push(\"properties\", r),\n                            getConfigs: c,\n                            schema: a,\n                            depth: f + 1\n                        }))))\n                    }).toArray() : null, w ? d.default.createElement(\"tr\", null, \" \") : null, w ? t.entrySeq().map(function(e) {\n                        var t = (0, i.default)(e, 2),\n                            n = t[0],\n                            o = t[1];\n                        if (\"x-\" === n.slice(0, 2)) {\n                            var a = o ? o.toJS ? o.toJS() : o : null;\n                            return d.default.createElement(\"tr\", {\n                                key: n,\n                                style: {\n                                    color: \"#777\"\n                                }\n                            }, d.default.createElement(\"td\", null, n), d.default.createElement(\"td\", {\n                                style: {\n                                    verticalAlign: \"top\"\n                                }\n                            }, (0, r.default)(a)))\n                        }\n                    }).toArray() : null, S && S.size ? d.default.createElement(\"tr\", null, d.default.createElement(\"td\", null, \"< * >:\"), d.default.createElement(\"td\", null, d.default.createElement(P, (0, o.default)({}, g, {\n                        required: !1,\n                        getComponent: l,\n                        specPath: m.push(\"additionalProperties\"),\n                        getConfigs: c,\n                        schema: S,\n                        depth: f + 1\n                    })))) : null, j ? d.default.createElement(\"tr\", null, d.default.createElement(\"td\", null, \"anyOf ->\"), d.default.createElement(\"td\", null, j.map(function(e, t) {\n                        return d.default.createElement(\"div\", {\n                            key: t\n                        }, d.default.createElement(P, (0, o.default)({}, g, {\n                            required: !1,\n                            getComponent: l,\n                            specPath: m.push(\"anyOf\", t),\n                            getConfigs: c,\n                            schema: e,\n                            depth: f + 1\n                        })))\n                    }))) : null, N ? d.default.createElement(\"tr\", null, d.default.createElement(\"td\", null, \"oneOf ->\"), d.default.createElement(\"td\", null, N.map(function(e, t) {\n                        return d.default.createElement(\"div\", {\n                            key: t\n                        }, d.default.createElement(P, (0, o.default)({}, g, {\n                            required: !1,\n                            getComponent: l,\n                            specPath: m.push(\"oneOf\", t),\n                            getConfigs: c,\n                            schema: e,\n                            depth: f + 1\n                        })))\n                    }))) : null, R ? d.default.createElement(\"tr\", null, d.default.createElement(\"td\", null, \"not ->\"), d.default.createElement(\"td\", null, d.default.createElement(\"div\", null, d.default.createElement(P, (0, o.default)({}, g, {\n                        required: !1,\n                        getComponent: l,\n                        specPath: m.push(\"not\"),\n                        getConfigs: c,\n                        schema: R,\n                        depth: f + 1\n                    }))))) : null))), d.default.createElement(\"span\", {\n                        className: \"brace-close\"\n                    }, \"}\")))\n                }\n            }]), t\n        }(p.Component);\n        t.default = m\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(25)),\n            o = p(n(18)),\n            i = p(n(4)),\n            a = p(n(2)),\n            u = p(n(3)),\n            s = p(n(5)),\n            l = p(n(6)),\n            c = n(0),\n            f = p(c);\n        p(n(1)), p(n(12));\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = {\n                color: \"#999\",\n                fontStyle: \"italic\"\n            },\n            h = function(e) {\n                function t() {\n                    return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n                }\n                return (0, l.default)(t, e), (0, u.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.getComponent,\n                            n = e.getConfigs,\n                            i = e.schema,\n                            a = e.depth,\n                            u = e.expandDepth,\n                            s = e.name,\n                            l = e.displayName,\n                            c = e.specPath,\n                            p = i.get(\"description\"),\n                            h = i.get(\"items\"),\n                            v = i.get(\"title\") || l || s,\n                            m = i.filter(function(e, t) {\n                                return -1 === [\"type\", \"items\", \"description\", \"$$ref\"].indexOf(t)\n                            }),\n                            g = t(\"Markdown\"),\n                            y = t(\"ModelCollapse\"),\n                            b = t(\"Model\"),\n                            _ = t(\"Property\"),\n                            w = v && f.default.createElement(\"span\", {\n                                className: \"model-title\"\n                            }, f.default.createElement(\"span\", {\n                                className: \"model-title__text\"\n                            }, v));\n                        return f.default.createElement(\"span\", {\n                            className: \"model\"\n                        }, f.default.createElement(y, {\n                            title: w,\n                            expanded: a <= u,\n                            collapsedContent: \"[...]\"\n                        }, \"[\", m.size ? m.entrySeq().map(function(e) {\n                            var t = (0, o.default)(e, 2),\n                                n = t[0],\n                                r = t[1];\n                            return f.default.createElement(_, {\n                                key: n + \"-\" + r,\n                                propKey: n,\n                                propVal: r,\n                                propStyle: d\n                            })\n                        }) : null, p ? f.default.createElement(g, {\n                            source: p\n                        }) : m.size ? f.default.createElement(\"div\", {\n                            className: \"markdown\"\n                        }) : null, f.default.createElement(\"span\", null, f.default.createElement(b, (0, r.default)({}, this.props, {\n                            getConfigs: n,\n                            specPath: c.push(\"items\"),\n                            name: null,\n                            schema: h,\n                            required: !1,\n                            depth: a + 1\n                        }))), \"]\"))\n                    }\n                }]), t\n            }(c.Component);\n        t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(18)),\n            o = p(n(4)),\n            i = p(n(2)),\n            a = p(n(3)),\n            u = p(n(5)),\n            s = p(n(6)),\n            l = n(0),\n            c = p(l),\n            f = (p(n(1)), n(10));\n\n        function p(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var d = {\n                color: \"#6b6b6b\",\n                fontStyle: \"italic\"\n            },\n            h = function(e) {\n                function t() {\n                    return (0, i.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, o.default)(t)).apply(this, arguments))\n                }\n                return (0, s.default)(t, e), (0, a.default)(t, [{\n                    key: \"render\",\n                    value: function() {\n                        var e = this.props,\n                            t = e.schema,\n                            n = e.getComponent,\n                            o = e.getConfigs,\n                            i = e.name,\n                            a = e.displayName,\n                            u = e.depth,\n                            s = o().showExtensions;\n                        if (!t || !t.get) return c.default.createElement(\"div\", null);\n                        var l = t.get(\"type\"),\n                            p = t.get(\"format\"),\n                            h = t.get(\"xml\"),\n                            v = t.get(\"enum\"),\n                            m = t.get(\"title\") || a || i,\n                            g = t.get(\"description\"),\n                            y = (0, f.getExtensions)(t),\n                            b = t.filter(function(e, t) {\n                                return -1 === [\"enum\", \"type\", \"format\", \"description\", \"$$ref\"].indexOf(t)\n                            }).filterNot(function(e, t) {\n                                return y.has(t)\n                            }),\n                            _ = n(\"Markdown\"),\n                            w = n(\"EnumModel\"),\n                            E = n(\"Property\");\n                        return c.default.createElement(\"span\", {\n                            className: \"model\"\n                        }, c.default.createElement(\"span\", {\n                            className: \"prop\"\n                        }, i && c.default.createElement(\"span\", {\n                            className: (1 === u && \"model-title\") + \" prop-name\"\n                        }, m), c.default.createElement(\"span\", {\n                            className: \"prop-type\"\n                        }, l), p && c.default.createElement(\"span\", {\n                            className: \"prop-format\"\n                        }, \"($\", p, \")\"), b.size ? b.entrySeq().map(function(e) {\n                            var t = (0, r.default)(e, 2),\n                                n = t[0],\n                                o = t[1];\n                            return c.default.createElement(E, {\n                                key: n + \"-\" + o,\n                                propKey: n,\n                                propVal: o,\n                                propStyle: d\n                            })\n                        }) : null, s && y.size ? y.entrySeq().map(function(e) {\n                            var t = (0, r.default)(e, 2),\n                                n = t[0],\n                                o = t[1];\n                            return c.default.createElement(E, {\n                                key: n + \"-\" + o,\n                                propKey: n,\n                                propVal: o,\n                                propStyle: d\n                            })\n                        }) : null, g ? c.default.createElement(_, {\n                            source: g\n                        }) : null, h && h.size ? c.default.createElement(\"span\", null, c.default.createElement(\"br\", null), c.default.createElement(\"span\", {\n                            style: d\n                        }, \"xml:\"), h.entrySeq().map(function(e) {\n                            var t = (0, r.default)(e, 2),\n                                n = t[0],\n                                o = t[1];\n                            return c.default.createElement(\"span\", {\n                                key: n + \"-\" + o,\n                                style: d\n                            }, c.default.createElement(\"br\", null), \"   \", n, \": \", String(o))\n                        }).toArray()) : null, v && c.default.createElement(w, {\n                            value: v,\n                            getComponent: n\n                        })))\n                    }\n                }]), t\n            }(l.Component);\n        t.default = h\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.Property = void 0;\n        var r = o(n(0));\n        o(n(1));\n\n        function o(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var i = t.Property = function(e) {\n            var t = e.propKey,\n                n = e.propVal,\n                o = e.propStyle;\n            return r.default.createElement(\"span\", {\n                style: o\n            }, r.default.createElement(\"br\", null), t, \": \", String(n))\n        };\n        t.default = i\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.onTryoutClick,\n                        n = e.onCancelClick,\n                        r = e.enabled;\n                    return s.default.createElement(\"div\", {\n                        className: \"try-out\"\n                    }, r ? s.default.createElement(\"button\", {\n                        className: \"btn try-out__btn cancel\",\n                        onClick: n\n                    }, \"Cancel\") : s.default.createElement(\"button\", {\n                        className: \"btn try-out__btn\",\n                        onClick: t\n                    }, \"Try it out \"))\n                }\n            }]), t\n        }(s.default.Component);\n        c.defaultProps = {\n            onTryoutClick: Function.prototype,\n            onCancelClick: Function.prototype,\n            enabled: !1\n        }, t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.bypass,\n                        n = e.isSwagger2,\n                        r = e.isOAS3,\n                        o = e.alsoShow;\n                    return t ? s.default.createElement(\"div\", null, this.props.children) : n && r ? s.default.createElement(\"div\", {\n                        className: \"version-pragma\"\n                    }, o, s.default.createElement(\"div\", {\n                        className: \"version-pragma__message version-pragma__message--ambiguous\"\n                    }, s.default.createElement(\"div\", null, s.default.createElement(\"h3\", null, \"Unable to render this definition\"), s.default.createElement(\"p\", null, s.default.createElement(\"code\", null, \"swagger\"), \" and \", s.default.createElement(\"code\", null, \"openapi\"), \" fields cannot be present in the same Swagger or OpenAPI definition. Please remove one of the fields.\"), s.default.createElement(\"p\", null, \"Supported version fields are \", s.default.createElement(\"code\", null, \"swagger: \", '\"2.0\"'), \" and those that match \", s.default.createElement(\"code\", null, \"openapi: 3.0.n\"), \" (for example, \", s.default.createElement(\"code\", null, \"openapi: 3.0.0\"), \").\")))) : n || r ? s.default.createElement(\"div\", null, this.props.children) : s.default.createElement(\"div\", {\n                        className: \"version-pragma\"\n                    }, o, s.default.createElement(\"div\", {\n                        className: \"version-pragma__message version-pragma__message--missing\"\n                    }, s.default.createElement(\"div\", null, s.default.createElement(\"h3\", null, \"Unable to render this definition\"), s.default.createElement(\"p\", null, \"The provided definition does not specify a valid version field.\"), s.default.createElement(\"p\", null, \"Please indicate a valid Swagger or OpenAPI version field. Supported version fields are \", s.default.createElement(\"code\", null, \"swagger: \", '\"2.0\"'), \" and those that match \", s.default.createElement(\"code\", null, \"openapi: 3.0.n\"), \" (for example, \", s.default.createElement(\"code\", null, \"openapi: 3.0.0\"), \").\"))))\n                }\n            }]), t\n        }(s.default.PureComponent);\n        c.defaultProps = {\n            alsoShow: null,\n            children: null,\n            bypass: !1\n        }, t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = o(n(0));\n        o(n(1));\n\n        function o(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        t.default = function(e) {\n            var t = e.version;\n            return r.default.createElement(\"small\", null, r.default.createElement(\"pre\", {\n                className: \"version\"\n            }, \" \", t, \" \"))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.DeepLink = void 0;\n        var r = o(n(0));\n        o(n(1));\n\n        function o(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var i = t.DeepLink = function(e) {\n            var t = e.enabled,\n                n = e.path,\n                o = e.text;\n            return r.default.createElement(\"a\", {\n                className: \"nostyle\",\n                onClick: t ? function(e) {\n                    return e.preventDefault()\n                } : null,\n                href: t ? \"#/\" + n : null\n            }, r.default.createElement(\"span\", null, o))\n        };\n        t.default = i\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r, o = n(0),\n            i = (r = o) && r.__esModule ? r : {\n                default: r\n            };\n        t.default = function() {\n            return i.default.createElement(\"div\", null, i.default.createElement(\"svg\", {\n                xmlns: \"http://www.w3.org/2000/svg\",\n                xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n                style: {\n                    position: \"absolute\",\n                    width: 0,\n                    height: 0\n                }\n            }, i.default.createElement(\"defs\", null, i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 20 20\",\n                id: \"unlocked\"\n            }, i.default.createElement(\"path\", {\n                d: \"M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z\"\n            })), i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 20 20\",\n                id: \"locked\"\n            }, i.default.createElement(\"path\", {\n                d: \"M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z\"\n            })), i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 20 20\",\n                id: \"close\"\n            }, i.default.createElement(\"path\", {\n                d: \"M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z\"\n            })), i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 20 20\",\n                id: \"large-arrow\"\n            }, i.default.createElement(\"path\", {\n                d: \"M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z\"\n            })), i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 20 20\",\n                id: \"large-arrow-down\"\n            }, i.default.createElement(\"path\", {\n                d: \"M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z\"\n            })), i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 24 24\",\n                id: \"jump-to\"\n            }, i.default.createElement(\"path\", {\n                d: \"M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z\"\n            })), i.default.createElement(\"symbol\", {\n                viewBox: \"0 0 24 24\",\n                id: \"expand\"\n            }, i.default.createElement(\"path\", {\n                d: \"M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z\"\n            })))))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(27).assign,\n            o = n(1002),\n            i = n(1004),\n            a = n(1015),\n            u = n(1030),\n            s = n(152),\n            l = {\n                default: n(1049),\n                full: n(1050),\n                commonmark: n(1051)\n            };\n\n        function c(e, t, n) {\n            this.src = t, this.env = n, this.options = e.options, this.tokens = [], this.inlineMode = !1, this.inline = e.inline, this.block = e.block, this.renderer = e.renderer, this.typographer = e.typographer\n        }\n\n        function f(e, t) {\n            \"string\" != typeof e && (t = e, e = \"default\"), this.inline = new u, this.block = new a, this.core = new i, this.renderer = new o, this.ruler = new s, this.options = {}, this.configure(l[e]), this.set(t || {})\n        }\n        f.prototype.set = function(e) {\n            r(this.options, e)\n        }, f.prototype.configure = function(e) {\n            var t = this;\n            if (!e) throw new Error(\"Wrong `remarkable` preset, check name/content\");\n            e.options && t.set(e.options), e.components && Object.keys(e.components).forEach(function(n) {\n                e.components[n].rules && t[n].ruler.enable(e.components[n].rules, !0)\n            })\n        }, f.prototype.use = function(e, t) {\n            return e(this, t), this\n        }, f.prototype.parse = function(e, t) {\n            var n = new c(this, e, t);\n            return this.core.process(n), n.tokens\n        }, f.prototype.render = function(e, t) {\n            return t = t || {}, this.renderer.render(this.parse(e, t), this.options, t)\n        }, f.prototype.parseInline = function(e, t) {\n            var n = new c(this, e, t);\n            return n.inlineMode = !0, this.core.process(n), n.tokens\n        }, f.prototype.renderInline = function(e, t) {\n            return t = t || {}, this.renderer.render(this.parseInline(e, t), this.options, t)\n        }, e.exports = f, e.exports.utils = n(27)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(27),\n            o = n(1003);\n\n        function i() {\n            this.rules = r.assign({}, o), this.getBreak = o.getBreak\n        }\n        e.exports = i, i.prototype.renderInline = function(e, t, n) {\n            for (var r = this.rules, o = e.length, i = 0, a = \"\"; o--;) a += r[e[i].type](e, i++, t, n, this);\n            return a\n        }, i.prototype.render = function(e, t, n) {\n            for (var r = this.rules, o = e.length, i = -1, a = \"\"; ++i < o;) \"inline\" === e[i].type ? a += this.renderInline(e[i].children, t, n) : a += r[e[i].type](e, i, t, n, this);\n            return a\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(27).has,\n            o = n(27).unescapeMd,\n            i = n(27).replaceEntities,\n            a = n(27).escapeHtml,\n            u = {};\n        u.blockquote_open = function() {\n            return \"<blockquote>\\n\"\n        }, u.blockquote_close = function(e, t) {\n            return \"</blockquote>\" + s(e, t)\n        }, u.code = function(e, t) {\n            return e[t].block ? \"<pre><code>\" + a(e[t].content) + \"</code></pre>\" + s(e, t) : \"<code>\" + a(e[t].content) + \"</code>\"\n        }, u.fence = function(e, t, n, u, l) {\n            var c, f, p = e[t],\n                d = \"\",\n                h = n.langPrefix;\n            if (p.params) {\n                if (f = (c = p.params.split(/\\s+/g)).join(\" \"), r(l.rules.fence_custom, c[0])) return l.rules.fence_custom[c[0]](e, t, n, u, l);\n                d = ' class=\"' + h + a(i(o(f))) + '\"'\n            }\n            return \"<pre><code\" + d + \">\" + (n.highlight && n.highlight.apply(n.highlight, [p.content].concat(c)) || a(p.content)) + \"</code></pre>\" + s(e, t)\n        }, u.fence_custom = {}, u.heading_open = function(e, t) {\n            return \"<h\" + e[t].hLevel + \">\"\n        }, u.heading_close = function(e, t) {\n            return \"</h\" + e[t].hLevel + \">\\n\"\n        }, u.hr = function(e, t, n) {\n            return (n.xhtmlOut ? \"<hr />\" : \"<hr>\") + s(e, t)\n        }, u.bullet_list_open = function() {\n            return \"<ul>\\n\"\n        }, u.bullet_list_close = function(e, t) {\n            return \"</ul>\" + s(e, t)\n        }, u.list_item_open = function() {\n            return \"<li>\"\n        }, u.list_item_close = function() {\n            return \"</li>\\n\"\n        }, u.ordered_list_open = function(e, t) {\n            var n = e[t];\n            return \"<ol\" + (n.order > 1 ? ' start=\"' + n.order + '\"' : \"\") + \">\\n\"\n        }, u.ordered_list_close = function(e, t) {\n            return \"</ol>\" + s(e, t)\n        }, u.paragraph_open = function(e, t) {\n            return e[t].tight ? \"\" : \"<p>\"\n        }, u.paragraph_close = function(e, t) {\n            var n = !(e[t].tight && t && \"inline\" === e[t - 1].type && !e[t - 1].content);\n            return (e[t].tight ? \"\" : \"</p>\") + (n ? s(e, t) : \"\")\n        }, u.link_open = function(e, t, n) {\n            var r = e[t].title ? ' title=\"' + a(i(e[t].title)) + '\"' : \"\",\n                o = n.linkTarget ? ' target=\"' + n.linkTarget + '\"' : \"\";\n            return '<a href=\"' + a(e[t].href) + '\"' + r + o + \">\"\n        }, u.link_close = function() {\n            return \"</a>\"\n        }, u.image = function(e, t, n) {\n            var r = ' src=\"' + a(e[t].src) + '\"',\n                u = e[t].title ? ' title=\"' + a(i(e[t].title)) + '\"' : \"\";\n            return \"<img\" + r + (' alt=\"' + (e[t].alt ? a(i(o(e[t].alt))) : \"\") + '\"') + u + (n.xhtmlOut ? \" /\" : \"\") + \">\"\n        }, u.table_open = function() {\n            return \"<table>\\n\"\n        }, u.table_close = function() {\n            return \"</table>\\n\"\n        }, u.thead_open = function() {\n            return \"<thead>\\n\"\n        }, u.thead_close = function() {\n            return \"</thead>\\n\"\n        }, u.tbody_open = function() {\n            return \"<tbody>\\n\"\n        }, u.tbody_close = function() {\n            return \"</tbody>\\n\"\n        }, u.tr_open = function() {\n            return \"<tr>\"\n        }, u.tr_close = function() {\n            return \"</tr>\\n\"\n        }, u.th_open = function(e, t) {\n            var n = e[t];\n            return \"<th\" + (n.align ? ' style=\"text-align:' + n.align + '\"' : \"\") + \">\"\n        }, u.th_close = function() {\n            return \"</th>\"\n        }, u.td_open = function(e, t) {\n            var n = e[t];\n            return \"<td\" + (n.align ? ' style=\"text-align:' + n.align + '\"' : \"\") + \">\"\n        }, u.td_close = function() {\n            return \"</td>\"\n        }, u.strong_open = function() {\n            return \"<strong>\"\n        }, u.strong_close = function() {\n            return \"</strong>\"\n        }, u.em_open = function() {\n            return \"<em>\"\n        }, u.em_close = function() {\n            return \"</em>\"\n        }, u.del_open = function() {\n            return \"<del>\"\n        }, u.del_close = function() {\n            return \"</del>\"\n        }, u.ins_open = function() {\n            return \"<ins>\"\n        }, u.ins_close = function() {\n            return \"</ins>\"\n        }, u.mark_open = function() {\n            return \"<mark>\"\n        }, u.mark_close = function() {\n            return \"</mark>\"\n        }, u.sub = function(e, t) {\n            return \"<sub>\" + a(e[t].content) + \"</sub>\"\n        }, u.sup = function(e, t) {\n            return \"<sup>\" + a(e[t].content) + \"</sup>\"\n        }, u.hardbreak = function(e, t, n) {\n            return n.xhtmlOut ? \"<br />\\n\" : \"<br>\\n\"\n        }, u.softbreak = function(e, t, n) {\n            return n.breaks ? n.xhtmlOut ? \"<br />\\n\" : \"<br>\\n\" : \"\\n\"\n        }, u.text = function(e, t) {\n            return a(e[t].content)\n        }, u.htmlblock = function(e, t) {\n            return e[t].content\n        }, u.htmltag = function(e, t) {\n            return e[t].content\n        }, u.abbr_open = function(e, t) {\n            return '<abbr title=\"' + a(i(e[t].title)) + '\">'\n        }, u.abbr_close = function() {\n            return \"</abbr>\"\n        }, u.footnote_ref = function(e, t) {\n            var n = Number(e[t].id + 1).toString(),\n                r = \"fnref\" + n;\n            return e[t].subId > 0 && (r += \":\" + e[t].subId), '<sup class=\"footnote-ref\"><a href=\"#fn' + n + '\" id=\"' + r + '\">[' + n + \"]</a></sup>\"\n        }, u.footnote_block_open = function(e, t, n) {\n            return (n.xhtmlOut ? '<hr class=\"footnotes-sep\" />\\n' : '<hr class=\"footnotes-sep\">\\n') + '<section class=\"footnotes\">\\n<ol class=\"footnotes-list\">\\n'\n        }, u.footnote_block_close = function() {\n            return \"</ol>\\n</section>\\n\"\n        }, u.footnote_open = function(e, t) {\n            return '<li id=\"fn' + Number(e[t].id + 1).toString() + '\"  class=\"footnote-item\">'\n        }, u.footnote_close = function() {\n            return \"</li>\\n\"\n        }, u.footnote_anchor = function(e, t) {\n            var n = \"fnref\" + Number(e[t].id + 1).toString();\n            return e[t].subId > 0 && (n += \":\" + e[t].subId), ' <a href=\"#' + n + '\" class=\"footnote-backref\">↩</a>'\n        }, u.dl_open = function() {\n            return \"<dl>\\n\"\n        }, u.dt_open = function() {\n            return \"<dt>\"\n        }, u.dd_open = function() {\n            return \"<dd>\"\n        }, u.dl_close = function() {\n            return \"</dl>\\n\"\n        }, u.dt_close = function() {\n            return \"</dt>\\n\"\n        }, u.dd_close = function() {\n            return \"</dd>\\n\"\n        };\n        var s = u.getBreak = function(e, t) {\n            return (t = function e(t, n) {\n                return ++n >= t.length - 2 ? n : \"paragraph_open\" === t[n].type && t[n].tight && \"inline\" === t[n + 1].type && 0 === t[n + 1].content.length && \"paragraph_close\" === t[n + 2].type && t[n + 2].tight ? e(t, n + 2) : n\n            }(e, t)) < e.length && \"list_item_close\" === e[t].type ? \"\" : \"\\n\"\n        };\n        e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(152),\n            o = [\n                [\"block\", n(1005)],\n                [\"abbr\", n(1006)],\n                [\"references\", n(1007)],\n                [\"inline\", n(1008)],\n                [\"footnote_tail\", n(1009)],\n                [\"abbr2\", n(1010)],\n                [\"replacements\", n(1011)],\n                [\"smartquotes\", n(1012)],\n                [\"linkify\", n(1013)]\n            ];\n\n        function i() {\n            this.options = {}, this.ruler = new r;\n            for (var e = 0; e < o.length; e++) this.ruler.push(o[e][0], o[e][1])\n        }\n        i.prototype.process = function(e) {\n            var t, n, r;\n            for (t = 0, n = (r = this.ruler.getRules(\"\")).length; t < n; t++) r[t](e)\n        }, e.exports = i\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            e.inlineMode ? e.tokens.push({\n                type: \"inline\",\n                content: e.src.replace(/\\n/g, \" \").trim(),\n                level: 0,\n                lines: [0, 1],\n                children: []\n            }) : e.block.parse(e.src, e.options, e.env, e.tokens)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(235),\n            o = n(153);\n\n        function i(e, t, n, i) {\n            var a, u, s, l, c, f;\n            if (42 !== e.charCodeAt(0)) return -1;\n            if (91 !== e.charCodeAt(1)) return -1;\n            if (-1 === e.indexOf(\"]:\")) return -1;\n            if (a = new r(e, t, n, i, []), (u = o(a, 1)) < 0 || 58 !== e.charCodeAt(u + 1)) return -1;\n            for (l = a.posMax, s = u + 2; s < l && 10 !== a.src.charCodeAt(s); s++);\n            return c = e.slice(2, u), 0 === (f = e.slice(u + 2, s).trim()).length ? -1 : (i.abbreviations || (i.abbreviations = {}), void 0 === i.abbreviations[\":\" + c] && (i.abbreviations[\":\" + c] = f), s)\n        }\n        e.exports = function(e) {\n            var t, n, r, o, a = e.tokens;\n            if (!e.inlineMode)\n                for (t = 1, n = a.length - 1; t < n; t++)\n                    if (\"paragraph_open\" === a[t - 1].type && \"inline\" === a[t].type && \"paragraph_close\" === a[t + 1].type) {\n                        for (r = a[t].content; r.length && !((o = i(r, e.inline, e.options, e.env)) < 0);) r = r.slice(o).trim();\n                        a[t].content = r, r.length || (a[t - 1].tight = !0, a[t + 1].tight = !0)\n                    }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(235),\n            o = n(153),\n            i = n(417),\n            a = n(419),\n            u = n(420);\n\n        function s(e, t, n, s) {\n            var l, c, f, p, d, h, v, m, g;\n            if (91 !== e.charCodeAt(0)) return -1;\n            if (-1 === e.indexOf(\"]:\")) return -1;\n            if (l = new r(e, t, n, s, []), (c = o(l, 0)) < 0 || 58 !== e.charCodeAt(c + 1)) return -1;\n            for (p = l.posMax, f = c + 2; f < p && (32 === (d = l.src.charCodeAt(f)) || 10 === d); f++);\n            if (!i(l, f)) return -1;\n            for (v = l.linkContent, h = f = l.pos, f += 1; f < p && (32 === (d = l.src.charCodeAt(f)) || 10 === d); f++);\n            for (f < p && h !== f && a(l, f) ? (m = l.linkContent, f = l.pos) : (m = \"\", f = h); f < p && 32 === l.src.charCodeAt(f);) f++;\n            return f < p && 10 !== l.src.charCodeAt(f) ? -1 : (g = u(e.slice(1, c)), void 0 === s.references[g] && (s.references[g] = {\n                title: m,\n                href: v\n            }), f)\n        }\n        e.exports = function(e) {\n            var t, n, r, o, i = e.tokens;\n            if (e.env.references = e.env.references || {}, !e.inlineMode)\n                for (t = 1, n = i.length - 1; t < n; t++)\n                    if (\"inline\" === i[t].type && \"paragraph_open\" === i[t - 1].type && \"paragraph_close\" === i[t + 1].type) {\n                        for (r = i[t].content; r.length && !((o = s(r, e.inline, e.options, e.env)) < 0);) r = r.slice(o).trim();\n                        i[t].content = r, r.length || (i[t - 1].tight = !0, i[t + 1].tight = !0)\n                    }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t, n, r, o = e.tokens;\n            for (n = 0, r = o.length; n < r; n++) \"inline\" === (t = o[n]).type && e.inline.parse(t.content, e.options, e.env, t.children)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e) {\n            var t, n, r, o, i, a, u, s, l, c = 0,\n                f = !1,\n                p = {};\n            if (e.env.footnotes && (e.tokens = e.tokens.filter(function(e) {\n                return \"footnote_reference_open\" === e.type ? (f = !0, s = [], l = e.label, !1) : \"footnote_reference_close\" === e.type ? (f = !1, p[\":\" + l] = s, !1) : (f && s.push(e), !f)\n            }), e.env.footnotes.list)) {\n                for (a = e.env.footnotes.list, e.tokens.push({\n                    type: \"footnote_block_open\",\n                    level: c++\n                }), t = 0, n = a.length; t < n; t++) {\n                    for (e.tokens.push({\n                        type: \"footnote_open\",\n                        id: t,\n                        level: c++\n                    }), a[t].tokens ? ((u = []).push({\n                        type: \"paragraph_open\",\n                        tight: !1,\n                        level: c++\n                    }), u.push({\n                        type: \"inline\",\n                        content: \"\",\n                        level: c,\n                        children: a[t].tokens\n                    }), u.push({\n                        type: \"paragraph_close\",\n                        tight: !1,\n                        level: --c\n                    })) : a[t].label && (u = p[\":\" + a[t].label]), e.tokens = e.tokens.concat(u), i = \"paragraph_close\" === e.tokens[e.tokens.length - 1].type ? e.tokens.pop() : null, o = a[t].count > 0 ? a[t].count : 1, r = 0; r < o; r++) e.tokens.push({\n                        type: \"footnote_anchor\",\n                        id: t,\n                        subId: r,\n                        level: c\n                    });\n                    i && e.tokens.push(i), e.tokens.push({\n                        type: \"footnote_close\",\n                        level: --c\n                    })\n                }\n                e.tokens.push({\n                    type: \"footnote_block_close\",\n                    level: --c\n                })\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e) {\n            return e.replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\")\n        }\n        e.exports = function(e) {\n            var t, n, o, i, a, u, s, l, c, f, p, d, h = e.tokens;\n            if (e.env.abbreviations)\n                for (e.env.abbrRegExp || (d = \"(^|[\" + \" \\n()[]'\\\".,!?-\".split(\"\").map(r).join(\"\") + \"])(\" + Object.keys(e.env.abbreviations).map(function(e) {\n                    return e.substr(1)\n                }).sort(function(e, t) {\n                    return t.length - e.length\n                }).map(r).join(\"|\") + \")($|[\" + \" \\n()[]'\\\".,!?-\".split(\"\").map(r).join(\"\") + \"])\", e.env.abbrRegExp = new RegExp(d, \"g\")), f = e.env.abbrRegExp, n = 0, o = h.length; n < o; n++)\n                    if (\"inline\" === h[n].type)\n                        for (t = (i = h[n].children).length - 1; t >= 0; t--)\n                            if (\"text\" === (a = i[t]).type) {\n                                for (l = 0, u = a.content, f.lastIndex = 0, c = a.level, s = []; p = f.exec(u);) f.lastIndex > l && s.push({\n                                    type: \"text\",\n                                    content: u.slice(l, p.index + p[1].length),\n                                    level: c\n                                }), s.push({\n                                    type: \"abbr_open\",\n                                    title: e.env.abbreviations[\":\" + p[2]],\n                                    level: c++\n                                }), s.push({\n                                    type: \"text\",\n                                    content: p[2],\n                                    level: c\n                                }), s.push({\n                                    type: \"abbr_close\",\n                                    level: --c\n                                }), l = f.lastIndex - p[3].length;\n                                s.length && (l < u.length && s.push({\n                                    type: \"text\",\n                                    content: u.slice(l),\n                                    level: c\n                                }), h[n].children = i = [].concat(i.slice(0, t), s, i.slice(t + 1)))\n                            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /\\+-|\\.\\.|\\?\\?\\?\\?|!!!!|,,|--/,\n            o = /\\((c|tm|r|p)\\)/gi,\n            i = {\n                c: \"©\",\n                r: \"®\",\n                p: \"§\",\n                tm: \"™\"\n            };\n        e.exports = function(e) {\n            var t, n, a, u, s, l;\n            if (e.options.typographer)\n                for (s = e.tokens.length - 1; s >= 0; s--)\n                    if (\"inline\" === e.tokens[s].type)\n                        for (t = (u = e.tokens[s].children).length - 1; t >= 0; t--) \"text\" === (n = u[t]).type && (a = n.content, a = (l = a).indexOf(\"(\") < 0 ? l : l.replace(o, function(e, t) {\n                            return i[t.toLowerCase()]\n                        }), r.test(a) && (a = a.replace(/\\+-/g, \"±\").replace(/\\.{2,}/g, \"…\").replace(/([?!])…/g, \"$1..\").replace(/([?!]){4,}/g, \"$1$1$1\").replace(/,{2,}/g, \",\").replace(/(^|[^-])---([^-]|$)/gm, \"$1—$2\").replace(/(^|\\s)--(\\s|$)/gm, \"$1–$2\").replace(/(^|[^-\\s])--([^-\\s]|$)/gm, \"$1–$2\")), n.content = a)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /['\"]/,\n            o = /['\"]/g,\n            i = /[-\\s()\\[\\]]/;\n\n        function a(e, t) {\n            return !(t < 0 || t >= e.length) && !i.test(e[t])\n        }\n\n        function u(e, t, n) {\n            return e.substr(0, t) + n + e.substr(t + 1)\n        }\n        e.exports = function(e) {\n            var t, n, i, s, l, c, f, p, d, h, v, m, g, y, b, _, w;\n            if (e.options.typographer)\n                for (w = [], b = e.tokens.length - 1; b >= 0; b--)\n                    if (\"inline\" === e.tokens[b].type)\n                        for (_ = e.tokens[b].children, w.length = 0, t = 0; t < _.length; t++)\n                            if (\"text\" === (n = _[t]).type && !r.test(n.text)) {\n                                for (f = _[t].level, g = w.length - 1; g >= 0 && !(w[g].level <= f); g--);\n                                w.length = g + 1, l = 0, c = (i = n.content).length;\n                                e: for (; l < c && (o.lastIndex = l, s = o.exec(i));)\n                                    if (p = !a(i, s.index - 1), l = s.index + 1, y = \"'\" === s[0], (d = !a(i, l)) || p) {\n                                        if (v = !d, m = !p)\n                                            for (g = w.length - 1; g >= 0 && (h = w[g], !(w[g].level < f)); g--)\n                                                if (h.single === y && w[g].level === f) {\n                                                    h = w[g], y ? (_[h.token].content = u(_[h.token].content, h.pos, e.options.quotes[2]), n.content = u(n.content, s.index, e.options.quotes[3])) : (_[h.token].content = u(_[h.token].content, h.pos, e.options.quotes[0]), n.content = u(n.content, s.index, e.options.quotes[1])), w.length = g;\n                                                    continue e\n                                                }\n                                        v ? w.push({\n                                            token: t,\n                                            pos: s.index,\n                                            single: y,\n                                            level: f\n                                        }) : m && y && (n.content = u(n.content, s.index, \"’\"))\n                                    } else y && (n.content = u(n.content, s.index, \"’\"))\n                            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(1014),\n            o = /www|@|\\:\\/\\//;\n\n        function i(e) {\n            return /^<\\/a\\s*>/i.test(e)\n        }\n\n        function a() {\n            var e = [],\n                t = new r({\n                    stripPrefix: !1,\n                    url: !0,\n                    email: !0,\n                    twitter: !1,\n                    replaceFn: function(t, n) {\n                        switch (n.getType()) {\n                            case \"url\":\n                                e.push({\n                                    text: n.matchedText,\n                                    url: n.getUrl()\n                                });\n                                break;\n                            case \"email\":\n                                e.push({\n                                    text: n.matchedText,\n                                    url: \"mailto:\" + n.getEmail().replace(/^mailto:/i, \"\")\n                                })\n                        }\n                        return !1\n                    }\n                });\n            return {\n                links: e,\n                autolinker: t\n            }\n        }\n        e.exports = function(e) {\n            var t, n, r, u, s, l, c, f, p, d, h, v, m, g, y = e.tokens,\n                b = null;\n            if (e.options.linkify)\n                for (n = 0, r = y.length; n < r; n++)\n                    if (\"inline\" === y[n].type)\n                        for (h = 0, t = (u = y[n].children).length - 1; t >= 0; t--)\n                            if (\"link_close\" !== (s = u[t]).type) {\n                                if (\"htmltag\" === s.type && (g = s.content, /^<a[>\\s]/i.test(g) && h > 0 && h--, i(s.content) && h++), !(h > 0) && \"text\" === s.type && o.test(s.content)) {\n                                    if (b || (v = (b = a()).links, m = b.autolinker), l = s.content, v.length = 0, m.link(l), !v.length) continue;\n                                    for (c = [], d = s.level, f = 0; f < v.length; f++) e.inline.validateLink(v[f].url) && ((p = l.indexOf(v[f].text)) && (d = d, c.push({\n                                        type: \"text\",\n                                        content: l.slice(0, p),\n                                        level: d\n                                    })), c.push({\n                                        type: \"link_open\",\n                                        href: v[f].url,\n                                        title: \"\",\n                                        level: d++\n                                    }), c.push({\n                                        type: \"text\",\n                                        content: v[f].text,\n                                        level: d\n                                    }), c.push({\n                                        type: \"link_close\",\n                                        level: --d\n                                    }), l = l.slice(p + v[f].text.length));\n                                    l.length && c.push({\n                                        type: \"text\",\n                                        content: l,\n                                        level: d\n                                    }), y[n].children = u = [].concat(u.slice(0, t), c, u.slice(t + 1))\n                                }\n                            } else\n                                for (t--; u[t].level !== s.level && \"link_open\" !== u[t].type;) t--\n        }\n    }, function(e, t, n) {\n        var r, o, i;\n        o = this, i = function() {\n            /*!\n             * Autolinker.js\n             * 0.15.3\n             *\n             * Copyright(c) 2015 Gregory Jacobs <greg@greg-jacobs.com>\n             * MIT Licensed. http://www.opensource.org/licenses/mit-license.php\n             *\n             * https://github.com/gregjacobs/Autolinker.js\n             */\n            var e, t, n, r, o = function(e) {\n                o.Util.assign(this, e)\n            };\n            return o.prototype = {\n                constructor: o,\n                urls: !0,\n                email: !0,\n                twitter: !0,\n                newWindow: !0,\n                stripPrefix: !0,\n                truncate: void 0,\n                className: \"\",\n                htmlParser: void 0,\n                matchParser: void 0,\n                tagBuilder: void 0,\n                link: function(e) {\n                    for (var t = this.getHtmlParser().parse(e), n = 0, r = [], o = 0, i = t.length; o < i; o++) {\n                        var a = t[o],\n                            u = a.getType(),\n                            s = a.getText();\n                        if (\"element\" === u) \"a\" === a.getTagName() && (a.isClosing() ? n = Math.max(n - 1, 0) : n++), r.push(s);\n                        else if (\"entity\" === u) r.push(s);\n                        else if (0 === n) {\n                            var l = this.linkifyStr(s);\n                            r.push(l)\n                        } else r.push(s)\n                    }\n                    return r.join(\"\")\n                },\n                linkifyStr: function(e) {\n                    return this.getMatchParser().replace(e, this.createMatchReturnVal, this)\n                },\n                createMatchReturnVal: function(e) {\n                    var t;\n                    return this.replaceFn && (t = this.replaceFn.call(this, this, e)), \"string\" == typeof t ? t : !1 === t ? e.getMatchedText() : t instanceof o.HtmlTag ? t.toString() : this.getTagBuilder().build(e).toString()\n                },\n                getHtmlParser: function() {\n                    var e = this.htmlParser;\n                    return e || (e = this.htmlParser = new o.htmlParser.HtmlParser), e\n                },\n                getMatchParser: function() {\n                    var e = this.matchParser;\n                    return e || (e = this.matchParser = new o.matchParser.MatchParser({\n                        urls: this.urls,\n                        email: this.email,\n                        twitter: this.twitter,\n                        stripPrefix: this.stripPrefix\n                    })), e\n                },\n                getTagBuilder: function() {\n                    var e = this.tagBuilder;\n                    return e || (e = this.tagBuilder = new o.AnchorTagBuilder({\n                        newWindow: this.newWindow,\n                        truncate: this.truncate,\n                        className: this.className\n                    })), e\n                }\n            }, o.link = function(e, t) {\n                return new o(t).link(e)\n            }, o.match = {}, o.htmlParser = {}, o.matchParser = {}, o.Util = {\n                abstractMethod: function() {\n                    throw \"abstract\"\n                },\n                assign: function(e, t) {\n                    for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);\n                    return e\n                },\n                extend: function(e, t) {\n                    var n, r = e.prototype,\n                        i = function() {};\n                    i.prototype = r;\n                    var a = (n = t.hasOwnProperty(\"constructor\") ? t.constructor : function() {\n                        r.constructor.apply(this, arguments)\n                    }).prototype = new i;\n                    return a.constructor = n, a.superclass = r, delete t.constructor, o.Util.assign(a, t), n\n                },\n                ellipsis: function(e, t, n) {\n                    return e.length > t && (n = null == n ? \"..\" : n, e = e.substring(0, t - n.length) + n), e\n                },\n                indexOf: function(e, t) {\n                    if (Array.prototype.indexOf) return e.indexOf(t);\n                    for (var n = 0, r = e.length; n < r; n++)\n                        if (e[n] === t) return n;\n                    return -1\n                },\n                splitAndCapture: function(e, t) {\n                    if (!t.global) throw new Error(\"`splitRegex` must have the 'g' flag set\");\n                    for (var n, r = [], o = 0; n = t.exec(e);) r.push(e.substring(o, n.index)), r.push(n[0]), o = n.index + n[0].length;\n                    return r.push(e.substring(o)), r\n                }\n            }, o.HtmlTag = o.Util.extend(Object, {\n                whitespaceRegex: /\\s+/,\n                constructor: function(e) {\n                    o.Util.assign(this, e), this.innerHtml = this.innerHtml || this.innerHTML\n                },\n                setTagName: function(e) {\n                    return this.tagName = e, this\n                },\n                getTagName: function() {\n                    return this.tagName || \"\"\n                },\n                setAttr: function(e, t) {\n                    return this.getAttrs()[e] = t, this\n                },\n                getAttr: function(e) {\n                    return this.getAttrs()[e]\n                },\n                setAttrs: function(e) {\n                    var t = this.getAttrs();\n                    return o.Util.assign(t, e), this\n                },\n                getAttrs: function() {\n                    return this.attrs || (this.attrs = {})\n                },\n                setClass: function(e) {\n                    return this.setAttr(\"class\", e)\n                },\n                addClass: function(e) {\n                    for (var t, n = this.getClass(), r = this.whitespaceRegex, i = o.Util.indexOf, a = n ? n.split(r) : [], u = e.split(r); t = u.shift();) - 1 === i(a, t) && a.push(t);\n                    return this.getAttrs().class = a.join(\" \"), this\n                },\n                removeClass: function(e) {\n                    for (var t, n = this.getClass(), r = this.whitespaceRegex, i = o.Util.indexOf, a = n ? n.split(r) : [], u = e.split(r); a.length && (t = u.shift());) {\n                        var s = i(a, t); - 1 !== s && a.splice(s, 1)\n                    }\n                    return this.getAttrs().class = a.join(\" \"), this\n                },\n                getClass: function() {\n                    return this.getAttrs().class || \"\"\n                },\n                hasClass: function(e) {\n                    return -1 !== (\" \" + this.getClass() + \" \").indexOf(\" \" + e + \" \")\n                },\n                setInnerHtml: function(e) {\n                    return this.innerHtml = e, this\n                },\n                getInnerHtml: function() {\n                    return this.innerHtml || \"\"\n                },\n                toString: function() {\n                    var e = this.getTagName(),\n                        t = this.buildAttrsStr();\n                    return [\"<\", e, t = t ? \" \" + t : \"\", \">\", this.getInnerHtml(), \"</\", e, \">\"].join(\"\")\n                },\n                buildAttrsStr: function() {\n                    if (!this.attrs) return \"\";\n                    var e = this.getAttrs(),\n                        t = [];\n                    for (var n in e) e.hasOwnProperty(n) && t.push(n + '=\"' + e[n] + '\"');\n                    return t.join(\" \")\n                }\n            }), o.AnchorTagBuilder = o.Util.extend(Object, {\n                constructor: function(e) {\n                    o.Util.assign(this, e)\n                },\n                build: function(e) {\n                    return new o.HtmlTag({\n                        tagName: \"a\",\n                        attrs: this.createAttrs(e.getType(), e.getAnchorHref()),\n                        innerHtml: this.processAnchorText(e.getAnchorText())\n                    })\n                },\n                createAttrs: function(e, t) {\n                    var n = {\n                            href: t\n                        },\n                        r = this.createCssClass(e);\n                    return r && (n.class = r), this.newWindow && (n.target = \"_blank\"), n\n                },\n                createCssClass: function(e) {\n                    var t = this.className;\n                    return t ? t + \" \" + t + \"-\" + e : \"\"\n                },\n                processAnchorText: function(e) {\n                    return e = this.doTruncate(e)\n                },\n                doTruncate: function(e) {\n                    return o.Util.ellipsis(e, this.truncate || Number.POSITIVE_INFINITY)\n                }\n            }), o.htmlParser.HtmlParser = o.Util.extend(Object, {\n                htmlRegex: (e = /(?:\"[^\"]*?\"|'[^']*?'|[^'\"=<>`\\s]+)/, t = /[^\\s\\0\"'>\\/=\\x01-\\x1F\\x7F]+/.source + \"(?:\\\\s*=\\\\s*\" + e.source + \")?\", new RegExp([\"(?:\", \"<(!DOCTYPE)\", \"(?:\", \"\\\\s+\", \"(?:\", t, \"|\", e.source + \")\", \")*\", \">\", \")\", \"|\", \"(?:\", \"<(/)?\", \"(\" + /[0-9a-zA-Z][0-9a-zA-Z:]*/.source + \")\", \"(?:\", \"\\\\s+\", t, \")*\", \"\\\\s*/?\", \">\", \")\"].join(\"\"), \"gi\")),\n                htmlCharacterEntitiesRegex: /(&nbsp;|&#160;|&lt;|&#60;|&gt;|&#62;|&quot;|&#34;|&#39;)/gi,\n                parse: function(e) {\n                    for (var t, n, r = this.htmlRegex, o = 0, i = []; null !== (t = r.exec(e));) {\n                        var a = t[0],\n                            u = t[1] || t[3],\n                            s = !!t[2],\n                            l = e.substring(o, t.index);\n                        l && (n = this.parseTextAndEntityNodes(l), i.push.apply(i, n)), i.push(this.createElementNode(a, u, s)), o = t.index + a.length\n                    }\n                    if (o < e.length) {\n                        var c = e.substring(o);\n                        c && (n = this.parseTextAndEntityNodes(c), i.push.apply(i, n))\n                    }\n                    return i\n                },\n                parseTextAndEntityNodes: function(e) {\n                    for (var t = [], n = o.Util.splitAndCapture(e, this.htmlCharacterEntitiesRegex), r = 0, i = n.length; r < i; r += 2) {\n                        var a = n[r],\n                            u = n[r + 1];\n                        a && t.push(this.createTextNode(a)), u && t.push(this.createEntityNode(u))\n                    }\n                    return t\n                },\n                createElementNode: function(e, t, n) {\n                    return new o.htmlParser.ElementNode({\n                        text: e,\n                        tagName: t.toLowerCase(),\n                        closing: n\n                    })\n                },\n                createEntityNode: function(e) {\n                    return new o.htmlParser.EntityNode({\n                        text: e\n                    })\n                },\n                createTextNode: function(e) {\n                    return new o.htmlParser.TextNode({\n                        text: e\n                    })\n                }\n            }), o.htmlParser.HtmlNode = o.Util.extend(Object, {\n                text: \"\",\n                constructor: function(e) {\n                    o.Util.assign(this, e)\n                },\n                getType: o.Util.abstractMethod,\n                getText: function() {\n                    return this.text\n                }\n            }), o.htmlParser.ElementNode = o.Util.extend(o.htmlParser.HtmlNode, {\n                tagName: \"\",\n                closing: !1,\n                getType: function() {\n                    return \"element\"\n                },\n                getTagName: function() {\n                    return this.tagName\n                },\n                isClosing: function() {\n                    return this.closing\n                }\n            }), o.htmlParser.EntityNode = o.Util.extend(o.htmlParser.HtmlNode, {\n                getType: function() {\n                    return \"entity\"\n                }\n            }), o.htmlParser.TextNode = o.Util.extend(o.htmlParser.HtmlNode, {\n                getType: function() {\n                    return \"text\"\n                }\n            }), o.matchParser.MatchParser = o.Util.extend(Object, {\n                urls: !0,\n                email: !0,\n                twitter: !0,\n                stripPrefix: !0,\n                matcherRegex: (n = /[A-Za-z0-9\\.\\-]*[A-Za-z0-9\\-]/, r = /\\.(?:international|construction|contractors|enterprises|photography|productions|foundation|immobilien|industries|management|properties|technology|christmas|community|directory|education|equipment|institute|marketing|solutions|vacations|bargains|boutique|builders|catering|cleaning|clothing|computer|democrat|diamonds|graphics|holdings|lighting|partners|plumbing|supplies|training|ventures|academy|careers|company|cruises|domains|exposed|flights|florist|gallery|guitars|holiday|kitchen|neustar|okinawa|recipes|rentals|reviews|shiksha|singles|support|systems|agency|berlin|camera|center|coffee|condos|dating|estate|events|expert|futbol|kaufen|luxury|maison|monash|museum|nagoya|photos|repair|report|social|supply|tattoo|tienda|travel|viajes|villas|vision|voting|voyage|actor|build|cards|cheap|codes|dance|email|glass|house|mango|ninja|parts|photo|shoes|solar|today|tokyo|tools|watch|works|aero|arpa|asia|best|bike|blue|buzz|camp|club|cool|coop|farm|fish|gift|guru|info|jobs|kiwi|kred|land|limo|link|menu|mobi|moda|name|pics|pink|post|qpon|rich|ruhr|sexy|tips|vote|voto|wang|wien|wiki|zone|bar|bid|biz|cab|cat|ceo|com|edu|gov|int|kim|mil|net|onl|org|pro|pub|red|tel|uno|wed|xxx|xyz|ac|ad|ae|af|ag|ai|al|am|an|ao|aq|ar|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cu|cv|cw|cx|cy|cz|de|dj|dk|dm|do|dz|ec|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|in|io|iq|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sx|sy|sz|tc|td|tf|tg|th|tj|tk|tl|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|za|zm|zw)\\b/, new RegExp([\"(\", /(^|[^\\w])@(\\w{1,15})/.source, \")\", \"|\", \"(\", /(?:[\\-;:&=\\+\\$,\\w\\.]+@)/.source, n.source, r.source, \")\", \"|\", \"(\", \"(?:\", \"(\", /(?:[A-Za-z][-.+A-Za-z0-9]+:(?![A-Za-z][-.+A-Za-z0-9]+:\\/\\/)(?!\\d+\\/?)(?:\\/\\/)?)/.source, n.source, \")\", \"|\", \"(?:\", \"(.?//)?\", /(?:www\\.)/.source, n.source, \")\", \"|\", \"(?:\", \"(.?//)?\", n.source, r.source, \")\", \")\", \"(?:\" + /[\\-A-Za-z0-9+&@#\\/%=~_()|'$*\\[\\]?!:,.;]*[\\-A-Za-z0-9+&@#\\/%=~_()|'$*\\[\\]]/.source + \")?\", \")\"].join(\"\"), \"gi\")),\n                charBeforeProtocolRelMatchRegex: /^(.)?\\/\\//,\n                constructor: function(e) {\n                    o.Util.assign(this, e), this.matchValidator = new o.MatchValidator\n                },\n                replace: function(e, t, n) {\n                    var r = this;\n                    return e.replace(this.matcherRegex, function(e, o, i, a, u, s, l, c, f) {\n                        var p = r.processCandidateMatch(e, o, i, a, u, s, l, c, f);\n                        if (p) {\n                            var d = t.call(n, p.match);\n                            return p.prefixStr + d + p.suffixStr\n                        }\n                        return e\n                    })\n                },\n                processCandidateMatch: function(e, t, n, r, i, a, u, s, l) {\n                    var c, f = s || l,\n                        p = \"\",\n                        d = \"\";\n                    if (t && !this.twitter || i && !this.email || a && !this.urls || !this.matchValidator.isValidMatch(a, u, f)) return null;\n                    if (this.matchHasUnbalancedClosingParen(e) && (e = e.substr(0, e.length - 1), d = \")\"), i) c = new o.match.Email({\n                        matchedText: e,\n                        email: i\n                    });\n                    else if (t) n && (p = n, e = e.slice(1)), c = new o.match.Twitter({\n                        matchedText: e,\n                        twitterHandle: r\n                    });\n                    else {\n                        if (f) {\n                            var h = f.match(this.charBeforeProtocolRelMatchRegex)[1] || \"\";\n                            h && (p = h, e = e.slice(1))\n                        }\n                        c = new o.match.Url({\n                            matchedText: e,\n                            url: e,\n                            protocolUrlMatch: !!u,\n                            protocolRelativeMatch: !!f,\n                            stripPrefix: this.stripPrefix\n                        })\n                    }\n                    return {\n                        prefixStr: p,\n                        suffixStr: d,\n                        match: c\n                    }\n                },\n                matchHasUnbalancedClosingParen: function(e) {\n                    if (\")\" === e.charAt(e.length - 1)) {\n                        var t = e.match(/\\(/g),\n                            n = e.match(/\\)/g);\n                        if ((t && t.length || 0) < (n && n.length || 0)) return !0\n                    }\n                    return !1\n                }\n            }), o.MatchValidator = o.Util.extend(Object, {\n                invalidProtocolRelMatchRegex: /^[\\w]\\/\\//,\n                hasFullProtocolRegex: /^[A-Za-z][-.+A-Za-z0-9]+:\\/\\//,\n                uriSchemeRegex: /^[A-Za-z][-.+A-Za-z0-9]+:/,\n                hasWordCharAfterProtocolRegex: /:[^\\s]*?[A-Za-z]/,\n                isValidMatch: function(e, t, n) {\n                    return !(t && !this.isValidUriScheme(t) || this.urlMatchDoesNotHaveProtocolOrDot(e, t) || this.urlMatchDoesNotHaveAtLeastOneWordChar(e, t) || this.isInvalidProtocolRelativeMatch(n))\n                },\n                isValidUriScheme: function(e) {\n                    var t = e.match(this.uriSchemeRegex)[0].toLowerCase();\n                    return \"javascript:\" !== t && \"vbscript:\" !== t\n                },\n                urlMatchDoesNotHaveProtocolOrDot: function(e, t) {\n                    return !(!e || t && this.hasFullProtocolRegex.test(t) || -1 !== e.indexOf(\".\"))\n                },\n                urlMatchDoesNotHaveAtLeastOneWordChar: function(e, t) {\n                    return !(!e || !t) && !this.hasWordCharAfterProtocolRegex.test(e)\n                },\n                isInvalidProtocolRelativeMatch: function(e) {\n                    return !!e && this.invalidProtocolRelMatchRegex.test(e)\n                }\n            }), o.match.Match = o.Util.extend(Object, {\n                constructor: function(e) {\n                    o.Util.assign(this, e)\n                },\n                getType: o.Util.abstractMethod,\n                getMatchedText: function() {\n                    return this.matchedText\n                },\n                getAnchorHref: o.Util.abstractMethod,\n                getAnchorText: o.Util.abstractMethod\n            }), o.match.Email = o.Util.extend(o.match.Match, {\n                getType: function() {\n                    return \"email\"\n                },\n                getEmail: function() {\n                    return this.email\n                },\n                getAnchorHref: function() {\n                    return \"mailto:\" + this.email\n                },\n                getAnchorText: function() {\n                    return this.email\n                }\n            }), o.match.Twitter = o.Util.extend(o.match.Match, {\n                getType: function() {\n                    return \"twitter\"\n                },\n                getTwitterHandle: function() {\n                    return this.twitterHandle\n                },\n                getAnchorHref: function() {\n                    return \"https://twitter.com/\" + this.twitterHandle\n                },\n                getAnchorText: function() {\n                    return \"@\" + this.twitterHandle\n                }\n            }), o.match.Url = o.Util.extend(o.match.Match, {\n                urlPrefixRegex: /^(https?:\\/\\/)?(www\\.)?/i,\n                protocolRelativeRegex: /^\\/\\//,\n                protocolPrepended: !1,\n                getType: function() {\n                    return \"url\"\n                },\n                getUrl: function() {\n                    var e = this.url;\n                    return this.protocolRelativeMatch || this.protocolUrlMatch || this.protocolPrepended || (e = this.url = \"http://\" + e, this.protocolPrepended = !0), e\n                },\n                getAnchorHref: function() {\n                    return this.getUrl().replace(/&amp;/g, \"&\")\n                },\n                getAnchorText: function() {\n                    var e = this.getUrl();\n                    return this.protocolRelativeMatch && (e = this.stripProtocolRelativePrefix(e)), this.stripPrefix && (e = this.stripUrlPrefix(e)), e = this.removeTrailingSlash(e)\n                },\n                stripUrlPrefix: function(e) {\n                    return e.replace(this.urlPrefixRegex, \"\")\n                },\n                stripProtocolRelativePrefix: function(e) {\n                    return e.replace(this.protocolRelativeRegex, \"\")\n                },\n                removeTrailingSlash: function(e) {\n                    return \"/\" === e.charAt(e.length - 1) && (e = e.slice(0, -1)), e\n                }\n            }), o\n        }, void 0 === (r = function() {\n            return o.Autolinker = i()\n        }.apply(t, [])) || (e.exports = r)\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(152),\n            o = n(1016),\n            i = [\n                [\"code\", n(1017)],\n                [\"fences\", n(1018), [\"paragraph\", \"blockquote\", \"list\"]],\n                [\"blockquote\", n(1019), [\"paragraph\", \"blockquote\", \"list\"]],\n                [\"hr\", n(1020), [\"paragraph\", \"blockquote\", \"list\"]],\n                [\"list\", n(1021), [\"paragraph\", \"blockquote\"]],\n                [\"footnote\", n(1022), [\"paragraph\"]],\n                [\"heading\", n(1023), [\"paragraph\", \"blockquote\"]],\n                [\"lheading\", n(1024)],\n                [\"htmlblock\", n(1025), [\"paragraph\", \"blockquote\"]],\n                [\"table\", n(1027), [\"paragraph\"]],\n                [\"deflist\", n(1028), [\"paragraph\"]],\n                [\"paragraph\", n(1029)]\n            ];\n\n        function a() {\n            this.ruler = new r;\n            for (var e = 0; e < i.length; e++) this.ruler.push(i[e][0], i[e][1], {\n                alt: (i[e][2] || []).slice()\n            })\n        }\n        a.prototype.tokenize = function(e, t, n) {\n            for (var r, o = this.ruler.getRules(\"\"), i = o.length, a = t, u = !1; a < n && (e.line = a = e.skipEmptyLines(a), !(a >= n)) && !(e.tShift[a] < e.blkIndent);) {\n                for (r = 0; r < i && !o[r](e, a, n, !1); r++);\n                if (e.tight = !u, e.isEmpty(e.line - 1) && (u = !0), (a = e.line) < n && e.isEmpty(a)) {\n                    if (u = !0, ++a < n && \"list\" === e.parentType && e.isEmpty(a)) break;\n                    e.line = a\n                }\n            }\n        };\n        var u = /[\\n\\t]/g,\n            s = /\\r[\\n\\u0085]|[\\u2424\\u2028\\u0085]/g,\n            l = /\\u00a0/g;\n        a.prototype.parse = function(e, t, n, r) {\n            var i, a = 0,\n                c = 0;\n            if (!e) return [];\n            (e = (e = e.replace(l, \" \")).replace(s, \"\\n\")).indexOf(\"\\t\") >= 0 && (e = e.replace(u, function(t, n) {\n                var r;\n                return 10 === e.charCodeAt(n) ? (a = n + 1, c = 0, t) : (r = \"    \".slice((n - a - c) % 4), c = n - a + 1, r)\n            })), i = new o(e, this, t, n, r), this.tokenize(i, i.line, i.lineMax)\n        }, e.exports = a\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t, n, r, o) {\n            var i, a, u, s, l, c, f;\n            for (this.src = e, this.parser = t, this.options = n, this.env = r, this.tokens = o, this.bMarks = [], this.eMarks = [], this.tShift = [], this.blkIndent = 0, this.line = 0, this.lineMax = 0, this.tight = !1, this.parentType = \"root\", this.ddIndent = -1, this.level = 0, this.result = \"\", c = 0, f = !1, u = s = c = 0, l = (a = this.src).length; s < l; s++) {\n                if (i = a.charCodeAt(s), !f) {\n                    if (32 === i) {\n                        c++;\n                        continue\n                    }\n                    f = !0\n                }\n                10 !== i && s !== l - 1 || (10 !== i && s++, this.bMarks.push(u), this.eMarks.push(s), this.tShift.push(c), f = !1, c = 0, u = s + 1)\n            }\n            this.bMarks.push(a.length), this.eMarks.push(a.length), this.tShift.push(0), this.lineMax = this.bMarks.length - 1\n        }\n        r.prototype.isEmpty = function(e) {\n            return this.bMarks[e] + this.tShift[e] >= this.eMarks[e]\n        }, r.prototype.skipEmptyLines = function(e) {\n            for (var t = this.lineMax; e < t && !(this.bMarks[e] + this.tShift[e] < this.eMarks[e]); e++);\n            return e\n        }, r.prototype.skipSpaces = function(e) {\n            for (var t = this.src.length; e < t && 32 === this.src.charCodeAt(e); e++);\n            return e\n        }, r.prototype.skipChars = function(e, t) {\n            for (var n = this.src.length; e < n && this.src.charCodeAt(e) === t; e++);\n            return e\n        }, r.prototype.skipCharsBack = function(e, t, n) {\n            if (e <= n) return e;\n            for (; e > n;)\n                if (t !== this.src.charCodeAt(--e)) return e + 1;\n            return e\n        }, r.prototype.getLines = function(e, t, n, r) {\n            var o, i, a, u, s, l = e;\n            if (e >= t) return \"\";\n            if (l + 1 === t) return i = this.bMarks[l] + Math.min(this.tShift[l], n), a = r ? this.eMarks[l] + 1 : this.eMarks[l], this.src.slice(i, a);\n            for (u = new Array(t - e), o = 0; l < t; l++, o++)(s = this.tShift[l]) > n && (s = n), s < 0 && (s = 0), i = this.bMarks[l] + s, a = l + 1 < t || r ? this.eMarks[l] + 1 : this.eMarks[l], u[o] = this.src.slice(i, a);\n            return u.join(\"\")\n        }, e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n) {\n            var r, o;\n            if (e.tShift[t] - e.blkIndent < 4) return !1;\n            for (o = r = t + 1; r < n;)\n                if (e.isEmpty(r)) r++;\n                else {\n                    if (!(e.tShift[r] - e.blkIndent >= 4)) break;\n                    o = ++r\n                }\n            return e.line = r, e.tokens.push({\n                type: \"code\",\n                content: e.getLines(t, o, 4 + e.blkIndent, !0),\n                block: !0,\n                lines: [t, e.line],\n                level: e.level\n            }), !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r) {\n            var o, i, a, u, s, l = !1,\n                c = e.bMarks[t] + e.tShift[t],\n                f = e.eMarks[t];\n            if (c + 3 > f) return !1;\n            if (126 !== (o = e.src.charCodeAt(c)) && 96 !== o) return !1;\n            if (s = c, (i = (c = e.skipChars(c, o)) - s) < 3) return !1;\n            if ((a = e.src.slice(c, f).trim()).indexOf(\"`\") >= 0) return !1;\n            if (r) return !0;\n            for (u = t; !(++u >= n) && !((c = s = e.bMarks[u] + e.tShift[u]) < (f = e.eMarks[u]) && e.tShift[u] < e.blkIndent);)\n                if (e.src.charCodeAt(c) === o && !(e.tShift[u] - e.blkIndent >= 4 || (c = e.skipChars(c, o)) - s < i || (c = e.skipSpaces(c)) < f)) {\n                    l = !0;\n                    break\n                }\n            return i = e.tShift[t], e.line = u + (l ? 1 : 0), e.tokens.push({\n                type: \"fence\",\n                params: a,\n                content: e.getLines(t + 1, u, i, !0),\n                lines: [t, e.line],\n                level: e.level\n            }), !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r) {\n            var o, i, a, u, s, l, c, f, p, d, h, v = e.bMarks[t] + e.tShift[t],\n                m = e.eMarks[t];\n            if (v > m) return !1;\n            if (62 !== e.src.charCodeAt(v++)) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            if (r) return !0;\n            for (32 === e.src.charCodeAt(v) && v++, s = e.blkIndent, e.blkIndent = 0, u = [e.bMarks[t]], e.bMarks[t] = v, i = (v = v < m ? e.skipSpaces(v) : v) >= m, a = [e.tShift[t]], e.tShift[t] = v - e.bMarks[t], f = e.parser.ruler.getRules(\"blockquote\"), o = t + 1; o < n && !((v = e.bMarks[o] + e.tShift[o]) >= (m = e.eMarks[o])); o++)\n                if (62 !== e.src.charCodeAt(v++)) {\n                    if (i) break;\n                    for (h = !1, p = 0, d = f.length; p < d; p++)\n                        if (f[p](e, o, n, !0)) {\n                            h = !0;\n                            break\n                        }\n                    if (h) break;\n                    u.push(e.bMarks[o]), a.push(e.tShift[o]), e.tShift[o] = -1337\n                } else 32 === e.src.charCodeAt(v) && v++, u.push(e.bMarks[o]), e.bMarks[o] = v, i = (v = v < m ? e.skipSpaces(v) : v) >= m, a.push(e.tShift[o]), e.tShift[o] = v - e.bMarks[o];\n            for (l = e.parentType, e.parentType = \"blockquote\", e.tokens.push({\n                type: \"blockquote_open\",\n                lines: c = [t, 0],\n                level: e.level++\n            }), e.parser.tokenize(e, t, o), e.tokens.push({\n                type: \"blockquote_close\",\n                level: --e.level\n            }), e.parentType = l, c[1] = e.line, p = 0; p < a.length; p++) e.bMarks[p + t] = u[p], e.tShift[p + t] = a[p];\n            return e.blkIndent = s, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r) {\n            var o, i, a, u = e.bMarks[t],\n                s = e.eMarks[t];\n            if ((u += e.tShift[t]) > s) return !1;\n            if (42 !== (o = e.src.charCodeAt(u++)) && 45 !== o && 95 !== o) return !1;\n            for (i = 1; u < s;) {\n                if ((a = e.src.charCodeAt(u++)) !== o && 32 !== a) return !1;\n                a === o && i++\n            }\n            return !(i < 3) && (!!r || (e.line = t + 1, e.tokens.push({\n                type: \"hr\",\n                lines: [t, e.line],\n                level: e.level\n            }), !0))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            var n, r, o;\n            return (r = e.bMarks[t] + e.tShift[t]) >= (o = e.eMarks[t]) ? -1 : 42 !== (n = e.src.charCodeAt(r++)) && 45 !== n && 43 !== n ? -1 : r < o && 32 !== e.src.charCodeAt(r) ? -1 : r\n        }\n\n        function o(e, t) {\n            var n, r = e.bMarks[t] + e.tShift[t],\n                o = e.eMarks[t];\n            if (r + 1 >= o) return -1;\n            if ((n = e.src.charCodeAt(r++)) < 48 || n > 57) return -1;\n            for (;;) {\n                if (r >= o) return -1;\n                if (!((n = e.src.charCodeAt(r++)) >= 48 && n <= 57)) {\n                    if (41 === n || 46 === n) break;\n                    return -1\n                }\n            }\n            return r < o && 32 !== e.src.charCodeAt(r) ? -1 : r\n        }\n        e.exports = function(e, t, n, i) {\n            var a, u, s, l, c, f, p, d, h, v, m, g, y, b, _, w, E, x, S, C, k, A = !0;\n            if ((d = o(e, t)) >= 0) g = !0;\n            else {\n                if (!((d = r(e, t)) >= 0)) return !1;\n                g = !1\n            }\n            if (e.level >= e.options.maxNesting) return !1;\n            if (m = e.src.charCodeAt(d - 1), i) return !0;\n            for (b = e.tokens.length, g ? (p = e.bMarks[t] + e.tShift[t], v = Number(e.src.substr(p, d - p - 1)), e.tokens.push({\n                type: \"ordered_list_open\",\n                order: v,\n                lines: w = [t, 0],\n                level: e.level++\n            })) : e.tokens.push({\n                type: \"bullet_list_open\",\n                lines: w = [t, 0],\n                level: e.level++\n            }), a = t, _ = !1, x = e.parser.ruler.getRules(\"list\"); !(!(a < n) || ((h = (y = e.skipSpaces(d)) >= e.eMarks[a] ? 1 : y - d) > 4 && (h = 1), h < 1 && (h = 1), u = d - e.bMarks[a] + h, e.tokens.push({\n                type: \"list_item_open\",\n                lines: E = [t, 0],\n                level: e.level++\n            }), l = e.blkIndent, c = e.tight, s = e.tShift[t], f = e.parentType, e.tShift[t] = y - e.bMarks[t], e.blkIndent = u, e.tight = !0, e.parentType = \"list\", e.parser.tokenize(e, t, n, !0), e.tight && !_ || (A = !1), _ = e.line - t > 1 && e.isEmpty(e.line - 1), e.blkIndent = l, e.tShift[t] = s, e.tight = c, e.parentType = f, e.tokens.push({\n                type: \"list_item_close\",\n                level: --e.level\n            }), a = t = e.line, E[1] = a, y = e.bMarks[t], a >= n) || e.isEmpty(a) || e.tShift[a] < e.blkIndent);) {\n                for (k = !1, S = 0, C = x.length; S < C; S++)\n                    if (x[S](e, a, n, !0)) {\n                        k = !0;\n                        break\n                    }\n                if (k) break;\n                if (g) {\n                    if ((d = o(e, a)) < 0) break\n                } else if ((d = r(e, a)) < 0) break;\n                if (m !== e.src.charCodeAt(d - 1)) break\n            }\n            return e.tokens.push({\n                type: g ? \"ordered_list_close\" : \"bullet_list_close\",\n                level: --e.level\n            }), w[1] = a, e.line = a, A && function(e, t) {\n                var n, r, o = e.level + 2;\n                for (n = t + 2, r = e.tokens.length - 2; n < r; n++) e.tokens[n].level === o && \"paragraph_open\" === e.tokens[n].type && (e.tokens[n + 2].tight = !0, e.tokens[n].tight = !0, n += 2)\n            }(e, b), !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r) {\n            var o, i, a, u, s, l = e.bMarks[t] + e.tShift[t],\n                c = e.eMarks[t];\n            if (l + 4 > c) return !1;\n            if (91 !== e.src.charCodeAt(l)) return !1;\n            if (94 !== e.src.charCodeAt(l + 1)) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            for (u = l + 2; u < c; u++) {\n                if (32 === e.src.charCodeAt(u)) return !1;\n                if (93 === e.src.charCodeAt(u)) break\n            }\n            return u !== l + 2 && (!(u + 1 >= c || 58 !== e.src.charCodeAt(++u)) && (!!r || (u++, e.env.footnotes || (e.env.footnotes = {}), e.env.footnotes.refs || (e.env.footnotes.refs = {}), s = e.src.slice(l + 2, u - 2), e.env.footnotes.refs[\":\" + s] = -1, e.tokens.push({\n                type: \"footnote_reference_open\",\n                label: s,\n                level: e.level++\n            }), o = e.bMarks[t], i = e.tShift[t], a = e.parentType, e.tShift[t] = e.skipSpaces(u) - u, e.bMarks[t] = u, e.blkIndent += 4, e.parentType = \"footnote\", e.tShift[t] < e.blkIndent && (e.tShift[t] += e.blkIndent, e.bMarks[t] -= e.blkIndent), e.parser.tokenize(e, t, n, !0), e.parentType = a, e.blkIndent -= 4, e.tShift[t] = i, e.bMarks[t] = o, e.tokens.push({\n                type: \"footnote_reference_close\",\n                level: --e.level\n            }), !0)))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n, r) {\n            var o, i, a, u = e.bMarks[t] + e.tShift[t],\n                s = e.eMarks[t];\n            if (u >= s) return !1;\n            if (35 !== (o = e.src.charCodeAt(u)) || u >= s) return !1;\n            for (i = 1, o = e.src.charCodeAt(++u); 35 === o && u < s && i <= 6;) i++, o = e.src.charCodeAt(++u);\n            return !(i > 6 || u < s && 32 !== o) && (!!r || (s = e.skipCharsBack(s, 32, u), (a = e.skipCharsBack(s, 35, u)) > u && 32 === e.src.charCodeAt(a - 1) && (s = a), e.line = t + 1, e.tokens.push({\n                type: \"heading_open\",\n                hLevel: i,\n                lines: [t, e.line],\n                level: e.level\n            }), u < s && e.tokens.push({\n                type: \"inline\",\n                content: e.src.slice(u, s).trim(),\n                level: e.level + 1,\n                lines: [t, e.line],\n                children: []\n            }), e.tokens.push({\n                type: \"heading_close\",\n                hLevel: i,\n                level: e.level\n            }), !0))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t, n) {\n            var r, o, i, a = t + 1;\n            return !(a >= n) && (!(e.tShift[a] < e.blkIndent) && (!(e.tShift[a] - e.blkIndent > 3) && (!((o = e.bMarks[a] + e.tShift[a]) >= (i = e.eMarks[a])) && ((45 === (r = e.src.charCodeAt(o)) || 61 === r) && (o = e.skipChars(o, r), !((o = e.skipSpaces(o)) < i) && (o = e.bMarks[t] + e.tShift[t], e.line = a + 1, e.tokens.push({\n                type: \"heading_open\",\n                hLevel: 61 === r ? 1 : 2,\n                lines: [t, e.line],\n                level: e.level\n            }), e.tokens.push({\n                type: \"inline\",\n                content: e.src.slice(o, e.eMarks[t]).trim(),\n                level: e.level + 1,\n                lines: [t, e.line - 1],\n                children: []\n            }), e.tokens.push({\n                type: \"heading_close\",\n                hLevel: 61 === r ? 1 : 2,\n                level: e.level\n            }), !0))))))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(1026),\n            o = /^<([a-zA-Z]{1,15})[\\s\\/>]/,\n            i = /^<\\/([a-zA-Z]{1,15})[\\s>]/;\n        e.exports = function(e, t, n, a) {\n            var u, s, l, c = e.bMarks[t],\n                f = e.eMarks[t],\n                p = e.tShift[t];\n            if (c += p, !e.options.html) return !1;\n            if (p > 3 || c + 2 >= f) return !1;\n            if (60 !== e.src.charCodeAt(c)) return !1;\n            if (33 === (u = e.src.charCodeAt(c + 1)) || 63 === u) {\n                if (a) return !0\n            } else {\n                if (47 !== u && ! function(e) {\n                    var t = 32 | e;\n                    return t >= 97 && t <= 122\n                }(u)) return !1;\n                if (47 === u) {\n                    if (!(s = e.src.slice(c, f).match(i))) return !1\n                } else if (!(s = e.src.slice(c, f).match(o))) return !1;\n                if (!0 !== r[s[1].toLowerCase()]) return !1;\n                if (a) return !0\n            }\n            for (l = t + 1; l < e.lineMax && !e.isEmpty(l);) l++;\n            return e.line = l, e.tokens.push({\n                type: \"htmlblock\",\n                level: e.level,\n                lines: [t, e.line],\n                content: e.getLines(t, l, 0, !0)\n            }), !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = {};\n        [\"article\", \"aside\", \"button\", \"blockquote\", \"body\", \"canvas\", \"caption\", \"col\", \"colgroup\", \"dd\", \"div\", \"dl\", \"dt\", \"embed\", \"fieldset\", \"figcaption\", \"figure\", \"footer\", \"form\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\", \"header\", \"hgroup\", \"hr\", \"iframe\", \"li\", \"map\", \"object\", \"ol\", \"output\", \"p\", \"pre\", \"progress\", \"script\", \"section\", \"style\", \"table\", \"tbody\", \"td\", \"textarea\", \"tfoot\", \"th\", \"tr\", \"thead\", \"ul\", \"video\"].forEach(function(e) {\n            r[e] = !0\n        }), e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            var n = e.bMarks[t] + e.blkIndent,\n                r = e.eMarks[t];\n            return e.src.substr(n, r - n)\n        }\n        e.exports = function(e, t, n, o) {\n            var i, a, u, s, l, c, f, p, d, h, v;\n            if (t + 2 > n) return !1;\n            if (l = t + 1, e.tShift[l] < e.blkIndent) return !1;\n            if ((u = e.bMarks[l] + e.tShift[l]) >= e.eMarks[l]) return !1;\n            if (124 !== (i = e.src.charCodeAt(u)) && 45 !== i && 58 !== i) return !1;\n            if (a = r(e, t + 1), !/^[-:| ]+$/.test(a)) return !1;\n            if ((c = a.split(\"|\")) <= 2) return !1;\n            for (p = [], s = 0; s < c.length; s++) {\n                if (!(d = c[s].trim())) {\n                    if (0 === s || s === c.length - 1) continue;\n                    return !1\n                }\n                if (!/^:?-+:?$/.test(d)) return !1;\n                58 === d.charCodeAt(d.length - 1) ? p.push(58 === d.charCodeAt(0) ? \"center\" : \"right\") : 58 === d.charCodeAt(0) ? p.push(\"left\") : p.push(\"\")\n            }\n            if (-1 === (a = r(e, t).trim()).indexOf(\"|\")) return !1;\n            if (c = a.replace(/^\\||\\|$/g, \"\").split(\"|\"), p.length !== c.length) return !1;\n            if (o) return !0;\n            for (e.tokens.push({\n                type: \"table_open\",\n                lines: h = [t, 0],\n                level: e.level++\n            }), e.tokens.push({\n                type: \"thead_open\",\n                lines: [t, t + 1],\n                level: e.level++\n            }), e.tokens.push({\n                type: \"tr_open\",\n                lines: [t, t + 1],\n                level: e.level++\n            }), s = 0; s < c.length; s++) e.tokens.push({\n                type: \"th_open\",\n                align: p[s],\n                lines: [t, t + 1],\n                level: e.level++\n            }), e.tokens.push({\n                type: \"inline\",\n                content: c[s].trim(),\n                lines: [t, t + 1],\n                level: e.level,\n                children: []\n            }), e.tokens.push({\n                type: \"th_close\",\n                level: --e.level\n            });\n            for (e.tokens.push({\n                type: \"tr_close\",\n                level: --e.level\n            }), e.tokens.push({\n                type: \"thead_close\",\n                level: --e.level\n            }), e.tokens.push({\n                type: \"tbody_open\",\n                lines: v = [t + 2, 0],\n                level: e.level++\n            }), l = t + 2; l < n && !(e.tShift[l] < e.blkIndent) && -1 !== (a = r(e, l).trim()).indexOf(\"|\"); l++) {\n                for (c = a.replace(/^\\||\\|$/g, \"\").split(\"|\"), e.tokens.push({\n                    type: \"tr_open\",\n                    level: e.level++\n                }), s = 0; s < c.length; s++) e.tokens.push({\n                    type: \"td_open\",\n                    align: p[s],\n                    level: e.level++\n                }), f = c[s].substring(124 === c[s].charCodeAt(0) ? 1 : 0, 124 === c[s].charCodeAt(c[s].length - 1) ? c[s].length - 1 : c[s].length).trim(), e.tokens.push({\n                    type: \"inline\",\n                    content: f,\n                    level: e.level,\n                    children: []\n                }), e.tokens.push({\n                    type: \"td_close\",\n                    level: --e.level\n                });\n                e.tokens.push({\n                    type: \"tr_close\",\n                    level: --e.level\n                })\n            }\n            return e.tokens.push({\n                type: \"tbody_close\",\n                level: --e.level\n            }), e.tokens.push({\n                type: \"table_close\",\n                level: --e.level\n            }), h[1] = v[1] = l, e.line = l, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            var n, r, o = e.bMarks[t] + e.tShift[t],\n                i = e.eMarks[t];\n            return o >= i ? -1 : 126 !== (r = e.src.charCodeAt(o++)) && 58 !== r ? -1 : o === (n = e.skipSpaces(o)) ? -1 : n >= i ? -1 : n\n        }\n        e.exports = function(e, t, n, o) {\n            var i, a, u, s, l, c, f, p, d, h, v, m, g, y;\n            if (o) return !(e.ddIndent < 0) && r(e, t) >= 0;\n            if (f = t + 1, e.isEmpty(f) && ++f > n) return !1;\n            if (e.tShift[f] < e.blkIndent) return !1;\n            if ((i = r(e, f)) < 0) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            c = e.tokens.length, e.tokens.push({\n                type: \"dl_open\",\n                lines: l = [t, 0],\n                level: e.level++\n            }), u = t, a = f;\n            e: for (;;) {\n                for (y = !0, g = !1, e.tokens.push({\n                    type: \"dt_open\",\n                    lines: [u, u],\n                    level: e.level++\n                }), e.tokens.push({\n                    type: \"inline\",\n                    content: e.getLines(u, u + 1, e.blkIndent, !1).trim(),\n                    level: e.level + 1,\n                    lines: [u, u],\n                    children: []\n                }), e.tokens.push({\n                    type: \"dt_close\",\n                    level: --e.level\n                });;) {\n                    if (e.tokens.push({\n                        type: \"dd_open\",\n                        lines: s = [f, 0],\n                        level: e.level++\n                    }), m = e.tight, d = e.ddIndent, p = e.blkIndent, v = e.tShift[a], h = e.parentType, e.blkIndent = e.ddIndent = e.tShift[a] + 2, e.tShift[a] = i - e.bMarks[a], e.tight = !0, e.parentType = \"deflist\", e.parser.tokenize(e, a, n, !0), e.tight && !g || (y = !1), g = e.line - a > 1 && e.isEmpty(e.line - 1), e.tShift[a] = v, e.tight = m, e.parentType = h, e.blkIndent = p, e.ddIndent = d, e.tokens.push({\n                        type: \"dd_close\",\n                        level: --e.level\n                    }), s[1] = f = e.line, f >= n) break e;\n                    if (e.tShift[f] < e.blkIndent) break e;\n                    if ((i = r(e, f)) < 0) break;\n                    a = f\n                }\n                if (f >= n) break;\n                if (u = f, e.isEmpty(u)) break;\n                if (e.tShift[u] < e.blkIndent) break;\n                if ((a = u + 1) >= n) break;\n                if (e.isEmpty(a) && a++, a >= n) break;\n                if (e.tShift[a] < e.blkIndent) break;\n                if ((i = r(e, a)) < 0) break\n            }\n            return e.tokens.push({\n                type: \"dl_close\",\n                level: --e.level\n            }), l[1] = f, e.line = f, y && function(e, t) {\n                var n, r, o = e.level + 2;\n                for (n = t + 2, r = e.tokens.length - 2; n < r; n++) e.tokens[n].level === o && \"paragraph_open\" === e.tokens[n].type && (e.tokens[n + 2].tight = !0, e.tokens[n].tight = !0, n += 2)\n            }(e, c), !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i, a, u, s = t + 1;\n            if (s < (n = e.lineMax) && !e.isEmpty(s))\n                for (u = e.parser.ruler.getRules(\"paragraph\"); s < n && !e.isEmpty(s); s++)\n                    if (!(e.tShift[s] - e.blkIndent > 3)) {\n                        for (o = !1, i = 0, a = u.length; i < a; i++)\n                            if (u[i](e, s, n, !0)) {\n                                o = !0;\n                                break\n                            }\n                        if (o) break\n                    }\n            return r = e.getLines(t, s, e.blkIndent, !1).trim(), e.line = s, r.length && (e.tokens.push({\n                type: \"paragraph_open\",\n                tight: !1,\n                lines: [t, e.line],\n                level: e.level\n            }), e.tokens.push({\n                type: \"inline\",\n                content: r,\n                level: e.level + 1,\n                lines: [t, e.line],\n                children: []\n            }), e.tokens.push({\n                type: \"paragraph_close\",\n                tight: !1,\n                level: e.level\n            })), !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(152),\n            o = n(235),\n            i = n(27),\n            a = [\n                [\"text\", n(1031)],\n                [\"newline\", n(1032)],\n                [\"escape\", n(1033)],\n                [\"backticks\", n(1034)],\n                [\"del\", n(1035)],\n                [\"ins\", n(1036)],\n                [\"mark\", n(1037)],\n                [\"emphasis\", n(1038)],\n                [\"sub\", n(1039)],\n                [\"sup\", n(1040)],\n                [\"links\", n(1041)],\n                [\"footnote_inline\", n(1042)],\n                [\"footnote_ref\", n(1043)],\n                [\"autolink\", n(1044)],\n                [\"htmltag\", n(1046)],\n                [\"entity\", n(1048)]\n            ];\n\n        function u() {\n            this.ruler = new r;\n            for (var e = 0; e < a.length; e++) this.ruler.push(a[e][0], a[e][1]);\n            this.validateLink = s\n        }\n\n        function s(e) {\n            var t = e.trim().toLowerCase();\n            return -1 === (t = i.replaceEntities(t)).indexOf(\":\") || -1 === [\"vbscript\", \"javascript\", \"file\", \"data\"].indexOf(t.split(\":\")[0])\n        }\n        u.prototype.skipToken = function(e) {\n            var t, n, r = this.ruler.getRules(\"\"),\n                o = r.length,\n                i = e.pos;\n            if ((n = e.cacheGet(i)) > 0) e.pos = n;\n            else {\n                for (t = 0; t < o; t++)\n                    if (r[t](e, !0)) return void e.cacheSet(i, e.pos);\n                e.pos++, e.cacheSet(i, e.pos)\n            }\n        }, u.prototype.tokenize = function(e) {\n            for (var t, n, r = this.ruler.getRules(\"\"), o = r.length, i = e.posMax; e.pos < i;) {\n                for (n = 0; n < o && !(t = r[n](e, !1)); n++);\n                if (t) {\n                    if (e.pos >= i) break\n                } else e.pending += e.src[e.pos++]\n            }\n            e.pending && e.pushPending()\n        }, u.prototype.parse = function(e, t, n, r) {\n            var i = new o(e, this, t, n, r);\n            this.tokenize(i)\n        }, e.exports = u\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e) {\n            switch (e) {\n                case 10:\n                case 92:\n                case 96:\n                case 42:\n                case 95:\n                case 94:\n                case 91:\n                case 93:\n                case 33:\n                case 38:\n                case 60:\n                case 62:\n                case 123:\n                case 125:\n                case 36:\n                case 37:\n                case 64:\n                case 126:\n                case 43:\n                case 61:\n                case 58:\n                    return !0;\n                default:\n                    return !1\n            }\n        }\n        e.exports = function(e, t) {\n            for (var n = e.pos; n < e.posMax && !r(e.src.charCodeAt(n));) n++;\n            return n !== e.pos && (t || (e.pending += e.src.slice(e.pos, n)), e.pos = n, !0)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o = e.pos;\n            if (10 !== e.src.charCodeAt(o)) return !1;\n            if (n = e.pending.length - 1, r = e.posMax, !t)\n                if (n >= 0 && 32 === e.pending.charCodeAt(n))\n                    if (n >= 1 && 32 === e.pending.charCodeAt(n - 1)) {\n                        for (var i = n - 2; i >= 0; i--)\n                            if (32 !== e.pending.charCodeAt(i)) {\n                                e.pending = e.pending.substring(0, i + 1);\n                                break\n                            }\n                        e.push({\n                            type: \"hardbreak\",\n                            level: e.level\n                        })\n                    } else e.pending = e.pending.slice(0, -1), e.push({\n                        type: \"softbreak\",\n                        level: e.level\n                    });\n                else e.push({\n                    type: \"softbreak\",\n                    level: e.level\n                });\n            for (o++; o < r && 32 === e.src.charCodeAt(o);) o++;\n            return e.pos = o, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        for (var r = [], o = 0; o < 256; o++) r.push(0);\n        \"\\\\!\\\"#$%&'()*+,./:;<=>?@[]^_`{|}~-\".split(\"\").forEach(function(e) {\n            r[e.charCodeAt(0)] = 1\n        }), e.exports = function(e, t) {\n            var n, o = e.pos,\n                i = e.posMax;\n            if (92 !== e.src.charCodeAt(o)) return !1;\n            if (++o < i) {\n                if ((n = e.src.charCodeAt(o)) < 256 && 0 !== r[n]) return t || (e.pending += e.src[o]), e.pos += 2, !0;\n                if (10 === n) {\n                    for (t || e.push({\n                        type: \"hardbreak\",\n                        level: e.level\n                    }), o++; o < i && 32 === e.src.charCodeAt(o);) o++;\n                    return e.pos = o, !0\n                }\n            }\n            return t || (e.pending += \"\\\\\"), e.pos++, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i, a, u = e.pos;\n            if (96 !== e.src.charCodeAt(u)) return !1;\n            for (n = u, u++, r = e.posMax; u < r && 96 === e.src.charCodeAt(u);) u++;\n            for (o = e.src.slice(n, u), i = a = u; - 1 !== (i = e.src.indexOf(\"`\", a));) {\n                for (a = i + 1; a < r && 96 === e.src.charCodeAt(a);) a++;\n                if (a - i === o.length) return t || e.push({\n                    type: \"code\",\n                    content: e.src.slice(u, i).replace(/[ \\n]+/g, \" \").trim(),\n                    block: !1,\n                    level: e.level\n                }), e.pos = a, !0\n            }\n            return t || (e.pending += o), e.pos += o.length, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i, a, u = e.posMax,\n                s = e.pos;\n            if (126 !== e.src.charCodeAt(s)) return !1;\n            if (t) return !1;\n            if (s + 4 >= u) return !1;\n            if (126 !== e.src.charCodeAt(s + 1)) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            if (i = s > 0 ? e.src.charCodeAt(s - 1) : -1, a = e.src.charCodeAt(s + 2), 126 === i) return !1;\n            if (126 === a) return !1;\n            if (32 === a || 10 === a) return !1;\n            for (r = s + 2; r < u && 126 === e.src.charCodeAt(r);) r++;\n            if (r > s + 3) return e.pos += r - s, t || (e.pending += e.src.slice(s, r)), !0;\n            for (e.pos = s + 2, o = 1; e.pos + 1 < u;) {\n                if (126 === e.src.charCodeAt(e.pos) && 126 === e.src.charCodeAt(e.pos + 1) && (i = e.src.charCodeAt(e.pos - 1), 126 !== (a = e.pos + 2 < u ? e.src.charCodeAt(e.pos + 2) : -1) && 126 !== i && (32 !== i && 10 !== i ? o-- : 32 !== a && 10 !== a && o++, o <= 0))) {\n                    n = !0;\n                    break\n                }\n                e.parser.skipToken(e)\n            }\n            return n ? (e.posMax = e.pos, e.pos = s + 2, t || (e.push({\n                type: \"del_open\",\n                level: e.level++\n            }), e.parser.tokenize(e), e.push({\n                type: \"del_close\",\n                level: --e.level\n            })), e.pos = e.posMax + 2, e.posMax = u, !0) : (e.pos = s, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i, a, u = e.posMax,\n                s = e.pos;\n            if (43 !== e.src.charCodeAt(s)) return !1;\n            if (t) return !1;\n            if (s + 4 >= u) return !1;\n            if (43 !== e.src.charCodeAt(s + 1)) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            if (i = s > 0 ? e.src.charCodeAt(s - 1) : -1, a = e.src.charCodeAt(s + 2), 43 === i) return !1;\n            if (43 === a) return !1;\n            if (32 === a || 10 === a) return !1;\n            for (r = s + 2; r < u && 43 === e.src.charCodeAt(r);) r++;\n            if (r !== s + 2) return e.pos += r - s, t || (e.pending += e.src.slice(s, r)), !0;\n            for (e.pos = s + 2, o = 1; e.pos + 1 < u;) {\n                if (43 === e.src.charCodeAt(e.pos) && 43 === e.src.charCodeAt(e.pos + 1) && (i = e.src.charCodeAt(e.pos - 1), 43 !== (a = e.pos + 2 < u ? e.src.charCodeAt(e.pos + 2) : -1) && 43 !== i && (32 !== i && 10 !== i ? o-- : 32 !== a && 10 !== a && o++, o <= 0))) {\n                    n = !0;\n                    break\n                }\n                e.parser.skipToken(e)\n            }\n            return n ? (e.posMax = e.pos, e.pos = s + 2, t || (e.push({\n                type: \"ins_open\",\n                level: e.level++\n            }), e.parser.tokenize(e), e.push({\n                type: \"ins_close\",\n                level: --e.level\n            })), e.pos = e.posMax + 2, e.posMax = u, !0) : (e.pos = s, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i, a, u = e.posMax,\n                s = e.pos;\n            if (61 !== e.src.charCodeAt(s)) return !1;\n            if (t) return !1;\n            if (s + 4 >= u) return !1;\n            if (61 !== e.src.charCodeAt(s + 1)) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            if (i = s > 0 ? e.src.charCodeAt(s - 1) : -1, a = e.src.charCodeAt(s + 2), 61 === i) return !1;\n            if (61 === a) return !1;\n            if (32 === a || 10 === a) return !1;\n            for (r = s + 2; r < u && 61 === e.src.charCodeAt(r);) r++;\n            if (r !== s + 2) return e.pos += r - s, t || (e.pending += e.src.slice(s, r)), !0;\n            for (e.pos = s + 2, o = 1; e.pos + 1 < u;) {\n                if (61 === e.src.charCodeAt(e.pos) && 61 === e.src.charCodeAt(e.pos + 1) && (i = e.src.charCodeAt(e.pos - 1), 61 !== (a = e.pos + 2 < u ? e.src.charCodeAt(e.pos + 2) : -1) && 61 !== i && (32 !== i && 10 !== i ? o-- : 32 !== a && 10 !== a && o++, o <= 0))) {\n                    n = !0;\n                    break\n                }\n                e.parser.skipToken(e)\n            }\n            return n ? (e.posMax = e.pos, e.pos = s + 2, t || (e.push({\n                type: \"mark_open\",\n                level: e.level++\n            }), e.parser.tokenize(e), e.push({\n                type: \"mark_close\",\n                level: --e.level\n            })), e.pos = e.posMax + 2, e.posMax = u, !0) : (e.pos = s, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e) {\n            return e >= 48 && e <= 57 || e >= 65 && e <= 90 || e >= 97 && e <= 122\n        }\n\n        function o(e, t) {\n            var n, o, i, a = t,\n                u = !0,\n                s = !0,\n                l = e.posMax,\n                c = e.src.charCodeAt(t);\n            for (n = t > 0 ? e.src.charCodeAt(t - 1) : -1; a < l && e.src.charCodeAt(a) === c;) a++;\n            return a >= l && (u = !1), (i = a - t) >= 4 ? u = s = !1 : (32 !== (o = a < l ? e.src.charCodeAt(a) : -1) && 10 !== o || (u = !1), 32 !== n && 10 !== n || (s = !1), 95 === c && (r(n) && (u = !1), r(o) && (s = !1))), {\n                can_open: u,\n                can_close: s,\n                delims: i\n            }\n        }\n        e.exports = function(e, t) {\n            var n, r, i, a, u, s, l, c = e.posMax,\n                f = e.pos,\n                p = e.src.charCodeAt(f);\n            if (95 !== p && 42 !== p) return !1;\n            if (t) return !1;\n            if (n = (l = o(e, f)).delims, !l.can_open) return e.pos += n, t || (e.pending += e.src.slice(f, e.pos)), !0;\n            if (e.level >= e.options.maxNesting) return !1;\n            for (e.pos = f + n, s = [n]; e.pos < c;)\n                if (e.src.charCodeAt(e.pos) !== p) e.parser.skipToken(e);\n                else {\n                    if (r = (l = o(e, e.pos)).delims, l.can_close) {\n                        for (a = s.pop(), u = r; a !== u;) {\n                            if (u < a) {\n                                s.push(a - u);\n                                break\n                            }\n                            if (u -= a, 0 === s.length) break;\n                            e.pos += a, a = s.pop()\n                        }\n                        if (0 === s.length) {\n                            n = a, i = !0;\n                            break\n                        }\n                        e.pos += r;\n                        continue\n                    }\n                    l.can_open && s.push(r), e.pos += r\n                }\n            return i ? (e.posMax = e.pos, e.pos = f + n, t || (2 !== n && 3 !== n || e.push({\n                type: \"strong_open\",\n                level: e.level++\n            }), 1 !== n && 3 !== n || e.push({\n                type: \"em_open\",\n                level: e.level++\n            }), e.parser.tokenize(e), 1 !== n && 3 !== n || e.push({\n                type: \"em_close\",\n                level: --e.level\n            }), 2 !== n && 3 !== n || e.push({\n                type: \"strong_close\",\n                level: --e.level\n            })), e.pos = e.posMax + n, e.posMax = c, !0) : (e.pos = f, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /\\\\([ \\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;\n        e.exports = function(e, t) {\n            var n, o, i = e.posMax,\n                a = e.pos;\n            if (126 !== e.src.charCodeAt(a)) return !1;\n            if (t) return !1;\n            if (a + 2 >= i) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            for (e.pos = a + 1; e.pos < i;) {\n                if (126 === e.src.charCodeAt(e.pos)) {\n                    n = !0;\n                    break\n                }\n                e.parser.skipToken(e)\n            }\n            return n && a + 1 !== e.pos ? (o = e.src.slice(a + 1, e.pos)).match(/(^|[^\\\\])(\\\\\\\\)*\\s/) ? (e.pos = a, !1) : (e.posMax = e.pos, e.pos = a + 1, t || e.push({\n                type: \"sub\",\n                level: e.level,\n                content: o.replace(r, \"$1\")\n            }), e.pos = e.posMax + 1, e.posMax = i, !0) : (e.pos = a, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = /\\\\([ \\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;\n        e.exports = function(e, t) {\n            var n, o, i = e.posMax,\n                a = e.pos;\n            if (94 !== e.src.charCodeAt(a)) return !1;\n            if (t) return !1;\n            if (a + 2 >= i) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            for (e.pos = a + 1; e.pos < i;) {\n                if (94 === e.src.charCodeAt(e.pos)) {\n                    n = !0;\n                    break\n                }\n                e.parser.skipToken(e)\n            }\n            return n && a + 1 !== e.pos ? (o = e.src.slice(a + 1, e.pos)).match(/(^|[^\\\\])(\\\\\\\\)*\\s/) ? (e.pos = a, !1) : (e.posMax = e.pos, e.pos = a + 1, t || e.push({\n                type: \"sup\",\n                level: e.level,\n                content: o.replace(r, \"$1\")\n            }), e.pos = e.posMax + 1, e.posMax = i, !0) : (e.pos = a, !1)\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(153),\n            o = n(417),\n            i = n(419),\n            a = n(420);\n        e.exports = function(e, t) {\n            var n, u, s, l, c, f, p, d, h = !1,\n                v = e.pos,\n                m = e.posMax,\n                g = e.pos,\n                y = e.src.charCodeAt(g);\n            if (33 === y && (h = !0, y = e.src.charCodeAt(++g)), 91 !== y) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            if (n = g + 1, (u = r(e, g)) < 0) return !1;\n            if ((f = u + 1) < m && 40 === e.src.charCodeAt(f)) {\n                for (f++; f < m && (32 === (d = e.src.charCodeAt(f)) || 10 === d); f++);\n                if (f >= m) return !1;\n                for (g = f, o(e, f) ? (l = e.linkContent, f = e.pos) : l = \"\", g = f; f < m && (32 === (d = e.src.charCodeAt(f)) || 10 === d); f++);\n                if (f < m && g !== f && i(e, f))\n                    for (c = e.linkContent, f = e.pos; f < m && (32 === (d = e.src.charCodeAt(f)) || 10 === d); f++);\n                else c = \"\";\n                if (f >= m || 41 !== e.src.charCodeAt(f)) return e.pos = v, !1;\n                f++\n            } else {\n                if (e.linkLevel > 0) return !1;\n                for (; f < m && (32 === (d = e.src.charCodeAt(f)) || 10 === d); f++);\n                if (f < m && 91 === e.src.charCodeAt(f) && (g = f + 1, (f = r(e, f)) >= 0 ? s = e.src.slice(g, f++) : f = g - 1), s || (void 0 === s && (f = u + 1), s = e.src.slice(n, u)), !(p = e.env.references[a(s)])) return e.pos = v, !1;\n                l = p.href, c = p.title\n            }\n            return t || (e.pos = n, e.posMax = u, h ? e.push({\n                type: \"image\",\n                src: l,\n                title: c,\n                alt: e.src.substr(n, u - n),\n                level: e.level\n            }) : (e.push({\n                type: \"link_open\",\n                href: l,\n                title: c,\n                level: e.level++\n            }), e.linkLevel++, e.parser.tokenize(e), e.linkLevel--, e.push({\n                type: \"link_close\",\n                level: --e.level\n            }))), e.pos = f, e.posMax = m, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(153);\n        e.exports = function(e, t) {\n            var n, o, i, a, u = e.posMax,\n                s = e.pos;\n            return !(s + 2 >= u) && (94 === e.src.charCodeAt(s) && (91 === e.src.charCodeAt(s + 1) && (!(e.level >= e.options.maxNesting) && (n = s + 2, !((o = r(e, s + 1)) < 0) && (t || (e.env.footnotes || (e.env.footnotes = {}), e.env.footnotes.list || (e.env.footnotes.list = []), i = e.env.footnotes.list.length, e.pos = n, e.posMax = o, e.push({\n                type: \"footnote_ref\",\n                id: i,\n                level: e.level\n            }), e.linkLevel++, a = e.tokens.length, e.parser.tokenize(e), e.env.footnotes.list[i] = {\n                tokens: e.tokens.splice(a)\n            }, e.linkLevel--), e.pos = o + 1, e.posMax = u, !0)))))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = function(e, t) {\n            var n, r, o, i, a = e.posMax,\n                u = e.pos;\n            if (u + 3 > a) return !1;\n            if (!e.env.footnotes || !e.env.footnotes.refs) return !1;\n            if (91 !== e.src.charCodeAt(u)) return !1;\n            if (94 !== e.src.charCodeAt(u + 1)) return !1;\n            if (e.level >= e.options.maxNesting) return !1;\n            for (r = u + 2; r < a; r++) {\n                if (32 === e.src.charCodeAt(r)) return !1;\n                if (10 === e.src.charCodeAt(r)) return !1;\n                if (93 === e.src.charCodeAt(r)) break\n            }\n            return r !== u + 2 && (!(r >= a) && (r++, n = e.src.slice(u + 2, r - 1), void 0 !== e.env.footnotes.refs[\":\" + n] && (t || (e.env.footnotes.list || (e.env.footnotes.list = []), e.env.footnotes.refs[\":\" + n] < 0 ? (o = e.env.footnotes.list.length, e.env.footnotes.list[o] = {\n                label: n,\n                count: 0\n            }, e.env.footnotes.refs[\":\" + n] = o) : o = e.env.footnotes.refs[\":\" + n], i = e.env.footnotes.list[o].count, e.env.footnotes.list[o].count++, e.push({\n                type: \"footnote_ref\",\n                id: o,\n                subId: i,\n                level: e.level\n            })), e.pos = r, e.posMax = a, !0)))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(1045),\n            o = n(418),\n            i = /^<([a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,\n            a = /^<([a-zA-Z.\\-]{1,25}):([^<>\\x00-\\x20]*)>/;\n        e.exports = function(e, t) {\n            var n, u, s, l, c, f = e.pos;\n            return 60 === e.src.charCodeAt(f) && (!((n = e.src.slice(f)).indexOf(\">\") < 0) && ((u = n.match(a)) ? !(r.indexOf(u[1].toLowerCase()) < 0) && (l = u[0].slice(1, -1), c = o(l), !!e.parser.validateLink(l) && (t || (e.push({\n                type: \"link_open\",\n                href: c,\n                level: e.level\n            }), e.push({\n                type: \"text\",\n                content: l,\n                level: e.level + 1\n            }), e.push({\n                type: \"link_close\",\n                level: e.level\n            })), e.pos += u[0].length, !0)) : !!(s = n.match(i)) && (l = s[0].slice(1, -1), c = o(\"mailto:\" + l), !!e.parser.validateLink(c) && (t || (e.push({\n                type: \"link_open\",\n                href: c,\n                level: e.level\n            }), e.push({\n                type: \"text\",\n                content: l,\n                level: e.level + 1\n            }), e.push({\n                type: \"link_close\",\n                level: e.level\n            })), e.pos += s[0].length, !0))))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = [\"coap\", \"doi\", \"javascript\", \"aaa\", \"aaas\", \"about\", \"acap\", \"cap\", \"cid\", \"crid\", \"data\", \"dav\", \"dict\", \"dns\", \"file\", \"ftp\", \"geo\", \"go\", \"gopher\", \"h323\", \"http\", \"https\", \"iax\", \"icap\", \"im\", \"imap\", \"info\", \"ipp\", \"iris\", \"iris.beep\", \"iris.xpc\", \"iris.xpcs\", \"iris.lwz\", \"ldap\", \"mailto\", \"mid\", \"msrp\", \"msrps\", \"mtqp\", \"mupdate\", \"news\", \"nfs\", \"ni\", \"nih\", \"nntp\", \"opaquelocktoken\", \"pop\", \"pres\", \"rtsp\", \"service\", \"session\", \"shttp\", \"sieve\", \"sip\", \"sips\", \"sms\", \"snmp\", \"soap.beep\", \"soap.beeps\", \"tag\", \"tel\", \"telnet\", \"tftp\", \"thismessage\", \"tn3270\", \"tip\", \"tv\", \"urn\", \"vemmi\", \"ws\", \"wss\", \"xcon\", \"xcon-userid\", \"xmlrpc.beep\", \"xmlrpc.beeps\", \"xmpp\", \"z39.50r\", \"z39.50s\", \"adiumxtra\", \"afp\", \"afs\", \"aim\", \"apt\", \"attachment\", \"aw\", \"beshare\", \"bitcoin\", \"bolo\", \"callto\", \"chrome\", \"chrome-extension\", \"com-eventbrite-attendee\", \"content\", \"cvs\", \"dlna-playsingle\", \"dlna-playcontainer\", \"dtn\", \"dvb\", \"ed2k\", \"facetime\", \"feed\", \"finger\", \"fish\", \"gg\", \"git\", \"gizmoproject\", \"gtalk\", \"hcp\", \"icon\", \"ipn\", \"irc\", \"irc6\", \"ircs\", \"itms\", \"jar\", \"jms\", \"keyparc\", \"lastfm\", \"ldaps\", \"magnet\", \"maps\", \"market\", \"message\", \"mms\", \"ms-help\", \"msnim\", \"mumble\", \"mvn\", \"notes\", \"oid\", \"palm\", \"paparazzi\", \"platform\", \"proxy\", \"psyc\", \"query\", \"res\", \"resource\", \"rmi\", \"rsync\", \"rtmp\", \"secondlife\", \"sftp\", \"sgn\", \"skype\", \"smb\", \"soldat\", \"spotify\", \"ssh\", \"steam\", \"svn\", \"teamspeak\", \"things\", \"udp\", \"unreal\", \"ut2004\", \"ventrilo\", \"view-source\", \"webcal\", \"wtai\", \"wyciwyg\", \"xfire\", \"xri\", \"ymsgr\"]\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(1047).HTML_TAG_RE;\n        e.exports = function(e, t) {\n            var n, o, i, a = e.pos;\n            return !!e.options.html && (i = e.posMax, !(60 !== e.src.charCodeAt(a) || a + 2 >= i) && (!(33 !== (n = e.src.charCodeAt(a + 1)) && 63 !== n && 47 !== n && ! function(e) {\n                var t = 32 | e;\n                return t >= 97 && t <= 122\n            }(n)) && (!!(o = e.src.slice(a).match(r)) && (t || e.push({\n                type: \"htmltag\",\n                content: e.src.slice(a, a + o[0].length),\n                level: e.level\n            }), e.pos += o[0].length, !0))))\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n\n        function r(e, t) {\n            return e = e.source, t = t || \"\",\n                function n(r, o) {\n                    return r ? (o = o.source || o, e = e.replace(r, o), n) : new RegExp(e, t)\n                }\n        }\n        var o = r(/(?:unquoted|single_quoted|double_quoted)/)(\"unquoted\", /[^\"'=<>`\\x00-\\x20]+/)(\"single_quoted\", /'[^']*'/)(\"double_quoted\", /\"[^\"]*\"/)(),\n            i = r(/(?:\\s+attr_name(?:\\s*=\\s*attr_value)?)/)(\"attr_name\", /[a-zA-Z_:][a-zA-Z0-9:._-]*/)(\"attr_value\", o)(),\n            a = r(/<[A-Za-z][A-Za-z0-9]*attribute*\\s*\\/?>/)(\"attribute\", i)(),\n            u = r(/^(?:open_tag|close_tag|comment|processing|declaration|cdata)/)(\"open_tag\", a)(\"close_tag\", /<\\/[A-Za-z][A-Za-z0-9]*\\s*>/)(\"comment\", /<!--([^-]+|[-][^-]+)*-->/)(\"processing\", /<[?].*?[?]>/)(\"declaration\", /<![A-Z]+\\s+[^>]*>/)(\"cdata\", /<!\\[CDATA\\[([^\\]]+|\\][^\\]]|\\]\\][^>])*\\]\\]>/)();\n        e.exports.HTML_TAG_RE = u\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(416),\n            o = n(27).has,\n            i = n(27).isValidEntityCode,\n            a = n(27).fromCodePoint,\n            u = /^&#((?:x[a-f0-9]{1,8}|[0-9]{1,8}));/i,\n            s = /^&([a-z][a-z0-9]{1,31});/i;\n        e.exports = function(e, t) {\n            var n, l, c = e.pos,\n                f = e.posMax;\n            if (38 !== e.src.charCodeAt(c)) return !1;\n            if (c + 1 < f)\n                if (35 === e.src.charCodeAt(c + 1)) {\n                    if (l = e.src.slice(c).match(u)) return t || (n = \"x\" === l[1][0].toLowerCase() ? parseInt(l[1].slice(1), 16) : parseInt(l[1], 10), e.pending += i(n) ? a(n) : a(65533)), e.pos += l[0].length, !0\n                } else if ((l = e.src.slice(c).match(s)) && o(r, l[1])) return t || (e.pending += r[l[1]]), e.pos += l[0].length, !0;\n            return t || (e.pending += \"&\"), e.pos++, !0\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            options: {\n                html: !1,\n                xhtmlOut: !1,\n                breaks: !1,\n                langPrefix: \"language-\",\n                linkify: !1,\n                linkTarget: \"\",\n                typographer: !1,\n                quotes: \"“”‘’\",\n                highlight: null,\n                maxNesting: 20\n            },\n            components: {\n                core: {\n                    rules: [\"block\", \"inline\", \"references\", \"replacements\", \"linkify\", \"smartquotes\", \"references\", \"abbr2\", \"footnote_tail\"]\n                },\n                block: {\n                    rules: [\"blockquote\", \"code\", \"fences\", \"footnote\", \"heading\", \"hr\", \"htmlblock\", \"lheading\", \"list\", \"paragraph\", \"table\"]\n                },\n                inline: {\n                    rules: [\"autolink\", \"backticks\", \"del\", \"emphasis\", \"entity\", \"escape\", \"footnote_ref\", \"htmltag\", \"links\", \"newline\", \"text\"]\n                }\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            options: {\n                html: !1,\n                xhtmlOut: !1,\n                breaks: !1,\n                langPrefix: \"language-\",\n                linkify: !1,\n                linkTarget: \"\",\n                typographer: !1,\n                quotes: \"“”‘’\",\n                highlight: null,\n                maxNesting: 20\n            },\n            components: {\n                core: {},\n                block: {},\n                inline: {}\n            }\n        }\n    }, function(e, t, n) {\n        \"use strict\";\n        e.exports = {\n            options: {\n                html: !0,\n                xhtmlOut: !0,\n                breaks: !1,\n                langPrefix: \"language-\",\n                linkify: !1,\n                linkTarget: \"\",\n                typographer: !1,\n                quotes: \"“”‘’\",\n                highlight: null,\n                maxNesting: 20\n            },\n            components: {\n                core: {\n                    rules: [\"block\", \"inline\", \"references\", \"abbr2\"]\n                },\n                block: {\n                    rules: [\"blockquote\", \"code\", \"fences\", \"heading\", \"hr\", \"htmlblock\", \"lheading\", \"list\", \"paragraph\"]\n                },\n                inline: {\n                    rules: [\"autolink\", \"backticks\", \"emphasis\", \"entity\", \"escape\", \"htmltag\", \"links\", \"newline\", \"text\"]\n                }\n            }\n        }\n    }, function(e, t, n) {\n        var r;\n        r = function() {\n            \"use strict\";\n            var e = [\"a\", \"abbr\", \"acronym\", \"address\", \"area\", \"article\", \"aside\", \"audio\", \"b\", \"bdi\", \"bdo\", \"big\", \"blink\", \"blockquote\", \"body\", \"br\", \"button\", \"canvas\", \"caption\", \"center\", \"cite\", \"code\", \"col\", \"colgroup\", \"content\", \"data\", \"datalist\", \"dd\", \"decorator\", \"del\", \"details\", \"dfn\", \"dir\", \"div\", \"dl\", \"dt\", \"element\", \"em\", \"fieldset\", \"figcaption\", \"figure\", \"font\", \"footer\", \"form\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\", \"head\", \"header\", \"hgroup\", \"hr\", \"html\", \"i\", \"img\", \"input\", \"ins\", \"kbd\", \"label\", \"legend\", \"li\", \"main\", \"map\", \"mark\", \"marquee\", \"menu\", \"menuitem\", \"meter\", \"nav\", \"nobr\", \"ol\", \"optgroup\", \"option\", \"output\", \"p\", \"pre\", \"progress\", \"q\", \"rp\", \"rt\", \"ruby\", \"s\", \"samp\", \"section\", \"select\", \"shadow\", \"small\", \"source\", \"spacer\", \"span\", \"strike\", \"strong\", \"style\", \"sub\", \"summary\", \"sup\", \"table\", \"tbody\", \"td\", \"template\", \"textarea\", \"tfoot\", \"th\", \"thead\", \"time\", \"tr\", \"track\", \"tt\", \"u\", \"ul\", \"var\", \"video\", \"wbr\"],\n                t = [\"svg\", \"a\", \"altglyph\", \"altglyphdef\", \"altglyphitem\", \"animatecolor\", \"animatemotion\", \"animatetransform\", \"audio\", \"canvas\", \"circle\", \"clippath\", \"defs\", \"desc\", \"ellipse\", \"filter\", \"font\", \"g\", \"glyph\", \"glyphref\", \"hkern\", \"image\", \"line\", \"lineargradient\", \"marker\", \"mask\", \"metadata\", \"mpath\", \"path\", \"pattern\", \"polygon\", \"polyline\", \"radialgradient\", \"rect\", \"stop\", \"style\", \"switch\", \"symbol\", \"text\", \"textpath\", \"title\", \"tref\", \"tspan\", \"video\", \"view\", \"vkern\"],\n                n = [\"feBlend\", \"feColorMatrix\", \"feComponentTransfer\", \"feComposite\", \"feConvolveMatrix\", \"feDiffuseLighting\", \"feDisplacementMap\", \"feDistantLight\", \"feFlood\", \"feFuncA\", \"feFuncB\", \"feFuncG\", \"feFuncR\", \"feGaussianBlur\", \"feMerge\", \"feMergeNode\", \"feMorphology\", \"feOffset\", \"fePointLight\", \"feSpecularLighting\", \"feSpotLight\", \"feTile\", \"feTurbulence\"],\n                r = [\"math\", \"menclose\", \"merror\", \"mfenced\", \"mfrac\", \"mglyph\", \"mi\", \"mlabeledtr\", \"mmuliscripts\", \"mn\", \"mo\", \"mover\", \"mpadded\", \"mphantom\", \"mroot\", \"mrow\", \"ms\", \"mpspace\", \"msqrt\", \"mystyle\", \"msub\", \"msup\", \"msubsup\", \"mtable\", \"mtd\", \"mtext\", \"mtr\", \"munder\", \"munderover\"],\n                o = [\"#text\"],\n                i = [\"accept\", \"action\", \"align\", \"alt\", \"autocomplete\", \"background\", \"bgcolor\", \"border\", \"cellpadding\", \"cellspacing\", \"checked\", \"cite\", \"class\", \"clear\", \"color\", \"cols\", \"colspan\", \"coords\", \"crossorigin\", \"datetime\", \"default\", \"dir\", \"disabled\", \"download\", \"enctype\", \"face\", \"for\", \"headers\", \"height\", \"hidden\", \"high\", \"href\", \"hreflang\", \"id\", \"integrity\", \"ismap\", \"label\", \"lang\", \"list\", \"loop\", \"low\", \"max\", \"maxlength\", \"media\", \"method\", \"min\", \"multiple\", \"name\", \"noshade\", \"novalidate\", \"nowrap\", \"open\", \"optimum\", \"pattern\", \"placeholder\", \"poster\", \"preload\", \"pubdate\", \"radiogroup\", \"readonly\", \"rel\", \"required\", \"rev\", \"reversed\", \"role\", \"rows\", \"rowspan\", \"spellcheck\", \"scope\", \"selected\", \"shape\", \"size\", \"sizes\", \"span\", \"srclang\", \"start\", \"src\", \"srcset\", \"step\", \"style\", \"summary\", \"tabindex\", \"title\", \"type\", \"usemap\", \"valign\", \"value\", \"width\", \"xmlns\"],\n                a = [\"accent-height\", \"accumulate\", \"additivive\", \"alignment-baseline\", \"ascent\", \"attributename\", \"attributetype\", \"azimuth\", \"basefrequency\", \"baseline-shift\", \"begin\", \"bias\", \"by\", \"class\", \"clip\", \"clip-path\", \"clip-rule\", \"color\", \"color-interpolation\", \"color-interpolation-filters\", \"color-profile\", \"color-rendering\", \"cx\", \"cy\", \"d\", \"dx\", \"dy\", \"diffuseconstant\", \"direction\", \"display\", \"divisor\", \"dur\", \"edgemode\", \"elevation\", \"end\", \"fill\", \"fill-opacity\", \"fill-rule\", \"filter\", \"flood-color\", \"flood-opacity\", \"font-family\", \"font-size\", \"font-size-adjust\", \"font-stretch\", \"font-style\", \"font-variant\", \"font-weight\", \"fx\", \"fy\", \"g1\", \"g2\", \"glyph-name\", \"glyphref\", \"gradientunits\", \"gradienttransform\", \"height\", \"href\", \"id\", \"image-rendering\", \"in\", \"in2\", \"k\", \"k1\", \"k2\", \"k3\", \"k4\", \"kerning\", \"keypoints\", \"keysplines\", \"keytimes\", \"lang\", \"lengthadjust\", \"letter-spacing\", \"kernelmatrix\", \"kernelunitlength\", \"lighting-color\", \"local\", \"marker-end\", \"marker-mid\", \"marker-start\", \"markerheight\", \"markerunits\", \"markerwidth\", \"maskcontentunits\", \"maskunits\", \"max\", \"mask\", \"media\", \"method\", \"mode\", \"min\", \"name\", \"numoctaves\", \"offset\", \"operator\", \"opacity\", \"order\", \"orient\", \"orientation\", \"origin\", \"overflow\", \"paint-order\", \"path\", \"pathlength\", \"patterncontentunits\", \"patterntransform\", \"patternunits\", \"points\", \"preservealpha\", \"preserveaspectratio\", \"r\", \"rx\", \"ry\", \"radius\", \"refx\", \"refy\", \"repeatcount\", \"repeatdur\", \"restart\", \"result\", \"rotate\", \"scale\", \"seed\", \"shape-rendering\", \"specularconstant\", \"specularexponent\", \"spreadmethod\", \"stddeviation\", \"stitchtiles\", \"stop-color\", \"stop-opacity\", \"stroke-dasharray\", \"stroke-dashoffset\", \"stroke-linecap\", \"stroke-linejoin\", \"stroke-miterlimit\", \"stroke-opacity\", \"stroke\", \"stroke-width\", \"style\", \"surfacescale\", \"tabindex\", \"targetx\", \"targety\", \"transform\", \"text-anchor\", \"text-decoration\", \"text-rendering\", \"textlength\", \"type\", \"u1\", \"u2\", \"unicode\", \"values\", \"viewbox\", \"visibility\", \"vert-adv-y\", \"vert-origin-x\", \"vert-origin-y\", \"width\", \"word-spacing\", \"wrap\", \"writing-mode\", \"xchannelselector\", \"ychannelselector\", \"x\", \"x1\", \"x2\", \"xmlns\", \"y\", \"y1\", \"y2\", \"z\", \"zoomandpan\"],\n                u = [\"accent\", \"accentunder\", \"align\", \"bevelled\", \"close\", \"columnsalign\", \"columnlines\", \"columnspan\", \"denomalign\", \"depth\", \"dir\", \"display\", \"displaystyle\", \"fence\", \"frame\", \"height\", \"href\", \"id\", \"largeop\", \"length\", \"linethickness\", \"lspace\", \"lquote\", \"mathbackground\", \"mathcolor\", \"mathsize\", \"mathvariant\", \"maxsize\", \"minsize\", \"movablelimits\", \"notation\", \"numalign\", \"open\", \"rowalign\", \"rowlines\", \"rowspacing\", \"rowspan\", \"rspace\", \"rquote\", \"scriptlevel\", \"scriptminsize\", \"scriptsizemultiplier\", \"selection\", \"separator\", \"separators\", \"stretchy\", \"subscriptshift\", \"supscriptshift\", \"symmetric\", \"voffset\", \"width\", \"xmlns\"],\n                s = [\"xlink:href\", \"xml:id\", \"xlink:title\", \"xml:space\", \"xmlns:xlink\"];\n\n            function l(e, t) {\n                for (var n = t.length; n--;) \"string\" == typeof t[n] && (t[n] = t[n].toLowerCase()), e[t[n]] = !0;\n                return e\n            }\n\n            function c(e) {\n                var t = {},\n                    n = void 0;\n                for (n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n                return t\n            }\n            var f = /\\{\\{[\\s\\S]*|[\\s\\S]*\\}\\}/gm,\n                p = /<%[\\s\\S]*|[\\s\\S]*%>/gm,\n                d = /^data-[\\-\\w.\\u00B7-\\uFFFF]/,\n                h = /^aria-[\\-\\w]+$/,\n                v = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i,\n                m = /^(?:\\w+script|data):/i,\n                g = /[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205f\\u3000]/g,\n                y = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function(e) {\n                    return typeof e\n                } : function(e) {\n                    return e && \"function\" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e\n                };\n\n            function b(e) {\n                if (Array.isArray(e)) {\n                    for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];\n                    return n\n                }\n                return Array.from(e)\n            }\n            var _ = function() {\n                return \"undefined\" == typeof window ? null : window\n            };\n            return function w() {\n                var E = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : _(),\n                    x = function(e) {\n                        return w(e)\n                    };\n                if (x.version = \"1.0.4\", x.removed = [], !E || !E.document || 9 !== E.document.nodeType) return x.isSupported = !1, x;\n                var S = E.document,\n                    C = !1,\n                    k = !1,\n                    A = E.document,\n                    O = E.DocumentFragment,\n                    P = E.HTMLTemplateElement,\n                    T = E.Node,\n                    M = E.NodeFilter,\n                    I = E.NamedNodeMap,\n                    j = void 0 === I ? E.NamedNodeMap || E.MozNamedAttrMap : I,\n                    N = E.Text,\n                    R = E.Comment,\n                    D = E.DOMParser,\n                    L = E.XMLHttpRequest,\n                    U = void 0 === L ? E.XMLHttpRequest : L,\n                    q = E.encodeURI,\n                    F = void 0 === q ? E.encodeURI : q;\n                if (\"function\" == typeof P) {\n                    var z = A.createElement(\"template\");\n                    z.content && z.content.ownerDocument && (A = z.content.ownerDocument)\n                }\n                var B = A,\n                    V = B.implementation,\n                    H = B.createNodeIterator,\n                    W = B.getElementsByTagName,\n                    J = B.createDocumentFragment,\n                    Y = S.importNode,\n                    K = {};\n                x.isSupported = V && void 0 !== V.createHTMLDocument && 9 !== A.documentMode;\n                var G = f,\n                    $ = p,\n                    Z = d,\n                    X = h,\n                    Q = m,\n                    ee = g,\n                    te = v,\n                    ne = null,\n                    re = l({}, [].concat(b(e), b(t), b(n), b(r), b(o))),\n                    oe = null,\n                    ie = l({}, [].concat(b(i), b(a), b(u), b(s))),\n                    ae = null,\n                    ue = null,\n                    se = !0,\n                    le = !0,\n                    ce = !1,\n                    fe = !1,\n                    pe = !1,\n                    de = !1,\n                    he = !1,\n                    ve = !1,\n                    me = !1,\n                    ge = !1,\n                    ye = !1,\n                    be = !0,\n                    _e = !0,\n                    we = {},\n                    Ee = l({}, [\"audio\", \"head\", \"math\", \"script\", \"style\", \"template\", \"svg\", \"video\"]),\n                    xe = l({}, [\"audio\", \"video\", \"img\", \"source\", \"image\"]),\n                    Se = l({}, [\"alt\", \"class\", \"for\", \"id\", \"label\", \"name\", \"pattern\", \"placeholder\", \"summary\", \"title\", \"value\", \"style\", \"xmlns\"]),\n                    Ce = null,\n                    ke = A.createElement(\"form\"),\n                    Ae = function(f) {\n                        \"object\" !== (void 0 === f ? \"undefined\" : y(f)) && (f = {}), ne = \"ALLOWED_TAGS\" in f ? l({}, f.ALLOWED_TAGS) : re, oe = \"ALLOWED_ATTR\" in f ? l({}, f.ALLOWED_ATTR) : ie, ae = \"FORBID_TAGS\" in f ? l({}, f.FORBID_TAGS) : {}, ue = \"FORBID_ATTR\" in f ? l({}, f.FORBID_ATTR) : {}, we = \"USE_PROFILES\" in f && f.USE_PROFILES, se = !1 !== f.ALLOW_ARIA_ATTR, le = !1 !== f.ALLOW_DATA_ATTR, ce = f.ALLOW_UNKNOWN_PROTOCOLS || !1, fe = f.SAFE_FOR_JQUERY || !1, pe = f.SAFE_FOR_TEMPLATES || !1, de = f.WHOLE_DOCUMENT || !1, me = f.RETURN_DOM || !1, ge = f.RETURN_DOM_FRAGMENT || !1, ye = f.RETURN_DOM_IMPORT || !1, ve = f.FORCE_BODY || !1, be = !1 !== f.SANITIZE_DOM, _e = !1 !== f.KEEP_CONTENT, te = f.ALLOWED_URI_REGEXP || te, pe && (le = !1), ge && (me = !0), we && (ne = l({}, [].concat(b(o))), oe = [], !0 === we.html && (l(ne, e), l(oe, i)), !0 === we.svg && (l(ne, t), l(oe, a), l(oe, s)), !0 === we.svgFilters && (l(ne, n), l(oe, a), l(oe, s)), !0 === we.mathMl && (l(ne, r), l(oe, u), l(oe, s))), f.ADD_TAGS && (ne === re && (ne = c(ne)), l(ne, f.ADD_TAGS)), f.ADD_ATTR && (oe === ie && (oe = c(oe)), l(oe, f.ADD_ATTR)), f.ADD_URI_SAFE_ATTR && l(Se, f.ADD_URI_SAFE_ATTR), _e && (ne[\"#text\"] = !0), Object && \"freeze\" in Object && Object.freeze(f), Ce = f\n                    },\n                    Oe = function(e) {\n                        x.removed.push({\n                            element: e\n                        });\n                        try {\n                            e.parentNode.removeChild(e)\n                        } catch (t) {\n                            e.outerHTML = \"\"\n                        }\n                    },\n                    Pe = function(e, t) {\n                        try {\n                            x.removed.push({\n                                attribute: t.getAttributeNode(e),\n                                from: t\n                            })\n                        } catch (e) {\n                            x.removed.push({\n                                attribute: null,\n                                from: t\n                            })\n                        }\n                        t.removeAttribute(e)\n                    },\n                    Te = function(e) {\n                        var t = void 0,\n                            n = void 0;\n                        if (ve && (e = \"<remove></remove>\" + e), k) {\n                            try {\n                                e = F(e)\n                            } catch (e) {}\n                            var r = new U;\n                            r.responseType = \"document\", r.open(\"GET\", \"data:text/html;charset=utf-8,\" + e, !1), r.send(null), t = r.response\n                        }\n                        if (C) try {\n                            t = (new D).parseFromString(e, \"text/html\")\n                        } catch (e) {}\n                        return t && t.documentElement || ((n = (t = V.createHTMLDocument(\"\")).body).parentNode.removeChild(n.parentNode.firstElementChild), n.outerHTML = e), W.call(t, de ? \"html\" : \"body\")[0]\n                    };\n                x.isSupported && function() {\n                    var e = Te('<svg><g onload=\"this.parentNode.remove()\"></g></svg>');\n                    e.querySelector(\"svg\") || (k = !0);\n                    try {\n                        (e = Te('<svg><p><style><img src=\"</style><img src=x onerror=alert(1)//\">')).querySelector(\"svg img\") && (C = !0)\n                    } catch (e) {}\n                }();\n                var Me = function(e) {\n                        return H.call(e.ownerDocument || e, e, M.SHOW_ELEMENT | M.SHOW_COMMENT | M.SHOW_TEXT, function() {\n                            return M.FILTER_ACCEPT\n                        }, !1)\n                    },\n                    Ie = function(e) {\n                        return \"object\" === (void 0 === T ? \"undefined\" : y(T)) ? e instanceof T : e && \"object\" === (void 0 === e ? \"undefined\" : y(e)) && \"number\" == typeof e.nodeType && \"string\" == typeof e.nodeName\n                    },\n                    je = function(e, t, n) {\n                        K[e] && K[e].forEach(function(e) {\n                            e.call(x, t, n, Ce)\n                        })\n                    },\n                    Ne = function(e) {\n                        var t, n = void 0;\n                        if (je(\"beforeSanitizeElements\", e, null), !((t = e) instanceof N || t instanceof R || \"string\" == typeof t.nodeName && \"string\" == typeof t.textContent && \"function\" == typeof t.removeChild && t.attributes instanceof j && \"function\" == typeof t.removeAttribute && \"function\" == typeof t.setAttribute)) return Oe(e), !0;\n                        var r = e.nodeName.toLowerCase();\n                        if (je(\"uponSanitizeElement\", e, {\n                            tagName: r,\n                            allowedTags: ne\n                        }), !ne[r] || ae[r]) {\n                            if (_e && !Ee[r] && \"function\" == typeof e.insertAdjacentHTML) try {\n                                e.insertAdjacentHTML(\"AfterEnd\", e.innerHTML)\n                            } catch (e) {}\n                            return Oe(e), !0\n                        }\n                        return !fe || e.firstElementChild || e.content && e.content.firstElementChild || !/</g.test(e.textContent) || (x.removed.push({\n                            element: e.cloneNode()\n                        }), e.innerHTML = e.textContent.replace(/</g, \"&lt;\")), pe && 3 === e.nodeType && (n = (n = (n = e.textContent).replace(G, \" \")).replace($, \" \"), e.textContent !== n && (x.removed.push({\n                            element: e.cloneNode()\n                        }), e.textContent = n)), je(\"afterSanitizeElements\", e, null), !1\n                    },\n                    Re = function(e) {\n                        var t = void 0,\n                            n = void 0,\n                            r = void 0,\n                            o = void 0,\n                            i = void 0,\n                            a = void 0,\n                            u = void 0;\n                        if (je(\"beforeSanitizeAttributes\", e, null), a = e.attributes) {\n                            var s = {\n                                attrName: \"\",\n                                attrValue: \"\",\n                                keepAttr: !0,\n                                allowedAttributes: oe\n                            };\n                            for (u = a.length; u--;) {\n                                if (n = (t = a[u]).name, r = t.value.trim(), o = n.toLowerCase(), s.attrName = o, s.attrValue = r, s.keepAttr = !0, je(\"uponSanitizeAttribute\", e, s), r = s.attrValue, \"name\" === o && \"IMG\" === e.nodeName && a.id) i = a.id, a = Array.prototype.slice.apply(a), Pe(\"id\", e), Pe(n, e), a.indexOf(i) > u && e.setAttribute(\"id\", i.value);\n                                else {\n                                    if (\"INPUT\" === e.nodeName && \"type\" === o && \"file\" === r && (oe[o] || !ue[o])) continue;\n                                    \"id\" === n && e.setAttribute(n, \"\"), Pe(n, e)\n                                }\n                                if (s.keepAttr && (!be || \"id\" !== o && \"name\" !== o || !(r in A || r in ke))) {\n                                    if (pe && (r = (r = r.replace(G, \" \")).replace($, \" \")), le && Z.test(o));\n                                    else if (se && X.test(o));\n                                    else {\n                                        if (!oe[o] || ue[o]) continue;\n                                        if (Se[o]);\n                                        else if (te.test(r.replace(ee, \"\")));\n                                        else if (\"src\" !== o && \"xlink:href\" !== o || 0 !== r.indexOf(\"data:\") || !xe[e.nodeName.toLowerCase()])\n                                            if (ce && !Q.test(r.replace(ee, \"\")));\n                                            else if (r) continue\n                                    }\n                                    try {\n                                        e.setAttribute(n, r), x.removed.pop()\n                                    } catch (e) {}\n                                }\n                            }\n                            je(\"afterSanitizeAttributes\", e, null)\n                        }\n                    },\n                    De = function e(t) {\n                        var n = void 0,\n                            r = Me(t);\n                        for (je(\"beforeSanitizeShadowDOM\", t, null); n = r.nextNode();) je(\"uponSanitizeShadowNode\", n, null), Ne(n) || (n.content instanceof O && e(n.content), Re(n));\n                        je(\"afterSanitizeShadowDOM\", t, null)\n                    };\n                return x.sanitize = function(e, t) {\n                    var n = void 0,\n                        r = void 0,\n                        o = void 0,\n                        i = void 0,\n                        a = void 0;\n                    if (e || (e = \"\\x3c!--\\x3e\"), \"string\" != typeof e && !Ie(e)) {\n                        if (\"function\" != typeof e.toString) throw new TypeError(\"toString is not a function\");\n                        if (\"string\" != typeof(e = e.toString())) throw new TypeError(\"dirty is not a string, aborting\")\n                    }\n                    if (!x.isSupported) {\n                        if (\"object\" === y(E.toStaticHTML) || \"function\" == typeof E.toStaticHTML) {\n                            if (\"string\" == typeof e) return E.toStaticHTML(e);\n                            if (Ie(e)) return E.toStaticHTML(e.outerHTML)\n                        }\n                        return e\n                    }\n                    if (he || Ae(t), x.removed = [], e instanceof T) 1 === (r = (n = Te(\"\\x3c!--\\x3e\")).ownerDocument.importNode(e, !0)).nodeType && \"BODY\" === r.nodeName ? n = r : n.appendChild(r);\n                    else {\n                        if (!me && !de && -1 === e.indexOf(\"<\")) return e;\n                        if (!(n = Te(e))) return me ? null : \"\"\n                    }\n                    ve && Oe(n.firstChild);\n                    for (var u = Me(n); o = u.nextNode();) 3 === o.nodeType && o === i || Ne(o) || (o.content instanceof O && De(o.content), Re(o), i = o);\n                    if (me) {\n                        if (ge)\n                            for (a = J.call(n.ownerDocument); n.firstChild;) a.appendChild(n.firstChild);\n                        else a = n;\n                        return ye && (a = Y.call(S, a, !0)), a\n                    }\n                    return de ? n.outerHTML : n.innerHTML\n                }, x.setConfig = function(e) {\n                    Ae(e), he = !0\n                }, x.clearConfig = function() {\n                    Ce = null, he = !1\n                }, x.addHook = function(e, t) {\n                    \"function\" == typeof t && (K[e] = K[e] || [], K[e].push(t))\n                }, x.removeHook = function(e) {\n                    K[e] && K[e].pop()\n                }, x.removeHooks = function(e) {\n                    K[e] && (K[e] = [])\n                }, x.removeAllHooks = function() {\n                    K = {}\n                }, x\n            }()\n        }, e.exports = r()\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        });\n        var r = l(n(4)),\n            o = l(n(2)),\n            i = l(n(3)),\n            a = l(n(5)),\n            u = l(n(6)),\n            s = l(n(0));\n        l(n(1));\n\n        function l(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        var c = function(e) {\n            function t() {\n                return (0, o.default)(this, t), (0, a.default)(this, (t.__proto__ || (0, r.default)(t)).apply(this, arguments))\n            }\n            return (0, u.default)(t, e), (0, i.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.specSelectors,\n                        n = e.getComponent,\n                        r = n(\"SvgAssets\"),\n                        o = n(\"InfoContainer\", !0),\n                        i = n(\"VersionPragmaFilter\"),\n                        a = n(\"operations\", !0),\n                        u = n(\"Models\", !0),\n                        l = n(\"Row\"),\n                        c = n(\"Col\"),\n                        f = n(\"ServersContainer\", !0),\n                        p = n(\"errors\", !0),\n                        d = n(\"SchemesContainer\", !0),\n                        h = n(\"FilterContainer\", !0),\n                        v = t.isSwagger2(),\n                        m = t.isOAS3();\n                    if (!t.specStr()) {\n                        var g = void 0;\n                        return g = \"loading\" === t.loadingStatus() ? s.default.createElement(\"div\", {\n                            className: \"loading\"\n                        }) : s.default.createElement(\"h4\", null, \"No API definition provided.\"), s.default.createElement(\"div\", {\n                            className: \"swagger-ui\"\n                        }, s.default.createElement(\"div\", {\n                            className: \"loading-container\"\n                        }, g))\n                    }\n                    return s.default.createElement(\"div\", {\n                        className: \"swagger-ui\"\n                    }, s.default.createElement(r, null), s.default.createElement(i, {\n                        isSwagger2: v,\n                        isOAS3: m,\n                        alsoShow: s.default.createElement(p, null)\n                    }, s.default.createElement(p, null), s.default.createElement(l, {\n                        className: \"information-container\"\n                    }, s.default.createElement(c, {\n                        mobile: 12\n                    }, s.default.createElement(o, null))), s.default.createElement(d, null), s.default.createElement(f, null), s.default.createElement(h, null), s.default.createElement(l, null, s.default.createElement(c, {\n                        mobile: 12,\n                        desktop: 12\n                    }, s.default.createElement(a, null))), s.default.createElement(l, null, s.default.createElement(c, {\n                        mobile: 12,\n                        desktop: 12\n                    }, s.default.createElement(u, null)))))\n                }\n            }]), t\n        }(s.default.Component);\n        t.default = c\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.JsonSchema_object = t.JsonSchema_boolean = t.JsonSchema_array = t.JsonSchema_string = t.JsonSchemaForm = void 0;\n        var r = y(n(23)),\n            o = y(n(25)),\n            i = y(n(4)),\n            a = y(n(2)),\n            u = y(n(3)),\n            s = y(n(5)),\n            l = y(n(6)),\n            c = n(0),\n            f = y(c),\n            p = y(n(1)),\n            d = n(7),\n            h = y(n(113)),\n            v = y(n(12)),\n            m = y(n(1055)),\n            g = n(10);\n\n        function y(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }\n        p.default.func.isRequired, p.default.any, p.default.func, p.default.any, p.default.object.isRequired, p.default.object, v.default.list, p.default.bool, p.default.bool, p.default.any;\n        var b = {\n            value: \"\",\n            onChange: function() {},\n            schema: {},\n            keyName: \"\",\n            required: !1,\n            errors: (0, d.List)()\n        };\n\n        function _(e) {\n            return d.List.isList(e) ? e : (0, d.List)()\n        }(t.JsonSchemaForm = function(e) {\n            function t() {\n                return (0, a.default)(this, t), (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).apply(this, arguments))\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    var e = this.props,\n                        t = e.dispatchInitialValue,\n                        n = e.value,\n                        r = e.onChange;\n                    t && r(n)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.schema,\n                        n = e.errors,\n                        r = e.value,\n                        i = e.onChange,\n                        a = e.getComponent,\n                        u = e.fn;\n                    t.toJS && (t = t.toJS());\n                    var s = t,\n                        l = s.type,\n                        c = s.format,\n                        p = void 0 === c ? \"\" : c,\n                        d = a(p ? \"JsonSchema_\" + l + \"_\" + p : \"JsonSchema_\" + l) || a(\"JsonSchema_string\");\n                    return f.default.createElement(d, (0, o.default)({}, this.props, {\n                        errors: n,\n                        fn: u,\n                        getComponent: a,\n                        value: r,\n                        onChange: i,\n                        schema: t\n                    }))\n                }\n            }]), t\n        }(c.Component)).defaultProps = b, (t.JsonSchema_string = function(e) {\n            function t() {\n                var e, n, r, o;\n                (0, a.default)(this, t);\n                for (var u = arguments.length, l = Array(u), c = 0; c < u; c++) l[c] = arguments[c];\n                return n = r = (0, s.default)(this, (e = t.__proto__ || (0, i.default)(t)).call.apply(e, [this].concat(l))), r.onChange = function(e) {\n                    var t = \"file\" === r.props.schema.type ? e.target.files[0] : e.target.value;\n                    r.props.onChange(t, r.props.keyName)\n                }, r.onEnumChange = function(e) {\n                    return r.props.onChange(e)\n                }, o = n, (0, s.default)(r, o)\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.value,\n                        r = e.schema,\n                        o = e.errors,\n                        i = e.required,\n                        a = e.description,\n                        u = r.enum;\n                    if (o = o.toJS ? o.toJS() : [], u) {\n                        var s = t(\"Select\");\n                        return f.default.createElement(s, {\n                            className: o.length ? \"invalid\" : \"\",\n                            title: o.length ? o : \"\",\n                            allowedValues: u,\n                            value: n,\n                            allowEmptyValue: !i,\n                            onChange: this.onEnumChange\n                        })\n                    }\n                    var l = \"formData\" === r.in && !(\"FormData\" in window),\n                        c = t(\"Input\");\n                    return \"file\" === r.type ? f.default.createElement(c, {\n                        type: \"file\",\n                        className: o.length ? \"invalid\" : \"\",\n                        title: o.length ? o : \"\",\n                        onChange: this.onChange,\n                        disabled: l\n                    }) : f.default.createElement(m.default, {\n                        type: \"password\" === r.format ? \"password\" : \"text\",\n                        className: o.length ? \"invalid\" : \"\",\n                        title: o.length ? o : \"\",\n                        value: n,\n                        minLength: 0,\n                        debounceTimeout: 350,\n                        placeholder: a,\n                        onChange: this.onChange,\n                        disabled: l\n                    })\n                }\n            }]), t\n        }(c.Component)).defaultProps = b, (t.JsonSchema_array = function(e) {\n            function t(e, n) {\n                (0, a.default)(this, t);\n                var r = (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).call(this, e, n));\n                return r.onChange = function() {\n                    return r.props.onChange(r.state.value)\n                }, r.onItemChange = function(e, t) {\n                    r.setState(function(n) {\n                        return {\n                            value: n.value.set(t, e)\n                        }\n                    }, r.onChange)\n                }, r.removeItem = function(e) {\n                    r.setState(function(t) {\n                        return {\n                            value: t.value.remove(e)\n                        }\n                    }, r.onChange)\n                }, r.addItem = function() {\n                    r.setState(function(e) {\n                        return e.value = _(e.value), {\n                            value: e.value.push(\"\")\n                        }\n                    }, r.onChange)\n                }, r.onEnumChange = function(e) {\n                    r.setState(function() {\n                        return {\n                            value: e\n                        }\n                    }, r.onChange)\n                }, r.state = {\n                    value: _(e.value)\n                }, r\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    e.value !== this.state.value && this.setState({\n                        value: e.value\n                    })\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this,\n                        t = this.props,\n                        n = t.getComponent,\n                        o = t.required,\n                        i = t.schema,\n                        a = t.errors,\n                        u = t.fn;\n                    a = a.toJS ? a.toJS() : [];\n                    var s = u.inferSchema(i.items),\n                        l = n(\"JsonSchemaForm\"),\n                        c = n(\"Button\"),\n                        p = s.enum,\n                        d = this.state.value;\n                    if (p) {\n                        var h = n(\"Select\");\n                        return f.default.createElement(h, {\n                            className: a.length ? \"invalid\" : \"\",\n                            title: a.length ? a : \"\",\n                            multiple: !0,\n                            value: d,\n                            allowedValues: p,\n                            allowEmptyValue: !o,\n                            onChange: this.onEnumChange\n                        })\n                    }\n                    return f.default.createElement(\"div\", null, !d || !d.count || d.count() < 1 ? null : d.map(function(t, o) {\n                        var i = (0, r.default)({}, s);\n                        if (a.length) {\n                            var p = a.filter(function(e) {\n                                return e.index === o\n                            });\n                            p.length && (a = [p[0].error + o])\n                        }\n                        return f.default.createElement(\"div\", {\n                            key: o,\n                            className: \"json-schema-form-item\"\n                        }, f.default.createElement(l, {\n                            fn: u,\n                            getComponent: n,\n                            value: t,\n                            onChange: function(t) {\n                                return e.onItemChange(t, o)\n                            },\n                            schema: i\n                        }), f.default.createElement(c, {\n                            className: \"btn btn-sm json-schema-form-item-remove\",\n                            onClick: function() {\n                                return e.removeItem(o)\n                            }\n                        }, \" - \"))\n                    }).toArray(), f.default.createElement(c, {\n                        className: \"btn btn-sm json-schema-form-item-add \" + (a.length ? \"invalid\" : null),\n                        onClick: this.addItem\n                    }, \" Add item \"))\n                }\n            }]), t\n        }(c.PureComponent)).defaultProps = b, (t.JsonSchema_boolean = function(e) {\n            function t() {\n                var e, n, r, o;\n                (0, a.default)(this, t);\n                for (var u = arguments.length, l = Array(u), c = 0; c < u; c++) l[c] = arguments[c];\n                return n = r = (0, s.default)(this, (e = t.__proto__ || (0, i.default)(t)).call.apply(e, [this].concat(l))), r.onEnumChange = function(e) {\n                    return r.props.onChange(e)\n                }, o = n, (0, s.default)(r, o)\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.value,\n                        r = e.errors,\n                        o = e.schema,\n                        i = e.required;\n                    r = r.toJS ? r.toJS() : [];\n                    var a = t(\"Select\");\n                    return f.default.createElement(a, {\n                        className: r.length ? \"invalid\" : \"\",\n                        title: r.length ? r : \"\",\n                        value: String(n),\n                        allowedValues: (0, d.fromJS)(o.enum || [\"true\", \"false\"]),\n                        allowEmptyValue: !o.enum || !i,\n                        onChange: this.onEnumChange\n                    })\n                }\n            }]), t\n        }(c.Component)).defaultProps = b, (t.JsonSchema_object = function(e) {\n            function t() {\n                (0, a.default)(this, t);\n                var e = (0, s.default)(this, (t.__proto__ || (0, i.default)(t)).call(this));\n                return e.resetValueToSample = function() {\n                    e.onChange((0, g.getSampleSchema)(e.props.schema))\n                }, e.onChange = function(t) {\n                    e.props.onChange(t)\n                }, e.handleOnChange = function(t) {\n                    var n = t.target.value;\n                    e.onChange(n)\n                }, e\n            }\n            return (0, l.default)(t, e), (0, u.default)(t, [{\n                key: \"componentDidMount\",\n                value: function() {\n                    !this.props.value && this.props.schema && this.resetValueToSample()\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.getComponent,\n                        n = e.value,\n                        r = e.errors,\n                        o = t(\"TextArea\");\n                    return f.default.createElement(\"div\", null, f.default.createElement(o, {\n                        className: (0, h.default)({\n                            invalid: r.size\n                        }),\n                        title: r.size ? r.join(\", \") : \"\",\n                        value: n,\n                        onChange: this.handleOnChange\n                    }))\n                }\n            }]), t\n        }(c.PureComponent)).defaultProps = b\n    }, function(e, t, n) {\n        \"use strict\";\n        var r = n(1056).DebounceInput;\n        r.DebounceInput = r, e.exports = r\n    }, function(e, t, n) {\n        \"use strict\";\n        Object.defineProperty(t, \"__esModule\", {\n            value: !0\n        }), t.DebounceInput = void 0;\n        var r = Object.assign || function(e) {\n                for (var t = 1; t < arguments.length; t++) {\n                    var n = arguments[t];\n                    for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])\n                }\n                return e\n            },\n            o = function() {\n                function e(e, t) {\n                    for (var n = 0; n < t.length; n++) {\n                        var r = t[n];\n                        r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)\n                    }\n                }\n                return function(t, n, r) {\n                    return n && e(t.prototype, n), r && e(t, r), t\n                }\n            }(),\n            i = u(n(0)),\n            a = u(n(1057));\n\n        function u(e) {\n            return e && e.__esModule ? e : {\n                default: e\n            }\n        }(t.DebounceInput = function(e) {\n            function t(e) {\n                ! function(e, t) {\n                    if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n                }(this, t);\n                var n = function(e, t) {\n                    if (!e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n                    return !t || \"object\" != typeof t && \"function\" != typeof t ? e : t\n                }(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e));\n                return n.onChange = function(e) {\n                    e.persist();\n                    var t = n.state.value;\n                    n.setState({\n                        value: e.target.value\n                    }, function() {\n                        var o = n.state.value;\n                        o.length >= n.props.minLength ? n.notify(e) : t.length > o.length && n.notify(r({}, e, {\n                            target: r({}, e.target, {\n                                value: \"\"\n                            })\n                        }))\n                    })\n                }, n.onKeyDown = function(e) {\n                    var t = n.props.onKeyDown;\n                    \"Enter\" === e.key && n.forceNotify(e), t && t(e)\n                }, n.onBlur = function(e) {\n                    var t = n.props.onBlur;\n                    n.forceNotify(e), t && t(e)\n                }, n.createNotifier = function(e) {\n                    if (e < 0) n.notify = function() {\n                        return null\n                    };\n                    else if (0 === e) n.notify = n.doNotify;\n                    else {\n                        var t = (0, a.default)(function(e) {\n                            n.isDebouncing = !1, n.doNotify(e)\n                        }, e);\n                        n.notify = function(e) {\n                            n.isDebouncing = !0, t(e)\n                        }, n.flush = function() {\n                            return t.flush()\n                        }, n.cancel = function() {\n                            n.isDebouncing = !1, t.cancel()\n                        }\n                    }\n                }, n.doNotify = function() {\n                    n.props.onChange.apply(void 0, arguments)\n                }, n.forceNotify = function(e) {\n                    if (n.isDebouncing) {\n                        n.cancel && n.cancel();\n                        var t = n.state.value,\n                            o = n.props.minLength;\n                        t.length >= o ? n.doNotify(e) : n.doNotify(r({}, e, {\n                            target: r({}, e.target, {\n                                value: t\n                            })\n                        }))\n                    }\n                }, n.state = {\n                    value: e.value || \"\"\n                }, n.isDebouncing = !1, n\n            }\n            return function(e, t) {\n                if (\"function\" != typeof t && null !== t) throw new TypeError(\"Super expression must either be null or a function, not \" + typeof t);\n                e.prototype = Object.create(t && t.prototype, {\n                    constructor: {\n                        value: e,\n                        enumerable: !1,\n                        writable: !0,\n                        configurable: !0\n                    }\n                }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)\n            }(t, i.default.PureComponent), o(t, [{\n                key: \"componentWillMount\",\n                value: function() {\n                    this.createNotifier(this.props.debounceTimeout)\n                }\n            }, {\n                key: \"componentWillReceiveProps\",\n                value: function(e) {\n                    var t = e.value,\n                        n = e.debounceTimeout;\n                    this.isDebouncing || (void 0 !== t && this.state.value !== t && this.setState({\n                        value: t\n                    }), n !== this.props.debounceTimeout && this.createNotifier(n))\n                }\n            }, {\n                key: \"componentWillUnmount\",\n                value: function() {\n                    this.flush && this.flush()\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var e = this.props,\n                        t = e.element,\n                        n = (e.onChange, e.value, e.minLength, e.debounceTimeout, e.forceNotifyByEnter),\n                        o = e.forceNotifyOnBlur,\n                        a = e.onKeyDown,\n                        u = e.onBlur,\n                        s = e.inputRef,\n                        l = function(e, t) {\n                            var n = {};\n                            for (var r in e) t.indexOf(r) >= 0 || Object.prototype.hasOwnProperty.call(e, r) && (n[r] = e[r]);\n                            return n\n                        }(e, [\"element\", \"onChange\", \"value\", \"minLength\", \"debounceTimeout\", \"forceNotifyByEnter\", \"forceNotifyOnBlur\", \"onKeyDown\", \"onBlur\", \"inputRef\"]),\n                        c = void 0;\n                    c = n ? {\n                        onKeyDown: this.onKeyDown\n                    } : a ? {\n                        onKeyDown: a\n                    } : {};\n                    var f = void 0;\n                    f = o ? {\n                        onBlur: this.onBlur\n                    } : u ? {\n                        onBlur: u\n                    } : {};\n                    var p = s ? {\n                        ref: s\n                    } : {};\n                    return i.default.createElement(t, r({}, l, {\n                        onChange: this.onChange,\n                        value: this.state.value\n                    }, c, f, p))\n                }\n            }]), t\n        }()).defaultProps = {\n            element: \"input\",\n            type: \"text\",\n            onKeyDown: void 0,\n            onBlur: void 0,\n            value: void 0,\n            minLength: 0,\n            debounceTimeout: 100,\n            forceNotifyByEnter: !0,\n            forceNotifyOnBlur: !0,\n            inputRef: void 0\n        }\n    }, function(e, t, n) {\n        (function(t) {\n            var n = \"Expected a function\",\n                r = NaN,\n                o = \"[object Symbol]\",\n                i = /^\\s+|\\s+$/g,\n                a = /^[-+]0x[0-9a-f]+$/i,\n                u = /^0b[01]+$/i,\n                s = /^0o[0-7]+$/i,\n                l = parseInt,\n                c = \"object\" == typeof t && t && t.Object === Object && t,\n                f = \"object\" == typeof self && self && self.Object === Object && self,\n                p = c || f || Function(\"return this\")(),\n                d = Object.prototype.toString,\n                h = Math.max,\n                v = Math.min,\n                m = function() {\n                    return p.Date.now()\n                };\n\n            function g(e) {\n                var t = typeof e;\n                return !!e && (\"object\" == t || \"function\" == t)\n            }\n\n            function y(e) {\n                if (\"number\" == typeof e) return e;\n                if (function(e) {\n                    return \"symbol\" == typeof e || function(e) {\n                        return !!e && \"object\" == typeof e\n                    }(e) && d.call(e) == o\n                }(e)) return r;\n                if (g(e)) {\n                    var t = \"function\" == typeof e.valueOf ? e.valueOf() : e;\n                    e = g(t) ? t + \"\" : t\n                }\n                if (\"string\" != typeof e) return 0 === e ? e : +e;\n                e = e.replace(i, \"\");\n                var n = u.test(e);\n                return n || s.test(e) ? l(e.slice(2), n ? 2 : 8) : a.test(e) ? r : +e\n            }\n            e.exports = function(e, t, r) {\n                var o, i, a, u, s, l, c = 0,\n                    f = !1,\n                    p = !1,\n                    d = !0;\n                if (\"function\" != typeof e) throw new TypeError(n);\n\n                function b(t) {\n                    var n = o,\n                        r = i;\n                    return o = i = void 0, c = t, u = e.apply(r, n)\n                }\n\n                function _(e) {\n                    var n = e - l;\n                    return void 0 === l || n >= t || n < 0 || p && e - c >= a\n                }\n\n                function w() {\n                    var e = m();\n                    if (_(e)) return E(e);\n                    s = setTimeout(w, function(e) {\n                        var n = t - (e - l);\n                        return p ? v(n, a - (e - c)) : n\n                    }(e))\n                }\n\n                function E(e) {\n                    return s = void 0, d && o ? b(e) : (o = i = void 0, u)\n                }\n\n                function x() {\n                    var e = m(),\n                        n = _(e);\n                    if (o = arguments, i = this, l = e, n) {\n                        if (void 0 === s) return function(e) {\n                            return c = e, s = setTimeout(w, t), f ? b(e) : u\n                        }(l);\n                        if (p) return s = setTimeout(w, t), b(l)\n                    }\n                    return void 0 === s && (s = setTimeout(w, t)), u\n                }\n                return t = y(t) || 0, g(r) && (f = !!r.leading, a = (p = \"maxWait\" in r) ? h(y(r.maxWait) || 0, t) : a, d = \"trailing\" in r ? !!r.trailing : d), x.cancel = function() {\n                    void 0 !== s && clearTimeout(s), c = 0, o = l = i = s = void 0\n                }, x.flush = function() {\n                    return void 0 === s ? u : E(m())\n                }, x\n            }\n        }).call(t, n(31))\n    }, function(e, t, n) {\n        var r = {\n            \"./all.js\": 444,\n            \"./auth/actions.js\": 232,\n            \"./auth/index.js\": 393,\n            \"./auth/reducers.js\": 394,\n            \"./auth/selectors.js\": 395,\n            \"./auth/spec-wrap-actions.js\": 396,\n            \"./configs/actions.js\": 234,\n            \"./configs/helpers.js\": 233,\n            \"./configs/index.js\": 399,\n            \"./configs/reducers.js\": 402,\n            \"./configs/selectors.js\": 401,\n            \"./configs/spec-actions.js\": 400,\n            \"./deep-linking/helpers.js\": 405,\n            \"./deep-linking/index.js\": 403,\n            \"./deep-linking/layout.js\": 404,\n            \"./deep-linking/operation-tag-wrapper.jsx\": 407,\n            \"./deep-linking/operation-wrapper.jsx\": 406,\n            \"./download-url.js\": 398,\n            \"./err/actions.js\": 127,\n            \"./err/error-transformers/hook.js\": 321,\n            \"./err/error-transformers/transformers/not-of-type.js\": 322,\n            \"./err/error-transformers/transformers/parameter-oneof.js\": 323,\n            \"./err/error-transformers/transformers/strip-instance.js\": 324,\n            \"./err/index.js\": 319,\n            \"./err/reducers.js\": 320,\n            \"./err/selectors.js\": 325,\n            \"./filter/index.js\": 408,\n            \"./filter/opsFilter.js\": 409,\n            \"./layout/actions.js\": 200,\n            \"./layout/index.js\": 326,\n            \"./layout/reducers.js\": 327,\n            \"./layout/selectors.js\": 328,\n            \"./logs/index.js\": 385,\n            \"./oas3/actions.js\": 236,\n            \"./oas3/auth-extensions/wrap-selectors.js\": 423,\n            \"./oas3/components/callbacks.jsx\": 426,\n            \"./oas3/components/http-auth.jsx\": 432,\n            \"./oas3/components/index.js\": 425,\n            \"./oas3/components/operation-link.jsx\": 428,\n            \"./oas3/components/operation-servers.jsx\": 433,\n            \"./oas3/components/request-body-editor.jsx\": 431,\n            \"./oas3/components/request-body.jsx\": 427,\n            \"./oas3/components/servers-container.jsx\": 430,\n            \"./oas3/components/servers.jsx\": 429,\n            \"./oas3/helpers.js\": 35,\n            \"./oas3/index.js\": 421,\n            \"./oas3/reducers.js\": 443,\n            \"./oas3/selectors.js\": 442,\n            \"./oas3/spec-extensions/selectors.js\": 424,\n            \"./oas3/spec-extensions/wrap-selectors.js\": 422,\n            \"./oas3/wrap-components/auth-item.jsx\": 436,\n            \"./oas3/wrap-components/index.js\": 434,\n            \"./oas3/wrap-components/json-schema-string.js\": 441,\n            \"./oas3/wrap-components/markdown.js\": 435,\n            \"./oas3/wrap-components/model.jsx\": 440,\n            \"./oas3/wrap-components/online-validator-badge.js\": 439,\n            \"./oas3/wrap-components/parameters.jsx\": 437,\n            \"./oas3/wrap-components/version-stamp.jsx\": 438,\n            \"./on-complete/index.js\": 410,\n            \"./samples/fn.js\": 192,\n            \"./samples/index.js\": 384,\n            \"./spec/actions.js\": 202,\n            \"./spec/index.js\": 332,\n            \"./spec/reducers.js\": 333,\n            \"./spec/selectors.js\": 201,\n            \"./spec/wrap-actions.js\": 346,\n            \"./swagger-js/index.js\": 386,\n            \"./util/index.js\": 397,\n            \"./view/index.js\": 347,\n            \"./view/root-injects.js\": 348\n        };\n\n        function o(e) {\n            return n(i(e))\n        }\n\n        function i(e) {\n            var t = r[e];\n            if (!(t + 1)) throw new Error(\"Cannot find module '\" + e + \"'.\");\n            return t\n        }\n        o.keys = function() {\n            return Object.keys(r)\n        }, o.resolve = i, e.exports = o, o.id = 1058\n    }])\n});\n//# sourceMappingURL=swagger-ui-bundle.js.map"
  },
  {
    "path": "client/lite/swagger-ui/swagger-ui-standalone-preset.js",
    "content": "! function(t, e) {\n    \"object\" == typeof exports && \"object\" == typeof module ? module.exports = e() : \"function\" == typeof define && define.amd ? define([], e) : \"object\" == typeof exports ? exports.SwaggerUIStandalonePreset = e() : t.SwaggerUIStandalonePreset = e()\n}(this, function() {\n    return function(t) {\n        var e = {};\n\n        function n(r) {\n            if (e[r]) return e[r].exports;\n            var i = e[r] = {\n                i: r,\n                l: !1,\n                exports: {}\n            };\n            return t[r].call(i.exports, i, i.exports, n), i.l = !0, i.exports\n        }\n        return n.m = t, n.c = e, n.d = function(t, e, r) {\n            n.o(t, e) || Object.defineProperty(t, e, {\n                configurable: !1,\n                enumerable: !0,\n                get: r\n            })\n        }, n.n = function(t) {\n            var e = t && t.__esModule ? function() {\n                return t.default\n            } : function() {\n                return t\n            };\n            return n.d(e, \"a\", e), e\n        }, n.o = function(t, e) {\n            return Object.prototype.hasOwnProperty.call(t, e)\n        }, n.p = \"/dist\", n(n.s = 206)\n    }([function(t, e, n) {\n        \"use strict\";\n        var r = n(52),\n            i = [\"kind\", \"resolve\", \"construct\", \"instanceOf\", \"predicate\", \"represent\", \"defaultStyle\", \"styleAliases\"],\n            o = [\"scalar\", \"sequence\", \"mapping\"];\n        t.exports = function(t, e) {\n            var n, u;\n            if (e = e || {}, Object.keys(e).forEach(function(e) {\n                if (-1 === i.indexOf(e)) throw new r('Unknown option \"' + e + '\" is met in definition of \"' + t + '\" YAML type.')\n            }), this.tag = t, this.kind = e.kind || null, this.resolve = e.resolve || function() {\n                return !0\n            }, this.construct = e.construct || function(t) {\n                return t\n            }, this.instanceOf = e.instanceOf || null, this.predicate = e.predicate || null, this.represent = e.represent || null, this.defaultStyle = e.defaultStyle || null, this.styleAliases = (n = e.styleAliases || null, u = {}, null !== n && Object.keys(n).forEach(function(t) {\n                n[t].forEach(function(e) {\n                    u[String(e)] = t\n                })\n            }), u), -1 === o.indexOf(this.kind)) throw new r('Unknown kind \"' + this.kind + '\" is specified for \"' + t + '\" YAML type.')\n        }\n    }, function(t, e, n) {\n        var r = n(133)(\"wks\"),\n            i = n(98),\n            o = n(5).Symbol,\n            u = \"function\" == typeof o;\n        (t.exports = function(t) {\n            return r[t] || (r[t] = u && o[t] || (u ? o : i)(\"Symbol.\" + t))\n        }).store = r\n    }, function(t, e) {\n        var n = t.exports = {\n            version: \"2.5.5\"\n        };\n        \"number\" == typeof __e && (__e = n)\n    }, function(t, e, n) {\n        var r = n(5),\n            i = n(19),\n            o = n(17),\n            u = n(30),\n            a = n(60),\n            s = function(t, e, n) {\n                var c, f, l, p, h = t & s.F,\n                    d = t & s.G,\n                    v = t & s.S,\n                    y = t & s.P,\n                    g = t & s.B,\n                    m = d ? r : v ? r[e] || (r[e] = {}) : (r[e] || {}).prototype,\n                    _ = d ? i : i[e] || (i[e] = {}),\n                    b = _.prototype || (_.prototype = {});\n                for (c in d && (n = e), n) l = ((f = !h && m && void 0 !== m[c]) ? m : n)[c], p = g && f ? a(l, r) : y && \"function\" == typeof l ? a(Function.call, l) : l, m && u(m, c, l, t & s.U), _[c] != l && o(_, c, p), y && b[c] != l && (b[c] = l)\n            };\n        r.core = i, s.F = 1, s.G = 2, s.S = 4, s.P = 8, s.B = 16, s.W = 32, s.U = 64, s.R = 128, t.exports = s\n    }, function(t, e, n) {\n        var r = n(3),\n            i = n(43),\n            o = n(10),\n            u = /\"/g,\n            a = function(t, e, n, r) {\n                var i = String(o(t)),\n                    a = \"<\" + e;\n                return \"\" !== n && (a += \" \" + n + '=\"' + String(r).replace(u, \"&quot;\") + '\"'), a + \">\" + i + \"</\" + e + \">\"\n            };\n        t.exports = function(t, e) {\n            var n = {};\n            n[t] = e(a), r(r.P + r.F * i(function() {\n                var e = \"\" [t]('\"');\n                return e !== e.toLowerCase() || e.split('\"').length > 3\n            }), \"String\", n)\n        }\n    }, function(t, e) {\n        var n = t.exports = \"undefined\" != typeof window && window.Math == Math ? window : \"undefined\" != typeof self && self.Math == Math ? self : Function(\"return this\")();\n        \"number\" == typeof __g && (__g = n)\n    }, function(t, e, n) {\n        var r = n(93)(\"wks\"),\n            i = n(55),\n            o = n(9).Symbol,\n            u = \"function\" == typeof o;\n        (t.exports = function(t) {\n            return r[t] || (r[t] = u && o[t] || (u ? o : i)(\"Symbol.\" + t))\n        }).store = r\n    }, function(t, e, n) {\n        var r = n(169),\n            i = \"object\" == typeof self && self && self.Object === Object && self,\n            o = r || i || Function(\"return this\")();\n        t.exports = o\n    }, function(t, e) {\n        var n = Array.isArray;\n        t.exports = n\n    }, function(t, e) {\n        var n = t.exports = \"undefined\" != typeof window && window.Math == Math ? window : \"undefined\" != typeof self && self.Math == Math ? self : Function(\"return this\")();\n        \"number\" == typeof __g && (__g = n)\n    }, function(t, e) {\n        t.exports = function(t) {\n            if (void 0 == t) throw TypeError(\"Can't call method on  \" + t);\n            return t\n        }\n    }, function(t, e) {\n        var n;\n        n = function() {\n            return this\n        }();\n        try {\n            n = n || Function(\"return this\")() || (0, eval)(\"this\")\n        } catch (t) {\n            \"object\" == typeof window && (n = window)\n        }\n        t.exports = n\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            if (\"function\" != typeof t) throw new TypeError(t + \" is not a function\");\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(9),\n            i = n(2),\n            o = n(126),\n            u = n(26),\n            a = n(16),\n            s = function(t, e, n) {\n                var c, f, l, p = t & s.F,\n                    h = t & s.G,\n                    d = t & s.S,\n                    v = t & s.P,\n                    y = t & s.B,\n                    g = t & s.W,\n                    m = h ? i : i[e] || (i[e] = {}),\n                    _ = m.prototype,\n                    b = h ? r : d ? r[e] : (r[e] || {}).prototype;\n                for (c in h && (n = e), n)(f = !p && b && void 0 !== b[c]) && a(m, c) || (l = f ? b[c] : n[c], m[c] = h && \"function\" != typeof b[c] ? n[c] : y && f ? o(l, r) : g && b[c] == l ? function(t) {\n                    var e = function(e, n, r) {\n                        if (this instanceof t) {\n                            switch (arguments.length) {\n                                case 0:\n                                    return new t;\n                                case 1:\n                                    return new t(e);\n                                case 2:\n                                    return new t(e, n)\n                            }\n                            return new t(e, n, r)\n                        }\n                        return t.apply(this, arguments)\n                    };\n                    return e.prototype = t.prototype, e\n                }(l) : v && \"function\" == typeof l ? o(Function.call, l) : l, v && ((m.virtual || (m.virtual = {}))[c] = l, t & s.R && _ && !_[c] && u(_, c, l)))\n            };\n        s.F = 1, s.G = 2, s.S = 4, s.P = 8, s.B = 16, s.W = 32, s.U = 64, s.R = 128, t.exports = s\n    }, function(t, e, n) {\n        var r = n(27),\n            i = n(127),\n            o = n(89),\n            u = Object.defineProperty;\n        e.f = n(15) ? Object.defineProperty : function(t, e, n) {\n            if (r(t), e = o(e, !0), r(n), i) try {\n                return u(t, e, n)\n            } catch (t) {}\n            if (\"get\" in n || \"set\" in n) throw TypeError(\"Accessors not supported!\");\n            return \"value\" in n && (t[e] = n.value), t\n        }\n    }, function(t, e, n) {\n        t.exports = !n(29)(function() {\n            return 7 != Object.defineProperty({}, \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(t, e) {\n        var n = {}.hasOwnProperty;\n        t.exports = function(t, e) {\n            return n.call(t, e)\n        }\n    }, function(t, e, n) {\n        var r = n(57),\n            i = n(134);\n        t.exports = n(42) ? function(t, e, n) {\n            return r.f(t, e, i(1, n))\n        } : function(t, e, n) {\n            return t[e] = n, t\n        }\n    }, function(t, e, n) {\n        var r = n(31);\n        t.exports = function(t) {\n            if (!r(t)) throw TypeError(t + \" is not an object!\");\n            return t\n        }\n    }, function(t, e) {\n        var n = t.exports = {\n            version: \"2.5.5\"\n        };\n        \"number\" == typeof __e && (__e = n)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = function(t) {};\n        t.exports = function(t, e, n, i, o, u, a, s) {\n            if (r(e), !t) {\n                var c;\n                if (void 0 === e) c = new Error(\"Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.\");\n                else {\n                    var f = [n, i, o, u, a, s],\n                        l = 0;\n                    (c = new Error(e.replace(/%s/g, function() {\n                        return f[l++]\n                    }))).name = \"Invariant Violation\"\n                }\n                throw c.framesToPop = 1, c\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(79),\n            i = Object.keys || function(t) {\n                var e = [];\n                for (var n in t) e.push(n);\n                return e\n            };\n        t.exports = l;\n        var o = n(51);\n        o.inherits = n(35);\n        var u = n(187),\n            a = n(117);\n        o.inherits(l, u);\n        for (var s = i(a.prototype), c = 0; c < s.length; c++) {\n            var f = s[c];\n            l.prototype[f] || (l.prototype[f] = a.prototype[f])\n        }\n\n        function l(t) {\n            if (!(this instanceof l)) return new l(t);\n            u.call(this, t), a.call(this, t), t && !1 === t.readable && (this.readable = !1), t && !1 === t.writable && (this.writable = !1), this.allowHalfOpen = !0, t && !1 === t.allowHalfOpen && (this.allowHalfOpen = !1), this.once(\"end\", p)\n        }\n\n        function p() {\n            this.allowHalfOpen || this._writableState.ended || r.nextTick(h, this)\n        }\n\n        function h(t) {\n            t.end()\n        }\n        Object.defineProperty(l.prototype, \"writableHighWaterMark\", {\n            enumerable: !1,\n            get: function() {\n                return this._writableState.highWaterMark\n            }\n        }), Object.defineProperty(l.prototype, \"destroyed\", {\n            get: function() {\n                return void 0 !== this._readableState && void 0 !== this._writableState && (this._readableState.destroyed && this._writableState.destroyed)\n            },\n            set: function(t) {\n                void 0 !== this._readableState && void 0 !== this._writableState && (this._readableState.destroyed = t, this._writableState.destroyed = t)\n            }\n        }), l.prototype._destroy = function(t, e) {\n            this.push(null), this.end(), r.nextTick(e, t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(194)();\n        t.exports = function(t) {\n            return t !== r && null !== t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(464),\n            i = Math.max;\n        t.exports = function(t) {\n            return i(0, r(t))\n        }\n    }, function(t, e, n) {\n        \"use strict\"\n    }, function(t, e, n) {\n        var r = n(124),\n            i = n(87);\n        t.exports = function(t) {\n            return r(i(t))\n        }\n    }, function(t, e, n) {\n        var r = n(14),\n            i = n(54);\n        t.exports = n(15) ? function(t, e, n) {\n            return r.f(t, e, i(1, n))\n        } : function(t, e, n) {\n            return t[e] = n, t\n        }\n    }, function(t, e, n) {\n        var r = n(28);\n        t.exports = function(t) {\n            if (!r(t)) throw TypeError(t + \" is not an object!\");\n            return t\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return \"object\" == typeof t ? null !== t : \"function\" == typeof t\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            try {\n                return !!t()\n            } catch (t) {\n                return !0\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(5),\n            i = n(17),\n            o = n(58),\n            u = n(98)(\"src\"),\n            a = Function.toString,\n            s = (\"\" + a).split(\"toString\");\n        n(19).inspectSource = function(t) {\n            return a.call(t)\n        }, (t.exports = function(t, e, n, a) {\n            var c = \"function\" == typeof n;\n            c && (o(n, \"name\") || i(n, \"name\", e)), t[e] !== n && (c && (o(n, u) || i(n, u, t[e] ? \"\" + t[e] : s.join(String(e)))), t === r ? t[e] = n : a ? t[e] ? t[e] = n : i(t, e, n) : (delete t[e], i(t, e, n)))\n        })(Function.prototype, \"toString\", function() {\n            return \"function\" == typeof this && this[u] || a.call(this)\n        })\n    }, function(t, e) {\n        t.exports = function(t) {\n            return \"object\" == typeof t ? null !== t : \"function\" == typeof t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(46),\n            i = n(162),\n            o = (n(66), n(160), Object.prototype.hasOwnProperty),\n            u = n(163),\n            a = {\n                key: !0,\n                ref: !0,\n                __self: !0,\n                __source: !0\n            };\n\n        function s(t) {\n            return void 0 !== t.ref\n        }\n\n        function c(t) {\n            return void 0 !== t.key\n        }\n        var f = function(t, e, n, r, i, o, a) {\n            var s = {\n                $$typeof: u,\n                type: t,\n                key: e,\n                ref: n,\n                props: a,\n                _owner: o\n            };\n            return s\n        };\n        f.createElement = function(t, e, n) {\n            var r, u = {},\n                l = null,\n                p = null;\n            if (null != e)\n                for (r in s(e) && (p = e.ref), c(e) && (l = \"\" + e.key), void 0 === e.__self ? null : e.__self, void 0 === e.__source ? null : e.__source, e) o.call(e, r) && !a.hasOwnProperty(r) && (u[r] = e[r]);\n            var h = arguments.length - 2;\n            if (1 === h) u.children = n;\n            else if (h > 1) {\n                for (var d = Array(h), v = 0; v < h; v++) d[v] = arguments[v + 2];\n                0, u.children = d\n            }\n            if (t && t.defaultProps) {\n                var y = t.defaultProps;\n                for (r in y) void 0 === u[r] && (u[r] = y[r])\n            }\n            return f(t, l, p, 0, 0, i.current, u)\n        }, f.createFactory = function(t) {\n            var e = f.createElement.bind(null, t);\n            return e.type = t, e\n        }, f.cloneAndReplaceKey = function(t, e) {\n            return f(t.type, e, t.ref, t._self, t._source, t._owner, t.props)\n        }, f.cloneElement = function(t, e, n) {\n            var u, l, p = r({}, t.props),\n                h = t.key,\n                d = t.ref,\n                v = (t._self, t._source, t._owner);\n            if (null != e)\n                for (u in s(e) && (d = e.ref, v = i.current), c(e) && (h = \"\" + e.key), t.type && t.type.defaultProps && (l = t.type.defaultProps), e) o.call(e, u) && !a.hasOwnProperty(u) && (void 0 === e[u] && void 0 !== l ? p[u] = l[u] : p[u] = e[u]);\n            var y = arguments.length - 2;\n            if (1 === y) p.children = n;\n            else if (y > 1) {\n                for (var g = Array(y), m = 0; m < y; m++) g[m] = arguments[m + 2];\n                p.children = g\n            }\n            return f(t.type, h, d, 0, 0, v, p)\n        }, f.isValidElement = function(t) {\n            return \"object\" == typeof t && null !== t && t.$$typeof === u\n        }, t.exports = f\n    }, function(t, e, n) {\n        var r = n(365),\n            i = n(368);\n        t.exports = function(t, e) {\n            var n = i(t, e);\n            return r(n) ? n : void 0\n        }\n    }, function(t, e) {\n        var n, r, i = t.exports = {};\n\n        function o() {\n            throw new Error(\"setTimeout has not been defined\")\n        }\n\n        function u() {\n            throw new Error(\"clearTimeout has not been defined\")\n        }\n\n        function a(t) {\n            if (n === setTimeout) return setTimeout(t, 0);\n            if ((n === o || !n) && setTimeout) return n = setTimeout, setTimeout(t, 0);\n            try {\n                return n(t, 0)\n            } catch (e) {\n                try {\n                    return n.call(null, t, 0)\n                } catch (e) {\n                    return n.call(this, t, 0)\n                }\n            }\n        }! function() {\n            try {\n                n = \"function\" == typeof setTimeout ? setTimeout : o\n            } catch (t) {\n                n = o\n            }\n            try {\n                r = \"function\" == typeof clearTimeout ? clearTimeout : u\n            } catch (t) {\n                r = u\n            }\n        }();\n        var s, c = [],\n            f = !1,\n            l = -1;\n\n        function p() {\n            f && s && (f = !1, s.length ? c = s.concat(c) : l = -1, c.length && h())\n        }\n\n        function h() {\n            if (!f) {\n                var t = a(p);\n                f = !0;\n                for (var e = c.length; e;) {\n                    for (s = c, c = []; ++l < e;) s && s[l].run();\n                    l = -1, e = c.length\n                }\n                s = null, f = !1,\n                    function(t) {\n                        if (r === clearTimeout) return clearTimeout(t);\n                        if ((r === u || !r) && clearTimeout) return r = clearTimeout, clearTimeout(t);\n                        try {\n                            r(t)\n                        } catch (e) {\n                            try {\n                                return r.call(null, t)\n                            } catch (e) {\n                                return r.call(this, t)\n                            }\n                        }\n                    }(t)\n            }\n        }\n\n        function d(t, e) {\n            this.fun = t, this.array = e\n        }\n\n        function v() {}\n        i.nextTick = function(t) {\n            var e = new Array(arguments.length - 1);\n            if (arguments.length > 1)\n                for (var n = 1; n < arguments.length; n++) e[n - 1] = arguments[n];\n            c.push(new d(t, e)), 1 !== c.length || f || a(h)\n        }, d.prototype.run = function() {\n            this.fun.apply(null, this.array)\n        }, i.title = \"browser\", i.browser = !0, i.env = {}, i.argv = [], i.version = \"\", i.versions = {}, i.on = v, i.addListener = v, i.once = v, i.off = v, i.removeListener = v, i.removeAllListeners = v, i.emit = v, i.prependListener = v, i.prependOnceListener = v, i.listeners = function(t) {\n            return []\n        }, i.binding = function(t) {\n            throw new Error(\"process.binding is not supported\")\n        }, i.cwd = function() {\n            return \"/\"\n        }, i.chdir = function(t) {\n            throw new Error(\"process.chdir is not supported\")\n        }, i.umask = function() {\n            return 0\n        }\n    }, function(t, e) {\n        \"function\" == typeof Object.create ? t.exports = function(t, e) {\n            t.super_ = e, t.prototype = Object.create(e.prototype, {\n                constructor: {\n                    value: t,\n                    enumerable: !1,\n                    writable: !0,\n                    configurable: !0\n                }\n            })\n        } : t.exports = function(t, e) {\n            t.super_ = e;\n            var n = function() {};\n            n.prototype = e.prototype, t.prototype = new n, t.prototype.constructor = t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(22);\n        t.exports = function(t) {\n            if (!r(t)) throw new TypeError(\"Cannot use null or undefined\");\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n\n        function r(t) {\n            return void 0 === t || null === t\n        }\n        t.exports.isNothing = r, t.exports.isObject = function(t) {\n            return \"object\" == typeof t && null !== t\n        }, t.exports.toArray = function(t) {\n            return Array.isArray(t) ? t : r(t) ? [] : [t]\n        }, t.exports.repeat = function(t, e) {\n            var n, r = \"\";\n            for (n = 0; n < e; n += 1) r += t;\n            return r\n        }, t.exports.isNegativeZero = function(t) {\n            return 0 === t && Number.NEGATIVE_INFINITY === 1 / t\n        }, t.exports.extend = function(t, e) {\n            var n, r, i, o;\n            if (e)\n                for (n = 0, r = (o = Object.keys(e)).length; n < r; n += 1) t[i = o[n]] = e[i];\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(37),\n            i = n(52),\n            o = n(0);\n\n        function u(t, e, n) {\n            var r = [];\n            return t.include.forEach(function(t) {\n                n = u(t, e, n)\n            }), t[e].forEach(function(t) {\n                n.forEach(function(e, n) {\n                    e.tag === t.tag && e.kind === t.kind && r.push(n)\n                }), n.push(t)\n            }), n.filter(function(t, e) {\n                return -1 === r.indexOf(e)\n            })\n        }\n\n        function a(t) {\n            this.include = t.include || [], this.implicit = t.implicit || [], this.explicit = t.explicit || [], this.implicit.forEach(function(t) {\n                if (t.loadKind && \"scalar\" !== t.loadKind) throw new i(\"There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.\")\n            }), this.compiledImplicit = u(this, \"implicit\", []), this.compiledExplicit = u(this, \"explicit\", []), this.compiledTypeMap = function() {\n                var t, e, n = {\n                    scalar: {},\n                    sequence: {},\n                    mapping: {},\n                    fallback: {}\n                };\n\n                function r(t) {\n                    n[t.kind][t.tag] = n.fallback[t.tag] = t\n                }\n                for (t = 0, e = arguments.length; t < e; t += 1) arguments[t].forEach(r);\n                return n\n            }(this.compiledImplicit, this.compiledExplicit)\n        }\n        a.DEFAULT = null, a.create = function() {\n            var t, e;\n            switch (arguments.length) {\n                case 1:\n                    t = a.DEFAULT, e = arguments[0];\n                    break;\n                case 2:\n                    t = arguments[0], e = arguments[1];\n                    break;\n                default:\n                    throw new i(\"Wrong number of arguments for Schema.create function\")\n            }\n            if (t = r.toArray(t), e = r.toArray(e), !t.every(function(t) {\n                return t instanceof a\n            })) throw new i(\"Specified list of super schemas (or a single Schema object) contains a non-Schema object.\");\n            if (!e.every(function(t) {\n                return t instanceof o\n            })) throw new i(\"Specified list of YAML types (or a single Type object) contains a non-Type object.\");\n            return new a({\n                include: t,\n                explicit: e\n            })\n        }, t.exports = a\n    }, function(t, e) {\n        t.exports = {}\n    }, function(t, e, n) {\n        var r = n(130),\n            i = n(94);\n        t.exports = Object.keys || function(t) {\n            return r(t, i)\n        }\n    }, function(t, e) {\n        var n = {}.toString;\n        t.exports = function(t) {\n            return n.call(t).slice(8, -1)\n        }\n    }, function(t, e, n) {\n        t.exports = !n(43)(function() {\n            return 7 != Object.defineProperty({}, \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(t, e) {\n        t.exports = function(t) {\n            try {\n                return !!t()\n            } catch (t) {\n                return !0\n            }\n        }\n    }, function(t, e) {\n        t.exports = {}\n    }, function(t, e, n) {\n        var r = n(59),\n            i = Math.min;\n        t.exports = function(t) {\n            return t > 0 ? i(r(t), 9007199254740991) : 0\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        /*\n        object-assign\n        (c) Sindre Sorhus\n        @license MIT\n        */\n        var r = Object.getOwnPropertySymbols,\n            i = Object.prototype.hasOwnProperty,\n            o = Object.prototype.propertyIsEnumerable;\n        t.exports = function() {\n            try {\n                if (!Object.assign) return !1;\n                var t = new String(\"abc\");\n                if (t[5] = \"de\", \"5\" === Object.getOwnPropertyNames(t)[0]) return !1;\n                for (var e = {}, n = 0; n < 10; n++) e[\"_\" + String.fromCharCode(n)] = n;\n                if (\"0123456789\" !== Object.getOwnPropertyNames(e).map(function(t) {\n                    return e[t]\n                }).join(\"\")) return !1;\n                var r = {};\n                return \"abcdefghijklmnopqrst\".split(\"\").forEach(function(t) {\n                    r[t] = t\n                }), \"abcdefghijklmnopqrst\" === Object.keys(Object.assign({}, r)).join(\"\")\n            } catch (t) {\n                return !1\n            }\n        }() ? Object.assign : function(t, e) {\n            for (var n, u, a = function(t) {\n                if (null === t || void 0 === t) throw new TypeError(\"Object.assign cannot be called with null or undefined\");\n                return Object(t)\n            }(t), s = 1; s < arguments.length; s++) {\n                for (var c in n = Object(arguments[s])) i.call(n, c) && (a[c] = n[c]);\n                if (r) {\n                    u = r(n);\n                    for (var f = 0; f < u.length; f++) o.call(n, u[f]) && (a[u[f]] = n[u[f]])\n                }\n            }\n            return a\n        }\n    }, function(t, e, n) {\n        var r = n(343);\n        t.exports = function(t) {\n            return null == t ? \"\" : r(t)\n        }\n    }, function(t, e, n) {\n        var r = n(69),\n            i = n(345),\n            o = n(346),\n            u = \"[object Null]\",\n            a = \"[object Undefined]\",\n            s = r ? r.toStringTag : void 0;\n        t.exports = function(t) {\n            return null == t ? void 0 === t ? a : u : s && s in Object(t) ? i(t) : o(t)\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return null != t && \"object\" == typeof t\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            var e = typeof t;\n            return null != t && (\"object\" == e || \"function\" == e)\n        }\n    }, function(t, e, n) {\n        (function(t) {\n            function n(t) {\n                return Object.prototype.toString.call(t)\n            }\n            e.isArray = function(t) {\n                return Array.isArray ? Array.isArray(t) : \"[object Array]\" === n(t)\n            }, e.isBoolean = function(t) {\n                return \"boolean\" == typeof t\n            }, e.isNull = function(t) {\n                return null === t\n            }, e.isNullOrUndefined = function(t) {\n                return null == t\n            }, e.isNumber = function(t) {\n                return \"number\" == typeof t\n            }, e.isString = function(t) {\n                return \"string\" == typeof t\n            }, e.isSymbol = function(t) {\n                return \"symbol\" == typeof t\n            }, e.isUndefined = function(t) {\n                return void 0 === t\n            }, e.isRegExp = function(t) {\n                return \"[object RegExp]\" === n(t)\n            }, e.isObject = function(t) {\n                return \"object\" == typeof t && null !== t\n            }, e.isDate = function(t) {\n                return \"[object Date]\" === n(t)\n            }, e.isError = function(t) {\n                return \"[object Error]\" === n(t) || t instanceof Error\n            }, e.isFunction = function(t) {\n                return \"function\" == typeof t\n            }, e.isPrimitive = function(t) {\n                return null === t || \"boolean\" == typeof t || \"number\" == typeof t || \"string\" == typeof t || \"symbol\" == typeof t || void 0 === t\n            }, e.isBuffer = t.isBuffer\n        }).call(e, n(68).Buffer)\n    }, function(t, e, n) {\n        \"use strict\";\n\n        function r(t, e) {\n            Error.call(this), this.name = \"YAMLException\", this.reason = t, this.mark = e, this.message = (this.reason || \"(unknown reason)\") + (this.mark ? \" \" + this.mark.toString() : \"\"), Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = (new Error).stack || \"\"\n        }\n        r.prototype = Object.create(Error.prototype), r.prototype.constructor = r, r.prototype.toString = function(t) {\n            var e = this.name + \": \";\n            return e += this.reason || \"(unknown reason)\", !t && this.mark && (e += \" \" + this.mark.toString()), e\n        }, t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(38);\n        t.exports = new r({\n            include: [n(202)],\n            implicit: [n(531), n(532)],\n            explicit: [n(533), n(534), n(535), n(536)]\n        })\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return {\n                enumerable: !(1 & t),\n                configurable: !(2 & t),\n                writable: !(4 & t),\n                value: e\n            }\n        }\n    }, function(t, e) {\n        var n = 0,\n            r = Math.random();\n        t.exports = function(t) {\n            return \"Symbol(\".concat(void 0 === t ? \"\" : t, \")_\", (++n + r).toString(36))\n        }\n    }, function(t, e, n) {\n        var r = n(87);\n        t.exports = function(t) {\n            return Object(r(t))\n        }\n    }, function(t, e, n) {\n        var r = n(18),\n            i = n(224),\n            o = n(225),\n            u = Object.defineProperty;\n        e.f = n(42) ? Object.defineProperty : function(t, e, n) {\n            if (r(t), e = o(e, !0), r(n), i) try {\n                return u(t, e, n)\n            } catch (t) {}\n            if (\"get\" in n || \"set\" in n) throw TypeError(\"Accessors not supported!\");\n            return \"value\" in n && (t[e] = n.value), t\n        }\n    }, function(t, e) {\n        var n = {}.hasOwnProperty;\n        t.exports = function(t, e) {\n            return n.call(t, e)\n        }\n    }, function(t, e) {\n        var n = Math.ceil,\n            r = Math.floor;\n        t.exports = function(t) {\n            return isNaN(t = +t) ? 0 : (t > 0 ? r : n)(t)\n        }\n    }, function(t, e, n) {\n        var r = n(61);\n        t.exports = function(t, e, n) {\n            if (r(t), void 0 === e) return t;\n            switch (n) {\n                case 1:\n                    return function(n) {\n                        return t.call(e, n)\n                    };\n                case 2:\n                    return function(n, r) {\n                        return t.call(e, n, r)\n                    };\n                case 3:\n                    return function(n, r, i) {\n                        return t.call(e, n, r, i)\n                    }\n            }\n            return function() {\n                return t.apply(e, arguments)\n            }\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            if (\"function\" != typeof t) throw TypeError(t + \" is not a function!\");\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(230),\n            i = n(10);\n        t.exports = function(t) {\n            return r(i(t))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(17),\n            i = n(30),\n            o = n(43),\n            u = n(10),\n            a = n(1);\n        t.exports = function(t, e, n) {\n            var s = a(t),\n                c = n(u, s, \"\" [t]),\n                f = c[0],\n                l = c[1];\n            o(function() {\n                var e = {};\n                return e[s] = function() {\n                    return 7\n                }, 7 != \"\" [t](e)\n            }) && (i(String.prototype, t, f), r(RegExp.prototype, s, 2 == e ? function(t, e) {\n                return l.call(t, this, e)\n            } : function(t) {\n                return l.call(t, this)\n            }))\n        }\n    }, function(t, e) {\n        e.f = {}.propertyIsEnumerable\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            for (var e = arguments.length - 1, n = \"Minified React error #\" + t + \"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=\" + t, r = 0; r < e; r++) n += \"&args[]=\" + encodeURIComponent(arguments[r + 1]);\n            n += \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\";\n            var i = new Error(n);\n            throw i.name = \"Invariant Violation\", i.framesToPop = 1, i\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(67);\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n\n        function r(t) {\n            return function() {\n                return t\n            }\n        }\n        var i = function() {};\n        i.thatReturns = r, i.thatReturnsFalse = r(!1), i.thatReturnsTrue = r(!0), i.thatReturnsNull = r(null), i.thatReturnsThis = function() {\n            return this\n        }, i.thatReturnsArgument = function(t) {\n            return t\n        }, t.exports = i\n    }, function(t, e, n) {\n        \"use strict\";\n        (function(t) {\n            /*!\n             * The buffer module from node.js, for the browser.\n             *\n             * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n             * @license  MIT\n             */\n            var r = n(325),\n                i = n(326),\n                o = n(167);\n\n            function u() {\n                return s.TYPED_ARRAY_SUPPORT ? 2147483647 : 1073741823\n            }\n\n            function a(t, e) {\n                if (u() < e) throw new RangeError(\"Invalid typed array length\");\n                return s.TYPED_ARRAY_SUPPORT ? (t = new Uint8Array(e)).__proto__ = s.prototype : (null === t && (t = new s(e)), t.length = e), t\n            }\n\n            function s(t, e, n) {\n                if (!(s.TYPED_ARRAY_SUPPORT || this instanceof s)) return new s(t, e, n);\n                if (\"number\" == typeof t) {\n                    if (\"string\" == typeof e) throw new Error(\"If encoding is specified then the first argument must be a string\");\n                    return l(this, t)\n                }\n                return c(this, t, e, n)\n            }\n\n            function c(t, e, n, r) {\n                if (\"number\" == typeof e) throw new TypeError('\"value\" argument must not be a number');\n                return \"undefined\" != typeof ArrayBuffer && e instanceof ArrayBuffer ? function(t, e, n, r) {\n                    if (e.byteLength, n < 0 || e.byteLength < n) throw new RangeError(\"'offset' is out of bounds\");\n                    if (e.byteLength < n + (r || 0)) throw new RangeError(\"'length' is out of bounds\");\n                    e = void 0 === n && void 0 === r ? new Uint8Array(e) : void 0 === r ? new Uint8Array(e, n) : new Uint8Array(e, n, r);\n                    s.TYPED_ARRAY_SUPPORT ? (t = e).__proto__ = s.prototype : t = p(t, e);\n                    return t\n                }(t, e, n, r) : \"string\" == typeof e ? function(t, e, n) {\n                    \"string\" == typeof n && \"\" !== n || (n = \"utf8\");\n                    if (!s.isEncoding(n)) throw new TypeError('\"encoding\" must be a valid string encoding');\n                    var r = 0 | d(e, n),\n                        i = (t = a(t, r)).write(e, n);\n                    i !== r && (t = t.slice(0, i));\n                    return t\n                }(t, e, n) : function(t, e) {\n                    if (s.isBuffer(e)) {\n                        var n = 0 | h(e.length);\n                        return 0 === (t = a(t, n)).length ? t : (e.copy(t, 0, 0, n), t)\n                    }\n                    if (e) {\n                        if (\"undefined\" != typeof ArrayBuffer && e.buffer instanceof ArrayBuffer || \"length\" in e) return \"number\" != typeof e.length || (r = e.length) != r ? a(t, 0) : p(t, e);\n                        if (\"Buffer\" === e.type && o(e.data)) return p(t, e.data)\n                    }\n                    var r;\n                    throw new TypeError(\"First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\")\n                }(t, e)\n            }\n\n            function f(t) {\n                if (\"number\" != typeof t) throw new TypeError('\"size\" argument must be a number');\n                if (t < 0) throw new RangeError('\"size\" argument must not be negative')\n            }\n\n            function l(t, e) {\n                if (f(e), t = a(t, e < 0 ? 0 : 0 | h(e)), !s.TYPED_ARRAY_SUPPORT)\n                    for (var n = 0; n < e; ++n) t[n] = 0;\n                return t\n            }\n\n            function p(t, e) {\n                var n = e.length < 0 ? 0 : 0 | h(e.length);\n                t = a(t, n);\n                for (var r = 0; r < n; r += 1) t[r] = 255 & e[r];\n                return t\n            }\n\n            function h(t) {\n                if (t >= u()) throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\" + u().toString(16) + \" bytes\");\n                return 0 | t\n            }\n\n            function d(t, e) {\n                if (s.isBuffer(t)) return t.length;\n                if (\"undefined\" != typeof ArrayBuffer && \"function\" == typeof ArrayBuffer.isView && (ArrayBuffer.isView(t) || t instanceof ArrayBuffer)) return t.byteLength;\n                \"string\" != typeof t && (t = \"\" + t);\n                var n = t.length;\n                if (0 === n) return 0;\n                for (var r = !1;;) switch (e) {\n                    case \"ascii\":\n                    case \"latin1\":\n                    case \"binary\":\n                        return n;\n                    case \"utf8\":\n                    case \"utf-8\":\n                    case void 0:\n                        return U(t).length;\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                        return 2 * n;\n                    case \"hex\":\n                        return n >>> 1;\n                    case \"base64\":\n                        return B(t).length;\n                    default:\n                        if (r) return U(t).length;\n                        e = (\"\" + e).toLowerCase(), r = !0\n                }\n            }\n\n            function v(t, e, n) {\n                var r = t[e];\n                t[e] = t[n], t[n] = r\n            }\n\n            function y(t, e, n, r, i) {\n                if (0 === t.length) return -1;\n                if (\"string\" == typeof n ? (r = n, n = 0) : n > 2147483647 ? n = 2147483647 : n < -2147483648 && (n = -2147483648), n = +n, isNaN(n) && (n = i ? 0 : t.length - 1), n < 0 && (n = t.length + n), n >= t.length) {\n                    if (i) return -1;\n                    n = t.length - 1\n                } else if (n < 0) {\n                    if (!i) return -1;\n                    n = 0\n                }\n                if (\"string\" == typeof e && (e = s.from(e, r)), s.isBuffer(e)) return 0 === e.length ? -1 : g(t, e, n, r, i);\n                if (\"number\" == typeof e) return e &= 255, s.TYPED_ARRAY_SUPPORT && \"function\" == typeof Uint8Array.prototype.indexOf ? i ? Uint8Array.prototype.indexOf.call(t, e, n) : Uint8Array.prototype.lastIndexOf.call(t, e, n) : g(t, [e], n, r, i);\n                throw new TypeError(\"val must be string, number or Buffer\")\n            }\n\n            function g(t, e, n, r, i) {\n                var o, u = 1,\n                    a = t.length,\n                    s = e.length;\n                if (void 0 !== r && (\"ucs2\" === (r = String(r).toLowerCase()) || \"ucs-2\" === r || \"utf16le\" === r || \"utf-16le\" === r)) {\n                    if (t.length < 2 || e.length < 2) return -1;\n                    u = 2, a /= 2, s /= 2, n /= 2\n                }\n\n                function c(t, e) {\n                    return 1 === u ? t[e] : t.readUInt16BE(e * u)\n                }\n                if (i) {\n                    var f = -1;\n                    for (o = n; o < a; o++)\n                        if (c(t, o) === c(e, -1 === f ? 0 : o - f)) {\n                            if (-1 === f && (f = o), o - f + 1 === s) return f * u\n                        } else -1 !== f && (o -= o - f), f = -1\n                } else\n                    for (n + s > a && (n = a - s), o = n; o >= 0; o--) {\n                        for (var l = !0, p = 0; p < s; p++)\n                            if (c(t, o + p) !== c(e, p)) {\n                                l = !1;\n                                break\n                            }\n                        if (l) return o\n                    }\n                return -1\n            }\n\n            function m(t, e, n, r) {\n                n = Number(n) || 0;\n                var i = t.length - n;\n                r ? (r = Number(r)) > i && (r = i) : r = i;\n                var o = e.length;\n                if (o % 2 != 0) throw new TypeError(\"Invalid hex string\");\n                r > o / 2 && (r = o / 2);\n                for (var u = 0; u < r; ++u) {\n                    var a = parseInt(e.substr(2 * u, 2), 16);\n                    if (isNaN(a)) return u;\n                    t[n + u] = a\n                }\n                return u\n            }\n\n            function _(t, e, n, r) {\n                return q(U(e, t.length - n), t, n, r)\n            }\n\n            function b(t, e, n, r) {\n                return q(function(t) {\n                    for (var e = [], n = 0; n < t.length; ++n) e.push(255 & t.charCodeAt(n));\n                    return e\n                }(e), t, n, r)\n            }\n\n            function w(t, e, n, r) {\n                return b(t, e, n, r)\n            }\n\n            function x(t, e, n, r) {\n                return q(B(e), t, n, r)\n            }\n\n            function S(t, e, n, r) {\n                return q(function(t, e) {\n                    for (var n, r, i, o = [], u = 0; u < t.length && !((e -= 2) < 0); ++u) n = t.charCodeAt(u), r = n >> 8, i = n % 256, o.push(i), o.push(r);\n                    return o\n                }(e, t.length - n), t, n, r)\n            }\n\n            function E(t, e, n) {\n                return 0 === e && n === t.length ? r.fromByteArray(t) : r.fromByteArray(t.slice(e, n))\n            }\n\n            function A(t, e, n) {\n                n = Math.min(t.length, n);\n                for (var r = [], i = e; i < n;) {\n                    var o, u, a, s, c = t[i],\n                        f = null,\n                        l = c > 239 ? 4 : c > 223 ? 3 : c > 191 ? 2 : 1;\n                    if (i + l <= n) switch (l) {\n                        case 1:\n                            c < 128 && (f = c);\n                            break;\n                        case 2:\n                            128 == (192 & (o = t[i + 1])) && (s = (31 & c) << 6 | 63 & o) > 127 && (f = s);\n                            break;\n                        case 3:\n                            o = t[i + 1], u = t[i + 2], 128 == (192 & o) && 128 == (192 & u) && (s = (15 & c) << 12 | (63 & o) << 6 | 63 & u) > 2047 && (s < 55296 || s > 57343) && (f = s);\n                            break;\n                        case 4:\n                            o = t[i + 1], u = t[i + 2], a = t[i + 3], 128 == (192 & o) && 128 == (192 & u) && 128 == (192 & a) && (s = (15 & c) << 18 | (63 & o) << 12 | (63 & u) << 6 | 63 & a) > 65535 && s < 1114112 && (f = s)\n                    }\n                    null === f ? (f = 65533, l = 1) : f > 65535 && (f -= 65536, r.push(f >>> 10 & 1023 | 55296), f = 56320 | 1023 & f), r.push(f), i += l\n                }\n                return function(t) {\n                    var e = t.length;\n                    if (e <= O) return String.fromCharCode.apply(String, t);\n                    var n = \"\",\n                        r = 0;\n                    for (; r < e;) n += String.fromCharCode.apply(String, t.slice(r, r += O));\n                    return n\n                }(r)\n            }\n            e.Buffer = s, e.SlowBuffer = function(t) {\n                +t != t && (t = 0);\n                return s.alloc(+t)\n            }, e.INSPECT_MAX_BYTES = 50, s.TYPED_ARRAY_SUPPORT = void 0 !== t.TYPED_ARRAY_SUPPORT ? t.TYPED_ARRAY_SUPPORT : function() {\n                try {\n                    var t = new Uint8Array(1);\n                    return t.__proto__ = {\n                        __proto__: Uint8Array.prototype,\n                        foo: function() {\n                            return 42\n                        }\n                    }, 42 === t.foo() && \"function\" == typeof t.subarray && 0 === t.subarray(1, 1).byteLength\n                } catch (t) {\n                    return !1\n                }\n            }(), e.kMaxLength = u(), s.poolSize = 8192, s._augment = function(t) {\n                return t.__proto__ = s.prototype, t\n            }, s.from = function(t, e, n) {\n                return c(null, t, e, n)\n            }, s.TYPED_ARRAY_SUPPORT && (s.prototype.__proto__ = Uint8Array.prototype, s.__proto__ = Uint8Array, \"undefined\" != typeof Symbol && Symbol.species && s[Symbol.species] === s && Object.defineProperty(s, Symbol.species, {\n                value: null,\n                configurable: !0\n            })), s.alloc = function(t, e, n) {\n                return function(t, e, n, r) {\n                    return f(e), e <= 0 ? a(t, e) : void 0 !== n ? \"string\" == typeof r ? a(t, e).fill(n, r) : a(t, e).fill(n) : a(t, e)\n                }(null, t, e, n)\n            }, s.allocUnsafe = function(t) {\n                return l(null, t)\n            }, s.allocUnsafeSlow = function(t) {\n                return l(null, t)\n            }, s.isBuffer = function(t) {\n                return !(null == t || !t._isBuffer)\n            }, s.compare = function(t, e) {\n                if (!s.isBuffer(t) || !s.isBuffer(e)) throw new TypeError(\"Arguments must be Buffers\");\n                if (t === e) return 0;\n                for (var n = t.length, r = e.length, i = 0, o = Math.min(n, r); i < o; ++i)\n                    if (t[i] !== e[i]) {\n                        n = t[i], r = e[i];\n                        break\n                    }\n                return n < r ? -1 : r < n ? 1 : 0\n            }, s.isEncoding = function(t) {\n                switch (String(t).toLowerCase()) {\n                    case \"hex\":\n                    case \"utf8\":\n                    case \"utf-8\":\n                    case \"ascii\":\n                    case \"latin1\":\n                    case \"binary\":\n                    case \"base64\":\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                        return !0;\n                    default:\n                        return !1\n                }\n            }, s.concat = function(t, e) {\n                if (!o(t)) throw new TypeError('\"list\" argument must be an Array of Buffers');\n                if (0 === t.length) return s.alloc(0);\n                var n;\n                if (void 0 === e)\n                    for (e = 0, n = 0; n < t.length; ++n) e += t[n].length;\n                var r = s.allocUnsafe(e),\n                    i = 0;\n                for (n = 0; n < t.length; ++n) {\n                    var u = t[n];\n                    if (!s.isBuffer(u)) throw new TypeError('\"list\" argument must be an Array of Buffers');\n                    u.copy(r, i), i += u.length\n                }\n                return r\n            }, s.byteLength = d, s.prototype._isBuffer = !0, s.prototype.swap16 = function() {\n                var t = this.length;\n                if (t % 2 != 0) throw new RangeError(\"Buffer size must be a multiple of 16-bits\");\n                for (var e = 0; e < t; e += 2) v(this, e, e + 1);\n                return this\n            }, s.prototype.swap32 = function() {\n                var t = this.length;\n                if (t % 4 != 0) throw new RangeError(\"Buffer size must be a multiple of 32-bits\");\n                for (var e = 0; e < t; e += 4) v(this, e, e + 3), v(this, e + 1, e + 2);\n                return this\n            }, s.prototype.swap64 = function() {\n                var t = this.length;\n                if (t % 8 != 0) throw new RangeError(\"Buffer size must be a multiple of 64-bits\");\n                for (var e = 0; e < t; e += 8) v(this, e, e + 7), v(this, e + 1, e + 6), v(this, e + 2, e + 5), v(this, e + 3, e + 4);\n                return this\n            }, s.prototype.toString = function() {\n                var t = 0 | this.length;\n                return 0 === t ? \"\" : 0 === arguments.length ? A(this, 0, t) : function(t, e, n) {\n                    var r = !1;\n                    if ((void 0 === e || e < 0) && (e = 0), e > this.length) return \"\";\n                    if ((void 0 === n || n > this.length) && (n = this.length), n <= 0) return \"\";\n                    if ((n >>>= 0) <= (e >>>= 0)) return \"\";\n                    for (t || (t = \"utf8\");;) switch (t) {\n                        case \"hex\":\n                            return I(this, e, n);\n                        case \"utf8\":\n                        case \"utf-8\":\n                            return A(this, e, n);\n                        case \"ascii\":\n                            return j(this, e, n);\n                        case \"latin1\":\n                        case \"binary\":\n                            return k(this, e, n);\n                        case \"base64\":\n                            return E(this, e, n);\n                        case \"ucs2\":\n                        case \"ucs-2\":\n                        case \"utf16le\":\n                        case \"utf-16le\":\n                            return M(this, e, n);\n                        default:\n                            if (r) throw new TypeError(\"Unknown encoding: \" + t);\n                            t = (t + \"\").toLowerCase(), r = !0\n                    }\n                }.apply(this, arguments)\n            }, s.prototype.equals = function(t) {\n                if (!s.isBuffer(t)) throw new TypeError(\"Argument must be a Buffer\");\n                return this === t || 0 === s.compare(this, t)\n            }, s.prototype.inspect = function() {\n                var t = \"\",\n                    n = e.INSPECT_MAX_BYTES;\n                return this.length > 0 && (t = this.toString(\"hex\", 0, n).match(/.{2}/g).join(\" \"), this.length > n && (t += \" ... \")), \"<Buffer \" + t + \">\"\n            }, s.prototype.compare = function(t, e, n, r, i) {\n                if (!s.isBuffer(t)) throw new TypeError(\"Argument must be a Buffer\");\n                if (void 0 === e && (e = 0), void 0 === n && (n = t ? t.length : 0), void 0 === r && (r = 0), void 0 === i && (i = this.length), e < 0 || n > t.length || r < 0 || i > this.length) throw new RangeError(\"out of range index\");\n                if (r >= i && e >= n) return 0;\n                if (r >= i) return -1;\n                if (e >= n) return 1;\n                if (e >>>= 0, n >>>= 0, r >>>= 0, i >>>= 0, this === t) return 0;\n                for (var o = i - r, u = n - e, a = Math.min(o, u), c = this.slice(r, i), f = t.slice(e, n), l = 0; l < a; ++l)\n                    if (c[l] !== f[l]) {\n                        o = c[l], u = f[l];\n                        break\n                    }\n                return o < u ? -1 : u < o ? 1 : 0\n            }, s.prototype.includes = function(t, e, n) {\n                return -1 !== this.indexOf(t, e, n)\n            }, s.prototype.indexOf = function(t, e, n) {\n                return y(this, t, e, n, !0)\n            }, s.prototype.lastIndexOf = function(t, e, n) {\n                return y(this, t, e, n, !1)\n            }, s.prototype.write = function(t, e, n, r) {\n                if (void 0 === e) r = \"utf8\", n = this.length, e = 0;\n                else if (void 0 === n && \"string\" == typeof e) r = e, n = this.length, e = 0;\n                else {\n                    if (!isFinite(e)) throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");\n                    e |= 0, isFinite(n) ? (n |= 0, void 0 === r && (r = \"utf8\")) : (r = n, n = void 0)\n                }\n                var i = this.length - e;\n                if ((void 0 === n || n > i) && (n = i), t.length > 0 && (n < 0 || e < 0) || e > this.length) throw new RangeError(\"Attempt to write outside buffer bounds\");\n                r || (r = \"utf8\");\n                for (var o = !1;;) switch (r) {\n                    case \"hex\":\n                        return m(this, t, e, n);\n                    case \"utf8\":\n                    case \"utf-8\":\n                        return _(this, t, e, n);\n                    case \"ascii\":\n                        return b(this, t, e, n);\n                    case \"latin1\":\n                    case \"binary\":\n                        return w(this, t, e, n);\n                    case \"base64\":\n                        return x(this, t, e, n);\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                        return S(this, t, e, n);\n                    default:\n                        if (o) throw new TypeError(\"Unknown encoding: \" + r);\n                        r = (\"\" + r).toLowerCase(), o = !0\n                }\n            }, s.prototype.toJSON = function() {\n                return {\n                    type: \"Buffer\",\n                    data: Array.prototype.slice.call(this._arr || this, 0)\n                }\n            };\n            var O = 4096;\n\n            function j(t, e, n) {\n                var r = \"\";\n                n = Math.min(t.length, n);\n                for (var i = e; i < n; ++i) r += String.fromCharCode(127 & t[i]);\n                return r\n            }\n\n            function k(t, e, n) {\n                var r = \"\";\n                n = Math.min(t.length, n);\n                for (var i = e; i < n; ++i) r += String.fromCharCode(t[i]);\n                return r\n            }\n\n            function I(t, e, n) {\n                var r = t.length;\n                (!e || e < 0) && (e = 0), (!n || n < 0 || n > r) && (n = r);\n                for (var i = \"\", o = e; o < n; ++o) i += F(t[o]);\n                return i\n            }\n\n            function M(t, e, n) {\n                for (var r = t.slice(e, n), i = \"\", o = 0; o < r.length; o += 2) i += String.fromCharCode(r[o] + 256 * r[o + 1]);\n                return i\n            }\n\n            function T(t, e, n) {\n                if (t % 1 != 0 || t < 0) throw new RangeError(\"offset is not uint\");\n                if (t + e > n) throw new RangeError(\"Trying to access beyond buffer length\")\n            }\n\n            function C(t, e, n, r, i, o) {\n                if (!s.isBuffer(t)) throw new TypeError('\"buffer\" argument must be a Buffer instance');\n                if (e > i || e < o) throw new RangeError('\"value\" argument is out of bounds');\n                if (n + r > t.length) throw new RangeError(\"Index out of range\")\n            }\n\n            function P(t, e, n, r) {\n                e < 0 && (e = 65535 + e + 1);\n                for (var i = 0, o = Math.min(t.length - n, 2); i < o; ++i) t[n + i] = (e & 255 << 8 * (r ? i : 1 - i)) >>> 8 * (r ? i : 1 - i)\n            }\n\n            function R(t, e, n, r) {\n                e < 0 && (e = 4294967295 + e + 1);\n                for (var i = 0, o = Math.min(t.length - n, 4); i < o; ++i) t[n + i] = e >>> 8 * (r ? i : 3 - i) & 255\n            }\n\n            function N(t, e, n, r, i, o) {\n                if (n + r > t.length) throw new RangeError(\"Index out of range\");\n                if (n < 0) throw new RangeError(\"Index out of range\")\n            }\n\n            function L(t, e, n, r, o) {\n                return o || N(t, 0, n, 4), i.write(t, e, n, r, 23, 4), n + 4\n            }\n\n            function D(t, e, n, r, o) {\n                return o || N(t, 0, n, 8), i.write(t, e, n, r, 52, 8), n + 8\n            }\n            s.prototype.slice = function(t, e) {\n                var n, r = this.length;\n                if (t = ~~t, e = void 0 === e ? r : ~~e, t < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), e < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), e < t && (e = t), s.TYPED_ARRAY_SUPPORT)(n = this.subarray(t, e)).__proto__ = s.prototype;\n                else {\n                    var i = e - t;\n                    n = new s(i, void 0);\n                    for (var o = 0; o < i; ++o) n[o] = this[o + t]\n                }\n                return n\n            }, s.prototype.readUIntLE = function(t, e, n) {\n                t |= 0, e |= 0, n || T(t, e, this.length);\n                for (var r = this[t], i = 1, o = 0; ++o < e && (i *= 256);) r += this[t + o] * i;\n                return r\n            }, s.prototype.readUIntBE = function(t, e, n) {\n                t |= 0, e |= 0, n || T(t, e, this.length);\n                for (var r = this[t + --e], i = 1; e > 0 && (i *= 256);) r += this[t + --e] * i;\n                return r\n            }, s.prototype.readUInt8 = function(t, e) {\n                return e || T(t, 1, this.length), this[t]\n            }, s.prototype.readUInt16LE = function(t, e) {\n                return e || T(t, 2, this.length), this[t] | this[t + 1] << 8\n            }, s.prototype.readUInt16BE = function(t, e) {\n                return e || T(t, 2, this.length), this[t] << 8 | this[t + 1]\n            }, s.prototype.readUInt32LE = function(t, e) {\n                return e || T(t, 4, this.length), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 16777216 * this[t + 3]\n            }, s.prototype.readUInt32BE = function(t, e) {\n                return e || T(t, 4, this.length), 16777216 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3])\n            }, s.prototype.readIntLE = function(t, e, n) {\n                t |= 0, e |= 0, n || T(t, e, this.length);\n                for (var r = this[t], i = 1, o = 0; ++o < e && (i *= 256);) r += this[t + o] * i;\n                return r >= (i *= 128) && (r -= Math.pow(2, 8 * e)), r\n            }, s.prototype.readIntBE = function(t, e, n) {\n                t |= 0, e |= 0, n || T(t, e, this.length);\n                for (var r = e, i = 1, o = this[t + --r]; r > 0 && (i *= 256);) o += this[t + --r] * i;\n                return o >= (i *= 128) && (o -= Math.pow(2, 8 * e)), o\n            }, s.prototype.readInt8 = function(t, e) {\n                return e || T(t, 1, this.length), 128 & this[t] ? -1 * (255 - this[t] + 1) : this[t]\n            }, s.prototype.readInt16LE = function(t, e) {\n                e || T(t, 2, this.length);\n                var n = this[t] | this[t + 1] << 8;\n                return 32768 & n ? 4294901760 | n : n\n            }, s.prototype.readInt16BE = function(t, e) {\n                e || T(t, 2, this.length);\n                var n = this[t + 1] | this[t] << 8;\n                return 32768 & n ? 4294901760 | n : n\n            }, s.prototype.readInt32LE = function(t, e) {\n                return e || T(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24\n            }, s.prototype.readInt32BE = function(t, e) {\n                return e || T(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]\n            }, s.prototype.readFloatLE = function(t, e) {\n                return e || T(t, 4, this.length), i.read(this, t, !0, 23, 4)\n            }, s.prototype.readFloatBE = function(t, e) {\n                return e || T(t, 4, this.length), i.read(this, t, !1, 23, 4)\n            }, s.prototype.readDoubleLE = function(t, e) {\n                return e || T(t, 8, this.length), i.read(this, t, !0, 52, 8)\n            }, s.prototype.readDoubleBE = function(t, e) {\n                return e || T(t, 8, this.length), i.read(this, t, !1, 52, 8)\n            }, s.prototype.writeUIntLE = function(t, e, n, r) {\n                (t = +t, e |= 0, n |= 0, r) || C(this, t, e, n, Math.pow(2, 8 * n) - 1, 0);\n                var i = 1,\n                    o = 0;\n                for (this[e] = 255 & t; ++o < n && (i *= 256);) this[e + o] = t / i & 255;\n                return e + n\n            }, s.prototype.writeUIntBE = function(t, e, n, r) {\n                (t = +t, e |= 0, n |= 0, r) || C(this, t, e, n, Math.pow(2, 8 * n) - 1, 0);\n                var i = n - 1,\n                    o = 1;\n                for (this[e + i] = 255 & t; --i >= 0 && (o *= 256);) this[e + i] = t / o & 255;\n                return e + n\n            }, s.prototype.writeUInt8 = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 1, 255, 0), s.TYPED_ARRAY_SUPPORT || (t = Math.floor(t)), this[e] = 255 & t, e + 1\n            }, s.prototype.writeUInt16LE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 2, 65535, 0), s.TYPED_ARRAY_SUPPORT ? (this[e] = 255 & t, this[e + 1] = t >>> 8) : P(this, t, e, !0), e + 2\n            }, s.prototype.writeUInt16BE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 2, 65535, 0), s.TYPED_ARRAY_SUPPORT ? (this[e] = t >>> 8, this[e + 1] = 255 & t) : P(this, t, e, !1), e + 2\n            }, s.prototype.writeUInt32LE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 4, 4294967295, 0), s.TYPED_ARRAY_SUPPORT ? (this[e + 3] = t >>> 24, this[e + 2] = t >>> 16, this[e + 1] = t >>> 8, this[e] = 255 & t) : R(this, t, e, !0), e + 4\n            }, s.prototype.writeUInt32BE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 4, 4294967295, 0), s.TYPED_ARRAY_SUPPORT ? (this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t) : R(this, t, e, !1), e + 4\n            }, s.prototype.writeIntLE = function(t, e, n, r) {\n                if (t = +t, e |= 0, !r) {\n                    var i = Math.pow(2, 8 * n - 1);\n                    C(this, t, e, n, i - 1, -i)\n                }\n                var o = 0,\n                    u = 1,\n                    a = 0;\n                for (this[e] = 255 & t; ++o < n && (u *= 256);) t < 0 && 0 === a && 0 !== this[e + o - 1] && (a = 1), this[e + o] = (t / u >> 0) - a & 255;\n                return e + n\n            }, s.prototype.writeIntBE = function(t, e, n, r) {\n                if (t = +t, e |= 0, !r) {\n                    var i = Math.pow(2, 8 * n - 1);\n                    C(this, t, e, n, i - 1, -i)\n                }\n                var o = n - 1,\n                    u = 1,\n                    a = 0;\n                for (this[e + o] = 255 & t; --o >= 0 && (u *= 256);) t < 0 && 0 === a && 0 !== this[e + o + 1] && (a = 1), this[e + o] = (t / u >> 0) - a & 255;\n                return e + n\n            }, s.prototype.writeInt8 = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 1, 127, -128), s.TYPED_ARRAY_SUPPORT || (t = Math.floor(t)), t < 0 && (t = 255 + t + 1), this[e] = 255 & t, e + 1\n            }, s.prototype.writeInt16LE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 2, 32767, -32768), s.TYPED_ARRAY_SUPPORT ? (this[e] = 255 & t, this[e + 1] = t >>> 8) : P(this, t, e, !0), e + 2\n            }, s.prototype.writeInt16BE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 2, 32767, -32768), s.TYPED_ARRAY_SUPPORT ? (this[e] = t >>> 8, this[e + 1] = 255 & t) : P(this, t, e, !1), e + 2\n            }, s.prototype.writeInt32LE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 4, 2147483647, -2147483648), s.TYPED_ARRAY_SUPPORT ? (this[e] = 255 & t, this[e + 1] = t >>> 8, this[e + 2] = t >>> 16, this[e + 3] = t >>> 24) : R(this, t, e, !0), e + 4\n            }, s.prototype.writeInt32BE = function(t, e, n) {\n                return t = +t, e |= 0, n || C(this, t, e, 4, 2147483647, -2147483648), t < 0 && (t = 4294967295 + t + 1), s.TYPED_ARRAY_SUPPORT ? (this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t) : R(this, t, e, !1), e + 4\n            }, s.prototype.writeFloatLE = function(t, e, n) {\n                return L(this, t, e, !0, n)\n            }, s.prototype.writeFloatBE = function(t, e, n) {\n                return L(this, t, e, !1, n)\n            }, s.prototype.writeDoubleLE = function(t, e, n) {\n                return D(this, t, e, !0, n)\n            }, s.prototype.writeDoubleBE = function(t, e, n) {\n                return D(this, t, e, !1, n)\n            }, s.prototype.copy = function(t, e, n, r) {\n                if (n || (n = 0), r || 0 === r || (r = this.length), e >= t.length && (e = t.length), e || (e = 0), r > 0 && r < n && (r = n), r === n) return 0;\n                if (0 === t.length || 0 === this.length) return 0;\n                if (e < 0) throw new RangeError(\"targetStart out of bounds\");\n                if (n < 0 || n >= this.length) throw new RangeError(\"sourceStart out of bounds\");\n                if (r < 0) throw new RangeError(\"sourceEnd out of bounds\");\n                r > this.length && (r = this.length), t.length - e < r - n && (r = t.length - e + n);\n                var i, o = r - n;\n                if (this === t && n < e && e < r)\n                    for (i = o - 1; i >= 0; --i) t[i + e] = this[i + n];\n                else if (o < 1e3 || !s.TYPED_ARRAY_SUPPORT)\n                    for (i = 0; i < o; ++i) t[i + e] = this[i + n];\n                else Uint8Array.prototype.set.call(t, this.subarray(n, n + o), e);\n                return o\n            }, s.prototype.fill = function(t, e, n, r) {\n                if (\"string\" == typeof t) {\n                    if (\"string\" == typeof e ? (r = e, e = 0, n = this.length) : \"string\" == typeof n && (r = n, n = this.length), 1 === t.length) {\n                        var i = t.charCodeAt(0);\n                        i < 256 && (t = i)\n                    }\n                    if (void 0 !== r && \"string\" != typeof r) throw new TypeError(\"encoding must be a string\");\n                    if (\"string\" == typeof r && !s.isEncoding(r)) throw new TypeError(\"Unknown encoding: \" + r)\n                } else \"number\" == typeof t && (t &= 255);\n                if (e < 0 || this.length < e || this.length < n) throw new RangeError(\"Out of range index\");\n                if (n <= e) return this;\n                var o;\n                if (e >>>= 0, n = void 0 === n ? this.length : n >>> 0, t || (t = 0), \"number\" == typeof t)\n                    for (o = e; o < n; ++o) this[o] = t;\n                else {\n                    var u = s.isBuffer(t) ? t : U(new s(t, r).toString()),\n                        a = u.length;\n                    for (o = 0; o < n - e; ++o) this[o + e] = u[o % a]\n                }\n                return this\n            };\n            var z = /[^+\\/0-9A-Za-z-_]/g;\n\n            function F(t) {\n                return t < 16 ? \"0\" + t.toString(16) : t.toString(16)\n            }\n\n            function U(t, e) {\n                var n;\n                e = e || 1 / 0;\n                for (var r = t.length, i = null, o = [], u = 0; u < r; ++u) {\n                    if ((n = t.charCodeAt(u)) > 55295 && n < 57344) {\n                        if (!i) {\n                            if (n > 56319) {\n                                (e -= 3) > -1 && o.push(239, 191, 189);\n                                continue\n                            }\n                            if (u + 1 === r) {\n                                (e -= 3) > -1 && o.push(239, 191, 189);\n                                continue\n                            }\n                            i = n;\n                            continue\n                        }\n                        if (n < 56320) {\n                            (e -= 3) > -1 && o.push(239, 191, 189), i = n;\n                            continue\n                        }\n                        n = 65536 + (i - 55296 << 10 | n - 56320)\n                    } else i && (e -= 3) > -1 && o.push(239, 191, 189);\n                    if (i = null, n < 128) {\n                        if ((e -= 1) < 0) break;\n                        o.push(n)\n                    } else if (n < 2048) {\n                        if ((e -= 2) < 0) break;\n                        o.push(n >> 6 | 192, 63 & n | 128)\n                    } else if (n < 65536) {\n                        if ((e -= 3) < 0) break;\n                        o.push(n >> 12 | 224, n >> 6 & 63 | 128, 63 & n | 128)\n                    } else {\n                        if (!(n < 1114112)) throw new Error(\"Invalid code point\");\n                        if ((e -= 4) < 0) break;\n                        o.push(n >> 18 | 240, n >> 12 & 63 | 128, n >> 6 & 63 | 128, 63 & n | 128)\n                    }\n                }\n                return o\n            }\n\n            function B(t) {\n                return r.toByteArray(function(t) {\n                    if ((t = function(t) {\n                        return t.trim ? t.trim() : t.replace(/^\\s+|\\s+$/g, \"\")\n                    }(t).replace(z, \"\")).length < 2) return \"\";\n                    for (; t.length % 4 != 0;) t += \"=\";\n                    return t\n                }(t))\n            }\n\n            function q(t, e, n, r) {\n                for (var i = 0; i < r && !(i + n >= e.length || i >= t.length); ++i) e[i + n] = t[i];\n                return i\n            }\n        }).call(e, n(11))\n    }, function(t, e, n) {\n        var r = n(7).Symbol;\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(48),\n            i = n(49),\n            o = \"[object Symbol]\";\n        t.exports = function(t) {\n            return \"symbol\" == typeof t || i(t) && r(t) == o\n        }\n    }, function(t, e, n) {\n        var r = n(33)(Object, \"create\");\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(373),\n            i = n(374),\n            o = n(375),\n            u = n(376),\n            a = n(377);\n\n        function s(t) {\n            var e = -1,\n                n = null == t ? 0 : t.length;\n            for (this.clear(); ++e < n;) {\n                var r = t[e];\n                this.set(r[0], r[1])\n            }\n        }\n        s.prototype.clear = r, s.prototype.delete = i, s.prototype.get = o, s.prototype.has = u, s.prototype.set = a, t.exports = s\n    }, function(t, e, n) {\n        var r = n(74);\n        t.exports = function(t, e) {\n            for (var n = t.length; n--;)\n                if (r(t[n][0], e)) return n;\n            return -1\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return t === e || t != t && e != e\n        }\n    }, function(t, e, n) {\n        var r = n(379);\n        t.exports = function(t, e) {\n            var n = t.__data__;\n            return r(e) ? n[\"string\" == typeof e ? \"string\" : \"hash\"] : n.map\n        }\n    }, function(t, e, n) {\n        var r = n(408),\n            i = n(415),\n            o = n(77);\n        t.exports = function(t) {\n            return o(t) ? r(t) : i(t)\n        }\n    }, function(t, e, n) {\n        var r = n(173),\n            i = n(113);\n        t.exports = function(t) {\n            return null != t && i(t.length) && !r(t)\n        }\n    }, function(t, e, n) {\n        var r = n(70),\n            i = 1 / 0;\n        t.exports = function(t) {\n            if (\"string\" == typeof t || r(t)) return t;\n            var e = t + \"\";\n            return \"0\" == e && 1 / t == -i ? \"-0\" : e\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        (function(e) {\n            !e.version || 0 === e.version.indexOf(\"v0.\") || 0 === e.version.indexOf(\"v1.\") && 0 !== e.version.indexOf(\"v1.8.\") ? t.exports = {\n                nextTick: function(t, n, r, i) {\n                    if (\"function\" != typeof t) throw new TypeError('\"callback\" argument must be a function');\n                    var o, u, a = arguments.length;\n                    switch (a) {\n                        case 0:\n                        case 1:\n                            return e.nextTick(t);\n                        case 2:\n                            return e.nextTick(function() {\n                                t.call(null, n)\n                            });\n                        case 3:\n                            return e.nextTick(function() {\n                                t.call(null, n, r)\n                            });\n                        case 4:\n                            return e.nextTick(function() {\n                                t.call(null, n, r, i)\n                            });\n                        default:\n                            for (o = new Array(a - 1), u = 0; u < o.length;) o[u++] = arguments[u];\n                            return e.nextTick(function() {\n                                t.apply(null, o)\n                            })\n                    }\n                }\n            } : t.exports = e\n        }).call(e, n(34))\n    }, function(t, e, n) {\n        var r = n(68),\n            i = r.Buffer;\n\n        function o(t, e) {\n            for (var n in t) e[n] = t[n]\n        }\n\n        function u(t, e, n) {\n            return i(t, e, n)\n        }\n        i.from && i.alloc && i.allocUnsafe && i.allocUnsafeSlow ? t.exports = r : (o(r, e), e.Buffer = u), o(i, u), u.from = function(t, e, n) {\n            if (\"number\" == typeof t) throw new TypeError(\"Argument must not be a number\");\n            return i(t, e, n)\n        }, u.alloc = function(t, e, n) {\n            if (\"number\" != typeof t) throw new TypeError(\"Argument must be a number\");\n            var r = i(t);\n            return void 0 !== e ? \"string\" == typeof n ? r.fill(e, n) : r.fill(e) : r.fill(0), r\n        }, u.allocUnsafe = function(t) {\n            if (\"number\" != typeof t) throw new TypeError(\"Argument must be a number\");\n            return i(t)\n        }, u.allocUnsafeSlow = function(t) {\n            if (\"number\" != typeof t) throw new TypeError(\"Argument must be a number\");\n            return r.SlowBuffer(t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(469)(\"forEach\")\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(196),\n            i = n(193),\n            o = n(118),\n            u = n(478);\n        (t.exports = function(t, e) {\n            var n, o, a, s, c;\n            return arguments.length < 2 || \"string\" != typeof t ? (s = e, e = t, t = null) : s = arguments[2], null == t ? (n = a = !0, o = !1) : (n = u.call(t, \"c\"), o = u.call(t, \"e\"), a = u.call(t, \"w\")), c = {\n                value: e,\n                configurable: n,\n                enumerable: o,\n                writable: a\n            }, s ? r(i(s), c) : c\n        }).gs = function(t, e, n) {\n            var a, s, c, f;\n            return \"string\" != typeof t ? (c = n, n = e, e = t, t = null) : c = arguments[3], null == e ? e = void 0 : o(e) ? null == n ? n = void 0 : o(n) || (c = n, n = void 0) : (c = e, e = n = void 0), null == t ? (a = !0, s = !1) : (a = u.call(t, \"c\"), s = u.call(t, \"e\")), f = {\n                get: e,\n                set: n,\n                configurable: a,\n                enumerable: s\n            }, c ? r(i(c), f) : f\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(38);\n        t.exports = r.DEFAULT = new r({\n            include: [n(53)],\n            explicit: [n(537), n(538), n(539)]\n        })\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(208),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(209);\n        for (var r = n(9), i = n(26), o = n(39), u = n(6)(\"toStringTag\"), a = \"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList\".split(\",\"), s = 0; s < a.length; s++) {\n            var c = a[s],\n                f = r[c],\n                l = f && f.prototype;\n            l && !l[u] && i(l, u, c), o[c] = o.Array\n        }\n    }, function(t, e) {\n        var n = {}.toString;\n        t.exports = function(t) {\n            return n.call(t).slice(8, -1)\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            if (void 0 == t) throw TypeError(\"Can't call method on  \" + t);\n            return t\n        }\n    }, function(t, e) {\n        t.exports = !0\n    }, function(t, e, n) {\n        var r = n(28);\n        t.exports = function(t, e) {\n            if (!r(t)) return t;\n            var n, i;\n            if (e && \"function\" == typeof(n = t.toString) && !r(i = n.call(t))) return i;\n            if (\"function\" == typeof(n = t.valueOf) && !r(i = n.call(t))) return i;\n            if (!e && \"function\" == typeof(n = t.toString) && !r(i = n.call(t))) return i;\n            throw TypeError(\"Can't convert object to primitive value\")\n        }\n    }, function(t, e, n) {\n        var r = n(27),\n            i = n(214),\n            o = n(94),\n            u = n(92)(\"IE_PROTO\"),\n            a = function() {},\n            s = function() {\n                var t, e = n(128)(\"iframe\"),\n                    r = o.length;\n                for (e.style.display = \"none\", n(218).appendChild(e), e.src = \"javascript:\", (t = e.contentWindow.document).open(), t.write(\"<script>document.F=Object<\\/script>\"), t.close(), s = t.F; r--;) delete s.prototype[o[r]];\n                return s()\n            };\n        t.exports = Object.create || function(t, e) {\n            var n;\n            return null !== t ? (a.prototype = r(t), n = new a, a.prototype = null, n[u] = t) : n = s(), void 0 === e ? n : i(n, e)\n        }\n    }, function(t, e) {\n        var n = Math.ceil,\n            r = Math.floor;\n        t.exports = function(t) {\n            return isNaN(t = +t) ? 0 : (t > 0 ? r : n)(t)\n        }\n    }, function(t, e, n) {\n        var r = n(93)(\"keys\"),\n            i = n(55);\n        t.exports = function(t) {\n            return r[t] || (r[t] = i(t))\n        }\n    }, function(t, e, n) {\n        var r = n(9),\n            i = r[\"__core-js_shared__\"] || (r[\"__core-js_shared__\"] = {});\n        t.exports = function(t) {\n            return i[t] || (i[t] = {})\n        }\n    }, function(t, e) {\n        t.exports = \"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")\n    }, function(t, e, n) {\n        var r = n(14).f,\n            i = n(16),\n            o = n(6)(\"toStringTag\");\n        t.exports = function(t, e, n) {\n            t && !i(t = n ? t : t.prototype, o) && r(t, o, {\n                configurable: !0,\n                value: e\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(219)(!0);\n        n(125)(String, \"String\", function(t) {\n            this._t = String(t), this._i = 0\n        }, function() {\n            var t, e = this._t,\n                n = this._i;\n            return n >= e.length ? {\n                value: void 0,\n                done: !0\n            } : (t = r(e, n), this._i += t.length, {\n                value: t,\n                done: !1\n            })\n        })\n    }, function(t, e, n) {\n        var r = n(41),\n            i = n(1)(\"toStringTag\"),\n            o = \"Arguments\" == r(function() {\n                return arguments\n            }());\n        t.exports = function(t) {\n            var e, n, u;\n            return void 0 === t ? \"Undefined\" : null === t ? \"Null\" : \"string\" == typeof(n = function(t, e) {\n                try {\n                    return t[e]\n                } catch (t) {}\n            }(e = Object(t), i)) ? n : o ? r(e) : \"Object\" == (u = r(e)) && \"function\" == typeof e.callee ? \"Arguments\" : u\n        }\n    }, function(t, e) {\n        var n = 0,\n            r = Math.random();\n        t.exports = function(t) {\n            return \"Symbol(\".concat(void 0 === t ? \"\" : t, \")_\", (++n + r).toString(36))\n        }\n    }, function(t, e, n) {\n        var r = n(31),\n            i = n(5).document,\n            o = r(i) && r(i.createElement);\n        t.exports = function(t) {\n            return o ? i.createElement(t) : {}\n        }\n    }, function(t, e, n) {\n        var r = n(133)(\"keys\"),\n            i = n(98);\n        t.exports = function(t) {\n            return r[t] || (r[t] = i(t))\n        }\n    }, function(t, e, n) {\n        var r = n(57).f,\n            i = n(58),\n            o = n(1)(\"toStringTag\");\n        t.exports = function(t, e, n) {\n            t && !i(t = n ? t : t.prototype, o) && r(t, o, {\n                configurable: !0,\n                value: e\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(61);\n        t.exports.f = function(t) {\n            return new function(t) {\n                var e, n;\n                this.promise = new t(function(t, r) {\n                    if (void 0 !== e || void 0 !== n) throw TypeError(\"Bad Promise constructor\");\n                    e = t, n = r\n                }), this.resolve = r(e), this.reject = r(n)\n            }(t)\n        }\n    }, function(t, e, n) {\n        var r = n(147),\n            i = n(10);\n        t.exports = function(t, e, n) {\n            if (r(e)) throw TypeError(\"String#\" + n + \" doesn't accept regex!\");\n            return String(i(t))\n        }\n    }, function(t, e, n) {\n        var r = n(1)(\"match\");\n        t.exports = function(t) {\n            var e = /./;\n            try {\n                \"/./\" [t](e)\n            } catch (n) {\n                try {\n                    return e[r] = !1, !\"/./\" [t](e)\n                } catch (t) {}\n            }\n            return !0\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0;\n        var r = u(n(286)),\n            i = u(n(288)),\n            o = \"function\" == typeof i.default && \"symbol\" == typeof r.default ? function(t) {\n                return typeof t\n            } : function(t) {\n                return t && \"function\" == typeof i.default && t.constructor === i.default && t !== i.default.prototype ? \"symbol\" : typeof t\n            };\n\n        function u(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        e.default = \"function\" == typeof i.default && \"symbol\" === o(r.default) ? function(t) {\n            return void 0 === t ? \"undefined\" : o(t)\n        } : function(t) {\n            return t && \"function\" == typeof i.default && t.constructor === i.default && t !== i.default.prototype ? \"symbol\" : void 0 === t ? \"undefined\" : o(t)\n        }\n    }, function(t, e, n) {\n        e.f = n(6)\n    }, function(t, e, n) {\n        var r = n(9),\n            i = n(2),\n            o = n(88),\n            u = n(106),\n            a = n(14).f;\n        t.exports = function(t) {\n            var e = i.Symbol || (i.Symbol = o ? {} : r.Symbol || {});\n            \"_\" == t.charAt(0) || t in e || a(e, t, {\n                value: u.f(t)\n            })\n        }\n    }, function(t, e) {\n        e.f = Object.getOwnPropertySymbols\n    }, function(t, e, n) {\n        var r = n(362),\n            i = n(378),\n            o = n(380),\n            u = n(381),\n            a = n(382);\n\n        function s(t) {\n            var e = -1,\n                n = null == t ? 0 : t.length;\n            for (this.clear(); ++e < n;) {\n                var r = t[e];\n                this.set(r[0], r[1])\n            }\n        }\n        s.prototype.clear = r, s.prototype.delete = i, s.prototype.get = o, s.prototype.has = u, s.prototype.set = a, t.exports = s\n    }, function(t, e, n) {\n        var r = n(33)(n(7), \"Map\");\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(385),\n            i = n(425),\n            o = n(432),\n            u = n(8),\n            a = n(433);\n        t.exports = function(t) {\n            return \"function\" == typeof t ? t : null == t ? o : \"object\" == typeof t ? u(t) ? i(t[0], t[1]) : r(t) : a(t)\n        }\n    }, function(t, e) {\n        var n = 9007199254740991,\n            r = /^(?:0|[1-9]\\d*)$/;\n        t.exports = function(t, e) {\n            var i = typeof t;\n            return !!(e = null == e ? n : e) && (\"number\" == i || \"symbol\" != i && r.test(t)) && t > -1 && t % 1 == 0 && t < e\n        }\n    }, function(t, e) {\n        var n = 9007199254740991;\n        t.exports = function(t) {\n            return \"number\" == typeof t && t > -1 && t % 1 == 0 && t <= n\n        }\n    }, function(t, e, n) {\n        var r = n(8),\n            i = n(70),\n            o = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n            u = /^\\w*$/;\n        t.exports = function(t, e) {\n            if (r(t)) return !1;\n            var n = typeof t;\n            return !(\"number\" != n && \"symbol\" != n && \"boolean\" != n && null != t && !i(t)) || u.test(t) || !o.test(t) || null != e && t in Object(e)\n        }\n    }, function(t, e) {\n        function n() {\n            this._events = this._events || {}, this._maxListeners = this._maxListeners || void 0\n        }\n\n        function r(t) {\n            return \"function\" == typeof t\n        }\n\n        function i(t) {\n            return \"object\" == typeof t && null !== t\n        }\n\n        function o(t) {\n            return void 0 === t\n        }\n        t.exports = n, n.EventEmitter = n, n.prototype._events = void 0, n.prototype._maxListeners = void 0, n.defaultMaxListeners = 10, n.prototype.setMaxListeners = function(t) {\n            if (\"number\" != typeof t || t < 0 || isNaN(t)) throw TypeError(\"n must be a positive number\");\n            return this._maxListeners = t, this\n        }, n.prototype.emit = function(t) {\n            var e, n, u, a, s, c;\n            if (this._events || (this._events = {}), \"error\" === t && (!this._events.error || i(this._events.error) && !this._events.error.length)) {\n                if ((e = arguments[1]) instanceof Error) throw e;\n                var f = new Error('Uncaught, unspecified \"error\" event. (' + e + \")\");\n                throw f.context = e, f\n            }\n            if (o(n = this._events[t])) return !1;\n            if (r(n)) switch (arguments.length) {\n                case 1:\n                    n.call(this);\n                    break;\n                case 2:\n                    n.call(this, arguments[1]);\n                    break;\n                case 3:\n                    n.call(this, arguments[1], arguments[2]);\n                    break;\n                default:\n                    a = Array.prototype.slice.call(arguments, 1), n.apply(this, a)\n            } else if (i(n))\n                for (a = Array.prototype.slice.call(arguments, 1), u = (c = n.slice()).length, s = 0; s < u; s++) c[s].apply(this, a);\n            return !0\n        }, n.prototype.addListener = function(t, e) {\n            var u;\n            if (!r(e)) throw TypeError(\"listener must be a function\");\n            return this._events || (this._events = {}), this._events.newListener && this.emit(\"newListener\", t, r(e.listener) ? e.listener : e), this._events[t] ? i(this._events[t]) ? this._events[t].push(e) : this._events[t] = [this._events[t], e] : this._events[t] = e, i(this._events[t]) && !this._events[t].warned && (u = o(this._maxListeners) ? n.defaultMaxListeners : this._maxListeners) && u > 0 && this._events[t].length > u && (this._events[t].warned = !0, console.error(\"(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.\", this._events[t].length), \"function\" == typeof console.trace && console.trace()), this\n        }, n.prototype.on = n.prototype.addListener, n.prototype.once = function(t, e) {\n            if (!r(e)) throw TypeError(\"listener must be a function\");\n            var n = !1;\n\n            function i() {\n                this.removeListener(t, i), n || (n = !0, e.apply(this, arguments))\n            }\n            return i.listener = e, this.on(t, i), this\n        }, n.prototype.removeListener = function(t, e) {\n            var n, o, u, a;\n            if (!r(e)) throw TypeError(\"listener must be a function\");\n            if (!this._events || !this._events[t]) return this;\n            if (u = (n = this._events[t]).length, o = -1, n === e || r(n.listener) && n.listener === e) delete this._events[t], this._events.removeListener && this.emit(\"removeListener\", t, e);\n            else if (i(n)) {\n                for (a = u; a-- > 0;)\n                    if (n[a] === e || n[a].listener && n[a].listener === e) {\n                        o = a;\n                        break\n                    }\n                if (o < 0) return this;\n                1 === n.length ? (n.length = 0, delete this._events[t]) : n.splice(o, 1), this._events.removeListener && this.emit(\"removeListener\", t, e)\n            }\n            return this\n        }, n.prototype.removeAllListeners = function(t) {\n            var e, n;\n            if (!this._events) return this;\n            if (!this._events.removeListener) return 0 === arguments.length ? this._events = {} : this._events[t] && delete this._events[t], this;\n            if (0 === arguments.length) {\n                for (e in this._events) \"removeListener\" !== e && this.removeAllListeners(e);\n                return this.removeAllListeners(\"removeListener\"), this._events = {}, this\n            }\n            if (r(n = this._events[t])) this.removeListener(t, n);\n            else if (n)\n                for (; n.length;) this.removeListener(t, n[n.length - 1]);\n            return delete this._events[t], this\n        }, n.prototype.listeners = function(t) {\n            return this._events && this._events[t] ? r(this._events[t]) ? [this._events[t]] : this._events[t].slice() : []\n        }, n.prototype.listenerCount = function(t) {\n            if (this._events) {\n                var e = this._events[t];\n                if (r(e)) return 1;\n                if (e) return e.length\n            }\n            return 0\n        }, n.listenerCount = function(t, e) {\n            return t.listenerCount(e)\n        }\n    }, function(t, e, n) {\n        (e = t.exports = n(187)).Stream = e, e.Readable = e, e.Writable = n(117), e.Duplex = n(21), e.Transform = n(192), e.PassThrough = n(458)\n    }, function(t, e, n) {\n        \"use strict\";\n        (function(e, r, i) {\n            var o = n(79);\n\n            function u(t) {\n                var e = this;\n                this.next = null, this.entry = null, this.finish = function() {\n                    ! function(t, e, n) {\n                        var r = t.entry;\n                        t.entry = null;\n                        for (; r;) {\n                            var i = r.callback;\n                            e.pendingcb--, i(n), r = r.next\n                        }\n                        e.corkedRequestsFree ? e.corkedRequestsFree.next = t : e.corkedRequestsFree = t\n                    }(e, t)\n                }\n            }\n            t.exports = m;\n            var a, s = !e.browser && [\"v0.10\", \"v0.9.\"].indexOf(e.version.slice(0, 5)) > -1 ? r : o.nextTick;\n            m.WritableState = g;\n            var c = n(51);\n            c.inherits = n(35);\n            var f = {\n                    deprecate: n(457)\n                },\n                l = n(188),\n                p = n(80).Buffer,\n                h = i.Uint8Array || function() {};\n            var d, v = n(189);\n\n            function y() {}\n\n            function g(t, e) {\n                a = a || n(21), t = t || {};\n                var r = e instanceof a;\n                this.objectMode = !!t.objectMode, r && (this.objectMode = this.objectMode || !!t.writableObjectMode);\n                var i = t.highWaterMark,\n                    c = t.writableHighWaterMark,\n                    f = this.objectMode ? 16 : 16384;\n                this.highWaterMark = i || 0 === i ? i : r && (c || 0 === c) ? c : f, this.highWaterMark = Math.floor(this.highWaterMark), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n                var l = !1 === t.decodeStrings;\n                this.decodeStrings = !l, this.defaultEncoding = t.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = function(t) {\n                    ! function(t, e) {\n                        var n = t._writableState,\n                            r = n.sync,\n                            i = n.writecb;\n                        if (function(t) {\n                            t.writing = !1, t.writecb = null, t.length -= t.writelen, t.writelen = 0\n                        }(n), e) ! function(t, e, n, r, i) {\n                            --e.pendingcb, n ? (o.nextTick(i, r), o.nextTick(E, t, e), t._writableState.errorEmitted = !0, t.emit(\"error\", r)) : (i(r), t._writableState.errorEmitted = !0, t.emit(\"error\", r), E(t, e))\n                        }(t, n, r, e, i);\n                        else {\n                            var u = x(n);\n                            u || n.corked || n.bufferProcessing || !n.bufferedRequest || w(t, n), r ? s(b, t, n, u, i) : b(t, n, u, i)\n                        }\n                    }(e, t)\n                }, this.writecb = null, this.writelen = 0, this.bufferedRequest = null, this.lastBufferedRequest = null, this.pendingcb = 0, this.prefinished = !1, this.errorEmitted = !1, this.bufferedRequestCount = 0, this.corkedRequestsFree = new u(this)\n            }\n\n            function m(t) {\n                if (a = a || n(21), !(d.call(m, this) || this instanceof a)) return new m(t);\n                this._writableState = new g(t, this), this.writable = !0, t && (\"function\" == typeof t.write && (this._write = t.write), \"function\" == typeof t.writev && (this._writev = t.writev), \"function\" == typeof t.destroy && (this._destroy = t.destroy), \"function\" == typeof t.final && (this._final = t.final)), l.call(this)\n            }\n\n            function _(t, e, n, r, i, o, u) {\n                e.writelen = r, e.writecb = u, e.writing = !0, e.sync = !0, n ? t._writev(i, e.onwrite) : t._write(i, o, e.onwrite), e.sync = !1\n            }\n\n            function b(t, e, n, r) {\n                n || function(t, e) {\n                    0 === e.length && e.needDrain && (e.needDrain = !1, t.emit(\"drain\"))\n                }(t, e), e.pendingcb--, r(), E(t, e)\n            }\n\n            function w(t, e) {\n                e.bufferProcessing = !0;\n                var n = e.bufferedRequest;\n                if (t._writev && n && n.next) {\n                    var r = e.bufferedRequestCount,\n                        i = new Array(r),\n                        o = e.corkedRequestsFree;\n                    o.entry = n;\n                    for (var a = 0, s = !0; n;) i[a] = n, n.isBuf || (s = !1), n = n.next, a += 1;\n                    i.allBuffers = s, _(t, e, !0, e.length, i, \"\", o.finish), e.pendingcb++, e.lastBufferedRequest = null, o.next ? (e.corkedRequestsFree = o.next, o.next = null) : e.corkedRequestsFree = new u(e), e.bufferedRequestCount = 0\n                } else {\n                    for (; n;) {\n                        var c = n.chunk,\n                            f = n.encoding,\n                            l = n.callback;\n                        if (_(t, e, !1, e.objectMode ? 1 : c.length, c, f, l), n = n.next, e.bufferedRequestCount--, e.writing) break\n                    }\n                    null === n && (e.lastBufferedRequest = null)\n                }\n                e.bufferedRequest = n, e.bufferProcessing = !1\n            }\n\n            function x(t) {\n                return t.ending && 0 === t.length && null === t.bufferedRequest && !t.finished && !t.writing\n            }\n\n            function S(t, e) {\n                t._final(function(n) {\n                    e.pendingcb--, n && t.emit(\"error\", n), e.prefinished = !0, t.emit(\"prefinish\"), E(t, e)\n                })\n            }\n\n            function E(t, e) {\n                var n = x(e);\n                return n && (! function(t, e) {\n                    e.prefinished || e.finalCalled || (\"function\" == typeof t._final ? (e.pendingcb++, e.finalCalled = !0, o.nextTick(S, t, e)) : (e.prefinished = !0, t.emit(\"prefinish\")))\n                }(t, e), 0 === e.pendingcb && (e.finished = !0, t.emit(\"finish\"))), n\n            }\n            c.inherits(m, l), g.prototype.getBuffer = function() {\n                for (var t = this.bufferedRequest, e = []; t;) e.push(t), t = t.next;\n                return e\n            },\n                function() {\n                    try {\n                        Object.defineProperty(g.prototype, \"buffer\", {\n                            get: f.deprecate(function() {\n                                return this.getBuffer()\n                            }, \"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.\", \"DEP0003\")\n                        })\n                    } catch (t) {}\n                }(), \"function\" == typeof Symbol && Symbol.hasInstance && \"function\" == typeof Function.prototype[Symbol.hasInstance] ? (d = Function.prototype[Symbol.hasInstance], Object.defineProperty(m, Symbol.hasInstance, {\n                value: function(t) {\n                    return !!d.call(this, t) || this === m && (t && t._writableState instanceof g)\n                }\n            })) : d = function(t) {\n                return t instanceof this\n            }, m.prototype.pipe = function() {\n                this.emit(\"error\", new Error(\"Cannot pipe, not readable\"))\n            }, m.prototype.write = function(t, e, n) {\n                var r, i = this._writableState,\n                    u = !1,\n                    a = !i.objectMode && (r = t, p.isBuffer(r) || r instanceof h);\n                return a && !p.isBuffer(t) && (t = function(t) {\n                    return p.from(t)\n                }(t)), \"function\" == typeof e && (n = e, e = null), a ? e = \"buffer\" : e || (e = i.defaultEncoding), \"function\" != typeof n && (n = y), i.ended ? function(t, e) {\n                    var n = new Error(\"write after end\");\n                    t.emit(\"error\", n), o.nextTick(e, n)\n                }(this, n) : (a || function(t, e, n, r) {\n                    var i = !0,\n                        u = !1;\n                    return null === n ? u = new TypeError(\"May not write null values to stream\") : \"string\" == typeof n || void 0 === n || e.objectMode || (u = new TypeError(\"Invalid non-string/buffer chunk\")), u && (t.emit(\"error\", u), o.nextTick(r, u), i = !1), i\n                }(this, i, t, n)) && (i.pendingcb++, u = function(t, e, n, r, i, o) {\n                    if (!n) {\n                        var u = function(t, e, n) {\n                            t.objectMode || !1 === t.decodeStrings || \"string\" != typeof e || (e = p.from(e, n));\n                            return e\n                        }(e, r, i);\n                        r !== u && (n = !0, i = \"buffer\", r = u)\n                    }\n                    var a = e.objectMode ? 1 : r.length;\n                    e.length += a;\n                    var s = e.length < e.highWaterMark;\n                    s || (e.needDrain = !0);\n                    if (e.writing || e.corked) {\n                        var c = e.lastBufferedRequest;\n                        e.lastBufferedRequest = {\n                            chunk: r,\n                            encoding: i,\n                            isBuf: n,\n                            callback: o,\n                            next: null\n                        }, c ? c.next = e.lastBufferedRequest : e.bufferedRequest = e.lastBufferedRequest, e.bufferedRequestCount += 1\n                    } else _(t, e, !1, a, r, i, o);\n                    return s\n                }(this, i, a, t, e, n)), u\n            }, m.prototype.cork = function() {\n                this._writableState.corked++\n            }, m.prototype.uncork = function() {\n                var t = this._writableState;\n                t.corked && (t.corked--, t.writing || t.corked || t.finished || t.bufferProcessing || !t.bufferedRequest || w(this, t))\n            }, m.prototype.setDefaultEncoding = function(t) {\n                if (\"string\" == typeof t && (t = t.toLowerCase()), !([\"hex\", \"utf8\", \"utf-8\", \"ascii\", \"binary\", \"base64\", \"ucs2\", \"ucs-2\", \"utf16le\", \"utf-16le\", \"raw\"].indexOf((t + \"\").toLowerCase()) > -1)) throw new TypeError(\"Unknown encoding: \" + t);\n                return this._writableState.defaultEncoding = t, this\n            }, Object.defineProperty(m.prototype, \"writableHighWaterMark\", {\n                enumerable: !1,\n                get: function() {\n                    return this._writableState.highWaterMark\n                }\n            }), m.prototype._write = function(t, e, n) {\n                n(new Error(\"_write() is not implemented\"))\n            }, m.prototype._writev = null, m.prototype.end = function(t, e, n) {\n                var r = this._writableState;\n                \"function\" == typeof t ? (n = t, t = null, e = null) : \"function\" == typeof e && (n = e, e = null), null !== t && void 0 !== t && this.write(t, e), r.corked && (r.corked = 1, this.uncork()), r.ending || r.finished || function(t, e, n) {\n                    e.ending = !0, E(t, e), n && (e.finished ? o.nextTick(n) : t.once(\"finish\", n));\n                    e.ended = !0, t.writable = !1\n                }(this, r, n)\n            }, Object.defineProperty(m.prototype, \"destroyed\", {\n                get: function() {\n                    return void 0 !== this._writableState && this._writableState.destroyed\n                },\n                set: function(t) {\n                    this._writableState && (this._writableState.destroyed = t)\n                }\n            }), m.prototype.destroy = v.destroy, m.prototype._undestroy = v.undestroy, m.prototype._destroy = function(t, e) {\n                this.end(), e(t)\n            }\n        }).call(e, n(34), n(190).setImmediate, n(11))\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            return \"function\" == typeof t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(484)() ? Array.from : n(485)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(498),\n            i = n(23),\n            o = n(36),\n            u = Array.prototype.indexOf,\n            a = Object.prototype.hasOwnProperty,\n            s = Math.abs,\n            c = Math.floor;\n        t.exports = function(t) {\n            var e, n, f, l;\n            if (!r(t)) return u.apply(this, arguments);\n            for (n = i(o(this).length), f = arguments[1], e = f = isNaN(f) ? 0 : f >= 0 ? c(f) : i(this.length) - c(s(f)); e < n; ++e)\n                if (a.call(this, e) && (l = this[e], r(l))) return e;\n            return -1\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        (function(e, n) {\n            var r, i;\n            r = function(t) {\n                if (\"function\" != typeof t) throw new TypeError(t + \" is not a function\");\n                return t\n            }, i = function(t) {\n                var e, n, i = document.createTextNode(\"\"),\n                    o = 0;\n                return new t(function() {\n                    var t;\n                    if (e) n && (e = n.concat(e));\n                    else {\n                        if (!n) return;\n                        e = n\n                    }\n                    if (n = e, e = null, \"function\" == typeof n) return t = n, n = null, void t();\n                    for (i.data = o = ++o % 2; n;) t = n.shift(), n.length || (n = null), t()\n                }).observe(i, {\n                    characterData: !0\n                }),\n                    function(t) {\n                        r(t), e ? \"function\" == typeof e ? e = [e, t] : e.push(t) : (e = t, i.data = o = ++o % 2)\n                    }\n            }, t.exports = function() {\n                if (\"object\" == typeof e && e && \"function\" == typeof e.nextTick) return e.nextTick;\n                if (\"object\" == typeof document && document) {\n                    if (\"function\" == typeof MutationObserver) return i(MutationObserver);\n                    if (\"function\" == typeof WebKitMutationObserver) return i(WebKitMutationObserver)\n                }\n                return \"function\" == typeof n ? function(t) {\n                    n(r(t))\n                } : \"function\" == typeof setTimeout || \"object\" == typeof setTimeout ? function(t) {\n                    setTimeout(r(t), 0)\n                } : null\n            }()\n        }).call(e, n(34), n(190).setImmediate)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(38);\n        t.exports = new r({\n            explicit: [n(524), n(525), n(526)]\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i = n(84),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            };\n        t.exports = function() {\n            var t = {\n                location: {},\n                history: {},\n                open: function() {},\n                close: function() {},\n                File: function() {}\n            };\n            if (\"undefined\" == typeof window) return t;\n            try {\n                t = window;\n                var e = !0,\n                    n = !1,\n                    r = void 0;\n                try {\n                    for (var i, u = (0, o.default)([\"File\", \"Blob\", \"FormData\"]); !(e = (i = u.next()).done); e = !0) {\n                        var a = i.value;\n                        a in window && (t[a] = window[a])\n                    }\n                } catch (t) {\n                    n = !0, r = t\n                } finally {\n                    try {\n                        !e && u.return && u.return()\n                    } finally {\n                        if (n) throw r\n                    }\n                }\n            } catch (t) {\n                console.error(t)\n            }\n            return t\n        }()\n    }, function(t, e, n) {\n        var r = n(86);\n        t.exports = Object(\"z\").propertyIsEnumerable(0) ? Object : function(t) {\n            return \"String\" == r(t) ? t.split(\"\") : Object(t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(88),\n            i = n(13),\n            o = n(129),\n            u = n(26),\n            a = n(39),\n            s = n(213),\n            c = n(95),\n            f = n(131),\n            l = n(6)(\"iterator\"),\n            p = !([].keys && \"next\" in [].keys()),\n            h = function() {\n                return this\n            };\n        t.exports = function(t, e, n, d, v, y, g) {\n            s(n, e, d);\n            var m, _, b, w = function(t) {\n                    if (!p && t in A) return A[t];\n                    switch (t) {\n                        case \"keys\":\n                        case \"values\":\n                            return function() {\n                                return new n(this, t)\n                            }\n                    }\n                    return function() {\n                        return new n(this, t)\n                    }\n                },\n                x = e + \" Iterator\",\n                S = \"values\" == v,\n                E = !1,\n                A = t.prototype,\n                O = A[l] || A[\"@@iterator\"] || v && A[v],\n                j = O || w(v),\n                k = v ? S ? w(\"entries\") : j : void 0,\n                I = \"Array\" == e && A.entries || O;\n            if (I && (b = f(I.call(new t))) !== Object.prototype && b.next && (c(b, x, !0), r || \"function\" == typeof b[l] || u(b, l, h)), S && O && \"values\" !== O.name && (E = !0, j = function() {\n                return O.call(this)\n            }), r && !g || !p && !E && A[l] || u(A, l, j), a[e] = j, a[x] = h, v)\n                if (m = {\n                    values: S ? j : w(\"values\"),\n                    keys: y ? j : w(\"keys\"),\n                    entries: k\n                }, g)\n                    for (_ in m) _ in A || o(A, _, m[_]);\n                else i(i.P + i.F * (p || E), e, m);\n            return m\n        }\n    }, function(t, e, n) {\n        var r = n(212);\n        t.exports = function(t, e, n) {\n            if (r(t), void 0 === e) return t;\n            switch (n) {\n                case 1:\n                    return function(n) {\n                        return t.call(e, n)\n                    };\n                case 2:\n                    return function(n, r) {\n                        return t.call(e, n, r)\n                    };\n                case 3:\n                    return function(n, r, i) {\n                        return t.call(e, n, r, i)\n                    }\n            }\n            return function() {\n                return t.apply(e, arguments)\n            }\n        }\n    }, function(t, e, n) {\n        t.exports = !n(15) && !n(29)(function() {\n            return 7 != Object.defineProperty(n(128)(\"div\"), \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(t, e, n) {\n        var r = n(28),\n            i = n(9).document,\n            o = r(i) && r(i.createElement);\n        t.exports = function(t) {\n            return o ? i.createElement(t) : {}\n        }\n    }, function(t, e, n) {\n        t.exports = n(26)\n    }, function(t, e, n) {\n        var r = n(16),\n            i = n(25),\n            o = n(215)(!1),\n            u = n(92)(\"IE_PROTO\");\n        t.exports = function(t, e) {\n            var n, a = i(t),\n                s = 0,\n                c = [];\n            for (n in a) n != u && r(a, n) && c.push(n);\n            for (; e.length > s;) r(a, n = e[s++]) && (~o(c, n) || c.push(n));\n            return c\n        }\n    }, function(t, e, n) {\n        var r = n(16),\n            i = n(56),\n            o = n(92)(\"IE_PROTO\"),\n            u = Object.prototype;\n        t.exports = Object.getPrototypeOf || function(t) {\n            return t = i(t), r(t, o) ? t[o] : \"function\" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype : t instanceof Object ? u : null\n        }\n    }, function(t, e, n) {\n        var r = n(86),\n            i = n(6)(\"toStringTag\"),\n            o = \"Arguments\" == r(function() {\n                return arguments\n            }());\n        t.exports = function(t) {\n            var e, n, u;\n            return void 0 === t ? \"Undefined\" : null === t ? \"Null\" : \"string\" == typeof(n = function(t, e) {\n                try {\n                    return t[e]\n                } catch (t) {}\n            }(e = Object(t), i)) ? n : o ? r(e) : \"Object\" == (u = r(e)) && \"function\" == typeof e.callee ? \"Arguments\" : u\n        }\n    }, function(t, e, n) {\n        var r = n(5),\n            i = r[\"__core-js_shared__\"] || (r[\"__core-js_shared__\"] = {});\n        t.exports = function(t) {\n            return i[t] || (i[t] = {})\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return {\n                enumerable: !(1 & t),\n                configurable: !(2 & t),\n                writable: !(4 & t),\n                value: e\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(136)(!0);\n        n(137)(String, \"String\", function(t) {\n            this._t = String(t), this._i = 0\n        }, function() {\n            var t, e = this._t,\n                n = this._i;\n            return n >= e.length ? {\n                value: void 0,\n                done: !0\n            } : (t = r(e, n), this._i += t.length, {\n                value: t,\n                done: !1\n            })\n        })\n    }, function(t, e, n) {\n        var r = n(59),\n            i = n(10);\n        t.exports = function(t) {\n            return function(e, n) {\n                var o, u, a = String(i(e)),\n                    s = r(n),\n                    c = a.length;\n                return s < 0 || s >= c ? t ? \"\" : void 0 : (o = a.charCodeAt(s)) < 55296 || o > 56319 || s + 1 === c || (u = a.charCodeAt(s + 1)) < 56320 || u > 57343 ? t ? a.charAt(s) : o : t ? a.slice(s, s + 2) : u - 56320 + (o - 55296 << 10) + 65536\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(138),\n            i = n(3),\n            o = n(30),\n            u = n(17),\n            a = n(44),\n            s = n(226),\n            c = n(101),\n            f = n(232),\n            l = n(1)(\"iterator\"),\n            p = !([].keys && \"next\" in [].keys()),\n            h = function() {\n                return this\n            };\n        t.exports = function(t, e, n, d, v, y, g) {\n            s(n, e, d);\n            var m, _, b, w = function(t) {\n                    if (!p && t in A) return A[t];\n                    switch (t) {\n                        case \"keys\":\n                        case \"values\":\n                            return function() {\n                                return new n(this, t)\n                            }\n                    }\n                    return function() {\n                        return new n(this, t)\n                    }\n                },\n                x = e + \" Iterator\",\n                S = \"values\" == v,\n                E = !1,\n                A = t.prototype,\n                O = A[l] || A[\"@@iterator\"] || v && A[v],\n                j = O || w(v),\n                k = v ? S ? w(\"entries\") : j : void 0,\n                I = \"Array\" == e && A.entries || O;\n            if (I && (b = f(I.call(new t))) !== Object.prototype && b.next && (c(b, x, !0), r || \"function\" == typeof b[l] || u(b, l, h)), S && O && \"values\" !== O.name && (E = !0, j = function() {\n                return O.call(this)\n            }), r && !g || !p && !E && A[l] || u(A, l, j), a[e] = j, a[x] = h, v)\n                if (m = {\n                    values: S ? j : w(\"values\"),\n                    keys: y ? j : w(\"keys\"),\n                    entries: k\n                }, g)\n                    for (_ in m) _ in A || o(A, _, m[_]);\n                else i(i.P + i.F * (p || E), e, m);\n            return m\n        }\n    }, function(t, e) {\n        t.exports = !1\n    }, function(t, e, n) {\n        var r = n(229),\n            i = n(141);\n        t.exports = Object.keys || function(t) {\n            return r(t, i)\n        }\n    }, function(t, e, n) {\n        var r = n(59),\n            i = Math.max,\n            o = Math.min;\n        t.exports = function(t, e) {\n            return (t = r(t)) < 0 ? i(t + e, 0) : o(t, e)\n        }\n    }, function(t, e) {\n        t.exports = \"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")\n    }, function(t, e, n) {\n        var r = n(5).document;\n        t.exports = r && r.documentElement\n    }, function(t, e, n) {\n        var r = n(18),\n            i = n(61),\n            o = n(1)(\"species\");\n        t.exports = function(t, e) {\n            var n, u = r(t).constructor;\n            return void 0 === u || void 0 == (n = r(u)[o]) ? e : i(n)\n        }\n    }, function(t, e, n) {\n        var r, i, o, u = n(60),\n            a = n(244),\n            s = n(142),\n            c = n(99),\n            f = n(5),\n            l = f.process,\n            p = f.setImmediate,\n            h = f.clearImmediate,\n            d = f.MessageChannel,\n            v = f.Dispatch,\n            y = 0,\n            g = {},\n            m = function() {\n                var t = +this;\n                if (g.hasOwnProperty(t)) {\n                    var e = g[t];\n                    delete g[t], e()\n                }\n            },\n            _ = function(t) {\n                m.call(t.data)\n            };\n        p && h || (p = function(t) {\n            for (var e = [], n = 1; arguments.length > n;) e.push(arguments[n++]);\n            return g[++y] = function() {\n                a(\"function\" == typeof t ? t : Function(t), e)\n            }, r(y), y\n        }, h = function(t) {\n            delete g[t]\n        }, \"process\" == n(41)(l) ? r = function(t) {\n            l.nextTick(u(m, t, 1))\n        } : v && v.now ? r = function(t) {\n            v.now(u(m, t, 1))\n        } : d ? (o = (i = new d).port2, i.port1.onmessage = _, r = u(o.postMessage, o, 1)) : f.addEventListener && \"function\" == typeof postMessage && !f.importScripts ? (r = function(t) {\n            f.postMessage(t + \"\", \"*\")\n        }, f.addEventListener(\"message\", _, !1)) : r = \"onreadystatechange\" in c(\"script\") ? function(t) {\n            s.appendChild(c(\"script\")).onreadystatechange = function() {\n                s.removeChild(this), m.call(t)\n            }\n        } : function(t) {\n            setTimeout(u(m, t, 1), 0)\n        }), t.exports = {\n            set: p,\n            clear: h\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            try {\n                return {\n                    e: !1,\n                    v: t()\n                }\n            } catch (t) {\n                return {\n                    e: !0,\n                    v: t\n                }\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(18),\n            i = n(31),\n            o = n(102);\n        t.exports = function(t, e) {\n            if (r(t), i(e) && e.constructor === t) return e;\n            var n = o.f(t);\n            return (0, n.resolve)(e), n.promise\n        }\n    }, function(t, e, n) {\n        var r = n(31),\n            i = n(41),\n            o = n(1)(\"match\");\n        t.exports = function(t) {\n            var e;\n            return r(t) && (void 0 !== (e = t[o]) ? !!e : \"RegExp\" == i(t))\n        }\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(282),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        var r = n(13),\n            i = n(2),\n            o = n(29);\n        t.exports = function(t, e) {\n            var n = (i.Object || {})[t] || Object[t],\n                u = {};\n            u[t] = e(n), r(r.S + r.F * o(function() {\n                n(1)\n            }), \"Object\", u)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0, e.default = function(t, e) {\n            if (!(t instanceof e)) throw new TypeError(\"Cannot call a class as a function\")\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0;\n        var r, i = n(152),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            };\n        e.default = function() {\n            function t(t, e) {\n                for (var n = 0; n < e.length; n++) {\n                    var r = e[n];\n                    r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), (0, o.default)(t, r.key, r)\n                }\n            }\n            return function(e, n, r) {\n                return n && t(e.prototype, n), r && t(e, r), e\n            }\n        }()\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(284),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0;\n        var r, i = n(105),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            };\n        e.default = function(t, e) {\n            if (!t) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n            return !e || \"object\" !== (void 0 === e ? \"undefined\" : (0, o.default)(e)) && \"function\" != typeof e ? t : e\n        }\n    }, function(t, e, n) {\n        var r = n(130),\n            i = n(94).concat(\"length\", \"prototype\");\n        e.f = Object.getOwnPropertyNames || function(t) {\n            return r(t, i)\n        }\n    }, function(t, e, n) {\n        var r = n(64),\n            i = n(54),\n            o = n(25),\n            u = n(89),\n            a = n(16),\n            s = n(127),\n            c = Object.getOwnPropertyDescriptor;\n        e.f = n(15) ? c : function(t, e) {\n            if (t = o(t), e = u(e, !0), s) try {\n                return c(t, e)\n            } catch (t) {}\n            if (a(t, e)) return i(!r.f.call(t, e), t[e])\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0;\n        var r = u(n(298)),\n            i = u(n(302)),\n            o = u(n(105));\n\n        function u(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        e.default = function(t, e) {\n            if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function, not \" + (void 0 === e ? \"undefined\" : (0, o.default)(e)));\n            t.prototype = (0, i.default)(e && e.prototype, {\n                constructor: {\n                    value: t,\n                    enumerable: !1,\n                    writable: !0,\n                    configurable: !0\n                }\n            }), e && (r.default ? (0, r.default)(t, e) : t.__proto__ = e)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(305)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(65),\n            i = n(46),\n            o = n(159),\n            u = (n(160), n(161));\n        n(20), n(306);\n\n        function a(t, e, n) {\n            this.props = t, this.context = e, this.refs = u, this.updater = n || o\n        }\n\n        function s(t, e, n) {\n            this.props = t, this.context = e, this.refs = u, this.updater = n || o\n        }\n\n        function c() {}\n        a.prototype.isReactComponent = {}, a.prototype.setState = function(t, e) {\n            \"object\" != typeof t && \"function\" != typeof t && null != t && r(\"85\"), this.updater.enqueueSetState(this, t), e && this.updater.enqueueCallback(this, e, \"setState\")\n        }, a.prototype.forceUpdate = function(t) {\n            this.updater.enqueueForceUpdate(this), t && this.updater.enqueueCallback(this, t, \"forceUpdate\")\n        }, c.prototype = a.prototype, s.prototype = new c, s.prototype.constructor = s, i(s.prototype, a.prototype), s.prototype.isPureReactComponent = !0, t.exports = {\n            Component: a,\n            PureComponent: s\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        n(66);\n        var r = {\n            isMounted: function(t) {\n                return !1\n            },\n            enqueueCallback: function(t, e) {},\n            enqueueForceUpdate: function(t) {},\n            enqueueReplaceState: function(t, e) {},\n            enqueueSetState: function(t, e) {}\n        };\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = !1;\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = {};\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = {\n            current: null\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && Symbol.for && Symbol.for(\"react.element\") || 60103;\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = \"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\"\n    }, function(t, e, n) {\n        t.exports = n(321)()\n    }, function(t, e, n) {\n        \"use strict\";\n        (function(t) {\n            Object.defineProperty(e, \"__esModule\", {\n                value: !0\n            }), e.getCommonExtensions = e.getExtensions = e.escapeDeepLinkPath = e.createDeepLinkPath = e.shallowEqualKeys = e.buildFormData = e.sorters = e.btoa = e.serializeSearch = e.parseSearch = e.getSampleSchema = e.validateParam = e.validatePattern = e.validateMinLength = e.validateMaxLength = e.validateGuid = e.validateDateTime = e.validateString = e.validateBoolean = e.validateFile = e.validateInteger = e.validateNumber = e.validateMinimum = e.validateMaximum = e.propChecker = e.memoize = e.isImmutable = void 0;\n            var r = b(n(327)),\n                i = b(n(329)),\n                o = b(n(84)),\n                u = b(n(333)),\n                a = b(n(337)),\n                s = b(n(105));\n            e.isJSONObject = function(t) {\n                try {\n                    var e = JSON.parse(t);\n                    if (e && \"object\" === (void 0 === e ? \"undefined\" : (0, s.default)(e))) return e\n                } catch (t) {}\n                return !1\n            }, e.objectify = function(t) {\n                return E(t) ? x(t) ? t.toJS() : t : {}\n            }, e.arrayify = function(t) {\n                return t ? t.toArray ? t.toArray() : S(t) : []\n            }, e.fromJSOrdered = function t(e) {\n                if (x(e)) return e;\n                if (e instanceof m.default.File) return e;\n                return E(e) ? Array.isArray(e) ? c.default.Seq(e).map(t).toList() : c.default.OrderedMap(e).map(t) : e\n            }, e.bindToState = function(t, e) {\n                var n = {};\n                return (0, a.default)(t).filter(function(e) {\n                    return \"function\" == typeof t[e]\n                }).forEach(function(r) {\n                    return n[r] = t[r].bind(null, e)\n                }), n\n            }, e.normalizeArray = S, e.isFn = function(t) {\n                return \"function\" == typeof t\n            }, e.isObject = E, e.isFunc = function(t) {\n                return \"function\" == typeof t\n            }, e.isArray = function(t) {\n                return Array.isArray(t)\n            }, e.objMap = function(t, e) {\n                return (0, a.default)(t).reduce(function(n, r) {\n                    return n[r] = e(t[r], r), n\n                }, {})\n            }, e.objReduce = function(t, e) {\n                return (0, a.default)(t).reduce(function(n, r) {\n                    var i = e(t[r], r);\n                    return i && \"object\" === (void 0 === i ? \"undefined\" : (0, s.default)(i)) && (0, u.default)(n, i), n\n                }, {})\n            }, e.systemThunkMiddleware = function(t) {\n                return function(e) {\n                    e.dispatch, e.getState;\n                    return function(e) {\n                        return function(n) {\n                            return \"function\" == typeof n ? n(t()) : e(n)\n                        }\n                    }\n                }\n            }, e.defaultStatusCode = function(t) {\n                var e = t.keySeq();\n                return e.contains(w) ? w : e.filter(function(t) {\n                    return \"2\" === (t + \"\")[0]\n                }).sort().first()\n            }, e.getList = function(t, e) {\n                if (!c.default.Iterable.isIterable(t)) return c.default.List();\n                var n = t.getIn(Array.isArray(e) ? e : [e]);\n                return c.default.List.isList(n) ? n : c.default.List()\n            }, e.highlight = function(t) {\n                var e = document;\n                if (!t) return \"\";\n                if (t.textContent.length > 5e3) return t.textContent;\n                return function(t) {\n                    for (var n, r, i, o, u, a = t.textContent, s = 0, c = a[0], f = 1, l = t.innerHTML = \"\", p = 0; r = n, n = p < 7 && \"\\\\\" == n ? 1 : f;) {\n                        if (f = c, c = a[++s], o = l.length > 1, !f || p > 8 && \"\\n\" == f || [/\\S/.test(f), 1, 1, !/[$\\w]/.test(f), (\"/\" == n || \"\\n\" == n) && o, '\"' == n && o, \"'\" == n && o, a[s - 4] + r + n == \"--\\x3e\", r + n == \"*/\"][p])\n                            for (l && (t.appendChild(u = e.createElement(\"span\")).setAttribute(\"style\", [\"color: #555; font-weight: bold;\", \"\", \"\", \"color: #555;\", \"\"][p ? p < 3 ? 2 : p > 6 ? 4 : p > 3 ? 3 : +/^(a(bstract|lias|nd|rguments|rray|s(m|sert)?|uto)|b(ase|egin|ool(ean)?|reak|yte)|c(ase|atch|har|hecked|lass|lone|ompl|onst|ontinue)|de(bugger|cimal|clare|f(ault|er)?|init|l(egate|ete)?)|do|double|e(cho|ls?if|lse(if)?|nd|nsure|num|vent|x(cept|ec|p(licit|ort)|te(nds|nsion|rn)))|f(allthrough|alse|inal(ly)?|ixed|loat|or(each)?|riend|rom|unc(tion)?)|global|goto|guard|i(f|mp(lements|licit|ort)|n(it|clude(_once)?|line|out|stanceof|t(erface|ernal)?)?|s)|l(ambda|et|ock|ong)|m(icrolight|odule|utable)|NaN|n(amespace|ative|ext|ew|il|ot|ull)|o(bject|perator|r|ut|verride)|p(ackage|arams|rivate|rotected|rotocol|ublic)|r(aise|e(adonly|do|f|gister|peat|quire(_once)?|scue|strict|try|turn))|s(byte|ealed|elf|hort|igned|izeof|tatic|tring|truct|ubscript|uper|ynchronized|witch)|t(emplate|hen|his|hrows?|ransient|rue|ry|ype(alias|def|id|name|of))|u(n(checked|def(ined)?|ion|less|signed|til)|se|sing)|v(ar|irtual|oid|olatile)|w(char_t|hen|here|hile|ith)|xor|yield)$/.test(l) : 0]), u.appendChild(e.createTextNode(l))), i = p && p < 7 ? p : i, l = \"\", p = 11; ![1, /[\\/{}[(\\-+*=<>:;|\\\\.,?!&@~]/.test(f), /[\\])]/.test(f), /[$\\w]/.test(f), \"/\" == f && i < 2 && \"<\" != n, '\"' == f, \"'\" == f, f + c + a[s + 1] + a[s + 2] == \"\\x3c!--\", f + c == \"/*\", f + c == \"//\", \"#\" == f][--p];);\n                        l += f\n                    }\n                }(t)\n            }, e.mapToList = function t(e) {\n                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"key\";\n                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : c.default.Map();\n                if (!c.default.Map.isMap(e) || !e.size) return c.default.List();\n                Array.isArray(n) || (n = [n]);\n                if (n.length < 1) return e.merge(r);\n                var u = c.default.List();\n                var a = n[0];\n                var s = !0;\n                var f = !1;\n                var l = void 0;\n                try {\n                    for (var p, h = (0, o.default)(e.entries()); !(s = (p = h.next()).done); s = !0) {\n                        var d = p.value,\n                            v = (0, i.default)(d, 2),\n                            y = v[0],\n                            g = v[1],\n                            m = t(g, n.slice(1), r.set(a, y));\n                        u = c.default.List.isList(m) ? u.concat(m) : u.push(m)\n                    }\n                } catch (t) {\n                    f = !0, l = t\n                } finally {\n                    try {\n                        !s && h.return && h.return()\n                    } finally {\n                        if (f) throw l\n                    }\n                }\n                return u\n            }, e.extractFileNameFromContentDispositionHeader = function(t) {\n                var e = /filename=\"([^;]*);?\"/i.exec(t);\n                null === e && (e = /filename=([^;]*);?/i.exec(t));\n                if (null !== e && e.length > 1) return e[1];\n                return null\n            }, e.pascalCase = A, e.pascalCaseFilename = function(t) {\n                return A(t.replace(/\\.[^./]*$/, \"\"))\n            }, e.sanitizeUrl = function(t) {\n                if (\"string\" != typeof t || \"\" === t) return \"\";\n                return (0, f.sanitizeUrl)(t)\n            }, e.getAcceptControllingResponse = function(t) {\n                if (!c.default.OrderedMap.isOrderedMap(t)) return null;\n                if (!t.size) return null;\n                var e = t.find(function(t, e) {\n                        return e.startsWith(\"2\") && (0, a.default)(t.get(\"content\") || {}).length > 0\n                    }),\n                    n = t.get(\"default\") || c.default.OrderedMap(),\n                    r = (n.get(\"content\") || c.default.OrderedMap()).keySeq().toJS().length ? n : null;\n                return e || r\n            }, e.deeplyStripKey = function t(e, n) {\n                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : function() {\n                    return !0\n                };\n                if (\"object\" !== (void 0 === e ? \"undefined\" : (0, s.default)(e)) || Array.isArray(e) || null === e || !n) return e;\n                var i = (0, u.default)({}, e);\n                (0, a.default)(i).forEach(function(e) {\n                    e === n && r(i[e], e) ? delete i[e] : i[e] = t(i[e], n, r)\n                });\n                return i\n            }, e.stringify = function(t) {\n                if (\"string\" == typeof t) return t;\n                t.toJS && (t = t.toJS());\n                if (\"object\" === (void 0 === t ? \"undefined\" : (0, s.default)(t)) && null !== t) try {\n                    return (0, r.default)(t, null, 2)\n                } catch (e) {\n                    return String(t)\n                }\n                return t.toString()\n            }, e.numberToString = function(t) {\n                if (\"number\" == typeof t) return t.toString();\n                return t\n            };\n            var c = b(n(168)),\n                f = n(340),\n                l = b(n(341)),\n                p = b(n(170)),\n                h = b(n(172)),\n                d = b(n(383)),\n                v = b(n(441)),\n                y = b(n(74)),\n                g = n(449),\n                m = b(n(123)),\n                _ = b(n(517));\n\n            function b(t) {\n                return t && t.__esModule ? t : {\n                    default: t\n                }\n            }\n            var w = \"default\",\n                x = e.isImmutable = function(t) {\n                    return c.default.Iterable.isIterable(t)\n                };\n\n            function S(t) {\n                return Array.isArray(t) ? t : [t]\n            }\n\n            function E(t) {\n                return !!t && \"object\" === (void 0 === t ? \"undefined\" : (0, s.default)(t))\n            }\n            e.memoize = h.default;\n\n            function A(t) {\n                return (0, p.default)((0, l.default)(t))\n            }\n            e.propChecker = function(t, e) {\n                var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : [],\n                    r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : [];\n                return (0, a.default)(t).length !== (0, a.default)(e).length || ((0, v.default)(t, function(t, n) {\n                    if (r.includes(n)) return !1;\n                    var i = e[n];\n                    return c.default.Iterable.isIterable(t) ? !c.default.is(t, i) : (\"object\" !== (void 0 === t ? \"undefined\" : (0, s.default)(t)) || \"object\" !== (void 0 === i ? \"undefined\" : (0, s.default)(i))) && t !== i\n                }) || n.some(function(n) {\n                    return !(0, y.default)(t[n], e[n])\n                }))\n            };\n            var O = e.validateMaximum = function(t, e) {\n                    if (t > e) return \"Value must be less than Maximum\"\n                },\n                j = e.validateMinimum = function(t, e) {\n                    if (t < e) return \"Value must be greater than Minimum\"\n                },\n                k = e.validateNumber = function(t) {\n                    if (!/^-?\\d+(\\.?\\d+)?$/.test(t)) return \"Value must be a number\"\n                },\n                I = e.validateInteger = function(t) {\n                    if (!/^-?\\d+$/.test(t)) return \"Value must be an integer\"\n                },\n                M = e.validateFile = function(t) {\n                    if (t && !(t instanceof m.default.File)) return \"Value must be a file\"\n                },\n                T = e.validateBoolean = function(t) {\n                    if (\"true\" !== t && \"false\" !== t && !0 !== t && !1 !== t) return \"Value must be a boolean\"\n                },\n                C = e.validateString = function(t) {\n                    if (t && \"string\" != typeof t) return \"Value must be a string\"\n                },\n                P = e.validateDateTime = function(t) {\n                    if (isNaN(Date.parse(t))) return \"Value must be a DateTime\"\n                },\n                R = e.validateGuid = function(t) {\n                    if (t = t.toString().toLowerCase(), !/^[{(]?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}[)}]?$/.test(t)) return \"Value must be a Guid\"\n                },\n                N = e.validateMaxLength = function(t, e) {\n                    if (t.length > e) return \"Value must be less than MaxLength\"\n                },\n                L = e.validateMinLength = function(t, e) {\n                    if (t.length < e) return \"Value must be greater than MinLength\"\n                },\n                D = e.validatePattern = function(t, e) {\n                    if (!new RegExp(e).test(t)) return \"Value must follow pattern \" + e\n                };\n            e.validateParam = function(t, e) {\n                var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],\n                    r = [],\n                    i = e && \"body\" === t.get(\"in\") ? t.get(\"value_xml\") : t.get(\"value\"),\n                    o = t.get(\"required\"),\n                    u = n ? t.get(\"schema\") : t;\n                if (!u) return r;\n                var a = u.get(\"maximum\"),\n                    f = u.get(\"minimum\"),\n                    l = u.get(\"type\"),\n                    p = u.get(\"format\"),\n                    h = u.get(\"maxLength\"),\n                    d = u.get(\"minLength\"),\n                    v = u.get(\"pattern\");\n                if (l && (o || i)) {\n                    var y = \"string\" === l && i,\n                        g = \"array\" === l && Array.isArray(i) && i.length,\n                        _ = \"array\" === l && c.default.List.isList(i) && i.count(),\n                        b = \"file\" === l && i instanceof m.default.File,\n                        w = \"boolean\" === l && (i || !1 === i),\n                        x = \"number\" === l && (i || 0 === i),\n                        S = \"integer\" === l && (i || 0 === i),\n                        E = !1;\n                    if (n && \"object\" === l)\n                        if (\"object\" === (void 0 === i ? \"undefined\" : (0, s.default)(i))) E = !0;\n                        else if (\"string\" == typeof i) try {\n                            JSON.parse(i), E = !0\n                        } catch (t) {\n                            return r.push(\"Parameter string value must be valid JSON\"), r\n                        }\n                    var A = [y, g, _, b, w, x, S, E].some(function(t) {\n                        return !!t\n                    });\n                    if (o && !A) return r.push(\"Required field is not provided\"), r;\n                    if (v) {\n                        var z = D(i, v);\n                        z && r.push(z)\n                    }\n                    if (h || 0 === h) {\n                        var F = N(i, h);\n                        F && r.push(F)\n                    }\n                    if (d) {\n                        var U = L(i, d);\n                        U && r.push(U)\n                    }\n                    if (a || 0 === a) {\n                        var B = O(i, a);\n                        B && r.push(B)\n                    }\n                    if (f || 0 === f) {\n                        var q = j(i, f);\n                        q && r.push(q)\n                    }\n                    if (\"string\" === l) {\n                        var Y = void 0;\n                        if (!(Y = \"date-time\" === p ? P(i) : \"uuid\" === p ? R(i) : C(i))) return r;\n                        r.push(Y)\n                    } else if (\"boolean\" === l) {\n                        var W = T(i);\n                        if (!W) return r;\n                        r.push(W)\n                    } else if (\"number\" === l) {\n                        var V = k(i);\n                        if (!V) return r;\n                        r.push(V)\n                    } else if (\"integer\" === l) {\n                        var K = I(i);\n                        if (!K) return r;\n                        r.push(K)\n                    } else if (\"array\" === l) {\n                        var G;\n                        if (!_ || !i.count()) return r;\n                        G = u.getIn([\"items\", \"type\"]), i.forEach(function(t, e) {\n                            var n = void 0;\n                            \"number\" === G ? n = k(t) : \"integer\" === G ? n = I(t) : \"string\" === G && (n = C(t)), n && r.push({\n                                index: e,\n                                error: n\n                            })\n                        })\n                    } else if (\"file\" === l) {\n                        var $ = M(i);\n                        if (!$) return r;\n                        r.push($)\n                    }\n                }\n                return r\n            }, e.getSampleSchema = function(t) {\n                var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : \"\",\n                    n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\n                if (/xml/.test(e)) {\n                    if (!t.xml || !t.xml.name) {\n                        if (t.xml = t.xml || {}, !t.$$ref) return t.type || t.items || t.properties || t.additionalProperties ? '<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n\\x3c!-- XML example cannot be generated --\\x3e' : null;\n                        var i = t.$$ref.match(/\\S*\\/(\\S+)$/);\n                        t.xml.name = i[1]\n                    }\n                    return (0, g.memoizedCreateXMLExample)(t, n)\n                }\n                var o = (0, g.memoizedSampleFromSchema)(t, n);\n                return \"object\" === (void 0 === o ? \"undefined\" : (0, s.default)(o)) ? (0, r.default)(o, null, 2) : o\n            }, e.parseSearch = function() {\n                var t = {},\n                    e = m.default.location.search;\n                if (!e) return {};\n                if (\"\" != e) {\n                    var n = e.substr(1).split(\"&\");\n                    for (var r in n) n.hasOwnProperty(r) && (r = n[r].split(\"=\"), t[decodeURIComponent(r[0])] = r[1] && decodeURIComponent(r[1]) || \"\")\n                }\n                return t\n            }, e.serializeSearch = function(t) {\n                return (0, a.default)(t).map(function(e) {\n                    return encodeURIComponent(e) + \"=\" + encodeURIComponent(t[e])\n                }).join(\"&\")\n            }, e.btoa = function(e) {\n                return (e instanceof t ? e : new t(e.toString(), \"utf-8\")).toString(\"base64\")\n            }, e.sorters = {\n                operationsSorter: {\n                    alpha: function(t, e) {\n                        return t.get(\"path\").localeCompare(e.get(\"path\"))\n                    },\n                    method: function(t, e) {\n                        return t.get(\"method\").localeCompare(e.get(\"method\"))\n                    }\n                },\n                tagsSorter: {\n                    alpha: function(t, e) {\n                        return t.localeCompare(e)\n                    }\n                }\n            }, e.buildFormData = function(t) {\n                var e = [];\n                for (var n in t) {\n                    var r = t[n];\n                    void 0 !== r && \"\" !== r && e.push([n, \"=\", encodeURIComponent(r).replace(/%20/g, \"+\")].join(\"\"))\n                }\n                return e.join(\"&\")\n            }, e.shallowEqualKeys = function(t, e, n) {\n                return !!(0, d.default)(n, function(n) {\n                    return (0, y.default)(t[n], e[n])\n                })\n            };\n            var z = e.createDeepLinkPath = function(t) {\n                return \"string\" == typeof t || t instanceof String ? t.trim().replace(/\\s/g, \"_\") : \"\"\n            };\n            e.escapeDeepLinkPath = function(t) {\n                return (0, _.default)(z(t))\n            }, e.getExtensions = function(t) {\n                return t.filter(function(t, e) {\n                    return /^x-/.test(e)\n                })\n            }, e.getCommonExtensions = function(t) {\n                return t.filter(function(t, e) {\n                    return /^pattern|maxLength|minLength|maximum|minimum/.test(e)\n                })\n            }\n        }).call(e, n(68).Buffer)\n    }, function(t, e) {\n        var n = {}.toString;\n        t.exports = Array.isArray || function(t) {\n            return \"[object Array]\" == n.call(t)\n        }\n    }, function(t, e, n) {\n        var r;\n        r = function() {\n            \"use strict\";\n            var t = Array.prototype.slice;\n\n            function e(t, e) {\n                e && (t.prototype = Object.create(e.prototype)), t.prototype.constructor = t\n            }\n\n            function n(t) {\n                return u(t) ? t : K(t)\n            }\n\n            function r(t) {\n                return a(t) ? t : G(t)\n            }\n\n            function i(t) {\n                return s(t) ? t : $(t)\n            }\n\n            function o(t) {\n                return u(t) && !c(t) ? t : H(t)\n            }\n\n            function u(t) {\n                return !(!t || !t[l])\n            }\n\n            function a(t) {\n                return !(!t || !t[p])\n            }\n\n            function s(t) {\n                return !(!t || !t[h])\n            }\n\n            function c(t) {\n                return a(t) || s(t)\n            }\n\n            function f(t) {\n                return !(!t || !t[d])\n            }\n            e(r, n), e(i, n), e(o, n), n.isIterable = u, n.isKeyed = a, n.isIndexed = s, n.isAssociative = c, n.isOrdered = f, n.Keyed = r, n.Indexed = i, n.Set = o;\n            var l = \"@@__IMMUTABLE_ITERABLE__@@\",\n                p = \"@@__IMMUTABLE_KEYED__@@\",\n                h = \"@@__IMMUTABLE_INDEXED__@@\",\n                d = \"@@__IMMUTABLE_ORDERED__@@\",\n                v = 5,\n                y = 1 << v,\n                g = y - 1,\n                m = {},\n                _ = {\n                    value: !1\n                },\n                b = {\n                    value: !1\n                };\n\n            function w(t) {\n                return t.value = !1, t\n            }\n\n            function x(t) {\n                t && (t.value = !0)\n            }\n\n            function S() {}\n\n            function E(t, e) {\n                e = e || 0;\n                for (var n = Math.max(0, t.length - e), r = new Array(n), i = 0; i < n; i++) r[i] = t[i + e];\n                return r\n            }\n\n            function A(t) {\n                return void 0 === t.size && (t.size = t.__iterate(j)), t.size\n            }\n\n            function O(t, e) {\n                if (\"number\" != typeof e) {\n                    var n = e >>> 0;\n                    if (\"\" + n !== e || 4294967295 === n) return NaN;\n                    e = n\n                }\n                return e < 0 ? A(t) + e : e\n            }\n\n            function j() {\n                return !0\n            }\n\n            function k(t, e, n) {\n                return (0 === t || void 0 !== n && t <= -n) && (void 0 === e || void 0 !== n && e >= n)\n            }\n\n            function I(t, e) {\n                return T(t, e, 0)\n            }\n\n            function M(t, e) {\n                return T(t, e, e)\n            }\n\n            function T(t, e, n) {\n                return void 0 === t ? n : t < 0 ? Math.max(0, e + t) : void 0 === e ? t : Math.min(e, t)\n            }\n            var C = 0,\n                P = 1,\n                R = 2,\n                N = \"function\" == typeof Symbol && Symbol.iterator,\n                L = \"@@iterator\",\n                D = N || L;\n\n            function z(t) {\n                this.next = t\n            }\n\n            function F(t, e, n, r) {\n                var i = 0 === t ? e : 1 === t ? n : [e, n];\n                return r ? r.value = i : r = {\n                    value: i,\n                    done: !1\n                }, r\n            }\n\n            function U() {\n                return {\n                    value: void 0,\n                    done: !0\n                }\n            }\n\n            function B(t) {\n                return !!W(t)\n            }\n\n            function q(t) {\n                return t && \"function\" == typeof t.next\n            }\n\n            function Y(t) {\n                var e = W(t);\n                return e && e.call(t)\n            }\n\n            function W(t) {\n                var e = t && (N && t[N] || t[L]);\n                if (\"function\" == typeof e) return e\n            }\n\n            function V(t) {\n                return t && \"number\" == typeof t.length\n            }\n\n            function K(t) {\n                return null === t || void 0 === t ? ot() : u(t) ? t.toSeq() : function(t) {\n                    var e = st(t) || \"object\" == typeof t && new et(t);\n                    if (!e) throw new TypeError(\"Expected Array or iterable object of values, or keyed object: \" + t);\n                    return e\n                }(t)\n            }\n\n            function G(t) {\n                return null === t || void 0 === t ? ot().toKeyedSeq() : u(t) ? a(t) ? t.toSeq() : t.fromEntrySeq() : ut(t)\n            }\n\n            function $(t) {\n                return null === t || void 0 === t ? ot() : u(t) ? a(t) ? t.entrySeq() : t.toIndexedSeq() : at(t)\n            }\n\n            function H(t) {\n                return (null === t || void 0 === t ? ot() : u(t) ? a(t) ? t.entrySeq() : t : at(t)).toSetSeq()\n            }\n            z.prototype.toString = function() {\n                return \"[Iterator]\"\n            }, z.KEYS = C, z.VALUES = P, z.ENTRIES = R, z.prototype.inspect = z.prototype.toSource = function() {\n                return this.toString()\n            }, z.prototype[D] = function() {\n                return this\n            }, e(K, n), K.of = function() {\n                return K(arguments)\n            }, K.prototype.toSeq = function() {\n                return this\n            }, K.prototype.toString = function() {\n                return this.__toString(\"Seq {\", \"}\")\n            }, K.prototype.cacheResult = function() {\n                return !this._cache && this.__iterateUncached && (this._cache = this.entrySeq().toArray(), this.size = this._cache.length), this\n            }, K.prototype.__iterate = function(t, e) {\n                return ct(this, t, e, !0)\n            }, K.prototype.__iterator = function(t, e) {\n                return ft(this, t, e, !0)\n            }, e(G, K), G.prototype.toKeyedSeq = function() {\n                return this\n            }, e($, K), $.of = function() {\n                return $(arguments)\n            }, $.prototype.toIndexedSeq = function() {\n                return this\n            }, $.prototype.toString = function() {\n                return this.__toString(\"Seq [\", \"]\")\n            }, $.prototype.__iterate = function(t, e) {\n                return ct(this, t, e, !1)\n            }, $.prototype.__iterator = function(t, e) {\n                return ft(this, t, e, !1)\n            }, e(H, K), H.of = function() {\n                return H(arguments)\n            }, H.prototype.toSetSeq = function() {\n                return this\n            }, K.isSeq = it, K.Keyed = G, K.Set = H, K.Indexed = $;\n            var J, Z, X, Q = \"@@__IMMUTABLE_SEQ__@@\";\n\n            function tt(t) {\n                this._array = t, this.size = t.length\n            }\n\n            function et(t) {\n                var e = Object.keys(t);\n                this._object = t, this._keys = e, this.size = e.length\n            }\n\n            function nt(t) {\n                this._iterable = t, this.size = t.length || t.size\n            }\n\n            function rt(t) {\n                this._iterator = t, this._iteratorCache = []\n            }\n\n            function it(t) {\n                return !(!t || !t[Q])\n            }\n\n            function ot() {\n                return J || (J = new tt([]))\n            }\n\n            function ut(t) {\n                var e = Array.isArray(t) ? new tt(t).fromEntrySeq() : q(t) ? new rt(t).fromEntrySeq() : B(t) ? new nt(t).fromEntrySeq() : \"object\" == typeof t ? new et(t) : void 0;\n                if (!e) throw new TypeError(\"Expected Array or iterable object of [k, v] entries, or keyed object: \" + t);\n                return e\n            }\n\n            function at(t) {\n                var e = st(t);\n                if (!e) throw new TypeError(\"Expected Array or iterable object of values: \" + t);\n                return e\n            }\n\n            function st(t) {\n                return V(t) ? new tt(t) : q(t) ? new rt(t) : B(t) ? new nt(t) : void 0\n            }\n\n            function ct(t, e, n, r) {\n                var i = t._cache;\n                if (i) {\n                    for (var o = i.length - 1, u = 0; u <= o; u++) {\n                        var a = i[n ? o - u : u];\n                        if (!1 === e(a[1], r ? a[0] : u, t)) return u + 1\n                    }\n                    return u\n                }\n                return t.__iterateUncached(e, n)\n            }\n\n            function ft(t, e, n, r) {\n                var i = t._cache;\n                if (i) {\n                    var o = i.length - 1,\n                        u = 0;\n                    return new z(function() {\n                        var t = i[n ? o - u : u];\n                        return u++ > o ? {\n                            value: void 0,\n                            done: !0\n                        } : F(e, r ? t[0] : u - 1, t[1])\n                    })\n                }\n                return t.__iteratorUncached(e, n)\n            }\n\n            function lt(t, e) {\n                return e ? function t(e, n, r, i) {\n                    if (Array.isArray(n)) return e.call(i, r, $(n).map(function(r, i) {\n                        return t(e, r, i, n)\n                    }));\n                    if (ht(n)) return e.call(i, r, G(n).map(function(r, i) {\n                        return t(e, r, i, n)\n                    }));\n                    return n\n                }(e, t, \"\", {\n                    \"\": t\n                }) : pt(t)\n            }\n\n            function pt(t) {\n                return Array.isArray(t) ? $(t).map(pt).toList() : ht(t) ? G(t).map(pt).toMap() : t\n            }\n\n            function ht(t) {\n                return t && (t.constructor === Object || void 0 === t.constructor)\n            }\n\n            function dt(t, e) {\n                if (t === e || t != t && e != e) return !0;\n                if (!t || !e) return !1;\n                if (\"function\" == typeof t.valueOf && \"function\" == typeof e.valueOf) {\n                    if ((t = t.valueOf()) === (e = e.valueOf()) || t != t && e != e) return !0;\n                    if (!t || !e) return !1\n                }\n                return !(\"function\" != typeof t.equals || \"function\" != typeof e.equals || !t.equals(e))\n            }\n\n            function vt(t, e) {\n                if (t === e) return !0;\n                if (!u(e) || void 0 !== t.size && void 0 !== e.size && t.size !== e.size || void 0 !== t.__hash && void 0 !== e.__hash && t.__hash !== e.__hash || a(t) !== a(e) || s(t) !== s(e) || f(t) !== f(e)) return !1;\n                if (0 === t.size && 0 === e.size) return !0;\n                var n = !c(t);\n                if (f(t)) {\n                    var r = t.entries();\n                    return e.every(function(t, e) {\n                        var i = r.next().value;\n                        return i && dt(i[1], t) && (n || dt(i[0], e))\n                    }) && r.next().done\n                }\n                var i = !1;\n                if (void 0 === t.size)\n                    if (void 0 === e.size) \"function\" == typeof t.cacheResult && t.cacheResult();\n                    else {\n                        i = !0;\n                        var o = t;\n                        t = e, e = o\n                    }\n                var l = !0,\n                    p = e.__iterate(function(e, r) {\n                        if (n ? !t.has(e) : i ? !dt(e, t.get(r, m)) : !dt(t.get(r, m), e)) return l = !1, !1\n                    });\n                return l && t.size === p\n            }\n\n            function yt(t, e) {\n                if (!(this instanceof yt)) return new yt(t, e);\n                if (this._value = t, this.size = void 0 === e ? 1 / 0 : Math.max(0, e), 0 === this.size) {\n                    if (Z) return Z;\n                    Z = this\n                }\n            }\n\n            function gt(t, e) {\n                if (!t) throw new Error(e)\n            }\n\n            function mt(t, e, n) {\n                if (!(this instanceof mt)) return new mt(t, e, n);\n                if (gt(0 !== n, \"Cannot step a Range by 0\"), t = t || 0, void 0 === e && (e = 1 / 0), n = void 0 === n ? 1 : Math.abs(n), e < t && (n = -n), this._start = t, this._end = e, this._step = n, this.size = Math.max(0, Math.ceil((e - t) / n - 1) + 1), 0 === this.size) {\n                    if (X) return X;\n                    X = this\n                }\n            }\n\n            function _t() {\n                throw TypeError(\"Abstract\")\n            }\n\n            function bt() {}\n\n            function wt() {}\n\n            function xt() {}\n            K.prototype[Q] = !0, e(tt, $), tt.prototype.get = function(t, e) {\n                return this.has(t) ? this._array[O(this, t)] : e\n            }, tt.prototype.__iterate = function(t, e) {\n                for (var n = this._array, r = n.length - 1, i = 0; i <= r; i++)\n                    if (!1 === t(n[e ? r - i : i], i, this)) return i + 1;\n                return i\n            }, tt.prototype.__iterator = function(t, e) {\n                var n = this._array,\n                    r = n.length - 1,\n                    i = 0;\n                return new z(function() {\n                    return i > r ? {\n                        value: void 0,\n                        done: !0\n                    } : F(t, i, n[e ? r - i++ : i++])\n                })\n            }, e(et, G), et.prototype.get = function(t, e) {\n                return void 0 === e || this.has(t) ? this._object[t] : e\n            }, et.prototype.has = function(t) {\n                return this._object.hasOwnProperty(t)\n            }, et.prototype.__iterate = function(t, e) {\n                for (var n = this._object, r = this._keys, i = r.length - 1, o = 0; o <= i; o++) {\n                    var u = r[e ? i - o : o];\n                    if (!1 === t(n[u], u, this)) return o + 1\n                }\n                return o\n            }, et.prototype.__iterator = function(t, e) {\n                var n = this._object,\n                    r = this._keys,\n                    i = r.length - 1,\n                    o = 0;\n                return new z(function() {\n                    var u = r[e ? i - o : o];\n                    return o++ > i ? {\n                        value: void 0,\n                        done: !0\n                    } : F(t, u, n[u])\n                })\n            }, et.prototype[d] = !0, e(nt, $), nt.prototype.__iterateUncached = function(t, e) {\n                if (e) return this.cacheResult().__iterate(t, e);\n                var n = Y(this._iterable),\n                    r = 0;\n                if (q(n))\n                    for (var i; !(i = n.next()).done && !1 !== t(i.value, r++, this););\n                return r\n            }, nt.prototype.__iteratorUncached = function(t, e) {\n                if (e) return this.cacheResult().__iterator(t, e);\n                var n = Y(this._iterable);\n                if (!q(n)) return new z(U);\n                var r = 0;\n                return new z(function() {\n                    var e = n.next();\n                    return e.done ? e : F(t, r++, e.value)\n                })\n            }, e(rt, $), rt.prototype.__iterateUncached = function(t, e) {\n                if (e) return this.cacheResult().__iterate(t, e);\n                for (var n, r = this._iterator, i = this._iteratorCache, o = 0; o < i.length;)\n                    if (!1 === t(i[o], o++, this)) return o;\n                for (; !(n = r.next()).done;) {\n                    var u = n.value;\n                    if (i[o] = u, !1 === t(u, o++, this)) break\n                }\n                return o\n            }, rt.prototype.__iteratorUncached = function(t, e) {\n                if (e) return this.cacheResult().__iterator(t, e);\n                var n = this._iterator,\n                    r = this._iteratorCache,\n                    i = 0;\n                return new z(function() {\n                    if (i >= r.length) {\n                        var e = n.next();\n                        if (e.done) return e;\n                        r[i] = e.value\n                    }\n                    return F(t, i, r[i++])\n                })\n            }, e(yt, $), yt.prototype.toString = function() {\n                return 0 === this.size ? \"Repeat []\" : \"Repeat [ \" + this._value + \" \" + this.size + \" times ]\"\n            }, yt.prototype.get = function(t, e) {\n                return this.has(t) ? this._value : e\n            }, yt.prototype.includes = function(t) {\n                return dt(this._value, t)\n            }, yt.prototype.slice = function(t, e) {\n                var n = this.size;\n                return k(t, e, n) ? this : new yt(this._value, M(e, n) - I(t, n))\n            }, yt.prototype.reverse = function() {\n                return this\n            }, yt.prototype.indexOf = function(t) {\n                return dt(this._value, t) ? 0 : -1\n            }, yt.prototype.lastIndexOf = function(t) {\n                return dt(this._value, t) ? this.size : -1\n            }, yt.prototype.__iterate = function(t, e) {\n                for (var n = 0; n < this.size; n++)\n                    if (!1 === t(this._value, n, this)) return n + 1;\n                return n\n            }, yt.prototype.__iterator = function(t, e) {\n                var n = this,\n                    r = 0;\n                return new z(function() {\n                    return r < n.size ? F(t, r++, n._value) : {\n                        value: void 0,\n                        done: !0\n                    }\n                })\n            }, yt.prototype.equals = function(t) {\n                return t instanceof yt ? dt(this._value, t._value) : vt(t)\n            }, e(mt, $), mt.prototype.toString = function() {\n                return 0 === this.size ? \"Range []\" : \"Range [ \" + this._start + \"...\" + this._end + (1 !== this._step ? \" by \" + this._step : \"\") + \" ]\"\n            }, mt.prototype.get = function(t, e) {\n                return this.has(t) ? this._start + O(this, t) * this._step : e\n            }, mt.prototype.includes = function(t) {\n                var e = (t - this._start) / this._step;\n                return e >= 0 && e < this.size && e === Math.floor(e)\n            }, mt.prototype.slice = function(t, e) {\n                return k(t, e, this.size) ? this : (t = I(t, this.size), (e = M(e, this.size)) <= t ? new mt(0, 0) : new mt(this.get(t, this._end), this.get(e, this._end), this._step))\n            }, mt.prototype.indexOf = function(t) {\n                var e = t - this._start;\n                if (e % this._step == 0) {\n                    var n = e / this._step;\n                    if (n >= 0 && n < this.size) return n\n                }\n                return -1\n            }, mt.prototype.lastIndexOf = function(t) {\n                return this.indexOf(t)\n            }, mt.prototype.__iterate = function(t, e) {\n                for (var n = this.size - 1, r = this._step, i = e ? this._start + n * r : this._start, o = 0; o <= n; o++) {\n                    if (!1 === t(i, o, this)) return o + 1;\n                    i += e ? -r : r\n                }\n                return o\n            }, mt.prototype.__iterator = function(t, e) {\n                var n = this.size - 1,\n                    r = this._step,\n                    i = e ? this._start + n * r : this._start,\n                    o = 0;\n                return new z(function() {\n                    var u = i;\n                    return i += e ? -r : r, o > n ? {\n                        value: void 0,\n                        done: !0\n                    } : F(t, o++, u)\n                })\n            }, mt.prototype.equals = function(t) {\n                return t instanceof mt ? this._start === t._start && this._end === t._end && this._step === t._step : vt(this, t)\n            }, e(_t, n), e(bt, _t), e(wt, _t), e(xt, _t), _t.Keyed = bt, _t.Indexed = wt, _t.Set = xt;\n            var St = \"function\" == typeof Math.imul && -2 === Math.imul(4294967295, 2) ? Math.imul : function(t, e) {\n                var n = 65535 & (t |= 0),\n                    r = 65535 & (e |= 0);\n                return n * r + ((t >>> 16) * r + n * (e >>> 16) << 16 >>> 0) | 0\n            };\n\n            function Et(t) {\n                return t >>> 1 & 1073741824 | 3221225471 & t\n            }\n\n            function At(t) {\n                if (!1 === t || null === t || void 0 === t) return 0;\n                if (\"function\" == typeof t.valueOf && (!1 === (t = t.valueOf()) || null === t || void 0 === t)) return 0;\n                if (!0 === t) return 1;\n                var e = typeof t;\n                if (\"number\" === e) {\n                    if (t != t || t === 1 / 0) return 0;\n                    var n = 0 | t;\n                    for (n !== t && (n ^= 4294967295 * t); t > 4294967295;) n ^= t /= 4294967295;\n                    return Et(n)\n                }\n                if (\"string\" === e) return t.length > Pt ? function(t) {\n                    var e = Lt[t];\n                    void 0 === e && (e = Ot(t), Nt === Rt && (Nt = 0, Lt = {}), Nt++, Lt[t] = e);\n                    return e\n                }(t) : Ot(t);\n                if (\"function\" == typeof t.hashCode) return t.hashCode();\n                if (\"object\" === e) return function(t) {\n                    var e;\n                    if (Mt && void 0 !== (e = It.get(t))) return e;\n                    if (void 0 !== (e = t[Ct])) return e;\n                    if (!kt) {\n                        if (void 0 !== (e = t.propertyIsEnumerable && t.propertyIsEnumerable[Ct])) return e;\n                        if (void 0 !== (e = function(t) {\n                            if (t && t.nodeType > 0) switch (t.nodeType) {\n                                case 1:\n                                    return t.uniqueID;\n                                case 9:\n                                    return t.documentElement && t.documentElement.uniqueID\n                            }\n                        }(t))) return e\n                    }\n                    e = ++Tt, 1073741824 & Tt && (Tt = 0);\n                    if (Mt) It.set(t, e);\n                    else {\n                        if (void 0 !== jt && !1 === jt(t)) throw new Error(\"Non-extensible objects are not allowed as keys.\");\n                        if (kt) Object.defineProperty(t, Ct, {\n                            enumerable: !1,\n                            configurable: !1,\n                            writable: !1,\n                            value: e\n                        });\n                        else if (void 0 !== t.propertyIsEnumerable && t.propertyIsEnumerable === t.constructor.prototype.propertyIsEnumerable) t.propertyIsEnumerable = function() {\n                            return this.constructor.prototype.propertyIsEnumerable.apply(this, arguments)\n                        }, t.propertyIsEnumerable[Ct] = e;\n                        else {\n                            if (void 0 === t.nodeType) throw new Error(\"Unable to set a non-enumerable property on object.\");\n                            t[Ct] = e\n                        }\n                    }\n                    return e\n                }(t);\n                if (\"function\" == typeof t.toString) return Ot(t.toString());\n                throw new Error(\"Value type \" + e + \" cannot be hashed.\")\n            }\n\n            function Ot(t) {\n                for (var e = 0, n = 0; n < t.length; n++) e = 31 * e + t.charCodeAt(n) | 0;\n                return Et(e)\n            }\n            var jt = Object.isExtensible,\n                kt = function() {\n                    try {\n                        return Object.defineProperty({}, \"@\", {}), !0\n                    } catch (t) {\n                        return !1\n                    }\n                }();\n            var It, Mt = \"function\" == typeof WeakMap;\n            Mt && (It = new WeakMap);\n            var Tt = 0,\n                Ct = \"__immutablehash__\";\n            \"function\" == typeof Symbol && (Ct = Symbol(Ct));\n            var Pt = 16,\n                Rt = 255,\n                Nt = 0,\n                Lt = {};\n\n            function Dt(t) {\n                gt(t !== 1 / 0, \"Cannot perform this action with an infinite size.\")\n            }\n\n            function zt(t) {\n                return null === t || void 0 === t ? Xt() : Ft(t) && !f(t) ? t : Xt().withMutations(function(e) {\n                    var n = r(t);\n                    Dt(n.size), n.forEach(function(t, n) {\n                        return e.set(n, t)\n                    })\n                })\n            }\n\n            function Ft(t) {\n                return !(!t || !t[Bt])\n            }\n            e(zt, bt), zt.of = function() {\n                var e = t.call(arguments, 0);\n                return Xt().withMutations(function(t) {\n                    for (var n = 0; n < e.length; n += 2) {\n                        if (n + 1 >= e.length) throw new Error(\"Missing value for key: \" + e[n]);\n                        t.set(e[n], e[n + 1])\n                    }\n                })\n            }, zt.prototype.toString = function() {\n                return this.__toString(\"Map {\", \"}\")\n            }, zt.prototype.get = function(t, e) {\n                return this._root ? this._root.get(0, void 0, t, e) : e\n            }, zt.prototype.set = function(t, e) {\n                return Qt(this, t, e)\n            }, zt.prototype.setIn = function(t, e) {\n                return this.updateIn(t, m, function() {\n                    return e\n                })\n            }, zt.prototype.remove = function(t) {\n                return Qt(this, t, m)\n            }, zt.prototype.deleteIn = function(t) {\n                return this.updateIn(t, function() {\n                    return m\n                })\n            }, zt.prototype.update = function(t, e, n) {\n                return 1 === arguments.length ? t(this) : this.updateIn([t], e, n)\n            }, zt.prototype.updateIn = function(t, e, n) {\n                n || (n = e, e = void 0);\n                var r = function t(e, n, r, i) {\n                    var o = e === m;\n                    var u = n.next();\n                    if (u.done) {\n                        var a = o ? r : e,\n                            s = i(a);\n                        return s === a ? e : s\n                    }\n                    gt(o || e && e.set, \"invalid keyPath\");\n                    var c = u.value;\n                    var f = o ? m : e.get(c, m);\n                    var l = t(f, n, r, i);\n                    return l === f ? e : l === m ? e.remove(c) : (o ? Xt() : e).set(c, l)\n                }(this, nn(t), e, n);\n                return r === m ? void 0 : r\n            }, zt.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = 0, this._root = null, this.__hash = void 0, this.__altered = !0, this) : Xt()\n            }, zt.prototype.merge = function() {\n                return re(this, void 0, arguments)\n            }, zt.prototype.mergeWith = function(e) {\n                return re(this, e, t.call(arguments, 1))\n            }, zt.prototype.mergeIn = function(e) {\n                var n = t.call(arguments, 1);\n                return this.updateIn(e, Xt(), function(t) {\n                    return \"function\" == typeof t.merge ? t.merge.apply(t, n) : n[n.length - 1]\n                })\n            }, zt.prototype.mergeDeep = function() {\n                return re(this, ie, arguments)\n            }, zt.prototype.mergeDeepWith = function(e) {\n                var n = t.call(arguments, 1);\n                return re(this, oe(e), n)\n            }, zt.prototype.mergeDeepIn = function(e) {\n                var n = t.call(arguments, 1);\n                return this.updateIn(e, Xt(), function(t) {\n                    return \"function\" == typeof t.mergeDeep ? t.mergeDeep.apply(t, n) : n[n.length - 1]\n                })\n            }, zt.prototype.sort = function(t) {\n                return Ie(Ve(this, t))\n            }, zt.prototype.sortBy = function(t, e) {\n                return Ie(Ve(this, e, t))\n            }, zt.prototype.withMutations = function(t) {\n                var e = this.asMutable();\n                return t(e), e.wasAltered() ? e.__ensureOwner(this.__ownerID) : this\n            }, zt.prototype.asMutable = function() {\n                return this.__ownerID ? this : this.__ensureOwner(new S)\n            }, zt.prototype.asImmutable = function() {\n                return this.__ensureOwner()\n            }, zt.prototype.wasAltered = function() {\n                return this.__altered\n            }, zt.prototype.__iterator = function(t, e) {\n                return new $t(this, t, e)\n            }, zt.prototype.__iterate = function(t, e) {\n                var n = this,\n                    r = 0;\n                return this._root && this._root.iterate(function(e) {\n                    return r++, t(e[1], e[0], n)\n                }, e), r\n            }, zt.prototype.__ensureOwner = function(t) {\n                return t === this.__ownerID ? this : t ? Zt(this.size, this._root, t, this.__hash) : (this.__ownerID = t, this.__altered = !1, this)\n            }, zt.isMap = Ft;\n            var Ut, Bt = \"@@__IMMUTABLE_MAP__@@\",\n                qt = zt.prototype;\n\n            function Yt(t, e) {\n                this.ownerID = t, this.entries = e\n            }\n\n            function Wt(t, e, n) {\n                this.ownerID = t, this.bitmap = e, this.nodes = n\n            }\n\n            function Vt(t, e, n) {\n                this.ownerID = t, this.count = e, this.nodes = n\n            }\n\n            function Kt(t, e, n) {\n                this.ownerID = t, this.keyHash = e, this.entries = n\n            }\n\n            function Gt(t, e, n) {\n                this.ownerID = t, this.keyHash = e, this.entry = n\n            }\n\n            function $t(t, e, n) {\n                this._type = e, this._reverse = n, this._stack = t._root && Jt(t._root)\n            }\n\n            function Ht(t, e) {\n                return F(t, e[0], e[1])\n            }\n\n            function Jt(t, e) {\n                return {\n                    node: t,\n                    index: 0,\n                    __prev: e\n                }\n            }\n\n            function Zt(t, e, n, r) {\n                var i = Object.create(qt);\n                return i.size = t, i._root = e, i.__ownerID = n, i.__hash = r, i.__altered = !1, i\n            }\n\n            function Xt() {\n                return Ut || (Ut = Zt(0))\n            }\n\n            function Qt(t, e, n) {\n                var r, i;\n                if (t._root) {\n                    var o = w(_),\n                        u = w(b);\n                    if (r = te(t._root, t.__ownerID, 0, void 0, e, n, o, u), !u.value) return t;\n                    i = t.size + (o.value ? n === m ? -1 : 1 : 0)\n                } else {\n                    if (n === m) return t;\n                    i = 1, r = new Yt(t.__ownerID, [\n                        [e, n]\n                    ])\n                }\n                return t.__ownerID ? (t.size = i, t._root = r, t.__hash = void 0, t.__altered = !0, t) : r ? Zt(i, r) : Xt()\n            }\n\n            function te(t, e, n, r, i, o, u, a) {\n                return t ? t.update(e, n, r, i, o, u, a) : o === m ? t : (x(a), x(u), new Gt(e, r, [i, o]))\n            }\n\n            function ee(t) {\n                return t.constructor === Gt || t.constructor === Kt\n            }\n\n            function ne(t, e, n, r, i) {\n                if (t.keyHash === r) return new Kt(e, r, [t.entry, i]);\n                var o, u = (0 === n ? t.keyHash : t.keyHash >>> n) & g,\n                    a = (0 === n ? r : r >>> n) & g;\n                return new Wt(e, 1 << u | 1 << a, u === a ? [ne(t, e, n + v, r, i)] : (o = new Gt(e, r, i), u < a ? [t, o] : [o, t]))\n            }\n\n            function re(t, e, n) {\n                for (var i = [], o = 0; o < n.length; o++) {\n                    var a = n[o],\n                        s = r(a);\n                    u(a) || (s = s.map(function(t) {\n                        return lt(t)\n                    })), i.push(s)\n                }\n                return ue(t, e, i)\n            }\n\n            function ie(t, e, n) {\n                return t && t.mergeDeep && u(e) ? t.mergeDeep(e) : dt(t, e) ? t : e\n            }\n\n            function oe(t) {\n                return function(e, n, r) {\n                    if (e && e.mergeDeepWith && u(n)) return e.mergeDeepWith(t, n);\n                    var i = t(e, n, r);\n                    return dt(e, i) ? e : i\n                }\n            }\n\n            function ue(t, e, n) {\n                return 0 === (n = n.filter(function(t) {\n                    return 0 !== t.size\n                })).length ? t : 0 !== t.size || t.__ownerID || 1 !== n.length ? t.withMutations(function(t) {\n                    for (var r = e ? function(n, r) {\n                        t.update(r, m, function(t) {\n                            return t === m ? n : e(t, n, r)\n                        })\n                    } : function(e, n) {\n                        t.set(n, e)\n                    }, i = 0; i < n.length; i++) n[i].forEach(r)\n                }) : t.constructor(n[0])\n            }\n\n            function ae(t) {\n                return t = (t = (858993459 & (t -= t >> 1 & 1431655765)) + (t >> 2 & 858993459)) + (t >> 4) & 252645135, t += t >> 8, 127 & (t += t >> 16)\n            }\n\n            function se(t, e, n, r) {\n                var i = r ? t : E(t);\n                return i[e] = n, i\n            }\n            qt[Bt] = !0, qt.delete = qt.remove, qt.removeIn = qt.deleteIn, Yt.prototype.get = function(t, e, n, r) {\n                for (var i = this.entries, o = 0, u = i.length; o < u; o++)\n                    if (dt(n, i[o][0])) return i[o][1];\n                return r\n            }, Yt.prototype.update = function(t, e, n, r, i, o, u) {\n                for (var a = i === m, s = this.entries, c = 0, f = s.length; c < f && !dt(r, s[c][0]); c++);\n                var l = c < f;\n                if (l ? s[c][1] === i : a) return this;\n                if (x(u), (a || !l) && x(o), !a || 1 !== s.length) {\n                    if (!l && !a && s.length >= ce) return function(t, e, n, r) {\n                        t || (t = new S);\n                        for (var i = new Gt(t, At(n), [n, r]), o = 0; o < e.length; o++) {\n                            var u = e[o];\n                            i = i.update(t, 0, void 0, u[0], u[1])\n                        }\n                        return i\n                    }(t, s, r, i);\n                    var p = t && t === this.ownerID,\n                        h = p ? s : E(s);\n                    return l ? a ? c === f - 1 ? h.pop() : h[c] = h.pop() : h[c] = [r, i] : h.push([r, i]), p ? (this.entries = h, this) : new Yt(t, h)\n                }\n            }, Wt.prototype.get = function(t, e, n, r) {\n                void 0 === e && (e = At(n));\n                var i = 1 << ((0 === t ? e : e >>> t) & g),\n                    o = this.bitmap;\n                return 0 == (o & i) ? r : this.nodes[ae(o & i - 1)].get(t + v, e, n, r)\n            }, Wt.prototype.update = function(t, e, n, r, i, o, u) {\n                void 0 === n && (n = At(r));\n                var a = (0 === e ? n : n >>> e) & g,\n                    s = 1 << a,\n                    c = this.bitmap,\n                    f = 0 != (c & s);\n                if (!f && i === m) return this;\n                var l = ae(c & s - 1),\n                    p = this.nodes,\n                    h = f ? p[l] : void 0,\n                    d = te(h, t, e + v, n, r, i, o, u);\n                if (d === h) return this;\n                if (!f && d && p.length >= fe) return function(t, e, n, r, i) {\n                    for (var o = 0, u = new Array(y), a = 0; 0 !== n; a++, n >>>= 1) u[a] = 1 & n ? e[o++] : void 0;\n                    return u[r] = i, new Vt(t, o + 1, u)\n                }(t, p, c, a, d);\n                if (f && !d && 2 === p.length && ee(p[1 ^ l])) return p[1 ^ l];\n                if (f && d && 1 === p.length && ee(d)) return d;\n                var _ = t && t === this.ownerID,\n                    b = f ? d ? c : c ^ s : c | s,\n                    w = f ? d ? se(p, l, d, _) : function(t, e, n) {\n                        var r = t.length - 1;\n                        if (n && e === r) return t.pop(), t;\n                        for (var i = new Array(r), o = 0, u = 0; u < r; u++) u === e && (o = 1), i[u] = t[u + o];\n                        return i\n                    }(p, l, _) : function(t, e, n, r) {\n                        var i = t.length + 1;\n                        if (r && e + 1 === i) return t[e] = n, t;\n                        for (var o = new Array(i), u = 0, a = 0; a < i; a++) a === e ? (o[a] = n, u = -1) : o[a] = t[a + u];\n                        return o\n                    }(p, l, d, _);\n                return _ ? (this.bitmap = b, this.nodes = w, this) : new Wt(t, b, w)\n            }, Vt.prototype.get = function(t, e, n, r) {\n                void 0 === e && (e = At(n));\n                var i = (0 === t ? e : e >>> t) & g,\n                    o = this.nodes[i];\n                return o ? o.get(t + v, e, n, r) : r\n            }, Vt.prototype.update = function(t, e, n, r, i, o, u) {\n                void 0 === n && (n = At(r));\n                var a = (0 === e ? n : n >>> e) & g,\n                    s = i === m,\n                    c = this.nodes,\n                    f = c[a];\n                if (s && !f) return this;\n                var l = te(f, t, e + v, n, r, i, o, u);\n                if (l === f) return this;\n                var p = this.count;\n                if (f) {\n                    if (!l && --p < le) return function(t, e, n, r) {\n                        for (var i = 0, o = 0, u = new Array(n), a = 0, s = 1, c = e.length; a < c; a++, s <<= 1) {\n                            var f = e[a];\n                            void 0 !== f && a !== r && (i |= s, u[o++] = f)\n                        }\n                        return new Wt(t, i, u)\n                    }(t, c, p, a)\n                } else p++;\n                var h = t && t === this.ownerID,\n                    d = se(c, a, l, h);\n                return h ? (this.count = p, this.nodes = d, this) : new Vt(t, p, d)\n            }, Kt.prototype.get = function(t, e, n, r) {\n                for (var i = this.entries, o = 0, u = i.length; o < u; o++)\n                    if (dt(n, i[o][0])) return i[o][1];\n                return r\n            }, Kt.prototype.update = function(t, e, n, r, i, o, u) {\n                void 0 === n && (n = At(r));\n                var a = i === m;\n                if (n !== this.keyHash) return a ? this : (x(u), x(o), ne(this, t, e, n, [r, i]));\n                for (var s = this.entries, c = 0, f = s.length; c < f && !dt(r, s[c][0]); c++);\n                var l = c < f;\n                if (l ? s[c][1] === i : a) return this;\n                if (x(u), (a || !l) && x(o), a && 2 === f) return new Gt(t, this.keyHash, s[1 ^ c]);\n                var p = t && t === this.ownerID,\n                    h = p ? s : E(s);\n                return l ? a ? c === f - 1 ? h.pop() : h[c] = h.pop() : h[c] = [r, i] : h.push([r, i]), p ? (this.entries = h, this) : new Kt(t, this.keyHash, h)\n            }, Gt.prototype.get = function(t, e, n, r) {\n                return dt(n, this.entry[0]) ? this.entry[1] : r\n            }, Gt.prototype.update = function(t, e, n, r, i, o, u) {\n                var a = i === m,\n                    s = dt(r, this.entry[0]);\n                return (s ? i === this.entry[1] : a) ? this : (x(u), a ? void x(o) : s ? t && t === this.ownerID ? (this.entry[1] = i, this) : new Gt(t, this.keyHash, [r, i]) : (x(o), ne(this, t, e, At(r), [r, i])))\n            }, Yt.prototype.iterate = Kt.prototype.iterate = function(t, e) {\n                for (var n = this.entries, r = 0, i = n.length - 1; r <= i; r++)\n                    if (!1 === t(n[e ? i - r : r])) return !1\n            }, Wt.prototype.iterate = Vt.prototype.iterate = function(t, e) {\n                for (var n = this.nodes, r = 0, i = n.length - 1; r <= i; r++) {\n                    var o = n[e ? i - r : r];\n                    if (o && !1 === o.iterate(t, e)) return !1\n                }\n            }, Gt.prototype.iterate = function(t, e) {\n                return t(this.entry)\n            }, e($t, z), $t.prototype.next = function() {\n                for (var t = this._type, e = this._stack; e;) {\n                    var n, r = e.node,\n                        i = e.index++;\n                    if (r.entry) {\n                        if (0 === i) return Ht(t, r.entry)\n                    } else if (r.entries) {\n                        if (i <= (n = r.entries.length - 1)) return Ht(t, r.entries[this._reverse ? n - i : i])\n                    } else if (i <= (n = r.nodes.length - 1)) {\n                        var o = r.nodes[this._reverse ? n - i : i];\n                        if (o) {\n                            if (o.entry) return Ht(t, o.entry);\n                            e = this._stack = Jt(o, e)\n                        }\n                        continue\n                    }\n                    e = this._stack = this._stack.__prev\n                }\n                return {\n                    value: void 0,\n                    done: !0\n                }\n            };\n            var ce = y / 4,\n                fe = y / 2,\n                le = y / 4;\n\n            function pe(t) {\n                var e = xe();\n                if (null === t || void 0 === t) return e;\n                if (he(t)) return t;\n                var n = i(t),\n                    r = n.size;\n                return 0 === r ? e : (Dt(r), r > 0 && r < y ? we(0, r, v, null, new ye(n.toArray())) : e.withMutations(function(t) {\n                    t.setSize(r), n.forEach(function(e, n) {\n                        return t.set(n, e)\n                    })\n                }))\n            }\n\n            function he(t) {\n                return !(!t || !t[de])\n            }\n            e(pe, wt), pe.of = function() {\n                return this(arguments)\n            }, pe.prototype.toString = function() {\n                return this.__toString(\"List [\", \"]\")\n            }, pe.prototype.get = function(t, e) {\n                if ((t = O(this, t)) >= 0 && t < this.size) {\n                    var n = Ae(this, t += this._origin);\n                    return n && n.array[t & g]\n                }\n                return e\n            }, pe.prototype.set = function(t, e) {\n                return function(t, e, n) {\n                    if ((e = O(t, e)) != e) return t;\n                    if (e >= t.size || e < 0) return t.withMutations(function(t) {\n                        e < 0 ? Oe(t, e).set(0, n) : Oe(t, 0, e + 1).set(e, n)\n                    });\n                    e += t._origin;\n                    var r = t._tail,\n                        i = t._root,\n                        o = w(b);\n                    e >= ke(t._capacity) ? r = Se(r, t.__ownerID, 0, e, n, o) : i = Se(i, t.__ownerID, t._level, e, n, o);\n                    if (!o.value) return t;\n                    if (t.__ownerID) return t._root = i, t._tail = r, t.__hash = void 0, t.__altered = !0, t;\n                    return we(t._origin, t._capacity, t._level, i, r)\n                }(this, t, e)\n            }, pe.prototype.remove = function(t) {\n                return this.has(t) ? 0 === t ? this.shift() : t === this.size - 1 ? this.pop() : this.splice(t, 1) : this\n            }, pe.prototype.insert = function(t, e) {\n                return this.splice(t, 0, e)\n            }, pe.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = this._origin = this._capacity = 0, this._level = v, this._root = this._tail = null, this.__hash = void 0, this.__altered = !0, this) : xe()\n            }, pe.prototype.push = function() {\n                var t = arguments,\n                    e = this.size;\n                return this.withMutations(function(n) {\n                    Oe(n, 0, e + t.length);\n                    for (var r = 0; r < t.length; r++) n.set(e + r, t[r])\n                })\n            }, pe.prototype.pop = function() {\n                return Oe(this, 0, -1)\n            }, pe.prototype.unshift = function() {\n                var t = arguments;\n                return this.withMutations(function(e) {\n                    Oe(e, -t.length);\n                    for (var n = 0; n < t.length; n++) e.set(n, t[n])\n                })\n            }, pe.prototype.shift = function() {\n                return Oe(this, 1)\n            }, pe.prototype.merge = function() {\n                return je(this, void 0, arguments)\n            }, pe.prototype.mergeWith = function(e) {\n                return je(this, e, t.call(arguments, 1))\n            }, pe.prototype.mergeDeep = function() {\n                return je(this, ie, arguments)\n            }, pe.prototype.mergeDeepWith = function(e) {\n                var n = t.call(arguments, 1);\n                return je(this, oe(e), n)\n            }, pe.prototype.setSize = function(t) {\n                return Oe(this, 0, t)\n            }, pe.prototype.slice = function(t, e) {\n                var n = this.size;\n                return k(t, e, n) ? this : Oe(this, I(t, n), M(e, n))\n            }, pe.prototype.__iterator = function(t, e) {\n                var n = 0,\n                    r = be(this, e);\n                return new z(function() {\n                    var e = r();\n                    return e === _e ? {\n                        value: void 0,\n                        done: !0\n                    } : F(t, n++, e)\n                })\n            }, pe.prototype.__iterate = function(t, e) {\n                for (var n, r = 0, i = be(this, e);\n                     (n = i()) !== _e && !1 !== t(n, r++, this););\n                return r\n            }, pe.prototype.__ensureOwner = function(t) {\n                return t === this.__ownerID ? this : t ? we(this._origin, this._capacity, this._level, this._root, this._tail, t, this.__hash) : (this.__ownerID = t, this)\n            }, pe.isList = he;\n            var de = \"@@__IMMUTABLE_LIST__@@\",\n                ve = pe.prototype;\n\n            function ye(t, e) {\n                this.array = t, this.ownerID = e\n            }\n            ve[de] = !0, ve.delete = ve.remove, ve.setIn = qt.setIn, ve.deleteIn = ve.removeIn = qt.removeIn, ve.update = qt.update, ve.updateIn = qt.updateIn, ve.mergeIn = qt.mergeIn, ve.mergeDeepIn = qt.mergeDeepIn, ve.withMutations = qt.withMutations, ve.asMutable = qt.asMutable, ve.asImmutable = qt.asImmutable, ve.wasAltered = qt.wasAltered, ye.prototype.removeBefore = function(t, e, n) {\n                if (n === e ? 1 << e : 0 === this.array.length) return this;\n                var r = n >>> e & g;\n                if (r >= this.array.length) return new ye([], t);\n                var i, o = 0 === r;\n                if (e > 0) {\n                    var u = this.array[r];\n                    if ((i = u && u.removeBefore(t, e - v, n)) === u && o) return this\n                }\n                if (o && !i) return this;\n                var a = Ee(this, t);\n                if (!o)\n                    for (var s = 0; s < r; s++) a.array[s] = void 0;\n                return i && (a.array[r] = i), a\n            }, ye.prototype.removeAfter = function(t, e, n) {\n                if (n === (e ? 1 << e : 0) || 0 === this.array.length) return this;\n                var r, i = n - 1 >>> e & g;\n                if (i >= this.array.length) return this;\n                if (e > 0) {\n                    var o = this.array[i];\n                    if ((r = o && o.removeAfter(t, e - v, n)) === o && i === this.array.length - 1) return this\n                }\n                var u = Ee(this, t);\n                return u.array.splice(i + 1), r && (u.array[i] = r), u\n            };\n            var ge, me, _e = {};\n\n            function be(t, e) {\n                var n = t._origin,\n                    r = t._capacity,\n                    i = ke(r),\n                    o = t._tail;\n                return u(t._root, t._level, 0);\n\n                function u(t, a, s) {\n                    return 0 === a ? function(t, u) {\n                        var a = u === i ? o && o.array : t && t.array,\n                            s = u > n ? 0 : n - u,\n                            c = r - u;\n                        c > y && (c = y);\n                        return function() {\n                            if (s === c) return _e;\n                            var t = e ? --c : s++;\n                            return a && a[t]\n                        }\n                    }(t, s) : function(t, i, o) {\n                        var a, s = t && t.array,\n                            c = o > n ? 0 : n - o >> i,\n                            f = 1 + (r - o >> i);\n                        f > y && (f = y);\n                        return function() {\n                            for (;;) {\n                                if (a) {\n                                    var t = a();\n                                    if (t !== _e) return t;\n                                    a = null\n                                }\n                                if (c === f) return _e;\n                                var n = e ? --f : c++;\n                                a = u(s && s[n], i - v, o + (n << i))\n                            }\n                        }\n                    }(t, a, s)\n                }\n            }\n\n            function we(t, e, n, r, i, o, u) {\n                var a = Object.create(ve);\n                return a.size = e - t, a._origin = t, a._capacity = e, a._level = n, a._root = r, a._tail = i, a.__ownerID = o, a.__hash = u, a.__altered = !1, a\n            }\n\n            function xe() {\n                return ge || (ge = we(0, 0, v))\n            }\n\n            function Se(t, e, n, r, i, o) {\n                var u, a = r >>> n & g,\n                    s = t && a < t.array.length;\n                if (!s && void 0 === i) return t;\n                if (n > 0) {\n                    var c = t && t.array[a],\n                        f = Se(c, e, n - v, r, i, o);\n                    return f === c ? t : ((u = Ee(t, e)).array[a] = f, u)\n                }\n                return s && t.array[a] === i ? t : (x(o), u = Ee(t, e), void 0 === i && a === u.array.length - 1 ? u.array.pop() : u.array[a] = i, u)\n            }\n\n            function Ee(t, e) {\n                return e && t && e === t.ownerID ? t : new ye(t ? t.array.slice() : [], e)\n            }\n\n            function Ae(t, e) {\n                if (e >= ke(t._capacity)) return t._tail;\n                if (e < 1 << t._level + v) {\n                    for (var n = t._root, r = t._level; n && r > 0;) n = n.array[e >>> r & g], r -= v;\n                    return n\n                }\n            }\n\n            function Oe(t, e, n) {\n                void 0 !== e && (e |= 0), void 0 !== n && (n |= 0);\n                var r = t.__ownerID || new S,\n                    i = t._origin,\n                    o = t._capacity,\n                    u = i + e,\n                    a = void 0 === n ? o : n < 0 ? o + n : i + n;\n                if (u === i && a === o) return t;\n                if (u >= a) return t.clear();\n                for (var s = t._level, c = t._root, f = 0; u + f < 0;) c = new ye(c && c.array.length ? [void 0, c] : [], r), f += 1 << (s += v);\n                f && (u += f, i += f, a += f, o += f);\n                for (var l = ke(o), p = ke(a); p >= 1 << s + v;) c = new ye(c && c.array.length ? [c] : [], r), s += v;\n                var h = t._tail,\n                    d = p < l ? Ae(t, a - 1) : p > l ? new ye([], r) : h;\n                if (h && p > l && u < o && h.array.length) {\n                    for (var y = c = Ee(c, r), m = s; m > v; m -= v) {\n                        var _ = l >>> m & g;\n                        y = y.array[_] = Ee(y.array[_], r)\n                    }\n                    y.array[l >>> v & g] = h\n                }\n                if (a < o && (d = d && d.removeAfter(r, 0, a)), u >= p) u -= p, a -= p, s = v, c = null, d = d && d.removeBefore(r, 0, u);\n                else if (u > i || p < l) {\n                    for (f = 0; c;) {\n                        var b = u >>> s & g;\n                        if (b !== p >>> s & g) break;\n                        b && (f += (1 << s) * b), s -= v, c = c.array[b]\n                    }\n                    c && u > i && (c = c.removeBefore(r, s, u - f)), c && p < l && (c = c.removeAfter(r, s, p - f)), f && (u -= f, a -= f)\n                }\n                return t.__ownerID ? (t.size = a - u, t._origin = u, t._capacity = a, t._level = s, t._root = c, t._tail = d, t.__hash = void 0, t.__altered = !0, t) : we(u, a, s, c, d)\n            }\n\n            function je(t, e, n) {\n                for (var r = [], o = 0, a = 0; a < n.length; a++) {\n                    var s = n[a],\n                        c = i(s);\n                    c.size > o && (o = c.size), u(s) || (c = c.map(function(t) {\n                        return lt(t)\n                    })), r.push(c)\n                }\n                return o > t.size && (t = t.setSize(o)), ue(t, e, r)\n            }\n\n            function ke(t) {\n                return t < y ? 0 : t - 1 >>> v << v\n            }\n\n            function Ie(t) {\n                return null === t || void 0 === t ? Ce() : Me(t) ? t : Ce().withMutations(function(e) {\n                    var n = r(t);\n                    Dt(n.size), n.forEach(function(t, n) {\n                        return e.set(n, t)\n                    })\n                })\n            }\n\n            function Me(t) {\n                return Ft(t) && f(t)\n            }\n\n            function Te(t, e, n, r) {\n                var i = Object.create(Ie.prototype);\n                return i.size = t ? t.size : 0, i._map = t, i._list = e, i.__ownerID = n, i.__hash = r, i\n            }\n\n            function Ce() {\n                return me || (me = Te(Xt(), xe()))\n            }\n\n            function Pe(t, e, n) {\n                var r, i, o = t._map,\n                    u = t._list,\n                    a = o.get(e),\n                    s = void 0 !== a;\n                if (n === m) {\n                    if (!s) return t;\n                    u.size >= y && u.size >= 2 * o.size ? (r = (i = u.filter(function(t, e) {\n                        return void 0 !== t && a !== e\n                    })).toKeyedSeq().map(function(t) {\n                        return t[0]\n                    }).flip().toMap(), t.__ownerID && (r.__ownerID = i.__ownerID = t.__ownerID)) : (r = o.remove(e), i = a === u.size - 1 ? u.pop() : u.set(a, void 0))\n                } else if (s) {\n                    if (n === u.get(a)[1]) return t;\n                    r = o, i = u.set(a, [e, n])\n                } else r = o.set(e, u.size), i = u.set(u.size, [e, n]);\n                return t.__ownerID ? (t.size = r.size, t._map = r, t._list = i, t.__hash = void 0, t) : Te(r, i)\n            }\n\n            function Re(t, e) {\n                this._iter = t, this._useKeys = e, this.size = t.size\n            }\n\n            function Ne(t) {\n                this._iter = t, this.size = t.size\n            }\n\n            function Le(t) {\n                this._iter = t, this.size = t.size\n            }\n\n            function De(t) {\n                this._iter = t, this.size = t.size\n            }\n\n            function ze(t) {\n                var e = Qe(t);\n                return e._iter = t, e.size = t.size, e.flip = function() {\n                    return t\n                }, e.reverse = function() {\n                    var e = t.reverse.apply(this);\n                    return e.flip = function() {\n                        return t.reverse()\n                    }, e\n                }, e.has = function(e) {\n                    return t.includes(e)\n                }, e.includes = function(e) {\n                    return t.has(e)\n                }, e.cacheResult = tn, e.__iterateUncached = function(e, n) {\n                    var r = this;\n                    return t.__iterate(function(t, n) {\n                        return !1 !== e(n, t, r)\n                    }, n)\n                }, e.__iteratorUncached = function(e, n) {\n                    if (e === R) {\n                        var r = t.__iterator(e, n);\n                        return new z(function() {\n                            var t = r.next();\n                            if (!t.done) {\n                                var e = t.value[0];\n                                t.value[0] = t.value[1], t.value[1] = e\n                            }\n                            return t\n                        })\n                    }\n                    return t.__iterator(e === P ? C : P, n)\n                }, e\n            }\n\n            function Fe(t, e, n) {\n                var r = Qe(t);\n                return r.size = t.size, r.has = function(e) {\n                    return t.has(e)\n                }, r.get = function(r, i) {\n                    var o = t.get(r, m);\n                    return o === m ? i : e.call(n, o, r, t)\n                }, r.__iterateUncached = function(r, i) {\n                    var o = this;\n                    return t.__iterate(function(t, i, u) {\n                        return !1 !== r(e.call(n, t, i, u), i, o)\n                    }, i)\n                }, r.__iteratorUncached = function(r, i) {\n                    var o = t.__iterator(R, i);\n                    return new z(function() {\n                        var i = o.next();\n                        if (i.done) return i;\n                        var u = i.value,\n                            a = u[0];\n                        return F(r, a, e.call(n, u[1], a, t), i)\n                    })\n                }, r\n            }\n\n            function Ue(t, e) {\n                var n = Qe(t);\n                return n._iter = t, n.size = t.size, n.reverse = function() {\n                    return t\n                }, t.flip && (n.flip = function() {\n                    var e = ze(t);\n                    return e.reverse = function() {\n                        return t.flip()\n                    }, e\n                }), n.get = function(n, r) {\n                    return t.get(e ? n : -1 - n, r)\n                }, n.has = function(n) {\n                    return t.has(e ? n : -1 - n)\n                }, n.includes = function(e) {\n                    return t.includes(e)\n                }, n.cacheResult = tn, n.__iterate = function(e, n) {\n                    var r = this;\n                    return t.__iterate(function(t, n) {\n                        return e(t, n, r)\n                    }, !n)\n                }, n.__iterator = function(e, n) {\n                    return t.__iterator(e, !n)\n                }, n\n            }\n\n            function Be(t, e, n, r) {\n                var i = Qe(t);\n                return r && (i.has = function(r) {\n                    var i = t.get(r, m);\n                    return i !== m && !!e.call(n, i, r, t)\n                }, i.get = function(r, i) {\n                    var o = t.get(r, m);\n                    return o !== m && e.call(n, o, r, t) ? o : i\n                }), i.__iterateUncached = function(i, o) {\n                    var u = this,\n                        a = 0;\n                    return t.__iterate(function(t, o, s) {\n                        if (e.call(n, t, o, s)) return a++, i(t, r ? o : a - 1, u)\n                    }, o), a\n                }, i.__iteratorUncached = function(i, o) {\n                    var u = t.__iterator(R, o),\n                        a = 0;\n                    return new z(function() {\n                        for (;;) {\n                            var o = u.next();\n                            if (o.done) return o;\n                            var s = o.value,\n                                c = s[0],\n                                f = s[1];\n                            if (e.call(n, f, c, t)) return F(i, r ? c : a++, f, o)\n                        }\n                    })\n                }, i\n            }\n\n            function qe(t, e, n, r) {\n                var i = t.size;\n                if (void 0 !== e && (e |= 0), void 0 !== n && (n === 1 / 0 ? n = i : n |= 0), k(e, n, i)) return t;\n                var o = I(e, i),\n                    u = M(n, i);\n                if (o != o || u != u) return qe(t.toSeq().cacheResult(), e, n, r);\n                var a, s = u - o;\n                s == s && (a = s < 0 ? 0 : s);\n                var c = Qe(t);\n                return c.size = 0 === a ? a : t.size && a || void 0, !r && it(t) && a >= 0 && (c.get = function(e, n) {\n                    return (e = O(this, e)) >= 0 && e < a ? t.get(e + o, n) : n\n                }), c.__iterateUncached = function(e, n) {\n                    var i = this;\n                    if (0 === a) return 0;\n                    if (n) return this.cacheResult().__iterate(e, n);\n                    var u = 0,\n                        s = !0,\n                        c = 0;\n                    return t.__iterate(function(t, n) {\n                        if (!s || !(s = u++ < o)) return c++, !1 !== e(t, r ? n : c - 1, i) && c !== a\n                    }), c\n                }, c.__iteratorUncached = function(e, n) {\n                    if (0 !== a && n) return this.cacheResult().__iterator(e, n);\n                    var i = 0 !== a && t.__iterator(e, n),\n                        u = 0,\n                        s = 0;\n                    return new z(function() {\n                        for (; u++ < o;) i.next();\n                        if (++s > a) return {\n                            value: void 0,\n                            done: !0\n                        };\n                        var t = i.next();\n                        return r || e === P ? t : F(e, s - 1, e === C ? void 0 : t.value[1], t)\n                    })\n                }, c\n            }\n\n            function Ye(t, e, n, r) {\n                var i = Qe(t);\n                return i.__iterateUncached = function(i, o) {\n                    var u = this;\n                    if (o) return this.cacheResult().__iterate(i, o);\n                    var a = !0,\n                        s = 0;\n                    return t.__iterate(function(t, o, c) {\n                        if (!a || !(a = e.call(n, t, o, c))) return s++, i(t, r ? o : s - 1, u)\n                    }), s\n                }, i.__iteratorUncached = function(i, o) {\n                    var u = this;\n                    if (o) return this.cacheResult().__iterator(i, o);\n                    var a = t.__iterator(R, o),\n                        s = !0,\n                        c = 0;\n                    return new z(function() {\n                        var t, o, f;\n                        do {\n                            if ((t = a.next()).done) return r || i === P ? t : F(i, c++, i === C ? void 0 : t.value[1], t);\n                            var l = t.value;\n                            o = l[0], f = l[1], s && (s = e.call(n, f, o, u))\n                        } while (s);\n                        return i === R ? t : F(i, o, f, t)\n                    })\n                }, i\n            }\n\n            function We(t, e, n) {\n                var r = Qe(t);\n                return r.__iterateUncached = function(r, i) {\n                    var o = 0,\n                        a = !1;\n                    return function t(s, c) {\n                        var f = this;\n                        s.__iterate(function(i, s) {\n                            return (!e || c < e) && u(i) ? t(i, c + 1) : !1 === r(i, n ? s : o++, f) && (a = !0), !a\n                        }, i)\n                    }(t, 0), o\n                }, r.__iteratorUncached = function(r, i) {\n                    var o = t.__iterator(r, i),\n                        a = [],\n                        s = 0;\n                    return new z(function() {\n                        for (; o;) {\n                            var t = o.next();\n                            if (!1 === t.done) {\n                                var c = t.value;\n                                if (r === R && (c = c[1]), e && !(a.length < e) || !u(c)) return n ? t : F(r, s++, c, t);\n                                a.push(o), o = c.__iterator(r, i)\n                            } else o = a.pop()\n                        }\n                        return {\n                            value: void 0,\n                            done: !0\n                        }\n                    })\n                }, r\n            }\n\n            function Ve(t, e, n) {\n                e || (e = en);\n                var r = a(t),\n                    i = 0,\n                    o = t.toSeq().map(function(e, r) {\n                        return [r, e, i++, n ? n(e, r, t) : e]\n                    }).toArray();\n                return o.sort(function(t, n) {\n                    return e(t[3], n[3]) || t[2] - n[2]\n                }).forEach(r ? function(t, e) {\n                    o[e].length = 2\n                } : function(t, e) {\n                    o[e] = t[1]\n                }), r ? G(o) : s(t) ? $(o) : H(o)\n            }\n\n            function Ke(t, e, n) {\n                if (e || (e = en), n) {\n                    var r = t.toSeq().map(function(e, r) {\n                        return [e, n(e, r, t)]\n                    }).reduce(function(t, n) {\n                        return Ge(e, t[1], n[1]) ? n : t\n                    });\n                    return r && r[0]\n                }\n                return t.reduce(function(t, n) {\n                    return Ge(e, t, n) ? n : t\n                })\n            }\n\n            function Ge(t, e, n) {\n                var r = t(n, e);\n                return 0 === r && n !== e && (void 0 === n || null === n || n != n) || r > 0\n            }\n\n            function $e(t, e, r) {\n                var i = Qe(t);\n                return i.size = new tt(r).map(function(t) {\n                    return t.size\n                }).min(), i.__iterate = function(t, e) {\n                    for (var n, r = this.__iterator(P, e), i = 0; !(n = r.next()).done && !1 !== t(n.value, i++, this););\n                    return i\n                }, i.__iteratorUncached = function(t, i) {\n                    var o = r.map(function(t) {\n                            return t = n(t), Y(i ? t.reverse() : t)\n                        }),\n                        u = 0,\n                        a = !1;\n                    return new z(function() {\n                        var n;\n                        return a || (n = o.map(function(t) {\n                            return t.next()\n                        }), a = n.some(function(t) {\n                            return t.done\n                        })), a ? {\n                            value: void 0,\n                            done: !0\n                        } : F(t, u++, e.apply(null, n.map(function(t) {\n                            return t.value\n                        })))\n                    })\n                }, i\n            }\n\n            function He(t, e) {\n                return it(t) ? e : t.constructor(e)\n            }\n\n            function Je(t) {\n                if (t !== Object(t)) throw new TypeError(\"Expected [K, V] tuple: \" + t)\n            }\n\n            function Ze(t) {\n                return Dt(t.size), A(t)\n            }\n\n            function Xe(t) {\n                return a(t) ? r : s(t) ? i : o\n            }\n\n            function Qe(t) {\n                return Object.create((a(t) ? G : s(t) ? $ : H).prototype)\n            }\n\n            function tn() {\n                return this._iter.cacheResult ? (this._iter.cacheResult(), this.size = this._iter.size, this) : K.prototype.cacheResult.call(this)\n            }\n\n            function en(t, e) {\n                return t > e ? 1 : t < e ? -1 : 0\n            }\n\n            function nn(t) {\n                var e = Y(t);\n                if (!e) {\n                    if (!V(t)) throw new TypeError(\"Expected iterable or array-like: \" + t);\n                    e = Y(n(t))\n                }\n                return e\n            }\n\n            function rn(t, e) {\n                var n, r = function(o) {\n                        if (o instanceof r) return o;\n                        if (!(this instanceof r)) return new r(o);\n                        if (!n) {\n                            n = !0;\n                            var u = Object.keys(t);\n                            ! function(t, e) {\n                                try {\n                                    e.forEach(function(t, e) {\n                                        Object.defineProperty(t, e, {\n                                            get: function() {\n                                                return this.get(e)\n                                            },\n                                            set: function(t) {\n                                                gt(this.__ownerID, \"Cannot set on an immutable record.\"), this.set(e, t)\n                                            }\n                                        })\n                                    }.bind(void 0, t))\n                                } catch (t) {}\n                            }(i, u), i.size = u.length, i._name = e, i._keys = u, i._defaultValues = t\n                        }\n                        this._map = zt(o)\n                    },\n                    i = r.prototype = Object.create(on);\n                return i.constructor = r, r\n            }\n            e(Ie, zt), Ie.of = function() {\n                return this(arguments)\n            }, Ie.prototype.toString = function() {\n                return this.__toString(\"OrderedMap {\", \"}\")\n            }, Ie.prototype.get = function(t, e) {\n                var n = this._map.get(t);\n                return void 0 !== n ? this._list.get(n)[1] : e\n            }, Ie.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = 0, this._map.clear(), this._list.clear(), this) : Ce()\n            }, Ie.prototype.set = function(t, e) {\n                return Pe(this, t, e)\n            }, Ie.prototype.remove = function(t) {\n                return Pe(this, t, m)\n            }, Ie.prototype.wasAltered = function() {\n                return this._map.wasAltered() || this._list.wasAltered()\n            }, Ie.prototype.__iterate = function(t, e) {\n                var n = this;\n                return this._list.__iterate(function(e) {\n                    return e && t(e[1], e[0], n)\n                }, e)\n            }, Ie.prototype.__iterator = function(t, e) {\n                return this._list.fromEntrySeq().__iterator(t, e)\n            }, Ie.prototype.__ensureOwner = function(t) {\n                if (t === this.__ownerID) return this;\n                var e = this._map.__ensureOwner(t),\n                    n = this._list.__ensureOwner(t);\n                return t ? Te(e, n, t, this.__hash) : (this.__ownerID = t, this._map = e, this._list = n, this)\n            }, Ie.isOrderedMap = Me, Ie.prototype[d] = !0, Ie.prototype.delete = Ie.prototype.remove, e(Re, G), Re.prototype.get = function(t, e) {\n                return this._iter.get(t, e)\n            }, Re.prototype.has = function(t) {\n                return this._iter.has(t)\n            }, Re.prototype.valueSeq = function() {\n                return this._iter.valueSeq()\n            }, Re.prototype.reverse = function() {\n                var t = this,\n                    e = Ue(this, !0);\n                return this._useKeys || (e.valueSeq = function() {\n                    return t._iter.toSeq().reverse()\n                }), e\n            }, Re.prototype.map = function(t, e) {\n                var n = this,\n                    r = Fe(this, t, e);\n                return this._useKeys || (r.valueSeq = function() {\n                    return n._iter.toSeq().map(t, e)\n                }), r\n            }, Re.prototype.__iterate = function(t, e) {\n                var n, r = this;\n                return this._iter.__iterate(this._useKeys ? function(e, n) {\n                    return t(e, n, r)\n                } : (n = e ? Ze(this) : 0, function(i) {\n                    return t(i, e ? --n : n++, r)\n                }), e)\n            }, Re.prototype.__iterator = function(t, e) {\n                if (this._useKeys) return this._iter.__iterator(t, e);\n                var n = this._iter.__iterator(P, e),\n                    r = e ? Ze(this) : 0;\n                return new z(function() {\n                    var i = n.next();\n                    return i.done ? i : F(t, e ? --r : r++, i.value, i)\n                })\n            }, Re.prototype[d] = !0, e(Ne, $), Ne.prototype.includes = function(t) {\n                return this._iter.includes(t)\n            }, Ne.prototype.__iterate = function(t, e) {\n                var n = this,\n                    r = 0;\n                return this._iter.__iterate(function(e) {\n                    return t(e, r++, n)\n                }, e)\n            }, Ne.prototype.__iterator = function(t, e) {\n                var n = this._iter.__iterator(P, e),\n                    r = 0;\n                return new z(function() {\n                    var e = n.next();\n                    return e.done ? e : F(t, r++, e.value, e)\n                })\n            }, e(Le, H), Le.prototype.has = function(t) {\n                return this._iter.includes(t)\n            }, Le.prototype.__iterate = function(t, e) {\n                var n = this;\n                return this._iter.__iterate(function(e) {\n                    return t(e, e, n)\n                }, e)\n            }, Le.prototype.__iterator = function(t, e) {\n                var n = this._iter.__iterator(P, e);\n                return new z(function() {\n                    var e = n.next();\n                    return e.done ? e : F(t, e.value, e.value, e)\n                })\n            }, e(De, G), De.prototype.entrySeq = function() {\n                return this._iter.toSeq()\n            }, De.prototype.__iterate = function(t, e) {\n                var n = this;\n                return this._iter.__iterate(function(e) {\n                    if (e) {\n                        Je(e);\n                        var r = u(e);\n                        return t(r ? e.get(1) : e[1], r ? e.get(0) : e[0], n)\n                    }\n                }, e)\n            }, De.prototype.__iterator = function(t, e) {\n                var n = this._iter.__iterator(P, e);\n                return new z(function() {\n                    for (;;) {\n                        var e = n.next();\n                        if (e.done) return e;\n                        var r = e.value;\n                        if (r) {\n                            Je(r);\n                            var i = u(r);\n                            return F(t, i ? r.get(0) : r[0], i ? r.get(1) : r[1], e)\n                        }\n                    }\n                })\n            }, Ne.prototype.cacheResult = Re.prototype.cacheResult = Le.prototype.cacheResult = De.prototype.cacheResult = tn, e(rn, bt), rn.prototype.toString = function() {\n                return this.__toString(an(this) + \" {\", \"}\")\n            }, rn.prototype.has = function(t) {\n                return this._defaultValues.hasOwnProperty(t)\n            }, rn.prototype.get = function(t, e) {\n                if (!this.has(t)) return e;\n                var n = this._defaultValues[t];\n                return this._map ? this._map.get(t, n) : n\n            }, rn.prototype.clear = function() {\n                if (this.__ownerID) return this._map && this._map.clear(), this;\n                var t = this.constructor;\n                return t._empty || (t._empty = un(this, Xt()))\n            }, rn.prototype.set = function(t, e) {\n                if (!this.has(t)) throw new Error('Cannot set unknown key \"' + t + '\" on ' + an(this));\n                if (this._map && !this._map.has(t) && e === this._defaultValues[t]) return this;\n                var n = this._map && this._map.set(t, e);\n                return this.__ownerID || n === this._map ? this : un(this, n)\n            }, rn.prototype.remove = function(t) {\n                if (!this.has(t)) return this;\n                var e = this._map && this._map.remove(t);\n                return this.__ownerID || e === this._map ? this : un(this, e)\n            }, rn.prototype.wasAltered = function() {\n                return this._map.wasAltered()\n            }, rn.prototype.__iterator = function(t, e) {\n                var n = this;\n                return r(this._defaultValues).map(function(t, e) {\n                    return n.get(e)\n                }).__iterator(t, e)\n            }, rn.prototype.__iterate = function(t, e) {\n                var n = this;\n                return r(this._defaultValues).map(function(t, e) {\n                    return n.get(e)\n                }).__iterate(t, e)\n            }, rn.prototype.__ensureOwner = function(t) {\n                if (t === this.__ownerID) return this;\n                var e = this._map && this._map.__ensureOwner(t);\n                return t ? un(this, e, t) : (this.__ownerID = t, this._map = e, this)\n            };\n            var on = rn.prototype;\n\n            function un(t, e, n) {\n                var r = Object.create(Object.getPrototypeOf(t));\n                return r._map = e, r.__ownerID = n, r\n            }\n\n            function an(t) {\n                return t._name || t.constructor.name || \"Record\"\n            }\n\n            function sn(t) {\n                return null === t || void 0 === t ? vn() : cn(t) && !f(t) ? t : vn().withMutations(function(e) {\n                    var n = o(t);\n                    Dt(n.size), n.forEach(function(t) {\n                        return e.add(t)\n                    })\n                })\n            }\n\n            function cn(t) {\n                return !(!t || !t[ln])\n            }\n            on.delete = on.remove, on.deleteIn = on.removeIn = qt.removeIn, on.merge = qt.merge, on.mergeWith = qt.mergeWith, on.mergeIn = qt.mergeIn, on.mergeDeep = qt.mergeDeep, on.mergeDeepWith = qt.mergeDeepWith, on.mergeDeepIn = qt.mergeDeepIn, on.setIn = qt.setIn, on.update = qt.update, on.updateIn = qt.updateIn, on.withMutations = qt.withMutations, on.asMutable = qt.asMutable, on.asImmutable = qt.asImmutable, e(sn, xt), sn.of = function() {\n                return this(arguments)\n            }, sn.fromKeys = function(t) {\n                return this(r(t).keySeq())\n            }, sn.prototype.toString = function() {\n                return this.__toString(\"Set {\", \"}\")\n            }, sn.prototype.has = function(t) {\n                return this._map.has(t)\n            }, sn.prototype.add = function(t) {\n                return hn(this, this._map.set(t, !0))\n            }, sn.prototype.remove = function(t) {\n                return hn(this, this._map.remove(t))\n            }, sn.prototype.clear = function() {\n                return hn(this, this._map.clear())\n            }, sn.prototype.union = function() {\n                var e = t.call(arguments, 0);\n                return 0 === (e = e.filter(function(t) {\n                    return 0 !== t.size\n                })).length ? this : 0 !== this.size || this.__ownerID || 1 !== e.length ? this.withMutations(function(t) {\n                    for (var n = 0; n < e.length; n++) o(e[n]).forEach(function(e) {\n                        return t.add(e)\n                    })\n                }) : this.constructor(e[0])\n            }, sn.prototype.intersect = function() {\n                var e = t.call(arguments, 0);\n                if (0 === e.length) return this;\n                e = e.map(function(t) {\n                    return o(t)\n                });\n                var n = this;\n                return this.withMutations(function(t) {\n                    n.forEach(function(n) {\n                        e.every(function(t) {\n                            return t.includes(n)\n                        }) || t.remove(n)\n                    })\n                })\n            }, sn.prototype.subtract = function() {\n                var e = t.call(arguments, 0);\n                if (0 === e.length) return this;\n                e = e.map(function(t) {\n                    return o(t)\n                });\n                var n = this;\n                return this.withMutations(function(t) {\n                    n.forEach(function(n) {\n                        e.some(function(t) {\n                            return t.includes(n)\n                        }) && t.remove(n)\n                    })\n                })\n            }, sn.prototype.merge = function() {\n                return this.union.apply(this, arguments)\n            }, sn.prototype.mergeWith = function(e) {\n                var n = t.call(arguments, 1);\n                return this.union.apply(this, n)\n            }, sn.prototype.sort = function(t) {\n                return yn(Ve(this, t))\n            }, sn.prototype.sortBy = function(t, e) {\n                return yn(Ve(this, e, t))\n            }, sn.prototype.wasAltered = function() {\n                return this._map.wasAltered()\n            }, sn.prototype.__iterate = function(t, e) {\n                var n = this;\n                return this._map.__iterate(function(e, r) {\n                    return t(r, r, n)\n                }, e)\n            }, sn.prototype.__iterator = function(t, e) {\n                return this._map.map(function(t, e) {\n                    return e\n                }).__iterator(t, e)\n            }, sn.prototype.__ensureOwner = function(t) {\n                if (t === this.__ownerID) return this;\n                var e = this._map.__ensureOwner(t);\n                return t ? this.__make(e, t) : (this.__ownerID = t, this._map = e, this)\n            }, sn.isSet = cn;\n            var fn, ln = \"@@__IMMUTABLE_SET__@@\",\n                pn = sn.prototype;\n\n            function hn(t, e) {\n                return t.__ownerID ? (t.size = e.size, t._map = e, t) : e === t._map ? t : 0 === e.size ? t.__empty() : t.__make(e)\n            }\n\n            function dn(t, e) {\n                var n = Object.create(pn);\n                return n.size = t ? t.size : 0, n._map = t, n.__ownerID = e, n\n            }\n\n            function vn() {\n                return fn || (fn = dn(Xt()))\n            }\n\n            function yn(t) {\n                return null === t || void 0 === t ? wn() : gn(t) ? t : wn().withMutations(function(e) {\n                    var n = o(t);\n                    Dt(n.size), n.forEach(function(t) {\n                        return e.add(t)\n                    })\n                })\n            }\n\n            function gn(t) {\n                return cn(t) && f(t)\n            }\n            pn[ln] = !0, pn.delete = pn.remove, pn.mergeDeep = pn.merge, pn.mergeDeepWith = pn.mergeWith, pn.withMutations = qt.withMutations, pn.asMutable = qt.asMutable, pn.asImmutable = qt.asImmutable, pn.__empty = vn, pn.__make = dn, e(yn, sn), yn.of = function() {\n                return this(arguments)\n            }, yn.fromKeys = function(t) {\n                return this(r(t).keySeq())\n            }, yn.prototype.toString = function() {\n                return this.__toString(\"OrderedSet {\", \"}\")\n            }, yn.isOrderedSet = gn;\n            var mn, _n = yn.prototype;\n\n            function bn(t, e) {\n                var n = Object.create(_n);\n                return n.size = t ? t.size : 0, n._map = t, n.__ownerID = e, n\n            }\n\n            function wn() {\n                return mn || (mn = bn(Ce()))\n            }\n\n            function xn(t) {\n                return null === t || void 0 === t ? kn() : Sn(t) ? t : kn().unshiftAll(t)\n            }\n\n            function Sn(t) {\n                return !(!t || !t[An])\n            }\n            _n[d] = !0, _n.__empty = wn, _n.__make = bn, e(xn, wt), xn.of = function() {\n                return this(arguments)\n            }, xn.prototype.toString = function() {\n                return this.__toString(\"Stack [\", \"]\")\n            }, xn.prototype.get = function(t, e) {\n                var n = this._head;\n                for (t = O(this, t); n && t--;) n = n.next;\n                return n ? n.value : e\n            }, xn.prototype.peek = function() {\n                return this._head && this._head.value\n            }, xn.prototype.push = function() {\n                if (0 === arguments.length) return this;\n                for (var t = this.size + arguments.length, e = this._head, n = arguments.length - 1; n >= 0; n--) e = {\n                    value: arguments[n],\n                    next: e\n                };\n                return this.__ownerID ? (this.size = t, this._head = e, this.__hash = void 0, this.__altered = !0, this) : jn(t, e)\n            }, xn.prototype.pushAll = function(t) {\n                if (0 === (t = i(t)).size) return this;\n                Dt(t.size);\n                var e = this.size,\n                    n = this._head;\n                return t.reverse().forEach(function(t) {\n                    e++, n = {\n                        value: t,\n                        next: n\n                    }\n                }), this.__ownerID ? (this.size = e, this._head = n, this.__hash = void 0, this.__altered = !0, this) : jn(e, n)\n            }, xn.prototype.pop = function() {\n                return this.slice(1)\n            }, xn.prototype.unshift = function() {\n                return this.push.apply(this, arguments)\n            }, xn.prototype.unshiftAll = function(t) {\n                return this.pushAll(t)\n            }, xn.prototype.shift = function() {\n                return this.pop.apply(this, arguments)\n            }, xn.prototype.clear = function() {\n                return 0 === this.size ? this : this.__ownerID ? (this.size = 0, this._head = void 0, this.__hash = void 0, this.__altered = !0, this) : kn()\n            }, xn.prototype.slice = function(t, e) {\n                if (k(t, e, this.size)) return this;\n                var n = I(t, this.size);\n                if (M(e, this.size) !== this.size) return wt.prototype.slice.call(this, t, e);\n                for (var r = this.size - n, i = this._head; n--;) i = i.next;\n                return this.__ownerID ? (this.size = r, this._head = i, this.__hash = void 0, this.__altered = !0, this) : jn(r, i)\n            }, xn.prototype.__ensureOwner = function(t) {\n                return t === this.__ownerID ? this : t ? jn(this.size, this._head, t, this.__hash) : (this.__ownerID = t, this.__altered = !1, this)\n            }, xn.prototype.__iterate = function(t, e) {\n                if (e) return this.reverse().__iterate(t);\n                for (var n = 0, r = this._head; r && !1 !== t(r.value, n++, this);) r = r.next;\n                return n\n            }, xn.prototype.__iterator = function(t, e) {\n                if (e) return this.reverse().__iterator(t);\n                var n = 0,\n                    r = this._head;\n                return new z(function() {\n                    if (r) {\n                        var e = r.value;\n                        return r = r.next, F(t, n++, e)\n                    }\n                    return {\n                        value: void 0,\n                        done: !0\n                    }\n                })\n            }, xn.isStack = Sn;\n            var En, An = \"@@__IMMUTABLE_STACK__@@\",\n                On = xn.prototype;\n\n            function jn(t, e, n, r) {\n                var i = Object.create(On);\n                return i.size = t, i._head = e, i.__ownerID = n, i.__hash = r, i.__altered = !1, i\n            }\n\n            function kn() {\n                return En || (En = jn(0))\n            }\n\n            function In(t, e) {\n                var n = function(n) {\n                    t.prototype[n] = e[n]\n                };\n                return Object.keys(e).forEach(n), Object.getOwnPropertySymbols && Object.getOwnPropertySymbols(e).forEach(n), t\n            }\n            On[An] = !0, On.withMutations = qt.withMutations, On.asMutable = qt.asMutable, On.asImmutable = qt.asImmutable, On.wasAltered = qt.wasAltered, n.Iterator = z, In(n, {\n                toArray: function() {\n                    Dt(this.size);\n                    var t = new Array(this.size || 0);\n                    return this.valueSeq().__iterate(function(e, n) {\n                        t[n] = e\n                    }), t\n                },\n                toIndexedSeq: function() {\n                    return new Ne(this)\n                },\n                toJS: function() {\n                    return this.toSeq().map(function(t) {\n                        return t && \"function\" == typeof t.toJS ? t.toJS() : t\n                    }).__toJS()\n                },\n                toJSON: function() {\n                    return this.toSeq().map(function(t) {\n                        return t && \"function\" == typeof t.toJSON ? t.toJSON() : t\n                    }).__toJS()\n                },\n                toKeyedSeq: function() {\n                    return new Re(this, !0)\n                },\n                toMap: function() {\n                    return zt(this.toKeyedSeq())\n                },\n                toObject: function() {\n                    Dt(this.size);\n                    var t = {};\n                    return this.__iterate(function(e, n) {\n                        t[n] = e\n                    }), t\n                },\n                toOrderedMap: function() {\n                    return Ie(this.toKeyedSeq())\n                },\n                toOrderedSet: function() {\n                    return yn(a(this) ? this.valueSeq() : this)\n                },\n                toSet: function() {\n                    return sn(a(this) ? this.valueSeq() : this)\n                },\n                toSetSeq: function() {\n                    return new Le(this)\n                },\n                toSeq: function() {\n                    return s(this) ? this.toIndexedSeq() : a(this) ? this.toKeyedSeq() : this.toSetSeq()\n                },\n                toStack: function() {\n                    return xn(a(this) ? this.valueSeq() : this)\n                },\n                toList: function() {\n                    return pe(a(this) ? this.valueSeq() : this)\n                },\n                toString: function() {\n                    return \"[Iterable]\"\n                },\n                __toString: function(t, e) {\n                    return 0 === this.size ? t + e : t + \" \" + this.toSeq().map(this.__toStringMapper).join(\", \") + \" \" + e\n                },\n                concat: function() {\n                    return He(this, function(t, e) {\n                        var n = a(t),\n                            i = [t].concat(e).map(function(t) {\n                                return u(t) ? n && (t = r(t)) : t = n ? ut(t) : at(Array.isArray(t) ? t : [t]), t\n                            }).filter(function(t) {\n                                return 0 !== t.size\n                            });\n                        if (0 === i.length) return t;\n                        if (1 === i.length) {\n                            var o = i[0];\n                            if (o === t || n && a(o) || s(t) && s(o)) return o\n                        }\n                        var c = new tt(i);\n                        return n ? c = c.toKeyedSeq() : s(t) || (c = c.toSetSeq()), (c = c.flatten(!0)).size = i.reduce(function(t, e) {\n                            if (void 0 !== t) {\n                                var n = e.size;\n                                if (void 0 !== n) return t + n\n                            }\n                        }, 0), c\n                    }(this, t.call(arguments, 0)))\n                },\n                includes: function(t) {\n                    return this.some(function(e) {\n                        return dt(e, t)\n                    })\n                },\n                entries: function() {\n                    return this.__iterator(R)\n                },\n                every: function(t, e) {\n                    Dt(this.size);\n                    var n = !0;\n                    return this.__iterate(function(r, i, o) {\n                        if (!t.call(e, r, i, o)) return n = !1, !1\n                    }), n\n                },\n                filter: function(t, e) {\n                    return He(this, Be(this, t, e, !0))\n                },\n                find: function(t, e, n) {\n                    var r = this.findEntry(t, e);\n                    return r ? r[1] : n\n                },\n                forEach: function(t, e) {\n                    return Dt(this.size), this.__iterate(e ? t.bind(e) : t)\n                },\n                join: function(t) {\n                    Dt(this.size), t = void 0 !== t ? \"\" + t : \",\";\n                    var e = \"\",\n                        n = !0;\n                    return this.__iterate(function(r) {\n                        n ? n = !1 : e += t, e += null !== r && void 0 !== r ? r.toString() : \"\"\n                    }), e\n                },\n                keys: function() {\n                    return this.__iterator(C)\n                },\n                map: function(t, e) {\n                    return He(this, Fe(this, t, e))\n                },\n                reduce: function(t, e, n) {\n                    var r, i;\n                    return Dt(this.size), arguments.length < 2 ? i = !0 : r = e, this.__iterate(function(e, o, u) {\n                        i ? (i = !1, r = e) : r = t.call(n, r, e, o, u)\n                    }), r\n                },\n                reduceRight: function(t, e, n) {\n                    var r = this.toKeyedSeq().reverse();\n                    return r.reduce.apply(r, arguments)\n                },\n                reverse: function() {\n                    return He(this, Ue(this, !0))\n                },\n                slice: function(t, e) {\n                    return He(this, qe(this, t, e, !0))\n                },\n                some: function(t, e) {\n                    return !this.every(Rn(t), e)\n                },\n                sort: function(t) {\n                    return He(this, Ve(this, t))\n                },\n                values: function() {\n                    return this.__iterator(P)\n                },\n                butLast: function() {\n                    return this.slice(0, -1)\n                },\n                isEmpty: function() {\n                    return void 0 !== this.size ? 0 === this.size : !this.some(function() {\n                        return !0\n                    })\n                },\n                count: function(t, e) {\n                    return A(t ? this.toSeq().filter(t, e) : this)\n                },\n                countBy: function(t, e) {\n                    return function(t, e, n) {\n                        var r = zt().asMutable();\n                        return t.__iterate(function(i, o) {\n                            r.update(e.call(n, i, o, t), 0, function(t) {\n                                return t + 1\n                            })\n                        }), r.asImmutable()\n                    }(this, t, e)\n                },\n                equals: function(t) {\n                    return vt(this, t)\n                },\n                entrySeq: function() {\n                    var t = this;\n                    if (t._cache) return new tt(t._cache);\n                    var e = t.toSeq().map(Pn).toIndexedSeq();\n                    return e.fromEntrySeq = function() {\n                        return t.toSeq()\n                    }, e\n                },\n                filterNot: function(t, e) {\n                    return this.filter(Rn(t), e)\n                },\n                findEntry: function(t, e, n) {\n                    var r = n;\n                    return this.__iterate(function(n, i, o) {\n                        if (t.call(e, n, i, o)) return r = [i, n], !1\n                    }), r\n                },\n                findKey: function(t, e) {\n                    var n = this.findEntry(t, e);\n                    return n && n[0]\n                },\n                findLast: function(t, e, n) {\n                    return this.toKeyedSeq().reverse().find(t, e, n)\n                },\n                findLastEntry: function(t, e, n) {\n                    return this.toKeyedSeq().reverse().findEntry(t, e, n)\n                },\n                findLastKey: function(t, e) {\n                    return this.toKeyedSeq().reverse().findKey(t, e)\n                },\n                first: function() {\n                    return this.find(j)\n                },\n                flatMap: function(t, e) {\n                    return He(this, function(t, e, n) {\n                        var r = Xe(t);\n                        return t.toSeq().map(function(i, o) {\n                            return r(e.call(n, i, o, t))\n                        }).flatten(!0)\n                    }(this, t, e))\n                },\n                flatten: function(t) {\n                    return He(this, We(this, t, !0))\n                },\n                fromEntrySeq: function() {\n                    return new De(this)\n                },\n                get: function(t, e) {\n                    return this.find(function(e, n) {\n                        return dt(n, t)\n                    }, void 0, e)\n                },\n                getIn: function(t, e) {\n                    for (var n, r = this, i = nn(t); !(n = i.next()).done;) {\n                        var o = n.value;\n                        if ((r = r && r.get ? r.get(o, m) : m) === m) return e\n                    }\n                    return r\n                },\n                groupBy: function(t, e) {\n                    return function(t, e, n) {\n                        var r = a(t),\n                            i = (f(t) ? Ie() : zt()).asMutable();\n                        t.__iterate(function(o, u) {\n                            i.update(e.call(n, o, u, t), function(t) {\n                                return (t = t || []).push(r ? [u, o] : o), t\n                            })\n                        });\n                        var o = Xe(t);\n                        return i.map(function(e) {\n                            return He(t, o(e))\n                        })\n                    }(this, t, e)\n                },\n                has: function(t) {\n                    return this.get(t, m) !== m\n                },\n                hasIn: function(t) {\n                    return this.getIn(t, m) !== m\n                },\n                isSubset: function(t) {\n                    return t = \"function\" == typeof t.includes ? t : n(t), this.every(function(e) {\n                        return t.includes(e)\n                    })\n                },\n                isSuperset: function(t) {\n                    return (t = \"function\" == typeof t.isSubset ? t : n(t)).isSubset(this)\n                },\n                keyOf: function(t) {\n                    return this.findKey(function(e) {\n                        return dt(e, t)\n                    })\n                },\n                keySeq: function() {\n                    return this.toSeq().map(Cn).toIndexedSeq()\n                },\n                last: function() {\n                    return this.toSeq().reverse().first()\n                },\n                lastKeyOf: function(t) {\n                    return this.toKeyedSeq().reverse().keyOf(t)\n                },\n                max: function(t) {\n                    return Ke(this, t)\n                },\n                maxBy: function(t, e) {\n                    return Ke(this, e, t)\n                },\n                min: function(t) {\n                    return Ke(this, t ? Nn(t) : zn)\n                },\n                minBy: function(t, e) {\n                    return Ke(this, e ? Nn(e) : zn, t)\n                },\n                rest: function() {\n                    return this.slice(1)\n                },\n                skip: function(t) {\n                    return this.slice(Math.max(0, t))\n                },\n                skipLast: function(t) {\n                    return He(this, this.toSeq().reverse().skip(t).reverse())\n                },\n                skipWhile: function(t, e) {\n                    return He(this, Ye(this, t, e, !0))\n                },\n                skipUntil: function(t, e) {\n                    return this.skipWhile(Rn(t), e)\n                },\n                sortBy: function(t, e) {\n                    return He(this, Ve(this, e, t))\n                },\n                take: function(t) {\n                    return this.slice(0, Math.max(0, t))\n                },\n                takeLast: function(t) {\n                    return He(this, this.toSeq().reverse().take(t).reverse())\n                },\n                takeWhile: function(t, e) {\n                    return He(this, function(t, e, n) {\n                        var r = Qe(t);\n                        return r.__iterateUncached = function(r, i) {\n                            var o = this;\n                            if (i) return this.cacheResult().__iterate(r, i);\n                            var u = 0;\n                            return t.__iterate(function(t, i, a) {\n                                return e.call(n, t, i, a) && ++u && r(t, i, o)\n                            }), u\n                        }, r.__iteratorUncached = function(r, i) {\n                            var o = this;\n                            if (i) return this.cacheResult().__iterator(r, i);\n                            var u = t.__iterator(R, i),\n                                a = !0;\n                            return new z(function() {\n                                if (!a) return {\n                                    value: void 0,\n                                    done: !0\n                                };\n                                var t = u.next();\n                                if (t.done) return t;\n                                var i = t.value,\n                                    s = i[0],\n                                    c = i[1];\n                                return e.call(n, c, s, o) ? r === R ? t : F(r, s, c, t) : (a = !1, {\n                                    value: void 0,\n                                    done: !0\n                                })\n                            })\n                        }, r\n                    }(this, t, e))\n                },\n                takeUntil: function(t, e) {\n                    return this.takeWhile(Rn(t), e)\n                },\n                valueSeq: function() {\n                    return this.toIndexedSeq()\n                },\n                hashCode: function() {\n                    return this.__hash || (this.__hash = function(t) {\n                        if (t.size === 1 / 0) return 0;\n                        var e = f(t),\n                            n = a(t),\n                            r = e ? 1 : 0;\n                        return function(t, e) {\n                            return e = St(e, 3432918353), e = St(e << 15 | e >>> -15, 461845907), e = St(e << 13 | e >>> -13, 5), e = St((e = (e + 3864292196 | 0) ^ t) ^ e >>> 16, 2246822507), e = Et((e = St(e ^ e >>> 13, 3266489909)) ^ e >>> 16)\n                        }(t.__iterate(n ? e ? function(t, e) {\n                            r = 31 * r + Fn(At(t), At(e)) | 0\n                        } : function(t, e) {\n                            r = r + Fn(At(t), At(e)) | 0\n                        } : e ? function(t) {\n                            r = 31 * r + At(t) | 0\n                        } : function(t) {\n                            r = r + At(t) | 0\n                        }), r)\n                    }(this))\n                }\n            });\n            var Mn = n.prototype;\n            Mn[l] = !0, Mn[D] = Mn.values, Mn.__toJS = Mn.toArray, Mn.__toStringMapper = Ln, Mn.inspect = Mn.toSource = function() {\n                return this.toString()\n            }, Mn.chain = Mn.flatMap, Mn.contains = Mn.includes, In(r, {\n                flip: function() {\n                    return He(this, ze(this))\n                },\n                mapEntries: function(t, e) {\n                    var n = this,\n                        r = 0;\n                    return He(this, this.toSeq().map(function(i, o) {\n                        return t.call(e, [o, i], r++, n)\n                    }).fromEntrySeq())\n                },\n                mapKeys: function(t, e) {\n                    var n = this;\n                    return He(this, this.toSeq().flip().map(function(r, i) {\n                        return t.call(e, r, i, n)\n                    }).flip())\n                }\n            });\n            var Tn = r.prototype;\n\n            function Cn(t, e) {\n                return e\n            }\n\n            function Pn(t, e) {\n                return [e, t]\n            }\n\n            function Rn(t) {\n                return function() {\n                    return !t.apply(this, arguments)\n                }\n            }\n\n            function Nn(t) {\n                return function() {\n                    return -t.apply(this, arguments)\n                }\n            }\n\n            function Ln(t) {\n                return \"string\" == typeof t ? JSON.stringify(t) : String(t)\n            }\n\n            function Dn() {\n                return E(arguments)\n            }\n\n            function zn(t, e) {\n                return t < e ? 1 : t > e ? -1 : 0\n            }\n\n            function Fn(t, e) {\n                return t ^ e + 2654435769 + (t << 6) + (t >> 2) | 0\n            }\n            return Tn[p] = !0, Tn[D] = Mn.entries, Tn.__toJS = Mn.toObject, Tn.__toStringMapper = function(t, e) {\n                return JSON.stringify(e) + \": \" + Ln(t)\n            }, In(i, {\n                toKeyedSeq: function() {\n                    return new Re(this, !1)\n                },\n                filter: function(t, e) {\n                    return He(this, Be(this, t, e, !1))\n                },\n                findIndex: function(t, e) {\n                    var n = this.findEntry(t, e);\n                    return n ? n[0] : -1\n                },\n                indexOf: function(t) {\n                    var e = this.keyOf(t);\n                    return void 0 === e ? -1 : e\n                },\n                lastIndexOf: function(t) {\n                    var e = this.lastKeyOf(t);\n                    return void 0 === e ? -1 : e\n                },\n                reverse: function() {\n                    return He(this, Ue(this, !1))\n                },\n                slice: function(t, e) {\n                    return He(this, qe(this, t, e, !1))\n                },\n                splice: function(t, e) {\n                    var n = arguments.length;\n                    if (e = Math.max(0 | e, 0), 0 === n || 2 === n && !e) return this;\n                    t = I(t, t < 0 ? this.count() : this.size);\n                    var r = this.slice(0, t);\n                    return He(this, 1 === n ? r : r.concat(E(arguments, 2), this.slice(t + e)))\n                },\n                findLastIndex: function(t, e) {\n                    var n = this.findLastEntry(t, e);\n                    return n ? n[0] : -1\n                },\n                first: function() {\n                    return this.get(0)\n                },\n                flatten: function(t) {\n                    return He(this, We(this, t, !1))\n                },\n                get: function(t, e) {\n                    return (t = O(this, t)) < 0 || this.size === 1 / 0 || void 0 !== this.size && t > this.size ? e : this.find(function(e, n) {\n                        return n === t\n                    }, void 0, e)\n                },\n                has: function(t) {\n                    return (t = O(this, t)) >= 0 && (void 0 !== this.size ? this.size === 1 / 0 || t < this.size : -1 !== this.indexOf(t))\n                },\n                interpose: function(t) {\n                    return He(this, function(t, e) {\n                        var n = Qe(t);\n                        return n.size = t.size && 2 * t.size - 1, n.__iterateUncached = function(n, r) {\n                            var i = this,\n                                o = 0;\n                            return t.__iterate(function(t, r) {\n                                return (!o || !1 !== n(e, o++, i)) && !1 !== n(t, o++, i)\n                            }, r), o\n                        }, n.__iteratorUncached = function(n, r) {\n                            var i, o = t.__iterator(P, r),\n                                u = 0;\n                            return new z(function() {\n                                return (!i || u % 2) && (i = o.next()).done ? i : u % 2 ? F(n, u++, e) : F(n, u++, i.value, i)\n                            })\n                        }, n\n                    }(this, t))\n                },\n                interleave: function() {\n                    var t = [this].concat(E(arguments)),\n                        e = $e(this.toSeq(), $.of, t),\n                        n = e.flatten(!0);\n                    return e.size && (n.size = e.size * t.length), He(this, n)\n                },\n                keySeq: function() {\n                    return mt(0, this.size)\n                },\n                last: function() {\n                    return this.get(-1)\n                },\n                skipWhile: function(t, e) {\n                    return He(this, Ye(this, t, e, !1))\n                },\n                zip: function() {\n                    return He(this, $e(this, Dn, [this].concat(E(arguments))))\n                },\n                zipWith: function(t) {\n                    var e = E(arguments);\n                    return e[0] = this, He(this, $e(this, t, e))\n                }\n            }), i.prototype[h] = !0, i.prototype[d] = !0, In(o, {\n                get: function(t, e) {\n                    return this.has(t) ? t : e\n                },\n                includes: function(t) {\n                    return this.has(t)\n                },\n                keySeq: function() {\n                    return this.valueSeq()\n                }\n            }), o.prototype.has = Mn.includes, o.prototype.contains = o.prototype.includes, In(G, r.prototype), In($, i.prototype), In(H, o.prototype), In(bt, r.prototype), In(wt, i.prototype), In(xt, o.prototype), {\n                Iterable: n,\n                Seq: K,\n                Collection: _t,\n                Map: zt,\n                OrderedMap: Ie,\n                List: pe,\n                Stack: xn,\n                Set: sn,\n                OrderedSet: yn,\n                Record: rn,\n                Range: mt,\n                Repeat: yt,\n                is: dt,\n                fromJS: lt\n            }\n        }, t.exports = r()\n    }, function(t, e, n) {\n        (function(e) {\n            var n = \"object\" == typeof e && e && e.Object === Object && e;\n            t.exports = n\n        }).call(e, n(11))\n    }, function(t, e, n) {\n        var r = n(347)(\"toUpperCase\");\n        t.exports = r\n    }, function(t, e) {\n        var n = RegExp(\"[\\\\u200d\\\\ud800-\\\\udfff\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff\\\\ufe0e\\\\ufe0f]\");\n        t.exports = function(t) {\n            return n.test(t)\n        }\n    }, function(t, e, n) {\n        var r = n(109),\n            i = \"Expected a function\";\n\n        function o(t, e) {\n            if (\"function\" != typeof t || null != e && \"function\" != typeof e) throw new TypeError(i);\n            var n = function() {\n                var r = arguments,\n                    i = e ? e.apply(this, r) : r[0],\n                    o = n.cache;\n                if (o.has(i)) return o.get(i);\n                var u = t.apply(this, r);\n                return n.cache = o.set(i, u) || o, u\n            };\n            return n.cache = new(o.Cache || r), n\n        }\n        o.Cache = r, t.exports = o\n    }, function(t, e, n) {\n        var r = n(48),\n            i = n(50),\n            o = \"[object AsyncFunction]\",\n            u = \"[object Function]\",\n            a = \"[object GeneratorFunction]\",\n            s = \"[object Proxy]\";\n        t.exports = function(t) {\n            if (!i(t)) return !1;\n            var e = r(t);\n            return e == u || e == a || e == o || e == s\n        }\n    }, function(t, e) {\n        var n = Function.prototype.toString;\n        t.exports = function(t) {\n            if (null != t) {\n                try {\n                    return n.call(t)\n                } catch (t) {}\n                try {\n                    return t + \"\"\n                } catch (t) {}\n            }\n            return \"\"\n        }\n    }, function(t, e, n) {\n        var r = n(72),\n            i = n(387),\n            o = n(388),\n            u = n(389),\n            a = n(390),\n            s = n(391);\n\n        function c(t) {\n            var e = this.__data__ = new r(t);\n            this.size = e.size\n        }\n        c.prototype.clear = i, c.prototype.delete = o, c.prototype.get = u, c.prototype.has = a, c.prototype.set = s, t.exports = c\n    }, function(t, e, n) {\n        var r = n(392),\n            i = n(49);\n        t.exports = function t(e, n, o, u, a) {\n            return e === n || (null == e || null == n || !i(e) && !i(n) ? e != e && n != n : r(e, n, o, u, t, a))\n        }\n    }, function(t, e, n) {\n        var r = n(393),\n            i = n(178),\n            o = n(396),\n            u = 1,\n            a = 2;\n        t.exports = function(t, e, n, s, c, f) {\n            var l = n & u,\n                p = t.length,\n                h = e.length;\n            if (p != h && !(l && h > p)) return !1;\n            var d = f.get(t);\n            if (d && f.get(e)) return d == e;\n            var v = -1,\n                y = !0,\n                g = n & a ? new r : void 0;\n            for (f.set(t, e), f.set(e, t); ++v < p;) {\n                var m = t[v],\n                    _ = e[v];\n                if (s) var b = l ? s(_, m, v, e, t, f) : s(m, _, v, t, e, f);\n                if (void 0 !== b) {\n                    if (b) continue;\n                    y = !1;\n                    break\n                }\n                if (g) {\n                    if (!i(e, function(t, e) {\n                        if (!o(g, e) && (m === t || c(m, t, n, s, f))) return g.push(e)\n                    })) {\n                        y = !1;\n                        break\n                    }\n                } else if (m !== _ && !c(m, _, n, s, f)) {\n                    y = !1;\n                    break\n                }\n            }\n            return f.delete(t), f.delete(e), y\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            for (var n = -1, r = null == t ? 0 : t.length; ++n < r;)\n                if (e(t[n], n, t)) return !0;\n            return !1\n        }\n    }, function(t, e, n) {\n        var r = n(410),\n            i = n(49),\n            o = Object.prototype,\n            u = o.hasOwnProperty,\n            a = o.propertyIsEnumerable,\n            s = r(function() {\n                return arguments\n            }()) ? r : function(t) {\n                return i(t) && u.call(t, \"callee\") && !a.call(t, \"callee\")\n            };\n        t.exports = s\n    }, function(t, e, n) {\n        (function(t) {\n            var r = n(7),\n                i = n(411),\n                o = \"object\" == typeof e && e && !e.nodeType && e,\n                u = o && \"object\" == typeof t && t && !t.nodeType && t,\n                a = u && u.exports === o ? r.Buffer : void 0,\n                s = (a ? a.isBuffer : void 0) || i;\n            t.exports = s\n        }).call(e, n(181)(t))\n    }, function(t, e) {\n        t.exports = function(t) {\n            return t.webpackPolyfill || (t.deprecate = function() {}, t.paths = [], t.children || (t.children = []), Object.defineProperty(t, \"loaded\", {\n                enumerable: !0,\n                get: function() {\n                    return t.l\n                }\n            }), Object.defineProperty(t, \"id\", {\n                enumerable: !0,\n                get: function() {\n                    return t.i\n                }\n            }), t.webpackPolyfill = 1), t\n        }\n    }, function(t, e, n) {\n        var r = n(412),\n            i = n(413),\n            o = n(414),\n            u = o && o.isTypedArray,\n            a = u ? i(u) : r;\n        t.exports = a\n    }, function(t, e, n) {\n        var r = n(50);\n        t.exports = function(t) {\n            return t == t && !r(t)\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return function(n) {\n                return null != n && n[t] === e && (void 0 !== e || t in Object(n))\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(186),\n            i = n(78);\n        t.exports = function(t, e) {\n            for (var n = 0, o = (e = r(e, t)).length; null != t && n < o;) t = t[i(e[n++])];\n            return n && n == o ? t : void 0\n        }\n    }, function(t, e, n) {\n        var r = n(8),\n            i = n(114),\n            o = n(427),\n            u = n(47);\n        t.exports = function(t, e) {\n            return r(t) ? t : i(t, e) ? [t] : o(u(t))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        (function(e, r) {\n            var i = n(79);\n            t.exports = _;\n            var o, u = n(167);\n            _.ReadableState = m;\n            n(115).EventEmitter;\n            var a = function(t, e) {\n                    return t.listeners(e).length\n                },\n                s = n(188),\n                c = n(80).Buffer,\n                f = e.Uint8Array || function() {};\n            var l = n(51);\n            l.inherits = n(35);\n            var p = n(453),\n                h = void 0;\n            h = p && p.debuglog ? p.debuglog(\"stream\") : function() {};\n            var d, v = n(454),\n                y = n(189);\n            l.inherits(_, s);\n            var g = [\"error\", \"close\", \"destroy\", \"pause\", \"resume\"];\n\n            function m(t, e) {\n                o = o || n(21), t = t || {};\n                var r = e instanceof o;\n                this.objectMode = !!t.objectMode, r && (this.objectMode = this.objectMode || !!t.readableObjectMode);\n                var i = t.highWaterMark,\n                    u = t.readableHighWaterMark,\n                    a = this.objectMode ? 16 : 16384;\n                this.highWaterMark = i || 0 === i ? i : r && (u || 0 === u) ? u : a, this.highWaterMark = Math.floor(this.highWaterMark), this.buffer = new v, this.length = 0, this.pipes = null, this.pipesCount = 0, this.flowing = null, this.ended = !1, this.endEmitted = !1, this.reading = !1, this.sync = !0, this.needReadable = !1, this.emittedReadable = !1, this.readableListening = !1, this.resumeScheduled = !1, this.destroyed = !1, this.defaultEncoding = t.defaultEncoding || \"utf8\", this.awaitDrain = 0, this.readingMore = !1, this.decoder = null, this.encoding = null, t.encoding && (d || (d = n(191).StringDecoder), this.decoder = new d(t.encoding), this.encoding = t.encoding)\n            }\n\n            function _(t) {\n                if (o = o || n(21), !(this instanceof _)) return new _(t);\n                this._readableState = new m(t, this), this.readable = !0, t && (\"function\" == typeof t.read && (this._read = t.read), \"function\" == typeof t.destroy && (this._destroy = t.destroy)), s.call(this)\n            }\n\n            function b(t, e, n, r, i) {\n                var o, u = t._readableState;\n                null === e ? (u.reading = !1, function(t, e) {\n                    if (e.ended) return;\n                    if (e.decoder) {\n                        var n = e.decoder.end();\n                        n && n.length && (e.buffer.push(n), e.length += e.objectMode ? 1 : n.length)\n                    }\n                    e.ended = !0, E(t)\n                }(t, u)) : (i || (o = function(t, e) {\n                    var n;\n                    r = e, c.isBuffer(r) || r instanceof f || \"string\" == typeof e || void 0 === e || t.objectMode || (n = new TypeError(\"Invalid non-string/buffer chunk\"));\n                    var r;\n                    return n\n                }(u, e)), o ? t.emit(\"error\", o) : u.objectMode || e && e.length > 0 ? (\"string\" == typeof e || u.objectMode || Object.getPrototypeOf(e) === c.prototype || (e = function(t) {\n                    return c.from(t)\n                }(e)), r ? u.endEmitted ? t.emit(\"error\", new Error(\"stream.unshift() after end event\")) : w(t, u, e, !0) : u.ended ? t.emit(\"error\", new Error(\"stream.push() after EOF\")) : (u.reading = !1, u.decoder && !n ? (e = u.decoder.write(e), u.objectMode || 0 !== e.length ? w(t, u, e, !1) : O(t, u)) : w(t, u, e, !1))) : r || (u.reading = !1));\n                return function(t) {\n                    return !t.ended && (t.needReadable || t.length < t.highWaterMark || 0 === t.length)\n                }(u)\n            }\n\n            function w(t, e, n, r) {\n                e.flowing && 0 === e.length && !e.sync ? (t.emit(\"data\", n), t.read(0)) : (e.length += e.objectMode ? 1 : n.length, r ? e.buffer.unshift(n) : e.buffer.push(n), e.needReadable && E(t)), O(t, e)\n            }\n            Object.defineProperty(_.prototype, \"destroyed\", {\n                get: function() {\n                    return void 0 !== this._readableState && this._readableState.destroyed\n                },\n                set: function(t) {\n                    this._readableState && (this._readableState.destroyed = t)\n                }\n            }), _.prototype.destroy = y.destroy, _.prototype._undestroy = y.undestroy, _.prototype._destroy = function(t, e) {\n                this.push(null), e(t)\n            }, _.prototype.push = function(t, e) {\n                var n, r = this._readableState;\n                return r.objectMode ? n = !0 : \"string\" == typeof t && ((e = e || r.defaultEncoding) !== r.encoding && (t = c.from(t, e), e = \"\"), n = !0), b(this, t, e, !1, n)\n            }, _.prototype.unshift = function(t) {\n                return b(this, t, null, !0, !1)\n            }, _.prototype.isPaused = function() {\n                return !1 === this._readableState.flowing\n            }, _.prototype.setEncoding = function(t) {\n                return d || (d = n(191).StringDecoder), this._readableState.decoder = new d(t), this._readableState.encoding = t, this\n            };\n            var x = 8388608;\n\n            function S(t, e) {\n                return t <= 0 || 0 === e.length && e.ended ? 0 : e.objectMode ? 1 : t != t ? e.flowing && e.length ? e.buffer.head.data.length : e.length : (t > e.highWaterMark && (e.highWaterMark = function(t) {\n                    return t >= x ? t = x : (t--, t |= t >>> 1, t |= t >>> 2, t |= t >>> 4, t |= t >>> 8, t |= t >>> 16, t++), t\n                }(t)), t <= e.length ? t : e.ended ? e.length : (e.needReadable = !0, 0))\n            }\n\n            function E(t) {\n                var e = t._readableState;\n                e.needReadable = !1, e.emittedReadable || (h(\"emitReadable\", e.flowing), e.emittedReadable = !0, e.sync ? i.nextTick(A, t) : A(t))\n            }\n\n            function A(t) {\n                h(\"emit readable\"), t.emit(\"readable\"), M(t)\n            }\n\n            function O(t, e) {\n                e.readingMore || (e.readingMore = !0, i.nextTick(j, t, e))\n            }\n\n            function j(t, e) {\n                for (var n = e.length; !e.reading && !e.flowing && !e.ended && e.length < e.highWaterMark && (h(\"maybeReadMore read 0\"), t.read(0), n !== e.length);) n = e.length;\n                e.readingMore = !1\n            }\n\n            function k(t) {\n                h(\"readable nexttick read 0\"), t.read(0)\n            }\n\n            function I(t, e) {\n                e.reading || (h(\"resume read 0\"), t.read(0)), e.resumeScheduled = !1, e.awaitDrain = 0, t.emit(\"resume\"), M(t), e.flowing && !e.reading && t.read(0)\n            }\n\n            function M(t) {\n                var e = t._readableState;\n                for (h(\"flow\", e.flowing); e.flowing && null !== t.read(););\n            }\n\n            function T(t, e) {\n                return 0 === e.length ? null : (e.objectMode ? n = e.buffer.shift() : !t || t >= e.length ? (n = e.decoder ? e.buffer.join(\"\") : 1 === e.buffer.length ? e.buffer.head.data : e.buffer.concat(e.length), e.buffer.clear()) : n = function(t, e, n) {\n                    var r;\n                    t < e.head.data.length ? (r = e.head.data.slice(0, t), e.head.data = e.head.data.slice(t)) : r = t === e.head.data.length ? e.shift() : n ? function(t, e) {\n                        var n = e.head,\n                            r = 1,\n                            i = n.data;\n                        t -= i.length;\n                        for (; n = n.next;) {\n                            var o = n.data,\n                                u = t > o.length ? o.length : t;\n                            if (u === o.length ? i += o : i += o.slice(0, t), 0 === (t -= u)) {\n                                u === o.length ? (++r, n.next ? e.head = n.next : e.head = e.tail = null) : (e.head = n, n.data = o.slice(u));\n                                break\n                            }++r\n                        }\n                        return e.length -= r, i\n                    }(t, e) : function(t, e) {\n                        var n = c.allocUnsafe(t),\n                            r = e.head,\n                            i = 1;\n                        r.data.copy(n), t -= r.data.length;\n                        for (; r = r.next;) {\n                            var o = r.data,\n                                u = t > o.length ? o.length : t;\n                            if (o.copy(n, n.length - t, 0, u), 0 === (t -= u)) {\n                                u === o.length ? (++i, r.next ? e.head = r.next : e.head = e.tail = null) : (e.head = r, r.data = o.slice(u));\n                                break\n                            }++i\n                        }\n                        return e.length -= i, n\n                    }(t, e);\n                    return r\n                }(t, e.buffer, e.decoder), n);\n                var n\n            }\n\n            function C(t) {\n                var e = t._readableState;\n                if (e.length > 0) throw new Error('\"endReadable()\" called on non-empty stream');\n                e.endEmitted || (e.ended = !0, i.nextTick(P, e, t))\n            }\n\n            function P(t, e) {\n                t.endEmitted || 0 !== t.length || (t.endEmitted = !0, e.readable = !1, e.emit(\"end\"))\n            }\n\n            function R(t, e) {\n                for (var n = 0, r = t.length; n < r; n++)\n                    if (t[n] === e) return n;\n                return -1\n            }\n            _.prototype.read = function(t) {\n                h(\"read\", t), t = parseInt(t, 10);\n                var e = this._readableState,\n                    n = t;\n                if (0 !== t && (e.emittedReadable = !1), 0 === t && e.needReadable && (e.length >= e.highWaterMark || e.ended)) return h(\"read: emitReadable\", e.length, e.ended), 0 === e.length && e.ended ? C(this) : E(this), null;\n                if (0 === (t = S(t, e)) && e.ended) return 0 === e.length && C(this), null;\n                var r, i = e.needReadable;\n                return h(\"need readable\", i), (0 === e.length || e.length - t < e.highWaterMark) && h(\"length less than watermark\", i = !0), e.ended || e.reading ? h(\"reading or ended\", i = !1) : i && (h(\"do read\"), e.reading = !0, e.sync = !0, 0 === e.length && (e.needReadable = !0), this._read(e.highWaterMark), e.sync = !1, e.reading || (t = S(n, e))), null === (r = t > 0 ? T(t, e) : null) ? (e.needReadable = !0, t = 0) : e.length -= t, 0 === e.length && (e.ended || (e.needReadable = !0), n !== t && e.ended && C(this)), null !== r && this.emit(\"data\", r), r\n            }, _.prototype._read = function(t) {\n                this.emit(\"error\", new Error(\"_read() is not implemented\"))\n            }, _.prototype.pipe = function(t, e) {\n                var n = this,\n                    o = this._readableState;\n                switch (o.pipesCount) {\n                    case 0:\n                        o.pipes = t;\n                        break;\n                    case 1:\n                        o.pipes = [o.pipes, t];\n                        break;\n                    default:\n                        o.pipes.push(t)\n                }\n                o.pipesCount += 1, h(\"pipe count=%d opts=%j\", o.pipesCount, e);\n                var s = (!e || !1 !== e.end) && t !== r.stdout && t !== r.stderr ? f : _;\n\n                function c(e, r) {\n                    h(\"onunpipe\"), e === n && r && !1 === r.hasUnpiped && (r.hasUnpiped = !0, h(\"cleanup\"), t.removeListener(\"close\", g), t.removeListener(\"finish\", m), t.removeListener(\"drain\", l), t.removeListener(\"error\", y), t.removeListener(\"unpipe\", c), n.removeListener(\"end\", f), n.removeListener(\"end\", _), n.removeListener(\"data\", v), p = !0, !o.awaitDrain || t._writableState && !t._writableState.needDrain || l())\n                }\n\n                function f() {\n                    h(\"onend\"), t.end()\n                }\n                o.endEmitted ? i.nextTick(s) : n.once(\"end\", s), t.on(\"unpipe\", c);\n                var l = function(t) {\n                    return function() {\n                        var e = t._readableState;\n                        h(\"pipeOnDrain\", e.awaitDrain), e.awaitDrain && e.awaitDrain--, 0 === e.awaitDrain && a(t, \"data\") && (e.flowing = !0, M(t))\n                    }\n                }(n);\n                t.on(\"drain\", l);\n                var p = !1;\n                var d = !1;\n\n                function v(e) {\n                    h(\"ondata\"), d = !1, !1 !== t.write(e) || d || ((1 === o.pipesCount && o.pipes === t || o.pipesCount > 1 && -1 !== R(o.pipes, t)) && !p && (h(\"false write response, pause\", n._readableState.awaitDrain), n._readableState.awaitDrain++, d = !0), n.pause())\n                }\n\n                function y(e) {\n                    h(\"onerror\", e), _(), t.removeListener(\"error\", y), 0 === a(t, \"error\") && t.emit(\"error\", e)\n                }\n\n                function g() {\n                    t.removeListener(\"finish\", m), _()\n                }\n\n                function m() {\n                    h(\"onfinish\"), t.removeListener(\"close\", g), _()\n                }\n\n                function _() {\n                    h(\"unpipe\"), n.unpipe(t)\n                }\n                return n.on(\"data\", v),\n                    function(t, e, n) {\n                        if (\"function\" == typeof t.prependListener) return t.prependListener(e, n);\n                        t._events && t._events[e] ? u(t._events[e]) ? t._events[e].unshift(n) : t._events[e] = [n, t._events[e]] : t.on(e, n)\n                    }(t, \"error\", y), t.once(\"close\", g), t.once(\"finish\", m), t.emit(\"pipe\", n), o.flowing || (h(\"pipe resume\"), n.resume()), t\n            }, _.prototype.unpipe = function(t) {\n                var e = this._readableState,\n                    n = {\n                        hasUnpiped: !1\n                    };\n                if (0 === e.pipesCount) return this;\n                if (1 === e.pipesCount) return t && t !== e.pipes ? this : (t || (t = e.pipes), e.pipes = null, e.pipesCount = 0, e.flowing = !1, t && t.emit(\"unpipe\", this, n), this);\n                if (!t) {\n                    var r = e.pipes,\n                        i = e.pipesCount;\n                    e.pipes = null, e.pipesCount = 0, e.flowing = !1;\n                    for (var o = 0; o < i; o++) r[o].emit(\"unpipe\", this, n);\n                    return this\n                }\n                var u = R(e.pipes, t);\n                return -1 === u ? this : (e.pipes.splice(u, 1), e.pipesCount -= 1, 1 === e.pipesCount && (e.pipes = e.pipes[0]), t.emit(\"unpipe\", this, n), this)\n            }, _.prototype.on = function(t, e) {\n                var n = s.prototype.on.call(this, t, e);\n                if (\"data\" === t) !1 !== this._readableState.flowing && this.resume();\n                else if (\"readable\" === t) {\n                    var r = this._readableState;\n                    r.endEmitted || r.readableListening || (r.readableListening = r.needReadable = !0, r.emittedReadable = !1, r.reading ? r.length && E(this) : i.nextTick(k, this))\n                }\n                return n\n            }, _.prototype.addListener = _.prototype.on, _.prototype.resume = function() {\n                var t = this._readableState;\n                return t.flowing || (h(\"resume\"), t.flowing = !0, function(t, e) {\n                    e.resumeScheduled || (e.resumeScheduled = !0, i.nextTick(I, t, e))\n                }(this, t)), this\n            }, _.prototype.pause = function() {\n                return h(\"call pause flowing=%j\", this._readableState.flowing), !1 !== this._readableState.flowing && (h(\"pause\"), this._readableState.flowing = !1, this.emit(\"pause\")), this\n            }, _.prototype.wrap = function(t) {\n                var e = this,\n                    n = this._readableState,\n                    r = !1;\n                for (var i in t.on(\"end\", function() {\n                    if (h(\"wrapped end\"), n.decoder && !n.ended) {\n                        var t = n.decoder.end();\n                        t && t.length && e.push(t)\n                    }\n                    e.push(null)\n                }), t.on(\"data\", function(i) {\n                    (h(\"wrapped data\"), n.decoder && (i = n.decoder.write(i)), !n.objectMode || null !== i && void 0 !== i) && ((n.objectMode || i && i.length) && (e.push(i) || (r = !0, t.pause())))\n                }), t) void 0 === this[i] && \"function\" == typeof t[i] && (this[i] = function(e) {\n                    return function() {\n                        return t[e].apply(t, arguments)\n                    }\n                }(i));\n                for (var o = 0; o < g.length; o++) t.on(g[o], this.emit.bind(this, g[o]));\n                return this._read = function(e) {\n                    h(\"wrapped _read\", e), r && (r = !1, t.resume())\n                }, this\n            }, Object.defineProperty(_.prototype, \"readableHighWaterMark\", {\n                enumerable: !1,\n                get: function() {\n                    return this._readableState.highWaterMark\n                }\n            }), _._fromList = T\n        }).call(e, n(11), n(34))\n    }, function(t, e, n) {\n        t.exports = n(115).EventEmitter\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(79);\n\n        function i(t, e) {\n            t.emit(\"error\", e)\n        }\n        t.exports = {\n            destroy: function(t, e) {\n                var n = this,\n                    o = this._readableState && this._readableState.destroyed,\n                    u = this._writableState && this._writableState.destroyed;\n                return o || u ? (e ? e(t) : !t || this._writableState && this._writableState.errorEmitted || r.nextTick(i, this, t), this) : (this._readableState && (this._readableState.destroyed = !0), this._writableState && (this._writableState.destroyed = !0), this._destroy(t || null, function(t) {\n                    !e && t ? (r.nextTick(i, n, t), n._writableState && (n._writableState.errorEmitted = !0)) : e && e(t)\n                }), this)\n            },\n            undestroy: function() {\n                this._readableState && (this._readableState.destroyed = !1, this._readableState.reading = !1, this._readableState.ended = !1, this._readableState.endEmitted = !1), this._writableState && (this._writableState.destroyed = !1, this._writableState.ended = !1, this._writableState.ending = !1, this._writableState.finished = !1, this._writableState.errorEmitted = !1)\n            }\n        }\n    }, function(t, e, n) {\n        (function(t) {\n            var r = void 0 !== t && t || \"undefined\" != typeof self && self || window,\n                i = Function.prototype.apply;\n\n            function o(t, e) {\n                this._id = t, this._clearFn = e\n            }\n            e.setTimeout = function() {\n                return new o(i.call(setTimeout, r, arguments), clearTimeout)\n            }, e.setInterval = function() {\n                return new o(i.call(setInterval, r, arguments), clearInterval)\n            }, e.clearTimeout = e.clearInterval = function(t) {\n                t && t.close()\n            }, o.prototype.unref = o.prototype.ref = function() {}, o.prototype.close = function() {\n                this._clearFn.call(r, this._id)\n            }, e.enroll = function(t, e) {\n                clearTimeout(t._idleTimeoutId), t._idleTimeout = e\n            }, e.unenroll = function(t) {\n                clearTimeout(t._idleTimeoutId), t._idleTimeout = -1\n            }, e._unrefActive = e.active = function(t) {\n                clearTimeout(t._idleTimeoutId);\n                var e = t._idleTimeout;\n                e >= 0 && (t._idleTimeoutId = setTimeout(function() {\n                    t._onTimeout && t._onTimeout()\n                }, e))\n            }, n(456), e.setImmediate = \"undefined\" != typeof self && self.setImmediate || void 0 !== t && t.setImmediate || this && this.setImmediate, e.clearImmediate = \"undefined\" != typeof self && self.clearImmediate || void 0 !== t && t.clearImmediate || this && this.clearImmediate\n        }).call(e, n(11))\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(80).Buffer,\n            i = r.isEncoding || function(t) {\n                switch ((t = \"\" + t) && t.toLowerCase()) {\n                    case \"hex\":\n                    case \"utf8\":\n                    case \"utf-8\":\n                    case \"ascii\":\n                    case \"binary\":\n                    case \"base64\":\n                    case \"ucs2\":\n                    case \"ucs-2\":\n                    case \"utf16le\":\n                    case \"utf-16le\":\n                    case \"raw\":\n                        return !0;\n                    default:\n                        return !1\n                }\n            };\n\n        function o(t) {\n            var e;\n            switch (this.encoding = function(t) {\n                var e = function(t) {\n                    if (!t) return \"utf8\";\n                    for (var e;;) switch (t) {\n                        case \"utf8\":\n                        case \"utf-8\":\n                            return \"utf8\";\n                        case \"ucs2\":\n                        case \"ucs-2\":\n                        case \"utf16le\":\n                        case \"utf-16le\":\n                            return \"utf16le\";\n                        case \"latin1\":\n                        case \"binary\":\n                            return \"latin1\";\n                        case \"base64\":\n                        case \"ascii\":\n                        case \"hex\":\n                            return t;\n                        default:\n                            if (e) return;\n                            t = (\"\" + t).toLowerCase(), e = !0\n                    }\n                }(t);\n                if (\"string\" != typeof e && (r.isEncoding === i || !i(t))) throw new Error(\"Unknown encoding: \" + t);\n                return e || t\n            }(t), this.encoding) {\n                case \"utf16le\":\n                    this.text = s, this.end = c, e = 4;\n                    break;\n                case \"utf8\":\n                    this.fillLast = a, e = 4;\n                    break;\n                case \"base64\":\n                    this.text = f, this.end = l, e = 3;\n                    break;\n                default:\n                    return this.write = p, void(this.end = h)\n            }\n            this.lastNeed = 0, this.lastTotal = 0, this.lastChar = r.allocUnsafe(e)\n        }\n\n        function u(t) {\n            return t <= 127 ? 0 : t >> 5 == 6 ? 2 : t >> 4 == 14 ? 3 : t >> 3 == 30 ? 4 : t >> 6 == 2 ? -1 : -2\n        }\n\n        function a(t) {\n            var e = this.lastTotal - this.lastNeed,\n                n = function(t, e, n) {\n                    if (128 != (192 & e[0])) return t.lastNeed = 0, \"�\";\n                    if (t.lastNeed > 1 && e.length > 1) {\n                        if (128 != (192 & e[1])) return t.lastNeed = 1, \"�\";\n                        if (t.lastNeed > 2 && e.length > 2 && 128 != (192 & e[2])) return t.lastNeed = 2, \"�\"\n                    }\n                }(this, t);\n            return void 0 !== n ? n : this.lastNeed <= t.length ? (t.copy(this.lastChar, e, 0, this.lastNeed), this.lastChar.toString(this.encoding, 0, this.lastTotal)) : (t.copy(this.lastChar, e, 0, t.length), void(this.lastNeed -= t.length))\n        }\n\n        function s(t, e) {\n            if ((t.length - e) % 2 == 0) {\n                var n = t.toString(\"utf16le\", e);\n                if (n) {\n                    var r = n.charCodeAt(n.length - 1);\n                    if (r >= 55296 && r <= 56319) return this.lastNeed = 2, this.lastTotal = 4, this.lastChar[0] = t[t.length - 2], this.lastChar[1] = t[t.length - 1], n.slice(0, -1)\n                }\n                return n\n            }\n            return this.lastNeed = 1, this.lastTotal = 2, this.lastChar[0] = t[t.length - 1], t.toString(\"utf16le\", e, t.length - 1)\n        }\n\n        function c(t) {\n            var e = t && t.length ? this.write(t) : \"\";\n            if (this.lastNeed) {\n                var n = this.lastTotal - this.lastNeed;\n                return e + this.lastChar.toString(\"utf16le\", 0, n)\n            }\n            return e\n        }\n\n        function f(t, e) {\n            var n = (t.length - e) % 3;\n            return 0 === n ? t.toString(\"base64\", e) : (this.lastNeed = 3 - n, this.lastTotal = 3, 1 === n ? this.lastChar[0] = t[t.length - 1] : (this.lastChar[0] = t[t.length - 2], this.lastChar[1] = t[t.length - 1]), t.toString(\"base64\", e, t.length - n))\n        }\n\n        function l(t) {\n            var e = t && t.length ? this.write(t) : \"\";\n            return this.lastNeed ? e + this.lastChar.toString(\"base64\", 0, 3 - this.lastNeed) : e\n        }\n\n        function p(t) {\n            return t.toString(this.encoding)\n        }\n\n        function h(t) {\n            return t && t.length ? this.write(t) : \"\"\n        }\n        e.StringDecoder = o, o.prototype.write = function(t) {\n            if (0 === t.length) return \"\";\n            var e, n;\n            if (this.lastNeed) {\n                if (void 0 === (e = this.fillLast(t))) return \"\";\n                n = this.lastNeed, this.lastNeed = 0\n            } else n = 0;\n            return n < t.length ? e ? e + this.text(t, n) : this.text(t, n) : e || \"\"\n        }, o.prototype.end = function(t) {\n            var e = t && t.length ? this.write(t) : \"\";\n            return this.lastNeed ? e + \"�\" : e\n        }, o.prototype.text = function(t, e) {\n            var n = function(t, e, n) {\n                var r = e.length - 1;\n                if (r < n) return 0;\n                var i = u(e[r]);\n                if (i >= 0) return i > 0 && (t.lastNeed = i - 1), i;\n                if (--r < n || -2 === i) return 0;\n                if ((i = u(e[r])) >= 0) return i > 0 && (t.lastNeed = i - 2), i;\n                if (--r < n || -2 === i) return 0;\n                if ((i = u(e[r])) >= 0) return i > 0 && (2 === i ? i = 0 : t.lastNeed = i - 3), i;\n                return 0\n            }(this, t, e);\n            if (!this.lastNeed) return t.toString(\"utf8\", e);\n            this.lastTotal = n;\n            var r = t.length - (n - this.lastNeed);\n            return t.copy(this.lastChar, 0, r), t.toString(\"utf8\", e, r)\n        }, o.prototype.fillLast = function(t) {\n            if (this.lastNeed <= t.length) return t.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed), this.lastChar.toString(this.encoding, 0, this.lastTotal);\n            t.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, t.length), this.lastNeed -= t.length\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = o;\n        var r = n(21),\n            i = n(51);\n\n        function o(t) {\n            if (!(this instanceof o)) return new o(t);\n            r.call(this, t), this._transformState = {\n                afterTransform: function(t, e) {\n                    var n = this._transformState;\n                    n.transforming = !1;\n                    var r = n.writecb;\n                    if (!r) return this.emit(\"error\", new Error(\"write callback called multiple times\"));\n                    n.writechunk = null, n.writecb = null, null != e && this.push(e), r(t);\n                    var i = this._readableState;\n                    i.reading = !1, (i.needReadable || i.length < i.highWaterMark) && this._read(i.highWaterMark)\n                }.bind(this),\n                needTransform: !1,\n                transforming: !1,\n                writecb: null,\n                writechunk: null,\n                writeencoding: null\n            }, this._readableState.needReadable = !0, this._readableState.sync = !1, t && (\"function\" == typeof t.transform && (this._transform = t.transform), \"function\" == typeof t.flush && (this._flush = t.flush)), this.on(\"prefinish\", u)\n        }\n\n        function u() {\n            var t = this;\n            \"function\" == typeof this._flush ? this._flush(function(e, n) {\n                a(t, e, n)\n            }) : a(this, null, null)\n        }\n\n        function a(t, e, n) {\n            if (e) return t.emit(\"error\", e);\n            if (null != n && t.push(n), t._writableState.length) throw new Error(\"Calling transform done when ws.length != 0\");\n            if (t._transformState.transforming) throw new Error(\"Calling transform done when still transforming\");\n            return t.push(null)\n        }\n        i.inherits = n(35), i.inherits(o, r), o.prototype.push = function(t, e) {\n            return this._transformState.needTransform = !1, r.prototype.push.call(this, t, e)\n        }, o.prototype._transform = function(t, e, n) {\n            throw new Error(\"_transform() is not implemented\")\n        }, o.prototype._write = function(t, e, n) {\n            var r = this._transformState;\n            if (r.writecb = n, r.writechunk = t, r.writeencoding = e, !r.transforming) {\n                var i = this._readableState;\n                (r.needTransform || i.needReadable || i.length < i.highWaterMark) && this._read(i.highWaterMark)\n            }\n        }, o.prototype._read = function(t) {\n            var e = this._transformState;\n            null !== e.writechunk && e.writecb && !e.transforming ? (e.transforming = !0, this._transform(e.writechunk, e.writeencoding, e.afterTransform)) : e.needTransform = !0\n        }, o.prototype._destroy = function(t, e) {\n            var n = this;\n            r.prototype._destroy.call(this, t, function(t) {\n                e(t), n.emit(\"close\")\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(22),\n            i = Array.prototype.forEach,\n            o = Object.create;\n        t.exports = function(t) {\n            var e = o(null);\n            return i.call(arguments, function(t) {\n                r(t) && function(t, e) {\n                    var n;\n                    for (n in t) e[n] = t[n]\n                }(Object(t), e)\n            }), e\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function() {}\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(23);\n        t.exports = function(t, e, n) {\n            var i;\n            return isNaN(t) ? (i = e) >= 0 ? n && i ? i - 1 : i : 1 : !1 !== t && r(t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(472)() ? Object.assign : n(473)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i, o, u, a, s = n(23),\n            c = function(t, e) {\n                return e\n            };\n        try {\n            Object.defineProperty(c, \"length\", {\n                configurable: !0,\n                writable: !1,\n                enumerable: !1,\n                value: 1\n            })\n        } catch (t) {}\n        1 === c.length ? (r = {\n            configurable: !0,\n            writable: !1,\n            enumerable: !1\n        }, i = Object.defineProperty, t.exports = function(t, e) {\n            return e = s(e), t.length === e ? t : (r.value = e, i(t, \"length\", r))\n        }) : (u = n(198), a = [], o = function(t) {\n            var e, n = 0;\n            if (a[t]) return a[t];\n            for (e = []; t--;) e.push(\"a\" + (++n).toString(36));\n            return new Function(\"fn\", \"return function (\" + e.join(\", \") + \") { return fn.apply(this, arguments); };\")\n        }, t.exports = function(t, e) {\n            var n;\n            if (e = s(e), t.length === e) return t;\n            n = o(e)(t);\n            try {\n                u(n, t)\n            } catch (t) {}\n            return n\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(36),\n            i = Object.defineProperty,\n            o = Object.getOwnPropertyDescriptor,\n            u = Object.getOwnPropertyNames,\n            a = Object.getOwnPropertySymbols;\n        t.exports = function(t, e) {\n            var n, s = Object(r(e));\n            if (t = Object(r(t)), u(s).forEach(function(r) {\n                try {\n                    i(t, r, o(e, r))\n                } catch (t) {\n                    n = t\n                }\n            }), \"function\" == typeof a && a(s).forEach(function(r) {\n                try {\n                    i(t, r, o(e, r))\n                } catch (t) {\n                    n = t\n                }\n            }), void 0 !== n) throw n;\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(12),\n            i = n(81),\n            o = Function.prototype.call;\n        t.exports = function(t, e) {\n            var n = {},\n                u = arguments[2];\n            return r(e), i(t, function(t, r, i, a) {\n                n[r] = o.call(e, u, t, r, i, a)\n            }), n\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return !!t && (\"object\" == typeof t || \"function\" == typeof t) && \"function\" == typeof t.then\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        }), e.parseYamlConfig = void 0;\n        var r, i = n(520),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            };\n        e.parseYamlConfig = function(t, e) {\n            try {\n                return o.default.safeLoad(t)\n            } catch (t) {\n                return e && e.errActions.newThrownErr(new Error(t)), {}\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(38);\n        t.exports = new r({\n            include: [n(203)]\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(38);\n        t.exports = new r({\n            include: [n(122)],\n            implicit: [n(527), n(528), n(529), n(530)]\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        }), e.loaded = e.TOGGLE_CONFIGS = e.UPDATE_CONFIGS = void 0;\n        var r, i = n(205),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            };\n        e.update = function(t, e) {\n            return {\n                type: u,\n                payload: (0, o.default)({}, t, e)\n            }\n        }, e.toggle = function(t) {\n            return {\n                type: a,\n                payload: t\n            }\n        };\n        var u = e.UPDATE_CONFIGS = \"configs_update\",\n            a = e.TOGGLE_CONFIGS = \"configs_toggle\";\n        e.loaded = function() {\n            return function() {}\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0;\n        var r, i = n(152),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            };\n        e.default = function(t, e, n) {\n            return e in t ? (0, o.default)(t, e, {\n                value: n,\n                enumerable: !0,\n                configurable: !0,\n                writable: !0\n            }) : t[e] = n, t\n        }\n    }, function(t, e, n) {\n        n(207), t.exports = n(280)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i = n(123);\n        void 0 === ((r = i) && r.__esModule ? r : {\n            default: r\n        }).default.Promise && n(222), String.prototype.startsWith || n(251)\n    }, function(t, e, n) {\n        n(85), n(96), t.exports = n(220)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(210),\n            i = n(211),\n            o = n(39),\n            u = n(25);\n        t.exports = n(125)(Array, \"Array\", function(t, e) {\n            this._t = u(t), this._i = 0, this._k = e\n        }, function() {\n            var t = this._t,\n                e = this._k,\n                n = this._i++;\n            return !t || n >= t.length ? (this._t = void 0, i(1)) : i(0, \"keys\" == e ? n : \"values\" == e ? t[n] : [n, t[n]])\n        }, \"values\"), o.Arguments = o.Array, r(\"keys\"), r(\"values\"), r(\"entries\")\n    }, function(t, e) {\n        t.exports = function() {}\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return {\n                value: e,\n                done: !!t\n            }\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            if (\"function\" != typeof t) throw TypeError(t + \" is not a function!\");\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(90),\n            i = n(54),\n            o = n(95),\n            u = {};\n        n(26)(u, n(6)(\"iterator\"), function() {\n            return this\n        }), t.exports = function(t, e, n) {\n            t.prototype = r(u, {\n                next: i(1, n)\n            }), o(t, e + \" Iterator\")\n        }\n    }, function(t, e, n) {\n        var r = n(14),\n            i = n(27),\n            o = n(40);\n        t.exports = n(15) ? Object.defineProperties : function(t, e) {\n            i(t);\n            for (var n, u = o(e), a = u.length, s = 0; a > s;) r.f(t, n = u[s++], e[n]);\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(25),\n            i = n(216),\n            o = n(217);\n        t.exports = function(t) {\n            return function(e, n, u) {\n                var a, s = r(e),\n                    c = i(s.length),\n                    f = o(u, c);\n                if (t && n != n) {\n                    for (; c > f;)\n                        if ((a = s[f++]) != a) return !0\n                } else\n                    for (; c > f; f++)\n                        if ((t || f in s) && s[f] === n) return t || f || 0; return !t && -1\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(91),\n            i = Math.min;\n        t.exports = function(t) {\n            return t > 0 ? i(r(t), 9007199254740991) : 0\n        }\n    }, function(t, e, n) {\n        var r = n(91),\n            i = Math.max,\n            o = Math.min;\n        t.exports = function(t, e) {\n            return (t = r(t)) < 0 ? i(t + e, 0) : o(t, e)\n        }\n    }, function(t, e, n) {\n        var r = n(9).document;\n        t.exports = r && r.documentElement\n    }, function(t, e, n) {\n        var r = n(91),\n            i = n(87);\n        t.exports = function(t) {\n            return function(e, n) {\n                var o, u, a = String(i(e)),\n                    s = r(n),\n                    c = a.length;\n                return s < 0 || s >= c ? t ? \"\" : void 0 : (o = a.charCodeAt(s)) < 55296 || o > 56319 || s + 1 === c || (u = a.charCodeAt(s + 1)) < 56320 || u > 57343 ? t ? a.charAt(s) : o : t ? a.slice(s, s + 2) : u - 56320 + (o - 55296 << 10) + 65536\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(27),\n            i = n(221);\n        t.exports = n(2).getIterator = function(t) {\n            var e = i(t);\n            if (\"function\" != typeof e) throw TypeError(t + \" is not iterable!\");\n            return r(e.call(t))\n        }\n    }, function(t, e, n) {\n        var r = n(132),\n            i = n(6)(\"iterator\"),\n            o = n(39);\n        t.exports = n(2).getIteratorMethod = function(t) {\n            if (void 0 != t) return t[i] || t[\"@@iterator\"] || o[r(t)]\n        }\n    }, function(t, e, n) {\n        n(223), n(135), n(234), n(238), n(249), n(250), t.exports = n(19).Promise\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(97),\n            i = {};\n        i[n(1)(\"toStringTag\")] = \"z\", i + \"\" != \"[object z]\" && n(30)(Object.prototype, \"toString\", function() {\n            return \"[object \" + r(this) + \"]\"\n        }, !0)\n    }, function(t, e, n) {\n        t.exports = !n(42) && !n(43)(function() {\n            return 7 != Object.defineProperty(n(99)(\"div\"), \"a\", {\n                get: function() {\n                    return 7\n                }\n            }).a\n        })\n    }, function(t, e, n) {\n        var r = n(31);\n        t.exports = function(t, e) {\n            if (!r(t)) return t;\n            var n, i;\n            if (e && \"function\" == typeof(n = t.toString) && !r(i = n.call(t))) return i;\n            if (\"function\" == typeof(n = t.valueOf) && !r(i = n.call(t))) return i;\n            if (!e && \"function\" == typeof(n = t.toString) && !r(i = n.call(t))) return i;\n            throw TypeError(\"Can't convert object to primitive value\")\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(227),\n            i = n(134),\n            o = n(101),\n            u = {};\n        n(17)(u, n(1)(\"iterator\"), function() {\n            return this\n        }), t.exports = function(t, e, n) {\n            t.prototype = r(u, {\n                next: i(1, n)\n            }), o(t, e + \" Iterator\")\n        }\n    }, function(t, e, n) {\n        var r = n(18),\n            i = n(228),\n            o = n(141),\n            u = n(100)(\"IE_PROTO\"),\n            a = function() {},\n            s = function() {\n                var t, e = n(99)(\"iframe\"),\n                    r = o.length;\n                for (e.style.display = \"none\", n(142).appendChild(e), e.src = \"javascript:\", (t = e.contentWindow.document).open(), t.write(\"<script>document.F=Object<\\/script>\"), t.close(), s = t.F; r--;) delete s.prototype[o[r]];\n                return s()\n            };\n        t.exports = Object.create || function(t, e) {\n            var n;\n            return null !== t ? (a.prototype = r(t), n = new a, a.prototype = null, n[u] = t) : n = s(), void 0 === e ? n : i(n, e)\n        }\n    }, function(t, e, n) {\n        var r = n(57),\n            i = n(18),\n            o = n(139);\n        t.exports = n(42) ? Object.defineProperties : function(t, e) {\n            i(t);\n            for (var n, u = o(e), a = u.length, s = 0; a > s;) r.f(t, n = u[s++], e[n]);\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(58),\n            i = n(62),\n            o = n(231)(!1),\n            u = n(100)(\"IE_PROTO\");\n        t.exports = function(t, e) {\n            var n, a = i(t),\n                s = 0,\n                c = [];\n            for (n in a) n != u && r(a, n) && c.push(n);\n            for (; e.length > s;) r(a, n = e[s++]) && (~o(c, n) || c.push(n));\n            return c\n        }\n    }, function(t, e, n) {\n        var r = n(41);\n        t.exports = Object(\"z\").propertyIsEnumerable(0) ? Object : function(t) {\n            return \"String\" == r(t) ? t.split(\"\") : Object(t)\n        }\n    }, function(t, e, n) {\n        var r = n(62),\n            i = n(45),\n            o = n(140);\n        t.exports = function(t) {\n            return function(e, n, u) {\n                var a, s = r(e),\n                    c = i(s.length),\n                    f = o(u, c);\n                if (t && n != n) {\n                    for (; c > f;)\n                        if ((a = s[f++]) != a) return !0\n                } else\n                    for (; c > f; f++)\n                        if ((t || f in s) && s[f] === n) return t || f || 0; return !t && -1\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(58),\n            i = n(233),\n            o = n(100)(\"IE_PROTO\"),\n            u = Object.prototype;\n        t.exports = Object.getPrototypeOf || function(t) {\n            return t = i(t), r(t, o) ? t[o] : \"function\" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype : t instanceof Object ? u : null\n        }\n    }, function(t, e, n) {\n        var r = n(10);\n        t.exports = function(t) {\n            return Object(r(t))\n        }\n    }, function(t, e, n) {\n        for (var r = n(235), i = n(139), o = n(30), u = n(5), a = n(17), s = n(44), c = n(1), f = c(\"iterator\"), l = c(\"toStringTag\"), p = s.Array, h = {\n            CSSRuleList: !0,\n            CSSStyleDeclaration: !1,\n            CSSValueList: !1,\n            ClientRectList: !1,\n            DOMRectList: !1,\n            DOMStringList: !1,\n            DOMTokenList: !0,\n            DataTransferItemList: !1,\n            FileList: !1,\n            HTMLAllCollection: !1,\n            HTMLCollection: !1,\n            HTMLFormElement: !1,\n            HTMLSelectElement: !1,\n            MediaList: !0,\n            MimeTypeArray: !1,\n            NamedNodeMap: !1,\n            NodeList: !0,\n            PaintRequestList: !1,\n            Plugin: !1,\n            PluginArray: !1,\n            SVGLengthList: !1,\n            SVGNumberList: !1,\n            SVGPathSegList: !1,\n            SVGPointList: !1,\n            SVGStringList: !1,\n            SVGTransformList: !1,\n            SourceBufferList: !1,\n            StyleSheetList: !0,\n            TextTrackCueList: !1,\n            TextTrackList: !1,\n            TouchList: !1\n        }, d = i(h), v = 0; v < d.length; v++) {\n            var y, g = d[v],\n                m = h[g],\n                _ = u[g],\n                b = _ && _.prototype;\n            if (b && (b[f] || a(b, f, p), b[l] || a(b, l, g), s[g] = p, m))\n                for (y in r) b[y] || o(b, y, r[y], !0)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(236),\n            i = n(237),\n            o = n(44),\n            u = n(62);\n        t.exports = n(137)(Array, \"Array\", function(t, e) {\n            this._t = u(t), this._i = 0, this._k = e\n        }, function() {\n            var t = this._t,\n                e = this._k,\n                n = this._i++;\n            return !t || n >= t.length ? (this._t = void 0, i(1)) : i(0, \"keys\" == e ? n : \"values\" == e ? t[n] : [n, t[n]])\n        }, \"values\"), o.Arguments = o.Array, r(\"keys\"), r(\"values\"), r(\"entries\")\n    }, function(t, e, n) {\n        var r = n(1)(\"unscopables\"),\n            i = Array.prototype;\n        void 0 == i[r] && n(17)(i, r, {}), t.exports = function(t) {\n            i[r][t] = !0\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return {\n                value: e,\n                done: !!t\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i, o, u, a = n(138),\n            s = n(5),\n            c = n(60),\n            f = n(97),\n            l = n(3),\n            p = n(31),\n            h = n(61),\n            d = n(239),\n            v = n(240),\n            y = n(143),\n            g = n(144).set,\n            m = n(245)(),\n            _ = n(102),\n            b = n(145),\n            w = n(146),\n            x = s.TypeError,\n            S = s.process,\n            E = s.Promise,\n            A = \"process\" == f(S),\n            O = function() {},\n            j = i = _.f,\n            k = !! function() {\n                try {\n                    var t = E.resolve(1),\n                        e = (t.constructor = {})[n(1)(\"species\")] = function(t) {\n                            t(O, O)\n                        };\n                    return (A || \"function\" == typeof PromiseRejectionEvent) && t.then(O) instanceof e\n                } catch (t) {}\n            }(),\n            I = function(t) {\n                var e;\n                return !(!p(t) || \"function\" != typeof(e = t.then)) && e\n            },\n            M = function(t, e) {\n                if (!t._n) {\n                    t._n = !0;\n                    var n = t._c;\n                    m(function() {\n                        for (var r = t._v, i = 1 == t._s, o = 0, u = function(e) {\n                            var n, o, u, a = i ? e.ok : e.fail,\n                                s = e.resolve,\n                                c = e.reject,\n                                f = e.domain;\n                            try {\n                                a ? (i || (2 == t._h && P(t), t._h = 1), !0 === a ? n = r : (f && f.enter(), n = a(r), f && (f.exit(), u = !0)), n === e.promise ? c(x(\"Promise-chain cycle\")) : (o = I(n)) ? o.call(n, s, c) : s(n)) : c(r)\n                            } catch (t) {\n                                f && !u && f.exit(), c(t)\n                            }\n                        }; n.length > o;) u(n[o++]);\n                        t._c = [], t._n = !1, e && !t._h && T(t)\n                    })\n                }\n            },\n            T = function(t) {\n                g.call(s, function() {\n                    var e, n, r, i = t._v,\n                        o = C(t);\n                    if (o && (e = b(function() {\n                        A ? S.emit(\"unhandledRejection\", i, t) : (n = s.onunhandledrejection) ? n({\n                            promise: t,\n                            reason: i\n                        }) : (r = s.console) && r.error && r.error(\"Unhandled promise rejection\", i)\n                    }), t._h = A || C(t) ? 2 : 1), t._a = void 0, o && e.e) throw e.v\n                })\n            },\n            C = function(t) {\n                return 1 !== t._h && 0 === (t._a || t._c).length\n            },\n            P = function(t) {\n                g.call(s, function() {\n                    var e;\n                    A ? S.emit(\"rejectionHandled\", t) : (e = s.onrejectionhandled) && e({\n                        promise: t,\n                        reason: t._v\n                    })\n                })\n            },\n            R = function(t) {\n                var e = this;\n                e._d || (e._d = !0, (e = e._w || e)._v = t, e._s = 2, e._a || (e._a = e._c.slice()), M(e, !0))\n            },\n            N = function(t) {\n                var e, n = this;\n                if (!n._d) {\n                    n._d = !0, n = n._w || n;\n                    try {\n                        if (n === t) throw x(\"Promise can't be resolved itself\");\n                        (e = I(t)) ? m(function() {\n                            var r = {\n                                _w: n,\n                                _d: !1\n                            };\n                            try {\n                                e.call(t, c(N, r, 1), c(R, r, 1))\n                            } catch (t) {\n                                R.call(r, t)\n                            }\n                        }): (n._v = t, n._s = 1, M(n, !1))\n                    } catch (t) {\n                        R.call({\n                            _w: n,\n                            _d: !1\n                        }, t)\n                    }\n                }\n            };\n        k || (E = function(t) {\n            d(this, E, \"Promise\", \"_h\"), h(t), r.call(this);\n            try {\n                t(c(N, this, 1), c(R, this, 1))\n            } catch (t) {\n                R.call(this, t)\n            }\n        }, (r = function(t) {\n            this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1\n        }).prototype = n(246)(E.prototype, {\n            then: function(t, e) {\n                var n = j(y(this, E));\n                return n.ok = \"function\" != typeof t || t, n.fail = \"function\" == typeof e && e, n.domain = A ? S.domain : void 0, this._c.push(n), this._a && this._a.push(n), this._s && M(this, !1), n.promise\n            },\n            catch: function(t) {\n                return this.then(void 0, t)\n            }\n        }), o = function() {\n            var t = new r;\n            this.promise = t, this.resolve = c(N, t, 1), this.reject = c(R, t, 1)\n        }, _.f = j = function(t) {\n            return t === E || t === u ? new o(t) : i(t)\n        }), l(l.G + l.W + l.F * !k, {\n            Promise: E\n        }), n(101)(E, \"Promise\"), n(247)(\"Promise\"), u = n(19).Promise, l(l.S + l.F * !k, \"Promise\", {\n            reject: function(t) {\n                var e = j(this);\n                return (0, e.reject)(t), e.promise\n            }\n        }), l(l.S + l.F * (a || !k), \"Promise\", {\n            resolve: function(t) {\n                return w(a && this === u ? E : this, t)\n            }\n        }), l(l.S + l.F * !(k && n(248)(function(t) {\n            E.all(t).catch(O)\n        })), \"Promise\", {\n            all: function(t) {\n                var e = this,\n                    n = j(e),\n                    r = n.resolve,\n                    i = n.reject,\n                    o = b(function() {\n                        var n = [],\n                            o = 0,\n                            u = 1;\n                        v(t, !1, function(t) {\n                            var a = o++,\n                                s = !1;\n                            n.push(void 0), u++, e.resolve(t).then(function(t) {\n                                s || (s = !0, n[a] = t, --u || r(n))\n                            }, i)\n                        }), --u || r(n)\n                    });\n                return o.e && i(o.v), n.promise\n            },\n            race: function(t) {\n                var e = this,\n                    n = j(e),\n                    r = n.reject,\n                    i = b(function() {\n                        v(t, !1, function(t) {\n                            e.resolve(t).then(n.resolve, r)\n                        })\n                    });\n                return i.e && r(i.v), n.promise\n            }\n        })\n    }, function(t, e) {\n        t.exports = function(t, e, n, r) {\n            if (!(t instanceof e) || void 0 !== r && r in t) throw TypeError(n + \": incorrect invocation!\");\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(60),\n            i = n(241),\n            o = n(242),\n            u = n(18),\n            a = n(45),\n            s = n(243),\n            c = {},\n            f = {};\n        (e = t.exports = function(t, e, n, l, p) {\n            var h, d, v, y, g = p ? function() {\n                    return t\n                } : s(t),\n                m = r(n, l, e ? 2 : 1),\n                _ = 0;\n            if (\"function\" != typeof g) throw TypeError(t + \" is not iterable!\");\n            if (o(g)) {\n                for (h = a(t.length); h > _; _++)\n                    if ((y = e ? m(u(d = t[_])[0], d[1]) : m(t[_])) === c || y === f) return y\n            } else\n                for (v = g.call(t); !(d = v.next()).done;)\n                    if ((y = i(v, m, d.value, e)) === c || y === f) return y\n        }).BREAK = c, e.RETURN = f\n    }, function(t, e, n) {\n        var r = n(18);\n        t.exports = function(t, e, n, i) {\n            try {\n                return i ? e(r(n)[0], n[1]) : e(n)\n            } catch (e) {\n                var o = t.return;\n                throw void 0 !== o && r(o.call(t)), e\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(44),\n            i = n(1)(\"iterator\"),\n            o = Array.prototype;\n        t.exports = function(t) {\n            return void 0 !== t && (r.Array === t || o[i] === t)\n        }\n    }, function(t, e, n) {\n        var r = n(97),\n            i = n(1)(\"iterator\"),\n            o = n(44);\n        t.exports = n(19).getIteratorMethod = function(t) {\n            if (void 0 != t) return t[i] || t[\"@@iterator\"] || o[r(t)]\n        }\n    }, function(t, e) {\n        t.exports = function(t, e, n) {\n            var r = void 0 === n;\n            switch (e.length) {\n                case 0:\n                    return r ? t() : t.call(n);\n                case 1:\n                    return r ? t(e[0]) : t.call(n, e[0]);\n                case 2:\n                    return r ? t(e[0], e[1]) : t.call(n, e[0], e[1]);\n                case 3:\n                    return r ? t(e[0], e[1], e[2]) : t.call(n, e[0], e[1], e[2]);\n                case 4:\n                    return r ? t(e[0], e[1], e[2], e[3]) : t.call(n, e[0], e[1], e[2], e[3])\n            }\n            return t.apply(n, e)\n        }\n    }, function(t, e, n) {\n        var r = n(5),\n            i = n(144).set,\n            o = r.MutationObserver || r.WebKitMutationObserver,\n            u = r.process,\n            a = r.Promise,\n            s = \"process\" == n(41)(u);\n        t.exports = function() {\n            var t, e, n, c = function() {\n                var r, i;\n                for (s && (r = u.domain) && r.exit(); t;) {\n                    i = t.fn, t = t.next;\n                    try {\n                        i()\n                    } catch (r) {\n                        throw t ? n() : e = void 0, r\n                    }\n                }\n                e = void 0, r && r.enter()\n            };\n            if (s) n = function() {\n                u.nextTick(c)\n            };\n            else if (!o || r.navigator && r.navigator.standalone)\n                if (a && a.resolve) {\n                    var f = a.resolve();\n                    n = function() {\n                        f.then(c)\n                    }\n                } else n = function() {\n                    i.call(r, c)\n                };\n            else {\n                var l = !0,\n                    p = document.createTextNode(\"\");\n                new o(c).observe(p, {\n                    characterData: !0\n                }), n = function() {\n                    p.data = l = !l\n                }\n            }\n            return function(r) {\n                var i = {\n                    fn: r,\n                    next: void 0\n                };\n                e && (e.next = i), t || (t = i, n()), e = i\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(30);\n        t.exports = function(t, e, n) {\n            for (var i in e) r(t, i, e[i], n);\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(5),\n            i = n(57),\n            o = n(42),\n            u = n(1)(\"species\");\n        t.exports = function(t) {\n            var e = r[t];\n            o && e && !e[u] && i.f(e, u, {\n                configurable: !0,\n                get: function() {\n                    return this\n                }\n            })\n        }\n    }, function(t, e, n) {\n        var r = n(1)(\"iterator\"),\n            i = !1;\n        try {\n            var o = [7][r]();\n            o.return = function() {\n                i = !0\n            }, Array.from(o, function() {\n                throw 2\n            })\n        } catch (t) {}\n        t.exports = function(t, e) {\n            if (!e && !i) return !1;\n            var n = !1;\n            try {\n                var o = [7],\n                    u = o[r]();\n                u.next = function() {\n                    return {\n                        done: n = !0\n                    }\n                }, o[r] = function() {\n                    return u\n                }, t(o)\n            } catch (t) {}\n            return n\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(3),\n            i = n(19),\n            o = n(5),\n            u = n(143),\n            a = n(146);\n        r(r.P + r.R, \"Promise\", {\n            finally: function(t) {\n                var e = u(this, i.Promise || o.Promise),\n                    n = \"function\" == typeof t;\n                return this.then(n ? function(n) {\n                    return a(e, t()).then(function() {\n                        return n\n                    })\n                } : t, n ? function(n) {\n                    return a(e, t()).then(function() {\n                        throw n\n                    })\n                } : t)\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(3),\n            i = n(102),\n            o = n(145);\n        r(r.S, \"Promise\", {\n            try: function(t) {\n                var e = i.f(this),\n                    n = o(t);\n                return (n.e ? e.reject : e.resolve)(n.v), e.promise\n            }\n        })\n    }, function(t, e, n) {\n        n(252), n(253), n(254), n(135), n(257), n(258), n(259), n(260), n(262), n(263), n(264), n(265), n(266), n(267), n(268), n(269), n(270), n(271), n(272), n(273), n(274), n(275), n(276), n(277), n(278), n(279), t.exports = n(19).String\n    }, function(t, e, n) {\n        var r = n(3),\n            i = n(140),\n            o = String.fromCharCode,\n            u = String.fromCodePoint;\n        r(r.S + r.F * (!!u && 1 != u.length), \"String\", {\n            fromCodePoint: function(t) {\n                for (var e, n = [], r = arguments.length, u = 0; r > u;) {\n                    if (e = +arguments[u++], i(e, 1114111) !== e) throw RangeError(e + \" is not a valid code point\");\n                    n.push(e < 65536 ? o(e) : o(55296 + ((e -= 65536) >> 10), e % 1024 + 56320))\n                }\n                return n.join(\"\")\n            }\n        })\n    }, function(t, e, n) {\n        var r = n(3),\n            i = n(62),\n            o = n(45);\n        r(r.S, \"String\", {\n            raw: function(t) {\n                for (var e = i(t.raw), n = o(e.length), r = arguments.length, u = [], a = 0; n > a;) u.push(String(e[a++])), a < r && u.push(String(arguments[a]));\n                return u.join(\"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(255)(\"trim\", function(t) {\n            return function() {\n                return t(this, 3)\n            }\n        })\n    }, function(t, e, n) {\n        var r = n(3),\n            i = n(10),\n            o = n(43),\n            u = n(256),\n            a = \"[\" + u + \"]\",\n            s = RegExp(\"^\" + a + a + \"*\"),\n            c = RegExp(a + a + \"*$\"),\n            f = function(t, e, n) {\n                var i = {},\n                    a = o(function() {\n                        return !!u[t]() || \"​\" != \"​\" [t]()\n                    }),\n                    s = i[t] = a ? e(l) : u[t];\n                n && (i[n] = s), r(r.P + r.F * a, \"String\", i)\n            },\n            l = f.trim = function(t, e) {\n                return t = String(i(t)), 1 & e && (t = t.replace(s, \"\")), 2 & e && (t = t.replace(c, \"\")), t\n            };\n        t.exports = f\n    }, function(t, e) {\n        t.exports = \"\\t\\n\\v\\f\\r   ᠎             　\\u2028\\u2029\\ufeff\"\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(3),\n            i = n(136)(!1);\n        r(r.P, \"String\", {\n            codePointAt: function(t) {\n                return i(this, t)\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(3),\n            i = n(45),\n            o = n(103),\n            u = \"\".endsWith;\n        r(r.P + r.F * n(104)(\"endsWith\"), \"String\", {\n            endsWith: function(t) {\n                var e = o(this, t, \"endsWith\"),\n                    n = arguments.length > 1 ? arguments[1] : void 0,\n                    r = i(e.length),\n                    a = void 0 === n ? r : Math.min(i(n), r),\n                    s = String(t);\n                return u ? u.call(e, s, a) : e.slice(a - s.length, a) === s\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(3),\n            i = n(103);\n        r(r.P + r.F * n(104)(\"includes\"), \"String\", {\n            includes: function(t) {\n                return !!~i(this, t, \"includes\").indexOf(t, arguments.length > 1 ? arguments[1] : void 0)\n            }\n        })\n    }, function(t, e, n) {\n        var r = n(3);\n        r(r.P, \"String\", {\n            repeat: n(261)\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(59),\n            i = n(10);\n        t.exports = function(t) {\n            var e = String(i(this)),\n                n = \"\",\n                o = r(t);\n            if (o < 0 || o == 1 / 0) throw RangeError(\"Count can't be negative\");\n            for (; o > 0;\n                   (o >>>= 1) && (e += e)) 1 & o && (n += e);\n            return n\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(3),\n            i = n(45),\n            o = n(103),\n            u = \"\".startsWith;\n        r(r.P + r.F * n(104)(\"startsWith\"), \"String\", {\n            startsWith: function(t) {\n                var e = o(this, t, \"startsWith\"),\n                    n = i(Math.min(arguments.length > 1 ? arguments[1] : void 0, e.length)),\n                    r = String(t);\n                return u ? u.call(e, r, n) : e.slice(n, n + r.length) === r\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"anchor\", function(t) {\n            return function(e) {\n                return t(this, \"a\", \"name\", e)\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"big\", function(t) {\n            return function() {\n                return t(this, \"big\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"blink\", function(t) {\n            return function() {\n                return t(this, \"blink\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"bold\", function(t) {\n            return function() {\n                return t(this, \"b\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"fixed\", function(t) {\n            return function() {\n                return t(this, \"tt\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"fontcolor\", function(t) {\n            return function(e) {\n                return t(this, \"font\", \"color\", e)\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"fontsize\", function(t) {\n            return function(e) {\n                return t(this, \"font\", \"size\", e)\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"italics\", function(t) {\n            return function() {\n                return t(this, \"i\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"link\", function(t) {\n            return function(e) {\n                return t(this, \"a\", \"href\", e)\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"small\", function(t) {\n            return function() {\n                return t(this, \"small\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"strike\", function(t) {\n            return function() {\n                return t(this, \"strike\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"sub\", function(t) {\n            return function() {\n                return t(this, \"sub\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        n(4)(\"sup\", function(t) {\n            return function() {\n                return t(this, \"sup\", \"\", \"\")\n            }\n        })\n    }, function(t, e, n) {\n        n(63)(\"match\", 1, function(t, e, n) {\n            return [function(n) {\n                \"use strict\";\n                var r = t(this),\n                    i = void 0 == n ? void 0 : n[e];\n                return void 0 !== i ? i.call(n, r) : new RegExp(n)[e](String(r))\n            }, n]\n        })\n    }, function(t, e, n) {\n        n(63)(\"replace\", 2, function(t, e, n) {\n            return [function(r, i) {\n                \"use strict\";\n                var o = t(this),\n                    u = void 0 == r ? void 0 : r[e];\n                return void 0 !== u ? u.call(r, o, i) : n.call(String(o), r, i)\n            }, n]\n        })\n    }, function(t, e, n) {\n        n(63)(\"search\", 1, function(t, e, n) {\n            return [function(n) {\n                \"use strict\";\n                var r = t(this),\n                    i = void 0 == n ? void 0 : n[e];\n                return void 0 !== i ? i.call(n, r) : new RegExp(n)[e](String(r))\n            }, n]\n        })\n    }, function(t, e, n) {\n        n(63)(\"split\", 2, function(t, e, r) {\n            \"use strict\";\n            var i = n(147),\n                o = r,\n                u = [].push;\n            if (\"c\" == \"abbc\".split(/(b)*/)[1] || 4 != \"test\".split(/(?:)/, -1).length || 2 != \"ab\".split(/(?:ab)*/).length || 4 != \".\".split(/(.?)(.?)/).length || \".\".split(/()()/).length > 1 || \"\".split(/.?/).length) {\n                var a = void 0 === /()??/.exec(\"\")[1];\n                r = function(t, e) {\n                    var n = String(this);\n                    if (void 0 === t && 0 === e) return [];\n                    if (!i(t)) return o.call(n, t, e);\n                    var r, s, c, f, l, p = [],\n                        h = (t.ignoreCase ? \"i\" : \"\") + (t.multiline ? \"m\" : \"\") + (t.unicode ? \"u\" : \"\") + (t.sticky ? \"y\" : \"\"),\n                        d = 0,\n                        v = void 0 === e ? 4294967295 : e >>> 0,\n                        y = new RegExp(t.source, h + \"g\");\n                    for (a || (r = new RegExp(\"^\" + y.source + \"$(?!\\\\s)\", h));\n                         (s = y.exec(n)) && !((c = s.index + s[0].length) > d && (p.push(n.slice(d, s.index)), !a && s.length > 1 && s[0].replace(r, function() {\n                             for (l = 1; l < arguments.length - 2; l++) void 0 === arguments[l] && (s[l] = void 0)\n                         }), s.length > 1 && s.index < n.length && u.apply(p, s.slice(1)), f = s[0].length, d = c, p.length >= v));) y.lastIndex === s.index && y.lastIndex++;\n                    return d === n.length ? !f && y.test(\"\") || p.push(\"\") : p.push(n.slice(d)), p.length > v ? p.slice(0, v) : p\n                }\n            } else \"0\".split(void 0, 0).length && (r = function(t, e) {\n                return void 0 === t && 0 === e ? [] : o.call(this, t, e)\n            });\n            return [function(n, i) {\n                var o = t(this),\n                    u = void 0 == n ? void 0 : n[e];\n                return void 0 !== u ? u.call(n, o, i) : r.call(String(o), n, i)\n            }, r]\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = u(n(281)),\n            i = u(n(322)),\n            o = u(n(518));\n\n        function u(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        var a = [i.default, o.default, function() {\n            return {\n                components: {\n                    StandaloneLayout: r.default\n                }\n            }\n        }];\n        t.exports = a\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        });\n        var r = c(n(148)),\n            i = c(n(150)),\n            o = c(n(151)),\n            u = c(n(153)),\n            a = c(n(156)),\n            s = c(n(157));\n        c(n(165));\n\n        function c(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        var f = function(t) {\n            function e() {\n                return (0, i.default)(this, e), (0, u.default)(this, (e.__proto__ || (0, r.default)(e)).apply(this, arguments))\n            }\n            return (0, a.default)(e, t), (0, o.default)(e, [{\n                key: \"render\",\n                value: function() {\n                    var t = this.props,\n                        e = t.getComponent,\n                        n = t.specSelectors,\n                        r = t.errSelectors,\n                        i = e(\"Container\"),\n                        o = e(\"Row\"),\n                        u = e(\"Col\"),\n                        a = e(\"errors\", !0),\n                        c = e(\"Topbar\", !0),\n                        f = e(\"BaseLayout\", !0),\n                        l = e(\"onlineValidatorBadge\", !0),\n                        p = n.loadingStatus(),\n                        h = r.lastError(),\n                        d = h ? h.get(\"message\") : \"\";\n                    return s.default.createElement(i, {\n                        className: \"swagger-ui\"\n                    }, c ? s.default.createElement(c, null) : null, \"loading\" === p && s.default.createElement(\"div\", {\n                        className: \"info\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"loading-container\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"loading\"\n                    }))), \"failed\" === p && s.default.createElement(\"div\", {\n                        className: \"info\"\n                    }, s.default.createElement(\"div\", {\n                        className: \"loading-container\"\n                    }, s.default.createElement(\"h4\", {\n                        className: \"title\"\n                    }, \"Failed to load API definition.\"), s.default.createElement(a, null))), \"failedConfig\" === p && s.default.createElement(\"div\", {\n                        className: \"info\",\n                        style: {\n                            maxWidth: \"880px\",\n                            marginLeft: \"auto\",\n                            marginRight: \"auto\",\n                            textAlign: \"center\"\n                        }\n                    }, s.default.createElement(\"div\", {\n                        className: \"loading-container\"\n                    }, s.default.createElement(\"h4\", {\n                        className: \"title\"\n                    }, \"Failed to load remote configuration.\"), s.default.createElement(\"p\", null, d))), !p || \"success\" === p && s.default.createElement(f, null), s.default.createElement(o, null, s.default.createElement(u, null, s.default.createElement(l, null))))\n                }\n            }]), e\n        }(s.default.Component);\n        e.default = f\n    }, function(t, e, n) {\n        n(283), t.exports = n(2).Object.getPrototypeOf\n    }, function(t, e, n) {\n        var r = n(56),\n            i = n(131);\n        n(149)(\"getPrototypeOf\", function() {\n            return function(t) {\n                return i(r(t))\n            }\n        })\n    }, function(t, e, n) {\n        n(285);\n        var r = n(2).Object;\n        t.exports = function(t, e, n) {\n            return r.defineProperty(t, e, n)\n        }\n    }, function(t, e, n) {\n        var r = n(13);\n        r(r.S + r.F * !n(15), \"Object\", {\n            defineProperty: n(14).f\n        })\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(287),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(96), n(85), t.exports = n(106).f(\"iterator\")\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(289),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(290), n(295), n(296), n(297), t.exports = n(2).Symbol\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(9),\n            i = n(16),\n            o = n(15),\n            u = n(13),\n            a = n(129),\n            s = n(291).KEY,\n            c = n(29),\n            f = n(93),\n            l = n(95),\n            p = n(55),\n            h = n(6),\n            d = n(106),\n            v = n(107),\n            y = n(292),\n            g = n(293),\n            m = n(27),\n            _ = n(28),\n            b = n(25),\n            w = n(89),\n            x = n(54),\n            S = n(90),\n            E = n(294),\n            A = n(155),\n            O = n(14),\n            j = n(40),\n            k = A.f,\n            I = O.f,\n            M = E.f,\n            T = r.Symbol,\n            C = r.JSON,\n            P = C && C.stringify,\n            R = h(\"_hidden\"),\n            N = h(\"toPrimitive\"),\n            L = {}.propertyIsEnumerable,\n            D = f(\"symbol-registry\"),\n            z = f(\"symbols\"),\n            F = f(\"op-symbols\"),\n            U = Object.prototype,\n            B = \"function\" == typeof T,\n            q = r.QObject,\n            Y = !q || !q.prototype || !q.prototype.findChild,\n            W = o && c(function() {\n                return 7 != S(I({}, \"a\", {\n                    get: function() {\n                        return I(this, \"a\", {\n                            value: 7\n                        }).a\n                    }\n                })).a\n            }) ? function(t, e, n) {\n                var r = k(U, e);\n                r && delete U[e], I(t, e, n), r && t !== U && I(U, e, r)\n            } : I,\n            V = function(t) {\n                var e = z[t] = S(T.prototype);\n                return e._k = t, e\n            },\n            K = B && \"symbol\" == typeof T.iterator ? function(t) {\n                return \"symbol\" == typeof t\n            } : function(t) {\n                return t instanceof T\n            },\n            G = function(t, e, n) {\n                return t === U && G(F, e, n), m(t), e = w(e, !0), m(n), i(z, e) ? (n.enumerable ? (i(t, R) && t[R][e] && (t[R][e] = !1), n = S(n, {\n                    enumerable: x(0, !1)\n                })) : (i(t, R) || I(t, R, x(1, {})), t[R][e] = !0), W(t, e, n)) : I(t, e, n)\n            },\n            $ = function(t, e) {\n                m(t);\n                for (var n, r = y(e = b(e)), i = 0, o = r.length; o > i;) G(t, n = r[i++], e[n]);\n                return t\n            },\n            H = function(t) {\n                var e = L.call(this, t = w(t, !0));\n                return !(this === U && i(z, t) && !i(F, t)) && (!(e || !i(this, t) || !i(z, t) || i(this, R) && this[R][t]) || e)\n            },\n            J = function(t, e) {\n                if (t = b(t), e = w(e, !0), t !== U || !i(z, e) || i(F, e)) {\n                    var n = k(t, e);\n                    return !n || !i(z, e) || i(t, R) && t[R][e] || (n.enumerable = !0), n\n                }\n            },\n            Z = function(t) {\n                for (var e, n = M(b(t)), r = [], o = 0; n.length > o;) i(z, e = n[o++]) || e == R || e == s || r.push(e);\n                return r\n            },\n            X = function(t) {\n                for (var e, n = t === U, r = M(n ? F : b(t)), o = [], u = 0; r.length > u;) !i(z, e = r[u++]) || n && !i(U, e) || o.push(z[e]);\n                return o\n            };\n        B || (a((T = function() {\n            if (this instanceof T) throw TypeError(\"Symbol is not a constructor!\");\n            var t = p(arguments.length > 0 ? arguments[0] : void 0),\n                e = function(n) {\n                    this === U && e.call(F, n), i(this, R) && i(this[R], t) && (this[R][t] = !1), W(this, t, x(1, n))\n                };\n            return o && Y && W(U, t, {\n                configurable: !0,\n                set: e\n            }), V(t)\n        }).prototype, \"toString\", function() {\n            return this._k\n        }), A.f = J, O.f = G, n(154).f = E.f = Z, n(64).f = H, n(108).f = X, o && !n(88) && a(U, \"propertyIsEnumerable\", H, !0), d.f = function(t) {\n            return V(h(t))\n        }), u(u.G + u.W + u.F * !B, {\n            Symbol: T\n        });\n        for (var Q = \"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"), tt = 0; Q.length > tt;) h(Q[tt++]);\n        for (var et = j(h.store), nt = 0; et.length > nt;) v(et[nt++]);\n        u(u.S + u.F * !B, \"Symbol\", {\n            for: function(t) {\n                return i(D, t += \"\") ? D[t] : D[t] = T(t)\n            },\n            keyFor: function(t) {\n                if (!K(t)) throw TypeError(t + \" is not a symbol!\");\n                for (var e in D)\n                    if (D[e] === t) return e\n            },\n            useSetter: function() {\n                Y = !0\n            },\n            useSimple: function() {\n                Y = !1\n            }\n        }), u(u.S + u.F * !B, \"Object\", {\n            create: function(t, e) {\n                return void 0 === e ? S(t) : $(S(t), e)\n            },\n            defineProperty: G,\n            defineProperties: $,\n            getOwnPropertyDescriptor: J,\n            getOwnPropertyNames: Z,\n            getOwnPropertySymbols: X\n        }), C && u(u.S + u.F * (!B || c(function() {\n            var t = T();\n            return \"[null]\" != P([t]) || \"{}\" != P({\n                a: t\n            }) || \"{}\" != P(Object(t))\n        })), \"JSON\", {\n            stringify: function(t) {\n                for (var e, n, r = [t], i = 1; arguments.length > i;) r.push(arguments[i++]);\n                if (n = e = r[1], (_(e) || void 0 !== t) && !K(t)) return g(e) || (e = function(t, e) {\n                    if (\"function\" == typeof n && (e = n.call(this, t, e)), !K(e)) return e\n                }), r[1] = e, P.apply(C, r)\n            }\n        }), T.prototype[N] || n(26)(T.prototype, N, T.prototype.valueOf), l(T, \"Symbol\"), l(Math, \"Math\", !0), l(r.JSON, \"JSON\", !0)\n    }, function(t, e, n) {\n        var r = n(55)(\"meta\"),\n            i = n(28),\n            o = n(16),\n            u = n(14).f,\n            a = 0,\n            s = Object.isExtensible || function() {\n                return !0\n            },\n            c = !n(29)(function() {\n                return s(Object.preventExtensions({}))\n            }),\n            f = function(t) {\n                u(t, r, {\n                    value: {\n                        i: \"O\" + ++a,\n                        w: {}\n                    }\n                })\n            },\n            l = t.exports = {\n                KEY: r,\n                NEED: !1,\n                fastKey: function(t, e) {\n                    if (!i(t)) return \"symbol\" == typeof t ? t : (\"string\" == typeof t ? \"S\" : \"P\") + t;\n                    if (!o(t, r)) {\n                        if (!s(t)) return \"F\";\n                        if (!e) return \"E\";\n                        f(t)\n                    }\n                    return t[r].i\n                },\n                getWeak: function(t, e) {\n                    if (!o(t, r)) {\n                        if (!s(t)) return !0;\n                        if (!e) return !1;\n                        f(t)\n                    }\n                    return t[r].w\n                },\n                onFreeze: function(t) {\n                    return c && l.NEED && s(t) && !o(t, r) && f(t), t\n                }\n            }\n    }, function(t, e, n) {\n        var r = n(40),\n            i = n(108),\n            o = n(64);\n        t.exports = function(t) {\n            var e = r(t),\n                n = i.f;\n            if (n)\n                for (var u, a = n(t), s = o.f, c = 0; a.length > c;) s.call(t, u = a[c++]) && e.push(u);\n            return e\n        }\n    }, function(t, e, n) {\n        var r = n(86);\n        t.exports = Array.isArray || function(t) {\n            return \"Array\" == r(t)\n        }\n    }, function(t, e, n) {\n        var r = n(25),\n            i = n(154).f,\n            o = {}.toString,\n            u = \"object\" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [];\n        t.exports.f = function(t) {\n            return u && \"[object Window]\" == o.call(t) ? function(t) {\n                try {\n                    return i(t)\n                } catch (t) {\n                    return u.slice()\n                }\n            }(t) : i(r(t))\n        }\n    }, function(t, e) {}, function(t, e, n) {\n        n(107)(\"asyncIterator\")\n    }, function(t, e, n) {\n        n(107)(\"observable\")\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(299),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(300), t.exports = n(2).Object.setPrototypeOf\n    }, function(t, e, n) {\n        var r = n(13);\n        r(r.S, \"Object\", {\n            setPrototypeOf: n(301).set\n        })\n    }, function(t, e, n) {\n        var r = n(28),\n            i = n(27),\n            o = function(t, e) {\n                if (i(t), !r(e) && null !== e) throw TypeError(e + \": can't set as prototype!\")\n            };\n        t.exports = {\n            set: Object.setPrototypeOf || (\"__proto__\" in {} ? function(t, e, r) {\n                try {\n                    (r = n(126)(Function.call, n(155).f(Object.prototype, \"__proto__\").set, 2))(t, []), e = !(t instanceof Array)\n                } catch (t) {\n                    e = !0\n                }\n                return function(t, n) {\n                    return o(t, n), e ? t.__proto__ = n : r(t, n), t\n                }\n            }({}, !1) : void 0),\n            check: o\n        }\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(303),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(304);\n        var r = n(2).Object;\n        t.exports = function(t, e) {\n            return r.create(t, e)\n        }\n    }, function(t, e, n) {\n        var r = n(13);\n        r(r.S, \"Object\", {\n            create: n(90)\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(46),\n            i = n(158),\n            o = n(307),\n            u = n(312),\n            a = n(32),\n            s = n(313),\n            c = n(317),\n            f = n(318),\n            l = n(320),\n            p = a.createElement,\n            h = a.createFactory,\n            d = a.cloneElement,\n            v = r,\n            y = function(t) {\n                return t\n            },\n            g = {\n                Children: {\n                    map: o.map,\n                    forEach: o.forEach,\n                    count: o.count,\n                    toArray: o.toArray,\n                    only: l\n                },\n                Component: i.Component,\n                PureComponent: i.PureComponent,\n                createElement: p,\n                cloneElement: d,\n                isValidElement: a.isValidElement,\n                PropTypes: s,\n                createClass: f,\n                createFactory: h,\n                createMixin: y,\n                DOM: u,\n                version: c,\n                __spread: v\n            };\n        t.exports = g\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = function() {};\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(308),\n            i = n(32),\n            o = n(67),\n            u = n(309),\n            a = r.twoArgumentPooler,\n            s = r.fourArgumentPooler,\n            c = /\\/+/g;\n\n        function f(t) {\n            return (\"\" + t).replace(c, \"$&/\")\n        }\n\n        function l(t, e) {\n            this.func = t, this.context = e, this.count = 0\n        }\n\n        function p(t, e, n) {\n            var r = t.func,\n                i = t.context;\n            r.call(i, e, t.count++)\n        }\n\n        function h(t, e, n, r) {\n            this.result = t, this.keyPrefix = e, this.func = n, this.context = r, this.count = 0\n        }\n\n        function d(t, e, n) {\n            var r = t.result,\n                u = t.keyPrefix,\n                a = t.func,\n                s = t.context,\n                c = a.call(s, e, t.count++);\n            Array.isArray(c) ? v(c, r, n, o.thatReturnsArgument) : null != c && (i.isValidElement(c) && (c = i.cloneAndReplaceKey(c, u + (!c.key || e && e.key === c.key ? \"\" : f(c.key) + \"/\") + n)), r.push(c))\n        }\n\n        function v(t, e, n, r, i) {\n            var o = \"\";\n            null != n && (o = f(n) + \"/\");\n            var a = h.getPooled(e, o, r, i);\n            u(t, d, a), h.release(a)\n        }\n\n        function y(t, e, n) {\n            return null\n        }\n        l.prototype.destructor = function() {\n            this.func = null, this.context = null, this.count = 0\n        }, r.addPoolingTo(l, a), h.prototype.destructor = function() {\n            this.result = null, this.keyPrefix = null, this.func = null, this.context = null, this.count = 0\n        }, r.addPoolingTo(h, s);\n        var g = {\n            forEach: function(t, e, n) {\n                if (null == t) return t;\n                var r = l.getPooled(e, n);\n                u(t, p, r), l.release(r)\n            },\n            map: function(t, e, n) {\n                if (null == t) return t;\n                var r = [];\n                return v(t, r, null, e, n), r\n            },\n            mapIntoWithKeyPrefixInternal: v,\n            count: function(t, e) {\n                return u(t, y, null)\n            },\n            toArray: function(t) {\n                var e = [];\n                return v(t, e, null, o.thatReturnsArgument), e\n            }\n        };\n        t.exports = g\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(65),\n            i = (n(20), function(t) {\n                if (this.instancePool.length) {\n                    var e = this.instancePool.pop();\n                    return this.call(e, t), e\n                }\n                return new this(t)\n            }),\n            o = function(t) {\n                t instanceof this || r(\"25\"), t.destructor(), this.instancePool.length < this.poolSize && this.instancePool.push(t)\n            },\n            u = i,\n            a = {\n                addPoolingTo: function(t, e) {\n                    var n = t;\n                    return n.instancePool = [], n.getPooled = e || u, n.poolSize || (n.poolSize = 10), n.release = o, n\n                },\n                oneArgumentPooler: i,\n                twoArgumentPooler: function(t, e) {\n                    if (this.instancePool.length) {\n                        var n = this.instancePool.pop();\n                        return this.call(n, t, e), n\n                    }\n                    return new this(t, e)\n                },\n                threeArgumentPooler: function(t, e, n) {\n                    if (this.instancePool.length) {\n                        var r = this.instancePool.pop();\n                        return this.call(r, t, e, n), r\n                    }\n                    return new this(t, e, n)\n                },\n                fourArgumentPooler: function(t, e, n, r) {\n                    if (this.instancePool.length) {\n                        var i = this.instancePool.pop();\n                        return this.call(i, t, e, n, r), i\n                    }\n                    return new this(t, e, n, r)\n                }\n            };\n        t.exports = a\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(65),\n            i = (n(162), n(163)),\n            o = n(310),\n            u = (n(20), n(311)),\n            a = (n(66), \".\"),\n            s = \":\";\n\n        function c(t, e) {\n            return t && \"object\" == typeof t && null != t.key ? u.escape(t.key) : e.toString(36)\n        }\n        t.exports = function(t, e, n) {\n            return null == t ? 0 : function t(e, n, f, l) {\n                var p, h = typeof e;\n                if (\"undefined\" !== h && \"boolean\" !== h || (e = null), null === e || \"string\" === h || \"number\" === h || \"object\" === h && e.$$typeof === i) return f(l, e, \"\" === n ? a + c(e, 0) : n), 1;\n                var d = 0,\n                    v = \"\" === n ? a : n + s;\n                if (Array.isArray(e))\n                    for (var y = 0; y < e.length; y++) d += t(p = e[y], v + c(p, y), f, l);\n                else {\n                    var g = o(e);\n                    if (g) {\n                        var m, _ = g.call(e);\n                        if (g !== e.entries)\n                            for (var b = 0; !(m = _.next()).done;) d += t(p = m.value, v + c(p, b++), f, l);\n                        else\n                            for (; !(m = _.next()).done;) {\n                                var w = m.value;\n                                w && (d += t(p = w[1], v + u.escape(w[0]) + s + c(p, 0), f, l))\n                            }\n                    } else if (\"object\" === h) {\n                        var x = \"\",\n                            S = String(e);\n                        r(\"31\", \"[object Object]\" === S ? \"object with keys {\" + Object.keys(e).join(\", \") + \"}\" : S, x)\n                    }\n                }\n                return d\n            }(t, \"\", e, n)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = \"function\" == typeof Symbol && Symbol.iterator,\n            i = \"@@iterator\";\n        t.exports = function(t) {\n            var e = t && (r && t[r] || t[i]);\n            if (\"function\" == typeof e) return e\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = {\n            escape: function(t) {\n                var e = {\n                    \"=\": \"=0\",\n                    \":\": \"=2\"\n                };\n                return \"$\" + (\"\" + t).replace(/[=:]/g, function(t) {\n                    return e[t]\n                })\n            },\n            unescape: function(t) {\n                var e = {\n                    \"=0\": \"=\",\n                    \"=2\": \":\"\n                };\n                return (\"\" + (\".\" === t[0] && \"$\" === t[1] ? t.substring(2) : t.substring(1))).replace(/(=0|=2)/g, function(t) {\n                    return e[t]\n                })\n            }\n        };\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(32).createFactory,\n            i = {\n                a: r(\"a\"),\n                abbr: r(\"abbr\"),\n                address: r(\"address\"),\n                area: r(\"area\"),\n                article: r(\"article\"),\n                aside: r(\"aside\"),\n                audio: r(\"audio\"),\n                b: r(\"b\"),\n                base: r(\"base\"),\n                bdi: r(\"bdi\"),\n                bdo: r(\"bdo\"),\n                big: r(\"big\"),\n                blockquote: r(\"blockquote\"),\n                body: r(\"body\"),\n                br: r(\"br\"),\n                button: r(\"button\"),\n                canvas: r(\"canvas\"),\n                caption: r(\"caption\"),\n                cite: r(\"cite\"),\n                code: r(\"code\"),\n                col: r(\"col\"),\n                colgroup: r(\"colgroup\"),\n                data: r(\"data\"),\n                datalist: r(\"datalist\"),\n                dd: r(\"dd\"),\n                del: r(\"del\"),\n                details: r(\"details\"),\n                dfn: r(\"dfn\"),\n                dialog: r(\"dialog\"),\n                div: r(\"div\"),\n                dl: r(\"dl\"),\n                dt: r(\"dt\"),\n                em: r(\"em\"),\n                embed: r(\"embed\"),\n                fieldset: r(\"fieldset\"),\n                figcaption: r(\"figcaption\"),\n                figure: r(\"figure\"),\n                footer: r(\"footer\"),\n                form: r(\"form\"),\n                h1: r(\"h1\"),\n                h2: r(\"h2\"),\n                h3: r(\"h3\"),\n                h4: r(\"h4\"),\n                h5: r(\"h5\"),\n                h6: r(\"h6\"),\n                head: r(\"head\"),\n                header: r(\"header\"),\n                hgroup: r(\"hgroup\"),\n                hr: r(\"hr\"),\n                html: r(\"html\"),\n                i: r(\"i\"),\n                iframe: r(\"iframe\"),\n                img: r(\"img\"),\n                input: r(\"input\"),\n                ins: r(\"ins\"),\n                kbd: r(\"kbd\"),\n                keygen: r(\"keygen\"),\n                label: r(\"label\"),\n                legend: r(\"legend\"),\n                li: r(\"li\"),\n                link: r(\"link\"),\n                main: r(\"main\"),\n                map: r(\"map\"),\n                mark: r(\"mark\"),\n                menu: r(\"menu\"),\n                menuitem: r(\"menuitem\"),\n                meta: r(\"meta\"),\n                meter: r(\"meter\"),\n                nav: r(\"nav\"),\n                noscript: r(\"noscript\"),\n                object: r(\"object\"),\n                ol: r(\"ol\"),\n                optgroup: r(\"optgroup\"),\n                option: r(\"option\"),\n                output: r(\"output\"),\n                p: r(\"p\"),\n                param: r(\"param\"),\n                picture: r(\"picture\"),\n                pre: r(\"pre\"),\n                progress: r(\"progress\"),\n                q: r(\"q\"),\n                rp: r(\"rp\"),\n                rt: r(\"rt\"),\n                ruby: r(\"ruby\"),\n                s: r(\"s\"),\n                samp: r(\"samp\"),\n                script: r(\"script\"),\n                section: r(\"section\"),\n                select: r(\"select\"),\n                small: r(\"small\"),\n                source: r(\"source\"),\n                span: r(\"span\"),\n                strong: r(\"strong\"),\n                style: r(\"style\"),\n                sub: r(\"sub\"),\n                summary: r(\"summary\"),\n                sup: r(\"sup\"),\n                table: r(\"table\"),\n                tbody: r(\"tbody\"),\n                td: r(\"td\"),\n                textarea: r(\"textarea\"),\n                tfoot: r(\"tfoot\"),\n                th: r(\"th\"),\n                thead: r(\"thead\"),\n                time: r(\"time\"),\n                title: r(\"title\"),\n                tr: r(\"tr\"),\n                track: r(\"track\"),\n                u: r(\"u\"),\n                ul: r(\"ul\"),\n                var: r(\"var\"),\n                video: r(\"video\"),\n                wbr: r(\"wbr\"),\n                circle: r(\"circle\"),\n                clipPath: r(\"clipPath\"),\n                defs: r(\"defs\"),\n                ellipse: r(\"ellipse\"),\n                g: r(\"g\"),\n                image: r(\"image\"),\n                line: r(\"line\"),\n                linearGradient: r(\"linearGradient\"),\n                mask: r(\"mask\"),\n                path: r(\"path\"),\n                pattern: r(\"pattern\"),\n                polygon: r(\"polygon\"),\n                polyline: r(\"polyline\"),\n                radialGradient: r(\"radialGradient\"),\n                rect: r(\"rect\"),\n                stop: r(\"stop\"),\n                svg: r(\"svg\"),\n                text: r(\"text\"),\n                tspan: r(\"tspan\")\n            };\n        t.exports = i\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(32).isValidElement,\n            i = n(314);\n        t.exports = i(r)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(315);\n        t.exports = function(t) {\n            return r(t, !1)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(67),\n            i = n(20),\n            o = n(66),\n            u = n(46),\n            a = n(164),\n            s = n(316);\n        t.exports = function(t, e) {\n            var n = \"function\" == typeof Symbol && Symbol.iterator,\n                c = \"@@iterator\";\n            var f = \"<<anonymous>>\",\n                l = {\n                    array: v(\"array\"),\n                    bool: v(\"boolean\"),\n                    func: v(\"function\"),\n                    number: v(\"number\"),\n                    object: v(\"object\"),\n                    string: v(\"string\"),\n                    symbol: v(\"symbol\"),\n                    any: d(r.thatReturnsNull),\n                    arrayOf: function(t) {\n                        return d(function(e, n, r, i, o) {\n                            if (\"function\" != typeof t) return new h(\"Property `\" + o + \"` of component `\" + r + \"` has invalid PropType notation inside arrayOf.\");\n                            var u = e[n];\n                            if (!Array.isArray(u)) {\n                                var s = g(u);\n                                return new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + s + \"` supplied to `\" + r + \"`, expected an array.\")\n                            }\n                            for (var c = 0; c < u.length; c++) {\n                                var f = t(u, c, r, i, o + \"[\" + c + \"]\", a);\n                                if (f instanceof Error) return f\n                            }\n                            return null\n                        })\n                    },\n                    element: function() {\n                        return d(function(e, n, r, i, o) {\n                            var u = e[n];\n                            if (!t(u)) {\n                                var a = g(u);\n                                return new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + a + \"` supplied to `\" + r + \"`, expected a single ReactElement.\")\n                            }\n                            return null\n                        })\n                    }(),\n                    instanceOf: function(t) {\n                        return d(function(e, n, r, i, o) {\n                            if (!(e[n] instanceof t)) {\n                                var u = t.name || f,\n                                    a = function(t) {\n                                        if (!t.constructor || !t.constructor.name) return f;\n                                        return t.constructor.name\n                                    }(e[n]);\n                                return new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + a + \"` supplied to `\" + r + \"`, expected instance of `\" + u + \"`.\")\n                            }\n                            return null\n                        })\n                    },\n                    node: function() {\n                        return d(function(t, e, n, r, i) {\n                            if (!y(t[e])) return new h(\"Invalid \" + r + \" `\" + i + \"` supplied to `\" + n + \"`, expected a ReactNode.\");\n                            return null\n                        })\n                    }(),\n                    objectOf: function(t) {\n                        return d(function(e, n, r, i, o) {\n                            if (\"function\" != typeof t) return new h(\"Property `\" + o + \"` of component `\" + r + \"` has invalid PropType notation inside objectOf.\");\n                            var u = e[n],\n                                s = g(u);\n                            if (\"object\" !== s) return new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + s + \"` supplied to `\" + r + \"`, expected an object.\");\n                            for (var c in u)\n                                if (u.hasOwnProperty(c)) {\n                                    var f = t(u, c, r, i, o + \".\" + c, a);\n                                    if (f instanceof Error) return f\n                                }\n                            return null\n                        })\n                    },\n                    oneOf: function(t) {\n                        if (!Array.isArray(t)) return r.thatReturnsNull;\n                        return d(function(e, n, r, i, o) {\n                            for (var u = e[n], a = 0; a < t.length; a++)\n                                if (p(u, t[a])) return null;\n                            var s = JSON.stringify(t);\n                            return new h(\"Invalid \" + i + \" `\" + o + \"` of value `\" + u + \"` supplied to `\" + r + \"`, expected one of \" + s + \".\")\n                        })\n                    },\n                    oneOfType: function(t) {\n                        if (!Array.isArray(t)) return r.thatReturnsNull;\n                        for (var e = 0; e < t.length; e++) {\n                            var n = t[e];\n                            if (\"function\" != typeof n) return o(!1, \"Invalid argument supplied to oneOfType. Expected an array of check functions, but received %s at index %s.\", _(n), e), r.thatReturnsNull\n                        }\n                        return d(function(e, n, r, i, o) {\n                            for (var u = 0; u < t.length; u++) {\n                                var s = t[u];\n                                if (null == s(e, n, r, i, o, a)) return null\n                            }\n                            return new h(\"Invalid \" + i + \" `\" + o + \"` supplied to `\" + r + \"`.\")\n                        })\n                    },\n                    shape: function(t) {\n                        return d(function(e, n, r, i, o) {\n                            var u = e[n],\n                                s = g(u);\n                            if (\"object\" !== s) return new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + s + \"` supplied to `\" + r + \"`, expected `object`.\");\n                            for (var c in t) {\n                                var f = t[c];\n                                if (f) {\n                                    var l = f(u, c, r, i, o + \".\" + c, a);\n                                    if (l) return l\n                                }\n                            }\n                            return null\n                        })\n                    },\n                    exact: function(t) {\n                        return d(function(e, n, r, i, o) {\n                            var s = e[n],\n                                c = g(s);\n                            if (\"object\" !== c) return new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + c + \"` supplied to `\" + r + \"`, expected `object`.\");\n                            var f = u({}, e[n], t);\n                            for (var l in f) {\n                                var p = t[l];\n                                if (!p) return new h(\"Invalid \" + i + \" `\" + o + \"` key `\" + l + \"` supplied to `\" + r + \"`.\\nBad object: \" + JSON.stringify(e[n], null, \"  \") + \"\\nValid keys: \" + JSON.stringify(Object.keys(t), null, \"  \"));\n                                var d = p(s, l, r, i, o + \".\" + l, a);\n                                if (d) return d\n                            }\n                            return null\n                        })\n                    }\n                };\n\n            function p(t, e) {\n                return t === e ? 0 !== t || 1 / t == 1 / e : t != t && e != e\n            }\n\n            function h(t) {\n                this.message = t, this.stack = \"\"\n            }\n\n            function d(t) {\n                function n(n, r, o, u, s, c, l) {\n                    (u = u || f, c = c || o, l !== a) && (e && i(!1, \"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types\"));\n                    return null == r[o] ? n ? null === r[o] ? new h(\"The \" + s + \" `\" + c + \"` is marked as required in `\" + u + \"`, but its value is `null`.\") : new h(\"The \" + s + \" `\" + c + \"` is marked as required in `\" + u + \"`, but its value is `undefined`.\") : null : t(r, o, u, s, c)\n                }\n                var r = n.bind(null, !1);\n                return r.isRequired = n.bind(null, !0), r\n            }\n\n            function v(t) {\n                return d(function(e, n, r, i, o, u) {\n                    var a = e[n];\n                    return g(a) !== t ? new h(\"Invalid \" + i + \" `\" + o + \"` of type `\" + m(a) + \"` supplied to `\" + r + \"`, expected `\" + t + \"`.\") : null\n                })\n            }\n\n            function y(e) {\n                switch (typeof e) {\n                    case \"number\":\n                    case \"string\":\n                    case \"undefined\":\n                        return !0;\n                    case \"boolean\":\n                        return !e;\n                    case \"object\":\n                        if (Array.isArray(e)) return e.every(y);\n                        if (null === e || t(e)) return !0;\n                        var r = function(t) {\n                            var e = t && (n && t[n] || t[c]);\n                            if (\"function\" == typeof e) return e\n                        }(e);\n                        if (!r) return !1;\n                        var i, o = r.call(e);\n                        if (r !== e.entries) {\n                            for (; !(i = o.next()).done;)\n                                if (!y(i.value)) return !1\n                        } else\n                            for (; !(i = o.next()).done;) {\n                                var u = i.value;\n                                if (u && !y(u[1])) return !1\n                            }\n                        return !0;\n                    default:\n                        return !1\n                }\n            }\n\n            function g(t) {\n                var e = typeof t;\n                return Array.isArray(t) ? \"array\" : t instanceof RegExp ? \"object\" : function(t, e) {\n                    return \"symbol\" === t || \"Symbol\" === e[\"@@toStringTag\"] || \"function\" == typeof Symbol && e instanceof Symbol\n                }(e, t) ? \"symbol\" : e\n            }\n\n            function m(t) {\n                if (void 0 === t || null === t) return \"\" + t;\n                var e = g(t);\n                if (\"object\" === e) {\n                    if (t instanceof Date) return \"date\";\n                    if (t instanceof RegExp) return \"regexp\"\n                }\n                return e\n            }\n\n            function _(t) {\n                var e = m(t);\n                switch (e) {\n                    case \"array\":\n                    case \"object\":\n                        return \"an \" + e;\n                    case \"boolean\":\n                    case \"date\":\n                    case \"regexp\":\n                        return \"a \" + e;\n                    default:\n                        return e\n                }\n            }\n            return h.prototype = Error.prototype, l.checkPropTypes = s, l.PropTypes = l, l\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t, e, n, r, i) {}\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = \"15.6.2\"\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(158).Component,\n            i = n(32).isValidElement,\n            o = n(159),\n            u = n(319);\n        t.exports = u(r, i, o)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(46),\n            i = n(161),\n            o = n(20),\n            u = \"mixins\";\n        t.exports = function(t, e, n) {\n            var a = [],\n                s = {\n                    mixins: \"DEFINE_MANY\",\n                    statics: \"DEFINE_MANY\",\n                    propTypes: \"DEFINE_MANY\",\n                    contextTypes: \"DEFINE_MANY\",\n                    childContextTypes: \"DEFINE_MANY\",\n                    getDefaultProps: \"DEFINE_MANY_MERGED\",\n                    getInitialState: \"DEFINE_MANY_MERGED\",\n                    getChildContext: \"DEFINE_MANY_MERGED\",\n                    render: \"DEFINE_ONCE\",\n                    componentWillMount: \"DEFINE_MANY\",\n                    componentDidMount: \"DEFINE_MANY\",\n                    componentWillReceiveProps: \"DEFINE_MANY\",\n                    shouldComponentUpdate: \"DEFINE_ONCE\",\n                    componentWillUpdate: \"DEFINE_MANY\",\n                    componentDidUpdate: \"DEFINE_MANY\",\n                    componentWillUnmount: \"DEFINE_MANY\",\n                    UNSAFE_componentWillMount: \"DEFINE_MANY\",\n                    UNSAFE_componentWillReceiveProps: \"DEFINE_MANY\",\n                    UNSAFE_componentWillUpdate: \"DEFINE_MANY\",\n                    updateComponent: \"OVERRIDE_BASE\"\n                },\n                c = {\n                    getDerivedStateFromProps: \"DEFINE_MANY_MERGED\"\n                },\n                f = {\n                    displayName: function(t, e) {\n                        t.displayName = e\n                    },\n                    mixins: function(t, e) {\n                        if (e)\n                            for (var n = 0; n < e.length; n++) p(t, e[n])\n                    },\n                    childContextTypes: function(t, e) {\n                        t.childContextTypes = r({}, t.childContextTypes, e)\n                    },\n                    contextTypes: function(t, e) {\n                        t.contextTypes = r({}, t.contextTypes, e)\n                    },\n                    getDefaultProps: function(t, e) {\n                        t.getDefaultProps ? t.getDefaultProps = d(t.getDefaultProps, e) : t.getDefaultProps = e\n                    },\n                    propTypes: function(t, e) {\n                        t.propTypes = r({}, t.propTypes, e)\n                    },\n                    statics: function(t, e) {\n                        ! function(t, e) {\n                            if (e)\n                                for (var n in e) {\n                                    var r = e[n];\n                                    if (e.hasOwnProperty(n)) {\n                                        var i = n in f;\n                                        o(!i, 'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\\'t be on the \"statics\" key. Define it as an instance property instead; it will still be accessible on the constructor.', n);\n                                        var u = n in t;\n                                        if (u) {\n                                            var a = c.hasOwnProperty(n) ? c[n] : null;\n                                            return o(\"DEFINE_MANY_MERGED\" === a, \"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.\", n), void(t[n] = d(t[n], r))\n                                        }\n                                        t[n] = r\n                                    }\n                                }\n                        }(t, e)\n                    },\n                    autobind: function() {}\n                };\n\n            function l(t, e) {\n                var n = s.hasOwnProperty(e) ? s[e] : null;\n                _.hasOwnProperty(e) && o(\"OVERRIDE_BASE\" === n, \"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.\", e), t && o(\"DEFINE_MANY\" === n || \"DEFINE_MANY_MERGED\" === n, \"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.\", e)\n            }\n\n            function p(t, n) {\n                if (n) {\n                    o(\"function\" != typeof n, \"ReactClass: You're attempting to use a component class or function as a mixin. Instead, just use a regular object.\"), o(!e(n), \"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.\");\n                    var r = t.prototype,\n                        i = r.__reactAutoBindPairs;\n                    for (var a in n.hasOwnProperty(u) && f.mixins(t, n.mixins), n)\n                        if (n.hasOwnProperty(a) && a !== u) {\n                            var c = n[a],\n                                p = r.hasOwnProperty(a);\n                            if (l(p, a), f.hasOwnProperty(a)) f[a](t, c);\n                            else {\n                                var h = s.hasOwnProperty(a);\n                                if (\"function\" != typeof c || h || p || !1 === n.autobind)\n                                    if (p) {\n                                        var y = s[a];\n                                        o(h && (\"DEFINE_MANY_MERGED\" === y || \"DEFINE_MANY\" === y), \"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.\", y, a), \"DEFINE_MANY_MERGED\" === y ? r[a] = d(r[a], c) : \"DEFINE_MANY\" === y && (r[a] = v(r[a], c))\n                                    } else r[a] = c;\n                                else i.push(a, c), r[a] = c\n                            }\n                        }\n                }\n            }\n\n            function h(t, e) {\n                for (var n in o(t && e && \"object\" == typeof t && \"object\" == typeof e, \"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.\"), e) e.hasOwnProperty(n) && (o(void 0 === t[n], \"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.\", n), t[n] = e[n]);\n                return t\n            }\n\n            function d(t, e) {\n                return function() {\n                    var n = t.apply(this, arguments),\n                        r = e.apply(this, arguments);\n                    if (null == n) return r;\n                    if (null == r) return n;\n                    var i = {};\n                    return h(i, n), h(i, r), i\n                }\n            }\n\n            function v(t, e) {\n                return function() {\n                    t.apply(this, arguments), e.apply(this, arguments)\n                }\n            }\n\n            function y(t, e) {\n                var n = e.bind(t);\n                return n\n            }\n            var g = {\n                    componentDidMount: function() {\n                        this.__isMounted = !0\n                    }\n                },\n                m = {\n                    componentWillUnmount: function() {\n                        this.__isMounted = !1\n                    }\n                },\n                _ = {\n                    replaceState: function(t, e) {\n                        this.updater.enqueueReplaceState(this, t, e)\n                    },\n                    isMounted: function() {\n                        return !!this.__isMounted\n                    }\n                },\n                b = function() {};\n            return r(b.prototype, t.prototype, _),\n                function(t) {\n                    var e = function(t, r, u) {\n                        this.__reactAutoBindPairs.length && function(t) {\n                            for (var e = t.__reactAutoBindPairs, n = 0; n < e.length; n += 2) {\n                                var r = e[n],\n                                    i = e[n + 1];\n                                t[r] = y(t, i)\n                            }\n                        }(this), this.props = t, this.context = r, this.refs = i, this.updater = u || n, this.state = null;\n                        var a = this.getInitialState ? this.getInitialState() : null;\n                        o(\"object\" == typeof a && !Array.isArray(a), \"%s.getInitialState(): must return an object or null\", e.displayName || \"ReactCompositeComponent\"), this.state = a\n                    };\n                    for (var r in e.prototype = new b, e.prototype.constructor = e, e.prototype.__reactAutoBindPairs = [], a.forEach(p.bind(null, e)), p(e, g), p(e, t), p(e, m), e.getDefaultProps && (e.defaultProps = e.getDefaultProps()), o(e.prototype.render, \"createClass(...): Class specification must implement a `render` method.\"), s) e.prototype[r] || (e.prototype[r] = null);\n                    return e\n                }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(65),\n            i = n(32);\n        n(20);\n        t.exports = function(t) {\n            return i.isValidElement(t) || r(\"143\"), t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(67),\n            i = n(20),\n            o = n(164);\n        t.exports = function() {\n            function t(t, e, n, r, u, a) {\n                a !== o && i(!1, \"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types\")\n            }\n\n            function e() {\n                return t\n            }\n            t.isRequired = t;\n            var n = {\n                array: t,\n                bool: t,\n                func: t,\n                number: t,\n                object: t,\n                string: t,\n                symbol: t,\n                any: t,\n                arrayOf: e,\n                element: t,\n                instanceOf: e,\n                node: t,\n                objectOf: e,\n                oneOf: e,\n                oneOfType: e,\n                shape: e,\n                exact: e\n            };\n            return n.checkPropTypes = r, n.PropTypes = n, n\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        }), e.default = function() {\n            return {\n                components: {\n                    Topbar: o.default\n                }\n            }\n        };\n        var r, i = n(323),\n            o = (r = i) && r.__esModule ? r : {\n                default: r\n            }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        });\n        var r = p(n(148)),\n            i = p(n(150)),\n            o = p(n(151)),\n            u = p(n(153)),\n            a = p(n(156)),\n            s = n(157),\n            c = p(s),\n            f = (p(n(165)), p(n(324))),\n            l = n(166);\n\n        function p(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        var h = function(t) {\n            function e(t, n) {\n                (0, i.default)(this, e);\n                var o = (0, u.default)(this, (e.__proto__ || (0, r.default)(e)).call(this, t, n));\n                return o.onUrlChange = function(t) {\n                    var e = t.target.value;\n                    o.setState({\n                        url: e\n                    })\n                }, o.loadSpec = function(t) {\n                    o.props.specActions.updateUrl(t), o.props.specActions.download(t)\n                }, o.onUrlSelect = function(t) {\n                    var e = t.target.value || t.target.href;\n                    o.loadSpec(e), o.setSelectedUrl(e), t.preventDefault()\n                }, o.downloadUrl = function(t) {\n                    o.loadSpec(o.state.url), t.preventDefault()\n                }, o.setSearch = function(t) {\n                    var e = (0, l.parseSearch)();\n                    e[\"urls.primaryName\"] = t.name;\n                    var n = window.location.protocol + \"//\" + window.location.host + window.location.pathname;\n                    window && window.history && window.history.pushState && window.history.replaceState(null, \"\", n + \"?\" + (0, l.serializeSearch)(e))\n                }, o.setSelectedUrl = function(t) {\n                    var e = o.props.getConfigs().urls || [];\n                    e && e.length && t && e.forEach(function(e, n) {\n                        e.url === t && (o.setState({\n                            selectedIndex: n\n                        }), o.setSearch(e))\n                    })\n                }, o.onFilterChange = function(t) {\n                    var e = t.target.value;\n                    o.props.layoutActions.updateFilter(e)\n                }, o.state = {\n                    url: t.specSelectors.url(),\n                    selectedIndex: 0\n                }, o\n            }\n            return (0, a.default)(e, t), (0, o.default)(e, [{\n                key: \"componentWillReceiveProps\",\n                value: function(t) {\n                    this.setState({\n                        url: t.specSelectors.url()\n                    })\n                }\n            }, {\n                key: \"componentWillMount\",\n                value: function() {\n                    var t = this,\n                        e = this.props.getConfigs(),\n                        n = e.urls || [];\n                    if (n && n.length) {\n                        var r = e[\"urls.primaryName\"];\n                        r && n.forEach(function(e, n) {\n                            e.name === r && t.setState({\n                                selectedIndex: n\n                            })\n                        })\n                    }\n                }\n            }, {\n                key: \"componentDidMount\",\n                value: function() {\n                    var t = this.props.getConfigs().urls || [];\n                    t && t.length && this.loadSpec(t[this.state.selectedIndex].url)\n                }\n            }, {\n                key: \"render\",\n                value: function() {\n                    var t = this.props,\n                        e = t.getComponent,\n                        n = t.specSelectors,\n                        r = t.getConfigs,\n                        i = e(\"Button\"),\n                        o = e(\"Link\"),\n                        u = \"loading\" === n.loadingStatus(),\n                        a = {};\n                    \"failed\" === n.loadingStatus() && (a.color = \"red\"), u && (a.color = \"#aaa\");\n                    var l = r().urls,\n                        p = [],\n                        h = null;\n                    if (l) {\n                        var d = [];\n                        l.forEach(function(t, e) {\n                            d.push(c.default.createElement(\"option\", {\n                                key: e,\n                                value: t.url\n                            }, t.name))\n                        }), p.push(c.default.createElement(\"label\", {\n                            className: \"select-label\",\n                            htmlFor: \"select\"\n                        }, c.default.createElement(\"span\", null, \"Select a spec\"), c.default.createElement(\"select\", {\n                            id: \"select\",\n                            disabled: u,\n                            onChange: this.onUrlSelect,\n                            value: l[this.state.selectedIndex].url\n                        }, d)))\n                    } else h = this.downloadUrl, p.push(c.default.createElement(\"input\", {\n                        className: \"download-url-input\",\n                        type: \"text\",\n                        onChange: this.onUrlChange,\n                        value: this.state.url,\n                        disabled: u,\n                        style: a\n                    })), p.push(c.default.createElement(i, {\n                        className: \"download-url-button\",\n                        onClick: this.downloadUrl\n                    }, \"Explore\"));\n                    return c.default.createElement(\"div\", {\n                        className: \"topbar\"\n                    }, c.default.createElement(\"div\", {\n                        className: \"wrapper\"\n                    }, c.default.createElement(\"div\", {\n                        className: \"topbar-wrapper\"\n                    }, c.default.createElement(o, null, c.default.createElement(\"img\", {\n                        height: \"30\",\n                        width: \"30\",\n                        src: f.default,\n                        alt: \"Swagger UI\"\n                    }), c.default.createElement(\"span\", null, \"swagger\")), c.default.createElement(\"form\", {\n                        className: \"download-url-wrapper\",\n                        onSubmit: h\n                    }, p.map(function(t, e) {\n                        return (0, s.cloneElement)(t, {\n                            key: e\n                        })\n                    })))))\n                }\n            }]), e\n        }(c.default.Component);\n        e.default = h\n    }, function(t, e) {\n        t.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAYFBMVEUAAABUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwBUfwB0lzB/n0BfhxBpjyC0x4////+qv4CJp1D09++ft3C/z5/K16/U379UfwDf58/q79+Ur2D2RCk9AAAAHXRSTlMAEEAwn9//z3Agv4/vYID/////////////////UMeji1kAAAD8SURBVHgBlZMFAoQwDATRxbXB7f+vPKnlXAZn6k2cf3A9z/PfOC8IIYni5FmmABM8FMhwT17c9hnhiZL1CwvEL1tmPD0qSKq6gaStW/kMXanVmAVRDUlH1OvuuTINo6k90Sxf8qsOtF6g4ff1osP3OnMcV7d4pzdIUtu1oA4V0DZoKmxmlEYvtDUjjS3tmKmqB+pYy8pD1VPf7jPE0I40HHcaBwnue6fGzgyS5tXIU96PV7rkDWHNLV0DK4FkoKmFpN5oUnvi8KoeA2/JXsmXQuokx0siR1G8tLkN6eB9sLwJp/yymcyaP/TrP+RPmbMMixcJVgTR1aUZ93oGXsgXQAaG6EwAAAAASUVORK5CYII=\"\n    }, function(t, e, n) {\n        \"use strict\";\n        e.byteLength = function(t) {\n            var e = c(t),\n                n = e[0],\n                r = e[1];\n            return 3 * (n + r) / 4 - r\n        }, e.toByteArray = function(t) {\n            for (var e, n = c(t), r = n[0], u = n[1], a = new o(function(t, e, n) {\n                return 3 * (e + n) / 4 - n\n            }(0, r, u)), s = 0, f = u > 0 ? r - 4 : r, l = 0; l < f; l += 4) e = i[t.charCodeAt(l)] << 18 | i[t.charCodeAt(l + 1)] << 12 | i[t.charCodeAt(l + 2)] << 6 | i[t.charCodeAt(l + 3)], a[s++] = e >> 16 & 255, a[s++] = e >> 8 & 255, a[s++] = 255 & e;\n            2 === u && (e = i[t.charCodeAt(l)] << 2 | i[t.charCodeAt(l + 1)] >> 4, a[s++] = 255 & e);\n            1 === u && (e = i[t.charCodeAt(l)] << 10 | i[t.charCodeAt(l + 1)] << 4 | i[t.charCodeAt(l + 2)] >> 2, a[s++] = e >> 8 & 255, a[s++] = 255 & e);\n            return a\n        }, e.fromByteArray = function(t) {\n            for (var e, n = t.length, i = n % 3, o = [], u = 0, a = n - i; u < a; u += 16383) o.push(f(t, u, u + 16383 > a ? a : u + 16383));\n            1 === i ? (e = t[n - 1], o.push(r[e >> 2] + r[e << 4 & 63] + \"==\")) : 2 === i && (e = (t[n - 2] << 8) + t[n - 1], o.push(r[e >> 10] + r[e >> 4 & 63] + r[e << 2 & 63] + \"=\"));\n            return o.join(\"\")\n        };\n        for (var r = [], i = [], o = \"undefined\" != typeof Uint8Array ? Uint8Array : Array, u = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\", a = 0, s = u.length; a < s; ++a) r[a] = u[a], i[u.charCodeAt(a)] = a;\n\n        function c(t) {\n            var e = t.length;\n            if (e % 4 > 0) throw new Error(\"Invalid string. Length must be a multiple of 4\");\n            var n = t.indexOf(\"=\");\n            return -1 === n && (n = e), [n, n === e ? 0 : 4 - n % 4]\n        }\n\n        function f(t, e, n) {\n            for (var i, o, u = [], a = e; a < n; a += 3) i = (t[a] << 16 & 16711680) + (t[a + 1] << 8 & 65280) + (255 & t[a + 2]), u.push(r[(o = i) >> 18 & 63] + r[o >> 12 & 63] + r[o >> 6 & 63] + r[63 & o]);\n            return u.join(\"\")\n        }\n        i[\"-\".charCodeAt(0)] = 62, i[\"_\".charCodeAt(0)] = 63\n    }, function(t, e) {\n        e.read = function(t, e, n, r, i) {\n            var o, u, a = 8 * i - r - 1,\n                s = (1 << a) - 1,\n                c = s >> 1,\n                f = -7,\n                l = n ? i - 1 : 0,\n                p = n ? -1 : 1,\n                h = t[e + l];\n            for (l += p, o = h & (1 << -f) - 1, h >>= -f, f += a; f > 0; o = 256 * o + t[e + l], l += p, f -= 8);\n            for (u = o & (1 << -f) - 1, o >>= -f, f += r; f > 0; u = 256 * u + t[e + l], l += p, f -= 8);\n            if (0 === o) o = 1 - c;\n            else {\n                if (o === s) return u ? NaN : 1 / 0 * (h ? -1 : 1);\n                u += Math.pow(2, r), o -= c\n            }\n            return (h ? -1 : 1) * u * Math.pow(2, o - r)\n        }, e.write = function(t, e, n, r, i, o) {\n            var u, a, s, c = 8 * o - i - 1,\n                f = (1 << c) - 1,\n                l = f >> 1,\n                p = 23 === i ? Math.pow(2, -24) - Math.pow(2, -77) : 0,\n                h = r ? 0 : o - 1,\n                d = r ? 1 : -1,\n                v = e < 0 || 0 === e && 1 / e < 0 ? 1 : 0;\n            for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (a = isNaN(e) ? 1 : 0, u = f) : (u = Math.floor(Math.log(e) / Math.LN2), e * (s = Math.pow(2, -u)) < 1 && (u--, s *= 2), (e += u + l >= 1 ? p / s : p * Math.pow(2, 1 - l)) * s >= 2 && (u++, s /= 2), u + l >= f ? (a = 0, u = f) : u + l >= 1 ? (a = (e * s - 1) * Math.pow(2, i), u += l) : (a = e * Math.pow(2, l - 1) * Math.pow(2, i), u = 0)); i >= 8; t[n + h] = 255 & a, h += d, a /= 256, i -= 8);\n            for (u = u << i | a, c += i; c > 0; t[n + h] = 255 & u, h += d, u /= 256, c -= 8);\n            t[n + h - d] |= 128 * v\n        }\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(328),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        var r = n(2),\n            i = r.JSON || (r.JSON = {\n                stringify: JSON.stringify\n            });\n        t.exports = function(t) {\n            return i.stringify.apply(i, arguments)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        e.__esModule = !0;\n        var r = o(n(330)),\n            i = o(n(84));\n\n        function o(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        e.default = function() {\n            return function(t, e) {\n                if (Array.isArray(t)) return t;\n                if ((0, r.default)(Object(t))) return function(t, e) {\n                    var n = [],\n                        r = !0,\n                        o = !1,\n                        u = void 0;\n                    try {\n                        for (var a, s = (0, i.default)(t); !(r = (a = s.next()).done) && (n.push(a.value), !e || n.length !== e); r = !0);\n                    } catch (t) {\n                        o = !0, u = t\n                    } finally {\n                        try {\n                            !r && s.return && s.return()\n                        } finally {\n                            if (o) throw u\n                        }\n                    }\n                    return n\n                }(t, e);\n                throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")\n            }\n        }()\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(331),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(85), n(96), t.exports = n(332)\n    }, function(t, e, n) {\n        var r = n(132),\n            i = n(6)(\"iterator\"),\n            o = n(39);\n        t.exports = n(2).isIterable = function(t) {\n            var e = Object(t);\n            return void 0 !== e[i] || \"@@iterator\" in e || o.hasOwnProperty(r(e))\n        }\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(334),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(335), t.exports = n(2).Object.assign\n    }, function(t, e, n) {\n        var r = n(13);\n        r(r.S + r.F, \"Object\", {\n            assign: n(336)\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(40),\n            i = n(108),\n            o = n(64),\n            u = n(56),\n            a = n(124),\n            s = Object.assign;\n        t.exports = !s || n(29)(function() {\n            var t = {},\n                e = {},\n                n = Symbol(),\n                r = \"abcdefghijklmnopqrst\";\n            return t[n] = 7, r.split(\"\").forEach(function(t) {\n                e[t] = t\n            }), 7 != s({}, t)[n] || Object.keys(s({}, e)).join(\"\") != r\n        }) ? function(t, e) {\n            for (var n = u(t), s = arguments.length, c = 1, f = i.f, l = o.f; s > c;)\n                for (var p, h = a(arguments[c++]), d = f ? r(h).concat(f(h)) : r(h), v = d.length, y = 0; v > y;) l.call(h, p = d[y++]) && (n[p] = h[p]);\n            return n\n        } : s\n    }, function(t, e, n) {\n        t.exports = {\n            default: n(338),\n            __esModule: !0\n        }\n    }, function(t, e, n) {\n        n(339), t.exports = n(2).Object.keys\n    }, function(t, e, n) {\n        var r = n(56),\n            i = n(40);\n        n(149)(\"keys\", function() {\n            return function(t) {\n                return i(r(t))\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = /^(%20|\\s)*(javascript|data)/im,\n            i = /[^\\x20-\\x7E]/gim,\n            o = /^([^:]+):/gm,\n            u = [\".\", \"/\"];\n        t.exports = {\n            sanitizeUrl: function(t) {\n                var e, n, a = t.replace(i, \"\");\n                return function(t) {\n                    return u.indexOf(t[0]) > -1\n                }(a) ? a : (n = a.match(o)) ? (e = n[0], r.test(e) ? \"about:blank\" : a) : \"about:blank\"\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(342),\n            i = n(353)(function(t, e, n) {\n                return e = e.toLowerCase(), t + (n ? r(e) : e)\n            });\n        t.exports = i\n    }, function(t, e, n) {\n        var r = n(47),\n            i = n(170);\n        t.exports = function(t) {\n            return i(r(t).toLowerCase())\n        }\n    }, function(t, e, n) {\n        var r = n(69),\n            i = n(344),\n            o = n(8),\n            u = n(70),\n            a = 1 / 0,\n            s = r ? r.prototype : void 0,\n            c = s ? s.toString : void 0;\n        t.exports = function t(e) {\n            if (\"string\" == typeof e) return e;\n            if (o(e)) return i(e, t) + \"\";\n            if (u(e)) return c ? c.call(e) : \"\";\n            var n = e + \"\";\n            return \"0\" == n && 1 / e == -a ? \"-0\" : n\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            for (var n = -1, r = null == t ? 0 : t.length, i = Array(r); ++n < r;) i[n] = e(t[n], n, t);\n            return i\n        }\n    }, function(t, e, n) {\n        var r = n(69),\n            i = Object.prototype,\n            o = i.hasOwnProperty,\n            u = i.toString,\n            a = r ? r.toStringTag : void 0;\n        t.exports = function(t) {\n            var e = o.call(t, a),\n                n = t[a];\n            try {\n                t[a] = void 0;\n                var r = !0\n            } catch (t) {}\n            var i = u.call(t);\n            return r && (e ? t[a] = n : delete t[a]), i\n        }\n    }, function(t, e) {\n        var n = Object.prototype.toString;\n        t.exports = function(t) {\n            return n.call(t)\n        }\n    }, function(t, e, n) {\n        var r = n(348),\n            i = n(171),\n            o = n(350),\n            u = n(47);\n        t.exports = function(t) {\n            return function(e) {\n                e = u(e);\n                var n = i(e) ? o(e) : void 0,\n                    a = n ? n[0] : e.charAt(0),\n                    s = n ? r(n, 1).join(\"\") : e.slice(1);\n                return a[t]() + s\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(349);\n        t.exports = function(t, e, n) {\n            var i = t.length;\n            return n = void 0 === n ? i : n, !e && n >= i ? t : r(t, e, n)\n        }\n    }, function(t, e) {\n        t.exports = function(t, e, n) {\n            var r = -1,\n                i = t.length;\n            e < 0 && (e = -e > i ? 0 : i + e), (n = n > i ? i : n) < 0 && (n += i), i = e > n ? 0 : n - e >>> 0, e >>>= 0;\n            for (var o = Array(i); ++r < i;) o[r] = t[r + e];\n            return o\n        }\n    }, function(t, e, n) {\n        var r = n(351),\n            i = n(171),\n            o = n(352);\n        t.exports = function(t) {\n            return i(t) ? o(t) : r(t)\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return t.split(\"\")\n        }\n    }, function(t, e) {\n        var n = \"[\\\\ud800-\\\\udfff]\",\n            r = \"[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]\",\n            i = \"\\\\ud83c[\\\\udffb-\\\\udfff]\",\n            o = \"[^\\\\ud800-\\\\udfff]\",\n            u = \"(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}\",\n            a = \"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\",\n            s = \"(?:\" + r + \"|\" + i + \")\" + \"?\",\n            c = \"[\\\\ufe0e\\\\ufe0f]?\" + s + (\"(?:\\\\u200d(?:\" + [o, u, a].join(\"|\") + \")[\\\\ufe0e\\\\ufe0f]?\" + s + \")*\"),\n            f = \"(?:\" + [o + r + \"?\", r, u, a, n].join(\"|\") + \")\",\n            l = RegExp(i + \"(?=\" + i + \")|\" + f + c, \"g\");\n        t.exports = function(t) {\n            return t.match(l) || []\n        }\n    }, function(t, e, n) {\n        var r = n(354),\n            i = n(355),\n            o = n(358),\n            u = RegExp(\"['’]\", \"g\");\n        t.exports = function(t) {\n            return function(e) {\n                return r(o(i(e).replace(u, \"\")), t, \"\")\n            }\n        }\n    }, function(t, e) {\n        t.exports = function(t, e, n, r) {\n            var i = -1,\n                o = null == t ? 0 : t.length;\n            for (r && o && (n = t[++i]); ++i < o;) n = e(n, t[i], i, t);\n            return n\n        }\n    }, function(t, e, n) {\n        var r = n(356),\n            i = n(47),\n            o = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g,\n            u = RegExp(\"[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]\", \"g\");\n        t.exports = function(t) {\n            return (t = i(t)) && t.replace(o, r).replace(u, \"\")\n        }\n    }, function(t, e, n) {\n        var r = n(357)({\n            \"À\": \"A\",\n            \"Á\": \"A\",\n            \"Â\": \"A\",\n            \"Ã\": \"A\",\n            \"Ä\": \"A\",\n            \"Å\": \"A\",\n            \"à\": \"a\",\n            \"á\": \"a\",\n            \"â\": \"a\",\n            \"ã\": \"a\",\n            \"ä\": \"a\",\n            \"å\": \"a\",\n            \"Ç\": \"C\",\n            \"ç\": \"c\",\n            \"Ð\": \"D\",\n            \"ð\": \"d\",\n            \"È\": \"E\",\n            \"É\": \"E\",\n            \"Ê\": \"E\",\n            \"Ë\": \"E\",\n            \"è\": \"e\",\n            \"é\": \"e\",\n            \"ê\": \"e\",\n            \"ë\": \"e\",\n            \"Ì\": \"I\",\n            \"Í\": \"I\",\n            \"Î\": \"I\",\n            \"Ï\": \"I\",\n            \"ì\": \"i\",\n            \"í\": \"i\",\n            \"î\": \"i\",\n            \"ï\": \"i\",\n            \"Ñ\": \"N\",\n            \"ñ\": \"n\",\n            \"Ò\": \"O\",\n            \"Ó\": \"O\",\n            \"Ô\": \"O\",\n            \"Õ\": \"O\",\n            \"Ö\": \"O\",\n            \"Ø\": \"O\",\n            \"ò\": \"o\",\n            \"ó\": \"o\",\n            \"ô\": \"o\",\n            \"õ\": \"o\",\n            \"ö\": \"o\",\n            \"ø\": \"o\",\n            \"Ù\": \"U\",\n            \"Ú\": \"U\",\n            \"Û\": \"U\",\n            \"Ü\": \"U\",\n            \"ù\": \"u\",\n            \"ú\": \"u\",\n            \"û\": \"u\",\n            \"ü\": \"u\",\n            \"Ý\": \"Y\",\n            \"ý\": \"y\",\n            \"ÿ\": \"y\",\n            \"Æ\": \"Ae\",\n            \"æ\": \"ae\",\n            \"Þ\": \"Th\",\n            \"þ\": \"th\",\n            \"ß\": \"ss\",\n            \"Ā\": \"A\",\n            \"Ă\": \"A\",\n            \"Ą\": \"A\",\n            \"ā\": \"a\",\n            \"ă\": \"a\",\n            \"ą\": \"a\",\n            \"Ć\": \"C\",\n            \"Ĉ\": \"C\",\n            \"Ċ\": \"C\",\n            \"Č\": \"C\",\n            \"ć\": \"c\",\n            \"ĉ\": \"c\",\n            \"ċ\": \"c\",\n            \"č\": \"c\",\n            \"Ď\": \"D\",\n            \"Đ\": \"D\",\n            \"ď\": \"d\",\n            \"đ\": \"d\",\n            \"Ē\": \"E\",\n            \"Ĕ\": \"E\",\n            \"Ė\": \"E\",\n            \"Ę\": \"E\",\n            \"Ě\": \"E\",\n            \"ē\": \"e\",\n            \"ĕ\": \"e\",\n            \"ė\": \"e\",\n            \"ę\": \"e\",\n            \"ě\": \"e\",\n            \"Ĝ\": \"G\",\n            \"Ğ\": \"G\",\n            \"Ġ\": \"G\",\n            \"Ģ\": \"G\",\n            \"ĝ\": \"g\",\n            \"ğ\": \"g\",\n            \"ġ\": \"g\",\n            \"ģ\": \"g\",\n            \"Ĥ\": \"H\",\n            \"Ħ\": \"H\",\n            \"ĥ\": \"h\",\n            \"ħ\": \"h\",\n            \"Ĩ\": \"I\",\n            \"Ī\": \"I\",\n            \"Ĭ\": \"I\",\n            \"Į\": \"I\",\n            \"İ\": \"I\",\n            \"ĩ\": \"i\",\n            \"ī\": \"i\",\n            \"ĭ\": \"i\",\n            \"į\": \"i\",\n            \"ı\": \"i\",\n            \"Ĵ\": \"J\",\n            \"ĵ\": \"j\",\n            \"Ķ\": \"K\",\n            \"ķ\": \"k\",\n            \"ĸ\": \"k\",\n            \"Ĺ\": \"L\",\n            \"Ļ\": \"L\",\n            \"Ľ\": \"L\",\n            \"Ŀ\": \"L\",\n            \"Ł\": \"L\",\n            \"ĺ\": \"l\",\n            \"ļ\": \"l\",\n            \"ľ\": \"l\",\n            \"ŀ\": \"l\",\n            \"ł\": \"l\",\n            \"Ń\": \"N\",\n            \"Ņ\": \"N\",\n            \"Ň\": \"N\",\n            \"Ŋ\": \"N\",\n            \"ń\": \"n\",\n            \"ņ\": \"n\",\n            \"ň\": \"n\",\n            \"ŋ\": \"n\",\n            \"Ō\": \"O\",\n            \"Ŏ\": \"O\",\n            \"Ő\": \"O\",\n            \"ō\": \"o\",\n            \"ŏ\": \"o\",\n            \"ő\": \"o\",\n            \"Ŕ\": \"R\",\n            \"Ŗ\": \"R\",\n            \"Ř\": \"R\",\n            \"ŕ\": \"r\",\n            \"ŗ\": \"r\",\n            \"ř\": \"r\",\n            \"Ś\": \"S\",\n            \"Ŝ\": \"S\",\n            \"Ş\": \"S\",\n            \"Š\": \"S\",\n            \"ś\": \"s\",\n            \"ŝ\": \"s\",\n            \"ş\": \"s\",\n            \"š\": \"s\",\n            \"Ţ\": \"T\",\n            \"Ť\": \"T\",\n            \"Ŧ\": \"T\",\n            \"ţ\": \"t\",\n            \"ť\": \"t\",\n            \"ŧ\": \"t\",\n            \"Ũ\": \"U\",\n            \"Ū\": \"U\",\n            \"Ŭ\": \"U\",\n            \"Ů\": \"U\",\n            \"Ű\": \"U\",\n            \"Ų\": \"U\",\n            \"ũ\": \"u\",\n            \"ū\": \"u\",\n            \"ŭ\": \"u\",\n            \"ů\": \"u\",\n            \"ű\": \"u\",\n            \"ų\": \"u\",\n            \"Ŵ\": \"W\",\n            \"ŵ\": \"w\",\n            \"Ŷ\": \"Y\",\n            \"ŷ\": \"y\",\n            \"Ÿ\": \"Y\",\n            \"Ź\": \"Z\",\n            \"Ż\": \"Z\",\n            \"Ž\": \"Z\",\n            \"ź\": \"z\",\n            \"ż\": \"z\",\n            \"ž\": \"z\",\n            \"Ĳ\": \"IJ\",\n            \"ĳ\": \"ij\",\n            \"Œ\": \"Oe\",\n            \"œ\": \"oe\",\n            \"ŉ\": \"'n\",\n            \"ſ\": \"s\"\n        });\n        t.exports = r\n    }, function(t, e) {\n        t.exports = function(t) {\n            return function(e) {\n                return null == t ? void 0 : t[e]\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(359),\n            i = n(360),\n            o = n(47),\n            u = n(361);\n        t.exports = function(t, e, n) {\n            return t = o(t), void 0 === (e = n ? void 0 : e) ? i(t) ? u(t) : r(t) : t.match(e) || []\n        }\n    }, function(t, e) {\n        var n = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n        t.exports = function(t) {\n            return t.match(n) || []\n        }\n    }, function(t, e) {\n        var n = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n        t.exports = function(t) {\n            return n.test(t)\n        }\n    }, function(t, e) {\n        var n = \"\\\\xac\\\\xb1\\\\xd7\\\\xf7\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf\\\\u2000-\\\\u206f \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000\",\n            r = \"[\" + n + \"]\",\n            i = \"\\\\d+\",\n            o = \"[\\\\u2700-\\\\u27bf]\",\n            u = \"[a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff]\",\n            a = \"[^\\\\ud800-\\\\udfff\" + n + i + \"\\\\u2700-\\\\u27bfa-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xffA-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde]\",\n            s = \"(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}\",\n            c = \"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\",\n            f = \"[A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde]\",\n            l = \"(?:\" + u + \"|\" + a + \")\",\n            p = \"(?:\" + f + \"|\" + a + \")\",\n            h = \"(?:[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]|\\\\ud83c[\\\\udffb-\\\\udfff])?\",\n            d = \"[\\\\ufe0e\\\\ufe0f]?\" + h + (\"(?:\\\\u200d(?:\" + [\"[^\\\\ud800-\\\\udfff]\", s, c].join(\"|\") + \")[\\\\ufe0e\\\\ufe0f]?\" + h + \")*\"),\n            v = \"(?:\" + [o, s, c].join(\"|\") + \")\" + d,\n            y = RegExp([f + \"?\" + u + \"+(?:['’](?:d|ll|m|re|s|t|ve))?(?=\" + [r, f, \"$\"].join(\"|\") + \")\", p + \"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?=\" + [r, f + l, \"$\"].join(\"|\") + \")\", f + \"?\" + l + \"+(?:['’](?:d|ll|m|re|s|t|ve))?\", f + \"+(?:['’](?:D|LL|M|RE|S|T|VE))?\", \"\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])\", \"\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])\", i, v].join(\"|\"), \"g\");\n        t.exports = function(t) {\n            return t.match(y) || []\n        }\n    }, function(t, e, n) {\n        var r = n(363),\n            i = n(72),\n            o = n(110);\n        t.exports = function() {\n            this.size = 0, this.__data__ = {\n                hash: new r,\n                map: new(o || i),\n                string: new r\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(364),\n            i = n(369),\n            o = n(370),\n            u = n(371),\n            a = n(372);\n\n        function s(t) {\n            var e = -1,\n                n = null == t ? 0 : t.length;\n            for (this.clear(); ++e < n;) {\n                var r = t[e];\n                this.set(r[0], r[1])\n            }\n        }\n        s.prototype.clear = r, s.prototype.delete = i, s.prototype.get = o, s.prototype.has = u, s.prototype.set = a, t.exports = s\n    }, function(t, e, n) {\n        var r = n(71);\n        t.exports = function() {\n            this.__data__ = r ? r(null) : {}, this.size = 0\n        }\n    }, function(t, e, n) {\n        var r = n(173),\n            i = n(366),\n            o = n(50),\n            u = n(174),\n            a = /^\\[object .+?Constructor\\]$/,\n            s = Function.prototype,\n            c = Object.prototype,\n            f = s.toString,\n            l = c.hasOwnProperty,\n            p = RegExp(\"^\" + f.call(l).replace(/[\\\\^$.*+?()[\\]{}|]/g, \"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, \"$1.*?\") + \"$\");\n        t.exports = function(t) {\n            return !(!o(t) || i(t)) && (r(t) ? p : a).test(u(t))\n        }\n    }, function(t, e, n) {\n        var r, i = n(367),\n            o = (r = /[^.]+$/.exec(i && i.keys && i.keys.IE_PROTO || \"\")) ? \"Symbol(src)_1.\" + r : \"\";\n        t.exports = function(t) {\n            return !!o && o in t\n        }\n    }, function(t, e, n) {\n        var r = n(7)[\"__core-js_shared__\"];\n        t.exports = r\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return null == t ? void 0 : t[e]\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            var e = this.has(t) && delete this.__data__[t];\n            return this.size -= e ? 1 : 0, e\n        }\n    }, function(t, e, n) {\n        var r = n(71),\n            i = \"__lodash_hash_undefined__\",\n            o = Object.prototype.hasOwnProperty;\n        t.exports = function(t) {\n            var e = this.__data__;\n            if (r) {\n                var n = e[t];\n                return n === i ? void 0 : n\n            }\n            return o.call(e, t) ? e[t] : void 0\n        }\n    }, function(t, e, n) {\n        var r = n(71),\n            i = Object.prototype.hasOwnProperty;\n        t.exports = function(t) {\n            var e = this.__data__;\n            return r ? void 0 !== e[t] : i.call(e, t)\n        }\n    }, function(t, e, n) {\n        var r = n(71),\n            i = \"__lodash_hash_undefined__\";\n        t.exports = function(t, e) {\n            var n = this.__data__;\n            return this.size += this.has(t) ? 0 : 1, n[t] = r && void 0 === e ? i : e, this\n        }\n    }, function(t, e) {\n        t.exports = function() {\n            this.__data__ = [], this.size = 0\n        }\n    }, function(t, e, n) {\n        var r = n(73),\n            i = Array.prototype.splice;\n        t.exports = function(t) {\n            var e = this.__data__,\n                n = r(e, t);\n            return !(n < 0 || (n == e.length - 1 ? e.pop() : i.call(e, n, 1), --this.size, 0))\n        }\n    }, function(t, e, n) {\n        var r = n(73);\n        t.exports = function(t) {\n            var e = this.__data__,\n                n = r(e, t);\n            return n < 0 ? void 0 : e[n][1]\n        }\n    }, function(t, e, n) {\n        var r = n(73);\n        t.exports = function(t) {\n            return r(this.__data__, t) > -1\n        }\n    }, function(t, e, n) {\n        var r = n(73);\n        t.exports = function(t, e) {\n            var n = this.__data__,\n                i = r(n, t);\n            return i < 0 ? (++this.size, n.push([t, e])) : n[i][1] = e, this\n        }\n    }, function(t, e, n) {\n        var r = n(75);\n        t.exports = function(t) {\n            var e = r(this, t).delete(t);\n            return this.size -= e ? 1 : 0, e\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            var e = typeof t;\n            return \"string\" == e || \"number\" == e || \"symbol\" == e || \"boolean\" == e ? \"__proto__\" !== t : null === t\n        }\n    }, function(t, e, n) {\n        var r = n(75);\n        t.exports = function(t) {\n            return r(this, t).get(t)\n        }\n    }, function(t, e, n) {\n        var r = n(75);\n        t.exports = function(t) {\n            return r(this, t).has(t)\n        }\n    }, function(t, e, n) {\n        var r = n(75);\n        t.exports = function(t, e) {\n            var n = r(this, t),\n                i = n.size;\n            return n.set(t, e), this.size += n.size == i ? 0 : 1, this\n        }\n    }, function(t, e, n) {\n        var r = n(384)(n(436));\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(111),\n            i = n(77),\n            o = n(76);\n        t.exports = function(t) {\n            return function(e, n, u) {\n                var a = Object(e);\n                if (!i(e)) {\n                    var s = r(n, 3);\n                    e = o(e), n = function(t) {\n                        return s(a[t], t, a)\n                    }\n                }\n                var c = t(e, n, u);\n                return c > -1 ? a[s ? e[c] : c] : void 0\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(386),\n            i = n(424),\n            o = n(184);\n        t.exports = function(t) {\n            var e = i(t);\n            return 1 == e.length && e[0][2] ? o(e[0][0], e[0][1]) : function(n) {\n                return n === t || r(n, t, e)\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(175),\n            i = n(176),\n            o = 1,\n            u = 2;\n        t.exports = function(t, e, n, a) {\n            var s = n.length,\n                c = s,\n                f = !a;\n            if (null == t) return !c;\n            for (t = Object(t); s--;) {\n                var l = n[s];\n                if (f && l[2] ? l[1] !== t[l[0]] : !(l[0] in t)) return !1\n            }\n            for (; ++s < c;) {\n                var p = (l = n[s])[0],\n                    h = t[p],\n                    d = l[1];\n                if (f && l[2]) {\n                    if (void 0 === h && !(p in t)) return !1\n                } else {\n                    var v = new r;\n                    if (a) var y = a(h, d, p, t, e, v);\n                    if (!(void 0 === y ? i(d, h, o | u, a, v) : y)) return !1\n                }\n            }\n            return !0\n        }\n    }, function(t, e, n) {\n        var r = n(72);\n        t.exports = function() {\n            this.__data__ = new r, this.size = 0\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            var e = this.__data__,\n                n = e.delete(t);\n            return this.size = e.size, n\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return this.__data__.get(t)\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return this.__data__.has(t)\n        }\n    }, function(t, e, n) {\n        var r = n(72),\n            i = n(110),\n            o = n(109),\n            u = 200;\n        t.exports = function(t, e) {\n            var n = this.__data__;\n            if (n instanceof r) {\n                var a = n.__data__;\n                if (!i || a.length < u - 1) return a.push([t, e]), this.size = ++n.size, this;\n                n = this.__data__ = new o(a)\n            }\n            return n.set(t, e), this.size = n.size, this\n        }\n    }, function(t, e, n) {\n        var r = n(175),\n            i = n(177),\n            o = n(397),\n            u = n(401),\n            a = n(419),\n            s = n(8),\n            c = n(180),\n            f = n(182),\n            l = 1,\n            p = \"[object Arguments]\",\n            h = \"[object Array]\",\n            d = \"[object Object]\",\n            v = Object.prototype.hasOwnProperty;\n        t.exports = function(t, e, n, y, g, m) {\n            var _ = s(t),\n                b = s(e),\n                w = _ ? h : a(t),\n                x = b ? h : a(e),\n                S = (w = w == p ? d : w) == d,\n                E = (x = x == p ? d : x) == d,\n                A = w == x;\n            if (A && c(t)) {\n                if (!c(e)) return !1;\n                _ = !0, S = !1\n            }\n            if (A && !S) return m || (m = new r), _ || f(t) ? i(t, e, n, y, g, m) : o(t, e, w, n, y, g, m);\n            if (!(n & l)) {\n                var O = S && v.call(t, \"__wrapped__\"),\n                    j = E && v.call(e, \"__wrapped__\");\n                if (O || j) {\n                    var k = O ? t.value() : t,\n                        I = j ? e.value() : e;\n                    return m || (m = new r), g(k, I, n, y, m)\n                }\n            }\n            return !!A && (m || (m = new r), u(t, e, n, y, g, m))\n        }\n    }, function(t, e, n) {\n        var r = n(109),\n            i = n(394),\n            o = n(395);\n\n        function u(t) {\n            var e = -1,\n                n = null == t ? 0 : t.length;\n            for (this.__data__ = new r; ++e < n;) this.add(t[e])\n        }\n        u.prototype.add = u.prototype.push = i, u.prototype.has = o, t.exports = u\n    }, function(t, e) {\n        var n = \"__lodash_hash_undefined__\";\n        t.exports = function(t) {\n            return this.__data__.set(t, n), this\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return this.__data__.has(t)\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return t.has(e)\n        }\n    }, function(t, e, n) {\n        var r = n(69),\n            i = n(398),\n            o = n(74),\n            u = n(177),\n            a = n(399),\n            s = n(400),\n            c = 1,\n            f = 2,\n            l = \"[object Boolean]\",\n            p = \"[object Date]\",\n            h = \"[object Error]\",\n            d = \"[object Map]\",\n            v = \"[object Number]\",\n            y = \"[object RegExp]\",\n            g = \"[object Set]\",\n            m = \"[object String]\",\n            _ = \"[object Symbol]\",\n            b = \"[object ArrayBuffer]\",\n            w = \"[object DataView]\",\n            x = r ? r.prototype : void 0,\n            S = x ? x.valueOf : void 0;\n        t.exports = function(t, e, n, r, x, E, A) {\n            switch (n) {\n                case w:\n                    if (t.byteLength != e.byteLength || t.byteOffset != e.byteOffset) return !1;\n                    t = t.buffer, e = e.buffer;\n                case b:\n                    return !(t.byteLength != e.byteLength || !E(new i(t), new i(e)));\n                case l:\n                case p:\n                case v:\n                    return o(+t, +e);\n                case h:\n                    return t.name == e.name && t.message == e.message;\n                case y:\n                case m:\n                    return t == e + \"\";\n                case d:\n                    var O = a;\n                case g:\n                    var j = r & c;\n                    if (O || (O = s), t.size != e.size && !j) return !1;\n                    var k = A.get(t);\n                    if (k) return k == e;\n                    r |= f, A.set(t, e);\n                    var I = u(O(t), O(e), r, x, E, A);\n                    return A.delete(t), I;\n                case _:\n                    if (S) return S.call(t) == S.call(e)\n            }\n            return !1\n        }\n    }, function(t, e, n) {\n        var r = n(7).Uint8Array;\n        t.exports = r\n    }, function(t, e) {\n        t.exports = function(t) {\n            var e = -1,\n                n = Array(t.size);\n            return t.forEach(function(t, r) {\n                n[++e] = [r, t]\n            }), n\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            var e = -1,\n                n = Array(t.size);\n            return t.forEach(function(t) {\n                n[++e] = t\n            }), n\n        }\n    }, function(t, e, n) {\n        var r = n(402),\n            i = 1,\n            o = Object.prototype.hasOwnProperty;\n        t.exports = function(t, e, n, u, a, s) {\n            var c = n & i,\n                f = r(t),\n                l = f.length;\n            if (l != r(e).length && !c) return !1;\n            for (var p = l; p--;) {\n                var h = f[p];\n                if (!(c ? h in e : o.call(e, h))) return !1\n            }\n            var d = s.get(t);\n            if (d && s.get(e)) return d == e;\n            var v = !0;\n            s.set(t, e), s.set(e, t);\n            for (var y = c; ++p < l;) {\n                var g = t[h = f[p]],\n                    m = e[h];\n                if (u) var _ = c ? u(m, g, h, e, t, s) : u(g, m, h, t, e, s);\n                if (!(void 0 === _ ? g === m || a(g, m, n, u, s) : _)) {\n                    v = !1;\n                    break\n                }\n                y || (y = \"constructor\" == h)\n            }\n            if (v && !y) {\n                var b = t.constructor,\n                    w = e.constructor;\n                b != w && \"constructor\" in t && \"constructor\" in e && !(\"function\" == typeof b && b instanceof b && \"function\" == typeof w && w instanceof w) && (v = !1)\n            }\n            return s.delete(t), s.delete(e), v\n        }\n    }, function(t, e, n) {\n        var r = n(403),\n            i = n(405),\n            o = n(76);\n        t.exports = function(t) {\n            return r(t, o, i)\n        }\n    }, function(t, e, n) {\n        var r = n(404),\n            i = n(8);\n        t.exports = function(t, e, n) {\n            var o = e(t);\n            return i(t) ? o : r(o, n(t))\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            for (var n = -1, r = e.length, i = t.length; ++n < r;) t[i + n] = e[n];\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(406),\n            i = n(407),\n            o = Object.prototype.propertyIsEnumerable,\n            u = Object.getOwnPropertySymbols,\n            a = u ? function(t) {\n                return null == t ? [] : (t = Object(t), r(u(t), function(e) {\n                    return o.call(t, e)\n                }))\n            } : i;\n        t.exports = a\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            for (var n = -1, r = null == t ? 0 : t.length, i = 0, o = []; ++n < r;) {\n                var u = t[n];\n                e(u, n, t) && (o[i++] = u)\n            }\n            return o\n        }\n    }, function(t, e) {\n        t.exports = function() {\n            return []\n        }\n    }, function(t, e, n) {\n        var r = n(409),\n            i = n(179),\n            o = n(8),\n            u = n(180),\n            a = n(112),\n            s = n(182),\n            c = Object.prototype.hasOwnProperty;\n        t.exports = function(t, e) {\n            var n = o(t),\n                f = !n && i(t),\n                l = !n && !f && u(t),\n                p = !n && !f && !l && s(t),\n                h = n || f || l || p,\n                d = h ? r(t.length, String) : [],\n                v = d.length;\n            for (var y in t) !e && !c.call(t, y) || h && (\"length\" == y || l && (\"offset\" == y || \"parent\" == y) || p && (\"buffer\" == y || \"byteLength\" == y || \"byteOffset\" == y) || a(y, v)) || d.push(y);\n            return d\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            for (var n = -1, r = Array(t); ++n < t;) r[n] = e(n);\n            return r\n        }\n    }, function(t, e, n) {\n        var r = n(48),\n            i = n(49),\n            o = \"[object Arguments]\";\n        t.exports = function(t) {\n            return i(t) && r(t) == o\n        }\n    }, function(t, e) {\n        t.exports = function() {\n            return !1\n        }\n    }, function(t, e, n) {\n        var r = n(48),\n            i = n(113),\n            o = n(49),\n            u = {};\n        u[\"[object Float32Array]\"] = u[\"[object Float64Array]\"] = u[\"[object Int8Array]\"] = u[\"[object Int16Array]\"] = u[\"[object Int32Array]\"] = u[\"[object Uint8Array]\"] = u[\"[object Uint8ClampedArray]\"] = u[\"[object Uint16Array]\"] = u[\"[object Uint32Array]\"] = !0, u[\"[object Arguments]\"] = u[\"[object Array]\"] = u[\"[object ArrayBuffer]\"] = u[\"[object Boolean]\"] = u[\"[object DataView]\"] = u[\"[object Date]\"] = u[\"[object Error]\"] = u[\"[object Function]\"] = u[\"[object Map]\"] = u[\"[object Number]\"] = u[\"[object Object]\"] = u[\"[object RegExp]\"] = u[\"[object Set]\"] = u[\"[object String]\"] = u[\"[object WeakMap]\"] = !1, t.exports = function(t) {\n            return o(t) && i(t.length) && !!u[r(t)]\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return function(e) {\n                return t(e)\n            }\n        }\n    }, function(t, e, n) {\n        (function(t) {\n            var r = n(169),\n                i = \"object\" == typeof e && e && !e.nodeType && e,\n                o = i && \"object\" == typeof t && t && !t.nodeType && t,\n                u = o && o.exports === i && r.process,\n                a = function() {\n                    try {\n                        var t = o && o.require && o.require(\"util\").types;\n                        return t || u && u.binding && u.binding(\"util\")\n                    } catch (t) {}\n                }();\n            t.exports = a\n        }).call(e, n(181)(t))\n    }, function(t, e, n) {\n        var r = n(416),\n            i = n(417),\n            o = Object.prototype.hasOwnProperty;\n        t.exports = function(t) {\n            if (!r(t)) return i(t);\n            var e = [];\n            for (var n in Object(t)) o.call(t, n) && \"constructor\" != n && e.push(n);\n            return e\n        }\n    }, function(t, e) {\n        var n = Object.prototype;\n        t.exports = function(t) {\n            var e = t && t.constructor;\n            return t === (\"function\" == typeof e && e.prototype || n)\n        }\n    }, function(t, e, n) {\n        var r = n(418)(Object.keys, Object);\n        t.exports = r\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return function(n) {\n                return t(e(n))\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(420),\n            i = n(110),\n            o = n(421),\n            u = n(422),\n            a = n(423),\n            s = n(48),\n            c = n(174),\n            f = c(r),\n            l = c(i),\n            p = c(o),\n            h = c(u),\n            d = c(a),\n            v = s;\n        (r && \"[object DataView]\" != v(new r(new ArrayBuffer(1))) || i && \"[object Map]\" != v(new i) || o && \"[object Promise]\" != v(o.resolve()) || u && \"[object Set]\" != v(new u) || a && \"[object WeakMap]\" != v(new a)) && (v = function(t) {\n            var e = s(t),\n                n = \"[object Object]\" == e ? t.constructor : void 0,\n                r = n ? c(n) : \"\";\n            if (r) switch (r) {\n                case f:\n                    return \"[object DataView]\";\n                case l:\n                    return \"[object Map]\";\n                case p:\n                    return \"[object Promise]\";\n                case h:\n                    return \"[object Set]\";\n                case d:\n                    return \"[object WeakMap]\"\n            }\n            return e\n        }), t.exports = v\n    }, function(t, e, n) {\n        var r = n(33)(n(7), \"DataView\");\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(33)(n(7), \"Promise\");\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(33)(n(7), \"Set\");\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(33)(n(7), \"WeakMap\");\n        t.exports = r\n    }, function(t, e, n) {\n        var r = n(183),\n            i = n(76);\n        t.exports = function(t) {\n            for (var e = i(t), n = e.length; n--;) {\n                var o = e[n],\n                    u = t[o];\n                e[n] = [o, u, r(u)]\n            }\n            return e\n        }\n    }, function(t, e, n) {\n        var r = n(176),\n            i = n(426),\n            o = n(429),\n            u = n(114),\n            a = n(183),\n            s = n(184),\n            c = n(78),\n            f = 1,\n            l = 2;\n        t.exports = function(t, e) {\n            return u(t) && a(e) ? s(c(t), e) : function(n) {\n                var u = i(n, t);\n                return void 0 === u && u === e ? o(n, t) : r(e, u, f | l)\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(185);\n        t.exports = function(t, e, n) {\n            var i = null == t ? void 0 : r(t, e);\n            return void 0 === i ? n : i\n        }\n    }, function(t, e, n) {\n        var r = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g,\n            i = /\\\\(\\\\)?/g,\n            o = n(428)(function(t) {\n                var e = [];\n                return 46 === t.charCodeAt(0) && e.push(\"\"), t.replace(r, function(t, n, r, o) {\n                    e.push(r ? o.replace(i, \"$1\") : n || t)\n                }), e\n            });\n        t.exports = o\n    }, function(t, e, n) {\n        var r = n(172),\n            i = 500;\n        t.exports = function(t) {\n            var e = r(t, function(t) {\n                    return n.size === i && n.clear(), t\n                }),\n                n = e.cache;\n            return e\n        }\n    }, function(t, e, n) {\n        var r = n(430),\n            i = n(431);\n        t.exports = function(t, e) {\n            return null != t && i(t, e, r)\n        }\n    }, function(t, e) {\n        t.exports = function(t, e) {\n            return null != t && e in Object(t)\n        }\n    }, function(t, e, n) {\n        var r = n(186),\n            i = n(179),\n            o = n(8),\n            u = n(112),\n            a = n(113),\n            s = n(78);\n        t.exports = function(t, e, n) {\n            for (var c = -1, f = (e = r(e, t)).length, l = !1; ++c < f;) {\n                var p = s(e[c]);\n                if (!(l = null != t && n(t, p))) break;\n                t = t[p]\n            }\n            return l || ++c != f ? l : !!(f = null == t ? 0 : t.length) && a(f) && u(p, f) && (o(t) || i(t))\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return t\n        }\n    }, function(t, e, n) {\n        var r = n(434),\n            i = n(435),\n            o = n(114),\n            u = n(78);\n        t.exports = function(t) {\n            return o(t) ? r(u(t)) : i(t)\n        }\n    }, function(t, e) {\n        t.exports = function(t) {\n            return function(e) {\n                return null == e ? void 0 : e[t]\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(185);\n        t.exports = function(t) {\n            return function(e) {\n                return r(e, t)\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(437),\n            i = n(111),\n            o = n(438),\n            u = Math.max;\n        t.exports = function(t, e, n) {\n            var a = null == t ? 0 : t.length;\n            if (!a) return -1;\n            var s = null == n ? 0 : o(n);\n            return s < 0 && (s = u(a + s, 0)), r(t, i(e, 3), s)\n        }\n    }, function(t, e) {\n        t.exports = function(t, e, n, r) {\n            for (var i = t.length, o = n + (r ? 1 : -1); r ? o-- : ++o < i;)\n                if (e(t[o], o, t)) return o;\n            return -1\n        }\n    }, function(t, e, n) {\n        var r = n(439);\n        t.exports = function(t) {\n            var e = r(t),\n                n = e % 1;\n            return e == e ? n ? e - n : e : 0\n        }\n    }, function(t, e, n) {\n        var r = n(440),\n            i = 1 / 0,\n            o = 1.7976931348623157e308;\n        t.exports = function(t) {\n            return t ? (t = r(t)) === i || t === -i ? (t < 0 ? -1 : 1) * o : t == t ? t : 0 : 0 === t ? t : 0\n        }\n    }, function(t, e, n) {\n        var r = n(50),\n            i = n(70),\n            o = NaN,\n            u = /^\\s+|\\s+$/g,\n            a = /^[-+]0x[0-9a-f]+$/i,\n            s = /^0b[01]+$/i,\n            c = /^0o[0-7]+$/i,\n            f = parseInt;\n        t.exports = function(t) {\n            if (\"number\" == typeof t) return t;\n            if (i(t)) return o;\n            if (r(t)) {\n                var e = \"function\" == typeof t.valueOf ? t.valueOf() : t;\n                t = r(e) ? e + \"\" : e\n            }\n            if (\"string\" != typeof t) return 0 === t ? t : +t;\n            t = t.replace(u, \"\");\n            var n = s.test(t);\n            return n || c.test(t) ? f(t.slice(2), n ? 2 : 8) : a.test(t) ? o : +t\n        }\n    }, function(t, e, n) {\n        var r = n(178),\n            i = n(111),\n            o = n(442),\n            u = n(8),\n            a = n(448);\n        t.exports = function(t, e, n) {\n            var s = u(t) ? r : o;\n            return n && a(t, e, n) && (e = void 0), s(t, i(e, 3))\n        }\n    }, function(t, e, n) {\n        var r = n(443);\n        t.exports = function(t, e) {\n            var n;\n            return r(t, function(t, r, i) {\n                return !(n = e(t, r, i))\n            }), !!n\n        }\n    }, function(t, e, n) {\n        var r = n(444),\n            i = n(447)(r);\n        t.exports = i\n    }, function(t, e, n) {\n        var r = n(445),\n            i = n(76);\n        t.exports = function(t, e) {\n            return t && r(t, e, i)\n        }\n    }, function(t, e, n) {\n        var r = n(446)();\n        t.exports = r\n    }, function(t, e) {\n        t.exports = function(t) {\n            return function(e, n, r) {\n                for (var i = -1, o = Object(e), u = r(e), a = u.length; a--;) {\n                    var s = u[t ? a : ++i];\n                    if (!1 === n(o[s], s, o)) break\n                }\n                return e\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(77);\n        t.exports = function(t, e) {\n            return function(n, i) {\n                if (null == n) return n;\n                if (!r(n)) return t(n, i);\n                for (var o = n.length, u = e ? o : -1, a = Object(n);\n                     (e ? u-- : ++u < o) && !1 !== i(a[u], u, a););\n                return n\n            }\n        }\n    }, function(t, e, n) {\n        var r = n(74),\n            i = n(77),\n            o = n(112),\n            u = n(50);\n        t.exports = function(t, e, n) {\n            if (!u(n)) return !1;\n            var a = typeof e;\n            return !!(\"number\" == a ? i(n) && o(e, n.length) : \"string\" == a && e in n) && r(n[e], t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        }), e.memoizedSampleFromSchema = e.memoizedCreateXMLExample = e.sampleXmlFromSchema = e.inferSchema = e.sampleFromSchema = void 0, e.createXMLExample = l;\n        var r = n(166),\n            i = u(n(450)),\n            o = u(n(463));\n\n        function u(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        var a = {\n                string: function() {\n                    return \"string\"\n                },\n                string_email: function() {\n                    return \"user@example.com\"\n                },\n                \"string_date-time\": function() {\n                    return (new Date).toISOString()\n                },\n                number: function() {\n                    return 0\n                },\n                number_float: function() {\n                    return 0\n                },\n                integer: function() {\n                    return 0\n                },\n                boolean: function(t) {\n                    return \"boolean\" != typeof t.default || t.default\n                }\n            },\n            s = function(t) {\n                var e = t = (0, r.objectify)(t),\n                    n = e.type,\n                    i = e.format,\n                    o = a[n + \"_\" + i] || a[n];\n                return (0, r.isFunc)(o) ? o(t) : \"Unknown Type: \" + t.type\n            },\n            c = e.sampleFromSchema = function t(e) {\n                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                    i = (0, r.objectify)(e),\n                    o = i.type,\n                    u = i.example,\n                    a = i.properties,\n                    c = i.additionalProperties,\n                    f = i.items,\n                    l = n.includeReadOnly,\n                    p = n.includeWriteOnly;\n                if (void 0 !== u) return (0, r.deeplyStripKey)(u, \"$$ref\", function(t) {\n                    return \"string\" == typeof t && t.indexOf(\"#\") > -1\n                });\n                if (!o)\n                    if (a) o = \"object\";\n                    else {\n                        if (!f) return;\n                        o = \"array\"\n                    }\n                if (\"object\" === o) {\n                    var h = (0, r.objectify)(a),\n                        d = {};\n                    for (var v in h) h[v] && h[v].deprecated || h[v] && h[v].readOnly && !l || h[v] && h[v].writeOnly && !p || (d[v] = t(h[v], n));\n                    if (!0 === c) d.additionalProp1 = {};\n                    else if (c)\n                        for (var y = (0, r.objectify)(c), g = t(y, n), m = 1; m < 4; m++) d[\"additionalProp\" + m] = g;\n                    return d\n                }\n                return \"array\" === o ? Array.isArray(f.anyOf) ? f.anyOf.map(function(e) {\n                    return t(e, n)\n                }) : Array.isArray(f.oneOf) ? f.oneOf.map(function(e) {\n                    return t(e, n)\n                }) : [t(f, n)] : e.enum ? e.default ? e.default : (0, r.normalizeArray)(e.enum)[0] : \"file\" !== o ? s(e) : void 0\n            },\n            f = (e.inferSchema = function(t) {\n                return t.schema && (t = t.schema), t.properties && (t.type = \"object\"), t\n            }, e.sampleXmlFromSchema = function t(e) {\n                var n, i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\n                    o = (0, r.objectify)(e),\n                    u = o.type,\n                    a = o.properties,\n                    c = o.additionalProperties,\n                    f = o.items,\n                    l = o.example,\n                    p = i.includeReadOnly,\n                    h = i.includeWriteOnly,\n                    d = o.default,\n                    v = {},\n                    y = {},\n                    g = e.xml,\n                    m = g.name,\n                    _ = g.prefix,\n                    b = g.namespace,\n                    w = o.enum,\n                    x = void 0;\n                if (!u)\n                    if (a || c) u = \"object\";\n                    else {\n                        if (!f) return;\n                        u = \"array\"\n                    }(m = m || \"notagname\", n = (_ ? _ + \":\" : \"\") + m, b) && (y[_ ? \"xmlns:\" + _ : \"xmlns\"] = b);\n                if (\"array\" === u && f) {\n                    if (f.xml = f.xml || g || {}, f.xml.name = f.xml.name || g.name, g.wrapped) return v[n] = [], Array.isArray(l) ? l.forEach(function(e) {\n                        f.example = e, v[n].push(t(f, i))\n                    }) : Array.isArray(d) ? d.forEach(function(e) {\n                        f.default = e, v[n].push(t(f, i))\n                    }) : v[n] = [t(f, i)], y && v[n].push({\n                        _attr: y\n                    }), v;\n                    var S = [];\n                    return Array.isArray(l) ? (l.forEach(function(e) {\n                        f.example = e, S.push(t(f, i))\n                    }), S) : Array.isArray(d) ? (d.forEach(function(e) {\n                        f.default = e, S.push(t(f, i))\n                    }), S) : t(f, i)\n                }\n                if (\"object\" === u) {\n                    var E = (0, r.objectify)(a);\n                    for (var A in v[n] = [], l = l || {}, E)\n                        if (E.hasOwnProperty(A) && (!E[A].readOnly || p) && (!E[A].writeOnly || h))\n                            if (E[A].xml = E[A].xml || {}, E[A].xml.attribute) {\n                                var O = Array.isArray(E[A].enum) && E[A].enum[0],\n                                    j = E[A].example,\n                                    k = E[A].default;\n                                y[E[A].xml.name || A] = void 0 !== j && j || void 0 !== l[A] && l[A] || void 0 !== k && k || O || s(E[A])\n                            } else {\n                                E[A].xml.name = E[A].xml.name || A, void 0 === E[A].example && void 0 !== l[A] && (E[A].example = l[A]);\n                                var I = t(E[A]);\n                                Array.isArray(I) ? v[n] = v[n].concat(I) : v[n].push(I)\n                            }\n                    return !0 === c ? v[n].push({\n                        additionalProp: \"Anything can be here\"\n                    }) : c && v[n].push({\n                        additionalProp: s(c)\n                    }), y && v[n].push({\n                        _attr: y\n                    }), v\n                }\n                return x = void 0 !== l ? l : void 0 !== d ? d : Array.isArray(w) ? w[0] : s(e), v[n] = y ? [{\n                    _attr: y\n                }, x] : x, v\n            });\n\n        function l(t, e) {\n            var n = f(t, e);\n            if (n) return (0, i.default)(n, {\n                declaration: !0,\n                indent: \"\\t\"\n            })\n        }\n        e.memoizedCreateXMLExample = (0, o.default)(l), e.memoizedSampleFromSchema = (0, o.default)(c)\n    }, function(t, e, n) {\n        (function(e) {\n            var r = n(451),\n                i = n(452).Stream,\n                o = \"    \";\n\n            function u(t, e, n) {\n                n = n || 0;\n                var i, o, a = (i = e, new Array(n || 0).join(i || \"\")),\n                    s = t;\n                if (\"object\" == typeof t && ((s = t[o = Object.keys(t)[0]]) && s._elem)) return s._elem.name = o, s._elem.icount = n, s._elem.indent = e, s._elem.indents = a, s._elem.interrupt = s, s._elem;\n                var c, f = [],\n                    l = [];\n\n                function p(t) {\n                    Object.keys(t).forEach(function(e) {\n                        f.push(function(t, e) {\n                            return t + '=\"' + r(e) + '\"'\n                        }(e, t[e]))\n                    })\n                }\n                switch (typeof s) {\n                    case \"object\":\n                        if (null === s) break;\n                        s._attr && p(s._attr), s._cdata && l.push((\"<![CDATA[\" + s._cdata).replace(/\\]\\]>/g, \"]]]]><![CDATA[>\") + \"]]>\"), s.forEach && (c = !1, l.push(\"\"), s.forEach(function(t) {\n                            \"object\" == typeof t ? \"_attr\" == Object.keys(t)[0] ? p(t._attr) : l.push(u(t, e, n + 1)) : (l.pop(), c = !0, l.push(r(t)))\n                        }), c || l.push(\"\"));\n                        break;\n                    default:\n                        l.push(r(s))\n                }\n                return {\n                    name: o,\n                    interrupt: !1,\n                    attributes: f,\n                    content: l,\n                    icount: n,\n                    indents: a,\n                    indent: e\n                }\n            }\n\n            function a(t, e, n) {\n                if (\"object\" != typeof e) return t(!1, e);\n                var r = e.interrupt ? 1 : e.content.length;\n\n                function i() {\n                    for (; e.content.length;) {\n                        var i = e.content.shift();\n                        if (void 0 !== i) {\n                            if (o(i)) return;\n                            a(t, i)\n                        }\n                    }\n                    t(!1, (r > 1 ? e.indents : \"\") + (e.name ? \"</\" + e.name + \">\" : \"\") + (e.indent && !n ? \"\\n\" : \"\")), n && n()\n                }\n\n                function o(e) {\n                    return !!e.interrupt && (e.interrupt.append = t, e.interrupt.end = i, e.interrupt = !1, t(!0), !0)\n                }\n                if (t(!1, e.indents + (e.name ? \"<\" + e.name : \"\") + (e.attributes.length ? \" \" + e.attributes.join(\" \") : \"\") + (r ? e.name ? \">\" : \"\" : e.name ? \"/>\" : \"\") + (e.indent && r > 1 ? \"\\n\" : \"\")), !r) return t(!1, e.indent ? \"\\n\" : \"\");\n                o(e) || i()\n            }\n            t.exports = function(t, n) {\n                \"object\" != typeof n && (n = {\n                    indent: n\n                });\n                var r, s, c = n.stream ? new i : null,\n                    f = \"\",\n                    l = !1,\n                    p = n.indent ? !0 === n.indent ? o : n.indent : \"\",\n                    h = !0;\n\n                function d(t) {\n                    h ? e.nextTick(t) : t()\n                }\n\n                function v(t, e) {\n                    if (void 0 !== e && (f += e), t && !l && (c = c || new i, l = !0), t && l) {\n                        var n = f;\n                        d(function() {\n                            c.emit(\"data\", n)\n                        }), f = \"\"\n                    }\n                }\n\n                function y(t, e) {\n                    a(v, u(t, p, p ? 1 : 0), e)\n                }\n\n                function g() {\n                    if (c) {\n                        var t = f;\n                        d(function() {\n                            c.emit(\"data\", t), c.emit(\"end\"), c.readable = !1, c.emit(\"close\")\n                        })\n                    }\n                }\n                return d(function() {\n                    h = !1\n                }), n.declaration && (r = n.declaration, s = {\n                    version: \"1.0\",\n                    encoding: r.encoding || \"UTF-8\"\n                }, r.standalone && (s.standalone = r.standalone), y({\n                    \"?xml\": {\n                        _attr: s\n                    }\n                }), f = f.replace(\"/>\", \"?>\")), t && t.forEach ? t.forEach(function(e, n) {\n                    var r;\n                    n + 1 === t.length && (r = g), y(e, r)\n                }) : y(t, g), c ? (c.readable = !0, c) : f\n            }, t.exports.element = t.exports.Element = function() {\n                var t = {\n                    _elem: u(Array.prototype.slice.call(arguments)),\n                    push: function(t) {\n                        if (!this.append) throw new Error(\"not assigned to a parent!\");\n                        var e = this,\n                            n = this._elem.indent;\n                        a(this.append, u(t, n, this._elem.icount + (n ? 1 : 0)), function() {\n                            e.append(!0)\n                        })\n                    },\n                    close: function(t) {\n                        void 0 !== t && this.push(t), this.end && this.end()\n                    }\n                };\n                return t\n            }\n        }).call(e, n(34))\n    }, function(t, e) {\n        var n = {\n            \"&\": \"&amp;\",\n            '\"': \"&quot;\",\n            \"'\": \"&apos;\",\n            \"<\": \"&lt;\",\n            \">\": \"&gt;\"\n        };\n        t.exports = function(t) {\n            return t && t.replace ? t.replace(/([&\"<>'])/g, function(t, e) {\n                return n[e]\n            }) : t\n        }\n    }, function(t, e, n) {\n        t.exports = i;\n        var r = n(115).EventEmitter;\n\n        function i() {\n            r.call(this)\n        }\n        n(35)(i, r), i.Readable = n(116), i.Writable = n(459), i.Duplex = n(460), i.Transform = n(461), i.PassThrough = n(462), i.Stream = i, i.prototype.pipe = function(t, e) {\n            var n = this;\n\n            function i(e) {\n                t.writable && !1 === t.write(e) && n.pause && n.pause()\n            }\n\n            function o() {\n                n.readable && n.resume && n.resume()\n            }\n            n.on(\"data\", i), t.on(\"drain\", o), t._isStdio || e && !1 === e.end || (n.on(\"end\", a), n.on(\"close\", s));\n            var u = !1;\n\n            function a() {\n                u || (u = !0, t.end())\n            }\n\n            function s() {\n                u || (u = !0, \"function\" == typeof t.destroy && t.destroy())\n            }\n\n            function c(t) {\n                if (f(), 0 === r.listenerCount(this, \"error\")) throw t\n            }\n\n            function f() {\n                n.removeListener(\"data\", i), t.removeListener(\"drain\", o), n.removeListener(\"end\", a), n.removeListener(\"close\", s), n.removeListener(\"error\", c), t.removeListener(\"error\", c), n.removeListener(\"end\", f), n.removeListener(\"close\", f), t.removeListener(\"close\", f)\n            }\n            return n.on(\"error\", c), t.on(\"error\", c), n.on(\"end\", f), n.on(\"close\", f), t.on(\"close\", f), t.emit(\"pipe\", n), t\n        }\n    }, function(t, e) {}, function(t, e, n) {\n        \"use strict\";\n        var r = n(80).Buffer,\n            i = n(455);\n        t.exports = function() {\n            function t() {\n                ! function(t, e) {\n                    if (!(t instanceof e)) throw new TypeError(\"Cannot call a class as a function\")\n                }(this, t), this.head = null, this.tail = null, this.length = 0\n            }\n            return t.prototype.push = function(t) {\n                var e = {\n                    data: t,\n                    next: null\n                };\n                this.length > 0 ? this.tail.next = e : this.head = e, this.tail = e, ++this.length\n            }, t.prototype.unshift = function(t) {\n                var e = {\n                    data: t,\n                    next: this.head\n                };\n                0 === this.length && (this.tail = e), this.head = e, ++this.length\n            }, t.prototype.shift = function() {\n                if (0 !== this.length) {\n                    var t = this.head.data;\n                    return 1 === this.length ? this.head = this.tail = null : this.head = this.head.next, --this.length, t\n                }\n            }, t.prototype.clear = function() {\n                this.head = this.tail = null, this.length = 0\n            }, t.prototype.join = function(t) {\n                if (0 === this.length) return \"\";\n                for (var e = this.head, n = \"\" + e.data; e = e.next;) n += t + e.data;\n                return n\n            }, t.prototype.concat = function(t) {\n                if (0 === this.length) return r.alloc(0);\n                if (1 === this.length) return this.head.data;\n                for (var e, n, i, o = r.allocUnsafe(t >>> 0), u = this.head, a = 0; u;) e = u.data, n = o, i = a, e.copy(n, i), a += u.data.length, u = u.next;\n                return o\n            }, t\n        }(), i && i.inspect && i.inspect.custom && (t.exports.prototype[i.inspect.custom] = function() {\n            var t = i.inspect({\n                length: this.length\n            });\n            return this.constructor.name + \" \" + t\n        })\n    }, function(t, e) {}, function(t, e, n) {\n        (function(t, e) {\n            ! function(t, n) {\n                \"use strict\";\n                if (!t.setImmediate) {\n                    var r, i, o, u, a, s = 1,\n                        c = {},\n                        f = !1,\n                        l = t.document,\n                        p = Object.getPrototypeOf && Object.getPrototypeOf(t);\n                    p = p && p.setTimeout ? p : t, \"[object process]\" === {}.toString.call(t.process) ? r = function(t) {\n                        e.nextTick(function() {\n                            d(t)\n                        })\n                    } : ! function() {\n                        if (t.postMessage && !t.importScripts) {\n                            var e = !0,\n                                n = t.onmessage;\n                            return t.onmessage = function() {\n                                e = !1\n                            }, t.postMessage(\"\", \"*\"), t.onmessage = n, e\n                        }\n                    }() ? t.MessageChannel ? ((o = new MessageChannel).port1.onmessage = function(t) {\n                        d(t.data)\n                    }, r = function(t) {\n                        o.port2.postMessage(t)\n                    }) : l && \"onreadystatechange\" in l.createElement(\"script\") ? (i = l.documentElement, r = function(t) {\n                        var e = l.createElement(\"script\");\n                        e.onreadystatechange = function() {\n                            d(t), e.onreadystatechange = null, i.removeChild(e), e = null\n                        }, i.appendChild(e)\n                    }) : r = function(t) {\n                        setTimeout(d, 0, t)\n                    } : (u = \"setImmediate$\" + Math.random() + \"$\", a = function(e) {\n                        e.source === t && \"string\" == typeof e.data && 0 === e.data.indexOf(u) && d(+e.data.slice(u.length))\n                    }, t.addEventListener ? t.addEventListener(\"message\", a, !1) : t.attachEvent(\"onmessage\", a), r = function(e) {\n                        t.postMessage(u + e, \"*\")\n                    }), p.setImmediate = function(t) {\n                        \"function\" != typeof t && (t = new Function(\"\" + t));\n                        for (var e = new Array(arguments.length - 1), n = 0; n < e.length; n++) e[n] = arguments[n + 1];\n                        var i = {\n                            callback: t,\n                            args: e\n                        };\n                        return c[s] = i, r(s), s++\n                    }, p.clearImmediate = h\n                }\n\n                function h(t) {\n                    delete c[t]\n                }\n\n                function d(t) {\n                    if (f) setTimeout(d, 0, t);\n                    else {\n                        var e = c[t];\n                        if (e) {\n                            f = !0;\n                            try {\n                                ! function(t) {\n                                    var e = t.callback,\n                                        r = t.args;\n                                    switch (r.length) {\n                                        case 0:\n                                            e();\n                                            break;\n                                        case 1:\n                                            e(r[0]);\n                                            break;\n                                        case 2:\n                                            e(r[0], r[1]);\n                                            break;\n                                        case 3:\n                                            e(r[0], r[1], r[2]);\n                                            break;\n                                        default:\n                                            e.apply(n, r)\n                                    }\n                                }(e)\n                            } finally {\n                                h(t), f = !1\n                            }\n                        }\n                    }\n                }\n            }(\"undefined\" == typeof self ? void 0 === t ? this : t : self)\n        }).call(e, n(11), n(34))\n    }, function(t, e, n) {\n        (function(e) {\n            function n(t) {\n                try {\n                    if (!e.localStorage) return !1\n                } catch (t) {\n                    return !1\n                }\n                var n = e.localStorage[t];\n                return null != n && \"true\" === String(n).toLowerCase()\n            }\n            t.exports = function(t, e) {\n                if (n(\"noDeprecation\")) return t;\n                var r = !1;\n                return function() {\n                    if (!r) {\n                        if (n(\"throwDeprecation\")) throw new Error(e);\n                        n(\"traceDeprecation\") ? console.trace(e) : console.warn(e), r = !0\n                    }\n                    return t.apply(this, arguments)\n                }\n            }\n        }).call(e, n(11))\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = o;\n        var r = n(192),\n            i = n(51);\n\n        function o(t) {\n            if (!(this instanceof o)) return new o(t);\n            r.call(this, t)\n        }\n        i.inherits = n(35), i.inherits(o, r), o.prototype._transform = function(t, e, n) {\n            n(null, t)\n        }\n    }, function(t, e, n) {\n        t.exports = n(117)\n    }, function(t, e, n) {\n        t.exports = n(21)\n    }, function(t, e, n) {\n        t.exports = n(116).Transform\n    }, function(t, e, n) {\n        t.exports = n(116).PassThrough\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(193),\n            i = n(195),\n            o = n(468);\n        t.exports = function(t) {\n            var e, u = r(arguments[1]);\n            return u.normalizer || 0 !== (e = u.length = i(u.length, t.length, u.async)) && (u.primitive ? !1 === e ? u.normalizer = n(495) : e > 1 && (u.normalizer = n(496)(e)) : u.normalizer = !1 === e ? n(497)() : 1 === e ? n(501)() : n(502)(e)), u.async && n(503), u.promise && n(504), u.dispose && n(510), u.maxAge && n(511), u.max && n(514), u.refCounter && n(516), o(t, u)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(465),\n            i = Math.abs,\n            o = Math.floor;\n        t.exports = function(t) {\n            return isNaN(t) ? 0 : 0 !== (t = Number(t)) && isFinite(t) ? r(t) * o(i(t)) : t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(466)() ? Math.sign : n(467)\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function() {\n            var t = Math.sign;\n            return \"function\" == typeof t && (1 === t(10) && -1 === t(-20))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            return t = Number(t), isNaN(t) || 0 === t ? t : t > 0 ? 1 : -1\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(12),\n            i = n(81),\n            o = n(24),\n            u = n(470),\n            a = n(195);\n        t.exports = function t(e) {\n            var n, s, c;\n            if (r(e), (n = Object(arguments[1])).async && n.promise) throw new Error(\"Options 'async' and 'promise' cannot be used together\");\n            return hasOwnProperty.call(e, \"__memoized__\") && !n.force ? e : (s = a(n.length, e.length, n.async && o.async), c = u(e, s, n), i(o, function(t, e) {\n                n[e] && t(n[e], c, n)\n            }), t.__profiler__ && t.__profiler__(c), c.updateEnv(), c.memoized)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(12),\n            i = n(36),\n            o = Function.prototype.bind,\n            u = Function.prototype.call,\n            a = Object.keys,\n            s = Object.prototype.propertyIsEnumerable;\n        t.exports = function(t, e) {\n            return function(n, c) {\n                var f, l = arguments[2],\n                    p = arguments[3];\n                return n = Object(i(n)), r(c), f = a(n), p && f.sort(\"function\" == typeof p ? o.call(p, n) : void 0), \"function\" != typeof t && (t = f[t]), u.call(t, f, function(t, r) {\n                    return s.call(n, t) ? u.call(c, l, n[t], t, n, r) : e\n                })\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(471),\n            i = n(197),\n            o = n(82),\n            u = n(481).methods,\n            a = n(482),\n            s = n(494),\n            c = Function.prototype.apply,\n            f = Function.prototype.call,\n            l = Object.create,\n            p = Object.defineProperties,\n            h = u.on,\n            d = u.emit;\n        t.exports = function(t, e, n) {\n            var u, v, y, g, m, _, b, w, x, S, E, A, O, j, k, I = l(null);\n            return v = !1 !== e ? e : isNaN(t.length) ? 1 : t.length, n.normalizer && (S = s(n.normalizer), y = S.get, g = S.set, m = S.delete, _ = S.clear), null != n.resolvers && (k = a(n.resolvers)), j = y ? i(function(e) {\n                var n, i, o = arguments;\n                if (k && (o = k(o)), null !== (n = y(o)) && hasOwnProperty.call(I, n)) return E && u.emit(\"get\", n, o, this), I[n];\n                if (i = 1 === o.length ? f.call(t, this, o[0]) : c.call(t, this, o), null === n) {\n                    if (null !== (n = y(o))) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                    n = g(o)\n                } else if (hasOwnProperty.call(I, n)) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                return I[n] = i, A && u.emit(\"set\", n, null, i), i\n            }, v) : 0 === e ? function() {\n                var e;\n                if (hasOwnProperty.call(I, \"data\")) return E && u.emit(\"get\", \"data\", arguments, this), I.data;\n                if (e = arguments.length ? c.call(t, this, arguments) : f.call(t, this), hasOwnProperty.call(I, \"data\")) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                return I.data = e, A && u.emit(\"set\", \"data\", null, e), e\n            } : function(e) {\n                var n, i, o = arguments;\n                if (k && (o = k(arguments)), i = String(o[0]), hasOwnProperty.call(I, i)) return E && u.emit(\"get\", i, o, this), I[i];\n                if (n = 1 === o.length ? f.call(t, this, o[0]) : c.call(t, this, o), hasOwnProperty.call(I, i)) throw r(\"Circular invocation\", \"CIRCULAR_INVOCATION\");\n                return I[i] = n, A && u.emit(\"set\", i, null, n), n\n            }, u = {\n                original: t,\n                memoized: j,\n                profileName: n.profileName,\n                get: function(t) {\n                    return k && (t = k(t)), y ? y(t) : String(t[0])\n                },\n                has: function(t) {\n                    return hasOwnProperty.call(I, t)\n                },\n                delete: function(t) {\n                    var e;\n                    hasOwnProperty.call(I, t) && (m && m(t), e = I[t], delete I[t], O && u.emit(\"delete\", t, e))\n                },\n                clear: function() {\n                    var t = I;\n                    _ && _(), I = l(null), u.emit(\"clear\", t)\n                },\n                on: function(t, e) {\n                    return \"get\" === t ? E = !0 : \"set\" === t ? A = !0 : \"delete\" === t && (O = !0), h.call(this, t, e)\n                },\n                emit: d,\n                updateEnv: function() {\n                    t = u.original\n                }\n            }, b = y ? i(function(t) {\n                var e, n = arguments;\n                k && (n = k(n)), null !== (e = y(n)) && u.delete(e)\n            }, v) : 0 === e ? function() {\n                return u.delete(\"data\")\n            } : function(t) {\n                return k && (t = k(arguments)[0]), u.delete(t)\n            }, w = i(function() {\n                var t, n = arguments;\n                return 0 === e ? I.data : (k && (n = k(n)), t = y ? y(n) : String(n[0]), I[t])\n            }), x = i(function() {\n                var t, n = arguments;\n                return 0 === e ? u.has(\"data\") : (k && (n = k(n)), null !== (t = y ? y(n) : String(n[0])) && u.has(t))\n            }), p(j, {\n                __memoized__: o(!0),\n                delete: o(b),\n                clear: o(u.clear),\n                _get: o(w),\n                _has: o(x)\n            }), u\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(196),\n            i = n(477),\n            o = n(22),\n            u = Error.captureStackTrace;\n        e = t.exports = function(t) {\n            var n = new Error(t),\n                a = arguments[1],\n                s = arguments[2];\n            return o(s) || i(a) && (s = a, a = null), o(s) && r(n, s), o(a) && (n.code = a), u && u(n, e), n\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function() {\n            var t, e = Object.assign;\n            return \"function\" == typeof e && (e(t = {\n                foo: \"raz\"\n            }, {\n                bar: \"dwa\"\n            }, {\n                trzy: \"trzy\"\n            }), t.foo + t.bar + t.trzy === \"razdwatrzy\")\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(474),\n            i = n(36),\n            o = Math.max;\n        t.exports = function(t, e) {\n            var n, u, a, s = o(arguments.length, 2);\n            for (t = Object(i(t)), a = function(r) {\n                try {\n                    t[r] = e[r]\n                } catch (t) {\n                    n || (n = t)\n                }\n            }, u = 1; u < s; ++u) e = arguments[u], r(e).forEach(a);\n            if (void 0 !== n) throw n;\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(475)() ? Object.keys : n(476)\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function() {\n            try {\n                return Object.keys(\"primitive\"), !0\n            } catch (t) {\n                return !1\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(22),\n            i = Object.keys;\n        t.exports = function(t) {\n            return i(r(t) ? Object(t) : t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(22),\n            i = {\n                function: !0,\n                object: !0\n            };\n        t.exports = function(t) {\n            return r(t) && i[typeof t] || !1\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(479)() ? String.prototype.contains : n(480)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = \"razdwatrzy\";\n        t.exports = function() {\n            return \"function\" == typeof r.contains && (!0 === r.contains(\"dwa\") && !1 === r.contains(\"foo\"))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = String.prototype.indexOf;\n        t.exports = function(t) {\n            return r.call(this, t, arguments[1]) > -1\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i, o, u, a, s, c, f = n(82),\n            l = n(12),\n            p = Function.prototype.apply,\n            h = Function.prototype.call,\n            d = Object.create,\n            v = Object.defineProperty,\n            y = Object.defineProperties,\n            g = Object.prototype.hasOwnProperty,\n            m = {\n                configurable: !0,\n                enumerable: !1,\n                writable: !0\n            };\n        a = {\n            on: r = function(t, e) {\n                var n;\n                return l(e), g.call(this, \"__ee__\") ? n = this.__ee__ : (n = m.value = d(null), v(this, \"__ee__\", m), m.value = null), n[t] ? \"object\" == typeof n[t] ? n[t].push(e) : n[t] = [n[t], e] : n[t] = e, this\n            },\n            once: i = function(t, e) {\n                var n, i;\n                return l(e), i = this, r.call(this, t, n = function() {\n                    o.call(i, t, n), p.call(e, this, arguments)\n                }), n.__eeOnceListener__ = e, this\n            },\n            off: o = function(t, e) {\n                var n, r, i, o;\n                if (l(e), !g.call(this, \"__ee__\")) return this;\n                if (!(n = this.__ee__)[t]) return this;\n                if (\"object\" == typeof(r = n[t]))\n                    for (o = 0; i = r[o]; ++o) i !== e && i.__eeOnceListener__ !== e || (2 === r.length ? n[t] = r[o ? 0 : 1] : r.splice(o, 1));\n                else r !== e && r.__eeOnceListener__ !== e || delete n[t];\n                return this\n            },\n            emit: u = function(t) {\n                var e, n, r, i, o;\n                if (g.call(this, \"__ee__\") && (i = this.__ee__[t]))\n                    if (\"object\" == typeof i) {\n                        for (n = arguments.length, o = new Array(n - 1), e = 1; e < n; ++e) o[e - 1] = arguments[e];\n                        for (i = i.slice(), e = 0; r = i[e]; ++e) p.call(r, this, o)\n                    } else switch (arguments.length) {\n                        case 1:\n                            h.call(i, this);\n                            break;\n                        case 2:\n                            h.call(i, this, arguments[1]);\n                            break;\n                        case 3:\n                            h.call(i, this, arguments[1], arguments[2]);\n                            break;\n                        default:\n                            for (n = arguments.length, o = new Array(n - 1), e = 1; e < n; ++e) o[e - 1] = arguments[e];\n                            p.call(i, this, o)\n                    }\n            }\n        }, s = {\n            on: f(r),\n            once: f(i),\n            off: f(o),\n            emit: f(u)\n        }, c = y({}, s), t.exports = e = function(t) {\n            return null == t ? d(c) : y(Object(t), s)\n        }, e.methods = a\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i = n(483),\n            o = n(22),\n            u = n(12),\n            a = Array.prototype.slice;\n        r = function(t) {\n            return this.map(function(e, n) {\n                return e ? e(t[n]) : t[n]\n            }).concat(a.call(t, this.length))\n        }, t.exports = function(t) {\n            return (t = i(t)).forEach(function(t) {\n                o(t) && u(t)\n            }), r.bind(t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(119),\n            i = Array.isArray;\n        t.exports = function(t) {\n            return i(t) ? t : r(t)\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function() {\n            var t, e, n = Array.from;\n            return \"function\" == typeof n && (e = n(t = [\"raz\", \"dwa\"]), Boolean(e && e !== t && \"dwa\" === e[1]))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(486).iterator,\n            i = n(491),\n            o = n(492),\n            u = n(23),\n            a = n(12),\n            s = n(36),\n            c = n(22),\n            f = n(493),\n            l = Array.isArray,\n            p = Function.prototype.call,\n            h = {\n                configurable: !0,\n                enumerable: !0,\n                writable: !0,\n                value: null\n            },\n            d = Object.defineProperty;\n        t.exports = function(t) {\n            var e, n, v, y, g, m, _, b, w, x, S = arguments[1],\n                E = arguments[2];\n            if (t = Object(s(t)), c(S) && a(S), this && this !== Array && o(this)) e = this;\n            else {\n                if (!S) {\n                    if (i(t)) return 1 !== (g = t.length) ? Array.apply(null, t) : ((y = new Array(1))[0] = t[0], y);\n                    if (l(t)) {\n                        for (y = new Array(g = t.length), n = 0; n < g; ++n) y[n] = t[n];\n                        return y\n                    }\n                }\n                y = []\n            }\n            if (!l(t))\n                if (void 0 !== (w = t[r])) {\n                    for (_ = a(w).call(t), e && (y = new e), b = _.next(), n = 0; !b.done;) x = S ? p.call(S, E, b.value, n) : b.value, e ? (h.value = x, d(y, n, h)) : y[n] = x, b = _.next(), ++n;\n                    g = n\n                } else if (f(t)) {\n                    for (g = t.length, e && (y = new e), n = 0, v = 0; n < g; ++n) x = t[n], n + 1 < g && (m = x.charCodeAt(0)) >= 55296 && m <= 56319 && (x += t[++n]), x = S ? p.call(S, E, x, v) : x, e ? (h.value = x, d(y, v, h)) : y[v] = x, ++v;\n                    g = v\n                }\n            if (void 0 === g)\n                for (g = u(t.length), e && (y = new e(g)), n = 0; n < g; ++n) x = S ? p.call(S, E, t[n], n) : t[n], e ? (h.value = x, d(y, n, h)) : y[n] = x;\n            return e && (h.value = null, y.length = g), y\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(487)() ? Symbol : n(488)\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = {\n            object: !0,\n            symbol: !0\n        };\n        t.exports = function() {\n            var t;\n            if (\"function\" != typeof Symbol) return !1;\n            t = Symbol(\"test symbol\");\n            try {\n                String(t)\n            } catch (t) {\n                return !1\n            }\n            return !!r[typeof Symbol.iterator] && (!!r[typeof Symbol.toPrimitive] && !!r[typeof Symbol.toStringTag])\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r, i, o, u, a = n(82),\n            s = n(489),\n            c = Object.create,\n            f = Object.defineProperties,\n            l = Object.defineProperty,\n            p = Object.prototype,\n            h = c(null);\n        if (\"function\" == typeof Symbol) {\n            r = Symbol;\n            try {\n                String(r()), u = !0\n            } catch (t) {}\n        }\n        var d, v = (d = c(null), function(t) {\n            for (var e, n, r = 0; d[t + (r || \"\")];) ++r;\n            return d[t += r || \"\"] = !0, l(p, e = \"@@\" + t, a.gs(null, function(t) {\n                n || (n = !0, l(this, e, a(t)), n = !1)\n            })), e\n        });\n        o = function(t) {\n            if (this instanceof o) throw new TypeError(\"Symbol is not a constructor\");\n            return i(t)\n        }, t.exports = i = function t(e) {\n            var n;\n            if (this instanceof t) throw new TypeError(\"Symbol is not a constructor\");\n            return u ? r(e) : (n = c(o.prototype), e = void 0 === e ? \"\" : String(e), f(n, {\n                __description__: a(\"\", e),\n                __name__: a(\"\", v(e))\n            }))\n        }, f(i, {\n            for: a(function(t) {\n                return h[t] ? h[t] : h[t] = i(String(t))\n            }),\n            keyFor: a(function(t) {\n                var e;\n                for (e in s(t), h)\n                    if (h[e] === t) return e\n            }),\n            hasInstance: a(\"\", r && r.hasInstance || i(\"hasInstance\")),\n            isConcatSpreadable: a(\"\", r && r.isConcatSpreadable || i(\"isConcatSpreadable\")),\n            iterator: a(\"\", r && r.iterator || i(\"iterator\")),\n            match: a(\"\", r && r.match || i(\"match\")),\n            replace: a(\"\", r && r.replace || i(\"replace\")),\n            search: a(\"\", r && r.search || i(\"search\")),\n            species: a(\"\", r && r.species || i(\"species\")),\n            split: a(\"\", r && r.split || i(\"split\")),\n            toPrimitive: a(\"\", r && r.toPrimitive || i(\"toPrimitive\")),\n            toStringTag: a(\"\", r && r.toStringTag || i(\"toStringTag\")),\n            unscopables: a(\"\", r && r.unscopables || i(\"unscopables\"))\n        }), f(o.prototype, {\n            constructor: a(i),\n            toString: a(\"\", function() {\n                return this.__name__\n            })\n        }), f(i.prototype, {\n            toString: a(function() {\n                return \"Symbol (\" + s(this).__description__ + \")\"\n            }),\n            valueOf: a(function() {\n                return s(this)\n            })\n        }), l(i.prototype, i.toPrimitive, a(\"\", function() {\n            var t = s(this);\n            return \"symbol\" == typeof t ? t : t.toString()\n        })), l(i.prototype, i.toStringTag, a(\"c\", \"Symbol\")), l(o.prototype, i.toStringTag, a(\"c\", i.prototype[i.toStringTag])), l(o.prototype, i.toPrimitive, a(\"c\", i.prototype[i.toPrimitive]))\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(490);\n        t.exports = function(t) {\n            if (!r(t)) throw new TypeError(t + \" is not a symbol\");\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            return !!t && (\"symbol\" == typeof t || !!t.constructor && (\"Symbol\" === t.constructor.name && \"Symbol\" === t[t.constructor.toStringTag]))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = Object.prototype.toString,\n            i = r.call(function() {\n                return arguments\n            }());\n        t.exports = function(t) {\n            return r.call(t) === i\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = Object.prototype.toString,\n            i = r.call(n(194));\n        t.exports = function(t) {\n            return \"function\" == typeof t && r.call(t) === i\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = Object.prototype.toString,\n            i = r.call(\"\");\n        t.exports = function(t) {\n            return \"string\" == typeof t || t && \"object\" == typeof t && (t instanceof String || r.call(t) === i) || !1\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(12);\n        t.exports = function(t) {\n            var e;\n            return \"function\" == typeof t ? {\n                set: t,\n                get: t\n            } : (e = {\n                get: r(t.get)\n            }, void 0 !== t.set ? (e.set = r(t.set), t.delete && (e.delete = r(t.delete)), t.clear && (e.clear = r(t.clear)), e) : (e.set = e.get, e))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            var e, n, r = t.length;\n            if (!r) return \"\u0002\";\n            for (e = String(t[n = 0]); --r;) e += \"\u0001\" + t[++n];\n            return e\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            return t ? function(e) {\n                for (var n = String(e[0]), r = 0, i = t; --i;) n += \"\u0001\" + e[++r];\n                return n\n            } : function() {\n                return \"\"\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(120),\n            i = Object.create;\n        t.exports = function() {\n            var t = 0,\n                e = [],\n                n = i(null);\n            return {\n                get: function(t) {\n                    var n, i = 0,\n                        o = e,\n                        u = t.length;\n                    if (0 === u) return o[u] || null;\n                    if (o = o[u]) {\n                        for (; i < u - 1;) {\n                            if (-1 === (n = r.call(o[0], t[i]))) return null;\n                            o = o[1][n], ++i\n                        }\n                        return -1 === (n = r.call(o[0], t[i])) ? null : o[1][n] || null\n                    }\n                    return null\n                },\n                set: function(i) {\n                    var o, u = 0,\n                        a = e,\n                        s = i.length;\n                    if (0 === s) a[s] = ++t;\n                    else {\n                        for (a[s] || (a[s] = [\n                            [],\n                            []\n                        ]), a = a[s]; u < s - 1;) - 1 === (o = r.call(a[0], i[u])) && (o = a[0].push(i[u]) - 1, a[1].push([\n                            [],\n                            []\n                        ])), a = a[1][o], ++u; - 1 === (o = r.call(a[0], i[u])) && (o = a[0].push(i[u]) - 1), a[1][o] = ++t\n                    }\n                    return n[t] = i, t\n                },\n                delete: function(t) {\n                    var i, o = 0,\n                        u = e,\n                        a = n[t],\n                        s = a.length,\n                        c = [];\n                    if (0 === s) delete u[s];\n                    else if (u = u[s]) {\n                        for (; o < s - 1;) {\n                            if (-1 === (i = r.call(u[0], a[o]))) return;\n                            c.push(u, i), u = u[1][i], ++o\n                        }\n                        if (-1 === (i = r.call(u[0], a[o]))) return;\n                        for (t = u[1][i], u[0].splice(i, 1), u[1].splice(i, 1); !u[0].length && c.length;) i = c.pop(), (u = c.pop())[0].splice(i, 1), u[1].splice(i, 1)\n                    }\n                    delete n[t]\n                },\n                clear: function() {\n                    e = [], n = i(null)\n                }\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = n(499)() ? Number.isNaN : n(500)\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function() {\n            var t = Number.isNaN;\n            return \"function\" == typeof t && (!t({}) && t(NaN) && !t(34))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = function(t) {\n            return t != t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(120);\n        t.exports = function() {\n            var t = 0,\n                e = [],\n                n = [];\n            return {\n                get: function(t) {\n                    var i = r.call(e, t[0]);\n                    return -1 === i ? null : n[i]\n                },\n                set: function(r) {\n                    return e.push(r[0]), n.push(++t), t\n                },\n                delete: function(t) {\n                    var i = r.call(n, t); - 1 !== i && (e.splice(i, 1), n.splice(i, 1))\n                },\n                clear: function() {\n                    e = [], n = []\n                }\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(120),\n            i = Object.create;\n        t.exports = function(t) {\n            var e = 0,\n                n = [\n                    [],\n                    []\n                ],\n                o = i(null);\n            return {\n                get: function(e) {\n                    for (var i, o = 0, u = n; o < t - 1;) {\n                        if (-1 === (i = r.call(u[0], e[o]))) return null;\n                        u = u[1][i], ++o\n                    }\n                    return -1 === (i = r.call(u[0], e[o])) ? null : u[1][i] || null\n                },\n                set: function(i) {\n                    for (var u, a = 0, s = n; a < t - 1;) - 1 === (u = r.call(s[0], i[a])) && (u = s[0].push(i[a]) - 1, s[1].push([\n                        [],\n                        []\n                    ])), s = s[1][u], ++a;\n                    return -1 === (u = r.call(s[0], i[a])) && (u = s[0].push(i[a]) - 1), s[1][u] = ++e, o[e] = i, e\n                },\n                delete: function(e) {\n                    for (var i, u = 0, a = n, s = [], c = o[e]; u < t - 1;) {\n                        if (-1 === (i = r.call(a[0], c[u]))) return;\n                        s.push(a, i), a = a[1][i], ++u\n                    }\n                    if (-1 !== (i = r.call(a[0], c[u]))) {\n                        for (e = a[1][i], a[0].splice(i, 1), a[1].splice(i, 1); !a[0].length && s.length;) i = s.pop(), (a = s.pop())[0].splice(i, 1), a[1].splice(i, 1);\n                        delete o[e]\n                    }\n                },\n                clear: function() {\n                    n = [\n                        [],\n                        []\n                    ], o = i(null)\n                }\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(119),\n            i = n(199),\n            o = n(198),\n            u = n(197),\n            a = n(121),\n            s = Array.prototype.slice,\n            c = Function.prototype.apply,\n            f = Object.create;\n        n(24).async = function(t, e) {\n            var n, l, p, h = f(null),\n                d = f(null),\n                v = e.memoized,\n                y = e.original;\n            e.memoized = u(function(t) {\n                var e = arguments,\n                    r = e[e.length - 1];\n                return \"function\" == typeof r && (n = r, e = s.call(e, 0, -1)), v.apply(l = this, p = e)\n            }, v);\n            try {\n                o(e.memoized, v)\n            } catch (t) {}\n            e.on(\"get\", function(t) {\n                var r, i, o;\n                if (n) {\n                    if (h[t]) return \"function\" == typeof h[t] ? h[t] = [h[t], n] : h[t].push(n), void(n = null);\n                    r = n, i = l, o = p, n = l = p = null, a(function() {\n                        var u;\n                        hasOwnProperty.call(d, t) ? (u = d[t], e.emit(\"getasync\", t, o, i), c.call(r, u.context, u.args)) : (n = r, l = i, p = o, v.apply(i, o))\n                    })\n                }\n            }), e.original = function() {\n                var t, i, o, u;\n                return n ? (t = r(arguments), i = function t(n) {\n                    var i, o, s = t.id;\n                    if (null != s) {\n                        if (delete t.id, i = h[s], delete h[s], i) return o = r(arguments), e.has(s) && (n ? e.delete(s) : (d[s] = {\n                            context: this,\n                            args: o\n                        }, e.emit(\"setasync\", s, \"function\" == typeof i ? 1 : i.length))), \"function\" == typeof i ? u = c.call(i, this, o) : i.forEach(function(t) {\n                            u = c.call(t, this, o)\n                        }, this), u\n                    } else a(c.bind(t, this, arguments))\n                }, o = n, n = l = p = null, t.push(i), u = c.call(y, this, t), i.cb = o, n = i, u) : c.call(y, this, arguments)\n            }, e.on(\"set\", function(t) {\n                n ? (h[t] ? \"function\" == typeof h[t] ? h[t] = [h[t], n.cb] : h[t].push(n.cb) : h[t] = n.cb, delete n.cb, n.id = t, n = null) : e.delete(t)\n            }), e.on(\"delete\", function(t) {\n                var n;\n                hasOwnProperty.call(h, t) || d[t] && (n = d[t], delete d[t], e.emit(\"deleteasync\", t, s.call(n.args, 1)))\n            }), e.on(\"clear\", function() {\n                var t = d;\n                d = f(null), e.emit(\"clearasync\", i(t, function(t) {\n                    return s.call(t.args, 1)\n                }))\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(199),\n            i = n(505),\n            o = n(506),\n            u = n(508),\n            a = n(200),\n            s = n(121),\n            c = Object.create,\n            f = i(\"then\", \"then:finally\", \"done\", \"done:finally\");\n        n(24).promise = function(t, e) {\n            var n = c(null),\n                i = c(null),\n                l = c(null);\n            if (!0 === t) t = null;\n            else if (t = o(t), !f[t]) throw new TypeError(\"'\" + u(t) + \"' is not valid promise mode\");\n            e.on(\"set\", function(r, o, u) {\n                var c = !1;\n                if (!a(u)) return i[r] = u, void e.emit(\"setasync\", r, 1);\n                n[r] = 1, l[r] = u;\n                var f = function(t) {\n                        var o = n[r];\n                        if (c) throw new Error(\"Memoizee error: Detected unordered then|done & finally resolution, which in turn makes proper detection of success/failure impossible (when in 'done:finally' mode)\\nConsider to rely on 'then' or 'done' mode instead.\");\n                        o && (delete n[r], i[r] = t, e.emit(\"setasync\", r, o))\n                    },\n                    p = function() {\n                        c = !0, n[r] && (delete n[r], delete l[r], e.delete(r))\n                    },\n                    h = t;\n                if (h || (h = \"then\"), \"then\" === h) u.then(function(t) {\n                    s(f.bind(this, t))\n                }, function() {\n                    s(p)\n                });\n                else if (\"done\" === h) {\n                    if (\"function\" != typeof u.done) throw new Error(\"Memoizee error: Retrieved promise does not implement 'done' in 'done' mode\");\n                    u.done(f, p)\n                } else if (\"done:finally\" === h) {\n                    if (\"function\" != typeof u.done) throw new Error(\"Memoizee error: Retrieved promise does not implement 'done' in 'done:finally' mode\");\n                    if (\"function\" != typeof u.finally) throw new Error(\"Memoizee error: Retrieved promise does not implement 'finally' in 'done:finally' mode\");\n                    u.done(f), u.finally(p)\n                }\n            }), e.on(\"get\", function(t, r, i) {\n                var o;\n                if (n[t]) ++n[t];\n                else {\n                    o = l[t];\n                    var u = function() {\n                        e.emit(\"getasync\", t, r, i)\n                    };\n                    a(o) ? \"function\" == typeof o.done ? o.done(u) : o.then(function() {\n                        s(u)\n                    }) : u()\n                }\n            }), e.on(\"delete\", function(t) {\n                if (delete l[t], n[t]) delete n[t];\n                else if (hasOwnProperty.call(i, t)) {\n                    var r = i[t];\n                    delete i[t], e.emit(\"deleteasync\", t, [r])\n                }\n            }), e.on(\"clear\", function() {\n                var t = i;\n                i = c(null), n = c(null), l = c(null), e.emit(\"clearasync\", r(t, function(t) {\n                    return [t]\n                }))\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = Array.prototype.forEach,\n            i = Object.create;\n        t.exports = function(t) {\n            var e = i(null);\n            return r.call(arguments, function(t) {\n                e[t] = !0\n            }), e\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(36),\n            i = n(507);\n        t.exports = function(t) {\n            return i(r(t))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(118);\n        t.exports = function(t) {\n            try {\n                return t && r(t.toString) ? t.toString() : String(t)\n            } catch (t) {\n                throw new TypeError(\"Passed argument cannot be stringifed\")\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(509),\n            i = /[\\n\\r\\u2028\\u2029]/g;\n        t.exports = function(t) {\n            var e = r(t);\n            return e.length > 100 && (e = e.slice(0, 99) + \"…\"), e = e.replace(i, function(t) {\n                return JSON.stringify(t).slice(1, -1)\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(118);\n        t.exports = function(t) {\n            try {\n                return t && r(t.toString) ? t.toString() : String(t)\n            } catch (t) {\n                return \"[Non-coercible (to string) value]\"\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(12),\n            i = n(81),\n            o = n(24),\n            u = Function.prototype.apply;\n        o.dispose = function(t, e, n) {\n            var a;\n            if (r(t), n.async && o.async || n.promise && o.promise) return e.on(\"deleteasync\", a = function(e, n) {\n                u.call(t, null, n)\n            }), void e.on(\"clearasync\", function(t) {\n                i(t, function(t, e) {\n                    a(e, t)\n                })\n            });\n            e.on(\"delete\", a = function(e, n) {\n                t(n)\n            }), e.on(\"clear\", function(t) {\n                i(t, function(t, e) {\n                    a(e, t)\n                })\n            })\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(119),\n            i = n(81),\n            o = n(121),\n            u = n(200),\n            a = n(512),\n            s = n(24),\n            c = Function.prototype,\n            f = Math.max,\n            l = Math.min,\n            p = Object.create;\n        s.maxAge = function(t, e, n) {\n            var h, d, v, y;\n            (t = a(t)) && (h = p(null), d = n.async && s.async || n.promise && s.promise ? \"async\" : \"\", e.on(\"set\" + d, function(n) {\n                h[n] = setTimeout(function() {\n                    e.delete(n)\n                }, t), \"function\" == typeof h[n].unref && h[n].unref(), y && (y[n] && \"nextTick\" !== y[n] && clearTimeout(y[n]), y[n] = setTimeout(function() {\n                    delete y[n]\n                }, v), \"function\" == typeof y[n].unref && y[n].unref())\n            }), e.on(\"delete\" + d, function(t) {\n                clearTimeout(h[t]), delete h[t], y && (\"nextTick\" !== y[t] && clearTimeout(y[t]), delete y[t])\n            }), n.preFetch && (v = !0 === n.preFetch || isNaN(n.preFetch) ? .333 : f(l(Number(n.preFetch), 1), 0)) && (y = {}, v = (1 - v) * t, e.on(\"get\" + d, function(t, i, a) {\n                y[t] || (y[t] = \"nextTick\", o(function() {\n                    var o;\n                    \"nextTick\" === y[t] && (delete y[t], e.delete(t), n.async && (i = r(i)).push(c), o = e.memoized.apply(a, i), n.promise && u(o) && (\"function\" == typeof o.done ? o.done(c, c) : o.then(c, c)))\n                }))\n            })), e.on(\"clear\" + d, function() {\n                i(h, function(t) {\n                    clearTimeout(t)\n                }), h = {}, y && (i(y, function(t) {\n                    \"nextTick\" !== t && clearTimeout(t)\n                }), y = {})\n            }))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(23),\n            i = n(513);\n        t.exports = function(t) {\n            if ((t = r(t)) > i) throw new TypeError(t + \" exceeds maximum possible timeout\");\n            return t\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        t.exports = 2147483647\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(23),\n            i = n(515),\n            o = n(24);\n        o.max = function(t, e, n) {\n            var u, a, s;\n            (t = r(t)) && (a = i(t), u = n.async && o.async || n.promise && o.promise ? \"async\" : \"\", e.on(\"set\" + u, s = function(t) {\n                void 0 !== (t = a.hit(t)) && e.delete(t)\n            }), e.on(\"get\" + u, s), e.on(\"delete\" + u, a.delete), e.on(\"clear\" + u, a.clear))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(23),\n            i = Object.create,\n            o = Object.prototype.hasOwnProperty;\n        t.exports = function(t) {\n            var e, n = 0,\n                u = 1,\n                a = i(null),\n                s = i(null),\n                c = 0;\n            return t = r(t), {\n                hit: function(r) {\n                    var i = s[r],\n                        f = ++c;\n                    if (a[f] = r, s[r] = f, !i) {\n                        if (++n <= t) return;\n                        return r = a[u], e(r), r\n                    }\n                    if (delete a[i], u === i)\n                        for (; !o.call(a, ++u);) continue\n                },\n                delete: e = function(t) {\n                    var e = s[t];\n                    if (e && (delete a[e], delete s[t], --n, u === e)) {\n                        if (!n) return c = 0, void(u = 1);\n                        for (; !o.call(a, ++u);) continue\n                    }\n                },\n                clear: function() {\n                    n = 0, u = 1, a = i(null), s = i(null), c = 0\n                }\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(82),\n            i = n(24),\n            o = Object.create,\n            u = Object.defineProperties;\n        i.refCounter = function(t, e, n) {\n            var a, s;\n            a = o(null), s = n.async && i.async || n.promise && i.promise ? \"async\" : \"\", e.on(\"set\" + s, function(t, e) {\n                a[t] = e || 1\n            }), e.on(\"get\" + s, function(t) {\n                ++a[t]\n            }), e.on(\"delete\" + s, function(t) {\n                delete a[t]\n            }), e.on(\"clear\" + s, function() {\n                a = {}\n            }), u(e.memoized, {\n                deleteRef: r(function() {\n                    var t = e.get(arguments);\n                    return null === t ? null : a[t] ? !--a[t] && (e.delete(t), !0) : null\n                }),\n                getRefCount: r(function() {\n                    var t = e.get(arguments);\n                    return null === t ? 0 : a[t] ? a[t] : 0\n                })\n            })\n        }\n    }, function(t, e, n) {\n        (function(e) {\n            var n, r;\n            n = void 0 !== e ? e : this, r = function(t) {\n                if (t.CSS && t.CSS.escape) return t.CSS.escape;\n                var e = function(t) {\n                    if (0 == arguments.length) throw new TypeError(\"`CSS.escape` requires an argument.\");\n                    for (var e, n = String(t), r = n.length, i = -1, o = \"\", u = n.charCodeAt(0); ++i < r;) 0 != (e = n.charCodeAt(i)) ? o += e >= 1 && e <= 31 || 127 == e || 0 == i && e >= 48 && e <= 57 || 1 == i && e >= 48 && e <= 57 && 45 == u ? \"\\\\\" + e.toString(16) + \" \" : (0 != i || 1 != r || 45 != e) && (e >= 128 || 45 == e || 95 == e || e >= 48 && e <= 57 || e >= 65 && e <= 90 || e >= 97 && e <= 122) ? n.charAt(i) : \"\\\\\" + n.charAt(i) : o += \"�\";\n                    return o\n                };\n                return t.CSS || (t.CSS = {}), t.CSS.escape = e, e\n            }, t.exports = r(n)\n        }).call(e, n(11))\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        }), e.default = function() {\n            return {\n                statePlugins: {\n                    spec: {\n                        actions: u,\n                        selectors: l\n                    },\n                    configs: {\n                        reducers: s.default,\n                        actions: o,\n                        selectors: a\n                    }\n                }\n            }\n        };\n        var r = f(n(519)),\n            i = n(201),\n            o = c(n(204)),\n            u = c(n(541)),\n            a = c(n(542)),\n            s = f(n(543));\n\n        function c(t) {\n            if (t && t.__esModule) return t;\n            var e = {};\n            if (null != t)\n                for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);\n            return e.default = t, e\n        }\n\n        function f(t) {\n            return t && t.__esModule ? t : {\n                default: t\n            }\n        }\n        var l = {\n            getLocalConfig: function() {\n                return (0, i.parseYamlConfig)(r.default)\n            }\n        }\n    }, function(t, e) {\n        t.exports = '---\\nurl: \"https://petstore.swagger.io/v2/swagger.json\"\\ndom_id: \"#swagger-ui\"\\nvalidatorUrl: \"https://online.swagger.io/validator\"\\noauth2RedirectUrl: \"http://localhost:3200/oauth2-redirect.html\"\\n'\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(521);\n        t.exports = r\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(522),\n            i = n(540);\n\n        function o(t) {\n            return function() {\n                throw new Error(\"Function \" + t + \" is deprecated and cannot be used.\")\n            }\n        }\n        t.exports.Type = n(0), t.exports.Schema = n(38), t.exports.FAILSAFE_SCHEMA = n(122), t.exports.JSON_SCHEMA = n(203), t.exports.CORE_SCHEMA = n(202), t.exports.DEFAULT_SAFE_SCHEMA = n(53), t.exports.DEFAULT_FULL_SCHEMA = n(83), t.exports.load = r.load, t.exports.loadAll = r.loadAll, t.exports.safeLoad = r.safeLoad, t.exports.safeLoadAll = r.safeLoadAll, t.exports.dump = i.dump, t.exports.safeDump = i.safeDump, t.exports.YAMLException = n(52), t.exports.MINIMAL_SCHEMA = n(122), t.exports.SAFE_SCHEMA = n(53), t.exports.DEFAULT_SCHEMA = n(83), t.exports.scan = o(\"scan\"), t.exports.parse = o(\"parse\"), t.exports.compose = o(\"compose\"), t.exports.addConstructor = o(\"addConstructor\")\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(37),\n            i = n(52),\n            o = n(523),\n            u = n(53),\n            a = n(83),\n            s = Object.prototype.hasOwnProperty,\n            c = 1,\n            f = 2,\n            l = 3,\n            p = 4,\n            h = 1,\n            d = 2,\n            v = 3,\n            y = /[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F-\\x84\\x86-\\x9F\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/,\n            g = /[\\x85\\u2028\\u2029]/,\n            m = /[,\\[\\]\\{\\}]/,\n            _ = /^(?:!|!!|![a-z\\-]+!)$/i,\n            b = /^(?:!|[^,\\[\\]\\{\\}])(?:%[0-9a-f]{2}|[0-9a-z\\-#;\\/\\?:@&=\\+\\$,_\\.!~\\*'\\(\\)\\[\\]])*$/i;\n\n        function w(t) {\n            return 10 === t || 13 === t\n        }\n\n        function x(t) {\n            return 9 === t || 32 === t\n        }\n\n        function S(t) {\n            return 9 === t || 32 === t || 10 === t || 13 === t\n        }\n\n        function E(t) {\n            return 44 === t || 91 === t || 93 === t || 123 === t || 125 === t\n        }\n\n        function A(t) {\n            var e;\n            return 48 <= t && t <= 57 ? t - 48 : 97 <= (e = 32 | t) && e <= 102 ? e - 97 + 10 : -1\n        }\n\n        function O(t) {\n            return 48 === t ? \"\\0\" : 97 === t ? \"\u0007\" : 98 === t ? \"\\b\" : 116 === t ? \"\\t\" : 9 === t ? \"\\t\" : 110 === t ? \"\\n\" : 118 === t ? \"\\v\" : 102 === t ? \"\\f\" : 114 === t ? \"\\r\" : 101 === t ? \"\u001b\" : 32 === t ? \" \" : 34 === t ? '\"' : 47 === t ? \"/\" : 92 === t ? \"\\\\\" : 78 === t ? \"\" : 95 === t ? \" \" : 76 === t ? \"\\u2028\" : 80 === t ? \"\\u2029\" : \"\"\n        }\n\n        function j(t) {\n            return t <= 65535 ? String.fromCharCode(t) : String.fromCharCode(55296 + (t - 65536 >> 10), 56320 + (t - 65536 & 1023))\n        }\n        for (var k = new Array(256), I = new Array(256), M = 0; M < 256; M++) k[M] = O(M) ? 1 : 0, I[M] = O(M);\n\n        function T(t, e) {\n            return new i(e, new o(t.filename, t.input, t.position, t.line, t.position - t.lineStart))\n        }\n\n        function C(t, e) {\n            throw T(t, e)\n        }\n\n        function P(t, e) {\n            t.onWarning && t.onWarning.call(null, T(t, e))\n        }\n        var R = {\n            YAML: function(t, e, n) {\n                var r, i, o;\n                null !== t.version && C(t, \"duplication of %YAML directive\"), 1 !== n.length && C(t, \"YAML directive accepts exactly one argument\"), null === (r = /^([0-9]+)\\.([0-9]+)$/.exec(n[0])) && C(t, \"ill-formed argument of the YAML directive\"), i = parseInt(r[1], 10), o = parseInt(r[2], 10), 1 !== i && C(t, \"unacceptable YAML version of the document\"), t.version = n[0], t.checkLineBreaks = o < 2, 1 !== o && 2 !== o && P(t, \"unsupported YAML version of the document\")\n            },\n            TAG: function(t, e, n) {\n                var r, i;\n                2 !== n.length && C(t, \"TAG directive accepts exactly two arguments\"), r = n[0], i = n[1], _.test(r) || C(t, \"ill-formed tag handle (first argument) of the TAG directive\"), s.call(t.tagMap, r) && C(t, 'there is a previously declared suffix for \"' + r + '\" tag handle'), b.test(i) || C(t, \"ill-formed tag prefix (second argument) of the TAG directive\"), t.tagMap[r] = i\n            }\n        };\n\n        function N(t, e, n, r) {\n            var i, o, u, a;\n            if (e < n) {\n                if (a = t.input.slice(e, n), r)\n                    for (i = 0, o = a.length; i < o; i += 1) 9 === (u = a.charCodeAt(i)) || 32 <= u && u <= 1114111 || C(t, \"expected valid JSON character\");\n                else y.test(a) && C(t, \"the stream contains non-printable characters\");\n                t.result += a\n            }\n        }\n\n        function L(t, e, n, i) {\n            var o, u, a, c;\n            for (r.isObject(n) || C(t, \"cannot merge mappings; the provided source object is unacceptable\"), a = 0, c = (o = Object.keys(n)).length; a < c; a += 1) u = o[a], s.call(e, u) || (e[u] = n[u], i[u] = !0)\n        }\n\n        function D(t, e, n, r, i, o, u, a) {\n            var c, f;\n            if (i = String(i), null === e && (e = {}), \"tag:yaml.org,2002:merge\" === r)\n                if (Array.isArray(o))\n                    for (c = 0, f = o.length; c < f; c += 1) L(t, e, o[c], n);\n                else L(t, e, o, n);\n            else t.json || s.call(n, i) || !s.call(e, i) || (t.line = u || t.line, t.position = a || t.position, C(t, \"duplicated mapping key\")), e[i] = o, delete n[i];\n            return e\n        }\n\n        function z(t) {\n            var e;\n            10 === (e = t.input.charCodeAt(t.position)) ? t.position++ : 13 === e ? (t.position++, 10 === t.input.charCodeAt(t.position) && t.position++) : C(t, \"a line break is expected\"), t.line += 1, t.lineStart = t.position\n        }\n\n        function F(t, e, n) {\n            for (var r = 0, i = t.input.charCodeAt(t.position); 0 !== i;) {\n                for (; x(i);) i = t.input.charCodeAt(++t.position);\n                if (e && 35 === i)\n                    do {\n                        i = t.input.charCodeAt(++t.position)\n                    } while (10 !== i && 13 !== i && 0 !== i);\n                if (!w(i)) break;\n                for (z(t), i = t.input.charCodeAt(t.position), r++, t.lineIndent = 0; 32 === i;) t.lineIndent++, i = t.input.charCodeAt(++t.position)\n            }\n            return -1 !== n && 0 !== r && t.lineIndent < n && P(t, \"deficient indentation\"), r\n        }\n\n        function U(t) {\n            var e, n = t.position;\n            return !(45 !== (e = t.input.charCodeAt(n)) && 46 !== e || e !== t.input.charCodeAt(n + 1) || e !== t.input.charCodeAt(n + 2) || (n += 3, 0 !== (e = t.input.charCodeAt(n)) && !S(e)))\n        }\n\n        function B(t, e) {\n            1 === e ? t.result += \" \" : e > 1 && (t.result += r.repeat(\"\\n\", e - 1))\n        }\n\n        function q(t, e) {\n            var n, r, i = t.tag,\n                o = t.anchor,\n                u = [],\n                a = !1;\n            for (null !== t.anchor && (t.anchorMap[t.anchor] = u), r = t.input.charCodeAt(t.position); 0 !== r && 45 === r && S(t.input.charCodeAt(t.position + 1));)\n                if (a = !0, t.position++, F(t, !0, -1) && t.lineIndent <= e) u.push(null), r = t.input.charCodeAt(t.position);\n                else if (n = t.line, V(t, e, l, !1, !0), u.push(t.result), F(t, !0, -1), r = t.input.charCodeAt(t.position), (t.line === n || t.lineIndent > e) && 0 !== r) C(t, \"bad indentation of a sequence entry\");\n                else if (t.lineIndent < e) break;\n            return !!a && (t.tag = i, t.anchor = o, t.kind = \"sequence\", t.result = u, !0)\n        }\n\n        function Y(t) {\n            var e, n, r, i, o = !1,\n                u = !1;\n            if (33 !== (i = t.input.charCodeAt(t.position))) return !1;\n            if (null !== t.tag && C(t, \"duplication of a tag property\"), 60 === (i = t.input.charCodeAt(++t.position)) ? (o = !0, i = t.input.charCodeAt(++t.position)) : 33 === i ? (u = !0, n = \"!!\", i = t.input.charCodeAt(++t.position)) : n = \"!\", e = t.position, o) {\n                do {\n                    i = t.input.charCodeAt(++t.position)\n                } while (0 !== i && 62 !== i);\n                t.position < t.length ? (r = t.input.slice(e, t.position), i = t.input.charCodeAt(++t.position)) : C(t, \"unexpected end of the stream within a verbatim tag\")\n            } else {\n                for (; 0 !== i && !S(i);) 33 === i && (u ? C(t, \"tag suffix cannot contain exclamation marks\") : (n = t.input.slice(e - 1, t.position + 1), _.test(n) || C(t, \"named tag handle cannot contain such characters\"), u = !0, e = t.position + 1)), i = t.input.charCodeAt(++t.position);\n                r = t.input.slice(e, t.position), m.test(r) && C(t, \"tag suffix cannot contain flow indicator characters\")\n            }\n            return r && !b.test(r) && C(t, \"tag name cannot contain such characters: \" + r), o ? t.tag = r : s.call(t.tagMap, n) ? t.tag = t.tagMap[n] + r : \"!\" === n ? t.tag = \"!\" + r : \"!!\" === n ? t.tag = \"tag:yaml.org,2002:\" + r : C(t, 'undeclared tag handle \"' + n + '\"'), !0\n        }\n\n        function W(t) {\n            var e, n;\n            if (38 !== (n = t.input.charCodeAt(t.position))) return !1;\n            for (null !== t.anchor && C(t, \"duplication of an anchor property\"), n = t.input.charCodeAt(++t.position), e = t.position; 0 !== n && !S(n) && !E(n);) n = t.input.charCodeAt(++t.position);\n            return t.position === e && C(t, \"name of an anchor node must contain at least one character\"), t.anchor = t.input.slice(e, t.position), !0\n        }\n\n        function V(t, e, n, i, o) {\n            var u, a, y, g, m, _, b, O, M = 1,\n                T = !1,\n                P = !1;\n            if (null !== t.listener && t.listener(\"open\", t), t.tag = null, t.anchor = null, t.kind = null, t.result = null, u = a = y = p === n || l === n, i && F(t, !0, -1) && (T = !0, t.lineIndent > e ? M = 1 : t.lineIndent === e ? M = 0 : t.lineIndent < e && (M = -1)), 1 === M)\n                for (; Y(t) || W(t);) F(t, !0, -1) ? (T = !0, y = u, t.lineIndent > e ? M = 1 : t.lineIndent === e ? M = 0 : t.lineIndent < e && (M = -1)) : y = !1;\n            if (y && (y = T || o), 1 !== M && p !== n || (b = c === n || f === n ? e : e + 1, O = t.position - t.lineStart, 1 === M ? y && (q(t, O) || function(t, e, n) {\n                var r, i, o, u, a, s = t.tag,\n                    c = t.anchor,\n                    l = {},\n                    h = {},\n                    d = null,\n                    v = null,\n                    y = null,\n                    g = !1,\n                    m = !1;\n                for (null !== t.anchor && (t.anchorMap[t.anchor] = l), a = t.input.charCodeAt(t.position); 0 !== a;) {\n                    if (r = t.input.charCodeAt(t.position + 1), o = t.line, u = t.position, 63 !== a && 58 !== a || !S(r)) {\n                        if (!V(t, n, f, !1, !0)) break;\n                        if (t.line === o) {\n                            for (a = t.input.charCodeAt(t.position); x(a);) a = t.input.charCodeAt(++t.position);\n                            if (58 === a) S(a = t.input.charCodeAt(++t.position)) || C(t, \"a whitespace character is expected after the key-value separator within a block mapping\"), g && (D(t, l, h, d, v, null), d = v = y = null), m = !0, g = !1, i = !1, d = t.tag, v = t.result;\n                            else {\n                                if (!m) return t.tag = s, t.anchor = c, !0;\n                                C(t, \"can not read an implicit mapping pair; a colon is missed\")\n                            }\n                        } else {\n                            if (!m) return t.tag = s, t.anchor = c, !0;\n                            C(t, \"can not read a block mapping entry; a multiline key may not be an implicit key\")\n                        }\n                    } else 63 === a ? (g && (D(t, l, h, d, v, null), d = v = y = null), m = !0, g = !0, i = !0) : g ? (g = !1, i = !0) : C(t, \"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line\"), t.position += 1, a = r;\n                    if ((t.line === o || t.lineIndent > e) && (V(t, e, p, !0, i) && (g ? v = t.result : y = t.result), g || (D(t, l, h, d, v, y, o, u), d = v = y = null), F(t, !0, -1), a = t.input.charCodeAt(t.position)), t.lineIndent > e && 0 !== a) C(t, \"bad indentation of a mapping entry\");\n                    else if (t.lineIndent < e) break\n                }\n                return g && D(t, l, h, d, v, null), m && (t.tag = s, t.anchor = c, t.kind = \"mapping\", t.result = l), m\n            }(t, O, b)) || function(t, e) {\n                var n, r, i, o, u, a, s, f, l, p, h = !0,\n                    d = t.tag,\n                    v = t.anchor,\n                    y = {};\n                if (91 === (p = t.input.charCodeAt(t.position))) i = 93, a = !1, r = [];\n                else {\n                    if (123 !== p) return !1;\n                    i = 125, a = !0, r = {}\n                }\n                for (null !== t.anchor && (t.anchorMap[t.anchor] = r), p = t.input.charCodeAt(++t.position); 0 !== p;) {\n                    if (F(t, !0, e), (p = t.input.charCodeAt(t.position)) === i) return t.position++, t.tag = d, t.anchor = v, t.kind = a ? \"mapping\" : \"sequence\", t.result = r, !0;\n                    h || C(t, \"missed comma between flow collection entries\"), f = s = l = null, o = u = !1, 63 === p && S(t.input.charCodeAt(t.position + 1)) && (o = u = !0, t.position++, F(t, !0, e)), n = t.line, V(t, e, c, !1, !0), f = t.tag, s = t.result, F(t, !0, e), p = t.input.charCodeAt(t.position), !u && t.line !== n || 58 !== p || (o = !0, p = t.input.charCodeAt(++t.position), F(t, !0, e), V(t, e, c, !1, !0), l = t.result), a ? D(t, r, y, f, s, l) : o ? r.push(D(t, null, y, f, s, l)) : r.push(s), F(t, !0, e), 44 === (p = t.input.charCodeAt(t.position)) ? (h = !0, p = t.input.charCodeAt(++t.position)) : h = !1\n                }\n                C(t, \"unexpected end of the stream within a flow collection\")\n            }(t, b) ? P = !0 : (a && function(t, e) {\n                var n, i, o, u, a, s = h,\n                    c = !1,\n                    f = !1,\n                    l = e,\n                    p = 0,\n                    y = !1;\n                if (124 === (u = t.input.charCodeAt(t.position))) i = !1;\n                else {\n                    if (62 !== u) return !1;\n                    i = !0\n                }\n                for (t.kind = \"scalar\", t.result = \"\"; 0 !== u;)\n                    if (43 === (u = t.input.charCodeAt(++t.position)) || 45 === u) h === s ? s = 43 === u ? v : d : C(t, \"repeat of a chomping mode identifier\");\n                    else {\n                        if (!((o = 48 <= (a = u) && a <= 57 ? a - 48 : -1) >= 0)) break;\n                        0 === o ? C(t, \"bad explicit indentation width of a block scalar; it cannot be less than one\") : f ? C(t, \"repeat of an indentation width identifier\") : (l = e + o - 1, f = !0)\n                    }\n                if (x(u)) {\n                    do {\n                        u = t.input.charCodeAt(++t.position)\n                    } while (x(u));\n                    if (35 === u)\n                        do {\n                            u = t.input.charCodeAt(++t.position)\n                        } while (!w(u) && 0 !== u)\n                }\n                for (; 0 !== u;) {\n                    for (z(t), t.lineIndent = 0, u = t.input.charCodeAt(t.position);\n                         (!f || t.lineIndent < l) && 32 === u;) t.lineIndent++, u = t.input.charCodeAt(++t.position);\n                    if (!f && t.lineIndent > l && (l = t.lineIndent), w(u)) p++;\n                    else {\n                        if (t.lineIndent < l) {\n                            s === v ? t.result += r.repeat(\"\\n\", c ? 1 + p : p) : s === h && c && (t.result += \"\\n\");\n                            break\n                        }\n                        for (i ? x(u) ? (y = !0, t.result += r.repeat(\"\\n\", c ? 1 + p : p)) : y ? (y = !1, t.result += r.repeat(\"\\n\", p + 1)) : 0 === p ? c && (t.result += \" \") : t.result += r.repeat(\"\\n\", p) : t.result += r.repeat(\"\\n\", c ? 1 + p : p), c = !0, f = !0, p = 0, n = t.position; !w(u) && 0 !== u;) u = t.input.charCodeAt(++t.position);\n                        N(t, n, t.position, !1)\n                    }\n                }\n                return !0\n            }(t, b) || function(t, e) {\n                var n, r, i;\n                if (39 !== (n = t.input.charCodeAt(t.position))) return !1;\n                for (t.kind = \"scalar\", t.result = \"\", t.position++, r = i = t.position; 0 !== (n = t.input.charCodeAt(t.position));)\n                    if (39 === n) {\n                        if (N(t, r, t.position, !0), 39 !== (n = t.input.charCodeAt(++t.position))) return !0;\n                        r = t.position, t.position++, i = t.position\n                    } else w(n) ? (N(t, r, i, !0), B(t, F(t, !1, e)), r = i = t.position) : t.position === t.lineStart && U(t) ? C(t, \"unexpected end of the document within a single quoted scalar\") : (t.position++, i = t.position);\n                C(t, \"unexpected end of the stream within a single quoted scalar\")\n            }(t, b) || function(t, e) {\n                var n, r, i, o, u, a, s;\n                if (34 !== (a = t.input.charCodeAt(t.position))) return !1;\n                for (t.kind = \"scalar\", t.result = \"\", t.position++, n = r = t.position; 0 !== (a = t.input.charCodeAt(t.position));) {\n                    if (34 === a) return N(t, n, t.position, !0), t.position++, !0;\n                    if (92 === a) {\n                        if (N(t, n, t.position, !0), w(a = t.input.charCodeAt(++t.position))) F(t, !1, e);\n                        else if (a < 256 && k[a]) t.result += I[a], t.position++;\n                        else if ((u = 120 === (s = a) ? 2 : 117 === s ? 4 : 85 === s ? 8 : 0) > 0) {\n                            for (i = u, o = 0; i > 0; i--)(u = A(a = t.input.charCodeAt(++t.position))) >= 0 ? o = (o << 4) + u : C(t, \"expected hexadecimal character\");\n                            t.result += j(o), t.position++\n                        } else C(t, \"unknown escape sequence\");\n                        n = r = t.position\n                    } else w(a) ? (N(t, n, r, !0), B(t, F(t, !1, e)), n = r = t.position) : t.position === t.lineStart && U(t) ? C(t, \"unexpected end of the document within a double quoted scalar\") : (t.position++, r = t.position)\n                }\n                C(t, \"unexpected end of the stream within a double quoted scalar\")\n            }(t, b) ? P = !0 : ! function(t) {\n                var e, n, r;\n                if (42 !== (r = t.input.charCodeAt(t.position))) return !1;\n                for (r = t.input.charCodeAt(++t.position), e = t.position; 0 !== r && !S(r) && !E(r);) r = t.input.charCodeAt(++t.position);\n                return t.position === e && C(t, \"name of an alias node must contain at least one character\"), n = t.input.slice(e, t.position), t.anchorMap.hasOwnProperty(n) || C(t, 'unidentified alias \"' + n + '\"'), t.result = t.anchorMap[n], F(t, !0, -1), !0\n            }(t) ? function(t, e, n) {\n                var r, i, o, u, a, s, c, f, l = t.kind,\n                    p = t.result;\n                if (S(f = t.input.charCodeAt(t.position)) || E(f) || 35 === f || 38 === f || 42 === f || 33 === f || 124 === f || 62 === f || 39 === f || 34 === f || 37 === f || 64 === f || 96 === f) return !1;\n                if ((63 === f || 45 === f) && (S(r = t.input.charCodeAt(t.position + 1)) || n && E(r))) return !1;\n                for (t.kind = \"scalar\", t.result = \"\", i = o = t.position, u = !1; 0 !== f;) {\n                    if (58 === f) {\n                        if (S(r = t.input.charCodeAt(t.position + 1)) || n && E(r)) break\n                    } else if (35 === f) {\n                        if (S(t.input.charCodeAt(t.position - 1))) break\n                    } else {\n                        if (t.position === t.lineStart && U(t) || n && E(f)) break;\n                        if (w(f)) {\n                            if (a = t.line, s = t.lineStart, c = t.lineIndent, F(t, !1, -1), t.lineIndent >= e) {\n                                u = !0, f = t.input.charCodeAt(t.position);\n                                continue\n                            }\n                            t.position = o, t.line = a, t.lineStart = s, t.lineIndent = c;\n                            break\n                        }\n                    }\n                    u && (N(t, i, o, !1), B(t, t.line - a), i = o = t.position, u = !1), x(f) || (o = t.position + 1), f = t.input.charCodeAt(++t.position)\n                }\n                return N(t, i, o, !1), !!t.result || (t.kind = l, t.result = p, !1)\n            }(t, b, c === n) && (P = !0, null === t.tag && (t.tag = \"?\")) : (P = !0, null === t.tag && null === t.anchor || C(t, \"alias node should not have any properties\")), null !== t.anchor && (t.anchorMap[t.anchor] = t.result)) : 0 === M && (P = y && q(t, O))), null !== t.tag && \"!\" !== t.tag)\n                if (\"?\" === t.tag) {\n                    for (g = 0, m = t.implicitTypes.length; g < m; g += 1)\n                        if ((_ = t.implicitTypes[g]).resolve(t.result)) {\n                            t.result = _.construct(t.result), t.tag = _.tag, null !== t.anchor && (t.anchorMap[t.anchor] = t.result);\n                            break\n                        }\n                } else s.call(t.typeMap[t.kind || \"fallback\"], t.tag) ? (_ = t.typeMap[t.kind || \"fallback\"][t.tag], null !== t.result && _.kind !== t.kind && C(t, \"unacceptable node kind for !<\" + t.tag + '> tag; it should be \"' + _.kind + '\", not \"' + t.kind + '\"'), _.resolve(t.result) ? (t.result = _.construct(t.result), null !== t.anchor && (t.anchorMap[t.anchor] = t.result)) : C(t, \"cannot resolve a node with !<\" + t.tag + \"> explicit tag\")) : C(t, \"unknown tag !<\" + t.tag + \">\");\n            return null !== t.listener && t.listener(\"close\", t), null !== t.tag || null !== t.anchor || P\n        }\n\n        function K(t) {\n            var e, n, r, i, o = t.position,\n                u = !1;\n            for (t.version = null, t.checkLineBreaks = t.legacy, t.tagMap = {}, t.anchorMap = {}; 0 !== (i = t.input.charCodeAt(t.position)) && (F(t, !0, -1), i = t.input.charCodeAt(t.position), !(t.lineIndent > 0 || 37 !== i));) {\n                for (u = !0, i = t.input.charCodeAt(++t.position), e = t.position; 0 !== i && !S(i);) i = t.input.charCodeAt(++t.position);\n                for (r = [], (n = t.input.slice(e, t.position)).length < 1 && C(t, \"directive name must not be less than one character in length\"); 0 !== i;) {\n                    for (; x(i);) i = t.input.charCodeAt(++t.position);\n                    if (35 === i) {\n                        do {\n                            i = t.input.charCodeAt(++t.position)\n                        } while (0 !== i && !w(i));\n                        break\n                    }\n                    if (w(i)) break;\n                    for (e = t.position; 0 !== i && !S(i);) i = t.input.charCodeAt(++t.position);\n                    r.push(t.input.slice(e, t.position))\n                }\n                0 !== i && z(t), s.call(R, n) ? R[n](t, n, r) : P(t, 'unknown document directive \"' + n + '\"')\n            }\n            F(t, !0, -1), 0 === t.lineIndent && 45 === t.input.charCodeAt(t.position) && 45 === t.input.charCodeAt(t.position + 1) && 45 === t.input.charCodeAt(t.position + 2) ? (t.position += 3, F(t, !0, -1)) : u && C(t, \"directives end mark is expected\"), V(t, t.lineIndent - 1, p, !1, !0), F(t, !0, -1), t.checkLineBreaks && g.test(t.input.slice(o, t.position)) && P(t, \"non-ASCII line breaks are interpreted as content\"), t.documents.push(t.result), t.position === t.lineStart && U(t) ? 46 === t.input.charCodeAt(t.position) && (t.position += 3, F(t, !0, -1)) : t.position < t.length - 1 && C(t, \"end of the stream or a document separator is expected\")\n        }\n\n        function G(t, e) {\n            t = String(t), e = e || {}, 0 !== t.length && (10 !== t.charCodeAt(t.length - 1) && 13 !== t.charCodeAt(t.length - 1) && (t += \"\\n\"), 65279 === t.charCodeAt(0) && (t = t.slice(1)));\n            var n = new function(t, e) {\n                this.input = t, this.filename = e.filename || null, this.schema = e.schema || a, this.onWarning = e.onWarning || null, this.legacy = e.legacy || !1, this.json = e.json || !1, this.listener = e.listener || null, this.implicitTypes = this.schema.compiledImplicit, this.typeMap = this.schema.compiledTypeMap, this.length = t.length, this.position = 0, this.line = 0, this.lineStart = 0, this.lineIndent = 0, this.documents = []\n            }(t, e);\n            for (n.input += \"\\0\"; 32 === n.input.charCodeAt(n.position);) n.lineIndent += 1, n.position += 1;\n            for (; n.position < n.length - 1;) K(n);\n            return n.documents\n        }\n\n        function $(t, e, n) {\n            var r, i, o = G(t, n);\n            if (\"function\" != typeof e) return o;\n            for (r = 0, i = o.length; r < i; r += 1) e(o[r])\n        }\n\n        function H(t, e) {\n            var n = G(t, e);\n            if (0 !== n.length) {\n                if (1 === n.length) return n[0];\n                throw new i(\"expected a single document in the stream, but found more\")\n            }\n        }\n        t.exports.loadAll = $, t.exports.load = H, t.exports.safeLoadAll = function(t, e, n) {\n            if (\"function\" != typeof e) return $(t, r.extend({\n                schema: u\n            }, n));\n            $(t, e, r.extend({\n                schema: u\n            }, n))\n        }, t.exports.safeLoad = function(t, e) {\n            return H(t, r.extend({\n                schema: u\n            }, e))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(37);\n\n        function i(t, e, n, r, i) {\n            this.name = t, this.buffer = e, this.position = n, this.line = r, this.column = i\n        }\n        i.prototype.getSnippet = function(t, e) {\n            var n, i, o, u, a;\n            if (!this.buffer) return null;\n            for (t = t || 4, e = e || 75, n = \"\", i = this.position; i > 0 && -1 === \"\\0\\r\\n\\u2028\\u2029\".indexOf(this.buffer.charAt(i - 1));)\n                if (i -= 1, this.position - i > e / 2 - 1) {\n                    n = \" ... \", i += 5;\n                    break\n                }\n            for (o = \"\", u = this.position; u < this.buffer.length && -1 === \"\\0\\r\\n\\u2028\\u2029\".indexOf(this.buffer.charAt(u));)\n                if ((u += 1) - this.position > e / 2 - 1) {\n                    o = \" ... \", u -= 5;\n                    break\n                }\n            return a = this.buffer.slice(i, u), r.repeat(\" \", t) + n + a + o + \"\\n\" + r.repeat(\" \", t + this.position - i + n.length) + \"^\"\n        }, i.prototype.toString = function(t) {\n            var e, n = \"\";\n            return this.name && (n += 'in \"' + this.name + '\" '), n += \"at line \" + (this.line + 1) + \", column \" + (this.column + 1), t || (e = this.getSnippet()) && (n += \":\\n\" + e), n\n        }, t.exports = i\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:str\", {\n            kind: \"scalar\",\n            construct: function(t) {\n                return null !== t ? t : \"\"\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:seq\", {\n            kind: \"sequence\",\n            construct: function(t) {\n                return null !== t ? t : []\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:map\", {\n            kind: \"mapping\",\n            construct: function(t) {\n                return null !== t ? t : {}\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:null\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                if (null === t) return !0;\n                var e = t.length;\n                return 1 === e && \"~\" === t || 4 === e && (\"null\" === t || \"Null\" === t || \"NULL\" === t)\n            },\n            construct: function() {\n                return null\n            },\n            predicate: function(t) {\n                return null === t\n            },\n            represent: {\n                canonical: function() {\n                    return \"~\"\n                },\n                lowercase: function() {\n                    return \"null\"\n                },\n                uppercase: function() {\n                    return \"NULL\"\n                },\n                camelcase: function() {\n                    return \"Null\"\n                }\n            },\n            defaultStyle: \"lowercase\"\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:bool\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                if (null === t) return !1;\n                var e = t.length;\n                return 4 === e && (\"true\" === t || \"True\" === t || \"TRUE\" === t) || 5 === e && (\"false\" === t || \"False\" === t || \"FALSE\" === t)\n            },\n            construct: function(t) {\n                return \"true\" === t || \"True\" === t || \"TRUE\" === t\n            },\n            predicate: function(t) {\n                return \"[object Boolean]\" === Object.prototype.toString.call(t)\n            },\n            represent: {\n                lowercase: function(t) {\n                    return t ? \"true\" : \"false\"\n                },\n                uppercase: function(t) {\n                    return t ? \"TRUE\" : \"FALSE\"\n                },\n                camelcase: function(t) {\n                    return t ? \"True\" : \"False\"\n                }\n            },\n            defaultStyle: \"lowercase\"\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(37),\n            i = n(0);\n\n        function o(t) {\n            return 48 <= t && t <= 55\n        }\n\n        function u(t) {\n            return 48 <= t && t <= 57\n        }\n        t.exports = new i(\"tag:yaml.org,2002:int\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                if (null === t) return !1;\n                var e, n, r = t.length,\n                    i = 0,\n                    a = !1;\n                if (!r) return !1;\n                if (\"-\" !== (e = t[i]) && \"+\" !== e || (e = t[++i]), \"0\" === e) {\n                    if (i + 1 === r) return !0;\n                    if (\"b\" === (e = t[++i])) {\n                        for (i++; i < r; i++)\n                            if (\"_\" !== (e = t[i])) {\n                                if (\"0\" !== e && \"1\" !== e) return !1;\n                                a = !0\n                            }\n                        return a && \"_\" !== e\n                    }\n                    if (\"x\" === e) {\n                        for (i++; i < r; i++)\n                            if (\"_\" !== (e = t[i])) {\n                                if (!(48 <= (n = t.charCodeAt(i)) && n <= 57 || 65 <= n && n <= 70 || 97 <= n && n <= 102)) return !1;\n                                a = !0\n                            }\n                        return a && \"_\" !== e\n                    }\n                    for (; i < r; i++)\n                        if (\"_\" !== (e = t[i])) {\n                            if (!o(t.charCodeAt(i))) return !1;\n                            a = !0\n                        }\n                    return a && \"_\" !== e\n                }\n                if (\"_\" === e) return !1;\n                for (; i < r; i++)\n                    if (\"_\" !== (e = t[i])) {\n                        if (\":\" === e) break;\n                        if (!u(t.charCodeAt(i))) return !1;\n                        a = !0\n                    }\n                return !(!a || \"_\" === e) && (\":\" !== e || /^(:[0-5]?[0-9])+$/.test(t.slice(i)))\n            },\n            construct: function(t) {\n                var e, n, r = t,\n                    i = 1,\n                    o = [];\n                return -1 !== r.indexOf(\"_\") && (r = r.replace(/_/g, \"\")), \"-\" !== (e = r[0]) && \"+\" !== e || (\"-\" === e && (i = -1), e = (r = r.slice(1))[0]), \"0\" === r ? 0 : \"0\" === e ? \"b\" === r[1] ? i * parseInt(r.slice(2), 2) : \"x\" === r[1] ? i * parseInt(r, 16) : i * parseInt(r, 8) : -1 !== r.indexOf(\":\") ? (r.split(\":\").forEach(function(t) {\n                    o.unshift(parseInt(t, 10))\n                }), r = 0, n = 1, o.forEach(function(t) {\n                    r += t * n, n *= 60\n                }), i * r) : i * parseInt(r, 10)\n            },\n            predicate: function(t) {\n                return \"[object Number]\" === Object.prototype.toString.call(t) && t % 1 == 0 && !r.isNegativeZero(t)\n            },\n            represent: {\n                binary: function(t) {\n                    return t >= 0 ? \"0b\" + t.toString(2) : \"-0b\" + t.toString(2).slice(1)\n                },\n                octal: function(t) {\n                    return t >= 0 ? \"0\" + t.toString(8) : \"-0\" + t.toString(8).slice(1)\n                },\n                decimal: function(t) {\n                    return t.toString(10)\n                },\n                hexadecimal: function(t) {\n                    return t >= 0 ? \"0x\" + t.toString(16).toUpperCase() : \"-0x\" + t.toString(16).toUpperCase().slice(1)\n                }\n            },\n            defaultStyle: \"decimal\",\n            styleAliases: {\n                binary: [2, \"bin\"],\n                octal: [8, \"oct\"],\n                decimal: [10, \"dec\"],\n                hexadecimal: [16, \"hex\"]\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(37),\n            i = n(0),\n            o = new RegExp(\"^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))$\");\n        var u = /^[-+]?[0-9]+e/;\n        t.exports = new i(\"tag:yaml.org,2002:float\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                return null !== t && !(!o.test(t) || \"_\" === t[t.length - 1])\n            },\n            construct: function(t) {\n                var e, n, r, i;\n                return n = \"-\" === (e = t.replace(/_/g, \"\").toLowerCase())[0] ? -1 : 1, i = [], \"+-\".indexOf(e[0]) >= 0 && (e = e.slice(1)), \".inf\" === e ? 1 === n ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY : \".nan\" === e ? NaN : e.indexOf(\":\") >= 0 ? (e.split(\":\").forEach(function(t) {\n                    i.unshift(parseFloat(t, 10))\n                }), e = 0, r = 1, i.forEach(function(t) {\n                    e += t * r, r *= 60\n                }), n * e) : n * parseFloat(e, 10)\n            },\n            predicate: function(t) {\n                return \"[object Number]\" === Object.prototype.toString.call(t) && (t % 1 != 0 || r.isNegativeZero(t))\n            },\n            represent: function(t, e) {\n                var n;\n                if (isNaN(t)) switch (e) {\n                    case \"lowercase\":\n                        return \".nan\";\n                    case \"uppercase\":\n                        return \".NAN\";\n                    case \"camelcase\":\n                        return \".NaN\"\n                } else if (Number.POSITIVE_INFINITY === t) switch (e) {\n                    case \"lowercase\":\n                        return \".inf\";\n                    case \"uppercase\":\n                        return \".INF\";\n                    case \"camelcase\":\n                        return \".Inf\"\n                } else if (Number.NEGATIVE_INFINITY === t) switch (e) {\n                    case \"lowercase\":\n                        return \"-.inf\";\n                    case \"uppercase\":\n                        return \"-.INF\";\n                    case \"camelcase\":\n                        return \"-.Inf\"\n                } else if (r.isNegativeZero(t)) return \"-0.0\";\n                return n = t.toString(10), u.test(n) ? n.replace(\"e\", \".e\") : n\n            },\n            defaultStyle: \"lowercase\"\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0),\n            i = new RegExp(\"^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$\"),\n            o = new RegExp(\"^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\\\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\\\.([0-9]*))?(?:[ \\\\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$\");\n        t.exports = new r(\"tag:yaml.org,2002:timestamp\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                return null !== t && (null !== i.exec(t) || null !== o.exec(t))\n            },\n            construct: function(t) {\n                var e, n, r, u, a, s, c, f, l = 0,\n                    p = null;\n                if (null === (e = i.exec(t)) && (e = o.exec(t)), null === e) throw new Error(\"Date resolve error\");\n                if (n = +e[1], r = +e[2] - 1, u = +e[3], !e[4]) return new Date(Date.UTC(n, r, u));\n                if (a = +e[4], s = +e[5], c = +e[6], e[7]) {\n                    for (l = e[7].slice(0, 3); l.length < 3;) l += \"0\";\n                    l = +l\n                }\n                return e[9] && (p = 6e4 * (60 * +e[10] + +(e[11] || 0)), \"-\" === e[9] && (p = -p)), f = new Date(Date.UTC(n, r, u, a, s, c, l)), p && f.setTime(f.getTime() - p), f\n            },\n            instanceOf: Date,\n            represent: function(t) {\n                return t.toISOString()\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:merge\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                return \"<<\" === t || null === t\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r;\n        try {\n            r = n(68).Buffer\n        } catch (t) {}\n        var i = n(0),\n            o = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\\n\\r\";\n        t.exports = new i(\"tag:yaml.org,2002:binary\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                if (null === t) return !1;\n                var e, n, r = 0,\n                    i = t.length,\n                    u = o;\n                for (n = 0; n < i; n++)\n                    if (!((e = u.indexOf(t.charAt(n))) > 64)) {\n                        if (e < 0) return !1;\n                        r += 6\n                    }\n                return r % 8 == 0\n            },\n            construct: function(t) {\n                var e, n, i = t.replace(/[\\r\\n=]/g, \"\"),\n                    u = i.length,\n                    a = o,\n                    s = 0,\n                    c = [];\n                for (e = 0; e < u; e++) e % 4 == 0 && e && (c.push(s >> 16 & 255), c.push(s >> 8 & 255), c.push(255 & s)), s = s << 6 | a.indexOf(i.charAt(e));\n                return 0 == (n = u % 4 * 6) ? (c.push(s >> 16 & 255), c.push(s >> 8 & 255), c.push(255 & s)) : 18 === n ? (c.push(s >> 10 & 255), c.push(s >> 2 & 255)) : 12 === n && c.push(s >> 4 & 255), r ? r.from ? r.from(c) : new r(c) : c\n            },\n            predicate: function(t) {\n                return r && r.isBuffer(t)\n            },\n            represent: function(t) {\n                var e, n, r = \"\",\n                    i = 0,\n                    u = t.length,\n                    a = o;\n                for (e = 0; e < u; e++) e % 3 == 0 && e && (r += a[i >> 18 & 63], r += a[i >> 12 & 63], r += a[i >> 6 & 63], r += a[63 & i]), i = (i << 8) + t[e];\n                return 0 == (n = u % 3) ? (r += a[i >> 18 & 63], r += a[i >> 12 & 63], r += a[i >> 6 & 63], r += a[63 & i]) : 2 === n ? (r += a[i >> 10 & 63], r += a[i >> 4 & 63], r += a[i << 2 & 63], r += a[64]) : 1 === n && (r += a[i >> 2 & 63], r += a[i << 4 & 63], r += a[64], r += a[64]), r\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0),\n            i = Object.prototype.hasOwnProperty,\n            o = Object.prototype.toString;\n        t.exports = new r(\"tag:yaml.org,2002:omap\", {\n            kind: \"sequence\",\n            resolve: function(t) {\n                if (null === t) return !0;\n                var e, n, r, u, a, s = [],\n                    c = t;\n                for (e = 0, n = c.length; e < n; e += 1) {\n                    if (r = c[e], a = !1, \"[object Object]\" !== o.call(r)) return !1;\n                    for (u in r)\n                        if (i.call(r, u)) {\n                            if (a) return !1;\n                            a = !0\n                        }\n                    if (!a) return !1;\n                    if (-1 !== s.indexOf(u)) return !1;\n                    s.push(u)\n                }\n                return !0\n            },\n            construct: function(t) {\n                return null !== t ? t : []\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0),\n            i = Object.prototype.toString;\n        t.exports = new r(\"tag:yaml.org,2002:pairs\", {\n            kind: \"sequence\",\n            resolve: function(t) {\n                if (null === t) return !0;\n                var e, n, r, o, u, a = t;\n                for (u = new Array(a.length), e = 0, n = a.length; e < n; e += 1) {\n                    if (r = a[e], \"[object Object]\" !== i.call(r)) return !1;\n                    if (1 !== (o = Object.keys(r)).length) return !1;\n                    u[e] = [o[0], r[o[0]]]\n                }\n                return !0\n            },\n            construct: function(t) {\n                if (null === t) return [];\n                var e, n, r, i, o, u = t;\n                for (o = new Array(u.length), e = 0, n = u.length; e < n; e += 1) r = u[e], i = Object.keys(r), o[e] = [i[0], r[i[0]]];\n                return o\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0),\n            i = Object.prototype.hasOwnProperty;\n        t.exports = new r(\"tag:yaml.org,2002:set\", {\n            kind: \"mapping\",\n            resolve: function(t) {\n                if (null === t) return !0;\n                var e, n = t;\n                for (e in n)\n                    if (i.call(n, e) && null !== n[e]) return !1;\n                return !0\n            },\n            construct: function(t) {\n                return null !== t ? t : {}\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:js/undefined\", {\n            kind: \"scalar\",\n            resolve: function() {\n                return !0\n            },\n            construct: function() {},\n            predicate: function(t) {\n                return void 0 === t\n            },\n            represent: function() {\n                return \"\"\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(0);\n        t.exports = new r(\"tag:yaml.org,2002:js/regexp\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                if (null === t) return !1;\n                if (0 === t.length) return !1;\n                var e = t,\n                    n = /\\/([gim]*)$/.exec(t),\n                    r = \"\";\n                if (\"/\" === e[0]) {\n                    if (n && (r = n[1]), r.length > 3) return !1;\n                    if (\"/\" !== e[e.length - r.length - 1]) return !1\n                }\n                return !0\n            },\n            construct: function(t) {\n                var e = t,\n                    n = /\\/([gim]*)$/.exec(t),\n                    r = \"\";\n                return \"/\" === e[0] && (n && (r = n[1]), e = e.slice(1, e.length - r.length - 1)), new RegExp(e, r)\n            },\n            predicate: function(t) {\n                return \"[object RegExp]\" === Object.prototype.toString.call(t)\n            },\n            represent: function(t) {\n                var e = \"/\" + t.source + \"/\";\n                return t.global && (e += \"g\"), t.multiline && (e += \"m\"), t.ignoreCase && (e += \"i\"), e\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r;\n        \"undefined\" != typeof window && (r = window.esprima);\n        var i = n(0);\n        t.exports = new i(\"tag:yaml.org,2002:js/function\", {\n            kind: \"scalar\",\n            resolve: function(t) {\n                if (null === t) return !1;\n                try {\n                    var e = \"(\" + t + \")\",\n                        n = r.parse(e, {\n                            range: !0\n                        });\n                    return \"Program\" === n.type && 1 === n.body.length && \"ExpressionStatement\" === n.body[0].type && (\"ArrowFunctionExpression\" === n.body[0].expression.type || \"FunctionExpression\" === n.body[0].expression.type)\n                } catch (t) {\n                    return !1\n                }\n            },\n            construct: function(t) {\n                var e, n = \"(\" + t + \")\",\n                    i = r.parse(n, {\n                        range: !0\n                    }),\n                    o = [];\n                if (\"Program\" !== i.type || 1 !== i.body.length || \"ExpressionStatement\" !== i.body[0].type || \"ArrowFunctionExpression\" !== i.body[0].expression.type && \"FunctionExpression\" !== i.body[0].expression.type) throw new Error(\"Failed to resolve function\");\n                return i.body[0].expression.params.forEach(function(t) {\n                    o.push(t.name)\n                }), e = i.body[0].expression.body.range, \"BlockStatement\" === i.body[0].expression.body.type ? new Function(o, n.slice(e[0] + 1, e[1] - 1)) : new Function(o, \"return \" + n.slice(e[0], e[1]))\n            },\n            predicate: function(t) {\n                return \"[object Function]\" === Object.prototype.toString.call(t)\n            },\n            represent: function(t) {\n                return t.toString()\n            }\n        })\n    }, function(t, e, n) {\n        \"use strict\";\n        var r = n(37),\n            i = n(52),\n            o = n(83),\n            u = n(53),\n            a = Object.prototype.toString,\n            s = Object.prototype.hasOwnProperty,\n            c = 9,\n            f = 10,\n            l = 32,\n            p = 33,\n            h = 34,\n            d = 35,\n            v = 37,\n            y = 38,\n            g = 39,\n            m = 42,\n            _ = 44,\n            b = 45,\n            w = 58,\n            x = 62,\n            S = 63,\n            E = 64,\n            A = 91,\n            O = 93,\n            j = 96,\n            k = 123,\n            I = 124,\n            M = 125,\n            T = {\n                0: \"\\\\0\",\n                7: \"\\\\a\",\n                8: \"\\\\b\",\n                9: \"\\\\t\",\n                10: \"\\\\n\",\n                11: \"\\\\v\",\n                12: \"\\\\f\",\n                13: \"\\\\r\",\n                27: \"\\\\e\",\n                34: '\\\\\"',\n                92: \"\\\\\\\\\",\n                133: \"\\\\N\",\n                160: \"\\\\_\",\n                8232: \"\\\\L\",\n                8233: \"\\\\P\"\n            },\n            C = [\"y\", \"Y\", \"yes\", \"Yes\", \"YES\", \"on\", \"On\", \"ON\", \"n\", \"N\", \"no\", \"No\", \"NO\", \"off\", \"Off\", \"OFF\"];\n\n        function P(t) {\n            var e, n, o;\n            if (e = t.toString(16).toUpperCase(), t <= 255) n = \"x\", o = 2;\n            else if (t <= 65535) n = \"u\", o = 4;\n            else {\n                if (!(t <= 4294967295)) throw new i(\"code point within a string may not be greater than 0xFFFFFFFF\");\n                n = \"U\", o = 8\n            }\n            return \"\\\\\" + n + r.repeat(\"0\", o - e.length) + e\n        }\n\n        function R(t) {\n            this.schema = t.schema || o, this.indent = Math.max(1, t.indent || 2), this.skipInvalid = t.skipInvalid || !1, this.flowLevel = r.isNothing(t.flowLevel) ? -1 : t.flowLevel, this.styleMap = function(t, e) {\n                var n, r, i, o, u, a, c;\n                if (null === e) return {};\n                for (n = {}, i = 0, o = (r = Object.keys(e)).length; i < o; i += 1) u = r[i], a = String(e[u]), \"!!\" === u.slice(0, 2) && (u = \"tag:yaml.org,2002:\" + u.slice(2)), (c = t.compiledTypeMap.fallback[u]) && s.call(c.styleAliases, a) && (a = c.styleAliases[a]), n[u] = a;\n                return n\n            }(this.schema, t.styles || null), this.sortKeys = t.sortKeys || !1, this.lineWidth = t.lineWidth || 80, this.noRefs = t.noRefs || !1, this.noCompatMode = t.noCompatMode || !1, this.condenseFlow = t.condenseFlow || !1, this.implicitTypes = this.schema.compiledImplicit, this.explicitTypes = this.schema.compiledExplicit, this.tag = null, this.result = \"\", this.duplicates = [], this.usedDuplicates = null\n        }\n\n        function N(t, e) {\n            for (var n, i = r.repeat(\" \", e), o = 0, u = -1, a = \"\", s = t.length; o < s;) - 1 === (u = t.indexOf(\"\\n\", o)) ? (n = t.slice(o), o = s) : (n = t.slice(o, u + 1), o = u + 1), n.length && \"\\n\" !== n && (a += i), a += n;\n            return a\n        }\n\n        function L(t, e) {\n            return \"\\n\" + r.repeat(\" \", t.indent * e)\n        }\n\n        function D(t) {\n            return t === l || t === c\n        }\n\n        function z(t) {\n            return 32 <= t && t <= 126 || 161 <= t && t <= 55295 && 8232 !== t && 8233 !== t || 57344 <= t && t <= 65533 && 65279 !== t || 65536 <= t && t <= 1114111\n        }\n\n        function F(t) {\n            return z(t) && 65279 !== t && t !== _ && t !== A && t !== O && t !== k && t !== M && t !== w && t !== d\n        }\n\n        function U(t) {\n            return /^\\n* /.test(t)\n        }\n        var B = 1,\n            q = 2,\n            Y = 3,\n            W = 4,\n            V = 5;\n\n        function K(t, e, n, r, i) {\n            var o, u, a, s = !1,\n                c = !1,\n                l = -1 !== r,\n                T = -1,\n                C = z(a = t.charCodeAt(0)) && 65279 !== a && !D(a) && a !== b && a !== S && a !== w && a !== _ && a !== A && a !== O && a !== k && a !== M && a !== d && a !== y && a !== m && a !== p && a !== I && a !== x && a !== g && a !== h && a !== v && a !== E && a !== j && !D(t.charCodeAt(t.length - 1));\n            if (e)\n                for (o = 0; o < t.length; o++) {\n                    if (!z(u = t.charCodeAt(o))) return V;\n                    C = C && F(u)\n                } else {\n                for (o = 0; o < t.length; o++) {\n                    if ((u = t.charCodeAt(o)) === f) s = !0, l && (c = c || o - T - 1 > r && \" \" !== t[T + 1], T = o);\n                    else if (!z(u)) return V;\n                    C = C && F(u)\n                }\n                c = c || l && o - T - 1 > r && \" \" !== t[T + 1]\n            }\n            return s || c ? n > 9 && U(t) ? V : c ? W : Y : C && !i(t) ? B : q\n        }\n\n        function G(t, e, n, r) {\n            t.dump = function() {\n                if (0 === e.length) return \"''\";\n                if (!t.noCompatMode && -1 !== C.indexOf(e)) return \"'\" + e + \"'\";\n                var o = t.indent * Math.max(1, n),\n                    u = -1 === t.lineWidth ? -1 : Math.max(Math.min(t.lineWidth, 40), t.lineWidth - o),\n                    a = r || t.flowLevel > -1 && n >= t.flowLevel;\n                switch (K(e, a, t.indent, u, function(e) {\n                    return function(t, e) {\n                        var n, r;\n                        for (n = 0, r = t.implicitTypes.length; n < r; n += 1)\n                            if (t.implicitTypes[n].resolve(e)) return !0;\n                        return !1\n                    }(t, e)\n                })) {\n                    case B:\n                        return e;\n                    case q:\n                        return \"'\" + e.replace(/'/g, \"''\") + \"'\";\n                    case Y:\n                        return \"|\" + $(e, t.indent) + H(N(e, o));\n                    case W:\n                        return \">\" + $(e, t.indent) + H(N(function(t, e) {\n                            var n, r, i = /(\\n+)([^\\n]*)/g,\n                                o = (a = t.indexOf(\"\\n\"), a = -1 !== a ? a : t.length, i.lastIndex = a, J(t.slice(0, a), e)),\n                                u = \"\\n\" === t[0] || \" \" === t[0];\n                            var a;\n                            for (; r = i.exec(t);) {\n                                var s = r[1],\n                                    c = r[2];\n                                n = \" \" === c[0], o += s + (u || n || \"\" === c ? \"\" : \"\\n\") + J(c, e), u = n\n                            }\n                            return o\n                        }(e, u), o));\n                    case V:\n                        return '\"' + function(t) {\n                            for (var e, n, r, i = \"\", o = 0; o < t.length; o++)(e = t.charCodeAt(o)) >= 55296 && e <= 56319 && (n = t.charCodeAt(o + 1)) >= 56320 && n <= 57343 ? (i += P(1024 * (e - 55296) + n - 56320 + 65536), o++) : (r = T[e], i += !r && z(e) ? t[o] : r || P(e));\n                            return i\n                        }(e) + '\"';\n                    default:\n                        throw new i(\"impossible error: invalid scalar style\")\n                }\n            }()\n        }\n\n        function $(t, e) {\n            var n = U(t) ? String(e) : \"\",\n                r = \"\\n\" === t[t.length - 1];\n            return n + (r && (\"\\n\" === t[t.length - 2] || \"\\n\" === t) ? \"+\" : r ? \"\" : \"-\") + \"\\n\"\n        }\n\n        function H(t) {\n            return \"\\n\" === t[t.length - 1] ? t.slice(0, -1) : t\n        }\n\n        function J(t, e) {\n            if (\"\" === t || \" \" === t[0]) return t;\n            for (var n, r, i = / [^ ]/g, o = 0, u = 0, a = 0, s = \"\"; n = i.exec(t);)(a = n.index) - o > e && (r = u > o ? u : a, s += \"\\n\" + t.slice(o, r), o = r + 1), u = a;\n            return s += \"\\n\", t.length - o > e && u > o ? s += t.slice(o, u) + \"\\n\" + t.slice(u + 1) : s += t.slice(o), s.slice(1)\n        }\n\n        function Z(t, e, n) {\n            var r, o, u, c, f, l;\n            for (u = 0, c = (o = n ? t.explicitTypes : t.implicitTypes).length; u < c; u += 1)\n                if (((f = o[u]).instanceOf || f.predicate) && (!f.instanceOf || \"object\" == typeof e && e instanceof f.instanceOf) && (!f.predicate || f.predicate(e))) {\n                    if (t.tag = n ? f.tag : \"?\", f.represent) {\n                        if (l = t.styleMap[f.tag] || f.defaultStyle, \"[object Function]\" === a.call(f.represent)) r = f.represent(e, l);\n                        else {\n                            if (!s.call(f.represent, l)) throw new i(\"!<\" + f.tag + '> tag resolver accepts not \"' + l + '\" style');\n                            r = f.represent[l](e, l)\n                        }\n                        t.dump = r\n                    }\n                    return !0\n                }\n            return !1\n        }\n\n        function X(t, e, n, r, o, u) {\n            t.tag = null, t.dump = n, Z(t, n, !1) || Z(t, n, !0);\n            var s = a.call(t.dump);\n            r && (r = t.flowLevel < 0 || t.flowLevel > e);\n            var c, l, p = \"[object Object]\" === s || \"[object Array]\" === s;\n            if (p && (l = -1 !== (c = t.duplicates.indexOf(n))), (null !== t.tag && \"?\" !== t.tag || l || 2 !== t.indent && e > 0) && (o = !1), l && t.usedDuplicates[c]) t.dump = \"*ref_\" + c;\n            else {\n                if (p && l && !t.usedDuplicates[c] && (t.usedDuplicates[c] = !0), \"[object Object]\" === s) r && 0 !== Object.keys(t.dump).length ? (! function(t, e, n, r) {\n                    var o, u, a, s, c, l, p = \"\",\n                        h = t.tag,\n                        d = Object.keys(n);\n                    if (!0 === t.sortKeys) d.sort();\n                    else if (\"function\" == typeof t.sortKeys) d.sort(t.sortKeys);\n                    else if (t.sortKeys) throw new i(\"sortKeys must be a boolean or a function\");\n                    for (o = 0, u = d.length; o < u; o += 1) l = \"\", r && 0 === o || (l += L(t, e)), s = n[a = d[o]], X(t, e + 1, a, !0, !0, !0) && ((c = null !== t.tag && \"?\" !== t.tag || t.dump && t.dump.length > 1024) && (t.dump && f === t.dump.charCodeAt(0) ? l += \"?\" : l += \"? \"), l += t.dump, c && (l += L(t, e)), X(t, e + 1, s, !0, c) && (t.dump && f === t.dump.charCodeAt(0) ? l += \":\" : l += \": \", p += l += t.dump));\n                    t.tag = h, t.dump = p || \"{}\"\n                }(t, e, t.dump, o), l && (t.dump = \"&ref_\" + c + t.dump)) : (! function(t, e, n) {\n                    var r, i, o, u, a, s = \"\",\n                        c = t.tag,\n                        f = Object.keys(n);\n                    for (r = 0, i = f.length; r < i; r += 1) a = t.condenseFlow ? '\"' : \"\", 0 !== r && (a += \", \"), u = n[o = f[r]], X(t, e, o, !1, !1) && (t.dump.length > 1024 && (a += \"? \"), a += t.dump + (t.condenseFlow ? '\"' : \"\") + \":\" + (t.condenseFlow ? \"\" : \" \"), X(t, e, u, !1, !1) && (s += a += t.dump));\n                    t.tag = c, t.dump = \"{\" + s + \"}\"\n                }(t, e, t.dump), l && (t.dump = \"&ref_\" + c + \" \" + t.dump));\n                else if (\"[object Array]\" === s) r && 0 !== t.dump.length ? (! function(t, e, n, r) {\n                    var i, o, u = \"\",\n                        a = t.tag;\n                    for (i = 0, o = n.length; i < o; i += 1) X(t, e + 1, n[i], !0, !0) && (r && 0 === i || (u += L(t, e)), t.dump && f === t.dump.charCodeAt(0) ? u += \"-\" : u += \"- \", u += t.dump);\n                    t.tag = a, t.dump = u || \"[]\"\n                }(t, e, t.dump, o), l && (t.dump = \"&ref_\" + c + t.dump)) : (! function(t, e, n) {\n                    var r, i, o = \"\",\n                        u = t.tag;\n                    for (r = 0, i = n.length; r < i; r += 1) X(t, e, n[r], !1, !1) && (0 !== r && (o += \",\" + (t.condenseFlow ? \"\" : \" \")), o += t.dump);\n                    t.tag = u, t.dump = \"[\" + o + \"]\"\n                }(t, e, t.dump), l && (t.dump = \"&ref_\" + c + \" \" + t.dump));\n                else {\n                    if (\"[object String]\" !== s) {\n                        if (t.skipInvalid) return !1;\n                        throw new i(\"unacceptable kind of an object to dump \" + s)\n                    }\n                    \"?\" !== t.tag && G(t, t.dump, e, u)\n                }\n                null !== t.tag && \"?\" !== t.tag && (t.dump = \"!<\" + t.tag + \"> \" + t.dump)\n            }\n            return !0\n        }\n\n        function Q(t, e) {\n            var n, r, i = [],\n                o = [];\n            for (function t(e, n, r) {\n                var i, o, u;\n                if (null !== e && \"object\" == typeof e)\n                    if (-1 !== (o = n.indexOf(e))) - 1 === r.indexOf(o) && r.push(o);\n                    else if (n.push(e), Array.isArray(e))\n                        for (o = 0, u = e.length; o < u; o += 1) t(e[o], n, r);\n                    else\n                        for (i = Object.keys(e), o = 0, u = i.length; o < u; o += 1) t(e[i[o]], n, r)\n            }(t, i, o), n = 0, r = o.length; n < r; n += 1) e.duplicates.push(i[o[n]]);\n            e.usedDuplicates = new Array(r)\n        }\n\n        function tt(t, e) {\n            var n = new R(e = e || {});\n            return n.noRefs || Q(t, n), X(n, 0, t, !0, !0) ? n.dump + \"\\n\" : \"\"\n        }\n        t.exports.dump = tt, t.exports.safeDump = function(t, e) {\n            return tt(t, r.extend({\n                schema: u\n            }, e))\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        }), e.getConfigByUrl = e.downloadConfig = void 0;\n        var r = n(201);\n        e.downloadConfig = function(t) {\n            return function(e) {\n                return (0, e.fn.fetch)(t)\n            }\n        }, e.getConfigByUrl = function(t, e) {\n            return function(n) {\n                var i = n.specActions;\n                if (t) return i.downloadConfig(t).then(o, o);\n\n                function o(n) {\n                    n instanceof Error || n.status >= 400 ? (i.updateLoadingStatus(\"failedConfig\"), i.updateLoadingStatus(\"failedConfig\"), i.updateUrl(\"\"), console.error(n.statusText + \" \" + t.url), e(null)) : e((0, r.parseYamlConfig)(n.text))\n                }\n            }\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        });\n        e.get = function(t, e) {\n            return t.getIn(Array.isArray(e) ? e : [e])\n        }\n    }, function(t, e, n) {\n        \"use strict\";\n        Object.defineProperty(e, \"__esModule\", {\n            value: !0\n        });\n        var r, i, o = n(205),\n            u = (r = o) && r.__esModule ? r : {\n                default: r\n            },\n            a = n(168),\n            s = n(204);\n        e.default = (i = {}, (0, u.default)(i, s.UPDATE_CONFIGS, function(t, e) {\n            return t.merge((0, a.fromJS)(e.payload))\n        }), (0, u.default)(i, s.TOGGLE_CONFIGS, function(t, e) {\n            var n = e.payload,\n                r = t.get(n);\n            return t.set(n, !r)\n        }), i)\n    }])\n});\n//# sourceMappingURL=swagger-ui-standalone-preset.js.map"
  },
  {
    "path": "client/lite/swagger-ui/swagger-ui.css",
    "content": ".swagger-ui{\n  /*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */font-family:sans-serif;color:#3b4151}.swagger-ui html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}.swagger-ui body{margin:0}.swagger-ui article,.swagger-ui aside,.swagger-ui footer,.swagger-ui header,.swagger-ui nav,.swagger-ui section{display:block}.swagger-ui h1{font-size:2em;margin:.67em 0}.swagger-ui figcaption,.swagger-ui figure,.swagger-ui main{display:block}.swagger-ui figure{margin:1em 40px}.swagger-ui hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}.swagger-ui pre{font-family:monospace,monospace;font-size:1em}.swagger-ui a{background-color:transparent;-webkit-text-decoration-skip:objects}.swagger-ui abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.swagger-ui b,.swagger-ui strong{font-weight:inherit;font-weight:bolder}.swagger-ui code,.swagger-ui kbd,.swagger-ui samp{font-family:monospace,monospace;font-size:1em}.swagger-ui dfn{font-style:italic}.swagger-ui mark{background-color:#ff0;color:#000}.swagger-ui small{font-size:80%}.swagger-ui sub,.swagger-ui sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.swagger-ui sub{bottom:-.25em}.swagger-ui sup{top:-.5em}.swagger-ui audio,.swagger-ui video{display:inline-block}.swagger-ui audio:not([controls]){display:none;height:0}.swagger-ui img{border-style:none}.swagger-ui svg:not(:root){overflow:hidden}.swagger-ui button,.swagger-ui input,.swagger-ui optgroup,.swagger-ui select,.swagger-ui textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}.swagger-ui button,.swagger-ui input{overflow:visible}.swagger-ui button,.swagger-ui select{text-transform:none}.swagger-ui [type=reset],.swagger-ui [type=submit],.swagger-ui button,.swagger-ui html [type=button]{-webkit-appearance:button}.swagger-ui [type=button]::-moz-focus-inner,.swagger-ui [type=reset]::-moz-focus-inner,.swagger-ui [type=submit]::-moz-focus-inner,.swagger-ui button::-moz-focus-inner{border-style:none;padding:0}.swagger-ui [type=button]:-moz-focusring,.swagger-ui [type=reset]:-moz-focusring,.swagger-ui [type=submit]:-moz-focusring,.swagger-ui button:-moz-focusring{outline:1px dotted ButtonText}.swagger-ui fieldset{padding:.35em .75em .625em}.swagger-ui legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}.swagger-ui progress{display:inline-block;vertical-align:baseline}.swagger-ui textarea{overflow:auto}.swagger-ui [type=checkbox],.swagger-ui [type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}.swagger-ui [type=number]::-webkit-inner-spin-button,.swagger-ui [type=number]::-webkit-outer-spin-button{height:auto}.swagger-ui [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.swagger-ui [type=search]::-webkit-search-cancel-button,.swagger-ui [type=search]::-webkit-search-decoration{-webkit-appearance:none}.swagger-ui ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.swagger-ui details,.swagger-ui menu{display:block}.swagger-ui summary{display:list-item}.swagger-ui canvas{display:inline-block}.swagger-ui [hidden],.swagger-ui template{display:none}.swagger-ui .debug *{outline:1px solid gold}.swagger-ui .debug-white *{outline:1px solid #fff}.swagger-ui .debug-black *{outline:1px solid #000}.swagger-ui .debug-grid{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTRDOTY4N0U2N0VFMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTRDOTY4N0Q2N0VFMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3NjY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3NzY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsBS+GMAAAAjSURBVHjaYvz//z8DLsD4gcGXiYEAGBIKGBne//fFpwAgwAB98AaF2pjlUQAAAABJRU5ErkJggg==) repeat 0 0}.swagger-ui .debug-grid-16{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODYyRjhERDU2N0YyMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODYyRjhERDQ2N0YyMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3QTY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3QjY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvCS01IAAABMSURBVHjaYmR4/5+BFPBfAMFm/MBgx8RAGWCn1AAmSg34Q6kBDKMGMDCwICeMIemF/5QawEipAWwUhwEjMDvbAWlWkvVBwu8vQIABAEwBCph8U6c0AAAAAElFTkSuQmCC) repeat 0 0}.swagger-ui .debug-grid-8-solid{background:#fff url(data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAAAAD/4QMxaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzExMSA3OS4xNTgzMjUsIDIwMTUvMDkvMTAtMDE6MTA6MjAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE1IChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkIxMjI0OTczNjdCMzExRTZCMkJDRTI0MDgxMDAyMTcxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkIxMjI0OTc0NjdCMzExRTZCMkJDRTI0MDgxMDAyMTcxIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QjEyMjQ5NzE2N0IzMTFFNkIyQkNFMjQwODEwMDIxNzEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QjEyMjQ5NzI2N0IzMTFFNkIyQkNFMjQwODEwMDIxNzEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAbGhopHSlBJiZBQi8vL0JHPz4+P0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHAR0pKTQmND8oKD9HPzU/R0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0f/wAARCAAIAAgDASIAAhEBAxEB/8QAWQABAQAAAAAAAAAAAAAAAAAAAAYBAQEAAAAAAAAAAAAAAAAAAAIEEAEBAAMBAAAAAAAAAAAAAAABADECA0ERAAEDBQAAAAAAAAAAAAAAAAARITFBUWESIv/aAAwDAQACEQMRAD8AoOnTV1QTD7JJshP3vSM3P//Z) repeat 0 0}.swagger-ui .debug-grid-16-solid{background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzY3MkJEN0U2N0M1MTFFNkIyQkNFMjQwODEwMDIxNzEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzY3MkJEN0Y2N0M1MTFFNkIyQkNFMjQwODEwMDIxNzEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3QzY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3RDY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pve6J3kAAAAzSURBVHjaYvz//z8D0UDsMwMjSRoYP5Gq4SPNbRjVMEQ1fCRDg+in/6+J1AJUxsgAEGAA31BAJMS0GYEAAAAASUVORK5CYII=) repeat 0 0}.swagger-ui .border-box,.swagger-ui a,.swagger-ui article,.swagger-ui body,.swagger-ui code,.swagger-ui dd,.swagger-ui div,.swagger-ui dl,.swagger-ui dt,.swagger-ui fieldset,.swagger-ui footer,.swagger-ui form,.swagger-ui h1,.swagger-ui h2,.swagger-ui h3,.swagger-ui h4,.swagger-ui h5,.swagger-ui h6,.swagger-ui header,.swagger-ui html,.swagger-ui input[type=email],.swagger-ui input[type=number],.swagger-ui input[type=password],.swagger-ui input[type=tel],.swagger-ui input[type=text],.swagger-ui input[type=url],.swagger-ui legend,.swagger-ui li,.swagger-ui main,.swagger-ui ol,.swagger-ui p,.swagger-ui pre,.swagger-ui section,.swagger-ui table,.swagger-ui td,.swagger-ui textarea,.swagger-ui th,.swagger-ui tr,.swagger-ui ul{-webkit-box-sizing:border-box;box-sizing:border-box}.swagger-ui .aspect-ratio{height:0;position:relative}.swagger-ui .aspect-ratio--16x9{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1{padding-bottom:100%}.swagger-ui .aspect-ratio--object{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:100}@media screen and (min-width:30em){.swagger-ui .aspect-ratio-ns{height:0;position:relative}.swagger-ui .aspect-ratio--16x9-ns{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16-ns{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3-ns{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4-ns{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4-ns{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6-ns{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5-ns{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8-ns{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5-ns{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7-ns{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1-ns{padding-bottom:100%}.swagger-ui .aspect-ratio--object-ns{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:100}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .aspect-ratio-m{height:0;position:relative}.swagger-ui .aspect-ratio--16x9-m{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16-m{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3-m{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4-m{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4-m{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6-m{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5-m{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8-m{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5-m{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7-m{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1-m{padding-bottom:100%}.swagger-ui .aspect-ratio--object-m{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:100}}@media screen and (min-width:60em){.swagger-ui .aspect-ratio-l{height:0;position:relative}.swagger-ui .aspect-ratio--16x9-l{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16-l{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3-l{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4-l{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4-l{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6-l{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5-l{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8-l{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5-l{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7-l{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1-l{padding-bottom:100%}.swagger-ui .aspect-ratio--object-l{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:100}}.swagger-ui img{max-width:100%}.swagger-ui .cover{background-size:cover!important}.swagger-ui .contain{background-size:contain!important}@media screen and (min-width:30em){.swagger-ui .cover-ns{background-size:cover!important}.swagger-ui .contain-ns{background-size:contain!important}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .cover-m{background-size:cover!important}.swagger-ui .contain-m{background-size:contain!important}}@media screen and (min-width:60em){.swagger-ui .cover-l{background-size:cover!important}.swagger-ui .contain-l{background-size:contain!important}}.swagger-ui .bg-center{background-repeat:no-repeat;background-position:50%}.swagger-ui .bg-top{background-repeat:no-repeat;background-position:top}.swagger-ui .bg-right{background-repeat:no-repeat;background-position:100%}.swagger-ui .bg-bottom{background-repeat:no-repeat;background-position:bottom}.swagger-ui .bg-left{background-repeat:no-repeat;background-position:0}@media screen and (min-width:30em){.swagger-ui .bg-center-ns{background-repeat:no-repeat;background-position:50%}.swagger-ui .bg-top-ns{background-repeat:no-repeat;background-position:top}.swagger-ui .bg-right-ns{background-repeat:no-repeat;background-position:100%}.swagger-ui .bg-bottom-ns{background-repeat:no-repeat;background-position:bottom}.swagger-ui .bg-left-ns{background-repeat:no-repeat;background-position:0}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .bg-center-m{background-repeat:no-repeat;background-position:50%}.swagger-ui .bg-top-m{background-repeat:no-repeat;background-position:top}.swagger-ui .bg-right-m{background-repeat:no-repeat;background-position:100%}.swagger-ui .bg-bottom-m{background-repeat:no-repeat;background-position:bottom}.swagger-ui .bg-left-m{background-repeat:no-repeat;background-position:0}}@media screen and (min-width:60em){.swagger-ui .bg-center-l{background-repeat:no-repeat;background-position:50%}.swagger-ui .bg-top-l{background-repeat:no-repeat;background-position:top}.swagger-ui .bg-right-l{background-repeat:no-repeat;background-position:100%}.swagger-ui .bg-bottom-l{background-repeat:no-repeat;background-position:bottom}.swagger-ui .bg-left-l{background-repeat:no-repeat;background-position:0}}.swagger-ui .outline{outline:1px solid}.swagger-ui .outline-transparent{outline:1px solid transparent}.swagger-ui .outline-0{outline:0}@media screen and (min-width:30em){.swagger-ui .outline-ns{outline:1px solid}.swagger-ui .outline-transparent-ns{outline:1px solid transparent}.swagger-ui .outline-0-ns{outline:0}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .outline-m{outline:1px solid}.swagger-ui .outline-transparent-m{outline:1px solid transparent}.swagger-ui .outline-0-m{outline:0}}@media screen and (min-width:60em){.swagger-ui .outline-l{outline:1px solid}.swagger-ui .outline-transparent-l{outline:1px solid transparent}.swagger-ui .outline-0-l{outline:0}}.swagger-ui .ba{border-style:solid;border-width:1px}.swagger-ui .bt{border-top-style:solid;border-top-width:1px}.swagger-ui .br{border-right-style:solid;border-right-width:1px}.swagger-ui .bb{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl{border-left-style:solid;border-left-width:1px}.swagger-ui .bn{border-style:none;border-width:0}@media screen and (min-width:30em){.swagger-ui .ba-ns{border-style:solid;border-width:1px}.swagger-ui .bt-ns{border-top-style:solid;border-top-width:1px}.swagger-ui .br-ns{border-right-style:solid;border-right-width:1px}.swagger-ui .bb-ns{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl-ns{border-left-style:solid;border-left-width:1px}.swagger-ui .bn-ns{border-style:none;border-width:0}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .ba-m{border-style:solid;border-width:1px}.swagger-ui .bt-m{border-top-style:solid;border-top-width:1px}.swagger-ui .br-m{border-right-style:solid;border-right-width:1px}.swagger-ui .bb-m{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl-m{border-left-style:solid;border-left-width:1px}.swagger-ui .bn-m{border-style:none;border-width:0}}@media screen and (min-width:60em){.swagger-ui .ba-l{border-style:solid;border-width:1px}.swagger-ui .bt-l{border-top-style:solid;border-top-width:1px}.swagger-ui .br-l{border-right-style:solid;border-right-width:1px}.swagger-ui .bb-l{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl-l{border-left-style:solid;border-left-width:1px}.swagger-ui .bn-l{border-style:none;border-width:0}}.swagger-ui .b--black{border-color:#000}.swagger-ui .b--near-black{border-color:#111}.swagger-ui .b--dark-gray{border-color:#333}.swagger-ui .b--mid-gray{border-color:#555}.swagger-ui .b--gray{border-color:#777}.swagger-ui .b--silver{border-color:#999}.swagger-ui .b--light-silver{border-color:#aaa}.swagger-ui .b--moon-gray{border-color:#ccc}.swagger-ui .b--light-gray{border-color:#eee}.swagger-ui .b--near-white{border-color:#f4f4f4}.swagger-ui .b--white{border-color:#fff}.swagger-ui .b--white-90{border-color:hsla(0,0%,100%,.9)}.swagger-ui .b--white-80{border-color:hsla(0,0%,100%,.8)}.swagger-ui .b--white-70{border-color:hsla(0,0%,100%,.7)}.swagger-ui .b--white-60{border-color:hsla(0,0%,100%,.6)}.swagger-ui .b--white-50{border-color:hsla(0,0%,100%,.5)}.swagger-ui .b--white-40{border-color:hsla(0,0%,100%,.4)}.swagger-ui .b--white-30{border-color:hsla(0,0%,100%,.3)}.swagger-ui .b--white-20{border-color:hsla(0,0%,100%,.2)}.swagger-ui .b--white-10{border-color:hsla(0,0%,100%,.1)}.swagger-ui .b--white-05{border-color:hsla(0,0%,100%,.05)}.swagger-ui .b--white-025{border-color:hsla(0,0%,100%,.025)}.swagger-ui .b--white-0125{border-color:hsla(0,0%,100%,.0125)}.swagger-ui .b--black-90{border-color:rgba(0,0,0,.9)}.swagger-ui .b--black-80{border-color:rgba(0,0,0,.8)}.swagger-ui .b--black-70{border-color:rgba(0,0,0,.7)}.swagger-ui .b--black-60{border-color:rgba(0,0,0,.6)}.swagger-ui .b--black-50{border-color:rgba(0,0,0,.5)}.swagger-ui .b--black-40{border-color:rgba(0,0,0,.4)}.swagger-ui .b--black-30{border-color:rgba(0,0,0,.3)}.swagger-ui .b--black-20{border-color:rgba(0,0,0,.2)}.swagger-ui .b--black-10{border-color:rgba(0,0,0,.1)}.swagger-ui .b--black-05{border-color:rgba(0,0,0,.05)}.swagger-ui .b--black-025{border-color:rgba(0,0,0,.025)}.swagger-ui .b--black-0125{border-color:rgba(0,0,0,.0125)}.swagger-ui .b--dark-red{border-color:#e7040f}.swagger-ui .b--red{border-color:#ff4136}.swagger-ui .b--light-red{border-color:#ff725c}.swagger-ui .b--orange{border-color:#ff6300}.swagger-ui .b--gold{border-color:#ffb700}.swagger-ui .b--yellow{border-color:gold}.swagger-ui .b--light-yellow{border-color:#fbf1a9}.swagger-ui .b--purple{border-color:#5e2ca5}.swagger-ui .b--light-purple{border-color:#a463f2}.swagger-ui .b--dark-pink{border-color:#d5008f}.swagger-ui .b--hot-pink{border-color:#ff41b4}.swagger-ui .b--pink{border-color:#ff80cc}.swagger-ui .b--light-pink{border-color:#ffa3d7}.swagger-ui .b--dark-green{border-color:#137752}.swagger-ui .b--green{border-color:#19a974}.swagger-ui .b--light-green{border-color:#9eebcf}.swagger-ui .b--navy{border-color:#001b44}.swagger-ui .b--dark-blue{border-color:#00449e}.swagger-ui .b--blue{border-color:#357edd}.swagger-ui .b--light-blue{border-color:#96ccff}.swagger-ui .b--lightest-blue{border-color:#cdecff}.swagger-ui .b--washed-blue{border-color:#f6fffe}.swagger-ui .b--washed-green{border-color:#e8fdf5}.swagger-ui .b--washed-yellow{border-color:#fffceb}.swagger-ui .b--washed-red{border-color:#ffdfdf}.swagger-ui .b--transparent{border-color:transparent}.swagger-ui .b--inherit{border-color:inherit}.swagger-ui .br0{border-radius:0}.swagger-ui .br1{border-radius:.125rem}.swagger-ui .br2{border-radius:.25rem}.swagger-ui .br3{border-radius:.5rem}.swagger-ui .br4{border-radius:1rem}.swagger-ui .br-100{border-radius:100%}.swagger-ui .br-pill{border-radius:9999px}.swagger-ui .br--bottom{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right{border-top-left-radius:0;border-bottom-left-radius:0}.swagger-ui .br--left{border-top-right-radius:0;border-bottom-right-radius:0}@media screen and (min-width:30em){.swagger-ui .br0-ns{border-radius:0}.swagger-ui .br1-ns{border-radius:.125rem}.swagger-ui .br2-ns{border-radius:.25rem}.swagger-ui .br3-ns{border-radius:.5rem}.swagger-ui .br4-ns{border-radius:1rem}.swagger-ui .br-100-ns{border-radius:100%}.swagger-ui .br-pill-ns{border-radius:9999px}.swagger-ui .br--bottom-ns{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top-ns{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right-ns{border-top-left-radius:0;border-bottom-left-radius:0}.swagger-ui .br--left-ns{border-top-right-radius:0;border-bottom-right-radius:0}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .br0-m{border-radius:0}.swagger-ui .br1-m{border-radius:.125rem}.swagger-ui .br2-m{border-radius:.25rem}.swagger-ui .br3-m{border-radius:.5rem}.swagger-ui .br4-m{border-radius:1rem}.swagger-ui .br-100-m{border-radius:100%}.swagger-ui .br-pill-m{border-radius:9999px}.swagger-ui .br--bottom-m{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top-m{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right-m{border-top-left-radius:0;border-bottom-left-radius:0}.swagger-ui .br--left-m{border-top-right-radius:0;border-bottom-right-radius:0}}@media screen and (min-width:60em){.swagger-ui .br0-l{border-radius:0}.swagger-ui .br1-l{border-radius:.125rem}.swagger-ui .br2-l{border-radius:.25rem}.swagger-ui .br3-l{border-radius:.5rem}.swagger-ui .br4-l{border-radius:1rem}.swagger-ui .br-100-l{border-radius:100%}.swagger-ui .br-pill-l{border-radius:9999px}.swagger-ui .br--bottom-l{border-radius-top-left:0;border-radius-top-right:0}.swagger-ui .br--top-l{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right-l{border-top-left-radius:0;border-bottom-left-radius:0}.swagger-ui .br--left-l{border-top-right-radius:0;border-bottom-right-radius:0}}.swagger-ui .b--dotted{border-style:dotted}.swagger-ui .b--dashed{border-style:dashed}.swagger-ui .b--solid{border-style:solid}.swagger-ui .b--none{border-style:none}@media screen and (min-width:30em){.swagger-ui .b--dotted-ns{border-style:dotted}.swagger-ui .b--dashed-ns{border-style:dashed}.swagger-ui .b--solid-ns{border-style:solid}.swagger-ui .b--none-ns{border-style:none}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .b--dotted-m{border-style:dotted}.swagger-ui .b--dashed-m{border-style:dashed}.swagger-ui .b--solid-m{border-style:solid}.swagger-ui .b--none-m{border-style:none}}@media screen and (min-width:60em){.swagger-ui .b--dotted-l{border-style:dotted}.swagger-ui .b--dashed-l{border-style:dashed}.swagger-ui .b--solid-l{border-style:solid}.swagger-ui .b--none-l{border-style:none}}.swagger-ui .bw0{border-width:0}.swagger-ui .bw1{border-width:.125rem}.swagger-ui .bw2{border-width:.25rem}.swagger-ui .bw3{border-width:.5rem}.swagger-ui .bw4{border-width:1rem}.swagger-ui .bw5{border-width:2rem}.swagger-ui .bt-0{border-top-width:0}.swagger-ui .br-0{border-right-width:0}.swagger-ui .bb-0{border-bottom-width:0}.swagger-ui .bl-0{border-left-width:0}@media screen and (min-width:30em){.swagger-ui .bw0-ns{border-width:0}.swagger-ui .bw1-ns{border-width:.125rem}.swagger-ui .bw2-ns{border-width:.25rem}.swagger-ui .bw3-ns{border-width:.5rem}.swagger-ui .bw4-ns{border-width:1rem}.swagger-ui .bw5-ns{border-width:2rem}.swagger-ui .bt-0-ns{border-top-width:0}.swagger-ui .br-0-ns{border-right-width:0}.swagger-ui .bb-0-ns{border-bottom-width:0}.swagger-ui .bl-0-ns{border-left-width:0}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .bw0-m{border-width:0}.swagger-ui .bw1-m{border-width:.125rem}.swagger-ui .bw2-m{border-width:.25rem}.swagger-ui .bw3-m{border-width:.5rem}.swagger-ui .bw4-m{border-width:1rem}.swagger-ui .bw5-m{border-width:2rem}.swagger-ui .bt-0-m{border-top-width:0}.swagger-ui .br-0-m{border-right-width:0}.swagger-ui .bb-0-m{border-bottom-width:0}.swagger-ui .bl-0-m{border-left-width:0}}@media screen and (min-width:60em){.swagger-ui .bw0-l{border-width:0}.swagger-ui .bw1-l{border-width:.125rem}.swagger-ui .bw2-l{border-width:.25rem}.swagger-ui .bw3-l{border-width:.5rem}.swagger-ui .bw4-l{border-width:1rem}.swagger-ui .bw5-l{border-width:2rem}.swagger-ui .bt-0-l{border-top-width:0}.swagger-ui .br-0-l{border-right-width:0}.swagger-ui .bb-0-l{border-bottom-width:0}.swagger-ui .bl-0-l{border-left-width:0}}.swagger-ui .shadow-1{-webkit-box-shadow:0 0 4px 2px rgba(0,0,0,.2);box-shadow:0 0 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-2{-webkit-box-shadow:0 0 8px 2px rgba(0,0,0,.2);box-shadow:0 0 8px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-3{-webkit-box-shadow:2px 2px 4px 2px rgba(0,0,0,.2);box-shadow:2px 2px 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-4{-webkit-box-shadow:2px 2px 8px 0 rgba(0,0,0,.2);box-shadow:2px 2px 8px 0 rgba(0,0,0,.2)}.swagger-ui .shadow-5{-webkit-box-shadow:4px 4px 8px 0 rgba(0,0,0,.2);box-shadow:4px 4px 8px 0 rgba(0,0,0,.2)}@media screen and (min-width:30em){.swagger-ui .shadow-1-ns{-webkit-box-shadow:0 0 4px 2px rgba(0,0,0,.2);box-shadow:0 0 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-2-ns{-webkit-box-shadow:0 0 8px 2px rgba(0,0,0,.2);box-shadow:0 0 8px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-3-ns{-webkit-box-shadow:2px 2px 4px 2px rgba(0,0,0,.2);box-shadow:2px 2px 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-4-ns{-webkit-box-shadow:2px 2px 8px 0 rgba(0,0,0,.2);box-shadow:2px 2px 8px 0 rgba(0,0,0,.2)}.swagger-ui .shadow-5-ns{-webkit-box-shadow:4px 4px 8px 0 rgba(0,0,0,.2);box-shadow:4px 4px 8px 0 rgba(0,0,0,.2)}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .shadow-1-m{-webkit-box-shadow:0 0 4px 2px rgba(0,0,0,.2);box-shadow:0 0 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-2-m{-webkit-box-shadow:0 0 8px 2px rgba(0,0,0,.2);box-shadow:0 0 8px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-3-m{-webkit-box-shadow:2px 2px 4px 2px rgba(0,0,0,.2);box-shadow:2px 2px 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-4-m{-webkit-box-shadow:2px 2px 8px 0 rgba(0,0,0,.2);box-shadow:2px 2px 8px 0 rgba(0,0,0,.2)}.swagger-ui .shadow-5-m{-webkit-box-shadow:4px 4px 8px 0 rgba(0,0,0,.2);box-shadow:4px 4px 8px 0 rgba(0,0,0,.2)}}@media screen and (min-width:60em){.swagger-ui .shadow-1-l{-webkit-box-shadow:0 0 4px 2px rgba(0,0,0,.2);box-shadow:0 0 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-2-l{-webkit-box-shadow:0 0 8px 2px rgba(0,0,0,.2);box-shadow:0 0 8px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-3-l{-webkit-box-shadow:2px 2px 4px 2px rgba(0,0,0,.2);box-shadow:2px 2px 4px 2px rgba(0,0,0,.2)}.swagger-ui .shadow-4-l{-webkit-box-shadow:2px 2px 8px 0 rgba(0,0,0,.2);box-shadow:2px 2px 8px 0 rgba(0,0,0,.2)}.swagger-ui .shadow-5-l{-webkit-box-shadow:4px 4px 8px 0 rgba(0,0,0,.2);box-shadow:4px 4px 8px 0 rgba(0,0,0,.2)}}.swagger-ui .pre{overflow-x:auto;overflow-y:hidden;overflow:scroll}.swagger-ui .top-0{top:0}.swagger-ui .right-0{right:0}.swagger-ui .bottom-0{bottom:0}.swagger-ui .left-0{left:0}.swagger-ui .top-1{top:1rem}.swagger-ui .right-1{right:1rem}.swagger-ui .bottom-1{bottom:1rem}.swagger-ui .left-1{left:1rem}.swagger-ui .top-2{top:2rem}.swagger-ui .right-2{right:2rem}.swagger-ui .bottom-2{bottom:2rem}.swagger-ui .left-2{left:2rem}.swagger-ui .top--1{top:-1rem}.swagger-ui .right--1{right:-1rem}.swagger-ui .bottom--1{bottom:-1rem}.swagger-ui .left--1{left:-1rem}.swagger-ui .top--2{top:-2rem}.swagger-ui .right--2{right:-2rem}.swagger-ui .bottom--2{bottom:-2rem}.swagger-ui .left--2{left:-2rem}.swagger-ui .absolute--fill{top:0;right:0;bottom:0;left:0}@media screen and (min-width:30em){.swagger-ui .top-0-ns{top:0}.swagger-ui .left-0-ns{left:0}.swagger-ui .right-0-ns{right:0}.swagger-ui .bottom-0-ns{bottom:0}.swagger-ui .top-1-ns{top:1rem}.swagger-ui .left-1-ns{left:1rem}.swagger-ui .right-1-ns{right:1rem}.swagger-ui .bottom-1-ns{bottom:1rem}.swagger-ui .top-2-ns{top:2rem}.swagger-ui .left-2-ns{left:2rem}.swagger-ui .right-2-ns{right:2rem}.swagger-ui .bottom-2-ns{bottom:2rem}.swagger-ui .top--1-ns{top:-1rem}.swagger-ui .right--1-ns{right:-1rem}.swagger-ui .bottom--1-ns{bottom:-1rem}.swagger-ui .left--1-ns{left:-1rem}.swagger-ui .top--2-ns{top:-2rem}.swagger-ui .right--2-ns{right:-2rem}.swagger-ui .bottom--2-ns{bottom:-2rem}.swagger-ui .left--2-ns{left:-2rem}.swagger-ui .absolute--fill-ns{top:0;right:0;bottom:0;left:0}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .top-0-m{top:0}.swagger-ui .left-0-m{left:0}.swagger-ui .right-0-m{right:0}.swagger-ui .bottom-0-m{bottom:0}.swagger-ui .top-1-m{top:1rem}.swagger-ui .left-1-m{left:1rem}.swagger-ui .right-1-m{right:1rem}.swagger-ui .bottom-1-m{bottom:1rem}.swagger-ui .top-2-m{top:2rem}.swagger-ui .left-2-m{left:2rem}.swagger-ui .right-2-m{right:2rem}.swagger-ui .bottom-2-m{bottom:2rem}.swagger-ui .top--1-m{top:-1rem}.swagger-ui .right--1-m{right:-1rem}.swagger-ui .bottom--1-m{bottom:-1rem}.swagger-ui .left--1-m{left:-1rem}.swagger-ui .top--2-m{top:-2rem}.swagger-ui .right--2-m{right:-2rem}.swagger-ui .bottom--2-m{bottom:-2rem}.swagger-ui .left--2-m{left:-2rem}.swagger-ui .absolute--fill-m{top:0;right:0;bottom:0;left:0}}@media screen and (min-width:60em){.swagger-ui .top-0-l{top:0}.swagger-ui .left-0-l{left:0}.swagger-ui .right-0-l{right:0}.swagger-ui .bottom-0-l{bottom:0}.swagger-ui .top-1-l{top:1rem}.swagger-ui .left-1-l{left:1rem}.swagger-ui .right-1-l{right:1rem}.swagger-ui .bottom-1-l{bottom:1rem}.swagger-ui .top-2-l{top:2rem}.swagger-ui .left-2-l{left:2rem}.swagger-ui .right-2-l{right:2rem}.swagger-ui .bottom-2-l{bottom:2rem}.swagger-ui .top--1-l{top:-1rem}.swagger-ui .right--1-l{right:-1rem}.swagger-ui .bottom--1-l{bottom:-1rem}.swagger-ui .left--1-l{left:-1rem}.swagger-ui .top--2-l{top:-2rem}.swagger-ui .right--2-l{right:-2rem}.swagger-ui .bottom--2-l{bottom:-2rem}.swagger-ui .left--2-l{left:-2rem}.swagger-ui .absolute--fill-l{top:0;right:0;bottom:0;left:0}}.swagger-ui .cf:after,.swagger-ui .cf:before{content:\" \";display:table}.swagger-ui .cf:after{clear:both}.swagger-ui .cf{*zoom:1}.swagger-ui .cl{clear:left}.swagger-ui .cr{clear:right}.swagger-ui .cb{clear:both}.swagger-ui .cn{clear:none}@media screen and (min-width:30em){.swagger-ui .cl-ns{clear:left}.swagger-ui .cr-ns{clear:right}.swagger-ui .cb-ns{clear:both}.swagger-ui .cn-ns{clear:none}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .cl-m{clear:left}.swagger-ui .cr-m{clear:right}.swagger-ui .cb-m{clear:both}.swagger-ui .cn-m{clear:none}}@media screen and (min-width:60em){.swagger-ui .cl-l{clear:left}.swagger-ui .cr-l{clear:right}.swagger-ui .cb-l{clear:both}.swagger-ui .cn-l{clear:none}}.swagger-ui .dn{display:none}.swagger-ui .di{display:inline}.swagger-ui .db{display:block}.swagger-ui .dib{display:inline-block}.swagger-ui .dit{display:inline-table}.swagger-ui .dt{display:table}.swagger-ui .dtc{display:table-cell}.swagger-ui .dt-row{display:table-row}.swagger-ui .dt-row-group{display:table-row-group}.swagger-ui .dt-column{display:table-column}.swagger-ui .dt-column-group{display:table-column-group}.swagger-ui .dt--fixed{table-layout:fixed;width:100%}@media screen and (min-width:30em){.swagger-ui .dn-ns{display:none}.swagger-ui .di-ns{display:inline}.swagger-ui .db-ns{display:block}.swagger-ui .dib-ns{display:inline-block}.swagger-ui .dit-ns{display:inline-table}.swagger-ui .dt-ns{display:table}.swagger-ui .dtc-ns{display:table-cell}.swagger-ui .dt-row-ns{display:table-row}.swagger-ui .dt-row-group-ns{display:table-row-group}.swagger-ui .dt-column-ns{display:table-column}.swagger-ui .dt-column-group-ns{display:table-column-group}.swagger-ui .dt--fixed-ns{table-layout:fixed;width:100%}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .dn-m{display:none}.swagger-ui .di-m{display:inline}.swagger-ui .db-m{display:block}.swagger-ui .dib-m{display:inline-block}.swagger-ui .dit-m{display:inline-table}.swagger-ui .dt-m{display:table}.swagger-ui .dtc-m{display:table-cell}.swagger-ui .dt-row-m{display:table-row}.swagger-ui .dt-row-group-m{display:table-row-group}.swagger-ui .dt-column-m{display:table-column}.swagger-ui .dt-column-group-m{display:table-column-group}.swagger-ui .dt--fixed-m{table-layout:fixed;width:100%}}@media screen and (min-width:60em){.swagger-ui .dn-l{display:none}.swagger-ui .di-l{display:inline}.swagger-ui .db-l{display:block}.swagger-ui .dib-l{display:inline-block}.swagger-ui .dit-l{display:inline-table}.swagger-ui .dt-l{display:table}.swagger-ui .dtc-l{display:table-cell}.swagger-ui .dt-row-l{display:table-row}.swagger-ui .dt-row-group-l{display:table-row-group}.swagger-ui .dt-column-l{display:table-column}.swagger-ui .dt-column-group-l{display:table-column-group}.swagger-ui .dt--fixed-l{table-layout:fixed;width:100%}}.swagger-ui .flex{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .inline-flex{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.swagger-ui .flex-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;min-height:0}.swagger-ui .flex-none{-webkit-box-flex:0;-ms-flex:none;flex:none}.swagger-ui .flex-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .flex-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.swagger-ui .flex-wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}.swagger-ui .flex-nowrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.swagger-ui .flex-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.swagger-ui .items-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.swagger-ui .items-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.swagger-ui .items-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .items-baseline{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.swagger-ui .items-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.swagger-ui .self-start{-ms-flex-item-align:start;align-self:flex-start}.swagger-ui .self-end{-ms-flex-item-align:end;align-self:flex-end}.swagger-ui .self-center{-ms-flex-item-align:center;align-self:center}.swagger-ui .self-baseline{-ms-flex-item-align:baseline;align-self:baseline}.swagger-ui .self-stretch{-ms-flex-item-align:stretch;align-self:stretch}.swagger-ui .justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.swagger-ui .justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swagger-ui .justify-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.swagger-ui .justify-around{-ms-flex-pack:distribute;justify-content:space-around}.swagger-ui .content-start{-ms-flex-line-pack:start;align-content:flex-start}.swagger-ui .content-end{-ms-flex-line-pack:end;align-content:flex-end}.swagger-ui .content-center{-ms-flex-line-pack:center;align-content:center}.swagger-ui .content-between{-ms-flex-line-pack:justify;align-content:space-between}.swagger-ui .content-around{-ms-flex-line-pack:distribute;align-content:space-around}.swagger-ui .content-stretch{-ms-flex-line-pack:stretch;align-content:stretch}.swagger-ui .order-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.swagger-ui .order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.swagger-ui .order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.swagger-ui .order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.swagger-ui .order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.swagger-ui .order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.swagger-ui .order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.swagger-ui .order-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.swagger-ui .order-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.swagger-ui .order-last{-webkit-box-ordinal-group:100000;-ms-flex-order:99999;order:99999}.swagger-ui .flex-grow-0{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.swagger-ui .flex-grow-1{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.swagger-ui .flex-shrink-0{-ms-flex-negative:0;flex-shrink:0}.swagger-ui .flex-shrink-1{-ms-flex-negative:1;flex-shrink:1}@media screen and (min-width:30em){.swagger-ui .flex-ns{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .inline-flex-ns{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.swagger-ui .flex-auto-ns{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;min-height:0}.swagger-ui .flex-none-ns{-webkit-box-flex:0;-ms-flex:none;flex:none}.swagger-ui .flex-column-ns{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .flex-row-ns{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.swagger-ui .flex-wrap-ns{-ms-flex-wrap:wrap;flex-wrap:wrap}.swagger-ui .flex-nowrap-ns{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse-ns{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse-ns{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.swagger-ui .flex-row-reverse-ns{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.swagger-ui .items-start-ns{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.swagger-ui .items-end-ns{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.swagger-ui .items-center-ns{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .items-baseline-ns{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.swagger-ui .items-stretch-ns{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.swagger-ui .self-start-ns{-ms-flex-item-align:start;align-self:flex-start}.swagger-ui .self-end-ns{-ms-flex-item-align:end;align-self:flex-end}.swagger-ui .self-center-ns{-ms-flex-item-align:center;align-self:center}.swagger-ui .self-baseline-ns{-ms-flex-item-align:baseline;align-self:baseline}.swagger-ui .self-stretch-ns{-ms-flex-item-align:stretch;align-self:stretch}.swagger-ui .justify-start-ns{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.swagger-ui .justify-end-ns{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .justify-center-ns{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swagger-ui .justify-between-ns{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.swagger-ui .justify-around-ns{-ms-flex-pack:distribute;justify-content:space-around}.swagger-ui .content-start-ns{-ms-flex-line-pack:start;align-content:flex-start}.swagger-ui .content-end-ns{-ms-flex-line-pack:end;align-content:flex-end}.swagger-ui .content-center-ns{-ms-flex-line-pack:center;align-content:center}.swagger-ui .content-between-ns{-ms-flex-line-pack:justify;align-content:space-between}.swagger-ui .content-around-ns{-ms-flex-line-pack:distribute;align-content:space-around}.swagger-ui .content-stretch-ns{-ms-flex-line-pack:stretch;align-content:stretch}.swagger-ui .order-0-ns{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.swagger-ui .order-1-ns{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.swagger-ui .order-2-ns{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.swagger-ui .order-3-ns{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.swagger-ui .order-4-ns{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.swagger-ui .order-5-ns{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.swagger-ui .order-6-ns{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.swagger-ui .order-7-ns{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.swagger-ui .order-8-ns{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.swagger-ui .order-last-ns{-webkit-box-ordinal-group:100000;-ms-flex-order:99999;order:99999}.swagger-ui .flex-grow-0-ns{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.swagger-ui .flex-grow-1-ns{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.swagger-ui .flex-shrink-0-ns{-ms-flex-negative:0;flex-shrink:0}.swagger-ui .flex-shrink-1-ns{-ms-flex-negative:1;flex-shrink:1}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .flex-m{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .inline-flex-m{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.swagger-ui .flex-auto-m{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;min-height:0}.swagger-ui .flex-none-m{-webkit-box-flex:0;-ms-flex:none;flex:none}.swagger-ui .flex-column-m{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .flex-row-m{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.swagger-ui .flex-wrap-m{-ms-flex-wrap:wrap;flex-wrap:wrap}.swagger-ui .flex-nowrap-m{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse-m{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse-m{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.swagger-ui .flex-row-reverse-m{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.swagger-ui .items-start-m{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.swagger-ui .items-end-m{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.swagger-ui .items-center-m{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .items-baseline-m{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.swagger-ui .items-stretch-m{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.swagger-ui .self-start-m{-ms-flex-item-align:start;align-self:flex-start}.swagger-ui .self-end-m{-ms-flex-item-align:end;align-self:flex-end}.swagger-ui .self-center-m{-ms-flex-item-align:center;align-self:center}.swagger-ui .self-baseline-m{-ms-flex-item-align:baseline;align-self:baseline}.swagger-ui .self-stretch-m{-ms-flex-item-align:stretch;align-self:stretch}.swagger-ui .justify-start-m{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.swagger-ui .justify-end-m{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .justify-center-m{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swagger-ui .justify-between-m{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.swagger-ui .justify-around-m{-ms-flex-pack:distribute;justify-content:space-around}.swagger-ui .content-start-m{-ms-flex-line-pack:start;align-content:flex-start}.swagger-ui .content-end-m{-ms-flex-line-pack:end;align-content:flex-end}.swagger-ui .content-center-m{-ms-flex-line-pack:center;align-content:center}.swagger-ui .content-between-m{-ms-flex-line-pack:justify;align-content:space-between}.swagger-ui .content-around-m{-ms-flex-line-pack:distribute;align-content:space-around}.swagger-ui .content-stretch-m{-ms-flex-line-pack:stretch;align-content:stretch}.swagger-ui .order-0-m{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.swagger-ui .order-1-m{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.swagger-ui .order-2-m{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.swagger-ui .order-3-m{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.swagger-ui .order-4-m{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.swagger-ui .order-5-m{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.swagger-ui .order-6-m{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.swagger-ui .order-7-m{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.swagger-ui .order-8-m{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.swagger-ui .order-last-m{-webkit-box-ordinal-group:100000;-ms-flex-order:99999;order:99999}.swagger-ui .flex-grow-0-m{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.swagger-ui .flex-grow-1-m{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.swagger-ui .flex-shrink-0-m{-ms-flex-negative:0;flex-shrink:0}.swagger-ui .flex-shrink-1-m{-ms-flex-negative:1;flex-shrink:1}}@media screen and (min-width:60em){.swagger-ui .flex-l{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .inline-flex-l{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.swagger-ui .flex-auto-l{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;min-height:0}.swagger-ui .flex-none-l{-webkit-box-flex:0;-ms-flex:none;flex:none}.swagger-ui .flex-column-l{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .flex-row-l{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.swagger-ui .flex-wrap-l{-ms-flex-wrap:wrap;flex-wrap:wrap}.swagger-ui .flex-nowrap-l{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse-l{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse-l{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.swagger-ui .flex-row-reverse-l{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.swagger-ui .items-start-l{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.swagger-ui .items-end-l{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.swagger-ui .items-center-l{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .items-baseline-l{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.swagger-ui .items-stretch-l{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.swagger-ui .self-start-l{-ms-flex-item-align:start;align-self:flex-start}.swagger-ui .self-end-l{-ms-flex-item-align:end;align-self:flex-end}.swagger-ui .self-center-l{-ms-flex-item-align:center;align-self:center}.swagger-ui .self-baseline-l{-ms-flex-item-align:baseline;align-self:baseline}.swagger-ui .self-stretch-l{-ms-flex-item-align:stretch;align-self:stretch}.swagger-ui .justify-start-l{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.swagger-ui .justify-end-l{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .justify-center-l{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swagger-ui .justify-between-l{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.swagger-ui .justify-around-l{-ms-flex-pack:distribute;justify-content:space-around}.swagger-ui .content-start-l{-ms-flex-line-pack:start;align-content:flex-start}.swagger-ui .content-end-l{-ms-flex-line-pack:end;align-content:flex-end}.swagger-ui .content-center-l{-ms-flex-line-pack:center;align-content:center}.swagger-ui .content-between-l{-ms-flex-line-pack:justify;align-content:space-between}.swagger-ui .content-around-l{-ms-flex-line-pack:distribute;align-content:space-around}.swagger-ui .content-stretch-l{-ms-flex-line-pack:stretch;align-content:stretch}.swagger-ui .order-0-l{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.swagger-ui .order-1-l{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.swagger-ui .order-2-l{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.swagger-ui .order-3-l{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.swagger-ui .order-4-l{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.swagger-ui .order-5-l{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.swagger-ui .order-6-l{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.swagger-ui .order-7-l{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.swagger-ui .order-8-l{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.swagger-ui .order-last-l{-webkit-box-ordinal-group:100000;-ms-flex-order:99999;order:99999}.swagger-ui .flex-grow-0-l{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.swagger-ui .flex-grow-1-l{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.swagger-ui .flex-shrink-0-l{-ms-flex-negative:0;flex-shrink:0}.swagger-ui .flex-shrink-1-l{-ms-flex-negative:1;flex-shrink:1}}.swagger-ui .fl{float:left;_display:inline}.swagger-ui .fr{float:right;_display:inline}.swagger-ui .fn{float:none}@media screen and (min-width:30em){.swagger-ui .fl-ns{float:left;_display:inline}.swagger-ui .fr-ns{float:right;_display:inline}.swagger-ui .fn-ns{float:none}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .fl-m{float:left;_display:inline}.swagger-ui .fr-m{float:right;_display:inline}.swagger-ui .fn-m{float:none}}@media screen and (min-width:60em){.swagger-ui .fl-l{float:left;_display:inline}.swagger-ui .fr-l{float:right;_display:inline}.swagger-ui .fn-l{float:none}}.swagger-ui .sans-serif{font-family:-apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica,helvetica neue,ubuntu,roboto,noto,segoe ui,arial,sans-serif}.swagger-ui .serif{font-family:georgia,serif}.swagger-ui .system-sans-serif{font-family:sans-serif}.swagger-ui .system-serif{font-family:serif}.swagger-ui .code,.swagger-ui code{font-family:Consolas,monaco,monospace}.swagger-ui .courier{font-family:Courier Next,courier,monospace}.swagger-ui .helvetica{font-family:helvetica neue,helvetica,sans-serif}.swagger-ui .avenir{font-family:avenir next,avenir,sans-serif}.swagger-ui .athelas{font-family:athelas,georgia,serif}.swagger-ui .georgia{font-family:georgia,serif}.swagger-ui .times{font-family:times,serif}.swagger-ui .bodoni{font-family:Bodoni MT,serif}.swagger-ui .calisto{font-family:Calisto MT,serif}.swagger-ui .garamond{font-family:garamond,serif}.swagger-ui .baskerville{font-family:baskerville,serif}.swagger-ui .i{font-style:italic}.swagger-ui .fs-normal{font-style:normal}@media screen and (min-width:30em){.swagger-ui .i-ns{font-style:italic}.swagger-ui .fs-normal-ns{font-style:normal}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .i-m{font-style:italic}.swagger-ui .fs-normal-m{font-style:normal}}@media screen and (min-width:60em){.swagger-ui .i-l{font-style:italic}.swagger-ui .fs-normal-l{font-style:normal}}.swagger-ui .normal{font-weight:400}.swagger-ui .b{font-weight:700}.swagger-ui .fw1{font-weight:100}.swagger-ui .fw2{font-weight:200}.swagger-ui .fw3{font-weight:300}.swagger-ui .fw4{font-weight:400}.swagger-ui .fw5{font-weight:500}.swagger-ui .fw6{font-weight:600}.swagger-ui .fw7{font-weight:700}.swagger-ui .fw8{font-weight:800}.swagger-ui .fw9{font-weight:900}@media screen and (min-width:30em){.swagger-ui .normal-ns{font-weight:400}.swagger-ui .b-ns{font-weight:700}.swagger-ui .fw1-ns{font-weight:100}.swagger-ui .fw2-ns{font-weight:200}.swagger-ui .fw3-ns{font-weight:300}.swagger-ui .fw4-ns{font-weight:400}.swagger-ui .fw5-ns{font-weight:500}.swagger-ui .fw6-ns{font-weight:600}.swagger-ui .fw7-ns{font-weight:700}.swagger-ui .fw8-ns{font-weight:800}.swagger-ui .fw9-ns{font-weight:900}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .normal-m{font-weight:400}.swagger-ui .b-m{font-weight:700}.swagger-ui .fw1-m{font-weight:100}.swagger-ui .fw2-m{font-weight:200}.swagger-ui .fw3-m{font-weight:300}.swagger-ui .fw4-m{font-weight:400}.swagger-ui .fw5-m{font-weight:500}.swagger-ui .fw6-m{font-weight:600}.swagger-ui .fw7-m{font-weight:700}.swagger-ui .fw8-m{font-weight:800}.swagger-ui .fw9-m{font-weight:900}}@media screen and (min-width:60em){.swagger-ui .normal-l{font-weight:400}.swagger-ui .b-l{font-weight:700}.swagger-ui .fw1-l{font-weight:100}.swagger-ui .fw2-l{font-weight:200}.swagger-ui .fw3-l{font-weight:300}.swagger-ui .fw4-l{font-weight:400}.swagger-ui .fw5-l{font-weight:500}.swagger-ui .fw6-l{font-weight:600}.swagger-ui .fw7-l{font-weight:700}.swagger-ui .fw8-l{font-weight:800}.swagger-ui .fw9-l{font-weight:900}}.swagger-ui .input-reset{-webkit-appearance:none;-moz-appearance:none}.swagger-ui .button-reset::-moz-focus-inner,.swagger-ui .input-reset::-moz-focus-inner{border:0;padding:0}.swagger-ui .h1{height:1rem}.swagger-ui .h2{height:2rem}.swagger-ui .h3{height:4rem}.swagger-ui .h4{height:8rem}.swagger-ui .h5{height:16rem}.swagger-ui .h-25{height:25%}.swagger-ui .h-50{height:50%}.swagger-ui .h-75{height:75%}.swagger-ui .h-100{height:100%}.swagger-ui .min-h-100{min-height:100%}.swagger-ui .vh-25{height:25vh}.swagger-ui .vh-50{height:50vh}.swagger-ui .vh-75{height:75vh}.swagger-ui .vh-100{height:100vh}.swagger-ui .min-vh-100{min-height:100vh}.swagger-ui .h-auto{height:auto}.swagger-ui .h-inherit{height:inherit}@media screen and (min-width:30em){.swagger-ui .h1-ns{height:1rem}.swagger-ui .h2-ns{height:2rem}.swagger-ui .h3-ns{height:4rem}.swagger-ui .h4-ns{height:8rem}.swagger-ui .h5-ns{height:16rem}.swagger-ui .h-25-ns{height:25%}.swagger-ui .h-50-ns{height:50%}.swagger-ui .h-75-ns{height:75%}.swagger-ui .h-100-ns{height:100%}.swagger-ui .min-h-100-ns{min-height:100%}.swagger-ui .vh-25-ns{height:25vh}.swagger-ui .vh-50-ns{height:50vh}.swagger-ui .vh-75-ns{height:75vh}.swagger-ui .vh-100-ns{height:100vh}.swagger-ui .min-vh-100-ns{min-height:100vh}.swagger-ui .h-auto-ns{height:auto}.swagger-ui .h-inherit-ns{height:inherit}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .h1-m{height:1rem}.swagger-ui .h2-m{height:2rem}.swagger-ui .h3-m{height:4rem}.swagger-ui .h4-m{height:8rem}.swagger-ui .h5-m{height:16rem}.swagger-ui .h-25-m{height:25%}.swagger-ui .h-50-m{height:50%}.swagger-ui .h-75-m{height:75%}.swagger-ui .h-100-m{height:100%}.swagger-ui .min-h-100-m{min-height:100%}.swagger-ui .vh-25-m{height:25vh}.swagger-ui .vh-50-m{height:50vh}.swagger-ui .vh-75-m{height:75vh}.swagger-ui .vh-100-m{height:100vh}.swagger-ui .min-vh-100-m{min-height:100vh}.swagger-ui .h-auto-m{height:auto}.swagger-ui .h-inherit-m{height:inherit}}@media screen and (min-width:60em){.swagger-ui .h1-l{height:1rem}.swagger-ui .h2-l{height:2rem}.swagger-ui .h3-l{height:4rem}.swagger-ui .h4-l{height:8rem}.swagger-ui .h5-l{height:16rem}.swagger-ui .h-25-l{height:25%}.swagger-ui .h-50-l{height:50%}.swagger-ui .h-75-l{height:75%}.swagger-ui .h-100-l{height:100%}.swagger-ui .min-h-100-l{min-height:100%}.swagger-ui .vh-25-l{height:25vh}.swagger-ui .vh-50-l{height:50vh}.swagger-ui .vh-75-l{height:75vh}.swagger-ui .vh-100-l{height:100vh}.swagger-ui .min-vh-100-l{min-height:100vh}.swagger-ui .h-auto-l{height:auto}.swagger-ui .h-inherit-l{height:inherit}}.swagger-ui .tracked{letter-spacing:.1em}.swagger-ui .tracked-tight{letter-spacing:-.05em}.swagger-ui .tracked-mega{letter-spacing:.25em}@media screen and (min-width:30em){.swagger-ui .tracked-ns{letter-spacing:.1em}.swagger-ui .tracked-tight-ns{letter-spacing:-.05em}.swagger-ui .tracked-mega-ns{letter-spacing:.25em}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .tracked-m{letter-spacing:.1em}.swagger-ui .tracked-tight-m{letter-spacing:-.05em}.swagger-ui .tracked-mega-m{letter-spacing:.25em}}@media screen and (min-width:60em){.swagger-ui .tracked-l{letter-spacing:.1em}.swagger-ui .tracked-tight-l{letter-spacing:-.05em}.swagger-ui .tracked-mega-l{letter-spacing:.25em}}.swagger-ui .lh-solid{line-height:1}.swagger-ui .lh-title{line-height:1.25}.swagger-ui .lh-copy{line-height:1.5}@media screen and (min-width:30em){.swagger-ui .lh-solid-ns{line-height:1}.swagger-ui .lh-title-ns{line-height:1.25}.swagger-ui .lh-copy-ns{line-height:1.5}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .lh-solid-m{line-height:1}.swagger-ui .lh-title-m{line-height:1.25}.swagger-ui .lh-copy-m{line-height:1.5}}@media screen and (min-width:60em){.swagger-ui .lh-solid-l{line-height:1}.swagger-ui .lh-title-l{line-height:1.25}.swagger-ui .lh-copy-l{line-height:1.5}}.swagger-ui .link{text-decoration:none}.swagger-ui .link,.swagger-ui .link:active,.swagger-ui .link:focus,.swagger-ui .link:hover,.swagger-ui .link:link,.swagger-ui .link:visited{-webkit-transition:color .15s ease-in;transition:color .15s ease-in}.swagger-ui .link:focus{outline:1px dotted currentColor}.swagger-ui .list{list-style-type:none}.swagger-ui .mw-100{max-width:100%}.swagger-ui .mw1{max-width:1rem}.swagger-ui .mw2{max-width:2rem}.swagger-ui .mw3{max-width:4rem}.swagger-ui .mw4{max-width:8rem}.swagger-ui .mw5{max-width:16rem}.swagger-ui .mw6{max-width:32rem}.swagger-ui .mw7{max-width:48rem}.swagger-ui .mw8{max-width:64rem}.swagger-ui .mw9{max-width:96rem}.swagger-ui .mw-none{max-width:none}@media screen and (min-width:30em){.swagger-ui .mw-100-ns{max-width:100%}.swagger-ui .mw1-ns{max-width:1rem}.swagger-ui .mw2-ns{max-width:2rem}.swagger-ui .mw3-ns{max-width:4rem}.swagger-ui .mw4-ns{max-width:8rem}.swagger-ui .mw5-ns{max-width:16rem}.swagger-ui .mw6-ns{max-width:32rem}.swagger-ui .mw7-ns{max-width:48rem}.swagger-ui .mw8-ns{max-width:64rem}.swagger-ui .mw9-ns{max-width:96rem}.swagger-ui .mw-none-ns{max-width:none}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .mw-100-m{max-width:100%}.swagger-ui .mw1-m{max-width:1rem}.swagger-ui .mw2-m{max-width:2rem}.swagger-ui .mw3-m{max-width:4rem}.swagger-ui .mw4-m{max-width:8rem}.swagger-ui .mw5-m{max-width:16rem}.swagger-ui .mw6-m{max-width:32rem}.swagger-ui .mw7-m{max-width:48rem}.swagger-ui .mw8-m{max-width:64rem}.swagger-ui .mw9-m{max-width:96rem}.swagger-ui .mw-none-m{max-width:none}}@media screen and (min-width:60em){.swagger-ui .mw-100-l{max-width:100%}.swagger-ui .mw1-l{max-width:1rem}.swagger-ui .mw2-l{max-width:2rem}.swagger-ui .mw3-l{max-width:4rem}.swagger-ui .mw4-l{max-width:8rem}.swagger-ui .mw5-l{max-width:16rem}.swagger-ui .mw6-l{max-width:32rem}.swagger-ui .mw7-l{max-width:48rem}.swagger-ui .mw8-l{max-width:64rem}.swagger-ui .mw9-l{max-width:96rem}.swagger-ui .mw-none-l{max-width:none}}.swagger-ui .w1{width:1rem}.swagger-ui .w2{width:2rem}.swagger-ui .w3{width:4rem}.swagger-ui .w4{width:8rem}.swagger-ui .w5{width:16rem}.swagger-ui .w-10{width:10%}.swagger-ui .w-20{width:20%}.swagger-ui .w-25{width:25%}.swagger-ui .w-30{width:30%}.swagger-ui .w-33{width:33%}.swagger-ui .w-34{width:34%}.swagger-ui .w-40{width:40%}.swagger-ui .w-50{width:50%}.swagger-ui .w-60{width:60%}.swagger-ui .w-70{width:70%}.swagger-ui .w-75{width:75%}.swagger-ui .w-80{width:80%}.swagger-ui .w-90{width:90%}.swagger-ui .w-100{width:100%}.swagger-ui .w-third{width:33.33333%}.swagger-ui .w-two-thirds{width:66.66667%}.swagger-ui .w-auto{width:auto}@media screen and (min-width:30em){.swagger-ui .w1-ns{width:1rem}.swagger-ui .w2-ns{width:2rem}.swagger-ui .w3-ns{width:4rem}.swagger-ui .w4-ns{width:8rem}.swagger-ui .w5-ns{width:16rem}.swagger-ui .w-10-ns{width:10%}.swagger-ui .w-20-ns{width:20%}.swagger-ui .w-25-ns{width:25%}.swagger-ui .w-30-ns{width:30%}.swagger-ui .w-33-ns{width:33%}.swagger-ui .w-34-ns{width:34%}.swagger-ui .w-40-ns{width:40%}.swagger-ui .w-50-ns{width:50%}.swagger-ui .w-60-ns{width:60%}.swagger-ui .w-70-ns{width:70%}.swagger-ui .w-75-ns{width:75%}.swagger-ui .w-80-ns{width:80%}.swagger-ui .w-90-ns{width:90%}.swagger-ui .w-100-ns{width:100%}.swagger-ui .w-third-ns{width:33.33333%}.swagger-ui .w-two-thirds-ns{width:66.66667%}.swagger-ui .w-auto-ns{width:auto}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .w1-m{width:1rem}.swagger-ui .w2-m{width:2rem}.swagger-ui .w3-m{width:4rem}.swagger-ui .w4-m{width:8rem}.swagger-ui .w5-m{width:16rem}.swagger-ui .w-10-m{width:10%}.swagger-ui .w-20-m{width:20%}.swagger-ui .w-25-m{width:25%}.swagger-ui .w-30-m{width:30%}.swagger-ui .w-33-m{width:33%}.swagger-ui .w-34-m{width:34%}.swagger-ui .w-40-m{width:40%}.swagger-ui .w-50-m{width:50%}.swagger-ui .w-60-m{width:60%}.swagger-ui .w-70-m{width:70%}.swagger-ui .w-75-m{width:75%}.swagger-ui .w-80-m{width:80%}.swagger-ui .w-90-m{width:90%}.swagger-ui .w-100-m{width:100%}.swagger-ui .w-third-m{width:33.33333%}.swagger-ui .w-two-thirds-m{width:66.66667%}.swagger-ui .w-auto-m{width:auto}}@media screen and (min-width:60em){.swagger-ui .w1-l{width:1rem}.swagger-ui .w2-l{width:2rem}.swagger-ui .w3-l{width:4rem}.swagger-ui .w4-l{width:8rem}.swagger-ui .w5-l{width:16rem}.swagger-ui .w-10-l{width:10%}.swagger-ui .w-20-l{width:20%}.swagger-ui .w-25-l{width:25%}.swagger-ui .w-30-l{width:30%}.swagger-ui .w-33-l{width:33%}.swagger-ui .w-34-l{width:34%}.swagger-ui .w-40-l{width:40%}.swagger-ui .w-50-l{width:50%}.swagger-ui .w-60-l{width:60%}.swagger-ui .w-70-l{width:70%}.swagger-ui .w-75-l{width:75%}.swagger-ui .w-80-l{width:80%}.swagger-ui .w-90-l{width:90%}.swagger-ui .w-100-l{width:100%}.swagger-ui .w-third-l{width:33.33333%}.swagger-ui .w-two-thirds-l{width:66.66667%}.swagger-ui .w-auto-l{width:auto}}.swagger-ui .overflow-visible{overflow:visible}.swagger-ui .overflow-hidden{overflow:hidden}.swagger-ui .overflow-scroll{overflow:scroll}.swagger-ui .overflow-auto{overflow:auto}.swagger-ui .overflow-x-visible{overflow-x:visible}.swagger-ui .overflow-x-hidden{overflow-x:hidden}.swagger-ui .overflow-x-scroll{overflow-x:scroll}.swagger-ui .overflow-x-auto{overflow-x:auto}.swagger-ui .overflow-y-visible{overflow-y:visible}.swagger-ui .overflow-y-hidden{overflow-y:hidden}.swagger-ui .overflow-y-scroll{overflow-y:scroll}.swagger-ui .overflow-y-auto{overflow-y:auto}@media screen and (min-width:30em){.swagger-ui .overflow-visible-ns{overflow:visible}.swagger-ui .overflow-hidden-ns{overflow:hidden}.swagger-ui .overflow-scroll-ns{overflow:scroll}.swagger-ui .overflow-auto-ns{overflow:auto}.swagger-ui .overflow-x-visible-ns{overflow-x:visible}.swagger-ui .overflow-x-hidden-ns{overflow-x:hidden}.swagger-ui .overflow-x-scroll-ns{overflow-x:scroll}.swagger-ui .overflow-x-auto-ns{overflow-x:auto}.swagger-ui .overflow-y-visible-ns{overflow-y:visible}.swagger-ui .overflow-y-hidden-ns{overflow-y:hidden}.swagger-ui .overflow-y-scroll-ns{overflow-y:scroll}.swagger-ui .overflow-y-auto-ns{overflow-y:auto}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .overflow-visible-m{overflow:visible}.swagger-ui .overflow-hidden-m{overflow:hidden}.swagger-ui .overflow-scroll-m{overflow:scroll}.swagger-ui .overflow-auto-m{overflow:auto}.swagger-ui .overflow-x-visible-m{overflow-x:visible}.swagger-ui .overflow-x-hidden-m{overflow-x:hidden}.swagger-ui .overflow-x-scroll-m{overflow-x:scroll}.swagger-ui .overflow-x-auto-m{overflow-x:auto}.swagger-ui .overflow-y-visible-m{overflow-y:visible}.swagger-ui .overflow-y-hidden-m{overflow-y:hidden}.swagger-ui .overflow-y-scroll-m{overflow-y:scroll}.swagger-ui .overflow-y-auto-m{overflow-y:auto}}@media screen and (min-width:60em){.swagger-ui .overflow-visible-l{overflow:visible}.swagger-ui .overflow-hidden-l{overflow:hidden}.swagger-ui .overflow-scroll-l{overflow:scroll}.swagger-ui .overflow-auto-l{overflow:auto}.swagger-ui .overflow-x-visible-l{overflow-x:visible}.swagger-ui .overflow-x-hidden-l{overflow-x:hidden}.swagger-ui .overflow-x-scroll-l{overflow-x:scroll}.swagger-ui .overflow-x-auto-l{overflow-x:auto}.swagger-ui .overflow-y-visible-l{overflow-y:visible}.swagger-ui .overflow-y-hidden-l{overflow-y:hidden}.swagger-ui .overflow-y-scroll-l{overflow-y:scroll}.swagger-ui .overflow-y-auto-l{overflow-y:auto}}.swagger-ui .static{position:static}.swagger-ui .relative{position:relative}.swagger-ui .absolute{position:absolute}.swagger-ui .fixed{position:fixed}@media screen and (min-width:30em){.swagger-ui .static-ns{position:static}.swagger-ui .relative-ns{position:relative}.swagger-ui .absolute-ns{position:absolute}.swagger-ui .fixed-ns{position:fixed}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .static-m{position:static}.swagger-ui .relative-m{position:relative}.swagger-ui .absolute-m{position:absolute}.swagger-ui .fixed-m{position:fixed}}@media screen and (min-width:60em){.swagger-ui .static-l{position:static}.swagger-ui .relative-l{position:relative}.swagger-ui .absolute-l{position:absolute}.swagger-ui .fixed-l{position:fixed}}.swagger-ui .o-100{opacity:1}.swagger-ui .o-90{opacity:.9}.swagger-ui .o-80{opacity:.8}.swagger-ui .o-70{opacity:.7}.swagger-ui .o-60{opacity:.6}.swagger-ui .o-50{opacity:.5}.swagger-ui .o-40{opacity:.4}.swagger-ui .o-30{opacity:.3}.swagger-ui .o-20{opacity:.2}.swagger-ui .o-10{opacity:.1}.swagger-ui .o-05{opacity:.05}.swagger-ui .o-025{opacity:.025}.swagger-ui .o-0{opacity:0}.swagger-ui .rotate-45{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swagger-ui .rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.swagger-ui .rotate-135{-webkit-transform:rotate(135deg);transform:rotate(135deg)}.swagger-ui .rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.swagger-ui .rotate-225{-webkit-transform:rotate(225deg);transform:rotate(225deg)}.swagger-ui .rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.swagger-ui .rotate-315{-webkit-transform:rotate(315deg);transform:rotate(315deg)}@media screen and (min-width:30em){.swagger-ui .rotate-45-ns{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swagger-ui .rotate-90-ns{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.swagger-ui .rotate-135-ns{-webkit-transform:rotate(135deg);transform:rotate(135deg)}.swagger-ui .rotate-180-ns{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.swagger-ui .rotate-225-ns{-webkit-transform:rotate(225deg);transform:rotate(225deg)}.swagger-ui .rotate-270-ns{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.swagger-ui .rotate-315-ns{-webkit-transform:rotate(315deg);transform:rotate(315deg)}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .rotate-45-m{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swagger-ui .rotate-90-m{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.swagger-ui .rotate-135-m{-webkit-transform:rotate(135deg);transform:rotate(135deg)}.swagger-ui .rotate-180-m{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.swagger-ui .rotate-225-m{-webkit-transform:rotate(225deg);transform:rotate(225deg)}.swagger-ui .rotate-270-m{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.swagger-ui .rotate-315-m{-webkit-transform:rotate(315deg);transform:rotate(315deg)}}@media screen and (min-width:60em){.swagger-ui .rotate-45-l{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swagger-ui .rotate-90-l{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.swagger-ui .rotate-135-l{-webkit-transform:rotate(135deg);transform:rotate(135deg)}.swagger-ui .rotate-180-l{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.swagger-ui .rotate-225-l{-webkit-transform:rotate(225deg);transform:rotate(225deg)}.swagger-ui .rotate-270-l{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.swagger-ui .rotate-315-l{-webkit-transform:rotate(315deg);transform:rotate(315deg)}}.swagger-ui .black-90{color:rgba(0,0,0,.9)}.swagger-ui .black-80{color:rgba(0,0,0,.8)}.swagger-ui .black-70{color:rgba(0,0,0,.7)}.swagger-ui .black-60{color:rgba(0,0,0,.6)}.swagger-ui .black-50{color:rgba(0,0,0,.5)}.swagger-ui .black-40{color:rgba(0,0,0,.4)}.swagger-ui .black-30{color:rgba(0,0,0,.3)}.swagger-ui .black-20{color:rgba(0,0,0,.2)}.swagger-ui .black-10{color:rgba(0,0,0,.1)}.swagger-ui .black-05{color:rgba(0,0,0,.05)}.swagger-ui .white-90{color:hsla(0,0%,100%,.9)}.swagger-ui .white-80{color:hsla(0,0%,100%,.8)}.swagger-ui .white-70{color:hsla(0,0%,100%,.7)}.swagger-ui .white-60{color:hsla(0,0%,100%,.6)}.swagger-ui .white-50{color:hsla(0,0%,100%,.5)}.swagger-ui .white-40{color:hsla(0,0%,100%,.4)}.swagger-ui .white-30{color:hsla(0,0%,100%,.3)}.swagger-ui .white-20{color:hsla(0,0%,100%,.2)}.swagger-ui .white-10{color:hsla(0,0%,100%,.1)}.swagger-ui .black{color:#000}.swagger-ui .near-black{color:#111}.swagger-ui .dark-gray{color:#333}.swagger-ui .mid-gray{color:#555}.swagger-ui .gray{color:#777}.swagger-ui .silver{color:#999}.swagger-ui .light-silver{color:#aaa}.swagger-ui .moon-gray{color:#ccc}.swagger-ui .light-gray{color:#eee}.swagger-ui .near-white{color:#f4f4f4}.swagger-ui .white{color:#fff}.swagger-ui .dark-red{color:#e7040f}.swagger-ui .red{color:#ff4136}.swagger-ui .light-red{color:#ff725c}.swagger-ui .orange{color:#ff6300}.swagger-ui .gold{color:#ffb700}.swagger-ui .yellow{color:gold}.swagger-ui .light-yellow{color:#fbf1a9}.swagger-ui .purple{color:#5e2ca5}.swagger-ui .light-purple{color:#a463f2}.swagger-ui .dark-pink{color:#d5008f}.swagger-ui .hot-pink{color:#ff41b4}.swagger-ui .pink{color:#ff80cc}.swagger-ui .light-pink{color:#ffa3d7}.swagger-ui .dark-green{color:#137752}.swagger-ui .green{color:#19a974}.swagger-ui .light-green{color:#9eebcf}.swagger-ui .navy{color:#001b44}.swagger-ui .dark-blue{color:#00449e}.swagger-ui .blue{color:#357edd}.swagger-ui .light-blue{color:#96ccff}.swagger-ui .lightest-blue{color:#cdecff}.swagger-ui .washed-blue{color:#f6fffe}.swagger-ui .washed-green{color:#e8fdf5}.swagger-ui .washed-yellow{color:#fffceb}.swagger-ui .washed-red{color:#ffdfdf}.swagger-ui .color-inherit{color:inherit}.swagger-ui .bg-black-90{background-color:rgba(0,0,0,.9)}.swagger-ui .bg-black-80{background-color:rgba(0,0,0,.8)}.swagger-ui .bg-black-70{background-color:rgba(0,0,0,.7)}.swagger-ui .bg-black-60{background-color:rgba(0,0,0,.6)}.swagger-ui .bg-black-50{background-color:rgba(0,0,0,.5)}.swagger-ui .bg-black-40{background-color:rgba(0,0,0,.4)}.swagger-ui .bg-black-30{background-color:rgba(0,0,0,.3)}.swagger-ui .bg-black-20{background-color:rgba(0,0,0,.2)}.swagger-ui .bg-black-10{background-color:rgba(0,0,0,.1)}.swagger-ui .bg-black-05{background-color:rgba(0,0,0,.05)}.swagger-ui .bg-white-90{background-color:hsla(0,0%,100%,.9)}.swagger-ui .bg-white-80{background-color:hsla(0,0%,100%,.8)}.swagger-ui .bg-white-70{background-color:hsla(0,0%,100%,.7)}.swagger-ui .bg-white-60{background-color:hsla(0,0%,100%,.6)}.swagger-ui .bg-white-50{background-color:hsla(0,0%,100%,.5)}.swagger-ui .bg-white-40{background-color:hsla(0,0%,100%,.4)}.swagger-ui .bg-white-30{background-color:hsla(0,0%,100%,.3)}.swagger-ui .bg-white-20{background-color:hsla(0,0%,100%,.2)}.swagger-ui .bg-white-10{background-color:hsla(0,0%,100%,.1)}.swagger-ui .bg-black{background-color:#000}.swagger-ui .bg-near-black{background-color:#111}.swagger-ui .bg-dark-gray{background-color:#333}.swagger-ui .bg-mid-gray{background-color:#555}.swagger-ui .bg-gray{background-color:#777}.swagger-ui .bg-silver{background-color:#999}.swagger-ui .bg-light-silver{background-color:#aaa}.swagger-ui .bg-moon-gray{background-color:#ccc}.swagger-ui .bg-light-gray{background-color:#eee}.swagger-ui .bg-near-white{background-color:#f4f4f4}.swagger-ui .bg-white{background-color:#fff}.swagger-ui .bg-transparent{background-color:transparent}.swagger-ui .bg-dark-red{background-color:#e7040f}.swagger-ui .bg-red{background-color:#ff4136}.swagger-ui .bg-light-red{background-color:#ff725c}.swagger-ui .bg-orange{background-color:#ff6300}.swagger-ui .bg-gold{background-color:#ffb700}.swagger-ui .bg-yellow{background-color:gold}.swagger-ui .bg-light-yellow{background-color:#fbf1a9}.swagger-ui .bg-purple{background-color:#5e2ca5}.swagger-ui .bg-light-purple{background-color:#a463f2}.swagger-ui .bg-dark-pink{background-color:#d5008f}.swagger-ui .bg-hot-pink{background-color:#ff41b4}.swagger-ui .bg-pink{background-color:#ff80cc}.swagger-ui .bg-light-pink{background-color:#ffa3d7}.swagger-ui .bg-dark-green{background-color:#137752}.swagger-ui .bg-green{background-color:#19a974}.swagger-ui .bg-light-green{background-color:#9eebcf}.swagger-ui .bg-navy{background-color:#001b44}.swagger-ui .bg-dark-blue{background-color:#00449e}.swagger-ui .bg-blue{background-color:#357edd}.swagger-ui .bg-light-blue{background-color:#96ccff}.swagger-ui .bg-lightest-blue{background-color:#cdecff}.swagger-ui .bg-washed-blue{background-color:#f6fffe}.swagger-ui .bg-washed-green{background-color:#e8fdf5}.swagger-ui .bg-washed-yellow{background-color:#fffceb}.swagger-ui .bg-washed-red{background-color:#ffdfdf}.swagger-ui .bg-inherit{background-color:inherit}.swagger-ui .hover-black:focus,.swagger-ui .hover-black:hover{color:#000}.swagger-ui .hover-near-black:focus,.swagger-ui .hover-near-black:hover{color:#111}.swagger-ui .hover-dark-gray:focus,.swagger-ui .hover-dark-gray:hover{color:#333}.swagger-ui .hover-mid-gray:focus,.swagger-ui .hover-mid-gray:hover{color:#555}.swagger-ui .hover-gray:focus,.swagger-ui .hover-gray:hover{color:#777}.swagger-ui .hover-silver:focus,.swagger-ui .hover-silver:hover{color:#999}.swagger-ui .hover-light-silver:focus,.swagger-ui .hover-light-silver:hover{color:#aaa}.swagger-ui .hover-moon-gray:focus,.swagger-ui .hover-moon-gray:hover{color:#ccc}.swagger-ui .hover-light-gray:focus,.swagger-ui .hover-light-gray:hover{color:#eee}.swagger-ui .hover-near-white:focus,.swagger-ui .hover-near-white:hover{color:#f4f4f4}.swagger-ui .hover-white:focus,.swagger-ui .hover-white:hover{color:#fff}.swagger-ui .hover-black-90:focus,.swagger-ui .hover-black-90:hover{color:rgba(0,0,0,.9)}.swagger-ui .hover-black-80:focus,.swagger-ui .hover-black-80:hover{color:rgba(0,0,0,.8)}.swagger-ui .hover-black-70:focus,.swagger-ui .hover-black-70:hover{color:rgba(0,0,0,.7)}.swagger-ui .hover-black-60:focus,.swagger-ui .hover-black-60:hover{color:rgba(0,0,0,.6)}.swagger-ui .hover-black-50:focus,.swagger-ui .hover-black-50:hover{color:rgba(0,0,0,.5)}.swagger-ui .hover-black-40:focus,.swagger-ui .hover-black-40:hover{color:rgba(0,0,0,.4)}.swagger-ui .hover-black-30:focus,.swagger-ui .hover-black-30:hover{color:rgba(0,0,0,.3)}.swagger-ui .hover-black-20:focus,.swagger-ui .hover-black-20:hover{color:rgba(0,0,0,.2)}.swagger-ui .hover-black-10:focus,.swagger-ui .hover-black-10:hover{color:rgba(0,0,0,.1)}.swagger-ui .hover-white-90:focus,.swagger-ui .hover-white-90:hover{color:hsla(0,0%,100%,.9)}.swagger-ui .hover-white-80:focus,.swagger-ui .hover-white-80:hover{color:hsla(0,0%,100%,.8)}.swagger-ui .hover-white-70:focus,.swagger-ui .hover-white-70:hover{color:hsla(0,0%,100%,.7)}.swagger-ui .hover-white-60:focus,.swagger-ui .hover-white-60:hover{color:hsla(0,0%,100%,.6)}.swagger-ui .hover-white-50:focus,.swagger-ui .hover-white-50:hover{color:hsla(0,0%,100%,.5)}.swagger-ui .hover-white-40:focus,.swagger-ui .hover-white-40:hover{color:hsla(0,0%,100%,.4)}.swagger-ui .hover-white-30:focus,.swagger-ui .hover-white-30:hover{color:hsla(0,0%,100%,.3)}.swagger-ui .hover-white-20:focus,.swagger-ui .hover-white-20:hover{color:hsla(0,0%,100%,.2)}.swagger-ui .hover-white-10:focus,.swagger-ui .hover-white-10:hover{color:hsla(0,0%,100%,.1)}.swagger-ui .hover-inherit:focus,.swagger-ui .hover-inherit:hover{color:inherit}.swagger-ui .hover-bg-black:focus,.swagger-ui .hover-bg-black:hover{background-color:#000}.swagger-ui .hover-bg-near-black:focus,.swagger-ui .hover-bg-near-black:hover{background-color:#111}.swagger-ui .hover-bg-dark-gray:focus,.swagger-ui .hover-bg-dark-gray:hover{background-color:#333}.swagger-ui .hover-bg-mid-gray:focus,.swagger-ui .hover-bg-mid-gray:hover{background-color:#555}.swagger-ui .hover-bg-gray:focus,.swagger-ui .hover-bg-gray:hover{background-color:#777}.swagger-ui .hover-bg-silver:focus,.swagger-ui .hover-bg-silver:hover{background-color:#999}.swagger-ui .hover-bg-light-silver:focus,.swagger-ui .hover-bg-light-silver:hover{background-color:#aaa}.swagger-ui .hover-bg-moon-gray:focus,.swagger-ui .hover-bg-moon-gray:hover{background-color:#ccc}.swagger-ui .hover-bg-light-gray:focus,.swagger-ui .hover-bg-light-gray:hover{background-color:#eee}.swagger-ui .hover-bg-near-white:focus,.swagger-ui .hover-bg-near-white:hover{background-color:#f4f4f4}.swagger-ui .hover-bg-white:focus,.swagger-ui .hover-bg-white:hover{background-color:#fff}.swagger-ui .hover-bg-transparent:focus,.swagger-ui .hover-bg-transparent:hover{background-color:transparent}.swagger-ui .hover-bg-black-90:focus,.swagger-ui .hover-bg-black-90:hover{background-color:rgba(0,0,0,.9)}.swagger-ui .hover-bg-black-80:focus,.swagger-ui .hover-bg-black-80:hover{background-color:rgba(0,0,0,.8)}.swagger-ui .hover-bg-black-70:focus,.swagger-ui .hover-bg-black-70:hover{background-color:rgba(0,0,0,.7)}.swagger-ui .hover-bg-black-60:focus,.swagger-ui .hover-bg-black-60:hover{background-color:rgba(0,0,0,.6)}.swagger-ui .hover-bg-black-50:focus,.swagger-ui .hover-bg-black-50:hover{background-color:rgba(0,0,0,.5)}.swagger-ui .hover-bg-black-40:focus,.swagger-ui .hover-bg-black-40:hover{background-color:rgba(0,0,0,.4)}.swagger-ui .hover-bg-black-30:focus,.swagger-ui .hover-bg-black-30:hover{background-color:rgba(0,0,0,.3)}.swagger-ui .hover-bg-black-20:focus,.swagger-ui .hover-bg-black-20:hover{background-color:rgba(0,0,0,.2)}.swagger-ui .hover-bg-black-10:focus,.swagger-ui .hover-bg-black-10:hover{background-color:rgba(0,0,0,.1)}.swagger-ui .hover-bg-white-90:focus,.swagger-ui .hover-bg-white-90:hover{background-color:hsla(0,0%,100%,.9)}.swagger-ui .hover-bg-white-80:focus,.swagger-ui .hover-bg-white-80:hover{background-color:hsla(0,0%,100%,.8)}.swagger-ui .hover-bg-white-70:focus,.swagger-ui .hover-bg-white-70:hover{background-color:hsla(0,0%,100%,.7)}.swagger-ui .hover-bg-white-60:focus,.swagger-ui .hover-bg-white-60:hover{background-color:hsla(0,0%,100%,.6)}.swagger-ui .hover-bg-white-50:focus,.swagger-ui .hover-bg-white-50:hover{background-color:hsla(0,0%,100%,.5)}.swagger-ui .hover-bg-white-40:focus,.swagger-ui .hover-bg-white-40:hover{background-color:hsla(0,0%,100%,.4)}.swagger-ui .hover-bg-white-30:focus,.swagger-ui .hover-bg-white-30:hover{background-color:hsla(0,0%,100%,.3)}.swagger-ui .hover-bg-white-20:focus,.swagger-ui .hover-bg-white-20:hover{background-color:hsla(0,0%,100%,.2)}.swagger-ui .hover-bg-white-10:focus,.swagger-ui .hover-bg-white-10:hover{background-color:hsla(0,0%,100%,.1)}.swagger-ui .hover-dark-red:focus,.swagger-ui .hover-dark-red:hover{color:#e7040f}.swagger-ui .hover-red:focus,.swagger-ui .hover-red:hover{color:#ff4136}.swagger-ui .hover-light-red:focus,.swagger-ui .hover-light-red:hover{color:#ff725c}.swagger-ui .hover-orange:focus,.swagger-ui .hover-orange:hover{color:#ff6300}.swagger-ui .hover-gold:focus,.swagger-ui .hover-gold:hover{color:#ffb700}.swagger-ui .hover-yellow:focus,.swagger-ui .hover-yellow:hover{color:gold}.swagger-ui .hover-light-yellow:focus,.swagger-ui .hover-light-yellow:hover{color:#fbf1a9}.swagger-ui .hover-purple:focus,.swagger-ui .hover-purple:hover{color:#5e2ca5}.swagger-ui .hover-light-purple:focus,.swagger-ui .hover-light-purple:hover{color:#a463f2}.swagger-ui .hover-dark-pink:focus,.swagger-ui .hover-dark-pink:hover{color:#d5008f}.swagger-ui .hover-hot-pink:focus,.swagger-ui .hover-hot-pink:hover{color:#ff41b4}.swagger-ui .hover-pink:focus,.swagger-ui .hover-pink:hover{color:#ff80cc}.swagger-ui .hover-light-pink:focus,.swagger-ui .hover-light-pink:hover{color:#ffa3d7}.swagger-ui .hover-dark-green:focus,.swagger-ui .hover-dark-green:hover{color:#137752}.swagger-ui .hover-green:focus,.swagger-ui .hover-green:hover{color:#19a974}.swagger-ui .hover-light-green:focus,.swagger-ui .hover-light-green:hover{color:#9eebcf}.swagger-ui .hover-navy:focus,.swagger-ui .hover-navy:hover{color:#001b44}.swagger-ui .hover-dark-blue:focus,.swagger-ui .hover-dark-blue:hover{color:#00449e}.swagger-ui .hover-blue:focus,.swagger-ui .hover-blue:hover{color:#357edd}.swagger-ui .hover-light-blue:focus,.swagger-ui .hover-light-blue:hover{color:#96ccff}.swagger-ui .hover-lightest-blue:focus,.swagger-ui .hover-lightest-blue:hover{color:#cdecff}.swagger-ui .hover-washed-blue:focus,.swagger-ui .hover-washed-blue:hover{color:#f6fffe}.swagger-ui .hover-washed-green:focus,.swagger-ui .hover-washed-green:hover{color:#e8fdf5}.swagger-ui .hover-washed-yellow:focus,.swagger-ui .hover-washed-yellow:hover{color:#fffceb}.swagger-ui .hover-washed-red:focus,.swagger-ui .hover-washed-red:hover{color:#ffdfdf}.swagger-ui .hover-bg-dark-red:focus,.swagger-ui .hover-bg-dark-red:hover{background-color:#e7040f}.swagger-ui .hover-bg-red:focus,.swagger-ui .hover-bg-red:hover{background-color:#ff4136}.swagger-ui .hover-bg-light-red:focus,.swagger-ui .hover-bg-light-red:hover{background-color:#ff725c}.swagger-ui .hover-bg-orange:focus,.swagger-ui .hover-bg-orange:hover{background-color:#ff6300}.swagger-ui .hover-bg-gold:focus,.swagger-ui .hover-bg-gold:hover{background-color:#ffb700}.swagger-ui .hover-bg-yellow:focus,.swagger-ui .hover-bg-yellow:hover{background-color:gold}.swagger-ui .hover-bg-light-yellow:focus,.swagger-ui .hover-bg-light-yellow:hover{background-color:#fbf1a9}.swagger-ui .hover-bg-purple:focus,.swagger-ui .hover-bg-purple:hover{background-color:#5e2ca5}.swagger-ui .hover-bg-light-purple:focus,.swagger-ui .hover-bg-light-purple:hover{background-color:#a463f2}.swagger-ui .hover-bg-dark-pink:focus,.swagger-ui .hover-bg-dark-pink:hover{background-color:#d5008f}.swagger-ui .hover-bg-hot-pink:focus,.swagger-ui .hover-bg-hot-pink:hover{background-color:#ff41b4}.swagger-ui .hover-bg-pink:focus,.swagger-ui .hover-bg-pink:hover{background-color:#ff80cc}.swagger-ui .hover-bg-light-pink:focus,.swagger-ui .hover-bg-light-pink:hover{background-color:#ffa3d7}.swagger-ui .hover-bg-dark-green:focus,.swagger-ui .hover-bg-dark-green:hover{background-color:#137752}.swagger-ui .hover-bg-green:focus,.swagger-ui .hover-bg-green:hover{background-color:#19a974}.swagger-ui .hover-bg-light-green:focus,.swagger-ui .hover-bg-light-green:hover{background-color:#9eebcf}.swagger-ui .hover-bg-navy:focus,.swagger-ui .hover-bg-navy:hover{background-color:#001b44}.swagger-ui .hover-bg-dark-blue:focus,.swagger-ui .hover-bg-dark-blue:hover{background-color:#00449e}.swagger-ui .hover-bg-blue:focus,.swagger-ui .hover-bg-blue:hover{background-color:#357edd}.swagger-ui .hover-bg-light-blue:focus,.swagger-ui .hover-bg-light-blue:hover{background-color:#96ccff}.swagger-ui .hover-bg-lightest-blue:focus,.swagger-ui .hover-bg-lightest-blue:hover{background-color:#cdecff}.swagger-ui .hover-bg-washed-blue:focus,.swagger-ui .hover-bg-washed-blue:hover{background-color:#f6fffe}.swagger-ui .hover-bg-washed-green:focus,.swagger-ui .hover-bg-washed-green:hover{background-color:#e8fdf5}.swagger-ui .hover-bg-washed-yellow:focus,.swagger-ui .hover-bg-washed-yellow:hover{background-color:#fffceb}.swagger-ui .hover-bg-washed-red:focus,.swagger-ui .hover-bg-washed-red:hover{background-color:#ffdfdf}.swagger-ui .hover-bg-inherit:focus,.swagger-ui .hover-bg-inherit:hover{background-color:inherit}.swagger-ui .pa0{padding:0}.swagger-ui .pa1{padding:.25rem}.swagger-ui .pa2{padding:.5rem}.swagger-ui .pa3{padding:1rem}.swagger-ui .pa4{padding:2rem}.swagger-ui .pa5{padding:4rem}.swagger-ui .pa6{padding:8rem}.swagger-ui .pa7{padding:16rem}.swagger-ui .pl0{padding-left:0}.swagger-ui .pl1{padding-left:.25rem}.swagger-ui .pl2{padding-left:.5rem}.swagger-ui .pl3{padding-left:1rem}.swagger-ui .pl4{padding-left:2rem}.swagger-ui .pl5{padding-left:4rem}.swagger-ui .pl6{padding-left:8rem}.swagger-ui .pl7{padding-left:16rem}.swagger-ui .pr0{padding-right:0}.swagger-ui .pr1{padding-right:.25rem}.swagger-ui .pr2{padding-right:.5rem}.swagger-ui .pr3{padding-right:1rem}.swagger-ui .pr4{padding-right:2rem}.swagger-ui .pr5{padding-right:4rem}.swagger-ui .pr6{padding-right:8rem}.swagger-ui .pr7{padding-right:16rem}.swagger-ui .pb0{padding-bottom:0}.swagger-ui .pb1{padding-bottom:.25rem}.swagger-ui .pb2{padding-bottom:.5rem}.swagger-ui .pb3{padding-bottom:1rem}.swagger-ui .pb4{padding-bottom:2rem}.swagger-ui .pb5{padding-bottom:4rem}.swagger-ui .pb6{padding-bottom:8rem}.swagger-ui .pb7{padding-bottom:16rem}.swagger-ui .pt0{padding-top:0}.swagger-ui .pt1{padding-top:.25rem}.swagger-ui .pt2{padding-top:.5rem}.swagger-ui .pt3{padding-top:1rem}.swagger-ui .pt4{padding-top:2rem}.swagger-ui .pt5{padding-top:4rem}.swagger-ui .pt6{padding-top:8rem}.swagger-ui .pt7{padding-top:16rem}.swagger-ui .pv0{padding-top:0;padding-bottom:0}.swagger-ui .pv1{padding-top:.25rem;padding-bottom:.25rem}.swagger-ui .pv2{padding-top:.5rem;padding-bottom:.5rem}.swagger-ui .pv3{padding-top:1rem;padding-bottom:1rem}.swagger-ui .pv4{padding-top:2rem;padding-bottom:2rem}.swagger-ui .pv5{padding-top:4rem;padding-bottom:4rem}.swagger-ui .pv6{padding-top:8rem;padding-bottom:8rem}.swagger-ui .pv7{padding-top:16rem;padding-bottom:16rem}.swagger-ui .ph0{padding-left:0;padding-right:0}.swagger-ui .ph1{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0{margin:0}.swagger-ui .ma1{margin:.25rem}.swagger-ui .ma2{margin:.5rem}.swagger-ui .ma3{margin:1rem}.swagger-ui .ma4{margin:2rem}.swagger-ui .ma5{margin:4rem}.swagger-ui .ma6{margin:8rem}.swagger-ui .ma7{margin:16rem}.swagger-ui .ml0{margin-left:0}.swagger-ui .ml1{margin-left:.25rem}.swagger-ui .ml2{margin-left:.5rem}.swagger-ui .ml3{margin-left:1rem}.swagger-ui .ml4{margin-left:2rem}.swagger-ui .ml5{margin-left:4rem}.swagger-ui .ml6{margin-left:8rem}.swagger-ui .ml7{margin-left:16rem}.swagger-ui .mr0{margin-right:0}.swagger-ui .mr1{margin-right:.25rem}.swagger-ui .mr2{margin-right:.5rem}.swagger-ui .mr3{margin-right:1rem}.swagger-ui .mr4{margin-right:2rem}.swagger-ui .mr5{margin-right:4rem}.swagger-ui .mr6{margin-right:8rem}.swagger-ui .mr7{margin-right:16rem}.swagger-ui .mb0{margin-bottom:0}.swagger-ui .mb1{margin-bottom:.25rem}.swagger-ui .mb2{margin-bottom:.5rem}.swagger-ui .mb3{margin-bottom:1rem}.swagger-ui .mb4{margin-bottom:2rem}.swagger-ui .mb5{margin-bottom:4rem}.swagger-ui .mb6{margin-bottom:8rem}.swagger-ui .mb7{margin-bottom:16rem}.swagger-ui .mt0{margin-top:0}.swagger-ui .mt1{margin-top:.25rem}.swagger-ui .mt2{margin-top:.5rem}.swagger-ui .mt3{margin-top:1rem}.swagger-ui .mt4{margin-top:2rem}.swagger-ui .mt5{margin-top:4rem}.swagger-ui .mt6{margin-top:8rem}.swagger-ui .mt7{margin-top:16rem}.swagger-ui .mv0{margin-top:0;margin-bottom:0}.swagger-ui .mv1{margin-top:.25rem;margin-bottom:.25rem}.swagger-ui .mv2{margin-top:.5rem;margin-bottom:.5rem}.swagger-ui .mv3{margin-top:1rem;margin-bottom:1rem}.swagger-ui .mv4{margin-top:2rem;margin-bottom:2rem}.swagger-ui .mv5{margin-top:4rem;margin-bottom:4rem}.swagger-ui .mv6{margin-top:8rem;margin-bottom:8rem}.swagger-ui .mv7{margin-top:16rem;margin-bottom:16rem}.swagger-ui .mh0{margin-left:0;margin-right:0}.swagger-ui .mh1{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7{margin-left:16rem;margin-right:16rem}@media screen and (min-width:30em){.swagger-ui .pa0-ns{padding:0}.swagger-ui .pa1-ns{padding:.25rem}.swagger-ui .pa2-ns{padding:.5rem}.swagger-ui .pa3-ns{padding:1rem}.swagger-ui .pa4-ns{padding:2rem}.swagger-ui .pa5-ns{padding:4rem}.swagger-ui .pa6-ns{padding:8rem}.swagger-ui .pa7-ns{padding:16rem}.swagger-ui .pl0-ns{padding-left:0}.swagger-ui .pl1-ns{padding-left:.25rem}.swagger-ui .pl2-ns{padding-left:.5rem}.swagger-ui .pl3-ns{padding-left:1rem}.swagger-ui .pl4-ns{padding-left:2rem}.swagger-ui .pl5-ns{padding-left:4rem}.swagger-ui .pl6-ns{padding-left:8rem}.swagger-ui .pl7-ns{padding-left:16rem}.swagger-ui .pr0-ns{padding-right:0}.swagger-ui .pr1-ns{padding-right:.25rem}.swagger-ui .pr2-ns{padding-right:.5rem}.swagger-ui .pr3-ns{padding-right:1rem}.swagger-ui .pr4-ns{padding-right:2rem}.swagger-ui .pr5-ns{padding-right:4rem}.swagger-ui .pr6-ns{padding-right:8rem}.swagger-ui .pr7-ns{padding-right:16rem}.swagger-ui .pb0-ns{padding-bottom:0}.swagger-ui .pb1-ns{padding-bottom:.25rem}.swagger-ui .pb2-ns{padding-bottom:.5rem}.swagger-ui .pb3-ns{padding-bottom:1rem}.swagger-ui .pb4-ns{padding-bottom:2rem}.swagger-ui .pb5-ns{padding-bottom:4rem}.swagger-ui .pb6-ns{padding-bottom:8rem}.swagger-ui .pb7-ns{padding-bottom:16rem}.swagger-ui .pt0-ns{padding-top:0}.swagger-ui .pt1-ns{padding-top:.25rem}.swagger-ui .pt2-ns{padding-top:.5rem}.swagger-ui .pt3-ns{padding-top:1rem}.swagger-ui .pt4-ns{padding-top:2rem}.swagger-ui .pt5-ns{padding-top:4rem}.swagger-ui .pt6-ns{padding-top:8rem}.swagger-ui .pt7-ns{padding-top:16rem}.swagger-ui .pv0-ns{padding-top:0;padding-bottom:0}.swagger-ui .pv1-ns{padding-top:.25rem;padding-bottom:.25rem}.swagger-ui .pv2-ns{padding-top:.5rem;padding-bottom:.5rem}.swagger-ui .pv3-ns{padding-top:1rem;padding-bottom:1rem}.swagger-ui .pv4-ns{padding-top:2rem;padding-bottom:2rem}.swagger-ui .pv5-ns{padding-top:4rem;padding-bottom:4rem}.swagger-ui .pv6-ns{padding-top:8rem;padding-bottom:8rem}.swagger-ui .pv7-ns{padding-top:16rem;padding-bottom:16rem}.swagger-ui .ph0-ns{padding-left:0;padding-right:0}.swagger-ui .ph1-ns{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2-ns{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3-ns{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4-ns{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5-ns{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6-ns{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7-ns{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0-ns{margin:0}.swagger-ui .ma1-ns{margin:.25rem}.swagger-ui .ma2-ns{margin:.5rem}.swagger-ui .ma3-ns{margin:1rem}.swagger-ui .ma4-ns{margin:2rem}.swagger-ui .ma5-ns{margin:4rem}.swagger-ui .ma6-ns{margin:8rem}.swagger-ui .ma7-ns{margin:16rem}.swagger-ui .ml0-ns{margin-left:0}.swagger-ui .ml1-ns{margin-left:.25rem}.swagger-ui .ml2-ns{margin-left:.5rem}.swagger-ui .ml3-ns{margin-left:1rem}.swagger-ui .ml4-ns{margin-left:2rem}.swagger-ui .ml5-ns{margin-left:4rem}.swagger-ui .ml6-ns{margin-left:8rem}.swagger-ui .ml7-ns{margin-left:16rem}.swagger-ui .mr0-ns{margin-right:0}.swagger-ui .mr1-ns{margin-right:.25rem}.swagger-ui .mr2-ns{margin-right:.5rem}.swagger-ui .mr3-ns{margin-right:1rem}.swagger-ui .mr4-ns{margin-right:2rem}.swagger-ui .mr5-ns{margin-right:4rem}.swagger-ui .mr6-ns{margin-right:8rem}.swagger-ui .mr7-ns{margin-right:16rem}.swagger-ui .mb0-ns{margin-bottom:0}.swagger-ui .mb1-ns{margin-bottom:.25rem}.swagger-ui .mb2-ns{margin-bottom:.5rem}.swagger-ui .mb3-ns{margin-bottom:1rem}.swagger-ui .mb4-ns{margin-bottom:2rem}.swagger-ui .mb5-ns{margin-bottom:4rem}.swagger-ui .mb6-ns{margin-bottom:8rem}.swagger-ui .mb7-ns{margin-bottom:16rem}.swagger-ui .mt0-ns{margin-top:0}.swagger-ui .mt1-ns{margin-top:.25rem}.swagger-ui .mt2-ns{margin-top:.5rem}.swagger-ui .mt3-ns{margin-top:1rem}.swagger-ui .mt4-ns{margin-top:2rem}.swagger-ui .mt5-ns{margin-top:4rem}.swagger-ui .mt6-ns{margin-top:8rem}.swagger-ui .mt7-ns{margin-top:16rem}.swagger-ui .mv0-ns{margin-top:0;margin-bottom:0}.swagger-ui .mv1-ns{margin-top:.25rem;margin-bottom:.25rem}.swagger-ui .mv2-ns{margin-top:.5rem;margin-bottom:.5rem}.swagger-ui .mv3-ns{margin-top:1rem;margin-bottom:1rem}.swagger-ui .mv4-ns{margin-top:2rem;margin-bottom:2rem}.swagger-ui .mv5-ns{margin-top:4rem;margin-bottom:4rem}.swagger-ui .mv6-ns{margin-top:8rem;margin-bottom:8rem}.swagger-ui .mv7-ns{margin-top:16rem;margin-bottom:16rem}.swagger-ui .mh0-ns{margin-left:0;margin-right:0}.swagger-ui .mh1-ns{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2-ns{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3-ns{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4-ns{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5-ns{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6-ns{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7-ns{margin-left:16rem;margin-right:16rem}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .pa0-m{padding:0}.swagger-ui .pa1-m{padding:.25rem}.swagger-ui .pa2-m{padding:.5rem}.swagger-ui .pa3-m{padding:1rem}.swagger-ui .pa4-m{padding:2rem}.swagger-ui .pa5-m{padding:4rem}.swagger-ui .pa6-m{padding:8rem}.swagger-ui .pa7-m{padding:16rem}.swagger-ui .pl0-m{padding-left:0}.swagger-ui .pl1-m{padding-left:.25rem}.swagger-ui .pl2-m{padding-left:.5rem}.swagger-ui .pl3-m{padding-left:1rem}.swagger-ui .pl4-m{padding-left:2rem}.swagger-ui .pl5-m{padding-left:4rem}.swagger-ui .pl6-m{padding-left:8rem}.swagger-ui .pl7-m{padding-left:16rem}.swagger-ui .pr0-m{padding-right:0}.swagger-ui .pr1-m{padding-right:.25rem}.swagger-ui .pr2-m{padding-right:.5rem}.swagger-ui .pr3-m{padding-right:1rem}.swagger-ui .pr4-m{padding-right:2rem}.swagger-ui .pr5-m{padding-right:4rem}.swagger-ui .pr6-m{padding-right:8rem}.swagger-ui .pr7-m{padding-right:16rem}.swagger-ui .pb0-m{padding-bottom:0}.swagger-ui .pb1-m{padding-bottom:.25rem}.swagger-ui .pb2-m{padding-bottom:.5rem}.swagger-ui .pb3-m{padding-bottom:1rem}.swagger-ui .pb4-m{padding-bottom:2rem}.swagger-ui .pb5-m{padding-bottom:4rem}.swagger-ui .pb6-m{padding-bottom:8rem}.swagger-ui .pb7-m{padding-bottom:16rem}.swagger-ui .pt0-m{padding-top:0}.swagger-ui .pt1-m{padding-top:.25rem}.swagger-ui .pt2-m{padding-top:.5rem}.swagger-ui .pt3-m{padding-top:1rem}.swagger-ui .pt4-m{padding-top:2rem}.swagger-ui .pt5-m{padding-top:4rem}.swagger-ui .pt6-m{padding-top:8rem}.swagger-ui .pt7-m{padding-top:16rem}.swagger-ui .pv0-m{padding-top:0;padding-bottom:0}.swagger-ui .pv1-m{padding-top:.25rem;padding-bottom:.25rem}.swagger-ui .pv2-m{padding-top:.5rem;padding-bottom:.5rem}.swagger-ui .pv3-m{padding-top:1rem;padding-bottom:1rem}.swagger-ui .pv4-m{padding-top:2rem;padding-bottom:2rem}.swagger-ui .pv5-m{padding-top:4rem;padding-bottom:4rem}.swagger-ui .pv6-m{padding-top:8rem;padding-bottom:8rem}.swagger-ui .pv7-m{padding-top:16rem;padding-bottom:16rem}.swagger-ui .ph0-m{padding-left:0;padding-right:0}.swagger-ui .ph1-m{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2-m{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3-m{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4-m{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5-m{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6-m{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7-m{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0-m{margin:0}.swagger-ui .ma1-m{margin:.25rem}.swagger-ui .ma2-m{margin:.5rem}.swagger-ui .ma3-m{margin:1rem}.swagger-ui .ma4-m{margin:2rem}.swagger-ui .ma5-m{margin:4rem}.swagger-ui .ma6-m{margin:8rem}.swagger-ui .ma7-m{margin:16rem}.swagger-ui .ml0-m{margin-left:0}.swagger-ui .ml1-m{margin-left:.25rem}.swagger-ui .ml2-m{margin-left:.5rem}.swagger-ui .ml3-m{margin-left:1rem}.swagger-ui .ml4-m{margin-left:2rem}.swagger-ui .ml5-m{margin-left:4rem}.swagger-ui .ml6-m{margin-left:8rem}.swagger-ui .ml7-m{margin-left:16rem}.swagger-ui .mr0-m{margin-right:0}.swagger-ui .mr1-m{margin-right:.25rem}.swagger-ui .mr2-m{margin-right:.5rem}.swagger-ui .mr3-m{margin-right:1rem}.swagger-ui .mr4-m{margin-right:2rem}.swagger-ui .mr5-m{margin-right:4rem}.swagger-ui .mr6-m{margin-right:8rem}.swagger-ui .mr7-m{margin-right:16rem}.swagger-ui .mb0-m{margin-bottom:0}.swagger-ui .mb1-m{margin-bottom:.25rem}.swagger-ui .mb2-m{margin-bottom:.5rem}.swagger-ui .mb3-m{margin-bottom:1rem}.swagger-ui .mb4-m{margin-bottom:2rem}.swagger-ui .mb5-m{margin-bottom:4rem}.swagger-ui .mb6-m{margin-bottom:8rem}.swagger-ui .mb7-m{margin-bottom:16rem}.swagger-ui .mt0-m{margin-top:0}.swagger-ui .mt1-m{margin-top:.25rem}.swagger-ui .mt2-m{margin-top:.5rem}.swagger-ui .mt3-m{margin-top:1rem}.swagger-ui .mt4-m{margin-top:2rem}.swagger-ui .mt5-m{margin-top:4rem}.swagger-ui .mt6-m{margin-top:8rem}.swagger-ui .mt7-m{margin-top:16rem}.swagger-ui .mv0-m{margin-top:0;margin-bottom:0}.swagger-ui .mv1-m{margin-top:.25rem;margin-bottom:.25rem}.swagger-ui .mv2-m{margin-top:.5rem;margin-bottom:.5rem}.swagger-ui .mv3-m{margin-top:1rem;margin-bottom:1rem}.swagger-ui .mv4-m{margin-top:2rem;margin-bottom:2rem}.swagger-ui .mv5-m{margin-top:4rem;margin-bottom:4rem}.swagger-ui .mv6-m{margin-top:8rem;margin-bottom:8rem}.swagger-ui .mv7-m{margin-top:16rem;margin-bottom:16rem}.swagger-ui .mh0-m{margin-left:0;margin-right:0}.swagger-ui .mh1-m{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2-m{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3-m{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4-m{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5-m{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6-m{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7-m{margin-left:16rem;margin-right:16rem}}@media screen and (min-width:60em){.swagger-ui .pa0-l{padding:0}.swagger-ui .pa1-l{padding:.25rem}.swagger-ui .pa2-l{padding:.5rem}.swagger-ui .pa3-l{padding:1rem}.swagger-ui .pa4-l{padding:2rem}.swagger-ui .pa5-l{padding:4rem}.swagger-ui .pa6-l{padding:8rem}.swagger-ui .pa7-l{padding:16rem}.swagger-ui .pl0-l{padding-left:0}.swagger-ui .pl1-l{padding-left:.25rem}.swagger-ui .pl2-l{padding-left:.5rem}.swagger-ui .pl3-l{padding-left:1rem}.swagger-ui .pl4-l{padding-left:2rem}.swagger-ui .pl5-l{padding-left:4rem}.swagger-ui .pl6-l{padding-left:8rem}.swagger-ui .pl7-l{padding-left:16rem}.swagger-ui .pr0-l{padding-right:0}.swagger-ui .pr1-l{padding-right:.25rem}.swagger-ui .pr2-l{padding-right:.5rem}.swagger-ui .pr3-l{padding-right:1rem}.swagger-ui .pr4-l{padding-right:2rem}.swagger-ui .pr5-l{padding-right:4rem}.swagger-ui .pr6-l{padding-right:8rem}.swagger-ui .pr7-l{padding-right:16rem}.swagger-ui .pb0-l{padding-bottom:0}.swagger-ui .pb1-l{padding-bottom:.25rem}.swagger-ui .pb2-l{padding-bottom:.5rem}.swagger-ui .pb3-l{padding-bottom:1rem}.swagger-ui .pb4-l{padding-bottom:2rem}.swagger-ui .pb5-l{padding-bottom:4rem}.swagger-ui .pb6-l{padding-bottom:8rem}.swagger-ui .pb7-l{padding-bottom:16rem}.swagger-ui .pt0-l{padding-top:0}.swagger-ui .pt1-l{padding-top:.25rem}.swagger-ui .pt2-l{padding-top:.5rem}.swagger-ui .pt3-l{padding-top:1rem}.swagger-ui .pt4-l{padding-top:2rem}.swagger-ui .pt5-l{padding-top:4rem}.swagger-ui .pt6-l{padding-top:8rem}.swagger-ui .pt7-l{padding-top:16rem}.swagger-ui .pv0-l{padding-top:0;padding-bottom:0}.swagger-ui .pv1-l{padding-top:.25rem;padding-bottom:.25rem}.swagger-ui .pv2-l{padding-top:.5rem;padding-bottom:.5rem}.swagger-ui .pv3-l{padding-top:1rem;padding-bottom:1rem}.swagger-ui .pv4-l{padding-top:2rem;padding-bottom:2rem}.swagger-ui .pv5-l{padding-top:4rem;padding-bottom:4rem}.swagger-ui .pv6-l{padding-top:8rem;padding-bottom:8rem}.swagger-ui .pv7-l{padding-top:16rem;padding-bottom:16rem}.swagger-ui .ph0-l{padding-left:0;padding-right:0}.swagger-ui .ph1-l{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2-l{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3-l{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4-l{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5-l{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6-l{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7-l{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0-l{margin:0}.swagger-ui .ma1-l{margin:.25rem}.swagger-ui .ma2-l{margin:.5rem}.swagger-ui .ma3-l{margin:1rem}.swagger-ui .ma4-l{margin:2rem}.swagger-ui .ma5-l{margin:4rem}.swagger-ui .ma6-l{margin:8rem}.swagger-ui .ma7-l{margin:16rem}.swagger-ui .ml0-l{margin-left:0}.swagger-ui .ml1-l{margin-left:.25rem}.swagger-ui .ml2-l{margin-left:.5rem}.swagger-ui .ml3-l{margin-left:1rem}.swagger-ui .ml4-l{margin-left:2rem}.swagger-ui .ml5-l{margin-left:4rem}.swagger-ui .ml6-l{margin-left:8rem}.swagger-ui .ml7-l{margin-left:16rem}.swagger-ui .mr0-l{margin-right:0}.swagger-ui .mr1-l{margin-right:.25rem}.swagger-ui .mr2-l{margin-right:.5rem}.swagger-ui .mr3-l{margin-right:1rem}.swagger-ui .mr4-l{margin-right:2rem}.swagger-ui .mr5-l{margin-right:4rem}.swagger-ui .mr6-l{margin-right:8rem}.swagger-ui .mr7-l{margin-right:16rem}.swagger-ui .mb0-l{margin-bottom:0}.swagger-ui .mb1-l{margin-bottom:.25rem}.swagger-ui .mb2-l{margin-bottom:.5rem}.swagger-ui .mb3-l{margin-bottom:1rem}.swagger-ui .mb4-l{margin-bottom:2rem}.swagger-ui .mb5-l{margin-bottom:4rem}.swagger-ui .mb6-l{margin-bottom:8rem}.swagger-ui .mb7-l{margin-bottom:16rem}.swagger-ui .mt0-l{margin-top:0}.swagger-ui .mt1-l{margin-top:.25rem}.swagger-ui .mt2-l{margin-top:.5rem}.swagger-ui .mt3-l{margin-top:1rem}.swagger-ui .mt4-l{margin-top:2rem}.swagger-ui .mt5-l{margin-top:4rem}.swagger-ui .mt6-l{margin-top:8rem}.swagger-ui .mt7-l{margin-top:16rem}.swagger-ui .mv0-l{margin-top:0;margin-bottom:0}.swagger-ui .mv1-l{margin-top:.25rem;margin-bottom:.25rem}.swagger-ui .mv2-l{margin-top:.5rem;margin-bottom:.5rem}.swagger-ui .mv3-l{margin-top:1rem;margin-bottom:1rem}.swagger-ui .mv4-l{margin-top:2rem;margin-bottom:2rem}.swagger-ui .mv5-l{margin-top:4rem;margin-bottom:4rem}.swagger-ui .mv6-l{margin-top:8rem;margin-bottom:8rem}.swagger-ui .mv7-l{margin-top:16rem;margin-bottom:16rem}.swagger-ui .mh0-l{margin-left:0;margin-right:0}.swagger-ui .mh1-l{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2-l{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3-l{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4-l{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5-l{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6-l{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7-l{margin-left:16rem;margin-right:16rem}}.swagger-ui .na1{margin:-.25rem}.swagger-ui .na2{margin:-.5rem}.swagger-ui .na3{margin:-1rem}.swagger-ui .na4{margin:-2rem}.swagger-ui .na5{margin:-4rem}.swagger-ui .na6{margin:-8rem}.swagger-ui .na7{margin:-16rem}.swagger-ui .nl1{margin-left:-.25rem}.swagger-ui .nl2{margin-left:-.5rem}.swagger-ui .nl3{margin-left:-1rem}.swagger-ui .nl4{margin-left:-2rem}.swagger-ui .nl5{margin-left:-4rem}.swagger-ui .nl6{margin-left:-8rem}.swagger-ui .nl7{margin-left:-16rem}.swagger-ui .nr1{margin-right:-.25rem}.swagger-ui .nr2{margin-right:-.5rem}.swagger-ui .nr3{margin-right:-1rem}.swagger-ui .nr4{margin-right:-2rem}.swagger-ui .nr5{margin-right:-4rem}.swagger-ui .nr6{margin-right:-8rem}.swagger-ui .nr7{margin-right:-16rem}.swagger-ui .nb1{margin-bottom:-.25rem}.swagger-ui .nb2{margin-bottom:-.5rem}.swagger-ui .nb3{margin-bottom:-1rem}.swagger-ui .nb4{margin-bottom:-2rem}.swagger-ui .nb5{margin-bottom:-4rem}.swagger-ui .nb6{margin-bottom:-8rem}.swagger-ui .nb7{margin-bottom:-16rem}.swagger-ui .nt1{margin-top:-.25rem}.swagger-ui .nt2{margin-top:-.5rem}.swagger-ui .nt3{margin-top:-1rem}.swagger-ui .nt4{margin-top:-2rem}.swagger-ui .nt5{margin-top:-4rem}.swagger-ui .nt6{margin-top:-8rem}.swagger-ui .nt7{margin-top:-16rem}@media screen and (min-width:30em){.swagger-ui .na1-ns{margin:-.25rem}.swagger-ui .na2-ns{margin:-.5rem}.swagger-ui .na3-ns{margin:-1rem}.swagger-ui .na4-ns{margin:-2rem}.swagger-ui .na5-ns{margin:-4rem}.swagger-ui .na6-ns{margin:-8rem}.swagger-ui .na7-ns{margin:-16rem}.swagger-ui .nl1-ns{margin-left:-.25rem}.swagger-ui .nl2-ns{margin-left:-.5rem}.swagger-ui .nl3-ns{margin-left:-1rem}.swagger-ui .nl4-ns{margin-left:-2rem}.swagger-ui .nl5-ns{margin-left:-4rem}.swagger-ui .nl6-ns{margin-left:-8rem}.swagger-ui .nl7-ns{margin-left:-16rem}.swagger-ui .nr1-ns{margin-right:-.25rem}.swagger-ui .nr2-ns{margin-right:-.5rem}.swagger-ui .nr3-ns{margin-right:-1rem}.swagger-ui .nr4-ns{margin-right:-2rem}.swagger-ui .nr5-ns{margin-right:-4rem}.swagger-ui .nr6-ns{margin-right:-8rem}.swagger-ui .nr7-ns{margin-right:-16rem}.swagger-ui .nb1-ns{margin-bottom:-.25rem}.swagger-ui .nb2-ns{margin-bottom:-.5rem}.swagger-ui .nb3-ns{margin-bottom:-1rem}.swagger-ui .nb4-ns{margin-bottom:-2rem}.swagger-ui .nb5-ns{margin-bottom:-4rem}.swagger-ui .nb6-ns{margin-bottom:-8rem}.swagger-ui .nb7-ns{margin-bottom:-16rem}.swagger-ui .nt1-ns{margin-top:-.25rem}.swagger-ui .nt2-ns{margin-top:-.5rem}.swagger-ui .nt3-ns{margin-top:-1rem}.swagger-ui .nt4-ns{margin-top:-2rem}.swagger-ui .nt5-ns{margin-top:-4rem}.swagger-ui .nt6-ns{margin-top:-8rem}.swagger-ui .nt7-ns{margin-top:-16rem}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .na1-m{margin:-.25rem}.swagger-ui .na2-m{margin:-.5rem}.swagger-ui .na3-m{margin:-1rem}.swagger-ui .na4-m{margin:-2rem}.swagger-ui .na5-m{margin:-4rem}.swagger-ui .na6-m{margin:-8rem}.swagger-ui .na7-m{margin:-16rem}.swagger-ui .nl1-m{margin-left:-.25rem}.swagger-ui .nl2-m{margin-left:-.5rem}.swagger-ui .nl3-m{margin-left:-1rem}.swagger-ui .nl4-m{margin-left:-2rem}.swagger-ui .nl5-m{margin-left:-4rem}.swagger-ui .nl6-m{margin-left:-8rem}.swagger-ui .nl7-m{margin-left:-16rem}.swagger-ui .nr1-m{margin-right:-.25rem}.swagger-ui .nr2-m{margin-right:-.5rem}.swagger-ui .nr3-m{margin-right:-1rem}.swagger-ui .nr4-m{margin-right:-2rem}.swagger-ui .nr5-m{margin-right:-4rem}.swagger-ui .nr6-m{margin-right:-8rem}.swagger-ui .nr7-m{margin-right:-16rem}.swagger-ui .nb1-m{margin-bottom:-.25rem}.swagger-ui .nb2-m{margin-bottom:-.5rem}.swagger-ui .nb3-m{margin-bottom:-1rem}.swagger-ui .nb4-m{margin-bottom:-2rem}.swagger-ui .nb5-m{margin-bottom:-4rem}.swagger-ui .nb6-m{margin-bottom:-8rem}.swagger-ui .nb7-m{margin-bottom:-16rem}.swagger-ui .nt1-m{margin-top:-.25rem}.swagger-ui .nt2-m{margin-top:-.5rem}.swagger-ui .nt3-m{margin-top:-1rem}.swagger-ui .nt4-m{margin-top:-2rem}.swagger-ui .nt5-m{margin-top:-4rem}.swagger-ui .nt6-m{margin-top:-8rem}.swagger-ui .nt7-m{margin-top:-16rem}}@media screen and (min-width:60em){.swagger-ui .na1-l{margin:-.25rem}.swagger-ui .na2-l{margin:-.5rem}.swagger-ui .na3-l{margin:-1rem}.swagger-ui .na4-l{margin:-2rem}.swagger-ui .na5-l{margin:-4rem}.swagger-ui .na6-l{margin:-8rem}.swagger-ui .na7-l{margin:-16rem}.swagger-ui .nl1-l{margin-left:-.25rem}.swagger-ui .nl2-l{margin-left:-.5rem}.swagger-ui .nl3-l{margin-left:-1rem}.swagger-ui .nl4-l{margin-left:-2rem}.swagger-ui .nl5-l{margin-left:-4rem}.swagger-ui .nl6-l{margin-left:-8rem}.swagger-ui .nl7-l{margin-left:-16rem}.swagger-ui .nr1-l{margin-right:-.25rem}.swagger-ui .nr2-l{margin-right:-.5rem}.swagger-ui .nr3-l{margin-right:-1rem}.swagger-ui .nr4-l{margin-right:-2rem}.swagger-ui .nr5-l{margin-right:-4rem}.swagger-ui .nr6-l{margin-right:-8rem}.swagger-ui .nr7-l{margin-right:-16rem}.swagger-ui .nb1-l{margin-bottom:-.25rem}.swagger-ui .nb2-l{margin-bottom:-.5rem}.swagger-ui .nb3-l{margin-bottom:-1rem}.swagger-ui .nb4-l{margin-bottom:-2rem}.swagger-ui .nb5-l{margin-bottom:-4rem}.swagger-ui .nb6-l{margin-bottom:-8rem}.swagger-ui .nb7-l{margin-bottom:-16rem}.swagger-ui .nt1-l{margin-top:-.25rem}.swagger-ui .nt2-l{margin-top:-.5rem}.swagger-ui .nt3-l{margin-top:-1rem}.swagger-ui .nt4-l{margin-top:-2rem}.swagger-ui .nt5-l{margin-top:-4rem}.swagger-ui .nt6-l{margin-top:-8rem}.swagger-ui .nt7-l{margin-top:-16rem}}.swagger-ui .collapse{border-collapse:collapse;border-spacing:0}.swagger-ui .striped--light-silver:nth-child(odd){background-color:#aaa}.swagger-ui .striped--moon-gray:nth-child(odd){background-color:#ccc}.swagger-ui .striped--light-gray:nth-child(odd){background-color:#eee}.swagger-ui .striped--near-white:nth-child(odd){background-color:#f4f4f4}.swagger-ui .stripe-light:nth-child(odd){background-color:hsla(0,0%,100%,.1)}.swagger-ui .stripe-dark:nth-child(odd){background-color:rgba(0,0,0,.1)}.swagger-ui .strike{text-decoration:line-through}.swagger-ui .underline{text-decoration:underline}.swagger-ui .no-underline{text-decoration:none}@media screen and (min-width:30em){.swagger-ui .strike-ns{text-decoration:line-through}.swagger-ui .underline-ns{text-decoration:underline}.swagger-ui .no-underline-ns{text-decoration:none}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .strike-m{text-decoration:line-through}.swagger-ui .underline-m{text-decoration:underline}.swagger-ui .no-underline-m{text-decoration:none}}@media screen and (min-width:60em){.swagger-ui .strike-l{text-decoration:line-through}.swagger-ui .underline-l{text-decoration:underline}.swagger-ui .no-underline-l{text-decoration:none}}.swagger-ui .tl{text-align:left}.swagger-ui .tr{text-align:right}.swagger-ui .tc{text-align:center}@media screen and (min-width:30em){.swagger-ui .tl-ns{text-align:left}.swagger-ui .tr-ns{text-align:right}.swagger-ui .tc-ns{text-align:center}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .tl-m{text-align:left}.swagger-ui .tr-m{text-align:right}.swagger-ui .tc-m{text-align:center}}@media screen and (min-width:60em){.swagger-ui .tl-l{text-align:left}.swagger-ui .tr-l{text-align:right}.swagger-ui .tc-l{text-align:center}}.swagger-ui .ttc{text-transform:capitalize}.swagger-ui .ttl{text-transform:lowercase}.swagger-ui .ttu{text-transform:uppercase}.swagger-ui .ttn{text-transform:none}@media screen and (min-width:30em){.swagger-ui .ttc-ns{text-transform:capitalize}.swagger-ui .ttl-ns{text-transform:lowercase}.swagger-ui .ttu-ns{text-transform:uppercase}.swagger-ui .ttn-ns{text-transform:none}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .ttc-m{text-transform:capitalize}.swagger-ui .ttl-m{text-transform:lowercase}.swagger-ui .ttu-m{text-transform:uppercase}.swagger-ui .ttn-m{text-transform:none}}@media screen and (min-width:60em){.swagger-ui .ttc-l{text-transform:capitalize}.swagger-ui .ttl-l{text-transform:lowercase}.swagger-ui .ttu-l{text-transform:uppercase}.swagger-ui .ttn-l{text-transform:none}}.swagger-ui .f-6,.swagger-ui .f-headline{font-size:6rem}.swagger-ui .f-5,.swagger-ui .f-subheadline{font-size:5rem}.swagger-ui .f1{font-size:3rem}.swagger-ui .f2{font-size:2.25rem}.swagger-ui .f3{font-size:1.5rem}.swagger-ui .f4{font-size:1.25rem}.swagger-ui .f5{font-size:1rem}.swagger-ui .f6{font-size:.875rem}.swagger-ui .f7{font-size:.75rem}@media screen and (min-width:30em){.swagger-ui .f-6-ns,.swagger-ui .f-headline-ns{font-size:6rem}.swagger-ui .f-5-ns,.swagger-ui .f-subheadline-ns{font-size:5rem}.swagger-ui .f1-ns{font-size:3rem}.swagger-ui .f2-ns{font-size:2.25rem}.swagger-ui .f3-ns{font-size:1.5rem}.swagger-ui .f4-ns{font-size:1.25rem}.swagger-ui .f5-ns{font-size:1rem}.swagger-ui .f6-ns{font-size:.875rem}.swagger-ui .f7-ns{font-size:.75rem}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .f-6-m,.swagger-ui .f-headline-m{font-size:6rem}.swagger-ui .f-5-m,.swagger-ui .f-subheadline-m{font-size:5rem}.swagger-ui .f1-m{font-size:3rem}.swagger-ui .f2-m{font-size:2.25rem}.swagger-ui .f3-m{font-size:1.5rem}.swagger-ui .f4-m{font-size:1.25rem}.swagger-ui .f5-m{font-size:1rem}.swagger-ui .f6-m{font-size:.875rem}.swagger-ui .f7-m{font-size:.75rem}}@media screen and (min-width:60em){.swagger-ui .f-6-l,.swagger-ui .f-headline-l{font-size:6rem}.swagger-ui .f-5-l,.swagger-ui .f-subheadline-l{font-size:5rem}.swagger-ui .f1-l{font-size:3rem}.swagger-ui .f2-l{font-size:2.25rem}.swagger-ui .f3-l{font-size:1.5rem}.swagger-ui .f4-l{font-size:1.25rem}.swagger-ui .f5-l{font-size:1rem}.swagger-ui .f6-l{font-size:.875rem}.swagger-ui .f7-l{font-size:.75rem}}.swagger-ui .measure{max-width:30em}.swagger-ui .measure-wide{max-width:34em}.swagger-ui .measure-narrow{max-width:20em}.swagger-ui .indent{text-indent:1em;margin-top:0;margin-bottom:0}.swagger-ui .small-caps{font-variant:small-caps}.swagger-ui .truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media screen and (min-width:30em){.swagger-ui .measure-ns{max-width:30em}.swagger-ui .measure-wide-ns{max-width:34em}.swagger-ui .measure-narrow-ns{max-width:20em}.swagger-ui .indent-ns{text-indent:1em;margin-top:0;margin-bottom:0}.swagger-ui .small-caps-ns{font-variant:small-caps}.swagger-ui .truncate-ns{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .measure-m{max-width:30em}.swagger-ui .measure-wide-m{max-width:34em}.swagger-ui .measure-narrow-m{max-width:20em}.swagger-ui .indent-m{text-indent:1em;margin-top:0;margin-bottom:0}.swagger-ui .small-caps-m{font-variant:small-caps}.swagger-ui .truncate-m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@media screen and (min-width:60em){.swagger-ui .measure-l{max-width:30em}.swagger-ui .measure-wide-l{max-width:34em}.swagger-ui .measure-narrow-l{max-width:20em}.swagger-ui .indent-l{text-indent:1em;margin-top:0;margin-bottom:0}.swagger-ui .small-caps-l{font-variant:small-caps}.swagger-ui .truncate-l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.swagger-ui .overflow-container{overflow-y:scroll}.swagger-ui .center{margin-right:auto;margin-left:auto}.swagger-ui .mr-auto{margin-right:auto}.swagger-ui .ml-auto{margin-left:auto}@media screen and (min-width:30em){.swagger-ui .center-ns{margin-right:auto;margin-left:auto}.swagger-ui .mr-auto-ns{margin-right:auto}.swagger-ui .ml-auto-ns{margin-left:auto}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .center-m{margin-right:auto;margin-left:auto}.swagger-ui .mr-auto-m{margin-right:auto}.swagger-ui .ml-auto-m{margin-left:auto}}@media screen and (min-width:60em){.swagger-ui .center-l{margin-right:auto;margin-left:auto}.swagger-ui .mr-auto-l{margin-right:auto}.swagger-ui .ml-auto-l{margin-left:auto}}.swagger-ui .clip{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}@media screen and (min-width:30em){.swagger-ui .clip-ns{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .clip-m{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}}@media screen and (min-width:60em){.swagger-ui .clip-l{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}}.swagger-ui .ws-normal{white-space:normal}.swagger-ui .nowrap{white-space:nowrap}.swagger-ui .pre{white-space:pre}@media screen and (min-width:30em){.swagger-ui .ws-normal-ns{white-space:normal}.swagger-ui .nowrap-ns{white-space:nowrap}.swagger-ui .pre-ns{white-space:pre}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .ws-normal-m{white-space:normal}.swagger-ui .nowrap-m{white-space:nowrap}.swagger-ui .pre-m{white-space:pre}}@media screen and (min-width:60em){.swagger-ui .ws-normal-l{white-space:normal}.swagger-ui .nowrap-l{white-space:nowrap}.swagger-ui .pre-l{white-space:pre}}.swagger-ui .v-base{vertical-align:baseline}.swagger-ui .v-mid{vertical-align:middle}.swagger-ui .v-top{vertical-align:top}.swagger-ui .v-btm{vertical-align:bottom}@media screen and (min-width:30em){.swagger-ui .v-base-ns{vertical-align:baseline}.swagger-ui .v-mid-ns{vertical-align:middle}.swagger-ui .v-top-ns{vertical-align:top}.swagger-ui .v-btm-ns{vertical-align:bottom}}@media screen and (min-width:30em) and (max-width:60em){.swagger-ui .v-base-m{vertical-align:baseline}.swagger-ui .v-mid-m{vertical-align:middle}.swagger-ui .v-top-m{vertical-align:top}.swagger-ui .v-btm-m{vertical-align:bottom}}@media screen and (min-width:60em){.swagger-ui .v-base-l{vertical-align:baseline}.swagger-ui .v-mid-l{vertical-align:middle}.swagger-ui .v-top-l{vertical-align:top}.swagger-ui .v-btm-l{vertical-align:bottom}}.swagger-ui .dim{opacity:1}.swagger-ui .dim,.swagger-ui .dim:focus,.swagger-ui .dim:hover{-webkit-transition:opacity .15s ease-in;transition:opacity .15s ease-in}.swagger-ui .dim:focus,.swagger-ui .dim:hover{opacity:.5}.swagger-ui .dim:active{opacity:.8;-webkit-transition:opacity .15s ease-out;transition:opacity .15s ease-out}.swagger-ui .glow,.swagger-ui .glow:focus,.swagger-ui .glow:hover{-webkit-transition:opacity .15s ease-in;transition:opacity .15s ease-in}.swagger-ui .glow:focus,.swagger-ui .glow:hover{opacity:1}.swagger-ui .hide-child .child{opacity:0;-webkit-transition:opacity .15s ease-in;transition:opacity .15s ease-in}.swagger-ui .hide-child:active .child,.swagger-ui .hide-child:focus .child,.swagger-ui .hide-child:hover .child{opacity:1;-webkit-transition:opacity .15s ease-in;transition:opacity .15s ease-in}.swagger-ui .underline-hover:focus,.swagger-ui .underline-hover:hover{text-decoration:underline}.swagger-ui .grow{-moz-osx-font-smoothing:grayscale;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.swagger-ui .grow:focus,.swagger-ui .grow:hover{-webkit-transform:scale(1.05);transform:scale(1.05)}.swagger-ui .grow:active{-webkit-transform:scale(.9);transform:scale(.9)}.swagger-ui .grow-large{-moz-osx-font-smoothing:grayscale;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-transition:-webkit-transform .25s ease-in-out;transition:-webkit-transform .25s ease-in-out;transition:transform .25s ease-in-out;transition:transform .25s ease-in-out,-webkit-transform .25s ease-in-out}.swagger-ui .grow-large:focus,.swagger-ui .grow-large:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.swagger-ui .grow-large:active{-webkit-transform:scale(.95);transform:scale(.95)}.swagger-ui .pointer:hover{cursor:pointer}.swagger-ui .shadow-hover{cursor:pointer;position:relative;-webkit-transition:all .5s cubic-bezier(.165,.84,.44,1);transition:all .5s cubic-bezier(.165,.84,.44,1)}.swagger-ui .shadow-hover:after{content:\"\";-webkit-box-shadow:0 0 16px 2px rgba(0,0,0,.2);box-shadow:0 0 16px 2px rgba(0,0,0,.2);border-radius:inherit;opacity:0;position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;-webkit-transition:opacity .5s cubic-bezier(.165,.84,.44,1);transition:opacity .5s cubic-bezier(.165,.84,.44,1)}.swagger-ui .shadow-hover:focus:after,.swagger-ui .shadow-hover:hover:after{opacity:1}.swagger-ui .bg-animate,.swagger-ui .bg-animate:focus,.swagger-ui .bg-animate:hover{-webkit-transition:background-color .15s ease-in-out;transition:background-color .15s ease-in-out}.swagger-ui .z-0{z-index:0}.swagger-ui .z-1{z-index:1}.swagger-ui .z-2{z-index:2}.swagger-ui .z-3{z-index:3}.swagger-ui .z-4{z-index:4}.swagger-ui .z-5{z-index:5}.swagger-ui .z-999{z-index:999}.swagger-ui .z-9999{z-index:9999}.swagger-ui .z-max{z-index:2147483647}.swagger-ui .z-inherit{z-index:inherit}.swagger-ui .z-initial{z-index:auto}.swagger-ui .z-unset{z-index:unset}.swagger-ui .nested-copy-line-height ol,.swagger-ui .nested-copy-line-height p,.swagger-ui .nested-copy-line-height ul{line-height:1.5}.swagger-ui .nested-headline-line-height h1,.swagger-ui .nested-headline-line-height h2,.swagger-ui .nested-headline-line-height h3,.swagger-ui .nested-headline-line-height h4,.swagger-ui .nested-headline-line-height h5,.swagger-ui .nested-headline-line-height h6{line-height:1.25rem}.swagger-ui .nested-list-reset ol,.swagger-ui .nested-list-reset ul{padding-left:0;margin-left:0;list-style-type:none}.swagger-ui .nested-copy-indent p+p{text-indent:.1em;margin-top:0;margin-bottom:0}.swagger-ui .nested-copy-seperator p+p{margin-top:1.5em}.swagger-ui .nested-img img{width:100%;max-width:100%;display:block}.swagger-ui .nested-links a{color:#357edd;-webkit-transition:color .15s ease-in;transition:color .15s ease-in}.swagger-ui .nested-links a:focus,.swagger-ui .nested-links a:hover{color:#96ccff;-webkit-transition:color .15s ease-in;transition:color .15s ease-in}.swagger-ui .wrapper{width:100%;max-width:1460px;margin:0 auto;padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box}.swagger-ui .opblock-tag-section{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .opblock-tag{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:10px 20px 10px 10px;cursor:pointer;-webkit-transition:all .2s;transition:all .2s;border-bottom:1px solid rgba(59,65,81,.3)}.swagger-ui .opblock-tag:hover{background:rgba(0,0,0,.02)}.swagger-ui .opblock-tag{font-size:24px;margin:0 0 5px;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock-tag.no-desc span{-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui .opblock-tag svg{-webkit-transition:all .4s;transition:all .4s}.swagger-ui .opblock-tag small{font-size:14px;font-weight:400;-webkit-box-flex:1;-ms-flex:1;flex:1;padding:0 10px;font-family:sans-serif;color:#3b4151}.swagger-ui .parameter__type{font-size:12px;padding:5px 0;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui .view-line-link{position:relative;top:3px;width:20px;margin:0 5px;cursor:pointer;-webkit-transition:all .5s;transition:all .5s}.swagger-ui .opblock{margin:0 0 15px;border:1px solid #000;border-radius:4px;-webkit-box-shadow:0 0 3px rgba(0,0,0,.19);box-shadow:0 0 3px rgba(0,0,0,.19)}.swagger-ui .opblock .tab-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui .opblock .tab-header .tab-item{padding:0 40px;cursor:pointer}.swagger-ui .opblock .tab-header .tab-item:first-of-type{padding:0 40px 0 0}.swagger-ui .opblock .tab-header .tab-item.active h4 span{position:relative}.swagger-ui .opblock .tab-header .tab-item.active h4 span:after{position:absolute;bottom:-15px;left:50%;width:120%;height:4px;content:\"\";-webkit-transform:translateX(-50%);transform:translateX(-50%);background:gray}.swagger-ui .opblock.is-open .opblock-summary{border-bottom:1px solid #000}.swagger-ui .opblock .opblock-section-header{padding:8px 20px;min-height:50px;background:hsla(0,0%,100%,.8);-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1)}.swagger-ui .opblock .opblock-section-header,.swagger-ui .opblock .opblock-section-header label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .opblock .opblock-section-header label{font-size:12px;font-weight:700;margin:0;margin-left:auto;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock .opblock-section-header label span{padding:0 10px 0 0}.swagger-ui .opblock .opblock-section-header h4{font-size:14px;-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock .opblock-summary-method{font-size:14px;font-weight:700;min-width:80px;padding:6px 15px;text-align:center;border-radius:3px;background:#000;text-shadow:0 1px 0 rgba(0,0,0,.1);font-family:sans-serif;color:#fff}.swagger-ui .opblock .opblock-summary-operation-id,.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated{font-size:16px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 3 auto;flex:0 3 auto;-webkit-box-align:center;-ms-flex-align:center;align-items:center;word-break:break-all;padding:0 10px;font-family:monospace;font-weight:600;color:#3b4151}@media (max-width:768px){.swagger-ui .opblock .opblock-summary-operation-id,.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated{font-size:12px}}.swagger-ui .opblock .opblock-summary-path__deprecated{text-decoration:line-through}.swagger-ui .opblock .opblock-summary-operation-id{font-size:14px}.swagger-ui .opblock .opblock-summary-description{font-size:13px;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock .opblock-summary{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:5px;cursor:pointer}.swagger-ui .opblock .opblock-summary .view-line-link{position:relative;top:2px;width:0;margin:0;cursor:pointer;-webkit-transition:all .5s;transition:all .5s}.swagger-ui .opblock .opblock-summary:hover .view-line-link{width:18px;margin:0 5px}.swagger-ui .opblock.opblock-post{border-color:#49cc90;background:rgba(73,204,144,.1)}.swagger-ui .opblock.opblock-post .opblock-summary-method{background:#49cc90}.swagger-ui .opblock.opblock-post .opblock-summary{border-color:#49cc90}.swagger-ui .opblock.opblock-post .tab-header .tab-item.active h4 span:after{background:#49cc90}.swagger-ui .opblock.opblock-put{border-color:#fca130;background:rgba(252,161,48,.1)}.swagger-ui .opblock.opblock-put .opblock-summary-method{background:#fca130}.swagger-ui .opblock.opblock-put .opblock-summary{border-color:#fca130}.swagger-ui .opblock.opblock-put .tab-header .tab-item.active h4 span:after{background:#fca130}.swagger-ui .opblock.opblock-delete{border-color:#f93e3e;background:rgba(249,62,62,.1)}.swagger-ui .opblock.opblock-delete .opblock-summary-method{background:#f93e3e}.swagger-ui .opblock.opblock-delete .opblock-summary{border-color:#f93e3e}.swagger-ui .opblock.opblock-delete .tab-header .tab-item.active h4 span:after{background:#f93e3e}.swagger-ui .opblock.opblock-get{border-color:#61affe;background:rgba(97,175,254,.1)}.swagger-ui .opblock.opblock-get .opblock-summary-method{background:#61affe}.swagger-ui .opblock.opblock-get .opblock-summary{border-color:#61affe}.swagger-ui .opblock.opblock-get .tab-header .tab-item.active h4 span:after{background:#61affe}.swagger-ui .opblock.opblock-patch{border-color:#50e3c2;background:rgba(80,227,194,.1)}.swagger-ui .opblock.opblock-patch .opblock-summary-method{background:#50e3c2}.swagger-ui .opblock.opblock-patch .opblock-summary{border-color:#50e3c2}.swagger-ui .opblock.opblock-patch .tab-header .tab-item.active h4 span:after{background:#50e3c2}.swagger-ui .opblock.opblock-head{border-color:#9012fe;background:rgba(144,18,254,.1)}.swagger-ui .opblock.opblock-head .opblock-summary-method{background:#9012fe}.swagger-ui .opblock.opblock-head .opblock-summary{border-color:#9012fe}.swagger-ui .opblock.opblock-head .tab-header .tab-item.active h4 span:after{background:#9012fe}.swagger-ui .opblock.opblock-options{border-color:#0d5aa7;background:rgba(13,90,167,.1)}.swagger-ui .opblock.opblock-options .opblock-summary-method{background:#0d5aa7}.swagger-ui .opblock.opblock-options .opblock-summary{border-color:#0d5aa7}.swagger-ui .opblock.opblock-options .tab-header .tab-item.active h4 span:after{background:#0d5aa7}.swagger-ui .opblock.opblock-deprecated{opacity:.6;border-color:#ebebeb;background:hsla(0,0%,92%,.1)}.swagger-ui .opblock.opblock-deprecated .opblock-summary-method{background:#ebebeb}.swagger-ui .opblock.opblock-deprecated .opblock-summary{border-color:#ebebeb}.swagger-ui .opblock.opblock-deprecated .tab-header .tab-item.active h4 span:after{background:#ebebeb}.swagger-ui .opblock .opblock-schemes{padding:8px 20px}.swagger-ui .opblock .opblock-schemes .schemes-title{padding:0 10px 0 0}.swagger-ui .filter .operation-filter-input{width:100%;margin:20px 0;padding:10px;border:2px solid #d8dde7}.swagger-ui .tab{display:-webkit-box;display:-ms-flexbox;display:flex;margin:20px 0 10px;padding:0;list-style:none}.swagger-ui .tab li{font-size:12px;min-width:60px;padding:0;cursor:pointer;font-family:sans-serif;color:#3b4151}.swagger-ui .tab li:first-of-type{position:relative;padding-left:0;padding-right:12px}.swagger-ui .tab li:first-of-type:after{position:absolute;top:0;right:6px;width:1px;height:100%;content:\"\";background:rgba(0,0,0,.2)}.swagger-ui .tab li.active{font-weight:700}.swagger-ui .opblock-description-wrapper,.swagger-ui .opblock-external-docs-wrapper,.swagger-ui .opblock-title_normal{font-size:12px;margin:0 0 5px;padding:15px 20px;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock-description-wrapper h4,.swagger-ui .opblock-external-docs-wrapper h4,.swagger-ui .opblock-title_normal h4{font-size:12px;margin:0 0 5px;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock-description-wrapper p,.swagger-ui .opblock-external-docs-wrapper p,.swagger-ui .opblock-title_normal p{font-size:14px;margin:0;font-family:sans-serif;color:#3b4151}.swagger-ui .opblock-external-docs-wrapper h4{padding-left:0}.swagger-ui .execute-wrapper{padding:20px;text-align:right}.swagger-ui .execute-wrapper .btn{width:100%;padding:8px 40px}.swagger-ui .body-param-options{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .body-param-options .body-param-edit{padding:10px 0}.swagger-ui .body-param-options label{padding:8px 0}.swagger-ui .body-param-options label select{margin:3px 0 0}.swagger-ui .responses-inner{padding:20px}.swagger-ui .responses-inner h4,.swagger-ui .responses-inner h5{font-size:12px;margin:10px 0 5px;font-family:sans-serif;color:#3b4151}.swagger-ui .response-col_status{font-size:14px;font-family:sans-serif;color:#3b4151}.swagger-ui .response-col_status .response-undocumented{font-size:11px;font-family:monospace;font-weight:600;color:#909090}.swagger-ui .response-col_links{padding-left:2em;max-width:40em;font-size:14px;font-family:sans-serif;color:#3b4151}.swagger-ui .response-col_links .response-undocumented{font-size:11px;font-family:monospace;font-weight:600;color:#909090}.swagger-ui .response-col_description__inner div.markdown,.swagger-ui .response-col_description__inner div.renderedMarkdown{font-size:12px;font-style:italic;display:block;margin:0;padding:10px;border-radius:4px;background:#41444e;font-family:monospace;font-weight:600;color:#fff}.swagger-ui .response-col_description__inner div.markdown p,.swagger-ui .response-col_description__inner div.renderedMarkdown p{margin:0;font-family:monospace;font-weight:600;color:#fff}.swagger-ui .response-col_description__inner div.markdown a,.swagger-ui .response-col_description__inner div.renderedMarkdown a{font-family:monospace;font-weight:600;color:#89bf04;text-decoration:underline}.swagger-ui .response-col_description__inner div.markdown a:hover,.swagger-ui .response-col_description__inner div.renderedMarkdown a:hover{color:#81b10c}.swagger-ui .response-col_description__inner div.markdown th,.swagger-ui .response-col_description__inner div.renderedMarkdown th{font-family:monospace;font-weight:600;color:#fff;border-bottom:1px solid #fff}.swagger-ui .opblock-body .opblock-loading-animation{display:block;margin:3em;margin-left:auto;margin-right:auto}.swagger-ui .opblock-body pre{font-size:12px;margin:0;padding:10px;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;word-break:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;border-radius:4px;background:#41444e;overflow-wrap:break-word;font-family:monospace;font-weight:600;color:#fff}.swagger-ui .opblock-body pre span{color:#fff!important}.swagger-ui .opblock-body pre .headerline{display:block}.swagger-ui .highlight-code{position:relative}.swagger-ui .highlight-code>.microlight{overflow-y:auto;max-height:400px;min-height:6em}.swagger-ui .download-contents{position:absolute;bottom:10px;right:10px;cursor:pointer;background:#7d8293;text-align:center;padding:5px;border-radius:4px;font-family:Titillium Web,sans-serif;font-weight:600;color:#fff;font-size:14px;height:30px;width:75px}.swagger-ui .scheme-container{margin:0 0 20px;padding:30px 0;background:#fff;-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.15);box-shadow:0 1px 2px 0 rgba(0,0,0,.15)}.swagger-ui .scheme-container .schemes{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .scheme-container .schemes>label{font-size:12px;font-weight:700;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:-20px 15px 0 0;font-family:sans-serif;color:#3b4151}.swagger-ui .scheme-container .schemes>label select{min-width:130px;text-transform:uppercase}.swagger-ui .loading-container{padding:40px 0 60px;margin-top:1em;min-height:1px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swagger-ui .loading-container .loading{position:relative}.swagger-ui .loading-container .loading:after{font-size:10px;font-weight:700;position:absolute;top:50%;left:50%;content:\"loading\";-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);text-transform:uppercase;font-family:sans-serif;color:#3b4151}.swagger-ui .loading-container .loading:before{position:absolute;top:50%;left:50%;display:block;width:60px;height:60px;margin:-30px;content:\"\";-webkit-animation:rotation 1s infinite linear,opacity .5s;animation:rotation 1s infinite linear,opacity .5s;opacity:1;border:2px solid rgba(85,85,85,.1);border-top-color:rgba(0,0,0,.6);border-radius:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden}@-webkit-keyframes rotation{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotation{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.swagger-ui .response-content-type{padding-top:1em}.swagger-ui .response-content-type.controls-accept-header select{border-color:green}.swagger-ui .response-content-type.controls-accept-header small{color:green;font-size:.7em}@-webkit-keyframes blinker{50%{opacity:0}}@keyframes blinker{50%{opacity:0}}.swagger-ui section h3{font-family:sans-serif;color:#3b4151}.swagger-ui a.nostyle{display:inline}.swagger-ui a.nostyle,.swagger-ui a.nostyle:visited{text-decoration:inherit;color:inherit;cursor:pointer}.swagger-ui .version-pragma{height:100%;padding:5em 0}.swagger-ui .version-pragma__message{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%;font-size:1.2em;text-align:center;line-height:1.5em;padding:0 .6em}.swagger-ui .version-pragma__message>div{max-width:55ch;-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui .version-pragma__message code{background-color:#dedede;padding:4px 4px 2px;white-space:pre}.swagger-ui .btn{font-size:14px;font-weight:700;padding:5px 23px;-webkit-transition:all .3s;transition:all .3s;border:2px solid gray;border-radius:4px;background:transparent;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1);font-family:sans-serif;color:#3b4151}.swagger-ui .btn.btn-sm{font-size:12px;padding:4px 23px}.swagger-ui .btn[disabled]{cursor:not-allowed;opacity:.3}.swagger-ui .btn:hover{-webkit-box-shadow:0 0 5px rgba(0,0,0,.3);box-shadow:0 0 5px rgba(0,0,0,.3)}.swagger-ui .btn.cancel{border-color:#ff6060;background-color:transparent;font-family:sans-serif;color:#ff6060}.swagger-ui .btn.authorize{line-height:1;display:inline;color:#49cc90;border-color:#49cc90;background-color:transparent}.swagger-ui .btn.authorize span{float:left;padding:4px 20px 0 0}.swagger-ui .btn.authorize svg{fill:#49cc90}.swagger-ui .btn.execute{background-color:#4990e2;color:#fff;border-color:#4990e2}.swagger-ui .btn-group{display:-webkit-box;display:-ms-flexbox;display:flex;padding:30px}.swagger-ui .btn-group .btn{-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui .btn-group .btn:first-child{border-radius:4px 0 0 4px}.swagger-ui .btn-group .btn:last-child{border-radius:0 4px 4px 0}.swagger-ui .authorization__btn{padding:0 10px;border:none;background:none}.swagger-ui .authorization__btn.locked{opacity:1}.swagger-ui .authorization__btn.unlocked{opacity:.4}.swagger-ui .expand-methods,.swagger-ui .expand-operation{border:none;background:none}.swagger-ui .expand-methods svg,.swagger-ui .expand-operation svg{width:20px;height:20px}.swagger-ui .expand-methods{padding:0 10px}.swagger-ui .expand-methods:hover svg{fill:#404040}.swagger-ui .expand-methods svg{-webkit-transition:all .3s;transition:all .3s;fill:#707070}.swagger-ui button{cursor:pointer;outline:none}.swagger-ui button.invalid{-webkit-animation:shake .4s 1;animation:shake .4s 1;border-color:#f93e3e;background:#feebeb}.swagger-ui select{font-size:14px;font-weight:700;padding:5px 40px 5px 10px;border:2px solid #41444e;border-radius:4px;background:#f7f7f7 url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+ICAgIDxwYXRoIGQ9Ik0xMy40MTggNy44NTljLjI3MS0uMjY4LjcwOS0uMjY4Ljk3OCAwIC4yNy4yNjguMjcyLjcwMSAwIC45NjlsLTMuOTA4IDMuODNjLS4yNy4yNjgtLjcwNy4yNjgtLjk3OSAwbC0zLjkwOC0zLjgzYy0uMjctLjI2Ny0uMjctLjcwMSAwLS45NjkuMjcxLS4yNjguNzA5LS4yNjguOTc4IDBMMTAgMTFsMy40MTgtMy4xNDF6Ii8+PC9zdmc+) right 10px center no-repeat;background-size:20px;-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.25);box-shadow:0 1px 2px 0 rgba(0,0,0,.25);font-family:sans-serif;color:#3b4151;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swagger-ui select[multiple]{margin:5px 0;padding:5px;background:#f7f7f7}.swagger-ui select.invalid{-webkit-animation:shake .4s 1;animation:shake .4s 1;border-color:#f93e3e;background:#feebeb}.swagger-ui .opblock-body select{min-width:230px}@media (max-width:768px){.swagger-ui .opblock-body select{min-width:180px}}.swagger-ui label{font-size:12px;font-weight:700;margin:0 0 5px;font-family:sans-serif;color:#3b4151}.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text],.swagger-ui textarea{min-width:100px;margin:5px 0;padding:8px 10px;border:1px solid #d9d9d9;border-radius:4px;background:#fff}@media (max-width:768px){.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text],.swagger-ui textarea{max-width:175px}}.swagger-ui input[type=email].invalid,.swagger-ui input[type=file].invalid,.swagger-ui input[type=password].invalid,.swagger-ui input[type=search].invalid,.swagger-ui input[type=text].invalid,.swagger-ui textarea.invalid{-webkit-animation:shake .4s 1;animation:shake .4s 1;border-color:#f93e3e;background:#feebeb}@-webkit-keyframes shake{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}20%,80%{-webkit-transform:translate3d(2px,0,0);transform:translate3d(2px,0,0)}30%,50%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}@keyframes shake{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}20%,80%{-webkit-transform:translate3d(2px,0,0);transform:translate3d(2px,0,0)}30%,50%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}.swagger-ui textarea{font-size:12px;width:100%;min-height:280px;padding:10px;border:none;border-radius:4px;outline:none;background:hsla(0,0%,100%,.8);font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui textarea:focus{border:2px solid #61affe}.swagger-ui textarea.curl{font-size:12px;min-height:100px;margin:0;padding:10px;resize:none;border-radius:4px;background:#41444e;font-family:monospace;font-weight:600;color:#fff}.swagger-ui .checkbox{padding:5px 0 10px;-webkit-transition:opacity .5s;transition:opacity .5s;color:#303030}.swagger-ui .checkbox label{display:-webkit-box;display:-ms-flexbox;display:flex}.swagger-ui .checkbox p{font-weight:400!important;font-style:italic;margin:0!important;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui .checkbox input[type=checkbox]{display:none}.swagger-ui .checkbox input[type=checkbox]+label>.item{position:relative;top:3px;display:inline-block;width:16px;height:16px;margin:0 8px 0 0;padding:5px;cursor:pointer;border-radius:1px;background:#e8e8e8;-webkit-box-shadow:0 0 0 2px #e8e8e8;box-shadow:0 0 0 2px #e8e8e8;-webkit-box-flex:0;-ms-flex:none;flex:none}.swagger-ui .checkbox input[type=checkbox]+label>.item:active{-webkit-transform:scale(.9);transform:scale(.9)}.swagger-ui .checkbox input[type=checkbox]:checked+label>.item{background:#e8e8e8 url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='10' height='8' viewBox='3 7 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%2341474E' fill-rule='evenodd' d='M6.333 15L3 11.667l1.333-1.334 2 2L11.667 7 13 8.333z'/%3E%3C/svg%3E\") 50% no-repeat}.swagger-ui .dialog-ux{position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0}.swagger-ui .dialog-ux .backdrop-ux{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.8)}.swagger-ui .dialog-ux .modal-ux{position:absolute;z-index:9999;top:50%;left:50%;width:100%;min-width:300px;max-width:650px;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border:1px solid #ebebeb;border-radius:4px;background:#fff;-webkit-box-shadow:0 10px 30px 0 rgba(0,0,0,.2);box-shadow:0 10px 30px 0 rgba(0,0,0,.2)}.swagger-ui .dialog-ux .modal-ux-content{overflow-y:auto;max-height:540px;padding:20px}.swagger-ui .dialog-ux .modal-ux-content p{font-size:12px;margin:0 0 5px;color:#41444e;font-family:sans-serif;color:#3b4151}.swagger-ui .dialog-ux .modal-ux-content h4{font-size:18px;font-weight:600;margin:15px 0 0;font-family:sans-serif;color:#3b4151}.swagger-ui .dialog-ux .modal-ux-header{display:-webkit-box;display:-ms-flexbox;display:flex;padding:12px 0;border-bottom:1px solid #ebebeb;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .dialog-ux .modal-ux-header .close-modal{padding:0 10px;border:none;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swagger-ui .dialog-ux .modal-ux-header h3{font-size:20px;font-weight:600;margin:0;padding:0 20px;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:sans-serif;color:#3b4151}.swagger-ui .model{font-size:12px;font-weight:300;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui .model .deprecated span,.swagger-ui .model .deprecated td{color:#a0a0a0!important}.swagger-ui .model .deprecated>td:first-of-type{text-decoration:line-through}.swagger-ui .model-toggle{font-size:10px;position:relative;top:6px;display:inline-block;margin:auto .3em;cursor:pointer;-webkit-transition:-webkit-transform .15s ease-in;transition:-webkit-transform .15s ease-in;transition:transform .15s ease-in;transition:transform .15s ease-in,-webkit-transform .15s ease-in;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.swagger-ui .model-toggle.collapsed{-webkit-transform:rotate(0deg);transform:rotate(0deg)}.swagger-ui .model-toggle:after{display:block;width:20px;height:20px;content:\"\";background:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z'/%3E%3C/svg%3E\") 50% no-repeat;background-size:100%}.swagger-ui .model-jump-to-path{position:relative;cursor:pointer}.swagger-ui .model-jump-to-path .view-line-link{position:absolute;top:-.4em;cursor:pointer}.swagger-ui .model-title{position:relative}.swagger-ui .model-title:hover .model-hint{visibility:visible}.swagger-ui .model-hint{position:absolute;top:-1.8em;visibility:hidden;padding:.1em .5em;white-space:nowrap;color:#ebebeb;border-radius:4px;background:rgba(0,0,0,.7)}.swagger-ui .model p{margin:0 0 1em}.swagger-ui section.models{margin:30px 0;border:1px solid rgba(59,65,81,.3);border-radius:4px}.swagger-ui section.models.is-open{padding:0 0 20px}.swagger-ui section.models.is-open h4{margin:0 0 5px;border-bottom:1px solid rgba(59,65,81,.3)}.swagger-ui section.models h4{font-size:16px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0;padding:10px 20px 10px 10px;cursor:pointer;-webkit-transition:all .2s;transition:all .2s;font-family:sans-serif;color:#606060}.swagger-ui section.models h4 svg{-webkit-transition:all .4s;transition:all .4s}.swagger-ui section.models h4 span{-webkit-box-flex:1;-ms-flex:1;flex:1}.swagger-ui section.models h4:hover{background:rgba(0,0,0,.02)}.swagger-ui section.models h5{font-size:16px;margin:0 0 10px;font-family:sans-serif;color:#707070}.swagger-ui section.models .model-jump-to-path{position:relative;top:5px}.swagger-ui section.models .model-container{margin:0 20px 15px;position:relative;-webkit-transition:all .5s;transition:all .5s;border-radius:4px;background:rgba(0,0,0,.05)}.swagger-ui section.models .model-container:hover{background:rgba(0,0,0,.07)}.swagger-ui section.models .model-container:first-of-type{margin:20px}.swagger-ui section.models .model-container:last-of-type{margin:0 20px}.swagger-ui section.models .model-container .models-jump-to-path{position:absolute;top:8px;right:5px;opacity:.65}.swagger-ui section.models .model-box{background:none}.swagger-ui .model-box{padding:10px;display:inline-block;border-radius:4px;background:rgba(0,0,0,.1)}.swagger-ui .model-box .model-jump-to-path{position:relative;top:4px}.swagger-ui .model-box.deprecated{opacity:.5}.swagger-ui .model-title{font-size:16px;font-family:sans-serif;color:#505050}.swagger-ui .model-deprecated-warning{font-size:16px;font-weight:600;margin-right:1em;font-family:sans-serif;color:#f93e3e}.swagger-ui span>span.model .brace-close{padding:0 0 0 10px}.swagger-ui .prop-name{display:inline-block;margin-right:1em}.swagger-ui .prop-type{color:#55a}.swagger-ui .prop-enum{display:block}.swagger-ui .prop-format{color:#606060}.swagger-ui .servers>label{font-size:12px;margin:-20px 15px 0 0;font-family:sans-serif;color:#3b4151}.swagger-ui .servers>label select{min-width:130px;max-width:100%}.swagger-ui .servers h4.message{padding-bottom:2em}.swagger-ui .servers table tr{width:30em}.swagger-ui .servers table td{display:inline-block;max-width:15em;vertical-align:middle;padding-top:10px;padding-bottom:10px}.swagger-ui .servers table td:first-of-type{padding-right:2em}.swagger-ui .servers table td input{width:100%;height:100%}.swagger-ui .servers .computed-url{margin:2em 0}.swagger-ui .servers .computed-url code{display:inline-block;padding:4px;font-size:16px;margin:0 1em}.swagger-ui .global-server-container{margin:0 0 20px;padding:30px 0;background:#fff;-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.15);box-shadow:0 1px 2px 0 rgba(0,0,0,.15)}.swagger-ui .global-server-container .servers-title{line-height:2em;font-weight:700}.swagger-ui .operation-servers h4.message{margin-bottom:2em}.swagger-ui table{width:100%;padding:0 10px;border-collapse:collapse}.swagger-ui table.model tbody tr td{padding:0;vertical-align:top}.swagger-ui table.model tbody tr td:first-of-type{width:174px;padding:0 0 0 2em}.swagger-ui table.headers td{font-size:12px;font-weight:300;vertical-align:middle;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui table tbody tr td{padding:10px 0 0;vertical-align:top}.swagger-ui table tbody tr td:first-of-type{max-width:20%;min-width:6em;padding:10px 0}.swagger-ui table thead tr td,.swagger-ui table thead tr th{font-size:12px;font-weight:700;padding:12px 0;text-align:left;border-bottom:1px solid rgba(59,65,81,.2);font-family:sans-serif;color:#3b4151}.swagger-ui .parameters-col_description input[type=text]{width:100%;max-width:340px}.swagger-ui .parameters-col_description select{border-width:1px}.swagger-ui .parameter__name{font-size:16px;font-weight:400;font-family:sans-serif;color:#3b4151}.swagger-ui .parameter__name.required{font-weight:700}.swagger-ui .parameter__name.required:after{font-size:10px;position:relative;top:-6px;padding:5px;content:\"required\";color:rgba(255,0,0,.6)}.swagger-ui .parameter__extension,.swagger-ui .parameter__in{font-size:12px;font-style:italic;font-family:monospace;font-weight:600;color:gray}.swagger-ui .parameter__deprecated{font-size:12px;font-style:italic;font-family:monospace;font-weight:600;color:red}.swagger-ui .parameter__empty_value_toggle{font-size:13px;padding-top:5px;padding-bottom:12px}.swagger-ui .parameter__empty_value_toggle input{margin-right:7px}.swagger-ui .parameter__empty_value_toggle.disabled{opacity:.7}.swagger-ui .table-container{padding:20px}.swagger-ui .topbar{padding:8px 0;background-color:#89bf04}.swagger-ui .topbar .topbar-wrapper,.swagger-ui .topbar a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .topbar a{font-size:1.5em;font-weight:700;-webkit-box-flex:1;-ms-flex:1;flex:1;max-width:300px;text-decoration:none;font-family:sans-serif;color:#fff}.swagger-ui .topbar a span{margin:0;padding:0 10px}.swagger-ui .topbar .download-url-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:3;-ms-flex:3;flex:3;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .topbar .download-url-wrapper input[type=text]{width:100%;margin:0;border:2px solid #547f00;border-radius:4px 0 0 4px;outline:none}.swagger-ui .topbar .download-url-wrapper .select-label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;max-width:600px;margin:0}.swagger-ui .topbar .download-url-wrapper .select-label span{font-size:16px;-webkit-box-flex:1;-ms-flex:1;flex:1;padding:0 10px 0 0;text-align:right}.swagger-ui .topbar .download-url-wrapper .select-label select{-webkit-box-flex:2;-ms-flex:2;flex:2;width:100%;border:2px solid #547f00;outline:none;-webkit-box-shadow:none;box-shadow:none}.swagger-ui .topbar .download-url-wrapper .download-url-button{font-size:16px;font-weight:700;padding:4px 30px;border:none;border-radius:0 4px 4px 0;background:#547f00;font-family:sans-serif;color:#fff}.swagger-ui .info{margin:50px 0}.swagger-ui .info hgroup.main{margin:0 0 20px}.swagger-ui .info hgroup.main a{font-size:12px}.swagger-ui .info li,.swagger-ui .info p,.swagger-ui .info table{font-size:14px;font-family:sans-serif;color:#3b4151}.swagger-ui .info h1,.swagger-ui .info h2,.swagger-ui .info h3,.swagger-ui .info h4,.swagger-ui .info h5{font-family:sans-serif;color:#3b4151}.swagger-ui .info code{padding:3px 5px;border-radius:4px;background:rgba(0,0,0,.05);font-family:monospace;font-weight:600;color:#9012fe}.swagger-ui .info a{font-size:14px;-webkit-transition:all .4s;transition:all .4s;font-family:sans-serif;color:#4990e2}.swagger-ui .info a:hover{color:#1f69c0}.swagger-ui .info>div{margin:0 0 5px}.swagger-ui .info .base-url{font-size:12px;font-weight:300!important;margin:0;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui .info .title{font-size:36px;margin:0;font-family:sans-serif;color:#3b4151}.swagger-ui .info .title small{font-size:10px;position:relative;top:-5px;display:inline-block;margin:0 0 0 5px;padding:2px 4px;vertical-align:super;border-radius:57px;background:#7d8492}.swagger-ui .info .title small pre{margin:0;font-family:sans-serif;color:#fff}.swagger-ui .auth-btn-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;padding:10px 0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swagger-ui .auth-btn-wrapper .btn-done{margin-right:1em}.swagger-ui .auth-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.swagger-ui .auth-wrapper .authorize{padding-right:20px;margin-right:10px}.swagger-ui .auth-container{margin:0 0 10px;padding:10px 20px;border-bottom:1px solid #ebebeb}.swagger-ui .auth-container:last-of-type{margin:0;padding:10px 20px;border:0}.swagger-ui .auth-container h4{margin:5px 0 15px!important}.swagger-ui .auth-container .wrapper{margin:0;padding:0}.swagger-ui .auth-container input[type=password],.swagger-ui .auth-container input[type=text]{min-width:230px}.swagger-ui .auth-container .errors{font-size:12px;padding:10px;border-radius:4px;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui .scopes h2{font-size:14px;font-family:sans-serif;color:#3b4151}.swagger-ui .scope-def{padding:0 0 20px}.swagger-ui .errors-wrapper{margin:20px;padding:10px 20px;-webkit-animation:scaleUp .5s;animation:scaleUp .5s;border:2px solid #f93e3e;border-radius:4px;background:rgba(249,62,62,.1)}.swagger-ui .errors-wrapper .error-wrapper{margin:0 0 10px}.swagger-ui .errors-wrapper .errors h4{font-size:14px;margin:0;font-family:monospace;font-weight:600;color:#3b4151}.swagger-ui .errors-wrapper .errors small{color:#606060}.swagger-ui .errors-wrapper hgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.swagger-ui .errors-wrapper hgroup h4{font-size:20px;margin:0;-webkit-box-flex:1;-ms-flex:1;flex:1;font-family:sans-serif;color:#3b4151}@-webkit-keyframes scaleUp{0%{-webkit-transform:scale(.8);transform:scale(.8);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes scaleUp{0%{-webkit-transform:scale(.8);transform:scale(.8);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.swagger-ui .Resizer.vertical.disabled{display:none}\n/*# sourceMappingURL=swagger-ui.css.map*/"
  },
  {
    "path": "client/lite/swagger-ui/swagger.yaml",
    "content": "swagger: '2.0'\ninfo:\n  title: IRIShub - REST and gRPC Gateway docs\n  description: A REST interface for state queries, legacy transactions\n  version: 2.0.0\npaths:\n  /irismod/token/v1/params:\n    get:\n      summary: Params queries the token parameters\n      operationId: TokenParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  token_tax_rate:\n                    type: string\n                  issue_token_base_fee:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  mint_token_fee_ratio:\n                    type: string\n                title: Params defines token module's parameters\n              res:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryParametersResponse is response type for the Query/Parameters\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - TokenV1\n  /irismod/token/v1/tokens:\n    get:\n      summary: Tokens returns the token list\n      operationId: Tokens\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              Tokens:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryTokensResponse is response type for the Query/Tokens RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: owner\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - TokenV1\n  /irismod/token/v1/tokens/{denom}:\n    get:\n      summary: Token returns token with token name\n      operationId: Token\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              Token:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n            title: QueryTokenResponse is response type for the Query/Token RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: denom\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - TokenV1\n  /irismod/token/v1/tokens/{symbol}/fees:\n    get:\n      summary: Fees returns the fees to issue or mint a token\n      operationId: Fees\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              exist:\n                type: boolean\n              issue_fee:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n              mint_fee:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            title: QueryFeesResponse is response type for the Query/Fees RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: symbol\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - TokenV1\n  /irismod/token/v1/total_burn:\n    get:\n      summary: TotalBurn queries all the burnt coins\n      operationId: TotalBurn\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              burned_coins:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    Coin defines a token with a denomination and an amount.\n\n\n                    NOTE: The amount field is an Int which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n            title: >-\n              QueryTotalBurnResponse is response type for the Query/TotalBurn\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - TokenV1\n  /irismod/token/params:\n    get:\n      summary: Params queries the token parameters\n      operationId: LegacyTokenParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  token_tax_rate:\n                    type: string\n                  issue_token_base_fee:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  mint_token_fee_ratio:\n                    type: string\n                title: Params defines token module's parameters\n              res:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryParametersResponse is response type for the Query/Parameters\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - TokenV1beta1\n  /irismod/token/tokens:\n    get:\n      summary: Tokens returns the token list\n      operationId: LegacyTokens\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              Tokens:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryTokensResponse is response type for the Query/Tokens RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: owner\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - TokenV1beta1\n  /irismod/token/tokens/{denom}:\n    get:\n      summary: Token returns token with token name\n      operationId: LegacyToken\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              Token:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n            title: QueryTokenResponse is response type for the Query/Token RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: denom\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - TokenV1beta1\n  /irismod/token/tokens/{symbol}/fees:\n    get:\n      summary: Fees returns the fees to issue or mint a token\n      operationId: LegacyFees\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              exist:\n                type: boolean\n              issue_fee:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n              mint_fee:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            title: QueryFeesResponse is response type for the Query/Fees RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: symbol\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - TokenV1beta1\n  /irismod/token/total_burn:\n    get:\n      summary: TotalBurn queries all the burnt coins\n      operationId: LegacyTotalBurn\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              burned_coins:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    Coin defines a token with a denomination and an amount.\n\n\n                    NOTE: The amount field is an Int which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n            title: >-\n              QueryTotalBurnResponse is response type for the Query/TotalBurn\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - TokenV1beta1\n  /irismod/htlc/htlcs/{id}:\n    get:\n      summary: HTLC queries the HTLC by the specified hash lock\n      operationId: HTLC\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              htlc:\n                type: object\n                properties:\n                  id:\n                    type: string\n                  sender:\n                    type: string\n                  to:\n                    type: string\n                  receiver_on_other_chain:\n                    type: string\n                  sender_on_other_chain:\n                    type: string\n                  amount:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  hash_lock:\n                    type: string\n                  secret:\n                    type: string\n                  timestamp:\n                    type: string\n                    format: uint64\n                  expiration_height:\n                    type: string\n                    format: uint64\n                  state:\n                    type: string\n                    enum:\n                      - HTLC_STATE_OPEN\n                      - HTLC_STATE_COMPLETED\n                      - HTLC_STATE_REFUNDED\n                    default: HTLC_STATE_OPEN\n                    description: |-\n                      - HTLC_STATE_OPEN: HTLC_STATE_OPEN defines an open state.\n                       - HTLC_STATE_COMPLETED: HTLC_STATE_COMPLETED defines a completed state.\n                       - HTLC_STATE_REFUNDED: HTLC_STATE_REFUNDED defines a refunded state.\n                    title: HTLCState defines the state of an HTLC\n                  closed_block:\n                    type: string\n                    format: uint64\n                  transfer:\n                    type: boolean\n                  direction:\n                    type: string\n                    enum:\n                      - NONE\n                      - INCOMING\n                      - OUTGOING\n                    default: NONE\n                    description: |-\n                      - NONE: NONE defines an htlt none direction.\n                       - INCOMING: INCOMING defines an htlt incoming direction.\n                       - OUTGOING: OUTGOING defines an htlt outgoing direction.\n                    title: SwapDirection defines the direction of an HTLT\n                title: HTLC defines the struct of an HTLC\n            title: >-\n              QueryBalanceResponse is the response type for the Query/HTLC RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - HTLC\n  /irismod/htlc/params:\n    get:\n      summary: Params queries the htlc parameters\n      operationId: HTLCParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  asset_params:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        supply_limit:\n                          type: object\n                          properties:\n                            limit:\n                              type: string\n                            time_limited:\n                              type: boolean\n                            time_period:\n                              type: string\n                            time_based_limit:\n                              type: string\n                        active:\n                          type: boolean\n                        deputy_address:\n                          type: string\n                        fixed_fee:\n                          type: string\n                        min_swap_amount:\n                          type: string\n                        max_swap_amount:\n                          type: string\n                        min_block_lock:\n                          type: string\n                          format: uint64\n                        max_block_lock:\n                          type: string\n                          format: uint64\n                title: Params defines token module's parameters\n            title: >-\n              QueryParamsResponse is response type for the Query/Parameters RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - HTLC\n  /irismod/htlc/supplies:\n    get:\n      summary: AssetSupplies queries the supplies of all assets\n      operationId: AssetSupplies\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              asset_supplies:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    incoming_supply:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    outgoing_supply:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    current_supply:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    time_limited_current_supply:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    time_elapsed:\n                      type: string\n            title: >-\n              QueryAssetSuppliesResponse is response type for the\n              Query/AssetSupplies RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - HTLC\n  /irismod/htlc/supplies/{denom}:\n    get:\n      summary: AssetSupply queries the supply of an asset\n      operationId: AssetSupply\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              asset_supply:\n                type: object\n                properties:\n                  incoming_supply:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  outgoing_supply:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  current_supply:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  time_limited_current_supply:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  time_elapsed:\n                    type: string\n            title: >-\n              QueryAssetSupplyResponse is response type for the\n              Query/AssetSupply RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - HTLC\n  /irismod/coinswap/pools:\n    get:\n      summary: LiquidityPools returns all the liquidity pools available\n      operationId: LiquidityPools\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              pools:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                    escrow_address:\n                      type: string\n                      title: escrow account for deposit tokens\n                    standard:\n                      title: main token balance\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    token:\n                      title: counterparty token balance\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    lpt:\n                      title: liquidity token balance\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    fee:\n                      type: string\n                      title: liquidity pool fee\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryLiquidityPoolsResponse is response type for the\n              Query/LiquidityPools RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Coinswap\n  /irismod/coinswap/pools/{lpt_denom}:\n    get:\n      summary: |-\n        LiquidityPool returns the liquidity pool for the provided\n        lpt_denom\n      operationId: LiquidityPool\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              pool:\n                type: object\n                properties:\n                  id:\n                    type: string\n                  escrow_address:\n                    type: string\n                    title: escrow account for deposit tokens\n                  standard:\n                    title: main token balance\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  token:\n                    title: counterparty token balance\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  lpt:\n                    title: liquidity token balance\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  fee:\n                    type: string\n                    title: liquidity pool fee\n            title: >-\n              QueryLiquidityPoolResponse is response type for the\n              Query/LiquidityPool RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: lpt_denom\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Coinswap\n  /irismod/farm/farmers/{farmer}:\n    get:\n      operationId: Farmer\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              list:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    pool_id:\n                      type: string\n                    locked:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    pending_reward:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n              height:\n                type: string\n                format: int64\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: farmer\n          in: path\n          required: true\n          type: string\n        - name: pool_id\n          in: query\n          required: false\n          type: string\n      tags:\n        - Query\n        - Farm\n  /irismod/farm/params:\n    get:\n      summary: Params queries the htlc parameters\n      operationId: FarmParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  pool_creation_fee:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  max_reward_categories:\n                    type: integer\n                    format: int64\n                  tax_rate:\n                    type: string\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Farm\n  /irismod/farm/pool/{id}:\n    get:\n      operationId: FarmPool\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              pool:\n                type: object\n                properties:\n                  id:\n                    type: string\n                  creator:\n                    type: string\n                  description:\n                    type: string\n                  start_height:\n                    type: string\n                    format: int64\n                  end_height:\n                    type: string\n                    format: int64\n                  editable:\n                    type: boolean\n                  expired:\n                    type: boolean\n                  total_lpt_locked:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                  total_reward:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  remaining_reward:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  reward_per_block:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Farm\n  /irismod/farm/pools:\n    get:\n      operationId: FarmPools\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              pools:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                    creator:\n                      type: string\n                    description:\n                      type: string\n                    start_height:\n                      type: string\n                      format: int64\n                    end_height:\n                      type: string\n                      format: int64\n                    editable:\n                      type: boolean\n                    expired:\n                      type: boolean\n                    total_lpt_locked:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    total_reward:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    remaining_reward:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    reward_per_block:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Farm\n  /irismod/nft/collections/{denom_id}:\n    get:\n      summary: Collection queries the NFTs of the specified denom\n      operationId: Collection\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              collection:\n                type: object\n                properties:\n                  denom:\n                    type: object\n                    properties:\n                      id:\n                        type: string\n                      name:\n                        type: string\n                      schema:\n                        type: string\n                      creator:\n                        type: string\n                      symbol:\n                        type: string\n                      mint_restricted:\n                        type: boolean\n                      update_restricted:\n                        type: boolean\n                      description:\n                        type: string\n                      uri:\n                        type: string\n                      uri_hash:\n                        type: string\n                      data:\n                        type: string\n                    title: Denom defines a type of NFT\n                  nfts:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        id:\n                          type: string\n                        name:\n                          type: string\n                        uri:\n                          type: string\n                        data:\n                          type: string\n                        owner:\n                          type: string\n                        uri_hash:\n                          type: string\n                      title: BaseNFT defines a non-fungible token\n                title: Collection defines a type of collection\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryCollectionResponse is the response type for the\n              Query/Collection RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom_id\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - NFT\n  /irismod/nft/collections/{denom_id}/supply:\n    get:\n      summary: Supply queries the total supply of a given denom or owner\n      operationId: Supply\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              amount:\n                type: string\n                format: uint64\n            title: >-\n              QuerySupplyResponse is the response type for the Query/Supply RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom_id\n          in: path\n          required: true\n          type: string\n        - name: owner\n          in: query\n          required: false\n          type: string\n      tags:\n        - Query\n        - NFT\n  /irismod/nft/denoms:\n    get:\n      summary: Denoms queries all the denoms\n      operationId: Denoms\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              denoms:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                    name:\n                      type: string\n                    schema:\n                      type: string\n                    creator:\n                      type: string\n                    symbol:\n                      type: string\n                    mint_restricted:\n                      type: boolean\n                    update_restricted:\n                      type: boolean\n                    description:\n                      type: string\n                    uri:\n                      type: string\n                    uri_hash:\n                      type: string\n                    data:\n                      type: string\n                  title: Denom defines a type of NFT\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryDenomsResponse is the response type for the Query/Denoms RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - NFT\n  /irismod/nft/denoms/{denom_id}:\n    get:\n      summary: Denom queries the definition of a given denom\n      operationId: Denom\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              denom:\n                type: object\n                properties:\n                  id:\n                    type: string\n                  name:\n                    type: string\n                  schema:\n                    type: string\n                  creator:\n                    type: string\n                  symbol:\n                    type: string\n                  mint_restricted:\n                    type: boolean\n                  update_restricted:\n                    type: boolean\n                  description:\n                    type: string\n                  uri:\n                    type: string\n                  uri_hash:\n                    type: string\n                  data:\n                    type: string\n                title: Denom defines a type of NFT\n            title: >-\n              QueryDenomResponse is the response type for the Query/Denom RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - NFT\n  /irismod/nft/nfts:\n    get:\n      summary: NFTsOfOwner queries the NFTs of the specified owner\n      operationId: NFTsOfOwner\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              owner:\n                type: object\n                properties:\n                  address:\n                    type: string\n                  id_collections:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom_id:\n                          type: string\n                        token_ids:\n                          type: array\n                          items:\n                            type: string\n                      title: >-\n                        IDCollection defines a type of collection with specified\n                        ID\n                title: Owner defines a type of owner\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryNFTsOfOwnerResponse is the response type for the\n              Query/NFTsOfOwner RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom_id\n          in: query\n          required: false\n          type: string\n        - name: owner\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - NFT\n  /irismod/nft/nfts/{denom_id}/{token_id}:\n    get:\n      summary: NFT queries the NFT for the given denom and token ID\n      operationId: NFT\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              nft:\n                type: object\n                properties:\n                  id:\n                    type: string\n                  name:\n                    type: string\n                  uri:\n                    type: string\n                  data:\n                    type: string\n                  owner:\n                    type: string\n                  uri_hash:\n                    type: string\n                title: BaseNFT defines a non-fungible token\n            title: QueryNFTResponse is the response type for the Query/NFT RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom_id\n          in: path\n          required: true\n          type: string\n        - name: token_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - NFT\n  /irismod/service/bindings/{service_name}:\n    get:\n      summary: Bindings returns all service Bindings with service name and owner\n      operationId: Bindings\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              service_bindings:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    service_name:\n                      type: string\n                    provider:\n                      type: string\n                    deposit:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    pricing:\n                      type: string\n                    qos:\n                      type: string\n                      format: uint64\n                    options:\n                      type: string\n                    available:\n                      type: boolean\n                    disabled_time:\n                      type: string\n                      format: date-time\n                    owner:\n                      type: string\n                  title: ServiceBinding defines a standard for service binding\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryDefinitionsResponse is response type for the Query/Bindings\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: service_name\n          in: path\n          required: true\n          type: string\n        - name: owner\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Service\n  /irismod/service/bindings/{service_name}/{provider}:\n    get:\n      summary: Binding returns service Binding with service name and provider\n      operationId: Binding\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              service_binding:\n                type: object\n                properties:\n                  service_name:\n                    type: string\n                  provider:\n                    type: string\n                  deposit:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  pricing:\n                    type: string\n                  qos:\n                    type: string\n                    format: uint64\n                  options:\n                    type: string\n                  available:\n                    type: boolean\n                  disabled_time:\n                    type: string\n                    format: date-time\n                  owner:\n                    type: string\n                title: ServiceBinding defines a standard for service binding\n            title: >-\n              QueryDefinitionResponse is response type for the Query/Binding RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: service_name\n          in: path\n          required: true\n          type: string\n        - name: provider\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/contexts/{request_context_id}:\n    get:\n      summary: RequestContext returns the request context\n      operationId: RequestContext\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              request_context:\n                type: object\n                properties:\n                  service_name:\n                    type: string\n                  providers:\n                    type: array\n                    items:\n                      type: string\n                  consumer:\n                    type: string\n                  input:\n                    type: string\n                  service_fee_cap:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  module_name:\n                    type: string\n                  timeout:\n                    type: string\n                    format: int64\n                  repeated:\n                    type: boolean\n                  repeated_frequency:\n                    type: string\n                    format: uint64\n                  repeated_total:\n                    type: string\n                    format: int64\n                  batch_counter:\n                    type: string\n                    format: uint64\n                  batch_request_count:\n                    type: integer\n                    format: int64\n                  batch_response_count:\n                    type: integer\n                    format: int64\n                  batch_response_threshold:\n                    type: integer\n                    format: int64\n                  response_threshold:\n                    type: integer\n                    format: int64\n                  batch_state:\n                    type: string\n                    enum:\n                      - BATCH_RUNNING\n                      - BATCH_COMPLETED\n                    default: BATCH_RUNNING\n                    description: >-\n                      - BATCH_RUNNING: BATCH_RUNNING defines the running batch\n                      status.\n                       - BATCH_COMPLETED: BATCH_COMPLETED defines the completed batch status.\n                    title: >-\n                      RequestContextBatchState is a type alias that represents a\n                      request batch\n\n                      status as a byte\n                  state:\n                    type: string\n                    enum:\n                      - RUNNING\n                      - PAUSED\n                      - COMPLETED\n                    default: RUNNING\n                    description: >-\n                      - RUNNING: RUNNING defines the running request context\n                      status\n                       - PAUSED: PAUSED defines the paused request context status\n                       - COMPLETED: COMPLETED defines the completed request context status\n                    title: >-\n                      RequestContextState is a type alias that represents a\n                      request status as a\n\n                      byte\n                title: RequestContext defines a standard for request context\n            title: >-\n              QueryRequestContextResponse is response type for the\n              Query/RequestContext RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: request_context_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/definitions/{service_name}:\n    get:\n      summary: Definition returns service definition\n      operationId: Definition\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              service_definition:\n                type: object\n                properties:\n                  name:\n                    type: string\n                  description:\n                    type: string\n                  tags:\n                    type: array\n                    items:\n                      type: string\n                  author:\n                    type: string\n                  author_description:\n                    type: string\n                  schemas:\n                    type: string\n                title: ServiceDefinition defines a standard for service definition\n            title: >-\n              QueryDefinitionResponse is response type for the Query/Definition\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: service_name\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/fees/{provider}:\n    get:\n      summary: EarnedFees returns the earned service fee of one provider\n      operationId: EarnedFees\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              fees:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    Coin defines a token with a denomination and an amount.\n\n\n                    NOTE: The amount field is an Int which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n            title: >-\n              QueryEarnedFeesResponse is response type for the Query/EarnedFees\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: provider\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/owners/{owner}/withdraw-address:\n    get:\n      summary: WithdrawAddress returns the withdraw address of the binding owner\n      operationId: WithdrawAddress\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              withdraw_address:\n                type: string\n            title: >-\n              QueryWithdrawAddressResponse is response type for the\n              Query/WithdrawAddress\n\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: owner\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/params:\n    get:\n      summary: Params queries the service parameters\n      operationId: ServiceParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  max_request_timeout:\n                    type: string\n                    format: int64\n                  min_deposit_multiple:\n                    type: string\n                    format: int64\n                  min_deposit:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  service_fee_tax:\n                    type: string\n                  slash_fraction:\n                    type: string\n                  complaint_retrospect:\n                    type: string\n                  arbitration_time_limit:\n                    type: string\n                  tx_size_limit:\n                    type: string\n                    format: uint64\n                  base_denom:\n                    type: string\n                  restricted_service_fee_denom:\n                    type: boolean\n                title: Params defines service module's parameters\n              res:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryParametersResponse is response type for the Query/Parameters\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Service\n  /irismod/service/requests/contexts/{request_context_id}/{batch_counter}:\n    get:\n      summary: RequestsByReqCtx returns all requests of one service call batch\n      operationId: RequestsByReqCtx\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              requests:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                    service_name:\n                      type: string\n                    provider:\n                      type: string\n                    consumer:\n                      type: string\n                    input:\n                      type: string\n                    service_fee:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    request_height:\n                      type: string\n                      format: int64\n                    expiration_height:\n                      type: string\n                      format: int64\n                    request_context_id:\n                      type: string\n                    request_context_batch_counter:\n                      type: string\n                      format: uint64\n                  title: Request defines a standard for request\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryRequestsByReqCtxResponse is response type for the\n              Query/RequestsByReqCtx\n\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: request_context_id\n          in: path\n          required: true\n          type: string\n        - name: batch_counter\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Service\n  /irismod/service/requests/{request_id}:\n    get:\n      summary: Request returns the request\n      operationId: Request\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              request:\n                type: object\n                properties:\n                  id:\n                    type: string\n                  service_name:\n                    type: string\n                  provider:\n                    type: string\n                  consumer:\n                    type: string\n                  input:\n                    type: string\n                  service_fee:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  request_height:\n                    type: string\n                    format: int64\n                  expiration_height:\n                    type: string\n                    format: int64\n                  request_context_id:\n                    type: string\n                  request_context_batch_counter:\n                    type: string\n                    format: uint64\n                title: Request defines a standard for request\n            title: >-\n              QueryRequestResponse is response type for the Query/Request RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: request_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/requests/{service_name}/{provider}:\n    get:\n      summary: Request returns all requests of one service with provider\n      operationId: Requests\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              requests:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                    service_name:\n                      type: string\n                    provider:\n                      type: string\n                    consumer:\n                      type: string\n                    input:\n                      type: string\n                    service_fee:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    request_height:\n                      type: string\n                      format: int64\n                    expiration_height:\n                      type: string\n                      format: int64\n                    request_context_id:\n                      type: string\n                    request_context_batch_counter:\n                      type: string\n                      format: uint64\n                  title: Request defines a standard for request\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryRequestsResponse is response type for the Query/Requests RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: service_name\n          in: path\n          required: true\n          type: string\n        - name: provider\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Service\n  /irismod/service/responses/{request_context_id}/{batch_counter}:\n    get:\n      summary: Responses returns all responses of one service call batch\n      operationId: Responses\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              responses:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    provider:\n                      type: string\n                    consumer:\n                      type: string\n                    result:\n                      type: string\n                    output:\n                      type: string\n                    request_context_id:\n                      type: string\n                    request_context_batch_counter:\n                      type: string\n                      format: uint64\n                  title: Response defines a standard for response\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryResponsesResponse is response type for the Query/Responses\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: request_context_id\n          in: path\n          required: true\n          type: string\n        - name: batch_counter\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Service\n  /irismod/service/responses/{request_id}:\n    get:\n      summary: Response returns the response of request\n      operationId: Response\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              response:\n                type: object\n                properties:\n                  provider:\n                    type: string\n                  consumer:\n                    type: string\n                  result:\n                    type: string\n                  output:\n                    type: string\n                  request_context_id:\n                    type: string\n                  request_context_batch_counter:\n                    type: string\n                    format: uint64\n                title: Response defines a standard for response\n            title: >-\n              QueryResponseResponse is response type for the Query/Response RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: request_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/service/schemas/{schema_name}:\n    get:\n      summary: Schema returns the schema\n      operationId: Schema\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              schema:\n                type: string\n            title: >-\n              QuerySchemaResponse is response type for the Query/Schema RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: schema_name\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Service\n  /irismod/oracle/feeds:\n    get:\n      summary: Feeds queries the feed list\n      operationId: Feeds\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              feeds:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    feed:\n                      type: object\n                      properties:\n                        feed_name:\n                          type: string\n                        description:\n                          type: string\n                        aggregate_func:\n                          type: string\n                        value_json_path:\n                          type: string\n                        latest_history:\n                          type: string\n                          format: uint64\n                        request_context_id:\n                          type: string\n                        creator:\n                          type: string\n                      title: Feed defines the feed standard\n                    service_name:\n                      type: string\n                    providers:\n                      type: array\n                      items:\n                        type: string\n                    input:\n                      type: string\n                    timeout:\n                      type: string\n                      format: int64\n                    service_fee_cap:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    repeated_frequency:\n                      type: string\n                      format: uint64\n                    response_threshold:\n                      type: integer\n                      format: int64\n                    state:\n                      type: string\n                      enum:\n                        - RUNNING\n                        - PAUSED\n                        - COMPLETED\n                      default: RUNNING\n                      description: >-\n                        - RUNNING: RUNNING defines the running request context\n                        status\n                         - PAUSED: PAUSED defines the paused request context status\n                         - COMPLETED: COMPLETED defines the completed request context status\n                      title: >-\n                        RequestContextState is a type alias that represents a\n                        request status as a\n\n                        byte\n                  title: FeedContext defines the feed context struct\n              pagination:\n                title: pagination defines an optional pagination for the request\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: QueryFeedsResponse is response type for the Query/Feeds RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: state\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Oracle\n  /irismod/oracle/feeds/{feed_name}:\n    get:\n      summary: Feed queries the feed\n      operationId: Feed\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              feed:\n                type: object\n                properties:\n                  feed:\n                    type: object\n                    properties:\n                      feed_name:\n                        type: string\n                      description:\n                        type: string\n                      aggregate_func:\n                        type: string\n                      value_json_path:\n                        type: string\n                      latest_history:\n                        type: string\n                        format: uint64\n                      request_context_id:\n                        type: string\n                      creator:\n                        type: string\n                    title: Feed defines the feed standard\n                  service_name:\n                    type: string\n                  providers:\n                    type: array\n                    items:\n                      type: string\n                  input:\n                    type: string\n                  timeout:\n                    type: string\n                    format: int64\n                  service_fee_cap:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  repeated_frequency:\n                    type: string\n                    format: uint64\n                  response_threshold:\n                    type: integer\n                    format: int64\n                  state:\n                    type: string\n                    enum:\n                      - RUNNING\n                      - PAUSED\n                      - COMPLETED\n                    default: RUNNING\n                    description: >-\n                      - RUNNING: RUNNING defines the running request context\n                      status\n                       - PAUSED: PAUSED defines the paused request context status\n                       - COMPLETED: COMPLETED defines the completed request context status\n                    title: >-\n                      RequestContextState is a type alias that represents a\n                      request status as a\n\n                      byte\n                title: FeedContext defines the feed context struct\n            title: QueryFeedResponse is response type for the Query/Feed RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: feed_name\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Oracle\n  /irismod/oracle/feeds/{feed_name}/values:\n    get:\n      summary: FeedValue queries the feed value\n      operationId: FeedValue\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              feed_values:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    data:\n                      type: string\n                    timestamp:\n                      type: string\n                      format: date-time\n                  title: FeedValue defines the feed result standard\n            title: >-\n              QueryFeedValueResponse is response type for the Query/FeedValue\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: feed_name\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Oracle\n  /irismod/random/queue:\n    get:\n      summary: RandomRequestQueue queries the random request queue\n      operationId: RandomRequestQueue\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              requests:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    height:\n                      type: string\n                      format: int64\n                    consumer:\n                      type: string\n                    tx_hash:\n                      type: string\n                    oracle:\n                      type: boolean\n                    service_fee_cap:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    service_context_id:\n                      type: string\n                  title: Request defines the random request standard\n            title: |-\n              QueryRandomRequestQueueResponse is response type for the\n              Query/RandomRequestQueue RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: height\n          in: query\n          required: false\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Random\n  /irismod/random/randoms/{req_id}:\n    get:\n      summary: Random queries the random result\n      operationId: Random\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              random:\n                type: object\n                properties:\n                  request_tx_hash:\n                    type: string\n                  height:\n                    type: string\n                    format: int64\n                  value:\n                    type: string\n                title: Random defines the feed standard\n            title: >-\n              QueryParametersResponse is response type for the Query/Random RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: req_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Random\n  /irismod/record/records/{record_id}:\n    get:\n      summary: Record queries the record by the given record ID\n      operationId: Record\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              record:\n                type: object\n                properties:\n                  tx_hash:\n                    type: string\n                  contents:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        digest:\n                          type: string\n                        digest_algo:\n                          type: string\n                        uri:\n                          type: string\n                        meta:\n                          type: string\n                      title: Content defines the detailed information for a record\n                  creator:\n                    type: string\n                title: Record defines the record standard\n            title: >-\n              QueryRecordResponse is the response type for the Query/Record RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: record_id\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Record\n  /irishub/mint/params:\n    get:\n      summary: Params queries the mint parameters\n      operationId: MintParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  mint_denom:\n                    type: string\n                    title: type of coin to mint\n                  inflation:\n                    type: string\n                    title: inflation rate\n                title: Params defines mint module's parameters\n              res:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QueryParamsResponse is response type for the Query/Parameters RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Mint\n  /irishub/guardian/supers:\n    get:\n      summary: Supers returns all Supers\n      operationId: Supers\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              supers:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    description:\n                      type: string\n                    account_type:\n                      type: string\n                      enum:\n                        - GENESIS\n                        - ORDINARY\n                      default: GENESIS\n                      description: |-\n                        - GENESIS: GENESIS defines a genesis account type\n                         - ORDINARY: ORDINARY defines a ordinary account type\n                      title: AccountType defines the super account type\n                    address:\n                      type: string\n                    added_by:\n                      type: string\n                  title: Super defines the super standard\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QuerySupersResponse is response type for the Query/Supers RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Guardian\n  /ethermint/evm/v1/account/{address}:\n    get:\n      summary: Account queries an Ethereum account.\n      operationId: EvmAccount\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              balance:\n                type: string\n                description: balance is the balance of the EVM denomination.\n              code_hash:\n                type: string\n                description: code_hash is the hex-formatted code bytes from the EOA.\n              nonce:\n                type: string\n                format: uint64\n                description: nonce is the account's sequence number.\n            description: >-\n              QueryAccountResponse is the response type for the Query/Account\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the ethereum hex address to query the account for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/balances/{address}:\n    get:\n      summary: |-\n        Balance queries the balance of a the EVM denomination for a single\n        EthAccount.\n      operationId: EvmBalance\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              balance:\n                type: string\n                description: balance is the balance of the EVM denomination.\n            description: >-\n              QueryBalanceResponse is the response type for the Query/Balance\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the ethereum hex address to query the balance for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/base_fee:\n    get:\n      summary: >-\n        BaseFee queries the base fee of the parent block of the current block,\n\n        it's similar to feemarket module's method, but also checks london\n        hardfork status.\n      operationId: BaseFee\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              base_fee:\n                type: string\n                title: base_fee is the EIP1559 base fee\n            description: QueryBaseFeeResponse returns the EIP1559 base fee.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/codes/{address}:\n    get:\n      summary: Code queries the balance of all coins for a single account.\n      operationId: Code\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              code:\n                type: string\n                format: byte\n                description: code represents the code bytes from an ethereum address.\n            description: |-\n              QueryCodeResponse is the response type for the Query/Code RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the ethereum hex address to query the code for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/cosmos_account/{address}:\n    get:\n      summary: CosmosAccount queries an Ethereum account's Cosmos Address.\n      operationId: CosmosAccount\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              cosmos_address:\n                type: string\n                description: cosmos_address is the cosmos address of the account.\n              sequence:\n                type: string\n                format: uint64\n                description: sequence is the account's sequence number.\n              account_number:\n                type: string\n                format: uint64\n                title: account_number is the account number\n            description: >-\n              QueryCosmosAccountResponse is the response type for the\n              Query/CosmosAccount\n\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the ethereum hex address to query the account for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/estimate_gas:\n    get:\n      summary: EstimateGas implements the `eth_estimateGas` rpc api\n      operationId: EstimateGas\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              gas:\n                type: string\n                format: uint64\n                title: gas returns the estimated gas\n            title: EstimateGasResponse defines EstimateGas response\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: args\n          description: args uses the same json format as the json rpc api.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: gas_cap\n          description: gas_cap defines the default gas cap to be used.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: proposer_address\n          description: proposer_address of the requested block in hex format.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: chain_id\n          description: >-\n            chain_id is the eip155 chain id parsed from the requested block\n            header.\n          in: query\n          required: false\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/eth_call:\n    get:\n      summary: EthCall implements the `eth_call` rpc api\n      operationId: EthCall\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              hash:\n                type: string\n                title: >-\n                  hash of the ethereum transaction in hex format. This hash\n                  differs from the\n\n                  Tendermint sha256 hash of the transaction bytes. See\n\n                  https://github.com/cometbft/cometbft/issues/6539 for\n                  reference\n              logs:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                      title: address of the contract that generated the event\n                    topics:\n                      type: array\n                      items:\n                        type: string\n                      description: topics is a list of topics provided by the contract.\n                    data:\n                      type: string\n                      format: byte\n                      title: >-\n                        data which is supplied by the contract, usually\n                        ABI-encoded\n                    block_number:\n                      type: string\n                      format: uint64\n                      title: >-\n                        block_number of the block in which the transaction was\n                        included\n                    tx_hash:\n                      type: string\n                      title: tx_hash is the transaction hash\n                    tx_index:\n                      type: string\n                      format: uint64\n                      title: tx_index of the transaction in the block\n                    block_hash:\n                      type: string\n                      title: >-\n                        block_hash of the block in which the transaction was\n                        included\n                    index:\n                      type: string\n                      format: uint64\n                      title: index of the log in the block\n                    removed:\n                      type: boolean\n                      description: >-\n                        removed is true if this log was reverted due to a chain\n\n                        reorganisation. You must pay attention to this field if\n                        you receive logs\n\n                        through a filter query.\n                  description: >-\n                    Log represents an protobuf compatible Ethereum Log that\n                    defines a contract\n\n                    log event. These events are generated by the LOG opcode and\n                    stored/indexed by\n\n                    the node.\n\n\n                    NOTE: address, topics and data are consensus fields. The\n                    rest of the fields\n\n                    are derived, i.e. filled in by the nodes, but not secured by\n                    consensus.\n                description: >-\n                  logs contains the transaction hash and the proto-compatible\n                  ethereum\n\n                  logs.\n              ret:\n                type: string\n                format: byte\n                title: >-\n                  ret is the returned data from evm function (result or data\n                  supplied with revert\n\n                  opcode)\n              vm_error:\n                type: string\n                title: vm_error is the error returned by vm execution\n              gas_used:\n                type: string\n                format: uint64\n                title: >-\n                  gas_used specifies how much gas was consumed by the\n                  transaction\n            description: MsgEthereumTxResponse defines the Msg/EthereumTx response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: args\n          description: args uses the same json format as the json rpc api.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: gas_cap\n          description: gas_cap defines the default gas cap to be used.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: proposer_address\n          description: proposer_address of the requested block in hex format.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: chain_id\n          description: >-\n            chain_id is the eip155 chain id parsed from the requested block\n            header.\n          in: query\n          required: false\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/params:\n    get:\n      summary: Params queries the parameters of x/evm module.\n      operationId: EvmParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params define the evm module parameters.\n                type: object\n                properties:\n                  evm_denom:\n                    type: string\n                    description: >-\n                      evm_denom represents the token denomination used to run\n                      the EVM state\n\n                      transitions.\n                  enable_create:\n                    type: boolean\n                    title: >-\n                      enable_create toggles state transitions that use the\n                      vm.Create function\n                  enable_call:\n                    type: boolean\n                    title: >-\n                      enable_call toggles state transitions that use the vm.Call\n                      function\n                  extra_eips:\n                    type: array\n                    items:\n                      type: string\n                      format: int64\n                    title: extra_eips defines the additional EIPs for the vm.Config\n                  chain_config:\n                    title: >-\n                      chain_config defines the EVM chain configuration\n                      parameters\n                    type: object\n                    properties:\n                      homestead_block:\n                        type: string\n                        title: >-\n                          homestead_block switch (nil no fork, 0 = already\n                          homestead)\n                      dao_fork_block:\n                        type: string\n                        title: >-\n                          dao_fork_block corresponds to TheDAO hard-fork switch\n                          block (nil no fork)\n                      dao_fork_support:\n                        type: boolean\n                        title: >-\n                          dao_fork_support defines whether the nodes supports or\n                          opposes the DAO hard-fork\n                      eip150_block:\n                        type: string\n                        title: >-\n                          eip150_block: EIP150 implements the Gas price changes\n\n                          (https://github.com/ethereum/EIPs/issues/150) EIP150\n                          HF block (nil no fork)\n                      eip150_hash:\n                        type: string\n                        title: >-\n                          eip150_hash: EIP150 HF hash (needed for header only\n                          clients as only gas pricing changed)\n                      eip155_block:\n                        type: string\n                        title: 'eip155_block: EIP155Block HF block'\n                      eip158_block:\n                        type: string\n                        title: 'eip158_block: EIP158 HF block'\n                      byzantium_block:\n                        type: string\n                        title: >-\n                          byzantium_block: Byzantium switch block (nil no fork,\n                          0 = already on byzantium)\n                      constantinople_block:\n                        type: string\n                        title: >-\n                          constantinople_block: Constantinople switch block (nil\n                          no fork, 0 = already activated)\n                      petersburg_block:\n                        type: string\n                        title: >-\n                          petersburg_block: Petersburg switch block (nil same as\n                          Constantinople)\n                      istanbul_block:\n                        type: string\n                        title: >-\n                          istanbul_block: Istanbul switch block (nil no fork, 0\n                          = already on istanbul)\n                      muir_glacier_block:\n                        type: string\n                        title: >-\n                          muir_glacier_block: Eip-2384 (bomb delay) switch block\n                          (nil no fork, 0 = already activated)\n                      berlin_block:\n                        type: string\n                        title: >-\n                          berlin_block: Berlin switch block (nil = no fork, 0 =\n                          already on berlin)\n                      london_block:\n                        type: string\n                        title: >-\n                          london_block: London switch block (nil = no fork, 0 =\n                          already on london)\n                      arrow_glacier_block:\n                        type: string\n                        title: >-\n                          arrow_glacier_block: Eip-4345 (bomb delay) switch\n                          block (nil = no fork, 0 = already activated)\n                      gray_glacier_block:\n                        type: string\n                        title: >-\n                          gray_glacier_block: EIP-5133 (bomb delay) switch block\n                          (nil = no fork, 0 = already activated)\n                      merge_netsplit_block:\n                        type: string\n                        title: >-\n                          merge_netsplit_block: Virtual fork after The Merge to\n                          use as a network splitter\n                      shanghai_block:\n                        type: string\n                        title: >-\n                          shanghai_block switch block (nil = no fork, 0 =\n                          already on shanghai)\n                      cancun_block:\n                        type: string\n                        title: >-\n                          cancun_block switch block (nil = no fork, 0 = already\n                          on cancun)\n                    description: >-\n                      ChainConfig defines the Ethereum ChainConfig parameters\n                      using *sdk.Int values\n\n                      instead of *big.Int.\n                  allow_unprotected_txs:\n                    type: boolean\n                    description: >-\n                      allow_unprotected_txs defines if replay-protected (i.e non\n                      EIP155\n\n                      signed) transactions can be executed on the state machine.\n                title: Params defines the EVM module parameters\n            description: >-\n              QueryParamsResponse defines the response type for querying x/evm\n              parameters.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/storage/{address}/{key}:\n    get:\n      summary: Storage queries the balance of all coins for a single account.\n      operationId: Storage\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              value:\n                type: string\n                description: >-\n                  value defines the storage state value hash associated with the\n                  given key.\n            description: >-\n              QueryStorageResponse is the response type for the Query/Storage\n              RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the ethereum hex address to query the storage state for.\n          in: path\n          required: true\n          type: string\n        - name: key\n          description: key defines the key of the storage state\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/trace_block:\n    get:\n      summary: >-\n        TraceBlock implements the `debug_traceBlockByNumber` and\n        `debug_traceBlockByHash` rpc api\n      operationId: TraceBlock\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              data:\n                type: string\n                format: byte\n                title: data is the response serialized in bytes\n            title: QueryTraceBlockResponse defines TraceBlock response\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: trace_config.tracer\n          description: tracer is a custom javascript tracer.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.timeout\n          description: >-\n            timeout overrides the default timeout of 5 seconds for\n            JavaScript-based tracing\n\n            calls.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.reexec\n          description: >-\n            reexec defines the number of blocks the tracer is willing to go\n            back.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: trace_config.disable_stack\n          description: disable_stack switches stack capture.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.disable_storage\n          description: disable_storage switches storage capture.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.debug\n          description: debug can be used to print output during capture end.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.limit\n          description: >-\n            limit defines the maximum length of output, but zero means\n            unlimited.\n          in: query\n          required: false\n          type: integer\n          format: int32\n        - name: trace_config.overrides.homestead_block\n          description: homestead_block switch (nil no fork, 0 = already homestead).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.dao_fork_block\n          description: >-\n            dao_fork_block corresponds to TheDAO hard-fork switch block (nil no\n            fork).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.dao_fork_support\n          description: >-\n            dao_fork_support defines whether the nodes supports or opposes the\n            DAO hard-fork.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.overrides.eip150_block\n          description: >-\n            eip150_block: EIP150 implements the Gas price changes\n\n            (https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil\n            no fork).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.eip150_hash\n          description: >-\n            eip150_hash: EIP150 HF hash (needed for header only clients as only\n            gas pricing changed).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.eip155_block\n          description: 'eip155_block: EIP155Block HF block.'\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.eip158_block\n          description: 'eip158_block: EIP158 HF block.'\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.byzantium_block\n          description: >-\n            byzantium_block: Byzantium switch block (nil no fork, 0 = already on\n            byzantium).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.constantinople_block\n          description: >-\n            constantinople_block: Constantinople switch block (nil no fork, 0 =\n            already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.petersburg_block\n          description: >-\n            petersburg_block: Petersburg switch block (nil same as\n            Constantinople).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.istanbul_block\n          description: >-\n            istanbul_block: Istanbul switch block (nil no fork, 0 = already on\n            istanbul).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.muir_glacier_block\n          description: >-\n            muir_glacier_block: Eip-2384 (bomb delay) switch block (nil no fork,\n            0 = already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.berlin_block\n          description: >-\n            berlin_block: Berlin switch block (nil = no fork, 0 = already on\n            berlin).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.london_block\n          description: >-\n            london_block: London switch block (nil = no fork, 0 = already on\n            london).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.arrow_glacier_block\n          description: >-\n            arrow_glacier_block: Eip-4345 (bomb delay) switch block (nil = no\n            fork, 0 = already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.gray_glacier_block\n          description: >-\n            gray_glacier_block: EIP-5133 (bomb delay) switch block (nil = no\n            fork, 0 = already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.merge_netsplit_block\n          description: >-\n            merge_netsplit_block: Virtual fork after The Merge to use as a\n            network splitter.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.shanghai_block\n          description: >-\n            shanghai_block switch block (nil = no fork, 0 = already on\n            shanghai).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.cancun_block\n          description: cancun_block switch block (nil = no fork, 0 = already on cancun).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.enable_memory\n          description: enable_memory switches memory capture.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.enable_return_data\n          description: enable_return_data switches the capture of return data.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.tracer_json_config\n          description: tracer_json_config configures the tracer using a JSON string.\n          in: query\n          required: false\n          type: string\n        - name: block_number\n          description: block_number of the traced block.\n          in: query\n          required: false\n          type: string\n          format: int64\n        - name: block_hash\n          description: block_hash (hex) of the traced block.\n          in: query\n          required: false\n          type: string\n        - name: block_time\n          description: block_time of the traced block.\n          in: query\n          required: false\n          type: string\n          format: date-time\n        - name: proposer_address\n          description: proposer_address is the address of the requested block.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: chain_id\n          description: >-\n            chain_id is the eip155 chain id parsed from the requested block\n            header.\n          in: query\n          required: false\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/trace_tx:\n    get:\n      summary: TraceTx implements the `debug_traceTransaction` rpc api\n      operationId: TraceTx\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              data:\n                type: string\n                format: byte\n                title: data is the response serialized in bytes\n            title: QueryTraceTxResponse defines TraceTx response\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: msg.data.type_url\n          description: >-\n            A URL/resource name that uniquely identifies the type of the\n            serialized\n\n            protocol buffer message. This string must contain at least\n\n            one \"/\" character. The last segment of the URL's path must represent\n\n            the fully qualified name of the type (as in\n\n            `path/google.protobuf.Duration`). The name should be in a canonical\n            form\n\n            (e.g., leading \".\" is not accepted).\n\n\n            In practice, teams usually precompile into the binary all types that\n            they\n\n            expect it to use in the context of Any. However, for URLs which use\n            the\n\n            scheme `http`, `https`, or no scheme, one can optionally set up a\n            type\n\n            server that maps type URLs to message definitions as follows:\n\n\n            * If no scheme is provided, `https` is assumed.\n\n            * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n              value in binary format, or produce an error.\n            * Applications are allowed to cache lookup results based on the\n              URL, or have them precompiled into a binary to avoid any\n              lookup. Therefore, binary compatibility needs to be preserved\n              on changes to types. (Use versioned type names to manage\n              breaking changes.)\n\n            Note: this functionality is not currently available in the official\n\n            protobuf release, and it is not used for type URLs beginning with\n\n            type.googleapis.com.\n\n\n            Schemes other than `http`, `https` (or the empty scheme) might be\n\n            used with implementation specific semantics.\n          in: query\n          required: false\n          type: string\n        - name: msg.data.value\n          description: >-\n            Must be a valid serialized protocol buffer of the above specified\n            type.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: msg.size\n          description: size is the encoded storage size of the transaction (DEPRECATED).\n          in: query\n          required: false\n          type: number\n          format: double\n        - name: msg.hash\n          description: hash of the transaction in hex format.\n          in: query\n          required: false\n          type: string\n        - name: msg.from\n          description: >-\n            from is the ethereum signer address in hex format. This address\n            value is checked\n\n            against the address derived from the signature (V, R, S) using the\n\n            secp256k1 elliptic curve.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.tracer\n          description: tracer is a custom javascript tracer.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.timeout\n          description: >-\n            timeout overrides the default timeout of 5 seconds for\n            JavaScript-based tracing\n\n            calls.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.reexec\n          description: >-\n            reexec defines the number of blocks the tracer is willing to go\n            back.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: trace_config.disable_stack\n          description: disable_stack switches stack capture.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.disable_storage\n          description: disable_storage switches storage capture.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.debug\n          description: debug can be used to print output during capture end.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.limit\n          description: >-\n            limit defines the maximum length of output, but zero means\n            unlimited.\n          in: query\n          required: false\n          type: integer\n          format: int32\n        - name: trace_config.overrides.homestead_block\n          description: homestead_block switch (nil no fork, 0 = already homestead).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.dao_fork_block\n          description: >-\n            dao_fork_block corresponds to TheDAO hard-fork switch block (nil no\n            fork).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.dao_fork_support\n          description: >-\n            dao_fork_support defines whether the nodes supports or opposes the\n            DAO hard-fork.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.overrides.eip150_block\n          description: >-\n            eip150_block: EIP150 implements the Gas price changes\n\n            (https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil\n            no fork).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.eip150_hash\n          description: >-\n            eip150_hash: EIP150 HF hash (needed for header only clients as only\n            gas pricing changed).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.eip155_block\n          description: 'eip155_block: EIP155Block HF block.'\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.eip158_block\n          description: 'eip158_block: EIP158 HF block.'\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.byzantium_block\n          description: >-\n            byzantium_block: Byzantium switch block (nil no fork, 0 = already on\n            byzantium).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.constantinople_block\n          description: >-\n            constantinople_block: Constantinople switch block (nil no fork, 0 =\n            already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.petersburg_block\n          description: >-\n            petersburg_block: Petersburg switch block (nil same as\n            Constantinople).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.istanbul_block\n          description: >-\n            istanbul_block: Istanbul switch block (nil no fork, 0 = already on\n            istanbul).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.muir_glacier_block\n          description: >-\n            muir_glacier_block: Eip-2384 (bomb delay) switch block (nil no fork,\n            0 = already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.berlin_block\n          description: >-\n            berlin_block: Berlin switch block (nil = no fork, 0 = already on\n            berlin).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.london_block\n          description: >-\n            london_block: London switch block (nil = no fork, 0 = already on\n            london).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.arrow_glacier_block\n          description: >-\n            arrow_glacier_block: Eip-4345 (bomb delay) switch block (nil = no\n            fork, 0 = already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.gray_glacier_block\n          description: >-\n            gray_glacier_block: EIP-5133 (bomb delay) switch block (nil = no\n            fork, 0 = already activated).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.merge_netsplit_block\n          description: >-\n            merge_netsplit_block: Virtual fork after The Merge to use as a\n            network splitter.\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.shanghai_block\n          description: >-\n            shanghai_block switch block (nil = no fork, 0 = already on\n            shanghai).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.overrides.cancun_block\n          description: cancun_block switch block (nil = no fork, 0 = already on cancun).\n          in: query\n          required: false\n          type: string\n        - name: trace_config.enable_memory\n          description: enable_memory switches memory capture.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.enable_return_data\n          description: enable_return_data switches the capture of return data.\n          in: query\n          required: false\n          type: boolean\n        - name: trace_config.tracer_json_config\n          description: tracer_json_config configures the tracer using a JSON string.\n          in: query\n          required: false\n          type: string\n        - name: block_number\n          description: block_number of requested transaction.\n          in: query\n          required: false\n          type: string\n          format: int64\n        - name: block_hash\n          description: block_hash of requested transaction.\n          in: query\n          required: false\n          type: string\n        - name: block_time\n          description: block_time of requested transaction.\n          in: query\n          required: false\n          type: string\n          format: date-time\n        - name: proposer_address\n          description: proposer_address is the proposer of the requested block.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: chain_id\n          description: >-\n            chain_id is the the eip155 chain id parsed from the requested block\n            header.\n          in: query\n          required: false\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Evm\n  /ethermint/evm/v1/validator_account/{cons_address}:\n    get:\n      summary: >-\n        ValidatorAccount queries an Ethereum account's from a validator\n        consensus\n\n        Address.\n      operationId: ValidatorAccount\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              account_address:\n                type: string\n                description: >-\n                  account_address is the cosmos address of the account in bech32\n                  format.\n              sequence:\n                type: string\n                format: uint64\n                description: sequence is the account's sequence number.\n              account_number:\n                type: string\n                format: uint64\n                title: account_number is the account number\n            description: |-\n              QueryValidatorAccountResponse is the response type for the\n              Query/ValidatorAccount RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: cons_address\n          description: cons_address is the validator cons address to query the account for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Evm\n  /ethermint/feemarket/v1/base_fee:\n    get:\n      summary: BaseFee queries the base fee of the parent block of the current block.\n      operationId: FeeMarketBaseFee\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              base_fee:\n                type: string\n                title: base_fee is the EIP1559 base fee\n            description: QueryBaseFeeResponse returns the EIP1559 base fee.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Feemarket\n  /ethermint/feemarket/v1/block_gas:\n    get:\n      summary: BlockGas queries the gas used at a given block height\n      operationId: BlockGas\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              gas:\n                type: string\n                format: int64\n                title: gas is the returned block gas\n            description: QueryBlockGasResponse returns block gas used for a given height.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Feemarket\n  /ethermint/feemarket/v1/params:\n    get:\n      summary: Params queries the parameters of x/feemarket module.\n      operationId: FeeMarketParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params define the evm module parameters.\n                type: object\n                properties:\n                  no_base_fee:\n                    type: boolean\n                    title: >-\n                      no_base_fee forces the EIP-1559 base fee to 0 (needed for\n                      0 price calls)\n                  base_fee_change_denominator:\n                    type: integer\n                    format: int64\n                    description: >-\n                      base_fee_change_denominator bounds the amount the base fee\n                      can change\n\n                      between blocks.\n                  elasticity_multiplier:\n                    type: integer\n                    format: int64\n                    description: >-\n                      elasticity_multiplier bounds the maximum gas limit an\n                      EIP-1559 block may\n\n                      have.\n                  enable_height:\n                    type: string\n                    format: int64\n                    description: >-\n                      enable_height defines at which block height the base fee\n                      calculation is enabled.\n                  base_fee:\n                    type: string\n                    description: base_fee for EIP-1559 blocks.\n                  min_gas_price:\n                    type: string\n                    title: >-\n                      min_gas_price defines the minimum gas price value for\n                      cosmos and eth transactions\n                  min_gas_multiplier:\n                    type: string\n                    title: >-\n                      min_gas_multiplier bounds the minimum gas used to be\n                      charged\n\n                      to senders based on gas limit\n                title: Params defines the EVM module parameters\n            description: >-\n              QueryParamsResponse defines the response type for querying x/evm\n              parameters.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Feemarket\n  /ibc/apps/transfer/v1/channels/{channel_id}/ports/{port_id}/escrow_address:\n    get:\n      summary: >-\n        EscrowAddress returns the escrow address for a particular port and\n        channel id.\n      operationId: EscrowAddress\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              escrow_address:\n                type: string\n                title: the escrow account address\n            description: >-\n              QueryEscrowAddressResponse is the response type of the\n              EscrowAddress RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: channel_id\n          description: unique channel identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: unique port identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/apps/transfer/v1/denom_hashes/{trace}:\n    get:\n      summary: DenomHash queries a denomination hash information.\n      operationId: DenomHash\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              hash:\n                type: string\n                description: hash (in hex format) of the denomination trace information.\n            description: >-\n              QueryDenomHashResponse is the response type for the\n              Query/DenomHash RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: trace\n          description: The denomination trace ([port_id]/[channel_id])+/[denom]\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/apps/transfer/v1/denom_traces:\n    get:\n      summary: DenomTraces queries all denomination traces.\n      operationId: DenomTraces\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              denom_traces:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    path:\n                      type: string\n                      description: >-\n                        path defines the chain of port/channel identifiers used\n                        for tracing the\n\n                        source of the fungible token.\n                    base_denom:\n                      type: string\n                      description: base denomination of the relayed fungible token.\n                  description: >-\n                    DenomTrace contains the base denomination for ICS20 fungible\n                    tokens and the\n\n                    source tracing information path.\n                description: denom_traces returns all denominations trace information.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryConnectionsResponse is the response type for the\n              Query/DenomTraces RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/apps/transfer/v1/denom_traces/{hash}:\n    get:\n      summary: DenomTrace queries a denomination trace information.\n      operationId: DenomTrace\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              denom_trace:\n                type: object\n                properties:\n                  path:\n                    type: string\n                    description: >-\n                      path defines the chain of port/channel identifiers used\n                      for tracing the\n\n                      source of the fungible token.\n                  base_denom:\n                    type: string\n                    description: base denomination of the relayed fungible token.\n                description: >-\n                  DenomTrace contains the base denomination for ICS20 fungible\n                  tokens and the\n\n                  source tracing information path.\n            description: >-\n              QueryDenomTraceResponse is the response type for the\n              Query/DenomTrace RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: hash\n          description: >-\n            hash (in hex format) or denom (full denom with ibc prefix) of the\n            denomination trace information.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/apps/transfer/v1/params:\n    get:\n      summary: Params queries all parameters of the ibc-transfer module.\n      operationId: TransferParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params defines the parameters of the module.\n                type: object\n                properties:\n                  send_enabled:\n                    type: boolean\n                    description: >-\n                      send_enabled enables or disables all cross-chain token\n                      transfers from this\n\n                      chain.\n                  receive_enabled:\n                    type: boolean\n                    description: >-\n                      receive_enabled enables or disables all cross-chain token\n                      transfers to this\n\n                      chain.\n            description: >-\n              QueryParamsResponse is the response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - IBC\n  /ibc/client/v1/params:\n    get:\n      summary: ClientParams queries all parameters of the ibc client.\n      operationId: ClientParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params defines the parameters of the module.\n                type: object\n                properties:\n                  allowed_clients:\n                    type: array\n                    items:\n                      type: string\n                    description: >-\n                      allowed_clients defines the list of allowed client state\n                      types.\n            description: >-\n              QueryClientParamsResponse is the response type for the\n              Query/ClientParams RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/client_states:\n    get:\n      summary: ClientStates queries all the IBC light clients of a chain.\n      operationId: ClientStates\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              client_states:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    client_id:\n                      type: string\n                      title: client identifier\n                    client_state:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                      title: client state\n                  description: >-\n                    IdentifiedClientState defines a client state with an\n                    additional client\n\n                    identifier field.\n                description: list of stored ClientStates of the chain.\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            description: >-\n              QueryClientStatesResponse is the response type for the\n              Query/ClientStates RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/client_states/{client_id}:\n    get:\n      summary: ClientState queries an IBC light client.\n      operationId: ClientState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              client_state:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n                title: client state associated with the request identifier\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            description: >-\n              QueryClientStateResponse is the response type for the\n              Query/ClientState RPC\n\n              method. Besides the client state, it includes a proof and the\n              height from\n\n              which the proof was retrieved.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: client_id\n          description: client state unique identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/client_status/{client_id}:\n    get:\n      summary: Status queries the status of an IBC client.\n      operationId: ClientStatus\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              status:\n                type: string\n            description: >-\n              QueryClientStatusResponse is the response type for the\n              Query/ClientStatus RPC\n\n              method. It returns the current status of the IBC client.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: client_id\n          description: client unique identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/consensus_states/{client_id}:\n    get:\n      summary: |-\n        ConsensusStates queries all the consensus state associated with a given\n        client.\n      operationId: ConsensusStates\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              consensus_states:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    height:\n                      title: consensus state height\n                      type: object\n                      properties:\n                        revision_number:\n                          type: string\n                          format: uint64\n                          title: the revision that the client is currently on\n                        revision_height:\n                          type: string\n                          format: uint64\n                          title: the height within the given revision\n                      description: >-\n                        Normally the RevisionHeight is incremented at each\n                        height while keeping\n\n                        RevisionNumber the same. However some consensus\n                        algorithms may choose to\n\n                        reset the height in certain conditions e.g. hard forks,\n                        state-machine\n\n                        breaking changes In these cases, the RevisionNumber is\n                        incremented so that\n\n                        height continues to be monitonically increasing even as\n                        the RevisionHeight\n\n                        gets reset\n                    consensus_state:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                      title: consensus state\n                  description: >-\n                    ConsensusStateWithHeight defines a consensus state with an\n                    additional height\n\n                    field.\n                title: consensus states associated with the identifier\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: |-\n              QueryConsensusStatesResponse is the response type for the\n              Query/ConsensusStates RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: client_id\n          description: client identifier\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/consensus_states/{client_id}/heights:\n    get:\n      summary: >-\n        ConsensusStateHeights queries the height of every consensus states\n        associated with a given client.\n      operationId: ConsensusStateHeights\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              consensus_state_heights:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    revision_number:\n                      type: string\n                      format: uint64\n                      title: the revision that the client is currently on\n                    revision_height:\n                      type: string\n                      format: uint64\n                      title: the height within the given revision\n                  description: >-\n                    Normally the RevisionHeight is incremented at each height\n                    while keeping\n\n                    RevisionNumber the same. However some consensus algorithms\n                    may choose to\n\n                    reset the height in certain conditions e.g. hard forks,\n                    state-machine\n\n                    breaking changes In these cases, the RevisionNumber is\n                    incremented so that\n\n                    height continues to be monitonically increasing even as the\n                    RevisionHeight\n\n                    gets reset\n                  title: >-\n                    Height is a monotonically increasing data type\n\n                    that can be compared against another Height for the purposes\n                    of updating and\n\n                    freezing clients\n                title: consensus state heights\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: |-\n              QueryConsensusStateHeightsResponse is the response type for the\n              Query/ConsensusStateHeights RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: client_id\n          description: client identifier\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/consensus_states/{client_id}/revision/{revision_number}/height/{revision_height}:\n    get:\n      summary: >-\n        ConsensusState queries a consensus state associated with a client state\n        at\n\n        a given height.\n      operationId: ConsensusState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              consensus_state:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n                title: >-\n                  consensus state associated with the client identifier at the\n                  given height\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n                title: >-\n                  Height is a monotonically increasing data type\n\n                  that can be compared against another Height for the purposes\n                  of updating and\n\n                  freezing clients\n            title: >-\n              QueryConsensusStateResponse is the response type for the\n              Query/ConsensusState\n\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: client_id\n          description: client identifier\n          in: path\n          required: true\n          type: string\n        - name: revision_number\n          description: consensus state revision number\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: revision_height\n          description: consensus state revision height\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: latest_height\n          description: >-\n            latest_height overrrides the height field and queries the latest\n            stored\n\n            ConsensusState.\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/upgraded_client_states:\n    get:\n      summary: UpgradedClientState queries an Upgraded IBC light client.\n      operationId: UpgradedClientState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              upgraded_client_state:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n                title: client state associated with the request identifier\n            description: |-\n              QueryUpgradedClientStateResponse is the response type for the\n              Query/UpgradedClientState RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - IBC\n  /ibc/core/client/v1/upgraded_consensus_states:\n    get:\n      summary: UpgradedConsensusState queries an Upgraded IBC consensus state.\n      operationId: UpgradedConsensusState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              upgraded_consensus_state:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n                title: Consensus state associated with the request identifier\n            description: |-\n              QueryUpgradedConsensusStateResponse is the response type for the\n              Query/UpgradedConsensusState RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - IBC\n  /ibc/core/connection/v1/client_connections/{client_id}:\n    get:\n      summary: |-\n        ClientConnections queries the connection paths associated with a client\n        state.\n      operationId: ClientConnections\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              connection_paths:\n                type: array\n                items:\n                  type: string\n                description: slice of all the connection paths associated with a client.\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was generated\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryClientConnectionsResponse is the response type for the\n              Query/ClientConnections RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: client_id\n          description: client identifier associated with a connection\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/connection/v1/connections:\n    get:\n      summary: Connections queries all the IBC connections of a chain.\n      operationId: Connections\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              connections:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                      description: connection identifier.\n                    client_id:\n                      type: string\n                      description: client associated with this connection.\n                    versions:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          identifier:\n                            type: string\n                            title: unique version identifier\n                          features:\n                            type: array\n                            items:\n                              type: string\n                            title: >-\n                              list of features compatible with the specified\n                              identifier\n                        description: >-\n                          Version defines the versioning scheme used to\n                          negotiate the IBC verison in\n\n                          the connection handshake.\n                      title: >-\n                        IBC version which can be utilised to determine encodings\n                        or protocols for\n\n                        channels or packets utilising this connection\n                    state:\n                      description: current state of the connection end.\n                      type: string\n                      enum:\n                        - STATE_UNINITIALIZED_UNSPECIFIED\n                        - STATE_INIT\n                        - STATE_TRYOPEN\n                        - STATE_OPEN\n                      default: STATE_UNINITIALIZED_UNSPECIFIED\n                    counterparty:\n                      description: counterparty chain associated with this connection.\n                      type: object\n                      properties:\n                        client_id:\n                          type: string\n                          description: >-\n                            identifies the client on the counterparty chain\n                            associated with a given\n\n                            connection.\n                        connection_id:\n                          type: string\n                          description: >-\n                            identifies the connection end on the counterparty\n                            chain associated with a\n\n                            given connection.\n                        prefix:\n                          description: commitment merkle prefix of the counterparty chain.\n                          type: object\n                          properties:\n                            key_prefix:\n                              type: string\n                              format: byte\n                          title: >-\n                            MerklePrefix is merkle path prefixed to the key.\n\n                            The constructed key from the Path and the key will\n                            be append(Path.KeyPath,\n\n                            append(Path.KeyPrefix, key...))\n                    delay_period:\n                      type: string\n                      format: uint64\n                      description: delay period associated with this connection.\n                  description: >-\n                    IdentifiedConnection defines a connection with additional\n                    connection\n\n                    identifier field.\n                description: list of stored connections of the chain.\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            description: >-\n              QueryConnectionsResponse is the response type for the\n              Query/Connections RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/connection/v1/connections/{connection_id}:\n    get:\n      summary: Connection queries an IBC connection end.\n      operationId: Connection\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              connection:\n                title: connection associated with the request identifier\n                type: object\n                properties:\n                  client_id:\n                    type: string\n                    description: client associated with this connection.\n                  versions:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        identifier:\n                          type: string\n                          title: unique version identifier\n                        features:\n                          type: array\n                          items:\n                            type: string\n                          title: >-\n                            list of features compatible with the specified\n                            identifier\n                      description: >-\n                        Version defines the versioning scheme used to negotiate\n                        the IBC verison in\n\n                        the connection handshake.\n                    description: >-\n                      IBC version which can be utilised to determine encodings\n                      or protocols for\n\n                      channels or packets utilising this connection.\n                  state:\n                    description: current state of the connection end.\n                    type: string\n                    enum:\n                      - STATE_UNINITIALIZED_UNSPECIFIED\n                      - STATE_INIT\n                      - STATE_TRYOPEN\n                      - STATE_OPEN\n                    default: STATE_UNINITIALIZED_UNSPECIFIED\n                  counterparty:\n                    description: counterparty chain associated with this connection.\n                    type: object\n                    properties:\n                      client_id:\n                        type: string\n                        description: >-\n                          identifies the client on the counterparty chain\n                          associated with a given\n\n                          connection.\n                      connection_id:\n                        type: string\n                        description: >-\n                          identifies the connection end on the counterparty\n                          chain associated with a\n\n                          given connection.\n                      prefix:\n                        description: commitment merkle prefix of the counterparty chain.\n                        type: object\n                        properties:\n                          key_prefix:\n                            type: string\n                            format: byte\n                        title: >-\n                          MerklePrefix is merkle path prefixed to the key.\n\n                          The constructed key from the Path and the key will be\n                          append(Path.KeyPath,\n\n                          append(Path.KeyPrefix, key...))\n                  delay_period:\n                    type: string\n                    format: uint64\n                    description: >-\n                      delay period that must pass before a consensus state can\n                      be used for\n\n                      packet-verification NOTE: delay period logic is only\n                      implemented by some\n\n                      clients.\n                description: >-\n                  ConnectionEnd defines a stateful object on a chain connected\n                  to another\n\n                  separate one.\n\n                  NOTE: there must only be 2 defined ConnectionEnds to establish\n\n                  a connection between two chains.\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            description: >-\n              QueryConnectionResponse is the response type for the\n              Query/Connection RPC\n\n              method. Besides the connection end, it includes a proof and the\n              height from\n\n              which the proof was retrieved.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: connection_id\n          description: connection unique identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/connection/v1/connections/{connection_id}/client_state:\n    get:\n      summary: |-\n        ConnectionClientState queries the client state associated with the\n        connection.\n      operationId: ConnectionClientState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              identified_client_state:\n                title: client state associated with the channel\n                type: object\n                properties:\n                  client_id:\n                    type: string\n                    title: client identifier\n                  client_state:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                    title: client state\n                description: >-\n                  IdentifiedClientState defines a client state with an\n                  additional client\n\n                  identifier field.\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryConnectionClientStateResponse is the response type for the\n              Query/ConnectionClientState RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: connection_id\n          description: connection identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/connection/v1/connections/{connection_id}/consensus_state/revision/{revision_number}/height/{revision_height}:\n    get:\n      summary: |-\n        ConnectionConsensusState queries the consensus state associated with the\n        connection.\n      operationId: ConnectionConsensusState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              consensus_state:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n                title: consensus state associated with the channel\n              client_id:\n                type: string\n                title: client ID associated with the consensus state\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryConnectionConsensusStateResponse is the response type for the\n              Query/ConnectionConsensusState RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: connection_id\n          description: connection identifier\n          in: path\n          required: true\n          type: string\n        - name: revision_number\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: revision_height\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels:\n    get:\n      summary: Channels queries all the IBC channels of a chain.\n      operationId: Channels\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              channels:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    state:\n                      title: current state of the channel end\n                      type: string\n                      enum:\n                        - STATE_UNINITIALIZED_UNSPECIFIED\n                        - STATE_INIT\n                        - STATE_TRYOPEN\n                        - STATE_OPEN\n                        - STATE_CLOSED\n                      default: STATE_UNINITIALIZED_UNSPECIFIED\n                      description: >-\n                        State defines if a channel is in one of the following\n                        states:\n\n                        CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n                         - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n                         - STATE_INIT: A channel has just started the opening handshake.\n                         - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n                         - STATE_OPEN: A channel has completed the handshake. Open channels are\n                        ready to send and receive packets.\n                         - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n                        packets.\n                    ordering:\n                      title: whether the channel is ordered or unordered\n                      type: string\n                      enum:\n                        - ORDER_NONE_UNSPECIFIED\n                        - ORDER_UNORDERED\n                        - ORDER_ORDERED\n                      default: ORDER_NONE_UNSPECIFIED\n                      description: >-\n                        - ORDER_NONE_UNSPECIFIED: zero-value for channel\n                        ordering\n                         - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n                        which they were sent.\n                         - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n                    counterparty:\n                      title: counterparty channel end\n                      type: object\n                      properties:\n                        port_id:\n                          type: string\n                          description: >-\n                            port on the counterparty chain which owns the other\n                            end of the channel.\n                        channel_id:\n                          type: string\n                          title: channel end on the counterparty chain\n                    connection_hops:\n                      type: array\n                      items:\n                        type: string\n                      title: >-\n                        list of connection identifiers, in order, along which\n                        packets sent on\n\n                        this channel will travel\n                    version:\n                      type: string\n                      title: >-\n                        opaque channel version, which is agreed upon during the\n                        handshake\n                    port_id:\n                      type: string\n                      title: port identifier\n                    channel_id:\n                      type: string\n                      title: channel identifier\n                  description: >-\n                    IdentifiedChannel defines a channel with additional port and\n                    channel\n\n                    identifier fields.\n                description: list of stored channels of the chain.\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            description: >-\n              QueryChannelsResponse is the response type for the Query/Channels\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}:\n    get:\n      summary: Channel queries an IBC Channel.\n      operationId: Channel\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              channel:\n                title: channel associated with the request identifiers\n                type: object\n                properties:\n                  state:\n                    title: current state of the channel end\n                    type: string\n                    enum:\n                      - STATE_UNINITIALIZED_UNSPECIFIED\n                      - STATE_INIT\n                      - STATE_TRYOPEN\n                      - STATE_OPEN\n                      - STATE_CLOSED\n                    default: STATE_UNINITIALIZED_UNSPECIFIED\n                    description: >-\n                      State defines if a channel is in one of the following\n                      states:\n\n                      CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n                       - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n                       - STATE_INIT: A channel has just started the opening handshake.\n                       - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n                       - STATE_OPEN: A channel has completed the handshake. Open channels are\n                      ready to send and receive packets.\n                       - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n                      packets.\n                  ordering:\n                    title: whether the channel is ordered or unordered\n                    type: string\n                    enum:\n                      - ORDER_NONE_UNSPECIFIED\n                      - ORDER_UNORDERED\n                      - ORDER_ORDERED\n                    default: ORDER_NONE_UNSPECIFIED\n                    description: |-\n                      - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n                       - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n                      which they were sent.\n                       - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n                  counterparty:\n                    title: counterparty channel end\n                    type: object\n                    properties:\n                      port_id:\n                        type: string\n                        description: >-\n                          port on the counterparty chain which owns the other\n                          end of the channel.\n                      channel_id:\n                        type: string\n                        title: channel end on the counterparty chain\n                  connection_hops:\n                    type: array\n                    items:\n                      type: string\n                    title: >-\n                      list of connection identifiers, in order, along which\n                      packets sent on\n\n                      this channel will travel\n                  version:\n                    type: string\n                    title: >-\n                      opaque channel version, which is agreed upon during the\n                      handshake\n                description: >-\n                  Channel defines pipeline for exactly-once packet delivery\n                  between specific\n\n                  modules on separate blockchains, which has at least one end\n                  capable of\n\n                  sending packets and one end capable of receiving packets.\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            description: >-\n              QueryChannelResponse is the response type for the Query/Channel\n              RPC method.\n\n              Besides the Channel end, it includes a proof and the height from\n              which the\n\n              proof was retrieved.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/client_state:\n    get:\n      summary: >-\n        ChannelClientState queries for the client state for the channel\n        associated\n\n        with the provided channel identifiers.\n      operationId: ChannelClientState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              identified_client_state:\n                title: client state associated with the channel\n                type: object\n                properties:\n                  client_id:\n                    type: string\n                    title: client identifier\n                  client_state:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                    title: client state\n                description: >-\n                  IdentifiedClientState defines a client state with an\n                  additional client\n\n                  identifier field.\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryChannelClientStateResponse is the Response type for the\n              Query/QueryChannelClientState RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}:\n    get:\n      summary: |-\n        ChannelConsensusState queries for the consensus state for the channel\n        associated with the provided channel identifiers.\n      operationId: ChannelConsensusState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              consensus_state:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n                title: consensus state associated with the channel\n              client_id:\n                type: string\n                title: client ID associated with the consensus state\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryChannelClientStateResponse is the Response type for the\n              Query/QueryChannelClientState RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: revision_number\n          description: revision number of the consensus state\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: revision_height\n          description: revision height of the consensus state\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence:\n    get:\n      summary: >-\n        NextSequenceReceive returns the next receive sequence for a given\n        channel.\n      operationId: NextSequenceReceive\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              next_sequence_receive:\n                type: string\n                format: uint64\n                title: next sequence receive number\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QuerySequenceResponse is the request type for the\n              Query/QueryNextSequenceReceiveResponse RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements:\n    get:\n      summary: >-\n        PacketAcknowledgements returns all the packet acknowledgements\n        associated\n\n        with a channel.\n      operationId: PacketAcknowledgements\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              acknowledgements:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    port_id:\n                      type: string\n                      description: channel port identifier.\n                    channel_id:\n                      type: string\n                      description: channel unique identifier.\n                    sequence:\n                      type: string\n                      format: uint64\n                      description: packet sequence.\n                    data:\n                      type: string\n                      format: byte\n                      description: embedded data that represents packet state.\n                  description: >-\n                    PacketState defines the generic type necessary to retrieve\n                    and store\n\n                    packet commitments, acknowledgements, and receipts.\n\n                    Caller is responsible for knowing the context necessary to\n                    interpret this\n\n                    state as a commitment, acknowledgement, or a receipt.\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryPacketAcknowledgemetsResponse is the request type for the\n              Query/QueryPacketAcknowledgements RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n        - name: packet_commitment_sequences\n          description: list of packet sequences.\n          in: query\n          required: false\n          type: array\n          items:\n            type: string\n            format: uint64\n          collectionFormat: multi\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}:\n    get:\n      summary: PacketAcknowledgement queries a stored packet acknowledgement hash.\n      operationId: PacketAcknowledgement\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              acknowledgement:\n                type: string\n                format: byte\n                title: packet associated with the request fields\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: >-\n              QueryPacketAcknowledgementResponse defines the client query\n              response for a\n\n              packet which also includes a proof and the height from which the\n\n              proof was retrieved\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: sequence\n          description: packet sequence\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments:\n    get:\n      summary: |-\n        PacketCommitments returns all the packet commitments hashes associated\n        with a channel.\n      operationId: PacketCommitments\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              commitments:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    port_id:\n                      type: string\n                      description: channel port identifier.\n                    channel_id:\n                      type: string\n                      description: channel unique identifier.\n                    sequence:\n                      type: string\n                      format: uint64\n                      description: packet sequence.\n                    data:\n                      type: string\n                      format: byte\n                      description: embedded data that represents packet state.\n                  description: >-\n                    PacketState defines the generic type necessary to retrieve\n                    and store\n\n                    packet commitments, acknowledgements, and receipts.\n\n                    Caller is responsible for knowing the context necessary to\n                    interpret this\n\n                    state as a commitment, acknowledgement, or a receipt.\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryPacketCommitmentsResponse is the request type for the\n              Query/QueryPacketCommitments RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks:\n    get:\n      summary: >-\n        UnreceivedAcks returns all the unreceived IBC acknowledgements\n        associated\n\n        with a channel and sequences.\n      operationId: UnreceivedAcks\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              sequences:\n                type: array\n                items:\n                  type: string\n                  format: uint64\n                title: list of unreceived acknowledgement sequences\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryUnreceivedAcksResponse is the response type for the\n              Query/UnreceivedAcks RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: packet_ack_sequences\n          description: list of acknowledgement sequences\n          in: path\n          required: true\n          type: array\n          items:\n            type: string\n            format: uint64\n          collectionFormat: csv\n          minItems: 1\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets:\n    get:\n      summary: >-\n        UnreceivedPackets returns all the unreceived IBC packets associated with\n        a\n\n        channel and sequences.\n      operationId: UnreceivedPackets\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              sequences:\n                type: array\n                items:\n                  type: string\n                  format: uint64\n                title: list of unreceived packet sequences\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryUnreceivedPacketsResponse is the response type for the\n              Query/UnreceivedPacketCommitments RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: packet_commitment_sequences\n          description: list of packet sequences\n          in: path\n          required: true\n          type: array\n          items:\n            type: string\n            format: uint64\n          collectionFormat: csv\n          minItems: 1\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}:\n    get:\n      summary: PacketCommitment queries a stored packet commitment hash.\n      operationId: PacketCommitment\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              commitment:\n                type: string\n                format: byte\n                title: packet associated with the request fields\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: >-\n              QueryPacketCommitmentResponse defines the client query response\n              for a packet\n\n              which also includes a proof and the height from which the proof\n              was\n\n              retrieved\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: sequence\n          description: packet sequence\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_receipts/{sequence}:\n    get:\n      summary: >-\n        PacketReceipt queries if a given packet sequence has been received on\n        the\n\n        queried chain\n      operationId: PacketReceipt\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              received:\n                type: boolean\n                title: success flag for if receipt exists\n              proof:\n                type: string\n                format: byte\n                title: merkle proof of existence\n              proof_height:\n                title: height at which the proof was retrieved\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: >-\n              QueryPacketReceiptResponse defines the client query response for a\n              packet\n\n              receipt which also includes a proof, and the height from which the\n              proof was\n\n              retrieved\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: channel_id\n          description: channel unique identifier\n          in: path\n          required: true\n          type: string\n        - name: port_id\n          description: port unique identifier\n          in: path\n          required: true\n          type: string\n        - name: sequence\n          description: packet sequence\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - IBC\n  /ibc/core/channel/v1/connections/{connection}/channels:\n    get:\n      summary: |-\n        ConnectionChannels queries all the channels associated with a connection\n        end.\n      operationId: ConnectionChannels\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              channels:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    state:\n                      title: current state of the channel end\n                      type: string\n                      enum:\n                        - STATE_UNINITIALIZED_UNSPECIFIED\n                        - STATE_INIT\n                        - STATE_TRYOPEN\n                        - STATE_OPEN\n                        - STATE_CLOSED\n                      default: STATE_UNINITIALIZED_UNSPECIFIED\n                      description: >-\n                        State defines if a channel is in one of the following\n                        states:\n\n                        CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n                         - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n                         - STATE_INIT: A channel has just started the opening handshake.\n                         - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n                         - STATE_OPEN: A channel has completed the handshake. Open channels are\n                        ready to send and receive packets.\n                         - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n                        packets.\n                    ordering:\n                      title: whether the channel is ordered or unordered\n                      type: string\n                      enum:\n                        - ORDER_NONE_UNSPECIFIED\n                        - ORDER_UNORDERED\n                        - ORDER_ORDERED\n                      default: ORDER_NONE_UNSPECIFIED\n                      description: >-\n                        - ORDER_NONE_UNSPECIFIED: zero-value for channel\n                        ordering\n                         - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n                        which they were sent.\n                         - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n                    counterparty:\n                      title: counterparty channel end\n                      type: object\n                      properties:\n                        port_id:\n                          type: string\n                          description: >-\n                            port on the counterparty chain which owns the other\n                            end of the channel.\n                        channel_id:\n                          type: string\n                          title: channel end on the counterparty chain\n                    connection_hops:\n                      type: array\n                      items:\n                        type: string\n                      title: >-\n                        list of connection identifiers, in order, along which\n                        packets sent on\n\n                        this channel will travel\n                    version:\n                      type: string\n                      title: >-\n                        opaque channel version, which is agreed upon during the\n                        handshake\n                    port_id:\n                      type: string\n                      title: port identifier\n                    channel_id:\n                      type: string\n                      title: channel identifier\n                  description: >-\n                    IdentifiedChannel defines a channel with additional port and\n                    channel\n\n                    identifier fields.\n                description: list of channels associated with a connection.\n              pagination:\n                title: pagination response\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n              height:\n                title: query block height\n                type: object\n                properties:\n                  revision_number:\n                    type: string\n                    format: uint64\n                    title: the revision that the client is currently on\n                  revision_height:\n                    type: string\n                    format: uint64\n                    title: the height within the given revision\n                description: >-\n                  Normally the RevisionHeight is incremented at each height\n                  while keeping\n\n                  RevisionNumber the same. However some consensus algorithms may\n                  choose to\n\n                  reset the height in certain conditions e.g. hard forks,\n                  state-machine\n\n                  breaking changes In these cases, the RevisionNumber is\n                  incremented so that\n\n                  height continues to be monitonically increasing even as the\n                  RevisionHeight\n\n                  gets reset\n            title: |-\n              QueryConnectionChannelsResponse is the Response type for the\n              Query/QueryConnectionChannels RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: connection\n          description: connection unique identifier\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - IBC\n  /cosmos/auth/v1beta1/accounts:\n    get:\n      summary: Accounts returns all the existing accounts\n      description: 'Since: cosmos-sdk 0.43'\n      operationId: Accounts\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              accounts:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n                title: accounts are the existing accounts\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryAccountsResponse is the response type for the Query/Accounts\n              RPC method.\n\n\n              Since: cosmos-sdk 0.43\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/accounts/{address}:\n    get:\n      summary: Account returns account details based on address.\n      operationId: Account\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              account:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n            description: >-\n              QueryAccountResponse is the response type for the Query/Account\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address defines the address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/address_by_id/{id}:\n    get:\n      summary: AccountAddressByID returns account address based on account number.\n      description: 'Since: cosmos-sdk 0.46.2'\n      operationId: AccountAddressByID\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              account_address:\n                type: string\n            description: 'Since: cosmos-sdk 0.46.2'\n            title: >-\n              QueryAccountAddressByIDResponse is the response type for\n              AccountAddressByID rpc method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: id\n          description: |-\n            id is the account number of the address to be queried. This field\n            should have been an uint64 (like all account numbers), and will be\n            updated to uint64 in a future version of the auth query.\n          in: path\n          required: true\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/bech32:\n    get:\n      summary: Bech32Prefix queries bech32Prefix\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: Bech32Prefix\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              bech32_prefix:\n                type: string\n            description: >-\n              Bech32PrefixResponse is the response type for Bech32Prefix rpc\n              method.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/bech32/{address_bytes}:\n    get:\n      summary: AddressBytesToString converts Account Address bytes to string\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: AddressBytesToString\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              address_string:\n                type: string\n            description: >-\n              AddressBytesToStringResponse is the response type for\n              AddressString rpc method.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address_bytes\n          in: path\n          required: true\n          type: string\n          format: byte\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/bech32/{address_string}:\n    get:\n      summary: AddressStringToBytes converts Address string to bytes\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: AddressStringToBytes\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              address_bytes:\n                type: string\n                format: byte\n            description: >-\n              AddressStringToBytesResponse is the response type for AddressBytes\n              rpc method.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address_string\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/module_accounts:\n    get:\n      summary: ModuleAccounts returns all the existing module accounts.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: ModuleAccounts\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              accounts:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n            description: >-\n              QueryModuleAccountsResponse is the response type for the\n              Query/ModuleAccounts RPC method.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/module_accounts/{name}:\n    get:\n      summary: ModuleAccountByName returns the module account info by module name\n      operationId: ModuleAccountByName\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              account:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n            description: >-\n              QueryModuleAccountByNameResponse is the response type for the\n              Query/ModuleAccountByName RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: name\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Auth\n  /cosmos/auth/v1beta1/params:\n    get:\n      summary: Params queries all parameters.\n      operationId: AuthParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params defines the parameters of the module.\n                type: object\n                properties:\n                  max_memo_characters:\n                    type: string\n                    format: uint64\n                  tx_sig_limit:\n                    type: string\n                    format: uint64\n                  tx_size_cost_per_byte:\n                    type: string\n                    format: uint64\n                  sig_verify_cost_ed25519:\n                    type: string\n                    format: uint64\n                  sig_verify_cost_secp256k1:\n                    type: string\n                    format: uint64\n            description: >-\n              QueryParamsResponse is the response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Auth\n  /cosmos/bank/v1beta1/balances/{address}:\n    get:\n      summary: AllBalances queries the balance of all coins for a single account.\n      operationId: AllBalances\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              balances:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    Coin defines a token with a denomination and an amount.\n\n\n                    NOTE: The amount field is an Int which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n                description: balances is the balances of all the coins.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryAllBalancesResponse is the response type for the\n              Query/AllBalances RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: address\n          description: address is the address to query balances for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/balances/{address}/by_denom:\n    get:\n      summary: Balance queries the balance of a single coin for a single account.\n      operationId: Balance\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              balance:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            description: >-\n              QueryBalanceResponse is the response type for the Query/Balance\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: address\n          description: address is the address to query balances for.\n          in: path\n          required: true\n          type: string\n        - name: denom\n          description: denom is the coin denom to query balances for.\n          in: query\n          required: false\n          type: string\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/denom_owners/{denom}:\n    get:\n      summary: >-\n        DenomOwners queries for all account addresses that own a particular\n        token\n\n        denomination.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: DenomOwners\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              denom_owners:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                      description: >-\n                        address defines the address that owns a particular\n                        denomination.\n                    balance:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  description: >-\n                    DenomOwner defines structure representing an account that\n                    owns or holds a\n\n                    particular denominated token. It contains the account\n                    address and account\n\n                    balance of the denominated token.\n\n\n                    Since: cosmos-sdk 0.46\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryDenomOwnersResponse defines the RPC response of a DenomOwners\n              RPC query.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom\n          description: >-\n            denom defines the coin denomination to query all account holders\n            for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/denoms_metadata:\n    get:\n      summary: |-\n        DenomsMetadata queries the client metadata for all registered coin\n        denominations.\n      operationId: DenomsMetadata\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              metadatas:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    description:\n                      type: string\n                    denom_units:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                            description: >-\n                              denom represents the string name of the given\n                              denom unit (e.g uatom).\n                          exponent:\n                            type: integer\n                            format: int64\n                            description: >-\n                              exponent represents power of 10 exponent that one\n                              must\n\n                              raise the base_denom to in order to equal the\n                              given DenomUnit's denom\n\n                              1 denom = 10^exponent base_denom\n\n                              (e.g. with a base_denom of uatom, one can create a\n                              DenomUnit of 'atom' with\n\n                              exponent = 6, thus: 1 atom = 10^6 uatom).\n                          aliases:\n                            type: array\n                            items:\n                              type: string\n                            title: >-\n                              aliases is a list of string aliases for the given\n                              denom\n                        description: |-\n                          DenomUnit represents a struct that describes a given\n                          denomination unit of the basic token.\n                      title: >-\n                        denom_units represents the list of DenomUnit's for a\n                        given coin\n                    base:\n                      type: string\n                      description: >-\n                        base represents the base denom (should be the DenomUnit\n                        with exponent = 0).\n                    display:\n                      type: string\n                      description: |-\n                        display indicates the suggested denom that should be\n                        displayed in clients.\n                    name:\n                      type: string\n                      description: 'Since: cosmos-sdk 0.43'\n                      title: 'name defines the name of the token (eg: Cosmos Atom)'\n                    symbol:\n                      type: string\n                      description: >-\n                        symbol is the token symbol usually shown on exchanges\n                        (eg: ATOM). This can\n\n                        be the same as the display.\n\n\n                        Since: cosmos-sdk 0.43\n                    uri:\n                      type: string\n                      description: >-\n                        URI to a document (on or off-chain) that contains\n                        additional information. Optional.\n\n\n                        Since: cosmos-sdk 0.46\n                    uri_hash:\n                      type: string\n                      description: >-\n                        URIHash is a sha256 hash of a document pointed by URI.\n                        It's used to verify that\n\n                        the document didn't change. Optional.\n\n\n                        Since: cosmos-sdk 0.46\n                  description: |-\n                    Metadata represents a struct that describes\n                    a basic token.\n                description: >-\n                  metadata provides the client information for all the\n                  registered tokens.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryDenomsMetadataResponse is the response type for the\n              Query/DenomsMetadata RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/denoms_metadata/{denom}:\n    get:\n      summary: DenomsMetadata queries the client metadata of a given coin denomination.\n      operationId: DenomMetadata\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              metadata:\n                type: object\n                properties:\n                  description:\n                    type: string\n                  denom_units:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                          description: >-\n                            denom represents the string name of the given denom\n                            unit (e.g uatom).\n                        exponent:\n                          type: integer\n                          format: int64\n                          description: >-\n                            exponent represents power of 10 exponent that one\n                            must\n\n                            raise the base_denom to in order to equal the given\n                            DenomUnit's denom\n\n                            1 denom = 10^exponent base_denom\n\n                            (e.g. with a base_denom of uatom, one can create a\n                            DenomUnit of 'atom' with\n\n                            exponent = 6, thus: 1 atom = 10^6 uatom).\n                        aliases:\n                          type: array\n                          items:\n                            type: string\n                          title: >-\n                            aliases is a list of string aliases for the given\n                            denom\n                      description: |-\n                        DenomUnit represents a struct that describes a given\n                        denomination unit of the basic token.\n                    title: >-\n                      denom_units represents the list of DenomUnit's for a given\n                      coin\n                  base:\n                    type: string\n                    description: >-\n                      base represents the base denom (should be the DenomUnit\n                      with exponent = 0).\n                  display:\n                    type: string\n                    description: |-\n                      display indicates the suggested denom that should be\n                      displayed in clients.\n                  name:\n                    type: string\n                    description: 'Since: cosmos-sdk 0.43'\n                    title: 'name defines the name of the token (eg: Cosmos Atom)'\n                  symbol:\n                    type: string\n                    description: >-\n                      symbol is the token symbol usually shown on exchanges (eg:\n                      ATOM). This can\n\n                      be the same as the display.\n\n\n                      Since: cosmos-sdk 0.43\n                  uri:\n                    type: string\n                    description: >-\n                      URI to a document (on or off-chain) that contains\n                      additional information. Optional.\n\n\n                      Since: cosmos-sdk 0.46\n                  uri_hash:\n                    type: string\n                    description: >-\n                      URIHash is a sha256 hash of a document pointed by URI.\n                      It's used to verify that\n\n                      the document didn't change. Optional.\n\n\n                      Since: cosmos-sdk 0.46\n                description: |-\n                  Metadata represents a struct that describes\n                  a basic token.\n            description: >-\n              QueryDenomMetadataResponse is the response type for the\n              Query/DenomMetadata RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom\n          description: denom is the coin denom to query the metadata for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/params:\n    get:\n      summary: Params queries the parameters of x/bank module.\n      operationId: BankParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  send_enabled:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        enabled:\n                          type: boolean\n                      description: >-\n                        SendEnabled maps coin denom to a send_enabled status\n                        (whether a denom is\n\n                        sendable).\n                  default_send_enabled:\n                    type: boolean\n                description: Params defines the parameters for the bank module.\n            description: >-\n              QueryParamsResponse defines the response type for querying x/bank\n              parameters.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/spendable_balances/{address}:\n    get:\n      summary: |-\n        SpendableBalances queries the spenable balance of all coins for a single\n        account.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: SpendableBalances\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              balances:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    Coin defines a token with a denomination and an amount.\n\n\n                    NOTE: The amount field is an Int which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n                description: balances is the spendable balances of all the coins.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QuerySpendableBalancesResponse defines the gRPC response structure\n              for querying\n\n              an account's spendable balances.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: address\n          description: address is the address to query spendable balances for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/supply:\n    get:\n      summary: TotalSupply queries the total supply of all coins.\n      operationId: TotalSupply\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              supply:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    Coin defines a token with a denomination and an amount.\n\n\n                    NOTE: The amount field is an Int which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n                title: supply is the supply of the coins\n              pagination:\n                description: |-\n                  pagination defines the pagination in the response.\n\n                  Since: cosmos-sdk 0.43\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            title: >-\n              QueryTotalSupplyResponse is the response type for the\n              Query/TotalSupply RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Bank\n  /cosmos/bank/v1beta1/supply/by_denom:\n    get:\n      summary: SupplyOf queries the supply of a single coin.\n      operationId: SupplyOf\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              amount:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            description: >-\n              QuerySupplyOfResponse is the response type for the Query/SupplyOf\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: denom\n          description: denom is the coin denom to query balances for.\n          in: query\n          required: false\n          type: string\n      tags:\n        - Query\n        - Bank\n  /cosmos/base/tendermint/v1beta1/abci_query:\n    get:\n      summary: >-\n        ABCIQuery defines a query handler that supports ABCI queries directly to\n\n        the application, bypassing Tendermint completely. The ABCI query must\n\n        contain a valid and supported path, including app, custom, p2p, and\n        store.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: ABCIQuery\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              code:\n                type: integer\n                format: int64\n              log:\n                type: string\n              info:\n                type: string\n              index:\n                type: string\n                format: int64\n              key:\n                type: string\n                format: byte\n              value:\n                type: string\n                format: byte\n              proof_ops:\n                type: object\n                properties:\n                  ops:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                        key:\n                          type: string\n                          format: byte\n                        data:\n                          type: string\n                          format: byte\n                      description: >-\n                        ProofOp defines an operation used for calculating Merkle\n                        root. The data could\n\n                        be arbitrary format, providing nessecary data for\n                        example neighbouring node\n\n                        hash.\n\n\n                        Note: This type is a duplicate of the ProofOp proto type\n                        defined in\n\n                        Tendermint.\n                description: >-\n                  ProofOps is Merkle proof defined by the list of ProofOps.\n\n\n                  Note: This type is a duplicate of the ProofOps proto type\n                  defined in\n\n                  Tendermint.\n              height:\n                type: string\n                format: int64\n              codespace:\n                type: string\n            description: >-\n              ABCIQueryResponse defines the response structure for the ABCIQuery\n              gRPC\n\n              query.\n\n\n              Note: This type is a duplicate of the ResponseQuery proto type\n              defined in\n\n              Tendermint.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: data\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: path\n          in: query\n          required: false\n          type: string\n        - name: height\n          in: query\n          required: false\n          type: string\n          format: int64\n        - name: prove\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/base/tendermint/v1beta1/blocks/latest:\n    get:\n      summary: GetLatestBlock returns the latest block.\n      operationId: GetLatestBlock\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              block:\n                title: 'Deprecated: please use `sdk_block` instead'\n                type: object\n                properties:\n                  header:\n                    type: object\n                    properties:\n                      version:\n                        title: basic block info\n                        type: object\n                        properties:\n                          block:\n                            type: string\n                            format: uint64\n                          app:\n                            type: string\n                            format: uint64\n                        description: >-\n                          Consensus captures the consensus rules for processing\n                          a block in the blockchain,\n\n                          including all blockchain data structures and the rules\n                          of the application's\n\n                          state transition machine.\n                      chain_id:\n                        type: string\n                      height:\n                        type: string\n                        format: int64\n                      time:\n                        type: string\n                        format: date-time\n                      last_block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      last_commit_hash:\n                        type: string\n                        format: byte\n                        title: hashes of block data\n                      data_hash:\n                        type: string\n                        format: byte\n                      validators_hash:\n                        type: string\n                        format: byte\n                        title: hashes from the app output from the prev block\n                      next_validators_hash:\n                        type: string\n                        format: byte\n                      consensus_hash:\n                        type: string\n                        format: byte\n                      app_hash:\n                        type: string\n                        format: byte\n                      last_results_hash:\n                        type: string\n                        format: byte\n                      evidence_hash:\n                        type: string\n                        format: byte\n                        title: consensus info\n                      proposer_address:\n                        type: string\n                        format: byte\n                    description: Header defines the structure of a Tendermint block header.\n                  data:\n                    type: object\n                    properties:\n                      txs:\n                        type: array\n                        items:\n                          type: string\n                          format: byte\n                        description: >-\n                          Txs that will be applied by state @ block.Height+1.\n\n                          NOTE: not all txs here are valid.  We're just agreeing\n                          on the order first.\n\n                          This means that block.AppHash does not include these\n                          txs.\n                    title: >-\n                      Data contains the set of transactions included in the\n                      block\n                  evidence:\n                    type: object\n                    properties:\n                      evidence:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            duplicate_vote_evidence:\n                              type: object\n                              properties:\n                                vote_a:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                vote_b:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                validator_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                DuplicateVoteEvidence contains evidence of a\n                                validator signed two conflicting votes.\n                            light_client_attack_evidence:\n                              type: object\n                              properties:\n                                conflicting_block:\n                                  type: object\n                                  properties:\n                                    signed_header:\n                                      type: object\n                                      properties:\n                                        header:\n                                          type: object\n                                          properties:\n                                            version:\n                                              title: basic block info\n                                              type: object\n                                              properties:\n                                                block:\n                                                  type: string\n                                                  format: uint64\n                                                app:\n                                                  type: string\n                                                  format: uint64\n                                              description: >-\n                                                Consensus captures the consensus rules\n                                                for processing a block in the\n                                                blockchain,\n\n                                                including all blockchain data structures\n                                                and the rules of the application's\n\n                                                state transition machine.\n                                            chain_id:\n                                              type: string\n                                            height:\n                                              type: string\n                                              format: int64\n                                            time:\n                                              type: string\n                                              format: date-time\n                                            last_block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            last_commit_hash:\n                                              type: string\n                                              format: byte\n                                              title: hashes of block data\n                                            data_hash:\n                                              type: string\n                                              format: byte\n                                            validators_hash:\n                                              type: string\n                                              format: byte\n                                              title: >-\n                                                hashes from the app output from the prev\n                                                block\n                                            next_validators_hash:\n                                              type: string\n                                              format: byte\n                                            consensus_hash:\n                                              type: string\n                                              format: byte\n                                            app_hash:\n                                              type: string\n                                              format: byte\n                                            last_results_hash:\n                                              type: string\n                                              format: byte\n                                            evidence_hash:\n                                              type: string\n                                              format: byte\n                                              title: consensus info\n                                            proposer_address:\n                                              type: string\n                                              format: byte\n                                          description: >-\n                                            Header defines the structure of a\n                                            Tendermint block header.\n                                        commit:\n                                          type: object\n                                          properties:\n                                            height:\n                                              type: string\n                                              format: int64\n                                            round:\n                                              type: integer\n                                              format: int32\n                                            block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            signatures:\n                                              type: array\n                                              items:\n                                                type: object\n                                                properties:\n                                                  block_id_flag:\n                                                    type: string\n                                                    enum:\n                                                      - BLOCK_ID_FLAG_UNKNOWN\n                                                      - BLOCK_ID_FLAG_ABSENT\n                                                      - BLOCK_ID_FLAG_COMMIT\n                                                      - BLOCK_ID_FLAG_NIL\n                                                    default: BLOCK_ID_FLAG_UNKNOWN\n                                                    title: >-\n                                                      BlockIdFlag indicates which BlcokID the\n                                                      signature is for\n                                                  validator_address:\n                                                    type: string\n                                                    format: byte\n                                                  timestamp:\n                                                    type: string\n                                                    format: date-time\n                                                  signature:\n                                                    type: string\n                                                    format: byte\n                                                description: >-\n                                                  CommitSig is a part of the Vote included\n                                                  in a Commit.\n                                          description: >-\n                                            Commit contains the evidence that a\n                                            block was committed by a set of\n                                            validators.\n                                    validator_set:\n                                      type: object\n                                      properties:\n                                        validators:\n                                          type: array\n                                          items:\n                                            type: object\n                                            properties:\n                                              address:\n                                                type: string\n                                                format: byte\n                                              pub_key:\n                                                type: object\n                                                properties:\n                                                  ed25519:\n                                                    type: string\n                                                    format: byte\n                                                  secp256k1:\n                                                    type: string\n                                                    format: byte\n                                                title: >-\n                                                  PublicKey defines the keys available for\n                                                  use with Tendermint Validators\n                                              voting_power:\n                                                type: string\n                                                format: int64\n                                              proposer_priority:\n                                                type: string\n                                                format: int64\n                                        proposer:\n                                          type: object\n                                          properties:\n                                            address:\n                                              type: string\n                                              format: byte\n                                            pub_key:\n                                              type: object\n                                              properties:\n                                                ed25519:\n                                                  type: string\n                                                  format: byte\n                                                secp256k1:\n                                                  type: string\n                                                  format: byte\n                                              title: >-\n                                                PublicKey defines the keys available for\n                                                use with Tendermint Validators\n                                            voting_power:\n                                              type: string\n                                              format: int64\n                                            proposer_priority:\n                                              type: string\n                                              format: int64\n                                        total_voting_power:\n                                          type: string\n                                          format: int64\n                                common_height:\n                                  type: string\n                                  format: int64\n                                byzantine_validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                LightClientAttackEvidence contains evidence of a\n                                set of validators attempting to mislead a light\n                                client.\n                  last_commit:\n                    type: object\n                    properties:\n                      height:\n                        type: string\n                        format: int64\n                      round:\n                        type: integer\n                        format: int32\n                      block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      signatures:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            block_id_flag:\n                              type: string\n                              enum:\n                                - BLOCK_ID_FLAG_UNKNOWN\n                                - BLOCK_ID_FLAG_ABSENT\n                                - BLOCK_ID_FLAG_COMMIT\n                                - BLOCK_ID_FLAG_NIL\n                              default: BLOCK_ID_FLAG_UNKNOWN\n                              title: >-\n                                BlockIdFlag indicates which BlcokID the\n                                signature is for\n                            validator_address:\n                              type: string\n                              format: byte\n                            timestamp:\n                              type: string\n                              format: date-time\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            CommitSig is a part of the Vote included in a\n                            Commit.\n                    description: >-\n                      Commit contains the evidence that a block was committed by\n                      a set of validators.\n              sdk_block:\n                title: 'Since: cosmos-sdk 0.47'\n                type: object\n                properties:\n                  header:\n                    type: object\n                    properties:\n                      version:\n                        title: basic block info\n                        type: object\n                        properties:\n                          block:\n                            type: string\n                            format: uint64\n                          app:\n                            type: string\n                            format: uint64\n                        description: >-\n                          Consensus captures the consensus rules for processing\n                          a block in the blockchain,\n\n                          including all blockchain data structures and the rules\n                          of the application's\n\n                          state transition machine.\n                      chain_id:\n                        type: string\n                      height:\n                        type: string\n                        format: int64\n                      time:\n                        type: string\n                        format: date-time\n                      last_block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      last_commit_hash:\n                        type: string\n                        format: byte\n                        title: hashes of block data\n                      data_hash:\n                        type: string\n                        format: byte\n                      validators_hash:\n                        type: string\n                        format: byte\n                        title: hashes from the app output from the prev block\n                      next_validators_hash:\n                        type: string\n                        format: byte\n                      consensus_hash:\n                        type: string\n                        format: byte\n                      app_hash:\n                        type: string\n                        format: byte\n                      last_results_hash:\n                        type: string\n                        format: byte\n                      evidence_hash:\n                        type: string\n                        format: byte\n                        title: consensus info\n                      proposer_address:\n                        type: string\n                        description: >-\n                          proposer_address is the original block proposer\n                          address, formatted as a Bech32 string.\n\n                          In Tendermint, this type is `bytes`, but in the SDK,\n                          we convert it to a Bech32 string\n\n                          for better UX.\n                    description: Header defines the structure of a Tendermint block header.\n                  data:\n                    type: object\n                    properties:\n                      txs:\n                        type: array\n                        items:\n                          type: string\n                          format: byte\n                        description: >-\n                          Txs that will be applied by state @ block.Height+1.\n\n                          NOTE: not all txs here are valid.  We're just agreeing\n                          on the order first.\n\n                          This means that block.AppHash does not include these\n                          txs.\n                    title: >-\n                      Data contains the set of transactions included in the\n                      block\n                  evidence:\n                    type: object\n                    properties:\n                      evidence:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            duplicate_vote_evidence:\n                              type: object\n                              properties:\n                                vote_a:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                vote_b:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                validator_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                DuplicateVoteEvidence contains evidence of a\n                                validator signed two conflicting votes.\n                            light_client_attack_evidence:\n                              type: object\n                              properties:\n                                conflicting_block:\n                                  type: object\n                                  properties:\n                                    signed_header:\n                                      type: object\n                                      properties:\n                                        header:\n                                          type: object\n                                          properties:\n                                            version:\n                                              title: basic block info\n                                              type: object\n                                              properties:\n                                                block:\n                                                  type: string\n                                                  format: uint64\n                                                app:\n                                                  type: string\n                                                  format: uint64\n                                              description: >-\n                                                Consensus captures the consensus rules\n                                                for processing a block in the\n                                                blockchain,\n\n                                                including all blockchain data structures\n                                                and the rules of the application's\n\n                                                state transition machine.\n                                            chain_id:\n                                              type: string\n                                            height:\n                                              type: string\n                                              format: int64\n                                            time:\n                                              type: string\n                                              format: date-time\n                                            last_block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            last_commit_hash:\n                                              type: string\n                                              format: byte\n                                              title: hashes of block data\n                                            data_hash:\n                                              type: string\n                                              format: byte\n                                            validators_hash:\n                                              type: string\n                                              format: byte\n                                              title: >-\n                                                hashes from the app output from the prev\n                                                block\n                                            next_validators_hash:\n                                              type: string\n                                              format: byte\n                                            consensus_hash:\n                                              type: string\n                                              format: byte\n                                            app_hash:\n                                              type: string\n                                              format: byte\n                                            last_results_hash:\n                                              type: string\n                                              format: byte\n                                            evidence_hash:\n                                              type: string\n                                              format: byte\n                                              title: consensus info\n                                            proposer_address:\n                                              type: string\n                                              format: byte\n                                          description: >-\n                                            Header defines the structure of a\n                                            Tendermint block header.\n                                        commit:\n                                          type: object\n                                          properties:\n                                            height:\n                                              type: string\n                                              format: int64\n                                            round:\n                                              type: integer\n                                              format: int32\n                                            block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            signatures:\n                                              type: array\n                                              items:\n                                                type: object\n                                                properties:\n                                                  block_id_flag:\n                                                    type: string\n                                                    enum:\n                                                      - BLOCK_ID_FLAG_UNKNOWN\n                                                      - BLOCK_ID_FLAG_ABSENT\n                                                      - BLOCK_ID_FLAG_COMMIT\n                                                      - BLOCK_ID_FLAG_NIL\n                                                    default: BLOCK_ID_FLAG_UNKNOWN\n                                                    title: >-\n                                                      BlockIdFlag indicates which BlcokID the\n                                                      signature is for\n                                                  validator_address:\n                                                    type: string\n                                                    format: byte\n                                                  timestamp:\n                                                    type: string\n                                                    format: date-time\n                                                  signature:\n                                                    type: string\n                                                    format: byte\n                                                description: >-\n                                                  CommitSig is a part of the Vote included\n                                                  in a Commit.\n                                          description: >-\n                                            Commit contains the evidence that a\n                                            block was committed by a set of\n                                            validators.\n                                    validator_set:\n                                      type: object\n                                      properties:\n                                        validators:\n                                          type: array\n                                          items:\n                                            type: object\n                                            properties:\n                                              address:\n                                                type: string\n                                                format: byte\n                                              pub_key:\n                                                type: object\n                                                properties:\n                                                  ed25519:\n                                                    type: string\n                                                    format: byte\n                                                  secp256k1:\n                                                    type: string\n                                                    format: byte\n                                                title: >-\n                                                  PublicKey defines the keys available for\n                                                  use with Tendermint Validators\n                                              voting_power:\n                                                type: string\n                                                format: int64\n                                              proposer_priority:\n                                                type: string\n                                                format: int64\n                                        proposer:\n                                          type: object\n                                          properties:\n                                            address:\n                                              type: string\n                                              format: byte\n                                            pub_key:\n                                              type: object\n                                              properties:\n                                                ed25519:\n                                                  type: string\n                                                  format: byte\n                                                secp256k1:\n                                                  type: string\n                                                  format: byte\n                                              title: >-\n                                                PublicKey defines the keys available for\n                                                use with Tendermint Validators\n                                            voting_power:\n                                              type: string\n                                              format: int64\n                                            proposer_priority:\n                                              type: string\n                                              format: int64\n                                        total_voting_power:\n                                          type: string\n                                          format: int64\n                                common_height:\n                                  type: string\n                                  format: int64\n                                byzantine_validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                LightClientAttackEvidence contains evidence of a\n                                set of validators attempting to mislead a light\n                                client.\n                  last_commit:\n                    type: object\n                    properties:\n                      height:\n                        type: string\n                        format: int64\n                      round:\n                        type: integer\n                        format: int32\n                      block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      signatures:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            block_id_flag:\n                              type: string\n                              enum:\n                                - BLOCK_ID_FLAG_UNKNOWN\n                                - BLOCK_ID_FLAG_ABSENT\n                                - BLOCK_ID_FLAG_COMMIT\n                                - BLOCK_ID_FLAG_NIL\n                              default: BLOCK_ID_FLAG_UNKNOWN\n                              title: >-\n                                BlockIdFlag indicates which BlcokID the\n                                signature is for\n                            validator_address:\n                              type: string\n                              format: byte\n                            timestamp:\n                              type: string\n                              format: date-time\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            CommitSig is a part of the Vote included in a\n                            Commit.\n                    description: >-\n                      Commit contains the evidence that a block was committed by\n                      a set of validators.\n                description: >-\n                  Block is tendermint type Block, with the Header proposer\n                  address\n\n                  field converted to bech32 string.\n            description: >-\n              GetLatestBlockResponse is the response type for the\n              Query/GetLatestBlock RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/base/tendermint/v1beta1/blocks/{height}:\n    get:\n      summary: GetBlockByHeight queries block for given height.\n      operationId: GetBlockByHeight\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              block:\n                title: 'Deprecated: please use `sdk_block` instead'\n                type: object\n                properties:\n                  header:\n                    type: object\n                    properties:\n                      version:\n                        title: basic block info\n                        type: object\n                        properties:\n                          block:\n                            type: string\n                            format: uint64\n                          app:\n                            type: string\n                            format: uint64\n                        description: >-\n                          Consensus captures the consensus rules for processing\n                          a block in the blockchain,\n\n                          including all blockchain data structures and the rules\n                          of the application's\n\n                          state transition machine.\n                      chain_id:\n                        type: string\n                      height:\n                        type: string\n                        format: int64\n                      time:\n                        type: string\n                        format: date-time\n                      last_block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      last_commit_hash:\n                        type: string\n                        format: byte\n                        title: hashes of block data\n                      data_hash:\n                        type: string\n                        format: byte\n                      validators_hash:\n                        type: string\n                        format: byte\n                        title: hashes from the app output from the prev block\n                      next_validators_hash:\n                        type: string\n                        format: byte\n                      consensus_hash:\n                        type: string\n                        format: byte\n                      app_hash:\n                        type: string\n                        format: byte\n                      last_results_hash:\n                        type: string\n                        format: byte\n                      evidence_hash:\n                        type: string\n                        format: byte\n                        title: consensus info\n                      proposer_address:\n                        type: string\n                        format: byte\n                    description: Header defines the structure of a Tendermint block header.\n                  data:\n                    type: object\n                    properties:\n                      txs:\n                        type: array\n                        items:\n                          type: string\n                          format: byte\n                        description: >-\n                          Txs that will be applied by state @ block.Height+1.\n\n                          NOTE: not all txs here are valid.  We're just agreeing\n                          on the order first.\n\n                          This means that block.AppHash does not include these\n                          txs.\n                    title: >-\n                      Data contains the set of transactions included in the\n                      block\n                  evidence:\n                    type: object\n                    properties:\n                      evidence:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            duplicate_vote_evidence:\n                              type: object\n                              properties:\n                                vote_a:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                vote_b:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                validator_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                DuplicateVoteEvidence contains evidence of a\n                                validator signed two conflicting votes.\n                            light_client_attack_evidence:\n                              type: object\n                              properties:\n                                conflicting_block:\n                                  type: object\n                                  properties:\n                                    signed_header:\n                                      type: object\n                                      properties:\n                                        header:\n                                          type: object\n                                          properties:\n                                            version:\n                                              title: basic block info\n                                              type: object\n                                              properties:\n                                                block:\n                                                  type: string\n                                                  format: uint64\n                                                app:\n                                                  type: string\n                                                  format: uint64\n                                              description: >-\n                                                Consensus captures the consensus rules\n                                                for processing a block in the\n                                                blockchain,\n\n                                                including all blockchain data structures\n                                                and the rules of the application's\n\n                                                state transition machine.\n                                            chain_id:\n                                              type: string\n                                            height:\n                                              type: string\n                                              format: int64\n                                            time:\n                                              type: string\n                                              format: date-time\n                                            last_block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            last_commit_hash:\n                                              type: string\n                                              format: byte\n                                              title: hashes of block data\n                                            data_hash:\n                                              type: string\n                                              format: byte\n                                            validators_hash:\n                                              type: string\n                                              format: byte\n                                              title: >-\n                                                hashes from the app output from the prev\n                                                block\n                                            next_validators_hash:\n                                              type: string\n                                              format: byte\n                                            consensus_hash:\n                                              type: string\n                                              format: byte\n                                            app_hash:\n                                              type: string\n                                              format: byte\n                                            last_results_hash:\n                                              type: string\n                                              format: byte\n                                            evidence_hash:\n                                              type: string\n                                              format: byte\n                                              title: consensus info\n                                            proposer_address:\n                                              type: string\n                                              format: byte\n                                          description: >-\n                                            Header defines the structure of a\n                                            Tendermint block header.\n                                        commit:\n                                          type: object\n                                          properties:\n                                            height:\n                                              type: string\n                                              format: int64\n                                            round:\n                                              type: integer\n                                              format: int32\n                                            block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            signatures:\n                                              type: array\n                                              items:\n                                                type: object\n                                                properties:\n                                                  block_id_flag:\n                                                    type: string\n                                                    enum:\n                                                      - BLOCK_ID_FLAG_UNKNOWN\n                                                      - BLOCK_ID_FLAG_ABSENT\n                                                      - BLOCK_ID_FLAG_COMMIT\n                                                      - BLOCK_ID_FLAG_NIL\n                                                    default: BLOCK_ID_FLAG_UNKNOWN\n                                                    title: >-\n                                                      BlockIdFlag indicates which BlcokID the\n                                                      signature is for\n                                                  validator_address:\n                                                    type: string\n                                                    format: byte\n                                                  timestamp:\n                                                    type: string\n                                                    format: date-time\n                                                  signature:\n                                                    type: string\n                                                    format: byte\n                                                description: >-\n                                                  CommitSig is a part of the Vote included\n                                                  in a Commit.\n                                          description: >-\n                                            Commit contains the evidence that a\n                                            block was committed by a set of\n                                            validators.\n                                    validator_set:\n                                      type: object\n                                      properties:\n                                        validators:\n                                          type: array\n                                          items:\n                                            type: object\n                                            properties:\n                                              address:\n                                                type: string\n                                                format: byte\n                                              pub_key:\n                                                type: object\n                                                properties:\n                                                  ed25519:\n                                                    type: string\n                                                    format: byte\n                                                  secp256k1:\n                                                    type: string\n                                                    format: byte\n                                                title: >-\n                                                  PublicKey defines the keys available for\n                                                  use with Tendermint Validators\n                                              voting_power:\n                                                type: string\n                                                format: int64\n                                              proposer_priority:\n                                                type: string\n                                                format: int64\n                                        proposer:\n                                          type: object\n                                          properties:\n                                            address:\n                                              type: string\n                                              format: byte\n                                            pub_key:\n                                              type: object\n                                              properties:\n                                                ed25519:\n                                                  type: string\n                                                  format: byte\n                                                secp256k1:\n                                                  type: string\n                                                  format: byte\n                                              title: >-\n                                                PublicKey defines the keys available for\n                                                use with Tendermint Validators\n                                            voting_power:\n                                              type: string\n                                              format: int64\n                                            proposer_priority:\n                                              type: string\n                                              format: int64\n                                        total_voting_power:\n                                          type: string\n                                          format: int64\n                                common_height:\n                                  type: string\n                                  format: int64\n                                byzantine_validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                LightClientAttackEvidence contains evidence of a\n                                set of validators attempting to mislead a light\n                                client.\n                  last_commit:\n                    type: object\n                    properties:\n                      height:\n                        type: string\n                        format: int64\n                      round:\n                        type: integer\n                        format: int32\n                      block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      signatures:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            block_id_flag:\n                              type: string\n                              enum:\n                                - BLOCK_ID_FLAG_UNKNOWN\n                                - BLOCK_ID_FLAG_ABSENT\n                                - BLOCK_ID_FLAG_COMMIT\n                                - BLOCK_ID_FLAG_NIL\n                              default: BLOCK_ID_FLAG_UNKNOWN\n                              title: >-\n                                BlockIdFlag indicates which BlcokID the\n                                signature is for\n                            validator_address:\n                              type: string\n                              format: byte\n                            timestamp:\n                              type: string\n                              format: date-time\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            CommitSig is a part of the Vote included in a\n                            Commit.\n                    description: >-\n                      Commit contains the evidence that a block was committed by\n                      a set of validators.\n              sdk_block:\n                title: 'Since: cosmos-sdk 0.47'\n                type: object\n                properties:\n                  header:\n                    type: object\n                    properties:\n                      version:\n                        title: basic block info\n                        type: object\n                        properties:\n                          block:\n                            type: string\n                            format: uint64\n                          app:\n                            type: string\n                            format: uint64\n                        description: >-\n                          Consensus captures the consensus rules for processing\n                          a block in the blockchain,\n\n                          including all blockchain data structures and the rules\n                          of the application's\n\n                          state transition machine.\n                      chain_id:\n                        type: string\n                      height:\n                        type: string\n                        format: int64\n                      time:\n                        type: string\n                        format: date-time\n                      last_block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      last_commit_hash:\n                        type: string\n                        format: byte\n                        title: hashes of block data\n                      data_hash:\n                        type: string\n                        format: byte\n                      validators_hash:\n                        type: string\n                        format: byte\n                        title: hashes from the app output from the prev block\n                      next_validators_hash:\n                        type: string\n                        format: byte\n                      consensus_hash:\n                        type: string\n                        format: byte\n                      app_hash:\n                        type: string\n                        format: byte\n                      last_results_hash:\n                        type: string\n                        format: byte\n                      evidence_hash:\n                        type: string\n                        format: byte\n                        title: consensus info\n                      proposer_address:\n                        type: string\n                        description: >-\n                          proposer_address is the original block proposer\n                          address, formatted as a Bech32 string.\n\n                          In Tendermint, this type is `bytes`, but in the SDK,\n                          we convert it to a Bech32 string\n\n                          for better UX.\n                    description: Header defines the structure of a Tendermint block header.\n                  data:\n                    type: object\n                    properties:\n                      txs:\n                        type: array\n                        items:\n                          type: string\n                          format: byte\n                        description: >-\n                          Txs that will be applied by state @ block.Height+1.\n\n                          NOTE: not all txs here are valid.  We're just agreeing\n                          on the order first.\n\n                          This means that block.AppHash does not include these\n                          txs.\n                    title: >-\n                      Data contains the set of transactions included in the\n                      block\n                  evidence:\n                    type: object\n                    properties:\n                      evidence:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            duplicate_vote_evidence:\n                              type: object\n                              properties:\n                                vote_a:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                vote_b:\n                                  type: object\n                                  properties:\n                                    type:\n                                      type: string\n                                      enum:\n                                        - SIGNED_MSG_TYPE_UNKNOWN\n                                        - SIGNED_MSG_TYPE_PREVOTE\n                                        - SIGNED_MSG_TYPE_PRECOMMIT\n                                        - SIGNED_MSG_TYPE_PROPOSAL\n                                      default: SIGNED_MSG_TYPE_UNKNOWN\n                                      description: >-\n                                        SignedMsgType is a type of signed\n                                        message in the consensus.\n\n                                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    timestamp:\n                                      type: string\n                                      format: date-time\n                                    validator_address:\n                                      type: string\n                                      format: byte\n                                    validator_index:\n                                      type: integer\n                                      format: int32\n                                    signature:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Vote represents a prevote, precommit, or\n                                    commit vote from validators for\n\n                                    consensus.\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                validator_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                DuplicateVoteEvidence contains evidence of a\n                                validator signed two conflicting votes.\n                            light_client_attack_evidence:\n                              type: object\n                              properties:\n                                conflicting_block:\n                                  type: object\n                                  properties:\n                                    signed_header:\n                                      type: object\n                                      properties:\n                                        header:\n                                          type: object\n                                          properties:\n                                            version:\n                                              title: basic block info\n                                              type: object\n                                              properties:\n                                                block:\n                                                  type: string\n                                                  format: uint64\n                                                app:\n                                                  type: string\n                                                  format: uint64\n                                              description: >-\n                                                Consensus captures the consensus rules\n                                                for processing a block in the\n                                                blockchain,\n\n                                                including all blockchain data structures\n                                                and the rules of the application's\n\n                                                state transition machine.\n                                            chain_id:\n                                              type: string\n                                            height:\n                                              type: string\n                                              format: int64\n                                            time:\n                                              type: string\n                                              format: date-time\n                                            last_block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            last_commit_hash:\n                                              type: string\n                                              format: byte\n                                              title: hashes of block data\n                                            data_hash:\n                                              type: string\n                                              format: byte\n                                            validators_hash:\n                                              type: string\n                                              format: byte\n                                              title: >-\n                                                hashes from the app output from the prev\n                                                block\n                                            next_validators_hash:\n                                              type: string\n                                              format: byte\n                                            consensus_hash:\n                                              type: string\n                                              format: byte\n                                            app_hash:\n                                              type: string\n                                              format: byte\n                                            last_results_hash:\n                                              type: string\n                                              format: byte\n                                            evidence_hash:\n                                              type: string\n                                              format: byte\n                                              title: consensus info\n                                            proposer_address:\n                                              type: string\n                                              format: byte\n                                          description: >-\n                                            Header defines the structure of a\n                                            Tendermint block header.\n                                        commit:\n                                          type: object\n                                          properties:\n                                            height:\n                                              type: string\n                                              format: int64\n                                            round:\n                                              type: integer\n                                              format: int32\n                                            block_id:\n                                              type: object\n                                              properties:\n                                                hash:\n                                                  type: string\n                                                  format: byte\n                                                part_set_header:\n                                                  type: object\n                                                  properties:\n                                                    total:\n                                                      type: integer\n                                                      format: int64\n                                                    hash:\n                                                      type: string\n                                                      format: byte\n                                                  title: PartsetHeader\n                                              title: BlockID\n                                            signatures:\n                                              type: array\n                                              items:\n                                                type: object\n                                                properties:\n                                                  block_id_flag:\n                                                    type: string\n                                                    enum:\n                                                      - BLOCK_ID_FLAG_UNKNOWN\n                                                      - BLOCK_ID_FLAG_ABSENT\n                                                      - BLOCK_ID_FLAG_COMMIT\n                                                      - BLOCK_ID_FLAG_NIL\n                                                    default: BLOCK_ID_FLAG_UNKNOWN\n                                                    title: >-\n                                                      BlockIdFlag indicates which BlcokID the\n                                                      signature is for\n                                                  validator_address:\n                                                    type: string\n                                                    format: byte\n                                                  timestamp:\n                                                    type: string\n                                                    format: date-time\n                                                  signature:\n                                                    type: string\n                                                    format: byte\n                                                description: >-\n                                                  CommitSig is a part of the Vote included\n                                                  in a Commit.\n                                          description: >-\n                                            Commit contains the evidence that a\n                                            block was committed by a set of\n                                            validators.\n                                    validator_set:\n                                      type: object\n                                      properties:\n                                        validators:\n                                          type: array\n                                          items:\n                                            type: object\n                                            properties:\n                                              address:\n                                                type: string\n                                                format: byte\n                                              pub_key:\n                                                type: object\n                                                properties:\n                                                  ed25519:\n                                                    type: string\n                                                    format: byte\n                                                  secp256k1:\n                                                    type: string\n                                                    format: byte\n                                                title: >-\n                                                  PublicKey defines the keys available for\n                                                  use with Tendermint Validators\n                                              voting_power:\n                                                type: string\n                                                format: int64\n                                              proposer_priority:\n                                                type: string\n                                                format: int64\n                                        proposer:\n                                          type: object\n                                          properties:\n                                            address:\n                                              type: string\n                                              format: byte\n                                            pub_key:\n                                              type: object\n                                              properties:\n                                                ed25519:\n                                                  type: string\n                                                  format: byte\n                                                secp256k1:\n                                                  type: string\n                                                  format: byte\n                                              title: >-\n                                                PublicKey defines the keys available for\n                                                use with Tendermint Validators\n                                            voting_power:\n                                              type: string\n                                              format: int64\n                                            proposer_priority:\n                                              type: string\n                                              format: int64\n                                        total_voting_power:\n                                          type: string\n                                          format: int64\n                                common_height:\n                                  type: string\n                                  format: int64\n                                byzantine_validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                                timestamp:\n                                  type: string\n                                  format: date-time\n                              description: >-\n                                LightClientAttackEvidence contains evidence of a\n                                set of validators attempting to mislead a light\n                                client.\n                  last_commit:\n                    type: object\n                    properties:\n                      height:\n                        type: string\n                        format: int64\n                      round:\n                        type: integer\n                        format: int32\n                      block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      signatures:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            block_id_flag:\n                              type: string\n                              enum:\n                                - BLOCK_ID_FLAG_UNKNOWN\n                                - BLOCK_ID_FLAG_ABSENT\n                                - BLOCK_ID_FLAG_COMMIT\n                                - BLOCK_ID_FLAG_NIL\n                              default: BLOCK_ID_FLAG_UNKNOWN\n                              title: >-\n                                BlockIdFlag indicates which BlcokID the\n                                signature is for\n                            validator_address:\n                              type: string\n                              format: byte\n                            timestamp:\n                              type: string\n                              format: date-time\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            CommitSig is a part of the Vote included in a\n                            Commit.\n                    description: >-\n                      Commit contains the evidence that a block was committed by\n                      a set of validators.\n                description: >-\n                  Block is tendermint type Block, with the Header proposer\n                  address\n\n                  field converted to bech32 string.\n            description: >-\n              GetBlockByHeightResponse is the response type for the\n              Query/GetBlockByHeight\n\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: height\n          in: path\n          required: true\n          type: string\n          format: int64\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/base/tendermint/v1beta1/node_info:\n    get:\n      summary: GetNodeInfo queries the current node info.\n      operationId: GetNodeInfo\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              default_node_info:\n                type: object\n                properties:\n                  protocol_version:\n                    type: object\n                    properties:\n                      p2p:\n                        type: string\n                        format: uint64\n                      block:\n                        type: string\n                        format: uint64\n                      app:\n                        type: string\n                        format: uint64\n                  default_node_id:\n                    type: string\n                  listen_addr:\n                    type: string\n                  network:\n                    type: string\n                  version:\n                    type: string\n                  channels:\n                    type: string\n                    format: byte\n                  moniker:\n                    type: string\n                  other:\n                    type: object\n                    properties:\n                      tx_index:\n                        type: string\n                      rpc_address:\n                        type: string\n              application_version:\n                type: object\n                properties:\n                  name:\n                    type: string\n                  app_name:\n                    type: string\n                  version:\n                    type: string\n                  git_commit:\n                    type: string\n                  build_tags:\n                    type: string\n                  go_version:\n                    type: string\n                  build_deps:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        path:\n                          type: string\n                          title: module path\n                        version:\n                          type: string\n                          title: module version\n                        sum:\n                          type: string\n                          title: checksum\n                      title: Module is the type for VersionInfo\n                  cosmos_sdk_version:\n                    type: string\n                    title: 'Since: cosmos-sdk 0.43'\n                description: VersionInfo is the type for the GetNodeInfoResponse message.\n            description: >-\n              GetNodeInfoResponse is the response type for the Query/GetNodeInfo\n              RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/base/tendermint/v1beta1/syncing:\n    get:\n      summary: GetSyncing queries node syncing.\n      operationId: GetSyncing\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              syncing:\n                type: boolean\n            description: >-\n              GetSyncingResponse is the response type for the Query/GetSyncing\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/base/tendermint/v1beta1/validatorsets/latest:\n    get:\n      summary: GetLatestValidatorSet queries latest validator-set.\n      operationId: GetLatestValidatorSet\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              block_height:\n                type: string\n                format: int64\n              validators:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                    pub_key:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    voting_power:\n                      type: string\n                      format: int64\n                    proposer_priority:\n                      type: string\n                      format: int64\n                  description: Validator is the type for the validator-set.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: |-\n              GetLatestValidatorSetResponse is the response type for the\n              Query/GetValidatorSetByHeight RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/base/tendermint/v1beta1/validatorsets/{height}:\n    get:\n      summary: GetValidatorSetByHeight queries validator-set at a given height.\n      operationId: GetValidatorSetByHeight\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              block_height:\n                type: string\n                format: int64\n              validators:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                    pub_key:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    voting_power:\n                      type: string\n                      format: int64\n                    proposer_priority:\n                      type: string\n                      format: int64\n                  description: Validator is the type for the validator-set.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: |-\n              GetValidatorSetByHeightResponse is the response type for the\n              Query/GetValidatorSetByHeight RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: height\n          in: path\n          required: true\n          type: string\n          format: int64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Service\n        - Tendermint\n  /cosmos/distribution/v1beta1/community_pool:\n    get:\n      summary: CommunityPool queries the community pool coins.\n      operationId: CommunityPool\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              pool:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    DecCoin defines a token with a denomination and a decimal\n                    amount.\n\n\n                    NOTE: The amount field is an Dec which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n                description: pool defines community pool's coins.\n            description: >-\n              QueryCommunityPoolResponse is the response type for the\n              Query/CommunityPool\n\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards:\n    get:\n      summary: |-\n        DelegationTotalRewards queries the total rewards accrued by a each\n        validator.\n      operationId: DelegationTotalRewards\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              rewards:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    validator_address:\n                      type: string\n                    reward:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          DecCoin defines a token with a denomination and a\n                          decimal amount.\n\n\n                          NOTE: The amount field is an Dec which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                  description: |-\n                    DelegationDelegatorReward represents the properties\n                    of a delegator's delegation reward.\n                description: rewards defines all the rewards accrued by a delegator.\n              total:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    DecCoin defines a token with a denomination and a decimal\n                    amount.\n\n\n                    NOTE: The amount field is an Dec which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n                description: total defines the sum of all the rewards.\n            description: |-\n              QueryDelegationTotalRewardsResponse is the response type for the\n              Query/DelegationTotalRewards RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: delegator_address\n          description: delegator_address defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}:\n    get:\n      summary: DelegationRewards queries the total rewards accrued by a delegation.\n      operationId: DelegationRewards\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              rewards:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    denom:\n                      type: string\n                    amount:\n                      type: string\n                  description: >-\n                    DecCoin defines a token with a denomination and a decimal\n                    amount.\n\n\n                    NOTE: The amount field is an Dec which implements the custom\n                    method\n\n                    signatures required by gogoproto.\n                description: rewards defines the rewards accrued by a delegation.\n            description: |-\n              QueryDelegationRewardsResponse is the response type for the\n              Query/DelegationRewards RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: delegator_address\n          description: delegator_address defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: validator_address\n          description: validator_address defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/delegators/{delegator_address}/validators:\n    get:\n      summary: DelegatorValidators queries the validators of a delegator.\n      operationId: DelegatorValidators\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              validators:\n                type: array\n                items:\n                  type: string\n                description: >-\n                  validators defines the validators a delegator is delegating\n                  for.\n            description: |-\n              QueryDelegatorValidatorsResponse is the response type for the\n              Query/DelegatorValidators RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: delegator_address\n          description: delegator_address defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address:\n    get:\n      summary: DelegatorWithdrawAddress queries withdraw address of a delegator.\n      operationId: DelegatorWithdrawAddress\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              withdraw_address:\n                type: string\n                description: withdraw_address defines the delegator address to query for.\n            description: |-\n              QueryDelegatorWithdrawAddressResponse is the response type for the\n              Query/DelegatorWithdrawAddress RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: delegator_address\n          description: delegator_address defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/params:\n    get:\n      summary: Params queries params of the distribution module.\n      operationId: DistributionParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params defines the parameters of the module.\n                type: object\n                properties:\n                  community_tax:\n                    type: string\n                  base_proposer_reward:\n                    type: string\n                  bonus_proposer_reward:\n                    type: string\n                  withdraw_addr_enabled:\n                    type: boolean\n            description: >-\n              QueryParamsResponse is the response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/validators/{validator_address}/commission:\n    get:\n      summary: ValidatorCommission queries accumulated commission for a validator.\n      operationId: ValidatorCommission\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              commission:\n                description: commission defines the commision the validator received.\n                type: object\n                properties:\n                  commission:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        DecCoin defines a token with a denomination and a\n                        decimal amount.\n\n\n                        NOTE: The amount field is an Dec which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n            title: |-\n              QueryValidatorCommissionResponse is the response type for the\n              Query/ValidatorCommission RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: validator_address\n          description: validator_address defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards:\n    get:\n      summary: ValidatorOutstandingRewards queries rewards of a validator address.\n      operationId: ValidatorOutstandingRewards\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              rewards:\n                type: object\n                properties:\n                  rewards:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        DecCoin defines a token with a denomination and a\n                        decimal amount.\n\n\n                        NOTE: The amount field is an Dec which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                description: >-\n                  ValidatorOutstandingRewards represents outstanding\n                  (un-withdrawn) rewards\n\n                  for a validator inexpensive to track, allows simple sanity\n                  checks.\n            description: >-\n              QueryValidatorOutstandingRewardsResponse is the response type for\n              the\n\n              Query/ValidatorOutstandingRewards RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: validator_address\n          description: validator_address defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Distribution\n  /cosmos/distribution/v1beta1/validators/{validator_address}/slashes:\n    get:\n      summary: ValidatorSlashes queries slash events of a validator.\n      operationId: ValidatorSlashes\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              slashes:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    validator_period:\n                      type: string\n                      format: uint64\n                    fraction:\n                      type: string\n                  description: >-\n                    ValidatorSlashEvent represents a validator slash event.\n\n                    Height is implicit within the store key.\n\n                    This is needed to calculate appropriate amount of staking\n                    tokens\n\n                    for delegations which are withdrawn after a slash has\n                    occurred.\n                description: slashes defines the slashes the validator received.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: |-\n              QueryValidatorSlashesResponse is the response type for the\n              Query/ValidatorSlashes RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: validator_address\n          description: validator_address defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: starting_height\n          description: >-\n            starting_height defines the optional starting height to query the\n            slashes.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: ending_height\n          description: >-\n            starting_height defines the optional ending height to query the\n            slashes.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Distribution\n  /cosmos/evidence/v1beta1/evidence:\n    get:\n      summary: AllEvidence queries all evidence.\n      operationId: AllEvidence\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              evidence:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n                description: evidence returns all evidences.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryAllEvidenceResponse is the response type for the\n              Query/AllEvidence RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Evidence\n  /cosmos/evidence/v1beta1/evidence/{evidence_hash}:\n    get:\n      summary: Evidence queries evidence based on evidence hash.\n      operationId: Evidence\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              evidence:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n            description: >-\n              QueryEvidenceResponse is the response type for the Query/Evidence\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: evidence_hash\n          description: evidence_hash defines the hash of the requested evidence.\n          in: path\n          required: true\n          type: string\n          format: byte\n      tags:\n        - Query\n        - Evidence\n  /cosmos/gov/v1beta1/params/{params_type}:\n    get:\n      summary: Params queries all parameters of the gov module.\n      operationId: GovParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              voting_params:\n                description: voting_params defines the parameters related to voting.\n                type: object\n                properties:\n                  voting_period:\n                    type: string\n                    description: Length of the voting period.\n              deposit_params:\n                description: deposit_params defines the parameters related to deposit.\n                type: object\n                properties:\n                  min_deposit:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    description: Minimum deposit for a proposal to enter voting period.\n                  max_deposit_period:\n                    type: string\n                    description: >-\n                      Maximum period for Atom holders to deposit on a proposal.\n                      Initial value: 2\n                       months.\n              tally_params:\n                description: tally_params defines the parameters related to tally.\n                type: object\n                properties:\n                  quorum:\n                    type: string\n                    format: byte\n                    description: >-\n                      Minimum percentage of total stake needed to vote for a\n                      result to be\n                       considered valid.\n                  threshold:\n                    type: string\n                    format: byte\n                    description: >-\n                      Minimum proportion of Yes votes for proposal to pass.\n                      Default value: 0.5.\n                  veto_threshold:\n                    type: string\n                    format: byte\n                    description: >-\n                      Minimum value of Veto votes to Total votes ratio for\n                      proposal to be\n                       vetoed. Default value: 1/3.\n            description: >-\n              QueryParamsResponse is the response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: params_type\n          description: >-\n            params_type defines which parameters to query for, can be one of\n            \"voting\",\n\n            \"tallying\" or \"deposit\".\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals:\n    get:\n      summary: Proposals queries all proposals based on given status.\n      operationId: Proposals\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              proposals:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                    content:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    status:\n                      type: string\n                      enum:\n                        - PROPOSAL_STATUS_UNSPECIFIED\n                        - PROPOSAL_STATUS_DEPOSIT_PERIOD\n                        - PROPOSAL_STATUS_VOTING_PERIOD\n                        - PROPOSAL_STATUS_PASSED\n                        - PROPOSAL_STATUS_REJECTED\n                        - PROPOSAL_STATUS_FAILED\n                      default: PROPOSAL_STATUS_UNSPECIFIED\n                      description: >-\n                        ProposalStatus enumerates the valid statuses of a\n                        proposal.\n\n                         - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n                         - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n                        period.\n                         - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n                        period.\n                         - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n                        passed.\n                         - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n                        been rejected.\n                         - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n                        failed.\n                    final_tally_result:\n                      description: >-\n                        final_tally_result is the final tally result of the\n                        proposal. When\n\n                        querying a proposal via gRPC, this field is not\n                        populated until the\n\n                        proposal's voting period has ended.\n                      type: object\n                      properties:\n                        'yes':\n                          type: string\n                        abstain:\n                          type: string\n                        'no':\n                          type: string\n                        no_with_veto:\n                          type: string\n                    submit_time:\n                      type: string\n                      format: date-time\n                    deposit_end_time:\n                      type: string\n                      format: date-time\n                    total_deposit:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    voting_start_time:\n                      type: string\n                      format: date-time\n                    voting_end_time:\n                      type: string\n                      format: date-time\n                  description: >-\n                    Proposal defines the core field members of a governance\n                    proposal.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryProposalsResponse is the response type for the\n              Query/Proposals RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_status\n          description: |-\n            proposal_status defines the status of the proposals.\n\n             - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n             - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n            period.\n             - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n            period.\n             - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n            passed.\n             - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n            been rejected.\n             - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n            failed.\n          in: query\n          required: false\n          type: string\n          enum:\n            - PROPOSAL_STATUS_UNSPECIFIED\n            - PROPOSAL_STATUS_DEPOSIT_PERIOD\n            - PROPOSAL_STATUS_VOTING_PERIOD\n            - PROPOSAL_STATUS_PASSED\n            - PROPOSAL_STATUS_REJECTED\n            - PROPOSAL_STATUS_FAILED\n          default: PROPOSAL_STATUS_UNSPECIFIED\n        - name: voter\n          description: voter defines the voter address for the proposals.\n          in: query\n          required: false\n          type: string\n        - name: depositor\n          description: depositor defines the deposit addresses from the proposals.\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals/{proposal_id}:\n    get:\n      summary: Proposal queries proposal details based on ProposalID.\n      operationId: Proposal\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              proposal:\n                type: object\n                properties:\n                  proposal_id:\n                    type: string\n                    format: uint64\n                  content:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                  status:\n                    type: string\n                    enum:\n                      - PROPOSAL_STATUS_UNSPECIFIED\n                      - PROPOSAL_STATUS_DEPOSIT_PERIOD\n                      - PROPOSAL_STATUS_VOTING_PERIOD\n                      - PROPOSAL_STATUS_PASSED\n                      - PROPOSAL_STATUS_REJECTED\n                      - PROPOSAL_STATUS_FAILED\n                    default: PROPOSAL_STATUS_UNSPECIFIED\n                    description: >-\n                      ProposalStatus enumerates the valid statuses of a\n                      proposal.\n\n                       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n                       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n                      period.\n                       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n                      period.\n                       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n                      passed.\n                       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n                      been rejected.\n                       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n                      failed.\n                  final_tally_result:\n                    description: >-\n                      final_tally_result is the final tally result of the\n                      proposal. When\n\n                      querying a proposal via gRPC, this field is not populated\n                      until the\n\n                      proposal's voting period has ended.\n                    type: object\n                    properties:\n                      'yes':\n                        type: string\n                      abstain:\n                        type: string\n                      'no':\n                        type: string\n                      no_with_veto:\n                        type: string\n                  submit_time:\n                    type: string\n                    format: date-time\n                  deposit_end_time:\n                    type: string\n                    format: date-time\n                  total_deposit:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  voting_start_time:\n                    type: string\n                    format: date-time\n                  voting_end_time:\n                    type: string\n                    format: date-time\n                description: >-\n                  Proposal defines the core field members of a governance\n                  proposal.\n            description: >-\n              QueryProposalResponse is the response type for the Query/Proposal\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits:\n    get:\n      summary: Deposits queries all deposits of a single proposal.\n      operationId: Deposits\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              deposits:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                    depositor:\n                      type: string\n                    amount:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                  description: >-\n                    Deposit defines an amount deposited by an account address to\n                    an active\n\n                    proposal.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryDepositsResponse is the response type for the Query/Deposits\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}:\n    get:\n      summary: >-\n        Deposit queries single deposit information based proposalID,\n        depositAddr.\n      operationId: Deposit\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              deposit:\n                type: object\n                properties:\n                  proposal_id:\n                    type: string\n                    format: uint64\n                  depositor:\n                    type: string\n                  amount:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                description: >-\n                  Deposit defines an amount deposited by an account address to\n                  an active\n\n                  proposal.\n            description: >-\n              QueryDepositResponse is the response type for the Query/Deposit\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: depositor\n          description: depositor defines the deposit addresses from the proposals.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals/{proposal_id}/tally:\n    get:\n      summary: TallyResult queries the tally of a proposal vote.\n      operationId: TallyResult\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              tally:\n                description: tally defines the requested tally.\n                type: object\n                properties:\n                  'yes':\n                    type: string\n                  abstain:\n                    type: string\n                  'no':\n                    type: string\n                  no_with_veto:\n                    type: string\n            description: >-\n              QueryTallyResultResponse is the response type for the Query/Tally\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals/{proposal_id}/votes:\n    get:\n      summary: Votes queries votes of a given proposal.\n      operationId: Votes\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              votes:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                    voter:\n                      type: string\n                    option:\n                      description: >-\n                        Deprecated: Prefer to use `options` instead. This field\n                        is set in queries\n\n                        if and only if `len(options) == 1` and that option has\n                        weight 1. In all\n\n                        other cases, this field will default to\n                        VOTE_OPTION_UNSPECIFIED.\n                      type: string\n                      enum:\n                        - VOTE_OPTION_UNSPECIFIED\n                        - VOTE_OPTION_YES\n                        - VOTE_OPTION_ABSTAIN\n                        - VOTE_OPTION_NO\n                        - VOTE_OPTION_NO_WITH_VETO\n                      default: VOTE_OPTION_UNSPECIFIED\n                    options:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          option:\n                            type: string\n                            enum:\n                              - VOTE_OPTION_UNSPECIFIED\n                              - VOTE_OPTION_YES\n                              - VOTE_OPTION_ABSTAIN\n                              - VOTE_OPTION_NO\n                              - VOTE_OPTION_NO_WITH_VETO\n                            default: VOTE_OPTION_UNSPECIFIED\n                            description: >-\n                              VoteOption enumerates the valid vote options for a\n                              given governance proposal.\n\n                               - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                               - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                               - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                               - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                               - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                          weight:\n                            type: string\n                        description: >-\n                          WeightedVoteOption defines a unit of vote for vote\n                          split.\n\n\n                          Since: cosmos-sdk 0.43\n                      title: 'Since: cosmos-sdk 0.43'\n                  description: >-\n                    Vote defines a vote on a governance proposal.\n\n                    A Vote consists of a proposal ID, the voter, and the vote\n                    option.\n                description: votes defined the queried votes.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryVotesResponse is the response type for the Query/Votes RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}:\n    get:\n      summary: Vote queries voted information based on proposalID, voterAddr.\n      operationId: Vote\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              vote:\n                type: object\n                properties:\n                  proposal_id:\n                    type: string\n                    format: uint64\n                  voter:\n                    type: string\n                  option:\n                    description: >-\n                      Deprecated: Prefer to use `options` instead. This field is\n                      set in queries\n\n                      if and only if `len(options) == 1` and that option has\n                      weight 1. In all\n\n                      other cases, this field will default to\n                      VOTE_OPTION_UNSPECIFIED.\n                    type: string\n                    enum:\n                      - VOTE_OPTION_UNSPECIFIED\n                      - VOTE_OPTION_YES\n                      - VOTE_OPTION_ABSTAIN\n                      - VOTE_OPTION_NO\n                      - VOTE_OPTION_NO_WITH_VETO\n                    default: VOTE_OPTION_UNSPECIFIED\n                  options:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        option:\n                          type: string\n                          enum:\n                            - VOTE_OPTION_UNSPECIFIED\n                            - VOTE_OPTION_YES\n                            - VOTE_OPTION_ABSTAIN\n                            - VOTE_OPTION_NO\n                            - VOTE_OPTION_NO_WITH_VETO\n                          default: VOTE_OPTION_UNSPECIFIED\n                          description: >-\n                            VoteOption enumerates the valid vote options for a\n                            given governance proposal.\n\n                             - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                             - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                             - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                             - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                             - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                        weight:\n                          type: string\n                      description: >-\n                        WeightedVoteOption defines a unit of vote for vote\n                        split.\n\n\n                        Since: cosmos-sdk 0.43\n                    title: 'Since: cosmos-sdk 0.43'\n                description: >-\n                  Vote defines a vote on a governance proposal.\n\n                  A Vote consists of a proposal ID, the voter, and the vote\n                  option.\n            description: >-\n              QueryVoteResponse is the response type for the Query/Vote RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: voter\n          description: voter defines the voter address for the proposals.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - GovV1beta1\n  /cosmos/gov/v1/params/{params_type}:\n    get:\n      summary: Params queries all parameters of the gov module.\n      operationId: GovV1Params\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              voting_params:\n                description: voting_params defines the parameters related to voting.\n                type: object\n                properties:\n                  voting_period:\n                    type: string\n                    description: Length of the voting period.\n              deposit_params:\n                description: deposit_params defines the parameters related to deposit.\n                type: object\n                properties:\n                  min_deposit:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                    description: Minimum deposit for a proposal to enter voting period.\n                  max_deposit_period:\n                    type: string\n                    description: >-\n                      Maximum period for Atom holders to deposit on a proposal.\n                      Initial value: 2\n                       months.\n              tally_params:\n                description: tally_params defines the parameters related to tally.\n                type: object\n                properties:\n                  quorum:\n                    type: string\n                    description: >-\n                      Minimum percentage of total stake needed to vote for a\n                      result to be\n                       considered valid.\n                  threshold:\n                    type: string\n                    description: >-\n                      Minimum proportion of Yes votes for proposal to pass.\n                      Default value: 0.5.\n                  veto_threshold:\n                    type: string\n                    description: >-\n                      Minimum value of Veto votes to Total votes ratio for\n                      proposal to be\n                       vetoed. Default value: 1/3.\n            description: >-\n              QueryParamsResponse is the response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: params_type\n          description: >-\n            params_type defines which parameters to query for, can be one of\n            \"voting\",\n\n            \"tallying\" or \"deposit\".\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals:\n    get:\n      summary: Proposals queries all proposals based on given status.\n      operationId: GovV1Proposal\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              proposals:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                      format: uint64\n                    messages:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          type_url:\n                            type: string\n                            description: >-\n                              A URL/resource name that uniquely identifies the\n                              type of the serialized\n\n                              protocol buffer message. This string must contain\n                              at least\n\n                              one \"/\" character. The last segment of the URL's\n                              path must represent\n\n                              the fully qualified name of the type (as in\n\n                              `path/google.protobuf.Duration`). The name should\n                              be in a canonical form\n\n                              (e.g., leading \".\" is not accepted).\n\n\n                              In practice, teams usually precompile into the\n                              binary all types that they\n\n                              expect it to use in the context of Any. However,\n                              for URLs which use the\n\n                              scheme `http`, `https`, or no scheme, one can\n                              optionally set up a type\n\n                              server that maps type URLs to message definitions\n                              as follows:\n\n\n                              * If no scheme is provided, `https` is assumed.\n\n                              * An HTTP GET on the URL must yield a\n                              [google.protobuf.Type][]\n                                value in binary format, or produce an error.\n                              * Applications are allowed to cache lookup results\n                              based on the\n                                URL, or have them precompiled into a binary to avoid any\n                                lookup. Therefore, binary compatibility needs to be preserved\n                                on changes to types. (Use versioned type names to manage\n                                breaking changes.)\n\n                              Note: this functionality is not currently\n                              available in the official\n\n                              protobuf release, and it is not used for type URLs\n                              beginning with\n\n                              type.googleapis.com.\n\n\n                              Schemes other than `http`, `https` (or the empty\n                              scheme) might be\n\n                              used with implementation specific semantics.\n                          value:\n                            type: string\n                            format: byte\n                            description: >-\n                              Must be a valid serialized protocol buffer of the\n                              above specified type.\n                        description: >-\n                          `Any` contains an arbitrary serialized protocol buffer\n                          message along with a\n\n                          URL that describes the type of the serialized message.\n\n\n                          Protobuf library provides support to pack/unpack Any\n                          values in the form\n\n                          of utility functions or additional generated methods\n                          of the Any type.\n\n\n                          Example 1: Pack and unpack a message in C++.\n\n                              Foo foo = ...;\n                              Any any;\n                              any.PackFrom(foo);\n                              ...\n                              if (any.UnpackTo(&foo)) {\n                                ...\n                              }\n\n                          Example 2: Pack and unpack a message in Java.\n\n                              Foo foo = ...;\n                              Any any = Any.pack(foo);\n                              ...\n                              if (any.is(Foo.class)) {\n                                foo = any.unpack(Foo.class);\n                              }\n\n                           Example 3: Pack and unpack a message in Python.\n\n                              foo = Foo(...)\n                              any = Any()\n                              any.Pack(foo)\n                              ...\n                              if any.Is(Foo.DESCRIPTOR):\n                                any.Unpack(foo)\n                                ...\n\n                           Example 4: Pack and unpack a message in Go\n\n                               foo := &pb.Foo{...}\n                               any, err := anypb.New(foo)\n                               if err != nil {\n                                 ...\n                               }\n                               ...\n                               foo := &pb.Foo{}\n                               if err := any.UnmarshalTo(foo); err != nil {\n                                 ...\n                               }\n\n                          The pack methods provided by protobuf library will by\n                          default use\n\n                          'type.googleapis.com/full.type.name' as the type URL\n                          and the unpack\n\n                          methods only use the fully qualified type name after\n                          the last '/'\n\n                          in the type URL, for example \"foo.bar.com/x/y.z\" will\n                          yield type\n\n                          name \"y.z\".\n\n\n\n                          JSON\n\n                          ====\n\n                          The JSON representation of an `Any` value uses the\n                          regular\n\n                          representation of the deserialized, embedded message,\n                          with an\n\n                          additional field `@type` which contains the type URL.\n                          Example:\n\n                              package google.profile;\n                              message Person {\n                                string first_name = 1;\n                                string last_name = 2;\n                              }\n\n                              {\n                                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                                \"firstName\": <string>,\n                                \"lastName\": <string>\n                              }\n\n                          If the embedded message type is well-known and has a\n                          custom JSON\n\n                          representation, that representation will be embedded\n                          adding a field\n\n                          `value` which holds the custom JSON in addition to the\n                          `@type`\n\n                          field. Example (for message\n                          [google.protobuf.Duration][]):\n\n                              {\n                                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                                \"value\": \"1.212s\"\n                              }\n                    status:\n                      type: string\n                      enum:\n                        - PROPOSAL_STATUS_UNSPECIFIED\n                        - PROPOSAL_STATUS_DEPOSIT_PERIOD\n                        - PROPOSAL_STATUS_VOTING_PERIOD\n                        - PROPOSAL_STATUS_PASSED\n                        - PROPOSAL_STATUS_REJECTED\n                        - PROPOSAL_STATUS_FAILED\n                      default: PROPOSAL_STATUS_UNSPECIFIED\n                      description: >-\n                        ProposalStatus enumerates the valid statuses of a\n                        proposal.\n\n                         - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n                         - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n                        period.\n                         - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n                        period.\n                         - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n                        passed.\n                         - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n                        been rejected.\n                         - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n                        failed.\n                    final_tally_result:\n                      description: >-\n                        final_tally_result is the final tally result of the\n                        proposal. When\n\n                        querying a proposal via gRPC, this field is not\n                        populated until the\n\n                        proposal's voting period has ended.\n                      type: object\n                      properties:\n                        yes_count:\n                          type: string\n                        abstain_count:\n                          type: string\n                        no_count:\n                          type: string\n                        no_with_veto_count:\n                          type: string\n                    submit_time:\n                      type: string\n                      format: date-time\n                    deposit_end_time:\n                      type: string\n                      format: date-time\n                    total_deposit:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                    voting_start_time:\n                      type: string\n                      format: date-time\n                    voting_end_time:\n                      type: string\n                      format: date-time\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata attached to the\n                        proposal.\n                  description: >-\n                    Proposal defines the core field members of a governance\n                    proposal.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryProposalsResponse is the response type for the\n              Query/Proposals RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_status\n          description: |-\n            proposal_status defines the status of the proposals.\n\n             - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n             - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n            period.\n             - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n            period.\n             - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n            passed.\n             - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n            been rejected.\n             - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n            failed.\n          in: query\n          required: false\n          type: string\n          enum:\n            - PROPOSAL_STATUS_UNSPECIFIED\n            - PROPOSAL_STATUS_DEPOSIT_PERIOD\n            - PROPOSAL_STATUS_VOTING_PERIOD\n            - PROPOSAL_STATUS_PASSED\n            - PROPOSAL_STATUS_REJECTED\n            - PROPOSAL_STATUS_FAILED\n          default: PROPOSAL_STATUS_UNSPECIFIED\n        - name: voter\n          description: voter defines the voter address for the proposals.\n          in: query\n          required: false\n          type: string\n        - name: depositor\n          description: depositor defines the deposit addresses from the proposals.\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals/{proposal_id}:\n    get:\n      summary: Proposal queries proposal details based on ProposalID.\n      operationId: GovV1Proposal\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              proposal:\n                type: object\n                properties:\n                  id:\n                    type: string\n                    format: uint64\n                  messages:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                  status:\n                    type: string\n                    enum:\n                      - PROPOSAL_STATUS_UNSPECIFIED\n                      - PROPOSAL_STATUS_DEPOSIT_PERIOD\n                      - PROPOSAL_STATUS_VOTING_PERIOD\n                      - PROPOSAL_STATUS_PASSED\n                      - PROPOSAL_STATUS_REJECTED\n                      - PROPOSAL_STATUS_FAILED\n                    default: PROPOSAL_STATUS_UNSPECIFIED\n                    description: >-\n                      ProposalStatus enumerates the valid statuses of a\n                      proposal.\n\n                       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n                       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n                      period.\n                       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n                      period.\n                       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n                      passed.\n                       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n                      been rejected.\n                       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n                      failed.\n                  final_tally_result:\n                    description: >-\n                      final_tally_result is the final tally result of the\n                      proposal. When\n\n                      querying a proposal via gRPC, this field is not populated\n                      until the\n\n                      proposal's voting period has ended.\n                    type: object\n                    properties:\n                      yes_count:\n                        type: string\n                      abstain_count:\n                        type: string\n                      no_count:\n                        type: string\n                      no_with_veto_count:\n                        type: string\n                  submit_time:\n                    type: string\n                    format: date-time\n                  deposit_end_time:\n                    type: string\n                    format: date-time\n                  total_deposit:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  voting_start_time:\n                    type: string\n                    format: date-time\n                  voting_end_time:\n                    type: string\n                    format: date-time\n                  metadata:\n                    type: string\n                    description: >-\n                      metadata is any arbitrary metadata attached to the\n                      proposal.\n                description: >-\n                  Proposal defines the core field members of a governance\n                  proposal.\n            description: >-\n              QueryProposalResponse is the response type for the Query/Proposal\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals/{proposal_id}/deposits:\n    get:\n      summary: Deposits queries all deposits of a single proposal.\n      operationId: GovV1Deposit\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              deposits:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                    depositor:\n                      type: string\n                    amount:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          denom:\n                            type: string\n                          amount:\n                            type: string\n                        description: >-\n                          Coin defines a token with a denomination and an\n                          amount.\n\n\n                          NOTE: The amount field is an Int which implements the\n                          custom method\n\n                          signatures required by gogoproto.\n                  description: >-\n                    Deposit defines an amount deposited by an account address to\n                    an active\n\n                    proposal.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryDepositsResponse is the response type for the Query/Deposits\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals/{proposal_id}/deposits/{depositor}:\n    get:\n      summary: >-\n        Deposit queries single deposit information based proposalID,\n        depositAddr.\n      operationId: GovV1Deposit\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              deposit:\n                type: object\n                properties:\n                  proposal_id:\n                    type: string\n                    format: uint64\n                  depositor:\n                    type: string\n                  amount:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                description: >-\n                  Deposit defines an amount deposited by an account address to\n                  an active\n\n                  proposal.\n            description: >-\n              QueryDepositResponse is the response type for the Query/Deposit\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: depositor\n          description: depositor defines the deposit addresses from the proposals.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals/{proposal_id}/tally:\n    get:\n      summary: TallyResult queries the tally of a proposal vote.\n      operationId: GovV1TallyResult\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              tally:\n                description: tally defines the requested tally.\n                type: object\n                properties:\n                  yes_count:\n                    type: string\n                  abstain_count:\n                    type: string\n                  no_count:\n                    type: string\n                  no_with_veto_count:\n                    type: string\n            description: >-\n              QueryTallyResultResponse is the response type for the Query/Tally\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals/{proposal_id}/votes:\n    get:\n      summary: Votes queries votes of a given proposal.\n      operationId: GovV1Votes\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              votes:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                    voter:\n                      type: string\n                    options:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          option:\n                            type: string\n                            enum:\n                              - VOTE_OPTION_UNSPECIFIED\n                              - VOTE_OPTION_YES\n                              - VOTE_OPTION_ABSTAIN\n                              - VOTE_OPTION_NO\n                              - VOTE_OPTION_NO_WITH_VETO\n                            default: VOTE_OPTION_UNSPECIFIED\n                            description: >-\n                              VoteOption enumerates the valid vote options for a\n                              given governance proposal.\n\n                               - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                               - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                               - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                               - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                               - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                          weight:\n                            type: string\n                        description: >-\n                          WeightedVoteOption defines a unit of vote for vote\n                          split.\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any  arbitrary metadata to attached to the\n                        vote.\n                  description: >-\n                    Vote defines a vote on a governance proposal.\n\n                    A Vote consists of a proposal ID, the voter, and the vote\n                    option.\n                description: votes defined the queried votes.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryVotesResponse is the response type for the Query/Votes RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - GovV1\n  /cosmos/gov/v1/proposals/{proposal_id}/votes/{voter}:\n    get:\n      summary: Vote queries voted information based on proposalID, voterAddr.\n      operationId: GovV1Vote\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              vote:\n                type: object\n                properties:\n                  proposal_id:\n                    type: string\n                    format: uint64\n                  voter:\n                    type: string\n                  options:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        option:\n                          type: string\n                          enum:\n                            - VOTE_OPTION_UNSPECIFIED\n                            - VOTE_OPTION_YES\n                            - VOTE_OPTION_ABSTAIN\n                            - VOTE_OPTION_NO\n                            - VOTE_OPTION_NO_WITH_VETO\n                          default: VOTE_OPTION_UNSPECIFIED\n                          description: >-\n                            VoteOption enumerates the valid vote options for a\n                            given governance proposal.\n\n                             - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                             - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                             - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                             - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                             - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                        weight:\n                          type: string\n                      description: >-\n                        WeightedVoteOption defines a unit of vote for vote\n                        split.\n                  metadata:\n                    type: string\n                    description: >-\n                      metadata is any  arbitrary metadata to attached to the\n                      vote.\n                description: >-\n                  Vote defines a vote on a governance proposal.\n\n                  A Vote consists of a proposal ID, the voter, and the vote\n                  option.\n            description: >-\n              QueryVoteResponse is the response type for the Query/Vote RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id defines the unique id of the proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: voter\n          description: voter defines the voter address for the proposals.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - GovV1\n  /cosmos/params/v1beta1/params:\n    get:\n      summary: |-\n        Params queries a specific parameter of a module, given its subspace and\n        key.\n      operationId: Params\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              param:\n                description: param defines the queried parameter.\n                type: object\n                properties:\n                  subspace:\n                    type: string\n                  key:\n                    type: string\n                  value:\n                    type: string\n            description: >-\n              QueryParamsResponse is response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: subspace\n          description: subspace defines the module to query the parameter for.\n          in: query\n          required: false\n          type: string\n        - name: key\n          description: key defines the key of the parameter in the subspace.\n          in: query\n          required: false\n          type: string\n      tags:\n        - Query\n        - Params\n  /cosmos/params/v1beta1/subspaces:\n    get:\n      summary: >-\n        Subspaces queries for all registered subspaces and all keys for a\n        subspace.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: Subspaces\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              subspaces:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    subspace:\n                      type: string\n                    keys:\n                      type: array\n                      items:\n                        type: string\n                  description: >-\n                    Subspace defines a parameter subspace name and all the keys\n                    that exist for\n\n                    the subspace.\n\n\n                    Since: cosmos-sdk 0.46\n            description: >-\n              QuerySubspacesResponse defines the response types for querying for\n              all\n\n              registered subspaces and all keys for a subspace.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Params\n  /cosmos/slashing/v1beta1/params:\n    get:\n      summary: Params queries the parameters of slashing module\n      operationId: SlashingParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                type: object\n                properties:\n                  signed_blocks_window:\n                    type: string\n                    format: int64\n                  min_signed_per_window:\n                    type: string\n                    format: byte\n                  downtime_jail_duration:\n                    type: string\n                  slash_fraction_double_sign:\n                    type: string\n                    format: byte\n                  slash_fraction_downtime:\n                    type: string\n                    format: byte\n                description: >-\n                  Params represents the parameters used for by the slashing\n                  module.\n            title: >-\n              QueryParamsResponse is the response type for the Query/Params RPC\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      tags:\n        - Query\n        - Slashing\n  /cosmos/slashing/v1beta1/signing_infos:\n    get:\n      summary: SigningInfos queries signing info of all validators\n      operationId: SigningInfos\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              info:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                    start_height:\n                      type: string\n                      format: int64\n                      title: >-\n                        Height at which validator was first a candidate OR was\n                        unjailed\n                    index_offset:\n                      type: string\n                      format: int64\n                      description: >-\n                        Index which is incremented each time the validator was a\n                        bonded\n\n                        in a block and may have signed a precommit or not. This\n                        in conjunction with the\n\n                        `SignedBlocksWindow` param determines the index in the\n                        `MissedBlocksBitArray`.\n                    jailed_until:\n                      type: string\n                      format: date-time\n                      description: >-\n                        Timestamp until which the validator is jailed due to\n                        liveness downtime.\n                    tombstoned:\n                      type: boolean\n                      description: >-\n                        Whether or not a validator has been tombstoned (killed\n                        out of validator set). It is set\n\n                        once the validator commits an equivocation or for any\n                        other configured misbehiavor.\n                    missed_blocks_counter:\n                      type: string\n                      format: int64\n                      description: >-\n                        A counter kept to avoid unnecessary array reads.\n\n                        Note that `Sum(MissedBlocksBitArray)` always equals\n                        `MissedBlocksCounter`.\n                  description: >-\n                    ValidatorSigningInfo defines a validator's signing info for\n                    monitoring their\n\n                    liveness activity.\n                title: info is the signing info of all validators\n              pagination:\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n                description: >-\n                  PageResponse is to be embedded in gRPC response messages where\n                  the\n\n                  corresponding request message has used PageRequest.\n\n                   message SomeResponse {\n                           repeated Bar results = 1;\n                           PageResponse page = 2;\n                   }\n            title: >-\n              QuerySigningInfosResponse is the response type for the\n              Query/SigningInfos RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Slashing\n  /cosmos/slashing/v1beta1/signing_infos/{cons_address}:\n    get:\n      summary: SigningInfo queries the signing info of given cons address\n      operationId: SigningInfo\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              val_signing_info:\n                type: object\n                properties:\n                  address:\n                    type: string\n                  start_height:\n                    type: string\n                    format: int64\n                    title: >-\n                      Height at which validator was first a candidate OR was\n                      unjailed\n                  index_offset:\n                    type: string\n                    format: int64\n                    description: >-\n                      Index which is incremented each time the validator was a\n                      bonded\n\n                      in a block and may have signed a precommit or not. This in\n                      conjunction with the\n\n                      `SignedBlocksWindow` param determines the index in the\n                      `MissedBlocksBitArray`.\n                  jailed_until:\n                    type: string\n                    format: date-time\n                    description: >-\n                      Timestamp until which the validator is jailed due to\n                      liveness downtime.\n                  tombstoned:\n                    type: boolean\n                    description: >-\n                      Whether or not a validator has been tombstoned (killed out\n                      of validator set). It is set\n\n                      once the validator commits an equivocation or for any\n                      other configured misbehiavor.\n                  missed_blocks_counter:\n                    type: string\n                    format: int64\n                    description: >-\n                      A counter kept to avoid unnecessary array reads.\n\n                      Note that `Sum(MissedBlocksBitArray)` always equals\n                      `MissedBlocksCounter`.\n                description: >-\n                  ValidatorSigningInfo defines a validator's signing info for\n                  monitoring their\n\n                  liveness activity.\n                title: >-\n                  val_signing_info is the signing info of requested val cons\n                  address\n            title: >-\n              QuerySigningInfoResponse is the response type for the\n              Query/SigningInfo RPC\n\n              method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                    value:\n                      type: string\n                      format: byte\n      parameters:\n        - name: cons_address\n          description: cons_address is the address to query signing info of\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Slashing\n  /cosmos/staking/v1beta1/delegations/{delegator_addr}:\n    get:\n      summary: >-\n        DelegatorDelegations queries all delegations of a given delegator\n        address.\n      operationId: DelegatorDelegations\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              delegation_responses:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    delegation:\n                      type: object\n                      properties:\n                        delegator_address:\n                          type: string\n                          description: >-\n                            delegator_address is the bech32-encoded address of\n                            the delegator.\n                        validator_address:\n                          type: string\n                          description: >-\n                            validator_address is the bech32-encoded address of\n                            the validator.\n                        shares:\n                          type: string\n                          description: shares define the delegation shares received.\n                      description: >-\n                        Delegation represents the bond with tokens held by an\n                        account. It is\n\n                        owned by one delegator, and is associated with the\n                        voting power of one\n\n                        validator.\n                    balance:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  description: >-\n                    DelegationResponse is equivalent to Delegation except that\n                    it contains a\n\n                    balance in addition to shares which is more suitable for\n                    client responses.\n                description: >-\n                  delegation_responses defines all the delegations' info of a\n                  delegator.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: |-\n              QueryDelegatorDelegationsResponse is response type for the\n              Query/DelegatorDelegations RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations:\n    get:\n      summary: Redelegations queries redelegations of given address.\n      operationId: Redelegations\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              redelegation_responses:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    redelegation:\n                      type: object\n                      properties:\n                        delegator_address:\n                          type: string\n                          description: >-\n                            delegator_address is the bech32-encoded address of\n                            the delegator.\n                        validator_src_address:\n                          type: string\n                          description: >-\n                            validator_src_address is the validator redelegation\n                            source operator address.\n                        validator_dst_address:\n                          type: string\n                          description: >-\n                            validator_dst_address is the validator redelegation\n                            destination operator address.\n                        entries:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              creation_height:\n                                type: string\n                                format: int64\n                                description: >-\n                                  creation_height  defines the height which the\n                                  redelegation took place.\n                              completion_time:\n                                type: string\n                                format: date-time\n                                description: >-\n                                  completion_time defines the unix time for\n                                  redelegation completion.\n                              initial_balance:\n                                type: string\n                                description: >-\n                                  initial_balance defines the initial balance\n                                  when redelegation started.\n                              shares_dst:\n                                type: string\n                                description: >-\n                                  shares_dst is the amount of\n                                  destination-validator shares created by\n                                  redelegation.\n                            description: >-\n                              RedelegationEntry defines a redelegation object\n                              with relevant metadata.\n                          description: entries are the redelegation entries.\n                      description: >-\n                        Redelegation contains the list of a particular\n                        delegator's redelegating bonds\n\n                        from a particular source validator to a particular\n                        destination validator.\n                    entries:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          redelegation_entry:\n                            type: object\n                            properties:\n                              creation_height:\n                                type: string\n                                format: int64\n                                description: >-\n                                  creation_height  defines the height which the\n                                  redelegation took place.\n                              completion_time:\n                                type: string\n                                format: date-time\n                                description: >-\n                                  completion_time defines the unix time for\n                                  redelegation completion.\n                              initial_balance:\n                                type: string\n                                description: >-\n                                  initial_balance defines the initial balance\n                                  when redelegation started.\n                              shares_dst:\n                                type: string\n                                description: >-\n                                  shares_dst is the amount of\n                                  destination-validator shares created by\n                                  redelegation.\n                            description: >-\n                              RedelegationEntry defines a redelegation object\n                              with relevant metadata.\n                          balance:\n                            type: string\n                        description: >-\n                          RedelegationEntryResponse is equivalent to a\n                          RedelegationEntry except that it\n\n                          contains a balance in addition to shares which is more\n                          suitable for client\n\n                          responses.\n                  description: >-\n                    RedelegationResponse is equivalent to a Redelegation except\n                    that its entries\n\n                    contain a balance in addition to shares which is more\n                    suitable for client\n\n                    responses.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryRedelegationsResponse is response type for the\n              Query/Redelegations RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: src_validator_addr\n          description: src_validator_addr defines the validator address to redelegate from.\n          in: query\n          required: false\n          type: string\n        - name: dst_validator_addr\n          description: dst_validator_addr defines the validator address to redelegate to.\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations:\n    get:\n      summary: >-\n        DelegatorUnbondingDelegations queries all unbonding delegations of a\n        given\n\n        delegator address.\n      operationId: DelegatorUnbondingDelegations\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              unbonding_responses:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    delegator_address:\n                      type: string\n                      description: >-\n                        delegator_address is the bech32-encoded address of the\n                        delegator.\n                    validator_address:\n                      type: string\n                      description: >-\n                        validator_address is the bech32-encoded address of the\n                        validator.\n                    entries:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          creation_height:\n                            type: string\n                            format: int64\n                            description: >-\n                              creation_height is the height which the unbonding\n                              took place.\n                          completion_time:\n                            type: string\n                            format: date-time\n                            description: >-\n                              completion_time is the unix time for unbonding\n                              completion.\n                          initial_balance:\n                            type: string\n                            description: >-\n                              initial_balance defines the tokens initially\n                              scheduled to receive at completion.\n                          balance:\n                            type: string\n                            description: >-\n                              balance defines the tokens to receive at\n                              completion.\n                        description: >-\n                          UnbondingDelegationEntry defines an unbonding object\n                          with relevant metadata.\n                      description: entries are the unbonding delegation entries.\n                  description: >-\n                    UnbondingDelegation stores all of a single delegator's\n                    unbonding bonds\n\n                    for a single validator in an time-ordered list.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryUnbondingDelegatorDelegationsResponse is response type for\n              the\n\n              Query/UnbondingDelegatorDelegations RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators:\n    get:\n      summary: |-\n        DelegatorValidators queries all validators info for given delegator\n        address.\n      operationId: StakingDelegatorValidators\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              validators:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    operator_address:\n                      type: string\n                      description: >-\n                        operator_address defines the address of the validator's\n                        operator; bech encoded in JSON.\n                    consensus_pubkey:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    jailed:\n                      type: boolean\n                      description: >-\n                        jailed defined whether the validator has been jailed\n                        from bonded status or not.\n                    status:\n                      description: >-\n                        status is the validator status\n                        (bonded/unbonding/unbonded).\n                      type: string\n                      enum:\n                        - BOND_STATUS_UNSPECIFIED\n                        - BOND_STATUS_UNBONDED\n                        - BOND_STATUS_UNBONDING\n                        - BOND_STATUS_BONDED\n                      default: BOND_STATUS_UNSPECIFIED\n                    tokens:\n                      type: string\n                      description: >-\n                        tokens define the delegated tokens (incl.\n                        self-delegation).\n                    delegator_shares:\n                      type: string\n                      description: >-\n                        delegator_shares defines total shares issued to a\n                        validator's delegators.\n                    description:\n                      description: >-\n                        description defines the description terms for the\n                        validator.\n                      type: object\n                      properties:\n                        moniker:\n                          type: string\n                          description: >-\n                            moniker defines a human-readable name for the\n                            validator.\n                        identity:\n                          type: string\n                          description: >-\n                            identity defines an optional identity signature (ex.\n                            UPort or Keybase).\n                        website:\n                          type: string\n                          description: website defines an optional website link.\n                        security_contact:\n                          type: string\n                          description: >-\n                            security_contact defines an optional email for\n                            security contact.\n                        details:\n                          type: string\n                          description: details define other optional details.\n                    unbonding_height:\n                      type: string\n                      format: int64\n                      description: >-\n                        unbonding_height defines, if unbonding, the height at\n                        which this validator has begun unbonding.\n                    unbonding_time:\n                      type: string\n                      format: date-time\n                      description: >-\n                        unbonding_time defines, if unbonding, the min time for\n                        the validator to complete unbonding.\n                    commission:\n                      description: commission defines the commission parameters.\n                      type: object\n                      properties:\n                        commission_rates:\n                          description: >-\n                            commission_rates defines the initial commission\n                            rates to be used for creating a validator.\n                          type: object\n                          properties:\n                            rate:\n                              type: string\n                              description: >-\n                                rate is the commission rate charged to\n                                delegators, as a fraction.\n                            max_rate:\n                              type: string\n                              description: >-\n                                max_rate defines the maximum commission rate\n                                which validator can ever charge, as a fraction.\n                            max_change_rate:\n                              type: string\n                              description: >-\n                                max_change_rate defines the maximum daily\n                                increase of the validator commission, as a\n                                fraction.\n                        update_time:\n                          type: string\n                          format: date-time\n                          description: >-\n                            update_time is the last time the commission rate was\n                            changed.\n                    min_self_delegation:\n                      type: string\n                      description: >-\n                        min_self_delegation is the validator's self declared\n                        minimum self delegation.\n\n\n                        Since: cosmos-sdk 0.46\n                  description: >-\n                    Validator defines a validator, together with the total\n                    amount of the\n\n                    Validator's bond shares and their exchange rate to coins.\n                    Slashing results in\n\n                    a decrease in the exchange rate, allowing correct\n                    calculation of future\n\n                    undelegations without iterating over delegators. When coins\n                    are delegated to\n\n                    this validator, the validator is credited with a delegation\n                    whose number of\n\n                    bond shares is based on the amount of coins delegated\n                    divided by the current\n\n                    exchange rate. Voting power can be calculated as total\n                    bonded shares\n\n                    multiplied by exchange rate.\n                description: validators defines the validators' info of a delegator.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: |-\n              QueryDelegatorValidatorsResponse is response type for the\n              Query/DelegatorValidators RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}:\n    get:\n      summary: |-\n        DelegatorValidator queries validator info for given delegator validator\n        pair.\n      operationId: DelegatorValidator\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              validator:\n                type: object\n                properties:\n                  operator_address:\n                    type: string\n                    description: >-\n                      operator_address defines the address of the validator's\n                      operator; bech encoded in JSON.\n                  consensus_pubkey:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                  jailed:\n                    type: boolean\n                    description: >-\n                      jailed defined whether the validator has been jailed from\n                      bonded status or not.\n                  status:\n                    description: >-\n                      status is the validator status\n                      (bonded/unbonding/unbonded).\n                    type: string\n                    enum:\n                      - BOND_STATUS_UNSPECIFIED\n                      - BOND_STATUS_UNBONDED\n                      - BOND_STATUS_UNBONDING\n                      - BOND_STATUS_BONDED\n                    default: BOND_STATUS_UNSPECIFIED\n                  tokens:\n                    type: string\n                    description: >-\n                      tokens define the delegated tokens (incl.\n                      self-delegation).\n                  delegator_shares:\n                    type: string\n                    description: >-\n                      delegator_shares defines total shares issued to a\n                      validator's delegators.\n                  description:\n                    description: >-\n                      description defines the description terms for the\n                      validator.\n                    type: object\n                    properties:\n                      moniker:\n                        type: string\n                        description: >-\n                          moniker defines a human-readable name for the\n                          validator.\n                      identity:\n                        type: string\n                        description: >-\n                          identity defines an optional identity signature (ex.\n                          UPort or Keybase).\n                      website:\n                        type: string\n                        description: website defines an optional website link.\n                      security_contact:\n                        type: string\n                        description: >-\n                          security_contact defines an optional email for\n                          security contact.\n                      details:\n                        type: string\n                        description: details define other optional details.\n                  unbonding_height:\n                    type: string\n                    format: int64\n                    description: >-\n                      unbonding_height defines, if unbonding, the height at\n                      which this validator has begun unbonding.\n                  unbonding_time:\n                    type: string\n                    format: date-time\n                    description: >-\n                      unbonding_time defines, if unbonding, the min time for the\n                      validator to complete unbonding.\n                  commission:\n                    description: commission defines the commission parameters.\n                    type: object\n                    properties:\n                      commission_rates:\n                        description: >-\n                          commission_rates defines the initial commission rates\n                          to be used for creating a validator.\n                        type: object\n                        properties:\n                          rate:\n                            type: string\n                            description: >-\n                              rate is the commission rate charged to delegators,\n                              as a fraction.\n                          max_rate:\n                            type: string\n                            description: >-\n                              max_rate defines the maximum commission rate which\n                              validator can ever charge, as a fraction.\n                          max_change_rate:\n                            type: string\n                            description: >-\n                              max_change_rate defines the maximum daily increase\n                              of the validator commission, as a fraction.\n                      update_time:\n                        type: string\n                        format: date-time\n                        description: >-\n                          update_time is the last time the commission rate was\n                          changed.\n                  min_self_delegation:\n                    type: string\n                    description: >-\n                      min_self_delegation is the validator's self declared\n                      minimum self delegation.\n\n\n                      Since: cosmos-sdk 0.46\n                description: >-\n                  Validator defines a validator, together with the total amount\n                  of the\n\n                  Validator's bond shares and their exchange rate to coins.\n                  Slashing results in\n\n                  a decrease in the exchange rate, allowing correct calculation\n                  of future\n\n                  undelegations without iterating over delegators. When coins\n                  are delegated to\n\n                  this validator, the validator is credited with a delegation\n                  whose number of\n\n                  bond shares is based on the amount of coins delegated divided\n                  by the current\n\n                  exchange rate. Voting power can be calculated as total bonded\n                  shares\n\n                  multiplied by exchange rate.\n            description: |-\n              QueryDelegatorValidatorResponse response type for the\n              Query/DelegatorValidator RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: validator_addr\n          description: validator_addr defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/historical_info/{height}:\n    get:\n      summary: HistoricalInfo queries the historical info for given height.\n      operationId: HistoricalInfo\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              hist:\n                description: hist defines the historical info at the given height.\n                type: object\n                properties:\n                  header:\n                    type: object\n                    properties:\n                      version:\n                        title: basic block info\n                        type: object\n                        properties:\n                          block:\n                            type: string\n                            format: uint64\n                          app:\n                            type: string\n                            format: uint64\n                        description: >-\n                          Consensus captures the consensus rules for processing\n                          a block in the blockchain,\n\n                          including all blockchain data structures and the rules\n                          of the application's\n\n                          state transition machine.\n                      chain_id:\n                        type: string\n                      height:\n                        type: string\n                        format: int64\n                      time:\n                        type: string\n                        format: date-time\n                      last_block_id:\n                        title: prev block info\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                      last_commit_hash:\n                        type: string\n                        format: byte\n                        title: hashes of block data\n                      data_hash:\n                        type: string\n                        format: byte\n                      validators_hash:\n                        type: string\n                        format: byte\n                        title: hashes from the app output from the prev block\n                      next_validators_hash:\n                        type: string\n                        format: byte\n                      consensus_hash:\n                        type: string\n                        format: byte\n                      app_hash:\n                        type: string\n                        format: byte\n                      last_results_hash:\n                        type: string\n                        format: byte\n                      evidence_hash:\n                        type: string\n                        format: byte\n                        title: consensus info\n                      proposer_address:\n                        type: string\n                        format: byte\n                    description: Header defines the structure of a Tendermint block header.\n                  valset:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        operator_address:\n                          type: string\n                          description: >-\n                            operator_address defines the address of the\n                            validator's operator; bech encoded in JSON.\n                        consensus_pubkey:\n                          type: object\n                          properties:\n                            type_url:\n                              type: string\n                              description: >-\n                                A URL/resource name that uniquely identifies the\n                                type of the serialized\n\n                                protocol buffer message. This string must\n                                contain at least\n\n                                one \"/\" character. The last segment of the URL's\n                                path must represent\n\n                                the fully qualified name of the type (as in\n\n                                `path/google.protobuf.Duration`). The name\n                                should be in a canonical form\n\n                                (e.g., leading \".\" is not accepted).\n\n\n                                In practice, teams usually precompile into the\n                                binary all types that they\n\n                                expect it to use in the context of Any. However,\n                                for URLs which use the\n\n                                scheme `http`, `https`, or no scheme, one can\n                                optionally set up a type\n\n                                server that maps type URLs to message\n                                definitions as follows:\n\n\n                                * If no scheme is provided, `https` is assumed.\n\n                                * An HTTP GET on the URL must yield a\n                                [google.protobuf.Type][]\n                                  value in binary format, or produce an error.\n                                * Applications are allowed to cache lookup\n                                results based on the\n                                  URL, or have them precompiled into a binary to avoid any\n                                  lookup. Therefore, binary compatibility needs to be preserved\n                                  on changes to types. (Use versioned type names to manage\n                                  breaking changes.)\n\n                                Note: this functionality is not currently\n                                available in the official\n\n                                protobuf release, and it is not used for type\n                                URLs beginning with\n\n                                type.googleapis.com.\n\n\n                                Schemes other than `http`, `https` (or the empty\n                                scheme) might be\n\n                                used with implementation specific semantics.\n                            value:\n                              type: string\n                              format: byte\n                              description: >-\n                                Must be a valid serialized protocol buffer of\n                                the above specified type.\n                          description: >-\n                            `Any` contains an arbitrary serialized protocol\n                            buffer message along with a\n\n                            URL that describes the type of the serialized\n                            message.\n\n\n                            Protobuf library provides support to pack/unpack Any\n                            values in the form\n\n                            of utility functions or additional generated methods\n                            of the Any type.\n\n\n                            Example 1: Pack and unpack a message in C++.\n\n                                Foo foo = ...;\n                                Any any;\n                                any.PackFrom(foo);\n                                ...\n                                if (any.UnpackTo(&foo)) {\n                                  ...\n                                }\n\n                            Example 2: Pack and unpack a message in Java.\n\n                                Foo foo = ...;\n                                Any any = Any.pack(foo);\n                                ...\n                                if (any.is(Foo.class)) {\n                                  foo = any.unpack(Foo.class);\n                                }\n\n                             Example 3: Pack and unpack a message in Python.\n\n                                foo = Foo(...)\n                                any = Any()\n                                any.Pack(foo)\n                                ...\n                                if any.Is(Foo.DESCRIPTOR):\n                                  any.Unpack(foo)\n                                  ...\n\n                             Example 4: Pack and unpack a message in Go\n\n                                 foo := &pb.Foo{...}\n                                 any, err := anypb.New(foo)\n                                 if err != nil {\n                                   ...\n                                 }\n                                 ...\n                                 foo := &pb.Foo{}\n                                 if err := any.UnmarshalTo(foo); err != nil {\n                                   ...\n                                 }\n\n                            The pack methods provided by protobuf library will\n                            by default use\n\n                            'type.googleapis.com/full.type.name' as the type URL\n                            and the unpack\n\n                            methods only use the fully qualified type name after\n                            the last '/'\n\n                            in the type URL, for example \"foo.bar.com/x/y.z\"\n                            will yield type\n\n                            name \"y.z\".\n\n\n\n                            JSON\n\n                            ====\n\n                            The JSON representation of an `Any` value uses the\n                            regular\n\n                            representation of the deserialized, embedded\n                            message, with an\n\n                            additional field `@type` which contains the type\n                            URL. Example:\n\n                                package google.profile;\n                                message Person {\n                                  string first_name = 1;\n                                  string last_name = 2;\n                                }\n\n                                {\n                                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                                  \"firstName\": <string>,\n                                  \"lastName\": <string>\n                                }\n\n                            If the embedded message type is well-known and has a\n                            custom JSON\n\n                            representation, that representation will be embedded\n                            adding a field\n\n                            `value` which holds the custom JSON in addition to\n                            the `@type`\n\n                            field. Example (for message\n                            [google.protobuf.Duration][]):\n\n                                {\n                                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                                  \"value\": \"1.212s\"\n                                }\n                        jailed:\n                          type: boolean\n                          description: >-\n                            jailed defined whether the validator has been jailed\n                            from bonded status or not.\n                        status:\n                          description: >-\n                            status is the validator status\n                            (bonded/unbonding/unbonded).\n                          type: string\n                          enum:\n                            - BOND_STATUS_UNSPECIFIED\n                            - BOND_STATUS_UNBONDED\n                            - BOND_STATUS_UNBONDING\n                            - BOND_STATUS_BONDED\n                          default: BOND_STATUS_UNSPECIFIED\n                        tokens:\n                          type: string\n                          description: >-\n                            tokens define the delegated tokens (incl.\n                            self-delegation).\n                        delegator_shares:\n                          type: string\n                          description: >-\n                            delegator_shares defines total shares issued to a\n                            validator's delegators.\n                        description:\n                          description: >-\n                            description defines the description terms for the\n                            validator.\n                          type: object\n                          properties:\n                            moniker:\n                              type: string\n                              description: >-\n                                moniker defines a human-readable name for the\n                                validator.\n                            identity:\n                              type: string\n                              description: >-\n                                identity defines an optional identity signature\n                                (ex. UPort or Keybase).\n                            website:\n                              type: string\n                              description: website defines an optional website link.\n                            security_contact:\n                              type: string\n                              description: >-\n                                security_contact defines an optional email for\n                                security contact.\n                            details:\n                              type: string\n                              description: details define other optional details.\n                        unbonding_height:\n                          type: string\n                          format: int64\n                          description: >-\n                            unbonding_height defines, if unbonding, the height\n                            at which this validator has begun unbonding.\n                        unbonding_time:\n                          type: string\n                          format: date-time\n                          description: >-\n                            unbonding_time defines, if unbonding, the min time\n                            for the validator to complete unbonding.\n                        commission:\n                          description: commission defines the commission parameters.\n                          type: object\n                          properties:\n                            commission_rates:\n                              description: >-\n                                commission_rates defines the initial commission\n                                rates to be used for creating a validator.\n                              type: object\n                              properties:\n                                rate:\n                                  type: string\n                                  description: >-\n                                    rate is the commission rate charged to\n                                    delegators, as a fraction.\n                                max_rate:\n                                  type: string\n                                  description: >-\n                                    max_rate defines the maximum commission rate\n                                    which validator can ever charge, as a\n                                    fraction.\n                                max_change_rate:\n                                  type: string\n                                  description: >-\n                                    max_change_rate defines the maximum daily\n                                    increase of the validator commission, as a\n                                    fraction.\n                            update_time:\n                              type: string\n                              format: date-time\n                              description: >-\n                                update_time is the last time the commission rate\n                                was changed.\n                        min_self_delegation:\n                          type: string\n                          description: >-\n                            min_self_delegation is the validator's self declared\n                            minimum self delegation.\n\n\n                            Since: cosmos-sdk 0.46\n                      description: >-\n                        Validator defines a validator, together with the total\n                        amount of the\n\n                        Validator's bond shares and their exchange rate to\n                        coins. Slashing results in\n\n                        a decrease in the exchange rate, allowing correct\n                        calculation of future\n\n                        undelegations without iterating over delegators. When\n                        coins are delegated to\n\n                        this validator, the validator is credited with a\n                        delegation whose number of\n\n                        bond shares is based on the amount of coins delegated\n                        divided by the current\n\n                        exchange rate. Voting power can be calculated as total\n                        bonded shares\n\n                        multiplied by exchange rate.\n            description: >-\n              QueryHistoricalInfoResponse is response type for the\n              Query/HistoricalInfo RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: height\n          description: height defines at which height to query the historical info.\n          in: path\n          required: true\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/params:\n    get:\n      summary: Parameters queries the staking parameters.\n      operationId: StakingParams\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              params:\n                description: params holds all the parameters of this module.\n                type: object\n                properties:\n                  unbonding_time:\n                    type: string\n                    description: unbonding_time is the time duration of unbonding.\n                  max_validators:\n                    type: integer\n                    format: int64\n                    description: max_validators is the maximum number of validators.\n                  max_entries:\n                    type: integer\n                    format: int64\n                    description: >-\n                      max_entries is the max entries for either unbonding\n                      delegation or redelegation (per pair/trio).\n                  historical_entries:\n                    type: integer\n                    format: int64\n                    description: >-\n                      historical_entries is the number of historical entries to\n                      persist.\n                  bond_denom:\n                    type: string\n                    description: bond_denom defines the bondable coin denomination.\n                  min_commission_rate:\n                    type: string\n                    title: >-\n                      min_commission_rate is the chain-wide minimum commission\n                      rate that a validator can charge their delegators\n            description: >-\n              QueryParamsResponse is response type for the Query/Params RPC\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/pool:\n    get:\n      summary: Pool queries the pool info.\n      operationId: Pool\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              pool:\n                description: pool defines the pool info.\n                type: object\n                properties:\n                  not_bonded_tokens:\n                    type: string\n                  bonded_tokens:\n                    type: string\n            description: QueryPoolResponse is response type for the Query/Pool RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/validators:\n    get:\n      summary: Validators queries all validators that match the given status.\n      operationId: Validators\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              validators:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    operator_address:\n                      type: string\n                      description: >-\n                        operator_address defines the address of the validator's\n                        operator; bech encoded in JSON.\n                    consensus_pubkey:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    jailed:\n                      type: boolean\n                      description: >-\n                        jailed defined whether the validator has been jailed\n                        from bonded status or not.\n                    status:\n                      description: >-\n                        status is the validator status\n                        (bonded/unbonding/unbonded).\n                      type: string\n                      enum:\n                        - BOND_STATUS_UNSPECIFIED\n                        - BOND_STATUS_UNBONDED\n                        - BOND_STATUS_UNBONDING\n                        - BOND_STATUS_BONDED\n                      default: BOND_STATUS_UNSPECIFIED\n                    tokens:\n                      type: string\n                      description: >-\n                        tokens define the delegated tokens (incl.\n                        self-delegation).\n                    delegator_shares:\n                      type: string\n                      description: >-\n                        delegator_shares defines total shares issued to a\n                        validator's delegators.\n                    description:\n                      description: >-\n                        description defines the description terms for the\n                        validator.\n                      type: object\n                      properties:\n                        moniker:\n                          type: string\n                          description: >-\n                            moniker defines a human-readable name for the\n                            validator.\n                        identity:\n                          type: string\n                          description: >-\n                            identity defines an optional identity signature (ex.\n                            UPort or Keybase).\n                        website:\n                          type: string\n                          description: website defines an optional website link.\n                        security_contact:\n                          type: string\n                          description: >-\n                            security_contact defines an optional email for\n                            security contact.\n                        details:\n                          type: string\n                          description: details define other optional details.\n                    unbonding_height:\n                      type: string\n                      format: int64\n                      description: >-\n                        unbonding_height defines, if unbonding, the height at\n                        which this validator has begun unbonding.\n                    unbonding_time:\n                      type: string\n                      format: date-time\n                      description: >-\n                        unbonding_time defines, if unbonding, the min time for\n                        the validator to complete unbonding.\n                    commission:\n                      description: commission defines the commission parameters.\n                      type: object\n                      properties:\n                        commission_rates:\n                          description: >-\n                            commission_rates defines the initial commission\n                            rates to be used for creating a validator.\n                          type: object\n                          properties:\n                            rate:\n                              type: string\n                              description: >-\n                                rate is the commission rate charged to\n                                delegators, as a fraction.\n                            max_rate:\n                              type: string\n                              description: >-\n                                max_rate defines the maximum commission rate\n                                which validator can ever charge, as a fraction.\n                            max_change_rate:\n                              type: string\n                              description: >-\n                                max_change_rate defines the maximum daily\n                                increase of the validator commission, as a\n                                fraction.\n                        update_time:\n                          type: string\n                          format: date-time\n                          description: >-\n                            update_time is the last time the commission rate was\n                            changed.\n                    min_self_delegation:\n                      type: string\n                      description: >-\n                        min_self_delegation is the validator's self declared\n                        minimum self delegation.\n\n\n                        Since: cosmos-sdk 0.46\n                  description: >-\n                    Validator defines a validator, together with the total\n                    amount of the\n\n                    Validator's bond shares and their exchange rate to coins.\n                    Slashing results in\n\n                    a decrease in the exchange rate, allowing correct\n                    calculation of future\n\n                    undelegations without iterating over delegators. When coins\n                    are delegated to\n\n                    this validator, the validator is credited with a delegation\n                    whose number of\n\n                    bond shares is based on the amount of coins delegated\n                    divided by the current\n\n                    exchange rate. Voting power can be calculated as total\n                    bonded shares\n\n                    multiplied by exchange rate.\n                description: validators contains all the queried validators.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            title: >-\n              QueryValidatorsResponse is response type for the Query/Validators\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: status\n          description: status enables to query for validators matching a given status.\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/validators/{validator_addr}:\n    get:\n      summary: Validator queries validator info for given validator address.\n      operationId: Validator\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              validator:\n                type: object\n                properties:\n                  operator_address:\n                    type: string\n                    description: >-\n                      operator_address defines the address of the validator's\n                      operator; bech encoded in JSON.\n                  consensus_pubkey:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                  jailed:\n                    type: boolean\n                    description: >-\n                      jailed defined whether the validator has been jailed from\n                      bonded status or not.\n                  status:\n                    description: >-\n                      status is the validator status\n                      (bonded/unbonding/unbonded).\n                    type: string\n                    enum:\n                      - BOND_STATUS_UNSPECIFIED\n                      - BOND_STATUS_UNBONDED\n                      - BOND_STATUS_UNBONDING\n                      - BOND_STATUS_BONDED\n                    default: BOND_STATUS_UNSPECIFIED\n                  tokens:\n                    type: string\n                    description: >-\n                      tokens define the delegated tokens (incl.\n                      self-delegation).\n                  delegator_shares:\n                    type: string\n                    description: >-\n                      delegator_shares defines total shares issued to a\n                      validator's delegators.\n                  description:\n                    description: >-\n                      description defines the description terms for the\n                      validator.\n                    type: object\n                    properties:\n                      moniker:\n                        type: string\n                        description: >-\n                          moniker defines a human-readable name for the\n                          validator.\n                      identity:\n                        type: string\n                        description: >-\n                          identity defines an optional identity signature (ex.\n                          UPort or Keybase).\n                      website:\n                        type: string\n                        description: website defines an optional website link.\n                      security_contact:\n                        type: string\n                        description: >-\n                          security_contact defines an optional email for\n                          security contact.\n                      details:\n                        type: string\n                        description: details define other optional details.\n                  unbonding_height:\n                    type: string\n                    format: int64\n                    description: >-\n                      unbonding_height defines, if unbonding, the height at\n                      which this validator has begun unbonding.\n                  unbonding_time:\n                    type: string\n                    format: date-time\n                    description: >-\n                      unbonding_time defines, if unbonding, the min time for the\n                      validator to complete unbonding.\n                  commission:\n                    description: commission defines the commission parameters.\n                    type: object\n                    properties:\n                      commission_rates:\n                        description: >-\n                          commission_rates defines the initial commission rates\n                          to be used for creating a validator.\n                        type: object\n                        properties:\n                          rate:\n                            type: string\n                            description: >-\n                              rate is the commission rate charged to delegators,\n                              as a fraction.\n                          max_rate:\n                            type: string\n                            description: >-\n                              max_rate defines the maximum commission rate which\n                              validator can ever charge, as a fraction.\n                          max_change_rate:\n                            type: string\n                            description: >-\n                              max_change_rate defines the maximum daily increase\n                              of the validator commission, as a fraction.\n                      update_time:\n                        type: string\n                        format: date-time\n                        description: >-\n                          update_time is the last time the commission rate was\n                          changed.\n                  min_self_delegation:\n                    type: string\n                    description: >-\n                      min_self_delegation is the validator's self declared\n                      minimum self delegation.\n\n\n                      Since: cosmos-sdk 0.46\n                description: >-\n                  Validator defines a validator, together with the total amount\n                  of the\n\n                  Validator's bond shares and their exchange rate to coins.\n                  Slashing results in\n\n                  a decrease in the exchange rate, allowing correct calculation\n                  of future\n\n                  undelegations without iterating over delegators. When coins\n                  are delegated to\n\n                  this validator, the validator is credited with a delegation\n                  whose number of\n\n                  bond shares is based on the amount of coins delegated divided\n                  by the current\n\n                  exchange rate. Voting power can be calculated as total bonded\n                  shares\n\n                  multiplied by exchange rate.\n            title: >-\n              QueryValidatorResponse is response type for the Query/Validator\n              RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: validator_addr\n          description: validator_addr defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/validators/{validator_addr}/delegations:\n    get:\n      summary: ValidatorDelegations queries delegate info for given validator.\n      operationId: ValidatorDelegations\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              delegation_responses:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    delegation:\n                      type: object\n                      properties:\n                        delegator_address:\n                          type: string\n                          description: >-\n                            delegator_address is the bech32-encoded address of\n                            the delegator.\n                        validator_address:\n                          type: string\n                          description: >-\n                            validator_address is the bech32-encoded address of\n                            the validator.\n                        shares:\n                          type: string\n                          description: shares define the delegation shares received.\n                      description: >-\n                        Delegation represents the bond with tokens held by an\n                        account. It is\n\n                        owned by one delegator, and is associated with the\n                        voting power of one\n\n                        validator.\n                    balance:\n                      type: object\n                      properties:\n                        denom:\n                          type: string\n                        amount:\n                          type: string\n                      description: >-\n                        Coin defines a token with a denomination and an amount.\n\n\n                        NOTE: The amount field is an Int which implements the\n                        custom method\n\n                        signatures required by gogoproto.\n                  description: >-\n                    DelegationResponse is equivalent to Delegation except that\n                    it contains a\n\n                    balance in addition to shares which is more suitable for\n                    client responses.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            title: |-\n              QueryValidatorDelegationsResponse is response type for the\n              Query/ValidatorDelegations RPC method\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: validator_addr\n          description: validator_addr defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}:\n    get:\n      summary: Delegation queries delegate info for given validator delegator pair.\n      operationId: Delegation\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              delegation_response:\n                type: object\n                properties:\n                  delegation:\n                    type: object\n                    properties:\n                      delegator_address:\n                        type: string\n                        description: >-\n                          delegator_address is the bech32-encoded address of the\n                          delegator.\n                      validator_address:\n                        type: string\n                        description: >-\n                          validator_address is the bech32-encoded address of the\n                          validator.\n                      shares:\n                        type: string\n                        description: shares define the delegation shares received.\n                    description: >-\n                      Delegation represents the bond with tokens held by an\n                      account. It is\n\n                      owned by one delegator, and is associated with the voting\n                      power of one\n\n                      validator.\n                  balance:\n                    type: object\n                    properties:\n                      denom:\n                        type: string\n                      amount:\n                        type: string\n                    description: >-\n                      Coin defines a token with a denomination and an amount.\n\n\n                      NOTE: The amount field is an Int which implements the\n                      custom method\n\n                      signatures required by gogoproto.\n                description: >-\n                  DelegationResponse is equivalent to Delegation except that it\n                  contains a\n\n                  balance in addition to shares which is more suitable for\n                  client responses.\n            description: >-\n              QueryDelegationResponse is response type for the Query/Delegation\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: validator_addr\n          description: validator_addr defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation:\n    get:\n      summary: |-\n        UnbondingDelegation queries unbonding info for given validator delegator\n        pair.\n      operationId: UnbondingDelegation\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              unbond:\n                type: object\n                properties:\n                  delegator_address:\n                    type: string\n                    description: >-\n                      delegator_address is the bech32-encoded address of the\n                      delegator.\n                  validator_address:\n                    type: string\n                    description: >-\n                      validator_address is the bech32-encoded address of the\n                      validator.\n                  entries:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        creation_height:\n                          type: string\n                          format: int64\n                          description: >-\n                            creation_height is the height which the unbonding\n                            took place.\n                        completion_time:\n                          type: string\n                          format: date-time\n                          description: >-\n                            completion_time is the unix time for unbonding\n                            completion.\n                        initial_balance:\n                          type: string\n                          description: >-\n                            initial_balance defines the tokens initially\n                            scheduled to receive at completion.\n                        balance:\n                          type: string\n                          description: balance defines the tokens to receive at completion.\n                      description: >-\n                        UnbondingDelegationEntry defines an unbonding object\n                        with relevant metadata.\n                    description: entries are the unbonding delegation entries.\n                description: >-\n                  UnbondingDelegation stores all of a single delegator's\n                  unbonding bonds\n\n                  for a single validator in an time-ordered list.\n            description: >-\n              QueryDelegationResponse is response type for the\n              Query/UnbondingDelegation\n\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: validator_addr\n          description: validator_addr defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: delegator_addr\n          description: delegator_addr defines the delegator address to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Staking\n  /cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations:\n    get:\n      summary: >-\n        ValidatorUnbondingDelegations queries unbonding delegations of a\n        validator.\n      operationId: ValidatorUnbondingDelegations\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              unbonding_responses:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    delegator_address:\n                      type: string\n                      description: >-\n                        delegator_address is the bech32-encoded address of the\n                        delegator.\n                    validator_address:\n                      type: string\n                      description: >-\n                        validator_address is the bech32-encoded address of the\n                        validator.\n                    entries:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          creation_height:\n                            type: string\n                            format: int64\n                            description: >-\n                              creation_height is the height which the unbonding\n                              took place.\n                          completion_time:\n                            type: string\n                            format: date-time\n                            description: >-\n                              completion_time is the unix time for unbonding\n                              completion.\n                          initial_balance:\n                            type: string\n                            description: >-\n                              initial_balance defines the tokens initially\n                              scheduled to receive at completion.\n                          balance:\n                            type: string\n                            description: >-\n                              balance defines the tokens to receive at\n                              completion.\n                        description: >-\n                          UnbondingDelegationEntry defines an unbonding object\n                          with relevant metadata.\n                      description: entries are the unbonding delegation entries.\n                  description: >-\n                    UnbondingDelegation stores all of a single delegator's\n                    unbonding bonds\n\n                    for a single validator in an time-ordered list.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryValidatorUnbondingDelegationsResponse is response type for\n              the\n\n              Query/ValidatorUnbondingDelegations RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: validator_addr\n          description: validator_addr defines the validator address to query for.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Staking\n  /cosmos/tx/v1beta1/simulate:\n    post:\n      summary: Simulate simulates executing a transaction for estimating gas usage.\n      operationId: Simulate\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              gas_info:\n                description: gas_info is the information about gas used in the simulation.\n                type: object\n                properties:\n                  gas_wanted:\n                    type: string\n                    format: uint64\n                    description: >-\n                      GasWanted is the maximum units of work we allow this tx to\n                      perform.\n                  gas_used:\n                    type: string\n                    format: uint64\n                    description: GasUsed is the amount of gas actually consumed.\n              result:\n                description: result is the result of the simulation.\n                type: object\n                properties:\n                  data:\n                    type: string\n                    format: byte\n                    description: >-\n                      Data is any data returned from message or handler\n                      execution. It MUST be\n\n                      length prefixed in order to separate data from multiple\n                      message executions.\n\n                      Deprecated. This field is still populated, but prefer\n                      msg_response instead\n\n                      because it also contains the Msg response typeURL.\n                  log:\n                    type: string\n                    description: >-\n                      Log contains the log information from message or handler\n                      execution.\n                  events:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                        attributes:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              key:\n                                type: string\n                                format: byte\n                              value:\n                                type: string\n                                format: byte\n                              index:\n                                type: boolean\n                            description: >-\n                              EventAttribute is a single key-value pair,\n                              associated with an event.\n                      description: >-\n                        Event allows application developers to attach additional\n                        information to\n\n                        ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx\n                        and ResponseDeliverTx.\n\n                        Later, transactions may be queried using these events.\n                    description: >-\n                      Events contains a slice of Event objects that were emitted\n                      during message\n\n                      or handler execution.\n                  msg_responses:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    description: >-\n                      msg_responses contains the Msg handler responses type\n                      packed in Anys.\n\n\n                      Since: cosmos-sdk 0.46\n            description: |-\n              SimulateResponse is the response type for the\n              Service.SimulateRPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: body\n          in: body\n          required: true\n          schema:\n            $ref: '#/definitions/cosmos.tx.v1beta1.SimulateRequest'\n      tags:\n        - Service\n        - Tx\n  /cosmos/tx/v1beta1/txs:\n    get:\n      summary: GetTxsEvent fetches txs by event.\n      operationId: GetTxsEvent\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            $ref: '#/definitions/cosmos.tx.v1beta1.GetTxsEventResponse'\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: events\n          description: events is the list of transaction event type.\n          in: query\n          required: false\n          type: array\n          items:\n            type: string\n          collectionFormat: multi\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n        - name: order_by\n          description: |2-\n             - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case.\n             - ORDER_BY_ASC: ORDER_BY_ASC defines ascending order\n             - ORDER_BY_DESC: ORDER_BY_DESC defines descending order\n          in: query\n          required: false\n          type: string\n          enum:\n            - ORDER_BY_UNSPECIFIED\n            - ORDER_BY_ASC\n            - ORDER_BY_DESC\n          default: ORDER_BY_UNSPECIFIED\n        - name: page\n          description: >-\n            page is the page number to query, starts at 1. If not provided, will\n            default to first page.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n      tags:\n        - Service\n        - Tx\n    post:\n      summary: BroadcastTx broadcast transaction.\n      operationId: BroadcastTx\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              tx_response:\n                type: object\n                properties:\n                  height:\n                    type: string\n                    format: int64\n                    title: The block height\n                  txhash:\n                    type: string\n                    description: The transaction hash.\n                  codespace:\n                    type: string\n                    title: Namespace for the Code\n                  code:\n                    type: integer\n                    format: int64\n                    description: Response code.\n                  data:\n                    type: string\n                    description: Result bytes, if any.\n                  raw_log:\n                    type: string\n                    description: >-\n                      The output of the application's logger (raw string). May\n                      be\n\n                      non-deterministic.\n                  logs:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        msg_index:\n                          type: integer\n                          format: int64\n                        log:\n                          type: string\n                        events:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              type:\n                                type: string\n                              attributes:\n                                type: array\n                                items:\n                                  type: object\n                                  properties:\n                                    key:\n                                      type: string\n                                    value:\n                                      type: string\n                                  description: >-\n                                    Attribute defines an attribute wrapper where\n                                    the key and value are\n\n                                    strings instead of raw bytes.\n                            description: >-\n                              StringEvent defines en Event object wrapper where\n                              all the attributes\n\n                              contain key/value pairs that are strings instead\n                              of raw bytes.\n                          description: >-\n                            Events contains a slice of Event objects that were\n                            emitted during some\n\n                            execution.\n                      description: >-\n                        ABCIMessageLog defines a structure containing an indexed\n                        tx ABCI message log.\n                    description: >-\n                      The output of the application's logger (typed). May be\n                      non-deterministic.\n                  info:\n                    type: string\n                    description: Additional information. May be non-deterministic.\n                  gas_wanted:\n                    type: string\n                    format: int64\n                    description: Amount of gas requested for transaction.\n                  gas_used:\n                    type: string\n                    format: int64\n                    description: Amount of gas consumed by transaction.\n                  tx:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                  timestamp:\n                    type: string\n                    description: >-\n                      Time of the previous block. For heights > 1, it's the\n                      weighted median of\n\n                      the timestamps of the valid votes in the block.LastCommit.\n                      For height == 1,\n\n                      it's genesis time.\n                  events:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                        attributes:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              key:\n                                type: string\n                                format: byte\n                              value:\n                                type: string\n                                format: byte\n                              index:\n                                type: boolean\n                            description: >-\n                              EventAttribute is a single key-value pair,\n                              associated with an event.\n                      description: >-\n                        Event allows application developers to attach additional\n                        information to\n\n                        ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx\n                        and ResponseDeliverTx.\n\n                        Later, transactions may be queried using these events.\n                    description: >-\n                      Events defines all the events emitted by processing a\n                      transaction. Note,\n\n                      these events include those emitted by processing all the\n                      messages and those\n\n                      emitted from the ante. Whereas Logs contains the events,\n                      with\n\n                      additional metadata, emitted only by processing the\n                      messages.\n\n\n                      Since: cosmos-sdk 0.42.11, 0.44.5, 0.45\n                description: >-\n                  TxResponse defines a structure containing relevant tx data and\n                  metadata. The\n\n                  tags are stringified and the log is JSON decoded.\n            description: |-\n              BroadcastTxResponse is the response type for the\n              Service.BroadcastTx method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: body\n          in: body\n          required: true\n          schema:\n            type: object\n            properties:\n              tx_bytes:\n                type: string\n                format: byte\n                description: tx_bytes is the raw transaction.\n              mode:\n                type: string\n                enum:\n                  - BROADCAST_MODE_UNSPECIFIED\n                  - BROADCAST_MODE_BLOCK\n                  - BROADCAST_MODE_SYNC\n                  - BROADCAST_MODE_ASYNC\n                default: BROADCAST_MODE_UNSPECIFIED\n                description: >-\n                  BroadcastMode specifies the broadcast mode for the\n                  TxService.Broadcast RPC method.\n\n                   - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering\n                   - BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for\n                  the tx to be committed in a block.\n                   - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for\n                  a CheckTx execution response only.\n                   - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns\n                  immediately.\n            description: >-\n              BroadcastTxRequest is the request type for the\n              Service.BroadcastTxRequest\n\n              RPC method.\n      tags:\n        - Service\n        - Tx\n  /cosmos/tx/v1beta1/txs/block/{height}:\n    get:\n      summary: GetBlockWithTxs fetches a block with decoded txs.\n      description: 'Since: cosmos-sdk 0.45.2'\n      operationId: GetBlockWithTxs\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            $ref: '#/definitions/cosmos.tx.v1beta1.GetBlockWithTxsResponse'\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: height\n          description: height is the height of the block to query.\n          in: path\n          required: true\n          type: string\n          format: int64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Service\n        - Tx\n  /cosmos/tx/v1beta1/txs/{hash}:\n    get:\n      summary: GetTx fetches a tx by hash.\n      operationId: GetTx\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            $ref: '#/definitions/cosmos.tx.v1beta1.GetTxResponse'\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: hash\n          description: hash is the tx hash to query, encoded as a hex string.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Service\n        - Tx\n  /cosmos/upgrade/v1beta1/applied_plan/{name}:\n    get:\n      summary: AppliedPlan queries a previously applied upgrade plan by its name.\n      operationId: AppliedPlan\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n                description: height is the block height at which the plan was applied.\n            description: >-\n              QueryAppliedPlanResponse is the response type for the\n              Query/AppliedPlan RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: name\n          description: name is the name of the applied plan to query for.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Upgrade\n  /cosmos/upgrade/v1beta1/authority:\n    get:\n      summary: Returns the account with authority to conduct upgrades\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: Authority\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              address:\n                type: string\n            description: 'Since: cosmos-sdk 0.46'\n            title: QueryAuthorityResponse is the response type for Query/Authority\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Upgrade\n  /cosmos/upgrade/v1beta1/current_plan:\n    get:\n      summary: CurrentPlan queries the current upgrade plan.\n      operationId: CurrentPlan\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              plan:\n                description: plan is the current upgrade plan.\n                type: object\n                properties:\n                  name:\n                    type: string\n                    description: >-\n                      Sets the name for the upgrade. This name will be used by\n                      the upgraded\n\n                      version of the software to apply any special \"on-upgrade\"\n                      commands during\n\n                      the first BeginBlock method after the upgrade is applied.\n                      It is also used\n\n                      to detect whether a software version can handle a given\n                      upgrade. If no\n\n                      upgrade handler with this name has been set in the\n                      software, it will be\n\n                      assumed that the software is out-of-date when the upgrade\n                      Time or Height is\n\n                      reached and the software will exit.\n                  time:\n                    type: string\n                    format: date-time\n                    description: >-\n                      Deprecated: Time based upgrades have been deprecated. Time\n                      based upgrade logic\n\n                      has been removed from the SDK.\n\n                      If this field is not empty, an error will be thrown.\n                  height:\n                    type: string\n                    format: int64\n                    description: |-\n                      The height at which the upgrade must be performed.\n                      Only used if Time is not set.\n                  info:\n                    type: string\n                    title: >-\n                      Any application specific upgrade info to be included\n                      on-chain\n\n                      such as a git commit that validators could automatically\n                      upgrade to\n                  upgraded_client_state:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n            description: >-\n              QueryCurrentPlanResponse is the response type for the\n              Query/CurrentPlan RPC\n\n              method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      tags:\n        - Query\n        - Upgrade\n  /cosmos/upgrade/v1beta1/module_versions:\n    get:\n      summary: ModuleVersions queries the list of module versions from state.\n      description: 'Since: cosmos-sdk 0.43'\n      operationId: ModuleVersions\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              module_versions:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    name:\n                      type: string\n                      title: name of the app module\n                    version:\n                      type: string\n                      format: uint64\n                      title: consensus version of the app module\n                  description: |-\n                    ModuleVersion specifies a module and its consensus version.\n\n                    Since: cosmos-sdk 0.43\n                description: >-\n                  module_versions is a list of module names with their consensus\n                  versions.\n            description: >-\n              QueryModuleVersionsResponse is the response type for the\n              Query/ModuleVersions\n\n              RPC method.\n\n\n              Since: cosmos-sdk 0.43\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: module_name\n          description: |-\n            module_name is a field to query a specific module\n            consensus version from state. Leaving this empty will\n            fetch the full list of module versions from state.\n          in: query\n          required: false\n          type: string\n      tags:\n        - Query\n        - Upgrade\n  /cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}:\n    get:\n      summary: >-\n        UpgradedConsensusState queries the consensus state that will serve\n\n        as a trusted kernel for the next version of this chain. It will only be\n\n        stored at the last height of this chain.\n\n        UpgradedConsensusState RPC not supported with legacy querier\n\n        This rpc is deprecated now that IBC has its own replacement\n\n        (https://github.com/cosmos/ibc-go/blob/2c880a22e9f9cc75f62b527ca94aa75ce1106001/proto/ibc/core/client/v1/query.proto#L54)\n      operationId: CosmosUpgradedConsensusState\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              upgraded_consensus_state:\n                type: string\n                format: byte\n                title: 'Since: cosmos-sdk 0.43'\n            description: >-\n              QueryUpgradedConsensusStateResponse is the response type for the\n              Query/UpgradedConsensusState\n\n              RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: last_height\n          description: |-\n            last height of the current chain must be sent in request\n            as this is the height under which next consensus state is stored\n          in: path\n          required: true\n          type: string\n          format: int64\n      tags:\n        - Query\n        - Upgrade\n  /cosmos/authz/v1beta1/grants:\n    get:\n      summary: Returns list of `Authorization`, granted to the grantee by the granter.\n      operationId: Grants\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              grants:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    authorization:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    expiration:\n                      type: string\n                      format: date-time\n                      title: >-\n                        time when the grant will expire and will be pruned. If\n                        null, then the grant\n\n                        doesn't have a time expiration (other conditions  in\n                        `authorization`\n\n                        may apply to invalidate the grant)\n                  description: |-\n                    Grant gives permissions to execute\n                    the provide method with expiration time.\n                description: >-\n                  authorizations is a list of grants granted for grantee by\n                  granter.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGrantsResponse is the response type for the\n              Query/Authorizations RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: granter\n          in: query\n          required: false\n          type: string\n        - name: grantee\n          in: query\n          required: false\n          type: string\n        - name: msg_type_url\n          description: >-\n            Optional, msg_type_url, when set, will query only grants matching\n            given msg type.\n          in: query\n          required: false\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Authz\n  /cosmos/authz/v1beta1/grants/grantee/{grantee}:\n    get:\n      summary: GranteeGrants returns a list of `GrantAuthorization` by grantee.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: GranteeGrants\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              grants:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    granter:\n                      type: string\n                    grantee:\n                      type: string\n                    authorization:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    expiration:\n                      type: string\n                      format: date-time\n                  title: >-\n                    GrantAuthorization extends a grant with both the addresses\n                    of the grantee and granter.\n\n                    It is used in genesis.proto and query.proto\n                description: grants is a list of grants granted to the grantee.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGranteeGrantsResponse is the response type for the\n              Query/GranteeGrants RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: grantee\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Authz\n  /cosmos/authz/v1beta1/grants/granter/{granter}:\n    get:\n      summary: GranterGrants returns list of `GrantAuthorization`, granted by granter.\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: GranterGrants\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              grants:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    granter:\n                      type: string\n                    grantee:\n                      type: string\n                    authorization:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    expiration:\n                      type: string\n                      format: date-time\n                  title: >-\n                    GrantAuthorization extends a grant with both the addresses\n                    of the grantee and granter.\n\n                    It is used in genesis.proto and query.proto\n                description: grants is a list of grants granted by the granter.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGranterGrantsResponse is the response type for the\n              Query/GranterGrants RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: granter\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Authz\n  /cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}:\n    get:\n      summary: Allowance returns fee granted to the grantee by the granter.\n      operationId: Allowance\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              allowance:\n                description: allowance is a allowance granted for grantee by granter.\n                type: object\n                properties:\n                  granter:\n                    type: string\n                    description: >-\n                      granter is the address of the user granting an allowance\n                      of their funds.\n                  grantee:\n                    type: string\n                    description: >-\n                      grantee is the address of the user being granted an\n                      allowance of another user's funds.\n                  allowance:\n                    description: >-\n                      allowance can be any of basic, periodic, allowed fee\n                      allowance.\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                title: >-\n                  Grant is stored in the KVStore to record a grant with full\n                  context\n            description: >-\n              QueryAllowanceResponse is the response type for the\n              Query/Allowance RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: granter\n          description: >-\n            granter is the address of the user granting an allowance of their\n            funds.\n          in: path\n          required: true\n          type: string\n        - name: grantee\n          description: >-\n            grantee is the address of the user being granted an allowance of\n            another user's funds.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Feegrant\n  /cosmos/feegrant/v1beta1/allowances/{grantee}:\n    get:\n      summary: Allowances returns all the grants for address.\n      operationId: Allowances\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              allowances:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    granter:\n                      type: string\n                      description: >-\n                        granter is the address of the user granting an allowance\n                        of their funds.\n                    grantee:\n                      type: string\n                      description: >-\n                        grantee is the address of the user being granted an\n                        allowance of another user's funds.\n                    allowance:\n                      description: >-\n                        allowance can be any of basic, periodic, allowed fee\n                        allowance.\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                  title: >-\n                    Grant is stored in the KVStore to record a grant with full\n                    context\n                description: allowances are allowance's granted for grantee by granter.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryAllowancesResponse is the response type for the\n              Query/Allowances RPC method.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: grantee\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Feegrant\n  /cosmos/feegrant/v1beta1/issued/{granter}:\n    get:\n      summary: AllowancesByGranter returns all the grants given by an address\n      description: 'Since: cosmos-sdk 0.46'\n      operationId: AllowancesByGranter\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              allowances:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    granter:\n                      type: string\n                      description: >-\n                        granter is the address of the user granting an allowance\n                        of their funds.\n                    grantee:\n                      type: string\n                      description: >-\n                        grantee is the address of the user being granted an\n                        allowance of another user's funds.\n                    allowance:\n                      description: >-\n                        allowance can be any of basic, periodic, allowed fee\n                        allowance.\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                  title: >-\n                    Grant is stored in the KVStore to record a grant with full\n                    context\n                description: allowances that have been issued by the granter.\n              pagination:\n                description: pagination defines an pagination for the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryAllowancesByGranterResponse is the response type for the\n              Query/AllowancesByGranter RPC method.\n\n\n              Since: cosmos-sdk 0.46\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: granter\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Feegrant\n  /cosmos/group/v1/group_info/{group_id}:\n    get:\n      summary: GroupInfo queries group info based on group id.\n      operationId: GroupInfo\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              info:\n                description: info is the GroupInfo for the group.\n                type: object\n                properties:\n                  id:\n                    type: string\n                    format: uint64\n                    description: id is the unique ID of the group.\n                  admin:\n                    type: string\n                    description: admin is the account address of the group's admin.\n                  metadata:\n                    type: string\n                    description: >-\n                      metadata is any arbitrary metadata to attached to the\n                      group.\n                  version:\n                    type: string\n                    format: uint64\n                    title: >-\n                      version is used to track changes to a group's membership\n                      structure that\n\n                      would break existing proposals. Whenever any members\n                      weight is changed,\n\n                      or any member is added or removed this version is\n                      incremented and will\n\n                      cause proposals based on older versions of this group to\n                      fail\n                  total_weight:\n                    type: string\n                    description: total_weight is the sum of the group members' weights.\n                  created_at:\n                    type: string\n                    format: date-time\n                    description: >-\n                      created_at is a timestamp specifying when a group was\n                      created.\n            description: QueryGroupInfoResponse is the Query/GroupInfo response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: group_id\n          description: group_id is the unique ID of the group.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/group_members/{group_id}:\n    get:\n      summary: GroupMembers queries members of a group\n      operationId: GroupMembers\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              members:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    group_id:\n                      type: string\n                      format: uint64\n                      description: group_id is the unique ID of the group.\n                    member:\n                      description: member is the member data.\n                      type: object\n                      properties:\n                        address:\n                          type: string\n                          description: address is the member's account address.\n                        weight:\n                          type: string\n                          description: >-\n                            weight is the member's voting weight that should be\n                            greater than 0.\n                        metadata:\n                          type: string\n                          description: >-\n                            metadata is any arbitrary metadata attached to the\n                            member.\n                        added_at:\n                          type: string\n                          format: date-time\n                          description: >-\n                            added_at is a timestamp specifying when a member was\n                            added.\n                  description: >-\n                    GroupMember represents the relationship between a group and\n                    a member.\n                description: members are the members of the group with given group_id.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGroupMembersResponse is the Query/GroupMembersResponse\n              response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: group_id\n          description: group_id is the unique ID of the group.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/group_policies_by_admin/{admin}:\n    get:\n      summary: GroupsByAdmin queries group policies by admin address.\n      operationId: GroupPoliciesByAdmin\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              group_policies:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                      description: address is the account address of group policy.\n                    group_id:\n                      type: string\n                      format: uint64\n                      description: group_id is the unique ID of the group.\n                    admin:\n                      type: string\n                      description: admin is the account address of the group admin.\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        group policy.\n                    version:\n                      type: string\n                      format: uint64\n                      description: >-\n                        version is used to track changes to a group's\n                        GroupPolicyInfo structure that\n\n                        would create a different result on a running proposal.\n                    decision_policy:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    created_at:\n                      type: string\n                      format: date-time\n                      description: >-\n                        created_at is a timestamp specifying when a group policy\n                        was created.\n                  description: >-\n                    GroupPolicyInfo represents the high-level on-chain\n                    information for a group policy.\n                description: >-\n                  group_policies are the group policies info with provided\n                  admin.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGroupPoliciesByAdminResponse is the\n              Query/GroupPoliciesByAdmin response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: admin\n          description: admin is the admin address of the group policy.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/group_policies_by_group/{group_id}:\n    get:\n      summary: GroupPoliciesByGroup queries group policies by group id.\n      operationId: GroupPoliciesByGroup\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              group_policies:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                      description: address is the account address of group policy.\n                    group_id:\n                      type: string\n                      format: uint64\n                      description: group_id is the unique ID of the group.\n                    admin:\n                      type: string\n                      description: admin is the account address of the group admin.\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        group policy.\n                    version:\n                      type: string\n                      format: uint64\n                      description: >-\n                        version is used to track changes to a group's\n                        GroupPolicyInfo structure that\n\n                        would create a different result on a running proposal.\n                    decision_policy:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    created_at:\n                      type: string\n                      format: date-time\n                      description: >-\n                        created_at is a timestamp specifying when a group policy\n                        was created.\n                  description: >-\n                    GroupPolicyInfo represents the high-level on-chain\n                    information for a group policy.\n                description: >-\n                  group_policies are the group policies info associated with the\n                  provided group.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGroupPoliciesByGroupResponse is the\n              Query/GroupPoliciesByGroup response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: group_id\n          description: group_id is the unique ID of the group policy's group.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/group_policy_info/{address}:\n    get:\n      summary: >-\n        GroupPolicyInfo queries group policy info based on account address of\n        group policy.\n      operationId: GroupPolicyInfo\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              info:\n                type: object\n                properties:\n                  address:\n                    type: string\n                    description: address is the account address of group policy.\n                  group_id:\n                    type: string\n                    format: uint64\n                    description: group_id is the unique ID of the group.\n                  admin:\n                    type: string\n                    description: admin is the account address of the group admin.\n                  metadata:\n                    type: string\n                    description: >-\n                      metadata is any arbitrary metadata to attached to the\n                      group policy.\n                  version:\n                    type: string\n                    format: uint64\n                    description: >-\n                      version is used to track changes to a group's\n                      GroupPolicyInfo structure that\n\n                      would create a different result on a running proposal.\n                  decision_policy:\n                    type: object\n                    properties:\n                      type_url:\n                        type: string\n                        description: >-\n                          A URL/resource name that uniquely identifies the type\n                          of the serialized\n\n                          protocol buffer message. This string must contain at\n                          least\n\n                          one \"/\" character. The last segment of the URL's path\n                          must represent\n\n                          the fully qualified name of the type (as in\n\n                          `path/google.protobuf.Duration`). The name should be\n                          in a canonical form\n\n                          (e.g., leading \".\" is not accepted).\n\n\n                          In practice, teams usually precompile into the binary\n                          all types that they\n\n                          expect it to use in the context of Any. However, for\n                          URLs which use the\n\n                          scheme `http`, `https`, or no scheme, one can\n                          optionally set up a type\n\n                          server that maps type URLs to message definitions as\n                          follows:\n\n\n                          * If no scheme is provided, `https` is assumed.\n\n                          * An HTTP GET on the URL must yield a\n                          [google.protobuf.Type][]\n                            value in binary format, or produce an error.\n                          * Applications are allowed to cache lookup results\n                          based on the\n                            URL, or have them precompiled into a binary to avoid any\n                            lookup. Therefore, binary compatibility needs to be preserved\n                            on changes to types. (Use versioned type names to manage\n                            breaking changes.)\n\n                          Note: this functionality is not currently available in\n                          the official\n\n                          protobuf release, and it is not used for type URLs\n                          beginning with\n\n                          type.googleapis.com.\n\n\n                          Schemes other than `http`, `https` (or the empty\n                          scheme) might be\n\n                          used with implementation specific semantics.\n                      value:\n                        type: string\n                        format: byte\n                        description: >-\n                          Must be a valid serialized protocol buffer of the\n                          above specified type.\n                    description: >-\n                      `Any` contains an arbitrary serialized protocol buffer\n                      message along with a\n\n                      URL that describes the type of the serialized message.\n\n\n                      Protobuf library provides support to pack/unpack Any\n                      values in the form\n\n                      of utility functions or additional generated methods of\n                      the Any type.\n\n\n                      Example 1: Pack and unpack a message in C++.\n\n                          Foo foo = ...;\n                          Any any;\n                          any.PackFrom(foo);\n                          ...\n                          if (any.UnpackTo(&foo)) {\n                            ...\n                          }\n\n                      Example 2: Pack and unpack a message in Java.\n\n                          Foo foo = ...;\n                          Any any = Any.pack(foo);\n                          ...\n                          if (any.is(Foo.class)) {\n                            foo = any.unpack(Foo.class);\n                          }\n\n                       Example 3: Pack and unpack a message in Python.\n\n                          foo = Foo(...)\n                          any = Any()\n                          any.Pack(foo)\n                          ...\n                          if any.Is(Foo.DESCRIPTOR):\n                            any.Unpack(foo)\n                            ...\n\n                       Example 4: Pack and unpack a message in Go\n\n                           foo := &pb.Foo{...}\n                           any, err := anypb.New(foo)\n                           if err != nil {\n                             ...\n                           }\n                           ...\n                           foo := &pb.Foo{}\n                           if err := any.UnmarshalTo(foo); err != nil {\n                             ...\n                           }\n\n                      The pack methods provided by protobuf library will by\n                      default use\n\n                      'type.googleapis.com/full.type.name' as the type URL and\n                      the unpack\n\n                      methods only use the fully qualified type name after the\n                      last '/'\n\n                      in the type URL, for example \"foo.bar.com/x/y.z\" will\n                      yield type\n\n                      name \"y.z\".\n\n\n\n                      JSON\n\n                      ====\n\n                      The JSON representation of an `Any` value uses the regular\n\n                      representation of the deserialized, embedded message, with\n                      an\n\n                      additional field `@type` which contains the type URL.\n                      Example:\n\n                          package google.profile;\n                          message Person {\n                            string first_name = 1;\n                            string last_name = 2;\n                          }\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.profile.Person\",\n                            \"firstName\": <string>,\n                            \"lastName\": <string>\n                          }\n\n                      If the embedded message type is well-known and has a\n                      custom JSON\n\n                      representation, that representation will be embedded\n                      adding a field\n\n                      `value` which holds the custom JSON in addition to the\n                      `@type`\n\n                      field. Example (for message [google.protobuf.Duration][]):\n\n                          {\n                            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                            \"value\": \"1.212s\"\n                          }\n                  created_at:\n                    type: string\n                    format: date-time\n                    description: >-\n                      created_at is a timestamp specifying when a group policy\n                      was created.\n                description: >-\n                  GroupPolicyInfo represents the high-level on-chain information\n                  for a group policy.\n            description: >-\n              QueryGroupPolicyInfoResponse is the Query/GroupPolicyInfo response\n              type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the account address of the group policy.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/groups_by_admin/{admin}:\n    get:\n      summary: GroupsByAdmin queries groups by admin address.\n      operationId: GroupsByAdmin\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              groups:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                      format: uint64\n                      description: id is the unique ID of the group.\n                    admin:\n                      type: string\n                      description: admin is the account address of the group's admin.\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        group.\n                    version:\n                      type: string\n                      format: uint64\n                      title: >-\n                        version is used to track changes to a group's membership\n                        structure that\n\n                        would break existing proposals. Whenever any members\n                        weight is changed,\n\n                        or any member is added or removed this version is\n                        incremented and will\n\n                        cause proposals based on older versions of this group to\n                        fail\n                    total_weight:\n                      type: string\n                      description: total_weight is the sum of the group members' weights.\n                    created_at:\n                      type: string\n                      format: date-time\n                      description: >-\n                        created_at is a timestamp specifying when a group was\n                        created.\n                  description: >-\n                    GroupInfo represents the high-level on-chain information for\n                    a group.\n                description: groups are the groups info with the provided admin.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGroupsByAdminResponse is the Query/GroupsByAdminResponse\n              response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: admin\n          description: admin is the account address of a group's admin.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/groups_by_member/{address}:\n    get:\n      summary: GroupsByMember queries groups by member address.\n      operationId: GroupsByMember\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              groups:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                      format: uint64\n                      description: id is the unique ID of the group.\n                    admin:\n                      type: string\n                      description: admin is the account address of the group's admin.\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        group.\n                    version:\n                      type: string\n                      format: uint64\n                      title: >-\n                        version is used to track changes to a group's membership\n                        structure that\n\n                        would break existing proposals. Whenever any members\n                        weight is changed,\n\n                        or any member is added or removed this version is\n                        incremented and will\n\n                        cause proposals based on older versions of this group to\n                        fail\n                    total_weight:\n                      type: string\n                      description: total_weight is the sum of the group members' weights.\n                    created_at:\n                      type: string\n                      format: date-time\n                      description: >-\n                        created_at is a timestamp specifying when a group was\n                        created.\n                  description: >-\n                    GroupInfo represents the high-level on-chain information for\n                    a group.\n                description: groups are the groups info with the provided group member.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryGroupsByMemberResponse is the Query/GroupsByMember response\n              type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: address is the group member address.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/proposal/{proposal_id}:\n    get:\n      summary: Proposal queries a proposal based on proposal id.\n      operationId: GroupProposal\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              proposal:\n                description: proposal is the proposal info.\n                type: object\n                properties:\n                  id:\n                    type: string\n                    format: uint64\n                    description: id is the unique id of the proposal.\n                  group_policy_address:\n                    type: string\n                    description: >-\n                      group_policy_address is the account address of group\n                      policy.\n                  metadata:\n                    type: string\n                    description: >-\n                      metadata is any arbitrary metadata to attached to the\n                      proposal.\n                  proposers:\n                    type: array\n                    items:\n                      type: string\n                    description: proposers are the account addresses of the proposers.\n                  submit_time:\n                    type: string\n                    format: date-time\n                    description: >-\n                      submit_time is a timestamp specifying when a proposal was\n                      submitted.\n                  group_version:\n                    type: string\n                    format: uint64\n                    description: >-\n                      group_version tracks the version of the group at proposal\n                      submission.\n\n                      This field is here for informational purposes only.\n                  group_policy_version:\n                    type: string\n                    format: uint64\n                    description: >-\n                      group_policy_version tracks the version of the group\n                      policy at proposal submission.\n\n                      When a decision policy is changed, existing proposals from\n                      previous policy\n\n                      versions will become invalid with the `ABORTED` status.\n\n                      This field is here for informational purposes only.\n                  status:\n                    description: >-\n                      status represents the high level position in the life\n                      cycle of the proposal. Initial value is Submitted.\n                    type: string\n                    enum:\n                      - PROPOSAL_STATUS_UNSPECIFIED\n                      - PROPOSAL_STATUS_SUBMITTED\n                      - PROPOSAL_STATUS_ACCEPTED\n                      - PROPOSAL_STATUS_REJECTED\n                      - PROPOSAL_STATUS_ABORTED\n                      - PROPOSAL_STATUS_WITHDRAWN\n                    default: PROPOSAL_STATUS_UNSPECIFIED\n                  final_tally_result:\n                    description: >-\n                      final_tally_result contains the sums of all weighted votes\n                      for this\n\n                      proposal for each vote option. It is empty at submission,\n                      and only\n\n                      populated after tallying, at voting period end or at\n                      proposal execution,\n\n                      whichever happens first.\n                    type: object\n                    properties:\n                      yes_count:\n                        type: string\n                        description: yes_count is the weighted sum of yes votes.\n                      abstain_count:\n                        type: string\n                        description: abstain_count is the weighted sum of abstainers.\n                      no_count:\n                        type: string\n                        description: no_count is the weighted sum of no votes.\n                      no_with_veto_count:\n                        type: string\n                        description: no_with_veto_count is the weighted sum of veto.\n                  voting_period_end:\n                    type: string\n                    format: date-time\n                    description: >-\n                      voting_period_end is the timestamp before which voting\n                      must be done.\n\n                      Unless a successfull MsgExec is called before (to execute\n                      a proposal whose\n\n                      tally is successful before the voting period ends),\n                      tallying will be done\n\n                      at this point, and the `final_tally_result`and `status`\n                      fields will be\n\n                      accordingly updated.\n                  executor_result:\n                    description: >-\n                      executor_result is the final result of the proposal\n                      execution. Initial value is NotRun.\n                    type: string\n                    enum:\n                      - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n                      - PROPOSAL_EXECUTOR_RESULT_NOT_RUN\n                      - PROPOSAL_EXECUTOR_RESULT_SUCCESS\n                      - PROPOSAL_EXECUTOR_RESULT_FAILURE\n                    default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n                  messages:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type_url:\n                          type: string\n                          description: >-\n                            A URL/resource name that uniquely identifies the\n                            type of the serialized\n\n                            protocol buffer message. This string must contain at\n                            least\n\n                            one \"/\" character. The last segment of the URL's\n                            path must represent\n\n                            the fully qualified name of the type (as in\n\n                            `path/google.protobuf.Duration`). The name should be\n                            in a canonical form\n\n                            (e.g., leading \".\" is not accepted).\n\n\n                            In practice, teams usually precompile into the\n                            binary all types that they\n\n                            expect it to use in the context of Any. However, for\n                            URLs which use the\n\n                            scheme `http`, `https`, or no scheme, one can\n                            optionally set up a type\n\n                            server that maps type URLs to message definitions as\n                            follows:\n\n\n                            * If no scheme is provided, `https` is assumed.\n\n                            * An HTTP GET on the URL must yield a\n                            [google.protobuf.Type][]\n                              value in binary format, or produce an error.\n                            * Applications are allowed to cache lookup results\n                            based on the\n                              URL, or have them precompiled into a binary to avoid any\n                              lookup. Therefore, binary compatibility needs to be preserved\n                              on changes to types. (Use versioned type names to manage\n                              breaking changes.)\n\n                            Note: this functionality is not currently available\n                            in the official\n\n                            protobuf release, and it is not used for type URLs\n                            beginning with\n\n                            type.googleapis.com.\n\n\n                            Schemes other than `http`, `https` (or the empty\n                            scheme) might be\n\n                            used with implementation specific semantics.\n                        value:\n                          type: string\n                          format: byte\n                          description: >-\n                            Must be a valid serialized protocol buffer of the\n                            above specified type.\n                      description: >-\n                        `Any` contains an arbitrary serialized protocol buffer\n                        message along with a\n\n                        URL that describes the type of the serialized message.\n\n\n                        Protobuf library provides support to pack/unpack Any\n                        values in the form\n\n                        of utility functions or additional generated methods of\n                        the Any type.\n\n\n                        Example 1: Pack and unpack a message in C++.\n\n                            Foo foo = ...;\n                            Any any;\n                            any.PackFrom(foo);\n                            ...\n                            if (any.UnpackTo(&foo)) {\n                              ...\n                            }\n\n                        Example 2: Pack and unpack a message in Java.\n\n                            Foo foo = ...;\n                            Any any = Any.pack(foo);\n                            ...\n                            if (any.is(Foo.class)) {\n                              foo = any.unpack(Foo.class);\n                            }\n\n                         Example 3: Pack and unpack a message in Python.\n\n                            foo = Foo(...)\n                            any = Any()\n                            any.Pack(foo)\n                            ...\n                            if any.Is(Foo.DESCRIPTOR):\n                              any.Unpack(foo)\n                              ...\n\n                         Example 4: Pack and unpack a message in Go\n\n                             foo := &pb.Foo{...}\n                             any, err := anypb.New(foo)\n                             if err != nil {\n                               ...\n                             }\n                             ...\n                             foo := &pb.Foo{}\n                             if err := any.UnmarshalTo(foo); err != nil {\n                               ...\n                             }\n\n                        The pack methods provided by protobuf library will by\n                        default use\n\n                        'type.googleapis.com/full.type.name' as the type URL and\n                        the unpack\n\n                        methods only use the fully qualified type name after the\n                        last '/'\n\n                        in the type URL, for example \"foo.bar.com/x/y.z\" will\n                        yield type\n\n                        name \"y.z\".\n\n\n\n                        JSON\n\n                        ====\n\n                        The JSON representation of an `Any` value uses the\n                        regular\n\n                        representation of the deserialized, embedded message,\n                        with an\n\n                        additional field `@type` which contains the type URL.\n                        Example:\n\n                            package google.profile;\n                            message Person {\n                              string first_name = 1;\n                              string last_name = 2;\n                            }\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.profile.Person\",\n                              \"firstName\": <string>,\n                              \"lastName\": <string>\n                            }\n\n                        If the embedded message type is well-known and has a\n                        custom JSON\n\n                        representation, that representation will be embedded\n                        adding a field\n\n                        `value` which holds the custom JSON in addition to the\n                        `@type`\n\n                        field. Example (for message\n                        [google.protobuf.Duration][]):\n\n                            {\n                              \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                              \"value\": \"1.212s\"\n                            }\n                    description: >-\n                      messages is a list of `sdk.Msg`s that will be executed if\n                      the proposal passes.\n            description: QueryProposalResponse is the Query/Proposal response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id is the unique ID of a proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/proposals/{proposal_id}/tally:\n    get:\n      summary: >-\n        TallyResult returns the tally result of a proposal. If the proposal is\n\n        still in voting period, then this query computes the current tally\n        state,\n\n        which might not be final. On the other hand, if the proposal is final,\n\n        then it simply returns the `final_tally_result` state stored in the\n\n        proposal itself.\n      operationId: GroupTallyResult\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              tally:\n                description: tally defines the requested tally.\n                type: object\n                properties:\n                  yes_count:\n                    type: string\n                    description: yes_count is the weighted sum of yes votes.\n                  abstain_count:\n                    type: string\n                    description: abstain_count is the weighted sum of abstainers.\n                  no_count:\n                    type: string\n                    description: no_count is the weighted sum of no votes.\n                  no_with_veto_count:\n                    type: string\n                    description: no_with_veto_count is the weighted sum of veto.\n            description: QueryTallyResultResponse is the Query/TallyResult response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id is the unique id of a proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/proposals_by_group_policy/{address}:\n    get:\n      summary: >-\n        ProposalsByGroupPolicy queries proposals based on account address of\n        group policy.\n      operationId: ProposalsByGroupPolicy\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              proposals:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    id:\n                      type: string\n                      format: uint64\n                      description: id is the unique id of the proposal.\n                    group_policy_address:\n                      type: string\n                      description: >-\n                        group_policy_address is the account address of group\n                        policy.\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        proposal.\n                    proposers:\n                      type: array\n                      items:\n                        type: string\n                      description: proposers are the account addresses of the proposers.\n                    submit_time:\n                      type: string\n                      format: date-time\n                      description: >-\n                        submit_time is a timestamp specifying when a proposal\n                        was submitted.\n                    group_version:\n                      type: string\n                      format: uint64\n                      description: >-\n                        group_version tracks the version of the group at\n                        proposal submission.\n\n                        This field is here for informational purposes only.\n                    group_policy_version:\n                      type: string\n                      format: uint64\n                      description: >-\n                        group_policy_version tracks the version of the group\n                        policy at proposal submission.\n\n                        When a decision policy is changed, existing proposals\n                        from previous policy\n\n                        versions will become invalid with the `ABORTED` status.\n\n                        This field is here for informational purposes only.\n                    status:\n                      description: >-\n                        status represents the high level position in the life\n                        cycle of the proposal. Initial value is Submitted.\n                      type: string\n                      enum:\n                        - PROPOSAL_STATUS_UNSPECIFIED\n                        - PROPOSAL_STATUS_SUBMITTED\n                        - PROPOSAL_STATUS_ACCEPTED\n                        - PROPOSAL_STATUS_REJECTED\n                        - PROPOSAL_STATUS_ABORTED\n                        - PROPOSAL_STATUS_WITHDRAWN\n                      default: PROPOSAL_STATUS_UNSPECIFIED\n                    final_tally_result:\n                      description: >-\n                        final_tally_result contains the sums of all weighted\n                        votes for this\n\n                        proposal for each vote option. It is empty at\n                        submission, and only\n\n                        populated after tallying, at voting period end or at\n                        proposal execution,\n\n                        whichever happens first.\n                      type: object\n                      properties:\n                        yes_count:\n                          type: string\n                          description: yes_count is the weighted sum of yes votes.\n                        abstain_count:\n                          type: string\n                          description: abstain_count is the weighted sum of abstainers.\n                        no_count:\n                          type: string\n                          description: no_count is the weighted sum of no votes.\n                        no_with_veto_count:\n                          type: string\n                          description: no_with_veto_count is the weighted sum of veto.\n                    voting_period_end:\n                      type: string\n                      format: date-time\n                      description: >-\n                        voting_period_end is the timestamp before which voting\n                        must be done.\n\n                        Unless a successfull MsgExec is called before (to\n                        execute a proposal whose\n\n                        tally is successful before the voting period ends),\n                        tallying will be done\n\n                        at this point, and the `final_tally_result`and `status`\n                        fields will be\n\n                        accordingly updated.\n                    executor_result:\n                      description: >-\n                        executor_result is the final result of the proposal\n                        execution. Initial value is NotRun.\n                      type: string\n                      enum:\n                        - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n                        - PROPOSAL_EXECUTOR_RESULT_NOT_RUN\n                        - PROPOSAL_EXECUTOR_RESULT_SUCCESS\n                        - PROPOSAL_EXECUTOR_RESULT_FAILURE\n                      default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n                    messages:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          type_url:\n                            type: string\n                            description: >-\n                              A URL/resource name that uniquely identifies the\n                              type of the serialized\n\n                              protocol buffer message. This string must contain\n                              at least\n\n                              one \"/\" character. The last segment of the URL's\n                              path must represent\n\n                              the fully qualified name of the type (as in\n\n                              `path/google.protobuf.Duration`). The name should\n                              be in a canonical form\n\n                              (e.g., leading \".\" is not accepted).\n\n\n                              In practice, teams usually precompile into the\n                              binary all types that they\n\n                              expect it to use in the context of Any. However,\n                              for URLs which use the\n\n                              scheme `http`, `https`, or no scheme, one can\n                              optionally set up a type\n\n                              server that maps type URLs to message definitions\n                              as follows:\n\n\n                              * If no scheme is provided, `https` is assumed.\n\n                              * An HTTP GET on the URL must yield a\n                              [google.protobuf.Type][]\n                                value in binary format, or produce an error.\n                              * Applications are allowed to cache lookup results\n                              based on the\n                                URL, or have them precompiled into a binary to avoid any\n                                lookup. Therefore, binary compatibility needs to be preserved\n                                on changes to types. (Use versioned type names to manage\n                                breaking changes.)\n\n                              Note: this functionality is not currently\n                              available in the official\n\n                              protobuf release, and it is not used for type URLs\n                              beginning with\n\n                              type.googleapis.com.\n\n\n                              Schemes other than `http`, `https` (or the empty\n                              scheme) might be\n\n                              used with implementation specific semantics.\n                          value:\n                            type: string\n                            format: byte\n                            description: >-\n                              Must be a valid serialized protocol buffer of the\n                              above specified type.\n                        description: >-\n                          `Any` contains an arbitrary serialized protocol buffer\n                          message along with a\n\n                          URL that describes the type of the serialized message.\n\n\n                          Protobuf library provides support to pack/unpack Any\n                          values in the form\n\n                          of utility functions or additional generated methods\n                          of the Any type.\n\n\n                          Example 1: Pack and unpack a message in C++.\n\n                              Foo foo = ...;\n                              Any any;\n                              any.PackFrom(foo);\n                              ...\n                              if (any.UnpackTo(&foo)) {\n                                ...\n                              }\n\n                          Example 2: Pack and unpack a message in Java.\n\n                              Foo foo = ...;\n                              Any any = Any.pack(foo);\n                              ...\n                              if (any.is(Foo.class)) {\n                                foo = any.unpack(Foo.class);\n                              }\n\n                           Example 3: Pack and unpack a message in Python.\n\n                              foo = Foo(...)\n                              any = Any()\n                              any.Pack(foo)\n                              ...\n                              if any.Is(Foo.DESCRIPTOR):\n                                any.Unpack(foo)\n                                ...\n\n                           Example 4: Pack and unpack a message in Go\n\n                               foo := &pb.Foo{...}\n                               any, err := anypb.New(foo)\n                               if err != nil {\n                                 ...\n                               }\n                               ...\n                               foo := &pb.Foo{}\n                               if err := any.UnmarshalTo(foo); err != nil {\n                                 ...\n                               }\n\n                          The pack methods provided by protobuf library will by\n                          default use\n\n                          'type.googleapis.com/full.type.name' as the type URL\n                          and the unpack\n\n                          methods only use the fully qualified type name after\n                          the last '/'\n\n                          in the type URL, for example \"foo.bar.com/x/y.z\" will\n                          yield type\n\n                          name \"y.z\".\n\n\n\n                          JSON\n\n                          ====\n\n                          The JSON representation of an `Any` value uses the\n                          regular\n\n                          representation of the deserialized, embedded message,\n                          with an\n\n                          additional field `@type` which contains the type URL.\n                          Example:\n\n                              package google.profile;\n                              message Person {\n                                string first_name = 1;\n                                string last_name = 2;\n                              }\n\n                              {\n                                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                                \"firstName\": <string>,\n                                \"lastName\": <string>\n                              }\n\n                          If the embedded message type is well-known and has a\n                          custom JSON\n\n                          representation, that representation will be embedded\n                          adding a field\n\n                          `value` which holds the custom JSON in addition to the\n                          `@type`\n\n                          field. Example (for message\n                          [google.protobuf.Duration][]):\n\n                              {\n                                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                                \"value\": \"1.212s\"\n                              }\n                      description: >-\n                        messages is a list of `sdk.Msg`s that will be executed\n                        if the proposal passes.\n                  description: >-\n                    Proposal defines a group proposal. Any member of a group can\n                    submit a proposal\n\n                    for a group policy to decide upon.\n\n                    A proposal consists of a set of `sdk.Msg`s that will be\n                    executed if the proposal\n\n                    passes as well as some optional metadata associated with the\n                    proposal.\n                description: proposals are the proposals with given group policy.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryProposalsByGroupPolicyResponse is the\n              Query/ProposalByGroupPolicy response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: address\n          description: >-\n            address is the account address of the group policy related to\n            proposals.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/vote_by_proposal_voter/{proposal_id}/{voter}:\n    get:\n      summary: VoteByProposalVoter queries a vote by proposal id and voter.\n      operationId: VoteByProposalVoter\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              vote:\n                description: vote is the vote with given proposal_id and voter.\n                type: object\n                properties:\n                  proposal_id:\n                    type: string\n                    format: uint64\n                    description: proposal is the unique ID of the proposal.\n                  voter:\n                    type: string\n                    description: voter is the account address of the voter.\n                  option:\n                    description: option is the voter's choice on the proposal.\n                    type: string\n                    enum:\n                      - VOTE_OPTION_UNSPECIFIED\n                      - VOTE_OPTION_YES\n                      - VOTE_OPTION_ABSTAIN\n                      - VOTE_OPTION_NO\n                      - VOTE_OPTION_NO_WITH_VETO\n                    default: VOTE_OPTION_UNSPECIFIED\n                  metadata:\n                    type: string\n                    description: >-\n                      metadata is any arbitrary metadata to attached to the\n                      vote.\n                  submit_time:\n                    type: string\n                    format: date-time\n                    description: submit_time is the timestamp when the vote was submitted.\n            description: >-\n              QueryVoteByProposalVoterResponse is the Query/VoteByProposalVoter\n              response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id is the unique ID of a proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: voter\n          description: voter is a proposal voter account address.\n          in: path\n          required: true\n          type: string\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/votes_by_proposal/{proposal_id}:\n    get:\n      summary: VotesByProposal queries a vote by proposal.\n      operationId: VotesByProposal\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              votes:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                      description: proposal is the unique ID of the proposal.\n                    voter:\n                      type: string\n                      description: voter is the account address of the voter.\n                    option:\n                      description: option is the voter's choice on the proposal.\n                      type: string\n                      enum:\n                        - VOTE_OPTION_UNSPECIFIED\n                        - VOTE_OPTION_YES\n                        - VOTE_OPTION_ABSTAIN\n                        - VOTE_OPTION_NO\n                        - VOTE_OPTION_NO_WITH_VETO\n                      default: VOTE_OPTION_UNSPECIFIED\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        vote.\n                    submit_time:\n                      type: string\n                      format: date-time\n                      description: >-\n                        submit_time is the timestamp when the vote was\n                        submitted.\n                  description: Vote represents a vote for a proposal.\n                description: votes are the list of votes for given proposal_id.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: >-\n              QueryVotesByProposalResponse is the Query/VotesByProposal response\n              type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: proposal_id\n          description: proposal_id is the unique ID of a proposal.\n          in: path\n          required: true\n          type: string\n          format: uint64\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\n  /cosmos/group/v1/votes_by_voter/{voter}:\n    get:\n      summary: VotesByVoter queries a vote by voter.\n      operationId: VotesByVoter\n      responses:\n        '200':\n          description: A successful response.\n          schema:\n            type: object\n            properties:\n              votes:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    proposal_id:\n                      type: string\n                      format: uint64\n                      description: proposal is the unique ID of the proposal.\n                    voter:\n                      type: string\n                      description: voter is the account address of the voter.\n                    option:\n                      description: option is the voter's choice on the proposal.\n                      type: string\n                      enum:\n                        - VOTE_OPTION_UNSPECIFIED\n                        - VOTE_OPTION_YES\n                        - VOTE_OPTION_ABSTAIN\n                        - VOTE_OPTION_NO\n                        - VOTE_OPTION_NO_WITH_VETO\n                      default: VOTE_OPTION_UNSPECIFIED\n                    metadata:\n                      type: string\n                      description: >-\n                        metadata is any arbitrary metadata to attached to the\n                        vote.\n                    submit_time:\n                      type: string\n                      format: date-time\n                      description: >-\n                        submit_time is the timestamp when the vote was\n                        submitted.\n                  description: Vote represents a vote for a proposal.\n                description: votes are the list of votes by given voter.\n              pagination:\n                description: pagination defines the pagination in the response.\n                type: object\n                properties:\n                  next_key:\n                    type: string\n                    format: byte\n                    description: |-\n                      next_key is the key to be passed to PageRequest.key to\n                      query the next page most efficiently. It will be empty if\n                      there are no more results.\n                  total:\n                    type: string\n                    format: uint64\n                    title: >-\n                      total is total number of results available if\n                      PageRequest.count_total\n\n                      was set, its value is undefined otherwise\n            description: QueryVotesByVoterResponse is the Query/VotesByVoter response type.\n        default:\n          description: An unexpected error response.\n          schema:\n            type: object\n            properties:\n              error:\n                type: string\n              code:\n                type: integer\n                format: int32\n              message:\n                type: string\n              details:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n      parameters:\n        - name: voter\n          description: voter is a proposal voter account address.\n          in: path\n          required: true\n          type: string\n        - name: pagination.key\n          description: |-\n            key is a value returned in PageResponse.next_key to begin\n            querying the next page most efficiently. Only one of offset or key\n            should be set.\n          in: query\n          required: false\n          type: string\n          format: byte\n        - name: pagination.offset\n          description: >-\n            offset is a numeric offset that can be used when key is unavailable.\n\n            It is less efficient than using key. Only one of offset or key\n            should\n\n            be set.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.limit\n          description: >-\n            limit is the total number of results to be returned in the result\n            page.\n\n            If left empty it will default to a value to be set by each app.\n          in: query\n          required: false\n          type: string\n          format: uint64\n        - name: pagination.count_total\n          description: >-\n            count_total is set to true  to indicate that the result set should\n            include\n\n            a count of the total number of items available for pagination in\n            UIs.\n\n            count_total is only respected when offset is used. It is ignored\n            when key\n\n            is set.\n          in: query\n          required: false\n          type: boolean\n        - name: pagination.reverse\n          description: >-\n            reverse is set to true if results are to be returned in the\n            descending order.\n\n\n            Since: cosmos-sdk 0.43\n          in: query\n          required: false\n          type: boolean\n      tags:\n        - Query\n        - Group\ndefinitions:\n  cosmos.base.query.v1beta1.PageRequest:\n    type: object\n    properties:\n      key:\n        type: string\n        format: byte\n        description: |-\n          key is a value returned in PageResponse.next_key to begin\n          querying the next page most efficiently. Only one of offset or key\n          should be set.\n      offset:\n        type: string\n        format: uint64\n        description: |-\n          offset is a numeric offset that can be used when key is unavailable.\n          It is less efficient than using key. Only one of offset or key should\n          be set.\n      limit:\n        type: string\n        format: uint64\n        description: >-\n          limit is the total number of results to be returned in the result\n          page.\n\n          If left empty it will default to a value to be set by each app.\n      count_total:\n        type: boolean\n        description: >-\n          count_total is set to true  to indicate that the result set should\n          include\n\n          a count of the total number of items available for pagination in UIs.\n\n          count_total is only respected when offset is used. It is ignored when\n          key\n\n          is set.\n      reverse:\n        type: boolean\n        description: >-\n          reverse is set to true if results are to be returned in the descending\n          order.\n\n\n          Since: cosmos-sdk 0.43\n    description: |-\n      message SomeRequest {\n               Foo some_parameter = 1;\n               PageRequest pagination = 2;\n       }\n    title: |-\n      PageRequest is to be embedded in gRPC request messages for efficient\n      pagination. Ex:\n  cosmos.base.query.v1beta1.PageResponse:\n    type: object\n    properties:\n      next_key:\n        type: string\n        format: byte\n        description: |-\n          next_key is the key to be passed to PageRequest.key to\n          query the next page most efficiently. It will be empty if\n          there are no more results.\n      total:\n        type: string\n        format: uint64\n        title: |-\n          total is total number of results available if PageRequest.count_total\n          was set, its value is undefined otherwise\n    description: |-\n      PageResponse is to be embedded in gRPC response messages where the\n      corresponding request message has used PageRequest.\n\n       message SomeResponse {\n               repeated Bar results = 1;\n               PageResponse page = 2;\n       }\n  cosmos.base.v1beta1.Coin:\n    type: object\n    properties:\n      denom:\n        type: string\n      amount:\n        type: string\n    description: |-\n      Coin defines a token with a denomination and an amount.\n\n      NOTE: The amount field is an Int which implements the custom method\n      signatures required by gogoproto.\n  google.protobuf.Any:\n    type: object\n    properties:\n      type_url:\n        type: string\n        description: >-\n          A URL/resource name that uniquely identifies the type of the\n          serialized\n\n          protocol buffer message. This string must contain at least\n\n          one \"/\" character. The last segment of the URL's path must represent\n\n          the fully qualified name of the type (as in\n\n          `path/google.protobuf.Duration`). The name should be in a canonical\n          form\n\n          (e.g., leading \".\" is not accepted).\n\n\n          In practice, teams usually precompile into the binary all types that\n          they\n\n          expect it to use in the context of Any. However, for URLs which use\n          the\n\n          scheme `http`, `https`, or no scheme, one can optionally set up a type\n\n          server that maps type URLs to message definitions as follows:\n\n\n          * If no scheme is provided, `https` is assumed.\n\n          * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n            value in binary format, or produce an error.\n          * Applications are allowed to cache lookup results based on the\n            URL, or have them precompiled into a binary to avoid any\n            lookup. Therefore, binary compatibility needs to be preserved\n            on changes to types. (Use versioned type names to manage\n            breaking changes.)\n\n          Note: this functionality is not currently available in the official\n\n          protobuf release, and it is not used for type URLs beginning with\n\n          type.googleapis.com.\n\n\n          Schemes other than `http`, `https` (or the empty scheme) might be\n\n          used with implementation specific semantics.\n      value:\n        type: string\n        format: byte\n        description: >-\n          Must be a valid serialized protocol buffer of the above specified\n          type.\n    description: >-\n      `Any` contains an arbitrary serialized protocol buffer message along with\n      a\n\n      URL that describes the type of the serialized message.\n\n\n      Protobuf library provides support to pack/unpack Any values in the form\n\n      of utility functions or additional generated methods of the Any type.\n\n\n      Example 1: Pack and unpack a message in C++.\n\n          Foo foo = ...;\n          Any any;\n          any.PackFrom(foo);\n          ...\n          if (any.UnpackTo(&foo)) {\n            ...\n          }\n\n      Example 2: Pack and unpack a message in Java.\n\n          Foo foo = ...;\n          Any any = Any.pack(foo);\n          ...\n          if (any.is(Foo.class)) {\n            foo = any.unpack(Foo.class);\n          }\n\n       Example 3: Pack and unpack a message in Python.\n\n          foo = Foo(...)\n          any = Any()\n          any.Pack(foo)\n          ...\n          if any.Is(Foo.DESCRIPTOR):\n            any.Unpack(foo)\n            ...\n\n       Example 4: Pack and unpack a message in Go\n\n           foo := &pb.Foo{...}\n           any, err := anypb.New(foo)\n           if err != nil {\n             ...\n           }\n           ...\n           foo := &pb.Foo{}\n           if err := any.UnmarshalTo(foo); err != nil {\n             ...\n           }\n\n      The pack methods provided by protobuf library will by default use\n\n      'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n      methods only use the fully qualified type name after the last '/'\n\n      in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n      name \"y.z\".\n\n\n\n      JSON\n\n      ====\n\n      The JSON representation of an `Any` value uses the regular\n\n      representation of the deserialized, embedded message, with an\n\n      additional field `@type` which contains the type URL. Example:\n\n          package google.profile;\n          message Person {\n            string first_name = 1;\n            string last_name = 2;\n          }\n\n          {\n            \"@type\": \"type.googleapis.com/google.profile.Person\",\n            \"firstName\": <string>,\n            \"lastName\": <string>\n          }\n\n      If the embedded message type is well-known and has a custom JSON\n\n      representation, that representation will be embedded adding a field\n\n      `value` which holds the custom JSON in addition to the `@type`\n\n      field. Example (for message [google.protobuf.Duration][]):\n\n          {\n            \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n            \"value\": \"1.212s\"\n          }\n  grpc.gateway.runtime.Error:\n    type: object\n    properties:\n      error:\n        type: string\n      code:\n        type: integer\n        format: int32\n      message:\n        type: string\n      details:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n  irismod.token.v1.Params:\n    type: object\n    properties:\n      token_tax_rate:\n        type: string\n      issue_token_base_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      mint_token_fee_ratio:\n        type: string\n    title: Params defines token module's parameters\n  irismod.token.v1.QueryFeesResponse:\n    type: object\n    properties:\n      exist:\n        type: boolean\n      issue_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      mint_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n    title: QueryFeesResponse is response type for the Query/Fees RPC method\n  irismod.token.v1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          token_tax_rate:\n            type: string\n          issue_token_base_fee:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          mint_token_fee_ratio:\n            type: string\n        title: Params defines token module's parameters\n      res:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryParametersResponse is response type for the Query/Parameters RPC\n      method\n  irismod.token.v1.QueryTokenResponse:\n    type: object\n    properties:\n      Token:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n    title: QueryTokenResponse is response type for the Query/Token RPC method\n  irismod.token.v1.QueryTokensResponse:\n    type: object\n    properties:\n      Tokens:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryTokensResponse is response type for the Query/Tokens RPC method\n  irismod.token.v1.QueryTotalBurnResponse:\n    type: object\n    properties:\n      burned_coins:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n    title: QueryTotalBurnResponse is response type for the Query/TotalBurn RPC method\n  irismod.token.Params:\n    type: object\n    properties:\n      token_tax_rate:\n        type: string\n      issue_token_base_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      mint_token_fee_ratio:\n        type: string\n    title: Params defines token module's parameters\n  irismod.token.QueryFeesResponse:\n    type: object\n    properties:\n      exist:\n        type: boolean\n      issue_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      mint_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n    title: QueryFeesResponse is response type for the Query/Fees RPC method\n  irismod.token.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          token_tax_rate:\n            type: string\n          issue_token_base_fee:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          mint_token_fee_ratio:\n            type: string\n        title: Params defines token module's parameters\n      res:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryParametersResponse is response type for the Query/Parameters RPC\n      method\n  irismod.token.QueryTokenResponse:\n    type: object\n    properties:\n      Token:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n    title: QueryTokenResponse is response type for the Query/Token RPC method\n  irismod.token.QueryTokensResponse:\n    type: object\n    properties:\n      Tokens:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryTokensResponse is response type for the Query/Tokens RPC method\n  irismod.token.QueryTotalBurnResponse:\n    type: object\n    properties:\n      burned_coins:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n    title: QueryTotalBurnResponse is response type for the Query/TotalBurn RPC method\n  irismod.htlc.AssetParam:\n    type: object\n    properties:\n      denom:\n        type: string\n      supply_limit:\n        type: object\n        properties:\n          limit:\n            type: string\n          time_limited:\n            type: boolean\n          time_period:\n            type: string\n          time_based_limit:\n            type: string\n      active:\n        type: boolean\n      deputy_address:\n        type: string\n      fixed_fee:\n        type: string\n      min_swap_amount:\n        type: string\n      max_swap_amount:\n        type: string\n      min_block_lock:\n        type: string\n        format: uint64\n      max_block_lock:\n        type: string\n        format: uint64\n  irismod.htlc.AssetSupply:\n    type: object\n    properties:\n      incoming_supply:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      outgoing_supply:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      current_supply:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      time_limited_current_supply:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      time_elapsed:\n        type: string\n  irismod.htlc.HTLC:\n    type: object\n    properties:\n      id:\n        type: string\n      sender:\n        type: string\n      to:\n        type: string\n      receiver_on_other_chain:\n        type: string\n      sender_on_other_chain:\n        type: string\n      amount:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      hash_lock:\n        type: string\n      secret:\n        type: string\n      timestamp:\n        type: string\n        format: uint64\n      expiration_height:\n        type: string\n        format: uint64\n      state:\n        type: string\n        enum:\n          - HTLC_STATE_OPEN\n          - HTLC_STATE_COMPLETED\n          - HTLC_STATE_REFUNDED\n        default: HTLC_STATE_OPEN\n        description: |-\n          - HTLC_STATE_OPEN: HTLC_STATE_OPEN defines an open state.\n           - HTLC_STATE_COMPLETED: HTLC_STATE_COMPLETED defines a completed state.\n           - HTLC_STATE_REFUNDED: HTLC_STATE_REFUNDED defines a refunded state.\n        title: HTLCState defines the state of an HTLC\n      closed_block:\n        type: string\n        format: uint64\n      transfer:\n        type: boolean\n      direction:\n        type: string\n        enum:\n          - NONE\n          - INCOMING\n          - OUTGOING\n        default: NONE\n        description: |-\n          - NONE: NONE defines an htlt none direction.\n           - INCOMING: INCOMING defines an htlt incoming direction.\n           - OUTGOING: OUTGOING defines an htlt outgoing direction.\n        title: SwapDirection defines the direction of an HTLT\n    title: HTLC defines the struct of an HTLC\n  irismod.htlc.HTLCState:\n    type: string\n    enum:\n      - HTLC_STATE_OPEN\n      - HTLC_STATE_COMPLETED\n      - HTLC_STATE_REFUNDED\n    default: HTLC_STATE_OPEN\n    description: |-\n      - HTLC_STATE_OPEN: HTLC_STATE_OPEN defines an open state.\n       - HTLC_STATE_COMPLETED: HTLC_STATE_COMPLETED defines a completed state.\n       - HTLC_STATE_REFUNDED: HTLC_STATE_REFUNDED defines a refunded state.\n    title: HTLCState defines the state of an HTLC\n  irismod.htlc.Params:\n    type: object\n    properties:\n      asset_params:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            supply_limit:\n              type: object\n              properties:\n                limit:\n                  type: string\n                time_limited:\n                  type: boolean\n                time_period:\n                  type: string\n                time_based_limit:\n                  type: string\n            active:\n              type: boolean\n            deputy_address:\n              type: string\n            fixed_fee:\n              type: string\n            min_swap_amount:\n              type: string\n            max_swap_amount:\n              type: string\n            min_block_lock:\n              type: string\n              format: uint64\n            max_block_lock:\n              type: string\n              format: uint64\n    title: Params defines token module's parameters\n  irismod.htlc.QueryAssetSuppliesResponse:\n    type: object\n    properties:\n      asset_supplies:\n        type: array\n        items:\n          type: object\n          properties:\n            incoming_supply:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            outgoing_supply:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            current_supply:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            time_limited_current_supply:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            time_elapsed:\n              type: string\n    title: >-\n      QueryAssetSuppliesResponse is response type for the Query/AssetSupplies\n      RPC\n\n      method\n  irismod.htlc.QueryAssetSupplyResponse:\n    type: object\n    properties:\n      asset_supply:\n        type: object\n        properties:\n          incoming_supply:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          outgoing_supply:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          current_supply:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          time_limited_current_supply:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          time_elapsed:\n            type: string\n    title: |-\n      QueryAssetSupplyResponse is response type for the Query/AssetSupply RPC\n      method\n  irismod.htlc.QueryHTLCResponse:\n    type: object\n    properties:\n      htlc:\n        type: object\n        properties:\n          id:\n            type: string\n          sender:\n            type: string\n          to:\n            type: string\n          receiver_on_other_chain:\n            type: string\n          sender_on_other_chain:\n            type: string\n          amount:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          hash_lock:\n            type: string\n          secret:\n            type: string\n          timestamp:\n            type: string\n            format: uint64\n          expiration_height:\n            type: string\n            format: uint64\n          state:\n            type: string\n            enum:\n              - HTLC_STATE_OPEN\n              - HTLC_STATE_COMPLETED\n              - HTLC_STATE_REFUNDED\n            default: HTLC_STATE_OPEN\n            description: |-\n              - HTLC_STATE_OPEN: HTLC_STATE_OPEN defines an open state.\n               - HTLC_STATE_COMPLETED: HTLC_STATE_COMPLETED defines a completed state.\n               - HTLC_STATE_REFUNDED: HTLC_STATE_REFUNDED defines a refunded state.\n            title: HTLCState defines the state of an HTLC\n          closed_block:\n            type: string\n            format: uint64\n          transfer:\n            type: boolean\n          direction:\n            type: string\n            enum:\n              - NONE\n              - INCOMING\n              - OUTGOING\n            default: NONE\n            description: |-\n              - NONE: NONE defines an htlt none direction.\n               - INCOMING: INCOMING defines an htlt incoming direction.\n               - OUTGOING: OUTGOING defines an htlt outgoing direction.\n            title: SwapDirection defines the direction of an HTLT\n        title: HTLC defines the struct of an HTLC\n    title: QueryBalanceResponse is the response type for the Query/HTLC RPC method\n  irismod.htlc.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          asset_params:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                supply_limit:\n                  type: object\n                  properties:\n                    limit:\n                      type: string\n                    time_limited:\n                      type: boolean\n                    time_period:\n                      type: string\n                    time_based_limit:\n                      type: string\n                active:\n                  type: boolean\n                deputy_address:\n                  type: string\n                fixed_fee:\n                  type: string\n                min_swap_amount:\n                  type: string\n                max_swap_amount:\n                  type: string\n                min_block_lock:\n                  type: string\n                  format: uint64\n                max_block_lock:\n                  type: string\n                  format: uint64\n        title: Params defines token module's parameters\n    title: QueryParamsResponse is response type for the Query/Parameters RPC method\n  irismod.htlc.SupplyLimit:\n    type: object\n    properties:\n      limit:\n        type: string\n      time_limited:\n        type: boolean\n      time_period:\n        type: string\n      time_based_limit:\n        type: string\n  irismod.htlc.SwapDirection:\n    type: string\n    enum:\n      - NONE\n      - INCOMING\n      - OUTGOING\n    default: NONE\n    description: |-\n      - NONE: NONE defines an htlt none direction.\n       - INCOMING: INCOMING defines an htlt incoming direction.\n       - OUTGOING: OUTGOING defines an htlt outgoing direction.\n    title: SwapDirection defines the direction of an HTLT\n  irismod.coinswap.PoolInfo:\n    type: object\n    properties:\n      id:\n        type: string\n      escrow_address:\n        type: string\n        title: escrow account for deposit tokens\n      standard:\n        title: main token balance\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      token:\n        title: counterparty token balance\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      lpt:\n        title: liquidity token balance\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      fee:\n        type: string\n        title: liquidity pool fee\n  irismod.coinswap.QueryLiquidityPoolResponse:\n    type: object\n    properties:\n      pool:\n        type: object\n        properties:\n          id:\n            type: string\n          escrow_address:\n            type: string\n            title: escrow account for deposit tokens\n          standard:\n            title: main token balance\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          token:\n            title: counterparty token balance\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          lpt:\n            title: liquidity token balance\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          fee:\n            type: string\n            title: liquidity pool fee\n    title: >-\n      QueryLiquidityPoolResponse is response type for the Query/LiquidityPool\n      RPC\n\n      method\n  irismod.coinswap.QueryLiquidityPoolsResponse:\n    type: object\n    properties:\n      pools:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n            escrow_address:\n              type: string\n              title: escrow account for deposit tokens\n            standard:\n              title: main token balance\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            token:\n              title: counterparty token balance\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            lpt:\n              title: liquidity token balance\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            fee:\n              type: string\n              title: liquidity pool fee\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryLiquidityPoolsResponse is response type for the Query/LiquidityPools\n      RPC\n\n      method\n  irismod.farm.FarmPoolEntry:\n    type: object\n    properties:\n      id:\n        type: string\n      creator:\n        type: string\n      description:\n        type: string\n      start_height:\n        type: string\n        format: int64\n      end_height:\n        type: string\n        format: int64\n      editable:\n        type: boolean\n      expired:\n        type: boolean\n      total_lpt_locked:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      total_reward:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      remaining_reward:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      reward_per_block:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n  irismod.farm.LockedInfo:\n    type: object\n    properties:\n      pool_id:\n        type: string\n      locked:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      pending_reward:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n  irismod.farm.Params:\n    type: object\n    properties:\n      pool_creation_fee:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n      max_reward_categories:\n        type: integer\n        format: int64\n      tax_rate:\n        type: string\n  irismod.farm.QueryFarmPoolResponse:\n    type: object\n    properties:\n      pool:\n        type: object\n        properties:\n          id:\n            type: string\n          creator:\n            type: string\n          description:\n            type: string\n          start_height:\n            type: string\n            format: int64\n          end_height:\n            type: string\n            format: int64\n          editable:\n            type: boolean\n          expired:\n            type: boolean\n          total_lpt_locked:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          total_reward:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          remaining_reward:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          reward_per_block:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n  irismod.farm.QueryFarmPoolsResponse:\n    type: object\n    properties:\n      pools:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n            creator:\n              type: string\n            description:\n              type: string\n            start_height:\n              type: string\n              format: int64\n            end_height:\n              type: string\n              format: int64\n            editable:\n              type: boolean\n            expired:\n              type: boolean\n            total_lpt_locked:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            total_reward:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            remaining_reward:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            reward_per_block:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n  irismod.farm.QueryFarmerResponse:\n    type: object\n    properties:\n      list:\n        type: array\n        items:\n          type: object\n          properties:\n            pool_id:\n              type: string\n            locked:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            pending_reward:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n      height:\n        type: string\n        format: int64\n  irismod.farm.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          pool_creation_fee:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n          max_reward_categories:\n            type: integer\n            format: int64\n          tax_rate:\n            type: string\n  irismod.nft.BaseNFT:\n    type: object\n    properties:\n      id:\n        type: string\n      name:\n        type: string\n      uri:\n        type: string\n      data:\n        type: string\n      owner:\n        type: string\n      uri_hash:\n        type: string\n    title: BaseNFT defines a non-fungible token\n  irismod.nft.Collection:\n    type: object\n    properties:\n      denom:\n        type: object\n        properties:\n          id:\n            type: string\n          name:\n            type: string\n          schema:\n            type: string\n          creator:\n            type: string\n          symbol:\n            type: string\n          mint_restricted:\n            type: boolean\n          update_restricted:\n            type: boolean\n          description:\n            type: string\n          uri:\n            type: string\n          uri_hash:\n            type: string\n          data:\n            type: string\n        title: Denom defines a type of NFT\n      nfts:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n            name:\n              type: string\n            uri:\n              type: string\n            data:\n              type: string\n            owner:\n              type: string\n            uri_hash:\n              type: string\n          title: BaseNFT defines a non-fungible token\n    title: Collection defines a type of collection\n  irismod.nft.Denom:\n    type: object\n    properties:\n      id:\n        type: string\n      name:\n        type: string\n      schema:\n        type: string\n      creator:\n        type: string\n      symbol:\n        type: string\n      mint_restricted:\n        type: boolean\n      update_restricted:\n        type: boolean\n      description:\n        type: string\n      uri:\n        type: string\n      uri_hash:\n        type: string\n      data:\n        type: string\n    title: Denom defines a type of NFT\n  irismod.nft.IDCollection:\n    type: object\n    properties:\n      denom_id:\n        type: string\n      token_ids:\n        type: array\n        items:\n          type: string\n    title: IDCollection defines a type of collection with specified ID\n  irismod.nft.Owner:\n    type: object\n    properties:\n      address:\n        type: string\n      id_collections:\n        type: array\n        items:\n          type: object\n          properties:\n            denom_id:\n              type: string\n            token_ids:\n              type: array\n              items:\n                type: string\n          title: IDCollection defines a type of collection with specified ID\n    title: Owner defines a type of owner\n  irismod.nft.QueryCollectionResponse:\n    type: object\n    properties:\n      collection:\n        type: object\n        properties:\n          denom:\n            type: object\n            properties:\n              id:\n                type: string\n              name:\n                type: string\n              schema:\n                type: string\n              creator:\n                type: string\n              symbol:\n                type: string\n              mint_restricted:\n                type: boolean\n              update_restricted:\n                type: boolean\n              description:\n                type: string\n              uri:\n                type: string\n              uri_hash:\n                type: string\n              data:\n                type: string\n            title: Denom defines a type of NFT\n          nfts:\n            type: array\n            items:\n              type: object\n              properties:\n                id:\n                  type: string\n                name:\n                  type: string\n                uri:\n                  type: string\n                data:\n                  type: string\n                owner:\n                  type: string\n                uri_hash:\n                  type: string\n              title: BaseNFT defines a non-fungible token\n        title: Collection defines a type of collection\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: |-\n      QueryCollectionResponse is the response type for the Query/Collection RPC\n      method\n  irismod.nft.QueryDenomResponse:\n    type: object\n    properties:\n      denom:\n        type: object\n        properties:\n          id:\n            type: string\n          name:\n            type: string\n          schema:\n            type: string\n          creator:\n            type: string\n          symbol:\n            type: string\n          mint_restricted:\n            type: boolean\n          update_restricted:\n            type: boolean\n          description:\n            type: string\n          uri:\n            type: string\n          uri_hash:\n            type: string\n          data:\n            type: string\n        title: Denom defines a type of NFT\n    title: QueryDenomResponse is the response type for the Query/Denom RPC method\n  irismod.nft.QueryDenomsResponse:\n    type: object\n    properties:\n      denoms:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n            name:\n              type: string\n            schema:\n              type: string\n            creator:\n              type: string\n            symbol:\n              type: string\n            mint_restricted:\n              type: boolean\n            update_restricted:\n              type: boolean\n            description:\n              type: string\n            uri:\n              type: string\n            uri_hash:\n              type: string\n            data:\n              type: string\n          title: Denom defines a type of NFT\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryDenomsResponse is the response type for the Query/Denoms RPC method\n  irismod.nft.QueryNFTResponse:\n    type: object\n    properties:\n      nft:\n        type: object\n        properties:\n          id:\n            type: string\n          name:\n            type: string\n          uri:\n            type: string\n          data:\n            type: string\n          owner:\n            type: string\n          uri_hash:\n            type: string\n        title: BaseNFT defines a non-fungible token\n    title: QueryNFTResponse is the response type for the Query/NFT RPC method\n  irismod.nft.QueryNFTsOfOwnerResponse:\n    type: object\n    properties:\n      owner:\n        type: object\n        properties:\n          address:\n            type: string\n          id_collections:\n            type: array\n            items:\n              type: object\n              properties:\n                denom_id:\n                  type: string\n                token_ids:\n                  type: array\n                  items:\n                    type: string\n              title: IDCollection defines a type of collection with specified ID\n        title: Owner defines a type of owner\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryNFTsOfOwnerResponse is the response type for the Query/NFTsOfOwner\n      RPC\n\n      method\n  irismod.nft.QuerySupplyResponse:\n    type: object\n    properties:\n      amount:\n        type: string\n        format: uint64\n    title: QuerySupplyResponse is the response type for the Query/Supply RPC method\n  irismod.service.Params:\n    type: object\n    properties:\n      max_request_timeout:\n        type: string\n        format: int64\n      min_deposit_multiple:\n        type: string\n        format: int64\n      min_deposit:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      service_fee_tax:\n        type: string\n      slash_fraction:\n        type: string\n      complaint_retrospect:\n        type: string\n      arbitration_time_limit:\n        type: string\n      tx_size_limit:\n        type: string\n        format: uint64\n      base_denom:\n        type: string\n      restricted_service_fee_denom:\n        type: boolean\n    title: Params defines service module's parameters\n  irismod.service.QueryBindingResponse:\n    type: object\n    properties:\n      service_binding:\n        type: object\n        properties:\n          service_name:\n            type: string\n          provider:\n            type: string\n          deposit:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          pricing:\n            type: string\n          qos:\n            type: string\n            format: uint64\n          options:\n            type: string\n          available:\n            type: boolean\n          disabled_time:\n            type: string\n            format: date-time\n          owner:\n            type: string\n        title: ServiceBinding defines a standard for service binding\n    title: QueryDefinitionResponse is response type for the Query/Binding RPC method\n  irismod.service.QueryBindingsResponse:\n    type: object\n    properties:\n      service_bindings:\n        type: array\n        items:\n          type: object\n          properties:\n            service_name:\n              type: string\n            provider:\n              type: string\n            deposit:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            pricing:\n              type: string\n            qos:\n              type: string\n              format: uint64\n            options:\n              type: string\n            available:\n              type: boolean\n            disabled_time:\n              type: string\n              format: date-time\n            owner:\n              type: string\n          title: ServiceBinding defines a standard for service binding\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryDefinitionsResponse is response type for the Query/Bindings RPC\n      method\n  irismod.service.QueryDefinitionResponse:\n    type: object\n    properties:\n      service_definition:\n        type: object\n        properties:\n          name:\n            type: string\n          description:\n            type: string\n          tags:\n            type: array\n            items:\n              type: string\n          author:\n            type: string\n          author_description:\n            type: string\n          schemas:\n            type: string\n        title: ServiceDefinition defines a standard for service definition\n    title: >-\n      QueryDefinitionResponse is response type for the Query/Definition RPC\n      method\n  irismod.service.QueryEarnedFeesResponse:\n    type: object\n    properties:\n      fees:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n    title: >-\n      QueryEarnedFeesResponse is response type for the Query/EarnedFees RPC\n      method\n  irismod.service.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          max_request_timeout:\n            type: string\n            format: int64\n          min_deposit_multiple:\n            type: string\n            format: int64\n          min_deposit:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          service_fee_tax:\n            type: string\n          slash_fraction:\n            type: string\n          complaint_retrospect:\n            type: string\n          arbitration_time_limit:\n            type: string\n          tx_size_limit:\n            type: string\n            format: uint64\n          base_denom:\n            type: string\n          restricted_service_fee_denom:\n            type: boolean\n        title: Params defines service module's parameters\n      res:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryParametersResponse is response type for the Query/Parameters RPC\n      method\n  irismod.service.QueryRequestContextResponse:\n    type: object\n    properties:\n      request_context:\n        type: object\n        properties:\n          service_name:\n            type: string\n          providers:\n            type: array\n            items:\n              type: string\n          consumer:\n            type: string\n          input:\n            type: string\n          service_fee_cap:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          module_name:\n            type: string\n          timeout:\n            type: string\n            format: int64\n          repeated:\n            type: boolean\n          repeated_frequency:\n            type: string\n            format: uint64\n          repeated_total:\n            type: string\n            format: int64\n          batch_counter:\n            type: string\n            format: uint64\n          batch_request_count:\n            type: integer\n            format: int64\n          batch_response_count:\n            type: integer\n            format: int64\n          batch_response_threshold:\n            type: integer\n            format: int64\n          response_threshold:\n            type: integer\n            format: int64\n          batch_state:\n            type: string\n            enum:\n              - BATCH_RUNNING\n              - BATCH_COMPLETED\n            default: BATCH_RUNNING\n            description: |-\n              - BATCH_RUNNING: BATCH_RUNNING defines the running batch status.\n               - BATCH_COMPLETED: BATCH_COMPLETED defines the completed batch status.\n            title: >-\n              RequestContextBatchState is a type alias that represents a request\n              batch\n\n              status as a byte\n          state:\n            type: string\n            enum:\n              - RUNNING\n              - PAUSED\n              - COMPLETED\n            default: RUNNING\n            description: |-\n              - RUNNING: RUNNING defines the running request context status\n               - PAUSED: PAUSED defines the paused request context status\n               - COMPLETED: COMPLETED defines the completed request context status\n            title: >-\n              RequestContextState is a type alias that represents a request\n              status as a\n\n              byte\n        title: RequestContext defines a standard for request context\n    title: >-\n      QueryRequestContextResponse is response type for the Query/RequestContext\n      RPC\n\n      method\n  irismod.service.QueryRequestResponse:\n    type: object\n    properties:\n      request:\n        type: object\n        properties:\n          id:\n            type: string\n          service_name:\n            type: string\n          provider:\n            type: string\n          consumer:\n            type: string\n          input:\n            type: string\n          service_fee:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          request_height:\n            type: string\n            format: int64\n          expiration_height:\n            type: string\n            format: int64\n          request_context_id:\n            type: string\n          request_context_batch_counter:\n            type: string\n            format: uint64\n        title: Request defines a standard for request\n    title: QueryRequestResponse is response type for the Query/Request RPC method\n  irismod.service.QueryRequestsByReqCtxResponse:\n    type: object\n    properties:\n      requests:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n            service_name:\n              type: string\n            provider:\n              type: string\n            consumer:\n              type: string\n            input:\n              type: string\n            service_fee:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            request_height:\n              type: string\n              format: int64\n            expiration_height:\n              type: string\n              format: int64\n            request_context_id:\n              type: string\n            request_context_batch_counter:\n              type: string\n              format: uint64\n          title: Request defines a standard for request\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QueryRequestsByReqCtxResponse is response type for the\n      Query/RequestsByReqCtx\n\n      RPC method\n  irismod.service.QueryRequestsResponse:\n    type: object\n    properties:\n      requests:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n            service_name:\n              type: string\n            provider:\n              type: string\n            consumer:\n              type: string\n            input:\n              type: string\n            service_fee:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            request_height:\n              type: string\n              format: int64\n            expiration_height:\n              type: string\n              format: int64\n            request_context_id:\n              type: string\n            request_context_batch_counter:\n              type: string\n              format: uint64\n          title: Request defines a standard for request\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryRequestsResponse is response type for the Query/Requests RPC method\n  irismod.service.QueryResponseResponse:\n    type: object\n    properties:\n      response:\n        type: object\n        properties:\n          provider:\n            type: string\n          consumer:\n            type: string\n          result:\n            type: string\n          output:\n            type: string\n          request_context_id:\n            type: string\n          request_context_batch_counter:\n            type: string\n            format: uint64\n        title: Response defines a standard for response\n    title: QueryResponseResponse is response type for the Query/Response RPC method\n  irismod.service.QueryResponsesResponse:\n    type: object\n    properties:\n      responses:\n        type: array\n        items:\n          type: object\n          properties:\n            provider:\n              type: string\n            consumer:\n              type: string\n            result:\n              type: string\n            output:\n              type: string\n            request_context_id:\n              type: string\n            request_context_batch_counter:\n              type: string\n              format: uint64\n          title: Response defines a standard for response\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryResponsesResponse is response type for the Query/Responses RPC method\n  irismod.service.QuerySchemaResponse:\n    type: object\n    properties:\n      schema:\n        type: string\n    title: QuerySchemaResponse is response type for the Query/Schema RPC method\n  irismod.service.QueryWithdrawAddressResponse:\n    type: object\n    properties:\n      withdraw_address:\n        type: string\n    title: >-\n      QueryWithdrawAddressResponse is response type for the\n      Query/WithdrawAddress\n\n      RPC method\n  irismod.service.Request:\n    type: object\n    properties:\n      id:\n        type: string\n      service_name:\n        type: string\n      provider:\n        type: string\n      consumer:\n        type: string\n      input:\n        type: string\n      service_fee:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      request_height:\n        type: string\n        format: int64\n      expiration_height:\n        type: string\n        format: int64\n      request_context_id:\n        type: string\n      request_context_batch_counter:\n        type: string\n        format: uint64\n    title: Request defines a standard for request\n  irismod.service.RequestContext:\n    type: object\n    properties:\n      service_name:\n        type: string\n      providers:\n        type: array\n        items:\n          type: string\n      consumer:\n        type: string\n      input:\n        type: string\n      service_fee_cap:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      module_name:\n        type: string\n      timeout:\n        type: string\n        format: int64\n      repeated:\n        type: boolean\n      repeated_frequency:\n        type: string\n        format: uint64\n      repeated_total:\n        type: string\n        format: int64\n      batch_counter:\n        type: string\n        format: uint64\n      batch_request_count:\n        type: integer\n        format: int64\n      batch_response_count:\n        type: integer\n        format: int64\n      batch_response_threshold:\n        type: integer\n        format: int64\n      response_threshold:\n        type: integer\n        format: int64\n      batch_state:\n        type: string\n        enum:\n          - BATCH_RUNNING\n          - BATCH_COMPLETED\n        default: BATCH_RUNNING\n        description: |-\n          - BATCH_RUNNING: BATCH_RUNNING defines the running batch status.\n           - BATCH_COMPLETED: BATCH_COMPLETED defines the completed batch status.\n        title: >-\n          RequestContextBatchState is a type alias that represents a request\n          batch\n\n          status as a byte\n      state:\n        type: string\n        enum:\n          - RUNNING\n          - PAUSED\n          - COMPLETED\n        default: RUNNING\n        description: |-\n          - RUNNING: RUNNING defines the running request context status\n           - PAUSED: PAUSED defines the paused request context status\n           - COMPLETED: COMPLETED defines the completed request context status\n        title: >-\n          RequestContextState is a type alias that represents a request status\n          as a\n\n          byte\n    title: RequestContext defines a standard for request context\n  irismod.service.RequestContextBatchState:\n    type: string\n    enum:\n      - BATCH_RUNNING\n      - BATCH_COMPLETED\n    default: BATCH_RUNNING\n    description: |-\n      - BATCH_RUNNING: BATCH_RUNNING defines the running batch status.\n       - BATCH_COMPLETED: BATCH_COMPLETED defines the completed batch status.\n    title: |-\n      RequestContextBatchState is a type alias that represents a request batch\n      status as a byte\n  irismod.service.RequestContextState:\n    type: string\n    enum:\n      - RUNNING\n      - PAUSED\n      - COMPLETED\n    default: RUNNING\n    description: |-\n      - RUNNING: RUNNING defines the running request context status\n       - PAUSED: PAUSED defines the paused request context status\n       - COMPLETED: COMPLETED defines the completed request context status\n    title: |-\n      RequestContextState is a type alias that represents a request status as a\n      byte\n  irismod.service.Response:\n    type: object\n    properties:\n      provider:\n        type: string\n      consumer:\n        type: string\n      result:\n        type: string\n      output:\n        type: string\n      request_context_id:\n        type: string\n      request_context_batch_counter:\n        type: string\n        format: uint64\n    title: Response defines a standard for response\n  irismod.service.ServiceBinding:\n    type: object\n    properties:\n      service_name:\n        type: string\n      provider:\n        type: string\n      deposit:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      pricing:\n        type: string\n      qos:\n        type: string\n        format: uint64\n      options:\n        type: string\n      available:\n        type: boolean\n      disabled_time:\n        type: string\n        format: date-time\n      owner:\n        type: string\n    title: ServiceBinding defines a standard for service binding\n  irismod.service.ServiceDefinition:\n    type: object\n    properties:\n      name:\n        type: string\n      description:\n        type: string\n      tags:\n        type: array\n        items:\n          type: string\n      author:\n        type: string\n      author_description:\n        type: string\n      schemas:\n        type: string\n    title: ServiceDefinition defines a standard for service definition\n  irismod.oracle.Feed:\n    type: object\n    properties:\n      feed_name:\n        type: string\n      description:\n        type: string\n      aggregate_func:\n        type: string\n      value_json_path:\n        type: string\n      latest_history:\n        type: string\n        format: uint64\n      request_context_id:\n        type: string\n      creator:\n        type: string\n    title: Feed defines the feed standard\n  irismod.oracle.FeedContext:\n    type: object\n    properties:\n      feed:\n        type: object\n        properties:\n          feed_name:\n            type: string\n          description:\n            type: string\n          aggregate_func:\n            type: string\n          value_json_path:\n            type: string\n          latest_history:\n            type: string\n            format: uint64\n          request_context_id:\n            type: string\n          creator:\n            type: string\n        title: Feed defines the feed standard\n      service_name:\n        type: string\n      providers:\n        type: array\n        items:\n          type: string\n      input:\n        type: string\n      timeout:\n        type: string\n        format: int64\n      service_fee_cap:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      repeated_frequency:\n        type: string\n        format: uint64\n      response_threshold:\n        type: integer\n        format: int64\n      state:\n        type: string\n        enum:\n          - RUNNING\n          - PAUSED\n          - COMPLETED\n        default: RUNNING\n        description: |-\n          - RUNNING: RUNNING defines the running request context status\n           - PAUSED: PAUSED defines the paused request context status\n           - COMPLETED: COMPLETED defines the completed request context status\n        title: >-\n          RequestContextState is a type alias that represents a request status\n          as a\n\n          byte\n    title: FeedContext defines the feed context struct\n  irismod.oracle.FeedValue:\n    type: object\n    properties:\n      data:\n        type: string\n      timestamp:\n        type: string\n        format: date-time\n    title: FeedValue defines the feed result standard\n  irismod.oracle.QueryFeedResponse:\n    type: object\n    properties:\n      feed:\n        type: object\n        properties:\n          feed:\n            type: object\n            properties:\n              feed_name:\n                type: string\n              description:\n                type: string\n              aggregate_func:\n                type: string\n              value_json_path:\n                type: string\n              latest_history:\n                type: string\n                format: uint64\n              request_context_id:\n                type: string\n              creator:\n                type: string\n            title: Feed defines the feed standard\n          service_name:\n            type: string\n          providers:\n            type: array\n            items:\n              type: string\n          input:\n            type: string\n          timeout:\n            type: string\n            format: int64\n          service_fee_cap:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          repeated_frequency:\n            type: string\n            format: uint64\n          response_threshold:\n            type: integer\n            format: int64\n          state:\n            type: string\n            enum:\n              - RUNNING\n              - PAUSED\n              - COMPLETED\n            default: RUNNING\n            description: |-\n              - RUNNING: RUNNING defines the running request context status\n               - PAUSED: PAUSED defines the paused request context status\n               - COMPLETED: COMPLETED defines the completed request context status\n            title: >-\n              RequestContextState is a type alias that represents a request\n              status as a\n\n              byte\n        title: FeedContext defines the feed context struct\n    title: QueryFeedResponse is response type for the Query/Feed RPC method\n  irismod.oracle.QueryFeedValueResponse:\n    type: object\n    properties:\n      feed_values:\n        type: array\n        items:\n          type: object\n          properties:\n            data:\n              type: string\n            timestamp:\n              type: string\n              format: date-time\n          title: FeedValue defines the feed result standard\n    title: QueryFeedValueResponse is response type for the Query/FeedValue RPC method\n  irismod.oracle.QueryFeedsResponse:\n    type: object\n    properties:\n      feeds:\n        type: array\n        items:\n          type: object\n          properties:\n            feed:\n              type: object\n              properties:\n                feed_name:\n                  type: string\n                description:\n                  type: string\n                aggregate_func:\n                  type: string\n                value_json_path:\n                  type: string\n                latest_history:\n                  type: string\n                  format: uint64\n                request_context_id:\n                  type: string\n                creator:\n                  type: string\n              title: Feed defines the feed standard\n            service_name:\n              type: string\n            providers:\n              type: array\n              items:\n                type: string\n            input:\n              type: string\n            timeout:\n              type: string\n              format: int64\n            service_fee_cap:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            repeated_frequency:\n              type: string\n              format: uint64\n            response_threshold:\n              type: integer\n              format: int64\n            state:\n              type: string\n              enum:\n                - RUNNING\n                - PAUSED\n                - COMPLETED\n              default: RUNNING\n              description: |-\n                - RUNNING: RUNNING defines the running request context status\n                 - PAUSED: PAUSED defines the paused request context status\n                 - COMPLETED: COMPLETED defines the completed request context status\n              title: >-\n                RequestContextState is a type alias that represents a request\n                status as a\n\n                byte\n          title: FeedContext defines the feed context struct\n      pagination:\n        title: pagination defines an optional pagination for the request\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryFeedsResponse is response type for the Query/Feeds RPC method\n  irismod.random.QueryRandomRequestQueueResponse:\n    type: object\n    properties:\n      requests:\n        type: array\n        items:\n          type: object\n          properties:\n            height:\n              type: string\n              format: int64\n            consumer:\n              type: string\n            tx_hash:\n              type: string\n            oracle:\n              type: boolean\n            service_fee_cap:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            service_context_id:\n              type: string\n          title: Request defines the random request standard\n    title: |-\n      QueryRandomRequestQueueResponse is response type for the\n      Query/RandomRequestQueue RPC method\n  irismod.random.QueryRandomResponse:\n    type: object\n    properties:\n      random:\n        type: object\n        properties:\n          request_tx_hash:\n            type: string\n          height:\n            type: string\n            format: int64\n          value:\n            type: string\n        title: Random defines the feed standard\n    title: QueryParametersResponse is response type for the Query/Random RPC method\n  irismod.random.Random:\n    type: object\n    properties:\n      request_tx_hash:\n        type: string\n      height:\n        type: string\n        format: int64\n      value:\n        type: string\n    title: Random defines the feed standard\n  irismod.random.Request:\n    type: object\n    properties:\n      height:\n        type: string\n        format: int64\n      consumer:\n        type: string\n      tx_hash:\n        type: string\n      oracle:\n        type: boolean\n      service_fee_cap:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      service_context_id:\n        type: string\n    title: Request defines the random request standard\n  irismod.record.Content:\n    type: object\n    properties:\n      digest:\n        type: string\n      digest_algo:\n        type: string\n      uri:\n        type: string\n      meta:\n        type: string\n    title: Content defines the detailed information for a record\n  irismod.record.QueryRecordResponse:\n    type: object\n    properties:\n      record:\n        type: object\n        properties:\n          tx_hash:\n            type: string\n          contents:\n            type: array\n            items:\n              type: object\n              properties:\n                digest:\n                  type: string\n                digest_algo:\n                  type: string\n                uri:\n                  type: string\n                meta:\n                  type: string\n              title: Content defines the detailed information for a record\n          creator:\n            type: string\n        title: Record defines the record standard\n    title: QueryRecordResponse is the response type for the Query/Record RPC method\n  irismod.record.Record:\n    type: object\n    properties:\n      tx_hash:\n        type: string\n      contents:\n        type: array\n        items:\n          type: object\n          properties:\n            digest:\n              type: string\n            digest_algo:\n              type: string\n            uri:\n              type: string\n            meta:\n              type: string\n          title: Content defines the detailed information for a record\n      creator:\n        type: string\n    title: Record defines the record standard\n  irishub.mint.Params:\n    type: object\n    properties:\n      mint_denom:\n        type: string\n        title: type of coin to mint\n      inflation:\n        type: string\n        title: inflation rate\n    title: Params defines mint module's parameters\n  irishub.mint.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          mint_denom:\n            type: string\n            title: type of coin to mint\n          inflation:\n            type: string\n            title: inflation rate\n        title: Params defines mint module's parameters\n      res:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QueryParamsResponse is response type for the Query/Parameters RPC method\n  irishub.guardian.AccountType:\n    type: string\n    enum:\n      - GENESIS\n      - ORDINARY\n    default: GENESIS\n    description: |-\n      - GENESIS: GENESIS defines a genesis account type\n       - ORDINARY: ORDINARY defines a ordinary account type\n    title: AccountType defines the super account type\n  irishub.guardian.QuerySupersResponse:\n    type: object\n    properties:\n      supers:\n        type: array\n        items:\n          type: object\n          properties:\n            description:\n              type: string\n            account_type:\n              type: string\n              enum:\n                - GENESIS\n                - ORDINARY\n              default: GENESIS\n              description: |-\n                - GENESIS: GENESIS defines a genesis account type\n                 - ORDINARY: ORDINARY defines a ordinary account type\n              title: AccountType defines the super account type\n            address:\n              type: string\n            added_by:\n              type: string\n          title: Super defines the super standard\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: QuerySupersResponse is response type for the Query/Supers RPC method\n  irishub.guardian.Super:\n    type: object\n    properties:\n      description:\n        type: string\n      account_type:\n        type: string\n        enum:\n          - GENESIS\n          - ORDINARY\n        default: GENESIS\n        description: |-\n          - GENESIS: GENESIS defines a genesis account type\n           - ORDINARY: ORDINARY defines a ordinary account type\n        title: AccountType defines the super account type\n      address:\n        type: string\n      added_by:\n        type: string\n    title: Super defines the super standard\n  ethermint.evm.v1.ChainConfig:\n    type: object\n    properties:\n      homestead_block:\n        type: string\n        title: homestead_block switch (nil no fork, 0 = already homestead)\n      dao_fork_block:\n        type: string\n        title: >-\n          dao_fork_block corresponds to TheDAO hard-fork switch block (nil no\n          fork)\n      dao_fork_support:\n        type: boolean\n        title: >-\n          dao_fork_support defines whether the nodes supports or opposes the DAO\n          hard-fork\n      eip150_block:\n        type: string\n        title: >-\n          eip150_block: EIP150 implements the Gas price changes\n\n          (https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil no\n          fork)\n      eip150_hash:\n        type: string\n        title: >-\n          eip150_hash: EIP150 HF hash (needed for header only clients as only\n          gas pricing changed)\n      eip155_block:\n        type: string\n        title: 'eip155_block: EIP155Block HF block'\n      eip158_block:\n        type: string\n        title: 'eip158_block: EIP158 HF block'\n      byzantium_block:\n        type: string\n        title: >-\n          byzantium_block: Byzantium switch block (nil no fork, 0 = already on\n          byzantium)\n      constantinople_block:\n        type: string\n        title: >-\n          constantinople_block: Constantinople switch block (nil no fork, 0 =\n          already activated)\n      petersburg_block:\n        type: string\n        title: 'petersburg_block: Petersburg switch block (nil same as Constantinople)'\n      istanbul_block:\n        type: string\n        title: >-\n          istanbul_block: Istanbul switch block (nil no fork, 0 = already on\n          istanbul)\n      muir_glacier_block:\n        type: string\n        title: >-\n          muir_glacier_block: Eip-2384 (bomb delay) switch block (nil no fork, 0\n          = already activated)\n      berlin_block:\n        type: string\n        title: >-\n          berlin_block: Berlin switch block (nil = no fork, 0 = already on\n          berlin)\n      london_block:\n        type: string\n        title: >-\n          london_block: London switch block (nil = no fork, 0 = already on\n          london)\n      arrow_glacier_block:\n        type: string\n        title: >-\n          arrow_glacier_block: Eip-4345 (bomb delay) switch block (nil = no\n          fork, 0 = already activated)\n      gray_glacier_block:\n        type: string\n        title: >-\n          gray_glacier_block: EIP-5133 (bomb delay) switch block (nil = no fork,\n          0 = already activated)\n      merge_netsplit_block:\n        type: string\n        title: >-\n          merge_netsplit_block: Virtual fork after The Merge to use as a network\n          splitter\n      shanghai_block:\n        type: string\n        title: shanghai_block switch block (nil = no fork, 0 = already on shanghai)\n      cancun_block:\n        type: string\n        title: cancun_block switch block (nil = no fork, 0 = already on cancun)\n    description: >-\n      ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int\n      values\n\n      instead of *big.Int.\n  ethermint.evm.v1.EstimateGasResponse:\n    type: object\n    properties:\n      gas:\n        type: string\n        format: uint64\n        title: gas returns the estimated gas\n    title: EstimateGasResponse defines EstimateGas response\n  ethermint.evm.v1.Log:\n    type: object\n    properties:\n      address:\n        type: string\n        title: address of the contract that generated the event\n      topics:\n        type: array\n        items:\n          type: string\n        description: topics is a list of topics provided by the contract.\n      data:\n        type: string\n        format: byte\n        title: data which is supplied by the contract, usually ABI-encoded\n      block_number:\n        type: string\n        format: uint64\n        title: block_number of the block in which the transaction was included\n      tx_hash:\n        type: string\n        title: tx_hash is the transaction hash\n      tx_index:\n        type: string\n        format: uint64\n        title: tx_index of the transaction in the block\n      block_hash:\n        type: string\n        title: block_hash of the block in which the transaction was included\n      index:\n        type: string\n        format: uint64\n        title: index of the log in the block\n      removed:\n        type: boolean\n        description: >-\n          removed is true if this log was reverted due to a chain\n\n          reorganisation. You must pay attention to this field if you receive\n          logs\n\n          through a filter query.\n    description: >-\n      Log represents an protobuf compatible Ethereum Log that defines a contract\n\n      log event. These events are generated by the LOG opcode and stored/indexed\n      by\n\n      the node.\n\n\n      NOTE: address, topics and data are consensus fields. The rest of the\n      fields\n\n      are derived, i.e. filled in by the nodes, but not secured by consensus.\n  ethermint.evm.v1.MsgEthereumTx:\n    type: object\n    properties:\n      data:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: data is inner transaction data of the Ethereum transaction\n      size:\n        type: number\n        format: double\n        title: size is the encoded storage size of the transaction (DEPRECATED)\n      hash:\n        type: string\n        title: hash of the transaction in hex format\n      from:\n        type: string\n        title: >-\n          from is the ethereum signer address in hex format. This address value\n          is checked\n\n          against the address derived from the signature (V, R, S) using the\n\n          secp256k1 elliptic curve\n    description: MsgEthereumTx encapsulates an Ethereum transaction as an SDK message.\n  ethermint.evm.v1.MsgEthereumTxResponse:\n    type: object\n    properties:\n      hash:\n        type: string\n        title: >-\n          hash of the ethereum transaction in hex format. This hash differs from\n          the\n\n          Tendermint sha256 hash of the transaction bytes. See\n\n          https://github.com/cometbft/cometbft/issues/6539 for reference\n      logs:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n              title: address of the contract that generated the event\n            topics:\n              type: array\n              items:\n                type: string\n              description: topics is a list of topics provided by the contract.\n            data:\n              type: string\n              format: byte\n              title: data which is supplied by the contract, usually ABI-encoded\n            block_number:\n              type: string\n              format: uint64\n              title: block_number of the block in which the transaction was included\n            tx_hash:\n              type: string\n              title: tx_hash is the transaction hash\n            tx_index:\n              type: string\n              format: uint64\n              title: tx_index of the transaction in the block\n            block_hash:\n              type: string\n              title: block_hash of the block in which the transaction was included\n            index:\n              type: string\n              format: uint64\n              title: index of the log in the block\n            removed:\n              type: boolean\n              description: >-\n                removed is true if this log was reverted due to a chain\n\n                reorganisation. You must pay attention to this field if you\n                receive logs\n\n                through a filter query.\n          description: >-\n            Log represents an protobuf compatible Ethereum Log that defines a\n            contract\n\n            log event. These events are generated by the LOG opcode and\n            stored/indexed by\n\n            the node.\n\n\n            NOTE: address, topics and data are consensus fields. The rest of the\n            fields\n\n            are derived, i.e. filled in by the nodes, but not secured by\n            consensus.\n        description: |-\n          logs contains the transaction hash and the proto-compatible ethereum\n          logs.\n      ret:\n        type: string\n        format: byte\n        title: >-\n          ret is the returned data from evm function (result or data supplied\n          with revert\n\n          opcode)\n      vm_error:\n        type: string\n        title: vm_error is the error returned by vm execution\n      gas_used:\n        type: string\n        format: uint64\n        title: gas_used specifies how much gas was consumed by the transaction\n    description: MsgEthereumTxResponse defines the Msg/EthereumTx response type.\n  ethermint.evm.v1.Params:\n    type: object\n    properties:\n      evm_denom:\n        type: string\n        description: |-\n          evm_denom represents the token denomination used to run the EVM state\n          transitions.\n      enable_create:\n        type: boolean\n        title: >-\n          enable_create toggles state transitions that use the vm.Create\n          function\n      enable_call:\n        type: boolean\n        title: enable_call toggles state transitions that use the vm.Call function\n      extra_eips:\n        type: array\n        items:\n          type: string\n          format: int64\n        title: extra_eips defines the additional EIPs for the vm.Config\n      chain_config:\n        title: chain_config defines the EVM chain configuration parameters\n        type: object\n        properties:\n          homestead_block:\n            type: string\n            title: homestead_block switch (nil no fork, 0 = already homestead)\n          dao_fork_block:\n            type: string\n            title: >-\n              dao_fork_block corresponds to TheDAO hard-fork switch block (nil\n              no fork)\n          dao_fork_support:\n            type: boolean\n            title: >-\n              dao_fork_support defines whether the nodes supports or opposes the\n              DAO hard-fork\n          eip150_block:\n            type: string\n            title: >-\n              eip150_block: EIP150 implements the Gas price changes\n\n              (https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil\n              no fork)\n          eip150_hash:\n            type: string\n            title: >-\n              eip150_hash: EIP150 HF hash (needed for header only clients as\n              only gas pricing changed)\n          eip155_block:\n            type: string\n            title: 'eip155_block: EIP155Block HF block'\n          eip158_block:\n            type: string\n            title: 'eip158_block: EIP158 HF block'\n          byzantium_block:\n            type: string\n            title: >-\n              byzantium_block: Byzantium switch block (nil no fork, 0 = already\n              on byzantium)\n          constantinople_block:\n            type: string\n            title: >-\n              constantinople_block: Constantinople switch block (nil no fork, 0\n              = already activated)\n          petersburg_block:\n            type: string\n            title: >-\n              petersburg_block: Petersburg switch block (nil same as\n              Constantinople)\n          istanbul_block:\n            type: string\n            title: >-\n              istanbul_block: Istanbul switch block (nil no fork, 0 = already on\n              istanbul)\n          muir_glacier_block:\n            type: string\n            title: >-\n              muir_glacier_block: Eip-2384 (bomb delay) switch block (nil no\n              fork, 0 = already activated)\n          berlin_block:\n            type: string\n            title: >-\n              berlin_block: Berlin switch block (nil = no fork, 0 = already on\n              berlin)\n          london_block:\n            type: string\n            title: >-\n              london_block: London switch block (nil = no fork, 0 = already on\n              london)\n          arrow_glacier_block:\n            type: string\n            title: >-\n              arrow_glacier_block: Eip-4345 (bomb delay) switch block (nil = no\n              fork, 0 = already activated)\n          gray_glacier_block:\n            type: string\n            title: >-\n              gray_glacier_block: EIP-5133 (bomb delay) switch block (nil = no\n              fork, 0 = already activated)\n          merge_netsplit_block:\n            type: string\n            title: >-\n              merge_netsplit_block: Virtual fork after The Merge to use as a\n              network splitter\n          shanghai_block:\n            type: string\n            title: >-\n              shanghai_block switch block (nil = no fork, 0 = already on\n              shanghai)\n          cancun_block:\n            type: string\n            title: cancun_block switch block (nil = no fork, 0 = already on cancun)\n        description: >-\n          ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int\n          values\n\n          instead of *big.Int.\n      allow_unprotected_txs:\n        type: boolean\n        description: |-\n          allow_unprotected_txs defines if replay-protected (i.e non EIP155\n          signed) transactions can be executed on the state machine.\n    title: Params defines the EVM module parameters\n  ethermint.evm.v1.QueryAccountResponse:\n    type: object\n    properties:\n      balance:\n        type: string\n        description: balance is the balance of the EVM denomination.\n      code_hash:\n        type: string\n        description: code_hash is the hex-formatted code bytes from the EOA.\n      nonce:\n        type: string\n        format: uint64\n        description: nonce is the account's sequence number.\n    description: >-\n      QueryAccountResponse is the response type for the Query/Account RPC\n      method.\n  ethermint.evm.v1.QueryBalanceResponse:\n    type: object\n    properties:\n      balance:\n        type: string\n        description: balance is the balance of the EVM denomination.\n    description: >-\n      QueryBalanceResponse is the response type for the Query/Balance RPC\n      method.\n  ethermint.evm.v1.QueryBaseFeeResponse:\n    type: object\n    properties:\n      base_fee:\n        type: string\n        title: base_fee is the EIP1559 base fee\n    description: QueryBaseFeeResponse returns the EIP1559 base fee.\n  ethermint.evm.v1.QueryCodeResponse:\n    type: object\n    properties:\n      code:\n        type: string\n        format: byte\n        description: code represents the code bytes from an ethereum address.\n    description: |-\n      QueryCodeResponse is the response type for the Query/Code RPC\n      method.\n  ethermint.evm.v1.QueryCosmosAccountResponse:\n    type: object\n    properties:\n      cosmos_address:\n        type: string\n        description: cosmos_address is the cosmos address of the account.\n      sequence:\n        type: string\n        format: uint64\n        description: sequence is the account's sequence number.\n      account_number:\n        type: string\n        format: uint64\n        title: account_number is the account number\n    description: >-\n      QueryCosmosAccountResponse is the response type for the\n      Query/CosmosAccount\n\n      RPC method.\n  ethermint.evm.v1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params define the evm module parameters.\n        type: object\n        properties:\n          evm_denom:\n            type: string\n            description: >-\n              evm_denom represents the token denomination used to run the EVM\n              state\n\n              transitions.\n          enable_create:\n            type: boolean\n            title: >-\n              enable_create toggles state transitions that use the vm.Create\n              function\n          enable_call:\n            type: boolean\n            title: >-\n              enable_call toggles state transitions that use the vm.Call\n              function\n          extra_eips:\n            type: array\n            items:\n              type: string\n              format: int64\n            title: extra_eips defines the additional EIPs for the vm.Config\n          chain_config:\n            title: chain_config defines the EVM chain configuration parameters\n            type: object\n            properties:\n              homestead_block:\n                type: string\n                title: homestead_block switch (nil no fork, 0 = already homestead)\n              dao_fork_block:\n                type: string\n                title: >-\n                  dao_fork_block corresponds to TheDAO hard-fork switch block\n                  (nil no fork)\n              dao_fork_support:\n                type: boolean\n                title: >-\n                  dao_fork_support defines whether the nodes supports or opposes\n                  the DAO hard-fork\n              eip150_block:\n                type: string\n                title: >-\n                  eip150_block: EIP150 implements the Gas price changes\n\n                  (https://github.com/ethereum/EIPs/issues/150) EIP150 HF block\n                  (nil no fork)\n              eip150_hash:\n                type: string\n                title: >-\n                  eip150_hash: EIP150 HF hash (needed for header only clients as\n                  only gas pricing changed)\n              eip155_block:\n                type: string\n                title: 'eip155_block: EIP155Block HF block'\n              eip158_block:\n                type: string\n                title: 'eip158_block: EIP158 HF block'\n              byzantium_block:\n                type: string\n                title: >-\n                  byzantium_block: Byzantium switch block (nil no fork, 0 =\n                  already on byzantium)\n              constantinople_block:\n                type: string\n                title: >-\n                  constantinople_block: Constantinople switch block (nil no\n                  fork, 0 = already activated)\n              petersburg_block:\n                type: string\n                title: >-\n                  petersburg_block: Petersburg switch block (nil same as\n                  Constantinople)\n              istanbul_block:\n                type: string\n                title: >-\n                  istanbul_block: Istanbul switch block (nil no fork, 0 =\n                  already on istanbul)\n              muir_glacier_block:\n                type: string\n                title: >-\n                  muir_glacier_block: Eip-2384 (bomb delay) switch block (nil no\n                  fork, 0 = already activated)\n              berlin_block:\n                type: string\n                title: >-\n                  berlin_block: Berlin switch block (nil = no fork, 0 = already\n                  on berlin)\n              london_block:\n                type: string\n                title: >-\n                  london_block: London switch block (nil = no fork, 0 = already\n                  on london)\n              arrow_glacier_block:\n                type: string\n                title: >-\n                  arrow_glacier_block: Eip-4345 (bomb delay) switch block (nil =\n                  no fork, 0 = already activated)\n              gray_glacier_block:\n                type: string\n                title: >-\n                  gray_glacier_block: EIP-5133 (bomb delay) switch block (nil =\n                  no fork, 0 = already activated)\n              merge_netsplit_block:\n                type: string\n                title: >-\n                  merge_netsplit_block: Virtual fork after The Merge to use as a\n                  network splitter\n              shanghai_block:\n                type: string\n                title: >-\n                  shanghai_block switch block (nil = no fork, 0 = already on\n                  shanghai)\n              cancun_block:\n                type: string\n                title: >-\n                  cancun_block switch block (nil = no fork, 0 = already on\n                  cancun)\n            description: >-\n              ChainConfig defines the Ethereum ChainConfig parameters using\n              *sdk.Int values\n\n              instead of *big.Int.\n          allow_unprotected_txs:\n            type: boolean\n            description: |-\n              allow_unprotected_txs defines if replay-protected (i.e non EIP155\n              signed) transactions can be executed on the state machine.\n        title: Params defines the EVM module parameters\n    description: >-\n      QueryParamsResponse defines the response type for querying x/evm\n      parameters.\n  ethermint.evm.v1.QueryStorageResponse:\n    type: object\n    properties:\n      value:\n        type: string\n        description: >-\n          value defines the storage state value hash associated with the given\n          key.\n    description: |-\n      QueryStorageResponse is the response type for the Query/Storage RPC\n      method.\n  ethermint.evm.v1.QueryTraceBlockResponse:\n    type: object\n    properties:\n      data:\n        type: string\n        format: byte\n        title: data is the response serialized in bytes\n    title: QueryTraceBlockResponse defines TraceBlock response\n  ethermint.evm.v1.QueryTraceTxResponse:\n    type: object\n    properties:\n      data:\n        type: string\n        format: byte\n        title: data is the response serialized in bytes\n    title: QueryTraceTxResponse defines TraceTx response\n  ethermint.evm.v1.QueryValidatorAccountResponse:\n    type: object\n    properties:\n      account_address:\n        type: string\n        description: account_address is the cosmos address of the account in bech32 format.\n      sequence:\n        type: string\n        format: uint64\n        description: sequence is the account's sequence number.\n      account_number:\n        type: string\n        format: uint64\n        title: account_number is the account number\n    description: |-\n      QueryValidatorAccountResponse is the response type for the\n      Query/ValidatorAccount RPC method.\n  ethermint.evm.v1.TraceConfig:\n    type: object\n    properties:\n      tracer:\n        type: string\n        title: tracer is a custom javascript tracer\n      timeout:\n        type: string\n        title: >-\n          timeout overrides the default timeout of 5 seconds for\n          JavaScript-based tracing\n\n          calls\n      reexec:\n        type: string\n        format: uint64\n        title: reexec defines the number of blocks the tracer is willing to go back\n      disable_stack:\n        type: boolean\n        title: disable_stack switches stack capture\n      disable_storage:\n        type: boolean\n        title: disable_storage switches storage capture\n      debug:\n        type: boolean\n        title: debug can be used to print output during capture end\n      limit:\n        type: integer\n        format: int32\n        title: limit defines the maximum length of output, but zero means unlimited\n      overrides:\n        title: overrides can be used to execute a trace using future fork rules\n        type: object\n        properties:\n          homestead_block:\n            type: string\n            title: homestead_block switch (nil no fork, 0 = already homestead)\n          dao_fork_block:\n            type: string\n            title: >-\n              dao_fork_block corresponds to TheDAO hard-fork switch block (nil\n              no fork)\n          dao_fork_support:\n            type: boolean\n            title: >-\n              dao_fork_support defines whether the nodes supports or opposes the\n              DAO hard-fork\n          eip150_block:\n            type: string\n            title: >-\n              eip150_block: EIP150 implements the Gas price changes\n\n              (https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil\n              no fork)\n          eip150_hash:\n            type: string\n            title: >-\n              eip150_hash: EIP150 HF hash (needed for header only clients as\n              only gas pricing changed)\n          eip155_block:\n            type: string\n            title: 'eip155_block: EIP155Block HF block'\n          eip158_block:\n            type: string\n            title: 'eip158_block: EIP158 HF block'\n          byzantium_block:\n            type: string\n            title: >-\n              byzantium_block: Byzantium switch block (nil no fork, 0 = already\n              on byzantium)\n          constantinople_block:\n            type: string\n            title: >-\n              constantinople_block: Constantinople switch block (nil no fork, 0\n              = already activated)\n          petersburg_block:\n            type: string\n            title: >-\n              petersburg_block: Petersburg switch block (nil same as\n              Constantinople)\n          istanbul_block:\n            type: string\n            title: >-\n              istanbul_block: Istanbul switch block (nil no fork, 0 = already on\n              istanbul)\n          muir_glacier_block:\n            type: string\n            title: >-\n              muir_glacier_block: Eip-2384 (bomb delay) switch block (nil no\n              fork, 0 = already activated)\n          berlin_block:\n            type: string\n            title: >-\n              berlin_block: Berlin switch block (nil = no fork, 0 = already on\n              berlin)\n          london_block:\n            type: string\n            title: >-\n              london_block: London switch block (nil = no fork, 0 = already on\n              london)\n          arrow_glacier_block:\n            type: string\n            title: >-\n              arrow_glacier_block: Eip-4345 (bomb delay) switch block (nil = no\n              fork, 0 = already activated)\n          gray_glacier_block:\n            type: string\n            title: >-\n              gray_glacier_block: EIP-5133 (bomb delay) switch block (nil = no\n              fork, 0 = already activated)\n          merge_netsplit_block:\n            type: string\n            title: >-\n              merge_netsplit_block: Virtual fork after The Merge to use as a\n              network splitter\n          shanghai_block:\n            type: string\n            title: >-\n              shanghai_block switch block (nil = no fork, 0 = already on\n              shanghai)\n          cancun_block:\n            type: string\n            title: cancun_block switch block (nil = no fork, 0 = already on cancun)\n        description: >-\n          ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int\n          values\n\n          instead of *big.Int.\n      enable_memory:\n        type: boolean\n        title: enable_memory switches memory capture\n      enable_return_data:\n        type: boolean\n        title: enable_return_data switches the capture of return data\n      tracer_json_config:\n        type: string\n        title: tracer_json_config configures the tracer using a JSON string\n    description: TraceConfig holds extra parameters to trace functions.\n  ethermint.feemarket.v1.Params:\n    type: object\n    properties:\n      no_base_fee:\n        type: boolean\n        title: >-\n          no_base_fee forces the EIP-1559 base fee to 0 (needed for 0 price\n          calls)\n      base_fee_change_denominator:\n        type: integer\n        format: int64\n        description: |-\n          base_fee_change_denominator bounds the amount the base fee can change\n          between blocks.\n      elasticity_multiplier:\n        type: integer\n        format: int64\n        description: >-\n          elasticity_multiplier bounds the maximum gas limit an EIP-1559 block\n          may\n\n          have.\n      enable_height:\n        type: string\n        format: int64\n        description: >-\n          enable_height defines at which block height the base fee calculation\n          is enabled.\n      base_fee:\n        type: string\n        description: base_fee for EIP-1559 blocks.\n      min_gas_price:\n        type: string\n        title: >-\n          min_gas_price defines the minimum gas price value for cosmos and eth\n          transactions\n      min_gas_multiplier:\n        type: string\n        title: |-\n          min_gas_multiplier bounds the minimum gas used to be charged\n          to senders based on gas limit\n    title: Params defines the EVM module parameters\n  ethermint.feemarket.v1.QueryBaseFeeResponse:\n    type: object\n    properties:\n      base_fee:\n        type: string\n        title: base_fee is the EIP1559 base fee\n    description: QueryBaseFeeResponse returns the EIP1559 base fee.\n  ethermint.feemarket.v1.QueryBlockGasResponse:\n    type: object\n    properties:\n      gas:\n        type: string\n        format: int64\n        title: gas is the returned block gas\n    description: QueryBlockGasResponse returns block gas used for a given height.\n  ethermint.feemarket.v1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params define the evm module parameters.\n        type: object\n        properties:\n          no_base_fee:\n            type: boolean\n            title: >-\n              no_base_fee forces the EIP-1559 base fee to 0 (needed for 0 price\n              calls)\n          base_fee_change_denominator:\n            type: integer\n            format: int64\n            description: >-\n              base_fee_change_denominator bounds the amount the base fee can\n              change\n\n              between blocks.\n          elasticity_multiplier:\n            type: integer\n            format: int64\n            description: >-\n              elasticity_multiplier bounds the maximum gas limit an EIP-1559\n              block may\n\n              have.\n          enable_height:\n            type: string\n            format: int64\n            description: >-\n              enable_height defines at which block height the base fee\n              calculation is enabled.\n          base_fee:\n            type: string\n            description: base_fee for EIP-1559 blocks.\n          min_gas_price:\n            type: string\n            title: >-\n              min_gas_price defines the minimum gas price value for cosmos and\n              eth transactions\n          min_gas_multiplier:\n            type: string\n            title: |-\n              min_gas_multiplier bounds the minimum gas used to be charged\n              to senders based on gas limit\n        title: Params defines the EVM module parameters\n    description: >-\n      QueryParamsResponse defines the response type for querying x/evm\n      parameters.\n  ibc.applications.transfer.v1.DenomTrace:\n    type: object\n    properties:\n      path:\n        type: string\n        description: >-\n          path defines the chain of port/channel identifiers used for tracing\n          the\n\n          source of the fungible token.\n      base_denom:\n        type: string\n        description: base denomination of the relayed fungible token.\n    description: >-\n      DenomTrace contains the base denomination for ICS20 fungible tokens and\n      the\n\n      source tracing information path.\n  ibc.applications.transfer.v1.Params:\n    type: object\n    properties:\n      send_enabled:\n        type: boolean\n        description: >-\n          send_enabled enables or disables all cross-chain token transfers from\n          this\n\n          chain.\n      receive_enabled:\n        type: boolean\n        description: >-\n          receive_enabled enables or disables all cross-chain token transfers to\n          this\n\n          chain.\n    description: >-\n      Params defines the set of IBC transfer parameters.\n\n      NOTE: To prevent a single token from being transferred, set the\n\n      TransfersEnabled parameter to true and then set the bank module's\n      SendEnabled\n\n      parameter for the denomination to false.\n  ibc.applications.transfer.v1.QueryDenomHashResponse:\n    type: object\n    properties:\n      hash:\n        type: string\n        description: hash (in hex format) of the denomination trace information.\n    description: |-\n      QueryDenomHashResponse is the response type for the Query/DenomHash RPC\n      method.\n  ibc.applications.transfer.v1.QueryDenomTraceResponse:\n    type: object\n    properties:\n      denom_trace:\n        type: object\n        properties:\n          path:\n            type: string\n            description: >-\n              path defines the chain of port/channel identifiers used for\n              tracing the\n\n              source of the fungible token.\n          base_denom:\n            type: string\n            description: base denomination of the relayed fungible token.\n        description: >-\n          DenomTrace contains the base denomination for ICS20 fungible tokens\n          and the\n\n          source tracing information path.\n    description: |-\n      QueryDenomTraceResponse is the response type for the Query/DenomTrace RPC\n      method.\n  ibc.applications.transfer.v1.QueryDenomTracesResponse:\n    type: object\n    properties:\n      denom_traces:\n        type: array\n        items:\n          type: object\n          properties:\n            path:\n              type: string\n              description: >-\n                path defines the chain of port/channel identifiers used for\n                tracing the\n\n                source of the fungible token.\n            base_denom:\n              type: string\n              description: base denomination of the relayed fungible token.\n          description: >-\n            DenomTrace contains the base denomination for ICS20 fungible tokens\n            and the\n\n            source tracing information path.\n        description: denom_traces returns all denominations trace information.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryConnectionsResponse is the response type for the Query/DenomTraces\n      RPC\n\n      method.\n  ibc.applications.transfer.v1.QueryEscrowAddressResponse:\n    type: object\n    properties:\n      escrow_address:\n        type: string\n        title: the escrow account address\n    description: >-\n      QueryEscrowAddressResponse is the response type of the EscrowAddress RPC\n      method.\n  ibc.applications.transfer.v1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params defines the parameters of the module.\n        type: object\n        properties:\n          send_enabled:\n            type: boolean\n            description: >-\n              send_enabled enables or disables all cross-chain token transfers\n              from this\n\n              chain.\n          receive_enabled:\n            type: boolean\n            description: >-\n              receive_enabled enables or disables all cross-chain token\n              transfers to this\n\n              chain.\n    description: QueryParamsResponse is the response type for the Query/Params RPC method.\n  ibc.core.client.v1.ConsensusStateWithHeight:\n    type: object\n    properties:\n      height:\n        title: consensus state height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n      consensus_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: consensus state\n    description: >-\n      ConsensusStateWithHeight defines a consensus state with an additional\n      height\n\n      field.\n  ibc.core.client.v1.Height:\n    type: object\n    properties:\n      revision_number:\n        type: string\n        format: uint64\n        title: the revision that the client is currently on\n      revision_height:\n        type: string\n        format: uint64\n        title: the height within the given revision\n    description: |-\n      Normally the RevisionHeight is incremented at each height while keeping\n      RevisionNumber the same. However some consensus algorithms may choose to\n      reset the height in certain conditions e.g. hard forks, state-machine\n      breaking changes In these cases, the RevisionNumber is incremented so that\n      height continues to be monitonically increasing even as the RevisionHeight\n      gets reset\n    title: >-\n      Height is a monotonically increasing data type\n\n      that can be compared against another Height for the purposes of updating\n      and\n\n      freezing clients\n  ibc.core.client.v1.IdentifiedClientState:\n    type: object\n    properties:\n      client_id:\n        type: string\n        title: client identifier\n      client_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: client state\n    description: |-\n      IdentifiedClientState defines a client state with an additional client\n      identifier field.\n  ibc.core.client.v1.Params:\n    type: object\n    properties:\n      allowed_clients:\n        type: array\n        items:\n          type: string\n        description: allowed_clients defines the list of allowed client state types.\n    description: Params defines the set of IBC light client parameters.\n  ibc.core.client.v1.QueryClientParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params defines the parameters of the module.\n        type: object\n        properties:\n          allowed_clients:\n            type: array\n            items:\n              type: string\n            description: allowed_clients defines the list of allowed client state types.\n    description: >-\n      QueryClientParamsResponse is the response type for the Query/ClientParams\n      RPC\n\n      method.\n  ibc.core.client.v1.QueryClientStateResponse:\n    type: object\n    properties:\n      client_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: client state associated with the request identifier\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    description: >-\n      QueryClientStateResponse is the response type for the Query/ClientState\n      RPC\n\n      method. Besides the client state, it includes a proof and the height from\n\n      which the proof was retrieved.\n  ibc.core.client.v1.QueryClientStatesResponse:\n    type: object\n    properties:\n      client_states:\n        type: array\n        items:\n          type: object\n          properties:\n            client_id:\n              type: string\n              title: client identifier\n            client_state:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n              title: client state\n          description: >-\n            IdentifiedClientState defines a client state with an additional\n            client\n\n            identifier field.\n        description: list of stored ClientStates of the chain.\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    description: >-\n      QueryClientStatesResponse is the response type for the Query/ClientStates\n      RPC\n\n      method.\n  ibc.core.client.v1.QueryClientStatusResponse:\n    type: object\n    properties:\n      status:\n        type: string\n    description: >-\n      QueryClientStatusResponse is the response type for the Query/ClientStatus\n      RPC\n\n      method. It returns the current status of the IBC client.\n  ibc.core.client.v1.QueryConsensusStateHeightsResponse:\n    type: object\n    properties:\n      consensus_state_heights:\n        type: array\n        items:\n          type: object\n          properties:\n            revision_number:\n              type: string\n              format: uint64\n              title: the revision that the client is currently on\n            revision_height:\n              type: string\n              format: uint64\n              title: the height within the given revision\n          description: >-\n            Normally the RevisionHeight is incremented at each height while\n            keeping\n\n            RevisionNumber the same. However some consensus algorithms may\n            choose to\n\n            reset the height in certain conditions e.g. hard forks,\n            state-machine\n\n            breaking changes In these cases, the RevisionNumber is incremented\n            so that\n\n            height continues to be monitonically increasing even as the\n            RevisionHeight\n\n            gets reset\n          title: >-\n            Height is a monotonically increasing data type\n\n            that can be compared against another Height for the purposes of\n            updating and\n\n            freezing clients\n        title: consensus state heights\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: |-\n      QueryConsensusStateHeightsResponse is the response type for the\n      Query/ConsensusStateHeights RPC method\n  ibc.core.client.v1.QueryConsensusStateResponse:\n    type: object\n    properties:\n      consensus_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: >-\n          consensus state associated with the client identifier at the given\n          height\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n        title: >-\n          Height is a monotonically increasing data type\n\n          that can be compared against another Height for the purposes of\n          updating and\n\n          freezing clients\n    title: >-\n      QueryConsensusStateResponse is the response type for the\n      Query/ConsensusState\n\n      RPC method\n  ibc.core.client.v1.QueryConsensusStatesResponse:\n    type: object\n    properties:\n      consensus_states:\n        type: array\n        items:\n          type: object\n          properties:\n            height:\n              title: consensus state height\n              type: object\n              properties:\n                revision_number:\n                  type: string\n                  format: uint64\n                  title: the revision that the client is currently on\n                revision_height:\n                  type: string\n                  format: uint64\n                  title: the height within the given revision\n              description: >-\n                Normally the RevisionHeight is incremented at each height while\n                keeping\n\n                RevisionNumber the same. However some consensus algorithms may\n                choose to\n\n                reset the height in certain conditions e.g. hard forks,\n                state-machine\n\n                breaking changes In these cases, the RevisionNumber is\n                incremented so that\n\n                height continues to be monitonically increasing even as the\n                RevisionHeight\n\n                gets reset\n            consensus_state:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n              title: consensus state\n          description: >-\n            ConsensusStateWithHeight defines a consensus state with an\n            additional height\n\n            field.\n        title: consensus states associated with the identifier\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: |-\n      QueryConsensusStatesResponse is the response type for the\n      Query/ConsensusStates RPC method\n  ibc.core.client.v1.QueryUpgradedClientStateResponse:\n    type: object\n    properties:\n      upgraded_client_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: client state associated with the request identifier\n    description: |-\n      QueryUpgradedClientStateResponse is the response type for the\n      Query/UpgradedClientState RPC method.\n  ibc.core.client.v1.QueryUpgradedConsensusStateResponse:\n    type: object\n    properties:\n      upgraded_consensus_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: Consensus state associated with the request identifier\n    description: |-\n      QueryUpgradedConsensusStateResponse is the response type for the\n      Query/UpgradedConsensusState RPC method.\n  ibc.core.commitment.v1.MerklePrefix:\n    type: object\n    properties:\n      key_prefix:\n        type: string\n        format: byte\n    title: |-\n      MerklePrefix is merkle path prefixed to the key.\n      The constructed key from the Path and the key will be append(Path.KeyPath,\n      append(Path.KeyPrefix, key...))\n  ibc.core.connection.v1.ConnectionEnd:\n    type: object\n    properties:\n      client_id:\n        type: string\n        description: client associated with this connection.\n      versions:\n        type: array\n        items:\n          type: object\n          properties:\n            identifier:\n              type: string\n              title: unique version identifier\n            features:\n              type: array\n              items:\n                type: string\n              title: list of features compatible with the specified identifier\n          description: >-\n            Version defines the versioning scheme used to negotiate the IBC\n            verison in\n\n            the connection handshake.\n        description: >-\n          IBC version which can be utilised to determine encodings or protocols\n          for\n\n          channels or packets utilising this connection.\n      state:\n        description: current state of the connection end.\n        type: string\n        enum:\n          - STATE_UNINITIALIZED_UNSPECIFIED\n          - STATE_INIT\n          - STATE_TRYOPEN\n          - STATE_OPEN\n        default: STATE_UNINITIALIZED_UNSPECIFIED\n      counterparty:\n        description: counterparty chain associated with this connection.\n        type: object\n        properties:\n          client_id:\n            type: string\n            description: >-\n              identifies the client on the counterparty chain associated with a\n              given\n\n              connection.\n          connection_id:\n            type: string\n            description: >-\n              identifies the connection end on the counterparty chain associated\n              with a\n\n              given connection.\n          prefix:\n            description: commitment merkle prefix of the counterparty chain.\n            type: object\n            properties:\n              key_prefix:\n                type: string\n                format: byte\n            title: >-\n              MerklePrefix is merkle path prefixed to the key.\n\n              The constructed key from the Path and the key will be\n              append(Path.KeyPath,\n\n              append(Path.KeyPrefix, key...))\n      delay_period:\n        type: string\n        format: uint64\n        description: >-\n          delay period that must pass before a consensus state can be used for\n\n          packet-verification NOTE: delay period logic is only implemented by\n          some\n\n          clients.\n    description: |-\n      ConnectionEnd defines a stateful object on a chain connected to another\n      separate one.\n      NOTE: there must only be 2 defined ConnectionEnds to establish\n      a connection between two chains.\n  ibc.core.connection.v1.Counterparty:\n    type: object\n    properties:\n      client_id:\n        type: string\n        description: >-\n          identifies the client on the counterparty chain associated with a\n          given\n\n          connection.\n      connection_id:\n        type: string\n        description: >-\n          identifies the connection end on the counterparty chain associated\n          with a\n\n          given connection.\n      prefix:\n        description: commitment merkle prefix of the counterparty chain.\n        type: object\n        properties:\n          key_prefix:\n            type: string\n            format: byte\n        title: >-\n          MerklePrefix is merkle path prefixed to the key.\n\n          The constructed key from the Path and the key will be\n          append(Path.KeyPath,\n\n          append(Path.KeyPrefix, key...))\n    description: >-\n      Counterparty defines the counterparty chain associated with a connection\n      end.\n  ibc.core.connection.v1.IdentifiedConnection:\n    type: object\n    properties:\n      id:\n        type: string\n        description: connection identifier.\n      client_id:\n        type: string\n        description: client associated with this connection.\n      versions:\n        type: array\n        items:\n          type: object\n          properties:\n            identifier:\n              type: string\n              title: unique version identifier\n            features:\n              type: array\n              items:\n                type: string\n              title: list of features compatible with the specified identifier\n          description: >-\n            Version defines the versioning scheme used to negotiate the IBC\n            verison in\n\n            the connection handshake.\n        title: >-\n          IBC version which can be utilised to determine encodings or protocols\n          for\n\n          channels or packets utilising this connection\n      state:\n        description: current state of the connection end.\n        type: string\n        enum:\n          - STATE_UNINITIALIZED_UNSPECIFIED\n          - STATE_INIT\n          - STATE_TRYOPEN\n          - STATE_OPEN\n        default: STATE_UNINITIALIZED_UNSPECIFIED\n      counterparty:\n        description: counterparty chain associated with this connection.\n        type: object\n        properties:\n          client_id:\n            type: string\n            description: >-\n              identifies the client on the counterparty chain associated with a\n              given\n\n              connection.\n          connection_id:\n            type: string\n            description: >-\n              identifies the connection end on the counterparty chain associated\n              with a\n\n              given connection.\n          prefix:\n            description: commitment merkle prefix of the counterparty chain.\n            type: object\n            properties:\n              key_prefix:\n                type: string\n                format: byte\n            title: >-\n              MerklePrefix is merkle path prefixed to the key.\n\n              The constructed key from the Path and the key will be\n              append(Path.KeyPath,\n\n              append(Path.KeyPrefix, key...))\n      delay_period:\n        type: string\n        format: uint64\n        description: delay period associated with this connection.\n    description: |-\n      IdentifiedConnection defines a connection with additional connection\n      identifier field.\n  ibc.core.connection.v1.QueryClientConnectionsResponse:\n    type: object\n    properties:\n      connection_paths:\n        type: array\n        items:\n          type: string\n        description: slice of all the connection paths associated with a client.\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was generated\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryClientConnectionsResponse is the response type for the\n      Query/ClientConnections RPC method\n  ibc.core.connection.v1.QueryConnectionClientStateResponse:\n    type: object\n    properties:\n      identified_client_state:\n        title: client state associated with the channel\n        type: object\n        properties:\n          client_id:\n            type: string\n            title: client identifier\n          client_state:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n            title: client state\n        description: |-\n          IdentifiedClientState defines a client state with an additional client\n          identifier field.\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryConnectionClientStateResponse is the response type for the\n      Query/ConnectionClientState RPC method\n  ibc.core.connection.v1.QueryConnectionConsensusStateResponse:\n    type: object\n    properties:\n      consensus_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: consensus state associated with the channel\n      client_id:\n        type: string\n        title: client ID associated with the consensus state\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryConnectionConsensusStateResponse is the response type for the\n      Query/ConnectionConsensusState RPC method\n  ibc.core.connection.v1.QueryConnectionResponse:\n    type: object\n    properties:\n      connection:\n        title: connection associated with the request identifier\n        type: object\n        properties:\n          client_id:\n            type: string\n            description: client associated with this connection.\n          versions:\n            type: array\n            items:\n              type: object\n              properties:\n                identifier:\n                  type: string\n                  title: unique version identifier\n                features:\n                  type: array\n                  items:\n                    type: string\n                  title: list of features compatible with the specified identifier\n              description: >-\n                Version defines the versioning scheme used to negotiate the IBC\n                verison in\n\n                the connection handshake.\n            description: >-\n              IBC version which can be utilised to determine encodings or\n              protocols for\n\n              channels or packets utilising this connection.\n          state:\n            description: current state of the connection end.\n            type: string\n            enum:\n              - STATE_UNINITIALIZED_UNSPECIFIED\n              - STATE_INIT\n              - STATE_TRYOPEN\n              - STATE_OPEN\n            default: STATE_UNINITIALIZED_UNSPECIFIED\n          counterparty:\n            description: counterparty chain associated with this connection.\n            type: object\n            properties:\n              client_id:\n                type: string\n                description: >-\n                  identifies the client on the counterparty chain associated\n                  with a given\n\n                  connection.\n              connection_id:\n                type: string\n                description: >-\n                  identifies the connection end on the counterparty chain\n                  associated with a\n\n                  given connection.\n              prefix:\n                description: commitment merkle prefix of the counterparty chain.\n                type: object\n                properties:\n                  key_prefix:\n                    type: string\n                    format: byte\n                title: >-\n                  MerklePrefix is merkle path prefixed to the key.\n\n                  The constructed key from the Path and the key will be\n                  append(Path.KeyPath,\n\n                  append(Path.KeyPrefix, key...))\n          delay_period:\n            type: string\n            format: uint64\n            description: >-\n              delay period that must pass before a consensus state can be used\n              for\n\n              packet-verification NOTE: delay period logic is only implemented\n              by some\n\n              clients.\n        description: >-\n          ConnectionEnd defines a stateful object on a chain connected to\n          another\n\n          separate one.\n\n          NOTE: there must only be 2 defined ConnectionEnds to establish\n\n          a connection between two chains.\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    description: >-\n      QueryConnectionResponse is the response type for the Query/Connection RPC\n\n      method. Besides the connection end, it includes a proof and the height\n      from\n\n      which the proof was retrieved.\n  ibc.core.connection.v1.QueryConnectionsResponse:\n    type: object\n    properties:\n      connections:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n              description: connection identifier.\n            client_id:\n              type: string\n              description: client associated with this connection.\n            versions:\n              type: array\n              items:\n                type: object\n                properties:\n                  identifier:\n                    type: string\n                    title: unique version identifier\n                  features:\n                    type: array\n                    items:\n                      type: string\n                    title: list of features compatible with the specified identifier\n                description: >-\n                  Version defines the versioning scheme used to negotiate the\n                  IBC verison in\n\n                  the connection handshake.\n              title: >-\n                IBC version which can be utilised to determine encodings or\n                protocols for\n\n                channels or packets utilising this connection\n            state:\n              description: current state of the connection end.\n              type: string\n              enum:\n                - STATE_UNINITIALIZED_UNSPECIFIED\n                - STATE_INIT\n                - STATE_TRYOPEN\n                - STATE_OPEN\n              default: STATE_UNINITIALIZED_UNSPECIFIED\n            counterparty:\n              description: counterparty chain associated with this connection.\n              type: object\n              properties:\n                client_id:\n                  type: string\n                  description: >-\n                    identifies the client on the counterparty chain associated\n                    with a given\n\n                    connection.\n                connection_id:\n                  type: string\n                  description: >-\n                    identifies the connection end on the counterparty chain\n                    associated with a\n\n                    given connection.\n                prefix:\n                  description: commitment merkle prefix of the counterparty chain.\n                  type: object\n                  properties:\n                    key_prefix:\n                      type: string\n                      format: byte\n                  title: >-\n                    MerklePrefix is merkle path prefixed to the key.\n\n                    The constructed key from the Path and the key will be\n                    append(Path.KeyPath,\n\n                    append(Path.KeyPrefix, key...))\n            delay_period:\n              type: string\n              format: uint64\n              description: delay period associated with this connection.\n          description: |-\n            IdentifiedConnection defines a connection with additional connection\n            identifier field.\n        description: list of stored connections of the chain.\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    description: >-\n      QueryConnectionsResponse is the response type for the Query/Connections\n      RPC\n\n      method.\n  ibc.core.connection.v1.State:\n    type: string\n    enum:\n      - STATE_UNINITIALIZED_UNSPECIFIED\n      - STATE_INIT\n      - STATE_TRYOPEN\n      - STATE_OPEN\n    default: STATE_UNINITIALIZED_UNSPECIFIED\n    description: |-\n      State defines if a connection is in one of the following states:\n      INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n       - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n       - STATE_INIT: A connection end has just started the opening handshake.\n       - STATE_TRYOPEN: A connection end has acknowledged the handshake step on the counterparty\n      chain.\n       - STATE_OPEN: A connection end has completed the handshake.\n  ibc.core.connection.v1.Version:\n    type: object\n    properties:\n      identifier:\n        type: string\n        title: unique version identifier\n      features:\n        type: array\n        items:\n          type: string\n        title: list of features compatible with the specified identifier\n    description: |-\n      Version defines the versioning scheme used to negotiate the IBC verison in\n      the connection handshake.\n  ibc.core.channel.v1.Channel:\n    type: object\n    properties:\n      state:\n        title: current state of the channel end\n        type: string\n        enum:\n          - STATE_UNINITIALIZED_UNSPECIFIED\n          - STATE_INIT\n          - STATE_TRYOPEN\n          - STATE_OPEN\n          - STATE_CLOSED\n        default: STATE_UNINITIALIZED_UNSPECIFIED\n        description: |-\n          State defines if a channel is in one of the following states:\n          CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n           - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n           - STATE_INIT: A channel has just started the opening handshake.\n           - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n           - STATE_OPEN: A channel has completed the handshake. Open channels are\n          ready to send and receive packets.\n           - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n          packets.\n      ordering:\n        title: whether the channel is ordered or unordered\n        type: string\n        enum:\n          - ORDER_NONE_UNSPECIFIED\n          - ORDER_UNORDERED\n          - ORDER_ORDERED\n        default: ORDER_NONE_UNSPECIFIED\n        description: |-\n          - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n           - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n          which they were sent.\n           - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n      counterparty:\n        title: counterparty channel end\n        type: object\n        properties:\n          port_id:\n            type: string\n            description: >-\n              port on the counterparty chain which owns the other end of the\n              channel.\n          channel_id:\n            type: string\n            title: channel end on the counterparty chain\n      connection_hops:\n        type: array\n        items:\n          type: string\n        title: |-\n          list of connection identifiers, in order, along which packets sent on\n          this channel will travel\n      version:\n        type: string\n        title: opaque channel version, which is agreed upon during the handshake\n    description: |-\n      Channel defines pipeline for exactly-once packet delivery between specific\n      modules on separate blockchains, which has at least one end capable of\n      sending packets and one end capable of receiving packets.\n  ibc.core.channel.v1.Counterparty:\n    type: object\n    properties:\n      port_id:\n        type: string\n        description: >-\n          port on the counterparty chain which owns the other end of the\n          channel.\n      channel_id:\n        type: string\n        title: channel end on the counterparty chain\n    title: Counterparty defines a channel end counterparty\n  ibc.core.channel.v1.IdentifiedChannel:\n    type: object\n    properties:\n      state:\n        title: current state of the channel end\n        type: string\n        enum:\n          - STATE_UNINITIALIZED_UNSPECIFIED\n          - STATE_INIT\n          - STATE_TRYOPEN\n          - STATE_OPEN\n          - STATE_CLOSED\n        default: STATE_UNINITIALIZED_UNSPECIFIED\n        description: |-\n          State defines if a channel is in one of the following states:\n          CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n           - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n           - STATE_INIT: A channel has just started the opening handshake.\n           - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n           - STATE_OPEN: A channel has completed the handshake. Open channels are\n          ready to send and receive packets.\n           - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n          packets.\n      ordering:\n        title: whether the channel is ordered or unordered\n        type: string\n        enum:\n          - ORDER_NONE_UNSPECIFIED\n          - ORDER_UNORDERED\n          - ORDER_ORDERED\n        default: ORDER_NONE_UNSPECIFIED\n        description: |-\n          - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n           - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n          which they were sent.\n           - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n      counterparty:\n        title: counterparty channel end\n        type: object\n        properties:\n          port_id:\n            type: string\n            description: >-\n              port on the counterparty chain which owns the other end of the\n              channel.\n          channel_id:\n            type: string\n            title: channel end on the counterparty chain\n      connection_hops:\n        type: array\n        items:\n          type: string\n        title: |-\n          list of connection identifiers, in order, along which packets sent on\n          this channel will travel\n      version:\n        type: string\n        title: opaque channel version, which is agreed upon during the handshake\n      port_id:\n        type: string\n        title: port identifier\n      channel_id:\n        type: string\n        title: channel identifier\n    description: |-\n      IdentifiedChannel defines a channel with additional port and channel\n      identifier fields.\n  ibc.core.channel.v1.Order:\n    type: string\n    enum:\n      - ORDER_NONE_UNSPECIFIED\n      - ORDER_UNORDERED\n      - ORDER_ORDERED\n    default: ORDER_NONE_UNSPECIFIED\n    description: |-\n      - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n       - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n      which they were sent.\n       - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n    title: Order defines if a channel is ORDERED or UNORDERED\n  ibc.core.channel.v1.PacketState:\n    type: object\n    properties:\n      port_id:\n        type: string\n        description: channel port identifier.\n      channel_id:\n        type: string\n        description: channel unique identifier.\n      sequence:\n        type: string\n        format: uint64\n        description: packet sequence.\n      data:\n        type: string\n        format: byte\n        description: embedded data that represents packet state.\n    description: |-\n      PacketState defines the generic type necessary to retrieve and store\n      packet commitments, acknowledgements, and receipts.\n      Caller is responsible for knowing the context necessary to interpret this\n      state as a commitment, acknowledgement, or a receipt.\n  ibc.core.channel.v1.QueryChannelClientStateResponse:\n    type: object\n    properties:\n      identified_client_state:\n        title: client state associated with the channel\n        type: object\n        properties:\n          client_id:\n            type: string\n            title: client identifier\n          client_state:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n            title: client state\n        description: |-\n          IdentifiedClientState defines a client state with an additional client\n          identifier field.\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryChannelClientStateResponse is the Response type for the\n      Query/QueryChannelClientState RPC method\n  ibc.core.channel.v1.QueryChannelConsensusStateResponse:\n    type: object\n    properties:\n      consensus_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n        title: consensus state associated with the channel\n      client_id:\n        type: string\n        title: client ID associated with the consensus state\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryChannelClientStateResponse is the Response type for the\n      Query/QueryChannelClientState RPC method\n  ibc.core.channel.v1.QueryChannelResponse:\n    type: object\n    properties:\n      channel:\n        title: channel associated with the request identifiers\n        type: object\n        properties:\n          state:\n            title: current state of the channel end\n            type: string\n            enum:\n              - STATE_UNINITIALIZED_UNSPECIFIED\n              - STATE_INIT\n              - STATE_TRYOPEN\n              - STATE_OPEN\n              - STATE_CLOSED\n            default: STATE_UNINITIALIZED_UNSPECIFIED\n            description: |-\n              State defines if a channel is in one of the following states:\n              CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n               - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n               - STATE_INIT: A channel has just started the opening handshake.\n               - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n               - STATE_OPEN: A channel has completed the handshake. Open channels are\n              ready to send and receive packets.\n               - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n              packets.\n          ordering:\n            title: whether the channel is ordered or unordered\n            type: string\n            enum:\n              - ORDER_NONE_UNSPECIFIED\n              - ORDER_UNORDERED\n              - ORDER_ORDERED\n            default: ORDER_NONE_UNSPECIFIED\n            description: |-\n              - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n               - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n              which they were sent.\n               - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n          counterparty:\n            title: counterparty channel end\n            type: object\n            properties:\n              port_id:\n                type: string\n                description: >-\n                  port on the counterparty chain which owns the other end of the\n                  channel.\n              channel_id:\n                type: string\n                title: channel end on the counterparty chain\n          connection_hops:\n            type: array\n            items:\n              type: string\n            title: >-\n              list of connection identifiers, in order, along which packets sent\n              on\n\n              this channel will travel\n          version:\n            type: string\n            title: opaque channel version, which is agreed upon during the handshake\n        description: >-\n          Channel defines pipeline for exactly-once packet delivery between\n          specific\n\n          modules on separate blockchains, which has at least one end capable of\n\n          sending packets and one end capable of receiving packets.\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    description: >-\n      QueryChannelResponse is the response type for the Query/Channel RPC\n      method.\n\n      Besides the Channel end, it includes a proof and the height from which the\n\n      proof was retrieved.\n  ibc.core.channel.v1.QueryChannelsResponse:\n    type: object\n    properties:\n      channels:\n        type: array\n        items:\n          type: object\n          properties:\n            state:\n              title: current state of the channel end\n              type: string\n              enum:\n                - STATE_UNINITIALIZED_UNSPECIFIED\n                - STATE_INIT\n                - STATE_TRYOPEN\n                - STATE_OPEN\n                - STATE_CLOSED\n              default: STATE_UNINITIALIZED_UNSPECIFIED\n              description: |-\n                State defines if a channel is in one of the following states:\n                CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n                 - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n                 - STATE_INIT: A channel has just started the opening handshake.\n                 - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n                 - STATE_OPEN: A channel has completed the handshake. Open channels are\n                ready to send and receive packets.\n                 - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n                packets.\n            ordering:\n              title: whether the channel is ordered or unordered\n              type: string\n              enum:\n                - ORDER_NONE_UNSPECIFIED\n                - ORDER_UNORDERED\n                - ORDER_ORDERED\n              default: ORDER_NONE_UNSPECIFIED\n              description: |-\n                - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n                 - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n                which they were sent.\n                 - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n            counterparty:\n              title: counterparty channel end\n              type: object\n              properties:\n                port_id:\n                  type: string\n                  description: >-\n                    port on the counterparty chain which owns the other end of\n                    the channel.\n                channel_id:\n                  type: string\n                  title: channel end on the counterparty chain\n            connection_hops:\n              type: array\n              items:\n                type: string\n              title: >-\n                list of connection identifiers, in order, along which packets\n                sent on\n\n                this channel will travel\n            version:\n              type: string\n              title: >-\n                opaque channel version, which is agreed upon during the\n                handshake\n            port_id:\n              type: string\n              title: port identifier\n            channel_id:\n              type: string\n              title: channel identifier\n          description: |-\n            IdentifiedChannel defines a channel with additional port and channel\n            identifier fields.\n        description: list of stored channels of the chain.\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    description: >-\n      QueryChannelsResponse is the response type for the Query/Channels RPC\n      method.\n  ibc.core.channel.v1.QueryConnectionChannelsResponse:\n    type: object\n    properties:\n      channels:\n        type: array\n        items:\n          type: object\n          properties:\n            state:\n              title: current state of the channel end\n              type: string\n              enum:\n                - STATE_UNINITIALIZED_UNSPECIFIED\n                - STATE_INIT\n                - STATE_TRYOPEN\n                - STATE_OPEN\n                - STATE_CLOSED\n              default: STATE_UNINITIALIZED_UNSPECIFIED\n              description: |-\n                State defines if a channel is in one of the following states:\n                CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n                 - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n                 - STATE_INIT: A channel has just started the opening handshake.\n                 - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n                 - STATE_OPEN: A channel has completed the handshake. Open channels are\n                ready to send and receive packets.\n                 - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n                packets.\n            ordering:\n              title: whether the channel is ordered or unordered\n              type: string\n              enum:\n                - ORDER_NONE_UNSPECIFIED\n                - ORDER_UNORDERED\n                - ORDER_ORDERED\n              default: ORDER_NONE_UNSPECIFIED\n              description: |-\n                - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering\n                 - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in\n                which they were sent.\n                 - ORDER_ORDERED: packets are delivered exactly in the order which they were sent\n            counterparty:\n              title: counterparty channel end\n              type: object\n              properties:\n                port_id:\n                  type: string\n                  description: >-\n                    port on the counterparty chain which owns the other end of\n                    the channel.\n                channel_id:\n                  type: string\n                  title: channel end on the counterparty chain\n            connection_hops:\n              type: array\n              items:\n                type: string\n              title: >-\n                list of connection identifiers, in order, along which packets\n                sent on\n\n                this channel will travel\n            version:\n              type: string\n              title: >-\n                opaque channel version, which is agreed upon during the\n                handshake\n            port_id:\n              type: string\n              title: port identifier\n            channel_id:\n              type: string\n              title: channel identifier\n          description: |-\n            IdentifiedChannel defines a channel with additional port and channel\n            identifier fields.\n        description: list of channels associated with a connection.\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryConnectionChannelsResponse is the Response type for the\n      Query/QueryConnectionChannels RPC method\n  ibc.core.channel.v1.QueryNextSequenceReceiveResponse:\n    type: object\n    properties:\n      next_sequence_receive:\n        type: string\n        format: uint64\n        title: next sequence receive number\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QuerySequenceResponse is the request type for the\n      Query/QueryNextSequenceReceiveResponse RPC method\n  ibc.core.channel.v1.QueryPacketAcknowledgementResponse:\n    type: object\n    properties:\n      acknowledgement:\n        type: string\n        format: byte\n        title: packet associated with the request fields\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryPacketAcknowledgementResponse defines the client query response for a\n      packet which also includes a proof and the height from which the\n      proof was retrieved\n  ibc.core.channel.v1.QueryPacketAcknowledgementsResponse:\n    type: object\n    properties:\n      acknowledgements:\n        type: array\n        items:\n          type: object\n          properties:\n            port_id:\n              type: string\n              description: channel port identifier.\n            channel_id:\n              type: string\n              description: channel unique identifier.\n            sequence:\n              type: string\n              format: uint64\n              description: packet sequence.\n            data:\n              type: string\n              format: byte\n              description: embedded data that represents packet state.\n          description: >-\n            PacketState defines the generic type necessary to retrieve and store\n\n            packet commitments, acknowledgements, and receipts.\n\n            Caller is responsible for knowing the context necessary to interpret\n            this\n\n            state as a commitment, acknowledgement, or a receipt.\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryPacketAcknowledgemetsResponse is the request type for the\n      Query/QueryPacketAcknowledgements RPC method\n  ibc.core.channel.v1.QueryPacketCommitmentResponse:\n    type: object\n    properties:\n      commitment:\n        type: string\n        format: byte\n        title: packet associated with the request fields\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: >-\n      QueryPacketCommitmentResponse defines the client query response for a\n      packet\n\n      which also includes a proof and the height from which the proof was\n\n      retrieved\n  ibc.core.channel.v1.QueryPacketCommitmentsResponse:\n    type: object\n    properties:\n      commitments:\n        type: array\n        items:\n          type: object\n          properties:\n            port_id:\n              type: string\n              description: channel port identifier.\n            channel_id:\n              type: string\n              description: channel unique identifier.\n            sequence:\n              type: string\n              format: uint64\n              description: packet sequence.\n            data:\n              type: string\n              format: byte\n              description: embedded data that represents packet state.\n          description: >-\n            PacketState defines the generic type necessary to retrieve and store\n\n            packet commitments, acknowledgements, and receipts.\n\n            Caller is responsible for knowing the context necessary to interpret\n            this\n\n            state as a commitment, acknowledgement, or a receipt.\n      pagination:\n        title: pagination response\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryPacketCommitmentsResponse is the request type for the\n      Query/QueryPacketCommitments RPC method\n  ibc.core.channel.v1.QueryPacketReceiptResponse:\n    type: object\n    properties:\n      received:\n        type: boolean\n        title: success flag for if receipt exists\n      proof:\n        type: string\n        format: byte\n        title: merkle proof of existence\n      proof_height:\n        title: height at which the proof was retrieved\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: >-\n      QueryPacketReceiptResponse defines the client query response for a packet\n\n      receipt which also includes a proof, and the height from which the proof\n      was\n\n      retrieved\n  ibc.core.channel.v1.QueryUnreceivedAcksResponse:\n    type: object\n    properties:\n      sequences:\n        type: array\n        items:\n          type: string\n          format: uint64\n        title: list of unreceived acknowledgement sequences\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryUnreceivedAcksResponse is the response type for the\n      Query/UnreceivedAcks RPC method\n  ibc.core.channel.v1.QueryUnreceivedPacketsResponse:\n    type: object\n    properties:\n      sequences:\n        type: array\n        items:\n          type: string\n          format: uint64\n        title: list of unreceived packet sequences\n      height:\n        title: query block height\n        type: object\n        properties:\n          revision_number:\n            type: string\n            format: uint64\n            title: the revision that the client is currently on\n          revision_height:\n            type: string\n            format: uint64\n            title: the height within the given revision\n        description: >-\n          Normally the RevisionHeight is incremented at each height while\n          keeping\n\n          RevisionNumber the same. However some consensus algorithms may choose\n          to\n\n          reset the height in certain conditions e.g. hard forks, state-machine\n\n          breaking changes In these cases, the RevisionNumber is incremented so\n          that\n\n          height continues to be monitonically increasing even as the\n          RevisionHeight\n\n          gets reset\n    title: |-\n      QueryUnreceivedPacketsResponse is the response type for the\n      Query/UnreceivedPacketCommitments RPC method\n  ibc.core.channel.v1.State:\n    type: string\n    enum:\n      - STATE_UNINITIALIZED_UNSPECIFIED\n      - STATE_INIT\n      - STATE_TRYOPEN\n      - STATE_OPEN\n      - STATE_CLOSED\n    default: STATE_UNINITIALIZED_UNSPECIFIED\n    description: |-\n      State defines if a channel is in one of the following states:\n      CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n       - STATE_UNINITIALIZED_UNSPECIFIED: Default State\n       - STATE_INIT: A channel has just started the opening handshake.\n       - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.\n       - STATE_OPEN: A channel has completed the handshake. Open channels are\n      ready to send and receive packets.\n       - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive\n      packets.\n  cosmos.auth.v1beta1.AddressBytesToStringResponse:\n    type: object\n    properties:\n      address_string:\n        type: string\n    description: >-\n      AddressBytesToStringResponse is the response type for AddressString rpc\n      method.\n\n\n      Since: cosmos-sdk 0.46\n  cosmos.auth.v1beta1.AddressStringToBytesResponse:\n    type: object\n    properties:\n      address_bytes:\n        type: string\n        format: byte\n    description: >-\n      AddressStringToBytesResponse is the response type for AddressBytes rpc\n      method.\n\n\n      Since: cosmos-sdk 0.46\n  cosmos.auth.v1beta1.Bech32PrefixResponse:\n    type: object\n    properties:\n      bech32_prefix:\n        type: string\n    description: |-\n      Bech32PrefixResponse is the response type for Bech32Prefix rpc method.\n\n      Since: cosmos-sdk 0.46\n  cosmos.auth.v1beta1.Params:\n    type: object\n    properties:\n      max_memo_characters:\n        type: string\n        format: uint64\n      tx_sig_limit:\n        type: string\n        format: uint64\n      tx_size_cost_per_byte:\n        type: string\n        format: uint64\n      sig_verify_cost_ed25519:\n        type: string\n        format: uint64\n      sig_verify_cost_secp256k1:\n        type: string\n        format: uint64\n    description: Params defines the parameters for the auth module.\n  cosmos.auth.v1beta1.QueryAccountAddressByIDResponse:\n    type: object\n    properties:\n      account_address:\n        type: string\n    description: 'Since: cosmos-sdk 0.46.2'\n    title: >-\n      QueryAccountAddressByIDResponse is the response type for\n      AccountAddressByID rpc method\n  cosmos.auth.v1beta1.QueryAccountResponse:\n    type: object\n    properties:\n      account:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n    description: >-\n      QueryAccountResponse is the response type for the Query/Account RPC\n      method.\n  cosmos.auth.v1beta1.QueryAccountsResponse:\n    type: object\n    properties:\n      accounts:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        title: accounts are the existing accounts\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryAccountsResponse is the response type for the Query/Accounts RPC\n      method.\n\n\n      Since: cosmos-sdk 0.43\n  cosmos.auth.v1beta1.QueryModuleAccountByNameResponse:\n    type: object\n    properties:\n      account:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n    description: >-\n      QueryModuleAccountByNameResponse is the response type for the\n      Query/ModuleAccountByName RPC method.\n  cosmos.auth.v1beta1.QueryModuleAccountsResponse:\n    type: object\n    properties:\n      accounts:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n    description: >-\n      QueryModuleAccountsResponse is the response type for the\n      Query/ModuleAccounts RPC method.\n\n\n      Since: cosmos-sdk 0.46\n  cosmos.auth.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params defines the parameters of the module.\n        type: object\n        properties:\n          max_memo_characters:\n            type: string\n            format: uint64\n          tx_sig_limit:\n            type: string\n            format: uint64\n          tx_size_cost_per_byte:\n            type: string\n            format: uint64\n          sig_verify_cost_ed25519:\n            type: string\n            format: uint64\n          sig_verify_cost_secp256k1:\n            type: string\n            format: uint64\n    description: QueryParamsResponse is the response type for the Query/Params RPC method.\n  cosmos.bank.v1beta1.DenomOwner:\n    type: object\n    properties:\n      address:\n        type: string\n        description: address defines the address that owns a particular denomination.\n      balance:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n    description: |-\n      DenomOwner defines structure representing an account that owns or holds a\n      particular denominated token. It contains the account address and account\n      balance of the denominated token.\n\n      Since: cosmos-sdk 0.46\n  cosmos.bank.v1beta1.DenomUnit:\n    type: object\n    properties:\n      denom:\n        type: string\n        description: denom represents the string name of the given denom unit (e.g uatom).\n      exponent:\n        type: integer\n        format: int64\n        description: >-\n          exponent represents power of 10 exponent that one must\n\n          raise the base_denom to in order to equal the given DenomUnit's denom\n\n          1 denom = 10^exponent base_denom\n\n          (e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom'\n          with\n\n          exponent = 6, thus: 1 atom = 10^6 uatom).\n      aliases:\n        type: array\n        items:\n          type: string\n        title: aliases is a list of string aliases for the given denom\n    description: |-\n      DenomUnit represents a struct that describes a given\n      denomination unit of the basic token.\n  cosmos.bank.v1beta1.Metadata:\n    type: object\n    properties:\n      description:\n        type: string\n      denom_units:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n              description: >-\n                denom represents the string name of the given denom unit (e.g\n                uatom).\n            exponent:\n              type: integer\n              format: int64\n              description: >-\n                exponent represents power of 10 exponent that one must\n\n                raise the base_denom to in order to equal the given DenomUnit's\n                denom\n\n                1 denom = 10^exponent base_denom\n\n                (e.g. with a base_denom of uatom, one can create a DenomUnit of\n                'atom' with\n\n                exponent = 6, thus: 1 atom = 10^6 uatom).\n            aliases:\n              type: array\n              items:\n                type: string\n              title: aliases is a list of string aliases for the given denom\n          description: |-\n            DenomUnit represents a struct that describes a given\n            denomination unit of the basic token.\n        title: denom_units represents the list of DenomUnit's for a given coin\n      base:\n        type: string\n        description: >-\n          base represents the base denom (should be the DenomUnit with exponent\n          = 0).\n      display:\n        type: string\n        description: |-\n          display indicates the suggested denom that should be\n          displayed in clients.\n      name:\n        type: string\n        description: 'Since: cosmos-sdk 0.43'\n        title: 'name defines the name of the token (eg: Cosmos Atom)'\n      symbol:\n        type: string\n        description: >-\n          symbol is the token symbol usually shown on exchanges (eg: ATOM). This\n          can\n\n          be the same as the display.\n\n\n          Since: cosmos-sdk 0.43\n      uri:\n        type: string\n        description: >-\n          URI to a document (on or off-chain) that contains additional\n          information. Optional.\n\n\n          Since: cosmos-sdk 0.46\n      uri_hash:\n        type: string\n        description: >-\n          URIHash is a sha256 hash of a document pointed by URI. It's used to\n          verify that\n\n          the document didn't change. Optional.\n\n\n          Since: cosmos-sdk 0.46\n    description: |-\n      Metadata represents a struct that describes\n      a basic token.\n  cosmos.bank.v1beta1.Params:\n    type: object\n    properties:\n      send_enabled:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            enabled:\n              type: boolean\n          description: >-\n            SendEnabled maps coin denom to a send_enabled status (whether a\n            denom is\n\n            sendable).\n      default_send_enabled:\n        type: boolean\n    description: Params defines the parameters for the bank module.\n  cosmos.bank.v1beta1.QueryAllBalancesResponse:\n    type: object\n    properties:\n      balances:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        description: balances is the balances of all the coins.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryAllBalancesResponse is the response type for the Query/AllBalances\n      RPC\n\n      method.\n  cosmos.bank.v1beta1.QueryBalanceResponse:\n    type: object\n    properties:\n      balance:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n    description: >-\n      QueryBalanceResponse is the response type for the Query/Balance RPC\n      method.\n  cosmos.bank.v1beta1.QueryDenomMetadataResponse:\n    type: object\n    properties:\n      metadata:\n        type: object\n        properties:\n          description:\n            type: string\n          denom_units:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                  description: >-\n                    denom represents the string name of the given denom unit\n                    (e.g uatom).\n                exponent:\n                  type: integer\n                  format: int64\n                  description: >-\n                    exponent represents power of 10 exponent that one must\n\n                    raise the base_denom to in order to equal the given\n                    DenomUnit's denom\n\n                    1 denom = 10^exponent base_denom\n\n                    (e.g. with a base_denom of uatom, one can create a DenomUnit\n                    of 'atom' with\n\n                    exponent = 6, thus: 1 atom = 10^6 uatom).\n                aliases:\n                  type: array\n                  items:\n                    type: string\n                  title: aliases is a list of string aliases for the given denom\n              description: |-\n                DenomUnit represents a struct that describes a given\n                denomination unit of the basic token.\n            title: denom_units represents the list of DenomUnit's for a given coin\n          base:\n            type: string\n            description: >-\n              base represents the base denom (should be the DenomUnit with\n              exponent = 0).\n          display:\n            type: string\n            description: |-\n              display indicates the suggested denom that should be\n              displayed in clients.\n          name:\n            type: string\n            description: 'Since: cosmos-sdk 0.43'\n            title: 'name defines the name of the token (eg: Cosmos Atom)'\n          symbol:\n            type: string\n            description: >-\n              symbol is the token symbol usually shown on exchanges (eg: ATOM).\n              This can\n\n              be the same as the display.\n\n\n              Since: cosmos-sdk 0.43\n          uri:\n            type: string\n            description: >-\n              URI to a document (on or off-chain) that contains additional\n              information. Optional.\n\n\n              Since: cosmos-sdk 0.46\n          uri_hash:\n            type: string\n            description: >-\n              URIHash is a sha256 hash of a document pointed by URI. It's used\n              to verify that\n\n              the document didn't change. Optional.\n\n\n              Since: cosmos-sdk 0.46\n        description: |-\n          Metadata represents a struct that describes\n          a basic token.\n    description: >-\n      QueryDenomMetadataResponse is the response type for the\n      Query/DenomMetadata RPC\n\n      method.\n  cosmos.bank.v1beta1.QueryDenomOwnersResponse:\n    type: object\n    properties:\n      denom_owners:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n              description: address defines the address that owns a particular denomination.\n            balance:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          description: >-\n            DenomOwner defines structure representing an account that owns or\n            holds a\n\n            particular denominated token. It contains the account address and\n            account\n\n            balance of the denominated token.\n\n\n            Since: cosmos-sdk 0.46\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryDenomOwnersResponse defines the RPC response of a DenomOwners RPC\n      query.\n\n\n      Since: cosmos-sdk 0.46\n  cosmos.bank.v1beta1.QueryDenomsMetadataResponse:\n    type: object\n    properties:\n      metadatas:\n        type: array\n        items:\n          type: object\n          properties:\n            description:\n              type: string\n            denom_units:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                    description: >-\n                      denom represents the string name of the given denom unit\n                      (e.g uatom).\n                  exponent:\n                    type: integer\n                    format: int64\n                    description: >-\n                      exponent represents power of 10 exponent that one must\n\n                      raise the base_denom to in order to equal the given\n                      DenomUnit's denom\n\n                      1 denom = 10^exponent base_denom\n\n                      (e.g. with a base_denom of uatom, one can create a\n                      DenomUnit of 'atom' with\n\n                      exponent = 6, thus: 1 atom = 10^6 uatom).\n                  aliases:\n                    type: array\n                    items:\n                      type: string\n                    title: aliases is a list of string aliases for the given denom\n                description: |-\n                  DenomUnit represents a struct that describes a given\n                  denomination unit of the basic token.\n              title: denom_units represents the list of DenomUnit's for a given coin\n            base:\n              type: string\n              description: >-\n                base represents the base denom (should be the DenomUnit with\n                exponent = 0).\n            display:\n              type: string\n              description: |-\n                display indicates the suggested denom that should be\n                displayed in clients.\n            name:\n              type: string\n              description: 'Since: cosmos-sdk 0.43'\n              title: 'name defines the name of the token (eg: Cosmos Atom)'\n            symbol:\n              type: string\n              description: >-\n                symbol is the token symbol usually shown on exchanges (eg:\n                ATOM). This can\n\n                be the same as the display.\n\n\n                Since: cosmos-sdk 0.43\n            uri:\n              type: string\n              description: >-\n                URI to a document (on or off-chain) that contains additional\n                information. Optional.\n\n\n                Since: cosmos-sdk 0.46\n            uri_hash:\n              type: string\n              description: >-\n                URIHash is a sha256 hash of a document pointed by URI. It's used\n                to verify that\n\n                the document didn't change. Optional.\n\n\n                Since: cosmos-sdk 0.46\n          description: |-\n            Metadata represents a struct that describes\n            a basic token.\n        description: >-\n          metadata provides the client information for all the registered\n          tokens.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryDenomsMetadataResponse is the response type for the\n      Query/DenomsMetadata RPC\n\n      method.\n  cosmos.bank.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          send_enabled:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                enabled:\n                  type: boolean\n              description: >-\n                SendEnabled maps coin denom to a send_enabled status (whether a\n                denom is\n\n                sendable).\n          default_send_enabled:\n            type: boolean\n        description: Params defines the parameters for the bank module.\n    description: >-\n      QueryParamsResponse defines the response type for querying x/bank\n      parameters.\n  cosmos.bank.v1beta1.QuerySpendableBalancesResponse:\n    type: object\n    properties:\n      balances:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        description: balances is the spendable balances of all the coins.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QuerySpendableBalancesResponse defines the gRPC response structure for\n      querying\n\n      an account's spendable balances.\n\n\n      Since: cosmos-sdk 0.46\n  cosmos.bank.v1beta1.QuerySupplyOfResponse:\n    type: object\n    properties:\n      amount:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n    description: >-\n      QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC\n      method.\n  cosmos.bank.v1beta1.QueryTotalSupplyResponse:\n    type: object\n    properties:\n      supply:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        title: supply is the supply of the coins\n      pagination:\n        description: |-\n          pagination defines the pagination in the response.\n\n          Since: cosmos-sdk 0.43\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    title: >-\n      QueryTotalSupplyResponse is the response type for the Query/TotalSupply\n      RPC\n\n      method\n  cosmos.bank.v1beta1.SendEnabled:\n    type: object\n    properties:\n      denom:\n        type: string\n      enabled:\n        type: boolean\n    description: |-\n      SendEnabled maps coin denom to a send_enabled status (whether a denom is\n      sendable).\n  cosmos.base.tendermint.v1beta1.ABCIQueryResponse:\n    type: object\n    properties:\n      code:\n        type: integer\n        format: int64\n      log:\n        type: string\n      info:\n        type: string\n      index:\n        type: string\n        format: int64\n      key:\n        type: string\n        format: byte\n      value:\n        type: string\n        format: byte\n      proof_ops:\n        type: object\n        properties:\n          ops:\n            type: array\n            items:\n              type: object\n              properties:\n                type:\n                  type: string\n                key:\n                  type: string\n                  format: byte\n                data:\n                  type: string\n                  format: byte\n              description: >-\n                ProofOp defines an operation used for calculating Merkle root.\n                The data could\n\n                be arbitrary format, providing nessecary data for example\n                neighbouring node\n\n                hash.\n\n\n                Note: This type is a duplicate of the ProofOp proto type defined\n                in\n\n                Tendermint.\n        description: |-\n          ProofOps is Merkle proof defined by the list of ProofOps.\n\n          Note: This type is a duplicate of the ProofOps proto type defined in\n          Tendermint.\n      height:\n        type: string\n        format: int64\n      codespace:\n        type: string\n    description: |-\n      ABCIQueryResponse defines the response structure for the ABCIQuery gRPC\n      query.\n\n      Note: This type is a duplicate of the ResponseQuery proto type defined in\n      Tendermint.\n  cosmos.base.tendermint.v1beta1.Block:\n    type: object\n    properties:\n      header:\n        type: object\n        properties:\n          version:\n            title: basic block info\n            type: object\n            properties:\n              block:\n                type: string\n                format: uint64\n              app:\n                type: string\n                format: uint64\n            description: >-\n              Consensus captures the consensus rules for processing a block in\n              the blockchain,\n\n              including all blockchain data structures and the rules of the\n              application's\n\n              state transition machine.\n          chain_id:\n            type: string\n          height:\n            type: string\n            format: int64\n          time:\n            type: string\n            format: date-time\n          last_block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          last_commit_hash:\n            type: string\n            format: byte\n            title: hashes of block data\n          data_hash:\n            type: string\n            format: byte\n          validators_hash:\n            type: string\n            format: byte\n            title: hashes from the app output from the prev block\n          next_validators_hash:\n            type: string\n            format: byte\n          consensus_hash:\n            type: string\n            format: byte\n          app_hash:\n            type: string\n            format: byte\n          last_results_hash:\n            type: string\n            format: byte\n          evidence_hash:\n            type: string\n            format: byte\n            title: consensus info\n          proposer_address:\n            type: string\n            description: >-\n              proposer_address is the original block proposer address, formatted\n              as a Bech32 string.\n\n              In Tendermint, this type is `bytes`, but in the SDK, we convert it\n              to a Bech32 string\n\n              for better UX.\n        description: Header defines the structure of a Tendermint block header.\n      data:\n        type: object\n        properties:\n          txs:\n            type: array\n            items:\n              type: string\n              format: byte\n            description: >-\n              Txs that will be applied by state @ block.Height+1.\n\n              NOTE: not all txs here are valid.  We're just agreeing on the\n              order first.\n\n              This means that block.AppHash does not include these txs.\n        title: Data contains the set of transactions included in the block\n      evidence:\n        type: object\n        properties:\n          evidence:\n            type: array\n            items:\n              type: object\n              properties:\n                duplicate_vote_evidence:\n                  type: object\n                  properties:\n                    vote_a:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                          enum:\n                            - SIGNED_MSG_TYPE_UNKNOWN\n                            - SIGNED_MSG_TYPE_PREVOTE\n                            - SIGNED_MSG_TYPE_PRECOMMIT\n                            - SIGNED_MSG_TYPE_PROPOSAL\n                          default: SIGNED_MSG_TYPE_UNKNOWN\n                          description: >-\n                            SignedMsgType is a type of signed message in the\n                            consensus.\n\n                             - SIGNED_MSG_TYPE_PREVOTE: Votes\n                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                        height:\n                          type: string\n                          format: int64\n                        round:\n                          type: integer\n                          format: int32\n                        block_id:\n                          type: object\n                          properties:\n                            hash:\n                              type: string\n                              format: byte\n                            part_set_header:\n                              type: object\n                              properties:\n                                total:\n                                  type: integer\n                                  format: int64\n                                hash:\n                                  type: string\n                                  format: byte\n                              title: PartsetHeader\n                          title: BlockID\n                        timestamp:\n                          type: string\n                          format: date-time\n                        validator_address:\n                          type: string\n                          format: byte\n                        validator_index:\n                          type: integer\n                          format: int32\n                        signature:\n                          type: string\n                          format: byte\n                      description: >-\n                        Vote represents a prevote, precommit, or commit vote\n                        from validators for\n\n                        consensus.\n                    vote_b:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                          enum:\n                            - SIGNED_MSG_TYPE_UNKNOWN\n                            - SIGNED_MSG_TYPE_PREVOTE\n                            - SIGNED_MSG_TYPE_PRECOMMIT\n                            - SIGNED_MSG_TYPE_PROPOSAL\n                          default: SIGNED_MSG_TYPE_UNKNOWN\n                          description: >-\n                            SignedMsgType is a type of signed message in the\n                            consensus.\n\n                             - SIGNED_MSG_TYPE_PREVOTE: Votes\n                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                        height:\n                          type: string\n                          format: int64\n                        round:\n                          type: integer\n                          format: int32\n                        block_id:\n                          type: object\n                          properties:\n                            hash:\n                              type: string\n                              format: byte\n                            part_set_header:\n                              type: object\n                              properties:\n                                total:\n                                  type: integer\n                                  format: int64\n                                hash:\n                                  type: string\n                                  format: byte\n                              title: PartsetHeader\n                          title: BlockID\n                        timestamp:\n                          type: string\n                          format: date-time\n                        validator_address:\n                          type: string\n                          format: byte\n                        validator_index:\n                          type: integer\n                          format: int32\n                        signature:\n                          type: string\n                          format: byte\n                      description: >-\n                        Vote represents a prevote, precommit, or commit vote\n                        from validators for\n\n                        consensus.\n                    total_voting_power:\n                      type: string\n                      format: int64\n                    validator_power:\n                      type: string\n                      format: int64\n                    timestamp:\n                      type: string\n                      format: date-time\n                  description: >-\n                    DuplicateVoteEvidence contains evidence of a validator\n                    signed two conflicting votes.\n                light_client_attack_evidence:\n                  type: object\n                  properties:\n                    conflicting_block:\n                      type: object\n                      properties:\n                        signed_header:\n                          type: object\n                          properties:\n                            header:\n                              type: object\n                              properties:\n                                version:\n                                  title: basic block info\n                                  type: object\n                                  properties:\n                                    block:\n                                      type: string\n                                      format: uint64\n                                    app:\n                                      type: string\n                                      format: uint64\n                                  description: >-\n                                    Consensus captures the consensus rules for\n                                    processing a block in the blockchain,\n\n                                    including all blockchain data structures and\n                                    the rules of the application's\n\n                                    state transition machine.\n                                chain_id:\n                                  type: string\n                                height:\n                                  type: string\n                                  format: int64\n                                time:\n                                  type: string\n                                  format: date-time\n                                last_block_id:\n                                  type: object\n                                  properties:\n                                    hash:\n                                      type: string\n                                      format: byte\n                                    part_set_header:\n                                      type: object\n                                      properties:\n                                        total:\n                                          type: integer\n                                          format: int64\n                                        hash:\n                                          type: string\n                                          format: byte\n                                      title: PartsetHeader\n                                  title: BlockID\n                                last_commit_hash:\n                                  type: string\n                                  format: byte\n                                  title: hashes of block data\n                                data_hash:\n                                  type: string\n                                  format: byte\n                                validators_hash:\n                                  type: string\n                                  format: byte\n                                  title: >-\n                                    hashes from the app output from the prev\n                                    block\n                                next_validators_hash:\n                                  type: string\n                                  format: byte\n                                consensus_hash:\n                                  type: string\n                                  format: byte\n                                app_hash:\n                                  type: string\n                                  format: byte\n                                last_results_hash:\n                                  type: string\n                                  format: byte\n                                evidence_hash:\n                                  type: string\n                                  format: byte\n                                  title: consensus info\n                                proposer_address:\n                                  type: string\n                                  format: byte\n                              description: >-\n                                Header defines the structure of a Tendermint\n                                block header.\n                            commit:\n                              type: object\n                              properties:\n                                height:\n                                  type: string\n                                  format: int64\n                                round:\n                                  type: integer\n                                  format: int32\n                                block_id:\n                                  type: object\n                                  properties:\n                                    hash:\n                                      type: string\n                                      format: byte\n                                    part_set_header:\n                                      type: object\n                                      properties:\n                                        total:\n                                          type: integer\n                                          format: int64\n                                        hash:\n                                          type: string\n                                          format: byte\n                                      title: PartsetHeader\n                                  title: BlockID\n                                signatures:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      block_id_flag:\n                                        type: string\n                                        enum:\n                                          - BLOCK_ID_FLAG_UNKNOWN\n                                          - BLOCK_ID_FLAG_ABSENT\n                                          - BLOCK_ID_FLAG_COMMIT\n                                          - BLOCK_ID_FLAG_NIL\n                                        default: BLOCK_ID_FLAG_UNKNOWN\n                                        title: >-\n                                          BlockIdFlag indicates which BlcokID the\n                                          signature is for\n                                      validator_address:\n                                        type: string\n                                        format: byte\n                                      timestamp:\n                                        type: string\n                                        format: date-time\n                                      signature:\n                                        type: string\n                                        format: byte\n                                    description: >-\n                                      CommitSig is a part of the Vote included\n                                      in a Commit.\n                              description: >-\n                                Commit contains the evidence that a block was\n                                committed by a set of validators.\n                        validator_set:\n                          type: object\n                          properties:\n                            validators:\n                              type: array\n                              items:\n                                type: object\n                                properties:\n                                  address:\n                                    type: string\n                                    format: byte\n                                  pub_key:\n                                    type: object\n                                    properties:\n                                      ed25519:\n                                        type: string\n                                        format: byte\n                                      secp256k1:\n                                        type: string\n                                        format: byte\n                                    title: >-\n                                      PublicKey defines the keys available for\n                                      use with Tendermint Validators\n                                  voting_power:\n                                    type: string\n                                    format: int64\n                                  proposer_priority:\n                                    type: string\n                                    format: int64\n                            proposer:\n                              type: object\n                              properties:\n                                address:\n                                  type: string\n                                  format: byte\n                                pub_key:\n                                  type: object\n                                  properties:\n                                    ed25519:\n                                      type: string\n                                      format: byte\n                                    secp256k1:\n                                      type: string\n                                      format: byte\n                                  title: >-\n                                    PublicKey defines the keys available for use\n                                    with Tendermint Validators\n                                voting_power:\n                                  type: string\n                                  format: int64\n                                proposer_priority:\n                                  type: string\n                                  format: int64\n                            total_voting_power:\n                              type: string\n                              format: int64\n                    common_height:\n                      type: string\n                      format: int64\n                    byzantine_validators:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          address:\n                            type: string\n                            format: byte\n                          pub_key:\n                            type: object\n                            properties:\n                              ed25519:\n                                type: string\n                                format: byte\n                              secp256k1:\n                                type: string\n                                format: byte\n                            title: >-\n                              PublicKey defines the keys available for use with\n                              Tendermint Validators\n                          voting_power:\n                            type: string\n                            format: int64\n                          proposer_priority:\n                            type: string\n                            format: int64\n                    total_voting_power:\n                      type: string\n                      format: int64\n                    timestamp:\n                      type: string\n                      format: date-time\n                  description: >-\n                    LightClientAttackEvidence contains evidence of a set of\n                    validators attempting to mislead a light client.\n      last_commit:\n        type: object\n        properties:\n          height:\n            type: string\n            format: int64\n          round:\n            type: integer\n            format: int32\n          block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          signatures:\n            type: array\n            items:\n              type: object\n              properties:\n                block_id_flag:\n                  type: string\n                  enum:\n                    - BLOCK_ID_FLAG_UNKNOWN\n                    - BLOCK_ID_FLAG_ABSENT\n                    - BLOCK_ID_FLAG_COMMIT\n                    - BLOCK_ID_FLAG_NIL\n                  default: BLOCK_ID_FLAG_UNKNOWN\n                  title: BlockIdFlag indicates which BlcokID the signature is for\n                validator_address:\n                  type: string\n                  format: byte\n                timestamp:\n                  type: string\n                  format: date-time\n                signature:\n                  type: string\n                  format: byte\n              description: CommitSig is a part of the Vote included in a Commit.\n        description: >-\n          Commit contains the evidence that a block was committed by a set of\n          validators.\n    description: |-\n      Block is tendermint type Block, with the Header proposer address\n      field converted to bech32 string.\n  cosmos.base.tendermint.v1beta1.GetBlockByHeightResponse:\n    type: object\n    properties:\n      block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      block:\n        title: 'Deprecated: please use `sdk_block` instead'\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                format: byte\n            description: Header defines the structure of a Tendermint block header.\n          data:\n            type: object\n            properties:\n              txs:\n                type: array\n                items:\n                  type: string\n                  format: byte\n                description: >-\n                  Txs that will be applied by state @ block.Height+1.\n\n                  NOTE: not all txs here are valid.  We're just agreeing on the\n                  order first.\n\n                  This means that block.AppHash does not include these txs.\n            title: Data contains the set of transactions included in the block\n          evidence:\n            type: object\n            properties:\n              evidence:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    duplicate_vote_evidence:\n                      type: object\n                      properties:\n                        vote_a:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        vote_b:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        validator_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        DuplicateVoteEvidence contains evidence of a validator\n                        signed two conflicting votes.\n                    light_client_attack_evidence:\n                      type: object\n                      properties:\n                        conflicting_block:\n                          type: object\n                          properties:\n                            signed_header:\n                              type: object\n                              properties:\n                                header:\n                                  type: object\n                                  properties:\n                                    version:\n                                      title: basic block info\n                                      type: object\n                                      properties:\n                                        block:\n                                          type: string\n                                          format: uint64\n                                        app:\n                                          type: string\n                                          format: uint64\n                                      description: >-\n                                        Consensus captures the consensus rules\n                                        for processing a block in the\n                                        blockchain,\n\n                                        including all blockchain data structures\n                                        and the rules of the application's\n\n                                        state transition machine.\n                                    chain_id:\n                                      type: string\n                                    height:\n                                      type: string\n                                      format: int64\n                                    time:\n                                      type: string\n                                      format: date-time\n                                    last_block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    last_commit_hash:\n                                      type: string\n                                      format: byte\n                                      title: hashes of block data\n                                    data_hash:\n                                      type: string\n                                      format: byte\n                                    validators_hash:\n                                      type: string\n                                      format: byte\n                                      title: >-\n                                        hashes from the app output from the prev\n                                        block\n                                    next_validators_hash:\n                                      type: string\n                                      format: byte\n                                    consensus_hash:\n                                      type: string\n                                      format: byte\n                                    app_hash:\n                                      type: string\n                                      format: byte\n                                    last_results_hash:\n                                      type: string\n                                      format: byte\n                                    evidence_hash:\n                                      type: string\n                                      format: byte\n                                      title: consensus info\n                                    proposer_address:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Header defines the structure of a Tendermint\n                                    block header.\n                                commit:\n                                  type: object\n                                  properties:\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    signatures:\n                                      type: array\n                                      items:\n                                        type: object\n                                        properties:\n                                          block_id_flag:\n                                            type: string\n                                            enum:\n                                              - BLOCK_ID_FLAG_UNKNOWN\n                                              - BLOCK_ID_FLAG_ABSENT\n                                              - BLOCK_ID_FLAG_COMMIT\n                                              - BLOCK_ID_FLAG_NIL\n                                            default: BLOCK_ID_FLAG_UNKNOWN\n                                            title: >-\n                                              BlockIdFlag indicates which BlcokID the\n                                              signature is for\n                                          validator_address:\n                                            type: string\n                                            format: byte\n                                          timestamp:\n                                            type: string\n                                            format: date-time\n                                          signature:\n                                            type: string\n                                            format: byte\n                                        description: >-\n                                          CommitSig is a part of the Vote included\n                                          in a Commit.\n                                  description: >-\n                                    Commit contains the evidence that a block\n                                    was committed by a set of validators.\n                            validator_set:\n                              type: object\n                              properties:\n                                validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                proposer:\n                                  type: object\n                                  properties:\n                                    address:\n                                      type: string\n                                      format: byte\n                                    pub_key:\n                                      type: object\n                                      properties:\n                                        ed25519:\n                                          type: string\n                                          format: byte\n                                        secp256k1:\n                                          type: string\n                                          format: byte\n                                      title: >-\n                                        PublicKey defines the keys available for\n                                        use with Tendermint Validators\n                                    voting_power:\n                                      type: string\n                                      format: int64\n                                    proposer_priority:\n                                      type: string\n                                      format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                        common_height:\n                          type: string\n                          format: int64\n                        byzantine_validators:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              address:\n                                type: string\n                                format: byte\n                              pub_key:\n                                type: object\n                                properties:\n                                  ed25519:\n                                    type: string\n                                    format: byte\n                                  secp256k1:\n                                    type: string\n                                    format: byte\n                                title: >-\n                                  PublicKey defines the keys available for use\n                                  with Tendermint Validators\n                              voting_power:\n                                type: string\n                                format: int64\n                              proposer_priority:\n                                type: string\n                                format: int64\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        LightClientAttackEvidence contains evidence of a set of\n                        validators attempting to mislead a light client.\n          last_commit:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              signatures:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    block_id_flag:\n                      type: string\n                      enum:\n                        - BLOCK_ID_FLAG_UNKNOWN\n                        - BLOCK_ID_FLAG_ABSENT\n                        - BLOCK_ID_FLAG_COMMIT\n                        - BLOCK_ID_FLAG_NIL\n                      default: BLOCK_ID_FLAG_UNKNOWN\n                      title: BlockIdFlag indicates which BlcokID the signature is for\n                    validator_address:\n                      type: string\n                      format: byte\n                    timestamp:\n                      type: string\n                      format: date-time\n                    signature:\n                      type: string\n                      format: byte\n                  description: CommitSig is a part of the Vote included in a Commit.\n            description: >-\n              Commit contains the evidence that a block was committed by a set\n              of validators.\n      sdk_block:\n        title: 'Since: cosmos-sdk 0.47'\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                description: >-\n                  proposer_address is the original block proposer address,\n                  formatted as a Bech32 string.\n\n                  In Tendermint, this type is `bytes`, but in the SDK, we\n                  convert it to a Bech32 string\n\n                  for better UX.\n            description: Header defines the structure of a Tendermint block header.\n          data:\n            type: object\n            properties:\n              txs:\n                type: array\n                items:\n                  type: string\n                  format: byte\n                description: >-\n                  Txs that will be applied by state @ block.Height+1.\n\n                  NOTE: not all txs here are valid.  We're just agreeing on the\n                  order first.\n\n                  This means that block.AppHash does not include these txs.\n            title: Data contains the set of transactions included in the block\n          evidence:\n            type: object\n            properties:\n              evidence:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    duplicate_vote_evidence:\n                      type: object\n                      properties:\n                        vote_a:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        vote_b:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        validator_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        DuplicateVoteEvidence contains evidence of a validator\n                        signed two conflicting votes.\n                    light_client_attack_evidence:\n                      type: object\n                      properties:\n                        conflicting_block:\n                          type: object\n                          properties:\n                            signed_header:\n                              type: object\n                              properties:\n                                header:\n                                  type: object\n                                  properties:\n                                    version:\n                                      title: basic block info\n                                      type: object\n                                      properties:\n                                        block:\n                                          type: string\n                                          format: uint64\n                                        app:\n                                          type: string\n                                          format: uint64\n                                      description: >-\n                                        Consensus captures the consensus rules\n                                        for processing a block in the\n                                        blockchain,\n\n                                        including all blockchain data structures\n                                        and the rules of the application's\n\n                                        state transition machine.\n                                    chain_id:\n                                      type: string\n                                    height:\n                                      type: string\n                                      format: int64\n                                    time:\n                                      type: string\n                                      format: date-time\n                                    last_block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    last_commit_hash:\n                                      type: string\n                                      format: byte\n                                      title: hashes of block data\n                                    data_hash:\n                                      type: string\n                                      format: byte\n                                    validators_hash:\n                                      type: string\n                                      format: byte\n                                      title: >-\n                                        hashes from the app output from the prev\n                                        block\n                                    next_validators_hash:\n                                      type: string\n                                      format: byte\n                                    consensus_hash:\n                                      type: string\n                                      format: byte\n                                    app_hash:\n                                      type: string\n                                      format: byte\n                                    last_results_hash:\n                                      type: string\n                                      format: byte\n                                    evidence_hash:\n                                      type: string\n                                      format: byte\n                                      title: consensus info\n                                    proposer_address:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Header defines the structure of a Tendermint\n                                    block header.\n                                commit:\n                                  type: object\n                                  properties:\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    signatures:\n                                      type: array\n                                      items:\n                                        type: object\n                                        properties:\n                                          block_id_flag:\n                                            type: string\n                                            enum:\n                                              - BLOCK_ID_FLAG_UNKNOWN\n                                              - BLOCK_ID_FLAG_ABSENT\n                                              - BLOCK_ID_FLAG_COMMIT\n                                              - BLOCK_ID_FLAG_NIL\n                                            default: BLOCK_ID_FLAG_UNKNOWN\n                                            title: >-\n                                              BlockIdFlag indicates which BlcokID the\n                                              signature is for\n                                          validator_address:\n                                            type: string\n                                            format: byte\n                                          timestamp:\n                                            type: string\n                                            format: date-time\n                                          signature:\n                                            type: string\n                                            format: byte\n                                        description: >-\n                                          CommitSig is a part of the Vote included\n                                          in a Commit.\n                                  description: >-\n                                    Commit contains the evidence that a block\n                                    was committed by a set of validators.\n                            validator_set:\n                              type: object\n                              properties:\n                                validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                proposer:\n                                  type: object\n                                  properties:\n                                    address:\n                                      type: string\n                                      format: byte\n                                    pub_key:\n                                      type: object\n                                      properties:\n                                        ed25519:\n                                          type: string\n                                          format: byte\n                                        secp256k1:\n                                          type: string\n                                          format: byte\n                                      title: >-\n                                        PublicKey defines the keys available for\n                                        use with Tendermint Validators\n                                    voting_power:\n                                      type: string\n                                      format: int64\n                                    proposer_priority:\n                                      type: string\n                                      format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                        common_height:\n                          type: string\n                          format: int64\n                        byzantine_validators:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              address:\n                                type: string\n                                format: byte\n                              pub_key:\n                                type: object\n                                properties:\n                                  ed25519:\n                                    type: string\n                                    format: byte\n                                  secp256k1:\n                                    type: string\n                                    format: byte\n                                title: >-\n                                  PublicKey defines the keys available for use\n                                  with Tendermint Validators\n                              voting_power:\n                                type: string\n                                format: int64\n                              proposer_priority:\n                                type: string\n                                format: int64\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        LightClientAttackEvidence contains evidence of a set of\n                        validators attempting to mislead a light client.\n          last_commit:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              signatures:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    block_id_flag:\n                      type: string\n                      enum:\n                        - BLOCK_ID_FLAG_UNKNOWN\n                        - BLOCK_ID_FLAG_ABSENT\n                        - BLOCK_ID_FLAG_COMMIT\n                        - BLOCK_ID_FLAG_NIL\n                      default: BLOCK_ID_FLAG_UNKNOWN\n                      title: BlockIdFlag indicates which BlcokID the signature is for\n                    validator_address:\n                      type: string\n                      format: byte\n                    timestamp:\n                      type: string\n                      format: date-time\n                    signature:\n                      type: string\n                      format: byte\n                  description: CommitSig is a part of the Vote included in a Commit.\n            description: >-\n              Commit contains the evidence that a block was committed by a set\n              of validators.\n        description: |-\n          Block is tendermint type Block, with the Header proposer address\n          field converted to bech32 string.\n    description: >-\n      GetBlockByHeightResponse is the response type for the\n      Query/GetBlockByHeight\n\n      RPC method.\n  cosmos.base.tendermint.v1beta1.GetLatestBlockResponse:\n    type: object\n    properties:\n      block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      block:\n        title: 'Deprecated: please use `sdk_block` instead'\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                format: byte\n            description: Header defines the structure of a Tendermint block header.\n          data:\n            type: object\n            properties:\n              txs:\n                type: array\n                items:\n                  type: string\n                  format: byte\n                description: >-\n                  Txs that will be applied by state @ block.Height+1.\n\n                  NOTE: not all txs here are valid.  We're just agreeing on the\n                  order first.\n\n                  This means that block.AppHash does not include these txs.\n            title: Data contains the set of transactions included in the block\n          evidence:\n            type: object\n            properties:\n              evidence:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    duplicate_vote_evidence:\n                      type: object\n                      properties:\n                        vote_a:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        vote_b:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        validator_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        DuplicateVoteEvidence contains evidence of a validator\n                        signed two conflicting votes.\n                    light_client_attack_evidence:\n                      type: object\n                      properties:\n                        conflicting_block:\n                          type: object\n                          properties:\n                            signed_header:\n                              type: object\n                              properties:\n                                header:\n                                  type: object\n                                  properties:\n                                    version:\n                                      title: basic block info\n                                      type: object\n                                      properties:\n                                        block:\n                                          type: string\n                                          format: uint64\n                                        app:\n                                          type: string\n                                          format: uint64\n                                      description: >-\n                                        Consensus captures the consensus rules\n                                        for processing a block in the\n                                        blockchain,\n\n                                        including all blockchain data structures\n                                        and the rules of the application's\n\n                                        state transition machine.\n                                    chain_id:\n                                      type: string\n                                    height:\n                                      type: string\n                                      format: int64\n                                    time:\n                                      type: string\n                                      format: date-time\n                                    last_block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    last_commit_hash:\n                                      type: string\n                                      format: byte\n                                      title: hashes of block data\n                                    data_hash:\n                                      type: string\n                                      format: byte\n                                    validators_hash:\n                                      type: string\n                                      format: byte\n                                      title: >-\n                                        hashes from the app output from the prev\n                                        block\n                                    next_validators_hash:\n                                      type: string\n                                      format: byte\n                                    consensus_hash:\n                                      type: string\n                                      format: byte\n                                    app_hash:\n                                      type: string\n                                      format: byte\n                                    last_results_hash:\n                                      type: string\n                                      format: byte\n                                    evidence_hash:\n                                      type: string\n                                      format: byte\n                                      title: consensus info\n                                    proposer_address:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Header defines the structure of a Tendermint\n                                    block header.\n                                commit:\n                                  type: object\n                                  properties:\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    signatures:\n                                      type: array\n                                      items:\n                                        type: object\n                                        properties:\n                                          block_id_flag:\n                                            type: string\n                                            enum:\n                                              - BLOCK_ID_FLAG_UNKNOWN\n                                              - BLOCK_ID_FLAG_ABSENT\n                                              - BLOCK_ID_FLAG_COMMIT\n                                              - BLOCK_ID_FLAG_NIL\n                                            default: BLOCK_ID_FLAG_UNKNOWN\n                                            title: >-\n                                              BlockIdFlag indicates which BlcokID the\n                                              signature is for\n                                          validator_address:\n                                            type: string\n                                            format: byte\n                                          timestamp:\n                                            type: string\n                                            format: date-time\n                                          signature:\n                                            type: string\n                                            format: byte\n                                        description: >-\n                                          CommitSig is a part of the Vote included\n                                          in a Commit.\n                                  description: >-\n                                    Commit contains the evidence that a block\n                                    was committed by a set of validators.\n                            validator_set:\n                              type: object\n                              properties:\n                                validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                proposer:\n                                  type: object\n                                  properties:\n                                    address:\n                                      type: string\n                                      format: byte\n                                    pub_key:\n                                      type: object\n                                      properties:\n                                        ed25519:\n                                          type: string\n                                          format: byte\n                                        secp256k1:\n                                          type: string\n                                          format: byte\n                                      title: >-\n                                        PublicKey defines the keys available for\n                                        use with Tendermint Validators\n                                    voting_power:\n                                      type: string\n                                      format: int64\n                                    proposer_priority:\n                                      type: string\n                                      format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                        common_height:\n                          type: string\n                          format: int64\n                        byzantine_validators:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              address:\n                                type: string\n                                format: byte\n                              pub_key:\n                                type: object\n                                properties:\n                                  ed25519:\n                                    type: string\n                                    format: byte\n                                  secp256k1:\n                                    type: string\n                                    format: byte\n                                title: >-\n                                  PublicKey defines the keys available for use\n                                  with Tendermint Validators\n                              voting_power:\n                                type: string\n                                format: int64\n                              proposer_priority:\n                                type: string\n                                format: int64\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        LightClientAttackEvidence contains evidence of a set of\n                        validators attempting to mislead a light client.\n          last_commit:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              signatures:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    block_id_flag:\n                      type: string\n                      enum:\n                        - BLOCK_ID_FLAG_UNKNOWN\n                        - BLOCK_ID_FLAG_ABSENT\n                        - BLOCK_ID_FLAG_COMMIT\n                        - BLOCK_ID_FLAG_NIL\n                      default: BLOCK_ID_FLAG_UNKNOWN\n                      title: BlockIdFlag indicates which BlcokID the signature is for\n                    validator_address:\n                      type: string\n                      format: byte\n                    timestamp:\n                      type: string\n                      format: date-time\n                    signature:\n                      type: string\n                      format: byte\n                  description: CommitSig is a part of the Vote included in a Commit.\n            description: >-\n              Commit contains the evidence that a block was committed by a set\n              of validators.\n      sdk_block:\n        title: 'Since: cosmos-sdk 0.47'\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                description: >-\n                  proposer_address is the original block proposer address,\n                  formatted as a Bech32 string.\n\n                  In Tendermint, this type is `bytes`, but in the SDK, we\n                  convert it to a Bech32 string\n\n                  for better UX.\n            description: Header defines the structure of a Tendermint block header.\n          data:\n            type: object\n            properties:\n              txs:\n                type: array\n                items:\n                  type: string\n                  format: byte\n                description: >-\n                  Txs that will be applied by state @ block.Height+1.\n\n                  NOTE: not all txs here are valid.  We're just agreeing on the\n                  order first.\n\n                  This means that block.AppHash does not include these txs.\n            title: Data contains the set of transactions included in the block\n          evidence:\n            type: object\n            properties:\n              evidence:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    duplicate_vote_evidence:\n                      type: object\n                      properties:\n                        vote_a:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        vote_b:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        validator_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        DuplicateVoteEvidence contains evidence of a validator\n                        signed two conflicting votes.\n                    light_client_attack_evidence:\n                      type: object\n                      properties:\n                        conflicting_block:\n                          type: object\n                          properties:\n                            signed_header:\n                              type: object\n                              properties:\n                                header:\n                                  type: object\n                                  properties:\n                                    version:\n                                      title: basic block info\n                                      type: object\n                                      properties:\n                                        block:\n                                          type: string\n                                          format: uint64\n                                        app:\n                                          type: string\n                                          format: uint64\n                                      description: >-\n                                        Consensus captures the consensus rules\n                                        for processing a block in the\n                                        blockchain,\n\n                                        including all blockchain data structures\n                                        and the rules of the application's\n\n                                        state transition machine.\n                                    chain_id:\n                                      type: string\n                                    height:\n                                      type: string\n                                      format: int64\n                                    time:\n                                      type: string\n                                      format: date-time\n                                    last_block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    last_commit_hash:\n                                      type: string\n                                      format: byte\n                                      title: hashes of block data\n                                    data_hash:\n                                      type: string\n                                      format: byte\n                                    validators_hash:\n                                      type: string\n                                      format: byte\n                                      title: >-\n                                        hashes from the app output from the prev\n                                        block\n                                    next_validators_hash:\n                                      type: string\n                                      format: byte\n                                    consensus_hash:\n                                      type: string\n                                      format: byte\n                                    app_hash:\n                                      type: string\n                                      format: byte\n                                    last_results_hash:\n                                      type: string\n                                      format: byte\n                                    evidence_hash:\n                                      type: string\n                                      format: byte\n                                      title: consensus info\n                                    proposer_address:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Header defines the structure of a Tendermint\n                                    block header.\n                                commit:\n                                  type: object\n                                  properties:\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    signatures:\n                                      type: array\n                                      items:\n                                        type: object\n                                        properties:\n                                          block_id_flag:\n                                            type: string\n                                            enum:\n                                              - BLOCK_ID_FLAG_UNKNOWN\n                                              - BLOCK_ID_FLAG_ABSENT\n                                              - BLOCK_ID_FLAG_COMMIT\n                                              - BLOCK_ID_FLAG_NIL\n                                            default: BLOCK_ID_FLAG_UNKNOWN\n                                            title: >-\n                                              BlockIdFlag indicates which BlcokID the\n                                              signature is for\n                                          validator_address:\n                                            type: string\n                                            format: byte\n                                          timestamp:\n                                            type: string\n                                            format: date-time\n                                          signature:\n                                            type: string\n                                            format: byte\n                                        description: >-\n                                          CommitSig is a part of the Vote included\n                                          in a Commit.\n                                  description: >-\n                                    Commit contains the evidence that a block\n                                    was committed by a set of validators.\n                            validator_set:\n                              type: object\n                              properties:\n                                validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                proposer:\n                                  type: object\n                                  properties:\n                                    address:\n                                      type: string\n                                      format: byte\n                                    pub_key:\n                                      type: object\n                                      properties:\n                                        ed25519:\n                                          type: string\n                                          format: byte\n                                        secp256k1:\n                                          type: string\n                                          format: byte\n                                      title: >-\n                                        PublicKey defines the keys available for\n                                        use with Tendermint Validators\n                                    voting_power:\n                                      type: string\n                                      format: int64\n                                    proposer_priority:\n                                      type: string\n                                      format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                        common_height:\n                          type: string\n                          format: int64\n                        byzantine_validators:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              address:\n                                type: string\n                                format: byte\n                              pub_key:\n                                type: object\n                                properties:\n                                  ed25519:\n                                    type: string\n                                    format: byte\n                                  secp256k1:\n                                    type: string\n                                    format: byte\n                                title: >-\n                                  PublicKey defines the keys available for use\n                                  with Tendermint Validators\n                              voting_power:\n                                type: string\n                                format: int64\n                              proposer_priority:\n                                type: string\n                                format: int64\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        LightClientAttackEvidence contains evidence of a set of\n                        validators attempting to mislead a light client.\n          last_commit:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              signatures:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    block_id_flag:\n                      type: string\n                      enum:\n                        - BLOCK_ID_FLAG_UNKNOWN\n                        - BLOCK_ID_FLAG_ABSENT\n                        - BLOCK_ID_FLAG_COMMIT\n                        - BLOCK_ID_FLAG_NIL\n                      default: BLOCK_ID_FLAG_UNKNOWN\n                      title: BlockIdFlag indicates which BlcokID the signature is for\n                    validator_address:\n                      type: string\n                      format: byte\n                    timestamp:\n                      type: string\n                      format: date-time\n                    signature:\n                      type: string\n                      format: byte\n                  description: CommitSig is a part of the Vote included in a Commit.\n            description: >-\n              Commit contains the evidence that a block was committed by a set\n              of validators.\n        description: |-\n          Block is tendermint type Block, with the Header proposer address\n          field converted to bech32 string.\n    description: >-\n      GetLatestBlockResponse is the response type for the Query/GetLatestBlock\n      RPC\n\n      method.\n  cosmos.base.tendermint.v1beta1.GetLatestValidatorSetResponse:\n    type: object\n    properties:\n      block_height:\n        type: string\n        format: int64\n      validators:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n            pub_key:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            voting_power:\n              type: string\n              format: int64\n            proposer_priority:\n              type: string\n              format: int64\n          description: Validator is the type for the validator-set.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      GetLatestValidatorSetResponse is the response type for the\n      Query/GetValidatorSetByHeight RPC method.\n  cosmos.base.tendermint.v1beta1.GetNodeInfoResponse:\n    type: object\n    properties:\n      default_node_info:\n        type: object\n        properties:\n          protocol_version:\n            type: object\n            properties:\n              p2p:\n                type: string\n                format: uint64\n              block:\n                type: string\n                format: uint64\n              app:\n                type: string\n                format: uint64\n          default_node_id:\n            type: string\n          listen_addr:\n            type: string\n          network:\n            type: string\n          version:\n            type: string\n          channels:\n            type: string\n            format: byte\n          moniker:\n            type: string\n          other:\n            type: object\n            properties:\n              tx_index:\n                type: string\n              rpc_address:\n                type: string\n      application_version:\n        type: object\n        properties:\n          name:\n            type: string\n          app_name:\n            type: string\n          version:\n            type: string\n          git_commit:\n            type: string\n          build_tags:\n            type: string\n          go_version:\n            type: string\n          build_deps:\n            type: array\n            items:\n              type: object\n              properties:\n                path:\n                  type: string\n                  title: module path\n                version:\n                  type: string\n                  title: module version\n                sum:\n                  type: string\n                  title: checksum\n              title: Module is the type for VersionInfo\n          cosmos_sdk_version:\n            type: string\n            title: 'Since: cosmos-sdk 0.43'\n        description: VersionInfo is the type for the GetNodeInfoResponse message.\n    description: |-\n      GetNodeInfoResponse is the response type for the Query/GetNodeInfo RPC\n      method.\n  cosmos.base.tendermint.v1beta1.GetSyncingResponse:\n    type: object\n    properties:\n      syncing:\n        type: boolean\n    description: >-\n      GetSyncingResponse is the response type for the Query/GetSyncing RPC\n      method.\n  cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightResponse:\n    type: object\n    properties:\n      block_height:\n        type: string\n        format: int64\n      validators:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n            pub_key:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            voting_power:\n              type: string\n              format: int64\n            proposer_priority:\n              type: string\n              format: int64\n          description: Validator is the type for the validator-set.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      GetValidatorSetByHeightResponse is the response type for the\n      Query/GetValidatorSetByHeight RPC method.\n  cosmos.base.tendermint.v1beta1.Header:\n    type: object\n    properties:\n      version:\n        title: basic block info\n        type: object\n        properties:\n          block:\n            type: string\n            format: uint64\n          app:\n            type: string\n            format: uint64\n        description: >-\n          Consensus captures the consensus rules for processing a block in the\n          blockchain,\n\n          including all blockchain data structures and the rules of the\n          application's\n\n          state transition machine.\n      chain_id:\n        type: string\n      height:\n        type: string\n        format: int64\n      time:\n        type: string\n        format: date-time\n      last_block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      last_commit_hash:\n        type: string\n        format: byte\n        title: hashes of block data\n      data_hash:\n        type: string\n        format: byte\n      validators_hash:\n        type: string\n        format: byte\n        title: hashes from the app output from the prev block\n      next_validators_hash:\n        type: string\n        format: byte\n      consensus_hash:\n        type: string\n        format: byte\n      app_hash:\n        type: string\n        format: byte\n      last_results_hash:\n        type: string\n        format: byte\n      evidence_hash:\n        type: string\n        format: byte\n        title: consensus info\n      proposer_address:\n        type: string\n        description: >-\n          proposer_address is the original block proposer address, formatted as\n          a Bech32 string.\n\n          In Tendermint, this type is `bytes`, but in the SDK, we convert it to\n          a Bech32 string\n\n          for better UX.\n    description: Header defines the structure of a Tendermint block header.\n  cosmos.base.tendermint.v1beta1.Module:\n    type: object\n    properties:\n      path:\n        type: string\n        title: module path\n      version:\n        type: string\n        title: module version\n      sum:\n        type: string\n        title: checksum\n    title: Module is the type for VersionInfo\n  cosmos.base.tendermint.v1beta1.ProofOp:\n    type: object\n    properties:\n      type:\n        type: string\n      key:\n        type: string\n        format: byte\n      data:\n        type: string\n        format: byte\n    description: >-\n      ProofOp defines an operation used for calculating Merkle root. The data\n      could\n\n      be arbitrary format, providing nessecary data for example neighbouring\n      node\n\n      hash.\n\n\n      Note: This type is a duplicate of the ProofOp proto type defined in\n\n      Tendermint.\n  cosmos.base.tendermint.v1beta1.ProofOps:\n    type: object\n    properties:\n      ops:\n        type: array\n        items:\n          type: object\n          properties:\n            type:\n              type: string\n            key:\n              type: string\n              format: byte\n            data:\n              type: string\n              format: byte\n          description: >-\n            ProofOp defines an operation used for calculating Merkle root. The\n            data could\n\n            be arbitrary format, providing nessecary data for example\n            neighbouring node\n\n            hash.\n\n\n            Note: This type is a duplicate of the ProofOp proto type defined in\n\n            Tendermint.\n    description: |-\n      ProofOps is Merkle proof defined by the list of ProofOps.\n\n      Note: This type is a duplicate of the ProofOps proto type defined in\n      Tendermint.\n  cosmos.base.tendermint.v1beta1.Validator:\n    type: object\n    properties:\n      address:\n        type: string\n      pub_key:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      voting_power:\n        type: string\n        format: int64\n      proposer_priority:\n        type: string\n        format: int64\n    description: Validator is the type for the validator-set.\n  cosmos.base.tendermint.v1beta1.VersionInfo:\n    type: object\n    properties:\n      name:\n        type: string\n      app_name:\n        type: string\n      version:\n        type: string\n      git_commit:\n        type: string\n      build_tags:\n        type: string\n      go_version:\n        type: string\n      build_deps:\n        type: array\n        items:\n          type: object\n          properties:\n            path:\n              type: string\n              title: module path\n            version:\n              type: string\n              title: module version\n            sum:\n              type: string\n              title: checksum\n          title: Module is the type for VersionInfo\n      cosmos_sdk_version:\n        type: string\n        title: 'Since: cosmos-sdk 0.43'\n    description: VersionInfo is the type for the GetNodeInfoResponse message.\n  tendermint.crypto.PublicKey:\n    type: object\n    properties:\n      ed25519:\n        type: string\n        format: byte\n      secp256k1:\n        type: string\n        format: byte\n    title: PublicKey defines the keys available for use with Tendermint Validators\n  tendermint.p2p.DefaultNodeInfo:\n    type: object\n    properties:\n      protocol_version:\n        type: object\n        properties:\n          p2p:\n            type: string\n            format: uint64\n          block:\n            type: string\n            format: uint64\n          app:\n            type: string\n            format: uint64\n      default_node_id:\n        type: string\n      listen_addr:\n        type: string\n      network:\n        type: string\n      version:\n        type: string\n      channels:\n        type: string\n        format: byte\n      moniker:\n        type: string\n      other:\n        type: object\n        properties:\n          tx_index:\n            type: string\n          rpc_address:\n            type: string\n  tendermint.p2p.DefaultNodeInfoOther:\n    type: object\n    properties:\n      tx_index:\n        type: string\n      rpc_address:\n        type: string\n  tendermint.p2p.ProtocolVersion:\n    type: object\n    properties:\n      p2p:\n        type: string\n        format: uint64\n      block:\n        type: string\n        format: uint64\n      app:\n        type: string\n        format: uint64\n  tendermint.types.Block:\n    type: object\n    properties:\n      header:\n        type: object\n        properties:\n          version:\n            title: basic block info\n            type: object\n            properties:\n              block:\n                type: string\n                format: uint64\n              app:\n                type: string\n                format: uint64\n            description: >-\n              Consensus captures the consensus rules for processing a block in\n              the blockchain,\n\n              including all blockchain data structures and the rules of the\n              application's\n\n              state transition machine.\n          chain_id:\n            type: string\n          height:\n            type: string\n            format: int64\n          time:\n            type: string\n            format: date-time\n          last_block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          last_commit_hash:\n            type: string\n            format: byte\n            title: hashes of block data\n          data_hash:\n            type: string\n            format: byte\n          validators_hash:\n            type: string\n            format: byte\n            title: hashes from the app output from the prev block\n          next_validators_hash:\n            type: string\n            format: byte\n          consensus_hash:\n            type: string\n            format: byte\n          app_hash:\n            type: string\n            format: byte\n          last_results_hash:\n            type: string\n            format: byte\n          evidence_hash:\n            type: string\n            format: byte\n            title: consensus info\n          proposer_address:\n            type: string\n            format: byte\n        description: Header defines the structure of a Tendermint block header.\n      data:\n        type: object\n        properties:\n          txs:\n            type: array\n            items:\n              type: string\n              format: byte\n            description: >-\n              Txs that will be applied by state @ block.Height+1.\n\n              NOTE: not all txs here are valid.  We're just agreeing on the\n              order first.\n\n              This means that block.AppHash does not include these txs.\n        title: Data contains the set of transactions included in the block\n      evidence:\n        type: object\n        properties:\n          evidence:\n            type: array\n            items:\n              type: object\n              properties:\n                duplicate_vote_evidence:\n                  type: object\n                  properties:\n                    vote_a:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                          enum:\n                            - SIGNED_MSG_TYPE_UNKNOWN\n                            - SIGNED_MSG_TYPE_PREVOTE\n                            - SIGNED_MSG_TYPE_PRECOMMIT\n                            - SIGNED_MSG_TYPE_PROPOSAL\n                          default: SIGNED_MSG_TYPE_UNKNOWN\n                          description: >-\n                            SignedMsgType is a type of signed message in the\n                            consensus.\n\n                             - SIGNED_MSG_TYPE_PREVOTE: Votes\n                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                        height:\n                          type: string\n                          format: int64\n                        round:\n                          type: integer\n                          format: int32\n                        block_id:\n                          type: object\n                          properties:\n                            hash:\n                              type: string\n                              format: byte\n                            part_set_header:\n                              type: object\n                              properties:\n                                total:\n                                  type: integer\n                                  format: int64\n                                hash:\n                                  type: string\n                                  format: byte\n                              title: PartsetHeader\n                          title: BlockID\n                        timestamp:\n                          type: string\n                          format: date-time\n                        validator_address:\n                          type: string\n                          format: byte\n                        validator_index:\n                          type: integer\n                          format: int32\n                        signature:\n                          type: string\n                          format: byte\n                      description: >-\n                        Vote represents a prevote, precommit, or commit vote\n                        from validators for\n\n                        consensus.\n                    vote_b:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                          enum:\n                            - SIGNED_MSG_TYPE_UNKNOWN\n                            - SIGNED_MSG_TYPE_PREVOTE\n                            - SIGNED_MSG_TYPE_PRECOMMIT\n                            - SIGNED_MSG_TYPE_PROPOSAL\n                          default: SIGNED_MSG_TYPE_UNKNOWN\n                          description: >-\n                            SignedMsgType is a type of signed message in the\n                            consensus.\n\n                             - SIGNED_MSG_TYPE_PREVOTE: Votes\n                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                        height:\n                          type: string\n                          format: int64\n                        round:\n                          type: integer\n                          format: int32\n                        block_id:\n                          type: object\n                          properties:\n                            hash:\n                              type: string\n                              format: byte\n                            part_set_header:\n                              type: object\n                              properties:\n                                total:\n                                  type: integer\n                                  format: int64\n                                hash:\n                                  type: string\n                                  format: byte\n                              title: PartsetHeader\n                          title: BlockID\n                        timestamp:\n                          type: string\n                          format: date-time\n                        validator_address:\n                          type: string\n                          format: byte\n                        validator_index:\n                          type: integer\n                          format: int32\n                        signature:\n                          type: string\n                          format: byte\n                      description: >-\n                        Vote represents a prevote, precommit, or commit vote\n                        from validators for\n\n                        consensus.\n                    total_voting_power:\n                      type: string\n                      format: int64\n                    validator_power:\n                      type: string\n                      format: int64\n                    timestamp:\n                      type: string\n                      format: date-time\n                  description: >-\n                    DuplicateVoteEvidence contains evidence of a validator\n                    signed two conflicting votes.\n                light_client_attack_evidence:\n                  type: object\n                  properties:\n                    conflicting_block:\n                      type: object\n                      properties:\n                        signed_header:\n                          type: object\n                          properties:\n                            header:\n                              type: object\n                              properties:\n                                version:\n                                  title: basic block info\n                                  type: object\n                                  properties:\n                                    block:\n                                      type: string\n                                      format: uint64\n                                    app:\n                                      type: string\n                                      format: uint64\n                                  description: >-\n                                    Consensus captures the consensus rules for\n                                    processing a block in the blockchain,\n\n                                    including all blockchain data structures and\n                                    the rules of the application's\n\n                                    state transition machine.\n                                chain_id:\n                                  type: string\n                                height:\n                                  type: string\n                                  format: int64\n                                time:\n                                  type: string\n                                  format: date-time\n                                last_block_id:\n                                  type: object\n                                  properties:\n                                    hash:\n                                      type: string\n                                      format: byte\n                                    part_set_header:\n                                      type: object\n                                      properties:\n                                        total:\n                                          type: integer\n                                          format: int64\n                                        hash:\n                                          type: string\n                                          format: byte\n                                      title: PartsetHeader\n                                  title: BlockID\n                                last_commit_hash:\n                                  type: string\n                                  format: byte\n                                  title: hashes of block data\n                                data_hash:\n                                  type: string\n                                  format: byte\n                                validators_hash:\n                                  type: string\n                                  format: byte\n                                  title: >-\n                                    hashes from the app output from the prev\n                                    block\n                                next_validators_hash:\n                                  type: string\n                                  format: byte\n                                consensus_hash:\n                                  type: string\n                                  format: byte\n                                app_hash:\n                                  type: string\n                                  format: byte\n                                last_results_hash:\n                                  type: string\n                                  format: byte\n                                evidence_hash:\n                                  type: string\n                                  format: byte\n                                  title: consensus info\n                                proposer_address:\n                                  type: string\n                                  format: byte\n                              description: >-\n                                Header defines the structure of a Tendermint\n                                block header.\n                            commit:\n                              type: object\n                              properties:\n                                height:\n                                  type: string\n                                  format: int64\n                                round:\n                                  type: integer\n                                  format: int32\n                                block_id:\n                                  type: object\n                                  properties:\n                                    hash:\n                                      type: string\n                                      format: byte\n                                    part_set_header:\n                                      type: object\n                                      properties:\n                                        total:\n                                          type: integer\n                                          format: int64\n                                        hash:\n                                          type: string\n                                          format: byte\n                                      title: PartsetHeader\n                                  title: BlockID\n                                signatures:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      block_id_flag:\n                                        type: string\n                                        enum:\n                                          - BLOCK_ID_FLAG_UNKNOWN\n                                          - BLOCK_ID_FLAG_ABSENT\n                                          - BLOCK_ID_FLAG_COMMIT\n                                          - BLOCK_ID_FLAG_NIL\n                                        default: BLOCK_ID_FLAG_UNKNOWN\n                                        title: >-\n                                          BlockIdFlag indicates which BlcokID the\n                                          signature is for\n                                      validator_address:\n                                        type: string\n                                        format: byte\n                                      timestamp:\n                                        type: string\n                                        format: date-time\n                                      signature:\n                                        type: string\n                                        format: byte\n                                    description: >-\n                                      CommitSig is a part of the Vote included\n                                      in a Commit.\n                              description: >-\n                                Commit contains the evidence that a block was\n                                committed by a set of validators.\n                        validator_set:\n                          type: object\n                          properties:\n                            validators:\n                              type: array\n                              items:\n                                type: object\n                                properties:\n                                  address:\n                                    type: string\n                                    format: byte\n                                  pub_key:\n                                    type: object\n                                    properties:\n                                      ed25519:\n                                        type: string\n                                        format: byte\n                                      secp256k1:\n                                        type: string\n                                        format: byte\n                                    title: >-\n                                      PublicKey defines the keys available for\n                                      use with Tendermint Validators\n                                  voting_power:\n                                    type: string\n                                    format: int64\n                                  proposer_priority:\n                                    type: string\n                                    format: int64\n                            proposer:\n                              type: object\n                              properties:\n                                address:\n                                  type: string\n                                  format: byte\n                                pub_key:\n                                  type: object\n                                  properties:\n                                    ed25519:\n                                      type: string\n                                      format: byte\n                                    secp256k1:\n                                      type: string\n                                      format: byte\n                                  title: >-\n                                    PublicKey defines the keys available for use\n                                    with Tendermint Validators\n                                voting_power:\n                                  type: string\n                                  format: int64\n                                proposer_priority:\n                                  type: string\n                                  format: int64\n                            total_voting_power:\n                              type: string\n                              format: int64\n                    common_height:\n                      type: string\n                      format: int64\n                    byzantine_validators:\n                      type: array\n                      items:\n                        type: object\n                        properties:\n                          address:\n                            type: string\n                            format: byte\n                          pub_key:\n                            type: object\n                            properties:\n                              ed25519:\n                                type: string\n                                format: byte\n                              secp256k1:\n                                type: string\n                                format: byte\n                            title: >-\n                              PublicKey defines the keys available for use with\n                              Tendermint Validators\n                          voting_power:\n                            type: string\n                            format: int64\n                          proposer_priority:\n                            type: string\n                            format: int64\n                    total_voting_power:\n                      type: string\n                      format: int64\n                    timestamp:\n                      type: string\n                      format: date-time\n                  description: >-\n                    LightClientAttackEvidence contains evidence of a set of\n                    validators attempting to mislead a light client.\n      last_commit:\n        type: object\n        properties:\n          height:\n            type: string\n            format: int64\n          round:\n            type: integer\n            format: int32\n          block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          signatures:\n            type: array\n            items:\n              type: object\n              properties:\n                block_id_flag:\n                  type: string\n                  enum:\n                    - BLOCK_ID_FLAG_UNKNOWN\n                    - BLOCK_ID_FLAG_ABSENT\n                    - BLOCK_ID_FLAG_COMMIT\n                    - BLOCK_ID_FLAG_NIL\n                  default: BLOCK_ID_FLAG_UNKNOWN\n                  title: BlockIdFlag indicates which BlcokID the signature is for\n                validator_address:\n                  type: string\n                  format: byte\n                timestamp:\n                  type: string\n                  format: date-time\n                signature:\n                  type: string\n                  format: byte\n              description: CommitSig is a part of the Vote included in a Commit.\n        description: >-\n          Commit contains the evidence that a block was committed by a set of\n          validators.\n  tendermint.types.BlockID:\n    type: object\n    properties:\n      hash:\n        type: string\n        format: byte\n      part_set_header:\n        type: object\n        properties:\n          total:\n            type: integer\n            format: int64\n          hash:\n            type: string\n            format: byte\n        title: PartsetHeader\n    title: BlockID\n  tendermint.types.BlockIDFlag:\n    type: string\n    enum:\n      - BLOCK_ID_FLAG_UNKNOWN\n      - BLOCK_ID_FLAG_ABSENT\n      - BLOCK_ID_FLAG_COMMIT\n      - BLOCK_ID_FLAG_NIL\n    default: BLOCK_ID_FLAG_UNKNOWN\n    title: BlockIdFlag indicates which BlcokID the signature is for\n  tendermint.types.Commit:\n    type: object\n    properties:\n      height:\n        type: string\n        format: int64\n      round:\n        type: integer\n        format: int32\n      block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      signatures:\n        type: array\n        items:\n          type: object\n          properties:\n            block_id_flag:\n              type: string\n              enum:\n                - BLOCK_ID_FLAG_UNKNOWN\n                - BLOCK_ID_FLAG_ABSENT\n                - BLOCK_ID_FLAG_COMMIT\n                - BLOCK_ID_FLAG_NIL\n              default: BLOCK_ID_FLAG_UNKNOWN\n              title: BlockIdFlag indicates which BlcokID the signature is for\n            validator_address:\n              type: string\n              format: byte\n            timestamp:\n              type: string\n              format: date-time\n            signature:\n              type: string\n              format: byte\n          description: CommitSig is a part of the Vote included in a Commit.\n    description: >-\n      Commit contains the evidence that a block was committed by a set of\n      validators.\n  tendermint.types.CommitSig:\n    type: object\n    properties:\n      block_id_flag:\n        type: string\n        enum:\n          - BLOCK_ID_FLAG_UNKNOWN\n          - BLOCK_ID_FLAG_ABSENT\n          - BLOCK_ID_FLAG_COMMIT\n          - BLOCK_ID_FLAG_NIL\n        default: BLOCK_ID_FLAG_UNKNOWN\n        title: BlockIdFlag indicates which BlcokID the signature is for\n      validator_address:\n        type: string\n        format: byte\n      timestamp:\n        type: string\n        format: date-time\n      signature:\n        type: string\n        format: byte\n    description: CommitSig is a part of the Vote included in a Commit.\n  tendermint.types.Data:\n    type: object\n    properties:\n      txs:\n        type: array\n        items:\n          type: string\n          format: byte\n        description: >-\n          Txs that will be applied by state @ block.Height+1.\n\n          NOTE: not all txs here are valid.  We're just agreeing on the order\n          first.\n\n          This means that block.AppHash does not include these txs.\n    title: Data contains the set of transactions included in the block\n  tendermint.types.DuplicateVoteEvidence:\n    type: object\n    properties:\n      vote_a:\n        type: object\n        properties:\n          type:\n            type: string\n            enum:\n              - SIGNED_MSG_TYPE_UNKNOWN\n              - SIGNED_MSG_TYPE_PREVOTE\n              - SIGNED_MSG_TYPE_PRECOMMIT\n              - SIGNED_MSG_TYPE_PROPOSAL\n            default: SIGNED_MSG_TYPE_UNKNOWN\n            description: |-\n              SignedMsgType is a type of signed message in the consensus.\n\n               - SIGNED_MSG_TYPE_PREVOTE: Votes\n               - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n          height:\n            type: string\n            format: int64\n          round:\n            type: integer\n            format: int32\n          block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          timestamp:\n            type: string\n            format: date-time\n          validator_address:\n            type: string\n            format: byte\n          validator_index:\n            type: integer\n            format: int32\n          signature:\n            type: string\n            format: byte\n        description: >-\n          Vote represents a prevote, precommit, or commit vote from validators\n          for\n\n          consensus.\n      vote_b:\n        type: object\n        properties:\n          type:\n            type: string\n            enum:\n              - SIGNED_MSG_TYPE_UNKNOWN\n              - SIGNED_MSG_TYPE_PREVOTE\n              - SIGNED_MSG_TYPE_PRECOMMIT\n              - SIGNED_MSG_TYPE_PROPOSAL\n            default: SIGNED_MSG_TYPE_UNKNOWN\n            description: |-\n              SignedMsgType is a type of signed message in the consensus.\n\n               - SIGNED_MSG_TYPE_PREVOTE: Votes\n               - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n          height:\n            type: string\n            format: int64\n          round:\n            type: integer\n            format: int32\n          block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          timestamp:\n            type: string\n            format: date-time\n          validator_address:\n            type: string\n            format: byte\n          validator_index:\n            type: integer\n            format: int32\n          signature:\n            type: string\n            format: byte\n        description: >-\n          Vote represents a prevote, precommit, or commit vote from validators\n          for\n\n          consensus.\n      total_voting_power:\n        type: string\n        format: int64\n      validator_power:\n        type: string\n        format: int64\n      timestamp:\n        type: string\n        format: date-time\n    description: >-\n      DuplicateVoteEvidence contains evidence of a validator signed two\n      conflicting votes.\n  tendermint.types.Evidence:\n    type: object\n    properties:\n      duplicate_vote_evidence:\n        type: object\n        properties:\n          vote_a:\n            type: object\n            properties:\n              type:\n                type: string\n                enum:\n                  - SIGNED_MSG_TYPE_UNKNOWN\n                  - SIGNED_MSG_TYPE_PREVOTE\n                  - SIGNED_MSG_TYPE_PRECOMMIT\n                  - SIGNED_MSG_TYPE_PROPOSAL\n                default: SIGNED_MSG_TYPE_UNKNOWN\n                description: |-\n                  SignedMsgType is a type of signed message in the consensus.\n\n                   - SIGNED_MSG_TYPE_PREVOTE: Votes\n                   - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              timestamp:\n                type: string\n                format: date-time\n              validator_address:\n                type: string\n                format: byte\n              validator_index:\n                type: integer\n                format: int32\n              signature:\n                type: string\n                format: byte\n            description: >-\n              Vote represents a prevote, precommit, or commit vote from\n              validators for\n\n              consensus.\n          vote_b:\n            type: object\n            properties:\n              type:\n                type: string\n                enum:\n                  - SIGNED_MSG_TYPE_UNKNOWN\n                  - SIGNED_MSG_TYPE_PREVOTE\n                  - SIGNED_MSG_TYPE_PRECOMMIT\n                  - SIGNED_MSG_TYPE_PROPOSAL\n                default: SIGNED_MSG_TYPE_UNKNOWN\n                description: |-\n                  SignedMsgType is a type of signed message in the consensus.\n\n                   - SIGNED_MSG_TYPE_PREVOTE: Votes\n                   - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              timestamp:\n                type: string\n                format: date-time\n              validator_address:\n                type: string\n                format: byte\n              validator_index:\n                type: integer\n                format: int32\n              signature:\n                type: string\n                format: byte\n            description: >-\n              Vote represents a prevote, precommit, or commit vote from\n              validators for\n\n              consensus.\n          total_voting_power:\n            type: string\n            format: int64\n          validator_power:\n            type: string\n            format: int64\n          timestamp:\n            type: string\n            format: date-time\n        description: >-\n          DuplicateVoteEvidence contains evidence of a validator signed two\n          conflicting votes.\n      light_client_attack_evidence:\n        type: object\n        properties:\n          conflicting_block:\n            type: object\n            properties:\n              signed_header:\n                type: object\n                properties:\n                  header:\n                    type: object\n                    properties:\n                      version:\n                        title: basic block info\n                        type: object\n                        properties:\n                          block:\n                            type: string\n                            format: uint64\n                          app:\n                            type: string\n                            format: uint64\n                        description: >-\n                          Consensus captures the consensus rules for processing\n                          a block in the blockchain,\n\n                          including all blockchain data structures and the rules\n                          of the application's\n\n                          state transition machine.\n                      chain_id:\n                        type: string\n                      height:\n                        type: string\n                        format: int64\n                      time:\n                        type: string\n                        format: date-time\n                      last_block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      last_commit_hash:\n                        type: string\n                        format: byte\n                        title: hashes of block data\n                      data_hash:\n                        type: string\n                        format: byte\n                      validators_hash:\n                        type: string\n                        format: byte\n                        title: hashes from the app output from the prev block\n                      next_validators_hash:\n                        type: string\n                        format: byte\n                      consensus_hash:\n                        type: string\n                        format: byte\n                      app_hash:\n                        type: string\n                        format: byte\n                      last_results_hash:\n                        type: string\n                        format: byte\n                      evidence_hash:\n                        type: string\n                        format: byte\n                        title: consensus info\n                      proposer_address:\n                        type: string\n                        format: byte\n                    description: Header defines the structure of a Tendermint block header.\n                  commit:\n                    type: object\n                    properties:\n                      height:\n                        type: string\n                        format: int64\n                      round:\n                        type: integer\n                        format: int32\n                      block_id:\n                        type: object\n                        properties:\n                          hash:\n                            type: string\n                            format: byte\n                          part_set_header:\n                            type: object\n                            properties:\n                              total:\n                                type: integer\n                                format: int64\n                              hash:\n                                type: string\n                                format: byte\n                            title: PartsetHeader\n                        title: BlockID\n                      signatures:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            block_id_flag:\n                              type: string\n                              enum:\n                                - BLOCK_ID_FLAG_UNKNOWN\n                                - BLOCK_ID_FLAG_ABSENT\n                                - BLOCK_ID_FLAG_COMMIT\n                                - BLOCK_ID_FLAG_NIL\n                              default: BLOCK_ID_FLAG_UNKNOWN\n                              title: >-\n                                BlockIdFlag indicates which BlcokID the\n                                signature is for\n                            validator_address:\n                              type: string\n                              format: byte\n                            timestamp:\n                              type: string\n                              format: date-time\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            CommitSig is a part of the Vote included in a\n                            Commit.\n                    description: >-\n                      Commit contains the evidence that a block was committed by\n                      a set of validators.\n              validator_set:\n                type: object\n                properties:\n                  validators:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        address:\n                          type: string\n                          format: byte\n                        pub_key:\n                          type: object\n                          properties:\n                            ed25519:\n                              type: string\n                              format: byte\n                            secp256k1:\n                              type: string\n                              format: byte\n                          title: >-\n                            PublicKey defines the keys available for use with\n                            Tendermint Validators\n                        voting_power:\n                          type: string\n                          format: int64\n                        proposer_priority:\n                          type: string\n                          format: int64\n                  proposer:\n                    type: object\n                    properties:\n                      address:\n                        type: string\n                        format: byte\n                      pub_key:\n                        type: object\n                        properties:\n                          ed25519:\n                            type: string\n                            format: byte\n                          secp256k1:\n                            type: string\n                            format: byte\n                        title: >-\n                          PublicKey defines the keys available for use with\n                          Tendermint Validators\n                      voting_power:\n                        type: string\n                        format: int64\n                      proposer_priority:\n                        type: string\n                        format: int64\n                  total_voting_power:\n                    type: string\n                    format: int64\n          common_height:\n            type: string\n            format: int64\n          byzantine_validators:\n            type: array\n            items:\n              type: object\n              properties:\n                address:\n                  type: string\n                  format: byte\n                pub_key:\n                  type: object\n                  properties:\n                    ed25519:\n                      type: string\n                      format: byte\n                    secp256k1:\n                      type: string\n                      format: byte\n                  title: >-\n                    PublicKey defines the keys available for use with Tendermint\n                    Validators\n                voting_power:\n                  type: string\n                  format: int64\n                proposer_priority:\n                  type: string\n                  format: int64\n          total_voting_power:\n            type: string\n            format: int64\n          timestamp:\n            type: string\n            format: date-time\n        description: >-\n          LightClientAttackEvidence contains evidence of a set of validators\n          attempting to mislead a light client.\n  tendermint.types.EvidenceList:\n    type: object\n    properties:\n      evidence:\n        type: array\n        items:\n          type: object\n          properties:\n            duplicate_vote_evidence:\n              type: object\n              properties:\n                vote_a:\n                  type: object\n                  properties:\n                    type:\n                      type: string\n                      enum:\n                        - SIGNED_MSG_TYPE_UNKNOWN\n                        - SIGNED_MSG_TYPE_PREVOTE\n                        - SIGNED_MSG_TYPE_PRECOMMIT\n                        - SIGNED_MSG_TYPE_PROPOSAL\n                      default: SIGNED_MSG_TYPE_UNKNOWN\n                      description: >-\n                        SignedMsgType is a type of signed message in the\n                        consensus.\n\n                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                    height:\n                      type: string\n                      format: int64\n                    round:\n                      type: integer\n                      format: int32\n                    block_id:\n                      type: object\n                      properties:\n                        hash:\n                          type: string\n                          format: byte\n                        part_set_header:\n                          type: object\n                          properties:\n                            total:\n                              type: integer\n                              format: int64\n                            hash:\n                              type: string\n                              format: byte\n                          title: PartsetHeader\n                      title: BlockID\n                    timestamp:\n                      type: string\n                      format: date-time\n                    validator_address:\n                      type: string\n                      format: byte\n                    validator_index:\n                      type: integer\n                      format: int32\n                    signature:\n                      type: string\n                      format: byte\n                  description: >-\n                    Vote represents a prevote, precommit, or commit vote from\n                    validators for\n\n                    consensus.\n                vote_b:\n                  type: object\n                  properties:\n                    type:\n                      type: string\n                      enum:\n                        - SIGNED_MSG_TYPE_UNKNOWN\n                        - SIGNED_MSG_TYPE_PREVOTE\n                        - SIGNED_MSG_TYPE_PRECOMMIT\n                        - SIGNED_MSG_TYPE_PROPOSAL\n                      default: SIGNED_MSG_TYPE_UNKNOWN\n                      description: >-\n                        SignedMsgType is a type of signed message in the\n                        consensus.\n\n                         - SIGNED_MSG_TYPE_PREVOTE: Votes\n                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                    height:\n                      type: string\n                      format: int64\n                    round:\n                      type: integer\n                      format: int32\n                    block_id:\n                      type: object\n                      properties:\n                        hash:\n                          type: string\n                          format: byte\n                        part_set_header:\n                          type: object\n                          properties:\n                            total:\n                              type: integer\n                              format: int64\n                            hash:\n                              type: string\n                              format: byte\n                          title: PartsetHeader\n                      title: BlockID\n                    timestamp:\n                      type: string\n                      format: date-time\n                    validator_address:\n                      type: string\n                      format: byte\n                    validator_index:\n                      type: integer\n                      format: int32\n                    signature:\n                      type: string\n                      format: byte\n                  description: >-\n                    Vote represents a prevote, precommit, or commit vote from\n                    validators for\n\n                    consensus.\n                total_voting_power:\n                  type: string\n                  format: int64\n                validator_power:\n                  type: string\n                  format: int64\n                timestamp:\n                  type: string\n                  format: date-time\n              description: >-\n                DuplicateVoteEvidence contains evidence of a validator signed\n                two conflicting votes.\n            light_client_attack_evidence:\n              type: object\n              properties:\n                conflicting_block:\n                  type: object\n                  properties:\n                    signed_header:\n                      type: object\n                      properties:\n                        header:\n                          type: object\n                          properties:\n                            version:\n                              title: basic block info\n                              type: object\n                              properties:\n                                block:\n                                  type: string\n                                  format: uint64\n                                app:\n                                  type: string\n                                  format: uint64\n                              description: >-\n                                Consensus captures the consensus rules for\n                                processing a block in the blockchain,\n\n                                including all blockchain data structures and the\n                                rules of the application's\n\n                                state transition machine.\n                            chain_id:\n                              type: string\n                            height:\n                              type: string\n                              format: int64\n                            time:\n                              type: string\n                              format: date-time\n                            last_block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            last_commit_hash:\n                              type: string\n                              format: byte\n                              title: hashes of block data\n                            data_hash:\n                              type: string\n                              format: byte\n                            validators_hash:\n                              type: string\n                              format: byte\n                              title: hashes from the app output from the prev block\n                            next_validators_hash:\n                              type: string\n                              format: byte\n                            consensus_hash:\n                              type: string\n                              format: byte\n                            app_hash:\n                              type: string\n                              format: byte\n                            last_results_hash:\n                              type: string\n                              format: byte\n                            evidence_hash:\n                              type: string\n                              format: byte\n                              title: consensus info\n                            proposer_address:\n                              type: string\n                              format: byte\n                          description: >-\n                            Header defines the structure of a Tendermint block\n                            header.\n                        commit:\n                          type: object\n                          properties:\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            signatures:\n                              type: array\n                              items:\n                                type: object\n                                properties:\n                                  block_id_flag:\n                                    type: string\n                                    enum:\n                                      - BLOCK_ID_FLAG_UNKNOWN\n                                      - BLOCK_ID_FLAG_ABSENT\n                                      - BLOCK_ID_FLAG_COMMIT\n                                      - BLOCK_ID_FLAG_NIL\n                                    default: BLOCK_ID_FLAG_UNKNOWN\n                                    title: >-\n                                      BlockIdFlag indicates which BlcokID the\n                                      signature is for\n                                  validator_address:\n                                    type: string\n                                    format: byte\n                                  timestamp:\n                                    type: string\n                                    format: date-time\n                                  signature:\n                                    type: string\n                                    format: byte\n                                description: >-\n                                  CommitSig is a part of the Vote included in a\n                                  Commit.\n                          description: >-\n                            Commit contains the evidence that a block was\n                            committed by a set of validators.\n                    validator_set:\n                      type: object\n                      properties:\n                        validators:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              address:\n                                type: string\n                                format: byte\n                              pub_key:\n                                type: object\n                                properties:\n                                  ed25519:\n                                    type: string\n                                    format: byte\n                                  secp256k1:\n                                    type: string\n                                    format: byte\n                                title: >-\n                                  PublicKey defines the keys available for use\n                                  with Tendermint Validators\n                              voting_power:\n                                type: string\n                                format: int64\n                              proposer_priority:\n                                type: string\n                                format: int64\n                        proposer:\n                          type: object\n                          properties:\n                            address:\n                              type: string\n                              format: byte\n                            pub_key:\n                              type: object\n                              properties:\n                                ed25519:\n                                  type: string\n                                  format: byte\n                                secp256k1:\n                                  type: string\n                                  format: byte\n                              title: >-\n                                PublicKey defines the keys available for use\n                                with Tendermint Validators\n                            voting_power:\n                              type: string\n                              format: int64\n                            proposer_priority:\n                              type: string\n                              format: int64\n                        total_voting_power:\n                          type: string\n                          format: int64\n                common_height:\n                  type: string\n                  format: int64\n                byzantine_validators:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      address:\n                        type: string\n                        format: byte\n                      pub_key:\n                        type: object\n                        properties:\n                          ed25519:\n                            type: string\n                            format: byte\n                          secp256k1:\n                            type: string\n                            format: byte\n                        title: >-\n                          PublicKey defines the keys available for use with\n                          Tendermint Validators\n                      voting_power:\n                        type: string\n                        format: int64\n                      proposer_priority:\n                        type: string\n                        format: int64\n                total_voting_power:\n                  type: string\n                  format: int64\n                timestamp:\n                  type: string\n                  format: date-time\n              description: >-\n                LightClientAttackEvidence contains evidence of a set of\n                validators attempting to mislead a light client.\n  tendermint.types.Header:\n    type: object\n    properties:\n      version:\n        title: basic block info\n        type: object\n        properties:\n          block:\n            type: string\n            format: uint64\n          app:\n            type: string\n            format: uint64\n        description: >-\n          Consensus captures the consensus rules for processing a block in the\n          blockchain,\n\n          including all blockchain data structures and the rules of the\n          application's\n\n          state transition machine.\n      chain_id:\n        type: string\n      height:\n        type: string\n        format: int64\n      time:\n        type: string\n        format: date-time\n      last_block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      last_commit_hash:\n        type: string\n        format: byte\n        title: hashes of block data\n      data_hash:\n        type: string\n        format: byte\n      validators_hash:\n        type: string\n        format: byte\n        title: hashes from the app output from the prev block\n      next_validators_hash:\n        type: string\n        format: byte\n      consensus_hash:\n        type: string\n        format: byte\n      app_hash:\n        type: string\n        format: byte\n      last_results_hash:\n        type: string\n        format: byte\n      evidence_hash:\n        type: string\n        format: byte\n        title: consensus info\n      proposer_address:\n        type: string\n        format: byte\n    description: Header defines the structure of a Tendermint block header.\n  tendermint.types.LightBlock:\n    type: object\n    properties:\n      signed_header:\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                format: byte\n            description: Header defines the structure of a Tendermint block header.\n          commit:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              signatures:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    block_id_flag:\n                      type: string\n                      enum:\n                        - BLOCK_ID_FLAG_UNKNOWN\n                        - BLOCK_ID_FLAG_ABSENT\n                        - BLOCK_ID_FLAG_COMMIT\n                        - BLOCK_ID_FLAG_NIL\n                      default: BLOCK_ID_FLAG_UNKNOWN\n                      title: BlockIdFlag indicates which BlcokID the signature is for\n                    validator_address:\n                      type: string\n                      format: byte\n                    timestamp:\n                      type: string\n                      format: date-time\n                    signature:\n                      type: string\n                      format: byte\n                  description: CommitSig is a part of the Vote included in a Commit.\n            description: >-\n              Commit contains the evidence that a block was committed by a set\n              of validators.\n      validator_set:\n        type: object\n        properties:\n          validators:\n            type: array\n            items:\n              type: object\n              properties:\n                address:\n                  type: string\n                  format: byte\n                pub_key:\n                  type: object\n                  properties:\n                    ed25519:\n                      type: string\n                      format: byte\n                    secp256k1:\n                      type: string\n                      format: byte\n                  title: >-\n                    PublicKey defines the keys available for use with Tendermint\n                    Validators\n                voting_power:\n                  type: string\n                  format: int64\n                proposer_priority:\n                  type: string\n                  format: int64\n          proposer:\n            type: object\n            properties:\n              address:\n                type: string\n                format: byte\n              pub_key:\n                type: object\n                properties:\n                  ed25519:\n                    type: string\n                    format: byte\n                  secp256k1:\n                    type: string\n                    format: byte\n                title: >-\n                  PublicKey defines the keys available for use with Tendermint\n                  Validators\n              voting_power:\n                type: string\n                format: int64\n              proposer_priority:\n                type: string\n                format: int64\n          total_voting_power:\n            type: string\n            format: int64\n  tendermint.types.LightClientAttackEvidence:\n    type: object\n    properties:\n      conflicting_block:\n        type: object\n        properties:\n          signed_header:\n            type: object\n            properties:\n              header:\n                type: object\n                properties:\n                  version:\n                    title: basic block info\n                    type: object\n                    properties:\n                      block:\n                        type: string\n                        format: uint64\n                      app:\n                        type: string\n                        format: uint64\n                    description: >-\n                      Consensus captures the consensus rules for processing a\n                      block in the blockchain,\n\n                      including all blockchain data structures and the rules of\n                      the application's\n\n                      state transition machine.\n                  chain_id:\n                    type: string\n                  height:\n                    type: string\n                    format: int64\n                  time:\n                    type: string\n                    format: date-time\n                  last_block_id:\n                    type: object\n                    properties:\n                      hash:\n                        type: string\n                        format: byte\n                      part_set_header:\n                        type: object\n                        properties:\n                          total:\n                            type: integer\n                            format: int64\n                          hash:\n                            type: string\n                            format: byte\n                        title: PartsetHeader\n                    title: BlockID\n                  last_commit_hash:\n                    type: string\n                    format: byte\n                    title: hashes of block data\n                  data_hash:\n                    type: string\n                    format: byte\n                  validators_hash:\n                    type: string\n                    format: byte\n                    title: hashes from the app output from the prev block\n                  next_validators_hash:\n                    type: string\n                    format: byte\n                  consensus_hash:\n                    type: string\n                    format: byte\n                  app_hash:\n                    type: string\n                    format: byte\n                  last_results_hash:\n                    type: string\n                    format: byte\n                  evidence_hash:\n                    type: string\n                    format: byte\n                    title: consensus info\n                  proposer_address:\n                    type: string\n                    format: byte\n                description: Header defines the structure of a Tendermint block header.\n              commit:\n                type: object\n                properties:\n                  height:\n                    type: string\n                    format: int64\n                  round:\n                    type: integer\n                    format: int32\n                  block_id:\n                    type: object\n                    properties:\n                      hash:\n                        type: string\n                        format: byte\n                      part_set_header:\n                        type: object\n                        properties:\n                          total:\n                            type: integer\n                            format: int64\n                          hash:\n                            type: string\n                            format: byte\n                        title: PartsetHeader\n                    title: BlockID\n                  signatures:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        block_id_flag:\n                          type: string\n                          enum:\n                            - BLOCK_ID_FLAG_UNKNOWN\n                            - BLOCK_ID_FLAG_ABSENT\n                            - BLOCK_ID_FLAG_COMMIT\n                            - BLOCK_ID_FLAG_NIL\n                          default: BLOCK_ID_FLAG_UNKNOWN\n                          title: >-\n                            BlockIdFlag indicates which BlcokID the signature is\n                            for\n                        validator_address:\n                          type: string\n                          format: byte\n                        timestamp:\n                          type: string\n                          format: date-time\n                        signature:\n                          type: string\n                          format: byte\n                      description: CommitSig is a part of the Vote included in a Commit.\n                description: >-\n                  Commit contains the evidence that a block was committed by a\n                  set of validators.\n          validator_set:\n            type: object\n            properties:\n              validators:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    address:\n                      type: string\n                      format: byte\n                    pub_key:\n                      type: object\n                      properties:\n                        ed25519:\n                          type: string\n                          format: byte\n                        secp256k1:\n                          type: string\n                          format: byte\n                      title: >-\n                        PublicKey defines the keys available for use with\n                        Tendermint Validators\n                    voting_power:\n                      type: string\n                      format: int64\n                    proposer_priority:\n                      type: string\n                      format: int64\n              proposer:\n                type: object\n                properties:\n                  address:\n                    type: string\n                    format: byte\n                  pub_key:\n                    type: object\n                    properties:\n                      ed25519:\n                        type: string\n                        format: byte\n                      secp256k1:\n                        type: string\n                        format: byte\n                    title: >-\n                      PublicKey defines the keys available for use with\n                      Tendermint Validators\n                  voting_power:\n                    type: string\n                    format: int64\n                  proposer_priority:\n                    type: string\n                    format: int64\n              total_voting_power:\n                type: string\n                format: int64\n      common_height:\n        type: string\n        format: int64\n      byzantine_validators:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n              format: byte\n            pub_key:\n              type: object\n              properties:\n                ed25519:\n                  type: string\n                  format: byte\n                secp256k1:\n                  type: string\n                  format: byte\n              title: >-\n                PublicKey defines the keys available for use with Tendermint\n                Validators\n            voting_power:\n              type: string\n              format: int64\n            proposer_priority:\n              type: string\n              format: int64\n      total_voting_power:\n        type: string\n        format: int64\n      timestamp:\n        type: string\n        format: date-time\n    description: >-\n      LightClientAttackEvidence contains evidence of a set of validators\n      attempting to mislead a light client.\n  tendermint.types.PartSetHeader:\n    type: object\n    properties:\n      total:\n        type: integer\n        format: int64\n      hash:\n        type: string\n        format: byte\n    title: PartsetHeader\n  tendermint.types.SignedHeader:\n    type: object\n    properties:\n      header:\n        type: object\n        properties:\n          version:\n            title: basic block info\n            type: object\n            properties:\n              block:\n                type: string\n                format: uint64\n              app:\n                type: string\n                format: uint64\n            description: >-\n              Consensus captures the consensus rules for processing a block in\n              the blockchain,\n\n              including all blockchain data structures and the rules of the\n              application's\n\n              state transition machine.\n          chain_id:\n            type: string\n          height:\n            type: string\n            format: int64\n          time:\n            type: string\n            format: date-time\n          last_block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          last_commit_hash:\n            type: string\n            format: byte\n            title: hashes of block data\n          data_hash:\n            type: string\n            format: byte\n          validators_hash:\n            type: string\n            format: byte\n            title: hashes from the app output from the prev block\n          next_validators_hash:\n            type: string\n            format: byte\n          consensus_hash:\n            type: string\n            format: byte\n          app_hash:\n            type: string\n            format: byte\n          last_results_hash:\n            type: string\n            format: byte\n          evidence_hash:\n            type: string\n            format: byte\n            title: consensus info\n          proposer_address:\n            type: string\n            format: byte\n        description: Header defines the structure of a Tendermint block header.\n      commit:\n        type: object\n        properties:\n          height:\n            type: string\n            format: int64\n          round:\n            type: integer\n            format: int32\n          block_id:\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n            title: BlockID\n          signatures:\n            type: array\n            items:\n              type: object\n              properties:\n                block_id_flag:\n                  type: string\n                  enum:\n                    - BLOCK_ID_FLAG_UNKNOWN\n                    - BLOCK_ID_FLAG_ABSENT\n                    - BLOCK_ID_FLAG_COMMIT\n                    - BLOCK_ID_FLAG_NIL\n                  default: BLOCK_ID_FLAG_UNKNOWN\n                  title: BlockIdFlag indicates which BlcokID the signature is for\n                validator_address:\n                  type: string\n                  format: byte\n                timestamp:\n                  type: string\n                  format: date-time\n                signature:\n                  type: string\n                  format: byte\n              description: CommitSig is a part of the Vote included in a Commit.\n        description: >-\n          Commit contains the evidence that a block was committed by a set of\n          validators.\n  tendermint.types.SignedMsgType:\n    type: string\n    enum:\n      - SIGNED_MSG_TYPE_UNKNOWN\n      - SIGNED_MSG_TYPE_PREVOTE\n      - SIGNED_MSG_TYPE_PRECOMMIT\n      - SIGNED_MSG_TYPE_PROPOSAL\n    default: SIGNED_MSG_TYPE_UNKNOWN\n    description: |-\n      SignedMsgType is a type of signed message in the consensus.\n\n       - SIGNED_MSG_TYPE_PREVOTE: Votes\n       - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n  tendermint.types.Validator:\n    type: object\n    properties:\n      address:\n        type: string\n        format: byte\n      pub_key:\n        type: object\n        properties:\n          ed25519:\n            type: string\n            format: byte\n          secp256k1:\n            type: string\n            format: byte\n        title: >-\n          PublicKey defines the keys available for use with Tendermint\n          Validators\n      voting_power:\n        type: string\n        format: int64\n      proposer_priority:\n        type: string\n        format: int64\n  tendermint.types.ValidatorSet:\n    type: object\n    properties:\n      validators:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n              format: byte\n            pub_key:\n              type: object\n              properties:\n                ed25519:\n                  type: string\n                  format: byte\n                secp256k1:\n                  type: string\n                  format: byte\n              title: >-\n                PublicKey defines the keys available for use with Tendermint\n                Validators\n            voting_power:\n              type: string\n              format: int64\n            proposer_priority:\n              type: string\n              format: int64\n      proposer:\n        type: object\n        properties:\n          address:\n            type: string\n            format: byte\n          pub_key:\n            type: object\n            properties:\n              ed25519:\n                type: string\n                format: byte\n              secp256k1:\n                type: string\n                format: byte\n            title: >-\n              PublicKey defines the keys available for use with Tendermint\n              Validators\n          voting_power:\n            type: string\n            format: int64\n          proposer_priority:\n            type: string\n            format: int64\n      total_voting_power:\n        type: string\n        format: int64\n  tendermint.types.Vote:\n    type: object\n    properties:\n      type:\n        type: string\n        enum:\n          - SIGNED_MSG_TYPE_UNKNOWN\n          - SIGNED_MSG_TYPE_PREVOTE\n          - SIGNED_MSG_TYPE_PRECOMMIT\n          - SIGNED_MSG_TYPE_PROPOSAL\n        default: SIGNED_MSG_TYPE_UNKNOWN\n        description: |-\n          SignedMsgType is a type of signed message in the consensus.\n\n           - SIGNED_MSG_TYPE_PREVOTE: Votes\n           - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n      height:\n        type: string\n        format: int64\n      round:\n        type: integer\n        format: int32\n      block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      timestamp:\n        type: string\n        format: date-time\n      validator_address:\n        type: string\n        format: byte\n      validator_index:\n        type: integer\n        format: int32\n      signature:\n        type: string\n        format: byte\n    description: |-\n      Vote represents a prevote, precommit, or commit vote from validators for\n      consensus.\n  tendermint.version.Consensus:\n    type: object\n    properties:\n      block:\n        type: string\n        format: uint64\n      app:\n        type: string\n        format: uint64\n    description: >-\n      Consensus captures the consensus rules for processing a block in the\n      blockchain,\n\n      including all blockchain data structures and the rules of the\n      application's\n\n      state transition machine.\n  cosmos.base.v1beta1.DecCoin:\n    type: object\n    properties:\n      denom:\n        type: string\n      amount:\n        type: string\n    description: |-\n      DecCoin defines a token with a denomination and a decimal amount.\n\n      NOTE: The amount field is an Dec which implements the custom method\n      signatures required by gogoproto.\n  cosmos.distribution.v1beta1.DelegationDelegatorReward:\n    type: object\n    properties:\n      validator_address:\n        type: string\n      reward:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            DecCoin defines a token with a denomination and a decimal amount.\n\n            NOTE: The amount field is an Dec which implements the custom method\n            signatures required by gogoproto.\n    description: |-\n      DelegationDelegatorReward represents the properties\n      of a delegator's delegation reward.\n  cosmos.distribution.v1beta1.Params:\n    type: object\n    properties:\n      community_tax:\n        type: string\n      base_proposer_reward:\n        type: string\n      bonus_proposer_reward:\n        type: string\n      withdraw_addr_enabled:\n        type: boolean\n    description: Params defines the set of params for the distribution module.\n  cosmos.distribution.v1beta1.QueryCommunityPoolResponse:\n    type: object\n    properties:\n      pool:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            DecCoin defines a token with a denomination and a decimal amount.\n\n            NOTE: The amount field is an Dec which implements the custom method\n            signatures required by gogoproto.\n        description: pool defines community pool's coins.\n    description: >-\n      QueryCommunityPoolResponse is the response type for the\n      Query/CommunityPool\n\n      RPC method.\n  cosmos.distribution.v1beta1.QueryDelegationRewardsResponse:\n    type: object\n    properties:\n      rewards:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            DecCoin defines a token with a denomination and a decimal amount.\n\n            NOTE: The amount field is an Dec which implements the custom method\n            signatures required by gogoproto.\n        description: rewards defines the rewards accrued by a delegation.\n    description: |-\n      QueryDelegationRewardsResponse is the response type for the\n      Query/DelegationRewards RPC method.\n  cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse:\n    type: object\n    properties:\n      rewards:\n        type: array\n        items:\n          type: object\n          properties:\n            validator_address:\n              type: string\n            reward:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  DecCoin defines a token with a denomination and a decimal\n                  amount.\n\n\n                  NOTE: The amount field is an Dec which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n          description: |-\n            DelegationDelegatorReward represents the properties\n            of a delegator's delegation reward.\n        description: rewards defines all the rewards accrued by a delegator.\n      total:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            DecCoin defines a token with a denomination and a decimal amount.\n\n            NOTE: The amount field is an Dec which implements the custom method\n            signatures required by gogoproto.\n        description: total defines the sum of all the rewards.\n    description: |-\n      QueryDelegationTotalRewardsResponse is the response type for the\n      Query/DelegationTotalRewards RPC method.\n  cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse:\n    type: object\n    properties:\n      validators:\n        type: array\n        items:\n          type: string\n        description: validators defines the validators a delegator is delegating for.\n    description: |-\n      QueryDelegatorValidatorsResponse is the response type for the\n      Query/DelegatorValidators RPC method.\n  cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse:\n    type: object\n    properties:\n      withdraw_address:\n        type: string\n        description: withdraw_address defines the delegator address to query for.\n    description: |-\n      QueryDelegatorWithdrawAddressResponse is the response type for the\n      Query/DelegatorWithdrawAddress RPC method.\n  cosmos.distribution.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params defines the parameters of the module.\n        type: object\n        properties:\n          community_tax:\n            type: string\n          base_proposer_reward:\n            type: string\n          bonus_proposer_reward:\n            type: string\n          withdraw_addr_enabled:\n            type: boolean\n    description: QueryParamsResponse is the response type for the Query/Params RPC method.\n  cosmos.distribution.v1beta1.QueryValidatorCommissionResponse:\n    type: object\n    properties:\n      commission:\n        description: commission defines the commision the validator received.\n        type: object\n        properties:\n          commission:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                DecCoin defines a token with a denomination and a decimal\n                amount.\n\n\n                NOTE: The amount field is an Dec which implements the custom\n                method\n\n                signatures required by gogoproto.\n    title: |-\n      QueryValidatorCommissionResponse is the response type for the\n      Query/ValidatorCommission RPC method\n  cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse:\n    type: object\n    properties:\n      rewards:\n        type: object\n        properties:\n          rewards:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                DecCoin defines a token with a denomination and a decimal\n                amount.\n\n\n                NOTE: The amount field is an Dec which implements the custom\n                method\n\n                signatures required by gogoproto.\n        description: >-\n          ValidatorOutstandingRewards represents outstanding (un-withdrawn)\n          rewards\n\n          for a validator inexpensive to track, allows simple sanity checks.\n    description: |-\n      QueryValidatorOutstandingRewardsResponse is the response type for the\n      Query/ValidatorOutstandingRewards RPC method.\n  cosmos.distribution.v1beta1.QueryValidatorSlashesResponse:\n    type: object\n    properties:\n      slashes:\n        type: array\n        items:\n          type: object\n          properties:\n            validator_period:\n              type: string\n              format: uint64\n            fraction:\n              type: string\n          description: |-\n            ValidatorSlashEvent represents a validator slash event.\n            Height is implicit within the store key.\n            This is needed to calculate appropriate amount of staking tokens\n            for delegations which are withdrawn after a slash has occurred.\n        description: slashes defines the slashes the validator received.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryValidatorSlashesResponse is the response type for the\n      Query/ValidatorSlashes RPC method.\n  cosmos.distribution.v1beta1.ValidatorAccumulatedCommission:\n    type: object\n    properties:\n      commission:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            DecCoin defines a token with a denomination and a decimal amount.\n\n            NOTE: The amount field is an Dec which implements the custom method\n            signatures required by gogoproto.\n    description: |-\n      ValidatorAccumulatedCommission represents accumulated commission\n      for a validator kept as a running counter, can be withdrawn at any time.\n  cosmos.distribution.v1beta1.ValidatorOutstandingRewards:\n    type: object\n    properties:\n      rewards:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            DecCoin defines a token with a denomination and a decimal amount.\n\n            NOTE: The amount field is an Dec which implements the custom method\n            signatures required by gogoproto.\n    description: |-\n      ValidatorOutstandingRewards represents outstanding (un-withdrawn) rewards\n      for a validator inexpensive to track, allows simple sanity checks.\n  cosmos.distribution.v1beta1.ValidatorSlashEvent:\n    type: object\n    properties:\n      validator_period:\n        type: string\n        format: uint64\n      fraction:\n        type: string\n    description: |-\n      ValidatorSlashEvent represents a validator slash event.\n      Height is implicit within the store key.\n      This is needed to calculate appropriate amount of staking tokens\n      for delegations which are withdrawn after a slash has occurred.\n  cosmos.evidence.v1beta1.QueryAllEvidenceResponse:\n    type: object\n    properties:\n      evidence:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        description: evidence returns all evidences.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryAllEvidenceResponse is the response type for the Query/AllEvidence\n      RPC\n\n      method.\n  cosmos.evidence.v1beta1.QueryEvidenceResponse:\n    type: object\n    properties:\n      evidence:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n    description: >-\n      QueryEvidenceResponse is the response type for the Query/Evidence RPC\n      method.\n  cosmos.gov.v1beta1.Deposit:\n    type: object\n    properties:\n      proposal_id:\n        type: string\n        format: uint64\n      depositor:\n        type: string\n      amount:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n    description: |-\n      Deposit defines an amount deposited by an account address to an active\n      proposal.\n  cosmos.gov.v1beta1.DepositParams:\n    type: object\n    properties:\n      min_deposit:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        description: Minimum deposit for a proposal to enter voting period.\n      max_deposit_period:\n        type: string\n        description: >-\n          Maximum period for Atom holders to deposit on a proposal. Initial\n          value: 2\n           months.\n    description: DepositParams defines the params for deposits on governance proposals.\n  cosmos.gov.v1beta1.Proposal:\n    type: object\n    properties:\n      proposal_id:\n        type: string\n        format: uint64\n      content:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      status:\n        type: string\n        enum:\n          - PROPOSAL_STATUS_UNSPECIFIED\n          - PROPOSAL_STATUS_DEPOSIT_PERIOD\n          - PROPOSAL_STATUS_VOTING_PERIOD\n          - PROPOSAL_STATUS_PASSED\n          - PROPOSAL_STATUS_REJECTED\n          - PROPOSAL_STATUS_FAILED\n        default: PROPOSAL_STATUS_UNSPECIFIED\n        description: |-\n          ProposalStatus enumerates the valid statuses of a proposal.\n\n           - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n           - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n          period.\n           - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n          period.\n           - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n          passed.\n           - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n          been rejected.\n           - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n          failed.\n      final_tally_result:\n        description: |-\n          final_tally_result is the final tally result of the proposal. When\n          querying a proposal via gRPC, this field is not populated until the\n          proposal's voting period has ended.\n        type: object\n        properties:\n          'yes':\n            type: string\n          abstain:\n            type: string\n          'no':\n            type: string\n          no_with_veto:\n            type: string\n      submit_time:\n        type: string\n        format: date-time\n      deposit_end_time:\n        type: string\n        format: date-time\n      total_deposit:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      voting_start_time:\n        type: string\n        format: date-time\n      voting_end_time:\n        type: string\n        format: date-time\n    description: Proposal defines the core field members of a governance proposal.\n  cosmos.gov.v1beta1.ProposalStatus:\n    type: string\n    enum:\n      - PROPOSAL_STATUS_UNSPECIFIED\n      - PROPOSAL_STATUS_DEPOSIT_PERIOD\n      - PROPOSAL_STATUS_VOTING_PERIOD\n      - PROPOSAL_STATUS_PASSED\n      - PROPOSAL_STATUS_REJECTED\n      - PROPOSAL_STATUS_FAILED\n    default: PROPOSAL_STATUS_UNSPECIFIED\n    description: |-\n      ProposalStatus enumerates the valid statuses of a proposal.\n\n       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n      period.\n       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n      period.\n       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n      passed.\n       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n      been rejected.\n       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n      failed.\n  cosmos.gov.v1beta1.QueryDepositResponse:\n    type: object\n    properties:\n      deposit:\n        type: object\n        properties:\n          proposal_id:\n            type: string\n            format: uint64\n          depositor:\n            type: string\n          amount:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n        description: |-\n          Deposit defines an amount deposited by an account address to an active\n          proposal.\n    description: >-\n      QueryDepositResponse is the response type for the Query/Deposit RPC\n      method.\n  cosmos.gov.v1beta1.QueryDepositsResponse:\n    type: object\n    properties:\n      deposits:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n            depositor:\n              type: string\n            amount:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n          description: >-\n            Deposit defines an amount deposited by an account address to an\n            active\n\n            proposal.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryDepositsResponse is the response type for the Query/Deposits RPC\n      method.\n  cosmos.gov.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      voting_params:\n        description: voting_params defines the parameters related to voting.\n        type: object\n        properties:\n          voting_period:\n            type: string\n            description: Length of the voting period.\n      deposit_params:\n        description: deposit_params defines the parameters related to deposit.\n        type: object\n        properties:\n          min_deposit:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            description: Minimum deposit for a proposal to enter voting period.\n          max_deposit_period:\n            type: string\n            description: >-\n              Maximum period for Atom holders to deposit on a proposal. Initial\n              value: 2\n               months.\n      tally_params:\n        description: tally_params defines the parameters related to tally.\n        type: object\n        properties:\n          quorum:\n            type: string\n            format: byte\n            description: >-\n              Minimum percentage of total stake needed to vote for a result to\n              be\n               considered valid.\n          threshold:\n            type: string\n            format: byte\n            description: >-\n              Minimum proportion of Yes votes for proposal to pass. Default\n              value: 0.5.\n          veto_threshold:\n            type: string\n            format: byte\n            description: >-\n              Minimum value of Veto votes to Total votes ratio for proposal to\n              be\n               vetoed. Default value: 1/3.\n    description: QueryParamsResponse is the response type for the Query/Params RPC method.\n  cosmos.gov.v1beta1.QueryProposalResponse:\n    type: object\n    properties:\n      proposal:\n        type: object\n        properties:\n          proposal_id:\n            type: string\n            format: uint64\n          content:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n          status:\n            type: string\n            enum:\n              - PROPOSAL_STATUS_UNSPECIFIED\n              - PROPOSAL_STATUS_DEPOSIT_PERIOD\n              - PROPOSAL_STATUS_VOTING_PERIOD\n              - PROPOSAL_STATUS_PASSED\n              - PROPOSAL_STATUS_REJECTED\n              - PROPOSAL_STATUS_FAILED\n            default: PROPOSAL_STATUS_UNSPECIFIED\n            description: |-\n              ProposalStatus enumerates the valid statuses of a proposal.\n\n               - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n               - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n              period.\n               - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n              period.\n               - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n              passed.\n               - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n              been rejected.\n               - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n              failed.\n          final_tally_result:\n            description: >-\n              final_tally_result is the final tally result of the proposal. When\n\n              querying a proposal via gRPC, this field is not populated until\n              the\n\n              proposal's voting period has ended.\n            type: object\n            properties:\n              'yes':\n                type: string\n              abstain:\n                type: string\n              'no':\n                type: string\n              no_with_veto:\n                type: string\n          submit_time:\n            type: string\n            format: date-time\n          deposit_end_time:\n            type: string\n            format: date-time\n          total_deposit:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          voting_start_time:\n            type: string\n            format: date-time\n          voting_end_time:\n            type: string\n            format: date-time\n        description: Proposal defines the core field members of a governance proposal.\n    description: >-\n      QueryProposalResponse is the response type for the Query/Proposal RPC\n      method.\n  cosmos.gov.v1beta1.QueryProposalsResponse:\n    type: object\n    properties:\n      proposals:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n            content:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            status:\n              type: string\n              enum:\n                - PROPOSAL_STATUS_UNSPECIFIED\n                - PROPOSAL_STATUS_DEPOSIT_PERIOD\n                - PROPOSAL_STATUS_VOTING_PERIOD\n                - PROPOSAL_STATUS_PASSED\n                - PROPOSAL_STATUS_REJECTED\n                - PROPOSAL_STATUS_FAILED\n              default: PROPOSAL_STATUS_UNSPECIFIED\n              description: |-\n                ProposalStatus enumerates the valid statuses of a proposal.\n\n                 - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n                 - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n                period.\n                 - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n                period.\n                 - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n                passed.\n                 - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n                been rejected.\n                 - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n                failed.\n            final_tally_result:\n              description: >-\n                final_tally_result is the final tally result of the proposal.\n                When\n\n                querying a proposal via gRPC, this field is not populated until\n                the\n\n                proposal's voting period has ended.\n              type: object\n              properties:\n                'yes':\n                  type: string\n                abstain:\n                  type: string\n                'no':\n                  type: string\n                no_with_veto:\n                  type: string\n            submit_time:\n              type: string\n              format: date-time\n            deposit_end_time:\n              type: string\n              format: date-time\n            total_deposit:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            voting_start_time:\n              type: string\n              format: date-time\n            voting_end_time:\n              type: string\n              format: date-time\n          description: Proposal defines the core field members of a governance proposal.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryProposalsResponse is the response type for the Query/Proposals RPC\n      method.\n  cosmos.gov.v1beta1.QueryTallyResultResponse:\n    type: object\n    properties:\n      tally:\n        description: tally defines the requested tally.\n        type: object\n        properties:\n          'yes':\n            type: string\n          abstain:\n            type: string\n          'no':\n            type: string\n          no_with_veto:\n            type: string\n    description: >-\n      QueryTallyResultResponse is the response type for the Query/Tally RPC\n      method.\n  cosmos.gov.v1beta1.QueryVoteResponse:\n    type: object\n    properties:\n      vote:\n        type: object\n        properties:\n          proposal_id:\n            type: string\n            format: uint64\n          voter:\n            type: string\n          option:\n            description: >-\n              Deprecated: Prefer to use `options` instead. This field is set in\n              queries\n\n              if and only if `len(options) == 1` and that option has weight 1.\n              In all\n\n              other cases, this field will default to VOTE_OPTION_UNSPECIFIED.\n            type: string\n            enum:\n              - VOTE_OPTION_UNSPECIFIED\n              - VOTE_OPTION_YES\n              - VOTE_OPTION_ABSTAIN\n              - VOTE_OPTION_NO\n              - VOTE_OPTION_NO_WITH_VETO\n            default: VOTE_OPTION_UNSPECIFIED\n          options:\n            type: array\n            items:\n              type: object\n              properties:\n                option:\n                  type: string\n                  enum:\n                    - VOTE_OPTION_UNSPECIFIED\n                    - VOTE_OPTION_YES\n                    - VOTE_OPTION_ABSTAIN\n                    - VOTE_OPTION_NO\n                    - VOTE_OPTION_NO_WITH_VETO\n                  default: VOTE_OPTION_UNSPECIFIED\n                  description: >-\n                    VoteOption enumerates the valid vote options for a given\n                    governance proposal.\n\n                     - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                     - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                     - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                     - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                     - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                weight:\n                  type: string\n              description: |-\n                WeightedVoteOption defines a unit of vote for vote split.\n\n                Since: cosmos-sdk 0.43\n            title: 'Since: cosmos-sdk 0.43'\n        description: |-\n          Vote defines a vote on a governance proposal.\n          A Vote consists of a proposal ID, the voter, and the vote option.\n    description: QueryVoteResponse is the response type for the Query/Vote RPC method.\n  cosmos.gov.v1beta1.QueryVotesResponse:\n    type: object\n    properties:\n      votes:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n            voter:\n              type: string\n            option:\n              description: >-\n                Deprecated: Prefer to use `options` instead. This field is set\n                in queries\n\n                if and only if `len(options) == 1` and that option has weight 1.\n                In all\n\n                other cases, this field will default to VOTE_OPTION_UNSPECIFIED.\n              type: string\n              enum:\n                - VOTE_OPTION_UNSPECIFIED\n                - VOTE_OPTION_YES\n                - VOTE_OPTION_ABSTAIN\n                - VOTE_OPTION_NO\n                - VOTE_OPTION_NO_WITH_VETO\n              default: VOTE_OPTION_UNSPECIFIED\n            options:\n              type: array\n              items:\n                type: object\n                properties:\n                  option:\n                    type: string\n                    enum:\n                      - VOTE_OPTION_UNSPECIFIED\n                      - VOTE_OPTION_YES\n                      - VOTE_OPTION_ABSTAIN\n                      - VOTE_OPTION_NO\n                      - VOTE_OPTION_NO_WITH_VETO\n                    default: VOTE_OPTION_UNSPECIFIED\n                    description: >-\n                      VoteOption enumerates the valid vote options for a given\n                      governance proposal.\n\n                       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                  weight:\n                    type: string\n                description: |-\n                  WeightedVoteOption defines a unit of vote for vote split.\n\n                  Since: cosmos-sdk 0.43\n              title: 'Since: cosmos-sdk 0.43'\n          description: |-\n            Vote defines a vote on a governance proposal.\n            A Vote consists of a proposal ID, the voter, and the vote option.\n        description: votes defined the queried votes.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: QueryVotesResponse is the response type for the Query/Votes RPC method.\n  cosmos.gov.v1beta1.TallyParams:\n    type: object\n    properties:\n      quorum:\n        type: string\n        format: byte\n        description: |-\n          Minimum percentage of total stake needed to vote for a result to be\n           considered valid.\n      threshold:\n        type: string\n        format: byte\n        description: >-\n          Minimum proportion of Yes votes for proposal to pass. Default value:\n          0.5.\n      veto_threshold:\n        type: string\n        format: byte\n        description: |-\n          Minimum value of Veto votes to Total votes ratio for proposal to be\n           vetoed. Default value: 1/3.\n    description: TallyParams defines the params for tallying votes on governance proposals.\n  cosmos.gov.v1beta1.TallyResult:\n    type: object\n    properties:\n      'yes':\n        type: string\n      abstain:\n        type: string\n      'no':\n        type: string\n      no_with_veto:\n        type: string\n    description: TallyResult defines a standard tally for a governance proposal.\n  cosmos.gov.v1beta1.Vote:\n    type: object\n    properties:\n      proposal_id:\n        type: string\n        format: uint64\n      voter:\n        type: string\n      option:\n        description: >-\n          Deprecated: Prefer to use `options` instead. This field is set in\n          queries\n\n          if and only if `len(options) == 1` and that option has weight 1. In\n          all\n\n          other cases, this field will default to VOTE_OPTION_UNSPECIFIED.\n        type: string\n        enum:\n          - VOTE_OPTION_UNSPECIFIED\n          - VOTE_OPTION_YES\n          - VOTE_OPTION_ABSTAIN\n          - VOTE_OPTION_NO\n          - VOTE_OPTION_NO_WITH_VETO\n        default: VOTE_OPTION_UNSPECIFIED\n      options:\n        type: array\n        items:\n          type: object\n          properties:\n            option:\n              type: string\n              enum:\n                - VOTE_OPTION_UNSPECIFIED\n                - VOTE_OPTION_YES\n                - VOTE_OPTION_ABSTAIN\n                - VOTE_OPTION_NO\n                - VOTE_OPTION_NO_WITH_VETO\n              default: VOTE_OPTION_UNSPECIFIED\n              description: >-\n                VoteOption enumerates the valid vote options for a given\n                governance proposal.\n\n                 - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                 - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                 - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                 - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                 - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n            weight:\n              type: string\n          description: |-\n            WeightedVoteOption defines a unit of vote for vote split.\n\n            Since: cosmos-sdk 0.43\n        title: 'Since: cosmos-sdk 0.43'\n    description: |-\n      Vote defines a vote on a governance proposal.\n      A Vote consists of a proposal ID, the voter, and the vote option.\n  cosmos.gov.v1beta1.VoteOption:\n    type: string\n    enum:\n      - VOTE_OPTION_UNSPECIFIED\n      - VOTE_OPTION_YES\n      - VOTE_OPTION_ABSTAIN\n      - VOTE_OPTION_NO\n      - VOTE_OPTION_NO_WITH_VETO\n    default: VOTE_OPTION_UNSPECIFIED\n    description: >-\n      VoteOption enumerates the valid vote options for a given governance\n      proposal.\n\n       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n  cosmos.gov.v1beta1.VotingParams:\n    type: object\n    properties:\n      voting_period:\n        type: string\n        description: Length of the voting period.\n    description: VotingParams defines the params for voting on governance proposals.\n  cosmos.gov.v1beta1.WeightedVoteOption:\n    type: object\n    properties:\n      option:\n        type: string\n        enum:\n          - VOTE_OPTION_UNSPECIFIED\n          - VOTE_OPTION_YES\n          - VOTE_OPTION_ABSTAIN\n          - VOTE_OPTION_NO\n          - VOTE_OPTION_NO_WITH_VETO\n        default: VOTE_OPTION_UNSPECIFIED\n        description: >-\n          VoteOption enumerates the valid vote options for a given governance\n          proposal.\n\n           - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n           - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n           - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n           - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n           - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n      weight:\n        type: string\n    description: |-\n      WeightedVoteOption defines a unit of vote for vote split.\n\n      Since: cosmos-sdk 0.43\n  cosmos.gov.v1.Deposit:\n    type: object\n    properties:\n      proposal_id:\n        type: string\n        format: uint64\n      depositor:\n        type: string\n      amount:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n    description: |-\n      Deposit defines an amount deposited by an account address to an active\n      proposal.\n  cosmos.gov.v1.DepositParams:\n    type: object\n    properties:\n      min_deposit:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        description: Minimum deposit for a proposal to enter voting period.\n      max_deposit_period:\n        type: string\n        description: >-\n          Maximum period for Atom holders to deposit on a proposal. Initial\n          value: 2\n           months.\n    description: DepositParams defines the params for deposits on governance proposals.\n  cosmos.gov.v1.Proposal:\n    type: object\n    properties:\n      id:\n        type: string\n        format: uint64\n      messages:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n      status:\n        type: string\n        enum:\n          - PROPOSAL_STATUS_UNSPECIFIED\n          - PROPOSAL_STATUS_DEPOSIT_PERIOD\n          - PROPOSAL_STATUS_VOTING_PERIOD\n          - PROPOSAL_STATUS_PASSED\n          - PROPOSAL_STATUS_REJECTED\n          - PROPOSAL_STATUS_FAILED\n        default: PROPOSAL_STATUS_UNSPECIFIED\n        description: |-\n          ProposalStatus enumerates the valid statuses of a proposal.\n\n           - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n           - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n          period.\n           - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n          period.\n           - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n          passed.\n           - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n          been rejected.\n           - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n          failed.\n      final_tally_result:\n        description: |-\n          final_tally_result is the final tally result of the proposal. When\n          querying a proposal via gRPC, this field is not populated until the\n          proposal's voting period has ended.\n        type: object\n        properties:\n          yes_count:\n            type: string\n          abstain_count:\n            type: string\n          no_count:\n            type: string\n          no_with_veto_count:\n            type: string\n      submit_time:\n        type: string\n        format: date-time\n      deposit_end_time:\n        type: string\n        format: date-time\n      total_deposit:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n      voting_start_time:\n        type: string\n        format: date-time\n      voting_end_time:\n        type: string\n        format: date-time\n      metadata:\n        type: string\n        description: metadata is any arbitrary metadata attached to the proposal.\n    description: Proposal defines the core field members of a governance proposal.\n  cosmos.gov.v1.ProposalStatus:\n    type: string\n    enum:\n      - PROPOSAL_STATUS_UNSPECIFIED\n      - PROPOSAL_STATUS_DEPOSIT_PERIOD\n      - PROPOSAL_STATUS_VOTING_PERIOD\n      - PROPOSAL_STATUS_PASSED\n      - PROPOSAL_STATUS_REJECTED\n      - PROPOSAL_STATUS_FAILED\n    default: PROPOSAL_STATUS_UNSPECIFIED\n    description: |-\n      ProposalStatus enumerates the valid statuses of a proposal.\n\n       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n      period.\n       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n      period.\n       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n      passed.\n       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n      been rejected.\n       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n      failed.\n  cosmos.gov.v1.QueryDepositResponse:\n    type: object\n    properties:\n      deposit:\n        type: object\n        properties:\n          proposal_id:\n            type: string\n            format: uint64\n          depositor:\n            type: string\n          amount:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n        description: |-\n          Deposit defines an amount deposited by an account address to an active\n          proposal.\n    description: >-\n      QueryDepositResponse is the response type for the Query/Deposit RPC\n      method.\n  cosmos.gov.v1.QueryDepositsResponse:\n    type: object\n    properties:\n      deposits:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n            depositor:\n              type: string\n            amount:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n          description: >-\n            Deposit defines an amount deposited by an account address to an\n            active\n\n            proposal.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryDepositsResponse is the response type for the Query/Deposits RPC\n      method.\n  cosmos.gov.v1.QueryParamsResponse:\n    type: object\n    properties:\n      voting_params:\n        description: voting_params defines the parameters related to voting.\n        type: object\n        properties:\n          voting_period:\n            type: string\n            description: Length of the voting period.\n      deposit_params:\n        description: deposit_params defines the parameters related to deposit.\n        type: object\n        properties:\n          min_deposit:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            description: Minimum deposit for a proposal to enter voting period.\n          max_deposit_period:\n            type: string\n            description: >-\n              Maximum period for Atom holders to deposit on a proposal. Initial\n              value: 2\n               months.\n      tally_params:\n        description: tally_params defines the parameters related to tally.\n        type: object\n        properties:\n          quorum:\n            type: string\n            description: >-\n              Minimum percentage of total stake needed to vote for a result to\n              be\n               considered valid.\n          threshold:\n            type: string\n            description: >-\n              Minimum proportion of Yes votes for proposal to pass. Default\n              value: 0.5.\n          veto_threshold:\n            type: string\n            description: >-\n              Minimum value of Veto votes to Total votes ratio for proposal to\n              be\n               vetoed. Default value: 1/3.\n    description: QueryParamsResponse is the response type for the Query/Params RPC method.\n  cosmos.gov.v1.QueryProposalResponse:\n    type: object\n    properties:\n      proposal:\n        type: object\n        properties:\n          id:\n            type: string\n            format: uint64\n          messages:\n            type: array\n            items:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n          status:\n            type: string\n            enum:\n              - PROPOSAL_STATUS_UNSPECIFIED\n              - PROPOSAL_STATUS_DEPOSIT_PERIOD\n              - PROPOSAL_STATUS_VOTING_PERIOD\n              - PROPOSAL_STATUS_PASSED\n              - PROPOSAL_STATUS_REJECTED\n              - PROPOSAL_STATUS_FAILED\n            default: PROPOSAL_STATUS_UNSPECIFIED\n            description: |-\n              ProposalStatus enumerates the valid statuses of a proposal.\n\n               - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n               - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n              period.\n               - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n              period.\n               - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n              passed.\n               - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n              been rejected.\n               - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n              failed.\n          final_tally_result:\n            description: >-\n              final_tally_result is the final tally result of the proposal. When\n\n              querying a proposal via gRPC, this field is not populated until\n              the\n\n              proposal's voting period has ended.\n            type: object\n            properties:\n              yes_count:\n                type: string\n              abstain_count:\n                type: string\n              no_count:\n                type: string\n              no_with_veto_count:\n                type: string\n          submit_time:\n            type: string\n            format: date-time\n          deposit_end_time:\n            type: string\n            format: date-time\n          total_deposit:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          voting_start_time:\n            type: string\n            format: date-time\n          voting_end_time:\n            type: string\n            format: date-time\n          metadata:\n            type: string\n            description: metadata is any arbitrary metadata attached to the proposal.\n        description: Proposal defines the core field members of a governance proposal.\n    description: >-\n      QueryProposalResponse is the response type for the Query/Proposal RPC\n      method.\n  cosmos.gov.v1.QueryProposalsResponse:\n    type: object\n    properties:\n      proposals:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n              format: uint64\n            messages:\n              type: array\n              items:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n            status:\n              type: string\n              enum:\n                - PROPOSAL_STATUS_UNSPECIFIED\n                - PROPOSAL_STATUS_DEPOSIT_PERIOD\n                - PROPOSAL_STATUS_VOTING_PERIOD\n                - PROPOSAL_STATUS_PASSED\n                - PROPOSAL_STATUS_REJECTED\n                - PROPOSAL_STATUS_FAILED\n              default: PROPOSAL_STATUS_UNSPECIFIED\n              description: |-\n                ProposalStatus enumerates the valid statuses of a proposal.\n\n                 - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.\n                 - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit\n                period.\n                 - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting\n                period.\n                 - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has\n                passed.\n                 - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has\n                been rejected.\n                 - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has\n                failed.\n            final_tally_result:\n              description: >-\n                final_tally_result is the final tally result of the proposal.\n                When\n\n                querying a proposal via gRPC, this field is not populated until\n                the\n\n                proposal's voting period has ended.\n              type: object\n              properties:\n                yes_count:\n                  type: string\n                abstain_count:\n                  type: string\n                no_count:\n                  type: string\n                no_with_veto_count:\n                  type: string\n            submit_time:\n              type: string\n              format: date-time\n            deposit_end_time:\n              type: string\n              format: date-time\n            total_deposit:\n              type: array\n              items:\n                type: object\n                properties:\n                  denom:\n                    type: string\n                  amount:\n                    type: string\n                description: >-\n                  Coin defines a token with a denomination and an amount.\n\n\n                  NOTE: The amount field is an Int which implements the custom\n                  method\n\n                  signatures required by gogoproto.\n            voting_start_time:\n              type: string\n              format: date-time\n            voting_end_time:\n              type: string\n              format: date-time\n            metadata:\n              type: string\n              description: metadata is any arbitrary metadata attached to the proposal.\n          description: Proposal defines the core field members of a governance proposal.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryProposalsResponse is the response type for the Query/Proposals RPC\n      method.\n  cosmos.gov.v1.QueryTallyResultResponse:\n    type: object\n    properties:\n      tally:\n        description: tally defines the requested tally.\n        type: object\n        properties:\n          yes_count:\n            type: string\n          abstain_count:\n            type: string\n          no_count:\n            type: string\n          no_with_veto_count:\n            type: string\n    description: >-\n      QueryTallyResultResponse is the response type for the Query/Tally RPC\n      method.\n  cosmos.gov.v1.QueryVoteResponse:\n    type: object\n    properties:\n      vote:\n        type: object\n        properties:\n          proposal_id:\n            type: string\n            format: uint64\n          voter:\n            type: string\n          options:\n            type: array\n            items:\n              type: object\n              properties:\n                option:\n                  type: string\n                  enum:\n                    - VOTE_OPTION_UNSPECIFIED\n                    - VOTE_OPTION_YES\n                    - VOTE_OPTION_ABSTAIN\n                    - VOTE_OPTION_NO\n                    - VOTE_OPTION_NO_WITH_VETO\n                  default: VOTE_OPTION_UNSPECIFIED\n                  description: >-\n                    VoteOption enumerates the valid vote options for a given\n                    governance proposal.\n\n                     - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                     - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                     - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                     - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                     - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                weight:\n                  type: string\n              description: WeightedVoteOption defines a unit of vote for vote split.\n          metadata:\n            type: string\n            description: metadata is any  arbitrary metadata to attached to the vote.\n        description: |-\n          Vote defines a vote on a governance proposal.\n          A Vote consists of a proposal ID, the voter, and the vote option.\n    description: QueryVoteResponse is the response type for the Query/Vote RPC method.\n  cosmos.gov.v1.QueryVotesResponse:\n    type: object\n    properties:\n      votes:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n            voter:\n              type: string\n            options:\n              type: array\n              items:\n                type: object\n                properties:\n                  option:\n                    type: string\n                    enum:\n                      - VOTE_OPTION_UNSPECIFIED\n                      - VOTE_OPTION_YES\n                      - VOTE_OPTION_ABSTAIN\n                      - VOTE_OPTION_NO\n                      - VOTE_OPTION_NO_WITH_VETO\n                    default: VOTE_OPTION_UNSPECIFIED\n                    description: >-\n                      VoteOption enumerates the valid vote options for a given\n                      governance proposal.\n\n                       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n                  weight:\n                    type: string\n                description: WeightedVoteOption defines a unit of vote for vote split.\n            metadata:\n              type: string\n              description: metadata is any  arbitrary metadata to attached to the vote.\n          description: |-\n            Vote defines a vote on a governance proposal.\n            A Vote consists of a proposal ID, the voter, and the vote option.\n        description: votes defined the queried votes.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: QueryVotesResponse is the response type for the Query/Votes RPC method.\n  cosmos.gov.v1.TallyParams:\n    type: object\n    properties:\n      quorum:\n        type: string\n        description: |-\n          Minimum percentage of total stake needed to vote for a result to be\n           considered valid.\n      threshold:\n        type: string\n        description: >-\n          Minimum proportion of Yes votes for proposal to pass. Default value:\n          0.5.\n      veto_threshold:\n        type: string\n        description: |-\n          Minimum value of Veto votes to Total votes ratio for proposal to be\n           vetoed. Default value: 1/3.\n    description: TallyParams defines the params for tallying votes on governance proposals.\n  cosmos.gov.v1.TallyResult:\n    type: object\n    properties:\n      yes_count:\n        type: string\n      abstain_count:\n        type: string\n      no_count:\n        type: string\n      no_with_veto_count:\n        type: string\n    description: TallyResult defines a standard tally for a governance proposal.\n  cosmos.gov.v1.Vote:\n    type: object\n    properties:\n      proposal_id:\n        type: string\n        format: uint64\n      voter:\n        type: string\n      options:\n        type: array\n        items:\n          type: object\n          properties:\n            option:\n              type: string\n              enum:\n                - VOTE_OPTION_UNSPECIFIED\n                - VOTE_OPTION_YES\n                - VOTE_OPTION_ABSTAIN\n                - VOTE_OPTION_NO\n                - VOTE_OPTION_NO_WITH_VETO\n              default: VOTE_OPTION_UNSPECIFIED\n              description: >-\n                VoteOption enumerates the valid vote options for a given\n                governance proposal.\n\n                 - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n                 - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n                 - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n                 - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n                 - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n            weight:\n              type: string\n          description: WeightedVoteOption defines a unit of vote for vote split.\n      metadata:\n        type: string\n        description: metadata is any  arbitrary metadata to attached to the vote.\n    description: |-\n      Vote defines a vote on a governance proposal.\n      A Vote consists of a proposal ID, the voter, and the vote option.\n  cosmos.gov.v1.VoteOption:\n    type: string\n    enum:\n      - VOTE_OPTION_UNSPECIFIED\n      - VOTE_OPTION_YES\n      - VOTE_OPTION_ABSTAIN\n      - VOTE_OPTION_NO\n      - VOTE_OPTION_NO_WITH_VETO\n    default: VOTE_OPTION_UNSPECIFIED\n    description: >-\n      VoteOption enumerates the valid vote options for a given governance\n      proposal.\n\n       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n  cosmos.gov.v1.VotingParams:\n    type: object\n    properties:\n      voting_period:\n        type: string\n        description: Length of the voting period.\n    description: VotingParams defines the params for voting on governance proposals.\n  cosmos.gov.v1.WeightedVoteOption:\n    type: object\n    properties:\n      option:\n        type: string\n        enum:\n          - VOTE_OPTION_UNSPECIFIED\n          - VOTE_OPTION_YES\n          - VOTE_OPTION_ABSTAIN\n          - VOTE_OPTION_NO\n          - VOTE_OPTION_NO_WITH_VETO\n        default: VOTE_OPTION_UNSPECIFIED\n        description: >-\n          VoteOption enumerates the valid vote options for a given governance\n          proposal.\n\n           - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.\n           - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n           - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n           - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n           - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n      weight:\n        type: string\n    description: WeightedVoteOption defines a unit of vote for vote split.\n  cosmos.params.v1beta1.ParamChange:\n    type: object\n    properties:\n      subspace:\n        type: string\n      key:\n        type: string\n      value:\n        type: string\n    description: |-\n      ParamChange defines an individual parameter change, for use in\n      ParameterChangeProposal.\n  cosmos.params.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      param:\n        description: param defines the queried parameter.\n        type: object\n        properties:\n          subspace:\n            type: string\n          key:\n            type: string\n          value:\n            type: string\n    description: QueryParamsResponse is response type for the Query/Params RPC method.\n  cosmos.params.v1beta1.QuerySubspacesResponse:\n    type: object\n    properties:\n      subspaces:\n        type: array\n        items:\n          type: object\n          properties:\n            subspace:\n              type: string\n            keys:\n              type: array\n              items:\n                type: string\n          description: >-\n            Subspace defines a parameter subspace name and all the keys that\n            exist for\n\n            the subspace.\n\n\n            Since: cosmos-sdk 0.46\n    description: |-\n      QuerySubspacesResponse defines the response types for querying for all\n      registered subspaces and all keys for a subspace.\n\n      Since: cosmos-sdk 0.46\n  cosmos.params.v1beta1.Subspace:\n    type: object\n    properties:\n      subspace:\n        type: string\n      keys:\n        type: array\n        items:\n          type: string\n    description: |-\n      Subspace defines a parameter subspace name and all the keys that exist for\n      the subspace.\n\n      Since: cosmos-sdk 0.46\n  cosmos.slashing.v1beta1.Params:\n    type: object\n    properties:\n      signed_blocks_window:\n        type: string\n        format: int64\n      min_signed_per_window:\n        type: string\n        format: byte\n      downtime_jail_duration:\n        type: string\n      slash_fraction_double_sign:\n        type: string\n        format: byte\n      slash_fraction_downtime:\n        type: string\n        format: byte\n    description: Params represents the parameters used for by the slashing module.\n  cosmos.slashing.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        type: object\n        properties:\n          signed_blocks_window:\n            type: string\n            format: int64\n          min_signed_per_window:\n            type: string\n            format: byte\n          downtime_jail_duration:\n            type: string\n          slash_fraction_double_sign:\n            type: string\n            format: byte\n          slash_fraction_downtime:\n            type: string\n            format: byte\n        description: Params represents the parameters used for by the slashing module.\n    title: QueryParamsResponse is the response type for the Query/Params RPC method\n  cosmos.slashing.v1beta1.QuerySigningInfoResponse:\n    type: object\n    properties:\n      val_signing_info:\n        type: object\n        properties:\n          address:\n            type: string\n          start_height:\n            type: string\n            format: int64\n            title: Height at which validator was first a candidate OR was unjailed\n          index_offset:\n            type: string\n            format: int64\n            description: >-\n              Index which is incremented each time the validator was a bonded\n\n              in a block and may have signed a precommit or not. This in\n              conjunction with the\n\n              `SignedBlocksWindow` param determines the index in the\n              `MissedBlocksBitArray`.\n          jailed_until:\n            type: string\n            format: date-time\n            description: >-\n              Timestamp until which the validator is jailed due to liveness\n              downtime.\n          tombstoned:\n            type: boolean\n            description: >-\n              Whether or not a validator has been tombstoned (killed out of\n              validator set). It is set\n\n              once the validator commits an equivocation or for any other\n              configured misbehiavor.\n          missed_blocks_counter:\n            type: string\n            format: int64\n            description: >-\n              A counter kept to avoid unnecessary array reads.\n\n              Note that `Sum(MissedBlocksBitArray)` always equals\n              `MissedBlocksCounter`.\n        description: >-\n          ValidatorSigningInfo defines a validator's signing info for monitoring\n          their\n\n          liveness activity.\n        title: val_signing_info is the signing info of requested val cons address\n    title: >-\n      QuerySigningInfoResponse is the response type for the Query/SigningInfo\n      RPC\n\n      method\n  cosmos.slashing.v1beta1.QuerySigningInfosResponse:\n    type: object\n    properties:\n      info:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n            start_height:\n              type: string\n              format: int64\n              title: Height at which validator was first a candidate OR was unjailed\n            index_offset:\n              type: string\n              format: int64\n              description: >-\n                Index which is incremented each time the validator was a bonded\n\n                in a block and may have signed a precommit or not. This in\n                conjunction with the\n\n                `SignedBlocksWindow` param determines the index in the\n                `MissedBlocksBitArray`.\n            jailed_until:\n              type: string\n              format: date-time\n              description: >-\n                Timestamp until which the validator is jailed due to liveness\n                downtime.\n            tombstoned:\n              type: boolean\n              description: >-\n                Whether or not a validator has been tombstoned (killed out of\n                validator set). It is set\n\n                once the validator commits an equivocation or for any other\n                configured misbehiavor.\n            missed_blocks_counter:\n              type: string\n              format: int64\n              description: >-\n                A counter kept to avoid unnecessary array reads.\n\n                Note that `Sum(MissedBlocksBitArray)` always equals\n                `MissedBlocksCounter`.\n          description: >-\n            ValidatorSigningInfo defines a validator's signing info for\n            monitoring their\n\n            liveness activity.\n        title: info is the signing info of all validators\n      pagination:\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n        description: |-\n          PageResponse is to be embedded in gRPC response messages where the\n          corresponding request message has used PageRequest.\n\n           message SomeResponse {\n                   repeated Bar results = 1;\n                   PageResponse page = 2;\n           }\n    title: >-\n      QuerySigningInfosResponse is the response type for the Query/SigningInfos\n      RPC\n\n      method\n  cosmos.slashing.v1beta1.ValidatorSigningInfo:\n    type: object\n    properties:\n      address:\n        type: string\n      start_height:\n        type: string\n        format: int64\n        title: Height at which validator was first a candidate OR was unjailed\n      index_offset:\n        type: string\n        format: int64\n        description: >-\n          Index which is incremented each time the validator was a bonded\n\n          in a block and may have signed a precommit or not. This in conjunction\n          with the\n\n          `SignedBlocksWindow` param determines the index in the\n          `MissedBlocksBitArray`.\n      jailed_until:\n        type: string\n        format: date-time\n        description: >-\n          Timestamp until which the validator is jailed due to liveness\n          downtime.\n      tombstoned:\n        type: boolean\n        description: >-\n          Whether or not a validator has been tombstoned (killed out of\n          validator set). It is set\n\n          once the validator commits an equivocation or for any other configured\n          misbehiavor.\n      missed_blocks_counter:\n        type: string\n        format: int64\n        description: >-\n          A counter kept to avoid unnecessary array reads.\n\n          Note that `Sum(MissedBlocksBitArray)` always equals\n          `MissedBlocksCounter`.\n    description: >-\n      ValidatorSigningInfo defines a validator's signing info for monitoring\n      their\n\n      liveness activity.\n  cosmos.staking.v1beta1.BondStatus:\n    type: string\n    enum:\n      - BOND_STATUS_UNSPECIFIED\n      - BOND_STATUS_UNBONDED\n      - BOND_STATUS_UNBONDING\n      - BOND_STATUS_BONDED\n    default: BOND_STATUS_UNSPECIFIED\n    description: |-\n      BondStatus is the status of a validator.\n\n       - BOND_STATUS_UNSPECIFIED: UNSPECIFIED defines an invalid validator status.\n       - BOND_STATUS_UNBONDED: UNBONDED defines a validator that is not bonded.\n       - BOND_STATUS_UNBONDING: UNBONDING defines a validator that is unbonding.\n       - BOND_STATUS_BONDED: BONDED defines a validator that is bonded.\n  cosmos.staking.v1beta1.Commission:\n    type: object\n    properties:\n      commission_rates:\n        description: >-\n          commission_rates defines the initial commission rates to be used for\n          creating a validator.\n        type: object\n        properties:\n          rate:\n            type: string\n            description: rate is the commission rate charged to delegators, as a fraction.\n          max_rate:\n            type: string\n            description: >-\n              max_rate defines the maximum commission rate which validator can\n              ever charge, as a fraction.\n          max_change_rate:\n            type: string\n            description: >-\n              max_change_rate defines the maximum daily increase of the\n              validator commission, as a fraction.\n      update_time:\n        type: string\n        format: date-time\n        description: update_time is the last time the commission rate was changed.\n    description: Commission defines commission parameters for a given validator.\n  cosmos.staking.v1beta1.CommissionRates:\n    type: object\n    properties:\n      rate:\n        type: string\n        description: rate is the commission rate charged to delegators, as a fraction.\n      max_rate:\n        type: string\n        description: >-\n          max_rate defines the maximum commission rate which validator can ever\n          charge, as a fraction.\n      max_change_rate:\n        type: string\n        description: >-\n          max_change_rate defines the maximum daily increase of the validator\n          commission, as a fraction.\n    description: >-\n      CommissionRates defines the initial commission rates to be used for\n      creating\n\n      a validator.\n  cosmos.staking.v1beta1.Delegation:\n    type: object\n    properties:\n      delegator_address:\n        type: string\n        description: delegator_address is the bech32-encoded address of the delegator.\n      validator_address:\n        type: string\n        description: validator_address is the bech32-encoded address of the validator.\n      shares:\n        type: string\n        description: shares define the delegation shares received.\n    description: |-\n      Delegation represents the bond with tokens held by an account. It is\n      owned by one delegator, and is associated with the voting power of one\n      validator.\n  cosmos.staking.v1beta1.DelegationResponse:\n    type: object\n    properties:\n      delegation:\n        type: object\n        properties:\n          delegator_address:\n            type: string\n            description: delegator_address is the bech32-encoded address of the delegator.\n          validator_address:\n            type: string\n            description: validator_address is the bech32-encoded address of the validator.\n          shares:\n            type: string\n            description: shares define the delegation shares received.\n        description: |-\n          Delegation represents the bond with tokens held by an account. It is\n          owned by one delegator, and is associated with the voting power of one\n          validator.\n      balance:\n        type: object\n        properties:\n          denom:\n            type: string\n          amount:\n            type: string\n        description: |-\n          Coin defines a token with a denomination and an amount.\n\n          NOTE: The amount field is an Int which implements the custom method\n          signatures required by gogoproto.\n    description: |-\n      DelegationResponse is equivalent to Delegation except that it contains a\n      balance in addition to shares which is more suitable for client responses.\n  cosmos.staking.v1beta1.Description:\n    type: object\n    properties:\n      moniker:\n        type: string\n        description: moniker defines a human-readable name for the validator.\n      identity:\n        type: string\n        description: >-\n          identity defines an optional identity signature (ex. UPort or\n          Keybase).\n      website:\n        type: string\n        description: website defines an optional website link.\n      security_contact:\n        type: string\n        description: security_contact defines an optional email for security contact.\n      details:\n        type: string\n        description: details define other optional details.\n    description: Description defines a validator description.\n  cosmos.staking.v1beta1.HistoricalInfo:\n    type: object\n    properties:\n      header:\n        type: object\n        properties:\n          version:\n            title: basic block info\n            type: object\n            properties:\n              block:\n                type: string\n                format: uint64\n              app:\n                type: string\n                format: uint64\n            description: >-\n              Consensus captures the consensus rules for processing a block in\n              the blockchain,\n\n              including all blockchain data structures and the rules of the\n              application's\n\n              state transition machine.\n          chain_id:\n            type: string\n          height:\n            type: string\n            format: int64\n          time:\n            type: string\n            format: date-time\n          last_block_id:\n            title: prev block info\n            type: object\n            properties:\n              hash:\n                type: string\n                format: byte\n              part_set_header:\n                type: object\n                properties:\n                  total:\n                    type: integer\n                    format: int64\n                  hash:\n                    type: string\n                    format: byte\n                title: PartsetHeader\n          last_commit_hash:\n            type: string\n            format: byte\n            title: hashes of block data\n          data_hash:\n            type: string\n            format: byte\n          validators_hash:\n            type: string\n            format: byte\n            title: hashes from the app output from the prev block\n          next_validators_hash:\n            type: string\n            format: byte\n          consensus_hash:\n            type: string\n            format: byte\n          app_hash:\n            type: string\n            format: byte\n          last_results_hash:\n            type: string\n            format: byte\n          evidence_hash:\n            type: string\n            format: byte\n            title: consensus info\n          proposer_address:\n            type: string\n            format: byte\n        description: Header defines the structure of a Tendermint block header.\n      valset:\n        type: array\n        items:\n          type: object\n          properties:\n            operator_address:\n              type: string\n              description: >-\n                operator_address defines the address of the validator's\n                operator; bech encoded in JSON.\n            consensus_pubkey:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            jailed:\n              type: boolean\n              description: >-\n                jailed defined whether the validator has been jailed from bonded\n                status or not.\n            status:\n              description: status is the validator status (bonded/unbonding/unbonded).\n              type: string\n              enum:\n                - BOND_STATUS_UNSPECIFIED\n                - BOND_STATUS_UNBONDED\n                - BOND_STATUS_UNBONDING\n                - BOND_STATUS_BONDED\n              default: BOND_STATUS_UNSPECIFIED\n            tokens:\n              type: string\n              description: tokens define the delegated tokens (incl. self-delegation).\n            delegator_shares:\n              type: string\n              description: >-\n                delegator_shares defines total shares issued to a validator's\n                delegators.\n            description:\n              description: description defines the description terms for the validator.\n              type: object\n              properties:\n                moniker:\n                  type: string\n                  description: moniker defines a human-readable name for the validator.\n                identity:\n                  type: string\n                  description: >-\n                    identity defines an optional identity signature (ex. UPort\n                    or Keybase).\n                website:\n                  type: string\n                  description: website defines an optional website link.\n                security_contact:\n                  type: string\n                  description: >-\n                    security_contact defines an optional email for security\n                    contact.\n                details:\n                  type: string\n                  description: details define other optional details.\n            unbonding_height:\n              type: string\n              format: int64\n              description: >-\n                unbonding_height defines, if unbonding, the height at which this\n                validator has begun unbonding.\n            unbonding_time:\n              type: string\n              format: date-time\n              description: >-\n                unbonding_time defines, if unbonding, the min time for the\n                validator to complete unbonding.\n            commission:\n              description: commission defines the commission parameters.\n              type: object\n              properties:\n                commission_rates:\n                  description: >-\n                    commission_rates defines the initial commission rates to be\n                    used for creating a validator.\n                  type: object\n                  properties:\n                    rate:\n                      type: string\n                      description: >-\n                        rate is the commission rate charged to delegators, as a\n                        fraction.\n                    max_rate:\n                      type: string\n                      description: >-\n                        max_rate defines the maximum commission rate which\n                        validator can ever charge, as a fraction.\n                    max_change_rate:\n                      type: string\n                      description: >-\n                        max_change_rate defines the maximum daily increase of\n                        the validator commission, as a fraction.\n                update_time:\n                  type: string\n                  format: date-time\n                  description: >-\n                    update_time is the last time the commission rate was\n                    changed.\n            min_self_delegation:\n              type: string\n              description: >-\n                min_self_delegation is the validator's self declared minimum\n                self delegation.\n\n\n                Since: cosmos-sdk 0.46\n          description: >-\n            Validator defines a validator, together with the total amount of the\n\n            Validator's bond shares and their exchange rate to coins. Slashing\n            results in\n\n            a decrease in the exchange rate, allowing correct calculation of\n            future\n\n            undelegations without iterating over delegators. When coins are\n            delegated to\n\n            this validator, the validator is credited with a delegation whose\n            number of\n\n            bond shares is based on the amount of coins delegated divided by the\n            current\n\n            exchange rate. Voting power can be calculated as total bonded shares\n\n            multiplied by exchange rate.\n    description: >-\n      HistoricalInfo contains header and validator information for a given\n      block.\n\n      It is stored as part of staking module's state, which persists the `n`\n      most\n\n      recent HistoricalInfo\n\n      (`n` is set by the staking module's `historical_entries` parameter).\n  cosmos.staking.v1beta1.Params:\n    type: object\n    properties:\n      unbonding_time:\n        type: string\n        description: unbonding_time is the time duration of unbonding.\n      max_validators:\n        type: integer\n        format: int64\n        description: max_validators is the maximum number of validators.\n      max_entries:\n        type: integer\n        format: int64\n        description: >-\n          max_entries is the max entries for either unbonding delegation or\n          redelegation (per pair/trio).\n      historical_entries:\n        type: integer\n        format: int64\n        description: historical_entries is the number of historical entries to persist.\n      bond_denom:\n        type: string\n        description: bond_denom defines the bondable coin denomination.\n      min_commission_rate:\n        type: string\n        title: >-\n          min_commission_rate is the chain-wide minimum commission rate that a\n          validator can charge their delegators\n    description: Params defines the parameters for the staking module.\n  cosmos.staking.v1beta1.Pool:\n    type: object\n    properties:\n      not_bonded_tokens:\n        type: string\n      bonded_tokens:\n        type: string\n    description: |-\n      Pool is used for tracking bonded and not-bonded token supply of the bond\n      denomination.\n  cosmos.staking.v1beta1.QueryDelegationResponse:\n    type: object\n    properties:\n      delegation_response:\n        type: object\n        properties:\n          delegation:\n            type: object\n            properties:\n              delegator_address:\n                type: string\n                description: >-\n                  delegator_address is the bech32-encoded address of the\n                  delegator.\n              validator_address:\n                type: string\n                description: >-\n                  validator_address is the bech32-encoded address of the\n                  validator.\n              shares:\n                type: string\n                description: shares define the delegation shares received.\n            description: >-\n              Delegation represents the bond with tokens held by an account. It\n              is\n\n              owned by one delegator, and is associated with the voting power of\n              one\n\n              validator.\n          balance:\n            type: object\n            properties:\n              denom:\n                type: string\n              amount:\n                type: string\n            description: >-\n              Coin defines a token with a denomination and an amount.\n\n\n              NOTE: The amount field is an Int which implements the custom\n              method\n\n              signatures required by gogoproto.\n        description: >-\n          DelegationResponse is equivalent to Delegation except that it contains\n          a\n\n          balance in addition to shares which is more suitable for client\n          responses.\n    description: >-\n      QueryDelegationResponse is response type for the Query/Delegation RPC\n      method.\n  cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse:\n    type: object\n    properties:\n      delegation_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            delegation:\n              type: object\n              properties:\n                delegator_address:\n                  type: string\n                  description: >-\n                    delegator_address is the bech32-encoded address of the\n                    delegator.\n                validator_address:\n                  type: string\n                  description: >-\n                    validator_address is the bech32-encoded address of the\n                    validator.\n                shares:\n                  type: string\n                  description: shares define the delegation shares received.\n              description: >-\n                Delegation represents the bond with tokens held by an account.\n                It is\n\n                owned by one delegator, and is associated with the voting power\n                of one\n\n                validator.\n            balance:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          description: >-\n            DelegationResponse is equivalent to Delegation except that it\n            contains a\n\n            balance in addition to shares which is more suitable for client\n            responses.\n        description: delegation_responses defines all the delegations' info of a delegator.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryDelegatorDelegationsResponse is response type for the\n      Query/DelegatorDelegations RPC method.\n  cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse:\n    type: object\n    properties:\n      unbonding_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            delegator_address:\n              type: string\n              description: >-\n                delegator_address is the bech32-encoded address of the\n                delegator.\n            validator_address:\n              type: string\n              description: >-\n                validator_address is the bech32-encoded address of the\n                validator.\n            entries:\n              type: array\n              items:\n                type: object\n                properties:\n                  creation_height:\n                    type: string\n                    format: int64\n                    description: >-\n                      creation_height is the height which the unbonding took\n                      place.\n                  completion_time:\n                    type: string\n                    format: date-time\n                    description: completion_time is the unix time for unbonding completion.\n                  initial_balance:\n                    type: string\n                    description: >-\n                      initial_balance defines the tokens initially scheduled to\n                      receive at completion.\n                  balance:\n                    type: string\n                    description: balance defines the tokens to receive at completion.\n                description: >-\n                  UnbondingDelegationEntry defines an unbonding object with\n                  relevant metadata.\n              description: entries are the unbonding delegation entries.\n          description: >-\n            UnbondingDelegation stores all of a single delegator's unbonding\n            bonds\n\n            for a single validator in an time-ordered list.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryUnbondingDelegatorDelegationsResponse is response type for the\n      Query/UnbondingDelegatorDelegations RPC method.\n  cosmos.staking.v1beta1.QueryDelegatorValidatorResponse:\n    type: object\n    properties:\n      validator:\n        type: object\n        properties:\n          operator_address:\n            type: string\n            description: >-\n              operator_address defines the address of the validator's operator;\n              bech encoded in JSON.\n          consensus_pubkey:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n          jailed:\n            type: boolean\n            description: >-\n              jailed defined whether the validator has been jailed from bonded\n              status or not.\n          status:\n            description: status is the validator status (bonded/unbonding/unbonded).\n            type: string\n            enum:\n              - BOND_STATUS_UNSPECIFIED\n              - BOND_STATUS_UNBONDED\n              - BOND_STATUS_UNBONDING\n              - BOND_STATUS_BONDED\n            default: BOND_STATUS_UNSPECIFIED\n          tokens:\n            type: string\n            description: tokens define the delegated tokens (incl. self-delegation).\n          delegator_shares:\n            type: string\n            description: >-\n              delegator_shares defines total shares issued to a validator's\n              delegators.\n          description:\n            description: description defines the description terms for the validator.\n            type: object\n            properties:\n              moniker:\n                type: string\n                description: moniker defines a human-readable name for the validator.\n              identity:\n                type: string\n                description: >-\n                  identity defines an optional identity signature (ex. UPort or\n                  Keybase).\n              website:\n                type: string\n                description: website defines an optional website link.\n              security_contact:\n                type: string\n                description: >-\n                  security_contact defines an optional email for security\n                  contact.\n              details:\n                type: string\n                description: details define other optional details.\n          unbonding_height:\n            type: string\n            format: int64\n            description: >-\n              unbonding_height defines, if unbonding, the height at which this\n              validator has begun unbonding.\n          unbonding_time:\n            type: string\n            format: date-time\n            description: >-\n              unbonding_time defines, if unbonding, the min time for the\n              validator to complete unbonding.\n          commission:\n            description: commission defines the commission parameters.\n            type: object\n            properties:\n              commission_rates:\n                description: >-\n                  commission_rates defines the initial commission rates to be\n                  used for creating a validator.\n                type: object\n                properties:\n                  rate:\n                    type: string\n                    description: >-\n                      rate is the commission rate charged to delegators, as a\n                      fraction.\n                  max_rate:\n                    type: string\n                    description: >-\n                      max_rate defines the maximum commission rate which\n                      validator can ever charge, as a fraction.\n                  max_change_rate:\n                    type: string\n                    description: >-\n                      max_change_rate defines the maximum daily increase of the\n                      validator commission, as a fraction.\n              update_time:\n                type: string\n                format: date-time\n                description: update_time is the last time the commission rate was changed.\n          min_self_delegation:\n            type: string\n            description: >-\n              min_self_delegation is the validator's self declared minimum self\n              delegation.\n\n\n              Since: cosmos-sdk 0.46\n        description: >-\n          Validator defines a validator, together with the total amount of the\n\n          Validator's bond shares and their exchange rate to coins. Slashing\n          results in\n\n          a decrease in the exchange rate, allowing correct calculation of\n          future\n\n          undelegations without iterating over delegators. When coins are\n          delegated to\n\n          this validator, the validator is credited with a delegation whose\n          number of\n\n          bond shares is based on the amount of coins delegated divided by the\n          current\n\n          exchange rate. Voting power can be calculated as total bonded shares\n\n          multiplied by exchange rate.\n    description: |-\n      QueryDelegatorValidatorResponse response type for the\n      Query/DelegatorValidator RPC method.\n  cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse:\n    type: object\n    properties:\n      validators:\n        type: array\n        items:\n          type: object\n          properties:\n            operator_address:\n              type: string\n              description: >-\n                operator_address defines the address of the validator's\n                operator; bech encoded in JSON.\n            consensus_pubkey:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            jailed:\n              type: boolean\n              description: >-\n                jailed defined whether the validator has been jailed from bonded\n                status or not.\n            status:\n              description: status is the validator status (bonded/unbonding/unbonded).\n              type: string\n              enum:\n                - BOND_STATUS_UNSPECIFIED\n                - BOND_STATUS_UNBONDED\n                - BOND_STATUS_UNBONDING\n                - BOND_STATUS_BONDED\n              default: BOND_STATUS_UNSPECIFIED\n            tokens:\n              type: string\n              description: tokens define the delegated tokens (incl. self-delegation).\n            delegator_shares:\n              type: string\n              description: >-\n                delegator_shares defines total shares issued to a validator's\n                delegators.\n            description:\n              description: description defines the description terms for the validator.\n              type: object\n              properties:\n                moniker:\n                  type: string\n                  description: moniker defines a human-readable name for the validator.\n                identity:\n                  type: string\n                  description: >-\n                    identity defines an optional identity signature (ex. UPort\n                    or Keybase).\n                website:\n                  type: string\n                  description: website defines an optional website link.\n                security_contact:\n                  type: string\n                  description: >-\n                    security_contact defines an optional email for security\n                    contact.\n                details:\n                  type: string\n                  description: details define other optional details.\n            unbonding_height:\n              type: string\n              format: int64\n              description: >-\n                unbonding_height defines, if unbonding, the height at which this\n                validator has begun unbonding.\n            unbonding_time:\n              type: string\n              format: date-time\n              description: >-\n                unbonding_time defines, if unbonding, the min time for the\n                validator to complete unbonding.\n            commission:\n              description: commission defines the commission parameters.\n              type: object\n              properties:\n                commission_rates:\n                  description: >-\n                    commission_rates defines the initial commission rates to be\n                    used for creating a validator.\n                  type: object\n                  properties:\n                    rate:\n                      type: string\n                      description: >-\n                        rate is the commission rate charged to delegators, as a\n                        fraction.\n                    max_rate:\n                      type: string\n                      description: >-\n                        max_rate defines the maximum commission rate which\n                        validator can ever charge, as a fraction.\n                    max_change_rate:\n                      type: string\n                      description: >-\n                        max_change_rate defines the maximum daily increase of\n                        the validator commission, as a fraction.\n                update_time:\n                  type: string\n                  format: date-time\n                  description: >-\n                    update_time is the last time the commission rate was\n                    changed.\n            min_self_delegation:\n              type: string\n              description: >-\n                min_self_delegation is the validator's self declared minimum\n                self delegation.\n\n\n                Since: cosmos-sdk 0.46\n          description: >-\n            Validator defines a validator, together with the total amount of the\n\n            Validator's bond shares and their exchange rate to coins. Slashing\n            results in\n\n            a decrease in the exchange rate, allowing correct calculation of\n            future\n\n            undelegations without iterating over delegators. When coins are\n            delegated to\n\n            this validator, the validator is credited with a delegation whose\n            number of\n\n            bond shares is based on the amount of coins delegated divided by the\n            current\n\n            exchange rate. Voting power can be calculated as total bonded shares\n\n            multiplied by exchange rate.\n        description: validators defines the validators' info of a delegator.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryDelegatorValidatorsResponse is response type for the\n      Query/DelegatorValidators RPC method.\n  cosmos.staking.v1beta1.QueryHistoricalInfoResponse:\n    type: object\n    properties:\n      hist:\n        description: hist defines the historical info at the given height.\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                title: prev block info\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                format: byte\n            description: Header defines the structure of a Tendermint block header.\n          valset:\n            type: array\n            items:\n              type: object\n              properties:\n                operator_address:\n                  type: string\n                  description: >-\n                    operator_address defines the address of the validator's\n                    operator; bech encoded in JSON.\n                consensus_pubkey:\n                  type: object\n                  properties:\n                    type_url:\n                      type: string\n                      description: >-\n                        A URL/resource name that uniquely identifies the type of\n                        the serialized\n\n                        protocol buffer message. This string must contain at\n                        least\n\n                        one \"/\" character. The last segment of the URL's path\n                        must represent\n\n                        the fully qualified name of the type (as in\n\n                        `path/google.protobuf.Duration`). The name should be in\n                        a canonical form\n\n                        (e.g., leading \".\" is not accepted).\n\n\n                        In practice, teams usually precompile into the binary\n                        all types that they\n\n                        expect it to use in the context of Any. However, for\n                        URLs which use the\n\n                        scheme `http`, `https`, or no scheme, one can optionally\n                        set up a type\n\n                        server that maps type URLs to message definitions as\n                        follows:\n\n\n                        * If no scheme is provided, `https` is assumed.\n\n                        * An HTTP GET on the URL must yield a\n                        [google.protobuf.Type][]\n                          value in binary format, or produce an error.\n                        * Applications are allowed to cache lookup results based\n                        on the\n                          URL, or have them precompiled into a binary to avoid any\n                          lookup. Therefore, binary compatibility needs to be preserved\n                          on changes to types. (Use versioned type names to manage\n                          breaking changes.)\n\n                        Note: this functionality is not currently available in\n                        the official\n\n                        protobuf release, and it is not used for type URLs\n                        beginning with\n\n                        type.googleapis.com.\n\n\n                        Schemes other than `http`, `https` (or the empty scheme)\n                        might be\n\n                        used with implementation specific semantics.\n                    value:\n                      type: string\n                      format: byte\n                      description: >-\n                        Must be a valid serialized protocol buffer of the above\n                        specified type.\n                  description: >-\n                    `Any` contains an arbitrary serialized protocol buffer\n                    message along with a\n\n                    URL that describes the type of the serialized message.\n\n\n                    Protobuf library provides support to pack/unpack Any values\n                    in the form\n\n                    of utility functions or additional generated methods of the\n                    Any type.\n\n\n                    Example 1: Pack and unpack a message in C++.\n\n                        Foo foo = ...;\n                        Any any;\n                        any.PackFrom(foo);\n                        ...\n                        if (any.UnpackTo(&foo)) {\n                          ...\n                        }\n\n                    Example 2: Pack and unpack a message in Java.\n\n                        Foo foo = ...;\n                        Any any = Any.pack(foo);\n                        ...\n                        if (any.is(Foo.class)) {\n                          foo = any.unpack(Foo.class);\n                        }\n\n                     Example 3: Pack and unpack a message in Python.\n\n                        foo = Foo(...)\n                        any = Any()\n                        any.Pack(foo)\n                        ...\n                        if any.Is(Foo.DESCRIPTOR):\n                          any.Unpack(foo)\n                          ...\n\n                     Example 4: Pack and unpack a message in Go\n\n                         foo := &pb.Foo{...}\n                         any, err := anypb.New(foo)\n                         if err != nil {\n                           ...\n                         }\n                         ...\n                         foo := &pb.Foo{}\n                         if err := any.UnmarshalTo(foo); err != nil {\n                           ...\n                         }\n\n                    The pack methods provided by protobuf library will by\n                    default use\n\n                    'type.googleapis.com/full.type.name' as the type URL and the\n                    unpack\n\n                    methods only use the fully qualified type name after the\n                    last '/'\n\n                    in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                    type\n\n                    name \"y.z\".\n\n\n\n                    JSON\n\n                    ====\n\n                    The JSON representation of an `Any` value uses the regular\n\n                    representation of the deserialized, embedded message, with\n                    an\n\n                    additional field `@type` which contains the type URL.\n                    Example:\n\n                        package google.profile;\n                        message Person {\n                          string first_name = 1;\n                          string last_name = 2;\n                        }\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.profile.Person\",\n                          \"firstName\": <string>,\n                          \"lastName\": <string>\n                        }\n\n                    If the embedded message type is well-known and has a custom\n                    JSON\n\n                    representation, that representation will be embedded adding\n                    a field\n\n                    `value` which holds the custom JSON in addition to the\n                    `@type`\n\n                    field. Example (for message [google.protobuf.Duration][]):\n\n                        {\n                          \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                          \"value\": \"1.212s\"\n                        }\n                jailed:\n                  type: boolean\n                  description: >-\n                    jailed defined whether the validator has been jailed from\n                    bonded status or not.\n                status:\n                  description: status is the validator status (bonded/unbonding/unbonded).\n                  type: string\n                  enum:\n                    - BOND_STATUS_UNSPECIFIED\n                    - BOND_STATUS_UNBONDED\n                    - BOND_STATUS_UNBONDING\n                    - BOND_STATUS_BONDED\n                  default: BOND_STATUS_UNSPECIFIED\n                tokens:\n                  type: string\n                  description: tokens define the delegated tokens (incl. self-delegation).\n                delegator_shares:\n                  type: string\n                  description: >-\n                    delegator_shares defines total shares issued to a\n                    validator's delegators.\n                description:\n                  description: description defines the description terms for the validator.\n                  type: object\n                  properties:\n                    moniker:\n                      type: string\n                      description: moniker defines a human-readable name for the validator.\n                    identity:\n                      type: string\n                      description: >-\n                        identity defines an optional identity signature (ex.\n                        UPort or Keybase).\n                    website:\n                      type: string\n                      description: website defines an optional website link.\n                    security_contact:\n                      type: string\n                      description: >-\n                        security_contact defines an optional email for security\n                        contact.\n                    details:\n                      type: string\n                      description: details define other optional details.\n                unbonding_height:\n                  type: string\n                  format: int64\n                  description: >-\n                    unbonding_height defines, if unbonding, the height at which\n                    this validator has begun unbonding.\n                unbonding_time:\n                  type: string\n                  format: date-time\n                  description: >-\n                    unbonding_time defines, if unbonding, the min time for the\n                    validator to complete unbonding.\n                commission:\n                  description: commission defines the commission parameters.\n                  type: object\n                  properties:\n                    commission_rates:\n                      description: >-\n                        commission_rates defines the initial commission rates to\n                        be used for creating a validator.\n                      type: object\n                      properties:\n                        rate:\n                          type: string\n                          description: >-\n                            rate is the commission rate charged to delegators,\n                            as a fraction.\n                        max_rate:\n                          type: string\n                          description: >-\n                            max_rate defines the maximum commission rate which\n                            validator can ever charge, as a fraction.\n                        max_change_rate:\n                          type: string\n                          description: >-\n                            max_change_rate defines the maximum daily increase\n                            of the validator commission, as a fraction.\n                    update_time:\n                      type: string\n                      format: date-time\n                      description: >-\n                        update_time is the last time the commission rate was\n                        changed.\n                min_self_delegation:\n                  type: string\n                  description: >-\n                    min_self_delegation is the validator's self declared minimum\n                    self delegation.\n\n\n                    Since: cosmos-sdk 0.46\n              description: >-\n                Validator defines a validator, together with the total amount of\n                the\n\n                Validator's bond shares and their exchange rate to coins.\n                Slashing results in\n\n                a decrease in the exchange rate, allowing correct calculation of\n                future\n\n                undelegations without iterating over delegators. When coins are\n                delegated to\n\n                this validator, the validator is credited with a delegation\n                whose number of\n\n                bond shares is based on the amount of coins delegated divided by\n                the current\n\n                exchange rate. Voting power can be calculated as total bonded\n                shares\n\n                multiplied by exchange rate.\n    description: >-\n      QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo\n      RPC\n\n      method.\n  cosmos.staking.v1beta1.QueryParamsResponse:\n    type: object\n    properties:\n      params:\n        description: params holds all the parameters of this module.\n        type: object\n        properties:\n          unbonding_time:\n            type: string\n            description: unbonding_time is the time duration of unbonding.\n          max_validators:\n            type: integer\n            format: int64\n            description: max_validators is the maximum number of validators.\n          max_entries:\n            type: integer\n            format: int64\n            description: >-\n              max_entries is the max entries for either unbonding delegation or\n              redelegation (per pair/trio).\n          historical_entries:\n            type: integer\n            format: int64\n            description: historical_entries is the number of historical entries to persist.\n          bond_denom:\n            type: string\n            description: bond_denom defines the bondable coin denomination.\n          min_commission_rate:\n            type: string\n            title: >-\n              min_commission_rate is the chain-wide minimum commission rate that\n              a validator can charge their delegators\n    description: QueryParamsResponse is response type for the Query/Params RPC method.\n  cosmos.staking.v1beta1.QueryPoolResponse:\n    type: object\n    properties:\n      pool:\n        description: pool defines the pool info.\n        type: object\n        properties:\n          not_bonded_tokens:\n            type: string\n          bonded_tokens:\n            type: string\n    description: QueryPoolResponse is response type for the Query/Pool RPC method.\n  cosmos.staking.v1beta1.QueryRedelegationsResponse:\n    type: object\n    properties:\n      redelegation_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            redelegation:\n              type: object\n              properties:\n                delegator_address:\n                  type: string\n                  description: >-\n                    delegator_address is the bech32-encoded address of the\n                    delegator.\n                validator_src_address:\n                  type: string\n                  description: >-\n                    validator_src_address is the validator redelegation source\n                    operator address.\n                validator_dst_address:\n                  type: string\n                  description: >-\n                    validator_dst_address is the validator redelegation\n                    destination operator address.\n                entries:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      creation_height:\n                        type: string\n                        format: int64\n                        description: >-\n                          creation_height  defines the height which the\n                          redelegation took place.\n                      completion_time:\n                        type: string\n                        format: date-time\n                        description: >-\n                          completion_time defines the unix time for redelegation\n                          completion.\n                      initial_balance:\n                        type: string\n                        description: >-\n                          initial_balance defines the initial balance when\n                          redelegation started.\n                      shares_dst:\n                        type: string\n                        description: >-\n                          shares_dst is the amount of destination-validator\n                          shares created by redelegation.\n                    description: >-\n                      RedelegationEntry defines a redelegation object with\n                      relevant metadata.\n                  description: entries are the redelegation entries.\n              description: >-\n                Redelegation contains the list of a particular delegator's\n                redelegating bonds\n\n                from a particular source validator to a particular destination\n                validator.\n            entries:\n              type: array\n              items:\n                type: object\n                properties:\n                  redelegation_entry:\n                    type: object\n                    properties:\n                      creation_height:\n                        type: string\n                        format: int64\n                        description: >-\n                          creation_height  defines the height which the\n                          redelegation took place.\n                      completion_time:\n                        type: string\n                        format: date-time\n                        description: >-\n                          completion_time defines the unix time for redelegation\n                          completion.\n                      initial_balance:\n                        type: string\n                        description: >-\n                          initial_balance defines the initial balance when\n                          redelegation started.\n                      shares_dst:\n                        type: string\n                        description: >-\n                          shares_dst is the amount of destination-validator\n                          shares created by redelegation.\n                    description: >-\n                      RedelegationEntry defines a redelegation object with\n                      relevant metadata.\n                  balance:\n                    type: string\n                description: >-\n                  RedelegationEntryResponse is equivalent to a RedelegationEntry\n                  except that it\n\n                  contains a balance in addition to shares which is more\n                  suitable for client\n\n                  responses.\n          description: >-\n            RedelegationResponse is equivalent to a Redelegation except that its\n            entries\n\n            contain a balance in addition to shares which is more suitable for\n            client\n\n            responses.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryRedelegationsResponse is response type for the Query/Redelegations\n      RPC\n\n      method.\n  cosmos.staking.v1beta1.QueryUnbondingDelegationResponse:\n    type: object\n    properties:\n      unbond:\n        type: object\n        properties:\n          delegator_address:\n            type: string\n            description: delegator_address is the bech32-encoded address of the delegator.\n          validator_address:\n            type: string\n            description: validator_address is the bech32-encoded address of the validator.\n          entries:\n            type: array\n            items:\n              type: object\n              properties:\n                creation_height:\n                  type: string\n                  format: int64\n                  description: >-\n                    creation_height is the height which the unbonding took\n                    place.\n                completion_time:\n                  type: string\n                  format: date-time\n                  description: completion_time is the unix time for unbonding completion.\n                initial_balance:\n                  type: string\n                  description: >-\n                    initial_balance defines the tokens initially scheduled to\n                    receive at completion.\n                balance:\n                  type: string\n                  description: balance defines the tokens to receive at completion.\n              description: >-\n                UnbondingDelegationEntry defines an unbonding object with\n                relevant metadata.\n            description: entries are the unbonding delegation entries.\n        description: |-\n          UnbondingDelegation stores all of a single delegator's unbonding bonds\n          for a single validator in an time-ordered list.\n    description: |-\n      QueryDelegationResponse is response type for the Query/UnbondingDelegation\n      RPC method.\n  cosmos.staking.v1beta1.QueryValidatorDelegationsResponse:\n    type: object\n    properties:\n      delegation_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            delegation:\n              type: object\n              properties:\n                delegator_address:\n                  type: string\n                  description: >-\n                    delegator_address is the bech32-encoded address of the\n                    delegator.\n                validator_address:\n                  type: string\n                  description: >-\n                    validator_address is the bech32-encoded address of the\n                    validator.\n                shares:\n                  type: string\n                  description: shares define the delegation shares received.\n              description: >-\n                Delegation represents the bond with tokens held by an account.\n                It is\n\n                owned by one delegator, and is associated with the voting power\n                of one\n\n                validator.\n            balance:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n          description: >-\n            DelegationResponse is equivalent to Delegation except that it\n            contains a\n\n            balance in addition to shares which is more suitable for client\n            responses.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    title: |-\n      QueryValidatorDelegationsResponse is response type for the\n      Query/ValidatorDelegations RPC method\n  cosmos.staking.v1beta1.QueryValidatorResponse:\n    type: object\n    properties:\n      validator:\n        type: object\n        properties:\n          operator_address:\n            type: string\n            description: >-\n              operator_address defines the address of the validator's operator;\n              bech encoded in JSON.\n          consensus_pubkey:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n          jailed:\n            type: boolean\n            description: >-\n              jailed defined whether the validator has been jailed from bonded\n              status or not.\n          status:\n            description: status is the validator status (bonded/unbonding/unbonded).\n            type: string\n            enum:\n              - BOND_STATUS_UNSPECIFIED\n              - BOND_STATUS_UNBONDED\n              - BOND_STATUS_UNBONDING\n              - BOND_STATUS_BONDED\n            default: BOND_STATUS_UNSPECIFIED\n          tokens:\n            type: string\n            description: tokens define the delegated tokens (incl. self-delegation).\n          delegator_shares:\n            type: string\n            description: >-\n              delegator_shares defines total shares issued to a validator's\n              delegators.\n          description:\n            description: description defines the description terms for the validator.\n            type: object\n            properties:\n              moniker:\n                type: string\n                description: moniker defines a human-readable name for the validator.\n              identity:\n                type: string\n                description: >-\n                  identity defines an optional identity signature (ex. UPort or\n                  Keybase).\n              website:\n                type: string\n                description: website defines an optional website link.\n              security_contact:\n                type: string\n                description: >-\n                  security_contact defines an optional email for security\n                  contact.\n              details:\n                type: string\n                description: details define other optional details.\n          unbonding_height:\n            type: string\n            format: int64\n            description: >-\n              unbonding_height defines, if unbonding, the height at which this\n              validator has begun unbonding.\n          unbonding_time:\n            type: string\n            format: date-time\n            description: >-\n              unbonding_time defines, if unbonding, the min time for the\n              validator to complete unbonding.\n          commission:\n            description: commission defines the commission parameters.\n            type: object\n            properties:\n              commission_rates:\n                description: >-\n                  commission_rates defines the initial commission rates to be\n                  used for creating a validator.\n                type: object\n                properties:\n                  rate:\n                    type: string\n                    description: >-\n                      rate is the commission rate charged to delegators, as a\n                      fraction.\n                  max_rate:\n                    type: string\n                    description: >-\n                      max_rate defines the maximum commission rate which\n                      validator can ever charge, as a fraction.\n                  max_change_rate:\n                    type: string\n                    description: >-\n                      max_change_rate defines the maximum daily increase of the\n                      validator commission, as a fraction.\n              update_time:\n                type: string\n                format: date-time\n                description: update_time is the last time the commission rate was changed.\n          min_self_delegation:\n            type: string\n            description: >-\n              min_self_delegation is the validator's self declared minimum self\n              delegation.\n\n\n              Since: cosmos-sdk 0.46\n        description: >-\n          Validator defines a validator, together with the total amount of the\n\n          Validator's bond shares and their exchange rate to coins. Slashing\n          results in\n\n          a decrease in the exchange rate, allowing correct calculation of\n          future\n\n          undelegations without iterating over delegators. When coins are\n          delegated to\n\n          this validator, the validator is credited with a delegation whose\n          number of\n\n          bond shares is based on the amount of coins delegated divided by the\n          current\n\n          exchange rate. Voting power can be calculated as total bonded shares\n\n          multiplied by exchange rate.\n    title: QueryValidatorResponse is response type for the Query/Validator RPC method\n  cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse:\n    type: object\n    properties:\n      unbonding_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            delegator_address:\n              type: string\n              description: >-\n                delegator_address is the bech32-encoded address of the\n                delegator.\n            validator_address:\n              type: string\n              description: >-\n                validator_address is the bech32-encoded address of the\n                validator.\n            entries:\n              type: array\n              items:\n                type: object\n                properties:\n                  creation_height:\n                    type: string\n                    format: int64\n                    description: >-\n                      creation_height is the height which the unbonding took\n                      place.\n                  completion_time:\n                    type: string\n                    format: date-time\n                    description: completion_time is the unix time for unbonding completion.\n                  initial_balance:\n                    type: string\n                    description: >-\n                      initial_balance defines the tokens initially scheduled to\n                      receive at completion.\n                  balance:\n                    type: string\n                    description: balance defines the tokens to receive at completion.\n                description: >-\n                  UnbondingDelegationEntry defines an unbonding object with\n                  relevant metadata.\n              description: entries are the unbonding delegation entries.\n          description: >-\n            UnbondingDelegation stores all of a single delegator's unbonding\n            bonds\n\n            for a single validator in an time-ordered list.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: |-\n      QueryValidatorUnbondingDelegationsResponse is response type for the\n      Query/ValidatorUnbondingDelegations RPC method.\n  cosmos.staking.v1beta1.QueryValidatorsResponse:\n    type: object\n    properties:\n      validators:\n        type: array\n        items:\n          type: object\n          properties:\n            operator_address:\n              type: string\n              description: >-\n                operator_address defines the address of the validator's\n                operator; bech encoded in JSON.\n            consensus_pubkey:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            jailed:\n              type: boolean\n              description: >-\n                jailed defined whether the validator has been jailed from bonded\n                status or not.\n            status:\n              description: status is the validator status (bonded/unbonding/unbonded).\n              type: string\n              enum:\n                - BOND_STATUS_UNSPECIFIED\n                - BOND_STATUS_UNBONDED\n                - BOND_STATUS_UNBONDING\n                - BOND_STATUS_BONDED\n              default: BOND_STATUS_UNSPECIFIED\n            tokens:\n              type: string\n              description: tokens define the delegated tokens (incl. self-delegation).\n            delegator_shares:\n              type: string\n              description: >-\n                delegator_shares defines total shares issued to a validator's\n                delegators.\n            description:\n              description: description defines the description terms for the validator.\n              type: object\n              properties:\n                moniker:\n                  type: string\n                  description: moniker defines a human-readable name for the validator.\n                identity:\n                  type: string\n                  description: >-\n                    identity defines an optional identity signature (ex. UPort\n                    or Keybase).\n                website:\n                  type: string\n                  description: website defines an optional website link.\n                security_contact:\n                  type: string\n                  description: >-\n                    security_contact defines an optional email for security\n                    contact.\n                details:\n                  type: string\n                  description: details define other optional details.\n            unbonding_height:\n              type: string\n              format: int64\n              description: >-\n                unbonding_height defines, if unbonding, the height at which this\n                validator has begun unbonding.\n            unbonding_time:\n              type: string\n              format: date-time\n              description: >-\n                unbonding_time defines, if unbonding, the min time for the\n                validator to complete unbonding.\n            commission:\n              description: commission defines the commission parameters.\n              type: object\n              properties:\n                commission_rates:\n                  description: >-\n                    commission_rates defines the initial commission rates to be\n                    used for creating a validator.\n                  type: object\n                  properties:\n                    rate:\n                      type: string\n                      description: >-\n                        rate is the commission rate charged to delegators, as a\n                        fraction.\n                    max_rate:\n                      type: string\n                      description: >-\n                        max_rate defines the maximum commission rate which\n                        validator can ever charge, as a fraction.\n                    max_change_rate:\n                      type: string\n                      description: >-\n                        max_change_rate defines the maximum daily increase of\n                        the validator commission, as a fraction.\n                update_time:\n                  type: string\n                  format: date-time\n                  description: >-\n                    update_time is the last time the commission rate was\n                    changed.\n            min_self_delegation:\n              type: string\n              description: >-\n                min_self_delegation is the validator's self declared minimum\n                self delegation.\n\n\n                Since: cosmos-sdk 0.46\n          description: >-\n            Validator defines a validator, together with the total amount of the\n\n            Validator's bond shares and their exchange rate to coins. Slashing\n            results in\n\n            a decrease in the exchange rate, allowing correct calculation of\n            future\n\n            undelegations without iterating over delegators. When coins are\n            delegated to\n\n            this validator, the validator is credited with a delegation whose\n            number of\n\n            bond shares is based on the amount of coins delegated divided by the\n            current\n\n            exchange rate. Voting power can be calculated as total bonded shares\n\n            multiplied by exchange rate.\n        description: validators contains all the queried validators.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    title: >-\n      QueryValidatorsResponse is response type for the Query/Validators RPC\n      method\n  cosmos.staking.v1beta1.Redelegation:\n    type: object\n    properties:\n      delegator_address:\n        type: string\n        description: delegator_address is the bech32-encoded address of the delegator.\n      validator_src_address:\n        type: string\n        description: >-\n          validator_src_address is the validator redelegation source operator\n          address.\n      validator_dst_address:\n        type: string\n        description: >-\n          validator_dst_address is the validator redelegation destination\n          operator address.\n      entries:\n        type: array\n        items:\n          type: object\n          properties:\n            creation_height:\n              type: string\n              format: int64\n              description: >-\n                creation_height  defines the height which the redelegation took\n                place.\n            completion_time:\n              type: string\n              format: date-time\n              description: >-\n                completion_time defines the unix time for redelegation\n                completion.\n            initial_balance:\n              type: string\n              description: >-\n                initial_balance defines the initial balance when redelegation\n                started.\n            shares_dst:\n              type: string\n              description: >-\n                shares_dst is the amount of destination-validator shares created\n                by redelegation.\n          description: >-\n            RedelegationEntry defines a redelegation object with relevant\n            metadata.\n        description: entries are the redelegation entries.\n    description: >-\n      Redelegation contains the list of a particular delegator's redelegating\n      bonds\n\n      from a particular source validator to a particular destination validator.\n  cosmos.staking.v1beta1.RedelegationEntry:\n    type: object\n    properties:\n      creation_height:\n        type: string\n        format: int64\n        description: creation_height  defines the height which the redelegation took place.\n      completion_time:\n        type: string\n        format: date-time\n        description: completion_time defines the unix time for redelegation completion.\n      initial_balance:\n        type: string\n        description: initial_balance defines the initial balance when redelegation started.\n      shares_dst:\n        type: string\n        description: >-\n          shares_dst is the amount of destination-validator shares created by\n          redelegation.\n    description: RedelegationEntry defines a redelegation object with relevant metadata.\n  cosmos.staking.v1beta1.RedelegationEntryResponse:\n    type: object\n    properties:\n      redelegation_entry:\n        type: object\n        properties:\n          creation_height:\n            type: string\n            format: int64\n            description: >-\n              creation_height  defines the height which the redelegation took\n              place.\n          completion_time:\n            type: string\n            format: date-time\n            description: completion_time defines the unix time for redelegation completion.\n          initial_balance:\n            type: string\n            description: >-\n              initial_balance defines the initial balance when redelegation\n              started.\n          shares_dst:\n            type: string\n            description: >-\n              shares_dst is the amount of destination-validator shares created\n              by redelegation.\n        description: >-\n          RedelegationEntry defines a redelegation object with relevant\n          metadata.\n      balance:\n        type: string\n    description: >-\n      RedelegationEntryResponse is equivalent to a RedelegationEntry except that\n      it\n\n      contains a balance in addition to shares which is more suitable for client\n\n      responses.\n  cosmos.staking.v1beta1.RedelegationResponse:\n    type: object\n    properties:\n      redelegation:\n        type: object\n        properties:\n          delegator_address:\n            type: string\n            description: delegator_address is the bech32-encoded address of the delegator.\n          validator_src_address:\n            type: string\n            description: >-\n              validator_src_address is the validator redelegation source\n              operator address.\n          validator_dst_address:\n            type: string\n            description: >-\n              validator_dst_address is the validator redelegation destination\n              operator address.\n          entries:\n            type: array\n            items:\n              type: object\n              properties:\n                creation_height:\n                  type: string\n                  format: int64\n                  description: >-\n                    creation_height  defines the height which the redelegation\n                    took place.\n                completion_time:\n                  type: string\n                  format: date-time\n                  description: >-\n                    completion_time defines the unix time for redelegation\n                    completion.\n                initial_balance:\n                  type: string\n                  description: >-\n                    initial_balance defines the initial balance when\n                    redelegation started.\n                shares_dst:\n                  type: string\n                  description: >-\n                    shares_dst is the amount of destination-validator shares\n                    created by redelegation.\n              description: >-\n                RedelegationEntry defines a redelegation object with relevant\n                metadata.\n            description: entries are the redelegation entries.\n        description: >-\n          Redelegation contains the list of a particular delegator's\n          redelegating bonds\n\n          from a particular source validator to a particular destination\n          validator.\n      entries:\n        type: array\n        items:\n          type: object\n          properties:\n            redelegation_entry:\n              type: object\n              properties:\n                creation_height:\n                  type: string\n                  format: int64\n                  description: >-\n                    creation_height  defines the height which the redelegation\n                    took place.\n                completion_time:\n                  type: string\n                  format: date-time\n                  description: >-\n                    completion_time defines the unix time for redelegation\n                    completion.\n                initial_balance:\n                  type: string\n                  description: >-\n                    initial_balance defines the initial balance when\n                    redelegation started.\n                shares_dst:\n                  type: string\n                  description: >-\n                    shares_dst is the amount of destination-validator shares\n                    created by redelegation.\n              description: >-\n                RedelegationEntry defines a redelegation object with relevant\n                metadata.\n            balance:\n              type: string\n          description: >-\n            RedelegationEntryResponse is equivalent to a RedelegationEntry\n            except that it\n\n            contains a balance in addition to shares which is more suitable for\n            client\n\n            responses.\n    description: >-\n      RedelegationResponse is equivalent to a Redelegation except that its\n      entries\n\n      contain a balance in addition to shares which is more suitable for client\n\n      responses.\n  cosmos.staking.v1beta1.UnbondingDelegation:\n    type: object\n    properties:\n      delegator_address:\n        type: string\n        description: delegator_address is the bech32-encoded address of the delegator.\n      validator_address:\n        type: string\n        description: validator_address is the bech32-encoded address of the validator.\n      entries:\n        type: array\n        items:\n          type: object\n          properties:\n            creation_height:\n              type: string\n              format: int64\n              description: creation_height is the height which the unbonding took place.\n            completion_time:\n              type: string\n              format: date-time\n              description: completion_time is the unix time for unbonding completion.\n            initial_balance:\n              type: string\n              description: >-\n                initial_balance defines the tokens initially scheduled to\n                receive at completion.\n            balance:\n              type: string\n              description: balance defines the tokens to receive at completion.\n          description: >-\n            UnbondingDelegationEntry defines an unbonding object with relevant\n            metadata.\n        description: entries are the unbonding delegation entries.\n    description: |-\n      UnbondingDelegation stores all of a single delegator's unbonding bonds\n      for a single validator in an time-ordered list.\n  cosmos.staking.v1beta1.UnbondingDelegationEntry:\n    type: object\n    properties:\n      creation_height:\n        type: string\n        format: int64\n        description: creation_height is the height which the unbonding took place.\n      completion_time:\n        type: string\n        format: date-time\n        description: completion_time is the unix time for unbonding completion.\n      initial_balance:\n        type: string\n        description: >-\n          initial_balance defines the tokens initially scheduled to receive at\n          completion.\n      balance:\n        type: string\n        description: balance defines the tokens to receive at completion.\n    description: >-\n      UnbondingDelegationEntry defines an unbonding object with relevant\n      metadata.\n  cosmos.staking.v1beta1.Validator:\n    type: object\n    properties:\n      operator_address:\n        type: string\n        description: >-\n          operator_address defines the address of the validator's operator; bech\n          encoded in JSON.\n      consensus_pubkey:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      jailed:\n        type: boolean\n        description: >-\n          jailed defined whether the validator has been jailed from bonded\n          status or not.\n      status:\n        description: status is the validator status (bonded/unbonding/unbonded).\n        type: string\n        enum:\n          - BOND_STATUS_UNSPECIFIED\n          - BOND_STATUS_UNBONDED\n          - BOND_STATUS_UNBONDING\n          - BOND_STATUS_BONDED\n        default: BOND_STATUS_UNSPECIFIED\n      tokens:\n        type: string\n        description: tokens define the delegated tokens (incl. self-delegation).\n      delegator_shares:\n        type: string\n        description: >-\n          delegator_shares defines total shares issued to a validator's\n          delegators.\n      description:\n        description: description defines the description terms for the validator.\n        type: object\n        properties:\n          moniker:\n            type: string\n            description: moniker defines a human-readable name for the validator.\n          identity:\n            type: string\n            description: >-\n              identity defines an optional identity signature (ex. UPort or\n              Keybase).\n          website:\n            type: string\n            description: website defines an optional website link.\n          security_contact:\n            type: string\n            description: security_contact defines an optional email for security contact.\n          details:\n            type: string\n            description: details define other optional details.\n      unbonding_height:\n        type: string\n        format: int64\n        description: >-\n          unbonding_height defines, if unbonding, the height at which this\n          validator has begun unbonding.\n      unbonding_time:\n        type: string\n        format: date-time\n        description: >-\n          unbonding_time defines, if unbonding, the min time for the validator\n          to complete unbonding.\n      commission:\n        description: commission defines the commission parameters.\n        type: object\n        properties:\n          commission_rates:\n            description: >-\n              commission_rates defines the initial commission rates to be used\n              for creating a validator.\n            type: object\n            properties:\n              rate:\n                type: string\n                description: >-\n                  rate is the commission rate charged to delegators, as a\n                  fraction.\n              max_rate:\n                type: string\n                description: >-\n                  max_rate defines the maximum commission rate which validator\n                  can ever charge, as a fraction.\n              max_change_rate:\n                type: string\n                description: >-\n                  max_change_rate defines the maximum daily increase of the\n                  validator commission, as a fraction.\n          update_time:\n            type: string\n            format: date-time\n            description: update_time is the last time the commission rate was changed.\n      min_self_delegation:\n        type: string\n        description: >-\n          min_self_delegation is the validator's self declared minimum self\n          delegation.\n\n\n          Since: cosmos-sdk 0.46\n    description: >-\n      Validator defines a validator, together with the total amount of the\n\n      Validator's bond shares and their exchange rate to coins. Slashing results\n      in\n\n      a decrease in the exchange rate, allowing correct calculation of future\n\n      undelegations without iterating over delegators. When coins are delegated\n      to\n\n      this validator, the validator is credited with a delegation whose number\n      of\n\n      bond shares is based on the amount of coins delegated divided by the\n      current\n\n      exchange rate. Voting power can be calculated as total bonded shares\n\n      multiplied by exchange rate.\n  cosmos.base.abci.v1beta1.ABCIMessageLog:\n    type: object\n    properties:\n      msg_index:\n        type: integer\n        format: int64\n      log:\n        type: string\n      events:\n        type: array\n        items:\n          type: object\n          properties:\n            type:\n              type: string\n            attributes:\n              type: array\n              items:\n                type: object\n                properties:\n                  key:\n                    type: string\n                  value:\n                    type: string\n                description: >-\n                  Attribute defines an attribute wrapper where the key and value\n                  are\n\n                  strings instead of raw bytes.\n          description: |-\n            StringEvent defines en Event object wrapper where all the attributes\n            contain key/value pairs that are strings instead of raw bytes.\n        description: |-\n          Events contains a slice of Event objects that were emitted during some\n          execution.\n    description: >-\n      ABCIMessageLog defines a structure containing an indexed tx ABCI message\n      log.\n  cosmos.base.abci.v1beta1.Attribute:\n    type: object\n    properties:\n      key:\n        type: string\n      value:\n        type: string\n    description: |-\n      Attribute defines an attribute wrapper where the key and value are\n      strings instead of raw bytes.\n  cosmos.base.abci.v1beta1.GasInfo:\n    type: object\n    properties:\n      gas_wanted:\n        type: string\n        format: uint64\n        description: GasWanted is the maximum units of work we allow this tx to perform.\n      gas_used:\n        type: string\n        format: uint64\n        description: GasUsed is the amount of gas actually consumed.\n    description: GasInfo defines tx execution gas context.\n  cosmos.base.abci.v1beta1.Result:\n    type: object\n    properties:\n      data:\n        type: string\n        format: byte\n        description: >-\n          Data is any data returned from message or handler execution. It MUST\n          be\n\n          length prefixed in order to separate data from multiple message\n          executions.\n\n          Deprecated. This field is still populated, but prefer msg_response\n          instead\n\n          because it also contains the Msg response typeURL.\n      log:\n        type: string\n        description: Log contains the log information from message or handler execution.\n      events:\n        type: array\n        items:\n          type: object\n          properties:\n            type:\n              type: string\n            attributes:\n              type: array\n              items:\n                type: object\n                properties:\n                  key:\n                    type: string\n                    format: byte\n                  value:\n                    type: string\n                    format: byte\n                  index:\n                    type: boolean\n                description: >-\n                  EventAttribute is a single key-value pair, associated with an\n                  event.\n          description: >-\n            Event allows application developers to attach additional information\n            to\n\n            ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n            ResponseDeliverTx.\n\n            Later, transactions may be queried using these events.\n        description: >-\n          Events contains a slice of Event objects that were emitted during\n          message\n\n          or handler execution.\n      msg_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        description: |-\n          msg_responses contains the Msg handler responses type packed in Anys.\n\n          Since: cosmos-sdk 0.46\n    description: Result is the union of ResponseFormat and ResponseCheckTx.\n  cosmos.base.abci.v1beta1.StringEvent:\n    type: object\n    properties:\n      type:\n        type: string\n      attributes:\n        type: array\n        items:\n          type: object\n          properties:\n            key:\n              type: string\n            value:\n              type: string\n          description: |-\n            Attribute defines an attribute wrapper where the key and value are\n            strings instead of raw bytes.\n    description: |-\n      StringEvent defines en Event object wrapper where all the attributes\n      contain key/value pairs that are strings instead of raw bytes.\n  cosmos.base.abci.v1beta1.TxResponse:\n    type: object\n    properties:\n      height:\n        type: string\n        format: int64\n        title: The block height\n      txhash:\n        type: string\n        description: The transaction hash.\n      codespace:\n        type: string\n        title: Namespace for the Code\n      code:\n        type: integer\n        format: int64\n        description: Response code.\n      data:\n        type: string\n        description: Result bytes, if any.\n      raw_log:\n        type: string\n        description: |-\n          The output of the application's logger (raw string). May be\n          non-deterministic.\n      logs:\n        type: array\n        items:\n          type: object\n          properties:\n            msg_index:\n              type: integer\n              format: int64\n            log:\n              type: string\n            events:\n              type: array\n              items:\n                type: object\n                properties:\n                  type:\n                    type: string\n                  attributes:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        key:\n                          type: string\n                        value:\n                          type: string\n                      description: >-\n                        Attribute defines an attribute wrapper where the key and\n                        value are\n\n                        strings instead of raw bytes.\n                description: >-\n                  StringEvent defines en Event object wrapper where all the\n                  attributes\n\n                  contain key/value pairs that are strings instead of raw bytes.\n              description: >-\n                Events contains a slice of Event objects that were emitted\n                during some\n\n                execution.\n          description: >-\n            ABCIMessageLog defines a structure containing an indexed tx ABCI\n            message log.\n        description: >-\n          The output of the application's logger (typed). May be\n          non-deterministic.\n      info:\n        type: string\n        description: Additional information. May be non-deterministic.\n      gas_wanted:\n        type: string\n        format: int64\n        description: Amount of gas requested for transaction.\n      gas_used:\n        type: string\n        format: int64\n        description: Amount of gas consumed by transaction.\n      tx:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      timestamp:\n        type: string\n        description: >-\n          Time of the previous block. For heights > 1, it's the weighted median\n          of\n\n          the timestamps of the valid votes in the block.LastCommit. For height\n          == 1,\n\n          it's genesis time.\n      events:\n        type: array\n        items:\n          type: object\n          properties:\n            type:\n              type: string\n            attributes:\n              type: array\n              items:\n                type: object\n                properties:\n                  key:\n                    type: string\n                    format: byte\n                  value:\n                    type: string\n                    format: byte\n                  index:\n                    type: boolean\n                description: >-\n                  EventAttribute is a single key-value pair, associated with an\n                  event.\n          description: >-\n            Event allows application developers to attach additional information\n            to\n\n            ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n            ResponseDeliverTx.\n\n            Later, transactions may be queried using these events.\n        description: >-\n          Events defines all the events emitted by processing a transaction.\n          Note,\n\n          these events include those emitted by processing all the messages and\n          those\n\n          emitted from the ante. Whereas Logs contains the events, with\n\n          additional metadata, emitted only by processing the messages.\n\n\n          Since: cosmos-sdk 0.42.11, 0.44.5, 0.45\n    description: >-\n      TxResponse defines a structure containing relevant tx data and metadata.\n      The\n\n      tags are stringified and the log is JSON decoded.\n  cosmos.crypto.multisig.v1beta1.CompactBitArray:\n    type: object\n    properties:\n      extra_bits_stored:\n        type: integer\n        format: int64\n      elems:\n        type: string\n        format: byte\n    description: |-\n      CompactBitArray is an implementation of a space efficient bit array.\n      This is used to ensure that the encoded data takes up a minimal amount of\n      space after proto encoding.\n      This is not thread safe, and is not intended for concurrent usage.\n  cosmos.tx.signing.v1beta1.SignMode:\n    type: string\n    enum:\n      - SIGN_MODE_UNSPECIFIED\n      - SIGN_MODE_DIRECT\n      - SIGN_MODE_TEXTUAL\n      - SIGN_MODE_DIRECT_AUX\n      - SIGN_MODE_LEGACY_AMINO_JSON\n      - SIGN_MODE_EIP_191\n    default: SIGN_MODE_UNSPECIFIED\n    description: |-\n      SignMode represents a signing mode with its own security guarantees.\n\n      This enum should be considered a registry of all known sign modes\n      in the Cosmos ecosystem. Apps are not expected to support all known\n      sign modes. Apps that would like to support custom  sign modes are\n      encouraged to open a small PR against this file to add a new case\n      to this SignMode enum describing their sign mode so that different\n      apps have a consistent version of this enum.\n\n       - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be\n      rejected.\n       - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is\n      verified with raw bytes from Tx.\n       - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some\n      human-readable textual representation on top of the binary representation\n      from SIGN_MODE_DIRECT. It is currently not supported.\n       - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses\n      SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does not\n      require signers signing over other signers' `signer_info`. It also allows\n      for adding Tips in transactions.\n\n      Since: cosmos-sdk 0.46\n       - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses\n      Amino JSON and will be removed in the future.\n       - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos\n      SDK. Ref: https://eips.ethereum.org/EIPS/eip-191\n\n      Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,\n      but is not implemented on the SDK by default. To enable EIP-191, you need\n      to pass a custom `TxConfig` that has an implementation of\n      `SignModeHandler` for EIP-191. The SDK may decide to fully support\n      EIP-191 in the future.\n\n      Since: cosmos-sdk 0.45.2\n  cosmos.tx.v1beta1.AuthInfo:\n    type: object\n    properties:\n      signer_infos:\n        type: array\n        items:\n          $ref: '#/definitions/cosmos.tx.v1beta1.SignerInfo'\n        description: >-\n          signer_infos defines the signing modes for the required signers. The\n          number\n\n          and order of elements must match the required signers from TxBody's\n\n          messages. The first element is the primary signer and the one which\n          pays\n\n          the fee.\n      fee:\n        description: >-\n          Fee is the fee and gas limit for the transaction. The first signer is\n          the\n\n          primary signer and the one which pays the fee. The fee can be\n          calculated\n\n          based on the cost of evaluating the body and doing signature\n          verification\n\n          of the signers. This can be estimated via simulation.\n        type: object\n        properties:\n          amount:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            title: amount is the amount of coins to be paid as a fee\n          gas_limit:\n            type: string\n            format: uint64\n            title: >-\n              gas_limit is the maximum gas that can be used in transaction\n              processing\n\n              before an out of gas error occurs\n          payer:\n            type: string\n            description: >-\n              if unset, the first signer is responsible for paying the fees. If\n              set, the specified account must pay the fees.\n\n              the payer must be a tx signer (and thus have signed this field in\n              AuthInfo).\n\n              setting this field does *not* change the ordering of required\n              signers for the transaction.\n          granter:\n            type: string\n            title: >-\n              if set, the fee payer (either the first signer or the value of the\n              payer field) requests that a fee grant be used\n\n              to pay fees instead of the fee payer's own balance. If an\n              appropriate fee grant does not exist or the chain does\n\n              not support fee grants, this will fail\n      tip:\n        description: >-\n          Tip is the optional tip used for transactions fees paid in another\n          denom.\n\n\n          This field is ignored if the chain didn't enable tips, i.e. didn't add\n          the\n\n          `TipDecorator` in its posthandler.\n\n\n          Since: cosmos-sdk 0.46\n        type: object\n        properties:\n          amount:\n            type: array\n            items:\n              type: object\n              properties:\n                denom:\n                  type: string\n                amount:\n                  type: string\n              description: >-\n                Coin defines a token with a denomination and an amount.\n\n\n                NOTE: The amount field is an Int which implements the custom\n                method\n\n                signatures required by gogoproto.\n            title: amount is the amount of the tip\n          tipper:\n            type: string\n            title: tipper is the address of the account paying for the tip\n    description: |-\n      AuthInfo describes the fee and signer modes that are used to sign a\n      transaction.\n  cosmos.tx.v1beta1.BroadcastMode:\n    type: string\n    enum:\n      - BROADCAST_MODE_UNSPECIFIED\n      - BROADCAST_MODE_BLOCK\n      - BROADCAST_MODE_SYNC\n      - BROADCAST_MODE_ASYNC\n    default: BROADCAST_MODE_UNSPECIFIED\n    description: >-\n      BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC\n      method.\n\n       - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering\n       - BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for\n      the tx to be committed in a block.\n       - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for\n      a CheckTx execution response only.\n       - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns\n      immediately.\n  cosmos.tx.v1beta1.BroadcastTxRequest:\n    type: object\n    properties:\n      tx_bytes:\n        type: string\n        format: byte\n        description: tx_bytes is the raw transaction.\n      mode:\n        type: string\n        enum:\n          - BROADCAST_MODE_UNSPECIFIED\n          - BROADCAST_MODE_BLOCK\n          - BROADCAST_MODE_SYNC\n          - BROADCAST_MODE_ASYNC\n        default: BROADCAST_MODE_UNSPECIFIED\n        description: >-\n          BroadcastMode specifies the broadcast mode for the TxService.Broadcast\n          RPC method.\n\n           - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering\n           - BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for\n          the tx to be committed in a block.\n           - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for\n          a CheckTx execution response only.\n           - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns\n          immediately.\n    description: |-\n      BroadcastTxRequest is the request type for the Service.BroadcastTxRequest\n      RPC method.\n  cosmos.tx.v1beta1.BroadcastTxResponse:\n    type: object\n    properties:\n      tx_response:\n        type: object\n        properties:\n          height:\n            type: string\n            format: int64\n            title: The block height\n          txhash:\n            type: string\n            description: The transaction hash.\n          codespace:\n            type: string\n            title: Namespace for the Code\n          code:\n            type: integer\n            format: int64\n            description: Response code.\n          data:\n            type: string\n            description: Result bytes, if any.\n          raw_log:\n            type: string\n            description: |-\n              The output of the application's logger (raw string). May be\n              non-deterministic.\n          logs:\n            type: array\n            items:\n              type: object\n              properties:\n                msg_index:\n                  type: integer\n                  format: int64\n                log:\n                  type: string\n                events:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      type:\n                        type: string\n                      attributes:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            key:\n                              type: string\n                            value:\n                              type: string\n                          description: >-\n                            Attribute defines an attribute wrapper where the key\n                            and value are\n\n                            strings instead of raw bytes.\n                    description: >-\n                      StringEvent defines en Event object wrapper where all the\n                      attributes\n\n                      contain key/value pairs that are strings instead of raw\n                      bytes.\n                  description: >-\n                    Events contains a slice of Event objects that were emitted\n                    during some\n\n                    execution.\n              description: >-\n                ABCIMessageLog defines a structure containing an indexed tx ABCI\n                message log.\n            description: >-\n              The output of the application's logger (typed). May be\n              non-deterministic.\n          info:\n            type: string\n            description: Additional information. May be non-deterministic.\n          gas_wanted:\n            type: string\n            format: int64\n            description: Amount of gas requested for transaction.\n          gas_used:\n            type: string\n            format: int64\n            description: Amount of gas consumed by transaction.\n          tx:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n          timestamp:\n            type: string\n            description: >-\n              Time of the previous block. For heights > 1, it's the weighted\n              median of\n\n              the timestamps of the valid votes in the block.LastCommit. For\n              height == 1,\n\n              it's genesis time.\n          events:\n            type: array\n            items:\n              type: object\n              properties:\n                type:\n                  type: string\n                attributes:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      key:\n                        type: string\n                        format: byte\n                      value:\n                        type: string\n                        format: byte\n                      index:\n                        type: boolean\n                    description: >-\n                      EventAttribute is a single key-value pair, associated with\n                      an event.\n              description: >-\n                Event allows application developers to attach additional\n                information to\n\n                ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n                ResponseDeliverTx.\n\n                Later, transactions may be queried using these events.\n            description: >-\n              Events defines all the events emitted by processing a transaction.\n              Note,\n\n              these events include those emitted by processing all the messages\n              and those\n\n              emitted from the ante. Whereas Logs contains the events, with\n\n              additional metadata, emitted only by processing the messages.\n\n\n              Since: cosmos-sdk 0.42.11, 0.44.5, 0.45\n        description: >-\n          TxResponse defines a structure containing relevant tx data and\n          metadata. The\n\n          tags are stringified and the log is JSON decoded.\n    description: |-\n      BroadcastTxResponse is the response type for the\n      Service.BroadcastTx method.\n  cosmos.tx.v1beta1.Fee:\n    type: object\n    properties:\n      amount:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        title: amount is the amount of coins to be paid as a fee\n      gas_limit:\n        type: string\n        format: uint64\n        title: >-\n          gas_limit is the maximum gas that can be used in transaction\n          processing\n\n          before an out of gas error occurs\n      payer:\n        type: string\n        description: >-\n          if unset, the first signer is responsible for paying the fees. If set,\n          the specified account must pay the fees.\n\n          the payer must be a tx signer (and thus have signed this field in\n          AuthInfo).\n\n          setting this field does *not* change the ordering of required signers\n          for the transaction.\n      granter:\n        type: string\n        title: >-\n          if set, the fee payer (either the first signer or the value of the\n          payer field) requests that a fee grant be used\n\n          to pay fees instead of the fee payer's own balance. If an appropriate\n          fee grant does not exist or the chain does\n\n          not support fee grants, this will fail\n    description: >-\n      Fee includes the amount of coins paid in fees and the maximum\n\n      gas to be used by the transaction. The ratio yields an effective\n      \"gasprice\",\n\n      which must be above some miminum to be accepted into the mempool.\n  cosmos.tx.v1beta1.GetBlockWithTxsResponse:\n    type: object\n    properties:\n      txs:\n        type: array\n        items:\n          $ref: '#/definitions/cosmos.tx.v1beta1.Tx'\n        description: txs are the transactions in the block.\n      block_id:\n        type: object\n        properties:\n          hash:\n            type: string\n            format: byte\n          part_set_header:\n            type: object\n            properties:\n              total:\n                type: integer\n                format: int64\n              hash:\n                type: string\n                format: byte\n            title: PartsetHeader\n        title: BlockID\n      block:\n        type: object\n        properties:\n          header:\n            type: object\n            properties:\n              version:\n                title: basic block info\n                type: object\n                properties:\n                  block:\n                    type: string\n                    format: uint64\n                  app:\n                    type: string\n                    format: uint64\n                description: >-\n                  Consensus captures the consensus rules for processing a block\n                  in the blockchain,\n\n                  including all blockchain data structures and the rules of the\n                  application's\n\n                  state transition machine.\n              chain_id:\n                type: string\n              height:\n                type: string\n                format: int64\n              time:\n                type: string\n                format: date-time\n              last_block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              last_commit_hash:\n                type: string\n                format: byte\n                title: hashes of block data\n              data_hash:\n                type: string\n                format: byte\n              validators_hash:\n                type: string\n                format: byte\n                title: hashes from the app output from the prev block\n              next_validators_hash:\n                type: string\n                format: byte\n              consensus_hash:\n                type: string\n                format: byte\n              app_hash:\n                type: string\n                format: byte\n              last_results_hash:\n                type: string\n                format: byte\n              evidence_hash:\n                type: string\n                format: byte\n                title: consensus info\n              proposer_address:\n                type: string\n                format: byte\n            description: Header defines the structure of a Tendermint block header.\n          data:\n            type: object\n            properties:\n              txs:\n                type: array\n                items:\n                  type: string\n                  format: byte\n                description: >-\n                  Txs that will be applied by state @ block.Height+1.\n\n                  NOTE: not all txs here are valid.  We're just agreeing on the\n                  order first.\n\n                  This means that block.AppHash does not include these txs.\n            title: Data contains the set of transactions included in the block\n          evidence:\n            type: object\n            properties:\n              evidence:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    duplicate_vote_evidence:\n                      type: object\n                      properties:\n                        vote_a:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        vote_b:\n                          type: object\n                          properties:\n                            type:\n                              type: string\n                              enum:\n                                - SIGNED_MSG_TYPE_UNKNOWN\n                                - SIGNED_MSG_TYPE_PREVOTE\n                                - SIGNED_MSG_TYPE_PRECOMMIT\n                                - SIGNED_MSG_TYPE_PROPOSAL\n                              default: SIGNED_MSG_TYPE_UNKNOWN\n                              description: >-\n                                SignedMsgType is a type of signed message in the\n                                consensus.\n\n                                 - SIGNED_MSG_TYPE_PREVOTE: Votes\n                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals\n                            height:\n                              type: string\n                              format: int64\n                            round:\n                              type: integer\n                              format: int32\n                            block_id:\n                              type: object\n                              properties:\n                                hash:\n                                  type: string\n                                  format: byte\n                                part_set_header:\n                                  type: object\n                                  properties:\n                                    total:\n                                      type: integer\n                                      format: int64\n                                    hash:\n                                      type: string\n                                      format: byte\n                                  title: PartsetHeader\n                              title: BlockID\n                            timestamp:\n                              type: string\n                              format: date-time\n                            validator_address:\n                              type: string\n                              format: byte\n                            validator_index:\n                              type: integer\n                              format: int32\n                            signature:\n                              type: string\n                              format: byte\n                          description: >-\n                            Vote represents a prevote, precommit, or commit vote\n                            from validators for\n\n                            consensus.\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        validator_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        DuplicateVoteEvidence contains evidence of a validator\n                        signed two conflicting votes.\n                    light_client_attack_evidence:\n                      type: object\n                      properties:\n                        conflicting_block:\n                          type: object\n                          properties:\n                            signed_header:\n                              type: object\n                              properties:\n                                header:\n                                  type: object\n                                  properties:\n                                    version:\n                                      title: basic block info\n                                      type: object\n                                      properties:\n                                        block:\n                                          type: string\n                                          format: uint64\n                                        app:\n                                          type: string\n                                          format: uint64\n                                      description: >-\n                                        Consensus captures the consensus rules\n                                        for processing a block in the\n                                        blockchain,\n\n                                        including all blockchain data structures\n                                        and the rules of the application's\n\n                                        state transition machine.\n                                    chain_id:\n                                      type: string\n                                    height:\n                                      type: string\n                                      format: int64\n                                    time:\n                                      type: string\n                                      format: date-time\n                                    last_block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    last_commit_hash:\n                                      type: string\n                                      format: byte\n                                      title: hashes of block data\n                                    data_hash:\n                                      type: string\n                                      format: byte\n                                    validators_hash:\n                                      type: string\n                                      format: byte\n                                      title: >-\n                                        hashes from the app output from the prev\n                                        block\n                                    next_validators_hash:\n                                      type: string\n                                      format: byte\n                                    consensus_hash:\n                                      type: string\n                                      format: byte\n                                    app_hash:\n                                      type: string\n                                      format: byte\n                                    last_results_hash:\n                                      type: string\n                                      format: byte\n                                    evidence_hash:\n                                      type: string\n                                      format: byte\n                                      title: consensus info\n                                    proposer_address:\n                                      type: string\n                                      format: byte\n                                  description: >-\n                                    Header defines the structure of a Tendermint\n                                    block header.\n                                commit:\n                                  type: object\n                                  properties:\n                                    height:\n                                      type: string\n                                      format: int64\n                                    round:\n                                      type: integer\n                                      format: int32\n                                    block_id:\n                                      type: object\n                                      properties:\n                                        hash:\n                                          type: string\n                                          format: byte\n                                        part_set_header:\n                                          type: object\n                                          properties:\n                                            total:\n                                              type: integer\n                                              format: int64\n                                            hash:\n                                              type: string\n                                              format: byte\n                                          title: PartsetHeader\n                                      title: BlockID\n                                    signatures:\n                                      type: array\n                                      items:\n                                        type: object\n                                        properties:\n                                          block_id_flag:\n                                            type: string\n                                            enum:\n                                              - BLOCK_ID_FLAG_UNKNOWN\n                                              - BLOCK_ID_FLAG_ABSENT\n                                              - BLOCK_ID_FLAG_COMMIT\n                                              - BLOCK_ID_FLAG_NIL\n                                            default: BLOCK_ID_FLAG_UNKNOWN\n                                            title: >-\n                                              BlockIdFlag indicates which BlcokID the\n                                              signature is for\n                                          validator_address:\n                                            type: string\n                                            format: byte\n                                          timestamp:\n                                            type: string\n                                            format: date-time\n                                          signature:\n                                            type: string\n                                            format: byte\n                                        description: >-\n                                          CommitSig is a part of the Vote included\n                                          in a Commit.\n                                  description: >-\n                                    Commit contains the evidence that a block\n                                    was committed by a set of validators.\n                            validator_set:\n                              type: object\n                              properties:\n                                validators:\n                                  type: array\n                                  items:\n                                    type: object\n                                    properties:\n                                      address:\n                                        type: string\n                                        format: byte\n                                      pub_key:\n                                        type: object\n                                        properties:\n                                          ed25519:\n                                            type: string\n                                            format: byte\n                                          secp256k1:\n                                            type: string\n                                            format: byte\n                                        title: >-\n                                          PublicKey defines the keys available for\n                                          use with Tendermint Validators\n                                      voting_power:\n                                        type: string\n                                        format: int64\n                                      proposer_priority:\n                                        type: string\n                                        format: int64\n                                proposer:\n                                  type: object\n                                  properties:\n                                    address:\n                                      type: string\n                                      format: byte\n                                    pub_key:\n                                      type: object\n                                      properties:\n                                        ed25519:\n                                          type: string\n                                          format: byte\n                                        secp256k1:\n                                          type: string\n                                          format: byte\n                                      title: >-\n                                        PublicKey defines the keys available for\n                                        use with Tendermint Validators\n                                    voting_power:\n                                      type: string\n                                      format: int64\n                                    proposer_priority:\n                                      type: string\n                                      format: int64\n                                total_voting_power:\n                                  type: string\n                                  format: int64\n                        common_height:\n                          type: string\n                          format: int64\n                        byzantine_validators:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              address:\n                                type: string\n                                format: byte\n                              pub_key:\n                                type: object\n                                properties:\n                                  ed25519:\n                                    type: string\n                                    format: byte\n                                  secp256k1:\n                                    type: string\n                                    format: byte\n                                title: >-\n                                  PublicKey defines the keys available for use\n                                  with Tendermint Validators\n                              voting_power:\n                                type: string\n                                format: int64\n                              proposer_priority:\n                                type: string\n                                format: int64\n                        total_voting_power:\n                          type: string\n                          format: int64\n                        timestamp:\n                          type: string\n                          format: date-time\n                      description: >-\n                        LightClientAttackEvidence contains evidence of a set of\n                        validators attempting to mislead a light client.\n          last_commit:\n            type: object\n            properties:\n              height:\n                type: string\n                format: int64\n              round:\n                type: integer\n                format: int32\n              block_id:\n                type: object\n                properties:\n                  hash:\n                    type: string\n                    format: byte\n                  part_set_header:\n                    type: object\n                    properties:\n                      total:\n                        type: integer\n                        format: int64\n                      hash:\n                        type: string\n                        format: byte\n                    title: PartsetHeader\n                title: BlockID\n              signatures:\n                type: array\n                items:\n                  type: object\n                  properties:\n                    block_id_flag:\n                      type: string\n                      enum:\n                        - BLOCK_ID_FLAG_UNKNOWN\n                        - BLOCK_ID_FLAG_ABSENT\n                        - BLOCK_ID_FLAG_COMMIT\n                        - BLOCK_ID_FLAG_NIL\n                      default: BLOCK_ID_FLAG_UNKNOWN\n                      title: BlockIdFlag indicates which BlcokID the signature is for\n                    validator_address:\n                      type: string\n                      format: byte\n                    timestamp:\n                      type: string\n                      format: date-time\n                    signature:\n                      type: string\n                      format: byte\n                  description: CommitSig is a part of the Vote included in a Commit.\n            description: >-\n              Commit contains the evidence that a block was committed by a set\n              of validators.\n      pagination:\n        description: pagination defines a pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      GetBlockWithTxsResponse is the response type for the\n      Service.GetBlockWithTxs method.\n\n\n      Since: cosmos-sdk 0.45.2\n  cosmos.tx.v1beta1.GetTxResponse:\n    type: object\n    properties:\n      tx:\n        $ref: '#/definitions/cosmos.tx.v1beta1.Tx'\n        description: tx is the queried transaction.\n      tx_response:\n        type: object\n        properties:\n          height:\n            type: string\n            format: int64\n            title: The block height\n          txhash:\n            type: string\n            description: The transaction hash.\n          codespace:\n            type: string\n            title: Namespace for the Code\n          code:\n            type: integer\n            format: int64\n            description: Response code.\n          data:\n            type: string\n            description: Result bytes, if any.\n          raw_log:\n            type: string\n            description: |-\n              The output of the application's logger (raw string). May be\n              non-deterministic.\n          logs:\n            type: array\n            items:\n              type: object\n              properties:\n                msg_index:\n                  type: integer\n                  format: int64\n                log:\n                  type: string\n                events:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      type:\n                        type: string\n                      attributes:\n                        type: array\n                        items:\n                          type: object\n                          properties:\n                            key:\n                              type: string\n                            value:\n                              type: string\n                          description: >-\n                            Attribute defines an attribute wrapper where the key\n                            and value are\n\n                            strings instead of raw bytes.\n                    description: >-\n                      StringEvent defines en Event object wrapper where all the\n                      attributes\n\n                      contain key/value pairs that are strings instead of raw\n                      bytes.\n                  description: >-\n                    Events contains a slice of Event objects that were emitted\n                    during some\n\n                    execution.\n              description: >-\n                ABCIMessageLog defines a structure containing an indexed tx ABCI\n                message log.\n            description: >-\n              The output of the application's logger (typed). May be\n              non-deterministic.\n          info:\n            type: string\n            description: Additional information. May be non-deterministic.\n          gas_wanted:\n            type: string\n            format: int64\n            description: Amount of gas requested for transaction.\n          gas_used:\n            type: string\n            format: int64\n            description: Amount of gas consumed by transaction.\n          tx:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n          timestamp:\n            type: string\n            description: >-\n              Time of the previous block. For heights > 1, it's the weighted\n              median of\n\n              the timestamps of the valid votes in the block.LastCommit. For\n              height == 1,\n\n              it's genesis time.\n          events:\n            type: array\n            items:\n              type: object\n              properties:\n                type:\n                  type: string\n                attributes:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      key:\n                        type: string\n                        format: byte\n                      value:\n                        type: string\n                        format: byte\n                      index:\n                        type: boolean\n                    description: >-\n                      EventAttribute is a single key-value pair, associated with\n                      an event.\n              description: >-\n                Event allows application developers to attach additional\n                information to\n\n                ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n                ResponseDeliverTx.\n\n                Later, transactions may be queried using these events.\n            description: >-\n              Events defines all the events emitted by processing a transaction.\n              Note,\n\n              these events include those emitted by processing all the messages\n              and those\n\n              emitted from the ante. Whereas Logs contains the events, with\n\n              additional metadata, emitted only by processing the messages.\n\n\n              Since: cosmos-sdk 0.42.11, 0.44.5, 0.45\n        description: >-\n          TxResponse defines a structure containing relevant tx data and\n          metadata. The\n\n          tags are stringified and the log is JSON decoded.\n    description: GetTxResponse is the response type for the Service.GetTx method.\n  cosmos.tx.v1beta1.GetTxsEventResponse:\n    type: object\n    properties:\n      txs:\n        type: array\n        items:\n          $ref: '#/definitions/cosmos.tx.v1beta1.Tx'\n        description: txs is the list of queried transactions.\n      tx_responses:\n        type: array\n        items:\n          type: object\n          properties:\n            height:\n              type: string\n              format: int64\n              title: The block height\n            txhash:\n              type: string\n              description: The transaction hash.\n            codespace:\n              type: string\n              title: Namespace for the Code\n            code:\n              type: integer\n              format: int64\n              description: Response code.\n            data:\n              type: string\n              description: Result bytes, if any.\n            raw_log:\n              type: string\n              description: |-\n                The output of the application's logger (raw string). May be\n                non-deterministic.\n            logs:\n              type: array\n              items:\n                type: object\n                properties:\n                  msg_index:\n                    type: integer\n                    format: int64\n                  log:\n                    type: string\n                  events:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        type:\n                          type: string\n                        attributes:\n                          type: array\n                          items:\n                            type: object\n                            properties:\n                              key:\n                                type: string\n                              value:\n                                type: string\n                            description: >-\n                              Attribute defines an attribute wrapper where the\n                              key and value are\n\n                              strings instead of raw bytes.\n                      description: >-\n                        StringEvent defines en Event object wrapper where all\n                        the attributes\n\n                        contain key/value pairs that are strings instead of raw\n                        bytes.\n                    description: >-\n                      Events contains a slice of Event objects that were emitted\n                      during some\n\n                      execution.\n                description: >-\n                  ABCIMessageLog defines a structure containing an indexed tx\n                  ABCI message log.\n              description: >-\n                The output of the application's logger (typed). May be\n                non-deterministic.\n            info:\n              type: string\n              description: Additional information. May be non-deterministic.\n            gas_wanted:\n              type: string\n              format: int64\n              description: Amount of gas requested for transaction.\n            gas_used:\n              type: string\n              format: int64\n              description: Amount of gas consumed by transaction.\n            tx:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            timestamp:\n              type: string\n              description: >-\n                Time of the previous block. For heights > 1, it's the weighted\n                median of\n\n                the timestamps of the valid votes in the block.LastCommit. For\n                height == 1,\n\n                it's genesis time.\n            events:\n              type: array\n              items:\n                type: object\n                properties:\n                  type:\n                    type: string\n                  attributes:\n                    type: array\n                    items:\n                      type: object\n                      properties:\n                        key:\n                          type: string\n                          format: byte\n                        value:\n                          type: string\n                          format: byte\n                        index:\n                          type: boolean\n                      description: >-\n                        EventAttribute is a single key-value pair, associated\n                        with an event.\n                description: >-\n                  Event allows application developers to attach additional\n                  information to\n\n                  ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n                  ResponseDeliverTx.\n\n                  Later, transactions may be queried using these events.\n              description: >-\n                Events defines all the events emitted by processing a\n                transaction. Note,\n\n                these events include those emitted by processing all the\n                messages and those\n\n                emitted from the ante. Whereas Logs contains the events, with\n\n                additional metadata, emitted only by processing the messages.\n\n\n                Since: cosmos-sdk 0.42.11, 0.44.5, 0.45\n          description: >-\n            TxResponse defines a structure containing relevant tx data and\n            metadata. The\n\n            tags are stringified and the log is JSON decoded.\n        description: tx_responses is the list of queried TxResponses.\n      pagination:\n        description: |-\n          pagination defines a pagination for the response.\n          Deprecated post v0.46.x: use total instead.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n      total:\n        type: string\n        format: uint64\n        title: total is total number of results available\n    description: |-\n      GetTxsEventResponse is the response type for the Service.TxsByEvents\n      RPC method.\n  cosmos.tx.v1beta1.ModeInfo:\n    type: object\n    properties:\n      single:\n        title: single represents a single signer\n        type: object\n        properties:\n          mode:\n            title: mode is the signing mode of the single signer\n            type: string\n            enum:\n              - SIGN_MODE_UNSPECIFIED\n              - SIGN_MODE_DIRECT\n              - SIGN_MODE_TEXTUAL\n              - SIGN_MODE_DIRECT_AUX\n              - SIGN_MODE_LEGACY_AMINO_JSON\n              - SIGN_MODE_EIP_191\n            default: SIGN_MODE_UNSPECIFIED\n            description: >-\n              SignMode represents a signing mode with its own security\n              guarantees.\n\n\n              This enum should be considered a registry of all known sign modes\n\n              in the Cosmos ecosystem. Apps are not expected to support all\n              known\n\n              sign modes. Apps that would like to support custom  sign modes are\n\n              encouraged to open a small PR against this file to add a new case\n\n              to this SignMode enum describing their sign mode so that different\n\n              apps have a consistent version of this enum.\n\n               - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be\n              rejected.\n               - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is\n              verified with raw bytes from Tx.\n               - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some\n              human-readable textual representation on top of the binary\n              representation\n\n              from SIGN_MODE_DIRECT. It is currently not supported.\n               - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses\n              SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode\n              does not\n\n              require signers signing over other signers' `signer_info`. It also\n              allows\n\n              for adding Tips in transactions.\n\n\n              Since: cosmos-sdk 0.46\n               - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses\n              Amino JSON and will be removed in the future.\n               - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos\n              SDK. Ref: https://eips.ethereum.org/EIPS/eip-191\n\n\n              Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum\n              variant,\n\n              but is not implemented on the SDK by default. To enable EIP-191,\n              you need\n\n              to pass a custom `TxConfig` that has an implementation of\n\n              `SignModeHandler` for EIP-191. The SDK may decide to fully support\n\n              EIP-191 in the future.\n\n\n              Since: cosmos-sdk 0.45.2\n      multi:\n        $ref: '#/definitions/cosmos.tx.v1beta1.ModeInfo.Multi'\n        title: multi represents a nested multisig signer\n    description: ModeInfo describes the signing mode of a single or nested multisig signer.\n  cosmos.tx.v1beta1.ModeInfo.Multi:\n    type: object\n    properties:\n      bitarray:\n        title: bitarray specifies which keys within the multisig are signing\n        type: object\n        properties:\n          extra_bits_stored:\n            type: integer\n            format: int64\n          elems:\n            type: string\n            format: byte\n        description: >-\n          CompactBitArray is an implementation of a space efficient bit array.\n\n          This is used to ensure that the encoded data takes up a minimal amount\n          of\n\n          space after proto encoding.\n\n          This is not thread safe, and is not intended for concurrent usage.\n      mode_infos:\n        type: array\n        items:\n          $ref: '#/definitions/cosmos.tx.v1beta1.ModeInfo'\n        title: |-\n          mode_infos is the corresponding modes of the signers of the multisig\n          which could include nested multisig public keys\n    title: Multi is the mode info for a multisig public key\n  cosmos.tx.v1beta1.ModeInfo.Single:\n    type: object\n    properties:\n      mode:\n        title: mode is the signing mode of the single signer\n        type: string\n        enum:\n          - SIGN_MODE_UNSPECIFIED\n          - SIGN_MODE_DIRECT\n          - SIGN_MODE_TEXTUAL\n          - SIGN_MODE_DIRECT_AUX\n          - SIGN_MODE_LEGACY_AMINO_JSON\n          - SIGN_MODE_EIP_191\n        default: SIGN_MODE_UNSPECIFIED\n        description: >-\n          SignMode represents a signing mode with its own security guarantees.\n\n\n          This enum should be considered a registry of all known sign modes\n\n          in the Cosmos ecosystem. Apps are not expected to support all known\n\n          sign modes. Apps that would like to support custom  sign modes are\n\n          encouraged to open a small PR against this file to add a new case\n\n          to this SignMode enum describing their sign mode so that different\n\n          apps have a consistent version of this enum.\n\n           - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be\n          rejected.\n           - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is\n          verified with raw bytes from Tx.\n           - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some\n          human-readable textual representation on top of the binary\n          representation\n\n          from SIGN_MODE_DIRECT. It is currently not supported.\n           - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses\n          SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does\n          not\n\n          require signers signing over other signers' `signer_info`. It also\n          allows\n\n          for adding Tips in transactions.\n\n\n          Since: cosmos-sdk 0.46\n           - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses\n          Amino JSON and will be removed in the future.\n           - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos\n          SDK. Ref: https://eips.ethereum.org/EIPS/eip-191\n\n\n          Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,\n\n          but is not implemented on the SDK by default. To enable EIP-191, you\n          need\n\n          to pass a custom `TxConfig` that has an implementation of\n\n          `SignModeHandler` for EIP-191. The SDK may decide to fully support\n\n          EIP-191 in the future.\n\n\n          Since: cosmos-sdk 0.45.2\n    title: |-\n      Single is the mode info for a single signer. It is structured as a message\n      to allow for additional fields such as locale for SIGN_MODE_TEXTUAL in the\n      future\n  cosmos.tx.v1beta1.OrderBy:\n    type: string\n    enum:\n      - ORDER_BY_UNSPECIFIED\n      - ORDER_BY_ASC\n      - ORDER_BY_DESC\n    default: ORDER_BY_UNSPECIFIED\n    description: >-\n      - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting\n      order. OrderBy defaults to ASC in this case.\n       - ORDER_BY_ASC: ORDER_BY_ASC defines ascending order\n       - ORDER_BY_DESC: ORDER_BY_DESC defines descending order\n    title: OrderBy defines the sorting order\n  cosmos.tx.v1beta1.SignerInfo:\n    type: object\n    properties:\n      public_key:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      mode_info:\n        $ref: '#/definitions/cosmos.tx.v1beta1.ModeInfo'\n        title: |-\n          mode_info describes the signing mode of the signer and is a nested\n          structure to support nested multisig pubkey's\n      sequence:\n        type: string\n        format: uint64\n        description: >-\n          sequence is the sequence of the account, which describes the\n\n          number of committed transactions signed by a given address. It is used\n          to\n\n          prevent replay attacks.\n    description: |-\n      SignerInfo describes the public key and signing mode of a single top-level\n      signer.\n  cosmos.tx.v1beta1.SimulateRequest:\n    type: object\n    properties:\n      tx:\n        $ref: '#/definitions/cosmos.tx.v1beta1.Tx'\n        description: |-\n          tx is the transaction to simulate.\n          Deprecated. Send raw tx bytes instead.\n      tx_bytes:\n        type: string\n        format: byte\n        description: |-\n          tx_bytes is the raw transaction.\n\n          Since: cosmos-sdk 0.43\n    description: |-\n      SimulateRequest is the request type for the Service.Simulate\n      RPC method.\n  cosmos.tx.v1beta1.SimulateResponse:\n    type: object\n    properties:\n      gas_info:\n        description: gas_info is the information about gas used in the simulation.\n        type: object\n        properties:\n          gas_wanted:\n            type: string\n            format: uint64\n            description: >-\n              GasWanted is the maximum units of work we allow this tx to\n              perform.\n          gas_used:\n            type: string\n            format: uint64\n            description: GasUsed is the amount of gas actually consumed.\n      result:\n        description: result is the result of the simulation.\n        type: object\n        properties:\n          data:\n            type: string\n            format: byte\n            description: >-\n              Data is any data returned from message or handler execution. It\n              MUST be\n\n              length prefixed in order to separate data from multiple message\n              executions.\n\n              Deprecated. This field is still populated, but prefer msg_response\n              instead\n\n              because it also contains the Msg response typeURL.\n          log:\n            type: string\n            description: >-\n              Log contains the log information from message or handler\n              execution.\n          events:\n            type: array\n            items:\n              type: object\n              properties:\n                type:\n                  type: string\n                attributes:\n                  type: array\n                  items:\n                    type: object\n                    properties:\n                      key:\n                        type: string\n                        format: byte\n                      value:\n                        type: string\n                        format: byte\n                      index:\n                        type: boolean\n                    description: >-\n                      EventAttribute is a single key-value pair, associated with\n                      an event.\n              description: >-\n                Event allows application developers to attach additional\n                information to\n\n                ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n                ResponseDeliverTx.\n\n                Later, transactions may be queried using these events.\n            description: >-\n              Events contains a slice of Event objects that were emitted during\n              message\n\n              or handler execution.\n          msg_responses:\n            type: array\n            items:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            description: >-\n              msg_responses contains the Msg handler responses type packed in\n              Anys.\n\n\n              Since: cosmos-sdk 0.46\n    description: |-\n      SimulateResponse is the response type for the\n      Service.SimulateRPC method.\n  cosmos.tx.v1beta1.Tip:\n    type: object\n    properties:\n      amount:\n        type: array\n        items:\n          type: object\n          properties:\n            denom:\n              type: string\n            amount:\n              type: string\n          description: |-\n            Coin defines a token with a denomination and an amount.\n\n            NOTE: The amount field is an Int which implements the custom method\n            signatures required by gogoproto.\n        title: amount is the amount of the tip\n      tipper:\n        type: string\n        title: tipper is the address of the account paying for the tip\n    description: |-\n      Tip is the tip used for meta-transactions.\n\n      Since: cosmos-sdk 0.46\n  cosmos.tx.v1beta1.Tx:\n    type: object\n    properties:\n      body:\n        title: body is the processable content of the transaction\n        type: object\n        properties:\n          messages:\n            type: array\n            items:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            description: >-\n              messages is a list of messages to be executed. The required\n              signers of\n\n              those messages define the number and order of elements in\n              AuthInfo's\n\n              signer_infos and Tx's signatures. Each required signer address is\n              added to\n\n              the list only the first time it occurs.\n\n              By convention, the first required signer (usually from the first\n              message)\n\n              is referred to as the primary signer and pays the fee for the\n              whole\n\n              transaction.\n          memo:\n            type: string\n            description: >-\n              memo is any arbitrary note/comment to be added to the transaction.\n\n              WARNING: in clients, any publicly exposed text should not be\n              called memo,\n\n              but should be called `note` instead (see\n              https://github.com/cosmos/cosmos-sdk/issues/9122).\n          timeout_height:\n            type: string\n            format: uint64\n            title: |-\n              timeout is the block height after which this transaction will not\n              be processed by the chain\n          extension_options:\n            type: array\n            items:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            title: >-\n              extension_options are arbitrary options that can be added by\n              chains\n\n              when the default options are not sufficient. If any of these are\n              present\n\n              and can't be handled, the transaction will be rejected\n          non_critical_extension_options:\n            type: array\n            items:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            title: >-\n              extension_options are arbitrary options that can be added by\n              chains\n\n              when the default options are not sufficient. If any of these are\n              present\n\n              and can't be handled, they will be ignored\n        description: TxBody is the body of a transaction that all signers sign over.\n      auth_info:\n        $ref: '#/definitions/cosmos.tx.v1beta1.AuthInfo'\n        title: |-\n          auth_info is the authorization related content of the transaction,\n          specifically signers, signer modes and fee\n      signatures:\n        type: array\n        items:\n          type: string\n          format: byte\n        description: >-\n          signatures is a list of signatures that matches the length and order\n          of\n\n          AuthInfo's signer_infos to allow connecting signature meta information\n          like\n\n          public key and signing mode by position.\n    description: Tx is the standard type used for broadcasting transactions.\n  cosmos.tx.v1beta1.TxBody:\n    type: object\n    properties:\n      messages:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        description: >-\n          messages is a list of messages to be executed. The required signers of\n\n          those messages define the number and order of elements in AuthInfo's\n\n          signer_infos and Tx's signatures. Each required signer address is\n          added to\n\n          the list only the first time it occurs.\n\n          By convention, the first required signer (usually from the first\n          message)\n\n          is referred to as the primary signer and pays the fee for the whole\n\n          transaction.\n      memo:\n        type: string\n        description: >-\n          memo is any arbitrary note/comment to be added to the transaction.\n\n          WARNING: in clients, any publicly exposed text should not be called\n          memo,\n\n          but should be called `note` instead (see\n          https://github.com/cosmos/cosmos-sdk/issues/9122).\n      timeout_height:\n        type: string\n        format: uint64\n        title: |-\n          timeout is the block height after which this transaction will not\n          be processed by the chain\n      extension_options:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        title: >-\n          extension_options are arbitrary options that can be added by chains\n\n          when the default options are not sufficient. If any of these are\n          present\n\n          and can't be handled, the transaction will be rejected\n      non_critical_extension_options:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        title: >-\n          extension_options are arbitrary options that can be added by chains\n\n          when the default options are not sufficient. If any of these are\n          present\n\n          and can't be handled, they will be ignored\n    description: TxBody is the body of a transaction that all signers sign over.\n  tendermint.abci.Event:\n    type: object\n    properties:\n      type:\n        type: string\n      attributes:\n        type: array\n        items:\n          type: object\n          properties:\n            key:\n              type: string\n              format: byte\n            value:\n              type: string\n              format: byte\n            index:\n              type: boolean\n          description: EventAttribute is a single key-value pair, associated with an event.\n    description: >-\n      Event allows application developers to attach additional information to\n\n      ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and\n      ResponseDeliverTx.\n\n      Later, transactions may be queried using these events.\n  tendermint.abci.EventAttribute:\n    type: object\n    properties:\n      key:\n        type: string\n        format: byte\n      value:\n        type: string\n        format: byte\n      index:\n        type: boolean\n    description: EventAttribute is a single key-value pair, associated with an event.\n  cosmos.upgrade.v1beta1.ModuleVersion:\n    type: object\n    properties:\n      name:\n        type: string\n        title: name of the app module\n      version:\n        type: string\n        format: uint64\n        title: consensus version of the app module\n    description: |-\n      ModuleVersion specifies a module and its consensus version.\n\n      Since: cosmos-sdk 0.43\n  cosmos.upgrade.v1beta1.Plan:\n    type: object\n    properties:\n      name:\n        type: string\n        description: >-\n          Sets the name for the upgrade. This name will be used by the upgraded\n\n          version of the software to apply any special \"on-upgrade\" commands\n          during\n\n          the first BeginBlock method after the upgrade is applied. It is also\n          used\n\n          to detect whether a software version can handle a given upgrade. If no\n\n          upgrade handler with this name has been set in the software, it will\n          be\n\n          assumed that the software is out-of-date when the upgrade Time or\n          Height is\n\n          reached and the software will exit.\n      time:\n        type: string\n        format: date-time\n        description: >-\n          Deprecated: Time based upgrades have been deprecated. Time based\n          upgrade logic\n\n          has been removed from the SDK.\n\n          If this field is not empty, an error will be thrown.\n      height:\n        type: string\n        format: int64\n        description: |-\n          The height at which the upgrade must be performed.\n          Only used if Time is not set.\n      info:\n        type: string\n        title: |-\n          Any application specific upgrade info to be included on-chain\n          such as a git commit that validators could automatically upgrade to\n      upgraded_client_state:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n    description: >-\n      Plan specifies information about a planned upgrade and when it should\n      occur.\n  cosmos.upgrade.v1beta1.QueryAppliedPlanResponse:\n    type: object\n    properties:\n      height:\n        type: string\n        format: int64\n        description: height is the block height at which the plan was applied.\n    description: >-\n      QueryAppliedPlanResponse is the response type for the Query/AppliedPlan\n      RPC\n\n      method.\n  cosmos.upgrade.v1beta1.QueryAuthorityResponse:\n    type: object\n    properties:\n      address:\n        type: string\n    description: 'Since: cosmos-sdk 0.46'\n    title: QueryAuthorityResponse is the response type for Query/Authority\n  cosmos.upgrade.v1beta1.QueryCurrentPlanResponse:\n    type: object\n    properties:\n      plan:\n        description: plan is the current upgrade plan.\n        type: object\n        properties:\n          name:\n            type: string\n            description: >-\n              Sets the name for the upgrade. This name will be used by the\n              upgraded\n\n              version of the software to apply any special \"on-upgrade\" commands\n              during\n\n              the first BeginBlock method after the upgrade is applied. It is\n              also used\n\n              to detect whether a software version can handle a given upgrade.\n              If no\n\n              upgrade handler with this name has been set in the software, it\n              will be\n\n              assumed that the software is out-of-date when the upgrade Time or\n              Height is\n\n              reached and the software will exit.\n          time:\n            type: string\n            format: date-time\n            description: >-\n              Deprecated: Time based upgrades have been deprecated. Time based\n              upgrade logic\n\n              has been removed from the SDK.\n\n              If this field is not empty, an error will be thrown.\n          height:\n            type: string\n            format: int64\n            description: |-\n              The height at which the upgrade must be performed.\n              Only used if Time is not set.\n          info:\n            type: string\n            title: >-\n              Any application specific upgrade info to be included on-chain\n\n              such as a git commit that validators could automatically upgrade\n              to\n          upgraded_client_state:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n    description: >-\n      QueryCurrentPlanResponse is the response type for the Query/CurrentPlan\n      RPC\n\n      method.\n  cosmos.upgrade.v1beta1.QueryModuleVersionsResponse:\n    type: object\n    properties:\n      module_versions:\n        type: array\n        items:\n          type: object\n          properties:\n            name:\n              type: string\n              title: name of the app module\n            version:\n              type: string\n              format: uint64\n              title: consensus version of the app module\n          description: |-\n            ModuleVersion specifies a module and its consensus version.\n\n            Since: cosmos-sdk 0.43\n        description: >-\n          module_versions is a list of module names with their consensus\n          versions.\n    description: >-\n      QueryModuleVersionsResponse is the response type for the\n      Query/ModuleVersions\n\n      RPC method.\n\n\n      Since: cosmos-sdk 0.43\n  cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateResponse:\n    type: object\n    properties:\n      upgraded_consensus_state:\n        type: string\n        format: byte\n        title: 'Since: cosmos-sdk 0.43'\n    description: >-\n      QueryUpgradedConsensusStateResponse is the response type for the\n      Query/UpgradedConsensusState\n\n      RPC method.\n  cosmos.authz.v1beta1.Grant:\n    type: object\n    properties:\n      authorization:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      expiration:\n        type: string\n        format: date-time\n        title: >-\n          time when the grant will expire and will be pruned. If null, then the\n          grant\n\n          doesn't have a time expiration (other conditions  in `authorization`\n\n          may apply to invalidate the grant)\n    description: |-\n      Grant gives permissions to execute\n      the provide method with expiration time.\n  cosmos.authz.v1beta1.GrantAuthorization:\n    type: object\n    properties:\n      granter:\n        type: string\n      grantee:\n        type: string\n      authorization:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      expiration:\n        type: string\n        format: date-time\n    title: >-\n      GrantAuthorization extends a grant with both the addresses of the grantee\n      and granter.\n\n      It is used in genesis.proto and query.proto\n  cosmos.authz.v1beta1.QueryGranteeGrantsResponse:\n    type: object\n    properties:\n      grants:\n        type: array\n        items:\n          type: object\n          properties:\n            granter:\n              type: string\n            grantee:\n              type: string\n            authorization:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            expiration:\n              type: string\n              format: date-time\n          title: >-\n            GrantAuthorization extends a grant with both the addresses of the\n            grantee and granter.\n\n            It is used in genesis.proto and query.proto\n        description: grants is a list of grants granted to the grantee.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryGranteeGrantsResponse is the response type for the\n      Query/GranteeGrants RPC method.\n  cosmos.authz.v1beta1.QueryGranterGrantsResponse:\n    type: object\n    properties:\n      grants:\n        type: array\n        items:\n          type: object\n          properties:\n            granter:\n              type: string\n            grantee:\n              type: string\n            authorization:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            expiration:\n              type: string\n              format: date-time\n          title: >-\n            GrantAuthorization extends a grant with both the addresses of the\n            grantee and granter.\n\n            It is used in genesis.proto and query.proto\n        description: grants is a list of grants granted by the granter.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryGranterGrantsResponse is the response type for the\n      Query/GranterGrants RPC method.\n  cosmos.authz.v1beta1.QueryGrantsResponse:\n    type: object\n    properties:\n      grants:\n        type: array\n        items:\n          type: object\n          properties:\n            authorization:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            expiration:\n              type: string\n              format: date-time\n              title: >-\n                time when the grant will expire and will be pruned. If null,\n                then the grant\n\n                doesn't have a time expiration (other conditions  in\n                `authorization`\n\n                may apply to invalidate the grant)\n          description: |-\n            Grant gives permissions to execute\n            the provide method with expiration time.\n        description: authorizations is a list of grants granted for grantee by granter.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryGrantsResponse is the response type for the Query/Authorizations RPC\n      method.\n  cosmos.feegrant.v1beta1.Grant:\n    type: object\n    properties:\n      granter:\n        type: string\n        description: >-\n          granter is the address of the user granting an allowance of their\n          funds.\n      grantee:\n        type: string\n        description: >-\n          grantee is the address of the user being granted an allowance of\n          another user's funds.\n      allowance:\n        description: allowance can be any of basic, periodic, allowed fee allowance.\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n    title: Grant is stored in the KVStore to record a grant with full context\n  cosmos.feegrant.v1beta1.QueryAllowanceResponse:\n    type: object\n    properties:\n      allowance:\n        description: allowance is a allowance granted for grantee by granter.\n        type: object\n        properties:\n          granter:\n            type: string\n            description: >-\n              granter is the address of the user granting an allowance of their\n              funds.\n          grantee:\n            type: string\n            description: >-\n              grantee is the address of the user being granted an allowance of\n              another user's funds.\n          allowance:\n            description: allowance can be any of basic, periodic, allowed fee allowance.\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n        title: Grant is stored in the KVStore to record a grant with full context\n    description: >-\n      QueryAllowanceResponse is the response type for the Query/Allowance RPC\n      method.\n  cosmos.feegrant.v1beta1.QueryAllowancesByGranterResponse:\n    type: object\n    properties:\n      allowances:\n        type: array\n        items:\n          type: object\n          properties:\n            granter:\n              type: string\n              description: >-\n                granter is the address of the user granting an allowance of\n                their funds.\n            grantee:\n              type: string\n              description: >-\n                grantee is the address of the user being granted an allowance of\n                another user's funds.\n            allowance:\n              description: allowance can be any of basic, periodic, allowed fee allowance.\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n          title: Grant is stored in the KVStore to record a grant with full context\n        description: allowances that have been issued by the granter.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryAllowancesByGranterResponse is the response type for the\n      Query/AllowancesByGranter RPC method.\n\n\n      Since: cosmos-sdk 0.46\n  cosmos.feegrant.v1beta1.QueryAllowancesResponse:\n    type: object\n    properties:\n      allowances:\n        type: array\n        items:\n          type: object\n          properties:\n            granter:\n              type: string\n              description: >-\n                granter is the address of the user granting an allowance of\n                their funds.\n            grantee:\n              type: string\n              description: >-\n                grantee is the address of the user being granted an allowance of\n                another user's funds.\n            allowance:\n              description: allowance can be any of basic, periodic, allowed fee allowance.\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n          title: Grant is stored in the KVStore to record a grant with full context\n        description: allowances are allowance's granted for grantee by granter.\n      pagination:\n        description: pagination defines an pagination for the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryAllowancesResponse is the response type for the Query/Allowances RPC\n      method.\n  cosmos.group.v1.GroupInfo:\n    type: object\n    properties:\n      id:\n        type: string\n        format: uint64\n        description: id is the unique ID of the group.\n      admin:\n        type: string\n        description: admin is the account address of the group's admin.\n      metadata:\n        type: string\n        description: metadata is any arbitrary metadata to attached to the group.\n      version:\n        type: string\n        format: uint64\n        title: >-\n          version is used to track changes to a group's membership structure\n          that\n\n          would break existing proposals. Whenever any members weight is\n          changed,\n\n          or any member is added or removed this version is incremented and will\n\n          cause proposals based on older versions of this group to fail\n      total_weight:\n        type: string\n        description: total_weight is the sum of the group members' weights.\n      created_at:\n        type: string\n        format: date-time\n        description: created_at is a timestamp specifying when a group was created.\n    description: GroupInfo represents the high-level on-chain information for a group.\n  cosmos.group.v1.GroupMember:\n    type: object\n    properties:\n      group_id:\n        type: string\n        format: uint64\n        description: group_id is the unique ID of the group.\n      member:\n        description: member is the member data.\n        type: object\n        properties:\n          address:\n            type: string\n            description: address is the member's account address.\n          weight:\n            type: string\n            description: >-\n              weight is the member's voting weight that should be greater than\n              0.\n          metadata:\n            type: string\n            description: metadata is any arbitrary metadata attached to the member.\n          added_at:\n            type: string\n            format: date-time\n            description: added_at is a timestamp specifying when a member was added.\n    description: GroupMember represents the relationship between a group and a member.\n  cosmos.group.v1.GroupPolicyInfo:\n    type: object\n    properties:\n      address:\n        type: string\n        description: address is the account address of group policy.\n      group_id:\n        type: string\n        format: uint64\n        description: group_id is the unique ID of the group.\n      admin:\n        type: string\n        description: admin is the account address of the group admin.\n      metadata:\n        type: string\n        description: metadata is any arbitrary metadata to attached to the group policy.\n      version:\n        type: string\n        format: uint64\n        description: >-\n          version is used to track changes to a group's GroupPolicyInfo\n          structure that\n\n          would create a different result on a running proposal.\n      decision_policy:\n        type: object\n        properties:\n          type_url:\n            type: string\n            description: >-\n              A URL/resource name that uniquely identifies the type of the\n              serialized\n\n              protocol buffer message. This string must contain at least\n\n              one \"/\" character. The last segment of the URL's path must\n              represent\n\n              the fully qualified name of the type (as in\n\n              `path/google.protobuf.Duration`). The name should be in a\n              canonical form\n\n              (e.g., leading \".\" is not accepted).\n\n\n              In practice, teams usually precompile into the binary all types\n              that they\n\n              expect it to use in the context of Any. However, for URLs which\n              use the\n\n              scheme `http`, `https`, or no scheme, one can optionally set up a\n              type\n\n              server that maps type URLs to message definitions as follows:\n\n\n              * If no scheme is provided, `https` is assumed.\n\n              * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                value in binary format, or produce an error.\n              * Applications are allowed to cache lookup results based on the\n                URL, or have them precompiled into a binary to avoid any\n                lookup. Therefore, binary compatibility needs to be preserved\n                on changes to types. (Use versioned type names to manage\n                breaking changes.)\n\n              Note: this functionality is not currently available in the\n              official\n\n              protobuf release, and it is not used for type URLs beginning with\n\n              type.googleapis.com.\n\n\n              Schemes other than `http`, `https` (or the empty scheme) might be\n\n              used with implementation specific semantics.\n          value:\n            type: string\n            format: byte\n            description: >-\n              Must be a valid serialized protocol buffer of the above specified\n              type.\n        description: >-\n          `Any` contains an arbitrary serialized protocol buffer message along\n          with a\n\n          URL that describes the type of the serialized message.\n\n\n          Protobuf library provides support to pack/unpack Any values in the\n          form\n\n          of utility functions or additional generated methods of the Any type.\n\n\n          Example 1: Pack and unpack a message in C++.\n\n              Foo foo = ...;\n              Any any;\n              any.PackFrom(foo);\n              ...\n              if (any.UnpackTo(&foo)) {\n                ...\n              }\n\n          Example 2: Pack and unpack a message in Java.\n\n              Foo foo = ...;\n              Any any = Any.pack(foo);\n              ...\n              if (any.is(Foo.class)) {\n                foo = any.unpack(Foo.class);\n              }\n\n           Example 3: Pack and unpack a message in Python.\n\n              foo = Foo(...)\n              any = Any()\n              any.Pack(foo)\n              ...\n              if any.Is(Foo.DESCRIPTOR):\n                any.Unpack(foo)\n                ...\n\n           Example 4: Pack and unpack a message in Go\n\n               foo := &pb.Foo{...}\n               any, err := anypb.New(foo)\n               if err != nil {\n                 ...\n               }\n               ...\n               foo := &pb.Foo{}\n               if err := any.UnmarshalTo(foo); err != nil {\n                 ...\n               }\n\n          The pack methods provided by protobuf library will by default use\n\n          'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n          methods only use the fully qualified type name after the last '/'\n\n          in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n          name \"y.z\".\n\n\n\n          JSON\n\n          ====\n\n          The JSON representation of an `Any` value uses the regular\n\n          representation of the deserialized, embedded message, with an\n\n          additional field `@type` which contains the type URL. Example:\n\n              package google.profile;\n              message Person {\n                string first_name = 1;\n                string last_name = 2;\n              }\n\n              {\n                \"@type\": \"type.googleapis.com/google.profile.Person\",\n                \"firstName\": <string>,\n                \"lastName\": <string>\n              }\n\n          If the embedded message type is well-known and has a custom JSON\n\n          representation, that representation will be embedded adding a field\n\n          `value` which holds the custom JSON in addition to the `@type`\n\n          field. Example (for message [google.protobuf.Duration][]):\n\n              {\n                \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                \"value\": \"1.212s\"\n              }\n      created_at:\n        type: string\n        format: date-time\n        description: created_at is a timestamp specifying when a group policy was created.\n    description: >-\n      GroupPolicyInfo represents the high-level on-chain information for a group\n      policy.\n  cosmos.group.v1.Member:\n    type: object\n    properties:\n      address:\n        type: string\n        description: address is the member's account address.\n      weight:\n        type: string\n        description: weight is the member's voting weight that should be greater than 0.\n      metadata:\n        type: string\n        description: metadata is any arbitrary metadata attached to the member.\n      added_at:\n        type: string\n        format: date-time\n        description: added_at is a timestamp specifying when a member was added.\n    description: |-\n      Member represents a group member with an account address,\n      non-zero weight, metadata and added_at timestamp.\n  cosmos.group.v1.Proposal:\n    type: object\n    properties:\n      id:\n        type: string\n        format: uint64\n        description: id is the unique id of the proposal.\n      group_policy_address:\n        type: string\n        description: group_policy_address is the account address of group policy.\n      metadata:\n        type: string\n        description: metadata is any arbitrary metadata to attached to the proposal.\n      proposers:\n        type: array\n        items:\n          type: string\n        description: proposers are the account addresses of the proposers.\n      submit_time:\n        type: string\n        format: date-time\n        description: submit_time is a timestamp specifying when a proposal was submitted.\n      group_version:\n        type: string\n        format: uint64\n        description: |-\n          group_version tracks the version of the group at proposal submission.\n          This field is here for informational purposes only.\n      group_policy_version:\n        type: string\n        format: uint64\n        description: >-\n          group_policy_version tracks the version of the group policy at\n          proposal submission.\n\n          When a decision policy is changed, existing proposals from previous\n          policy\n\n          versions will become invalid with the `ABORTED` status.\n\n          This field is here for informational purposes only.\n      status:\n        description: >-\n          status represents the high level position in the life cycle of the\n          proposal. Initial value is Submitted.\n        type: string\n        enum:\n          - PROPOSAL_STATUS_UNSPECIFIED\n          - PROPOSAL_STATUS_SUBMITTED\n          - PROPOSAL_STATUS_ACCEPTED\n          - PROPOSAL_STATUS_REJECTED\n          - PROPOSAL_STATUS_ABORTED\n          - PROPOSAL_STATUS_WITHDRAWN\n        default: PROPOSAL_STATUS_UNSPECIFIED\n      final_tally_result:\n        description: >-\n          final_tally_result contains the sums of all weighted votes for this\n\n          proposal for each vote option. It is empty at submission, and only\n\n          populated after tallying, at voting period end or at proposal\n          execution,\n\n          whichever happens first.\n        type: object\n        properties:\n          yes_count:\n            type: string\n            description: yes_count is the weighted sum of yes votes.\n          abstain_count:\n            type: string\n            description: abstain_count is the weighted sum of abstainers.\n          no_count:\n            type: string\n            description: no_count is the weighted sum of no votes.\n          no_with_veto_count:\n            type: string\n            description: no_with_veto_count is the weighted sum of veto.\n      voting_period_end:\n        type: string\n        format: date-time\n        description: >-\n          voting_period_end is the timestamp before which voting must be done.\n\n          Unless a successfull MsgExec is called before (to execute a proposal\n          whose\n\n          tally is successful before the voting period ends), tallying will be\n          done\n\n          at this point, and the `final_tally_result`and `status` fields will be\n\n          accordingly updated.\n      executor_result:\n        description: >-\n          executor_result is the final result of the proposal execution. Initial\n          value is NotRun.\n        type: string\n        enum:\n          - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n          - PROPOSAL_EXECUTOR_RESULT_NOT_RUN\n          - PROPOSAL_EXECUTOR_RESULT_SUCCESS\n          - PROPOSAL_EXECUTOR_RESULT_FAILURE\n        default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n      messages:\n        type: array\n        items:\n          type: object\n          properties:\n            type_url:\n              type: string\n              description: >-\n                A URL/resource name that uniquely identifies the type of the\n                serialized\n\n                protocol buffer message. This string must contain at least\n\n                one \"/\" character. The last segment of the URL's path must\n                represent\n\n                the fully qualified name of the type (as in\n\n                `path/google.protobuf.Duration`). The name should be in a\n                canonical form\n\n                (e.g., leading \".\" is not accepted).\n\n\n                In practice, teams usually precompile into the binary all types\n                that they\n\n                expect it to use in the context of Any. However, for URLs which\n                use the\n\n                scheme `http`, `https`, or no scheme, one can optionally set up\n                a type\n\n                server that maps type URLs to message definitions as follows:\n\n\n                * If no scheme is provided, `https` is assumed.\n\n                * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                  value in binary format, or produce an error.\n                * Applications are allowed to cache lookup results based on the\n                  URL, or have them precompiled into a binary to avoid any\n                  lookup. Therefore, binary compatibility needs to be preserved\n                  on changes to types. (Use versioned type names to manage\n                  breaking changes.)\n\n                Note: this functionality is not currently available in the\n                official\n\n                protobuf release, and it is not used for type URLs beginning\n                with\n\n                type.googleapis.com.\n\n\n                Schemes other than `http`, `https` (or the empty scheme) might\n                be\n\n                used with implementation specific semantics.\n            value:\n              type: string\n              format: byte\n              description: >-\n                Must be a valid serialized protocol buffer of the above\n                specified type.\n          description: >-\n            `Any` contains an arbitrary serialized protocol buffer message along\n            with a\n\n            URL that describes the type of the serialized message.\n\n\n            Protobuf library provides support to pack/unpack Any values in the\n            form\n\n            of utility functions or additional generated methods of the Any\n            type.\n\n\n            Example 1: Pack and unpack a message in C++.\n\n                Foo foo = ...;\n                Any any;\n                any.PackFrom(foo);\n                ...\n                if (any.UnpackTo(&foo)) {\n                  ...\n                }\n\n            Example 2: Pack and unpack a message in Java.\n\n                Foo foo = ...;\n                Any any = Any.pack(foo);\n                ...\n                if (any.is(Foo.class)) {\n                  foo = any.unpack(Foo.class);\n                }\n\n             Example 3: Pack and unpack a message in Python.\n\n                foo = Foo(...)\n                any = Any()\n                any.Pack(foo)\n                ...\n                if any.Is(Foo.DESCRIPTOR):\n                  any.Unpack(foo)\n                  ...\n\n             Example 4: Pack and unpack a message in Go\n\n                 foo := &pb.Foo{...}\n                 any, err := anypb.New(foo)\n                 if err != nil {\n                   ...\n                 }\n                 ...\n                 foo := &pb.Foo{}\n                 if err := any.UnmarshalTo(foo); err != nil {\n                   ...\n                 }\n\n            The pack methods provided by protobuf library will by default use\n\n            'type.googleapis.com/full.type.name' as the type URL and the unpack\n\n            methods only use the fully qualified type name after the last '/'\n\n            in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n            name \"y.z\".\n\n\n\n            JSON\n\n            ====\n\n            The JSON representation of an `Any` value uses the regular\n\n            representation of the deserialized, embedded message, with an\n\n            additional field `@type` which contains the type URL. Example:\n\n                package google.profile;\n                message Person {\n                  string first_name = 1;\n                  string last_name = 2;\n                }\n\n                {\n                  \"@type\": \"type.googleapis.com/google.profile.Person\",\n                  \"firstName\": <string>,\n                  \"lastName\": <string>\n                }\n\n            If the embedded message type is well-known and has a custom JSON\n\n            representation, that representation will be embedded adding a field\n\n            `value` which holds the custom JSON in addition to the `@type`\n\n            field. Example (for message [google.protobuf.Duration][]):\n\n                {\n                  \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                  \"value\": \"1.212s\"\n                }\n        description: >-\n          messages is a list of `sdk.Msg`s that will be executed if the proposal\n          passes.\n    description: >-\n      Proposal defines a group proposal. Any member of a group can submit a\n      proposal\n\n      for a group policy to decide upon.\n\n      A proposal consists of a set of `sdk.Msg`s that will be executed if the\n      proposal\n\n      passes as well as some optional metadata associated with the proposal.\n  cosmos.group.v1.ProposalExecutorResult:\n    type: string\n    enum:\n      - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n      - PROPOSAL_EXECUTOR_RESULT_NOT_RUN\n      - PROPOSAL_EXECUTOR_RESULT_SUCCESS\n      - PROPOSAL_EXECUTOR_RESULT_FAILURE\n    default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n    description: |-\n      ProposalExecutorResult defines types of proposal executor results.\n\n       - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED: An empty value is not allowed.\n       - PROPOSAL_EXECUTOR_RESULT_NOT_RUN: We have not yet run the executor.\n       - PROPOSAL_EXECUTOR_RESULT_SUCCESS: The executor was successful and proposed action updated state.\n       - PROPOSAL_EXECUTOR_RESULT_FAILURE: The executor returned an error and proposed action didn't update state.\n  cosmos.group.v1.ProposalStatus:\n    type: string\n    enum:\n      - PROPOSAL_STATUS_UNSPECIFIED\n      - PROPOSAL_STATUS_SUBMITTED\n      - PROPOSAL_STATUS_ACCEPTED\n      - PROPOSAL_STATUS_REJECTED\n      - PROPOSAL_STATUS_ABORTED\n      - PROPOSAL_STATUS_WITHDRAWN\n    default: PROPOSAL_STATUS_UNSPECIFIED\n    description: |-\n      ProposalStatus defines proposal statuses.\n\n       - PROPOSAL_STATUS_UNSPECIFIED: An empty value is invalid and not allowed.\n       - PROPOSAL_STATUS_SUBMITTED: Initial status of a proposal when submitted.\n       - PROPOSAL_STATUS_ACCEPTED: Final status of a proposal when the final tally is done and the outcome\n      passes the group policy's decision policy.\n       - PROPOSAL_STATUS_REJECTED: Final status of a proposal when the final tally is done and the outcome\n      is rejected by the group policy's decision policy.\n       - PROPOSAL_STATUS_ABORTED: Final status of a proposal when the group policy is modified before the\n      final tally.\n       - PROPOSAL_STATUS_WITHDRAWN: A proposal can be withdrawn before the voting start time by the owner.\n      When this happens the final status is Withdrawn.\n  cosmos.group.v1.QueryGroupInfoResponse:\n    type: object\n    properties:\n      info:\n        description: info is the GroupInfo for the group.\n        type: object\n        properties:\n          id:\n            type: string\n            format: uint64\n            description: id is the unique ID of the group.\n          admin:\n            type: string\n            description: admin is the account address of the group's admin.\n          metadata:\n            type: string\n            description: metadata is any arbitrary metadata to attached to the group.\n          version:\n            type: string\n            format: uint64\n            title: >-\n              version is used to track changes to a group's membership structure\n              that\n\n              would break existing proposals. Whenever any members weight is\n              changed,\n\n              or any member is added or removed this version is incremented and\n              will\n\n              cause proposals based on older versions of this group to fail\n          total_weight:\n            type: string\n            description: total_weight is the sum of the group members' weights.\n          created_at:\n            type: string\n            format: date-time\n            description: created_at is a timestamp specifying when a group was created.\n    description: QueryGroupInfoResponse is the Query/GroupInfo response type.\n  cosmos.group.v1.QueryGroupMembersResponse:\n    type: object\n    properties:\n      members:\n        type: array\n        items:\n          type: object\n          properties:\n            group_id:\n              type: string\n              format: uint64\n              description: group_id is the unique ID of the group.\n            member:\n              description: member is the member data.\n              type: object\n              properties:\n                address:\n                  type: string\n                  description: address is the member's account address.\n                weight:\n                  type: string\n                  description: >-\n                    weight is the member's voting weight that should be greater\n                    than 0.\n                metadata:\n                  type: string\n                  description: metadata is any arbitrary metadata attached to the member.\n                added_at:\n                  type: string\n                  format: date-time\n                  description: added_at is a timestamp specifying when a member was added.\n          description: >-\n            GroupMember represents the relationship between a group and a\n            member.\n        description: members are the members of the group with given group_id.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: QueryGroupMembersResponse is the Query/GroupMembersResponse response type.\n  cosmos.group.v1.QueryGroupPoliciesByAdminResponse:\n    type: object\n    properties:\n      group_policies:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n              description: address is the account address of group policy.\n            group_id:\n              type: string\n              format: uint64\n              description: group_id is the unique ID of the group.\n            admin:\n              type: string\n              description: admin is the account address of the group admin.\n            metadata:\n              type: string\n              description: >-\n                metadata is any arbitrary metadata to attached to the group\n                policy.\n            version:\n              type: string\n              format: uint64\n              description: >-\n                version is used to track changes to a group's GroupPolicyInfo\n                structure that\n\n                would create a different result on a running proposal.\n            decision_policy:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            created_at:\n              type: string\n              format: date-time\n              description: >-\n                created_at is a timestamp specifying when a group policy was\n                created.\n          description: >-\n            GroupPolicyInfo represents the high-level on-chain information for a\n            group policy.\n        description: group_policies are the group policies info with provided admin.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryGroupPoliciesByAdminResponse is the Query/GroupPoliciesByAdmin\n      response type.\n  cosmos.group.v1.QueryGroupPoliciesByGroupResponse:\n    type: object\n    properties:\n      group_policies:\n        type: array\n        items:\n          type: object\n          properties:\n            address:\n              type: string\n              description: address is the account address of group policy.\n            group_id:\n              type: string\n              format: uint64\n              description: group_id is the unique ID of the group.\n            admin:\n              type: string\n              description: admin is the account address of the group admin.\n            metadata:\n              type: string\n              description: >-\n                metadata is any arbitrary metadata to attached to the group\n                policy.\n            version:\n              type: string\n              format: uint64\n              description: >-\n                version is used to track changes to a group's GroupPolicyInfo\n                structure that\n\n                would create a different result on a running proposal.\n            decision_policy:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            created_at:\n              type: string\n              format: date-time\n              description: >-\n                created_at is a timestamp specifying when a group policy was\n                created.\n          description: >-\n            GroupPolicyInfo represents the high-level on-chain information for a\n            group policy.\n        description: >-\n          group_policies are the group policies info associated with the\n          provided group.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryGroupPoliciesByGroupResponse is the Query/GroupPoliciesByGroup\n      response type.\n  cosmos.group.v1.QueryGroupPolicyInfoResponse:\n    type: object\n    properties:\n      info:\n        type: object\n        properties:\n          address:\n            type: string\n            description: address is the account address of group policy.\n          group_id:\n            type: string\n            format: uint64\n            description: group_id is the unique ID of the group.\n          admin:\n            type: string\n            description: admin is the account address of the group admin.\n          metadata:\n            type: string\n            description: >-\n              metadata is any arbitrary metadata to attached to the group\n              policy.\n          version:\n            type: string\n            format: uint64\n            description: >-\n              version is used to track changes to a group's GroupPolicyInfo\n              structure that\n\n              would create a different result on a running proposal.\n          decision_policy:\n            type: object\n            properties:\n              type_url:\n                type: string\n                description: >-\n                  A URL/resource name that uniquely identifies the type of the\n                  serialized\n\n                  protocol buffer message. This string must contain at least\n\n                  one \"/\" character. The last segment of the URL's path must\n                  represent\n\n                  the fully qualified name of the type (as in\n\n                  `path/google.protobuf.Duration`). The name should be in a\n                  canonical form\n\n                  (e.g., leading \".\" is not accepted).\n\n\n                  In practice, teams usually precompile into the binary all\n                  types that they\n\n                  expect it to use in the context of Any. However, for URLs\n                  which use the\n\n                  scheme `http`, `https`, or no scheme, one can optionally set\n                  up a type\n\n                  server that maps type URLs to message definitions as follows:\n\n\n                  * If no scheme is provided, `https` is assumed.\n\n                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]\n                    value in binary format, or produce an error.\n                  * Applications are allowed to cache lookup results based on\n                  the\n                    URL, or have them precompiled into a binary to avoid any\n                    lookup. Therefore, binary compatibility needs to be preserved\n                    on changes to types. (Use versioned type names to manage\n                    breaking changes.)\n\n                  Note: this functionality is not currently available in the\n                  official\n\n                  protobuf release, and it is not used for type URLs beginning\n                  with\n\n                  type.googleapis.com.\n\n\n                  Schemes other than `http`, `https` (or the empty scheme) might\n                  be\n\n                  used with implementation specific semantics.\n              value:\n                type: string\n                format: byte\n                description: >-\n                  Must be a valid serialized protocol buffer of the above\n                  specified type.\n            description: >-\n              `Any` contains an arbitrary serialized protocol buffer message\n              along with a\n\n              URL that describes the type of the serialized message.\n\n\n              Protobuf library provides support to pack/unpack Any values in the\n              form\n\n              of utility functions or additional generated methods of the Any\n              type.\n\n\n              Example 1: Pack and unpack a message in C++.\n\n                  Foo foo = ...;\n                  Any any;\n                  any.PackFrom(foo);\n                  ...\n                  if (any.UnpackTo(&foo)) {\n                    ...\n                  }\n\n              Example 2: Pack and unpack a message in Java.\n\n                  Foo foo = ...;\n                  Any any = Any.pack(foo);\n                  ...\n                  if (any.is(Foo.class)) {\n                    foo = any.unpack(Foo.class);\n                  }\n\n               Example 3: Pack and unpack a message in Python.\n\n                  foo = Foo(...)\n                  any = Any()\n                  any.Pack(foo)\n                  ...\n                  if any.Is(Foo.DESCRIPTOR):\n                    any.Unpack(foo)\n                    ...\n\n               Example 4: Pack and unpack a message in Go\n\n                   foo := &pb.Foo{...}\n                   any, err := anypb.New(foo)\n                   if err != nil {\n                     ...\n                   }\n                   ...\n                   foo := &pb.Foo{}\n                   if err := any.UnmarshalTo(foo); err != nil {\n                     ...\n                   }\n\n              The pack methods provided by protobuf library will by default use\n\n              'type.googleapis.com/full.type.name' as the type URL and the\n              unpack\n\n              methods only use the fully qualified type name after the last '/'\n\n              in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n              name \"y.z\".\n\n\n\n              JSON\n\n              ====\n\n              The JSON representation of an `Any` value uses the regular\n\n              representation of the deserialized, embedded message, with an\n\n              additional field `@type` which contains the type URL. Example:\n\n                  package google.profile;\n                  message Person {\n                    string first_name = 1;\n                    string last_name = 2;\n                  }\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.profile.Person\",\n                    \"firstName\": <string>,\n                    \"lastName\": <string>\n                  }\n\n              If the embedded message type is well-known and has a custom JSON\n\n              representation, that representation will be embedded adding a\n              field\n\n              `value` which holds the custom JSON in addition to the `@type`\n\n              field. Example (for message [google.protobuf.Duration][]):\n\n                  {\n                    \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                    \"value\": \"1.212s\"\n                  }\n          created_at:\n            type: string\n            format: date-time\n            description: >-\n              created_at is a timestamp specifying when a group policy was\n              created.\n        description: >-\n          GroupPolicyInfo represents the high-level on-chain information for a\n          group policy.\n    description: QueryGroupPolicyInfoResponse is the Query/GroupPolicyInfo response type.\n  cosmos.group.v1.QueryGroupsByAdminResponse:\n    type: object\n    properties:\n      groups:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n              format: uint64\n              description: id is the unique ID of the group.\n            admin:\n              type: string\n              description: admin is the account address of the group's admin.\n            metadata:\n              type: string\n              description: metadata is any arbitrary metadata to attached to the group.\n            version:\n              type: string\n              format: uint64\n              title: >-\n                version is used to track changes to a group's membership\n                structure that\n\n                would break existing proposals. Whenever any members weight is\n                changed,\n\n                or any member is added or removed this version is incremented\n                and will\n\n                cause proposals based on older versions of this group to fail\n            total_weight:\n              type: string\n              description: total_weight is the sum of the group members' weights.\n            created_at:\n              type: string\n              format: date-time\n              description: created_at is a timestamp specifying when a group was created.\n          description: >-\n            GroupInfo represents the high-level on-chain information for a\n            group.\n        description: groups are the groups info with the provided admin.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryGroupsByAdminResponse is the Query/GroupsByAdminResponse response\n      type.\n  cosmos.group.v1.QueryGroupsByMemberResponse:\n    type: object\n    properties:\n      groups:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n              format: uint64\n              description: id is the unique ID of the group.\n            admin:\n              type: string\n              description: admin is the account address of the group's admin.\n            metadata:\n              type: string\n              description: metadata is any arbitrary metadata to attached to the group.\n            version:\n              type: string\n              format: uint64\n              title: >-\n                version is used to track changes to a group's membership\n                structure that\n\n                would break existing proposals. Whenever any members weight is\n                changed,\n\n                or any member is added or removed this version is incremented\n                and will\n\n                cause proposals based on older versions of this group to fail\n            total_weight:\n              type: string\n              description: total_weight is the sum of the group members' weights.\n            created_at:\n              type: string\n              format: date-time\n              description: created_at is a timestamp specifying when a group was created.\n          description: >-\n            GroupInfo represents the high-level on-chain information for a\n            group.\n        description: groups are the groups info with the provided group member.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: QueryGroupsByMemberResponse is the Query/GroupsByMember response type.\n  cosmos.group.v1.QueryProposalResponse:\n    type: object\n    properties:\n      proposal:\n        description: proposal is the proposal info.\n        type: object\n        properties:\n          id:\n            type: string\n            format: uint64\n            description: id is the unique id of the proposal.\n          group_policy_address:\n            type: string\n            description: group_policy_address is the account address of group policy.\n          metadata:\n            type: string\n            description: metadata is any arbitrary metadata to attached to the proposal.\n          proposers:\n            type: array\n            items:\n              type: string\n            description: proposers are the account addresses of the proposers.\n          submit_time:\n            type: string\n            format: date-time\n            description: >-\n              submit_time is a timestamp specifying when a proposal was\n              submitted.\n          group_version:\n            type: string\n            format: uint64\n            description: >-\n              group_version tracks the version of the group at proposal\n              submission.\n\n              This field is here for informational purposes only.\n          group_policy_version:\n            type: string\n            format: uint64\n            description: >-\n              group_policy_version tracks the version of the group policy at\n              proposal submission.\n\n              When a decision policy is changed, existing proposals from\n              previous policy\n\n              versions will become invalid with the `ABORTED` status.\n\n              This field is here for informational purposes only.\n          status:\n            description: >-\n              status represents the high level position in the life cycle of the\n              proposal. Initial value is Submitted.\n            type: string\n            enum:\n              - PROPOSAL_STATUS_UNSPECIFIED\n              - PROPOSAL_STATUS_SUBMITTED\n              - PROPOSAL_STATUS_ACCEPTED\n              - PROPOSAL_STATUS_REJECTED\n              - PROPOSAL_STATUS_ABORTED\n              - PROPOSAL_STATUS_WITHDRAWN\n            default: PROPOSAL_STATUS_UNSPECIFIED\n          final_tally_result:\n            description: >-\n              final_tally_result contains the sums of all weighted votes for\n              this\n\n              proposal for each vote option. It is empty at submission, and only\n\n              populated after tallying, at voting period end or at proposal\n              execution,\n\n              whichever happens first.\n            type: object\n            properties:\n              yes_count:\n                type: string\n                description: yes_count is the weighted sum of yes votes.\n              abstain_count:\n                type: string\n                description: abstain_count is the weighted sum of abstainers.\n              no_count:\n                type: string\n                description: no_count is the weighted sum of no votes.\n              no_with_veto_count:\n                type: string\n                description: no_with_veto_count is the weighted sum of veto.\n          voting_period_end:\n            type: string\n            format: date-time\n            description: >-\n              voting_period_end is the timestamp before which voting must be\n              done.\n\n              Unless a successfull MsgExec is called before (to execute a\n              proposal whose\n\n              tally is successful before the voting period ends), tallying will\n              be done\n\n              at this point, and the `final_tally_result`and `status` fields\n              will be\n\n              accordingly updated.\n          executor_result:\n            description: >-\n              executor_result is the final result of the proposal execution.\n              Initial value is NotRun.\n            type: string\n            enum:\n              - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n              - PROPOSAL_EXECUTOR_RESULT_NOT_RUN\n              - PROPOSAL_EXECUTOR_RESULT_SUCCESS\n              - PROPOSAL_EXECUTOR_RESULT_FAILURE\n            default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n          messages:\n            type: array\n            items:\n              type: object\n              properties:\n                type_url:\n                  type: string\n                  description: >-\n                    A URL/resource name that uniquely identifies the type of the\n                    serialized\n\n                    protocol buffer message. This string must contain at least\n\n                    one \"/\" character. The last segment of the URL's path must\n                    represent\n\n                    the fully qualified name of the type (as in\n\n                    `path/google.protobuf.Duration`). The name should be in a\n                    canonical form\n\n                    (e.g., leading \".\" is not accepted).\n\n\n                    In practice, teams usually precompile into the binary all\n                    types that they\n\n                    expect it to use in the context of Any. However, for URLs\n                    which use the\n\n                    scheme `http`, `https`, or no scheme, one can optionally set\n                    up a type\n\n                    server that maps type URLs to message definitions as\n                    follows:\n\n\n                    * If no scheme is provided, `https` is assumed.\n\n                    * An HTTP GET on the URL must yield a\n                    [google.protobuf.Type][]\n                      value in binary format, or produce an error.\n                    * Applications are allowed to cache lookup results based on\n                    the\n                      URL, or have them precompiled into a binary to avoid any\n                      lookup. Therefore, binary compatibility needs to be preserved\n                      on changes to types. (Use versioned type names to manage\n                      breaking changes.)\n\n                    Note: this functionality is not currently available in the\n                    official\n\n                    protobuf release, and it is not used for type URLs beginning\n                    with\n\n                    type.googleapis.com.\n\n\n                    Schemes other than `http`, `https` (or the empty scheme)\n                    might be\n\n                    used with implementation specific semantics.\n                value:\n                  type: string\n                  format: byte\n                  description: >-\n                    Must be a valid serialized protocol buffer of the above\n                    specified type.\n              description: >-\n                `Any` contains an arbitrary serialized protocol buffer message\n                along with a\n\n                URL that describes the type of the serialized message.\n\n\n                Protobuf library provides support to pack/unpack Any values in\n                the form\n\n                of utility functions or additional generated methods of the Any\n                type.\n\n\n                Example 1: Pack and unpack a message in C++.\n\n                    Foo foo = ...;\n                    Any any;\n                    any.PackFrom(foo);\n                    ...\n                    if (any.UnpackTo(&foo)) {\n                      ...\n                    }\n\n                Example 2: Pack and unpack a message in Java.\n\n                    Foo foo = ...;\n                    Any any = Any.pack(foo);\n                    ...\n                    if (any.is(Foo.class)) {\n                      foo = any.unpack(Foo.class);\n                    }\n\n                 Example 3: Pack and unpack a message in Python.\n\n                    foo = Foo(...)\n                    any = Any()\n                    any.Pack(foo)\n                    ...\n                    if any.Is(Foo.DESCRIPTOR):\n                      any.Unpack(foo)\n                      ...\n\n                 Example 4: Pack and unpack a message in Go\n\n                     foo := &pb.Foo{...}\n                     any, err := anypb.New(foo)\n                     if err != nil {\n                       ...\n                     }\n                     ...\n                     foo := &pb.Foo{}\n                     if err := any.UnmarshalTo(foo); err != nil {\n                       ...\n                     }\n\n                The pack methods provided by protobuf library will by default\n                use\n\n                'type.googleapis.com/full.type.name' as the type URL and the\n                unpack\n\n                methods only use the fully qualified type name after the last\n                '/'\n\n                in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n\n                name \"y.z\".\n\n\n\n                JSON\n\n                ====\n\n                The JSON representation of an `Any` value uses the regular\n\n                representation of the deserialized, embedded message, with an\n\n                additional field `@type` which contains the type URL. Example:\n\n                    package google.profile;\n                    message Person {\n                      string first_name = 1;\n                      string last_name = 2;\n                    }\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.profile.Person\",\n                      \"firstName\": <string>,\n                      \"lastName\": <string>\n                    }\n\n                If the embedded message type is well-known and has a custom JSON\n\n                representation, that representation will be embedded adding a\n                field\n\n                `value` which holds the custom JSON in addition to the `@type`\n\n                field. Example (for message [google.protobuf.Duration][]):\n\n                    {\n                      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                      \"value\": \"1.212s\"\n                    }\n            description: >-\n              messages is a list of `sdk.Msg`s that will be executed if the\n              proposal passes.\n    description: QueryProposalResponse is the Query/Proposal response type.\n  cosmos.group.v1.QueryProposalsByGroupPolicyResponse:\n    type: object\n    properties:\n      proposals:\n        type: array\n        items:\n          type: object\n          properties:\n            id:\n              type: string\n              format: uint64\n              description: id is the unique id of the proposal.\n            group_policy_address:\n              type: string\n              description: group_policy_address is the account address of group policy.\n            metadata:\n              type: string\n              description: metadata is any arbitrary metadata to attached to the proposal.\n            proposers:\n              type: array\n              items:\n                type: string\n              description: proposers are the account addresses of the proposers.\n            submit_time:\n              type: string\n              format: date-time\n              description: >-\n                submit_time is a timestamp specifying when a proposal was\n                submitted.\n            group_version:\n              type: string\n              format: uint64\n              description: >-\n                group_version tracks the version of the group at proposal\n                submission.\n\n                This field is here for informational purposes only.\n            group_policy_version:\n              type: string\n              format: uint64\n              description: >-\n                group_policy_version tracks the version of the group policy at\n                proposal submission.\n\n                When a decision policy is changed, existing proposals from\n                previous policy\n\n                versions will become invalid with the `ABORTED` status.\n\n                This field is here for informational purposes only.\n            status:\n              description: >-\n                status represents the high level position in the life cycle of\n                the proposal. Initial value is Submitted.\n              type: string\n              enum:\n                - PROPOSAL_STATUS_UNSPECIFIED\n                - PROPOSAL_STATUS_SUBMITTED\n                - PROPOSAL_STATUS_ACCEPTED\n                - PROPOSAL_STATUS_REJECTED\n                - PROPOSAL_STATUS_ABORTED\n                - PROPOSAL_STATUS_WITHDRAWN\n              default: PROPOSAL_STATUS_UNSPECIFIED\n            final_tally_result:\n              description: >-\n                final_tally_result contains the sums of all weighted votes for\n                this\n\n                proposal for each vote option. It is empty at submission, and\n                only\n\n                populated after tallying, at voting period end or at proposal\n                execution,\n\n                whichever happens first.\n              type: object\n              properties:\n                yes_count:\n                  type: string\n                  description: yes_count is the weighted sum of yes votes.\n                abstain_count:\n                  type: string\n                  description: abstain_count is the weighted sum of abstainers.\n                no_count:\n                  type: string\n                  description: no_count is the weighted sum of no votes.\n                no_with_veto_count:\n                  type: string\n                  description: no_with_veto_count is the weighted sum of veto.\n            voting_period_end:\n              type: string\n              format: date-time\n              description: >-\n                voting_period_end is the timestamp before which voting must be\n                done.\n\n                Unless a successfull MsgExec is called before (to execute a\n                proposal whose\n\n                tally is successful before the voting period ends), tallying\n                will be done\n\n                at this point, and the `final_tally_result`and `status` fields\n                will be\n\n                accordingly updated.\n            executor_result:\n              description: >-\n                executor_result is the final result of the proposal execution.\n                Initial value is NotRun.\n              type: string\n              enum:\n                - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n                - PROPOSAL_EXECUTOR_RESULT_NOT_RUN\n                - PROPOSAL_EXECUTOR_RESULT_SUCCESS\n                - PROPOSAL_EXECUTOR_RESULT_FAILURE\n              default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED\n            messages:\n              type: array\n              items:\n                type: object\n                properties:\n                  type_url:\n                    type: string\n                    description: >-\n                      A URL/resource name that uniquely identifies the type of\n                      the serialized\n\n                      protocol buffer message. This string must contain at least\n\n                      one \"/\" character. The last segment of the URL's path must\n                      represent\n\n                      the fully qualified name of the type (as in\n\n                      `path/google.protobuf.Duration`). The name should be in a\n                      canonical form\n\n                      (e.g., leading \".\" is not accepted).\n\n\n                      In practice, teams usually precompile into the binary all\n                      types that they\n\n                      expect it to use in the context of Any. However, for URLs\n                      which use the\n\n                      scheme `http`, `https`, or no scheme, one can optionally\n                      set up a type\n\n                      server that maps type URLs to message definitions as\n                      follows:\n\n\n                      * If no scheme is provided, `https` is assumed.\n\n                      * An HTTP GET on the URL must yield a\n                      [google.protobuf.Type][]\n                        value in binary format, or produce an error.\n                      * Applications are allowed to cache lookup results based\n                      on the\n                        URL, or have them precompiled into a binary to avoid any\n                        lookup. Therefore, binary compatibility needs to be preserved\n                        on changes to types. (Use versioned type names to manage\n                        breaking changes.)\n\n                      Note: this functionality is not currently available in the\n                      official\n\n                      protobuf release, and it is not used for type URLs\n                      beginning with\n\n                      type.googleapis.com.\n\n\n                      Schemes other than `http`, `https` (or the empty scheme)\n                      might be\n\n                      used with implementation specific semantics.\n                  value:\n                    type: string\n                    format: byte\n                    description: >-\n                      Must be a valid serialized protocol buffer of the above\n                      specified type.\n                description: >-\n                  `Any` contains an arbitrary serialized protocol buffer message\n                  along with a\n\n                  URL that describes the type of the serialized message.\n\n\n                  Protobuf library provides support to pack/unpack Any values in\n                  the form\n\n                  of utility functions or additional generated methods of the\n                  Any type.\n\n\n                  Example 1: Pack and unpack a message in C++.\n\n                      Foo foo = ...;\n                      Any any;\n                      any.PackFrom(foo);\n                      ...\n                      if (any.UnpackTo(&foo)) {\n                        ...\n                      }\n\n                  Example 2: Pack and unpack a message in Java.\n\n                      Foo foo = ...;\n                      Any any = Any.pack(foo);\n                      ...\n                      if (any.is(Foo.class)) {\n                        foo = any.unpack(Foo.class);\n                      }\n\n                   Example 3: Pack and unpack a message in Python.\n\n                      foo = Foo(...)\n                      any = Any()\n                      any.Pack(foo)\n                      ...\n                      if any.Is(Foo.DESCRIPTOR):\n                        any.Unpack(foo)\n                        ...\n\n                   Example 4: Pack and unpack a message in Go\n\n                       foo := &pb.Foo{...}\n                       any, err := anypb.New(foo)\n                       if err != nil {\n                         ...\n                       }\n                       ...\n                       foo := &pb.Foo{}\n                       if err := any.UnmarshalTo(foo); err != nil {\n                         ...\n                       }\n\n                  The pack methods provided by protobuf library will by default\n                  use\n\n                  'type.googleapis.com/full.type.name' as the type URL and the\n                  unpack\n\n                  methods only use the fully qualified type name after the last\n                  '/'\n\n                  in the type URL, for example \"foo.bar.com/x/y.z\" will yield\n                  type\n\n                  name \"y.z\".\n\n\n\n                  JSON\n\n                  ====\n\n                  The JSON representation of an `Any` value uses the regular\n\n                  representation of the deserialized, embedded message, with an\n\n                  additional field `@type` which contains the type URL. Example:\n\n                      package google.profile;\n                      message Person {\n                        string first_name = 1;\n                        string last_name = 2;\n                      }\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.profile.Person\",\n                        \"firstName\": <string>,\n                        \"lastName\": <string>\n                      }\n\n                  If the embedded message type is well-known and has a custom\n                  JSON\n\n                  representation, that representation will be embedded adding a\n                  field\n\n                  `value` which holds the custom JSON in addition to the `@type`\n\n                  field. Example (for message [google.protobuf.Duration][]):\n\n                      {\n                        \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n                        \"value\": \"1.212s\"\n                      }\n              description: >-\n                messages is a list of `sdk.Msg`s that will be executed if the\n                proposal passes.\n          description: >-\n            Proposal defines a group proposal. Any member of a group can submit\n            a proposal\n\n            for a group policy to decide upon.\n\n            A proposal consists of a set of `sdk.Msg`s that will be executed if\n            the proposal\n\n            passes as well as some optional metadata associated with the\n            proposal.\n        description: proposals are the proposals with given group policy.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: >-\n      QueryProposalsByGroupPolicyResponse is the Query/ProposalByGroupPolicy\n      response type.\n  cosmos.group.v1.QueryTallyResultResponse:\n    type: object\n    properties:\n      tally:\n        description: tally defines the requested tally.\n        type: object\n        properties:\n          yes_count:\n            type: string\n            description: yes_count is the weighted sum of yes votes.\n          abstain_count:\n            type: string\n            description: abstain_count is the weighted sum of abstainers.\n          no_count:\n            type: string\n            description: no_count is the weighted sum of no votes.\n          no_with_veto_count:\n            type: string\n            description: no_with_veto_count is the weighted sum of veto.\n    description: QueryTallyResultResponse is the Query/TallyResult response type.\n  cosmos.group.v1.QueryVoteByProposalVoterResponse:\n    type: object\n    properties:\n      vote:\n        description: vote is the vote with given proposal_id and voter.\n        type: object\n        properties:\n          proposal_id:\n            type: string\n            format: uint64\n            description: proposal is the unique ID of the proposal.\n          voter:\n            type: string\n            description: voter is the account address of the voter.\n          option:\n            description: option is the voter's choice on the proposal.\n            type: string\n            enum:\n              - VOTE_OPTION_UNSPECIFIED\n              - VOTE_OPTION_YES\n              - VOTE_OPTION_ABSTAIN\n              - VOTE_OPTION_NO\n              - VOTE_OPTION_NO_WITH_VETO\n            default: VOTE_OPTION_UNSPECIFIED\n          metadata:\n            type: string\n            description: metadata is any arbitrary metadata to attached to the vote.\n          submit_time:\n            type: string\n            format: date-time\n            description: submit_time is the timestamp when the vote was submitted.\n    description: >-\n      QueryVoteByProposalVoterResponse is the Query/VoteByProposalVoter response\n      type.\n  cosmos.group.v1.QueryVotesByProposalResponse:\n    type: object\n    properties:\n      votes:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n              description: proposal is the unique ID of the proposal.\n            voter:\n              type: string\n              description: voter is the account address of the voter.\n            option:\n              description: option is the voter's choice on the proposal.\n              type: string\n              enum:\n                - VOTE_OPTION_UNSPECIFIED\n                - VOTE_OPTION_YES\n                - VOTE_OPTION_ABSTAIN\n                - VOTE_OPTION_NO\n                - VOTE_OPTION_NO_WITH_VETO\n              default: VOTE_OPTION_UNSPECIFIED\n            metadata:\n              type: string\n              description: metadata is any arbitrary metadata to attached to the vote.\n            submit_time:\n              type: string\n              format: date-time\n              description: submit_time is the timestamp when the vote was submitted.\n          description: Vote represents a vote for a proposal.\n        description: votes are the list of votes for given proposal_id.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: QueryVotesByProposalResponse is the Query/VotesByProposal response type.\n  cosmos.group.v1.QueryVotesByVoterResponse:\n    type: object\n    properties:\n      votes:\n        type: array\n        items:\n          type: object\n          properties:\n            proposal_id:\n              type: string\n              format: uint64\n              description: proposal is the unique ID of the proposal.\n            voter:\n              type: string\n              description: voter is the account address of the voter.\n            option:\n              description: option is the voter's choice on the proposal.\n              type: string\n              enum:\n                - VOTE_OPTION_UNSPECIFIED\n                - VOTE_OPTION_YES\n                - VOTE_OPTION_ABSTAIN\n                - VOTE_OPTION_NO\n                - VOTE_OPTION_NO_WITH_VETO\n              default: VOTE_OPTION_UNSPECIFIED\n            metadata:\n              type: string\n              description: metadata is any arbitrary metadata to attached to the vote.\n            submit_time:\n              type: string\n              format: date-time\n              description: submit_time is the timestamp when the vote was submitted.\n          description: Vote represents a vote for a proposal.\n        description: votes are the list of votes by given voter.\n      pagination:\n        description: pagination defines the pagination in the response.\n        type: object\n        properties:\n          next_key:\n            type: string\n            format: byte\n            description: |-\n              next_key is the key to be passed to PageRequest.key to\n              query the next page most efficiently. It will be empty if\n              there are no more results.\n          total:\n            type: string\n            format: uint64\n            title: >-\n              total is total number of results available if\n              PageRequest.count_total\n\n              was set, its value is undefined otherwise\n    description: QueryVotesByVoterResponse is the Query/VotesByVoter response type.\n  cosmos.group.v1.TallyResult:\n    type: object\n    properties:\n      yes_count:\n        type: string\n        description: yes_count is the weighted sum of yes votes.\n      abstain_count:\n        type: string\n        description: abstain_count is the weighted sum of abstainers.\n      no_count:\n        type: string\n        description: no_count is the weighted sum of no votes.\n      no_with_veto_count:\n        type: string\n        description: no_with_veto_count is the weighted sum of veto.\n    description: TallyResult represents the sum of weighted votes for each vote option.\n  cosmos.group.v1.Vote:\n    type: object\n    properties:\n      proposal_id:\n        type: string\n        format: uint64\n        description: proposal is the unique ID of the proposal.\n      voter:\n        type: string\n        description: voter is the account address of the voter.\n      option:\n        description: option is the voter's choice on the proposal.\n        type: string\n        enum:\n          - VOTE_OPTION_UNSPECIFIED\n          - VOTE_OPTION_YES\n          - VOTE_OPTION_ABSTAIN\n          - VOTE_OPTION_NO\n          - VOTE_OPTION_NO_WITH_VETO\n        default: VOTE_OPTION_UNSPECIFIED\n      metadata:\n        type: string\n        description: metadata is any arbitrary metadata to attached to the vote.\n      submit_time:\n        type: string\n        format: date-time\n        description: submit_time is the timestamp when the vote was submitted.\n    description: Vote represents a vote for a proposal.\n  cosmos.group.v1.VoteOption:\n    type: string\n    enum:\n      - VOTE_OPTION_UNSPECIFIED\n      - VOTE_OPTION_YES\n      - VOTE_OPTION_ABSTAIN\n      - VOTE_OPTION_NO\n      - VOTE_OPTION_NO_WITH_VETO\n    default: VOTE_OPTION_UNSPECIFIED\n    description: |-\n      VoteOption enumerates the valid vote options for a given proposal.\n\n       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines an unspecified vote option which will\n      return an error.\n       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.\n       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.\n       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.\n       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.\n"
  },
  {
    "path": "client/lite/swagger.go",
    "content": "package lite\n\nimport (\n\t\"net/http\"\n\n\t\"github.com/gorilla/mux\"\n\t\"github.com/rakyll/statik/fs\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\n\t_ \"github.com/irisnet/irishub/v4/client/lite/statik\"\n)\n\n// RegisterSwaggerAPI registers swagger route with API Server\nfunc RegisterSwaggerAPI(ctx client.Context, rtr *mux.Router) {\n\tstatikFS, err := fs.New()\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tstaticServer := http.FileServer(statikFS)\n\trtr.PathPrefix(\"/swagger/\").Handler(http.StripPrefix(\"/swagger/\", staticServer))\n}\n"
  },
  {
    "path": "cmd/contract_tests/main.go",
    "content": "package main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/snikch/goodman/hooks\"\n\t\"github.com/snikch/goodman/transaction\"\n)\n\nfunc main() {\n\t// This must be compiled beforehand and given to dredd as parameter, in the meantime the server should be running\n\th := hooks.NewHooks()\n\tserver := hooks.NewServer(hooks.NewHooksRunner(h))\n\th.BeforeAll(func(t []*transaction.Transaction) {\n\t\tfmt.Println(\"Sleep 5 seconds before all modification\")\n\t})\n\th.BeforeEach(func(t *transaction.Transaction) {\n\t\tfmt.Println(\"before each modification\")\n\t})\n\th.Before(\"/version > GET\", func(t *transaction.Transaction) {\n\t\tfmt.Println(\"before version TEST\")\n\t})\n\th.Before(\"/node_version > GET\", func(t *transaction.Transaction) {\n\t\tfmt.Println(\"before node_version TEST\")\n\t})\n\th.BeforeEachValidation(func(t *transaction.Transaction) {\n\t\tfmt.Println(\"before each validation modification\")\n\t})\n\th.BeforeValidation(\"/node_version > GET\", func(t *transaction.Transaction) {\n\t\tfmt.Println(\"before validation node_version TEST\")\n\t})\n\th.After(\"/node_version > GET\", func(t *transaction.Transaction) {\n\t\tfmt.Println(\"after node_version TEST\")\n\t})\n\th.AfterEach(func(t *transaction.Transaction) {\n\t\tfmt.Println(\"after each modification\")\n\t})\n\th.AfterAll(func(t []*transaction.Transaction) {\n\t\tfmt.Println(\"after all modification\")\n\t})\n\tserver.Serve()\n\tdefer server.Listener.Close()\n\tfmt.Print(h)\n}\n"
  },
  {
    "path": "cmd/iris/cmd/genaccounts.go",
    "content": "package cmd\n\nimport (\n\t\"bufio\"\n\t\"encoding/json\"\n\t\"errors\"\n\t\"fmt\"\n\n\t\"github.com/spf13/cobra\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/crypto/keyring\"\n\t\"github.com/cosmos/cosmos-sdk/server\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tauthvesting \"github.com/cosmos/cosmos-sdk/x/auth/vesting/types\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/genutil\"\n\tgenutiltypes \"github.com/cosmos/cosmos-sdk/x/genutil/types\"\n)\n\nconst (\n\tflagVestingStart = \"vesting-start-time\"\n\tflagVestingEnd   = \"vesting-end-time\"\n\tflagVestingAmt   = \"vesting-amount\"\n)\n\n// AddGenesisAccountCmd returns add-genesis-account cobra Command.\nfunc AddGenesisAccountCmd(defaultNodeHome string) *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"add-genesis-account [address_or_key_name] [coin][,[coin]]\",\n\t\tShort: \"Add a genesis account to genesis.json\",\n\t\tLong: `Add a genesis account to genesis.json. The provided account must specify\nthe account address or key name and a list of initial coins. If a key name is given,\nthe address will be looked up in the local Keybase. The list of initial tokens must\ncontain valid denominations. Accounts may optionally be supplied with vesting parameters.\n`,\n\t\tArgs: cobra.ExactArgs(2),\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tclientCtx := client.GetClientContextFromCmd(cmd)\n\t\t\tdepCdc := clientCtx.Codec\n\t\t\tcdc := depCdc\n\n\t\t\tserverCtx := server.GetServerContextFromCmd(cmd)\n\t\t\tconfig := serverCtx.Config\n\n\t\t\tconfig.SetRoot(clientCtx.HomeDir)\n\n\t\t\tvar kr keyring.Keyring\n\t\t\taddr, err := sdk.AccAddressFromBech32(args[0])\n\t\t\tif err != nil {\n\t\t\t\tinBuf := bufio.NewReader(cmd.InOrStdin())\n\t\t\t\tkeyringBackend, err := cmd.Flags().GetString(flags.FlagKeyringBackend)\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn err\n\t\t\t\t}\n\n\t\t\t\tif keyringBackend != \"\" && clientCtx.Keyring == nil {\n\t\t\t\t\tvar err error\n\t\t\t\t\tkr, err = keyring.New(sdk.KeyringServiceName(), keyringBackend, clientCtx.HomeDir, inBuf, clientCtx.Codec)\n\t\t\t\t\tif err != nil {\n\t\t\t\t\t\treturn err\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tkr = clientCtx.Keyring\n\t\t\t\t}\n\n\t\t\t\tinfo, err := kr.Key(args[0])\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn fmt.Errorf(\"failed to get address from Keybase: %w\", err)\n\t\t\t\t}\n\n\t\t\t\taddr, err = info.GetAddress()\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn err\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcoins, err := sdk.ParseCoinsNormalized(args[1])\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to parse coins: %w\", err)\n\t\t\t}\n\n\t\t\tvestingStart, _ := cmd.Flags().GetInt64(flagVestingStart)\n\t\t\tvestingEnd, _ := cmd.Flags().GetInt64(flagVestingEnd)\n\t\t\tvestingAmtStr, _ := cmd.Flags().GetString(flagVestingAmt)\n\n\t\t\tvestingAmt, err := sdk.ParseCoinsNormalized(vestingAmtStr)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to parse vesting amount: %w\", err)\n\t\t\t}\n\n\t\t\t// create concrete account type based on input parameters\n\t\t\tvar genAccount authtypes.GenesisAccount\n\n\t\t\tbalances := banktypes.Balance{Address: addr.String(), Coins: coins.Sort()}\n\t\t\tbaseAccount := authtypes.NewBaseAccount(addr, nil, 0, 0)\n\n\t\t\tif !vestingAmt.IsZero() {\n\t\t\t\tbaseVestingAccount, err := authvesting.NewBaseVestingAccount(baseAccount, vestingAmt.Sort(), vestingEnd)\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn err\n\t\t\t\t}\n\n\t\t\t\tif (balances.Coins.IsZero() && !baseVestingAccount.OriginalVesting.IsZero()) ||\n\t\t\t\t\tbaseVestingAccount.OriginalVesting.IsAnyGT(balances.Coins) {\n\t\t\t\t\treturn errors.New(\"vesting amount cannot be greater than total amount\")\n\t\t\t\t}\n\n\t\t\t\tswitch {\n\t\t\t\tcase vestingStart != 0 && vestingEnd != 0:\n\t\t\t\t\tgenAccount = authvesting.NewContinuousVestingAccountRaw(baseVestingAccount, vestingStart)\n\n\t\t\t\tcase vestingEnd != 0:\n\t\t\t\t\tgenAccount = authvesting.NewDelayedVestingAccountRaw(baseVestingAccount)\n\n\t\t\t\tdefault:\n\t\t\t\t\treturn errors.New(\"invalid vesting parameters; must supply start and end time or end time\")\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tgenAccount = baseAccount\n\t\t\t}\n\n\t\t\tif err := genAccount.Validate(); err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to validate new genesis account: %w\", err)\n\t\t\t}\n\n\t\t\tgenFile := config.GenesisFile()\n\t\t\tappState, genDoc, err := genutiltypes.GenesisStateFromGenFile(genFile)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to unmarshal genesis state: %w\", err)\n\t\t\t}\n\n\t\t\tauthGenState := authtypes.GetGenesisStateFromAppState(cdc, appState)\n\n\t\t\taccs, err := authtypes.UnpackAccounts(authGenState.Accounts)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to get accounts from any: %w\", err)\n\t\t\t}\n\n\t\t\tif accs.Contains(addr) {\n\t\t\t\treturn fmt.Errorf(\"cannot add account at existing address %s\", addr)\n\t\t\t}\n\n\t\t\t// Add the new account to the set of genesis accounts and sanitize the\n\t\t\t// accounts afterwards.\n\t\t\taccs = append(accs, genAccount)\n\t\t\taccs = authtypes.SanitizeGenesisAccounts(accs)\n\n\t\t\tgenAccs, err := authtypes.PackAccounts(accs)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to convert accounts into any's: %w\", err)\n\t\t\t}\n\t\t\tauthGenState.Accounts = genAccs\n\n\t\t\tauthGenStateBz, err := cdc.MarshalJSON(&authGenState)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to marshal auth genesis state: %w\", err)\n\t\t\t}\n\n\t\t\tappState[authtypes.ModuleName] = authGenStateBz\n\n\t\t\tbankGenState := banktypes.GetGenesisStateFromAppState(depCdc, appState)\n\t\t\tbankGenState.Balances = append(bankGenState.Balances, balances)\n\t\t\tbankGenState.Balances = banktypes.SanitizeGenesisBalances(bankGenState.Balances)\n\n\t\t\tbankGenStateBz, err := cdc.MarshalJSON(bankGenState)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to marshal bank genesis state: %w\", err)\n\t\t\t}\n\n\t\t\tappState[banktypes.ModuleName] = bankGenStateBz\n\n\t\t\tappStateJSON, err := json.Marshal(appState)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"failed to marshal application genesis state: %w\", err)\n\t\t\t}\n\n\t\t\tgenDoc.AppState = appStateJSON\n\t\t\treturn genutil.ExportGenesisFile(genDoc, genFile)\n\t\t},\n\t}\n\n\tcmd.Flags().String(flags.FlagHome, defaultNodeHome, \"The application home directory\")\n\tcmd.Flags().String(flags.FlagKeyringBackend, flags.DefaultKeyringBackend, \"Select keyring's backend (os|file|kwallet|pass|test)\")\n\tcmd.Flags().String(flagVestingAmt, \"\", \"amount of coins for vesting accounts\")\n\tcmd.Flags().Int64(flagVestingStart, 0, \"schedule start time (unix epoch) for vesting accounts\")\n\tcmd.Flags().Int64(flagVestingEnd, 0, \"schedule end time (unix epoch) for vesting accounts\")\n\tflags.AddQueryFlagsToCmd(cmd)\n\n\treturn cmd\n}\n"
  },
  {
    "path": "cmd/iris/cmd/genesis.go",
    "content": "package cmd\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/spf13/cobra\"\n\n\tcometjson \"github.com/cometbft/cometbft/libs/json\"\n\t\"github.com/cometbft/cometbft/types\"\n\tcomettypes \"github.com/cometbft/cometbft/types\"\n\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\tgovtypesv1 \"github.com/cosmos/cosmos-sdk/x/gov/types/v1\"\n\n\t\"github.com/irisnet/irishub/v4/app/params\"\n)\n\nconst (\n\ttestnetFile = \"testnet-genesis-file\"\n\tmainnetFile = \"mainnet-genesis-file\"\n\toutputFile  = \"output-genesis-file\"\n)\n\n// mergeGenesisCmd registers a sub-tree of commands to interact with\n// local private key storage.\nfunc mergeGenesisCmd(encodingConfig params.EncodingConfig) *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"merge-genesis\",\n\t\tShort: \"merge genesis with testnet and mainnet\",\n\t\tRunE: func(cmd *cobra.Command, _ []string) error {\n\t\t\ttestnetGenesisPath, err := cmd.Flags().GetString(testnetFile)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tmainnetGenesisPath, err := cmd.Flags().GetString(mainnetFile)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\toutputFile, err := cmd.Flags().GetString(outputFile)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\ttestnetGenesis, err := comettypes.GenesisDocFromFile(testnetGenesisPath)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tmainnetGenesis, err := comettypes.GenesisDocFromFile(mainnetGenesisPath)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\treturn merge(encodingConfig.Codec, testnetGenesis, mainnetGenesis, outputFile)\n\t\t},\n\t}\n\tcmd.Flags().String(testnetFile, \"\", \"irishub testnet genesis\")\n\tcmd.Flags().String(mainnetFile, \"\", \"irishub mainnet genesis\")\n\tcmd.Flags().String(outputFile, \"\", \"merged genesis\")\n\treturn cmd\n}\n\nfunc merge(cdc codec.Codec, testnet, mainnet *types.GenesisDoc, output string) (err error) {\n\tvar mainnetAppState, testnetAppState map[string]json.RawMessage\n\tif err = cometjson.Unmarshal(mainnet.AppState, &mainnetAppState); err != nil {\n\t\treturn err\n\t}\n\n\tif err = cometjson.Unmarshal(testnet.AppState, &testnetAppState); err != nil {\n\t\tpanic(err)\n\t}\n\tmainnet.Validators = nil\n\tmainnetAppState[\"staking\"] = testnetAppState[\"staking\"]\n\tmainnetAppState[\"slashing\"] = testnetAppState[\"slashing\"]\n\tmainnetAppState[\"mint\"] = testnetAppState[\"mint\"]\n\tmainnetAppState[\"distribution\"] = testnetAppState[\"distribution\"]\n\tmainnetAppState[\"genutil\"] = testnetAppState[\"genutil\"]\n\tmainnetAppState[\"htlc\"] = testnetAppState[\"htlc\"]\n\n\tmergeBank(cdc, testnetAppState, mainnetAppState)\n\tmergeAuth(cdc, testnetAppState, mainnetAppState)\n\tmergeGov(cdc, testnetAppState, mainnetAppState)\n\n\tmainnet.InitialHeight = 0\n\tmainnet.ChainID = testnet.ChainID\n\tmainnet.AppState, err = cometjson.Marshal(mainnetAppState)\n\tif err != nil {\n\t\treturn err\n\t}\n\treturn mainnet.SaveAs(output)\n}\n\nvar filterAddrs = map[string]bool{\n\t//distribution\n\t\"iaa1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8jaydtw\": true,\n\t//not_bonded_tokens_pool\n\t\"iaa1tygms3xhhs3yv487phx3dw4a95jn7t7l5e40dj\": true,\n\t//bonded_tokens_pool\n\t\"iaa1fl48vsnmsdzcv85q5d2q4z5ajdha8yu3qef7mx\": true,\n}\n\nfunc mergeBank(cdc codec.Codec, testnet, mainnet map[string]json.RawMessage) {\n\tvar bankState, testnetBankState banktypes.GenesisState\n\tcdc.MustUnmarshalJSON(mainnet[\"bank\"], &bankState)\n\n\t//clean Supply\n\tbankState.Supply = sdk.NewCoins()\n\n\t//delete balance\n\tk := 0\n\tfor _, balance := range bankState.Balances {\n\t\tif !filterAddrs[balance.Address] {\n\t\t\tbankState.Balances[k] = balance\n\t\t\tk++\n\t\t}\n\t}\n\tbankState.Balances = bankState.Balances[:k]\n\t//copy testnet balance to mainnet\n\tcdc.MustUnmarshalJSON(testnet[\"bank\"], &testnetBankState)\n\tbankState.Balances = append(bankState.Balances, testnetBankState.Balances...)\n\tmainnet[\"bank\"] = cdc.MustMarshalJSON(&bankState)\n}\n\nfunc mergeAuth(cdc codec.Codec, testnet, mainnet map[string]json.RawMessage) {\n\tvar authState, testnetAuthState authtypes.GenesisState\n\tcdc.MustUnmarshalJSON(testnet[\"auth\"], &testnetAuthState)\n\tcdc.MustUnmarshalJSON(mainnet[\"auth\"], &authState)\n\n\tfor _, account := range testnetAuthState.Accounts {\n\t\tauthState.Accounts = append(authState.Accounts, account)\n\t}\n\tmainnet[\"auth\"] = cdc.MustMarshalJSON(&authState)\n}\n\nfunc mergeGov(cdc codec.Codec, testnet, mainnet map[string]json.RawMessage) {\n\tvar govState, testnetgovState govtypesv1.GenesisState\n\tcdc.MustUnmarshalJSON(testnet[\"gov\"], &testnetgovState)\n\tcdc.MustUnmarshalJSON(mainnet[\"gov\"], &govState)\n\n\tgovState.DepositParams = testnetgovState.DepositParams\n\tgovState.VotingParams = testnetgovState.VotingParams\n\tgovState.TallyParams = testnetgovState.TallyParams\n\tmainnet[\"gov\"] = cdc.MustMarshalJSON(&govState)\n}"
  },
  {
    "path": "cmd/iris/cmd/keys.go",
    "content": "package cmd\n\nimport (\n\t\"bufio\"\n\t\"encoding/json\"\n\t\"os\"\n\n\tcosmoshd \"github.com/cosmos/cosmos-sdk/crypto/hd\"\n\tetherminthd \"github.com/evmos/ethermint/crypto/hd\"\n\n\tethermintclient \"github.com/evmos/ethermint/client\"\n\tclientkeys \"github.com/evmos/ethermint/client/keys\"\n\t\"github.com/spf13/cobra\"\n\n\t\"github.com/cometbft/cometbft/libs/cli\"\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/client/input\"\n\t\"github.com/cosmos/cosmos-sdk/client/keys\"\n\n\t\"github.com/irisnet/irishub/v4/client/keystore\"\n)\n\n// Commands registers a sub-tree of commands to interact with\n// local private key storage.\nfunc Commands(defaultNodeHome string) *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"keys\",\n\t\tShort: \"Manage your application's keys\",\n\t\tLong: `Keyring management commands. These keys may be in any format supported by the\nTendermint crypto library and can be used by light-clients, full nodes, or any other application\nthat needs to sign with a private key.\n\nThe keyring supports the following backends:\n\n    os          Uses the operating system's default credentials store.\n    file        Uses encrypted file-based keystore within the app's configuration directory.\n                This keyring will request a password each time it is accessed, which may occur\n                multiple times in a single command resulting in repeated password prompts.\n    kwallet     Uses KDE Wallet Manager as a credentials management application.\n    pass        Uses the pass command line utility to store and retrieve keys.\n    test        Stores keys insecurely to disk. It does not prompt for a password to be unlocked\n                and it should be use only for testing purposes.\n\nkwallet and pass backends depend on external tools. Refer to their respective documentation for more\ninformation:\n    KWallet     https://github.com/KDE/kwallet\n    pass        https://www.passwordstore.org/\n\nThe pass backend requires GnuPG: https://gnupg.org/\n`,\n\t}\n\t// support adding Ethereum supported keys\n\taddCmd := keys.AddKeyCommand()\n\n\t// update the default signing algorithm value to \"secp256k1\"\n\talgoFlag := addCmd.Flag(flags.FlagKeyType)\n\talgoFlag.DefValue = string(cosmoshd.Secp256k1Type)\n\terr := algoFlag.Value.Set(string(cosmoshd.Secp256k1Type))\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\taddCmd.RunE = runAddCmd\n\n\tcmd.AddCommand(\n\t\tkeys.MnemonicKeyCommand(),\n\t\taddCmd,\n\t\tkeys.ExportKeyCommand(),\n\t\timportKeyCommand(),\n\t\tkeys.ListKeysCmd(),\n\t\tkeys.ShowKeysCmd(),\n\t\tflags.LineBreak,\n\t\tkeys.DeleteKeyCommand(),\n\t\tkeys.ParseKeyStringCommand(),\n\t\tkeys.MigrateCommand(),\n\t\tethermintclient.UnsafeExportEthKeyCommand(),\n\t\tethermintclient.UnsafeImportKeyCommand(),\n\t)\n\n\tcmd.PersistentFlags().String(flags.FlagHome, defaultNodeHome, \"The application home directory\")\n\tcmd.PersistentFlags().\n\t\tString(flags.FlagKeyringDir, \"\", \"The client Keyring directory; if omitted, the default 'home' directory will be used\")\n\tcmd.PersistentFlags().\n\t\tString(flags.FlagKeyringBackend, flags.DefaultKeyringBackend, \"Select keyring's backend (os|file|test)\")\n\tcmd.PersistentFlags().String(cli.OutputFlag, \"text\", \"Output format (text|json)\")\n\n\treturn cmd\n}\n\nfunc importKeyCommand() *cobra.Command {\n\treturn &cobra.Command{\n\t\tUse:   \"import <name> <keyfile>\",\n\t\tShort: \"Import private keys into the local keybase\",\n\t\tLong:  \"Import a ASCII armored private key into the local keybase.\",\n\t\tArgs:  cobra.ExactArgs(2),\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tbuf := bufio.NewReader(cmd.InOrStdin())\n\t\t\tclientCtx, err := client.GetClientQueryContext(cmd)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tbz, err := os.ReadFile(args[1])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tpassphrase, err := input.GetPassword(\"Enter passphrase to decrypt your key:\", buf)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tarmor, err := getArmor(bz, passphrase)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\treturn clientCtx.Keyring.ImportPrivKey(args[0], armor, passphrase)\n\t\t},\n\t}\n}\n\nfunc getArmor(privBytes []byte, passphrase string) (string, error) {\n\tif !json.Valid(privBytes) {\n\t\treturn string(privBytes), nil\n\t}\n\treturn keystore.RecoveryAndExportPrivKeyArmor(privBytes, passphrase)\n}\n\nfunc runAddCmd(cmd *cobra.Command, args []string) error {\n\tclientCtx := client.GetClientContextFromCmd(cmd).\n\t\tWithKeyringOptions(etherminthd.EthSecp256k1Option())\n\tclientCtx, err := client.ReadPersistentCommandFlags(clientCtx, cmd.Flags())\n\tif err != nil {\n\t\treturn err\n\t}\n\tbuf := bufio.NewReader(clientCtx.Input)\n\treturn clientkeys.RunAddCmd(clientCtx, cmd, args, buf)\n}\n"
  },
  {
    "path": "cmd/iris/cmd/root.go",
    "content": "package cmd\n\nimport (\n\t\"errors\"\n\t\"fmt\"\n\t\"io\"\n\t\"os\"\n\n\t\"github.com/spf13/cobra\"\n\t\"github.com/spf13/viper\"\n\n\ttmcfg \"github.com/cometbft/cometbft/config\"\n\ttmcli \"github.com/cometbft/cometbft/libs/cli\"\n\n\t\"cosmossdk.io/client/v2/autocli\"\n\t\"cosmossdk.io/log\"\n\tdbm \"github.com/cosmos/cosmos-db\"\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/config\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/client/pruning\"\n\t\"github.com/cosmos/cosmos-sdk/client/rpc\"\n\taddresscodec \"github.com/cosmos/cosmos-sdk/codec/address\"\n\t\"github.com/cosmos/cosmos-sdk/server\"\n\tservertypes \"github.com/cosmos/cosmos-sdk/server/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tauthcmd \"github.com/cosmos/cosmos-sdk/x/auth/client/cli\"\n\t\"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/crisis\"\n\tgenutilcli \"github.com/cosmos/cosmos-sdk/x/genutil/client/cli\"\n\n\tethermintdebug \"github.com/evmos/ethermint/client/debug\"\n\tetherminthd \"github.com/evmos/ethermint/crypto/hd\"\n\tethermintserver \"github.com/evmos/ethermint/server\"\n\tservercfg \"github.com/evmos/ethermint/server/config\"\n\n\t\"github.com/irisnet/irishub/v4/app\"\n\t\"github.com/irisnet/irishub/v4/app/params\"\n\tiristypes \"github.com/irisnet/irishub/v4/types\"\n)\n\n// NewRootCmd creates a new root command for simd. It is called once in the\n// main function.\nfunc NewRootCmd() *cobra.Command {\n\t// we \"pre\"-instantiate the application for getting the injected/configured encoding configuration\n\tinitAppOptions := viper.New()\n\ttempDir := tempDir()\n\tinitAppOptions.Set(flags.FlagHome, tempDir)\n\ttempApplication := app.NewIrisApp(log.NewNopLogger(), dbm.NewMemDB(), nil, true,  initAppOptions)\n\tencodingConfig := tempApplication.EncodingConfig()\n\n\tdefer func() {\n\t\tif err := tempApplication.Close(); err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\tif tempDir != iristypes.DefaultNodeHome {\n\t\t\tos.RemoveAll(tempDir)\n\t\t}\n\t}()\n\n\tinitClientCtx := client.Context{}.\n\t\tWithCodec(encodingConfig.Codec).\n\t\tWithInterfaceRegistry(encodingConfig.InterfaceRegistry).\n\t\tWithTxConfig(encodingConfig.TxConfig).\n\t\tWithLegacyAmino(encodingConfig.LegacyAmino).\n\t\tWithInput(os.Stdin).\n\t\tWithAccountRetriever(types.AccountRetriever{}).\n\t\tWithBroadcastMode(flags.BroadcastSync).\n\t\tWithHomeDir(iristypes.DefaultNodeHome).\n\t\tWithKeyringOptions(etherminthd.EthSecp256k1Option()).\n\t\tWithViper(\"\")\n\n\trootCmd := &cobra.Command{\n\t\tUse:   \"iris\",\n\t\tShort: \"IRIS Hub app command\",\n\t\tPersistentPreRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tinitClientCtx, err := client.ReadPersistentCommandFlags(initClientCtx, cmd.Flags())\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tinitClientCtx, err = config.ReadFromClientConfig(initClientCtx)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tif err = client.SetCmdClientContextHandler(initClientCtx, cmd); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tconverter.handlePreRun(cmd, args)\n\n\t\t\tcustomTemplate, customIRISHubConfig := initAppConfig()\n\t\t\tcustomTMConfig := initTendermintConfig()\n\t\t\treturn server.InterceptConfigsPreRunHandler(\n\t\t\t\tcmd,\n\t\t\t\tcustomTemplate,\n\t\t\t\tcustomIRISHubConfig,\n\t\t\t\tcustomTMConfig,\n\t\t\t)\n\t\t},\n\t\tPersistentPostRun: func(cmd *cobra.Command, _ []string) {\n\t\t\tconverter.handlePostRun(cmd)\n\t\t},\n\t}\n\n\tinitRootCmd(rootCmd, encodingConfig, tempApplication.BasicManager())\n\n\tautoCliOpts := enrichAutoCliOpts(tempApplication.AutoCliOpts(), initClientCtx)\n\tif err := autoCliOpts.EnhanceRootCommand(rootCmd); err != nil {\n\t\tpanic(err)\n\t}\n\n\treturn rootCmd\n}\n\nfunc enrichAutoCliOpts(autoCliOpts autocli.AppOptions, clientCtx client.Context) autocli.AppOptions {\n\tautoCliOpts.AddressCodec = addresscodec.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix())\n\tautoCliOpts.ValidatorAddressCodec = addresscodec.NewBech32Codec(sdk.GetConfig().GetBech32ValidatorAddrPrefix())\n\tautoCliOpts.ConsensusAddressCodec = addresscodec.NewBech32Codec(sdk.GetConfig().GetBech32ConsensusAddrPrefix())\n\n\tautoCliOpts.ClientCtx = clientCtx\n\n\treturn autoCliOpts\n}\n\n// initTendermintConfig helps to override default Tendermint Config values.\n// return tmcfg.DefaultConfig if no custom configuration is required for the application.\nfunc initTendermintConfig() *tmcfg.Config {\n\tcfg := tmcfg.DefaultConfig()\n\n\t// these values put a higher strain on node memory\n\t// cfg.P2P.MaxNumInboundPeers = 100\n\t// cfg.P2P.MaxNumOutboundPeers = 40\n\n\treturn cfg\n}\n\n// initAppConfig helps to override default appConfig template and configs.\n// return \"\", nil if no custom configuration is required for the application.\nfunc initAppConfig() (string, interface{}) {\n\tcustomAppTemplate, customAppConfig := servercfg.AppConfig(iristypes.NativeToken.MinUnit)\n\tsrvCfg, ok := customAppConfig.(servercfg.Config)\n\tif !ok {\n\t\tpanic(fmt.Errorf(\"unknown app config type %T\", customAppConfig))\n\t}\n\n\tsrvCfg.StateSync.SnapshotInterval = 1000\n\tsrvCfg.StateSync.SnapshotKeepRecent = 10\n\n\treturn customAppTemplate, srvCfg\n}\n\nfunc initRootCmd(\n\trootCmd *cobra.Command,\n\tencodingConfig params.EncodingConfig,\n\tbasicManager module.BasicManager,\n) {\n\tac := appCreator{}\n\n\trootCmd.AddCommand(\n\t\tgenutilcli.InitCmd(basicManager, iristypes.DefaultNodeHome),\n\t\tgenutilcli.ValidateGenesisCmd(basicManager),\n\t\tAddGenesisAccountCmd(iristypes.DefaultNodeHome),\n\t\ttmcli.NewCompletionCmd(rootCmd, true),\n\t\ttestnetCmd(basicManager, banktypes.GenesisBalancesIterator{}),\n\t\tethermintdebug.Cmd(),\n\t\tmergeGenesisCmd(encodingConfig),\n\t\tpruning.Cmd(ac.newApp, iristypes.DefaultNodeHome),\n\t)\n\n\tethermintserver.AddCommands(\n\t\trootCmd,\n\t\tethermintserver.NewDefaultStartOptions(ac.newApp, iristypes.DefaultNodeHome),\n\t\tac.appExport,\n\t\taddModuleInitFlags,\n\t)\n\n\t// add keybase, auxiliary RPC, query, and tx child commands\n\trootCmd.AddCommand(\n\t\tserver.StatusCommand(),\n\t\tgenesisCommand(basicManager, encodingConfig),\n\t\tqueryCommand(),\n\t\ttxCommand(basicManager),\n\t\tCommands(iristypes.DefaultNodeHome),\n\t)\n}\n\n// genesisCommand builds genesis-related `simd genesis` command. Users may provide application specific commands as a parameter\nfunc genesisCommand(basicManager module.BasicManager, encodingConfig params.EncodingConfig, cmds ...*cobra.Command) *cobra.Command {\n\tcmd := genutilcli.GenesisCoreCommand(\n\t\tencodingConfig.TxConfig,\n\t\tbasicManager,\n\t\tiristypes.DefaultNodeHome,\n\t)\n\n\tfor _, subCmd := range cmds {\n\t\tcmd.AddCommand(subCmd)\n\t}\n\treturn cmd\n}\n\nfunc addModuleInitFlags(rootCmd *cobra.Command) {\n\tcrisis.AddModuleInitFlags(rootCmd)\n}\n\nfunc queryCommand() *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:                        \"query\",\n\t\tAliases:                    []string{\"q\"},\n\t\tShort:                      \"Querying subcommands\",\n\t\tDisableFlagParsing:         true,\n\t\tSuggestionsMinimumDistance: 2,\n\t\tRunE:                       client.ValidateCmd,\n\t}\n\n\tcmd.AddCommand(\n\t\trpc.ValidatorCommand(),\n\t\tserver.QueryBlocksCmd(),\n\t\tserver.QueryBlockCmd(),\n\t\tserver.QueryBlockResultsCmd(),\n\t\tauthcmd.QueryTxsByEventsCmd(),\n\t\tauthcmd.QueryTxCmd(),\n\t)\n\n\tcmd.PersistentFlags().String(flags.FlagChainID, \"\", \"The network chain ID\")\n\n\treturn cmd\n}\n\nfunc txCommand(basicManager module.BasicManager) *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:                        \"tx\",\n\t\tShort:                      \"Transactions subcommands\",\n\t\tDisableFlagParsing:         true,\n\t\tSuggestionsMinimumDistance: 2,\n\t\tRunE:                       client.ValidateCmd,\n\t}\n\n\tcmd.AddCommand(\n\t\tauthcmd.GetSignCommand(),\n\t\tauthcmd.GetSignBatchCommand(),\n\t\tauthcmd.GetMultiSignCommand(),\n\t\tauthcmd.GetValidateSignaturesCommand(),\n\t\tflags.LineBreak,\n\t\tauthcmd.GetBroadcastCommand(),\n\t\tauthcmd.GetEncodeCommand(),\n\t\tauthcmd.GetDecodeCommand(),\n\t)\n\n    // NOTE: this must be registered for now so that submit-legacy-proposal\n\t// message (e.g. consumer-addition proposal) can be routed to the its handler and processed correctly.\n\tbasicManager.AddTxCommands(cmd)\n\t// app.ModuleBasics.AddTxCommands(cmd)\n\tcmd.PersistentFlags().String(flags.FlagChainID, \"\", \"The network chain ID\")\n\n\treturn cmd\n}\n\ntype appCreator struct {}\n\nfunc (ac appCreator) newApp(\n\tlogger log.Logger,\n\tdb dbm.DB,\n\ttraceStore io.Writer,\n\tappOpts servertypes.AppOptions,\n) servertypes.Application {\n\tbaseappOptions := server.DefaultBaseappOptions(appOpts)\n\treturn app.NewIrisApp(\n\t\tlogger,\n\t\tdb,\n\t\ttraceStore,\n\t\ttrue,\n\t\tappOpts,\n\t\tbaseappOptions...,\n\t)\n}\n\n// createIrisappAndExport creates a new irisapp (optionally at a given height) and exports state.\nfunc (ac appCreator) appExport(\n\tlogger log.Logger,\n\tdb dbm.DB,\n\ttraceStore io.Writer,\n\theight int64,\n\tforZeroHeight bool,\n\tjailAllowedAddrs []string,\n\tappOpts servertypes.AppOptions,\n\tmodulesToExport []string,\n) (servertypes.ExportedApp, error) {\n\thomePath, ok := appOpts.Get(flags.FlagHome).(string)\n\tif !ok || homePath == \"\" {\n\t\treturn servertypes.ExportedApp{}, errors.New(\"application home is not set\")\n\t}\n\n\tvar loadLatest bool\n\tif height == -1 {\n\t\tloadLatest = true\n\t}\n\n\tirisApp := app.NewIrisApp(\n\t\tlogger,\n\t\tdb,\n\t\ttraceStore,\n\t\tloadLatest,\n\t\tappOpts,\n\t)\n\n\tif height != -1 {\n\t\tif err := irisApp.LoadHeight(height); err != nil {\n\t\t\treturn servertypes.ExportedApp{}, err\n\t\t}\n\t}\n\n\treturn irisApp.ExportAppStateAndValidators(forZeroHeight, jailAllowedAddrs, modulesToExport)\n}\n\nvar tempDir = func() string {\n\tdir, err := os.MkdirTemp(\"\", \".iris\")\n\tif err != nil {\n\t\tpanic(fmt.Sprintf(\"failed creating temp directory: %s\", err.Error()))\n\t}\n\tdefer os.RemoveAll(dir)\n\n\treturn dir\n}\n"
  },
  {
    "path": "cmd/iris/cmd/testnet.go",
    "content": "package cmd\n\n// DONTCOVER\n\nimport (\n\t\"bufio\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"github.com/cosmos/cosmos-sdk/runtime\"\n\t\"io/ioutil\"\n\t\"net\"\n\t\"os\"\n\t\"path/filepath\"\n\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\n\t\"github.com/spf13/cobra\"\n\n\ttmconfig \"github.com/cometbft/cometbft/config\"\n\ttmos \"github.com/cometbft/cometbft/libs/os\"\n\ttmrand \"github.com/cometbft/cometbft/libs/rand\"\n\t\"github.com/cometbft/cometbft/types\"\n\ttmtime \"github.com/cometbft/cometbft/types/time\"\n\n\t\"cosmossdk.io/math\"\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/client/tx\"\n\t\"github.com/cosmos/cosmos-sdk/crypto/hd\"\n\t\"github.com/cosmos/cosmos-sdk/crypto/keyring\"\n\tcryptotypes \"github.com/cosmos/cosmos-sdk/crypto/types\"\n\t\"github.com/cosmos/cosmos-sdk/server\"\n\tsrvconfig \"github.com/cosmos/cosmos-sdk/server/config\"\n\t\"github.com/cosmos/cosmos-sdk/testutil\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\t\"github.com/cosmos/cosmos-sdk/x/genutil\"\n\tgenutiltypes \"github.com/cosmos/cosmos-sdk/x/genutil/types\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n\n\tservercfg \"github.com/evmos/ethermint/server/config\"\n\n\tservicetypes \"mods.irisnet.org/modules/service/types\"\n\ttokentypesv1 \"mods.irisnet.org/modules/token/types/v1\"\n\n\tguardiantypes \"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\tiristypes \"github.com/irisnet/irishub/v4/types\"\n)\n\nvar (\n\tflagNodeDirPrefix     = \"node-dir-prefix\"\n\tflagNumValidators     = \"v\"\n\tflagOutputDir         = \"output-dir\"\n\tflagNodeDaemonHome    = \"node-daemon-home\"\n\tflagNodeCLIHome       = \"node-cli-home\"\n\tflagStartingIPAddress = \"starting-ip-address\"\n)\n\nconst nativeIrisMinUnit = \"uiris\"\n\nvar PowerReduction = math.NewIntFromUint64(1000000000000000000)\n\n// get cmd to initialize all files for tendermint testnet and application\nfunc testnetCmd(\n\tmbm module.BasicManager,\n\tgenBalIterator banktypes.GenesisBalancesIterator,\n) *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"testnet\",\n\t\tShort: \"Initialize files for a simapp testnet\",\n\t\tLong: `testnet will create \"v\" number of directories and populate each with\nnecessary files (private validator, genesis, config, etc.).\nNote, strict routability for addresses is turned off in the config file.\nExample:\n\tiris testnet --v 4 --output-dir ./output --starting-ip-address 192.168.10.2\n\t`,\n\t\tRunE: func(cmd *cobra.Command, _ []string) error {\n\t\t\tclientCtx := client.GetClientContextFromCmd(cmd)\n\n\t\t\tserverCtx := server.GetServerContextFromCmd(cmd)\n\t\t\tconfig := serverCtx.Config\n\n\t\t\toutputDir, _ := cmd.Flags().GetString(flagOutputDir)\n\t\t\tkeyringBackend, _ := cmd.Flags().GetString(flags.FlagKeyringBackend)\n\t\t\tchainID, _ := cmd.Flags().GetString(flags.FlagChainID)\n\t\t\tminGasPrices, _ := cmd.Flags().GetString(server.FlagMinGasPrices)\n\t\t\tnodeDirPrefix, _ := cmd.Flags().GetString(flagNodeDirPrefix)\n\t\t\tnodeDaemonHome, _ := cmd.Flags().GetString(flagNodeDaemonHome)\n\t\t\tnodeCLIHome, _ := cmd.Flags().GetString(flagNodeCLIHome)\n\t\t\tstartingIPAddress, _ := cmd.Flags().GetString(flagStartingIPAddress)\n\t\t\tnumValidators, _ := cmd.Flags().GetInt(flagNumValidators)\n\t\t\talgo, _ := cmd.Flags().GetString(flags.FlagKeyType)\n\n\t\t\treturn InitTestnet(\n\t\t\t\tclientCtx,\n\t\t\t\tcmd,\n\t\t\t\tconfig,\n\t\t\t\tmbm,\n\t\t\t\tgenBalIterator,\n\t\t\t\toutputDir,\n\t\t\t\tchainID,\n\t\t\t\tminGasPrices,\n\t\t\t\tnodeDirPrefix,\n\t\t\t\tnodeDaemonHome,\n\t\t\t\tnodeCLIHome,\n\t\t\t\tstartingIPAddress,\n\t\t\t\tkeyringBackend,\n\t\t\t\talgo,\n\t\t\t\tnumValidators,\n\t\t\t)\n\t\t},\n\t}\n\n\tcmd.Flags().Int(flagNumValidators, 4, \"Number of validators to initialize the testnet with\")\n\tcmd.Flags().\n\t\tStringP(flagOutputDir, \"o\", \"./mytestnet\", \"Directory to store initialization data for the testnet\")\n\tcmd.Flags().\n\t\tString(flagNodeDirPrefix, \"node\", \"Prefix the directory name for each node with (node results in node0, node1, ...)\")\n\tcmd.Flags().\n\t\tString(flagNodeDaemonHome, \"iris\", \"Home directory of the node's daemon configuration\")\n\tcmd.Flags().String(flagNodeCLIHome, \"iriscli\", \"Home directory of the node's cli configuration\")\n\tcmd.Flags().\n\t\tString(flagStartingIPAddress, \"192.168.0.1\", \"Starting IP address (192.168.0.1 results in persistent peers list ID0@192.168.0.1:46656, ID1@192.168.0.2:46656, ...)\")\n\tcmd.Flags().\n\t\tString(flags.FlagChainID, \"\", \"genesis file chain-id, if left blank will be randomly created\")\n\tcmd.Flags().\n\t\tString(server.FlagMinGasPrices, fmt.Sprintf(\"0.000006%s\", sdk.DefaultBondDenom), \"Minimum gas prices to accept for transactions; All fees in a tx must meet this minimum (e.g. 0.01photino,0.001stake)\")\n\tcmd.Flags().\n\t\tString(flags.FlagKeyringBackend, flags.DefaultKeyringBackend, \"Select keyring's backend (os|file|test)\")\n\tcmd.Flags().\n\t\tString(flags.FlagKeyType, string(hd.Secp256k1Type), \"Key signing algorithm to generate keys for\")\n\n\treturn cmd\n}\n\nconst nodeDirPerm = 0755\n\n// InitTestnet the testnet\nfunc InitTestnet(\n\tclientCtx client.Context,\n\tcmd *cobra.Command,\n\tnodeConfig *tmconfig.Config,\n\tmbm module.BasicManager,\n\tgenBalIterator banktypes.GenesisBalancesIterator,\n\toutputDir,\n\tchainID,\n\tminGasPrices,\n\tnodeDirPrefix,\n\tnodeDaemonHome,\n\tnodeCLIHome,\n\tstartingIPAddress,\n\tkeyringBackend,\n\talgoStr string,\n\tnumValidators int,\n) error {\n\tif chainID == \"\" {\n\t\tchainID = \"chain-\" + tmrand.Str(6)\n\t}\n\n\tnodeIDs := make([]string, numValidators)\n\tvalPubKeys := make([]cryptotypes.PubKey, numValidators)\n\n\tsimappConfig := servercfg.DefaultConfig()\n\tsimappConfig.MinGasPrices = minGasPrices\n\tsimappConfig.API.Enable = true\n\tsimappConfig.Telemetry.Enabled = true\n\tsimappConfig.Telemetry.PrometheusRetentionTime = 60\n\tsimappConfig.Telemetry.EnableHostnameLabel = false\n\tsimappConfig.Telemetry.GlobalLabels = [][]string{{\"chain_id\", chainID}}\n\n\tvar (\n\t\tgenAccounts []authtypes.GenesisAccount\n\t\tgenBalances []banktypes.Balance\n\t\tgenFiles    []string\n\t)\n\n\tinBuf := bufio.NewReader(cmd.InOrStdin())\n\t// generate private keys, node IDs, and initial transactions\n\tfor i := 0; i < numValidators; i++ {\n\t\tnodeDirName := fmt.Sprintf(\"%s%d\", nodeDirPrefix, i)\n\t\tnodeDir := filepath.Join(outputDir, nodeDirName, nodeDaemonHome)\n\t\tclientDir := filepath.Join(outputDir, nodeDirName, nodeCLIHome)\n\t\tgentxsDir := filepath.Join(outputDir, \"gentxs\")\n\n\t\tnodeConfig.SetRoot(nodeDir)\n\t\tnodeConfig.RPC.ListenAddress = \"tcp://0.0.0.0:26657\"\n\n\t\tif err := os.MkdirAll(filepath.Join(nodeDir, \"config\"), nodeDirPerm); err != nil {\n\t\t\t_ = os.RemoveAll(outputDir)\n\t\t\treturn err\n\t\t}\n\n\t\tif err := os.MkdirAll(clientDir, nodeDirPerm); err != nil {\n\t\t\t_ = os.RemoveAll(outputDir)\n\t\t\treturn err\n\t\t}\n\n\t\tnodeConfig.Moniker = nodeDirName\n\n\t\tip, err := getIP(i, startingIPAddress)\n\t\tif err != nil {\n\t\t\t_ = os.RemoveAll(outputDir)\n\t\t\treturn err\n\t\t}\n\n\t\tnodeIDs[i], valPubKeys[i], err = genutil.InitializeNodeValidatorFiles(nodeConfig)\n\t\tif err != nil {\n\t\t\t_ = os.RemoveAll(outputDir)\n\t\t\treturn err\n\t\t}\n\n\t\tmemo := fmt.Sprintf(\"%s@%s:26656\", nodeIDs[i], ip)\n\t\tgenFiles = append(genFiles, nodeConfig.GenesisFile())\n\n\t\tkb, err := keyring.New(\n\t\t\tsdk.KeyringServiceName(),\n\t\t\tkeyringBackend,\n\t\t\tnodeDir,\n\t\t\tinBuf,\n\t\t\tclientCtx.Codec,\n\t\t)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\tkeyringAlgos, _ := kb.SupportedAlgorithms()\n\t\talgo, err := keyring.NewSigningAlgoFromString(algoStr, keyringAlgos)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\taddr, secret, err := testutil.GenerateSaveCoinKey(kb, nodeDirName, \"\", true, algo)\n\t\tif err != nil {\n\t\t\t_ = os.RemoveAll(outputDir)\n\t\t\treturn err\n\t\t}\n\n\t\tinfo := map[string]string{\"secret\": secret}\n\n\t\tcliPrint, err := json.Marshal(info)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\t// save private key seed words\n\t\tif err := writeFile(fmt.Sprintf(\"%v.json\", \"key_seed\"), clientDir, cliPrint); err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\taccStakingTokens := sdk.TokensFromConsensusPower(15e8, sdk.DefaultPowerReduction)\n\t\taccEvmTokens := sdk.TokensFromConsensusPower(5e8, PowerReduction)\n\n\t\tcoins := sdk.NewCoins(\n\t\t\tsdk.NewCoin(sdk.DefaultBondDenom, accStakingTokens),\n\t\t\tsdk.NewCoin(iristypes.EvmToken.MinUnit, accEvmTokens),\n\t\t)\n\n\t\tgenBalances = append(\n\t\t\tgenBalances,\n\t\t\tbanktypes.Balance{Address: addr.String(), Coins: coins.Sort()},\n\t\t)\n\t\tgenAccounts = append(genAccounts, authtypes.NewBaseAccount(addr, nil, 0, 0))\n\n\t\tvalTokens := sdk.TokensFromConsensusPower(100, sdk.DefaultPowerReduction)\n\t\tcreateValMsg, err := stakingtypes.NewMsgCreateValidator(\n\t\t\tsdk.ValAddress(addr).String(),\n\t\t\tvalPubKeys[i],\n\t\t\tsdk.NewCoin(sdk.DefaultBondDenom, valTokens),\n\t\t\tstakingtypes.NewDescription(nodeDirName, \"\", \"\", \"\", \"\"),\n\t\t\tstakingtypes.NewCommissionRates(math.LegacyOneDec(), math.LegacyOneDec(), math.LegacyOneDec()),\n\t\t)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\ttxBuilder := clientCtx.TxConfig.NewTxBuilder()\n\t\tif err := txBuilder.SetMsgs(createValMsg); err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\ttxBuilder.SetMemo(memo)\n\n\t\ttxFactory := tx.Factory{}\n\t\ttxFactory = txFactory.\n\t\t\tWithChainID(chainID).\n\t\t\tWithMemo(memo).\n\t\t\tWithKeybase(kb).\n\t\t\tWithTxConfig(clientCtx.TxConfig)\n\n\t\tif err := tx.Sign(clientCtx.CmdContext, txFactory, nodeDirName, txBuilder, true); err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\ttxBz, err := clientCtx.TxConfig.TxJSONEncoder()(txBuilder.GetTx())\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\tif err := writeFile(fmt.Sprintf(\"%v.json\", nodeDirName), gentxsDir, txBz); err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\tcustomAppTemplate, _ := servercfg.AppConfig(iristypes.NativeToken.MinUnit)\n\t\tsrvconfig.SetConfigTemplate(customAppTemplate)\n\n\t\tsrvconfig.WriteConfigFile(filepath.Join(nodeDir, \"config/app.toml\"), simappConfig)\n\t}\n\n\tif err := initGenFiles(clientCtx, mbm, chainID, genAccounts, genBalances, genFiles, numValidators); err != nil {\n\t\treturn err\n\t}\n\n\terr := collectGenFiles(\n\t\tclientCtx, nodeConfig, chainID, nodeIDs, valPubKeys, numValidators,\n\t\toutputDir, nodeDirPrefix, nodeDaemonHome, genBalIterator, clientCtx.TxConfig.SigningContext().ValidatorAddressCodec(),\n\t)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tcmd.PrintErrf(\"Successfully initialized %d node directories\\n\", numValidators)\n\treturn nil\n}\n\nfunc initGenFiles(\n\tclientCtx client.Context, mbm module.BasicManager, chainID string,\n\tgenAccounts []authtypes.GenesisAccount, genBalances []banktypes.Balance,\n\tgenFiles []string, numValidators int,\n) error {\n\tappGenState := mbm.DefaultGenesis(clientCtx.Codec)\n\n\t// add the profiler and trustees in the genesis state\n\tvar guardianGenState guardiantypes.GenesisState\n\tclientCtx.Codec.MustUnmarshalJSON(appGenState[guardiantypes.ModuleName], &guardianGenState)\n\n\tfor _, account := range genAccounts {\n\t\tguardian := guardiantypes.NewSuper(\n\t\t\t\"genesis\", guardiantypes.Genesis,\n\t\t\taccount.GetAddress(), account.GetAddress(),\n\t\t)\n\t\tguardianGenState.Supers = append(guardianGenState.Supers, guardian)\n\t}\n\tappGenState[guardiantypes.ModuleName] = clientCtx.Codec.MustMarshalJSON(&guardianGenState)\n\n\t// set the accounts in the genesis state\n\tvar authGenState authtypes.GenesisState\n\tclientCtx.Codec.MustUnmarshalJSON(appGenState[authtypes.ModuleName], &authGenState)\n\n\taccounts, err := authtypes.PackAccounts(genAccounts)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tauthGenState.Accounts = accounts\n\tappGenState[authtypes.ModuleName] = clientCtx.Codec.MustMarshalJSON(&authGenState)\n\n\t// set the balances in the genesis state\n\tvar bankGenState banktypes.GenesisState\n\tclientCtx.Codec.MustUnmarshalJSON(appGenState[banktypes.ModuleName], &bankGenState)\n\tbankGenState.Balances = genBalances\n\tappGenState[banktypes.ModuleName] = clientCtx.Codec.MustMarshalJSON(&bankGenState)\n\n\t// set the point token in the genesis state\n\tvar tokenGenState tokentypesv1.GenesisState\n\tclientCtx.Codec.MustUnmarshalJSON(appGenState[tokentypes.ModuleName], &tokenGenState)\n\ttokenGenState.Tokens = append(tokenGenState.Tokens, iristypes.EvmToken)\n\tappGenState[tokentypes.ModuleName] = clientCtx.Codec.MustMarshalJSON(&tokenGenState)\n\n\t//set system service in the genesis state\n\tvar serviceGenState servicetypes.GenesisState\n\tclientCtx.Codec.MustUnmarshalJSON(appGenState[servicetypes.ModuleName], &serviceGenState)\n\tserviceGenState.Definitions = append(\n\t\tserviceGenState.Definitions,\n\t\tservicetypes.GenOraclePriceSvcDefinition(),\n\t)\n\tserviceGenState.Bindings = append(\n\t\tserviceGenState.Bindings,\n\t\tservicetypes.GenOraclePriceSvcBinding(iristypes.NativeToken.MinUnit),\n\t)\n\tserviceGenState.Definitions = append(\n\t\tserviceGenState.Definitions,\n\t\tservicetypes.GetRandomSvcDefinition(),\n\t)\n\tappGenState[servicetypes.ModuleName] = clientCtx.Codec.MustMarshalJSON(&serviceGenState)\n\n\t// set the evm fee token denom in the genesis state\n\tvar evmGenState evmtypes.GenesisState\n\tclientCtx.Codec.MustUnmarshalJSON(appGenState[evmtypes.ModuleName], &evmGenState)\n\tevmGenState.Params.EvmDenom = iristypes.EvmToken.MinUnit\n\tappGenState[evmtypes.ModuleName] = clientCtx.Codec.MustMarshalJSON(&evmGenState)\n\n\tappGenStateJSON, err := json.MarshalIndent(appGenState, \"\", \"  \")\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tgenDoc := types.GenesisDoc{\n\t\tChainID:    chainID,\n\t\tAppState:   appGenStateJSON,\n\t\tValidators: nil,\n\t}\n\n\t// generate empty genesis files for each validator and save\n\tfor i := 0; i < numValidators; i++ {\n\t\tif err := genDoc.SaveAs(genFiles[i]); err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\treturn nil\n}\n\nfunc collectGenFiles(\n\tclientCtx client.Context,\n\tnodeConfig *tmconfig.Config,\n\tchainID string,\n\tnodeIDs []string,\n\tvalPubKeys []cryptotypes.PubKey,\n\tnumValidators int,\n\toutputDir, nodeDirPrefix, nodeDaemonHome string,\n\tgenBalIterator banktypes.GenesisBalancesIterator,\n\tvalAddrCodec runtime.ValidatorAddressCodec,\n) error {\n\n\tvar appState json.RawMessage\n\tgenTime := tmtime.Now()\n\n\tfor i := 0; i < numValidators; i++ {\n\t\tnodeDirName := fmt.Sprintf(\"%s%d\", nodeDirPrefix, i)\n\t\tnodeDir := filepath.Join(outputDir, nodeDirName, nodeDaemonHome)\n\t\tgentxsDir := filepath.Join(outputDir, \"gentxs\")\n\t\tnodeConfig.Moniker = nodeDirName\n\n\t\tnodeConfig.SetRoot(nodeDir)\n\n\t\tnodeID, valPubKey := nodeIDs[i], valPubKeys[i]\n\t\tinitCfg := genutiltypes.NewInitConfig(chainID, gentxsDir, nodeID, valPubKey)\n\n\t\tappGenesis, err := genutiltypes.AppGenesisFromFile(nodeConfig.GenesisFile())\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tnodeAppState, err := genutil.GenAppStateFromConfig(\n\t\t\tclientCtx.Codec,\n\t\t\tclientCtx.TxConfig,\n\t\t\tnodeConfig,\n\t\t\tinitCfg,\n\t\t\tappGenesis,\n\t\t\tgenBalIterator,\n\t\t\tgenutiltypes.DefaultMessageValidator,\n\t\t\tvalAddrCodec,\n\t\t)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\n\t\tif appState == nil {\n\t\t\t// set the canonical application state (they should not differ)\n\t\t\tappState = nodeAppState\n\t\t}\n\t\tappGenesis.Consensus.Params.Block.MaxBytes = 20000000\n\t\tappGenesis.ChainID = chainID\n\t\tappGenesis.GenesisTime = genTime\n\t\tappGenesis.AppState = appState\n\n\t\tgenFile := nodeConfig.GenesisFile()\n\t\t// overwrite each validator's genesis file to have a canonical genesis time\n\t\tif err := genutil.ExportGenesisFile(appGenesis, genFile); err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\n\treturn nil\n}\n\nfunc getIP(i int, startingIPAddr string) (ip string, err error) {\n\tif len(startingIPAddr) == 0 {\n\t\tip, err = server.ExternalIP()\n\t\tif err != nil {\n\t\t\treturn \"\", err\n\t\t}\n\t\treturn ip, nil\n\t}\n\treturn calculateIP(startingIPAddr, i)\n}\n\nfunc calculateIP(ip string, i int) (string, error) {\n\tipv4 := net.ParseIP(ip).To4()\n\tif ipv4 == nil {\n\t\treturn \"\", fmt.Errorf(\"%v: non ipv4 address\", ip)\n\t}\n\n\tfor j := 0; j < i; j++ {\n\t\tipv4[3]++\n\t}\n\n\treturn ipv4.String(), nil\n}\n\nfunc writeFile(name string, dir string, contents []byte) error {\n\twritePath := filepath.Join(dir)\n\tfile := filepath.Join(writePath, name)\n\n\tif err := tmos.EnsureDir(writePath, 0755); err != nil {\n\t\treturn err\n\t}\n\n\tif err := ioutil.WriteFile(file, contents, 0644); err != nil {\n\t\treturn err\n\t}\n\n\treturn nil\n}\n"
  },
  {
    "path": "cmd/iris/cmd/util.go",
    "content": "package cmd\n\nimport (\n\t\"context\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io\"\n\t\"os\"\n\t\"strings\"\n\n\t\"github.com/olebedev/config\"\n\t\"github.com/spf13/cobra\"\n\t\"github.com/spf13/pflag\"\n\t\"github.com/spf13/viper\"\n\n\t\"github.com/cometbft/cometbft/libs/cli\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\ttokenv1 \"mods.irisnet.org/modules/token/types/v1\"\n)\n\nconst (\n\tformatJSON     = \"json\"\n\tcmdScopeGlobal = \"global\"\n\tfiledTypeMap   = \"map\"\n\tfiledTypeArray = \"array\"\n)\n\nvar (\n\tconverter = NewConverter().\n\t\t\tregisterGlobalFlag(\"fees\").\n\t\t\tregisterGlobalFlag(\"amount\").\n\t\t\tregisterGlobalFlag(\"deposit\").\n\t\t\tregisterGlobalFlag(\"service-fee-cap\").\n\t\t\tregisterCmdWithArgs(\"bank\", \"send\", 2).\n\t\t\tregisterCmdWithArgs(\"staking\", \"delegate\", 1).\n\t\t\tregisterCmdWithArgs(\"staking\", \"redelegate\", 2).\n\t\t\tregisterCmdWithArgs(\"staking\", \"unbond\", 1).\n\t\t\tregisterCmdWithArgs(\"distribution\", \"fund-community-pool\", 0).\n\t\t\tregisterCmdWithArgs(\"gov\", \"deposit\", 1).\n\t\t\tregisterCmdWithArgs(\"ibc-transfer\", \"transfer\", 3).\n\t\t\tregisterCmdForResponse(\"bank\", \"balances\", \"balances\", filedTypeArray).\n\t\t\tregisterCmdForResponse(\"bank\", \"total\", \"supply\", filedTypeArray).\n\t\t\tregisterCmdForResponse(\"gov\", \"params\", \"deposit_params.min_deposit\", filedTypeArray).\n\t\t\tregisterCmdForResponse(\"distribution\", \"validator-outstanding-rewards\", \"rewards\", filedTypeArray).\n\t\t\tregisterCmdForResponses(\"distribution\", \"rewards\",\n\t\t\tfield{name: \"total\", typ: filedTypeArray},\n\t\t\tfield{name: \"rewards.*.reward\", typ: filedTypeArray},\n\t\t\tfield{name: \"rewards\", typ: filedTypeArray}).\n\t\tregisterCmdForResponse(\"token\", \"total-burn\", \"burned_coins\", filedTypeArray)\n\n\trescueStdout = os.Stdout\n)\n\ntype (\n\tfield struct {\n\t\tname  string\n\t\tindex int\n\t\ttyp   string\n\t}\n\n\tcommand struct {\n\t\tparentCmd string\n\t\tfields    map[string]field\n\t}\n)\n\nfunc (c command) append(name, typ string, index int) command {\n\tc.fields[name] = field{\n\t\tname:  name,\n\t\tindex: index,\n\t\ttyp:   typ,\n\t}\n\treturn c\n}\n\ntype coinConverter struct {\n\tcmds   map[string]command\n\ttokens map[string]tokenv1.TokenI\n\tr, w   *os.File\n}\n\n// NewConverter return a instance of coinConverter\nfunc NewConverter() *coinConverter {\n\treturn &coinConverter{\n\t\tcmds:   make(map[string]command),\n\t\ttokens: make(map[string]tokenv1.TokenI),\n\t}\n}\n\nfunc (it *coinConverter) key(parentCmd, cmd string) string {\n\treturn fmt.Sprintf(\"%s/%s\", parentCmd, cmd)\n}\n\nfunc (it *coinConverter) registerCmdWithArgs(parentCmd, cmd string, argsIdx int) *coinConverter {\n\tcommands, ok := it.cmds[cmd]\n\tif !ok {\n\t\tcommands = command{\n\t\t\tparentCmd: parentCmd,\n\t\t\tfields:    map[string]field{},\n\t\t}\n\t}\n\tcommands = commands.append(\"ARGS\", \"\", argsIdx)\n\tit.cmds[cmd] = commands\n\treturn it\n}\n\nfunc (it *coinConverter) registerGlobalFlag(flagNm string) *coinConverter {\n\tcommands, ok := it.cmds[cmdScopeGlobal]\n\tif !ok {\n\t\tcommands = command{\n\t\t\tparentCmd: cmdScopeGlobal,\n\t\t\tfields:    map[string]field{},\n\t\t}\n\t}\n\tcommands = commands.append(flagNm, \"\", -1)\n\tit.cmds[cmdScopeGlobal] = commands\n\treturn it\n}\n\nfunc (it *coinConverter) registerCmdWithFlag(parentCmd, cmd, flagNm string) *coinConverter {\n\tcommands, ok := it.cmds[cmd]\n\tif !ok {\n\t\tcommands = command{\n\t\t\tparentCmd: parentCmd,\n\t\t\tfields:    map[string]field{},\n\t\t}\n\t}\n\tcommands = commands.append(flagNm, \"\", -1)\n\tit.cmds[cmd] = commands\n\treturn it\n}\n\nfunc (it *coinConverter) registerCmdForResponse(\n\tparentCmd, cmd, jsonPath, typ string,\n) *coinConverter {\n\tcommands, ok := it.cmds[cmd]\n\tif !ok {\n\t\tcommands = command{\n\t\t\tparentCmd: parentCmd,\n\t\t\tfields:    map[string]field{},\n\t\t}\n\t}\n\n\tcommands = commands.append(jsonPath, typ, -1)\n\n\tit.cmds[cmd] = commands\n\treturn it\n}\n\nfunc (it *coinConverter) registerCmdForResponses(\n\tparentCmd, cmd string,\n\tfields ...field,\n) *coinConverter {\n\tcommands, ok := it.cmds[cmd]\n\tif !ok {\n\t\tcommands = command{\n\t\t\tparentCmd: parentCmd,\n\t\t\tfields:    map[string]field{},\n\t\t}\n\t}\n\n\tfor _, field := range fields {\n\t\tcommands = commands.append(field.name, field.typ, -1)\n\t}\n\n\tit.cmds[cmd] = commands\n\treturn it\n}\n\nfunc (it coinConverter) hasFromFlag(cmdNm, flagNm string) bool {\n\tif cmd, ok := it.cmds[cmdNm]; ok {\n\t\tif _, ok = cmd.fields[flagNm]; ok {\n\t\t\treturn ok\n\t\t}\n\t}\n\tcmd := it.cmds[cmdScopeGlobal]\n\t_, ok := cmd.fields[flagNm]\n\treturn ok\n}\n\nfunc (it coinConverter) getFromArgs(cmdNm string) (field, bool) {\n\tcmd, ok := it.cmds[cmdNm]\n\tif !ok {\n\t\treturn field{}, false\n\t}\n\tf := cmd.fields[\"ARGS\"]\n\tif f.index < 0 {\n\t\treturn f, false\n\t}\n\treturn cmd.fields[\"ARGS\"], true\n}\n\nfunc (it coinConverter) getFields(cmdNm string) map[string]field {\n\tcmd, ok := it.cmds[cmdNm]\n\tif !ok {\n\t\treturn map[string]field{}\n\t}\n\treturn cmd.fields\n}\n\nfunc (it *coinConverter) handlePreRun(cmd *cobra.Command, args []string) {\n\tif b, _ := cmd.Flags().GetBool(flags.FlagGenerateOnly); b {\n\t\treturn\n\t}\n\tcmdNm := cmd.Name()\n\t//handle flag\n\tcmd.Flags().Visit(func(flag *pflag.Flag) {\n\t\tif flag.Changed {\n\t\t\tviper.SetDefault(flag.Name, flag.Value)\n\t\t}\n\t\tit.parseFlags(cmd, flag, cmdNm)\n\t})\n\n\t//handle field\n\tit.parseArgs(cmd, args[:])\n\n\tif !it.isOutputYAML(cmd) {\n\t\treturn\n\t}\n\tit.r, it.w, _ = os.Pipe()\n\tos.Stdout = it.w\n}\n\nfunc (it *coinConverter) handlePostRun(cmd *cobra.Command) {\n\tif !it.isOutputYAML(cmd) {\n\t\treturn\n\t}\n\tif it.w != nil {\n\t\t_ = it.w.Close()\n\t}\n\tout, _ := io.ReadAll(it.r)\n\tos.Stdout = rescueStdout\n\tfmt.Println(it.parseYAML(cmd, out))\n}\n\nfunc (it coinConverter) parseFlags(cmd *cobra.Command, flag *pflag.Flag, cmdNm string) {\n\tif it.hasFromFlag(cmdNm, flag.Name) {\n\t\tsrcCoinStr := flag.Value.String()\n\t\tif res, err := it.convertCoins(cmd, srcCoinStr); err == nil {\n\t\t\t_ = flag.Value.Set(res)\n\t\t}\n\t}\n}\n\nfunc (it coinConverter) parseArgs(cmd *cobra.Command, args []string) {\n\tcommand, ok := it.cmds[cmd.Name()]\n\tif !ok {\n\t\treturn\n\t}\n\n\tif cmd.Parent().Name() != command.parentCmd {\n\t\treturn\n\t}\n\n\tif field, ok := it.getFromArgs(cmd.Name()); ok && len(args) > 0 {\n\t\tres, err := it.convertCoins(cmd, args[field.index])\n\t\tif err != nil {\n\t\t\treturn\n\t\t}\n\t\targs[field.index] = res\n\t}\n}\n\nfunc (it coinConverter) parseYAML(cmd *cobra.Command, in []byte) string {\n\tcfg, err := config.ParseYamlBytes(in)\n\tif err != nil {\n\t\treturn string(in)\n\t}\n\n\tfields := it.getFields(cmd.Name())\n\tfor path, field := range fields {\n\t\tfor _, p := range it.resolvePath(cfg, path) {\n\t\t\tswitch field.typ {\n\t\t\tcase filedTypeArray:\n\t\t\t\tit.handleList(cmd, cfg, p)\n\t\t\tcase filedTypeMap:\n\t\t\t\tit.handleMap(cmd, cfg, p)\n\t\t\t}\n\t\t}\n\t}\n\ts, err := config.RenderYaml(cfg.Root)\n\tif err != nil {\n\t\treturn string(in)\n\t}\n\treturn s\n}\n\nfunc (it coinConverter) resolvePath(cfg *config.Config, path string) (paths []string) {\n\tsubPaths := strings.SplitN(path, \"*\", 2)\n\tif len(subPaths) == 1 {\n\t\treturn []string{path}\n\t}\n\n\tif len(subPaths) != 2 {\n\t\treturn paths\n\t}\n\n\tlist, err := cfg.List(subPaths[0][:len(subPaths[0])-1])\n\tif err != nil {\n\t\treturn paths\n\t}\n\n\tfor i := 0; i < len(list); i++ {\n\t\tp := fmt.Sprintf(\"%s%d%s\", subPaths[0], i, subPaths[1])\n\t\tpaths = append(paths, it.resolvePath(cfg, p)...)\n\t}\n\treturn paths\n}\n\nfunc (it *coinConverter) queryToken(\n\tcmd *cobra.Command,\n\tdenom string,\n) (ft tokenv1.TokenI, err error) {\n\tif ft, ok := it.tokens[denom]; ok {\n\t\treturn ft, nil\n\t}\n\n\tclientCtx, err := client.GetClientQueryContext(cmd)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tif err := tokentypes.ValidateSymbol(denom); err != nil {\n\t\treturn nil, err\n\t}\n\n\tqueryClient := tokenv1.NewQueryClient(clientCtx)\n\n\tres, err := queryClient.Token(context.Background(), &tokenv1.QueryTokenRequest{\n\t\tDenom: denom,\n\t})\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tvar evi tokenv1.TokenI\n\terr = clientCtx.InterfaceRegistry.UnpackAny(res.Token, &evi)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tit.tokens[denom] = evi\n\treturn evi, nil\n}\n\nfunc (it *coinConverter) isOutputYAML(cmd *cobra.Command) bool {\n\toutput1, err := cmd.Flags().GetString(cli.OutputFlag)\n\toutput2 := viper.GetString(cli.OutputFlag)\n\tif output2 == formatJSON || (err == nil && output1 == formatJSON) {\n\t\treturn false\n\t}\n\tcmdPath := cmd.CommandPath()\n\tif !strings.Contains(cmdPath, queryCommand().CommandPath()) {\n\t\treturn false\n\t}\n\treturn true\n}\n\nfunc (it *coinConverter) handleList(cmd *cobra.Command, cfg *config.Config, path string) {\n\tlist, err := cfg.List(path)\n\tif err != nil {\n\t\treturn\n\t}\n\tfor i := range list {\n\t\tit.handleMap(cmd, cfg, fmt.Sprintf(\"%s.%d\", path, i))\n\t}\n}\n\nfunc (it *coinConverter) handleMap(cmd *cobra.Command, cfg *config.Config, path string) {\n\tcMap, err := cfg.Map(path)\n\tif err != nil {\n\t\treturn\n\t}\n\n\tbz, err := json.Marshal(cMap)\n\tif err != nil {\n\t\treturn\n\t}\n\n\tvar srcCoin sdk.DecCoin\n\tif err := json.Unmarshal(bz, &srcCoin); err != nil || !srcCoin.IsValid() {\n\t\treturn\n\t}\n\n\ttruncCoin, _ := srcCoin.TruncateDecimal()\n\tdstCoin, err := it.convertToMainCoin(cmd, truncCoin)\n\tif err != nil {\n\t\treturn\n\t}\n\t_ = cfg.Set(path, dstCoin)\n}\n\nfunc (it *coinConverter) convertCoins(\n\tcmd *cobra.Command,\n\tcoinsStr string,\n) (dstCoinsStr string, err error) {\n\tcs, err := it.parseCoins(coinsStr)\n\tif err != nil {\n\t\treturn coinsStr, err\n\t}\n\tdstCoins := sdk.Coins{}\n\tfor _, coin := range cs {\n\t\tif c, err := it.convertToMinCoin(cmd, coin); err == nil {\n\t\t\tdstCoins = append(dstCoins, c)\n\t\t\tcontinue\n\t\t}\n\t\tc, _ := coin.TruncateDecimal()\n\t\tdstCoins = append(dstCoins, c)\n\t}\n\treturn dstCoins.String(), nil\n}\n\nfunc (it *coinConverter) convertToMinCoin(\n\tcmd *cobra.Command,\n\tsrcCoin sdk.DecCoin,\n) (coin sdk.Coin, err error) {\n\tft, err := it.queryToken(cmd, srcCoin.Denom)\n\tif err != nil {\n\t\treturn coin, err\n\t}\n\treturn ft.ToMinCoin(srcCoin)\n}\n\nfunc (it *coinConverter) convertToMainCoin(\n\tcmd *cobra.Command,\n\tsrcCoin sdk.Coin,\n) (coin sdk.DecCoin, err error) {\n\tft, err := it.queryToken(cmd, srcCoin.Denom)\n\tif err != nil {\n\t\treturn coin, err\n\t}\n\treturn ft.ToMainCoin(srcCoin)\n}\n\nfunc (it *coinConverter) parseCoins(srcCoinsStr string) (sdk.DecCoins, error) {\n\tif cs, err := sdk.ParseDecCoins(srcCoinsStr); err == nil {\n\t\treturn cs, nil\n\t}\n\tif cs, err := sdk.ParseCoinsNormalized(srcCoinsStr); err == nil {\n\t\treturn sdk.NewDecCoinsFromCoins(cs...), nil\n\t}\n\treturn sdk.DecCoins{}, fmt.Errorf(\"parsed decimal coins are invalid: %s\", srcCoinsStr)\n}\n"
  },
  {
    "path": "cmd/iris/main.go",
    "content": "package main\n\nimport (\n\t\"os\"\n\n\tsvrcmd \"github.com/cosmos/cosmos-sdk/server/cmd\"\n\n\t_ \"github.com/irisnet/irishub/v4/client/lite/statik\"\n\t\"github.com/irisnet/irishub/v4/cmd/iris/cmd\"\n\t\"github.com/irisnet/irishub/v4/types\"\n)\n\nfunc main() {\n\trootCmd := cmd.NewRootCmd()\n\tif err := svrcmd.Execute(rootCmd, \"\", types.DefaultNodeHome); err != nil {\n\t\tos.Exit(1)\n\t}\n}\n"
  },
  {
    "path": "contrib/devtools/Makefile",
    "content": "###\n# Find OS and Go environment\n# GO contains the Go binary\n# FS contains the OS file separator\n###\nifeq ($(OS),Windows_NT)\n  GO := $(shell where go.exe 2> NUL)\n  FS := \"\\\\\"\nelse\n  GO := $(shell command -v go 2> /dev/null)\n  FS := \"/\"\nendif\n\nifeq ($(GO),)\n  $(error could not find go. Is it in PATH? $(GO))\nendif\n\n###############################################################################\n###                                Functions                                ###\n###############################################################################\n\ngo_get = $(if $(findstring Windows_NT,$(OS)),\\\nIF NOT EXIST $(GITHUBDIR)$(FS)$(1)$(FS) ( mkdir $(GITHUBDIR)$(FS)$(1) ) else (cd .) &\\\nIF NOT EXIST $(GITHUBDIR)$(FS)$(1)$(FS)$(2)$(FS) ( cd $(GITHUBDIR)$(FS)$(1) && git clone https://github.com/$(1)/$(2) ) else (cd .) &\\\n,\\\nmkdir -p $(GITHUBDIR)$(FS)$(1) &&\\\n(test ! -d $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && cd $(GITHUBDIR)$(FS)$(1) && git clone https://github.com/$(1)/$(2)) || true &&\\\n)\\\ncd $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && git fetch origin && git checkout -q $(3)\n\nmkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))\nmkfile_dir := $(shell cd $(shell dirname $(mkfile_path)); pwd)\n\n\n###############################################################################\n###                                 Tools                                   ###\n###############################################################################\n\nPREFIX ?= /usr/local\nBIN ?= $(PREFIX)/bin\nUNAME_S ?= $(shell uname -s)\nUNAME_M ?= $(shell uname -m)\n\nGOPATH ?= $(shell $(GO) env GOPATH)\nGITHUBDIR := $(GOPATH)$(FS)src$(FS)github.com\n\nBUF_VERSION ?= 0.11.0\n\nTOOLS_DESTDIR  ?= $(GOPATH)/bin\nSTATIK         = $(TOOLS_DESTDIR)/statik\nRUNSIM         = $(TOOLS_DESTDIR)/runsim\n\ntools: tools-stamp\ntools-stamp: statik runsim\n\t# Create dummy file to satisfy dependency and avoid\n\t# rebuilding when this Makefile target is hit twice\n\t# in a row.\n\ttouch $@\n\n# Install the runsim binary\nstatik: $(STATIK)\n$(STATIK):\n\t@echo \"Installing statik...\"\n\t@go install github.com/rakyll/statik@v0.1.6\n\n# Install the runsim binary\nrunsim: $(RUNSIM)\n$(RUNSIM):\n\t@echo \"Installing runsim...\"\n\t@go install github.com/cosmos/tools/cmd/runsim@v1.0.0\n\ntools-clean:\n\trm -f $(STATIK) $(GOLANGCI_LINT) $(RUNSIM)\n\trm -f tools-stamp\n\n.PHONY: tools-clean statik runsim"
  },
  {
    "path": "contrib/devtools/install-golangci-lint.sh",
    "content": "#!/bin/bash\n\nset -euo pipefail\n\ninstaller=\"$(mktemp)\"\ntrap \"rm -f ${installer}\" EXIT\n\nGOBIN=\"${1}\"\nCURL=\"$(which curl)\"\nHASHSUM=\"${2}\"\n\nf_sha256() {\n    local l_file\n    l_file=$1\n    python -sBc \"import hashlib;print(hashlib.sha256(open('$l_file','rb').read()).hexdigest())\"\n}\n\nget_latest_release() {\n    \"${CURL}\" --silent \"https://api.github.com/repos/$1/releases/latest\" |\n        grep '\"tag_name\":' | sed -E 's/.*\"([^\"]+)\".*/\\1/'\n}\n\nVERSION=\"$(get_latest_release golangci/golangci-lint)\"\n\necho \"Downloading golangci-lint ${VERSION} installer ...\" >&2\n\"${CURL}\" -sfL \"https://raw.githubusercontent.com/golangci/golangci-lint/${VERSION}/install.sh\" >\"${installer}\"\n\necho \"Checking hashsum ...\" >&2\n# [ \"${HASHSUM}\" = \"$(f_sha256 ${installer})\" ]\nchmod +x \"${installer}\"\n\necho \"Launching installer ...\" >&2\nexec \"${installer}\" -d -b \"${GOBIN}\" \"${VERSION}\"\n"
  },
  {
    "path": "crypto/keyring/options.go",
    "content": "package keyring\n\nimport (\n\t\"github.com/cosmos/cosmos-sdk/crypto/keyring\"\n\n\t\"github.com/evmos/ethermint/crypto/hd\"\n)\n\nvar (\n\t// SupportedAlgorithms defines the list of signing algorithms used on Evmos:\n\t//  - eth_secp256k1 (Ethereum)\n\tSupportedAlgorithms = keyring.SigningAlgoList{hd.EthSecp256k1}\n\t// SupportedAlgorithmsLedger defines the list of signing algorithms used on Evmos for the Ledger device:\n\t//  - eth_secp256k1 (Ethereum)\n\tSupportedAlgorithmsLedger = keyring.SigningAlgoList{hd.EthSecp256k1}\n)\n\n// Option defines a function keys options for the ethereum Secp256k1 curve.\n// It supports eth_secp256k1 keys for accounts.\nfunc Option() keyring.Option {\n\treturn func(options *keyring.Options) {\n\t\toptions.SupportedAlgos = SupportedAlgorithms\n\t\toptions.SupportedAlgosLedger = SupportedAlgorithmsLedger\n\t}\n}\n"
  },
  {
    "path": "docker-compose.yml",
    "content": "version: '3'\n\nservices:\n  irisnode0:\n    container_name: irisnode0\n    image: irisnet/irishub:latest\n    ports:\n    - \"26656-26657:26656-26657\"\n    volumes:\n    - ./build:/home\n    command: /bin/sh -c 'cd /home/nodecluster/node0 && iris start --home iris'\n    networks:\n      localnet:\n        ipv4_address: 192.168.10.2\n\n  irisnode1:\n    container_name: irisnode1\n    image: irisnet/irishub:latest\n    ports:\n    - \"26659-26660:26656-26657\"\n    volumes:\n    - ./build:/home\n    command: /bin/sh -c 'cd /home/nodecluster/node1 && iris start --home iris'\n    networks:\n      localnet:\n        ipv4_address: 192.168.10.3\n\n  irisnode2:\n    container_name: irisnode2\n    image: irisnet/irishub:latest\n    ports:\n    - \"26661-26662:26656-26657\"\n    volumes:\n    - ./build:/home\n    command: /bin/sh -c 'cd /home/nodecluster/node2 && iris start --home iris'\n    networks:\n      localnet:\n        ipv4_address: 192.168.10.4\n\n  irisnode3:\n    container_name: irisnode3\n    image: irisnet/irishub:latest\n    ports:\n    - \"26663-26664:26656-26657\"\n    volumes:\n    - ./build:/home\n    command: /bin/sh -c 'cd /home/nodecluster/node3 && iris start --home iris'\n    networks:\n      localnet:\n        ipv4_address: 192.168.10.5\n\nnetworks:\n  localnet:\n    driver: bridge\n    ipam:\n      driver: default\n      config:\n      -\n        subnet: 192.168.10.0/16\n"
  },
  {
    "path": "docs/.vuepress/client.js",
    "content": "import {defineClientConfig} from \"@vuepress/client\";\r\rexport default defineClientConfig({\r\tenhance({app, router, siteData}) {\r\t\r\t}\r})"
  },
  {
    "path": "docs/.vuepress/compoments/PageHistory.vue",
    "content": "<template>\n  <div>\n    {{url}}\n  </div>\n</template>\n\n<script>\n  export default {\n    computed: {\n      url() {\n        const c = this.$themeConfig\n        if (c && c.repo && c.docsDir && c.docsBranch) {\n          return `https://github.com/${c.repo}/tree/${c.docsBranch}/${c.docsDir}/${this.$page.relativePath}`\n        }\n      },\n    },\n  }\n</script>\n"
  },
  {
    "path": "docs/.vuepress/config.js",
    "content": "import glob from \"glob\";\nimport markdownIt from \"markdown-it\";\nimport meta from \"markdown-it-meta\";\nimport fs from \"fs\";\nimport _ from \"lodash\";\nimport { searchPlugin } from \"@vuepress/plugin-search\";\nconst sidebar = (directory, array) => {\n  return array.map((i) => {\n    const children = _.sortBy(\n      glob\n        .sync(`./${directory}/${i[1]}/*.md`)\n        .map((path) => {\n          const md = new markdownIt();\n          const file = fs.readFileSync(path, \"utf8\");\n          md.use(meta);\n          md.render(file);\n          const order = md.meta.order;\n          return { path, order };\n        })\n        .filter((f) => f.order !== false),\n      [\"order\", \"path\"]\n    )\n      .map((f) => f.path.slice(1))\n      .filter((f) => !f.match(\"README\"));\n    return {\n      text: i[0],\n      children,\n      collapsible: true,\n    };\n  });\n};\nimport { defineUserConfig } from \"vuepress\";\nimport { defaultTheme } from \"vuepress\";\nexport default defineUserConfig({\n  base: \"/docs/\",\n  plugins: [\n    searchPlugin({\n      locales: {\n        \"/\": {\n          placeholder: \"Search\",\n        },\n      },\n    }),\n  ],\n  locales: {\n    \"/\": {\n      lang: \"en-US\",\n      title: \"IRISnet Documents\",\n      description: \"IRISnet Documents\",\n    },\n  },\n  theme: defaultTheme({\n    repo: \"irisnet/irishub\",\n    docsDir: \"docs\",\n    editLinks: true,\n    contributors: false,\n    docsBranch: \"main\",\n    editLinkText: \"Help us improve this page!\",\n    locales: {\n      \"/\": {\n        editLinkText: \"Help us improve this page!\",\n        navbar: [\n          {\n            text: \"Back to IRISnet\",\n            link: \"https://www.irisnet.org\",\n          },\n        ],\n        sidebar: sidebar(\"\", [\n          [\"Getting Started\", \"get-started\"],\n          [\"Concepts\", \"concepts\"],\n          [\"Features\", \"features\"],\n          [\"Daemon\", \"daemon\"],\n          [\"CLI Client\", \"cli-client\"],\n          [\"Endpoints\", \"endpoints\"],\n          [\"ChainIDE for IRISnet\", \"chainide-for-irisnet\"],\n          [\"Tools\", \"tools\"],\n          [\"Migration\", \"migration\"],\n          [\"Resources\", \"resources\"],\n        ]),\n      },\n    },\n  }),\n});\n"
  },
  {
    "path": "docs/.vuepress/enhanceApp.js",
    "content": "import axios from 'axios'\nimport Vue from 'vue'\n\nVue.use({\n    install (Vue) {\n    Vue.prototype.$axios = axios.create()\n  }\n})"
  },
  {
    "path": "docs/.vuepress/styles/palette.styl",
    "content": ".nav-links .repo-link {\n    display: none;\n}\n.sidebar-heading {\n  color: #999;\n}\n.theme-default-content:not(.custom) > h1, .theme-default-content:not(.custom) > h2 {\n    margin-top: -3rem;\n    padding-top: 4.6rem;\n    margin-bottom: 2rem;\n}\n.theme-default-content:not(.custom) > h3, .theme-default-content:not(.custom) > h4, .theme-default-content:not(.custom) > h5, .theme-default-content:not(.custom) > h6 {\n    margin-top: -3rem;\n    padding-top: 3.6rem;\n    margin-bottom: 0;\n}"
  },
  {
    "path": "docs/Dockerfile",
    "content": "FROM node:alpine AS builder\nWORKDIR /app\nCOPY docs/package.json docs/yarn.lock ./\nRUN yarn install\nCOPY docs/ .\nRUN yarn run build\n\nFROM nginx:alpine\nRUN rm -rf /usr/share/nginx/html/*\nCOPY --from=builder /app/.vuepress/dist /usr/share/nginx/html/docs\nEXPOSE 80\nCMD [\"nginx\", \"-g\", \"daemon off;\"]\n"
  },
  {
    "path": "docs/README.md",
    "content": "# Welcome to the IRISnet Documents\n\n![irisnet](./pics/iris.jpg)\n\n## About IRISnet\n\nIRISnet (a.k.a IRIS Hub) is designed to be the foundation for the next generation distributed applications. Built with Cosmos-SDK, IRIS Hub enables cross-chain interoperability through a unified service model, while providing a variety of modules to support distributed business applications.\n"
  },
  {
    "path": "docs/chainide-for-irisnet/configuration.md",
    "content": "---\norder: 1\n---\n\n# ChainIDE for IRISnet Environment Configuration\n\n> This section provides a detailed explanation of the environment configuration for IRISnet IDE, which is essential for developing dApps on the IRISnet blockchain.\n\n## Create a new IRISnet Project\n\nVisit [ChainIDE](https://chainide.com/) and click the \"Try Now\" button on the front page as shown in the figure below.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2F8tniZ7XWzHhRdOe51grH%2Fimage.png?alt=media&token=c27915ee-b863-4161-b4f3-e44d9cbaab97)\n\nHere, you will choose your login method, which includes two options: GitHub and Guest. For this tutorial, select GitHub login, as later on, the use of the Sandbox requires users to log in with GitHub.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FkRYg4sPFcnWR2Lz3ujeN%2Fimage.png?alt=media&token=bd113ebf-16c8-4241-9db1-120b43656744)\n\nClick the \"New Project\" button.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FFaeBrBu7u5LUAxQynl1r%2Fimage.png?alt=media&token=7a988e98-415c-442e-a137-080f2dbd0372)\n\nA pop-up window will appear. On the left side of the pop-up, select \"IRISnet\". Then, select a temple to create a new project.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FG292E6wPohEJYnqgOayS%2Fimage.png?alt=media&token=94c427bc-be1a-4e5c-8661-e7d430b3c9b2)\n\n## Configure Wallet\n\nIRISnet IDE provides support for two smart contract environments: EVM and Native. The EVM environment supports Metamask wallet, while the Native environment supports Kelpr wallet.\n\n### Supported EVM Wallet\n\n**Metamask**\n\n> https://metamask.io/\n\n### Supported Native Wallet\n\n**Kelpr**\n\n> https://www.keplr.app/\n\n## Acquiring test tokens\n\nTest tokens can be acquired from a tesnet faucet. Use test tokens to cover the cost of deployment, transaction fees, gas fees, etc., on the testnet.\n\nTutorials on Acquiring Test Tokens:\n\nNative: https://irisnet.org/docs/get-started/testnet.html#run-a-full-node\n\nEVM: https://irisnet.org/docs/get-started/evm-contract.html#prepare-account-for-evm\n"
  },
  {
    "path": "docs/chainide-for-irisnet/cosmos-usage.md",
    "content": "---\norder: 3\n---\n\n# How to Use IRISnet Native IDE\n\n> Issue, Edit, and Query FTs and NFTs on IRISnet\n\n## Connect to IRISnet Native\n\nOnce inside the project, click \"Connect Wallet\" in the upper right corner, select \"Injected Web3 Provider,\" and then select \"Kelpr Wallet\" to connect to the IRISnet Native blockchain.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FvLE97itYjQHgZFz3Jqtt%2Fimage.png?alt=media&token=2f18f037-9cf7-435f-bcaf-165b0b6c9256)\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2Fj72iy3bQhI6e1oN5BNrs%2Fimage.png?alt=media&token=245c2b8e-5960-4aba-a86e-aaf9fdaf3d4e)\n\nClick on the address in the bottom right corner to obtain your Kelpr wallet address.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FiKMYpBQ9gN3yhUBQmtMM%2Fimage.png?alt=media&token=83ba1114-7fd7-478e-818e-33718a37eb42)\n\n## Run the FT & NFT Toolbox\n\nOn the right side, select either \"IRIS FT Toolkit\" or \"IRIS NFT Toolkit,\" to issue, edit, and query IRISnet FTs and NFTs on the IRISnet Native blockchain.\n"
  },
  {
    "path": "docs/chainide-for-irisnet/usage.md",
    "content": "---\norder: 2\n---\n\n# How to Use IRISnet EVM IDE\n\n> The process of writing, compiling, deploying, interacting, and querying with IRISnet EVM smart contracts\n\n## Write a contract\n\nUpon entering the project, the README.md file included in the folder will be automatically previewed.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FQgBGZS91QA5GP2AXMTIl%2Fimage.png?alt=media&token=2f54c253-7113-457e-918c-6d8922c5be95)\n\nIn the Explorer panel, you can create new files (or folders), refresh the directory, and download files. You can also directly click on the files that come with the template.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FE2cSwSZdbKLZK5YN7XGK%2Fimage.png?alt=media&token=47ea9493-d238-474e-ab62-17a9d1f83dd3)\n\nClick on a contract file to edit the code.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2Fc3NCif0cmQb6idg1jY4z%2Fimage.png?alt=media&token=a3bfae68-88a5-480d-b296-de50afd1b019)\n\n## Compile a contract\n\nOnce your contract code is written, click on the \"Compiler\" button in the right-side menu to open the compilation module. Choose the compiler version and decide whether to enable optimization, then click \"Compile \\*\\*\\*.sol\" to initiate the compilation.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FIOilLElJDiaICoy6AUpF%2Fimage.png?alt=media&token=26ef30aa-6746-417e-a634-4970b64bb53d)\n\nAfter successful compilation, the ABI and BYTE CODE will be displayed below, and there will be a confirmation message in the console stating \"Compile contract success.\"\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FczE48oDmrmEi2hNWpGds%2Fimage.png?alt=media&token=3f51d9b4-063e-48dd-a60e-b13b54bc0781)\n\n## Connect to IRISnet EVM\n\nBefore deploying a contract, you need to click on \"Connect Wallet\" in the upper right corner and select connect to JavaScript VM (for testing, implemented in JavaScript) or Metamask (for deployment on the IRISnet blockchain).\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FLRhasXHh6XnfX6AsxOko%2Fimage.png?alt=media&token=81c389b6-c8b0-43c2-a26e-7f5ee01d60c9)\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2F57zu9JFBQunvzHoVKsvC%2Fimage.png?alt=media&token=5d255844-fec0-4287-a493-44d90c8d88f3)\n\n## Deploy a contract\n\nClick the \"Deploy & Interaction\" button on the right-hand side, which will bring up the deployment and interaction pages. Select the compiled contract and click \"Deploy\" to initiate the deployment (then confirm in Metamask). After successful contract deployment, the console will display the contract deployment result and relevant information.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2F6rkcZA6xBoCtRpYVM2cp%2Fimage.png?alt=media&token=a38b25f5-c15d-4621-97d6-0fdce7c138e0)\n\nIn addition, you can click \"Import Deployed Contract\" to import a contract that has already been deployed for contract interactions.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FLrJQS2V3i4xlCzSpqlXJ%2Fimage.png?alt=media&token=d1465e33-034d-414b-a7e9-41b0c069508e)\n\n## Contract interaction\n\nAfter a successful contract deployment, you can interact with the contract. Click on the deployed contract, choose the corresponding interface, and click \"Submit\" or \"Get\" to perform interactions.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FqUmdHgsKhKzqCsCqotgp%2Fimage.png?alt=media&token=38ca1cc9-9c42-497b-b1e4-5e1173eace35)\n\n## Transaction Query\n\nClick on the transaction hash in the Output section to view the specific details of each transaction.\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2FbyVtEZJW5HOzHxtw6mx2%2Fimage.png?alt=media&token=3b456fc1-40c8-4c91-889e-09ba4dd8e950)\n\n## IRISnet EVM Sandbox\n\nIf you prefer using the command line for development, you can open the IRISnet EVM Sandbox, which comes pre-loaded with [Hardhat](https://hardhat.org/), [Truffle](https://trufflesuite.com/), [Brownie](https://eth-brownie.readthedocs.io/en/stable/) [Ganache](https://trufflesuite.com/ganache/), [Git](https://git-scm.com/) and [Node.js V16](https://nodejs.org/en).\n\n![img](https://3869740696-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MYy-lqJKjq1m0yBAX4r%2Fuploads%2F6WvZX7unWkGkXKV7OfEE%2Fimage.png?alt=media&token=1845bc06-3128-44e4-9ec3-9c3e7e18c44d)\n\nIf you've started a process on a port in the Sandbox and wish to access that port, please refer to [ChainIDE - Port Forwarding](https://chainide.gitbook.io/chainide-english-1/port-forwarding).\n"
  },
  {
    "path": "docs/cli-client/auth.md",
    "content": "# Auth\n\nAuth module is responsible for specifying the base transaction and account types for an application.\n\n## Available Commands\n\n| Name                                | Description                       |\n| ----------------------------------- | --------------------------------- |\n| [account](#iris-query-auth-account) | Query for account by address      |\n| [params](#iris-query-auth-params)   | Query the current auth parameters |\n\n### iris query auth account\n\nQuery for account by address.\n\n```bash\niris query auth account [flags]\n```\n\n### iris query auth params\n\nQuery the current auth parameters.\n\n```bash\niris query auth params [flags]\n```\n"
  },
  {
    "path": "docs/cli-client/bank.md",
    "content": "# Bank\n\nBank module allows you to manage assets in your local accounts.\n\n## Available Commands\n\n| Name                                  | Description                                            |\n| ------------------------------------- | ------------------------------------------------------ |\n| [balances](#iris-query-bank-balances) | Query for account balances by address                  |\n| [total](#iris-query-bank-total)       | Query the total supply of coins of the chain           |\n| [send](#iris-tx-bank-send)            | Create and/or sign and broadcast a MsgSend transaction |\n\n## iris query bank balances\n\nQuery the total balance of an account or of a specific denomination.\n\n```bash\niris query bank balances [address] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type   | Required | Default | Description                                                |\n| --------------- | ------ | -------- | ------- | ---------------------------------------------------------- |\n| -h, --help      |        |          |         | Help for coin-type                                         |\n| --denom         | string |          |         | The specific balance denomination to query for             |\n| --count-total   |        |          |         | Count total number of records in all balances to query for |\n\n### iris query bank total\n\nQuery total supply of coins that are held by accounts in the chain.\n\n```bash\niris query bank total [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type   | Required | Default | Description                                    |\n| --------------- | ------ | -------- | ------- | ---------------------------------------------- |\n| -h, --help      |        |          |         | Help for coin-type                             |\n| --denom         | string |          |         | The specific balance denomination to query for |\n\n## iris tx bank send\n\nSending tokens to another address, this command includes `generate`, `sign` and `broadcast` steps.\n\n```bash\niris tx bank send [from_key_or_address] [to_address] [amount] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type | Required | Default | Description       |\n| --------------- | ---- | -------- | ------- | ----------------- |\n| -h, --help      |      |          |         | Help for balances |\n"
  },
  {
    "path": "docs/cli-client/debug.md",
    "content": "# Debug\n\nA tool for simple debugging.\n\n## Available Commands\n\n| Name                               | Description                                          |\n| ---------------------------------- | ---------------------------------------------------- |\n| [addr](#iris-debug-addr)           | Convert an address between hex and bech32            |\n| [pubkey](#iris-debug-pubkey)       | Decode a ED25519 pubkey from hex, base64, or bech32  |\n| [raw-bytes](#iris-debug-raw-bytes) | Convert raw bytes output (eg. [10 21 13 127]) to hex |\n\n### iris debug addr\n\n```bash\niris debug addr iaa1rulhmls7g9cjh239vnkjnw870t5urrutsfwvmc\n```\n\nreturns\n\n```bash\nAddress: [31 63 125 254 30 65 113 43 170 37 100 237 41 184 254 122 233 193 143 139]\nAddress (hex): 1F3F7DFE1E41712BAA2564ED29B8FE7AE9C18F8B\nBech32 Acc: iaa1rulhmls7g9cjh239vnkjnw870t5urrutsfwvmc\nBech32 Val: iva1rulhmls7g9cjh239vnkjnw870t5urrut9cyrxl\n```\n\n### iris debug pubkey\n\nThe following give the same result:\n\n```bash\niris debug pubkey TZTQnfqOsi89SeoXVnIw+tnFJnr4X8qVC0U8AsEmFk4=\niris debug pubkey 4D94D09DFA8EB22F3D49EA17567230FAD9C5267AF85FCA950B453C02C126164E\n  ```\n\n### iris debug raw-bytes\n\nConvert raw bytes output (eg. [10 21 13 127]) to hex\n\n```bash\niris debug raw-bytes <raw-bytes>\niris debug raw-bytes \"[10 21 13 127]\"\n```\n"
  },
  {
    "path": "docs/cli-client/distribution.md",
    "content": "# Distribution\n\nThe distribution module allows you to manage your [Staking Rewards](../concepts/general-concepts.md#staking-rewards).\n\n## Available Subcommands\n\n| Name                                                                                    | Description                                                                                                                                           |\n| --------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [commission](#iris-query-distribution-commission)                                       | Query distribution validator commission                                                                                                               |\n| [community-pool](#iris-query-distribution-community-pool)                               | Query the amount of coins in the community pool                                                                                                       |\n| [params](#iris-query-distribution-params)                                               | Query distribution params                                                                                                                             |\n| [rewards](#iris-query-distribution-rewards)                                             | Query all distribution delegator rewards or rewards from a particular validator                                                                       |\n| [slashes](#iris-query-distribution-slashes)                                             | Query distribution validator slashes.                                                                                                                 |\n| [validator-outstanding-rewards](#iris-query-distribution-validator-outstanding-rewards) | Query distribution outstanding (un-withdrawn) rewards for a validator and all their delegations                                                       |\n| [fund-community-pool](#iris-tx-distribution-fund-community-pool)                        | Funds the community pool with the specified amount                                                                                                    |\n| [set-withdraw-addr](#iris-tx-distribution-set-withdraw-addr)                            | Set the withdraw address for rewards associated with a delegator address                                                                              |\n| [withdraw-all-rewards](#iris-tx-distribution-withdraw-all-rewards)                      | Withdraw all rewards for a single delegator                                                                                                           |\n| [withdraw-rewards](#iris-tx-distribution-withdraw-rewards)                              | Withdraw rewards from a given delegation address,and optionally withdraw validator commission if the delegation address given is a validator operator |\n\n## iris query distribution commission\n\nQuery validator commission rewards from delegators to that validator.\n\n```bash\niris query distribution commission [validator] [flags]\n```\n\n## iris query distribution community-pool\n\nQuery all coins in the community pool which is under Governance control.\n\n```bash\niris query distribution community-pool [flags]\n```\n\n## iris query distribution params\n\nQuery distribution params.\n\n```bash\n iris query distribution params [flags]\n```\n\n## iris query distribution rewards\n\nQuery all rewards earned by a delegator, optionally restrict to rewards from a single validator.\n\n```bash\niris query distribution rewards [delegator-addr] [validator-addr] [flags]\n```\n\n## iris query distribution slashes\n\nQuery all slashes of a validator for a given block range.\n\n```bash\niris query distribution slashes [validator] [start-height] [end-height] [flags]\n```\n\n## iris query distribution validator-outstanding-rewards\n\nQuery distribution outstanding (un-withdrawn) rewards for a validator and all their delegations.\n\n```bash\niris query distribution validator-outstanding-rewards [validator] [flags]\n```\n\n## iris tx distribution fund-community-pool\n\nFunds the community pool with the specified amount.\n\n```bash\niris tx distribution fund-community-pool [amount] [flags]\n```\n\n## iris tx distribution set-withdraw-addr\n\nSet the withdraw address for rewards associated with a delegator address.\n\n```bash\niris tx distribution set-withdraw-addr [withdraw-addr] [flags]\n```\n\n## iris tx distribution withdraw-all-rewards\n\nWithdraw all rewards for a single delegator.\n\n```bash\niris tx distribution withdraw-all-rewards [flags]\n```\n\n## iris tx distribution withdraw-rewards\n\nWithdraw rewards from a given delegation address, and optionally withdraw validator commission if the delegation address given is a validator operator.\n\n```bash\niris tx distribution withdraw-rewards [validator-addr] [flags]\n```\n"
  },
  {
    "path": "docs/cli-client/evm.md",
    "content": "# EVM\n\n## Available Commands\n\n| Name                           | Description                                              |\n| ------------------------------ | -------------------------------------------------------- |\n| [raw](#iris-tx-evm-raw)        | Build cosmos transaction from raw ethereum transaction.  |\n| [code](#iris-q-evm-code)       | Gets code from an account.                               |\n| [params](#iris-q-evm-params)   | Get the evm params.                                      |\n| [storage](#iris-q-evm-storage) | Gets storage for an account with a given key and height. |\n\n\n## iris tx evm raw\n\nBuild cosmos transaction from raw ethereum transaction.\n\n```bash\niris tx evm raw <TX_HEX>\n```\n\n## iris q evm code\n\nGets code from an account.\n\n```bash\niris q evm code <ADDRESS>\n```\n\n## iris q evm params\n\nGet the evm params.\n\n```bash\niris q evm params\n```\n\n## iris q evm storage\n\nGets storage for an account with a given key and height.\n\n```bash\niris q evm storage <ADDRESS> <KEY>\n```"
  },
  {
    "path": "docs/cli-client/farm.md",
    "content": "# Farm\n\nFarm module allows you to easily create farm activities on irishub.\n\n## Available Commands\n\n| Name                              | Description                                           |\n| --------------------------------- | ----------------------------------------------------- |\n| [create](#iris-tx-farm-create)    | Create a new farm pool                                |\n| [adjust](#iris-tx-farm-adjust)    | Adjust farm pool parameters                           |\n| [destroy](#iris-tx-farm-destroy)  | Destroy the farm pool and get back the invested bonus |\n| [stake](#iris-tx-farm-stake)      | Deposit liquidity token                               |\n| [harvest](#iris-tx-farm-harvest)  | Get back the bonus for participating in the farm pool |\n| [farmer](#iris-query-farm-farmer) | Query farmer information                              |\n| [pool](#iris-query-farm-pool)     | Query the current status of a farm pool               |\n| [pools](#iris-query-farm-pools)   | Query farm pool information by page                   |\n| [params](#iris-query-farm-params) | Query the management parameters of the farm module    |\n\n## iris tx farm create\n\nCreate a new farm pool and pay the handling fee and bonus.\n\n```bash\niris tx farm create <Farm Pool Name> [flags]\n```\n\n**Flags:**\n\n| Name, shorthand    | Required | Default | Description                                              |\n| ------------------ | -------- | ------- | -------------------------------------------------------- |\n| --lp-token-denom   | true     |         | The liquidity token accepted by farm pool                |\n| --reward-per-block | true     |         | The reward per block,ex: 1iris,1atom                     |\n| --total-reward     | true     |         | The Total reward for the farm pool                       |\n| --description      | false    | \"\"      | The simple description of a farm pool                    |\n| --start-height     | true     |         | The start height the farm pool                           |\n| --editable         | false    | false   | Is it possible to adjust the parameters of the farm pool |\n\n### iris tx farm adjust\n\nAdjust the parameters of the pool before the farm pool ends, such as `reward-per-block`, `total-reward`.\n\n```bash\niris tx farm adjust <Farm Pool Name> [flags]\n```\n\n**Flags:**\n\n| Name, shorthand     | Required                                  | Default | Description                          |\n| ------------------- | ----------------------------------------- | ------- | ------------------------------------ |\n| --additional-reward | And `--reward-per-block` must choose one  | \"\"      | Bonuses added to the farm pool       |\n| --reward-per-block  | And `--additional-reward` must choose one | \"\"      | The reward per block,ex: 1iris,1atom |\n\n## iris tx farm destroy\n\nDestroy the farm pool and get back the invested bonus.The rewards earned by the user farm ends at this moment, requiring the user to manually retrieve the income and the liquidity of the deposit.\n\n```bash\niris tx farm destroy <Farm Pool Name> [flags]\n```\n\n### iris tx farm stake\n\nThe farmer participates in farm activities by staking the liquidity tokens specified by the pool. The rewards obtained by participating in the activities are related to the number of staking tokens and farm pool parameters.\n\n```bash\niris tx farm stake <Farm Pool Name> <lp token> [flags]\n```\n\n### iris tx farm harvest\n\nThe farmer withdraws his rewards back.\n\n```bash\niris tx farm harvest <Farm Pool Name>\n```\n\n### iris query farm farmer\n\nQuery farmer's information, including unclaimed rewards, mortgage liquidity, etc.\n\n```bash\niris query farm farmer <Farmer Address> --pool-name <Farm Pool Name>\n```\n\n**Flags:**\n\n| Name, shorthand | Required | Default | Description        |\n| --------------- | -------- | ------- | ------------------ |\n| --pool-name     | false    | \"\"      | the farm pool name |\n\n### iris query farm pool\n\nQuery related information of a farm pool by name\n\n```bash\niris query farm pool <Farm Pool Name>\n```\n\n### iris query farm pools\n\nPaging query farm pool\n\n```bash\niris query farm pools\n```\n\n### iris query farm params\n\nPaging query farm pool\n\n```bash\niris query farm params\n```\n"
  },
  {
    "path": "docs/cli-client/gov.md",
    "content": "# Gov\n\nThis module provides the basic functionalities for [Governance](../features/governance.md).\n\n## Available Commands\n\n| Name                                                          | Description                                                       |\n|---------------------------------------------------------------|-------------------------------------------------------------------|\n| [proposal](#iris-query-gov-proposal)                          | Query details of a single proposal                                |\n| [proposals](#iris-query-gov-proposals)                        | Query proposals with optional filter                              |\n| [vote](#iris-query-gov-vote)                                  | Query details of a single vote                                    |\n| [votes](#iris-query-gov-votes)                                | Query votes on a proposal                                         |\n| [deposit](#iris-query-gov-deposit)                            | Query details of a deposit                                        |\n| [deposits](#iris-query-gov-deposits)                          | Query deposits on a proposal                                      |\n| [tally](#iris-query-gov-tally)                                | Get the tally of a proposal vote                                  |\n| [param](#iris-query-gov-param)                                | Query the parameters (voting                                      |\n| [params](#iris-query-gov-params)                              | Query the parameters of the governance process                    |\n| [proposer](#iris-query-gov-proposer)                          | Query which address proposed a proposal with a given ID.          |\n| [draft-proposal](#iris-tx-gov-draft-proposal)                 | Draft any type of proposal                                        |\n| [submit-proposal](#iris-tx-gov-submit-proposal)               | Submit a proposal along with an initial deposit                   |\n| [submit-legacy-proposal](#iris-tx-gov-submit-legacy-proposal) | Submit a legacy proposal along with an initial deposit            |\n| [deposit](#iris-tx-gov-deposit)                               | Deposit tokens for an active proposal                             |\n| [vote](#iris-tx-gov-vote)                                     | Vote for an active proposal, options: yes/no/no_with_veto/abstain |\n| [weighted-vote](#iris-tx-gov-weighted-vote)                   | Submit a weighted vote for a given governance proposal            |\n\n## iris query gov proposal\n\nQuery details of a proposal.\n\n```bash\niris query gov proposal [proposal-id] [flags]\n```\n\n### Query a proposal\n\n```bash\niris query gov proposal <proposal-id>\n```\n\n## iris query gov proposals\n\nQuery proposals with optional filter.\n\n```bash\niris query gov proposals [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type    | Required | Default | Description                                                         |\n| --------------- | ------- | -------- | ------- | ------------------------------------------------------------------- |\n| --depositor     | Address |          |         | Filter proposals by depositor address                               |\n| --limit         | uint    |          |         | Limit to the latest [number] of proposals. Default to all proposals |\n| --status        | string  |          |         | Filter proposals by status                                          |\n| --voter         | Address |          |         | Filter proposals by voter address                                   |\n\n### Query all proposals\n\n```bash\niris query gov proposals\n```\n\n### Query proposals by conditions\n\n```bash\niris query gov proposals --limit=3 --status=Passed --depositor=<iaa...>\n```\n\n## iris query gov vote\n\nQuery details of a single vote.\n\n```bash\niris query gov vote [proposal-id] [voter-addr] [flags]\n```\n\n### Query a vote\n\n```bash\niris query gov vote <proposal-id> <iaa...>\n```\n\n## iris query gov votes\n\nQuery votes on a proposal.\n\n```bash\niris query gov votes [proposal-id] [flags]\n```\n\n### Query all votes of a proposal\n\n```bash\niris query gov votes <proposal-id>\n```\n\n## iris query gov deposit\n\nQuery details for a single proposal deposit on a proposal by its identifier.\n\n```bash\niris query gov deposit [proposal-id] [depositer-addr] [flags]\n```\n\n### Query a deposit of a proposal\n\n```bash\niris query gov deposit <proposal-id> <iaa...>\n```\n\n## iris query gov deposits\n\nQuery details for all deposits on a proposal.\n\n```bash\niris query gov deposits [proposal-id] [flags]\n```\n\n### Query all deposits of a proposal\n\n```bash\niris query gov deposits <proposal-id>\n```\n\n## iris query gov tally\n\nQuery tally of votes on a proposal. You can find the proposal-id by running \"iris query gov proposals\".\n\n```bash\niris query gov tally [proposal-id] [flags]\n```\n\n### Query the statistics of a proposal\n\n```bash\niris query gov tally <proposal-id>\n```\n\n## iris query gov param\n\nQuery the parameters (voting|tallying|deposit) of the governance process.\n\n```bash\niris query gov param [param-type] [flags]\n```\n\nExample:\n\n```bash\n> iris query gov param voting\n> iris query gov param tallying\n> iris query gov param deposit\n```\n\n## iris query gov params\n\nQuery the all the parameters for the governance process.\n\n```bash\niris query gov params [flags]\n```\n\n## iris query gov proposer\n\nQuery which address proposed a proposal with a given ID.\n\n```bash\niris query gov proposer [proposal-id] [flags]\n```\n\n## iris tx gov draft-proposal\n\nThe draft-proposal command allows users to draft any type of proposal. The command returns a draft_proposal.json, to be used by submit-proposal after being completed. The draft_metadata.json is meant to be uploaded to IPFS.\n\n```bash\niris tx gov draft-proposal\n```\n\n## iris tx gov submit-proposal\n\nThe submit-proposal command allows users to submit a governance proposal along with some messages and metadata. Messages, metadata and deposit are defined in a JSON file.\n\n```bash\niris tx gov submit-proposal [path/to/proposal.json] [flags]\n```\n\nwhere proposal.json contains:\n\n```json\n{\n  \"messages\": [\n    {\n      \"@type\": \"/cosmos.bank.v1beta1.MsgSend\",\n      \"from_address\": \"iaa1...\", // The gov module module address\n      \"to_address\": \"iaa1...\",\n      \"amount\":[{\"denom\": \"stake\",\"amount\": \"10\"}]\n    }\n  ],\n  \"metadata\": \"AQ==\",\n  \"deposit\": \"10stake\"\n}\n\n```\n\n## iris tx gov submit-legacy-proposal\n\nThe submit-legacy-proposal command allows users to submit a governance legacy proposal along with an initial deposit. Proposal title, description, type and deposit can be given directly or through a proposal JSON file.\nAvailable Commands:  `community-pool-spend`, `param-change`, `software-upgrade`, `cancel-software-upgrade`, `client-create`, `client-upgrade`, `relayer-register`, `set-rules`.\n\n### iris tx gov submit-legacy-proposal community-pool-spend\n\nSubmit a community pool spend proposal along with an initial deposit.\nThe proposal details must be supplied via a JSON file.\n\n```bash\niris tx gov submit-legacy-proposal community-pool-spend <path/to/proposal.json> --from=<key_or_address>\n```\n\nWhere proposal.json contains:\n\n```json\n{\n    \"title\": \"Community Pool Spend\",\n    \"description\": \"Pay me some Atoms!\",\n    \"recipient\": \"iaa1mjk4p68mmulwla3x5uzlgjwsc3zrms448rel3q\",\n    \"amount\": \"1000uiris\",\n    \"deposit\": \"1000uiris\"\n}\n```\n\n### iris tx gov submit-legacy-proposal param-change\n\nSubmit a parameter proposal along with an initial deposit.\nThe proposal details must be supplied via a JSON file. For values that contains objects, only non-empty fields will be updated.\n\nIMPORTANT: Currently parameter changes are evaluated but not validated, so it is very important that any \"value\" change is valid (ie. correct type and within bounds) for its respective parameter, eg. \"MaxValidators\" should be an integer and not a decimal.\n\nProper vetting of a parameter change proposal should prevent this from happening (no deposits should occur during the governance process), but it should be noted regardless.\n\n```bash\niris tx gov submit-legacy-proposal param-change <path/to/proposal.json> --from=<key_or_address>\n```\n\nWhere proposal.json contains:\n\n```json\n{\n    \"title\": \"Staking Param Change\",\n    \"description\": \"Update max validators\",\n    \"changes\": [\n        {\n        \"subspace\": \"staking\",\n        \"key\": \"MaxValidators\",\n        \"value\": 105\n        }\n    ],\n    \"deposit\": \"1000uiris\"\n}\n```\n\n### iris tx gov submit-legacy-proposal software-upgrade\n\nSubmit a software upgrade along with an initial deposit.\nPlease specify a unique name and height OR time for the upgrade to take effect.\n\n```bash\niris tx gov submit-legacy-proposal software-upgrade [name] (--upgrade-height [height] | --upgrade-time [time]) (--upgrade-info [info]) [flags]\n```\n\n**Flags:**\n\n| Name, shorthand  | Type   | Required | Default | Description                                                                               |\n| ---------------- | ------ | -------- | ------- | ----------------------------------------------------------------------------------------- |\n| --deposit        | Coin   | Yes      |         | Deposit of the proposal                                                                   |\n| --title          | string | Yes      |         | Title of proposal                                                                         |\n| --description    | string | Yes      |         | Description of proposal                                                                   |\n| --upgrade-height | int64  |          |         | The height at which the upgrade must happen (not to be used together with --upgrade-time) |\n| --time           | string |          |         | The time at which the upgrade must happen (not to be used together with --upgrade-height) |\n| --info           | string |          |         | Optional info for the planned upgrade such as commit hash, etc.                           |\n\n### iris tx gov submit-legacy-proposal cancel-software-upgrade\n\nCancel a software upgrade along with an initial deposit.\n\n```bash\niris tx gov submit-legacy-proposal cancel-software-upgrade [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type   | Required | Default | Description             |\n| --------------- | ------ | -------- | ------- | ----------------------- |\n| --deposit       | Coin   | Yes      |         | Deposit of the proposal |\n| --title         | string | Yes      |         | Title of proposal       |\n| --description   | string | Yes      |         | Description of proposal |\n\n### iris tx gov submit-legacy-proposal client-create\n\nSubmit a client create along with an initial deposit.\n\n```bash\niris tx gov submit-legacy-proposal client-create [chain-name] [path/to/client_state.json] [path/to/consensus_state.json] [flags]\n```\n\n### iris tx gov submit-legacy-proposal client-upgrade\n\nSubmit a client upgrade along with an initial deposit.\n\n```bash\niris tx gov submit-legacy-proposal client-upgrade [chain-name] [path/to/client_state.json] [path/to/consensus_state.json] [flags]\n```\n\n### iris tx gov submit-legacy-proposal relayer-register\n\nSubmit a relayer register along with an initial deposit.\n\n```bash\niris tx gov submit-legacy-proposal relayer-register [chain-name] [relayers-address] [flags]\n```\n\n### iris tx gov submit-legacy-proposal set-rules\n\nSubmit a set rules along with an initial deposit.\n\n```bash\niris tx gov submit-legacy-proposal set-rules [path/to/routing_rules.json] [flags]\n```\n\n## iris tx gov deposit\n\nSubmit a deposit for an active proposal. You can find the proposal-id by running \"iris query gov proposals\".\n\n```bash\niris tx gov deposit [proposal-id] [deposit] [flags]\n```\n\n### Deposit for an active proposal\n\n```bash\niris tx gov deposit [proposal-id] [deposit]\n```\n\n## iris tx gov vote\n\nSubmit a vote for an active proposal. You can find the proposal-id by running \"iris query gov proposals\".\nVote for an active proposal, options: yes/no/no_with_veto/abstain.\n\n```bash\niris tx gov vote [proposal-id] [option] [flags]\n```\n\n### Vote for an active proposal\n\n```bash\niris tx gov vote <proposal-id> <option> --from=<key-name> --fees=0.3iris\n```\n\n\n## iris tx gov weighted-vote\n\nThe weighted-vote command allows users to submit a weighted vote for a given governance proposal.\n\n```bash\niris tx gov weighted-vote [proposal-id] [weighted-options] [flags]\n```"
  },
  {
    "path": "docs/cli-client/htlc.md",
    "content": "# HTLC\n\n[HTLC module](../features/htlc.md) allows you to manage local Hash Time Locked Contracts (HTLCs) for atomic swaps with other chains.\n\nThere are the following states involved in the lifecycle of an HTLC:\n\n- open: indicates the HTLC is claimable\n- completed: indicates the HTLC has been claimed\n- refunded: indicates the HTLC has been refunded\n\n## Available Commands\n\n| Name                           | Description              |\n| ------------------------------ | ------------------------ |\n| [create](#iris-tx-htlc-create) | Create an HTLC           |\n| [claim](#iris-tx-htlc-claim)   | Claim an opened HTLC     |\n| [htlc](#iris-query-htlc-htlc)  | Query details of an HTLC |\n\n## iris tx htlc create\n\nCreate an HTLC\n\n```bash\niris tx htlc create \\\n    --to=<recipient> \\\n    --receiver-on-other-chain=<receiver-on-other-chain> \\\n    --sender-on-other-chain=<sender-on-other-chain> \\\n    --amount=<amount> \\\n    --hash-lock=<hash-lock> \\\n    --secret=<secret> \\\n    --timestamp=<timestamp> \\\n    --time-lock=<time-lock> \\\n    --transfer=<true | false> \\\n    --from=mykey\n```\n\n**Flags:**\n\n| Name, shorthand           | Type   | Required | Default | Description                                                                                           |\n| ------------------------- | ------ | -------- | ------- | ----------------------------------------------------------------------------------------------------- |\n| --to                      | string | Yes      |         | Bech32 encoding address to receive coins                                                              |\n| --receiver-on-other-chain | string |          |         | The claim receiving address on the other chain                                                        |\n| --sender-on-other-chain   | string |          |         | The counterparty creator address on the other chain                                                   |\n| --amount                  | string | Yes      |         | Similar to the amount in the original transfer                                                        |\n| --secret                  | string |          |         | The secret for generating the hash lock, generated randomly if omitted                                |\n| --hash-lock               | string |          |         | The sha256 hash generated from secret (and timestamp if provided), generated from `secret` if omitted |\n| --time-lock               | string | Yes      |         | The number of blocks to wait before the asset may be returned to                                      |\n| --timestamp               | uint   |          |         | The timestamp in seconds for generating hash lock if provided                                         |\n| --transfer                | bool   |          | false   | Whether it is an HTLT transaction                                                                     |\n\n## iris tx htlc claim\n\nClaim an opened HTLC\n\n```bash\niris tx htlc claim [id] [secret] [flags] --from=mykey\n```\n\n## iris query htlc htlc\n\nQuery details of an HTLC\n\n```bash\niris query htlc htlc <id>\n```\n\n## iris query htlc params\n\nQuery params of HTLC module\n\n```bash\niris query htlc params\n```\n\n## iris query htlc supplies\n\nQuery supplies of all HTLT assets\n\n```bash\niris query htlc supplies\n```\n\n## iris query htlc supply\n\nQuery supply of an HTLT asset\n\n```bash\niris query htlc supply [denom]\n```\n"
  },
  {
    "path": "docs/cli-client/intro.md",
    "content": "---\norder: 1\n---\n\n# Introduction\n\n`iris` is a command line client for the IRIShub network. IRIShub users can use `iris` to send transactions and query the blockchain data.\n\n## Working Directory\n\nThe default working directory for the `iris` is `$HOME/.iris`, which is mainly used to save configuration files and data. The IRIShub `key` data is saved in the working directory of `iris`. You can also specify the `iris`  working directory by `--home`.\n\n## Connecting to a Full Node\n\nThe `iris` node provides a RPC interface, transactions and query requests are sent to the process listening to it. The default rpc address the `iris` is connected to is `tcp://localhost:26657`, it can also be specified by `--node`.\n\n## Global Flags\n\n### GET Commands\n\nAll GET commands has the following global flags:\n\n| Name, shorthand | type   | Required | Default Value        | Description                          |\n| --------------- | ------ | -------- | -------------------- | ------------------------------------ |\n| --chain-id      | string |          |                      | Chain ID of tendermint node          |\n| --home          | string |          | ~/.iris | Directory for config and data        |\n| --trace         | string |          |                      | Print out full stack trace on errors |\n\n### POST Commands\n\nAll POST commands have the following global flags:\n\n| Name, shorthand   | type   | Required | Default               | Description                                                                                                    |\n| ----------------- | ------ | -------- | --------------------- | -------------------------------------------------------------------------------------------------------------- |\n| --account-number  | int    |          | 0                     | AccountNumber to sign the tx                                                                                   |\n| --broadcast-mode  | string |          | sync                  | Transaction broadcasting mode (sync \\| async \\| block)                                                         |\n| --dry-run         | bool   |          | false                 | Ignore the --gas flag and perform a simulation of a transaction, but don't broadcast it                        |\n| --fees            | string |          |                       | Fees to pay along with transaction                                                                             |\n| --from            | string |          |                       | Name of private key with which to sign                                                                         |\n| --gas             | string |          | 50000                 | Gas limit to set per-transaction; set to \"simulate\" to calculate required gas automatically                    |\n| --gas-adjustment  | float  |          | 1.5                   | Adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set |\n| --gas-prices      | string |          |                       | Gas prices in decimal format to determine the transaction fee                                                  |\n| --generate-only   | bool   |          | false                 | Build an unsigned transaction and write it to STDOUT                                                           |\n| --help, -h        | string |          |                       | Print help message                                                                                             |\n| --keyring-backend | string |          | os                    | Select keyring's backend                                                                                       |\n| --ledger          | bool   |          | false                 | Use a connected Ledger device                                                                                  |\n| --memo            | string |          |                       | Memo to send along with transaction                                                                            |\n| --node            | string |          | tcp://localhost:26657 | \\<host>:\\<port> to tendermint rpc interface for this chain                                                     |\n| --offline         | string |          |                       | Offline mode (does not allow any online functionality)                                                         |\n| --sequence        | int    |          | 0                     | Sequence number to sign the tx                                                                                 |\n| --sign-mode       | string |          |                       | Choose sign mode (direct \\| amino-json), this is an advanced feature                                           |\n| --trust-node      | bool   |          | true                  | Don't verify proofs for responses                                                                              |\n| --yes             | bool   |          | true                  | Skip tx broadcasting prompt confirmation                                                                       |\n| --chain-id        | string |          |                       | Chain ID of tendermint node                                                                                    |\n| --home            | string |          |                       | Directory for config and data (default \"~/.iris\")                                                 |\n| --trace           | string |          |                       | Print out full stack trace on errors                                                                           |\n\n## Module Commands\n\n| **Subcommand**                    | **Description**                                                |\n| --------------------------------- | -------------------------------------------------------------- |\n| [bank](./bank.md)                 | Bank subcommands for querying acccounts and sending coins etc. |\n| [debug](./debug.md)               | Debug subcommands                                              |\n| [distribution](./distribution.md) | Distribution subcommands for rewards management                |\n| [gov](./gov.md)                   | Governance and voting subcommands                              |\n| [htlc](./htlc.md)                 | HTLC transaction subcommands                                   |\n| [keys](./keys.md)                 | Keys allows you to manage your local keystore for tendermint   |\n| [nft](./nft.md)                   | NFT subcommands                                                |\n| [oracle](./oracle.md)             | Oracle transaction subcommands                                 |\n| [params](./params.md)             | Query parameters of modules                                    |\n| [random](./rand.md)               | Random number subcommands                                      |\n| [record](./record.md)             | Record subcommands                                             |\n| [slashing](./slashing.md)         | Slashing subcommands                                           |\n| [service](./service.md)           | Service subcommands                                            |\n| [staking](./staking.md)           | Staking subcommands for validators and delegators              |\n| [status](./status.md)             | Query remote node for status                                   |\n| [tendermint](./tendermint.md)     | Tendermint state querying subcommands                          |\n| [token](./token.md)               | Token subcommands                                              |\n| [tx](./tx.md)                     | Tx subcommands                                                 |\n| [upgrade](./upgrade.md)           | Software Upgrade subcommands                                   |\n"
  },
  {
    "path": "docs/cli-client/keys.md",
    "content": "# Keys\n\nKeys allows you to manage your local tendermint keystore (wallets) for iris.\n\n## Available Commands\n\n| Name                            | Description                                                                                      |\n| ------------------------------- | ------------------------------------------------------------------------------------------------ |\n| [add](#iris-keys-add)           | Add an encrypted private key (either newly generated or recovered), encrypt it, and save to disk |\n| [delete](#iris-keys-delete)     | Delete the given key                                                                             |\n| [export](#iris-keys-export)     | Export private keys                                                                              |\n| [import](#iris-keys-import)     | Import private keys into the local keybase                                                       |\n| [list](#iris-keys-list)         | List all keys                                                                                    |\n| [migrate](#iris-keys-migrate)   | Migrate keys from the legacy (db-based) Keybase                                                  |\n| [mnemonic](#iris-keys-mnemonic) | Compute the bip39 mnemonic for some input entropy                                                |\n| [parse](#iris-keys-parse)       | Parse address from hex to bech32 and vice versa                                                  |\n| [show](#iris-keys-show)         | Retrieve key information by name or address                                                      |\n\n## iris keys add\n\nDerive a new private key and encrypt to disk.\n\n```bash\niris keys add <key-name> [flags]\n```\n\n**Flags:**\n\n| Name, shorthand      | Default  | Description                                                       | Required |\n| -------------------- | -------- | ----------------------------------------------------------------- | -------- |\n| --multisig           |          | Construct and store a multisig public key                         |          |\n| --multisig-threshold | 1        | K out of N required signatures                                    |          |\n| --nosort             | false    | Keys passed to --multisig are taken in the order they're supplied |          |\n| --pubkey             |          | Parse a public key in bech32 format and save it to disk           |          |\n| --interactive        | false    | Interactively prompt user for BIP39 passphrase and mnemonic       |          |\n| --ledger             | false    | Store a local reference to a private key on a Ledger device       |          |\n| --recover            | false    | Provide seed phrase to recover existing key instead of creating   |          |\n| --no-backup          | false    | Don't print out seed phrase (if others are watching the terminal) |          |\n| --dry-run            | false    | Perform action, but don't add key to local keystore               |          |\n| --hd-path            |          | Manual HD Path derivation (overrides BIP44 config)                |          |\n| --coin-type          | 118      | coin type number for HD derivation                                |          |\n| --account            | 0        | Account number for HD derivation                                  |          |\n| --index              | 0        | Address index number for HD derivation                            |          |\n| --algo               | secp256k | Key signing algorithm to generate keys for                        |          |\n\n### Create a new key\n\n```bash\niris keys add MyKey\n```\n\nEnter and repeat the password, at least 8 characters, then you will get a new key.\n\n:::warning\n**Important**\n\nwrite the seed phrase in a safe place! It is the only way to recover your account if you ever forget your password.\n:::\n\n### Recover an existing key from seed phrase\n\nIf you forget your password or lose your key, or you wanna use your key in another place, you can recover your key by your seed phrase.\n\n```bash\niris keys add MyKey --recover\n```\n\nYou'll be asked to enter and repeat the new password for your key, and enter the seed phrase. Then you get your key back.\n\n```bash\nEnter a passphrase for your key:\nRepeat the passphrase:\nEnter your recovery seed phrase:\n```\n\n### Create a multisig key\n\nThe following example creates a multisig key with 3 sub-keys, and specify the minimum number of signatures as 2. The tx could be broadcast only when the number of signatures is greater than or equal to 2.\n\n```bash\niris keys add <multisig-keyname> --multisig-threshold=2 --multisig=<signer-keyname-1>,<signer-keyname-2>,<signer-keyname-3>\n```\n\n:::tip\n`<signer-keyname>` can be the type of \"local/offline/ledger\", but not \"multi\" type.\n\nIf you don't have all the permission of sub-keys, you can ask for the pubkeys to create the offline keys first, then you will be able to create the multisig key.\n\nOffline key can be created by \"iris keys add --pubkey\".\n:::\n\nHow to use multisig key to sign and broadcast a transaction,  please refer to [multisign](tx.md#iris-tx-multisign)\n\n## iris keys delete\n\nDelete a local key by the given name.\n\n```bash\niris keys delete <key-name> [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Default | Description                                                             | Required |\n| --------------- | ------- | ----------------------------------------------------------------------- | -------- |\n| --force, -f     | false   | Remove the key unconditionally without asking for the passphrase        |          |\n| --yes, -y       | false   | Skip confirmation prompt when deleting offline or ledger key references |          |\n\n### Delete a local key\n\n```bash\niris keys delete MyKey\n```\n\n## iris keys export\n\nExport the keystore of a key to a json file\n\n```bash\niris keys export <key-name> [flags]\n```\n\n### Export keystore\n\n```bash\niris keys export Mykey --output-file=<path-to-keystore>\n```\n\n## iris keys import\n\nImport a ASCII armored private key into the local keybase.\n\n### Import a ASCII armored private key\n\n```bash\niris keys import <name> <keyfile> [flags]\n```\n\n## iris keys list\n\nList all the keys stored by this key manager along with their associated name, type, address and pubkey.\n\n**Flags:**\n\n| Name, shorthand | Default | Description     | Required |\n| --------------- | ------- | --------------- | -------- |\n| --list-name     |         | List names only |          |\n\n### List all keys\n\n```bash\niris keys list\n```\n\n## iris keys migrate\n\nMigrate key information from the legacy (db-based) Keybase to the new keyring-based Keybase.\n\n**Flags:**\n\n| Name, shorthand | Default | Description                                                              | Required |\n| --------------- | ------- | ------------------------------------------------------------------------ | -------- |\n| --dry-run       |         | Run migration without actually persisting any changes to the new Keybase |          |\n\n### Migrate key information\n\n```bash\niris keys migrate [flags]\n```\n\n## iris keys mnemonic\n\nCreate a bip39 mnemonic, sometimes called a seed phrase, by reading from the system entropy. To pass your own entropy, use `unsafe-entropy` mode.\n\n```bash\niris keys mnemonic [flags]\n```\n\n**Flags:**\n\n| Name, shorthand  | Default | Description                                                                   | Required |\n| ---------------- | ------- | ----------------------------------------------------------------------------- | -------- |\n| --unsafe-entropy |         | Prompt the user to supply their own entropy, instead of relying on the system |          |\n\n### Create a bip39 mnemonic\n\n```bash\niris keys mnemonic\n```\n\nYou'll get a bip39 mnemonic with 24 words, e.g.:\n\n```bash\nbeauty entire blue tape ordinary fix rotate learn smart tiger dolphin cycle cigar dish alcohol slab bachelor vital design consider paper panther mad eternal\n```\n\n## iris keys parse\n\nConvert and print to stdout key addresses and fingerprints from hexadecimal into bech32 cosmos prefixed format and vice versa.\n\n### Convert and print to stdout key addresses and fingerprints\n\n```bash\niris keys parse <hex-or-bech32-address> [flags]\n```\n\n## iris keys show\n\nGet details of a local key.\n\n```bash\niris keys show <key-name> [flags]\n```\n\n**Flags:**\n\n| Name, shorthand      | Default | Description                                         | Required |\n| -------------------- | ------- | --------------------------------------------------- | -------- |\n| --address            | false   | Output the address only (overrides --output)        |          |\n| --bech               | acc     | The Bech32 prefix encoding for a key (acc/val/cons) |          |\n| --device             | false   | Output the address in a ledger device               |          |\n| --multisig-threshold | 1       | K out of N required signatures                      |          |\n| --pubkey             | false   | Output the public key only (overrides --output)     |          |\n\n### Get details of a local key\n\n```bash\niris keys show MyKey\n```\n\nThe following infos will be shown:\n\n```bash\n- name: Mykey\n  type: local\n  address: iaa1tulwx2hwz4dv8te6cflhda64dn0984harlzegw\n  pubkey: iap1addwnpepq24rufap6u0sysqcpgsfzqhw3x8nfkhqhtmpgqt0369rlyqcg0vkgwzc4k0\n  mnemonic: \"\"\n  threshold: 0\n  pubkeys: []\n```\n\n### Get validator operator address\n\nIf an address has been bonded to be a validator operator (which the address you used to create a validator), then you can use `--bech val` to get the operator's address prefixed by `iva` and the pubkey prefixed by `ivp`:\n\n```bash\niris keys show MyKey --bech val\n```\n\nExample Output:\n\n```bash\n- name: Mykey\n  type: local\n  address: iva1tulwx2hwz4dv8te6cflhda64dn0984hakwgk4f\n  pubkey: ivp1addwnpepq24rufap6u0sysqcpgsfzqhw3x8nfkhqhtmpgqt0369rlyqcg0vkgd8e6zy\n  mnemonic: \"\"\n  threshold: 0\n  pubkeys: []\n```\n"
  },
  {
    "path": "docs/cli-client/mint.md",
    "content": "# Mint\n\nMint module is in charge of calculating the inflated token amount and add the inflated token to reward pool.\n\n## Available Commands\n\n| Name                              | Description                       |\n| --------------------------------- | --------------------------------- |\n| [params](#iris-query-mint-params) | Query the current mint parameters |\n\n### iris query mint params\n\nQuery the current mint parameters.\n\n```bash\niris query mint params [flags]\n```\n"
  },
  {
    "path": "docs/cli-client/nft.md",
    "content": "# NFT\n\n`NFT` provides the ability to digitize assets. Through this module, each off-chain asset will be modeled as a unique on-chain nft.\n\n## Available Commands\n\n| Name                                          | Description                                                                                         |\n| --------------------------------------------- | --------------------------------------------------------------------------------------------------- |\n| [issue](#iris-tx-nft-issue)                   | Specify the nft Denom (nft classification) and metadata JSON Schema to issue nft.                   |\n| [transfer-denom](#iris-tx-nft-transfer-denom) | The owner of the NFT classification can transfer the ownership of the NFT classification to others. |\n| [mint](#iris-tx-nft-mint)                     | Additional issuance (create) of specific nft of this type can be made.                              |\n| [edit](#iris-tx-nft-edit)                     | The metadata of the specified nft can be updated.                                                   |\n| [transfer](#iris-tx-nft-transfer)             | Transfer designated nft.                                                                            |\n| [burn](#iris-tx-nft-burn)                     | Destroy the created nft.                                                                            |\n| [supply](#iris-query-nft-supply)              | Query the total amount of nft according to Denom; accept the optional owner parameter.              |\n| [owner](#iris-query-nft-owner)                | Query all nft owned by an account; you can specify the Denom parameter.                             |\n| [collection](#iris-query-nft-collection)      | Query all nft according to Denom.                                                                   |\n| [denom](#iris-query-nft-denom)                | Query nft denom information based on Denom.                                                         |\n| [denoms](#iris-query-nft-denoms)              | Query the total amount of nft according to Denom; accept the optional owner parameter.              |\n| [token](#iris-query-nft-token)                | Query specific nft based on Denom and ID.                                                           |\n\n## iris tx nft issue\n\nSpecify the nft Denom (nft classification) and metadata JSON Schema to issue nft.\n\n```bash\niris tx nft issue [denom-id] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand     | Required | Default                                                                                                                                                                                                                     | Description |\n| ------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- |\n| --name              |          | The name of the denom                                                                                                                                                                                                       |             |\n| --uri               |          | The uri of the denom                                                                                                                                                                                                        |             |\n| --data              |          | Off-chain metadata for supplementation (JSON object)                                                                                                                                                                        |             |\n| --schema            |          | Denom data structure definition                                                                                                                                                                                             |             |\n| --symbol            |          | The symbol of the denom                                                                                                                                                                                                     |             |\n| --mint-restricted   |          | This field indicates whether there are restrictions on the issuance of NFTs under this classification, true means that only Denom owners can issue NFTs under this classification, false means anyone can                   |             |\n| --update-restricted |          | This field indicates whether there are restrictions on updating NFTs under this classification, true means that no one under this classification can update the NFT, false means that only the owner of this NFT can update |             |\n\n## iris tx nft transfer-denom\n\nThe owner of the NFT classification can transfer the ownership of the NFT classification to others.\n\n```bash\niris tx nft transfer-denom [recipient] [denom-id]\n```\n\n## iris tx nft mint\n\nAdditional issuance (create) of specific nft of this type can be made.  \n\n```bash\niris tx nft mint [denomID] [tokenID] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Required | Default                     | Description |\n| --------------- | -------- | --------------------------- | ----------- |\n| --uri           |          | URI of off-chain token data |             |\n| --recipient     |          | Receiver of the nft         |             |\n| --name          |          | The name of nft             |             |\n\n## iris tx nft edit\n\nThe metadata of the specified nft can be updated.\n\n```bash\niris tx nft edit [denomID] [tokenID] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Required | Default                     | Description |\n| --------------- | -------- | --------------------------- | ----------- |\n| --uri           |          | URI of off-chain token data |             |\n| --name          |          | The name of nft             |             |\n\n## iris tx nft transfer\n\nTransfer designated nft.\n\n```bash\niris tx nft transfer [recipient] [denomID] [tokenID] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Required | Default                     | Description |\n| --------------- | -------- | --------------------------- | ----------- |\n| --uri           |          | URI of off-chain token data |             |\n| --name          |          | The name of nft             |             |\n\n## iris tx nft burn\n\nDestroy the created nft.\n\n```bash\niris tx nft burn [denomID] [tokenID] [flags]\n```\n\n## iris query nft\n\nQuery nft\n\n### iris query nft supply\n\n```bash\niris query nft supply [denomID]\niris query nft supply [denomID] --owner=<owner address>\n```\n\n### iris query nft owner\n\n```bash\niris query nft owner [owner address]\niris query nft owner [owner address] --denom=<denomID>\n```\n\n### iris query nft collection\n\n```bash\niris query nft collection [denomID]\n```\n\n### iris query nft denom\n\n```bash\niris query nft denom [denomID]\n```\n\n### iris query nft denoms\n\n```bash\niris query nft denoms\n```\n\n### iris query nft token\n\n```bash\niris query nft token [denomID] [tokenID]\n```\n"
  },
  {
    "path": "docs/cli-client/oracle.md",
    "content": "# Oracle\n\nOracle module allows you to manage the feed on IRIS Hub\n\n## Available Commands\n\n| Name                              | Description                                                                          |\n| --------------------------------- | ------------------------------------------------------------------------------------ |\n| [create](#iris-tx-oracle-create)  | Create a new feed, the feed will be in \"paused\" state                                |\n| [start](#iris-tx-oracle-start)    | Start a feed in \"paused\" state                                                       |\n| [pause](#iris-tx-oracle-pause)    | Pause a feed in \"running\" state                                                      |\n| [edit](#iris-tx-oracle-edit)      | Modify the feed information and update service invocation parameters by feed creator |\n| [feed](#iris-query-oracle-feed)   | Query the feed definition                                                            |\n| [feeds](#iris-query-oracle-feeds) | Query a group of feed definition                                                     |\n| [value](#iris-query-oracle-value) | Query the feed result                                                                |\n\n## iris tx oracle create\n\nThis command is used to create a new feed, the feed will be in \"paused\" state.\n\n```bash\niris tx oracle create [flags]\n```\n\n**Flags:**\n\n| Name, shorthand   | Type     | Required | Default | Description                                                                                                                    |\n| ----------------- | -------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------ |\n| --feed-name       | string   | Yes      |         | The unique identifier of the feed.                                                                                             |\n| --description     | string   |          |         | The description of the feed.                                                                                                   |\n| --latest-history  | uint64   | Yes      |         | The maximum Number of the latest history values to be saved for the Feed, range [1, 100].                                      |\n| --service-name    | string   | Yes      |         | The name of the service to be invoked by the feed.                                                                             |\n| --input           | string   | Yes      |         | The input argument (JSON) used to invoke the service.                                                                          |\n| --providers       | []string | Yes      |         | The list of service provider addresses.                                                                                        |\n| --service-fee-cap | string   | Yes      |         | Only providers charging a fee lower than the cap will be invoked.                                                              |\n| --timeout         | int64    |          |         | The maximum number of blocks to wait for a response since a request is sent, beyond which the request will be ignored.         |\n| --frequency       | uint64   |          |         | The invocation frequency of sending repeated requests.                                                                         |\n| --threshold       | uint16   |          | 1       | The minimum number of responses needed for aggregation, range [1, Length(providers)].                                          |\n| --aggregate-func  | string   | Yes      |         | The name of predefined function for processing the service responses, e.g. avg, max, min etc.                                  |\n| --value-json-path | string   | Yes      |         | The field name or path of Service response result used to retrieve the value property of aggregate-func from response results. |\n\n### Create a new feed\n\n```bash\niris tx oracle create \\\n    --feed-name=\"test-feed\" \\\n    --latest-history=10 \\\n    --service-name=\"test-service\" \\\n    --input=<request-data> \\\n    --providers=<provide1_address>,<provider2_address> \\\n    --service-fee-cap=1iris \\\n    --timeout=2 \\\n    --frequency=10 \\\n    --total=10 \\\n    --threshold=1 \\\n    --aggregate-func=\"avg\" \\\n    --value-json-path=\"high\" \\\n    --chain-id=irishub \\\n    --from=node0 \\\n    --fees=0.3iris\n```\n\n## iris tx oracle start\n\nThis command is used to start a feed in \"paused\" state\n\n```bash\niris tx oracle start [feed-name] [flags]\n```\n\n### Start a \"paused\" feed\n\n```bash\niris tx oracle start test-feed --chain-id=irishub --from=node0 --fees=0.3iris\n```\n\n## iris tx oracle pause\n\nThis command is used to pause a feed in \"running\" state\n\n```bash\niris tx oracle pause [feed-name] [flags]\n```\n\n### Pause a \"running\" feed\n\n```bash\niris tx oracle pause test-feed --chain-id=irishub --from=node0 --fees=0.3iris\n```\n\n## iris tx oracle edit\n\nThis command is used to edit an existing feed on IRIS Hub.\n\n```bash\niris tx oracle edit [feed-name] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand   | Type     | Required | Default | Description                                                                                                            |\n| ----------------- | -------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------- |\n| --feed-name       | string   | Yes      |         | The unique identifier of the feed.                                                                                     |\n| --description     | string   |          |         | The description of the feed.                                                                                           |\n| --latest-history  | uint64   | Yes      |         | The maximum Number of the latest history values to be saved for the Feed, range [1, 100].                              |\n| --providers       | []string | Yes      |         | The list of service provider addresses.                                                                                |\n| --service-fee-cap | string   | Yes      |         | Only providers charging a fee lower than the cap will be invoked.                                                      |\n| --timeout         | int64    |          |         | The maximum number of blocks to wait for a response since a request is sent, beyond which the request will be ignored. |\n| --frequency       | uint64   |          |         | The invocation frequency of sending repeated requests.                                                                 |\n| --threshold       | uint16   |          | 1       | The minimum number of responses needed for aggregation, range [1, Length(providers)].                                  |\n\n### Edit an existed feed\n\n```bash\niris tx oracle edit test-feed --chain-id=irishub --from=node0 --fees=0.3iris --latest-history=5\n```\n\n## iris query oracle feed\n\nThis command is used to query a feed\n\n```bash\niris query oracle feed [feed-name] [flags]\n```\n\n### Query an existed feed\n\n```bash\niris query oracle feed test-feed\n```\n\n## iris query oracle feeds\n\nThis command is used to query a group of feed\n\n```bash\niris query oracle feeds [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type   | Required | Default | Description                                  |\n| --------------- | ------ | -------- | ------- | -------------------------------------------- |\n| --state         | string |          |         | the state of the feed, e.g. paused, running. |\n\n### Query a group of feed\n\n```bash\niris query oracle feeds --state=running\n```\n\n## iris query oracle value\n\nThis command is used to query the result of a specified feed\n\n```bash\niris query oracle value test-feed\n```\n"
  },
  {
    "path": "docs/cli-client/params.md",
    "content": "# Params\n\nParams module allows you to query the system parameters which can be governed (except the gov params) by the [gov module](./gov.md).\n\n```bash\niris query params subspace [subspace] [key] [flags]\n```\n\nSubspace currently supports the following:`auth`, `bank`, `staking`, `mint`, `distribution`, `slashing`, `gov`, `crisis`, `token`, `record`, `htlc`, `coinswap`, `service`.\n\nAmong them, the parameters available for query for each subspace are as follows:\n\n## auth\n\n| key                      | description                                                     | default |\n| ------------------------ | --------------------------------------------------------------- | ------- |\n| `MaxMemoCharacters`      | Maximum number of characters in the memo field in a transaction | 256     |\n| `TxSigLimit`             | Maximum number of signatures per transaction                    | 7       |\n| `TxSizeCostPerByte`      | The amount of gas consumed per byte of the transaction          | 10      |\n| `SigVerifyCostED25519`   | Gas spent on edd2519 algorithm signature verification           | 590     |\n| `SigVerifyCostSecp256k1` | Gas spent on secp256k1 algorithm signature verification         | 1000    |\n\n## bank\n\n| key                  | description                                        | default |\n| -------------------- | -------------------------------------------------- | ------- |\n| `SendEnabled`        | Tokens that support transfer                       | {}      |\n| `DefaultSendEnabled` | Whether to enable the transfer function by default | true    |\n\n## staking\n\n| key                 | description                                                     | default   |\n| ------------------- | --------------------------------------------------------------- | --------- |\n| `UnbondingTime`     | Mortgage redemption time                                        | 3w(weeks) |\n| `MaxValidators`     | Maximum number of validators                                    | 100       |\n| `MaxEntries`        | The maximum number of unbinding/redelegation orders in progress | 7         |\n| `BondDenom`         | Bond denom                                                      | uiris     |\n| `HistoricalEntries` | The number of historical entries                                | 100       |\n\n## mint\n\n| key         | description                 | default |\n| ----------- | --------------------------- | ------- |\n| `Inflation` | Token issuance frequency    | 0.04    |\n| `MintDenom` | Denom of the token mintable | uiris   |\n\n## distribution\n\n| key                   | description                                       | default |\n| --------------------- | ------------------------------------------------- | ------- |\n| `communitytax`        | Fees charged for withdrawal                       | 0.02    |\n| `baseproposerreward`  | The base reward rate of the block proposer        | 0.01    |\n| `bonusproposerreward` | Reward rate for block proposers                   | 0.04    |\n| `withdrawaddrenabled` | Whether to support setting the withdrawal address | true    |\n\n## slashing\n\n| key                       | description                           | default |\n| ------------------------- | ------------------------------------- | ------- |\n| `SignedBlocksWindow`      | Sliding window for downtime slashing  | 100     |\n| `MinSignedPerWindow`      | Minimum signature rate in each window | 0.5     |\n| `DowntimeJailDuration`    | Maximum downtime  (continuous)        | 10m     |\n| `SlashFractionDoubleSign` | Penalty coefficient for double sign   | 1/20    |\n| `SlashFractionDowntime`   | Penalty coefficient for downtime      | 1/100   |\n\n## gov\n\n| key             | description                                      | default                                                         |\n| --------------- | ------------------------------------------------ | --------------------------------------------------------------- |\n| `depositparams` | Related parameters of the deposit mortgage phase | `min_deposit`:    10000000uiris; `max_deposit_period`: 2d(days) |\n| `votingparams`  | Related parameters of the voting mortgage phase  | `voting_period`: 2d(days)                                       |\n| `tallyparams`   | Related parameters of the voting tally phase     | `quorum`: 0.334; `threshold`: 0.5; `veto_threshold`: 0.334      |\n\n## crisis\n\n| key           | description  | default   |\n| ------------- | ------------ | --------- |\n| `ConstantFee` | Constant Fee | 1000uiris |\n\n## token\n\n| key                 | description                       | default            |\n| ------------------- | --------------------------------- | ------------------ |\n| `TokenTaxRate`      | Base rate for issuing/mint tokens | 0.4                |\n| `IssueTokenBaseFee` | Base token for issuing tokens     | 60000 * 10^6 uiris |\n| `MintTokenFeeRatio` | Rate for mint tokens              | 0.1                |\n\n## coinswap\n\n| key             | description                   | default |\n| --------------- | ----------------------------- | ------- |\n| `StandardDenom` | The name of the token charged | uiris   |\n\n## htlc\n\n| key           | description                              | default |\n| ------------- | ---------------------------------------- | ------- |\n| `AssetParams` | Array of supported assets,`[]AssetParam` | None    |\n\nAssetParam参数如下：\n\n| key                        | description                       | Example                                      |\n| -------------------------- | --------------------------------- | -------------------------------------------- |\n| `AssetParam.Denom`         | The name  of asset                | \"htltbcbnb\"                                  |\n| `AssetParam.SupplyLimit`   | The supply limit of  asset        | 100000                                       |\n| `AssetParam.Active`        | Asset state: live or paused       | true                                         |\n| `AssetParam.DeputyAddress` | Deputy's IRISHub address          | “iaa18n3x722r4jpwmshlxnw3ehlpfzywupzefthcz5” |\n| `AssetParam.FixedFee`      | Deputy's fixed fee on other chain | 1000                                         |\n| `AssetParam.MinSwapAmount` | Minimum swap amount               | 1                                            |\n| `AssetParam.MaxSwapAmount` | Maximum swap amount               | 10000                                        |\n| `AssetParam.MinBlockLock`  | Minimum swap expire height        | 50                                           |\n| `AssetParam.MaxBlockLock`  | Maximum swap expire height        | 25480                                        |\n\n## service\n\n| key                         | description                                         | default    |\n| --------------------------- | --------------------------------------------------- | ---------- |\n| `MaxRequestTimeout`         | Maximum service request timeout                     | 100(block) |\n| `MinDepositMultiple`        | Minimum deposit multiple                            | 200        |\n| `MinDeposit`                | Minimum deposit amount                              | 6000uiris  |\n| `ServiceFeeTax`             | Service rate                                        | 0.1        |\n| `SlashFraction`             | Slash fraction                                      | 0.001      |\n| `ComplaintRetrospect`       | Complaint retrospect                                | 15d        |\n| `ArbitrationTimeLimit`      | Arbitration period                                  | 5d         |\n| `TxSizeLimit`               | The maximum number of bytes per service transaction | 4000       |\n| `BaseDenom`                 | Tokens supported by service fees                    | uiris      |\n| `RestrictedServiceFeeDenom` | Restricted service fee denom                        | false      |\n"
  },
  {
    "path": "docs/cli-client/random.md",
    "content": "# Random\n\nRand module allows you to post a random number request to the IRIS Hub and query the random numbers or the pending random number requests.\n\n## Available Commands\n\n| Name                                | Description                                                      |\n| ----------------------------------- | ---------------------------------------------------------------- |\n| [request](#iris-tx-random-request)  | Request a random number with an optional block interval          |\n| [random](#iris-query-random-random) | Query the generated random number by the request id              |\n| [queue](#iris-query-random-queue)   | Query the pending random number requests with an optional height |\n\n## iris tx random request\n\nRequest a random number.\n\n```bash\niris tx random request [flags]\n```\n\n**Flags:**\n\n| Name, shorthand   | Type   | Required | Default | Description                                                                  |\n| ----------------- | ------ | -------- | ------- | ---------------------------------------------------------------------------- |\n| --block-interval  | uint64 | true     | 10      | The block interval after which the requested random number will be generated |\n| --oracle          | bool   |          | false   | Whether to use the oracle method                                             |\n| --service-fee-cap | string |          | \"\"      | Max service fee, required if \"oracle\" is true                                |\n\n### Request a random number\n\nPost a random number request to the IRIS Hub, the random number will be generated after `--block-interval` blocks.\n\n```bash\n# without oracle\niris tx random request --block-interval=100 --from=<key-name> --chain-id=irishub --fees=0.3iris\n\n# with oracle\niris tx random request --block-interval=100 --oracle=true --service-fee-cap=1iris --from=<key-name> --chain-id=irishub --fees=0.3iris\n```\n\n:::tip\nYou will get a unique request id if the tx is committed, which can be used to query the status of the request. You can also [query the tx detail](./tx.md#iris-query-tx) to get the request id.\n:::\n\n## iris query random random\n\nQuery the generated random number by the request id.\n\n```bash\niris query random random <request-id> [flags]\n```\n\n## iris query random queue\n\nQuery the pending random number requests with an optional block height.\n\n```bash\niris query random queue <gen-height> [flags]\n```\n\n### Query random number request queue\n\nQuery the pending random number requests with an optional block height at which random numbers will be generated or request service.\n\n```bash\niris query random queue 100000\n```\n"
  },
  {
    "path": "docs/cli-client/record.md",
    "content": "# Record\n\nRecord module allows you to manage record on IRIS Hub\n\n## Available Commands\n\n| Name                                | Description        |\n| ----------------------------------- | ------------------ |\n| [create](#iris-tx-record-create)    | Create a record    |\n| [record](#iris-query-record-record) | Query record by id |\n\n## iris tx record create\n\nCreate a record\n\n```bash\niris tx record create [digest] [digest-algo] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type   | Required | Default | Description                                |\n| --------------- | ------ | -------- | ------- | ------------------------------------------ |\n| --uri           | string |          |         | Source uri of record, such as an ipfs link |\n| --meta          | string |          |         | meta data of record                        |\n\n## iris query record record\n\nQuery record by id\n\n```bash\niris query record record [record-id]\n```\n"
  },
  {
    "path": "docs/cli-client/service.md",
    "content": "# Service\n\nService module allows you to define, bind, invoke services on the IRIS Hub. [Read more about iService](../features/service.md).\n\n## Available Commands\n\n| Name                                                    | Description                                                        |\n| ------------------------------------------------------- | ------------------------------------------------------------------ |\n| [define](#iris-tx-service-define)                       | Define a new service                                               |\n| [definition](#iris-query-service-definition)            | Query a service definition                                         |\n| [bind](#iris-tx-service-bind)                           | Bind a service                                                     |\n| [binding](#iris-query-service-binding)                  | Query a service binding                                            |\n| [bindings](#iris-query-service-bindings)                | Query all bindings of a service definition                         |\n| [set-withdraw-addr](#iris-tx-service-set-withdraw-addr) | Set a withdrawal address for a provider                            |\n| [withdraw-addr](#iris-query-service-withdraw-addr)      | Query the withdrawal address of a provider                         |\n| [update-binding](#iris-tx-service-update-binding)       | Update an existing service binding                                 |\n| [disable](#iris-tx-service-disable)                     | Disable an available service binding                               |\n| [enable](#iris-tx-service-enable)                       | Enable an unavailable service binding                              |\n| [refund-deposit](#iris-tx-service-refund-deposit)       | Refund all deposit from a service binding                          |\n| [call](#iris-tx-service-call)                           | Initiate a service call                                            |\n| [request](#iris-query-service-request)                  | Query a request by the request ID                                  |\n| [requests](#iris-query-service-requests)                | Query active requests by the service binding or request context ID |\n| [respond](#iris-tx-service-respond)                     | Respond to a service request                                       |\n| [response](#iris-query-service-response)                | Query a response by the request ID                                 |\n| [responses](#iris-query-service-responses)              | Query active responses by the request context ID and batch counter |\n| [request-context](#iris-query-service-request-context)  | Query a request context                                            |\n| [update](#iris-tx-service-update)                       | Update a request context                                           |\n| [pause](#iris-tx-service-pause)                         | Pause a running request context                                    |\n| [start](#iris-tx-service-start)                         | Start a paused request context                                     |\n| [kill](#iris-tx-service-kill)                           | Terminate a request context                                        |\n| [fees](#iris-query-service-fees)                        | Query the earned fees of a provider                                |\n| [withdraw-fees](#iris-tx-service-withdraw-fees)         | Withdraw the earned fees of a provider                             |\n| [schema](#iris-query-service-schema)                    | Query the system schema by the schema name                         |\n| [params](#iris-query-service-params)                    | Query values set as service parameters.                            |\n\n## iris tx service define\n\nDefine a new service.\n\n```bash\niris tx service define [flags]\n```\n\n**Flags:**\n\n| Name, shorthand      | Default | Description                                       | Required |\n| -------------------- | ------- | ------------------------------------------------- | -------- |\n| --name               |         | Service name                                      | Yes      |\n| --description        |         | Service description                               |          |\n| --author-description |         | Service author description                        |          |\n| --tags               |         | Service tags                                      |          |\n| --schemas            |         | Content or file path of service interface schemas | Yes      |\n\n### define a service\n\n```bash\niris tx service define \\\n    --name=<service name> \\\n    --description=<service description> \\\n    --author-description=<author description>\n    --tags=tag1,tag2 \\\n    --schemas=<schemas content or path/to/schemas.json> \\\n    --chain-id=irishub \\\n    --from=<key-name> \\\n    --fees=0.3iris\n```\n\n### Schemas content example\n\n```json\n{\n    \"input\": {\n        \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n        \"title\": \"BioIdentify service input body\",\n        \"description\": \"BioIdentify service input body specification\",\n        \"type\": \"object\",\n        \"properties\": {\n            \"id\": {\n                \"description\": \"id\",\n                \"type\": \"string\"\n            },\n            \"name\": {\n                \"description\": \"name\",\n                \"type\": \"string\"\n            },\n            \"data\": {\n                \"description\": \"data\",\n                \"type\": \"string\"\n            }\n        },\n        \"required\": [\n            \"id\",\n            \"data\"\n        ]\n    },\n    \"output\": {\n        \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n        \"title\": \"BioIdentify service output body\",\n        \"description\": \"BioIdentify service output body specification\",\n        \"type\": \"object\",\n        \"properties\": {\n            \"data\": {\n                \"description\": \"result data\",\n                \"type\": \"string\"\n            }\n        },\n        \"required\": [\n            \"data\"\n        ]\n    }\n}\n```\n\n## iris query service definition\n\nQuery a service definition.\n\n```bash\niris query service definition [service-name] [flags]\n```\n\n### Query a service definition\n\nQuery the detailed info of the service definition with the specified service name.\n\n```bash\niris query service definition <service name>\n```\n\n## iris tx service bind\n\nBind a service.\n\n```bash\niris tx service bind [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Default | Description                                                                                                                   | Required |\n| --------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------- | -------- |\n| --service-name  |         | Service name                                                                                                                  | Yes      |\n| --deposit       |         | Deposit of the binding                                                                                                        | Yes      |\n| --pricing       |         | Pricing content or file path, which is an instance of [Irishub Service Pricing JSON Schema](../features/service-pricing.json) | Yes      |\n| --qos           |         | Minimum response time                                                                                                         | Yes      |\n| --options       |         | Non-functional requirements options                                                                                           | Yes      |\n| --provider      |         | Provider address, default to the owner                                                                                        |          |\n\n### Bind an existing service definition\n\nThe deposit needs to satisfy the minimum deposit requirement, which is the maximal one between `price` * `MinDepositMultiple` and `MinDeposit` (`MinDepositMultiple` and `MinDeposit` are the system parameters, which can be modified through the governance).\n\n```bash\niris tx service bind \\\n    --service-name=<service name> \\\n    --deposit=10000iris \\\n    --pricing=<pricing content or path/to/pricing.json> \\\n    --qos=50 \\\n    --options=<non-functional requirements options content or path/to/options.json> \\\n    --chain-id=irishub \\\n    --from=<key-name> \\\n    --fees=0.3iris\n```\n\n### Pricing content example\n\n```json\n{\n    \"price\": \"1iris\"\n}\n```\n\n## iris query service binding\n\nQuery a service binding.\n\n```bash\niris query service binding <service name> <provider>\n```\n\n## iris query service bindings\n\nQuery all bindings of a service definition.\n\n```bash\niris query service bindings [service-name] [flags]\n```\n\n### Query service binding list\n\n```bash\niris query service bindings <service name> <owner address>\n```\n\n## iris tx service update-binding\n\nUpdate a service binding.\n\n```bash\niris tx service update-binding [service-name] [provider-address] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Default | Description                                                                                                                                       | Required |\n| --------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |\n| --deposit       |         | Deposit added for the binding, not updated if empty                                                                                               |          |\n| --pricing       |         | Pricing content or file path, which is an instance of [Irishub Service Pricing JSON Schema](../features/service-pricing.md), not updated if empty |          |\n| --qos           |         | Minimum response time, not updated if set to 0                                                                                                    |          |\n| --options       |         | Non-functional requirements options                                                                                                               |          |\n\n### Update an existing service binding\n\nThe following example updates the service binding with the additional 10 IRIS deposit\n\n```bash\niris tx service update-binding <service-name> <provider-address> \\\n    --deposit=10iris \\\n    --options=<non-functional requirements options content or path/to/options.json> \\\n    --pricing='{\"price\":\"1iris\"}' \\\n    --qos=50 \\\n    --chain-id=<chain-id> \\\n    --from=<key name> \\\n    --fees=0.3iris\n```\n\n## iris tx service set-withdraw-addr\n\nSet a withdrawal address for a provider.\n\n```bash\niris tx service set-withdraw-addr [withdrawal-address] [flags]\n```\n\n## iris query service withdraw-addr\n\nQuery the withdrawal address of a provider.\n\n```bash\niris query service withdraw-addr [provider] [flags]\n```\n\n## iris tx service disable\n\nDisable an available service binding.\n\n```bash\niris tx service disable [service-name] [provider-address] [flags]\n```\n\n## iris tx service enable\n\nEnable an unavailable service binding.\n\n```bash\niris tx service enable [service-name] [provider-address] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Default | Description                            | Required |\n| --------------- | ------- | -------------------------------------- | -------- |\n| --deposit       |         | deposit added for enabling the binding |          |\n\n### Enable an unavailable service binding\n\nThe following example enables an unavailable service binding with the additional 10 IRIS deposit.\n\n```bash\niris tx service enable <service name> <provider-address> --chain-id=irishub --from=<key-name> --fees=0.3iris --deposit=10iris\n```\n\n## iris tx service refund-deposit\n\nRefund all deposits from a service binding.\n\n```bash\niris tx service refund-deposit [service-name] [provider-address] [flags]\n```\n\n### Refund all deposits from an unavailable service binding\n\nBefore refunding, you should [disable](#iris-tx-service-disable) the service binding first.\n\n```bash\niris tx service refund-deposit <service name> <provider-address> --chain-id=irishub --from=<key-name> --fees=0.3iris\n```\n\n## iris tx service call\n\nInitiate a service call.\n\n```bash\niris tx service call [flags]\n```\n\n**Flags:**\n\n| Name, shorthand   | Default | Description                                                                                                            | Required |\n| ----------------- | ------- | ---------------------------------------------------------------------------------------------------------------------- | -------- |\n| --service-name    |         | Service name                                                                                                           | Yes      |\n| --providers       |         | Provider list to request                                                                                               | Yes      |\n| --service-fee-cap |         | Maximum service fee to pay for a single request                                                                        | Yes      |\n| --data            |         | Content or file path of the request input, which is an Input JSON Schema instance                                      | Yes      |\n| --timeout         |         | Request timeout                                                                                                        | Yes      |\n| --repeated        | false   | Indicate if the reqeust is repetitive (Temporarily disabled in irishub-v1.0.0, will be activated after a few versions) |          |\n| --frequency       |         | Request frequency when repeated, default to `timeout`                                                                  |          |\n| --total           |         | Request count when repeated, -1 means unlimited                                                                        |          |\n\n### Initiate a service invocation request\n\n```bash\niris tx service call \\\n    --service-name=<service name> \\\n    --providers=<provider list> \\\n    --service-fee-cap=1iris \\\n    --data=<request input or path/to/input.json> \\\n    --timeout=100 \\\n    --repeated \\\n    --frequency=150 \\\n    --total=100 \\\n    --chain-id=irishub \\\n    --from=<key name> \\\n    --fees=0.3iris\n```\n\n### Input example\n\n```json\n{\n    \"header\": {\n        ...\n    },\n    \"body\": {\n        \"id\": \"1\",\n        \"name\": \"irisnet\",\n        \"data\": \"facedata\"\n    }\n}\n```\n\n## iris query service request\n\nQuery a request by the request ID.\n\n```bash\niris query service request [request-id] [flags]\n```\n\n### Query a service request\n\n```bash\niris query service request <request-id>\n```\n\n:::tip\nYou can retrieve the `request-id` in [Query request_id through rpc interface](#Query request_id through rpc interface) or [iris query service requests](#iris query service requests).\n:::\n\n### Query request_id through rpc interface\n\nQuery `block_results` according to `block height` through `rpc interface`, find `new_batch_request_provider` in `end_block_events`, decode the result with base64 to get `request_id`.\n\n```bash\ncurl -X POST -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"block_results\",\"params\":[\"10604\"]}' http://localhost:26657\n```\n\n## iris query service requests\n\nQuery active requests by the service binding or request context ID.\n\n```bash\niris query service requests [service-name] [provider] | [request-context-id] [batch-counter] [flags]\n```\n\n### Query active requests of a service binding\n\n```bash\niris query service requests <service name> <provider>\n```\n\n### Query service requests by the request context ID and batch counter\n\n```bash\niris query service requests <request-context-id> <batch-counter>\n```\n\n## iris tx service respond\n\nRespond to a service request.\n\n```bash\niris tx service respond [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Default | Description                                                                                                                                | Required |\n| --------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ | -------- |\n| --request-id    |         | ID of the request to respond to                                                                                                            | Yes      |\n| --result        |         | Content or file path of the response result, which is an instance of [Irishub Service Result JSON Schema](../features/service-result.json) | Yes      |\n| --data          |         | Content or file path of the response output, which is an Output JSON Schema instance                                                       |          |\n\n### Respond to a service request\n\n```bash\niris tx service respond \\\n    --request-id=<request-id> \\\n    --result=<response result or path/to/result.json> \\\n    --data=<response output or path/to/output.json>\n    --chain-id=irishub \\\n    --from=<key-name> \\\n    --fees=0.3iris\n```\n\n:::tip\nYou can retrieve the `request-id` in [Query request_id through rpc interface](#Query request_id through rpc interface) or [iris query service requests](#iris query service requests).\n:::\n\n### Result example\n\n```json\n{\n    \"code\": 200,\n    \"message\": \"\"\n}\n```\n\n### Output example\n\n```json\n{\n    \"header\": {\n        ...\n    },\n    \"body\": {\n        \"data\": \"userdata\"\n    }\n}\n```\n\n## iris query service response\n\nQuery a service response.\n\n```bash\niris query service response [request-id] [flags]\n```\n\n:::tip\nYou can retrieve the `request-id` in [Query request_id through rpc interface](#Query request_id through rpc interface) or [iris query service requests](#iris query service requests).\n:::\n\n## iris query service responses\n\nQuery active responses by the request context ID and batch counter.\n\n```bash\niris query service responses [request-context-id] [batch-counter] [flags]\n```\n\n### Query responses by the request context ID and batch counter\n\n```bash\niris query service responses <request-context-id> <batch-counter>\n```\n\n## iris query service request-context\n\nQuery a request context.\n\n```bash\niris query service request-context [request-context-id] [flags]\n```\n\n### Query a request context\n\n```bash\niris query service request-context <request-context-id>\n```\n\n:::tip\nYou can retrieve the `request-context-id` in the result of [service call](#iris-tx-service-call)\n:::\n\n## iris tx service update\n\nUpdate a request context.\n\n```bash\niris tx service update [request-context-id] [flags]\n```\n\n**Flags:**\n\n| Name, shorthand   | Default | Description                                                           | Required |\n| ----------------- | ------- | --------------------------------------------------------------------- | -------- |\n| --providers       |         | Provider list to request, not updated if empty                        |          |\n| --service-fee-cap |         | Maximum service fee to pay for a single request, not updated if empty |          |\n| --timeout         |         | Request timeout, not updated if set to 0                              |          |\n| --frequency       |         | Request frequency, not updated if set to 0                            |          |\n| --total           |         | Request count, not updated if set to 0                                |          |\n\n### Update a request context\n\n```bash\niris tx service update <request-context-id> \\\n    --providers=<provider list> \\\n    --service-fee-cap=1iris \\\n    --timeout=0 \\\n    --frequency=150 \\\n    --total=100 \\\n    --chain-id=irishub \\\n    --from=<key name> \\\n    --fees=0.3iris\n```\n\n## iris tx service pause\n\nPause a running request context.\n\n```bash\niris tx service pause [request-context-id] [flags]\n```\n\n### Pause a running request context\n\n```bash\niris tx service pause <request-context-id>\n```\n\n## iris tx service start\n\nStart a paused request context.\n\n```bash\niris tx service start [request-context-id] [flags]\n```\n\n### Start a paused request context\n\n```bash\niris tx service start <request-context-id>\n```\n\n## iris tx service kill\n\nTerminate a request context.\n\n```bash\niris tx service kill [request-context-id] [flags]\n```\n\n### Kill a request context\n\n```bash\niris tx service kill <request-context-id>\n```\n\n## iris query service fees\n\nQuery the earned fees of a provider.\n\n```bash\niris query service fees [provider] [flags]\n```\n\n## iris tx service withdraw-fees\n\nWithdraw the earned fees of a provider.\n\n```bash\niris tx service withdraw-fees [provider-address] [flags]\n```\n\n## iris query service schema\n\nQuery the system schema by the schema name, only pricing and result allowed.\n\n```bash\niris query service schema [schema-name] [flags]\n```\n\n### Query the service pricing schema\n\n```bash\niris query service schema pricing\n```\n\n### Query the response result schema\n\n```bash\niris query service schema result\n```\n\n## iris query service params\n\nQuery values set as service parameters.\n\n```bash\niris query service params [flags]\n```\n"
  },
  {
    "path": "docs/cli-client/slashing.md",
    "content": "# Slashing\n\nSlashing module can unjail validator previously jailed for downtime\n\n## Available Commands\n\n| Name                                                | Description                                     |\n| --------------------------------------------------- | ----------------------------------------------- |\n| [unjail](#iris-tx-slashing-unjail)                  | Unjail validator previously jailed for downtime |\n| [params](#iris-query-slashing-params)               | Query the current slashing parameters           |\n| [signing-info](#iris-query-slashing-signing-info)   | Query a validator's signing information         |\n| [signing-infos](#iris-query-slashing-signing-infos) | Query signing information of all validators     |\n\n## iris tx slashing unjail\n\nUnjail validator previously jailed for downtime.\n\n```bash\niris tx slashing unjail [flags]\n```\n\n## iris query slashing params\n\nQuery the current slashing parameters.\n\n```bash\niris query slashing params  [flags]\n```\n\n## iris query slashing signing-info\n\nQuery a validator's signing information.\n\n```bash\niris query slashing signing-info [validator-conspub] [flags]\n```\n\n## iris query slashing signing-infos\n\nQuery signing information of all validators.\n\n```bash\niris query slashing signing-infos [flags]\n```\n"
  },
  {
    "path": "docs/cli-client/staking.md",
    "content": "# Staking\n\nStaking module provides a set of subcommands to query staking state and send staking transactions.\n\n## Available Commands\n\n| Name                                                                         | Description                                                                                   |\n| ---------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |\n| [validator](#iris-query-staking-validator)                                   | Query a validator                                                                             |\n| [validators](#iris-query-staking-validators)                                 | Query for all validators                                                                      |\n| [delegation](#iris-query-staking-delegation)                                 | Query a delegation based on address and validator address                                     |\n| [delegations](#iris-query-staking-delegations)                               | Query all delegations made from one delegator                                                 |\n| [delegations-to](#iris-query-staking-delegations-to)                         | Query all delegations to one validator                                                        |\n| [unbonding-delegation](#iris-query-staking-unbonding-delegation)             | Query an unbonding-delegation record based on delegator and validator address                 |\n| [unbonding-delegations](#iris-query-staking-unbonding-delegations)           | Query all unbonding-delegations records for one delegator                                     |\n| [unbonding-delegations-from](#iris-query-staking-unbonding-delegations-from) | Query all unbonding delegatations from a validator                                            |\n| [redelegations-from](#iris-query-staking-redelegations-from)                 | Query all outgoing redelegatations from a validator                                           |\n| [redelegation](#iris-query-staking-redelegation)                             | Query a redelegation record based on delegator and a source and destination validator address |\n| [redelegations](#iris-query-staking-redelegations)                           | Query all redelegations records for one delegator                                             |\n| [pool](#iris-query-staking-pool)                                             | Query the current staking pool values                                                         |\n| [params](#iris-query-staking-params)                                         | Query the current staking parameters information                                              |\n| [historical-info](#iris-query-staking-historical-info)                       | Query historical info at given height                                                         |\n| [create-validator](#iris-tx-staking-create-validator)                        | Create new validator initialized with a self-delegation to it                                 |\n| [edit-validator](#iris-tx-staking-edit-validator)                            | Edit existing validator account                                                               |\n| [delegate](#iris-tx-staking-delegate)                                        | Delegate liquid tokens to an validator                                                        |\n| [unbond](#iris-tx-staking-unbond)                                            | Unbond shares from a validator                                                                |\n| [redelegate](#iris-tx-staking-redelegate)                                    | Redelegate illiquid tokens from one validator to another                                      |\n\n## iris query staking validator\n\n### Query a validator by validator address\n\n```bash\niris query staking validator <iva...>\n```\n\n## iris query staking validators\n\n### Query all validators\n\n```bash\niris query staking validators\n```\n\n## iris query staking delegation\n\nQuery a delegation based on delegator address and validator address.\n\n```bash\niris query staking delegation [delegator-addr] [validator-addr]\n```\n\n### Query a delegation\n\n```bash\niris query staking delegation <iaa...> <iva...>\n```\n\nExample Output:\n\n```bash\nDelegation:\n  Delegator:  iaa13lcwnxpyn2ea3skzmek64vvnp97jsk8qrcezvm\n  Validator:  iva15grv3xg3ekxh9xrf79zd0w077krgv5xfzzunhs\n  Shares:     1.0000000000000000000000000000\n  Height:     26\n```\n\n## iris query staking delegations\n\nQuery all delegations delegated from one delegator.\n\n```bash\niris query staking delegations [delegator-address] [flags]\n```\n\n### Query all delegations of a delegator\n\n```bash\niris query staking delegations <iaa...>\n```\n\n## iris query staking delegations-to\n\nQuery all delegations to one validator.\n\n```bash\niris query staking delegations-to [validator-address] [flags]\n```\n\n### Query all delegations to one validator\n\n```bash\niris query staking delegations-to <iva...>\n```\n\nExample Output:\n\n```bash\nDelegation:\n  Delegator:  iaa13lcwnxpyn2ea3skzmek64vvnp97jsk8qrcezvm\n  Validator:  iva1yclscskdtqu9rgufgws293wxp3njsesxxlnhmh\n  Shares:     100.0000000000000000000000000000\n  Height:     0\nDelegation:\n  Delegator:  iaa1td4xnefkthfs6jg469x33shzf578fed6n7k7ua\n  Validator:  iva1yclscskdtqu9rgufgws293wxp3njsesxxlnhmh\n  Shares:     1.0000000000000000000000000000\n  Height:     26\n```\n\n## iris query staking unbonding-delegation\n\nQuery an unbonding-delegation record based on delegator and validator address.\n\n```bash\niris query staking unbonding-delegation [delegator-addr] [validator-addr] [flags]\n```\n\n### Query an unbonding delegation record\n\n```bash\niris query staking unbonding-delegation <iaa...> <iva...>\n```\n\n## iris query staking unbonding-delegations\n\n### Query all unbonding delegations records of a delegator\n\n```bash\niris query staking unbonding-delegations <iaa...>\n```\n\n## iris query staking unbonding-delegations-from\n\n### Query all unbonding delegations from a validator\n\n```bash\niris query staking unbonding-delegations-from <iva...>\n```\n\n## iris query staking redelegations-from\n\nQuery all outgoing redelegations of a validator\n\n```bash\niris query staking redelegations-from [validator-address] [flags]\n```\n\n### Query all outgoing redelegatations of a validator\n\n```bash\niris query staking redelegations-from <iva...>\n```\n\n## iris query staking redelegation\n\nQuery a redelegation record based on delegator and source validator address and destination validator address.\n\n```bash\niris query staking redelegation [delegator-addr] [src-validator-addr] [dst-validator-addr] [flags]\n```\n\n### Query a redelegation record\n\n```bash\niris query staking redelegation <iaa...> <iva...> <iva...>\n```\n\n## iris query staking redelegations\n\n### Query all redelegations records of a delegator\n\n```bash\niris query staking redelegations <iaa...>\n```\n\n## iris query staking pool\n\n### Query the current staking pool values\n\n```bash\niris query staking pool\n```\n\nExample Output:\n\n```bash\nPool:\n  Loose Tokens:   1409493892.759816067399143966\n  Bonded Tokens:  590526409.65743521209068061\n  Token Supply:   2000020302.417251279489824576\n  Bonded Ratio:   0.2952602076\n```\n\n## iris query staking params\n\n### Query the current staking parameters information\n\n```bash\niris query staking params\n```\n\n## iris query staking historical-info\n\n### Query historical info at given height\n\n```bash\niris query staking historical-info <height>\n```\n\n## iris tx staking create-validator\n\nSend a transaction to apply to be a validator and delegate a certain amount of iris to it.\n\n```bash\niris tx staking create-validator [flags]\n```\n\n**Flags:**\n\n| Name, shorthand              | type   | Required | Default | Description                                                                                      |\n| ---------------------------- | ------ | -------- | ------- | ------------------------------------------------------------------------------------------------ |\n| --amount                     | string | Yes      |         | Amount of coins to bond                                                                          |\n| --commission-rate            | float  | Yes      | 0.0     | The initial commission rate percentage                                                           |\n| --commission-max-rate        | float  |          | 0.0     | The maximum commission rate percentage                                                           |\n| --commission-max-change-rate | float  |          | 0.0     | The maximum commission change rate percentage (per day)                                          |\n| --min-self-delegation        | string |          |         | The minimum self delegation required on the validator                                            |\n| --details                    | string |          |         | Optional details                                                                                 |\n| --genesis-format             | bool   |          | false   | Export the transaction in gen-tx format; it implies --generate-only                              |\n| --identity                   | string |          |         | Optional identity signature (ex. UPort or Keybase)                                               |\n| --ip                         | string |          |         | Node's public IP. It takes effect only when used in combination with                             |\n| --node-id                    | string |          |         | The node's ID                                                                                    |\n| --moniker                    | string | Yes      |         | Validator name                                                                                   |\n| --pubkey                     | string | Yes      |         | Go-Amino encoded hex PubKey of the validator. For Ed25519 the go-amino prepend hex is 1624de6220 |\n| --website                    | string |          |         | Optional website                                                                                 |\n| --security-contact           | string |          |         | The validator's (optional) security contact email                                                |\n\n### Create a validator\n\n```bash\niris tx staking create-validator --chain-id=irishub --from=<key-name> --fees=0.3iris --pubkey=<validator-pubKey> --commission-rate=0.1 --amount=100iris --moniker=<validator-name>\n```\n\n:::tip\nFollow the [Mainnet](../get-started/mainnet.md#create-validator) instructions to learn more.\n:::\n\n## iris tx staking edit-validator\n\nEdit an existing validator's settings, such as commission rate, name, etc.\n\n```bash\niris tx staking edit-validator [flags]\n```\n\n**Flags:**\n\n| Name, shorthand       | type   | Required | Default | Description                                           |\n| --------------------- | ------ | -------- | ------- | ----------------------------------------------------- |\n| --commission-rate     | float  |          | 0.0     | Commission rate percentage                            |\n| --moniker             | string |          |         | Validator name                                        |\n| --identity            | string |          |         | Optional identity signature (ex. UPort or Keybase)    |\n| --website             | string |          |         | Optional website                                      |\n| --details             | string |          |         | Optional details                                      |\n| --security-contact    | string |          |         | The validator's (optional) security contact email     |\n| --min-self-delegation | string |          |         | The minimum self delegation required on the validator |\n\n### Edit validator information\n\n```bash\niris tx staking edit-validator --from=<key-name> --chain-id=irishub --fees=0.3iris --commission-rate=0.10 --moniker=<validator-name>\n```\n\n### Upload validator avatar\n\nPlease refer to [How to upload my validator's logo to the Explorers](../concepts/validator-faq.md#how-to-upload-my-validator-s-logo-to-the-explorers)\n\n## iris tx staking delegate\n\nDelegate tokens to a validator.\n\n```bash\niris tx staking delegate [validator-addr] [amount] [flags]\n```\n\n```bash\niris tx staking delegate <iva...> <amount> --chain-id=irishub --from=<key-name> --fees=0.3iris\n```\n\n## iris tx staking unbond\n\nUnbond tokens from a validator.\n\n```bash\niris tx staking unbond [validator-addr] [amount] [flags]\n```\n\n### Unbond some tokens from a validator\n\n```bash\niris tx staking unbond <iva...> 10iris --from=<key-name> --chain-id=irishub --fees=0.3iris\n```\n\n## iris tx staking redelegate\n\nTransfer delegation from one validator to another.\n\n:::tip\nThere is no `unbonding time` during the redelegation, so you will not miss the rewards. But you can only redelegate once per validator, until a period (= `unbonding time`) exceed.\n:::\n\n```bash\niris tx staking redelegate [src-validator-addr] [dst-validator-addr] [amount] [flags]\n```\n\n### Redelegate some tokens to another validator\n\n```bash\niris tx staking redelegate <iva...> <iva...> 10iris --chain-id=irishub --from=<key-name> --fees=0.3iris\n```\n"
  },
  {
    "path": "docs/cli-client/status.md",
    "content": "# Status\n\nQuery node status\n\n**Flags:**\n\n| Name, shorthand | Default               | Description                                                | Required |\n| --------------- | --------------------- | ---------------------------------------------------------- | -------- |\n| --node, -n      | tcp://localhost:26657 | \\<host>:\\<port> to tendermint rpc interface for this chain |          |\n\n## Query node status\n\n```bash\niris status\n```\n\nExample Output:\n\n```json\n{\n    \"node_info\": {\n        \"protocol_version\": {\n            \"p2p\": \"7\",\n            \"block\": \"10\",\n            \"app\": \"0\"\n        },\n        \"id\": \"5e4f9d442a612566243f4b209752c73333a1511b\",\n        \"listen_addr\": \"tcp://0.0.0.0:26656\",\n        \"network\": \"test\",\n        \"version\": \"0.33.6\",\n        \"channels\": \"4020212223303800\",\n        \"moniker\": \"node0\",\n        \"other\": {\n            \"tx_index\": \"on\",\n            \"rpc_address\": \"tcp://0.0.0.0:26657\"\n        }\n    },\n    \"sync_info\": {\n        \"latest_block_hash\": \"5F22EDBAA0648FBAB6801ED5F553036E5B045606168A35839B20D55B9F6E06F3\",\n        \"latest_app_hash\": \"537897D31AFC0E8B0357E86EE18E112FC33038CE471E4C715C6C414A2ADB6761\",\n        \"latest_block_height\": \"3124\",\n        \"latest_block_time\": \"2020-08-27T03:00:51.338539Z\",\n        \"earliest_block_hash\": \"44452FEB0B8C1603EC62FC0336077B5159EA1574A0D01E88016225B8D3E38670\",\n        \"earliest_app_hash\": \"\",\n        \"earliest_block_height\": \"1\",\n        \"earliest_block_time\": \"2020-08-26T06:43:07.065305Z\",\n        \"catching_up\": false\n    },\n    \"validator_info\": {\n        \"address\": \"AEBCB30D923D8410B4DE616152ACCF4DB2376351\",\n        \"pub_key\": {\n            \"type\": \"tendermint/PubKeyEd25519\",\n            \"value\": \"LvMBCBylUBMyFWCZxh6AYymUvygUYNy8MKtZZeGe9xs=\"\n        },\n        \"voting_power\": \"100\"\n    }\n}\n```\n"
  },
  {
    "path": "docs/cli-client/tendermint.md",
    "content": "# Tendermint\n\nTendermint state querying subcommands\n\n## Available Commands\n\n| Name, shorthand                                   | Description                                              |\n| ------------------------------------------------- | -------------------------------------------------------- |\n| [show-address](#iris-tendermint-show-address)     | Shows this node's tendermint validator consensus address |\n| [show-node-id](#iris-tendermint-show-node-id)     | Show this node's ID                                      |\n| [show-validator](#iris-tendermint-show-validator) | Show this node's tendermint validator info               |\n| [version](#iris-tendermint-version)               | Print tendermint libraries' version                      |\n\n## iris tendermint show-address\n\n### Shows this node's tendermint validator consensus address\n\n```bash\niris tendermint show-address\n```\n\n## iris tendermint show-node-id\n\n显示此节点ID\n\n```bash\niris tendermint show-node-id\n```\n\n## iris tendermint show-validator\n\n```bash\niris tendermint show-validator\n```\n\n## iris tendermint version\n\n```bash\niris tendermint version\n```\n"
  },
  {
    "path": "docs/cli-client/token.md",
    "content": "# Token\n\nToken module allows you to manage assets on IRIS Hub\n\n## Available Commands\n\n| Name                                              | Description                                           |\n| ------------------------------------------------- | ----------------------------------------------------- |\n| [issue](#iris-tx-token-issue)                     | Issue a new token                                     |\n| [edit](#iris-tx-token-edit)                       | Edit an existing token                                |\n| [transfer](#iris-tx-token-transfer)               | Transfer the ownership of a token                     |\n| [mint](#iris-tx-token-mint)                       | Mint tokens to a specified address                    |\n| [burn](#iris-tx-token-burn)                       | Burn some tokens                                      |\n| [swap-fee](#iris-tx-token-swap-fee)               | Swap one token with another token                     |\n| [swap-from-erc20](#iris-tx-token-swap-from-erc20) | Swap native token from the corresponding ERC20 at 1:1 |\n| [swap-to-erc20](#iris-tx-token-swap-to-erc20)     | Swap native token to the corresponding ERC20 at 1:1   |\n| [token](#iris-query-token-token)                  | Query a token by symbol                               |\n| [tokens](#iris-query-token-tokens)                | Query tokens by owner                                 |\n| [fee](#iris-query-token-fee)                      | Query the token related fees                          |\n| [params](#iris-query-token-params)                | Query the token related params                        |\n| [total-burn](#iris-query-token-total-burn)        | Query the total amount of all burn tokens             |\n| [balances](#iris-query-token-balances)            | Query all the balances of an owner in special denom   |\n\n## iris tx token issue\n\nIssue a new token\n\n```bash\niris tx token issue [flags]\n```\n\n**Flags:**\n\n| Name, shorthand  | Type    | Required | Default       | Description                                                                                                                    |\n| ---------------- | ------- | -------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------ |\n| --name           | string  | Yes      |               | Name of the newly issued token, limited to 32 unicode characters, e.g. \"IRIS Network\"                                          |\n| --symbol         | string  | Yes      |               | The symbol of the token, length between 3 and 8, alphanumeric characters beginning with alpha, case insensitive                |\n| --initial-supply | uint64  | Yes      |               | The initial supply of this token. The amount before boosting should not exceed 100 billion.                                    |\n| --max-supply     | uint64  |          | 1000000000000 | The hard cap of this token, total supply can not exceed max supply. The amount before boosting should not exceed 1000 billion. |\n| --min-unit       | string  |          |               | The alias of minimum uint                                                                                                      |\n| --scale          | uint8   | Yes      |               | A token can have a maximum of 18 digits of decimal                                                                             |\n| --mintable       | boolean |          | false         | Whether this token could be minted(increased) after the initial issuing                                                        |\n\n### Issue a token\n\n```bash\niris tx token issue \\\n    --name=\"Kitty Token\" \\\n    --symbol=\"kitty\" \\\n    --min-unit=\"kitty\" \\\n    --scale=0 \\\n    --initial-supply=100000000000 \\\n    --max-supply=1000000000000 \\\n    --mintable=true \\\n    --from=<key-name> \\\n    --chain-id=<chain-id> \\\n    --fees=<fee>\n```\n\n### Send tokens\n\nYou can send any tokens you have just like [sending iris](./bank.md#iris-tx-bank-send)\n\n#### Send tokens\n\n```bash\niris tx bank send [from_key_or_address] [to_address] [amount] [flags]\n```\n\n## iris tx token edit\n\nEdit an existing token\n\n```bash\niris tx token edit [symbol] [flags]\n```\n\n**Flags:**\n\n| Name         | Type   | Required | Default | Description                                       |\n| ------------ | ------ | -------- | ------- | ------------------------------------------------- |\n| --name       | string |          |         | The token name, e.g. IRIS Network                 |\n| --max-supply | uint64 |          | 0       | The max supply of the token                       |\n| --mintable   | bool   |          | false   | Whether the token can be minted, default to false |\n\n`max-supply` should not be less than the current total supply\n\n### Edit Token\n\n```bash\niris tx token edit <symbol> --name=\"Cat Token\" --max-supply=100000000000 --mintable=true --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n## iris tx token transfer\n\nTransfer the ownership of a token\n\n```bash\niris tx token transfer [symbol] [flags]\n```\n\n**Flags:**\n\n| Name | Type   | Required | Default | Description           |\n| ---- | ------ | -------- | ------- | --------------------- |\n| --to | string | Yes      |         | The new owner address |\n\n### Transfer Token Owner\n\n```bash\niris tx token transfer <symbol> --to=<to> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n## iris tx token mint\n\nMint tokens to a specified address\n\n```bash\niris tx token mint [symbol] [flags]\n```\n\n**Flags:**\n\n| Name     | Type   | Required | Default | Description                                                             |\n| -------- | ------ | -------- | ------- | ----------------------------------------------------------------------- |\n| --to     | string |          |         | Address to which the token will be minted, default to the owner address |\n| --amount | uint64 | Yes      | 0       | Amount of the tokens to be minted                                       |\n\n## iris tx token swap-fee\n\nSwap one token with another token. For example, this feature can be used to exchange `IRIS` for `ERIS`.\n\n```bash\niris tx token swap-fee [fee_paid] --to [reciever]\n```\n\n**Flags:**\n\n| Name | Type   | Required | Default | Description                               |\n| ---- | ------ | -------- | ------- | ----------------------------------------- |\n| --to | string | Yes      |         | Address to which the token will be swaped |\n\n### Mint Token\n\n```bash\niris tx token mint <symbol> --amount=<amount> --to=<to> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n## iris tx token burn\n\nBurn some tokens\n\n```bash\niris tx token burn [symbol] [flags]\n```\n\n**Flags:**\n\n| Name     | Type   | Required | Default | Description                   |\n| -------- | ------ | -------- | ------- | ----------------------------- |\n| --amount | uint64 | Yes      | 0       | Amount of the tokens to burnt |\n\n### Burn Token\n\n```bash\niris tx token burn <symbol> --amount=<amount> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n## iris tx token swap-from-erc20\n\nSwap native token from the corresponding ERC20 at 1:1\n\n```bash\niris tx token swap-from-erc20 [wanted_amount] [flags]\n```\n\n**Flags:**\n\n| Name | Type   | Required | Default | Description                                      |\n| ---- | ------ | -------- | ------- | ------------------------------------------------ |\n| --to | string | false    | \"\"      | Eth address to which the token is to be received |\n\n### Swap native token from erc20\n\n```bash\niris tx token swap-from-erc20 <wanted_amount> --to=<eth_address> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n## iris tx token swap-to-erc20\n\nSwap native token to the corresponding ERC20 at 1:1\n\n```bash\niris tx token swap-to-erc20 [paid_amount] [flags]\n```\n\n**Flags:**\n\n| Name | Type   | Required | Default | Description                                      |\n| ---- | ------ | -------- | ------- | ------------------------------------------------ |\n| --to | string | false    | \"\"      | Eth address to which the token is to be received |\n\n### Swap native token to erc20\n\n```bash\niris tx token swap-to-erc20 <paid_amount> --to=<eth_address> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n## iris query token token\n\nQuery a token by symbol\n\n```bash\niris query token token [denom] [flags]\n```\n\n### Query a token\n\n```bash\niris query token token <denom>\n```\n\n## iris query token tokens\n\nQuery tokens by the owner which is optional\n\n```bash\niris query token tokens [owner] [flags]\n```\n\n### Query all tokens\n\n```bash\niris query token tokens\n```\n\n### Query tokens with the specified owner\n\n```bash\niris query token tokens <owner>\n```\n\n## iris query token fee\n\nQuery the token related fees, including token issuance and minting\n\n```bash\niris query token fee [symbol] [flags]\n```\n\n### Query fees of issuing and minting a token\n\n```bash\niris query token fee kitty\n```\n\n## iris query token params\n\nQuery token module params\n\n```bash\niris query token params [flags]\n```\n\n### Query token module params\n\n```bash\niris query token params\n```\n\n## iris query token total-burn\n\nQuery the total amount of all burn tokens\n\n```bash\niris query token total-burn [flags]\n```\n\n### Query the total amount of all burn tokens\n\n```bash\niris query token total-burn\n```\n\n## iris query token balances\n\nQuery all the balances of an owner in special denom\n\n```bash\niris query token balances [addr] [denom] [flags]\n```\n\n### Query all the balances of an owner in special denom\n\n```bash\niris query token balances <owner> <denom> \n```\n"
  },
  {
    "path": "docs/cli-client/tx.md",
    "content": "# Tx\n\nTx module allows you to sign or broadcast transactions\n\n## Available Commands\n\n| Name                            | Description                                                                           |\n| ------------------------------- | ------------------------------------------------------------------------------------- |\n| [sign](#iris-tx-sign)           | Sign transactions generated offline                                                   |\n| [broadcast](#iris-tx-broadcast) | Broadcast a signed transaction to the network                                         |\n| [multisign](#iris-tx-multisign) | Sign the same transaction by multiple accounts                                        |\n| [tx](#iris-query-tx)            | Query for a transaction by hash in a committed block                                  |\n| [txs](#iris-query-txs)          | Search for transactions that match the exact given events where results are paginated |\n\n## iris tx sign\n\nSign transactions in generated offline file. The file created with the --generate-only flag.\n\n```bash\niris tx sign <file> [flags]\n```\n\n### Flags\n\n| Name, shorthand  | Type   | Required | Default | Description                                                                        |\n| ---------------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------- |\n| --append         | bool   | true     | true    | Attach a signature to an existing signature.                                       |\n| --from           | string | true     |         | Key name for signature                                                             |\n| --offline        | bool   | true     |         | Offline mode.                                                                      |\n| --signature-only | bool   | true     |         | Print only the generated signature, then exit                                      |\n| --multisig       | string |          | true    | Address of the multisig account on behalf of which the transaction shall be signed |\n\n### Generate an offline tx\n\n:::tip\nYou can generate any type of txs offline by appending the flag `--generate-only`\n:::\n\nWe use a transfer tx in the following examples:\n\n```bash\niris tx bank send iaa1w9lvhwlvkwqvg08q84n2k4nn896u9pqx93velx iaa15uys54epmd2xzhcn32szps56wvev40tt908h62 10iris --chain-id=irishub --generate-only\n```\n\nThe `unsigned.json` should look like:\n\n```json\n{\n    \"type\": \"cosmos-sdk/StdTx\",\n    \"value\": {\n        \"msg\": [\n            {\n                \"type\": \"cosmos-sdk/MsgSend\",\n                \"value\": {\n                    \"from_address\": \"iaa1w9lvhwlvkwqvg08q84n2k4nn896u9pqx93velx\",\n                    \"to_address\": \"iaa15uys54epmd2xzhcn32szps56wvev40tt908h62\",\n                    \"amount\": [\n                        {\n                            \"denom\": \"iris\",\n                            \"amount\": \"10\"\n                        }\n                    ]\n                }\n            }\n        ],\n        \"fee\": {\n            \"amount\": [],\n            \"gas\": \"200000\"\n        },\n        \"signatures\": null,\n        \"memo\": \"\"\n    }\n}\n```\n\n### Sign tx offline\n\n```bash\niris tx sign unsigned.json --name=<key-name> > signed.tx\n```\n\nThe `signed.json` should look like:\n\n```json\n{\n    \"type\": \"auth/StdTx\",\n    \"value\": {\n        \"msg\": [\n            {\n                \"type\": \"cosmos-sdk/Send\",\n                \"value\": {\n                    \"inputs\": [\n                        {\n                            \"address\": \"iaa106nhdckyf996q69v3qdxwe6y7408pvyvyxzhxh\",\n                            \"coins\": [\n                                {\n                                    \"denom\": \"uiris\",\n                                    \"amount\": \"1000000\"\n                                }\n                            ]\n                        }\n                    ],\n                    \"outputs\": [\n                        {\n                            \"address\": \"iaa1893x4l2rdshytfzvfpduecpswz7qtpstevr742\",\n                            \"coins\": [\n                                {\n                                    \"denom\": \"uiris\",\n                                    \"amount\": \"1000000\"\n                                }\n                            ]\n                        }\n                    ]\n                }\n            }\n        ],\n        \"fee\": {\n            \"amount\": [\n                {\n                    \"denom\": \"uiris\",\n                    \"amount\": \"4000000\"\n                }\n            ],\n            \"gas\": \"200000\"\n        },\n        \"signatures\": [\n            {\n                \"pub_key\": {\n                    \"type\": \"tendermint/PubKeySecp256k1\",\n                    \"value\": \"Auouudrg0P86v2kq2lykdr97AJYGHyD6BJXAQtjR1gzd\"\n                },\n                \"signature\": \"sJewd6lKjma49rAiGVfdT+V0YYerKNx6ZksdumVCvuItqGm24bEN9msh7IJ12Sil1lYjqQjdAcjVCX/77FKlIQ==\",\n                \"account_number\": \"0\",\n                \"sequence\": \"3\"\n            }\n        ],\n        \"memo\": \"test\"\n    }\n}\n```\n\nNote the `signature` in the `signed.json` should no longer be empty after signing.\n\nNow it's ready to [broadcast the signed tx](#iris-tx-broadcast) to the IRIS Hub.\n\n## iris tx broadcast\n\nThis command is used to broadcast an offline signed transaction to the network.\n\n### Broadcast offline signed transaction\n\n```bash\niris tx broadcast signed.json --chain-id=irishub\n```\n\n## iris tx multisign\n\nSign a transaction by multiple accounts. The tx could be broadcasted only when the number of signatures meets the multisig-threshold.\n\n```bash\niris tx multisign <file> <key-name> <[signature]...> [flags]\n```\n\n### Generate an offline tx by multisig key\n\n:::tip\nNo multisig key? [Create one](keys.md#create-a-multisig-key)\n:::\n\n```bash\niris tx bank send <from> <to> 10iris --fees=0.3iris --chain-id=irishub --from=<multisig-keyname> --generate-only > unsigned.json\n```\n\n### Sign the multisig tx\n\n#### Query the multisig address\n\n```bash\niris keys show <multisig-keyname>\n```\n\n#### Sign the `unsigned.json`\n\nAssume the multisig-threshold is 2, here we sign the `unsigned.json` by 2 of the signers\n\nSign the tx by signer-1:\n\n```bash\niris tx sign unsigned.json --from=<signer-keyname-1> --chain-id=irishub --multisig=<multisig-address> --signature-only > signed-1.json\n```\n\nSign the tx by signer-2:\n\n```bash\niris tx sign unsigned.json --from=<signer-keyname-2> --chain-id=irishub --multisig=<multisig-address> --signature-only > signed-2.json\n```\n\n#### Merge the signatures\n\nMerge all the signatures into `signed.json`\n\n```bash\niris tx multisign --chain-id=irishub unsigned.json <multisig-keyname> signed-1.json signed-2.json > signed.json\n```\n\nNow you can [broadcast the signed tx](#iris-tx-broadcast).\n\n## iris query tx\n\n```bash\niris query tx [hash] [flags]\n```\n\n## iris query txs\n\n```bash\niris query txs --events 'message.sender=<iaa...>&message.action=xxxx' --page 1 --limit 30\n```\n\nAmong the possible values of `message.action`:\n\n| module       | Msg                                       | action               |\n| ------------ | ----------------------------------------- | -------------------- |\n| bank         | cosmos-sdk/MsgSend                        | transfer             |\n|              | cosmos-sdk/MsgMultiSend                   | transfer             |\n| distribution | cosmos-sdk/MsgModifyWithdrawAddress       | set_withdraw_address |\n|              | cosmos-sdk/MsgWithdrawValidatorCommission | withdraw_commission  |\n|              | cosmos-sdk/MsgWithdrawDelegatorReward     | withdraw_rewards     |\n| gov          | cosmos-sdk/MsgSubmitProposal              | submit_proposal      |\n|              | cosmos-sdk/MsgDeposit                     | proposal_deposit     |\n|              | cosmos-sdk/MsgVote                        | proposal_vote        |\n| stake        | cosmos-sdk/MsgCreateValidator             | create_validator     |\n|              | cosmos-sdk/MsgEditValidator               | edit_validator       |\n|              | cosmos-sdk/MsgDelegate                    | delegate             |\n|              | cosmos-sdk/MsgBeginRedelegate             | redelegate           |\n|              | cosmos-sdk/MsgUndelegate                  | unbond               |\n| slashing     | cosmos-sdk/MsgUnjail                      | unjail               |\n| coinswap     | irismod/MsgSwapOrder                      | swap                 |\n|              | irismod/MsgAddLiquidity                   | add_liquidity        |\n|              | irismod/MsgRemoveLiquidity                | remove_liquidity     |\n| htlc         | irismod/MsgCreateHTLC                     | create_htlc          |\n|              | irismod/MsgClaimHTLC                      | claim_htlc           |\n|              | irismod/MsgRefundHTLC                     | refund_htlc          |\n| nft          | irismod/MsgIssueDenom                     | issue_denom          |\n|              | irismod/MsgMintNFT                        | mint_nft             |\n|              | irismod/MsgBurnNFT                        | burn_nft             |\n|              | irismod/MsgTransferNFT                    | transfer_nft         |\n|              | irismod/MsgEditNFT                        | edit_nft             |\n| record       | irismod/MsgCreateRecord                   | create_record        |\n| token        | irismod/MsgIssueToken                     | issue_token          |\n|              | irismod/MsgEditToken                      | edit_token           |\n|              | irismod/MsgTransferTokenOwner             | transfer_token_owner |\n|              | irismod/MsgMintToken                      | mint_token           |\n"
  },
  {
    "path": "docs/cli-client/upgrade.md",
    "content": "# Upgrade\n\nThis module provides the basic functions of software version upgrade.\n\n## Available Commands\n\n| Name                                                                            | Description                                           |\n| ------------------------------------------------------------------------------- | ----------------------------------------------------- |\n| [software-upgrade](#iris-tx-gov-submit-proposal-software-upgrade)               | Submit a software upgrade proposal                    |\n| [cancel-software-upgrade](#iris-tx-gov-submit-proposal-cancel-software-upgrade) | Cancel the current upgrade proposal                   |\n| [plan](#iris-query-upgrade-plan)                                                | Query the software upgrade plan currently in progress |\n| [applied](#iris-query-upgrade-applied)                                          | Query the executed software upgrade plan              |\n\n## iris tx gov submit-proposal software-upgrade\n\nInitiate a software upgrade proposal through the `Gov` module.\n\n```bash\niris tx gov submit-proposal software-upgrade <plan-name> [flags]\n```\n\n**Flags:**\n\n| Name, shorthand  | Type   | Required | Default | Description                                                                                                            |\n| ---------------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------- |\n| --deposit        | Coins  |          |         | deposit of proposal                                                                                                    |\n| --title          | string |          |         | title of proposal                                                                                                      |\n| --description    | string |          |         | description of proposal                                                                                                |\n| --upgrade-height | uint64 |          |         | The height at which the upgrade must happen (not to be used together with `--upgrade-time`)                            |\n| --upgrade-time   | Time   |          |         | The time at which the upgrade must happen (ex. 2006-01-02T15:04:05Z) (not to be used together with `--upgrade-height`) |\n| --upgrade-info   | string |          |         | Optional info for the planned upgrade such as commit hash, etc.                                                        |\n\n:::tip\nIf you need to support [cosmovisor](#https://github.com/cosmos/cosmos-sdk/tree/master/cosmovisor) to automatically perform software upgrades, `--upgrade-info` needs to use a fixed format, such as:\n\n```json\n{\n    \"binaries\": {\n        \"linux/amd64\":\"https://example.com/irishub.zip?checksum=sha256:aec070645fe53ee3b3763059376134f058cc337247c978add178b6ccdfb0019f\"\n    }\n}\n```\n\n:::\n\n## iris tx gov submit-proposal cancel-software-upgrade\n\nSubmit cancellation of the currently ongoing software upgrade proposal through the `Gov` module.\n\n```bash\niris tx gov submit-proposal cancel-software-upgrade [flags]\n```\n\n**Flags:**\n\n| Name, shorthand | Type   | Required | Default | Description             |\n| --------------- | ------ | -------- | ------- | ----------------------- |\n| --deposit       | Coins  |          |         | deposit of proposal     |\n| --title         | string |          |         | title of proposal       |\n| --description   | string |          |         | description of proposal |\n\n## iris query upgrade plan\n\nQuery the currently ongoing software upgrade plan.\n\n```bash\niris query upgrade plan [flags]\n```\n\n## iris query upgrade applied\n\nQuery the software upgrade plan that has been executed recently.\n\n```bash\niris query upgrade applied <upgrade-name>\n```\n"
  },
  {
    "path": "docs/concepts/bech32-prefix.md",
    "content": "---\norder: 5\n---\n\n# Bech32 on IRIShub\n\nBech32 is a new Bitcoin address format proposed by Pieter Wuille and Greg Maxwell. Besides Bitcoin addresses, Bech32 can encode any short binary data. In the IRIS network, keys and addresses may refer to a number of different roles in the network like accounts, validators etc. The IRIS network is designed to use the Bech32 address format to provide robust integrity checks on data. The human readable part(HRP) makes it more efficient to read and the users could see error messages. More details in [bip-0173](https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki)\n\n## Human Readable Part Table\n\n| HRP | Definition                              |\n| --- | --------------------------------------- |\n| iaa | IRIShub Account Address                 |\n| iap | IRIShub Account Public Key              |\n| iva | IRIShub Validator's Operator Address    |\n| ivp | IRIShub Validator's Operator Public Key |\n| ica | Tendermint Consensus Address            |\n| icp | Tendermint Consensus Public Key         |\n\n## Encoding\n\nNot all interfaces to IRIShub users should be exposed as bech32 interfaces. Many addresses are still in hex or base64 encoded form.\n\nTo covert between other binary representation of addresses and keys, it is important to first apply the Amino encoding process before bech32 encoding.\n\n## Account Key Example\n\nAccount Key, aka. [Application Key](validator-faq.md#application-key). Once you create a new address, you should see the following:\n\n```bash\nNAME:    TYPE:           ADDRESS:                                PUBKEY:\ntest1    local    iaa18ekc4dswwrh2a6lfyev4tr25h5y76jkpclyxkz    iap1addwnpepqgxa40ww28uy9q46gg48g6ulqdzwupyjcwfumgfjpvz7krmg5mrnwk5xq9l\n```\n\nThis means you have created a new address `iaa18ekc4dswwrh2a6lfyev4tr25h5y76jkpclyxkz`, with the HRP `iaa`. And its public key could be encoded into `iap1addwnpepqgxa40ww28uy9q46gg48g6ulqdzwupyjcwfumgfjpvz7krmg5mrnwk5xq9l`, with the HRP `iap`.\n\n## Validator Key Example\n\nValidator Key, aka. [Tendermint Key](validator-faq.md#tendermint-key). A Tendermint Consensus Public key is generated when the node is created with  `iris init`.\nYou can get this value with\n\n```bash\niris tendermint show-validator --home=<iris-home>\n```\n\nExample Output:\n\n```bash\nicp1zcjduepqzuz420weqehs3mq0qny54umfk5r78yup6twtdt7mxafrprms5zqsjeuxvx\n```\n"
  },
  {
    "path": "docs/concepts/fee.md",
    "content": "# Fee Model\n\nSpecify the maximum fee you want to pay by `--fee`. Gas is the unit used to measure how many resources needed to execute the transaction. Specify the maximum gas limit by `-—gas`. If the maximum gas is too small, it won't be enough for executing the transaction. If the fee is too low, fee paid for each unit of gas will be less than the minimum gas-price and validators won't execute the transaction neither. The fee(minimum unit)/gas must be greater than 6*10^4 uiris. We recommend that you set your maximum gas to 50000 and set your maximum fee to 0.3iris. Fee will be consumed according to actual gas used and spare fee will be reimbursed to users.\n\n:::tip\nCertain types of transactions may consume more gas (e.g. creating validators), so it is recommended to set `--gas=100000 --fees=0.6iris` to ensure the smooth execution of transactions.\n:::\n\n## Fee\n\nTo secure their own validator node and maintain the availability of blockchain network, validators in IRIShub need a lot of equipments and resources. Thus, every transactions in IRIShub should pay some fee to validators. The parameter in commands is used to specify the maximum fee the user wants to pay for their transaction.\n\n## Gas\n\nThe resources needed for every transaction vary by different type of transactions. For example, only a few computations, queries & modifies are needed for the transfer transaction. But more computations, queries & modifies are needed for creating a validator. Gas is the unit used to measure how many resources needed to execute the transaction. We list the gas needed for some typical operations in the below:\n\n| operations                          | gas needed                                                                                |\n| ----------------------------------- | ----------------------------------------------------------------------------------------- |\n| writing the tx to the database      | 10 * the size of the transaction data (in bytes)                                          |\n| for reading some data from database | 10 + ln(data_length)/ln(1.02), data_length is the length of the read data(in bytes)       |\n| writing some data to database       | 10 + 10 * ln(data_length)/ln(1.02), data_length is the length of the write data(in bytes) |\n| signature verification              | 100                                                                                       |\n\nThe total gas needed for executing the transaction is the sum of gas needed for every operation performed during executing the transaction. The user should specify the maximum gas by `--gas` parameter. If the maximum gas is not enough for executing the transaction, the transaction won't be executed successfully and all the fee will be returned to the user's account. After the transaction being executed successfully, fee will deduct according to gas used. The deducted fee will be `maximum-fee * gas-used / maximum-gas` and left fee will be returned to the user. Gas price is equal to `maximum-fee / maximum-gas` and stands for fee that the user wants to pay for each unit of gas. To keep the fee set in a reasonable range, we set a minimum limit for gas price: `6*10^(-6) iris/gas`, the transaction won't be executed if the gas price is less than this value.\n\nExample\n\n```bash\niris tx bank send <from-address> <to-address>  1iris --fees=0.3iris --gas=50000 --chain-id=irishub --from=<key-name>\n```\n\nThis example is a transfer transaction. The maximum fee `--fee` is set to be 0.3iris and the maximum gas `--gas` is set to be 50000. Therefore, the gas price here is 0.000006iris/Gas. Suppose that 10000 gas is used to execute the transaction, then 0.06iris will be paid to validators and left 0.24iris will be refunded to user.\n"
  },
  {
    "path": "docs/concepts/general-concepts.md",
    "content": "---\norder: 1\n---\n\n# General Concepts\n\n## IRIShub Node Types\n\n### Full Node\n\nA full-node is a program that fully validates transactions and blocks of a blockchain. It is distinct from a light-node that only processes block headers and a small subset of transactions. Running a full-node requires more resources than a light-node but is necessary in order to be a validator. In practice, running a full-node only implies running a non-compromised and up-to-date version of the software with low network latency and without downtime.\n\n### Validator Node\n\nThe [IRIS Hub](../get-started/intro.md#iris-hub) is based on [Cosmos SDK](https://cosmos.network/docs/intro/) and [Tendermint](https://tendermint.com/docs/introduction/what-is-tendermint.html), which relies on a set of validators to secure the network. The role of validators is to run a full-node and participate in consensus by broadcasting votes which contain cryptographic signatures signed by their private keys. Validators commit new blocks to the blockchain and receive revenue in exchange for their work. They must also participate in governance by voting on proposals. Validators are weighted according to their total stake.\n\n### Validator Candidate Node\n\nOnly top 100 bonded full nodes can become validator nodes, the rest will become candidates. The situation will change as delegation amount changes.\n\n## IRIShub User Types\n\n### Validator Operator\n\nA validator operator is the only one who can operate the Validator's informations or participate in governance as the validator.\n\n### Delegator\n\nDelegators are IRIS holders who cannot, or do not want to run a validator themselves. IRIS holders can delegate IRIS to a validator and obtain a part of their revenue in exchange. They can earn as much as the validators and only need to pay some commission.\n\n### Profiler\n\nProfiler is a special type of user who can submit software upgrade/halt proposals\n\n### Trustee\n\nTrustee is a special type of user who will receive funds from CommunityTaxUsage proposals\n\n## IRIS Token\n\nThe IRIS hub has its own native token known as *IRIS*.  It is designed to serve three purposes in the network.\n\n- **Staking.** Similar to the ATOM token in the Cosmos Hub, the IRIS token will be used as a staking token to secure the PoS blockchain.\n- **Transaction Fee.** The IRIS token will also be used to pay fees for all transactions in the IRIS network.\n- **Service Fee.** It is required that service providers in the IRIS network charge service fees denominated in the IRIS token.\n\nIt is intended that the IRIS network will eventually support all whitelisted fee tokens from the Cosmos network, which can be used to pay the transaction fees and service fees.\n\n## Staking Rewards\n\nThe validator and its delegators can share the following rewards by proportion:\n\n- **Block Inflation**\n\n  Block Inflation exists to incentivize IRIS holders to stake. The more staked IRIS tokens are, more secure the network become(Read more about [Staking](../features/staking.md)).\n\n  Block Inflation will be [distributed every block](../features/mint.md). [Inflation rate](../features/mint.md) in IRIShub for the first year will be 4%.  **This ration could be adjusted by `parameter-change` proposals**.\n  In this way, loose IRIS will devalue year by year.\n\n- **Block Proposer Reward**\n\n  In IRIShub, the probability for being a proposer is proportional to the validator's bonded tokens. If one proposed block is finalized, the proposer gets extra rewards for it.\n\n- **Fee**\n\n  Each transaction needs a [fee](fee.md#fee) for compensating validators' work[Gas](fee.md#gas). These fees can be paid with IRIS and may later in any tokens which are whitelisted by the IRIShub's governance. Fees are distributed to validators in proportion to their stake. A minimum fee/gas ration is set in IRIShub.\n\nEach validator receives revenue in proportion to its total stake. However, before this revenue is distributed to its delegators, the validator can apply a commission for providing staking services.\n\n### Staking Rewards Calculation Formula\n\nThe following formulas are based on the current [IRIShub Mainnet Params](gov-params.md).\n\n#### Annual Rewards (ignore proposer rewards and fees)\n\n- **AnnualInflation =** `Base * InflationRate` (aka 2 billion * 4% = 80 million iris)\n- **ValidatorRewards =** `(AnnualInflation / BondedTokens) * (1 - CommunityTax) * (ValidatorSelfDelegation +  DelegatorsDelegation * ValidatorCommissionRate)`\n- **DelegatorRewards =** `(AnnualInflation / BondedTokens) * (1 - CommunityTax) * DelegatorSelfDelegation * (1 - ValidatorCommissionRate)`\n\n#### Block Rewards\n\n- **BlockInflation =** `AnnualInflation / (365*24*60*12)` (aka 12.68 iris)\n- **ProposerExtraRewards =** `(BaseProposerReward + BonusProposerReward * PrecommitPower/TotalVotingPower) * (BlockInflation + BlockCollectedFees)`\n- **BlockRewards =** `(BlockInflation + BlockCollectedFees) * (1 - CommunityTax) - ProposerExtraRewards`\n- **ValidatorTotalRewards =**\n  - Non-Proposer: `(BlockRewards / BondedTokens) * ValidatorBondedTokens`\n  - Proposer: `NonProposerValidatorTotalRewards + ProposerExtraRewards`\n- **Commission =** `ValidatorTotalRewards * ValidatorCommissionRate`\n- **ValidatorRewards =** `ValidatorTotalRewards * (ValidatorSelfDelegation / ValidatorBondedTokens) + Commission`\n- **DelegatorRewards =** `(ValidatorTotalRewards - Commission) * (DelegatorSelfDelegation / ValidatorBondedTokens)`\n\n## Validator Responsibilities\n\nValidators have two main responsibilities:\n\n- **Be able to constantly run a correct version of the software:** Validators need to make sure that their servers are always online and their private keys are not compromised.\n- **Actively participate in governance:** Validators are required to vote on every proposal.\n\nAdditionally, validators are expected to be active members of the community. They should always be up-to-date with the current state of the ecosystem so that they can easily adapt to any change.\n\n## Validator Risks\n\n- **Unavailability**: Validators are expected to keep signing votes for making new blocks. If a validator's signature has not been included in more than 30% of the last 34,560 blocks (which amounts to approximately 48 hours, assuming an average block-generating time of 5 seconds), this validator will get jailed and removed from current validatorset for 10 minutes, and their bonded tokens will get slashed by 0.03%.\n- **Double Sign**: If the protocol detects that a validator voted multiple different opinions about the same block (same height/round), or voted for different blocks at the same height/round, this validator will get jailed and removed from current validatorset forever. Their bonded tokens will get slashed by 1%.\n- **Censorship**: If the protocol detects that a proposer included invalid transactions in a block, this validator will get jailed and removed from current validatorset for 2 days.\n\nAll metrics mentioned can be adjusted by `parameter-change` proposals.\n"
  },
  {
    "path": "docs/concepts/genesis-file.md",
    "content": "---\norder: 4\n---\n\n# Genesis File\n\nThe Genesis file (~/.iris/config/genesis.json) is the basis for the entire network initialization, which contains most info for creating a Genesis block (such as ChainID, consensus params, app state, initial account balances, parameters for each module, and validators info).\nThe genesis file sets the initial parameters of any new IRIS network. Establishing a robust social consensus over the genesis file is critical to start a network.\n\nEach genesis state starts with a list of account balances. Social consensus on these account balances must be bootstrapped from some external process be it events on another blockchain to a token generation event.\n\n## Basic State\n\n* **genesis_time** The time to launch\n* **chain_id**     Blockchain’s ID\n* **initial_height** The height to init\n\n## Consensus Params\n\n* **block**\n  * `max_bytes` The max size of a block.\n  * `max_gas`  The maximum gas quantity of a block. Its default value is -1 which means no gas limit. If the accumulation of gas consumption exceeds the block gas limit, the transaction and all subsequent transactions in the same block will fail to deliver.\n  * `time_iota_ms` Minimum time increment between consecutive blocks (in milliseconds).\n* **evidence**   The lifecycle of deception evidence in the block\n  * `max_age_num_blocks` Max age of evidence, in blocks.\n  * `max_age_duration`  Max age of evidence, in time.\n  * `max_bytes` The maximum size of total evidence in bytes that can be committed in a single block.\n* **validator**  The information of validator\n  * `pub_key_types` The public key types validators can use.\n\n## App State\n\n* **auth** Params related to the system\n\n* **bank** Params related to bank\n\n* **capability** Params related to capability\n\n* **coinswap** Params related to coinswap\n\n* **crisis** Params related to crisis\n\n* **distribution** Params related to distribution & commission\n\n* **evidence** Params related to evidence\n\n* **genutil** Params related to genutil\n\n* **gov**  Params related to on-chain governance\n\n* **guardian** Params related to guardian\n\n* **htlc** Params related to  htlc\n\n* **ibc** Params related to  ibc\n\n* **nft** Params related to  nft\n\n* **mint**  Params related to inflation\n\n* **oracle**  Params related to oracle\n\n* **params**  Params related to params\n\n* **random**  Params related to random\n\n* **record**  Params related to record\n\n* **service**  Params related to service\n\n* **slashing**  Params related to slashing validators\n\n* **staking**  Params related to staking\n\n* **token**  Params related to token\n\n* **transfer**  Params related to transfer\n\n* **upgrade** Params related to upgrade\n\n* **vesting** Params related to vesting\n\nParameters that can be governed: [Gov Parameters](gov-params.md)\n\n## Gentxs\n\nGentxs contains the transaction set of creating validators in genesis block.\nThe IRIShub provides robust tools for bootstrapping the identities that will start chain via the `gen-tx` process. `gen-tx` or a Genesis Transaction is cryptographically signed transactions that are executed during chain initialization that generate a starting set of validators.\nThe gen-txs are artifacts that prove that the holders of accounts consent in launching the network and that they put capital at risk in the process.\n"
  },
  {
    "path": "docs/concepts/gov-params.md",
    "content": "# Gov Parameters\n\nIn IRIShub, there are some special parameters that can be modified through on-chain governance.\nAll the IRIS holders may participate in the on-chain governance. If the community is not satisfied with certain modifiable parameters, it is available to submit a [parameter-change](../features/governance.md#usage-scenario-of-parameter-change) proposal, and the params will be changed online automatically when the proposal passes.\n\n## Parameters in Auth\n\n| key                           | Description                                                     | Range                     | Current |\n| ----------------------------- | --------------------------------------------------------------- | ------------------------- | ------- |\n| `auth/MaxMemoCharacters`      | Maximum number of characters in the memo field in a transaction | (0, 18446744073709551615] | 256     |\n| `auth/TxSigLimit`             | Maximum number of signatures per transaction                    | (0, 18446744073709551615] | 7       |\n| `auth/TxSizeCostPerByte`      | The amount of gas consumed per byte of the transaction          | (0, 18446744073709551615] | 10      |\n| `auth/SigVerifyCostED25519`   | Gas spent on edd2519 algorithm signature verification           | (0, 18446744073709551615] | 590     |\n| `auth/SigVerifyCostSecp256k1` | Gas spent on secp256k1 algorithm signature verification         | (0, 18446744073709551615] | 1000    |\n\n## Parameters in Bank\n\n| key                       | Description                                        | Range        | Current |\n| ------------------------- | -------------------------------------------------- | ------------ | ------- |\n| `bank/SendEnabled`        | Tokens that support transfer                       |              | []      |\n| `bank/DefaultSendEnabled` | Whether to enable the transfer function by default | {true,false} | true    |\n\nDetails in [Bank](../features/bank.md)\n\n## Parameters in Coinswap\n\n| key            | Description | Range | Current              |\n| -------------- | ----------- | ----- | -------------------- |\n| `coinswap/Fee` | Swap Fee    | (0,1) | 0.003000000000000000 |\n\nDetails in [Coinswap](../features/coinswap.md)\n\n## Parameters in Distribution\n\n| key                                | Description                                       | Range        | Current |\n| ---------------------------------- | ------------------------------------------------- | ------------ | ------- |\n| `distribution/communitytax`        | Fees charged for withdrawal                       | [0, 1]       | 0.02    |\n| `distribution/baseproposerreward`  | The base reward rate of the block proposer        | [0, 1]       | 0.01    |\n| `distribution/bonusproposerreward` | Reward rate for block proposers                   | [0, 1]       | 0.04    |\n| `distribution/withdrawaddrenabled` | Whether to support setting the withdrawal address | {true,false} | true    |\n\nDetails in [Distribution](../features/distribution.md)\n\n## Parameters in Gov\n\n| key                 | Description                                      | Range                                                    | Current                                                                                                        |\n| ------------------- | ------------------------------------------------ | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |\n| `gov/depositparams` | Related parameters of the deposit mortgage phase | max_deposit_period:(0, 9223372036854775807]              | {\"min_deposit\": [{\"denom\": \"uiris\", \"amount\": \"1000000000\"}], \"max_deposit_period\": \"86400s\" }                 |\n| `gov/votingparams`  | Related parameters of the voting mortgage phase  | voting_period:(0, 9223372036854775807]                   | {\"voting_period\": \"432000s\"}                                                                                   |\n| `gov/tallyparams`   | Related parameters of the voting tally phase     | quorum:[0,1]<br>threshold:(0,1]<br/>veto_threshold:(0,1] | {\"quorum\":\"0.500000000000000000\",\"threshold\": \"0.500000000000000000\",\"veto_threshold\": \"0.330000000000000000\"} |\n\nDetails in [Governance](../features/governance.md)\n\n## Parameters in IBC\n\n| key                       | Description                             | Range        | Current                            |\n| ------------------------- | --------------------------------------- | ------------ | ---------------------------------- |\n| `ibc/AllowedClients`      | Clients that support ibc                |              | [\"06-solomachine\",\"07-tendermint\"] |\n| `transfer/SendEnabled`    | Whether to enable the transfer function | {true,false} | false                              |\n| `transfer/ReceiveEnabled` | Whether to enable the receive function  | {true,false} | false                              |\n\n## Parameters in Mint\n\n| key              | Description                 | Range    | Current |\n| ---------------- | --------------------------- | -------- | ------- |\n| `mint/Inflation` | Token issuance frequency    | [0, 0.2] | 0.04    |\n| `mint/MintDenom` | Denom of the token mintable |          | uiris   |\n\nDetails in [Mint](../features/mint.md)\n\n## Parameters in Service\n\n| key                            | Description                                                 | Range                     | Current                                     |\n| ------------------------------ | ----------------------------------------------------------- | ------------------------- | ------------------------------------------- |\n| `service/ArbitrationTimeLimit` | Maximum time of dispute resolution                          | (0, 9223372036854775807]  | 120h0m0s                                    |\n| `service/ComplaintRetrospect`  | Maximum time for submitting a dispute                       | (0, 9223372036854775807]  | 360h0m0s                                    |\n| `service/MaxRequestTimeout`    | Maximum number of blocks to wait for service invocation     | (0, 9223372036854775807]  | 100                                         |\n| `service/MinDepositMultiple`   | A multiple of the minimum deposit amount of service binding | (0, 9223372036854775807]  | 1000                                        |\n| `service/ServiceFeeTax`        | Tax rate of service fee                                     | [0, 1)                    | 0.05                                        |\n| `service/SlashFraction`        | Slash fraction                                              | [0, 1]                    | 0.001                                       |\n| `service/TxSizeLimit`          | The limit of the service tx size                            | (0, 18446744073709551615] | 4000                                        |\n| `service/MinDeposit`           | Minimum deposit amount                                      | amount: (0, +∞)           | [{\"denom\": \"uiris\",\"amount\": \"5000000000\"}] |\n| `service/BaseDenom`            | Token denom that must be used for deposits                  |                           | uiris                                       |\n\nDetails in [Service](../features/service.md)\n\n## Parameters in Slashing\n\n| key                                | Description                           | Range                     | Current |\n| ---------------------------------- | ------------------------------------- | ------------------------- | ------- |\n| `slashing/DowntimeJailDuration`    | Maximum downtime  (continuous)        | (0, 9223372036854775807]  | 10m0s   |\n| `slashing/MinSignedPerWindow`      | Minimum signature rate in each window | [0, 1]                    | 0.7     |\n| `slashing/SignedBlocksWindow`      | Sliding window for downtime slashing  | (0, 18446744073709551615] | 34560   |\n| `slashing/SlashFractionDoubleSign` | Penalty coefficient for double sign   | [0, 1]                    | 0.01    |\n| `slashing/SlashFractionDowntime`   | Penalty coefficient for downtime      | [0, 1]                    | 0.0003  |\n\nDetails in [Slashing](../features/slashing.md)\n\n## Parameters in Staking\n\n| key                         | Description                                                     | Range                    | Current  |\n| --------------------------- | --------------------------------------------------------------- | ------------------------ | -------- |\n| `staking/UnbondingTime`     | Mortgage redemption time                                        | (0, 9223372036854775807] | 1814400s |\n| `staking/MaxValidators`     | Maximum number of validators                                    | (0, 4294967295]          | 100      |\n| `staking/MaxEntries`        | The maximum number of unbinding/redelegation orders in progress | (0, 4294967295]          | 7        |\n| `staking/BondDenom`         | Bond denom                                                      |                          | uiris    |\n| `staking/HistoricalEntries` | Historical entries                                              | [0, 4294967295]          | 10000    |\n\nDetails in [Staking](../features/staking.md)\n\n## Parameters in Token\n\n| key                       | Description                       | Range           | Current                             |\n| ------------------------- | --------------------------------- | --------------- | ----------------------------------- |\n| `token/TokenTaxRate`      | Base rate for issuing/mint tokens | [0, 1]          | 0.4                                 |\n| `token/IssueTokenBaseFee` | Base token for issuing tokens     | amount: (0, +∞) | {\"denom\": \"iris\",\"amount\": \"60000\"} |\n| `token/MintTokenFeeRatio` | Rate for mint tokens              | [0, 1]          | 0.1                                 |\n\nDetails in [Token](../features/token.md)\n"
  },
  {
    "path": "docs/concepts/key.md",
    "content": "# Key\n\n## A note on HD wallet\n\nHD Wallets, originally specified in Bitcoin's [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki), are a special kind of wallet that let users derive any number of accounts from a single seed. To understand what that means, let us first define some terminology:\n\n- **Wallet**: Set of accounts obtained from a given seed.\n- **Account**: A pair of public key/private key.\n- **Private Key**: A private key is a secret piece of information used to sign messages. In the blockchain context, a private key identifies the owner of an account. The private key of a user should never be revealed to others.\n- **Public Key**: A public key is a piece of information obtained by applying a one-way mathematical function on a private key. From it, an address can be derived. A private key cannot be found from a public key.\n- **Address**: An address is a public string with a human-readable prefix that identifies an account. It is obtained by applying mathematical transformations to a public key.\n- **Digital Signature**: A digital signature is a piece of cryptographic information that proves the owner of a given private key approved of a given message without revealing the private key.\n- **Seed**: Same as Mnemonic.\n- **Mnemonic**: A mnemonic is a sequence of words that is used as seed to derive private keys. The mnemonic is at the core of each wallet. NEVER LOSE YOUR MNEMONIC. WRITE IT DOWN ON A PIECE OF PAPER AND STORE IT SOMEWHERE SAFE. IF YOU LOSE IT, THERE IS NO WAY TO RETRIEVE IT. IF SOMEONE GAINS ACCESS TO IT, THEY GAIN ACCESS TO ALL THE ASSOCIATED ACCOUNTS.\n\nAt the core of a HD wallet, there is a seed. From this seed, users can deterministically generate accounts. To generate an account from a seed, one-way mathematical transformations are applied. To decide which account to generate, the user specifies a `path`, generally an `integer` (`0`, `1`, `2`, ...).\n\nBy specifying `path` to be `0` for example, the Wallet will generate `Private Key 0` from the seed. Then, `Public Key 0` can be generated from `Private Key 0`.  Finally, `Address 0` can be generated from `Public Key 0`. All these steps are one way only, meaning the `Public Key` cannot be found from the `Address`, the `Private Key` cannot be found from the `Public Key`, ...\n\n```bash\n     Account 0                         Account 1                         Account 2\n\n+------------------+              +------------------+               +------------------+\n|                  |              |                  |               |                  |\n|    Address 0     |              |    Address 1     |               |    Address 2     |\n|        ^         |              |        ^         |               |        ^         |\n|        |         |              |        |         |               |        |         |\n|        |         |              |        |         |               |        |         |\n|        |         |              |        |         |               |        |         |\n|        +         |              |        +         |               |        +         |\n|  Public key 0    |              |  Public key 1    |               |  Public key 2    |\n|        ^         |              |        ^         |               |        ^         |\n|        |         |              |        |         |               |        |         |\n|        |         |              |        |         |               |        |         |\n|        |         |              |        |         |               |        |         |\n|        +         |              |        +         |               |        +         |\n|  Private key 0   |              |  Private key 1   |               |  Private key 2   |\n|        ^         |              |        ^         |               |        ^         |\n+------------------+              +------------------+               +------------------+\n         |                                 |                                  |\n         |                                 |                                  |\n         |                                 |                                  |\n         +--------------------------------------------------------------------+\n                                           |\n                                           |\n                                 +---------+---------+\n                                 |                   |\n                                 |  Mnemonic (Seed)  |\n                                 |                   |\n                                 +-------------------+\n```\n\nThe process of derivating accounts from the seed is deterministic. This means that given the same path, the derived private key will always be the same.\n\nThe funds stored in an account are controlled by the private key. This private key is generated using a one-way function from the mnemonic. If you lose the private key, you can retrieve it using the mnemonic. However, if you lose the mnemonic, you will lose access to all the derived private keys. Likewise, if someone gains access to your mnemonic, they gain access to all the associated accounts.\n\n## IRIShub Key\n\nThe IRIShub Wallet is a HD Wallet base on [BIP44](https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki). BIP44 defines a logical hierarchy for deterministic wallets based on an algorithm described in [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki), which allows the handling of multiple coins, multiple accounts, external and internal chains per account and millions of addresses per chain, such as BTC and ETH.\n\nBIP44 defines the following 5 levels in BIP32 path:\n\n```bash\nm / purpose' / coin_type' / account' / change / address_index\n```\n\nThe IRIShub coin_type is same as cosmos stake token `ATOM` 118 registered in [SLIP44](https://github.com/satoshilabs/slips/blob/master/slip-0044.md).\n\nSo the prefix of IRIShub key BIP44 path is `44'/118'/`, and its default path is `44'/118'/0'/0/0`.\n"
  },
  {
    "path": "docs/concepts/sentry-nodes.md",
    "content": "---\norder: 3\n---\n\n# Sentry Nodes\n\nValidators are responsible for ensuring that the network can sustain denial of service attacks.\n\nOne recommended way to mitigate these risks is for validators to carefully structure their network topology in a so-called sentry node architecture.\n\nValidator nodes should only connect to full-nodes they trust because they operate them themselves or are run by other validators they know socially. A validator node will typically run in a data center. Most data centers provide direct links the networks of major cloud providers. The validator can use those links to connect to sentry nodes in the cloud. This shifts the burden of denial-of-service from the validator's node directly to its sentry nodes, and may require new sentry nodes be spun up or activated to mitigate attacks on existing ones.\n\nSentry nodes can be quickly spun up or change their IP addresses. Because the links to the sentry nodes are in private IP space, an internet based attacked cannot disturb them directly. This will ensure validator block proposals and votes always make it to the rest of the network.\n\nTo setup your sentry node architecture you can follow the instructions below:\n\nValidators nodes should edit their config.toml:\n\n```bash\n# Comma separated list of nodes to keep persistent connections to\n# Do not add private peers to this list if you don't want them advertised\npersistent_peers =[list of sentry nodes]\n\n# Set true to enable the peer-exchange reactor\npex = false\n```\n\nSentry Nodes should edit their config.toml:\n\n```bash\n# Comma separated list of peer IDs to keep private (will not be gossiped to other peers)\n# Example ID: 3e16af0cead27979e1fc3dac57d03df3c7a77acc@3.87.179.235:26656\n\nprivate_peer_ids = \"node_ids_of_private_peers\"\n```\n"
  },
  {
    "path": "docs/concepts/validator-faq.md",
    "content": "---\norder: 2\n---\n\n# Validator FAQ\n\n:::tip\nFor general concepts, please refer to [General Concepts](general-concepts.md)\n:::\n\n## General Questions\n\n### How to Become an IRIShub Validator\n\nRefer to [Join The Mainnet](../get-started/mainnet.md)\n\nIt is also recommended to test your validator setup on the [Testnet](../get-started/testnet.md) before launch\n\n:::tip\nTo earn more delegation for your validator, you are advised to:\n\n- Undergo a security audit\n- Open-source some dev tools and workflow\n- Setup your own website to build your own image\n:::\n\n### What are hardware requirements\n\nThe minimum hardware requirements are mentioned here: [Hardware Requeirment](../daemon/intro.md#hardware-requeirment)\n\n### What are the different states a validator can be in\n\nAfter a validator is created with a `create-validator` transaction, they can be in three states:\n\n- `bonded`: Validator is in the active set and participates in consensus. Validator is earning rewards and can be slashed for misbehaviour.\n- `unbonding`:\n  - Validator misbehaved and is in jail, i.e. outisde of the validator set. If the jailing is due to being offline for too long, the validator can send an `unjail` transaction in order to re-enter the validator set.\n  - Validator is out of the top 100 bonded and become a Candidate, the validator can delegate more IRIS to himself to be in top 100, then he will get bonded automatically.\n- `unbonded`: Validator is not in the active set, and therefore not signing blocks. Validator cannot be slashed, and does not earn any reward. It is still possible to delegate to this validator.\n\n### What are the different types of keys\n\nIn short, there are two types of keys:\n\n#### Tendermint Key\n\nThis is a unique key used to sign consensus votes.\n\n- It is generated when the node is created by `iris init`\n- Query the associated public key prefixed with `icp`\n\n  ```bash\n  iris tendermint show-validator\n  ```\n\n- Query the associated bech32 address prefixed with `ica`\n\n  ```bash\n  iris tendermint show-address\n  ```\n\n- Query the associated hex address\n\n  ```bash\n  iris status | jq .validator_info.address\n  ```\n  \n  It is also stored in the `config/priv_validator.json`\n\n#### Application key\n\nThis key is created from `iris` and used to sign transactions. Application keys are associated with a public key prefixed by `iap` and an address prefixed by `iaa`. Both are derived from account keys generated by `iris keys add`.\n\nNote: A validator's operator key is directly tied to an application key, but uses reserved prefixes solely for this purpose: `iva` and `ivp`.\n\n### How to backup the validator\n\nIt is really **IMPORTANT** to backup your validator private key carefully, it's the only way to restore your validator. Note the validator private key is a [Tendermint Key](#tendermint-key)\n\nIf you are using the software sign (which is the default signing method of tendermint), your [Tendermint Key](#tendermint-key) is located in `<iris-home>/config/priv_validator.json`. The easiest way is to backup the whole config folder.\n\nOr you can use a hardware to manage your [Tendermint Key](#tendermint-key) much more safely, such as the [YubiHSM2](https://developers.yubico.com/YubiHSM2/)\n\n### How to migrate the validator\n\nThere are many ways to migrate your validator, the most recommended way is:\n\n1. [Run a Full Node](../get-started/mainnet.md#run-a-full-node) on the new server\n\n2. After you have caught-up, stop the Validator Node and the Full Node\n\n3. Replace the Full Node config folder with the Validator's\n\n4. Start the new Validator Node\n\n### What is 'self-delegation'? How can I increase my 'self-delegation'\n\nSelf-delegation is delegation from a validator to himself. This amount can be increased by sending a `delegate` transaction from your validator's operator account which you used to create the validator.\n\n### Is there a minimum amount of IRIS that must be delegated to be an active (=bonded) validator\n\nThe minimum amount is `1 iris`.\n\n### Can a validator run away with their delegators' funds\n\nBy delegating to a validator, an user delegates voting power. The more voting power a validator has, the more weight they have in the consensus and governance processes. This does not mean that the validator has custody of their delegators' funds. **By no means can a validator run away with its delegator's funds**.\n\nEven though delegated funds cannot be stolen by their validators, delegators are still liable if their validators misbehave.\n\n### How often will a validator be chosen to propose the next block? Does it go up with the quantity of bonded IRIS\n\nThe validator that is selected to propose the next block is called proposer. Each proposer is selected deterministically, and the frequency of being chosen is proportional to the voting power (i.e. amount of bonded IRIS) of the validator. For example, if the total bonded stake across all validators is 100 IRIS and a validator's total stake is 10, then this validator will propose ~10% of the blocks.\n\n### What is the incentive to stake\n\nPlease refer to [Staking Rewards](general-concepts.md#staking-rewards)\n\n### What is the incentive to run a validator\n\nValidators earn proportionally more revenue than their delegators because of commissions.\n\nValidators also play a major role in governance. If a delegator does not vote, they inherit the vote from their validator. This gives validators a major responsibility in the ecosystem.\n\n### What are validators commission\n\nRevenue received by a validator's pool is split between the validator and their delegators. The validator can apply a commission on the part of the revenue that goes to their delegators. This commission is set as a percentage. Each validator is free to set their initial commission, maximum daily commission change rate and maximum commission. The IRIS Hub enforces the parameter that each validator sets. Only the commission rate can change after the validator is created.\n\n### What is the formula to calculate the rewards\n\nPlease refer to [Staking Rewards Calculation Formula](general-concepts.md#staking-rewards-calculation-formula)\n\n### How to query my validator address\n\nThere are 2 kinds of validator addresses:\n\n- Validator operator address, which is an [Application Key](#application-key) that you used to create the validator\n\n  To query a validator's operator address(iva...) and pubkey(ivp...):\n\n  ```bash\n  iris keys show MyKey --bech=val\n  ```\n\n- Validator node address, which is a [Tendermint Key](#tendermint-key).\n\n  To query the associated address(ica...) and consensus pubkey(icp...), please refer to the [Tendermint Key](#tendermint-key)\n\n### How to upload my validator's logo to the [Explorers](../get-started/explorers.md)\n\n1. Sign-up [Keybase](https://keybase.io/) with your validator's name\n\n2. Upload your logo as your Keybase account's avatar\n\n3. `Add a PGP key` to your Keybase account (I believe you will see this option after sign-up), and you will get a 16-digit string\n\n4. [Edit your validator](../cli-client/staking.md#iris-tx-staking-edit-validator) and specify `--identity=<the_16_digit_string>`\n\n## Common Problems\n\n### My validator has `voting_power: 0`\n\nYour validator has become jailed or out of the top 100 bonded validators.\n\nIf you got jailed, you can get your voting power back to your validator.\nFirst, if `iris` is not running, start it up again:\n\n```bash\niris start\n```\n\nWait for your full node to catch up to the latest block. Then, you can [unjail your validator](../cli-client/slashing.md#iris-tx-slashing-unjail) if you have been jailed over the [DowntimeJailDuration](gov-params.md#parameters-in-slashing)\n\nLastly, check your validator again to see if your voting power is back.\n\n```bash\niris status\n```\n\nYou may notice that your voting power is less than it used to be. That's because you got slashed!\n\n### My `iris` crashes because of `too many open files`\n\nThe default number of files Linux can open (per-process) is `1024`. `iris` is known to open more than `1024` files. This causes the process to crash. A quick fix is to run `ulimit -n 4096` (increase the number of open files allowed, only effective for the current session) and then restart the process with `iris start`. If you are using `systemd` or another process manager to launch `iris` this may require some configuration at that level.\n\n- A sample `systemd` file to fix this issue is below:\n\n    ```toml\n    # /etc/systemd/system/iris.service\n    [Unit]\n    Description=IRIS Hub Node\n    After=network.target\n\n    [Service]\n    Type=simple\n    User=ubuntu\n    WorkingDirectory=/home/ubuntu\n    ExecStart=/home/ubuntu/go/bin/iris start\n    Restart=on-failure\n    RestartSec=3\n    LimitNOFILE=65535\n\n    [Install]\n    WantedBy=multi-user.target\n    ```\n\n- A sample to update the global ulimit on Ubuntu:\n\n    ```bash\n    # Edit limits.conf\n    vim /etc/security/limits.conf\n\n    # Append the following lines at the bottom\n    * hard nofile 65535\n    * soft nofile 65535\n    root hard nofile 65535\n    root soft nofile 65535\n\n    # Reboot the system\n    reboot\n\n    # Re-login & Check whether ulimit is updated to 65535\n    ulimit -n\n    ```\n\n### My uptime is always 0% even I'm fully synced\n\nCompare the two `Consensus Pubkey`:\n\n- From [Explorer](https://irishub.iobscan.io/#/staking), you can find the `Consensus Pubkey` which you declared for your validator in the Validator Detail page.\n\n- Check the `Consensus Pubkey` which you are now using via `iris tendermint show-validator --home=<iris-home>`\n\nIf they are not the same, it means you are running a Full Node other than the Validator.\n\n#### You'd better have backed up your [Tendermint Key](#how-to-backup-the-validator)\n\nthen you can do these:\n\n- Stop the node\n- Replace the current `<iris-home>/config/priv_validator.json` with the one you backed up\n- Confirm the `Consensus Pubkey` is correct via `iris tendermint show-validator --home=<iris-home>`\n- Start the node\n- Check `voting_power` should now be greater than 0: `iris status`\n\n#### What if I lost my Tendermint Key\n\nThat means you have **Lost Your Validator Forever!** You can only create a new one and [redelegate](../cli-client/staking.md#iris-tx-staking-redelegate) all of your shares to the new Validator.\n\n## Community Channels\n\n- Discord: <https://discord.gg/yPsTf4cgPh>\n"
  },
  {
    "path": "docs/daemon/commands.md",
    "content": "---\norder: 2\n---\n\n# Commands\n\n## Introduction\n\nIRIS Daemon Commands allow you to init, start, reset a node, or generate a genesis file, etc.\n\nYou can get familiar with these commands by creating a [Local Testnet](local-testnet.md).\n\n## Usage\n\n```bash\niris <command>\n```\n\n## Available Commands\n\n| Name                                                             | Description                                                                                                     |\n| ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |\n| [init](local-testnet.md#iris-init)                               | Initialize private validator, p2p, genesis, and application configuration files                                 |\n| [add-genesis-account](local-testnet.md#iris-add-genesis-account) | Add genesis account to genesis.json                                                                             |\n| [gentx](local-testnet.md#iris-gentx)                             | Generate a genesis tx carrying a self delegation                                                                |\n| [collect-gentxs](local-testnet.md#iris-collect-gentxs)           | Collect genesis txs and output a genesis.json file                                                              |\n| [start](local-testnet.md#iris-start)                             | Run the full node                                                                                               |\n| [unsafe-reset-all](local-testnet.md#iris-unsafe-reset-all)       | Resets the blockchain database, removes address book files, and resets priv_validator.json to the genesis state |\n| [tendermint](local-testnet.md#iris-tendermint)                   | Tendermint subcommands                                                                                          |\n| [testnet](local-testnet.md#build-and-init)                       | Initialize files for a Irishub testnet                                                                          |\n| [reset](local-testnet.md#iris-reset)                             | Reset app state to the specified height                                                                         |\n| [export](export.md)                                              | Export state to JSON                                                                                            |\n| version                                                          | Show executable binary version                                                                                  |\n\n## Global Flags\n\n| Name,shorthand | Default      | Description                                        | Required | Type   |\n| -------------- | ------------ | -------------------------------------------------- | -------- | ------ |\n| -h, --help     |              | Help for iris                                      |          |        |\n| --home         | /$HOME/.iris | Directory for config and data                      |          | String |\n| --log_level    | \\*:info      | Log level (default \"main:info,state:info,*:error\") |          | String |\n| --trace        |              | Print out full stack trace on errors               |          |        |\n"
  },
  {
    "path": "docs/daemon/export.md",
    "content": "---\norder: 4\n---\n\n# Export Blockchain State\n\n## Introduction\n\nIRIShub can export the blockchain state and output to a json-format string which can be used as the genesis file of a new blockchain.\n\nBy default, IRIShub stores snapshots of every 10,000 blocks and the last 100 blocks. You can export the blockchain state from any existing snapshot height.\n\nIf you want to export the state from a nonexisting snapshot height, you need to [reset](local-testnet.md#iris-reset) the blockchain state to the specified height first.\n\n## Usage\n\n```bash\niris export [flags]\n```\n\n## Flags\n\n| Name, shorthand   | type   | Required | Default      | Description                                                                                                                                                       |\n| ----------------- | ------ | -------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| --for-zero-height | bool   |          | false        | Do some clean up work before exporting state. If you want to use the exported state to start a new blockchain, please add this flag. Otherwise, just leave out it |\n| --height          | uint   |          | 0            | Export state from a particular height, default value is 0 which means to export the latest state                                                                  |\n| --home            | string |          | $HOME/.iris  | Specify the directory which stores node config and blockchain data                                                                                                |\n| --output-file     | string |          | genesis.json | Target file to save exported state                                                                                                                                |\n\n## Examples\n\nExport the current blockchain state\n\n```bash\niris export --home=<path-to-your-home>\n```\n\nExport blockchain state from a particular height, the height must be an existing snapshot height\n\n```bash\niris export --height 10000 --home=<path-to-your-home>\n```\n\nIf you want to export the blockchain state from a particular height and use the exported state as genesis state of another blockchain\n\n```bash\niris export --height 10000 --for-zero-height --home=<path-to-your-home>\n```\n"
  },
  {
    "path": "docs/daemon/intro.md",
    "content": "---\norder: 1\n---\n\n# Introduction\n\nThe `iris` executable program is the entry point for running an IRIShub node. All the validator nodes and full nodes need to install the `iris` and launching the daemon to join the IRIShub network. You can also use `iris` to start your own test network locally.\n\n## Hardware Requeirment\n\nIt's recommended that you run irishub nodes on Linux Server.\n\n### Minimum Requeirment\n\n- 2 CPU\n- Memory: 6GB\n- Disk: 256GB SSD\n- OS: Ubuntu 16.04 LTS +\n- Bandwidth: 20Mbps\n- Allow all incoming connections on TCP port 26656 and 26657\n\n## Home Directory\n\nThe home directory is the working directory of the iris node. The home directory contains all the configuration information and all the data that the node runs.\n\nIn the `iris` command, you can specify the home directory of the node by using flag `--home`. If you run multiple nodes on the same machine, you need to specify different home directories for them. If the `--home` flag is not specified in the iris command, the default value `$HOME/.iris` is used as the home directory.\n\nThe `iris init` command is responsible for initializing the specified `--home` directory and creating the default configuration files. Except the `iris init` command, the home directory used by any other `iris` sub commands must be initialized, otherwise an error will be reported.\n\nThe data of the IRIShub node is stored in the `data` directory of the home, including blockchain data, application layer data, and index data.\n\nAll configuration files are stored in the `<home-dir>/config` directory:\n\n### genesis.json\n\ngenesis.json defines the genesis block data, which specifies the system parameters such as chain_id, consensus parameters, initial account token allocation, creation of validators, and parameters for modules. See [genesis-file](../concepts/genesis-file.md) for details.\n\n### node_key.json\n\nnode_key.json is used to store the node's key. The node-id queried by `iris tendermint show-node-id` is derived by the key, which is used to indicate the unique identity of the node. It is used in p2p connection.\n\n### priv_validator.json\n\npri_validator.json is the [Tendermint Key](../concepts/validator-faq.md#tendermint-key) file that the validator will use to sign Pre-vote/Pre-commit in each round of consensus voting. As the consensus progresses, the tendermint consensus engine will continuously update `last_height`/`last_round`/`last_step` values.\n\n### config.toml\n\nconfig.toml is the non-consensus configuration of the node. Different nodes can configure themselves according to their own situation. Common modifications are `persistent_peers`, `moniker`, `laddr`.\n\n### app.toml\n\napp.toml provides base configuration, telemetry configuration, API configuration, gRPC configuration and state sync configuration for IRIShub.\n"
  },
  {
    "path": "docs/daemon/local-testnet.md",
    "content": "---\norder: 3\n---\n\n# Local Testnet\n\nFor testing or developing purpose, you may want to setup a local testnet.\n\n## Single Node Testnet\n\n**Requirements:**\n\n- [Install iris](../get-started/install.md)\n\n:::tip\nWe use the default [home directory](intro.md#home-directory) for all the following examples\n:::\n\n### iris init\n\nInitialize the genesis.json file that will help you to bootstrap the network\n\n```bash\niris init testing --chain-id=testing\n```\n\n### create a key\n\nCreate a key to hold your validator account\n\n```bash\niris keys add MyValidator\n```\n\n### iris add-genesis-account\n\nAdd that key into the genesis.app_state.accounts array in the genesis file\n\n:::tip\nthis command lets you set the number of coins. Make sure this account has some uiris which is the only staking coin on IRIShub\n:::\n\n```bash\niris add-genesis-account $(iris keys show MyValidator --address) 150000000uiris\n```\n\n### iris gentx\n\nGenerate the transaction that creates your validator. The gentxs are stored in `~/.iris/config/gentx/`\n\n```bash\niris gentx MyValidator 100000000uiris --chain-id=testing \n```\n\n### iris collect-gentxs\n\nAdd the generated staking transactions to the genesis file\n\n```bash\niris collect-gentxs\n```\n\n### iris start\n\nChange the default token denom to `uiris`\n\n```bash\nsed -i 's/stake/uiris/g' $HOME/.iris/config/genesis.json\n```\n\nNow it‘s ready to start `iris`\n\n```bash\niris start\n```\n\n### iris unsafe-reset-all\n\nYou can use this command to reset your node, including the local blockchain database, address book file, and resets priv_validator.json to the genesis state.\n\nThis is useful when your local blockchain database somehow breaks and you are not able to sync or participate in the consensus.\n\n```bash\niris unsafe-reset-all\n```\n\n### iris tendermint\n\nQuery the unique node id which can be used in p2p connection, e.g. the `seeds` and `persistent_peers` in the [config.toml](intro.md#cnofig-toml) are formatted as `<node-id>@ip:26656`.\n\nThe node id is stored in the [node_key.json](intro.md#node_key-json).\n\n```bash\niris tendermint show-node-id\n```\n\nQuery the [Tendermint Pubkey](../concepts/validator-faq.md#tendermint-key) which is used to [identify your validator](../cli-client/stake/create-validator.md), and the corresponding private key will be used to sign the Pre-vote/Pre-commit in the consensus.\n\nThe [Tendermint Key](../concepts/validator-faq.md#tendermint-key) is stored in the [priv_validator.json](intro.md#priv_validator-json) which is [required to be backed up](../concepts/validator-faq.md#how-to-backup-the-validator) once you become a validator.\n\n```bash\niris tendermint show-validator\n```\n\nQuery the bech32 prefixed validator address\n\n```bash\niris tendermint show-address\n```\n\n### iris export\n\nPlease refer to [Export Blockchain State](export.md)\n\n## Multiple Nodes Testnet\n\n**Requirements:**\n\n- [Install iris](../get-started/install.md)\n- [Install jq](https://stedolan.github.io/jq/download/)\n- [Install docker](https://docs.docker.com/engine/installation/)\n- [Install docker-compose](https://docs.docker.com/compose/install/)\n\n### Build and Init\n\n```bash\n# Work from the irishub repo\ncd [your-irishub-repo]\n\n# Build the linux binary in ./build\nmake build-linux\n\n# Quick init a 4-node testnet configs\nmake testnet-init\n```\n\nThe `make testnet-init` generates config files for a 4-node testnet in the `./build/nodecluster` directory by calling the `iris testnet` command:\n\n```bash\n$ tree -L 3 build/nodecluster/\nbuild/nodecluster/\n├── gentxs\n│   ├── node0.json\n│   ├── node1.json\n│   ├── node2.json\n│   └── node3.json\n├── node0\n│   ├── iris\n│   │   ├── config\n│   │   └── data\n│   └── iriscli\n│       ├── key_seed.json\n│       └── keys\n├── node1\n│   ├── iris\n│   │   ├── config\n│   │   └── data\n│   └── iriscli\n│       └── key_seed.json\n├── node2\n│   ├── iris\n│   │   ├── config\n│   │   └── data\n│   └── iriscli\n│       └── key_seed.json\n└── node3\n    ├── iris\n    │   ├── config\n    │   └── data\n    └── iriscli\n        └── key_seed.json\n```\n\n### Start\n\n```bash\nmake testnet-start\n```\n\nThis command creates a 4-node network using the ubuntu:16.04 docker image. The ports for each node are found in this table:\n\n| Node      | P2P Port | RPC Port |\n| --------- | -------- | -------- |\n| irisnode0 | 26656    | 26657    |\n| irisnode1 | 26659    | 26660    |\n| irisnode2 | 26661    | 26662    |\n| irisnode3 | 26663    | 26664    |\n\nTo update the binary, just rebuild it and restart the nodes:\n\n```bash\nmake build-linux testnet-start\n```\n\n### Stop\n\nTo stop all the running nodes:\n\n```bash\nmake testnet-stop\n```\n\n### Clean\n\nTo stop all the running nodes and delete all the files in the `build/` directory:\n\n```bash\nmake testnet-clean\n```\n"
  },
  {
    "path": "docs/endpoints/grpc-client.md",
    "content": "---\norder: 4\n---\n\n# gRPC Client\n\nirishub v1.0.0 (depends on Cosmos-SDK v0.41) introduced Protobuf as the main [encoding](https://github.com/cosmos/cosmos-sdk/blob/master/docs/core/encoding.md) library, and this brings a wide range of Protobuf-based tools that can be plugged into the SDK. One such tool is [gRPC](https://grpc.io), a modern open source high performance RPC framework that has decent client support in several languages.\n\n## gRPC Server Port, Activation and Configuration\n\nThe `grpc.Server` is a concrete gRPC server, which spawns and serves any gRPC requests. This server can be configured inside `~/.iris/config/app.toml`:\n\n- `grpc.enable = true|false` field defines if the gRPC server should be enabled. Defaults to `true`.\n- `grpc.address = {string}` field defines the address (really, the port, since the host should be kept at `0.0.0.0`) the server should bind to. Defaults to `0.0.0.0:9000`.\n\nOnce the gRPC server is started, you can send requests to it using a gRPC client.\n\n## gRPC Endpoints\n\nAn overview of all available gRPC endpoints shipped with the IRIShub is [Protobuf documention](./proto-docs.md).\n\n## Generating, Signing and Broadcasting Transactions\n\nIt is possible to manipulate transactions programmatically via Go using the Cosmos SDK's `TxBuilder` interface.\n\n### Generating a Transaction\n\nBefore generating a transaction, a new instance of a `TxBuilder` needs to be created. Since the SDK supports both Amino and Protobuf transactions, the first step would be to decide which encoding scheme to use. All the subsequent steps remain unchanged, whether you're using Amino or Protobuf, as `TxBuilder` abstracts the encoding mechanisms. In the following snippet, we will use Protobuf.\n\n```go\nimport (\n    \"cosmossdk.io/simapp\"\n)\n\nfunc sendTx() error {\n    // Choose your codec: Amino or Protobuf. Here, we use Protobuf, given by the following function.\n    encCfg := simapp.MakeTestEncodingConfig()\n\n    // Create a new TxBuilder.\n    txBuilder := encCfg.TxConfig.NewTxBuilder()\n\n    // --snip--\n}\n```\n\nWe can also set up some keys and addresses that will send and receive the transactions. Here, for the purpose of the tutorial, we will be using some dummy data to create keys.\n\n```go\nimport (\n    \"github.com/cosmos/cosmos-sdk/testutil/testdata\"\n)\n\npriv1, _, addr1 := testdata.KeyTestPubAddr()\npriv2, _, addr2 := testdata.KeyTestPubAddr()\npriv3, _, addr3 := testdata.KeyTestPubAddr()\n```\n\nPopulating the `TxBuilder` can be done via its [methods](https://github.com/cosmos/cosmos-sdk/blob/v0.41.0/client/tx_config.go#L32-L45):\n\n```go\nimport (\n    banktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n)\n\nfunc sendTx() error {\n    // --snip--\n\n    // Define two x/bank MsgSend messages:\n    // - from addr1 to addr3,\n    // - from addr2 to addr3.\n    // This means that the transactions needs two signers: addr1 and addr2.\n    msg1 := banktypes.NewMsgSend(addr1, addr3, types.NewCoins(types.NewInt64Coin(\"atom\", 12)))\n    msg2 := banktypes.NewMsgSend(addr2, addr3, types.NewCoins(types.NewInt64Coin(\"atom\", 34)))\n\n    err := txBuilder.SetMsgs(msg1, msg2)\n    if err != nil {\n        return err\n    }\n\n    txBuilder.SetGasLimit(...)\n    txBuilder.SetFeeAmount(...)\n    txBuilder.SetMemo(...)\n    txBuilder.SetTimeoutHeight(...)\n}\n```\n\nAt this point, `TxBuilder`'s underlying transaction is ready to be signed.\n\n### Signing a Transaction\n\nWe set encoding config to use Protobuf, which will use `SIGN_MODE_DIRECT` by default. As per [ADR-020](https://github.com/cosmos/cosmos-sdk/blob/v0.41.0/docs/architecture/adr-020-protobuf-transaction-encoding.md), each signer needs to sign the `SignerInfo`s of all other signers. This means that we need to perform two steps sequentially:\n\n- for each signer, populate the signer's `SignerInfo` inside `TxBuilder`,\n- once all `SignerInfo`s are populated, for each signer, sign the `SignDoc` (the payload to be signed).\n\nIn the current `TxBuilder`'s API, both steps are done using the same method: `SetSignatures()`. The current API requires us to first perform a round of `SetSignatures()` _with empty signatures_, only to populate `SignerInfo`s, and a second round of `SetSignatures()` to actually sign the correct payload.\n\n```go\nimport (\n    cryptotypes \"github.com/cosmos/cosmos-sdk/crypto/types\"\n    \"github.com/cosmos/cosmos-sdk/types/tx/signing\"\n    xauthsigning \"github.com/cosmos/cosmos-sdk/x/auth/signing\"\n)\n\nfunc sendTx() error {\n    // --snip--\n\n    privs := []cryptotypes.PrivKey{priv1, priv2}\n    accNums:= []uint64{..., ...} // The accounts' account numbers\n    accSeqs:= []uint64{..., ...} // The accounts' sequence numbers\n\n    // First round: we gather all the signer infos. We use the \"set empty\n    // signature\" hack to do that.\n    var sigsV2 []signing.SignatureV2\n    for i, priv := range privs {\n        sigV2 := signing.SignatureV2{\n            PubKey: priv.PubKey(),\n            Data: &signing.SingleSignatureData{\n                SignMode:  encCfg.TxConfig.SignModeHandler().DefaultMode(),\n                Signature: nil,\n            },\n            Sequence: accSeqs[i],\n        }\n\n        sigsV2 = append(sigsV2, sigV2)\n    }\n    err := txBuilder.SetSignatures(sigsV2...)\n    if err != nil {\n        return err\n    }\n\n    // Second round: all signer infos are set, so each signer can sign.\n    sigsV2 = []signing.SignatureV2{}\n    for i, priv := range privs {\n        signerData := xauthsigning.SignerData{\n            ChainID:       chainID,\n            AccountNumber: accNums[i],\n            Sequence:      accSeqs[i],\n        }\n        sigV2, err := tx.SignWithPrivKey(\n            encCfg.TxConfig.SignModeHandler().DefaultMode(), signerData,\n            txBuilder, priv, encCfg.TxConfig, accSeqs[i])\n        if err != nil {\n            return nil, err\n        }\n\n        sigsV2 = append(sigsV2, sigV2)\n    }\n    err = txBuilder.SetSignatures(sigsV2...)\n    if err != nil {\n        return err\n    }\n}\n```\n\nThe `TxBuilder` is now correctly populated. To print it, you can use the `TxConfig` interface from the initial encoding config `encCfg`:\n\n```go\nfunc sendTx() error {\n    // --snip--\n\n    // Generated Protobuf-encoded bytes.\n    txBytes, err := encCfg.TxConfig.TxEncoder()(txBuilder.GetTx())\n    if err != nil {\n        return err\n    }\n\n    // Generate a JSON string.\n    txJSONBytes, err := encCfg.TxConfig.TxJSONEncoder()(txBuilder.GetTx())\n    if err != nil {\n        return err\n    }\n    txJSON := string(txJSONBytes)\n}\n```\n\n### Broadcasting a Transaction\n\nThe preferred way to broadcast a transaction is to use gRPC, though using REST (via `gRPC-gateway`) or the Tendermint RPC is also posible. For this tutorial, we will only describe the gRPC method.\n\n```go\nimport (\n    \"context\"\n    \"fmt\"\n\n    \"google.golang.org/grpc\"\n\n    \"github.com/cosmos/cosmos-sdk/types/tx\"\n)\n\nfunc sendTx(ctx context.Context) error {\n    // --snip--\n\n    // Create a connection to the gRPC server.\n    grpcConn := grpc.Dial(\n        \"127.0.0.1:9090\", // Or your gRPC server address.\n        grpc.WithInsecure(), // The SDK doesn't support any transport security mechanism.\n    )\n    defer grpcConn.Close()\n\n    // Broadcast the tx via gRPC. We create a new client for the Protobuf Tx\n    // service.\n    txClient := tx.NewServiceClient(grpcConn)\n    // We then call the BroadcastTx method on this client.\n    grpcRes, err := txClient.BroadcastTx(\n        ctx,\n        &tx.BroadcastTxRequest{\n            Mode:    tx.BroadcastMode_BROADCAST_MODE_SYNC,\n            TxBytes: txBytes, // Proto-binary of the signed transaction, see previous step.\n        },\n    )\n    if err != nil {\n        return err\n    }\n\n    fmt.Println(grpcRes.TxResponse.Code) // Should be `0` if the tx is successful\n\n    return nil\n}\n```\n"
  },
  {
    "path": "docs/endpoints/grpc-rest.md",
    "content": "---\norder: 3\n---\n\n# gRPC Gateway JSON REST\n\nIn irishub v1.0.0, the node continues to serve a REST server. However, the existing routes present in version v0.16.3 and earlier are now marked as deprecated, and new routes have been added via gRPC-gateway.\n\n## API Port, Activation and Configuration\n\nAll routes are configured under the following fields in `~/.iris/config/app.toml`:\n\n- `api.enable = true|false` field defines if the REST server should be enabled. Defaults to `true`.\n- `api.address = {string}` field defines the address (really, the port, since the host should be kept at `0.0.0.0`) the server should bind to. Defaults to `tcp://0.0.0.0:1317`.\n- some additional API configuration options are defined in `~/.iris/config/app.toml`, along with comments, please refer to that file directly.\n\n### gRPC-gateway REST Routes\n\nIf, for various reasons, you cannot use gRPC (for example, you are building a web application, and browsers don't support HTTP2 on which gRPC is built), then the IRIShub offers REST routes via gRPC-gateway.\n\n[gRPC-gateway](https://grpc-ecosystem.github.io/grpc-gateway/) is a tool to expose gRPC endpoints as REST endpoints. For each RPC endpoint defined in a Protobuf service, the SDK offers a REST equivalent. For instance, querying token list could be done via the `/irismod.token.Query/Tokens` gRPC endpoint, or alternatively via the gRPC-gateway `/irismod/token/tokens` REST endpoint: both will return the same result. For each RPC method defined in a Protobuf service, the corresponding REST endpoint is defined as an option:\n\n+++ https://github.com/irisnet/irismod/blob/master/proto/token/query.proto#L22\n\nFor application developers, gRPC-gateway REST routes needs to be wired up to the REST server, this is done by calling the `RegisterGRPCGatewayRoutes` function on the ModuleManager.\n\n### Swagger\n\nA [Swagger](https://swagger.io/) (or OpenAPIv2) specification file is exposed under the `/swagger` route on the API server. Swagger is an open specification describing the API endpoints a server serves, including description, input arguments, return types and much more about each endpoint.\n\nEnabling the `/swagger` endpoint is configurable inside `~/.iris/config/app.toml` via the `api.swagger` field, which is set to true by default.\n\nFor application developers, you may want to generate your own Swagger definitions based on your custom modules. The IRIShub's [Swagger generation script](https://github.com/irisnet/irishub/blob/master/scripts/protoc-swagger-gen.sh) is a good place to start.\n\n## API Endpoints\n\n**IRIShub API Endpoints**\n\n| API Endpoints                                                                                                                               | Description                                                                                      | Legacy REST Endpoint                                                              |\n| :------------------------------------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------- |\n| `GET` `/cosmos/auth/v1beta1/accounts/{address}`                                                                                             | Return account details based on address                                                          | `GET` `/auth/accounts/{address}`                                                  |\n| `GET` `/cosmos/auth/v1beta1/params`                                                                                                         | Query all parameters                                                                             |                                                                                   |\n| `GET` `/cosmos/bank/v1beta1/balances/{address}`                                                                                             | Query the balance of all coins for a single account                                              | `GET` `/bank/balances/{address}`                                                  |\n| `GET` `/cosmos/bank/v1beta1/balances/{address}/{denom}`                                                                                     | Query the balance of a single coin for a single account                                          |                                                                                   |\n| `GET` `/cosmos/bank/v1beta1/denoms_metadata`                                                                                                | Query the client metadata for all registered coin denominations                                  |                                                                                   |\n| `GET` `/cosmos/bank/v1beta1/denoms_metadata/{denom}`                                                                                        | Query the client metadata of a given coin denomination                                           |                                                                                   |\n| `GET` `/cosmos/bank/v1beta1/params`                                                                                                         | Query the parameters of bank module                                                              |                                                                                   |\n| `GET` `/cosmos/bank/v1beta1/supply`                                                                                                         | Query the total supply of all coins                                                              | `GET` `/bank/total`                                                               |\n| `GET` `/cosmos/bank/v1beta1/supply/{denom}`                                                                                                 | Query the supply of a single coin                                                                | `GET` `/bank/total/{denom}`                                                       |\n| `GET` `/cosmos/distribution/v1beta1/community_pool`                                                                                         | Query the community pool coins                                                                   | `GET` `/distribution/community_pool`                                              |\n| `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards`                                                                 | Query the total rewards accrued by each validator                                                | `GET` `/distribution/delegators/{delegatorAddr}/rewards`                          |\n| `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}`                                             | Query the total rewards accrued by a delegation                                                  | `GET` `/distribution/delegators/{delegatorAddr}/rewards/{validatorAddr}`          |\n| `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/validators`                                                              | Query the validators of a delegator                                                              |                                                                                   |\n| `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address`                                                        | Query withdraw address of a delegator                                                            | `GET` `/distribution/delegators/{delegatorAddr}/withdraw_address`                 |\n| `GET` `/cosmos/distribution/v1beta1/params`                                                                                                 | Query params of the distribution module                                                          | `GET` `/distribution/parameters`                                                  |\n| `GET` `/cosmos/distribution/v1beta1/validators/{validator_address}/commission`                                                              | Query accumulated commission for a validator                                                     |                                                                                   |\n| `GET` `/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards`                                                     | Query rewards of a validator address                                                             | `GET` `/distribution/validators/{validatorAddr}/outstanding_rewards`              |\n| `GET` `/cosmos/distribution/v1beta1/validators/{validator_address}/slashes`                                                                 | Query slash events of a validator                                                                |                                                                                   |\n| `GET` `/cosmos/evidence/v1beta1/evidence`                                                                                                   | Query all evidence                                                                               |                                                                                   |\n| `GET` `/cosmos/evidence/v1beta1/evidence/{evidence_hash}`                                                                                   | Query evidence based on evidence hash                                                            |                                                                                   |\n| `GET` `/cosmos/gov/v1beta1/params/{params_type}`                                                                                            | Query all parameters of the gov module                                                           | `GET` `/gov/parameters/{params_type}`                                             |\n| `GET` `/cosmos/gov/v1beta1/proposals`                                                                                                       | Query all proposals based on given status                                                        | `GET` `/gov/proposals`                                                            |\n| `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}`                                                                                         | Query proposal details based on ProposalID                                                       | `GET` `/gov/proposals/{proposal-id}`                                              |\n| `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits`                                                                                | Query all deposits of a single proposal                                                          | `GET` `/gov/proposals/{proposal-id}/deposits`                                     |\n| `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}`                                                                    | Query single deposit information based proposalID, depositAddr                                   | `GET` `/gov/proposals/{proposal-id}/deposits/{depositor}`                         |\n| `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/tally`                                                                                   | Query the tally of a proposal vote                                                               | `GET` `/gov/proposals/{proposal-id}/tally`                                        |\n| `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/votes`                                                                                   | Query votes of a given proposal                                                                  | `GET` `/gov/proposals/{proposal-id}/votes`                                        |\n| `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}`                                                                           | Query voted information based on proposalID, voterAddr                                           | `GET` `/gov/proposals/{proposal-id}/votes/{voter}`                                |\n| `GET` `/cosmos/params/v1beta1/params`                                                                                                       | Query a specific parameter of a module, given its subspace and key                               |                                                                                   |\n| `GET` `/cosmos/slashing/v1beta1/params`                                                                                                     | Query the parameters of slashing module                                                          | `GET` `/slashing/parameters`                                                      |\n| `GET` `/cosmos/slashing/v1beta1/signing_infos`                                                                                              | Query signing info of all validators                                                             | `GET` `/slashing/signing_infos`                                                   |\n| `GET` `/cosmos/slashing/v1beta1/signing_infos/{cons_address}`                                                                               | Query the signing info of given cons address                                                     |                                                                                   |\n| `GET` `/cosmos/staking/v1beta1/delegations/{delegator_addr}`                                                                                | Query all delegations of a given delegator address                                               | `GET` `/staking/delegators/{delegatorAddr}/delegations`                           |\n| `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations`                                                                   | Query redelegations of given address                                                             | `GET` `/staking/redelegations`                                                    |\n| `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations`                                                           | Query all unbonding delegations of a given delegator address                                     | `GET` `/staking/delegators/{delegatorAddr}/unbonding_delegations`                 |\n| `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators`                                                                      | Query all validators info for given delegator address                                            | `GET` `/staking/delegators/{delegatorAddr}/validators`                            |\n| `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}`                                                     | Query validator info for given delegator validator pair                                          | `GET` `/staking/delegators/{delegatorAddr}/validators/{validatorAddr}`            |\n| `GET` `/cosmos/staking/v1beta1/historical_info/{height}`                                                                                    | Query the historical info for given height                                                       |                                                                                   |\n| `GET` `/cosmos/staking/v1beta1/params`                                                                                                      | Query the staking parameters                                                                     | `GET` `/staking/parameters`                                                       |\n| `GET` `/cosmos/staking/v1beta1/pool`                                                                                                        | Query the pool info                                                                              | `GET` `/staking/pool`                                                             |\n| `GET` `/cosmos/staking/v1beta1/validators`                                                                                                  | Query all validators that match the given status                                                 | `GET` `/staking/validators`                                                       |\n| `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}`                                                                                 | Query validator info for given validator address                                                 | `GET` `/staking/validators/{validatorAddr}`                                       |\n| `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/delegations`                                                                     | Query delegate info for given validator                                                          | `GET` `/staking/validators/{validatorAddr}/delegations`                           |\n| `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}`                                                    | Query delegate info for given validator delegator pair                                           | `GET` `/staking/delegators/{delegatorAddr}/delegations/{validatorAddr}`           |\n| `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation`                               | Query unbonding info for given validator delegator pair                                          | `GET` `/staking/delegators/{delegatorAddr}/unbonding_delegations/{validatorAddr}` |\n| `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations`                                                           | Query unbonding delegations of a validator                                                       | `GET` `/staking/validators/{validatorAddr}/unbonding_delegations`                 |\n| `GET` `/cosmos/upgrade/v1beta1/applied_plan/{name}`                                                                                         | Query a previously applied upgrade plan by its name                                              |                                                                                   |\n| `GET` `/cosmos/upgrade/v1beta1/current_plan`                                                                                                | Query the current upgrade plan                                                                   |                                                                                   |\n| `GET` `/cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}`                                                                      | Query the consensus state that will serve as a trusted kernel for the next version of this chain |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels`                                                                                                  | Query all the IBC channels of a chain                                                            |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}`                                                                     | Query an IBC channel                                                                             |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/client_state`                                                        | Query for the client state for the channel associated with the provided channel identifiers      |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}` | Query for the consensus state for the channel associated with the provided channel identifiers   |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/next_sequence`                                                       | Return the next receive sequence for a given channel                                             |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements`                                             | Return all the packet acknowledgements associated with a channel                                 |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}`                                              | Query a stored packet acknowledgement hash                                                       |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments`                                                  | Return all the packet commitments hashes associated with a channel                               |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks`           | Return all the unreceived IBC acknowledgements associated with a channel and sequences           |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets` | Return all the unreceived IBC packets associated with a channel and sequences                    |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}`                                       | Query a stored packet commitment hash                                                            |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_receipts/{sequence}`                                          | Query if a given packet sequence has been received on the Queryd chain                           |                                                                                   |\n| `GET` `/ibc/core/channel/v1beta1/connections/{connection}/channels`                                                                         | Query all the channels associated with a connection end                                          |                                                                                   |\n| `GET` `/ibc/client/v1beta1/params`                                                                                                          | Query all parameters of the ibc client                                                           |                                                                                   |\n| `GET` `/ibc/core/client/v1beta1/client_states`                                                                                              | Query all the IBC light clients of a chain                                                       |                                                                                   |\n| `GET` `/ibc/core/client/v1beta1/client_states/{client_id}`                                                                                  | Query an IBC light client                                                                        |                                                                                   |\n| `GET` `/ibc/core/client/v1beta1/consensus_states/{client_id}`                                                                               | Query all the consensus state associated with a given client                                     |                                                                                   |\n| `GET` `/ibc/core/client/v1beta1/consensus_states/{client_id}/revision/{revision_number}/height/{revision_height}`                           | Query a consensus state associated with a client state at a given height                         |                                                                                   |\n| `GET` `/ibc/core/connection/v1beta1/client_connections/{client_id}`                                                                         | Query the connection paths associated with a client state                                        |                                                                                   |\n| `GET` `/ibc/core/connection/v1beta1/connections`                                                                                            | Query all the IBC connections of a chain                                                         |                                                                                   |\n| `GET` `/ibc/core/connection/v1beta1/connections/{connection_id}`                                                                            | Query an IBC connection end                                                                      |                                                                                   |\n| `GET` `/ibc/core/connection/v1beta1/connections/{connection_id}/client_state`                                                               | Query the client state associated with the connection                                            |                                                                                   |\n| `GET` `/ibc/core/connection/v1beta1/connections/{connection_id}/consensus_state/revision/{revision_number}/height/{revision_height}`        | Query the consensus state associated with the connection                                         |                                                                                   |\n| `GET` `/ibc/applications/transfer/v1beta1/denom_traces`                                                                                     | Query all denomination traces                                                                    |                                                                                   |\n| `GET` `/ibc/applications/transfer/v1beta1/denom_traces/{hash}`                                                                              | Query a denomination trace information                                                           |                                                                                   |\n| `GET` `/ibc/applications/transfer/v1beta1/params`                                                                                           | Query all parameters of the ibc-transfer module                                                  |                                                                                   |\n| `GET` `/irismod/token/params`                                                                                                               | Query the token parameters                                                                       |                                                                                   |\n| `GET` `/irismod/token/tokens`                                                                                                               | Return the token list                                                                            |                                                                                   |\n| `GET` `/irismod/token/tokens/{denom}`                                                                                                       | Return token with token name                                                                     |                                                                                   |\n| `GET` `/irismod/token/tokens/{symbol}/fees`                                                                                                 | Return the fees to issue or mint a token                                                         |                                                                                   |\n| `GET` `/irismod/token/total_burn`                                                                                                           | Return all burnt coins                                                                           |                                                                                   |\n| `GET` `/irismod/htlc/htlcs/{hash_lock}`                                                                                                     | Query the HTLC by the specified hash lock                                                        |                                                                                   |\n| `GET` `/irismod/coinswap/liquidities/{denom}`                                                                                               | Return the total liquidity available for the provided denomination                               |                                                                                   |\n| `GET` `/irismod/nft/collections/{denom_id}`                                                                                                 | Query the NFTs by the specified denom                                                            |                                                                                   |\n| `GET` `/irismod/nft/collections/{denom_id}/supply`                                                                                          | Query the total supply by a given denom                                                          |                                                                                   |\n| `GET` `/irismod/nft/denoms`                                                                                                                 | Query all the denoms                                                                             |                                                                                   |\n| `GET` `/irismod/nft/denoms/{denom_id}`                                                                                                      | Query the definition by a given denom ID                                                         |                                                                                   |\n| `GET` `/irismod/nft/nfts`                                                                                                                   | Query the NFTs by the specified owner                                                            |                                                                                   |\n| `GET` `/irismod/nft/nfts/{denom_id}/{token_id}`                                                                                             | Query the NFT by the given denom ID and token ID                                                 |                                                                                   |\n| `GET` `/irismod/service/bindings/{service_name}`                                                                                            | Return all service Bindings with service name and owner                                          |                                                                                   |\n| `GET` `/irismod/service/bindings/{service_name}/{provider}`                                                                                 | Return service Binding with service name and provider                                            |                                                                                   |\n| `GET` `/irismod/service/contexts/{request_context_id}`                                                                                      | Return the request context                                                                       |                                                                                   |\n| `GET` `/irismod/service/definitions/{service_name}`                                                                                         | Return service definition                                                                        |                                                                                   |\n| `GET` `/irismod/service/fees/{provider}`                                                                                                    | Return the earned service fee of one provider                                                    |                                                                                   |\n| `GET` `/irismod/service/owners/{owner}/withdraw-address`                                                                                    | Return the withdraw address of the binding owner                                                 |                                                                                   |\n| `GET` `/irismod/service/params`                                                                                                             | Query the service parameters                                                                     |                                                                                   |\n| `GET` `/irismod/service/requests/{request_context_id}/{batch_counter}`                                                                      | Return all requests of one service call batch                                                    |                                                                                   |\n| `GET` `/irismod/service/requests/{request_id}`                                                                                              | Return the request                                                                               |                                                                                   |\n| `GET` `/irismod/service/requests/{service_name}/{provider}`                                                                                 | Return all requests of one service with provider                                                 |                                                                                   |\n| `GET` `/irismod/service/responses/{request_context_id}/{batch_counter}`                                                                     | Return all responses of one service call batch                                                   |                                                                                   |\n| `GET` `/irismod/service/responses/{request_id}`                                                                                             | Return the response of one request                                                               |                                                                                   |\n| `GET` `/irismod/service/schemas/{schema_name}`                                                                                              | Return the schema                                                                                |                                                                                   |\n| `GET` `/irismod/oracle/feeds`                                                                                                               | Query the feed list                                                                              |                                                                                   |\n| `GET` `/irismod/oracle/feeds/{feed_name}`                                                                                                   | Query the feed                                                                                   |                                                                                   |\n| `GET` `/irismod/oracle/feeds/{feed_name}/values`                                                                                            | Query the feed value                                                                             |                                                                                   |\n| `GET` `/irismod/random/queue`                                                                                                               | Query the random request queue                                                                   |                                                                                   |\n| `GET` `/irismod/random/randoms/{req_id}`                                                                                                    | Query the random result                                                                          |                                                                                   |\n| `GET` `/irismod/record/records/{record_id}`                                                                                                 | Query the record by the given record ID                                                          |                                                                                   |\n| `GET` `/irishub/mint/params`                                                                                                                | Query the mint parameters                                                                        |                                                                                   |\n| `GET` `/irishub/guardian/supers`                                                                                                            | Return all Supers                                                                                |                                                                                   |\n\n**Tendermint API Endpoints**\n\n| API Endpoints                                                  | Description                                                | Legacy REST Endpoint            |\n| :------------------------------------------------------------- | :--------------------------------------------------------- | :------------------------------ |\n| `GET` `/cosmos/base/tendermint/v1beta1/blocks/latest`          | Return the latest block.                                   | `GET` `/blocks/latest`          |\n| `GET` `/cosmos/base/tendermint/v1beta1/blocks/{height}`        | Query block for given height.                              | `GET` `/blocks/{height}`        |\n| `GET` `/cosmos/base/tendermint/v1beta1/node_info`              | Query the current node info.                               | `GET` `/node_info`              |\n| `GET` `/cosmos/base/tendermint/v1beta1/syncing`                | Query node syncing.                                        | `GET` `/syncing`                |\n| `GET` `/cosmos/base/tendermint/v1beta1/validatorsets/latest`   | Query latest validator-set.                                | `GET` `/validatorsets/latest`   |\n| `GET` `/cosmos/base/tendermint/v1beta1/validatorsets/{height}` | Query validator-set at a given height.                     | `GET` `/validatorsets/{height}` |\n| `POST` `/cosmos/tx/v1beta1/simulate`                           | Simulate executing a transaction for estimating gas usage. |                                 |\n| `GET` `/cosmos/tx/v1beta1/txs`                                 | Fetch txs by event.                                        | `GET` `/txs`                    |\n| `POST` `/cosmos/tx/v1beta1/txs`                                | Broadcast transaction.                                     | `POST` `/txs`                   |\n| `GET` `/cosmos/tx/v1beta1/txs/{hash}`                          | Fetch a tx by hash.                                        | `GET` `/txs/{hash}`             |\n\n## Generating and Signing Transactions\n\nIt is not possible to generate or sign a transaction using REST, only to broadcast one. You can generating and signing transactions using [gRPC Client](grpc-client.md).\n\n## Broadcasting Transactions\n\nBroadcasting a transaction using the gRPC-gateway REST endpoint `cosmos/tx/v1beta1/txs` can be done by sending a POST request as follows, where the `txBytes` are the protobuf-encoded bytes of a signed transaction:\n\n```bash\ncurl -X POST \\\n    -H \"Content-Type: application/json\" \\\n    -d'{\"tx_bytes\":\"{{txBytes}}\",\"mode\":\"BROADCAST_MODE_SYNC\"}' \\\n    \"localhost:1317/cosmos/tx/v1beta1/txs\"\n```\n\n## Querying Transactions\n\nQuerying transactions using the gRPC-gateway REST endpoint can be done by sending a GET request as follows:\n\n- **Query tx by hash:** `/cosmos/tx/v1beta1/txs/{hash}`\n\n    ```bash\n    curl -X GET \\\n        -H \"accept: application/json\" \\\n        \"http://localhost:1317/cosmos/tx/v1beta1/txs/{hash}\"\n    ```\n\n- **Query tx by events:** `/cosmos/tx/v1beta1/txs`\n\n    ``` bash\n    curl -X GET \\\n        -H \"accept: application/json\" \\\n        \"http://localhost:1317/cosmos/tx/v1beta1/txs?events={event_content}\"\n    ```\n"
  },
  {
    "path": "docs/endpoints/intro.md",
    "content": "---\norder: 1\n---\n\n# Introduction\n\nThis document presents an overview of all the API endpoints a node exposes and the higher-level client SDKs.\n\n## An Overview of All Endpoints and SDKs\n\nEach node can be configured with the following endpoints, and each type of endpoint is served on a different port for users to interact with a node. And we provide IRIShub client SDKs to facilitate developers to develop applications more conveniently. Details on how to configure each endpoint and SDKs is provided in their own section.\n\n- [Legacy Amino JSON REST](./legacy-rest.md)\n- [gRPC Gateway JSON REST](./grpc-rest.md)\n- [gRPC Client](./grpc-client.md)\n- [Client SDKs](./sdk.md)\n"
  },
  {
    "path": "docs/endpoints/legacy-rest.md",
    "content": "---\norder: 2\n---\n\n# Legacy Amino JSON REST\n\nThe irishub versions v1.0.0 (depends on Cosmos-SDK v0.41) and earlier provided REST endpoints to query the state and broadcast transactions. These endpoints are kept in irishub v1.0, but they are marked as deprecated, and will be removed after a few versions therefore call these endpoints legacy REST endpoints.\n\nSome important information concerning all legacy REST endpoints:\n\n- Most of these endpoints are backwards-comptatible. All breaking changes are described in the next section.\n- In particular, these endpoints still output Amino JSON. Cosmos-SDK v0.41 introduced Protobuf as the default encoding library throughout the codebase, but legacy REST endpoints are one of the few places where the encoding is hardcoded to Amino.\n\n## API Port, Activation and Configuration\n\nAll routes are configured under the following fields in `~/.iris/config/app.toml`:\n\n- `api.enable = true|false` field defines if the REST server should be enabled. Defaults to `true`.\n- `api.address = {string}` field defines the address (really, the port, since the host should be kept at `0.0.0.0`) the server should bind to. Defaults to `tcp://0.0.0.0:1317`.\n- some additional API configuration options are defined in `~/.iris/config/app.toml`, along with comments, please refer to that file directly.\n\n### Legacy REST API Routes\n\nThe REST routes present in Irishub v0.16 and earlier are marked as deprecated via a [HTTP deprecation header](https://tools.ietf.org/id/draft-dalal-deprecation-header-01.html). They are still maintained to keep backwards compatibility, but will be removed after a few versions.\n\nFor application developers, Legacy REST API routes needs to be wired up to the REST server, this is done by calling the `RegisterRESTRoutes` function on the ModuleManager.\n\n## Legacy REST Endpoint\n\n### Breaking Changes in Legacy REST Endpoints (Contrast with Cosmos-SDK v0.39 and earlier versions)\n\n| Legacy REST Endpoint                                                         | Description                                 | Breaking Change                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |\n| ---------------------------------------------------------------------------- | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `POST` `/txs`                                                                | Broadcast tx                                | Endpoint will error when trying to broadcast transactions that don't support Amino serialization (e.g. IBC txs)<sup>1</sup>.                                                                                                                                                                                                                                                                                                                                                           |\n| `POST` `/txs/encode`, `POST` `/txs/decode`                                   | Encode/decode Amino txs from JSON to binary | Endpoint will error when trying to encode/decode transactions that don't support Amino serialization (e.g. IBC txs)<sup>1</sup>.                                                                                                                                                                                                                                                                                                                                                       |\n| `GET` `/txs/{hash}`                                                          | Query tx by hash                            | Endpoint will error when trying to output transactions that don't support Amino serialization (e.g. IBC txs)<sup>1</sup>.                                                                                                                                                                                                                                                                                                                                                              |\n| `GET` `/txs`                                                                 | Query tx by events                          | Endpoint will error when trying to output transactions that don't support Amino serialization (e.g. IBC txs)<sup>1</sup>.                                                                                                                                                                                                                                                                                                                                                              |\n| `GET` `/gov/proposals/{id}/votes`, `GET` `/gov/proposals/{id}/votes/{voter}` | Gov endpoints for querying votes            | All gov endpoints which return votes return int32 in the `option` field instead of string: `1=VOTE_OPTION_YES, 2=VOTE_OPTION_ABSTAIN, 3=VOTE_OPTION_NO, 4=VOTE_OPTION_NO_WITH_VETO`.                                                                                                                                                                                                                                                                                                   |\n| `GET` `/staking/*`                                                           | Staking query endpoints                     | All staking endpoints which return validators have two breaking changes. First, the validator's `consensus_pubkey` field returns an Amino-encoded struct representing an `Any` instead of a bech32-encoded string representing the pubkey. The `value` field of the `Any` is the pubkey's raw key as base64-encoded bytes. Second, the validator's `status` field now returns an int32 instead of string: `1=BOND_STATUS_UNBONDED`, `2=BOND_STATUS_UNBONDING`, `3=BOND_STATUS_BONDED`. |\n| `GET` `/staking/validators`                                                  | Get all validators                          | BondStatus is now a protobuf enum instead of an int32, and JSON serialized using its protobuf name, so expect query parameters like `?status=BOND_STATUS_{BONDED,UNBONDED,UNBONDING}` as opposed to `?status={bonded,unbonded,unbonding}`.                                                                                                                                                                                                                                             |\n\n<sup>1</sup>: Transactions that don't support Amino serialization are the ones that contain one or more `Msg`s that are not registered with the Amino codec. Currently in the IRIShub, only IBC `Msg`s fall into this case.\n\n### Migrating to New REST Endpoints (from Cosmos-SDK v0.39)\n\n**IRIShub API Endpoints**\n\n| Legacy REST Endpoint                                                              | Description                                                         | New gRPC-gateway REST Endpoint                                                                                |\n| --------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |\n| `GET` `/bank/balances/{address}`                                                  | Get the balance of an address                                       | `GET` `/cosmos/bank/v1beta1/balances/{address}`                                                               |\n| `POST` `/bank/accounts/{address}/transfers`                                       | Send coins from one account to another                              | N/A, use Protobuf directly                                                                                    |\n| `GET` `/bank/total`                                                               | Get the total supply of all coins                                   | `GET` `/cosmos/bank/v1beta1/supply`                                                                           |\n| `GET` `/bank/total/{denom}`                                                       | Get the total supply of one coin                                    | `GET` `/cosmos/bank/v1beta1/supply/{denom}`                                                                   |\n| `GET` `/auth/accounts/{address}`                                                  | Get the account information on blockchain                           | `GET` `/cosmos/auth/v1beta1/accounts/{address}`                                                               |\n| `GET` `/staking/delegators/{delegatorAddr}/delegations`                           | Get all delegations from a delegator                                | `GET` `/cosmos/staking/v1beta1/delegations/{delegator_addr}`                                                  |\n| `POST` `/staking/delegators/{delegatorAddr}/delegations`                          | Submit delegation                                                   | N/A, use Protobuf directly                                                                                    |\n| `GET` `/staking/delegators/{delegatorAddr}/delegations/{validatorAddr}`           | Query a delegation between a delegator and a validator              | `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}`                      |\n| `GET` `/staking/delegators/{delegatorAddr}/unbonding_delegations`                 | Get all unbonding delegations from a delegator                      | `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations`                             |\n| `POST` `/staking/delegators/{delegatorAddr}/unbonding_delegations`                | Submit an unbonding delegation                                      | N/A, use Protobuf directly                                                                                    |\n| `GET` `/staking/delegators/{delegatorAddr}/unbonding_delegations/{validatorAddr}` | Query all unbonding delegations between a delegator and a validator | `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation` |\n| `GET` `/staking/redelegations`                                                    | Query redelegations                                                 | `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations`                                     |\n| `POST` `/staking/delegators/{delegatorAddr}/redelegations`                        | Submit a redelegations                                              | N/A, use Protobuf directly                                                                                    |\n| `GET` `/staking/delegators/{delegatorAddr}/validators`                            | Query all validators that a delegator is bonded to                  | `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators`                                        |\n| `GET` `/staking/delegators/{delegatorAddr}/validators/{validatorAddr}`            | Query a validator that a delegator is bonded to                     | `GET` `/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}`                       |\n| `GET` `/staking/validators`                                                       | Get all validators                                                  | `GET` `/cosmos/staking/v1beta1/validators`                                                                    |\n| `GET` `/staking/validators/{validatorAddr}`                                       | Get a single validator info                                         | `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}`                                                   |\n| `GET` `/staking/validators/{validatorAddr}/delegations`                           | Get all delegations to a validator                                  | `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/delegations`                                       |\n| `GET` `/staking/validators/{validatorAddr}/unbonding_delegations`                 | Get all unbonding delegations from a validator                      | `GET` `/cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations`                             |\n| `GET` `/staking/pool`                                                             | Get the current state of the staking pool                           | `GET` `/cosmos/staking/v1beta1/pool`                                                                          |\n| `GET` `/staking/parameters`                                                       | Get the current staking parameter values                            | `GET` `/cosmos/staking/v1beta1/params`                                                                        |\n| `GET` `/slashing/signing_infos`                                                   | Get all signing infos                                               | `GET` `/cosmos/slashing/v1beta1/signing_infos`                                                                |\n| `POST` `/slashing/validators/{validatorAddr}/unjail`                              | Unjail a jailed validator                                           | N/A, use Protobuf directly                                                                                    |\n| `GET` `/slashing/parameters`                                                      | Get slashing parameters                                             | `GET` `/cosmos/slashing/v1beta1/params`                                                                       |\n| `POST` `/gov/proposals`                                                           | Submit a proposal                                                   | N/A, use Protobuf directly                                                                                    |\n| `GET` `/gov/proposals`                                                            | Get all proposals                                                   | `GET` `/cosmos/gov/v1beta1/proposals`                                                                         |\n| `POST` `/gov/proposals/param_change`                                              | Generate a parameter change proposal transactionl                   | N/A, use Protobuf directly                                                                                    |\n| `GET` `/gov/proposals/{proposal-id}`                                              | Get proposal by id                                                  | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}`                                                           |\n| `GET` `/gov/proposals/{proposal-id}/proposer`                                     | Get proposer of a proposal                                          | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}` (Get proposer from `Proposal` struct)                     |\n| `GET` `/gov/proposals/{proposal-id}/deposits`                                     | Get deposits of a proposal                                          | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits`                                                  |\n| `POST` `/gov/proposals/{proposal-id}/deposits`                                    | Deposit tokens to a proposal                                        | N/A, use Protobuf directly                                                                                    |\n| `GET` `/gov/proposals/{proposal-id}/deposits/{depositor}`                         | Get depositor a of deposit                                          | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}`                                      |\n| `GET` `/gov/proposals/{proposal-id}/votes`                                        | Get votes of a proposal                                             | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/votes`                                                     |\n| `POST` `/gov/proposals/{proposal-id}/votes`                                       | Vote a proposal                                                     | N/A, use Protobuf directly                                                                                    |\n| `GET` `/gov/proposals/{proposal-id}/votes/{voter}`                                | Get voted information by voterAddr                                  | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}`                                             |\n| `GET` `/gov/proposals/{proposal-id}/tally`                                        | Get tally of a proposal                                             | `GET` `/cosmos/gov/v1beta1/proposals/{proposal_id}/tally`                                                     |\n| `GET` `/gov/parameters/deposit`                                                   | Get governance deposit parameters                                   | `GET` `/cosmos/gov/v1beta1/params/{params_type}`                                                              |\n| `GET` `/gov/parameters/tallying`                                                  | Query governance tally parameters                                   | `GET` `/cosmos/gov/v1beta1/params/{params_type}`                                                              |\n| `GET` `/gov/parameters/voting`                                                    | Get governance voting parameters                                    | `GET` `/cosmos/gov/v1beta1/params/{params_type}`                                                              |\n| `GET` `/distribution/delegators/{delegatorAddr}/rewards`                          | Get the total rewards balance from all delegations                  | `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards`                                   |\n| `POST` `/distribution/delegators/{delegatorAddr}/rewards`                         | Withdraw all delegator rewards                                      | N/A, use Protobuf directly                                                                                    |\n| `GET` `/distribution/delegators/{delegatorAddr}/rewards/{validatorAddr}`          | Query a delegation reward                                           | `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}`               |\n| `POST` `/distribution/delegators/{delegatorAddr}/rewards/{validatorAddr}`         | Withdraw a delegation reward                                        | N/A, use Protobuf directly                                                                                    |\n| `GET` `/distribution/delegators/{delegatorAddr}/withdraw_address`                 | Get the rewards withdrawal address                                  | `GET` `/cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address`                          |\n| `POST` `/distribution/delegators/{delegatorAddr}/withdraw_address`                | Replace the rewards withdrawal address                              | N/A, use Protobuf directly                                                                                    |\n| `GET` `/distribution/validators/{validatorAddr}`                                  | Validator distribution information                                  | N/A, use Protobuf directly                                                                                    |\n| `GET` `/distribution/validators/{validatorAddr}/outstanding_rewards`              | Outstanding rewards of a single validator                           | `GET` `/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards`                       |\n| `GET` `/distribution/validators/{validatorAddr}/rewards`                          | Commission and self-delegation rewards of a single a validator      | `GET` `/cosmos/distribution/v1beta1/validators/{validator_address}/commission` <br> `GET` `/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards`  |\n| `POST` `/distribution/validators/{validatorAddr}/rewards`                         | Withdraw the validator's rewards                                    | N/A, use Protobuf directly                                                                                    |\n| `GET` `/distribution/community_pool`                                              | Get the amount held in the community pool                           | `GET` `/cosmos/distribution/v1beta1/community_pool`                                                           |\n| `GET` `/distribution/parameters`                                                  | Get the current distribution parameter values                       | `GET` `/cosmos/distribution/v1beta1/params`                                                                   |\n\n**Tendermint API Endpoints**\n\n| Legacy REST Endpoint            | Description                                      | New gRPC-gateway REST Endpoint                                 |\n| ------------------------------- | ------------------------------------------------ | -------------------------------------------------------------- |\n| `GET` `/node_info`              | Get the properties of the connected node         | `GET` `/cosmos/base/tendermint/v1beta1/node_info`              |\n| `GET` `/syncing`                | Get syncing state of node                        | `GET` `/cosmos/base/tendermint/v1beta1/syncing`                |\n| `GET` `/blocks/latest`          | Get the latest block                             | `GET` `/cosmos/base/tendermint/v1beta1/blocks/latest`          |\n| `GET` `/blocks/{height}`        | Get a block at a certain height                  | `GET` `/cosmos/base/tendermint/v1beta1/blocks/{height}`        |\n| `GET` `/validatorsets/latest`   | Get the latest validator set                     | `GET` `/cosmos/base/tendermint/v1beta1/validatorsets/latest`   |\n| `GET` `/validatorsets/{height}` | Get a validator set a certain height             | `GET` `/cosmos/base/tendermint/v1beta1/validatorsets/{height}` |\n| `GET` `/txs/{hash}`             | Query tx by hash                                 | `GET` `/cosmos/tx/v1beta1/txs/{hash}`                          |\n| `GET` `/txs`                    | Query tx by events                               | `GET` `/cosmos/tx/v1beta1/txs`                                 |\n| `POST` `/txs`                   | Broadcast tx                                     | `POST` `/cosmos/tx/v1beta1/txs`                                |\n| `POST` `/txs/encode`            | Encodes an Amino JSON tx to an Amino binary tx   | N/A, use Protobuf directly                                     |\n| `POST` `/txs/decode`            | Decodes an Amino binary tx into an Amino JSON tx | N/A, use Protobuf directly                                     |\n\n## Breaking changes in High Priority Endpoints for Queries\n\n**Here are the High Priority Endpoints for Queries**\n\n- Staking\n  - Validators\n  - Delegators\n- Bank\n  - Balances\n- Gov\n- Auth\n- Distributions\n\n### Bank\n\n**Endpoint Name:** QueryBalance\n\n- **Endpoint Path:** `/bank/balances/{address}`\n- **What Changed:**\n  - No Changes observed.\n  - See [coin cross-chain transfer source tracing](https://github.com/cosmos/cosmos-sdk/pull/6662) for details on how on non-native IBC coins will written into the denom value. This will include a hash of source trace for each coin. The core decision if the hash should replace the denom or be prepended to the denom.\n\n### Validators\n\n**Endpoint Name:** QueryValidators\n\n- **Endpoint Path:** `/staking/validators`\n- **What Changed:**\n  - The fields `unbonding_height` and `jailed` are no longer supported\n  - The fields in description are now omit if empty. Rather than returning fields with empty strings. We now don't return the field if the validator has chosen not to configure it. For instance at launch, no validator will have a security contact filled out and the field will only appear once they do.\n- **Sample JSON:**\n\n    ```JSON\n    {\n        \"commission\": {\n            \"commission_rates\": {\n                \"max_change_rate\": \"0.000000000000000000\",\n                \"max_rate\": \"0.000000000000000000\",\n                \"rate\": \"0.000000000000000000\"\n            },\n            \"update_time\": \"1970-01-01T00:00:00Z\"\n        },\n        \"consensus_pubkey\": \"cosmosvalconspub1zcjduepqwuxd2yevzmsrmrjx2su8kdlk44eqfdzeqx27zejuen6m0nkcpzps0qavpw\",\n        \"delegator_shares\": \"0.000000000000000000\",\n        \"description\": {\n            \"details\": \"security\",\n            \"identity\": \"identity\",\n            \"moniker\": \"moniker\",\n            \"security_contact\": \"details\",\n            \"website\": \"website\"\n        },\n        \"min_self_delegation\": \"1\",\n        \"operator_address\": \"cosmosvaloper1pcpl7xhxq0wm72e9ljls2sxr5h3vqwytnq44sr\",\n        \"status\": 1,\n        \"tokens\": \"0\",\n        \"unbonding_time\": \"1970-01-01T00:00:00Z\"\n    }\n    ```\n\n### Delegators\n\n**Endpoint Name:** QueryDelegatorDelegations\n\n- **Endpoint Path:** `/staking/delegators/delegations`\n- **What Changed:**\n  - `balance` now is no longer a number. It is a field with two values: `amount` and `Denom`\n  - `delegator_address` is no longer a string. It’s a field called `delegation` with three values: `delegator_address\", \"shares\", \"validator_address`\n  - The old field `validator_address` is no longer used. Two new fields `validator_dst_address` and `validator_src_address` replace this in the new `redelegation` field.\n- **Sample JSON:**\n\n    ```JSON\n    {\n        \"balance\": {\n            \"amount\": \"5\",\n            \"denom\": \"stake\"\n        },\n        \"delegation\": {\n            \"delegator_address\": \"cosmos1n2k9ygw2ws9sg86mrx84pdcre5geqd5ugt44h0\",\n            \"shares\": \"5.000000000000000000\",\n            \"validator_address\": \"cosmosvaloper155998a4hv5kqvuxr9jryjxrtnlydvqu8c0cy03\"\n        }\n    }\n    ```\n\n**Endpoint Name:** QueryRedelegations\n\n- **Endpoint Path:** `/staking/redelegations`\n- **What Changed:** The following old fields are now sub fields of a new field called `redelegation_entry`:\n  - `completion_time`\n  - `initial_balance`\n  - `shares_dst`\n- The old field `creation_height` is no longer supported.\n- The following are new fields:\n  - `redelegation` which holds the sub-fields.\n    - `delegator_address` (new)\n    - `entries` (new)\n    - `valdiator_dst_address`\n    - `validator_src_address`\n- **Sample JSON:**\n\n    ```JSON\n    {\n        \"entries\": [\n            {\n                \"balance\": \"5\",\n                \"redelegation_entry\": {\n                    \"completion_time\": \"1969-12-31T16:00:00-08:00\",\n                    \"initial_balance\": \"5\",\n                    \"shares_dst\": \"5.000000000000000000\"\n                }\n            },\n            {\n                \"balance\": \"5\",\n                \"redelegation_entry\": {\n                    \"completion_time\": \"1969-12-31T16:00:00-08:00\",\n                    \"initial_balance\": \"5\",\n                    \"shares_dst\": \"5.000000000000000000\"\n                }\n            }\n        ],\n        \"redelegation\": {\n            \"delegator_address\": \"cosmos104yggz5x4ype50c59vu84ze2w36pc3swm2u698\",\n            \"entries\": null,\n            \"validator_dst_address\": \"cosmosvaloper1td8yl7g5662m0mpptaxjmcn9jtzvl0wgulvv23\",\n            \"validator_src_address\": \"cosmosvaloper1gqv70e79a8q0yz5s5qhsjhdl2c79496faer0vz\"\n        }\n    }\n    ```\n\n**Endpoint Name:** QueryUnbondingDelegation\n\n- **Endpoint Path:** `/staking/unbondingDelegation`\n- **What Changed:**\n  - The old field `creation_height` is no longer supported\n\n### Distributions\n\n**Endpoint Name:** getQueriedValidatorOutstandingRewards\n\n- **Endpoint Path:** `/distribution/validators/{validatorAddr}/outstanding_rewards`\n- **What Changed:**\n  - The new field `rewards` is the new root level field for the output\n- **Sample JSON:**\n\n    ```JSON\n    {\n        \"rewards\": [\n            {\n                \"denom\": \"mytoken\",\n                \"amount\": \"3.000000000000000000\"\n            },\n            {\n                \"denom\": \"myothertoken\",\n                \"amount\": \"0.000000300000000000\"\n            }\n        ]\n    }\n    ```\n\n**Endpoint Name:** getQueriedValidatorCommission\n\n- **Endpoint Path:** `/distribution/validators/{validatorAddr}`\n- **What Changed:**\n  - The new field `commission` is the new root level field for the output\n\n- **Sample JSON:**\n\n    ```JSON\n    {\n        \"commission\": [\n            {\n                \"denom\": \"token1\",\n                \"amount\": \"4.000000000000000000\"\n            },\n            {\n                \"denom\": \"token2\",\n                \"amount\": \"2.000000000000000000\"\n            }\n        ]\n    }\n    ```\n\n**Endpoint Name:** getQueriedValidatorSlashes\n\n- **Endpoint Path:** `/distribution/validators/{validatorAddr}`\n- **What Changed:** No change\n  \n- **Endpoint Name:** getQueriedDelegationRewards\n- **Endpoint Path:** `/distribution/delegators/{delegatorAddr}/rewards`\n- **What Changed:** No change\n\n## Generating and Signing Transactions (Fully Backward Compatible)\n\nThe same code as integrating with irishub-v0.16.3 mainnet. The transaction structure is as follows:\n\n```json\n{\n    \"type\": \"cosmos-sdk/StdTx\",\n    \"value\": {\n        \"msg\": [\n            {\n                \"type\": \"cosmos-sdk/MsgSend\",\n                \"value\": {\n                    \"from_address\": \"iaa1rkgdpj6fyyyu7pnhmc3v7gw9uls4mnajvzdwkt\",\n                    \"to_address\": \"iaa1q6t5439f0rkvkzl38m0f43e0kpv3mx7x2shlq8\",\n                    \"amount\": [\n                        {\n                            \"denom\": \"uiris\",\n                            \"amount\": \"1000000\"\n                        }\n                    ]\n                }\n            }\n        ],\n        \"fee\": {\n            \"amount\": [\n                {\n                    \"denom\": \"uiris\",\n                    \"amount\": \"30000\"\n                }\n            ],\n            \"gas\": \"200000\"\n        },\n        \"signatures\": null,\n        \"memo\": \"Sent via irishub client\"\n    }\n}\n```\n\nWhere the IRIShub address prefix uses `iaa` instead, which affects the fields:\n\n- value.msg.value.from_adress\n- value.msg.value.to_address\n\nDenom uses `uiris` instead (1iris = 10<sup>6</sup>uiris), which affects fields:\n\n- value.msg.value.amount.denom\n- value.fee.amount.denom\n\n## Broadcasting a transaction (Fully Backward Compatible)\n\nThe same code as integrating with irishub mainnet, call `POST` `/txs` to send a transaction, as the example below:\n\n```bash\ncurl -X POST \"http://localhost:1317/txs\" -H \"accept: application/json\" -H \"Content-Type: application/json\" -d \"{ \\\"tx\\\": {\\\"msg\\\":[{\\\"type\\\":\\\"cosmos-sdk/MsgSend\\\",\\\"value\\\":{\\\"from_address\\\":\\\"iaa1rkgdpj6fyyyu7pnhmc3v7gw9uls4mnajvzdwkt\\\",\\\"to_address\\\":\\\"iaa1q6t5439f0rkvkzl38m0f43e0kpv3mx7x2shlq8\\\",\\\"amount\\\":[{\\\"denom\\\":\\\"uiris\\\",\\\"amount\\\":\\\"1000000\\\"}]}}],\\\"fee\\\":{\\\"amount\\\":[{\\\"denom\\\":\\\"uiris\\\",\\\"amount\\\":\\\"30000\\\"}],\\\"gas\\\":\\\"200000\\\"},\\\"signatures\\\":[{\\\"pub_key\\\":{\\\"type\\\":\\\"tendermint/PubKeySecp256k1\\\",\\\"value\\\":\\\"AxGagdsRTKni/h1+vCFzTpNltwoiU7SwIR2dg6Jl5a//\\\"},\\\"signature\\\":\\\"Pu8yiRVO8oB2YDDHyB047dXNArbVImasmKBrm8Kr+6B08y8QQ7YG1eVgHi5OIYYclccCf3Ju/BQ78qsMWMniNQ==\\\"}],\\\"memo\\\":\\\"Sent via irishub client\\\"}, \\\"mode\\\": \\\"block\\\"}\"\n```\n\n## Breaking Changes in Querying Transactions\n\n### Tx\n\n- **Endpoint Name:** QueryTx\n- **Endpoint Path:** `GET /txs`&&`GET /txs/{hash}`\n- **What Changed:**\n  - Tags are no longer used; use the events field instead\n  - The result field is no longer used, and the field in the original result is moved to the first level\n  - The coin_flow field is no longer used\n\n- **Sample JSON:**\n\n  ```json\n  {\n      \"height\": \"5\",\n      \"txhash\": \"E663768B616B1ACD2912E47C36FEBC7DB0E0974D6DB3823D4C656E0EAB8C679D\",\n      \"data\": \"0A060A0473656E64\",\n      \"raw_log\": \"[{\\\"events\\\":[{\\\"type\\\":\\\"message\\\",\\\"attributes\\\":[{\\\"key\\\":\\\"action\\\",\\\"value\\\":\\\"send\\\"},{\\\"key\\\":\\\"sender\\\",\\\"value\\\":\\\"iaa18awn3k70u05tlcul8w2qnl64g002uj4kjn93rn\\\"},{\\\"key\\\":\\\"module\\\",\\\"value\\\":\\\"bank\\\"}]},{\\\"type\\\":\\\"transfer\\\",\\\"attributes\\\":[{\\\"key\\\":\\\"recipient\\\",\\\"value\\\":\\\"iaa1w976a5jrhsj06dqmrh2x9qxzel74qtcmapklxc\\\"},{\\\"key\\\":\\\"sender\\\",\\\"value\\\":\\\"iaa18awn3k70u05tlcul8w2qnl64g002uj4kjn93rn\\\"},{\\\"key\\\":\\\"amount\\\",\\\"value\\\":\\\"1000000uiris\\\"}]}]}]\",\n      \"logs\": [\n          {\n              \"events\": [\n                  {\n                      \"type\": \"message\",\n                      \"attributes\": [\n                          {\n                              \"key\": \"action\",\n                              \"value\": \"send\"\n                          },\n                          {\n                              \"key\": \"sender\",\n                              \"value\": \"iaa18awn3k70u05tlcul8w2qnl64g002uj4kjn93rn\"\n                          },\n                          {\n                              \"key\": \"module\",\n                              \"value\": \"bank\"\n                          }\n                      ]\n                  },\n                  {\n                      \"type\": \"transfer\",\n                      \"attributes\": [\n                          {\n                              \"key\": \"recipient\",\n                              \"value\": \"iaa1w976a5jrhsj06dqmrh2x9qxzel74qtcmapklxc\"\n                          },\n                          {\n                              \"key\": \"sender\",\n                              \"value\": \"iaa18awn3k70u05tlcul8w2qnl64g002uj4kjn93rn\"\n                          },\n                          {\n                              \"key\": \"amount\",\n                              \"value\": \"1000000uiris\"\n                          }\n                      ]\n                  }\n              ]\n          }\n      ],\n      \"gas_wanted\": \"200000\",\n      \"gas_used\": \"69256\",\n      \"tx\": {\n          \"type\": \"cosmos-sdk/StdTx\",\n          \"value\": {\n              \"msg\": [\n                  {\n                      \"type\": \"cosmos-sdk/MsgSend\",\n                      \"value\": {\n                          \"from_address\": \"iaa18awn3k70u05tlcul8w2qnl64g002uj4kjn93rn\",\n                          \"to_address\": \"iaa1w976a5jrhsj06dqmrh2x9qxzel74qtcmapklxc\",\n                          \"amount\": [\n                              {\n                                  \"denom\": \"uiris\",\n                                  \"amount\": \"1000000\"\n                              }\n                          ]\n                      }\n                  }\n              ],\n              \"fee\": {\n                  \"amount\": [\n                      {\n                          \"denom\": \"uiris\",\n                          \"amount\": \"30000\"\n                      }\n                  ],\n                  \"gas\": \"200000\"\n              },\n              \"signatures\": [],\n              \"memo\": \"\",\n              \"timeout_height\": \"0\"\n          }\n      },\n      \"timestamp\": \"2021-01-18T07:29:21Z\"\n  }\n  ```\n"
  },
  {
    "path": "docs/endpoints/proto-docs.md",
    "content": "---\norder: 6\n---\n# Protobuf Documentation\n<!-- This file is auto-generated. Please do not modify it yourself. -->\n<a name=\"top\"></a>\n\n## Table of Contents\n\n- [cosmos/base/v1beta1/coin.proto](#cosmos/base/v1beta1/coin.proto)\n    - [Coin](#cosmos.base.v1beta1.Coin)\n    - [DecCoin](#cosmos.base.v1beta1.DecCoin)\n    - [DecProto](#cosmos.base.v1beta1.DecProto)\n    - [IntProto](#cosmos.base.v1beta1.IntProto)\n  \n- [coinswap/coinswap.proto](#coinswap/coinswap.proto)\n    - [Input](#irismod.coinswap.Input)\n    - [Output](#irismod.coinswap.Output)\n    - [Params](#irismod.coinswap.Params)\n    - [Pool](#irismod.coinswap.Pool)\n  \n- [coinswap/genesis.proto](#coinswap/genesis.proto)\n    - [GenesisState](#irismod.coinswap.GenesisState)\n  \n- [cosmos/base/query/v1beta1/pagination.proto](#cosmos/base/query/v1beta1/pagination.proto)\n    - [PageRequest](#cosmos.base.query.v1beta1.PageRequest)\n    - [PageResponse](#cosmos.base.query.v1beta1.PageResponse)\n  \n- [coinswap/query.proto](#coinswap/query.proto)\n    - [PoolInfo](#irismod.coinswap.PoolInfo)\n    - [QueryLiquidityPoolRequest](#irismod.coinswap.QueryLiquidityPoolRequest)\n    - [QueryLiquidityPoolResponse](#irismod.coinswap.QueryLiquidityPoolResponse)\n    - [QueryLiquidityPoolsRequest](#irismod.coinswap.QueryLiquidityPoolsRequest)\n    - [QueryLiquidityPoolsResponse](#irismod.coinswap.QueryLiquidityPoolsResponse)\n  \n    - [Query](#irismod.coinswap.Query)\n  \n- [coinswap/tx.proto](#coinswap/tx.proto)\n    - [MsgAddLiquidity](#irismod.coinswap.MsgAddLiquidity)\n    - [MsgAddLiquidityResponse](#irismod.coinswap.MsgAddLiquidityResponse)\n    - [MsgRemoveLiquidity](#irismod.coinswap.MsgRemoveLiquidity)\n    - [MsgRemoveLiquidityResponse](#irismod.coinswap.MsgRemoveLiquidityResponse)\n    - [MsgSwapCoinResponse](#irismod.coinswap.MsgSwapCoinResponse)\n    - [MsgSwapOrder](#irismod.coinswap.MsgSwapOrder)\n  \n    - [Msg](#irismod.coinswap.Msg)\n  \n- [cosmos/auth/v1beta1/auth.proto](#cosmos/auth/v1beta1/auth.proto)\n    - [BaseAccount](#cosmos.auth.v1beta1.BaseAccount)\n    - [ModuleAccount](#cosmos.auth.v1beta1.ModuleAccount)\n    - [Params](#cosmos.auth.v1beta1.Params)\n  \n- [cosmos/auth/v1beta1/genesis.proto](#cosmos/auth/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.auth.v1beta1.GenesisState)\n  \n- [cosmos/auth/v1beta1/query.proto](#cosmos/auth/v1beta1/query.proto)\n    - [QueryAccountRequest](#cosmos.auth.v1beta1.QueryAccountRequest)\n    - [QueryAccountResponse](#cosmos.auth.v1beta1.QueryAccountResponse)\n    - [QueryParamsRequest](#cosmos.auth.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.auth.v1beta1.QueryParamsResponse)\n  \n    - [Query](#cosmos.auth.v1beta1.Query)\n  \n- [cosmos/bank/v1beta1/bank.proto](#cosmos/bank/v1beta1/bank.proto)\n    - [DenomUnit](#cosmos.bank.v1beta1.DenomUnit)\n    - [Input](#cosmos.bank.v1beta1.Input)\n    - [Metadata](#cosmos.bank.v1beta1.Metadata)\n    - [Output](#cosmos.bank.v1beta1.Output)\n    - [Params](#cosmos.bank.v1beta1.Params)\n    - [SendEnabled](#cosmos.bank.v1beta1.SendEnabled)\n    - [Supply](#cosmos.bank.v1beta1.Supply)\n  \n- [cosmos/bank/v1beta1/genesis.proto](#cosmos/bank/v1beta1/genesis.proto)\n    - [Balance](#cosmos.bank.v1beta1.Balance)\n    - [GenesisState](#cosmos.bank.v1beta1.GenesisState)\n  \n- [cosmos/bank/v1beta1/query.proto](#cosmos/bank/v1beta1/query.proto)\n    - [QueryAllBalancesRequest](#cosmos.bank.v1beta1.QueryAllBalancesRequest)\n    - [QueryAllBalancesResponse](#cosmos.bank.v1beta1.QueryAllBalancesResponse)\n    - [QueryBalanceRequest](#cosmos.bank.v1beta1.QueryBalanceRequest)\n    - [QueryBalanceResponse](#cosmos.bank.v1beta1.QueryBalanceResponse)\n    - [QueryDenomMetadataRequest](#cosmos.bank.v1beta1.QueryDenomMetadataRequest)\n    - [QueryDenomMetadataResponse](#cosmos.bank.v1beta1.QueryDenomMetadataResponse)\n    - [QueryDenomsMetadataRequest](#cosmos.bank.v1beta1.QueryDenomsMetadataRequest)\n    - [QueryDenomsMetadataResponse](#cosmos.bank.v1beta1.QueryDenomsMetadataResponse)\n    - [QueryParamsRequest](#cosmos.bank.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.bank.v1beta1.QueryParamsResponse)\n    - [QuerySupplyOfRequest](#cosmos.bank.v1beta1.QuerySupplyOfRequest)\n    - [QuerySupplyOfResponse](#cosmos.bank.v1beta1.QuerySupplyOfResponse)\n    - [QueryTotalSupplyRequest](#cosmos.bank.v1beta1.QueryTotalSupplyRequest)\n    - [QueryTotalSupplyResponse](#cosmos.bank.v1beta1.QueryTotalSupplyResponse)\n  \n    - [Query](#cosmos.bank.v1beta1.Query)\n  \n- [cosmos/bank/v1beta1/tx.proto](#cosmos/bank/v1beta1/tx.proto)\n    - [MsgMultiSend](#cosmos.bank.v1beta1.MsgMultiSend)\n    - [MsgMultiSendResponse](#cosmos.bank.v1beta1.MsgMultiSendResponse)\n    - [MsgSend](#cosmos.bank.v1beta1.MsgSend)\n    - [MsgSendResponse](#cosmos.bank.v1beta1.MsgSendResponse)\n  \n    - [Msg](#cosmos.bank.v1beta1.Msg)\n  \n- [cosmos/base/abci/v1beta1/abci.proto](#cosmos/base/abci/v1beta1/abci.proto)\n    - [ABCIMessageLog](#cosmos.base.abci.v1beta1.ABCIMessageLog)\n    - [Attribute](#cosmos.base.abci.v1beta1.Attribute)\n    - [GasInfo](#cosmos.base.abci.v1beta1.GasInfo)\n    - [MsgData](#cosmos.base.abci.v1beta1.MsgData)\n    - [Result](#cosmos.base.abci.v1beta1.Result)\n    - [SearchTxsResult](#cosmos.base.abci.v1beta1.SearchTxsResult)\n    - [SimulationResponse](#cosmos.base.abci.v1beta1.SimulationResponse)\n    - [StringEvent](#cosmos.base.abci.v1beta1.StringEvent)\n    - [TxMsgData](#cosmos.base.abci.v1beta1.TxMsgData)\n    - [TxResponse](#cosmos.base.abci.v1beta1.TxResponse)\n  \n- [cosmos/base/kv/v1beta1/kv.proto](#cosmos/base/kv/v1beta1/kv.proto)\n    - [Pair](#cosmos.base.kv.v1beta1.Pair)\n    - [Pairs](#cosmos.base.kv.v1beta1.Pairs)\n  \n- [cosmos/base/reflection/v1beta1/reflection.proto](#cosmos/base/reflection/v1beta1/reflection.proto)\n    - [ListAllInterfacesRequest](#cosmos.base.reflection.v1beta1.ListAllInterfacesRequest)\n    - [ListAllInterfacesResponse](#cosmos.base.reflection.v1beta1.ListAllInterfacesResponse)\n    - [ListImplementationsRequest](#cosmos.base.reflection.v1beta1.ListImplementationsRequest)\n    - [ListImplementationsResponse](#cosmos.base.reflection.v1beta1.ListImplementationsResponse)\n  \n    - [ReflectionService](#cosmos.base.reflection.v1beta1.ReflectionService)\n  \n- [cosmos/base/snapshots/v1beta1/snapshot.proto](#cosmos/base/snapshots/v1beta1/snapshot.proto)\n    - [Metadata](#cosmos.base.snapshots.v1beta1.Metadata)\n    - [Snapshot](#cosmos.base.snapshots.v1beta1.Snapshot)\n  \n- [cosmos/base/store/v1beta1/commit_info.proto](#cosmos/base/store/v1beta1/commit_info.proto)\n    - [CommitID](#cosmos.base.store.v1beta1.CommitID)\n    - [CommitInfo](#cosmos.base.store.v1beta1.CommitInfo)\n    - [StoreInfo](#cosmos.base.store.v1beta1.StoreInfo)\n  \n- [cosmos/base/store/v1beta1/snapshot.proto](#cosmos/base/store/v1beta1/snapshot.proto)\n    - [SnapshotIAVLItem](#cosmos.base.store.v1beta1.SnapshotIAVLItem)\n    - [SnapshotItem](#cosmos.base.store.v1beta1.SnapshotItem)\n    - [SnapshotStoreItem](#cosmos.base.store.v1beta1.SnapshotStoreItem)\n  \n- [cosmos/base/tendermint/v1beta1/query.proto](#cosmos/base/tendermint/v1beta1/query.proto)\n    - [GetBlockByHeightRequest](#cosmos.base.tendermint.v1beta1.GetBlockByHeightRequest)\n    - [GetBlockByHeightResponse](#cosmos.base.tendermint.v1beta1.GetBlockByHeightResponse)\n    - [GetLatestBlockRequest](#cosmos.base.tendermint.v1beta1.GetLatestBlockRequest)\n    - [GetLatestBlockResponse](#cosmos.base.tendermint.v1beta1.GetLatestBlockResponse)\n    - [GetLatestValidatorSetRequest](#cosmos.base.tendermint.v1beta1.GetLatestValidatorSetRequest)\n    - [GetLatestValidatorSetResponse](#cosmos.base.tendermint.v1beta1.GetLatestValidatorSetResponse)\n    - [GetNodeInfoRequest](#cosmos.base.tendermint.v1beta1.GetNodeInfoRequest)\n    - [GetNodeInfoResponse](#cosmos.base.tendermint.v1beta1.GetNodeInfoResponse)\n    - [GetSyncingRequest](#cosmos.base.tendermint.v1beta1.GetSyncingRequest)\n    - [GetSyncingResponse](#cosmos.base.tendermint.v1beta1.GetSyncingResponse)\n    - [GetValidatorSetByHeightRequest](#cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightRequest)\n    - [GetValidatorSetByHeightResponse](#cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightResponse)\n    - [Module](#cosmos.base.tendermint.v1beta1.Module)\n    - [Validator](#cosmos.base.tendermint.v1beta1.Validator)\n    - [VersionInfo](#cosmos.base.tendermint.v1beta1.VersionInfo)\n  \n    - [Service](#cosmos.base.tendermint.v1beta1.Service)\n  \n- [cosmos/capability/v1beta1/capability.proto](#cosmos/capability/v1beta1/capability.proto)\n    - [Capability](#cosmos.capability.v1beta1.Capability)\n    - [CapabilityOwners](#cosmos.capability.v1beta1.CapabilityOwners)\n    - [Owner](#cosmos.capability.v1beta1.Owner)\n  \n- [cosmos/capability/v1beta1/genesis.proto](#cosmos/capability/v1beta1/genesis.proto)\n    - [GenesisOwners](#cosmos.capability.v1beta1.GenesisOwners)\n    - [GenesisState](#cosmos.capability.v1beta1.GenesisState)\n  \n- [cosmos/crisis/v1beta1/genesis.proto](#cosmos/crisis/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.crisis.v1beta1.GenesisState)\n  \n- [cosmos/crisis/v1beta1/tx.proto](#cosmos/crisis/v1beta1/tx.proto)\n    - [MsgVerifyInvariant](#cosmos.crisis.v1beta1.MsgVerifyInvariant)\n    - [MsgVerifyInvariantResponse](#cosmos.crisis.v1beta1.MsgVerifyInvariantResponse)\n  \n    - [Msg](#cosmos.crisis.v1beta1.Msg)\n  \n- [cosmos/crypto/ed25519/keys.proto](#cosmos/crypto/ed25519/keys.proto)\n    - [PrivKey](#cosmos.crypto.ed25519.PrivKey)\n    - [PubKey](#cosmos.crypto.ed25519.PubKey)\n  \n- [cosmos/crypto/multisig/keys.proto](#cosmos/crypto/multisig/keys.proto)\n    - [LegacyAminoPubKey](#cosmos.crypto.multisig.LegacyAminoPubKey)\n  \n- [cosmos/crypto/multisig/v1beta1/multisig.proto](#cosmos/crypto/multisig/v1beta1/multisig.proto)\n    - [CompactBitArray](#cosmos.crypto.multisig.v1beta1.CompactBitArray)\n    - [MultiSignature](#cosmos.crypto.multisig.v1beta1.MultiSignature)\n  \n- [cosmos/crypto/secp256k1/keys.proto](#cosmos/crypto/secp256k1/keys.proto)\n    - [PrivKey](#cosmos.crypto.secp256k1.PrivKey)\n    - [PubKey](#cosmos.crypto.secp256k1.PubKey)\n  \n- [cosmos/distribution/v1beta1/distribution.proto](#cosmos/distribution/v1beta1/distribution.proto)\n    - [CommunityPoolSpendProposal](#cosmos.distribution.v1beta1.CommunityPoolSpendProposal)\n    - [CommunityPoolSpendProposalWithDeposit](#cosmos.distribution.v1beta1.CommunityPoolSpendProposalWithDeposit)\n    - [DelegationDelegatorReward](#cosmos.distribution.v1beta1.DelegationDelegatorReward)\n    - [DelegatorStartingInfo](#cosmos.distribution.v1beta1.DelegatorStartingInfo)\n    - [FeePool](#cosmos.distribution.v1beta1.FeePool)\n    - [Params](#cosmos.distribution.v1beta1.Params)\n    - [ValidatorAccumulatedCommission](#cosmos.distribution.v1beta1.ValidatorAccumulatedCommission)\n    - [ValidatorCurrentRewards](#cosmos.distribution.v1beta1.ValidatorCurrentRewards)\n    - [ValidatorHistoricalRewards](#cosmos.distribution.v1beta1.ValidatorHistoricalRewards)\n    - [ValidatorOutstandingRewards](#cosmos.distribution.v1beta1.ValidatorOutstandingRewards)\n    - [ValidatorSlashEvent](#cosmos.distribution.v1beta1.ValidatorSlashEvent)\n    - [ValidatorSlashEvents](#cosmos.distribution.v1beta1.ValidatorSlashEvents)\n  \n- [cosmos/distribution/v1beta1/genesis.proto](#cosmos/distribution/v1beta1/genesis.proto)\n    - [DelegatorStartingInfoRecord](#cosmos.distribution.v1beta1.DelegatorStartingInfoRecord)\n    - [DelegatorWithdrawInfo](#cosmos.distribution.v1beta1.DelegatorWithdrawInfo)\n    - [GenesisState](#cosmos.distribution.v1beta1.GenesisState)\n    - [ValidatorAccumulatedCommissionRecord](#cosmos.distribution.v1beta1.ValidatorAccumulatedCommissionRecord)\n    - [ValidatorCurrentRewardsRecord](#cosmos.distribution.v1beta1.ValidatorCurrentRewardsRecord)\n    - [ValidatorHistoricalRewardsRecord](#cosmos.distribution.v1beta1.ValidatorHistoricalRewardsRecord)\n    - [ValidatorOutstandingRewardsRecord](#cosmos.distribution.v1beta1.ValidatorOutstandingRewardsRecord)\n    - [ValidatorSlashEventRecord](#cosmos.distribution.v1beta1.ValidatorSlashEventRecord)\n  \n- [cosmos/distribution/v1beta1/query.proto](#cosmos/distribution/v1beta1/query.proto)\n    - [QueryCommunityPoolRequest](#cosmos.distribution.v1beta1.QueryCommunityPoolRequest)\n    - [QueryCommunityPoolResponse](#cosmos.distribution.v1beta1.QueryCommunityPoolResponse)\n    - [QueryDelegationRewardsRequest](#cosmos.distribution.v1beta1.QueryDelegationRewardsRequest)\n    - [QueryDelegationRewardsResponse](#cosmos.distribution.v1beta1.QueryDelegationRewardsResponse)\n    - [QueryDelegationTotalRewardsRequest](#cosmos.distribution.v1beta1.QueryDelegationTotalRewardsRequest)\n    - [QueryDelegationTotalRewardsResponse](#cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse)\n    - [QueryDelegatorValidatorsRequest](#cosmos.distribution.v1beta1.QueryDelegatorValidatorsRequest)\n    - [QueryDelegatorValidatorsResponse](#cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse)\n    - [QueryDelegatorWithdrawAddressRequest](#cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressRequest)\n    - [QueryDelegatorWithdrawAddressResponse](#cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse)\n    - [QueryParamsRequest](#cosmos.distribution.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.distribution.v1beta1.QueryParamsResponse)\n    - [QueryValidatorCommissionRequest](#cosmos.distribution.v1beta1.QueryValidatorCommissionRequest)\n    - [QueryValidatorCommissionResponse](#cosmos.distribution.v1beta1.QueryValidatorCommissionResponse)\n    - [QueryValidatorOutstandingRewardsRequest](#cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsRequest)\n    - [QueryValidatorOutstandingRewardsResponse](#cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse)\n    - [QueryValidatorSlashesRequest](#cosmos.distribution.v1beta1.QueryValidatorSlashesRequest)\n    - [QueryValidatorSlashesResponse](#cosmos.distribution.v1beta1.QueryValidatorSlashesResponse)\n  \n    - [Query](#cosmos.distribution.v1beta1.Query)\n  \n- [cosmos/distribution/v1beta1/tx.proto](#cosmos/distribution/v1beta1/tx.proto)\n    - [MsgFundCommunityPool](#cosmos.distribution.v1beta1.MsgFundCommunityPool)\n    - [MsgFundCommunityPoolResponse](#cosmos.distribution.v1beta1.MsgFundCommunityPoolResponse)\n    - [MsgSetWithdrawAddress](#cosmos.distribution.v1beta1.MsgSetWithdrawAddress)\n    - [MsgSetWithdrawAddressResponse](#cosmos.distribution.v1beta1.MsgSetWithdrawAddressResponse)\n    - [MsgWithdrawDelegatorReward](#cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward)\n    - [MsgWithdrawDelegatorRewardResponse](#cosmos.distribution.v1beta1.MsgWithdrawDelegatorRewardResponse)\n    - [MsgWithdrawValidatorCommission](#cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission)\n    - [MsgWithdrawValidatorCommissionResponse](#cosmos.distribution.v1beta1.MsgWithdrawValidatorCommissionResponse)\n  \n    - [Msg](#cosmos.distribution.v1beta1.Msg)\n  \n- [cosmos/evidence/v1beta1/evidence.proto](#cosmos/evidence/v1beta1/evidence.proto)\n    - [Equivocation](#cosmos.evidence.v1beta1.Equivocation)\n  \n- [cosmos/evidence/v1beta1/genesis.proto](#cosmos/evidence/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.evidence.v1beta1.GenesisState)\n  \n- [cosmos/evidence/v1beta1/query.proto](#cosmos/evidence/v1beta1/query.proto)\n    - [QueryAllEvidenceRequest](#cosmos.evidence.v1beta1.QueryAllEvidenceRequest)\n    - [QueryAllEvidenceResponse](#cosmos.evidence.v1beta1.QueryAllEvidenceResponse)\n    - [QueryEvidenceRequest](#cosmos.evidence.v1beta1.QueryEvidenceRequest)\n    - [QueryEvidenceResponse](#cosmos.evidence.v1beta1.QueryEvidenceResponse)\n  \n    - [Query](#cosmos.evidence.v1beta1.Query)\n  \n- [cosmos/evidence/v1beta1/tx.proto](#cosmos/evidence/v1beta1/tx.proto)\n    - [MsgSubmitEvidence](#cosmos.evidence.v1beta1.MsgSubmitEvidence)\n    - [MsgSubmitEvidenceResponse](#cosmos.evidence.v1beta1.MsgSubmitEvidenceResponse)\n  \n    - [Msg](#cosmos.evidence.v1beta1.Msg)\n  \n- [cosmos/genutil/v1beta1/genesis.proto](#cosmos/genutil/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.genutil.v1beta1.GenesisState)\n  \n- [cosmos/gov/v1beta1/gov.proto](#cosmos/gov/v1beta1/gov.proto)\n    - [Deposit](#cosmos.gov.v1beta1.Deposit)\n    - [DepositParams](#cosmos.gov.v1beta1.DepositParams)\n    - [Proposal](#cosmos.gov.v1beta1.Proposal)\n    - [TallyParams](#cosmos.gov.v1beta1.TallyParams)\n    - [TallyResult](#cosmos.gov.v1beta1.TallyResult)\n    - [TextProposal](#cosmos.gov.v1beta1.TextProposal)\n    - [Vote](#cosmos.gov.v1beta1.Vote)\n    - [VotingParams](#cosmos.gov.v1beta1.VotingParams)\n  \n    - [ProposalStatus](#cosmos.gov.v1beta1.ProposalStatus)\n    - [VoteOption](#cosmos.gov.v1beta1.VoteOption)\n  \n- [cosmos/gov/v1beta1/genesis.proto](#cosmos/gov/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.gov.v1beta1.GenesisState)\n  \n- [cosmos/gov/v1beta1/query.proto](#cosmos/gov/v1beta1/query.proto)\n    - [QueryDepositRequest](#cosmos.gov.v1beta1.QueryDepositRequest)\n    - [QueryDepositResponse](#cosmos.gov.v1beta1.QueryDepositResponse)\n    - [QueryDepositsRequest](#cosmos.gov.v1beta1.QueryDepositsRequest)\n    - [QueryDepositsResponse](#cosmos.gov.v1beta1.QueryDepositsResponse)\n    - [QueryParamsRequest](#cosmos.gov.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.gov.v1beta1.QueryParamsResponse)\n    - [QueryProposalRequest](#cosmos.gov.v1beta1.QueryProposalRequest)\n    - [QueryProposalResponse](#cosmos.gov.v1beta1.QueryProposalResponse)\n    - [QueryProposalsRequest](#cosmos.gov.v1beta1.QueryProposalsRequest)\n    - [QueryProposalsResponse](#cosmos.gov.v1beta1.QueryProposalsResponse)\n    - [QueryTallyResultRequest](#cosmos.gov.v1beta1.QueryTallyResultRequest)\n    - [QueryTallyResultResponse](#cosmos.gov.v1beta1.QueryTallyResultResponse)\n    - [QueryVoteRequest](#cosmos.gov.v1beta1.QueryVoteRequest)\n    - [QueryVoteResponse](#cosmos.gov.v1beta1.QueryVoteResponse)\n    - [QueryVotesRequest](#cosmos.gov.v1beta1.QueryVotesRequest)\n    - [QueryVotesResponse](#cosmos.gov.v1beta1.QueryVotesResponse)\n  \n    - [Query](#cosmos.gov.v1beta1.Query)\n  \n- [cosmos/gov/v1beta1/tx.proto](#cosmos/gov/v1beta1/tx.proto)\n    - [MsgDeposit](#cosmos.gov.v1beta1.MsgDeposit)\n    - [MsgDepositResponse](#cosmos.gov.v1beta1.MsgDepositResponse)\n    - [MsgSubmitProposal](#cosmos.gov.v1beta1.MsgSubmitProposal)\n    - [MsgSubmitProposalResponse](#cosmos.gov.v1beta1.MsgSubmitProposalResponse)\n    - [MsgVote](#cosmos.gov.v1beta1.MsgVote)\n    - [MsgVoteResponse](#cosmos.gov.v1beta1.MsgVoteResponse)\n  \n    - [Msg](#cosmos.gov.v1beta1.Msg)\n  \n- [cosmos/params/v1beta1/params.proto](#cosmos/params/v1beta1/params.proto)\n    - [ParamChange](#cosmos.params.v1beta1.ParamChange)\n    - [ParameterChangeProposal](#cosmos.params.v1beta1.ParameterChangeProposal)\n  \n- [cosmos/params/v1beta1/query.proto](#cosmos/params/v1beta1/query.proto)\n    - [QueryParamsRequest](#cosmos.params.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.params.v1beta1.QueryParamsResponse)\n  \n    - [Query](#cosmos.params.v1beta1.Query)\n  \n- [cosmos/slashing/v1beta1/slashing.proto](#cosmos/slashing/v1beta1/slashing.proto)\n    - [Params](#cosmos.slashing.v1beta1.Params)\n    - [ValidatorSigningInfo](#cosmos.slashing.v1beta1.ValidatorSigningInfo)\n  \n- [cosmos/slashing/v1beta1/genesis.proto](#cosmos/slashing/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.slashing.v1beta1.GenesisState)\n    - [MissedBlock](#cosmos.slashing.v1beta1.MissedBlock)\n    - [SigningInfo](#cosmos.slashing.v1beta1.SigningInfo)\n    - [ValidatorMissedBlocks](#cosmos.slashing.v1beta1.ValidatorMissedBlocks)\n  \n- [cosmos/slashing/v1beta1/query.proto](#cosmos/slashing/v1beta1/query.proto)\n    - [QueryParamsRequest](#cosmos.slashing.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.slashing.v1beta1.QueryParamsResponse)\n    - [QuerySigningInfoRequest](#cosmos.slashing.v1beta1.QuerySigningInfoRequest)\n    - [QuerySigningInfoResponse](#cosmos.slashing.v1beta1.QuerySigningInfoResponse)\n    - [QuerySigningInfosRequest](#cosmos.slashing.v1beta1.QuerySigningInfosRequest)\n    - [QuerySigningInfosResponse](#cosmos.slashing.v1beta1.QuerySigningInfosResponse)\n  \n    - [Query](#cosmos.slashing.v1beta1.Query)\n  \n- [cosmos/slashing/v1beta1/tx.proto](#cosmos/slashing/v1beta1/tx.proto)\n    - [MsgUnjail](#cosmos.slashing.v1beta1.MsgUnjail)\n    - [MsgUnjailResponse](#cosmos.slashing.v1beta1.MsgUnjailResponse)\n  \n    - [Msg](#cosmos.slashing.v1beta1.Msg)\n  \n- [cosmos/staking/v1beta1/staking.proto](#cosmos/staking/v1beta1/staking.proto)\n    - [Commission](#cosmos.staking.v1beta1.Commission)\n    - [CommissionRates](#cosmos.staking.v1beta1.CommissionRates)\n    - [DVPair](#cosmos.staking.v1beta1.DVPair)\n    - [DVPairs](#cosmos.staking.v1beta1.DVPairs)\n    - [DVVTriplet](#cosmos.staking.v1beta1.DVVTriplet)\n    - [DVVTriplets](#cosmos.staking.v1beta1.DVVTriplets)\n    - [Delegation](#cosmos.staking.v1beta1.Delegation)\n    - [DelegationResponse](#cosmos.staking.v1beta1.DelegationResponse)\n    - [Description](#cosmos.staking.v1beta1.Description)\n    - [HistoricalInfo](#cosmos.staking.v1beta1.HistoricalInfo)\n    - [Params](#cosmos.staking.v1beta1.Params)\n    - [Pool](#cosmos.staking.v1beta1.Pool)\n    - [Redelegation](#cosmos.staking.v1beta1.Redelegation)\n    - [RedelegationEntry](#cosmos.staking.v1beta1.RedelegationEntry)\n    - [RedelegationEntryResponse](#cosmos.staking.v1beta1.RedelegationEntryResponse)\n    - [RedelegationResponse](#cosmos.staking.v1beta1.RedelegationResponse)\n    - [UnbondingDelegation](#cosmos.staking.v1beta1.UnbondingDelegation)\n    - [UnbondingDelegationEntry](#cosmos.staking.v1beta1.UnbondingDelegationEntry)\n    - [ValAddresses](#cosmos.staking.v1beta1.ValAddresses)\n    - [Validator](#cosmos.staking.v1beta1.Validator)\n  \n    - [BondStatus](#cosmos.staking.v1beta1.BondStatus)\n  \n- [cosmos/staking/v1beta1/genesis.proto](#cosmos/staking/v1beta1/genesis.proto)\n    - [GenesisState](#cosmos.staking.v1beta1.GenesisState)\n    - [LastValidatorPower](#cosmos.staking.v1beta1.LastValidatorPower)\n  \n- [cosmos/staking/v1beta1/query.proto](#cosmos/staking/v1beta1/query.proto)\n    - [QueryDelegationRequest](#cosmos.staking.v1beta1.QueryDelegationRequest)\n    - [QueryDelegationResponse](#cosmos.staking.v1beta1.QueryDelegationResponse)\n    - [QueryDelegatorDelegationsRequest](#cosmos.staking.v1beta1.QueryDelegatorDelegationsRequest)\n    - [QueryDelegatorDelegationsResponse](#cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse)\n    - [QueryDelegatorUnbondingDelegationsRequest](#cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsRequest)\n    - [QueryDelegatorUnbondingDelegationsResponse](#cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse)\n    - [QueryDelegatorValidatorRequest](#cosmos.staking.v1beta1.QueryDelegatorValidatorRequest)\n    - [QueryDelegatorValidatorResponse](#cosmos.staking.v1beta1.QueryDelegatorValidatorResponse)\n    - [QueryDelegatorValidatorsRequest](#cosmos.staking.v1beta1.QueryDelegatorValidatorsRequest)\n    - [QueryDelegatorValidatorsResponse](#cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse)\n    - [QueryHistoricalInfoRequest](#cosmos.staking.v1beta1.QueryHistoricalInfoRequest)\n    - [QueryHistoricalInfoResponse](#cosmos.staking.v1beta1.QueryHistoricalInfoResponse)\n    - [QueryParamsRequest](#cosmos.staking.v1beta1.QueryParamsRequest)\n    - [QueryParamsResponse](#cosmos.staking.v1beta1.QueryParamsResponse)\n    - [QueryPoolRequest](#cosmos.staking.v1beta1.QueryPoolRequest)\n    - [QueryPoolResponse](#cosmos.staking.v1beta1.QueryPoolResponse)\n    - [QueryRedelegationsRequest](#cosmos.staking.v1beta1.QueryRedelegationsRequest)\n    - [QueryRedelegationsResponse](#cosmos.staking.v1beta1.QueryRedelegationsResponse)\n    - [QueryUnbondingDelegationRequest](#cosmos.staking.v1beta1.QueryUnbondingDelegationRequest)\n    - [QueryUnbondingDelegationResponse](#cosmos.staking.v1beta1.QueryUnbondingDelegationResponse)\n    - [QueryValidatorDelegationsRequest](#cosmos.staking.v1beta1.QueryValidatorDelegationsRequest)\n    - [QueryValidatorDelegationsResponse](#cosmos.staking.v1beta1.QueryValidatorDelegationsResponse)\n    - [QueryValidatorRequest](#cosmos.staking.v1beta1.QueryValidatorRequest)\n    - [QueryValidatorResponse](#cosmos.staking.v1beta1.QueryValidatorResponse)\n    - [QueryValidatorUnbondingDelegationsRequest](#cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsRequest)\n    - [QueryValidatorUnbondingDelegationsResponse](#cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse)\n    - [QueryValidatorsRequest](#cosmos.staking.v1beta1.QueryValidatorsRequest)\n    - [QueryValidatorsResponse](#cosmos.staking.v1beta1.QueryValidatorsResponse)\n  \n    - [Query](#cosmos.staking.v1beta1.Query)\n  \n- [cosmos/staking/v1beta1/tx.proto](#cosmos/staking/v1beta1/tx.proto)\n    - [MsgBeginRedelegate](#cosmos.staking.v1beta1.MsgBeginRedelegate)\n    - [MsgBeginRedelegateResponse](#cosmos.staking.v1beta1.MsgBeginRedelegateResponse)\n    - [MsgCreateValidator](#cosmos.staking.v1beta1.MsgCreateValidator)\n    - [MsgCreateValidatorResponse](#cosmos.staking.v1beta1.MsgCreateValidatorResponse)\n    - [MsgDelegate](#cosmos.staking.v1beta1.MsgDelegate)\n    - [MsgDelegateResponse](#cosmos.staking.v1beta1.MsgDelegateResponse)\n    - [MsgEditValidator](#cosmos.staking.v1beta1.MsgEditValidator)\n    - [MsgEditValidatorResponse](#cosmos.staking.v1beta1.MsgEditValidatorResponse)\n    - [MsgUndelegate](#cosmos.staking.v1beta1.MsgUndelegate)\n    - [MsgUndelegateResponse](#cosmos.staking.v1beta1.MsgUndelegateResponse)\n  \n    - [Msg](#cosmos.staking.v1beta1.Msg)\n  \n- [cosmos/tx/signing/v1beta1/signing.proto](#cosmos/tx/signing/v1beta1/signing.proto)\n    - [SignatureDescriptor](#cosmos.tx.signing.v1beta1.SignatureDescriptor)\n    - [SignatureDescriptor.Data](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data)\n    - [SignatureDescriptor.Data.Multi](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Multi)\n    - [SignatureDescriptor.Data.Single](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Single)\n    - [SignatureDescriptors](#cosmos.tx.signing.v1beta1.SignatureDescriptors)\n  \n    - [SignMode](#cosmos.tx.signing.v1beta1.SignMode)\n  \n- [cosmos/tx/v1beta1/tx.proto](#cosmos/tx/v1beta1/tx.proto)\n    - [AuthInfo](#cosmos.tx.v1beta1.AuthInfo)\n    - [Fee](#cosmos.tx.v1beta1.Fee)\n    - [ModeInfo](#cosmos.tx.v1beta1.ModeInfo)\n    - [ModeInfo.Multi](#cosmos.tx.v1beta1.ModeInfo.Multi)\n    - [ModeInfo.Single](#cosmos.tx.v1beta1.ModeInfo.Single)\n    - [SignDoc](#cosmos.tx.v1beta1.SignDoc)\n    - [SignerInfo](#cosmos.tx.v1beta1.SignerInfo)\n    - [Tx](#cosmos.tx.v1beta1.Tx)\n    - [TxBody](#cosmos.tx.v1beta1.TxBody)\n    - [TxRaw](#cosmos.tx.v1beta1.TxRaw)\n  \n- [cosmos/tx/v1beta1/service.proto](#cosmos/tx/v1beta1/service.proto)\n    - [BroadcastTxRequest](#cosmos.tx.v1beta1.BroadcastTxRequest)\n    - [BroadcastTxResponse](#cosmos.tx.v1beta1.BroadcastTxResponse)\n    - [GetTxRequest](#cosmos.tx.v1beta1.GetTxRequest)\n    - [GetTxResponse](#cosmos.tx.v1beta1.GetTxResponse)\n    - [GetTxsEventRequest](#cosmos.tx.v1beta1.GetTxsEventRequest)\n    - [GetTxsEventResponse](#cosmos.tx.v1beta1.GetTxsEventResponse)\n    - [SimulateRequest](#cosmos.tx.v1beta1.SimulateRequest)\n    - [SimulateResponse](#cosmos.tx.v1beta1.SimulateResponse)\n  \n    - [BroadcastMode](#cosmos.tx.v1beta1.BroadcastMode)\n    - [OrderBy](#cosmos.tx.v1beta1.OrderBy)\n  \n    - [Service](#cosmos.tx.v1beta1.Service)\n  \n- [cosmos/upgrade/v1beta1/upgrade.proto](#cosmos/upgrade/v1beta1/upgrade.proto)\n    - [CancelSoftwareUpgradeProposal](#cosmos.upgrade.v1beta1.CancelSoftwareUpgradeProposal)\n    - [Plan](#cosmos.upgrade.v1beta1.Plan)\n    - [SoftwareUpgradeProposal](#cosmos.upgrade.v1beta1.SoftwareUpgradeProposal)\n  \n- [cosmos/upgrade/v1beta1/query.proto](#cosmos/upgrade/v1beta1/query.proto)\n    - [QueryAppliedPlanRequest](#cosmos.upgrade.v1beta1.QueryAppliedPlanRequest)\n    - [QueryAppliedPlanResponse](#cosmos.upgrade.v1beta1.QueryAppliedPlanResponse)\n    - [QueryCurrentPlanRequest](#cosmos.upgrade.v1beta1.QueryCurrentPlanRequest)\n    - [QueryCurrentPlanResponse](#cosmos.upgrade.v1beta1.QueryCurrentPlanResponse)\n    - [QueryUpgradedConsensusStateRequest](#cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateRequest)\n    - [QueryUpgradedConsensusStateResponse](#cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateResponse)\n  \n    - [Query](#cosmos.upgrade.v1beta1.Query)\n  \n- [cosmos/vesting/v1beta1/tx.proto](#cosmos/vesting/v1beta1/tx.proto)\n    - [MsgCreateVestingAccount](#cosmos.vesting.v1beta1.MsgCreateVestingAccount)\n    - [MsgCreateVestingAccountResponse](#cosmos.vesting.v1beta1.MsgCreateVestingAccountResponse)\n  \n    - [Msg](#cosmos.vesting.v1beta1.Msg)\n  \n- [cosmos/vesting/v1beta1/vesting.proto](#cosmos/vesting/v1beta1/vesting.proto)\n    - [BaseVestingAccount](#cosmos.vesting.v1beta1.BaseVestingAccount)\n    - [ContinuousVestingAccount](#cosmos.vesting.v1beta1.ContinuousVestingAccount)\n    - [DelayedVestingAccount](#cosmos.vesting.v1beta1.DelayedVestingAccount)\n    - [Period](#cosmos.vesting.v1beta1.Period)\n    - [PeriodicVestingAccount](#cosmos.vesting.v1beta1.PeriodicVestingAccount)\n  \n- [farm/farm.proto](#farm/farm.proto)\n    - [FarmInfo](#irismod.farm.FarmInfo)\n    - [FarmPool](#irismod.farm.FarmPool)\n    - [Params](#irismod.farm.Params)\n    - [RewardRule](#irismod.farm.RewardRule)\n  \n- [farm/genesis.proto](#farm/genesis.proto)\n    - [GenesisState](#irismod.farm.GenesisState)\n  \n- [farm/query.proto](#farm/query.proto)\n    - [FarmPoolEntry](#irismod.farm.FarmPoolEntry)\n    - [LockedInfo](#irismod.farm.LockedInfo)\n    - [QueryFarmPoolRequest](#irismod.farm.QueryFarmPoolRequest)\n    - [QueryFarmPoolResponse](#irismod.farm.QueryFarmPoolResponse)\n    - [QueryFarmPoolsRequest](#irismod.farm.QueryFarmPoolsRequest)\n    - [QueryFarmPoolsResponse](#irismod.farm.QueryFarmPoolsResponse)\n    - [QueryFarmerRequest](#irismod.farm.QueryFarmerRequest)\n    - [QueryFarmerResponse](#irismod.farm.QueryFarmerResponse)\n    - [QueryParamsRequest](#irismod.farm.QueryParamsRequest)\n    - [QueryParamsResponse](#irismod.farm.QueryParamsResponse)\n  \n    - [Query](#irismod.farm.Query)\n  \n- [farm/tx.proto](#farm/tx.proto)\n    - [MsgAdjustPool](#irismod.farm.MsgAdjustPool)\n    - [MsgAdjustPoolResponse](#irismod.farm.MsgAdjustPoolResponse)\n    - [MsgCreatePool](#irismod.farm.MsgCreatePool)\n    - [MsgCreatePoolResponse](#irismod.farm.MsgCreatePoolResponse)\n    - [MsgDestroyPool](#irismod.farm.MsgDestroyPool)\n    - [MsgDestroyPoolResponse](#irismod.farm.MsgDestroyPoolResponse)\n    - [MsgHarvest](#irismod.farm.MsgHarvest)\n    - [MsgHarvestResponse](#irismod.farm.MsgHarvestResponse)\n    - [MsgStake](#irismod.farm.MsgStake)\n    - [MsgStakeResponse](#irismod.farm.MsgStakeResponse)\n    - [MsgUnstake](#irismod.farm.MsgUnstake)\n    - [MsgUnstakeResponse](#irismod.farm.MsgUnstakeResponse)\n  \n    - [Msg](#irismod.farm.Msg)\n  \n- [guardian/guardian.proto](#guardian/guardian.proto)\n    - [Super](#irishub.guardian.Super)\n  \n    - [AccountType](#irishub.guardian.AccountType)\n  \n- [guardian/genesis.proto](#guardian/genesis.proto)\n    - [GenesisState](#irishub.guardian.GenesisState)\n  \n- [guardian/query.proto](#guardian/query.proto)\n    - [QuerySupersRequest](#irishub.guardian.QuerySupersRequest)\n    - [QuerySupersResponse](#irishub.guardian.QuerySupersResponse)\n  \n    - [Query](#irishub.guardian.Query)\n  \n- [guardian/tx.proto](#guardian/tx.proto)\n    - [MsgAddSuper](#irishub.guardian.MsgAddSuper)\n    - [MsgAddSuperResponse](#irishub.guardian.MsgAddSuperResponse)\n    - [MsgDeleteSuper](#irishub.guardian.MsgDeleteSuper)\n    - [MsgDeleteSuperResponse](#irishub.guardian.MsgDeleteSuperResponse)\n  \n    - [Msg](#irishub.guardian.Msg)\n  \n- [htlc/htlc.proto](#htlc/htlc.proto)\n    - [AssetParam](#irismod.htlc.AssetParam)\n    - [AssetSupply](#irismod.htlc.AssetSupply)\n    - [HTLC](#irismod.htlc.HTLC)\n    - [Params](#irismod.htlc.Params)\n    - [SupplyLimit](#irismod.htlc.SupplyLimit)\n  \n    - [HTLCState](#irismod.htlc.HTLCState)\n    - [SwapDirection](#irismod.htlc.SwapDirection)\n  \n- [htlc/genesis.proto](#htlc/genesis.proto)\n    - [GenesisState](#irismod.htlc.GenesisState)\n  \n- [htlc/query.proto](#htlc/query.proto)\n    - [QueryAssetSuppliesRequest](#irismod.htlc.QueryAssetSuppliesRequest)\n    - [QueryAssetSuppliesResponse](#irismod.htlc.QueryAssetSuppliesResponse)\n    - [QueryAssetSupplyRequest](#irismod.htlc.QueryAssetSupplyRequest)\n    - [QueryAssetSupplyResponse](#irismod.htlc.QueryAssetSupplyResponse)\n    - [QueryHTLCRequest](#irismod.htlc.QueryHTLCRequest)\n    - [QueryHTLCResponse](#irismod.htlc.QueryHTLCResponse)\n    - [QueryParamsRequest](#irismod.htlc.QueryParamsRequest)\n    - [QueryParamsResponse](#irismod.htlc.QueryParamsResponse)\n  \n    - [Query](#irismod.htlc.Query)\n  \n- [htlc/tx.proto](#htlc/tx.proto)\n    - [MsgClaimHTLC](#irismod.htlc.MsgClaimHTLC)\n    - [MsgClaimHTLCResponse](#irismod.htlc.MsgClaimHTLCResponse)\n    - [MsgCreateHTLC](#irismod.htlc.MsgCreateHTLC)\n    - [MsgCreateHTLCResponse](#irismod.htlc.MsgCreateHTLCResponse)\n  \n    - [Msg](#irismod.htlc.Msg)\n  \n- [ibc/applications/transfer/v1/transfer.proto](#ibc/applications/transfer/v1/transfer.proto)\n    - [DenomTrace](#ibc.applications.transfer.v1.DenomTrace)\n    - [FungibleTokenPacketData](#ibc.applications.transfer.v1.FungibleTokenPacketData)\n    - [Params](#ibc.applications.transfer.v1.Params)\n  \n- [ibc/applications/transfer/v1/genesis.proto](#ibc/applications/transfer/v1/genesis.proto)\n    - [GenesisState](#ibc.applications.transfer.v1.GenesisState)\n  \n- [ibc/applications/transfer/v1/query.proto](#ibc/applications/transfer/v1/query.proto)\n    - [QueryDenomTraceRequest](#ibc.applications.transfer.v1.QueryDenomTraceRequest)\n    - [QueryDenomTraceResponse](#ibc.applications.transfer.v1.QueryDenomTraceResponse)\n    - [QueryDenomTracesRequest](#ibc.applications.transfer.v1.QueryDenomTracesRequest)\n    - [QueryDenomTracesResponse](#ibc.applications.transfer.v1.QueryDenomTracesResponse)\n    - [QueryParamsRequest](#ibc.applications.transfer.v1.QueryParamsRequest)\n    - [QueryParamsResponse](#ibc.applications.transfer.v1.QueryParamsResponse)\n  \n    - [Query](#ibc.applications.transfer.v1.Query)\n  \n- [ibc/core/client/v1/client.proto](#ibc/core/client/v1/client.proto)\n    - [ClientConsensusStates](#ibc.core.client.v1.ClientConsensusStates)\n    - [ClientUpdateProposal](#ibc.core.client.v1.ClientUpdateProposal)\n    - [ConsensusStateWithHeight](#ibc.core.client.v1.ConsensusStateWithHeight)\n    - [Height](#ibc.core.client.v1.Height)\n    - [IdentifiedClientState](#ibc.core.client.v1.IdentifiedClientState)\n    - [Params](#ibc.core.client.v1.Params)\n  \n- [ibc/applications/transfer/v1/tx.proto](#ibc/applications/transfer/v1/tx.proto)\n    - [MsgTransfer](#ibc.applications.transfer.v1.MsgTransfer)\n    - [MsgTransferResponse](#ibc.applications.transfer.v1.MsgTransferResponse)\n  \n    - [Msg](#ibc.applications.transfer.v1.Msg)\n  \n- [ibc/core/channel/v1/channel.proto](#ibc/core/channel/v1/channel.proto)\n    - [Acknowledgement](#ibc.core.channel.v1.Acknowledgement)\n    - [Channel](#ibc.core.channel.v1.Channel)\n    - [Counterparty](#ibc.core.channel.v1.Counterparty)\n    - [IdentifiedChannel](#ibc.core.channel.v1.IdentifiedChannel)\n    - [Packet](#ibc.core.channel.v1.Packet)\n    - [PacketState](#ibc.core.channel.v1.PacketState)\n  \n    - [Order](#ibc.core.channel.v1.Order)\n    - [State](#ibc.core.channel.v1.State)\n  \n- [ibc/core/channel/v1/genesis.proto](#ibc/core/channel/v1/genesis.proto)\n    - [GenesisState](#ibc.core.channel.v1.GenesisState)\n    - [PacketSequence](#ibc.core.channel.v1.PacketSequence)\n  \n- [ibc/core/channel/v1/query.proto](#ibc/core/channel/v1/query.proto)\n    - [QueryChannelClientStateRequest](#ibc.core.channel.v1.QueryChannelClientStateRequest)\n    - [QueryChannelClientStateResponse](#ibc.core.channel.v1.QueryChannelClientStateResponse)\n    - [QueryChannelConsensusStateRequest](#ibc.core.channel.v1.QueryChannelConsensusStateRequest)\n    - [QueryChannelConsensusStateResponse](#ibc.core.channel.v1.QueryChannelConsensusStateResponse)\n    - [QueryChannelRequest](#ibc.core.channel.v1.QueryChannelRequest)\n    - [QueryChannelResponse](#ibc.core.channel.v1.QueryChannelResponse)\n    - [QueryChannelsRequest](#ibc.core.channel.v1.QueryChannelsRequest)\n    - [QueryChannelsResponse](#ibc.core.channel.v1.QueryChannelsResponse)\n    - [QueryConnectionChannelsRequest](#ibc.core.channel.v1.QueryConnectionChannelsRequest)\n    - [QueryConnectionChannelsResponse](#ibc.core.channel.v1.QueryConnectionChannelsResponse)\n    - [QueryNextSequenceReceiveRequest](#ibc.core.channel.v1.QueryNextSequenceReceiveRequest)\n    - [QueryNextSequenceReceiveResponse](#ibc.core.channel.v1.QueryNextSequenceReceiveResponse)\n    - [QueryPacketAcknowledgementRequest](#ibc.core.channel.v1.QueryPacketAcknowledgementRequest)\n    - [QueryPacketAcknowledgementResponse](#ibc.core.channel.v1.QueryPacketAcknowledgementResponse)\n    - [QueryPacketAcknowledgementsRequest](#ibc.core.channel.v1.QueryPacketAcknowledgementsRequest)\n    - [QueryPacketAcknowledgementsResponse](#ibc.core.channel.v1.QueryPacketAcknowledgementsResponse)\n    - [QueryPacketCommitmentRequest](#ibc.core.channel.v1.QueryPacketCommitmentRequest)\n    - [QueryPacketCommitmentResponse](#ibc.core.channel.v1.QueryPacketCommitmentResponse)\n    - [QueryPacketCommitmentsRequest](#ibc.core.channel.v1.QueryPacketCommitmentsRequest)\n    - [QueryPacketCommitmentsResponse](#ibc.core.channel.v1.QueryPacketCommitmentsResponse)\n    - [QueryPacketReceiptRequest](#ibc.core.channel.v1.QueryPacketReceiptRequest)\n    - [QueryPacketReceiptResponse](#ibc.core.channel.v1.QueryPacketReceiptResponse)\n    - [QueryUnreceivedAcksRequest](#ibc.core.channel.v1.QueryUnreceivedAcksRequest)\n    - [QueryUnreceivedAcksResponse](#ibc.core.channel.v1.QueryUnreceivedAcksResponse)\n    - [QueryUnreceivedPacketsRequest](#ibc.core.channel.v1.QueryUnreceivedPacketsRequest)\n    - [QueryUnreceivedPacketsResponse](#ibc.core.channel.v1.QueryUnreceivedPacketsResponse)\n  \n    - [Query](#ibc.core.channel.v1.Query)\n  \n- [ibc/core/channel/v1/tx.proto](#ibc/core/channel/v1/tx.proto)\n    - [MsgAcknowledgement](#ibc.core.channel.v1.MsgAcknowledgement)\n    - [MsgAcknowledgementResponse](#ibc.core.channel.v1.MsgAcknowledgementResponse)\n    - [MsgChannelCloseConfirm](#ibc.core.channel.v1.MsgChannelCloseConfirm)\n    - [MsgChannelCloseConfirmResponse](#ibc.core.channel.v1.MsgChannelCloseConfirmResponse)\n    - [MsgChannelCloseInit](#ibc.core.channel.v1.MsgChannelCloseInit)\n    - [MsgChannelCloseInitResponse](#ibc.core.channel.v1.MsgChannelCloseInitResponse)\n    - [MsgChannelOpenAck](#ibc.core.channel.v1.MsgChannelOpenAck)\n    - [MsgChannelOpenAckResponse](#ibc.core.channel.v1.MsgChannelOpenAckResponse)\n    - [MsgChannelOpenConfirm](#ibc.core.channel.v1.MsgChannelOpenConfirm)\n    - [MsgChannelOpenConfirmResponse](#ibc.core.channel.v1.MsgChannelOpenConfirmResponse)\n    - [MsgChannelOpenInit](#ibc.core.channel.v1.MsgChannelOpenInit)\n    - [MsgChannelOpenInitResponse](#ibc.core.channel.v1.MsgChannelOpenInitResponse)\n    - [MsgChannelOpenTry](#ibc.core.channel.v1.MsgChannelOpenTry)\n    - [MsgChannelOpenTryResponse](#ibc.core.channel.v1.MsgChannelOpenTryResponse)\n    - [MsgRecvPacket](#ibc.core.channel.v1.MsgRecvPacket)\n    - [MsgRecvPacketResponse](#ibc.core.channel.v1.MsgRecvPacketResponse)\n    - [MsgTimeout](#ibc.core.channel.v1.MsgTimeout)\n    - [MsgTimeoutOnClose](#ibc.core.channel.v1.MsgTimeoutOnClose)\n    - [MsgTimeoutOnCloseResponse](#ibc.core.channel.v1.MsgTimeoutOnCloseResponse)\n    - [MsgTimeoutResponse](#ibc.core.channel.v1.MsgTimeoutResponse)\n  \n    - [Msg](#ibc.core.channel.v1.Msg)\n  \n- [ibc/core/client/v1/genesis.proto](#ibc/core/client/v1/genesis.proto)\n    - [GenesisMetadata](#ibc.core.client.v1.GenesisMetadata)\n    - [GenesisState](#ibc.core.client.v1.GenesisState)\n    - [IdentifiedGenesisMetadata](#ibc.core.client.v1.IdentifiedGenesisMetadata)\n  \n- [ibc/core/client/v1/query.proto](#ibc/core/client/v1/query.proto)\n    - [QueryClientParamsRequest](#ibc.core.client.v1.QueryClientParamsRequest)\n    - [QueryClientParamsResponse](#ibc.core.client.v1.QueryClientParamsResponse)\n    - [QueryClientStateRequest](#ibc.core.client.v1.QueryClientStateRequest)\n    - [QueryClientStateResponse](#ibc.core.client.v1.QueryClientStateResponse)\n    - [QueryClientStatesRequest](#ibc.core.client.v1.QueryClientStatesRequest)\n    - [QueryClientStatesResponse](#ibc.core.client.v1.QueryClientStatesResponse)\n    - [QueryConsensusStateRequest](#ibc.core.client.v1.QueryConsensusStateRequest)\n    - [QueryConsensusStateResponse](#ibc.core.client.v1.QueryConsensusStateResponse)\n    - [QueryConsensusStatesRequest](#ibc.core.client.v1.QueryConsensusStatesRequest)\n    - [QueryConsensusStatesResponse](#ibc.core.client.v1.QueryConsensusStatesResponse)\n  \n    - [Query](#ibc.core.client.v1.Query)\n  \n- [ibc/core/client/v1/tx.proto](#ibc/core/client/v1/tx.proto)\n    - [MsgCreateClient](#ibc.core.client.v1.MsgCreateClient)\n    - [MsgCreateClientResponse](#ibc.core.client.v1.MsgCreateClientResponse)\n    - [MsgSubmitMisbehaviour](#ibc.core.client.v1.MsgSubmitMisbehaviour)\n    - [MsgSubmitMisbehaviourResponse](#ibc.core.client.v1.MsgSubmitMisbehaviourResponse)\n    - [MsgUpdateClient](#ibc.core.client.v1.MsgUpdateClient)\n    - [MsgUpdateClientResponse](#ibc.core.client.v1.MsgUpdateClientResponse)\n    - [MsgUpgradeClient](#ibc.core.client.v1.MsgUpgradeClient)\n    - [MsgUpgradeClientResponse](#ibc.core.client.v1.MsgUpgradeClientResponse)\n  \n    - [Msg](#ibc.core.client.v1.Msg)\n  \n- [ibc/core/commitment/v1/commitment.proto](#ibc/core/commitment/v1/commitment.proto)\n    - [MerklePath](#ibc.core.commitment.v1.MerklePath)\n    - [MerklePrefix](#ibc.core.commitment.v1.MerklePrefix)\n    - [MerkleProof](#ibc.core.commitment.v1.MerkleProof)\n    - [MerkleRoot](#ibc.core.commitment.v1.MerkleRoot)\n  \n- [ibc/core/connection/v1/connection.proto](#ibc/core/connection/v1/connection.proto)\n    - [ClientPaths](#ibc.core.connection.v1.ClientPaths)\n    - [ConnectionEnd](#ibc.core.connection.v1.ConnectionEnd)\n    - [ConnectionPaths](#ibc.core.connection.v1.ConnectionPaths)\n    - [Counterparty](#ibc.core.connection.v1.Counterparty)\n    - [IdentifiedConnection](#ibc.core.connection.v1.IdentifiedConnection)\n    - [Version](#ibc.core.connection.v1.Version)\n  \n    - [State](#ibc.core.connection.v1.State)\n  \n- [ibc/core/connection/v1/genesis.proto](#ibc/core/connection/v1/genesis.proto)\n    - [GenesisState](#ibc.core.connection.v1.GenesisState)\n  \n- [ibc/core/connection/v1/query.proto](#ibc/core/connection/v1/query.proto)\n    - [QueryClientConnectionsRequest](#ibc.core.connection.v1.QueryClientConnectionsRequest)\n    - [QueryClientConnectionsResponse](#ibc.core.connection.v1.QueryClientConnectionsResponse)\n    - [QueryConnectionClientStateRequest](#ibc.core.connection.v1.QueryConnectionClientStateRequest)\n    - [QueryConnectionClientStateResponse](#ibc.core.connection.v1.QueryConnectionClientStateResponse)\n    - [QueryConnectionConsensusStateRequest](#ibc.core.connection.v1.QueryConnectionConsensusStateRequest)\n    - [QueryConnectionConsensusStateResponse](#ibc.core.connection.v1.QueryConnectionConsensusStateResponse)\n    - [QueryConnectionRequest](#ibc.core.connection.v1.QueryConnectionRequest)\n    - [QueryConnectionResponse](#ibc.core.connection.v1.QueryConnectionResponse)\n    - [QueryConnectionsRequest](#ibc.core.connection.v1.QueryConnectionsRequest)\n    - [QueryConnectionsResponse](#ibc.core.connection.v1.QueryConnectionsResponse)\n  \n    - [Query](#ibc.core.connection.v1.Query)\n  \n- [ibc/core/connection/v1/tx.proto](#ibc/core/connection/v1/tx.proto)\n    - [MsgConnectionOpenAck](#ibc.core.connection.v1.MsgConnectionOpenAck)\n    - [MsgConnectionOpenAckResponse](#ibc.core.connection.v1.MsgConnectionOpenAckResponse)\n    - [MsgConnectionOpenConfirm](#ibc.core.connection.v1.MsgConnectionOpenConfirm)\n    - [MsgConnectionOpenConfirmResponse](#ibc.core.connection.v1.MsgConnectionOpenConfirmResponse)\n    - [MsgConnectionOpenInit](#ibc.core.connection.v1.MsgConnectionOpenInit)\n    - [MsgConnectionOpenInitResponse](#ibc.core.connection.v1.MsgConnectionOpenInitResponse)\n    - [MsgConnectionOpenTry](#ibc.core.connection.v1.MsgConnectionOpenTry)\n    - [MsgConnectionOpenTryResponse](#ibc.core.connection.v1.MsgConnectionOpenTryResponse)\n  \n    - [Msg](#ibc.core.connection.v1.Msg)\n  \n- [ibc/core/types/v1/genesis.proto](#ibc/core/types/v1/genesis.proto)\n    - [GenesisState](#ibc.core.types.v1.GenesisState)\n  \n- [ibc/lightclients/localhost/v1/localhost.proto](#ibc/lightclients/localhost/v1/localhost.proto)\n    - [ClientState](#ibc.lightclients.localhost.v1.ClientState)\n  \n- [ibc/lightclients/solomachine/v1/solomachine.proto](#ibc/lightclients/solomachine/v1/solomachine.proto)\n    - [ChannelStateData](#ibc.lightclients.solomachine.v1.ChannelStateData)\n    - [ClientState](#ibc.lightclients.solomachine.v1.ClientState)\n    - [ClientStateData](#ibc.lightclients.solomachine.v1.ClientStateData)\n    - [ConnectionStateData](#ibc.lightclients.solomachine.v1.ConnectionStateData)\n    - [ConsensusState](#ibc.lightclients.solomachine.v1.ConsensusState)\n    - [ConsensusStateData](#ibc.lightclients.solomachine.v1.ConsensusStateData)\n    - [Header](#ibc.lightclients.solomachine.v1.Header)\n    - [HeaderData](#ibc.lightclients.solomachine.v1.HeaderData)\n    - [Misbehaviour](#ibc.lightclients.solomachine.v1.Misbehaviour)\n    - [NextSequenceRecvData](#ibc.lightclients.solomachine.v1.NextSequenceRecvData)\n    - [PacketAcknowledgementData](#ibc.lightclients.solomachine.v1.PacketAcknowledgementData)\n    - [PacketCommitmentData](#ibc.lightclients.solomachine.v1.PacketCommitmentData)\n    - [PacketReceiptAbsenceData](#ibc.lightclients.solomachine.v1.PacketReceiptAbsenceData)\n    - [SignBytes](#ibc.lightclients.solomachine.v1.SignBytes)\n    - [SignatureAndData](#ibc.lightclients.solomachine.v1.SignatureAndData)\n    - [TimestampedSignatureData](#ibc.lightclients.solomachine.v1.TimestampedSignatureData)\n  \n    - [DataType](#ibc.lightclients.solomachine.v1.DataType)\n  \n- [ibc/lightclients/tendermint/v1/tendermint.proto](#ibc/lightclients/tendermint/v1/tendermint.proto)\n    - [ClientState](#ibc.lightclients.tendermint.v1.ClientState)\n    - [ConsensusState](#ibc.lightclients.tendermint.v1.ConsensusState)\n    - [Fraction](#ibc.lightclients.tendermint.v1.Fraction)\n    - [Header](#ibc.lightclients.tendermint.v1.Header)\n    - [Misbehaviour](#ibc.lightclients.tendermint.v1.Misbehaviour)\n  \n- [mint/mint.proto](#mint/mint.proto)\n    - [Minter](#irishub.mint.Minter)\n    - [Params](#irishub.mint.Params)\n  \n- [mint/genesis.proto](#mint/genesis.proto)\n    - [GenesisState](#irishub.mint.GenesisState)\n  \n- [mint/query.proto](#mint/query.proto)\n    - [QueryParamsRequest](#irishub.mint.QueryParamsRequest)\n    - [QueryParamsResponse](#irishub.mint.QueryParamsResponse)\n  \n    - [Query](#irishub.mint.Query)\n  \n- [nft/nft.proto](#nft/nft.proto)\n    - [BaseNFT](#irismod.nft.BaseNFT)\n    - [Collection](#irismod.nft.Collection)\n    - [Denom](#irismod.nft.Denom)\n    - [IDCollection](#irismod.nft.IDCollection)\n    - [Owner](#irismod.nft.Owner)\n  \n- [nft/genesis.proto](#nft/genesis.proto)\n    - [GenesisState](#irismod.nft.GenesisState)\n  \n- [nft/query.proto](#nft/query.proto)\n    - [QueryCollectionRequest](#irismod.nft.QueryCollectionRequest)\n    - [QueryCollectionResponse](#irismod.nft.QueryCollectionResponse)\n    - [QueryDenomRequest](#irismod.nft.QueryDenomRequest)\n    - [QueryDenomResponse](#irismod.nft.QueryDenomResponse)\n    - [QueryDenomsRequest](#irismod.nft.QueryDenomsRequest)\n    - [QueryDenomsResponse](#irismod.nft.QueryDenomsResponse)\n    - [QueryNFTRequest](#irismod.nft.QueryNFTRequest)\n    - [QueryNFTResponse](#irismod.nft.QueryNFTResponse)\n    - [QueryOwnerRequest](#irismod.nft.QueryOwnerRequest)\n    - [QueryOwnerResponse](#irismod.nft.QueryOwnerResponse)\n    - [QuerySupplyRequest](#irismod.nft.QuerySupplyRequest)\n    - [QuerySupplyResponse](#irismod.nft.QuerySupplyResponse)\n  \n    - [Query](#irismod.nft.Query)\n  \n- [nft/tx.proto](#nft/tx.proto)\n    - [MsgBurnNFT](#irismod.nft.MsgBurnNFT)\n    - [MsgBurnNFTResponse](#irismod.nft.MsgBurnNFTResponse)\n    - [MsgEditNFT](#irismod.nft.MsgEditNFT)\n    - [MsgEditNFTResponse](#irismod.nft.MsgEditNFTResponse)\n    - [MsgIssueDenom](#irismod.nft.MsgIssueDenom)\n    - [MsgIssueDenomResponse](#irismod.nft.MsgIssueDenomResponse)\n    - [MsgMintNFT](#irismod.nft.MsgMintNFT)\n    - [MsgMintNFTResponse](#irismod.nft.MsgMintNFTResponse)\n    - [MsgTransferDenom](#irismod.nft.MsgTransferDenom)\n    - [MsgTransferDenomResponse](#irismod.nft.MsgTransferDenomResponse)\n    - [MsgTransferNFT](#irismod.nft.MsgTransferNFT)\n    - [MsgTransferNFTResponse](#irismod.nft.MsgTransferNFTResponse)\n  \n    - [Msg](#irismod.nft.Msg)\n  \n- [oracle/oracle.proto](#oracle/oracle.proto)\n    - [Feed](#irismod.oracle.Feed)\n    - [FeedValue](#irismod.oracle.FeedValue)\n  \n- [service/service.proto](#service/service.proto)\n    - [CompactRequest](#irismod.service.CompactRequest)\n    - [Params](#irismod.service.Params)\n    - [Pricing](#irismod.service.Pricing)\n    - [PromotionByTime](#irismod.service.PromotionByTime)\n    - [PromotionByVolume](#irismod.service.PromotionByVolume)\n    - [Request](#irismod.service.Request)\n    - [RequestContext](#irismod.service.RequestContext)\n    - [Response](#irismod.service.Response)\n    - [ServiceBinding](#irismod.service.ServiceBinding)\n    - [ServiceDefinition](#irismod.service.ServiceDefinition)\n  \n    - [RequestContextBatchState](#irismod.service.RequestContextBatchState)\n    - [RequestContextState](#irismod.service.RequestContextState)\n  \n- [oracle/genesis.proto](#oracle/genesis.proto)\n    - [FeedEntry](#irismod.oracle.FeedEntry)\n    - [GenesisState](#irismod.oracle.GenesisState)\n  \n- [oracle/query.proto](#oracle/query.proto)\n    - [FeedContext](#irismod.oracle.FeedContext)\n    - [QueryFeedRequest](#irismod.oracle.QueryFeedRequest)\n    - [QueryFeedResponse](#irismod.oracle.QueryFeedResponse)\n    - [QueryFeedValueRequest](#irismod.oracle.QueryFeedValueRequest)\n    - [QueryFeedValueResponse](#irismod.oracle.QueryFeedValueResponse)\n    - [QueryFeedsRequest](#irismod.oracle.QueryFeedsRequest)\n    - [QueryFeedsResponse](#irismod.oracle.QueryFeedsResponse)\n  \n    - [Query](#irismod.oracle.Query)\n  \n- [oracle/tx.proto](#oracle/tx.proto)\n    - [MsgCreateFeed](#irismod.oracle.MsgCreateFeed)\n    - [MsgCreateFeedResponse](#irismod.oracle.MsgCreateFeedResponse)\n    - [MsgEditFeed](#irismod.oracle.MsgEditFeed)\n    - [MsgEditFeedResponse](#irismod.oracle.MsgEditFeedResponse)\n    - [MsgPauseFeed](#irismod.oracle.MsgPauseFeed)\n    - [MsgPauseFeedResponse](#irismod.oracle.MsgPauseFeedResponse)\n    - [MsgStartFeed](#irismod.oracle.MsgStartFeed)\n    - [MsgStartFeedResponse](#irismod.oracle.MsgStartFeedResponse)\n  \n    - [Msg](#irismod.oracle.Msg)\n  \n- [random/random.proto](#random/random.proto)\n    - [Random](#irismod.random.Random)\n    - [Request](#irismod.random.Request)\n  \n- [random/genesis.proto](#random/genesis.proto)\n    - [GenesisState](#irismod.random.GenesisState)\n    - [GenesisState.PendingRandomRequestsEntry](#irismod.random.GenesisState.PendingRandomRequestsEntry)\n    - [Requests](#irismod.random.Requests)\n  \n- [random/query.proto](#random/query.proto)\n    - [QueryRandomRequest](#irismod.random.QueryRandomRequest)\n    - [QueryRandomRequestQueueRequest](#irismod.random.QueryRandomRequestQueueRequest)\n    - [QueryRandomRequestQueueResponse](#irismod.random.QueryRandomRequestQueueResponse)\n    - [QueryRandomResponse](#irismod.random.QueryRandomResponse)\n  \n    - [Query](#irismod.random.Query)\n  \n- [random/tx.proto](#random/tx.proto)\n    - [MsgRequestRandom](#irismod.random.MsgRequestRandom)\n    - [MsgRequestRandomResponse](#irismod.random.MsgRequestRandomResponse)\n  \n    - [Msg](#irismod.random.Msg)\n  \n- [record/record.proto](#record/record.proto)\n    - [Content](#irismod.record.Content)\n    - [Record](#irismod.record.Record)\n  \n- [record/genesis.proto](#record/genesis.proto)\n    - [GenesisState](#irismod.record.GenesisState)\n  \n- [record/query.proto](#record/query.proto)\n    - [QueryRecordRequest](#irismod.record.QueryRecordRequest)\n    - [QueryRecordResponse](#irismod.record.QueryRecordResponse)\n  \n    - [Query](#irismod.record.Query)\n  \n- [record/tx.proto](#record/tx.proto)\n    - [MsgCreateRecord](#irismod.record.MsgCreateRecord)\n    - [MsgCreateRecordResponse](#irismod.record.MsgCreateRecordResponse)\n  \n    - [Msg](#irismod.record.Msg)\n  \n- [service/genesis.proto](#service/genesis.proto)\n    - [GenesisState](#irismod.service.GenesisState)\n    - [GenesisState.RequestContextsEntry](#irismod.service.GenesisState.RequestContextsEntry)\n    - [GenesisState.WithdrawAddressesEntry](#irismod.service.GenesisState.WithdrawAddressesEntry)\n  \n- [service/query.proto](#service/query.proto)\n    - [QueryBindingRequest](#irismod.service.QueryBindingRequest)\n    - [QueryBindingResponse](#irismod.service.QueryBindingResponse)\n    - [QueryBindingsRequest](#irismod.service.QueryBindingsRequest)\n    - [QueryBindingsResponse](#irismod.service.QueryBindingsResponse)\n    - [QueryDefinitionRequest](#irismod.service.QueryDefinitionRequest)\n    - [QueryDefinitionResponse](#irismod.service.QueryDefinitionResponse)\n    - [QueryEarnedFeesRequest](#irismod.service.QueryEarnedFeesRequest)\n    - [QueryEarnedFeesResponse](#irismod.service.QueryEarnedFeesResponse)\n    - [QueryParamsRequest](#irismod.service.QueryParamsRequest)\n    - [QueryParamsResponse](#irismod.service.QueryParamsResponse)\n    - [QueryRequestContextRequest](#irismod.service.QueryRequestContextRequest)\n    - [QueryRequestContextResponse](#irismod.service.QueryRequestContextResponse)\n    - [QueryRequestRequest](#irismod.service.QueryRequestRequest)\n    - [QueryRequestResponse](#irismod.service.QueryRequestResponse)\n    - [QueryRequestsByReqCtxRequest](#irismod.service.QueryRequestsByReqCtxRequest)\n    - [QueryRequestsByReqCtxResponse](#irismod.service.QueryRequestsByReqCtxResponse)\n    - [QueryRequestsRequest](#irismod.service.QueryRequestsRequest)\n    - [QueryRequestsResponse](#irismod.service.QueryRequestsResponse)\n    - [QueryResponseRequest](#irismod.service.QueryResponseRequest)\n    - [QueryResponseResponse](#irismod.service.QueryResponseResponse)\n    - [QueryResponsesRequest](#irismod.service.QueryResponsesRequest)\n    - [QueryResponsesResponse](#irismod.service.QueryResponsesResponse)\n    - [QuerySchemaRequest](#irismod.service.QuerySchemaRequest)\n    - [QuerySchemaResponse](#irismod.service.QuerySchemaResponse)\n    - [QueryWithdrawAddressRequest](#irismod.service.QueryWithdrawAddressRequest)\n    - [QueryWithdrawAddressResponse](#irismod.service.QueryWithdrawAddressResponse)\n  \n    - [Query](#irismod.service.Query)\n  \n- [service/tx.proto](#service/tx.proto)\n    - [MsgBindService](#irismod.service.MsgBindService)\n    - [MsgBindServiceResponse](#irismod.service.MsgBindServiceResponse)\n    - [MsgCallService](#irismod.service.MsgCallService)\n    - [MsgCallServiceResponse](#irismod.service.MsgCallServiceResponse)\n    - [MsgDefineService](#irismod.service.MsgDefineService)\n    - [MsgDefineServiceResponse](#irismod.service.MsgDefineServiceResponse)\n    - [MsgDisableServiceBinding](#irismod.service.MsgDisableServiceBinding)\n    - [MsgDisableServiceBindingResponse](#irismod.service.MsgDisableServiceBindingResponse)\n    - [MsgEnableServiceBinding](#irismod.service.MsgEnableServiceBinding)\n    - [MsgEnableServiceBindingResponse](#irismod.service.MsgEnableServiceBindingResponse)\n    - [MsgKillRequestContext](#irismod.service.MsgKillRequestContext)\n    - [MsgKillRequestContextResponse](#irismod.service.MsgKillRequestContextResponse)\n    - [MsgPauseRequestContext](#irismod.service.MsgPauseRequestContext)\n    - [MsgPauseRequestContextResponse](#irismod.service.MsgPauseRequestContextResponse)\n    - [MsgRefundServiceDeposit](#irismod.service.MsgRefundServiceDeposit)\n    - [MsgRefundServiceDepositResponse](#irismod.service.MsgRefundServiceDepositResponse)\n    - [MsgRespondService](#irismod.service.MsgRespondService)\n    - [MsgRespondServiceResponse](#irismod.service.MsgRespondServiceResponse)\n    - [MsgSetWithdrawAddress](#irismod.service.MsgSetWithdrawAddress)\n    - [MsgSetWithdrawAddressResponse](#irismod.service.MsgSetWithdrawAddressResponse)\n    - [MsgStartRequestContext](#irismod.service.MsgStartRequestContext)\n    - [MsgStartRequestContextResponse](#irismod.service.MsgStartRequestContextResponse)\n    - [MsgUpdateRequestContext](#irismod.service.MsgUpdateRequestContext)\n    - [MsgUpdateRequestContextResponse](#irismod.service.MsgUpdateRequestContextResponse)\n    - [MsgUpdateServiceBinding](#irismod.service.MsgUpdateServiceBinding)\n    - [MsgUpdateServiceBindingResponse](#irismod.service.MsgUpdateServiceBindingResponse)\n    - [MsgWithdrawEarnedFees](#irismod.service.MsgWithdrawEarnedFees)\n    - [MsgWithdrawEarnedFeesResponse](#irismod.service.MsgWithdrawEarnedFeesResponse)\n  \n    - [Msg](#irismod.service.Msg)\n  \n- [token/token.proto](#token/token.proto)\n    - [Params](#irismod.token.Params)\n    - [Token](#irismod.token.Token)\n  \n- [token/genesis.proto](#token/genesis.proto)\n    - [GenesisState](#irismod.token.GenesisState)\n  \n- [token/query.proto](#token/query.proto)\n    - [QueryFeesRequest](#irismod.token.QueryFeesRequest)\n    - [QueryFeesResponse](#irismod.token.QueryFeesResponse)\n    - [QueryParamsRequest](#irismod.token.QueryParamsRequest)\n    - [QueryParamsResponse](#irismod.token.QueryParamsResponse)\n    - [QueryTokenRequest](#irismod.token.QueryTokenRequest)\n    - [QueryTokenResponse](#irismod.token.QueryTokenResponse)\n    - [QueryTokensRequest](#irismod.token.QueryTokensRequest)\n    - [QueryTokensResponse](#irismod.token.QueryTokensResponse)\n    - [QueryTotalBurnRequest](#irismod.token.QueryTotalBurnRequest)\n    - [QueryTotalBurnResponse](#irismod.token.QueryTotalBurnResponse)\n  \n    - [Query](#irismod.token.Query)\n  \n- [token/tx.proto](#token/tx.proto)\n    - [MsgBurnToken](#irismod.token.MsgBurnToken)\n    - [MsgBurnTokenResponse](#irismod.token.MsgBurnTokenResponse)\n    - [MsgEditToken](#irismod.token.MsgEditToken)\n    - [MsgEditTokenResponse](#irismod.token.MsgEditTokenResponse)\n    - [MsgIssueToken](#irismod.token.MsgIssueToken)\n    - [MsgIssueTokenResponse](#irismod.token.MsgIssueTokenResponse)\n    - [MsgMintToken](#irismod.token.MsgMintToken)\n    - [MsgMintTokenResponse](#irismod.token.MsgMintTokenResponse)\n    - [MsgTransferTokenOwner](#irismod.token.MsgTransferTokenOwner)\n    - [MsgTransferTokenOwnerResponse](#irismod.token.MsgTransferTokenOwnerResponse)\n  \n    - [Msg](#irismod.token.Msg)\n  \n- [Scalar Value Types](#scalar-value-types)\n\n\n\n<a name=\"cosmos/base/v1beta1/coin.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/v1beta1/coin.proto\n\n\n\n<a name=\"cosmos.base.v1beta1.Coin\"></a>\n\n### Coin\nCoin defines a token with a denomination and an amount.\n\nNOTE: The amount field is an Int which implements the custom method\nsignatures required by gogoproto.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  |  |\n| `amount` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.v1beta1.DecCoin\"></a>\n\n### DecCoin\nDecCoin defines a token with a denomination and a decimal amount.\n\nNOTE: The amount field is an Dec which implements the custom method\nsignatures required by gogoproto.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  |  |\n| `amount` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.v1beta1.DecProto\"></a>\n\n### DecProto\nDecProto defines a Protobuf wrapper around a Dec object.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `dec` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.v1beta1.IntProto\"></a>\n\n### IntProto\nIntProto defines a Protobuf wrapper around an Int object.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `int` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"coinswap/coinswap.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## coinswap/coinswap.proto\n\n\n\n<a name=\"irismod.coinswap.Input\"></a>\n\n### Input\nInput defines the properties of order's input\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `coin` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.Output\"></a>\n\n### Output\nOutput defines the properties of order's output\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `coin` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.Params\"></a>\n\n### Params\nParams defines token module's parameters\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.Pool\"></a>\n\n### Pool\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `standard_denom` | [string](#string) |  | denom of base coin of the pool |\n| `counterparty_denom` | [string](#string) |  | denom of counterparty coin of the pool |\n| `escrow_address` | [string](#string) |  | escrow account for deposit tokens |\n| `lpt_denom` | [string](#string) |  | denom of the liquidity pool coin |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"coinswap/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## coinswap/genesis.proto\n\n\n\n<a name=\"irismod.coinswap.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the coinswap module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.coinswap.Params) |  |  |\n| `standard_denom` | [string](#string) |  |  |\n| `pool` | [Pool](#irismod.coinswap.Pool) | repeated |  |\n| `sequence` | [uint64](#uint64) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/query/v1beta1/pagination.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/query/v1beta1/pagination.proto\n\n\n\n<a name=\"cosmos.base.query.v1beta1.PageRequest\"></a>\n\n### PageRequest\nPageRequest is to be embedded in gRPC request messages for efficient\npagination. Ex:\n\n message SomeRequest {\n         Foo some_parameter = 1;\n         PageRequest pagination = 2;\n }\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  | key is a value returned in PageResponse.next_key to begin querying the next page most efficiently. Only one of offset or key should be set. |\n| `offset` | [uint64](#uint64) |  | offset is a numeric offset that can be used when key is unavailable. It is less efficient than using key. Only one of offset or key should be set. |\n| `limit` | [uint64](#uint64) |  | limit is the total number of results to be returned in the result page. If left empty it will default to a value to be set by each app. |\n| `count_total` | [bool](#bool) |  | count_total is set to true to indicate that the result set should include a count of the total number of items available for pagination in UIs. count_total is only respected when offset is used. It is ignored when key is set. |\n\n\n\n\n\n\n<a name=\"cosmos.base.query.v1beta1.PageResponse\"></a>\n\n### PageResponse\nPageResponse is to be embedded in gRPC response messages where the\ncorresponding request message has used PageRequest.\n\n message SomeResponse {\n         repeated Bar results = 1;\n         PageResponse page = 2;\n }\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `next_key` | [bytes](#bytes) |  | next_key is the key to be passed to PageRequest.key to query the next page most efficiently |\n| `total` | [uint64](#uint64) |  | total is total number of results available if PageRequest.count_total was set, its value is undefined otherwise |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"coinswap/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## coinswap/query.proto\n\n\n\n<a name=\"irismod.coinswap.PoolInfo\"></a>\n\n### PoolInfo\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `escrow_address` | [string](#string) |  | escrow account for deposit tokens |\n| `standard` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | main token balance |\n| `token` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | counterparty token balance |\n| `lpt` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | liquidity token balance |\n| `fee` | [string](#string) |  | liquidity pool fee |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.QueryLiquidityPoolRequest\"></a>\n\n### QueryLiquidityPoolRequest\nQueryLiquidityPoolRequest is request type for the Query/LiquidityPool RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `lpt_denom` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.QueryLiquidityPoolResponse\"></a>\n\n### QueryLiquidityPoolResponse\nQueryLiquidityPoolResponse is response type for the Query/LiquidityPool RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool` | [PoolInfo](#irismod.coinswap.PoolInfo) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.QueryLiquidityPoolsRequest\"></a>\n\n### QueryLiquidityPoolsRequest\nQueryLiquidityPoolsRequest is request type for the Query/LiquidityPools RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.QueryLiquidityPoolsResponse\"></a>\n\n### QueryLiquidityPoolsResponse\nQueryLiquidityPoolsResponse is response type for the Query/LiquidityPools RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pools` | [PoolInfo](#irismod.coinswap.PoolInfo) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.coinswap.Query\"></a>\n\n### Query\nQuery creates service with coinswap as rpc\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `LiquidityPool` | [QueryLiquidityPoolRequest](#irismod.coinswap.QueryLiquidityPoolRequest) | [QueryLiquidityPoolResponse](#irismod.coinswap.QueryLiquidityPoolResponse) | LiquidityPool returns the liquidity pool for the provided lpt_denom | GET|/irismod/coinswap/pools/{lpt_denom}|\n| `LiquidityPools` | [QueryLiquidityPoolsRequest](#irismod.coinswap.QueryLiquidityPoolsRequest) | [QueryLiquidityPoolsResponse](#irismod.coinswap.QueryLiquidityPoolsResponse) | LiquidityPools returns all the liquidity pools available | GET|/irismod/coinswap/pools|\n\n <!-- end services -->\n\n\n\n<a name=\"coinswap/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## coinswap/tx.proto\n\n\n\n<a name=\"irismod.coinswap.MsgAddLiquidity\"></a>\n\n### MsgAddLiquidity\nMsgAddLiquidity defines a msg for adding liquidity to a reserve pool\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `max_token` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `exact_standard_amt` | [string](#string) |  |  |\n| `min_liquidity` | [string](#string) |  |  |\n| `deadline` | [int64](#int64) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.MsgAddLiquidityResponse\"></a>\n\n### MsgAddLiquidityResponse\nMsgAddLiquidityResponse defines the Msg/AddLiquidity response type\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `mint_token` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.MsgRemoveLiquidity\"></a>\n\n### MsgRemoveLiquidity\nMsgRemoveLiquidity defines a msg for removing liquidity from a reserve pool\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `withdraw_liquidity` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `min_token` | [string](#string) |  |  |\n| `min_standard_amt` | [string](#string) |  |  |\n| `deadline` | [int64](#int64) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.MsgRemoveLiquidityResponse\"></a>\n\n### MsgRemoveLiquidityResponse\nMsgRemoveLiquidityResponse defines the Msg/RemoveLiquidity response type\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `withdraw_coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.coinswap.MsgSwapCoinResponse\"></a>\n\n### MsgSwapCoinResponse\nMsgSwapCoinResponse defines the Msg/SwapCoin response type\n\n\n\n\n\n\n<a name=\"irismod.coinswap.MsgSwapOrder\"></a>\n\n### MsgSwapOrder\nMsgSwapOrder defines a msg for swap order\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `input` | [Input](#irismod.coinswap.Input) |  |  |\n| `output` | [Output](#irismod.coinswap.Output) |  |  |\n| `deadline` | [int64](#int64) |  |  |\n| `is_buy_order` | [bool](#bool) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.coinswap.Msg\"></a>\n\n### Msg\nMsg defines the coinswap Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `AddLiquidity` | [MsgAddLiquidity](#irismod.coinswap.MsgAddLiquidity) | [MsgAddLiquidityResponse](#irismod.coinswap.MsgAddLiquidityResponse) | AddLiquidity defines a method for depositing some tokens to the liquidity pool | |\n| `RemoveLiquidity` | [MsgRemoveLiquidity](#irismod.coinswap.MsgRemoveLiquidity) | [MsgRemoveLiquidityResponse](#irismod.coinswap.MsgRemoveLiquidityResponse) | RemoveLiquidity defines a method for withdraw some tokens from the liquidity pool | |\n| `SwapCoin` | [MsgSwapOrder](#irismod.coinswap.MsgSwapOrder) | [MsgSwapCoinResponse](#irismod.coinswap.MsgSwapCoinResponse) | SwapCoin defines a method for swapping a token with the other token from the liquidity pool | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/auth/v1beta1/auth.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/auth/v1beta1/auth.proto\n\n\n\n<a name=\"cosmos.auth.v1beta1.BaseAccount\"></a>\n\n### BaseAccount\nBaseAccount defines a base account type. It contains all the necessary fields\nfor basic account functionality. Any custom account type should extend this\ntype for additional functionality (e.g. vesting).\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `pub_key` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `account_number` | [uint64](#uint64) |  |  |\n| `sequence` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.auth.v1beta1.ModuleAccount\"></a>\n\n### ModuleAccount\nModuleAccount defines an account for modules that holds coins on a pool.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `base_account` | [BaseAccount](#cosmos.auth.v1beta1.BaseAccount) |  |  |\n| `name` | [string](#string) |  |  |\n| `permissions` | [string](#string) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.auth.v1beta1.Params\"></a>\n\n### Params\nParams defines the parameters for the auth module.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `max_memo_characters` | [uint64](#uint64) |  |  |\n| `tx_sig_limit` | [uint64](#uint64) |  |  |\n| `tx_size_cost_per_byte` | [uint64](#uint64) |  |  |\n| `sig_verify_cost_ed25519` | [uint64](#uint64) |  |  |\n| `sig_verify_cost_secp256k1` | [uint64](#uint64) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/auth/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/auth/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.auth.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the auth module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.auth.v1beta1.Params) |  | params defines all the paramaters of the module. |\n| `accounts` | [google.protobuf.Any](#google.protobuf.Any) | repeated | accounts are the accounts present at genesis. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/auth/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/auth/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.auth.v1beta1.QueryAccountRequest\"></a>\n\n### QueryAccountRequest\nQueryAccountRequest is the request type for the Query/Account RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address defines the address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.auth.v1beta1.QueryAccountResponse\"></a>\n\n### QueryAccountResponse\nQueryAccountResponse is the response type for the Query/Account RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `account` | [google.protobuf.Any](#google.protobuf.Any) |  | account defines the account of the corresponding address. |\n\n\n\n\n\n\n<a name=\"cosmos.auth.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is the request type for the Query/Params RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.auth.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is the response type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.auth.v1beta1.Params) |  | params defines the parameters of the module. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.auth.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Account` | [QueryAccountRequest](#cosmos.auth.v1beta1.QueryAccountRequest) | [QueryAccountResponse](#cosmos.auth.v1beta1.QueryAccountResponse) | Account returns account details based on address. | GET|/cosmos/auth/v1beta1/accounts/{address}|\n| `Params` | [QueryParamsRequest](#cosmos.auth.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.auth.v1beta1.QueryParamsResponse) | Params queries all parameters. | GET|/cosmos/auth/v1beta1/params|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/bank/v1beta1/bank.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/bank/v1beta1/bank.proto\n\n\n\n<a name=\"cosmos.bank.v1beta1.DenomUnit\"></a>\n\n### DenomUnit\nDenomUnit represents a struct that describes a given\ndenomination unit of the basic token.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  | denom represents the string name of the given denom unit (e.g uatom). |\n| `exponent` | [uint32](#uint32) |  | exponent represents power of 10 exponent that one must raise the base_denom to in order to equal the given DenomUnit's denom 1 denom = 1^exponent base_denom (e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' with exponent = 6, thus: 1 atom = 10^6 uatom). |\n| `aliases` | [string](#string) | repeated | aliases is a list of string aliases for the given denom |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.Input\"></a>\n\n### Input\nInput models transaction input.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.Metadata\"></a>\n\n### Metadata\nMetadata represents a struct that describes\na basic token.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `description` | [string](#string) |  |  |\n| `denom_units` | [DenomUnit](#cosmos.bank.v1beta1.DenomUnit) | repeated | denom_units represents the list of DenomUnit's for a given coin |\n| `base` | [string](#string) |  | base represents the base denom (should be the DenomUnit with exponent = 0). |\n| `display` | [string](#string) |  | display indicates the suggested denom that should be displayed in clients. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.Output\"></a>\n\n### Output\nOutput models transaction outputs.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.Params\"></a>\n\n### Params\nParams defines the parameters for the bank module.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `send_enabled` | [SendEnabled](#cosmos.bank.v1beta1.SendEnabled) | repeated |  |\n| `default_send_enabled` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.SendEnabled\"></a>\n\n### SendEnabled\nSendEnabled maps coin denom to a send_enabled status (whether a denom is\nsendable).\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  |  |\n| `enabled` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.Supply\"></a>\n\n### Supply\nSupply represents a struct that passively keeps track of the total supply\namounts in the network.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `total` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/bank/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/bank/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.bank.v1beta1.Balance\"></a>\n\n### Balance\nBalance defines an account address and balance pair used in the bank module's\ngenesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address is the address of the balance holder. |\n| `coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | coins defines the different coins this balance holds. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the bank module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.bank.v1beta1.Params) |  | params defines all the paramaters of the module. |\n| `balances` | [Balance](#cosmos.bank.v1beta1.Balance) | repeated | balances is an array containing the balances of all the accounts. |\n| `supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | supply represents the total supply. |\n| `denom_metadata` | [Metadata](#cosmos.bank.v1beta1.Metadata) | repeated | denom_metadata defines the metadata of the differents coins. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/bank/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/bank/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryAllBalancesRequest\"></a>\n\n### QueryAllBalancesRequest\nQueryBalanceRequest is the request type for the Query/AllBalances RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address is the address to query balances for. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryAllBalancesResponse\"></a>\n\n### QueryAllBalancesResponse\nQueryAllBalancesResponse is the response type for the Query/AllBalances RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `balances` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | balances is the balances of all the coins. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryBalanceRequest\"></a>\n\n### QueryBalanceRequest\nQueryBalanceRequest is the request type for the Query/Balance RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address is the address to query balances for. |\n| `denom` | [string](#string) |  | denom is the coin denom to query balances for. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryBalanceResponse\"></a>\n\n### QueryBalanceResponse\nQueryBalanceResponse is the response type for the Query/Balance RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `balance` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | balance is the balance of the coin. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryDenomMetadataRequest\"></a>\n\n### QueryDenomMetadataRequest\nQueryDenomMetadataRequest is the request type for the Query/DenomMetadata RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  | denom is the coin denom to query the metadata for. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryDenomMetadataResponse\"></a>\n\n### QueryDenomMetadataResponse\nQueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `metadata` | [Metadata](#cosmos.bank.v1beta1.Metadata) |  | metadata describes and provides all the client information for the requested token. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryDenomsMetadataRequest\"></a>\n\n### QueryDenomsMetadataRequest\nQueryDenomsMetadataRequest is the request type for the Query/DenomsMetadata RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryDenomsMetadataResponse\"></a>\n\n### QueryDenomsMetadataResponse\nQueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `metadatas` | [Metadata](#cosmos.bank.v1beta1.Metadata) | repeated | metadata provides the client information for all the registered tokens. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest defines the request type for querying x/bank parameters.\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse defines the response type for querying x/bank parameters.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.bank.v1beta1.Params) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QuerySupplyOfRequest\"></a>\n\n### QuerySupplyOfRequest\nQuerySupplyOfRequest is the request type for the Query/SupplyOf RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  | denom is the coin denom to query balances for. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QuerySupplyOfResponse\"></a>\n\n### QuerySupplyOfResponse\nQuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | amount is the supply of the coin. |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryTotalSupplyRequest\"></a>\n\n### QueryTotalSupplyRequest\nQueryTotalSupplyRequest is the request type for the Query/TotalSupply RPC\nmethod.\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.QueryTotalSupplyResponse\"></a>\n\n### QueryTotalSupplyResponse\nQueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | supply is the supply of the coins |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.bank.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Balance` | [QueryBalanceRequest](#cosmos.bank.v1beta1.QueryBalanceRequest) | [QueryBalanceResponse](#cosmos.bank.v1beta1.QueryBalanceResponse) | Balance queries the balance of a single coin for a single account. | GET|/cosmos/bank/v1beta1/balances/{address}/{denom}|\n| `AllBalances` | [QueryAllBalancesRequest](#cosmos.bank.v1beta1.QueryAllBalancesRequest) | [QueryAllBalancesResponse](#cosmos.bank.v1beta1.QueryAllBalancesResponse) | AllBalances queries the balance of all coins for a single account. | GET|/cosmos/bank/v1beta1/balances/{address}|\n| `TotalSupply` | [QueryTotalSupplyRequest](#cosmos.bank.v1beta1.QueryTotalSupplyRequest) | [QueryTotalSupplyResponse](#cosmos.bank.v1beta1.QueryTotalSupplyResponse) | TotalSupply queries the total supply of all coins. | GET|/cosmos/bank/v1beta1/supply|\n| `SupplyOf` | [QuerySupplyOfRequest](#cosmos.bank.v1beta1.QuerySupplyOfRequest) | [QuerySupplyOfResponse](#cosmos.bank.v1beta1.QuerySupplyOfResponse) | SupplyOf queries the supply of a single coin. | GET|/cosmos/bank/v1beta1/supply/{denom}|\n| `Params` | [QueryParamsRequest](#cosmos.bank.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.bank.v1beta1.QueryParamsResponse) | Params queries the parameters of x/bank module. | GET|/cosmos/bank/v1beta1/params|\n| `DenomMetadata` | [QueryDenomMetadataRequest](#cosmos.bank.v1beta1.QueryDenomMetadataRequest) | [QueryDenomMetadataResponse](#cosmos.bank.v1beta1.QueryDenomMetadataResponse) | DenomsMetadata queries the client metadata of a given coin denomination. | GET|/cosmos/bank/v1beta1/denoms_metadata/{denom}|\n| `DenomsMetadata` | [QueryDenomsMetadataRequest](#cosmos.bank.v1beta1.QueryDenomsMetadataRequest) | [QueryDenomsMetadataResponse](#cosmos.bank.v1beta1.QueryDenomsMetadataResponse) | DenomsMetadata queries the client metadata for all registered coin denominations. | GET|/cosmos/bank/v1beta1/denoms_metadata|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/bank/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/bank/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.bank.v1beta1.MsgMultiSend\"></a>\n\n### MsgMultiSend\nMsgMultiSend represents an arbitrary multi-in, multi-out send message.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `inputs` | [Input](#cosmos.bank.v1beta1.Input) | repeated |  |\n| `outputs` | [Output](#cosmos.bank.v1beta1.Output) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.MsgMultiSendResponse\"></a>\n\n### MsgMultiSendResponse\nMsgMultiSendResponse defines the Msg/MultiSend response type.\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.MsgSend\"></a>\n\n### MsgSend\nMsgSend represents a message to send coins from one account to another.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `from_address` | [string](#string) |  |  |\n| `to_address` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.bank.v1beta1.MsgSendResponse\"></a>\n\n### MsgSendResponse\nMsgSendResponse defines the Msg/Send response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.bank.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the bank Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Send` | [MsgSend](#cosmos.bank.v1beta1.MsgSend) | [MsgSendResponse](#cosmos.bank.v1beta1.MsgSendResponse) | Send defines a method for sending coins from one account to another account. | |\n| `MultiSend` | [MsgMultiSend](#cosmos.bank.v1beta1.MsgMultiSend) | [MsgMultiSendResponse](#cosmos.bank.v1beta1.MsgMultiSendResponse) | MultiSend defines a method for sending coins from some accounts to other accounts. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/abci/v1beta1/abci.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/abci/v1beta1/abci.proto\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.ABCIMessageLog\"></a>\n\n### ABCIMessageLog\nABCIMessageLog defines a structure containing an indexed tx ABCI message log.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `msg_index` | [uint32](#uint32) |  |  |\n| `log` | [string](#string) |  |  |\n| `events` | [StringEvent](#cosmos.base.abci.v1beta1.StringEvent) | repeated | Events contains a slice of Event objects that were emitted during some execution. |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.Attribute\"></a>\n\n### Attribute\nAttribute defines an attribute wrapper where the key and value are\nstrings instead of raw bytes.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [string](#string) |  |  |\n| `value` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.GasInfo\"></a>\n\n### GasInfo\nGasInfo defines tx execution gas context.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `gas_wanted` | [uint64](#uint64) |  | GasWanted is the maximum units of work we allow this tx to perform. |\n| `gas_used` | [uint64](#uint64) |  | GasUsed is the amount of gas actually consumed. |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.MsgData\"></a>\n\n### MsgData\nMsgData defines the data returned in a Result object during message\nexecution.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `msg_type` | [string](#string) |  |  |\n| `data` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.Result\"></a>\n\n### Result\nResult is the union of ResponseFormat and ResponseCheckTx.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `data` | [bytes](#bytes) |  | Data is any data returned from message or handler execution. It MUST be length prefixed in order to separate data from multiple message executions. |\n| `log` | [string](#string) |  | Log contains the log information from message or handler execution. |\n| `events` | [tendermint.abci.Event](#tendermint.abci.Event) | repeated | Events contains a slice of Event objects that were emitted during message or handler execution. |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.SearchTxsResult\"></a>\n\n### SearchTxsResult\nSearchTxsResult defines a structure for querying txs pageable\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `total_count` | [uint64](#uint64) |  | Count of all txs |\n| `count` | [uint64](#uint64) |  | Count of txs in current page |\n| `page_number` | [uint64](#uint64) |  | Index of current page, start from 1 |\n| `page_total` | [uint64](#uint64) |  | Count of total pages |\n| `limit` | [uint64](#uint64) |  | Max count txs per page |\n| `txs` | [TxResponse](#cosmos.base.abci.v1beta1.TxResponse) | repeated | List of txs in current page |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.SimulationResponse\"></a>\n\n### SimulationResponse\nSimulationResponse defines the response generated when a transaction is\nsuccessfully simulated.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `gas_info` | [GasInfo](#cosmos.base.abci.v1beta1.GasInfo) |  |  |\n| `result` | [Result](#cosmos.base.abci.v1beta1.Result) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.StringEvent\"></a>\n\n### StringEvent\nStringEvent defines en Event object wrapper where all the attributes\ncontain key/value pairs that are strings instead of raw bytes.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `type` | [string](#string) |  |  |\n| `attributes` | [Attribute](#cosmos.base.abci.v1beta1.Attribute) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.TxMsgData\"></a>\n\n### TxMsgData\nTxMsgData defines a list of MsgData. A transaction will have a MsgData object\nfor each message.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `data` | [MsgData](#cosmos.base.abci.v1beta1.MsgData) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.abci.v1beta1.TxResponse\"></a>\n\n### TxResponse\nTxResponse defines a structure containing relevant tx data and metadata. The\ntags are stringified and the log is JSON decoded.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  | The block height |\n| `txhash` | [string](#string) |  | The transaction hash. |\n| `codespace` | [string](#string) |  | Namespace for the Code |\n| `code` | [uint32](#uint32) |  | Response code. |\n| `data` | [string](#string) |  | Result bytes, if any. |\n| `raw_log` | [string](#string) |  | The output of the application's logger (raw string). May be non-deterministic. |\n| `logs` | [ABCIMessageLog](#cosmos.base.abci.v1beta1.ABCIMessageLog) | repeated | The output of the application's logger (typed). May be non-deterministic. |\n| `info` | [string](#string) |  | Additional information. May be non-deterministic. |\n| `gas_wanted` | [int64](#int64) |  | Amount of gas requested for transaction. |\n| `gas_used` | [int64](#int64) |  | Amount of gas consumed by transaction. |\n| `tx` | [google.protobuf.Any](#google.protobuf.Any) |  | The request transaction bytes. |\n| `timestamp` | [string](#string) |  | Time of the previous block. For heights > 1, it's the weighted median of the timestamps of the valid votes in the block.LastCommit. For height == 1, it's genesis time. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/kv/v1beta1/kv.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/kv/v1beta1/kv.proto\n\n\n\n<a name=\"cosmos.base.kv.v1beta1.Pair\"></a>\n\n### Pair\nPair defines a key/value bytes tuple.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  |  |\n| `value` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.kv.v1beta1.Pairs\"></a>\n\n### Pairs\nPairs defines a repeated slice of Pair objects.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pairs` | [Pair](#cosmos.base.kv.v1beta1.Pair) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/reflection/v1beta1/reflection.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/reflection/v1beta1/reflection.proto\n\n\n\n<a name=\"cosmos.base.reflection.v1beta1.ListAllInterfacesRequest\"></a>\n\n### ListAllInterfacesRequest\nListAllInterfacesRequest is the request type of the ListAllInterfaces RPC.\n\n\n\n\n\n\n<a name=\"cosmos.base.reflection.v1beta1.ListAllInterfacesResponse\"></a>\n\n### ListAllInterfacesResponse\nListAllInterfacesResponse is the response type of the ListAllInterfaces RPC.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `interface_names` | [string](#string) | repeated | interface_names is an array of all the registered interfaces. |\n\n\n\n\n\n\n<a name=\"cosmos.base.reflection.v1beta1.ListImplementationsRequest\"></a>\n\n### ListImplementationsRequest\nListImplementationsRequest is the request type of the ListImplementations\nRPC.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `interface_name` | [string](#string) |  | interface_name defines the interface to query the implementations for. |\n\n\n\n\n\n\n<a name=\"cosmos.base.reflection.v1beta1.ListImplementationsResponse\"></a>\n\n### ListImplementationsResponse\nListImplementationsResponse is the response type of the ListImplementations\nRPC.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `implementation_message_names` | [string](#string) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.base.reflection.v1beta1.ReflectionService\"></a>\n\n### ReflectionService\nReflectionService defines a service for interface reflection.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `ListAllInterfaces` | [ListAllInterfacesRequest](#cosmos.base.reflection.v1beta1.ListAllInterfacesRequest) | [ListAllInterfacesResponse](#cosmos.base.reflection.v1beta1.ListAllInterfacesResponse) | ListAllInterfaces lists all the interfaces registered in the interface registry. | GET|/cosmos/base/reflection/v1beta1/interfaces|\n| `ListImplementations` | [ListImplementationsRequest](#cosmos.base.reflection.v1beta1.ListImplementationsRequest) | [ListImplementationsResponse](#cosmos.base.reflection.v1beta1.ListImplementationsResponse) | ListImplementations list all the concrete types that implement a given interface. | GET|/cosmos/base/reflection/v1beta1/interfaces/{interface_name}/implementations|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/snapshots/v1beta1/snapshot.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/snapshots/v1beta1/snapshot.proto\n\n\n\n<a name=\"cosmos.base.snapshots.v1beta1.Metadata\"></a>\n\n### Metadata\nMetadata contains SDK-specific snapshot metadata.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `chunk_hashes` | [bytes](#bytes) | repeated | SHA-256 chunk hashes |\n\n\n\n\n\n\n<a name=\"cosmos.base.snapshots.v1beta1.Snapshot\"></a>\n\n### Snapshot\nSnapshot contains Tendermint state sync snapshot info.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [uint64](#uint64) |  |  |\n| `format` | [uint32](#uint32) |  |  |\n| `chunks` | [uint32](#uint32) |  |  |\n| `hash` | [bytes](#bytes) |  |  |\n| `metadata` | [Metadata](#cosmos.base.snapshots.v1beta1.Metadata) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/store/v1beta1/commit_info.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/store/v1beta1/commit_info.proto\n\n\n\n<a name=\"cosmos.base.store.v1beta1.CommitID\"></a>\n\n### CommitID\nCommitID defines the committment information when a specific store is\ncommitted.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `version` | [int64](#int64) |  |  |\n| `hash` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.store.v1beta1.CommitInfo\"></a>\n\n### CommitInfo\nCommitInfo defines commit information used by the multi-store when committing\na version/height.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `version` | [int64](#int64) |  |  |\n| `store_infos` | [StoreInfo](#cosmos.base.store.v1beta1.StoreInfo) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.store.v1beta1.StoreInfo\"></a>\n\n### StoreInfo\nStoreInfo defines store-specific commit information. It contains a reference\nbetween a store name and the commit ID.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `commit_id` | [CommitID](#cosmos.base.store.v1beta1.CommitID) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/store/v1beta1/snapshot.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/store/v1beta1/snapshot.proto\n\n\n\n<a name=\"cosmos.base.store.v1beta1.SnapshotIAVLItem\"></a>\n\n### SnapshotIAVLItem\nSnapshotIAVLItem is an exported IAVL node.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  |  |\n| `value` | [bytes](#bytes) |  |  |\n| `version` | [int64](#int64) |  |  |\n| `height` | [int32](#int32) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.store.v1beta1.SnapshotItem\"></a>\n\n### SnapshotItem\nSnapshotItem is an item contained in a rootmulti.Store snapshot.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `store` | [SnapshotStoreItem](#cosmos.base.store.v1beta1.SnapshotStoreItem) |  |  |\n| `iavl` | [SnapshotIAVLItem](#cosmos.base.store.v1beta1.SnapshotIAVLItem) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.store.v1beta1.SnapshotStoreItem\"></a>\n\n### SnapshotStoreItem\nSnapshotStoreItem contains metadata about a snapshotted store.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/base/tendermint/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/base/tendermint/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetBlockByHeightRequest\"></a>\n\n### GetBlockByHeightRequest\nGetBlockByHeightRequest is the request type for the Query/GetBlockByHeight RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetBlockByHeightResponse\"></a>\n\n### GetBlockByHeightResponse\nGetBlockByHeightResponse is the response type for the Query/GetBlockByHeight RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `block_id` | [tendermint.types.BlockID](#tendermint.types.BlockID) |  |  |\n| `block` | [tendermint.types.Block](#tendermint.types.Block) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetLatestBlockRequest\"></a>\n\n### GetLatestBlockRequest\nGetLatestBlockRequest is the request type for the Query/GetLatestBlock RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetLatestBlockResponse\"></a>\n\n### GetLatestBlockResponse\nGetLatestBlockResponse is the response type for the Query/GetLatestBlock RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `block_id` | [tendermint.types.BlockID](#tendermint.types.BlockID) |  |  |\n| `block` | [tendermint.types.Block](#tendermint.types.Block) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetLatestValidatorSetRequest\"></a>\n\n### GetLatestValidatorSetRequest\nGetLatestValidatorSetRequest is the request type for the Query/GetValidatorSetByHeight RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetLatestValidatorSetResponse\"></a>\n\n### GetLatestValidatorSetResponse\nGetLatestValidatorSetResponse is the response type for the Query/GetValidatorSetByHeight RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `block_height` | [int64](#int64) |  |  |\n| `validators` | [Validator](#cosmos.base.tendermint.v1beta1.Validator) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines an pagination for the response. |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetNodeInfoRequest\"></a>\n\n### GetNodeInfoRequest\nGetNodeInfoRequest is the request type for the Query/GetNodeInfo RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetNodeInfoResponse\"></a>\n\n### GetNodeInfoResponse\nGetNodeInfoResponse is the request type for the Query/GetNodeInfo RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `default_node_info` | [tendermint.p2p.DefaultNodeInfo](#tendermint.p2p.DefaultNodeInfo) |  |  |\n| `application_version` | [VersionInfo](#cosmos.base.tendermint.v1beta1.VersionInfo) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetSyncingRequest\"></a>\n\n### GetSyncingRequest\nGetSyncingRequest is the request type for the Query/GetSyncing RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetSyncingResponse\"></a>\n\n### GetSyncingResponse\nGetSyncingResponse is the response type for the Query/GetSyncing RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `syncing` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightRequest\"></a>\n\n### GetValidatorSetByHeightRequest\nGetValidatorSetByHeightRequest is the request type for the Query/GetValidatorSetByHeight RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightResponse\"></a>\n\n### GetValidatorSetByHeightResponse\nGetValidatorSetByHeightResponse is the response type for the Query/GetValidatorSetByHeight RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `block_height` | [int64](#int64) |  |  |\n| `validators` | [Validator](#cosmos.base.tendermint.v1beta1.Validator) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines an pagination for the response. |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.Module\"></a>\n\n### Module\nModule is the type for VersionInfo\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [string](#string) |  | module path |\n| `version` | [string](#string) |  | module version |\n| `sum` | [string](#string) |  | checksum |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.Validator\"></a>\n\n### Validator\nValidator is the type for the validator-set.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `pub_key` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `voting_power` | [int64](#int64) |  |  |\n| `proposer_priority` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.VersionInfo\"></a>\n\n### VersionInfo\nVersionInfo is the type for the GetNodeInfoResponse message.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `app_name` | [string](#string) |  |  |\n| `version` | [string](#string) |  |  |\n| `git_commit` | [string](#string) |  |  |\n| `build_tags` | [string](#string) |  |  |\n| `go_version` | [string](#string) |  |  |\n| `build_deps` | [Module](#cosmos.base.tendermint.v1beta1.Module) | repeated |  |\n| `cosmos_sdk_version` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.base.tendermint.v1beta1.Service\"></a>\n\n### Service\nService defines the gRPC querier service for tendermint queries.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `GetNodeInfo` | [GetNodeInfoRequest](#cosmos.base.tendermint.v1beta1.GetNodeInfoRequest) | [GetNodeInfoResponse](#cosmos.base.tendermint.v1beta1.GetNodeInfoResponse) | GetNodeInfo queries the current node info. | GET|/cosmos/base/tendermint/v1beta1/node_info|\n| `GetSyncing` | [GetSyncingRequest](#cosmos.base.tendermint.v1beta1.GetSyncingRequest) | [GetSyncingResponse](#cosmos.base.tendermint.v1beta1.GetSyncingResponse) | GetSyncing queries node syncing. | GET|/cosmos/base/tendermint/v1beta1/syncing|\n| `GetLatestBlock` | [GetLatestBlockRequest](#cosmos.base.tendermint.v1beta1.GetLatestBlockRequest) | [GetLatestBlockResponse](#cosmos.base.tendermint.v1beta1.GetLatestBlockResponse) | GetLatestBlock returns the latest block. | GET|/cosmos/base/tendermint/v1beta1/blocks/latest|\n| `GetBlockByHeight` | [GetBlockByHeightRequest](#cosmos.base.tendermint.v1beta1.GetBlockByHeightRequest) | [GetBlockByHeightResponse](#cosmos.base.tendermint.v1beta1.GetBlockByHeightResponse) | GetBlockByHeight queries block for given height. | GET|/cosmos/base/tendermint/v1beta1/blocks/{height}|\n| `GetLatestValidatorSet` | [GetLatestValidatorSetRequest](#cosmos.base.tendermint.v1beta1.GetLatestValidatorSetRequest) | [GetLatestValidatorSetResponse](#cosmos.base.tendermint.v1beta1.GetLatestValidatorSetResponse) | GetLatestValidatorSet queries latest validator-set. | GET|/cosmos/base/tendermint/v1beta1/validatorsets/latest|\n| `GetValidatorSetByHeight` | [GetValidatorSetByHeightRequest](#cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightRequest) | [GetValidatorSetByHeightResponse](#cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightResponse) | GetValidatorSetByHeight queries validator-set at a given height. | GET|/cosmos/base/tendermint/v1beta1/validatorsets/{height}|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/capability/v1beta1/capability.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/capability/v1beta1/capability.proto\n\n\n\n<a name=\"cosmos.capability.v1beta1.Capability\"></a>\n\n### Capability\nCapability defines an implementation of an object capability. The index\nprovided to a Capability must be globally unique.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `index` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.capability.v1beta1.CapabilityOwners\"></a>\n\n### CapabilityOwners\nCapabilityOwners defines a set of owners of a single Capability. The set of\nowners must be unique.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `owners` | [Owner](#cosmos.capability.v1beta1.Owner) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.capability.v1beta1.Owner\"></a>\n\n### Owner\nOwner defines a single capability owner. An owner is defined by the name of\ncapability and the module name.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `module` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/capability/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/capability/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.capability.v1beta1.GenesisOwners\"></a>\n\n### GenesisOwners\nGenesisOwners defines the capability owners with their corresponding index.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `index` | [uint64](#uint64) |  | index is the index of the capability owner. |\n| `index_owners` | [CapabilityOwners](#cosmos.capability.v1beta1.CapabilityOwners) |  | index_owners are the owners at the given index. |\n\n\n\n\n\n\n<a name=\"cosmos.capability.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the capability module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `index` | [uint64](#uint64) |  | index is the capability global index. |\n| `owners` | [GenesisOwners](#cosmos.capability.v1beta1.GenesisOwners) | repeated | owners represents a map from index to owners of the capability index index key is string to allow amino marshalling. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/crisis/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/crisis/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.crisis.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the crisis module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `constant_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | constant_fee is the fee used to verify the invariant in the crisis module. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/crisis/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/crisis/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.crisis.v1beta1.MsgVerifyInvariant\"></a>\n\n### MsgVerifyInvariant\nMsgVerifyInvariant represents a message to verify a particular invariance.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sender` | [string](#string) |  |  |\n| `invariant_module_name` | [string](#string) |  |  |\n| `invariant_route` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.crisis.v1beta1.MsgVerifyInvariantResponse\"></a>\n\n### MsgVerifyInvariantResponse\nMsgVerifyInvariantResponse defines the Msg/VerifyInvariant response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.crisis.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the bank Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `VerifyInvariant` | [MsgVerifyInvariant](#cosmos.crisis.v1beta1.MsgVerifyInvariant) | [MsgVerifyInvariantResponse](#cosmos.crisis.v1beta1.MsgVerifyInvariantResponse) | VerifyInvariant defines a method to verify a particular invariance. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/crypto/ed25519/keys.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/crypto/ed25519/keys.proto\n\n\n\n<a name=\"cosmos.crypto.ed25519.PrivKey\"></a>\n\n### PrivKey\nPrivKey defines a ed25519 private key.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.crypto.ed25519.PubKey\"></a>\n\n### PubKey\nPubKey defines a ed25519 public key\nKey is the compressed form of the pubkey. The first byte depends is a 0x02 byte\nif the y-coordinate is the lexicographically largest of the two associated with\nthe x-coordinate. Otherwise the first byte is a 0x03.\nThis prefix is followed with the x-coordinate.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/crypto/multisig/keys.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/crypto/multisig/keys.proto\n\n\n\n<a name=\"cosmos.crypto.multisig.LegacyAminoPubKey\"></a>\n\n### LegacyAminoPubKey\nLegacyAminoPubKey specifies a public key type\nwhich nests multiple public keys and a threshold,\nit uses legacy amino address rules.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `threshold` | [uint32](#uint32) |  |  |\n| `public_keys` | [google.protobuf.Any](#google.protobuf.Any) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/crypto/multisig/v1beta1/multisig.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/crypto/multisig/v1beta1/multisig.proto\n\n\n\n<a name=\"cosmos.crypto.multisig.v1beta1.CompactBitArray\"></a>\n\n### CompactBitArray\nCompactBitArray is an implementation of a space efficient bit array.\nThis is used to ensure that the encoded data takes up a minimal amount of\nspace after proto encoding.\nThis is not thread safe, and is not intended for concurrent usage.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `extra_bits_stored` | [uint32](#uint32) |  |  |\n| `elems` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.crypto.multisig.v1beta1.MultiSignature\"></a>\n\n### MultiSignature\nMultiSignature wraps the signatures from a multisig.LegacyAminoPubKey.\nSee cosmos.tx.v1betata1.ModeInfo.Multi for how to specify which signers\nsigned and with which modes.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signatures` | [bytes](#bytes) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/crypto/secp256k1/keys.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/crypto/secp256k1/keys.proto\n\n\n\n<a name=\"cosmos.crypto.secp256k1.PrivKey\"></a>\n\n### PrivKey\nPrivKey defines a secp256k1 private key.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.crypto.secp256k1.PubKey\"></a>\n\n### PubKey\nPubKey defines a secp256k1 public key\nKey is the compressed form of the pubkey. The first byte depends is a 0x02 byte\nif the y-coordinate is the lexicographically largest of the two associated with\nthe x-coordinate. Otherwise the first byte is a 0x03.\nThis prefix is followed with the x-coordinate.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/distribution/v1beta1/distribution.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/distribution/v1beta1/distribution.proto\n\n\n\n<a name=\"cosmos.distribution.v1beta1.CommunityPoolSpendProposal\"></a>\n\n### CommunityPoolSpendProposal\nCommunityPoolSpendProposal details a proposal for use of community funds,\ntogether with how many coins are proposed to be spent, and to which\nrecipient account.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `recipient` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.CommunityPoolSpendProposalWithDeposit\"></a>\n\n### CommunityPoolSpendProposalWithDeposit\nCommunityPoolSpendProposalWithDeposit defines a CommunityPoolSpendProposal\nwith a deposit\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `recipient` | [string](#string) |  |  |\n| `amount` | [string](#string) |  |  |\n| `deposit` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.DelegationDelegatorReward\"></a>\n\n### DelegationDelegatorReward\nDelegationDelegatorReward represents the properties\nof a delegator's delegation reward.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  |  |\n| `reward` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.DelegatorStartingInfo\"></a>\n\n### DelegatorStartingInfo\nDelegatorStartingInfo represents the starting info for a delegator reward\nperiod. It tracks the previous validator period, the delegation's amount of\nstaking token, and the creation height (to check later on if any slashes have\noccurred). NOTE: Even though validators are slashed to whole staking tokens,\nthe delegators within the validator may be left with less than a full token,\nthus sdk.Dec is used.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `previous_period` | [uint64](#uint64) |  |  |\n| `stake` | [string](#string) |  |  |\n| `height` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.FeePool\"></a>\n\n### FeePool\nFeePool is the global fee pool for distribution.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `community_pool` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.Params\"></a>\n\n### Params\nParams defines the set of params for the distribution module.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `community_tax` | [string](#string) |  |  |\n| `base_proposer_reward` | [string](#string) |  |  |\n| `bonus_proposer_reward` | [string](#string) |  |  |\n| `withdraw_addr_enabled` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorAccumulatedCommission\"></a>\n\n### ValidatorAccumulatedCommission\nValidatorAccumulatedCommission represents accumulated commission\nfor a validator kept as a running counter, can be withdrawn at any time.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `commission` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorCurrentRewards\"></a>\n\n### ValidatorCurrentRewards\nValidatorCurrentRewards represents current rewards and current\nperiod for a validator kept as a running counter and incremented\neach block as long as the validator's tokens remain constant.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `rewards` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated |  |\n| `period` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorHistoricalRewards\"></a>\n\n### ValidatorHistoricalRewards\nValidatorHistoricalRewards represents historical rewards for a validator.\nHeight is implicit within the store key.\nCumulative reward ratio is the sum from the zeroeth period\nuntil this period of rewards / tokens, per the spec.\nThe reference count indicates the number of objects\nwhich might need to reference this historical entry at any point.\nReferenceCount =\n   number of outstanding delegations which ended the associated period (and\n   might need to read that record)\n + number of slashes which ended the associated period (and might need to\n read that record)\n + one per validator for the zeroeth period, set on initialization\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `cumulative_reward_ratio` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated |  |\n| `reference_count` | [uint32](#uint32) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorOutstandingRewards\"></a>\n\n### ValidatorOutstandingRewards\nValidatorOutstandingRewards represents outstanding (un-withdrawn) rewards\nfor a validator inexpensive to track, allows simple sanity checks.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `rewards` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorSlashEvent\"></a>\n\n### ValidatorSlashEvent\nValidatorSlashEvent represents a validator slash event.\nHeight is implicit within the store key.\nThis is needed to calculate appropriate amount of staking tokens\nfor delegations which are withdrawn after a slash has occurred.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_period` | [uint64](#uint64) |  |  |\n| `fraction` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorSlashEvents\"></a>\n\n### ValidatorSlashEvents\nValidatorSlashEvents is a collection of ValidatorSlashEvent messages.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_slash_events` | [ValidatorSlashEvent](#cosmos.distribution.v1beta1.ValidatorSlashEvent) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/distribution/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/distribution/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.distribution.v1beta1.DelegatorStartingInfoRecord\"></a>\n\n### DelegatorStartingInfoRecord\nDelegatorStartingInfoRecord used for import / export via genesis json.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address is the address of the delegator. |\n| `validator_address` | [string](#string) |  | validator_address is the address of the validator. |\n| `starting_info` | [DelegatorStartingInfo](#cosmos.distribution.v1beta1.DelegatorStartingInfo) |  | starting_info defines the starting info of a delegator. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.DelegatorWithdrawInfo\"></a>\n\n### DelegatorWithdrawInfo\nDelegatorWithdrawInfo is the address for where distributions rewards are\nwithdrawn to by default this struct is only used at genesis to feed in\ndefault withdraw addresses.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address is the address of the delegator. |\n| `withdraw_address` | [string](#string) |  | withdraw_address is the address to withdraw the delegation rewards to. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the distribution module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.distribution.v1beta1.Params) |  | params defines all the paramaters of the module. |\n| `fee_pool` | [FeePool](#cosmos.distribution.v1beta1.FeePool) |  | fee_pool defines the fee pool at genesis. |\n| `delegator_withdraw_infos` | [DelegatorWithdrawInfo](#cosmos.distribution.v1beta1.DelegatorWithdrawInfo) | repeated | fee_pool defines the delegator withdraw infos at genesis. |\n| `previous_proposer` | [string](#string) |  | fee_pool defines the previous proposer at genesis. |\n| `outstanding_rewards` | [ValidatorOutstandingRewardsRecord](#cosmos.distribution.v1beta1.ValidatorOutstandingRewardsRecord) | repeated | fee_pool defines the outstanding rewards of all validators at genesis. |\n| `validator_accumulated_commissions` | [ValidatorAccumulatedCommissionRecord](#cosmos.distribution.v1beta1.ValidatorAccumulatedCommissionRecord) | repeated | fee_pool defines the accumulated commisions of all validators at genesis. |\n| `validator_historical_rewards` | [ValidatorHistoricalRewardsRecord](#cosmos.distribution.v1beta1.ValidatorHistoricalRewardsRecord) | repeated | fee_pool defines the historical rewards of all validators at genesis. |\n| `validator_current_rewards` | [ValidatorCurrentRewardsRecord](#cosmos.distribution.v1beta1.ValidatorCurrentRewardsRecord) | repeated | fee_pool defines the current rewards of all validators at genesis. |\n| `delegator_starting_infos` | [DelegatorStartingInfoRecord](#cosmos.distribution.v1beta1.DelegatorStartingInfoRecord) | repeated | fee_pool defines the delegator starting infos at genesis. |\n| `validator_slash_events` | [ValidatorSlashEventRecord](#cosmos.distribution.v1beta1.ValidatorSlashEventRecord) | repeated | fee_pool defines the validator slash events at genesis. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorAccumulatedCommissionRecord\"></a>\n\n### ValidatorAccumulatedCommissionRecord\nValidatorAccumulatedCommissionRecord is used for import / export via genesis\njson.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address is the address of the validator. |\n| `accumulated` | [ValidatorAccumulatedCommission](#cosmos.distribution.v1beta1.ValidatorAccumulatedCommission) |  | accumulated is the accumulated commission of a validator. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorCurrentRewardsRecord\"></a>\n\n### ValidatorCurrentRewardsRecord\nValidatorCurrentRewardsRecord is used for import / export via genesis json.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address is the address of the validator. |\n| `rewards` | [ValidatorCurrentRewards](#cosmos.distribution.v1beta1.ValidatorCurrentRewards) |  | rewards defines the current rewards of a validator. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorHistoricalRewardsRecord\"></a>\n\n### ValidatorHistoricalRewardsRecord\nValidatorHistoricalRewardsRecord is used for import / export via genesis\njson.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address is the address of the validator. |\n| `period` | [uint64](#uint64) |  | period defines the period the historical rewards apply to. |\n| `rewards` | [ValidatorHistoricalRewards](#cosmos.distribution.v1beta1.ValidatorHistoricalRewards) |  | rewards defines the historical rewards of a validator. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorOutstandingRewardsRecord\"></a>\n\n### ValidatorOutstandingRewardsRecord\nValidatorOutstandingRewardsRecord is used for import/export via genesis json.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address is the address of the validator. |\n| `outstanding_rewards` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated | outstanding_rewards represents the oustanding rewards of a validator. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.ValidatorSlashEventRecord\"></a>\n\n### ValidatorSlashEventRecord\nValidatorSlashEventRecord is used for import / export via genesis json.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address is the address of the validator. |\n| `height` | [uint64](#uint64) |  | height defines the block height at which the slash event occured. |\n| `period` | [uint64](#uint64) |  | period is the period of the slash event. |\n| `validator_slash_event` | [ValidatorSlashEvent](#cosmos.distribution.v1beta1.ValidatorSlashEvent) |  | validator_slash_event describes the slash event. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/distribution/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/distribution/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryCommunityPoolRequest\"></a>\n\n### QueryCommunityPoolRequest\nQueryCommunityPoolRequest is the request type for the Query/CommunityPool RPC\nmethod.\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryCommunityPoolResponse\"></a>\n\n### QueryCommunityPoolResponse\nQueryCommunityPoolResponse is the response type for the Query/CommunityPool\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated | pool defines community pool's coins. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegationRewardsRequest\"></a>\n\n### QueryDelegationRewardsRequest\nQueryDelegationRewardsRequest is the request type for the\nQuery/DelegationRewards RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address defines the delegator address to query for. |\n| `validator_address` | [string](#string) |  | validator_address defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegationRewardsResponse\"></a>\n\n### QueryDelegationRewardsResponse\nQueryDelegationRewardsResponse is the response type for the\nQuery/DelegationRewards RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `rewards` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated | rewards defines the rewards accrued by a delegation. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegationTotalRewardsRequest\"></a>\n\n### QueryDelegationTotalRewardsRequest\nQueryDelegationTotalRewardsRequest is the request type for the\nQuery/DelegationTotalRewards RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address defines the delegator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse\"></a>\n\n### QueryDelegationTotalRewardsResponse\nQueryDelegationTotalRewardsResponse is the response type for the\nQuery/DelegationTotalRewards RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `rewards` | [DelegationDelegatorReward](#cosmos.distribution.v1beta1.DelegationDelegatorReward) | repeated | rewards defines all the rewards accrued by a delegator. |\n| `total` | [cosmos.base.v1beta1.DecCoin](#cosmos.base.v1beta1.DecCoin) | repeated | total defines the sum of all the rewards. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegatorValidatorsRequest\"></a>\n\n### QueryDelegatorValidatorsRequest\nQueryDelegatorValidatorsRequest is the request type for the\nQuery/DelegatorValidators RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address defines the delegator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse\"></a>\n\n### QueryDelegatorValidatorsResponse\nQueryDelegatorValidatorsResponse is the response type for the\nQuery/DelegatorValidators RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validators` | [string](#string) | repeated | validators defines the validators a delegator is delegating for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressRequest\"></a>\n\n### QueryDelegatorWithdrawAddressRequest\nQueryDelegatorWithdrawAddressRequest is the request type for the\nQuery/DelegatorWithdrawAddress RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address defines the delegator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse\"></a>\n\n### QueryDelegatorWithdrawAddressResponse\nQueryDelegatorWithdrawAddressResponse is the response type for the\nQuery/DelegatorWithdrawAddress RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `withdraw_address` | [string](#string) |  | withdraw_address defines the delegator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is the request type for the Query/Params RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is the response type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.distribution.v1beta1.Params) |  | params defines the parameters of the module. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryValidatorCommissionRequest\"></a>\n\n### QueryValidatorCommissionRequest\nQueryValidatorCommissionRequest is the request type for the\nQuery/ValidatorCommission RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryValidatorCommissionResponse\"></a>\n\n### QueryValidatorCommissionResponse\nQueryValidatorCommissionResponse is the response type for the\nQuery/ValidatorCommission RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `commission` | [ValidatorAccumulatedCommission](#cosmos.distribution.v1beta1.ValidatorAccumulatedCommission) |  | commission defines the commision the validator received. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsRequest\"></a>\n\n### QueryValidatorOutstandingRewardsRequest\nQueryValidatorOutstandingRewardsRequest is the request type for the\nQuery/ValidatorOutstandingRewards RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse\"></a>\n\n### QueryValidatorOutstandingRewardsResponse\nQueryValidatorOutstandingRewardsResponse is the response type for the\nQuery/ValidatorOutstandingRewards RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `rewards` | [ValidatorOutstandingRewards](#cosmos.distribution.v1beta1.ValidatorOutstandingRewards) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryValidatorSlashesRequest\"></a>\n\n### QueryValidatorSlashesRequest\nQueryValidatorSlashesRequest is the request type for the\nQuery/ValidatorSlashes RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  | validator_address defines the validator address to query for. |\n| `starting_height` | [uint64](#uint64) |  | starting_height defines the optional starting height to query the slashes. |\n| `ending_height` | [uint64](#uint64) |  | starting_height defines the optional ending height to query the slashes. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.QueryValidatorSlashesResponse\"></a>\n\n### QueryValidatorSlashesResponse\nQueryValidatorSlashesResponse is the response type for the\nQuery/ValidatorSlashes RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `slashes` | [ValidatorSlashEvent](#cosmos.distribution.v1beta1.ValidatorSlashEvent) | repeated | slashes defines the slashes the validator received. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.distribution.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service for distribution module.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Params` | [QueryParamsRequest](#cosmos.distribution.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.distribution.v1beta1.QueryParamsResponse) | Params queries params of the distribution module. | GET|/cosmos/distribution/v1beta1/params|\n| `ValidatorOutstandingRewards` | [QueryValidatorOutstandingRewardsRequest](#cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsRequest) | [QueryValidatorOutstandingRewardsResponse](#cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse) | ValidatorOutstandingRewards queries rewards of a validator address. | GET|/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards|\n| `ValidatorCommission` | [QueryValidatorCommissionRequest](#cosmos.distribution.v1beta1.QueryValidatorCommissionRequest) | [QueryValidatorCommissionResponse](#cosmos.distribution.v1beta1.QueryValidatorCommissionResponse) | ValidatorCommission queries accumulated commission for a validator. | GET|/cosmos/distribution/v1beta1/validators/{validator_address}/commission|\n| `ValidatorSlashes` | [QueryValidatorSlashesRequest](#cosmos.distribution.v1beta1.QueryValidatorSlashesRequest) | [QueryValidatorSlashesResponse](#cosmos.distribution.v1beta1.QueryValidatorSlashesResponse) | ValidatorSlashes queries slash events of a validator. | GET|/cosmos/distribution/v1beta1/validators/{validator_address}/slashes|\n| `DelegationRewards` | [QueryDelegationRewardsRequest](#cosmos.distribution.v1beta1.QueryDelegationRewardsRequest) | [QueryDelegationRewardsResponse](#cosmos.distribution.v1beta1.QueryDelegationRewardsResponse) | DelegationRewards queries the total rewards accrued by a delegation. | GET|/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}|\n| `DelegationTotalRewards` | [QueryDelegationTotalRewardsRequest](#cosmos.distribution.v1beta1.QueryDelegationTotalRewardsRequest) | [QueryDelegationTotalRewardsResponse](#cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse) | DelegationTotalRewards queries the total rewards accrued by a each validator. | GET|/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards|\n| `DelegatorValidators` | [QueryDelegatorValidatorsRequest](#cosmos.distribution.v1beta1.QueryDelegatorValidatorsRequest) | [QueryDelegatorValidatorsResponse](#cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse) | DelegatorValidators queries the validators of a delegator. | GET|/cosmos/distribution/v1beta1/delegators/{delegator_address}/validators|\n| `DelegatorWithdrawAddress` | [QueryDelegatorWithdrawAddressRequest](#cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressRequest) | [QueryDelegatorWithdrawAddressResponse](#cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse) | DelegatorWithdrawAddress queries withdraw address of a delegator. | GET|/cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address|\n| `CommunityPool` | [QueryCommunityPoolRequest](#cosmos.distribution.v1beta1.QueryCommunityPoolRequest) | [QueryCommunityPoolResponse](#cosmos.distribution.v1beta1.QueryCommunityPoolResponse) | CommunityPool queries the community pool coins. | GET|/cosmos/distribution/v1beta1/community_pool|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/distribution/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/distribution/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgFundCommunityPool\"></a>\n\n### MsgFundCommunityPool\nMsgFundCommunityPool allows an account to directly\nfund the community pool.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `depositor` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgFundCommunityPoolResponse\"></a>\n\n### MsgFundCommunityPoolResponse\nMsgFundCommunityPoolResponse defines the Msg/FundCommunityPool response type.\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgSetWithdrawAddress\"></a>\n\n### MsgSetWithdrawAddress\nMsgSetWithdrawAddress sets the withdraw address for\na delegator (or validator self-delegation).\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `withdraw_address` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgSetWithdrawAddressResponse\"></a>\n\n### MsgSetWithdrawAddressResponse\nMsgSetWithdrawAddressResponse defines the Msg/SetWithdrawAddress response type.\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward\"></a>\n\n### MsgWithdrawDelegatorReward\nMsgWithdrawDelegatorReward represents delegation withdrawal to a delegator\nfrom a single validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_address` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgWithdrawDelegatorRewardResponse\"></a>\n\n### MsgWithdrawDelegatorRewardResponse\nMsgWithdrawDelegatorRewardResponse defines the Msg/WithdrawDelegatorReward response type.\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission\"></a>\n\n### MsgWithdrawValidatorCommission\nMsgWithdrawValidatorCommission withdraws the full commission to the validator\naddress.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_address` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.distribution.v1beta1.MsgWithdrawValidatorCommissionResponse\"></a>\n\n### MsgWithdrawValidatorCommissionResponse\nMsgWithdrawValidatorCommissionResponse defines the Msg/WithdrawValidatorCommission response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.distribution.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the distribution Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `SetWithdrawAddress` | [MsgSetWithdrawAddress](#cosmos.distribution.v1beta1.MsgSetWithdrawAddress) | [MsgSetWithdrawAddressResponse](#cosmos.distribution.v1beta1.MsgSetWithdrawAddressResponse) | SetWithdrawAddress defines a method to change the withdraw address for a delegator (or validator self-delegation). | |\n| `WithdrawDelegatorReward` | [MsgWithdrawDelegatorReward](#cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward) | [MsgWithdrawDelegatorRewardResponse](#cosmos.distribution.v1beta1.MsgWithdrawDelegatorRewardResponse) | WithdrawDelegatorReward defines a method to withdraw rewards of delegator from a single validator. | |\n| `WithdrawValidatorCommission` | [MsgWithdrawValidatorCommission](#cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission) | [MsgWithdrawValidatorCommissionResponse](#cosmos.distribution.v1beta1.MsgWithdrawValidatorCommissionResponse) | WithdrawValidatorCommission defines a method to withdraw the full commission to the validator address. | |\n| `FundCommunityPool` | [MsgFundCommunityPool](#cosmos.distribution.v1beta1.MsgFundCommunityPool) | [MsgFundCommunityPoolResponse](#cosmos.distribution.v1beta1.MsgFundCommunityPoolResponse) | FundCommunityPool defines a method to allow an account to directly fund the community pool. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/evidence/v1beta1/evidence.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/evidence/v1beta1/evidence.proto\n\n\n\n<a name=\"cosmos.evidence.v1beta1.Equivocation\"></a>\n\n### Equivocation\nEquivocation implements the Evidence interface and defines evidence of double\nsigning misbehavior.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  |  |\n| `time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `power` | [int64](#int64) |  |  |\n| `consensus_address` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/evidence/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/evidence/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.evidence.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the evidence module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `evidence` | [google.protobuf.Any](#google.protobuf.Any) | repeated | evidence defines all the evidence at genesis. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/evidence/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/evidence/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.evidence.v1beta1.QueryAllEvidenceRequest\"></a>\n\n### QueryAllEvidenceRequest\nQueryEvidenceRequest is the request type for the Query/AllEvidence RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.evidence.v1beta1.QueryAllEvidenceResponse\"></a>\n\n### QueryAllEvidenceResponse\nQueryAllEvidenceResponse is the response type for the Query/AllEvidence RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `evidence` | [google.protobuf.Any](#google.protobuf.Any) | repeated | evidence returns all evidences. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.evidence.v1beta1.QueryEvidenceRequest\"></a>\n\n### QueryEvidenceRequest\nQueryEvidenceRequest is the request type for the Query/Evidence RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `evidence_hash` | [bytes](#bytes) |  | evidence_hash defines the hash of the requested evidence. |\n\n\n\n\n\n\n<a name=\"cosmos.evidence.v1beta1.QueryEvidenceResponse\"></a>\n\n### QueryEvidenceResponse\nQueryEvidenceResponse is the response type for the Query/Evidence RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `evidence` | [google.protobuf.Any](#google.protobuf.Any) |  | evidence returns the requested evidence. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.evidence.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Evidence` | [QueryEvidenceRequest](#cosmos.evidence.v1beta1.QueryEvidenceRequest) | [QueryEvidenceResponse](#cosmos.evidence.v1beta1.QueryEvidenceResponse) | Evidence queries evidence based on evidence hash. | GET|/cosmos/evidence/v1beta1/evidence/{evidence_hash}|\n| `AllEvidence` | [QueryAllEvidenceRequest](#cosmos.evidence.v1beta1.QueryAllEvidenceRequest) | [QueryAllEvidenceResponse](#cosmos.evidence.v1beta1.QueryAllEvidenceResponse) | AllEvidence queries all evidence. | GET|/cosmos/evidence/v1beta1/evidence|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/evidence/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/evidence/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.evidence.v1beta1.MsgSubmitEvidence\"></a>\n\n### MsgSubmitEvidence\nMsgSubmitEvidence represents a message that supports submitting arbitrary\nEvidence of misbehavior such as equivocation or counterfactual signing.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `submitter` | [string](#string) |  |  |\n| `evidence` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.evidence.v1beta1.MsgSubmitEvidenceResponse\"></a>\n\n### MsgSubmitEvidenceResponse\nMsgSubmitEvidenceResponse defines the Msg/SubmitEvidence response type.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `hash` | [bytes](#bytes) |  | hash defines the hash of the evidence. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.evidence.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the evidence Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `SubmitEvidence` | [MsgSubmitEvidence](#cosmos.evidence.v1beta1.MsgSubmitEvidence) | [MsgSubmitEvidenceResponse](#cosmos.evidence.v1beta1.MsgSubmitEvidenceResponse) | SubmitEvidence submits an arbitrary Evidence of misbehavior such as equivocation or counterfactual signing. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/genutil/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/genutil/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.genutil.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the raw genesis transaction in JSON.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `gen_txs` | [bytes](#bytes) | repeated | gen_txs defines the genesis transactions. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/gov/v1beta1/gov.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/gov/v1beta1/gov.proto\n\n\n\n<a name=\"cosmos.gov.v1beta1.Deposit\"></a>\n\n### Deposit\nDeposit defines an amount deposited by an account address to an active\nproposal.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  |  |\n| `depositor` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.DepositParams\"></a>\n\n### DepositParams\nDepositParams defines the params for deposits on governance proposals.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `min_deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | Minimum deposit for a proposal to enter voting period. |\n| `max_deposit_period` | [google.protobuf.Duration](#google.protobuf.Duration) |  | Maximum period for Atom holders to deposit on a proposal. Initial value: 2 months. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.Proposal\"></a>\n\n### Proposal\nProposal defines the core field members of a governance proposal.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  |  |\n| `content` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `status` | [ProposalStatus](#cosmos.gov.v1beta1.ProposalStatus) |  |  |\n| `final_tally_result` | [TallyResult](#cosmos.gov.v1beta1.TallyResult) |  |  |\n| `submit_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `deposit_end_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `total_deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `voting_start_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `voting_end_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.TallyParams\"></a>\n\n### TallyParams\nTallyParams defines the params for tallying votes on governance proposals.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `quorum` | [bytes](#bytes) |  | Minimum percentage of total stake needed to vote for a result to be considered valid. |\n| `threshold` | [bytes](#bytes) |  | Minimum proportion of Yes votes for proposal to pass. Default value: 0.5. |\n| `veto_threshold` | [bytes](#bytes) |  | Minimum value of Veto votes to Total votes ratio for proposal to be vetoed. Default value: 1/3. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.TallyResult\"></a>\n\n### TallyResult\nTallyResult defines a standard tally for a governance proposal.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `yes` | [string](#string) |  |  |\n| `abstain` | [string](#string) |  |  |\n| `no` | [string](#string) |  |  |\n| `no_with_veto` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.TextProposal\"></a>\n\n### TextProposal\nTextProposal defines a standard text proposal whose changes need to be\nmanually updated in case of approval.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.Vote\"></a>\n\n### Vote\nVote defines a vote on a governance proposal.\nA Vote consists of a proposal ID, the voter, and the vote option.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  |  |\n| `voter` | [string](#string) |  |  |\n| `option` | [VoteOption](#cosmos.gov.v1beta1.VoteOption) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.VotingParams\"></a>\n\n### VotingParams\nVotingParams defines the params for voting on governance proposals.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `voting_period` | [google.protobuf.Duration](#google.protobuf.Duration) |  | Length of the voting period. |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"cosmos.gov.v1beta1.ProposalStatus\"></a>\n\n### ProposalStatus\nProposalStatus enumerates the valid statuses of a proposal.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| PROPOSAL_STATUS_UNSPECIFIED | 0 | PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status. |\n| PROPOSAL_STATUS_DEPOSIT_PERIOD | 1 | PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit period. |\n| PROPOSAL_STATUS_VOTING_PERIOD | 2 | PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting period. |\n| PROPOSAL_STATUS_PASSED | 3 | PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has passed. |\n| PROPOSAL_STATUS_REJECTED | 4 | PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has been rejected. |\n| PROPOSAL_STATUS_FAILED | 5 | PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has failed. |\n\n\n\n<a name=\"cosmos.gov.v1beta1.VoteOption\"></a>\n\n### VoteOption\nVoteOption enumerates the valid vote options for a given governance proposal.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| VOTE_OPTION_UNSPECIFIED | 0 | VOTE_OPTION_UNSPECIFIED defines a no-op vote option. |\n| VOTE_OPTION_YES | 1 | VOTE_OPTION_YES defines a yes vote option. |\n| VOTE_OPTION_ABSTAIN | 2 | VOTE_OPTION_ABSTAIN defines an abstain vote option. |\n| VOTE_OPTION_NO | 3 | VOTE_OPTION_NO defines a no vote option. |\n| VOTE_OPTION_NO_WITH_VETO | 4 | VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option. |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/gov/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/gov/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.gov.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the gov module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `starting_proposal_id` | [uint64](#uint64) |  | starting_proposal_id is the ID of the starting proposal. |\n| `deposits` | [Deposit](#cosmos.gov.v1beta1.Deposit) | repeated | deposits defines all the deposits present at genesis. |\n| `votes` | [Vote](#cosmos.gov.v1beta1.Vote) | repeated | votes defines all the votes present at genesis. |\n| `proposals` | [Proposal](#cosmos.gov.v1beta1.Proposal) | repeated | proposals defines all the proposals present at genesis. |\n| `deposit_params` | [DepositParams](#cosmos.gov.v1beta1.DepositParams) |  | params defines all the paramaters of related to deposit. |\n| `voting_params` | [VotingParams](#cosmos.gov.v1beta1.VotingParams) |  | params defines all the paramaters of related to voting. |\n| `tally_params` | [TallyParams](#cosmos.gov.v1beta1.TallyParams) |  | params defines all the paramaters of related to tally. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/gov/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/gov/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryDepositRequest\"></a>\n\n### QueryDepositRequest\nQueryDepositRequest is the request type for the Query/Deposit RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  | proposal_id defines the unique id of the proposal. |\n| `depositor` | [string](#string) |  | depositor defines the deposit addresses from the proposals. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryDepositResponse\"></a>\n\n### QueryDepositResponse\nQueryDepositResponse is the response type for the Query/Deposit RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `deposit` | [Deposit](#cosmos.gov.v1beta1.Deposit) |  | deposit defines the requested deposit. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryDepositsRequest\"></a>\n\n### QueryDepositsRequest\nQueryDepositsRequest is the request type for the Query/Deposits RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  | proposal_id defines the unique id of the proposal. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryDepositsResponse\"></a>\n\n### QueryDepositsResponse\nQueryDepositsResponse is the response type for the Query/Deposits RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `deposits` | [Deposit](#cosmos.gov.v1beta1.Deposit) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is the request type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params_type` | [string](#string) |  | params_type defines which parameters to query for, can be one of \"voting\", \"tallying\" or \"deposit\". |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is the response type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `voting_params` | [VotingParams](#cosmos.gov.v1beta1.VotingParams) |  | voting_params defines the parameters related to voting. |\n| `deposit_params` | [DepositParams](#cosmos.gov.v1beta1.DepositParams) |  | deposit_params defines the parameters related to deposit. |\n| `tally_params` | [TallyParams](#cosmos.gov.v1beta1.TallyParams) |  | tally_params defines the parameters related to tally. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryProposalRequest\"></a>\n\n### QueryProposalRequest\nQueryProposalRequest is the request type for the Query/Proposal RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  | proposal_id defines the unique id of the proposal. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryProposalResponse\"></a>\n\n### QueryProposalResponse\nQueryProposalResponse is the response type for the Query/Proposal RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal` | [Proposal](#cosmos.gov.v1beta1.Proposal) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryProposalsRequest\"></a>\n\n### QueryProposalsRequest\nQueryProposalsRequest is the request type for the Query/Proposals RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_status` | [ProposalStatus](#cosmos.gov.v1beta1.ProposalStatus) |  | proposal_status defines the status of the proposals. |\n| `voter` | [string](#string) |  | voter defines the voter address for the proposals. |\n| `depositor` | [string](#string) |  | depositor defines the deposit addresses from the proposals. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryProposalsResponse\"></a>\n\n### QueryProposalsResponse\nQueryProposalsResponse is the response type for the Query/Proposals RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposals` | [Proposal](#cosmos.gov.v1beta1.Proposal) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryTallyResultRequest\"></a>\n\n### QueryTallyResultRequest\nQueryTallyResultRequest is the request type for the Query/Tally RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  | proposal_id defines the unique id of the proposal. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryTallyResultResponse\"></a>\n\n### QueryTallyResultResponse\nQueryTallyResultResponse is the response type for the Query/Tally RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `tally` | [TallyResult](#cosmos.gov.v1beta1.TallyResult) |  | tally defines the requested tally. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryVoteRequest\"></a>\n\n### QueryVoteRequest\nQueryVoteRequest is the request type for the Query/Vote RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  | proposal_id defines the unique id of the proposal. |\n| `voter` | [string](#string) |  | voter defines the oter address for the proposals. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryVoteResponse\"></a>\n\n### QueryVoteResponse\nQueryVoteResponse is the response type for the Query/Vote RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `vote` | [Vote](#cosmos.gov.v1beta1.Vote) |  | vote defined the queried vote. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryVotesRequest\"></a>\n\n### QueryVotesRequest\nQueryVotesRequest is the request type for the Query/Votes RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  | proposal_id defines the unique id of the proposal. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.QueryVotesResponse\"></a>\n\n### QueryVotesResponse\nQueryVotesResponse is the response type for the Query/Votes RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `votes` | [Vote](#cosmos.gov.v1beta1.Vote) | repeated | votes defined the queried votes. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.gov.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service for gov module\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Proposal` | [QueryProposalRequest](#cosmos.gov.v1beta1.QueryProposalRequest) | [QueryProposalResponse](#cosmos.gov.v1beta1.QueryProposalResponse) | Proposal queries proposal details based on ProposalID. | GET|/cosmos/gov/v1beta1/proposals/{proposal_id}|\n| `Proposals` | [QueryProposalsRequest](#cosmos.gov.v1beta1.QueryProposalsRequest) | [QueryProposalsResponse](#cosmos.gov.v1beta1.QueryProposalsResponse) | Proposals queries all proposals based on given status. | GET|/cosmos/gov/v1beta1/proposals|\n| `Vote` | [QueryVoteRequest](#cosmos.gov.v1beta1.QueryVoteRequest) | [QueryVoteResponse](#cosmos.gov.v1beta1.QueryVoteResponse) | Vote queries voted information based on proposalID, voterAddr. | GET|/cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}|\n| `Votes` | [QueryVotesRequest](#cosmos.gov.v1beta1.QueryVotesRequest) | [QueryVotesResponse](#cosmos.gov.v1beta1.QueryVotesResponse) | Votes queries votes of a given proposal. | GET|/cosmos/gov/v1beta1/proposals/{proposal_id}/votes|\n| `Params` | [QueryParamsRequest](#cosmos.gov.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.gov.v1beta1.QueryParamsResponse) | Params queries all parameters of the gov module. | GET|/cosmos/gov/v1beta1/params/{params_type}|\n| `Deposit` | [QueryDepositRequest](#cosmos.gov.v1beta1.QueryDepositRequest) | [QueryDepositResponse](#cosmos.gov.v1beta1.QueryDepositResponse) | Deposit queries single deposit information based proposalID, depositAddr. | GET|/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}|\n| `Deposits` | [QueryDepositsRequest](#cosmos.gov.v1beta1.QueryDepositsRequest) | [QueryDepositsResponse](#cosmos.gov.v1beta1.QueryDepositsResponse) | Deposits queries all deposits of a single proposal. | GET|/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits|\n| `TallyResult` | [QueryTallyResultRequest](#cosmos.gov.v1beta1.QueryTallyResultRequest) | [QueryTallyResultResponse](#cosmos.gov.v1beta1.QueryTallyResultResponse) | TallyResult queries the tally of a proposal vote. | GET|/cosmos/gov/v1beta1/proposals/{proposal_id}/tally|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/gov/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/gov/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.gov.v1beta1.MsgDeposit\"></a>\n\n### MsgDeposit\nMsgDeposit defines a message to submit a deposit to an existing proposal.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  |  |\n| `depositor` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.MsgDepositResponse\"></a>\n\n### MsgDepositResponse\nMsgDepositResponse defines the Msg/Deposit response type.\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.MsgSubmitProposal\"></a>\n\n### MsgSubmitProposal\nMsgSubmitProposal defines an sdk.Msg type that supports submitting arbitrary\nproposal Content.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `content` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `initial_deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `proposer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.MsgSubmitProposalResponse\"></a>\n\n### MsgSubmitProposalResponse\nMsgSubmitProposalResponse defines the Msg/SubmitProposal response type.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.MsgVote\"></a>\n\n### MsgVote\nMsgVote defines a message to cast a vote.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proposal_id` | [uint64](#uint64) |  |  |\n| `voter` | [string](#string) |  |  |\n| `option` | [VoteOption](#cosmos.gov.v1beta1.VoteOption) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.gov.v1beta1.MsgVoteResponse\"></a>\n\n### MsgVoteResponse\nMsgVoteResponse defines the Msg/Vote response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.gov.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the bank Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `SubmitProposal` | [MsgSubmitProposal](#cosmos.gov.v1beta1.MsgSubmitProposal) | [MsgSubmitProposalResponse](#cosmos.gov.v1beta1.MsgSubmitProposalResponse) | SubmitProposal defines a method to create new proposal given a content. | |\n| `Vote` | [MsgVote](#cosmos.gov.v1beta1.MsgVote) | [MsgVoteResponse](#cosmos.gov.v1beta1.MsgVoteResponse) | Vote defines a method to add a vote on a specific proposal. | |\n| `Deposit` | [MsgDeposit](#cosmos.gov.v1beta1.MsgDeposit) | [MsgDepositResponse](#cosmos.gov.v1beta1.MsgDepositResponse) | Deposit defines a method to add deposit on a specific proposal. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/params/v1beta1/params.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/params/v1beta1/params.proto\n\n\n\n<a name=\"cosmos.params.v1beta1.ParamChange\"></a>\n\n### ParamChange\nParamChange defines an individual parameter change, for use in\nParameterChangeProposal.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `subspace` | [string](#string) |  |  |\n| `key` | [string](#string) |  |  |\n| `value` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.params.v1beta1.ParameterChangeProposal\"></a>\n\n### ParameterChangeProposal\nParameterChangeProposal defines a proposal to change one or more parameters.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `changes` | [ParamChange](#cosmos.params.v1beta1.ParamChange) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/params/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/params/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.params.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is request type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `subspace` | [string](#string) |  | subspace defines the module to query the parameter for. |\n| `key` | [string](#string) |  | key defines the key of the parameter in the subspace. |\n\n\n\n\n\n\n<a name=\"cosmos.params.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is response type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `param` | [ParamChange](#cosmos.params.v1beta1.ParamChange) |  | param defines the queried parameter. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.params.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Params` | [QueryParamsRequest](#cosmos.params.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.params.v1beta1.QueryParamsResponse) | Params queries a specific parameter of a module, given its subspace and key. | GET|/cosmos/params/v1beta1/params|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/slashing/v1beta1/slashing.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/slashing/v1beta1/slashing.proto\n\n\n\n<a name=\"cosmos.slashing.v1beta1.Params\"></a>\n\n### Params\nParams represents the parameters used for by the slashing module.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signed_blocks_window` | [int64](#int64) |  |  |\n| `min_signed_per_window` | [bytes](#bytes) |  |  |\n| `downtime_jail_duration` | [google.protobuf.Duration](#google.protobuf.Duration) |  |  |\n| `slash_fraction_double_sign` | [bytes](#bytes) |  |  |\n| `slash_fraction_downtime` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.ValidatorSigningInfo\"></a>\n\n### ValidatorSigningInfo\nValidatorSigningInfo defines a validator's signing info for monitoring their\nliveness activity.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `start_height` | [int64](#int64) |  | height at which validator was first a candidate OR was unjailed |\n| `index_offset` | [int64](#int64) |  | index offset into signed block bit array |\n| `jailed_until` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | timestamp validator cannot be unjailed until |\n| `tombstoned` | [bool](#bool) |  | whether or not a validator has been tombstoned (killed out of validator set) |\n| `missed_blocks_counter` | [int64](#int64) |  | missed blocks counter (to avoid scanning the array every time) |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/slashing/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/slashing/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.slashing.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the slashing module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.slashing.v1beta1.Params) |  | params defines all the paramaters of related to deposit. |\n| `signing_infos` | [SigningInfo](#cosmos.slashing.v1beta1.SigningInfo) | repeated | signing_infos represents a map between validator addresses and their signing infos. |\n| `missed_blocks` | [ValidatorMissedBlocks](#cosmos.slashing.v1beta1.ValidatorMissedBlocks) | repeated | signing_infos represents a map between validator addresses and their missed blocks. |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.MissedBlock\"></a>\n\n### MissedBlock\nMissedBlock contains height and missed status as boolean.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `index` | [int64](#int64) |  | index is the height at which the block was missed. |\n| `missed` | [bool](#bool) |  | missed is the missed status. |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.SigningInfo\"></a>\n\n### SigningInfo\nSigningInfo stores validator signing info of corresponding address.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address is the validator address. |\n| `validator_signing_info` | [ValidatorSigningInfo](#cosmos.slashing.v1beta1.ValidatorSigningInfo) |  | validator_signing_info represents the signing info of this validator. |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.ValidatorMissedBlocks\"></a>\n\n### ValidatorMissedBlocks\nValidatorMissedBlocks contains array of missed blocks of corresponding\naddress.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address is the validator address. |\n| `missed_blocks` | [MissedBlock](#cosmos.slashing.v1beta1.MissedBlock) | repeated | missed_blocks is an array of missed blocks by the validator. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/slashing/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/slashing/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.slashing.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is the request type for the Query/Params RPC method\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is the response type for the Query/Params RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.slashing.v1beta1.Params) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.QuerySigningInfoRequest\"></a>\n\n### QuerySigningInfoRequest\nQuerySigningInfoRequest is the request type for the Query/SigningInfo RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `cons_address` | [string](#string) |  | cons_address is the address to query signing info of |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.QuerySigningInfoResponse\"></a>\n\n### QuerySigningInfoResponse\nQuerySigningInfoResponse is the response type for the Query/SigningInfo RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `val_signing_info` | [ValidatorSigningInfo](#cosmos.slashing.v1beta1.ValidatorSigningInfo) |  | val_signing_info is the signing info of requested val cons address |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.QuerySigningInfosRequest\"></a>\n\n### QuerySigningInfosRequest\nQuerySigningInfosRequest is the request type for the Query/SigningInfos RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.QuerySigningInfosResponse\"></a>\n\n### QuerySigningInfosResponse\nQuerySigningInfosResponse is the response type for the Query/SigningInfos RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `info` | [ValidatorSigningInfo](#cosmos.slashing.v1beta1.ValidatorSigningInfo) | repeated | info is the signing info of all validators |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.slashing.v1beta1.Query\"></a>\n\n### Query\nQuery provides defines the gRPC querier service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Params` | [QueryParamsRequest](#cosmos.slashing.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.slashing.v1beta1.QueryParamsResponse) | Params queries the parameters of slashing module | GET|/cosmos/slashing/v1beta1/params|\n| `SigningInfo` | [QuerySigningInfoRequest](#cosmos.slashing.v1beta1.QuerySigningInfoRequest) | [QuerySigningInfoResponse](#cosmos.slashing.v1beta1.QuerySigningInfoResponse) | SigningInfo queries the signing info of given cons address | GET|/cosmos/slashing/v1beta1/signing_infos/{cons_address}|\n| `SigningInfos` | [QuerySigningInfosRequest](#cosmos.slashing.v1beta1.QuerySigningInfosRequest) | [QuerySigningInfosResponse](#cosmos.slashing.v1beta1.QuerySigningInfosResponse) | SigningInfos queries signing info of all validators | GET|/cosmos/slashing/v1beta1/signing_infos|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/slashing/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/slashing/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.slashing.v1beta1.MsgUnjail\"></a>\n\n### MsgUnjail\nMsgUnjail defines the Msg/Unjail request type\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_addr` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.slashing.v1beta1.MsgUnjailResponse\"></a>\n\n### MsgUnjailResponse\nMsgUnjailResponse defines the Msg/Unjail response type\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.slashing.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the slashing Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Unjail` | [MsgUnjail](#cosmos.slashing.v1beta1.MsgUnjail) | [MsgUnjailResponse](#cosmos.slashing.v1beta1.MsgUnjailResponse) | Unjail defines a method for unjailing a jailed validator, thus returning them into the bonded validator set, so they can begin receiving provisions and rewards again. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/staking/v1beta1/staking.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/staking/v1beta1/staking.proto\n\n\n\n<a name=\"cosmos.staking.v1beta1.Commission\"></a>\n\n### Commission\nCommission defines commission parameters for a given validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `commission_rates` | [CommissionRates](#cosmos.staking.v1beta1.CommissionRates) |  | commission_rates defines the initial commission rates to be used for creating a validator. |\n| `update_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | update_time is the last time the commission rate was changed. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.CommissionRates\"></a>\n\n### CommissionRates\nCommissionRates defines the initial commission rates to be used for creating\na validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `rate` | [string](#string) |  | rate is the commission rate charged to delegators, as a fraction. |\n| `max_rate` | [string](#string) |  | max_rate defines the maximum commission rate which validator can ever charge, as a fraction. |\n| `max_change_rate` | [string](#string) |  | max_change_rate defines the maximum daily increase of the validator commission, as a fraction. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.DVPair\"></a>\n\n### DVPair\nDVPair is struct that just has a delegator-validator pair with no other data.\nIt is intended to be used as a marshalable pointer. For example, a DVPair can\nbe used to construct the key to getting an UnbondingDelegation from state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_address` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.DVPairs\"></a>\n\n### DVPairs\nDVPairs defines an array of DVPair objects.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pairs` | [DVPair](#cosmos.staking.v1beta1.DVPair) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.DVVTriplet\"></a>\n\n### DVVTriplet\nDVVTriplet is struct that just has a delegator-validator-validator triplet\nwith no other data. It is intended to be used as a marshalable pointer. For\nexample, a DVVTriplet can be used to construct the key to getting a\nRedelegation from state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_src_address` | [string](#string) |  |  |\n| `validator_dst_address` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.DVVTriplets\"></a>\n\n### DVVTriplets\nDVVTriplets defines an array of DVVTriplet objects.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `triplets` | [DVVTriplet](#cosmos.staking.v1beta1.DVVTriplet) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.Delegation\"></a>\n\n### Delegation\nDelegation represents the bond with tokens held by an account. It is\nowned by one delegator, and is associated with the voting power of one\nvalidator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address is the bech32-encoded address of the delegator. |\n| `validator_address` | [string](#string) |  | validator_address is the bech32-encoded address of the validator. |\n| `shares` | [string](#string) |  | shares define the delegation shares received. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.DelegationResponse\"></a>\n\n### DelegationResponse\nDelegationResponse is equivalent to Delegation except that it contains a\nbalance in addition to shares which is more suitable for client responses.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegation` | [Delegation](#cosmos.staking.v1beta1.Delegation) |  |  |\n| `balance` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.Description\"></a>\n\n### Description\nDescription defines a validator description.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `moniker` | [string](#string) |  | moniker defines a human-readable name for the validator. |\n| `identity` | [string](#string) |  | identity defines an optional identity signature (ex. UPort or Keybase). |\n| `website` | [string](#string) |  | website defines an optional website link. |\n| `security_contact` | [string](#string) |  | security_contact defines an optional email for security contact. |\n| `details` | [string](#string) |  | details define other optional details. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.HistoricalInfo\"></a>\n\n### HistoricalInfo\nHistoricalInfo contains header and validator information for a given block.\nIt is stored as part of staking module's state, which persists the `n` most\nrecent HistoricalInfo\n(`n` is set by the staking module's `historical_entries` parameter).\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `header` | [tendermint.types.Header](#tendermint.types.Header) |  |  |\n| `valset` | [Validator](#cosmos.staking.v1beta1.Validator) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.Params\"></a>\n\n### Params\nParams defines the parameters for the staking module.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `unbonding_time` | [google.protobuf.Duration](#google.protobuf.Duration) |  | unbonding_time is the time duration of unbonding. |\n| `max_validators` | [uint32](#uint32) |  | max_validators is the maximum number of validators. |\n| `max_entries` | [uint32](#uint32) |  | max_entries is the max entries for either unbonding delegation or redelegation (per pair/trio). |\n| `historical_entries` | [uint32](#uint32) |  | historical_entries is the number of historical entries to persist. |\n| `bond_denom` | [string](#string) |  | bond_denom defines the bondable coin denomination. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.Pool\"></a>\n\n### Pool\nPool is used for tracking bonded and not-bonded token supply of the bond\ndenomination.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `not_bonded_tokens` | [string](#string) |  |  |\n| `bonded_tokens` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.Redelegation\"></a>\n\n### Redelegation\nRedelegation contains the list of a particular delegator's redelegating bonds\nfrom a particular source validator to a particular destination validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address is the bech32-encoded address of the delegator. |\n| `validator_src_address` | [string](#string) |  | validator_src_address is the validator redelegation source operator address. |\n| `validator_dst_address` | [string](#string) |  | validator_dst_address is the validator redelegation destination operator address. |\n| `entries` | [RedelegationEntry](#cosmos.staking.v1beta1.RedelegationEntry) | repeated | entries are the redelegation entries.\n\nredelegation entries |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.RedelegationEntry\"></a>\n\n### RedelegationEntry\nRedelegationEntry defines a redelegation object with relevant metadata.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `creation_height` | [int64](#int64) |  | creation_height defines the height which the redelegation took place. |\n| `completion_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | completion_time defines the unix time for redelegation completion. |\n| `initial_balance` | [string](#string) |  | initial_balance defines the initial balance when redelegation started. |\n| `shares_dst` | [string](#string) |  | shares_dst is the amount of destination-validator shares created by redelegation. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.RedelegationEntryResponse\"></a>\n\n### RedelegationEntryResponse\nRedelegationEntryResponse is equivalent to a RedelegationEntry except that it\ncontains a balance in addition to shares which is more suitable for client\nresponses.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `redelegation_entry` | [RedelegationEntry](#cosmos.staking.v1beta1.RedelegationEntry) |  |  |\n| `balance` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.RedelegationResponse\"></a>\n\n### RedelegationResponse\nRedelegationResponse is equivalent to a Redelegation except that its entries\ncontain a balance in addition to shares which is more suitable for client\nresponses.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `redelegation` | [Redelegation](#cosmos.staking.v1beta1.Redelegation) |  |  |\n| `entries` | [RedelegationEntryResponse](#cosmos.staking.v1beta1.RedelegationEntryResponse) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.UnbondingDelegation\"></a>\n\n### UnbondingDelegation\nUnbondingDelegation stores all of a single delegator's unbonding bonds\nfor a single validator in an time-ordered list.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  | delegator_address is the bech32-encoded address of the delegator. |\n| `validator_address` | [string](#string) |  | validator_address is the bech32-encoded address of the validator. |\n| `entries` | [UnbondingDelegationEntry](#cosmos.staking.v1beta1.UnbondingDelegationEntry) | repeated | entries are the unbonding delegation entries.\n\nunbonding delegation entries |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.UnbondingDelegationEntry\"></a>\n\n### UnbondingDelegationEntry\nUnbondingDelegationEntry defines an unbonding object with relevant metadata.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `creation_height` | [int64](#int64) |  | creation_height is the height which the unbonding took place. |\n| `completion_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | completion_time is the unix time for unbonding completion. |\n| `initial_balance` | [string](#string) |  | initial_balance defines the tokens initially scheduled to receive at completion. |\n| `balance` | [string](#string) |  | balance defines the tokens to receive at completion. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.ValAddresses\"></a>\n\n### ValAddresses\nValAddresses defines a repeated set of validator addresses.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `addresses` | [string](#string) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.Validator\"></a>\n\n### Validator\nValidator defines a validator, together with the total amount of the\nValidator's bond shares and their exchange rate to coins. Slashing results in\na decrease in the exchange rate, allowing correct calculation of future\nundelegations without iterating over delegators. When coins are delegated to\nthis validator, the validator is credited with a delegation whose number of\nbond shares is based on the amount of coins delegated divided by the current\nexchange rate. Voting power can be calculated as total bonded shares\nmultiplied by exchange rate.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `operator_address` | [string](#string) |  | operator_address defines the address of the validator's operator; bech encoded in JSON. |\n| `consensus_pubkey` | [google.protobuf.Any](#google.protobuf.Any) |  | consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. |\n| `jailed` | [bool](#bool) |  | jailed defined whether the validator has been jailed from bonded status or not. |\n| `status` | [BondStatus](#cosmos.staking.v1beta1.BondStatus) |  | status is the validator status (bonded/unbonding/unbonded). |\n| `tokens` | [string](#string) |  | tokens define the delegated tokens (incl. self-delegation). |\n| `delegator_shares` | [string](#string) |  | delegator_shares defines total shares issued to a validator's delegators. |\n| `description` | [Description](#cosmos.staking.v1beta1.Description) |  | description defines the description terms for the validator. |\n| `unbonding_height` | [int64](#int64) |  | unbonding_height defines, if unbonding, the height at which this validator has begun unbonding. |\n| `unbonding_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | unbonding_time defines, if unbonding, the min time for the validator to complete unbonding. |\n| `commission` | [Commission](#cosmos.staking.v1beta1.Commission) |  | commission defines the commission parameters. |\n| `min_self_delegation` | [string](#string) |  | min_self_delegation is the validator's self declared minimum self delegation. |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"cosmos.staking.v1beta1.BondStatus\"></a>\n\n### BondStatus\nBondStatus is the status of a validator.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| BOND_STATUS_UNSPECIFIED | 0 | UNSPECIFIED defines an invalid validator status. |\n| BOND_STATUS_UNBONDED | 1 | UNBONDED defines a validator that is not bonded. |\n| BOND_STATUS_UNBONDING | 2 | UNBONDING defines a validator that is unbonding. |\n| BOND_STATUS_BONDED | 3 | BONDED defines a validator that is bonded. |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/staking/v1beta1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/staking/v1beta1/genesis.proto\n\n\n\n<a name=\"cosmos.staking.v1beta1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the staking module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.staking.v1beta1.Params) |  | params defines all the paramaters of related to deposit. |\n| `last_total_power` | [bytes](#bytes) |  | last_total_power tracks the total amounts of bonded tokens recorded during the previous end block. |\n| `last_validator_powers` | [LastValidatorPower](#cosmos.staking.v1beta1.LastValidatorPower) | repeated | last_validator_powers is a special index that provides a historical list of the last-block's bonded validators. |\n| `validators` | [Validator](#cosmos.staking.v1beta1.Validator) | repeated | delegations defines the validator set at genesis. |\n| `delegations` | [Delegation](#cosmos.staking.v1beta1.Delegation) | repeated | delegations defines the delegations active at genesis. |\n| `unbonding_delegations` | [UnbondingDelegation](#cosmos.staking.v1beta1.UnbondingDelegation) | repeated | unbonding_delegations defines the unbonding delegations active at genesis. |\n| `redelegations` | [Redelegation](#cosmos.staking.v1beta1.Redelegation) | repeated | redelegations defines the redelegations active at genesis. |\n| `exported` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.LastValidatorPower\"></a>\n\n### LastValidatorPower\nLastValidatorPower required for validator set update logic.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  | address is the address of the validator. |\n| `power` | [int64](#int64) |  | power defines the power of the validator. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/staking/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/staking/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegationRequest\"></a>\n\n### QueryDelegationRequest\nQueryDelegationRequest is request type for the Query/Delegation RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `validator_addr` | [string](#string) |  | validator_addr defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegationResponse\"></a>\n\n### QueryDelegationResponse\nQueryDelegationResponse is response type for the Query/Delegation RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegation_response` | [DelegationResponse](#cosmos.staking.v1beta1.DelegationResponse) |  | delegation_responses defines the delegation info of a delegation. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorDelegationsRequest\"></a>\n\n### QueryDelegatorDelegationsRequest\nQueryDelegatorDelegationsRequest is request type for the\nQuery/DelegatorDelegations RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse\"></a>\n\n### QueryDelegatorDelegationsResponse\nQueryDelegatorDelegationsResponse is response type for the\nQuery/DelegatorDelegations RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegation_responses` | [DelegationResponse](#cosmos.staking.v1beta1.DelegationResponse) | repeated | delegation_responses defines all the delegations' info of a delegator. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsRequest\"></a>\n\n### QueryDelegatorUnbondingDelegationsRequest\nQueryDelegatorUnbondingDelegationsRequest is request type for the\nQuery/DelegatorUnbondingDelegations RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse\"></a>\n\n### QueryDelegatorUnbondingDelegationsResponse\nQueryUnbondingDelegatorDelegationsResponse is response type for the\nQuery/UnbondingDelegatorDelegations RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `unbonding_responses` | [UnbondingDelegation](#cosmos.staking.v1beta1.UnbondingDelegation) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorValidatorRequest\"></a>\n\n### QueryDelegatorValidatorRequest\nQueryDelegatorValidatorRequest is request type for the\nQuery/DelegatorValidator RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `validator_addr` | [string](#string) |  | validator_addr defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorValidatorResponse\"></a>\n\n### QueryDelegatorValidatorResponse\nQueryDelegatorValidatorResponse response type for the\nQuery/DelegatorValidator RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator` | [Validator](#cosmos.staking.v1beta1.Validator) |  | validator defines the the validator info. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorValidatorsRequest\"></a>\n\n### QueryDelegatorValidatorsRequest\nQueryDelegatorValidatorsRequest is request type for the\nQuery/DelegatorValidators RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse\"></a>\n\n### QueryDelegatorValidatorsResponse\nQueryDelegatorValidatorsResponse is response type for the\nQuery/DelegatorValidators RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validators` | [Validator](#cosmos.staking.v1beta1.Validator) | repeated | validators defines the the validators' info of a delegator. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryHistoricalInfoRequest\"></a>\n\n### QueryHistoricalInfoRequest\nQueryHistoricalInfoRequest is request type for the Query/HistoricalInfo RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  | height defines at which height to query the historical info. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryHistoricalInfoResponse\"></a>\n\n### QueryHistoricalInfoResponse\nQueryHistoricalInfoResponse is response type for the Query/HistoricalInfo RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `hist` | [HistoricalInfo](#cosmos.staking.v1beta1.HistoricalInfo) |  | hist defines the historical info at the given height. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is request type for the Query/Params RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is response type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#cosmos.staking.v1beta1.Params) |  | params holds all the parameters of this module. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryPoolRequest\"></a>\n\n### QueryPoolRequest\nQueryPoolRequest is request type for the Query/Pool RPC method.\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryPoolResponse\"></a>\n\n### QueryPoolResponse\nQueryPoolResponse is response type for the Query/Pool RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool` | [Pool](#cosmos.staking.v1beta1.Pool) |  | pool defines the pool info. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryRedelegationsRequest\"></a>\n\n### QueryRedelegationsRequest\nQueryRedelegationsRequest is request type for the Query/Redelegations RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `src_validator_addr` | [string](#string) |  | src_validator_addr defines the validator address to redelegate from. |\n| `dst_validator_addr` | [string](#string) |  | dst_validator_addr defines the validator address to redelegate to. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryRedelegationsResponse\"></a>\n\n### QueryRedelegationsResponse\nQueryRedelegationsResponse is response type for the Query/Redelegations RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `redelegation_responses` | [RedelegationResponse](#cosmos.staking.v1beta1.RedelegationResponse) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryUnbondingDelegationRequest\"></a>\n\n### QueryUnbondingDelegationRequest\nQueryUnbondingDelegationRequest is request type for the\nQuery/UnbondingDelegation RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_addr` | [string](#string) |  | delegator_addr defines the delegator address to query for. |\n| `validator_addr` | [string](#string) |  | validator_addr defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryUnbondingDelegationResponse\"></a>\n\n### QueryUnbondingDelegationResponse\nQueryDelegationResponse is response type for the Query/UnbondingDelegation\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `unbond` | [UnbondingDelegation](#cosmos.staking.v1beta1.UnbondingDelegation) |  | unbond defines the unbonding information of a delegation. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorDelegationsRequest\"></a>\n\n### QueryValidatorDelegationsRequest\nQueryValidatorDelegationsRequest is request type for the\nQuery/ValidatorDelegations RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_addr` | [string](#string) |  | validator_addr defines the validator address to query for. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorDelegationsResponse\"></a>\n\n### QueryValidatorDelegationsResponse\nQueryValidatorDelegationsResponse is response type for the\nQuery/ValidatorDelegations RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegation_responses` | [DelegationResponse](#cosmos.staking.v1beta1.DelegationResponse) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorRequest\"></a>\n\n### QueryValidatorRequest\nQueryValidatorRequest is response type for the Query/Validator RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_addr` | [string](#string) |  | validator_addr defines the validator address to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorResponse\"></a>\n\n### QueryValidatorResponse\nQueryValidatorResponse is response type for the Query/Validator RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator` | [Validator](#cosmos.staking.v1beta1.Validator) |  | validator defines the the validator info. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsRequest\"></a>\n\n### QueryValidatorUnbondingDelegationsRequest\nQueryValidatorUnbondingDelegationsRequest is required type for the\nQuery/ValidatorUnbondingDelegations RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validator_addr` | [string](#string) |  | validator_addr defines the validator address to query for. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse\"></a>\n\n### QueryValidatorUnbondingDelegationsResponse\nQueryValidatorUnbondingDelegationsResponse is response type for the\nQuery/ValidatorUnbondingDelegations RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `unbonding_responses` | [UnbondingDelegation](#cosmos.staking.v1beta1.UnbondingDelegation) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorsRequest\"></a>\n\n### QueryValidatorsRequest\nQueryValidatorsRequest is request type for Query/Validators RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `status` | [string](#string) |  | status enables to query for validators matching a given status. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.QueryValidatorsResponse\"></a>\n\n### QueryValidatorsResponse\nQueryValidatorsResponse is response type for the Query/Validators RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `validators` | [Validator](#cosmos.staking.v1beta1.Validator) | repeated | validators contains all the queried validators. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.staking.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Validators` | [QueryValidatorsRequest](#cosmos.staking.v1beta1.QueryValidatorsRequest) | [QueryValidatorsResponse](#cosmos.staking.v1beta1.QueryValidatorsResponse) | Validators queries all validators that match the given status. | GET|/cosmos/staking/v1beta1/validators|\n| `Validator` | [QueryValidatorRequest](#cosmos.staking.v1beta1.QueryValidatorRequest) | [QueryValidatorResponse](#cosmos.staking.v1beta1.QueryValidatorResponse) | Validator queries validator info for given validator address. | GET|/cosmos/staking/v1beta1/validators/{validator_addr}|\n| `ValidatorDelegations` | [QueryValidatorDelegationsRequest](#cosmos.staking.v1beta1.QueryValidatorDelegationsRequest) | [QueryValidatorDelegationsResponse](#cosmos.staking.v1beta1.QueryValidatorDelegationsResponse) | ValidatorDelegations queries delegate info for given validator. | GET|/cosmos/staking/v1beta1/validators/{validator_addr}/delegations|\n| `ValidatorUnbondingDelegations` | [QueryValidatorUnbondingDelegationsRequest](#cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsRequest) | [QueryValidatorUnbondingDelegationsResponse](#cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse) | ValidatorUnbondingDelegations queries unbonding delegations of a validator. | GET|/cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations|\n| `Delegation` | [QueryDelegationRequest](#cosmos.staking.v1beta1.QueryDelegationRequest) | [QueryDelegationResponse](#cosmos.staking.v1beta1.QueryDelegationResponse) | Delegation queries delegate info for given validator delegator pair. | GET|/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}|\n| `UnbondingDelegation` | [QueryUnbondingDelegationRequest](#cosmos.staking.v1beta1.QueryUnbondingDelegationRequest) | [QueryUnbondingDelegationResponse](#cosmos.staking.v1beta1.QueryUnbondingDelegationResponse) | UnbondingDelegation queries unbonding info for given validator delegator pair. | GET|/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation|\n| `DelegatorDelegations` | [QueryDelegatorDelegationsRequest](#cosmos.staking.v1beta1.QueryDelegatorDelegationsRequest) | [QueryDelegatorDelegationsResponse](#cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse) | DelegatorDelegations queries all delegations of a given delegator address. | GET|/cosmos/staking/v1beta1/delegations/{delegator_addr}|\n| `DelegatorUnbondingDelegations` | [QueryDelegatorUnbondingDelegationsRequest](#cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsRequest) | [QueryDelegatorUnbondingDelegationsResponse](#cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse) | DelegatorUnbondingDelegations queries all unbonding delegations of a given delegator address. | GET|/cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations|\n| `Redelegations` | [QueryRedelegationsRequest](#cosmos.staking.v1beta1.QueryRedelegationsRequest) | [QueryRedelegationsResponse](#cosmos.staking.v1beta1.QueryRedelegationsResponse) | Redelegations queries redelegations of given address. | GET|/cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations|\n| `DelegatorValidators` | [QueryDelegatorValidatorsRequest](#cosmos.staking.v1beta1.QueryDelegatorValidatorsRequest) | [QueryDelegatorValidatorsResponse](#cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse) | DelegatorValidators queries all validators info for given delegator address. | GET|/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators|\n| `DelegatorValidator` | [QueryDelegatorValidatorRequest](#cosmos.staking.v1beta1.QueryDelegatorValidatorRequest) | [QueryDelegatorValidatorResponse](#cosmos.staking.v1beta1.QueryDelegatorValidatorResponse) | DelegatorValidator queries validator info for given delegator validator pair. | GET|/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}|\n| `HistoricalInfo` | [QueryHistoricalInfoRequest](#cosmos.staking.v1beta1.QueryHistoricalInfoRequest) | [QueryHistoricalInfoResponse](#cosmos.staking.v1beta1.QueryHistoricalInfoResponse) | HistoricalInfo queries the historical info for given height. | GET|/cosmos/staking/v1beta1/historical_info/{height}|\n| `Pool` | [QueryPoolRequest](#cosmos.staking.v1beta1.QueryPoolRequest) | [QueryPoolResponse](#cosmos.staking.v1beta1.QueryPoolResponse) | Pool queries the pool info. | GET|/cosmos/staking/v1beta1/pool|\n| `Params` | [QueryParamsRequest](#cosmos.staking.v1beta1.QueryParamsRequest) | [QueryParamsResponse](#cosmos.staking.v1beta1.QueryParamsResponse) | Parameters queries the staking parameters. | GET|/cosmos/staking/v1beta1/params|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/staking/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/staking/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgBeginRedelegate\"></a>\n\n### MsgBeginRedelegate\nMsgBeginRedelegate defines a SDK message for performing a redelegation\nof coins from a delegator and source validator to a destination validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_src_address` | [string](#string) |  |  |\n| `validator_dst_address` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgBeginRedelegateResponse\"></a>\n\n### MsgBeginRedelegateResponse\nMsgBeginRedelegateResponse defines the Msg/BeginRedelegate response type.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `completion_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgCreateValidator\"></a>\n\n### MsgCreateValidator\nMsgCreateValidator defines a SDK message for creating a new validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `description` | [Description](#cosmos.staking.v1beta1.Description) |  |  |\n| `commission` | [CommissionRates](#cosmos.staking.v1beta1.CommissionRates) |  |  |\n| `min_self_delegation` | [string](#string) |  |  |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_address` | [string](#string) |  |  |\n| `pubkey` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `value` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgCreateValidatorResponse\"></a>\n\n### MsgCreateValidatorResponse\nMsgCreateValidatorResponse defines the Msg/CreateValidator response type.\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgDelegate\"></a>\n\n### MsgDelegate\nMsgDelegate defines a SDK message for performing a delegation of coins\nfrom a delegator to a validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_address` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgDelegateResponse\"></a>\n\n### MsgDelegateResponse\nMsgDelegateResponse defines the Msg/Delegate response type.\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgEditValidator\"></a>\n\n### MsgEditValidator\nMsgEditValidator defines a SDK message for editing an existing validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `description` | [Description](#cosmos.staking.v1beta1.Description) |  |  |\n| `validator_address` | [string](#string) |  |  |\n| `commission_rate` | [string](#string) |  | We pass a reference to the new commission rate and min self delegation as it's not mandatory to update. If not updated, the deserialized rate will be zero with no way to distinguish if an update was intended. REF: #2373 |\n| `min_self_delegation` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgEditValidatorResponse\"></a>\n\n### MsgEditValidatorResponse\nMsgEditValidatorResponse defines the Msg/EditValidator response type.\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgUndelegate\"></a>\n\n### MsgUndelegate\nMsgUndelegate defines a SDK message for performing an undelegation from a\ndelegate and a validator.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `delegator_address` | [string](#string) |  |  |\n| `validator_address` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.staking.v1beta1.MsgUndelegateResponse\"></a>\n\n### MsgUndelegateResponse\nMsgUndelegateResponse defines the Msg/Undelegate response type.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `completion_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.staking.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the staking Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreateValidator` | [MsgCreateValidator](#cosmos.staking.v1beta1.MsgCreateValidator) | [MsgCreateValidatorResponse](#cosmos.staking.v1beta1.MsgCreateValidatorResponse) | CreateValidator defines a method for creating a new validator. | |\n| `EditValidator` | [MsgEditValidator](#cosmos.staking.v1beta1.MsgEditValidator) | [MsgEditValidatorResponse](#cosmos.staking.v1beta1.MsgEditValidatorResponse) | EditValidator defines a method for editing an existing validator. | |\n| `Delegate` | [MsgDelegate](#cosmos.staking.v1beta1.MsgDelegate) | [MsgDelegateResponse](#cosmos.staking.v1beta1.MsgDelegateResponse) | Delegate defines a method for performing a delegation of coins from a delegator to a validator. | |\n| `BeginRedelegate` | [MsgBeginRedelegate](#cosmos.staking.v1beta1.MsgBeginRedelegate) | [MsgBeginRedelegateResponse](#cosmos.staking.v1beta1.MsgBeginRedelegateResponse) | BeginRedelegate defines a method for performing a redelegation of coins from a delegator and source validator to a destination validator. | |\n| `Undelegate` | [MsgUndelegate](#cosmos.staking.v1beta1.MsgUndelegate) | [MsgUndelegateResponse](#cosmos.staking.v1beta1.MsgUndelegateResponse) | Undelegate defines a method for performing an undelegation from a delegate and a validator. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/tx/signing/v1beta1/signing.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/tx/signing/v1beta1/signing.proto\n\n\n\n<a name=\"cosmos.tx.signing.v1beta1.SignatureDescriptor\"></a>\n\n### SignatureDescriptor\nSignatureDescriptor is a convenience type which represents the full data for\na signature including the public key of the signer, signing modes and the\nsignature itself. It is primarily used for coordinating signatures between\nclients.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `public_key` | [google.protobuf.Any](#google.protobuf.Any) |  | public_key is the public key of the signer |\n| `data` | [SignatureDescriptor.Data](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data) |  |  |\n| `sequence` | [uint64](#uint64) |  | sequence is the sequence of the account, which describes the number of committed transactions signed by a given address. It is used to prevent replay attacks. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.signing.v1beta1.SignatureDescriptor.Data\"></a>\n\n### SignatureDescriptor.Data\nData represents signature data\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `single` | [SignatureDescriptor.Data.Single](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Single) |  | single represents a single signer |\n| `multi` | [SignatureDescriptor.Data.Multi](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Multi) |  | multi represents a multisig signer |\n\n\n\n\n\n\n<a name=\"cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Multi\"></a>\n\n### SignatureDescriptor.Data.Multi\nMulti is the signature data for a multisig public key\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `bitarray` | [cosmos.crypto.multisig.v1beta1.CompactBitArray](#cosmos.crypto.multisig.v1beta1.CompactBitArray) |  | bitarray specifies which keys within the multisig are signing |\n| `signatures` | [SignatureDescriptor.Data](#cosmos.tx.signing.v1beta1.SignatureDescriptor.Data) | repeated | signatures is the signatures of the multi-signature |\n\n\n\n\n\n\n<a name=\"cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Single\"></a>\n\n### SignatureDescriptor.Data.Single\nSingle is the signature data for a single signer\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `mode` | [SignMode](#cosmos.tx.signing.v1beta1.SignMode) |  | mode is the signing mode of the single signer |\n| `signature` | [bytes](#bytes) |  | signature is the raw signature bytes |\n\n\n\n\n\n\n<a name=\"cosmos.tx.signing.v1beta1.SignatureDescriptors\"></a>\n\n### SignatureDescriptors\nSignatureDescriptors wraps multiple SignatureDescriptor's.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signatures` | [SignatureDescriptor](#cosmos.tx.signing.v1beta1.SignatureDescriptor) | repeated | signatures are the signature descriptors |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"cosmos.tx.signing.v1beta1.SignMode\"></a>\n\n### SignMode\nSignMode represents a signing mode with its own security guarantees.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| SIGN_MODE_UNSPECIFIED | 0 | SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be rejected |\n| SIGN_MODE_DIRECT | 1 | SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is verified with raw bytes from Tx |\n| SIGN_MODE_TEXTUAL | 2 | SIGN_MODE_TEXTUAL is a future signing mode that will verify some human-readable textual representation on top of the binary representation from SIGN_MODE_DIRECT |\n| SIGN_MODE_LEGACY_AMINO_JSON | 127 | SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses Amino JSON and will be removed in the future |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/tx/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/tx/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.tx.v1beta1.AuthInfo\"></a>\n\n### AuthInfo\nAuthInfo describes the fee and signer modes that are used to sign a\ntransaction.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signer_infos` | [SignerInfo](#cosmos.tx.v1beta1.SignerInfo) | repeated | signer_infos defines the signing modes for the required signers. The number and order of elements must match the required signers from TxBody's messages. The first element is the primary signer and the one which pays the fee. |\n| `fee` | [Fee](#cosmos.tx.v1beta1.Fee) |  | Fee is the fee and gas limit for the transaction. The first signer is the primary signer and the one which pays the fee. The fee can be calculated based on the cost of evaluating the body and doing signature verification of the signers. This can be estimated via simulation. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.Fee\"></a>\n\n### Fee\nFee includes the amount of coins paid in fees and the maximum\ngas to be used by the transaction. The ratio yields an effective \"gasprice\",\nwhich must be above some miminum to be accepted into the mempool.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the amount of coins to be paid as a fee |\n| `gas_limit` | [uint64](#uint64) |  | gas_limit is the maximum gas that can be used in transaction processing before an out of gas error occurs |\n| `payer` | [string](#string) |  | if unset, the first signer is responsible for paying the fees. If set, the specified account must pay the fees. the payer must be a tx signer (and thus have signed this field in AuthInfo). setting this field does *not* change the ordering of required signers for the transaction. |\n| `granter` | [string](#string) |  | if set, the fee payer (either the first signer or the value of the payer field) requests that a fee grant be used to pay fees instead of the fee payer's own balance. If an appropriate fee grant does not exist or the chain does not support fee grants, this will fail |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.ModeInfo\"></a>\n\n### ModeInfo\nModeInfo describes the signing mode of a single or nested multisig signer.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `single` | [ModeInfo.Single](#cosmos.tx.v1beta1.ModeInfo.Single) |  | single represents a single signer |\n| `multi` | [ModeInfo.Multi](#cosmos.tx.v1beta1.ModeInfo.Multi) |  | multi represents a nested multisig signer |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.ModeInfo.Multi\"></a>\n\n### ModeInfo.Multi\nMulti is the mode info for a multisig public key\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `bitarray` | [cosmos.crypto.multisig.v1beta1.CompactBitArray](#cosmos.crypto.multisig.v1beta1.CompactBitArray) |  | bitarray specifies which keys within the multisig are signing |\n| `mode_infos` | [ModeInfo](#cosmos.tx.v1beta1.ModeInfo) | repeated | mode_infos is the corresponding modes of the signers of the multisig which could include nested multisig public keys |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.ModeInfo.Single\"></a>\n\n### ModeInfo.Single\nSingle is the mode info for a single signer. It is structured as a message\nto allow for additional fields such as locale for SIGN_MODE_TEXTUAL in the\nfuture\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `mode` | [cosmos.tx.signing.v1beta1.SignMode](#cosmos.tx.signing.v1beta1.SignMode) |  | mode is the signing mode of the single signer |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.SignDoc\"></a>\n\n### SignDoc\nSignDoc is the type used for generating sign bytes for SIGN_MODE_DIRECT.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `body_bytes` | [bytes](#bytes) |  | body_bytes is protobuf serialization of a TxBody that matches the representation in TxRaw. |\n| `auth_info_bytes` | [bytes](#bytes) |  | auth_info_bytes is a protobuf serialization of an AuthInfo that matches the representation in TxRaw. |\n| `chain_id` | [string](#string) |  | chain_id is the unique identifier of the chain this transaction targets. It prevents signed transactions from being used on another chain by an attacker |\n| `account_number` | [uint64](#uint64) |  | account_number is the account number of the account in state |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.SignerInfo\"></a>\n\n### SignerInfo\nSignerInfo describes the public key and signing mode of a single top-level\nsigner.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `public_key` | [google.protobuf.Any](#google.protobuf.Any) |  | public_key is the public key of the signer. It is optional for accounts that already exist in state. If unset, the verifier can use the required \\ signer address for this position and lookup the public key. |\n| `mode_info` | [ModeInfo](#cosmos.tx.v1beta1.ModeInfo) |  | mode_info describes the signing mode of the signer and is a nested structure to support nested multisig pubkey's |\n| `sequence` | [uint64](#uint64) |  | sequence is the sequence of the account, which describes the number of committed transactions signed by a given address. It is used to prevent replay attacks. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.Tx\"></a>\n\n### Tx\nTx is the standard type used for broadcasting transactions.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `body` | [TxBody](#cosmos.tx.v1beta1.TxBody) |  | body is the processable content of the transaction |\n| `auth_info` | [AuthInfo](#cosmos.tx.v1beta1.AuthInfo) |  | auth_info is the authorization related content of the transaction, specifically signers, signer modes and fee |\n| `signatures` | [bytes](#bytes) | repeated | signatures is a list of signatures that matches the length and order of AuthInfo's signer_infos to allow connecting signature meta information like public key and signing mode by position. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.TxBody\"></a>\n\n### TxBody\nTxBody is the body of a transaction that all signers sign over.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `messages` | [google.protobuf.Any](#google.protobuf.Any) | repeated | messages is a list of messages to be executed. The required signers of those messages define the number and order of elements in AuthInfo's signer_infos and Tx's signatures. Each required signer address is added to the list only the first time it occurs. By convention, the first required signer (usually from the first message) is referred to as the primary signer and pays the fee for the whole transaction. |\n| `memo` | [string](#string) |  | memo is any arbitrary memo to be added to the transaction |\n| `timeout_height` | [uint64](#uint64) |  | timeout is the block height after which this transaction will not be processed by the chain |\n| `extension_options` | [google.protobuf.Any](#google.protobuf.Any) | repeated | extension_options are arbitrary options that can be added by chains when the default options are not sufficient. If any of these are present and can't be handled, the transaction will be rejected |\n| `non_critical_extension_options` | [google.protobuf.Any](#google.protobuf.Any) | repeated | extension_options are arbitrary options that can be added by chains when the default options are not sufficient. If any of these are present and can't be handled, they will be ignored |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.TxRaw\"></a>\n\n### TxRaw\nTxRaw is a variant of Tx that pins the signer's exact binary representation\nof body and auth_info. This is used for signing, broadcasting and\nverification. The binary `serialize(tx: TxRaw)` is stored in Tendermint and\nthe hash `sha256(serialize(tx: TxRaw))` becomes the \"txhash\", commonly used\nas the transaction ID.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `body_bytes` | [bytes](#bytes) |  | body_bytes is a protobuf serialization of a TxBody that matches the representation in SignDoc. |\n| `auth_info_bytes` | [bytes](#bytes) |  | auth_info_bytes is a protobuf serialization of an AuthInfo that matches the representation in SignDoc. |\n| `signatures` | [bytes](#bytes) | repeated | signatures is a list of signatures that matches the length and order of AuthInfo's signer_infos to allow connecting signature meta information like public key and signing mode by position. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/tx/v1beta1/service.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/tx/v1beta1/service.proto\n\n\n\n<a name=\"cosmos.tx.v1beta1.BroadcastTxRequest\"></a>\n\n### BroadcastTxRequest\nBroadcastTxRequest is the request type for the Service.BroadcastTxRequest\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `tx_bytes` | [bytes](#bytes) |  | tx_bytes is the raw transaction. |\n| `mode` | [BroadcastMode](#cosmos.tx.v1beta1.BroadcastMode) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.BroadcastTxResponse\"></a>\n\n### BroadcastTxResponse\nBroadcastTxResponse is the response type for the\nService.BroadcastTx method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `tx_response` | [cosmos.base.abci.v1beta1.TxResponse](#cosmos.base.abci.v1beta1.TxResponse) |  | tx_response is the queried TxResponses. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.GetTxRequest\"></a>\n\n### GetTxRequest\nGetTxRequest is the request type for the Service.GetTx\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `hash` | [string](#string) |  | hash is the tx hash to query, encoded as a hex string. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.GetTxResponse\"></a>\n\n### GetTxResponse\nGetTxResponse is the response type for the Service.GetTx method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `tx` | [Tx](#cosmos.tx.v1beta1.Tx) |  | tx is the queried transaction. |\n| `tx_response` | [cosmos.base.abci.v1beta1.TxResponse](#cosmos.base.abci.v1beta1.TxResponse) |  | tx_response is the queried TxResponses. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.GetTxsEventRequest\"></a>\n\n### GetTxsEventRequest\nGetTxsEventRequest is the request type for the Service.TxsByEvents\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `events` | [string](#string) | repeated | events is the list of transaction event type. |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an pagination for the request. |\n| `order_by` | [OrderBy](#cosmos.tx.v1beta1.OrderBy) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.GetTxsEventResponse\"></a>\n\n### GetTxsEventResponse\nGetTxsEventResponse is the response type for the Service.TxsByEvents\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `txs` | [Tx](#cosmos.tx.v1beta1.Tx) | repeated | txs is the list of queried transactions. |\n| `tx_responses` | [cosmos.base.abci.v1beta1.TxResponse](#cosmos.base.abci.v1beta1.TxResponse) | repeated | tx_responses is the list of queried TxResponses. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines an pagination for the response. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.SimulateRequest\"></a>\n\n### SimulateRequest\nSimulateRequest is the request type for the Service.Simulate\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `tx` | [Tx](#cosmos.tx.v1beta1.Tx) |  | tx is the transaction to simulate. |\n\n\n\n\n\n\n<a name=\"cosmos.tx.v1beta1.SimulateResponse\"></a>\n\n### SimulateResponse\nSimulateResponse is the response type for the\nService.SimulateRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `gas_info` | [cosmos.base.abci.v1beta1.GasInfo](#cosmos.base.abci.v1beta1.GasInfo) |  | gas_info is the information about gas used in the simulation. |\n| `result` | [cosmos.base.abci.v1beta1.Result](#cosmos.base.abci.v1beta1.Result) |  | result is the result of the simulation. |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"cosmos.tx.v1beta1.BroadcastMode\"></a>\n\n### BroadcastMode\nBroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC method.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| BROADCAST_MODE_UNSPECIFIED | 0 | zero-value for mode ordering |\n| BROADCAST_MODE_BLOCK | 1 | BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for the tx to be committed in a block. |\n| BROADCAST_MODE_SYNC | 2 | BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for a CheckTx execution response only. |\n| BROADCAST_MODE_ASYNC | 3 | BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns immediately. |\n\n\n\n<a name=\"cosmos.tx.v1beta1.OrderBy\"></a>\n\n### OrderBy\nOrderBy defines the sorting order\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| ORDER_BY_UNSPECIFIED | 0 | ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case. |\n| ORDER_BY_ASC | 1 | ORDER_BY_ASC defines ascending order |\n| ORDER_BY_DESC | 2 | ORDER_BY_DESC defines descending order |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.tx.v1beta1.Service\"></a>\n\n### Service\nService defines a gRPC service for interacting with transactions.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Simulate` | [SimulateRequest](#cosmos.tx.v1beta1.SimulateRequest) | [SimulateResponse](#cosmos.tx.v1beta1.SimulateResponse) | Simulate simulates executing a transaction for estimating gas usage. | POST|/cosmos/tx/v1beta1/simulate|\n| `GetTx` | [GetTxRequest](#cosmos.tx.v1beta1.GetTxRequest) | [GetTxResponse](#cosmos.tx.v1beta1.GetTxResponse) | GetTx fetches a tx by hash. | GET|/cosmos/tx/v1beta1/txs/{hash}|\n| `BroadcastTx` | [BroadcastTxRequest](#cosmos.tx.v1beta1.BroadcastTxRequest) | [BroadcastTxResponse](#cosmos.tx.v1beta1.BroadcastTxResponse) | BroadcastTx broadcast transaction. | POST|/cosmos/tx/v1beta1/txs|\n| `GetTxsEvent` | [GetTxsEventRequest](#cosmos.tx.v1beta1.GetTxsEventRequest) | [GetTxsEventResponse](#cosmos.tx.v1beta1.GetTxsEventResponse) | GetTxsEvent fetches txs by event. | GET|/cosmos/tx/v1beta1/txs|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/upgrade/v1beta1/upgrade.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/upgrade/v1beta1/upgrade.proto\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.CancelSoftwareUpgradeProposal\"></a>\n\n### CancelSoftwareUpgradeProposal\nCancelSoftwareUpgradeProposal is a gov Content type for cancelling a software\nupgrade.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.Plan\"></a>\n\n### Plan\nPlan specifies information about a planned upgrade and when it should occur.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  | Sets the name for the upgrade. This name will be used by the upgraded version of the software to apply any special \"on-upgrade\" commands during the first BeginBlock method after the upgrade is applied. It is also used to detect whether a software version can handle a given upgrade. If no upgrade handler with this name has been set in the software, it will be assumed that the software is out-of-date when the upgrade Time or Height is reached and the software will exit. |\n| `time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | The time after which the upgrade must be performed. Leave set to its zero value to use a pre-defined Height instead. |\n| `height` | [int64](#int64) |  | The height at which the upgrade must be performed. Only used if Time is not set. |\n| `info` | [string](#string) |  | Any application specific upgrade info to be included on-chain such as a git commit that validators could automatically upgrade to |\n| `upgraded_client_state` | [google.protobuf.Any](#google.protobuf.Any) |  | IBC-enabled chains can opt-in to including the upgraded client state in its upgrade plan This will make the chain commit to the correct upgraded (self) client state before the upgrade occurs, so that connecting chains can verify that the new upgraded client is valid by verifying a proof on the previous version of the chain. This will allow IBC connections to persist smoothly across planned chain upgrades |\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.SoftwareUpgradeProposal\"></a>\n\n### SoftwareUpgradeProposal\nSoftwareUpgradeProposal is a gov Content type for initiating a software\nupgrade.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `plan` | [Plan](#cosmos.upgrade.v1beta1.Plan) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/upgrade/v1beta1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/upgrade/v1beta1/query.proto\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.QueryAppliedPlanRequest\"></a>\n\n### QueryAppliedPlanRequest\nQueryCurrentPlanRequest is the request type for the Query/AppliedPlan RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  | name is the name of the applied plan to query for. |\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.QueryAppliedPlanResponse\"></a>\n\n### QueryAppliedPlanResponse\nQueryAppliedPlanResponse is the response type for the Query/AppliedPlan RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  | height is the block height at which the plan was applied. |\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.QueryCurrentPlanRequest\"></a>\n\n### QueryCurrentPlanRequest\nQueryCurrentPlanRequest is the request type for the Query/CurrentPlan RPC\nmethod.\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.QueryCurrentPlanResponse\"></a>\n\n### QueryCurrentPlanResponse\nQueryCurrentPlanResponse is the response type for the Query/CurrentPlan RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `plan` | [Plan](#cosmos.upgrade.v1beta1.Plan) |  | plan is the current upgrade plan. |\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateRequest\"></a>\n\n### QueryUpgradedConsensusStateRequest\nQueryUpgradedConsensusStateRequest is the request type for the Query/UpgradedConsensusState\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `last_height` | [int64](#int64) |  | last height of the current chain must be sent in request as this is the height under which next consensus state is stored |\n\n\n\n\n\n\n<a name=\"cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateResponse\"></a>\n\n### QueryUpgradedConsensusStateResponse\nQueryUpgradedConsensusStateResponse is the response type for the Query/UpgradedConsensusState\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `upgraded_consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.upgrade.v1beta1.Query\"></a>\n\n### Query\nQuery defines the gRPC upgrade querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CurrentPlan` | [QueryCurrentPlanRequest](#cosmos.upgrade.v1beta1.QueryCurrentPlanRequest) | [QueryCurrentPlanResponse](#cosmos.upgrade.v1beta1.QueryCurrentPlanResponse) | CurrentPlan queries the current upgrade plan. | GET|/cosmos/upgrade/v1beta1/current_plan|\n| `AppliedPlan` | [QueryAppliedPlanRequest](#cosmos.upgrade.v1beta1.QueryAppliedPlanRequest) | [QueryAppliedPlanResponse](#cosmos.upgrade.v1beta1.QueryAppliedPlanResponse) | AppliedPlan queries a previously applied upgrade plan by its name. | GET|/cosmos/upgrade/v1beta1/applied_plan/{name}|\n| `UpgradedConsensusState` | [QueryUpgradedConsensusStateRequest](#cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateRequest) | [QueryUpgradedConsensusStateResponse](#cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateResponse) | UpgradedConsensusState queries the consensus state that will serve as a trusted kernel for the next version of this chain. It will only be stored at the last height of this chain. UpgradedConsensusState RPC not supported with legacy querier | GET|/cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}|\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/vesting/v1beta1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/vesting/v1beta1/tx.proto\n\n\n\n<a name=\"cosmos.vesting.v1beta1.MsgCreateVestingAccount\"></a>\n\n### MsgCreateVestingAccount\nMsgCreateVestingAccount defines a message that enables creating a vesting\naccount.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `from_address` | [string](#string) |  |  |\n| `to_address` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `end_time` | [int64](#int64) |  |  |\n| `delayed` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.vesting.v1beta1.MsgCreateVestingAccountResponse\"></a>\n\n### MsgCreateVestingAccountResponse\nMsgCreateVestingAccountResponse defines the Msg/CreateVestingAccount response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"cosmos.vesting.v1beta1.Msg\"></a>\n\n### Msg\nMsg defines the bank Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreateVestingAccount` | [MsgCreateVestingAccount](#cosmos.vesting.v1beta1.MsgCreateVestingAccount) | [MsgCreateVestingAccountResponse](#cosmos.vesting.v1beta1.MsgCreateVestingAccountResponse) | CreateVestingAccount defines a method that enables creating a vesting account. | |\n\n <!-- end services -->\n\n\n\n<a name=\"cosmos/vesting/v1beta1/vesting.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## cosmos/vesting/v1beta1/vesting.proto\n\n\n\n<a name=\"cosmos.vesting.v1beta1.BaseVestingAccount\"></a>\n\n### BaseVestingAccount\nBaseVestingAccount implements the VestingAccount interface. It contains all\nthe necessary fields needed for any vesting account implementation.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `base_account` | [cosmos.auth.v1beta1.BaseAccount](#cosmos.auth.v1beta1.BaseAccount) |  |  |\n| `original_vesting` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `delegated_free` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `delegated_vesting` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `end_time` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.vesting.v1beta1.ContinuousVestingAccount\"></a>\n\n### ContinuousVestingAccount\nContinuousVestingAccount implements the VestingAccount interface. It\ncontinuously vests by unlocking coins linearly with respect to time.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `base_vesting_account` | [BaseVestingAccount](#cosmos.vesting.v1beta1.BaseVestingAccount) |  |  |\n| `start_time` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.vesting.v1beta1.DelayedVestingAccount\"></a>\n\n### DelayedVestingAccount\nDelayedVestingAccount implements the VestingAccount interface. It vests all\ncoins after a specific time, but non prior. In other words, it keeps them\nlocked until a specified time.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `base_vesting_account` | [BaseVestingAccount](#cosmos.vesting.v1beta1.BaseVestingAccount) |  |  |\n\n\n\n\n\n\n<a name=\"cosmos.vesting.v1beta1.Period\"></a>\n\n### Period\nPeriod defines a length of time and amount of coins that will vest.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `length` | [int64](#int64) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"cosmos.vesting.v1beta1.PeriodicVestingAccount\"></a>\n\n### PeriodicVestingAccount\nPeriodicVestingAccount implements the VestingAccount interface. It\nperiodically vests by unlocking coins during each specified period.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `base_vesting_account` | [BaseVestingAccount](#cosmos.vesting.v1beta1.BaseVestingAccount) |  |  |\n| `start_time` | [int64](#int64) |  |  |\n| `vesting_periods` | [Period](#cosmos.vesting.v1beta1.Period) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"farm/farm.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## farm/farm.proto\n\n\n\n<a name=\"irismod.farm.FarmInfo\"></a>\n\n### FarmInfo\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `address` | [string](#string) |  |  |\n| `locked` | [string](#string) |  |  |\n| `reward_debt` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.FarmPool\"></a>\n\n### FarmPool\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `start_height` | [int64](#int64) |  |  |\n| `end_height` | [int64](#int64) |  |  |\n| `last_height_distr_rewards` | [int64](#int64) |  |  |\n| `editable` | [bool](#bool) |  |  |\n| `total_lpt_locked` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `rules` | [RewardRule](#irismod.farm.RewardRule) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.Params\"></a>\n\n### Params\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `create_pool_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `max_reward_categories` | [uint32](#uint32) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.RewardRule\"></a>\n\n### RewardRule\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `reward` | [string](#string) |  |  |\n| `total_reward` | [string](#string) |  |  |\n| `remaining_reward` | [string](#string) |  |  |\n| `reward_per_block` | [string](#string) |  |  |\n| `reward_per_share` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"farm/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## farm/genesis.proto\n\n\n\n<a name=\"irismod.farm.GenesisState\"></a>\n\n### GenesisState\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.farm.Params) |  |  |\n| `pools` | [FarmPool](#irismod.farm.FarmPool) | repeated |  |\n| `farm_infos` | [FarmInfo](#irismod.farm.FarmInfo) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"farm/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## farm/query.proto\n\n\n\n<a name=\"irismod.farm.FarmPoolEntry\"></a>\n\n### FarmPoolEntry\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `start_height` | [int64](#int64) |  |  |\n| `end_height` | [int64](#int64) |  |  |\n| `editable` | [bool](#bool) |  |  |\n| `expired` | [bool](#bool) |  |  |\n| `total_lpt_locked` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `total_reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `remaining_reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `reward_per_block` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.LockedInfo\"></a>\n\n### LockedInfo\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `locked` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `pending_reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryFarmPoolRequest\"></a>\n\n### QueryFarmPoolRequest\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryFarmPoolResponse\"></a>\n\n### QueryFarmPoolResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool` | [FarmPoolEntry](#irismod.farm.FarmPoolEntry) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryFarmPoolsRequest\"></a>\n\n### QueryFarmPoolsRequest\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryFarmPoolsResponse\"></a>\n\n### QueryFarmPoolsResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pools` | [FarmPoolEntry](#irismod.farm.FarmPoolEntry) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryFarmerRequest\"></a>\n\n### QueryFarmerRequest\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `farmer` | [string](#string) |  |  |\n| `pool_name` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryFarmerResponse\"></a>\n\n### QueryFarmerResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `list` | [LockedInfo](#irismod.farm.LockedInfo) | repeated |  |\n| `height` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\n\n\n\n\n\n\n\n<a name=\"irismod.farm.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.farm.Params) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.farm.Query\"></a>\n\n### Query\n\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `FarmPools` | [QueryFarmPoolsRequest](#irismod.farm.QueryFarmPoolsRequest) | [QueryFarmPoolsResponse](#irismod.farm.QueryFarmPoolsResponse) |  | GET|/irismod/farm/pools|\n| `FarmPool` | [QueryFarmPoolRequest](#irismod.farm.QueryFarmPoolRequest) | [QueryFarmPoolResponse](#irismod.farm.QueryFarmPoolResponse) |  | GET|/irismod/farm/pool/{name}|\n| `Farmer` | [QueryFarmerRequest](#irismod.farm.QueryFarmerRequest) | [QueryFarmerResponse](#irismod.farm.QueryFarmerResponse) |  | GET|/irismod/farm/farmers/{farmer}|\n| `Params` | [QueryParamsRequest](#irismod.farm.QueryParamsRequest) | [QueryParamsResponse](#irismod.farm.QueryParamsResponse) | Params queries the htlc parameters | GET|/irismod/farm/params|\n\n <!-- end services -->\n\n\n\n<a name=\"farm/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## farm/tx.proto\n\n\n\n<a name=\"irismod.farm.MsgAdjustPool\"></a>\n\n### MsgAdjustPool\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `additional_reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `reward_per_block` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgAdjustPoolResponse\"></a>\n\n### MsgAdjustPoolResponse\n\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgCreatePool\"></a>\n\n### MsgCreatePool\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `lpt_denom` | [string](#string) |  |  |\n| `start_height` | [int64](#int64) |  |  |\n| `reward_per_block` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `total_reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `editable` | [bool](#bool) |  |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgCreatePoolResponse\"></a>\n\n### MsgCreatePoolResponse\n\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgDestroyPool\"></a>\n\n### MsgDestroyPool\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgDestroyPoolResponse\"></a>\n\n### MsgDestroyPoolResponse\n\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgHarvest\"></a>\n\n### MsgHarvest\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgHarvestResponse\"></a>\n\n### MsgHarvestResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgStake\"></a>\n\n### MsgStake\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgStakeResponse\"></a>\n\n### MsgStakeResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgUnstake\"></a>\n\n### MsgUnstake\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pool_name` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.farm.MsgUnstakeResponse\"></a>\n\n### MsgUnstakeResponse\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.farm.Msg\"></a>\n\n### Msg\nMsg defines the farm Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreatePool` | [MsgCreatePool](#irismod.farm.MsgCreatePool) | [MsgCreatePoolResponse](#irismod.farm.MsgCreatePoolResponse) | CreatePool defines a method for creating a new farm pool | |\n| `DestroyPool` | [MsgDestroyPool](#irismod.farm.MsgDestroyPool) | [MsgDestroyPoolResponse](#irismod.farm.MsgDestroyPoolResponse) | DestroyPool defines a method for destroying a existed farm pool | |\n| `AdjustPool` | [MsgAdjustPool](#irismod.farm.MsgAdjustPool) | [MsgAdjustPoolResponse](#irismod.farm.MsgAdjustPoolResponse) | AdjustPool defines a method for adjusting the farm pool params | |\n| `Stake` | [MsgStake](#irismod.farm.MsgStake) | [MsgStakeResponse](#irismod.farm.MsgStakeResponse) | Stake defines a method for staking some lp token to a farm pool | |\n| `Unstake` | [MsgUnstake](#irismod.farm.MsgUnstake) | [MsgUnstakeResponse](#irismod.farm.MsgUnstakeResponse) | Unstake defines a method for unstaking some lp token from a farm pool and withdraw some reward | |\n| `Harvest` | [MsgHarvest](#irismod.farm.MsgHarvest) | [MsgHarvestResponse](#irismod.farm.MsgHarvestResponse) | Harvest defines a method withdraw some reward from a farm pool | |\n\n <!-- end services -->\n\n\n\n<a name=\"guardian/guardian.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## guardian/guardian.proto\n\n\n\n<a name=\"irishub.guardian.Super\"></a>\n\n### Super\nSuper defines the super standard\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `description` | [string](#string) |  |  |\n| `account_type` | [AccountType](#irishub.guardian.AccountType) |  |  |\n| `address` | [string](#string) |  |  |\n| `added_by` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"irishub.guardian.AccountType\"></a>\n\n### AccountType\nAccountType defines the super account type\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| GENESIS | 0 | GENESIS defines a genesis account type |\n| ORDINARY | 1 | ORDINARY defines a ordinary account type |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"guardian/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## guardian/genesis.proto\n\n\n\n<a name=\"irishub.guardian.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the guardian module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `supers` | [Super](#irishub.guardian.Super) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"guardian/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## guardian/query.proto\n\n\n\n<a name=\"irishub.guardian.QuerySupersRequest\"></a>\n\n### QuerySupersRequest\nQuerySupersRequest is request type for the Query/Supers RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request |\n\n\n\n\n\n\n<a name=\"irishub.guardian.QuerySupersResponse\"></a>\n\n### QuerySupersResponse\nQuerySupersResponse is response type for the Query/Supers RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `supers` | [Super](#irishub.guardian.Super) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irishub.guardian.Query\"></a>\n\n### Query\nQuery creates service with guardian as RPC\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Supers` | [QuerySupersRequest](#irishub.guardian.QuerySupersRequest) | [QuerySupersResponse](#irishub.guardian.QuerySupersResponse) | Supers returns all Supers | GET|/irishub/guardian/supers|\n\n <!-- end services -->\n\n\n\n<a name=\"guardian/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## guardian/tx.proto\n\n\n\n<a name=\"irishub.guardian.MsgAddSuper\"></a>\n\n### MsgAddSuper\nMsgAddSuper defines the properties of add super account message\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `description` | [string](#string) |  |  |\n| `address` | [string](#string) |  |  |\n| `added_by` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irishub.guardian.MsgAddSuperResponse\"></a>\n\n### MsgAddSuperResponse\nMsgAddSuperResponse defines the Msg/AddSuper response type\n\n\n\n\n\n\n<a name=\"irishub.guardian.MsgDeleteSuper\"></a>\n\n### MsgDeleteSuper\nMsgDeleteSuper defines the properties of delete super account message\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `deleted_by` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irishub.guardian.MsgDeleteSuperResponse\"></a>\n\n### MsgDeleteSuperResponse\nMsgDeleteSuperResponse defines the Msg/DeleteSuper response type\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irishub.guardian.Msg\"></a>\n\n### Msg\nMsg defines the guardian Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `AddSuper` | [MsgAddSuper](#irishub.guardian.MsgAddSuper) | [MsgAddSuperResponse](#irishub.guardian.MsgAddSuperResponse) | AddSuper defines a method for adding a super account | |\n| `DeleteSuper` | [MsgDeleteSuper](#irishub.guardian.MsgDeleteSuper) | [MsgDeleteSuperResponse](#irishub.guardian.MsgDeleteSuperResponse) | DeleteSuper defines a method for deleting a super account | |\n\n <!-- end services -->\n\n\n\n<a name=\"htlc/htlc.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## htlc/htlc.proto\n\n\n\n<a name=\"irismod.htlc.AssetParam\"></a>\n\n### AssetParam\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  | name of the asset |\n| `supply_limit` | [SupplyLimit](#irismod.htlc.SupplyLimit) |  | asset supply limit |\n| `active` | [bool](#bool) |  | denotes if asset is available or paused |\n| `deputy_address` | [string](#string) |  | the address of the relayer process |\n| `fixed_fee` | [string](#string) |  | the fixed fee charged by the relayer process for outgoing swaps |\n| `min_swap_amount` | [string](#string) |  | Minimum swap amount |\n| `max_swap_amount` | [string](#string) |  | Maximum swap amount |\n| `min_block_lock` | [uint64](#uint64) |  | Minimum swap block lock |\n| `max_block_lock` | [uint64](#uint64) |  | Maximum swap block lock |\n\n\n\n\n\n\n<a name=\"irismod.htlc.AssetSupply\"></a>\n\n### AssetSupply\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `incoming_supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `outgoing_supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `current_supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `time_limited_current_supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `time_elapsed` | [google.protobuf.Duration](#google.protobuf.Duration) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.HTLC\"></a>\n\n### HTLC\nHTLC defines the struct of an HTLC\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n| `to` | [string](#string) |  |  |\n| `receiver_on_other_chain` | [string](#string) |  |  |\n| `sender_on_other_chain` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `hash_lock` | [string](#string) |  |  |\n| `secret` | [string](#string) |  |  |\n| `timestamp` | [uint64](#uint64) |  |  |\n| `expiration_height` | [uint64](#uint64) |  |  |\n| `state` | [HTLCState](#irismod.htlc.HTLCState) |  |  |\n| `closed_block` | [uint64](#uint64) |  |  |\n| `transfer` | [bool](#bool) |  |  |\n| `direction` | [SwapDirection](#irismod.htlc.SwapDirection) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.Params\"></a>\n\n### Params\nParams defines token module's parameters\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `asset_params` | [AssetParam](#irismod.htlc.AssetParam) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.SupplyLimit\"></a>\n\n### SupplyLimit\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `limit` | [string](#string) |  | the absolute supply limit for an asset |\n| `time_limited` | [bool](#bool) |  | boolean for if the supply is also limited by time |\n| `time_period` | [google.protobuf.Duration](#google.protobuf.Duration) |  | the duration for which the supply time limit applies |\n| `time_based_limit` | [string](#string) |  | the supply limit for an asset for each time period |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"irismod.htlc.HTLCState\"></a>\n\n### HTLCState\nHTLCState defines the state of an HTLC\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| HTLC_STATE_OPEN | 0 | HTLC_STATE_OPEN defines an open state. |\n| HTLC_STATE_COMPLETED | 1 | HTLC_STATE_COMPLETED defines a completed state. |\n| HTLC_STATE_REFUNDED | 2 | HTLC_STATE_REFUNDED defines a refunded state. |\n\n\n\n<a name=\"irismod.htlc.SwapDirection\"></a>\n\n### SwapDirection\nSwapDirection defines the direction of an HTLT\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| NONE | 0 | NONE defines an htlt none direction. |\n| INCOMING | 1 | INCOMING defines an htlt incoming direction. |\n| OUTGOING | 2 | OUTGOING defines an htlt outgoing direction. |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"htlc/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## htlc/genesis.proto\n\n\n\n<a name=\"irismod.htlc.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the HTLC module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.htlc.Params) |  |  |\n| `htlcs` | [HTLC](#irismod.htlc.HTLC) | repeated |  |\n| `supplies` | [AssetSupply](#irismod.htlc.AssetSupply) | repeated |  |\n| `previous_block_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"htlc/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## htlc/query.proto\n\n\n\n<a name=\"irismod.htlc.QueryAssetSuppliesRequest\"></a>\n\n### QueryAssetSuppliesRequest\nQueryAssetSuppliesRequest is request type for the Query/AssetSupplies RPC method\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryAssetSuppliesResponse\"></a>\n\n### QueryAssetSuppliesResponse\nQueryAssetSuppliesResponse is response type for the Query/AssetSupplies RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `asset_supplies` | [AssetSupply](#irismod.htlc.AssetSupply) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryAssetSupplyRequest\"></a>\n\n### QueryAssetSupplyRequest\nQueryAssetSupplyRequest is request type for the Query/AssetSupply RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryAssetSupplyResponse\"></a>\n\n### QueryAssetSupplyResponse\nQueryAssetSupplyResponse is response type for the Query/AssetSupply RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `asset_supply` | [AssetSupply](#irismod.htlc.AssetSupply) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryHTLCRequest\"></a>\n\n### QueryHTLCRequest\nQueryHTLCRequest is the request type for the Query/HTLC RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryHTLCResponse\"></a>\n\n### QueryHTLCResponse\nQueryBalanceResponse is the response type for the Query/HTLC RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `htlc` | [HTLC](#irismod.htlc.HTLC) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is request type for the Query/Parameters RPC method\n\n\n\n\n\n\n<a name=\"irismod.htlc.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is response type for the Query/Parameters RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.htlc.Params) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.htlc.Query\"></a>\n\n### Query\nQuery provides defines the gRPC querier service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `HTLC` | [QueryHTLCRequest](#irismod.htlc.QueryHTLCRequest) | [QueryHTLCResponse](#irismod.htlc.QueryHTLCResponse) | HTLC queries the HTLC by the specified hash lock | GET|/irismod/htlc/htlcs/{id}|\n| `AssetSupply` | [QueryAssetSupplyRequest](#irismod.htlc.QueryAssetSupplyRequest) | [QueryAssetSupplyResponse](#irismod.htlc.QueryAssetSupplyResponse) | AssetSupply queries the supply of an asset | GET|/irismod/htlc/supplies/{denom}|\n| `AssetSupplies` | [QueryAssetSuppliesRequest](#irismod.htlc.QueryAssetSuppliesRequest) | [QueryAssetSuppliesResponse](#irismod.htlc.QueryAssetSuppliesResponse) | AssetSupplies queries the supplies of all assets | GET|/irismod/htlc/supplies|\n| `Params` | [QueryParamsRequest](#irismod.htlc.QueryParamsRequest) | [QueryParamsResponse](#irismod.htlc.QueryParamsResponse) | Params queries the htlc parameters | GET|/irismod/htlc/params|\n\n <!-- end services -->\n\n\n\n<a name=\"htlc/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## htlc/tx.proto\n\n\n\n<a name=\"irismod.htlc.MsgClaimHTLC\"></a>\n\n### MsgClaimHTLC\nMsgClaimHTLC defines a message to claim an HTLC\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sender` | [string](#string) |  |  |\n| `id` | [string](#string) |  |  |\n| `secret` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.MsgClaimHTLCResponse\"></a>\n\n### MsgClaimHTLCResponse\nMsgClaimHTLCResponse defines the Msg/ClaimHTLC response type\n\n\n\n\n\n\n<a name=\"irismod.htlc.MsgCreateHTLC\"></a>\n\n### MsgCreateHTLC\nMsgCreateHTLC defines a message to create an HTLC\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sender` | [string](#string) |  |  |\n| `to` | [string](#string) |  |  |\n| `receiver_on_other_chain` | [string](#string) |  |  |\n| `sender_on_other_chain` | [string](#string) |  |  |\n| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `hash_lock` | [string](#string) |  |  |\n| `timestamp` | [uint64](#uint64) |  |  |\n| `time_lock` | [uint64](#uint64) |  |  |\n| `transfer` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.htlc.MsgCreateHTLCResponse\"></a>\n\n### MsgCreateHTLCResponse\nMsgCreateHTLCResponse defines the Msg/CreateHTLC response type\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.htlc.Msg\"></a>\n\n### Msg\nMsg defines the HTLC Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreateHTLC` | [MsgCreateHTLC](#irismod.htlc.MsgCreateHTLC) | [MsgCreateHTLCResponse](#irismod.htlc.MsgCreateHTLCResponse) | CreateHTLC defines a method for creating a HTLC | |\n| `ClaimHTLC` | [MsgClaimHTLC](#irismod.htlc.MsgClaimHTLC) | [MsgClaimHTLCResponse](#irismod.htlc.MsgClaimHTLCResponse) | ClaimHTLC defines a method for claiming a HTLC | |\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/applications/transfer/v1/transfer.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/applications/transfer/v1/transfer.proto\n\n\n\n<a name=\"ibc.applications.transfer.v1.DenomTrace\"></a>\n\n### DenomTrace\nDenomTrace contains the base denomination for ICS20 fungible tokens and the\nsource tracing information path.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [string](#string) |  | path defines the chain of port/channel identifiers used for tracing the source of the fungible token. |\n| `base_denom` | [string](#string) |  | base denomination of the relayed fungible token. |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.FungibleTokenPacketData\"></a>\n\n### FungibleTokenPacketData\nFungibleTokenPacketData defines a struct for the packet payload\nSee FungibleTokenPacketData spec:\nhttps://github.com/cosmos/ics/tree/master/spec/ics-020-fungible-token-transfer#data-structures\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  | the token denomination to be transferred |\n| `amount` | [uint64](#uint64) |  | the token amount to be transferred |\n| `sender` | [string](#string) |  | the sender address |\n| `receiver` | [string](#string) |  | the recipient address on the destination chain |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.Params\"></a>\n\n### Params\nParams defines the set of IBC transfer parameters.\nNOTE: To prevent a single token from being transferred, set the\nTransfersEnabled parameter to true and then set the bank module's SendEnabled\nparameter for the denomination to false.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `send_enabled` | [bool](#bool) |  | send_enabled enables or disables all cross-chain token transfers from this chain. |\n| `receive_enabled` | [bool](#bool) |  | receive_enabled enables or disables all cross-chain token transfers to this chain. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/applications/transfer/v1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/applications/transfer/v1/genesis.proto\n\n\n\n<a name=\"ibc.applications.transfer.v1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the ibc-transfer genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `denom_traces` | [DenomTrace](#ibc.applications.transfer.v1.DenomTrace) | repeated |  |\n| `params` | [Params](#ibc.applications.transfer.v1.Params) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/applications/transfer/v1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/applications/transfer/v1/query.proto\n\n\n\n<a name=\"ibc.applications.transfer.v1.QueryDenomTraceRequest\"></a>\n\n### QueryDenomTraceRequest\nQueryDenomTraceRequest is the request type for the Query/DenomTrace RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `hash` | [string](#string) |  | hash (in hex format) of the denomination trace information. |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.QueryDenomTraceResponse\"></a>\n\n### QueryDenomTraceResponse\nQueryDenomTraceResponse is the response type for the Query/DenomTrace RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_trace` | [DenomTrace](#ibc.applications.transfer.v1.DenomTrace) |  | denom_trace returns the requested denomination trace information. |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.QueryDenomTracesRequest\"></a>\n\n### QueryDenomTracesRequest\nQueryConnectionsRequest is the request type for the Query/DenomTraces RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.QueryDenomTracesResponse\"></a>\n\n### QueryDenomTracesResponse\nQueryConnectionsResponse is the response type for the Query/DenomTraces RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_traces` | [DenomTrace](#ibc.applications.transfer.v1.DenomTrace) | repeated | denom_traces returns all denominations trace information. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines the pagination in the response. |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is the request type for the Query/Params RPC method.\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is the response type for the Query/Params RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#ibc.applications.transfer.v1.Params) |  | params defines the parameters of the module. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.applications.transfer.v1.Query\"></a>\n\n### Query\nQuery provides defines the gRPC querier service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `DenomTrace` | [QueryDenomTraceRequest](#ibc.applications.transfer.v1.QueryDenomTraceRequest) | [QueryDenomTraceResponse](#ibc.applications.transfer.v1.QueryDenomTraceResponse) | DenomTrace queries a denomination trace information. | GET|/ibc/applications/transfer/v1beta1/denom_traces/{hash}|\n| `DenomTraces` | [QueryDenomTracesRequest](#ibc.applications.transfer.v1.QueryDenomTracesRequest) | [QueryDenomTracesResponse](#ibc.applications.transfer.v1.QueryDenomTracesResponse) | DenomTraces queries all denomination traces. | GET|/ibc/applications/transfer/v1beta1/denom_traces|\n| `Params` | [QueryParamsRequest](#ibc.applications.transfer.v1.QueryParamsRequest) | [QueryParamsResponse](#ibc.applications.transfer.v1.QueryParamsResponse) | Params queries all parameters of the ibc-transfer module. | GET|/ibc/applications/transfer/v1beta1/params|\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/client/v1/client.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/client/v1/client.proto\n\n\n\n<a name=\"ibc.core.client.v1.ClientConsensusStates\"></a>\n\n### ClientConsensusStates\nClientConsensusStates defines all the stored consensus states for a given\nclient.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client identifier |\n| `consensus_states` | [ConsensusStateWithHeight](#ibc.core.client.v1.ConsensusStateWithHeight) | repeated | consensus states and their heights associated with the client |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.ClientUpdateProposal\"></a>\n\n### ClientUpdateProposal\nClientUpdateProposal is a governance proposal. If it passes, the client is\nupdated with the provided header. The update may fail if the header is not\nvalid given certain conditions specified by the client implementation.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `title` | [string](#string) |  | the title of the update proposal |\n| `description` | [string](#string) |  | the description of the proposal |\n| `client_id` | [string](#string) |  | the client identifier for the client to be updated if the proposal passes |\n| `header` | [google.protobuf.Any](#google.protobuf.Any) |  | the header used to update the client if the proposal passes |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.ConsensusStateWithHeight\"></a>\n\n### ConsensusStateWithHeight\nConsensusStateWithHeight defines a consensus state with an additional height field.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [Height](#ibc.core.client.v1.Height) |  | consensus state height |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  | consensus state |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.Height\"></a>\n\n### Height\nHeight is a monotonically increasing data type\nthat can be compared against another Height for the purposes of updating and\nfreezing clients\n\nNormally the RevisionHeight is incremented at each height while keeping RevisionNumber\nthe same. However some consensus algorithms may choose to reset the\nheight in certain conditions e.g. hard forks, state-machine breaking changes\nIn these cases, the RevisionNumber is incremented so that height continues to\nbe monitonically increasing even as the RevisionHeight gets reset\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `revision_number` | [uint64](#uint64) |  | the revision that the client is currently on |\n| `revision_height` | [uint64](#uint64) |  | the height within the given revision |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.IdentifiedClientState\"></a>\n\n### IdentifiedClientState\nIdentifiedClientState defines a client state with an additional client\nidentifier field.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client identifier |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  | client state |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.Params\"></a>\n\n### Params\nParams defines the set of IBC light client parameters.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `allowed_clients` | [string](#string) | repeated | allowed_clients defines the list of allowed client state types. |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/applications/transfer/v1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/applications/transfer/v1/tx.proto\n\n\n\n<a name=\"ibc.applications.transfer.v1.MsgTransfer\"></a>\n\n### MsgTransfer\nMsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between\nICS20 enabled chains. See ICS Spec here:\nhttps://github.com/cosmos/ics/tree/master/spec/ics-020-fungible-token-transfer#data-structures\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `source_port` | [string](#string) |  | the port on which the packet will be sent |\n| `source_channel` | [string](#string) |  | the channel by which the packet will be sent |\n| `token` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  | the tokens to be transferred |\n| `sender` | [string](#string) |  | the sender address |\n| `receiver` | [string](#string) |  | the recipient address on the destination chain |\n| `timeout_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | Timeout height relative to the current block height. The timeout is disabled when set to 0. |\n| `timeout_timestamp` | [uint64](#uint64) |  | Timeout timestamp (in nanoseconds) relative to the current block timestamp. The timeout is disabled when set to 0. |\n\n\n\n\n\n\n<a name=\"ibc.applications.transfer.v1.MsgTransferResponse\"></a>\n\n### MsgTransferResponse\nMsgTransferResponse defines the Msg/Transfer response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.applications.transfer.v1.Msg\"></a>\n\n### Msg\nMsg defines the ibc/transfer Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Transfer` | [MsgTransfer](#ibc.applications.transfer.v1.MsgTransfer) | [MsgTransferResponse](#ibc.applications.transfer.v1.MsgTransferResponse) | Transfer defines a rpc handler method for MsgTransfer. | |\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/channel/v1/channel.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/channel/v1/channel.proto\n\n\n\n<a name=\"ibc.core.channel.v1.Acknowledgement\"></a>\n\n### Acknowledgement\nAcknowledgement is the recommended acknowledgement format to be used by\napp-specific protocols.\nNOTE: The field numbers 21 and 22 were explicitly chosen to avoid accidental\nconflicts with other protobuf message formats used for acknowledgements.\nThe first byte of any message with this format will be the non-ASCII values\n`0xaa` (result) or `0xb2` (error). Implemented as defined by ICS:\nhttps://github.com/cosmos/ics/tree/master/spec/ics-004-channel-and-packet-semantics#acknowledgement-envelope\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `result` | [bytes](#bytes) |  |  |\n| `error` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.Channel\"></a>\n\n### Channel\nChannel defines pipeline for exactly-once packet delivery between specific\nmodules on separate blockchains, which has at least one end capable of\nsending packets and one end capable of receiving packets.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `state` | [State](#ibc.core.channel.v1.State) |  | current state of the channel end |\n| `ordering` | [Order](#ibc.core.channel.v1.Order) |  | whether the channel is ordered or unordered |\n| `counterparty` | [Counterparty](#ibc.core.channel.v1.Counterparty) |  | counterparty channel end |\n| `connection_hops` | [string](#string) | repeated | list of connection identifiers, in order, along which packets sent on this channel will travel |\n| `version` | [string](#string) |  | opaque channel version, which is agreed upon during the handshake |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.Counterparty\"></a>\n\n### Counterparty\nCounterparty defines a channel end counterparty\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port on the counterparty chain which owns the other end of the channel. |\n| `channel_id` | [string](#string) |  | channel end on the counterparty chain |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.IdentifiedChannel\"></a>\n\n### IdentifiedChannel\nIdentifiedChannel defines a channel with additional port and channel\nidentifier fields.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `state` | [State](#ibc.core.channel.v1.State) |  | current state of the channel end |\n| `ordering` | [Order](#ibc.core.channel.v1.Order) |  | whether the channel is ordered or unordered |\n| `counterparty` | [Counterparty](#ibc.core.channel.v1.Counterparty) |  | counterparty channel end |\n| `connection_hops` | [string](#string) | repeated | list of connection identifiers, in order, along which packets sent on this channel will travel |\n| `version` | [string](#string) |  | opaque channel version, which is agreed upon during the handshake |\n| `port_id` | [string](#string) |  | port identifier |\n| `channel_id` | [string](#string) |  | channel identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.Packet\"></a>\n\n### Packet\nPacket defines a type that carries data across different chains through IBC\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sequence` | [uint64](#uint64) |  | number corresponds to the order of sends and receives, where a Packet with an earlier sequence number must be sent and received before a Packet with a later sequence number. |\n| `source_port` | [string](#string) |  | identifies the port on the sending chain. |\n| `source_channel` | [string](#string) |  | identifies the channel end on the sending chain. |\n| `destination_port` | [string](#string) |  | identifies the port on the receiving chain. |\n| `destination_channel` | [string](#string) |  | identifies the channel end on the receiving chain. |\n| `data` | [bytes](#bytes) |  | actual opaque bytes transferred directly to the application module |\n| `timeout_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | block height after which the packet times out |\n| `timeout_timestamp` | [uint64](#uint64) |  | block timestamp (in nanoseconds) after which the packet times out |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.PacketState\"></a>\n\n### PacketState\nPacketState defines the generic type necessary to retrieve and store\npacket commitments, acknowledgements, and receipts.\nCaller is responsible for knowing the context necessary to interpret this\nstate as a commitment, acknowledgement, or a receipt.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | channel port identifier. |\n| `channel_id` | [string](#string) |  | channel unique identifier. |\n| `sequence` | [uint64](#uint64) |  | packet sequence. |\n| `data` | [bytes](#bytes) |  | embedded data that represents packet state. |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"ibc.core.channel.v1.Order\"></a>\n\n### Order\nOrder defines if a channel is ORDERED or UNORDERED\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| ORDER_NONE_UNSPECIFIED | 0 | zero-value for channel ordering |\n| ORDER_UNORDERED | 1 | packets can be delivered in any order, which may differ from the order in which they were sent. |\n| ORDER_ORDERED | 2 | packets are delivered exactly in the order which they were sent |\n\n\n\n<a name=\"ibc.core.channel.v1.State\"></a>\n\n### State\nState defines if a channel is in one of the following states:\nCLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| STATE_UNINITIALIZED_UNSPECIFIED | 0 | Default State |\n| STATE_INIT | 1 | A channel has just started the opening handshake. |\n| STATE_TRYOPEN | 2 | A channel has acknowledged the handshake step on the counterparty chain. |\n| STATE_OPEN | 3 | A channel has completed the handshake. Open channels are ready to send and receive packets. |\n| STATE_CLOSED | 4 | A channel has been closed and can no longer be used to send or receive packets. |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/channel/v1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/channel/v1/genesis.proto\n\n\n\n<a name=\"ibc.core.channel.v1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the ibc channel submodule's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `channels` | [IdentifiedChannel](#ibc.core.channel.v1.IdentifiedChannel) | repeated |  |\n| `acknowledgements` | [PacketState](#ibc.core.channel.v1.PacketState) | repeated |  |\n| `commitments` | [PacketState](#ibc.core.channel.v1.PacketState) | repeated |  |\n| `receipts` | [PacketState](#ibc.core.channel.v1.PacketState) | repeated |  |\n| `send_sequences` | [PacketSequence](#ibc.core.channel.v1.PacketSequence) | repeated |  |\n| `recv_sequences` | [PacketSequence](#ibc.core.channel.v1.PacketSequence) | repeated |  |\n| `ack_sequences` | [PacketSequence](#ibc.core.channel.v1.PacketSequence) | repeated |  |\n| `next_channel_sequence` | [uint64](#uint64) |  | the sequence for the next generated channel identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.PacketSequence\"></a>\n\n### PacketSequence\nPacketSequence defines the genesis type necessary to retrieve and store\nnext send and receive sequences.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `channel_id` | [string](#string) |  |  |\n| `sequence` | [uint64](#uint64) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/channel/v1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/channel/v1/query.proto\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelClientStateRequest\"></a>\n\n### QueryChannelClientStateRequest\nQueryChannelClientStateRequest is the request type for the Query/ClientState\nRPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelClientStateResponse\"></a>\n\n### QueryChannelClientStateResponse\nQueryChannelClientStateResponse is the Response type for the\nQuery/QueryChannelClientState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `identified_client_state` | [ibc.core.client.v1.IdentifiedClientState](#ibc.core.client.v1.IdentifiedClientState) |  | client state associated with the channel |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelConsensusStateRequest\"></a>\n\n### QueryChannelConsensusStateRequest\nQueryChannelConsensusStateRequest is the request type for the\nQuery/ConsensusState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `revision_number` | [uint64](#uint64) |  | revision number of the consensus state |\n| `revision_height` | [uint64](#uint64) |  | revision height of the consensus state |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelConsensusStateResponse\"></a>\n\n### QueryChannelConsensusStateResponse\nQueryChannelClientStateResponse is the Response type for the\nQuery/QueryChannelClientState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  | consensus state associated with the channel |\n| `client_id` | [string](#string) |  | client ID associated with the consensus state |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelRequest\"></a>\n\n### QueryChannelRequest\nQueryChannelRequest is the request type for the Query/Channel RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelResponse\"></a>\n\n### QueryChannelResponse\nQueryChannelResponse is the response type for the Query/Channel RPC method.\nBesides the Channel end, it includes a proof and the height from which the\nproof was retrieved.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `channel` | [Channel](#ibc.core.channel.v1.Channel) |  | channel associated with the request identifiers |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelsRequest\"></a>\n\n### QueryChannelsRequest\nQueryChannelsRequest is the request type for the Query/Channels RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination request |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryChannelsResponse\"></a>\n\n### QueryChannelsResponse\nQueryChannelsResponse is the response type for the Query/Channels RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `channels` | [IdentifiedChannel](#ibc.core.channel.v1.IdentifiedChannel) | repeated | list of stored channels of the chain. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryConnectionChannelsRequest\"></a>\n\n### QueryConnectionChannelsRequest\nQueryConnectionChannelsRequest is the request type for the\nQuery/QueryConnectionChannels RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection` | [string](#string) |  | connection unique identifier |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination request |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryConnectionChannelsResponse\"></a>\n\n### QueryConnectionChannelsResponse\nQueryConnectionChannelsResponse is the Response type for the\nQuery/QueryConnectionChannels RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `channels` | [IdentifiedChannel](#ibc.core.channel.v1.IdentifiedChannel) | repeated | list of channels associated with a connection. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryNextSequenceReceiveRequest\"></a>\n\n### QueryNextSequenceReceiveRequest\nQueryNextSequenceReceiveRequest is the request type for the\nQuery/QueryNextSequenceReceiveRequest RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryNextSequenceReceiveResponse\"></a>\n\n### QueryNextSequenceReceiveResponse\nQuerySequenceResponse is the request type for the\nQuery/QueryNextSequenceReceiveResponse RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `next_sequence_receive` | [uint64](#uint64) |  | next sequence receive number |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketAcknowledgementRequest\"></a>\n\n### QueryPacketAcknowledgementRequest\nQueryPacketAcknowledgementRequest is the request type for the\nQuery/PacketAcknowledgement RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `sequence` | [uint64](#uint64) |  | packet sequence |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketAcknowledgementResponse\"></a>\n\n### QueryPacketAcknowledgementResponse\nQueryPacketAcknowledgementResponse defines the client query response for a\npacket which also includes a proof and the height from which the\nproof was retrieved\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `acknowledgement` | [bytes](#bytes) |  | packet associated with the request fields |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketAcknowledgementsRequest\"></a>\n\n### QueryPacketAcknowledgementsRequest\nQueryPacketAcknowledgementsRequest is the request type for the\nQuery/QueryPacketCommitments RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination request |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketAcknowledgementsResponse\"></a>\n\n### QueryPacketAcknowledgementsResponse\nQueryPacketAcknowledgemetsResponse is the request type for the\nQuery/QueryPacketAcknowledgements RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `acknowledgements` | [PacketState](#ibc.core.channel.v1.PacketState) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketCommitmentRequest\"></a>\n\n### QueryPacketCommitmentRequest\nQueryPacketCommitmentRequest is the request type for the\nQuery/PacketCommitment RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `sequence` | [uint64](#uint64) |  | packet sequence |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketCommitmentResponse\"></a>\n\n### QueryPacketCommitmentResponse\nQueryPacketCommitmentResponse defines the client query response for a packet\nwhich also includes a proof and the height from which the proof was\nretrieved\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `commitment` | [bytes](#bytes) |  | packet associated with the request fields |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketCommitmentsRequest\"></a>\n\n### QueryPacketCommitmentsRequest\nQueryPacketCommitmentsRequest is the request type for the\nQuery/QueryPacketCommitments RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination request |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketCommitmentsResponse\"></a>\n\n### QueryPacketCommitmentsResponse\nQueryPacketCommitmentsResponse is the request type for the\nQuery/QueryPacketCommitments RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `commitments` | [PacketState](#ibc.core.channel.v1.PacketState) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketReceiptRequest\"></a>\n\n### QueryPacketReceiptRequest\nQueryPacketReceiptRequest is the request type for the\nQuery/PacketReceipt RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `sequence` | [uint64](#uint64) |  | packet sequence |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryPacketReceiptResponse\"></a>\n\n### QueryPacketReceiptResponse\nQueryPacketReceiptResponse defines the client query response for a packet receipt\nwhich also includes a proof, and the height from which the proof was\nretrieved\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `received` | [bool](#bool) |  | success flag for if receipt exists |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryUnreceivedAcksRequest\"></a>\n\n### QueryUnreceivedAcksRequest\nQueryUnreceivedAcks is the request type for the\nQuery/UnreceivedAcks RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `packet_ack_sequences` | [uint64](#uint64) | repeated | list of acknowledgement sequences |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryUnreceivedAcksResponse\"></a>\n\n### QueryUnreceivedAcksResponse\nQueryUnreceivedAcksResponse is the response type for the\nQuery/UnreceivedAcks RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sequences` | [uint64](#uint64) | repeated | list of unreceived acknowledgement sequences |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryUnreceivedPacketsRequest\"></a>\n\n### QueryUnreceivedPacketsRequest\nQueryUnreceivedPacketsRequest is the request type for the\nQuery/UnreceivedPackets RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  | port unique identifier |\n| `channel_id` | [string](#string) |  | channel unique identifier |\n| `packet_commitment_sequences` | [uint64](#uint64) | repeated | list of packet sequences |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.QueryUnreceivedPacketsResponse\"></a>\n\n### QueryUnreceivedPacketsResponse\nQueryUnreceivedPacketsResponse is the response type for the\nQuery/UnreceivedPacketCommitments RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sequences` | [uint64](#uint64) | repeated | list of unreceived packet sequences |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.core.channel.v1.Query\"></a>\n\n### Query\nQuery provides defines the gRPC querier service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Channel` | [QueryChannelRequest](#ibc.core.channel.v1.QueryChannelRequest) | [QueryChannelResponse](#ibc.core.channel.v1.QueryChannelResponse) | Channel queries an IBC Channel. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}|\n| `Channels` | [QueryChannelsRequest](#ibc.core.channel.v1.QueryChannelsRequest) | [QueryChannelsResponse](#ibc.core.channel.v1.QueryChannelsResponse) | Channels queries all the IBC channels of a chain. | GET|/ibc/core/channel/v1beta1/channels|\n| `ConnectionChannels` | [QueryConnectionChannelsRequest](#ibc.core.channel.v1.QueryConnectionChannelsRequest) | [QueryConnectionChannelsResponse](#ibc.core.channel.v1.QueryConnectionChannelsResponse) | ConnectionChannels queries all the channels associated with a connection end. | GET|/ibc/core/channel/v1beta1/connections/{connection}/channels|\n| `ChannelClientState` | [QueryChannelClientStateRequest](#ibc.core.channel.v1.QueryChannelClientStateRequest) | [QueryChannelClientStateResponse](#ibc.core.channel.v1.QueryChannelClientStateResponse) | ChannelClientState queries for the client state for the channel associated with the provided channel identifiers. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/client_state|\n| `ChannelConsensusState` | [QueryChannelConsensusStateRequest](#ibc.core.channel.v1.QueryChannelConsensusStateRequest) | [QueryChannelConsensusStateResponse](#ibc.core.channel.v1.QueryChannelConsensusStateResponse) | ChannelConsensusState queries for the consensus state for the channel associated with the provided channel identifiers. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}|\n| `PacketCommitment` | [QueryPacketCommitmentRequest](#ibc.core.channel.v1.QueryPacketCommitmentRequest) | [QueryPacketCommitmentResponse](#ibc.core.channel.v1.QueryPacketCommitmentResponse) | PacketCommitment queries a stored packet commitment hash. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}|\n| `PacketCommitments` | [QueryPacketCommitmentsRequest](#ibc.core.channel.v1.QueryPacketCommitmentsRequest) | [QueryPacketCommitmentsResponse](#ibc.core.channel.v1.QueryPacketCommitmentsResponse) | PacketCommitments returns all the packet commitments hashes associated with a channel. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments|\n| `PacketReceipt` | [QueryPacketReceiptRequest](#ibc.core.channel.v1.QueryPacketReceiptRequest) | [QueryPacketReceiptResponse](#ibc.core.channel.v1.QueryPacketReceiptResponse) | PacketReceipt queries if a given packet sequence has been received on the queried chain | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_receipts/{sequence}|\n| `PacketAcknowledgement` | [QueryPacketAcknowledgementRequest](#ibc.core.channel.v1.QueryPacketAcknowledgementRequest) | [QueryPacketAcknowledgementResponse](#ibc.core.channel.v1.QueryPacketAcknowledgementResponse) | PacketAcknowledgement queries a stored packet acknowledgement hash. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}|\n| `PacketAcknowledgements` | [QueryPacketAcknowledgementsRequest](#ibc.core.channel.v1.QueryPacketAcknowledgementsRequest) | [QueryPacketAcknowledgementsResponse](#ibc.core.channel.v1.QueryPacketAcknowledgementsResponse) | PacketAcknowledgements returns all the packet acknowledgements associated with a channel. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements|\n| `UnreceivedPackets` | [QueryUnreceivedPacketsRequest](#ibc.core.channel.v1.QueryUnreceivedPacketsRequest) | [QueryUnreceivedPacketsResponse](#ibc.core.channel.v1.QueryUnreceivedPacketsResponse) | UnreceivedPackets returns all the unreceived IBC packets associated with a channel and sequences. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets|\n| `UnreceivedAcks` | [QueryUnreceivedAcksRequest](#ibc.core.channel.v1.QueryUnreceivedAcksRequest) | [QueryUnreceivedAcksResponse](#ibc.core.channel.v1.QueryUnreceivedAcksResponse) | UnreceivedAcks returns all the unreceived IBC acknowledgements associated with a channel and sequences. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks|\n| `NextSequenceReceive` | [QueryNextSequenceReceiveRequest](#ibc.core.channel.v1.QueryNextSequenceReceiveRequest) | [QueryNextSequenceReceiveResponse](#ibc.core.channel.v1.QueryNextSequenceReceiveResponse) | NextSequenceReceive returns the next receive sequence for a given channel. | GET|/ibc/core/channel/v1beta1/channels/{channel_id}/ports/{port_id}/next_sequence|\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/channel/v1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/channel/v1/tx.proto\n\n\n\n<a name=\"ibc.core.channel.v1.MsgAcknowledgement\"></a>\n\n### MsgAcknowledgement\nMsgAcknowledgement receives incoming IBC acknowledgement\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `packet` | [Packet](#ibc.core.channel.v1.Packet) |  |  |\n| `acknowledgement` | [bytes](#bytes) |  |  |\n| `proof_acked` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgAcknowledgementResponse\"></a>\n\n### MsgAcknowledgementResponse\nMsgAcknowledgementResponse defines the Msg/Acknowledgement response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelCloseConfirm\"></a>\n\n### MsgChannelCloseConfirm\nMsgChannelCloseConfirm defines a msg sent by a Relayer to Chain B\nto acknowledge the change of channel state to CLOSED on Chain A.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `channel_id` | [string](#string) |  |  |\n| `proof_init` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelCloseConfirmResponse\"></a>\n\n### MsgChannelCloseConfirmResponse\nMsgChannelCloseConfirmResponse defines the Msg/ChannelCloseConfirm response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelCloseInit\"></a>\n\n### MsgChannelCloseInit\nMsgChannelCloseInit defines a msg sent by a Relayer to Chain A\nto close a channel with Chain B.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `channel_id` | [string](#string) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelCloseInitResponse\"></a>\n\n### MsgChannelCloseInitResponse\nMsgChannelCloseInitResponse defines the Msg/ChannelCloseInit response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenAck\"></a>\n\n### MsgChannelOpenAck\nMsgChannelOpenAck defines a msg sent by a Relayer to Chain A to acknowledge\nthe change of channel state to TRYOPEN on Chain B.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `channel_id` | [string](#string) |  |  |\n| `counterparty_channel_id` | [string](#string) |  |  |\n| `counterparty_version` | [string](#string) |  |  |\n| `proof_try` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenAckResponse\"></a>\n\n### MsgChannelOpenAckResponse\nMsgChannelOpenAckResponse defines the Msg/ChannelOpenAck response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenConfirm\"></a>\n\n### MsgChannelOpenConfirm\nMsgChannelOpenConfirm defines a msg sent by a Relayer to Chain B to\nacknowledge the change of channel state to OPEN on Chain A.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `channel_id` | [string](#string) |  |  |\n| `proof_ack` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenConfirmResponse\"></a>\n\n### MsgChannelOpenConfirmResponse\nMsgChannelOpenConfirmResponse defines the Msg/ChannelOpenConfirm response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenInit\"></a>\n\n### MsgChannelOpenInit\nMsgChannelOpenInit defines an sdk.Msg to initialize a channel handshake. It\nis called by a relayer on Chain A.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `channel` | [Channel](#ibc.core.channel.v1.Channel) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenInitResponse\"></a>\n\n### MsgChannelOpenInitResponse\nMsgChannelOpenInitResponse defines the Msg/ChannelOpenInit response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenTry\"></a>\n\n### MsgChannelOpenTry\nMsgChannelOpenInit defines a msg sent by a Relayer to try to open a channel\non Chain B.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `port_id` | [string](#string) |  |  |\n| `previous_channel_id` | [string](#string) |  | in the case of crossing hello's, when both chains call OpenInit, we need the channel identifier of the previous channel in state INIT |\n| `channel` | [Channel](#ibc.core.channel.v1.Channel) |  |  |\n| `counterparty_version` | [string](#string) |  |  |\n| `proof_init` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgChannelOpenTryResponse\"></a>\n\n### MsgChannelOpenTryResponse\nMsgChannelOpenTryResponse defines the Msg/ChannelOpenTry response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgRecvPacket\"></a>\n\n### MsgRecvPacket\nMsgRecvPacket receives incoming IBC packet\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `packet` | [Packet](#ibc.core.channel.v1.Packet) |  |  |\n| `proof_commitment` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgRecvPacketResponse\"></a>\n\n### MsgRecvPacketResponse\nMsgRecvPacketResponse defines the Msg/RecvPacket response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgTimeout\"></a>\n\n### MsgTimeout\nMsgTimeout receives timed-out packet\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `packet` | [Packet](#ibc.core.channel.v1.Packet) |  |  |\n| `proof_unreceived` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `next_sequence_recv` | [uint64](#uint64) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgTimeoutOnClose\"></a>\n\n### MsgTimeoutOnClose\nMsgTimeoutOnClose timed-out packet upon counterparty channel closure.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `packet` | [Packet](#ibc.core.channel.v1.Packet) |  |  |\n| `proof_unreceived` | [bytes](#bytes) |  |  |\n| `proof_close` | [bytes](#bytes) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `next_sequence_recv` | [uint64](#uint64) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgTimeoutOnCloseResponse\"></a>\n\n### MsgTimeoutOnCloseResponse\nMsgTimeoutOnCloseResponse defines the Msg/TimeoutOnClose response type.\n\n\n\n\n\n\n<a name=\"ibc.core.channel.v1.MsgTimeoutResponse\"></a>\n\n### MsgTimeoutResponse\nMsgTimeoutResponse defines the Msg/Timeout response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.core.channel.v1.Msg\"></a>\n\n### Msg\nMsg defines the ibc/channel Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `ChannelOpenInit` | [MsgChannelOpenInit](#ibc.core.channel.v1.MsgChannelOpenInit) | [MsgChannelOpenInitResponse](#ibc.core.channel.v1.MsgChannelOpenInitResponse) | ChannelOpenInit defines a rpc handler method for MsgChannelOpenInit. | |\n| `ChannelOpenTry` | [MsgChannelOpenTry](#ibc.core.channel.v1.MsgChannelOpenTry) | [MsgChannelOpenTryResponse](#ibc.core.channel.v1.MsgChannelOpenTryResponse) | ChannelOpenTry defines a rpc handler method for MsgChannelOpenTry. | |\n| `ChannelOpenAck` | [MsgChannelOpenAck](#ibc.core.channel.v1.MsgChannelOpenAck) | [MsgChannelOpenAckResponse](#ibc.core.channel.v1.MsgChannelOpenAckResponse) | ChannelOpenAck defines a rpc handler method for MsgChannelOpenAck. | |\n| `ChannelOpenConfirm` | [MsgChannelOpenConfirm](#ibc.core.channel.v1.MsgChannelOpenConfirm) | [MsgChannelOpenConfirmResponse](#ibc.core.channel.v1.MsgChannelOpenConfirmResponse) | ChannelOpenConfirm defines a rpc handler method for MsgChannelOpenConfirm. | |\n| `ChannelCloseInit` | [MsgChannelCloseInit](#ibc.core.channel.v1.MsgChannelCloseInit) | [MsgChannelCloseInitResponse](#ibc.core.channel.v1.MsgChannelCloseInitResponse) | ChannelCloseInit defines a rpc handler method for MsgChannelCloseInit. | |\n| `ChannelCloseConfirm` | [MsgChannelCloseConfirm](#ibc.core.channel.v1.MsgChannelCloseConfirm) | [MsgChannelCloseConfirmResponse](#ibc.core.channel.v1.MsgChannelCloseConfirmResponse) | ChannelCloseConfirm defines a rpc handler method for MsgChannelCloseConfirm. | |\n| `RecvPacket` | [MsgRecvPacket](#ibc.core.channel.v1.MsgRecvPacket) | [MsgRecvPacketResponse](#ibc.core.channel.v1.MsgRecvPacketResponse) | RecvPacket defines a rpc handler method for MsgRecvPacket. | |\n| `Timeout` | [MsgTimeout](#ibc.core.channel.v1.MsgTimeout) | [MsgTimeoutResponse](#ibc.core.channel.v1.MsgTimeoutResponse) | Timeout defines a rpc handler method for MsgTimeout. | |\n| `TimeoutOnClose` | [MsgTimeoutOnClose](#ibc.core.channel.v1.MsgTimeoutOnClose) | [MsgTimeoutOnCloseResponse](#ibc.core.channel.v1.MsgTimeoutOnCloseResponse) | TimeoutOnClose defines a rpc handler method for MsgTimeoutOnClose. | |\n| `Acknowledgement` | [MsgAcknowledgement](#ibc.core.channel.v1.MsgAcknowledgement) | [MsgAcknowledgementResponse](#ibc.core.channel.v1.MsgAcknowledgementResponse) | Acknowledgement defines a rpc handler method for MsgAcknowledgement. | |\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/client/v1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/client/v1/genesis.proto\n\n\n\n<a name=\"ibc.core.client.v1.GenesisMetadata\"></a>\n\n### GenesisMetadata\nGenesisMetadata defines the genesis type for metadata that clients may return\nwith ExportMetadata\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [bytes](#bytes) |  | store key of metadata without clientID-prefix |\n| `value` | [bytes](#bytes) |  | metadata value |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the ibc client submodule's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `clients` | [IdentifiedClientState](#ibc.core.client.v1.IdentifiedClientState) | repeated | client states with their corresponding identifiers |\n| `clients_consensus` | [ClientConsensusStates](#ibc.core.client.v1.ClientConsensusStates) | repeated | consensus states from each client |\n| `clients_metadata` | [IdentifiedGenesisMetadata](#ibc.core.client.v1.IdentifiedGenesisMetadata) | repeated | metadata from each client |\n| `params` | [Params](#ibc.core.client.v1.Params) |  |  |\n| `create_localhost` | [bool](#bool) |  | create localhost on initialization |\n| `next_client_sequence` | [uint64](#uint64) |  | the sequence for the next generated client identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.IdentifiedGenesisMetadata\"></a>\n\n### IdentifiedGenesisMetadata\nIdentifiedGenesisMetadata has the client metadata with the corresponding client id.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  |  |\n| `client_metadata` | [GenesisMetadata](#ibc.core.client.v1.GenesisMetadata) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/client/v1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/client/v1/query.proto\n\n\n\n<a name=\"ibc.core.client.v1.QueryClientParamsRequest\"></a>\n\n### QueryClientParamsRequest\nQueryClientParamsRequest is the request type for the Query/ClientParams RPC method.\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryClientParamsResponse\"></a>\n\n### QueryClientParamsResponse\nQueryClientParamsResponse is the response type for the Query/ClientParams RPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#ibc.core.client.v1.Params) |  | params defines the parameters of the module. |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryClientStateRequest\"></a>\n\n### QueryClientStateRequest\nQueryClientStateRequest is the request type for the Query/ClientState RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client state unique identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryClientStateResponse\"></a>\n\n### QueryClientStateResponse\nQueryClientStateResponse is the response type for the Query/ClientState RPC\nmethod. Besides the client state, it includes a proof and the height from\nwhich the proof was retrieved.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  | client state associated with the request identifier |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryClientStatesRequest\"></a>\n\n### QueryClientStatesRequest\nQueryClientStatesRequest is the request type for the Query/ClientStates RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination request |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryClientStatesResponse\"></a>\n\n### QueryClientStatesResponse\nQueryClientStatesResponse is the response type for the Query/ClientStates RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_states` | [IdentifiedClientState](#ibc.core.client.v1.IdentifiedClientState) | repeated | list of stored ClientStates of the chain. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryConsensusStateRequest\"></a>\n\n### QueryConsensusStateRequest\nQueryConsensusStateRequest is the request type for the Query/ConsensusState\nRPC method. Besides the consensus state, it includes a proof and the height\nfrom which the proof was retrieved.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client identifier |\n| `revision_number` | [uint64](#uint64) |  | consensus state revision number |\n| `revision_height` | [uint64](#uint64) |  | consensus state revision height |\n| `latest_height` | [bool](#bool) |  | latest_height overrrides the height field and queries the latest stored ConsensusState |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryConsensusStateResponse\"></a>\n\n### QueryConsensusStateResponse\nQueryConsensusStateResponse is the response type for the Query/ConsensusState\nRPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  | consensus state associated with the client identifier at the given height |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryConsensusStatesRequest\"></a>\n\n### QueryConsensusStatesRequest\nQueryConsensusStatesRequest is the request type for the Query/ConsensusStates\nRPC method.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client identifier |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination request |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.QueryConsensusStatesResponse\"></a>\n\n### QueryConsensusStatesResponse\nQueryConsensusStatesResponse is the response type for the\nQuery/ConsensusStates RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `consensus_states` | [ConsensusStateWithHeight](#ibc.core.client.v1.ConsensusStateWithHeight) | repeated | consensus states associated with the identifier |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.core.client.v1.Query\"></a>\n\n### Query\nQuery provides defines the gRPC querier service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `ClientState` | [QueryClientStateRequest](#ibc.core.client.v1.QueryClientStateRequest) | [QueryClientStateResponse](#ibc.core.client.v1.QueryClientStateResponse) | ClientState queries an IBC light client. | GET|/ibc/core/client/v1beta1/client_states/{client_id}|\n| `ClientStates` | [QueryClientStatesRequest](#ibc.core.client.v1.QueryClientStatesRequest) | [QueryClientStatesResponse](#ibc.core.client.v1.QueryClientStatesResponse) | ClientStates queries all the IBC light clients of a chain. | GET|/ibc/core/client/v1beta1/client_states|\n| `ConsensusState` | [QueryConsensusStateRequest](#ibc.core.client.v1.QueryConsensusStateRequest) | [QueryConsensusStateResponse](#ibc.core.client.v1.QueryConsensusStateResponse) | ConsensusState queries a consensus state associated with a client state at a given height. | GET|/ibc/core/client/v1beta1/consensus_states/{client_id}/revision/{revision_number}/height/{revision_height}|\n| `ConsensusStates` | [QueryConsensusStatesRequest](#ibc.core.client.v1.QueryConsensusStatesRequest) | [QueryConsensusStatesResponse](#ibc.core.client.v1.QueryConsensusStatesResponse) | ConsensusStates queries all the consensus state associated with a given client. | GET|/ibc/core/client/v1beta1/consensus_states/{client_id}|\n| `ClientParams` | [QueryClientParamsRequest](#ibc.core.client.v1.QueryClientParamsRequest) | [QueryClientParamsResponse](#ibc.core.client.v1.QueryClientParamsResponse) | ClientParams queries all parameters of the ibc client. | GET|/ibc/client/v1beta1/params|\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/client/v1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/client/v1/tx.proto\n\n\n\n<a name=\"ibc.core.client.v1.MsgCreateClient\"></a>\n\n### MsgCreateClient\nMsgCreateClient defines a message to create an IBC client\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  | light client state |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  | consensus state associated with the client that corresponds to a given height. |\n| `signer` | [string](#string) |  | signer address |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgCreateClientResponse\"></a>\n\n### MsgCreateClientResponse\nMsgCreateClientResponse defines the Msg/CreateClient response type.\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgSubmitMisbehaviour\"></a>\n\n### MsgSubmitMisbehaviour\nMsgSubmitMisbehaviour defines an sdk.Msg type that submits Evidence for\nlight client misbehaviour.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client unique identifier |\n| `misbehaviour` | [google.protobuf.Any](#google.protobuf.Any) |  | misbehaviour used for freezing the light client |\n| `signer` | [string](#string) |  | signer address |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgSubmitMisbehaviourResponse\"></a>\n\n### MsgSubmitMisbehaviourResponse\nMsgSubmitMisbehaviourResponse defines the Msg/SubmitMisbehaviour response type.\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgUpdateClient\"></a>\n\n### MsgUpdateClient\nMsgUpdateClient defines an sdk.Msg to update a IBC client state using\nthe given header.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client unique identifier |\n| `header` | [google.protobuf.Any](#google.protobuf.Any) |  | header to update the light client |\n| `signer` | [string](#string) |  | signer address |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgUpdateClientResponse\"></a>\n\n### MsgUpdateClientResponse\nMsgUpdateClientResponse defines the Msg/UpdateClient response type.\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgUpgradeClient\"></a>\n\n### MsgUpgradeClient\nMsgUpgradeClient defines an sdk.Msg to upgrade an IBC client to a new client state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client unique identifier |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  | upgraded client state |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  | upgraded consensus state, only contains enough information to serve as a basis of trust in update logic |\n| `proof_upgrade_client` | [bytes](#bytes) |  | proof that old chain committed to new client |\n| `proof_upgrade_consensus_state` | [bytes](#bytes) |  | proof that old chain committed to new consensus state |\n| `signer` | [string](#string) |  | signer address |\n\n\n\n\n\n\n<a name=\"ibc.core.client.v1.MsgUpgradeClientResponse\"></a>\n\n### MsgUpgradeClientResponse\nMsgUpgradeClientResponse defines the Msg/UpgradeClient response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.core.client.v1.Msg\"></a>\n\n### Msg\nMsg defines the ibc/client Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreateClient` | [MsgCreateClient](#ibc.core.client.v1.MsgCreateClient) | [MsgCreateClientResponse](#ibc.core.client.v1.MsgCreateClientResponse) | CreateClient defines a rpc handler method for MsgCreateClient. | |\n| `UpdateClient` | [MsgUpdateClient](#ibc.core.client.v1.MsgUpdateClient) | [MsgUpdateClientResponse](#ibc.core.client.v1.MsgUpdateClientResponse) | UpdateClient defines a rpc handler method for MsgUpdateClient. | |\n| `UpgradeClient` | [MsgUpgradeClient](#ibc.core.client.v1.MsgUpgradeClient) | [MsgUpgradeClientResponse](#ibc.core.client.v1.MsgUpgradeClientResponse) | UpgradeClient defines a rpc handler method for MsgUpgradeClient. | |\n| `SubmitMisbehaviour` | [MsgSubmitMisbehaviour](#ibc.core.client.v1.MsgSubmitMisbehaviour) | [MsgSubmitMisbehaviourResponse](#ibc.core.client.v1.MsgSubmitMisbehaviourResponse) | SubmitMisbehaviour defines a rpc handler method for MsgSubmitMisbehaviour. | |\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/commitment/v1/commitment.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/commitment/v1/commitment.proto\n\n\n\n<a name=\"ibc.core.commitment.v1.MerklePath\"></a>\n\n### MerklePath\nMerklePath is the path used to verify commitment proofs, which can be an\narbitrary structured object (defined by a commitment type).\nMerklePath is represented from root-to-leaf\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key_path` | [string](#string) | repeated |  |\n\n\n\n\n\n\n<a name=\"ibc.core.commitment.v1.MerklePrefix\"></a>\n\n### MerklePrefix\nMerklePrefix is merkle path prefixed to the key.\nThe constructed key from the Path and the key will be append(Path.KeyPath,\nappend(Path.KeyPrefix, key...))\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key_prefix` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.commitment.v1.MerkleProof\"></a>\n\n### MerkleProof\nMerkleProof is a wrapper type over a chain of CommitmentProofs.\nIt demonstrates membership or non-membership for an element or set of\nelements, verifiable in conjunction with a known commitment root. Proofs\nshould be succinct.\nMerkleProofs are ordered from leaf-to-root\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `proofs` | [ics23.CommitmentProof](#ics23.CommitmentProof) | repeated |  |\n\n\n\n\n\n\n<a name=\"ibc.core.commitment.v1.MerkleRoot\"></a>\n\n### MerkleRoot\nMerkleRoot defines a merkle root hash.\nIn the Cosmos SDK, the AppHash of a block header becomes the root.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `hash` | [bytes](#bytes) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/connection/v1/connection.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/connection/v1/connection.proto\n\n\n\n<a name=\"ibc.core.connection.v1.ClientPaths\"></a>\n\n### ClientPaths\nClientPaths define all the connection paths for a client state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `paths` | [string](#string) | repeated | list of connection paths |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.ConnectionEnd\"></a>\n\n### ConnectionEnd\nConnectionEnd defines a stateful object on a chain connected to another\nseparate one.\nNOTE: there must only be 2 defined ConnectionEnds to establish\na connection between two chains.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client associated with this connection. |\n| `versions` | [Version](#ibc.core.connection.v1.Version) | repeated | IBC version which can be utilised to determine encodings or protocols for channels or packets utilising this connection. |\n| `state` | [State](#ibc.core.connection.v1.State) |  | current state of the connection end. |\n| `counterparty` | [Counterparty](#ibc.core.connection.v1.Counterparty) |  | counterparty chain associated with this connection. |\n| `delay_period` | [uint64](#uint64) |  | delay period that must pass before a consensus state can be used for packet-verification NOTE: delay period logic is only implemented by some clients. |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.ConnectionPaths\"></a>\n\n### ConnectionPaths\nConnectionPaths define all the connection paths for a given client state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client state unique identifier |\n| `paths` | [string](#string) | repeated | list of connection paths |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.Counterparty\"></a>\n\n### Counterparty\nCounterparty defines the counterparty chain associated with a connection end.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | identifies the client on the counterparty chain associated with a given connection. |\n| `connection_id` | [string](#string) |  | identifies the connection end on the counterparty chain associated with a given connection. |\n| `prefix` | [ibc.core.commitment.v1.MerklePrefix](#ibc.core.commitment.v1.MerklePrefix) |  | commitment merkle prefix of the counterparty chain. |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.IdentifiedConnection\"></a>\n\n### IdentifiedConnection\nIdentifiedConnection defines a connection with additional connection\nidentifier field.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  | connection identifier. |\n| `client_id` | [string](#string) |  | client associated with this connection. |\n| `versions` | [Version](#ibc.core.connection.v1.Version) | repeated | IBC version which can be utilised to determine encodings or protocols for channels or packets utilising this connection |\n| `state` | [State](#ibc.core.connection.v1.State) |  | current state of the connection end. |\n| `counterparty` | [Counterparty](#ibc.core.connection.v1.Counterparty) |  | counterparty chain associated with this connection. |\n| `delay_period` | [uint64](#uint64) |  | delay period associated with this connection. |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.Version\"></a>\n\n### Version\nVersion defines the versioning scheme used to negotiate the IBC verison in\nthe connection handshake.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `identifier` | [string](#string) |  | unique version identifier |\n| `features` | [string](#string) | repeated | list of features compatible with the specified identifier |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"ibc.core.connection.v1.State\"></a>\n\n### State\nState defines if a connection is in one of the following states:\nINIT, TRYOPEN, OPEN or UNINITIALIZED.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| STATE_UNINITIALIZED_UNSPECIFIED | 0 | Default State |\n| STATE_INIT | 1 | A connection end has just started the opening handshake. |\n| STATE_TRYOPEN | 2 | A connection end has acknowledged the handshake step on the counterparty chain. |\n| STATE_OPEN | 3 | A connection end has completed the handshake. |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/connection/v1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/connection/v1/genesis.proto\n\n\n\n<a name=\"ibc.core.connection.v1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the ibc connection submodule's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connections` | [IdentifiedConnection](#ibc.core.connection.v1.IdentifiedConnection) | repeated |  |\n| `client_connection_paths` | [ConnectionPaths](#ibc.core.connection.v1.ConnectionPaths) | repeated |  |\n| `next_connection_sequence` | [uint64](#uint64) |  | the sequence for the next generated connection identifier |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/connection/v1/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/connection/v1/query.proto\n\n\n\n<a name=\"ibc.core.connection.v1.QueryClientConnectionsRequest\"></a>\n\n### QueryClientConnectionsRequest\nQueryClientConnectionsRequest is the request type for the\nQuery/ClientConnections RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  | client identifier associated with a connection |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryClientConnectionsResponse\"></a>\n\n### QueryClientConnectionsResponse\nQueryClientConnectionsResponse is the response type for the\nQuery/ClientConnections RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection_paths` | [string](#string) | repeated | slice of all the connection paths associated with a client. |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was generated |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionClientStateRequest\"></a>\n\n### QueryConnectionClientStateRequest\nQueryConnectionClientStateRequest is the request type for the\nQuery/ConnectionClientState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection_id` | [string](#string) |  | connection identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionClientStateResponse\"></a>\n\n### QueryConnectionClientStateResponse\nQueryConnectionClientStateResponse is the response type for the\nQuery/ConnectionClientState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `identified_client_state` | [ibc.core.client.v1.IdentifiedClientState](#ibc.core.client.v1.IdentifiedClientState) |  | client state associated with the channel |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionConsensusStateRequest\"></a>\n\n### QueryConnectionConsensusStateRequest\nQueryConnectionConsensusStateRequest is the request type for the\nQuery/ConnectionConsensusState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection_id` | [string](#string) |  | connection identifier |\n| `revision_number` | [uint64](#uint64) |  |  |\n| `revision_height` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionConsensusStateResponse\"></a>\n\n### QueryConnectionConsensusStateResponse\nQueryConnectionConsensusStateResponse is the response type for the\nQuery/ConnectionConsensusState RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  | consensus state associated with the channel |\n| `client_id` | [string](#string) |  | client ID associated with the consensus state |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionRequest\"></a>\n\n### QueryConnectionRequest\nQueryConnectionRequest is the request type for the Query/Connection RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection_id` | [string](#string) |  | connection unique identifier |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionResponse\"></a>\n\n### QueryConnectionResponse\nQueryConnectionResponse is the response type for the Query/Connection RPC\nmethod. Besides the connection end, it includes a proof and the height from\nwhich the proof was retrieved.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection` | [ConnectionEnd](#ibc.core.connection.v1.ConnectionEnd) |  | connection associated with the request identifier |\n| `proof` | [bytes](#bytes) |  | merkle proof of existence |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | height at which the proof was retrieved |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionsRequest\"></a>\n\n### QueryConnectionsRequest\nQueryConnectionsRequest is the request type for the Query/Connections RPC\nmethod\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.QueryConnectionsResponse\"></a>\n\n### QueryConnectionsResponse\nQueryConnectionsResponse is the response type for the Query/Connections RPC\nmethod.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connections` | [IdentifiedConnection](#ibc.core.connection.v1.IdentifiedConnection) | repeated | list of stored connections of the chain. |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination response |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | query block height |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.core.connection.v1.Query\"></a>\n\n### Query\nQuery provides defines the gRPC querier service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Connection` | [QueryConnectionRequest](#ibc.core.connection.v1.QueryConnectionRequest) | [QueryConnectionResponse](#ibc.core.connection.v1.QueryConnectionResponse) | Connection queries an IBC connection end. | GET|/ibc/core/connection/v1beta1/connections/{connection_id}|\n| `Connections` | [QueryConnectionsRequest](#ibc.core.connection.v1.QueryConnectionsRequest) | [QueryConnectionsResponse](#ibc.core.connection.v1.QueryConnectionsResponse) | Connections queries all the IBC connections of a chain. | GET|/ibc/core/connection/v1beta1/connections|\n| `ClientConnections` | [QueryClientConnectionsRequest](#ibc.core.connection.v1.QueryClientConnectionsRequest) | [QueryClientConnectionsResponse](#ibc.core.connection.v1.QueryClientConnectionsResponse) | ClientConnections queries the connection paths associated with a client state. | GET|/ibc/core/connection/v1beta1/client_connections/{client_id}|\n| `ConnectionClientState` | [QueryConnectionClientStateRequest](#ibc.core.connection.v1.QueryConnectionClientStateRequest) | [QueryConnectionClientStateResponse](#ibc.core.connection.v1.QueryConnectionClientStateResponse) | ConnectionClientState queries the client state associated with the connection. | GET|/ibc/core/connection/v1beta1/connections/{connection_id}/client_state|\n| `ConnectionConsensusState` | [QueryConnectionConsensusStateRequest](#ibc.core.connection.v1.QueryConnectionConsensusStateRequest) | [QueryConnectionConsensusStateResponse](#ibc.core.connection.v1.QueryConnectionConsensusStateResponse) | ConnectionConsensusState queries the consensus state associated with the connection. | GET|/ibc/core/connection/v1beta1/connections/{connection_id}/consensus_state/revision/{revision_number}/height/{revision_height}|\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/connection/v1/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/connection/v1/tx.proto\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenAck\"></a>\n\n### MsgConnectionOpenAck\nMsgConnectionOpenAck defines a msg sent by a Relayer to Chain A to\nacknowledge the change of connection state to TRYOPEN on Chain B.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection_id` | [string](#string) |  |  |\n| `counterparty_connection_id` | [string](#string) |  |  |\n| `version` | [Version](#ibc.core.connection.v1.Version) |  |  |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `proof_try` | [bytes](#bytes) |  | proof of the initialization the connection on Chain B: `UNITIALIZED -> TRYOPEN` |\n| `proof_client` | [bytes](#bytes) |  | proof of client state included in message |\n| `proof_consensus` | [bytes](#bytes) |  | proof of client consensus state |\n| `consensus_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenAckResponse\"></a>\n\n### MsgConnectionOpenAckResponse\nMsgConnectionOpenAckResponse defines the Msg/ConnectionOpenAck response type.\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenConfirm\"></a>\n\n### MsgConnectionOpenConfirm\nMsgConnectionOpenConfirm defines a msg sent by a Relayer to Chain B to\nacknowledge the change of connection state to OPEN on Chain A.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `connection_id` | [string](#string) |  |  |\n| `proof_ack` | [bytes](#bytes) |  | proof for the change of the connection state on Chain A: `INIT -> OPEN` |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenConfirmResponse\"></a>\n\n### MsgConnectionOpenConfirmResponse\nMsgConnectionOpenConfirmResponse defines the Msg/ConnectionOpenConfirm response type.\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenInit\"></a>\n\n### MsgConnectionOpenInit\nMsgConnectionOpenInit defines the msg sent by an account on Chain A to\ninitialize a connection with Chain B.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  |  |\n| `counterparty` | [Counterparty](#ibc.core.connection.v1.Counterparty) |  |  |\n| `version` | [Version](#ibc.core.connection.v1.Version) |  |  |\n| `delay_period` | [uint64](#uint64) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenInitResponse\"></a>\n\n### MsgConnectionOpenInitResponse\nMsgConnectionOpenInitResponse defines the Msg/ConnectionOpenInit response type.\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenTry\"></a>\n\n### MsgConnectionOpenTry\nMsgConnectionOpenTry defines a msg sent by a Relayer to try to open a\nconnection on Chain B.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  |  |\n| `previous_connection_id` | [string](#string) |  | in the case of crossing hello's, when both chains call OpenInit, we need the connection identifier of the previous connection in state INIT |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `counterparty` | [Counterparty](#ibc.core.connection.v1.Counterparty) |  |  |\n| `delay_period` | [uint64](#uint64) |  |  |\n| `counterparty_versions` | [Version](#ibc.core.connection.v1.Version) | repeated |  |\n| `proof_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `proof_init` | [bytes](#bytes) |  | proof of the initialization the connection on Chain A: `UNITIALIZED -> INIT` |\n| `proof_client` | [bytes](#bytes) |  | proof of client state included in message |\n| `proof_consensus` | [bytes](#bytes) |  | proof of client consensus state |\n| `consensus_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `signer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.core.connection.v1.MsgConnectionOpenTryResponse\"></a>\n\n### MsgConnectionOpenTryResponse\nMsgConnectionOpenTryResponse defines the Msg/ConnectionOpenTry response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"ibc.core.connection.v1.Msg\"></a>\n\n### Msg\nMsg defines the ibc/connection Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `ConnectionOpenInit` | [MsgConnectionOpenInit](#ibc.core.connection.v1.MsgConnectionOpenInit) | [MsgConnectionOpenInitResponse](#ibc.core.connection.v1.MsgConnectionOpenInitResponse) | ConnectionOpenInit defines a rpc handler method for MsgConnectionOpenInit. | |\n| `ConnectionOpenTry` | [MsgConnectionOpenTry](#ibc.core.connection.v1.MsgConnectionOpenTry) | [MsgConnectionOpenTryResponse](#ibc.core.connection.v1.MsgConnectionOpenTryResponse) | ConnectionOpenTry defines a rpc handler method for MsgConnectionOpenTry. | |\n| `ConnectionOpenAck` | [MsgConnectionOpenAck](#ibc.core.connection.v1.MsgConnectionOpenAck) | [MsgConnectionOpenAckResponse](#ibc.core.connection.v1.MsgConnectionOpenAckResponse) | ConnectionOpenAck defines a rpc handler method for MsgConnectionOpenAck. | |\n| `ConnectionOpenConfirm` | [MsgConnectionOpenConfirm](#ibc.core.connection.v1.MsgConnectionOpenConfirm) | [MsgConnectionOpenConfirmResponse](#ibc.core.connection.v1.MsgConnectionOpenConfirmResponse) | ConnectionOpenConfirm defines a rpc handler method for MsgConnectionOpenConfirm. | |\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/core/types/v1/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/core/types/v1/genesis.proto\n\n\n\n<a name=\"ibc.core.types.v1.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the ibc module's genesis state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_genesis` | [ibc.core.client.v1.GenesisState](#ibc.core.client.v1.GenesisState) |  | ICS002 - Clients genesis state |\n| `connection_genesis` | [ibc.core.connection.v1.GenesisState](#ibc.core.connection.v1.GenesisState) |  | ICS003 - Connections genesis state |\n| `channel_genesis` | [ibc.core.channel.v1.GenesisState](#ibc.core.channel.v1.GenesisState) |  | ICS004 - Channel genesis state |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/lightclients/localhost/v1/localhost.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/lightclients/localhost/v1/localhost.proto\n\n\n\n<a name=\"ibc.lightclients.localhost.v1.ClientState\"></a>\n\n### ClientState\nClientState defines a loopback (localhost) client. It requires (read-only)\naccess to keys outside the client prefix.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `chain_id` | [string](#string) |  | self chain ID |\n| `height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | self latest block height |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/lightclients/solomachine/v1/solomachine.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/lightclients/solomachine/v1/solomachine.proto\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.ChannelStateData\"></a>\n\n### ChannelStateData\nChannelStateData returns the SignBytes data for channel state\nverification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `channel` | [ibc.core.channel.v1.Channel](#ibc.core.channel.v1.Channel) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.ClientState\"></a>\n\n### ClientState\nClientState defines a solo machine client that tracks the current consensus\nstate and if the client is frozen.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sequence` | [uint64](#uint64) |  | latest sequence of the client state |\n| `frozen_sequence` | [uint64](#uint64) |  | frozen sequence of the solo machine |\n| `consensus_state` | [ConsensusState](#ibc.lightclients.solomachine.v1.ConsensusState) |  |  |\n| `allow_update_after_proposal` | [bool](#bool) |  | when set to true, will allow governance to update a solo machine client. The client will be unfrozen if it is frozen. |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.ClientStateData\"></a>\n\n### ClientStateData\nClientStateData returns the SignBytes data for client state verification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `client_state` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.ConnectionStateData\"></a>\n\n### ConnectionStateData\nConnectionStateData returns the SignBytes data for connection state\nverification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `connection` | [ibc.core.connection.v1.ConnectionEnd](#ibc.core.connection.v1.ConnectionEnd) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.ConsensusState\"></a>\n\n### ConsensusState\nConsensusState defines a solo machine consensus state. The sequence of a consensus state\nis contained in the \"height\" key used in storing the consensus state.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `public_key` | [google.protobuf.Any](#google.protobuf.Any) |  | public key of the solo machine |\n| `diversifier` | [string](#string) |  | diversifier allows the same public key to be re-used across different solo machine clients (potentially on different chains) without being considered misbehaviour. |\n| `timestamp` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.ConsensusStateData\"></a>\n\n### ConsensusStateData\nConsensusStateData returns the SignBytes data for consensus state\nverification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `consensus_state` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.Header\"></a>\n\n### Header\nHeader defines a solo machine consensus header\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sequence` | [uint64](#uint64) |  | sequence to update solo machine public key at |\n| `timestamp` | [uint64](#uint64) |  |  |\n| `signature` | [bytes](#bytes) |  |  |\n| `new_public_key` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n| `new_diversifier` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.HeaderData\"></a>\n\n### HeaderData\nHeaderData returns the SignBytes data for update verification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `new_pub_key` | [google.protobuf.Any](#google.protobuf.Any) |  | header public key |\n| `new_diversifier` | [string](#string) |  | header diversifier |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.Misbehaviour\"></a>\n\n### Misbehaviour\nMisbehaviour defines misbehaviour for a solo machine which consists\nof a sequence and two signatures over different messages at that sequence.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  |  |\n| `sequence` | [uint64](#uint64) |  |  |\n| `signature_one` | [SignatureAndData](#ibc.lightclients.solomachine.v1.SignatureAndData) |  |  |\n| `signature_two` | [SignatureAndData](#ibc.lightclients.solomachine.v1.SignatureAndData) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.NextSequenceRecvData\"></a>\n\n### NextSequenceRecvData\nNextSequenceRecvData returns the SignBytes data for verification of the next\nsequence to be received.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `next_seq_recv` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.PacketAcknowledgementData\"></a>\n\n### PacketAcknowledgementData\nPacketAcknowledgementData returns the SignBytes data for acknowledgement\nverification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `acknowledgement` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.PacketCommitmentData\"></a>\n\n### PacketCommitmentData\nPacketCommitmentData returns the SignBytes data for packet commitment\nverification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n| `commitment` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.PacketReceiptAbsenceData\"></a>\n\n### PacketReceiptAbsenceData\nPacketReceiptAbsenceData returns the SignBytes data for\npacket receipt absence verification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `path` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.SignBytes\"></a>\n\n### SignBytes\nSignBytes defines the signed bytes used for signature verification.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `sequence` | [uint64](#uint64) |  |  |\n| `timestamp` | [uint64](#uint64) |  |  |\n| `diversifier` | [string](#string) |  |  |\n| `data_type` | [DataType](#ibc.lightclients.solomachine.v1.DataType) |  | type of the data used |\n| `data` | [bytes](#bytes) |  | marshaled data |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.SignatureAndData\"></a>\n\n### SignatureAndData\nSignatureAndData contains a signature and the data signed over to create that\nsignature.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signature` | [bytes](#bytes) |  |  |\n| `data_type` | [DataType](#ibc.lightclients.solomachine.v1.DataType) |  |  |\n| `data` | [bytes](#bytes) |  |  |\n| `timestamp` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.solomachine.v1.TimestampedSignatureData\"></a>\n\n### TimestampedSignatureData\nTimestampedSignatureData contains the signature data and the timestamp of the\nsignature.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signature_data` | [bytes](#bytes) |  |  |\n| `timestamp` | [uint64](#uint64) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"ibc.lightclients.solomachine.v1.DataType\"></a>\n\n### DataType\nDataType defines the type of solo machine proof being created. This is done to preserve uniqueness of different\ndata sign byte encodings.\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| DATA_TYPE_UNINITIALIZED_UNSPECIFIED | 0 | Default State |\n| DATA_TYPE_CLIENT_STATE | 1 | Data type for client state verification |\n| DATA_TYPE_CONSENSUS_STATE | 2 | Data type for consensus state verification |\n| DATA_TYPE_CONNECTION_STATE | 3 | Data type for connection state verification |\n| DATA_TYPE_CHANNEL_STATE | 4 | Data type for channel state verification |\n| DATA_TYPE_PACKET_COMMITMENT | 5 | Data type for packet commitment verification |\n| DATA_TYPE_PACKET_ACKNOWLEDGEMENT | 6 | Data type for packet acknowledgement verification |\n| DATA_TYPE_PACKET_RECEIPT_ABSENCE | 7 | Data type for packet receipt absence verification |\n| DATA_TYPE_NEXT_SEQUENCE_RECV | 8 | Data type for next sequence recv verification |\n| DATA_TYPE_HEADER | 9 | Data type for header verification |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"ibc/lightclients/tendermint/v1/tendermint.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## ibc/lightclients/tendermint/v1/tendermint.proto\n\n\n\n<a name=\"ibc.lightclients.tendermint.v1.ClientState\"></a>\n\n### ClientState\nClientState from Tendermint tracks the current validator set, latest height,\nand a possible frozen height.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `chain_id` | [string](#string) |  |  |\n| `trust_level` | [Fraction](#ibc.lightclients.tendermint.v1.Fraction) |  |  |\n| `trusting_period` | [google.protobuf.Duration](#google.protobuf.Duration) |  | duration of the period since the LastestTimestamp during which the submitted headers are valid for upgrade |\n| `unbonding_period` | [google.protobuf.Duration](#google.protobuf.Duration) |  | duration of the staking unbonding period |\n| `max_clock_drift` | [google.protobuf.Duration](#google.protobuf.Duration) |  | defines how much new (untrusted) header's Time can drift into the future. |\n| `frozen_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | Block height when the client was frozen due to a misbehaviour |\n| `latest_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  | Latest height the client was updated to |\n| `proof_specs` | [ics23.ProofSpec](#ics23.ProofSpec) | repeated | Proof specifications used in verifying counterparty state |\n| `upgrade_path` | [string](#string) | repeated | Path at which next upgraded client will be committed. Each element corresponds to the key for a single CommitmentProof in the chained proof. NOTE: ClientState must stored under `{upgradePath}/{upgradeHeight}/clientState` ConsensusState must be stored under `{upgradepath}/{upgradeHeight}/consensusState` For SDK chains using the default upgrade module, upgrade_path should be []string{\"upgrade\", \"upgradedIBCState\"}` |\n| `allow_update_after_expiry` | [bool](#bool) |  | This flag, when set to true, will allow governance to recover a client which has expired |\n| `allow_update_after_misbehaviour` | [bool](#bool) |  | This flag, when set to true, will allow governance to unfreeze a client whose chain has experienced a misbehaviour event |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.tendermint.v1.ConsensusState\"></a>\n\n### ConsensusState\nConsensusState defines the consensus state from Tendermint.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `timestamp` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | timestamp that corresponds to the block height in which the ConsensusState was stored. |\n| `root` | [ibc.core.commitment.v1.MerkleRoot](#ibc.core.commitment.v1.MerkleRoot) |  | commitment root (i.e app hash) |\n| `next_validators_hash` | [bytes](#bytes) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.tendermint.v1.Fraction\"></a>\n\n### Fraction\nFraction defines the protobuf message type for tmmath.Fraction that only supports positive values.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `numerator` | [uint64](#uint64) |  |  |\n| `denominator` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.tendermint.v1.Header\"></a>\n\n### Header\nHeader defines the Tendermint client consensus Header.\nIt encapsulates all the information necessary to update from a trusted\nTendermint ConsensusState. The inclusion of TrustedHeight and\nTrustedValidators allows this update to process correctly, so long as the\nConsensusState for the TrustedHeight exists, this removes race conditions\namong relayers The SignedHeader and ValidatorSet are the new untrusted update\nfields for the client. The TrustedHeight is the height of a stored\nConsensusState on the client that will be used to verify the new untrusted\nheader. The Trusted ConsensusState must be within the unbonding period of\ncurrent time in order to correctly verify, and the TrustedValidators must\nhash to TrustedConsensusState.NextValidatorsHash since that is the last\ntrusted validator set at the TrustedHeight.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `signed_header` | [tendermint.types.SignedHeader](#tendermint.types.SignedHeader) |  |  |\n| `validator_set` | [tendermint.types.ValidatorSet](#tendermint.types.ValidatorSet) |  |  |\n| `trusted_height` | [ibc.core.client.v1.Height](#ibc.core.client.v1.Height) |  |  |\n| `trusted_validators` | [tendermint.types.ValidatorSet](#tendermint.types.ValidatorSet) |  |  |\n\n\n\n\n\n\n<a name=\"ibc.lightclients.tendermint.v1.Misbehaviour\"></a>\n\n### Misbehaviour\nMisbehaviour is a wrapper over two conflicting Headers\nthat implements Misbehaviour interface expected by ICS-02\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `client_id` | [string](#string) |  |  |\n| `header_1` | [Header](#ibc.lightclients.tendermint.v1.Header) |  |  |\n| `header_2` | [Header](#ibc.lightclients.tendermint.v1.Header) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"mint/mint.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## mint/mint.proto\n\n\n\n<a name=\"irishub.mint.Minter\"></a>\n\n### Minter\nMinter represents the minting state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `last_update` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  | time which the last update was made to the minter |\n| `inflation_base` | [string](#string) |  | base inflation |\n\n\n\n\n\n\n<a name=\"irishub.mint.Params\"></a>\n\n### Params\nParams defines mint module's parameters\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `mint_denom` | [string](#string) |  | type of coin to mint |\n| `inflation` | [string](#string) |  | inflation rate |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"mint/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## mint/genesis.proto\n\n\n\n<a name=\"irishub.mint.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the mint module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `minter` | [Minter](#irishub.mint.Minter) |  |  |\n| `params` | [Params](#irishub.mint.Params) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"mint/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## mint/query.proto\n\n\n\n<a name=\"irishub.mint.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParamsRequest is request type for the Query/Parameters RPC method\n\n\n\n\n\n\n<a name=\"irishub.mint.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParamsResponse is response type for the Query/Parameters RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irishub.mint.Params) |  |  |\n| `res` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irishub.mint.Query\"></a>\n\n### Query\nQuery creates service with guardian as rpc\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Params` | [QueryParamsRequest](#irishub.mint.QueryParamsRequest) | [QueryParamsResponse](#irishub.mint.QueryParamsResponse) | Params queries the mint parameters | GET|/irishub/mint/params|\n\n <!-- end services -->\n\n\n\n<a name=\"nft/nft.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## nft/nft.proto\n\n\n\n<a name=\"irismod.nft.BaseNFT\"></a>\n\n### BaseNFT\nBaseNFT defines a non-fungible token\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `uri` | [string](#string) |  |  |\n| `data` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.Collection\"></a>\n\n### Collection\nCollection defines a type of collection\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [Denom](#irismod.nft.Denom) |  |  |\n| `nfts` | [BaseNFT](#irismod.nft.BaseNFT) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.Denom\"></a>\n\n### Denom\nDenom defines a type of NFT\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `schema` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n| `symbol` | [string](#string) |  |  |\n| `mint_restricted` | [bool](#bool) |  |  |\n| `update_restricted` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.IDCollection\"></a>\n\n### IDCollection\nIDCollection defines a type of collection with specified ID\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_id` | [string](#string) |  |  |\n| `token_ids` | [string](#string) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.Owner\"></a>\n\n### Owner\nOwner defines a type of owner\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `address` | [string](#string) |  |  |\n| `id_collections` | [IDCollection](#irismod.nft.IDCollection) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"nft/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## nft/genesis.proto\n\n\n\n<a name=\"irismod.nft.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the NFT module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `collections` | [Collection](#irismod.nft.Collection) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"nft/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## nft/query.proto\n\n\n\n<a name=\"irismod.nft.QueryCollectionRequest\"></a>\n\n### QueryCollectionRequest\nQueryCollectionRequest is the request type for the Query/Collection RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_id` | [string](#string) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryCollectionResponse\"></a>\n\n### QueryCollectionResponse\nQueryCollectionResponse is the response type for the Query/Collection RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `collection` | [Collection](#irismod.nft.Collection) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryDenomRequest\"></a>\n\n### QueryDenomRequest\nQueryDenomRequest is the request type for the Query/Denom RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryDenomResponse\"></a>\n\n### QueryDenomResponse\nQueryDenomResponse is the response type for the Query/Denom RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [Denom](#irismod.nft.Denom) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryDenomsRequest\"></a>\n\n### QueryDenomsRequest\nQueryDenomsRequest is the request type for the Query/Denoms RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryDenomsResponse\"></a>\n\n### QueryDenomsResponse\nQueryDenomsResponse is the response type for the Query/Denoms RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denoms` | [Denom](#irismod.nft.Denom) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryNFTRequest\"></a>\n\n### QueryNFTRequest\nQueryNFTRequest is the request type for the Query/NFT RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_id` | [string](#string) |  |  |\n| `token_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryNFTResponse\"></a>\n\n### QueryNFTResponse\nQueryNFTResponse is the response type for the Query/NFT RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `nft` | [BaseNFT](#irismod.nft.BaseNFT) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryOwnerRequest\"></a>\n\n### QueryOwnerRequest\nQueryOwnerRequest is the request type for the Query/Owner RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_id` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"irismod.nft.QueryOwnerResponse\"></a>\n\n### QueryOwnerResponse\nQueryOwnerResponse is the response type for the Query/Owner RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `owner` | [Owner](#irismod.nft.Owner) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QuerySupplyRequest\"></a>\n\n### QuerySupplyRequest\nQuerySupplyRequest is the request type for the Query/HTLC RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom_id` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.QuerySupplyResponse\"></a>\n\n### QuerySupplyResponse\nQuerySupplyResponse is the response type for the Query/Supply RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `amount` | [uint64](#uint64) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.nft.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service for NFT module\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Supply` | [QuerySupplyRequest](#irismod.nft.QuerySupplyRequest) | [QuerySupplyResponse](#irismod.nft.QuerySupplyResponse) | Supply queries the total supply of a given denom or owner | GET|/irismod/nft/collections/{denom_id}/supply|\n| `Owner` | [QueryOwnerRequest](#irismod.nft.QueryOwnerRequest) | [QueryOwnerResponse](#irismod.nft.QueryOwnerResponse) | Owner queries the NFTs of the specified owner | GET|/irismod/nft/nfts|\n| `Collection` | [QueryCollectionRequest](#irismod.nft.QueryCollectionRequest) | [QueryCollectionResponse](#irismod.nft.QueryCollectionResponse) | Collection queries the NFTs of the specified denom | GET|/irismod/nft/collections/{denom_id}|\n| `Denom` | [QueryDenomRequest](#irismod.nft.QueryDenomRequest) | [QueryDenomResponse](#irismod.nft.QueryDenomResponse) | Denom queries the definition of a given denom | GET|/irismod/nft/denoms/{denom_id}|\n| `Denoms` | [QueryDenomsRequest](#irismod.nft.QueryDenomsRequest) | [QueryDenomsResponse](#irismod.nft.QueryDenomsResponse) | Denoms queries all the denoms | GET|/irismod/nft/denoms|\n| `NFT` | [QueryNFTRequest](#irismod.nft.QueryNFTRequest) | [QueryNFTResponse](#irismod.nft.QueryNFTResponse) | NFT queries the NFT for the given denom and token ID | GET|/irismod/nft/nfts/{denom_id}/{token_id}|\n\n <!-- end services -->\n\n\n\n<a name=\"nft/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## nft/tx.proto\n\n\n\n<a name=\"irismod.nft.MsgBurnNFT\"></a>\n\n### MsgBurnNFT\nMsgBurnNFT defines an SDK message for burning a NFT.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `denom_id` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgBurnNFTResponse\"></a>\n\n### MsgBurnNFTResponse\nMsgBurnNFTResponse defines the Msg/BurnNFT response type.\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgEditNFT\"></a>\n\n### MsgEditNFT\nMsgEditNFT defines an SDK message for editing a nft.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `denom_id` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `uri` | [string](#string) |  |  |\n| `data` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgEditNFTResponse\"></a>\n\n### MsgEditNFTResponse\nMsgEditNFTResponse defines the Msg/EditNFT response type.\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgIssueDenom\"></a>\n\n### MsgIssueDenom\nMsgIssueDenom defines an SDK message for creating a new denom.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `schema` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n| `symbol` | [string](#string) |  |  |\n| `mint_restricted` | [bool](#bool) |  |  |\n| `update_restricted` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgIssueDenomResponse\"></a>\n\n### MsgIssueDenomResponse\nMsgIssueDenomResponse defines the Msg/IssueDenom response type.\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgMintNFT\"></a>\n\n### MsgMintNFT\nMsgMintNFT defines an SDK message for creating a new NFT.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `denom_id` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `uri` | [string](#string) |  |  |\n| `data` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n| `recipient` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgMintNFTResponse\"></a>\n\n### MsgMintNFTResponse\nMsgMintNFTResponse defines the Msg/MintNFT response type.\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgTransferDenom\"></a>\n\n### MsgTransferDenom\nMsgTransferDenom defines an SDK message for transferring an denom to recipient.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n| `recipient` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgTransferDenomResponse\"></a>\n\n### MsgTransferDenomResponse\nMsgTransferDenomResponse defines the Msg/TransferDenom response type.\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgTransferNFT\"></a>\n\n### MsgTransferNFT\nMsgTransferNFT defines an SDK message for transferring an NFT to recipient.\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `denom_id` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `uri` | [string](#string) |  |  |\n| `data` | [string](#string) |  |  |\n| `sender` | [string](#string) |  |  |\n| `recipient` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.nft.MsgTransferNFTResponse\"></a>\n\n### MsgTransferNFTResponse\nMsgTransferNFTResponse defines the Msg/TransferNFT response type.\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.nft.Msg\"></a>\n\n### Msg\nMsg defines the nft Msg service.\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `IssueDenom` | [MsgIssueDenom](#irismod.nft.MsgIssueDenom) | [MsgIssueDenomResponse](#irismod.nft.MsgIssueDenomResponse) | IssueDenom defines a method for issue a denom. | |\n| `MintNFT` | [MsgMintNFT](#irismod.nft.MsgMintNFT) | [MsgMintNFTResponse](#irismod.nft.MsgMintNFTResponse) | MintNFT defines a method for mint a new nft | |\n| `EditNFT` | [MsgEditNFT](#irismod.nft.MsgEditNFT) | [MsgEditNFTResponse](#irismod.nft.MsgEditNFTResponse) | RefundHTLC defines a method for editing a nft. | |\n| `TransferNFT` | [MsgTransferNFT](#irismod.nft.MsgTransferNFT) | [MsgTransferNFTResponse](#irismod.nft.MsgTransferNFTResponse) | TransferNFT defines a method for transferring a nft. | |\n| `BurnNFT` | [MsgBurnNFT](#irismod.nft.MsgBurnNFT) | [MsgBurnNFTResponse](#irismod.nft.MsgBurnNFTResponse) | BurnNFT defines a method for burning a nft. | |\n| `TransferDenom` | [MsgTransferDenom](#irismod.nft.MsgTransferDenom) | [MsgTransferDenomResponse](#irismod.nft.MsgTransferDenomResponse) | TransferDenom defines a method for transferring a denom. | |\n\n <!-- end services -->\n\n\n\n<a name=\"oracle/oracle.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## oracle/oracle.proto\n\n\n\n<a name=\"irismod.oracle.Feed\"></a>\n\n### Feed\nFeed defines the feed standard\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `aggregate_func` | [string](#string) |  |  |\n| `value_json_path` | [string](#string) |  |  |\n| `latest_history` | [uint64](#uint64) |  |  |\n| `request_context_id` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.FeedValue\"></a>\n\n### FeedValue\nFeedValue defines the feed result standard\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `data` | [string](#string) |  |  |\n| `timestamp` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"service/service.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## service/service.proto\n\n\n\n<a name=\"irismod.service.CompactRequest\"></a>\n\n### CompactRequest\nCompactRequest defines a standard for compact request\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `request_context_batch_counter` | [uint64](#uint64) |  |  |\n| `provider` | [string](#string) |  |  |\n| `service_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `request_height` | [int64](#int64) |  |  |\n| `expiration_height` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.Params\"></a>\n\n### Params\nParams defines service module's parameters\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `max_request_timeout` | [int64](#int64) |  |  |\n| `min_deposit_multiple` | [int64](#int64) |  |  |\n| `min_deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `service_fee_tax` | [string](#string) |  |  |\n| `slash_fraction` | [string](#string) |  |  |\n| `complaint_retrospect` | [google.protobuf.Duration](#google.protobuf.Duration) |  |  |\n| `arbitration_time_limit` | [google.protobuf.Duration](#google.protobuf.Duration) |  |  |\n| `tx_size_limit` | [uint64](#uint64) |  |  |\n| `base_denom` | [string](#string) |  |  |\n| `restricted_service_fee_denom` | [bool](#bool) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.Pricing\"></a>\n\n### Pricing\nPricing defines a standard for service pricing\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `promotions_by_time` | [PromotionByTime](#irismod.service.PromotionByTime) | repeated |  |\n| `promotions_by_volume` | [PromotionByVolume](#irismod.service.PromotionByVolume) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.service.PromotionByTime\"></a>\n\n### PromotionByTime\nPromotionByTime defines a standard for service promotion by time\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `start_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `end_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `discount` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.PromotionByVolume\"></a>\n\n### PromotionByVolume\nPromotionByVolume defines a standard for service promotion by volume\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `volume` | [uint64](#uint64) |  |  |\n| `discount` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.Request\"></a>\n\n### Request\nRequest defines a standard for request\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `consumer` | [string](#string) |  |  |\n| `input` | [string](#string) |  |  |\n| `service_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `request_height` | [int64](#int64) |  |  |\n| `expiration_height` | [int64](#int64) |  |  |\n| `request_context_id` | [string](#string) |  |  |\n| `request_context_batch_counter` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.RequestContext\"></a>\n\n### RequestContext\nRequestContext defines a standard for request context\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `providers` | [string](#string) | repeated |  |\n| `consumer` | [string](#string) |  |  |\n| `input` | [string](#string) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `module_name` | [string](#string) |  |  |\n| `timeout` | [int64](#int64) |  |  |\n| `repeated` | [bool](#bool) |  |  |\n| `repeated_frequency` | [uint64](#uint64) |  |  |\n| `repeated_total` | [int64](#int64) |  |  |\n| `batch_counter` | [uint64](#uint64) |  |  |\n| `batch_request_count` | [uint32](#uint32) |  |  |\n| `batch_response_count` | [uint32](#uint32) |  |  |\n| `batch_response_threshold` | [uint32](#uint32) |  |  |\n| `response_threshold` | [uint32](#uint32) |  |  |\n| `batch_state` | [RequestContextBatchState](#irismod.service.RequestContextBatchState) |  |  |\n| `state` | [RequestContextState](#irismod.service.RequestContextState) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.Response\"></a>\n\n### Response\nResponse defines a standard for response\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `provider` | [string](#string) |  |  |\n| `consumer` | [string](#string) |  |  |\n| `result` | [string](#string) |  |  |\n| `output` | [string](#string) |  |  |\n| `request_context_id` | [string](#string) |  |  |\n| `request_context_batch_counter` | [uint64](#uint64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.ServiceBinding\"></a>\n\n### ServiceBinding\nServiceBinding defines a standard for service binding\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `pricing` | [string](#string) |  |  |\n| `qos` | [uint64](#uint64) |  |  |\n| `options` | [string](#string) |  |  |\n| `available` | [bool](#bool) |  |  |\n| `disabled_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.ServiceDefinition\"></a>\n\n### ServiceDefinition\nServiceDefinition defines a standard for service definition\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `tags` | [string](#string) | repeated |  |\n| `author` | [string](#string) |  |  |\n| `author_description` | [string](#string) |  |  |\n| `schemas` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n\n<a name=\"irismod.service.RequestContextBatchState\"></a>\n\n### RequestContextBatchState\nRequestContextBatchState is a type alias that represents a request batch status as a byte\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| BATCH_RUNNING | 0 | BATCH_RUNNING defines the running batch status. |\n| BATCH_COMPLETED | 1 | BATCH_COMPLETED defines the completed batch status. |\n\n\n\n<a name=\"irismod.service.RequestContextState\"></a>\n\n### RequestContextState\nRequestContextState is a type alias that represents a request status as a byte\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n| RUNNING | 0 | RUNNING defines the running request context status |\n| PAUSED | 1 | PAUSED defines the paused request context status |\n| COMPLETED | 2 | COMPLETED defines the completed request context status |\n\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"oracle/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## oracle/genesis.proto\n\n\n\n<a name=\"irismod.oracle.FeedEntry\"></a>\n\n### FeedEntry\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed` | [Feed](#irismod.oracle.Feed) |  |  |\n| `state` | [irismod.service.RequestContextState](#irismod.service.RequestContextState) |  |  |\n| `values` | [FeedValue](#irismod.oracle.FeedValue) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the oracle module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `entries` | [FeedEntry](#irismod.oracle.FeedEntry) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"oracle/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## oracle/query.proto\n\n\n\n<a name=\"irismod.oracle.FeedContext\"></a>\n\n### FeedContext\nFeedContext defines the feed context struct\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed` | [Feed](#irismod.oracle.Feed) |  |  |\n| `service_name` | [string](#string) |  |  |\n| `providers` | [string](#string) | repeated |  |\n| `input` | [string](#string) |  |  |\n| `timeout` | [int64](#int64) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `repeated_frequency` | [uint64](#uint64) |  |  |\n| `response_threshold` | [uint32](#uint32) |  |  |\n| `state` | [irismod.service.RequestContextState](#irismod.service.RequestContextState) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.QueryFeedRequest\"></a>\n\n### QueryFeedRequest\nQueryFeedRequest is request type for the Query/Feed RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.QueryFeedResponse\"></a>\n\n### QueryFeedResponse\nQueryFeedResponse is response type for the Query/Feed RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed` | [FeedContext](#irismod.oracle.FeedContext) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.QueryFeedValueRequest\"></a>\n\n### QueryFeedValueRequest\nQueryFeedValueRequest is request type for the Query/FeedValue RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.QueryFeedValueResponse\"></a>\n\n### QueryFeedValueResponse\nQueryFeedValueResponse is response type for the Query/FeedValue RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_values` | [FeedValue](#irismod.oracle.FeedValue) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.QueryFeedsRequest\"></a>\n\n### QueryFeedsRequest\nQueryFeedsRequest is request type for the Query/Feeds RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `state` | [string](#string) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request |\n\n\n\n\n\n\n<a name=\"irismod.oracle.QueryFeedsResponse\"></a>\n\n### QueryFeedsResponse\nQueryFeedsResponse is response type for the Query/Feeds RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feeds` | [FeedContext](#irismod.oracle.FeedContext) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  | pagination defines an optional pagination for the request |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.oracle.Query\"></a>\n\n### Query\nQuery creates service with guardian as rpc\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Feed` | [QueryFeedRequest](#irismod.oracle.QueryFeedRequest) | [QueryFeedResponse](#irismod.oracle.QueryFeedResponse) | Feed queries the feed | GET|/irismod/oracle/feeds/{feed_name}|\n| `Feeds` | [QueryFeedsRequest](#irismod.oracle.QueryFeedsRequest) | [QueryFeedsResponse](#irismod.oracle.QueryFeedsResponse) | Feeds queries the feed list | GET|/irismod/oracle/feeds|\n| `FeedValue` | [QueryFeedValueRequest](#irismod.oracle.QueryFeedValueRequest) | [QueryFeedValueResponse](#irismod.oracle.QueryFeedValueResponse) | FeedValue queries the feed value | GET|/irismod/oracle/feeds/{feed_name}/values|\n\n <!-- end services -->\n\n\n\n<a name=\"oracle/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## oracle/tx.proto\n\n\n\n<a name=\"irismod.oracle.MsgCreateFeed\"></a>\n\n### MsgCreateFeed\nMsgCreateFeed defines an sdk.Msg type that supports creating a feed\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n| `latest_history` | [uint64](#uint64) |  |  |\n| `description` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n| `service_name` | [string](#string) |  |  |\n| `providers` | [string](#string) | repeated |  |\n| `input` | [string](#string) |  |  |\n| `timeout` | [int64](#int64) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `repeated_frequency` | [uint64](#uint64) |  |  |\n| `aggregate_func` | [string](#string) |  |  |\n| `value_json_path` | [string](#string) |  |  |\n| `response_threshold` | [uint32](#uint32) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgCreateFeedResponse\"></a>\n\n### MsgCreateFeedResponse\nMsgCreateFeedResponse defines the Msg/CreateFeed response type\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgEditFeed\"></a>\n\n### MsgEditFeed\nMsgEditFeed defines an sdk.Msg type that supports editing a feed\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `latest_history` | [uint64](#uint64) |  |  |\n| `providers` | [string](#string) | repeated |  |\n| `timeout` | [int64](#int64) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `repeated_frequency` | [uint64](#uint64) |  |  |\n| `response_threshold` | [uint32](#uint32) |  |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgEditFeedResponse\"></a>\n\n### MsgEditFeedResponse\nMsgEditFeedResponse defines the Msg/EditFeed response type\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgPauseFeed\"></a>\n\n### MsgPauseFeed\nMsgPauseFeed defines an sdk.Msg type that supports pausing a feed\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgPauseFeedResponse\"></a>\n\n### MsgPauseFeedResponse\nMsgPauseFeedResponse defines the Msg/PauseFeed response type\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgStartFeed\"></a>\n\n### MsgStartFeed\nMsgPauseFeed defines an sdk.Msg type that supports stating a feed\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `feed_name` | [string](#string) |  |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.oracle.MsgStartFeedResponse\"></a>\n\n### MsgStartFeedResponse\nMsgStartFeedResponse defines the Msg/StartFeed response type\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.oracle.Msg\"></a>\n\n### Msg\nMsg defines the oracle Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreateFeed` | [MsgCreateFeed](#irismod.oracle.MsgCreateFeed) | [MsgCreateFeedResponse](#irismod.oracle.MsgCreateFeedResponse) | CreateFeed defines a method for creating a new feed | |\n| `EditFeed` | [MsgEditFeed](#irismod.oracle.MsgEditFeed) | [MsgEditFeedResponse](#irismod.oracle.MsgEditFeedResponse) | EditFeed defines a method for editing a feed | |\n| `StartFeed` | [MsgStartFeed](#irismod.oracle.MsgStartFeed) | [MsgStartFeedResponse](#irismod.oracle.MsgStartFeedResponse) | StartFeed defines a method for starting a feed | |\n| `PauseFeed` | [MsgPauseFeed](#irismod.oracle.MsgPauseFeed) | [MsgPauseFeedResponse](#irismod.oracle.MsgPauseFeedResponse) | PauseFeed defines a method for pausing a feed | |\n\n <!-- end services -->\n\n\n\n<a name=\"random/random.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## random/random.proto\n\n\n\n<a name=\"irismod.random.Random\"></a>\n\n### Random\nRandom defines the feed standard\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_tx_hash` | [string](#string) |  |  |\n| `height` | [int64](#int64) |  |  |\n| `value` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.random.Request\"></a>\n\n### Request\nRequest defines the random request standard\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  |  |\n| `consumer` | [string](#string) |  |  |\n| `tx_hash` | [string](#string) |  |  |\n| `oracle` | [bool](#bool) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `service_context_id` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"random/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## random/genesis.proto\n\n\n\n<a name=\"irismod.random.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the random module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `pending_random_requests` | [GenesisState.PendingRandomRequestsEntry](#irismod.random.GenesisState.PendingRandomRequestsEntry) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.random.GenesisState.PendingRandomRequestsEntry\"></a>\n\n### GenesisState.PendingRandomRequestsEntry\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [string](#string) |  |  |\n| `value` | [Requests](#irismod.random.Requests) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.random.Requests\"></a>\n\n### Requests\nRequests defines the random requests\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `requests` | [Request](#irismod.random.Request) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"random/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## random/query.proto\n\n\n\n<a name=\"irismod.random.QueryRandomRequest\"></a>\n\n### QueryRandomRequest\nQueryRandomRequest is request type for the Query/Random RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `req_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.random.QueryRandomRequestQueueRequest\"></a>\n\n### QueryRandomRequestQueueRequest\nQueryRandomRequestQueueRequest is request type for the Query/RandomRequestQueue RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `height` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.random.QueryRandomRequestQueueResponse\"></a>\n\n### QueryRandomRequestQueueResponse\nQueryRandomRequestQueueResponse is response type for the Query/RandomRequestQueue RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `requests` | [Request](#irismod.random.Request) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.random.QueryRandomResponse\"></a>\n\n### QueryRandomResponse\nQueryParametersResponse is response type for the Query/Random RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `random` | [Random](#irismod.random.Random) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.random.Query\"></a>\n\n### Query\nQuery creates service with guardian as rpc\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Random` | [QueryRandomRequest](#irismod.random.QueryRandomRequest) | [QueryRandomResponse](#irismod.random.QueryRandomResponse) | Random queries the random result | GET|/irismod/random/randoms/{req_id}|\n| `RandomRequestQueue` | [QueryRandomRequestQueueRequest](#irismod.random.QueryRandomRequestQueueRequest) | [QueryRandomRequestQueueResponse](#irismod.random.QueryRandomRequestQueueResponse) | RandomRequestQueue queries the random request queue | GET|/irismod/random/queue|\n\n <!-- end services -->\n\n\n\n<a name=\"random/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## random/tx.proto\n\n\n\n<a name=\"irismod.random.MsgRequestRandom\"></a>\n\n### MsgRequestRandom\nMsgRequestRandom defines an sdk.Msg type that supports requesting a random number\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `block_interval` | [uint64](#uint64) |  |  |\n| `consumer` | [string](#string) |  |  |\n| `oracle` | [bool](#bool) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.random.MsgRequestRandomResponse\"></a>\n\n### MsgRequestRandomResponse\nMsgRequestRandomResponse defines the Msg/RequestRandom response type\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.random.Msg\"></a>\n\n### Msg\nMsg defines the oracle Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `RequestRandom` | [MsgRequestRandom](#irismod.random.MsgRequestRandom) | [MsgRequestRandomResponse](#irismod.random.MsgRequestRandomResponse) | RequestRandom defines a method for requesting a new random number | |\n\n <!-- end services -->\n\n\n\n<a name=\"record/record.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## record/record.proto\n\n\n\n<a name=\"irismod.record.Content\"></a>\n\n### Content\nContent defines the detailed information for a record\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `digest` | [string](#string) |  |  |\n| `digest_algo` | [string](#string) |  |  |\n| `uri` | [string](#string) |  |  |\n| `meta` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.record.Record\"></a>\n\n### Record\nRecord defines the record standard\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `tx_hash` | [string](#string) |  |  |\n| `contents` | [Content](#irismod.record.Content) | repeated |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"record/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## record/genesis.proto\n\n\n\n<a name=\"irismod.record.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the record module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `records` | [Record](#irismod.record.Record) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"record/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## record/query.proto\n\n\n\n<a name=\"irismod.record.QueryRecordRequest\"></a>\n\n### QueryRecordRequest\nQueryRecordRequest is the request type for the Query/Record RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `record_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.record.QueryRecordResponse\"></a>\n\n### QueryRecordResponse\nQueryRecordResponse is the response type for the Query/Record RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `record` | [Record](#irismod.record.Record) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.record.Query\"></a>\n\n### Query\nQuery defines the gRPC querier service for record module\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Record` | [QueryRecordRequest](#irismod.record.QueryRecordRequest) | [QueryRecordResponse](#irismod.record.QueryRecordResponse) | Record queries the record by the given record ID | GET|/irismod/record/records/{record_id}|\n\n <!-- end services -->\n\n\n\n<a name=\"record/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## record/tx.proto\n\n\n\n<a name=\"irismod.record.MsgCreateRecord\"></a>\n\n### MsgCreateRecord\nMsgCreateRecord defines an SDK message for creating a new record\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `contents` | [Content](#irismod.record.Content) | repeated |  |\n| `creator` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.record.MsgCreateRecordResponse\"></a>\n\n### MsgCreateRecordResponse\nMsgCreateRecordResponse defines the Msg/CreateRecord response type\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `id` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.record.Msg\"></a>\n\n### Msg\nMsg defines the oracle Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `CreateRecord` | [MsgCreateRecord](#irismod.record.MsgCreateRecord) | [MsgCreateRecordResponse](#irismod.record.MsgCreateRecordResponse) | CreateRecord defines a method for creating a new record | |\n\n <!-- end services -->\n\n\n\n<a name=\"service/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## service/genesis.proto\n\n\n\n<a name=\"irismod.service.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the service module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.service.Params) |  |  |\n| `definitions` | [ServiceDefinition](#irismod.service.ServiceDefinition) | repeated |  |\n| `bindings` | [ServiceBinding](#irismod.service.ServiceBinding) | repeated |  |\n| `withdraw_addresses` | [GenesisState.WithdrawAddressesEntry](#irismod.service.GenesisState.WithdrawAddressesEntry) | repeated |  |\n| `request_contexts` | [GenesisState.RequestContextsEntry](#irismod.service.GenesisState.RequestContextsEntry) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.service.GenesisState.RequestContextsEntry\"></a>\n\n### GenesisState.RequestContextsEntry\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [string](#string) |  |  |\n| `value` | [RequestContext](#irismod.service.RequestContext) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.GenesisState.WithdrawAddressesEntry\"></a>\n\n### GenesisState.WithdrawAddressesEntry\n\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `key` | [string](#string) |  |  |\n| `value` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"service/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## service/query.proto\n\n\n\n<a name=\"irismod.service.QueryBindingRequest\"></a>\n\n### QueryBindingRequest\nQueryBindingRequest is request type for the Query/Binding RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryBindingResponse\"></a>\n\n### QueryBindingResponse\nQueryDefinitionResponse is response type for the Query/Binding RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_binding` | [ServiceBinding](#irismod.service.ServiceBinding) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryBindingsRequest\"></a>\n\n### QueryBindingsRequest\nQueryBindingsRequest is request type for the Query/Bindings RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryBindingsResponse\"></a>\n\n### QueryBindingsResponse\nQueryDefinitionsResponse is response type for the Query/Bindings RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_bindings` | [ServiceBinding](#irismod.service.ServiceBinding) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryDefinitionRequest\"></a>\n\n### QueryDefinitionRequest\nQueryDefinitionRequest is request type for the Query/Definition RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryDefinitionResponse\"></a>\n\n### QueryDefinitionResponse\nQueryDefinitionResponse is response type for the Query/Definition RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_definition` | [ServiceDefinition](#irismod.service.ServiceDefinition) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryEarnedFeesRequest\"></a>\n\n### QueryEarnedFeesRequest\nQueryEarnedFeesRequest is request type for the Query/EarnedFees RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `provider` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryEarnedFeesResponse\"></a>\n\n### QueryEarnedFeesResponse\nQueryEarnedFeesResponse is response type for the Query/EarnedFees RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `fees` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParametersRequest is request type for the Query/Parameters RPC method\n\n\n\n\n\n\n<a name=\"irismod.service.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParametersResponse is response type for the Query/Parameters RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.service.Params) |  |  |\n| `res` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestContextRequest\"></a>\n\n### QueryRequestContextRequest\nQueryRequestContextRequest is request type for the Query/RequestContext RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestContextResponse\"></a>\n\n### QueryRequestContextResponse\nQueryRequestContextResponse is response type for the Query/RequestContext RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context` | [RequestContext](#irismod.service.RequestContext) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestRequest\"></a>\n\n### QueryRequestRequest\nQueryRequestRequest is request type for the Query/Request RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestResponse\"></a>\n\n### QueryRequestResponse\nQueryRequestResponse is response type for the Query/Request RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request` | [Request](#irismod.service.Request) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestsByReqCtxRequest\"></a>\n\n### QueryRequestsByReqCtxRequest\nQueryRequestsByReqCtxRequest is request type for the Query/RequestsByReqCtx RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `batch_counter` | [uint64](#uint64) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestsByReqCtxResponse\"></a>\n\n### QueryRequestsByReqCtxResponse\nQueryRequestsByReqCtxResponse is response type for the Query/RequestsByReqCtx RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `requests` | [Request](#irismod.service.Request) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestsRequest\"></a>\n\n### QueryRequestsRequest\nQueryRequestsRequest is request type for the Query/Requests RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryRequestsResponse\"></a>\n\n### QueryRequestsResponse\nQueryRequestsResponse is response type for the Query/Requests RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `requests` | [Request](#irismod.service.Request) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryResponseRequest\"></a>\n\n### QueryResponseRequest\nQueryResponseRequest is request type for the Query/Response RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryResponseResponse\"></a>\n\n### QueryResponseResponse\nQueryResponseResponse is response type for the Query/Response RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `response` | [Response](#irismod.service.Response) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryResponsesRequest\"></a>\n\n### QueryResponsesRequest\nQueryResponsesRequest is request type for the Query/Responses RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `batch_counter` | [uint64](#uint64) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryResponsesResponse\"></a>\n\n### QueryResponsesResponse\nQueryResponsesResponse is response type for the Query/Responses RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `responses` | [Response](#irismod.service.Response) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QuerySchemaRequest\"></a>\n\n### QuerySchemaRequest\nQuerySchemaRequest is request type for the Query/Schema RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `schema_name` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QuerySchemaResponse\"></a>\n\n### QuerySchemaResponse\nQuerySchemaResponse is response type for the Query/Schema RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `schema` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryWithdrawAddressRequest\"></a>\n\n### QueryWithdrawAddressRequest\nQueryWithdrawAddressRequest is request type for the Query/WithdrawAddress RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.QueryWithdrawAddressResponse\"></a>\n\n### QueryWithdrawAddressResponse\nQueryWithdrawAddressResponse is response type for the Query/WithdrawAddress RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `withdraw_address` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.service.Query\"></a>\n\n### Query\nQuery creates service with iservice as rpc\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Definition` | [QueryDefinitionRequest](#irismod.service.QueryDefinitionRequest) | [QueryDefinitionResponse](#irismod.service.QueryDefinitionResponse) | Definition returns service definition | GET|/irismod/service/definitions/{service_name}|\n| `Binding` | [QueryBindingRequest](#irismod.service.QueryBindingRequest) | [QueryBindingResponse](#irismod.service.QueryBindingResponse) | Binding returns service Binding with service name and provider | GET|/irismod/service/bindings/{service_name}/{provider}|\n| `Bindings` | [QueryBindingsRequest](#irismod.service.QueryBindingsRequest) | [QueryBindingsResponse](#irismod.service.QueryBindingsResponse) | Bindings returns all service Bindings with service name and owner | GET|/irismod/service/bindings/{service_name}|\n| `WithdrawAddress` | [QueryWithdrawAddressRequest](#irismod.service.QueryWithdrawAddressRequest) | [QueryWithdrawAddressResponse](#irismod.service.QueryWithdrawAddressResponse) | WithdrawAddress returns the withdraw address of the binding owner | GET|/irismod/service/owners/{owner}/withdraw-address|\n| `RequestContext` | [QueryRequestContextRequest](#irismod.service.QueryRequestContextRequest) | [QueryRequestContextResponse](#irismod.service.QueryRequestContextResponse) | RequestContext returns the request context | GET|/irismod/service/contexts/{request_context_id}|\n| `Request` | [QueryRequestRequest](#irismod.service.QueryRequestRequest) | [QueryRequestResponse](#irismod.service.QueryRequestResponse) | Request returns the request | GET|/irismod/service/requests/{request_id}|\n| `Requests` | [QueryRequestsRequest](#irismod.service.QueryRequestsRequest) | [QueryRequestsResponse](#irismod.service.QueryRequestsResponse) | Request returns all requests of one service with provider | GET|/irismod/service/requests/{service_name}/{provider}|\n| `RequestsByReqCtx` | [QueryRequestsByReqCtxRequest](#irismod.service.QueryRequestsByReqCtxRequest) | [QueryRequestsByReqCtxResponse](#irismod.service.QueryRequestsByReqCtxResponse) | RequestsByReqCtx returns all requests of one service call batch | GET|/irismod/service/requests/{request_context_id}/{batch_counter}|\n| `Response` | [QueryResponseRequest](#irismod.service.QueryResponseRequest) | [QueryResponseResponse](#irismod.service.QueryResponseResponse) | Response returns the response of request | GET|/irismod/service/responses/{request_id}|\n| `Responses` | [QueryResponsesRequest](#irismod.service.QueryResponsesRequest) | [QueryResponsesResponse](#irismod.service.QueryResponsesResponse) | Responses returns all responses of one service call batch | GET|/irismod/service/responses/{request_context_id}/{batch_counter}|\n| `EarnedFees` | [QueryEarnedFeesRequest](#irismod.service.QueryEarnedFeesRequest) | [QueryEarnedFeesResponse](#irismod.service.QueryEarnedFeesResponse) | EarnedFees returns the earned service fee of one provider | GET|/irismod/service/fees/{provider}|\n| `Schema` | [QuerySchemaRequest](#irismod.service.QuerySchemaRequest) | [QuerySchemaResponse](#irismod.service.QuerySchemaResponse) | Schema returns the schema | GET|/irismod/service/schemas/{schema_name}|\n| `Params` | [QueryParamsRequest](#irismod.service.QueryParamsRequest) | [QueryParamsResponse](#irismod.service.QueryParamsResponse) | Params queries the service parameters | GET|/irismod/service/params|\n\n <!-- end services -->\n\n\n\n<a name=\"service/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## service/tx.proto\n\n\n\n<a name=\"irismod.service.MsgBindService\"></a>\n\n### MsgBindService\nMsgBindService defines an SDK message for binding to an existing service\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `pricing` | [string](#string) |  |  |\n| `qos` | [uint64](#uint64) |  |  |\n| `options` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgBindServiceResponse\"></a>\n\n### MsgBindServiceResponse\nMsgBindServiceResponse defines the Msg/BindService response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgCallService\"></a>\n\n### MsgCallService\nMsgCallService defines an SDK message to initiate a service request context\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `providers` | [string](#string) | repeated |  |\n| `consumer` | [string](#string) |  |  |\n| `input` | [string](#string) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `timeout` | [int64](#int64) |  |  |\n| `repeated` | [bool](#bool) |  |  |\n| `repeated_frequency` | [uint64](#uint64) |  |  |\n| `repeated_total` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgCallServiceResponse\"></a>\n\n### MsgCallServiceResponse\nMsgCallServiceResponse defines the Msg/CallService response type\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgDefineService\"></a>\n\n### MsgDefineService\nMsgDefineService defines an SDK message for defining a new service\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `name` | [string](#string) |  |  |\n| `description` | [string](#string) |  |  |\n| `tags` | [string](#string) | repeated |  |\n| `author` | [string](#string) |  |  |\n| `author_description` | [string](#string) |  |  |\n| `schemas` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgDefineServiceResponse\"></a>\n\n### MsgDefineServiceResponse\nMsgDefineServiceResponse defines the Msg/DefineService response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgDisableServiceBinding\"></a>\n\n### MsgDisableServiceBinding\nMsgDisableServiceBinding defines an SDK message to disable a service binding\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgDisableServiceBindingResponse\"></a>\n\n### MsgDisableServiceBindingResponse\nMsgDisableServiceBindingResponse defines the Msg/DisableServiceBinding response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgEnableServiceBinding\"></a>\n\n### MsgEnableServiceBinding\nMsgEnableServiceBinding defines an SDK message to enable a service binding\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgEnableServiceBindingResponse\"></a>\n\n### MsgEnableServiceBindingResponse\nMsgEnableServiceBindingResponse defines the Msg/EnableServiceBinding response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgKillRequestContext\"></a>\n\n### MsgKillRequestContext\nMsgKillRequestContext defines an SDK message to terminate a service request\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `consumer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgKillRequestContextResponse\"></a>\n\n### MsgKillRequestContextResponse\nMsgKillRequestContextResponse defines the Msg/KillRequestContext response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgPauseRequestContext\"></a>\n\n### MsgPauseRequestContext\nMsgPauseRequestContext defines an SDK message to pause a service request\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `consumer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgPauseRequestContextResponse\"></a>\n\n### MsgPauseRequestContextResponse\nMsgPauseRequestContextResponse defines the Msg/PauseRequestContext response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgRefundServiceDeposit\"></a>\n\n### MsgRefundServiceDeposit\nMsgRefundServiceDeposit defines an SDK message to refund deposit from a service binding\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgRefundServiceDepositResponse\"></a>\n\n### MsgRefundServiceDepositResponse\nMsgRefundServiceDepositResponse defines the Msg/RefundServiceDeposit response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgRespondService\"></a>\n\n### MsgRespondService\nMsgRespondService defines an SDK message to respond a service request\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_id` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `result` | [string](#string) |  |  |\n| `output` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgRespondServiceResponse\"></a>\n\n### MsgRespondServiceResponse\nMsgRespondServiceResponse defines the Msg/RespondService response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgSetWithdrawAddress\"></a>\n\n### MsgSetWithdrawAddress\nMsgSetWithdrawAddress defines an SDK message to set the withdrawal address for a provider\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `owner` | [string](#string) |  |  |\n| `withdraw_address` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgSetWithdrawAddressResponse\"></a>\n\n### MsgSetWithdrawAddressResponse\nMsgSetWithdrawAddressResponse defines the Msg/SetWithdrawAddress response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgStartRequestContext\"></a>\n\n### MsgStartRequestContext\nMsgStartRequestContext defines an SDK message to resume a service request\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `consumer` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgStartRequestContextResponse\"></a>\n\n### MsgStartRequestContextResponse\nMsgStartRequestContextResponse defines the Msg/StartRequestContext response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgUpdateRequestContext\"></a>\n\n### MsgUpdateRequestContext\nMsgUpdateRequestContext defines an SDK message to update a service request context\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `request_context_id` | [string](#string) |  |  |\n| `providers` | [string](#string) | repeated |  |\n| `consumer` | [string](#string) |  |  |\n| `service_fee_cap` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `timeout` | [int64](#int64) |  |  |\n| `repeated_frequency` | [uint64](#uint64) |  |  |\n| `repeated_total` | [int64](#int64) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgUpdateRequestContextResponse\"></a>\n\n### MsgUpdateRequestContextResponse\nMsgUpdateRequestContextResponse defines the Msg/UpdateRequestContext response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgUpdateServiceBinding\"></a>\n\n### MsgUpdateServiceBinding\nMsgUpdateServiceBinding defines an SDK message for updating an existing service binding\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `service_name` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n| `deposit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n| `pricing` | [string](#string) |  |  |\n| `qos` | [uint64](#uint64) |  |  |\n| `options` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgUpdateServiceBindingResponse\"></a>\n\n### MsgUpdateServiceBindingResponse\nMsgUpdateServiceBindingResponse defines the Msg/UpdateServiceBinding response type\n\n\n\n\n\n\n<a name=\"irismod.service.MsgWithdrawEarnedFees\"></a>\n\n### MsgWithdrawEarnedFees\nMsgWithdrawEarnedFees defines an SDK message to withdraw the fees earned by the provider or owner\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `owner` | [string](#string) |  |  |\n| `provider` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.service.MsgWithdrawEarnedFeesResponse\"></a>\n\n### MsgWithdrawEarnedFeesResponse\nMsgWithdrawEarnedFeesResponse defines the Msg/WithdrawEarnedFees response type\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.service.Msg\"></a>\n\n### Msg\nMsg defines the oracle Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `DefineService` | [MsgDefineService](#irismod.service.MsgDefineService) | [MsgDefineServiceResponse](#irismod.service.MsgDefineServiceResponse) | DefineService defines a method for define a new service | |\n| `BindService` | [MsgBindService](#irismod.service.MsgBindService) | [MsgBindServiceResponse](#irismod.service.MsgBindServiceResponse) | BindService defines a method for bind a server | |\n| `UpdateServiceBinding` | [MsgUpdateServiceBinding](#irismod.service.MsgUpdateServiceBinding) | [MsgUpdateServiceBindingResponse](#irismod.service.MsgUpdateServiceBindingResponse) | UpdateServiceBinding defines a method for update a service binding | |\n| `SetWithdrawAddress` | [MsgSetWithdrawAddress](#irismod.service.MsgSetWithdrawAddress) | [MsgSetWithdrawAddressResponse](#irismod.service.MsgSetWithdrawAddressResponse) | SetWithdrawAddress defines a method for setting a withdraw address | |\n| `EnableServiceBinding` | [MsgEnableServiceBinding](#irismod.service.MsgEnableServiceBinding) | [MsgEnableServiceBindingResponse](#irismod.service.MsgEnableServiceBindingResponse) | EnableServiceBinding defines a method for enabling a service binding | |\n| `DisableServiceBinding` | [MsgDisableServiceBinding](#irismod.service.MsgDisableServiceBinding) | [MsgDisableServiceBindingResponse](#irismod.service.MsgDisableServiceBindingResponse) | DisableServiceBinding defines a method for disabling a service binding | |\n| `RefundServiceDeposit` | [MsgRefundServiceDeposit](#irismod.service.MsgRefundServiceDeposit) | [MsgRefundServiceDepositResponse](#irismod.service.MsgRefundServiceDepositResponse) | RefundServiceDeposit defines a method for refunding a fee | |\n| `CallService` | [MsgCallService](#irismod.service.MsgCallService) | [MsgCallServiceResponse](#irismod.service.MsgCallServiceResponse) | CallService defines a method for calling a service | |\n| `RespondService` | [MsgRespondService](#irismod.service.MsgRespondService) | [MsgRespondServiceResponse](#irismod.service.MsgRespondServiceResponse) | RespondService defines a method for responding a service | |\n| `PauseRequestContext` | [MsgPauseRequestContext](#irismod.service.MsgPauseRequestContext) | [MsgPauseRequestContextResponse](#irismod.service.MsgPauseRequestContextResponse) | PauseRequestContext defines a method for pausing a service call | |\n| `StartRequestContext` | [MsgStartRequestContext](#irismod.service.MsgStartRequestContext) | [MsgStartRequestContextResponse](#irismod.service.MsgStartRequestContextResponse) | StartRequestContext defines a method for starting a service call | |\n| `KillRequestContext` | [MsgKillRequestContext](#irismod.service.MsgKillRequestContext) | [MsgKillRequestContextResponse](#irismod.service.MsgKillRequestContextResponse) | KillRequestContext defines a method for killing a service call | |\n| `UpdateRequestContext` | [MsgUpdateRequestContext](#irismod.service.MsgUpdateRequestContext) | [MsgUpdateRequestContextResponse](#irismod.service.MsgUpdateRequestContextResponse) | UpdateRequestContext defines a method for updating a service call | |\n| `WithdrawEarnedFees` | [MsgWithdrawEarnedFees](#irismod.service.MsgWithdrawEarnedFees) | [MsgWithdrawEarnedFeesResponse](#irismod.service.MsgWithdrawEarnedFeesResponse) | WithdrawEarnedFees defines a method for Withdrawing a earned fees | |\n\n <!-- end services -->\n\n\n\n<a name=\"token/token.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## token/token.proto\n\n\n\n<a name=\"irismod.token.Params\"></a>\n\n### Params\nParams defines token module's parameters\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `token_tax_rate` | [string](#string) |  |  |\n| `issue_token_base_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `mint_token_fee_ratio` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.Token\"></a>\n\n### Token\nToken defines a standard for the fungible token\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `symbol` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `scale` | [uint32](#uint32) |  |  |\n| `min_unit` | [string](#string) |  |  |\n| `initial_supply` | [uint64](#uint64) |  |  |\n| `max_supply` | [uint64](#uint64) |  |  |\n| `mintable` | [bool](#bool) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"token/genesis.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## token/genesis.proto\n\n\n\n<a name=\"irismod.token.GenesisState\"></a>\n\n### GenesisState\nGenesisState defines the token module's genesis state\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.token.Params) |  |  |\n| `tokens` | [Token](#irismod.token.Token) | repeated |  |\n| `burned_coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n <!-- end services -->\n\n\n\n<a name=\"token/query.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## token/query.proto\n\n\n\n<a name=\"irismod.token.QueryFeesRequest\"></a>\n\n### QueryFeesRequest\nQueryFeesRequest is request type for the Query/Fees RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `symbol` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryFeesResponse\"></a>\n\n### QueryFeesResponse\nQueryFeesResponse is response type for the Query/Fees RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `exist` | [bool](#bool) |  |  |\n| `issue_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n| `mint_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryParamsRequest\"></a>\n\n### QueryParamsRequest\nQueryParametersRequest is request type for the Query/Parameters RPC method\n\n\n\n\n\n\n<a name=\"irismod.token.QueryParamsResponse\"></a>\n\n### QueryParamsResponse\nQueryParametersResponse is response type for the Query/Parameters RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `params` | [Params](#irismod.token.Params) |  |  |\n| `res` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryTokenRequest\"></a>\n\n### QueryTokenRequest\nQueryTokenRequest is request type for the Query/Token RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `denom` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryTokenResponse\"></a>\n\n### QueryTokenResponse\nQueryTokenResponse is response type for the Query/Token RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `Token` | [google.protobuf.Any](#google.protobuf.Any) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryTokensRequest\"></a>\n\n### QueryTokensRequest\nQueryTokensRequest is request type for the Query/Tokens RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `owner` | [string](#string) |  |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) |  | pagination defines an optional pagination for the request. |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryTokensResponse\"></a>\n\n### QueryTokensResponse\nQueryTokensResponse is response type for the Query/Tokens RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `Tokens` | [google.protobuf.Any](#google.protobuf.Any) | repeated |  |\n| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.QueryTotalBurnRequest\"></a>\n\n### QueryTotalBurnRequest\nQueryTokenRequest is request type for the Query/TotalBurn RPC method\n\n\n\n\n\n\n<a name=\"irismod.token.QueryTotalBurnResponse\"></a>\n\n### QueryTotalBurnResponse\nQueryTotalBurnResponse is response type for the Query/TotalBurn RPC method\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `burned_coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated |  |\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.token.Query\"></a>\n\n### Query\nQuery creates service with token as RPC\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `Token` | [QueryTokenRequest](#irismod.token.QueryTokenRequest) | [QueryTokenResponse](#irismod.token.QueryTokenResponse) | Token returns token with token name | GET|/irismod/token/tokens/{denom}|\n| `Tokens` | [QueryTokensRequest](#irismod.token.QueryTokensRequest) | [QueryTokensResponse](#irismod.token.QueryTokensResponse) | Tokens returns the token list | GET|/irismod/token/tokens|\n| `Fees` | [QueryFeesRequest](#irismod.token.QueryFeesRequest) | [QueryFeesResponse](#irismod.token.QueryFeesResponse) | Fees returns the fees to issue or mint a token | GET|/irismod/token/tokens/{symbol}/fees|\n| `Params` | [QueryParamsRequest](#irismod.token.QueryParamsRequest) | [QueryParamsResponse](#irismod.token.QueryParamsResponse) | Params queries the token parameters | GET|/irismod/token/params|\n| `TotalBurn` | [QueryTotalBurnRequest](#irismod.token.QueryTotalBurnRequest) | [QueryTotalBurnResponse](#irismod.token.QueryTotalBurnResponse) | TotalBurn queries all the burnt coins | GET|/irismod/token/total_burn|\n\n <!-- end services -->\n\n\n\n<a name=\"token/tx.proto\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## token/tx.proto\n\n\n\n<a name=\"irismod.token.MsgBurnToken\"></a>\n\n### MsgBurnToken\nMsgBurnToken defines an SDK message for burning some tokens\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `symbol` | [string](#string) |  |  |\n| `amount` | [uint64](#uint64) |  |  |\n| `sender` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.MsgBurnTokenResponse\"></a>\n\n### MsgBurnTokenResponse\nMsgBurnTokenResponse defines the Msg/BurnToken response type\n\n\n\n\n\n\n<a name=\"irismod.token.MsgEditToken\"></a>\n\n### MsgEditToken\nMsgEditToken defines an SDK message for editing a new token\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `symbol` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `max_supply` | [uint64](#uint64) |  |  |\n| `mintable` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.MsgEditTokenResponse\"></a>\n\n### MsgEditTokenResponse\nMsgEditTokenResponse defines the Msg/EditToken response type\n\n\n\n\n\n\n<a name=\"irismod.token.MsgIssueToken\"></a>\n\n### MsgIssueToken\nMsgIssueToken defines an SDK message for issuing a new token\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `symbol` | [string](#string) |  |  |\n| `name` | [string](#string) |  |  |\n| `scale` | [uint32](#uint32) |  |  |\n| `min_unit` | [string](#string) |  |  |\n| `initial_supply` | [uint64](#uint64) |  |  |\n| `max_supply` | [uint64](#uint64) |  |  |\n| `mintable` | [bool](#bool) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.MsgIssueTokenResponse\"></a>\n\n### MsgIssueTokenResponse\nMsgIssueTokenResponse defines the Msg/IssueToken response type\n\n\n\n\n\n\n<a name=\"irismod.token.MsgMintToken\"></a>\n\n### MsgMintToken\nMsgMintToken defines an SDK message for minting a new token\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `symbol` | [string](#string) |  |  |\n| `amount` | [uint64](#uint64) |  |  |\n| `to` | [string](#string) |  |  |\n| `owner` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.MsgMintTokenResponse\"></a>\n\n### MsgMintTokenResponse\nMsgMintTokenResponse defines the Msg/MintToken response type\n\n\n\n\n\n\n<a name=\"irismod.token.MsgTransferTokenOwner\"></a>\n\n### MsgTransferTokenOwner\nMsgTransferTokenOwner defines an SDK message for transferring the token owner\n\n\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n| `src_owner` | [string](#string) |  |  |\n| `dst_owner` | [string](#string) |  |  |\n| `symbol` | [string](#string) |  |  |\n\n\n\n\n\n\n<a name=\"irismod.token.MsgTransferTokenOwnerResponse\"></a>\n\n### MsgTransferTokenOwnerResponse\nMsgTransferTokenOwnerResponse defines the Msg/TransferTokenOwner response type\n\n\n\n\n\n <!-- end messages -->\n\n <!-- end enums -->\n\n <!-- end HasExtensions -->\n\n\n<a name=\"irismod.token.Msg\"></a>\n\n### Msg\nMsg defines the oracle Msg service\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n| `IssueToken` | [MsgIssueToken](#irismod.token.MsgIssueToken) | [MsgIssueTokenResponse](#irismod.token.MsgIssueTokenResponse) | IssueToken defines a method for issuing a new token | |\n| `EditToken` | [MsgEditToken](#irismod.token.MsgEditToken) | [MsgEditTokenResponse](#irismod.token.MsgEditTokenResponse) | EditToken defines a method for editing a token | |\n| `MintToken` | [MsgMintToken](#irismod.token.MsgMintToken) | [MsgMintTokenResponse](#irismod.token.MsgMintTokenResponse) | MintToken defines a method for minting some tokens | |\n| `BurnToken` | [MsgBurnToken](#irismod.token.MsgBurnToken) | [MsgBurnTokenResponse](#irismod.token.MsgBurnTokenResponse) | BurnToken defines a method for burning some tokens | |\n| `TransferTokenOwner` | [MsgTransferTokenOwner](#irismod.token.MsgTransferTokenOwner) | [MsgTransferTokenOwnerResponse](#irismod.token.MsgTransferTokenOwnerResponse) | TransferTokenOwner defines a method for minting some tokens | |\n\n <!-- end services -->\n\n\n\n## Scalar Value Types\n\n| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |\n| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- |\n| <a name=\"double\" /> double |  | double | double | float | float64 | double | float | Float |\n| <a name=\"float\" /> float |  | float | float | float | float32 | float | float | Float |\n| <a name=\"int32\" /> int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |\n| <a name=\"int64\" /> int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |\n| <a name=\"uint32\" /> uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |\n| <a name=\"uint64\" /> uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |\n| <a name=\"sint32\" /> sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |\n| <a name=\"sint64\" /> sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |\n| <a name=\"fixed32\" /> fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |\n| <a name=\"fixed64\" /> fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |\n| <a name=\"sfixed32\" /> sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |\n| <a name=\"sfixed64\" /> sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |\n| <a name=\"bool\" /> bool |  | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass |\n| <a name=\"string\" /> string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |\n| <a name=\"bytes\" /> bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |\n\n"
  },
  {
    "path": "docs/endpoints/protodoc-markdown.tmpl",
    "content": "---\norder: 6\n---\n# Protobuf Documentation\n<!-- This file is auto-generated. Please do not modify it yourself. -->\n<a name=\"top\"></a>\n\n## Table of Contents\n{{range .Files}}\n{{$file_name := .Name}}- [{{.Name}}](#{{.Name}})\n  {{- if .Messages }}\n  {{range .Messages}}  - [{{.LongName}}](#{{.FullName}})\n  {{end}}\n  {{- end -}}\n  {{- if .Enums }}\n  {{range .Enums}}  - [{{.LongName}}](#{{.FullName}})\n  {{end}}\n  {{- end -}}\n  {{- if .Extensions }}\n  {{range .Extensions}}  - [File-level Extensions](#{{$file_name}}-extensions)\n  {{end}}\n  {{- end -}}\n  {{- if .Services }}\n  {{range .Services}}  - [{{.Name}}](#{{.FullName}})\n  {{end}}\n  {{- end -}}\n{{end}}\n- [Scalar Value Types](#scalar-value-types)\n\n{{range .Files}}\n{{$file_name := .Name}}\n<a name=\"{{.Name}}\"></a>\n<p align=\"right\"><a href=\"#top\">Top</a></p>\n\n## {{.Name}}\n{{.Description}}\n\n{{range .Messages}}\n<a name=\"{{.FullName}}\"></a>\n\n### {{.LongName}}\n{{.Description}}\n\n{{if .HasFields}}\n| Field | Type | Label | Description |\n| ----- | ---- | ----- | ----------- |\n{{range .Fields -}}\n  | `{{.Name}}` | [{{.LongType}}](#{{.FullType}}) | {{.Label}} | {{if (index .Options \"deprecated\"|default false)}}**Deprecated.** {{end}}{{nobr .Description}}{{if .DefaultValue}} Default: {{.DefaultValue}}{{end}} |\n{{end}}\n{{end}}\n\n{{if .HasExtensions}}\n| Extension | Type | Base | Number | Description |\n| --------- | ---- | ---- | ------ | ----------- |\n{{range .Extensions -}}\n  | `{{.Name}}` | {{.LongType}} | {{.ContainingLongType}} | {{.Number}} | {{nobr .Description}}{{if .DefaultValue}} Default: {{.DefaultValue}}{{end}} |\n{{end}}\n{{end}}\n\n{{end}} <!-- end messages -->\n\n{{range .Enums}}\n<a name=\"{{.FullName}}\"></a>\n\n### {{.LongName}}\n{{.Description}}\n\n| Name | Number | Description |\n| ---- | ------ | ----------- |\n{{range .Values -}}\n  | {{.Name}} | {{.Number}} | {{nobr .Description}} |\n{{end}}\n\n{{end}} <!-- end enums -->\n\n{{if .HasExtensions}}\n<a name=\"{{$file_name}}-extensions\"></a>\n\n### File-level Extensions\n| Extension | Type | Base | Number | Description |\n| --------- | ---- | ---- | ------ | ----------- |\n{{range .Extensions -}}\n  | `{{.Name}}` | {{.LongType}} | {{.ContainingLongType}} | {{.Number}} | {{nobr .Description}}{{if .DefaultValue}} Default: `{{.DefaultValue}}`{{end}} |\n{{end}}\n{{end}} <!-- end HasExtensions -->\n\n{{range .Services}}\n<a name=\"{{.FullName}}\"></a>\n\n### {{.Name}}\n{{.Description}}\n\n| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |\n| ----------- | ------------ | ------------- | ------------| ------- | -------- |\n{{range .Methods -}}\n  | `{{.Name}}` | [{{.RequestLongType}}](#{{.RequestFullType}}){{if .RequestStreaming}} stream{{end}} | [{{.ResponseLongType}}](#{{.ResponseFullType}}){{if .ResponseStreaming}} stream{{end}} | {{nobr .Description}} | {{with (index .Options \"google.api.http\")}}{{range .Rules}}{{.Method}}|{{.Pattern}}{{end}}{{end}}|\n{{end}}\n{{end}} <!-- end services -->\n\n{{end}}\n\n## Scalar Value Types\n\n| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |\n| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- |\n{{range .Scalars -}}\n  | <a name=\"{{.ProtoType}}\" /> {{.ProtoType}} | {{.Notes}} | {{.CppType}} | {{.JavaType}} | {{.PythonType}} | {{.GoType}} | {{.CSharp}} | {{.PhpType}} | {{.RubyType}} |\n{{end}}\n"
  },
  {
    "path": "docs/endpoints/sdk.md",
    "content": "---\norder: 5\n---\n\n# IRIShub Client SDKs\n\nIRIShub SDK is a software development kit based on the Endpoint provided by IRIShub, which provides great convenience for users to quickly develop applications based on the IRIShub chain.\n\nAvailable in three languages:\n\n- [irishub-sdk-go](https://github.com/irisnet/irishub-sdk-go)\n- [irishub-sdk-js](https://github.com/irisnet/irishub-sdk-js)\n- irishub-sdk-java (coming soon)\n\n## Design Goals and Concepts\n\nThe SDK mainly implements the encapsulation of the functions of IRIShub modules, including: auth, bank, gov, htlc, keys, nft, oracle, random, record, service, staking, token. So that users can quickly realize the development of the following functions:\n\n- Generating, Signing and Broadcasting Transactions\n- Private Key Management\n- Subscribe Events\n\n## SDK Docs\n\nThe document link of IRIShub SDKs is as follows:\n\n- [Go SDK docs](https://github.com/irisnet/irishub-sdk-go/blob/master/README.md)\n- [JavaScript SDK docs](https://github.com/irisnet/irishub-sdk-js/blob/master/README.md)\n- Java SDK docs (coming soon)\n"
  },
  {
    "path": "docs/features/bank.md",
    "content": "# Bank\n\n## Summary\n\nThis module is mainly used to transfer coins between accounts, query account balances, and provide common offline transaction signing and broadcasting methods. In addition, the available units of tokens in the IRIShub system are defined using [coin-type](../concepts/coin-type.md).\n\n## Usage Scenario\n\n1. Query the balances of an account\n\n    Query the total balance of an account or of a specific denomination.\n\n    ```bash\n    iris query bank balances [address] --denom=[denom]\n    ```\n\n2. Transfer between accounts\n\n    For example, transfer 10iris from account A to account B:\n\n    ```bash\n    iris tx bank send [A] [B] [10iris] --fees=0.3iris --chain-id=irishub\n    ```\n\n    IRIShub supports multiple tokens in circulation, and in the future IRIShub will be able to include multiple tokens in one transaction.\n\n3. Sign transactions generated offline\n\n    To improve account security, IRIShub supports offline signing of transactions to protect the account's private key. In any transaction, you can build an unsigned transaction using the flag --generate-only. Take transfer transaction as an example:\n\n    ```bash\n    iris tx bank send [from_key_or_address] [to_address] [amount]  --fees=0.3iris --generate-only\n    ```\n\n    Return the built transaction with empty signatures:\n\n    ```json\n    {\n        \"type\": \"auth/StdTx\",\n        \"value\": {\n            \"msg\": [ \"txMsg\" ],\n            \"fee\": \"fee\",\n            \"signatures\": null,\n            \"memo\": \"\"\n        }\n    }\n    ```\n\n    Save the result to a file.\n\n    Sign the transaction:\n\n    ```bash\n    iris tx sign <file> --chain-id=irishub --from=<key-name>\n    ```\n\n    Return signed transactions:\n\n    ```json\n    {\n        \"type\": \"auth/StdTx\",\n        \"value\": {\n            \"msg\": [ \"txMsg\" ],\n            \"fee\": \"fee\",\n            \"signatures\": [\n            {\n                \"pub_key\": {\n                \"type\": \"tendermint/PubKeySecp256k1\",\n                \"value\": \"A+qXW5isQDb7blT/KwEgQHepji8RfpzIstkHpKoZq0kr\"\n                },\n                \"signature\": \"5hxk/R81SWmKAGi4kTW2OapezQZpp6zEnaJbVcyDiWRfgBm4Uejq8+CDk6uzk0aFSgAZzz06E014UkgGpelU7w==\",\n                \"account_number\": \"0\",\n                \"sequence\": \"11\"\n            }\n            ],\n            \"memo\": \"\"\n        }\n    }\n    ```\n\n    Save the result to a file.\n\n4. Broadcast transactions\n\n    Broadcast offline signed transactions. Here you can just use the transaction generated by the above signing command. Of course, you can generate your signed transaction by any methods, eg. [irisnet-crypto](https://github.com/irisnet/irisnet-crypto).\n\n    ```bash\n    iris tx broadcast <file>\n    ```\n\n    The transaction will be broadcast and executed in IRIShub.\n"
  },
  {
    "path": "docs/features/coinswap.md",
    "content": "# Coinswap\n\n## Summary\n\nThis document describes the implementation of the [Constant Product Market Maker Model](https://github.com/runtimeverification/verified-smart-contracts/blob/uniswap/uniswap/x-y-k.pdf) token exchange protocol on IRIShub.\n\nCoinswap supports Token to IRIS and Token to Token exchange. The whole exchange process is implemented on-chain. To generate on-chain assets, you can use the multi-asset management function on IRIS Hub.\n\nBefore exchange with Coinswap, the market maker needs to deposit the token to the liquidity pool at the current market price (based on the IRIS token), then the exchange rate between the two tokens on IRIS Hub will vary in real-time according to the on-chain trading situation. When the exchange rate in the liquidity pool is inconsistent with that of other platforms, the arbitrageurs can make a profit. They arbitrage price differences between different platforms and make the exchange rate in the liquidity pool closer to the current market exchange rate.\n\nDuring the exchange process, the 3/1000 handling fee will be deducted and re-added to the liquidity pool as rewards to the market maker. Market makers can retrieve their tokens at any time without a lock-up period. When the run-off situation occurs, it is useful for the market maker to withdraw the deposit token in time to avoid losses. Therefore, the more tokens deposited in the liquidity pool, the stabler the exchange rate change caused by the exchange process, and the more profit the market maker will make.\n\n## Concepts\n\n### Liquidity Pool\n\nA system account for depositing mortgage tokens with no control over the private key. The account consists of three parts: IRIS, Token, and liquidity securities (as a certificate for the market maker to hold liquidity and can be transferred). Each token (except IRIS) has its own pool of liquidity to calculate the relative price of the two.\n\n### Liquidity\n\nTwo assets that can be exchanged in the liquidity pool and mortgaged to the liquidity pool can be considered as providing liquidity for the liquidity pool. When the mortgage assets are withdrawn, the fee charged when the users exchange can automatically be obtained.\n\n### Maker\n\nAny individual, organization, or institution that mortgages tokens to a liquidity pool.\n\n### Maker formula\n\nUse a constant product as the market making formula: `x * y = k`,  `x` represents the number of x tokens, and `y` represents the number of y tokens. During the redemption process, the value of `k` remains the same, and the value changes only when the market maker increases/decreases the liquidity.\n\n## Actions\n\n- **Add Liquidity**\n\n  In order to obtain the handling fee during the redemption process, market makers can deposit their tokens into the liquidity pool, mainly in two cases:\n\n  - **Create Liquidity Pool**\n\n    If there is no liquidity pool of the token in the IRIShub, the market maker needs to mortgage a fixed amount of tokens and IRIS according to the current market conditions. This step is equivalent to initializing the liquidity pool and pricing the token. If the market maker does not price according to the current market, then the arbitrageur finds that there is a difference in the price, and the exchange behavior will occur until the price is close to the current market price. In this process, the relative price of the token is adjusted entirely by market demand.\n\n  - **Add Liquidity**\n\n    If there is a liquidity pool of the token in the IRIShub, when the market maker mortgages the token, it is necessary to mortgage the two tokens according to the current liquidity pool exchange rate. When calculating, we take the IRIS token as the benchmark. If the amount of another token that needs to be mortgaged does not match the current liquidity pool's conversion ratio, the transaction will fail. In this way, as far as possible, the market makers are prevented from making market losses due to the existence of arbitrageurs.\n\n  After the mortgage is completed, the system will lock the deposit token and issue a liquidity voucher to the user account, which can also be transferred.\n\n- **Swap Token**\n\n  When there is a certain pool of liquidity, the user can initiate a redemption transaction according to his own needs. In the redemption process, the 3/1000 fee is deducted from the input token (this parameter can be changed by the governance module). In terms of the classification of transactions, there are two cases in total:\n\n  - Buy Token\n\n    If the user purchases a fixed amount of tokens, the IRIShub will calculate the amount of another token the user needs to pay, based on the number of tokens purchased and the current inventory of the liquidity pool. If the amount of tokens paid by the user is less than the value calculated by the IRIShub, the transaction fails.\n\n  - Sell Token\n\n    If the user sells a fixed amount of tokens, the IRIShub will calculate the amount of another token the user receives, based on the number of tokens sold and the current pool of liquidity. If the number of tokens specified by the user is greater than the value calculated by the IRIShub, the transaction fails.\n\n  In both cases, the IRIShub supports Token's redemption of Token, which requires the collateral of both tokens. The system will redeem twice, Token1 --> IRIS, IRIS-->Token2. A 3/1000 handling fee will be charged for each redemption.\n\n- **Remove Liquidity**\n\n  After the market maker deposits the token to the IRIShub, he receives the liquidity voucher corresponding to the token, which can be exchanged for the mortgage token and obtain the market-making reward. After the liquidity is withdrawn, the same amount of liquidity voucher will be destroyed from the user's account and the pool.\n\n## Additional information\n\nThis module does not provide a command entry but the relevant REST interfaces, through which you can initiate the above transactions.\n"
  },
  {
    "path": "docs/features/distribution.md",
    "content": "# Distribution\n\n## Summary\n\nThis module is in charge of distributing collected transaction fee and inflated token to all validators and delegators. To reduce computation stress, a lazy distribution strategy is brought in. `lazy` means that the benefit won't be paid directly to contributors automatically. The contributors are required to explicitly send transactions to withdraw their benefit, otherwise, their benefit will be kept in the global pool.\n\n## Benefit\n\n### Source\n\n1. The first signer of transactions (Collected to feeCollector in DeliverTx)\n2. Inflation tokens (Each hour Inflate stake token and add it to LooseTokens)\n\n### Destination\n\n1. Validator\n2. Delegator\n3. Community Tax\n4. Proposer Reward\n\n:::tip\n[Calculation Formula](../concepts/general-concepts.md#staking-rewards-calculation-formula)\n:::\n\n## Usage Scenario\n\n### Set withdraw address\n\nBy default, the reward will be paid to the wallet address which send the delegation transaction.\n\nThe delegator could set a new wallet as reward paid address. To set another wallet(marked as `B`) as the paid address, delegator need to send another transaction from wallet `A`.\n\n```bash\niris tx distribution set-withdraw-addr [withdraw-addr] [flags] --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```  \n\n### Withdraw rewards\n\nThere are 2 ways to withdraw rewards according to different scenarios\n\n- `withdraw-all-rewards` : Withdraw all delegations rewards for a delegator\n\n```bash\niris tx distribution withdraw-all-rewards [flags] --from=<key-name> --fees=0.3iris --chain-id=irishub\n```\n\n- `withdraw-rewards` : Withdraw rewards from a given validator address\n\n```bash\niris tx distribution withdraw-rewards [validator-addr] [flags] --from=<key-name> --fees=0.3iris --chain-id=irishub\n```\n\n### Query reward token\n\nQuery all rewards earned by a delegator, optionally restrict to rewards from a single validator.\n\n```bash\niris query distribution rewards [delegator-addr] [validator-addr] [flags]\n```\n\nFor other distribution commands, please refer to [distribution cli client](../cli-client/distribution.md)\n"
  },
  {
    "path": "docs/features/evm.md",
    "content": "# EVM\n\n## Summary\n\nThis document defines the specification of the [Ethereum Virtual Machine](https://ethereum.org/en/developers/docs/evm/) as a Cosmos SDK module.\n\n## Concept\n\n### EVM\n\nThe Ethereum Virtual Machine (EVM) is a state machine that provides the necessary tools to run or create a contract on a given state.\n\n### State DB\n\nThe `StateDB` interface from geth represents an EVM database for full state querying of both contracts and accounts. The concrete type that fulfills this interface on Ethermint is the `CommitStateDB`.\n\n### State Object\n\nA `stateObject` represents an Ethereum account which is being modified. The usage pattern is as follows:\n\n- First you need to obtain a state object.\n- Account values can be accessed and modified through the object.\n\n### Genesis State\n\nThe `x/evm` module `GenesisState` defines the state necessary for initializing the chain from a previous exported height.\n\n```go\n\t// GenesisState defines the evm module genesis state\n\tGenesisState struct {\n\t\tAccounts    []GenesisAccount  `json:\"accounts\"`\n\t\tTxsLogs     []TransactionLogs `json:\"txs_logs\"`\n\t\tChainConfig ChainConfig       `json:\"chain_config\"`\n\t\tParams      Params            `json:\"params\"`\n\t}\n```\n\n**Genesis Accounts**\n\nThe `GenesisAccount` type corresponds to an adaptation of the Ethereum `GenesisAccount` type. Its main difference is that the one on Ethermint uses a custom `Storage` type that uses a slice instead of maps for the evm `State` (due to non-determinism), and that it doesn't contain the private key field.\n\nIt is also important to note that since the `auth` and `bank` SDK modules manage the accounts and balance state, the `Address` must correspond to an `EthAccount` that is stored in the `auth`'s module `AccountKeeper` and the balance must match the balance of the `EvmDenom` token denomination defined on the `GenesisState`'s `Param`. The values for the address and the balance amount maintain the same format as the ones from the SDK to make manual inspections easier on the `genesis.json`.\n\n```go\n\t// GenesisAccount defines an account to be initialized in the genesis state.\n\t// Its main difference between with Geth's GenesisAccount is that it uses a custom\n\t// storage type and that it doesn't contain the private key field.\n\tGenesisAccount struct {\n\t\tAddress ethcmn.Address `json:\"address\"`\n\t\tBalance *big.Int       `json:\"balance\"`\n\t\tCode    hexutil.Bytes  `json:\"code,omitempty\"`\n\t\tStorage Storage        `json:\"storage,omitempty\"`\n\t}\n```\n\n**Transaction Logs**\n\nOn every Ethermint transaction, its result contains the Ethereum `Log`s from the state machine execution that are used by the JSON-RPC Web3 server for filter querying. Since Cosmos upgrades don't persist the transactions on the blockchain state, we need to persist the logs the EVM module state to prevent the queries from failing.\n\n`TxsLogs` is the field that contains all the transaction logs that need to be persisted after an upgrade. It uses an array instead of a map to ensure determinism on the iteration.\n\n```go\n// TransactionLogs define the logs generated from a transaction execution\n// with a given hash. It it used for import/export data as transactions are not persisted\n// on blockchain state after an upgrade.\ntype TransactionLogs struct {\n\tHash ethcmn.Hash     `json:\"hash\"`\n\tLogs []*ethtypes.Log `json:\"logs\"`\n}\n```\n\n**Chain Config**\n\nThe `ChainConfig` is a custom type that contains the same fields as the go-ethereum `ChainConfig` parameters, but using `sdk.Int` types instead of `*big.Int`. It also defines additional YAML tags for pretty printing.\n\nThe `ChainConfig` type is not a configurable SDK Param since the SDK does not allow for validation against a previous stored parameter values or Context fields. Since most of this type's fields rely on the block height value, this limitation prevents the validation of of potential new parameter values against the current block height (eg: to prevent updating the config block values to a past block).\n\nIf you want to update the config values, use an software upgrade procedure.\n\n```go\n// ChainConfig defines the Ethereum ChainConfig parameters using sdk.Int values instead of big.Int.\n//\n// NOTE 1: Since empty/uninitialized Ints (i.e with a nil big.Int value) are parsed to zero, we need to manually\n// specify that negative Int values will be considered as nil. See getBlockValue for reference.\n//\n// NOTE 2: This type is not a configurable Param since the SDK does not allow for validation against\n// a previous stored parameter values or the current block height (retrieved from context). If you\n// want to update the config values, use an software upgrade procedure.\ntype ChainConfig struct {\n\tHomesteadBlock sdk.Int `json:\"homestead_block\" yaml:\"homestead_block\"` // Homestead switch block (< 0 no fork, 0 = already homestead)\n\n\tDAOForkBlock   sdk.Int `json:\"dao_fork_block\" yaml:\"dao_fork_block\"`     // TheDAO hard-fork switch block (< 0 no fork)\n\tDAOForkSupport bool    `json:\"dao_fork_support\" yaml:\"dao_fork_support\"` // Whether the nodes supports or opposes the DAO hard-fork\n\n\t// EIP150 implements the Gas price changes (https://github.com/ethereum/EIPs/issues/150)\n\tEIP150Block sdk.Int `json:\"eip150_block\" yaml:\"eip150_block\"` // EIP150 HF block (< 0 no fork)\n\tEIP150Hash  string  `json:\"eip150_hash\" yaml:\"eip150_hash\"`   // EIP150 HF hash (needed for header only clients as only gas pricing changed)\n\n\tEIP155Block sdk.Int `json:\"eip155_block\" yaml:\"eip155_block\"` // EIP155 HF block\n\tEIP158Block sdk.Int `json:\"eip158_block\" yaml:\"eip158_block\"` // EIP158 HF block\n\n\tByzantiumBlock      sdk.Int `json:\"byzantium_block\" yaml:\"byzantium_block\"`           // Byzantium switch block (< 0 no fork, 0 = already on byzantium)\n\tConstantinopleBlock sdk.Int `json:\"constantinople_block\" yaml:\"constantinople_block\"` // Constantinople switch block (< 0 no fork, 0 = already activated)\n\tPetersburgBlock     sdk.Int `json:\"petersburg_block\" yaml:\"petersburg_block\"`         // Petersburg switch block (< 0 same as Constantinople)\n\tIstanbulBlock       sdk.Int `json:\"istanbul_block\" yaml:\"istanbul_block\"`             // Istanbul switch block (< 0 no fork, 0 = already on istanbul)\n\tMuirGlacierBlock    sdk.Int `json:\"muir_glacier_block\" yaml:\"muir_glacier_block\"`     // Eip-2384 (bomb delay) switch block (< 0 no fork, 0 = already activated)\n\n\tYoloV2Block sdk.Int `json:\"yoloV2_block\" yaml:\"yoloV2_block\"` // YOLO v1: https://github.com/ethereum/EIPs/pull/2657 (Ephemeral testnet)\n\tEWASMBlock  sdk.Int `json:\"ewasm_block\" yaml:\"ewasm_block\"`   // EWASM switch block (< 0 no fork, 0 = already activated)\n}\n```\n\n## Config\n\nEVM specific app.toml configuration.\n\n```toml\n###############################################################################\n###                             EVM Configuration                           ###\n###############################################################################\n\n[evm]\n\n# Tracer defines the 'vm.Tracer' type that the EVM will use when the node is run in\n# debug mode. To enable tracing use the '--evm.tracer' flag when starting your node.\n# Valid types are: json|struct|access_list|markdown\ntracer = \"\"\n\n###############################################################################\n###                           JSON RPC Configuration                        ###\n###############################################################################\n\n[json-rpc]\n\n# Enable defines if the gRPC server should be enabled.\nenable = true\n\n# Address defines the EVM RPC HTTP server address to bind to.\naddress = \"0.0.0.0:8545\"\n\n# Address defines the EVM WebSocket server address to bind to.\nws-address = \"0.0.0.0:8546\"\n\n# API defines a list of JSON-RPC namespaces that should be enabled\n# Example: \"eth,txpool,personal,net,debug,web3\"\napi = \"eth,net,web3\"\n\n# GasCap sets a cap on gas that can be used in eth_call/estimateGas (0=infinite). Default: 25,000,000.\ngas-cap = 25000000\n\n# EVMTimeout is the global timeout for eth_call. Default: 5s.\nevm-timeout = \"5s\"\n\n# TxFeeCap is the global tx-fee cap for send transaction. Default: 1eth.\ntxfee-cap = 1\n\n# FilterCap sets the global cap for total number of filters that can be created\nfilter-cap = 200\n\n# FeeHistoryCap sets the global cap for total number of blocks that can be fetched\nfeehistory-cap = 100\n\n# LogsCap defines the max number of results can be returned from single 'eth_getLogs' query.\nlogs-cap = 10000\n\n# BlockRangeCap defines the max block range allowed for 'eth_getLogs' query.\nblock-range-cap = 10000\n\n```"
  },
  {
    "path": "docs/features/governance.md",
    "content": "# Governance\n\n## Concepts\n\nThe governance process is divided in a few steps that are outlined below:\n\n- **Proposal submission:** Proposal is submitted to the blockchain with a\n  deposit.\n\n- **Vote:** Once deposit reaches a certain value (`MinDeposit`), proposal is\n  confirmed and vote opens. Bonded Iris holders can then send `TxGovVote`\n  transactions to vote on the proposal.\n\n- If the proposal involves a software upgrade:\n  \n  - **Signal:** Validators start signaling that they are ready to switch to the\n    new version.\n\n  - **Switch:** Once more than 75% of validators have signaled that they are\n    ready to switch, their software automatically flips to the new version.\n\n### Proposal submission\n\n#### Right to submit a proposal\n\nEvery account can submit proposals by sending a MsgSubmitProposal transaction. Once a proposal is submitted, it is identified by its unique proposalID.\n\n#### Proposal types\n\nA proposal includes an array of `sdk.Msg`s which are executed automatically if the proposal passes. The messages are executed by the governance `ModuleAccount` itself. Modules such as `x/upgrade`, that want to allow certain messages to be executed by governance only should add a whitelist within the respective msg server, granting the governance module the right to execute the message once a quorum has been reached. The governance module uses the `MsgServiceRouter` to check that these messages are correctly constructed and have a respective path to execute on but do not perform a full validity check.\n\n### Deposit\n\nTo prevent spam, proposals must be submitted with a deposit in the coins defined by the `MinDeposit` param.\n\nWhen a proposal is submitted, it has to be accompanied with a deposit that must be strictly positive, but can be inferior to `MinDeposit`. The submitter doesn't need to pay for the entire deposit on their own. The newly created proposal is stored in an inactive proposal queue and stays there until its deposit passes the `MinDeposit`. Other token holders can increase the proposal's deposit by sending a `Deposit` transaction. If a proposal doesn't pass the `MinDeposit` before the deposit end time (the time when deposits are no longer accepted), the proposal will be destroyed: the proposal will be removed from state and the deposit will be burned (see x/gov `EndBlocker`). When a proposal deposit passes the `MinDeposit` threshold (even during the proposal submission) before the deposit end time, the proposal will be moved into the active proposal queue and the voting period will begin.\n\nThe deposit is kept in escrow and held by the governance `ModuleAccount` until the proposal is finalized (passed or rejected).\n\n#### Deposit refund and burn\n\nWhen a proposal is finalized, the coins from the deposit are either refunded or burned according to the final tally of the proposal:\n\n- If the proposal is approved or rejected but not vetoed, each deposit will be automatically refunded to its respective depositor (transferred from the governance `ModuleAccount`).\n\n- When the proposal is vetoed with greater than 1/3, deposits will be burned from the governance `ModuleAccount` and the proposal information along with its deposit information will be removed from state.\n\n- All refunded or burned deposits are removed from the state. Events are issued when burning or refunding a deposit.\n\n### Vote\n\n#### Participants\n\n_Participants_ are users that have the right to vote on proposals. On the\nCosmos Hub, participants are bonded Iris holders. Unbonded Iris holders and\nother users do not get the right to participate in governance. However, they\ncan submit and deposit on proposals.\n\nNote that some _participants_ can be forbidden to vote on a proposal under a\ncertain validator if:\n\n- _participant_ bonded or unbonded Iris to said validator after proposal\n  entered voting period.\n\n- _participant_ became validator after proposal entered voting period.\n\nThis does not prevent _participant_ to vote with Iris bonded to other\nvalidators. For example, if a _participant_ bonded some Iris to validator A\nbefore a proposal entered voting period and other Iris to validator B after\nproposal entered voting period, only the vote under validator B will be\nforbidden.\n\n#### Voting period\n\nOnce a proposal reaches `MinDeposit`, it immediately enters `Voting period`. We\ndefine `Voting period` as the interval between the moment the vote opens and\nthe moment the vote closes. `Voting period` should always be shorter than\n`Unbonding period` to prevent double voting. The initial value of\n`Voting period` is 2 weeks.\n\n#### Option set\n\nThe option set of a proposal refers to the set of choices a participant can\nchoose from when casting its vote.\n\nThe initial option set includes the following options:\n\n- `Yes`\n- `No`\n- `NoWithVeto`\n- `Abstain`\n\n`NoWithVeto` counts as `No` but also adds a `Veto` vote. `Abstain` option\nallows voters to signal that they do not intend to vote in favor or against the\nproposal but accept the result of the vote.\n\n_Note: from the UI, for urgent proposals we should maybe add a ‘Not Urgent’\noption that casts a `NoWithVeto` vote._\n\n#### Weighted Votes\n\nThe weighted vote feature allows a staker to split their votes into several voting options. For example, it could use 70% of its voting power to vote Yes and 30% of its voting power to vote No.\n\nOften times the entity owning that address might not be a single individual. For example, a company might have different stakeholders who want to vote differently, and so it makes sense to allow them to split their voting power. Currently, it is not possible for them to do \"passthrough voting\" and giving their users voting rights over their tokens. However, with this system, exchanges can poll their users for voting preferences, and then vote on-chain proportionally to the results of the poll.\n\n#### Quorum\n\nQuorum is defined as the minimum percentage of voting power that needs to be\ncasted on a proposal for the result to be valid.\n\n#### Threshold\n\nThreshold is defined as the minimum proportion of `Yes` votes (excluding\n`Abstain` votes) for the proposal to be accepted.\n\nInitially, the threshold is set at 50% with a possibility to veto if more than\n1/3rd of votes (excluding `Abstain` votes) are `NoWithVeto` votes. This means\nthat proposals are accepted if the proportion of `Yes` votes (excluding\n`Abstain` votes) at the end of the voting period is superior to 50% and if the\nproportion of `NoWithVeto` votes is inferior to 1/3 (excluding `Abstain`\nvotes).\n\nProposals can be accepted before the end of the voting period if they meet a special condition. Namely, if the ratio of `Yes` votes to `InitTotalVotingPower`exceeds 2:3, the proposal will be immediately accepted, even if the `Voting period` is not finished. `InitTotalVotingPower` is the total voting power of all bonded Iris holders at the moment when the vote opens.\nThis condition exists so that the network can react quickly in case of urgency.\n\n#### Inheritance\n\nIf a delegator does not vote, it will inherit its validator vote.\n\n- If the delegator votes before its validator, it will not inherit from the\n  validator's vote.\n\n- If the delegator votes after its validator, it will override its validator\n  vote with its own. If the proposal is urgent, it is possible\n  that the vote will close before delegators have a chance to react and\n  override their validator's vote. This is not a problem, as proposals require more than 2/3rd of the total voting power to pass before the end of the voting period. If more than 2/3rd of validators collude, they can censor the votes of delegators anyway.\n\n#### Validator’s punishment for non-voting\n\nAt present, validators are not punished for failing to vote.\n\n#### Governance address\n\nLater, we may add permissioned keys that could only sign txs from certain modules. For the MVP, the `Governance address` will be the main validator address generated at account creation. This address corresponds to a different PrivKey than the Tendermint PrivKey which is responsible for signing consensus messages. Validators thus do not have to sign governance transactions with the sensitive Tendermint PrivKey.\n\n### Software Upgrade\n\nThe governance process for the software upgrade is described in [`Upgrade`](upgrade.md)\n\n## Usage Scenario\n\n### Parameter change\n\nThe parameters of modules can be changed by demand through a proposal of parameter change.\n\n```bash\n# Query module parameters which can be changed through gov. e.g. query the service params\niris query service params\n\n# Parameter list\narbitration_time_limit: 432000s\nbase_denom: stake\ncomplaint_retrospect: 1296000s\nmax_request_timeout: \"100\"\nmin_deposit:\n- amount: \"6000\"\n  denom: stake\nmin_deposit_multiple: \"200\"\nservice_fee_tax: \"0.100000000000000000\"\nslash_fraction: \"0.001000000000000000\"\ntx_size_limit: \"4000\"\n\n# Send proposal for parameters change\necho '{\n    \"title\": \"Service Param Change\",\n    \"description\": \"Update max request timeout\",\n    \"changes\": [\n        {\n        \"subspace\": \"service\",\n        \"key\": \"MaxRequestTimeout\",\n        \"value\": 150\n        }\n    ],\n    \"deposit\": \"1000iris\"\n}' > proposal.json\n\niris tx gov submit-legacy-proposal param-change proposal.json --from=<key-name> --fees=0.3iris --chain-id=irishub\n```\n\n### Community pool spending\n\nThe community pool funds can be spent through the governance process.\n\n```bash\n# Submit a proposal for community pool spending\necho '{\n    \"title\": \"Community Pool Spend\",\n    \"description\": \"Developer rewards\",\n    \"recipient\": \"iaa1s5afhd6gxevu37mkqcvvsj8qeylhn0rz46zdlq\",\n    \"amount\": \"10000iris\",\n    \"deposit\": \"1000iris\"\n}' > proposal.json\n\niris tx gov submit-legacy-proposal community-pool-spend proposal.json --from=<key-name> --fees=0.3iris --chain-id=irishub\n```\n\n### Software upgrade\n\nUsage on the software upgrade is introduced in [`Upgrade`](upgrade.md)\n"
  },
  {
    "path": "docs/features/guardian.md",
    "content": "# Guardian\n\n## Summary\n\nIRIShub introduce two types of privileged system user controlled by foundations, the profiler and the trustee.\n\n* Profiler privileges\n    1. Submit software upgrade/halt proposal by governance.\n    2. Invocate a service by `profiling` mode, under which service fees can be exempted.\n\n* Trustee privileges\n    1. To be the destination address if the usage type of a `CommunityTaxUsage` proposal is `Distribute` or `grant`.\n    2. Send `withdraw-tax` transaction to withdraw coins to an account from system service fee tax pool.\n\n* Genesis Profiler/Genesis Trustee (Defined in genesis.json)\n    1. Only Genesis Profiler can add/delete Ordinary Profiler account\n    2. Only Genesis Trustee can add/delete Ordinary Trustee account\n\n## Usage Scenario\n\n1. Add Profiler and Trustee\n\n    Add Profiler (Genesis Profiler account only)\n\n    ```bash\n    iris tx guardian add-profiler --address=<profiler-address> --description=<profiler-description> --chain-id=irishub --from=<key-name> --fees=0.3iris\n    ```\n\n    Add Trustee (Genesis Trustee account only)\n\n    ```bash\n    iris tx guardian add-trustee --address=<trustee-address> --description=<trustee-description> --chain-id=irishub --from=<key-name> --fees=0.3iris\n    ```\n\n2. Query Profiler and Trustee list\n\n    Query Profiler list\n\n    ```bash\n    iris q guardian profilers\n    ```\n\n    Query Trustee list\n\n    ```bash\n    iris q guardian trustees\n    ```\n\n3. Profiler submit software upgrade/halt proposal\n\n    Details in [upgrade](upgrade.md)\n\n4. Profiler call a service by `profiling` mode\n\n    Service fee exempted\n\n    ```bash\n    iris tx service call --def-chain-id=<def-chain-id> --service-name=<service-name> --method-id=<method-id> --bind-chain-id=<bind-chain-id> --provider=<provider-address> --service-fee=1iris --request-data=<request-data> --chain-id=irishub --from=<key-name> --fees=0.3iris --profiling=true\n    ```\n\n5. Trustee to be the destination address of `CommunityTaxUsage` proposal\n\n    Details in [governance](governance.md#proposals-on-community-funds-usage)\n\n6. Delete Profiler and Trustee (Genesis Trustee account only)\n\n    Delete Profiler (Genesis Trustee account only)\n\n    ```bash\n    iris tx guardian delete-profiler --chain-id=irishub --from=<key-name> --fees=0.3iris --address=<profiler-address>\n    ```\n\n    Delete Trustee (Genesis Trustee account only)\n\n    ```bash\n    iris tx guardian delete-trustee --chain-id=irishub --from=<key-name> --fees=0.3iris --address=<trustee-address>\n    ```\n"
  },
  {
    "path": "docs/features/htlc.md",
    "content": "# HTLC\n\n## Concepts\n\n[Hash Time Locked Contract (HTLC)](https://en.bitcoin.it/wiki/Hash_Time_Locked_Contracts) is a protocol intended for cross-chain atomic swaps. It performs a P2P swap in a decentralized form. HTLC can guarantee that all swap processes among participating parties take place or nothing is done. Leveraging the HTLC on IRIS Hub, users can implement cross-chain asset swaps with Bitcoin, Ethereum, LTC and all other chains which support HTLC.\n\n## Interaction Process\n\nSupposed that Alice swaps BTC for IRIS with Bob. The atomic swap process between Alice and Bob can be divided into following steps.\n\n### step 0\n\n  Alice and Bob reach an agreement on the swap by an off-chain procedure, which is completed commonly on an exchange platform. Let Alice be a maker and Bob be a taker. The agreement includes the exchange rate between BTC and IRIS, the each other's address on the counterparty chain and a unique hash lock generated from a secret, and an appropriate time span.\n\n### step 1\n\n  Afterwards, the secret holder, Bob sends an HTLC transaction which commits to transfer IRIS of the specified amount to Alice(the maker) with the negotiated hash lock on IRIS Hub.\n\n### step 2\n\n  An event is emitted on IRIS Hub which indicates that Bob has created an HTLC. Alice is informed of this event by monitor tools (usually wallets) or the platform. The HTLC initiating transaction with the same hash lock will be sent to Bitcoin by Alice once the event is validated against the agreement. Particularly the HTLC will be locked by an quite smaller time span than the one provided by Bob.\n\n### step 3\n\n  Bob is informed of and confirms the event on Bitcoin. Then Bob claims the HTLC-locked BTC with the owned secret before the time span set by Alice on Bitcoin.\n\n### step 4\n\n  The secret will be disclosed while the HTLC is claimed successfully by Bob on Bitcoin. Alice will perfom the same claim to the locked IRIS with the secret before the expiration time on IRIS Hub.\n\n## IRIShub HTLC Specification\n\n### Create HTLC message\n\n| **Field**            | **Type** | **Description**                                                                                                  |\n| -------------------- | -------- | ---------------------------------------------------------------------------------------------------------------- |\n| receiver             | Address  | recipient address                                                                                                |\n| receiverOnOtherChain | string   | the claim receiving address on the other chain (less than 128 characters)                                        |\n| amount               | Coins    | tokens to be swapped out                                                                                         |\n| hashLock             | string   | sha256 hashed value in hexadecimal form, used to generated by a random secret and timestamp (if provided)        |\n| timestamp            | uint64   | timestamp in seconds used to generate the hash lock together with secret, if provided                            |\n| timeLock             | uint64   | time span after which the HTLC expired ranged between 50 and 25480 (greater than 5 minitues, less than 48 hours) |\n| transfer             | bool   |  whether it is an HTLT transaction |\n\n### Claim HTLC message\n\n| **Filed** | **Type** | **Description**                                                                                                            |\n| --------- | -------- | -------------------------------------------------------------------------------------------------------------------------- |\n| hashLock  | string   | the hash lock identifying the HTLC to be claimed                                                                           |\n| secret    | string   | a random number which generates the hash lock together with timestamp (if provided), being of 32 bytes in hexadecimal form |\n\n## Actions\n\n- [Create HTLC](../cli-client/htlc.md#iris-tx-htlc-create)\n\n- [Claim HTLC](../cli-client/htlc.md#iris-tx-htlc-claim)\n\n- [Query HTLC](../cli-client/htlc.md#iris-query-htlc-htlc)\n"
  },
  {
    "path": "docs/features/mint.md",
    "content": "# Mint\n\n## Introduction\n\nThe incentive mechanism of POW is widely known and explicit: once a new block is produced, the block miner will acquire a certain amount of token as well as the accumulation of transaction fee in the block. As a POS blockchain network, the IRIShub has similar way to produce reward token but more complex mechanism to distribute the reward to each contributor.\n\nIn each block producing period, all POW miners compete to calculate their work proof and the fastest one will be the winner. Actually, all loser miners don't offer any positive help or collaboration to the winner miner, and they are just the competitors. So it is reasonable to grant all reward to the winner miner. However, in POS blockchain network, we can't do that. Because each block producing process is the collaboration of all validators and delegators, which means the benefit should be share by all these contributors. As for how to distribute reward token to contributors, we will document and implement it in [distribution](distribution.md) module.\n\nThe reward is composed by two parts, one is the collected transaction fee from the transactions in each block. Another one is regular inflation in each block, which will produce new tokens. The mint module is in charge of calculating the inflated token amount and add the inflated token to reward pool.\n\n## Inflation Calculation\n\n### Block Time\n\nThe block time is not the machine time, because different machines may not have exactly the same time. They must have some deviation more or less which will result in non-deterministic. So here the block time is the BFT time. Please refer to this [tendermint bft-time](https://github.com/cometbft/cometbft/blob/master/docs/spec/consensus/bft-time.md) for detailed description.\n\n### Inflation Rate\n\nThe inflation rate is assigned to 4% per year in genesis file. This value can be modified by governance. As for how to change the value by governance, please refer to [governance](governance.md).\n\n### Calculation\n\nThis is the calculation equation:\n\n```bash\nblockCostTime  = (current block BFT time) - (last block BFT time)\nAnnualInflationAmount = inflationBasement * inflationRate\nblockInflationAmount = AnnualInflationAmount * blockCostTime / (year)\n```\n\nThe value of `inflationBasement` is specified in genesis file. By default its value `2000000000iris`(2 billion iris, `1 iris` equals `1*10^6 uiris`), and its value will never be changed.\nSuppose `blockCostTime` is 5000 millisecond, and `inflationRate` is `4%`, then the inflation amount will be `12683917uiris` (`12.683917iris`)\n\n## Impact to users\n\nThe inflation calculation is automatically triggered by each block. So once a new block is produced, new tokens will be created and the loose tokens will increase accordingly. Users have no directly interface to affect this process.\n\nThere is a command line interface and one LCD restful APIs which can query total loose tokens amount.\n\n`iris q staking pool`\n\nThis is much faster, but it cannot get merkle proof and verify proof. So if you doesn't trust the connected full node, please don't use this interface.\n\n```bash\niris q staking pool --node=<iris-node-url>\n```\n\nExample Output:\n\n```bash\nbonded_tokens: \"100000000000000000000\"\nnot_bonded_tokens: \"0\"\n```\n\n`/staking/pool`\n\nPlease refer to LCD swagger document.\n\nAs for how to run a LCD node please refer to [LCD document](../light-client/intro.md).\n"
  },
  {
    "path": "docs/features/mt.md",
    "content": "# MT\r\n\r\n## Introduction\r\n\r\n`MT` provides ERC-1155 capacity. The MT module is able to model off-chain assets into unique on-chain assets.\r\n\r\nOn-chain assets are identified by`ID` . With the secure and tamper-proof nature of blockchains, the ownership of assets can be confirmed and verified. Transactions of assets between multiple parties can also be publicly recorded, in order to facilitate traceability and dispute resolution. The metadata (`data` ) of assets can be stored directly on the chain, or be used to record the off-chain storage addresses.\r\n\r\nAssets need to be issued before they are created to declare their abstract properties.\r\n\r\n* *DenomID*: the globally unique asset class identifier, which is generated on the chain.\r\n* DenomName: the name of the asset class.\r\n\r\nEach specific asset is described by the following elements:\r\n\r\n* *DenomID: the class of the asset.*\r\n* *ID*: the identifier of the asset, which is unique within the corresponding asset class. This ID is also generated on the chain.\r\n* Metadata: a structure that contains specific data of the assets.\r\n\r\n## Function\r\n\r\n### Issuance\r\n\r\nAn asset class can be created by specifying the DenomName and the creator.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris tx mt issue --name=<denom-name> --from=<sender-address> --chain-id=<chain-id> --fees=<fee>\r\n```\r\n\r\n### Production\r\n\r\nAfter issuing an asset class, a specific asset of that class can be created, during which the DenomID, number of issuance, metadata, and the addresses of both the issuer (owner of the Denom) and the receiver need to be specified.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris tx mt mint <denom-id> --amount=<amount> --data=<data> --from=<sender-address> --recipient=<recipient-address> --chain-id=<chain-id> --fees=<fee>\r\n```\r\n\r\n### Increase of Issuance\r\n\r\nAfter issuing a specific asset, the owner of the asset class can also choose to increase the issuance, which requires specifying the DenomID, the number of additional issuances, and the addresses of both the issuer (owner of the Denom) and the receiver.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris tx mt mint <denom-id> --mt-id=<mt-id> --amount=<amount> --from=<sender-address> --recipient=<recipient-address> --chain-id=<chain-id> --fees=<fee>\r\n```\r\n\r\n### Editing\r\n\r\nUpdates can be made to the metadata of a specified asset.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris tx mt edit <denom-id> <mt-id> --data=<data> --from=<sender-address> --chain-id=<chain-id> --fees=<fee>\r\n```\r\n\r\n### Transfer\r\n\r\n\r\nAssets can be transferred. The amount of assets to be transferred can be specified.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris tx mt transfer <sender> <recipient> <denom-id> <mt-id> <amount> --chain-id=<chain-id> --fees=<fee>\r\n```\r\n\r\n### Burn\r\n\r\nAssets can be burned. The amount of assets to be burned can be specified.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris tx mt burn <denom-id> <mt-id> <amount> --from=<sender-address> --chain-id=<chain-id> --fees=<fee>\r\n```\r\n\r\n### Query a specified asset class\r\n\r\nQuery the asset class through the DenomID.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris query mt denom <denom-id>\r\n```\r\n\r\n### Query all asset classes\r\n\r\nQuery all issued asset classes.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris query mt denoms\r\n```\r\n\r\n### Query the total amount of assets in a specified asset class\r\n\r\nQuery the total amount of assets through the DenomID.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris query mt supply <denom-id> <mt-id>\r\n```\r\n\r\n### Query all assets in a specified account\r\n\r\nQuery all assets owned by an account in a specified asset class.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris query mt balances <owner> <denom-id>\r\n```\r\n\r\n### Query specified assets\r\n\r\nQuery the information of a specific asset through the DenomID and MtID.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris query mt token <denom-id> <mt-id>\r\n```\r\n\r\n### Query all assets in a specified asset class\r\n\r\nQuery all assets in a specified asset class through the DenomID.\r\n\r\n`CLI`\r\n\r\n```plain\r\niris query mt tokens <denom-id>\r\n```\r\n"
  },
  {
    "path": "docs/features/nft-metadata.json",
    "content": "{\n    \"title\": \"Asset Metadata\",\n    \"type\": \"object\",\n    \"properties\": {\n        \"name\": {\n            \"type\": \"string\",\n            \"description\": \"Identifies the asset to which this NFT represents\"\n        },\n        \"description\": {\n            \"type\": \"string\",\n            \"description\": \"Describes the asset to which this NFT represents\"\n        },\n        \"image\": {\n            \"type\": \"string\",\n            \"description\": \"A URI pointing to a resource with mime type image/* representing the asset to which this NFT represents. Consider making any images at a width between 320 and 1080 pixels and aspect ratio between 1.91:1 and 4:5 inclusive.\"\n        },\n        \"meta\": {\n            \"type\": \"string\",\n            \"description\": \"A URI pointing to other attributes related to the asset to which this NFT represents\"\n        }\n    }\n}"
  },
  {
    "path": "docs/features/nft.md",
    "content": "# NFT\n\n## Introduction\n\n`NFT` provides the ability to digitize assets. Through this module, each off-chain asset will be modeled as a unique on-chain nft.\n\nnft on the chain are identified by `ID`. With the help of the secure and non-tamperable features of the blockchain, the ownership of nft will be clarified. The transaction process of nft among members will also be publicly recorded to facilitate traceability and dispute settlement.\n\nnft metadata (`metadata`) can be stored directly on the chain, or the `URI` of its storage source outside the chain can be stored on the chain. nft metadata is organized according to a specific [JSON Schema](https://JSON-Schema.org/). [Here](https://github.com/irisnet/irishub/blob/master/docs/features/nft-metadata.json) is an example of metadata JSON Schema.\n\nnft need to be issued before creation to declare their abstract properties:\n\n-_Denom_: the globally unique nft classification name\n\n-_Denom ID_: the globally unique nft classification identifier of Denom\n\n-_Symbol_: the symbol of the token\n\n-_Mint-restricted_: This field indicates whether there are restrictions on the issuance of NFTs under this classification, true means that only Denom owners can issue NFTs under this classification, false means anyone can\n\n-_Update-restricted_: This field indicates whether there are restrictions on updating NFTs under this classification, true means that no one under this classification can update the NFT, false means that only the owner of this NFT can update\n\n-_Metadata Specification_: The JSON Schema that nft metadata should follow\n\nEach specific nft is described by the following elements:\n\n-_Denom_: the classification of the nft\n\n-_ID_: The identifier of the nft, which is unique in this nft denom; this ID is generated off-chain\n\n-_Metadata_: The structure containing the specific data of the nft\n\n-_Metadata URI_: When metadata is stored off-chain, this URI indicates its storage location\n\n## Features\n\n### issued\n\nSpecify the nft Denom (nft classification) and metadata JSON Schema to issue nft.\n\n`CLI`\n\n```bash\niris tx nft issue <denom-id> --name=<denom-name> --schema=<schema-content or path/to/schema.json> --symbol=<denom-symbol> --mint-restricted=<mint-restricted> --update-restricted=<update-restricted> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n### transfer denom\n\nThe owner of the NFT classification can transfer the ownership of the NFT classification to others.\n\n`CLI`\n\n```bash\niris tx nft transfer-denom <recipient> <denom-id> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n### Additional issuance\n\nAfter the nft is issued, additional issuance (create) of specific nft of this type can be made. The denom ID, token ID, recipient address and URI must be specified.\n\n`CLI`\n\n```bash\niris tx nft mint <denom-id> <token-id> --uri=<uri> --recipient=<recipient> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n### Edit\n\nThe metadata of the specified nft can be updated.\n\n`CLI`\n\n```bash\niris tx nft edit <denom-id> <token-id> --uri=<uri> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n### Transfer\n\nTransfer designated nft.\n\n`CLI`\n\n```bash\niris tx nft transfer <recipient-address> <denom-id> <token-id> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n### Destroy\n\nYou can destroy the created nft.\n\n`CLI`\n\n```bash\niris tx nft burn <denom-id> <token-id> --from=<key-name> --chain-id=<chain-id> --fees=<fee>\n```\n\n### Query the specified nft denom\n\nQuery nft denom information based on Denom ID.\n\n`CLI`\n\n```bash\niris q nft denom <denom-id>\n```\n\n### Query all nft denom information\n\nQuery all issued nft denom information.\n\n`CLI`\n\n```bash\niris q nft denoms\n```\n\n### Query the total amount of nft in a specified denom\n\nQuery the total amount of nft according to Denom ID; accept the optional owner parameter.\n\n`CLI`\n\n```bash\niris q nft supply <denom-id> --owner=<owner>\n```\n\n### Query all nft of the specified account\n\nQuery all nft owned by an account; you can specify the Denom ID parameter.\n\n`CLI`\n\n```bash\niris q nft owner <address> --denom-id=<denom-id>\n```\n\n### Query all nft of a specified denom\n\nQuery all nft according to Denom ID.\n\n`CLI`\n\n```bash\niris q nft collection <denom-id>\n```\n\n### Query specified nft\n\nQuery specific nft based on Denom ID and Token ID.\n\n`CLI`\n\n```bash\niris q nft token <denom-id> <token-id>\n```\n"
  },
  {
    "path": "docs/features/oracle.md",
    "content": "# Oracle\n\n## Introduction\n\nThe module combines `service` to achieve decentralized injection from trusted Oracles such as `Chainlink` to IRIShub Oracle. Each data collection task is called a feed, and its underlying implementation depends on the `service` module. Feed life cycle\nIt is basically the same as the `Service` RequestContext (paused, running), and is used to store off-chain data on the chain through Oracle nodes. In addition, you can only operate `Feed` through your Profiler account, and you cannot delete it. You can only pause the feed. Including the following operations:\n\n- Create Feed\n- Start Feed\n- Pause Feed\n- Edit Feed\n\nIn addition to collecting data by creating a feed, the module also presets some aggregation functions, such as `avg`, `max`, `min`, etc., to process the collected data to meet various scenarios. The data collected by each `Feed` can only save the most recent 100 entries, and the rest will be deleted.\n\n## Process\n\nThe bottom layer of the module depends on the `service` module, so the premise of using this module is to execute the relevant functions of `Service`\n\n- Create `Service` definition\n- Bind `Service`\n\nSpecific instructions[service](./service.md). After completing the `service` related operations, start the `Oracle` process:\n\n**1. Create Feed**\n\n```bash\niris tx oracle create \\\n    --feed-name=\"test-feed\" \\\n    --latest-history=10 \\\n    --service-name=\"test-service\" \\\n    --input={request-data} \\\n    --providers=\"faa1hp29kuh22vpjjlnctmyml5s75evsnsd8r4x0mm,faa15rurzhkemsgfm42dnwhafjdv5s8e2pce0ku8ya\" \\\n    --service-fee-cap=1iris \\\n    --timeout=2 \\\n    --frequency=10 \\\n    --threshold=1 \\\n    --aggregate-func=\"avg\" \\\n    --value-json-path=\"high\" \\\n    --chain-id=\"irishub-test\" \\\n    --from=node0 \\\n    --fees=0.3iris \\\n    --broadcast-mode=block\n```\n\n**2. Start Feed**\n\nAfter the `Feed` is created, the collection task is in the `paused` state, and no request is made to the service provider. You can start the scheduled task of the feed through `start`.\n\n```bash\niris tx oracle start test-feed \\\n    --chain-id=\"irishub-test\" \\\n    --from=node0 \\\n    --fees=0.3iris \\\n    --broadcast-mode=block\n```\n\n**3. Pause Feed**\n\nSince `Feed` cannot be deleted once it is created, it will consume the balance of the owner's account until the balance is exhausted, and `Feed` will enter the `paused` state. To be able to pause the feed manually, you can use the pause command\n\n```bash\niris tx oracle pause test-feed \\\n    --chain-id=\"irishub-test\" \\\n    --from=node0 \\\n    --fees=0.3iris \\\n    --broadcast-mode=block\n```\n\n**4. Edit Feed**\n\nYou can use the edit command to edit an existing feed to change the data collection behavior of the feed.\n\n```bash\niris tx oracle edit test-feed \\\n    --latest-history=5 \\\n    --providers=\"faa1r3tyupskwlh07dmhjw70frxzaaaufta37y25yr,faa1ydahnhrhkjh9j9u0jn8p3s272l0ecqj40vra8h\" \\\n    --service-fee-cap=1iris \\\n    --timeout=6 \\\n    --threshold=5 \\\n    --chain-id=\"irishub-test\" \\\n    --from=node0 \\\n    --fees=0.3iris \\\n    --broadcast-mode=block\n```\n\nNote that if the `latest-history` at the time of creation is greater than the currently modified value, the oracle module will delete the extra data.\n"
  },
  {
    "path": "docs/features/random.md",
    "content": "# Random\n\n## Introduction\n\nThis specification describes the usage and scope of random numbers on IRIShub. This feature is currently in beta and please assess the risk yourself before using.\n\n## Concepts\n\nCurrently, IRIShub provides two random number generation methods: PRNG and TRNG.\n\n### Scope\n\n**Applicable** to the application layer to obtain random numbers generated based on blockchain, such as gaming, games, etc.\n**Not Applicable** to private keys, blockchain consensus algorithms, etc.\n\n### PRNG\n\nA pseudorandom number generator (PRNG), also known as a deterministic random bit generator (DRBG), is an algorithm for generating a sequence of numbers whose properties approximate the properties of sequences of random numbers. -- Wikipedia\n\nWe use the multiple indicators generated by the blockchain as \"factors\" to calculate the random number, making this random number transparent and convenient for verification;\n\nThe random number \"factor\" specifically includes the following indicators:\n\n- **Last Block Hash**: The generation of Block Hash depends on various factors of the block, such as block height, number of transactions, timestamp, etc., so the block Hash itself has certain unpredictability.\n- **Current Block Timestamp**: The block timestamp uses the BFT time, that is, the weighted calculated distributed timestamp (millisecond level), based on the validator's weight, using the time of each Precommit in the previous block, also certain unpredictability [[BFT Time](https://tendermint.com/docs/spec/consensus/bft-time.html#bft-time)].\n- **Consumer Address**: mainly to achieve different random numbers for different people at the same block height.\n\nSince the calculation of block Hash and BFT time is based on the information of the previous block, in order to avoid pre-calculating the result before requesting the random number, on the other hand, we strengthen the unpredictability of the random number through the \"future block\".\n\n***However, unpredictable does not mean that it is unmanipulable. For example, a new block proposer can selectively package transactions and accept Precommits to affect block Hash and BFT time.***\n\n#### Calculation Formula\n\n```bash\nseed = sha256(\n    Int(timestamp)\n    + Int(sha256(blockhash)) / Int(timestamp)\n    + Int(sha256(consumer)) / Int(timestamp)\n)\n\nrand = seed mod 10^20 / 10^20\n```\n\n### TRNG\n\nA hardware random number generator (HRNG) or true random number generator (TRNG) is a device that generates random numbers from a physical process, rather than by means of an algorithm. -- Wikipedia\n\nOn the basis of PRNG, the external random number factor `Oracle Seed` is introduced using the oracle machine method, implemented through IRIShub Service.\n\nThe random number \"factor\" specifically includes the following indicators:\n\n- **Last Block Hash**: Same as PRNG.\n- **Current Block Timestamp**: Same as PRNG.\n- **Consumer Address**: Same as PRNG.\n- **Oracle Seed**: The user requests a random number. After the specified block is reached, the system sends a service request. The reliable random number provider returns the Oracle Seed generated by the true random source.\n\nTRNG introduces an external source of true randomness, eliminates the risk that block proposers manipulate random number generation in PRNG..\n\n#### Calculation Formula\n\n```bash\nseed = sha256(\n    Int(timestamp)\n    + Int(sha256(blockhash)) / Int(timestamp)\n    + Int(sha256(consumer)) / Int(timestamp)\n    + Int(sha256(oracleSeed)) / Int(timestamp)\n)\n\nrand = seed mod 10^20 / 10^20\n```\n\n## Actions\n\n- [Request Random Number](../cli-client/rand.md#iris-tx-random-request-random)\n- [Query Random Number](../cli-client/rand.md#iris-query-random-random)\n- [Query Random Queue](../cli-client/rand.md#iris-query-random-queue)\n"
  },
  {
    "path": "docs/features/service-pricing.json",
    "content": "{\n    \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n    \"title\": \"iris-service-pricing\",\n    \"description\": \"IRIS Service Pricing Schema\",\n    \"type\": \"object\",\n    \"definitions\": {\n        \"discount\": {\n            \"description\": \"promotion discount, greater than 0 and less than 1\",\n            \"type\": \"string\",\n            \"pattern\": \"^0\\\\.\\\\d*[1-9]$\"\n        },\n        \"promotion_by_time\": {\n            \"description\": \"promotion by time\",\n            \"type\": \"object\",\n            \"properties\": {\n                \"start_time\": {\n                    \"description\": \"starting time of the promotion\",\n                    \"type\": \"string\",\n                    \"format\": \"date-time\"\n                },\n                \"end_time\": {\n                    \"description\": \"ending time of the promotion\",\n                    \"type\": \"string\",\n                    \"format\": \"date-time\"\n                },\n                \"discount\": {\n                    \"$ref\": \"#/definitions/discount\"\n                }\n            },\n            \"additionalProperties\": false,\n            \"required\": [\n                \"start_time\",\n                \"end_time\",\n                \"discount\"\n            ]\n        },\n        \"promotion_by_volume\": {\n            \"description\": \"promotion by volume\",\n            \"type\": \"object\",\n            \"properties\": {\n                \"volume\": {\n                    \"description\": \"minimal volume for the promotion\",\n                    \"type\": \"integer\",\n                    \"minimum\": 1\n                },\n                \"discount\": {\n                    \"$ref\": \"#/definitions/discount\"\n                }\n            },\n            \"additionalProperties\": false,\n            \"required\": [\n                \"volume\",\n                \"discount\"\n            ]\n        }\n    },\n    \"properties\": {\n        \"price\": {\n            \"description\": \"base price in main unit, e.g. 0.5iris\",\n            \"type\": \"string\",\n            \"pattern\": \"^\\\\d+(\\\\.\\\\d+)?[a-z][a-z0-9]{2,7}$\"\n        },\n        \"promotions_by_time\": {\n            \"description\": \"promotions by time, in ascending order\",\n            \"type\": \"array\",\n            \"items\": {\n                \"$ref\": \"#/definitions/promotion_by_time\"\n            },\n            \"maxItems\": 5,\n            \"uniqueItems\": true\n        },\n        \"promotions_by_volume\": {\n            \"description\": \"promotions by volume, in ascending order\",\n            \"type\": \"array\",\n            \"items\": {\n                \"$ref\": \"#/definitions/promotion_by_volume\"\n            },\n            \"maxItems\": 5,\n            \"uniqueItems\": true\n        }\n    },\n    \"additionalProperties\": false,\n    \"required\": [\n        \"price\"\n    ]\n}"
  },
  {
    "path": "docs/features/service-result.json",
    "content": "{\n    \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n    \"title\": \"iris-service-result\",\n    \"description\": \"IRIS Service Result Schema\",\n    \"type\": \"object\",\n    \"properties\": {\n        \"code\": {\n            \"description\": \"result code\",\n            \"type\": \"integer\",\n            \"enum\": [\n                200,\n                400,\n                500\n            ]\n        },\n        \"message\": {\n            \"description\": \"result message\",\n            \"type\": \"string\"\n        }\n    },\n    \"additionalProperties\": false,\n    \"required\": [\n        \"code\",\n        \"message\"\n    ]\n}"
  },
  {
    "path": "docs/features/service.md",
    "content": "# Service\n\n> **_NOTE:_** Commands shown in this document are for illustration purpose only.  For accurate syntax of commands, please refer to [cli docs](../cli-client/service.md).\n\n## Summary\n\nIRIS Service (a.k.a. iService) is intended to bridge the gap between the blockchain world and the conventional application world.  It formalizes off-chain service definition and binding (provider registration), facilitates invocation and interaction with those services, and mediates service governance process (profiling and dispute resolution).\n\n## Service Definition\n\n### Service interface schema\n\nAny user can define services on the blockchain. The interface of a service must be specified in terms of its _input_ and _output_ using the standard language of [JSON Schema](https://json-schema.org/).  Here is an example:\n\n```json\n{\n    \"input\": {\n        \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n        \"title\": \"service-def-input-body-example\",\n        \"description\": \"Schema for a service input body example\",\n        \"type\": \"object\",\n        \"properties\": {\n            \"base\": {\n                \"description\": \"base token denom\",\n                \"type\": \"string\"\n            },\n            \"quote\": {\n                \"description\": \"quote token denom\",\n                \"type\": \"string\"\n            }\n        },\n        \"required\": [\n            \"base\",\n            \"quote\"\n        ]\n    },\n    \"output\": {\n        \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n        \"title\": \"service-def-output-body-example\",\n        \"description\": \"Schema for a service output body example\",\n        \"type\": \"object\",\n        \"properties\": {\n            \"price\": {\n                \"description\": \"price\",\n                \"type\": \"number\"\n            }\n        },\n        \"required\": [\n            \"price\"\n        ]\n    }\n}\n```\n\n### Commands\n\n```bash\n# create a new service definition\niris tx service define --name=<service-name> <schemas-json or path/to/schemas.json> --description=<service-description> --author-description=<author-description> --tags=<tag1,tag2,...> --from=<key-name> --chain-id=<chain-id>\n\n# query service definition\niris q service definition <service-name>\n```\n\n## Service Binding\n\nWhoever is willing to provide a service as specified by an existing definition can do so by creating a _binding_ to that definition.  A binding essentially consists of four components: _provider address_, _pricing_, _deposit_ and _quality of service_.  \n\n### Provider address\n\nA provider address represents an _endpoint_ that a _service provider_ (i.e., an off-chain server/daemon) listens to for incoming requests. Before a provider can accept and process any service requests, its human operator/owner has to create a blockchain address for it and execute a `bind` transaction to attach this provider address to the service definition in question.\n\nTo invoke a service, a user/consumer sends a request transaction targeting the provider address of a valid binding; the provider detects and processes the incoming request, and sends back the result in a response transaction.\n\n### Pricing\n\nThe pricing object specifies how the provider charges for its service; it must conform to this [schema](service-pricing.json), and the following is a valid instance:\n\n```json\n{\n  \"price\": \"0.1iris\",\n  \"promotions_by_time\": [\n    {\n      \"start_time\": \"2020-01-01T00:00:00Z\",\n      \"end_time\": \"2020-03-31T23:59:59Z\",\n      \"discount\": 0.7\n    },\n    {\n      \"start_time\": \"2020-04-01T00:00:00Z\",\n      \"end_time\": \"2020-06-30T23:59:59Z\",\n      \"discount\": 0.9\n    }\n  ]\n}\n```\n\nProviders can opt to accept tokens other than `iris` for their services, e.g., `0.03link`. Price is a factor that consumers will consider when picking from a number of providers that offer the same service.\n\n### Deposit\n\nOperating a service provider signifies serious responsibility, therefore, a deposit is required for creating a binding.  The deposit amount must be larger than the _deposit threshold_, derived as `max(MinDepositMultiple * price, MinDeposit)`.  If a provider fails to respond to a request before it times out, a small portion of its binding deposit, i.e., `SlashFraction * deposit`, will be forfeited and destroyed.  Should the deposit drop below the threshold, the binding would be disabled temporarily until its owner re-activates it by adding more deposit.\n\n> **_NOTE:_** `service/MinDepositMultiple`, `service/MinDeposit` and `service/SlashFraction` are system parameters that can be changed through on-chain [governance](governance.md).\n\n### Quality of service\n\nThis quality commitment is declared in terms of average number of blocks it takes the provider to send a response back to the blockchain.  It is another factor that consumers take into account when choosing potential providers.\n\n### Commands\n\nService bindings can be updated at any time by their owners to adjust pricing, increase deposit or change QoS commitment; they can be disabled and re-enabled as well.  If a provider owner no longer wants to offer the service, she needs to disable the binding and wait for a certain period of time before she can claim back her deposit.\n\n```bash\n# create a new service binding\niris tx service bind <service-name> <provider-address> --deposit=<deposit> --qos=<qos> --pricing=<pricing-json or path/to/pricing.json> --from=<key-name> --chain-id=<chain-id>\n\n# update a service binding\niris tx service update-binding <service-name> <provider-address> --deposit=<added-deposit> --qos=<qos> --pricing=<pricing-json or path/to/pricing.json> --from=<key-name> --chain-id=<chain-id>\n\n# enable an inactive service binding\niris tx service enable <service-name> <provider-address> --deposit=<added-deposit> --from=<key-name> --chain-id=<chain-id>\n\n# disable an active service binding\niris tx service disable <service-name> <provider-address> --from=<key-name> --chain-id=<chain-id>\n\n# request refund of service binding deposit\niris tx service refund-deposit <service-name> <provider-address> --from=<key-name> --chain-id=<chain-id>\n\n# list all the bindings of a service\niris tx service bindings <service-name> --from=<key-name> --chain-id=<chain-id>\n\n# list all the bindings of a service, owned by a given account\niris q service bindings service bindings <service-name> --owner <address>\n\n# query a specific service binding\niris q service binding <service-name> <provider-address>\n\n# query the pricing schema\niris q service schema pricing\n```\n\n## Service Invocation\n\n### Request context\n\nA consumer specifies how she would like to invoke a service by creating a _request context_, which behaves like a smart contract that automatically generates the actual request(s).  A request context consists of about a dozen parameters that can be roughly divided into four groups, as explained below.\n\n#### Target and input\n\n* _service name_: name of the target service to be called\n* _input data_: json input that conforms to the input schema of the called service\n\n#### Provider filtering\n\n* _provider list_: comma separated addresses of candidate service providers\n* _service fee cap_: maximum service fee the consumer is willing to pay for any call\n* _timeout_: number of blocks the consumer is willing to wait for any response to come back\n\n#### Response handling\n\n* _module_: name of the module containing the callback function\n* _response threshold_: minimum number of responses that must be received to invoke the callback\n\n> **_NOTE:_** These two parameters can **not** be set from CLI or API; they are only available to other modules that use iService, such as [oracle](oracle.md) and [random](random.md).\n\n#### Repetition\n\n* _repeated_: boolean flag indicating whether this request context is repeated or not\n* _frequency_: number of blocks representing the frequency of repeated call batches\n* _total_: total number of call batches, where a negative number means \"unlimited\"\n\n### Request batch\n\nFor a repeated request context, _batches_ of new request objects will be generated at the specified frequency, until the total number of batches is reached or the consumer (i.e., context creator) runs out of fee.  Only one request batch is generated for a non-repeated context.\n\nA request batch is comprised of a number of _request_ objects, each representing a service call to a chosen provider; only those providers that charge a fee lower than `service fee cap` and commit to a QoS better than `timeout` will be selected.\n\n### Commands\n\nWhen a request context is successfully created, a `context id` is returned to the consumer and the context is automatically started.  The consumer can later update, pause and start the context at will; she can permanently kill the context as well.\n\n```bash\n# create a repeated request context, with no callback\niris tx service call --service-name=<service name> --data=<request input> --providers=<provider list> --service-fee-cap=1iris --timeout 50 --repeated --frequency=50 --total=100 --from=<key-name> --chain-id=<chain-id>\n\n# update an existing request context\niris tx service update <request-context-id> --frequency=20 --total=200 --from=<key-name> --chain-id=<chain-id>\n\n# pause a running request context\niris tx service pause <request-context-id> --from=<key-name> --chain-id=<chain-id>\n\n# start a paused request context\niris tx service start <request-context-id> --from=<key-name> --chain-id=<chain-id>\n\n# permanently kill a request context\niris tx service kill <request-context-id> --from=<key-name> --chain-id=<chain-id>\n\n# query a previously created request context by its id\niris q service request-context <request-context-id>\n\n# list all the requests generated for a given request batch\niris q service requests <request-context-id> <batch-counter>\n\n# list all the responses received for a given request batch\niris q service responses <request-context-id> <batch-counter>\n\n# query a specific response\niris q service response <request-id>\n```\n\n## Service Response\n\nA service provider monitors the blockchain, through either queries or event subscription, for any requests that are targeted toward itself.  After processing such a request, the service provider sends back a response comprised of a _result_ object and an optional output object that conforms to the output schema of the service.\n\n### Service result schema\n\nThe result object must conform to this [schema](service-result.json), and here is an example of a valid instance:\n\n```json\n{\n    \"result\" : {\n        \"code\": 400,\n        \"message\": \"user input out of range\"\n    }\n}\n```\n\nThe output object is required in the response only when the result code equals `200`.\n\n### Commands\n\n```bash\n# list all pending requests targeting a given provider\niris q service requests <service-name> <provider>\n\n# query a specific request\niris q service request <request-id>\n\n# send a response back, matching a specific request\niris tx service respond --request-id=<request-id> --result='{\"code\":200,\"message\":\"success\"}' --data=<response output> --from=<key-name> --chain-id=<chain-id>\n\n# query the result schema\niris q service schema result\n```\n\n## Service Fees\n\nAny user who creates service bindings and operates service providers should define a _withdrawal address_; when the user withdraws service fees earned by her providers, this is where the fund will be sent to.  If not set, the withdrawal address is the same as the user address.\n\n### Escrow\n\nWhen a request object is generated, the associated service fee is **not** paid to the targeted provider immediately; instead, the fee is kept in an internal _escrow_ account for custody.  When a response comes back in time (i.e., before the request times out), the corresponding fee  (after tax) will be released from escrow to the provider; otherwise, the fee will be refunded to the consumer.\n\n### Tax\n\nRight before a service fee is paid to a provider, a _tax_, in the amount of `ServiceFeeTax * fee` is collected and sent to the community pool.\n\n> **_NOTE:_** `service/ServiceFeeTax` is a system parameter that can be changed through on-chain [governance](governance.md).\n\n### Commands\n\n```bash\n# set withdrawal address\niris tx service set-withdraw-addr <withdrawal-address> --from=<key-name> --chain-id=<chain-id>\n\n# query withdrawal address of a given account\niris q service withdraw-addr <address>\n\n# query a provider's earned fees\niris q service fees <provider-address>\n\n# withdraw earned fees from all providers\niris tx service withdraw-fees --from=<key-name> --chain-id=<chain-id>\n\n# withdraw earned fees from a given provider\niris tx service withdraw-fees <provider-address> --from=<key-name> --chain-id=<chain-id>\n```\n\n## Service Governance (TODO)\n"
  },
  {
    "path": "docs/features/slashing.md",
    "content": "# Slashing\n\n## Summary\n\nCollect the validator's abnormal behavior and implement the corresponding slashing mechanism according to the type of abnormal behavior.\n\nThere are three main types:\n\n1. The validator node does not participate in the network consensus for a long time.\n2. Voted multiple times on the same consensus process, and these votes contradict each other\n3. The validator node disturbs the network consensus by packing illegal transactions into the block.\n\n## Punishment mechanism\n\n1. Calculate the number of tokens bonded to the validator node based on the voting power owned by the current validator.\n2. Punish validator  with a certain percentage of the token and kick it out of the validator set; at the same time prohibit the validator from re-entering the validator set for a period, a process known as the jail validator.\n3. For different types of abnormal behavior, different penalty proportion and jail time are used.\n4. Penalty rules:\n\n    4.1 If the total number of tokens which bonded to current validator is A and the penalty ratio is B, then the maximum number of tokens that can be punished is `A*B`.\n\n    4.2 If there is unbonding delegation and redelegation in the unbonding period at the current height, then the tokens which in unbonding period are penalized by the ratio B.\n\n    4.3 The total number of tokens penalized for unbonding delegation and redelegation is S. If S is less than `A*B`, the validator token punished will be `A*B-S`. Otherwise, the validator bonded token will not be penalized.\n\n## Long Downtime\n\nIn the fixed time window `SignedBlocksWindow`, the ratio of the time of the validator's absence from the block is less than the value of `MinSignedPerWindow`, the validator's bonded token will be penalized in the `SlashFractionDowntime` ratio, and the validator will be jailed. Until the jail time exceeds `DowntimeJailDuration`, the validator can be released by executing `unjail` command.\n\n**parameters:**\n\n* `SignedBlocksWindow` default: 34560\n* `MinSignedPerWindow` default: 0.7\n* `DowntimeJailDuration` default: 10Minutes\n* `SlashFractionDowntime` default: 0.0003\n\n## Double Sign\n\nWhen executing a block, it receives evidence that a validator has voted for conflicting votes of the same round at the same height. the validator's bonded token will be penalized in the `SlashFractionDoubleSign` ratio, and the validator will be jailed. Until the jail time exceeds `DoubleSignJailDuration`, the validator can be released by executing `unjail` command.\n\n**parameters:**\n\n* `DowntimeJailDuration` default: 10Minutes\n* `SlashFractionDoubleSign`default: 0.01\n\nFor related operations of the `Slashing` module, please refer to [cli-slashing](../cli-client/slashing.md)\n"
  },
  {
    "path": "docs/features/staking.md",
    "content": "# Staking\n\n## Summary\n\nThis specification briefly introduces the functionality of stake module and what user should do with the provided commands.\n\n## Concepts\n\n### Voting power\n\nVoting power is a consensus concept. IRIShub is a Byzantine-fault-tolerant POS blockchain network. During the consensus process, a set of validators will vote the proposal block. If a validator thinks the proposal block is valid, it will vote `yes`, otherwise, it will vote nil. The votes from different validator don't have the same weight. The weight of a vote is called the voting power of the corresponding validator.\n\n### Validator\n\nValidator is a full IRIShub node. If its voting power is zero, it is just a normal full node or a validator candidate. Once its voting power is positive, then it is a real validator.\n\n### Delegator && Delegation\n\nPeople that cannot, or do not want to run validator nodes, can still participate in the staking process as delegators. After delegating some tokens to validators, delegators will gain shares from corresponding validators. Delegating tokens is also called bonding tokens to validators. Later we will have detailed description on it. Besides, a validator operator is also a delegator. Usually, a validator operator not only has delegation on its own validator, but also can have delegation on other validators.\n\n:::danger\n**It is strongly NOT recommended that validator operator COMPLETELY unbind self-delegation tokens, Cause the validator will be jailed (removed out of validator set) if he do so. The delegator who bonded tokens to this validator will also suffer losses.\nSo, it is recommended that validator operator reserve at least 1 iris while unbonding tokens.**\n:::\n\n### Validator Candidates\n\nThe quantity of validators can't increase infinitely. Too many validators may result in low efficient consensus which slows down the blockchain TPS. So Byzantine-fault-tolerant POS blockchain network will have a limiation to the validator quantity. Usually, the value is 100. If more than 100 full nodes apply to join validator set. Then only these nodes with top 100 most bonded tokens will be real validators. Others will be validator candidates and will be descending sorted according to their bonded token amount. Once the one or more validators are kicked out from validator set, then the top candidates will be added into validator set automatically.\n\n### Bond && Unbond && Unbonding Period\n\nValidator operators must bond their liquid tokens to their validators. The validator voting power is proportional to the bonded tokens including both self-bonded tokens and tokens from other delegators. Validator operators can lower their own bonded tokens by sending unbond transactions. Delegators can also lower bonded token by sending unbond transactions. However, these unbonded token won't become liquid tokens immediately. After the unbond transactions are executed, the corresponding validator operators or delegators can't sending unbond transactions on the same validators again until the unbonding period is end. Usually the unbonding period is three weeks. Once the unbonding period is end, the unbonded token will become liquid token automatically. The unbonding period mechanism makes great contribution to the security of POS blockchain network. Besides, if the self-bonded token equals to zero, then the corresponding validator will be removed out of validator set.\n\n### Redelegate\n\nDelegators can transfer their delegation from one validator to another one. Redelegation can be devided into two steps: ubond from first validator and bond to another validator. As we have talked above, ubond operation can't be completed immediately until unbonding period is end, which means delegators can't send another redelegation transactions immediately.\n\n### Evidence && Slash\n\nThe Byzantine-fault-tolerant POS blockchain network assume that the Byzantine nodes possess less than 1/3 of total voting power. These Byzantine nodes must be punished. So it is necessary to collect the evidence of Byzantine behavior. According to the evidence, stake module will aotumatically slash a certain mount of token from corresponding validators and delegators. The slashed tokens are just burned. Besides, the Byzantine validators will be removed from the validator set and put into jail, which means their voting power is zero. During the jail period, these nodes are not event validator candidates . Once the jail period is end, they can send transactions to unjail themselves and become validator candidates again.\n\n### Rewards\n\nAs a delegator, the more bonded tokens it has on validator, the more rewards it will earn. For a validator operator, it will have extra rewards: validator commission. The rewards come from token inflation and transaction fee. As for how to calculate the rewards and how to get the rewards, please refer to [mint](mint.md) and [distribution](distribution.md).\n\n## What Users Can Do\n\n- Query your own validator\n\n  Users can query their own validators by their wallet address. But firstly users have to convert their wallet addresses to validator operator address pattern:\n\n```bash\niris keys show <key-name>\n```\n\nExample Output:\n\n```bash\n- name: node0\n    type: local\n    address: iaa1w9lvhwlvkwqvg08q84n2k4nn896u9pqx93velx\n    pubkey: iap1addwnpepq03g7u43y3gwfz3pd4gkwz7d4mt600kzsc5cj2ysx58a5hp84qyduxtw28r\n    mnemonic: \"\"\n    threshold: 0\n    pubkeys: []\n```\n\nThen, example command to query validator:\n\n```bash\niris q staking validator iva14n9md3sq9xwscs96za8n85m0j9y2yu3cagxgke\n```\n\nExample Output:\n\n```json\n{\n    \"operator_address\": \"iva14n9md3sq9xwscs96za8n85m0j9y2yu3cagxgke\",\n    \"consensus_pubkey\": \"icp1zcjduepq9meszzqu54gpxvs4vzvuv85qvv5ef0egz3sde0ps4dvktcv77uds0kkhgf\",\n    \"status\": 3,\n    \"tokens\": \"100000000\",\n    \"delegator_shares\": \"100000000.000000000000000000\",\n    \"description\": {\n        \"moniker\": \"node0\"\n    },\n    \"unbonding_time\": \"1970-01-01T00:00:00Z\",\n    \"commission\": {\n        \"commission_rates\": {\n            \"rate\": \"1.000000000000000000\",\n            \"max_rate\": \"1.000000000000000000\",\n            \"max_change_rate\": \"1.000000000000000000\"\n        },\n        \"update_time\": \"2020-08-26T06:43:07.065305Z\"\n    },\n    \"min_self_delegation\": \"1\"\n}\n```\n\n- Edit validator\n\n```bash\niris tx staking edit-validator --from=<key-name> --chain-id=irishub --fees=0.3iris --commission-rate=0.15 --moniker=<new-name>\n```\n\n- Delegate tokens to other validators\nIf you just want to be a delegator, you can skip the above steps.\n\n```bash\niris tx staking delegate iva14n9md3sq9xwscs96za8n85m0j9y2yu3cagxgke 1000iris --chain-id=irishub --from=<key-name> --fees=0.3iris\n```\n\n- Unbond tokens from a validator\n\n```bash\niris tx staking unbond iva14n9md3sq9xwscs96za8n85m0j9y2yu3cagxgke 1000iris --chain-id=irishub --from=<key-name> --fees=0.3iris\n```\n  \n- Redelegate tokens to another validator\n\n```bash\niris tx staking redelegate iva14n9md3sq9xwscs96za8n85m0j9y2yu3cagxgke iva1l2rsakp388kuv9k8qzq6lrm9taddae7fpx59wm 100iris --from mykey --chain-id=irishub --from=<key-name> --fees=0.3iris\n```\n\nFor other staking commands, please refer to [stake cli client](../cli-client/staking.md)\n"
  },
  {
    "path": "docs/features/upgrade.md",
    "content": "# Software Upgrade\n\n## Concepts\n\n### Plan\n\nThe `Upgrade` module defines a `Plan` type in which a live upgrade is scheduled to occur. A `Plan` can be scheduled at a specific block height or time, but not both.\nA `Plan` is created once a (frozen) release candidate along with an appropriate upgrade `Handler` (see below) is agreed upon, where the `Name` of a `Plan` corresponds to a\nspecific `Handler`. Typically, a `Plan` is created through a governance proposal process, where if voted upon and passed, will be scheduled. The `Info` of a `Plan`\nmay contain various metadata about the upgrade, typically application specific upgrade info to be included on-chain such as a git commit that validators could automatically upgrade to.\n\n#### Sidecar Process\n\nIf an operator running the application binary also runs a sidecar process to assist in the automatic download and upgrade of the binary, `Info` allows this process to be frictionless. That is, the upgrade module implements the specification specified by [cosmovisor upgradeable binary specification](https://github.com/cosmos/cosmos-sdk/tree/master/cosmovisor#upgradeable-binary-specification), and `cosmovisor` can Site selection is used to fully automate the upgrade process for node operators. By filling the `Info` field with the necessary information, the binary can be downloaded automatically. Refer to [here](https://github.com/cosmos/cosmos-sdk/tree/master/cosmovisor#auto-download).\n\n```go\ntype Plan struct {\n    Name                string\n    Time                time.Time\n    Height              int64\n    Info                string\n    UpgradedClientState *types.Any\n}\n```\n\n### Handler\n\nThe `Upgrade` module facilitates upgrading from major version X to major version Y. To accomplish this, node operators must first upgrade their current binary to a new binary that has a corresponding `Handler` for the new version Y. It is assumed that this version has fully been tested and approved by the community at large. This `Handler` defines what state migrations need to occur before the new binary Y can successfully run the chain. Naturally, this `Handler` is application specific and not defined on a per-module basis. Registering a `Handler` is done via `Keeper#SetUpgradeHandler` in the application.\n\n```go\ntype UpgradeHandler func(Context, Plan)\n```\n\nDuring the execution of each `BeginBlock`, the `Upgrade` module checks whether there is a `plan` that should be executed (the block height or time when the `BeginBlock` is scheduled to run). If it exists, execute the corresponding `processor`. If the plan is expected to be executed but the corresponding processor is not registered, or the binary upgrade is too early, the node will gracefully panic and exit.\n\n### StoreLoader\n\nThe `Upgrade` module also facilitates store migrations as part of the upgrade. The `StoreLoader` sets the migrations that need to occur before the new binary can successfully run the chain. This `StoreLoader` is also application specific and not defined on a per-module basis. Registering this `StoreLoader` is done via `app#SetStoreLoader` in the application.\n\n```go\nfunc UpgradeStoreLoader (upgradeHeight int64, storeUpgrades *store.StoreUpgrades) baseapp.StoreLoader\n```\n\nIf there's a planned upgrade and the upgrade height is reached, the old binary writes `UpgradeInfo` to the disk before panic'ing.\n\n```go\ntype UpgradeInfo struct {\n    Name    string\n    Height  int64\n}\n```\n\nThis information is critical to ensure the `StoreUpgrades` happens smoothly at correct height and expected upgrade. It eliminates the chances for the new binary to execute `StoreUpgrades` multiple times everytime on restart. Also if there are multiple upgrades planned on same height, the `Name` will ensure these `StoreUpgrades` takes place only in planned upgrade handler.\n\nCurrently in the upgrade process, the state transition methods involved mainly support the following three types: `Renamed`, `Deleted`, and `Added`\n\n#### Renamed\n\nThe user can specify to migrate all data under oldKey (prefix) to storage under newKey (prefix) during the upgrade process.\n\n#### Deleted\n\nUsers can delete all data under the specified key (prefix) during the upgrade process.\n\n#### Added\n\nUsers can apply for a new storage area with the specified key as the prefix during the upgrade process.\n\n### Proposal\n\nTypically, a `Plan` is proposed and submitted through governance via a `SoftwareUpgradeProposal`. This proposal prescribes to the standard governance process. If the proposal passes,\nthe `Plan`, which targets a specific `Handler`, is persisted and scheduled. The upgrade can be delayed or hastened by updating the `Plan.Time` in a new proposal.\n\n```go\ntype SoftwareUpgradeProposal struct {\n    Title       string\n    Description string\n    Plan        Plan\n}\n```\n\n#### Governance Process\n\nWhen a upgrade proposal is accepted, the upgrade process is devided into two steps.\n\n##### Stop network consensus\n\nAfter the software upgrade proposal is accepted, the system will perform pre-upgrade preparations at the designated height of the BeginBlock stage, including downloading the upgrade plan and suspending network consensus.\n\n###### Download the upgrade plan\n\nIn order to be able to upgrade the software smoothly, the information required for the upgrade must be recorded before stopping the network consensus: `plan name`, `upgrade height`.\n  \n-`Plan name`: When the network restarts, it needs to be routed to the corresponding `UpgradeHandler` and `UpgradeStoreLoader` according to the plan name.\n-`Upgrade height`: When the network restarts, check whether the network upgrade plan is required.\n\n###### Suspend network consensus\n\nAfter the software upgrade proposal is accepted, the system will gracefully suspend the network consensus at the specified height of the `BeginBlock` stage.\n\n##### Restart the new software\n\nThe user replaces the software with the specified version and restarts the network. The system will detect whether the `processor` specified by the `plan name` is included. If it is included, the system first executes the `Handler` program, and then starts the network consensus. If not, the system report an error and exit.\n\n#### Cancelling Upgrade Proposals\n\nThe upgrade proposal can be cancelled. There is a proposal type of `Cancel Software Upgrade (CancelSoftwareUpgrade)`. When this type of proposal is voted through, the currently ongoing upgrade plan will be removed. Of course, this needs to be voted and executed before the upgrade plan is executed.\n\nIf the current upgrade plan has been executed, but there are problems with the upgrade plan, then the proposal of `Cancel Software Upgrade` is invalid (because the network has stopped consensus). At this time, there is another solution to make up for this mistake, which is to use the `--unsafe-skip-upgrades` parameter to skip the specified upgrade height when restarting the network (not really skip the height, but jump via software upgrade `Handler`). Of course, this requires that 2/3 of the validators participating in the consensus perform the same operation, otherwise the network consensus cannot be reached.\n\n## Upgrade process\n\n### Submit an upgrade proposal\n\nThe first step in the implementation of the software upgrade process is to initiate a software upgrade proposal by the governance module. The proposal details the upgrade height or time. For details, see the above [Concept](#Concepts). An example of the command line to initiate a proposal is as follows:\n\n```bash\niris tx gov submit-proposal software-upgrade <plan-name> \\\n  --deposit <deposit> \\\n  --upgrade-time <upgrade-time> \\\n  --title <title> \\\n  --upgrade-info <upgrade-info> \\\n  --description <description>  \\\n  --from=<from> \\\n  --chain-id=<chain-id> \\\n  --fees=0.3iris \\\n  -b block\n```\n\n### Deposit and vote for the proposal\n\nThe execution process of the software upgrade proposal is basically the same as that of other ordinary proposals. Both validators and delegators are required to comment on the proposal. For specific information, please refer to [governance module](./governance.md). An example of the command line to deposit the proposal is as follows:\n\n```bash\niris tx gov deposit <proposal-id> <deposit> --from=<from> --chain-id=<chain-id> --fees=0.3iris -b block -y\n```\n\nOnce the deposit amount reaches the minimum deposit amount, the proposal will enter the voting period, and the validator or delegator needs to vote on the proposal. An example of the command line to initiate a vote is as follows:\n\n```bash\niris tx gov vote <proposal-id> <option> --from=<from> --chain-id=<chain-id> --fees=0.3iris -b block -y\n```\n\nWhen the software upgrade proposal is passed, the upgrade module will create an upgrade plan to stop all nodes from the network consensus at a specified height or time, and wait for the new software to restart the network.\n\n### Restart the network\n\nWhen the upgrade proposal is passed and the network reaches the specified upgrade block height or time, all nodes will stop producing blocks. and the user needs to download the source code and compile the new software according to the new version information specified in the first step [Submit Upgrade Proposal](#submit-an-upgrade-proposal), refer to [Install](../get-started/install.md). After the new software is installed, restart the node with the new version, and the node will execute the upgrade logic corresponding to the plan name. Once the voting power of the entire network exceeds 2/3 and restarts the network using the new version, the blockchain network will re-reach a new consensus and continue to produce new blocks.\n"
  },
  {
    "path": "docs/get-started/evm-contract.md",
    "content": "# EVM Smart Contract\n\nSince the introduction of Ethereum in 2015, the ability to control digital assets through smart contracts has attracted a large community of developers to build decentralized applications on the Ethereum Virtual Machine.\n\nWhether you are building new use cases on IRISHub or porting an existing dApp from another EVM-based chain (e.g. Ethereum, Evmos), you can easily build and deploy EVM smart contracts on IRISHub to implement the core business logic of your dApp. IRISHub is fully compatible with the EVM, so it allows you to use the same tools (Solidity, Remix, Oracles, etc.) and APIs (i.e. Ethereum JSON-RPC) that are available on the EVM.\n\nLeveraging the interoperability of Cosmos chains, IRISHub enables you to build scalable cross-chain applications within a familiar EVM environment. Learn about the essential components when building and deploying EVM smart contracts on IRISHub below.\n\n## Build Smart Contract with Solidity\n\nYou can develop EVM smart contracts on IRISHub using [Solidity](https://docs.soliditylang.org/en/latest/), which is also used on Ethereum. If you have deployed smart contracts on Ethereum or any other EVM-compatible chain, you can use the same contracts on IRISHub.\n\nSince it is the most widely used smart contract programming language in Blockchain, Solidity comes with well-documented and rich language support.\n\n## Prepare Account for EVM\n\nYou might already have an EVM account and hold its mnemonic phrase, but in IRISHub, EVM accounts are displayed with the `iaa` prefix.\n\n### Generate or Recover EVM account in IRIShub\n\n```bash\niris keys add <key-name> --algo eth_secp256k1\n\n# or you can choose to recover one\niris keys add <key-name> --algo eth_secp256k1 --recover\n```\n\n### Import/Export EVM private key\n\nYou can import the private key of an EVM account to generate an iaa account on IRISHub with the following command:\n\n```bash\niris keys unsafe-import-eth-key <key-name> <private-key>\n```\n\nConversely, you can export the EVM private key of an iaa account using the following command:\n\n```bash\niris keys unsafe-export-eth-key <key-name>\n```\n\n### Exchange ERIS in IRISHub\n\n\nIRISHub uses `eris` as the EVM token, which is pegged 1:1 with `iris`. You can exchange them using the following command:\n\n```bash\niris tx token swap-fee 100iris --from <sender> --to <recipient>\n\n> balances:\n  - denom: eris\n    amount: \"100.000000000000000000\"\n```\n\n## Deploy Smart Contract with Remix\n\n**Remix** is an in-browser IDE for Solidity smart contracts. In this guide, we will learn how to deploy a contract to a running Ethermint network through Remix and interact with it.\n\n### Add Network with Metamask\n\nBefore we use Remix to develop and deploy smart contracts, we could first add a custom network for IRISHub with [Metamask](https://metamask.io/). \n\nOpen the Metamask extension on your browser, you may have to log in to your Metamask account if you are not already. \n\nThen click the top right circle and go to `Settings > Networks`. Press the `Add Network` button and fill the form as the example below with your application ChainID:\n\n- Network Name: IRISHub 2.0\n- RPC URL: https://evmrpc.irishub-1.irisnet.org\n- ChainID: 6688\n- Symbol: ERIS\n\n![Metamask Network Config](../pics/evm-metamask.png)\n\nNow you can export your private key from the terminal using the following command:\n\n```bash\niris keys unsafe-export-eth-key <key-name>\n```\n\nGo back to the browser and select the Private Key option. Then paste the private key exported from the `unsafe-export-eth-key` command.\n\n### Connect IRIShub account to Remix\n\nStart your IRISHub daemon and rest server, or just connect to the remote server, based on your network configuration.\n\nOnce that is complete, go to [Remix](http://remix.ethereum.org/). There are some contracts in the **File Explorer**. Select any of these contracts. On the left-most bar, select the **Solidity compiler** and compile the contract.\n\nNext, select the **Deploy and run transaction**. Note you should change the environment to **Injected Provider**. This will open a Metamask popup for you to confirm connecting your Metamask to Remix.\n\n### Deploy and Interact\n\nNow that your account is connected, you are able to deploy the contract. Press the Deploy button. A metamask pop-up will appear asking you to confirm. Confirm the transaction.\n\nOnce the contract has been successfully deployed, you will see it show up in the **Deployed Contracts** section in the left-hand side, as well as a green check in the Remix console showing the transaction details.\n\n![Deploy Contract](../pics/evm-deploy.png)"
  },
  {
    "path": "docs/get-started/explorers.md",
    "content": "---\norder: 6\n---\n\n# IRISnet Explorers\n\nThese block explorers allow you to search, view and analyze IRIS Hub data—like blocks, transactions, validators, governance including params or proposals, etc.\n\n- [IOBScan](https://irishub.iobscan.io/)\n- [Big-Dipper](https://iris.bigdipper.live/)\n- [Hubble](https://hubble.figment.network/iris/chains/irishub)\n- [Mintscan](https://irishub.mintscan.io/)\n- [LOOK](https://iris.ping.pub/#/validator)\n- [ATOMScan](https://atomscan.com/iris-network)\n"
  },
  {
    "path": "docs/get-started/install.md",
    "content": "---\norder: 2\n---\n\n# Install\n## Install `go`\n\n::: tip\n**Go 1.15+** is required for building and installing the IRIShub software.\n:::\n\nInstall `go` by following the [official docs](https://golang.org/doc/install).\n\nRemember to set your `$GOPATH`, `$GOBIN`, and `$PATH` environment variables, for example:\n\n```bash\nmkdir -p $HOME/go/bin\necho \"export GOPATH=$HOME/go\" >> ~/.bashrc\nsource ~/.bashrc\necho \"export GOBIN=$GOPATH/bin\" >> ~/.bashrc\nsource ~/.bashrc\necho \"export PATH=$PATH:$GOBIN\" >> ~/.bashrc\nsource ~/.bashrc\n```\n\nVerify that `go` has been installed successfully\n\n```bash\ngo version\n```\n\n## Install `iris`\n\nAfter setting up `go` correctly, you should be able to compile and run `iris`.\n\nMake sure that your server can access to google.com because our project depends on some libraries provided by google. (If you are not able to access google.com, you can also try to add a proxy: `export GOPROXY=https://goproxy.io`)\n\n```bash\ngit clone https://github.com/irisnet/irishub\ncd irishub\ngit checkout <version>\nmake install\n```\n\nIf your environment variables have set up correctly, you should not get any errors by running the above commands.\nNow check your `iris` version.\n\n```bash\niris version\n```\n"
  },
  {
    "path": "docs/get-started/intro.md",
    "content": "---\norder: 1\n---\n\n# Introduction\n\n## IRIS Network\n\nThe IRIS network is an internet of blockchains intended to provide a technology foundation that facilitates construction of distributed business applications.\n\n![Figure of IRIS Network](../pics/chap2-1.jpg)\n\nThe IRIS network is part of the larger Cosmos network -- all zones in the network would be able to interact with any other zone in the Cosmos network over the standard IBC protocol.  By introducing a layer of service semantics into the network, we are going to provide an innovative solution that enables a whole new set of business scenarios, which would result in an increase in scale and diversity of the Cosmos network.\n\n## IRIS Hub\n\nAt the \"center\" of the IRIS network is a blockchain known as the *IRIS Hub*, which is a Proof-of-Stake (PoS) blockchain built on Cosmos SDK and Tendermint.  It will be the first regional hub that connects to the Cosmos Hub as one of its zones.  The IRIS hub is equipped with a service protocol that coordinates on-chain transaction processing with off-chain data processing and business logic execution.  We have also enhanced the IBC protocol to facilitate cross-chain invocation of those off-chain services, if so desired.\n\nThe service protocol and enhanced IBC protocol could eventually be contributed back into Cosmos SDK, allowing SDK users to develop blockchains that are compatible with the IRIS network.\n\nClient-facing, programming language specific SDKs will also be available to make it easy to provide and consume off-chain services within the IRIS network.\n\n## IRIS Tokens\n\nThe IRIS hub has its own native token known as *IRIS*.  It is designed to serve three purposes in the network.\n\n* **Staking.**  Similar to the ATOM token in the Cosmos Hub, the IRIS token will be used as a staking token to secure the PoS blockchain.\n\n* **Transaction Fee.**  The IRIS token will also be used to pay fees for all transactions in the IRIS network.\n\n* **Service Fee.**  It is required that service providers in the IRIS network charge service fees denominated in the IRIS token.\n\nIt is intended that the IRIS network will eventually support all whitelisted fee tokens from the Cosmos network, which can be used to pay the transaction fees and service fees.\n\n## IRIS Services\n\n*IRIS Services* (a.k.a. \"iService\") are introduced to bridge the gap between the blockchain world and the conventional business application world, mediating the complete lifecycle of off-chain services -- from their definition, binding (provider registration), invocation, to their governance (profiling and arbitration).\n\n### Lifecycle\n\n* **Definition:** Definition of what an off-chain iService can do in terms of an Interface Definition Language (IDL) file.\n\n* **Binding:** Declaration of the location (address), pricing and QoS of a provider endpoint that implements a given iService definition.\n\n* **Invocation:** Handling of consumer requests to and provider responses from a given iService provider endpoint.\n\n### Providers\n\n*Providers* are network users who offer the implementation of one or more iService definitions and often act as *adaptors* of off-chain services and resources located in other public and consortium chains, as well as in enterprise legacy systems.  Providers monitor and process incoming requests and send responses back to the network.  A provider could at the same time act as a consumer by sending requests to other providers.  As planned, providers would be required to charge a fee for any services they might offer, and the service fee, by default, would be priced in the IRIS token.\n\n### Consumers\n\n*Consumers* are those users who consume iService by sending requests to designated provider endpoints and receiving responses from providers in question.\n\n### Profilers\n\n*Profilers* are special consumers who act on behalf of the IRIS Foundation Limited, a Hong Kong incorporated company limited by guarantee that takes the lead in building the IRIS network.  Profilers are the sole users authorized to invoke iService in the *profiling mode*, which is intended to help create and maintain objective provider profiles that consumers refer to for provider screening.\n\n### Arbitrators\n\n*Arbitrators* are self-declared users who, working collectively, arbitrate consumer complaints against provider performance.  The details about the arbitration mechanism are being actively worked on, please keep an eye on our [whitepaper](../resources/whitepaper.md).\n"
  },
  {
    "path": "docs/get-started/mainnet.md",
    "content": "---\norder: 3\n---\n\n# Join The Mainnet\n\n:::tip\n**Requirements:** [install iris](install.md)\n:::\n\n## Run a Full Node\n\n### Start node from genesis\n\n:::tip\n**We recommend running a full node via state sync** (see the next subsection). But if you want to start from genesis, you must use irishub [v1.0.1](https://github.com/irisnet/irishub/releases/tag/v1.0.1) to initialize your node.\n:::\n\n```bash\n# initialize node configurations\niris init <moniker> --chain-id=irishub-1\n\n# download mainnet public config.toml and genesis.json\ncurl -o ~/.iris/config/config.toml https://raw.githubusercontent.com/irisnet/mainnet/master/config/config.toml\ncurl -o ~/.iris/config/genesis.json https://raw.githubusercontent.com/irisnet/mainnet/master/config/genesis.json\n\n# start the node (you can also use \"nohup\" or \"systemd\" to run in the background)\niris start\n```\n\nNext, your node will process all chain upgrades. Between each upgrade, you must use the specified version to catch up with the block. Don't worry about using the old version at the upgrade height, the node will be halted automatically.\n\n| Proposal                                               | Start height | Upgrade height | irishub version                                                                                                                    |\n| ------------------------------------------------------ | ------------ | -------------- | ---------------------------------------------------------------------------------------------------------------------------------- |\n| genesis                                                | 9146456      | 9593205        | [v1.0.1](https://github.com/irisnet/irishub/releases/tag/v1.0.1)                                                                   |\n| [#1](https://irishub.iobscan.io/#/ProposalsDetail/1)   | 9593206      |                | [v1.1.0](https://github.com/irisnet/irishub/releases/tag/v1.1.0), [v1.1.1](https://github.com/irisnet/irishub/releases/tag/v1.1.1) |\n| [#8](https://irishub.iobscan.io/#/ProposalsDetail/8)   | 12393048     | 12534300       | [v1.2.0](https://github.com/irisnet/irishub/releases/tag/v1.2.0), [v1.2.1](https://github.com/irisnet/irishub/releases/tag/v1.2.1) |\n| [#11](https://irishub.iobscan.io/#/ProposalsDetail/11) | 14166918     | 14301916       | [v1.3.0](https://github.com/irisnet/irishub/releases/tag/v1.3.0)                                                                   |\n| [#19](https://irishub.iobscan.io/#/gov/proposals/19)   |              | 17685953       | [v1.4.1](https://github.com/irisnet/irishub/releases/tag/v1.4.1)                                                                   |\n| [#39](https://irishub.iobscan.io/#/gov/proposals/39)   |              | 19514010       | [v2.0.0](https://github.com/irisnet/irishub/releases/tag/v2.0.0)                                                                   |\n\n:::tip\nYou may see some connection errors, it does not matter, the P2P network is trying to find available connections\n\nTry to add some of the [Community Peers](https://github.com/irisnet/mainnet/blob/master/config/community-peers.md) to `persistent_peers` in the config.toml\n\nIf you want to quickly start the node and join IRIS Hub without historical data, you can consider using the [state_sync](./state-sync.md) function.\n:::\n\n### Quick Start via State Sync\n\nTo quickly get started, node operators can choose to sync via State Sync. State Sync works by replaying larger chunks of application state directly rather than replaying individual blocks or consensus rounds.\n\nThe newest state sync configs can be found [here](https://ping.pub/iris/statesync). **Please remember to modify state sync configs.**\n\n```bash\n# Build iris binary and initialize chain\niris init <moniker> --chain-id=irishub-1\n\n# Configure State sync\n[statesync]\nenable = true\nrpc_servers = \"http://34.82.96.8:26657,http://34.77.68.145:26657\"\ntrust_height = 19511000\ntrust_hash = \"65cbc3a14f81d07ff2367202af1bd1a9c958800e643aedfc80518ec642e89eb8\"\ntrust_period = \"168h\"  # 2/3 of unbonding time\n\n#Start Iris\niris start --x-crisis-skip-assert-invariants\n```\n\n## Upgrade to Validator Node\n\n### Create a Wallet\n\nYou can [create a new wallet](../cli-client/keys.md#create-a-new-key) or [import an existing one](../cli-client/keys.md#recover-an-existing-key-from-seed-phrase), then get some IRIS from the exchanges or anywhere else into the wallet you just created, .e.g.\n\n```bash\n# create a new wallet\niris keys add <key-name>\n```\n\n:::warning\n**Important**\n\nwrite the seed phrase in a safe place! It is the only way to recover your account if you ever forget your password.\n:::\n\n### Confirm your node has caught-up\n\n```bash\n# if you have not installed jq\n# apt-get update && apt-get install -y jq\n\n# if the output is false, means your node has caught-up\niris status | jq .sync_info.catching_up\n```\n\n### Create Validator\n\nOnly if your node has caught-up, you can run the following command to upgrade your node to be a validator.\n\n```bash\niris tx staking create-validator \\\n    --pubkey=$(iris tendermint show-validator) \\\n    --moniker=<your-validator-name> \\\n    --amount=<amount-to-be-delegated, e.g. 10000iris> \\\n    --min-self-delegation=1 \\\n    --commission-max-change-rate=0.1 \\\n    --commission-max-rate=0.1 \\\n    --commission-rate=0.1 \\\n    --gas=100000 \\\n    --fees=0.6iris \\\n    --chain-id=irishub-1 \\\n    --from=<key-name>\n```\n\n:::warning\n**Important**\n\nBackup the `config` directory located in your iris home (default ~/.iris/) carefully! It is the only way to recover your validator.\n:::\n\nIf there are no errors, then your node is now a validator or candidate (depending on whether your delegation amount is in the top 100)\n\nRead more:\n\n- Concepts\n  - [General Concepts](../concepts/general-concepts.md)\n  - [Validator FAQ](../concepts/validator-faq.md)\n- Validator Security\n  - [Sentry Nodes (DDOS Protection)](../concepts/sentry-nodes.md)\n  - [Key Management](../tools/kms.md)\n\n## Faucet\n\nRequest IRISnet mainnet tokens from the Faucet powered by Stakely.\n\nFor the usage, please refer to the guideline on the Faucet page: https://stakely.io/faucet/irisnet-iris\n"
  },
  {
    "path": "docs/get-started/state-sync.md",
    "content": "---\norder: 7\n---\n\n# State Sync\n\nIf you want to quickly start the node and join IRIS Hub without historical data, you can consider using the `state_sync` feature. **Note that the data directory must be empty when starting the node.**\n\n## Procedure\n\n1. Initialize the mainnet node by referring to [Join The Mainnet](./mainnet.md).\n2. Check the block height of the current snapshot, and select the latest height.\n\n```bash\ncurl http://sentry-0.mainnet.irisnet.org:26658/\n```\n\n3. Modify the `config.toml`.\n\n```toml\n[statesync]\nenable = true # whether enable stat_sync; set true\nrpc_servers = \"sentry-0.mainnet.irisnet.org:26657,sentry-1.mainnet.irisnet.org:26657\" # RPC server address which the node connects to\ntrust_height = # Set to the block height of the latest snapshot\ntrust_hash = \"\" #Set to the hash corresponding to the latest snapshot block height (trust height), which can be checked via https://irishub.iobscan.io/#/block/<trust_height>.\ntrust_period = \"168h0m0s\"\ndiscovery_time = \"15s\"\ntemp_dir = \"\"\n```\n\n4. Start the node.\n\n```bash\niris start\n```\n\n## Others\n\n1. If any problem occurs during chain starting, you can execute `iris unsafe-reset-all` to reset the node and repeat the steps above.\n2. If you can't find solutions to the current issue, please contact us via [IRISnet Discord channel](https://discord.com/invite/bmhu9F9xbX) for help.\n"
  },
  {
    "path": "docs/get-started/testnet.md",
    "content": "---\norder: 4\n---\n\n# Join The Testnet\n\nAfter IRIS Hub 1.0 upgrade of mainnet, **Nyancat Testnet** starts to operate as a stable application testnet which has the same version as the mainnet, so that the service providers of IRISnet can develop their apps on or interact with IRIShub without running a node or lcd instance.\n\n## Public Endpoints\n\n- GRPC: 35.234.10.84:9090\n- RPC: http://35.234.10.84:26657/\n- REST: http://35.234.10.84:1317/swagger/\n\n\n\n## Run a Full Node\n\n### Start node from genesis\n::tip \nYou must use Irishub [v1.1.1](https://github.com/irisnet/irishub/releases/tag/v1.1.1)[ ](https://github.com/irisnet/irishub/releases/tag/v1.0.1) to initialize your node::\n\n```bash\n# init node\niris init <moniker> --chain-id=nyancat-8\n\n# download public config.toml and genesis.json\ncurl -o ~/.iris/config/config.toml https://github.com/irisnet/testnets/blob/master/nyancat/config/config.toml\ncurl -o ~/.iris/config/genesis.json https://raw.githubusercontent.com/irisnet/testnets/master/nyancat/config/genesis.json\n\n# Start the node (also running in the background, such as nohup or systemd)\niris start\n```\n\n\n\n## Faucet\n\nWelcome to get test tokens in our [testnet faucet channel](https://discord.gg/Z6PXeTb5Mt) \n\nUsage: in [nyancat-faucet channel](https://discord.gg/Z6PXeTb5Mt), type \"$faucet \" + your address on Nyancat testnet, to get test tokens (NYAN) every 24 hours.\n\n## Explorer\n\n<https://nyancat.iobscan.io/>\n\n## Community\n\nWelcome to discuss in our [nyancat testnet channel](https://discord.gg/9cSt7MX2fn) \n"
  },
  {
    "path": "docs/get-started/wallets.md",
    "content": "---\norder: 5\n---\n\n# IRIShub Wallets\n\nThese web and mobile wallets allow you to store & transfer IRIS, delegate IRIS to validators, and some of them also support ATOM. Note that we do not endorse any of the wallets, they are listed for your convenience.\n\n- [Rainbow](https://www.rainbow.one/) (Android，iOS)\n- [Math Wallet](http://www.mathwallet.org/en/) (Android，iOS)\n- [Wetez](https://www.wetez.io/pc/homepage) (Android，iOS)\n- [Cosmostation](https://www.cosmostation.io/) (Android，iOS)\n- [SyncNode](https://wallet.syncnode.ro/) (iOS)\n- [ViaWallet](https://viawallet.com/) (Android, iOS)\n- [LoyToken](http://www.loytoken.com/) (Android, iOS)\n- [Keplr](https://keplr.app/) (Web)\n"
  },
  {
    "path": "docs/migration/account.md",
    "content": "## Introduction\n\nIRISHub v2.0 changed the generative structure of the entire account system from `auth.BaseAccountProto` to `ethermint.ProtoAccount` , resulting in incompatibility of newly created accounts;\n\n**Note:** **Accounts before the v2.0 upgrade will not be affected and can still be used normally**\n\n**The following content takes nyancat testnet as an example：**\n\nFor accounts before the v2.0 upgrade, the query structure through LCD is as follows: https://lcd.nyancat.irisnet.org/cosmos/auth/v1beta1/accounts/iaa1e0rx87mdj79zejewuc4jg7ql9ud2286g2us8f2\n\n```json\n{\n     \"account\": {\n         \"@type\": \"/cosmos.auth.v1beta1.BaseAccount\",\n         \"address\":\"iaa1e0rx87mdj79zejewuc4jg7ql9ud2286g2us8f2\",\n         \"pub_key\": {\n             \"@type\": \"/cosmos.crypto.secp256k1.PubKey\",\n             \"key\":\"AiOFJ3Jclq/8y3xV85ALNFuA7FJo1IMoTxYoB3ddMrMr\"\n         },\n         \"account_number\": \"1251\",\n         \"sequence\": \"12983\"\n     }\n}\n```\n\nFor accounts upgraded in v2.0, the query structure through LCD is as follows: https://lcd.nyancat.irisnet.org/cosmos/auth/v1beta1/accounts/iaa1g4uak38a8fhkg5v5qky3fc9g6h50yrdcn7waug\n\n```json\n{\n     \"account\": {\n         \"@type\": \"/ethermint.types.v1.EthAccount\",\n         \"base_account\": {\n             \"address\":\"iaa1g4uak38a8fhkg5v5qky3fc9g6h50yrdcn7waug\",\n             \"pub_key\": {\n                 \"@type\": \"/ethermint.crypto.v1.ethsecp256k1.PubKey\",\n                 \"key\":\"AhHKT0xpnrOmpikkd1lEPxiEHG4ngItq06KLhwU2UQHO\"\n             },\n             \"account_number\": \"5564\",\n             \"sequence\": \"6\"\n         },\n         \"code_hash\": \"0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470\"\n     }\n}\n```\n\n\n### Using Proto\n\nA new type needs to be registered, and the type structure is here: https://github.com/bianjieai/ethermint/blob/v0.20.0-irishub-1/proto/ethermint/types/v1/account.proto\n\nWhen the query structure is `/ethermint.types.v1.EthAccount`, use the new structure analysis;\n\nWhen the query structure is `/cosmos.auth.v1beta1.BaseAccount`, use the old structure analysis;\n\nYou can refer to the core-sdk-go written by the irisnet team. The relevant hash is at: https://github.com/irisnet/core-sdk-go/commit/68ed671727e057edb185935c42710f8777dab62f\n\n### Useing LCD\n\nWhen parsing, please make compatibility according to the required type;\n\nIf the type is `/cosmos.auth.v1beta1.BaseAccount`, use the old structure analysis;\n\nIf the type is `/ethermint.types.v1.EthAccount`, use the new structure analysis;"
  },
  {
    "path": "docs/migration/keys.md",
    "content": "# Keys Migrate\n\nThe keyfile (private key) of irishub v0.16.x uses db storage. The new version v1.0+ will offer a new way to store user private keys. In order to support the migration of the old keyfile to the new version, there are two solutions provided.\n\n## Mnemonic\n\nThis way is suitable for users who have mnemonic words. When creating a new account, the system will randomly assign a mnemonic phrase to the user, and use this mnemonic phrase to recover the user's private key. Regardless of the v0.16.x version, or v1.0+, the mnemonic phrase remains unchanged. You can use the `add` command with the `--recover` flag to restore the account, for example:\n\n```bash\niris keys add n2 --recover\n```\n\n## Keystore\n\nThis way is suitable for users who have lost the mnemonic but saved the db file of the keys, or the keystore file of the keys. The format of the keystore file of irishub v0.16.x is similar to that of Ethereum, and v1.0+ is also fully compatible with a new format. Therefore, the user can export the old private key using the keystore, and then use the v1.0+ version of irishub to import the keystore to complete the key migration.The operation process is as follows:\n\n**1. Use irishub v0.16.x to export keystore file**\n\n```bash\niriscli keys export test1 --output-file=key.json --home ./iriscli_test \n```\n\noutput:\n\n```json\n{\n    \"address\":\"iaa1k2j3ws7ghwl9qha36xdcmwuu4rend2yr9tw05q\",\n    \"crypto\":{\n        \"cipher\":\"aes-128-ctr\",\n        \"ciphertext\":\"b5e586baf1126f982ee89ffa9fd23fc68e0a25e1d561d6d59896a0b4878a4d5f\",\n        \"cipherparams\":{\n            \"iv\":\"d02a7b40ce35b6e87f9a395850372bbc\"\n        },\n        \"kdf\":\"pbkdf2\",\n        \"kdfparams\":{\n            \"c\":262144,\n            \"dklen\":32,\n            \"prf\":\"hmac-sha256\",\n            \"salt\":\"8c77a3a8a75a76da203b262e7fa0187bafbd2ab8bfd3b21ba99f88dcc550d1a6\"\n        },\n        \"mac\":\"4bdf3fd116a4b9d7eb8846d078399f41a6e271a80678ce8979e4fa86f793cdeb\"\n    },\n    \"id\":\"c63bdcd2-c470-4c9a-90eb-a4ef6d3d5937\",\n    \"version\":\"1\"\n}\n    ```\n\n**2. Use irishub v1.0.1 to import keystore file**\n\n```bash\niris keys import n2 key.json --keyring-backend file \n```\n\n**3. Verify the imported key information**\n\n```bash\niris keys show n2 --keyring-backend file\n```\n\noutput:\n\n```text\nEnter keyring passphrase:\n- name: n2\ntype: local\naddress: iaa1k2j3ws7ghwl9qha36xdcmwuu4rend2yr9tw05q\npubkey: iap1addwnpepqgrj4yshwmq7v7akp04empq9rrn6w26e8q6gpl7jkfjaexk93deq2pwa3m6\nmnemonic: \"\"\nthreshold: 0\npubkeys: []\n```\n\nThe output account address is consistent with the address in the keystore file, and the migration is successful.\n"
  },
  {
    "path": "docs/package.json",
    "content": "{\n  \"name\": \"docs\",\n  \"version\": \"1.0.0\",\n  \"description\": \"IRISnet Documents\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"serve\": \"vuepress dev\",\n    \"build\": \"vuepress build\"\n  },\n  \"author\": \"IRISnet Dev Team\",\n  \"license\": \"ISC\",\n  \"devDependencies\": {\n    \"@vuepress/client\": \"2.0.0-rc.0\",\n    \"@vuepress/plugin-search\": \"2.0.0-rc.0\",\n    \"axios\": \"^1.6.2\",\n    \"lodash\": \"^4.17.21\",\n    \"markdown-it\": \"^12.3.2\",\n    \"markdown-it-meta\": \"^0.0.1\",\n    \"vue\": \"^3.3.8\",\n    \"vuepress\": \"2.0.0-rc.0\"\n  },\n  \"dependencies\": {\n    \"glob\": \"^7.2.0\"\n  }\n}\n"
  },
  {
    "path": "docs/resources/whitepaper.md",
    "content": "# White Paper\n\n- [English](https://github.com/irisnet/irisnet/blob/master/WHITEPAPER.md)\n\n"
  },
  {
    "path": "docs/tools/kms/kms_cpu.md",
    "content": "# Setting up Tendermint KMS + CPU\n\nWORKING IN PROGRESS\n"
  },
  {
    "path": "docs/tools/kms/kms_ledger.md",
    "content": "# Setting up Tendermint KMS + Ledger\n\nWORKING IN PROGRESS\n"
  },
  {
    "path": "docs/tools/kms.md",
    "content": "---\norder: 3\n---\n\n# Key Management System\n\n## Introduction\n\n[Tendermint KMS](https://github.com/iqlusioninc/tmkms) is a key management service that allows separating key management from Tendermint nodes. In addition it provides other advantages such as:\n\n- Improved security and risk management policies\n- Unified API and support for various HSM (hardware security modules)\n- Double signing protection (software or hardware based)\n\n## Building\n\nDetailed build instructions can be found [here](https://github.com/iqlusioninc/tmkms#installation).\n\n:::tip\nWhen compiling the KMS, ensure you have enabled the `yubihsm` features:\n:::\n\n```bash\ncargo install tmkms --features=yubihsm --version=0.10.0-beta2\n```\n\n## Initialization\n\nInitialize configuration files for IRIShub\n\n```bash\ntmkms init -n irishub /path/to/kms/home\n```\n\n## Configuration\n\nTo enable KMS, you need to edit the `priv_validator_laddr` in your `<iris-home>/config/config.toml` file first. e.g.:\n\n```toml\n# TCP or UNIX socket address for Tendermint to listen on for\n# connections from an external PrivValidator process\npriv_validator_laddr = \"localhost:26658\"\n```\n\nThen, downLoad [priv_validator_state.json example](https://github.com/irisnet/irishub/blob/master/docs/tools/priv_validator_state.json) and modify all field values to match your `<iris-home>/data/priv_validator_state.json` values.\n\nNext, you just need to edit the configuration file `/path/to/kms/home/tmkms.toml` as follows:\n\n- Configure `state_file` as the `priv_validator_state.json` completed in the previous step.\n- Write your Yubihsm password to file `yubihsm-password.txt` and configure `password_file` as it.\n- Edit `addr` to point to your `iris` instance(note: no need to specify the connection id, just like tcp://localhost:26658).\n- Adjust `chain_id` to match your `<iris-home>/config/genesis.json` settings.\n- Edit `auth` to authorize access to your Yubihsm.\n- Edit `keys` to determine which pubkey you will be using.\n- Edit `protocol_version` to v0.34.\n\nThen start tmkms:\n\n```bash\ntmkms start -c /path/to/kms/home/tmkms.toml\n```\n\n### Using a YubiHSM\n\nDetailed information on how to setup a KMS with YubiHSM2 can be found [here](https://github.com/iqlusioninc/tmkms/blob/master/README.yubihsm.md).\n\nIf you want to import an existing IRIShub private_key:\n\n```bash\ntmkms yubihsm keys import <iris_home>/config/priv_validator.json -i <id> -t json -c /path/to/kms/home/tmkms.toml\n```\n"
  },
  {
    "path": "docs/tools/ledger.md",
    "content": "---\norder: 4\n---\n\n# Ledger Nano Support\n\nIt is recommended to have a basic understanding of the [IRIShub Key](../concepts/key.md) before using the ledger.\n\n## Ledger Support for account keys\n\nAt the core of a Ledger device, there is a mnemonic that is used to generate private keys. When you initialize you Ledger, a mnemonic is generated.\n\n::: danger\n**Do not lose or share your 24 words with anyone. To prevent theft or loss of funds, it is best to ensure that you keep multiple copies of your mnemonic, and store it in a safe, secure place and that only you know how to access. If someone is able to gain access to your mnemonic, they will be able to gain access to your private keys and control the accounts associated with them.**\n:::\n\nThis mnemonic is compatible with IrisNet accounts. The tool used to generate addresses and transactions on the IrisNet network is called `iris`, which supports derivation of account keys from a Ledger seed. Note that the Ledger device acts as an enclave of the seed and private keys, and the process of signing transaction takes place within it. No private information ever leaves the Ledger device.\n\nTo use `iris` with a Ledger device you will need the following(Since IRIShub is based on cosmos-sdk, the COSMOS app is available for IRIShub):\n\n- [A Ledger Nano with the `COSMOS` app installed and an account.](#using-a-ledger-device)\n- [A running `iris` instance connected to the network you wish to use.](../get-started/mainnet.md)\n- [A `iris` instance configured to connect to your chosen `iris` instance.](../cli-client/intro.md)\n\nNow, you are all set to start sending transactions on the network.\n\nAt the core of a ledger device, there is a mnemonic used to generate accounts on multiple blockchains (including the IRIShub). Usually, you will create a new mnemonic when you initialize your ledger device.\n\nNext, learn how to generate an account.\n\n## Create an account\n\nTo create an account, you just need to have `iris` installed. Before creating it, you need to know where you intend to store and interact with your private keys. The best options are to store them in an offline dedicated computer or a ledger device. Storing them on your regular online computer involves more risk, since anyone who infiltrates your computer through the internet could exfiltrate your private keys and steal your funds.\n\n### Use a ledger device\n\n::: warning\nOnly use Ledger devices that you bought factory new or trust fully\n:::\n\nWhen you initialize your Ledger, a 24-word mnemonic is generated and stored in the device. This mnemonic is compatible with IRIShub and IRIShub accounts can be derived from it. Therefore, all you have to do is make your ledger compatible with `iris`. To do so, you need to go through the following steps:\n\n1. Install [Ledger Live](https://www.ledger.com/pages/ledger-live) on your machine.\n2. Using Ledger Live, [update your Ledger Nano S with the latest firmware](https://support.ledger.com/hc/en-us/articles/360002731113-Update-device-firmware).\n3. On the Ledger Live application, navigate to the `Manager` menu.\n    ![manager](../pics/ledger-manager.png)\n4. Connect your Ledger Nano device and allow Ledger Manager from it.\n5. On the Ledger Live application, Search for `Cosmos`.\n    ![search](../pics/ledger-search.png)\n6. Install the Cosmos application by clicking on `Install`.\n\nThen, to create an account, use the following command:\n\n```bash\niris keys add <keyName> --ledger\n```\n\nIRIShub uses [HD Wallets](../concepts/key.md). This means you can setup many accounts using the same Ledger seed. To create another account from your Ledger device, run (change the integer i to some value >= 0 to choose the account for HD derivation):\n\n```bash\niris keys add <secondKeyName> --ledger --account <i>\n```\n\n## Send transaction\n\nYou are now ready to start signing and sending transactions. The following is an example of using iris to send a token transfer transaction.\n\n```bash\niris tx bank send --help # to see all available options.\n```\n\n::: tip\nBe sure to unlock your device with the PIN and open the Cosmos app before trying to run these commands\n:::\n\nUse the keyName you set for your Ledger key and iris will connect with the Cosmos Ledger app to then sign your transaction.\n\n::: tip\nThe Cosmos app only support amino-json sign mode now, you must add the flag `--sign-mode amino-json` to use it.\n:::\n\n```bash\niris tx send <keyName> <destinationAddress> <amount><denomination> --sign-mode amino-json\n```\n\nWhen prompted with confirm transaction before signing, Answer Y.\n\nNext you will be prompted to review and approve the transaction on your Ledger device. Be sure to inspect the transaction JSON displayed on the screen. You can scroll through each field and each message.\n\nNow, you are all set to start [sending transactions on the network](../cli-client/tx.md).\n"
  },
  {
    "path": "docs/tools/monitor.md",
    "content": "---\norder: 1\n---\n\n# IRIS Hub Monitor\n\n## Introduction\n\nIRIShub can report and serve the Prometheus metrics, which can be consumed by Prometheus collector(s).\n\nThis functionality is disabled by default.\n\nTo enable the Prometheus metrics, set `prometheus = true` in your config file(config.toml). Metrics will be served under /metrics on 26660 port by default. This port can be changed in the config file (`prometheus_listen_addr = \":26660\"`).\n\n## Metrics\n\nApplication metrics, namespace: `iris`\n\n| **Name**                          | **Type** | **Tags**                       | **Description**                                                               |\n| --------------------------------- | -------- | ------------------------------ | ----------------------------------------------------------------------------- |\n| module_stake_bonded_token         | Gauge    | validator_address              | Total bonded token by validator                                               |\n| module_stake_loosen_token         | Gauge    |                                | Total loose tokens                                                            |\n| module_stake_burned_token         | Gauge    |                                | Total burned token                                                            |\n| module_stake_slashed_token        | Counter  | validator_address              | Total slashed token by validator                                              |\n| module_stake_jailed               | Gauge    | validator_address              | Jailed status by validator, either 0 (not jailed) or 1 (jailed)               |\n| module_stake_power                | Gauge    | validator_address              | Voting power by validator                                                     |\n| module_upgrade_upgrade            | Gauge    |                                | Whether new software needs to be installed, either 0 (no) or 1 (yes)          |\n| module_upgrade_signal             | Gauge    | validator_address, version     | Whether validator have run the new version software, either 0 (no) or 1 (yes) |\n| module_service_active_requests    | Gauge    |                                | Number of active requests                                                     |\n| module_gov_parameter              | Gauge    | parameter_key                  | Parameter of governance                                                       |\n| module_gov_proposal_status        | Gauge    | proposal_id                    | Status of proposal, 0:DepositPeriod 1:VotingPeriod 2:Pass 3:Reject 4:Other    |\n| module_gov_vote                   | Gauge    | proposal_id, validator_address | Validator vote result of a proposal, 0:Yes 1:No 2:NoWithVeto 3:Abstain        |\n| module_distribution_community_tax | Gauge    | height                         | Community tax accumulation                                                    |\n| v0_invariant_failure              | Counter  | error                          | Invariant failure stats                                                       |\n\nConsensus metrics, namespace: `tendermint`\n\n| **Name**                             | **Type**  | **Tags**         | **Description**                                                 |\n| ------------------------------------ | --------- | ---------------- | --------------------------------------------------------------- |\n| consensus_height                     | Gauge     |                  | Height of the chain                                             |\n| consensus_failure                    | Counter   | height           | Consensus failure                                               |\n| consensus_validators                 | Gauge     |                  | Number of validators                                            |\n| consensus_validators_power           | Gauge     |                  | Total voting power of all validators                            |\n| consensus_missing_validators         | Gauge     |                  | Number of validators who did not sign                           |\n| consensus_missing_validators_power   | Gauge     |                  | Total voting power of the missing validators                    |\n| consensus_byzantine_validators       | Gauge     |                  | Number of validators who tried to double sign                   |\n| consensus_byzantine_validators_power | Gauge     |                  | Total voting power of the byzantine validators                  |\n| consensus_block_interval_seconds     | Histogram |                  | Time between this and last block (Block.Header.Time) in seconds |\n| consensus_rounds                     | Gauge     |                  | Number of rounds                                                |\n| consensus_num_txs                    | Gauge     |                  | Number of transactions                                          |\n| consensus_block_parts                | Counter   | peer_id          | Number of blockparts transmitted by peer                        |\n| consensus_latest_block_height        | Gauge     |                  | /status sync_info number                                        |\n| consensus_fast_syncing               | Gauge     |                  | Either 0 (not fast syncing) or 1 (syncing)                      |\n| consensus_total_txs                  | Gauge     |                  | Total number of transactions committed                          |\n| consensus_block_size_bytes           | Gauge     |                  | Block size in bytes                                             |\n| p2p_peers                            | Gauge     |                  | Number of peers node's connected to                             |\n| p2p_peer_receive_bytes_total         | Counter   | peer_id          | Number of bytes received from a given peer                      |\n| p2p_peer_send_bytes_total            | Counter   | peer_id          | Number of bytes sent to a given peer                            |\n| p2p_peer_pending_send_bytes          | Gauge     | peer_id          | Number of pending bytes to be sent to a given peer              |\n| p2p_num_txs                          | Gauge     | peer_id          | Number of transactions submitted by each peer_id                |\n| mempool_size                         | Gauge     |                  | Number of uncommitted transactions                              |\n| mempool_tx_size_bytes                | Histogram |                  | Transaction sizes in bytes                                      |\n| mempool_failed_txs                   | Counter   |                  | Number of failed transactions                                   |\n| mempool_recheck_times                | Counter   |                  | Number of transactions rechecked in the mempool                 |\n| state_block_processing_time          | Histogram |                  | Time between BeginBlock and EndBlock in ms                      |\n| state_recheck_time                   | Histogram |                  | Time cost on recheck in ms                                      |\n| state_app_hash_conflict              | Counter   | proposer, height | App hash conflict error                                         |\n\nIRIShub metrics also contains tendermint metrics, Visit [tendermint metrics](https://github.com/irisnet/tendermint/blob/irisnet/master/docs/tendermint-core/metrics.md) for more information.\n\n## Start Monitor\n\nThis is an example for getting started with the IRIShub Monitor by using docker.\n\n### Edit Prometheus config file\n\nYou can download the example [prometheus.yml](https://raw.githubusercontent.com/prometheus/prometheus/master/documentation/examples/prometheus.yml)  to the `~/volumes/prometheus/` and add a job under the `scrape_configs` of the `prometheus.yml`:\n\n```yaml\n      - job_name: irishub\n          static_configs:\n          - targets: ['localhost:26660']\n            labels:\n              instance: myvalidator\n```\n\n:::tip\nThe value of targets is the `prometheus_listen_addr` in your `config.toml`\n:::\n\n### Start Prometheus\n\n```bash\ndocker run -d --name=prometheus -p 9090:9090 -v ~/volumes/prometheus:/etc/prometheus prom/prometheus\n```\n\nYou should be able to browse to a status page about prometheus at <http://localhost:9090>\n\n### Start Grafana\n\n```bash\ndocker run -d --name=grafana -p 3000:3000 grafana/grafana\n```\n\nYou can visit <http://localhost:3000/> to open grafana and create your own dashboard.\n\n:::tip\nThe default username and password are both admin. We strongly recommend immediately changing your username & password after login.\n\nA Grafana dashboard compatible with all the cosmos-sdk and tendermint based blockchains: [cosmos-dashboard](https://github.com/zhangyelong/cosmos-dashboard)\n:::\n"
  },
  {
    "path": "docs/tools/priv_validator_state.json",
    "content": "{\n    \"height\": \"0\",\n    \"round\": \"0\",\n    \"step\": 0,\n    \"block_id\": {\n        \"hash\": \"\",\n        \"part_set_header\": {\n            \"total\": 1,\n            \"hash\": \"\"\n        }\n    }\n}"
  },
  {
    "path": "go.mod",
    "content": "module github.com/irisnet/irishub/v4\n\ngo 1.22.11\n\ntoolchain go1.24.9\n\nrequire (\n\tgithub.com/bianjieai/nft-transfer v1.1.3-ibc-v8.6.1\n\tgithub.com/bianjieai/tibc-go v0.6.0\n\tgithub.com/cometbft/cometbft v0.38.21\n\tgithub.com/cometbft/cometbft-db v0.14.1 // indirect\n\tgithub.com/cosmos/cosmos-sdk v0.50.11-lsm\n\tgithub.com/cosmos/gogoproto v1.7.0\n\tgithub.com/cosmos/iavl v1.2.2 // indirect\n\tgithub.com/evmos/ethermint v0.22.0\n\tmods.irisnet.org/modules/coinswap v1.0.0\n\tmods.irisnet.org/modules/farm v1.0.0\n\tmods.irisnet.org/modules/htlc v1.0.0\n\tmods.irisnet.org/modules/mt v1.0.0\n\tmods.irisnet.org/modules/nft v1.0.0\n\tmods.irisnet.org/modules/oracle v1.0.0\n\tmods.irisnet.org/modules/random v1.0.0\n\tmods.irisnet.org/modules/record v1.0.0\n\tmods.irisnet.org/modules/service v1.0.0\n\tmods.irisnet.org/modules/token v1.0.0\n)\n\nrequire (\n\tcosmossdk.io/api v0.7.6 // indirect\n\tcosmossdk.io/depinject v1.1.0 // indirect\n\tcosmossdk.io/math v1.4.0\n\tgithub.com/cosmos/cosmos-proto v1.0.0-beta.5\n\tgithub.com/golang/protobuf v1.5.4\n\tgithub.com/gorilla/mux v1.8.1\n\tgithub.com/grpc-ecosystem/grpc-gateway v1.16.0\n\tgithub.com/rakyll/statik v0.1.7\n\tgithub.com/spf13/cast v1.7.0\n\tgithub.com/spf13/cobra v1.9.1\n\tgithub.com/spf13/pflag v1.0.6\n\tgithub.com/stretchr/testify v1.10.0\n\tgithub.com/tidwall/gjson v1.14.4 // indirect\n\tgithub.com/xeipuuv/gojsonschema v1.2.0 // indirect\n\tgoogle.golang.org/genproto v0.0.0-20240701130421-f6361c86f094 // indirect\n\tgoogle.golang.org/grpc v1.70.0\n\tgoogle.golang.org/protobuf v1.36.5\n\tgopkg.in/yaml.v2 v2.4.0\n\tsigs.k8s.io/yaml v1.4.0 // indirect\n)\n\nrequire (\n\tcosmossdk.io/client/v2 v2.0.0-beta.6\n\tcosmossdk.io/core v0.11.1\n\tcosmossdk.io/log v1.4.1\n\tcosmossdk.io/store v1.1.1\n\tcosmossdk.io/x/evidence v0.1.1\n\tcosmossdk.io/x/feegrant v0.1.1\n\tcosmossdk.io/x/nft v0.1.1\n\tcosmossdk.io/x/tx v0.13.7\n\tcosmossdk.io/x/upgrade v0.1.4\n\tgithub.com/cosmos/cosmos-db v1.1.0\n\tgithub.com/cosmos/ibc-go/modules/capability v1.0.1\n\tgithub.com/cosmos/ibc-go/v8 v8.7.0\n\tgithub.com/gogo/protobuf v1.3.2\n\tgithub.com/hashicorp/go-metrics v0.5.3\n\tgithub.com/olebedev/config v0.0.0-20190528211619-364964f3a8e4\n\tgithub.com/pkg/errors v0.9.1\n\tgithub.com/snikch/goodman v0.0.0-20171125024755-10e37e294daa\n\tgithub.com/spf13/viper v1.19.0\n\tgolang.org/x/crypto v0.33.0\n\tgoogle.golang.org/genproto/googleapis/api v0.0.0-20241202173237-19429a94021a\n)\n\nrequire (\n\tcloud.google.com/go/auth v0.6.0 // indirect\n\tcloud.google.com/go/auth/oauth2adapt v0.2.2 // indirect\n\tcloud.google.com/go/compute/metadata v0.5.2 // indirect\n\tcosmossdk.io/collections v0.4.0 // indirect\n\tcosmossdk.io/simapp v0.0.0-20240118210941-3897926e722e // indirect\n\tcosmossdk.io/tools/rosetta v0.2.1-0.20230613133644-0a778132a60f // indirect\n\tcosmossdk.io/x/circuit v0.1.1 // indirect\n\tgithub.com/DataDog/datadog-go v3.2.0+incompatible // indirect\n\tgithub.com/DataDog/zstd v1.5.5 // indirect\n\tgithub.com/bits-and-blooms/bitset v1.8.0 // indirect\n\tgithub.com/btcsuite/btcd/btcutil v1.1.6 // indirect\n\tgithub.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 // indirect\n\tgithub.com/cockroachdb/errors v1.11.3 // indirect\n\tgithub.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce // indirect\n\tgithub.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect\n\tgithub.com/cockroachdb/pebble v1.1.2 // indirect\n\tgithub.com/cockroachdb/redact v1.1.5 // indirect\n\tgithub.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 // indirect\n\tgithub.com/cosmos/gogogateway v1.2.0 // indirect\n\tgithub.com/cosmos/ics23/go v0.11.0 // indirect\n\tgithub.com/cosmos/rosetta-sdk-go v0.10.0 // indirect\n\tgithub.com/dgraph-io/badger/v4 v4.2.0 // indirect\n\tgithub.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 // indirect\n\tgithub.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf // indirect\n\tgithub.com/emicklei/dot v1.6.2 // indirect\n\tgithub.com/fatih/color v1.15.0 // indirect\n\tgithub.com/getsentry/sentry-go v0.27.0 // indirect\n\tgithub.com/go-logr/logr v1.4.2 // indirect\n\tgithub.com/go-logr/stdr v1.2.2 // indirect\n\tgithub.com/go-sourcemap/sourcemap v2.1.3+incompatible // indirect\n\tgithub.com/gogo/googleapis v1.4.1 // indirect\n\tgithub.com/golang/mock v1.6.0 // indirect\n\tgithub.com/google/flatbuffers v2.0.8+incompatible // indirect\n\tgithub.com/google/s2a-go v0.1.7 // indirect\n\tgithub.com/hashicorp/go-hclog v1.5.0 // indirect\n\tgithub.com/hashicorp/go-plugin v1.5.2 // indirect\n\tgithub.com/hashicorp/golang-lru/v2 v2.0.7 // indirect\n\tgithub.com/hashicorp/yamux v0.1.1 // indirect\n\tgithub.com/huandu/skiplist v1.2.0 // indirect\n\tgithub.com/iancoleman/strcase v0.3.0 // indirect\n\tgithub.com/kr/pretty v0.3.1 // indirect\n\tgithub.com/kr/text v0.2.0 // indirect\n\tgithub.com/linxGnu/grocksdb v1.8.14 // indirect\n\tgithub.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect\n\tgithub.com/oasisprotocol/curve25519-voi v0.0.0-20230904125328-1f23a7beb09a // indirect\n\tgithub.com/oklog/run v1.1.0 // indirect\n\tgithub.com/rogpeppe/go-internal v1.12.0 // indirect\n\tgithub.com/sagikazarmark/locafero v0.4.0 // indirect\n\tgithub.com/sagikazarmark/slog-shim v0.1.0 // indirect\n\tgithub.com/sourcegraph/conc v0.3.0 // indirect\n\tgithub.com/tidwall/btree v1.7.0 // indirect\n\tgithub.com/tidwall/sjson v1.2.5 // indirect\n\tgithub.com/zondax/ledger-go v0.14.3 // indirect\n\tgo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect\n\tgo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect\n\tgo.opentelemetry.io/otel v1.32.0 // indirect\n\tgo.opentelemetry.io/otel/metric v1.32.0 // indirect\n\tgo.opentelemetry.io/otel/trace v1.32.0 // indirect\n\tgo.uber.org/multierr v1.11.0 // indirect\n\tgolang.org/x/time v0.5.0 // indirect\n\tgoogle.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a // indirect\n\tgotest.tools/v3 v3.5.1 // indirect\n\tmods.irisnet.org/api v0.0.0-20241121030837-903540d1123f // indirect\n\tmods.irisnet.org/simapp v0.0.0-20241125071105-d76ae25d05d2 // indirect\n\tpgregory.net/rapid v1.1.0 // indirect\n)\n\nrequire (\n\tcloud.google.com/go v0.115.0 // indirect\n\tcloud.google.com/go/iam v1.1.9 // indirect\n\tcloud.google.com/go/storage v1.41.0 // indirect\n\tcosmossdk.io/errors v1.0.1\n\tfilippo.io/edwards25519 v1.1.0 // indirect\n\tgithub.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 // indirect\n\tgithub.com/99designs/keyring v1.2.1 // indirect\n\tgithub.com/StackExchange/wmi v1.2.1 // indirect\n\tgithub.com/VictoriaMetrics/fastcache v1.6.0 // indirect\n\tgithub.com/aws/aws-sdk-go v1.44.224 // indirect\n\tgithub.com/beorn7/perks v1.0.1 // indirect\n\tgithub.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect\n\tgithub.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816 // indirect\n\tgithub.com/btcsuite/btcd v0.24.2 // indirect\n\tgithub.com/btcsuite/btcd/btcec/v2 v2.3.4 // indirect\n\tgithub.com/cenkalti/backoff/v4 v4.1.3 // indirect\n\tgithub.com/cespare/xxhash/v2 v2.3.0 // indirect\n\tgithub.com/chzyer/readline v1.5.1 // indirect\n\tgithub.com/cockroachdb/apd/v2 v2.0.2 // indirect\n\tgithub.com/coinbase/rosetta-sdk-go v0.7.9 // indirect\n\tgithub.com/cosmos/btcutil v1.0.5 // indirect\n\tgithub.com/cosmos/go-bip39 v1.0.0 // indirect\n\tgithub.com/cosmos/ledger-cosmos-go v0.13.3 // indirect\n\tgithub.com/danieljoos/wincred v1.1.2 // indirect\n\tgithub.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect\n\tgithub.com/deckarep/golang-set v1.8.0 // indirect\n\tgithub.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect\n\tgithub.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f // indirect\n\tgithub.com/dgraph-io/ristretto v0.1.1 // indirect\n\tgithub.com/dustin/go-humanize v1.0.1 // indirect\n\tgithub.com/dvsekhvalnov/jose2go v1.6.0 // indirect\n\tgithub.com/edsrzf/mmap-go v1.0.0 // indirect\n\tgithub.com/ethereum/go-ethereum v1.10.26\n\tgithub.com/felixge/httpsnoop v1.0.4 // indirect\n\tgithub.com/fsnotify/fsnotify v1.7.0 // indirect\n\tgithub.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff // indirect\n\tgithub.com/go-kit/kit v0.13.0 // indirect\n\tgithub.com/go-kit/log v0.2.1 // indirect\n\tgithub.com/go-logfmt/logfmt v0.6.0 // indirect\n\tgithub.com/go-ole/go-ole v1.2.6 // indirect\n\tgithub.com/go-stack/stack v1.8.1 // indirect\n\tgithub.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect\n\tgithub.com/golang/glog v1.2.3 // indirect\n\tgithub.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect\n\tgithub.com/golang/snappy v0.0.4 // indirect\n\tgithub.com/google/btree v1.1.3 // indirect\n\tgithub.com/google/go-cmp v0.6.0 // indirect\n\tgithub.com/google/orderedcode v0.0.1 // indirect\n\tgithub.com/google/uuid v1.6.0 // indirect\n\tgithub.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect\n\tgithub.com/googleapis/gax-go/v2 v2.12.5 // indirect\n\tgithub.com/gorilla/handlers v1.5.2 // indirect\n\tgithub.com/gorilla/websocket v1.5.3 // indirect\n\tgithub.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect\n\tgithub.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c // indirect\n\tgithub.com/hashicorp/go-cleanhttp v0.5.2 // indirect\n\tgithub.com/hashicorp/go-getter v1.7.4 // indirect\n\tgithub.com/hashicorp/go-immutable-radix v1.3.1 // indirect\n\tgithub.com/hashicorp/go-safetemp v1.0.0 // indirect\n\tgithub.com/hashicorp/go-version v1.6.0 // indirect\n\tgithub.com/hashicorp/golang-lru v1.0.2 // indirect\n\tgithub.com/hashicorp/hcl v1.0.0 // indirect\n\tgithub.com/hdevalence/ed25519consensus v0.1.0 // indirect\n\tgithub.com/holiman/bloomfilter/v2 v2.0.3 // indirect\n\tgithub.com/holiman/uint256 v1.2.2 // indirect\n\tgithub.com/huin/goupnp v1.0.3 // indirect\n\tgithub.com/improbable-eng/grpc-web v0.15.0 // indirect\n\tgithub.com/inconshreveable/mousetrap v1.1.0 // indirect\n\tgithub.com/jackpal/go-nat-pmp v1.0.2 // indirect\n\tgithub.com/jmespath/go-jmespath v0.4.0 // indirect\n\tgithub.com/jmhodges/levigo v1.0.0 // indirect\n\tgithub.com/klauspost/compress v1.17.11 // indirect\n\tgithub.com/lib/pq v1.10.9 // indirect\n\tgithub.com/magiconair/properties v1.8.7 // indirect\n\tgithub.com/manifoldco/promptui v0.9.0 // indirect\n\tgithub.com/mattn/go-colorable v0.1.13 // indirect\n\tgithub.com/mattn/go-isatty v0.0.20 // indirect\n\tgithub.com/mattn/go-runewidth v0.0.9 // indirect\n\tgithub.com/minio/highwayhash v1.0.3 // indirect\n\tgithub.com/mitchellh/go-homedir v1.1.0 // indirect\n\tgithub.com/mitchellh/go-testing-interface v1.14.1 // indirect\n\tgithub.com/mitchellh/mapstructure v1.5.0 // indirect\n\tgithub.com/mtibben/percent v0.2.1 // indirect\n\tgithub.com/olekukonko/tablewriter v0.0.5 // indirect\n\tgithub.com/pelletier/go-toml/v2 v2.2.2 // indirect\n\tgithub.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7 // indirect\n\tgithub.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect\n\tgithub.com/prometheus/client_golang v1.21.0 // indirect\n\tgithub.com/prometheus/client_model v0.6.1 // indirect\n\tgithub.com/prometheus/common v0.62.0 // indirect\n\tgithub.com/prometheus/procfs v0.15.1 // indirect\n\tgithub.com/prometheus/tsdb v0.7.1 // indirect\n\tgithub.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 // indirect\n\tgithub.com/rjeczalik/notify v0.9.1 // indirect\n\tgithub.com/rs/cors v1.11.1 // indirect\n\tgithub.com/rs/zerolog v1.33.0 // indirect\n\tgithub.com/sasha-s/go-deadlock v0.3.5 // indirect\n\tgithub.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible // indirect\n\tgithub.com/spf13/afero v1.11.0 // indirect\n\tgithub.com/status-im/keycard-go v0.2.0 // indirect\n\tgithub.com/subosito/gotenv v1.6.0 // indirect\n\tgithub.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d // indirect\n\tgithub.com/tendermint/go-amino v0.16.0 // indirect\n\tgithub.com/tidwall/match v1.1.1 // indirect\n\tgithub.com/tidwall/pretty v1.2.0 // indirect\n\tgithub.com/tklauser/go-sysconf v0.3.10 // indirect\n\tgithub.com/tklauser/numcpus v0.4.0 // indirect\n\tgithub.com/tyler-smith/go-bip39 v1.1.0 // indirect\n\tgithub.com/ulikunitz/xz v0.5.11 // indirect\n\tgithub.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect\n\tgithub.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect\n\tgithub.com/zondax/hid v0.9.2 // indirect\n\tgo.etcd.io/bbolt v1.4.0-alpha.0.0.20240404170359-43604f3112c5 // indirect\n\tgo.opencensus.io v0.24.0 // indirect\n\tgolang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect\n\tgolang.org/x/net v0.35.0 // indirect\n\tgolang.org/x/oauth2 v0.24.0 // indirect\n\tgolang.org/x/sync v0.11.0 // indirect\n\tgolang.org/x/sys v0.30.0 // indirect\n\tgolang.org/x/term v0.29.0 // indirect\n\tgolang.org/x/text v0.22.0 // indirect\n\tgoogle.golang.org/api v0.186.0 // indirect\n\tgopkg.in/ini.v1 v1.67.0 // indirect\n\tgopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect\n\tgopkg.in/yaml.v3 v3.0.1 // indirect\n\tnhooyr.io/websocket v1.8.6 // indirect\n)\n\nreplace (\n\tcosmossdk.io/api => github.com/informalsystems/cosmos-sdk/api v0.7.5-lsm\n\t// use bianjieai fork of ethermint\n\tgithub.com/evmos/ethermint => github.com/bianjieai/ethermint v0.23.0-irishub\n\n\t// following versions might cause unexpected behavior\n\tgithub.com/syndtr/goleveldb => github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7\n\tgithub.com/zondax/hid => github.com/zondax/hid v0.9.0\n\n\t// stick with compatible version or x/exp in v0.47.x line\n\t// x/exp had a breaking change in further commits\n\tgolang.org/x/exp => golang.org/x/exp v0.0.0-20240404231335-c0f41cb1a7a0\n\n)\n"
  },
  {
    "path": "go.sum",
    "content": "cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=\ncloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=\ncloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU=\ncloud.google.com/go v0.43.0/go.mod h1:BOSR3VbTLkk6FDC/TcffxP4NF/FFBGA5ku+jvKOP7pg=\ncloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU=\ncloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY=\ncloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc=\ncloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0=\ncloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To=\ncloud.google.com/go v0.51.0/go.mod h1:hWtGJ6gnXH+KgDv+V0zFGDvpi07n3z8ZNj3T1RW0Gcw=\ncloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4=\ncloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M=\ncloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc=\ncloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk=\ncloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs=\ncloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc=\ncloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY=\ncloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI=\ncloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk=\ncloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg=\ncloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8=\ncloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0=\ncloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY=\ncloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM=\ncloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY=\ncloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ=\ncloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=\ncloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4=\ncloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc=\ncloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA=\ncloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w99A=\ncloud.google.com/go v0.102.0/go.mod h1:oWcCzKlqJ5zgHQt9YsaeTY9KzIvjyy0ArmiBUgpQ+nc=\ncloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34hIU=\ncloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA=\ncloud.google.com/go v0.115.0 h1:CnFSK6Xo3lDYRoBKEcAtia6VSC837/ZkJuRduSFnr14=\ncloud.google.com/go v0.115.0/go.mod h1:8jIM5vVgoAEoiVxQ/O4BFTfHqulPZgs/ufEzMcFMdWU=\ncloud.google.com/go/aiplatform v1.22.0/go.mod h1:ig5Nct50bZlzV6NvKaTwmplLLddFx0YReh9WfTO5jKw=\ncloud.google.com/go/aiplatform v1.24.0/go.mod h1:67UUvRBKG6GTayHKV8DBv2RtR1t93YRu5B1P3x99mYY=\ncloud.google.com/go/analytics v0.11.0/go.mod h1:DjEWCu41bVbYcKyvlws9Er60YE4a//bK6mnhWvQeFNI=\ncloud.google.com/go/analytics v0.12.0/go.mod h1:gkfj9h6XRf9+TS4bmuhPEShsh3hH8PAZzm/41OOhQd4=\ncloud.google.com/go/area120 v0.5.0/go.mod h1:DE/n4mp+iqVyvxHN41Vf1CR602GiHQjFPusMFW6bGR4=\ncloud.google.com/go/area120 v0.6.0/go.mod h1:39yFJqWVgm0UZqWTOdqkLhjoC7uFfgXRC8g/ZegeAh0=\ncloud.google.com/go/artifactregistry v1.6.0/go.mod h1:IYt0oBPSAGYj/kprzsBjZ/4LnG/zOcHyFHjWPCi6SAQ=\ncloud.google.com/go/artifactregistry v1.7.0/go.mod h1:mqTOFOnGZx8EtSqK/ZWcsm/4U8B77rbcLP6ruDU2Ixk=\ncloud.google.com/go/asset v1.5.0/go.mod h1:5mfs8UvcM5wHhqtSv8J1CtxxaQq3AdBxxQi2jGW/K4o=\ncloud.google.com/go/asset v1.7.0/go.mod h1:YbENsRK4+xTiL+Ofoj5Ckf+O17kJtgp3Y3nn4uzZz5s=\ncloud.google.com/go/asset v1.8.0/go.mod h1:mUNGKhiqIdbr8X7KNayoYvyc4HbbFO9URsjbytpUaW0=\ncloud.google.com/go/assuredworkloads v1.5.0/go.mod h1:n8HOZ6pff6re5KYfBXcFvSViQjDwxFkAkmUFffJRbbY=\ncloud.google.com/go/assuredworkloads v1.6.0/go.mod h1:yo2YOk37Yc89Rsd5QMVECvjaMKymF9OP+QXWlKXUkXw=\ncloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVoYoxeLBoj4XkKYscNI=\ncloud.google.com/go/auth v0.6.0 h1:5x+d6b5zdezZ7gmLWD1m/xNjnaQ2YDhmIz/HH3doy1g=\ncloud.google.com/go/auth v0.6.0/go.mod h1:b4acV+jLQDyjwm4OXHYjNvRi4jvGBzHWJRtJcy+2P4g=\ncloud.google.com/go/auth/oauth2adapt v0.2.2 h1:+TTV8aXpjeChS9M+aTtN/TjdQnzJvmzKFt//oWu7HX4=\ncloud.google.com/go/auth/oauth2adapt v0.2.2/go.mod h1:wcYjgpZI9+Yu7LyYBg4pqSiaRkfEK3GQcpb7C/uyF1Q=\ncloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0=\ncloud.google.com/go/automl v1.6.0/go.mod h1:ugf8a6Fx+zP0D59WLhqgTDsQI9w07o64uf/Is3Nh5p8=\ncloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=\ncloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=\ncloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=\ncloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg=\ncloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc=\ncloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ=\ncloud.google.com/go/bigquery v1.42.0/go.mod h1:8dRTJxhtG+vwBKzE5OseQn/hiydoQN3EedCaOdYmxRA=\ncloud.google.com/go/bigtable v1.2.0/go.mod h1:JcVAOl45lrTmQfLj7T6TxyMzIN/3FGGcFm+2xVAli2o=\ncloud.google.com/go/billing v1.4.0/go.mod h1:g9IdKBEFlItS8bTtlrZdVLWSSdSyFUZKXNS02zKMOZY=\ncloud.google.com/go/billing v1.5.0/go.mod h1:mztb1tBc3QekhjSgmpf/CV4LzWXLzCArwpLmP2Gm88s=\ncloud.google.com/go/binaryauthorization v1.1.0/go.mod h1:xwnoWu3Y84jbuHa0zd526MJYmtnVXn0syOjaJgy4+dM=\ncloud.google.com/go/binaryauthorization v1.2.0/go.mod h1:86WKkJHtRcv5ViNABtYMhhNWRrD1Vpi//uKEy7aYEfI=\ncloud.google.com/go/cloudtasks v1.5.0/go.mod h1:fD92REy1x5woxkKEkLdvavGnPJGEn8Uic9nWuLzqCpY=\ncloud.google.com/go/cloudtasks v1.6.0/go.mod h1:C6Io+sxuke9/KNRkbQpihnW93SWDU3uXt92nu85HkYI=\ncloud.google.com/go/compute v0.1.0/go.mod h1:GAesmwr110a34z04OlxYkATPBEfVhkymfTBXtfbBFow=\ncloud.google.com/go/compute v1.3.0/go.mod h1:cCZiE1NHEtai4wiufUhW8I8S1JKkAnhnQJWM7YD99wM=\ncloud.google.com/go/compute v1.5.0/go.mod h1:9SMHyhJlzhlkJqrPAc839t2BZFTSk6Jdj6mkzQJeu0M=\ncloud.google.com/go/compute v1.6.0/go.mod h1:T29tfhtVbq1wvAPo0E3+7vhgmkOYeXjhFvz/FMzPu0s=\ncloud.google.com/go/compute v1.6.1/go.mod h1:g85FgpzFvNULZ+S8AYq87axRKuf2Kh7deLqV/jJ3thU=\ncloud.google.com/go/compute v1.7.0/go.mod h1:435lt8av5oL9P3fv1OEzSbSUe+ybHXGMPQHHZWZxy9U=\ncloud.google.com/go/compute v1.10.0/go.mod h1:ER5CLbMxl90o2jtNbGSbtfOpQKR0t15FOtRsugnLrlU=\ncloud.google.com/go/compute/metadata v0.5.2 h1:UxK4uu/Tn+I3p2dYWTfiX4wva7aYlKixAHn3fyqngqo=\ncloud.google.com/go/compute/metadata v0.5.2/go.mod h1:C66sj2AluDcIqakBq/M8lw8/ybHgOZqin2obFxa/E5k=\ncloud.google.com/go/containeranalysis v0.5.1/go.mod h1:1D92jd8gRR/c0fGMlymRgxWD3Qw9C1ff6/T7mLgVL8I=\ncloud.google.com/go/containeranalysis v0.6.0/go.mod h1:HEJoiEIu+lEXM+k7+qLCci0h33lX3ZqoYFdmPcoO7s4=\ncloud.google.com/go/datacatalog v1.3.0/go.mod h1:g9svFY6tuR+j+hrTw3J2dNcmI0dzmSiyOzm8kpLq0a0=\ncloud.google.com/go/datacatalog v1.5.0/go.mod h1:M7GPLNQeLfWqeIm3iuiruhPzkt65+Bx8dAKvScX8jvs=\ncloud.google.com/go/datacatalog v1.6.0/go.mod h1:+aEyF8JKg+uXcIdAmmaMUmZ3q1b/lKLtXCmXdnc0lbc=\ncloud.google.com/go/dataflow v0.6.0/go.mod h1:9QwV89cGoxjjSR9/r7eFDqqjtvbKxAK2BaYU6PVk9UM=\ncloud.google.com/go/dataflow v0.7.0/go.mod h1:PX526vb4ijFMesO1o202EaUmouZKBpjHsTlCtB4parQ=\ncloud.google.com/go/dataform v0.3.0/go.mod h1:cj8uNliRlHpa6L3yVhDOBrUXH+BPAO1+KFMQQNSThKo=\ncloud.google.com/go/dataform v0.4.0/go.mod h1:fwV6Y4Ty2yIFL89huYlEkwUPtS7YZinZbzzj5S9FzCE=\ncloud.google.com/go/datalabeling v0.5.0/go.mod h1:TGcJ0G2NzcsXSE/97yWjIZO0bXj0KbVlINXMG9ud42I=\ncloud.google.com/go/datalabeling v0.6.0/go.mod h1:WqdISuk/+WIGeMkpw/1q7bK/tFEZxsrFJOJdY2bXvTQ=\ncloud.google.com/go/dataqna v0.5.0/go.mod h1:90Hyk596ft3zUQ8NkFfvICSIfHFh1Bc7C4cK3vbhkeo=\ncloud.google.com/go/dataqna v0.6.0/go.mod h1:1lqNpM7rqNLVgWBJyk5NF6Uen2PHym0jtVJonplVsDA=\ncloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=\ncloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=\ncloud.google.com/go/datastream v1.2.0/go.mod h1:i/uTP8/fZwgATHS/XFu0TcNUhuA0twZxxQ3EyCUQMwo=\ncloud.google.com/go/datastream v1.3.0/go.mod h1:cqlOX8xlyYF/uxhiKn6Hbv6WjwPPuI9W2M9SAXwaLLQ=\ncloud.google.com/go/dialogflow v1.15.0/go.mod h1:HbHDWs33WOGJgn6rfzBW1Kv807BE3O1+xGbn59zZWI4=\ncloud.google.com/go/dialogflow v1.16.1/go.mod h1:po6LlzGfK+smoSmTBnbkIZY2w8ffjz/RcGSS+sh1el0=\ncloud.google.com/go/dialogflow v1.17.0/go.mod h1:YNP09C/kXA1aZdBgC/VtXX74G/TKn7XVCcVumTflA+8=\ncloud.google.com/go/documentai v1.7.0/go.mod h1:lJvftZB5NRiFSX4moiye1SMxHx0Bc3x1+p9e/RfXYiU=\ncloud.google.com/go/documentai v1.8.0/go.mod h1:xGHNEB7CtsnySCNrCFdCyyMz44RhFEEX2Q7UD0c5IhU=\ncloud.google.com/go/domains v0.6.0/go.mod h1:T9Rz3GasrpYk6mEGHh4rymIhjlnIuB4ofT1wTxDeT4Y=\ncloud.google.com/go/domains v0.7.0/go.mod h1:PtZeqS1xjnXuRPKE/88Iru/LdfoRyEHYA9nFQf4UKpg=\ncloud.google.com/go/edgecontainer v0.1.0/go.mod h1:WgkZ9tp10bFxqO8BLPqv2LlfmQF1X8lZqwW4r1BTajk=\ncloud.google.com/go/edgecontainer v0.2.0/go.mod h1:RTmLijy+lGpQ7BXuTDa4C4ssxyXT34NIuHIgKuP4s5w=\ncloud.google.com/go/functions v1.6.0/go.mod h1:3H1UA3qiIPRWD7PeZKLvHZ9SaQhR26XIJcC0A5GbvAk=\ncloud.google.com/go/functions v1.7.0/go.mod h1:+d+QBcWM+RsrgZfV9xo6KfA1GlzJfxcfZcRPEhDDfzg=\ncloud.google.com/go/gaming v1.5.0/go.mod h1:ol7rGcxP/qHTRQE/RO4bxkXq+Fix0j6D4LFPzYTIrDM=\ncloud.google.com/go/gaming v1.6.0/go.mod h1:YMU1GEvA39Qt3zWGyAVA9bpYz/yAhTvaQ1t2sK4KPUA=\ncloud.google.com/go/gkeconnect v0.5.0/go.mod h1:c5lsNAg5EwAy7fkqX/+goqFsU1Da/jQFqArp+wGNr/o=\ncloud.google.com/go/gkeconnect v0.6.0/go.mod h1:Mln67KyU/sHJEBY8kFZ0xTeyPtzbq9StAVvEULYK16A=\ncloud.google.com/go/gkehub v0.9.0/go.mod h1:WYHN6WG8w9bXU0hqNxt8rm5uxnk8IH+lPY9J2TV7BK0=\ncloud.google.com/go/gkehub v0.10.0/go.mod h1:UIPwxI0DsrpsVoWpLB0stwKCP+WFVG9+y977wO+hBH0=\ncloud.google.com/go/grafeas v0.2.0/go.mod h1:KhxgtF2hb0P191HlY5besjYm6MqTSTj3LSI+M+ByZHc=\ncloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY=\ncloud.google.com/go/iam v0.5.0/go.mod h1:wPU9Vt0P4UmCux7mqtRu6jcpPAb74cP1fh50J3QpkUc=\ncloud.google.com/go/iam v1.1.9 h1:oSkYLVtVme29uGYrOcKcvJRht7cHJpYD09GM9JaR0TE=\ncloud.google.com/go/iam v1.1.9/go.mod h1:Nt1eDWNYH9nGQg3d/mY7U1hvfGmsaG9o/kLGoLoLXjQ=\ncloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic=\ncloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI=\ncloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8=\ncloud.google.com/go/lifesciences v0.6.0/go.mod h1:ddj6tSX/7BOnhxCSd3ZcETvtNr8NZ6t/iPhY2Tyfu08=\ncloud.google.com/go/mediatranslation v0.5.0/go.mod h1:jGPUhGTybqsPQn91pNXw0xVHfuJ3leR1wj37oU3y1f4=\ncloud.google.com/go/mediatranslation v0.6.0/go.mod h1:hHdBCTYNigsBxshbznuIMFNe5QXEowAuNmmC7h8pu5w=\ncloud.google.com/go/memcache v1.4.0/go.mod h1:rTOfiGZtJX1AaFUrOgsMHX5kAzaTQ8azHiuDoTPzNsE=\ncloud.google.com/go/memcache v1.5.0/go.mod h1:dk3fCK7dVo0cUU2c36jKb4VqKPS22BTkf81Xq617aWM=\ncloud.google.com/go/metastore v1.5.0/go.mod h1:2ZNrDcQwghfdtCwJ33nM0+GrBGlVuh8rakL3vdPY3XY=\ncloud.google.com/go/metastore v1.6.0/go.mod h1:6cyQTls8CWXzk45G55x57DVQ9gWg7RiH65+YgPsNh9s=\ncloud.google.com/go/networkconnectivity v1.4.0/go.mod h1:nOl7YL8odKyAOtzNX73/M5/mGZgqqMeryi6UPZTk/rA=\ncloud.google.com/go/networkconnectivity v1.5.0/go.mod h1:3GzqJx7uhtlM3kln0+x5wyFvuVH1pIBJjhCpjzSt75o=\ncloud.google.com/go/networksecurity v0.5.0/go.mod h1:xS6fOCoqpVC5zx15Z/MqkfDwH4+m/61A3ODiDV1xmiQ=\ncloud.google.com/go/networksecurity v0.6.0/go.mod h1:Q5fjhTr9WMI5mbpRYEbiexTzROf7ZbDzvzCrNl14nyU=\ncloud.google.com/go/notebooks v1.2.0/go.mod h1:9+wtppMfVPUeJ8fIWPOq1UnATHISkGXGqTkxeieQ6UY=\ncloud.google.com/go/notebooks v1.3.0/go.mod h1:bFR5lj07DtCPC7YAAJ//vHskFBxA5JzYlH68kXVdk34=\ncloud.google.com/go/osconfig v1.7.0/go.mod h1:oVHeCeZELfJP7XLxcBGTMBvRO+1nQ5tFG9VQTmYS2Fs=\ncloud.google.com/go/osconfig v1.8.0/go.mod h1:EQqZLu5w5XA7eKizepumcvWx+m8mJUhEwiPqWiZeEdg=\ncloud.google.com/go/oslogin v1.4.0/go.mod h1:YdgMXWRaElXz/lDk1Na6Fh5orF7gvmJ0FGLIs9LId4E=\ncloud.google.com/go/oslogin v1.5.0/go.mod h1:D260Qj11W2qx/HVF29zBg+0fd6YCSjSqLUkY/qEenQU=\ncloud.google.com/go/phishingprotection v0.5.0/go.mod h1:Y3HZknsK9bc9dMi+oE8Bim0lczMU6hrX0UpADuMefr0=\ncloud.google.com/go/phishingprotection v0.6.0/go.mod h1:9Y3LBLgy0kDTcYET8ZH3bq/7qni15yVUoAxiFxnlSUA=\ncloud.google.com/go/privatecatalog v0.5.0/go.mod h1:XgosMUvvPyxDjAVNDYxJ7wBW8//hLDDYmnsNcMGq1K0=\ncloud.google.com/go/privatecatalog v0.6.0/go.mod h1:i/fbkZR0hLN29eEWiiwue8Pb+GforiEIBnV9yrRUOKI=\ncloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=\ncloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw=\ncloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA=\ncloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU=\ncloud.google.com/go/recaptchaenterprise v1.3.1/go.mod h1:OdD+q+y4XGeAlxRaMn1Y7/GveP6zmq76byL6tjPE7d4=\ncloud.google.com/go/recaptchaenterprise/v2 v2.1.0/go.mod h1:w9yVqajwroDNTfGuhmOjPDN//rZGySaf6PtFVcSCa7o=\ncloud.google.com/go/recaptchaenterprise/v2 v2.2.0/go.mod h1:/Zu5jisWGeERrd5HnlS3EUGb/D335f9k51B/FVil0jk=\ncloud.google.com/go/recaptchaenterprise/v2 v2.3.0/go.mod h1:O9LwGCjrhGHBQET5CA7dd5NwwNQUErSgEDit1DLNTdo=\ncloud.google.com/go/recommendationengine v0.5.0/go.mod h1:E5756pJcVFeVgaQv3WNpImkFP8a+RptV6dDLGPILjvg=\ncloud.google.com/go/recommendationengine v0.6.0/go.mod h1:08mq2umu9oIqc7tDy8sx+MNJdLG0fUi3vaSVbztHgJ4=\ncloud.google.com/go/recommender v1.5.0/go.mod h1:jdoeiBIVrJe9gQjwd759ecLJbxCDED4A6p+mqoqDvTg=\ncloud.google.com/go/recommender v1.6.0/go.mod h1:+yETpm25mcoiECKh9DEScGzIRyDKpZ0cEhWGo+8bo+c=\ncloud.google.com/go/redis v1.7.0/go.mod h1:V3x5Jq1jzUcg+UNsRvdmsfuFnit1cfe3Z/PGyq/lm4Y=\ncloud.google.com/go/redis v1.8.0/go.mod h1:Fm2szCDavWzBk2cDKxrkmWBqoCiL1+Ctwq7EyqBCA/A=\ncloud.google.com/go/retail v1.8.0/go.mod h1:QblKS8waDmNUhghY2TI9O3JLlFk8jybHeV4BF19FrE4=\ncloud.google.com/go/retail v1.9.0/go.mod h1:g6jb6mKuCS1QKnH/dpu7isX253absFl6iE92nHwlBUY=\ncloud.google.com/go/scheduler v1.4.0/go.mod h1:drcJBmxF3aqZJRhmkHQ9b3uSSpQoltBPGPxGAWROx6s=\ncloud.google.com/go/scheduler v1.5.0/go.mod h1:ri073ym49NW3AfT6DZi21vLZrG07GXr5p3H1KxN5QlI=\ncloud.google.com/go/secretmanager v1.6.0/go.mod h1:awVa/OXF6IiyaU1wQ34inzQNc4ISIDIrId8qE5QGgKA=\ncloud.google.com/go/security v1.5.0/go.mod h1:lgxGdyOKKjHL4YG3/YwIL2zLqMFCKs0UbQwgyZmfJl4=\ncloud.google.com/go/security v1.7.0/go.mod h1:mZklORHl6Bg7CNnnjLH//0UlAlaXqiG7Lb9PsPXLfD0=\ncloud.google.com/go/security v1.8.0/go.mod h1:hAQOwgmaHhztFhiQ41CjDODdWP0+AE1B3sX4OFlq+GU=\ncloud.google.com/go/securitycenter v1.13.0/go.mod h1:cv5qNAqjY84FCN6Y9z28WlkKXyWsgLO832YiWwkCWcU=\ncloud.google.com/go/securitycenter v1.14.0/go.mod h1:gZLAhtyKv85n52XYWt6RmeBdydyxfPeTrpToDPw4Auc=\ncloud.google.com/go/servicedirectory v1.4.0/go.mod h1:gH1MUaZCgtP7qQiI+F+A+OpeKF/HQWgtAddhTbhL2bs=\ncloud.google.com/go/servicedirectory v1.5.0/go.mod h1:QMKFL0NUySbpZJ1UZs3oFAmdvVxhhxB6eJ/Vlp73dfg=\ncloud.google.com/go/speech v1.6.0/go.mod h1:79tcr4FHCimOp56lwC01xnt/WPJZc4v3gzyT7FoBkCM=\ncloud.google.com/go/speech v1.7.0/go.mod h1:KptqL+BAQIhMsj1kOP2la5DSEEerPDuOP/2mmkhHhZQ=\ncloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw=\ncloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos=\ncloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk=\ncloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs=\ncloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0=\ncloud.google.com/go/storage v1.22.1/go.mod h1:S8N1cAStu7BOeFfE8KAQzmyyLkK8p/vmRq6kuBTW58Y=\ncloud.google.com/go/storage v1.23.0/go.mod h1:vOEEDNFnciUMhBeT6hsJIn3ieU5cFRmzeLgDvXzfIXc=\ncloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s=\ncloud.google.com/go/storage v1.41.0 h1:RusiwatSu6lHeEXe3kglxakAmAbfV+rhtPqA6i8RBx0=\ncloud.google.com/go/storage v1.41.0/go.mod h1:J1WCa/Z2FcgdEDuPUY8DxT5I+d9mFKsCepp5vR6Sq80=\ncloud.google.com/go/talent v1.1.0/go.mod h1:Vl4pt9jiHKvOgF9KoZo6Kob9oV4lwd/ZD5Cto54zDRw=\ncloud.google.com/go/talent v1.2.0/go.mod h1:MoNF9bhFQbiJ6eFD3uSsg0uBALw4n4gaCaEjBw9zo8g=\ncloud.google.com/go/videointelligence v1.6.0/go.mod h1:w0DIDlVRKtwPCn/C4iwZIJdvC69yInhW0cfi+p546uU=\ncloud.google.com/go/videointelligence v1.7.0/go.mod h1:k8pI/1wAhjznARtVT9U1llUaFNPh7muw8QyOUpavru4=\ncloud.google.com/go/vision v1.2.0/go.mod h1:SmNwgObm5DpFBme2xpyOyasvBc1aPdjvMk2bBk0tKD0=\ncloud.google.com/go/vision/v2 v2.2.0/go.mod h1:uCdV4PpN1S0jyCyq8sIM42v2Y6zOLkZs+4R9LrGYwFo=\ncloud.google.com/go/vision/v2 v2.3.0/go.mod h1:UO61abBx9QRMFkNBbf1D8B1LXdS2cGiiCRx0vSpZoUo=\ncloud.google.com/go/webrisk v1.4.0/go.mod h1:Hn8X6Zr+ziE2aNd8SliSDWpEnSS1u4R9+xXZmFiHmGE=\ncloud.google.com/go/webrisk v1.5.0/go.mod h1:iPG6fr52Tv7sGk0H6qUFzmL3HHZev1htXuWDEEsqMTg=\ncloud.google.com/go/workflows v1.6.0/go.mod h1:6t9F5h/unJz41YqfBmqSASJSXccBLtD1Vwf+KmJENM0=\ncloud.google.com/go/workflows v1.7.0/go.mod h1:JhSrZuVZWuiDfKEFxU0/F1PQjmpnpcoISEXH2bcHC3M=\ncollectd.org v0.3.0/go.mod h1:A/8DzQBkF6abtvrT2j/AU/4tiBgJWYyh0y/oB/4MlWE=\ncosmossdk.io/client/v2 v2.0.0-beta.6 h1:CygEwABxbwFmqgLINBb3WGVwzaN4yRgB9ZtIGQzhRNQ=\ncosmossdk.io/client/v2 v2.0.0-beta.6/go.mod h1:4p0P6o0ro+FizakJUYS9SeM94RNbv0thLmkHRw5o5as=\ncosmossdk.io/collections v0.4.0 h1:PFmwj2W8szgpD5nOd8GWH6AbYNi1f2J6akWXJ7P5t9s=\ncosmossdk.io/collections v0.4.0/go.mod h1:oa5lUING2dP+gdDquow+QjlF45eL1t4TJDypgGd+tv0=\ncosmossdk.io/core v0.11.1 h1:h9WfBey7NAiFfIcUhDVNS503I2P2HdZLebJlUIs8LPA=\ncosmossdk.io/core v0.11.1/go.mod h1:OJzxcdC+RPrgGF8NJZR2uoQr56tc7gfBKhiKeDO7hH0=\ncosmossdk.io/depinject v1.1.0 h1:wLan7LG35VM7Yo6ov0jId3RHWCGRhe8E8bsuARorl5E=\ncosmossdk.io/depinject v1.1.0/go.mod h1:kkI5H9jCGHeKeYWXTqYdruogYrEeWvBQCw1Pj4/eCFI=\ncosmossdk.io/errors v1.0.1 h1:bzu+Kcr0kS/1DuPBtUFdWjzLqyUuCiyHjyJB6srBV/0=\ncosmossdk.io/errors v1.0.1/go.mod h1:MeelVSZThMi4bEakzhhhE/CKqVv3nOJDA25bIqRDu/U=\ncosmossdk.io/log v1.4.1 h1:wKdjfDRbDyZRuWa8M+9nuvpVYxrEOwbD/CA8hvhU8QM=\ncosmossdk.io/log v1.4.1/go.mod h1:k08v0Pyq+gCP6phvdI6RCGhLf/r425UT6Rk/m+o74rU=\ncosmossdk.io/math v1.4.0 h1:XbgExXFnXmF/CccPPEto40gOO7FpWu9yWNAZPN3nkNQ=\ncosmossdk.io/math v1.4.0/go.mod h1:O5PkD4apz2jZs4zqFdTr16e1dcaQCc5z6lkEnrrppuk=\ncosmossdk.io/simapp v0.0.0-20240118210941-3897926e722e h1:prrEM8wTWf6Rv0XchutuUtWfWlQHG4G3OylkTYgPlNk=\ncosmossdk.io/simapp v0.0.0-20240118210941-3897926e722e/go.mod h1:MoWto/xnPVt23TgkMEp5Rssw9Z7sV7VUQb8j5/y+fXY=\ncosmossdk.io/store v1.1.1 h1:NA3PioJtWDVU7cHHeyvdva5J/ggyLDkyH0hGHl2804Y=\ncosmossdk.io/store v1.1.1/go.mod h1:8DwVTz83/2PSI366FERGbWSH7hL6sB7HbYp8bqksNwM=\ncosmossdk.io/tools/rosetta v0.2.1-0.20230613133644-0a778132a60f h1:p/pez1Q7Xwh9AiHWMA0uHxsB+XpReABHr6xCyMWdDAg=\ncosmossdk.io/tools/rosetta v0.2.1-0.20230613133644-0a778132a60f/go.mod h1:kzkqn95F9UonJTmjS+aydreXxsWiaGKe/b4HxHZvwHM=\ncosmossdk.io/x/circuit v0.1.1 h1:KPJCnLChWrxD4jLwUiuQaf5mFD/1m7Omyo7oooefBVQ=\ncosmossdk.io/x/circuit v0.1.1/go.mod h1:B6f/urRuQH8gjt4eLIXfZJucrbreuYrKh5CSjaOxr+Q=\ncosmossdk.io/x/evidence v0.1.1 h1:Ks+BLTa3uftFpElLTDp9L76t2b58htjVbSZ86aoK/E4=\ncosmossdk.io/x/evidence v0.1.1/go.mod h1:OoDsWlbtuyqS70LY51aX8FBTvguQqvFrt78qL7UzeNc=\ncosmossdk.io/x/feegrant v0.1.1 h1:EKFWOeo/pup0yF0svDisWWKAA9Zags6Zd0P3nRvVvw8=\ncosmossdk.io/x/feegrant v0.1.1/go.mod h1:2GjVVxX6G2fta8LWj7pC/ytHjryA6MHAJroBWHFNiEQ=\ncosmossdk.io/x/nft v0.1.1 h1:pslAVS8P5NkW080+LWOamInjDcq+v2GSCo+BjN9sxZ8=\ncosmossdk.io/x/nft v0.1.1/go.mod h1:Kac6F6y2gsKvoxU+fy8uvxRTi4BIhLOor2zgCNQwVgY=\ncosmossdk.io/x/tx v0.13.7 h1:8WSk6B/OHJLYjiZeMKhq7DK7lHDMyK0UfDbBMxVmeOI=\ncosmossdk.io/x/tx v0.13.7/go.mod h1:V6DImnwJMTq5qFjeGWpXNiT/fjgE4HtmclRmTqRVM3w=\ncosmossdk.io/x/upgrade v0.1.4 h1:/BWJim24QHoXde8Bc64/2BSEB6W4eTydq0X/2f8+g38=\ncosmossdk.io/x/upgrade v0.1.4/go.mod h1:9v0Aj+fs97O+Ztw+tG3/tp5JSlrmT7IcFhAebQHmOPo=\nfilippo.io/edwards25519 v1.0.0-rc.1/go.mod h1:N1IkdkCkiLB6tki+MYJoSx2JTY9NUlxZE7eHn5EwJns=\nfilippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=\nfilippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=\ngit.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw=\ngit.sr.ht/~sircmpwn/go-bare v0.0.0-20210406120253-ab86bc2846d9/go.mod h1:BVJwbDfVjCjoFiKrhkei6NdGcZYpkDkdyCdg1ukytRA=\ngithub.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 h1:/vQbFIOMbk2FiG/kXiLl8BRyzTWDw7gX/Hz7Dd5eDMs=\ngithub.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4/go.mod h1:hN7oaIRCjzsZ2dE+yG5k+rsdt3qcwykqK6HVGcKwsw4=\ngithub.com/99designs/keyring v1.2.1 h1:tYLp1ULvO7i3fI5vE21ReQuj99QFSs7lGm0xWyJo87o=\ngithub.com/99designs/keyring v1.2.1/go.mod h1:fc+wB5KTk9wQ9sDx0kFXB3A0MaeGHM9AwRStKOQ5vOA=\ngithub.com/Azure/azure-sdk-for-go/sdk/azcore v0.21.1/go.mod h1:fBF9PQNqB8scdgpZ3ufzaLntG0AG7C1WjPMsiFOmfHM=\ngithub.com/Azure/azure-sdk-for-go/sdk/internal v0.8.3/go.mod h1:KLF4gFr6DcKFZwSuH8w8yEK6DpFl3LP5rhdvAb7Yz5I=\ngithub.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.3.0/go.mod h1:tPaiy8S5bQ+S5sOiDlINkp7+Ef339+Nz5L5XO+cnOHo=\ngithub.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0=\ngithub.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E=\ngithub.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=\ngithub.com/DATA-DOG/go-sqlmock v1.3.3/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM=\ngithub.com/DataDog/datadog-go v3.2.0+incompatible h1:qSG2N4FghB1He/r2mFrWKCaL7dXCilEuNEeAn20fdD4=\ngithub.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=\ngithub.com/DataDog/zstd v1.5.0/go.mod h1:g4AWEaM3yOg3HYfnJ3YIawPnVdXJh9QME85blwSAmyw=\ngithub.com/DataDog/zstd v1.5.5 h1:oWf5W7GtOLgp6bciQYDmhHHjdhYkALu6S/5Ni9ZgSvQ=\ngithub.com/DataDog/zstd v1.5.5/go.mod h1:g4AWEaM3yOg3HYfnJ3YIawPnVdXJh9QME85blwSAmyw=\ngithub.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0=\ngithub.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=\ngithub.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM=\ngithub.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw=\ngithub.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk=\ngithub.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=\ngithub.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo=\ngithub.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI=\ngithub.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg=\ngithub.com/StackExchange/wmi v1.2.1 h1:VIkavFPXSjcnS+O8yTq7NI32k0R5Aj+v39y29VYDOSA=\ngithub.com/StackExchange/wmi v1.2.1/go.mod h1:rcmrprowKIVzvc+NUiLncP2uuArMWLCbu9SBzvHz7e8=\ngithub.com/VictoriaMetrics/fastcache v1.6.0 h1:C/3Oi3EiBCqufydp1neRZkqcwmEiuRT9c3fqvvgKm5o=\ngithub.com/VictoriaMetrics/fastcache v1.6.0/go.mod h1:0qHz5QP0GMX4pfmMA/zt5RgfNuXJrTP0zS7DqpHGGTw=\ngithub.com/VividCortex/gohistogram v1.0.0 h1:6+hBz+qvs0JOrrNhhmR7lFxo5sINxBCGXrdtl/UvroE=\ngithub.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g=\ngithub.com/Zilliqa/gozilliqa-sdk v1.2.1-0.20201201074141-dd0ecada1be6/go.mod h1:eSYp2T6f0apnuW8TzhV3f6Aff2SE8Dwio++U4ha4yEM=\ngithub.com/adlio/schema v1.3.6 h1:k1/zc2jNfeiZBA5aFTRy37jlBIuCkXCm0XmvpzCKI9I=\ngithub.com/adlio/schema v1.3.6/go.mod h1:qkxwLgPBd1FgLRHYVCmQT/rrBr3JH38J9LjmVzWNudg=\ngithub.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII=\ngithub.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c=\ngithub.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw=\ngithub.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=\ngithub.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=\ngithub.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=\ngithub.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=\ngithub.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho=\ngithub.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156 h1:eMwmnE/GDgah4HI848JfFxHt+iPb26b4zyfspmqY0/8=\ngithub.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2ucNfQESPXM=\ngithub.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8=\ngithub.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=\ngithub.com/apache/arrow/go/arrow v0.0.0-20191024131854-af6fa24be0db/go.mod h1:VTxUBvSJ3s3eHAg65PNgrsn5BtqCRPdmyXh6rAfdxN0=\ngithub.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=\ngithub.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=\ngithub.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o=\ngithub.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=\ngithub.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY=\ngithub.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=\ngithub.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6lCRdSC2Tm3DSWRPvIPr6xNKyeHdqDQSQT+A=\ngithub.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU=\ngithub.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=\ngithub.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=\ngithub.com/aws/aws-sdk-go v1.44.224 h1:09CiaaF35nRmxrzWZ2uRq5v6Ghg/d2RiPjZnSgtt+RQ=\ngithub.com/aws/aws-sdk-go v1.44.224/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI=\ngithub.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=\ngithub.com/aws/aws-sdk-go-v2 v1.2.0/go.mod h1:zEQs02YRBw1DjK0PoJv3ygDYOFTre1ejlJWl8FwAuQo=\ngithub.com/aws/aws-sdk-go-v2/config v1.1.1/go.mod h1:0XsVy9lBI/BCXm+2Tuvt39YmdHwS5unDQmxZOYe8F5Y=\ngithub.com/aws/aws-sdk-go-v2/credentials v1.1.1/go.mod h1:mM2iIjwl7LULWtS6JCACyInboHirisUUdkBPoTHMOUo=\ngithub.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.0.2/go.mod h1:3hGg3PpiEjHnrkrlasTfxFqUsZ2GCk/fMUn4CbKgSkM=\ngithub.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.2/go.mod h1:45MfaXZ0cNbeuT0KQ1XJylq8A6+OpVV2E5kvY/Kq+u8=\ngithub.com/aws/aws-sdk-go-v2/service/route53 v1.1.1/go.mod h1:rLiOUrPLW/Er5kRcQ7NkwbjlijluLsrIbu/iyl35RO4=\ngithub.com/aws/aws-sdk-go-v2/service/sso v1.1.1/go.mod h1:SuZJxklHxLAXgLTc1iFXbEWkXs7QRTQpCLGaKIprQW0=\ngithub.com/aws/aws-sdk-go-v2/service/sts v1.1.1/go.mod h1:Wi0EBZwiz/K44YliU0EKxqTCJGUfYTWXrrBwkq736bM=\ngithub.com/aws/smithy-go v1.1.0/go.mod h1:EzMw8dbp/YJL4A5/sbhGddag+NPT7q084agLbB9LgIw=\ngithub.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=\ngithub.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=\ngithub.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=\ngithub.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=\ngithub.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=\ngithub.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d h1:xDfNPAt8lFiC1UJrqV3uuy861HCTo708pDMbjHHdCas=\ngithub.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d/go.mod h1:6QX/PXZ00z/TKoufEY6K/a0k6AhaJrQKdFe6OfVXsa4=\ngithub.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs=\ngithub.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816 h1:41iFGWnSlI2gVpmOtVTJZNodLdLQLn/KsJqFvXwnd/s=\ngithub.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs=\ngithub.com/bianjieai/ethermint v0.23.0-irishub h1:kuPsVd7+g/I+oINv6+URXYgTjAhOx8inwmelNzgPtvo=\ngithub.com/bianjieai/ethermint v0.23.0-irishub/go.mod h1:0PTcYr7hTvVBjcyR7weKrclYL9tmnL/eTttLiQmqM5o=\ngithub.com/bianjieai/nft-transfer v1.1.3-ibc-v8.6.1 h1:KEdexilCUqTFFjGq6l8OkNvfipoX5/wUNCigoP55uJQ=\ngithub.com/bianjieai/nft-transfer v1.1.3-ibc-v8.6.1/go.mod h1:S3PYybi7G3BkVOZomzWWkgtGW8FVNCpiW0wO9I1+y3o=\ngithub.com/bianjieai/tibc-go v0.6.0 h1:pC2xe2AynzWZd+QSPY4tQveYeYLjEUz96D3q4kgGl4A=\ngithub.com/bianjieai/tibc-go v0.6.0/go.mod h1:vgNtu8/LcMOi2Au4myof80tc2ufOHyOMZzDg8ZyfRbc=\ngithub.com/bits-and-blooms/bitset v1.8.0 h1:FD+XqgOZDUxxZ8hzoBFuV9+cGWY9CslN6d5MS5JVb4c=\ngithub.com/bits-and-blooms/bitset v1.8.0/go.mod h1:7hO7Gc7Pp1vODcmWvKMRA9BNmbv6a/7QIWpPxHddWR8=\ngithub.com/bmizerany/pat v0.0.0-20170815010413-6226ea591a40/go.mod h1:8rLXio+WjiTceGBHIoTvn60HIbs7Hm7bcHjyrSqYB9c=\ngithub.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx27Ps=\ngithub.com/btcsuite/btcd v0.0.0-20190315201642-aa6e0f35703c/go.mod h1:DrZx5ec/dmnfpw9KyYoQyYo7d0KEvTkk/5M/vbZjAr8=\ngithub.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ=\ngithub.com/btcsuite/btcd v0.21.0-beta.0.20201114000516-e9c7a5ac6401/go.mod h1:Sv4JPQ3/M+teHz9Bo5jBpkNcP0x6r7rdihlNL/7tTAs=\ngithub.com/btcsuite/btcd v0.22.0-beta.0.20220111032746-97732e52810c/go.mod h1:tjmYdS6MLJ5/s0Fj4DbLgSbDHbEqLJrtnHecBFkdz5M=\ngithub.com/btcsuite/btcd v0.22.1/go.mod h1:wqgTSL29+50LRkmOVknEdmt8ZojIzhuWvgu/iptuN7Y=\ngithub.com/btcsuite/btcd v0.23.5-0.20231215221805-96c9fd8078fd/go.mod h1:nm3Bko6zh6bWP60UxwoT5LzdGJsQJaPo6HjduXq9p6A=\ngithub.com/btcsuite/btcd v0.24.2 h1:aLmxPguqxza+4ag8R1I2nnJjSu2iFn/kqtHTIImswcY=\ngithub.com/btcsuite/btcd v0.24.2/go.mod h1:5C8ChTkl5ejr3WHj8tkQSCmydiMEPB0ZhQhehpq7Dgg=\ngithub.com/btcsuite/btcd/btcec/v2 v2.1.0/go.mod h1:2VzYrv4Gm4apmbVVsSq5bqf1Ec8v56E48Vt0Y/umPgA=\ngithub.com/btcsuite/btcd/btcec/v2 v2.1.2/go.mod h1:ctjw4H1kknNJmRN4iP1R7bTQ+v3GJkZBd6mui8ZsAZE=\ngithub.com/btcsuite/btcd/btcec/v2 v2.1.3/go.mod h1:ctjw4H1kknNJmRN4iP1R7bTQ+v3GJkZBd6mui8ZsAZE=\ngithub.com/btcsuite/btcd/btcec/v2 v2.3.4 h1:3EJjcN70HCu/mwqlUsGK8GcNVyLVxFDlWurTXGPFfiQ=\ngithub.com/btcsuite/btcd/btcec/v2 v2.3.4/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04=\ngithub.com/btcsuite/btcd/btcutil v1.0.0/go.mod h1:Uoxwv0pqYWhD//tfTiipkxNfdhG9UrLwaeswfjfdF0A=\ngithub.com/btcsuite/btcd/btcutil v1.1.0/go.mod h1:5OapHB7A2hBBWLm48mmw4MOHNJCcUBTwmWH/0Jn8VHE=\ngithub.com/btcsuite/btcd/btcutil v1.1.5/go.mod h1:PSZZ4UitpLBWzxGd5VGOrLnmOjtPP/a6HaFo12zMs00=\ngithub.com/btcsuite/btcd/btcutil v1.1.6 h1:zFL2+c3Lb9gEgqKNzowKUPQNb8jV7v5Oaodi/AYFd6c=\ngithub.com/btcsuite/btcd/btcutil v1.1.6/go.mod h1:9dFymx8HpuLqBnsPELrImQeTQfKBQqzqGbbV3jK55aE=\ngithub.com/btcsuite/btcd/chaincfg/chainhash v1.0.0/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc=\ngithub.com/btcsuite/btcd/chaincfg/chainhash v1.0.1/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc=\ngithub.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 h1:59Kx4K6lzOW5w6nFlA0v5+lk/6sjybR934QNHSJZPTQ=\ngithub.com/btcsuite/btcd/chaincfg/chainhash v1.1.0/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc=\ngithub.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA=\ngithub.com/btcsuite/btcutil v0.0.0-20190207003914-4c204d697803/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg=\ngithub.com/btcsuite/btcutil v0.0.0-20190425235716-9e5f4b9a998d/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg=\ngithub.com/btcsuite/btcutil v1.0.2/go.mod h1:j9HUFwoQRsZL3V4n+qG+CUnEGHOarIxfC3Le2Yhbcts=\ngithub.com/btcsuite/btcutil v1.0.3-0.20201208143702-a53e38424cce/go.mod h1:0DVlHczLPewLcPGEIeUEzfOJhqGPQ0mJJRDBtD307+o=\ngithub.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg=\ngithub.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY=\ngithub.com/btcsuite/goleveldb v1.0.0/go.mod h1:QiK9vBlgftBg6rWQIj6wFzbPfRjiykIEhBH4obrXJ/I=\ngithub.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc=\ngithub.com/btcsuite/snappy-go v1.0.0/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc=\ngithub.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY=\ngithub.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs=\ngithub.com/bufbuild/protocompile v0.6.0 h1:Uu7WiSQ6Yj9DbkdnOe7U4mNKp58y9WDMKDn28/ZlunY=\ngithub.com/bufbuild/protocompile v0.6.0/go.mod h1:YNP35qEYoYGme7QMtz5SBCoN4kL4g12jTtjuzRNdjpE=\ngithub.com/bwesterb/go-ristretto v1.2.0/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=\ngithub.com/c-bata/go-prompt v0.2.2/go.mod h1:VzqtzE2ksDBcdln8G7mk2RX9QyGjH+OVqOCSiVIqS34=\ngithub.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n9yuLkIJQ=\ngithub.com/cenkalti/backoff v2.2.1+incompatible h1:tNowT99t7UNflLxfYYSlKYsBpXdEet03Pg2g16Swow4=\ngithub.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM=\ngithub.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw=\ngithub.com/cenkalti/backoff/v4 v4.1.3 h1:cFAlzYUlVYDysBEH2T5hyJZMh3+5+WCBvSnK6Q8UtC4=\ngithub.com/cenkalti/backoff/v4 v4.1.3/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw=\ngithub.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=\ngithub.com/cespare/cp v0.1.0 h1:SE+dxFebS7Iik5LK0tsi1k9ZCxEaFX4AjQmoyA+1dJk=\ngithub.com/cespare/cp v0.1.0/go.mod h1:SOGHArjBr4JWaSDEVpWpo/hNg6RoKrls6Oh40hiwW+s=\ngithub.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=\ngithub.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=\ngithub.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=\ngithub.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=\ngithub.com/cheggaaa/pb v1.0.27/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXHm81s=\ngithub.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI=\ngithub.com/chzyer/logex v1.2.1 h1:XHDu3E6q+gdHgsdTPH6ImJMIp436vR6MPtH8gP05QzM=\ngithub.com/chzyer/logex v1.2.1/go.mod h1:JLbx6lG2kDbNRFnfkgvh4eRJRPX1QCoOIWomwysCBrQ=\ngithub.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI=\ngithub.com/chzyer/readline v1.5.1 h1:upd/6fQk4src78LMRzh5vItIt361/o4uq553V8B5sGI=\ngithub.com/chzyer/readline v1.5.1/go.mod h1:Eh+b79XXUwfKfcPLepksvw2tcLE/Ct21YObkaSkeBlk=\ngithub.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=\ngithub.com/chzyer/test v1.0.0 h1:p3BQDXSxOhOG0P9z6/hGnII4LGiEPOYBhs8asl/fC04=\ngithub.com/chzyer/test v1.0.0/go.mod h1:2JlltgoNkt4TW/z9V/IzDdFaMTM2JPIi26O1pF38GC8=\ngithub.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag=\ngithub.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I=\ngithub.com/clbanning/x2j v0.0.0-20191024224557-825249438eec/go.mod h1:jMjuTZXRI4dUb/I5gc9Hdhagfvm9+RyrPryS/auMzxE=\ngithub.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=\ngithub.com/cloudflare/cloudflare-go v0.14.0/go.mod h1:EnwdgGMaFOruiPZRFSgn+TsQ3hQ7C/YWzIGLeu5c304=\ngithub.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=\ngithub.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=\ngithub.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=\ngithub.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI=\ngithub.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=\ngithub.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=\ngithub.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=\ngithub.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=\ngithub.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=\ngithub.com/cockroachdb/apd/v2 v2.0.2 h1:weh8u7Cneje73dDh+2tEVLUvyBc89iwepWCD8b8034E=\ngithub.com/cockroachdb/apd/v2 v2.0.2/go.mod h1:DDxRlzC2lo3/vSlmSoS7JkqbbrARPuFOGr0B9pvN3Gw=\ngithub.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8=\ngithub.com/cockroachdb/datadriven v1.0.3-0.20230413201302-be42291fc80f h1:otljaYPt5hWxV3MUfO5dFPFiOXg9CyG5/kCfayTqsJ4=\ngithub.com/cockroachdb/datadriven v1.0.3-0.20230413201302-be42291fc80f/go.mod h1:a9RdTaap04u637JoCzcUoIcDmvwSUtcUFtT/C3kJlTU=\ngithub.com/cockroachdb/errors v1.11.3 h1:5bA+k2Y6r+oz/6Z/RFlNeVCesGARKuC6YymtcDrbC/I=\ngithub.com/cockroachdb/errors v1.11.3/go.mod h1:m4UIW4CDjx+R5cybPsNrRbreomiFqt8o1h1wUVazSd8=\ngithub.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce h1:giXvy4KSc/6g/esnpM7Geqxka4WSqI1SZc7sMJFd3y4=\ngithub.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce/go.mod h1:9/y3cnZ5GKakj/H4y9r9GTjCvAFta7KLgSHPJJYc52M=\ngithub.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b h1:r6VH0faHjZeQy818SGhaone5OnYfxFR/+AzdY3sf5aE=\ngithub.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b/go.mod h1:Vz9DsVWQQhf3vs21MhPMZpMGSht7O/2vFW2xusFUVOs=\ngithub.com/cockroachdb/pebble v1.1.2 h1:CUh2IPtR4swHlEj48Rhfzw6l/d0qA31fItcIszQVIsA=\ngithub.com/cockroachdb/pebble v1.1.2/go.mod h1:4exszw1r40423ZsmkG/09AFEG83I0uDgfujJdbL6kYU=\ngithub.com/cockroachdb/redact v1.1.5 h1:u1PMllDkdFfPWaNGMyLD1+so+aq3uUItthCFqzwPJ30=\ngithub.com/cockroachdb/redact v1.1.5/go.mod h1:BVNblN9mBWFyMyqK1k3AAiSxhvhfK2oOZZ2lK+dpvRg=\ngithub.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 h1:zuQyyAKVxetITBuuhv3BI9cMrmStnpT18zmgmTxunpo=\ngithub.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06/go.mod h1:7nc4anLGjupUW/PeY5qiNYsdNXj7zopG+eqsS7To5IQ=\ngithub.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI=\ngithub.com/coinbase/kryptology v1.8.0/go.mod h1:RYXOAPdzOGUe3qlSFkMGn58i3xUA8hmxYHksuq+8ciI=\ngithub.com/coinbase/rosetta-sdk-go v0.7.9 h1:lqllBjMnazTjIqYrOGv8h8jxjg9+hJazIGZr9ZvoCcA=\ngithub.com/coinbase/rosetta-sdk-go v0.7.9/go.mod h1:0/knutI7XGVqXmmH4OQD8OckFrbQ8yMsUZTG7FXCR2M=\ngithub.com/cometbft/cometbft v0.38.21 h1:qcIJSH9LiwU5s6ZgKR5eRbsLNucbubfraDs5bzgjtOI=\ngithub.com/cometbft/cometbft v0.38.21/go.mod h1:UCu8dlHqvkAsmAFmWDRWNZJPlu6ya2fTWZlDrWsivwo=\ngithub.com/cometbft/cometbft-db v0.14.1 h1:SxoamPghqICBAIcGpleHbmoPqy+crij/++eZz3DlerQ=\ngithub.com/cometbft/cometbft-db v0.14.1/go.mod h1:KHP1YghilyGV/xjD5DP3+2hyigWx0WTp9X+0Gnx0RxQ=\ngithub.com/consensys/bavard v0.1.8-0.20210406032232-f3452dc9b572/go.mod h1:Bpd0/3mZuaj6Sj+PqrmIquiOKy397AKGThQPaGzNXAQ=\ngithub.com/consensys/bavard v0.1.8-0.20210915155054-088da2f7f54a/go.mod h1:9ItSMtA/dXMAiL7BG6bqW2m3NdSEObYWoH223nGHukI=\ngithub.com/consensys/gnark-crypto v0.4.1-0.20210426202927-39ac3d4b3f1f/go.mod h1:815PAHg3wvysy0SyIqanF8gZ0Y1wjk/hrDHD/iT88+Q=\ngithub.com/consensys/gnark-crypto v0.5.3/go.mod h1:hOdPlWQV1gDLp7faZVeg8Y0iEPFaOUnCc4XeCCk96p0=\ngithub.com/containerd/continuity v0.3.0 h1:nisirsYROK15TAMVukJOUyGJjz4BNQJBVsNvAXZJ/eg=\ngithub.com/containerd/continuity v0.3.0/go.mod h1:wJEAIwKOm/pBZuBd0JmeTvnLquTB1Ag8espWhkykbPM=\ngithub.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=\ngithub.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk=\ngithub.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=\ngithub.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=\ngithub.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=\ngithub.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA=\ngithub.com/cosmos/btcutil v1.0.5 h1:t+ZFcX77LpKtDBhjucvnOH8C2l2ioGsBNEQ3jef8xFk=\ngithub.com/cosmos/btcutil v1.0.5/go.mod h1:IyB7iuqZMJlthe2tkIFL33xPyzbFYP0XVdS8P5lUPis=\ngithub.com/cosmos/cosmos-db v1.1.0 h1:KLHNVQ73h7vawXTpj9UJ7ZR2IXv51tsEHkQJJ9EBDzI=\ngithub.com/cosmos/cosmos-db v1.1.0/go.mod h1:t7c4A6cfGdpUwwVxrQ0gQLeRQqGUBJu0yvE4F/26REg=\ngithub.com/cosmos/cosmos-proto v1.0.0-beta.5 h1:eNcayDLpip+zVLRLYafhzLvQlSmyab+RC5W7ZfmxJLA=\ngithub.com/cosmos/cosmos-proto v1.0.0-beta.5/go.mod h1:hQGLpiIUloJBMdQMMWb/4wRApmI9hjHH05nefC0Ojec=\ngithub.com/cosmos/cosmos-sdk v0.50.11-lsm h1:fExTM8+aWWgDCnU+P41yYJHQWTRBouQZJNfLbjYvk3o=\ngithub.com/cosmos/cosmos-sdk v0.50.11-lsm/go.mod h1:NflT1/PkUKwiAI2H6pZbn5I3bVYcY05qzk64XgZwkmw=\ngithub.com/cosmos/go-bip39 v1.0.0 h1:pcomnQdrdH22njcAatO0yWojsUnCO3y2tNoV1cb6hHY=\ngithub.com/cosmos/go-bip39 v1.0.0/go.mod h1:RNJv0H/pOIVgxw6KS7QeX2a0Uo0aKUlfhZ4xuwvCdJw=\ngithub.com/cosmos/gogogateway v1.2.0 h1:Ae/OivNhp8DqBi/sh2A8a1D0y638GpL3tkmLQAiKxTE=\ngithub.com/cosmos/gogogateway v1.2.0/go.mod h1:iQpLkGWxYcnCdz5iAdLcRBSw3h7NXeOkZ4GUkT+tbFI=\ngithub.com/cosmos/gogoproto v1.4.2/go.mod h1:cLxOsn1ljAHSV527CHOtaIP91kK6cCrZETRBrkzItWU=\ngithub.com/cosmos/gogoproto v1.7.0 h1:79USr0oyXAbxg3rspGh/m4SWNyoz/GLaAh0QlCe2fro=\ngithub.com/cosmos/gogoproto v1.7.0/go.mod h1:yWChEv5IUEYURQasfyBW5ffkMHR/90hiHgbNgrtp4j0=\ngithub.com/cosmos/iavl v1.2.2 h1:qHhKW3I70w+04g5KdsdVSHRbFLgt3yY3qTMd4Xa4rC8=\ngithub.com/cosmos/iavl v1.2.2/go.mod h1:GiM43q0pB+uG53mLxLDzimxM9l/5N9UuSY3/D0huuVw=\ngithub.com/cosmos/ibc-go/modules/capability v1.0.1 h1:ibwhrpJ3SftEEZRxCRkH0fQZ9svjthrX2+oXdZvzgGI=\ngithub.com/cosmos/ibc-go/modules/capability v1.0.1/go.mod h1:rquyOV262nGJplkumH+/LeYs04P3eV8oB7ZM4Ygqk4E=\ngithub.com/cosmos/ibc-go/v8 v8.7.0 h1:HqhVOkO8bDpClXE81DFQgFjroQcTvtpm0tCS7SQVKVY=\ngithub.com/cosmos/ibc-go/v8 v8.7.0/go.mod h1:G2z+Q6ZQSMcyHI2+BVcJdvfOupb09M2h/tgpXOEdY6k=\ngithub.com/cosmos/ics23/go v0.11.0 h1:jk5skjT0TqX5e5QJbEnwXIS2yI2vnmLOgpQPeM5RtnU=\ngithub.com/cosmos/ics23/go v0.11.0/go.mod h1:A8OjxPE67hHST4Icw94hOxxFEJMBG031xIGF/JHNIY0=\ngithub.com/cosmos/ledger-cosmos-go v0.13.3 h1:7ehuBGuyIytsXbd4MP43mLeoN2LTOEnk5nvue4rK+yM=\ngithub.com/cosmos/ledger-cosmos-go v0.13.3/go.mod h1:HENcEP+VtahZFw38HZ3+LS3Iv5XV6svsnkk9vdJtLr8=\ngithub.com/cosmos/rosetta-sdk-go v0.10.0 h1:E5RhTruuoA7KTIXUcMicL76cffyeoyvNybzUGSKFTcM=\ngithub.com/cosmos/rosetta-sdk-go v0.10.0/go.mod h1:SImAZkb96YbwvoRkzSMQB6noNJXFgWl/ENIznEoYQI4=\ngithub.com/cpuguy83/go-md2man v1.0.10 h1:BSKMNlYxDvnunlTymqtgONjNnaRV1sTpcovwwjF22jk=\ngithub.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE=\ngithub.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=\ngithub.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0=\ngithub.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=\ngithub.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=\ngithub.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=\ngithub.com/cyberdelia/templates v0.0.0-20141128023046-ca7fffd4298c/go.mod h1:GyV+0YP4qX0UQ7r2MoYZ+AvYDp12OF5yg4q8rGnyNh4=\ngithub.com/danieljoos/wincred v1.1.2 h1:QLdCxFs1/Yl4zduvBdcHB8goaYk9RARS2SgLLRuAyr0=\ngithub.com/danieljoos/wincred v1.1.2/go.mod h1:GijpziifJoIBfYh+S7BbkdUTU4LfM+QnGqR5Vl2tAx0=\ngithub.com/dave/jennifer v1.2.0/go.mod h1:fIb+770HOpJ2fmN9EPPKOqm1vMGhB+TwXKMZhrIygKg=\ngithub.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=\ngithub.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=\ngithub.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=\ngithub.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=\ngithub.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=\ngithub.com/deckarep/golang-set v1.8.0 h1:sk9/l/KqpunDwP7pSjUg0keiOOLEnOBHzykLrsPppp4=\ngithub.com/deckarep/golang-set v1.8.0/go.mod h1:5nI87KwE7wgsBU1F4GKAw2Qod7p5kyS383rP6+o6qqo=\ngithub.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc=\ngithub.com/decred/dcrd/crypto/blake256 v1.1.0 h1:zPMNGQCm0g4QTY27fOCorQW7EryeQ/U0x++OzVrdms8=\ngithub.com/decred/dcrd/crypto/blake256 v1.1.0/go.mod h1:2OfgNZ5wDpcsFmHmCK5gZTPcCXqlm2ArzUIkw9czNJo=\ngithub.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs=\ngithub.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 h1:NMZiJj8QnKe1LgsbDayM4UoHwbvwDRwnI3hwNaAHRnc=\ngithub.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0/go.mod h1:ZXNYxsqcloTdSy/rNShjYzMhyjf0LaoftYK0p+A3h40=\ngithub.com/decred/dcrd/lru v1.0.0/go.mod h1:mxKOwFd7lFjN2GZYsiz/ecgqR6kkYAl+0pz0tEMk218=\ngithub.com/deepmap/oapi-codegen v1.6.0/go.mod h1:ryDa9AgbELGeB+YEXE1dR53yAjHwFvE9iAUlWl9Al3M=\ngithub.com/deepmap/oapi-codegen v1.8.2/go.mod h1:YLgSKSDv/bZQB7N4ws6luhozi3cEdRktEqrX88CvjIw=\ngithub.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f h1:U5y3Y5UE0w7amNe7Z5G/twsBW0KEalRQXZzf8ufSh9I=\ngithub.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f/go.mod h1:xH/i4TFMt8koVQZ6WFms69WAsDWr2XsYL3Hkl7jkoLE=\ngithub.com/dgraph-io/badger/v2 v2.2007.4/go.mod h1:vSw/ax2qojzbN6eXHIx6KPKtCSHJN/Uz0X0VPruTIhk=\ngithub.com/dgraph-io/badger/v4 v4.2.0 h1:kJrlajbXXL9DFTNuhhu9yCx7JJa4qpYWxtE8BzuWsEs=\ngithub.com/dgraph-io/badger/v4 v4.2.0/go.mod h1:qfCqhPoWDFJRx1gp5QwwyGo8xk1lbHUxvK9nK0OGAak=\ngithub.com/dgraph-io/ristretto v0.0.3-0.20200630154024-f66de99634de/go.mod h1:KPxhHT9ZxKefz+PCeOGsrHpl1qZ7i70dGTu2u+Ahh6E=\ngithub.com/dgraph-io/ristretto v0.0.3/go.mod h1:KPxhHT9ZxKefz+PCeOGsrHpl1qZ7i70dGTu2u+Ahh6E=\ngithub.com/dgraph-io/ristretto v0.1.1 h1:6CWw5tJNgpegArSHpNHJKldNeq03FQCwYvfMVWajOK8=\ngithub.com/dgraph-io/ristretto v0.1.1/go.mod h1:S1GPSBCYCIhmVNfcth17y2zZtQT6wzkzgwUve0VDWWA=\ngithub.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=\ngithub.com/dgryski/go-bitstream v0.0.0-20180413035011-3522498ce2c8/go.mod h1:VMaSuZ+SZcx/wljOQKvp5srsbCiKDEb6K2wC4+PiBmQ=\ngithub.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=\ngithub.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 h1:fAjc9m62+UWV/WAFKLNi6ZS0675eEUC9y3AlwSbQu1Y=\ngithub.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=\ngithub.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no=\ngithub.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 h1:Izz0+t1Z5nI16/II7vuEo/nHjodOg0p7+OiDpjX5t1E=\ngithub.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc=\ngithub.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko=\ngithub.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ=\ngithub.com/docker/docker v1.4.2-0.20180625184442-8e610b2b55bf/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=\ngithub.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ=\ngithub.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=\ngithub.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4=\ngithub.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=\ngithub.com/dop251/goja v0.0.0-20211011172007-d99e4b8cbf48/go.mod h1:R9ET47fwRVRPZnOGvHxxhuZcbrMCuiqOz3Rlrh4KSnk=\ngithub.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf h1:Yt+4K30SdjOkRoRRm3vYNQgR+/ZIy0RmeUDZo7Y8zeQ=\ngithub.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf/go.mod h1:R9ET47fwRVRPZnOGvHxxhuZcbrMCuiqOz3Rlrh4KSnk=\ngithub.com/dop251/goja_nodejs v0.0.0-20210225215109-d91c329300e7/go.mod h1:hn7BA7c8pLvoGndExHudxTDKZ84Pyvv+90pbBjbTz0Y=\ngithub.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=\ngithub.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=\ngithub.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=\ngithub.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=\ngithub.com/dvsekhvalnov/jose2go v1.6.0 h1:Y9gnSnP4qEI0+/uQkHvFXeD2PLPJeXEL+ySMEA2EjTY=\ngithub.com/dvsekhvalnov/jose2go v1.6.0/go.mod h1:QsHjhyTlD/lAVqn/NSbVZmSCGeDehTB/mPZadG+mhXU=\ngithub.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5mFgVsvEsIPBvNs=\ngithub.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU=\ngithub.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I=\ngithub.com/eclipse/paho.mqtt.golang v1.2.0/go.mod h1:H9keYFcgq3Qr5OUJm/JZI/i6U7joQ8SYLhZwfeOo6Ts=\ngithub.com/edsrzf/mmap-go v1.0.0 h1:CEBF7HpRnUCSJgGUb5h1Gm7e3VkmVDrR8lvWVLtrOFw=\ngithub.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M=\ngithub.com/emicklei/dot v1.6.2 h1:08GN+DD79cy/tzN6uLCT84+2Wk9u+wvqP+Hkx/dIR8A=\ngithub.com/emicklei/dot v1.6.2/go.mod h1:DeV7GvQtIw4h2u73RKBkkFdvVAz0D9fzeJrgPW6gy/s=\ngithub.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g=\ngithub.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=\ngithub.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=\ngithub.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=\ngithub.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po=\ngithub.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=\ngithub.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=\ngithub.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ=\ngithub.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0=\ngithub.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE=\ngithub.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=\ngithub.com/ethereum/go-ethereum v1.10.17/go.mod h1:Lt5WzjM07XlXc95YzrhosmR4J9Ahd6X2wyEV2SvGhk0=\ngithub.com/ethereum/go-ethereum v1.10.26 h1:i/7d9RBBwiXCEuyduBQzJw/mKmnvzsN14jqBmytw72s=\ngithub.com/ethereum/go-ethereum v1.10.26/go.mod h1:EYFyF19u3ezGLD4RqOkLq+ZCXzYbLoNDdZlMt7kyKFg=\ngithub.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=\ngithub.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=\ngithub.com/fatih/color v1.15.0 h1:kOqh6YHBtK8aywxGerMG2Eq3H6Qgoqeo13Bk2Mv/nBs=\ngithub.com/fatih/color v1.15.0/go.mod h1:0h5ZqXfHYED7Bhv2ZJamyIOUej9KtShiJESRwBDUSsw=\ngithub.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=\ngithub.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=\ngithub.com/fjl/memsize v0.0.0-20190710130421-bcb5799ab5e5 h1:FtmdgXiUlNeRsoNMFlKLDt+S+6hbjVMEW6RGQ7aUf7c=\ngithub.com/fjl/memsize v0.0.0-20190710130421-bcb5799ab5e5/go.mod h1:VvhXpOYNQvB+uIk2RvXzuaQtkQJzzIx6lSBe1xv7hi0=\ngithub.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k=\ngithub.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw=\ngithub.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g=\ngithub.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4=\ngithub.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20=\ngithub.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8=\ngithub.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=\ngithub.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=\ngithub.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=\ngithub.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=\ngithub.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=\ngithub.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff h1:tY80oXqGNY4FhTFhk+o9oFHGINQ/+vhlm8HFzi6znCI=\ngithub.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff/go.mod h1:x7DCsMOv1taUwEWCzT4cmDeAkigA5/QCwUodaVOe8Ww=\ngithub.com/getkin/kin-openapi v0.53.0/go.mod h1:7Yn5whZr5kJi6t+kShccXS8ae1APpYTW6yheSwk8Yi4=\ngithub.com/getkin/kin-openapi v0.61.0/go.mod h1:7Yn5whZr5kJi6t+kShccXS8ae1APpYTW6yheSwk8Yi4=\ngithub.com/getsentry/sentry-go v0.27.0 h1:Pv98CIbtB3LkMWmXi4Joa5OOcwbmnX88sF5qbK3r3Ps=\ngithub.com/getsentry/sentry-go v0.27.0/go.mod h1:lc76E2QywIyW8WuBnwl8Lc4bkmQH4+w1gwTf25trprY=\ngithub.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=\ngithub.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE=\ngithub.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=\ngithub.com/gin-gonic/gin v1.6.3/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M=\ngithub.com/gin-gonic/gin v1.8.1 h1:4+fr/el88TOO3ewCmQr8cx/CtZ/umlIRIs5M4NTNjf8=\ngithub.com/gin-gonic/gin v1.8.1/go.mod h1:ji8BvRH1azfM+SYow9zQ6SZMvR8qOMZHmsCuWR9tTTk=\ngithub.com/glycerine/go-unsnap-stream v0.0.0-20180323001048-9f0cb55181dd/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=\ngithub.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24=\ngithub.com/go-chi/chi/v5 v5.0.0/go.mod h1:BBug9lr0cqtdAhsu6R4AAdvufI0/XBzAQSsUqJpoZOs=\ngithub.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxIA=\ngithub.com/go-errors/errors v1.4.2/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og=\ngithub.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=\ngithub.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=\ngithub.com/go-kit/kit v0.10.0/go.mod h1:xUsJbQ/Fp4kEt7AFgCuvyX4a71u8h9jB8tj/ORgOZ7o=\ngithub.com/go-kit/kit v0.13.0 h1:OoneCcHKHQ03LfBpoQCUfCluwd2Vt3ohz+kvbJneZAU=\ngithub.com/go-kit/kit v0.13.0/go.mod h1:phqEHMMUbyrCFCTgH48JueqrM3md2HcAZ8N3XE4FKDg=\ngithub.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY=\ngithub.com/go-kit/log v0.2.1 h1:MRVx0/zhvdseW+Gza6N9rVzU/IVzaeE1SFI4raAhmBU=\ngithub.com/go-kit/log v0.2.1/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0=\ngithub.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=\ngithub.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=\ngithub.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=\ngithub.com/go-logfmt/logfmt v0.6.0 h1:wGYYu3uicYdqXVgoYbvnkrPVXkuLM1p1ifugDMEdRi4=\ngithub.com/go-logfmt/logfmt v0.6.0/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs=\ngithub.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=\ngithub.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=\ngithub.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=\ngithub.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=\ngithub.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=\ngithub.com/go-ole/go-ole v1.2.1/go.mod h1:7FAglXiTm7HKlQRDeOQ6ZNUHidzCWXuZWq/1dTyBNF8=\ngithub.com/go-ole/go-ole v1.2.5/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=\ngithub.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY=\ngithub.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=\ngithub.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=\ngithub.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=\ngithub.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=\ngithub.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8=\ngithub.com/go-playground/locales v0.14.0 h1:u50s323jtVGugKlcYeyzC0etD1HifMjqmJqb8WugfUU=\ngithub.com/go-playground/locales v0.14.0/go.mod h1:sawfccIbzZTqEDETgFXqTho0QybSa7l++s0DH+LDiLs=\ngithub.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA=\ngithub.com/go-playground/universal-translator v0.18.0 h1:82dyy6p4OuJq4/CByFNOn/jYrnRPArHwAcmLoJZxyho=\ngithub.com/go-playground/universal-translator v0.18.0/go.mod h1:UvRDBj+xPUEGrFYl+lu/H90nyDXpg0fqeB/AQUGNTVA=\ngithub.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI=\ngithub.com/go-playground/validator/v10 v10.11.1 h1:prmOlTVv+YjZjmRmNSF3VmspqJIxJWXmqUsHwfTRRkQ=\ngithub.com/go-playground/validator/v10 v10.11.1/go.mod h1:i+3WkQ1FvaUjjxh1kSvIA4dMGDBiPU55YFDl0WbKdWU=\ngithub.com/go-sourcemap/sourcemap v2.1.3+incompatible h1:W1iEw64niKVGogNgBN3ePyLFfuisuzeidWPMPWmECqU=\ngithub.com/go-sourcemap/sourcemap v2.1.3+incompatible/go.mod h1:F8jJfvm2KbVjc5NqelyYJmf/v5J0dwNLS2mL4sNA1Jg=\ngithub.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=\ngithub.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=\ngithub.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=\ngithub.com/go-stack/stack v1.8.1 h1:ntEHSVwIt7PNXNpgPmVfMrNhLtgjlmnZha2kOpuRiDw=\ngithub.com/go-stack/stack v1.8.1/go.mod h1:dcoOX6HbPZSZptuspn9bctJ+N/CnF5gGygcUP3XYfe4=\ngithub.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=\ngithub.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=\ngithub.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee h1:s+21KNqlpePfkah2I+gwHF8xmJWRjooY+5248k6m4A0=\ngithub.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo=\ngithub.com/gobwas/pool v0.2.0 h1:QEmUOlnSjWtnpRGHF3SauEiOsy82Cup83Vf2LcMlnc8=\ngithub.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw=\ngithub.com/gobwas/ws v1.0.2 h1:CoAavW/wd/kulfZmSIBt6p24n4j7tHgNVCjsfHVNUbo=\ngithub.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM=\ngithub.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU=\ngithub.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=\ngithub.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 h1:ZpnhV/YsD2/4cESfV5+Hoeu/iUR3ruzNvZ+yQfO03a0=\ngithub.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4=\ngithub.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=\ngithub.com/gofrs/uuid v3.3.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=\ngithub.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s=\ngithub.com/gogo/googleapis v1.4.1-0.20201022092350-68b0159b7869/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c=\ngithub.com/gogo/googleapis v1.4.1 h1:1Yx4Myt7BxzvUr5ldGSbwYiZG6t9wGBZ+8/fX3Wvtq0=\ngithub.com/gogo/googleapis v1.4.1/go.mod h1:2lpHqI5OcWCtVElxXnPt+s8oJvMpySlOyM6xDCrzib4=\ngithub.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=\ngithub.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=\ngithub.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=\ngithub.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=\ngithub.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=\ngithub.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=\ngithub.com/golang-jwt/jwt/v4 v4.3.0 h1:kHL1vqdqWNfATmA0FNMdmZNMyZI1U6O31X4rlIPoBog=\ngithub.com/golang-jwt/jwt/v4 v4.3.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg=\ngithub.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=\ngithub.com/golang/geo v0.0.0-20190916061304-5b978397cfec/go.mod h1:QZ0nwyI2jOfgRAoBvP+ab5aRr7c9x7lhGEJrKvBwjWI=\ngithub.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=\ngithub.com/golang/glog v1.2.3 h1:oDTdz9f5VGVVNGu/Q7UXKWYsD0873HXLHdJUNBsSEKM=\ngithub.com/golang/glog v1.2.3/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w=\ngithub.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=\ngithub.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=\ngithub.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=\ngithub.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=\ngithub.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE=\ngithub.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=\ngithub.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=\ngithub.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=\ngithub.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y=\ngithub.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw=\ngithub.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw=\ngithub.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw=\ngithub.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4=\ngithub.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8=\ngithub.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc=\ngithub.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs=\ngithub.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=\ngithub.com/golang/protobuf v1.3.0/go.mod h1:Qd/q+1AKNOZr9uGQzbzCmRO6sUih6GTPZv6a1/R87v0=\ngithub.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=\ngithub.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=\ngithub.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=\ngithub.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=\ngithub.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk=\ngithub.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=\ngithub.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=\ngithub.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=\ngithub.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=\ngithub.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=\ngithub.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8=\ngithub.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=\ngithub.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=\ngithub.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=\ngithub.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM=\ngithub.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=\ngithub.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=\ngithub.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=\ngithub.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=\ngithub.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=\ngithub.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=\ngithub.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=\ngithub.com/golangci/lint-1 v0.0.0-20181222135242-d2cdd8c08219/go.mod h1:/X8TswGSh1pIozq4ZwCfxS0WA5JGXguxk94ar/4c87Y=\ngithub.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=\ngithub.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=\ngithub.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg=\ngithub.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4=\ngithub.com/google/flatbuffers v1.11.0/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=\ngithub.com/google/flatbuffers v2.0.8+incompatible h1:ivUb1cGomAB101ZM1T0nOiWz9pSrTMoa9+EiY7igmkM=\ngithub.com/google/flatbuffers v2.0.8+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=\ngithub.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=\ngithub.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=\ngithub.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=\ngithub.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=\ngithub.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE=\ngithub.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=\ngithub.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=\ngithub.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=\ngithub.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=\ngithub.com/google/gofuzz v0.0.0-20170612174753-24818f796faf/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=\ngithub.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=\ngithub.com/google/gofuzz v1.1.1-0.20200604201612-c04b05f3adfa/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=\ngithub.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=\ngithub.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=\ngithub.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no=\ngithub.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=\ngithub.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=\ngithub.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=\ngithub.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk=\ngithub.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc=\ngithub.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0=\ngithub.com/google/orderedcode v0.0.1 h1:UzfcAexk9Vhv8+9pNOgRu41f16lHq725vPwnSeiG/Us=\ngithub.com/google/orderedcode v0.0.1/go.mod h1:iVyU4/qPKHY5h/wSd6rZZCDcLJNxiWO6dvsYES2Sb20=\ngithub.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=\ngithub.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=\ngithub.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=\ngithub.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=\ngithub.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=\ngithub.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=\ngithub.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=\ngithub.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=\ngithub.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 h1:5iH8iuqE5apketRbSFBy+X1V0o+l+8NF1avt4HWl7cA=\ngithub.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=\ngithub.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=\ngithub.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o=\ngithub.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw=\ngithub.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=\ngithub.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=\ngithub.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=\ngithub.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=\ngithub.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=\ngithub.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=\ngithub.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=\ngithub.com/googleapis/enterprise-certificate-proxy v0.0.0-20220520183353-fd19c99a87aa/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8=\ngithub.com/googleapis/enterprise-certificate-proxy v0.1.0/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8=\ngithub.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg=\ngithub.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs=\ngithub.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0=\ngithub.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=\ngithub.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=\ngithub.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0=\ngithub.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0eJc8R6ouapiM=\ngithub.com/googleapis/gax-go/v2 v2.2.0/go.mod h1:as02EH8zWkzwUoLbBaFeQ+arQaj/OthfcblKl4IGNaM=\ngithub.com/googleapis/gax-go/v2 v2.3.0/go.mod h1:b8LNqSzNabLiUpXKkY7HAR5jr6bIT99EXz9pXxye9YM=\ngithub.com/googleapis/gax-go/v2 v2.4.0/go.mod h1:XOTVJ59hdnfJLIP/dh8n5CGryZR2LxK9wbMD5+iXC6c=\ngithub.com/googleapis/gax-go/v2 v2.5.1/go.mod h1:h6B0KMMFNtI2ddbGJn3T3ZbwkeT6yqEF02fYlzkUCyo=\ngithub.com/googleapis/gax-go/v2 v2.6.0/go.mod h1:1mjbznJAPHFpesgE5ucqfYEscaz5kMdcIDwU/6+DDoY=\ngithub.com/googleapis/gax-go/v2 v2.12.5 h1:8gw9KZK8TiVKB6q3zHY3SBzLnrGp6HQjyfYBYGmXdxA=\ngithub.com/googleapis/gax-go/v2 v2.12.5/go.mod h1:BUDKcWo+RaKq5SC9vVYL0wLADa3VcfswbOMMRmB9H3E=\ngithub.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4=\ngithub.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=\ngithub.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=\ngithub.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE=\ngithub.com/gorilla/handlers v1.5.2/go.mod h1:dX+xVpaxdSw+q0Qek8SSsl3dfMk3jNddUkMzo0GtH0w=\ngithub.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=\ngithub.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=\ngithub.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=\ngithub.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=\ngithub.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ=\ngithub.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=\ngithub.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=\ngithub.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=\ngithub.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=\ngithub.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg=\ngithub.com/gorilla/websocket v1.5.3/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=\ngithub.com/graph-gophers/graphql-go v1.3.0/go.mod h1:9CQHMSxwO4MprSdzoIEobiHpoLtHm77vfxsvsIN5Vuc=\ngithub.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=\ngithub.com/grpc-ecosystem/go-grpc-middleware v1.2.2/go.mod h1:EaizFBKfUKtMIF5iaDEhniwNedqGo9FuLFzppDr3uwI=\ngithub.com/grpc-ecosystem/go-grpc-middleware v1.4.0 h1:UH//fgunKIs4JdUbpDl1VZCDaL56wXCB/5+wF6uHfaI=\ngithub.com/grpc-ecosystem/go-grpc-middleware v1.4.0/go.mod h1:g5qyo/la0ALbONm6Vbp88Yd8NsDy6rZz+RcrMPxvld8=\ngithub.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=\ngithub.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=\ngithub.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo=\ngithub.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=\ngithub.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c h1:6rhixN/i8ZofjG1Y75iExal34USq5p+wiN1tpie8IrU=\ngithub.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c/go.mod h1:NMPJylDgVpX0MLRlPy15sqSwOFv/U1GZ2m21JhFfek0=\ngithub.com/gtank/merlin v0.1.1/go.mod h1:T86dnYJhcGOh5BjZFCJWTDeTK7XW8uE+E21Cy/bIQ+s=\ngithub.com/hashicorp/consul/api v1.3.0/go.mod h1:MmDNSzIMUjNpY/mQ398R4bk2FnqQLoPndWW5VkKPlCE=\ngithub.com/hashicorp/consul/sdk v0.3.0/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8=\ngithub.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=\ngithub.com/hashicorp/go-bexpr v0.1.10 h1:9kuI5PFotCboP3dkDYFr/wi0gg0QVbSNz5oFRpxn4uE=\ngithub.com/hashicorp/go-bexpr v0.1.10/go.mod h1:oxlubA2vC/gFVfX1A6JGp7ls7uCDlfJn732ehYYg+g0=\ngithub.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80=\ngithub.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80=\ngithub.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ=\ngithub.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48=\ngithub.com/hashicorp/go-getter v1.7.4 h1:3yQjWuxICvSpYwqSayAdKRFcvBl1y/vogCxczWSmix0=\ngithub.com/hashicorp/go-getter v1.7.4/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744=\ngithub.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c=\ngithub.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=\ngithub.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=\ngithub.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc=\ngithub.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=\ngithub.com/hashicorp/go-metrics v0.5.3 h1:M5uADWMOGCTUNU1YuC4hfknOeHNaX54LDm4oYSucoNE=\ngithub.com/hashicorp/go-metrics v0.5.3/go.mod h1:KEjodfebIOuBYSAe/bHTm+HChmKSxAOXPBieMLYozDE=\ngithub.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM=\ngithub.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk=\ngithub.com/hashicorp/go-plugin v1.5.2 h1:aWv8eimFqWlsEiMrYZdPYl+FdHaBJSN4AWwGWfT1G2Y=\ngithub.com/hashicorp/go-plugin v1.5.2/go.mod h1:w1sAEES3g3PuV/RzUrgow20W2uErMly84hhD3um1WL4=\ngithub.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs=\ngithub.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU=\ngithub.com/hashicorp/go-safetemp v1.0.0 h1:2HR189eFNrjHQyENnQMMpCiBAsRxzbTMIgBhEyExpmo=\ngithub.com/hashicorp/go-safetemp v1.0.0/go.mod h1:oaerMy3BhqiTbVye6QuFhFtIceqFoDHxNAB65b+Rj1I=\ngithub.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU=\ngithub.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4=\ngithub.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=\ngithub.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=\ngithub.com/hashicorp/go-uuid v1.0.2 h1:cfejS+Tpcp13yd5nYHWDI6qVCny6wyX2Mt5SGur2IGE=\ngithub.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=\ngithub.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=\ngithub.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek=\ngithub.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=\ngithub.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90=\ngithub.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=\ngithub.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=\ngithub.com/hashicorp/golang-lru v0.5.5-0.20210104140557-80c98217689d/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=\ngithub.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c=\ngithub.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=\ngithub.com/hashicorp/golang-lru/v2 v2.0.7 h1:a+bsQ5rvGLjzHuww6tVxozPZFVghXaHOwFs4luLUK2k=\ngithub.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM=\ngithub.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=\ngithub.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=\ngithub.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64=\ngithub.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ=\ngithub.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I=\ngithub.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc=\ngithub.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE=\ngithub.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=\ngithub.com/hdevalence/ed25519consensus v0.1.0 h1:jtBwzzcHuTmFrQN6xQZn6CQEO/V9f7HsjsjeEZ6auqU=\ngithub.com/hdevalence/ed25519consensus v0.1.0/go.mod h1:w3BHWjwJbFU29IRHL1Iqkw3sus+7FctEyM4RqDxYNzo=\ngithub.com/holiman/bloomfilter/v2 v2.0.3 h1:73e0e/V0tCydx14a0SCYS/EWCxgwLZ18CZcZKVu0fao=\ngithub.com/holiman/bloomfilter/v2 v2.0.3/go.mod h1:zpoh+gs7qcpqrHr3dB55AMiJwo0iURXE7ZOP9L9hSkA=\ngithub.com/holiman/uint256 v1.2.0/go.mod h1:y4ga/t+u+Xwd7CpDgZESaRcWy0I7XMlTMA25ApIH5Jw=\ngithub.com/holiman/uint256 v1.2.2 h1:TXKcSGc2WaxPD2+bmzAsVthL4+pEN0YwXcL5qED83vk=\ngithub.com/holiman/uint256 v1.2.2/go.mod h1:SC8Ryt4n+UBbPbIBKaG9zbbDlp4jOru9xFZmPzLUTxw=\ngithub.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=\ngithub.com/huandu/go-assert v1.1.5 h1:fjemmA7sSfYHJD7CUqs9qTwwfdNAx7/j2/ZlHXzNB3c=\ngithub.com/huandu/go-assert v1.1.5/go.mod h1:yOLvuqZwmcHIC5rIzrBhT7D3Q9c3GFnd0JrPVhn/06U=\ngithub.com/huandu/skiplist v1.2.0 h1:gox56QD77HzSC0w+Ws3MH3iie755GBJU1OER3h5VsYw=\ngithub.com/huandu/skiplist v1.2.0/go.mod h1:7v3iFjLcSAzO4fN5B8dvebvo/qsfumiLiDXMrPiHF9w=\ngithub.com/hudl/fargo v1.3.0/go.mod h1:y3CKSmjA+wD2gak7sUSXTAoopbhU08POFhmITJgmKTg=\ngithub.com/huin/goupnp v1.0.3-0.20220313090229-ca81a64b4204/go.mod h1:ZxNlw5WqJj6wSsRK5+YfflQGXYfccj5VgQsMNixHM7Y=\ngithub.com/huin/goupnp v1.0.3 h1:N8No57ls+MnjlB+JPiCVSOyy/ot7MJTqlo7rn+NYSqQ=\ngithub.com/huin/goupnp v1.0.3/go.mod h1:ZxNlw5WqJj6wSsRK5+YfflQGXYfccj5VgQsMNixHM7Y=\ngithub.com/huin/goutil v0.0.0-20170803182201-1ca381bf3150/go.mod h1:PpLOETDnJ0o3iZrZfqZzyLl6l7F3c6L1oWn7OICBi6o=\ngithub.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI=\ngithub.com/iancoleman/strcase v0.3.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho=\ngithub.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc=\ngithub.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc=\ngithub.com/improbable-eng/grpc-web v0.15.0 h1:BN+7z6uNXZ1tQGcNAuaU1YjsLTApzkjt2tzCixLaUPQ=\ngithub.com/improbable-eng/grpc-web v0.15.0/go.mod h1:1sy9HKV4Jt9aEs9JSnkWlRJPuPtwNr0l57L4f878wP8=\ngithub.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=\ngithub.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=\ngithub.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=\ngithub.com/influxdata/flux v0.65.1/go.mod h1:J754/zds0vvpfwuq7Gc2wRdVwEodfpCFM7mYlOw2LqY=\ngithub.com/influxdata/influxdb v1.8.3/go.mod h1:JugdFhsvvI8gadxOI6noqNeeBHvWNTbfYGtiAn+2jhI=\ngithub.com/influxdata/influxdb-client-go/v2 v2.4.0/go.mod h1:vLNHdxTJkIf2mSLvGrpj8TCcISApPoXkaxP8g9uRlW8=\ngithub.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo=\ngithub.com/influxdata/influxql v1.1.1-0.20200828144457-65d3ef77d385/go.mod h1:gHp9y86a/pxhjJ+zMjNXiQAA197Xk9wLxaz+fGG+kWk=\ngithub.com/influxdata/line-protocol v0.0.0-20180522152040-32c6aa80de5e/go.mod h1:4kt73NQhadE3daL3WhR5EJ/J2ocX0PZzwxQ0gXJ7oFE=\ngithub.com/influxdata/line-protocol v0.0.0-20200327222509-2487e7298839/go.mod h1:xaLFMmpvUxqXtVkUJfg9QmT88cDaCJ3ZKgdZ78oO8Qo=\ngithub.com/influxdata/line-protocol v0.0.0-20210311194329-9aa0e372d097/go.mod h1:xaLFMmpvUxqXtVkUJfg9QmT88cDaCJ3ZKgdZ78oO8Qo=\ngithub.com/influxdata/promql/v2 v2.12.0/go.mod h1:fxOPu+DY0bqCTCECchSRtWfc+0X19ybifQhZoQNF5D8=\ngithub.com/influxdata/roaring v0.4.13-0.20180809181101-fc520f41fab6/go.mod h1:bSgUQ7q5ZLSO+bKBGqJiCBGAl+9DxyW63zLTujjUlOE=\ngithub.com/influxdata/tdigest v0.0.0-20181121200506-bf2b5ad3c0a9/go.mod h1:Js0mqiSBE6Ffsg94weZZ2c+v/ciT8QRHFOap7EKDrR0=\ngithub.com/influxdata/usage-client v0.0.0-20160829180054-6d3895376368/go.mod h1:Wbbw6tYNvwa5dlB6304Sd+82Z3f7PmVZHVKU637d4po=\ngithub.com/informalsystems/cosmos-sdk/api v0.7.5-lsm h1:M0+CQZLf2yS41TiWaiKw8nF5vlPaFDmVfwfyMHViRZk=\ngithub.com/informalsystems/cosmos-sdk/api v0.7.5-lsm/go.mod h1:IcxpYS5fMemZGqyYtErK7OqvdM0C8kdW3dq8Q/XIG38=\ngithub.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus=\ngithub.com/jackpal/go-nat-pmp v1.0.2/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc=\ngithub.com/jedisct1/go-minisign v0.0.0-20190909160543-45766022959e/go.mod h1:G1CVv03EnqU1wYL2dFwXxW2An0az9JTl/ZsqXQeBlkU=\ngithub.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=\ngithub.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=\ngithub.com/jhump/protoreflect v1.15.3 h1:6SFRuqU45u9hIZPJAoZ8c28T3nK64BNdp9w6jFonzls=\ngithub.com/jhump/protoreflect v1.15.3/go.mod h1:4ORHmSBmlCW8fh3xHmJMGyul1zNqZK4Elxc8qKP+p1k=\ngithub.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=\ngithub.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=\ngithub.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=\ngithub.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8=\ngithub.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=\ngithub.com/jmhodges/levigo v1.0.0 h1:q5EC36kV79HWeTBWsod3mG11EgStG3qArTKcvlksN1U=\ngithub.com/jmhodges/levigo v1.0.0/go.mod h1:Q6Qx+uH3RAqyK4rFQroq9RL7mdkABMcfhEI+nNuzMJQ=\ngithub.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=\ngithub.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=\ngithub.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ=\ngithub.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=\ngithub.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=\ngithub.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=\ngithub.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=\ngithub.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=\ngithub.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=\ngithub.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=\ngithub.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU=\ngithub.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk=\ngithub.com/jsternberg/zap-logfmt v1.0.0/go.mod h1:uvPs/4X51zdkcm5jXl5SYoN+4RK21K8mysFmDaM/h+o=\ngithub.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=\ngithub.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=\ngithub.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM=\ngithub.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=\ngithub.com/jwilder/encoding v0.0.0-20170811194829-b4e1701a28ef/go.mod h1:Ct9fl0F6iIOGgxJ5npU/IUOhOhqlVrGjyIZc8/MagT0=\ngithub.com/karalabe/usb v0.0.2/go.mod h1:Od972xHfMJowv7NGVDiWVxk2zxnWgjLlJzE+F4F7AGU=\ngithub.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q=\ngithub.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00=\ngithub.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=\ngithub.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=\ngithub.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4=\ngithub.com/klauspost/compress v1.4.0/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A=\ngithub.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=\ngithub.com/klauspost/compress v1.11.7/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=\ngithub.com/klauspost/compress v1.12.3/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg=\ngithub.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM=\ngithub.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc=\ngithub.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0=\ngithub.com/klauspost/cpuid v0.0.0-20170728055534-ae7887de9fa5/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek=\ngithub.com/klauspost/crc32 v0.0.0-20161016154125-cb6bfca970f6/go.mod h1:+ZoRqAPRLkC4NPOvfYeR5KNOrY6TD+/sAC3HXPZgDYg=\ngithub.com/klauspost/pgzip v1.0.2-0.20170402124221-0bf5dcad4ada/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=\ngithub.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=\ngithub.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=\ngithub.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=\ngithub.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=\ngithub.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=\ngithub.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=\ngithub.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=\ngithub.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=\ngithub.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=\ngithub.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=\ngithub.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=\ngithub.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=\ngithub.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=\ngithub.com/labstack/echo/v4 v4.2.1/go.mod h1:AA49e0DZ8kk5jTOOCKNuPR6oTnBS0dYiM4FW1e6jwpg=\ngithub.com/labstack/gommon v0.3.0/go.mod h1:MULnywXg0yavhxWKc+lOruYdAhDwPK9wf0OL7NoOu+k=\ngithub.com/leanovate/gopter v0.2.9/go.mod h1:U2L/78B+KVFIx2VmW6onHJQzXtFb+p5y3y2Sh+Jxxv8=\ngithub.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII=\ngithub.com/leodido/go-urn v1.2.1 h1:BqpAaACuzVSgi/VLzGZIobT2z4v53pjosyNd9Yv6n/w=\ngithub.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY=\ngithub.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=\ngithub.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw=\ngithub.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=\ngithub.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM=\ngithub.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4=\ngithub.com/linxGnu/grocksdb v1.8.14 h1:HTgyYalNwBSG/1qCQUIott44wU5b2Y9Kr3z7SK5OfGQ=\ngithub.com/linxGnu/grocksdb v1.8.14/go.mod h1:QYiYypR2d4v63Wj1adOOfzglnoII0gLj3PNh4fZkcFA=\ngithub.com/lucasjones/reggen v0.0.0-20180717132126-cdb49ff09d77/go.mod h1:5ELEyG+X8f+meRWHuqUOewBOhvHkl7M76pdGEansxW4=\ngithub.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ=\ngithub.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=\ngithub.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=\ngithub.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=\ngithub.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=\ngithub.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=\ngithub.com/manifoldco/promptui v0.9.0 h1:3V4HzJk1TtXW1MTZMP7mdlwbBpIinw3HztaIlYthEiA=\ngithub.com/manifoldco/promptui v0.9.0/go.mod h1:ka04sppxSGFAtxX0qhlYQjISsg9mR4GWtQEhdbn6Pgg=\ngithub.com/matryer/moq v0.0.0-20190312154309-6cfb0558e1bd/go.mod h1:9ELz6aaclSIGnZBoaSLZ3NAl1VTufbOrXBPvtcy6WiQ=\ngithub.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=\ngithub.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=\ngithub.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=\ngithub.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=\ngithub.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=\ngithub.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=\ngithub.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=\ngithub.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=\ngithub.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=\ngithub.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=\ngithub.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=\ngithub.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ=\ngithub.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=\ngithub.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=\ngithub.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=\ngithub.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=\ngithub.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=\ngithub.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=\ngithub.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=\ngithub.com/mattn/go-runewidth v0.0.3/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=\ngithub.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=\ngithub.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0=\ngithub.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=\ngithub.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=\ngithub.com/mattn/go-tty v0.0.0-20180907095812-13ff1204f104/go.mod h1:XPvLUNfbS4fJH25nqRHfWLMa1ONC8Amw+mIA639KxkE=\ngithub.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=\ngithub.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=\ngithub.com/mimoo/StrobeGo v0.0.0-20181016162300-f8f6d4d2b643/go.mod h1:43+3pMjjKimDBf5Kr4ZFNGbLql1zKkbImw+fZbw3geM=\ngithub.com/minio/highwayhash v1.0.3 h1:kbnuUMoHYyVl7szWjSxJnxw11k2U709jqFPPmIUyD6Q=\ngithub.com/minio/highwayhash v1.0.3/go.mod h1:GGYsuwP/fPD6Y9hMiXuapVvlIUEhFhMTh0rxU3ik1LQ=\ngithub.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc=\ngithub.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=\ngithub.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=\ngithub.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=\ngithub.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI=\ngithub.com/mitchellh/go-testing-interface v1.14.1 h1:jrgshOhYAUVNMAJiKbEu7EqAwgJJ2JqpQmpLJOu07cU=\ngithub.com/mitchellh/go-testing-interface v1.14.1/go.mod h1:gfgS7OtZj6MA4U1UrDRp04twqAjfvlZyCfX3sDjEym8=\ngithub.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg=\ngithub.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY=\ngithub.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=\ngithub.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=\ngithub.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=\ngithub.com/mitchellh/mapstructure v1.4.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=\ngithub.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=\ngithub.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=\ngithub.com/mitchellh/pointerstructure v1.2.0 h1:O+i9nHnXS3l/9Wu7r4NrEdwA2VFTicjUEN1uBnDo34A=\ngithub.com/mitchellh/pointerstructure v1.2.0/go.mod h1:BRAsLI5zgXmw97Lf6s25bs8ohIXc3tViBH44KcwB2g4=\ngithub.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=\ngithub.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=\ngithub.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=\ngithub.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=\ngithub.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=\ngithub.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=\ngithub.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=\ngithub.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8=\ngithub.com/mschoch/smat v0.0.0-20160514031455-90eadee771ae/go.mod h1:qAyveg+e4CE+eKJXWVjKXM4ck2QobLqTDytGJbLLhJg=\ngithub.com/mtibben/percent v0.2.1 h1:5gssi8Nqo8QU/r2pynCm+hBQHpkB/uNK7BJCFogWdzs=\ngithub.com/mtibben/percent v0.2.1/go.mod h1:KG9uO+SZkUp+VkRHsCdYQV3XSZrrSpR3O9ibNBTZrns=\ngithub.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=\ngithub.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=\ngithub.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=\ngithub.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f h1:KUppIJq7/+SVif2QVs3tOP0zanoHgBEVAwHxUSIzRqU=\ngithub.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=\ngithub.com/mwitkow/grpc-proxy v0.0.0-20181017164139-0f1106ef9c76/go.mod h1:x5OoJHDHqxHS801UIuhqGl6QdSAEJvtausosHSdazIo=\ngithub.com/naoina/go-stringutil v0.1.0/go.mod h1:XJ2SJL9jCtBh+P9q5btrd/Ylo8XwT/h1USek5+NqSA0=\ngithub.com/naoina/toml v0.1.2-0.20170918210437-9fafd6967416/go.mod h1:NBIhNtsFMo3G2szEBne+bO4gS192HuIYRqfvOWb4i1E=\ngithub.com/nats-io/jwt v0.3.0/go.mod h1:fRYCDE99xlTsqUzISS1Bi75UBJ6ljOJQOAAu5VglpSg=\ngithub.com/nats-io/jwt v0.3.2/go.mod h1:/euKqTS1ZD+zzjYrY7pseZrTtWQSjujC7xjPc8wL6eU=\ngithub.com/nats-io/nats-server/v2 v2.1.2/go.mod h1:Afk+wRZqkMQs/p45uXdrVLuab3gwv3Z8C4HTBu8GD/k=\ngithub.com/nats-io/nats.go v1.9.1/go.mod h1:ZjDU1L/7fJ09jvUSRVBR2e7+RnLiiIQyqyzEE/Zbp4w=\ngithub.com/nats-io/nkeys v0.1.0/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w=\ngithub.com/nats-io/nkeys v0.1.3/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w=\ngithub.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=\ngithub.com/neilotoole/errgroup v0.1.6/go.mod h1:Q2nLGf+594h0CLBs/Mbg6qOr7GtqDK7C2S41udRnToE=\ngithub.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=\ngithub.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=\ngithub.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE=\ngithub.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU=\ngithub.com/oasisprotocol/curve25519-voi v0.0.0-20230904125328-1f23a7beb09a h1:dlRvE5fWabOchtH7znfiFCcOvmIYgOeAS5ifBXBlh9Q=\ngithub.com/oasisprotocol/curve25519-voi v0.0.0-20230904125328-1f23a7beb09a/go.mod h1:hVoHR2EVESiICEMbg137etN/Lx+lSrHPTD39Z/uE+2s=\ngithub.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtbWGs=\ngithub.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA=\ngithub.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA=\ngithub.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU=\ngithub.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=\ngithub.com/olebedev/config v0.0.0-20190528211619-364964f3a8e4 h1:JnVsYEQzhEcOspy6ngIYNF2u0h2mjkXZptzX0IzZQ4g=\ngithub.com/olebedev/config v0.0.0-20190528211619-364964f3a8e4/go.mod h1:RL5+WRxWTAXqqCi9i+eZlHrUtO7AQujUqWi+xMohmc4=\ngithub.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo=\ngithub.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=\ngithub.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=\ngithub.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=\ngithub.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=\ngithub.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk=\ngithub.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY=\ngithub.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc=\ngithub.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0=\ngithub.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo=\ngithub.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI=\ngithub.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=\ngithub.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=\ngithub.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=\ngithub.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=\ngithub.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4=\ngithub.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog=\ngithub.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=\ngithub.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=\ngithub.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=\ngithub.com/opencontainers/image-spec v1.1.0-rc2 h1:2zx/Stx4Wc5pIPDvIxHXvXtQFW/7XWJGmnM7r3wg034=\ngithub.com/opencontainers/image-spec v1.1.0-rc2/go.mod h1:3OVijpioIKYWTqjiG0zfF6wvoJ4fAXGbjdZuI2NgsRQ=\ngithub.com/opencontainers/runc v1.1.12 h1:BOIssBaW1La0/qbNZHXOOa71dZfZEQOzW7dqQf3phss=\ngithub.com/opencontainers/runc v1.1.12/go.mod h1:S+lQwSfncpBha7XTy/5lBwWgm5+y5Ma/O44Ekby9FK8=\ngithub.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis=\ngithub.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74=\ngithub.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=\ngithub.com/opentracing/opentracing-go v1.0.3-0.20180606204148-bd9c31933947/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=\ngithub.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=\ngithub.com/openzipkin-contrib/zipkin-go-opentracing v0.4.5/go.mod h1:/wsWhb9smxSfWAKL3wpBW7V8scJMt8N8gnaMCS9E/cA=\ngithub.com/openzipkin/zipkin-go v0.1.6/go.mod h1:QgAqvLzwWbR/WpD4A3cGpPtJrZXNIiJc5AZX7/PBEpw=\ngithub.com/openzipkin/zipkin-go v0.2.1/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4=\ngithub.com/openzipkin/zipkin-go v0.2.2/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4=\ngithub.com/ory/dockertest v3.3.5+incompatible h1:iLLK6SQwIhcbrG783Dghaaa3WPzGc+4Emza6EbVUUGA=\ngithub.com/ory/dockertest v3.3.5+incompatible/go.mod h1:1vX4m9wsvi00u5bseYwXaSnhNrne+V0E6LAcBILJdPs=\ngithub.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM=\ngithub.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=\ngithub.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY=\ngithub.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=\ngithub.com/paulbellamy/ratecounter v0.2.0/go.mod h1:Hfx1hDpSGoqxkVVpBi/IlYD7kChlfo5C6hzIHwPqfFE=\ngithub.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k=\ngithub.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=\ngithub.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM=\ngithub.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs=\ngithub.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac=\ngithub.com/peterh/liner v1.0.1-0.20180619022028-8c1271fcf47f/go.mod h1:xIteQHvHuaLYG9IFj6mSxM0fCKrs34IrEQUhOYuGPHc=\ngithub.com/peterh/liner v1.1.1-0.20190123174540-a2c9a5303de7/go.mod h1:CRroGNssyjTd/qIG2FyxByd2S8JEAZXBl4qUrZf8GS0=\ngithub.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7 h1:Dx7Ovyv/SFnMFw3fD4oEoeorXc6saIiQ23LrGLth0Gw=\ngithub.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7/go.mod h1:pxMtw7cyUw6B2bRH0ZBANSPg+AoSud1I1iyJHI69jH4=\ngithub.com/philhofer/fwd v1.0.0/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU=\ngithub.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc=\ngithub.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=\ngithub.com/pingcap/errors v0.11.4 h1:lFuQV/oaUMGcD2tqt+01ROSmJs75VG1ToEOkZIZ4nE4=\ngithub.com/pingcap/errors v0.11.4/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8=\ngithub.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=\ngithub.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=\ngithub.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=\ngithub.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=\ngithub.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=\ngithub.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA=\ngithub.com/pkg/term v0.0.0-20180730021639-bffc007b7fd5/go.mod h1:eCbImbZ95eXtAUIbLAuAVnBnwf83mjf6QIVH8SHYwqQ=\ngithub.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=\ngithub.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=\ngithub.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=\ngithub.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI=\ngithub.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=\ngithub.com/prometheus/client_golang v0.9.3-0.20190127221311-3c4408c8b829/go.mod h1:p2iRAGwDERtqlqzRXnrOVns+ignqQo//hLXqYxZYVNs=\ngithub.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=\ngithub.com/prometheus/client_golang v1.3.0/go.mod h1:hJaj2vgQTGQmVCsAACORcieXFeDPbaTKGT+JTgUa3og=\ngithub.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU=\ngithub.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=\ngithub.com/prometheus/client_golang v1.21.0 h1:DIsaGmiaBkSangBgMtWdNfxbMNdku5IK6iNhrEqWvdA=\ngithub.com/prometheus/client_golang v1.21.0/go.mod h1:U9NM32ykUErtVBxdvD3zfi+EuFkkaBvMb09mIfe0Zgg=\ngithub.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=\ngithub.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=\ngithub.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=\ngithub.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=\ngithub.com/prometheus/client_model v0.1.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=\ngithub.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=\ngithub.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=\ngithub.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=\ngithub.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro=\ngithub.com/prometheus/common v0.2.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=\ngithub.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=\ngithub.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc=\ngithub.com/prometheus/common v0.7.0/go.mod h1:DjGbpBbp5NYNiECxcL/VnbXCCaQpKd3tt26CguLLsqA=\ngithub.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4=\ngithub.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo=\ngithub.com/prometheus/common v0.15.0/go.mod h1:U+gB1OBLb1lF3O42bTCL+FK18tX9Oar16Clt/msog/s=\ngithub.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io=\ngithub.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I=\ngithub.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=\ngithub.com/prometheus/procfs v0.0.0-20190117184657-bf6a532e95b1/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=\ngithub.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=\ngithub.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A=\ngithub.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU=\ngithub.com/prometheus/procfs v0.3.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU=\ngithub.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc=\ngithub.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=\ngithub.com/prometheus/tsdb v0.7.1 h1:YZcsG11NqnK4czYLrWd9mpEuAJIHVQLwdrleYfszMAA=\ngithub.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU=\ngithub.com/rakyll/statik v0.1.7 h1:OF3QCZUuyPxuGEP7B4ypUa7sB/iHtqOTDYZXGM8KOdQ=\ngithub.com/rakyll/statik v0.1.7/go.mod h1:AlZONWzMtEnMs7W4e/1LURLiI49pIMmp6V9Unghqrcc=\ngithub.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=\ngithub.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 h1:N/ElC8H3+5XpJzTSTfLsJV/mx9Q9g7kxmchpfZyxgzM=\ngithub.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=\ngithub.com/retailnext/hllpp v1.0.1-0.20180308014038-101a6d2f8b52/go.mod h1:RDpi1RftBQPUCDRw6SmxeaREsAaRKnOclghuzp/WRzc=\ngithub.com/rjeczalik/notify v0.9.1 h1:CLCKso/QK1snAlnhNR/CNvNiFU2saUtjV0bx3EwNeCE=\ngithub.com/rjeczalik/notify v0.9.1/go.mod h1:rKwnCoCGeuQnwBtTSPL9Dad03Vh2n40ePRrjvIXnJho=\ngithub.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=\ngithub.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=\ngithub.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=\ngithub.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=\ngithub.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=\ngithub.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=\ngithub.com/rs/cors v1.7.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU=\ngithub.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA=\ngithub.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=\ngithub.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg=\ngithub.com/rs/zerolog v1.33.0 h1:1cU2KZkvPxNyfgEmhHAz/1A9Bz+llsdYzklWFzgp0r8=\ngithub.com/rs/zerolog v1.33.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=\ngithub.com/russross/blackfriday v1.5.2 h1:HyvC0ARfnZBqnXwABFeSZHpKvJHJJfPz81GNueLj0oo=\ngithub.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g=\ngithub.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=\ngithub.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=\ngithub.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=\ngithub.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts=\ngithub.com/sagikazarmark/locafero v0.4.0 h1:HApY1R9zGo4DBgr7dqsTH/JJxLTTsOt7u6keLGt6kNQ=\ngithub.com/sagikazarmark/locafero v0.4.0/go.mod h1:Pe1W6UlPYUk/+wc/6KFhbORCfqzgYEpgQ3O5fPuL3H4=\ngithub.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE=\ngithub.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ=\ngithub.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E=\ngithub.com/sasha-s/go-deadlock v0.3.5 h1:tNCOEEDG6tBqrNDOX35j/7hL5FcFViG6awUGROb2NsU=\ngithub.com/sasha-s/go-deadlock v0.3.5/go.mod h1:bugP6EGbdGYObIlx7pUZtWqlvo8k9H6vCBBsiChJQ5U=\ngithub.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=\ngithub.com/segmentio/fasthash v1.0.3/go.mod h1:waKX8l2N8yckOgmSsXJi7x1ZfdKZ4x7KRMzBtS3oedY=\ngithub.com/segmentio/kafka-go v0.1.0/go.mod h1:X6itGqS9L4jDletMsxZ7Dz+JFWxM6JHfPOCvTvk+EJo=\ngithub.com/segmentio/kafka-go v0.2.0/go.mod h1:X6itGqS9L4jDletMsxZ7Dz+JFWxM6JHfPOCvTvk+EJo=\ngithub.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=\ngithub.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible h1:Bn1aCHHRnjv4Bl16T8rcaFjYSrGrIZvpiGO6P3Q4GpU=\ngithub.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=\ngithub.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=\ngithub.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=\ngithub.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=\ngithub.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=\ngithub.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=\ngithub.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=\ngithub.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=\ngithub.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=\ngithub.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=\ngithub.com/snikch/goodman v0.0.0-20171125024755-10e37e294daa h1:YJfZp12Z3AFhSBeXOlv4BO55RMwPn2NoQeDsrdWnBtY=\ngithub.com/snikch/goodman v0.0.0-20171125024755-10e37e294daa/go.mod h1:oJyF+mSPHbB5mVY2iO9KV3pTt/QbIkGaO8gQ2WrDbP4=\ngithub.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=\ngithub.com/sony/gobreaker v0.4.1/go.mod h1:ZKptC7FHNvhBz7dN2LGjPVBz2sZJmc0/PkyDJOjmxWY=\ngithub.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo=\ngithub.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0=\ngithub.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=\ngithub.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=\ngithub.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=\ngithub.com/spf13/afero v1.11.0 h1:WJQKhtpdm3v2IzqG8VMqrr6Rf3UYpEF239Jy9wNepM8=\ngithub.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNoBjkY=\ngithub.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=\ngithub.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w=\ngithub.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=\ngithub.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=\ngithub.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU=\ngithub.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=\ngithub.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=\ngithub.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=\ngithub.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=\ngithub.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=\ngithub.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=\ngithub.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=\ngithub.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=\ngithub.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s=\ngithub.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI=\ngithub.com/spf13/viper v1.19.0/go.mod h1:GQUN9bilAbhU/jgc1bKs99f/suXKeUMct8Adx5+Ntkg=\ngithub.com/status-im/keycard-go v0.0.0-20190316090335-8537d3370df4/go.mod h1:RZLeN1LMWmRsyYjvAu+I6Dm9QmlDaIIt+Y+4Kd7Tp+Q=\ngithub.com/status-im/keycard-go v0.2.0 h1:QDLFswOQu1r5jsycloeQh3bVU8n/NatHHaZobtDnDzA=\ngithub.com/status-im/keycard-go v0.2.0/go.mod h1:wlp8ZLbsmrF6g6WjugPAx+IzoLrkdf9+mHxBEeo3Hbg=\ngithub.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=\ngithub.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=\ngithub.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI=\ngithub.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=\ngithub.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=\ngithub.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=\ngithub.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=\ngithub.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=\ngithub.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=\ngithub.com/stretchr/testify v1.2.0/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=\ngithub.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=\ngithub.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=\ngithub.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=\ngithub.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=\ngithub.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=\ngithub.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=\ngithub.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=\ngithub.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=\ngithub.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=\ngithub.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=\ngithub.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=\ngithub.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=\ngithub.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=\ngithub.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=\ngithub.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=\ngithub.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=\ngithub.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 h1:epCh84lMvA70Z7CTTCmYQn2CKbY8j86K7/FAIr141uY=\ngithub.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7/go.mod h1:q4W45IWZaF22tdD+VEXcAWRA037jwmWEB5VWYORlTpc=\ngithub.com/tendermint/go-amino v0.16.0 h1:GyhmgQKvqF82e2oZeuMSp9JTN0N09emoSZlb2lyGa2E=\ngithub.com/tendermint/go-amino v0.16.0/go.mod h1:TQU0M1i/ImAo+tYpZi73AU3V/dKeCoMC9Sphe2ZwGME=\ngithub.com/tidwall/btree v1.7.0 h1:L1fkJH/AuEh5zBnnBbmTwQ5Lt+bRJ5A8EWecslvo9iI=\ngithub.com/tidwall/btree v1.7.0/go.mod h1:twD9XRA5jj9VUQGELzDO4HPQTNJsoWWfYEL+EUQ2cKY=\ngithub.com/tidwall/gjson v1.12.1/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=\ngithub.com/tidwall/gjson v1.14.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=\ngithub.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=\ngithub.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM=\ngithub.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=\ngithub.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA=\ngithub.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=\ngithub.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs=\ngithub.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=\ngithub.com/tidwall/sjson v1.2.4/go.mod h1:098SZ494YoMWPmMO6ct4dcFnqxwj9r/gF0Etp19pSNM=\ngithub.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY=\ngithub.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28=\ngithub.com/tinylib/msgp v1.0.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE=\ngithub.com/tklauser/go-sysconf v0.3.5/go.mod h1:MkWzOF4RMCshBAMXuhXJs64Rte09mITnppBXY/rYEFI=\ngithub.com/tklauser/go-sysconf v0.3.10 h1:IJ1AZGZRWbY8T5Vfk04D9WOA5WSejdflXxP03OUqALw=\ngithub.com/tklauser/go-sysconf v0.3.10/go.mod h1:C8XykCvCb+Gn0oNCWPIlcb0RuglQTYaQ2hGm7jmxEFk=\ngithub.com/tklauser/numcpus v0.2.2/go.mod h1:x3qojaO3uyYt0i56EW/VUYs7uBvdl2fkfZFu0T9wgjM=\ngithub.com/tklauser/numcpus v0.4.0 h1:E53Dm1HjH1/R2/aoCtXtPgzmElmn51aOkhCFSuZq//o=\ngithub.com/tklauser/numcpus v0.4.0/go.mod h1:1+UI3pD8NW14VMwdgJNJ1ESk2UnwhAnz5hMwiKKqXCQ=\ngithub.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=\ngithub.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM=\ngithub.com/tyler-smith/go-bip39 v1.0.1-0.20181017060643-dbb3b84ba2ef/go.mod h1:sJ5fKU0s6JVwZjjcUEX2zFOnvq0ASQ2K9Zr6cf67kNs=\ngithub.com/tyler-smith/go-bip39 v1.0.2/go.mod h1:sJ5fKU0s6JVwZjjcUEX2zFOnvq0ASQ2K9Zr6cf67kNs=\ngithub.com/tyler-smith/go-bip39 v1.1.0 h1:5eUemwrMargf3BSLRRCalXT93Ns6pQJIjYQN2nyfOP8=\ngithub.com/tyler-smith/go-bip39 v1.1.0/go.mod h1:gUYDtqQw1JS3ZJ8UWVcGTGqqr6YIN3CWg+kkNaLt55U=\ngithub.com/ugorji/go v1.1.7 h1:/68gy2h+1mWMrwZFeD1kQialdSzAb432dtpeJ42ovdo=\ngithub.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw=\ngithub.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0=\ngithub.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY=\ngithub.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU=\ngithub.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg=\ngithub.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=\ngithub.com/ulikunitz/xz v0.5.11 h1:kpFauv27b6ynzBNT/Xy+1k+fK4WswhN/6PN5WhFAGw8=\ngithub.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=\ngithub.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA=\ngithub.com/urfave/cli v1.22.1 h1:+mkCCcOFKPnCmVYVcURKps1Xe+3zP90gSYGNfRkjoIY=\ngithub.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=\ngithub.com/urfave/cli/v2 v2.3.0/go.mod h1:LJmUH05zAU44vOAcrfzZQKsZbVcdbOG8rtL3/XcUArI=\ngithub.com/urfave/cli/v2 v2.10.2 h1:x3p8awjp/2arX+Nl/G2040AZpOCHS/eMJJ1/a+mye4Y=\ngithub.com/urfave/cli/v2 v2.10.2/go.mod h1:f8iq5LtQ/bLxafbdBSLPPNsgaW0l/2fYYEHhAyPlwvo=\ngithub.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=\ngithub.com/valyala/fasttemplate v1.0.1/go.mod h1:UQGH1tvbgY+Nz5t2n7tXsz52dQxojPUpymEIMZ47gx8=\ngithub.com/valyala/fasttemplate v1.2.1/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ=\ngithub.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc=\ngithub.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds=\ngithub.com/willf/bitset v1.1.3/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4=\ngithub.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=\ngithub.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo=\ngithub.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=\ngithub.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0=\ngithub.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ=\ngithub.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74=\ngithub.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y=\ngithub.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=\ngithub.com/xlab/treeprint v0.0.0-20180616005107-d6fb6747feb6/go.mod h1:ce1O1j6UtZfjr22oyGxGLbauSBp2YVXpARAosm7dHBg=\ngithub.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q=\ngithub.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 h1:bAn7/zixMGCfxrRTfdpNzjtPYqr8smhKouy9mxVdGPU=\ngithub.com/xrash/smetrics v0.0.0-20201216005158-039620a65673/go.mod h1:N3UwUGtsrSj3ccvlPHLoLsHnpR27oXr4ZE984MbSER8=\ngithub.com/ybbus/jsonrpc v2.1.2+incompatible/go.mod h1:XJrh1eMSzdIYFbM08flv0wp5G35eRniyeGut1z+LSiE=\ngithub.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=\ngithub.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=\ngithub.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=\ngithub.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=\ngithub.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=\ngithub.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=\ngithub.com/zondax/hid v0.9.0 h1:eiT3P6vNxAEVxXMw66eZUAAnU2zD33JBkfG/EnfAKl8=\ngithub.com/zondax/hid v0.9.0/go.mod h1:l5wttcP0jwtdLjqjMMWFVEE7d1zO0jvSPA9OPZxWpEM=\ngithub.com/zondax/ledger-go v0.14.3 h1:wEpJt2CEcBJ428md/5MgSLsXLBos98sBOyxNmCjfUCw=\ngithub.com/zondax/ledger-go v0.14.3/go.mod h1:IKKaoxupuB43g4NxeQmbLXv7T9AlQyie1UpHb342ycI=\ngo.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=\ngo.etcd.io/bbolt v1.4.0-alpha.0.0.20240404170359-43604f3112c5 h1:qxen9oVGzDdIRP6ejyAJc760RwW4SnVDiTYTzwnXuxo=\ngo.etcd.io/bbolt v1.4.0-alpha.0.0.20240404170359-43604f3112c5/go.mod h1:eW0HG9/oHQhvRCvb1/pIXW4cOvtDqeQK+XSi3TnwaXY=\ngo.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg=\ngo.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=\ngo.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=\ngo.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=\ngo.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=\ngo.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=\ngo.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=\ngo.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=\ngo.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk=\ngo.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E=\ngo.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0=\ngo.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo=\ngo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg=\ngo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0=\ngo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk=\ngo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw=\ngo.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U=\ngo.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg=\ngo.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M=\ngo.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8=\ngo.opentelemetry.io/otel/sdk v1.32.0 h1:RNxepc9vK59A8XsgZQouW8ue8Gkb4jpWtJm9ge5lEG4=\ngo.opentelemetry.io/otel/sdk v1.32.0/go.mod h1:LqgegDBjKMmb2GC6/PrTnteJG39I8/vJCAP9LlJXEjU=\ngo.opentelemetry.io/otel/sdk/metric v1.32.0 h1:rZvFnvmvawYb0alrYkjraqJq0Z4ZUJAiyYCU9snn1CU=\ngo.opentelemetry.io/otel/sdk/metric v1.32.0/go.mod h1:PWeZlq0zt9YkYAp3gjKZ0eicRYvOh1Gd+X99x6GHpCQ=\ngo.opentelemetry.io/otel/trace v1.32.0 h1:WIC9mYrXf8TmY/EXuULKc8hR17vE+Hjv2cssQDe03fM=\ngo.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L+V8e9a7YvhT8=\ngo.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=\ngo.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=\ngo.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=\ngo.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ=\ngo.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=\ngo.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A=\ngo.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0=\ngo.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4=\ngo.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=\ngo.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=\ngo.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=\ngo.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA=\ngo.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=\ngo.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=\ngo.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM=\ngo.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI=\ngolang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=\ngolang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=\ngolang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=\ngolang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=\ngolang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=\ngolang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=\ngolang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=\ngolang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=\ngolang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=\ngolang.org/x/crypto v0.0.0-20190909091759-094676da4a83/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=\ngolang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=\ngolang.org/x/crypto v0.0.0-20200115085410-6d4e4cb37c7d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=\ngolang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=\ngolang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=\ngolang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=\ngolang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=\ngolang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=\ngolang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=\ngolang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=\ngolang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=\ngolang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=\ngolang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=\ngolang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M=\ngolang.org/x/crypto v0.33.0 h1:IOBPskki6Lysi0lo9qQvbxiQ+FvsCC/YWOecCHAixus=\ngolang.org/x/crypto v0.33.0/go.mod h1:bVdXmD7IV/4GdElGPozy6U7lWdRXA4qyRVGJV57uQ5M=\ngolang.org/x/exp v0.0.0-20240404231335-c0f41cb1a7a0 h1:985EYyeCOxTpcgOTJpflJUwOeEz0CQOdPt73OzpE9F8=\ngolang.org/x/exp v0.0.0-20240404231335-c0f41cb1a7a0/go.mod h1:/lliqkxwWAhPjf5oSOIJup2XcqJaw8RGS6k3TGEc7GI=\ngolang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs=\ngolang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=\ngolang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=\ngolang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=\ngolang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=\ngolang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=\ngolang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=\ngolang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=\ngolang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs=\ngolang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=\ngolang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=\ngolang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=\ngolang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=\ngolang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc=\ngolang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=\ngolang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=\ngolang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=\ngolang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=\ngolang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=\ngolang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=\ngolang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=\ngolang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=\ngolang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=\ngolang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=\ngolang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=\ngolang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8=\ngolang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=\ngolang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=\ngolang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=\ngolang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=\ngolang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=\ngolang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=\ngolang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=\ngolang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=\ngolang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200421231249-e086a090c8fd/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=\ngolang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=\ngolang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=\ngolang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=\ngolang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=\ngolang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=\ngolang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=\ngolang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=\ngolang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=\ngolang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=\ngolang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=\ngolang.org/x/net v0.0.0-20210220033124-5f55cee0dc0d/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=\ngolang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=\ngolang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc=\ngolang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=\ngolang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=\ngolang.org/x/net v0.0.0-20210610132358-84b48f89b13b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=\ngolang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=\ngolang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=\ngolang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=\ngolang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=\ngolang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=\ngolang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=\ngolang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=\ngolang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=\ngolang.org/x/net v0.0.0-20220617184016-355a448f1bc9/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=\ngolang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=\ngolang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=\ngolang.org/x/net v0.0.0-20220909164309-bea034e7d591/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=\ngolang.org/x/net v0.0.0-20221014081412-f15817d10f9b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=\ngolang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco=\ngolang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=\ngolang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=\ngolang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=\ngolang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=\ngolang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8=\ngolang.org/x/net v0.35.0 h1:T5GQRQb2y08kTAByq9L4/bz8cipCdA8FbRTXewonqY8=\ngolang.org/x/net v0.35.0/go.mod h1:EglIi67kWsHKlRzzVMUD93VMSWGFOMSZgxFjparz1Qk=\ngolang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=\ngolang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=\ngolang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=\ngolang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=\ngolang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=\ngolang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=\ngolang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=\ngolang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=\ngolang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=\ngolang.org/x/oauth2 v0.0.0-20220608161450-d0670ef3b1eb/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE=\ngolang.org/x/oauth2 v0.0.0-20220622183110-fd043fe589d2/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE=\ngolang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=\ngolang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=\ngolang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=\ngolang.org/x/oauth2 v0.1.0/go.mod h1:G9FE4dLTsbXUu90h/Pf85g4w1D+SSAgR+q46nJZ8M4A=\ngolang.org/x/oauth2 v0.24.0 h1:KTBBxWqUa0ykRPLtV69rRto9TLXcqYkeswu48x/gvNE=\ngolang.org/x/oauth2 v0.24.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI=\ngolang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=\ngolang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=\ngolang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=\ngolang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=\ngolang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=\ngolang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=\ngolang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=\ngolang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200107162124-548cf772de50/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200826173525-f9321e4c35a6/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210324051608-47abb6519492/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210420205809-ac73e9fd8988/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=\ngolang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210819135213-f52c844e1c1c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20211210111614-af8b64212486/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220315194320-039c03cc5b86/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220328115105-d36c6a25d886/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220502124256-b6088ccd6cba/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.0.0-20221010170243-090e33056c14/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=\ngolang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=\ngolang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=\ngolang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=\ngolang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=\ngolang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=\ngolang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE=\ngolang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=\ngolang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=\ngolang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=\ngolang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=\ngolang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=\ngolang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=\ngolang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=\ngolang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=\ngolang.org/x/term v0.19.0/go.mod h1:2CuTdWZ7KHSQwUzKva0cbMg6q2DMI3Mmxp+gKJbskEk=\ngolang.org/x/term v0.29.0 h1:L6pJp37ocefwRRtYPKSWOWzOtWSxVajvz2ldH/xi3iU=\ngolang.org/x/term v0.29.0/go.mod h1:6bl4lRlvVuDgSf3179VpIxBF0o10JUpXWOnI7nErv7s=\ngolang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=\ngolang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=\ngolang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=\ngolang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=\ngolang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=\ngolang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=\ngolang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=\ngolang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=\ngolang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=\ngolang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=\ngolang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=\ngolang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=\ngolang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=\ngolang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=\ngolang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=\ngolang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=\ngolang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=\ngolang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=\ngolang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=\ngolang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=\ngolang.org/x/time v0.0.0-20201208040808-7e3f01d25324/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=\ngolang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=\ngolang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk=\ngolang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=\ngolang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20190206041539-40960b6deb8e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=\ngolang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=\ngolang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=\ngolang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=\ngolang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=\ngolang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=\ngolang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=\ngolang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=\ngolang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=\ngolang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=\ngolang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=\ngolang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=\ngolang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200108203644-89082a384178/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=\ngolang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=\ngolang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=\ngolang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8=\ngolang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=\ngolang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=\ngolang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=\ngolang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=\ngolang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=\ngolang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=\ngolang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=\ngolang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=\ngolang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE=\ngolang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=\ngolang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=\ngolang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=\ngolang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=\ngolang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=\ngolang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0=\ngolang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=\ngolang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=\ngolang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=\ngolang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=\ngolang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=\ngolang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=\ngolang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=\ngolang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=\ngolang.org/x/tools v0.20.0/go.mod h1:WvitBU7JJf6A4jOdg4S1tviW9bhUxkgeCui/0JHctQg=\ngolang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24=\ngolang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ=\ngolang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=\ngolang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=\ngolang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=\ngolang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=\ngolang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=\ngolang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=\ngolang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=\ngolang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=\ngolang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU=\ngolang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90=\ngonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo=\ngonum.org/v1/gonum v0.0.0-20181121035319-3f7ecaa7e8ca/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo=\ngonum.org/v1/gonum v0.6.0/go.mod h1:9mxDZsDKxgMAuccQkewq682L+0eCu4dCN2yonUJTCLU=\ngonum.org/v1/netlib v0.0.0-20181029234149-ec6d1f5cefe6/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw=\ngonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw=\ngonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod h1:Wt8AAjI+ypCyYX3nZBvf6cAIx93T+c/OS2HFAYskSZc=\ngoogle.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk=\ngoogle.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE=\ngoogle.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M=\ngoogle.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg=\ngoogle.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg=\ngoogle.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI=\ngoogle.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI=\ngoogle.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI=\ngoogle.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE=\ngoogle.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE=\ngoogle.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE=\ngoogle.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE=\ngoogle.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE=\ngoogle.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE=\ngoogle.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE=\ngoogle.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM=\ngoogle.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc=\ngoogle.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg=\ngoogle.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE=\ngoogle.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8=\ngoogle.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU=\ngoogle.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94=\ngoogle.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo=\ngoogle.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4=\ngoogle.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw=\ngoogle.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU=\ngoogle.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k=\ngoogle.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=\ngoogle.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=\ngoogle.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI=\ngoogle.golang.org/api v0.61.0/go.mod h1:xQRti5UdCmoCEqFxcz93fTl338AVqDgyaDRuOZ3hg9I=\ngoogle.golang.org/api v0.63.0/go.mod h1:gs4ij2ffTRXwuzzgJl/56BdwJaA194ijkfn++9tDuPo=\ngoogle.golang.org/api v0.67.0/go.mod h1:ShHKP8E60yPsKNw/w8w+VYaj9H6buA5UqDp8dhbQZ6g=\ngoogle.golang.org/api v0.70.0/go.mod h1:Bs4ZM2HGifEvXwd50TtW70ovgJffJYw2oRCOFU/SkfA=\ngoogle.golang.org/api v0.71.0/go.mod h1:4PyU6e6JogV1f9eA4voyrTY2batOLdgZ5qZ5HOCc4j8=\ngoogle.golang.org/api v0.74.0/go.mod h1:ZpfMZOVRMywNyvJFeqL9HRWBgAuRfSjJFpe9QtRRyDs=\ngoogle.golang.org/api v0.75.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA=\ngoogle.golang.org/api v0.77.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA=\ngoogle.golang.org/api v0.78.0/go.mod h1:1Sg78yoMLOhlQTeF+ARBoytAcH1NNyyl390YMy6rKmw=\ngoogle.golang.org/api v0.80.0/go.mod h1:xY3nI94gbvBrE0J6NHXhxOmW97HG7Khjkku6AFB3Hyg=\ngoogle.golang.org/api v0.84.0/go.mod h1:NTsGnUFJMYROtiquksZHBWtHfeMC7iYthki7Eq3pa8o=\ngoogle.golang.org/api v0.85.0/go.mod h1:AqZf8Ep9uZ2pyTvgL+x0D3Zt0eoT9b5E8fmzfu6FO2g=\ngoogle.golang.org/api v0.90.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw=\ngoogle.golang.org/api v0.93.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw=\ngoogle.golang.org/api v0.95.0/go.mod h1:eADj+UBuxkh5zlrSntJghuNeg8HwQ1w5lTKkuqaETEI=\ngoogle.golang.org/api v0.96.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s=\ngoogle.golang.org/api v0.97.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s=\ngoogle.golang.org/api v0.98.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s=\ngoogle.golang.org/api v0.100.0/go.mod h1:ZE3Z2+ZOr87Rx7dqFsdRQkRBk36kDtp/h+QpHbB7a70=\ngoogle.golang.org/api v0.186.0 h1:n2OPp+PPXX0Axh4GuSsL5QL8xQCTb2oDwyzPnQvqUug=\ngoogle.golang.org/api v0.186.0/go.mod h1:hvRbBmgoje49RV3xqVXrmP6w93n6ehGgIVPYrGtBFFc=\ngoogle.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=\ngoogle.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=\ngoogle.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=\ngoogle.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=\ngoogle.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0=\ngoogle.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=\ngoogle.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=\ngoogle.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=\ngoogle.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=\ngoogle.golang.org/genproto v0.0.0-20180831171423-11092d34479b/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=\ngoogle.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=\ngoogle.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=\ngoogle.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=\ngoogle.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=\ngoogle.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s=\ngoogle.golang.org/genproto v0.0.0-20190716160619-c506a9f90610/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=\ngoogle.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=\ngoogle.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=\ngoogle.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8=\ngoogle.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20200108215221-bd8f9a0ef82f/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=\ngoogle.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA=\ngoogle.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=\ngoogle.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U=\ngoogle.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=\ngoogle.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA=\ngoogle.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20210126160654-44e461bb6506/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=\ngoogle.golang.org/genproto v0.0.0-20210329143202-679c6ae281ee/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A=\ngoogle.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A=\ngoogle.golang.org/genproto v0.0.0-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A=\ngoogle.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0=\ngoogle.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0=\ngoogle.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0=\ngoogle.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24=\ngoogle.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k=\ngoogle.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k=\ngoogle.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=\ngoogle.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=\ngoogle.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w=\ngoogle.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=\ngoogle.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=\ngoogle.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=\ngoogle.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=\ngoogle.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=\ngoogle.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20211118181313-81c1377c94b1/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20211206160659-862468c7d6e0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20211221195035-429b39de9b1c/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20220126215142-9970aeb2e350/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20220207164111-0872dc986b00/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=\ngoogle.golang.org/genproto v0.0.0-20220218161850-94dd64e39d7c/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI=\ngoogle.golang.org/genproto v0.0.0-20220222213610-43724f9ea8cf/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI=\ngoogle.golang.org/genproto v0.0.0-20220304144024-325a89244dc8/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI=\ngoogle.golang.org/genproto v0.0.0-20220310185008-1973136f34c6/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI=\ngoogle.golang.org/genproto v0.0.0-20220314164441-57ef72a4c106/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E=\ngoogle.golang.org/genproto v0.0.0-20220324131243-acbaeb5b85eb/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E=\ngoogle.golang.org/genproto v0.0.0-20220407144326-9054f6ed7bac/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo=\ngoogle.golang.org/genproto v0.0.0-20220413183235-5e96e2839df9/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo=\ngoogle.golang.org/genproto v0.0.0-20220414192740-2d67ff6cf2b4/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo=\ngoogle.golang.org/genproto v0.0.0-20220421151946-72621c1f0bd3/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo=\ngoogle.golang.org/genproto v0.0.0-20220429170224-98d788798c3e/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo=\ngoogle.golang.org/genproto v0.0.0-20220502173005-c8bf987b8c21/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=\ngoogle.golang.org/genproto v0.0.0-20220505152158-f39f71e6c8f3/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=\ngoogle.golang.org/genproto v0.0.0-20220518221133-4f43b3371335/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=\ngoogle.golang.org/genproto v0.0.0-20220523171625-347a074981d8/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=\ngoogle.golang.org/genproto v0.0.0-20220608133413-ed9918b62aac/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=\ngoogle.golang.org/genproto v0.0.0-20220616135557-88e70c0c3a90/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=\ngoogle.golang.org/genproto v0.0.0-20220617124728-180714bec0ad/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=\ngoogle.golang.org/genproto v0.0.0-20220624142145-8cd45d7dbd1f/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=\ngoogle.golang.org/genproto v0.0.0-20220628213854-d9e0b6570c03/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=\ngoogle.golang.org/genproto v0.0.0-20220722212130-b98a9ff5e252/go.mod h1:GkXuJDJ6aQ7lnJcRF+SJVgFdQhypqgl3LB1C9vabdRE=\ngoogle.golang.org/genproto v0.0.0-20220801145646-83ce21fca29f/go.mod h1:iHe1svFLAZg9VWz891+QbRMwUv9O/1Ww+/mngYeThbc=\ngoogle.golang.org/genproto v0.0.0-20220815135757-37a418bb8959/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=\ngoogle.golang.org/genproto v0.0.0-20220817144833-d7fd3f11b9b1/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=\ngoogle.golang.org/genproto v0.0.0-20220822174746-9e6da59bd2fc/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=\ngoogle.golang.org/genproto v0.0.0-20220829144015-23454907ede3/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=\ngoogle.golang.org/genproto v0.0.0-20220829175752-36a9c930ecbf/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=\ngoogle.golang.org/genproto v0.0.0-20220913154956-18f8339a66a5/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo=\ngoogle.golang.org/genproto v0.0.0-20220914142337-ca0e39ece12f/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo=\ngoogle.golang.org/genproto v0.0.0-20220915135415-7fd63a7952de/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo=\ngoogle.golang.org/genproto v0.0.0-20220916172020-2692e8806bfa/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo=\ngoogle.golang.org/genproto v0.0.0-20220919141832-68c03719ef51/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo=\ngoogle.golang.org/genproto v0.0.0-20220920201722-2b89144ce006/go.mod h1:ht8XFiar2npT/g4vkk7O0WYS1sHOHbdujxbEp7CJWbw=\ngoogle.golang.org/genproto v0.0.0-20220926165614-551eb538f295/go.mod h1:woMGP53BroOrRY3xTxlbr8Y3eB/nzAvvFM83q7kG2OI=\ngoogle.golang.org/genproto v0.0.0-20220926220553-6981cbe3cfce/go.mod h1:woMGP53BroOrRY3xTxlbr8Y3eB/nzAvvFM83q7kG2OI=\ngoogle.golang.org/genproto v0.0.0-20221010155953-15ba04fc1c0e/go.mod h1:3526vdqwhZAwq4wsRUaVG555sVgsNmIjRtO7t/JH29U=\ngoogle.golang.org/genproto v0.0.0-20221014173430-6e2ab493f96b/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM=\ngoogle.golang.org/genproto v0.0.0-20221014213838-99cd37c6964a/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM=\ngoogle.golang.org/genproto v0.0.0-20221025140454-527a21cfbd71/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s=\ngoogle.golang.org/genproto v0.0.0-20240701130421-f6361c86f094 h1:6whtk83KtD3FkGrVb2hFXuQ+ZMbCNdakARIn/aHMmG8=\ngoogle.golang.org/genproto v0.0.0-20240701130421-f6361c86f094/go.mod h1:Zs4wYw8z1zr6RNF4cwYb31mvN/EGaKAdQjNCF3DW6K4=\ngoogle.golang.org/genproto/googleapis/api v0.0.0-20241202173237-19429a94021a h1:OAiGFfOiA0v9MRYsSidp3ubZaBnteRUyn3xB2ZQ5G/E=\ngoogle.golang.org/genproto/googleapis/api v0.0.0-20241202173237-19429a94021a/go.mod h1:jehYqy3+AhJU9ve55aNOaSml7wUXjF9x6z2LcCfpAhY=\ngoogle.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a h1:hgh8P4EuoxpsuKMXX/To36nOFD7vixReXgn8lPGnt+o=\ngoogle.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a/go.mod h1:5uTbfoYQed2U9p3KIj2/Zzm02PYhndfdmML0qC3q3FU=\ngoogle.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=\ngoogle.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=\ngoogle.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM=\ngoogle.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=\ngoogle.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=\ngoogle.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=\ngoogle.golang.org/grpc v1.22.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=\ngoogle.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=\ngoogle.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=\ngoogle.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY=\ngoogle.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=\ngoogle.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=\ngoogle.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=\ngoogle.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60=\ngoogle.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk=\ngoogle.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak=\ngoogle.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak=\ngoogle.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak=\ngoogle.golang.org/grpc v1.32.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak=\ngoogle.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0=\ngoogle.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc=\ngoogle.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8=\ngoogle.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=\ngoogle.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=\ngoogle.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=\ngoogle.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM=\ngoogle.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM=\ngoogle.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM=\ngoogle.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE=\ngoogle.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE=\ngoogle.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34=\ngoogle.golang.org/grpc v1.40.1/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34=\ngoogle.golang.org/grpc v1.44.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU=\ngoogle.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ=\ngoogle.golang.org/grpc v1.46.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk=\ngoogle.golang.org/grpc v1.46.2/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk=\ngoogle.golang.org/grpc v1.47.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk=\ngoogle.golang.org/grpc v1.48.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk=\ngoogle.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI=\ngoogle.golang.org/grpc v1.50.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI=\ngoogle.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI=\ngoogle.golang.org/grpc v1.70.0 h1:pWFv03aZoHzlRKHWicjsZytKAiYCtNS0dHbXnIdq7jQ=\ngoogle.golang.org/grpc v1.70.0/go.mod h1:ofIJqVKDXx/JiXrwr2IG4/zwdH9txy3IlF40RmcJSQw=\ngoogle.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw=\ngoogle.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=\ngoogle.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=\ngoogle.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=\ngoogle.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=\ngoogle.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=\ngoogle.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=\ngoogle.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=\ngoogle.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=\ngoogle.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4=\ngoogle.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=\ngoogle.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=\ngoogle.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=\ngoogle.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=\ngoogle.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=\ngoogle.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=\ngoogle.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=\ngoogle.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=\ngopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=\ngopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=\ngopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=\ngopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=\ngopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=\ngopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=\ngopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=\ngopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=\ngopkg.in/cheggaaa/pb.v1 v1.0.27/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=\ngopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=\ngopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=\ngopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o=\ngopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=\ngopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=\ngopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce h1:+JknDZhAj8YMt7GC73Ei8pv4MzjDUNPHgQWJdtMAaDU=\ngopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce/go.mod h1:5AcXVHNjg+BDxry382+8OKon8SEWiKktQR07RKPsv1c=\ngopkg.in/olebedev/go-duktape.v3 v3.0.0-20200619000410-60c24ae608a6/go.mod h1:uAJfkITjFhyEEuUfm7bsmCZRbW5WRq8s9EY8HZ6hCns=\ngopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=\ngopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=\ngopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=\ngopkg.in/urfave/cli.v1 v1.20.0/go.mod h1:vuBzUtMdQeixQj8LVd+/98pzhxNGQoyuPBlsXHOQNO0=\ngopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=\ngopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74=\ngopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=\ngopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=\ngopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=\ngopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=\ngopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=\ngopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=\ngopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=\ngotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw=\ngotest.tools/v3 v3.5.1 h1:EENdUnS3pdur5nybKYIh2Vfgc8IUNBjxDPSjtiJcOzU=\ngotest.tools/v3 v3.5.1/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU=\nhonnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=\nhonnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=\nhonnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=\nhonnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=\nhonnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=\nhonnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=\nhonnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=\nhonnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=\nhonnef.co/go/tools v0.1.3/go.mod h1:NgwopIslSNH47DimFoV78dnkksY2EFtX0ajyb3K/las=\nmods.irisnet.org/api v0.0.0-20241121030837-903540d1123f h1:tJoTbTqFBZUnCLL+juHEuQLNNdftSXwSlqGoKa8OOxw=\nmods.irisnet.org/api v0.0.0-20241121030837-903540d1123f/go.mod h1:TpMaRRYSpqsXdeX4gDVFRj9ggedQ60Zcjs4iE2DIhsc=\nmods.irisnet.org/modules/coinswap v1.0.0 h1:8eyyA/CkH6usL03i2FZ0iujwgRSzAKcAB3gr7KoZvKY=\nmods.irisnet.org/modules/coinswap v1.0.0/go.mod h1:nv52g5ZDWv/C1ydtxLygP2wSYz6M4OuF6BygKy7RqGA=\nmods.irisnet.org/modules/farm v1.0.0 h1:8Zr2j9y0nHo0hZsoPknxQE1u9lwl+nwy7u/h1K3GAJg=\nmods.irisnet.org/modules/farm v1.0.0/go.mod h1:yYrnhmxDCnvI45u1cpeRZ2GPJUmRK+8KFXDtOJGpENE=\nmods.irisnet.org/modules/htlc v1.0.0 h1:d978csLEjesCnAKChoOPhA+G3Gyiu+bAv867czw20YI=\nmods.irisnet.org/modules/htlc v1.0.0/go.mod h1:2pWkSnxVKCzB3WH+q47rKffY4Plma+mRTGSWd4jfbp8=\nmods.irisnet.org/modules/mt v1.0.0 h1:3W0LCvw8oDAcVkaUEzbRi5fiMMVKGSIYrmzc9wcjBwQ=\nmods.irisnet.org/modules/mt v1.0.0/go.mod h1:Dw1zm350HiRuNjrnwZnV4XGB8PNf1SXmjGJA5Xslg0Q=\nmods.irisnet.org/modules/nft v1.0.0 h1:QuA7NayPLlor6Mt2BbuDP1tx0Pmq1TJCIfACmsr9f7U=\nmods.irisnet.org/modules/nft v1.0.0/go.mod h1:VjySqJfECBW8cApFB8W66Yk6tMR2oJEc7FTDaHfeg8I=\nmods.irisnet.org/modules/oracle v1.0.0 h1:mKV218jfv3CHt0qWc0da3tLXW4+Fn/NuSfKYekyyorI=\nmods.irisnet.org/modules/oracle v1.0.0/go.mod h1:XAGzG55xpV01PwvryVPeaHtARZIqEUJcMv/vxaVcVC0=\nmods.irisnet.org/modules/random v1.0.0 h1:lRMgVHPLPnTuaEKi3ZnThrFwOLTA+NR4jrcd7AyYSs8=\nmods.irisnet.org/modules/random v1.0.0/go.mod h1:1ele5fpZ/rFMbwu1LTz2MwDg3sJDYcCtDW5SDfYRpTg=\nmods.irisnet.org/modules/record v1.0.0 h1:cISmtC1L8/ohMpKDacMCZG49/pTt155+TnvdaGUO2uA=\nmods.irisnet.org/modules/record v1.0.0/go.mod h1:n8gRooDvJ5B44EJRZ+UlDz0GcXQeNwjH2tjpnVx7nd8=\nmods.irisnet.org/modules/service v1.0.0 h1:hwa5xXWpAhpv18a28T/RjISgwljOLu5UyTN4xDfeWFg=\nmods.irisnet.org/modules/service v1.0.0/go.mod h1:B1nKRNYn1VLqpvNbmbDSYagqL56sj0MIceXJi/DKg6s=\nmods.irisnet.org/modules/token v1.0.0 h1:PhI5pC2ipMkG1eyH/Ll+9ZFhXsKS9yt2cAXgwy5BDmE=\nmods.irisnet.org/modules/token v1.0.0/go.mod h1:fHJzeEBPhE9vaa4aye90+WFtHjZyGRvkWRpJeBSc9/k=\nmods.irisnet.org/simapp v0.0.0-20241125071105-d76ae25d05d2 h1:9AGZYpMjpk1gItviL31vsehmen119HtcuOKwv8WWpZo=\nmods.irisnet.org/simapp v0.0.0-20241125071105-d76ae25d05d2/go.mod h1:t7FSQJkJOgXq1/LdhpBeOu7TS8hLQkAMMx9fL5w53PY=\nnhooyr.io/websocket v1.8.6 h1:s+C3xAMLwGmlI31Nyn/eAehUlZPwfYZu2JXM621Q5/k=\nnhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0=\npgregory.net/rapid v1.1.0 h1:CMa0sjHSru3puNx+J0MIAuiiEV4N0qj8/cMWGBBCsjw=\npgregory.net/rapid v1.1.0/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04=\nrsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=\nrsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=\nrsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=\nrsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA=\nrsc.io/tmplfunc v0.0.3/go.mod h1:AG3sTPzElb1Io3Yg4voV9AGZJuleGAwaVRxL9M49PhA=\nsigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=\nsigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=\nsigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=\nsourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=\n"
  },
  {
    "path": "modules/evm/eip1559.go",
    "content": "package evm\n\nimport (\n\t\"math/big\"\n\n\tsdkmath \"cosmossdk.io/math\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n)\n\nfunc (k *Keeper) burnBaseFee(ctx sdk.Context, gasUsed uint64, baseFee *big.Int) error {\n\tevmDenom := k.evmkeeper.GetParams(ctx).EvmDenom\n\tburntAmt := new(big.Int).Mul(baseFee, new(big.Int).SetUint64(gasUsed))\n\tburnCoin := sdk.NewCoin(evmDenom, sdkmath.NewIntFromBigInt(burntAmt))\n\tif err := k.bankKeeper.BurnCoins(ctx, authtypes.FeeCollectorName, sdk.NewCoins(burnCoin)); err != nil {\n\t\treturn err\n\t}\n\tctx.EventManager().EmitEvent(sdk.NewEvent(\n\t\tEventEIP1559Burnt,\n\t\tsdk.NewAttribute(AttributeKeyBurntFee, burnCoin.String()),\n\t\tsdk.NewAttribute(AttributeKeyBaseFee, baseFee.String()),\n\t))\n\treturn nil\n}\n"
  },
  {
    "path": "modules/evm/keeper.go",
    "content": "package evm\n\nimport (\n\t\"context\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"strconv\"\n\n\ttmbytes \"github.com/cometbft/cometbft/libs/bytes\"\n\ttmtypes \"github.com/cometbft/cometbft/types\"\n\n\terrorsmod \"cosmossdk.io/errors\"\n\t\"cosmossdk.io/math\"\n\t\"github.com/cosmos/cosmos-sdk/telemetry\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/hashicorp/go-metrics\"\n\n\tevmkeeper \"github.com/evmos/ethermint/x/evm/keeper\"\n\t\"github.com/evmos/ethermint/x/evm/types\"\n)\n\ntype Keeper struct {\n\tevmkeeper  *evmkeeper.Keeper\n\tbankKeeper types.BankKeeper\n}\n\nvar _ types.MsgServer = &Keeper{}\n\n// EthereumTx implements the gRPC MsgServer interface. It receives a transaction which is then\n// executed (i.e applied) against the go-ethereum EVM. The provided SDK Context is set to the Keeper\n// so that it can implements and call the StateDB methods without receiving it as a function\n// parameter.\nfunc (k *Keeper) EthereumTx(\n\tgoCtx context.Context,\n\tmsg *types.MsgEthereumTx,\n) (*types.MsgEthereumTxResponse, error) {\n\tctx := sdk.UnwrapSDKContext(goCtx)\n\n\tsender := msg.From\n\ttx := msg.AsTransaction()\n\ttxIndex := k.evmkeeper.GetTxIndexTransient(ctx)\n\n\tlabels := []metrics.Label{\n\t\ttelemetry.NewLabel(\"tx_type\", fmt.Sprintf(\"%d\", tx.Type())),\n\t}\n\tif tx.To() == nil {\n\t\tlabels = append(labels, telemetry.NewLabel(\"execution\", \"create\"))\n\t} else {\n\t\tlabels = append(labels, telemetry.NewLabel(\"execution\", \"call\"))\n\t}\n\n\tresponse, err := k.ApplyTransaction(ctx, tx, msg.FeePayer)\n\tif err != nil {\n\t\treturn nil, errorsmod.Wrap(err, \"failed to apply transaction\")\n\t}\n\n\tdefer func() {\n\t\ttelemetry.IncrCounterWithLabels(\n\t\t\t[]string{\"tx\", \"msg\", \"ethereum_tx\", \"total\"},\n\t\t\t1,\n\t\t\tlabels,\n\t\t)\n\n\t\tif response.GasUsed != 0 {\n\t\t\ttelemetry.IncrCounterWithLabels(\n\t\t\t\t[]string{\"tx\", \"msg\", \"ethereum_tx\", \"gas_used\", \"total\"},\n\t\t\t\tfloat32(response.GasUsed),\n\t\t\t\tlabels,\n\t\t\t)\n\n\t\t\t// Observe which users define a gas limit >> gas used. Note, that\n\t\t\t// gas_limit and gas_used are always > 0\n\t\t\tgasLimit := math.LegacyNewDec(int64(tx.Gas()))\n\t\t\tgasRatio, err := gasLimit.QuoInt64(int64(response.GasUsed)).Float64()\n\t\t\tif err == nil {\n\t\t\t\ttelemetry.SetGaugeWithLabels(\n\t\t\t\t\t[]string{\"tx\", \"msg\", \"ethereum_tx\", \"gas_limit\", \"per\", \"gas_used\"},\n\t\t\t\t\tfloat32(gasRatio),\n\t\t\t\t\tlabels,\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}()\n\n\tattrs := []sdk.Attribute{\n\t\tsdk.NewAttribute(sdk.AttributeKeyAmount, tx.Value().String()),\n\t\t// add event for ethereum transaction hash format\n\t\tsdk.NewAttribute(types.AttributeKeyEthereumTxHash, response.Hash),\n\t\t// add event for index of valid ethereum tx\n\t\tsdk.NewAttribute(types.AttributeKeyTxIndex, strconv.FormatUint(txIndex, 10)),\n\t\t// add event for eth tx gas used, we can't get it from cosmos tx result when it contains multiple eth tx msgs.\n\t\tsdk.NewAttribute(types.AttributeKeyTxGasUsed, strconv.FormatUint(response.GasUsed, 10)),\n\t}\n\n\tif len(ctx.TxBytes()) > 0 {\n\t\t// add event for tendermint transaction hash format\n\t\thash := tmbytes.HexBytes(tmtypes.Tx(ctx.TxBytes()).Hash())\n\t\tattrs = append(attrs, sdk.NewAttribute(types.AttributeKeyTxHash, hash.String()))\n\t}\n\n\tif to := tx.To(); to != nil {\n\t\tattrs = append(attrs, sdk.NewAttribute(types.AttributeKeyRecipient, to.Hex()))\n\t}\n\n\tif response.Failed() {\n\t\tattrs = append(\n\t\t\tattrs,\n\t\t\tsdk.NewAttribute(types.AttributeKeyEthereumTxFailed, response.VmError),\n\t\t)\n\t}\n\n\ttxLogAttrs := make([]sdk.Attribute, len(response.Logs))\n\tfor i, log := range response.Logs {\n\t\tvalue, err := json.Marshal(log)\n\t\tif err != nil {\n\t\t\treturn nil, errorsmod.Wrap(err, \"failed to encode log\")\n\t\t}\n\t\ttxLogAttrs[i] = sdk.NewAttribute(types.AttributeKeyTxLog, string(value))\n\t}\n\n\t// emit events\n\tctx.EventManager().EmitEvents(sdk.Events{\n\t\tsdk.NewEvent(\n\t\t\ttypes.EventTypeEthereumTx,\n\t\t\tattrs...,\n\t\t),\n\t\tsdk.NewEvent(\n\t\t\ttypes.EventTypeTxLog,\n\t\t\ttxLogAttrs...,\n\t\t),\n\t\tsdk.NewEvent(\n\t\t\tsdk.EventTypeMessage,\n\t\t\tsdk.NewAttribute(sdk.AttributeKeyModule, types.AttributeValueCategory),\n\t\t\tsdk.NewAttribute(sdk.AttributeKeySender, sender),\n\t\t\tsdk.NewAttribute(types.AttributeKeyTxType, fmt.Sprintf(\"%d\", tx.Type())),\n\t\t),\n\t})\n\n\treturn response, nil\n}\n\n// UpdateParams updates the parameters for the EVM module.\n//\n// It takes a context.Context object and a *types.MsgUpdateParams object as parameters.\n// The function returns a *types.MsgUpdateParamsResponse object and an error.\nfunc (k *Keeper) UpdateParams(\n\tgoCtx context.Context,\n\tmsg *types.MsgUpdateParams,\n) (*types.MsgUpdateParamsResponse, error) {\n\treturn k.evmkeeper.UpdateParams(goCtx, msg)\n}\n"
  },
  {
    "path": "modules/evm/moudle.go",
    "content": "package evm\n\nimport (\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\n\tethermint \"github.com/evmos/ethermint/x/evm\"\n\t\"github.com/evmos/ethermint/x/evm/keeper\"\n\t\"github.com/evmos/ethermint/x/evm/types\"\n)\n\nvar (\n\t_ module.AppModule = AppModule{}\n)\n\n// ____________________________________________________________________________\n\n// AppModule implements an application module for the evm module.\ntype AppModule struct {\n\tethermint.AppModule\n\tk  *Keeper\n\tss types.Subspace\n}\n\n// NewAppModule creates a new AppModule object\nfunc NewAppModule(\n\tk *keeper.Keeper,\n\tak types.AccountKeeper,\n\tbankKeeper types.BankKeeper,\n\tss types.Subspace,\n) AppModule {\n\treturn AppModule{\n\t\tAppModule: ethermint.NewAppModule(k, ak, ss),\n\t\tk:         &Keeper{k, bankKeeper},\n\t\tss:        ss,\n\t}\n}\n\n// RegisterServices registers a GRPC query service to respond to the\n// module-specific GRPC queries.\nfunc (am AppModule) RegisterServices(cfg module.Configurator) {\n\ttypes.RegisterMsgServer(cfg.MsgServer(), am.k)\n\ttypes.RegisterQueryServer(cfg.QueryServer(), am.k.evmkeeper)\n\n\tm := keeper.NewMigrator(*am.k.evmkeeper, am.ss)\n\n\tif err := cfg.RegisterMigration(types.ModuleName, 3, m.Migrate3to4); err != nil {\n\t\tpanic(err)\n\t}\n\n\tif err := cfg.RegisterMigration(types.ModuleName, 4, m.Migrate4to5); err != nil {\n\t\tpanic(err)\n\t}\n}\n"
  },
  {
    "path": "modules/evm/state_transition.go",
    "content": "package evm\n\nimport (\n\t\"math/big\"\n\n\terrortypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n\n\tsdkmath \"cosmossdk.io/math\"\n\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\n\terrorsmod \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/evmos/ethermint/x/evm/types\"\n\n\t\"github.com/ethereum/go-ethereum/common\"\n\t\"github.com/ethereum/go-ethereum/core\"\n\tethtypes \"github.com/ethereum/go-ethereum/core/types\"\n\t\"github.com/ethereum/go-ethereum/crypto\"\n)\n\n// ApplyTransaction runs and attempts to perform a state transition with the given transaction (i.e Message), that will\n// only be persisted (committed) to the underlying KVStore if the transaction does not fail.\n//\n// # Gas tracking\n//\n// Ethereum consumes gas according to the EVM opcodes instead of general reads and writes to store. Because of this, the\n// state transition needs to ignore the SDK gas consumption mechanism defined by the GasKVStore and instead consume the\n// amount of gas used by the VM execution. The amount of gas used is tracked by the EVM and returned in the execution\n// result.\n//\n// Prior to the execution, the starting tx gas meter is saved and replaced with an infinite gas meter in a new context\n// in order to ignore the SDK gas consumption config values (read, write, has, delete).\n// After the execution, the gas used from the message execution will be added to the starting gas consumed, taking into\n// consideration the amount of gas returned. Finally, the context is updated with the EVM gas consumed value prior to\n// returning.\n//\n// For relevant discussion see: https://github.com/cosmos/cosmos-sdk/discussions/9072\nfunc (k *Keeper) ApplyTransaction(ctx sdk.Context, tx *ethtypes.Transaction, feePayerAddr string) (*types.MsgEthereumTxResponse, error) {\n\tvar (\n\t\tbloom        *big.Int\n\t\tbloomReceipt ethtypes.Bloom\n\t)\n\n\tcfg, err := k.evmkeeper.EVMConfig(ctx, sdk.ConsAddress(ctx.BlockHeader().ProposerAddress), k.evmkeeper.ChainID())\n\tif err != nil {\n\t\treturn nil, errorsmod.Wrap(err, \"failed to load evm config\")\n\t}\n\ttxConfig := k.evmkeeper.TxConfig(ctx, tx.Hash())\n\n\t// get the signer according to the chain rules from the config and block height\n\tsigner := ethtypes.MakeSigner(cfg.ChainConfig, big.NewInt(ctx.BlockHeight()))\n\tmsg, err := tx.AsMessage(signer, cfg.BaseFee)\n\tif err != nil {\n\t\treturn nil, errorsmod.Wrap(err, \"failed to return ethereum transaction as core message\")\n\t}\n\n\t// snapshot to contain the tx processing and post processing in same scope\n\tvar commit func()\n\ttmpCtx := ctx\n\tif k.evmkeeper.Hooks() != nil {\n\t\t// Create a cache context to revert state when tx hooks fails,\n\t\t// the cache context is only committed when both tx and hooks executed successfully.\n\t\t// Didn't use `Snapshot` because the context stack has exponential complexity on certain operations,\n\t\t// thus restricted to be used only inside `ApplyMessage`.\n\t\ttmpCtx, commit = ctx.CacheContext()\n\t}\n\n\t// pass true to commit the StateDB\n\tres, err := k.evmkeeper.ApplyMessageWithConfig(tmpCtx, msg, nil, true, cfg, txConfig)\n\tif err != nil {\n\t\treturn nil, errorsmod.Wrap(err, \"failed to apply ethereum core message\")\n\t}\n\n\tlogs := types.LogsToEthereum(res.Logs)\n\n\t// Compute block bloom filter\n\tif len(logs) > 0 {\n\t\tbloom = k.evmkeeper.GetBlockBloomTransient(ctx)\n\t\tbloom.Or(bloom, big.NewInt(0).SetBytes(ethtypes.LogsBloom(logs)))\n\t\tbloomReceipt = ethtypes.BytesToBloom(bloom.Bytes())\n\t}\n\n\tcumulativeGasUsed := res.GasUsed\n\tif ctx.BlockGasMeter() != nil {\n\t\tlimit := ctx.BlockGasMeter().Limit()\n\t\tcumulativeGasUsed += ctx.BlockGasMeter().GasConsumed()\n\t\tif cumulativeGasUsed > limit {\n\t\t\tcumulativeGasUsed = limit\n\t\t}\n\t}\n\n\tvar contractAddr common.Address\n\tif msg.To() == nil {\n\t\tcontractAddr = crypto.CreateAddress(msg.From(), msg.Nonce())\n\t}\n\n\treceipt := &ethtypes.Receipt{\n\t\tType:              tx.Type(),\n\t\tPostState:         nil, // TODO: intermediate state root\n\t\tCumulativeGasUsed: cumulativeGasUsed,\n\t\tBloom:             bloomReceipt,\n\t\tLogs:              logs,\n\t\tTxHash:            txConfig.TxHash,\n\t\tContractAddress:   contractAddr,\n\t\tGasUsed:           res.GasUsed,\n\t\tBlockHash:         txConfig.BlockHash,\n\t\tBlockNumber:       big.NewInt(ctx.BlockHeight()),\n\t\tTransactionIndex:  txConfig.TxIndex,\n\t}\n\n\tif !res.Failed() {\n\t\treceipt.Status = ethtypes.ReceiptStatusSuccessful\n\t\t// Only call hooks if tx executed successfully.\n\t\tif err = k.evmkeeper.PostTxProcessing(tmpCtx, msg, receipt); err != nil {\n\t\t\t// If hooks return error, revert the whole tx.\n\t\t\tres.VmError = types.ErrPostTxProcessing.Error()\n\t\t\tk.evmkeeper.Logger(ctx).Error(\"tx post processing failed\", \"error\", err)\n\n\t\t\t// If the tx failed in post processing hooks, we should clear the logs\n\t\t\tres.Logs = nil\n\t\t} else if commit != nil {\n\t\t\t// PostTxProcessing is successful, commit the tmpCtx\n\t\t\tcommit()\n\t\t\t// Since the post processing can alter the log, we need to update the result\n\t\t\tres.Logs = types.NewLogsFromEth(receipt.Logs)\n\t\t}\n\t}\n\tif feePayerAddr != \"\" {\n\t\t// refund gas in order to match the Ethereum gas consumption instead of the default SDK one.\n\t\tif err = k.RefundGas(ctx, msg, msg.Gas()-res.GasUsed, feePayerAddr, cfg.Params.EvmDenom); err != nil {\n\t\t\treturn nil, errorsmod.Wrapf(err, \"failed to refund gas leftover gas to sender %s\", msg.From())\n\t\t}\n\t} else {\n\t\t// refund gas in order to match the Ethereum gas consumption instead of the default SDK one.\n\t\tif err = k.evmkeeper.RefundGas(ctx, msg, msg.Gas()-res.GasUsed, cfg.Params.EvmDenom); err != nil {\n\t\t\treturn nil, errorsmod.Wrapf(err, \"failed to refund gas leftover gas to sender %s\", msg.From())\n\t\t}\n\t}\n\n\t// if eip1559 transaction,burn the base fee\n\tif ethtypes.DynamicFeeTxType == tx.Type() {\n\t\tif err := k.burnBaseFee(ctx, res.GasUsed, cfg.BaseFee); err != nil {\n\t\t\treturn nil, errorsmod.Wrapf(err, \"failed to burn base fee\")\n\t\t}\n\t}\n\n\tif len(receipt.Logs) > 0 {\n\t\t// Update transient block bloom filter\n\t\tk.evmkeeper.SetBlockBloomTransient(ctx, receipt.Bloom.Big())\n\t\tk.evmkeeper.SetLogSizeTransient(ctx, uint64(txConfig.LogIndex)+uint64(len(receipt.Logs)))\n\t}\n\n\tk.evmkeeper.SetTxIndexTransient(ctx, uint64(txConfig.TxIndex)+1)\n\n\ttotalGasUsed, err := k.evmkeeper.AddTransientGasUsed(ctx, res.GasUsed)\n\tif err != nil {\n\t\treturn nil, errorsmod.Wrap(err, \"failed to add transient gas used\")\n\t}\n\n\t// reset the gas meter for current cosmos transaction\n\tk.evmkeeper.ResetGasMeterAndConsumeGas(ctx, totalGasUsed)\n\treturn res, nil\n}\n\n// RefundGas transfers the leftover gas to the sender of the message, caped to half of the total gas\n// consumed in the transaction. Additionally, the function sets the total gas consumed to the value\n// returned by the EVM execution, thus ignoring the previous intrinsic gas consumed during in the\n// AnteHandler.\nfunc (k *Keeper) RefundGas(ctx sdk.Context, msg core.Message, leftoverGas uint64, feePayer string, denom string) error {\n\t// Return EVM tokens for remaining gas, exchanged at the original rate.\n\tremaining := new(big.Int).Mul(new(big.Int).SetUint64(leftoverGas), msg.GasPrice())\n\n\tswitch remaining.Sign() {\n\tcase -1:\n\t\t// negative refund errors\n\t\treturn errorsmod.Wrapf(types.ErrInvalidRefund, \"refunded amount value cannot be negative %d\", remaining.Int64())\n\tcase 1:\n\t\t// positive amount refund\n\t\trefundedCoins := sdk.Coins{sdk.NewCoin(denom, sdkmath.NewIntFromBigInt(remaining))}\n\t\tethAddr := common.HexToAddress(feePayer)\n\t\tfeePayerAddr := sdk.AccAddress(ethAddr.Bytes())\n\n\t\t// refund to sender from the fee collector module account, which is the escrow account in charge of collecting tx fees\n\t\terr := k.bankKeeper.SendCoinsFromModuleToAccount(ctx, authtypes.FeeCollectorName, feePayerAddr, refundedCoins)\n\t\tif err != nil {\n\t\t\terr = errorsmod.Wrapf(errortypes.ErrInsufficientFunds, \"fee collector account failed to refund fees: %s\", err.Error())\n\t\t\treturn errorsmod.Wrapf(err, \"failed to refund %d leftover gas (%s)\", leftoverGas, refundedCoins.String())\n\t\t}\n\tdefault:\n\t\t// no refund, consume gas and update the tx gas meter\n\t}\n\n\treturn nil\n}\n"
  },
  {
    "path": "modules/evm/types.go",
    "content": "package evm\n\nconst (\n\tEventEIP1559Burnt = \"eip1559_burnt\"\n\n\tAttributeKeyBaseFee  = \"base_fee\"\n\tAttributeKeyBurntFee = \"burnt_fee\"\n)\n"
  },
  {
    "path": "modules/guardian/client/cli/cli_test.go",
    "content": "package cli_test\n\nimport (\n\t\"fmt\"\n\t\"testing\"\n\n\t\"cosmossdk.io/math\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/codec/address\"\n\tcosmoscrypto \"github.com/cosmos/cosmos-sdk/crypto\"\n\tcryptotypes \"github.com/cosmos/cosmos-sdk/crypto/types\"\n\t\"github.com/cosmos/cosmos-sdk/testutil/network\"\n\t\"github.com/cosmos/cosmos-sdk/testutil/testdata\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tbankcli \"github.com/cosmos/cosmos-sdk/x/bank/client/cli\"\n\n\t\"github.com/gogo/protobuf/proto\"\n\t\"github.com/stretchr/testify/suite\"\n\n\tguardiancli \"github.com/irisnet/irishub/v4/modules/guardian/client/cli\"\n\tguardiantestutil \"github.com/irisnet/irishub/v4/modules/guardian/client/testutil\"\n\tguardiantypes \"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\tapptestutil \"github.com/irisnet/irishub/v4/testutil\"\n)\n\nvar privKey cryptotypes.PrivKey\nvar pubKey cryptotypes.PubKey\nvar addr sdk.AccAddress\n\ntype IntegrationTestSuite struct {\n\tsuite.Suite\n\n\tcfg     network.Config\n\tnetwork *network.Network\n}\n\nfunc (s *IntegrationTestSuite) SetupSuite() {\n\ts.T().Log(\"setting up integration test suite\")\n\n\tcfg := apptestutil.NewConfig()\n\tcfg.NumValidators = 1\n\n\tprivKey, pubKey, addr = testdata.KeyTestPubAddr()\n\tguardian := guardiantypes.NewSuper(\"test\", guardiantypes.Genesis, addr, addr)\n\n\tvar guardianGenState guardiantypes.GenesisState\n\tcfg.Codec.MustUnmarshalJSON(cfg.GenesisState[guardiantypes.ModuleName], &guardianGenState)\n\tguardianGenState.Supers = append(guardianGenState.Supers, guardian)\n\n\tcfg.GenesisState[guardiantypes.ModuleName] = cfg.Codec.MustMarshalJSON(&guardianGenState)\n\n\tvar err error\n\ts.cfg = cfg\n\ts.network, err = network.New(s.T(), s.T().TempDir(), cfg)\n\ts.Require().NoError(err)\n\n\t_, err = s.network.WaitForHeight(1)\n\ts.Require().NoError(err)\n}\n\nfunc (s *IntegrationTestSuite) TearDownSuite() {\n\ts.T().Log(\"tearing down integration test suite\")\n\ts.network.Cleanup()\n}\n\nfunc TestIntegrationTestSuite(t *testing.T) {\n\tsuite.Run(t, new(IntegrationTestSuite))\n}\n\nfunc (s *IntegrationTestSuite) TestGuardian() {\n\tval := s.network.Validators[0]\n\tfrom := val.Address\n\tdescription := \"test\"\n\tclientCtx := val.ClientCtx\n\tprivKeyStr := cosmoscrypto.EncryptArmorPrivKey(privKey, \"\", \"\")\n\tclientCtx.Keyring.ImportPrivKey(addr.String(), privKeyStr, \"\")\n\tpubKeyStr := cosmoscrypto.ArmorPubKeyBytes(pubKey.Bytes(), \"\")\n\tclientCtx.Keyring.ImportPubKey(addr.String(), pubKeyStr)\n\texpectedCode := uint32(0)\n\n\tamount := sdk.NewCoin(s.cfg.BondDenom, math.NewInt(100000000))\n\targs := []string{\n\t\tfrom.String(),\n\t\taddr.String(),\n\t\tamount.String(),\n\t\tfmt.Sprintf(\"--%s=true\", flags.FlagSkipConfirmation),\n\t\tfmt.Sprintf(\"--%s=%s\", flags.FlagBroadcastMode, flags.BroadcastSync),\n\t\tfmt.Sprintf(\n\t\t\t\"--%s=%s\",\n\t\t\tflags.FlagFees,\n\t\t\tsdk.NewCoins(sdk.NewCoin(s.cfg.BondDenom, math.NewInt(10))).String(),\n\t\t),\n\t}\n\tac := address.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix())\n\n\tresult := apptestutil.ExecCommand(s.T(), s.network, clientCtx, bankcli.NewSendTxCmd(ac), args)\n\ts.Require().Equal(uint32(0), result.TxResult.Code, result.TxResult.Log)\n\n\t//------test GetCmdQuerySupers()-------------\n\trespType := proto.Message(&guardiantypes.QuerySupersResponse{})\n\tbz, err := guardiantestutil.QuerySupersExec(clientCtx)\n\ts.Require().NoError(err)\n\ts.Require().NoError(clientCtx.Codec.UnmarshalJSON(bz.Bytes(), respType))\n\tsupersResp := respType.(*guardiantypes.QuerySupersResponse)\n\ts.Require().Equal(1, len(supersResp.Supers))\n\n\t//------test GetCmdCreateSuper()-------------\n\targs = []string{\n\t\tfmt.Sprintf(\"--%s=%s\", guardiancli.FlagAddress, from.String()),\n\t\tfmt.Sprintf(\"--%s=%s\", guardiancli.FlagDescription, description),\n\n\t\tfmt.Sprintf(\"--%s=true\", flags.FlagSkipConfirmation),\n\t\tfmt.Sprintf(\"--%s=%s\", flags.FlagBroadcastMode, flags.BroadcastSync),\n\t\tfmt.Sprintf(\n\t\t\t\"--%s=%s\",\n\t\t\tflags.FlagFees,\n\t\t\tsdk.NewCoins(sdk.NewCoin(s.cfg.BondDenom, math.NewInt(10))).String(),\n\t\t),\n\t}\n\n\tresult = guardiantestutil.CreateSuperExec(\n\t\ts.T(),\n\t\ts.network,\n\t\tval.ClientCtx, addr.String(), args...,\n\t)\n\ts.Require().Equal(expectedCode, result.TxResult.Code, result.TxResult.Log)\n\n\trespType = proto.Message(&guardiantypes.QuerySupersResponse{})\n\tbz, err = guardiantestutil.QuerySupersExec(clientCtx)\n\ts.Require().NoError(err)\n\ts.Require().NoError(clientCtx.Codec.UnmarshalJSON(bz.Bytes(), respType))\n\tsupersResp = respType.(*guardiantypes.QuerySupersResponse)\n\ts.Require().Equal(2, len(supersResp.Supers))\n\n\t//------test GetCmdDeleteSuper()-------------\n\targs = []string{\n\t\tfmt.Sprintf(\"--%s=%s\", guardiancli.FlagAddress, from.String()),\n\n\t\tfmt.Sprintf(\"--%s=true\", flags.FlagSkipConfirmation),\n\t\tfmt.Sprintf(\"--%s=%s\", flags.FlagBroadcastMode, flags.BroadcastSync),\n\t\tfmt.Sprintf(\n\t\t\t\"--%s=%s\",\n\t\t\tflags.FlagFees,\n\t\t\tsdk.NewCoins(sdk.NewCoin(s.cfg.BondDenom, math.NewInt(10))).String(),\n\t\t),\n\t}\n\n\tresult = guardiantestutil.DeleteSuperExec(\n\t\ts.T(),\n\t\ts.network,\n\t\tval.ClientCtx, addr.String(), args...)\n\ts.Require().Equal(expectedCode, result.TxResult.Code, result.TxResult.Log)\n\n\trespType = proto.Message(&guardiantypes.QuerySupersResponse{})\n\tbz, err = guardiantestutil.QuerySupersExec(clientCtx)\n\ts.Require().NoError(err)\n\ts.Require().NoError(clientCtx.Codec.UnmarshalJSON(bz.Bytes(), respType))\n\tsupersResp = respType.(*guardiantypes.QuerySupersResponse)\n\ts.Require().Equal(1, len(supersResp.Supers))\n}\n"
  },
  {
    "path": "modules/guardian/client/cli/flags.go",
    "content": "// nolint\npackage cli\n\nimport (\n\tflag \"github.com/spf13/pflag\"\n)\n\nconst (\n\tFlagAddress     = \"address\"\n\tFlagDescription = \"description\"\n)\n\n// common flagsets to add to various functions\nvar (\n\tFsAddGuardian    = flag.NewFlagSet(\"\", flag.ContinueOnError)\n\tFsDeleteGuardian = flag.NewFlagSet(\"\", flag.ContinueOnError)\n)\n\nfunc init() {\n\tFsAddGuardian.String(FlagAddress, \"\", \"bech32 encoded account address\")\n\tFsAddGuardian.String(FlagDescription, \"\", \"description of account\")\n\tFsDeleteGuardian.String(FlagAddress, \"\", \"bech32 encoded account address\")\n}\n"
  },
  {
    "path": "modules/guardian/client/cli/query.go",
    "content": "package cli\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/spf13/cobra\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/version\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\n// GetQueryCmd returns the cli query commands for the guardian module.\nfunc GetQueryCmd() *cobra.Command {\n\ttxCmd := &cobra.Command{\n\t\tUse:                        types.ModuleName,\n\t\tShort:                      \"Querying commands for the guardian module\",\n\t\tDisableFlagParsing:         true,\n\t\tSuggestionsMinimumDistance: 2,\n\t\tRunE:                       client.ValidateCmd,\n\t}\n\ttxCmd.AddCommand(\n\t\tGetCmdQuerySupers(),\n\t)\n\treturn txCmd\n}\n\n// GetCmdQuerySupers implements the query supers command.\nfunc GetCmdQuerySupers() *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:     \"supers\",\n\t\tShort:   \"Query for all supers\",\n\t\tExample: fmt.Sprintf(\"%s query guardian supers\", version.AppName),\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tclientCtx, err := client.GetClientQueryContext(cmd)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tqueryClient := types.NewQueryClient(clientCtx)\n\n\t\t\tpageReq, err := client.ReadPageRequest(cmd.Flags())\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tres, err := queryClient.Supers(context.Background(), &types.QuerySupersRequest{Pagination: pageReq})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\treturn clientCtx.PrintProto(res)\n\t\t},\n\t}\n\tflags.AddQueryFlagsToCmd(cmd)\n\tflags.AddPaginationFlagsToCmd(cmd, \"all supper\")\n\treturn cmd\n}\n"
  },
  {
    "path": "modules/guardian/client/cli/tx.go",
    "content": "package cli\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/client/tx\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/version\"\n\t\"github.com/spf13/cobra\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\n// NewTxCmd returns the transaction commands for the guardian module.\nfunc NewTxCmd() *cobra.Command {\n\ttxCmd := &cobra.Command{\n\t\tUse:                        types.ModuleName,\n\t\tShort:                      \"guardian transaction subcommands\",\n\t\tDisableFlagParsing:         true,\n\t\tSuggestionsMinimumDistance: 2,\n\t\tRunE:                       client.ValidateCmd,\n\t}\n\ttxCmd.AddCommand(\n\t\tGetCmdCreateSuper(),\n\t\tGetCmdDeleteSuper(),\n\t)\n\treturn txCmd\n}\n\n// GetCmdCreateSuper implements the create super command.\nfunc GetCmdCreateSuper() *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"add-super\",\n\t\tShort: \"Add a new super\",\n\t\tExample: fmt.Sprintf(\n\t\t\t\"%s tx guardian add-super --chain-id=<chain-id> --from=<key-name> --fees=0.3iris --address=<added address> --description=<name>\",\n\t\t\tversion.AppName,\n\t\t),\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tclientCtx, err := client.GetClientTxContext(cmd)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tfromAddr := clientCtx.GetFromAddress()\n\n\t\t\tpaStr, _ := cmd.Flags().GetString(FlagAddress)\n\t\t\tif len(paStr) == 0 {\n\t\t\t\treturn fmt.Errorf(\"must use --address flag\")\n\t\t\t}\n\t\t\tpAddr, err := sdk.AccAddressFromBech32(paStr)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdescription, _ := cmd.Flags().GetString(FlagDescription)\n\t\t\tmsg := types.NewMsgAddSuper(description, pAddr, fromAddr)\n\t\t\tif err := msg.ValidateBasic(); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\treturn tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg)\n\t\t},\n\t}\n\tcmd.Flags().AddFlagSet(FsAddGuardian)\n\t_ = cmd.MarkFlagRequired(FlagAddress)\n\t_ = cmd.MarkFlagRequired(FlagDescription)\n\tflags.AddTxFlagsToCmd(cmd)\n\treturn cmd\n}\n\n// GetCmdDeleteSuper implements the delete super command.\nfunc GetCmdDeleteSuper() *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"delete-super\",\n\t\tShort: \"Delete a super\",\n\t\tExample: fmt.Sprintf(\n\t\t\t\"%s tx guardian delete-super --chain-id=<chain-id> --from=<key-name> --fees=0.3iris --address=<deleted address>\",\n\t\t\tversion.AppName,\n\t\t),\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tclientCtx, err := client.GetClientTxContext(cmd)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tfromAddr := clientCtx.GetFromAddress()\n\t\t\tpaStr, _ := cmd.Flags().GetString(FlagAddress)\n\t\t\tpAddr, err := sdk.AccAddressFromBech32(paStr)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tmsg := types.NewMsgDeleteSuper(pAddr, fromAddr)\n\t\t\tif err := msg.ValidateBasic(); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\treturn tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg)\n\t\t},\n\t}\n\tcmd.Flags().AddFlagSet(FsDeleteGuardian)\n\t_ = cmd.MarkFlagRequired(FlagAddress)\n\tflags.AddTxFlagsToCmd(cmd)\n\treturn cmd\n}\n"
  },
  {
    "path": "modules/guardian/client/testutil/test_helpers.go",
    "content": "package testutil\n\nimport (\n\t\"fmt\"\n\t\"testing\"\n\n\t\"github.com/cometbft/cometbft/libs/cli\"\n\tcoretypes \"github.com/cometbft/cometbft/rpc/core/types\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/testutil\"\n\tclitestutil \"github.com/cosmos/cosmos-sdk/testutil/cli\"\n\t\"github.com/cosmos/cosmos-sdk/testutil/network\"\n\n\tguardiancli \"github.com/irisnet/irishub/v4/modules/guardian/client/cli\"\n\tapptestutil \"github.com/irisnet/irishub/v4/testutil\"\n)\n\n// CreateSuperExec creates a new super\nfunc CreateSuperExec(\n\tt *testing.T,\n\tnetwork *network.Network,\n\tclientCtx client.Context,\n\tfrom string,\n\textraArgs ...string,\n) *coretypes.ResultTx {\n\targs := []string{\n\t\tfmt.Sprintf(\"--%s=%s\", flags.FlagFrom, from),\n\t}\n\targs = append(args, extraArgs...)\n\n\treturn apptestutil.ExecCommand(t, network, clientCtx, guardiancli.GetCmdCreateSuper(), args)\n}\n\n// DeleteSuperExec deletes a super\nfunc DeleteSuperExec(\n\tt *testing.T,\n\tnetwork *network.Network,\n\tclientCtx client.Context,\n\tfrom string,\n\textraArgs ...string,\n) *coretypes.ResultTx {\n\targs := []string{\n\t\tfmt.Sprintf(\"--%s=%s\", flags.FlagFrom, from),\n\t}\n\targs = append(args, extraArgs...)\n\n\treturn apptestutil.ExecCommand(t, network, clientCtx, guardiancli.GetCmdDeleteSuper(), args)\n}\n\n// QuerySupersExec queries supers\nfunc QuerySupersExec(clientCtx client.Context, extraArgs ...string) (testutil.BufferWriter, error) {\n\targs := []string{\n\t\tfmt.Sprintf(\"--%s=json\", cli.OutputFlag),\n\t}\n\targs = append(args, extraArgs...)\n\n\treturn clitestutil.ExecTestCLICmd(clientCtx, guardiancli.GetCmdQuerySupers(), args)\n}\n"
  },
  {
    "path": "modules/guardian/genesis.go",
    "content": "package guardian\n\nimport (\n\t\"fmt\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\n// InitGenesis stores genesis data\nfunc InitGenesis(ctx sdk.Context, keeper keeper.Keeper, data types.GenesisState) {\n\tif err := ValidateGenesis(data); err != nil {\n\t\tpanic(fmt.Errorf(\"failed to initialize guardian genesis state: %s\", err.Error()))\n\t}\n\t// Add supers\n\tfor _, super := range data.Supers {\n\t\tkeeper.AddSuper(ctx, super)\n\t}\n}\n\n// ExportGenesis outputs genesis data\nfunc ExportGenesis(ctx sdk.Context, k keeper.Keeper) *types.GenesisState {\n\tvar supers []types.Super\n\tk.IterateSupers(\n\t\tctx,\n\t\tfunc(super types.Super) bool {\n\t\t\tsupers = append(supers, super)\n\t\t\treturn false\n\t\t},\n\t)\n\n\treturn types.NewGenesisState(supers)\n}\n\n// ValidateGenesis performs basic validation of supply genesis data returning an\n// error for any failed validation criteria.\nfunc ValidateGenesis(data types.GenesisState) error {\n\tfor _, super := range data.Supers {\n\t\tif _, err := sdk.AccAddressFromBech32(super.Address); err != nil {\n\t\t\treturn err\n\t\t}\n\t\tif _, err := sdk.AccAddressFromBech32(super.AddedBy); err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\treturn nil\n}\n"
  },
  {
    "path": "modules/guardian/genesis_test.go",
    "content": "package guardian_test\n\nimport (\n\t\"testing\"\n\n\t\"github.com/stretchr/testify/suite\"\n\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\t\"github.com/irisnet/irishub/v4/testutil\"\n)\n\ntype TestSuite struct {\n\tsuite.Suite\n\n\tcdc    codec.Codec\n\tctx    sdk.Context\n\tkeeper keeper.Keeper\n}\n\nfunc (suite *TestSuite) SetupTest() {\n\tapp := testutil.CreateApp(suite.T())\n\n\tsuite.cdc = app.AppCodec()\n\tsuite.ctx = app.BaseApp.NewContextLegacy(false, tmproto.Header{})\n\tsuite.keeper = app.GuardianKeeper\n}\n\nfunc TestGenesisSuite(t *testing.T) {\n\tsuite.Run(t, new(TestSuite))\n}\n\nfunc (suite *TestSuite) TestExportGenesis() {\n\texportedGenesis := guardian.ExportGenesis(suite.ctx, suite.keeper)\n\tdefaultGenesis := types.DefaultGenesisState()\n\tsuite.Equal(exportedGenesis, defaultGenesis)\n}\n"
  },
  {
    "path": "modules/guardian/handler.go",
    "content": "package guardian\n\nimport (\n\tsdkerrors \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\terrorstypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\n// NewHandler returns a handler for all \"guardian\" type messages.\nfunc NewHandler(k keeper.Keeper) func(ctx sdk.Context, msg sdk.Msg) (*sdk.Result, error) {\n\tmsgServer := keeper.NewMsgServerImpl(k)\n\n\treturn func(ctx sdk.Context, msg sdk.Msg) (*sdk.Result, error) {\n\t\tctx = ctx.WithEventManager(sdk.NewEventManager())\n\n\t\tswitch msg := msg.(type) {\n\t\tcase *types.MsgAddSuper:\n\t\t\tres, err := msgServer.AddSuper(sdk.WrapSDKContext(ctx), msg)\n\t\t\treturn sdk.WrapServiceResult(ctx, res, err)\n\n\t\tcase *types.MsgDeleteSuper:\n\t\t\tres, err := msgServer.DeleteSuper(sdk.WrapSDKContext(ctx), msg)\n\t\t\treturn sdk.WrapServiceResult(ctx, res, err)\n\n\t\tdefault:\n\t\t\treturn nil, sdkerrors.Wrapf(errorstypes.ErrUnknownRequest, \"unrecognized bank message type: %T\", msg)\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "modules/guardian/keeper/grpc_query.go",
    "content": "package keeper\n\nimport (\n\t\"context\"\n\n\t\"google.golang.org/grpc/codes\"\n\t\"google.golang.org/grpc/status\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/query\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\nvar _ types.QueryServer = Keeper{}\n\n// Supers implements the Query/Supers gRPC method\nfunc (k Keeper) Supers(c context.Context, req *types.QuerySupersRequest) (*types.QuerySupersResponse, error) {\n\tif req == nil {\n\t\treturn nil, status.Errorf(codes.InvalidArgument, \"empty request\")\n\t}\n\tctx := sdk.UnwrapSDKContext(c)\n\tvar supers []types.Super\n\tstore := ctx.KVStore(k.storeKey)\n\n\tpageRes, err := query.Paginate(store, req.Pagination, func(key []byte, value []byte) error {\n\t\tvar super types.Super\n\t\tk.cdc.MustUnmarshal(value, &super)\n\t\tsupers = append(supers, super)\n\t\treturn nil\n\t})\n\tif err != nil {\n\t\treturn nil, status.Errorf(codes.InvalidArgument, \"paginate: %v\", err)\n\t}\n\n\treturn &types.QuerySupersResponse{Supers: supers, Pagination: pageRes}, nil\n}\n"
  },
  {
    "path": "modules/guardian/keeper/grpc_query_test.go",
    "content": "package keeper_test\n\nimport (\n\tgocontext \"context\"\n\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\t\"github.com/cosmos/cosmos-sdk/testutil/testdata\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\nfunc (suite *KeeperTestSuite) TestGRPCQuerySupers() {\n\t_, _, addr := testdata.KeyTestPubAddr()\n\tguardian := types.NewSuper(\"test\", types.Ordinary, addr, addr)\n\n\tqueryHelper := baseapp.NewQueryServerTestHelper(suite.ctx, suite.ifr)\n\ttypes.RegisterQueryServer(queryHelper, suite.keeper)\n\tqueryClient := types.NewQueryClient(queryHelper)\n\n\t_, err := queryClient.Supers(gocontext.Background(), &types.QuerySupersRequest{})\n\tsuite.Require().NoError(err)\n\n\tsuite.keeper.AddSuper(suite.ctx, guardian)\n\tsupersResp, err := queryClient.Supers(gocontext.Background(), &types.QuerySupersRequest{})\n\tsuite.Require().NoError(err)\n\tsuite.Len(supersResp.Supers, 1)\n\tsuite.Equal(guardian, supersResp.Supers[0])\n}\n"
  },
  {
    "path": "modules/guardian/keeper/keeper.go",
    "content": "package keeper\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"cosmossdk.io/log\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\n// Keeper of the guardian store\ntype Keeper struct {\n\tcdc      codec.Codec\n\tstoreKey storetypes.StoreKey\n}\n\n// NewKeeper returns a guardian keeper\nfunc NewKeeper(cdc codec.Codec, key storetypes.StoreKey) Keeper {\n\tkeeper := Keeper{\n\t\tstoreKey: key,\n\t\tcdc:      cdc,\n\t}\n\treturn keeper\n}\n\n// Logger returns a module-specific logger.\nfunc (k Keeper) Logger(ctx sdk.Context) log.Logger {\n\treturn ctx.Logger().With(\"module\", fmt.Sprintf(\"%s\", types.ModuleName))\n}\n\n// Add a super, only a existing super can add a new and the super is not existed\nfunc (k Keeper) AddSuper(ctx sdk.Context, super types.Super) {\n\tstore := ctx.KVStore(k.storeKey)\n\tbz := k.cdc.MustMarshal(&super)\n\taddress, _ := sdk.AccAddressFromBech32(super.Address)\n\tstore.Set(types.GetSuperKey(address), bz)\n}\n\n// DeleteSuper delete the stored super\nfunc (k Keeper) DeleteSuper(ctx sdk.Context, address sdk.AccAddress) {\n\tstore := ctx.KVStore(k.storeKey)\n\tstore.Delete(types.GetSuperKey(address))\n}\n\n// GetSuper retrieves the super by specified address\nfunc (k Keeper) GetSuper(ctx sdk.Context, addr sdk.AccAddress) (super types.Super, found bool) {\n\tstore := ctx.KVStore(k.storeKey)\n\tif bz := store.Get(types.GetSuperKey(addr)); bz != nil {\n\t\tk.cdc.MustUnmarshal(bz, &super)\n\t\treturn super, true\n\t}\n\treturn super, false\n}\n\n// IterateSupers iterates through all supers\nfunc (k Keeper) IterateSupers(\n\tctx sdk.Context,\n\top func(super types.Super) (stop bool),\n) {\n\tstore := ctx.KVStore(k.storeKey)\n\n\titerator := storetypes.KVStorePrefixIterator(store, types.GetSupersSubspaceKey())\n\tdefer iterator.Close()\n\n\tfor ; iterator.Valid(); iterator.Next() {\n\t\tvar super types.Super\n\t\tk.cdc.MustUnmarshal(iterator.Value(), &super)\n\n\t\tif stop := op(super); stop {\n\t\t\tbreak\n\t\t}\n\t}\n}\n\nfunc (k Keeper) Authorized(c context.Context, addr sdk.AccAddress) bool {\n\tctx := sdk.UnwrapSDKContext(c)\n\t_, found := k.GetSuper(ctx, addr)\n\treturn found\n}\n"
  },
  {
    "path": "modules/guardian/keeper/keeper_test.go",
    "content": "package keeper_test\n\nimport (\n\t\"encoding/hex\"\n\t\"testing\"\n\n\t\"github.com/stretchr/testify/suite\"\n\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tcodectypes \"github.com/cosmos/cosmos-sdk/codec/types\"\n\t\"github.com/cosmos/cosmos-sdk/crypto/keys/ed25519\"\n\tcryptotypes \"github.com/cosmos/cosmos-sdk/crypto/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n\t\"github.com/irisnet/irishub/v4/testutil\"\n)\n\nvar (\n\tpks = []cryptotypes.PubKey{\n\t\tnewPubKey(\"0B485CFC0EECC619440448436F8FC9DF40566F2369E72400281454CB552AFB50\"),\n\t\tnewPubKey(\"0B485CFC0EECC619440448436F8FC9DF40566F2369E72400281454CB552AFB51\"),\n\t\tnewPubKey(\"0B485CFC0EECC619440448436F8FC9DF40566F2369E72400281454CB552AFB52\"),\n\t}\n\taddrs = []sdk.AccAddress{\n\t\tsdk.AccAddress(pks[0].Address()),\n\t\tsdk.AccAddress(pks[1].Address()),\n\t\tsdk.AccAddress(pks[2].Address()),\n\t}\n)\n\ntype KeeperTestSuite struct {\n\tsuite.Suite\n\n\tcdc    *codec.LegacyAmino\n\tifr    codectypes.InterfaceRegistry\n\tctx    sdk.Context\n\tkeeper keeper.Keeper\n}\n\nfunc (suite *KeeperTestSuite) SetupTest() {\n\tapp := testutil.CreateApp(suite.T())\n\n\tsuite.cdc = app.LegacyAmino()\n\tsuite.ifr = app.InterfaceRegistry()\n\tsuite.ctx = app.BaseApp.NewContextLegacy(false, tmproto.Header{})\n\tsuite.keeper = app.GuardianKeeper\n}\n\nfunc TestKeeperTestSuite(t *testing.T) {\n\tsuite.Run(t, new(KeeperTestSuite))\n}\n\nfunc (suite *KeeperTestSuite) TestAddSuper() {\n\tsuper := types.NewSuper(\"test\", types.Genesis, addrs[0], addrs[1])\n\n\tsuite.keeper.AddSuper(suite.ctx, super)\n\taddedSuper, found := suite.keeper.GetSuper(suite.ctx, addrs[0])\n\tsuite.True(found)\n\tsuite.True(super.Equal(addedSuper))\n\n\tvar supers []types.Super\n\tsuite.keeper.IterateSupers(\n\t\tsuite.ctx,\n\t\tfunc(super types.Super) bool {\n\t\t\tsupers = append(supers, super)\n\t\t\treturn false\n\t\t},\n\t)\n\n\tsuite.Equal(1, len(supers))\n\tsuite.Contains(supers, super)\n}\n\nfunc (suite *KeeperTestSuite) TestDeleteSuper() {\n\tsuper := types.NewSuper(\"test\", types.Genesis, addrs[0], addrs[1])\n\n\tsuite.keeper.AddSuper(suite.ctx, super)\n\taddedSuper, found := suite.keeper.GetSuper(suite.ctx, addrs[0])\n\tsuite.True(found)\n\tsuite.True(super.Equal(addedSuper))\n\n\taddress, _ := sdk.AccAddressFromBech32(super.Address)\n\tsuite.keeper.DeleteSuper(suite.ctx, address)\n\n\t_, found = suite.keeper.GetSuper(suite.ctx, addrs[0])\n\tsuite.False(found)\n}\n\nfunc newPubKey(pk string) (res cryptotypes.PubKey) {\n\tpkBytes, err := hex.DecodeString(pk)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\tpubkey := &ed25519.PubKey{Key: pkBytes}\n\n\treturn pubkey\n}\n"
  },
  {
    "path": "modules/guardian/keeper/msg_service.go",
    "content": "package keeper\n\nimport (\n\t\"context\"\n\n\tsdkerrors \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\ntype msgServer struct {\n\tKeeper\n}\n\nvar _ types.MsgServer = msgServer{}\n\n// NewMsgServerImpl returns an implementation of the guardian MsgServer interface for the provided Keeper.\nfunc NewMsgServerImpl(keeper Keeper) types.MsgServer {\n\treturn &msgServer{Keeper: keeper}\n}\n\nfunc (m msgServer) AddSuper(goCtx context.Context, msg *types.MsgAddSuper) (*types.MsgAddSuperResponse, error) {\n\tctx := sdk.UnwrapSDKContext(goCtx)\n\n\taddedBy, err := sdk.AccAddressFromBech32(msg.AddedBy)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\taddress, err := sdk.AccAddressFromBech32(msg.Address)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\tif super, found := m.Keeper.GetSuper(ctx, addedBy); !found || super.GetAccountType() != types.Genesis {\n\t\treturn nil, sdkerrors.Wrap(types.ErrUnknownOperator, msg.AddedBy)\n\t}\n\tif _, found := m.Keeper.GetSuper(ctx, address); found {\n\t\treturn nil, sdkerrors.Wrap(types.ErrSuperExists, msg.Address)\n\t}\n\tsuper := types.NewSuper(msg.Description, types.Ordinary, address, addedBy)\n\tm.Keeper.AddSuper(ctx, super)\n\n\tctx.EventManager().EmitEvents(sdk.Events{\n\t\tsdk.NewEvent(\n\t\t\tsdk.EventTypeMessage,\n\t\t\tsdk.NewAttribute(sdk.AttributeKeyModule, types.AttributeValueCategory),\n\t\t\tsdk.NewAttribute(sdk.AttributeKeySender, msg.AddedBy),\n\t\t),\n\t\tsdk.NewEvent(\n\t\t\ttypes.EventTypeAddSuper,\n\t\t\tsdk.NewAttribute(types.AttributeKeySuperAddress, msg.Address),\n\t\t\tsdk.NewAttribute(types.AttributeKeyAddedBy, msg.AddedBy),\n\t\t),\n\t})\n\n\treturn &types.MsgAddSuperResponse{}, nil\n}\n\nfunc (m msgServer) DeleteSuper(goCtx context.Context, msg *types.MsgDeleteSuper) (*types.MsgDeleteSuperResponse, error) {\n\tctx := sdk.UnwrapSDKContext(goCtx)\n\n\tdeletedBy, err := sdk.AccAddressFromBech32(msg.DeletedBy)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\taddress, err := sdk.AccAddressFromBech32(msg.Address)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tif super, found := m.Keeper.GetSuper(ctx, deletedBy); !found || super.GetAccountType() != types.Genesis {\n\t\treturn nil, sdkerrors.Wrap(types.ErrUnknownOperator, msg.DeletedBy)\n\t}\n\tsuper, found := m.Keeper.GetSuper(ctx, address)\n\tif !found {\n\t\treturn nil, sdkerrors.Wrap(types.ErrUnknownSuper, msg.Address)\n\t}\n\tif super.GetAccountType() == types.Genesis {\n\t\treturn nil, sdkerrors.Wrap(types.ErrDeleteGenesisSuper, msg.Address)\n\t}\n\n\tm.Keeper.DeleteSuper(ctx, address)\n\n\tctx.EventManager().EmitEvents(sdk.Events{\n\t\tsdk.NewEvent(\n\t\t\tsdk.EventTypeMessage,\n\t\t\tsdk.NewAttribute(sdk.AttributeKeyModule, types.AttributeValueCategory),\n\t\t\tsdk.NewAttribute(sdk.AttributeKeySender, msg.DeletedBy),\n\t\t),\n\t\tsdk.NewEvent(\n\t\t\ttypes.EventTypeDeleteSuper,\n\t\t\tsdk.NewAttribute(types.AttributeKeySuperAddress, msg.Address),\n\t\t\tsdk.NewAttribute(types.AttributeKeyDeletedBy, msg.DeletedBy),\n\t\t),\n\t})\n\n\treturn &types.MsgDeleteSuperResponse{}, nil\n}\n"
  },
  {
    "path": "modules/guardian/module.go",
    "content": "package guardian\n\nimport (\n\t\"context\"\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/gorilla/mux\"\n\t\"github.com/grpc-ecosystem/grpc-gateway/runtime\"\n\t\"github.com/spf13/cobra\"\n\n\tabci \"github.com/cometbft/cometbft/abci/types\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tcodectypes \"github.com/cosmos/cosmos-sdk/codec/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tsimtypes \"github.com/cosmos/cosmos-sdk/types/simulation\"\n\n\t\"github.com/irisnet/irishub/v4/modules/guardian/client/cli\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/guardian/types\"\n)\n\nvar (\n\t_ module.AppModule           = AppModule{}\n\t_ module.AppModuleBasic      = AppModuleBasic{}\n\t_ module.AppModuleSimulation = AppModule{}\n)\n\n// AppModuleBasic defines the basic application module used by the guardian module.\ntype AppModuleBasic struct {\n\tcdc codec.Codec\n}\n\n// Name returns the guardian module's name.\nfunc (AppModuleBasic) Name() string { return types.ModuleName }\n\n// RegisterLegacyAminoCodec registers the guardian module's types on the LegacyAmino codec.\nfunc (AppModuleBasic) RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) {\n\ttypes.RegisterLegacyAminoCodec(cdc)\n}\n\n// DefaultGenesis returns default genesis state as raw bytes for the guardian\n// module.\nfunc (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage {\n\treturn cdc.MustMarshalJSON(types.DefaultGenesisState())\n}\n\n// ValidateGenesis performs genesis state validation for the guardian module.\nfunc (AppModuleBasic) ValidateGenesis(\n\tcdc codec.JSONCodec,\n\tconfig client.TxEncodingConfig,\n\tbz json.RawMessage,\n) error {\n\tvar data types.GenesisState\n\tif err := cdc.UnmarshalJSON(bz, &data); err != nil {\n\t\treturn fmt.Errorf(\"failed to unmarshal %s genesis state: %w\", types.ModuleName, err)\n\t}\n\n\treturn nil\n}\n\n// RegisterRESTRoutes registers the REST routes for the guardian module.\nfunc (AppModuleBasic) RegisterRESTRoutes(clientCtx client.Context, rtr *mux.Router) {\n}\n\n// RegisterGRPCGatewayRoutes registers the gRPC Gateway routes for the guardian module.\nfunc (AppModuleBasic) RegisterGRPCGatewayRoutes(clientCtx client.Context, mux *runtime.ServeMux) {\n\t_ = types.RegisterQueryHandlerClient(context.Background(), mux, types.NewQueryClient(clientCtx))\n}\n\n// GetTxCmd returns the root tx command for the guardian module.\nfunc (AppModuleBasic) GetTxCmd() *cobra.Command {\n\treturn cli.NewTxCmd()\n}\n\n// GetQueryCmd returns no root query command for the guardian module.\nfunc (AppModuleBasic) GetQueryCmd() *cobra.Command {\n\treturn cli.GetQueryCmd()\n}\n\n// RegisterInterfaces registers interfaces and implementations of the guardian module.\nfunc (AppModuleBasic) RegisterInterfaces(registry codectypes.InterfaceRegistry) {\n\ttypes.RegisterInterfaces(registry)\n}\n\n// ____________________________________________________________________________\n\n// AppModule implements an application module for the guardian module.\ntype AppModule struct {\n\tAppModuleBasic\n\n\tkeeper keeper.Keeper\n}\n\nfunc (am AppModule) IsOnePerModuleType() {}\n\nfunc (am AppModule) IsAppModule() {}\n\n// NewAppModule creates a new AppModule object\nfunc NewAppModule(cdc codec.Codec, keeper keeper.Keeper) AppModule {\n\treturn AppModule{\n\t\tAppModuleBasic: AppModuleBasic{cdc: cdc},\n\t\tkeeper:         keeper,\n\t}\n}\n\n// Name returns the guardian module's name.\nfunc (AppModule) Name() string { return types.ModuleName }\n\n// RegisterServices registers module services.\nfunc (am AppModule) RegisterServices(cfg module.Configurator) {\n\ttypes.RegisterMsgServer(cfg.MsgServer(), keeper.NewMsgServerImpl(am.keeper))\n\ttypes.RegisterQueryServer(cfg.QueryServer(), am.keeper)\n}\n\n// RegisterInvariants registers the guardian module invariants.\nfunc (am AppModule) RegisterInvariants(ir sdk.InvariantRegistry) {\n}\n\n// QuerierRoute returns the guardian module's querier route name.\nfunc (AppModule) QuerierRoute() string { return types.RouterKey }\n\n// InitGenesis performs genesis initialization for the guardian module. It returns\n// no validator updates.\nfunc (am AppModule) InitGenesis(\n\tctx sdk.Context,\n\tcdc codec.JSONCodec,\n\tdata json.RawMessage,\n) []abci.ValidatorUpdate {\n\tvar genesisState types.GenesisState\n\n\tcdc.MustUnmarshalJSON(data, &genesisState)\n\n\tInitGenesis(ctx, am.keeper, genesisState)\n\treturn []abci.ValidatorUpdate{}\n}\n\n// ExportGenesis returns the exported genesis state as raw bytes for the guardian\n// module.\nfunc (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.RawMessage {\n\tgs := ExportGenesis(ctx, am.keeper)\n\treturn cdc.MustMarshalJSON(gs)\n}\n\n// ConsensusVersion is a sequence number for state-breaking change of the\n// module. It should be incremented on each consensus-breaking change\n// introduced by the module. To avoid wrong/empty versions, the initial version\n// should be set to 1.\nfunc (am AppModule) ConsensusVersion() uint64 {\n\treturn 1\n}\n\n// BeginBlock performs a no-op.\nfunc (AppModule) BeginBlock(_ context.Context) error { return nil }\n\n// EndBlock returns the end blocker for the guardian module. It returns no validator\n// updates.\nfunc (AppModule) EndBlock(_ context.Context) error {\n\treturn nil\n}\n\n// ____________________________________________________________________________\n\n// AppModuleSimulation functions\n\n// GenerateGenesisState creates a randomized GenState of the guardian module.\nfunc (AppModule) GenerateGenesisState(simState *module.SimulationState) {\n}\n\n// RegisterStoreDecoder registers a decoder for guardian module's types\nfunc (am AppModule) RegisterStoreDecoder(sdr simtypes.StoreDecoderRegistry) {\n}\n\n// WeightedOperations returns the all the guardian module operations with their respective weights.\nfunc (am AppModule) WeightedOperations(\n\tsimState module.SimulationState,\n) []simtypes.WeightedOperation {\n\treturn []simtypes.WeightedOperation{}\n}\n"
  },
  {
    "path": "modules/guardian/types/codec.go",
    "content": "package types\n\nimport (\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/codec/types\"\n\tcryptocodec \"github.com/cosmos/cosmos-sdk/crypto/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/msgservice\"\n)\n\n// RegisterLegacyAminoCodec registers the necessary module/guardian interfaces and concrete types\n// on the provided Amino codec. These types are used for Amino JSON serialization.\nfunc RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) {\n\tcdc.RegisterConcrete(&MsgAddSuper{}, \"irishub/guardian/MsgAddSuper\", nil)\n\tcdc.RegisterConcrete(&MsgDeleteSuper{}, \"irishub/guardian/MsgDeleteSuper\", nil)\n}\n\nfunc RegisterInterfaces(registry types.InterfaceRegistry) {\n\tregistry.RegisterImplementations((*sdk.Msg)(nil),\n\t\t&MsgAddSuper{},\n\t\t&MsgDeleteSuper{},\n\t)\n\tmsgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc)\n}\n\nvar (\n\tamino     = codec.NewLegacyAmino()\n\tModuleCdc = codec.NewAminoCodec(amino)\n)\n\nfunc init() {\n\tRegisterLegacyAminoCodec(amino)\n\tcryptocodec.RegisterCrypto(amino)\n\tamino.Seal()\n}\n"
  },
  {
    "path": "modules/guardian/types/errors.go",
    "content": "package types\n\nimport (\n\tsdkerrors \"cosmossdk.io/errors\"\n)\n\n// guardian module sentinel errors\nvar (\n\tErrUnknownOperator    = sdkerrors.Register(ModuleName, 2, \"unknown operator\")\n\tErrUnknownSuper       = sdkerrors.Register(ModuleName, 3, \"unknown super\")\n\tErrSuperExists        = sdkerrors.Register(ModuleName, 4, \"super already exists\")\n\tErrDeleteGenesisSuper = sdkerrors.Register(ModuleName, 5, \"can't delete genesis super\")\n)\n"
  },
  {
    "path": "modules/guardian/types/event.go",
    "content": "// nolint\npackage types\n\n// guardian module event types\nconst (\n\tEventTypeAddSuper    = \"add_super\"\n\tEventTypeDeleteSuper = \"delete_super\"\n\n\tAttributeKeySuperAddress = \"address\"\n\tAttributeKeyAddedBy      = \"added_by\"\n\tAttributeKeyDeletedBy    = \"deleted_by\"\n\n\tAttributeValueCategory = ModuleName\n)\n"
  },
  {
    "path": "modules/guardian/types/genesis.go",
    "content": "package types\n\n// NewGenesisState constructs a GenesisState\nfunc NewGenesisState(supers []Super) *GenesisState {\n\treturn &GenesisState{\n\t\tSupers: supers,\n\t}\n}\n\n// DefaultGenesisState gets raw genesis raw message for testing\nfunc DefaultGenesisState() *GenesisState {\n\treturn &GenesisState{}\n}\n"
  },
  {
    "path": "modules/guardian/types/genesis.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/guardian/genesis.proto\n\npackage types\n\nimport (\n\tfmt \"fmt\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// GenesisState defines the guardian module's genesis state\ntype GenesisState struct {\n\tSupers []Super `protobuf:\"bytes,1,rep,name=supers,proto3\" json:\"supers\"`\n}\n\nfunc (m *GenesisState) Reset()         { *m = GenesisState{} }\nfunc (m *GenesisState) String() string { return proto.CompactTextString(m) }\nfunc (*GenesisState) ProtoMessage()    {}\nfunc (*GenesisState) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_430b7f41c0a2b3b1, []int{0}\n}\nfunc (m *GenesisState) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *GenesisState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_GenesisState.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *GenesisState) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_GenesisState.Merge(m, src)\n}\nfunc (m *GenesisState) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *GenesisState) XXX_DiscardUnknown() {\n\txxx_messageInfo_GenesisState.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_GenesisState proto.InternalMessageInfo\n\nfunc (m *GenesisState) GetSupers() []Super {\n\tif m != nil {\n\t\treturn m.Supers\n\t}\n\treturn nil\n}\n\nfunc init() {\n\tproto.RegisterType((*GenesisState)(nil), \"irishub.guardian.GenesisState\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/guardian/genesis.proto\", fileDescriptor_430b7f41c0a2b3b1) }\n\nvar fileDescriptor_430b7f41c0a2b3b1 = []byte{\n\t// 199 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xcb, 0x2c, 0xca, 0x2c,\n\t0xce, 0x28, 0x4d, 0xd2, 0x4f, 0x2f, 0x4d, 0x2c, 0x4a, 0xc9, 0x4c, 0xcc, 0xd3, 0x4f, 0x4f, 0xcd,\n\t0x4b, 0x2d, 0xce, 0x2c, 0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x80, 0xca, 0xeb, 0xc1,\n\t0xe4, 0xa5, 0xe4, 0x31, 0x75, 0x40, 0x19, 0x10, 0x2d, 0x52, 0x22, 0xe9, 0xf9, 0xe9, 0xf9, 0x60,\n\t0xa6, 0x3e, 0x88, 0x05, 0x11, 0x55, 0x72, 0xe5, 0xe2, 0x71, 0x87, 0x98, 0x1c, 0x5c, 0x92, 0x58,\n\t0x92, 0x2a, 0x64, 0xca, 0xc5, 0x56, 0x5c, 0x5a, 0x90, 0x5a, 0x54, 0x2c, 0xc1, 0xa8, 0xc0, 0xac,\n\t0xc1, 0x6d, 0x24, 0xae, 0x87, 0x6e, 0x93, 0x5e, 0x30, 0x48, 0xde, 0x89, 0xe5, 0xc4, 0x3d, 0x79,\n\t0x86, 0x20, 0xa8, 0x62, 0x27, 0xbf, 0x13, 0x8f, 0xe4, 0x18, 0x2f, 0x3c, 0x92, 0x63, 0x7c, 0xf0,\n\t0x48, 0x8e, 0x71, 0xc2, 0x63, 0x39, 0x86, 0x0b, 0x8f, 0xe5, 0x18, 0x6e, 0x3c, 0x96, 0x63, 0x88,\n\t0x32, 0x49, 0xcf, 0x2c, 0x01, 0x69, 0x4f, 0xce, 0xcf, 0xd5, 0x07, 0x19, 0x95, 0x97, 0x5a, 0xa2,\n\t0x0f, 0x73, 0x6a, 0x99, 0x89, 0x7e, 0x6e, 0x7e, 0x4a, 0x69, 0x4e, 0x6a, 0x31, 0xc2, 0xd5, 0x25,\n\t0x95, 0x05, 0xa9, 0xc5, 0x49, 0x6c, 0x60, 0xd7, 0x19, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0x76,\n\t0x80, 0x65, 0xd3, 0x08, 0x01, 0x00, 0x00,\n}\n\nfunc (m *GenesisState) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *GenesisState) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *GenesisState) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif len(m.Supers) > 0 {\n\t\tfor iNdEx := len(m.Supers) - 1; iNdEx >= 0; iNdEx-- {\n\t\t\t{\n\t\t\t\tsize, err := m.Supers[iNdEx].MarshalToSizedBuffer(dAtA[:i])\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn 0, err\n\t\t\t\t}\n\t\t\t\ti -= size\n\t\t\t\ti = encodeVarintGenesis(dAtA, i, uint64(size))\n\t\t\t}\n\t\t\ti--\n\t\t\tdAtA[i] = 0xa\n\t\t}\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintGenesis(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovGenesis(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *GenesisState) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tif len(m.Supers) > 0 {\n\t\tfor _, e := range m.Supers {\n\t\t\tl = e.Size()\n\t\t\tn += 1 + l + sovGenesis(uint64(l))\n\t\t}\n\t}\n\treturn n\n}\n\nfunc sovGenesis(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozGenesis(x uint64) (n int) {\n\treturn sovGenesis(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *GenesisState) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowGenesis\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: GenesisState: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: GenesisState: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Supers\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Supers = append(m.Supers, Super{})\n\t\t\tif err := m.Supers[len(m.Supers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipGenesis(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipGenesis(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowGenesis\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupGenesis\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthGenesis\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthGenesis        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowGenesis          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupGenesis = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/guardian/types/guardian.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/guardian/guardian.proto\n\npackage types\n\nimport (\n\tfmt \"fmt\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// AccountType defines the super account type\ntype AccountType int32\n\nconst (\n\t// GENESIS defines a genesis account type\n\tGenesis AccountType = 0\n\t// ORDINARY defines a ordinary account type\n\tOrdinary AccountType = 1\n)\n\nvar AccountType_name = map[int32]string{\n\t0: \"GENESIS\",\n\t1: \"ORDINARY\",\n}\n\nvar AccountType_value = map[string]int32{\n\t\"GENESIS\":  0,\n\t\"ORDINARY\": 1,\n}\n\nfunc (x AccountType) String() string {\n\treturn proto.EnumName(AccountType_name, int32(x))\n}\n\nfunc (AccountType) EnumDescriptor() ([]byte, []int) {\n\treturn fileDescriptor_cbcdd28e3c2705db, []int{0}\n}\n\n// Super defines the super standard\ntype Super struct {\n\tDescription string      `protobuf:\"bytes,1,opt,name=description,proto3\" json:\"description,omitempty\"`\n\tAccountType AccountType `protobuf:\"varint,2,opt,name=account_type,json=accountType,proto3,enum=irishub.guardian.AccountType\" json:\"account_type,omitempty\" yaml:\"account_type\"`\n\tAddress     string      `protobuf:\"bytes,3,opt,name=address,proto3\" json:\"address,omitempty\"`\n\tAddedBy     string      `protobuf:\"bytes,4,opt,name=added_by,json=addedBy,proto3\" json:\"added_by,omitempty\"`\n}\n\nfunc (m *Super) Reset()         { *m = Super{} }\nfunc (m *Super) String() string { return proto.CompactTextString(m) }\nfunc (*Super) ProtoMessage()    {}\nfunc (*Super) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_cbcdd28e3c2705db, []int{0}\n}\nfunc (m *Super) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *Super) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_Super.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *Super) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_Super.Merge(m, src)\n}\nfunc (m *Super) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *Super) XXX_DiscardUnknown() {\n\txxx_messageInfo_Super.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_Super proto.InternalMessageInfo\n\nfunc (m *Super) GetDescription() string {\n\tif m != nil {\n\t\treturn m.Description\n\t}\n\treturn \"\"\n}\n\nfunc (m *Super) GetAccountType() AccountType {\n\tif m != nil {\n\t\treturn m.AccountType\n\t}\n\treturn Genesis\n}\n\nfunc (m *Super) GetAddress() string {\n\tif m != nil {\n\t\treturn m.Address\n\t}\n\treturn \"\"\n}\n\nfunc (m *Super) GetAddedBy() string {\n\tif m != nil {\n\t\treturn m.AddedBy\n\t}\n\treturn \"\"\n}\n\nfunc init() {\n\tproto.RegisterEnum(\"irishub.guardian.AccountType\", AccountType_name, AccountType_value)\n\tproto.RegisterType((*Super)(nil), \"irishub.guardian.Super\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/guardian/guardian.proto\", fileDescriptor_cbcdd28e3c2705db) }\n\nvar fileDescriptor_cbcdd28e3c2705db = []byte{\n\t// 328 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xcf, 0x2c, 0xca, 0x2c,\n\t0xce, 0x28, 0x4d, 0xd2, 0x4f, 0x2f, 0x4d, 0x2c, 0x4a, 0xc9, 0x4c, 0xcc, 0x83, 0x33, 0xf4, 0x0a,\n\t0x8a, 0xf2, 0x4b, 0xf2, 0x85, 0x04, 0xa0, 0x0a, 0xf4, 0x60, 0xe2, 0x52, 0x22, 0xe9, 0xf9, 0xe9,\n\t0xf9, 0x60, 0x49, 0x7d, 0x10, 0x0b, 0xa2, 0x4e, 0x69, 0x27, 0x23, 0x17, 0x6b, 0x70, 0x69, 0x41,\n\t0x6a, 0x91, 0x90, 0x02, 0x17, 0x77, 0x4a, 0x6a, 0x71, 0x72, 0x51, 0x66, 0x41, 0x49, 0x66, 0x7e,\n\t0x9e, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x67, 0x10, 0xb2, 0x90, 0x50, 0x24, 0x17, 0x4f, 0x62, 0x72,\n\t0x72, 0x7e, 0x69, 0x5e, 0x49, 0x7c, 0x49, 0x65, 0x41, 0xaa, 0x04, 0x93, 0x02, 0xa3, 0x06, 0x9f,\n\t0x91, 0xac, 0x1e, 0xba, 0x55, 0x7a, 0x8e, 0x10, 0x55, 0x21, 0x95, 0x05, 0xa9, 0x4e, 0xe2, 0x9f,\n\t0xee, 0xc9, 0x0b, 0x57, 0x26, 0xe6, 0xe6, 0x58, 0x29, 0x21, 0x6b, 0x56, 0x0a, 0xe2, 0x4e, 0x44,\n\t0xa8, 0x12, 0x92, 0xe0, 0x62, 0x4f, 0x4c, 0x49, 0x29, 0x4a, 0x2d, 0x2e, 0x96, 0x60, 0x06, 0x5b,\n\t0x0c, 0xe3, 0x0a, 0x49, 0x72, 0x71, 0x24, 0xa6, 0xa4, 0xa4, 0xa6, 0xc4, 0x27, 0x55, 0x4a, 0xb0,\n\t0xc0, 0xa5, 0x52, 0x53, 0x9c, 0x2a, 0xb5, 0x3c, 0xb9, 0xb8, 0x1d, 0x51, 0xcd, 0x70, 0x77, 0xf5,\n\t0x73, 0x0d, 0xf6, 0x0c, 0x16, 0x60, 0x90, 0xe2, 0xee, 0x9a, 0xab, 0xc0, 0xee, 0x9e, 0x9a, 0x97,\n\t0x5a, 0x9c, 0x59, 0x2c, 0x24, 0xc5, 0xc5, 0xe1, 0x1f, 0xe4, 0xe2, 0xe9, 0xe7, 0x18, 0x14, 0x29,\n\t0xc0, 0x28, 0xc5, 0xd3, 0x35, 0x57, 0x81, 0xc3, 0xbf, 0x28, 0x25, 0x33, 0x2f, 0xb1, 0xa8, 0x52,\n\t0x8a, 0xa5, 0x63, 0xb1, 0x1c, 0x83, 0x93, 0xdf, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, 0xc9, 0x31,\n\t0x3e, 0x78, 0x24, 0xc7, 0x38, 0xe1, 0xb1, 0x1c, 0xc3, 0x85, 0xc7, 0x72, 0x0c, 0x37, 0x1e, 0xcb,\n\t0x31, 0x44, 0x99, 0xa4, 0x67, 0x96, 0x80, 0x3c, 0x97, 0x9c, 0x9f, 0xab, 0x0f, 0xf2, 0x68, 0x5e,\n\t0x6a, 0x89, 0x3e, 0x2c, 0xf0, 0xcb, 0x4c, 0xf4, 0x73, 0xf3, 0x53, 0x4a, 0x73, 0x52, 0x8b, 0x11,\n\t0xf1, 0x00, 0xf2, 0x5c, 0x71, 0x12, 0x1b, 0x38, 0x74, 0x8d, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff,\n\t0xbb, 0xa2, 0xa5, 0xe0, 0xa8, 0x01, 0x00, 0x00,\n}\n\nfunc (m *Super) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *Super) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *Super) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif len(m.AddedBy) > 0 {\n\t\ti -= len(m.AddedBy)\n\t\tcopy(dAtA[i:], m.AddedBy)\n\t\ti = encodeVarintGuardian(dAtA, i, uint64(len(m.AddedBy)))\n\t\ti--\n\t\tdAtA[i] = 0x22\n\t}\n\tif len(m.Address) > 0 {\n\t\ti -= len(m.Address)\n\t\tcopy(dAtA[i:], m.Address)\n\t\ti = encodeVarintGuardian(dAtA, i, uint64(len(m.Address)))\n\t\ti--\n\t\tdAtA[i] = 0x1a\n\t}\n\tif m.AccountType != 0 {\n\t\ti = encodeVarintGuardian(dAtA, i, uint64(m.AccountType))\n\t\ti--\n\t\tdAtA[i] = 0x10\n\t}\n\tif len(m.Description) > 0 {\n\t\ti -= len(m.Description)\n\t\tcopy(dAtA[i:], m.Description)\n\t\ti = encodeVarintGuardian(dAtA, i, uint64(len(m.Description)))\n\t\ti--\n\t\tdAtA[i] = 0xa\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintGuardian(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovGuardian(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *Super) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = len(m.Description)\n\tif l > 0 {\n\t\tn += 1 + l + sovGuardian(uint64(l))\n\t}\n\tif m.AccountType != 0 {\n\t\tn += 1 + sovGuardian(uint64(m.AccountType))\n\t}\n\tl = len(m.Address)\n\tif l > 0 {\n\t\tn += 1 + l + sovGuardian(uint64(l))\n\t}\n\tl = len(m.AddedBy)\n\tif l > 0 {\n\t\tn += 1 + l + sovGuardian(uint64(l))\n\t}\n\treturn n\n}\n\nfunc sovGuardian(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozGuardian(x uint64) (n int) {\n\treturn sovGuardian(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *Super) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowGuardian\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: Super: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: Super: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Description\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGuardian\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Description = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 0 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field AccountType\", wireType)\n\t\t\t}\n\t\t\tm.AccountType = 0\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGuardian\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tm.AccountType |= AccountType(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 3:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Address\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGuardian\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Address = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 4:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field AddedBy\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGuardian\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.AddedBy = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipGuardian(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipGuardian(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowGuardian\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowGuardian\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowGuardian\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthGuardian\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupGuardian\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthGuardian\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthGuardian        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowGuardian          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupGuardian = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/guardian/types/keys.go",
    "content": "package types\n\nimport (\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n)\n\n// nolint\nconst (\n\t// module name\n\tModuleName = \"guardian\"\n\n\t// StoreKey is the default store key for guardian\n\tStoreKey = ModuleName\n\n\t// RouterKey is the message route for guardian\n\tRouterKey = ModuleName\n\n\t// QuerierRoute is the querier route for the guardian store.\n\tQuerierRoute = StoreKey\n\n\t// Query endpoints supported by the guardian querier\n\tQuerySupers = \"supers\"\n)\n\nvar (\n\tSuperKey = []byte{0x00} // super key\n)\n\n// GetSuperKey returns super key bytes\nfunc GetSuperKey(addr sdk.AccAddress) []byte {\n\treturn append(SuperKey, addr.Bytes()...)\n}\n\n// GetSupersSubspaceKey returns the key for getting all supers from the store\nfunc GetSupersSubspaceKey() []byte {\n\treturn SuperKey\n}\n"
  },
  {
    "path": "modules/guardian/types/msgs.go",
    "content": "package types\n\nimport (\n\tsdkerrors \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\terrortypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n)\n\nconst (\n\tTypeMsgAddSuper    = \"add_super\"    // type for MsgAddSuper\n\tTypeMsgDeleteSuper = \"delete_super\" // type for MsgDeleteSuper\n)\n\nvar (\n\t_ sdk.Msg = &MsgAddSuper{}\n\t_ sdk.Msg = &MsgDeleteSuper{}\n)\n\n// NewMsgAddSuper constructs a MsgAddSuper\nfunc NewMsgAddSuper(description string, address, addedBy sdk.AccAddress) *MsgAddSuper {\n\treturn &MsgAddSuper{\n\t\tDescription: description,\n\t\tAddress:     address.String(),\n\t\tAddedBy:     addedBy.String(),\n\t}\n}\n\n// Route implements Msg.\nfunc (msg MsgAddSuper) Route() string { return RouterKey }\n\n// Type implements Msg.\nfunc (msg MsgAddSuper) Type() string { return TypeMsgAddSuper }\n\n// GetSignBytes implements Msg.\nfunc (msg MsgAddSuper) GetSignBytes() []byte {\n\tb, err := ModuleCdc.MarshalJSON(&msg)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn sdk.MustSortJSON(b)\n}\n\n// ValidateBasic implements Msg.\nfunc (msg MsgAddSuper) ValidateBasic() error {\n\tif len(msg.Description) == 0 {\n\t\treturn sdkerrors.Wrap(errortypes.ErrInvalidRequest, \"description missing\")\n\t}\n\tif _, err := sdk.AccAddressFromBech32(msg.Address); err != nil {\n\t\treturn sdkerrors.Wrapf(errortypes.ErrInvalidAddress, \"invalid address (%s)\", err)\n\t}\n\tif _, err := sdk.AccAddressFromBech32(msg.AddedBy); err != nil {\n\t\treturn sdkerrors.Wrapf(errortypes.ErrInvalidAddress, \"invalid operator address (%s)\", err)\n\t}\n\tif err := msg.EnsureLength(); err != nil {\n\t\treturn err\n\t}\n\treturn nil\n}\n\n// GetSigners implements Msg.\nfunc (msg MsgAddSuper) GetSigners() []sdk.AccAddress {\n\tfrom, err := sdk.AccAddressFromBech32(msg.AddedBy)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn []sdk.AccAddress{from}\n}\n\n// ______________________________________________________________________\n\n// NewMsgDeleteSuper constructs a MsgDeleteSuper\nfunc NewMsgDeleteSuper(address, deletedBy sdk.AccAddress) *MsgDeleteSuper {\n\treturn &MsgDeleteSuper{\n\t\tAddress:   address.String(),\n\t\tDeletedBy: deletedBy.String(),\n\t}\n}\n\n// Route implements Msg.\nfunc (msg MsgDeleteSuper) Route() string { return RouterKey }\n\n// Type implements Msg.\nfunc (msg MsgDeleteSuper) Type() string { return TypeMsgDeleteSuper }\n\n// GetSignBytes implements Msg.\nfunc (msg MsgDeleteSuper) GetSignBytes() []byte {\n\tb, err := ModuleCdc.MarshalJSON(&msg)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn sdk.MustSortJSON(b)\n}\n\n// RoValidateBasicute implements Msg.\nfunc (msg MsgDeleteSuper) ValidateBasic() error {\n\tif _, err := sdk.AccAddressFromBech32(msg.Address); err != nil {\n\t\treturn sdkerrors.Wrapf(errortypes.ErrInvalidAddress, \"invalid address (%s)\", err)\n\t}\n\tif _, err := sdk.AccAddressFromBech32(msg.DeletedBy); err != nil {\n\t\treturn sdkerrors.Wrapf(errortypes.ErrInvalidAddress, \"invalid operator address (%s)\", err)\n\t}\n\treturn nil\n}\n\n// GetSigners implements Msg.\nfunc (msg MsgDeleteSuper) GetSigners() []sdk.AccAddress {\n\tfrom, err := sdk.AccAddressFromBech32(msg.DeletedBy)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn []sdk.AccAddress{from}\n}\n\n// EnsureLength validate the length of AddGuardian\nfunc (msg MsgAddSuper) EnsureLength() error {\n\tif len(msg.Description) > 70 {\n\t\treturn sdkerrors.Wrapf(errortypes.ErrInvalidRequest, \"invalid website length; got: %d, max: %d\", len(msg.Description), 70)\n\t}\n\treturn nil\n}\n"
  },
  {
    "path": "modules/guardian/types/msgs_test.go",
    "content": "package types\n\nimport (\n\t\"fmt\"\n\t\"testing\"\n\n\t\"github.com/stretchr/testify/require\"\n\n\t\"github.com/cometbft/cometbft/crypto\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t_ \"github.com/irisnet/irishub/v4/types\"\n)\n\n// nolint: deadcode unused\nvar (\n\tsender, _   = sdk.AccAddressFromHexUnsafe(crypto.AddressHash([]byte(\"sender\")).String())\n\ttestAddr, _ = sdk.AccAddressFromHexUnsafe(crypto.AddressHash([]byte(\"test\")).String())\n\n\tnilAddr        = sdk.AccAddress{}\n\tdescription    = \"description\"\n\tnilDescription = \"\"\n)\n\n// ----------------------------------------------\n// test MsgAddSuper\n// ----------------------------------------------\n\nfunc TestNewMsgAddSuper(t *testing.T) {\n\tmsg := NewMsgAddSuper(description, testAddr, sender)\n\trequire.Equal(t, description, msg.Description)\n\trequire.Equal(t, testAddr.String(), msg.Address)\n\trequire.Equal(t, sender.String(), msg.AddedBy)\n}\n\nfunc TestMsgAddSuperRoute(t *testing.T) {\n\tmsg := NewMsgAddSuper(description, testAddr, sender)\n\trequire.Equal(t, RouterKey, msg.Route())\n}\n\nfunc TestMsgAddSuperType(t *testing.T) {\n\tmsg := NewMsgAddSuper(description, testAddr, sender)\n\trequire.Equal(t, TypeMsgAddSuper, msg.Type())\n}\n\nfunc TestMsgAddSuperGetSignBytes(t *testing.T) {\n\tmsg := NewMsgAddSuper(description, testAddr, sender)\n\tres := msg.GetSignBytes()\n\texpected := `{\"type\":\"irishub/guardian/MsgAddSuper\",\"value\":{\"added_by\":\"iaa1pgm8hyk0pvphmlvfjc8wsvk4daluz5tgwp4wlf\",\"address\":\"iaa1n7rdpqvgf37ktx30a2sv2kkszk3m7ncmakdj4g\",\"description\":\"description\"}}`\n\trequire.Equal(t, expected, string(res))\n}\n\nfunc TestMsgAddSuperGetSigners(t *testing.T) {\n\tmsg := NewMsgAddSuper(description, testAddr, sender)\n\tres := msg.GetSigners()\n\texpected := \"[0A367B92CF0B037DFD89960EE832D56F7FC15168]\"\n\trequire.Equal(t, expected, fmt.Sprintf(\"%v\", res))\n}\n\n// test ValidateBasic for MsgAddSuper\nfunc TestMsgAddSuperValidation(t *testing.T) {\n\ttests := []struct {\n\t\tname       string\n\t\texpectPass bool\n\t\tmsg        *MsgAddSuper\n\t}{\n\t\t{\"pass\", true, NewMsgAddSuper(description, testAddr, sender)},\n\t\t{\"invalid Description\", false, NewMsgAddSuper(nilDescription, testAddr, sender)},\n\t\t{\"invalid Address\", false, NewMsgAddSuper(description, nilAddr, sender)},\n\t\t{\"invalid AddedBy\", false, NewMsgAddSuper(description, testAddr, nilAddr)},\n\t}\n\n\tfor _, tc := range tests {\n\t\tt.Run(tc.name, func(t *testing.T) {\n\t\t\terr := tc.msg.ValidateBasic()\n\t\t\tif tc.expectPass {\n\t\t\t\trequire.NoError(t, err)\n\t\t\t} else {\n\t\t\t\trequire.Error(t, err)\n\t\t\t}\n\t\t})\n\t}\n}\n\n// ----------------------------------------------\n// test MsgDeleteSuper\n// ----------------------------------------------\n\nfunc TestNewMsgDeleteSuper(t *testing.T) {\n\tmsg := NewMsgDeleteSuper(testAddr, sender)\n\trequire.Equal(t, testAddr.String(), msg.Address)\n\trequire.Equal(t, sender.String(), msg.DeletedBy)\n}\n\nfunc TestMsgDeleteSuperRoute(t *testing.T) {\n\tmsg := NewMsgDeleteSuper(testAddr, sender)\n\trequire.Equal(t, RouterKey, msg.Route())\n}\n\nfunc TestMsgDeleteSuperType(t *testing.T) {\n\tmsg := NewMsgDeleteSuper(testAddr, sender)\n\trequire.Equal(t, TypeMsgDeleteSuper, msg.Type())\n}\n\nfunc TestMsgDeleteSuperGetSignBytes(t *testing.T) {\n\tmsg := NewMsgDeleteSuper(testAddr, sender)\n\tres := msg.GetSignBytes()\n\texpected := `{\"type\":\"irishub/guardian/MsgDeleteSuper\",\"value\":{\"address\":\"iaa1n7rdpqvgf37ktx30a2sv2kkszk3m7ncmakdj4g\",\"deleted_by\":\"iaa1pgm8hyk0pvphmlvfjc8wsvk4daluz5tgwp4wlf\"}}`\n\trequire.Equal(t, expected, string(res))\n}\n\nfunc TestMsgDeleteSuperGetSigners(t *testing.T) {\n\tmsg := NewMsgDeleteSuper(testAddr, sender)\n\tres := msg.GetSigners()\n\texpected := \"[0A367B92CF0B037DFD89960EE832D56F7FC15168]\"\n\trequire.Equal(t, expected, fmt.Sprintf(\"%v\", res))\n}\n\n// test ValidateBasic for MsgDeleteSuper\nfunc TestMsgDeleteSuperValidation(t *testing.T) {\n\ttests := []struct {\n\t\tname       string\n\t\texpectPass bool\n\t\tmsg        *MsgDeleteSuper\n\t}{\n\t\t{\"pass\", true, NewMsgDeleteSuper(testAddr, sender)},\n\t\t{\"invalid Address\", false, NewMsgDeleteSuper(nilAddr, sender)},\n\t\t{\"invalid DeletedBy\", false, NewMsgDeleteSuper(testAddr, nilAddr)},\n\t}\n\n\tfor _, tc := range tests {\n\t\tt.Run(tc.name, func(t *testing.T) {\n\t\t\terr := tc.msg.ValidateBasic()\n\t\t\tif tc.expectPass {\n\t\t\t\trequire.NoError(t, err)\n\t\t\t} else {\n\t\t\t\trequire.Error(t, err)\n\t\t\t}\n\t\t})\n\t}\n}\n"
  },
  {
    "path": "modules/guardian/types/query.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/guardian/query.proto\n\npackage types\n\nimport (\n\tcontext \"context\"\n\tfmt \"fmt\"\n\tquery \"github.com/cosmos/cosmos-sdk/types/query\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tgrpc1 \"github.com/cosmos/gogoproto/grpc\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\t_ \"google.golang.org/genproto/googleapis/api/annotations\"\n\tgrpc \"google.golang.org/grpc\"\n\tcodes \"google.golang.org/grpc/codes\"\n\tstatus \"google.golang.org/grpc/status\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// QuerySupersRequest is request type for the Query/Supers RPC method\ntype QuerySupersRequest struct {\n\t// pagination defines an optional pagination for the request\n\tPagination *query.PageRequest `protobuf:\"bytes,1,opt,name=pagination,proto3\" json:\"pagination,omitempty\"`\n}\n\nfunc (m *QuerySupersRequest) Reset()         { *m = QuerySupersRequest{} }\nfunc (m *QuerySupersRequest) String() string { return proto.CompactTextString(m) }\nfunc (*QuerySupersRequest) ProtoMessage()    {}\nfunc (*QuerySupersRequest) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_49841d96de191552, []int{0}\n}\nfunc (m *QuerySupersRequest) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *QuerySupersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_QuerySupersRequest.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *QuerySupersRequest) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_QuerySupersRequest.Merge(m, src)\n}\nfunc (m *QuerySupersRequest) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *QuerySupersRequest) XXX_DiscardUnknown() {\n\txxx_messageInfo_QuerySupersRequest.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_QuerySupersRequest proto.InternalMessageInfo\n\nfunc (m *QuerySupersRequest) GetPagination() *query.PageRequest {\n\tif m != nil {\n\t\treturn m.Pagination\n\t}\n\treturn nil\n}\n\n// QuerySupersResponse is response type for the Query/Supers RPC method\ntype QuerySupersResponse struct {\n\tSupers     []Super             `protobuf:\"bytes,1,rep,name=supers,proto3\" json:\"supers\"`\n\tPagination *query.PageResponse `protobuf:\"bytes,2,opt,name=pagination,proto3\" json:\"pagination,omitempty\"`\n}\n\nfunc (m *QuerySupersResponse) Reset()         { *m = QuerySupersResponse{} }\nfunc (m *QuerySupersResponse) String() string { return proto.CompactTextString(m) }\nfunc (*QuerySupersResponse) ProtoMessage()    {}\nfunc (*QuerySupersResponse) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_49841d96de191552, []int{1}\n}\nfunc (m *QuerySupersResponse) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *QuerySupersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_QuerySupersResponse.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *QuerySupersResponse) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_QuerySupersResponse.Merge(m, src)\n}\nfunc (m *QuerySupersResponse) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *QuerySupersResponse) XXX_DiscardUnknown() {\n\txxx_messageInfo_QuerySupersResponse.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_QuerySupersResponse proto.InternalMessageInfo\n\nfunc (m *QuerySupersResponse) GetSupers() []Super {\n\tif m != nil {\n\t\treturn m.Supers\n\t}\n\treturn nil\n}\n\nfunc (m *QuerySupersResponse) GetPagination() *query.PageResponse {\n\tif m != nil {\n\t\treturn m.Pagination\n\t}\n\treturn nil\n}\n\nfunc init() {\n\tproto.RegisterType((*QuerySupersRequest)(nil), \"irishub.guardian.QuerySupersRequest\")\n\tproto.RegisterType((*QuerySupersResponse)(nil), \"irishub.guardian.QuerySupersResponse\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/guardian/query.proto\", fileDescriptor_49841d96de191552) }\n\nvar fileDescriptor_49841d96de191552 = []byte{\n\t// 355 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x91, 0x3d, 0x4f, 0x3a, 0x31,\n\t0x1c, 0xc7, 0xaf, 0xfc, 0xff, 0x32, 0x94, 0xc5, 0x54, 0x13, 0xc9, 0x85, 0x1c, 0x84, 0xf8, 0x40,\n\t0x1c, 0xda, 0x80, 0xf8, 0x06, 0x18, 0x74, 0x33, 0x8a, 0x9b, 0x71, 0xe9, 0x41, 0x53, 0x9b, 0x40,\n\t0x7b, 0x5c, 0x7b, 0x18, 0x36, 0xe3, 0x2b, 0x30, 0x31, 0xbe, 0x27, 0x46, 0x12, 0x17, 0x27, 0x63,\n\t0xc0, 0x17, 0x62, 0xae, 0x3d, 0x04, 0xbc, 0x81, 0xad, 0xe9, 0xef, 0xf3, 0x7d, 0x68, 0x7f, 0xb0,\n\t0x22, 0x62, 0xa1, 0x1f, 0x92, 0x90, 0xf0, 0x84, 0xc6, 0x7d, 0x41, 0x25, 0x19, 0x25, 0x2c, 0x9e,\n\t0xe0, 0x28, 0x56, 0x46, 0xa1, 0xdd, 0x6c, 0x8a, 0x97, 0x53, 0x7f, 0x9f, 0x2b, 0xae, 0xec, 0x90,\n\t0xa4, 0x27, 0xc7, 0xf9, 0xd5, 0x9c, 0xcb, 0xf2, 0x90, 0x01, 0x15, 0xae, 0x14, 0x1f, 0x30, 0x42,\n\t0x23, 0x41, 0xa8, 0x94, 0xca, 0x50, 0x23, 0x94, 0xd4, 0xd9, 0xf4, 0xb4, 0xa7, 0xf4, 0x50, 0x69,\n\t0x12, 0x52, 0xcd, 0x5c, 0x3e, 0x19, 0x37, 0x43, 0x66, 0x68, 0x93, 0x44, 0x94, 0x0b, 0x69, 0x61,\n\t0xc7, 0xd6, 0xef, 0x21, 0xba, 0x49, 0x89, 0xdb, 0x24, 0x62, 0xb1, 0xee, 0xb2, 0x51, 0xc2, 0xb4,\n\t0x41, 0x17, 0x10, 0xae, 0xc8, 0x32, 0xa8, 0x81, 0x46, 0xa9, 0x75, 0x8c, 0x9d, 0x2d, 0x4e, 0x6d,\n\t0xb1, 0x7b, 0x56, 0x66, 0x8b, 0xaf, 0x29, 0x67, 0x99, 0xb6, 0xbb, 0xa6, 0xac, 0xbf, 0x01, 0xb8,\n\t0xb7, 0x61, 0xaf, 0x23, 0x25, 0x35, 0x43, 0xe7, 0xb0, 0xa8, 0xed, 0x4d, 0x19, 0xd4, 0xfe, 0x35,\n\t0x4a, 0xad, 0x03, 0xfc, 0xf7, 0x67, 0xb0, 0x55, 0x74, 0xfe, 0x4f, 0x3f, 0xab, 0x5e, 0x37, 0x83,\n\t0xd1, 0xe5, 0x46, 0xad, 0x82, 0xad, 0x75, 0xb2, 0xb5, 0x96, 0xcb, 0x5c, 0xef, 0xd5, 0x7a, 0x02,\n\t0x70, 0xc7, 0xf6, 0x42, 0x8f, 0xb0, 0xe8, 0xba, 0xa1, 0xc3, 0x7c, 0x87, 0xfc, 0xcf, 0xf8, 0x47,\n\t0x5b, 0x28, 0x17, 0x56, 0xaf, 0x3d, 0xbf, 0x7f, 0xbf, 0x16, 0x7c, 0x54, 0x26, 0xb9, 0x55, 0xba,\n\t0xb7, 0x74, 0xae, 0xa6, 0xf3, 0x00, 0xcc, 0xe6, 0x01, 0xf8, 0x9a, 0x07, 0xe0, 0x65, 0x11, 0x78,\n\t0xb3, 0x45, 0xe0, 0x7d, 0x2c, 0x02, 0xef, 0xae, 0xcd, 0x85, 0x49, 0x03, 0x7a, 0x6a, 0x68, 0xd5,\n\t0x92, 0x99, 0x5f, 0x97, 0x71, 0x9b, 0x0c, 0x55, 0x3f, 0x19, 0x30, 0xbd, 0x32, 0x34, 0x93, 0x88,\n\t0xe9, 0xb0, 0x68, 0xf7, 0x79, 0xf6, 0x13, 0x00, 0x00, 0xff, 0xff, 0xa1, 0x1f, 0x52, 0xa4, 0x82,\n\t0x02, 0x00, 0x00,\n}\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ context.Context\nvar _ grpc.ClientConn\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the grpc package it is being compiled against.\nconst _ = grpc.SupportPackageIsVersion4\n\n// QueryClient is the client API for Query service.\n//\n// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.\ntype QueryClient interface {\n\t// Supers returns all Supers\n\tSupers(ctx context.Context, in *QuerySupersRequest, opts ...grpc.CallOption) (*QuerySupersResponse, error)\n}\n\ntype queryClient struct {\n\tcc grpc1.ClientConn\n}\n\nfunc NewQueryClient(cc grpc1.ClientConn) QueryClient {\n\treturn &queryClient{cc}\n}\n\nfunc (c *queryClient) Supers(ctx context.Context, in *QuerySupersRequest, opts ...grpc.CallOption) (*QuerySupersResponse, error) {\n\tout := new(QuerySupersResponse)\n\terr := c.cc.Invoke(ctx, \"/irishub.guardian.Query/Supers\", in, out, opts...)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn out, nil\n}\n\n// QueryServer is the server API for Query service.\ntype QueryServer interface {\n\t// Supers returns all Supers\n\tSupers(context.Context, *QuerySupersRequest) (*QuerySupersResponse, error)\n}\n\n// UnimplementedQueryServer can be embedded to have forward compatible implementations.\ntype UnimplementedQueryServer struct {\n}\n\nfunc (*UnimplementedQueryServer) Supers(ctx context.Context, req *QuerySupersRequest) (*QuerySupersResponse, error) {\n\treturn nil, status.Errorf(codes.Unimplemented, \"method Supers not implemented\")\n}\n\nfunc RegisterQueryServer(s grpc1.Server, srv QueryServer) {\n\ts.RegisterService(&_Query_serviceDesc, srv)\n}\n\nfunc _Query_Supers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {\n\tin := new(QuerySupersRequest)\n\tif err := dec(in); err != nil {\n\t\treturn nil, err\n\t}\n\tif interceptor == nil {\n\t\treturn srv.(QueryServer).Supers(ctx, in)\n\t}\n\tinfo := &grpc.UnaryServerInfo{\n\t\tServer:     srv,\n\t\tFullMethod: \"/irishub.guardian.Query/Supers\",\n\t}\n\thandler := func(ctx context.Context, req interface{}) (interface{}, error) {\n\t\treturn srv.(QueryServer).Supers(ctx, req.(*QuerySupersRequest))\n\t}\n\treturn interceptor(ctx, in, info, handler)\n}\n\nvar _Query_serviceDesc = grpc.ServiceDesc{\n\tServiceName: \"irishub.guardian.Query\",\n\tHandlerType: (*QueryServer)(nil),\n\tMethods: []grpc.MethodDesc{\n\t\t{\n\t\t\tMethodName: \"Supers\",\n\t\t\tHandler:    _Query_Supers_Handler,\n\t\t},\n\t},\n\tStreams:  []grpc.StreamDesc{},\n\tMetadata: \"irishub/guardian/query.proto\",\n}\n\nfunc (m *QuerySupersRequest) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *QuerySupersRequest) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *QuerySupersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif m.Pagination != nil {\n\t\t{\n\t\t\tsize, err := m.Pagination.MarshalToSizedBuffer(dAtA[:i])\n\t\t\tif err != nil {\n\t\t\t\treturn 0, err\n\t\t\t}\n\t\t\ti -= size\n\t\t\ti = encodeVarintQuery(dAtA, i, uint64(size))\n\t\t}\n\t\ti--\n\t\tdAtA[i] = 0xa\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *QuerySupersResponse) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *QuerySupersResponse) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *QuerySupersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif m.Pagination != nil {\n\t\t{\n\t\t\tsize, err := m.Pagination.MarshalToSizedBuffer(dAtA[:i])\n\t\t\tif err != nil {\n\t\t\t\treturn 0, err\n\t\t\t}\n\t\t\ti -= size\n\t\t\ti = encodeVarintQuery(dAtA, i, uint64(size))\n\t\t}\n\t\ti--\n\t\tdAtA[i] = 0x12\n\t}\n\tif len(m.Supers) > 0 {\n\t\tfor iNdEx := len(m.Supers) - 1; iNdEx >= 0; iNdEx-- {\n\t\t\t{\n\t\t\t\tsize, err := m.Supers[iNdEx].MarshalToSizedBuffer(dAtA[:i])\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn 0, err\n\t\t\t\t}\n\t\t\t\ti -= size\n\t\t\t\ti = encodeVarintQuery(dAtA, i, uint64(size))\n\t\t\t}\n\t\t\ti--\n\t\t\tdAtA[i] = 0xa\n\t\t}\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintQuery(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovQuery(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *QuerySupersRequest) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tif m.Pagination != nil {\n\t\tl = m.Pagination.Size()\n\t\tn += 1 + l + sovQuery(uint64(l))\n\t}\n\treturn n\n}\n\nfunc (m *QuerySupersResponse) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tif len(m.Supers) > 0 {\n\t\tfor _, e := range m.Supers {\n\t\t\tl = e.Size()\n\t\t\tn += 1 + l + sovQuery(uint64(l))\n\t\t}\n\t}\n\tif m.Pagination != nil {\n\t\tl = m.Pagination.Size()\n\t\tn += 1 + l + sovQuery(uint64(l))\n\t}\n\treturn n\n}\n\nfunc sovQuery(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozQuery(x uint64) (n int) {\n\treturn sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *QuerySupersRequest) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: QuerySupersRequest: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: QuerySupersRequest: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Pagination\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif m.Pagination == nil {\n\t\t\t\tm.Pagination = &query.PageRequest{}\n\t\t\t}\n\t\t\tif err := m.Pagination.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipQuery(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *QuerySupersResponse) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: QuerySupersResponse: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: QuerySupersResponse: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Supers\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Supers = append(m.Supers, Super{})\n\t\t\tif err := m.Supers[len(m.Supers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Pagination\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif m.Pagination == nil {\n\t\t\t\tm.Pagination = &query.PageResponse{}\n\t\t\t}\n\t\t\tif err := m.Pagination.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipQuery(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipQuery(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowQuery\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupQuery\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthQuery\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthQuery        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowQuery          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupQuery = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/guardian/types/query.pb.gw.go",
    "content": "// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT.\n// source: irishub/guardian/query.proto\n\n/*\nPackage types is a reverse proxy.\n\nIt translates gRPC into RESTful JSON APIs.\n*/\npackage types\n\nimport (\n\t\"context\"\n\t\"io\"\n\t\"net/http\"\n\n\t\"github.com/golang/protobuf/descriptor\"\n\t\"github.com/golang/protobuf/proto\"\n\t\"github.com/grpc-ecosystem/grpc-gateway/runtime\"\n\t\"github.com/grpc-ecosystem/grpc-gateway/utilities\"\n\t\"google.golang.org/grpc\"\n\t\"google.golang.org/grpc/codes\"\n\t\"google.golang.org/grpc/grpclog\"\n\t\"google.golang.org/grpc/metadata\"\n\t\"google.golang.org/grpc/status\"\n)\n\n// Suppress \"imported and not used\" errors\nvar _ codes.Code\nvar _ io.Reader\nvar _ status.Status\nvar _ = runtime.String\nvar _ = utilities.NewDoubleArray\nvar _ = descriptor.ForMessage\nvar _ = metadata.Join\n\nvar (\n\tfilter_Query_Supers_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)}\n)\n\nfunc request_Query_Supers_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {\n\tvar protoReq QuerySupersRequest\n\tvar metadata runtime.ServerMetadata\n\n\tif err := req.ParseForm(); err != nil {\n\t\treturn nil, metadata, status.Errorf(codes.InvalidArgument, \"%v\", err)\n\t}\n\tif err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_Supers_0); err != nil {\n\t\treturn nil, metadata, status.Errorf(codes.InvalidArgument, \"%v\", err)\n\t}\n\n\tmsg, err := client.Supers(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))\n\treturn msg, metadata, err\n\n}\n\nfunc local_request_Query_Supers_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {\n\tvar protoReq QuerySupersRequest\n\tvar metadata runtime.ServerMetadata\n\n\tif err := req.ParseForm(); err != nil {\n\t\treturn nil, metadata, status.Errorf(codes.InvalidArgument, \"%v\", err)\n\t}\n\tif err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_Supers_0); err != nil {\n\t\treturn nil, metadata, status.Errorf(codes.InvalidArgument, \"%v\", err)\n\t}\n\n\tmsg, err := server.Supers(ctx, &protoReq)\n\treturn msg, metadata, err\n\n}\n\n// RegisterQueryHandlerServer registers the http handlers for service Query to \"mux\".\n// UnaryRPC     :call QueryServer directly.\n// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906.\n// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterQueryHandlerFromEndpoint instead.\nfunc RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, server QueryServer) error {\n\n\tmux.Handle(\"GET\", pattern_Query_Supers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {\n\t\tctx, cancel := context.WithCancel(req.Context())\n\t\tdefer cancel()\n\t\tvar stream runtime.ServerTransportStream\n\t\tctx = grpc.NewContextWithServerTransportStream(ctx, &stream)\n\t\tinboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)\n\t\trctx, err := runtime.AnnotateIncomingContext(ctx, mux, req)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\t\tresp, md, err := local_request_Query_Supers_0(rctx, inboundMarshaler, server, req, pathParams)\n\t\tmd.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())\n\t\tctx = runtime.NewServerMetadataContext(ctx, md)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\n\t\tforward_Query_Supers_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)\n\n\t})\n\n\treturn nil\n}\n\n// RegisterQueryHandlerFromEndpoint is same as RegisterQueryHandler but\n// automatically dials to \"endpoint\" and closes the connection when \"ctx\" gets done.\nfunc RegisterQueryHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) {\n\tconn, err := grpc.Dial(endpoint, opts...)\n\tif err != nil {\n\t\treturn err\n\t}\n\tdefer func() {\n\t\tif err != nil {\n\t\t\tif cerr := conn.Close(); cerr != nil {\n\t\t\t\tgrpclog.Infof(\"Failed to close conn to %s: %v\", endpoint, cerr)\n\t\t\t}\n\t\t\treturn\n\t\t}\n\t\tgo func() {\n\t\t\t<-ctx.Done()\n\t\t\tif cerr := conn.Close(); cerr != nil {\n\t\t\t\tgrpclog.Infof(\"Failed to close conn to %s: %v\", endpoint, cerr)\n\t\t\t}\n\t\t}()\n\t}()\n\n\treturn RegisterQueryHandler(ctx, mux, conn)\n}\n\n// RegisterQueryHandler registers the http handlers for service Query to \"mux\".\n// The handlers forward requests to the grpc endpoint over \"conn\".\nfunc RegisterQueryHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error {\n\treturn RegisterQueryHandlerClient(ctx, mux, NewQueryClient(conn))\n}\n\n// RegisterQueryHandlerClient registers the http handlers for service Query\n// to \"mux\". The handlers forward requests to the grpc endpoint over the given implementation of \"QueryClient\".\n// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in \"QueryClient\"\n// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in\n// \"QueryClient\" to call the correct interceptors.\nfunc RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, client QueryClient) error {\n\n\tmux.Handle(\"GET\", pattern_Query_Supers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {\n\t\tctx, cancel := context.WithCancel(req.Context())\n\t\tdefer cancel()\n\t\tinboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)\n\t\trctx, err := runtime.AnnotateContext(ctx, mux, req)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\t\tresp, md, err := request_Query_Supers_0(rctx, inboundMarshaler, client, req, pathParams)\n\t\tctx = runtime.NewServerMetadataContext(ctx, md)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\n\t\tforward_Query_Supers_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)\n\n\t})\n\n\treturn nil\n}\n\nvar (\n\tpattern_Query_Supers_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{\"irishub\", \"guardian\", \"supers\"}, \"\", runtime.AssumeColonVerbOpt(false)))\n)\n\nvar (\n\tforward_Query_Supers_0 = runtime.ForwardResponseMessage\n)\n"
  },
  {
    "path": "modules/guardian/types/tx.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/guardian/tx.proto\n\npackage types\n\nimport (\n\tcontext \"context\"\n\tfmt \"fmt\"\n\t_ \"github.com/cosmos/cosmos-proto\"\n\t_ \"github.com/cosmos/cosmos-sdk/types/msgservice\"\n\tgrpc1 \"github.com/cosmos/gogoproto/grpc\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\tgrpc \"google.golang.org/grpc\"\n\tcodes \"google.golang.org/grpc/codes\"\n\tstatus \"google.golang.org/grpc/status\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// MsgAddSuper defines the properties of add super account message\ntype MsgAddSuper struct {\n\tDescription string `protobuf:\"bytes,1,opt,name=description,proto3\" json:\"description,omitempty\"`\n\tAddress     string `protobuf:\"bytes,2,opt,name=address,proto3\" json:\"address,omitempty\"`\n\tAddedBy     string `protobuf:\"bytes,3,opt,name=added_by,json=addedBy,proto3\" json:\"added_by,omitempty\"`\n}\n\nfunc (m *MsgAddSuper) Reset()         { *m = MsgAddSuper{} }\nfunc (m *MsgAddSuper) String() string { return proto.CompactTextString(m) }\nfunc (*MsgAddSuper) ProtoMessage()    {}\nfunc (*MsgAddSuper) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_02bb99d7e79743a5, []int{0}\n}\nfunc (m *MsgAddSuper) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *MsgAddSuper) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_MsgAddSuper.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *MsgAddSuper) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_MsgAddSuper.Merge(m, src)\n}\nfunc (m *MsgAddSuper) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *MsgAddSuper) XXX_DiscardUnknown() {\n\txxx_messageInfo_MsgAddSuper.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_MsgAddSuper proto.InternalMessageInfo\n\nfunc (m *MsgAddSuper) GetDescription() string {\n\tif m != nil {\n\t\treturn m.Description\n\t}\n\treturn \"\"\n}\n\nfunc (m *MsgAddSuper) GetAddress() string {\n\tif m != nil {\n\t\treturn m.Address\n\t}\n\treturn \"\"\n}\n\nfunc (m *MsgAddSuper) GetAddedBy() string {\n\tif m != nil {\n\t\treturn m.AddedBy\n\t}\n\treturn \"\"\n}\n\n// MsgAddSuperResponse defines the Msg/AddSuper response type\ntype MsgAddSuperResponse struct {\n}\n\nfunc (m *MsgAddSuperResponse) Reset()         { *m = MsgAddSuperResponse{} }\nfunc (m *MsgAddSuperResponse) String() string { return proto.CompactTextString(m) }\nfunc (*MsgAddSuperResponse) ProtoMessage()    {}\nfunc (*MsgAddSuperResponse) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_02bb99d7e79743a5, []int{1}\n}\nfunc (m *MsgAddSuperResponse) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *MsgAddSuperResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_MsgAddSuperResponse.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *MsgAddSuperResponse) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_MsgAddSuperResponse.Merge(m, src)\n}\nfunc (m *MsgAddSuperResponse) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *MsgAddSuperResponse) XXX_DiscardUnknown() {\n\txxx_messageInfo_MsgAddSuperResponse.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_MsgAddSuperResponse proto.InternalMessageInfo\n\n// MsgDeleteSuper defines the properties of delete super account message\ntype MsgDeleteSuper struct {\n\tAddress   string `protobuf:\"bytes,2,opt,name=address,proto3\" json:\"address,omitempty\"`\n\tDeletedBy string `protobuf:\"bytes,3,opt,name=deleted_by,json=deletedBy,proto3\" json:\"deleted_by,omitempty\"`\n}\n\nfunc (m *MsgDeleteSuper) Reset()         { *m = MsgDeleteSuper{} }\nfunc (m *MsgDeleteSuper) String() string { return proto.CompactTextString(m) }\nfunc (*MsgDeleteSuper) ProtoMessage()    {}\nfunc (*MsgDeleteSuper) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_02bb99d7e79743a5, []int{2}\n}\nfunc (m *MsgDeleteSuper) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *MsgDeleteSuper) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_MsgDeleteSuper.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *MsgDeleteSuper) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_MsgDeleteSuper.Merge(m, src)\n}\nfunc (m *MsgDeleteSuper) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *MsgDeleteSuper) XXX_DiscardUnknown() {\n\txxx_messageInfo_MsgDeleteSuper.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_MsgDeleteSuper proto.InternalMessageInfo\n\nfunc (m *MsgDeleteSuper) GetAddress() string {\n\tif m != nil {\n\t\treturn m.Address\n\t}\n\treturn \"\"\n}\n\nfunc (m *MsgDeleteSuper) GetDeletedBy() string {\n\tif m != nil {\n\t\treturn m.DeletedBy\n\t}\n\treturn \"\"\n}\n\n// MsgDeleteSuperResponse defines the Msg/DeleteSuper response type\ntype MsgDeleteSuperResponse struct {\n}\n\nfunc (m *MsgDeleteSuperResponse) Reset()         { *m = MsgDeleteSuperResponse{} }\nfunc (m *MsgDeleteSuperResponse) String() string { return proto.CompactTextString(m) }\nfunc (*MsgDeleteSuperResponse) ProtoMessage()    {}\nfunc (*MsgDeleteSuperResponse) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_02bb99d7e79743a5, []int{3}\n}\nfunc (m *MsgDeleteSuperResponse) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *MsgDeleteSuperResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_MsgDeleteSuperResponse.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *MsgDeleteSuperResponse) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_MsgDeleteSuperResponse.Merge(m, src)\n}\nfunc (m *MsgDeleteSuperResponse) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *MsgDeleteSuperResponse) XXX_DiscardUnknown() {\n\txxx_messageInfo_MsgDeleteSuperResponse.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_MsgDeleteSuperResponse proto.InternalMessageInfo\n\nfunc init() {\n\tproto.RegisterType((*MsgAddSuper)(nil), \"irishub.guardian.MsgAddSuper\")\n\tproto.RegisterType((*MsgAddSuperResponse)(nil), \"irishub.guardian.MsgAddSuperResponse\")\n\tproto.RegisterType((*MsgDeleteSuper)(nil), \"irishub.guardian.MsgDeleteSuper\")\n\tproto.RegisterType((*MsgDeleteSuperResponse)(nil), \"irishub.guardian.MsgDeleteSuperResponse\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/guardian/tx.proto\", fileDescriptor_02bb99d7e79743a5) }\n\nvar fileDescriptor_02bb99d7e79743a5 = []byte{\n\t// 374 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x52, 0x4b, 0x4b, 0xc3, 0x40,\n\t0x10, 0xee, 0x5a, 0xd4, 0x76, 0x8b, 0x0f, 0xe2, 0x2b, 0x0d, 0x18, 0x4a, 0x40, 0x28, 0x05, 0xb3,\n\t0x68, 0x0b, 0x42, 0x6f, 0x0d, 0x5e, 0x2b, 0xd2, 0x9e, 0xf4, 0x52, 0xd2, 0xee, 0x12, 0x03, 0x4d,\n\t0x36, 0x64, 0x36, 0xc5, 0xdc, 0xc4, 0xbb, 0xe0, 0x4f, 0xe9, 0xc1, 0x8b, 0xff, 0xc0, 0x63, 0xf1,\n\t0xe4, 0x51, 0xda, 0x43, 0xff, 0x86, 0x24, 0x69, 0x4a, 0x14, 0x5f, 0xa7, 0x65, 0xf6, 0x7b, 0xcc,\n\t0x37, 0xbb, 0x83, 0xcb, 0xb6, 0x6f, 0xc3, 0x4d, 0xd0, 0x27, 0x56, 0x60, 0xfa, 0xd4, 0x36, 0x5d,\n\t0x22, 0x6e, 0x75, 0xcf, 0xe7, 0x82, 0x4b, 0xdb, 0x0b, 0x48, 0x4f, 0x21, 0xe5, 0x60, 0xc0, 0xc1,\n\t0xe1, 0x40, 0x1c, 0xb0, 0xc8, 0xe8, 0x24, 0x3a, 0x12, 0xaa, 0x52, 0x4e, 0x80, 0x5e, 0x5c, 0x91,\n\t0xa4, 0x48, 0x20, 0xed, 0x01, 0xe1, 0x52, 0x1b, 0xac, 0x16, 0xa5, 0xdd, 0xc0, 0x63, 0xbe, 0x54,\n\t0xc1, 0x25, 0xca, 0x60, 0xe0, 0xdb, 0x9e, 0xb0, 0xb9, 0x2b, 0xa3, 0x0a, 0xaa, 0x16, 0x3b, 0xd9,\n\t0x2b, 0x49, 0xc6, 0xeb, 0x26, 0xa5, 0x3e, 0x03, 0x90, 0x57, 0x62, 0x34, 0x2d, 0xa5, 0x3a, 0x2e,\n\t0x98, 0x94, 0x32, 0xda, 0xeb, 0x87, 0x72, 0x3e, 0x82, 0x0c, 0xf9, 0xf5, 0xe9, 0x78, 0x77, 0xd1,\n\t0xaf, 0x95, 0xb0, 0xba, 0xc2, 0xb7, 0x5d, 0x2b, 0x16, 0x31, 0x6a, 0x84, 0xcd, 0x8d, 0xfb, 0xf9,\n\t0xb8, 0xb6, 0xd4, 0x69, 0x7b, 0x78, 0x27, 0x13, 0xa7, 0xc3, 0xc0, 0xe3, 0x2e, 0x30, 0x4d, 0xe0,\n\t0xcd, 0x36, 0x58, 0xe7, 0x6c, 0xc8, 0x04, 0x4b, 0x82, 0xfe, 0x1c, 0xe3, 0x0c, 0x63, 0x1a, 0x13,\n\t0xff, 0x15, 0xa4, 0xb8, 0xe0, 0x1a, 0x61, 0x73, 0x2b, 0x8a, 0x92, 0xd1, 0x6a, 0x32, 0xde, 0xff,\n\t0xdc, 0x35, 0xcd, 0x73, 0xfa, 0x8c, 0x70, 0xbe, 0x0d, 0x96, 0x74, 0x89, 0x0b, 0xcb, 0xa7, 0x3b,\n\t0xd4, 0xbf, 0xfe, 0x88, 0x9e, 0x19, 0x45, 0x39, 0xfa, 0x15, 0x4e, 0x9d, 0xa5, 0x2b, 0x5c, 0xca,\n\t0x8e, 0x59, 0xf9, 0x56, 0x95, 0x61, 0x28, 0xd5, 0xbf, 0x18, 0xa9, 0xb5, 0xb2, 0x7a, 0x37, 0x1f,\n\t0xd7, 0x90, 0x71, 0xf1, 0x32, 0x55, 0xd1, 0x64, 0xaa, 0xa2, 0xf7, 0xa9, 0x8a, 0x1e, 0x67, 0x6a,\n\t0x6e, 0x32, 0x53, 0x73, 0x6f, 0x33, 0x35, 0x77, 0xdd, 0xb0, 0x6c, 0x11, 0x19, 0x0d, 0xb8, 0x43,\n\t0x22, 0x53, 0x97, 0x09, 0x92, 0x2e, 0xe0, 0xa8, 0x41, 0x1c, 0x4e, 0x83, 0x21, 0x83, 0xcc, 0x2e,\n\t0x86, 0x1e, 0x83, 0xfe, 0x5a, 0xbc, 0x49, 0xf5, 0x8f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa0, 0x7a,\n\t0xef, 0xf0, 0xac, 0x02, 0x00, 0x00,\n}\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ context.Context\nvar _ grpc.ClientConn\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the grpc package it is being compiled against.\nconst _ = grpc.SupportPackageIsVersion4\n\n// MsgClient is the client API for Msg service.\n//\n// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.\ntype MsgClient interface {\n\t// AddSuper defines a method for adding a super account\n\tAddSuper(ctx context.Context, in *MsgAddSuper, opts ...grpc.CallOption) (*MsgAddSuperResponse, error)\n\t// DeleteSuper defines a method for deleting a super account\n\tDeleteSuper(ctx context.Context, in *MsgDeleteSuper, opts ...grpc.CallOption) (*MsgDeleteSuperResponse, error)\n}\n\ntype msgClient struct {\n\tcc grpc1.ClientConn\n}\n\nfunc NewMsgClient(cc grpc1.ClientConn) MsgClient {\n\treturn &msgClient{cc}\n}\n\nfunc (c *msgClient) AddSuper(ctx context.Context, in *MsgAddSuper, opts ...grpc.CallOption) (*MsgAddSuperResponse, error) {\n\tout := new(MsgAddSuperResponse)\n\terr := c.cc.Invoke(ctx, \"/irishub.guardian.Msg/AddSuper\", in, out, opts...)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn out, nil\n}\n\nfunc (c *msgClient) DeleteSuper(ctx context.Context, in *MsgDeleteSuper, opts ...grpc.CallOption) (*MsgDeleteSuperResponse, error) {\n\tout := new(MsgDeleteSuperResponse)\n\terr := c.cc.Invoke(ctx, \"/irishub.guardian.Msg/DeleteSuper\", in, out, opts...)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn out, nil\n}\n\n// MsgServer is the server API for Msg service.\ntype MsgServer interface {\n\t// AddSuper defines a method for adding a super account\n\tAddSuper(context.Context, *MsgAddSuper) (*MsgAddSuperResponse, error)\n\t// DeleteSuper defines a method for deleting a super account\n\tDeleteSuper(context.Context, *MsgDeleteSuper) (*MsgDeleteSuperResponse, error)\n}\n\n// UnimplementedMsgServer can be embedded to have forward compatible implementations.\ntype UnimplementedMsgServer struct {\n}\n\nfunc (*UnimplementedMsgServer) AddSuper(ctx context.Context, req *MsgAddSuper) (*MsgAddSuperResponse, error) {\n\treturn nil, status.Errorf(codes.Unimplemented, \"method AddSuper not implemented\")\n}\nfunc (*UnimplementedMsgServer) DeleteSuper(ctx context.Context, req *MsgDeleteSuper) (*MsgDeleteSuperResponse, error) {\n\treturn nil, status.Errorf(codes.Unimplemented, \"method DeleteSuper not implemented\")\n}\n\nfunc RegisterMsgServer(s grpc1.Server, srv MsgServer) {\n\ts.RegisterService(&_Msg_serviceDesc, srv)\n}\n\nfunc _Msg_AddSuper_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {\n\tin := new(MsgAddSuper)\n\tif err := dec(in); err != nil {\n\t\treturn nil, err\n\t}\n\tif interceptor == nil {\n\t\treturn srv.(MsgServer).AddSuper(ctx, in)\n\t}\n\tinfo := &grpc.UnaryServerInfo{\n\t\tServer:     srv,\n\t\tFullMethod: \"/irishub.guardian.Msg/AddSuper\",\n\t}\n\thandler := func(ctx context.Context, req interface{}) (interface{}, error) {\n\t\treturn srv.(MsgServer).AddSuper(ctx, req.(*MsgAddSuper))\n\t}\n\treturn interceptor(ctx, in, info, handler)\n}\n\nfunc _Msg_DeleteSuper_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {\n\tin := new(MsgDeleteSuper)\n\tif err := dec(in); err != nil {\n\t\treturn nil, err\n\t}\n\tif interceptor == nil {\n\t\treturn srv.(MsgServer).DeleteSuper(ctx, in)\n\t}\n\tinfo := &grpc.UnaryServerInfo{\n\t\tServer:     srv,\n\t\tFullMethod: \"/irishub.guardian.Msg/DeleteSuper\",\n\t}\n\thandler := func(ctx context.Context, req interface{}) (interface{}, error) {\n\t\treturn srv.(MsgServer).DeleteSuper(ctx, req.(*MsgDeleteSuper))\n\t}\n\treturn interceptor(ctx, in, info, handler)\n}\n\nvar _Msg_serviceDesc = grpc.ServiceDesc{\n\tServiceName: \"irishub.guardian.Msg\",\n\tHandlerType: (*MsgServer)(nil),\n\tMethods: []grpc.MethodDesc{\n\t\t{\n\t\t\tMethodName: \"AddSuper\",\n\t\t\tHandler:    _Msg_AddSuper_Handler,\n\t\t},\n\t\t{\n\t\t\tMethodName: \"DeleteSuper\",\n\t\t\tHandler:    _Msg_DeleteSuper_Handler,\n\t\t},\n\t},\n\tStreams:  []grpc.StreamDesc{},\n\tMetadata: \"irishub/guardian/tx.proto\",\n}\n\nfunc (m *MsgAddSuper) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *MsgAddSuper) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *MsgAddSuper) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif len(m.AddedBy) > 0 {\n\t\ti -= len(m.AddedBy)\n\t\tcopy(dAtA[i:], m.AddedBy)\n\t\ti = encodeVarintTx(dAtA, i, uint64(len(m.AddedBy)))\n\t\ti--\n\t\tdAtA[i] = 0x1a\n\t}\n\tif len(m.Address) > 0 {\n\t\ti -= len(m.Address)\n\t\tcopy(dAtA[i:], m.Address)\n\t\ti = encodeVarintTx(dAtA, i, uint64(len(m.Address)))\n\t\ti--\n\t\tdAtA[i] = 0x12\n\t}\n\tif len(m.Description) > 0 {\n\t\ti -= len(m.Description)\n\t\tcopy(dAtA[i:], m.Description)\n\t\ti = encodeVarintTx(dAtA, i, uint64(len(m.Description)))\n\t\ti--\n\t\tdAtA[i] = 0xa\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *MsgAddSuperResponse) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *MsgAddSuperResponse) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *MsgAddSuperResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *MsgDeleteSuper) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *MsgDeleteSuper) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *MsgDeleteSuper) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif len(m.DeletedBy) > 0 {\n\t\ti -= len(m.DeletedBy)\n\t\tcopy(dAtA[i:], m.DeletedBy)\n\t\ti = encodeVarintTx(dAtA, i, uint64(len(m.DeletedBy)))\n\t\ti--\n\t\tdAtA[i] = 0x1a\n\t}\n\tif len(m.Address) > 0 {\n\t\ti -= len(m.Address)\n\t\tcopy(dAtA[i:], m.Address)\n\t\ti = encodeVarintTx(dAtA, i, uint64(len(m.Address)))\n\t\ti--\n\t\tdAtA[i] = 0x12\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *MsgDeleteSuperResponse) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *MsgDeleteSuperResponse) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *MsgDeleteSuperResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintTx(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovTx(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *MsgAddSuper) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = len(m.Description)\n\tif l > 0 {\n\t\tn += 1 + l + sovTx(uint64(l))\n\t}\n\tl = len(m.Address)\n\tif l > 0 {\n\t\tn += 1 + l + sovTx(uint64(l))\n\t}\n\tl = len(m.AddedBy)\n\tif l > 0 {\n\t\tn += 1 + l + sovTx(uint64(l))\n\t}\n\treturn n\n}\n\nfunc (m *MsgAddSuperResponse) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\treturn n\n}\n\nfunc (m *MsgDeleteSuper) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = len(m.Address)\n\tif l > 0 {\n\t\tn += 1 + l + sovTx(uint64(l))\n\t}\n\tl = len(m.DeletedBy)\n\tif l > 0 {\n\t\tn += 1 + l + sovTx(uint64(l))\n\t}\n\treturn n\n}\n\nfunc (m *MsgDeleteSuperResponse) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\treturn n\n}\n\nfunc sovTx(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozTx(x uint64) (n int) {\n\treturn sovTx(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *MsgAddSuper) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: MsgAddSuper: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: MsgAddSuper: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Description\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Description = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Address\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Address = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 3:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field AddedBy\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.AddedBy = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipTx(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *MsgAddSuperResponse) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: MsgAddSuperResponse: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: MsgAddSuperResponse: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipTx(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *MsgDeleteSuper) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: MsgDeleteSuper: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: MsgDeleteSuper: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Address\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Address = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 3:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field DeletedBy\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.DeletedBy = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipTx(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *MsgDeleteSuperResponse) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: MsgDeleteSuperResponse: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: MsgDeleteSuperResponse: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipTx(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipTx(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthTx\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupTx\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthTx\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthTx        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowTx          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupTx = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/guardian/types/types.go",
    "content": "package types\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pkg/errors\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n)\n\n// NewSuper constructs a super\nfunc NewSuper(description string, accountType AccountType, address, addedBy sdk.AccAddress) Super {\n\treturn Super{\n\t\tDescription: description,\n\t\tAccountType: accountType,\n\t\tAddress:     address.String(),\n\t\tAddedBy:     addedBy.String(),\n\t}\n}\n\n// Equal returns if the guardian is equal to specified guardian\nfunc (g Super) Equal(super Super) bool {\n\treturn g.Address == super.Address &&\n\t\tg.AddedBy == super.AddedBy &&\n\t\tg.Description == super.Description &&\n\t\tg.AccountType == super.AccountType\n}\n\n// AccountTypeFromString converts string to AccountType byte, Returns ff if invalid.\nfunc AccountTypeFromString(str string) (AccountType, error) {\n\tswitch str {\n\tcase \"Genesis\":\n\t\treturn Genesis, nil\n\tcase \"Ordinary\":\n\t\treturn Ordinary, nil\n\tdefault:\n\t\treturn AccountType(0xff), errors.Errorf(\"'%s' is not a valid account type\", str)\n\t}\n}\n\n// ValidAccountType returns true if the AccountType option is valid and false otherwise.\nfunc ValidAccountType(option AccountType) bool {\n\tif option == Genesis ||\n\t\toption == Ordinary {\n\t\treturn true\n\t}\n\treturn false\n}\n\n// Marshal needed for protobuf compatibility.\nfunc (at AccountType) Marshal() ([]byte, error) {\n\treturn []byte{byte(at)}, nil\n}\n\n// Unmarshal needed for protobuf compatibility.\nfunc (at *AccountType) Unmarshal(data []byte) error {\n\t*at = AccountType(data[0])\n\treturn nil\n}\n\n// Format implements the fmt.Formatter interface.\nfunc (at AccountType) Format(s fmt.State, verb rune) {\n\tswitch verb {\n\tcase 's':\n\t\ts.Write([]byte(at.String()))\n\tdefault:\n\t\ts.Write([]byte(fmt.Sprintf(\"%v\", byte(at))))\n\t}\n}\n"
  },
  {
    "path": "modules/internft/interface.go",
    "content": "package internft\n\nimport (\n\t\"context\"\n\n\tnftkeeper \"cosmossdk.io/x/nft/keeper\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\tnfttypes \"mods.irisnet.org/modules/nft/types\"\n)\n\ntype (\n\t// AccountKeeper defines the contract required for account APIs.\n\tAccountKeeper interface {\n\t\tNewAccountWithAddress(ctx context.Context, addr sdk.AccAddress) sdk.AccountI\n\t\t// Set an account in the store.\n\t\tSetAccount(context.Context, sdk.AccountI)\n\t\tGetModuleAddress(name string) sdk.AccAddress\n\t}\n\t// InterNftKeeper defines the ICS721 Keeper\n\tInterNftKeeper struct {\n\t\tnk  nftkeeper.Keeper\n\t\tcdc codec.Codec\n\t\tak  AccountKeeper\n\t\tcb  nfttypes.ClassBuilder\n\t\ttb  nfttypes.TokenBuilder\n\t}\n\n\tInterClass struct {\n\t\tID   string\n\t\tURI  string\n\t\tData string\n\t}\n\n\tInterToken struct {\n\t\tClassID string\n\t\tID      string\n\t\tURI     string\n\t\tData    string\n\t}\n)\n\nfunc (d InterClass) GetID() string      { return d.ID }\nfunc (d InterClass) GetURI() string     { return d.URI }\nfunc (d InterClass) GetData() string    { return d.Data }\nfunc (t InterToken) GetClassID() string { return t.ClassID }\nfunc (t InterToken) GetID() string      { return t.ID }\nfunc (t InterToken) GetURI() string     { return t.URI }\nfunc (t InterToken) GetData() string    { return t.Data }\n"
  },
  {
    "path": "modules/internft/keeper.go",
    "content": "package internft\n\nimport (\n\t\"cosmossdk.io/log\"\n\t\"cosmossdk.io/x/nft\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tcodectypes \"github.com/cosmos/cosmos-sdk/codec/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\tnfttransfer \"github.com/bianjieai/nft-transfer/types\"\n\n\tirismodnftkeeper \"mods.irisnet.org/modules/nft/keeper\"\n\t\"mods.irisnet.org/modules/nft/types\"\n)\n\n// NewInterNftKeeper creates a new ics721 Keeper instance\nfunc NewInterNftKeeper(cdc codec.Codec,\n\tk irismodnftkeeper.Keeper,\n\tak AccountKeeper,\n) InterNftKeeper {\n\treturn InterNftKeeper{\n\t\tnk:  k.NFTkeeper(),\n\t\tcdc: cdc,\n\t\tak:  ak,\n\t\tcb:  types.NewClassBuilder(cdc, ak.GetModuleAddress),\n\t\ttb:  types.NewTokenBuilder(cdc),\n\t}\n}\n\n// CreateOrUpdateClass implement the method of ICS721Keeper.CreateOrUpdateClass\nfunc (ik InterNftKeeper) CreateOrUpdateClass(ctx sdk.Context,\n\tclassID,\n\tclassURI,\n\tclassData string,\n) error {\n\tvar (\n\t\tclass nft.Class\n\t\terr   error\n\t)\n\tif len(classData) != 0 {\n\t\tclass, err = ik.cb.Build(classID, classURI, classData)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t} else {\n\t\tvar denomMetadata = &types.DenomMetadata{\n\t\t\tCreator:          ik.ak.GetModuleAddress(types.ModuleName).String(),\n\t\t\tMintRestricted:   true,\n\t\t\tUpdateRestricted: true,\n\t\t}\n\n\t\tmetadata, err := codectypes.NewAnyWithValue(denomMetadata)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tclass = nft.Class{\n\t\t\tId:   classID,\n\t\t\tUri:  classURI,\n\t\t\tData: metadata,\n\t\t}\n\t}\n\n\tif ik.nk.HasClass(ctx, classID) {\n\t\treturn ik.nk.UpdateClass(ctx, class)\n\t}\n\treturn ik.nk.SaveClass(ctx, class)\n}\n\n// Mint implement the method of ICS721Keeper.Mint\nfunc (ik InterNftKeeper) Mint(ctx sdk.Context,\n\tclassID,\n\ttokenID,\n\ttokenURI,\n\ttokenData string,\n\treceiver sdk.AccAddress,\n) error {\n\ttoken, err := ik.tb.Build(classID, tokenID, tokenURI, tokenData)\n\tif err != nil {\n\t\treturn err\n\t}\n\treturn ik.nk.Mint(ctx, token, receiver)\n}\n\n// Transfer implement the method of ICS721Keeper.Transfer\nfunc (ik InterNftKeeper) Transfer(\n\tctx sdk.Context,\n\tclassID,\n\ttokenID,\n\ttokenData string,\n\treceiver sdk.AccAddress,\n) error {\n\tif err := ik.nk.Transfer(ctx, classID, tokenID, receiver); err != nil {\n\t\treturn err\n\t}\n\tif len(tokenData) == 0 {\n\t\treturn nil\n\t}\n\tnft, _ := ik.nk.GetNFT(ctx, classID, tokenID)\n\ttoken, err := ik.tb.Build(classID, tokenID, nft.Uri, tokenData)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\treturn ik.nk.Update(ctx, token)\n}\n\n// GetClass implement the method of ICS721Keeper.GetClass\nfunc (ik InterNftKeeper) GetClass(ctx sdk.Context, classID string) (nfttransfer.Class, bool) {\n\tclass, exist := ik.nk.GetClass(ctx, classID)\n\tif !exist {\n\t\treturn nil, false\n\t}\n\n\tmetadata, err := ik.cb.BuildMetadata(class)\n\tif err != nil {\n\t\tik.Logger(ctx).Error(\"encode class data failed\")\n\t\treturn nil, false\n\t}\n\treturn InterClass{\n\t\tID:   classID,\n\t\tURI:  class.Uri,\n\t\tData: metadata,\n\t}, true\n}\n\n// GetNFT implement the method of ICS721Keeper.GetNFT\nfunc (ik InterNftKeeper) GetNFT(ctx sdk.Context, classID, tokenID string) (nfttransfer.NFT, bool) {\n\tnft, has := ik.nk.GetNFT(ctx, classID, tokenID)\n\tif !has {\n\t\treturn nil, false\n\t}\n\tmetadata, err := ik.tb.BuildMetadata(nft)\n\tif err != nil {\n\t\tik.Logger(ctx).Error(\"encode nft data failed\")\n\t\treturn nil, false\n\t}\n\treturn InterToken{\n\t\tClassID: classID,\n\t\tID:      tokenID,\n\t\tURI:     nft.Uri,\n\t\tData:    metadata,\n\t}, true\n}\n\n// Burn implement the method of ICS721Keeper.Burn\nfunc (ik InterNftKeeper) Burn(ctx sdk.Context, classID string, tokenID string) error {\n\treturn ik.nk.Burn(ctx, classID, tokenID)\n}\n\n// GetOwner implement the method of ICS721Keeper.GetOwner\nfunc (ik InterNftKeeper) GetOwner(ctx sdk.Context, classID string, tokenID string) sdk.AccAddress {\n\treturn ik.nk.GetOwner(ctx, classID, tokenID)\n}\n\n// HasClass implement the method of ICS721Keeper.HasClass\nfunc (ik InterNftKeeper) HasClass(ctx sdk.Context, classID string) bool {\n\treturn ik.nk.HasClass(ctx, classID)\n}\n\n// Logger returns a module-specific logger.\nfunc (ik InterNftKeeper) Logger(ctx sdk.Context) log.Logger {\n\treturn ctx.Logger().With(\"module\", \"ics721/NFTKeeper\")\n}\n"
  },
  {
    "path": "modules/mint/abci.go",
    "content": "package mint\n\nimport (\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// BeginBlocker handles block beginning logic for mint\nfunc BeginBlocker(ctx sdk.Context, k keeper.Keeper) {\n\tlogger := k.Logger(ctx)\n\t// Get block BFT time and block height\n\tblockTime := ctx.BlockHeader().Time\n\tminter := k.GetMinter(ctx)\n\tif ctx.BlockHeight() <= 1 { // don't inflate token in the first block\n\t\tminter.LastUpdate = blockTime\n\t\tk.SetMinter(ctx, minter)\n\t\treturn\n\t}\n\n\t// Calculate block mint amount\n\tparams := k.GetParams(ctx)\n\tlogger.Info(\n\t\t\"Mint parameters\",\n\t\t\"inflation_rate\",\n\t\tparams.Inflation.String(),\n\t\t\"mint_denom\",\n\t\tparams.MintDenom,\n\t)\n\n\tmintedCoin := minter.BlockProvision(params)\n\tlogger.Info(\"Mint result\", \"block_provisions\", mintedCoin.String(), \"time\", blockTime.String())\n\n\tmintedCoins := sdk.NewCoins(mintedCoin)\n\t// mint coins to submodule account\n\tif err := k.MintCoins(ctx, mintedCoins); err != nil {\n\t\tpanic(err)\n\t}\n\n\t// send the minted coins to the fee collector account\n\tif err := k.AddCollectedFees(ctx, mintedCoins); err != nil {\n\t\tpanic(err)\n\t}\n\n\t// Update last block BFT time\n\tlastInflationTime := minter.LastUpdate\n\tminter.LastUpdate = blockTime\n\tk.SetMinter(ctx, minter)\n\n\tctx.EventManager().EmitEvent(\n\t\tsdk.NewEvent(\n\t\t\ttypes.EventTypeMint,\n\t\t\tsdk.NewAttribute(types.AttributeKeyLastInflationTime, lastInflationTime.String()),\n\t\t\tsdk.NewAttribute(types.AttributeKeyInflationTime, blockTime.String()),\n\t\t\tsdk.NewAttribute(types.AttributeKeyMintCoin, mintedCoin.Amount.String()),\n\t\t),\n\t)\n}\n"
  },
  {
    "path": "modules/mint/abci_test.go",
    "content": "package mint_test\n\nimport (\n\t\"cosmossdk.io/math\"\n\t\"github.com/irisnet/irishub/v4/app/keepers\"\n\t\"testing\"\n\n\t\"github.com/stretchr/testify/require\"\n\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tdistributiontypes \"github.com/cosmos/cosmos-sdk/x/distribution/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n\tapptestutil \"github.com/irisnet/irishub/v4/testutil\"\n)\n\nfunc TestBeginBlocker(t *testing.T) {\n\tapp, ctx := createTestApp(t, true)\n\n\tmint.BeginBlocker(ctx, app.MintKeeper)\n\tminter := app.MintKeeper.GetMinter(ctx)\n\tparam := app.MintKeeper.GetParams(ctx)\n\tmintCoins := minter.BlockProvision(param)\n\n\tacc1 := app.AccountKeeper.GetModuleAccount(ctx, \"fee_collector\")\n\tmintedCoins := app.BankKeeper.GetAllBalances(ctx, acc1.GetAddress())\n\trequire.Equal(t, mintedCoins, sdk.NewCoins(mintCoins))\n}\n\n// returns context and an app with updated mint keeper\nfunc createTestApp(t *testing.T, isCheckTx bool) (*apptestutil.AppWrapper, sdk.Context) {\n\tapp := apptestutil.CreateApp(t)\n\n\tctx := app.BaseApp.NewContextLegacy(isCheckTx, tmproto.Header{Height: 2})\n\tapp.MintKeeper.SetParams(ctx, types.NewParams(\n\t\tsdk.DefaultBondDenom,\n\t\tmath.LegacyNewDecWithPrec(4, 2),\n\t))\n\tapp.MintKeeper.SetMinter(ctx, types.DefaultMinter())\n\terr := keepers.NewDistrKeeperAdapter(app.DistrKeeper).SetFeePool(ctx, distributiontypes.InitialFeePool())\n\trequire.NoError(t, err)\n\n\treturn app, ctx\n}\n"
  },
  {
    "path": "modules/mint/client/cli/cli_test.go",
    "content": "package cli_test\n\nimport (\n\t\"testing\"\n\n\t\"github.com/cosmos/cosmos-sdk/testutil/network\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/gogo/protobuf/proto\"\n\t\"github.com/stretchr/testify/suite\"\n\n\tminttestutil \"github.com/irisnet/irishub/v4/modules/mint/client/testutil\"\n\tminttypes \"github.com/irisnet/irishub/v4/modules/mint/types\"\n\t\"github.com/irisnet/irishub/v4/testutil\"\n)\n\ntype IntegrationTestSuite struct {\n\tsuite.Suite\n\n\tcfg     network.Config\n\tnetwork *network.Network\n}\n\nfunc (s *IntegrationTestSuite) SetupSuite() {\n\ts.T().Log(\"setting up integration test suite\")\n\n\tcfg := testutil.NewConfig()\n\tcfg.NumValidators = 1\n\n\tvar err error\n\ts.cfg = cfg\n\ts.network, err = network.New(s.T(), s.T().TempDir(), cfg)\n\ts.Require().NoError(err)\n\n\t_, err = s.network.WaitForHeight(1)\n\ts.Require().NoError(err)\n}\n\nfunc (s *IntegrationTestSuite) TearDownSuite() {\n\ts.T().Log(\"tearing down integration test suite\")\n\ts.network.Cleanup()\n}\n\nfunc TestIntegrationTestSuite(t *testing.T) {\n\tsuite.Run(t, new(IntegrationTestSuite))\n}\n\nfunc (s *IntegrationTestSuite) TestMint() {\n\tval := s.network.Validators[0]\n\n\t//------test GetCmdQueryParams()-------------\n\trespType := proto.Message(&minttypes.Params{})\n\tbz, err := minttestutil.QueryParamsExec(val.ClientCtx)\n\ts.Require().NoError(err)\n\ts.Require().NoError(val.ClientCtx.Codec.UnmarshalJSON(bz.Bytes(), respType))\n\tparams := respType.(*minttypes.Params)\n\ts.Require().Equal(sdk.DefaultBondDenom, params.MintDenom)\n\ts.Require().Equal(\"0.040000000000000000\", params.Inflation.String())\n}\n"
  },
  {
    "path": "modules/mint/client/cli/query.go",
    "content": "package cli\n\nimport (\n\t\"context\"\n\n\t\"github.com/spf13/cobra\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// GetQueryCmd returns the cli query commands for the mint module.\nfunc GetQueryCmd() *cobra.Command {\n\tmintingQueryCmd := &cobra.Command{\n\t\tUse:                        types.ModuleName,\n\t\tShort:                      \"Querying commands for the minting module\",\n\t\tDisableFlagParsing:         true,\n\t\tSuggestionsMinimumDistance: 2,\n\t\tRunE:                       client.ValidateCmd,\n\t}\n\tmintingQueryCmd.AddCommand(\n\t\tGetCmdQueryParams(),\n\t)\n\treturn mintingQueryCmd\n}\n\n// GetCmdQueryParams implements a command to return the current minting parameters.\nfunc GetCmdQueryParams() *cobra.Command {\n\tcmd := &cobra.Command{\n\t\tUse:   \"params\",\n\t\tShort: \"Query the current minting parameters\",\n\t\tArgs:  cobra.NoArgs,\n\t\tRunE: func(cmd *cobra.Command, args []string) error {\n\t\t\tclientCtx, err := client.GetClientQueryContext(cmd)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tqueryClient := types.NewQueryClient(clientCtx)\n\n\t\t\tres, err := queryClient.Params(context.Background(), &types.QueryParamsRequest{})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\treturn clientCtx.PrintProto(&res.Params)\n\t\t},\n\t}\n\tflags.AddQueryFlagsToCmd(cmd)\n\treturn cmd\n}\n"
  },
  {
    "path": "modules/mint/client/rest/grpc_query_test.go",
    "content": "package rest_test\n\n// import (\n// \t\"fmt\"\n// \t\"testing\"\n\n// \t\"github.com/gogo/protobuf/proto\"\n// \t\"github.com/stretchr/testify/suite\"\n\n// \t\"github.com/cosmos/cosmos-sdk/testutil/network\"\n// \t\"github.com/cosmos/cosmos-sdk/types/rest\"\n\n// \tminttypes \"github.com/irisnet/irishub/v4/modules/mint/types\"\n// \t\"github.com/irisnet/irishub/v4/testutil\"\n// )\n\n// type IntegrationTestSuite struct {\n// \tsuite.Suite\n\n// \tcfg     network.Config\n// \tnetwork *network.Network\n// }\n\n// func (s *IntegrationTestSuite) SetupSuite() {\n// \ts.T().Log(\"setting up integration test suite\")\n\n// \tcfg := simapp.NewConfig()\n// \tcfg.NumValidators = 1\n\n// \ts.cfg = cfg\n// \ts.network = network.New(s.T(), cfg)\n\n// \t_, err := s.network.WaitForHeight(1)\n// \ts.Require().NoError(err)\n// }\n\n// func (s *IntegrationTestSuite) TearDownSuite() {\n// \ts.T().Log(\"tearing down integration test suite\")\n// \ts.network.Cleanup()\n// }\n\n// func TestIntegrationTestSuite(t *testing.T) {\n// \tsuite.Run(t, new(IntegrationTestSuite))\n// }\n\n// func (s *IntegrationTestSuite) TestParams() {\n// \tval := s.network.Validators[0]\n// \tbaseURL := val.APIAddress\n// \t//------test GetCmdQueryParams()-------------\n// \turl := fmt.Sprintf(\"%s/irishub/mint/params\", baseURL)\n// \tresp, err := rest.GetRequest(url)\n// \trespType := proto.Message(&minttypes.QueryParamsResponse{})\n// \ts.Require().NoError(err)\n// \ts.Require().NoError(val.ClientCtx.Codec.UnmarshalJSON(resp, respType))\n// \tparamsResp := respType.(*minttypes.QueryParamsResponse)\n// \ts.Require().Equal(\"stake\", paramsResp.Params.MintDenom)\n// \ts.Require().Equal(\"0.040000000000000000\", paramsResp.Params.Inflation.String())\n// }\n"
  },
  {
    "path": "modules/mint/client/rest/query.go",
    "content": "package rest\n\nimport (\n\t\"github.com/gorilla/mux\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n)\n\nfunc registerQueryRoutes(cliCtx client.Context, r *mux.Router) {\n\t// get the current mint parameter values\n\t//r.HandleFunc(fmt.Sprintf(\"/%s/params\", types.ModuleName), queryParamsHandlerFn(cliCtx)).Methods(\"GET\")\n}\n\n// // HTTP request handler to get the current mint parameter values\n// func queryParamsHandlerFn(cliCtx client.Context) http.HandlerFunc {\n// \treturn func(w http.ResponseWriter, r *http.Request) {\n// \t\troute := fmt.Sprintf(\"custom/%s/%s\", types.QuerierRoute, types.QueryParameters)\n\n// \t\tcliCtx, ok := rest.ParseQueryHeightOrReturnBadRequest(w, cliCtx, r)\n// \t\tif !ok {\n// \t\t\treturn\n// \t\t}\n\n// \t\tres, height, err := cliCtx.QueryWithData(route, nil)\n// \t\tif err != nil {\n// \t\t\trest.WriteErrorResponse(w, http.StatusInternalServerError, err.Error())\n// \t\t\treturn\n// \t\t}\n\n// \t\tcliCtx = cliCtx.WithHeight(height)\n// \t\trest.PostProcessResponse(w, cliCtx, res)\n// \t}\n// }\n"
  },
  {
    "path": "modules/mint/client/rest/rest.go",
    "content": "package rest\n\nimport (\n\t\"github.com/gorilla/mux\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n)\n\n// RegisterHandlers registers minting module REST handlers on the provided router.\nfunc RegisterHandlers(cliCtx client.Context, r *mux.Router) {\n\tregisterQueryRoutes(cliCtx, r)\n}\n"
  },
  {
    "path": "modules/mint/client/testutil/test_helpers.go",
    "content": "package testutil\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/cometbft/cometbft/libs/cli\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/testutil\"\n\tclitestutil \"github.com/cosmos/cosmos-sdk/testutil/cli\"\n\n\tmintcli \"github.com/irisnet/irishub/v4/modules/mint/client/cli\"\n)\n\nfunc QueryParamsExec(clientCtx client.Context, extraArgs ...string) (testutil.BufferWriter, error) {\n\targs := []string{\n\t\tfmt.Sprintf(\"--%s=json\", cli.OutputFlag),\n\t}\n\targs = append(args, extraArgs...)\n\n\treturn clitestutil.ExecTestCLICmd(clientCtx, mintcli.GetCmdQueryParams(), args)\n}\n"
  },
  {
    "path": "modules/mint/genesis.go",
    "content": "package mint\n\nimport (\n\t\"errors\"\n\t\"fmt\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n)\n\n// InitGenesis new mint genesis\nfunc InitGenesis(ctx sdk.Context, keeper keeper.Keeper, data types.GenesisState) {\n\tif err := ValidateGenesis(data); err != nil {\n\t\tpanic(fmt.Errorf(\"failed to initialize mint genesis state: %s\", err.Error()))\n\t}\n\tkeeper.SetMinter(ctx, data.Minter)\n\tif err := keeper.SetParams(ctx, data.Params); err != nil {\n\t\tpanic(fmt.Errorf(\"failed to set mint genesis state: %s\", err.Error()))\n\t}\n}\n\n// ExportGenesis returns a GenesisState for a given context and keeper.\nfunc ExportGenesis(ctx sdk.Context, keeper keeper.Keeper) *types.GenesisState {\n\tminter := keeper.GetMinter(ctx)\n\tparams := keeper.GetParams(ctx)\n\treturn types.NewGenesisState(minter, params)\n}\n\n// ValidateGenesis performs basic validation of supply genesis data returning an\n// error for any failed validation criteria.\nfunc ValidateGenesis(data types.GenesisState) error {\n\tif !data.Minter.InflationBase.IsPositive() {\n\t\treturn errors.New(\"base inflation must be positive\")\n\t}\n\treturn data.Params.Validate()\n}\n"
  },
  {
    "path": "modules/mint/keeper/grpc_query.go",
    "content": "package keeper\n\nimport (\n\t\"context\"\n\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\nvar _ types.QueryServer = Keeper{}\n\n// Params queries the staking parameters\nfunc (k Keeper) Params(\n\tc context.Context,\n\t_ *types.QueryParamsRequest,\n) (*types.QueryParamsResponse, error) {\n\tctx := sdk.UnwrapSDKContext(c)\n\tparams := k.GetParams(ctx)\n\n\treturn &types.QueryParamsResponse{Params: params}, nil\n}\n"
  },
  {
    "path": "modules/mint/keeper/grpc_query_test.go",
    "content": "package keeper_test\n\nimport (\n\tgocontext \"context\"\n\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\nfunc (suite *KeeperTestSuite) TestGRPCQueryPoolParameters() {\n\tapp, ctx := suite.app, suite.ctx\n\n\tqueryHelper := baseapp.NewQueryServerTestHelper(ctx, app.InterfaceRegistry())\n\ttypes.RegisterQueryServer(queryHelper, app.MintKeeper)\n\tqueryClient := types.NewQueryClient(queryHelper)\n\n\t// Query Params\n\tresp, err := queryClient.Params(gocontext.Background(), &types.QueryParamsRequest{})\n\tsuite.NoError(err)\n\tsuite.Equal(app.MintKeeper.GetParams(ctx), resp.Params)\n}\n"
  },
  {
    "path": "modules/mint/keeper/keeper.go",
    "content": "package keeper\n\nimport (\n\t\"fmt\"\n\n\t\"cosmossdk.io/log\"\n\tstoretypes \"cosmossdk.io/store/types\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// keeper of the mint store\ntype Keeper struct {\n\tcdc              codec.Codec\n\tstoreKey         storetypes.StoreKey\n\tbankKeeper       types.BankKeeper\n\tfeeCollectorName string\n\tauthority        string\n}\n\n// NewKeeper returns a mint keeper\nfunc NewKeeper(\n\tcdc codec.Codec,\n\tkey storetypes.StoreKey,\n\tak types.AccountKeeper,\n\tbk types.BankKeeper,\n\tfeeCollectorName, authority string,\n) Keeper {\n\n\t// ensure mint module account is set\n\tif addr := ak.GetModuleAddress(types.ModuleName); addr == nil {\n\t\tpanic(\"the mint module account has not been set\")\n\t}\n\n\tkeeper := Keeper{\n\t\tstoreKey:         key,\n\t\tcdc:              cdc,\n\t\tbankKeeper:       bk,\n\t\tfeeCollectorName: feeCollectorName,\n\t\tauthority:        authority,\n\t}\n\treturn keeper\n}\n\n// Logger returns a module-specific logger.\nfunc (k Keeper) Logger(ctx sdk.Context) log.Logger {\n\treturn ctx.Logger().With(\"module\", fmt.Sprintf(\"%s\", types.ModuleName))\n}\n\n// ______________________________________________________________________\n\n// GetMinter returns the minter\nfunc (k Keeper) GetMinter(ctx sdk.Context) (minter types.Minter) {\n\tstore := ctx.KVStore(k.storeKey)\n\tb := store.Get(types.MinterKey)\n\tif b == nil {\n\t\tpanic(\"Stored minter should not have been nil\")\n\t}\n\tk.cdc.MustUnmarshal(b, &minter)\n\treturn\n}\n\n// SetMinter set the minter\nfunc (k Keeper) SetMinter(ctx sdk.Context, minter types.Minter) {\n\tstore := ctx.KVStore(k.storeKey)\n\tb := k.cdc.MustMarshal(&minter)\n\tstore.Set(types.MinterKey, b)\n}\n\n// MintCoins implements an alias call to the underlying supply keeper's\n// MintCoins to be used in BeginBlocker.\nfunc (k Keeper) MintCoins(ctx sdk.Context, newCoins sdk.Coins) error {\n\tif newCoins.Empty() {\n\t\t// skip as no coins need to be minted\n\t\treturn nil\n\t}\n\treturn k.bankKeeper.MintCoins(ctx, types.ModuleName, newCoins)\n}\n\n// AddCollectedFees implements an alias call to the underlying supply keeper's\n// AddCollectedFees to be used in BeginBlocker.\nfunc (k Keeper) AddCollectedFees(ctx sdk.Context, coins sdk.Coins) error {\n\treturn k.bankKeeper.SendCoinsFromModuleToModule(\n\t\tctx,\n\t\ttypes.ModuleName,\n\t\tk.feeCollectorName,\n\t\tcoins,\n\t)\n}\n"
  },
  {
    "path": "modules/mint/keeper/keeper_test.go",
    "content": "package keeper_test\n\nimport (\n\t\"testing\"\n\t\"time\"\n\n\t\"github.com/stretchr/testify/require\"\n\t\"github.com/stretchr/testify/suite\"\n\n\ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n\t\"cosmossdk.io/math\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n\tapptestutil \"github.com/irisnet/irishub/v4/testutil\"\n)\n\ntype KeeperTestSuite struct {\n\tsuite.Suite\n\n\tctx sdk.Context\n\tapp *apptestutil.AppWrapper\n}\n\nfunc (suite *KeeperTestSuite) SetupTest() {\n\tapp := apptestutil.CreateApp(suite.T())\n\n\tsuite.ctx = app.BaseApp.NewContextLegacy(false, tmproto.Header{})\n\tsuite.app = app\n\n\terr := app.MintKeeper.SetParams(suite.ctx, types.DefaultParams())\n\trequire.NoError(suite.T(), err)\n\tapp.MintKeeper.SetMinter(suite.ctx, types.DefaultMinter())\n}\n\nfunc TestKeeperTestSuite(t *testing.T) {\n\tsuite.Run(t, new(KeeperTestSuite))\n}\n\nfunc (suite *KeeperTestSuite) TestSetGetMinter() {\n\tminter := types.NewMinter(time.Now().UTC(), math.NewInt(100000))\n\tsuite.app.MintKeeper.SetMinter(suite.ctx, minter)\n\texpMinter := suite.app.MintKeeper.GetMinter(suite.ctx)\n\n\trequire.Equal(suite.T(), minter, expMinter)\n}\n\nfunc (suite *KeeperTestSuite) TestSetGetParamSet() {\n\terr := suite.app.MintKeeper.SetParams(suite.ctx, types.DefaultParams())\n\trequire.NoError(suite.T(), err)\n\n\texpParamSet := suite.app.MintKeeper.GetParams(suite.ctx)\n\trequire.Equal(suite.T(), types.DefaultParams(), expParamSet)\n}\n\nfunc (suite *KeeperTestSuite) TestMintCoins() {\n\n\tmintCoins := sdk.NewCoins(sdk.NewCoin(\"iris\", math.NewInt(1000)))\n\terr := suite.app.MintKeeper.MintCoins(suite.ctx, mintCoins)\n\trequire.NoError(suite.T(), err)\n\n\tacc := suite.app.AccountKeeper.GetModuleAccount(suite.ctx, types.ModuleName)\n\tcoins := suite.app.BankKeeper.GetAllBalances(suite.ctx, acc.GetAddress())\n\trequire.Equal(suite.T(), coins, mintCoins)\n}\n\nfunc (suite *KeeperTestSuite) TestAddCollectedFees() {\n\tmintCoins := sdk.NewCoins(sdk.NewCoin(\"iris\", math.NewInt(1000)))\n\n\tfeeCollector := suite.app.AccountKeeper.GetModuleAccount(suite.ctx, \"fee_collector\")\n\tfeeCollectorBalance := suite.app.BankKeeper.GetAllBalances(suite.ctx, feeCollector.GetAddress())\n\n\terr := suite.app.MintKeeper.MintCoins(suite.ctx, mintCoins)\n\trequire.NoError(suite.T(), err)\n\n\tacc := suite.app.AccountKeeper.GetModuleAccount(suite.ctx, types.ModuleName)\n\tcoins := suite.app.BankKeeper.GetAllBalances(suite.ctx, acc.GetAddress())\n\trequire.Equal(suite.T(), coins, mintCoins)\n\n\terr = suite.app.MintKeeper.AddCollectedFees(suite.ctx, mintCoins)\n\trequire.NoError(suite.T(), err)\n\n\tacc = suite.app.AccountKeeper.GetModuleAccount(suite.ctx, types.ModuleName)\n\tcoins = suite.app.BankKeeper.GetAllBalances(suite.ctx, acc.GetAddress())\n\trequire.True(suite.T(), coins.Empty())\n\n\tfeeCollectorTotalBalance := suite.app.BankKeeper.GetAllBalances(\n\t\tsuite.ctx,\n\t\tfeeCollector.GetAddress(),\n\t)\n\texpectedCollectedFees := feeCollectorTotalBalance.Sub(feeCollectorBalance...)\n\trequire.Equal(suite.T(), expectedCollectedFees, mintCoins)\n\n}\n"
  },
  {
    "path": "modules/mint/keeper/migrations.go",
    "content": "package keeper\n\nimport (\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\tv2 \"github.com/irisnet/irishub/v4/modules/mint/migrations/v2\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// Migrator is a struct for handling in-place store migrations.\ntype Migrator struct {\n\tk              Keeper\n\tlegacySubspace types.Subspace\n}\n\n// NewMigrator returns a new Migrator.\nfunc NewMigrator(k Keeper, legacySubspace types.Subspace) Migrator {\n\treturn Migrator{k: k, legacySubspace: legacySubspace}\n}\n\n// Migrate1to2 migrates from version 1 to 2.\nfunc (m Migrator) Migrate1to2(ctx sdk.Context) error {\n\treturn v2.Migrate(ctx, m.k, m.legacySubspace)\n}\n"
  },
  {
    "path": "modules/mint/keeper/msg_server.go",
    "content": "package keeper\n\nimport (\n\t\"context\"\n\n\tsdkerrors \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\terrorstypes \"github.com/cosmos/cosmos-sdk/types/errors\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\ntype msgServer struct {\n\tk Keeper\n}\n\nvar _ types.MsgServer = msgServer{}\n\n// NewMsgServerImpl returns an implementation of the mint MsgServer interface\n// for the provided Keeper.\nfunc NewMsgServerImpl(keeper Keeper) types.MsgServer {\n\treturn &msgServer{k: keeper}\n}\n\n// UpdateParams implement the interface of types.MsgServer\nfunc (m msgServer) UpdateParams(\n\tgoCtx context.Context,\n\tmsg *types.MsgUpdateParams,\n) (*types.MsgUpdateParamsResponse, error) {\n\tif m.k.authority != msg.Authority {\n\t\treturn nil, sdkerrors.Wrapf(\n\t\t\terrorstypes.ErrUnauthorized,\n\t\t\t\"invalid authority; expected %s, got %s\",\n\t\t\tm.k.authority,\n\t\t\tmsg.Authority,\n\t\t)\n\t}\n\n\tctx := sdk.UnwrapSDKContext(goCtx)\n\tif err := m.k.SetParams(ctx, msg.Params); err != nil {\n\t\treturn nil, err\n\t}\n\treturn &types.MsgUpdateParamsResponse{}, nil\n}\n"
  },
  {
    "path": "modules/mint/keeper/params.go",
    "content": "package keeper\n\nimport (\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// GetParams sets the mint module parameters.\nfunc (k Keeper) GetParams(ctx sdk.Context) (params types.Params) {\n\tstore := ctx.KVStore(k.storeKey)\n\tbz := store.Get(types.ParamsKey)\n\tif bz == nil {\n\t\treturn params\n\t}\n\n\tk.cdc.MustUnmarshal(bz, &params)\n\treturn params\n}\n\n// SetParams sets the mint module parameters.\nfunc (k Keeper) SetParams(ctx sdk.Context, params types.Params) error {\n\tif err := params.Validate(); err != nil {\n\t\treturn err\n\t}\n\n\tstore := ctx.KVStore(k.storeKey)\n\tbz, err := k.cdc.Marshal(&params)\n\tif err != nil {\n\t\treturn err\n\t}\n\tstore.Set(types.ParamsKey, bz)\n\n\treturn nil\n}\n"
  },
  {
    "path": "modules/mint/migrations/v2/migrate.go",
    "content": "package v2\n\nimport (\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// MintKeeper defines a interface for SetParams function\ntype MintKeeper interface {\n\tSetParams(ctx sdk.Context, params types.Params) error\n}\n\n// Migrate migrate the coinswap params from legacy x/params module to mint module\nfunc Migrate(ctx sdk.Context, k MintKeeper, legacySubspace types.Subspace) error {\n\tvar params types.Params\n\tlegacySubspace.GetParamSet(ctx, &params)\n\treturn k.SetParams(ctx, params)\n}\n"
  },
  {
    "path": "modules/mint/migrations/v2/migrate_test.go",
    "content": "package v2_test\n\n// import (\n// \t\"testing\"\n\n// \t\"github.com/stretchr/testify/require\"\n\n// \ttmproto \"github.com/cometbft/cometbft/proto/tendermint/types\"\n\n// \tv3 \"mods.irisnet.org/modules/farm/migrations/v3\"\n// \tfarmtypes \"mods.irisnet.org/modules/farm/types\"\n// \t\"mods.irisnet.org/simapp\"\n// )\n\n// func TestMigrate(t *testing.T) {\n// \tapp := simapp.Setup(t, false)\n// \tctx := app.BaseApp.NewContext(false, tmproto.Header{})\n\n// \tlegacySubspace := app.GetSubspace(farmtypes.ModuleName)\n\n// \tparams := farmtypes.DefaultParams()\n// \tlegacySubspace.SetParamSet(ctx, &params)\n\n// \terr := v3.Migrate(\n// \t\tctx,\n// \t\tapp.FarmKeeper,\n// \t\tlegacySubspace,\n// \t)\n// \trequire.NoError(t, err)\n\n// \texpParams := app.FarmKeeper.GetParams(ctx)\n// \trequire.Equal(t, expParams, params, \"v3.Migrate failed\")\n\n// }\n"
  },
  {
    "path": "modules/mint/module.go",
    "content": "package mint\n\nimport (\n\t\"context\"\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/grpc-ecosystem/grpc-gateway/runtime\"\n\t\"github.com/spf13/cobra\"\n\n\tabci \"github.com/cometbft/cometbft/abci/types\"\n\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tcodectypes \"github.com/cosmos/cosmos-sdk/codec/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\tsimtypes \"github.com/cosmos/cosmos-sdk/types/simulation\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/client/cli\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/keeper\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/simulation\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// ConsensusVersion defines the current mint module consensus version.\nconst ConsensusVersion = 2\n\nvar (\n\t_ module.AppModule           = AppModule{}\n\t_ module.AppModuleBasic      = AppModuleBasic{}\n\t_ module.AppModuleSimulation = AppModule{}\n)\n\n// AppModuleBasic defines the basic application module used by the mint module.\ntype AppModuleBasic struct {\n\tcdc codec.Codec\n}\n\n// Name returns the mint module's name.\nfunc (AppModuleBasic) Name() string { return types.ModuleName }\n\n// RegisterLegacyAminoCodec registers the mint module's types on the LegacyAmino codec.\nfunc (AppModuleBasic) RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) {\n}\n\n// DefaultGenesis returns default genesis state as raw bytes for the mint\n// module.\nfunc (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage {\n\treturn cdc.MustMarshalJSON(types.DefaultGenesisState())\n}\n\n// ValidateGenesis performs genesis state validation for the mint module.\nfunc (AppModuleBasic) ValidateGenesis(\n\tcdc codec.JSONCodec,\n\tconfig client.TxEncodingConfig,\n\tbz json.RawMessage,\n) error {\n\tvar data types.GenesisState\n\tif err := cdc.UnmarshalJSON(bz, &data); err != nil {\n\t\treturn fmt.Errorf(\"failed to unmarshal %s genesis state: %w\", types.ModuleName, err)\n\t}\n\n\treturn ValidateGenesis(data)\n}\n\n// RegisterGRPCGatewayRoutes registers the gRPC Gateway routes for the mint module.\nfunc (AppModuleBasic) RegisterGRPCGatewayRoutes(clientCtx client.Context, mux *runtime.ServeMux) {\n\t_ = types.RegisterQueryHandlerClient(context.Background(), mux, types.NewQueryClient(clientCtx))\n}\n\n// GetTxCmd returns the root tx command for the mint module.\nfunc (AppModuleBasic) GetTxCmd() *cobra.Command {\n\treturn nil\n}\n\n// GetQueryCmd returns no root query command for the mint module.\nfunc (AppModuleBasic) GetQueryCmd() *cobra.Command {\n\treturn cli.GetQueryCmd()\n}\n\n// RegisterInterfaces registers interfaces and implementations of the mint module.\nfunc (AppModuleBasic) RegisterInterfaces(registry codectypes.InterfaceRegistry) {\n\ttypes.RegisterInterfaces(registry)\n}\n\n// ____________________________________________________________________________\n\n// AppModule implements an application module for the mint module.\ntype AppModule struct {\n\tAppModuleBasic\n\n\tkeeper         keeper.Keeper\n\tlegacySubspace types.Subspace\n}\n\n// NewAppModule creates a new AppModule object\nfunc NewAppModule(\n\tcdc codec.Codec,\n\tkeeper keeper.Keeper,\n\tlegacySubspace types.Subspace,\n) AppModule {\n\treturn AppModule{\n\t\tAppModuleBasic: AppModuleBasic{cdc: cdc},\n\t\tkeeper:         keeper,\n\t\tlegacySubspace: legacySubspace,\n\t}\n}\n\n// Name returns the mint module's name.\nfunc (AppModule) Name() string { return types.ModuleName }\n\n// RegisterServices registers module services.\nfunc (am AppModule) RegisterServices(cfg module.Configurator) {\n\ttypes.RegisterQueryServer(cfg.QueryServer(), am.keeper)\n\ttypes.RegisterMsgServer(cfg.MsgServer(), keeper.NewMsgServerImpl(am.keeper))\n\n\tm := keeper.NewMigrator(am.keeper, am.legacySubspace)\n\tif err := cfg.RegisterMigration(types.ModuleName, 1, m.Migrate1to2); err != nil {\n\t\tpanic(err)\n\t}\n}\n\n// RegisterInvariants registers the mint module invariants.\nfunc (am AppModule) RegisterInvariants(ir sdk.InvariantRegistry) {\n}\n\n// QuerierRoute returns the mint module's querier route name.\nfunc (AppModule) QuerierRoute() string { return types.RouterKey }\n\n// ConsensusVersion is a sequence number for state-breaking change of the\n// module. It should be incremented on each consensus-breaking change\n// introduced by the module. To avoid wrong/empty versions, the initial version\n// should be set to 1.\nfunc (am AppModule) ConsensusVersion() uint64 {\n\treturn ConsensusVersion\n}\n\n// InitGenesis performs genesis initialization for the mint module. It returns\n// no validator updates.\nfunc (am AppModule) InitGenesis(\n\tctx sdk.Context,\n\tcdc codec.JSONCodec,\n\tdata json.RawMessage,\n) []abci.ValidatorUpdate {\n\tvar genesisState types.GenesisState\n\n\tcdc.MustUnmarshalJSON(data, &genesisState)\n\n\tInitGenesis(ctx, am.keeper, genesisState)\n\treturn []abci.ValidatorUpdate{}\n}\n\n// ExportGenesis returns the exported genesis state as raw bytes for the mint\n// module.\nfunc (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.RawMessage {\n\tgs := ExportGenesis(ctx, am.keeper)\n\treturn cdc.MustMarshalJSON(gs)\n}\n\n// BeginBlock performs a no-op.\nfunc (am AppModule) BeginBlock(ctx context.Context) error {\n\tc := sdk.UnwrapSDKContext(ctx)\n\tBeginBlocker(c, am.keeper)\n\treturn nil\n}\n\n// EndBlock returns the end blocker for the mint module. It returns no validator\n// updates.\nfunc (AppModule) EndBlock(_ context.Context) error {\n\treturn nil\n}\n\n// ____________________________________________________________________________\n\n// AppModuleSimulation functions\n\n// GenerateGenesisState creates a randomized GenState of the mint module.\nfunc (AppModule) GenerateGenesisState(simState *module.SimulationState) {\n}\n\n// RegisterStoreDecoder registers a decoder for mint module's types\nfunc (am AppModule) RegisterStoreDecoder(sdr simtypes.StoreDecoderRegistry) {\n\tsdr[types.StoreKey] = simulation.NewDecodeStore(am.cdc)\n}\n\n// WeightedOperations returns the all the mint module operations with their respective weights.\nfunc (am AppModule) WeightedOperations(\n\tsimState module.SimulationState,\n) []simtypes.WeightedOperation {\n\treturn []simtypes.WeightedOperation{}\n}\n\n// IsOnePerModuleType implements the depinject.OnePerModuleType interface.\nfunc (am AppModule) IsOnePerModuleType() {}\n\n// IsAppModule implements the appmodule.AppModule interface.\nfunc (am AppModule) IsAppModule() {}\n"
  },
  {
    "path": "modules/mint/simulation/decoder.go",
    "content": "package simulation\n\nimport (\n\t\"bytes\"\n\t\"fmt\"\n\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/types/kv\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// NewDecodeStore returns a function closure that unmarshals the KVPair's values\n// to the corresponding types.\nfunc NewDecodeStore(cdc codec.Codec) func(kvA, kvB kv.Pair) string {\n\treturn func(kvA, kvB kv.Pair) string {\n\t\tswitch {\n\t\tcase bytes.Equal(kvA.Key, types.MinterKey):\n\t\t\tvar minterA, minterB types.Minter\n\t\t\tcdc.MustUnmarshal(kvA.Value, &minterA)\n\t\t\tcdc.MustUnmarshal(kvB.Value, &minterB)\n\t\t\treturn fmt.Sprintf(\"%v\\n%v\", minterA, minterB)\n\t\tdefault:\n\t\t\tpanic(fmt.Sprintf(\"invalid mint key %X\", kvA.Key))\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "modules/mint/simulation/decoder_test.go",
    "content": "package simulation_test\n\nimport (\n\t\"fmt\"\n\t\"testing\"\n\t\"time\"\n\n\t\"github.com/stretchr/testify/require\"\n\n\tsdkmath \"cosmossdk.io/math\"\n\n\t\"github.com/cosmos/cosmos-sdk/types/kv\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/simulation\"\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n\t\"github.com/irisnet/irishub/v4/testutil\"\n)\n\nfunc TestDecodeStore(t *testing.T) {\n\tminter := types.NewMinter(time.Now().UTC(), sdkmath.NewIntWithDecimal(2, 9))\n\tapp := testutil.CreateApp(t)\n\tdec := simulation.NewDecodeStore(app.AppCodec())\n\n\tkvPairs := kv.Pairs{\n\t\tPairs: []kv.Pair{\n\t\t\t{Key: types.MinterKey, Value: app.AppCodec().MustMarshal(&minter)},\n\t\t\t{Key: []byte{0x99}, Value: []byte{0x99}},\n\t\t},\n\t}\n\ttests := []struct {\n\t\tname        string\n\t\texpectedLog string\n\t}{\n\t\t{\"Minter\", fmt.Sprintf(\"%v\\n%v\", minter, minter)},\n\t\t{\"other\", \"\"},\n\t}\n\n\tfor i, tt := range tests {\n\t\ti, tt := i, tt\n\t\tt.Run(tt.name, func(t *testing.T) {\n\t\t\tswitch i {\n\t\t\tcase len(tests) - 1:\n\t\t\t\trequire.Panics(t, func() { dec(kvPairs.Pairs[i], kvPairs.Pairs[i]) }, tt.name)\n\t\t\tdefault:\n\t\t\t\trequire.Equal(t, tt.expectedLog, dec(kvPairs.Pairs[i], kvPairs.Pairs[i]), tt.name)\n\t\t\t}\n\t\t})\n\t}\n}\n"
  },
  {
    "path": "modules/mint/simulation/genesis.go",
    "content": "package simulation\n\n// DONTCOVER\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"math/rand\"\n\n\tmathsdk \"cosmossdk.io/math\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module\"\n\n\t\"github.com/irisnet/irishub/v4/modules/mint/types\"\n)\n\n// Simulation parameter constants\nconst (\n\tInflation = \"inflation\"\n)\n\n// GenInflation randomized Inflation\nfunc GenInflation(r *rand.Rand) mathsdk.LegacyDec {\n\treturn mathsdk.LegacyNewDecWithPrec(int64(r.Intn(99)), 2)\n}\n\n// RandomizedGenState generates a random GenesisState for mint\nfunc RandomizedGenState(simState *module.SimulationState) {\n\t// minter\n\tvar inflation = mathsdk.LegacyZeroDec()\n\tsimState.AppParams.GetOrGenerate(\n\t\tInflation, &inflation, simState.Rand,\n\t\tfunc(r *rand.Rand) { inflation = GenInflation(r) },\n\t)\n\n\tparams := types.Params{Inflation: inflation, MintDenom: sdk.DefaultBondDenom}\n\tmintGenesis := types.NewGenesisState(types.DefaultMinter(), params)\n\n\tbz, err := json.MarshalIndent(&mintGenesis, \"\", \" \")\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tfmt.Printf(\"Selected randomly generated %s parameters:\\n%s\\n\", types.ModuleName, bz)\n\tsimState.GenState[types.ModuleName] = simState.Cdc.MustMarshalJSON(mintGenesis)\n}\n"
  },
  {
    "path": "modules/mint/types/codec.go",
    "content": "package types\n\nimport (\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/codec/types\"\n\tcryptocodec \"github.com/cosmos/cosmos-sdk/crypto/codec\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/msgservice\"\n)\n\nvar (\n\tamino = codec.NewLegacyAmino()\n\n\tModuleCdc = codec.NewAminoCodec(amino)\n)\n\nfunc init() {\n\tcryptocodec.RegisterCrypto(amino)\n\tamino.Seal()\n}\n\nfunc RegisterInterfaces(registry types.InterfaceRegistry) {\n\tregistry.RegisterImplementations((*sdk.Msg)(nil),\n\t\t&MsgUpdateParams{},\n\t)\n\tmsgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc)\n}\n"
  },
  {
    "path": "modules/mint/types/errors.go",
    "content": "package types\n\nimport (\n\tsdkerrors \"cosmossdk.io/errors\"\n)\n\n// mint module sentinel errors\nvar (\n\tErrInvalidMintInflation = sdkerrors.Register(ModuleName, 2, \"invalid mint inflation\")\n\tErrInvalidMintDenom     = sdkerrors.Register(ModuleName, 3, \"invalid mint denom\")\n)\n"
  },
  {
    "path": "modules/mint/types/events.go",
    "content": "// nolint\npackage types\n\n// mint module event types\nconst (\n\tEventTypeMint = \"mint\"\n\n\tAttributeKeyLastInflationTime = \"last_inflation_time\"\n\tAttributeKeyInflationTime     = \"inflation_time\"\n\tAttributeKeyMintCoin          = \"mint_coin\"\n)\n"
  },
  {
    "path": "modules/mint/types/expected_keepers.go",
    "content": "package types // noalias\n\nimport (\n\t\"context\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tparamtypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n)\n\n// AccountKeeper defines the contract required for account APIs.\ntype AccountKeeper interface {\n\tGetModuleAddress(name string) sdk.AccAddress\n\n\t// TODO remove with genesis 2-phases refactor https://github.com/cosmos/cosmos-sdk/issues/2862\n\tSetModuleAccount(context.Context, sdk.ModuleAccountI)\n\tGetModuleAccount(ctx context.Context, moduleName string) sdk.ModuleAccountI\n}\n\n// BankKeeper defines the contract needed to be fulfilled for banking and supply\n// dependencies.\ntype BankKeeper interface {\n\tSendCoinsFromModuleToAccount(\n\t\tctx context.Context,\n\t\tsenderModule string,\n\t\trecipientAddr sdk.AccAddress,\n\t\tamt sdk.Coins,\n\t) error\n\tSendCoinsFromModuleToModule(\n\t\tctx context.Context,\n\t\tsenderModule, recipientModule string,\n\t\tamt sdk.Coins,\n\t) error\n\tMintCoins(ctx context.Context, name string, amt sdk.Coins) error\n}\n\n// Subspace defines an interface that implements a param subspace.\ntype Subspace interface {\n\tGetParamSet(ctx sdk.Context, ps paramtypes.ParamSet)\n}\n"
  },
  {
    "path": "modules/mint/types/genesis.go",
    "content": "package types\n\n// NewGenesisState constructs a GenesisState\nfunc NewGenesisState(minter Minter, params Params) *GenesisState {\n\treturn &GenesisState{\n\t\tMinter: minter,\n\t\tParams: params,\n\t}\n}\n\n// DefaultGenesisState gets raw genesis raw message for testing\nfunc DefaultGenesisState() *GenesisState {\n\treturn &GenesisState{\n\t\tMinter: DefaultMinter(),\n\t\tParams: DefaultParams(),\n\t}\n}\n\n// ValidateGenesis validates the provided staking genesis state to ensure the\n// expected invariants holds. (i.e. params in correct bounds, no duplicate validators)\nfunc ValidateGenesis(data GenesisState) error {\n\tif err := data.Params.Validate(); err != nil {\n\t\treturn err\n\t}\n\treturn ValidateMinter(data.Minter)\n}\n"
  },
  {
    "path": "modules/mint/types/genesis.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/mint/genesis.proto\n\npackage types\n\nimport (\n\tfmt \"fmt\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// GenesisState defines the mint module's genesis state\ntype GenesisState struct {\n\tMinter Minter `protobuf:\"bytes,1,opt,name=minter,proto3\" json:\"minter\"`\n\tParams Params `protobuf:\"bytes,2,opt,name=params,proto3\" json:\"params\"`\n}\n\nfunc (m *GenesisState) Reset()         { *m = GenesisState{} }\nfunc (m *GenesisState) String() string { return proto.CompactTextString(m) }\nfunc (*GenesisState) ProtoMessage()    {}\nfunc (*GenesisState) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_79c69a4fab6b38a3, []int{0}\n}\nfunc (m *GenesisState) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *GenesisState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_GenesisState.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *GenesisState) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_GenesisState.Merge(m, src)\n}\nfunc (m *GenesisState) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *GenesisState) XXX_DiscardUnknown() {\n\txxx_messageInfo_GenesisState.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_GenesisState proto.InternalMessageInfo\n\nfunc (m *GenesisState) GetMinter() Minter {\n\tif m != nil {\n\t\treturn m.Minter\n\t}\n\treturn Minter{}\n}\n\nfunc (m *GenesisState) GetParams() Params {\n\tif m != nil {\n\t\treturn m.Params\n\t}\n\treturn Params{}\n}\n\nfunc init() {\n\tproto.RegisterType((*GenesisState)(nil), \"irishub.mint.GenesisState\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/mint/genesis.proto\", fileDescriptor_79c69a4fab6b38a3) }\n\nvar fileDescriptor_79c69a4fab6b38a3 = []byte{\n\t// 212 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xca, 0x2c, 0xca, 0x2c,\n\t0xce, 0x28, 0x4d, 0xd2, 0xcf, 0xcd, 0xcc, 0x2b, 0xd1, 0x4f, 0x4f, 0xcd, 0x4b, 0x2d, 0xce, 0x2c,\n\t0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x81, 0xca, 0xe9, 0x81, 0xe4, 0xa4, 0xc4, 0x51,\n\t0x54, 0x82, 0x08, 0x88, 0x32, 0x29, 0x91, 0xf4, 0xfc, 0xf4, 0x7c, 0x30, 0x53, 0x1f, 0xc4, 0x82,\n\t0x88, 0x2a, 0x95, 0x71, 0xf1, 0xb8, 0x43, 0x4c, 0x0b, 0x2e, 0x49, 0x2c, 0x49, 0x15, 0x32, 0xe2,\n\t0x62, 0x03, 0xe9, 0x49, 0x2d, 0x92, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x36, 0x12, 0xd1, 0x43, 0x36,\n\t0x5d, 0xcf, 0x17, 0x2c, 0xe7, 0xc4, 0x72, 0xe2, 0x9e, 0x3c, 0x43, 0x10, 0x54, 0x25, 0x48, 0x4f,\n\t0x41, 0x62, 0x51, 0x62, 0x6e, 0xb1, 0x04, 0x13, 0x36, 0x3d, 0x01, 0x60, 0x39, 0x98, 0x1e, 0x88,\n\t0x4a, 0x27, 0xaf, 0x13, 0x8f, 0xe4, 0x18, 0x2f, 0x3c, 0x92, 0x63, 0x7c, 0xf0, 0x48, 0x8e, 0x71,\n\t0xc2, 0x63, 0x39, 0x86, 0x0b, 0x8f, 0xe5, 0x18, 0x6e, 0x3c, 0x96, 0x63, 0x88, 0x32, 0x48, 0xcf,\n\t0x2c, 0x01, 0xe9, 0x4d, 0xce, 0xcf, 0xd5, 0x07, 0x99, 0x93, 0x97, 0x5a, 0xa2, 0x0f, 0xf3, 0x53,\n\t0x99, 0x89, 0x7e, 0x6e, 0x7e, 0x4a, 0x69, 0x4e, 0x6a, 0x31, 0xc4, 0x7b, 0x25, 0x95, 0x05, 0xa9,\n\t0xc5, 0x49, 0x6c, 0x60, 0xaf, 0x18, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0x55, 0x90, 0x75, 0x3e,\n\t0x25, 0x01, 0x00, 0x00,\n}\n\nfunc (m *GenesisState) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *GenesisState) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *GenesisState) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\t{\n\t\tsize, err := m.Params.MarshalToSizedBuffer(dAtA[:i])\n\t\tif err != nil {\n\t\t\treturn 0, err\n\t\t}\n\t\ti -= size\n\t\ti = encodeVarintGenesis(dAtA, i, uint64(size))\n\t}\n\ti--\n\tdAtA[i] = 0x12\n\t{\n\t\tsize, err := m.Minter.MarshalToSizedBuffer(dAtA[:i])\n\t\tif err != nil {\n\t\t\treturn 0, err\n\t\t}\n\t\ti -= size\n\t\ti = encodeVarintGenesis(dAtA, i, uint64(size))\n\t}\n\ti--\n\tdAtA[i] = 0xa\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintGenesis(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovGenesis(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *GenesisState) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = m.Minter.Size()\n\tn += 1 + l + sovGenesis(uint64(l))\n\tl = m.Params.Size()\n\tn += 1 + l + sovGenesis(uint64(l))\n\treturn n\n}\n\nfunc sovGenesis(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozGenesis(x uint64) (n int) {\n\treturn sovGenesis(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *GenesisState) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowGenesis\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: GenesisState: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: GenesisState: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Minter\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := m.Minter.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Params\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipGenesis(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipGenesis(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowGenesis\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowGenesis\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthGenesis\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupGenesis\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthGenesis\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthGenesis        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowGenesis          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupGenesis = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/mint/types/keys.go",
    "content": "package types\n\n// nolint\nconst (\n\t// ModuleName defines the module name\n\tModuleName = \"mint\"\n\n\t// StoreKey defines the primary module store key\n\tStoreKey = ModuleName\n\n\t// RouterKey defines the module's message routing key\n\tRouterKey = ModuleName\n\n\t// QuerierRoute defines the module's query routing key\n\tQuerierRoute = ModuleName\n\n\t// Query endpoints supported by the minting querier\n\tQueryParameters = \"parameters\"\n\tQueryInflation  = \"inflation\"\n)\n\nvar (\n\t// use for the keeper store\n\tMinterKey = []byte{0x00}\n\tParamsKey = []byte{0x01}\n)\n"
  },
  {
    "path": "modules/mint/types/mint.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/mint/mint.proto\n\npackage types\n\nimport (\n\tcosmossdk_io_math \"cosmossdk.io/math\"\n\tfmt \"fmt\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\tgithub_com_cosmos_gogoproto_types \"github.com/cosmos/gogoproto/types\"\n\t_ \"google.golang.org/protobuf/types/known/timestamppb\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n\ttime \"time\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\nvar _ = time.Kitchen\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// Minter represents the minting state\ntype Minter struct {\n\t// time which the last update was made to the minter\n\tLastUpdate time.Time `protobuf:\"bytes,1,opt,name=last_update,json=lastUpdate,proto3,stdtime\" json:\"last_update\" yaml:\"last_update\"`\n\t// base inflation\n\tInflationBase cosmossdk_io_math.Int `protobuf:\"bytes,2,opt,name=inflation_base,json=inflationBase,proto3,customtype=cosmossdk.io/math.Int\" json:\"inflation_base\" yaml:\"inflation_base\"`\n}\n\nfunc (m *Minter) Reset()         { *m = Minter{} }\nfunc (m *Minter) String() string { return proto.CompactTextString(m) }\nfunc (*Minter) ProtoMessage()    {}\nfunc (*Minter) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_06d871d90c4bc3c9, []int{0}\n}\nfunc (m *Minter) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *Minter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_Minter.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *Minter) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_Minter.Merge(m, src)\n}\nfunc (m *Minter) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *Minter) XXX_DiscardUnknown() {\n\txxx_messageInfo_Minter.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_Minter proto.InternalMessageInfo\n\nfunc (m *Minter) GetLastUpdate() time.Time {\n\tif m != nil {\n\t\treturn m.LastUpdate\n\t}\n\treturn time.Time{}\n}\n\n// Params defines mint module's parameters\ntype Params struct {\n\t// type of coin to mint\n\tMintDenom string `protobuf:\"bytes,1,opt,name=mint_denom,json=mintDenom,proto3\" json:\"mint_denom,omitempty\"`\n\t// inflation rate\n\tInflation cosmossdk_io_math.LegacyDec `protobuf:\"bytes,2,opt,name=inflation,proto3,customtype=cosmossdk.io/math.LegacyDec\" json:\"inflation\"`\n}\n\nfunc (m *Params) Reset()      { *m = Params{} }\nfunc (*Params) ProtoMessage() {}\nfunc (*Params) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_06d871d90c4bc3c9, []int{1}\n}\nfunc (m *Params) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *Params) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_Params.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *Params) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_Params.Merge(m, src)\n}\nfunc (m *Params) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *Params) XXX_DiscardUnknown() {\n\txxx_messageInfo_Params.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_Params proto.InternalMessageInfo\n\nfunc (m *Params) GetMintDenom() string {\n\tif m != nil {\n\t\treturn m.MintDenom\n\t}\n\treturn \"\"\n}\n\nfunc init() {\n\tproto.RegisterType((*Minter)(nil), \"irishub.mint.Minter\")\n\tproto.RegisterType((*Params)(nil), \"irishub.mint.Params\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/mint/mint.proto\", fileDescriptor_06d871d90c4bc3c9) }\n\nvar fileDescriptor_06d871d90c4bc3c9 = []byte{\n\t// 362 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x91, 0x31, 0x4b, 0xc3, 0x40,\n\t0x14, 0xc7, 0x73, 0x22, 0x85, 0x5c, 0xd5, 0x21, 0x58, 0x2c, 0x15, 0x93, 0x12, 0x97, 0x4e, 0x39,\n\t0x51, 0x71, 0xe8, 0x66, 0xe8, 0xa2, 0x28, 0x48, 0xd0, 0x45, 0x91, 0x72, 0x49, 0xae, 0xe9, 0x61,\n\t0x2e, 0x17, 0x72, 0x17, 0xa1, 0xdf, 0xa2, 0xa3, 0xa3, 0x1f, 0xc6, 0xa1, 0x63, 0x47, 0x71, 0x88,\n\t0xd2, 0x7e, 0x83, 0x7e, 0x02, 0xb9, 0xa4, 0xad, 0x8a, 0x4b, 0xc8, 0xfb, 0xbd, 0xf7, 0xff, 0xf3,\n\t0xee, 0xfd, 0xe1, 0x1e, 0xcd, 0xa8, 0x18, 0xe6, 0x3e, 0x62, 0x34, 0x91, 0xe5, 0xc7, 0x49, 0x33,\n\t0x2e, 0xb9, 0xb1, 0xb5, 0x6c, 0x38, 0x8a, 0xb5, 0x76, 0x23, 0x1e, 0xf1, 0xb2, 0x81, 0xd4, 0x5f,\n\t0x35, 0xd3, 0xb2, 0x22, 0xce, 0xa3, 0x98, 0xa0, 0xb2, 0xf2, 0xf3, 0x01, 0x92, 0x94, 0x11, 0x21,\n\t0x31, 0x4b, 0xab, 0x01, 0xfb, 0x0d, 0xc0, 0xda, 0x35, 0x4d, 0x24, 0xc9, 0x8c, 0x07, 0x58, 0x8f,\n\t0xb1, 0x90, 0xfd, 0x3c, 0x0d, 0xb1, 0x24, 0x4d, 0xd0, 0x06, 0x9d, 0xfa, 0x71, 0xcb, 0xa9, 0x1c,\n\t0x9c, 0x95, 0x83, 0x73, 0xbb, 0x72, 0x70, 0xcd, 0x49, 0x61, 0x69, 0x8b, 0xc2, 0x32, 0x46, 0x98,\n\t0xc5, 0x5d, 0xfb, 0x97, 0xd8, 0x1e, 0x7f, 0x5a, 0xc0, 0x83, 0x8a, 0xdc, 0x95, 0xc0, 0x78, 0x84,\n\t0x3b, 0x34, 0x19, 0xc4, 0x58, 0x52, 0x9e, 0xf4, 0x7d, 0x2c, 0x48, 0x73, 0xa3, 0x0d, 0x3a, 0xba,\n\t0x7b, 0xa6, 0x3c, 0x3e, 0x0a, 0xab, 0x11, 0x70, 0xc1, 0xb8, 0x10, 0xe1, 0x93, 0x43, 0x39, 0x62,\n\t0x58, 0x0e, 0x9d, 0x8b, 0x44, 0x2e, 0x0a, 0xab, 0x51, 0x99, 0xff, 0x15, 0xdb, 0xde, 0xf6, 0x1a,\n\t0xb8, 0xaa, 0x4e, 0x61, 0xed, 0x06, 0x67, 0x98, 0x09, 0xe3, 0x00, 0x42, 0x75, 0x8f, 0x7e, 0x48,\n\t0x12, 0xce, 0xca, 0x47, 0xe8, 0x9e, 0xae, 0x48, 0x4f, 0x01, 0xe3, 0x1c, 0xea, 0x6b, 0xe5, 0x72,\n\t0x85, 0xc3, 0xe5, 0x0a, 0xfb, 0xff, 0x57, 0xb8, 0x22, 0x11, 0x0e, 0x46, 0x3d, 0x12, 0x78, 0x3f,\n\t0xaa, 0xee, 0xe6, 0xcb, 0xab, 0xa5, 0xb9, 0x97, 0x93, 0x99, 0x09, 0xa6, 0x33, 0x13, 0x7c, 0xcd,\n\t0x4c, 0x30, 0x9e, 0x9b, 0xda, 0x74, 0x6e, 0x6a, 0xef, 0x73, 0x53, 0xbb, 0x3f, 0x8a, 0xa8, 0x54,\n\t0xb1, 0x04, 0x9c, 0x21, 0x15, 0x51, 0x42, 0x24, 0x5a, 0x65, 0xf8, 0x7c, 0x8a, 0x18, 0x0f, 0xf3,\n\t0x98, 0x88, 0x2a, 0x4e, 0x39, 0x4a, 0x89, 0xf0, 0x6b, 0xe5, 0x71, 0x4f, 0xbe, 0x03, 0x00, 0x00,\n\t0xff, 0xff, 0xf1, 0x50, 0xf9, 0x61, 0xeb, 0x01, 0x00, 0x00,\n}\n\nfunc (m *Minter) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *Minter) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *Minter) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\t{\n\t\tsize := m.InflationBase.Size()\n\t\ti -= size\n\t\tif _, err := m.InflationBase.MarshalTo(dAtA[i:]); err != nil {\n\t\t\treturn 0, err\n\t\t}\n\t\ti = encodeVarintMint(dAtA, i, uint64(size))\n\t}\n\ti--\n\tdAtA[i] = 0x12\n\tn1, err1 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(m.LastUpdate, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(m.LastUpdate):])\n\tif err1 != nil {\n\t\treturn 0, err1\n\t}\n\ti -= n1\n\ti = encodeVarintMint(dAtA, i, uint64(n1))\n\ti--\n\tdAtA[i] = 0xa\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *Params) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *Params) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\t{\n\t\tsize := m.Inflation.Size()\n\t\ti -= size\n\t\tif _, err := m.Inflation.MarshalTo(dAtA[i:]); err != nil {\n\t\t\treturn 0, err\n\t\t}\n\t\ti = encodeVarintMint(dAtA, i, uint64(size))\n\t}\n\ti--\n\tdAtA[i] = 0x12\n\tif len(m.MintDenom) > 0 {\n\t\ti -= len(m.MintDenom)\n\t\tcopy(dAtA[i:], m.MintDenom)\n\t\ti = encodeVarintMint(dAtA, i, uint64(len(m.MintDenom)))\n\t\ti--\n\t\tdAtA[i] = 0xa\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintMint(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovMint(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *Minter) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = github_com_cosmos_gogoproto_types.SizeOfStdTime(m.LastUpdate)\n\tn += 1 + l + sovMint(uint64(l))\n\tl = m.InflationBase.Size()\n\tn += 1 + l + sovMint(uint64(l))\n\treturn n\n}\n\nfunc (m *Params) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = len(m.MintDenom)\n\tif l > 0 {\n\t\tn += 1 + l + sovMint(uint64(l))\n\t}\n\tl = m.Inflation.Size()\n\tn += 1 + l + sovMint(uint64(l))\n\treturn n\n}\n\nfunc sovMint(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozMint(x uint64) (n int) {\n\treturn sovMint(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *Minter) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowMint\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: Minter: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: Minter: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field LastUpdate\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowMint\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := github_com_cosmos_gogoproto_types.StdTimeUnmarshal(&m.LastUpdate, dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field InflationBase\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowMint\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := m.InflationBase.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipMint(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *Params) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowMint\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: Params: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: Params: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field MintDenom\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowMint\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.MintDenom = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Inflation\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowMint\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := m.Inflation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipMint(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthMint\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipMint(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowMint\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowMint\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowMint\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthMint\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupMint\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthMint\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthMint        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowMint          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupMint = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/mint/types/minter.go",
    "content": "package types\n\nimport (\n\t\"fmt\"\n\t\"time\"\n\n\tsdkmath \"cosmossdk.io/math\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n)\n\nconst (\n\tblocksPerYear = 60 * 60 * 8766 / 5 // 5 second a block, 8766 = 365.25 * 24\n)\n\nvar initialIssue = sdkmath.NewIntWithDecimal(20, 8)\n\n// Create a new minter object\nfunc NewMinter(lastUpdate time.Time, inflationBase sdkmath.Int) Minter {\n\treturn Minter{\n\t\tLastUpdate:    lastUpdate,\n\t\tInflationBase: inflationBase,\n\t}\n}\n\n// DefaultMinter returns minter object for a new chain\nfunc DefaultMinter() Minter {\n\treturn NewMinter(\n\t\ttime.Unix(0, 0).UTC(),\n\t\tinitialIssue.Mul(sdkmath.NewIntWithDecimal(1, 6)), // 20*(10^8)iris, 20*(10^8)*(10^6)uiris\n\t)\n}\n\n// ValidateMinter returns err if the Minter is invalid\nfunc ValidateMinter(m Minter) error {\n\tif m.LastUpdate.Before(time.Unix(0, 0)) {\n\t\treturn fmt.Errorf(\"minter last update time(%s) should not be a time before January 1, 1970 UTC\", m.LastUpdate.String())\n\t}\n\tif !m.InflationBase.GT(sdkmath.ZeroInt()) {\n\t\treturn fmt.Errorf(\"minter inflation basement (%s) should be positive\", m.InflationBase.String())\n\t}\n\treturn nil\n}\n\n// NextAnnualProvisions gets the provisions for a block based on the annual provisions rate\nfunc (m Minter) NextAnnualProvisions(params Params) (provisions sdkmath.LegacyDec) {\n\treturn params.Inflation.MulInt(m.InflationBase)\n}\n\n// BlockProvision gets the provisions for a block based on the annual provisions rate\nfunc (m Minter) BlockProvision(params Params) sdk.Coin {\n\tprovisions := m.NextAnnualProvisions(params)\n\tblockInflationAmount := provisions.QuoInt(sdkmath.NewInt(blocksPerYear))\n\treturn sdk.NewCoin(params.MintDenom, blockInflationAmount.TruncateInt())\n}\n"
  },
  {
    "path": "modules/mint/types/minter_test.go",
    "content": "package types\n\nimport (\n\t\"testing\"\n\t\"time\"\n\n\t\"github.com/stretchr/testify/require\"\n\n\tsdkmath \"cosmossdk.io/math\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n)\n\nfunc TestNextInflation(t *testing.T) {\n\tminter := NewMinter(time.Now(), sdkmath.NewIntWithDecimal(100, 18))\n\ttests := []struct{ params Params }{\n\t\t{Params{Inflation: sdkmath.LegacyNewDecWithPrec(20, 2), MintDenom: sdk.DefaultBondDenom}},\n\t\t{Params{Inflation: sdkmath.LegacyNewDecWithPrec(10, 2), MintDenom: sdk.DefaultBondDenom}},\n\t\t{Params{Inflation: sdkmath.LegacyNewDecWithPrec(5, 2), MintDenom: sdk.DefaultBondDenom}},\n\t}\n\tfor _, tc := range tests {\n\t\tannualProvisions := minter.NextAnnualProvisions(tc.params)\n\t\tmintCoin := minter.BlockProvision(tc.params)\n\t\tblockProvision := annualProvisions.QuoInt(sdkmath.NewInt(12 * 60 * 8766))\n\t\trequire.True(t, mintCoin.Amount.Equal(blockProvision.TruncateInt()), \"mint amount:\"+mintCoin.Amount.String()+\", block provision amount: \"+blockProvision.TruncateInt().String())\n\t}\n}\n\nfunc TestDefaultMinter(t *testing.T) {\n\terr := ValidateMinter(DefaultMinter())\n\trequire.NoError(t, err)\n}\n\nfunc TestMinterValidate(t *testing.T) {\n\ttests := []struct {\n\t\texpectPass    bool\n\t\tLastUpdate    time.Time\n\t\tInflationBase sdkmath.Int\n\t}{\n\t\t{false, time.Unix(-1, -1), initialIssue.Mul(sdkmath.NewIntWithDecimal(1, 18))},\n\t\t{false, time.Unix(0, 0), initialIssue.Mul(sdkmath.NewIntWithDecimal(0, 0))},\n\t\t{true, time.Unix(0, 0), initialIssue.Mul(sdkmath.NewIntWithDecimal(1, 18))},\n\t}\n\tfor i, tc := range tests {\n\t\tminter := NewMinter(tc.LastUpdate, tc.InflationBase)\n\t\terr := ValidateMinter(minter)\n\t\tif tc.expectPass {\n\t\t\trequire.NoError(t, err, \"%d: %+v\", i, err)\n\t\t} else {\n\t\t\trequire.Error(t, err, \"%d: %+v\", i, err)\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "modules/mint/types/msg.go",
    "content": "package types\n\nimport (\n\tsdkerrors \"cosmossdk.io/errors\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n)\n\nvar (\n\t_ sdk.Msg = &MsgUpdateParams{}\n)\n\n// GetSignBytes returns the raw bytes for a MsgUpdateParams message that\n// the expected signer needs to sign.\nfunc (m *MsgUpdateParams) GetSignBytes() []byte {\n\tbz := ModuleCdc.MustMarshalJSON(m)\n\treturn sdk.MustSortJSON(bz)\n}\n\n// ValidateBasic executes sanity validation on the provided data\nfunc (m *MsgUpdateParams) ValidateBasic() error {\n\tif _, err := sdk.AccAddressFromBech32(m.Authority); err != nil {\n\t\treturn sdkerrors.Wrap(err, \"invalid authority address\")\n\t}\n\treturn m.Params.Validate()\n}\n\n// GetSigners returns the expected signers for a MsgUpdateParams message\nfunc (m *MsgUpdateParams) GetSigners() []sdk.AccAddress {\n\taddr, _ := sdk.AccAddressFromBech32(m.Authority)\n\treturn []sdk.AccAddress{addr}\n}\n"
  },
  {
    "path": "modules/mint/types/params.go",
    "content": "package types\n\nimport (\n\t\"errors\"\n\t\"fmt\"\n\t\"strings\"\n\n\t\"gopkg.in/yaml.v2\"\n\n\tsdkerrors \"cosmossdk.io/errors\"\n\t\"cosmossdk.io/math\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\tparamtypes \"github.com/cosmos/cosmos-sdk/x/params/types\"\n)\n\n// default paramspace for params keeper\nconst (\n\tDefaultParamSpace = \"mint\"\n)\n\n// Parameter store key\nvar (\n\t// params store for inflation params\n\tKeyInflation = []byte(\"Inflation\")\n\tKeyMintDenom = []byte(\"MintDenom\")\n)\n\n// ParamTable for mint module\nfunc ParamKeyTable() paramtypes.KeyTable {\n\treturn paramtypes.NewKeyTable().RegisterParamSet(&Params{})\n}\n\nfunc NewParams(mintDenom string, inflation math.LegacyDec) Params {\n\treturn Params{\n\t\tMintDenom: mintDenom,\n\t\tInflation: inflation,\n\t}\n}\n\n// DefaultParams returns default minting module parameters\nfunc DefaultParams() Params {\n\treturn Params{\n\t\tInflation: math.LegacyNewDecWithPrec(4, 2),\n\t\tMintDenom: sdk.DefaultBondDenom,\n\t}\n}\n\n// String implements the Stringer interface.\nfunc (p Params) String() string {\n\tout, _ := yaml.Marshal(p)\n\treturn string(out)\n}\n\n// ParamSetPairs implements params.ParamSet\nfunc (p *Params) ParamSetPairs() paramtypes.ParamSetPairs {\n\treturn paramtypes.ParamSetPairs{\n\t\tparamtypes.NewParamSetPair(KeyInflation, &p.Inflation, validateInflation),\n\t\tparamtypes.NewParamSetPair(KeyMintDenom, &p.MintDenom, validateMintDenom),\n\t}\n}\n\n// GetParamSpace implements params.ParamStruct\nfunc (p *Params) GetParamSpace() string {\n\treturn DefaultParamSpace\n}\n\n// Validate returns err if the Params is invalid\nfunc (p Params) Validate() error {\n\tif p.Inflation.GT(math.LegacyNewDecWithPrec(2, 1)) || p.Inflation.LT(math.LegacyZeroDec()) {\n\t\treturn sdkerrors.Wrapf(\n\t\t\tErrInvalidMintInflation,\n\t\t\t\"Mint inflation [%s] should be between [0, 0.2] \",\n\t\t\tp.Inflation.String(),\n\t\t)\n\t}\n\tif len(p.MintDenom) == 0 {\n\t\treturn sdkerrors.Wrapf(\n\t\t\tErrInvalidMintDenom,\n\t\t\t\"Mint denom [%s] should not be empty\",\n\t\t\tp.MintDenom,\n\t\t)\n\t}\n\treturn nil\n}\n\nfunc validateInflation(i interface{}) error {\n\tv, ok := i.(math.LegacyDec)\n\tif !ok {\n\t\treturn fmt.Errorf(\"invalid parameter type: %T\", i)\n\t}\n\n\tif v.GT(math.LegacyNewDecWithPrec(2, 1)) || v.LT(math.LegacyZeroDec()) {\n\t\treturn fmt.Errorf(\"Mint inflation [%s] should be between [0, 0.2] \", v.String())\n\t}\n\n\treturn nil\n}\n\nfunc validateMintDenom(i interface{}) error {\n\tv, ok := i.(string)\n\tif !ok {\n\t\treturn fmt.Errorf(\"invalid parameter type: %T\", i)\n\t}\n\n\tif strings.TrimSpace(v) == \"\" {\n\t\treturn errors.New(\"mint denom cannot be blank\")\n\t}\n\tif err := sdk.ValidateDenom(v); err != nil {\n\t\treturn err\n\t}\n\n\treturn nil\n}\n"
  },
  {
    "path": "modules/mint/types/query.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/mint/query.proto\n\npackage types\n\nimport (\n\tcontext \"context\"\n\tfmt \"fmt\"\n\tquery \"github.com/cosmos/cosmos-sdk/types/query\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tgrpc1 \"github.com/cosmos/gogoproto/grpc\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\t_ \"google.golang.org/genproto/googleapis/api/annotations\"\n\tgrpc \"google.golang.org/grpc\"\n\tcodes \"google.golang.org/grpc/codes\"\n\tstatus \"google.golang.org/grpc/status\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// QueryParamsRequest is request type for the Query/Parameters RPC method\ntype QueryParamsRequest struct {\n}\n\nfunc (m *QueryParamsRequest) Reset()         { *m = QueryParamsRequest{} }\nfunc (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) }\nfunc (*QueryParamsRequest) ProtoMessage()    {}\nfunc (*QueryParamsRequest) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_f3acdec2e023e167, []int{0}\n}\nfunc (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *QueryParamsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_QueryParamsRequest.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *QueryParamsRequest) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_QueryParamsRequest.Merge(m, src)\n}\nfunc (m *QueryParamsRequest) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *QueryParamsRequest) XXX_DiscardUnknown() {\n\txxx_messageInfo_QueryParamsRequest.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_QueryParamsRequest proto.InternalMessageInfo\n\n// QueryParamsResponse is response type for the Query/Parameters RPC method\ntype QueryParamsResponse struct {\n\tParams Params              `protobuf:\"bytes,1,opt,name=params,proto3\" json:\"params\"`\n\tRes    *query.PageResponse `protobuf:\"bytes,2,opt,name=res,proto3\" json:\"res,omitempty\"`\n}\n\nfunc (m *QueryParamsResponse) Reset()         { *m = QueryParamsResponse{} }\nfunc (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) }\nfunc (*QueryParamsResponse) ProtoMessage()    {}\nfunc (*QueryParamsResponse) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_f3acdec2e023e167, []int{1}\n}\nfunc (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *QueryParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_QueryParamsResponse.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *QueryParamsResponse) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_QueryParamsResponse.Merge(m, src)\n}\nfunc (m *QueryParamsResponse) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *QueryParamsResponse) XXX_DiscardUnknown() {\n\txxx_messageInfo_QueryParamsResponse.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_QueryParamsResponse proto.InternalMessageInfo\n\nfunc (m *QueryParamsResponse) GetParams() Params {\n\tif m != nil {\n\t\treturn m.Params\n\t}\n\treturn Params{}\n}\n\nfunc (m *QueryParamsResponse) GetRes() *query.PageResponse {\n\tif m != nil {\n\t\treturn m.Res\n\t}\n\treturn nil\n}\n\nfunc init() {\n\tproto.RegisterType((*QueryParamsRequest)(nil), \"irishub.mint.QueryParamsRequest\")\n\tproto.RegisterType((*QueryParamsResponse)(nil), \"irishub.mint.QueryParamsResponse\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/mint/query.proto\", fileDescriptor_f3acdec2e023e167) }\n\nvar fileDescriptor_f3acdec2e023e167 = []byte{\n\t// 330 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x90, 0x31, 0x4b, 0x03, 0x31,\n\t0x14, 0xc7, 0xef, 0xaa, 0x76, 0x88, 0x4e, 0xf1, 0xd0, 0x52, 0xca, 0x59, 0xbb, 0x28, 0x0e, 0x89,\n\t0xad, 0x2e, 0xae, 0x1d, 0x9d, 0x6a, 0x47, 0xb7, 0x5c, 0x0d, 0x31, 0xd8, 0xcb, 0x4b, 0x2f, 0xb9,\n\t0x42, 0x57, 0xf1, 0x03, 0x08, 0x7e, 0xa9, 0x8e, 0x05, 0x17, 0x27, 0x91, 0xd6, 0x0f, 0x22, 0x49,\n\t0x4e, 0xf1, 0x10, 0x5c, 0x42, 0x78, 0xef, 0xff, 0xff, 0xbd, 0xf7, 0x7f, 0xa8, 0x25, 0x0b, 0x69,\n\t0xee, 0xcb, 0x8c, 0xe6, 0x52, 0x59, 0x3a, 0x2b, 0x79, 0xb1, 0x20, 0xba, 0x00, 0x0b, 0x78, 0xaf,\n\t0xea, 0x10, 0xd7, 0x69, 0x9f, 0x4d, 0xc0, 0xe4, 0x60, 0x68, 0xc6, 0x0c, 0x0f, 0x32, 0x3a, 0xef,\n\t0x67, 0xdc, 0xb2, 0x3e, 0xd5, 0x4c, 0x48, 0xc5, 0xac, 0x04, 0x15, 0x9c, 0xed, 0xc3, 0x1a, 0xd3,\n\t0x3d, 0x55, 0x23, 0x11, 0x20, 0xc0, 0x7f, 0xa9, 0xfb, 0x55, 0xd5, 0x8e, 0x00, 0x10, 0x53, 0x4e,\n\t0x99, 0x96, 0x94, 0x29, 0x05, 0xd6, 0xb3, 0x4c, 0xe8, 0xf6, 0x12, 0x84, 0x6f, 0xdc, 0xb8, 0x11,\n\t0x2b, 0x58, 0x6e, 0xc6, 0x7c, 0x56, 0x72, 0x63, 0x7b, 0x4f, 0x31, 0xda, 0xaf, 0x95, 0x8d, 0x06,\n\t0x65, 0x38, 0x1e, 0xa0, 0xa6, 0xf6, 0x95, 0x56, 0xdc, 0x8d, 0x4f, 0x77, 0x07, 0x09, 0xf9, 0x9d,\n\t0x82, 0x04, 0xf5, 0x70, 0x7b, 0xf9, 0x7e, 0x14, 0x8d, 0x2b, 0x25, 0xbe, 0x42, 0x5b, 0x05, 0x37,\n\t0xad, 0x86, 0x37, 0x9c, 0x90, 0x10, 0x94, 0xb8, 0xa0, 0x24, 0xdc, 0xa3, 0x0a, 0x4a, 0x46, 0x4c,\n\t0xf0, 0xef, 0x49, 0x63, 0xe7, 0x19, 0x58, 0xb4, 0xe3, 0xb7, 0xc0, 0x0f, 0xa8, 0x19, 0xd8, 0xb8,\n\t0x5b, 0x9f, 0xf8, 0x77, 0xf7, 0xf6, 0xf1, 0x3f, 0x8a, 0x00, 0xef, 0x75, 0x1e, 0x5f, 0x3f, 0x5f,\n\t0x1a, 0x07, 0x38, 0xa1, 0xb5, 0x53, 0x86, 0x85, 0x87, 0xd7, 0xcb, 0x75, 0x1a, 0xaf, 0xd6, 0x69,\n\t0xfc, 0xb1, 0x4e, 0xe3, 0xe7, 0x4d, 0x1a, 0xad, 0x36, 0x69, 0xf4, 0xb6, 0x49, 0xa3, 0xdb, 0x73,\n\t0x21, 0xad, 0x03, 0x4f, 0x20, 0xf7, 0x4e, 0xc5, 0xed, 0x0f, 0x61, 0x7e, 0x49, 0x73, 0xb8, 0x2b,\n\t0xa7, 0xdc, 0x04, 0x98, 0x5d, 0x68, 0x6e, 0xb2, 0xa6, 0xbf, 0xf2, 0xc5, 0x57, 0x00, 0x00, 0x00,\n\t0xff, 0xff, 0xf0, 0x2c, 0x0f, 0xbe, 0x08, 0x02, 0x00, 0x00,\n}\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ context.Context\nvar _ grpc.ClientConn\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the grpc package it is being compiled against.\nconst _ = grpc.SupportPackageIsVersion4\n\n// QueryClient is the client API for Query service.\n//\n// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.\ntype QueryClient interface {\n\t// Params queries the mint parameters\n\tParams(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error)\n}\n\ntype queryClient struct {\n\tcc grpc1.ClientConn\n}\n\nfunc NewQueryClient(cc grpc1.ClientConn) QueryClient {\n\treturn &queryClient{cc}\n}\n\nfunc (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) {\n\tout := new(QueryParamsResponse)\n\terr := c.cc.Invoke(ctx, \"/irishub.mint.Query/Params\", in, out, opts...)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn out, nil\n}\n\n// QueryServer is the server API for Query service.\ntype QueryServer interface {\n\t// Params queries the mint parameters\n\tParams(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error)\n}\n\n// UnimplementedQueryServer can be embedded to have forward compatible implementations.\ntype UnimplementedQueryServer struct {\n}\n\nfunc (*UnimplementedQueryServer) Params(ctx context.Context, req *QueryParamsRequest) (*QueryParamsResponse, error) {\n\treturn nil, status.Errorf(codes.Unimplemented, \"method Params not implemented\")\n}\n\nfunc RegisterQueryServer(s grpc1.Server, srv QueryServer) {\n\ts.RegisterService(&_Query_serviceDesc, srv)\n}\n\nfunc _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {\n\tin := new(QueryParamsRequest)\n\tif err := dec(in); err != nil {\n\t\treturn nil, err\n\t}\n\tif interceptor == nil {\n\t\treturn srv.(QueryServer).Params(ctx, in)\n\t}\n\tinfo := &grpc.UnaryServerInfo{\n\t\tServer:     srv,\n\t\tFullMethod: \"/irishub.mint.Query/Params\",\n\t}\n\thandler := func(ctx context.Context, req interface{}) (interface{}, error) {\n\t\treturn srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest))\n\t}\n\treturn interceptor(ctx, in, info, handler)\n}\n\nvar _Query_serviceDesc = grpc.ServiceDesc{\n\tServiceName: \"irishub.mint.Query\",\n\tHandlerType: (*QueryServer)(nil),\n\tMethods: []grpc.MethodDesc{\n\t\t{\n\t\t\tMethodName: \"Params\",\n\t\t\tHandler:    _Query_Params_Handler,\n\t\t},\n\t},\n\tStreams:  []grpc.StreamDesc{},\n\tMetadata: \"irishub/mint/query.proto\",\n}\n\nfunc (m *QueryParamsRequest) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *QueryParamsRequest) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *QueryParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *QueryParamsResponse) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *QueryParamsResponse) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *QueryParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\tif m.Res != nil {\n\t\t{\n\t\t\tsize, err := m.Res.MarshalToSizedBuffer(dAtA[:i])\n\t\t\tif err != nil {\n\t\t\t\treturn 0, err\n\t\t\t}\n\t\t\ti -= size\n\t\t\ti = encodeVarintQuery(dAtA, i, uint64(size))\n\t\t}\n\t\ti--\n\t\tdAtA[i] = 0x12\n\t}\n\t{\n\t\tsize, err := m.Params.MarshalToSizedBuffer(dAtA[:i])\n\t\tif err != nil {\n\t\t\treturn 0, err\n\t\t}\n\t\ti -= size\n\t\ti = encodeVarintQuery(dAtA, i, uint64(size))\n\t}\n\ti--\n\tdAtA[i] = 0xa\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintQuery(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovQuery(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *QueryParamsRequest) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\treturn n\n}\n\nfunc (m *QueryParamsResponse) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = m.Params.Size()\n\tn += 1 + l + sovQuery(uint64(l))\n\tif m.Res != nil {\n\t\tl = m.Res.Size()\n\t\tn += 1 + l + sovQuery(uint64(l))\n\t}\n\treturn n\n}\n\nfunc sovQuery(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozQuery(x uint64) (n int) {\n\treturn sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *QueryParamsRequest) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: QueryParamsRequest: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: QueryParamsRequest: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipQuery(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *QueryParamsResponse) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: QueryParamsResponse: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: QueryParamsResponse: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Params\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Res\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif m.Res == nil {\n\t\t\t\tm.Res = &query.PageResponse{}\n\t\t\t}\n\t\t\tif err := m.Res.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipQuery(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipQuery(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowQuery\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowQuery\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthQuery\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupQuery\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthQuery\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthQuery        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowQuery          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupQuery = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "modules/mint/types/query.pb.gw.go",
    "content": "// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT.\n// source: irishub/mint/query.proto\n\n/*\nPackage types is a reverse proxy.\n\nIt translates gRPC into RESTful JSON APIs.\n*/\npackage types\n\nimport (\n\t\"context\"\n\t\"io\"\n\t\"net/http\"\n\n\t\"github.com/golang/protobuf/descriptor\"\n\t\"github.com/golang/protobuf/proto\"\n\t\"github.com/grpc-ecosystem/grpc-gateway/runtime\"\n\t\"github.com/grpc-ecosystem/grpc-gateway/utilities\"\n\t\"google.golang.org/grpc\"\n\t\"google.golang.org/grpc/codes\"\n\t\"google.golang.org/grpc/grpclog\"\n\t\"google.golang.org/grpc/metadata\"\n\t\"google.golang.org/grpc/status\"\n)\n\n// Suppress \"imported and not used\" errors\nvar _ codes.Code\nvar _ io.Reader\nvar _ status.Status\nvar _ = runtime.String\nvar _ = utilities.NewDoubleArray\nvar _ = descriptor.ForMessage\nvar _ = metadata.Join\n\nfunc request_Query_Params_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {\n\tvar protoReq QueryParamsRequest\n\tvar metadata runtime.ServerMetadata\n\n\tmsg, err := client.Params(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))\n\treturn msg, metadata, err\n\n}\n\nfunc local_request_Query_Params_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {\n\tvar protoReq QueryParamsRequest\n\tvar metadata runtime.ServerMetadata\n\n\tmsg, err := server.Params(ctx, &protoReq)\n\treturn msg, metadata, err\n\n}\n\n// RegisterQueryHandlerServer registers the http handlers for service Query to \"mux\".\n// UnaryRPC     :call QueryServer directly.\n// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906.\n// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterQueryHandlerFromEndpoint instead.\nfunc RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, server QueryServer) error {\n\n\tmux.Handle(\"GET\", pattern_Query_Params_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {\n\t\tctx, cancel := context.WithCancel(req.Context())\n\t\tdefer cancel()\n\t\tvar stream runtime.ServerTransportStream\n\t\tctx = grpc.NewContextWithServerTransportStream(ctx, &stream)\n\t\tinboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)\n\t\trctx, err := runtime.AnnotateIncomingContext(ctx, mux, req)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\t\tresp, md, err := local_request_Query_Params_0(rctx, inboundMarshaler, server, req, pathParams)\n\t\tmd.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())\n\t\tctx = runtime.NewServerMetadataContext(ctx, md)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\n\t\tforward_Query_Params_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)\n\n\t})\n\n\treturn nil\n}\n\n// RegisterQueryHandlerFromEndpoint is same as RegisterQueryHandler but\n// automatically dials to \"endpoint\" and closes the connection when \"ctx\" gets done.\nfunc RegisterQueryHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) {\n\tconn, err := grpc.Dial(endpoint, opts...)\n\tif err != nil {\n\t\treturn err\n\t}\n\tdefer func() {\n\t\tif err != nil {\n\t\t\tif cerr := conn.Close(); cerr != nil {\n\t\t\t\tgrpclog.Infof(\"Failed to close conn to %s: %v\", endpoint, cerr)\n\t\t\t}\n\t\t\treturn\n\t\t}\n\t\tgo func() {\n\t\t\t<-ctx.Done()\n\t\t\tif cerr := conn.Close(); cerr != nil {\n\t\t\t\tgrpclog.Infof(\"Failed to close conn to %s: %v\", endpoint, cerr)\n\t\t\t}\n\t\t}()\n\t}()\n\n\treturn RegisterQueryHandler(ctx, mux, conn)\n}\n\n// RegisterQueryHandler registers the http handlers for service Query to \"mux\".\n// The handlers forward requests to the grpc endpoint over \"conn\".\nfunc RegisterQueryHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error {\n\treturn RegisterQueryHandlerClient(ctx, mux, NewQueryClient(conn))\n}\n\n// RegisterQueryHandlerClient registers the http handlers for service Query\n// to \"mux\". The handlers forward requests to the grpc endpoint over the given implementation of \"QueryClient\".\n// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in \"QueryClient\"\n// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in\n// \"QueryClient\" to call the correct interceptors.\nfunc RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, client QueryClient) error {\n\n\tmux.Handle(\"GET\", pattern_Query_Params_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {\n\t\tctx, cancel := context.WithCancel(req.Context())\n\t\tdefer cancel()\n\t\tinboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)\n\t\trctx, err := runtime.AnnotateContext(ctx, mux, req)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\t\tresp, md, err := request_Query_Params_0(rctx, inboundMarshaler, client, req, pathParams)\n\t\tctx = runtime.NewServerMetadataContext(ctx, md)\n\t\tif err != nil {\n\t\t\truntime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)\n\t\t\treturn\n\t\t}\n\n\t\tforward_Query_Params_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)\n\n\t})\n\n\treturn nil\n}\n\nvar (\n\tpattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{\"irishub\", \"mint\", \"params\"}, \"\", runtime.AssumeColonVerbOpt(false)))\n)\n\nvar (\n\tforward_Query_Params_0 = runtime.ForwardResponseMessage\n)\n"
  },
  {
    "path": "modules/mint/types/tx.pb.go",
    "content": "// Code generated by protoc-gen-gogo. DO NOT EDIT.\n// source: irishub/mint/tx.proto\n\npackage types\n\nimport (\n\tcontext \"context\"\n\tfmt \"fmt\"\n\t_ \"github.com/cosmos/cosmos-proto\"\n\t_ \"github.com/cosmos/cosmos-sdk/types/msgservice\"\n\t_ \"github.com/cosmos/gogoproto/gogoproto\"\n\tgrpc1 \"github.com/cosmos/gogoproto/grpc\"\n\tproto \"github.com/cosmos/gogoproto/proto\"\n\tgrpc \"google.golang.org/grpc\"\n\tcodes \"google.golang.org/grpc/codes\"\n\tstatus \"google.golang.org/grpc/status\"\n\tio \"io\"\n\tmath \"math\"\n\tmath_bits \"math/bits\"\n)\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ = proto.Marshal\nvar _ = fmt.Errorf\nvar _ = math.Inf\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the proto package it is being compiled against.\n// A compilation error at this line likely means your copy of the\n// proto package needs to be updated.\nconst _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package\n\n// MsgUpdateParams is the Msg/UpdateParams request type.\n//\n// Since: cosmos-sdk 0.47\ntype MsgUpdateParams struct {\n\t// authority is the address that controls the module (defaults to x/gov unless\n\t// overwritten).\n\tAuthority string `protobuf:\"bytes,1,opt,name=authority,proto3\" json:\"authority,omitempty\"`\n\t// params defines the x/mint parameters to update.\n\t//\n\t// NOTE: All parameters must be supplied.\n\tParams Params `protobuf:\"bytes,2,opt,name=params,proto3\" json:\"params\"`\n}\n\nfunc (m *MsgUpdateParams) Reset()         { *m = MsgUpdateParams{} }\nfunc (m *MsgUpdateParams) String() string { return proto.CompactTextString(m) }\nfunc (*MsgUpdateParams) ProtoMessage()    {}\nfunc (*MsgUpdateParams) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_6ccd37db551d9a32, []int{0}\n}\nfunc (m *MsgUpdateParams) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *MsgUpdateParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_MsgUpdateParams.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *MsgUpdateParams) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_MsgUpdateParams.Merge(m, src)\n}\nfunc (m *MsgUpdateParams) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *MsgUpdateParams) XXX_DiscardUnknown() {\n\txxx_messageInfo_MsgUpdateParams.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_MsgUpdateParams proto.InternalMessageInfo\n\n// MsgUpdateParamsResponse defines the response structure for executing a\n// MsgUpdateParams message.\n//\n// Since: cosmos-sdk 0.47\ntype MsgUpdateParamsResponse struct {\n}\n\nfunc (m *MsgUpdateParamsResponse) Reset()         { *m = MsgUpdateParamsResponse{} }\nfunc (m *MsgUpdateParamsResponse) String() string { return proto.CompactTextString(m) }\nfunc (*MsgUpdateParamsResponse) ProtoMessage()    {}\nfunc (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {\n\treturn fileDescriptor_6ccd37db551d9a32, []int{1}\n}\nfunc (m *MsgUpdateParamsResponse) XXX_Unmarshal(b []byte) error {\n\treturn m.Unmarshal(b)\n}\nfunc (m *MsgUpdateParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {\n\tif deterministic {\n\t\treturn xxx_messageInfo_MsgUpdateParamsResponse.Marshal(b, m, deterministic)\n\t} else {\n\t\tb = b[:cap(b)]\n\t\tn, err := m.MarshalToSizedBuffer(b)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\treturn b[:n], nil\n\t}\n}\nfunc (m *MsgUpdateParamsResponse) XXX_Merge(src proto.Message) {\n\txxx_messageInfo_MsgUpdateParamsResponse.Merge(m, src)\n}\nfunc (m *MsgUpdateParamsResponse) XXX_Size() int {\n\treturn m.Size()\n}\nfunc (m *MsgUpdateParamsResponse) XXX_DiscardUnknown() {\n\txxx_messageInfo_MsgUpdateParamsResponse.DiscardUnknown(m)\n}\n\nvar xxx_messageInfo_MsgUpdateParamsResponse proto.InternalMessageInfo\n\nfunc init() {\n\tproto.RegisterType((*MsgUpdateParams)(nil), \"irishub.mint.MsgUpdateParams\")\n\tproto.RegisterType((*MsgUpdateParamsResponse)(nil), \"irishub.mint.MsgUpdateParamsResponse\")\n}\n\nfunc init() { proto.RegisterFile(\"irishub/mint/tx.proto\", fileDescriptor_6ccd37db551d9a32) }\n\nvar fileDescriptor_6ccd37db551d9a32 = []byte{\n\t// 323 bytes of a gzipped FileDescriptorProto\n\t0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0xcd, 0x2c, 0xca, 0x2c,\n\t0xce, 0x28, 0x4d, 0xd2, 0xcf, 0xcd, 0xcc, 0x2b, 0xd1, 0x2f, 0xa9, 0xd0, 0x2b, 0x28, 0xca, 0x2f,\n\t0xc9, 0x17, 0xe2, 0x81, 0x0a, 0xeb, 0x81, 0x84, 0xa5, 0xc4, 0x51, 0x14, 0x81, 0x08, 0x88, 0x32,\n\t0x29, 0xf1, 0xe4, 0xfc, 0xe2, 0xdc, 0xfc, 0x62, 0xfd, 0xdc, 0xe2, 0x74, 0xfd, 0x32, 0x43, 0x10,\n\t0x05, 0x95, 0x90, 0x84, 0x48, 0xc4, 0x83, 0x79, 0xfa, 0x10, 0x0e, 0x54, 0x4a, 0x24, 0x3d, 0x3f,\n\t0x3d, 0x1f, 0x22, 0x0e, 0x62, 0x41, 0x44, 0x95, 0x7a, 0x19, 0xb9, 0xf8, 0x7d, 0x8b, 0xd3, 0x43,\n\t0x0b, 0x52, 0x12, 0x4b, 0x52, 0x03, 0x12, 0x8b, 0x12, 0x73, 0x8b, 0x85, 0xcc, 0xb8, 0x38, 0x13,\n\t0x4b, 0x4b, 0x32, 0xf2, 0x8b, 0x32, 0x4b, 0x2a, 0x25, 0x18, 0x15, 0x18, 0x35, 0x38, 0x9d, 0x24,\n\t0x2e, 0x6d, 0xd1, 0x15, 0x81, 0x1a, 0xe7, 0x98, 0x92, 0x52, 0x94, 0x5a, 0x5c, 0x1c, 0x5c, 0x52,\n\t0x94, 0x99, 0x97, 0x1e, 0x84, 0x50, 0x2a, 0x64, 0xc4, 0xc5, 0x56, 0x00, 0x36, 0x41, 0x82, 0x49,\n\t0x81, 0x51, 0x83, 0xdb, 0x48, 0x44, 0x0f, 0xd9, 0x37, 0x7a, 0x10, 0xd3, 0x9d, 0x58, 0x4e, 0xdc,\n\t0x93, 0x67, 0x08, 0x82, 0xaa, 0xb4, 0xe2, 0x6b, 0x7a, 0xbe, 0x41, 0x0b, 0x61, 0x86, 0x92, 0x24,\n\t0x97, 0x38, 0x9a, 0x73, 0x82, 0x52, 0x8b, 0x0b, 0xf2, 0xf3, 0x8a, 0x53, 0x8d, 0x92, 0xb8, 0x98,\n\t0x7d, 0x8b, 0xd3, 0x85, 0x42, 0xb8, 0x78, 0x50, 0x5c, 0x2b, 0x8b, 0x6a, 0x0b, 0x9a, 0x6e, 0x29,\n\t0x55, 0xbc, 0xd2, 0x30, 0xc3, 0xa5, 0x58, 0x1b, 0x9e, 0x6f, 0xd0, 0x62, 0x74, 0xf2, 0x3b, 0xf1,\n\t0x50, 0x8e, 0xe1, 0xc4, 0x23, 0x39, 0xc6, 0x0b, 0x8f, 0xe4, 0x18, 0x1f, 0x3c, 0x92, 0x63, 0x9c,\n\t0xf0, 0x58, 0x8e, 0xe1, 0xc2, 0x63, 0x39, 0x86, 0x1b, 0x8f, 0xe5, 0x18, 0xa2, 0x0c, 0xd2, 0x33,\n\t0x4b, 0x40, 0x26, 0x25, 0xe7, 0xe7, 0xea, 0x83, 0x4c, 0xcd, 0x4b, 0x2d, 0xd1, 0x87, 0x45, 0x51,\n\t0x99, 0x89, 0x7e, 0x6e, 0x7e, 0x4a, 0x69, 0x4e, 0x6a, 0x31, 0x34, 0x4a, 0x2b, 0x0b, 0x52, 0x8b,\n\t0x93, 0xd8, 0xc0, 0xa1, 0x6c, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0x8f, 0x06, 0x4a, 0xa6, 0xef,\n\t0x01, 0x00, 0x00,\n}\n\n// Reference imports to suppress errors if they are not otherwise used.\nvar _ context.Context\nvar _ grpc.ClientConn\n\n// This is a compile-time assertion to ensure that this generated file\n// is compatible with the grpc package it is being compiled against.\nconst _ = grpc.SupportPackageIsVersion4\n\n// MsgClient is the client API for Msg service.\n//\n// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.\ntype MsgClient interface {\n\t// UpdateParams defines a governance operation for updating the x/coinswap\n\t// module parameters. The authority is defined in the keeper.\n\t//\n\t// Since: cosmos-sdk 0.47\n\tUpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)\n}\n\ntype msgClient struct {\n\tcc grpc1.ClientConn\n}\n\nfunc NewMsgClient(cc grpc1.ClientConn) MsgClient {\n\treturn &msgClient{cc}\n}\n\nfunc (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {\n\tout := new(MsgUpdateParamsResponse)\n\terr := c.cc.Invoke(ctx, \"/irishub.mint.Msg/UpdateParams\", in, out, opts...)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn out, nil\n}\n\n// MsgServer is the server API for Msg service.\ntype MsgServer interface {\n\t// UpdateParams defines a governance operation for updating the x/coinswap\n\t// module parameters. The authority is defined in the keeper.\n\t//\n\t// Since: cosmos-sdk 0.47\n\tUpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)\n}\n\n// UnimplementedMsgServer can be embedded to have forward compatible implementations.\ntype UnimplementedMsgServer struct {\n}\n\nfunc (*UnimplementedMsgServer) UpdateParams(ctx context.Context, req *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {\n\treturn nil, status.Errorf(codes.Unimplemented, \"method UpdateParams not implemented\")\n}\n\nfunc RegisterMsgServer(s grpc1.Server, srv MsgServer) {\n\ts.RegisterService(&_Msg_serviceDesc, srv)\n}\n\nfunc _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {\n\tin := new(MsgUpdateParams)\n\tif err := dec(in); err != nil {\n\t\treturn nil, err\n\t}\n\tif interceptor == nil {\n\t\treturn srv.(MsgServer).UpdateParams(ctx, in)\n\t}\n\tinfo := &grpc.UnaryServerInfo{\n\t\tServer:     srv,\n\t\tFullMethod: \"/irishub.mint.Msg/UpdateParams\",\n\t}\n\thandler := func(ctx context.Context, req interface{}) (interface{}, error) {\n\t\treturn srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))\n\t}\n\treturn interceptor(ctx, in, info, handler)\n}\n\nvar _Msg_serviceDesc = grpc.ServiceDesc{\n\tServiceName: \"irishub.mint.Msg\",\n\tHandlerType: (*MsgServer)(nil),\n\tMethods: []grpc.MethodDesc{\n\t\t{\n\t\t\tMethodName: \"UpdateParams\",\n\t\t\tHandler:    _Msg_UpdateParams_Handler,\n\t\t},\n\t},\n\tStreams:  []grpc.StreamDesc{},\n\tMetadata: \"irishub/mint/tx.proto\",\n}\n\nfunc (m *MsgUpdateParams) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *MsgUpdateParams) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *MsgUpdateParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\t{\n\t\tsize, err := m.Params.MarshalToSizedBuffer(dAtA[:i])\n\t\tif err != nil {\n\t\t\treturn 0, err\n\t\t}\n\t\ti -= size\n\t\ti = encodeVarintTx(dAtA, i, uint64(size))\n\t}\n\ti--\n\tdAtA[i] = 0x12\n\tif len(m.Authority) > 0 {\n\t\ti -= len(m.Authority)\n\t\tcopy(dAtA[i:], m.Authority)\n\t\ti = encodeVarintTx(dAtA, i, uint64(len(m.Authority)))\n\t\ti--\n\t\tdAtA[i] = 0xa\n\t}\n\treturn len(dAtA) - i, nil\n}\n\nfunc (m *MsgUpdateParamsResponse) Marshal() (dAtA []byte, err error) {\n\tsize := m.Size()\n\tdAtA = make([]byte, size)\n\tn, err := m.MarshalToSizedBuffer(dAtA[:size])\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn dAtA[:n], nil\n}\n\nfunc (m *MsgUpdateParamsResponse) MarshalTo(dAtA []byte) (int, error) {\n\tsize := m.Size()\n\treturn m.MarshalToSizedBuffer(dAtA[:size])\n}\n\nfunc (m *MsgUpdateParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {\n\ti := len(dAtA)\n\t_ = i\n\tvar l int\n\t_ = l\n\treturn len(dAtA) - i, nil\n}\n\nfunc encodeVarintTx(dAtA []byte, offset int, v uint64) int {\n\toffset -= sovTx(v)\n\tbase := offset\n\tfor v >= 1<<7 {\n\t\tdAtA[offset] = uint8(v&0x7f | 0x80)\n\t\tv >>= 7\n\t\toffset++\n\t}\n\tdAtA[offset] = uint8(v)\n\treturn base\n}\nfunc (m *MsgUpdateParams) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\tl = len(m.Authority)\n\tif l > 0 {\n\t\tn += 1 + l + sovTx(uint64(l))\n\t}\n\tl = m.Params.Size()\n\tn += 1 + l + sovTx(uint64(l))\n\treturn n\n}\n\nfunc (m *MsgUpdateParamsResponse) Size() (n int) {\n\tif m == nil {\n\t\treturn 0\n\t}\n\tvar l int\n\t_ = l\n\treturn n\n}\n\nfunc sovTx(x uint64) (n int) {\n\treturn (math_bits.Len64(x|1) + 6) / 7\n}\nfunc sozTx(x uint64) (n int) {\n\treturn sovTx(uint64((x << 1) ^ uint64((int64(x) >> 63))))\n}\nfunc (m *MsgUpdateParams) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: MsgUpdateParams: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: MsgUpdateParams: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tcase 1:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Authority\", wireType)\n\t\t\t}\n\t\t\tvar stringLen uint64\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tstringLen |= uint64(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tintStringLen := int(stringLen)\n\t\t\tif intStringLen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + intStringLen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tm.Authority = string(dAtA[iNdEx:postIndex])\n\t\t\tiNdEx = postIndex\n\t\tcase 2:\n\t\t\tif wireType != 2 {\n\t\t\t\treturn fmt.Errorf(\"proto: wrong wireType = %d for field Params\", wireType)\n\t\t\t}\n\t\t\tvar msglen int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tmsglen |= int(b&0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif msglen < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tpostIndex := iNdEx + msglen\n\t\t\tif postIndex < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif postIndex > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tif err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tiNdEx = postIndex\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipTx(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tfor iNdEx < l {\n\t\tpreIndex := iNdEx\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= uint64(b&0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\tfieldNum := int32(wire >> 3)\n\t\twireType := int(wire & 0x7)\n\t\tif wireType == 4 {\n\t\t\treturn fmt.Errorf(\"proto: MsgUpdateParamsResponse: wiretype end group for non-group\")\n\t\t}\n\t\tif fieldNum <= 0 {\n\t\t\treturn fmt.Errorf(\"proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)\", fieldNum, wire)\n\t\t}\n\t\tswitch fieldNum {\n\t\tdefault:\n\t\t\tiNdEx = preIndex\n\t\t\tskippy, err := skipTx(dAtA[iNdEx:])\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif (skippy < 0) || (iNdEx+skippy) < 0 {\n\t\t\t\treturn ErrInvalidLengthTx\n\t\t\t}\n\t\t\tif (iNdEx + skippy) > l {\n\t\t\t\treturn io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tiNdEx += skippy\n\t\t}\n\t}\n\n\tif iNdEx > l {\n\t\treturn io.ErrUnexpectedEOF\n\t}\n\treturn nil\n}\nfunc skipTx(dAtA []byte) (n int, err error) {\n\tl := len(dAtA)\n\tiNdEx := 0\n\tdepth := 0\n\tfor iNdEx < l {\n\t\tvar wire uint64\n\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\tif shift >= 64 {\n\t\t\t\treturn 0, ErrIntOverflowTx\n\t\t\t}\n\t\t\tif iNdEx >= l {\n\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t}\n\t\t\tb := dAtA[iNdEx]\n\t\t\tiNdEx++\n\t\t\twire |= (uint64(b) & 0x7F) << shift\n\t\t\tif b < 0x80 {\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\twireType := int(wire & 0x7)\n\t\tswitch wireType {\n\t\tcase 0:\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tiNdEx++\n\t\t\t\tif dAtA[iNdEx-1] < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\tcase 1:\n\t\t\tiNdEx += 8\n\t\tcase 2:\n\t\t\tvar length int\n\t\t\tfor shift := uint(0); ; shift += 7 {\n\t\t\t\tif shift >= 64 {\n\t\t\t\t\treturn 0, ErrIntOverflowTx\n\t\t\t\t}\n\t\t\t\tif iNdEx >= l {\n\t\t\t\t\treturn 0, io.ErrUnexpectedEOF\n\t\t\t\t}\n\t\t\t\tb := dAtA[iNdEx]\n\t\t\t\tiNdEx++\n\t\t\t\tlength |= (int(b) & 0x7F) << shift\n\t\t\t\tif b < 0x80 {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif length < 0 {\n\t\t\t\treturn 0, ErrInvalidLengthTx\n\t\t\t}\n\t\t\tiNdEx += length\n\t\tcase 3:\n\t\t\tdepth++\n\t\tcase 4:\n\t\t\tif depth == 0 {\n\t\t\t\treturn 0, ErrUnexpectedEndOfGroupTx\n\t\t\t}\n\t\t\tdepth--\n\t\tcase 5:\n\t\t\tiNdEx += 4\n\t\tdefault:\n\t\t\treturn 0, fmt.Errorf(\"proto: illegal wireType %d\", wireType)\n\t\t}\n\t\tif iNdEx < 0 {\n\t\t\treturn 0, ErrInvalidLengthTx\n\t\t}\n\t\tif depth == 0 {\n\t\t\treturn iNdEx, nil\n\t\t}\n\t}\n\treturn 0, io.ErrUnexpectedEOF\n}\n\nvar (\n\tErrInvalidLengthTx        = fmt.Errorf(\"proto: negative length found during unmarshaling\")\n\tErrIntOverflowTx          = fmt.Errorf(\"proto: integer overflow\")\n\tErrUnexpectedEndOfGroupTx = fmt.Errorf(\"proto: unexpected end of group\")\n)\n"
  },
  {
    "path": "network/hermes/README.md",
    "content": "# Hermes Relayer\n\n[Hermes](https://hermes.informal.systems/) is a Rust implementation of a relayer for the [Inter-Blockchain Communication (IBC)](https://ibcprotocol.org/) protocol.\n\n> The Inter-Blockchain Communication protocol is an end-to-end, connection-oriented, stateful protocol for reliable, ordered, and authenticated communication between modules on separate distributed ledgers.\n\n## Getting started\n\n- Install [Rust](https://www.rust-lang.org/tools/install)\n- Install [Hermes](https://hermes.informal.systems/installation.html)\n\nThe following directory contains a basic executable script which handles creation of clients, connections and channels in order to facilitate packet relaying between distributed ledgers using the IBC protocol.\nThis serves as a basis for demonstration of interchain accounts e2e functionality validation.\n\n## Usage\n\n- Before attempting to create clients, connections and channels, the private keys for existing chains must be restored. Please note - currently the relayer does NOT support a keyring store to securely store the private key file. The key file will be stored on the local file system in the user `$HOME` folder under `$HOME/.hermes`\n```\nhermes -c config.toml keys restore $CHAIN_ID -m $MNEMONIC\nhermes -c config.toml keys restore $CHAIN_ID -m $MNEMONIC\n```\n\n- Execute the script\n```\n./hermes.sh\n```\n\n- Useful commands\n```\n# Query client state\nhermes query client state $CHAIN_ID 07-tendermint-0\n\n# Update client state by sending an update-client transaction\nhermes tx raw update-client $CHAIN_ID 07-tendermint-0\n\n# Query a connection end\nhermes query connection end $CHAIN_ID connection-0\n\n# Query channel ends\nhermes query channel end $CHAIN_ID transfer channel-0\nhermes query channel end $CHAIN_ID ibcaccount channel-1\n```\n\nPlease refer to the [Hermes documentation](https://hermes.informal.systems/) for more information regarding various commands.\n"
  },
  {
    "path": "network/hermes/config.toml",
    "content": "# The global section has parameters that apply globally to the relayer operation.\n[global]\n\n# Specify the verbosity for the relayer logging output. Default: 'info'\n# Valid options are 'error', 'warn', 'info', 'debug', 'trace'.\nlog_level = 'trace'\n\n\n# Specify the mode to be used by the relayer. [Required]\n[mode]\n\n# Specify the client mode.\n[mode.clients]\n\n# Whether or not to enable the client workers. [Required]\nenabled = true\n\n# Whether or not to enable periodic refresh of clients. [Default: true]\n# Note: Even if this is disabled, clients will be refreshed automatically if\n#      there is activity on a connection or channel they are involved with.\nrefresh = true\n\n# Whether or not to enable misbehaviour detection for clients. [Default: false]\nmisbehaviour = true\n\n# Specify the connections mode.\n[mode.connections]\n\n# Whether or not to enable the connection workers for handshake completion. [Required]\nenabled = true\n\n# Specify the channels mode.\n[mode.channels]\n\n# Whether or not to enable the channel workers for handshake completion. [Required]\nenabled = true\n\n# Specify the packets mode.\n[mode.packets]\n\n# Whether or not to enable the packet workers. [Required]\nenabled = true\n\n# Parametrize the periodic packet clearing feature.\n# Interval (in number of blocks) at which pending packets\n# should be eagerly cleared. A value of '0' will disable\n# periodic packet clearing. [Default: 100]\nclear_interval = 100\n\n# Whether or not to clear packets on start. [Default: false]\nclear_on_start = true\n\n# Toggle the transaction confirmation mechanism.\n# The tx confirmation mechanism periodically queries the `/tx_search` RPC\n# endpoint to check that previously-submitted transactions\n# (to any chain in this config file) have delivered successfully.\n# Experimental feature. Affects telemetry if set to false.\n# [Default: true]\ntx_confirmation = true\n\n# The REST section defines parameters for Hermes' built-in RESTful API.\n# https://hermes.informal.systems/rest.html\n[rest]\n\n# Whether or not to enable the REST service. Default: false\nenabled = true\n\n# Specify the IPv4/6 host over which the built-in HTTP server will serve the RESTful\n# API requests. Default: 127.0.0.1\nhost = '127.0.0.1'\n\n# Specify the port over which the built-in HTTP server will serve the restful API\n# requests. Default: 3000\nport = 3000\n\n\n# The telemetry section defines parameters for Hermes' built-in telemetry capabilities.\n# https://hermes.informal.systems/telemetry.html\n[telemetry]\n\n# Whether or not to enable the telemetry service. Default: false\nenabled = false\n\n# Specify the IPv4/6 host over which the built-in HTTP server will serve the metrics\n# gathered by the telemetry service. Default: 127.0.0.1\nhost = '127.0.0.1'\n\n# Specify the port over which the built-in HTTP server will serve the metrics gathered\n# by the telemetry service. Default: 3001\nport = 3001\n\n[[chains]]\nid = 'test-1'\nrpc_addr = 'http://127.0.0.1:16657'\ngrpc_addr = 'http://127.0.0.1:8090'\nwebsocket_addr = 'ws://127.0.0.1:16657/websocket'\nrpc_timeout = '10s'\naccount_prefix = 'cosmos'\nkey_name = 'testkey'\nstore_prefix = 'ibc'\ndefault_gas = 100000\nmax_gas = 3000000\ngas_price = { price = 0.001, denom = 'stake' }\ngas_adjustment = 0.1\nmax_msg_num = 30\nmax_tx_size = 2097152\nclock_drift = '5s'\nmax_block_time = '10s'\ntrusting_period = '14days'\ntrust_threshold = { numerator = '1', denominator = '3' }\naddress_type = { derivation = 'cosmos' }\n\n[[chains]]\nid = 'test-2'\nrpc_addr = 'http://127.0.0.1:26657'\ngrpc_addr = 'http://127.0.0.1:9090'\nwebsocket_addr = 'ws://127.0.0.1:26657/websocket'\nrpc_timeout = '10s'\naccount_prefix = 'cosmos'\nkey_name = 'testkey'\nstore_prefix = 'ibc'\ndefault_gas = 100000\nmax_gas = 3000000\ngas_price = { price = 0.001, denom = 'stake' }\ngas_adjustment = 0.1\nmax_msg_num = 30\nmax_tx_size = 2097152\nclock_drift = '5s'\nmax_block_time = '10s'\ntrusting_period = '14days'\ntrust_threshold = { numerator = '1', denominator = '3' }\naddress_type = { derivation = 'cosmos' }\n"
  },
  {
    "path": "network/hermes/create-conn.sh",
    "content": "#!/bin/bash\nset -e\n\n# Load shell variables\n. ./network/hermes/variables.sh\n\n### Configure the clients and connection\necho \"Initiating connection handshake...\"\n$HERMES_BINARY -c $CONFIG_DIR create connection test-1 test-2\n\nsleep 2\n\n"
  },
  {
    "path": "network/hermes/restore-keys.sh",
    "content": "#!/bin/bash\nset -e\n\n# Load shell variables\n. ./network/hermes/variables.sh\n\n### Sleep is needed otherwise the relayer crashes when trying to init\nsleep 1s\n### Restore Keys\n$HERMES_BINARY -c ./network/hermes/config.toml keys restore test-1 -m \"alley afraid soup fall idea toss can goose become valve initial strong forward bright dish figure check leopard decide warfare hub unusual join cart\"\nsleep 5s\n\n$HERMES_BINARY -c ./network/hermes/config.toml keys restore test-2 -m \"record gift you once hip style during joke field prize dust unique length more pencil transfer quit train device arrive energy sort steak upset\"\nsleep 5s\n\n"
  },
  {
    "path": "network/hermes/start.sh",
    "content": "#!/bin/bash\n\n# Load shell variables\n. ./network/hermes/variables.sh\n\n# Start the hermes relayer in multi-paths mode\necho \"Starting hermes relayer...\"\n$HERMES_BINARY -c $CONFIG_DIR start\n"
  },
  {
    "path": "network/hermes/variables.sh",
    "content": " #!/bin/bash\nHERMES_BINARY=hermes\nHERMES_DIRECTORY=./network/hermes/\nCONFIG_DIR=./network/hermes/config.toml\n\n"
  },
  {
    "path": "network/init.sh",
    "content": "#!/bin/bash\n\nBINARY=iris\nCHAIN_DIR=./data\nCHAIN_BOND_DENOM=uiris\nCHAINID_1=test-1\nCHAINID_2=test-2\nVAL_MNEMONIC_1=\"clock post desk civil pottery foster expand merit dash seminar song memory figure uniform spice circle try happy obvious trash crime hybrid hood cushion\"\nVAL_MNEMONIC_2=\"angry twist harsh drastic left brass behave host shove marriage fall update business leg direct reward object ugly security warm tuna model broccoli choice\"\nDEMO_MNEMONIC_1=\"banner spread envelope side kite person disagree path silver will brother under couch edit food venture squirrel civil budget number acquire point work mass\"\nDEMO_MNEMONIC_2=\"veteran try aware erosion drink dance decade comic dawn museum release episode original list ability owner size tuition surface ceiling depth seminar capable only\"\nRLY_MNEMONIC_1=\"alley afraid soup fall idea toss can goose become valve initial strong forward bright dish figure check leopard decide warfare hub unusual join cart\"\nRLY_MNEMONIC_2=\"record gift you once hip style during joke field prize dust unique length more pencil transfer quit train device arrive energy sort steak upset\"\nP2PPORT_1=16656\nP2PPORT_2=26656\nRPCPORT_1=16657\nRPCPORT_2=26657\nRPCAPPPORT_1=16658\nRPCAPPPORT_2=26658\n\nRESTPORT_1=1316\nRESTPORT_2=1317\nROSETTA_1=8080\nROSETTA_2=8081\nEVN_JSON_RPC_1=8545\nEVN_JSON_RPC_2=18545\nEVN_JSON_RPC_WS_1=8546\nEVN_JSON_RPC_WS_2=18546\n\n# Stop if it is already running \nif pgrep -x \"$BINARY\" >/dev/null; then\n    echo \"Terminating $BINARY...\"\n    killall $BINARY\nfi\n\necho \"Removing previous data...\"\nrm -rf $CHAIN_DIR/$CHAINID_1 &> /dev/null\nrm -rf $CHAIN_DIR/$CHAINID_2 &> /dev/null\n\n# Add directories for both chains, exit if an error occurs\nif ! mkdir -p $CHAIN_DIR/$CHAINID_1 2>/dev/null; then\n    echo \"Failed to create chain folder. Aborting...\"\n    exit 1\nfi\n\nif ! mkdir -p $CHAIN_DIR/$CHAINID_2 2>/dev/null; then\n    echo \"Failed to create chain folder. Aborting...\"\n    exit 1\nfi\n\necho \"Initializing $CHAINID_1...\"\necho \"Initializing $CHAINID_2...\"\n$BINARY init test --home $CHAIN_DIR/$CHAINID_1 --chain-id=$CHAINID_1 --default-denom=$CHAIN_BOND_DENOM\n$BINARY init test --home $CHAIN_DIR/$CHAINID_2 --chain-id=$CHAINID_2 --default-denom=$CHAIN_BOND_DENOM\n\necho \"Adding genesis accounts...\"\necho $VAL_MNEMONIC_1 | $BINARY keys add val1 --home $CHAIN_DIR/$CHAINID_1 --recover --keyring-backend=test\necho $VAL_MNEMONIC_2 | $BINARY keys add val2 --home $CHAIN_DIR/$CHAINID_2 --recover --keyring-backend=test\necho $DEMO_MNEMONIC_1 | $BINARY keys add demowallet1 --home $CHAIN_DIR/$CHAINID_1 --recover --keyring-backend=test\necho $DEMO_MNEMONIC_2 | $BINARY keys add demowallet2 --home $CHAIN_DIR/$CHAINID_2 --recover --keyring-backend=test\necho $RLY_MNEMONIC_1 | $BINARY keys add rly1 --home $CHAIN_DIR/$CHAINID_1 --recover --keyring-backend=test \necho $RLY_MNEMONIC_2 | $BINARY keys add rly2 --home $CHAIN_DIR/$CHAINID_2 --recover --keyring-backend=test \n\n$BINARY genesis add-genesis-account $($BINARY --home $CHAIN_DIR/$CHAINID_1 keys show val1 --keyring-backend test -a) 100000000000$CHAIN_BOND_DENOM  --home $CHAIN_DIR/$CHAINID_1\n$BINARY genesis add-genesis-account $($BINARY --home $CHAIN_DIR/$CHAINID_2 keys show val2 --keyring-backend test -a) 100000000000$CHAIN_BOND_DENOM  --home $CHAIN_DIR/$CHAINID_2\n$BINARY genesis add-genesis-account $($BINARY --home $CHAIN_DIR/$CHAINID_1 keys show demowallet1 --keyring-backend test -a) 100000000000$CHAIN_BOND_DENOM  --home $CHAIN_DIR/$CHAINID_1\n$BINARY genesis add-genesis-account $($BINARY --home $CHAIN_DIR/$CHAINID_2 keys show demowallet2 --keyring-backend test -a) 100000000000$CHAIN_BOND_DENOM  --home $CHAIN_DIR/$CHAINID_2\n$BINARY genesis add-genesis-account $($BINARY --home $CHAIN_DIR/$CHAINID_1 keys show rly1 --keyring-backend test -a) 100000000000$CHAIN_BOND_DENOM  --home $CHAIN_DIR/$CHAINID_1\n$BINARY genesis add-genesis-account $($BINARY --home $CHAIN_DIR/$CHAINID_2 keys show rly2 --keyring-backend test -a) 100000000000$CHAIN_BOND_DENOM  --home $CHAIN_DIR/$CHAINID_2\n\necho \"Creating and collecting gentx...\"\n$BINARY genesis gentx val1 7000000000$CHAIN_BOND_DENOM --home $CHAIN_DIR/$CHAINID_1 --chain-id $CHAINID_1 --keyring-backend test\n$BINARY genesis gentx val2 7000000000$CHAIN_BOND_DENOM --home $CHAIN_DIR/$CHAINID_2 --chain-id $CHAINID_2 --keyring-backend test\n$BINARY genesis collect-gentxs --home $CHAIN_DIR/$CHAINID_1\n$BINARY genesis collect-gentxs --home $CHAIN_DIR/$CHAINID_2\n\necho \"Changing defaults and ports in app.toml and config.toml files...\"\nsed -i -e 's#\"tcp://0.0.0.0:26656\"#\"tcp://0.0.0.0:'\"$P2PPORT_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's#\"tcp://127.0.0.1:26657\"#\"tcp://127.0.0.1:'\"$RPCPORT_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's#\"tcp://127.0.0.1:26658\"#\"tcp://127.0.0.1:'\"$RPCAPPPORT_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's/timeout-commit = \"5s\"/timeout_commit = \"1s\"/g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's/timeout-propose = \"3s\"/timeout_propose = \"1s\"/g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's/index_all_keys = false/index_all_keys = true/g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's/mode = \"full\"/mode = \"validator\"/g' $CHAIN_DIR/$CHAINID_1/config/config.toml\nsed -i -e 's/enable = false/enable = true/g' $CHAIN_DIR/$CHAINID_1/config/app.toml\nsed -i -e 's/swagger = false/swagger = true/g' $CHAIN_DIR/$CHAINID_1/config/app.toml\nsed -i -e 's#\"tcp://localhost:1317\"#\"tcp://localhost:'\"$RESTPORT_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/app.toml\nsed -i -e 's#\"127.0.0.1:8545\"#\"127.0.0.1:'\"$EVN_JSON_RPC_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/app.toml\nsed -i -e 's#\"127.0.0.1:8546\"#\"127.0.0.1:'\"$EVN_JSON_RPC_WS_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/app.toml\n#sed -i -e 's#\":8080\"#\":'\"$ROSETTA_1\"'\"#g' $CHAIN_DIR/$CHAINID_1/config/app.toml\nsed -i -e \"$(cat -n $CHAIN_DIR/$CHAINID_1/config/app.toml | grep '\\[rosetta\\]' -A3 | grep \"enable =\" | awk '{print $1}')s/enable = true/enable = false/\" $CHAIN_DIR/$CHAINID_1/config/app.toml\n\nsed -i -e 's#\"tcp://0.0.0.0:26656\"#\"tcp://0.0.0.0:'\"$P2PPORT_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's#\"tcp://127.0.0.1:26657\"#\"tcp://127.0.0.1:'\"$RPCPORT_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's#\"tcp://127.0.0.1:26658\"#\"tcp://127.0.0.1:'\"$RPCAPPPORT_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's/timeout-commit = \"5s\"/timeout_commit = \"1s\"/g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's/timeout_propose = \"3s\"/timeout_propose = \"1s\"/g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's/index_all_keys = false/index_all_keys = true/g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's/mode = \"full\"/mode = \"validator\"/g' $CHAIN_DIR/$CHAINID_2/config/config.toml\nsed -i -e 's/enable = false/enable = true/g' $CHAIN_DIR/$CHAINID_2/config/app.toml\nsed -i -e 's/swagger = false/swagger = true/g' $CHAIN_DIR/$CHAINID_2/config/app.toml\nsed -i -e 's#\"tcp://localhost:1317\"#\"tcp://localhost:'\"$RESTPORT_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/app.toml\nsed -i -e 's#\"127.0.0.1:8545\"#\"127.0.0.1:'\"$EVN_JSON_RPC_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/app.toml\nsed -i -e 's#\"127.0.0.1:8546\"#\"127.0.0.1:'\"$EVN_JSON_RPC_WS_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/app.toml\n#sed -i -e 's#\":8080\"#\":'\"$ROSETTA_2\"'\"#g' $CHAIN_DIR/$CHAINID_2/config/app.toml\nsed -i -e \"$(cat -n $CHAIN_DIR/$CHAINID_2/config/app.toml | grep '\\[rosetta\\]' -A3 | grep \"enable =\" | awk '{print $1}')s/enable = true/enable = false/\" $CHAIN_DIR/$CHAINID_2/config/app.toml"
  },
  {
    "path": "network/nft-transfer.md",
    "content": "# nft-transfer test\n\n## Overview\n\nThe following repository contains a basic example of an Interchain NFT module and serves as a developer guide for teams that wish to use Interchain NFT functionality.\n\nThe Interchain NFT module is now maintained within the `nft-transfer` repository\n[here](https://github.com/bianjieai/nft-transfer).\n\n### Developer Documentation\n\n## Setup\n\n1. Clone this repository and build the application binary\n\n    ```bash\n    git clone https://github.com/irisnet/irishub.git\n    cd irishub\n\n    make install \n    ```\n\n2. Compile and install an IBC relayer.\n\n    ```bash\n    git clone https://github.com/cosmos/relayer.git\n    cd relayer\n    git checkout v2.4.2\n    make install\n    ```\n\n3. Bootstrap two chains and create an IBC connection and start the relayer\n\n    ```bash\n    make init-golang-rly\n    ```\n\n## Demo\n\n**NOTE:** For the purposes of this demo the setup scripts have been provided with a set of hardcoded mnemonics that generate deterministic wallet addresses used below.\n\n```bash\n# Store the following account addresses within the current shell env\nexport DEMOWALLET_1=$(iris keys show demowallet1 -a --keyring-backend test --home ./data/test-1) && echo $DEMOWALLET_1;\nexport DEMOWALLET_2=$(iris keys show demowallet2 -a --keyring-backend test --home ./data/test-2) && echo $DEMOWALLET_2;\n```\n\n### Issue an nft class on the `test-1` chain\n\nIssue an nft class using the `iris tx nft issue` cmd.\nHere the message signer is used as the account owner.\n\n```bash\n# Issue an nft class\niris tx nft issue cat --name xiaopi --symbol pipi --description \"my cat\" --uri \"hhahahh\"  --from demowallet1 --chain-id test-1 --keyring-dir ./data/test-1 --fees=1iris --keyring-backend=test --node tcp://127.0.0.1:16657 --mint-restricted=false  --update-restricted=false\n\n# Query the class\niris query nft denom cat --node tcp://127.0.0.1:16657\n```\n\n### Mint a nft on the `test-1` chain\n\n```bash\n# Mint a nft\niris tx nft mint cat xiaopi --uri=\"http://wwww.baidu.com\" --from demowallet1 --chain-id test-1 --keyring-dir ./data/test-1 --fees=1iris --keyring-backend=test  --node tcp://127.0.0.1:16657\n\n# query the nft\niris query nft token cat xiaopi --node tcp://127.0.0.1:16657\n```\n\n### Transfer a nft from chain `test-1` to chain `test-2`\n\n```bash\n# Execute the nft tranfer command\niris tx nft-transfer transfer nft-transfer channel-0 iaa10h9stc5v6ntgeygf5xf945njqq5h32r5y7qdwl cat xiaopi --from demowallet1 --chain-id test-1 --keyring-dir ./data/test-1 --fees=1iris --keyring-backend=test --node tcp://127.0.0.1:16657 --packet-timeout-height 2-10000\n\n# Query the newly generated class-id through class-trace\niris query nft-transfer class-hash nft-transfer/channel-0/cat --node tcp://127.0.0.1:26657\n\n# Query nft information on test-2\niris query nft nft ibc/943B966B2B8A53C50A198EDAB7C9A41FCEAF24400A94167846679769D8BF8311 xiaopi --node tcp://127.0.0.1:26657\n```\n\nWhen the nft is transferred out, the nft on the original chain will be locked to the [escrow account](https://github.com/bianjieai/ibc-go/blob/develop/modules/apps/nft-transfer/types/keys.go#L45). You can use the following command to determine whether the transferred nft is escrow\n\n```bash\niris query nft owner cat xiaopi --node tcp://127.0.0.1:16657\n```\n\n### Transfer a nft back from chain `test-2` to chain `test-1`\n\n```bash\niris tx nft transfer nft-transfer channel-0 iaa10h9stc5v6ntgeygf5xf945njqq5h32r5y7qdwl ibc/943B966B2B8A53C50A198EDAB7C9A41FCEAF24400A94167846679769D8BF8311 xiaopi --from demowallet2 --chain-id test-2 --keyring-dir ./data/test-2 --fees=1stake --keyring-backend=test --node tcp://127.0.0.1:26657 --packet-timeout-height 1-10000\n```\n"
  },
  {
    "path": "network/relayer/interchain-nft-config/chains/test-1.json",
    "content": "{\n  \"type\": \"cosmos\",\n  \"value\": {\n    \"key\": \"test-1\",\n    \"chain-id\": \"test-1\",\n    \"rpc-addr\": \"http://127.0.0.1:16657\",\n    \"account-prefix\": \"iaa\",\n    \"keyring-backend\": \"test\",\n    \"gas-adjustment\": 1.5,\n    \"gas-prices\": \"0.025uiris\",\n    \"debug\": true,\n    \"timeout\": \"10s\",\n    \"output-format\": \"json\",\n    \"sign-mode\": \"direct\",\n    \"extra-codecs\": [\"ethermint\"]\n  }\n}\n"
  },
  {
    "path": "network/relayer/interchain-nft-config/chains/test-2.json",
    "content": "{\n  \"type\": \"cosmos\",\n  \"value\": {\n    \"key\": \"test-2\",\n    \"chain-id\": \"test-2\",\n    \"rpc-addr\": \"http://127.0.0.1:26657\",\n    \"account-prefix\": \"iaa\",\n    \"keyring-backend\": \"test\",\n    \"gas-adjustment\": 1.5,\n    \"gas-prices\": \"0.025uiris\",\n    \"debug\": true,\n    \"timeout\": \"10s\",\n    \"output-format\": \"json\",\n    \"sign-mode\": \"direct\",\n    \"extra-codecs\": [\"ethermint\"]\n  }\n}\n\n"
  },
  {
    "path": "network/relayer/interchain-nft-config/paths/test1-nft-test2.json",
    "content": "{\n  \"src\": {\n    \"chain-id\": \"test-1\",\n    \"client-id\": \"\",\n    \"connection-id\": \"\",\n    \"channel-id\": \"\",\n    \"port-id\": \"nft-transfer\",\n    \"order\": \"unordered\",\n    \"version\": \"ics721-1\"\n  },\n  \"dst\": {\n    \"chain-id\": \"test-2\",\n    \"client-id\": \"\",\n    \"connection-id\": \"\",\n    \"channel-id\": \"\",\n    \"port-id\": \"nft-transfer\",\n    \"order\": \"unordered\",\n    \"version\": \"ics721-1\"\n  },\n  \"strategy\": {\n    \"type\": \"naive\"\n  }\n}\n\n\n"
  },
  {
    "path": "network/relayer/interchain-nft-config/rly.sh",
    "content": "#!/bin/bash\n\n# Configure predefined mnemonic pharses\nBINARY=rly\nCHAIN_DIR=./data\nRELAYER_DIR=./relayer\nMNEMONIC_1=\"alley afraid soup fall idea toss can goose become valve initial strong forward bright dish figure check leopard decide warfare hub unusual join cart\"\nMNEMONIC_2=\"record gift you once hip style during joke field prize dust unique length more pencil transfer quit train device arrive energy sort steak upset\"\n\n# Ensure rly is installed\nif ! [ -x \"$(command -v $BINARY)\" ]; then\n    echo \"$BINARY is required to run this script...\"\n    echo \"You can download at https://github.com/cosmos/relayer\"\n    exit 1\nfi\n\necho \"Initializing $BINARY...\"\n$BINARY config init --home $CHAIN_DIR/$RELAYER_DIR\n\necho \"Adding configurations for both chains...\"\n$BINARY chains add -f $PWD/network/relayer/interchain-nft-config/chains/test-1.json test-1 --home $CHAIN_DIR/$RELAYER_DIR\n$BINARY chains add -f $PWD/network/relayer/interchain-nft-config/chains/test-2.json test-2 --home $CHAIN_DIR/$RELAYER_DIR\n$BINARY paths add test-1 test-2 test1-nft-test2 -f $PWD/network/relayer/interchain-nft-config/paths/test1-nft-test2.json --home $CHAIN_DIR/$RELAYER_DIR\n\necho \"Restoring accounts...\"\n$BINARY keys restore test-1 test-1 \"$MNEMONIC_1\" --home $CHAIN_DIR/$RELAYER_DIR\n$BINARY keys restore test-2 test-2 \"$MNEMONIC_2\" --home $CHAIN_DIR/$RELAYER_DIR\n\necho \"Linking both chains and starting to listen relayer\"\n$BINARY transact link test1-nft-test2  --src-port nft-transfer --dst-port nft-transfer --order unordered --version ics721-1 --max-retries 20 -d --home $CHAIN_DIR/$RELAYER_DIR\n\necho \"Starting to listen relayer...\"\n$BINARY start test1-nft-test2 --home $CHAIN_DIR/$RELAYER_DIR"
  },
  {
    "path": "network/start.sh",
    "content": "#!/bin/bash\n\nBINARY=iris\nCHAIN_DIR=./data\nCHAINID_1=test-1\nCHAINID_2=test-2\nGRPCPORT_1=8090\nGRPCPORT_2=9090\nGRPCWEB_1=8091\nGRPCWEB_2=9091\nGRPC_WEB_1_ENABLE=true\nGRPC_WEB_2_ENABLE=true\n\n\n\necho \"Starting $CHAINID_1 in $CHAIN_DIR...\"\necho \"Creating log file at $CHAIN_DIR/$CHAINID_1.log\"\n$BINARY start --log_format json --home $CHAIN_DIR/$CHAINID_1 --pruning=nothing --grpc.address=\"0.0.0.0:$GRPCPORT_1\" --grpc-web.enable=$GRPC_WEB_1_ENABLE > $CHAIN_DIR/$CHAINID_1.log 2>&1 &\n\necho \"Starting $CHAINID_2 in $CHAIN_DIR...\"\necho \"Creating log file at $CHAIN_DIR/$CHAINID_2.log\"\n$BINARY start --log_format json --home $CHAIN_DIR/$CHAINID_2 --pruning=nothing --grpc.address=\"0.0.0.0:$GRPCPORT_2\"  --grpc-web.enable=$GRPC_WEB_2_ENABLE > $CHAIN_DIR/$CHAINID_2.log 2>&1 &\n"
  },
  {
    "path": "proto/buf.gen.gogo.yaml",
    "content": "version: v1\nplugins:\n  - name: gocosmos\n    out: ..\n    opt: plugins=grpc,Mgoogle/protobuf/any.proto=github.com/cosmos/cosmos-sdk/codec/types\n  - name: grpc-gateway\n    out: ..\n    opt: logtostderr=true,allow_colon_final_segments=true"
  },
  {
    "path": "proto/buf.gen.pulsar.yaml",
    "content": "version: v1\nmanaged:\n  enabled: true\n  go_package_prefix:\n    default: cosmossdk.io/api\n    except:\n      - buf.build/googleapis/googleapis\n      - buf.build/cosmos/gogo-proto\n      - buf.build/cosmos/cosmos-proto\n    override:\n      buf.build/irisnet/irishub: github.com/irisnet/irishub/v4/api\nplugins:\n  - name: go-pulsar\n    out: ../api\n    opt: paths=source_relative\n  - name: go-grpc\n    out: ../api\n    opt: paths=source_relative\n"
  },
  {
    "path": "proto/buf.yaml",
    "content": "version: v1\nname: buf.build/irisnet/irishub\ndeps:\n  # TODO: update sdk buf dependency when v0.47.0 is tagged and pushed to BSR\n  # see: (https://github.com/cosmos/cosmos-sdk/tree/main/proto#sdk-x-buf)\n  - buf.build/cosmos/cosmos-sdk:7ea623782a4d4f11b35627913a7bc481\n  - buf.build/cosmos/cosmos-proto:1935555c206d4afb9e94615dfd0fad31\n  - buf.build/cosmos/gogo-proto:a14993478f40695898ed8a86931094b6656e8a5d\n  - buf.build/googleapis/googleapis:8d7204855ec14631a499bd7393ce1970\n  - buf.build/cosmos/ics23:b1abd8678aab07165efd453c96796a179eb3131f\nbreaking:\n  use:\n    - FILE\nlint:\n  use:\n    - DEFAULT\n    - COMMENTS\n    - FILE_LOWER_SNAKE_CASE\n  except:\n    - UNARY_RPC\n    - COMMENT_FIELD\n    - SERVICE_SUFFIX\n    - PACKAGE_VERSION_SUFFIX\n    - RPC_REQUEST_STANDARD_NAME\n    - ENUM_ZERO_VALUE_SUFFIX"
  },
  {
    "path": "proto/irishub/guardian/genesis.proto",
    "content": "syntax = \"proto3\";\npackage irishub.guardian;\n\nimport \"irishub/guardian/guardian.proto\";\nimport \"gogoproto/gogo.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/guardian/types\";\n\n// GenesisState defines the guardian module's genesis state\nmessage GenesisState {\n  repeated Super supers = 1 [ (gogoproto.nullable) = false ];\n}"
  },
  {
    "path": "proto/irishub/guardian/guardian.proto",
    "content": "syntax = \"proto3\";\npackage irishub.guardian;\n\nimport \"gogoproto/gogo.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/guardian/types\";\n\n// Super defines the super standard\nmessage Super {\n  string description = 1;\n  AccountType account_type = 2\n      [ (gogoproto.moretags) = \"yaml:\\\"account_type\\\"\" ];\n  string address = 3;\n  string added_by = 4;\n}\n\n// AccountType defines the super account type\nenum AccountType {\n  option (gogoproto.goproto_enum_prefix) = false;\n\n  // GENESIS defines a genesis account type\n  GENESIS = 0 [ (gogoproto.enumvalue_customname) = \"Genesis\" ];\n  // ORDINARY defines a ordinary account type\n  ORDINARY = 1 [ (gogoproto.enumvalue_customname) = \"Ordinary\" ];\n}\n"
  },
  {
    "path": "proto/irishub/guardian/query.proto",
    "content": "syntax = \"proto3\";\npackage irishub.guardian;\n\nimport \"gogoproto/gogo.proto\";\nimport \"irishub/guardian/guardian.proto\";\nimport \"google/api/annotations.proto\";\nimport \"cosmos/base/query/v1beta1/pagination.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/guardian/types\";\n\n// Query creates service with guardian as RPC\nservice Query {\n  // Supers returns all Supers\n  rpc Supers(QuerySupersRequest) returns (QuerySupersResponse) {\n    option (google.api.http).get = \"/irishub/guardian/supers\";\n  }\n}\n\n// QuerySupersRequest is request type for the Query/Supers RPC method\nmessage QuerySupersRequest {\n  // pagination defines an optional pagination for the request\n  cosmos.base.query.v1beta1.PageRequest pagination = 1;\n}\n\n// QuerySupersResponse is response type for the Query/Supers RPC method\nmessage QuerySupersResponse {\n  repeated Super supers = 1 [ (gogoproto.nullable) = false ];\n\n  cosmos.base.query.v1beta1.PageResponse pagination = 2;\n}"
  },
  {
    "path": "proto/irishub/guardian/tx.proto",
    "content": "syntax = \"proto3\";\npackage irishub.guardian;\nimport \"cosmos/msg/v1/msg.proto\";\nimport \"cosmos_proto/cosmos.proto\";\noption go_package = \"github.com/irisnet/irishub/v4/modules/guardian/types\";\n\n// Msg defines the guardian Msg service\nservice Msg {\n  option (cosmos.msg.v1.service) = true;\n\n  // AddSuper defines a method for adding a super account\n  rpc AddSuper(MsgAddSuper) returns (MsgAddSuperResponse);\n\n  // DeleteSuper defines a method for deleting a super account\n  rpc DeleteSuper(MsgDeleteSuper) returns (MsgDeleteSuperResponse);\n}\n\n// MsgAddSuper defines the properties of add super account message\nmessage MsgAddSuper {\n  option (cosmos.msg.v1.signer) = \"added_by\";\n  string description = 1;\n  string address = 2;\n  string added_by = 3 [ (cosmos_proto.scalar) = \"cosmos.AddressString\" ];\n}\n\n// MsgAddSuperResponse defines the Msg/AddSuper response type\nmessage MsgAddSuperResponse {}\n\n// MsgDeleteSuper defines the properties of delete super account message\nmessage MsgDeleteSuper {\n  option (cosmos.msg.v1.signer) = \"deleted_by\";\n  string address = 2;\n  string deleted_by = 3 [ (cosmos_proto.scalar) = \"cosmos.AddressString\" ];\n}\n\n// MsgDeleteSuperResponse defines the Msg/DeleteSuper response type\nmessage MsgDeleteSuperResponse {}"
  },
  {
    "path": "proto/irishub/mint/genesis.proto",
    "content": "syntax = \"proto3\";\npackage irishub.mint;\n\nimport \"irishub/mint/mint.proto\";\nimport \"gogoproto/gogo.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/mint/types\";\n\n// GenesisState defines the mint module's genesis state\nmessage GenesisState {\n  Minter minter = 1 [ (gogoproto.nullable) = false ];\n  Params params = 2 [ (gogoproto.nullable) = false ];\n}"
  },
  {
    "path": "proto/irishub/mint/mint.proto",
    "content": "syntax = \"proto3\";\npackage irishub.mint;\n\nimport \"gogoproto/gogo.proto\";\nimport \"google/protobuf/timestamp.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/mint/types\";\n\n// Minter represents the minting state\nmessage Minter {\n  // time which the last update was made to the minter\n  google.protobuf.Timestamp last_update = 1 [\n    (gogoproto.stdtime) = true,\n    (gogoproto.nullable) = false,\n    (gogoproto.moretags) = \"yaml:\\\"last_update\\\"\"\n  ];\n  // base inflation\n  string inflation_base = 2 [\n    (gogoproto.moretags) = \"yaml:\\\"inflation_base\\\"\",\n    (gogoproto.customtype) = \"cosmossdk.io/math.Int\",\n    (gogoproto.nullable) = false\n  ];\n}\n\n// Params defines mint module's parameters\nmessage Params {\n  option (gogoproto.goproto_stringer) = false;\n\n  // type of coin to mint\n  string mint_denom = 1;\n  // inflation rate\n  string inflation = 2 [\n    (gogoproto.customtype) = \"cosmossdk.io/math.LegacyDec\",\n    (gogoproto.nullable) = false\n  ];\n}"
  },
  {
    "path": "proto/irishub/mint/query.proto",
    "content": "syntax = \"proto3\";\npackage irishub.mint;\n\nimport \"cosmos/base/query/v1beta1/pagination.proto\";\nimport \"irishub/mint/mint.proto\";\nimport \"gogoproto/gogo.proto\";\nimport \"google/api/annotations.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/mint/types\";\n\n// Query creates service with guardian as rpc\nservice Query {\n  // Params queries the mint parameters\n  rpc Params(QueryParamsRequest) returns (QueryParamsResponse) {\n    option (google.api.http).get = \"/irishub/mint/params\";\n  }\n}\n\n// QueryParamsRequest is request type for the Query/Parameters RPC method\nmessage QueryParamsRequest {}\n\n// QueryParamsResponse is response type for the Query/Parameters RPC method\nmessage QueryParamsResponse {\n  Params params = 1 [ (gogoproto.nullable) = false ];\n\n  cosmos.base.query.v1beta1.PageResponse res = 2;\n}"
  },
  {
    "path": "proto/irishub/mint/tx.proto",
    "content": "syntax = \"proto3\";\npackage irishub.mint;\n\nimport \"irishub/mint/mint.proto\";\nimport \"cosmos/msg/v1/msg.proto\";\nimport \"cosmos_proto/cosmos.proto\";\nimport \"gogoproto/gogo.proto\";\n\noption go_package = \"github.com/irisnet/irishub/v4/modules/mint/types\";\noption (gogoproto.goproto_getters_all) = false;\n\n// Msg defines the coinswap Msg service\nservice Msg {\n  option (cosmos.msg.v1.service) = true;\n\n  // UpdateParams defines a governance operation for updating the x/coinswap\n  // module parameters. The authority is defined in the keeper.\n  //\n  // Since: cosmos-sdk 0.47\n  rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);\n}\n\n// MsgUpdateParams is the Msg/UpdateParams request type.\n//\n// Since: cosmos-sdk 0.47\nmessage MsgUpdateParams {\n  option (cosmos.msg.v1.signer) = \"authority\";\n\n  // authority is the address that controls the module (defaults to x/gov unless\n  // overwritten).\n  string authority = 1 [ (cosmos_proto.scalar) = \"cosmos.AddressString\" ];\n\n  // params defines the x/mint parameters to update.\n  //\n  // NOTE: All parameters must be supplied.\n  Params params = 2 [ (gogoproto.nullable) = false ];\n}\n\n// MsgUpdateParamsResponse defines the response structure for executing a\n// MsgUpdateParams message.\n//\n// Since: cosmos-sdk 0.47\nmessage MsgUpdateParamsResponse {}"
  },
  {
    "path": "scripts/Makefile",
    "content": "all: get_tools\n\n\n########################################\n\nGOLINT = github.com/tendermint/lint/golint\nGOMETALINTER = gopkg.in/alecthomas/gometalinter.v2\nUNCONVERT = github.com/mdempsky/unconvert\nINEFFASSIGN = github.com/gordonklaus/ineffassign\nMISSPELL = github.com/client9/misspell/cmd/misspell\nERRCHECK = github.com/kisielk/errcheck\nUNPARAM = mvdan.cc/unparam\nSTATIK = github.com/rakyll/statik\n\nGOLINT_CHECK := $(shell command -v golint 2> /dev/null)\nGOMETALINTER_CHECK := $(shell command -v gometalinter.v2 2> /dev/null)\nUNCONVERT_CHECK := $(shell command -v unconvert 2> /dev/null)\nINEFFASSIGN_CHECK := $(shell command -v ineffassign 2> /dev/null)\nMISSPELL_CHECK := $(shell command -v misspell 2> /dev/null)\nERRCHECK_CHECK := $(shell command -v errcheck 2> /dev/null)\nUNPARAM_CHECK := $(shell command -v unparam 2> /dev/null)\nSTATIK_CHECK := $(shell command -v statik 2> /dev/null)\n\n\ncheck_tools:\nifndef STATIK_CHECK\n\t@echo \"No statik in path.  Install with 'make get_tools'.\"\nelse\n\t@echo \"Found statik in path.\"\nendif\n\ncheck_dev_tools:\n\t$(MAKE) check_tools\nifndef GOLINT_CHECK\n\t@echo \"No golint in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found golint in path.\"\nendif\nifndef GOMETALINTER_CHECK\n\t@echo \"No gometalinter in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found gometalinter in path.\"\nendif\nifndef UNCONVERT_CHECK\n\t@echo \"No unconvert in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found unconvert in path.\"\nendif\nifndef INEFFASSIGN_CHECK\n\t@echo \"No ineffassign in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found ineffassign in path.\"\nendif\nifndef MISSPELL_CHECK\n\t@echo \"No misspell in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found misspell in path.\"\nendif\nifndef ERRCHECK_CHECK\n\t@echo \"No errcheck in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found errcheck in path.\"\nendif\nifndef UNPARAM_CHECK\n\t@echo \"No unparam in path.  Install with 'make get_dev_tools'.\"\nelse\n\t@echo \"Found unparam in path.\"\nendif\n\nget_tools:\nifdef STATIK_CHECK\n\t@echo \"Statik is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing statik\"\n\tgo version\n\tgo get -v $(STATIK)\nendif\n\nget_dev_tools:\n\t$(MAKE) get_tools\nifdef GOLINT_CHECK\n\t@echo \"Golint is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing golint\"\n\tgo get -v $(GOLINT)\nendif\nifdef GOMETALINTER_CHECK\n\t@echo \"Gometalinter.v2 is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing gometalinter.v2\"\n\tgo get -v $(GOMETALINTER)\nendif\nifdef UNCONVERT_CHECK\n\t@echo \"Unconvert is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing unconvert\"\n\tgo get -v $(UNCONVERT)\nendif\nifdef INEFFASSIGN_CHECK\n\t@echo \"Ineffassign is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing ineffassign\"\n\tgo get -v $(INEFFASSIGN)\nendif\nifdef MISSPELL_CHECK\n\t@echo \"misspell is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing misspell\"\n\tgo get -v $(MISSPELL)\nendif\nifdef ERRCHECK_CHECK\n\t@echo \"errcheck is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing errcheck\"\n\tgo get -v $(ERRCHECK)\nendif\nifdef UNPARAM_CHECK\n\t@echo \"unparam is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing unparam\"\n\tgo get -v $(UNPARAM)\nendif\nifdef STATIK_CHECK\n\t@echo \"statik is already installed.  Run 'make update_tools' to update.\"\nelse\n\t@echo \"Installing statik\"\n\tgo get -v $(STATIK)\nendif\n\nupdate_dev_tools:\n\t$(MAKE) update_tools\n\t@echo \"Updating tendermint/golint\"\n\tgo get -u -v $(GOLINT)\n\t@echo \"Updating gometalinter.v2\"\n\tgo get -u -v $(GOMETALINTER)\n\t@echo \"Updating unconvert\"\n\tgo get -u -v $(UNCONVERT)\n\t@echo \"Updating ineffassign\"\n\tgo get -u -v $(INEFFASSIGN)\n\t@echo \"Updating misspell\"\n\tgo get -u -v $(MISSPELL)\n\t@echo \"Updating errcheck\"\n\tgo get -u -v $(ERRCHECK)\n\t@echo \"Updating unparam\"\n\tgo get -u -v $(UNPARAM)\n\t@echo \"Updating statik\"\n\tgo get -u -v $(STATIK)\n\n# To avoid unintended conflicts with file names, always add to .PHONY\n# unless there is a reason not to.\n# https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html\n.PHONY: check_tools get_tools update_tools check_dev_tools get_dev_tools update_dev_tools"
  },
  {
    "path": "scripts/protoc-swagger-gen-evm.sh",
    "content": "\nEVM_VERSION=v0.20.0\n\ngo mod download github.com/evmos/ethermint@${EVM_VERSION}\n\nIBC_PATH=${GOPATH}/pkg/mod/github.com/evmos/ethermint@${EVM_VERSION}\n\nproto_dirs=$(find ${IBC_PATH}/proto -path -prune -o -name '*.proto' -print0 | xargs -0 -n1 dirname | sort | uniq)\nfor dir in $proto_dirs; do\n  # generate swagger files (filter query files)\n  query_file=$(find \"${dir}\" -maxdepth 1 \\( -name 'query.proto' -o -name 'service.proto' \\))\n  if [[ ! -z \"$query_file\" ]]; then\n    buf generate --template buf.gen.swagger.yaml $query_file\n  fi\ndone"
  },
  {
    "path": "scripts/protoc-swagger-gen-ibc.sh",
    "content": "\nIBC_GO=v8.0.0\n\ngo mod download github.com/cosmos/ibc-go/v8@${IBC_GO}\n\nIBC_PATH=${GOPATH}/pkg/mod/github.com/cosmos/ibc-go/v8@${IBC_GO}\n\nproto_dirs=$(find ${IBC_PATH}/proto -path -prune -o -name '*.proto' -print0 | xargs -0 -n1 dirname | sort | uniq)\nfor dir in $proto_dirs; do\n  # generate swagger files (filter query files)\n  query_file=$(find \"${dir}\" -maxdepth 1 \\( -name 'query.proto' -o -name 'service.proto' \\))\n  if [[ ! -z \"$query_file\" ]]; then\n    buf generate --template buf.gen.swagger.yaml $query_file\n  fi\ndone"
  },
  {
    "path": "scripts/protoc-swagger-gen.sh",
    "content": "#!/usr/bin/env bash\n\nset -eo pipefail\n\nrm -rf ./tmp-swagger-gen ./tmp && mkdir -p ./tmp-swagger-gen ./tmp/proto ./tmp/third_party\n\nchmod a+x ./scripts/protoc-swagger-gen-ibc.sh\nchmod a+x ./scripts/protoc-swagger-gen-evm.sh\n./scripts/protoc-swagger-gen-ibc.sh\n./scripts/protoc-swagger-gen-evm.sh\n\nSDK_VERSION=v0.46.9\nIRISMOD_VERSION=v1.7.3\n\ngo mod download github.com/cosmos/cosmos-sdk@${SDK_VERSION}\ngo mod download github.com/irisnet/irismod@${IRISMOD_VERSION}\n\nchmod -R 755 ${GOPATH}/pkg/mod/github.com/cosmos/cosmos-sdk@${SDK_VERSION}/proto\nchmod -R 755 ${GOPATH}/pkg/mod/github.com/irisnet/irismod@${IRISMOD_VERSION}/proto\n\ncp -r ${GOPATH}/pkg/mod/github.com/cosmos/cosmos-sdk@${SDK_VERSION}/proto ./tmp && rm -rf ./tmp/proto/cosmos/mint\ncp -r ${GOPATH}/pkg/mod/github.com/irisnet/irismod@${IRISMOD_VERSION}/proto ./tmp\ncp -r ./proto ./tmp\n\nproto_dirs=$(find ./tmp/proto -path -prune -o -name '*.proto' -print0 | xargs -0 -n1 dirname | sort | uniq)\nfor dir in $proto_dirs; do\n    # generate swagger files (filter query files)\n    query_file=$(find \"${dir}\" -maxdepth 1 -name 'query.proto')\n    if [[ $dir =~ \"cosmos\" ]]; then\n        query_file=$(find \"${dir}\" -maxdepth 1 \\( -name 'query.proto' -o -name 'service.proto' \\))\n    fi\n    if [[ $dir =~ \"ibc\" ]]; then\n        query_file=$(find \"${dir}\" -maxdepth 1 \\( -name 'query.proto' -o -name 'service.proto' \\))\n    fi\n    if [[ ! -z \"$query_file\" ]]; then\n        buf generate --template buf.gen.swagger.yaml $query_file\n    fi\ndone\n\n# combine swagger files\n# uses nodejs package `swagger-combine`.\n# all the individual swagger files need to be configured in `config.json` for merging\nswagger-combine ./lite/config.json -o ./lite/swagger-ui/swagger.yaml -f yaml --continueOnConflictingPaths true --includeDefinitions true\n\n# replace APIs example\nsed -r -i 's/cosmos1[a-z,0-9]+/iaa1sltcyjm5k0edlg59t47lsyw8gtgc3nudklntcq/g' ./lite/swagger-ui/swagger.yaml\nsed -r -i 's/cosmosvaloper1[a-z,0-9]+/iva1sltcyjm5k0edlg59t47lsyw8gtgc3nudrwey98/g' ./lite/swagger-ui/swagger.yaml\nsed -r -i 's/cosmosvalconspub1[a-z,0-9]+/icp1zcjduepqwhwqn4h5v6mqa7k3kmy7cjzchsx5ptsrqaulwrgfmghy3k9jtdzs6rdddm/g' ./lite/swagger-ui/swagger.yaml\nsed -i 's/Gaia/IRIShub/g' ./lite/swagger-ui/swagger.yaml\nsed -i 's/gaia/irishub/g' ./lite/swagger-ui/swagger.yaml\nsed -i 's/cosmoshub/irishub/g' ./lite/swagger-ui/swagger.yaml\n\n# TODO\n# generate proto doc\n# buf protoc \\\n#     -I \"tmp/proto\" \\\n#     -I \"third_party/proto\" \\\n#     --doc_out=./docs/endpoints \\\n#     --doc_opt=./docs/endpoints/protodoc-markdown.tmpl,proto-docs.md \\\n#     $(find \"$(pwd)/tmp/proto\" -maxdepth 5 -name '*.proto')\n# cp ./docs/endpoints/proto-docs.md ./docs/zh/endpoints/proto-docs.md\n\n# clean swagger files\nrm -rf ./tmp-swagger-gen\nrm -rf ./github.com\nrm -rf ./cosmos\n\n# clean proto files\nrm -rf ./tmp\n"
  },
  {
    "path": "scripts/protocgen.sh",
    "content": "#!/usr/bin/env bash\n\nset -eo pipefail\n\necho \"Generating gogo proto code\"\ncd proto\nproto_dirs=$(find ./irishub -path -prune -o -name '*.proto' -print0 | xargs -0 -n1 dirname | sort | uniq)\nfor dir in $proto_dirs; do\n  for file in $(find \"${dir}\" -maxdepth 1 -name '*.proto'); do\n    # this regex checks if a proto file has its go_package set to cosmossdk.io/api/...\n    # gogo proto files SHOULD ONLY be generated if this is false\n    # we don't want gogo proto to run for proto files which are natively built for google.golang.org/protobuf\n    # if grep -q \"option go_package\" \"$file\" && grep -H -o -c 'option go_package.*cosmossdk.io/api' \"$file\" | grep -q ':0$'; then\n      buf generate --template buf.gen.gogo.yaml $file\n    # fi\n  done\ndone\n\ncd ..\n\n# move proto files to the right places\ncp -r github.com/irisnet/irishub/v4/* ./\nrm -rf github.com\n"
  },
  {
    "path": "sims.mk",
    "content": "#!/usr/bin/make -f\n\n########################################\n### Simulations\n\nBINDIR ?= $(GOPATH)/bin\nSIMAPP = github.com/irisnet/irishub/v4/app\n\ntest-sim-nondeterminism:\n\t@echo \"Running non-determinism test...\"\n\t@go test -mod=readonly $(SIMAPP) -run TestAppStateDeterminism -Enabled=true \\\n\t\t-NumBlocks=100 -BlockSize=200 -Commit=true -Period=0 -v -timeout 24h\n\ntest-sim-custom-genesis-fast:\n\t@echo \"Running custom genesis simulation...\"\n\t@echo \"By default, ${HOME}/.iris/config/genesis.json will be used.\"\n\t@go test -mod=readonly $(SIMAPP) -run TestFullIrisSimulation -Genesis=${HOME}/.iris/config/genesis.json \\\n\t\t-Enabled=true -NumBlocks=100 -BlockSize=200 -Commit=true -Seed=99 -Period=5 -v -timeout 24h\n\ntest-sim-import-export: runsim\n\t@echo \"Running Iris import/export simulation. This may take several minutes...\"\n\t@$(BINDIR)/runsim -Jobs=4 -SimAppPkg=$(SIMAPP) 25 5 TestIrisImportExport\n\ntest-sim-after-import: runsim\n\t@echo \"Running Iris simulation-after-import. This may take several minutes...\"\n\t@$(BINDIR)/runsim -Jobs=4 -SimAppPkg=$(SIMAPP) 25 5 TestIrisSimulationAfterImport\n\ntest-sim-custom-genesis-multi-seed: runsim\n\t@echo \"Running multi-seed custom genesis simulation...\"\n\t@echo \"By default, ${HOME}/.iris/config/genesis.json will be used.\"\n\t@$(BINDIR)/runsim -Jobs=4 -Genesis=${HOME}/.iris/config/genesis.json 400 5 TestFullIrisSimulation\n\ntest-sim-multi-seed-long: runsim\n\t@echo \"Running multi-seed application simulation. This may take awhile!\"\n\t@$(BINDIR)/runsim -Jobs=4 -SimAppPkg=$(SIMAPP) 500 50 TestFullAppSimulation\n\ntest-sim-multi-seed-short: runsim\n\t@echo \"Running multi-seed application simulation. This may take awhile!\"\n\t@$(BINDIR)/runsim -Jobs=4 -SimAppPkg=$(SIMAPP) 50 10 TestFullAppSimulation\n\ntest-sim-benchmark-invariants:\n\t@echo \"Running simulation invariant benchmarks...\"\n\t@go test -mod=readonly $(SIMAPP) -benchmem -bench=BenchmarkInvariants -run=^$ \\\n\t-Enabled=true -NumBlocks=1000 -BlockSize=200 \\\n\t-Commit=true -Seed=57 -v -timeout 24h\n\nSIM_NUM_BLOCKS ?= 500\nSIM_BLOCK_SIZE ?= 200\nSIM_COMMIT ?= true\n\ntest-sim-iris-benchmark:\n\t@echo \"Running Iris benchmark for numBlocks=$(SIM_NUM_BLOCKS), blockSize=$(SIM_BLOCK_SIZE). This may take awhile!\"\n\t@go test -mod=readonly -benchmem -run=^$$ $(SIMAPP) -bench ^BenchmarkFullIrisSimulation$$  \\\n\t\t-Enabled=true -NumBlocks=$(SIM_NUM_BLOCKS) -BlockSize=$(SIM_BLOCK_SIZE) -Commit=$(SIM_COMMIT) -timeout 24h\n\ntest-sim-iris-profile:\n\t@echo \"Running Iris benchmark for numBlocks=$(SIM_NUM_BLOCKS), blockSize=$(SIM_BLOCK_SIZE). This may take awhile!\"\n\t@go test -mod=readonly -benchmem -run=^$$ $(SIMAPP) -bench ^BenchmarkFullIrisSimulation$$ \\\n\t\t-Enabled=true -NumBlocks=$(SIM_NUM_BLOCKS) -BlockSize=$(SIM_BLOCK_SIZE) -Commit=$(SIM_COMMIT) -timeout 24h -cpuprofile cpu.out -memprofile mem.out\n\n.PHONY: runsim test-sim-iris-nondeterminism test-sim-iris-custom-genesis-fast test-sim-iris-fast sim-iris-import-export \\\n\ttest-sim-iris-simulation-after-import test-sim-iris-custom-genesis-multi-seed test-sim-iris-multi-seed \\\n\ttest-sim-benchmark-invariants test-sim-iris-benchmark test-sim-iris-profile\n"
  },
  {
    "path": "testutil/app.go",
    "content": "package testutil\n\nimport (\n\t\"cosmossdk.io/log\"\n\tdbm \"github.com/cosmos/cosmos-db\"\n\t\"github.com/cosmos/cosmos-sdk/baseapp\"\n\t\"github.com/cosmos/cosmos-sdk/runtime\"\n\tservertypes \"github.com/cosmos/cosmos-sdk/server/types\"\n\n\t\"github.com/irisnet/irishub/v4/app\"\n)\n\nvar (\n\t_ runtime.AppI            = (*AppWrapper)(nil)\n\t_ servertypes.Application = (*AppWrapper)(nil)\n)\n\n// AppWrapper extends an ABCI application, but with most of its parameters exported.\n// They are exported for convenience in creating helper functions, as object\n// capabilities aren't needed for testing.\ntype AppWrapper struct {\n\t*app.IrisApp\n}\n\nfunc setup(\n\tappOpts servertypes.AppOptions,\n\tbaseAppOptions ...func(*baseapp.BaseApp),\n) *AppWrapper {\n\tdb := dbm.NewMemDB()\n\tif appOpts == nil {\n\t\tappOpts = EmptyAppOptions{}\n\t}\n\tapp := app.NewIrisApp(\n\t\tlog.NewNopLogger(),\n\t\tdb,\n\t\tnil,\n\t\ttrue,\n\t\tappOpts,\n\t\tbaseAppOptions...,\n\t)\n\treturn &AppWrapper{app}\n}"
  },
  {
    "path": "testutil/test_helpers.go",
    "content": "package testutil\n\nimport (\n\t\"context\"\n\t\"encoding/hex\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"os\"\n\t\"strings\"\n\t\"testing\"\n\t\"time\"\n\n\t\"github.com/gogo/protobuf/proto\"\n\t\"github.com/spf13/cobra\"\n\t\"github.com/stretchr/testify/require\"\n\n\tabci \"github.com/cometbft/cometbft/abci/types\"\n\tcoretypes \"github.com/cometbft/cometbft/rpc/core/types\"\n\ttmtypes \"github.com/cometbft/cometbft/types\"\n\n\t\"cosmossdk.io/math\"\n\tpruningtypes \"cosmossdk.io/store/pruning/types\"\n\tbam \"github.com/cosmos/cosmos-sdk/baseapp\"\n\t\"github.com/cosmos/cosmos-sdk/client\"\n\t\"github.com/cosmos/cosmos-sdk/client/flags\"\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\tcodectypes \"github.com/cosmos/cosmos-sdk/codec/types\"\n\tcryptocodec \"github.com/cosmos/cosmos-sdk/crypto/codec\"\n\t\"github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1\"\n\tservertypes \"github.com/cosmos/cosmos-sdk/server/types\"\n\tclitestutil \"github.com/cosmos/cosmos-sdk/testutil/cli\"\n\t\"github.com/cosmos/cosmos-sdk/testutil/mock\"\n\t\"github.com/cosmos/cosmos-sdk/testutil/network\"\n\tsimtestutil \"github.com/cosmos/cosmos-sdk/testutil/sims\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\t\"github.com/cosmos/cosmos-sdk/types/module/testutil\"\n\tauthtypes \"github.com/cosmos/cosmos-sdk/x/auth/types\"\n\tbanktypes \"github.com/cosmos/cosmos-sdk/x/bank/types\"\n\tstakingtypes \"github.com/cosmos/cosmos-sdk/x/staking/types\"\n)\n\n// CreateApp initializes a new SimApp. A Nop logger is set in SimApp.\nfunc CreateApp(t *testing.T) *AppWrapper {\n\tt.Helper()\n\n\tprivVal := mock.NewPV()\n\tpubKey, err := privVal.GetPubKey()\n\trequire.NoError(t, err)\n\n\t// create validator set with single validator\n\tvalidator := tmtypes.NewValidator(pubKey, 1)\n\tvalSet := tmtypes.NewValidatorSet([]*tmtypes.Validator{validator})\n\n\t// generate genesis account\n\tsenderPrivKey := secp256k1.GenPrivKey()\n\tacc := authtypes.NewBaseAccount(\n\t\tsenderPrivKey.PubKey().Address().Bytes(),\n\t\tsenderPrivKey.PubKey(),\n\t\t0,\n\t\t0,\n\t)\n\tbalance := banktypes.Balance{\n\t\tAddress: acc.GetAddress().String(),\n\t\tCoins:   sdk.NewCoins(sdk.NewCoin(sdk.DefaultBondDenom, math.NewInt(100000000000000))),\n\t}\n\treturn CreateAppWithGenesisValSet(t, valSet, []authtypes.GenesisAccount{acc}, balance)\n}\n\n// NewConfig returns a new app config\nfunc NewConfig() network.Config {\n\tcfg := network.DefaultConfig(NewTestNetworkFixture)\n\n\n\ttempApp := setup(nil)\n\tencCfg := tempApp.EncodingConfig()\n\tcfg.Codec = encCfg.Codec\n\tcfg.TxConfig = encCfg.TxConfig\n\tcfg.LegacyAmino = encCfg.LegacyAmino\n\tcfg.InterfaceRegistry = encCfg.InterfaceRegistry\n\tcfg.AppConstructor = func(val network.ValidatorI) servertypes.Application {\n\t\treturn setup(\n\t\t\tnil,\n\t\t\tbam.SetMinGasPrices(val.GetAppConfig().MinGasPrices),\n\t\t\tbam.SetChainID(cfg.ChainID),\n\t\t)\n\t}\n\tcfg.GenesisState = tempApp.DefaultGenesis()\n\treturn cfg\n}\n\n// CreateAppWithGenesisValSet initializes a new SimApp with a validator set and genesis accounts\n// that also act as delegators. For simplicity, each validator is bonded with a delegation\n// of one consensus engine unit (10^6) in the default token of the simapp from first genesis\n// account. A Nop logger is set in SimApp.\nfunc CreateAppWithGenesisValSet(\n\tt *testing.T,\n\tvalSet *tmtypes.ValidatorSet,\n\tgenAccs []authtypes.GenesisAccount,\n\tbalances ...banktypes.Balance,\n) *AppWrapper {\n\tt.Helper()\n\n\tapp := setup(nil)\n\n\tgenesisState, err := genesisStateWithValSet(\n\t\tapp.AppCodec(),\n\t\tapp.DefaultGenesis(),\n\t\tvalSet,\n\t\tgenAccs,\n\t\tbalances...,\n\t)\n\trequire.NoError(t, err)\n\n\tstateBytes, err := json.MarshalIndent(genesisState, \"\", \" \")\n\trequire.NoError(t, err)\n\n\t// init chain will set the validator set and initialize the genesis accounts\n\t_, err = app.InitChain(\n\t\t&abci.RequestInitChain{\n\t\t\tValidators:      []abci.ValidatorUpdate{},\n\t\t\tConsensusParams: simtestutil.DefaultConsensusParams,\n\t\t\tAppStateBytes:   stateBytes,\n\t\t},\n\t)\n\trequire.NoError(t, err)\n\n\t//// commit genesis changes\n\t//_, err = app.Commit()\n\t//require.NoError(t, err)\n\t//r, err := app.FinalizeBlock(&abci.RequestFinalizeBlock{\n\t//\tHeight:             app.LastBlockHeight() + 1,\n\t//\tHash:               app.LastCommitID().Hash,\n\t//\tNextValidatorsHash: valSet.Hash(),\n\t//})\n\t//require.NoError(t, err)\n\n\treturn app\n}\n\n// genesisStateWithValSet returns a new genesis state with the validator set\nfunc genesisStateWithValSet(codec codec.Codec, genesisState map[string]json.RawMessage,\n\tvalSet *tmtypes.ValidatorSet, genAccs []authtypes.GenesisAccount,\n\tbalances ...banktypes.Balance,\n) (map[string]json.RawMessage, error) {\n\t// set genesis accounts\n\tauthGenesis := authtypes.NewGenesisState(authtypes.DefaultParams(), genAccs)\n\tgenesisState[authtypes.ModuleName] = codec.MustMarshalJSON(authGenesis)\n\n\tvalidators := make([]stakingtypes.Validator, 0, len(valSet.Validators))\n\tdelegations := make([]stakingtypes.Delegation, 0, len(valSet.Validators))\n\n\tbondAmt := sdk.DefaultPowerReduction\n\n\tfor _, val := range valSet.Validators {\n\t\tpk, err := cryptocodec.FromTmPubKeyInterface(val.PubKey)\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"failed to convert pubkey: %w\", err)\n\t\t}\n\n\t\tpkAny, err := codectypes.NewAnyWithValue(pk)\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"failed to create new any: %w\", err)\n\t\t}\n\n\t\tvalidator := stakingtypes.Validator{\n\t\t\tOperatorAddress: sdk.ValAddress(val.Address).String(),\n\t\t\tConsensusPubkey: pkAny,\n\t\t\tJailed:          false,\n\t\t\tStatus:          stakingtypes.Bonded,\n\t\t\tTokens:          bondAmt,\n\t\t\tDelegatorShares: math.LegacyOneDec(),\n\t\t\tDescription:     stakingtypes.Description{},\n\t\t\tUnbondingHeight: int64(0),\n\t\t\tUnbondingTime:   time.Unix(0, 0).UTC(),\n\t\t\tCommission: stakingtypes.NewCommission(\n\t\t\t\tmath.LegacyZeroDec(),\n\t\t\t\tmath.LegacyZeroDec(),\n\t\t\t\tmath.LegacyZeroDec(),\n\t\t\t),\n\t\t\tMinSelfDelegation: math.ZeroInt(),\n\t\t}\n\t\tvalidators = append(validators, validator)\n\t\tdelegations = append(\n\t\t\tdelegations,\n\t\t\tstakingtypes.NewDelegation(genAccs[0].GetAddress().String(), sdk.ValAddress(val.Address.Bytes()).String(), math.LegacyOneDec()),\n\t\t)\n\n\t}\n\t// set validators and delegations\n\tstakingGenesis := stakingtypes.NewGenesisState(\n\t\tstakingtypes.DefaultParams(),\n\t\tvalidators,\n\t\tdelegations,\n\t)\n\tgenesisState[stakingtypes.ModuleName] = codec.MustMarshalJSON(stakingGenesis)\n\n\ttotalSupply := sdk.NewCoins()\n\tfor _, b := range balances {\n\t\t// add genesis acc tokens to total supply\n\t\ttotalSupply = totalSupply.Add(b.Coins...)\n\t}\n\n\tfor range delegations {\n\t\t// add delegated tokens to total supply\n\t\ttotalSupply = totalSupply.Add(sdk.NewCoin(sdk.DefaultBondDenom, bondAmt))\n\t}\n\n\t// add bonded amount to bonded pool module account\n\tbalances = append(balances, banktypes.Balance{\n\t\tAddress: authtypes.NewModuleAddress(stakingtypes.BondedPoolName).String(),\n\t\tCoins:   sdk.Coins{sdk.NewCoin(sdk.DefaultBondDenom, bondAmt)},\n\t})\n\n\t// update total supply\n\tbankGenesis := banktypes.NewGenesisState(\n\t\tbanktypes.DefaultGenesisState().Params,\n\t\tbalances,\n\t\ttotalSupply,\n\t\t[]banktypes.Metadata{},\n\t\tnil,\n\t)\n\tgenesisState[banktypes.ModuleName] = codec.MustMarshalJSON(bankGenesis)\n\n\treturn genesisState, nil\n}\n\n// EmptyAppOptions is a stub implementing AppOptions\ntype EmptyAppOptions struct{}\n\n// Get implements AppOptions\nfunc (ao EmptyAppOptions) Get(o string) interface{} {\n\treturn nil\n}\n\n// NewTestNetworkFixture returns a new simapp AppConstructor for network simulation tests\nfunc NewTestNetworkFixture() network.TestFixture {\n\tdir, err := os.MkdirTemp(\"\", \"simapp\")\n\tif err != nil {\n\t\tpanic(fmt.Sprintf(\"failed creating temporary directory: %v\", err))\n\t}\n\tdefer os.RemoveAll(dir)\n\n\tappCtr := func(val network.ValidatorI) servertypes.Application {\n\t\treturn setup(\n\t\t\tsimtestutil.NewAppOptionsWithFlagHome(val.GetCtx().Config.RootDir),\n\t\t\tbam.SetPruning(pruningtypes.NewPruningOptionsFromString(val.GetAppConfig().Pruning)),\n\t\t\tbam.SetMinGasPrices(val.GetAppConfig().MinGasPrices),\n\t\t\tbam.SetChainID(val.GetCtx().Viper.GetString(flags.FlagChainID)),\n\t\t)\n\t}\n\n\ttempApp := setup(nil)\n\tec := tempApp.EncodingConfig()\n\n\treturn network.TestFixture{\n\t\tAppConstructor: appCtr,\n\t\tGenesisState:   tempApp.DefaultGenesis(),\n\t\tEncodingConfig: testutil.TestEncodingConfig{\n\t\t\tInterfaceRegistry: ec.InterfaceRegistry,\n\t\t\tCodec:             ec.Codec,\n\t\t\tTxConfig:          ec.TxConfig,\n\t\t\tAmino:             ec.LegacyAmino,\n\t\t},\n\t}\n}\n\n// ExecCommand executes a tx command and returns the result\nfunc ExecCommand(\n\tt *testing.T,\n\tnetwork *network.Network,\n\tclientCtx client.Context,\n\tcmd *cobra.Command,\n\textraArgs []string,\n) *coretypes.ResultTx {\n\tbuf, err := clitestutil.ExecTestCLICmd(clientCtx, cmd, extraArgs)\n\trequire.NoError(t, err, \"ExecTestCLICmd failed\")\n\trequire.NoError(t, network.WaitForNextBlock(), \"network.WaitForNextBlock failed\")\n\n\trespType := proto.Message(&sdk.TxResponse{})\n\trequire.NoError(t, clientCtx.Codec.UnmarshalJSON(buf.Bytes(), respType), buf.String())\n\n\ttxResp := respType.(*sdk.TxResponse)\n\trequire.Equal(t, uint32(0), txResp.Code)\n\treturn WaitForTx(t, network, clientCtx, txResp.TxHash)\n}\n\n// WaitForTx waits for a tx to be included in a block\nfunc WaitForTx(\n\tt *testing.T,\n\tnetwork *network.Network,\n\tclientCtx client.Context,\n\ttxHash string,\n) *coretypes.ResultTx {\n\tvar (\n\t\tresult *coretypes.ResultTx\n\t\terr    error\n\t\ttryCnt = 3\n\t)\n\n\ttxHashBz, err := hex.DecodeString(txHash)\n\trequire.NoError(t, err, \"hex.DecodeString failed\")\n\nreTry:\n\tresult, err = clientCtx.Client.Tx(context.Background(), txHashBz, false)\n\tif err != nil && strings.Contains(err.Error(), \"not found\") && tryCnt > 0 {\n\t\trequire.NoError(t, network.WaitForNextBlock(), \"network.WaitForNextBlock failed\")\n\t\ttryCnt--\n\t\tgoto reTry\n\t}\n\n\trequire.NoError(t, err, \"query tx failed\")\n\treturn result\n}\n"
  },
  {
    "path": "types/address.go",
    "content": "package types\n\nimport sdk \"github.com/cosmos/cosmos-sdk/types\"\n\nconst (\n\n\t// Bech32ChainPrefix defines the prefix of this chain\n\tBech32ChainPrefix = \"i\"\n\n\t// PrefixAcc is the prefix for account\n\tPrefixAcc = \"a\"\n\n\t// PrefixValidator is the prefix for validator keys\n\tPrefixValidator = \"v\"\n\n\t// PrefixConsensus is the prefix for consensus keys\n\tPrefixConsensus = \"c\"\n\n\t// PrefixPublic is the prefix for public\n\tPrefixPublic = \"p\"\n\n\t// PrefixAddress is the prefix for address\n\tPrefixAddress = \"a\"\n\n\t// Bech32PrefixAccAddr defines the Bech32 prefix of an account's address\n\tBech32PrefixAccAddr = Bech32ChainPrefix + PrefixAcc + PrefixAddress\n\t// Bech32PrefixAccPub defines the Bech32 prefix of an account's public key\n\tBech32PrefixAccPub = Bech32ChainPrefix + PrefixAcc + PrefixPublic\n\t// Bech32PrefixValAddr defines the Bech32 prefix of a validator's operator address\n\tBech32PrefixValAddr = Bech32ChainPrefix + PrefixValidator + PrefixAddress\n\t// Bech32PrefixValPub defines the Bech32 prefix of a validator's operator public key\n\tBech32PrefixValPub = Bech32ChainPrefix + PrefixValidator + PrefixPublic\n\t// Bech32PrefixConsAddr defines the Bech32 prefix of a consensus node address\n\tBech32PrefixConsAddr = Bech32ChainPrefix + PrefixConsensus + PrefixAddress\n\t// Bech32PrefixConsPub defines the Bech32 prefix of a consensus node public key\n\tBech32PrefixConsPub = Bech32ChainPrefix + PrefixConsensus + PrefixPublic\n)\n\nfunc ConfigureBech32Prefix() {\n\tconfig := sdk.GetConfig()\n\tconfig.SetBech32PrefixForAccount(Bech32PrefixAccAddr, Bech32PrefixAccPub)\n\tconfig.SetBech32PrefixForValidator(Bech32PrefixValAddr, Bech32PrefixValPub)\n\tconfig.SetBech32PrefixForConsensusNode(Bech32PrefixConsAddr, Bech32PrefixConsPub)\n\tconfig.Seal()\n}\n"
  },
  {
    "path": "types/chain_id.go",
    "content": "package types\n\nimport (\n\t\"fmt\"\n\t\"math/big\"\n)\n\nvar (\n\tEIP155ChainID = \"6688\"\n)\n\nfunc parseChainID(_ string) (*big.Int, error) {\n\teip155ChainID, ok := new(big.Int).SetString(EIP155ChainID, 10)\n\tif !ok {\n\t\treturn nil, fmt.Errorf(\"invalid chain-id: %s\" + EIP155ChainID)\n\t}\n\treturn eip155ChainID, nil\n}\n"
  },
  {
    "path": "types/genesis.go",
    "content": "package types\n\nimport \"encoding/json\"\n\n// The genesis state of the blockchain is represented here as a map of raw json\n// messages key'd by a identifier string.\n// The identifier is used to determine which module genesis information belongs\n// to so it may be appropriately routed during init chain.\n// Within this application default genesis information is retrieved from\n// the ModuleBasicManager which populates json from each BasicModule\n// object provided to it during init.\ntype GenesisState map[string]json.RawMessage\n"
  },
  {
    "path": "types/runtime.go",
    "content": "package types\n\n// MUST be loaded before running\nimport (\n\t\"os\"\n\t\"path/filepath\"\n\n\t\"github.com/cometbft/cometbft/crypto\"\n\n\t\"github.com/cosmos/cosmos-sdk/codec\"\n\t\"github.com/cosmos/cosmos-sdk/codec/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/evmos/ethermint/ethereum/eip712\"\n\tetherminttypes \"github.com/evmos/ethermint/types\"\n\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n\ttokenv1 \"mods.irisnet.org/modules/token/types/v1\"\n)\n\nconst (\n\t// AppName is the name of the app\n\tAppName = \"IrisApp\"\n)\n\nvar (\n\t// NativeToken represents the native token\n\tNativeToken tokenv1.Token\n\t// EvmToken represents the EVM token\n\tEvmToken tokenv1.Token\n\t// DefaultNodeHome default home directories for the application daemon\n\tDefaultNodeHome string\n)\n\nfunc init() {\n\t// set bech32 prefix\n\tConfigureBech32Prefix()\n\n\t// set coin denom regexs\n\tsdk.SetCoinDenomRegex(func() string {\n\t\treturn `[a-zA-Z][a-zA-Z0-9/-]{2,127}`\n\t})\n\n\tNativeToken = tokenv1.Token{\n\t\tSymbol:        \"iris\",\n\t\tName:          \"Irishub staking token\",\n\t\tScale:         6,\n\t\tMinUnit:       \"uiris\",\n\t\tInitialSupply: 2000000000,\n\t\tMaxSupply:     10000000000,\n\t\tMintable:      true,\n\t\tOwner:         sdk.AccAddress(crypto.AddressHash([]byte(tokentypes.ModuleName))).String(),\n\t}\n\n\tEvmToken = tokenv1.Token{\n\t\tSymbol:        \"eris\",\n\t\tName:          \"IRISHub EVM Fee Token\",\n\t\tScale:         18,\n\t\tMinUnit:       \"weris\",\n\t\tInitialSupply: 0,\n\t\tMaxSupply:     10000000000,\n\t\tMintable:      true,\n\t\tOwner:         sdk.AccAddress(crypto.AddressHash([]byte(tokentypes.ModuleName))).String(),\n\t}\n\tsdk.DefaultBondDenom = NativeToken.MinUnit\n\n\n\tuserHomeDir, err := os.UserHomeDir()\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\tDefaultNodeHome = filepath.Join(userHomeDir, \".iris\")\n\towner, err := sdk.AccAddressFromBech32(NativeToken.Owner)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\n\t// replace the default token\n\ttokenv1.SetNativeToken(\n\t\tNativeToken.Symbol,\n\t\tNativeToken.Name,\n\t\tNativeToken.MinUnit,\n\t\tNativeToken.Scale,\n\t\tNativeToken.InitialSupply,\n\t\tNativeToken.MaxSupply,\n\t\tNativeToken.Mintable,\n\t\towner,\n\t)\n\n\tetherminttypes.InjectChainIDParser(parseChainID)\n}\n\n// InjectCodec injects an app codec\nfunc InjectCodec(legacyAmino *codec.LegacyAmino, interfaceRegistry types.InterfaceRegistry) {\n\teip712.InjectCodec(eip712.Codec{\n\t\tInterfaceRegistry: interfaceRegistry,\n\t\tAmino:             legacyAmino,\n\t})\n}\n"
  },
  {
    "path": "wrapper/farm.go",
    "content": "package wrapper\n\nimport (\n\t\"context\"\n\n\t\"github.com/cosmos/cosmos-sdk/types\"\n\tgovtypes \"github.com/cosmos/cosmos-sdk/x/gov/types\"\n\n\tfarmkeeper \"mods.irisnet.org/modules/farm/keeper\"\n)\n\nvar _ govtypes.GovHooks = farmGovHook{}\n\ntype farmGovHook struct {\n\tgh farmkeeper.GovHook\n}\n\n// NewFarmGovHook creates a new farmGovHook instance.\n//\n// It takes a parameter of type farmkeeper.GovHook and returns a farmGovHook.\nfunc NewFarmGovHook(gh farmkeeper.GovHook) govtypes.GovHooks {\n\treturn farmGovHook{\n\t\tgh: gh,\n\t}\n}\n\n// AfterProposalDeposit implements types.GovHooks.\nfunc (f farmGovHook) AfterProposalDeposit(c context.Context, proposalID uint64, depositorAddr types.AccAddress) error {\n\tctx := types.UnwrapSDKContext(c)\n\tf.gh.AfterProposalDeposit(ctx, proposalID, depositorAddr)\n\treturn nil\n}\n\n// AfterProposalFailedMinDeposit implements types.GovHooks.\nfunc (f farmGovHook) AfterProposalFailedMinDeposit(c context.Context, proposalID uint64) error {\n\tctx := types.UnwrapSDKContext(c)\n\tf.gh.AfterProposalFailedMinDeposit(ctx, proposalID)\n\treturn nil\n}\n\n// AfterProposalSubmission implements types.GovHooks.\nfunc (f farmGovHook) AfterProposalSubmission(c context.Context, proposalID uint64) error {\n\tctx := types.UnwrapSDKContext(c)\n\tf.gh.AfterProposalSubmission(ctx, proposalID)\n\treturn nil\n}\n\n// AfterProposalVote implements types.GovHooks.\nfunc (f farmGovHook) AfterProposalVote(c context.Context, proposalID uint64, voterAddr types.AccAddress) error {\n\tctx := types.UnwrapSDKContext(c)\n\tf.gh.AfterProposalVote(ctx, proposalID, voterAddr)\n\treturn nil\n}\n\n// AfterProposalVotingPeriodEnded implements types.GovHooks.\nfunc (f farmGovHook) AfterProposalVotingPeriodEnded(c context.Context, proposalID uint64) error {\n\tctx := types.UnwrapSDKContext(c)\n\tf.gh.AfterProposalVotingPeriodEnded(ctx, proposalID)\n\treturn nil\n}\n"
  },
  {
    "path": "wrapper/token.go",
    "content": "package wrapper\n\nimport (\n\t\"context\"\n\t\"math/big\"\n\t\"strings\"\n\n\tcryptotypes \"github.com/cosmos/cosmos-sdk/crypto/types\"\n\tsdk \"github.com/cosmos/cosmos-sdk/types\"\n\n\t\"github.com/ethereum/go-ethereum/core\"\n\t\"github.com/ethereum/go-ethereum/core/vm\"\n\n\t\"github.com/evmos/ethermint/crypto/ethsecp256k1\"\n\tevmkeeper \"github.com/evmos/ethermint/x/evm/keeper\"\n\tevmtypes \"github.com/evmos/ethermint/x/evm/types\"\n\n\tibctransferkeeper \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/keeper\"\n\tibctransfertypes \"github.com/cosmos/ibc-go/v8/modules/apps/transfer/types\"\n\n\ttokentypes \"mods.irisnet.org/modules/token/types\"\n)\n\nvar (\n\t_ tokentypes.EVMKeeper   = (*evmKeeper)(nil)\n\t_ tokentypes.ICS20Keeper = (*ics20Keeper)(nil)\n)\n\n// NewEVMKeeper wraps the given evmkeeper.Keeper and returns a new evmKeeper.\n//\n// ek: The evmkeeper.Keeper to be wrapped.\n// Returns a pointer to the wrapped evmKeeper.\nfunc NewEVMKeeper(ek *evmkeeper.Keeper) tokentypes.EVMKeeper {\n\treturn &evmKeeper{ek: ek}\n}\n\ntype evmKeeper struct {\n\tek *evmkeeper.Keeper\n}\n\n// ApplyMessage implements types.EVMKeeper.\nfunc (e *evmKeeper) ApplyMessage(ctx sdk.Context, msg core.Message, tracer vm.EVMLogger, commit bool) (*tokentypes.Result, error) {\n\tres, err := e.ek.ApplyMessage(ctx, msg, tracer, commit)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn &tokentypes.Result{\n\t\tHash:    res.Hash,\n\t\tLogs:    evmtypes.LogsToEthereum(res.Logs),\n\t\tRet:     res.Ret,\n\t\tVMError: res.VmError,\n\t\tGasUsed: res.GasUsed,\n\t}, nil\n}\n\n// ChainID implements types.EVMKeeper.\nfunc (e *evmKeeper) ChainID() *big.Int {\n\treturn e.ek.ChainID()\n}\n\n// EstimateGas implements types.EVMKeeper.\nfunc (e *evmKeeper) EstimateGas(ctx context.Context, req *tokentypes.EthCallRequest) (uint64, error) {\n\tres, err := e.ek.EstimateGas(ctx, &evmtypes.EthCallRequest{\n\t\tArgs:            req.Args,\n\t\tGasCap:          req.GasCap,\n\t\tProposerAddress: req.ProposerAddress,\n\t\tChainId:         req.ChainID,\n\t})\n\tif err != nil {\n\t\treturn 0, err\n\t}\n\treturn res.Gas, nil\n}\n\n// SupportedKey implements types.EVMKeeper.\nfunc (e *evmKeeper) SupportedKey(pubKey cryptotypes.PubKey) bool {\n\t// NOTICE: when the account has not executed native transactions, the pubkey is empty.\n\tif pubKey == nil {\n\t\treturn true\n\t}\n\n\t_, ok := pubKey.(*ethsecp256k1.PubKey)\n\treturn ok\n}\n\n// NewICS20Keeper wraps the given ibctransferkeeper.Keeper into an ics20Keeper.\n//\n// Parameters:\n// - ik: the ibctransferkeeper.Keeper to be wrapped.\n//\n// Return:\n// - *ics20Keeper: the wrapped ics20Keeper.\nfunc NewICS20Keeper(ik ibctransferkeeper.Keeper) tokentypes.ICS20Keeper {\n\treturn &ics20Keeper{ik: ik}\n}\n\ntype ics20Keeper struct {\n\tik ibctransferkeeper.Keeper\n}\n\n// HasTrace implements types.ICS20Keeper.\nfunc (i *ics20Keeper) HasTrace(ctx sdk.Context, denom string) bool {\n\thash, err := ibctransfertypes.ParseHexHash(strings.TrimPrefix(denom, \"ibc/\"))\n\tif err != nil {\n\t\treturn false\n\t}\n\t_, has := i.ik.GetDenomTrace(ctx, hash)\n\treturn has\n}\n"
  }
]